Page 1 of 1

Combinator Improvements (and general circuits too) (With photos!)

Posted: Sat Mar 08, 2025 5:40 pm
by Epb7304
TL;DR
Decider combinators should have an 'else' output, and the ordering of AND and OR should be changed
Arithmetic combinators should be able to more calculations at once
All entities should be able to choose whether they read (or emit) on the red or green wire channel

"Graphic Design is my passion"
Please forgive the crudely edited examples

What?
Decider combinators should have an option to output a separate set of outputs if the condition is not met

Current Menu
Current Decider Combinator
Current Decider Combinator
03-08-2025, 12-21-44.png (55.38 KiB) Viewed 403 times
Proposed Menu
Better Decider Combinator (else).png
Better Decider Combinator (else).png (44.92 KiB) Viewed 403 times

Arithmetic combinators should use the formula system that is present in parameterized blueprints

Current Menu
Current Arithmetic
Current Arithmetic
03-08-2025, 12-23-57.png (45.06 KiB) Viewed 403 times
Proposed Menu
Better Arithmatic Combinator.png
Better Arithmatic Combinator.png (38.06 KiB) Viewed 403 times
In order to use incoming signals you add to the formula the same way you add rich text to any other text box, I'm not sure what is the best way to specify what wire you want it to consider, but I think either prefixing or appending 'r' for red 'g' for green or neither for both would work quite well.


Decider combinators, as well as train conditions should be adapted so that the AND and OR conditions can be moved


Current Menu
Current AND and OR
Current AND and OR
03-08-2025, 12-24-57.png (33.77 KiB) Viewed 403 times
Proposed Menu
Better Conditions (decider, train) (and or).png
Better Conditions (decider, train) (and or).png (27.28 KiB) Viewed 403 times

Finally all entities should be updated to allow them to specify which wire type they will be dealing with

Current Menu (Assembler as an example)
current assembler circuit menu
current assembler circuit menu
03-08-2025, 12-28-49.png (25.42 KiB) Viewed 403 times
Proposed Menu (Assembler as an example)
Assembler Circuit Connection.png
Assembler Circuit Connection.png (28.23 KiB) Viewed 403 times
Why?
These changes would massively improve the circuit network and only use features that already exist, it would allow for much higher complexity and ease of use, that way, me and many others don't need to do this to switch AND and OR around
AND and OR current example
AND and OR current example
03-08-2025, 12-32-08.png (51.54 KiB) Viewed 403 times
The changes to the decider combinator will bring it more in line with how an IF ELSE statement works.

The changes to the arithmetic combinator will make it as powerful as the current decider combinator, because right now its suffering. I can make a decider combinator that multiplies certain signals by different numbers depending on signal type by abusing the unlimited amount of outputs, but this shouldn't be necessary

Finally the changes to all other entities, making their circuit connections color dependent will allow for much higher complexity, since we can set assembler recipes and read their contents at the same time, or read requester chests and set the request at the same time, or read landing pad contents and set requests at the same time. I could go on.

Re: Combinator Improvements (and general circuits too) (With photos!)

Posted: Sat Mar 08, 2025 7:48 pm
by Muche
As per Ideas & Suggestions guidelines, one topic per thread is recommended.

You might want to move your "Decider combinator else output" section to Add 2 outputs to Decider Combinator;
"Entities choosing reading/emitting wire" section to Please, PLEASE make circuit connection behavior configurable per wire; and
"Arithmetic combinators formula" section to Arithmetic combinator 2.0.

Leaving only "More flexible AND/OR ordering in conditions" for this thread.

Current conditions follow DNF, which does not require explicit brackets/parentheses.
Allowing more general form would require brackets as well.
Your example of "A and (B or C) or (D and E)" is ambiguous, it could mean either "(A and (B or C)) or (D and E)" or "A and ((B or C) or (D and E))".

Yes, having to transform the desired conditions into DNF, such as "(A and B) or (A and C) or (A and D) or (A and E) or (F and G)", instead of simpler "(A and (B or C or D or E)) or (F and G)" is tedious.
It seems to me the issue here is GUI.

Code: Select all

      / A
 and /|
     ||/B
  or |\|
     | |C
  or | |
     | |D
  or | |
     | \E
or   |
     | /F
 and \ |
       \G
Instead of a simple button that toggles between AND/OR, it would have to have two extra buttons for increasing/decreasing the indentation of the whole subexpression.
I have no idea how user-friendly that is for a regular-user, not a power-user.