ProtocolLib

3M Downloads

Internal Exception io.netty.handler.codec.DecoderException: com.google.gson.JsonSyntaxExceptionL Expected id to be a string was an array ([-13...18])

theijfo opened this issue · 4 comments

commented
  • This issue is not solved in a development build

Description
That bug appears:

  • When using: /effect
  • When someone died
    And it kicked all the player in my server.

To Reproduce
Steps to reproduce the behavior:

  1. Download ProtocolLib
  2. Join the Server
  3. Use /effect give
  4. The server will kick everyone
  5. Everyone will see the error like the title

Expected behavior
It does nothing dangerous but it's veryveryveryvery anoying and my friend hate it.

Screenshots
2024-02-24_21 27 22

Version Info
Server Version: Spigot 1.19.4, and the bug appearred in every version of ProtocolLib

Host
Aternos.

commented

Hi,

I assume that this is not a problem of ProtocolLib itself but rather one of your other plugins that is incompatible with the latest Minecraft protocol.
Please send us the output of /protocol dump (which includes a list of all your plugins and how they interact with ProtocolLib) and any exceptions / errors and relevant warnings that show in your log file.

commented

I have the same problem, but I don’t know what plugin caused it

commented

Hi,

I assume that this is not a problem of ProtocolLib itself but rather one of your other plugins that is incompatible with the latest Minecraft protocol. Please send us the output of /protocol dump (which includes a list of all your plugins and how they interact with ProtocolLib) and any exceptions / errors and relevant warnings that show in your log file.

Info:

  • When I delete PL, the bug disappeared and when i reinstalled it, the bug appeared again ;-;
  • I'm using the latest version of PL in aternos.
    The dump:

ProtocolLib Dump
Timestamp: 02/28/24 10:36:16

ProtocolLib Version: ProtocolLib v5.1.0
Bukkit Version: 1.19.4-R0.1-SNAPSHOT
Server Version: 3763-Spigot-7d7b241-5a5e43e (MC: 1.19.4)
Java Version: 17.0.10

ProtocolLib: com.comphenix.protocol.ProtocolLib@461302de[
statistics=com.comphenix.protocol.metrics.Statistics@16b0e6
packetTask=com.comphenix.protocol.scheduler.DefaultTask@2fcfb6bd
tickCounter=1154
configExpectedMod=1
updater=com.comphenix.protocol.updater.SpigotUpdater@23f4eb73
redirectHandler=com.comphenix.protocol.ProtocolLib$2@7d2f1821
scheduler=com.comphenix.protocol.scheduler.DefaultScheduler@488b16e2
commandProtocol=com.comphenix.protocol.CommandProtocol@1a232b10
commandPacket=com.comphenix.protocol.CommandPacket@1e08f454
commandFilter=com.comphenix.protocol.CommandFilter@1b6319a4
packetLogging=com.comphenix.protocol.PacketLogging@bcf202c
skipDisable=false
isEnabled=true
loader=org.bukkit.plugin.java.JavaPluginLoader@8b7e1ee
server=CraftServer{serverName=CraftBukkit,serverVersion=3763-Spigot-7d7b241-5a5e43e,minecraftVersion=1.19.4}
file=plugins/ProtocolLib.jar
description=org.bukkit.plugin.PluginDescriptionFile@5269935d
dataFolder=plugins/ProtocolLib
classLoader=org.bukkit.plugin.java.PluginClassLoader@72454f3c
naggable=true
newConfig=YamlConfiguration[path='', root='YamlConfiguration']
configFile=plugins/ProtocolLib/config.yml
logger=org.bukkit.plugin.PluginLogger@17da2a09
]
Manager: com.comphenix.protocol.injector.PacketFilterManager@661845c4[
plugin=ProtocolLib v5.1.0
server=CraftServer{serverName=CraftBukkit,serverVersion=3763-Spigot-7d7b241-5a5e43e,minecraftVersion=1.19.4}
reporter=com.comphenix.protocol.ProtocolLib$1@78f5d121
minecraftVersion=(MC: 1.19.4)
asyncFilterManager=com.comphenix.protocol.async.AsyncFilterManager@7013d7b4
pluginVerifier=com.comphenix.protocol.injector.PluginVerifier@36df21dd
inboundListeners=com.comphenix.protocol.injector.SortedPacketListenerList@12cd64a7
outboundListeners=com.comphenix.protocol.injector.SortedPacketListenerList@44e7d306
registeredListeners=[PacketAdapter[plugin=SCore, sending=ListeningWhitelist[priority=HIGH, packets=[WINDOW_ITEMS[class=PacketPlayOutWindowItems, id=18]], gamephase=PLAYING, options=[]], receiving=EMPTY_WHITELIST], PacketAdapter[plugin=SCore, sending=EMPTY_WHITELIST, receiving=ListeningWhitelist[priority=LOW, packets=[BLOCK_DIG[class=PacketPlayInBlockDig, id=29]], gamephase=PLAYING, options=[]]], PacketAdapter[plugin=InteractiveChat, sending=ListeningWhitelist[priority=HIGHEST, packets=[TAB_COMPLETE[class=PacketPlayOutTabComplete, id=15]], gamephase=PLAYING, options=[ASYNC]], receiving=EMPTY_WHITELIST], PacketAdapter[plugin=InteractiveChat, sending=ListeningWhitelist[priority=MONITOR, packets=[SET_SUBTITLE_TEXT[class=ClientboundSetSubtitleTextPacket, id=93], DISGUISED_CHAT[class=ClientboundDisguisedChatPacket, id=27], SET_ACTION_BAR_TEXT[class=ClientboundSetActionBarTextPacket, id=70], CHAT[class=ClientboundPlayerChatPacket, id=53], SYSTEM_CHAT[class=ClientboundSystemChatPacket, id=100], SET_TITLE_TEXT[class=ClientboundSetTitleTextPacket, id=95]], gamephase=PLAYING, options=[]], receiving=EMPTY_WHITELIST], com.r4g3baby.simplescore.scoreboard.listeners.PacketListener@1fca60c6, PacketAdapter[plugin=InteractiveChat, sending=EMPTY_WHITELIST, receiving=ListeningWhitelist[priority=MONITOR, packets=[CHAT_COMMAND[class=ServerboundChatCommandPacket, id=4], CHAT[class=PacketPlayInChat, id=5]], gamephase=PLAYING, options=[]]], PacketAdapter[plugin=InteractiveChat, sending=EMPTY_WHITELIST, receiving=ListeningWhitelist[priority=MONITOR, packets=[SETTINGS[class=PacketPlayInSettings, id=8]], gamephase=PLAYING, options=[]]], PacketAdapter[plugin=InteractiveChat, sending=ListeningWhitelist[priority=HIGH, packets=[SERVER_DATA[class=ClientboundServerDataPacket, id=69]], gamephase=PLAYING, options=[]], receiving=EMPTY_WHITELIST]]
packetInjector=com.comphenix.protocol.injector.netty.manager.NetworkManagerPacketInjector@2a271259
playerInjectionHandler=com.comphenix.protocol.injector.netty.manager.NetworkManagerPlayerInjector@65b91f09
networkManagerInjector=com.comphenix.protocol.injector.netty.manager.NetworkManagerInjector@1ca8b745
debug=false
closed=false
injected=true
]

Listeners:
com.ssomar.score.utils.display.PacketManager$1@1b05d886[
plugin=SCore v4.24.2.27
connectionSide=SERVER_SIDE
receivingWhitelist=EMPTY_WHITELIST
sendingWhitelist=ListeningWhitelist[priority=HIGH, packets=[WINDOW_ITEMS[class=PacketPlayOutWindowItems, id=18]], gamephase=PLAYING, options=[]]
]
com.ssomar.score.hardness.HardnessesHandler$1@49a2bbaa[
plugin=SCore v4.24.2.27
connectionSide=CLIENT_SIDE
receivingWhitelist=ListeningWhitelist[priority=LOW, packets=[BLOCK_DIG[class=PacketPlayInBlockDig, id=29]], gamephase=PLAYING, options=[]]
sendingWhitelist=EMPTY_WHITELIST
]
com.loohp.interactivechat.listeners.OutTabCompletePacket$1@212c2e35[
plugin=InteractiveChat v4.2.9.0
connectionSide=SERVER_SIDE
receivingWhitelist=EMPTY_WHITELIST
sendingWhitelist=ListeningWhitelist[priority=HIGHEST, packets=[TAB_COMPLETE[class=PacketPlayOutTabComplete, id=15]], gamephase=PLAYING, options=[ASYNC]]
]
com.loohp.interactivechat.listeners.OutMessagePacket$1@38b1e51b[
plugin=InteractiveChat v4.2.9.0
connectionSide=SERVER_SIDE
receivingWhitelist=EMPTY_WHITELIST
sendingWhitelist=ListeningWhitelist[priority=MONITOR, packets=[SET_SUBTITLE_TEXT[class=ClientboundSetSubtitleTextPacket, id=93], DISGUISED_CHAT[class=ClientboundDisguisedChatPacket, id=27], SET_ACTION_BAR_TEXT[class=ClientboundSetActionBarTextPacket, id=70], CHAT[class=ClientboundPlayerChatPacket, id=53], SYSTEM_CHAT[class=ClientboundSystemChatPacket, id=100], SET_TITLE_TEXT[class=ClientboundSetTitleTextPacket, id=95]], gamephase=PLAYING, options=[]]
]
com.r4g3baby.simplescore.scoreboard.listeners.PacketListener@1fca60c6[
protocolLibPlugin=ProtocolLib v5.1.0
sendingPackets=ListeningWhitelist[priority=HIGHEST, packets=[SCOREBOARD_OBJECTIVE[class=PacketPlayOutScoreboardObjective, id=88], SCOREBOARD_DISPLAY_OBJECTIVE[class=PacketPlayOutScoreboardDisplayObjective, id=81]], gamephase=PLAYING, options=[]]
]
com.loohp.interactivechat.listeners.RedispatchSignedPacket$1@5d8fb422[
plugin=InteractiveChat v4.2.9.0
connectionSide=CLIENT_SIDE
receivingWhitelist=ListeningWhitelist[priority=MONITOR, packets=[CHAT_COMMAND[class=ServerboundChatCommandPacket, id=4], CHAT[class=PacketPlayInChat, id=5]], gamephase=PLAYING, options=[]]
sendingWhitelist=EMPTY_WHITELIST
]
com.loohp.interactivechat.listeners.ClientSettingPacket$2@6103e83d[
plugin=InteractiveChat v4.2.9.0
connectionSide=CLIENT_SIDE
receivingWhitelist=ListeningWhitelist[priority=MONITOR, packets=[SETTINGS[class=PacketPlayInSettings, id=8]], gamephase=PLAYING, options=[]]
sendingWhitelist=EMPTY_WHITELIST
]
com.loohp.interactivechat.listeners.RedispatchSignedPacket$2@4d14512b[
plugin=InteractiveChat v4.2.9.0
connectionSide=SERVER_SIDE
receivingWhitelist=EMPTY_WHITELIST
sendingWhitelist=ListeningWhitelist[priority=HIGH, packets=[SERVER_DATA[class=ClientboundServerDataPacket, id=69]], gamephase=PLAYING, options=[]]
]

Plugins Using ProtocolLib:
SCore by [Ssomar]
SimpleScore by [R4G3_BABY]
InteractiveChat by [loohp]

commented

If anyone is curious, this seems to be related to Minecraft changing how JSON components work.

Specifically, net.kyori:adventure-text-serializer-gson:4.3.0 is compatible with Minecraft 1.19.4, but net.kyori:adventure-text-serializer-gson:4.17.0 isn't (I haven't bisected the exact version, nor do I intend to).