FS#6363 - Inflation cutoff uses less-appropriate trigger criterion

Attached to Project: OpenTTD
Opened by Simon Smith (Simons_Mith) - Sunday, 16 August 2015, 02:49 GMT
Last edited by andythenorth (andythenorth) - Sunday, 20 August 2017, 08:50 GMT
Type Bug
Category Core
Status Closed
Assigned To No-one
Operating System All
Severity Low
Priority Normal
Reported Version 1.5.1
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No


Start a game in 1900 with inflation on.
Wait till 1901.
Turn inflation off.
Wait till 2069.
Turn inflation on again.
In 2070, after 170 years, inflation turns off forever, even though it has only actually run for a couple of years out of the 170.

And even though the game config screen says inflation is still on, it is no longer active, which is a bit misleading.

OK, 170 years of /constant/ inflation probably is enough of a challenge. But a better criterion for whether it should be turned off is not [years since it was first activated] but [inflation multiplier >= some unplayable threshold] (which probably ought to be configurable).
Can that be fixed, please?
This task depends upon

Closed by  andythenorth (andythenorth)
Sunday, 20 August 2017, 08:50 GMT
Reason for closing:  Won't fix
Additional comments about closing:  Thanks for the report. This can be added to the list of "inflation really just doesn't work" issues. AFAICT, nobody is interested in touching current inflation model, either to improve or fix. It's a poor design, and causes repetitive bug reports about core game and newgrf, and sinking time into the current implementation is unlikely to appeal to anyone.

Plausible future for inflation is either:
1. it's unchanged, because nobody wants to touch it.
2. it's removed entirely from core, and savegames using inflation are migrated to drop it.
3. as 2, but also an economy scripting layer is provided (similar to GS or newgrf), which can control inflation, amongst other things. No design for this currently exists, and it may not be a goal currently or ever.

Flyspray is being cleaned up so closing this one, as the specific issue won't be fixed. Thanks for the report.
Comment by James (james1101) - Friday, 30 June 2017, 21:34 GMT
Some suggestions for the threshold based on an interest rate R:
R = 2% -> multiplier is 30
R = 3% -> multiplier is 163
R = 4% -> multiplier is 888
These are just default values.
Calculated using compound interest with PV = 1, frequency = monthly, t = 170 yrs.