Immersive Engineering

Immersive Engineering

134M Downloads

crashes on startup with mod Canals

superdude808 opened this issue · 5 comments

commented

crashes with the mod https://www.curseforge.com/minecraft/mc-mods/canals on startup because immersive and canals both add
"fine level" property to fluids which causes: java.lang.IllegalArgumentException: Block{null} has duplicate property: fine_level

crash log https://pastebin.com/iWkU6nMm

commented

already reported to the dev of the canals mod

commented

I'm unaware of IE adding a fine_level propery to anything. I'm not sure what Canals is doing here, but I hazard to think how IE contributed to it.

Maybe @StephenBarnes can shed some light on this.

commented

It's from this line where IE registers all fluid properties as block state properties, which causes duplicates because I'm already registering "fine_level" in both of them and then you're re-registering it in the blockstate. So I changed it to two separate properties, one for the block and one for the fluid StephenBarnes/Canals-V2@62b8157

That seemed to fix that crash, but now when I run both mods it freezes when it's loading the mods, not sure why.

commented

We might be able to bring it down to 24576 if I add a special case to IE to not re-register the canal_fluid_level property on the block. Or put a special case in Canals to not register new properties for IE fluids. I think it's 8 * 12 (fine level) * 16 (IE) * 8 (level) * 2 (falling). I might try doing this, but still a good chance it won't work since you're modifying some fluid physics.

commented

I'll close this, since it IMO isn't at all IEs fault. The new freeze on startup is probably because you're now causing blocks with 147456 states to be created: (6*12)²=9216 for your two properties with 6*12 states each, multiplied by the 16-state int property added to the IE concrete fluid. The vanilla datastructures for blockstates are horrible when it comes to memory usage, the freeze is probably just the JVM slowly running out of memory.
Edit: Correction, 1'327'104 states if I'm reading the code correctly. I missed the vanilla LEVEL and FALLING properties.

Additionally I believe that adding properties to vanilla blocks (and blocks from other mods) can cause worldgen issues, @TelepathicGrunt may be able to comment on that.