Friday Facts #384 - Combinators 2.0

Regular reports on Factorio development.
Post Reply
JohnyDL
Filter Inserter
Filter Inserter
Posts: 534
Joined: Fri May 16, 2014 3:44 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by JohnyDL »

Freddy404 wrote: ↑
Sun Nov 12, 2023 2:16 pm
Something else I realized would be awesome to have in a single combinator: random numbers, possibly with a range.
(Ab)using the random signal selector combinator needs signal input (which limits the range/resolution to the total number of different signals), and possibly folding the different possible signals back into one (if that can't be implicitly handled by whatever circuit this flows to).
For example:
to generate a random 32 bit number on signal 'dot', we could have a pair of constant combinator and selector for each byte (assuming the total number of signal types eclipses 256). Then, a single arithmetic combinator each * 1 -> dot to fold the signals together.
Now a footprint of 14 Tiles is not excessive, but if we're simplifying/shrinking stuff down, this seems like a good candidate.
Not with a single combinator but with a few, you need a constant combinator to set some signals, and then a Selector to pick a random value and then an arithmetic combinator to sanitise them into the signal value you want...

Constant Combinator with 0-9 and A-F signals representing 0-15
for 32bit you'd need 8 Selectors each picking a random number
(You might need a special case for handling the negative)
Multiply each Hex digit by 16^n depending on where in the number it appears and output it as a single signal type to combine them

I kind of think this is intended behaviour, though I'm not sure I like adding randomness to circuit networks >_< I like my factories to be determinisitc

pleegwat
Filter Inserter
Filter Inserter
Posts: 277
Joined: Fri May 19, 2017 7:31 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by pleegwat »

JohnyDL wrote: ↑
Sun Nov 12, 2023 1:08 am
[*]Min/Max/Latch (of a particular signal over time) -> I think 2 combinators, if red >= green output red, if green > red output green, feed both back into either red or green (on both) and have the other side be data, and have a reset control signal too, I think you need 2 for min max cause you need to output either red or green wire not both, while set reset if A > X OR (Z=1 And A > Y) then Z = 1 (or A) turns on Z if A goes above X and turns off Z if A drops below Y in one combinator @thriem @Kyralessa @Philip017 @vark111 @melind @Roxor128
Isn't min/max(each red, each green) already possible? I'm thinking

Code: Select all

(red + green)/2 Β± abs(red - green)/2
Where the positive branch yields max and the negative one yields min.

Here abs() is the absolute value, which could be implemented using 2 deciders and an arithmetic combinator as below:

Code: Select all

(each < 0 ? each : 0) * -1 + (each > 0 ? each : 0)

Freddy404
Burner Inserter
Burner Inserter
Posts: 18
Joined: Fri Nov 10, 2023 3:54 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by Freddy404 »

JohnyDL wrote: ↑
Sun Nov 12, 2023 2:31 pm
Freddy404 wrote: ↑
Sun Nov 12, 2023 2:16 pm
Something else I realized would be awesome to have in a single combinator: random numbers, possibly with a range.
(Ab)using the random signal selector combinator needs signal input (which limits the range/resolution to the total number of different signals), and possibly folding the different possible signals back into one (if that can't be implicitly handled by whatever circuit this flows to).
For example:
to generate a random 32 bit number on signal 'dot', we could have a pair of constant combinator and selector for each byte (assuming the total number of signal types eclipses 256). Then, a single arithmetic combinator each * 1 -> dot to fold the signals together.
Now a footprint of 14 Tiles is not excessive, but if we're simplifying/shrinking stuff down, this seems like a good candidate.
Not with a single combinator but with a few, you need a constant combinator to set some signals, and then a Selector to pick a random value and then an arithmetic combinator to sanitise them into the signal value you want...

Constant Combinator with 0-9 and A-F signals representing 0-15
for 32bit you'd need 8 Selectors each picking a random number
(You might need a special case for handling the negative)
Multiply each Hex digit by 16^n depending on where in the number it appears and output it as a single signal type to combine them

I kind of think this is intended behaviour, though I'm not sure I like adding randomness to circuit networks >_< I like my factories to be determinisitc
As mentioned in my spoiler, you can do with 4 selector/constant pairs, if you have 256 signals available (I didn't count, but I'm kind of assuming we're getting there at least with 2.0/Space Age). Since signal values overflow as expected, we don't need special handling for negative results. That's the 14 tile footprint I mentioned: 4 * (selector + constant) + arithmetic = 4 * (2 + 1) + 2 = 14.

I agree it's not strictly necessary, but neither is signal count - that's already a single decider with each != 0 -> <type> = 1.

About randomness in a factory: a) we're doing that anyway with the random signal mode. b) it can be really helpful if one wants to avoid two circuits running in lockstep without explicit configuration.

Amarula
Filter Inserter
Filter Inserter
Posts: 538
Joined: Fri Apr 27, 2018 1:29 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by Amarula »

If I hover over a requester (or buffer) chest, I can see what it contains, and what it is requesting.
If I actually click on the chest to open it, I can see marked in dark red those requested items that are not available in the network.
Being able to see those unavailable items as network information, readable from a roboport or a combinator, would be very helpful. Being able to see it in the tooltip would be awesome!
My own personal Factorio super-power - running out of power.

JohnyDL
Filter Inserter
Filter Inserter
Posts: 534
Joined: Fri May 16, 2014 3:44 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by JohnyDL »

pleegwat wrote: ↑
Sun Nov 12, 2023 2:56 pm
JohnyDL wrote: ↑
Sun Nov 12, 2023 1:08 am
[*]Min/Max/Latch (of a particular signal over time) -> I think 2 combinators, if red >= green output red, if green > red output green, feed both back into either red or green (on both) and have the other side be data, and have a reset control signal too, I think you need 2 for min max cause you need to output either red or green wire not both, while set reset if A > X OR (Z=1 And A > Y) then Z = 1 (or A) turns on Z if A goes above X and turns off Z if A drops below Y in one combinator @thriem @Kyralessa @Philip017 @vark111 @melind @Roxor128
Isn't min/max(each red, each green) already possible? I'm thinking

Code: Select all

(red + green)/2 Β± abs(red - green)/2
Where the positive branch yields max and the negative one yields min.

Here abs() is the absolute value, which could be implemented using 2 deciders and an arithmetic combinator as below:

Code: Select all

(each < 0 ? each : 0) * -1 + (each > 0 ? each : 0)
What I meant by Min and Max is the Minimum and Maximum value that a given signal has ever reached.... so if you want to know how many excess barrels you have you can count how many are in storage and find out that you have several more chests of empty barrels than your factory ever needs... because it never drops to zero.... yes it can be done right now the way you suggest (I found a different way, and yours does a /2 which will floor an odd number), but it's finicky, if the signal was only at the peak value for a single tick it might store several "peak values" within the loop because it takes many combinators and many ticks to get the max value and feed it back into the start... you can then 'fix' this by comparing each with itself on a 1 tick delay but you make the logic bigger to solve the bug, it will eventually cycle that max value to all the other ticks but it still has oscillations.... what I suggested is a 1-tick 2-combinator way of keeping track of the peak or low of a signal without any opportunity for error or oscillation.

The Latch too is possible right now, but again it can take multiple combinators and this is a 1-tick 1-combinator solution.

Sorry for the confusion
Freddy404 wrote: ↑
Sun Nov 12, 2023 3:10 pm
As mentioned in my spoiler, you can do with 4 selector/constant pairs, if you have 256 signals available (I didn't count, but I'm kind of assuming we're getting there at least with 2.0/Space Age). Since signal values overflow as expected, we don't need special handling for negative results. That's the 14 tile footprint I mentioned: 4 * (selector + constant) + arithmetic = 4 * (2 + 1) + 2 = 14.

I agree it's not strictly necessary, but neither is signal count - that's already a single decider with each != 0 -> <type> = 1.

About randomness in a factory: a) we're doing that anyway with the random signal mode. b) it can be really helpful if one wants to avoid two circuits running in lockstep without explicit configuration.
In both solutions you take N Signals, Wire them all together and feed them to the select combinators, select a random value from those signals, then multiply the number into the right range (I guess you could bit shift too) and convert into your output signal and just wire the outputs of the arithmetic together to have them sum. But you haven't calculated the space correctly or accounted for the time to make your system correctly

256 signals is 13 constant combinators (vanilla has max of 20 signals in each and this is lots of manual setting values) + 4 Selectors + 4 Arithmetic combinators (to multiply the rand 256 into the right range and convert the signal) + negative logic => Space needed 29 tiles Time needed setting 260 Number Values 0-255 and 1, 256, 65536, 16777216
16 signals is 1 Constant Combinator (16/20 slots filled, less manual setting) + 8 Selectors + 8 Arithmetic Combinators (to multiply the rand 16 into the right range and convert the signal) + negative logic -> Space needed 33 tiles Time needed Setting 24 Number Values 0-15 + 1, 16, 256, 4096, 65536, 1048576, 16777216, 268435456

I wasn't saying you couldn't do it your way but using Hex is pretty close to optimal. Optimal is probably something base 20N but it doesn't fit neatly into 32bit limit of factorio.... and if you don't need a full 32 bit random number like your example of avoiding collision an 8-bit (5 tile) hex version would be great and I think it balances out setup time with complexity

And while I like Determinism in my factories (and would happily use pseudo-random number generators for the problem you suggested with manually inputted seeds based on location) I'm not going as far as saying that "other people shouldn't have access to true randomness if they want it". I will only very rarely suggest that a feature should be removed and it's never just because "I won't use it" or "I don't like it for my play style"... Games especially things like Factorio and Minecraft are Toys, in single player play however you like, mods, cheats whatever, if it makes you happy go ham, and for servers/competitions/etc so long as everyone agrees on the rules again do whatever within those rules. So just because I won't use a feature doesn't mean I should take something away other people find fun or useful. ;)
Last edited by JohnyDL on Sun Nov 12, 2023 4:35 pm, edited 1 time in total.

adysnook
Manual Inserter
Manual Inserter
Posts: 4
Joined: Fri Mar 17, 2023 8:06 am
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by adysnook »

DELETE COMBINATORS
just create some other way to do the things DIRECTLY where is needed
NO RED/GREEN WIRES

for example: open inserter, open some GUI, configure the condition there
for each condition, select the NETWORK first, then select the SIGNAL from that network
make each condition multi-level and add arithmetic operations
add "Properties Of" some entity like stack size, quality, consumption, capacity, type, hp, damage etc.

also, no need for speaker as dedicated entity, even though it looks nice as a decoration

maybe integration with chatgpt ? :D

Freddy404
Burner Inserter
Burner Inserter
Posts: 18
Joined: Fri Nov 10, 2023 3:54 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by Freddy404 »

JohnyDL wrote: ↑
Sun Nov 12, 2023 4:29 pm
In both solutions you take N Signals, Wire them all together and feed them to the select combinators, select a random value from those signals, then multiply the number into the right range (I guess you could bit shift too) and convert into your output signal and just wire the outputs of the arithmetic together to have them sum. But you haven't calculated the space correctly or accounted for the time to make your system correctly

256 signals is 13 constant combinators (vanilla has max of 20 signals in each and this is lots of manual setting values) + 4 Selectors + 4 Arithmetic combinators (to multiply the rand 256 into the right range and convert the signal) + negative logic => Space needed 29 tiles Time needed setting 260 Number Values 0-255 and 1, 256, 65536, 16777216
16 signals is 1 Constant Combinator (16/20 slots filled, less manual setting) + 8 Selectors + 8 Arithmetic Combinators (to multiply the rand 16 into the right range and convert the signal) + negative logic -> Space needed 33 tiles Time needed Setting 24 Number Values 0-15 + 1, 16, 256, 4096, 65536, 1048576, 16777216, 268435456

I wasn't saying you couldn't do it your way but using Hex is pretty close to optimal. Optimal is probably something base 20N but it doesn't fit neatly into 32bit limit of factorio.... and if you don't need a full 32 bit random number like your example of avoiding collision an 8-bit (5 tile) hex version would be great and I think it balances out setup time with complexity
I see where you're going with that.
I'm assuming based on the logistic groups announcement that constant combinators will no longer be restricted to 20 signals, but I might be wrong, and then you'd be completely right ;)

Also, while setup time can be an important consideration, its less of a trade off for reusable components because of blueprints. And for stuff like 4 constant combinators with 256 constants each (avoiding the need to bit-shift), I'd just generate them with factorio-draftsman. I might just write a script to generate a RNG of a configurable range and step :D
JohnyDL wrote: ↑
Sun Nov 12, 2023 4:29 pm
And while I like Determinism in my factories (and would happily use pseudo-random number generators for the problem you suggested with manually inputted seeds based on location) I'm not going as far as saying that "other people shouldn't have access to true randomness if they want it". I will only very rarely suggest that a feature should be removed and it's never just because "I won't use it" or "I don't like it for my play style"... Games especially things like Factorio and Minecraft are Toys, in single player play however you like, mods, cheats whatever, if it makes you happy go ham, and for servers/competitions/etc so long as everyone agrees on the rules again do whatever within those rules. So just because I won't use a feature doesn't mean I should take something away other people find fun or useful. ;)
Very much agreed :)

Koub
Global Moderator
Global Moderator
Posts: 7652
Joined: Fri May 30, 2014 8:54 am
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by Koub »

IcedLance wrote: ↑
Sun Nov 12, 2023 1:01 pm
Is there a chance that some of these recently teased QoL changes will make it into the base game before the expansion release?
Highly unlikely.
Koub - Please consider English is not my native language.

alarig
Burner Inserter
Burner Inserter
Posts: 11
Joined: Tue Jun 09, 2020 7:12 am
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by alarig »

bugboy2222 wrote: ↑
Fri Nov 10, 2023 8:53 pm
It's probably been said already but the biggest thing for me with circuit networks is not being able to see the contents of a very large network. If you have too many signals, mousing over a power pole or something similar will display some of the network, but the rest of it will continue off screen. Ideally clicking the power pole would bring up a gui where you could scroll through the contents of necessary, perhaps something along side the power screen? Like another tab or something?
I agree, it would be a big plus. I also have this kind of problem with locomotives for example, where the end of the informational GUI on the right side if off-screen.

Saphira123456
Fast Inserter
Fast Inserter
Posts: 139
Joined: Wed Jul 28, 2021 7:12 am
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by Saphira123456 »

I will personally never use the circuits as I have found them too complicated to use in-game and the tutorials on them, both in-game and outside it, have all been insufficient. Like one other person, this has led to me building multiple, small, simple, scaleable outpost-style bases for mining and drilling, and connecting them to my larger central hub with trains.

If the circuit network is one-hundred-percent necessary to complete the game in 2.0, then congratulations Wube, you just lost a customer. I will continue to use 1.1.

I wish there was a "circuit network simplified" mod that made the circuit network as simple to use as the train GUI with excruciatingly-simple logic gates - AND, OR, XOR, etcetera. Then I would actually use the network. I'm sure a lot of people will agree.
I am dragonkin and proud of it. If you don't like furries or dragons, tough.

Blocking me will only prove me right.

I love trains, I love aircraft, I love space, I love Factorio.

XANi
Burner Inserter
Burner Inserter
Posts: 10
Joined: Tue Jun 11, 2019 4:44 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by XANi »

blazespinnaker wrote: ↑
Sun Nov 12, 2023 9:00 am
should have been a code combinator. just cut to the chase
I'd love that. With say 68000-esque assembly and just running X instructions of code per tick of the game.

JohnyDL
Filter Inserter
Filter Inserter
Posts: 534
Joined: Fri May 16, 2014 3:44 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by JohnyDL »

Saphira123456 wrote: ↑
Sun Nov 12, 2023 7:55 pm
I will personally never use the circuits as I have found them too complicated to use in-game and the tutorials on them, both in-game and outside it, have all been insufficient. Like one other person, this has led to me building multiple, small, simple, scaleable outpost-style bases for mining and drilling, and connecting them to my larger central hub with trains.

If the circuit network is one-hundred-percent necessary to complete the game in 2.0, then congratulations Wube, you just lost a customer. I will continue to use 1.1.

I wish there was a "circuit network simplified" mod that made the circuit network as simple to use as the train GUI with excruciatingly-simple logic gates - AND, OR, XOR, etcetera. Then I would actually use the network. I'm sure a lot of people will agree.
Honestly, that mod you want is what this FFF is about.

There's some more complicated stuff but it's largely about making Decider Combinators a lot more simple to follow and work like the train network. You get all the ways of comparing numbers =, !=, >, <, >=, and <= plus you can do AND and OR logic within one combinator, it shows you all the actual values you're trying to compare, it lights up green if a condition is met and you build all the other logic you want for a lot of decisions into a single unit.

And while I do enjoy circuits I can acknowledge that circuits currently/legacy are unintuitive and needlessly complex for many things, the Devs said there were conditions it was almost simpler and faster to use the train network to control, and so they made Decider Combinators more intuitive and easier to follow. They might LOOK more complicated but for anyone familiar with setting up train logistic conditions it should be a much easier learning curve.

I understand you don't like them and you won't use them as they exist right now you're welcome to play any way you want and I can think of several ways it might be possible to do the space platform side of 2.0 without circuits at all, especially if you can do the math ahead of time and deal with a little inefficiency, if you know it takes exactly list of resources to make 1000 science in space, you build the rockets to send those resources all at the same time and wait to do it again until you have the exact resources for another 1000 science or screw it send up full rockets and dump stuff you don't need overboard. I don't think there'll be a single aspect of the game that you must use to complete the game that isn't a keystone action, there are only a handful of recipes that require any buildings and you have to put science in a lab to do research and make power with a steam boiler but for everything else you could theoretically hand mine and hand craft your way into science. You can do factorio with some rediculous challenges and there are a few youtubers that're dedicated to exactly that.

I'll make you a deal though, since I plan to buy the game either way, if I cannot beat the entire game and get 100% of the new achievements (probably with different runs) without using a circuit wire or combinator somewhere in that time then I'll let you know so you can save your money :) if you're honestly going to have a bad time buying the game for that reason I think the devs wouldn't mind losing a single sale.... I wonder if the mods would add no circuits as an achievement just for you though ;)

Sad_Brother
Fast Inserter
Fast Inserter
Posts: 209
Joined: Mon Jan 08, 2018 4:54 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by Sad_Brother »

Freddy404 wrote: ↑
Sun Nov 12, 2023 10:23 am
Sad_Brother wrote: ↑
Sun Nov 12, 2023 9:32 am
gGeorg wrote: ↑
Sat Nov 11, 2023 7:25 pm
On top, you probably didnt think about new players. The new menu looks intimidating right at begining. When new player connect first wire and see massive menu with all the buttons, natural reaction is - run away.

Would you cosider combinatioin of old (minimalistic on start) method AND the new linked_method ?
Start with old small mennu, when one option is checked, then apropriate section popups next to it.
I think it is possible to split Combinators to 1.0 and 2.0 Technology.

First Tech open ability to use Combinators almost as now. With slight changes only.
Tech Combinators 2.0 change Combinator's GUI to new version. Settings converted automatically. So new players would see how it looks in new interface.

Best wishes!
In my opinion, that depends on what the goal is with regards to new players. I see how the new UI can feel more overwhelming than the old. However, I think its better at making actual circuit designs less overwhelming. A player that runs away at the new UI probably wasn't going to get very far with the old UI anyway. So I would also advise against a two step process - just keep the new UI, it should make it far easier to get into complex circuits. It seems an okay tradeoff to make very simple circuits have a slightly heavier UI.
Like, with the current announced state, as soon as you want to check multiple conditions before emitting something, the circuit gets simpler in 2.0. And something similar might happen for arithmetic combinators, i.e. calculations, as well.
New UI would be easier for me, you, many others. But some others would try to copy settings from inet pictures.
Another case would be players with knowledge of old UI, but having trouble with moving to new UI. They could set up on old UI then open new tech.

I do not insist. Just think.

P.S.
Nightmare Sky wrote: ↑
Sun Nov 12, 2023 12:13 pm
I suggest adding delay combinators. The entire stream of signals that will come to the entrance to this combinator will come out of there only, for example, after 5 ticks.
This problem can be solved by 5 repeaters. But...
If some Graph Combinator would be added to show Graph of Signals like Graphs of Power or Production, then it would be the best place to store Signal values for some time. It could give output Oldest/Max/Min/Medium/Sum values of Signals.
I would use such Combinator for Min and Max value of Signal per day.

Best wishes!

dstroth
Manual Inserter
Manual Inserter
Posts: 4
Joined: Sat Oct 21, 2023 5:33 am
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by dstroth »

The new decider 2.0 is fantastic - being able to independently process red and green inputs is going to simplify a lot of things! I too would like to see this functionality added to the arithmetic combinator, as doing things like "each_red / each_green" is extremely difficult with the current arithmetic combinator.

For the Select Input mode, it would be useful to have a 3rd option that only "sorts" by the the signal's internal ID sort order (ignoring its current value). That way, you could reliably index into a set of signals even if their values are actively changing, which would allow for stable iteration.

Going further on the Select Input mode: I'd love to see an additional mode that outputs the complete sorted list, where each signal's value is set to its position in the sorted list. For example, say you have these inputs:
  • A = 9
  • B = 2
  • C = 88
  • D = 17
  • E = 17
And you run them into the selector combinator in this proposed "sorted index" mode.. you'd get something like this out:
  • A = 2
  • B = 1
  • C = 5
  • D = 3
  • E = 4
This would let you quickly partition an entire set of signals based on their sort order.

Here's a slightly contrived example: Say you're loading a building supply train that has 4 cargo wagons and you want to ensure that the wagons are evenly filled (by stack counts, not item counts).. You could setup a circuit that does this:
  1. start with requested item counts (e.g. from a constant combinator)
  2. convert item counts into stack counts, rounded up: "(each + stack_size - 1) / stack_size" (using a stack size selector combinator, and 2 arithmetic combinators)
  3. sort by stack counts, yielding a list of sorted indices (using the proposed "sorted index" mode)
  4. evenly split these sorted indices into 4 groups by doing "each % 4"
  5. use 4 decider combinators to convert those 4 groups back into their original item counts: "if each_red == N, yield each_green", where: red is the group indices from step #4, green is the original item counts from #1, and N is 0, 1, 2, or 3
The final output of #5 is your original request split evenly (by stacks) into 4 groups, which can then be hooked directly to 4 requester chests.

I can imagine there would be many other practical uses for a "sorted index" mode, but this was the most concrete one that immediately came to my mind.

I've attached a visual mock-up of this:
sort_index_example2.jpg
sort_index_example2.jpg (479.72 KiB) Viewed 2696 times
(EDIT: fixed output request order in example image - evaluating hypothetical circuits by hand is hard!)

JohnyDL
Filter Inserter
Filter Inserter
Posts: 534
Joined: Fri May 16, 2014 3:44 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by JohnyDL »

dstroth wrote: ↑
Sun Nov 12, 2023 9:19 pm
I've attached a visual mock-up of this:
sort_index_example2.jpg

(EDIT: fixed output request order in example image - evaluating hypothetical circuits by hand is hard!)
This might be doable with something comparable to each/every as the index.... though I can see a way of doing it manually without a dedicated function I think it fits in quite nicely to have it be it's own function though I'm not sure it fits with the selector.... however if they consider the idea of splitting the Selector into a Sorter and a LookUp, it'd definitely fit in with the sorting functions

User avatar
Nightmare Sky
Burner Inserter
Burner Inserter
Posts: 6
Joined: Sun Nov 12, 2023 12:00 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by Nightmare Sky »

I suggest making a combinator where you can multiply (and/or divide) two signals of the same type.

For example, multiplication:
RED - {A = 2, B = 3, C = 4}, GREEN - {B = 5, C = 6, D = 7} => OUTPUT - {A = 0 (2 * 0), B = 15 (3 * 5), C = 24 (4 * 6), D = 0 (0 * 7)}

For example, division:
RED - {A = 32, B = 16, C = 12}, GREEN - {B = 4, C = 2, D = 1} => OUTPUT - {A = 0 (32 / 0), B = 4 (16 / 4), C = 6 (12 / 2), D = 0 (0 / 1)}

TheRaph
Fast Inserter
Fast Inserter
Posts: 232
Joined: Sun Sep 24, 2017 6:31 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by TheRaph »

Two more suggestion

1


I would like to have an option not only to select different outputs but also choose the channel (red or green) to output to.

So that it is looking on the right side as on the left side.
Left: One row for inputs from green, one row for inputs from red.
Right: One row for outputs to green, one row for outputs to red.

To select channel just add another pair of checkboxes right behind the existing ones (for multiply by input R/G).

2

Instead of outputting "1" I would like to have an option to send any number.
So for example: "If green circuit is > 100k then output 26 on "A" (on red chan)."
Currently I've some circuits to safe energy. So a part of factory is only turned one, if enough resources are available and the output is not filled up.
So some circuitry on input sets "A" to 1 if resources are at hand and some output circuitry sets "A" to 1 if there is place in chests.
The electric switch connects if "A" is 2.
Next to it there is a decider which checks an accumulator. If there is not enough energy in battery (and therefore also not in network) it also switch of that part.
To override "A" it needs to add 3 or subtract 2 but i can only output 1. So I need an additional needless arithmetic to make the output of decider a -2.

User avatar
brunzenstein
Smart Inserter
Smart Inserter
Posts: 1075
Joined: Tue Mar 01, 2016 2:27 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by brunzenstein »

Will the next version of Factorio be a free update?
If not - how much?
And when will be the release about ?

Tertius
Filter Inserter
Filter Inserter
Posts: 869
Joined: Fri Mar 19, 2021 5:58 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by Tertius »

Saphira123456 wrote: ↑
Sun Nov 12, 2023 7:55 pm
If the circuit network is one-hundred-percent necessary to complete the game in 2.0, then congratulations Wube, you just lost a customer.
Please calm down. Absolutely nobody said circuits are a requirement for playing the 1.1 or 2.0 version of the game. You're not alone with the disliking of the circuit network. It's not getting into everyone, and Wube knows this, so the game is and will be designed accordingly and it will work without using it. It helps managing and automating gameplay, but I'm sure it will not become a requirement. This FFF tells about enhancing the circuit network, not about telling it will become obligatory to use.

However, you're a bit biased against how the player base sees the circuit network. You feel it's adding nothing to the game and nobody needs it, but if you compare the number of posts in this fff's thread with the other fff threads, you will find the interest of the players into the circuit network is similar to every other game feature presented so far. So please let people enjoy the circuit network, if they show interest in it. Just like me letting people enjoy and exclusively play deathworld scenarios, while I for myself just disable enemies at map generation. Everybody likes different aspects of the game, and that's perfectly valid.

User avatar
Nightmare Sky
Burner Inserter
Burner Inserter
Posts: 6
Joined: Sun Nov 12, 2023 12:00 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by Nightmare Sky »

Nightmare Sky wrote: ↑
Sun Nov 12, 2023 12:13 pm
I suggest adding delay combinators. The entire stream of signals that will come to the entrance to this combinator will come out of there only, for example, after 5 (or any other custom value) ticks.
Such a combinator can be used not only as a delay, but also as a timer. Although it is better to add a separate combinator setting for the timer - temporarily save only the first incoming signal for a specified period of time. Such a combinator as a temporary memory cell can be used.

Post Reply

Return to β€œNews”