Commit Graph

139 Commits

Author SHA1 Message Date
Jonathan G Rennison
8e9600991a Clear vehicle unit number on load for non-primary vehicles 2024-03-26 17:46:56 +00:00
Jonathan G Rennison
e9c8c36af7 Add missing include to src/sl/saveload.cpp 2024-03-24 10:59:06 +00:00
Jonathan G Rennison
16577279a1 Saveload: Save to temporary file name and rename to target on success 2024-03-21 17:27:27 +00:00
Jonathan G Rennison
4d0af08aad Saveload: Log number of bytes/blocks serialised during save 2024-03-20 19:11:14 +00:00
Jonathan G Rennison
26cb47935e Saveload: Raise error if fclose fails in FileWriter 2024-03-20 18:15:40 +00:00
Peter Nelson
64bc95722b Codechange: Cache train curve speed limit can be stored in 16 bits.
Cache curve speed modifier and max curve speed are both 16 bit values so can be stored in 16 bit types instead of 32 bit types.

(cherry picked from commit 3fc7b3b9a0)
2024-03-18 17:58:36 +00:00
Jonathan G Rennison
20b8cb3059 Add setting to use object land ground for purchased land
Default on
2024-03-17 12:31:50 +00:00
Jonathan G Rennison
041e71ec05 Merge branch 'master' into jgrpp
# Conflicts:
#	src/crashlog.cpp
#	src/gfx.cpp
#	src/network/network_client.cpp
#	src/openttd.cpp
#	src/openttd.h
#	src/saveload/saveload.cpp
#	src/survey.cpp
2024-03-16 18:06:09 +00:00
Jonathan G Rennison
9f205727bf Extend industry production/transported totals to 32 bits 2024-03-12 17:49:48 +00:00
Jonathan G Rennison
fe730bce31 Merge branch 'master' into jgrpp
# Conflicts:
#	.github/workflows/ci-build.yml
#	.github/workflows/codeql.yml
#	.github/workflows/release-linux.yml
#	.github/workflows/release-macos.yml
#	.github/workflows/release-windows.yml
#	src/map.cpp
#	src/music/midifile.hpp
#	src/order_cmd.cpp
#	src/order_gui.cpp
#	src/pathfinder/yapf/yapf_rail.cpp
#	src/pbs.cpp
#	src/saveload/afterload.cpp
#	src/saveload/saveload.h
#	src/saveload/vehicle_sl.cpp
#	src/script/api/script_text.cpp
#	src/ship_cmd.cpp
#	src/train_cmd.cpp
#	src/vehicle.cpp
#	src/vehicle_base.h
#	src/vehicle_func.h
#	src/vehicle_gui.cpp
#	src/vehicle_gui_base.h
#	src/viewport.cpp
#	src/waypoint_cmd.cpp
2024-03-12 17:44:28 +00:00
Jonathan G Rennison
ba79f7b2ba Merge branch 'master' into jgrpp
# Conflicts:
#	src/base_station_base.h
#	src/newgrf_roadstop.cpp
#	src/newgrf_station.cpp
#	src/object_gui.cpp
#	src/saveload/settings_sl.cpp
#	src/saveload/station_sl.cpp
#	src/settings.cpp
#	src/settings_internal.h
#	src/timer/timer_game_calendar.cpp
2024-03-09 20:10:57 +00:00
Jonathan G Rennison
9d65fd9c2a Adjust handling of vehicles introduced before vehicle expiry stop year
See: #646
2024-03-02 20:09:37 +00:00
Jonathan G Rennison
828d2146eb Merge branch 'master' into jgrpp
# Conflicts:
#	CMakeLists.txt
#	bin/ai/CMakeLists.txt
#	bin/game/CMakeLists.txt
#	src/ai/ai_info.cpp
#	src/company_base.h
#	src/economy.cpp
#	src/game/game_info.cpp
#	src/gfx_type.h
#	src/linkgraph/linkgraph_gui.cpp
#	src/palette.cpp
#	src/palette_func.h
#	src/saveload/saveload.h
#	src/saveload/vehicle_sl.cpp
#	src/ship_cmd.cpp
#	src/train_cmd.cpp
#	src/vehicle_base.h
#	src/window.cpp
#	src/window_func.h
2024-02-26 18:19:34 +00:00
Jonathan G Rennison
93bf033107 Add whether the vehicle is non-front to the vehicle pool pointer tag
Add iteration filters which check this
2024-02-25 14:51:59 +00:00
Jonathan G Rennison
05e237f8d1 Add wrapper to iterate vehicle pool with vehicle type filter
Without needing to dereference vehicle pointers if using tagged pointers
2024-02-25 14:00:15 +00:00
Jonathan G Rennison
528aae3f3b Saveload: Remove unused engine save/load desc 2024-02-25 03:27:45 +00:00
Jonathan G Rennison
090656bd7f Adjust handling of year display in wallclock mode and company inauguration years
See: #657
2024-02-25 03:27:45 +00:00
Jonathan G Rennison
593a81d421 Saveload: Rename IsSavegameVersionUntil to IsSavegameVersionBeforeOrAt
To match upstream
2024-02-21 23:27:12 +00:00
Jonathan G Rennison
53b06a3d04 Add event flag for removing invalid RVs during load 2024-02-21 22:21:59 +00:00
Jonathan G Rennison
f52d56249d Saveload: Use table format for industry build data chunks 2024-02-21 20:22:24 +00:00
Jonathan G Rennison
0e262620d2 Saveload: Use table format for NewGRF/ID mapping chunks 2024-02-21 20:22:24 +00:00
Jonathan G Rennison
b3bd1bb5ad Use upstream load for non-table script chunks 2024-02-21 20:22:24 +00:00
Jonathan G Rennison
a92377fe98 Use upstream save/load for various unchanged chunks 2024-02-21 20:22:24 +00:00
Jonathan G Rennison
b178be36f3 Saveload: Maintain map of chunk ID to (first byte) block mode 2024-02-21 20:22:24 +00:00
Jonathan G Rennison
dadbad2bfc Saveload: Log changes in SlExecWithSlVersion 2024-02-21 19:53:34 +00:00
Jonathan G Rennison
6dec7a5b35 Saveload: Add PeekByte method to ReadBuffer 2024-02-21 19:23:05 +00:00
Jonathan G Rennison
bd2358f6cc Saveload: Tidy up logging of chunk IDs
Add helper to dump chunk IDs as strings
Avoid duplicate logging of load steps for upstream load paths
2024-02-21 19:23:05 +00:00
Jonathan G Rennison
ba1fa3ad29 Saveload: Fix SlNullPointers with upstream chunks 2024-02-21 19:22:16 +00:00
Jonathan G Rennison
b58ecb0cd8 Saveload: Remove unnecessary auto-length use for tracerestrict 2024-02-21 19:18:55 +00:00
Jonathan G Rennison
8e8d698b24 Fix comment spelling errors 2024-02-21 19:10:31 +00:00
Jonathan G Rennison
a98a56669b Merge branch 'master' into jgrpp
# Conflicts:
#	regression/regression/result.txt
#	src/autoreplace_cmd.cpp
#	src/industry_gui.cpp
#	src/landscape.cpp
#	src/network/network_content.cpp
#	src/newgrf_roadstop.cpp
#	src/pathfinder/yapf/yapf_ship.cpp
#	src/road_gui.cpp
#	src/saveload/ai_sl.cpp
#	src/saveload/saveload.h
#	src/saveload/vehicle_sl.cpp
#	src/station.cpp
#	src/station_gui.cpp
#	src/video/cocoa/cocoa_ogl.h
#	src/video/sdl2_opengl_v.h
#	src/video/video_driver.hpp
#	src/video/win32_v.h
#	src/widget_type.h
#	src/widgets/dropdown.cpp
#	src/widgets/dropdown_type.h
#	src/window.cpp
2024-02-19 23:11:00 +00:00
Jonathan G Rennison
4097fc4e33 Saveload: Enable upstream mode SlAutolength
Use non-upstream implementation for SlCopyBytes
2024-02-19 18:58:32 +00:00
Jonathan G Rennison
8a85055c68 Saveload: Use std::span for autosave temporary buffer view 2024-02-19 18:58:32 +00:00
Jonathan G Rennison
1040f9612f Saveload: Tag duplicate detection in SlTableHeader as maybe unused 2024-02-19 04:26:42 +00:00
Jonathan G Rennison
a874bb70b1 Remove unused saveload desc in cheats_sl.cpp 2024-02-19 04:25:44 +00:00
Jonathan G Rennison
8581808952 Merge tag '14.0-beta2' into jgrpp
# Conflicts:
#	CMakeLists.txt
#	src/cargotype.cpp
#	src/console_cmds.cpp
#	src/graph_gui.cpp
#	src/industry_cmd.cpp
#	src/industrytype.h
#	src/misc_gui.cpp
#	src/network/network_client.cpp
#	src/newgrf.cpp
#	src/newgrf_town.cpp
#	src/object_cmd.cpp
#	src/openttd.cpp
#	src/pathfinder/water_regions.cpp
#	src/saveload/saveload.cpp
#	src/saveload/saveload.h
#	src/table/build_industry.h
#	src/table/engines.h
#	src/vehicle.cpp
#	src/vehicle_cmd.cpp
#	src/vehicle_gui.cpp
2024-02-19 03:23:19 +00:00
Jonathan G Rennison
c6893388ab Fix order flags collision in OT_GOTO_DEPOT
Move depot wait is timetabled flag to xflags
2024-02-19 00:41:05 +00:00
Jonathan G Rennison
fdd666f66a Merge tag '14.0-beta1' into jgrpp
# Conflicts:
#	src/3rdparty/squirrel/squirrel/sqcompiler.cpp
#	src/aircraft.h
#	src/animated_tile.h
#	src/base_consist.h
#	src/cargotype.h
#	src/company_gui.cpp
#	src/console_cmds.cpp
#	src/core/overflowsafe_type.hpp
#	src/engine_gui.cpp
#	src/industry_gui.cpp
#	src/lang/english.txt
#	src/music/extmidi.cpp
#	src/network/core/network_game_info.cpp
#	src/network/network_server.cpp
#	src/newgrf.cpp
#	src/newgrf_industries.cpp
#	src/order_base.h
#	src/order_cmd.cpp
#	src/order_gui.cpp
#	src/order_type.h
#	src/os/macosx/misc_osx.cpp
#	src/os/windows/crashlog_win.cpp
#	src/rail_gui.cpp
#	src/rail_gui.h
#	src/roadveh.h
#	src/roadveh_cmd.cpp
#	src/saveload/afterload.cpp
#	src/saveload/company_sl.cpp
#	src/saveload/saveload.cpp
#	src/saveload/saveload.h
#	src/saveload/saveload_error.hpp
#	src/script/api/script_town.cpp
#	src/settingsgen/settingsgen.cpp
#	src/ship.h
#	src/ship_cmd.cpp
#	src/smallmap_gui.cpp
#	src/spritecache.cpp
#	src/stdafx.h
#	src/strgen/strgen.cpp
#	src/strgen/strgen.h
#	src/table/settings/script_settings.ini
#	src/timetable_cmd.cpp
#	src/timetable_gui.cpp
#	src/town.h
#	src/town_cmd.cpp
#	src/town_cmd.h
#	src/town_gui.cpp
#	src/train.h
#	src/train_cmd.cpp
#	src/tree_cmd.cpp
#	src/vehicle.cpp
#	src/vehicle_base.h
#	src/vehicle_cmd.cpp
#	src/vehicle_gui.cpp
#	src/vehiclelist.cpp
#	src/waypoint_base.h
#	src/widget.cpp
2024-02-18 22:22:29 +00:00
Jonathan G Rennison
838b166726 Merge branch 'master' into jgrpp
# Conflicts:
#	src/cheat_gui.cpp
#	src/command.cpp
#	src/command_func.h
#	src/company_base.h
#	src/debug.cpp
#	src/debug.h
#	src/economy.cpp
#	src/engine_type.h
#	src/graph_gui.cpp
#	src/misc_cmd.cpp
#	src/misc_cmd.h
#	src/network/core/os_abstraction.cpp
#	src/openttd.cpp
#	src/saveload/saveload.cpp
#	src/saveload/saveload.h
#	src/settings_type.h
#	src/ship_cmd.cpp
#	src/stdafx.h
#	src/tests/bitmath_func.cpp
#	src/town_cmd.cpp
#	src/town_gui.cpp
2024-02-17 11:53:35 +00:00
Jonathan G Rennison
1f5b35fac4 Change link graph join and compression times to use scaled tick counter 2024-02-15 02:05:27 +00:00
Jonathan G Rennison
7ce06e22b8 Split date types into calendar and economy dates
See: 735abfe1
2024-02-13 21:34:09 +00:00
Jonathan G Rennison
7460e73252 SaveLoad: Fix crash when joining network server which used GRF custom town zones 2024-02-12 23:08:01 +00:00
Jonathan G Rennison
903adceab5 Maintain map of targeted road vehicles to small UFO disaster vehicle 2024-02-12 00:48:13 +00:00
Jonathan G Rennison
1e2834a422 Use upstream/table format for game log chunk 2024-02-11 16:34:03 +00:00
Jonathan G Rennison
b05738284b Windows: Avoid destruction of unjoined std::thread on ExitProcess
See: #649
2024-02-11 02:03:33 +00:00
Jonathan G Rennison
11f75933bf Saveload: Use table format for DATE, VIEW, MAPS chunks
Merge MISC into DATE
2024-02-10 21:14:22 +00:00
Jonathan G Rennison
195b3b6d1d Saveload: Add initial table chunk support to non-upstream save backend 2024-02-10 21:11:27 +00:00
Jonathan G Rennison
5aaff39164 Fix wrong saveload types for std::string 2024-02-10 19:57:57 +00:00
Jonathan G Rennison
60e59a8233 Saveload: Add wrapper to simplify conditionally upstream chunks
Where they're always saved as upstream and conditional on a feature
2024-02-10 16:58:48 +00:00
Jonathan G Rennison
cfebbfac8c Merge branch 'master' into jgrpp
# Conflicts:
#	src/autoreplace_cmd.cpp
#	src/company_base.h
#	src/company_gui.cpp
#	src/cpu.cpp
#	src/debug.h
#	src/group.h
#	src/group_cmd.cpp
#	src/house.h
#	src/industry.h
#	src/newgrf_house.cpp
#	src/news_type.h
#	src/openttd.cpp
#	src/saveload/company_sl.cpp
#	src/settings_type.h
#	src/sl/oldloader_sl.cpp
#	src/story.cpp
#	src/table/town_land.h
#	src/viewport.cpp
2024-02-09 18:50:49 +00:00