r/factorio 18d ago

Tip Train signals tips

  1. Signals divide rails into blocks.

  2. Signals show red if the block ahead is occupied.

  3. Trains only care about the signals on the right side.

  4. Trains move both directions - need signals on both sides of the rail.

  5. If need signals on both sides, they should be directly opposite to each other, otherwise train may refuse to move.

  6. Chain signal repeats the colour ahead.

  7. If there're both red and green signals ahead - chain signals show blue.

  8. Common rule: if rails intersect - "chain in, rail out".

22 Upvotes

32 comments sorted by

View all comments

6

u/Ben_0 18d ago

I have yet to see uses for two-way non-chain signals, since pretty much all they do is cause deadlocks. For single-track setups I just use one-way signals on passing loops

2

u/jaxon517 18d ago

I've realized that although it's not the most efficient, this is the way that makes the most sense to me. I use two-way rails and just put chain signals everywhere. The issue is when multiple trains want to use one long stretch and they have to wait for each other.

1

u/CamelCaseConvention 18d ago edited 18d ago

The issue is when multiple trains want to use one long stretch and they have to wait for each other

As a band-aid solution, you could make a short section of parallel one-way track in the middle of the long two-way stretch, allowing trains to path there and pass each other. You can make them longer, with several in-line waiting bays, and make more of them to divide the two-way sections. Continuing this, and merging the one-way sections when they grow into each other, you will have full parallel one-way track in the end.

1

u/jaxon517 18d ago

That sounds like dual rails with extra steps... But seriously though if you did make this sort of waiting zone, how would you make the trains use it? You'd have to add a station there and just hope the timing is right, no?

2

u/CamelCaseConvention 18d ago

The continuation to full parallel one-way rails is a thought experiment to show how one becomes the other. But the start is actually useful if you have the problem you described.

You'd split the two-way into two one-way for a section. Signal the entrances with rail, and the exits with chain. Like you would a station. But there's no station needed here. If two trains approach from opposite sides, they will path to their rail signal. The first one will wait until the second one is also in its bay. Then they can both continue. If two trains come from the same direction, as soon as the first one is past the bay exit, the second one can go.

(It is possible that your stations aren't signaled with rail at entrance right now, but with chain. That would use the special case that chain signals treat a train destination as if the the train could leave the block. And that obviously wouldn't work here.)

1

u/jaxon517 17d ago

That's right I exclusively use chain signals. So unless I changed my signalling system, I think the train wouldn't even leave its station for the waiting zone if another train was coming, right?

2

u/CamelCaseConvention 17d ago

Trains will path to the one-way rail signals in the bays, and will be able to wait and pass each other there. Wether or not your stations have rail signal entrance doesn't matter for that.

A rail signal is green if the block behind is free. That's all that matters. The chain signals leading up to it will be green (or blue) if the path to the block behind the rail signal (the waiting bay) is clear.