Commit Graph

45 Commits (5bd241eb5b151dd9a5ebda0a93aff8740713ce62)

Author SHA1 Message Date
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.
17 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).
17 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) 17 years ago
KUDr ac9fb1c34e (svn r10303) -Fix [YAPF](r10301): warning: unused variable tile_cost (peter1138) 17 years ago
KUDr ef4c335cb4 (svn r10301) -Fix [FS#901, YAPF]: another assert violation in some special cases (immeR) 17 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) 17 years ago
glx 2958f0c53a (svn r10006) -Fix (FS#362): allow different signal types on one tile 17 years ago
rubidium 9e7798c42e (svn r9922) -Fix (r9914): [YAPF] null pointer dereference. 17 years ago
rubidium 440d723d84 (svn r9914) -Codechange: prepare GTTS and the pathfinders to handle multiple road types on a single tile. 17 years ago
rubidium ba24c34f85 (svn r9869) -Codechange: replace some bytes with VehicleType, i.e. more type strictness. 17 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 17 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 17 years ago
KUDr d0de381c30 (svn r9697) -Fix [YAPF](r9694): 'unused variable' warning (glx) 17 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) 17 years ago
KUDr 4728765870 (svn r9693) -Codechange [YAPF]: GetBestNode() now returns pointer to node instead of reference 17 years ago
belugas d6651c1741 (svn r9665) -Documentation: Doxygen corrections,errors, corrections of corrections... 17 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. 17 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