Commit Graph

340 Commits

Author SHA1 Message Date
Jonathan G Rennison
6a009686c9 Fix #299: Add estimated max speed (full) to template windows 2021-07-17 23:21:12 +01:00
Jonathan G Rennison
502af119e5 Rename and move train max speed estimation functions 2021-07-17 23:06:34 +01:00
Jonathan G Rennison
158608442c Merge pull request #281 from VacuumBreather/train_speed_adaptation
# Conflicts:
#	src/saveload/extended_ver_sl.cpp
#	src/saveload/extended_ver_sl.h
2021-07-03 23:00:25 +01:00
Jonathan G Rennison
62075c88de Apply ATC speed restriction as advisory to prevent instant braking
Remove redundant function
2021-06-27 22:26:57 +01:00
Andreas Schmitt
9a72d741ad Fix weight calculation 2021-06-20 22:29:54 +02:00
Andreas Schmitt
c1bf236a26 Rewrite the ATC logic
Now signals store speed information with a timeout for this data's validity
2021-06-20 20:40:33 +02:00
Andreas Schmitt
debc504e59 Add a setting for train speed adaptation
Prior to this change, without realistic breaking, trains would continuously run into the train in front of them. This makes them adjust their speed based on trains in front of them
2021-06-20 20:40:33 +02:00
Andreas Schmitt
d954c461b0 Add information about vehicle loads and speeds 2021-06-20 20:38:04 +02:00
Jonathan G Rennison
ba2e6087b2 Add train cache flag for whether train using realistic braking physics 2021-04-15 20:56:45 +01:00
Jonathan G Rennison
b514d29db1 Replace TrainCache::cached_tilt with a flags field 2021-04-15 20:56:45 +01:00
Jonathan G Rennison
5d5100449e Adjust realistic braking physics
Realistic acceleration uses 4 x the mass for acceleration as braking
Use 4 x mass for realistic braking as well to match
Increase per train length braking force
Add a power-based per train length braking force
2021-04-11 23:45:00 +01:00
Jonathan G Rennison
d484c32d44 Reduce sensitivity of train overheated breakdown 2021-04-11 22:53:02 +01:00
Jonathan G Rennison
95fb222852 Distribute articulated vehicle weight evenly between articulated parts
Instead of allocating it all to the first part
This improves realistic braking behaviour for long articulated consists
2021-04-03 22:04:37 +01:00
Jonathan G Rennison
26a123b708 Realistic braking: Cache offset of centre of mass of train 2021-04-03 21:25:04 +01:00
Jonathan G Rennison
c1f1b5f3b3 Give monorail/maglev larger realistic braking deceleration limits 2021-02-03 21:22:09 +00:00
Jonathan G Rennison
b7ddd486cf Merge branch 'master' into jgrpp
# Conflicts:
#	cmake/CompileFlags.cmake
#	src/aircraft_cmd.cpp
#	src/blitter/32bpp_anim.cpp
#	src/cargopacket.cpp
#	src/cheat_gui.cpp
#	src/company_cmd.cpp
#	src/company_gui.cpp
#	src/core/pool_func.hpp
#	src/date.cpp
#	src/economy.cpp
#	src/error_gui.cpp
#	src/ground_vehicle.cpp
#	src/ground_vehicle.hpp
#	src/group_gui.cpp
#	src/industry_cmd.cpp
#	src/lang/dutch.txt
#	src/lang/french.txt
#	src/lang/german.txt
#	src/linkgraph/linkgraph_gui.cpp
#	src/linkgraph/mcf.cpp
#	src/network/network_content.cpp
#	src/network/network_server.cpp
#	src/network/network_udp.cpp
#	src/newgrf_engine.cpp
#	src/newgrf_station.cpp
#	src/order_cmd.cpp
#	src/order_gui.cpp
#	src/pathfinder/follow_track.hpp
#	src/pathfinder/yapf/yapf_common.hpp
#	src/saveload/saveload.cpp
#	src/settings_gui.cpp
#	src/station_cmd.cpp
#	src/station_kdtree.h
#	src/string_func.h
#	src/table/settings.ini
#	src/tgp.cpp
#	src/timetable_cmd.cpp
#	src/timetable_gui.cpp
#	src/toolbar_gui.cpp
#	src/town_cmd.cpp
#	src/train_cmd.cpp
#	src/train_gui.cpp
#	src/tree_gui.cpp
#	src/tunnelbridge_cmd.cpp
#	src/vehicle.cpp
#	src/vehicle_gui.cpp
#	src/video/sdl2_v.cpp
#	src/video/sdl_v.cpp
#	src/video/win32_v.cpp
#	src/viewport.cpp
#	src/viewport_sprite_sorter_sse4.cpp
#	src/window.cpp
2021-02-01 17:07:34 +00:00
Jonathan G Rennison
4e0804b791 Fix const issues around GetTrainStopLocation/GetCurrentMaxSpeed 2021-01-29 02:13:08 +00:00
Jonathan G Rennison
ed0ffb6220 Add feature: realistic train braking
Add setting to select train braking model.
2021-01-28 19:03:18 +00:00
Jonathan G Rennison
cce6d731a1 TBTR: Delete orphaned virtual trains on client disconnection 2020-10-09 19:26:07 +01:00
Jonathan G Rennison
beaeda2990 TBTR: Show empty and full train weights in GUI, and weight ratios if enabled 2020-08-28 18:37:50 +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
glx
d8a1be48cd Codechange: Replace vehicle related FOR_ALL with range-based for loops 2019-12-21 20:13:03 +01:00
Jonathan G Rennison
aa8aae9a62 Initial implementation of tracerestrict speed restriction feature 2019-12-06 21:15:07 +00: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
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
Charles Pigott
9f3928658b Codechange: Remove Track{dir,}{Bits,}Byte types 2019-04-29 17:40:22 +01:00
Charles Pigott
931d32f414 Codechange: Remove RailTypeByte type 2019-04-29 17:40:22 +01:00
Charles Pigott
0a57db01af Codechange: Remove TrainForceProceedingByte type 2019-04-29 17:40:22 +01:00
Jonathan G Rennison
9d861fb8a0 TBTR: Allow cloning virtual/template trains with unavailable engines 2019-04-27 21:25:56 +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
Jonathan G Rennison
e15601e12f Cache whether a train may have a depot or bridge speed restriction 2019-01-19 21:22:32 +00:00
Jonathan G Rennison
d87ac8ec7e Improve performance of train breakdown detection 2019-01-19 04:39:16 +00:00
Jonathan G Rennison
65b9a103ad Initial implementation of two rail types per tile 2018-12-21 03:27:58 +00:00
Jonathan G Rennison
6740a9a470 Merge branch 'custom_bridgeheads' into jgrpp
# Conflicts:
#	docs/landscape.html
#	src/bridge_map.h
#	src/pbs.cpp
#	src/saveload/company_sl.cpp
#	src/saveload/extended_ver_sl.cpp
#	src/settings_type.h
#	src/signal.cpp
#	src/train_cmd.cpp
#	src/tunnel_map.h
#	src/tunnelbridge_cmd.cpp
#	src/tunnelbridge_map.h
#	src/vehicle.cpp
#	src/viewport.cpp
2018-07-08 23:04:30 +01:00
Jonathan G Rennison
77362b829a Initial support for rail custom bridge heads 2018-07-08 23:03:42 +01:00
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
2018-05-25 18:29:17 +01:00
PeterN
a07394a63a Change: Remove direction parameter from Vehicle::UpdateDeltaXY. (#6792)
The value is either unused or always the same as this->direction.
2018-05-22 18:43:34 +01:00
Jonathan G Rennison
2821599f6b Better handle out of track and depot through load cases
Add advice messages for when loading is aborted due to out of track/depot
Handle non-aligned use of platform
Fix full-load behaviour
Fix speed limiting whilst advancing
2018-03-29 19:16:44 +01:00
Jonathan G Rennison
78838ee2a2 Add freight train load/unload mode: through load 2018-03-26 20:12:50 +01:00
Jonathan G Rennison
52edafab5e Add savegame support for 32 bit Train::flags field 2018-03-26 19:50:34 +01:00
Jonathan G Rennison
09ca051ff8 Merge branch 'signal_tunnels_bridges' into jgrpp
# Conflicts:
#	src/saveload/extended_ver_sl.cpp
#	src/train.h
2018-03-26 18:42:23 +01:00
Jonathan G Rennison
def3a3933b Move dual-use of load_unload_ticks for bridge/tun signals to new field 2018-03-26 18:40:05 +01:00
Jonathan G Rennison
bbd2e6f2f5 Merge branch 'improved_breakdowns' into jgrpp
# Conflicts:
#	src/saveload/extended_ver_sl.cpp
#	src/train_cmd.cpp
2017-06-06 21:08:37 +01:00
Jonathan G Rennison
350c2bb24f Make trains break down after collision with road vehicle. 2017-06-06 20:20:33 +01:00
Jonathan G Rennison
44fa555c6d Merge branch 'save_ext' into improved_breakdowns 2017-06-06 18:41:01 +01:00
Jonathan G Rennison
b8328ad21f Merge branch 'tracerestrict-sx' into jgrpp
# Conflicts:
#	src/command.cpp
#	src/group_gui.cpp
#	src/lang/english.txt
#	src/saveload/extended_ver_sl.cpp
#	src/settings_gui.cpp
#	src/tracerestrict.cpp
#	src/tracerestrict.h
#	src/tracerestrict_gui.cpp
#	src/vehicle_gui.cpp
#	src/vehicle_gui_base.h
#	src/vehiclelist.cpp
#	src/window_type.h
2017-04-05 19:00:24 +01:00
Jonathan G Rennison
6417fb16c3 Initial implementation of trace restrict slots 2017-03-30 21:14:14 +01:00
Jonathan G Rennison
5a2d482c28 Tracerestrict: Add wait at PBS signal action. 2017-03-27 23:30:15 +01:00