ViaVersion / ViaRewind

ViaBackwards addon to allow 1.8.x and 1.7.x clients on newer server versions.
https://hangar.papermc.io/ViaVersion/ViaRewind
GNU General Public License v3.0
245 stars 77 forks source link

Joining 1.8 server with 1.7 causing errors #458

Closed dayofpay closed 10 months ago

dayofpay commented 11 months ago

/viaversion dump Output

https://dump.viaversion.com/697cda46aa41502557230445131fa41fadd31980a15bd7edaf9887f8cbfc85e2

Console Error

[[11:23:34 WARN]: com.viaversion.viaversion.exception.InformativeException: Please report this on the Via support Discord or open an issue on the relevant GitHub repository
Packet Type: ENTITY_METADATA, Type: MetaData List, Index: 1, Data: [{Integer: 2147467596}, {MetaData List: [Metadata{id=12, metaType=Int, value=-1700000}, Metadata{id=10, metaType=String, value=null}, Metadata{id=11, metaType=Byte, value=1}]}], Packet ID: 28
[11:23:34 WARN]: Caused by: java.lang.NullPointerException
[11:23:34 WARN]:        at com.viaversion.viaversion.api.type.types.StringType.write(StringType.java:64)
[11:23:34 WARN]:        at com.viaversion.viaversion.api.type.types.StringType.write(StringType.java:31)
[11:23:34 WARN]:        at com.viaversion.viarewind.protocol.protocol1_7_6_10to1_8.types.MetadataType.write(MetadataType.java:43)
[11:23:34 WARN]:        at com.viaversion.viarewind.protocol.protocol1_7_6_10to1_8.types.MetadataType.write(MetadataType.java:25)
[11:23:34 WARN]:        at com.viaversion.viarewind.protocol.protocol1_7_6_10to1_8.types.MetadataListType.write(MetadataListType.java:49)
[11:23:34 WARN]:        at com.viaversion.viarewind.protocol.protocol1_7_6_10to1_8.types.MetadataListType.write(MetadataListType.java:28)
[11:23:34 WARN]:        at com.viaversion.viaversion.protocol.packet.PacketWrapperImpl.writeToBuffer(PacketWrapperImpl.java:220)
[11:23:34 WARN]:        at com.viaversion.viaversion.protocol.packet.PacketWrapperImpl.constructPacket(PacketWrapperImpl.java:338)
[11:23:34 WARN]:        at com.viaversion.viaversion.protocol.packet.PacketWrapperImpl.send0(PacketWrapperImpl.java:276)
[11:23:34 WARN]:        at com.viaversion.viaversion.protocol.packet.PacketWrapperImpl.send(PacketWrapperImpl.java:260)
[11:23:34 WARN]:        at com.viaversion.viarewind.utils.PacketUtil.sendPacket(PacketUtil.java:59)
[11:23:34 WARN]:        at com.viaversion.viarewind.protocol.protocol1_7_6_10to1_8.entityreplacements.ArmorStandReplacement.updateMetadata(ArmorStandReplacement.java:194)
[11:23:34 WARN]:        at com.viaversion.viarewind.protocol.protocol1_7_6_10to1_8.entityreplacements.ArmorStandReplacement.spawn(ArmorStandReplacement.java:232)
[11:23:34 WARN]:        at com.viaversion.viarewind.protocol.protocol1_7_6_10to1_8.entityreplacements.ArmorStandReplacement.updateState(ArmorStandReplacement.java:137)
[11:23:34 WARN]:        at com.viaversion.viarewind.protocol.protocol1_7_6_10to1_8.entityreplacements.ArmorStandReplacement.updateMetadata(ArmorStandReplacement.java:106)
[11:23:34 WARN]:        at com.viaversion.viarewind.protocol.protocol1_7_6_10to1_8.packets.EntityPackets$13.lambda$register$0(EntityPackets.java:306)
[11:23:34 WARN]:        at com.viaversion.viaversion.api.protocol.remapper.PacketHandlers.handle(PacketHandlers.java:158)
[11:23:34 WARN]:        at com.viaversion.viaversion.api.protocol.AbstractProtocol.transform(AbstractProtocol.java:366)
[11:23:34 WARN]:        at com.viaversion.viarewind.protocol.protocol1_7_6_10to1_8.Protocol1_7_6_10To1_8.transform(Protocol1_7_6_10To1_8.java:107)
[11:23:34 WARN]:        at com.viaversion.viaversion.protocol.packet.PacketWrapperImpl.apply(PacketWrapperImpl.java:407)
[11:23:34 WARN]:        at com.viaversion.viaversion.protocol.packet.PacketWrapperImpl.apply(PacketWrapperImpl.java:395)
[11:23:34 WARN]:        at com.viaversion.viaversion.protocol.packet.PacketWrapperImpl.apply(PacketWrapperImpl.java:45)
[11:23:34 WARN]:        at com.viaversion.viaversion.protocol.ProtocolPipelineImpl.transform(ProtocolPipelineImpl.java:122)
[11:23:34 WARN]:        at com.viaversion.viaversion.connection.UserConnectionImpl.transform(UserConnectionImpl.java:328)
[11:23:34 WARN]:        at com.viaversion.viaversion.connection.UserConnectionImpl.transformClientbound(UserConnectionImpl.java:307)
[11:23:34 WARN]:        at com.viaversion.viaversion.bukkit.handlers.BukkitEncodeHandler.encode(BukkitEncodeHandler.java:57)
[11:23:34 WARN]:        at com.viaversion.viaversion.bukkit.handlers.BukkitEncodeHandler.encode(BukkitEncodeHandler.java:35)
[11:23:34 WARN]:        at io.netty.handler.codec.MessageToMessageEncoder.write(MessageToMessageEncoder.java:89)
[11:23:34 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:658)
[11:23:34 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:716)
[11:23:34 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:651)
[11:23:34 WARN]:        at io.netty.handler.codec.MessageToByteEncoder.write(MessageToByteEncoder.java:113)
[11:23:34 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:658)
[11:23:34 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:716)
[11:23:34 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:651)
[11:23:34 WARN]:        at io.netty.handler.codec.MessageToByteEncoder.write(MessageToByteEncoder.java:120)
[11:23:34 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:658)
[11:23:34 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:716)
[11:23:34 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:651)
[11:23:34 WARN]:        at io.netty.channel.ChannelDuplexHandler.write(ChannelDuplexHandler.java:106)
[11:23:34 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:658)
[11:23:34 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:716)
[11:23:34 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:706)
[11:23:34 WARN]:        at io.netty.channel.DefaultChannelPipeline.writeAndFlush(DefaultChannelPipeline.java:890)
[11:23:34 WARN]:        at io.netty.channel.AbstractChannel.writeAndFlush(AbstractChannel.java:245)
[11:23:34 WARN]:        at com.comphenix.protocol.injector.netty.channel.NettyChannelProxy.writeAndFlush(NettyChannelProxy.java:227)
[11:23:34 WARN]:        at com.comphenix.protocol.injector.netty.channel.NettyChannelProxy.writeAndFlush(NettyChannelProxy.java:233)
[11:23:34 WARN]:        at net.minecraft.server.v1_8_R3.NetworkManager$4.run(NetworkManager.java:198)
[11:23:34 WARN]:        at com.comphenix.protocol.injector.netty.channel.NettyEventLoopProxy.lambda$proxyRunnable$2(NettyEventLoopProxy.java:48)
[11:23:34 WARN]:        at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:380)
[11:23:34 WARN]:        at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:268)
[11:23:34 WARN]:        at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:116)
[11:23:34 WARN]:        at java.lang.Thread.run(Thread.java:748)](https://paste.gg/p/anonymous/d89b25bc92164d2ba33a403ad1c0ac2e)

Bug Description

When i join in the server i got the console error which i described above, and also it looks like the placeholders doesnt work because when somebody join the server instead of joined the server it says %player_name% joined the server

Steps to Reproduce

  1. Login with 1.7 client on 1.8 server which is using latest viaversion and viarewind
  2. Got console spam errors

Expected Behavior

Placeholders should work and console errors must not happen

Additional Server Info

This happend into the lobby server which is inside a proxy server ( also this error happens in all other servers inside the proxy )

Checklist

Barvalg commented 11 months ago

Platform: git--PaperSpigot--445%20%28MC%3A%201.8.8%29
ViaVersion (4.8.0): 18 commits behind master
ViaRewind(3.0.1-SNAPSHOT): Even with master

Please try the latest build(s) from https://ci.viaversion.com/. In case the issue still persists send the new dump

c0dingnoobi commented 11 months ago

possible that you have any holograms near your spawn location?

c0dingnoobi commented 11 months ago

if yes then this pr is the issue which was attempted to fix at bf359bb81ef5c7fc363595514ac6d1d6ff0969da

just "revert" that pr manually my changing the affected line back to original build it yourself

EURedBoy commented 11 months ago

I tried reverting it and use


if (invisible && name != null) {
            currentState = State.HOLOGRAM;
        } else {
            currentState = State.ZOMBIE;
        }
``` but it didn't work, same error same crash
FlorianMichael commented 11 months ago

Can you update ViaRewind to the latest snapshot build please?