Error about AvailableCommandsPacket when using WaterdogPE Proxy
My Network Structure:
- Proxy: WaterdogPE
- Lobby Server: PocketMine-MP
- Game Server: PocketMine-MP
Plugin Used: EasyEdit (installed on both Lobby and Game servers)
Issue: When I connect to the Lobby server, everything works fine. However, when transferring from the Lobby server to the Game server, WaterdogPE logs the following error:
2025-06-22 00:58:36.865 [Bedrock Listener - #2] WARN - Failed to decode packet
org.cloudburstmc.protocol.bedrock.codec.PacketSerializeException: Error whilst deserializing AvailableCommandsPacket(commands=[])
at org.cloudburstmc.protocol.bedrock.codec.BedrockCodec.tryDecode(BedrockCodec.java:70) ~[Waterdog.jar:?]
at dev.waterdog.waterdogpe.network.protocol.handler.ProxyBatchBridge.decodePacket(ProxyBatchBridge.java:92) ~[Waterdog.jar:?]
at dev.waterdog.waterdogpe.network.protocol.handler.ProxyBatchBridge.onBedrockBatch(ProxyBatchBridge.java:56) ~[Waterdog.jar:?]
...
Details: The error appears only when EasyEdit is installed on the Game server. Removing EasyEdit from the Game server immediately resolves the issue. It seems that EasyEdit may be interfering with the AvailableCommandsPacket, sending an empty or malformed packet that WaterdogPE cannot deserialize.
Steps to Reproduce:
Install EasyEdit on both Lobby and Game PocketMine servers. Connect to the Lobby server (works fine). Transfer to the Game server → triggers the decoding error in WaterdogPE.
Expected Behavior: Player should be transferred smoothly between servers without any protocol errors.
Actual Behavior: WaterdogPE throws a PacketSerializeException when switching to the server running EasyEdit.