this post was submitted on 10 May 2026
21 points (100.0% liked)

Games

21299 readers
77 users here now

Tabletop, DnD, board games, and minecraft. Also Animal Crossing.

Rules

founded 5 years ago
MODERATORS
 

So, I have 2 train routes for exports, highlighted for visibility:

  • A cement train that runs between the red line (at the end of which is a loading station for cement) and the customs house at the far end of the green line
  • A gravel train that runs from the aggregate loading station at the end of the blue line to the same customs house

Here's the behavior I want:

  • When returning from the green route, a train has right-of-way to return to its loading station
  • If a train arrives at the intersection from the red or blue route, it should proceed only if there is no train on the green line; otherwise, it should wait until the green line is clear

I'm not entirely sure how semaphores work and no combination of them seems to do the trick. I get trains unable to return from the customs house, trains colliding, or trains forever deadlocked at the junction. I've watched/read like 3 different tutorials and I'm still not sure what I'm supposed to do.

top 14 comments
sorted by: hot top controversial new old
[–] Krem@hexbear.net 9 points 5 days ago (3 children)

this game is making me dislike the idea of trains

i was happy setting up farms and factories, and i didn't even mind that much that you need to be prescient to know that input and output buildings need to sit on certain sides of each other (different for each building in the game) if you want the magic factory lines to work and not have to use trucks between them

but then i started gettin into aggregates, and i didn't even mind that much that you need to be psychic to know that buildings need to sit on even more certain sides of each other (even more different for each building) for the conveyors to be able to work.

then, setting up the train lines, and everything falls apart. my station areas look like when your shoelaces would not come untied but turn into double knots instead. trains go all the way to destination until they run in to another train and then back up and reverse, just sitting there bumbing into each other. passenger train platforms aren't "suitable" for the passenger train to go to (Why? the game certainly isn't going to tell you!)

why is this game trying to carbrain me

[–] Carl@hexbear.net 2 points 3 days ago (1 children)

responding a couple if days late but there's a key that lets you mirror buildings if you need the inputs/ outputs on the other side

also you can try doing a car republic but it will NOT work and everybody will be miserable ask me how I know

[–] Krem@hexbear.net 1 points 2 days ago* (last edited 2 days ago)

there's a key that lets you mirror buildings if you need the inputs/ outputs on the other side

WHAT

also also the planning feature is your friend, get all of your ducks in a row before you commit to building anything

WHAATT

thanks, this changes everything. how come the tutorial doesn't mention any of this

i was making ugly inefficient conveyor loops around my coal processor, bulldozing roads to build overpasses

[–] Dessa@hexbear.net 6 points 5 days ago (1 children)
[–] Krem@hexbear.net 7 points 5 days ago

ye can't get ye station!

[–] BeanisBrain@hexbear.net 6 points 5 days ago

Yeah a lot of people say Shadow Empire's logistics system is byzantine but it feels kindergarten level compared to this.

[–] trompete@hexbear.net 7 points 5 days ago (1 children)

The track is divided into sections by the signals. Only one train can be in any one section.

Some critical sections you don't want trains to enter unless they can exit also, like a junction. Wouldn't want the train entering the junction and then sitting there and blocking it for other trains. So there's a normal signal (single arrow), which allows trains to pass if the following section is clear. Then there's the a chain signal (double arrow), which the train will pass only if it can also exit, i.e. not only is the directly following section clear, but the one after that one is also clear, meaning it can pass through without stopping.

In practice this just means: put a chain signal before any junction or other section you don't want trains to stop. Put regular signals in front of sections the train may stop in. Make sure any section that trains might stop in (i.e. that has a regular signal, not a chain signal, before it) fits a whole train and is a straight line section that couldn't possibly block another train (except trains queuing behind it). Make sure you don't have too many trains, you always need to have a free section somewhere.

[–] BeanisBrain@hexbear.net 3 points 4 days ago

This make sense, thanks!

[–] KobaCumTribute@hexbear.net 6 points 5 days ago* (last edited 5 days ago) (1 children)

Make parallel lines going in opposite directions instead of trying to have a bidirectional rail. IIRC workers and resources has similar train signalling to factorio, which means it is possible to make a bidirectional rail work, but it will never be a good solution.

IIRC it has chain signals, right? Where it is essentially a "do not pass this point unless you can fully clear the next segment" signal? If so, use those entering into the bidirectional segment and one pair of them within it, and a normal signal going into the deadend terminals that aren't the customs house. That should logically work out to "you are not allowed to leave the deadend unless the other train is in its deadend", although it's still not a good solution and would 100% break if the customs house has its own signal in which case you need a bypass so a train can sit there and wait in a position where it can't block the customs house exit.

Seriously just use two separate rails for inbound and outbound traffic though. Build them in a way they can extend to form a backbone later, and have the stations be side paths with dedicated one-way on and off ramps. It'll be a more robust and easy to work with solution that scales better and saves you so much grief.

[–] BeanisBrain@hexbear.net 4 points 5 days ago* (last edited 5 days ago) (1 children)

Unfortunately a bidirectional rail is a necessary evil in the case of the customs house because a train has to leave it the way came in (it's at the edge of the buildable map so you can't make a loop)

[–] KobaCumTribute@hexbear.net 4 points 5 days ago (1 children)

It's been a long time since I played workers and resources, but I know I used two separate rails in general. There you'd just have them joining together but still being one-way each, with signals to stop the incoming train before the point where they join and to prevent the returning train from trying to go down that line. Am I correct in remembering that there are "do not go this way down this line" signs/signals, rather than that being an intrinsic property of signals themselves?

[–] BeanisBrain@hexbear.net 3 points 5 days ago

There are directional signals, yeah.

[–] Carl@hexbear.net 4 points 5 days ago* (last edited 5 days ago) (1 children)

If you want a simple rail like this, the way to think of is like this:

  1. Your semaphores divide the track into segments
  2. Only one train can be on a segment at a time
  3. The trains will stop at the semaphore and wait for the segment ahead of them to clear before proceeding

these rules mean that

a) You need at least n+1 segments of track for it to be possible for your trains to move (n is the number of trains)
b) Each "branch" of the shared line can only service a single train (since two trains trying to enter/exit a branch simultaneously will get stuck)

So for this setup, you need two semaphores to make it work

  • On the red rail, right before the junction, going in two directions
  • On the blue rail, right before the junction, going in two directions

This should split your track into three sections, which is enough if you have 2 trains. Assuming that only one train is traveling to the red branch, and only one train traveling to the blue branch, this setup should provide exactly the behavior you're after, where a train on the green section causes a train trying to enter it to wait.

That said, it's a LOT easier to make trains work seamlessly with dual parallel tracks (one going in each direction, using one-way semaphores to force the trains to use the correct side, and having junctions at the customs house to allow trains to start/end on any track). If cost is a concern, you can create what i'm going to call a "one and a half" track by adding a "passing lane" halfway between the customs house and your town, and using semaphores to make each side of the "passing lane" one-way (make sure the passing/waiting track section is at least as long as your longest train!).

[–] BeanisBrain@hexbear.net 4 points 5 days ago* (last edited 5 days ago)

Thanks, that got it to work! The trains are running properly now.

That said, it's a LOT easier to make trains work seamlessly with dual parallel tracks (one going in each direction, using one-way semaphores to force the trains to use the correct side, and having junctions at the customs house to allow trains to start/end on any track). If cost is a concern, you can create what i'm going to call a "one and a half" track by adding a "passing lane" halfway between the customs house and your town, and using semaphores to make each side of the "passing lane" one-way (make sure the passing/waiting track section is at least as long as your longest train!).

I'll give it a shot, thanks for the suggestion. I feel like I'm slowly getting the hang of semaphores so I might be able to make this work.