
Opening GUI of Stirling Generator leads to being kicked from SMP server
Rongmario opened this issue ยท 7 comments
What happens:
Client gets kicked from server when opening the GUI of a Stirling Generator, server does not crash nor does the client.
What you expected to happen:
Open GUI normal and interact with it and use it successfully
Steps to reproduce:
- Right click on a Sterling Generator
- GUI loads for 1/2 a second or so and server kicks you out (error report down below)
Affected Versions (Do not use "latest"):
- EnderIO: 2.3.0.426
- EnderCore: 0.2.0.35
- Minecraft: 1.7.10
- Forge: 1566build
- Fastcraft (mentioned in log): 1.23
Your most recent log file where the issue was present:
http://hastebin.com/giritewici.avrasm
Full log: https://gist.githubusercontent.com/Rongmario/90e6496888698d92b385e6c7213c1476/raw/4d26cb78312ab2851b01a13be56258ab536057a7/gistfile1.txt
Nope, none of the ways work and the log is now: https://gist.githubusercontent.com/Rongmario/086a1c34c33902c221b9a6e0246f53aa/raw/478286bf8a335575e68485cd29eeeb1c5148df27/gistfile1.txt
Ok, I had a quick look.
What's happening is: The server receives a network packet on the channel "enderio" with the ID ("discriminator" in Forge-speak) of 109. It doesn't know what to do with it.
For which I cannot blame it. Ender IO "only" has 96 network packets, numbered 0 to 95. Additionally, we have no packets that are sent from the client to the server from the Stirling Generator GUI. So opening that GUI will not trigger a packet. (Some other machines do that to ask the server to update some data while the GUI is open that isn't usually sent to the client.)
So, what's the reason for this? There's a number of possibilities:
- Some other mod registers its packet on Ender IO's channel but registers more of them on the client than the server. Probability: low.
- Some mod writes more/less data into one of its packages on the client than it reads on the server. So what Forge thinks means "enderio:109" is actually some completely unrelated data. (The channel is also sent as a number, not a string)
- Something else.
So for now I can only suggest trying to remove mods to see if you can either move the crash to another message or find a mod that triggers it.
One more possibility: Someone could re-initialized parts of Ender IO on the client. That would lead to packet being registered again, too.