CaffeineMC / lithium-fabric

A Fabric mod designed to improve the general performance of Minecraft without breaking things
GNU Lesser General Public License v3.0
1.93k stars 186 forks source link

Conflict with Nature Arise causing crash/freeze #559

Open Gamemassa opened 2 months ago

Gamemassa commented 2 months ago

Version Info

Minecraft 1.21 Fabric Loader 0.16.0 (and 0.16.3) Fabric API 0.100.7 (and 0.102.0) Lithium 0.12.7 (and 0.13.0) for MC 1.21 Nature Arise 0.9.1 (and 0.9.2) for MC 1.21

Reproduction Steps

Trying to open the creative inventory with both Lithium 0.12.7 and Nature Arise 0.9.1 together causes the game to crash to desktop. Upgrading Lithium to 0.13.0 (which was necessary after updating Fabric to 0.16.3 and Fabric API to 0.102.0) and Nature Arise to 0.9.2, the game no longer crashes, but still freezes and has to be forcibly closed.

Crash Report Files

2No2Name commented 2 months ago

The 0.13.0 issue does not look like it is related to lithium. Can/Did you test that version without lithium?

2No2Name commented 2 months ago

The 0.12.7 issue also looks like it is unrelated to lithium

Gamemassa commented 2 months ago

The 0.13.0 issue does not look like it is related to lithium. Can/Did you test that version without lithium?

I did do separate tests with Lithium alone and with Nature Arise alone, and the game didn't crash/freeze in any of those tests.

Out of curiosity, what did you see in the crash report that tells you they may not be related?

2No2Name commented 2 months ago

In the crash report there is nothing that hints at lithium being a cause. The exceptions are thrown in code that lithium doesn't touch at all

Gamemassa commented 2 months ago

In the crash report there is nothing that hints at lithium being a cause. The exceptions are thrown in code that lithium doesn't touch at all

Well it's definitely caused by Lithium and Nature Arise both being installed, so that's incredibly weird.

IThundxr commented 2 months ago

Nature's arise isn't class loading their blocks class at all, which from the looks means that by the time the creative tab event runs it's blocks can possibly not be registered/the registries could be frozen

Gamemassa commented 2 months ago

Nature's arise isn't class loading their blocks class at all, which from the looks means that by the time the creative tab event runs it's blocks can possibly not be registered/the registries could be frozen

When you say "creative tab event" are you referring to some feature of Lithium? Or just, is there something that Lithium does in relation to the Creative Tab?

IThundxr commented 2 months ago

No it's a fabric api provided event to add entries to creative mode tabs

2No2Name commented 2 months ago

My best guess is that you can try disabling the nbt mixin:

Add the line mixin.alloc.nbt=false to the lithium.properties file in the config directory in the .minecraft folder

Gamemassa commented 2 months ago

Oh, thanks! I will try that, and I'll let you know how it goes.

Gamemassa commented 2 months ago

My best guess is that you can try disabling the nbt mixin:

Add the line mixin.alloc.nbt=false to the lithium.properties file in the config directory in the .minecraft folder

I tried adding that to the lithium.properties file, and now when I access the Creative Inventory, I get this crash:

2No2Name commented 2 months ago

That didn't make any difference then

Gamemassa commented 2 months ago

My best guess is that you can try disabling the nbt mixin:

Add the line mixin.alloc.nbt=false to the lithium.properties file in the config directory in the .minecraft folder

Ok, gonna maybe sound dumb for a second, but would it change anything if there are spaces before and after the = ?

2No2Name commented 2 months ago

I never tested it with spaces, so I don't know

Gamemassa commented 2 months ago

I never tested it with spaces, so I don't know

Yeah, spaces didn't change anything. Also, if I'm reading that last crash report correctly, Nature Arise is trying to add an empty stack of something but I don't know what.