GregTechCEu Modern

GregTechCEu Modern

6M Downloads

World corrupting bug involving large fractionating distilleries

TimMayr opened this issue ยท 2 comments

commented

Checked for existing issues

  • I have checked for existing issues, and have found none.

Tested latest version

  • I have checked that this occurs on the latest version.

GregTech CEu Version

v1.6.1

Minecraft Version

1.20.1 Forge

Recipe Viewer Installed

EMI

Environment

Singleplayer

Cross-Mod Interaction

No

Other Installed Mods

Occurs in Mod dev environment

Expected Behavior

Not entirely sure. Probably nothing.

Actual Behavior

The game crashed and the world isn't recoverable

Steps to Reproduce

  1. Build a large fractionating distillery
    • No extra layers, no output hatches at the top
    • Dual input & output in the level under the controller block
  2. Supply power
  3. Make sure it is in Distillery Tower mode
  4. Set the circuit of the input hatch to 3
  5. Input a Bucket of raw oil

Additional Information

After a bit of snooping around in the source code, it seems like during DistillationTowerMachine#onStructureFormed a problem occurs. It expects all output hatches to be located above the controller, leading to a negative index getting selected from the parts list. This results in the outputs list being null, and a subsequent error in DistillationTowerMachine.DistillationTowerLogic#applyFluidOutputs when it tries to get outputs.size().

commented

There seems to be something related going on on version 1.4.1 in 1.21.1, except that you need an output hatch in the regular position, and a dual output hatch underneath the controller. Instead of crashing, the input doesn't get consumed, but the output gets produced, and put in the lower output hatch.

commented

Thanks for the report. It seems like for some reason the DT and LFD allow for a dual output hatch in the layers they aren't supposed be in.