Selector Combinator: Quality Overwrite

Post your ideas and suggestions how to improve the game.

Moderator: ickputzdirwech

berggen
Long Handed Inserter
Long Handed Inserter
Posts: 57
Joined: Tue Sep 01, 2020 7:12 pm
Contact:

Selector Combinator: Quality Overwrite

Post by berggen »

TL;DR
A mode for the selector combinator that flattens quality.
What?
Add a selector combinator mode called Quality Overwrite or similar which:

Has a target quality selector, [Common, Uncommon, Rare, Epic, Legendary], with Common selected by default.

Converts all input X[Any] to X[Target]. So if you had 20 Common Iron Plate and 2 Uncommon Iron Plate, you'd get an output signal of 22 Common Iron Plate by default.
Why?
With labs now able to set research, I'd like to be able to set the research based on the count of bottles of science I have without regard to their quality. Currently the method to do this is somewhat cumbersome, where you need to detect if you have any common X science, any uncommon X science, any rare X science, any epic X science, or any legendary X science and then output that to a common X science signal, and need one combinator per science to translate this.

There's other places that some interesting behavior is opened up by being able to quickly sum all items of any quality:
  • If you have a lot of ice but very little common ice, switch your ice melting plants to quality recipes.
  • If you have a lot of quality concrete (all concrete - common concrete), play an alert to remind the player to pave the surface some more.
aaron311
Inserter
Inserter
Posts: 47
Joined: Sun Mar 22, 2020 2:30 am
Contact:

Re: Selector Combinator: Quality Overwrite

Post by aaron311 »

I actually needed to do this a month or two ago and I figured out that an arithmetic combinator with "each" input adding 0 and outputting a specific non-quality signal would sum all qualities together. I am still at a loss for why this works TBH but I have found it useful:
Screenshot 2026-06-30 191450.png
Screenshot 2026-06-30 191450.png (290.74 KiB) Viewed 216 times
I personally think that yes this should be a selector operation but that's just me.

+1
berggen
Long Handed Inserter
Long Handed Inserter
Posts: 57
Joined: Tue Sep 01, 2020 7:12 pm
Contact:

Re: Selector Combinator: Quality Overwrite

Post by berggen »

aaron311 wrote: Tue Jun 30, 2026 11:18 pm I actually needed to do this a month or two ago and I figured out that an arithmetic combinator with "each" input adding 0 and outputting a specific non-quality signal would sum all qualities together. I am still at a loss for why this works TBH but I have found it useful:

...

I personally think that yes this should be a selector operation but that's just me.

+1
This works in your case because you only have biter eggs I assume. The EACH signal basically clones the whole combinator for every signal, and repeats it. Arithmetic combiantor adding 0 or multiplying by 1 lets you re-assign a signal on the input to another on the output, as does a decider combinator passing along the input value. Unfortunately, this doesn't work in the general case, because it doesn't filter the incoming signal at all, it really just sums all signals:
Screenshot from 2026-06-30 22-37-57.png
Screenshot from 2026-06-30 22-37-57.png (126.75 KiB) Viewed 195 times
What I want is more a way to map quality from a set of related signals down to a single signal (ideally summing them, but if I have to do it the way I do here, fine), like this:
Screenshot from 2026-06-30 22-39-21.png
Screenshot from 2026-06-30 22-39-21.png (171.56 KiB) Viewed 195 times
And now I've actually found that this mode I'm suggesting is already supported in Quality Transfer with an EACH output:
Screenshot from 2026-06-30 22-52-53.png
Screenshot from 2026-06-30 22-52-53.png (311.03 KiB) Viewed 195 times
So thanks for implementing my feature request :)
aaron311
Inserter
Inserter
Posts: 47
Joined: Sun Mar 22, 2020 2:30 am
Contact:

Re: Selector Combinator: Quality Overwrite

Post by aaron311 »

Ahhh right! Because of the 'multiple signals on the same wire sum together behavior'. Got it!

Thanks for the explanation.

I didn't like 'quality transfer' for my use case because I would need 5 combinators to reassign all qualities down to normal. But maybe I was dumb and didn't try 'each' mode.
Post Reply

Return to “Ideas and Suggestions”