Comparison of "Everything" signal with a specific signal

Don't know how to use a machine? Looking for efficient setups? Stuck in a mission?
Post Reply
Artyom
Inserter
Inserter
Posts: 41
Joined: Sun Mar 22, 2020 8:41 pm
Contact:

Comparison of "Everything" signal with a specific signal

Post by Artyom »

I have tryed to found explanation how "Everything" signal is compared with a specific signal (not just with a value) in a decider combinator but unsuccesfully.

Very simple circuit:
1. Constant combinator with arbitrary signal having any value (for example, A = 5)
2. Decider combinator with next settings:
- condition "Everything" less than that signal (in this case "Everything" < A)
- output "Everything"

I was wondered that the signal was transfered to output of the decider combinator.

So it means that when "Everything" is compared with a signal (not a value), in fact this virtual signal implies "every signal except signal that they are compared with". Is it correct assumption?
Attachments
everything_compared_with_signal.jpg
everything_compared_with_signal.jpg (666.99 KiB) Viewed 3421 times
Last edited by Artyom on Mon Jul 27, 2020 10:47 pm, edited 1 time in total.

Loewchen
Global Moderator
Global Moderator
Posts: 8284
Joined: Wed Jan 07, 2015 5:53 pm
Contact:

Re: "Everything" signal compared with a specific signal

Post by Loewchen »

Using Everything on the output side means the decider will output all signals that exist on the input side if the condition is true. The value of the output signals depends on the radio button setting.

User avatar
disentius
Filter Inserter
Filter Inserter
Posts: 694
Joined: Fri May 12, 2017 3:17 pm
Contact:

Re: "Everything" signal compared with a specific signal

Post by disentius »

Not exactly. Add a B= 4 signal to the constant combinator, and you will see it outputs A and B.

If you want to output everything but the control signal, you have to use EACH in input and output, and use an exclusive condition, like > A, < A, ≠ A.

Artyom
Inserter
Inserter
Posts: 41
Joined: Sun Mar 22, 2020 8:41 pm
Contact:

Re: "Everything" signal compared with a specific signal

Post by Artyom »

Guys, you didn't understand.

There is the only one signal A that has value 5.
Condition is "check if every signal is less than A".

How do you think what result of "A < A" comparison is? True?! No, it is false. So there should be no signal at the output at all.

astroshak
Filter Inserter
Filter Inserter
Posts: 597
Joined: Thu May 10, 2018 9:59 am
Contact:

Re: Comparison of "Everything" signal with a specific signal

Post by astroshak »

Correct me if I’m wrong (don’t have Factorio up and running right now) but there are more than one “catch all” signals here.

Anything

Each

TC, I want to say that “Anything < A” will be true if any signal is less than the value of A, in this case, 5. So it will output whatever you tell it to if any of the input signals is less than 5.

“Each < A, Each” should filter out anything greater than 5.

I’m no circuit guru though; my uses so far have simply been to control train stations and oil cracking, as well as (pre-logistics network) the output of a machine into a box.

User avatar
disentius
Filter Inserter
Filter Inserter
Posts: 694
Joined: Fri May 12, 2017 3:17 pm
Contact:

Re: Comparison of "Everything" signal with a specific signal

Post by disentius »

It is not comparing A < A, It is comparing A against everything including "no signal".
The "Everything" signal includes "no signal" (everything is nothing). No signal < A (yes, weird). This makes the condition true, and the combinator outputs everything. A is the only signal on the combinator, so it outputs A.

Artyom
Inserter
Inserter
Posts: 41
Joined: Sun Mar 22, 2020 8:41 pm
Contact:

Re: Comparison of "Everything" signal with a specific signal

Post by Artyom »

disentius wrote:
Tue Jul 28, 2020 8:14 am
It is not comparing A < A, It is comparing A against everything including "no signal".
The "Everything" signal includes "no signal" (everything is nothing). No signal < A (yes, weird). This makes the condition true, and the combinator outputs everything. A is the only signal on the combinator, so it outputs A.
The combinator should compare A with A because "Everything" signal should include A signal itself.

"Everything" < A means that every signal is compared with signal A including this signal.
Since there is signal A only, it is compared with itself only.
Because A < A is false, there shouldn't be any signal in the output.

Is it hard to understand?

P.S. Are there any devs here?

User avatar
disentius
Filter Inserter
Filter Inserter
Posts: 694
Joined: Fri May 12, 2017 3:17 pm
Contact:

Re: Comparison of "Everything" signal with a specific signal

Post by disentius »

If you think it is a bug, make a a bug report. This is the help forum, so i told you how it actually works:)
https://wiki.factorio.com/Decider_combinator
[edit] you are describing the behaviour of the "each" wildcard.

Yoyobuae
Filter Inserter
Filter Inserter
Posts: 499
Joined: Fri Nov 04, 2016 11:04 pm
Contact:

Re: Comparison of "Everything" signal with a specific signal

Post by Yoyobuae »

Artyom wrote:
Tue Jul 28, 2020 8:56 am
The combinator should compare A with A because "Everything" signal should include A signal itself.

"Everything" < A means that every signal is compared with signal A including this signal.
Since there is signal A only, it is compared with itself only.
Because A < A is false, there shouldn't be any signal in the output.
So "EVERYTHING > {signal}" excludes {signal} from the comparison, interesting. If {signal} would be included in the comparison the comparison would always be a constant TRUE or FALSE depending on the comparison operator, which really isn't very useful.

I think this is a corner case behavior where the devs went with a behavior that's useful rather than a behavior that's logically consistent with the "everything" terminology.

Loewchen
Global Moderator
Global Moderator
Posts: 8284
Joined: Wed Jan 07, 2015 5:53 pm
Contact:

Re: Comparison of "Everything" signal with a specific signal

Post by Loewchen »

The decider has to ignore the input signal if set on the right side of your condition when using Anything or Everything. Otherwise any Anything comparison using equal would always be true and any Everything comparison using operators that do not include equal would always be false and you lose the ability to build any conditions that do not use constant values on the right of the condition.

User avatar
disentius
Filter Inserter
Filter Inserter
Posts: 694
Joined: Fri May 12, 2017 3:17 pm
Contact:

Re: Comparison of "Everything" signal with a specific signal

Post by disentius »

Read the pop-up from the "everything" signal.
Everything descr.png
Everything descr.png (292.02 KiB) Viewed 3227 times
It is true when there are no inputs.
As Loewchen said, A ignores itself in the comparison (it doesn't count as input for everything).
Everything gives true because there are no inputs.
The combinator outputs everything, -> A. (and that part is not intuitive, imo)

Artyom
Inserter
Inserter
Posts: 41
Joined: Sun Mar 22, 2020 8:41 pm
Contact:

Re: Comparison of "Everything" signal with a specific signal

Post by Artyom »

Yoyobuae wrote:
Tue Jul 28, 2020 4:04 pm
Artyom wrote:
Tue Jul 28, 2020 8:56 am
The combinator should compare A with A because "Everything" signal should include A signal itself.

"Everything" < A means that every signal is compared with signal A including this signal.
Since there is signal A only, it is compared with itself only.
Because A < A is false, there shouldn't be any signal in the output.
So "EVERYTHING > {signal}" excludes {signal} from the comparison, interesting. If {signal} would be included in the comparison the comparison would always be a constant TRUE or FALSE depending on the comparison operator, which really isn't very useful.

I think this is a corner case behavior where the devs went with a behavior that's useful rather than a behavior that's logically consistent with the "everything" terminology.
This is what I have tryed to clarify but some "experts" haven't wanted to understand what I have wrote in the first post and tryed to show themselves.

Artyom
Inserter
Inserter
Posts: 41
Joined: Sun Mar 22, 2020 8:41 pm
Contact:

Re: Comparison of "Everything" signal with a specific signal

Post by Artyom »

Loewchen wrote:
Tue Jul 28, 2020 4:10 pm
The decider has to ignore the input signal if set on the right side of your condition when using Anything or Everything. Otherwise any Anything comparison using equal would always be true and any Everything comparison using operators that do not include equal would always be false and you lose the ability to build any conditions that do not use constant values on the right of the condition.
Thank you for the answer. This is what I've wanted to be confirmed because there is no info on Wiki about such case. Examples show usage of a constant value.
I think this behavior should be described on Wiki. But you also haven't understood the case and written meaningless answer first time.

Artyom
Inserter
Inserter
Posts: 41
Joined: Sun Mar 22, 2020 8:41 pm
Contact:

Re: Comparison of "Everything" signal with a specific signal

Post by Artyom »

disentius wrote:
Tue Jul 28, 2020 5:34 pm
Read the pop-up from the "everything" signal.
Everything descr.png

It is true when there are no inputs.
As Loewchen said, A ignores itself in the comparison (it doesn't count as input for everything).
Everything gives true because there are no inputs.
The combinator outputs everything, -> A. (and that part is not intuitive, imo)
Your answer are useless as before. I've read the pop-up and it tells nothing about what I've asked.

Loewchen
Global Moderator
Global Moderator
Posts: 8284
Joined: Wed Jan 07, 2015 5:53 pm
Contact:

Re: Comparison of "Everything" signal with a specific signal

Post by Loewchen »

Artyom wrote:
Tue Jul 28, 2020 9:20 pm
Your answer are useless as before. I've read the pop-up and it tells nothing about what I've asked.
You might want to switch to a different tone when talking to those trying to help you. The fact that two people failed to understand you question until you edited your original post could give you insight on why the answers you get are useless to you.

foamy
Filter Inserter
Filter Inserter
Posts: 432
Joined: Mon Aug 26, 2019 4:14 am
Contact:

Re: Comparison of "Everything" signal with a specific signal

Post by foamy »

The popup does give the wrong impression, though.

User avatar
disentius
Filter Inserter
Filter Inserter
Posts: 694
Joined: Fri May 12, 2017 3:17 pm
Contact:

Re: Comparison of "Everything" signal with a specific signal

Post by disentius »

Yep. it could be explained better.

Loewchen
Global Moderator
Global Moderator
Posts: 8284
Joined: Wed Jan 07, 2015 5:53 pm
Contact:

Re: Comparison of "Everything" signal with a specific signal

Post by Loewchen »

foamy wrote:
Wed Jul 29, 2020 9:26 pm
The popup does give the wrong impression, though.
You could make a bug report, but since I can not think of any situation the "correct" behavior would be of use, explaining the exception that no one noticed for years in the popup seems more confusing than helpful.

Artyom
Inserter
Inserter
Posts: 41
Joined: Sun Mar 22, 2020 8:41 pm
Contact:

Re: Comparison of "Everything" signal with a specific signal

Post by Artyom »

Loewchen wrote:
Tue Jul 28, 2020 9:25 pm
Artyom wrote:
Tue Jul 28, 2020 9:20 pm
Your answer are useless as before. I've read the pop-up and it tells nothing about what I've asked.
You might want to switch to a different tone when talking to those trying to help you. The fact that two people failed to understand you question until you edited your original post could give you insight on why the answers you get are useless to you.
I haven't edited my first post at all, only the topic. It is hard to name it "help" when someone doesn't understand what is going on.

Post Reply

Return to “Gameplay Help”