Hephaestus Fabric

Hephaestus Fabric

1M Downloads

Incompat with Frostiful / Thermoo

sleepy-evelyn opened this issue ยท 21 comments

commented

Minecraft Version

1.20.1

Fabric Version

0.15.1

Fabric API Version

0.91.0

Hephaestus Version

3.6.3.241

Describe your issue

A null pointer issue for getTouchingFluid(). Only happens with Hephaestus + Frostiful installed and only after loading a world and exploring for a bit.

You can reproduce the error by visiting a Frostiful Ice Castle structure using /locate structure

Crash Report

https://gist.github.com/sleepy-evelyn/2a83f6e7a35243033cea84d1f44cb6c5

Other mods

No other mods installed. Tested with just the 2 mods together.

Frostiful includes a few dependencies:

  • Cloth Config
  • Thermoo

Tried reproducing with just Tinkers?

Yes

Performance Enchancers

None of the above

Searched for known issues?

Searched open issues

commented

Duplicate of #89

commented

Just to note this is a similar issue but it's not an issue with Puzzles Lib.

commented

How so? You the issue is the same

commented

How so? You the issue is the same

It's not. Puzzles Lib isn't included in the instance or as a dependency. There is no mention of Puzzles Lib in the crash report at all.

commented

Yes but the underline issue is the same. I should probably rename the issue to make that more clear

commented

Yes but the underline issue is the same. I should probably rename the issue to make that more clear

Yes true. Hence the Just to note this is a similar issue. I just wanted to make sure yah knew it wasn't Puzzle Lib specifically causing the issue :P

commented

Fair enough

commented

I've run into this exact issue, the getTouchingFluid() null pointer problem with Frostiful and was wondering if the issue was marked closed because there's an inherent incompatibility or if there is a fix for a future release? I've been digging through the code trying to figure out exactly what the issue might be in both Thermoo and Hephaestus and the most obvious cause is that it's possible to have null touchingFluid though the weird part is that some people on the server never get the error and some of us keep getting it and I'm just curious what the underlying cause is.
Thanks

commented

It's closed because its a duplicate. The issue is with Star a library that I depend on

commented

is it adding in a null check on the checkIfCustomFluidIsBreathable method or is there a bigger issue that making that check would just cover up?

And if I should move this over to the Star issue I can, mostly just trying to see if I might be able to fix it before recommending my sever just rollback the Hephaestus install.

commented

Star just needs a null check that's pretty much it. The only reason it hasn't been fixed was because I was working on a refactor for how star handled fluid physics

commented

So, in theory assuming I can get Gradle to work, I would drop that check in and get it compiled then drop the jar into the Hephaestus...uh....lib folder in there? Sorry about this, I was just asked to look into this for my wife and her friends on their server as they really want to run tinkers but they love Frostiful as well. I mostly do enterpise servlets and applications and haven't done mod work before so I didn't want to promise them anything if the build process was a lot more complicated that I hoped.

commented

Something like that, I'll see if I can push a quick fix to star. After that you'll just have to build the jar

commented
commented

That would be much appreciated. If Gradle works like Ant and I get the jar made would I also need to rebuild the whole Hephaestus mod as well? Not sure if you just unjar the Star library when packaging up Hephaestus or if there is a libs directory in the existing mod somewhere to drop it into. But if you could get a chance to make that fix on an expermental branch if you don't want it in main yet and give me a little bit of direction in deploying it, I'd greatly appreciate it.

commented

You likely shouldn't need to modify the hephaestus jar. All you would need to do is put the new star jar in your mods folder and floader should load it instead of the one hephaestus bundles.

commented

Thank you very much, there will be some happy people over here tonight and if you have like a ko-fi or donation place let me know and we'll have a thank you :D

commented

Oh, wow, does that have the null check in it?

commented

Yes I added it in this commit, AlphaMode/Star@2670140 Let me know if the issue still happens

commented

Do I need to add this to the existing Hephaestus-1.20.1-3.6.3.240.jar/META-INF/libs directory or will just putting into the servers mod directory load the classes from the Star.x.jar first (as I didn't see a separate Star.x.jar in the server mod directory)

commented

You should only need to put it in your mods folder, you shouldn't need to edit the meta inf jars