News:

Do you need help?
Simutrans Wiki Manual can help you to play and extend Simutrans. In 9 languages.

Bug: Station signal double block absolute block doesnt stay danger for timeinter

Started by Ves, May 20, 2019, 10:06:04 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Ves

There appears to be a bug where an absolute block station signal with double block, doesnt stay at danger when it is protecting a time interval signal. I observed it on the swedish server and have captured a savegame that displays it.
Just open the savegame and the station in the middle will attempt to dispatch all trains at once, with the trains piling up at the time interval signals.

Pakset: latest Swedish nightly
Savegame:
https://github.com/VictorErik/saved-games/blob/master/master/bug%20-%20Station%20signal%20double%20block%20doesnt%20stay%20danger%20for%20time%20interval%20with%20telegraph.sve

Ves

Hi James,
I hope you had a good summer, and that your computer is starting to come together!

Sorry for buffing this thread, but in case you missed it I would just like to give you notice!

jamespetts

Apologies for the delay in responding to this. Do I understand correctly that the issue is that trains are being allowed to depart from the platform when the time interval signals ahead are at danger?

I do not think that preventing this is what double block signals are intended to do: a double block signal of the absolute block type is intended to check whether the next two blocks are free. If the block after next is controlled by a time interval signal, it cannot check that this subsequent block is free as there is no system for verifying that this block is free with a time interval system. The double blocking needs to end at the point where absolute block signalling ends.
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

I noticed several times that mixing signalling methods between station does not behave well. However in this case, would it be possible to make the double block signal behave like this?
Check the adjacent block clearance according to signals own signalling method (i.e. absolute block), and then just check the state of the next signal, or try to make reservation ahead of it (just like distant signals do). If the next signal is clear, clear itself too. This would allow for very efficient use of double block signals in junction stations, where differently signalled tracks meet - e.g. a main track with absolute block, a branch line with token block, and a siding with one-train staff.

I'm not sure if distant signals behave in this way too or not? - for them the signalling method is not relevant either, they just should show aspect according to the aspect shown by the next main signal.

jamespetts

I am not convinced that it really makes sense for a signal of one (early) working method to be set based on the state of a subsequent (also early) working method; the whole significance of the difference between time interval and absolute block is the absence of telegraph equipment in time interval signalling, so there would have been no way for the absolute block signaller to know the state of a time interval signal up the track, or vice versa.

As for the time interval with telegraph method, whilst this did use telegraph equipment, this would not have been compatible with or as sophisticated as that used by absolute block, and even the basic ideas of how to use telegraph equipment would not have been fully developed in the days when time interval signalling was still being deployed, so it still does not make sense for the state of a signal in this method to affect the state of another signal in another working method.
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

What I am aiming for is an early model of signalling. The equipment in the signalbox (and communication between them) was often able only to signal if the track between stations is clear, but had no interlocking with points at all. In that case it was sufficient to have one signal for each track leading out of station (i.e. usually 2, or more if the station was a junction of two or more lines). For trains to depart (or pass through), the signalman had to go out and give a hand signal to the train driver to confirm for whom is the signal clearance valid. So the hand signal was effectively a 2-block signal. It signalled that the track up to the main signal (which was ahead of all points), is clear, and that the line to the next station (signalbox) is clear too. The main signal could be of any signaling method (absolute, token, time-interval, one-staff). Of course the first block was "a kind of" absolute block, as it could have been easily checked for clearance, and the main signal was within sighting distance. It would make sense to enforce that double-block signal is controlled from the same signalbox as the next signal (with the exception of staff box).

This arrangement would then allow to have diverging lines with different signalling methods, which is now impossible in simutrans. (Or at least requires one more passing loop, to switch signaling methods.)

jamespetts

This is getting out of the realm of bug fixing and into the realm of new features. I am not in a position to prioritise new signalling features before the balance critical features are completed.
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.

Ves

Hello,
It is exactly as Vladki describes.

The expectations from the player is that the double block signal will only clear once a train can depart from both the double block signal, and the subsequent signal, and this is what I am pointing out with this bug thread.

As to wether it should be able to tell the state of a time interval signal or not, it would not be too difficult for the pakset creator to setup the pakset signals in such a way that it still is realistic.

The point Vladki makes, that it would only work for signals connected to it's own signal box is excellent, as it would add realism to it as well. If that is true for the absolute block version, perhaps the track circuit, and cab signal version could work independently of signal boxes.