Change default settings of Arithmetic Combinator to be "times one"

Post your ideas and suggestions how to improve the game.

Moderator: ickputzdirwech

DemRat
Burner Inserter
Burner Inserter
Posts: 13
Joined: Tue Jan 06, 2015 2:41 pm
Contact:

Change default settings of Arithmetic Combinator to be "times one"

Post by DemRat »

TL;DR
Arithmetic Combinators should, when freshly placed, be configured to multiply by one to reduce the clicks necessary to make it work as a diode, as this is both a common usage and because the current default settings are never relevant.

What?
Currently, when placing a fresh Arithmetic Combinator, it is configured to multiply nothing by zero and output it on nothing.
A common usage of ACs is to act as a diode - pass through all signals and isolate the input and output circuit network.
To do this, both the input signal must be set, the constant value must be increased to one (which requires multiple clicks and use of the keyboard), and the output signal must be set.

It would make the process slightly less annoying if the constant value was set to one by default instead. Then, you'd just need to set the signal you want to pass through.

(If the input and output additionally were set to Each by default, a freshly placed AC would immediately act as a diode, which would be even nicer for this specific scenario - but I see how that would be a bit more opinionated than it probably should be.)

Why?
For people who interact a lot with the circuit system (which has been massively expanded with Space Age), you end up placing a lot of Arithmetic Combinators, especially for the purpose of acting as a diode. The default settings are currently never useful, and there are few reasons where you'd want to set the right hand side to zero, so few situations in which this causes additional clicks.
Last edited by DemRat on Tue Mar 04, 2025 3:06 pm, edited 1 time in total.
Tertius
Smart Inserter
Smart Inserter
Posts: 1217
Joined: Fri Mar 19, 2021 5:58 pm
Contact:

Re: Change default settings of Arithmetic Combinator to be "times one"

Post by Tertius »

DemRat wrote: Tue Mar 04, 2025 11:58 am For people who interact a lot with the circuit system (which has been massively expanded with Space Age), you end up placing a lot of Arithmetic Combinators, especially for the purpose of acting as a diode.
That's how you build your circuits. I don't want to belittle your commitment, but distributed in my base on Nauvis there are 212 decider combinators and 152 arithmetic combinators used for a large variety of complex and not so complex things, and not a single arithmetic combinator is working as diode. By choosing wire colors carefully and properly, it's almost always possible to get around explicitly isolating signals. My Gleba base, which is completely dependent on circuits, has only about 50+40, and also no diodes. Included are means to ensure freshness of items and counters to burn eggs before they hatch.

If there was one thing I use most with arithmetic combinators, then it's multiplying EACH by -1, but even this isn't the case any more with the 2.0 combinators. Instead I use EACH(green) - EACH(red) output EACH more often now.
With decider combinators, it's also most often EACH(green/red/green+red) OP EACH(reen/red/green+red) output EACH with OP as some comparison operator.

There's really no good default. It's ok you have to choose everything from scratch. I use copy+paste for single combinators to inherit settings for a new setup, but not often.

My approach for not needing diodes: (and I design explicitly to not need diodes)
- process multiple signals with EACH in single combinators
- output often used signals with wide use to green wire
- collect important signals into this green wire, but don't add values to existing signals, this will taint the original signals
- make sure no signal on this green wire is "tainted" by adding local intermediate signals that have use just for 1 or 2 combinators
- if it's necessary to check for some global signal and some locally generated signal by one combinator, provide this locally generated signal with red wire. This way it's naturally isolated from the green wire with the global signal, and both are available in the combinator
- red wires can be "tainted" by adding local intermediate signals
- combinators have 2 outputs: red and green. Use both. They're isolated, so you can taint one with additional signals and keep the other pure.
- inputs never taint signals on a wire, but outputs could do this, so take care what you output to which wire, and if it doesn't taint existing values.
DemRat
Burner Inserter
Burner Inserter
Posts: 13
Joined: Tue Jan 06, 2015 2:41 pm
Contact:

Re: Change default settings of Arithmetic Combinator to be "times one"

Post by DemRat »

Tertius wrote: Tue Mar 04, 2025 12:52 pm in my base on Nauvis
See, I am working on a distributed arbitrary request-supply system with dynamic train dispatch for Fulgora (abusing that rail signals can carry wires to connect together all islands), and it's really, really hard to keep the complex conditions separated while also maximizing speed and minimizing combinator count. Additionally, I need one-tick delays in some places, since keeping signals single-tick duration is very helpful for keeping the system fast and responsive, but sometimes a signal just needs to be carried over for a tick while other processing is happening - another place where multiplying by one would be a very nice default.

I use the isolation a lot to put multiple distinct info signals onto the same input wire, for example here in the memory cell used for distributing the jobs:
grafik.png
grafik.png (135.43 KiB) Viewed 301 times
The upper arithmetic insulates the backbone from the id signal, so that I can compare the job content request signal to the id while keeping the red wire free on the decider in the top right to emit the job contents.

So yeah, don't come at me with the "oh you're just doing it wrong", I believe I am competent enough at the game to know my needs.

Also, just as a separate point, they are also helpful for quick, temporary network switches (green to red wire or vice versa), or as placeholders for processing not yet build, both cases in which a different default helps slightly.
Nemoricus
Filter Inserter
Filter Inserter
Posts: 388
Joined: Mon Jan 19, 2015 7:48 am

Re: Change default settings of Arithmetic Combinator to be "times one"

Post by Nemoricus »

DemRat wrote: Tue Mar 04, 2025 11:58 amdefault settings are currently never useful, and there are few reasons where you'd want to set the right hand side to zero, so few situations in which this causes additional clicks.
“Do nothing” is a good default. It’s the safest option given how different each person’s use cases are going to be. It ensures that nothing will break until you get around to configuring it.

If a different default would be more useful to you, blueprinting a combinator with those settings could work.
DemRat
Burner Inserter
Burner Inserter
Posts: 13
Joined: Tue Jan 06, 2015 2:41 pm
Contact:

Re: Change default settings of Arithmetic Combinator to be "times one"

Post by DemRat »

Nemoricus wrote: Tue Mar 04, 2025 2:54 pm If a different default would be more useful to you, blueprinting a combinator with those settings could work.
Blueprinting it would take about as many extra clicks to use as setting it manually.
It would also still do nothing per default - the input and output signal would still be set to nothing (as I wrote, I think setting in and out as Each would be step to far), so until you configure it, it would still not pass any signals. It'd just save you like 3 clicks when using it as a diode.
mmmPI
Smart Inserter
Smart Inserter
Posts: 4297
Joined: Mon Jun 20, 2016 6:10 pm
Contact:

Re: Change default settings of Arithmetic Combinator to be "times one"

Post by mmmPI »

It is possible to have in the shortcut bar a blueprint of an arithmetic combinator configured to do each +0 => each ( so you don't have to increment with the keyboard the 2nd value) or each*1 => each or even a decider that does if "anything" => everything, to "fast" build it, it would just take a single click, or 2 if you don't use the shortcut and click on it first. I don't think it would take extra clicks compared to a non-blueprinted one with the current defaults.

I had not thought of this earlier, i tend to use dummy combinator to manage timings, delay things by 1 tick, not so much for isolation of signals. I don't always find solutions to avoid them. (and i'm going to narcissistically assume it's the same for a "majority of player" in that even if my logic was a little under average the time i spent on this game makes up for it, so i don't expect a "majority of players" to be able to achieve what is mentionned by Tertius).

I agree that 'do nothing' is a good default but also feel it is somewhat guaranteed by the fact that you won't have wire connected to the output right away.

I see nothing wrong in having the default setting configured to output on "red" instead of "nothing" for this reason, but i think maybe "red" and "green" would be better, since it would only take 1 click to remove one or the other, whereas it would take the cancelation of "red" and another click to make it "green" in the other case, and i can't think of a situation where a player wouldn't want at least 1 output active, which is the default.
Post Reply

Return to “Ideas and Suggestions”