Exceptionflug / protocolize

A lightweight BungeeCord / Velocity protocol framework supporting items
MIT License
300 stars 39 forks source link

PlayerInventory items disappear when clicking #206

Closed NicklasMatzulla closed 10 months ago

NicklasMatzulla commented 1 year ago

Describe the bug If you have a GUI open via Protocolize and click on an item in the PlayerInventory, this item disappears. If you move an item with the hotkeys (e.g. 1 on a GUI item), the item also disappears. This is probably due to the fact that Protocolize does not know that the player has items in the inventory. However, as the inventory is not modified, but is merely a GUI, this is a major problem.

To Reproduce Steps to reproduce the behavior:

  1. Create an inventory via Protocolize
  2. Click on an item in the PlayerInventory or move it
  3. Item disappearing

Video Open on YouTube

Proxy environment Velocity/3.2.0-SNAPSHOT git-768ecdb0-b266

Minecraft versions used LabyMod/1.20.2

Exceptionflug commented 10 months ago

Yes as you said, Protocolize does not know what items the player has. Sadly this is not fixable as easy and will stay a big open topic for protocolize.

Xuwznln commented 10 months ago

same error, here is the log:

[18:06:46 ERROR]: [Protocolize] === EXCEPTION CAUGHT IN DECODER ===
[18:06:46 ERROR]: [Protocolize] Protocolize 2.3.3:926
[18:06:46 ERROR]: [Protocolize] Stream Direction: UPSTREAM
[18:06:46 ERROR]: [Protocolize] Connection: [/127.0.0.1:8068|Xu_wznln] <-> InitialHandler
[18:06:46 ERROR]: [Protocolize] Protocol version: 765
[18:06:46 ERROR]: net.md_5.bungee.protocol.FastDecoderException: Error decoding packet class GeneratedClickWindowWrapper with contents:
[18:06:46 ERROR]:          +-------------------------------------------------+
[18:06:46 ERROR]:          |  0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f |
[18:06:46 ERROR]: +--------+-------------------------------------------------+----------------+
[18:06:46 ERROR]: |00000000| 0d 00 76 00 15 00 00 01 00 15 01 ea 03 0a 0a 0a |..v.............|
[18:06:46 ERROR]: |00000010| 00 07 64 69 73 70 6c 61 79 08 00 04 4e 61 6d 65 |..display...Name|
[18:06:46 ERROR]: |00000020| 00 89 7b 22 74 65 78 74 22 3a 22 22 2c 22 65 78 |..{"text":"","ex|
[18:06:46 ERROR]: |00000030| 74 72 61 22 3a 5b 7b 22 74 65 78 74 22 3a 22 22 |tra":[{"text":""|
[18:06:46 ERROR]: |00000040| 2c 22 6f 62 66 75 73 63 61 74 65 64 22 3a 66 61 |,"obfuscated":fa|
[18:06:46 ERROR]: |00000050| 6c 73 65 2c 22 69 74 61 6c 69 63 22 3a 66 61 6c |lse,"italic":fal|
[18:06:46 ERROR]: |00000060| 73 65 2c 22 75 6e 64 65 72 6c 69 6e 65 64 22 3a |se,"underlined":|
[18:06:46 ERROR]: |00000070| 66 61 6c 73 65 2c 22 73 74 72 69 6b 65 74 68 72 |false,"strikethr|
[18:06:46 ERROR]: |00000080| 6f 75 67 68 22 3a 66 61 6c 73 65 2c 22 63 6f 6c |ough":false,"col|
[18:06:46 ERROR]: |00000090| 6f 72 22 3a 22 77 68 69 74 65 22 2c 22 62 6f 6c |or":"white","bol|
[18:06:46 ERROR]: |000000a0| 64 22 3a 66 61 6c 73 65 7d 5d 7d 00 08 00 0d 49 |d":false}]}....I|
[18:06:46 ERROR]: |000000b0| 74 65 6d 4a 6f 69 6e 20 4e 61 6d 65 00 0d 72 61 |temJoin Name..ra|
[18:06:46 ERROR]: |000000c0| 6e 64 6f 6d 2d 70 61 6e 65 2d 31 00 00          |ndom-pane-1..   |
[18:06:46 ERROR]: +--------+-------------------------------------------------+----------------+
[18:06:46 ERROR]: Caused by: net.md_5.bungee.protocol.BadPacketException: Protocolize is unable to read packet dev.simplix.protocolize.data.packets.ClickWindow at protocol version 765 in direction TO_SERVER
[18:06:46 ERROR]: Caused by: java.lang.NoClassDefFoundError: Could not initialize class dev.simplix.protocolize.bungee.providers.BungeeCordComponentConverterProvider$BungeeCordComponentConverter
[18:06:46 ERROR]:       at dev.simplix.protocolize.bungee.providers.BungeeCordComponentConverterProvider.platformConverter(BungeeCordComponentConverterProvider.java:29)
[18:06:46 ERROR]:       at dev.simplix.protocolize.api.chat.ChatElementImpl.ofJson(ChatElementImpl.java:24)
[18:06:46 ERROR]:       at dev.simplix.protocolize.api.chat.ChatElement.ofJson(ChatElement.java:20)
[18:06:46 ERROR]:       at dev.simplix.protocolize.api.item.ItemStackSerializer.read(ItemStackSerializer.java:66)
[18:06:46 ERROR]:       at dev.simplix.protocolize.data.packets.ClickWindow.read(ClickWindow.java:85)
[18:06:46 ERROR]:       at dev.simplix.protocolize.bungee.packet.BungeeCordProtocolizePacket.read(BungeeCordProtocolizePacket.java:55)
[18:06:46 ERROR]:       at net.md_5.bungee.protocol.DefinedPacket.read(DefinedPacket.java:534)
[18:06:46 ERROR]:       at net.md_5.bungee.protocol.MinecraftDecoder.decode(MinecraftDecoder.java:62)
[18:06:46 ERROR]:       at net.md_5.bungee.protocol.MinecraftDecoder.decode(MinecraftDecoder.java:13)
[18:06:46 ERROR]:       at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:88)
[18:06:46 ERROR]:       at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)
[18:06:46 ERROR]:       at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
[18:06:46 ERROR]:       at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
[18:06:46 ERROR]:       at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)
[18:06:46 ERROR]:       at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)
[18:06:46 ERROR]:       at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
[18:06:46 ERROR]:       at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
[18:06:46 ERROR]:       at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:346)
[18:06:46 ERROR]:       at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:318)
[18:06:46 ERROR]:       at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)
[18:06:46 ERROR]:       at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
[18:06:46 ERROR]:       at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
[18:06:46 ERROR]:       at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410)
[18:06:46 ERROR]:       at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:440)
[18:06:46 ERROR]:       at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
[18:06:46 ERROR]:       at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919)
[18:06:46 ERROR]:       at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:166)
[18:06:46 ERROR]:       at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:788)
[18:06:46 ERROR]:       at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:724)
[18:06:46 ERROR]:       at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:650)
[18:06:46 ERROR]:       at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:562)
[18:06:46 ERROR]:       at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
[18:06:46 ERROR]:       at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
[18:06:46 ERROR]:       at java.base/java.lang.Thread.run(Thread.java:1589)
[18:06:46 ERROR]: Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.RuntimeException: java.lang.NoSuchFieldException: italic [in thread "Netty Worker IO Thread #13"]
[18:06:46 ERROR]:       at dev.simplix.protocolize.bungee.providers.BungeeCordComponentConverterProvider$BungeeCordComponentConverter.<clinit>(BungeeCordComponentConverterProvider.java:41)
[18:06:46 ERROR]:       at dev.simplix.protocolize.bungee.providers.BungeeCordComponentConverterProvider.platformConverter(BungeeCordComponentConverterProvider.java:29)
[18:06:46 ERROR]:       at dev.simplix.protocolize.api.chat.ChatElementImpl.ofJson(ChatElementImpl.java:24)
[18:06:46 ERROR]:       at dev.simplix.protocolize.api.chat.ChatElement.ofJson(ChatElement.java:20)
[18:06:46 ERROR]:       at dev.simplix.protocolize.api.item.ItemStackSerializer.read(ItemStackSerializer.java:66)
[18:06:46 ERROR]:       at dev.simplix.protocolize.data.packets.ClickWindow.read(ClickWindow.java:88)
[18:06:46 ERROR]:       ... 29 more
Xuwznln commented 10 months ago

I am sorry, this error appears on bungeecord and not related to this issue. My problem was resolved after switching to build 936.