Commit Graph

2787 Commits

Author SHA1 Message Date
Jonathan G Rennison
e647075870 Change LinkGraph::EdgeMatrix to a sparse storage format
Use a btree_map instead of a SmallMatrix.
This avoids excessive storage requirements for large graphs,
and overly expensive edge matrix resize operations.
Remove next_edge iteration mechanism.
2022-12-05 18:17:25 +00:00
Loïc Guilloux
13d2d11fa8 Fix #10216: Initialise RoadStop caches before using them and don't try to teleport crashed vehicles (#10217) 2022-12-05 12:46:46 +01:00
dP
c91033ac5e Feature: [GS] Scriptable league tables (#10001)
(cherry picked from commit 5e14a20b3b)
2022-12-03 22:28:49 +00:00
Jonathan G Rennison
690ef6cc22 Saveload: Add support for using upstream save/load for specific chunks 2022-12-03 22:28:49 +00:00
dP
5e14a20b3b Feature: [GS] Scriptable league tables (#10001) 2022-11-26 18:03:03 +01:00
Jonathan G Rennison
3d7e5d5369 Avoid unnecessary viewport redraws for unused tile loop house triggers 2022-11-24 02:38:10 +00:00
Jonathan G Rennison
1e769d050f Leave PLYP chunk unchanged when loading/saving server saves in non-MP 2022-11-17 00:40:12 +00:00
Jonathan G Rennison
dc03bac241 Saveload: Change SlLoadFromBuffer to take a template functor 2022-11-17 00:33:53 +00:00
Jonathan G Rennison
aa4501747f Merge branch 'master' into jgrpp
# Conflicts:
#	src/base_station_base.h
#	src/lang/german.txt
#	src/saveload/station_sl.cpp
#	src/station.cpp
#	src/station_cmd.cpp
2022-11-06 20:33:37 +00:00
Peter Nelson
22803f997b Codechange: Use std::vector for station speclist
This removes manual memory allocation, although we still manage the list
size in roughly the same way.
2022-11-06 16:50:42 +01:00
Jonathan G Rennison
0bf1c9bb9d Merge tag '13.0-beta1' into jgrpp 2022-11-05 19:12:42 +00:00
Nicolas Chappe
a43a1902bb Feature: [Linkgraph] Prioritize faster routes for passengers, mail and express cargo
Passengers usually prefer fast paths to short paths.
Average travel times of links are updated in real-time for use in Dijkstra's algorithm,
and newer travel times weigh more, just like capacities.

(cherry picked from commit 977604ef08)
2022-11-05 19:07:35 +00:00
Jonathan G Rennison
49bda05fb5 Set adjacent crossings setting to false when loading pre v300 trunk savegames 2022-11-03 00:57:47 +00:00
Jonathan G Rennison
aba8e88d8c Enable loading of upstream savegames up to version 302 2022-11-02 18:46:24 +00:00
Tyler Trahan
c19abebf8d Feature: Multi-track level crossings (#9931) 2022-11-01 16:51:23 -04:00
Nicolas Chappe
f8a7b76675 Fix #9665: [Linkgraph] Fix travel times of non-direct journeys 2022-10-29 18:39:03 +02:00
Jonathan G Rennison
a8361cd608 Allow overriding town settings on a per-town basis
Add a setting for whether this is allowed for non-privileged
multiplayer clients
2022-10-23 22:07:51 +01:00
Jonathan G Rennison
38c2fa3b66 Add a change counter value special order type 2022-10-13 20:09:20 +01:00
Jonathan G Rennison
0818ce4ae7 Merge branch 'master' into jgrpp (SLV_U64_TICK_COUNTER)
# Conflicts:
#	src/date.cpp
#	src/date_func.h
#	src/newgrf.cpp
#	src/newgrf_animation_base.h
#	src/saveload/gamelog_sl.cpp
#	src/saveload/misc_sl.cpp
#	src/saveload/saveload.h
#	src/stdafx.h
2022-10-03 19:58:31 +01:00
Jonathan G Rennison
12eb23f0ab Clear old tree counter in map array on load of old savegames
See: https://github.com/OpenTTD/OpenTTD/pull/10018
2022-10-01 23:05:07 +01:00
Jonathan G Rennison
9e24414033 In ReloadNewGRFData recompute prices before reiniting windows
Avoid crash if land info window is open during reload
2022-10-01 14:31:26 +01:00
dP
548f0496a9 Change: Make _tick_counter 64bit to avoid wrapping (#10035) 2022-09-21 12:42:29 +02:00
Jonathan G Rennison
bc3b928d34 Fix improved breakdowns being enabled after loading old/other savegame 2022-09-16 20:28:58 +01:00
Jonathan G Rennison
7c4c75d181 Add tracerestrict conditional on direction of order target from signal 2022-09-07 22:53:03 +01:00
Jonathan G Rennison
5a39734a1c Allow station cargo histories to record larger values than 64k
See: #414
2022-09-06 23:03:46 +01:00
Jonathan G Rennison
23fa7cd239 Improve handling of company sales
Avoid conflicts between bankruptcy and manual company sale paths
2022-09-02 18:13:47 +01:00
Jonathan G Rennison
22a1fdff5e Log error message to console in LoadWithFilter exception handler
See: #412
2022-08-27 21:55:14 +01:00
Jonathan G Rennison
aa49e17e39 Remove road vehicles during load which are uncorrectably invalid 2022-08-07 20:00:40 +01:00
Jonathan G Rennison
4e8a8a5e0a Add conditional order to test if last/next dispatch slot is first/last 2022-07-03 15:49:29 +01:00
Jonathan G Rennison
c6ae82b611 Fix 9ff161e4 boosting lookahead braking stats but not actual brake forces 2022-07-01 23:39:02 +01:00
Jonathan G Rennison
6a69a5495f Add tracerestrict action to set combined normal/shunt signal mode
Add associated conditional to get reservation end tile
2022-06-28 01:16:57 +01:00
Jonathan G Rennison
a451b76c45 Remove unused extern declaration 2022-06-26 16:27:33 +01:00
Jonathan G Rennison
04da11b668 Store signal style GRF to local map in savegame
Update existing signal style IDs as necessary
2022-06-25 14:33:47 +01:00
Jonathan G Rennison
a73bc141a1 Remove unneeded calls to GetOtherTunnelBridgeEnd in AfterLoadCompanyStats 2022-06-25 14:09:51 +01:00
Jonathan G Rennison
92723d4f5c Remove tunnel/bridge spacing setting, use usual signal drag spacing 2022-06-19 18:32:47 +01:00
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
2022-06-19 12:44:15 +01:00
Jonathan G Rennison
bdd73a19a1 Add signal style flag for unconditional reserve through
Add map bits for unconditional reserve through
Adjust signal aspect/state handling
2022-06-19 04:15:27 +01:00
Jonathan G Rennison
7ae06124ae Add signal style flag for no aspect increase behaviour (banner repeater) 2022-06-19 02:08:38 +01:00
Jonathan G Rennison
6e4c4b35e7 Initial implementation of NewGRF custom signal styles 2022-06-19 02:08:38 +01:00
Jonathan G Rennison
b37209c3af Tracerestrict: Programs maintain a list of signals referencing them 2022-06-11 22:15:19 +01:00
Jonathan G Rennison
99ee4b13ce Realistic braking: Cache train overall z position
Refresh cache at a variable rate depending on train length and
weight distribution
2022-06-03 00:41:41 +01:00
Jonathan G Rennison
af270a63ad Industry: Apply anim tile masking when loading prior version saves 2022-06-01 01:21:58 +01:00
Jonathan G Rennison
42e20d3d99 Industry: Determine which tiles in industry layouts are not animated
Do not set these as animated tiles for new industries
2022-06-01 01:13:46 +01:00
Tyler Trahan
ec90fb4c99 Fix #6544: Don't join AI company when loading network game in singleplayer 2022-04-30 19:36:09 +02:00
Jonathan G Rennison
ed30542acf Cache highest snowline value 2022-04-29 17:10:18 +01:00
Rubidium
c73f578e8c Codechange: replace magic numbers and C-style arrays with C++-style array for share owners 2022-03-09 18:05:12 +01:00
Jonathan G Rennison
92142e5684 Add routing restriction action to make exempt from speed adaptation 2022-03-06 22:39:53 +00:00
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
2022-03-04 18:17:44 +00:00
Jonathan G Rennison
909b20ee68 Implement train speed adaptation on signalled tunnels/bridges
See: #373
2022-02-21 18:57:50 +00:00
Niels Martin Hansen
e68bf58989 Codechange: Use anonymous union for vehicle orders/old orders list 2022-02-15 20:01:10 +01:00