Commit Graph

147 Commits (fb773a2016134c5104f1474acfc1c5bca8372c91)

Author SHA1 Message Date
michi_cc 0ac103e506 (svn r14286) -Fix [FS#2265]: If a change of conventional/electric rail coincided with the start of a station platform, stale reservations could be left behind. 16 years ago
rubidium 467d6e31c3 (svn r14048) -Fix (r14019) [FS#2222]: Redo the check for reserved tracks properly this time. (michi_cc) 16 years ago
smatz dffc12fb23 (svn r14024) -Fix (r14019) [YAPP]: YAPF also skips tunnels and bridges. Honor that in penalty calculations. (michi_cc) 16 years ago
smatz 5b3d1432df (svn r14023) -Fix (r13944) [YAPP]: If YAPF encountered a dead-end that had a signal on it, is could be falsely seen as a valid destination. (michi_cc) 16 years ago
rubidium 9f239cca37 (svn r14019) -Fix [FS#2205]: game crash after order skip while waiting for free path (michi_cc). 16 years ago
smatz bea84ea8d9 (svn r13985) -Fix (r13944): gcc 2.95 compilation 16 years ago
rubidium 3601e6e8ef (svn r13945) -Codechange [YAPP]: Extend CFollowTrackT to not require a Vehicle when following rail. (michi_cc) 16 years ago
rubidium c665f674ab (svn r13944) -Add [YAPP]: Add YAPF provider to find a safe tile and reserve a path. (michi_cc) 16 years ago
rubidium 22b787791f (svn r13943) -Codechange [YAPP]: Reserved station tiles can now be penalized more in YAPF. This should help with spread out stations. (michi_cc) 16 years ago
rubidium 968a0e907c (svn r13942) -Codechange [YAPP]: Add a penalty for double slips to YAPF. (michi_cc) 16 years ago
rubidium 27cfb68d93 (svn r13941) -Codechange [YAPP]: Added YAPP-related penalties to YAPF. (michi_cc) 16 years ago
rubidium 74b770a96a (svn r13940) -Add [YAPP]: YAPF is now able to reserve the found path. (michi_cc) 16 years ago
rubidium 80c7dbcae7 (svn r13939) -Add [YAPP]: Extend YAPF with the possibility to override the railtype info of the vehicle. (michi_cc) 16 years ago
rubidium d5def69d87 (svn r13934) -Codechange [YAPP]: Handle through signals in the pathfinders. (michi_cc) 16 years ago
rubidium ee843728bf (svn r13464) -Codechange: support NewGRF Action 0x05, type 12. 16 years ago
rubidium 5189877e3d (svn r13357) -Codechange: add constness to YAPF. 16 years ago
rubidium e7a501100a (svn r13325) -Codechange: split the client-side only settings from the settings stored in the savegame so there is no need to have a duplicate copy of it for new games. 16 years ago
rubidium dc77647ea4 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
-Codechange: move all Settings into substructs of _settings in a way that they are logically grouped.
16 years ago
smatz 2be223fc03 (svn r13090) -Codechange: add functions for direct conversion from DiagDirection to Track and Trackbits 16 years ago
rubidium 1ce0b03bf0 (svn r12971) -Documentation: add @file in files that missed them and add something more than whitespace as description of files that don't have a description. 16 years ago
rubidium 1ed3ea4705 (svn r12969) -Codechange: remove a completely pointless file. 16 years ago
rubidium 6d063c3ad6 (svn r12754) -Codechange: split depot.h into depot_map.h, depot_func.h and depot_base.h and remove quite a lot of unneeded (before this) includes of depot.h. 16 years ago
smatz ec588da9e8 (svn r12753) -Codechange: do not use IsDepotTypeTile() where simpler function can be used 16 years ago
smatz 966e476df8 (svn r12745) -Codechange: a bit of naming conventions, introduce Is*DepotTile() 16 years ago
rubidium 935b562074 (svn r12588) -Codechange: do not access the destination of an order directly. 16 years ago
rubidium 3b0e3d8d30 (svn r12584) -Codechange: do not access the order type directly. 16 years ago
rubidium c51b81c247 (svn r12489) -Codechange: split station.h into station_base.h and station_func.h. 16 years ago
rubidium 02eddad8d9 (svn r12467) -Codechange: move DepotID to a more logical location. 16 years ago
maedhros 0fd41a14fb (svn r12392) -Fix (r12391): Remove yapf/follow_track.cpp again. 17 years ago
maedhros 75719795c9 (svn r12391) -Feature: Show whether a town is a "city" in the town description title bar. 17 years ago
frosch 4ec7f33f8c (svn r12313) -Fix: YAPF and NTP did not apply penalty for uphill tracks on steep slopes. 17 years ago
KUDr ff7e789f83 (svn r12252) -Fix [FS#1801]: Broken FollowTrack_t related functions (thanks michi_cc).
-Fixed by removing FollowTrack_t structure and all related functions. Their purpose was to allow to call track followers from C code. They were:
  1. never used
  2. obsoleted by switching to C++
17 years ago
frosch 7f3d56041b (svn r12199) -Codechange: Remove magic around the results of GetTileTrackStatus(). 17 years ago
smatz 70b7bfe9c8 (svn r12190) -Fix [FS#1786](r8080): YAPF always shows 0ms PF time in debug for debug level 2 (patch by IguannaB) 17 years ago
frosch 514df81e27 (svn r12141) -Codechange: Introduce IsNormalRoad[Tile](), IsRoadDepot[Tile]() and HasTileRoadType(); and use them. 17 years ago
belugas 7f5f48281c (svn r12066) -Codechange: Rename GetBridge for the more common GetBridgeSpec
-Codechange: Remove direct access to the _bridge table in favor of the above mentioned GetBridgeSpec
-Codechange: Rationalize the use of Bridge type pointer
17 years ago
frosch 99817bd5f0 (svn r12056) -Fix [FS#1704]: Enable YAPF to start searching inside a wormhole. 17 years ago
frosch 781828c1b6 (svn r12035) -Fix [FS#1702]: Teach YAPF where trams can reverse, and where not. 17 years ago
smatz 74af65e556 (svn r11968) -Codechange: remove redundant FindLengthOfTunnel(), use GetTunnelBridgeLength() and/or GetOtherTunnelEnd() instead 17 years ago
smatz 8be486c27e (svn r11960) -Cleanup: simplify some IsTunnel(Tile) / IsBridge(Tile) conditions 17 years ago
frosch 8a72af3a13 (svn r11946) -Fix: slope detection of bridge ramps.
YAPF failed for steep slopes.
  Trolly failed for a lot.
17 years ago
rubidium 2d2e1e3863 (svn r11800) -Codechange: move some functions to a more logical location + some type safety. 17 years ago
rubidium 444e77d8bc (svn r11774) -Change: do not include variables.h in a header when it is not needed. 17 years ago
rubidium 722613f7f3 (svn r11706) -Codechange: split vehicle.h and remove another bunch of useless includes. 17 years ago
rubidium db73addb43 (svn r11702) -Codechange: move all date related stuff to date*. 17 years ago
rubidium f82aeb82c5 (svn r11701) -Codechange: removal unnecessary inclusions of map.h (and split map.h). 17 years ago
rubidium 3074bca136 (svn r11680) -Codechange: refactor more out of openttd.h and functions.h. 17 years ago
rubidium be923601bf (svn r11669) -Codechange: refactor tile.h -> tile_type.h and tile_map.h 17 years ago
smatz 926fe5c9e9 (svn r11644) -Codechange: merge some functions from tunnel_map.h and bridge_map.h into tunnelbridge_map.h 17 years ago
skidd13 c0a2c0c23e (svn r11481) -Codechange: Rename the HASBIT function to fit with the naming style 17 years ago
truelight b935a74782 (svn r11383) -Codechange: fixed all the mess around KillFirstBit (tnx to Rubidium and skidd13) 17 years ago
rubidium 2800a49f03 (svn r10733) -Codechange: change MP_STREET into MP_ROAD as we use the word "road" everywhere except in the tile type. 17 years ago
KUDr 3df88dada8 (svn r10578) -Fix [YAPF, ships]: Ships received curve penalty for non-diagonal straight move. (JazzyJaffa)
-The fix in cost calculation uncovered bug in estimate calculation. Ships now use the same estimate algorithm as trains.
17 years ago
KUDr ad5a68a282 (svn r10492) -Fix [YAPF, r10491]: commands with no effect (glx) 17 years ago
KUDr 746a33747b (svn r10491) -Fix [FS#988, YAPF]: When rail segment was cached using electric engine and it ended with non-electric rail it was incorrectly cached with the end reason ESRB_DEAD_END instead of ESRB_RAIL_TYPE. (Eddi)
- It caused YAPF to end prematurely there when it was searching for another path (for non-electric engine).
 - It can lead to sub-optimal path taken or 'train is lost' message.
 - In MP game it can also cause desync.
 - Uses changes made in r10489.
17 years ago
KUDr b1b26ddb79 (svn r10489) -Codechange [YAPF]: FollowTrack_t now has new data member - m_err. It indicates the reason why the given track/trackdir can't be followed when method CFollowTrackT<>::Follow() returned false. 17 years ago
KUDr 2d31aef236 (svn r10423) -Fix [YAPF, r10301]: INVALID_TRACKDIR causing buffer overrun leading to desync in MP game (many thanks Rubidium) 17 years ago
KUDr f766c48bc4 (svn r10395) -Fix [YAPF]: missing include + some signed/unsigned comparison warnings 17 years ago
KUDr 1e54937ee1 (svn r10394) -Fix [YAPF]: MP desync caused by incorrect last-red-signal penalties applied when cached segment was reused. Players that connected more recently (didn't have these segments cached yet) calculated those penalties correctly. This caused different YAPF results. 17 years ago
KUDr 41b75d545e (svn r10393) -Fix [YAPF]: Trackdir needs 4 bits to store (not 3). The cached segment key didn't use the highest trackdir bit. It could confuse YAPF on bi-directional track segments. 17 years ago
KUDr 90fe88a7af (svn r10392) -Add [YAPF]: added structured dump support into some essential YAPF classes (node-list, nodes, keys, etc.) and CArrayT 17 years ago
KUDr 7eb0b004f3 (svn r10366) -Codechange [YAPF]: added DEBUG_YAPF_CACHE macro that (when set to 1) allows to track YAPF "cache errors". They are probably responsible for current MP desyncs. (thanks Rubidium for this great idea!).
I will deal with those errors/desyncs tomorrow.
17 years ago
KUDr 3332b21b19 (svn r10349) -Fix [FS#941, YAPF, r10301]: tile/trackdir must be used as node key and also as segment key in the cache (SmatZ).
In the past it was possible to use tile/exitdir as the key because segments beginning on the same tile/exitdir were incorrectly considered the same. What I still don't understand is why this bug happened only on 64 bit systems (linux, Win64).
17 years ago
KUDr 1c41258ec6 (svn r10304) -Fix [YAPF](r10301): removed assert which could violate without danger when searching for the nearest depot. From now on the segment can be closed without reason in that case (peter1138) 17 years ago
KUDr 1983b349f6 (svn r10303) -Fix [YAPF](r10301): warning: unused variable tile_cost (peter1138) 17 years ago
KUDr db6710fb16 (svn r10301) -Fix [FS#901, YAPF]: another assert violation in some special cases (immeR) 17 years ago
KUDr 80d71953ba (svn r10199) -Fix [FS#884, YAPF]: 'target_seen' flag that is set prematurely in some cases (1 tile long cached segment followed by target station) stops on assert (immeR) 17 years ago
glx 6a4be9758c (svn r10006) -Fix (FS#362): allow different signal types on one tile 17 years ago
rubidium c3993ee666 (svn r9922) -Fix (r9914): [YAPF] null pointer dereference. 17 years ago
rubidium 821e58ac95 (svn r9914) -Codechange: prepare GTTS and the pathfinders to handle multiple road types on a single tile. 17 years ago
rubidium c8d05162c2 (svn r9869) -Codechange: replace some bytes with VehicleType, i.e. more type strictness. 17 years ago
KUDr 1f627254c3 (svn r9746) -Codechange [YAPF]: added DEBUGs level 0 if the current train order is OT_GOTO_WAYPOINT and waypoint is invalid or v->dest_tile is wrong 17 years ago
KUDr b0eeaea3cd (svn r9745) -Codechange [YAPF}: if destination is a waypoint then YAPF gets destination tile from that waypoint->xy instead of from v->dest_tile 17 years ago
KUDr 02a3cc784d (svn r9697) -Fix [YAPF](r9694): 'unused variable' warning (glx) 17 years ago
KUDr 50aaa26e95 (svn r9694) -Fix [YAPF][FS#736]: the guessed path (when PF stopped on max. # of nodes passed) was ignored for ships (desolator) 17 years ago
KUDr 1a7fec1894 (svn r9693) -Codechange [YAPF]: GetBestNode() now returns pointer to node instead of reference 17 years ago
belugas 0eaa72e324 (svn r9665) -Documentation: Doxygen corrections,errors, corrections of corrections... 17 years ago
maedhros 3d81de8d7e (svn r9609) -Codechange: Move some function prototypes out of functions.h and into landscape.h, and add a few where they didn't exist. 17 years ago
rubidium 36cea84b11 (svn r9068) -Codechange: capitalize the VEH_Train etc. enums to match the coding style (and rest of the code). 18 years ago
rubidium 979ccd45ba (svn r9051) -Codechange: typedef [enum|struct] Y {} X; -> [enum|struct] X {}; 18 years ago
rubidium 4169bfba06 (svn r9050) -Codechange: Foo(void) -> Foo() 18 years ago
belugas 5792aa85c7 (svn r8987) -Cleanup: doxygen changes. Again. Mostly (still) @files missing tags and (more than just) a few comments style. 18 years ago
tron c0ec367e9b (svn r8899) -Fix
Remove the unused second parameter from GetTileRailType()
18 years ago
KUDr efb3637d0f (svn r8869) [YAPF] -Fix: Large Train Stations/Trains makes OpenTTD crash (Jigsaw_Psyche) 18 years ago
KUDr 93e3250d1e (svn r8867) -Fix(r8866): revert yapf_costrail.hpp commited by mistake, helpers.hpp had wrong line ending 18 years ago
KUDr 1c3d8fc1e3 (svn r8866) -Doc: added more comments to template struct MakeEnumPropsT 18 years ago
celestar dfa3c0aae1 (svn r8857) -Documentation: Added some doxygen @file tags, repaired others (the @file tag MUST be found before any line of code, that includes preprocessor directives). 18 years ago
KUDr f1ee924fc5 (svn r8836) [YAPF] -Fix[FS#641]: Assertion: 'IsTileDepotType(depot_tile, TRANSPORT_ROAD)' failed (Karsten)
-don't tell that we found destination if the best direction was only guessed
18 years ago
KUDr 3c0b59e46e (svn r8766) -Fix[YAPF]: rail station platform penalty not calculated properly 18 years ago
rubidium a2999dadc9 (svn r8735) -Feature: drive-through road stops made possible by the hard work of mart3p. 18 years ago
celestar 72e74c29d4 (svn r8709) -Fix/Codechange: Rename the function GetStationPlatforms into GetPlatformLength because that is what it really does. Overload it because there is already a GetPlatformLength (one gives the length of the whole platform, the other gives the remaining length in a given direction). Turned both functions into methods of Station. While messing around with it, fix a problem where loading times for overhanging trains are miscomputed. 18 years ago
tron 2e6c663b94 (svn r8392) -Fix
Use HASBIT() instead of implementing it manually
18 years ago
KUDr 574ded3afd (svn r8092) -Codechange: header files with miscellaneous template classes (smart pointers, blob, array, hashtable, etc.) moved from src/yapf to src/misc as they can now be used anywhere. 18 years ago
Darkvater a5cd65b3f9 (svn r8080) -Codechange (r8079): Move the *WHOLE* performance code into the #ifndef and some style changes. 18 years ago
KUDr ae7d52e5aa (svn r8079) -Fix [YAPF]: float division by zero when calculating stats (YAPF cache hit ratio). Caused BSOD on Win9x. (thanks 3iff for report, Darkvater for help) 18 years ago
rubidium a7d0cdf95f (svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b. 18 years ago
rubidium 013df98f79 (svn r7759) -Merge: makefile rewrite. This merge features:
- A proper ./configure, so everything needs to be configured only once, not for every make.
 - Usage of makedepend when available. This greatly reduces the time needed for generating the dependencies.
 - A generator for all project files. There is a single file with sources, which is used to generate Makefiles and the project files for MSVC.
 - Proper support for OSX universal binaries.
 - Object files for non-MSVC compiles are also placed in separate directories, making is faster to switch between debug and release compiles and it does not touch the directory with the source files.
 - Functionality to make a bundle of all needed files for for example a nightly or distribution of a binary with all needed GRFs and language files.

Note: as this merge moves almost all files, it is recommended to make a backup of your working copy before updating your working copy.
18 years ago