Difference between revisions of "New Player Pointers"
From #openttdcoop wiki
Maqifrnswa (Talk | contribs) (→TREES) |
Maqifrnswa (Talk | contribs) (→TREES) |
||
(8 intermediate revisions by the same user not shown) | |||
Line 65: | Line 65: | ||
* Keep signals every 2 squares (that is, signal-blank-signal). | * Keep signals every 2 squares (that is, signal-blank-signal). | ||
* signal right before and after splits | * signal right before and after splits | ||
+ | * SAFEST: After split, leave one train length of no signals to guarantee that no train will block the split. If trains do back up, you can place a signal at the back of the last train after the split to let another train fit after it | ||
+ | * FASTEST: More accurately, you need to leave an integer number of train lengths worth of signals immediately before the next place a train can stop (i.e., the next split). The number of signals should then be a multiple of | ||
+ | TL_in_signals = ceil(TL/SD) | ||
+ | TL =train length | ||
+ | SD = signal distance | ||
+ | So a TL = 7 and SD of 2 needs ceil(7/2) = 4 signals for one train length. (you always start with a signal, then each train starts with a no signal square and ends on a signal square, the last signal is removed = 1+ ceil(TL/SD-1) | ||
+ | ** So drop a signal, auto-complete it backwards, cound number of signals - and make sure it is a multiple of TL_in_signals | ||
+ | ** or put a signal at the last square of the last train that can fit while waiting | ||
=== synced splits (bridge tunnel) === | === synced splits (bridge tunnel) === | ||
* signal immediately before and after split at the entrance -- and immediately before and after join. Entrance: entry pre-sig -> exit presig. Exit: normal -> normal. | * signal immediately before and after split at the entrance -- and immediately before and after join. Entrance: entry pre-sig -> exit presig. Exit: normal -> normal. | ||
− | * After the exit presignal on the entrance of the doubled bridge, leave | + | * After the exit presignal on the entrance of the doubled bridge, leave a signal gap as described above |
** "You should never have a signal between the exit signal and the bridge as this breaks the entire workings of the pre-signals and the bridges may break horribly" https://blog.openttdcoop.org/2010/07/27/building-101-double-bridges-and-you/ | ** "You should never have a signal between the exit signal and the bridge as this breaks the entire workings of the pre-signals and the bridges may break horribly" https://blog.openttdcoop.org/2010/07/27/building-101-double-bridges-and-you/ | ||
− | * You really need three signals at start and end. If you're missing one, it won't work some times. Use PBS on entrance side if limited on space, but you must have both | + | * You really need three signals at start and end. If you're missing one, it won't work some times. Use PBS on entrance side if limited on space, but you must have both tracks of the output end signaled, otherwise both bridges will will be on the same block |
=== TREES === | === TREES === | ||
− | * after a presignal tree (entry->zero or more combo->exit), leave exactly one train space of no signals after last exit before next signal to prevent blocking of the split. If you can't fit one train length, it means you need to use a combo signal and move the exit after the next split!! With a train length of 5, if you have | + | * after a presignal tree (entry->zero or more combo->exit), leave exactly one train space of no signals after last exit before next signal to prevent blocking of the split. Start counting at the exit pre-signal. This gap should not slow down the network since you split, and there is a second line! Basically, you are using the gap itself as a signaling mechanism. If you can't fit one train length, it means you need to use a combo signal and move the exit after the next split!! With a train length of 5, if you have |
Entry-> split - >SIGNAL 1 -> X number of spaces -> SIGNAL 2 -> split-> SIGNAL 3 | Entry-> split - >SIGNAL 1 -> X number of spaces -> SIGNAL 2 -> split-> SIGNAL 3 | ||
That means if X< train length, SIGNAL 1 should be a combo, SIGNAL 2 should be a combo (or NOTHING), SIGNAL 3 should be exit. If X >= train length, SIGNAL 1 should be an exit, SIGNAL 2 should be entry, and SIGNAL 3 should be determined by what follows using the same logic. There should be normal signals (with normal spacing) between any exit and the next entry signal. | That means if X< train length, SIGNAL 1 should be a combo, SIGNAL 2 should be a combo (or NOTHING), SIGNAL 3 should be exit. If X >= train length, SIGNAL 1 should be an exit, SIGNAL 2 should be entry, and SIGNAL 3 should be determined by what follows using the same logic. There should be normal signals (with normal spacing) between any exit and the next entry signal. | ||
− | * in between two consecutive combos, | + | * in between two consecutive combos, two philosophies: do not signal versus normal signal. |
+ | ** Do not signal between combos: this way trains don't get stuck if combo goes red. ATM, I lean this way | ||
+ | ** Do signal: this sends a stronger signal to pathfinder about what's going on | ||
==== PBS TREES ==== | ==== PBS TREES ==== | ||
− | * using a pbs to split, | + | * using a pbs to split, pretend like the output is an exit signal in the normal presignal tree: leave one train length before next signal. If you can't fit a train length - it is similar to the combo signal in pre-signaling. If using a PBS, DON'T PUT ANY SIGNALS between the first entry PBS and wherever you can put the exit signal. Subtle difference - PBS splits start counting after the PBS signal, while pre-signals start counting at the location of the exit pre-signal. |
− | + | * don't mix PBS and pre-signals in same tree |
Latest revision as of 20:15, 12 August 2016
As a new player, here are some tips I figured out that were pulled from several different locations:
Contents
General
First, read/go through the openttdcoop tutorial save files. These are some tips in addition to, or repeats of those files.
Look at the map: find the mainline (ML), sidelines (SL), and sideline hubs (SLH) that connect the two. Look at some stations that are connected to the sideline. If there are lots of extra tracks, signals, and a depot that doesn't make sense, go read the articles on overflows at https://wiki.openttdcoop.org/Advanced_Building_Revue.
Your First Station
A good thing to start with is a simple station serving one pick-up (i.e., just coal, just wheat, just livestock, just steel, etc.). You can read the tutorials on stations, but essentially you have to worry about 4 things:
- Where will the platforms go?
- The number of platforms determines the maximum loading rate, which is almost always faster than the industry production. Therefore, in theory, you really only "need" one (or two) platforms for pick-up stations. Extra platforms really just serves as waiting bays for extra trains.
- How do trains get in?
- Simply connect to the sideline, and run a line to your station. If you have more than one platform, use signaling (see below).
- Where will the waiting trains go?
- Pick up stations can have trains waiting for resources to be made. There needs to be somewhere for these trains to wait and not block the sideline traffic. Simplest: just get a long piece of track where trains can queue. What you're more likely to see are overflows. Again, read about overflows at https://wiki.openttdcoop.org/Advanced_Building_Revue. Trains entering a station with an overflow usually follow this logic flow:
- Is a platform free?
- Yes: Go to a platform
- No: Enter the overflow. The overflow will have a reverser that will change the train direction. The reverser is just one train-length worth of track that forks in to at least two directions at the end (looks like a chicken's foot or an arrow). It just tricks the pathfinder in to thinking there is a path, then the train hits the end of line and reverses. Why is there a reverser? It hides the depot, which is after the reverser from all trains except those that have gone through the reverser. You can read about it in https://wiki.openttdcoop.org/Advanced_Building_Revue.
- After the reverser, there will be a depot and then a stretch of track where a train can wait for a free platform, called a waiting bay. Is a train waiting in the waiting bay?
- Yes: Go to Depot
- No: Go to waiting bay
- If you are in a depot, you will wait until (A) the waiting bay is empty AND (B) there is no train in the reverser/on the track in front of the depot. This is checked by placing a two-way exit pre-signal in front of the depot facing the reverser. Depots have a built in entry pre-signal, so a red exit pre-signal will keep trains in the depot.
- If you are in the waiting bay, wait until (A) a platform is free AND (B) no other train is coming towards the station from the sideline. This is done using priority checks (see below).
- How do trains get out?
- In the end, this is easier - simply join the tracks together - priority doesn't matter, and re-join the sideline.
Signaling and controlling CHOICE/PRIORITY
You want to control which tracks trains use and which tracks should never slow down. This is done using signaling.
Read about pre-signals and PBS. That will give you basic signaling.
Fine tuning requires a little more understanding about how the pathfinder works (i.e., how the computer chooses where trains go).
Basically, trains will take the shortest route. However, trains "penalize" routes - and controlling these penalties are a useful trick. https://wiki.openttdcoop.org/Penalties
- Big penalty for seeing the back of a PBS signal (see the article on shifted main lines/shifters).
- The pathfinder works best when using pre-signals at splits. If a track splits and both splits are going to the same place (i.e., bridge over another track), use a entry and exit presignals.
- If you don't have space for an entry and exit presignal, then use a path based signal (PBS). After the PBS, put a two way (i.e., points in both direction) normal signal, because a red two-way signal is seen as the end-of-line (EOL), so the PBS won't send a train down that path. Otherwise, it would - even if it is red, causing jams
Priority
Lots of good articles on this site on priority. Basically: use "dummy" track and pre-signals to relay information about the presence of a train on one track over to another location. This way trains can wait until track clears up. Some rules:
- Mainline always has priority and should never slow down
- full trains leaving stations have priority over empty trains
- Other than that, use your judgement
Other "checks"
- Overflows use multiple checks (free platform? incoming train? train in reverser?)
- Shifted mainlines use checks (Is it safe to merge to the other line?)
Merging (Load Balancing)
All over the internet, I read about the importance of "load balancing" and "load balancers" -- but couldn't actually find someone saying what that means! The reason: "load balancers" are obsolete because of the approach of "balanced" merges and how the pathfinder works.
There's a good article on merging on this site, but to make the connection between load balancing and merging is needed to clear up some confusion: as long as you make sure traffic can easily make a choice to whatever line it wants at intersections, the traffic load will be balanced. So if there is a mainline with two tracks in each direction, and you have a sideline with one track in each direction - as long as any train on either mainline track can exit, and a train on the sideline can enter any of the mainline tracks, the system will be balanced. Sometimes you can take shortcuts and find ways to share the possible choices (see the merging article) - but it all comes down to answering the question, "Can a train on any track get on or off of any other track at this hub/intersection?"
JAM PROOF Signals
- Keep signals every 2 squares (that is, signal-blank-signal).
- signal right before and after splits
- SAFEST: After split, leave one train length of no signals to guarantee that no train will block the split. If trains do back up, you can place a signal at the back of the last train after the split to let another train fit after it
- FASTEST: More accurately, you need to leave an integer number of train lengths worth of signals immediately before the next place a train can stop (i.e., the next split). The number of signals should then be a multiple of
TL_in_signals = ceil(TL/SD) TL =train length SD = signal distance
So a TL = 7 and SD of 2 needs ceil(7/2) = 4 signals for one train length. (you always start with a signal, then each train starts with a no signal square and ends on a signal square, the last signal is removed = 1+ ceil(TL/SD-1)
- So drop a signal, auto-complete it backwards, cound number of signals - and make sure it is a multiple of TL_in_signals
- or put a signal at the last square of the last train that can fit while waiting
synced splits (bridge tunnel)
- signal immediately before and after split at the entrance -- and immediately before and after join. Entrance: entry pre-sig -> exit presig. Exit: normal -> normal.
- After the exit presignal on the entrance of the doubled bridge, leave a signal gap as described above
- "You should never have a signal between the exit signal and the bridge as this breaks the entire workings of the pre-signals and the bridges may break horribly" https://blog.openttdcoop.org/2010/07/27/building-101-double-bridges-and-you/
- You really need three signals at start and end. If you're missing one, it won't work some times. Use PBS on entrance side if limited on space, but you must have both tracks of the output end signaled, otherwise both bridges will will be on the same block
TREES
- after a presignal tree (entry->zero or more combo->exit), leave exactly one train space of no signals after last exit before next signal to prevent blocking of the split. Start counting at the exit pre-signal. This gap should not slow down the network since you split, and there is a second line! Basically, you are using the gap itself as a signaling mechanism. If you can't fit one train length, it means you need to use a combo signal and move the exit after the next split!! With a train length of 5, if you have
Entry-> split - >SIGNAL 1 -> X number of spaces -> SIGNAL 2 -> split-> SIGNAL 3
That means if X< train length, SIGNAL 1 should be a combo, SIGNAL 2 should be a combo (or NOTHING), SIGNAL 3 should be exit. If X >= train length, SIGNAL 1 should be an exit, SIGNAL 2 should be entry, and SIGNAL 3 should be determined by what follows using the same logic. There should be normal signals (with normal spacing) between any exit and the next entry signal.
- in between two consecutive combos, two philosophies: do not signal versus normal signal.
- Do not signal between combos: this way trains don't get stuck if combo goes red. ATM, I lean this way
- Do signal: this sends a stronger signal to pathfinder about what's going on
PBS TREES
- using a pbs to split, pretend like the output is an exit signal in the normal presignal tree: leave one train length before next signal. If you can't fit a train length - it is similar to the combo signal in pre-signaling. If using a PBS, DON'T PUT ANY SIGNALS between the first entry PBS and wherever you can put the exit signal. Subtle difference - PBS splits start counting after the PBS signal, while pre-signals start counting at the location of the exit pre-signal.
- don't mix PBS and pre-signals in same tree