summaryrefslogtreecommitdiff
path: root/src/pathfinder/yapf
AgeCommit message (Collapse)Author
2021-05-29Fix: Do not send vehicles towards incomplete PF nodesVít Šefl
YAPF could end up in a situation where it sets the best intermediate node to a node whose construction is never finalized (i.e. it is never added to the open list). The content of the node would be overwritten in the next round, potentially sending the vehicle to an unwanted location.
2021-05-27Cleanup: remove unused copy-constructor without copy-assignmentrubidium42
2021-05-23Fix: Encountering two-way red signals could prune unrelated branches.Vít Šefl
The intermediate node branch is now only pruned if the node is on the path leading to the two-way red signal.
2021-04-30Remove: performance measurements in YAPFPatric Stout
YAPF was constantly measuring its performance, but only at certain debug-levels this information was shown. Now after years, I sincerely wonder if anyone still knows about this feature and who still use it. Especially with the new framerate window, this detailed performance is not as meaningful anymore as it once was.
2021-04-30Cleanup: remove weird left-over comment in yapf.hppPatric Stout
2021-04-04Cleanup: Delete remaining Blob codeCharles Pigott
2021-04-04Codechange: Replace CBlobT usage with std::vectorCharles Pigott
2021-04-04Codechange: Replace CStrA with std::stringCharles Pigott
2021-02-25Fix #8123: trams on half-tiles couldn't find depots (#8738)Patric Stout
Basically, follow_track.hpp contains a fix for half-tiles, but this wasn't duplicated for when trying to find a depot and in a few other places. This makes sure all places act the same.
2021-02-22Change: Make pathfinder account for maximum order speed, if setCharles Pigott
2021-02-21Fix: [YAPF] Road pathfinder did not account for length of tunnel/bridge in ↵Charles Pigott
path cost Copy calculations from the rail pathfinder
2021-01-08Codechange: Remove min/max functions in favour of STL variants (#8502)Charles Pigott
2020-06-05Add: introduce CMake for project managementPatric Stout
CMake works on all our supported platforms, like MSVC, Mingw, GCC, Clang, and many more. It allows for a single way of doing things, so no longer we need shell scripts and vbs scripts to work on all our supported platforms. Additionally, CMake allows to generate project files for like MSVC, KDevelop, etc. This heavily reduces the lines of code we need to support multiple platforms from a project perspective. Addtiionally, this heavily improves our detection of libraries, etc.
2020-02-07Fix #7592: Do not cache road vehicle path within 8 tiles of destination with ↵Jonathan G Rennison
multiple entrances Ported from jgrpp commit 79d5be7e265df3be8b73d484f0c7261b3c23229d
2019-11-10Cleanup: Removed SVN headersS. D. Cloudt
2019-09-30Fix: GCC9's warnings about deprecated implicit assignment operatorsCharles Pigott
2019-06-30Change: Avoid caching end of ship path, to allow penalties to apply.peter1138
2019-06-30Add: Penalty for occupied docking points.peter1138
2019-06-30Feature: Multi-tile docks and docking points.peter1138
2019-05-01Feature: Add NotRoadTypes (NRT)peter1138
2019-04-29Codechange: Remove Track{dir,}{Bits,}Byte typesCharles Pigott
2019-04-10Codechange: Use null pointer literal instead of the NULL macroHenry Wilson
2019-03-08Add: Road vehicle path cache. (#7261)PeterN
2019-03-08Change: Automatically use Trackdir node key as needed if ship curve ↵Peter Nelson
penalties differ.
2019-03-08Change: Add configurable curve penalty for ships.Peter Nelson
2019-03-03Change: Don't apply forbid 90 deg turn settings to ships.Peter Nelson
2019-01-26Codechange: Use track functions.J0an Josep
2019-01-19Change: Add path cache for ships.Peter Nelson
2019-01-06Codechange: [YAPF] Stop looking for an automatic servicing road depot when ↵Juanjo!
the cost of a path exceeds max. penalty.
2018-10-31Fix: Protect against a few out of bounds or uninitialised usage errorsCharles Pigott
2018-10-31Doc: Lots and lots of doxymentation fixesCharles Pigott
2018-06-27Codechange: Use HasTrack(dir) to improve code readability.J0anJosep
2018-06-27Codechange: Increase readability of track functions and pathfinders.J0anJosep
2018-04-30Codechange: Use TileAddBy(Diag)Dir when possible.J0anJosep
2018-04-11Remove: NO_DEBUG_MESSAGES was only read and setting it broke compilation (#6703)Patric Stout
Given any speed issue cannot be attributed to checking for _debug_NNN_level, removing this is a safe action This fixes #6652.
2017-08-13(svn r27893) -Codechange: Use fallthrough attribute. (LordAro)frosch
2017-06-22(svn r27885) -Cleanup (r27844): ESR_MAX_COST_EXCEEDED and ESR_PATH_TOO_LONG ↵frosch
meant the same thing, but only one was used. Keep PATH_TOO_LONG since it has the better documentation.
2017-04-04(svn r27846) -Fix [FS#5926]: Infinite loop in pathfinder when checking safe ↵peter1138
waiting position from a waypoint.
2017-04-03(svn r27845) -Change: (Yapf) Use FindDepotData struct to simplify depot ↵peter1138
finding code and remove need to return fake path distance. (juanjo)
2017-04-03(svn r27844) -Change: (Yapf) Treat max cost exceeded separately from path ↵peter1138
too long condition, as destination should not be considered in the former case.
2017-04-03(svn r27843) -Change: (Yapf) Consider depot as destination before reversing ↵peter1138
path and applying penalty.
2016-05-29(svn r27586) -Fix [FS#6410]: Automatic servicing of road vehicles compared ↵frosch
path finder costs with tile distances, thus vehicles went to depots which were factor 100 too far away. (juanjo)
2015-08-08(svn r27363) -Codechange: Fix codestyle of one-line methods and header ↵alberth
codestyle of derived structs.
2015-08-08(svn r27362) -Codechange: Codestyle fixes for reference var declarations, ↵alberth
static cast type, operator methods.
2015-07-12(svn r27332) -Change: Enable YAPF cache debugging with desync debug level 2.frosch
2014-04-23(svn r26482) -Codechange: add an include that allows us to undefine/redefine ↵rubidium
"unsafe" functions to prevent them from being used, and thus having to care about certain aspects of their return values
2013-11-26(svn r26117) -Cleanup: unneeded NULL checkrubidium
2013-11-23(svn r26058) -Fix: handle the return value of a number of functions betterrubidium
2013-07-14(svn r25609) -Fix [FS#5216]: under certain circumstances a track type change ↵rubidium
would make the end-of-line-is-red setting ineffective
2013-07-14(svn r25608) -Codechange: make EndSegmentReasonBits available in yapf_base.hpprubidium