Add passenger count condition for trains / "Passenger boarded" train stop condition
Moderator: ickputzdirwech
Add passenger count condition for trains / "Passenger boarded" train stop condition
Last edited by ssilk on Mon Oct 24, 2022 5:52 am, edited 1 time in total.
Reason: Changed title
Reason: Changed title
Re: Please add passenger count condition for trains
We already had discussions around passenger count, but this one is a new idea. But I’m not sure, if I like it, because it extends only the existing condition “passenger present”. Gameplay value is quite low, because when you really need it is a quite rare case. 
But there are other cases, where you need a “passenger NOT present”-rule and for th
Older threads:
viewtopic.php?f=6&t=89304 Default temporary stop condition "passenger not present"
Several discussion around that subject:
search.php?keywords=Condition+passenger+&fid%5B0%5D=

But there are other cases, where you need a “passenger NOT present”-rule and for th
Older threads:
viewtopic.php?f=6&t=89304 Default temporary stop condition "passenger not present"
Several discussion around that subject:
search.php?keywords=Condition+passenger+&fid%5B0%5D=
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
Re: Please add passenger count condition for trains
Search found 0 matches: Condition passengerssilk wrote: Mon Sep 20, 2021 1:51 am We already had discussions around passenger count, but this one is a new idea. But I’m not sure, if I like it, because it extends only the existing condition “passenger present”. Gameplay value is quite low, because when you really need it is a quite rare case.
But there are other cases, where you need a “passenger NOT present”-rule and for th
Older threads:
viewtopic.php?f=6&t=89304 Default temporary stop condition "passenger not present"
Several discussion around that subject:
search.php?keywords=Condition+passenger+&fid%5B0%5D=
The "passenger Not present" rule already exists and is equivalent to "passenger count = 0", The "passenger present" rule is equivalent to "passenger count > 0".
Note: It probably wasn't clear in my suggestion but the intent is to implement the passenger count like item count. So you can choose between <, <=, =, >=, >, != and set a count.
For my temporary but not so temporary stops I actually use the rule "passenger present and passenger not present". That way the train will wait either way. And it's one click to remove the rule you don't want. 2 clicks to make it not wait at all or one click if you later want the waiting train to move on (remove the stop or click the next).
"Passenger boarded" train stop condition
The use case of wanting a train to proceed when you jump on it at a station, but also wanting to be able to ride the train back to that station seems very common.
However, because the currently available conditions are only "passenger present" and "passenger not present", to prevent the train from immediately blowing through the stop or immediately proceeding, "passenger present" always needs to be combined with e.g. "time passed".
To that end, it would be really useful if, in addition to the current passenger conditions, a new "passenger boarded" condition was added, which effectively triggered when a passenger who was not on the train entered the train. Note that this is not the same as "passenger present": this would not trigger if you were already on the train when it arrived at the stop, nor would it trigger if you were already on a manual mode train when you switch it to automatic.
As a detail, the wording of "when a passenger who was not on the train entered the train" is significant: If a player is on a train when it arrives at a stop and a second player jumps on at that stop, it should trigger. I.e. not the same as "when a train with no passengers becomes a train with passengers". This is important because it prevents an AFK player on a train from effectively disabling the condition in multiplayer games.
Also, if none of the players who triggered the condition at a stop are on the train any more, then the condition should clear at that stop. This prevents e.g. "passenger boarded" AND "some other condition" from being satisfied if you jump on the train then back off before "some other condition" is triggered. The "none of the players who..." part is significant and should be taken literally, this is important for multiplayer situations.
---
Behavior summary (just what I wrote above but in bulleted form, plus some):
Example setups:
Thanks!
---
PS "Passenger deboarded" could be useful too although I don't personally care as much.
PPS Inb4 setting up stops that allow multiple players to jump on: That's beyond the basic use case for "passenger boarded", and the current way of combining passenger signals with "time passed" can continue to be used. However, one possibility to make this easier is to make players boarding reset the "inactivity" timer, then "passenger boarded" can be ANDed with "inactivity" if you want a more multi-passenger friendly setup. That's not officially part of this FR though, and I don't really know what the consequences would be, I'll leave that debate up to others. (Any unknown consequences could be avoided though by not resetting "inactivity" and instead adding a time setting to "passenger boarded", just a thought.)
However, because the currently available conditions are only "passenger present" and "passenger not present", to prevent the train from immediately blowing through the stop or immediately proceeding, "passenger present" always needs to be combined with e.g. "time passed".
To that end, it would be really useful if, in addition to the current passenger conditions, a new "passenger boarded" condition was added, which effectively triggered when a passenger who was not on the train entered the train. Note that this is not the same as "passenger present": this would not trigger if you were already on the train when it arrived at the stop, nor would it trigger if you were already on a manual mode train when you switch it to automatic.
As a detail, the wording of "when a passenger who was not on the train entered the train" is significant: If a player is on a train when it arrives at a stop and a second player jumps on at that stop, it should trigger. I.e. not the same as "when a train with no passengers becomes a train with passengers". This is important because it prevents an AFK player on a train from effectively disabling the condition in multiplayer games.
Also, if none of the players who triggered the condition at a stop are on the train any more, then the condition should clear at that stop. This prevents e.g. "passenger boarded" AND "some other condition" from being satisfied if you jump on the train then back off before "some other condition" is triggered. The "none of the players who..." part is significant and should be taken literally, this is important for multiplayer situations.
---
Behavior summary (just what I wrote above but in bulleted form, plus some):
- Condition becomes satisfied when any player enters the train (regardless of current passengers on train), while the train is in automatic mode.
- Condition becomes cleared when all players who entered the train (at that stop, since last entrance to automatic mode) are no longer on the train (regardless of other players on train).
- Condition is always clear upon entering automatic mode (regardless of current passengers on train).
- Maintain a list of stop-specific passengers (henceforth known as "this list").
- On arriving at a stop: Clear this list.
- On entering automatic mode: Clear this list.
- When a passenger gets on the train: Add them to this list.
- When a passenger gets off the train: Remove them from this list, if they are on it.
- When the contents of the list change:
- If it is non-empty, set the condition.
- If it is empty, clear the condition.
Example setups:
- Alone, it can be used when you want a train you are riding to hold at a station until you get back on it, in place of the usual "passenger present" + "time passed" combo. As a bonus, if you aren't paying attention, you no longer risk still being on the train when the "time passed" condition expires.
- It can also be used when you want a train to proceed to the next stop if you stay on it, like this:
With that setup, you still get the train to proceed if you stay on it for a few seconds, but it will also proceed immediately if somebody jumps on.
Code: Select all
Passenger Boarded OR (Passenger Present AND Time Passed)
Thanks!
---
PS "Passenger deboarded" could be useful too although I don't personally care as much.
PPS Inb4 setting up stops that allow multiple players to jump on: That's beyond the basic use case for "passenger boarded", and the current way of combining passenger signals with "time passed" can continue to be used. However, one possibility to make this easier is to make players boarding reset the "inactivity" timer, then "passenger boarded" can be ANDed with "inactivity" if you want a more multi-passenger friendly setup. That's not officially part of this FR though, and I don't really know what the consequences would be, I'll leave that debate up to others. (Any unknown consequences could be avoided though by not resetting "inactivity" and instead adding a time setting to "passenger boarded", just a thought.)
Took a break from 0.12.29 to 0.17.79, and then to ... oh god now it's 1.something. I never know what's happening.
Re: "Passenger boarded" train stop condition
I would also like to see such a condition. It would be quite nice.
Pony/Furfag avatar? Opinion discarded.
Re: Add passenger count condition for trains / "Passenger boarded" train stop condition
merged with existing thread
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...
- undermark5
- Burner Inserter
- Posts: 14
- Joined: Thu May 21, 2020 10:55 pm
- Contact:
Re: Add passenger count condition for trains / "Passenger boarded" train stop condition
I'd like to see this revisited and considered for space age as a condition on space platforms. At least with space platforms you could at least allow for reading the number of characters in the hub (there is a character signal that could be output with the number being the number of characters that have entered the hub). I guess maybe this could also be done with trains if you can use wires on a station to read train contents as well. At the very least this new circuit signal could allow for a circuit condition requirement to be met that is based on the number of characters on board.
Also similar to viewtopic.php?f=6&t=54203
Also similar to viewtopic.php?f=6&t=54203