When disabling freeform edges after they were enabled, the tiles
at the northern borders of the map were turned from void to water
by simply setting their type to MP_WATER, which is wrong, because
they were left as owned by player 0, since their owner information
was not updated. Use MakeSea instead, which gets it right.
(cherry picked from commit 39408d6cc4080760f5a58d60cbed9f2ea584496f)
This reverts the house picking/placing patch back to v2.
This is to fix house placement/town growth desync issues introduced in v4.
# Conflicts:
# src/settings_gui.cpp
# src/settings_type.h
# src/town_gui.cpp
* Revert breakdown_chance to (mostly) its original behaviour.
* Create a new breakdown_chance_factor to hold breakdown_chance
from improved breakdowns logic.
* Revert airport crash probabilities back to original behaviour, with
modified behaviour only during emergency landings.
* Low power breakdowns now only reduce the power of the engine which
has broken down.
* Low power breakdowns no longer reduce speed directly.
* Add callback function to run whenever improved breakdowns setting
is changed. Reset breakdown_chance_factor where required.
* More whitespace/formatting...
This is similar to the PATX chunk.
Minor refactoring to enable some code sharing between two chunks.
Fix MakeSettingsPatxList always regenerating cache.
Update documentation of PATX chunk structure.
This is useful for loading settings from legacy/special versions,
where the corresponding setting is somewhere else and/or a PATX setting,
with duplicating all the info.
Use this to load SpringPP settings which have a corresponding setting.
Notes on conflict resolution:
* MarkTileDirtyByTile gained an extra param on both sides of the merge
Move bridge level offset to be after zoom level param, as it's used less.
* Add zoom level params to MarkBridgeDirty functions
* Fix undefined behaviour in colour_index cycling in ViewportMapDraw
Conflicts:
src/clear_cmd.cpp
src/pbs.cpp
src/rail_cmd.cpp
src/toolbar_gui.cpp
src/train_cmd.cpp
src/vehicle.cpp
src/viewport.cpp
src/viewport_func.h
with support for tests on individually versioned features as well as
savegame versions.
This is mainly for improved handling of features added to patchpacks.
The current status-quo of picking a random number for the savegame
version when releasing a patch breaks loading of savegames from newer
trunk savegame versions, with or without the same patch applied, as
savegame upgrade code is not run, which can also lead to crashes on load.
Instead don't change the savegame version (but set the high bit to
keep trunk versions away), but instead include the versions of individual
features using a separate mechanism.