diff --git a/.changelog b/.changelog
index ace7f93b70..555d7f356d 100644
--- a/.changelog
+++ b/.changelog
@@ -1,117 +1,23 @@
-1.10.0-RC1 (2020-02-09)
+1.10.2 (2020-06-01)
------------------------------------------------------------------------
-Feature: Allow server to supply a reason to kicked/banned clients (#7859)
-Feature: [NewGRF] Station variable 6A, querying GRFID of nearby station tiles (#7956)
-Feature: Improved logic of sharing industry production between 3 or more stations (#7922)
-Feature: Highlight the item under mouse cursor in file browser (#7900)
-Feature: [GS] Methods to change town rating of companies (#7898)
-Feature: [NewGRF] Callback profiling command (#7868)
-Feature: Add a setting to show the name of the NewGRF of a vehicle in the build window (#7852)
-Feature: Ability to filter industry directory window by cargo (#7843)
-Feature: Minimap screenshot type (#7817)
-Feature: [GS] Methods to control engine availability of a specific company (#7791)
-Feature: Configurable game ending year (#7747)
-Feature: Separate window for taking screenshots (#7550)
-Change: Move autorenew setting to basic category (#7984)
-Change: Improved algorithm for transfer feeder payments (#7935)
-Change: Show volume sliders with wedges instead of boxy slider (#7902)
-Change: Auto-restart loads the original resources (e.g. save or scenario) again (#7688)
-Change: Improve readability of integer lists saved to config files (#7396)
-Fix #7976: Crash when attempting to kick the host via rcon (#7985)
-Fix #7592: Road vehicles no longer balanced between multiple road stop stations (#7979)
-Fix: Station rating effects affecting too large area (#7977)
-Fix #7974: Crash when Ctrl+click to show a collapsed vehicle group (#7975)
-Fix #7969: Crash when executing a recursive console alias (#7973)
-Fix #6566: Very long loading of the maximum "zoom out" level at high resolutions (#7968)
-Fix #7952: Crash when switching input languages (#7953)
-Fix: [OSX] Don't show a crash/assertion message box for a GUI-less video driver (#7934)
-Fix #7925: Corrupt savegames could lead to corruption of the titlegame (#7932)
-Fix: [Fluidsynth] Music notes from previous song were not properly reset (#7930)
-Fix: Invalid string usage within music window (#7928)
-Fix: Non-deterministic name sorting in industry directory window (#7915)
-Fix #7899: Various issues with town list window sorting (#7906, #7916)
-Fix #7587: Fix possible crashes when loading old save games with invalid waypoint positions (#7894)
-Fix: Avoid a crash by properly resetting timetable duration when loading old savegames (#7894)
-Fix: Possible crash when post road-works cleanup removes all road pieces (#7903)
-Fix #7891: Fix crash when loading save from 1.7.2 (#7892)
-Fix #7887: Missing sound effects for some main toolbar buttons (#7888)
-Fix #6667: Avoid confusion by also recalculating bridge costs for 'spectated' AI companies (#7884)
-Fix: Allow old NewGRF industries to hide in/out cargo slots (#7882)
-Fix: [Windows] Fix bootstrap GUI with Uniscribe but no Freetype (#7878)
-Fix: Missing keycodes for hotkeys.cfg (#7850)
-Fix #7625: Ensure road infrastructure cost is correctly updated when upgrading your own roads (#7628)
-Fix #7088: Avoid crash by closing AI/GS textfile windows when changing their in-game slot (#7094)
-
-
-1.10.0-beta2 (2019-12-25)
-------------------------------------------------------------------------
-- Feature: [Script] More error mappings (#7857)
-- Feature: Ctrl+Click on a vehicle in the vehicle group window selects and scrolls to the vehicle's group (#7800)
-- Feature: Ctrl+Click on the vehicle details button in the vehicle view window opens the vehicle group window focused on the vehicle (#7800)
-- Feature: Add a button to the vehicle advisory news window to open the vehicle's group window (#7800)
-- Feature: Ctrl+Click on a vehicle in the vehicle list window opens the vehicle group window focused on the vehicle's group (#7800)
-- Fix: Custom sea level default value is now equal to minimum value (#7866)
-- Fix: [NewGRF] Various tracktype fixes (#7863)
-- Fix: Infrastructure total update when removing tram road stop (#7856)
-- Fix #7847: Use ViewportSign coordinates for sign Kdtree coordinates (#7849)
-- Fix #7836: Check coherency of NewGRF parameter min/max (#7840)
-- Fix #7673: [Script] Allow removal of custom town text (#7834)
-- Fix: Crash when displaying an error message at map edges (#7833)
-- Fix #7783, #7816: [SDL2] Fix input handling in edit context (#7825)
-- Fix #7697: Tile query on HQs did not display cargo correctly (#7824)
-- Fix #7820: Possible game crash when removing oil rig (#7821)
-- Fix #7606: Rare crash when trying to clean up a crashed script (#7819)
-- Fix #7784: [SDL2] up/down/home/end key behaviour (#7815)
-- Fix #7631: 16 out cargo support for industry directory (#7809)
-- Fix #7646: Crash on random map generation failure (#7805)
-- Fix #7430: Only reset time since pickup when train visits station if it has room to load (#7595)
-- Fix #5405: Aircraft could route to depots outside their range (#7104)
-
-
-1.10.0-beta1 (2019-10-29)
-------------------------------------------------------------------------
-- Feature: Configurable minimum age for companies before allowing share trading (#7780)
-- Feature: Filter on town list window (#7621)
-- Feature: Ability to show Newspaper and Ticker messages in parallel (#7612)
-- Feature: Show coverage area for stations and towns (#7446)
-- Feature: Collapsible vehicle groups (#7417)
-- Feature: More flexible docks - can now have multiple per station, ships can use any part of dock (#7380)
-- Feature: [NewGRF] Railtype flags to allow/disallow 90 degree curves (#7352)
-- Feature/Change: Non-rectangular catchment area for sparse stations (#7235)
-- Feature: Improved performance for road vehicle pathfinding (#7261)
-- Feature: Option to show local authority boundary of towns (#7025)
-- Feature: Experimental method of town cargo generation that scales linearly with population (#6965)
-- Feature: [NewGRF] RoadTypes (NRT) (#6811)
-- Add: [Win32] Select MIDI device by port name (#7666)
-- Add: 'getsysdate' console command (#7658)
-- Add: Currencies NTD, CNY, HKD (#7596)
-- Add: Icons to vehicle construction drop down lists (#7358, #7485)
-- Add: Security warning to players that company passwords are not truly secure (#7351)
-- Add: [Script] Various API functions for managing vehicle groups (#7225, #7336, #7716)
-- Add: SDL2 video driver (#7086)
-- Change: Inactive industries do not make sound effects (#7752)
-- Change: [Win32] Use native GDI engine for rendering fonts (#7572)
-- Change: Scale oil refinery edge distance limit by map size (#7514)
-- Change: Do not display a news message about old vehicles when a replacement for it is activated (#7401)
-- Change: When filtering purchase list by cargo type, buy button now performs a refit if required (#7301)
-- Change: Don't apply forbid 90 deg turn settings to ships, and make penalties for turns configurable (#7289, #7372)
-- Change: Make the chance of an aeroplane crashing at an airport with a short runway independent of plane crash setting (#7302)
-- Change: Keep town growth rate in sync with house count (#6777)
-- Fix #6219: Improve helicopter's ability to takeoff from commuter and international airports (#7710)
-- Fix #6407: Show snowy ground sprites for train depots (#7671)
-- Fix: Power/running cost sorting algorithm was not correct when power was higher than running cost (#7561)
-- Fix: Tweaks to small-map colours to make dark blue company more visible (#7436, #7450)
-- Fix: [SDL] Do not offer video smaller than 640x480 (#7442)
-- Fix: Incorrect display of industry production around tiles (#7426)
-- Fix: Show industry name in Land Area Information window for industries with neutral stations instead of just 'Oil Rig' (#7349)
-- Fix: Remove redundant and broken file lookups when loading base sets (#7348)
-- Fix: Always report error when ordering a road vehicle to wrong type of road stop (#7316)
-- Fix #7043, #7274: Improve performance when creating towns during world creation (#7284)
-- Fix #7062: Remove ship max order distance (#7279)
-- Fix #7189: Fluidsynth volume gain too high (#7253)
-- Fix: Add setting for whether industries with neutral stations (e.g. Oil rigs) accept and supply cargo to/from surrounding stations to fix exploit as old as TTO (#7234)
-- Fix: Properly reset dropdown menu windows after changing AI/GS settings (#7092)
-- Remove: DOS, MorphOS, AmigaOS & BeOS support (#7326, #7388)
-- Remove: Original Path Finder (#7245)
+Add: Ubuntu 20.04 packages (#8127)
+Fix: [OSX] Possible crash on failure to set colourspace (#8181)
+Fix #8166: Prevent crash from a NewGRF with an invalid RoadType (#8180)
+Fix #8024: Make Online Content GUI more responsive while loading (#8179)
+Fix #7970: Disable event loop when generating crash dump (#8176)
+Fix: [Build] Compatibility with modern Visual Studio (#8170)
+Fix: Trees would disappear completely after a few years if tree spread was disabled (#8160)
+Fix #8155: Roadtype speed limit in scenario editor toolbar dropdown was doubled (#8156)
+Fix: Desync after house replacement (#8151)
+Fix #8137: New clients can't join (desync) after funding an industry (#8140)
+Fix #8132: Corrupted savegame with station with multiple owners caused a crash (#8134, #8142)
+Fix: Stop gamelog when recovering from a savegame load error (#8133)
+Fix: Exceptionally unlikely issue when reading MIDI files (#8125)
+Fix #8119: Docking areas were not properly updated when clearing, causing desyncs (#8124, #8130)
+Fix #8117: Memory leak for incoming admin port packets (#8122)
+Fix: Non-roadbridges potentially had roadtype information set (#8111)
+Fix #8108: Possible crash on loading TTD savegames with phantom oil rigs (#8109, #8110)
+Fix #8093: Build & refit test run changed game state and could cause desyncs (#8103)
+Fix: [Script] AreWaterTilesConnected did not handle aqueducts properly (#8074)
diff --git a/.gitignore b/.gitignore
index 3e74133dfe..709b88727a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -4,15 +4,11 @@ bin/ai/*
!bin/ai/compat*.nut
!bin/ai/regression
!bin/data
+!bin/baseset
bin/baseset/*
!bin/baseset/openttd.grf
!bin/baseset/opntitle.dat
!bin/baseset/orig_extra.grf
-!bin/baseset/orig_*.obg
-!bin/baseset/orig_*.obs
-!bin/baseset/no_sound.obs
-!bin/baseset/no_music.obm
-!bin/baseset/orig_*.obm
!bin/game
bin/game/*
!bin/game/compat*.nut
diff --git a/.ottdrev b/.ottdrev
index ffc8f8d055..913eaf5b7e 100644
--- a/.ottdrev
+++ b/.ottdrev
@@ -1 +1 @@
-1.10.0-RC1 20200209 0 49d2a07f667b8e9a8d984b35b2a41302c70c3c1e 1 0
+1.10.2 20200601 0 430ce20f8db711cff7dafcd6cadbce2ff6514e1f 1 1 2020
diff --git a/.release_date b/.release_date
index 4fe212d38e..5d413e5b61 100644
--- a/.release_date
+++ b/.release_date
@@ -1 +1 @@
-2020-02-09 12:28 UTC
+2020-06-01 21:22 UTC
diff --git a/bin/baseset/orig_extra.grf b/bin/baseset/orig_extra.grf
new file mode 100644
index 0000000000..728a8b2555
Binary files /dev/null and b/bin/baseset/orig_extra.grf differ
diff --git a/src/rev.cpp b/src/rev.cpp
deleted file mode 100644
index f5c835ae81..0000000000
--- a/src/rev.cpp
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * This file is part of OpenTTD.
- * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
- * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see .
- */
-
-/** @file rev.cpp Autogenerated file with the revision and such of OpenTTD. */
-
-#include "stdafx.h"
-#include "core/bitmath_func.hpp"
-#include "rev.h"
-
-#include "safeguards.h"
-
-/**
- * Is this version of OpenTTD a release version?
- * @return True if it is a release version.
- */
-bool IsReleasedVersion()
-{
- return HasBit(_openttd_newgrf_version, 19);
-}
-
-/**
- * The text version of OpenTTD's revision.
- * This will be either
- * - "", like "..[-RC]",
- * - "-g" in "master",
- * - "--g" in other branches, or
- * - "norev000", if the version is unknown.
- *
- * The major, minor and build are the numbers that describe releases of
- * OpenTTD (like 0.5.3). "-RC" is used to flag release candidates.
- *
- * shows a "M", if the binary is made from modified source code.
- */
-const char _openttd_revision[] = "1.10.2";
-
-/**
- * The text version of OpenTTD's build date.
- * Updating the build date in this file is the safest as it generally gets
- * updated for each revision in contrary to most other files that only see
- * updates when they are actually changed themselves.
- */
-const char _openttd_build_date[] = __DATE__ " " __TIME__;
-
-/**
- * The git revision hash of this version.
- */
-const char _openttd_revision_hash[] = "430ce20f8db711cff7dafcd6cadbce2ff6514e1f";
-
-/**
- * The year of this version.
- */
-const char _openttd_revision_year[] = "2020";
-
-/**
- * Let us know if current build was modified. This detection
- * works even in the case when revision string is overridden by
- * --revision argument.
- * Value 0 means no modification, 1 is for unknown state
- * (compiling from sources without any version control software)
- * and 2 is for modified revision.
- */
-const byte _openttd_revision_modified = 0;
-
-/**
- * Indicate whether this is a tagged version.
- * If this is non-0, then _openttd_revision is the name of the tag,
- * and the version is likely a beta, release candidate, or real release.
- */
-const byte _openttd_revision_tagged = 1;
-
-/**
- * The NewGRF revision of OTTD:
- * bits meaning.
- * 28-31 major version
- * 24-27 minor version
- * 20-23 build
- * 19 1 if it is a release, 0 if it is not.
- * 0-18 used to be the SVN revision, now just last revision before switch to git
- *
- * The 19th bit is there so the development/betas/alpha, etc. leading to a
- * final release will always have a lower version number than the released
- * version, thus making comparisons on specific revisions easy.
- */
-const uint32 _openttd_newgrf_version = 1 << 28 | 10 << 24 | 0 << 20 | 1 << 19 | 28004;
diff --git a/src/saveload/station_sl.cpp b/src/saveload/station_sl.cpp
index b0e91b4e75..1d3612ae31 100644
--- a/src/saveload/station_sl.cpp
+++ b/src/saveload/station_sl.cpp
@@ -141,17 +141,6 @@ void AfterLoadRoadStops()
}
}
-/**
- * (Re)scan for station docking tiles after loading a savegame.
- */
-void AfterLoadScanDockingTiles()
-{
- /* Scan for docking tiles */
- for (Station *st : Station::Iterate()) {
- if (st->ship_station.tile != INVALID_TILE) UpdateStationDockingTiles(st);
- }
-}
-
static const SaveLoad _roadstop_desc[] = {
SLE_VAR(RoadStop, xy, SLE_UINT32),
SLE_CONDNULL(1, SL_MIN_VERSION, SLV_45),