Jonathan G Rennison
c6ae82b611
Fix 9ff161e4
boosting lookahead braking stats but not actual brake forces
2 years ago
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
2 years ago
Jonathan G Rennison
99ee4b13ce
Realistic braking: Cache train overall z position
...
Refresh cache at a variable rate depending on train length and
weight distribution
2 years ago
Jonathan G Rennison
e5a421b65a
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/economy.cpp
# src/linkgraph/refresh.cpp
# src/order_cmd.cpp
# src/saveload/vehicle_sl.cpp
# src/station.cpp
# src/station_base.h
# src/timetable_cmd.cpp
# src/timetable_gui.cpp
# src/vehicle.cpp
# src/vehicle_base.h
# src/vehicle_cmd.cpp
2 years ago
Niels Martin Hansen
e68bf58989
Codechange: Use anonymous union for vehicle orders/old orders list
2 years ago
Jonathan G Rennison
bffff8e357
Add feature array as parameter to SlXvIsFeaturePresent methods
2 years ago
Jonathan G Rennison
904ff6757d
Add slot support to road vehicles, ships and aircraft
2 years ago
Jonathan G Rennison
3308edf792
Try to extend reservation when passing sighting distance of non-end signal
3 years ago
Jonathan G Rennison
3cff5e53e4
Add train cached_curve_speed_mod to VENC, cache checks and debug window
3 years ago
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
3 years ago
Jonathan G Rennison
544da99102
Merge branch 'master' into jgrpp-beta
...
# Conflicts:
# src/cargopacket.h
# src/lang/korean.txt
# src/linkgraph/linkgraph.h
# src/linkgraph/linkgraphjob.h
# src/linkgraph/linkgraphschedule.h
# src/network/network_admin.h
# src/network/network_func.h
# src/network/network_server.cpp
# src/network/network_server.h
# src/order_base.h
# src/rail_cmd.cpp
# src/saveload/company_sl.cpp
# src/saveload/depot_sl.cpp
# src/saveload/economy_sl.cpp
# src/saveload/linkgraph_sl.cpp
# src/saveload/map_sl.cpp
# src/saveload/newgrf_sl.cpp
# src/saveload/order_sl.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/saveload/signs_sl.cpp
# src/saveload/station_sl.cpp
# src/saveload/subsidy_sl.cpp
# src/saveload/town_sl.cpp
# src/saveload/vehicle_sl.cpp
# src/script/api/script_object.cpp
# src/settings.cpp
# src/string.cpp
# src/string_func.h
# src/table/CMakeLists.txt
# src/table/settings/settings.ini
# src/viewport_sprite_sorter_sse4.cpp
3 years ago
Jonathan G Rennison
0748d540e8
Implement improved breakdown speed reductions for ships
3 years ago
glx22
6e627f35ac
Cleanup: Remove now unneeded ChunkHandler members
3 years ago
glx22
2c941cd8b3
Codechange: Use ChunkHandlers sub-classes
3 years ago
glx22
c1a9fe6fbd
Codechange: Use static array of references to ChunkHandler
3 years ago
Patric Stout
3826703bc3
Add: store headers for chunks with SL_STRUCTLIST
3 years ago
Patric Stout
7dd5fd6ed4
Feature: framework to make savegames self-descriptive
...
We won't be able to make it fully self-descriptive (looking at you
MAP-chunks), but anything else can. With this framework, we can
add headers for each chunk explaining how each chunk looks like
in detail.
They also will all be tables, making it a lot easier to read in
external tooling, and opening the way to consider a database
(like SQLite) to use as savegame format.
Lastly, with the headers in the savegame, you can freely add
fields without needing a savegame version bump; older versions
of OpenTTD will simply ignore the new field. This also means
we can remove all the SLE_CONDNULL, as they are irrelevant.
The next few commits will start using this framework.
3 years ago
Jonathan G Rennison
fb0403dcee
Add save/load support for train speed adaptation
3 years ago
Patric Stout
4e4720f217
Codechange: remove the special station/vehicle code from SaveLoad
...
With the new SLEG_STRUCT it is much easier to embed a struct
in a struct, where the sub-struct has limitations on when it is
being used.
This makes both the code easier to read (less magic) and avoids
the SaveLoad needing to know all these things about Stations
and Vehicles.
3 years ago
Jonathan G Rennison
1002c6d9d2
Fix various compiler warnings
...
See: #267
3 years ago
Patric Stout
8f323855b1
Codechange: rename SL_LST to SL_REFLIST to highlight the "reference" part
...
You can easily mistake SlList / SL_LST to be a list of SL_VAR, but
it is a list of SL_REF. With this rename, it hopefully saves a few
people from "wtf?" moments.
3 years ago
glx22
c27afdf3f6
Codechange: Remove FOR_ALL_CHUNK_HANDLERS
...
Co-Authored-By: Patric Stout <truebrain@openttd.org>
3 years ago
Patric Stout
9fff00ba20
Codechange: C++-ify lists for SaveLoad ( #9323 )
...
Basically, this changes "SaveLoad *" to either:
1) "SaveLoadTable" if a list of SaveLoads was meant
2) "SaveLoad &" if a single entry was meant
As added bonus, this removes SL_END / SLE_END / SLEG_END. This
also adds core/span.hpp, a "std::span"-lite.
3 years ago
Jonathan G Rennison
b514d29db1
Replace TrainCache::cached_tilt with a flags field
3 years ago
Jonathan G Rennison
7faa279250
Fix 26a123b7: Wrong variable size in VENC chunk saver
3 years ago
Jonathan G Rennison
26a123b708
Realistic braking: Cache offset of centre of mass of train
3 years ago
Jonathan G Rennison
ed0ffb6220
Add feature: realistic train braking
...
Add setting to select train braking model.
3 years ago
Michael Lutz
a190b00af1
Fix #8589 , 653e7fa548: Motion counter is NewGRF-visible but not saved, leading to desyncs. ( #8591 )
...
(cherry picked from commit 7da224d29d
)
3 years ago
Michael Lutz
7da224d29d
Fix #8589 , 653e7fa548: Motion counter is NewGRF-visible but not saved, leading to desyncs. ( #8591 )
3 years ago
Matt Kimber
40d5fe1631
Fix eeb88e8: Trains reversed while paused do not correctly update sprite bounds ( #8540 )
3 years ago
Matt Kimber
9b28b15e67
Codechange: create MutableSpriteCache to remove the need to cast Vehicle to a mutable type in render methods
3 years ago
Jonathan G Rennison
1f54c8a018
Send vehicle caches to network clients to prevent desyncs due to bad GRFs
4 years ago
Jonathan G Rennison
e1aca1ab34
Extend Order::flags to 16 bits, fixes conditional order target field size
...
Adjust order packing and CmdInsertOrder
See: #198
4 years ago
Jonathan G Rennison
6dd7b2869c
Increase per-vehicle order limit to 64k
...
See: #110
4 years ago
Jonathan G Rennison
ff12051ee1
Only show ship is lost messages if lost for a significant time
4 years ago
Jonathan G Rennison
1f5de8b82c
Auto separation: Remove circular linked list, use new algorithm
4 years ago
Jonathan G Rennison
5243cfd6d0
Use TinyString for custom name fields which are almost always empty
4 years ago
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
4 years ago
Michael Lutz
63ccb36ef3
Codechange: Use std::string for most of the user-settable custom names.
4 years ago
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
4 years ago
Jonathan G Rennison
4936b3ba51
Add support for loading ChillPP v8 savegames
4 years ago
Jonathan G Rennison
5dc1027c6b
Add initial support for loading ChillPP v14.7 savegames
4 years ago
Jonathan G Rennison
d56d4ea51f
Add initial support for loading JokerPP savegames
...
See #123
4 years ago
glx
d8a1be48cd
Codechange: Replace vehicle related FOR_ALL with range-based for loops
5 years ago
glx
1f6b3a37f9
Codechange: Replace FOR_ALL_ENGINES with range-based for loops
5 years ago
glx
ddabfed1cd
Codechange: Replace station related FOR_ALL with range-based for loops
5 years ago
Jonathan G Rennison
0704fb81a3
Fix narrowing cast error in Load_VESR() in MSVC
5 years ago
Jonathan G Rennison
aa8aae9a62
Initial implementation of tracerestrict speed restriction feature
5 years ago
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
5 years ago
S. D. Cloudt
13cc8a0cee
Cleanup: Removed SVN headers
5 years ago
Jonathan G Rennison
0a1c1809ab
Save/load: Pre-filter SaveLoad descriptor arrays for current version/mode, for chunks with many objects
5 years ago
Jonathan G Rennison
1365600bed
Merge branch 'jgrpp' into jgrpp-nrt
5 years ago
Jonathan G Rennison
ba8ed880c1
Merge branch 'master' into jgrpp-nrt
...
Merge NRT feature
# Conflicts:
# docs/landscape.html
# docs/landscape_grid.html
# src/bridge_map.h
# src/build_vehicle_gui.cpp
# src/company_base.h
# src/company_cmd.cpp
# src/misc_gui.cpp
# src/newgrf.cpp
# src/newgrf_engine.cpp
# src/pathfinder/follow_track.hpp
# src/pathfinder/npf/npf.cpp
# src/road_cmd.cpp
# src/road_func.h
# src/road_gui.cpp
# src/road_map.h
# src/road_type.h
# src/roadveh_cmd.cpp
# src/saveload/afterload.cpp
# src/saveload/company_sl.cpp
# src/script/api/script_bridge.cpp
# src/table/newgrf_debug_data.h
# src/tile_cmd.h
# src/town_cmd.cpp
# src/tunnel_map.h
# src/tunnelbridge_cmd.cpp
5 years ago
Jonathan G Rennison
97221a67f2
Merge branch 'template_train_replacement' into jgrpp
...
# Conflicts:
# src/saveload/vehicle_sl.cpp
5 years ago
Jonathan G Rennison
bba36aef1b
TBTR: Check for mixed virtual/non-virtual consists on load
5 years ago
Jonathan G Rennison
f78b72989b
Merge branch 'template_train_replacement' into jgrpp
...
# Conflicts:
# src/saveload/vehicle_sl.cpp
# src/train.h
5 years ago
Jonathan G Rennison
f1946af707
TBTR: Delete leftover virtual trains on non-network client load
5 years ago
Jonathan G Rennison
829c635add
Add road layout change counter, add to road veh path caches
...
Update layout counter when non-leaf road bits are added or removed
5 years ago
peter1138
c02ef3e456
Feature: Add NotRoadTypes (NRT)
5 years ago
Jonathan G Rennison
674732cd68
Merge: Codechange: Use null pointer literal instead of the NULL macro
5 years ago
Henry Wilson
7c8e7c6b6e
Codechange: Use null pointer literal instead of the NULL macro
5 years ago
Jonathan G Rennison
5e6d283463
Merge branch 'master' into jgrpp
...
Remove the viewport sign cache as this is now superseded by the kd tree
implementation
# Conflicts:
# src/crashlog.cpp
# src/lang/english.txt
# src/misc.cpp
# src/pathfinder/follow_track.hpp
# src/pbs.cpp
# src/rail_cmd.cpp
# src/saveload/vehicle_sl.cpp
# src/settings.cpp
# src/settings_gui.cpp
# src/ship_cmd.cpp
# src/station.cpp
# src/station_base.h
# src/station_cmd.cpp
# src/table/settings.ini
# src/thread/thread_morphos.cpp
# src/town_cmd.cpp
# src/train_cmd.cpp
# src/viewport.cpp
# src/waypoint.cpp
5 years ago
PeterN
6c6971fb43
Add: Road vehicle path cache. ( #7261 )
5 years ago
Jonathan G Rennison
2142452305
Merge branch 'save_ext' into jgrpp
...
# Conflicts:
# Makefile.src.in
# findversion.sh
# projects/determineversion.vbs
# src/gamelog.cpp
# src/gamelog_internal.h
# src/lang/german.txt
# src/lang/korean.txt
# src/network/core/config.h
# src/network/network.cpp
# src/network/network_udp.cpp
# src/rev.h
# src/saveload/afterload.cpp
# src/saveload/company_sl.cpp
# src/saveload/depot_sl.cpp
# src/saveload/gamelog_sl.cpp
# src/saveload/misc_sl.cpp
# src/saveload/order_sl.cpp
# src/saveload/saveload.cpp
# src/saveload/station_sl.cpp
# src/saveload/town_sl.cpp
# src/saveload/vehicle_sl.cpp
# src/table/settings.ini
# src/viewport.cpp
5 years ago
Peter Nelson
33e3f49161
Fix #7119 : When rotating a ship, apply an additional offset to avoid movement glitch.
5 years ago
Peter Nelson
e21ade375e
Codechange: Change from numeric to descriptive SLV enum labels for last entries.
5 years ago
Peter Nelson
9de12521ec
Codechange: Convert saveload numbers to enum values.
...
(This was mostly achieved with a few in-place regexes)
5 years ago
Peter Nelson
ea4ea62816
Codechange: Make saveload version upper bound exclusive, i.e. version object was removed instead of version object last appeared.
5 years ago
Jonathan G Rennison
255b6adfc9
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/vehicle_cmd.cpp
5 years ago
Peter Nelson
67633606b0
Codechange: Remove value mangling and field misuse in SLE_WRITEBYTE.
...
The original translation functionality hasn't been used since 2007.
5 years ago
Jonathan G Rennison
281d346fe2
Merge branch 'master' into jgrpp
...
# Conflicts:
# bin/baseset/no_sound.obs
# bin/baseset/orig_dos.obg
# bin/baseset/orig_dos.obs
# bin/baseset/orig_dos_de.obg
# bin/baseset/orig_win.obg
# bin/baseset/orig_win.obm
# bin/baseset/orig_win.obs
# src/aircraft_cmd.cpp
# src/blitter/32bpp_anim.cpp
# src/blitter/32bpp_anim.hpp
# src/blitter/32bpp_base.cpp
# src/blitter/32bpp_base.hpp
# src/blitter/8bpp_base.cpp
# src/blitter/8bpp_base.hpp
# src/blitter/common.hpp
# src/group_gui.cpp
# src/lang/korean.txt
# src/linkgraph/linkgraph_gui.cpp
# src/saveload/saveload.cpp
# src/town_cmd.cpp
# src/viewport.cpp
# src/viewport_func.h
5 years ago
Peter Nelson
225790892d
Change: Make ships stop and change direction slowly instead of instantly turning.
5 years ago
Jonathan G Rennison
191afd93c1
Merge branch 'save_ext' into jgrpp
...
# Conflicts:
# src/lang/english.txt
# src/lang/german.txt
# src/lang/korean.txt
# src/settings.cpp
# src/station_cmd.cpp
# src/table/settings.ini
# src/vehicle_base.h
# src/widgets/dropdown.cpp
5 years ago
Peter Nelson
81330b8d6e
Change: Add path cache for ships.
5 years ago
Jonathan G Rennison
0e3986c39c
Extend timetable wait/travel times from 16 to 32 bits wide
6 years ago
Jonathan G Rennison
56be293107
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/blitter/32bpp_anim.cpp
# src/blitter/32bpp_anim.hpp
# src/blitter/32bpp_anim_sse2.cpp
# src/blitter/32bpp_base.cpp
# src/blitter/32bpp_base.hpp
# src/ground_vehicle.cpp
# src/linkgraph/linkgraph_gui.h
# src/main_gui.cpp
# src/newgrf_house.cpp
# src/newgrf_house.h
# src/town_cmd.cpp
# src/vehicle_base.h
# src/viewport_gui.cppp
6 years ago
PeterN
a07394a63a
Change: Remove direction parameter from Vehicle::UpdateDeltaXY. ( #6792 )
...
The value is either unused or always the same as this->direction.
6 years ago
Jonathan G Rennison
38779254e5
Check cargo action count consistencies on load
...
Add scope info logging to AfterLoadVehicles
6 years ago
Jonathan G Rennison
ad1c402ad8
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/debug.cpp
# src/saveload/afterload.cpp
# src/saveload/saveload.cpp
# src/settings_type.h
# src/town_cmd.cpp
# src/window.cpp
6 years ago
J0an Josep
cfb8092397
Fix b4b98e5165: Use FALLTHROUGH attribute with correct indentation.
6 years ago
Jonathan G Rennison
52edafab5e
Add savegame support for 32 bit Train::flags field
6 years ago
Jonathan G Rennison
09ca051ff8
Merge branch 'signal_tunnels_bridges' into jgrpp
...
# Conflicts:
# src/saveload/extended_ver_sl.cpp
# src/train.h
6 years ago
Jonathan G Rennison
def3a3933b
Move dual-use of load_unload_ticks for bridge/tun signals to new field
6 years ago
Jonathan G Rennison
d730cfd51d
Cache sprite sequence bounds for vehicles
6 years ago
Jonathan G Rennison
3a2a316588
Merge branch 'day_length' into jgrpp
...
# Conflicts:
# src/saveload/extended_ver_sl.cpp
# src/saveload/vehicle_sl.cpp
6 years ago
Jonathan G Rennison
7b567c9d26
Extend vehicle running ticks to 16 bits to avoid overflow at day length > 3
6 years ago
Jonathan G Rennison
dda20d08c1
Merge branch 'improved_breakdowns' into jgrpp
...
Update German and Korean language strings
# Conflicts:
# src/saveload/extended_ver_sl.cpp
7 years ago
Jonathan G Rennison
0a80aec634
Implement critical breakdown speed reduction for road vehicles
7 years ago
Jonathan G Rennison
218085c535
Timetable: Implement autofill/automate for taken conditional orders.
...
Fix wrong timetable values being set after using skip or send to depot.
Add timetabled flag for conditional order branch taken travel time.
7 years ago
Jonathan G Rennison
f34833f111
Merge branch 'improved_breakdowns' into jgrpp
...
# Conflicts:
# src/vehiclelist.cpp
7 years ago
Jonathan G Rennison
2d66f25f6c
Merge branch 'save_ext' into improved_breakdowns
...
# Conflicts:
# src/vehicle.cpp
7 years ago
frosch
b4b98e5165
(svn r27893) -Codechange: Use fallthrough attribute. (LordAro)
7 years ago
frosch
a47fb85cd8
(svn r27893) -Codechange: Use fallthrough attribute. (LordAro)
7 years ago
Jonathan G Rennison
9077d6f4d2
Add support for loading SpringPP v2.3, v2.4 savegames
7 years ago
Jonathan G Rennison
44fa555c6d
Merge branch 'save_ext' into improved_breakdowns
7 years ago
Jonathan G Rennison
83091f55da
Merge branch 'vehicle_group_info' into jgrpp
7 years ago
peter1138
0887289e3d
(svn r27822) -Feature: Vehicle Group Info: Add profits and occupancy display to group vehicle list (mtm, JGR)
7 years ago
peter1138
19d56a33e8
(svn r27822) -Feature: Vehicle Group Info: Add profits and occupancy display to group vehicle list (mtm, JGR)
7 years ago
Jonathan G Rennison
7ecdebddb3
Change and simplify algorithm for vehicle repair cost.
...
This is due to absurdly high repair costs for old vehicles with
old algorithm, due to implicit exponential increases.
Get rid of variable in vehicle struct.
8 years ago
Jonathan G Rennison
dcbde21f18
Merge branch 'save_ext' into improved_breakdowns
...
# Conflicts:
# src/train_cmd.cpp
8 years ago