Friday Facts #384 - Combinators 2.0

Regular reports on Factorio development.
gGeorg
Filter Inserter
Filter Inserter
Posts: 436
Joined: Wed Jun 19, 2019 8:06 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by gGeorg »

IForgotMyName wrote:
Fri Nov 10, 2023 12:18 pm
Tooster wrote:
Fri Nov 10, 2023 12:13 pm
At least, the combinators of the XXI century :P

Is it possible to send output signal only to specified network color? I see we can compare or send input count value from selected inputs, but there seems to be no selection on which output to put a signal to. I am for example thinking about a case where I compare coal on green input but send output only to the red output. This seems like a missing puzzle when we can choose R or G input but can't change the R or G output.

Also maybe some UI changes could be done to color R and G?
Image

Take another look at the "Output" section, it looks like you can configure the color of signal output there
That is strange.
Accorging their statement : show disabled feature and link active buttons to them. There is just one wire on output, therfore selection R/G should not be here. Well, perhaps only auto-selected G checkbox visible, then R checkbox dissapered. It would make UI cleaner. On top Output wire should use same vertical positoning (like input does) of R/G not in_line. Also all input signals should be in one line, ot two lines. I hope it doesnt reserve each line for different product type. That is would be cluttered UI, so many lines so much scrolling .... .. I guess it is still under developing.
Last edited by gGeorg on Fri Nov 10, 2023 1:01 pm, edited 4 times in total.

bcwhite
Inserter
Inserter
Posts: 42
Joined: Thu Jan 31, 2019 10:37 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by bcwhite »

Hares wrote:
Fri Nov 10, 2023 12:15 pm
I have a question. Usually (pretty often) you need to *conditionally* output a constant value. I.e., if A<B then C=10. Could you change "1" output option of a decider comb to the "constant"?
Yes, yes, yes! So many times I've had to follow an output=1 with a multiplier just to get the const value I needed.

Please support arbitrary constant outputs.

badams
Burner Inserter
Burner Inserter
Posts: 10
Joined: Wed Feb 27, 2019 6:58 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by badams »

Wonderful! The selector and improved decider will eliminate a lot of my torturous (and largely un-fun) combinator sprawl! The bulk of what will be left will be arithmetic chains.

Hmm.

Any chance that arithmetic combinators could have a decider-type upgrade as well? To be able to handle multiple arithmetic steps at once, like ‘{steel} + ({iron}/5)’ ?

FuzzyOne
Inserter
Inserter
Posts: 21
Joined: Fri Aug 02, 2019 10:20 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by FuzzyOne »

The AND/OR of the combinator 2.0 is going to allow more involved decisions to propagate in 1 tick. Very nice! :D

glee8e
Inserter
Inserter
Posts: 31
Joined: Sat Dec 30, 2017 7:26 am
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by glee8e »

how about a roundrobin mode? while I don't really know how this can be useful, you certainly cannot miss round robin mode when you have a random mode

User avatar
DanGio
Filter Inserter
Filter Inserter
Posts: 398
Joined: Sat May 10, 2014 6:22 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by DanGio »

The new decider combinator GUI has so many challenges, props to you for delving into it. As stated by others, the R and G in plain white normal font could be made better. At least, R and G would be better. Maybe using the red and green wire icons ? Oh, I forgot... These items are getting removed from the game. So maybe new abstract "circuit network" concept icons are on the pipeline ?

I hope we will make a good new circuit network cookbook on the wiki with all the new stuff ! (because I'll definitely need it!! :D )

Master-Guy
Burner Inserter
Burner Inserter
Posts: 8
Joined: Sun May 27, 2018 8:10 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by Master-Guy »

There is just one feature I'm still missing for the Arithmetic combinator:
The Modulo operation
With the current operators it's just not possible to get the correct Modulo, as rounding causes it to behave weirdly.
My favorite usage would be to calculate the next square of an outward expanding grid, or to top off a certain inventory slot without overflowing it to another slot.

Operations like Floor and Ceil might be useful to instead of rounding, but I personally don't have a Use Case for them yet :P

Vronski
Manual Inserter
Manual Inserter
Posts: 1
Joined: Fri Nov 10, 2023 1:13 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by Vronski »

I will give you 8000 blue circuits if you make a tutorial series for the combinators for us noobs who have problems using them and would like to learn.

Fab2000
Manual Inserter
Manual Inserter
Posts: 1
Joined: Fri Nov 10, 2023 1:05 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by Fab2000 »

The "Index" function in the new combiner orders the signals according to their size (ascending or descending).

I would prefer to be able to determine the order by myself. That would make some of my more complex circuits so much easier.

gGeorg
Filter Inserter
Filter Inserter
Posts: 436
Joined: Wed Jun 19, 2019 8:06 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by gGeorg »

j_matya wrote:
Fri Nov 10, 2023 12:40 pm
Add the possibility to output any other constant other than "1" and "Input count". How many times I have wanted to output a number other than 1, and had to restort to many signal-transposing shenanigans, and this would still be required with this magic new combinator...
Image

update2: this picker could then also allow to transpose the value of a signal as another output signal (if you think about the value picker, you usually can pick either a virtual signal, or a static numeric value)
Lets assume number 1 also belong to "Custom value" group, (or perhaps rename it to "Constant value" would fit better). Actually number 1 should be the default of "Custom value". I also made R/G selectors in the same positions as input, then we get pretty neat UI :
Image
Last edited by gGeorg on Fri Nov 10, 2023 1:41 pm, edited 2 times in total.

Tooster
Long Handed Inserter
Long Handed Inserter
Posts: 80
Joined: Wed Mar 24, 2021 6:42 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by Tooster »

Justderpingalong wrote:
Fri Nov 10, 2023 12:26 pm
This is nice and all... but does this FINALLY give us a way to 'sanitize' our inputs? [...]
Yeah, I would really like see the "filter" functionality in the selector combinator. You would select a bunch of signals (like you do in the constant combinator) and you could turn it into a whitelist/blacklist mode that would allow/deny certain signals from passing through. I had many cases where something like that was needed and I used either filter combinators mod or have been using a lot of combinators for each item type and it was very cumbersome. A possibly nice addition could be adding support for thresholds for each item (like in logistic requests) to only filter/filter-out signals based on that.

As for the Green/Red selections, I was wondering — maybe it would be better if all combinators had only one input and one output, but we had some other, outside way of combining/splitting signals into different networks? Something like a diode where you have 2 inputs and 2 outputs, but you can bridge the wires there with copper, so that for example you redirect red input to green output, and red+green input to red output, effectively combining them. Then the whole R/G selection could be moved outside of combinators and they would be more intuitive - they would operate on input and output data only. Idk.
Something like that: Image
Last edited by Tooster on Fri Nov 10, 2023 1:35 pm, edited 2 times in total.
Look mom, I made a mod ^^ Barrel Stages

giustizieri25
Burner Inserter
Burner Inserter
Posts: 14
Joined: Fri Jun 24, 2016 10:53 am
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by giustizieri25 »

I'm salivating ....

User avatar
picklock
Fast Inserter
Fast Inserter
Posts: 208
Joined: Sat Nov 09, 2019 6:49 am
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by picklock »

Again another great FFF.

The new combinators open up many new possibilities and simplify the many previously complex setups. I will probably rebuild and simplify quite a few of my circuits. I can hardly wait to get started.

As others have already posted, I would like to be able to output any value other than 1 as a constant value.
My Mods: Picklocks Fusion Power | Picklocks Inserter | Picklocks Lithium Polymer Accumulator | Picklocks rocket silo stats | Picklocks Set Inventory Filters | Picklocks QuickBar Import/Export | Picklocks Nauvis Cliff-Explosives

Somtuk
Burner Inserter
Burner Inserter
Posts: 14
Joined: Tue Feb 26, 2019 11:25 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by Somtuk »

I'm having a real hard time finding the right words to explain myself on this one, so hopefully this'll all make sense...

I'd like to comment on this section (I added letter to the bullet point to make it easier to talk about):
It has some specific uses and modes (which is still subject to change):

a) Output the signal at the given index (sorted from biggest to smallest or vice versa).
b) Output the count of input signals.
c) Output a random signal from the inputs (with a custom update interval).
d) Output the stack size of the input item.
e) Output the rocket capacity of the input item (useful for Space Age logistics).
f) Transfer the quality of an input signal (more on that another day perhaps).
There seems to be 2 "modes" for the Selector...

Mode 1: Pull some value out of a list of multiple inputs (bullets a, b, and c)
Mode 2: Extract some pre-determined property of a single input (bullets d, e, and f)

The "Mode 1" operations make sense, and are quite generic. The input types don't matter.

The "Mode 2" operations seem ultra weird. Both the input and output are fixed. The Selector isn't "selecting" anything. It's simply a lookup operation. I know this seems petty, but it got me thinking more about this and looking at bullet e made it worse. The input MUST be a rocket, and the output MUST be the capacity.

The solution I came up with (which might be too complex/weird to implement in the UI) is why not combine bullets d, e, and f? That is to say, why can't the output be a list of properties that we choose to have the selector extract from the input? This would made Mode 2 much more generic. You could extract/select the capacity of containers, or even inserters. Not just rockets. With this in mind, that would merge bullets d, e, and f into 1 and become:
"Output the property value of the input item". Mode 2 becomes generic!

I've re-written this post a couple of times and I'm very unhappy with how I explain my point of view, but I really hope it's clear. The main point is, combinators should be agnostic of it's inputs (which bullet e isn't).

** EDIT **

I think I have a better (and short) explanation for the modes...

Mode 1: The selector picks 1 output from a list of MULTIPLE inputs
Mode 2: The selector picks 1 output from 1 input (the list is the properties of that 1 input)
Last edited by Somtuk on Fri Nov 10, 2023 1:43 pm, edited 1 time in total.

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

Re: Friday Facts #384 - Combinators 2.0

Post by Amarula »

gGeorg wrote:
Fri Nov 10, 2023 12:51 pm
Also all input signals should be in one line, ot two lines. I hope it doesnt reserve each line for different product type.
I believe the top input signal row is for red wire inputs, hence the (dark) red background for those items. The second row looks to be for green wire inputs, with a (bright) green background for those items.
My own personal Factorio super-power - running out of power.

DeadMG
Long Handed Inserter
Long Handed Inserter
Posts: 66
Joined: Thu Oct 22, 2020 7:56 am
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by DeadMG »

The thing I'd like most from the circuit network is not having to worry about UPS for constant uses. For example, using an arithmetic combinator to negate the contents of a constant combinator. This heavily disencentivises clean separation of circuit logic and nerfs blueprintability.

The second thing I'd like most is the ability to select certain properties from red or green only.. stuff like everything * everything would be a lot more useful if you could say "red everything * green everything".

layus
Burner Inserter
Burner Inserter
Posts: 14
Joined: Mon May 01, 2017 1:06 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by layus »

This is a really interesting change, like the 383 others ;)
I understand some aspects are still subject to improvements, but you got me inspired :o .

It seems to me that the color of the signal could also be represented in the button itself. It seems more a property of the item than the decider combinator.
So picking the red / green (or none) signal color could move to the item selection popup, and the decider would become less cluttered.
I even opened Gimp for that :-D.
Mockup of a slightly different decider combinator
Mockup of a slightly different decider combinator
fff-384-decider-combinator.png (157.87 KiB) Viewed 4163 times
The funny thing is that you can now have red everything and green everything for example.
More funny, when reading signals the signal color could be used for the output wire, so that you could read the "red yellow" signal from a train stop, and it would emit the yellow signal only on the red wire.

That solution does not apply to the decider combinator, because you need to be able tom emit the input count as an output, so you have to pick two colors potentially. Maybe the output line needs two buttons ?
Mockup of a slightly different decider combinator, v2
Mockup of a slightly different decider combinator, v2
fff-384-decider-combinator_2.png (159.38 KiB) Viewed 4108 times
Last edited by layus on Fri Nov 10, 2023 1:54 pm, edited 1 time in total.

dhdaan
Manual Inserter
Manual Inserter
Posts: 1
Joined: Fri Nov 10, 2023 1:07 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by dhdaan »

I'd like to see something like fCPU.
It's strange that there are automated trains and rockets, but one can't construct any FPGA =(
One has to work with a large pile of elementary “boxes”.

Biggest Zocker
Manual Inserter
Manual Inserter
Posts: 1
Joined: Fri Nov 10, 2023 1:46 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by Biggest Zocker »

Now that I have seen these QOL changes, I don't feel like I want to start a new run without them and will have to wait till next August

gGeorg
Filter Inserter
Filter Inserter
Posts: 436
Joined: Wed Jun 19, 2019 8:06 pm
Contact:

Re: Friday Facts #384 - Combinators 2.0

Post by gGeorg »

gGeorg wrote:
Fri Nov 10, 2023 1:18 pm
j_matya wrote:
Fri Nov 10, 2023 12:40 pm
Add the possibility to output any other constant other than "1" and "Input count". How many times I have wanted to output a number other than 1, and had to restort to many signal-transposing shenanigans, and this would still be required with this magic new combinator...
Image

update2: this picker could then also allow to transpose the value of a signal as another output signal (if you think about the value picker, you usually can pick either a virtual signal, or a static numeric value)
Lets assume number 1 also belong to "Custom value" group, (or perhaps rename it to "Constant value" would fit better). Actually number 1 should be the default of "Custom value". I also made output R/G selectors verticaly as input. Output R/G selector is placed at right most position emphasised it is the last operation we do on the signal processing.
Then we get pretty neat UI :
Image
Edit : Color coded R/G added as someone requested.
Last edited by gGeorg on Fri Nov 10, 2023 2:18 pm, edited 4 times in total.

Post Reply

Return to “News”