[boskid][2.0.28] Same decider condition's status changing based on insertion order

This subforum contains all the issues which we already resolved.
arl85
Fast Inserter
Fast Inserter
Posts: 182
Joined: Tue Jun 10, 2014 7:08 am
Contact:

[boskid][2.0.28] Same decider condition's status changing based on insertion order

Post by arl85 »

Hi,
reading wiki seems that any condition involving EACH will never output 1 for a signal which has a zero value, even if the condition is one that would be passed for a zero value.

For example:

Code: Select all

     + EACH >0
OR   |
     + EVERYTHING = 0
     
Output: DOT signal

no input -> no output
immagine.png
immagine.png (78.75 KiB) Viewed 428 times
That's ok, but... if I first insert the EVERYTHING = 0 condition, that condition remains ON.

please note the insert verb: if I simply move the EVERYTHING condition on top, that condition remains OFF, but if I remove the EACH one, EVERYTHING one turns on and remains on even if no output is returned when the EACH condition is added.
immagine.png
immagine.png (79.34 KiB) Viewed 427 times
I'll try to better explain with a video.

robot256
Smart Inserter
Smart Inserter
Posts: 1177
Joined: Sun Mar 17, 2019 1:52 am
Contact:

Re: [2.0.28] Same decider condition's status changing based on insertion order

Post by robot256 »

I can't reproduce this on Vanilla 2.0.28. "Everything=0" evaluates true, but as soon as I click the "add condition" button, the output signal disappears, even before selecting the "Each" signal. In your video, the output signal remains in the GUI even though there is a condition entry with an unconfigured signal selection. Can you post a save with the combinator in that state?

Also, is the game paused or in editor mode while you are doing this?
Muche
Smart Inserter
Smart Inserter
Posts: 1006
Joined: Fri Jun 02, 2017 6:20 pm
Contact:

Re: [2.0.28] Same decider condition's status changing based on insertion order

Post by Muche »

It's not about an output signal. It's about the visual green status of Everything=0 sub-condition.

If Each is added first, the moment it's added, the combinator is intenally switched to vector mode and subsequently added Everything=0 takes that into account and evaluates to false (due to no signals - no evaluation).

If it's added first, it evaluates to true (as everything=0). When Each is added, the combinator is switched to vector mode, but Everything=0 subcondition is not reevaluated, so it stays green, seemingly keeping thinking it's still in normal scalar mode.

This looks to be only visual inconsistency, after saving & loading the visuals of subcondition in both cases is consistently false.
It also seems to happen only when setting up the combinator, after copy+paste/blueprinting it's built correct.
User avatar
boskid
Factorio Staff
Factorio Staff
Posts: 3894
Joined: Thu Dec 14, 2017 6:56 pm
Contact:

Re: [2.0.28] Same decider condition's status changing based on insertion order

Post by boskid »

Thanks for the report. It looks like this will be fixed in 2.0.42 as part of 120624. I see exactly how it failed: when decider was evaluating conditions while in "each" mode, i placed an early exit when there were no signals on the input side and this caused conditions to not be evaluated and one of the side effects of evaluating those conditions was checking if conditions were fulfilled for the gui purposes. "Everything" condition when added as second simply never had its condition evaluated to have gui follow up the changes while when it was added first, it was evaluated and when each signal was later added, this evaluation now stopped updating.
Post Reply

Return to “Resolved Problems and Bugs”