Page 1 of 1

Improving the Decider Each Signal UX

Posted: Fri Nov 29, 2024 6:14 pm
by nullvoid
TLDR
The Each virtual signal is confusing. I think it can be made clearer by making it primarily a configuration option, and reusing the new BP Parameter Icons.
Why?
As seen in reports such as viewtopic.php?f=23&t=119967&p=633679, Each has some confusing edge cases.

It even confuses itself, with no need for Any/Everything to get involved. See the below with what appear to be logically identical conditions, but they aren't due to the R/G selector.
Screenshot 2024-11-06 194405.png
Screenshot 2024-11-06 194405.png (50.38 KiB) Viewed 318 times
Screenshot 2024-11-06 194446.png
Screenshot 2024-11-06 194446.png (62.51 KiB) Viewed 318 times
Proposal
This can be broken down into two parts.

(1) Each changes the behavior of the Decider Combinator so much that it should be moved to a configuration option.

(2) The Each Virtual Signal should be replaced with a blueprint parameter signal. By reusing the UI language introduced by parametrized blueprints, it indicates that the signal is being replaced during operation.

In the Mockup below, you can see that it is possible to control both which Network's Signals will be considered for iteration, and which Network's value will be used for each condition and output. This is an improvement over the above examples where otherwise irrelevant conditions are added to expand the list of iterated signals.
parameter mockup 2.png
parameter mockup 2.png (100.02 KiB) Viewed 318 times
P.S. This Mockup is intended for visualization only. I have done my best with the logic, but it was built in GIMP from several different screenshots, so there may be mistakes.
What about Arithmetic Combinators?
While this change should probably also be made there for consistency, it is admittedly much less important/interesting as the behavior of Each is far simpler to understand. The ability to separate iteration signals from read signals would likely open up some new options though.
Future Additions
While I don't intend it, the existence of a Parameter #0 suggests the existence of Parameters #1, #2 , etc. Perhaps access to the iteration count (i.e. "for i, sig in signals ..."), or the signal ID could be added. Neither of these are serious suggestions at this time.

Re: Improving the Decider Each Signal UX

Posted: Fri Nov 29, 2024 11:27 pm
by AileTheAlien
The parameter icon to me implies that the combinator is substituting a single value and no other values. It'd just be better to rename 'each' to 'for each' like in the linked bug report.