nano-cleanups
- identified random memory corrutpion bug - fixed most likely cause for bug above - rewrote object loader etc. into a simple one-line lookahead parser. - rewrote/cleaned up archetype, treasure, artifact, formula parser. - some optimisations / cleanups
Object => object
rework material code in preparation for nuking object->materials, also add some useful object methods in preparation of the mapspace limiting
- experimentall.y determine minimum random map size (12) - harden random map generator by stresstesting - reduced codesize while increasing readability (RANDOM => rndm) - fixed a likely unimportant bug in random_roll64 - possibly broke lots of code
- move util/world.png to server/lib/ (should go to maps/world.png, but I will not fiddle around with that now) - compile worldmap to world.pst and install it. - rename FLAG_NO_SAVE to FLAG_NO_MAP_SAVE - define FABS to fabs, as intended - fix all(?) the FABS(int) calls
just experimenting
comments
added some copyrights
implemented proper support for empty treasures, which sadly occur in empty treasure lists. fixing treasurelists to have no entries at all would be even more complicated, but even when this is fixed, the current changes only make the server more crash robust to bad treasures. Also removed the 'NONE' specialcase for treasure lists. Developers should use 'none' instead now.
- added maptile->insert and object->insert_at methods that might make code using it clearer. - replaced some insert_ob_in_map calls.
replace update_ob_speed by ->set_speed
- minor cleanups - minor optimisations (in_player vs. is_player_inv) - added P_PLAYER map flag - some (dead) concept code
fixed some callers of find_treasurelist to handle non existing treasurelists more gracefully ('gracefully' as in 'do not crash').
limit difficulty in treasure generation to 1..max_level
- more ooficiation - removed now superfluous remove calls
replace some function- by method-calls
*** empty log message ***
* nuke op->contr when players log out, to avoid dereferencing them later :( * also rename free to destroy * do not create weird messages when people examine pseudo inventory objects
realign struct living and make food 32 bit
indent
cleanup
- introduce shstr_cmp for mass comparisons to shstr and make use of it - introduce assign utility function to replace strncpy
indent
fix a few ugly pod-constructs on non-pod objects, and a few newly introduced bugs
Cleaned up code a little.
*** empty log message ***
fix, uhm, bug. da.
Changes... - alternative shstr representation, saves code - use glibs splice memory allocator (seems slower) - use simpler memory/lifetime management for objects, no recycling
string scanning (e.g. for patch) is not implemented ATM but should be easy to add with an alternative constructor for object_thawer. Rewrote flex scanner to be simpler, faster and more modularised. Initial speedup: 16% (ah well)
removed ox/oy, and then added shstr stuff to the recipes in alchemy
for some unexplicable reasons, it seems to run after fixing the obvious errors
THIS CODE WILL NOT COMPILE use the STABLE tag instead. - major changes in object lifetime and memory management - replaced manual refcounting by shstr class - removed quest system - many optimisations - major changes
*** empty log message ***
improve thawer interface, implement some monster event support
expand initial tabs to spaces
improved,more automatic freezer
first, untested persistent objetc storage for players and objects, not yte for maps
Made server compile with C++. Removed cfanim plugin and crossedit. C++ here we come.
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, select a symbolic revision name using the selection box, or choose 'Use Text Field' and enter a numeric revision.