
We start with an overview. From top to bottom the trains are standing before a block, path and path signal.
A block signal checks the next block. A block is between the signal and the next signal(s).
A path signal checks the path between it and the next signal*.*
A block is also denoted with it's own colour if you're building signals.
Each colour is a block. Colours can be reused if there's too many blocks in a picture.
A block signal checks the next block. If there's a train on the block, it'll turn red. See the top signal in the first picture.
There's a train between it and the next signal. It's red.
A path checks the the path the train needs. If there's a train on the path, or a different train wants to take the path, it'll be red. It also checks the next signal. If that signal is red, the train can't go.
That is why in the example the middle train can't go, and the bottom train is allowed.
If two trains want to use a block, each path on that block is evaluated. If any touches another line where a train wants to go, it'll turn red for all but one of the trains.
In the above example we see the block in red and the paths in yellow, orange, green and grey. Two trains can only go simultaneously if they take the yellow and grey, as they are the only ones that do not touch. In any other scenario only one train is allowed.
Quick notes:
- Signals are directional. It can only be bi-directional if a signal has a mirror.
- Path signals are red until a train arrives. It will only turn green if it has no intersecting paths with other trains or the block signal the path goes to is green/has no error.
- Path signals have a larger hood.
- To prevent a bug it is recommended to leave a space of two foundations between a signal and a split.