--- deliantra/server/Changes 2009/11/11 17:41:13 1.508 +++ deliantra/server/Changes 2009/11/12 01:11:52 1.510 @@ -6,9 +6,7 @@ TODO: think about naking the rhyzian amulet useful - makes little sense in deliantra? TODO: cast invisible... -TODO: update_stats delay for players, between commands etc. TODO: get_nearest_player slow -TODO: speed_left dumping very slow - TRIGGER events got passed a garbage pointer instead of a real player object on player changes. - shop specialisation calculation was totally broken. @@ -21,8 +19,9 @@ - balancing change, halve rod recharge speed (instead of 4.8s, the standard rods now recharge in ~10s. not a solution, but still. - - reduce cpu time used for map saving by >40% by avoiding - the costly flasg-checking loop in most cases. + - reduce cpu time used for map saving by >>50% by avoiding + the costly flag-checking loop in most cases and using a simple + repeat-cache for speed_left. - always delay stats update for players on insert/remove till next tick/command, which saves a lot of cpu cycles on drop/take. - pet monster level was not displayed correctly in "showpets index". @@ -44,6 +43,8 @@ - store hash value in shstr, not used by anything, but doesn't use much memory. - fixed crash bug in learn_spell command. - remove all traces of FLAG_NO_FIX_PLAYER. + - avoid sv_derived_from calls (lots of hash lookups) when converting + from perl to c++. - implemented least_significand_bit and for_all_bits_sparse_32 utilities and use it in some "inner" loops. - rename flags to attachable_flags to avoid confusion :=).