NIMBY Rails

NIMBY Rails

Problems with stale runs
I have a major problem with trains running on stale runs. Sometimes, when a train leaves its depot, it starts its first run in 'stale run' state even tho no modifications to the timetable are made. After it completes its first run in 'stale run' state, it tries to repeat its first run in normal mode, but the problem is that at this point the train starts it with a delay equal to the entire route. This causes major problems with area's entire network, especially on lines with short invervals around 4-5 minutes during peak period. The only solution is to reset the line completely just to wait a couple days for it to happen again. It is really frustrating, I have no idea what is wrong and when it happens, it sometimes entirely jams the line as well as other lines too, forcing me to manually reset all trains of those lines which is very time consuming. Just thinking about this issue happening again every couple days makes me wanna drop out because it totally ruins the experience. If someone has a similar issue or knows how to fix it, please let me know.
< >
Showing 1-15 of 15 comments
Yonsef86 Sep 25, 2022 @ 6:24am 
Yes, very well known issue. I have reported it before.

Every time even a single thing is changed in the orders/timetable, the trains turn stale.
This can be due to:
- a change that you made in the line
- a change that you made in the orders
- a change that the developer makes in the beta which causes all orders to be recalculated

I totally agree it's very frustrating. I am hoping for a solution.

My workaround right now is this:
I save all my games around 23:30; if they turn stale, this will mess up service before they go to depot at 2am, but not many passengers are affected. By the time they go to depot they will have the new orders in place, so next morning service is normal.

This does limit me; I can't let trains go to depot earlier in the evening for example, cause that would mess things up. And also any changes I make to lines and orders, I usually do around 23:30 (stopping time there). Still even with this workaround it happens now and then that I need to issue an intervention, but it minimizes the problem.

I really hope a solution will come. I understand that Carlos may not have anticipated this problem and that is might be a complex thing to solve.
But implementing timetables means that there must be ways to change them without messing up the entire service. Otherwise it's hard for us to play.
Last edited by Yonsef86; Sep 25, 2022 @ 6:24am
MirkoC407 Sep 25, 2022 @ 6:29am 
At least for sandbox players a "reset all trains" button would be helpful. I appreciate however this is not a solution if you play with money.
Weird and Wry  [developer] Sep 25, 2022 @ 9:33am 
The game is already doing the most reasonable thing: try to finish the stale run and then start the new run that corresponds to the current time, from the start. It has to be from the start since otherwise trains would be skipping a lot of stops, and picking absurd paths, to try to path into the current relevant stop ASAP. Pax would also likely become trapped in the train for at least one run, or worse.

An alternative would be to pick the *next* run, basically the first run which does not make the train late. This implies a long station wait somewhere, potentially for the duration of an entire run. I think it's preferable to have a very late train but still servicing a run than to have it sit for multiple hours just so its next run is perfectly on time.

The next step beyond this would be to just auto teleport trains (and this would still strand pax inside). A "reset" without teleport is useless since it just leaves trains very far from their destination and ensues a mad dash of paths to try to make it there ASAP. Not to mention the total signaling failures from trains changing their paths outside of a signal stop.

That being said, if you can reproduce trains getting stale by themselves without any kind of interaction (add to Yonsef86 list: track edits, adding or selling trains) and without any new version release, then I would like to look into the save, thanks!
CausingNickel Sep 25, 2022 @ 10:32am 
Maybe it has to do something with new beta versions being released very often 'cause I noticed that when it happens, it happens to ALL TRAINS and ALL LINES in the entire save, so I'm more than sure it has nothing to do with track or trains edits). I'll keep looking and see if the thing will happen again once a new update is released
MirkoC407 Sep 25, 2022 @ 11:14am 
Well, in networks with no possibility to pass the train ahead the one starting with a stale run is now usually stuck behind another one the whole day. I see your point and taking the next run won't do any better because then it is on time but others late. Without an intervention in many cases the initial stale run will do always harm and never good.
Yonsef86 Sep 25, 2022 @ 12:20pm 
Originally posted by Weird and Wry:
The game is already doing the most reasonable thing: try to finish the stale run and then start the new run that corresponds to the current time, from the start. It has to be from the start since otherwise trains would be skipping a lot of stops, and picking absurd paths, to try to path into the current relevant stop ASAP. Pax would also likely become trapped in the train for at least one run, or worse.

This I understand. But if "from the start" means with nearly a full run delay it disrupts service in extremely unreasonable ways. Especially if more than one line is involved, it literally wreaks havoc. The next run would probably work better, but still some trains would probably block tracks then with all due consequences.
I know that the point is to prevent pax getting stuck or lost, but I prefer one or a few loads of pax getting lost, over having all trains running a full run late all day long, which impacts satisfaction severely.

Wouldn't it be possible for trains to keep running their "old runs" for a while after a change in orders? Maybe there could be a possibility to set the time manually for when the order change would have to take place; followed by an 'abrupt' order reset at that time?
Or maybe it could automatically make the reset during the first upcoming 'technical manouvers run'?

With a manual time setting, all responsibility for
Originally posted by Weird and Wry:
skipping a lot of stops, and picking absurd paths, to try to path into the current relevant stop ASAP.
would lie with the player.
With an automatic technical manouvers setting this would not even be important. Empty trains finding their path to the new depot or a new starting point is not so weird.
adlet Sep 25, 2022 @ 12:25pm 
Here are my two cents. There are different kinds of changes that can happen and cause stale runs.

1. Minor route or train editing. In my experience although these create a stale run, it's not much different from the original run, and a major disruption will not result. A train will simply reach the end station and continue with the next run. I think it is probably helpful to have some "reserve time" (i.e. set custom line duration to be longer than the minimal line duration) to ensure any increases in the latter do not affect the number of runs.

I think new beta releases likely also should fit into this category, unless there is a major operational change. For example, replacing depots with straight tracks may have done this to some lines if they were using the track or connected tracks.

I think it would however be very helpful if the game could alert us to events when the timetable is recalculated and the number of runs for any order changes. This could potentially be a good way to monitor for changes and then be able to take action before a major disruption happens.

2. Intentional line and timetable changes. These are on players. However, I think we are all struggling in a way because there is no convenient protocol to do changes. My thought is perhaps there could be "Effective time" functionality added to the Append order/Edit order interfaces. This could be as simple as a choice of several basic options: "Next run", "Next identical order", "Set time (cancel run)", perhaps some other.

Next run: current behavior. The current run is not affected but the next run may be cancelled and replaced with a new one, if it is being affected.

Next identical order: the change does not affect any runs on the current order, but any runs on the same order on another day will be affected.

Set time (cancel run): the change take effect at a specified time, and any order running at that time will be cancelled if it is being affected, and replaced with the run from the new order. The specified time could be right away, too (e.g. in a minute). This may sound crazy, but it's super convenient when the train is sitting in a depot already assigned to the next run. That next run will then be cancelled. But you can also do this on a running train, just understand the consequences.

3. Interruptions have moved from an occasional nuisance arising mostly from your own error, to something of a regular occurrence driven by how the game processes changes. For those of us running with money, $500,000 does not make sense. I am honestly just deleting the track under the stuck train (which resets it) and then restoring the track, typically costs $1-5 thousand and a minute or two to restore signals and junctions. I think something like $1,000 per interruption would be a lot more reasonable and closer to real life too. Or perhaps something like 0.1% of the train value.
hkuyeren Sep 26, 2022 @ 12:12am 
It would be nice if you can resert all trains from one line or all lines. Sometimes the line duration is 2 hours and afther a stalen run the train start sometimes 1h 50 minutes late. Would be great just wait for the next departure.
Weird and Wry  [developer] Sep 26, 2022 @ 6:43am 
In 1.5.28 trains receive a free auto intervention after finishing a stale run, and their pax are relocated to their next stop station. I believe this is a good compromise between the previous system and instantly resetting trains after order changes.
Yonsef86 Sep 26, 2022 @ 9:12am 
Originally posted by Weird and Wry:
In 1.5.28 trains receive a free auto intervention after finishing a stale run, and their pax are relocated to their next stop station. I believe this is a good compromise between the previous system and instantly resetting trains after order changes.

Thanks a lot! I have already tested it and it works much much better than before.
Small changes go effortless now.
One thing for players still to keep in mind is that a train in depot during a change will still do its first morning run stale, after which it respawns into the new timetable. Especially for bigger changes and longer runs this is something to take into account.

Nonetheless this is a great improvement, which makes the game much more 'playable'. :)
MirkoC407 Sep 26, 2022 @ 10:00am 
I meanwhile reset all affected trains quite routinely after at least I made changes to a line. However, I still continue to advocate for a function to initiate a reset of all trains manually. Usually the most annoying moment is when stale runs are initiated by a game update and I want to check a new line for running integrity. Because then I need all trains of this line and all lines it shares track with to run on time. So I will have to manually reset a zillion trains before they make a run.
Doing the "save before getting into depot" trick means I will just push the trouble from trains exiting the depot to trains entering it, because both need to be checked. So I nevertheless end up saving the game at night with trains in depots.
adlet Sep 26, 2022 @ 11:13am 
Very helpful changes with interruptions in 1.5.28, thank you!

I still think being alerted to unintended timetable changes (i.e. changes in the number of runs triggered by any factors other than edits to orders) would be very helpful. These are very difficult to think of sometimes and can have huge adverse consequences.
Yonsef86 Sep 26, 2022 @ 11:50am 
Originally posted by MirkoC407:
I meanwhile reset all affected trains quite routinely after at least I made changes to a line. However, I still continue to advocate for a function to initiate a reset of all trains manually. Usually the most annoying moment is when stale runs are initiated by a game update and I want to check a new line for running integrity. Because then I need all trains of this line and all lines it shares track with to run on time. So I will have to manually reset a zillion trains before they make a run.
Doing the "save before getting into depot" trick means I will just push the trouble from trains exiting the depot to trains entering it, because both need to be checked. So I nevertheless end up saving the game at night with trains in depots.

Or just fast forward at least a full run and all will be normal again, right? in 1.5.28
The problem before was that trains often repeated a late run after the stale run, which resulted in trains getting stuck behind each other in the wrong order, which could last hours or even a full day. That's why the "save before getting into depot" trick was useful.
In 1.5.28 this problem is no longer there.
MirkoC407 Sep 26, 2022 @ 12:29pm 
Originally posted by Yonsef86:
Or just fast forward at least a full run and all will be normal again, right? in 1.5.28
Nope - this does not cover the case when a train out from the depot gets stuck behind a train of another or its own line running in passenger schedule already (having started at the other end of the line and scheduled to be the train following the one leaving depot just now) and doing all its stops. To check for proper leaving the depot - and inserting a technical run to the start station leaving the depot earlier than in automatic mode means that *especially* the first runs are critical for being in the right place at any time.
Last edited by MirkoC407; Sep 26, 2022 @ 12:30pm
adlet Sep 26, 2022 @ 3:12pm 
Originally posted by MirkoC407:
Originally posted by Yonsef86:
Or just fast forward at least a full run and all will be normal again, right? in 1.5.28
Nope - this does not cover the case when a train out from the depot gets stuck behind a train of another or its own line running in passenger schedule already (having started at the other end of the line and scheduled to be the train following the one leaving depot just now) and doing all its stops. To check for proper leaving the depot - and inserting a technical run to the start station leaving the depot earlier than in automatic mode means that *especially* the first runs are critical for being in the right place at any time.

That was the purpose of my suggestion to be able to cancel the existing run and replace with a new one right away. The current protocol is that the current stale run is preserved. But if this run is no longer needed - which is the case with sitting in a depot when the current run is already the first morning run - there should be no issue cancelling it. Ultimately if it's a run carrying passengers and the user cancels it, that may be something for the user to deal with and take consequences for.
< >
Showing 1-15 of 15 comments
Per page: 1530 50

Date Posted: Sep 25, 2022 @ 4:43am
Posts: 15