mezz / JustEnoughItems

Item and Recipe viewing mod for Minecraft
https://www.curseforge.com/minecraft/mc-mods/jei
MIT License
771 stars 302 forks source link

[Crash]: client crash after rejoining a server #3596

Open glougloudu77 opened 1 month ago

glougloudu77 commented 1 month ago

Steps to Reproduce the Crash

I have a problem that I think is similar to #3018 I use JEI-1.18.2-forge-10.2.1.1.1005

when I launch my game and join a server, everything works correctly, on the other hand, if I leave the server and rejoin it without restarting my game, the game crashes as soon as I try to open a GUI, the The error displayed in my client's console is: 23:26:45.612 mezz.jei.forge.startup.StartEventObserver Render thread A Screen is opening but JEI hasn't started yet. Normally, JEI is started after ClientPlayerNetworkEvent.LoggedInEvent, TagsUpdatedEvent, and RecipesUpdatedEvent. Something has caused one or more of these events to fail, so JEI is starting very late.

Mod Pack URL (Optional)

No response

Mod Pack Version (Optional)

No response

Extra Notes (Optional)

No response

Crash Report

https://gist.github.com/glougloudu77/f344a4c611afc2b3614a770048106045

mezz commented 1 month ago

Thanks for the report! I need some more information to solve this issue, please paste your full fml-client-latest.log or latest.log to https://gist.github.com and link it here.

glougloudu77 commented 1 month ago

Of course, here is the latest.log, the crash happens around line 3200

https://gist.github.com/glougloudu77/4ece47d600e3cbe6f48a79533e2d28e2 thank you for your quick response

mezz commented 1 month ago

Thanks for the log. It looks like an earlier error breaks the vanilla plugin, which is what causes the later error:

[14:05:08] [Render thread/ERROR]: Caught an error from mod plugin: class mezz.jei.common.plugins.vanilla.VanillaPlugin jei:minecraft
java.lang.IllegalArgumentException: Recipe catalyst must not be empty
    at mezz.jei.common.load.registration.RecipeCatalystRegistration.lambda$addRecipeCatalyst$0(RecipeCatalystRegistration.java:48) ~[jei-1.18.2-forge-10.2.1.1005.jar%23121!/:10.2.1.1005]
    at java.util.Optional.orElseThrow(Optional.java:403) ~[?:?]
    at mezz.jei.common.load.registration.RecipeCatalystRegistration.addRecipeCatalyst(RecipeCatalystRegistration.java:48) ~[jei-1.18.2-forge-10.2.1.1005.jar%23121!/:10.2.1.1005]
    at mezz.jei.api.registration.IRecipeCatalystRegistration.addRecipeCatalyst(IRecipeCatalystRegistration.java:36) ~[jei-1.18.2-forge-10.2.1.1005.jar%23121!/:10.2.1.1005]
...

I will figure out how to prevent that from happening

mezz commented 1 month ago

Does something in your mod pack remove the crafting table? That seems to be the cause of the crash but I want to confirm

glougloudu77 commented 1 month ago

Good morning, Indeed, there is a mod that affects the crafting table, we are working on a job mod and to block the crafts we had to override the crafting table, maybe we didn't do it correctly, if you If you have time to look, I would be very grateful.

mezz commented 1 month ago

I create new ItemStack(Blocks.CRAFTING_TABLE) and then that seems to be crashing later because it's treated like an empty ItemStack.

I thought about working around what you're doing but the further I got into it, the more I am sure that this approach breaks very fundamental assumptions about the game and will likely be incompatible with other mods too. I do not really understand how you implemented this so I am not sure how to help, could you show me what you are doing?