Sid Meier's Railroads! HookedGamers.com Wiki Maintenance Page, Restored
Why care about maintenance costs? Because it can mean the difference between winning or losing, is why. If your trains become too old, the fees can creep up and then overwhelm your income, sending you into an irrecoverable downward spiral (no cash to replace high-maintenance engines), unless you do something drastic like sell stock or industries. Don't wait til it's too late... upgrade your engines when it's cost efficient.
The Lubrication Patent
- As it says, it halves all maintenance costs. In practical terms, it halves both the Base Maintenance Cost and the Periodic Maintenance Increase (see below).
- Its effects are immediate and ubiquitous. All trains immediately have their costs halved, from that point on. You do not need to buy a new train to have it take effect.
- Maintenance fees can be a huge cost to a railroad. Take a look at your Finances (F1) screen. What's the worth of winning a Lube Patent auction to you? Three times your Train Maintenance for the most-recent full year, is how much. How does the math work?
- Exclusive rights to a patent give you 10 years exclusive use, and this patent halves your maintenance costs. Ok, that's simple enough.
- The Finance screen has a glitch; <okay Wayback page> columns actually show info for two years, not one. So the most-recent completed column (to the right of "This Year") should be multiplied by 5 to give 10 years of maintenance fees.
- You'll be saving half of that with the patent, so only multiply by half of 5, a factor of 2.5.
- But add a bit for trains aging over time, and new trains added, over the next 10 years. Why not call it a factor of 3? A rough rule of thumb is 3 times the most recent full maintenance column equals your savings.
- To make a long story short, the Lube Patent can be worth nearly a million to a busy railroad for a decade. Bid wisely at auction!
Base Maintence Cost (BMC)
- This is the cost shown in the Roundhouse, as "Maint" on the main screen for a new train, or as Initial Maintenance Cost in the manual. (Note that the manual has occasionally been updated by patches.)
- This cost is incurred every time maintenance is performed, for the life of the train. In a sense, it is "independent" of the Periodic Maintenance Fee.
Periodic Maintenance Increase (PMI)
- Every 5.2 years (see Schedules), your maintenance fee increases by this amount.
- Unlike the BMC, the PMI is the same for all trains for a given scenario. Its value is determined by the Difficulty level, and whether you have the Lube Patent:
Difficulty Got Lube? Level No Yes Investor 500 250 Financier 550 275 Mogul 600 300 Tycoon 650 325 Robber Baron 700 350
- As you can see, it increases by 10% for each Difficulty level over Investor.
There are two important rhythms to the maintenance fees your trains incur. But first, a word about ticks:
- As revealed in patch 220.127.116.11, Railroads! uses an internal clock of game ticks. The timescale <okay Wayback page> is 16 ticks per month, unless you change it. This is 192 ticks per year (12*16).
- Currently, no one has reported how changing the timescale affects maintenance schedules. Presumably it has no effect (if maintenance is based on date), or maintenance scales directly with timescale (if it's based on ticks).
- Therefore, all the statements on this page assume you are using the default timescale of 16 ticks per month. If/when research shows maintenance depends on the timescale - and if lots of folks start using a different one - someone should update this page.
Now that ticks are explained, on to the schedules:
- Maintenance occurs every 40 ticks (2.5 months; 40/16). This doesn't easily divide into months, so it doesn't seem to follow a repeating monthly pattern except over long time periods.
- There are 4.8 maintenances per year (12/2.5 or (12*16)/40).
- Every 1,000 ticks (5.2 years; 1000/16/12), the maintenance fee increases by the Periodic Maintenance Increase. So,
- at 5.2 years, the fee becomes BMC + PMI,
- at 10.4 years it's BMC + 2*PMI,
- We'll call these 5.2-year periods, Maintenance Periods.
- There are 25 maintenances for each Maintenance Period (1000/40). Except that the first one only has 24. (You receive your first Periodic Maintenance Increase on the 25th maintenance, not the 26th. The second increase on the 50th, etc.) Apparently the maintenance counter for a new train is set to 1 when it might should've been 0, shrug.
Reading the Game
- The Trains Report (F4) shows maintenance costs. However, these are actually the costs for the route, not the engine. To wit, if you upgrade an engine, F4 retains maintenance numbers from the previous engine, and adds costs for the new engine on to it. You have to start a new route if you only want to see numbers for that engine.
- The "Last 5 Years" column on F4 uses a "first in, first out" method: It tracks the last 25 maintenance fees incurred, and drops the oldest one each time maintenance occurs. Thus if you have upgraded your engine, the "Last 5" will also be showing fees for the previous engine, until 5 years have passed.
- If you slow the game down and watch the Profit (on the main screen) for a train more than 5 years old, you will see an odd thing: Profit will go up briefly (even though the train has not made a delivery) and then go back down. What's happening is that the maintenance cost incurred 25 instances ago is being dropped, then the new fee is imposed. Here's an example:
- Take an American engine that's 12 years old, in an Investor game without Lube. It's BMC is $2,000 and the PMI (for all trains in that scenario w/o Lube) is $500. The American is in its third Maintenance Period; it's fee is currently BMC + 2 PMI = $3,000. Let's say its current Profit is $100,000.
- First, Profit rises to $102,500. This is the fee from 25 maintenances (5.2 years) ago being dropped, when it was in the second maintenance period (BMC + 1 * PMI = $2,500). Dropping a negative number leads to a rise in Profits.
- Then, the current maintenance fee of $3,000 gets subtracted. Now Profit says $99,500 ($102,500 - $3,000).
- Overall, the train's Profit went from $100,000 to $99,500.
- This odd turn of events evolves from how Profit wants to show you how the train is doing recently, not over its whole lifetime. Just like in F4, Profit is showing the last 5 year's info.
- Notice that, due to how this little price jag is always the difference between the current Maintenance Period's fee minus the previous one's, it always equals the Periodic Maintenance Increase, across the whole jag ((BMC+c*PMI) - (BMC+(c-1)*PMI) = 1 PMI). In the example, it went down by $500 - the PMI for that scenario.
- Also remember that if you upgraded the train less than 5 years ago, the old fees that are dropped will be for the previous train. Thus, the difference will not be $500; the new engine might even have a different BMC than the old one.
- The Lifetime Maintenance (and Profit) on the F4 screen do not reflect these price jags at all. Your cumulative lifetime numbers simply rise, over all time. It's only the removal of stuff 5 years ago that makes for the jags n the 5 Year numbers.
- The same things apply to 5-Year Revenue on F4 - it will also be dropping revenues from 5 years ago, and so it too can go down "without apparent reason". But it makes sense considering that it's showing you how the train's been doing recently.
Trade-In Value (TIV)
Trade-In Value (TIV) follows the simple hyperbolic
Depreciation = x / (x+25)
where x is the age of the train, in months. This equation is 0% at 0 months (no value is lost yet as of the time you buy it), 50% at 25 months, 80% at 100 months (8.33 years), and tails off to 100% at infinity (when 25 becomes insignificant next to x). So your engines age very quickly, but still retain some value, even after 100 years (it's 2% then, in fact). If you realize you assigned the wrong engine, change it quickly. If you have the game paused (or catch it before 16 ticks are up), you can still cash in for for its whole value - as if your mistake never happened. TIV is only updated every 16th tick; a full month must pass, which is not the same as a new month showing in the game, unless you bought it the first tick of a month. Even if you don't catch it in 16 ticks, all is not lost... In the first month, they only lose 3.85% of their value (1/26th), etc.
The TIV formula has been tested in different scenarios (GB, GE, US), Difficulties (Inv., Fin., Rob.) and times (1830, 1921). None of these matter. TIV always uses the same equation. The 22 Sept. 2006 ReadMe (in your Start menu Railroads! folder) says that TIV depends on Difficulty level, but this was not found to be true.
If you are doing math based on the Maintenance Number, the equation becomes N/(N+10). There are 10 Maintenances every 25 months.
Maintenance Fee Equation
If you're interested, here's an equation that shows your current maintenance fee: BMC + ( INT(Year/5.2) * PMI ). The "5.2" actually equals 5.20833 = 1000/12/16 = 125/24 (simplified).
For best results, use it when a new year just started for a train, so you know the engine's precise age. If you want to add months, add e.g. January as 0/12 and December as 11/12. (New years start a whole number.)
Your results may be off by a PMI if you are right at the boundary of a Maintenance Period, and the tick marker is a little different than you think.
Optimal Replacement Time
Now for the fun part: When should I upgrade my trains?
The optimal replacement time (unless someone has a better idea!) was computed by:
- Rows of maintenance instances (1, 2, 3 ... 600) were constructed, and a long spreadsheet was made of the maintenance costs over time for a given engine. The PMI increases every 25 maintenances (5.2 years), of course. These maintenance fees were cumulated down the table, just like the Lifetime Maintenance cost shown on F4.
- A new column was added with the Engine Replacement Cost for each row. This is the New Engine Cost minus the Trade-In Value, at that point in time.
- The total cumulative maintenance and the replacement cost for each row were divided by the elapsed time. This value can be called the Annualized Replacement Cost (ARC):
Annualized Lifetime Maintenance + Engine Replacement Cost Replacement = ---------------------------------------------- Cost Elapsed Years
- The minimum ARC across this very long table was determined. We'll call this the Optimal Replacement Time (ORT).
- A "relaxed ORT" was output, as well; see below.
Graphs of the ARCs versus time have a "Nike swoosh" curve with the following properties (see inset):
- At first, there is little or no maintenance cost - but it's exorbitant to turn right around and buy a new engine. (A first month's depreciation of e.g. $3,850 annualizes x12 to $46k/year.)
- As depreciation slows its free fall and maintenance fees start accumulating, the curve slows, then turns...
- Then, as maintenance fees continue to increase over time, the graph keeps moving up, gradually. Over a very long time, the fees become obscene.
- Each engine (and graph) have exactly one place which is the minimum.
- After the initial free fall, costs stay relatively level through a given Maintenance Period, because equal time increments are added with each maintenance (i.e., they simply extend the average maintenance cost), whereas the ERC decreases by adding time. Thus, each graph's minimum always falls on the last maintenance in some Maintenance Period, just before a new PMI kicks in which raises the average above the minimum.
ORTs For All Trains
A data feeder tool was used to calculate results for the 450 possible combinations (45 Engines, 5 Difficulty levels, and 2 Lube levels). The results are shown in this Excel spreadsheet.
All but the earliest trains have a wide "trough" around their ORT. Due to this, I included a relaxed replacement time (RRT). This is the time when the ARC has risen to 15% of the optimal ARC. As you can see, the relaxed time is roughly twice the optimal time. It takes twice as long for maintainence to build up until the annualized cost is 15% more than at its minimum ARC. The RRT helps show how much "play" there is in the numbers.
Unlike the ORT, the RRT is not necessarily at the end of a Maintenance Period.
The ARC doubles as a precise value of what a train costs you per year. This is a critical number for optimizing your economics. Examples:
- Express trains (passenger and mail) are highly dependent on speed, and somewhat dependent on distance. As shown elsewhere, 50 mph is the break-even point for where speed matters. (That's for actual speed, under load... at less than 50, it's worse to go long distances.) At 60 mph there is a 50% speed+distance bonus vs. 50 mph; at 120 mph, a 100% bonus. (This is not linear, but it's how the data is! It's a tough thing to test.)
- Most of this is due to speed, not distance. Distance only appears to scale versus revenue by about 20% (preliminary data not yet published; this 20% is buried in the speed+distance results directly preceding - RK).
- Will a given express train benefit from a newer, more expensive engine that can go a little faster?
- You can easily see your express train's revenue with F4. Divide "Last 5 Years" by 5 to get a yearly number.
- How much faster might it go, and how much will this add to the express revenue? If not sure, try adding the new engine, and compare what the Routing screen says your mph will be, with that many cars. Use a sliding scale for the 50% at 60 mph, to 100% at 120 mph.
- Multiply your yearly revenue by that percent increase. How much is it a year?
- Compare this to the difference in the ARC for the new train versus the ARC of the old one. If the increased revenue per year is greater than the increase in ARC per year, it sounds like a winner.
- Be very wary of making a route longer when adding a new engine, for all trains except the last, very powerful ones in a scenario. Distance does not count as much as speed, and the added distance may mean:
- a longer delay in pickups, and thus
- more passengers and mail, resulting in
- a slow train, and
- your greedy scheme backfiring. Now you're stuck with an expensive, slow train that delivers less revenue, and costs more to operate!
- Also beware of urba that have not maxxed into Metropolises. If the urba increases in size, it will have more express to pick up, which will slow your train. Keep some buffer in your train's capability, for this eventuality.
The middle and middle/late trains may look like a real boost in speed, finally getting over the 50 mph mark. But you must be able to actually do over 50 mph with full load, or the more expensive trains will not give you a bonus. So be wary of adding distance or having urba increase in size.
- Freight (all but mail and passengers) is not dependent on speed or distance.
- This dictates that you should use the train with the lowest ARC that gets the job done (can handle the resource). This can easily be the earliest, cheapest train in your scenario, if a resource is close to a terminal.
- The earliest trains may be overwhelmed if your resource increases in size. But the earliest engines also have the shortest ORTs... so just upgrade next time you replace them.
- Of course, use all the other routing optimization tricks (to be posted to wiki later).
- When considering whether to make an industry close to a resource, or use an existing farther one, one consideration is the extra ARC cost... Farther distances need beefier trains with higher ARCs, but they will also have more time between deliveries (racking up maintenance).
- Compare how, in an infinitely long game, it would always be better to have all freight deliveries with as short a distance as possible, even if it means buying new industries and re-arranging lots of track. The one-time expenses of industry and track are a constant that's dwarfed by ongoing cost savings in a very long game. But no games are infinitely long; how long is long enough?
- The question is answered by comparing ARCs. (To be posted - RK) <Actually, it probably never will be. Except maybe in some alternate perfect afterlife. - RK2>