TL;DR
A better built-in mechanism to spread out trains between stops with the same name, without mods or circuitry or configuration.What ?
Essentially, when a train is selecting which station to go to, add a fixed route penalty for each train already heading for or stopped at a stop. Or possibly even simpler, select the stop with the fewest number of trains heading for or stopped at it.I would also support and accept a simple round robin selection of stops, which there are also other suggestion posts for already, but the route penalty solution has one advantage in that it won't cause a buildup of trains at the stops with lowest supply.
Why ?
I'm working on a tileable nuclear reactor in sandbox, which is using a fluid-wagon-train-fed water supply. I'll share the save if anyone's interested, but it's still WIP. The trains have a very low margin for unloading time in order to keep the boilers filled with water (which is hardly the only challenge I'm facing...). But the trains tend to favor the nearest station, and end up neglecting the furthest ones, causing the boilers on that side to run dry. This is not a problem that I can solve by simply throwing more trains at it, because that means the rails will just back up a lot more and eventually block the branch-out junction, causing even worse delays.My current workaround is to have dedicated tracks for each entry point. I'll be honest, I suspect this is required for an additional reason as well, namely capacity. The fluid wagons don't carry that much water. But I like my idea enough to write this post for it, and to see how far I could push it with just one track.
There are already many other ideas and suggestions posted for trains and stops that are similar to mine. But most of them suffer from having large or complex scopes, often involving circuit networks or mod support or lots of customisability.
I'm trying to keep the scope razor-sharp by deliberately avoiding that. I'm not offering a perfect solution to everything, just something that is a clear improvement for everyone and that shouldn't break any existing maps or be an obstacle for future, more advanced features, and that is (what I would consider to be) a fairly small effort to implement.
I looked into accomplishing this with modding, but I couldn't find a way to send a train to a stop by id, only by name. It would be possible to create a naming convention so the mod could understand stops with distinct names as a group and hot-swap a train's schedule when it's about to depart, but I figured I could throw out this idea first.