retrooper / packetevents

PacketEvents is a fast and efficient multi-platform packet processing library for Minecraft. Our packet wrappers are easy to use with multi-version support.
GNU General Public License v3.0
463 stars 135 forks source link

Use 1.21 datapack in 1.20.6 server causes error/kick #850

Open re-ovo opened 2 weeks ago

re-ovo commented 2 weeks ago

Describe the bug

[01:25:42 WARN]: io.netty.handler.codec.DecoderException: java.lang.NullPointerException: Cannot invoke "me.rerere.matrix.thirdparty.com.github.retrooper.packetevents.protocol.mapper.MappedEntity.isRegistered()" because "entity" is null
[01:25:42 WARN]:        at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:98)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
[01:25:42 WARN]:        at ProtocolLib (14).jar//com.comphenix.protocol.injector.netty.channel.InboundProtocolReader.channelRead(InboundProtocolReader.java:25)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
[01:25:42 WARN]:        at io.netty.handler.flow.FlowControlHandler.dequeue(FlowControlHandler.java:202)
[01:25:42 WARN]:        at io.netty.handler.flow.FlowControlHandler.channelRead(FlowControlHandler.java:164)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
[01:25:42 WARN]:        at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
[01:25:42 WARN]:        at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:346)
[01:25:42 WARN]:        at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:318)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
[01:25:42 WARN]:        at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:346)
[01:25:42 WARN]:        at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:318)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
[01:25:42 WARN]:        at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
[01:25:42 WARN]:        at io.netty.handler.flush.FlushConsolidationHandler.channelRead(FlushConsolidationHandler.java:152)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
[01:25:42 WARN]:        at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:440)
[01:25:42 WARN]:        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
[01:25:42 WARN]:        at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919)
[01:25:42 WARN]:        at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:166)
[01:25:42 WARN]:        at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:788)
[01:25:42 WARN]:        at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:724)
[01:25:42 WARN]:        at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:650)
[01:25:42 WARN]:        at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:562)
[01:25:42 WARN]:        at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
[01:25:42 WARN]:        at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
[01:25:42 WARN]:        at java.base/java.lang.Thread.run(Thread.java:1583)
[01:25:42 WARN]: Caused by: java.lang.NullPointerException: Cannot invoke "me.rerere.matrix.thirdparty.com.github.retrooper.packetevents.protocol.mapper.MappedEntity.isRegistered()" because "entity" is null
[01:25:42 WARN]:        at Matrix.jar//me.rerere.matrix.thirdparty.com.github.retrooper.packetevents.wrapper.PacketWrapper.writeMappedEntityOrDirect(PacketWrapper.java:1436)
[01:25:42 WARN]:        at Matrix.jar//me.rerere.matrix.thirdparty.com.github.retrooper.packetevents.protocol.component.builtin.item.BannerLayers$Layer.write(BannerLayers.java:89)
[01:25:42 WARN]:        at Matrix.jar//me.rerere.matrix.thirdparty.com.github.retrooper.packetevents.wrapper.PacketWrapper.writeList(PacketWrapper.java:1398)
[01:25:42 WARN]:        at Matrix.jar//me.rerere.matrix.thirdparty.com.github.retrooper.packetevents.protocol.component.builtin.item.BannerLayers.write(BannerLayers.java:43)
[01:25:42 WARN]:        at Matrix.jar//me.rerere.matrix.thirdparty.com.github.retrooper.packetevents.protocol.component.ComponentTypes$1.write(ComponentTypes.java:94)
[01:25:42 WARN]:        at Matrix.jar//me.rerere.matrix.thirdparty.com.github.retrooper.packetevents.wrapper.PacketWrapper.writeItemStackModern(PacketWrapper.java:506)
[01:25:42 WARN]:        at Matrix.jar//me.rerere.matrix.thirdparty.com.github.retrooper.packetevents.wrapper.PacketWrapper.writeItemStack(PacketWrapper.java:531)
[01:25:42 WARN]:        at Matrix.jar//me.rerere.matrix.thirdparty.com.github.retrooper.packetevents.wrapper.play.client.WrapperPlayClientClickWindow.write(WrapperPlayClientClickWindow.java:115)
[01:25:42 WARN]:        at Matrix.jar//me.rerere.matrix.thirdparty.com.github.retrooper.packetevents.util.PacketEventsImplHelper.handleServerBoundPacket(PacketEventsImplHelper.java:95)
[01:25:42 WARN]:        at Matrix.jar//me.rerere.matrix.thirdparty.io.github.retrooper.packetevents.injector.handlers.PacketEventsDecoder.read(PacketEventsDecoder.java:57)
[01:25:42 WARN]:        at Matrix.jar//me.rerere.matrix.thirdparty.io.github.retrooper.packetevents.injector.handlers.PacketEventsDecoder.decode(PacketEventsDecoder.java:64)
[01:25:42 WARN]:        at Matrix.jar//me.rerere.matrix.thirdparty.io.github.retrooper.packetevents.injector.handlers.PacketEventsDecoder.decode(PacketEventsDecoder.java:41)
[01:25:42 WARN]:        at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:88)

How To Reproduce

  1. Enable 1.21 data pack in server.properties: initial-enabled-packs=vanilla,bundle,update_1_21
  2. Regenerate the world
  3. Open Loom, and use this pattern image
booky10 commented 2 weeks ago

which packetevents version are you using?

re-ovo commented 2 weeks ago

which packetevents version are you using?

dev build, 2.3.1-snapshot