Commit Graph

147 Commits (8f45efa8ddcac130b6b115a2bdf32d7fc21b019e)

Author SHA1 Message Date
michi_cc 1b7de43e80 (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 c04ab6628b (svn r14048) -Fix (r14019) [FS#2222]: Redo the check for reserved tracks properly this time. (michi_cc) 16 years ago
smatz cc3685ffaf (svn r14024) -Fix (r14019) [YAPP]: YAPF also skips tunnels and bridges. Honor that in penalty calculations. (michi_cc) 16 years ago
smatz 872cefeb27 (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 de629dd62f (svn r14019) -Fix [FS#2205]: game crash after order skip while waiting for free path (michi_cc). 16 years ago
smatz dcc10a3b8f (svn r13985) -Fix (r13944): gcc 2.95 compilation 16 years ago
rubidium 773f19da05 (svn r13945) -Codechange [YAPP]: Extend CFollowTrackT to not require a Vehicle when following rail. (michi_cc) 16 years ago
rubidium 53cc7e8a5c (svn r13944) -Add [YAPP]: Add YAPF provider to find a safe tile and reserve a path. (michi_cc) 16 years ago
rubidium 2b153abd93 (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 ecc509195a (svn r13942) -Codechange [YAPP]: Add a penalty for double slips to YAPF. (michi_cc) 16 years ago
rubidium 8c7983727e (svn r13941) -Codechange [YAPP]: Added YAPP-related penalties to YAPF. (michi_cc) 16 years ago
rubidium abc46b1e86 (svn r13940) -Add [YAPP]: YAPF is now able to reserve the found path. (michi_cc) 16 years ago
rubidium c91c12adde (svn r13939) -Add [YAPP]: Extend YAPF with the possibility to override the railtype info of the vehicle. (michi_cc) 16 years ago
rubidium 5c55922a06 (svn r13934) -Codechange [YAPP]: Handle through signals in the pathfinders. (michi_cc) 16 years ago
rubidium 7f6382badd (svn r13464) -Codechange: support NewGRF Action 0x05, type 12. 17 years ago
rubidium 3efece1284 (svn r13357) -Codechange: add constness to YAPF. 17 years ago
rubidium 923e21129c (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. 17 years ago
rubidium 4625695653 (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.
17 years ago
smatz ec627dedf8 (svn r13090) -Codechange: add functions for direct conversion from DiagDirection to Track and Trackbits 17 years ago
rubidium d03994098b (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. 17 years ago
rubidium fb1db90cc6 (svn r12969) -Codechange: remove a completely pointless file. 17 years ago
rubidium 02cdf01507 (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. 17 years ago
smatz 059e94e355 (svn r12753) -Codechange: do not use IsDepotTypeTile() where simpler function can be used 17 years ago
smatz 9488db56d4 (svn r12745) -Codechange: a bit of naming conventions, introduce Is*DepotTile() 17 years ago
rubidium d6623cf654 (svn r12588) -Codechange: do not access the destination of an order directly. 17 years ago
rubidium 5b47f81b0f (svn r12584) -Codechange: do not access the order type directly. 17 years ago
rubidium 2edd403656 (svn r12489) -Codechange: split station.h into station_base.h and station_func.h. 17 years ago
rubidium 7f139373aa (svn r12467) -Codechange: move DepotID to a more logical location. 17 years ago
maedhros 389d89ea49 (svn r12392) -Fix (r12391): Remove yapf/follow_track.cpp again. 17 years ago
maedhros 292cfc56f6 (svn r12391) -Feature: Show whether a town is a "city" in the town description title bar. 17 years ago
frosch 35fd0dfd4e (svn r12313) -Fix: YAPF and NTP did not apply penalty for uphill tracks on steep slopes. 17 years ago
KUDr e41df385d7 (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 b7993793c8 (svn r12199) -Codechange: Remove magic around the results of GetTileTrackStatus(). 17 years ago
smatz 2b8d1bcb51 (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 43c0f7ea8e (svn r12141) -Codechange: Introduce IsNormalRoad[Tile](), IsRoadDepot[Tile]() and HasTileRoadType(); and use them. 17 years ago
belugas 62b3520e51 (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 2a2aa1d22a (svn r12056) -Fix [FS#1704]: Enable YAPF to start searching inside a wormhole. 17 years ago
frosch 45b79bc9f1 (svn r12035) -Fix [FS#1702]: Teach YAPF where trams can reverse, and where not. 17 years ago
smatz 5a7c903770 (svn r11968) -Codechange: remove redundant FindLengthOfTunnel(), use GetTunnelBridgeLength() and/or GetOtherTunnelEnd() instead 17 years ago
smatz 0b888ccc00 (svn r11960) -Cleanup: simplify some IsTunnel(Tile) / IsBridge(Tile) conditions 17 years ago
frosch b99c83246b (svn r11946) -Fix: slope detection of bridge ramps.
YAPF failed for steep slopes.
  Trolly failed for a lot.
17 years ago
rubidium 998d7644f6 (svn r11800) -Codechange: move some functions to a more logical location + some type safety. 17 years ago
rubidium b0ac283aec (svn r11774) -Change: do not include variables.h in a header when it is not needed. 17 years ago
rubidium 384503e7d3 (svn r11706) -Codechange: split vehicle.h and remove another bunch of useless includes. 17 years ago
rubidium b9046c97fb (svn r11702) -Codechange: move all date related stuff to date*. 17 years ago
rubidium 2786d789a1 (svn r11701) -Codechange: removal unnecessary inclusions of map.h (and split map.h). 17 years ago
rubidium 6a9e77e079 (svn r11680) -Codechange: refactor more out of openttd.h and functions.h. 17 years ago
rubidium 5b49e75453 (svn r11669) -Codechange: refactor tile.h -> tile_type.h and tile_map.h 17 years ago
smatz 3cee0abdba (svn r11644) -Codechange: merge some functions from tunnel_map.h and bridge_map.h into tunnelbridge_map.h 17 years ago
skidd13 71c4325c50 (svn r11481) -Codechange: Rename the HASBIT function to fit with the naming style 17 years ago
truelight 4b8aaa994c (svn r11383) -Codechange: fixed all the mess around KillFirstBit (tnx to Rubidium and skidd13) 17 years ago
rubidium 7fb3f54584 (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 d71d48434d (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 0452fc482d (svn r10492) -Fix [YAPF, r10491]: commands with no effect (glx) 17 years ago
KUDr 3efc078e2f (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 d3c7a7fa8c (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 dd697570e5 (svn r10423) -Fix [YAPF, r10301]: INVALID_TRACKDIR causing buffer overrun leading to desync in MP game (many thanks Rubidium) 17 years ago
KUDr f9cac3c71b (svn r10395) -Fix [YAPF]: missing include + some signed/unsigned comparison warnings 17 years ago
KUDr cbbee4da48 (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 09ef044f9d (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 c37dc87ad2 (svn r10392) -Add [YAPF]: added structured dump support into some essential YAPF classes (node-list, nodes, keys, etc.) and CArrayT 17 years ago
KUDr 15bf8e1e58 (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.
18 years ago
KUDr 5b8e48f555 (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).
18 years ago
KUDr 59090c53d8 (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) 18 years ago
KUDr ac9fb1c34e (svn r10303) -Fix [YAPF](r10301): warning: unused variable tile_cost (peter1138) 18 years ago
KUDr ef4c335cb4 (svn r10301) -Fix [FS#901, YAPF]: another assert violation in some special cases (immeR) 18 years ago
KUDr fad2a36b8f (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) 18 years ago
glx 2958f0c53a (svn r10006) -Fix (FS#362): allow different signal types on one tile 18 years ago
rubidium 9e7798c42e (svn r9922) -Fix (r9914): [YAPF] null pointer dereference. 18 years ago
rubidium 440d723d84 (svn r9914) -Codechange: prepare GTTS and the pathfinders to handle multiple road types on a single tile. 18 years ago
rubidium ba24c34f85 (svn r9869) -Codechange: replace some bytes with VehicleType, i.e. more type strictness. 18 years ago
KUDr bf04c88eca (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 18 years ago
KUDr 027597f485 (svn r9745) -Codechange [YAPF}: if destination is a waypoint then YAPF gets destination tile from that waypoint->xy instead of from v->dest_tile 18 years ago
KUDr d0de381c30 (svn r9697) -Fix [YAPF](r9694): 'unused variable' warning (glx) 18 years ago
KUDr 3df2656633 (svn r9694) -Fix [YAPF][FS#736]: the guessed path (when PF stopped on max. # of nodes passed) was ignored for ships (desolator) 18 years ago
KUDr 4728765870 (svn r9693) -Codechange [YAPF]: GetBestNode() now returns pointer to node instead of reference 18 years ago
belugas d6651c1741 (svn r9665) -Documentation: Doxygen corrections,errors, corrections of corrections... 18 years ago
maedhros ccaaa7d33a (svn r9609) -Codechange: Move some function prototypes out of functions.h and into landscape.h, and add a few where they didn't exist. 18 years ago
rubidium ce919e8c71 (svn r9068) -Codechange: capitalize the VEH_Train etc. enums to match the coding style (and rest of the code). 18 years ago
rubidium 24c4d5b06d (svn r9051) -Codechange: typedef [enum|struct] Y {} X; -> [enum|struct] X {}; 18 years ago
rubidium 36bb92ae24 (svn r9050) -Codechange: Foo(void) -> Foo() 18 years ago
belugas b71354dc40 (svn r8987) -Cleanup: doxygen changes. Again. Mostly (still) @files missing tags and (more than just) a few comments style. 18 years ago
tron 3ce4baa9fc (svn r8899) -Fix
Remove the unused second parameter from GetTileRailType()
18 years ago
KUDr 029ceda0f1 (svn r8869) [YAPF] -Fix: Large Train Stations/Trains makes OpenTTD crash (Jigsaw_Psyche) 18 years ago
KUDr 9cdf6fdc7e (svn r8867) -Fix(r8866): revert yapf_costrail.hpp commited by mistake, helpers.hpp had wrong line ending 18 years ago
KUDr f3d5fda36c (svn r8866) -Doc: added more comments to template struct MakeEnumPropsT 18 years ago
celestar 0ed4b64e64 (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 f24122ba3d (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 ee0739561d (svn r8766) -Fix[YAPF]: rail station platform penalty not calculated properly 18 years ago
rubidium 0e8f006dc1 (svn r8735) -Feature: drive-through road stops made possible by the hard work of mart3p. 18 years ago
celestar d9385f2798 (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 09502deabe (svn r8392) -Fix
Use HASBIT() instead of implementing it manually
18 years ago
KUDr f2e5e604fb (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 a352bf8529 (svn r8080) -Codechange (r8079): Move the *WHOLE* performance code into the #ifndef and some style changes. 18 years ago
KUDr e896d7814a (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 f35ed4bbc2 (svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b. 18 years ago
rubidium 66bbf336c6 (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