@patent whale Indeed if there is some bottleneck in the network, so the capacity is lower than the need, delays start to rise and the overall delay (sum of the delays) rises as well. The question here is how the delays are distributed to the trains.
In each internal cycle of the game we iterate over the Signals and check if they have a queued route that can be executed. As this iteration is always the same, some signals are preferred over the others. So the delay distribution favores some trains while others are in a special situation called starvation.
Indeed it would be better if the way how we check the routes prevented this situation but it pops up only when things are going really bad. Moreover, this part of the network would get stuck anyway, but in a different way and maybe slightly later. The overall delay is the same no matter how it is distributed among the trains.
So, if the capacity of the stabling yard is sufficient, minor delays may occur but they resolve themselves eventually.
If the capacity is insufficient, delays rise until a deadlock in any case.
I would say the better rebalancing of the delays is not worth the complexity it would bring, the risk of errors it may cause and the performance impact it would bring.