[Bug]: Oxygen Distributor and Oxygen Loader appear to void excess input
MuteTiefling opened this issue ยท 5 comments
Bug Description
When pumping in fluids, these two machines appear to be voiding excess. I've noticed this with both Water and Oxygen.
How to Reproduce?
- Place down an Oxygen Distributor
- Provide it with power
- Pipe in water at a fixed rate. In my testing, I'm using a Modular Router operating at 500mb/t
- Now watch the inputs.
The Oxygen meter on the right will go from 3k to about 2.95k. During this time the left input nearly fills. As soon as the right hits 2.95k, the power usage spikes and it begins rapidly draining the input at 100mb/t until it is completely empty. Once it empties, it begins filling again and the cycle repeats.
Expected Behavior
Input fluid usage should be considerably lower.
Version
1.20.4-1.16.5
Mod Loader Version
20.4.233
Mod Loader
NeoForge
Logs or additional context
Video of it happening https://streamable.com/bgvfes
This also occurs in AdAstra 1.20.1-1.15.18 on Forge 47.2.30
Code of Conduct
- I have searched the issue tracker and confirmed that the issue has not been reported
- I have checked the FAQ (if one is present) and my issue is not listed
- I have verified that I am using the latest version of the mod
- I have verified that I have installed all the required dependencies for the mod
- I have verified that I do not have Optifine installed. We will close issues if we detect Optifine is in your pack. We cannot fix Optifine issues. Please do not report issues with Optifine present.
Just some extra observations with this, but it appears to just continuously consume at the rate specified in the recipe: https://github.com/terrarium-earth/Ad-Astra/blob/5a21dd5f58986f8b9ca8dd533e8e76167a7421a6/common/src/main/generated/resources/data/ad_astra/recipes/oxygen_loading/oxygen_from_oxygen_loading_water.json
So, for example, the default recipe is 100 water to 4 oxygen (ouch). If the Distributor is using 1 oxygen per tick, you would expect it to consume water at 25 per tick. It does not, however, and simply consumes 100 per tick regardless.
If you change the recipe to something like 1000 water to 40 oxygen, maintaining the ratio, it will instead switch to consuming at 1000 water per tick whether it needs to or not.
For now in my tests I'm just adjusting the value to something more reasonable to lose per tick, so a ratio of 9:3. So even though it's consuming more than it needs, it is at least not draining water so fast.
Im encountering the same bug on 1.15.5 on MC 1.20.1. Especially with oxygen its very annoying as it means I need an extra Oxygen Loader to fill up my space suit!
Adding on to this, as I think it is related... but my water also seems to be voided in the following situation.
- Machine outputs water to a tank (type of tank doesn't seem to matter)
- Ostrum Fluid Pipe extracts from the tank and inserts into multiple disabled Oxygen Distributors
- Oxygen Distributors fill to a point and then stop. The tank does not continue to fill despite the machine feeding it producing continuous water.
Centrifuge is using a custom recipe that converts potatoes to bio fuel and water. The bio fuel is voided out the left and the water goes into the tank.
The first Distributor never quite fills. It's short by 75mb
The second Distributor is similarly not full, short by 25mb
Meanwhile the tank fluctuates between 25 and 75mb. It should be back stuffing, and if I disconnect the pipes it does indeed fill up.
Note, setting the pipes on the Distributors to Insert Only does not resolve this. They seem to just keep accepting the water endlessly.
I've found a minor workaround that prevents wastage somewhat until all the buffers are full.
Using an intermediary buffer tank between the oxygen loader and distributor, and configuring the distributor to push it's "output" buffer to that tank while also pulling it into the input buffer, it prevents voiding until the intermediary tank AND the input buffer are filled as well as the output buffer.
This is sufficient for me since i got a decent buffer to refill personal oxygen containers with and the water/power use is nonsignificant