What are they in the first place?
To understand what a pre-signal is, I will first make sure you understand the way signals work.
Signals divide your track in parts or blocks. Each block can hold one train. If a train is on a block, the signal in front of this block will be red, meaning a train that encounters the signal will stop and wait for a green light. That was simple, wasn't it?
Pre-signals are advanced signals. There are various kinds of pre-signals:
|Entrances||Double green light, horizontal yellow bar||Entrance to a pre-signal block|
|Exits||Double green light, vertical gray bar||Exit from a pre-signal block|
|Combo||Double green light, vertical yellow bar||Is both exit and entrance of a pre-signal block|
Or in Semaphore form:
Right. So. We now know how they look, but what do they do?
An entrance will be green if at least one of the exit signals of it's block is also green. But, if all the exit signals in it's block are red, the pre-signal will also turn red and block incoming trains.
That's the easiest description I can think of.
A pre-signal block should always end with at least one pre-signal exit signal. Else, the pre-signal entrance will always be red!
Okay, but what is the use?
At first, you may think that pre-signals are useless. I myself used to think "They just leave a block empty! Why would I want that?".
Let me explain why you'd want that.
Imagine you've got yourself a very busy terminus station (a station where trains enter and leave the station on one side of station only) servicing a factory. At one point in your game, all station platforms are taken by goods trains, and another train comes rolling towards the station. It encounters red signals in all directions and stops in the middle of the entrance block in front of the station. This means the train inside the station can't get out, and you will have to make a goods train ignore a red signal to make room for the incoming train.
Wouldn't it be cool if you could make the train stop before entering the station entrance block and thus keeping it free for trains to leave?
Well, that's exactly what pre-signals are good for!
Check out this image:
The left station's platforms are both taken, and the signals in front of the station are red. As a result, the pre-signal is also red.
But in the right station, there still is room for some more trains, and thus the pre-signal is green.
If you'd like to see this in action, you can download a small savegame with presignals in action by clicking here
Note: You may have to disable most graphics sets (appart from the signals(w).grf file ofcourse) and the electrifiedrails and unifiedmaglev switches to get this working like it's supposed to.
Hey that's pretty cool, but is that everything presignals can do?
Well although the function I described just now is the most common and easy function of pre-signals, they are not just good for this.
They also work very well for giving priorities!
Look at this image:
A train is on the junction and so the other two trains have to wait. Now. Which train do you think will be allowed passage onto the junction first? The Ore train or the Grain train?
The Grain train! Why? Because the plain signal went to green as soon as the junction was free, but the pre-signal stayed red because the pre-signal exit was still red!
Through experimenting ingame, you will be able to find many uses for pre-signals. But the best place for them is still in front of busy stations!
Okay! sounds cool! How do I place them?
That depends on your TTDPatch settings!
I am hereby assuming you are using the ttdpatch.cfg files, and not booting with commandline switches or anything.
If your ttdpatch.cfg file contains the line presignals on but not extpresignals on this means you can not place them manually. The game will convert plain signal blocks to presignal blocks if the block satisfies the following conditions:
- At least one one-way signal going in
- At least two two-way signals
- At least one of these two-way signals leads to a block with another one-way signal going out, or an end-of-line.
If your ttdpatch.cfg file also contains the extpresignals on line, you can manually convert signals.
This is done in the same way as switching between two-way or one-way signals, but hold the CTRL key while in "build signal" mode, and left click an exisiting signal to cycle through the signal types.
Converting signals is completely free.
More advanced layouts
Have a look at some advanced signals usage here.