age-series / ElectricalAge

Electrical Age (ELN) is a Minecraft Mod offering the ability to perform large-scale in-game electrical simulations.
Other
69 stars 32 forks source link

Crash on server using latest lwgl3ify #341

Closed Milii20 closed 3 months ago

Milii20 commented 3 months ago

Hello! I was trying the 1.21.9 stable version with the latest lwgl3ify's version, and even in a big modpack it seemed to go perfect, but i wanted to try playing in a server and i found it crashing, so i updated to the testing 1.22.3 version and, even tho the error changed, it was similar.

I narrowed it down to the following: lwgl3ify, unimixins (required for lwgl3ify), cofh core (required for Electrical Age), and Electrical age itself

Both versions seem to work perfectly in a client environment, but crash on the serverside Just in case it helps, here are both crash-reports:

with 1.21.9 stable: https://pastebin.com/Ez9YqNCP and with 1.22.3 testing: https://pastebin.com/cQbDvyBE

Hope it helps Thank you very much for your time!

jrddunbr commented 3 months ago

I'm not sure why you would need lwjgl3 on the server. The code that is crashing is client side code that should not be running on the server. It tries to load the model files and crashes.

Milii20 commented 3 months ago

Hello!, pretty much the only reason is the performance gains, specially when generating terrain. Generating a 16x16 chunk area (in a heavy modded modpack) took about 30 to 40 seconds with java 21, and arround 1 minute with java 8 (same world, regenerated with each version). And just standing, seems to be about a 10 to 15% less ms for some reason

jrddunbr commented 3 months ago

Yeah, but lwjgl is the rendering/audio library. It only runs on the client. It provides zero benefit (apparently, even crashing the game) if used on the server. LWJGL doesn't affect Java version.

Milii20 commented 3 months ago

I do understand, but lwgl3ify is more than just lwjgl, it also allows 1.7.10 to run in modern java (11, 17 or newer, in my case i use 21), you can check it here: https://github.com/GTNewHorizons/lwjgl3ify , in the first words of the readme it says "Brings LWJGL3 and modern Java versions to Minecraft 1.7.10". The LWJGL library does not affect the java version, but the mod lwgl3ify does affect it, that's why you run it in a server, to be able to use newer java in said server

jrddunbr commented 3 months ago

Ah, in that case, maybe someone from GTNH wants to look at it. I don't particularly have the time/interest to make this work. I looked at the error code and there's no clear reason to me why it would be doing what it's doing. The render calls are not where it fails, but rather it fails in the calls to set up the render code.

Milii20 commented 3 months ago

Hello!, yesterday i decided to give it a try again and try to find out what exactly went wrong in code, but... i coudnt reproduce the crash anymore... now it works perfectly for some reason, so i will close this issue, thank you for your time