Peter Nelson
f5f035a22b
Codechange: Make use of Rect Width/Height helpers.
2 years ago
Peter Nelson
ed60c88b0a
Change: Use power-of-2 scaling for some dimensions in GUI.
...
These are related to drawing sprites that are normally drawn on the
landscape, and should therefore still follow power-of-2 scaling to fit
correctly.
2 years ago
Artin Alavi
fd4f148c62
Feature: Hotkey to honk a vehicle's horn ( #10110 )
2 years ago
Henry Wilson
59dbcdb5ba
Feature: Display power-to-weight ratio in ground vehicle details GUI
2 years ago
Jonathan G Rennison
1518c2fa1e
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/depot_type.h
# src/lang/german.txt
# src/order_gui.cpp
# src/pathfinder/yapf/yapf_rail.cpp
# src/script/api/script_window.hpp.in
# src/settings_table.cpp
# src/train_cmd.cpp
2 years ago
Jonathan G Rennison
4b08874583
Only show edge level crossing overlays even when safer crossings is off
2 years ago
Tyler Trahan
c19abebf8d
Feature: Multi-track level crossings ( #9931 )
2 years ago
Jonathan G Rennison
0f697c5501
CheckNextTrainTile should never take action for OT_WAITING orders
2 years ago
Nicolas Chappe
721d98a7d0
Feature: Constantly update destination of 'any depot' orders
2 years ago
Nicolas Chappe
a4052ca348
Codechange: Add VehicleOrderSaver::Restore()
2 years ago
Nicolas Chappe
7e7d943526
Codechange: [YAPF] Allow to retrieve the final tile of the calculated path
2 years ago
Nicolas Chappe
a9a21e784d
Codechange: Always set the ODATFB_NEAREST_DEPOT flag for 'any depot' orders
2 years ago
Jonathan G Rennison
29a1e49c28
Change various asserts to not be included in release builds
2 years ago
Bouke Haarsma
bda602f4b0
Fix: reduce framerate overhead on train ticks
...
Tick() is a noop for all but front-engine / crashed vehicles. Starting a framerate is rather cheap, but not free, and introduces a lot of overhead for such close loops.
2 years ago
Jonathan G Rennison
7f782a1bc3
Fix calculating train curve speed limit on dual rail type tiles
2 years ago
Jonathan G Rennison
38c2fa3b66
Add a change counter value special order type
2 years ago
Jonathan G Rennison
839746d2bb
Fix template train move/sell command category for build while paused
2 years ago
Jonathan G Rennison
33e3e571d3
Return specific error when wagon purchase fails due to wrong depot type
...
See: #419
2 years ago
Jonathan G Rennison
a97d5cb333
Fix incorrect template replacement error message when chain not buildable
...
And no specific error returned
See: #419
2 years ago
Jonathan G Rennison
e3896b69d3
Fix #416 : Division by zero for trains of 0 mass
...
In maximum achievable speed estimator
2 years ago
Jonathan G Rennison
bc920df63a
Fix excessive braking for slopes with realistic braking
...
Unit conversion issue between potential and kinetic energies
2 years ago
Jonathan G Rennison
cbabbb6db6
Fix train braking behaviour when lookahead is aspect limited
...
When lookahead end is within the reservation end
2 years ago
Jonathan G Rennison
71b6d7a502
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/lang/arabic_egypt.txt
# src/station_cmd.cpp
# src/station_cmd.h
# src/timetable_cmd.cpp
# src/train_cmd.cpp
2 years ago
Patric Stout
979704271b
Fix: reverse train direction command did not validate the given vehicle properly ( #9947 )
...
You could give a wagon in the chain to reverse (which makes no
functional sense ofc). In result, only parts of the vehicle were
reversing, leading to weird crashes.
2 years ago
Jonathan G Rennison
c6ae82b611
Fix 9ff161e4
boosting lookahead braking stats but not actual brake forces
2 years ago
Jonathan G Rennison
bd28d5a239
Use order state at reservation time for signal mode tracerestrict eval
2 years ago
Jonathan G Rennison
78ae295dfe
Add combined normal and shunt aspect signal style flag
2 years ago
Jonathan G Rennison
a6e3467d58
Fix virtual train consist change callbacks being run before cargotype set
...
When instantiating virtual train from non-buildable template train
See: #402
Also fixes instantiating virtual train from train not refitting leading
vehicle.
2 years ago
Jonathan G Rennison
5b5fbaa476
Fix reservation error when a reserve through signal was the last tile
...
When there were no junctions earlier in the reservation
2 years ago
Jonathan G Rennison
24e965061c
Fix limit train lookahead to signal aspect when starting
...
From depot and within signal sighting distance (e.g. reverse)
2 years ago
Jonathan G Rennison
b6e099121a
Fix limit train lookahead to signal aspect within signalled tunnel/bridges
2 years ago
Jonathan G Rennison
9ff161e453
Boost realistic braking stats of trains affected by the freight multiplier
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
6d877b5e70
Reduce redundant calls to get current max speed for trains and RVs
...
Between ShowVisualEffect() and UpdateSpeed()
2 years ago
Jonathan G Rennison
502980ba61
Support railtype-dependant GRF train speed limits with realistic braking
...
See: #389
2 years ago
Jonathan G Rennison
92142e5684
Add routing restriction action to make exempt from speed adaptation
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
Jonathan G Rennison
909b20ee68
Implement train speed adaptation on signalled tunnels/bridges
...
See: #373
2 years ago
Niels Martin Hansen
e68bf58989
Codechange: Use anonymous union for vehicle orders/old orders list
2 years ago
Jonathan G Rennison
beb6d01fe8
Improve handling of conditional order waiting loops
...
Do not leave station/depot/waypoint at all if conditional order
loop would result in re-starting waiting/loading
Only actually leave and update timetable at end of loop
Rate-limit loop checks regardless of timetabled wait time
2 years ago
Jonathan G Rennison
904ff6757d
Add slot support to road vehicles, ships and aircraft
2 years ago
Jonathan G Rennison
543433218c
Ensure that timetable and scheduled dispatch windows redrawn as required
...
Reduce inefficient window and shared order list iteration
2 years ago
Jonathan G Rennison
a4ea155d33
Merge PR #357 into jgrpp
3 years ago
Yourself
7823c81597
Add: Through load speed limit setting
3 years ago
Yourself
aa7413a89f
Fix: Require non-zero capacity for refit cargo type
3 years ago
Jonathan G Rennison
30817c3915
Fix VRF_BEYOND_PLATFORM_END not being cleared when switching order
3 years ago
Jonathan G Rennison
f40191b3c0
Add hysteresis to depot search max penalty in missing depot order mode
...
See: #345
3 years ago
Michael Lutz
41fa16f325
Codechange: Don't use globals for return values from vehicle command procs.
3 years ago
Michael Lutz
13528bfcd0
Codechange: Un-bitstuff all remaining commands.
3 years ago
Michael Lutz
21675ec7e2
Codechange: Un-bitstuff vehicle/engine commands.
3 years ago
Michael Lutz
4f3ea3907e
Codechange: Un-bitstuff commands taking a ClientID (i.e. CMD_CLIENT_ID).
3 years ago
Michael Lutz
0f64ee5ce1
Codechange: Template DoCommandP to automagically reflect the parameters of the command proc.
...
When finished, this will allow each command handler to take individually
different parameters, obliviating the need for bit-packing.
3 years ago
Michael Lutz
e740c24eb7
Codechange: Template DoCommand to automagically reflect the parameters of the command proc.
...
When finished, this will allow each command handler to take individually
different parameters, obliviating the need for bit-packing.
3 years ago
Michael Lutz
7048e1522f
Codechange: Move flags in CommandProc in front of the command arguments.
3 years ago
Michael Lutz
33ca4f2b99
Codechange: Let the compile generate the master command table out of templated command traits.
...
This is using a non-intrusive type-traits like templated system, which
allows compile-time validation that the command table and the command
enum match up.
3 years ago
Michael Lutz
549caca39c
Codechange: Move command arguments to the back of the networked command function calls.
3 years ago
Michael Lutz
b6933a2ebd
Codechange: Move command arguments to the back of the DoCommand function call.
3 years ago
Jonathan G Rennison
ba65a5bab5
Run most "daily" vehicle tasks at a fixed frequency at day lengths >= 8
...
This includes: running costs, track sharing costs, breakdown checks,
servicing checks, order checks
3 years ago
Jonathan G Rennison
5723c317f7
Fix trains with non-front parts needing repair not being serviced
3 years ago
Jonathan G Rennison
4db14ccd18
Fix 71c39dc: Incorrect handling of order without non-stop flag
...
See: #337
3 years ago
Jonathan G Rennison
4ccbb11440
Only show level crossing overlay sprites on outsides of multi-track crossings
...
When using both adjacent crossings and safer crossings
3 years ago
Jonathan G Rennison
551560537f
Ensure that adjacent level crossings cannot leave map if there are no void tiles
3 years ago
Jonathan G Rennison
af2c51e3d4
Merge branch 'running-costs-exploration' into jgrpp
3 years ago
Jonathan G Rennison
71c39dc8c2
If train next order is for same station when leaving, do not leave
...
Just start loading again without moving instead
3 years ago
Jonathan G Rennison
f22a5685c3
Divide cost instead of cost_factor in running costs division
...
This is to prevent 0 running costs for cheap vehicles when
cost_factor would be < 1
3 years ago
Jonathan G Rennison
bb8e4eb18a
Adjust stopped/depot detection for running costs division
...
Fix v/this use in Train::GetRunningCost
3 years ago
reldred
904ff346c2
Initial commit to allow configuring running costs as a fraction (1/1 default thru 1/4) independently for both vehicles stopped in depots (doesn't work for planes, I'm not smart enuff), or vehicles that are stationary.
3 years ago
Jonathan G Rennison
76ad272f3b
Fix reservation loop with single-vehicle trains and signalled tunnel/bridges
3 years ago
Jonathan G Rennison
74bfe4e6d2
Allow placing routing restrictions on tunnel/bridge entrance/exit signals
...
No reserve through support
3 years ago
Jonathan G Rennison
1ee59c8333
Fix pending speed restrictions not being applied on signalled tunnel/bridges
...
Distance remaining was not decremented
3 years ago
Jonathan G Rennison
8c8c0e250a
Fix exit signal state when unable to leave signalled custom bridge head
...
When the exit direction is different to the bridge direction.
3 years ago
Jonathan G Rennison
e661a07425
Fix train not stuck action clearing wait counter when in depot/tunnel/bridge
3 years ago
Jonathan G Rennison
48977853a4
Simplify some rail/signalled tunnel/bridge tile checks
3 years ago
Jonathan G Rennison
dad007e16a
Fix spelling of TRPRF_SPEED_RESTRICTION_SET
3 years ago
Jonathan G Rennison
3308edf792
Try to extend reservation when passing sighting distance of non-end signal
3 years ago
Jonathan G Rennison
2a2b988424
Fix premature reservation end after reversing station found
...
ChooseTrainTrackLookAheadStateFlags/TrainReservationLookAheadFlags mixup
3 years ago
Jonathan G Rennison
2b1993ee4d
Fix crash with wrong-way running on multi-aspect signalled tunnel/bridge
...
When using the ignore signals buttons and updating middle signal states
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
faf32200cf
Merge tag '12.0-beta1' into jgrpp-beta
...
# Conflicts:
# CMakeLists.txt
# bin/ai/CMakeLists.txt
# bin/game/CMakeLists.txt
# src/build_vehicle_gui.cpp
# src/console_cmds.cpp
# src/core/overflowsafe_type.hpp
# src/fios.cpp
# src/lang/english.txt
# src/lang/german.txt
# src/lang/korean.txt
# src/lang/polish.txt
# src/network/core/game_info.cpp
# src/network/core/game_info.h
# src/network/core/tcp_game.cpp
# src/network/core/tcp_game.h
# src/network/network.cpp
# src/network/network_client.cpp
# src/network/network_client.h
# src/network/network_coordinator.cpp
# src/network/network_gui.cpp
# src/network/network_server.cpp
# src/network/network_server.h
# src/newgrf_engine.cpp
# src/openttd.cpp
# src/rev.cpp.in
# src/settings_type.h
# src/train.h
# src/train_cmd.cpp
3 years ago
Jonathan G Rennison
f54d69a60a
Merge branch 'master' into jgrpp-beta
...
# Conflicts:
# src/economy.cpp
# src/elrail.cpp
# src/graph_gui.cpp
# src/linkgraph/linkgraph_gui.cpp
# src/network/core/game_info.cpp
# src/newgrf_station.cpp
# src/saveload/saveload.cpp
# src/settings.cpp
# src/station_cmd.cpp
# src/station_gui.cpp
# src/strings_func.h
# src/table/settings/network_settings.ini
# src/table/settings/settings.ini
3 years ago
Jonathan G Rennison
61cc60099a
Merge branch 'jgrpp' into jgrpp-beta
...
# Conflicts:
# src/network/core/packet.cpp
# src/network/core/udp.cpp
3 years ago
Jonathan G Rennison
900b9fdf3b
Fix crash with wrong-way running on signalled tunnel/bridge
...
When using the ignore signals buttons, and exiting the bridge/tunnel
in some cases
3 years ago
Jonathan G Rennison
4042480806
Merge branch 'jgrpp' into jgrpp-beta
...
# Conflicts:
# src/settings.cpp
# src/settings_gui.cpp
# src/settings_internal.h
# src/table/company_settings.ini
# src/table/currency_settings.ini
# src/table/gameopt_settings.ini
# src/table/misc_settings.ini
# src/table/settings.h.preamble
# src/table/settings.ini
# src/table/win32_settings.ini
# src/table/window_settings.ini
3 years ago
Jonathan G Rennison
2e022d5194
Move game events to new event_logs header/cpp files
3 years ago
Jonathan G Rennison
fd605e3cf3
Merge branch 'master' into jgrpp-beta
...
# Conflicts:
# .github/workflows/commit-checker.yml
# src/company_cmd.cpp
# src/console_cmds.cpp
# src/crashlog.cpp
# src/lang/english.txt
# src/lang/german.txt
# src/lang/indonesian.txt
# src/lang/japanese.txt
# src/lang/korean.txt
# src/lang/swedish.txt
# src/linkgraph/linkgraphjob.cpp
# src/linkgraph/mcf.cpp
# src/network/core/tcp.cpp
# src/network/core/tcp.h
# src/network/core/tcp_game.h
# src/network/core/udp.h
# src/network/network.cpp
# src/network/network_admin.cpp
# src/network/network_admin.h
# src/network/network_chat_gui.cpp
# src/network/network_client.cpp
# src/network/network_client.h
# src/network/network_func.h
# src/network/network_internal.h
# src/network/network_server.cpp
# src/network/network_server.h
# src/newgrf.cpp
# src/newgrf_station.cpp
# src/order_gui.cpp
# src/rail_cmd.cpp
# src/saveload/saveload.cpp
# src/settings.cpp
# src/settings_gui.cpp
# src/settings_internal.h
# src/settings_type.h
# src/station_cmd.cpp
# src/stdafx.h
# src/table/currency_settings.ini
# src/table/misc_settings.ini
# src/table/settings.h.preamble
# src/table/settings.ini
# src/terraform_cmd.cpp
# src/timetable_gui.cpp
# src/train_cmd.cpp
# src/tree_cmd.cpp
# src/water_cmd.cpp
3 years ago
Patric Stout
7acdaaaf2f
Fix: Prevent train reversing when wholly inside a train depot ( #9557 )
...
Co-authored-by: Jonathan G Rennison <j.g.rennison@gmail.com>
3 years ago
Jonathan G Rennison
aff4dc74d0
Avoid premature reservations with reverse at waypoint orders with wait time
3 years ago
Jonathan G Rennison
3c55250cd6
Fix last station visited not being set when reservation ends at target
...
Long reserve and subsequent routing restrictions immediately beyond
the reservation were evaluated without the last station visited being
updated to reflect that the target station was already reached.
3 years ago
Jonathan G Rennison
964ea7b910
Debug: Show realistic braking approach speeds in debug window
3 years ago
Jonathan G Rennison
5d351a14d2
Add new signal type: no-entry signal
...
This is only passable in one direction, but does not have a signal
or show an aspect in the opposite direction
Add a setting for whether this is shown in the signal UI.
Off by default.
3 years ago
Jonathan G Rennison
f8e30e807d
Fix ProcessOrders not always being called after leaving a waiting order
...
Fixes conditional order loop on leaving a depot
3 years ago
Jonathan G Rennison
b08cc3cf38
Reduce screen re-draw area for tunnel/bridge end signal updates
3 years ago
Jonathan G Rennison
f6c2a81f72
Reduce screen re-draw area for bridge middle signal updates
3 years ago
Jonathan G Rennison
fea967bbbf
Prevent train reversing when wholly inside a train depot
...
See: #316 , https://github.com/OpenTTD/OpenTTD/issues/9520
3 years ago
Jonathan G Rennison
b2ef6c0de8
Add implementation of multi-aspect signalling and GRF support
...
Requires realistic braking
See: #247
3 years ago
Jonathan G Rennison
6546f6deba
Fix tunnel exit signal not being set to red when train exited
3 years ago
Jonathan G Rennison
dc4b7e0558
Add helper function to set tunnel/bridge entrance signal green
3 years ago
Jonathan G Rennison
55c4fe7d45
Add helper functions to get tunnel/bridge entrance/exit trackdirs
3 years ago
Jonathan G Rennison
2283ce3a2b
ATC: Reduce lower limit of nominal look-ahead distance for speed timers
...
See: #310
3 years ago