[2.0.17] Spoilage counts as not spoilable for inserter priority
[2.0.17] Spoilage counts as not spoilable for inserter priority
I would expect that if I set an inserter to prioritize spoiled items first, it would pull spoilage before anything else. However, it pulls spoilage last, because it's technically an unspoilable item.
Re: [2.0.17] Spoilage counts as not spoilable for inserter priority
Thanks for the report, however i am throwing this straight to Not a bug. Spoiled priority was implemented primarily for handling one item selection and in original shape it was not even considering items that were not spoilable (spoilage has no timeout to convert into something different so it is not spoilable). I am considering this to be more of "idea or suggestion" hidden behind a bug report because for you it appears as not working as intended when in fact it was never decided how this should behave when taking spoilage into consideration. It was barely defined for spoilables themselves because spoil priority compares ticks remaining until item becomes spoiled so items with different spoil time may appear as incorrectly comparing their spoil percentages. In theory i could add a flag to the ItemPrototype that an item should be considered as "the most spoiled" for the purpose of spoil priority causing the logic to be split into more pieces: "spoiled non spoilables, spoilables in order of spoil tick, non spoilables".
In short: Spoilage being an item that does not spoil anymore is not involved in the spoil priority logic and so this is Not a bug.
-- edit: Moved back to Bug reports because it is being decided by someone else
In short: Spoilage being an item that does not spoil anymore is not involved in the spoil priority logic and so this is Not a bug.
-- edit: Moved back to Bug reports because it is being decided by someone else
Re: [2.0.17] Spoilage counts as not spoilable for inserter priority
Ok, decision was made and this issue is now fixed for 2.0.18.
Spoilage even if being non spoilable, will be considered as more spoiled than spoilable items. This will be achieved by means of ItemPrototype::spoil_level that was also added for 2.0.18.
With those changes there will be also a behavior change in inserter priorities: When inserter grabs freshest items first, it will consider non spoilables (different than spoilage) to be more fresh than items that are already spoiling.
Spoilage even if being non spoilable, will be considered as more spoiled than spoilable items. This will be achieved by means of ItemPrototype::spoil_level that was also added for 2.0.18.
With those changes there will be also a behavior change in inserter priorities: When inserter grabs freshest items first, it will consider non spoilables (different than spoilage) to be more fresh than items that are already spoiling.
Re: [2.0.17] Spoilage counts as not spoilable for inserter priority
Doesn't that defeat the whole point of this setting? If I enable spoilage filter and set it to freshest first, I'd expect it to first grab spoilable items with the most freshness. Feels a bit unintuitive. Maybe a third spoilage filter mode would make more sense than changing this up? "Spoiled first" (behave like before), "Freshest first" (behave like before), "Non-spoilable first" (new behavior)
Re: [2.0.17] Spoilage counts as not spoilable for inserter priority
Shouldn't you be using item filters to fix that? Personally I agree setting a freshness priority should not prevent it from grabbing unspoilable items.Linnun wrote: ↑Thu Nov 14, 2024 3:26 pmDoesn't that defeat the whole point of this setting? If I enable spoilage filter and set it to freshest first, I'd expect it to first grab spoilable items with the most freshness. Feels a bit unintuitive. Maybe a third spoilage filter mode would make more sense than changing this up? "Spoiled first" (behave like before), "Freshest first" (behave like before), "Non-spoilable first" (new behavior)
My mods: Multiple Unit Train Control, Smart Artillery Wagons
Maintainer of Vehicle Wagon 2, Cargo Ships, Honk
Maintainer of Vehicle Wagon 2, Cargo Ships, Honk
Re: [2.0.17] Spoilage counts as not spoilable for inserter priority
Yes, everything on Gleba basically uses item filters already anyways, so it shouldn't matter too much. It's just that when reading the change, it feels unintuitive to me that "freshest first" generally prioritizes unspoilables.robot256 wrote: ↑Thu Nov 14, 2024 3:49 pmShouldn't you be using item filters to fix that? Personally I agree setting a freshness priority should not prevent it from grabbing unspoilable items.Linnun wrote: ↑Thu Nov 14, 2024 3:26 pmDoesn't that defeat the whole point of this setting? If I enable spoilage filter and set it to freshest first, I'd expect it to first grab spoilable items with the most freshness. Feels a bit unintuitive. Maybe a third spoilage filter mode would make more sense than changing this up? "Spoiled first" (behave like before), "Freshest first" (behave like before), "Non-spoilable first" (new behavior)
Re: [2.0.17] Spoilage counts as not spoilable for inserter priority
Quite the opposite for me. I expect un-spoilable items to be considered 100% fresh, and spoilage to be considered 100% spoiled, and spoilable items to come in between. I built a whole factory module around this for iron production on gleba and then was distraught to find that neither of these behaviors worked as I expected. I am delighted that the response here matches my initial expectations about how this mechanic would work.Linnun wrote: ↑Thu Nov 14, 2024 3:26 pmDoesn't that defeat the whole point of this setting? If I enable spoilage filter and set it to freshest first, I'd expect it to first grab spoilable items with the most freshness. Feels a bit unintuitive. Maybe a third spoilage filter mode would make more sense than changing this up? "Spoiled first" (behave like before), "Freshest first" (behave like before), "Non-spoilable first" (new behavior)
-
- Filter Inserter
- Posts: 352
- Joined: Thu Jun 01, 2017 12:05 pm
- Contact:
Re: [2.0.17] Spoilage counts as not spoilable for inserter priority
How do you use this mechanic? I don't understand why you'd want to insert spoilage first, for example.sparr wrote: ↑Thu Nov 14, 2024 5:49 pm Quite the opposite for me. I expect un-spoilable items to be considered 100% fresh, and spoilage to be considered 100% spoiled, and spoilable items to come in between. I built a whole factory module around this for iron production on gleba and then was distraught to find that neither of these behaviors worked as I expected. I am delighted that the response here matches my initial expectations about how this mechanic would work.
Re: [2.0.17] Spoilage counts as not spoilable for inserter priority
You want to remove it firstDarkShadow44 wrote: ↑Thu Nov 14, 2024 6:53 pm How do you use this mechanic? I don't understand why you'd want to insert spoilage first, for example.
Re: [2.0.17] Spoilage counts as not spoilable for inserter priority
I want to remove iron ore before iron bacteria to put on my smelting belt, but I'll start filling the belt with iron bacteria if that's all I have left.
I want to pull the least spoiled items to use in production, and the most spoiled to get rid of. But I need to pull 100% spoiled (i.e. converted to spoilage) first, and that took an extra inserter/filter prior to this.
I want to pull the least spoiled items to use in production, and the most spoiled to get rid of. But I need to pull 100% spoiled (i.e. converted to spoilage) first, and that took an extra inserter/filter prior to this.
Re: [2.0.17] Spoilage counts as not spoilable for inserter priority
You can use filters on inserterssparr wrote: ↑Sun Nov 17, 2024 2:04 am I want to remove iron ore before iron bacteria to put on my smelting belt, but I'll start filling the belt with iron bacteria if that's all I have left.
I want to pull the least spoiled items to use in production, and the most spoiled to get rid of. But I need to pull 100% spoiled (i.e. converted to spoilage) first, and that took an extra inserter/filter prior to this.
Re: [2.0.17] Spoilage counts as not spoilable for inserter priority
What filter would you recommend that will pull iron ore then iron bacteria?Hares wrote: ↑Mon Nov 18, 2024 4:07 pmYou can use filters on inserterssparr wrote: ↑Sun Nov 17, 2024 2:04 am I want to remove iron ore before iron bacteria to put on my smelting belt, but I'll start filling the belt with iron bacteria if that's all I have left.
I want to pull the least spoiled items to use in production, and the most spoiled to get rid of. But I need to pull 100% spoiled (i.e. converted to spoilage) first, and that took an extra inserter/filter prior to this.
Or spoilage then the most spoiled nutrients?
(Before the change described in this thread)
Re: [2.0.17] Spoilage counts as not spoilable for inserter priority
Assembler -> Read contents -> Decider combinator -> Inserter -> Set filterssparr wrote: ↑Mon Nov 18, 2024 8:38 pmWhat filter would you recommend that will pull iron ore then iron bacteria?Hares wrote: ↑Mon Nov 18, 2024 4:07 pmYou can use filters on inserterssparr wrote: ↑Sun Nov 17, 2024 2:04 am I want to remove iron ore before iron bacteria to put on my smelting belt, but I'll start filling the belt with iron bacteria if that's all I have left.
I want to pull the least spoiled items to use in production, and the most spoiled to get rid of. But I need to pull 100% spoiled (i.e. converted to spoilage) first, and that took an extra inserter/filter prior to this.
Or spoilage then the most spoiled nutrients?
(Before the change described in this thread)
Or just use two inserters, each with its own condition.