Commit Graph

46 Commits (182283a67ce4c28cc47c9b978f8c9b9075538ef4)

Author SHA1 Message Date
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 18 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. 18 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. 18 years ago
KUDr 90fe88a7af (svn r10392) -Add [YAPF]: added structured dump support into some essential YAPF classes (node-list, nodes, keys, etc.) and CArrayT 18 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.
18 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).
18 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) 18 years ago
KUDr 1983b349f6 (svn r10303) -Fix [YAPF](r10301): warning: unused variable tile_cost (peter1138) 18 years ago
KUDr db6710fb16 (svn r10301) -Fix [FS#901, YAPF]: another assert violation in some special cases (immeR) 18 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) 18 years ago
glx 6a4be9758c (svn r10006) -Fix (FS#362): allow different signal types on one tile 18 years ago
rubidium c3993ee666 (svn r9922) -Fix (r9914): [YAPF] null pointer dereference. 18 years ago
rubidium 821e58ac95 (svn r9914) -Codechange: prepare GTTS and the pathfinders to handle multiple road types on a single tile. 18 years ago
rubidium c8d05162c2 (svn r9869) -Codechange: replace some bytes with VehicleType, i.e. more type strictness. 18 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 18 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 18 years ago
KUDr 02a3cc784d (svn r9697) -Fix [YAPF](r9694): 'unused variable' warning (glx) 18 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) 18 years ago
KUDr 1a7fec1894 (svn r9693) -Codechange [YAPF]: GetBestNode() now returns pointer to node instead of reference 18 years ago
belugas 0eaa72e324 (svn r9665) -Documentation: Doxygen corrections,errors, corrections of corrections... 18 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. 18 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