Patric Stout
488187a423
Fix: next 67 savegame versions are used in PatchPacks; skip them ( #8411 )
...
Various of PatchPacks (Spring 2013, Joker, ChillPP) used versions
slightly higher than ours. Of course, as time went by, this
caught up with us, and we are now almost pushing a new version
that would conflict with them. To avoid users creating unneeded
issues about "why can I not load my savegame", lets be ahead of
the curve and flat-out refuse to load them.
Version-wise, this is totally fine. We have ~32k versions to go
before we run out (0x8000 is masked by JGRPP; we should avoid
using that). At the rate we bump savegames, this is not going to
happen in any sane reality.
(cherry picked from commit d8c8f4e72d
)
2020-12-27 20:29:25 +00:00
Michael Lutz
5cbb2da794
Codechange: Even more std::string usage in file IO.
2020-12-27 13:19:25 +01:00
Michael Lutz
65f65ad2ad
Codechange: Convert some more FIO functions to take std::string.
2020-12-27 13:19:25 +01:00
Charles Pigott
860c270c73
Codechange: Replace assert_compile macro with static_assert
2020-12-27 10:55:42 +00:00
cirdan
395a5d9991
Cleanup: Remove unused ChunkType flag CH_AUTO_LENGTH
...
CH_AUTO_LENGTH is no longer used anywhere, so remove all code
that depends on it.
2020-12-27 10:30:55 +00:00
Patric Stout
d8c8f4e72d
Fix: next 67 savegame versions are used in PatchPacks; skip them ( #8411 )
...
Various of PatchPacks (Spring 2013, Joker, ChillPP) used versions
slightly higher than ours. Of course, as time went by, this
caught up with us, and we are now almost pushing a new version
that would conflict with them. To avoid users creating unneeded
issues about "why can I not load my savegame", lets be ahead of
the curve and flat-out refuse to load them.
Version-wise, this is totally fine. We have ~32k versions to go
before we run out (0x8000 is masked by JGRPP; we should avoid
using that). At the rate we bump savegames, this is not going to
happen in any sane reality.
2020-12-22 10:44:07 +01:00
Patric Stout
d15dc9f40f
Add: support for emscripten (play-OpenTTD-in-the-browser)
...
Emscripten compiles to WASM, which can be loaded via
HTML / JavaScript. This allows you to play OpenTTD inside a
browser.
Co-authored-by: milek7 <me@milek7.pl >
2020-12-15 15:46:39 +01:00
Jonathan G Rennison
4da3cfcf56
Merge branch 'master' into jgrpp
...
# Conflicts:
# CMakeLists.txt
# src/bootstrap_gui.cpp
2020-12-07 17:56:44 +00:00
Patric Stout
731af1f1f3
Codechange: don't do work GetVariableAddress() is already doing
2020-12-06 16:10:58 +01:00
Jonathan G Rennison
1f54c8a018
Send vehicle caches to network clients to prevent desyncs due to bad GRFs
2020-11-22 11:41:50 +00:00
Jonathan G Rennison
de5fb361ad
Fix crash when saving order backups
2020-10-21 00:24:38 +01:00
Jonathan G Rennison
6dd7b2869c
Increase per-vehicle order limit to 64k
...
See: #110
2020-10-12 23:48:54 +01:00
Jonathan G Rennison
e2de103d82
Skip GRF compatibility check when using -K/-q switches
2020-08-27 19:25:07 +01:00
Jonathan G Rennison
1aefc9d010
Use malloc instead of calloc for MemoryDumper::AllocateBuffer
2020-06-29 17:20:27 +01:00
Jonathan G Rennison
54237b0e98
Codechange: Move SlSkipBytes to saveload.h
2020-06-28 15:32:53 +02:00
Jonathan G Rennison
5243cfd6d0
Use TinyString for custom name fields which are almost always empty
2020-05-22 00:10:09 +01:00
Jonathan G Rennison
f8d6e781ba
Merge branch 'master' into jgrpp
...
# Conflicts:
# projects/openttd_vs140.vcxproj.filters
# projects/openttd_vs141.vcxproj.filters
# projects/openttd_vs142.vcxproj.filters
# src/base_consist.h
# src/company_base.h
# src/newgrf_config.cpp
# src/newgrf_config.h
# src/openttd.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/saveload/station_sl.cpp
# src/settings.cpp
# src/signs_base.h
# src/string.cpp
# src/string_func.h
# src/table/misc_settings.ini
# src/table/settings.h.preamble
# src/town_cmd.cpp
# src/vehicle.cpp
# src/vehicle_cmd.cpp
# src/video/cocoa/cocoa_v.mm
# src/video/null_v.cpp
2020-05-21 22:24:01 +01:00
Michael Lutz
63ccb36ef3
Codechange: Use std::string for most of the user-settable custom names.
2020-05-21 20:02:34 +02:00
Michael Lutz
9b6f5e3bb8
Codechange: Store GS lang texts in std::strings.
2020-05-21 20:02:34 +02:00
Jonathan G Rennison
763a2826b6
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/gamelog.cpp
2020-05-11 00:45:24 +01:00
glx
0ed00ae111
Fix: Stop any gamelog action when recovering from SlError()
2020-05-10 20:02:55 +01:00
Jonathan G Rennison
dd99fd646d
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/base_station_base.h
# src/industry.h
# src/industry_cmd.cpp
# src/industry_gui.cpp
# src/lang/korean.txt
# src/os/macosx/crashlog_osx.cpp
# src/station_cmd.cpp
# src/town.h
# src/town_cmd.cpp
# src/town_gui.cpp
2020-01-20 18:36:55 +00:00
frosch
a4be4514c9
Fix #7925 : Reset temporary saveload data at the start of loading a savegame instead of at the end.
...
Otherwise temporary data may be passed from an aborted load action to the next load action.
2020-01-12 19:08:38 +01:00
Jonathan G Rennison
7960db35f2
Merge branch 'master' into jgrpp
...
# Conflicts:
# config.lib
# projects/openttd_vs140.vcxproj
# projects/openttd_vs140.vcxproj.filters
# projects/openttd_vs141.vcxproj
# projects/openttd_vs141.vcxproj.filters
# projects/openttd_vs142.vcxproj
# projects/openttd_vs142.vcxproj.filters
# src/aircraft_cmd.cpp
# src/base_station_base.h
# src/core/pool_type.hpp
# src/disaster_vehicle.cpp
# src/economy.cpp
# src/engine.cpp
# src/group.h
# src/group_cmd.cpp
# src/group_gui.cpp
# src/lang/english.txt
# src/lang/german.txt
# src/linkgraph/linkgraph_gui.cpp
# src/network/network_command.cpp
# src/network/network_server.cpp
# src/openttd.cpp
# src/order_cmd.cpp
# src/road_cmd.cpp
# src/saveload/afterload.cpp
# src/saveload/cargopacket_sl.cpp
# src/saveload/linkgraph_sl.cpp
# src/saveload/order_sl.cpp
# src/saveload/station_sl.cpp
# src/saveload/town_sl.cpp
# src/saveload/vehicle_sl.cpp
# src/screenshot.cpp
# src/screenshot.h
# src/settings_gui.cpp
# src/settings_type.h
# src/smallmap_gui.cpp
# src/station.cpp
# src/station_cmd.cpp
# src/table/settings.ini
# src/toolbar_gui.cpp
# src/town_cmd.cpp
# src/train.h
# src/train_cmd.cpp
# src/train_gui.cpp
# src/vehicle.cpp
# src/vehicle_base.h
# src/vehiclelist.cpp
# src/window_type.h
2020-01-06 18:45:51 +00:00
Jonathan G Rennison
4936b3ba51
Add support for loading ChillPP v8 savegames
2020-01-03 00:08:33 +00:00
Jonathan G Rennison
b4453fac23
Saveload: Log chunk sizes when load fails due to chunk size mismatch
2020-01-01 17:13:17 +00:00
Jonathan G Rennison
c75ed00f0f
Saveload: Allow discarding chunks with a load handler
2019-12-26 20:30:55 +00:00
glx
3a14cea068
Codechange: Replace FOR_ALL_COMPANIES with range-based for loops
2019-12-21 20:13:03 +01:00
Jonathan G Rennison
cbdd9f84d8
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/console_gui.cpp
# src/lang/korean.txt
# src/video/sdl2_v.cpp
# src/video/sdl2_v.h
# src/window.cpp
# src/window_gui.h
2019-11-12 18:43:10 +00:00
S. D. Cloudt
13cc8a0cee
Cleanup: Removed SVN headers
2019-11-10 17:59:20 +00:00
Jonathan G Rennison
e568100407
Fix SlError exception handling in threaded load mode
2019-11-07 01:17:41 +00:00
Jonathan G Rennison
785eed2958
Fix loading of savegames which use LZO compression
2019-11-07 00:18:24 +00:00
Jonathan G Rennison
2deadabc97
Saveload: Improve SpringPP savegame detection
...
Trunk savegames will soon reach the range of versions used by SpringPP
2019-10-13 13:03:12 +01:00
Jonathan G Rennison
edfd378e93
Merge branch 'master' into jgrpp
...
# Conflicts:
# source.list
# src/blitter/32bpp_anim.cpp
# src/linkgraph/linkgraphjob.cpp
# src/order_cmd.cpp
# src/vehicle.cpp
# src/vehicle_type.h
2019-10-05 21:45:54 +01:00
Jonathan G Rennison
0a1c1809ab
Save/load: Pre-filter SaveLoad descriptor arrays for current version/mode, for chunks with many objects
2019-10-01 02:13:33 +01:00
JMcKiern
04f659e768
Fix: Some typos found using codespell
2019-09-29 21:27:32 +01:00
Jonathan G Rennison
b6d755221a
Add load filter to perform savegame decompression in a separate thread
2019-09-25 02:54:36 +01:00
Jonathan G Rennison
1365600bed
Merge branch 'jgrpp' into jgrpp-nrt
2019-07-13 20:35:17 +01:00
Jonathan G Rennison
d3e0c3787f
Merge branch 'master' into jgrpp-nrt
...
Merge trunk multiple docks implementation
# Conflicts:
# docs/landscape_grid.html
# src/order_cmd.cpp
# src/pathfinder/npf/npf.cpp
# src/pathfinder/yapf/yapf_ship.cpp
# src/rail_cmd.cpp
# src/saveload/afterload.cpp
# src/saveload/oldloader_sl.cpp
# src/saveload/station_sl.cpp
# src/script/api/script_order.cpp
# src/ship_cmd.cpp
# src/station.cpp
# src/station_base.h
# src/station_cmd.cpp
# src/tunnelbridge_cmd.cpp
2019-07-13 20:34:52 +01:00
Jonathan G Rennison
0f6c5ee622
Fix saveload exception handling when gamelog action in progress
2019-07-11 03:14:14 +01:00
Jonathan G Rennison
36eb4165b8
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/bridge_map.h
# src/crashlog.cpp
# src/industry.h
# src/linkgraph/linkgraph_type.h
# src/order_type.h
# src/saveload/afterload.cpp
# src/settings.cpp
# src/settings_type.h
# src/smallmap_gui.cpp
# src/spritecache.cpp
# src/stdafx.h
# src/table/settings.h.preamble
# src/train.h
# src/vehicle.cpp
# src/viewport.cpp
# src/viewport_func.h
# src/widgets/station_widget.h
# src/zoom_func.h
# src/zoom_type.h
2019-07-08 16:19:07 +01:00
Jonathan G Rennison
5a9790a196
Store crash/desync logs in crash/desync savegame
...
Add console command to dump loaded debug log
2019-05-23 22:53:17 +01:00
Charles Pigott
3299d6540b
Cleanup: Delete GetSavegameType function since it's been commented out since 2005
2019-04-29 17:46:28 +01:00
Jonathan G Rennison
0d93ecb6bf
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/core/alloc_type.hpp
# src/group_gui.cpp
# src/newgrf.cpp
# src/saveload/economy_sl.cpp
# src/saveload/map_sl.cpp
# src/station_cmd.cpp
2019-04-16 18:03:08 +01:00
peter1138
4f052fc2a4
Cleanup: Fix alignment after NULL -> nullptr change.
2019-04-13 20:35:10 +01:00
Jonathan G Rennison
674732cd68
Merge: Codechange: Use null pointer literal instead of the NULL macro
2019-04-11 18:14:13 +01:00
Henry Wilson
7c8e7c6b6e
Codechange: Use null pointer literal instead of the NULL macro
2019-04-10 23:22:20 +02:00
Michael Lutz
8b1880187a
Remove: AutoFreeSmallVector.
...
The last use was for storing a list of memory blocks. As the way these lists are accessed is very
specific, it is easier to just write an explicit destructor instead of trying to exactly match the behaviour.
2019-04-09 22:45:15 +02:00
Jonathan G Rennison
361758b516
Merge branches 'crashlog_improvements', 'save_ext' into jgrpp
...
# Conflicts:
# Makefile.src.in
# projects/openttd_vs140.vcxproj
# projects/openttd_vs140.vcxproj.filters
# projects/openttd_vs141.vcxproj
# projects/openttd_vs141.vcxproj.filters
# projects/openttd_vs142.vcxproj
# projects/openttd_vs142.vcxproj.filters
# src/core/smallstack_type.hpp
# src/linkgraph/linkgraphjob.cpp
# src/linkgraph/linkgraphjob.h
# src/misc.cpp
# src/network/network_udp.cpp
# src/openttd.cpp
# src/saveload/saveload.cpp
2019-04-09 19:06:26 +01:00
Jonathan G Rennison
7f80884047
Merge branch 'cpp-11' into save_ext
...
# Conflicts:
# src/saveload/saveload.cpp
# src/settings.cpp
# src/settings_gui.cpp
2019-04-09 18:54:02 +01:00