Page 1 of 1

Chain signal delay problem

Posted: Sat Nov 24, 2018 1:44 am
by Skeletpiece
Hello everybody,
While I was playing today, I noticed that there is a problem delay with chain signals. I do not know if it is a bug or train pathfinder algorithm is running ok.
Scenario:
- Consider the parking on the right side and unload stations on the left, named from A to H (From left to right)
unload_Station.png
unload_Station.png (50.65 KiB) Viewed 2100 times
In the .gif attached, you can see that A station has the lowest priority (I think because its far from the others, then B, C, ...).
From my perspective that should not happen, as you can see, chain signal on the waiting train is already blue (Because a free way to station A) but train does not move, some seconds later, a train leaves another station (Chain signal is still blue because other empty station) and the waiting train goes to where the nearest train left.
ChainDelay.gif
ChainDelay.gif (1.97 MiB) Viewed 2100 times

Re: Chain signal delay problem

Posted: Sat Nov 24, 2018 2:25 am
by Loewchen
There is no instant recalculation when a new path becomes available, so the train waits for the previously chosen station. NaB.

Re: Chain signal delay problem

Posted: Sat Nov 24, 2018 3:59 am
by Zavian
Also be aware that an occupied station is only a 500 tile penalty for the pathfinder. It's a little hard to tell from the screenshot, but I think that station C is more than 500 tiles further than station H, so any trains in the stacker will prefer to wait for the train in H to finish unloading rather than use stations A, B, or C.

I know 2 approaches to fix that.

1. Move the approach rail for to the unload stations to approach the stations from above probably between stations D and E. (Assuming you have enough space you can just route the existing exit from the stacker across the top, and then down, and change the entry curve for stations E, F, G and H to match the new entry direction. You can also add a few more signals along that approach, so that trains can use the approach as an extension to the stacker.

2. Add a circuit controlled signal or two behind the trains in station D, E, F, G, and H. Set the signal to red when there is a train in the station. Each circuit controlled red signal adds an extra 1000 tile penalty to the path.

Also I with that many stations I would be worried about the exit time from the stacker. With 8 ore trains unloading, you may run into a situation where the stacker exit performance isn't good enough to service 8 unload stations.

Re: Chain signal delay problem

Posted: Sat Nov 24, 2018 12:03 pm
by eradicator
The easiest way to fix your problem is to disable stations when they're occupied. Because a train can not path towards a disabled station and will instantly repath to a different one of the same name.

Re: Chain signal delay problem

Posted: Sat Nov 24, 2018 8:20 pm
by Zavian
eradicator wrote: Sat Nov 24, 2018 12:03 pm The easiest way to fix your problem is to disable stations when they're occupied. Because a train can not path towards a disabled station and will instantly repath to a different one of the same name.
I've never tried that solving this problem that way, but won't that result in any trains heading to the ore unload station, suddenly repathing back towards the mines, when all unload stations are full? That could be problematic. (Think about cases where the ore mines are 5 mins from the ore unload stations. That could be a lot of trains suddenly turning around, and heading back to the ore patches, and also a long delay once a station becomes available once more).

Hmmm. Thinking about it some more, you could also add a dummy station that is never used, and hence is always available for trains to path towards. Place it beside the real unload stations, add some circuit controlled signals or an empty train to make sure it is never used.

Re: Chain signal delay problem

Posted: Sat Nov 24, 2018 8:47 pm
by eradicator
Zavian wrote: Sat Nov 24, 2018 8:20 pm Hmmm. Thinking about it some more, you could also add a dummy station that is never used, and hence is always available for trains to path towards. Place it beside the real unload stations, add some circuit controlled signals or an empty train to make sure it is never used.
I personally use two permanent red rail signal to block off the dummy (because then i don't need a constant combinator and get extra penalty as a bonus). An even simpler solution would be to never disable the last real station.