Netherending Ores

Netherending Ores

7M Downloads

1.12.2 Crash with IE's Crusher

Cazadorsniper opened this issue ยท 7 comments

commented

May want to take a look into this issue: BluSunrize/ImmersiveEngineering#3826

commented

Since this has been fixed on Immersive Engineering's end commit 91c1244 has been reverted and this issue is now closed.

commented

I know I initially screwed up the recipe format for the crusher, but that was fixed in development.
Maybe it has something to do with the time multiplier, which was implemented in a more unusual way.

commented

Please try setting S:"Crusher 2x recipe multiplier time multiplier" and S:"Crusher 3x recipe multiplier time multiplier" both to 1.0 and see if the crashes stop with Netherending Ores enabled.

You could also try turning off the integration entirely B:"Immersive Engineering recipes" to false if you want to keep using the mod in the meantime.

commented

It worked, setting the values to 1.0.

commented

Hi, I believe this is related to IE's calculation of recipe energy usage per tick at TileEntityMultiblockMetal.java:479:
this.energyPerTick = this.recipe.getTotalProcessEnergy()/this.maxTicks;
...where both factors and the result are integers. As such, if a recipe's max ticks are greater than its energy requirement (and therefore its energy per tick is less than one), energyPerTick is zero, which causes the later division by zero at line 563. The same issue might exist in other machines; I didn't check.

The crusher recipe time multiplier being high enough triggers this issue.

I've never done any Minecraft modding so I apologise if I got something wrong.

commented

It crashes because the multiplier is something that I should not have fiddled with. The crusher doesn't support changing the value at the recipe level. Setting to 1.0 as I instructed @Cazadorsniper basically disabled the option entirely. The multiplier is normally defined in Immersive Engineering's config. I am going to remove the code entirely.

commented

Basically the machine can't dynamically change the time muiltiplier, it needs to be set once at startup and can't be changed at game runtime.