Jump to content

Dealing with freshness preference?


Recommended Posts

Apologies for this half-question, half-rant, I rolled back after losing 25t of food and not noticing until X cycles later because the notifications don't seem to care about sweeper-accessible food.

It's understandable that for eating, duplicants prefer the freshest version of the finest food available. Less understandable is the fact that this preference still applies for cook-supply errands (AFAICT ONI-cooked foods start at 100% freshness regardless of ingredients' freshness), and not just for dupes, but for sweepers as well. :wilsondisapproving:

The problem I got myself into is this: I set up a lot of lettuce farms to use up loose salt water on the map. The plant produces a decent amount of calories, but these are spread over vast quantities of mass. The preferred temperatures around 50°C also mean the produce comes in fairly warm. Long story short, my produce-ingress chiller was not adequate, and the 25t stack of lettuce was still sitting at 15-20°C  and not going anywhere, as it was sitting in -28°C chlorine.

The chlorine temp was not always maintained thoroughly and this large stack dropped in freshness. As new lettuce was coming in fresh and in higher throughput than it could be processed, cooking was exclusively done with the new incoming lettuce, which was fresher. Eventually, a load glitch got me - I could see the chlorine at -18°C immediately after load, but unpausing the game made its temperature instantly jump to -12°C. By this point, the 25t stack of lettuce was so stale I was left with 1/4 of a cycle to try to salvage the situation, which frankly I found impossible. Hence rolling back to times when chlorine was still at -24°C, so that reloading would still leave it below -18°C.

After messing around post-rollback, I found a way to force autosweeper to pick stale food - mark the fresh stacks for moving - in corner storage, dupes can't actually pick it up, and the sweeper doesn't do move errands (and if this changes in the future, just set the destination to somewhere the sweeper can't reach).

Is there a similarly simple way to do this for duplicants? (My dupe food is in open-access vacuum storage). Sometimes a dupe won't finish eating their food, it's swept up back into storage, but no one wil eat it anymore, because the fressness is lower. If not, what do you do with stale food? Compost/feed the resin tree?

Link to comment
Share on other sites

16 hours ago, myxal said:

It's understandable that for eating, duplicants prefer the freshest version of the finest food available.

Not exactly that. They prefer closest best-quality food. They dont care about how fresh it is. So make two storages  and make sure freshier food if far away

  • Like 3
Link to comment
Share on other sites

On 2/6/2024 at 6:15 AM, asurendra said:

They dont care about how fresh it is.

Thanks for the info, is that how it should work?
I've gone back and checked - I actually enabled eating quiche more recently than I thought, but even so - checking the daily reports and assuming each ~1000kcal of quiche eaten was a single sitting (my dupes aren't starving), I've counted 148 instances of dupes eating quiche since being enabled, and they and didn't touch the 15% stack once. In most of that time, the 15% stack was one of only 2 available. That's 148 coin flips that ended up tails in a row.

Either I'm extraordinarily unlucky, or there's more to picking food than "not caring about freshness", or a mod is messing it up, or I found a bug that makes the food invisible to dupes. Time to lock the fresh stack away, and ban frost burgers for a while, I guess.

On 2/6/2024 at 6:15 AM, asurendra said:

So make two storages  and make sure freshier food if far away

Thanks, though with the amount of food I have currently, I'm guessing my chance to apply that advice will come in the next playthrough :D

Link to comment
Share on other sites

They don't care about freshness in that freshness isn't a factor. However it wouldn't be surprising if they prefer more recently created stacks (irrespective of freshness) because games are often like that, some order has to be used for iterating over the choice and it's often LIFO or FIFO.

In general dupes pick food based on a combination of quality and closeness, they prefer closer food but are willing to walk 5 tiles further for each increase in quality level. You can likely force dupes to eat particular food simply by moving it closer to the bathroom than the food you don't want them to eat.

With respect to food scraps from the great hall, this isn't something that should happen unless dupes are interrupted during their meal, which can happen due to holding breath, inadequate bathrooms (so no bathroom is available when downtime started, so they may interrupt eating to use a bathroom), passing out from exhaustion while eating, perhaps angry pokeshells. But it shouldn't generally happen if the base has adequate facilities and is well run. Because that doesn't describe my bases, I keep a Sage Hatch in the great hall to eat the leftovers. I don't want dupes picking up leftovers because it won't be enough for a meal, and then they'll have to run back to get a second meal, I'd rather a Sage Hatch just eats it and removes it from consideration.

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

Thanks @blakemw - LIFO (for equal quality food stacks in the same location) would definitely explain it - the stale stack has been in the freezer for 100s of cycles, made to get the consumables column when the update with the new foods came out. (I didn't actually allow eating quiche back then, and didn't make it infinitely) It went stale because the freezer I made was inadequate, long before I started cooking up quiche infinitely.

Under normal circumstances, stale food (food scraps from great hall) are the newer stacks, created when the dupes take a nibble of food from the storage.

It would also explain why crossing 25t threshold for lettuce made the sweeper pick from the new stack, made from the overflow. And also why, in the 1-kilo-fridge method results in small amounts in the fridge eventually rotting - any leftovers in the fridge are made the "older" stack when the sweeper replenishes the fridge.

FWIW, this isn't a behaviour I would ever call  "dupes don't care" - for that, I'd expect them to pick randomly, with me not having to care about it, as stale stacks would gradually diminish and be consumed. Dupes picking from newest-created stack (regardless of freshness) is something to account for and design around.

Hmm, I wouldn't mind a regular/sage hatch in the hall, though the situation is so rare  and temporary - I picked a new dupe and they were super slow early on, even when confined to the base - I'll stick with the existing setup, where sweepy/sweeper/loader puts stuff back in the freezer. 

Link to comment
Share on other sites

I found this question pretty tedious. If I want no-waste food storage, I do deep-frozen with inert atmosphere. Can be done with a one-tile liquid seal or a corner-storage. 

  • Like 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
  • Create New...