zerofall / EZStorage2

EZStorage 2 for Minecraft 1.9.4
MIT License
7 stars 8 forks source link

MP server crash #36

Closed nzhook closed 8 years ago

nzhook commented 8 years ago

We have an weird server crash issue with ezStorage. Not entirely sure what the cause is, beyond items that have been stored.

Opening the ezStorage system will work fine (you can take items out), however after closing the interface. Chests, Machines and anything with an inventory will no longer open for the player who opened the core. Chat, Elevators and Chunk loading continue to work as normal. In addition when that player disconnects the server will crash taking all the other online players with it.

In a recent example the crash report indicated the Wand Of The Lazy Builder from Ender Utilities was the cause, and removing it from storage resolved the issue. However this can not be reproduced and other crash reports have indicated other items from other mods are the cause.

Here is the server crash report (the one which indicates the lazy buider was the cause): crash-2016-09-30_22.24.26-server.txt

I have also uploaded a video which shows the client side symptoms: https://youtu.be/3oGQQlsZ-zo (note using the elevator indicates the server is still responding)

LemADEC commented 8 years ago

Looks like server tries to use client side code to sort by localized names.

sblectric commented 8 years ago

There are 2 different I18n classes that help with translation. Mods should use the common one (net.minecraft.util.text.translation) that works on both server and client like vanilla items do, but for some reason, Ender Utilities uses the client-sided-only one in this case (net.minecraft.client.resources). I can add a workaround for this, but this isn't strictly EZ's fault.

sblectric commented 8 years ago

@nzhook could you test a build for me and see if the problem is fixed? If so, I'll link one in this thread.

sblectric commented 8 years ago

Well it should be fixed, so a build will go up on Curseforge now. Reopen this issue if it's still there, but theoretically it's fine now.