News:

Simutrans Sites
Know our official sites. Find tools and resources for Simutrans.

Absolute block/track circuit block behavior

Started by Mariculous, February 06, 2020, 03:15:36 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Mariculous

I had some discussion with Vladki about track reservation and clearance behavior of Absolute block and track circuit block signalling.
The key statements were:
- trains should not fall back to drive_by_sight at each station and
- trains should not clear reservations behind
I had disagreed with the second but was not sure about the first.

So I went around and asked a train driver, a traffic controller and some people from the transportfever community that had some lecture and exams about this in university and got the following consensual information:
Stops within a block on open track do not require a signal. trains will always reservate up to the next signal in that case. They are allowed to depart from the station without any restrictions. There might be a few technical restrictions when the stop is in between a distant signal and the stop signal, the distant signal showed caution and "PZB/Indusi" train control system is used.
In that case the train cannot continue at full speed even if the main signal is visible to the train driver and turned to clear in the meantime.
However, that's a general issue with PZB rather than with stops on open track.

Track clearance highly depends on how the track, signalbox and signals are set up. Generally the track can be equipped to allow partly clearance of blocks to allow trains "crossing" that block as soon as the shared parts of track are cleared.
Preciesely, reservations should be cleared behind whenever the last car has passed a junction but that effectively won't change anything.
Further questioning about mechanical signalboxes and manual track clearance insead of track circuit contacts, told me that setting junctions in old mechanical signalboxes is only possible when releasing the track lever, thus the whole block of junctions had to be cleared before. Collisions are prevented by ensuring only a single train can be in a whole group of junctions at the same time and the track that will be entered is clear.

Later relais signalboxes, still being an absolute block type of signalling would allow subdividing such groups of junctions, which will at least partly allow using multiple sub groups of track at the same time if these subgroups don't intersect. Depending on how exactly it was set up, this will allow entering a piece of track as soon as the shared section was cleared.

So my conclusion:
Absolute block and track circuit block should both always reservate up to the next signal.
At least for track circuit block, from a real-world standpoint it totally makes sense to clear reservated tiles behind.
For absolute block signalling this makes sense as soon as electrical signalboxes are introduced. However, I don't think we should differ this, especially because absolute block without clearing reservations behind would essentially behave just the same as token block signalling.

jamespetts

Thank you for your feedback. I did attempt to modify the behaviour of the signalling to reserve through irrespective of a stop either last year or the year before (see the "reserving-through" branch), but was not able to acheive this within the current signalling code. Achieving this would be likely to require rewriting the signalling from the ground up. That is not feasible for me to do in the foreseeable future.

If anyone else would like to rewrite the entire signalling code, making sure not to break existing saved games and fully retaining all features without introducing any new bugs that cannot readily be solved, then that might be a different matter, but I suspect that, if someone were to be interested in spending that sort of amount of time working on the Simutrans-Extended code, more useful things could be achieved in that time (e.g. implementing the planned town growth features or the planned overseas destinations feature) than could be achieved by chasing out the remaining anomalies (that are not straightforward bugs) in the signalling code.
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.

Mariculous

Strange, it would be just the same as token block with clearing reservations behind the train.
However, the signalling spaghetti is kind of a blackbox to me, so I'll just believe you hoping one day there will be a fix this.

Vladki

Quote from: Freahk on February 06, 2020, 06:41:18 PMStrange, it would be just the same as token block with clearing reservations behind the train.
yes something like that - making reservations as in token block, and clearing as in absolute block...