Jonathan G Rennison
c7a4c6ba0e
Saveload: Add helper for null/ptr named save load table handling
2024-07-15 18:56:39 +01:00
Jonathan G Rennison
11eebdc5dd
Saveload: Table format sub-struct support
2024-07-14 21:50:52 +01:00
Jonathan G Rennison
99c6cc5bdb
Saveload: Use template function to implement SlAutolength
2024-07-14 20:54:57 +01:00
Jonathan G Rennison
74047028dd
Saveload: Remove unused size field from struct SaveLoad
2024-07-14 20:54:57 +01:00
Jonathan G Rennison
7ddcf901f5
Saveload: Add a label tag field to SaveLoad
2024-07-14 20:54:57 +01:00
Jonathan G Rennison
10c136f039
Saveload: Add mechanism for custom handling of missing table fields
2024-07-13 00:49:37 +01:00
Jonathan G Rennison
651610cd2a
Saveload: Fix sign and narrowing conversion warnings calculating list sizes
2024-07-11 01:43:18 +01:00
Jonathan G Rennison
724c6800c9
Saveload: Fix table chunk array type length headers
2024-07-08 17:50:37 +01:00
Jonathan G Rennison
61f920138f
Saveload: Add helper to skip chunk contents
2024-07-07 15:34:09 +01:00
Jonathan G Rennison
0dc4be2aa0
Fix minor code style issue
2024-07-07 15:00:50 +01:00
Jonathan G Rennison
6244f5b929
Avoid nullptr reference undefined behaviour in saveload when discarding table string on load
2024-06-20 00:09:19 +01:00
Jonathan G Rennison
fff46974fd
Scheduled dispatch: Allow naming departure slot tags
2024-06-13 19:32:42 +01:00
Jonathan G Rennison
c67f14dc88
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/fileio.cpp
# src/fileio_func.h
# src/industry_cmd.cpp
# src/ini.cpp
# src/openttd.cpp
# src/os/windows/win32_main.cpp
# src/settingsgen/settingsgen.cpp
# src/strgen/strgen.cpp
# src/strings.cpp
2024-06-10 22:38:23 +01:00
Jonathan G Rennison
1e9fb74451
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/release-windows.yml
# src/autoreplace_gui.cpp
# src/cargotype.cpp
# src/company_base.h
# src/company_cmd.cpp
# src/company_gui.cpp
# src/currency.h
# src/date_gui.cpp
# src/dropdown.cpp
# src/dropdown_func.h
# src/dropdown_type.h
# src/game/game_gui.cpp
# src/genworld.cpp
# src/genworld_gui.cpp
# src/ground_vehicle.hpp
# src/group_gui.cpp
# src/house.h
# src/industry_gui.cpp
# src/network/network_client.cpp
# src/network/network_server.cpp
# src/network/network_type.h
# src/newgrf_class_func.h
# src/newgrf_house.cpp
# src/newgrf_roadstop.h
# src/openttd.cpp
# src/order_gui.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/screenshot_gui.cpp
# src/settings_gui.cpp
# src/settings_type.h
# src/slider.cpp
# src/smallmap_gui.cpp
# src/station_cmd.cpp
# src/stdafx.h
# src/survey.cpp
# src/tile_map.h
# src/town_cmd.cpp
# src/town_gui.cpp
# src/vehicle.cpp
# src/vehicle_gui.cpp
# src/vehicle_gui_base.h
2024-05-28 20:33:35 +01:00
Jonathan G Rennison
18a42664fc
Merge branch 'master' into jgrpp
...
Remove 'byte' typedef
2024-05-07 17:21:50 +01:00
Jonathan G Rennison
71227f61d8
Use MoveFileExW to implement FioRenameFile on Windows
...
This is to allow renaming over an existing file
2024-04-20 20:55:21 +01:00
Jonathan G Rennison
98f1fb2722
Saveload: Fix NGRF chunks being saved with incorrect table SL_ARR format
...
Array length prefix was missing
See also: https://github.com/OpenTTD/bananas-api/pull/456
2024-03-30 10:16:26 +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
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
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
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
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
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
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
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
7ce06e22b8
Split date types into calendar and economy dates
...
See: 735abfe1
2024-02-13 21:34:09 +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
195b3b6d1d
Saveload: Add initial table chunk support to non-upstream save backend
2024-02-10 21:11:27 +00:00
Jonathan G Rennison
936d636cdd
No longer save/load water region invalidation states
...
Move InitializeWaterRegions to AllocateMap
No longer ForceUpdate in InitializeWaterRegions
2024-01-10 00:51:44 +00:00
Jonathan G Rennison
914b92b21f
Merge branch 'master' into jgrpp
...
Bump savegame for water regions for ship pathfinder
Use ring_buffer for ShipPathCache
2024-01-09 18:36:47 +00:00
Jonathan G Rennison
97e6f3062e
Adding of _t to (u)int types, and WChar to char32_t
...
See: eaae0bb5e
2024-01-07 17:20:41 +00:00
Jonathan G Rennison
f034714559
Use StringBuilder for GetString/GetStringWithArgs, as per upstream
...
Update dependent code as required
2024-01-05 21:12:54 +00:00
Jonathan G Rennison
2e9cb16254
Saveload: Simplify list handling in SlRefList
...
Use reserve on load if suitable
2023-12-26 18:18:00 +00:00
Jonathan G Rennison
378a545dd4
Add setting for map edge behaviour, and how to display area outside map
2023-12-22 17:32:44 +00:00
Jonathan G Rennison
4689113553
Debug: De-duplicate formatting of hex dates for desync/random logging
2023-12-19 17:55:57 +00:00
Jonathan G Rennison
03e0ec8276
Strong typedef: Use strong typedefs for date, date tick, minutes types
...
Add delta types
Adjust/add type conversion functions
Add various utility methods on types
Remove the various minute macros
Fix some minute conversion inconsistencies
2023-12-19 02:39:54 +00:00
Jonathan G Rennison
5f08bde936
Saveload: Remove runtime IsVariableSizeRight check
2023-12-17 13:38:22 +00:00
Jonathan G Rennison
ea3b991f72
MinGW: Remove direct mingw-std-threads includes
2023-12-13 23:11:20 +00:00
Jonathan G Rennison
9c29950956
Show savegame version/info in load window if sl debug enabled
2023-11-18 13:24:25 +00:00
Jonathan G Rennison
181eb6b6fe
Saveload: Adjust flags for saving using upstream chunks
2023-11-17 23:08:29 +00:00
Jonathan G Rennison
23ad010d70
Replace remaining uses of std::deque with ring buffers
...
Cargo packet lists and associated save/load
2023-08-19 14:01:06 +01:00