StartGamePacket#forceExperimentalGameplay is not an optional boolean, so if you send another boolean after the first one that already said that force experimental gameplay was enabled, the bytes afterwards are corrupted and this is resulting in the client closing the connection.
StartGamePacket#forceExperimentalGameplay is not an optional boolean, so if you send another boolean after the first one that already said that force experimental gameplay was enabled, the bytes afterwards are corrupted and this is resulting in the client closing the connection.
Tested with: https://github.com/CloudburstMC/Server/tree/refactor/items
Changed to: