[raiguard][2.1.9] Spurious liquid shortages at extreme speeds

Dictator
Inserter
Inserter
Posts: 33
Joined: Tue Nov 19, 2024 7:13 pm
Contact:

[raiguard][2.1.9] Spurious liquid shortages at extreme speeds

Post by Dictator »

What did you do?
I setup all-legendary factory that uses sufluric acid to create steam to condense it to water to turn it back into sufluric acid (lab test for testing extreme throughput of liquids.
obraz.png
obraz.png (760.21 KiB) Viewed 781 times
obraz.png
obraz.png (70.97 KiB) Viewed 781 times
What happened?
Water shortage in second machine despite equal production = consumption
obraz.png
obraz.png (124.69 KiB) Viewed 781 times
What did you expect to happen instead? It might be obvious to you, but do it anyway!
I excepted no shortage of water just equal matching.
In such scenario I would be consuming 21.6k calcite per minute rather than 6760 calcite per minute
obraz.png
obraz.png (16.91 KiB) Viewed 781 times
Fluid production and consumption:
obraz.png
obraz.png (70.48 KiB) Viewed 781 times
Does it happen always, once, or sometimes?
It might happen only under such extreme scenarios.
Attachments
factorio-current.log
(11.71 KiB) Downloaded 23 times
LegendaryStuffLiquidTest.zip
(907.69 KiB) Downloaded 28 times
Hurkyl
Filter Inserter
Filter Inserter
Posts: 325
Joined: Mon Dec 02, 2024 10:54 am
Contact:

Re: [2.1.9] Spurious liquid shortages at extreme speeds

Post by Hurkyl »

Incidentally, this doesn't work in 2.0 either: the acid neutralization machine can't empty its output buffer fast enough.
Dictator
Inserter
Inserter
Posts: 33
Joined: Tue Nov 19, 2024 7:13 pm
Contact:

Re: [2.1.9] Spurious liquid shortages at extreme speeds

Post by Dictator »

Okay, this is bit funny: once I added fluid tank to steam whole system stabilized - had to add more inserters with suflur and calcite to appropriate machines
So it seems like system needs capacity to function properly.
obraz.png
obraz.png (861.91 KiB) Viewed 745 times
obraz.png
obraz.png (51.57 KiB) Viewed 745 times
obraz.png
obraz.png (46.01 KiB) Viewed 745 times
obraz.png
obraz.png (87.63 KiB) Viewed 745 times
360 calcite * 60 = 21600 calcite, not 14400
obraz.png
obraz.png (7.08 KiB) Viewed 745 times
Its running slower, at 240 calcite per second. Inconsistency smaller but still here.
Attachments
LegendaryStuffLiquidTestTank.zip
(920.02 KiB) Downloaded 25 times
Dictator
Inserter
Inserter
Posts: 33
Joined: Tue Nov 19, 2024 7:13 pm
Contact:

Re: [2.1.9] Spurious liquid shortages at extreme speeds

Post by Dictator »

Hurkyl wrote: Fri Jul 03, 2026 5:54 pm Incidentally, this doesn't work in 2.0 either: the acid neutralization machine can't empty its output buffer fast enough.
Single storage tank stabilizes situation a bit.
obraz.png
obraz.png (762.56 KiB) Viewed 741 times
obraz.png
obraz.png (82.97 KiB) Viewed 741 times
14.4/21.6 = 0.66x of rated speed which coincidences closely with fullness ratio.
Without tank it was halfish of that
gridstop
Long Handed Inserter
Long Handed Inserter
Posts: 68
Joined: Sun Jul 17, 2016 1:46 am
Contact:

Re: [2.1.9] Spurious liquid shortages at extreme speeds

Post by gridstop »

At 6000 steam per tick, even with the new input/output improvements, if the size of the pipe buffer and the condenser inputs is less than 1 ticks worth it seems likely there may just be nowhere for the fluid to go. AKA, maybe it has to go somewhere for 1 tick so the next simulation update can process it on the condenser machines?
Dictator
Inserter
Inserter
Posts: 33
Joined: Tue Nov 19, 2024 7:13 pm
Contact:

Re: [2.1.9] Spurious liquid shortages at extreme speeds

Post by Dictator »

gridstop wrote: Fri Jul 03, 2026 6:09 pm At 6000 steam per tick, even with the new input/output improvements, if the size of the pipe buffer and the condenser inputs is less than 1 ticks worth it seems likely there may just be nowhere for the fluid to go. AKA, maybe it has to go somewhere for 1 tick so the next simulation update can process it on the condenser machines?
This fixed cap is gone for 2.1
14M per minute (single machine makes steam) its 14M / 3600 = 3888 steam per tick (old limit was 100 per tick or so).

EDIT:
So for next test I removed infinity pipe input. That is water is coming from melted ice for making suflur acid.
obraz.png
obraz.png (587.08 KiB) Viewed 692 times
Producing more water than needed.
obraz.png
obraz.png (22.77 KiB) Viewed 692 times
Infinite pipe wasn't issue - still 66% of max calcite use
obraz.png
obraz.png (6.49 KiB) Viewed 692 times
Attachments
LegendaryStuffNoInfinityPipe.zip
(1.03 MiB) Downloaded 26 times
Last edited by Dictator on Fri Jul 03, 2026 6:47 pm, edited 2 times in total.
gridstop
Long Handed Inserter
Long Handed Inserter
Posts: 68
Joined: Sun Jul 17, 2016 1:46 am
Contact:

Re: [2.1.9] Spurious liquid shortages at extreme speeds

Post by gridstop »

I'm not referring to the ability for the fluid to transfer out of the fluid box and into the network, I'm referring to there possibly not being enough space in the network itself for the 6000 fluid per tick to even exist for 1 tick. 360,000 steam per second coming out of the cryo plant is 6000/tick. Even if the output fluid boxes can empty into the fluid network fast enough, and the input fluid boxes can drain from the network fast enough, I'm guessing there still has to be somewhere for 6000 fluid to exist for 1 tick so that the producing cryo plant can run the next craft. There is some latency between production and consumption.

raiguard could confirm I'm sure but the fact that adding a tank fixes it makes me think it's something along these lines.

EDIT: I did some testing, it's hard to model because it relates to fluid flow that occurs within a single tick, and I'm not sure the sequence. But from best I could see, if I had a 700 capacity pipe extent, in the first tick after the source machine produces its fluid, it ends up at 5300/6000, implying that indeed, the amount that can flow out is limited by the total fluid network capacity. Then within the same tick, the fluid flows from the network into the other machines so the pipes are empty, but the amount transferred is limited to 700 in my tests. I added some random pipes and ran it again and the maximum flow per tick was again basically exactly the pipe network capacity.
Dictator
Inserter
Inserter
Posts: 33
Joined: Tue Nov 19, 2024 7:13 pm
Contact:

Re: [2.1.9] Spurious liquid shortages at extreme speeds

Post by Dictator »

gridstop wrote: Fri Jul 03, 2026 6:39 pm I'm not referring to the ability for the fluid to transfer out of the fluid box and into the network, I'm referring to there possibly not being enough space in the network itself for the 6000 fluid per tick to even exist for 1 tick. 360,000 steam per second coming out of the cryo plant is 6000/tick. Even if the output fluid boxes can empty into the fluid network fast enough, and the input fluid boxes can drain from the network fast enough, I'm guessing there still has to be somewhere for 6000 fluid to exist for 1 tick so that the producing cryo plant can run the next craft. There is some latency between production and consumption.

raiguard could confirm I'm sure but the fact that adding a tank fixes it makes me think it's something along these lines.

EDIT: I did some testing, it's hard to model because it relates to fluid flow that occurs within a single tick, and I'm not sure the sequence. But from best I could see, if I had a 700 capacity pipe extent, in the first tick after the source machine produces its fluid, it ends up at 5300/6000, implying that indeed, the amount that can flow out is limited by the total fluid network capacity. Then within the same tick, the fluid flows from the network into the other machines so the pipes are empty, but the amount transferred is limited to 700 in my tests. I added some random pipes and ran it again and the maximum flow per tick was again basically exactly the pipe network capacity.
I produce more acid than I need now resulting in higher fullness ratio, but it didn't change stuff.
obraz.png
obraz.png (43.96 KiB) Viewed 650 times
Calcite consumption remained unchanged (should be 360*60 = 21600/m.
obraz.png
obraz.png (7.83 KiB) Viewed 652 times
So modded buildings with modded beacons, modules and qualities will run into wall if flows would be huge despite exact max (for solids) being higher.

Adding steam consumers 2x above what is produced increased calcite consumption and steam production.
obraz.png
obraz.png (328.31 KiB) Viewed 635 times
obraz.png
obraz.png (19.84 KiB) Viewed 635 times
obraz.png
obraz.png (62.29 KiB) Viewed 635 times
gridstop
Long Handed Inserter
Long Handed Inserter
Posts: 68
Joined: Sun Jul 17, 2016 1:46 am
Contact:

Re: [2.1.9] Spurious liquid shortages at extreme speeds

Post by gridstop »

EDIT: Actually, it does seem like something weird is going on, rate calculator and the tooltip say one number, and I don't see the machine ever get blocked, but it does seem to not hit the production numbers it should even with tons of fluid storage tanks.

Both the tooltip and Rate Calculator mod indicate it should be outputting 6 crafts per tick, which you'd expect at 0.5s craft time and 180 speed. (360 per second / 60 ticks per second). But if you have the machine read crafts and output it on the circuit, the highest I could possibly get is a value of 5 (and production graph confirms 5000/tick). That's with enormous pipe storage tank buffers on input and output and dozens of infinity pipes filling and draining.

Since FFF 442 mentions the max flow is derived from 'the fluid buffer volume' I'm assuming that's referring to the output fluid box size? Maybe it's not quite big enough for the acid neutralization recipe on the cryo plant?
Last edited by gridstop on Fri Jul 03, 2026 8:20 pm, edited 2 times in total.
Dictator
Inserter
Inserter
Posts: 33
Joined: Tue Nov 19, 2024 7:13 pm
Contact:

Re: [2.1.9] Spurious liquid shortages at extreme speeds

Post by Dictator »

gridstop wrote: Fri Jul 03, 2026 7:56 pm Are you saying that the steam transfer is still limited? Because I was easily running at 360k/second with your setup as long as I added 1 storage tank to buffer steam.

Are you sure you're not bottlenecked somewhere else now?
Weird, I have storage tanks at every pipe section (one per fluid)
obraz.png
obraz.png (603.06 KiB) Viewed 619 times
obraz.png
obraz.png (77.4 KiB) Viewed 619 times
EDIT: intended use case of suflur power plant:
obraz.png
obraz.png (852.87 KiB) Viewed 594 times
obraz.png
obraz.png (571 KiB) Viewed 594 times
obraz.png
obraz.png (133.49 KiB) Viewed 594 times
obraz.png
obraz.png (38.34 KiB) Viewed 594 times
obraz.png
obraz.png (48.3 KiB) Viewed 594 times
obraz.png
obraz.png (92.32 KiB) Viewed 592 times
gridstop
Long Handed Inserter
Long Handed Inserter
Posts: 68
Joined: Sun Jul 17, 2016 1:46 am
Contact:

Re: [2.1.9] Spurious liquid shortages at extreme speeds

Post by gridstop »

Not sure whether it really counts as a bug or not as I don't think they were necessarily guaranteeing infinite throughput, the fluid throughput went from 100 per tick to like 4000-5000 per tick now with normal space age machines, just there's some theoretical cases where that's still not enough. Modders could probably still go faster than that if they increase the buffer sizes.

I think the tooltip is showing what it would be with no limitations, and you don't see the blocked messages I'm assuming as long as you produce at least one craft cycle every tick.
Dictator
Inserter
Inserter
Posts: 33
Joined: Tue Nov 19, 2024 7:13 pm
Contact:

Re: [raiguard][2.1.9] Spurious liquid shortages at extreme speeds

Post by Dictator »

Hmm letting machines have access to entire pipe network seemed to fix issue - now fluids can scale indefinitely.
obraz.png
obraz.png (421.97 KiB) Viewed 85 times
obraz.png
obraz.png (250.06 KiB) Viewed 85 times
obraz.png
obraz.png (52.62 KiB) Viewed 85 times
obraz.png
obraz.png (54.28 KiB) Viewed 85 times
obraz.png
obraz.png (28.92 KiB) Viewed 85 times
Post Reply

Return to “Assigned”