Immersiveengineering: Problem with Pumps and World Lava

Created on 11 Oct 2016  路  7Comments  路  Source: BluSunrize/ImmersiveEngineering

Mods Used:
http://pastebin.com/JVAX9Ezr

But I've also loaded the world using only IE and I have the same problem.

I'm having inconsistent behavior getting the pumps to pull lava from the world; water works perfectly everywhere.

On the surface it works perfectly fine: http://i.imgur.com/ic9i2cA.png
Yet when I set up the exact same system underground (on a much larger lava lake), nothing happens: http://i.imgur.com/CoISNsv.png
I've double-checked the bottom intakes are blue, and replaced everything countless times. Anything else I'm missing?

In response to some ideas from reddit:

  • I've opened up a 3x3 sky access which didn't work.
  • I tried making lava pumps at Y=64 and Y=32 - no luck.
  • Then I tried making pumps next to the surface pump, both on the same lake and on an adjacent one: http://i.imgur.com/USOVgu0.png

All 7 comments

I may have found the cause of this, can you give me the precise X/Z coordinates of the pumps?

Sure - the only one I have working is at -454 / 65 / 482

Ones that don't work:

  • -448 65 484
  • -453 65 478
  • -454 65 478
  • -449 64 285
  • -448 32 279
  • -449 11 282

My fix should work for all of those. The pump won't work if the X-coordinate XOR the Z-coordinate is negative and not divisible by 40 (The XOR for -454/65/482 is -40). This line is the problem, the left side is always positive, the right side isn't necessarily since % returns negative numbers or 0 for negative inputs.

For players: If you want to calculate the XOR of 2 numbers, http://www.miniwebtool.com/bitwise-calculator/ might be useful.

Java test code for the coordinates @StarvingPoet gave me:

        //working test case
        System.out.println(((-454^482)%40)<0);
        //broken test cases
        System.out.println(((-448^484)%40)<0);
        System.out.println(((-453^478)%40)<0);
        System.out.println(((-454^478)%40)<0);
        System.out.println(((-449^485)%40)<0);
        System.out.println(((-448^479)%40)<0);
        System.out.println(((-449^482)%40)<0);

@malte0811 I'm sorry to clutter this issue, but this bug is so wtf you made my day by answering so fast ! Impressive man !

Yup - I moved a pump to -450 260 (XOR -200) and it worked perfectly.

I though I was doing something wrong...

Lava pump placed here: http://i.imgur.com/ZrgetCE.png

Does not work at all, draws no power, and lags like hell, for example toggling the lever takes like 10 seconds to actually toggle after clicking.

If you leave it off, everything is fine. As soon as you turn that lever on, it's lagfest and 0 fps.

Is this going to be merged so we can have fixed working lava pumps please.

Was this page helpful?
0 / 5 - 0 ratings