Jonathan G Rennison
3df3ed6690
Reduce frequency of brake overheating breakdowns
...
Decay overheat state more quickly
Avoid double-triggering overheating
Make overheating speed-dependent
2 days ago
Jonathan G Rennison
89902c8ab1
Fix advisory max speed being higher than strict max for reservation end
...
In GetCurrentMaxSpeedInfoInternal
3 days ago
Jonathan G Rennison
18a42664fc
Merge branch 'master' into jgrpp
...
Remove 'byte' typedef
2 weeks ago
Jonathan G Rennison
9f7d25e02d
TBTR: Fix head state migration when using start/stop callbacks
...
Don't run start/stop callbacks during head state migration
2 months ago
Jonathan G Rennison
3439d208d7
TBTR: Fix cost estimation of replacement when using wagon attach callbacks
...
Do not CMD_SELL_VEHICLE in cost estimation, just use the vehicle values
2 months ago
Jonathan G Rennison
315dd62bd9
Fix Vehicle::CopyVehicleConfigAndStatistics not releasing unit number
...
See: https://github.com/OpenTTD/OpenTTD/issues/12388
2 months ago
Jonathan G Rennison
0484ba700f
Allow manually removing/setting train speed restriction
...
From vehicle details window
See: #674
2 months ago
Peter Nelson
64bc95722b
Codechange: Cache train curve speed limit can be stored in 16 bits.
...
Cache curve speed modifier and max curve speed are both 16 bit values so can be stored in 16 bit types instead of 32 bit types.
(cherry picked from commit 3fc7b3b9a0
)
2 months ago
Patric Stout
a3cfd23cf9
Codechange: rename byte to uint8_t ( #12308 )
2 months ago
Jonathan G Rennison
fe730bce31
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/ci-build.yml
# .github/workflows/codeql.yml
# .github/workflows/release-linux.yml
# .github/workflows/release-macos.yml
# .github/workflows/release-windows.yml
# src/map.cpp
# src/music/midifile.hpp
# src/order_cmd.cpp
# src/order_gui.cpp
# src/pathfinder/yapf/yapf_rail.cpp
# src/pbs.cpp
# src/saveload/afterload.cpp
# src/saveload/saveload.h
# src/saveload/vehicle_sl.cpp
# src/script/api/script_text.cpp
# src/ship_cmd.cpp
# src/train_cmd.cpp
# src/vehicle.cpp
# src/vehicle_base.h
# src/vehicle_func.h
# src/vehicle_gui.cpp
# src/vehicle_gui_base.h
# src/viewport.cpp
# src/waypoint_cmd.cpp
2 months ago
Tyler Trahan
32b0fb9f6e
Fix #12010 : Use economy timer for vehicle stats minimum age, not calendar ( #12142 )
2 months ago
Jonathan G Rennison
828d2146eb
Merge branch 'master' into jgrpp
...
# Conflicts:
# CMakeLists.txt
# bin/ai/CMakeLists.txt
# bin/game/CMakeLists.txt
# src/ai/ai_info.cpp
# src/company_base.h
# src/economy.cpp
# src/game/game_info.cpp
# src/gfx_type.h
# src/linkgraph/linkgraph_gui.cpp
# src/palette.cpp
# src/palette_func.h
# src/saveload/saveload.h
# src/saveload/vehicle_sl.cpp
# src/ship_cmd.cpp
# src/train_cmd.cpp
# src/vehicle_base.h
# src/window.cpp
# src/window_func.h
3 months ago
Jonathan G Rennison
93bf033107
Add whether the vehicle is non-front to the vehicle pool pointer tag
...
Add iteration filters which check this
3 months ago
Peter Nelson
56cf89d189
Change: Use bitmap for free unit ID generation. ( #12165 )
...
This improves performance of finding the next free unit number for a vehicle.
Based loosely on pool's used slot bitmap.
3 months ago
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
3 months ago
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
3 months ago
Jonathan G Rennison
7938844d1d
Vehicles age at calendar speed in wallclock mode
3 months ago
Jonathan G Rennison
7ce06e22b8
Split date types into calendar and economy dates
...
See: 735abfe1
3 months ago
Jonathan G Rennison
0ea57528c9
Rename DateTicksScaled to StateTicks
...
Rename various other related/derived types and variables
3 months ago
Peter Nelson
2fd9096070
Change: Decouple and remove landscape-dependent cargo types. ( #11719 )
...
Cargo types of default engines, industries and houses are now specified in terms of label.
4 months ago
Tyler Trahan
f6dd5053a3
Feature: Order flag to unbunch vehicles at depot ( #11945 )
4 months ago
frosch
b1718478c8
Codechange: Replace old non-standard attributes with C++17/20 standard attributes.
4 months ago
Jonathan G Rennison
7d086ae686
Tracerestrict: Only apply wait at PBS for intermediary signals in forward direction
4 months ago
Jonathan G Rennison
5e29901d02
Tracerestrict: Allow nesting temporary slot states
...
Use a temporary state stack instead of passing the state directly
in TraceRestrictProgramInput
No longer exit early from ExtendTrainReservation to handle slots, this
fixes reservation failures when starting from a signal with a slot acquire
More thorough fix for 9e8a4314
4 months ago
Jonathan G Rennison
31d87f6101
Fix 9e8a4314: Start signal state erroneously changed if it has slot acquire
4 months ago
Jonathan G Rennison
efab96b82b
Set default service interval and timetable flags for virtual trains
...
See: #636
4 months ago
Jonathan G Rennison
5404be172c
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/core/bitmath_func.cpp
# src/core/bitmath_func.hpp
# src/core/geometry_type.hpp
# src/game/game_text.hpp
# src/graph_gui.cpp
# src/pathfinder/npf/npf.cpp
# src/script/api/script_text.cpp
# src/spritecache.cpp
# src/track_func.h
4 months ago
Jonathan G Rennison
49eb40bc4f
Change various _network_dedicated tests to use IsHeadless
4 months ago
Tyler Trahan
735abfe111
Codechange: Split dates and timers into Economy and Calendar time ( #10700 )
4 months ago
Jonathan G Rennison
7d1e350b94
Tracerestrict: Handle slot acquire on tunnel/bridge entrance reserve
...
When using realistic braking
Using the same context as PBS end acquire/release
4 months ago
Jonathan G Rennison
9e8a43144a
Tracerestrict: Handle slot acquire and wait at PBS on intermediary reservation signals
...
Wait at PBS is applied as if on the starting signal
4 months ago
Jonathan G Rennison
293b5c9435
Tracerestrict: Remove slot acquire on reservation flags
4 months ago
Jonathan G Rennison
5a731c04f3
Tracerestrict: Do not acquire slots a second time when front passes signal
...
If slot acquire was already handled during reservation
4 months ago
Jonathan G Rennison
5e2a8861f9
Tracerestrict: Avoid prematurely acquiring slots on tunnel/bridge exits
...
Due to checking the long reserve and wait at PBS/slots in a single pass
4 months ago
Rubidium
6b21368bc2
Codechange: replace FIND_FIRST_BIT/FindFirstBit2x64 with FindFirstBit
4 months ago
Jonathan G Rennison
091fb0da44
Fix crash which could occur when trying to extend invalidated reservation
...
When using realistic braking
4 months ago
Jonathan G Rennison
0df59defc4
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/release-linux.yml
# .github/workflows/release.yml
# src/rail_cmd.cpp
# src/rail_gui.cpp
# src/script/api/script_rail.cpp
# src/settings_gui.cpp
# src/signal_type.h
# src/video/sdl2_v.cpp
4 months ago
Jonathan G Rennison
2fc631b15b
Rename OT_RELEASE_SLOT to OT_SLOT, use a subtype field
4 months ago
Jonathan G Rennison
3050620189
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/autoreplace_cmd.cpp
# src/build_vehicle_gui.cpp
# src/cargotype.cpp
# src/economy.cpp
# src/engine_gui.cpp
# src/industry_cmd.cpp
# src/industry_gui.cpp
# src/linkgraph/linkgraph_gui.h
# src/linkgraph/refresh.cpp
# src/linkgraph/refresh.h
# src/newgrf.cpp
# src/newgrf_airporttiles.h
# src/newgrf_roadstop.cpp
# src/newgrf_station.cpp
# src/newgrf_station.h
# src/order_base.h
# src/order_cmd.cpp
# src/order_func.h
# src/order_gui.cpp
# src/pathfinder/pathfinder_type.h
# src/saveload/afterload.cpp
# src/subsidy_base.h
# src/vehicle_cmd.cpp
# src/vehicle_gui.cpp
# src/vehicle_gui_base.h
4 months ago
Jonathan G Rennison
97e6f3062e
Adding of _t to (u)int types, and WChar to char32_t
...
See: eaae0bb5e
4 months ago
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
5 months ago
Jonathan G Rennison
4fac6b295c
Merge branch 'master' into jgrpp
...
# Conflicts:
# .github/workflows/release-linux.yml
# src/base_consist.h
# src/blitter/32bpp_optimized.cpp
# src/blitter/32bpp_optimized.hpp
# src/blitter/32bpp_sse2.hpp
# src/blitter/8bpp_optimized.hpp
# src/gfx_func.h
# src/industry_cmd.cpp
# src/industrytype.h
# src/linkgraph/linkgraphjob.cpp
# src/mixer.cpp
# src/newgrf_callbacks.h
# src/openttd.cpp
# src/os/macosx/macos.mm
# src/os/windows/win32.cpp
# src/pathfinder/npf/npf.cpp
# src/road_cmd.cpp
# src/saveload/afterload.cpp
# src/saveload/saveload.h
# src/saveload/vehicle_sl.cpp
# src/sound.cpp
# src/spritecache.cpp
# src/spriteloader/spriteloader.hpp
# src/station_map.h
# src/timetable_cmd.cpp
# src/timetable_cmd.h
# src/timetable_gui.cpp
# src/town_cmd.cpp
# src/vehicle_cmd.cpp
# src/vehicle_gui_base.h
# src/video/opengl.cpp
# src/video/opengl.h
# src/viewport.cpp
5 months ago
Jonathan G Rennison
e9612338ff
Fix condition for extending train reverse distance due to overspeed
5 months ago
Peter Nelson
ddd609ce9b
Feature: Randomize direction of rail vehicle on build based on probability callback. ( #11489 )
...
This allows NewGRF authors to indicate that the game should randomly flip rail vehicles on build, without needing to use random bits nor duplicate sprites to handle it themselves.
To use this functionality, test for callback 162 (CBID_VEHICLE_BUILD_PROBABILITY) and var10 = 0 (values other than 0 are reserved for future use), and return a value between 0 and 100 inclusive.
The return value is a percentage chance of reversing the vehicle. A value of 0 will always build a forward facing vehicle, and 100 will always build a reverse facing vehicle.
6 months ago
Peter Nelson
e6d132d24b
Fix #10926 : New free wagons no longer split by type. ( #11507 )
...
NormalizeTrainVehInDepot() should only be called if an engine was built, not for wagons.
6 months ago
Peter Nelson
96d4538055
Fix #11437 : Flipped shorter rail vehicles disappear in windows. ( #11446 )
...
Mixed signed/unsigned strikes again, causing an incorrect sprite offset for shortened vehicles.
(cherry picked from commit 43aa91a7f5
)
6 months ago
Jonathan G Rennison
2a31095118
Merge branch 'master' into jgrpp
...
# Conflicts:
# regression/regression/result.txt
# src/aircraft_cmd.cpp
# src/airport_gui.cpp
# src/articulated_vehicles.cpp
# src/console_cmds.cpp
# src/date_gui.cpp
# src/engine.cpp
# src/genworld_gui.cpp
# src/gfx_layout_fallback.cpp
# src/group_gui.cpp
# src/hotkeys.cpp
# src/network/core/tcp_connect.cpp
# src/network/core/tcp_listen.h
# src/newgrf.cpp
# src/newgrf.h
# src/newgrf_engine.cpp
# src/newgrf_gui.cpp
# src/newgrf_station.cpp
# src/openttd.cpp
# src/order_gui.cpp
# src/os/macosx/osx_main.cpp
# src/pathfinder/yapf/yapf_node_rail.hpp
# src/rail_gui.cpp
# src/saveload/afterload.cpp
# src/saveload/cargopacket_sl.cpp
# src/saveload/linkgraph_sl.cpp
# src/saveload/station_sl.cpp
# src/script/api/script_industrytype.cpp
# src/settings.cpp
# src/settings_gui.cpp
# src/settings_table.cpp
# src/settingsgen/settingsgen.cpp
# src/station.cpp
# src/station_cmd.cpp
# src/strings.cpp
# src/timer/timer_game_calendar.cpp
# src/timer/timer_game_calendar.h
# src/timer/timer_manager.h
# src/timer/timer_window.cpp
# src/timetable_cmd.cpp
# src/toolbar_gui.cpp
# src/town_cmd.cpp
# src/town_gui.cpp
# src/train_gui.cpp
# src/vehicle_cmd.h
# src/vehicle_gui.cpp
# src/viewport.cpp
# src/widgets/dropdown.cpp
# src/window_func.h
# src/window_gui.h
6 months ago
Jonathan G Rennison
38df621e62
Improve train speed adaptation with realistic braking
...
Take into account recorded speeds at signals along the reservation
As noted in the lookahead
See: #613
6 months ago
Jonathan G Rennison
c9a205c707
Train speed adaptation: Move IsOutOfDate to be a method
6 months ago
Jonathan G Rennison
c929f7075e
Merge branch 'master' into jgrpp
...
# Conflicts:
# cmake/SourceList.cmake
# src/build_vehicle_gui.cpp
# src/company_gui.cpp
# src/console_cmds.cpp
# src/depot_base.h
# src/elrail.cpp
# src/network/core/udp.cpp
# src/network/network_admin.cpp
# src/network/network_chat_gui.cpp
# src/network/network_gui.cpp
# src/network/network_server.cpp
# src/newgrf.cpp
# src/newgrf_engine.cpp
# src/newgrf_railtype.cpp
# src/newgrf_railtype.h
# src/newgrf_storage.h
# src/os/unix/crashlog_unix.cpp
# src/rail.h
# src/rail_cmd.cpp
# src/rail_gui.cpp
# src/road_cmd.cpp
# src/road_map.h
# src/saveload/labelmaps_sl.cpp
# src/settings_gui.cpp
# src/settings_type.h
# src/sl/oldloader_sl.cpp
# src/station_cmd.cpp
# src/station_gui.cpp
# src/table/settings/world_settings.ini
# src/tests/test_script_admin.cpp
# src/textfile_gui.cpp
# src/toolbar_gui.cpp
# src/train_cmd.cpp
# src/tunnelbridge_cmd.cpp
# src/vehicle_gui.cpp
# src/widget.cpp
# src/window.cpp
# src/window_gui.h
# src/window_type.h
6 months ago