Skip to content
signaller.org wiki

Conflicts in the map editor

From signaller.org wiki
Revision as of 13:17, 9 October 2026 by 4shveil (talk | contribs) (New guide: what conflicts do, a worked junction example, rules and clearance distances)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Conflicts stop two trains being sent onto the same piece of track at once at junctions, crossovers and flat crossings. They are the part of the map editor people find hardest, so this page goes slowly, with an example.

Why you need them

Signals keep trains apart along a line: only one train is allowed in each block. But at a junction, two signals on different lines can send trains over the same points, or across each other on the flat. Neither signal's block knows about the other train.

Without a conflict, the game will happily clear both signals, and the two trains meet.

Conflicts are needed at:

  • junctions and crossovers,
  • flat crossings (diamonds), and
  • platforms trains can enter from both ends.

Tracks that pass under each other (Underpass track) never meet, so they need none.

What a conflict does

A conflict is set on one signal, and points at another signal, called its target.

A conflict on signal A, with target B, holds A at red while a train has just passed B.

It holds A at red until that train reaches B's next signal, or until it is within a set distance of it (see rules below).

Conflicts go both ways. If A gets a conflict on B, B gets one on A, so whichever train gets there first, the other waits.

A worked example

Here a branch leaves Line 1 and crosses Line 2 on the flat:

 Line 1  -->  A ----+-------------- A2 -->
                     \
 Line 2  <-- B2 ------X------------ B  <--
                       \
 Branch                 \---------- A3 -->
  • Signal A is on Line 1, before the junction. It has two next signals: A2 straight on, and A3 down the branch.
  • Signal B is on Line 2. Its next signal is B2.
  • A train going from A to A3 crosses Line 2 at the X. A train going from B to B2 passes over the same X.

So these two moves can collide: A → A3 and B → B2. A train going A → A2 never goes near Line 2, so it should never wait for B.

Step 1: add the conflicts

  1. Select signal A. In the Inspector, under Conflicts, type B in Add conflict with… and press +. (Or press the pick button and click B on the map.)
  2. Select signal B and add a conflict with A in the same way.

Each conflict appears as a card. Under the target, the card says in plain English what it does:

A is held at red while any train is past B, until that train passes its next signal.

That's safe, but it is too strict: it also holds A when it is set straight on to A2, which never crosses Line 2.

Step 2: narrow it with a rule

On A's card, press Add a rule to narrow this conflict, and fill in:

  • Routed to (A): A3. The rule only applies when A is set for the branch.
  • Routed to (other train): B2. It only counts a train past B that is heading for B2.

The card now reads:

When set to A3, A is held at red while a train that is routed to B2 is past B, until it passes its next signal.

Do the same on B's card, the other way round: Routed to (B) B2, Routed to (other train) A3.

The fields suggest the signals that make sense, so you can usually click a suggestion rather than type.

Step 3: let it clear sooner

As it stands, A waits until B's train reaches B2. But once that train's tail has cleared the X, A's train could safely go. Clears within lets the conflict end earlier.

Clears within = the miles left from the crossing to B2, less about 0.06 for the length of the train.

Say B to B2 is 0.25 miles, and the X is 0.05 miles past B. That leaves 0.20 miles after the crossing. Take off 0.06, and Clears within is 0.14. A is now held only until B's train is within 0.14 miles of B2.

Work out B's card the same way, using the miles from the crossing to A3.

Narrowing a conflict with rules

A conflict with no rules counts any train past its target. Each rule narrows it. A rule applies when all its fields match; a conflict with several rules applies when any of them does.

Field Means Empty means
Came from Only count trains that came from these signals, before passing the target. You rarely need it. any signal
Routed to (this signal) Only apply when this signal is set to one of these next signals. any route
Routed to (other train) Only count a train past the target that is heading to one of these. any route
Clears within Stop counting the other train once it is this many miles from its next signal. 0 means when it passes that signal. 0

The rule the official map follows, which reproduces every conflict on it:

  • Give A a conflict on B whenever a move from A and a move from B share track or cross on the flat. Then give B one on A.
  • Add one rule for each pair of moves that meet: Routed to (A) is A's next signal, Routed to (other train) is B's.
  • Two moves that join into the same next signal still get a rule, with Clears within 0.
  • If every pair meets and every rule would have Clears within 0, leave the conflict with no rules at all.

Checking your conflicts

  • Hover over a conflict card to light up just that conflict on the map.
  • With a signal selected, its conflict target is ringed red, and signals with a conflict on it are ringed purple. Rule signals are ringed orange, yellow and teal.
  • Under the cards, Signals with a conflict on lists the signals that point back at this one. If the one you expect isn't there, you've only added it one way.
  • A warning on a field means the signal you entered isn't linked the way the rule needs, so the rule may never apply.
  • The Check tab warns about a rule that can never apply because its Clears within is longer than any block after the target.
  • Then run trains at the junction with Test, and click a red signal to see why it is red. See Testing a map.

Common mistakes

  • Adding it only one way. A waits for B, but B never waits for A.
  • No conflicts at a junction. Trains are sent onto the same points at once.
  • Conflicts between moves that never meet. Trains are held at red for no reason. Narrow them with rules, or remove them.
  • Clears within too large. A clears while the other train is still on the crossing.