I strongly support this suggestion, but I think freshness filtering could be taken one step further:
Freshness should be a property of the item filter itself, similar to Quality.
Right now freshness is treated as a special inserter setting: an inserter can prefer the freshest or most spoiled item available.
This is useful for answering:
"Which one of these items should I pick first?"
But it cannot answer a much more important question:
"Should I pick this item at all?"
For example, I cannot express:
- Yumako with freshness >= 75%
- Agricultural science packs with freshness >= 50%
- Pentapod eggs with freshness < 25%
This makes freshness fundamentally different from Quality from an automation point of view. Quality is part of the item selection/filtering system, while freshness is currently a special-case priority setting.
Treat freshness like Quality in filters
When selecting an item, we already have an additional selector for Quality.
For spoilable items, I would add another condition next to it:
Freshness: Any / > / >= / = / <= / < [percentage]
For example:
Code: Select all
Agricultural science pack | Any quality | Freshness >= 75%
The important part is that this would be part of the
item filter, rather than another special setting added separately to individual entities.
That means the same concept could naturally work everywhere item filters are used.
Quick note: I don't mean a free-form percentage field where you could enter arbitrary values like 47%. I mean a small set of fixed freshness thresholds, similar to Quality tiers — for example
25% / 50% / 75% / 95%.
What this enables
This would make it possible to build much more deterministic Gleba logistics.
For example:
- Split off everything below 25% freshness from a main belt and send it to recycling/disposal.
- Guarantee that critical production chains only receive sufficiently fresh ingredients.
- Load only sufficiently fresh Agricultural science packs into rockets.
- Separate fresh and nearly spoiled products using splitters.
- Request only sufficiently fresh items through the logistic network.
- Count or react to items of a particular freshness range with circuit logic.
The last point is especially interesting: right now I can easily ask the circuit network
"how many Yumako do I have?", but not
"how many Yumako above 50% freshness do I have?"
Freshness is one of the central properties of Gleba items, yet from the automation perspective it is mostly invisible.
Why I think this fits Factorio
This doesn't remove the spoilage challenge.
It gives the player better tools to
solve the spoilage challenge.
Factorio normally gives us very precise control over logistics and lets us decide what to do with that information.
Freshness currently feels unusually opaque compared with other item properties.
And from a UI perspective, this could reuse an abstraction that already exists: the item filter selector and its Quality setting, rather than introducing more entity-specific freshness controls.
In other words:
Quality tells the filter what kind of item I want. Freshness should be able to do the same.
Guys, please support this suggestion if you feel the same way. I really think the ability to sort and filter items by freshness is essential for Gleba, and the fact that similar suggestions keep appearing regularly shows that this is not just my personal pain point.
Just a few most recent posts highlighting the same pain point around spoilage control:
viewtopic.php?t=135673
viewtopic.php?t=130680
P. S. Screens with UI/UX examples I generated with GPT