News:

Simutrans Tools
Know our tools that can help you to create add-ons, install and customize Simutrans.

3/4-aspect signals with default danger

Started by Vladki, April 30, 2017, 08:23:31 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Vladki

Have a look at http://server.exp.simutrans.com/debug-saves/non-permissive.sve (pause it immediately after loading).


See the path that is reserved for the overtaking fast train - home signal is at clear + alt. route (OK), start signal shows preliminary caution, but the next block signal is clear again. The start signal is default_danger, but it behaves the same if it is default_clear, because it is protecting a junction. The aspect would be OK if all the signals ahead would be default_danger, as there are two blocks reserved. It does not cause any problems, just looks weird. I think that all multi aspect signals, if not at danger, should show aspect according to the next signal ahead. Something like my_aspect=aspect_ahead+1. This would also help when the line changes from 3 to 4 aspect signalling at some point or vice-versa. It should not matter if the signal is default_danger or default_clear.


jamespetts

Are you sure that whether the signal is default danger or not has any bearing on this? The signalling logic does not take that into account, if I recall correctly, in this sort of situation: only when trains pass signals further ahead and decide whether to reset signals behind them to clear.

The way that the signalling works is for the train itself to reserve ahead tile by tile, and check for signals along the way, remembering certain specific things about where it has passed (such as the tile of the last stop signal, the first stop signal, etc.) and then, once it has reserved as far as it is going to go, setting all the signals that it has passed to their correct aspects. It does not actually check for aspects of signals farther than it reserves.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

Vladki

Quote from: jamespetts on April 30, 2017, 11:07:49 PM
Are you sure that whether the signal is default danger or not has any bearing on this? The signalling logic does not take that into account, if I recall correctly, in this sort of situation: only when trains pass signals further ahead and decide whether to reset signals behind them to clear.
I have not seen this behavior with signals that are default clear, unless they were also protecting a junction, so they behaved as if they were default danger.

Quote
The way that the signalling works is for the train itself to reserve ahead tile by tile, and check for signals along the way, remembering certain specific things about where it has passed (such as the tile of the last stop signal, the first stop signal, etc.) and then, once it has reserved as far as it is going to go, setting all the signals that it has passed to their correct aspects. It does not actually check for aspects of signals farther than it reserves.
It does not have to check further ahead. You can see that the train has reserved 4 blocks ahead. If they would be default danger, thay would be: first signal clear, second preliminary caution, 3rd caution and 4th danger. But the 3rd and 4th are default clear, and as also show clear. So the second signal should show clear too, even if it is default danger.

jamespetts

Thank you for the details, and apologies for not having replied earlier: I was really rather busy this last week. I notice that the saved game is one in which the route is already reserved, and therefore the signal aspects will already have been set. Would you be able to upload a version in which the route is just about to be reserved so that I can reproduce the actual process of setting the signal aspects, which is where the issue will lie? I suspect that the problem has to do with the interaction between choose signals and multiple aspect signals.

Thank you again.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

Vladki

Just watch the express train (12) a little bit longer. As it approaches Selpice station, it will do the same even though it goes in straight track this time.