Commit Graph

1107 Commits

Author SHA1 Message Date
Jonathan G Rennison
b9e322ec7a Add mechanism to override setting names used in config file 2022-12-09 19:56:17 +00:00
Jonathan G Rennison
f32733ef22 Command: Replace binary_length field with auxiliary data
Use for CMD_ADD_PLAN_LINE
2022-12-07 21:14:34 +00:00
Jonathan G Rennison
6d4474b84e Merge tag '13.0-beta2' into jgrpp
# Conflicts:
#	src/cheat_gui.cpp
#	src/company_gui.cpp
#	src/console_gui.cpp
#	src/depot_gui.cpp
#	src/error_gui.cpp
#	src/gfx.cpp
#	src/graph_gui.cpp
#	src/group_gui.cpp
#	src/lang/english.txt
#	src/lang/korean.txt
#	src/lang/polish.txt
#	src/misc_gui.cpp
#	src/network/network_content_gui.h
#	src/newgrf_debug_gui.cpp
#	src/order_gui.cpp
#	src/rail_gui.cpp
#	src/road_gui.cpp
#	src/settings_gui.cpp
#	src/settings_type.h
#	src/station_gui.cpp
#	src/subsidy_gui.cpp
#	src/table/settings/gui_settings.ini
#	src/timetable_gui.cpp
#	src/town_gui.cpp
#	src/train_cmd.cpp
#	src/vehicle_gui.cpp
#	src/viewport.cpp
#	src/water_cmd.cpp
#	src/widgets/dropdown.cpp
#	src/window_gui.h
2022-12-04 20:43:11 +00:00
Jonathan G Rennison
2eecf19edb Fix engine changes not updating build template train windows 2022-11-27 20:22:28 +00:00
Jonathan G Rennison
cf6f509859 Add setting flag to enable bool -> int config file load conversion 2022-11-17 23:23:29 +00:00
Jonathan G Rennison
7c3c92f8b8 Fix #10155: SyncCompanySettings sending old instead of new setting values (#10158) 2022-11-12 17:24:31 +00:00
Jonathan G Rennison
ff0bed96a4 Fix SyncCompanySettings not sending correct setting values 2022-11-12 13:44:11 +00:00
Jonathan G Rennison
2af2c56d19 Allow various settings to be changed in multiplayer
If the corresponding TTDPatch flag bit has not been observed by a NewGRF
2022-11-10 22:34:14 +00:00
Jonathan G Rennison
6459e62fff Merge branch 'master' into jgrpp
# Conflicts:
#	src/lang/english.txt
#	src/map_type.h
#	src/network/network_command.cpp
#	src/object_cmd.cpp
#	src/rail_cmd.cpp
#	src/road_cmd.cpp
#	src/road_func.h
#	src/saveload/afterload.cpp
#	src/saveload/saveload.h
#	src/settings_gui.cpp
#	src/string.cpp
#	src/table/road_land.h
#	src/table/settings/game_settings.ini
#	src/table/settings/world_settings.ini
#	src/tbtr_template_gui_main.h
#	src/train_cmd.cpp
2022-11-05 19:24:44 +00:00
Jonathan G Rennison
3b3c9c1c3a Fix #10129: Use after free in GRFLoadConfig invalid GRF error path (#10130) 2022-11-05 15:17:18 +01:00
Jonathan G Rennison
94de25ec10 Fix changing town zone settings not updating town zone radii
This could cause MP desyncs
2022-11-01 18:17:27 +00:00
Jonathan G Rennison
a8361cd608 Allow overriding town settings on a per-town basis
Add a setting for whether this is allowed for non-privileged
multiplayer clients
2022-10-23 22:07:51 +01:00
Jonathan G Rennison
f61562efef Fix network clients setting old company settings for new companies 2022-09-16 16:13:47 +01:00
Jonathan G Rennison
143230d8f2 Allow changing road vehicle driving side when all road vehicles in depots 2022-09-11 11:51:32 +01:00
Jonathan G Rennison
8c0eca28a8 Recalculated route step sprite sizes when changing zoom levels 2022-08-20 10:03:42 +01:00
Jonathan G Rennison
309f1b47d2 Only apply sprite_zoom_min setting when suitable zoom levels are available
Only discard sprite zoom levels when a suitable higher zoom level is
defined in the same colour mode

See: https://github.com/OpenTTD/OpenTTD/issues/9804
2022-08-14 10:45:06 +01:00
Jonathan G Rennison
856cea576f Fix infrastructure sharing checks not being executed when disabling 2022-07-15 21:48:41 +01:00
Jonathan G Rennison
22caac6529 Add game setting to limit train lookahead to signal aspect
In realistic braking mode when multi-aspect signalling enabled by GRF
2022-06-19 12:44:15 +01:00
Jonathan G Rennison
730b84e262 Fix load check of a savegame with realistic braking enabled triggering signal checks on current game 2022-05-26 01:13:46 +01:00
Jonathan G Rennison
c4e2175cc9 Merge branch 'master' into jgrpp 2022-04-29 18:00:33 +01:00
Jonathan G Rennison
03bdb28c02 Allow pre_cb to transform incoming enum value in ValidateEnumSetting 2022-04-29 17:54:18 +01:00
Jonathan G Rennison
2cbbae16da Add roadstop GRF properties to set bridge heights and disallowed pillars 2022-02-15 18:21:32 +00:00
Jonathan G Rennison
1084bb8566 Initial support for NewGRF road stops (bus and lorry stops) 2022-02-14 00:31:14 +00:00
Jonathan G Rennison
47f219d66d Settings GUI: Label sprite_zoom_min as should be left at default 2022-01-31 01:31:13 +00:00
Jonathan G Rennison
96d789dfbf Fix window preference save/load of build vehicle windows 2022-01-23 13:58:34 +00:00
Jonathan G Rennison
644bd0a325 Fix input/display of speeds in tracerestrict window in tiles/day mode 2022-01-11 21:38:19 +00:00
Loïc Guilloux
d62c5667cf Fix #9766: Don't write uninitialised data in config file (#9767) 2022-01-04 22:12:05 +01:00
Jonathan G Rennison
e993afcd99 Store encrypted company password hashes in server saves
Restore when loading back into the server if server has required secret
2022-01-03 03:09:32 +00:00
Jonathan G Rennison
87f0c20bc0 Add setting flag to run string setting change callbacks on config load 2022-01-03 00:01:21 +00:00
glx22
3069f805e2 Fix #9766: Don't write uninitialised data in config file
(cherry picked from commit 50304f7164d5c88a42dcc1d09648c3ec8b2faab5)

Fixes: #344
2021-12-27 13:18:49 +00:00
Michael Lutz
d85348b1d1 Codechange: Template the command callback function type to allow unpacked arguments. 2021-12-16 22:28:32 +01:00
Michael Lutz
13528bfcd0 Codechange: Un-bitstuff all remaining commands. 2021-12-16 22:28:32 +01:00
Michael Lutz
ccefa76a46 Codechange: Template DoCommandPInternal. 2021-12-16 22:28:32 +01:00
Michael Lutz
0f64ee5ce1 Codechange: Template DoCommandP to automagically reflect the parameters of the command proc.
When finished, this will allow each command handler to take individually
different parameters, obliviating the need for bit-packing.
2021-12-16 22:28:32 +01:00
Michael Lutz
7048e1522f Codechange: Move flags in CommandProc in front of the command arguments. 2021-12-16 22:28:32 +01:00
Michael Lutz
33ca4f2b99 Codechange: Let the compile generate the master command table out of templated command traits.
This is using a non-intrusive type-traits like templated system, which
allows compile-time validation that the command table and the command
enum match up.
2021-12-16 22:28:32 +01:00
Michael Lutz
a38bbefe1b Codechange: Untangle command code, flags and error string for DoCommand*. 2021-12-16 22:28:32 +01:00
Michael Lutz
549caca39c Codechange: Move command arguments to the back of the networked command function calls. 2021-12-16 22:28:32 +01:00
Jonathan G Rennison
583663bca1 Allow setting autosave interval to a custom number of days 2021-12-14 18:08:06 +00:00
Jonathan G Rennison
0cdaa8ef55 Remove use of std::from_chars and <charconv>
Replace it with another implementation to avoid compilation issues
on some platforms
2021-11-28 19:56:33 +00:00
Jonathan G Rennison
9ff8643fd9 Split config transparency settings into base and extra fields
This is to avoid incorrect settings when loading in trunk,
as the min/max clamping is not bitwise.
In particular having all options set in trunk when transparent vehicles
in tunnels was set.
2021-11-21 22:10:31 +00:00
Jonathan G Rennison
3373be7b0d Fix assertion failure in SyncCompanySettings 2021-11-03 01:07:09 +00:00
Jonathan G Rennison
3ef1a0943b Merge branch 'master' into jgrpp-beta
# Conflicts:
#	src/lang/chuvash.txt
#	src/lang/czech.txt
#	src/lang/english_AU.txt
#	src/lang/english_US.txt
#	src/lang/german.txt
#	src/lang/japanese.txt
#	src/lang/korean.txt
#	src/lang/latvian.txt
#	src/lang/russian.txt
#	src/tree_gui.cpp
#	src/vehicle.cpp
2021-11-02 21:11:11 +00:00
Jonathan G Rennison
324e90e5ac Merge branch 'master' into jgrpp-beta
# Conflicts:
#	src/lang/arabic_egypt.txt
#	src/lang/english.txt
#	src/lang/greek.txt
#	src/network/core/tcp_connect.cpp
#	src/network/network_client.cpp
#	src/network/network_client.h
#	src/pathfinder/npf/npf.cpp
#	src/pathfinder/yapf/yapf_ship.cpp
#	src/rail_gui.cpp
#	src/settings_table.cpp
#	src/settings_type.h
#	src/station_cmd.cpp
#	src/table/settings/gui_settings.ini
#	src/town_cmd.cpp
#	src/widgets/rail_widget.h
2021-11-02 19:23:24 +00:00
Jonathan G Rennison
f764fcfb1f Merge branch 'master' into jgrpp-beta
# Conflicts:
#	src/console_cmds.cpp
#	src/debug.cpp
#	src/lang/vietnamese.txt
#	src/network/core/address.cpp
#	src/network/core/address.h
#	src/network/core/config.h
#	src/network/core/os_abstraction.cpp
#	src/network/core/os_abstraction.h
#	src/network/core/tcp_listen.h
#	src/network/core/udp.cpp
#	src/network/core/udp.h
#	src/network/network.cpp
#	src/network/network_client.cpp
#	src/network/network_gamelist.cpp
#	src/network/network_server.cpp
#	src/network/network_udp.cpp
#	src/newgrf.cpp
#	src/openttd.cpp
#	src/saveload/saveload.h
#	src/settings.cpp
#	src/settings_table.cpp
#	src/settings_type.h
#	src/table/settings/network_settings.ini
2021-11-02 00:51:54 +00:00
Jonathan G Rennison
f54d69a60a Merge branch 'master' into jgrpp-beta
# Conflicts:
#	src/economy.cpp
#	src/elrail.cpp
#	src/graph_gui.cpp
#	src/linkgraph/linkgraph_gui.cpp
#	src/network/core/game_info.cpp
#	src/newgrf_station.cpp
#	src/saveload/saveload.cpp
#	src/settings.cpp
#	src/station_cmd.cpp
#	src/station_gui.cpp
#	src/strings_func.h
#	src/table/settings/network_settings.ini
#	src/table/settings/settings.ini
2021-11-01 21:18:24 +00:00
Jonathan G Rennison
62afd94b47 Merge branch 'master' into jgrpp-beta
# Conflicts:
#	src/company_cmd.cpp
#	src/economy.cpp
#	src/lang/swedish.txt
#	src/network/network_command.cpp
#	src/news_gui.cpp
#	src/saveload/saveload.h
#	src/script/api/script_list.cpp
#	src/video/cocoa/cocoa_v.mm
#	src/video/sdl2_v.cpp
2021-11-01 18:54:43 +00:00
Jonathan G Rennison
d1f1a6942a Add support for loading trunk savegames versions 293 - 299 (12.0)
Use modified upstream saveload implementation for these versions
Re-arrange headers to support multiple saveload implementations
2021-11-01 18:33:39 +00:00
Jonathan G Rennison
81290df946 Merge branch 'master' into jgrpp-beta
# Conflicts:
#	src/lang/spanish.txt
#	src/network/core/tcp_content_type.h
#	src/network/network_content.cpp
#	src/saveload/cheat_sl.cpp
#	src/saveload/saveload.cpp
#	src/saveload/saveload.h
#	src/saveload/station_sl.cpp
#	src/saveload/vehicle_sl.cpp
#	src/settings.cpp
#	src/settings_internal.h
#	src/table/settings.h.preamble
#	src/table/settings/company_settings.ini
#	src/table/settings/currency_settings.ini
#	src/table/settings/gameopt_settings.ini
#	src/table/settings/misc_settings.ini
#	src/table/settings/settings.ini
#	src/table/settings/win32_settings.ini
#	src/table/settings/window_settings.ini
2021-10-28 01:07:51 +01:00
Jonathan G Rennison
ffef1c9e44 Merge branch 'master' into jgrpp-beta
# Conflicts:
#	src/saveload/cargopacket_sl.cpp
#	src/saveload/cheat_sl.cpp
#	src/saveload/company_sl.cpp
#	src/saveload/engine_sl.cpp
#	src/saveload/map_sl.cpp
#	src/saveload/order_sl.cpp
#	src/saveload/saveload.cpp
#	src/saveload/saveload.h
#	src/saveload/station_sl.cpp
#	src/saveload/vehicle_sl.cpp
#	src/settings.cpp
#	src/settings_gui.cpp
#	src/settings_internal.h
#	src/stdafx.h
#	src/table/settings/settings.ini
#	src/town_cmd.cpp
#	src/vehicle.cpp
2021-10-25 18:10:15 +01:00