Page 1 of 1

[Klonan] [2.0.32] Train interrupt wildcard conditions evaluated incorrectly

Posted: Fri Jan 31, 2025 12:08 am
by Milichip
Hello!

Please refer to the image/video for context.
When using the wildcard signal in a train interrupt against another signal's value, the game behaves incorrectly.

For example, while the train stop is being supplied "Iron 100" and "A 100", the interrupt "Wildcard(signal) == A" will not trigger. This is also true for "Wildcard(signal) <= A", and yet "Wildcard(signal) >= A" does trigger the interrupt, as well as "Wildcard(signal) != A" also does.
Of course Iron 100 == A 100 should trigger because it's true, but it doesn't. Same for <=, all the while != shouldn't trigger. Didn't test the others.

Testing against constants, however, works perfectly fine.

I suggest you test every operator when wildcard is used against signals, since they seem to be particularly wonky.

Thanks :3

Re: [2.0.32] Train interrupt wildcard conditions evaluated incorrectly

Posted: Fri Jan 31, 2025 1:43 pm
by robot256
When testing the Signal Wildcard against a constant, does the interrupt trigger for a signal with the correct value but for which no station exists? I forget if they accounted for that case. The problem with "Signal Wildcard == A" is that A == A whenever A is nonzero.

Re: [2.0.32] Train interrupt wildcard conditions evaluated incorrectly

Posted: Fri Jan 31, 2025 3:03 pm
by Loewchen
The wildcard just does not take the "iron" value (even though it does take the icon in the station name), greater than even triggers with an iron signal of 1 and A of 1M. It is also not limited to signals, it is the same for the cargo wildcard. It is not signal ID that takes precedence because swapping them does not change anything.

Re: [2.0.32] Train interrupt wildcard conditions evaluated incorrectly

Posted: Fri Jan 31, 2025 4:13 pm
by Muche
It seems to me that the issue is the (signal) wildcard is being evaluated in a mode similar to combinators' EACH, but not exactly.

Combinators first evaluate all incoming signals, then run the parallel EACH mode.
That is, a decider with "EACH=A -> EACH" will output all signals whose value is the value of A.

Interrupt's wildcard mode seems to skip the signals evaluation, so "SignalWildcard=A" is effectively "EACH=0".

Re: [2.0.32] Train interrupt wildcard conditions evaluated incorrectly

Posted: Fri Jan 31, 2025 6:55 pm
by Klonan
Milichip wrote: Fri Jan 31, 2025 12:08 am Hello!

Please refer to the image/video for context.
When using the wildcard signal in a train interrupt against another signal's value, the game behaves incorrectly.
Hello, thank you for the report, and welcome to the forum

Would you kindly be able to upload your save game and attach it here?

Re: [2.0.32] Train interrupt wildcard conditions evaluated incorrectly

Posted: Fri Jan 31, 2025 7:14 pm
by Muche

Re: [Klonan] [2.0.32] Train interrupt wildcard conditions evaluated incorrectly

Posted: Tue Feb 04, 2025 11:47 am
by Klonan
Thanks for the report,

This is fixed for 2.0.34