Any changes (enabling, disabling, changing, adding whitespaces, i.e. anything at all) in any mods including base game will cause any liquids that already are filled into machines and waiting to be consumed by the recipe to disappear.
This causes recipes with closed liquid loop to fail after certain amount of updates. It is also not very polite to delete possibly valuable resources for no apparent reason.
[Rseding91] [0.17.63] Liquids disappear from machines on any changes in mods
-
- Long Handed Inserter
- Posts: 78
- Joined: Mon Nov 03, 2014 12:28 pm
- Contact:
[Rseding91] [0.17.63] Liquids disappear from machines on any changes in mods
- Attachments
-
- factorio-current.log
- (4.73 KiB) Downloaded 130 times
Re: [Dominik] [0.17.63] Liquids disappear from machines on any changes in mods
Hi,
I understand that it is a nuisance especially with those meaningless changes. But it has good reasons.
Changing prototype can, from our perspective, have totally random effects. So we have to be very defensive in order to keep the game consistent. That is why if any prototype or data change for a save, all migrations are run that check and fix stuff, including removing it.
I don't remember when and why we have added this removal of fluids but I am quite sure that there was a good safety reason for it.
On the other hand, I don't see why this issue even exists. As far as I know (generally, I don't do modding), prototype is the thing that is supposed to NOT change in runtime. Changing them should be bad practice in the least, ideally not possible at all. Again, I don't know how it is realistically in how factorio treats it. But to me changing prototype runtime seems wrong and it can't be expected to work perfectly.
I understand that it is a nuisance especially with those meaningless changes. But it has good reasons.
Changing prototype can, from our perspective, have totally random effects. So we have to be very defensive in order to keep the game consistent. That is why if any prototype or data change for a save, all migrations are run that check and fix stuff, including removing it.
I don't remember when and why we have added this removal of fluids but I am quite sure that there was a good safety reason for it.
On the other hand, I don't see why this issue even exists. As far as I know (generally, I don't do modding), prototype is the thing that is supposed to NOT change in runtime. Changing them should be bad practice in the least, ideally not possible at all. Again, I don't know how it is realistically in how factorio treats it. But to me changing prototype runtime seems wrong and it can't be expected to work perfectly.
Re: [Rseding91] [0.17.63] Liquids disappear from machines on any changes in mods
Fluids in crafting machines definitely aren't supposed to be deleted when prototype data changes. We have a bunch of explicit logic inside of the crafting machine fluidbox setup/re-setup logic to avoid that.
I'll see if I can reproduce this first with a test and then look into it. Maybe one of the bug fixes around the fluidbox logic broke it for crafting machines.
I'll see if I can reproduce this first with a test and then look into it. Maybe one of the bug fixes around the fluidbox logic broke it for crafting machines.
If you want to get ahold of me I'm almost always on Discord.
Re: [Rseding91] [0.17.63] Liquids disappear from machines on any changes in mods
I made a test and it's now fixed for the next version of 0.17. It was introduced with the oil changes the other week and an improper fix to a migration-crash issue it introduced.
If you want to get ahold of me I'm almost always on Discord.