Introduce a new default algorithm for town cargo generation (passengers and mail), and a game setting to choose between the new and original algorithm.
The original town cargo generation algorithm has the property of the generated amount relating to the square of each building's population, meaning large towns easily produce more cargo than can realistically be transported. The problem is excessive cargo is amplified if playing with cargodist.
The new algorithm introduced instead has a linear relation to the population. The result is that smaller towns will produce slightly more cargo, while the largest towns will produce about a fourth of what they would with the original algorithm.
Existing savegames will use the original algorithm, while new games will default to the new algorithm.
finnish: 39 changes by hpiirai
french: 4 changes by glx
hungarian: 4 changes by Brumi
russian: 3 changes by Lone_Wolf
korean: 20 changes by telk5093
croatian: 5 changes by VoyagerOne
This only affects failed town generation, as towns do not delete bridges under any other circumstances.
The existing test performed badly with a large number of towns due to having to calculate the
nearest town, and also by its nature assumed a bridge was built by the nearest town, leading
to bridges of nearby large towns be removed incorrectly.
If we gain the ability to quickly retrieve the correct town (which is _not_ the nearest town) from the bridge, this change should be reviewed.
Group names are visual identifiers, and do not need to be unique.
Group sorting already falls back to group ID if names are the same, so that sorted
list position is stable.
When replacing an airport with another, cancel current orders of type 'go to depot' from aircraft still heading to it if the rebuilt airport doesn't have a hangar (helicopter vs heliport), or if the airplane can't land on the rebuilt airport (airplane vs helistation).
Removes 'go to hangar' orders from all aircraft when replacing an airport with hangar with another without hangar (heliport).
OpenTTD sources are still written in a way to work down to OSX 10.4 or so, as long as you can obtain a C++11 capable compiler. 10.9 is the minimal useful C++11 target using only Apple stuff out-of-the-box.