Difference between revisions of "PathBasedSignalling"
m (12 revisions) |
m (Bot: Automated text replacement (--= +==)) |
||
Line 1: | Line 1: | ||
− | '''''Enable path based signalling''''' |
||
=Path Based Signalling= |
=Path Based Signalling= |
||
Line 8: | Line 7: | ||
'''2.0.1 alpha 41 or later''' |
'''2.0.1 alpha 41 or later''' |
||
− | + | ==Switch== |
|
Configuration file: pathbasedsignalling on|off|bitsetting |
Configuration file: pathbasedsignalling on|off|bitsetting |
||
Line 14: | Line 13: | ||
Command line: -XI |
Command line: -XI |
||
− | + | ==Quick Info== |
|
<pre> |
<pre> |
||
Line 22: | Line 21: | ||
</pre> |
</pre> |
||
− | Pathbasedsignalling (PBS) allows multiple trains to share a junction, as long as their paths do not cross. |
+ | Pathbasedsignalling (PBS) allows multiple trains to share a junction, as long as their paths do not cross. As a train approaches a path-based junction, it will reserve a path through it (the rails it has reserved will show up darkened). If another train's desired path would cross the path of that train, it waits at the signal to reserve a path before entering the junction. |
− | You will need the base graphics from the top of the second table on [http://www.ttdpatch.net/newgrf.html#25|this page] in order to have TTD properly display the PBS signals. |
+ | You will need the base graphics from the top of the second table on [http://www.ttdpatch.net/newgrf.html#25| this page] in order to have TTD properly display the PBS signals. |
− | + | ==Detailed Info== |
|
Path based signalling is a feature that allows several trains in a signal block as long as their paths do not interfere. This greatly enhances the entrances and exits of stations as well as junctions. |
Path based signalling is a feature that allows several trains in a signal block as long as their paths do not interfere. This greatly enhances the entrances and exits of stations as well as junctions. |
||
− | This is a [[BitSwitches|bit switch]], with the following choices: |
+ | This is a [[BitSwitches| bit switch]], with the following choices: |
+ | {| |
||
− | + | !Bit!!Value!!Name!!Meaning |
|
+ | |- |
||
− | 0|1|autoconvertpresig|Convert pre, exit and combo signals into PBS signals |
+ | |0||1||autoconvertpresig||Convert pre, exit and combo signals into PBS signals |
+ | |- |
||
− | 1|2|manualpbssig|Allow manually setting PBS signals |
+ | |1||2||manualpbssig||Allow manually setting PBS signals |
+ | |- |
||
− | 2|4|preservemanualpresig*|Don't convert junctions with manually set signals into PBS |
+ | |2||4||preservemanualpresig*||Don't convert junctions with manually set signals into PBS |
+ | |- |
||
− | 3|8|showreservedpath|Show reserved track pieces darker |
+ | |3||8||showreservedpath||Show reserved track pieces darker |
+ | |- |
||
− | 4|16|shownonjunctionpath*|Show reserved track pieces on non-junction tiles too |
+ | |4||16||shownonjunctionpath*||Show reserved track pieces on non-junction tiles too |
+ | |- |
||
− | 5|32|allowunsafejunction*|Don't hold trains at an unsafe PBS signal |
+ | |5||32||allowunsafejunction*||Don't hold trains at an unsafe PBS signal |
+ | |- |
||
− | 6|64|allowunsafereverse*|Don't stop trains that can't reverse safely |
+ | |6||64||allowunsafereverse*||Don't stop trains that can't reverse safely |
+ | |} |
||
− | + | * Off by default (i.e. with just "pathbasedsignalling on") |
|
− | The non-exclusive use of signal blocks is achieved by the trains |
+ | The non-exclusive use of signal blocks is achieved by the trains "reserving" a path through the signal block. These reserved paths are then shown somewhat darker, and other trains will not reserve paths that interfere with them. |
{picture file=img/wiki_up//pbs.png} |
{picture file=img/wiki_up//pbs.png} |
||
− | By default, all signal blocks which have at least one pre-signal, exit signal or combo signal leading ''into'' them will be converted to path-based signalling as soon as the block becomes clear for the first time. You can disable this by enabling the |
+ | By default, all signal blocks which have at least one pre-signal, exit signal or combo signal leading ''into'' them will be converted to path-based signalling as soon as the block becomes clear for the first time. You can disable this by enabling the "autoconvertpresig" setting off the switch, in which case you have to set one signal in each block manually by cycling the states with Ctrl. If one signal is using path-based signalling, then all signals leading into that block will be converted to path-based signalling. This is the case even when automatic PBS blocks are disabled. |
− | To make path-based signalling (PBS) work correctly, you have to obey a few rules in your junction design. |
+ | To make path-based signalling (PBS) work correctly, you have to obey a few rules in your junction design. Uwe Domaratius has written a very nice tutorial that explains how to use path-based signalling (among many other things). You can read it at [http://uwe.s2000.ws/ttdx/]. |
Here are the requirements needed for making PBS work correctly: |
Here are the requirements needed for making PBS work correctly: |
||
Line 66: | Line 74: | ||
* A train ''will'' look for paths that end at a red one-way signal |
* A train ''will'' look for paths that end at a red one-way signal |
||
* If the train cannot find a useful path at all, it will take any path if it is currently at a green signal. It will wait at a red signal. |
* If the train cannot find a useful path at all, it will take any path if it is currently at a green signal. It will wait at a red signal. |
||
− | * When trying to reverse direction in a PBS block, the train will only do so if it can successfully reserve a path out of the signal block. Otherwise, the |
+ | * When trying to reverse direction in a PBS block, the train will only do so if it can successfully reserve a path out of the signal block. Otherwise, the "reverse" function will be disabled, the train will be stopped and both open its vehicle window as well as generate a news message. When this happens, it should now be considered a bug in TTDPatch, please report any situations in which a train is unable to reverse. |
Additional notes: |
Additional notes: |
||
− | * If track pieces are stuck at |
+ | * If track pieces are stuck at "reserved" (dark), try forcing a train to run over them, or dynamite the entire tile and rebuild; just removing the offending piece will not reset it. Sometimes stuck track pieces may not be obvious, for example if the pieces are not on a junction they cannot be darkened to show that they are reserved. |
* If you're not using the updated signal graphics, you can tell whether a signal is using PBS by looking at it with the info tool. You can also tell by noting that a PBS signal stays green until the whole train has passed it, other signals go red as soon as the engine passes them. |
* If you're not using the updated signal graphics, you can tell whether a signal is using PBS by looking at it with the info tool. You can also tell by noting that a PBS signal stays green until the whole train has passed it, other signals go red as soon as the engine passes them. |
||
* PBS changes the functionality of pre-signals somewhat, because trains now enter the block even when the signal is red, as long as they find a path to a green two-way signal (or a green or red one-way signal) that leads to their destination. |
* PBS changes the functionality of pre-signals somewhat, because trains now enter the block even when the signal is red, as long as they find a path to a green two-way signal (or a green or red one-way signal) that leads to their destination. |
||
* This feature may require some junctions to be changed, or better waypoints for trains to find the right way. Not all junction designs work correctly with PBS. |
* This feature may require some junctions to be changed, or better waypoints for trains to find the right way. Not all junction designs work correctly with PBS. |
||
− | * You can use PBS to activate road crossings earlier than usual, they will now be activated as soon as a train reserves a path across them. |
+ | * You can use PBS to activate road crossings earlier than usual, they will now be activated as soon as a train reserves a path across them. Just put a PBS signal a few tiles in front of the crossing, with no other signals in between. |
− | * You can download a demo save game [http://www.ttdpatch.net/saves/pathsigdemo.zip|here], showing this feature in action |
+ | * You can download a demo save game [http://www.ttdpatch.net/saves/pathsigdemo.zip| here], showing this feature in action |
* This feature may still be somewhat buggy and cause both train crashes, or trains getting stuck at signals. Please report both bugs together with a savegame (in case of crashes, ''before'' the trains enter the signal block!) |
* This feature may still be somewhat buggy and cause both train crashes, or trains getting stuck at signals. Please report both bugs together with a savegame (in case of crashes, ''before'' the trains enter the signal block!) |
Revision as of 11:06, 15 June 2011
Path Based Signalling
Enable path based signalling
2.0.1 alpha 41 or later
Switch
Configuration file: pathbasedsignalling on|off|bitsetting
Command line: -XI
Quick Info
;'''Note''':This feature is somewhat dangerous, it may lead to train crashes if not used correctly (sometimes even if used correctly due to bugs in the code). Please read this entire page before trying to use it.
Pathbasedsignalling (PBS) allows multiple trains to share a junction, as long as their paths do not cross. As a train approaches a path-based junction, it will reserve a path through it (the rails it has reserved will show up darkened). If another train's desired path would cross the path of that train, it waits at the signal to reserve a path before entering the junction.
You will need the base graphics from the top of the second table on this page in order to have TTD properly display the PBS signals.
Detailed Info
Path based signalling is a feature that allows several trains in a signal block as long as their paths do not interfere. This greatly enhances the entrances and exits of stations as well as junctions.
This is a bit switch, with the following choices:
Bit | Value | Name | Meaning |
---|---|---|---|
0 | 1 | autoconvertpresig | Convert pre, exit and combo signals into PBS signals |
1 | 2 | manualpbssig | Allow manually setting PBS signals |
2 | 4 | preservemanualpresig* | Don't convert junctions with manually set signals into PBS |
3 | 8 | showreservedpath | Show reserved track pieces darker |
4 | 16 | shownonjunctionpath* | Show reserved track pieces on non-junction tiles too |
5 | 32 | allowunsafejunction* | Don't hold trains at an unsafe PBS signal |
6 | 64 | allowunsafereverse* | Don't stop trains that can't reverse safely |
- Off by default (i.e. with just "pathbasedsignalling on")
The non-exclusive use of signal blocks is achieved by the trains "reserving" a path through the signal block. These reserved paths are then shown somewhat darker, and other trains will not reserve paths that interfere with them.
{picture file=img/wiki_up//pbs.png}
By default, all signal blocks which have at least one pre-signal, exit signal or combo signal leading into them will be converted to path-based signalling as soon as the block becomes clear for the first time. You can disable this by enabling the "autoconvertpresig" setting off the switch, in which case you have to set one signal in each block manually by cycling the states with Ctrl. If one signal is using path-based signalling, then all signals leading into that block will be converted to path-based signalling. This is the case even when automatic PBS blocks are disabled.
To make path-based signalling (PBS) work correctly, you have to obey a few rules in your junction design. Uwe Domaratius has written a very nice tutorial that explains how to use path-based signalling (among many other things). You can read it at [1].
Here are the requirements needed for making PBS work correctly:
- Do not put another signal immediately after a PBS signal. Every PBS signal must have at least one regular track piece between it and the next signal, or else the train will not be able to pass the signal. Track with signals, or track on or below bridges does not count as regular track, whereas road crossings, stations, bridge heads and tunnels do.
- The paths through the junction must be shorter than 64 tiles and cross 7 or fewer junction tiles. A train will never find a path that crosses more than 7 junction tiles.
- Whether these signals are red or green does not matter for whether the train can pass them, except that if the train can't find a route to its destination, it will wait at a red signal, but not a green one.
- The train can pass a signal if it finds a route past the signal leading out of the signal block or to its destination.
- A train will not look for paths that end at a red two-way signal
- A train will look for paths that end at a red one-way signal
- If the train cannot find a useful path at all, it will take any path if it is currently at a green signal. It will wait at a red signal.
- When trying to reverse direction in a PBS block, the train will only do so if it can successfully reserve a path out of the signal block. Otherwise, the "reverse" function will be disabled, the train will be stopped and both open its vehicle window as well as generate a news message. When this happens, it should now be considered a bug in TTDPatch, please report any situations in which a train is unable to reverse.
Additional notes:
- If track pieces are stuck at "reserved" (dark), try forcing a train to run over them, or dynamite the entire tile and rebuild; just removing the offending piece will not reset it. Sometimes stuck track pieces may not be obvious, for example if the pieces are not on a junction they cannot be darkened to show that they are reserved.
- If you're not using the updated signal graphics, you can tell whether a signal is using PBS by looking at it with the info tool. You can also tell by noting that a PBS signal stays green until the whole train has passed it, other signals go red as soon as the engine passes them.
- PBS changes the functionality of pre-signals somewhat, because trains now enter the block even when the signal is red, as long as they find a path to a green two-way signal (or a green or red one-way signal) that leads to their destination.
- This feature may require some junctions to be changed, or better waypoints for trains to find the right way. Not all junction designs work correctly with PBS.
- You can use PBS to activate road crossings earlier than usual, they will now be activated as soon as a train reserves a path across them. Just put a PBS signal a few tiles in front of the crossing, with no other signals in between.
- You can download a demo save game here, showing this feature in action
- This feature may still be somewhat buggy and cause both train crashes, or trains getting stuck at signals. Please report both bugs together with a savegame (in case of crashes, before the trains enter the signal block!)