[1.1.87] Fluids get deleted when switching recipes but not when resetting recipes

We are aware of them, but they have low priority. We have more important things to do. They go here in order not to take space in the main bug thread list.
Post Reply
Zaspar
Burner Inserter
Burner Inserter
Posts: 7
Joined: Sun Oct 09, 2022 7:14 pm
Contact:

[1.1.87] Fluids get deleted when switching recipes but not when resetting recipes

Post by Zaspar »

Resetting an oil refinery's basic oil processing recipe will push out up to 100 crude into the pipe it's connected to (or more if the pipe has more capacity but default vanilla pipes have a capacity of 100). However, when pasting the recipe for advanced oil processing onto the refinery using shift+left click, with all other conditions unchanged, no oil is pushed out into the pipe. This inconsistency leads to the most efficient way to switch recipes on oil refineries to be to unset all the recipes first, before switching to advanced oil processing, which is obviously a silly thing to do. The reason I would consider it a bug though, is that it is inconsistent behaviour (the two very similar actions give strangely different results). It does not matter whether there is water in the second input, the result is exactly the same.

This video should completely describe the issue. Please let me know if any other info is missing. Thanks

https://www.youtube.com/watch?v=AeIukbUTvmw

mmmPI
Smart Inserter
Smart Inserter
Posts: 2747
Joined: Mon Jun 20, 2016 6:10 pm
Contact:

Re: [1.1.87] Fluids get deleted when switching recipes but not when resetting recipes

Post by mmmPI »

Zaspar wrote:
Wed Nov 29, 2023 3:28 pm
My bad, I should have written some more detail to go along with the video. I will add that in a separate reply so that it can appear from searches.
The video explains well the situation, but it doesn't fit the template at all ( the one called READ BEFORE POSTING ;) ) viewtopic.php?f=7&t=3638

When i saw it i thought maybe it could be due to the pasted receipe trigger fluid mixing check, the pipe in which the crude oil should be pushed back in your expectation maybe is reserved for water which cause different behavior in the 2 situations ? that's like Qon question


You could still edit your original post to add the missing things from the template, it would also work for searchs when a dev look after some reports that could be related/duplicate.

It's not causing crash or corrupting savefile or desync, it's a minor inconvenience in my eyes although your explanation for TAS makes perfect sense it could explain also why it wasn't considered high priority fluids are considered infinite and there exist other occurences of fluid being deleted due to roundings or fluid/mixing logic deemed not game-breaking, i would not expect this to change at least before the expansion, and would do the TAS accordingly. ( isn't it possible to reset receipe first to get the crude out, and immediatly after but in the same game tick or the one after switching the receipe ? )

Edit : the thread was changed but i didn't receive notification when posting and upon submiting i was answering the other one !

Rseding91
Factorio Staff
Factorio Staff
Posts: 13209
Joined: Wed Jun 11, 2014 5:23 am
Contact:

Re: [1.1.87] Fluids get deleted when switching recipes but not when resetting recipes

Post by Rseding91 »

Thanks for hte report. I looked into this but it's a complicated one due to how assembling machines use fluid boxes and I don't have a nice fix.

When removing a recipe the code path is clear: "first push all fluids away, then remove fluid boxes"

When changing a recipe it isn't so clear: "first add/remove fluid boxes to match the new recipe layout, if any fluids still in the fluid boxes after the change don't match then purge them."

In the change recipe scenario the fluidboxes may not even exist after the recipe has been changed because they got completely removed - so it can't "push away" a deleted fluidbox. Similarly fluid-boxes may have been moved between pipe connections as part of changing the recipe so the fluids would get pushed into the wrong pipes.

It works this way so fluid for a given recipe gets re-used for the next one if they are acceptable.
If you want to get ahold of me I'm almost always on Discord.

Post Reply

Return to “Minor issues”