Player Unable to Join Server When Farmer's Delight is added to modlist
BestTsar opened this issue ยท 2 comments
Minecraft version
1.18.2
Farmer's Delight version
1.2.2 and 1.2.3
Forge version
40.2.0
Description
When farmer's delight is added to the modlist of my Spigot server, players are unable to join and are given the message
Internal Exception: io.netty.handler.codec.DecoderException:java.lang.IndexOutOfBoundsException: readerIndex(12) + length(1) exceeds writerIndex(12): PooledUnsafeDirectByteBuf(ridx: 12, widx: 12, cap: 12)
The server does not crash and the logs of the server only show that the player connects and immediately disconnects
This mod has been isolated as the issue, the problem persists even if it is the only mod in the mod list.
Loading into a single player world does not have any issues, it in only when joining a server
Steps to reproduce
- Installed a fresh spigot server for 1.18.2
- Add Farmers Delight for 1.18.2 to mods folder (issue occurs on both versions 1.2.2 and 1.2.3
- Join Server using localhost:25565
- Crash
Mod list
Farmers Delight
Rubidium has been previously used on the modlist, but the issue persists with only Farmers delight in the folder
Logs
Internal Exception: io.netty.handler.codec.DecoderException:java.lang.IndexOutOfBoundsException: readerIndex(12) + length(1) exceeds writerIndex(12): PooledUnsafeDirectByteBuf(ridx: 12, widx: 12, cap: 12)
Minimal instance
- I have tested this on a minimal instance
Performance and shader mods
- I am using performance or shader mods
This smells like a similar issue we've dealt with in the past: #805
To sum it up: the issue isn't Spigot itself, but rather that Farmer's Delight has to extend a vanilla enum to implement its Recipe Book. Vanilla servers "freak out" because they don't expect the enum to be bigger, causing the connection error above.
ModernFix has since introduced a fix which may allow Spigot and similar server systems to ignore this extended data, thus letting players connect normally. I suggest adding it and seeing if it fixes the issue.
If not, feel free to repoen, or look into the issue I linked above for an alternative fix.