Fluid Pipez void fluids from multi-tanks if only one fluid can be transferred
mikewk opened this issue ยท 3 comments
Bug description
When transferring from a multi-tank with the target fluid in the Nth position to a single tank partially filled with target fluid, Fluid Pipez* voids the first N-1 fluids before transferring the target fluid.
*Note, this is actually caused by Forge bug (link) in tryFluidTransfer. Obviously it'd be nice if Forge fixed the bug but in the meantime maybe there's a workaround.
Steps to reproduce the issue
- Set up a multi tank with different fluids (I tested this with both TiC smeltery and Industrial Foregoing black hole tanks).
- Place a single tank with some fluid from one of the later tanks in the multi-tank.
- Set Fluid Pipe to extract from multi-tank.
- See error
Expected behavior
Two possible expected behaviors:
- Ideally, only the fluid that can be placed into the single tank is transferred and no fluids are voided. I'm not sure this is possible if the Forge bug remains unfixed. At least not without significant changes like effectively implementing tryFluidTransfer correctly internally.
- No fluids are transferred or voided. This is the behavior of the other instant transfer mod I tested, Xnet. I suspect because it only looks at Tank 0 to determine if it can pipe out, and therefore dodges the Forge bug.
Log files
N/A
Versions
- 1.16.15
- 36.1.12
- 1.2.7
Other mods
I was able to replicate this with only these three mods installed:
Pipez
Industrial Foregoing
Titanium (IF dependency)
I believe this same bug is the cause and it also happens if you filter a TiC Smeltery output.
If you say that you don't want Tin for example and Iron is available in the second fluid it will destroy all Tin to get to the Iron.