--- deliantra/server/Changes 2009/11/29 17:41:07 1.527 +++ deliantra/server/Changes 2010/04/11 04:20:57 1.620 @@ -1,13 +1,206 @@ Deliantra MORPG Server, Maps and Archetypes ChangeLog. + Version numbers sort like decimal numbers. +2010-04-07 23:58:02.2729 [ABT] BUG: hitter ({cnt:4994384,uuid:<1.7f744a072>,name:"icestorm",flags:[8,11],type:102}(on /gotischerbereich/mlabspiraltower/std5@0+6)) with no relation to target ({cnt:4984688,uuid:<1.7f742acea>,name:"Dread",flags:[0,8,11,14,21,52,103,104],type:0}(on /gotischerbereich/mlabspiraltower/stc5@15+5)) at /opt/deliantra-server/share/deliantra-server/cf.pm line 3951 +2010-04-07 23:58:02.2729+ eval {...} called at /opt/deliantra-server/share/deliantra-server/cf.pm line 3951 +2010-04-07 23:58:02.2729+ cf::tick() called at /opt/deliantra-server/share/deliantra-server/cf.pm line 3519 +2010-04-07 23:58:02.2729+ cf::main_loop() called at /opt/deliantra-server/share/deliantra-server/cf.pm line 3579 +2010-04-07 23:58:02.2729+ cf::main() called at -e line 0 +2010-04-07 23:58:02.2729+ +2010-04-07 23:58:02.2729 [ABT] --- C backtrace follows --- +2010-04-07 23:58:02.2729 [ABT] [log_backtrace(char const*)] /root/src/cf.schmorp.de/server/server/./cfperl.xs:1259 +2010-04-07 23:58:02.2730 [ABT] [LOG(int, char const*, ...)] /root/src/cf.schmorp.de/server/common/logger.C:209 +2010-04-07 23:58:02.2730 [ABT] [get_attack_mode] /root/src/cf.schmorp.de/server/server/attack.C:678 +2010-04-07 23:58:02.2730 [ABT] [hit_player(object*, int, object*, unsigned int, int)] /root/src/cf.schmorp.de/server/server/attack.C:1447 +2010-04-07 23:58:02.2730 [ABT] [hit_map(object*, int, unsigned int, int)] /root/src/cf.schmorp.de/server/server/attack.C:348 +2010-04-07 23:58:02.2730 [ABT] [move_cone(object*)] /root/src/cf.schmorp.de/server/server/spell_attack.C:2066 +2010-04-07 23:58:02.2730 [ABT] [process_object(object*)] /root/src/cf.schmorp.de/server/server/time.C:1356 +2010-04-07 23:58:02.2731 [ABT] [process_events] /root/src/cf.schmorp.de/server/server/main.C:275 +2010-04-07 23:58:02.2731 [ABT] [server_tick()] /root/src/cf.schmorp.de/server/server/main.C:405 +2010-04-07 23:58:02.2731 [ABT] [XS_cf_server_tick] /root/src/cf.schmorp.de/server/server/./cfperl.xs:1641 +2010-04-07 23:58:02.2731 [ABT] [Perl_pp_entersub] /root/cvt/perl/perl-5.10.0/pp_hot.c:2851 +2010-04-07 23:58:02.2731 [ABT] [Perl_runops_standard] /root/cvt/perl/perl-5.10.0/run.c:38 +2010-04-07 23:58:02.2731 [ABT] [Perl_call_sv] /root/cvt/perl/perl-5.10.0/perl.c:2632 +2010-04-07 23:58:02.2731 [ABT] [cfperl_tick()] /root/src/cf.schmorp.de/server/server/./cfperl.xs:1052 +2010-04-07 23:58:02.2731 [ABT] [??] ??:0 +2010-04-07 23:58:02.2732 [ABT] [??] ??:0 +2010-04-07 23:58:02.2732 [ABT] [??] ??:0 +2010-04-07 23:58:02.2732 [ABT] [Perl_pp_entersub] /root/cvt/perl/perl-5.10.0/pp_hot.c:2851 +2010-04-07 23:58:02.2732 [ABT] [Perl_runops_standard] /root/cvt/perl/perl-5.10.0/run.c:38 +2010-04-07 23:58:02.2732 [ABT] [Perl_call_sv] /root/cvt/perl/perl-5.10.0/perl.c:2632 +2010-04-07 23:58:02.2732 [ABT] [main] /root/src/cf.schmorp.de/server/server/main.C:428 + TODO: apartment-descritpions for gotisch1/2 TODO: it is possible to inventory-lock items on the floor, and *spomehow* possible to drop them. TODO: think about naking the rhyzian amulet useful - makes little sense in deliantra? -TODO: cast invisible... +TODO: build code marks all sorts of objects as unique TODO: 2009-11-29 12:48:48.3974 /opt/crossfire/share/crossfire/treasures:5729, "arch stonebig_club": treasure references unknown archetype -TODO: cf:objecT::find_by_count!!11 +TODO: 2009-11-09 02:36:57.7199 unable to resolve postponed arch reference to 'Hanuk' +TODO: summon cult does not properly create multipart monsters? +2010-01-16 20:39:27.1222 BUG: process_events(): Object {cnt:2127760,uuid:<1.7241a5bd1>,name:"throwing dagger",flags:[17,24],type:48}(on /brest/ludo2@8+2) has no speed (-0.033333), but is on active list + +TODO: removing a single map tag from one map kills the tag on other maps as well, apparently +TODO: savebed_map {link} bed_x 1 bed_y 4, player changer? +TODO: freed objects cache instead of salloc/sfree + +TODO: do not show msg for unidentified objects. +TODO: set_ranged_ob/set_combat_ob, clear spells etc. removal of slot_Type etc. +TODO: thrown objects hit natively (with their own skill). +TODO: golem survives "longer" now. +TODO: slow down some skills (e.g. stealing) +TODO: apply range checkign should go to apply_special +TODO: stealing, mining, others has no "there is nothing" message. +TODO: unapply item before imporoving it, in case we can't apply it anymore afterwards. +TODO: common/readable generates archetype names in books: "A mushroom_1 of Antitoxin is a rare item..." +TODO: clean up skill handling in kill_object. + - (maps) the mana fountain now has a ratelimit of 30 potions per hour. + - (maps) added (navar) gravedigger, that buys players gravestones. + - (maps) added the rathouse quest for the shockwave spell in navar + (by Dustfinger). + - made (wizard) look_at show also uuids. + - added cf::object::find_object_uuid (::find_object already exists!). + - (maps) added new apartment, made by LinuxLemoner. + - (maps) added quest for the mining skill scroll to valleynoy. + - (arch) added sounds: zombie death, book reading, inscription. + - (arch) made the hill giants loose more body parts. + - (arch, maps) added black unicorn horn, required to access mlab hell. + - diseases could reduce a monsters speed to MIN_ACTIVE_SPEED, which + caused overflows causing monsters to become living deads. + - unapply weapons and armour before trying to improve it. + - teach the random map generator the ability to read ".rmg" files + that specify which actual style map to generate, and use it for + the default decorstyle to avoid inappropriate maps to be used. + - move_type changes (spells, skills etc.) now will correctly + take move_on/move_off into account (e.g. buttons). + - display (exit) or (random map) in client for those objects. + - removed (useless) spell damage columns from spell info and replace + it by effective casting level - clients > 2.10 required to display + properly. + - building of levers/doors works again for all kinds of floors. + - the player can now withdraw and deposit all the available money. + - (maps) fix the apartment shop (japan => 吾妻) and add descriptions for + steinwandstadt/celvear. + - (maps) added /goodies map (goto *idkfa) with stuff useful for testing. + - improve editor support protoocl slightly, provide workarounds for 2.10 + clients. + - tcp.ext didn't unbind in reloads. + - map-tags.ext didn't properly close the database on reloads. + - cfutil skips .-directories when scanning. + - build.ext prevents players from building on other player's maps. + - rent.ext allows the dm to enter anytime. + - NPC_Dialogue adds a new predefined variable, $map. + - new "build" event hook. + - get rid of archetype min/max values except max_x (which should go, too). + - added fix_generated_item and cf::object::generate to XS interface. + - no longer use uppercase identifiers for saving anywhere, but support + them on loading, for old playerfiles and maps. + - removed is_legal_2ways_exit - this is apparently dead code, and + would be handled differently nowadays anyway. + - random map .meta were not being expired at all. + - replace move_ob/move_object functiony by the equivalent move method. + - update to automake 1.10. + - invitation to maps with unagressive and friendly monsters doesn't + require level 4 anymore. + - do not let update_stats muck with the chosen_skill anymore. + - monsters now rotate through all skills (in chosen_skill). + - fix lots of path-related buffer overflows in the random map generator. + - added detect mineral vein spell. + - support "wall overlays" in the random map generator - not very generic, + used by minable veins. + - (maps) relocated jeweler town to another directoy. + - (arch) implement mining pickaxes and mining skill. + - generate most constants for perl automatically. + - properly check for weapon name prefix ("Ragnarok's sword"). + - when player dies, restore his food to at least 200. + - support multiple inheritance for arch sources (inherit a,b,c). + - switch to storable-n-format for facedata, for better interoperability. + - implement generic "ranged" item framework (pickaxe, fishing rod). + - the singing skill actually respects the direction now. + - oratory and singing now require a direction. + - use_skill now requires that you can actually apply the skill tool. + - do not invoke perl on every user command anymore by providing + a comamnd and an unknown_command event. + - move mark, run, run_stop, fire and fire_stop commands back from + perl to C++, for speed reasons (basically undo patchset 1304). + - add a client_destroy event, so we don't have to hook the + attachable destroy event (which is called much more often). + - removed (unused) FLOOR object type. + - fix errornous change_abil messages for rods (and other types). + - remove include/commands.h and server/c_new.C, and refactor + all into server/commands.C. + - save and restore combat/ranged/current slot for players. + - the server now batches item's face/fx commands, as opposed + to sending one fx per item - helps mostly at connect and + with floorbox updates. + - implemented ext::player_env::play_music_once $who->contr, "km/...". + - the random map generator now supports selecting difficult for + more style categories than just monsters (all except fountains + apparently). + - object serialiser no longer creates empty "owner" references. + - make sure failed castings take some time, too, to avoid being + smitten by your god. + - many more failmsgs and help texts. + +2.93 Sat Feb 13 15:52:36 CET 2010 + - (maps) fix travel to valdor and back. + - do no longer by default eval map cod ein safe compartments + (this can be re-enabled using the safe_eval config option). + - (maps) fix an apparent crash bug caused by broken generstors + in lorak. + - fix data corruption issues caused by recursive calls to + unordered_mapwalk - now every caller must provide its own + buffer. + - (maps) improve tindervale maps slightly. + - (arch) considerably decrease slag ex price. + - (arch) fix filth archetype. + - extension dependency resolve was completely broken. + - multipart objects would cause save_throw_object to crash - it + now acts on the head only. + - do not try to connect to an irc server unless explicitly configured. + - do not expect decltype() to be available in gcc 4.4. + - extended the safe perl environment by loops. + - (arch) fix "armless cook" facings. + - the "experience table" resource item did not have a proper + hash associated with it, so updates could not be detected. + - fixed poison traps in doors. + - player->killer_name did not properly flag the name as unicode. + - aggressively mark many more methods as utf8 or octet-expecting, + and provide a non-destructive SvPVutf8 variant. + - do not allow dragon players to change their title via the settings. + - ratelimited jeweler skill nugget conversion. + - under high load, the server stopped swapping out to make + the server more responsive, but making it impossible to reduce + the load by... swapping out. slot queuing will now always make + some progress. + - improve the quality of the load-avg calculation. + - (maps) fixed quest npc in jeweler dungeon quest. + - don't fail to write the runtime file if the temporary already exists. + - ipo.ext no longer uses (synchronous) CFDB, stores mail directly at + player now. + - rewrote hiscore code from scratch to use async I/O, store uuid and + timestamp and use a tab in the client to increase awareness. + - npc dialog setflag/setsatte now check for defined'ness, so + setflag 0 is possible. + - make install now deletes old extensions, to ease upgrades in the + deliantra vm. + +2.92 Thu Dec 24 04:51:56 CET 2009 + - the destruction spell could/would corrupt server memory quite often. + - logging in only fixed the combat slot when the palyer was loaded from + disk, not when it already was in memory. + - cede in wait_for_tick* when the tivck is inhibited hopefully + avoiding livelock during high-load emergency saves. + - logging in did not properly unapply all skills. + - (maps) make the invite quest marking much more obvious. + - (arch) fix warrior archetype names. + - map prefetching never prefetch upwards. + - wizpass no longer makes you non-blocking. + - (maps) add light to some of the special maps, add troll + map. + +2.91 Mon Nov 30 10:18:09 CET 2009 - (maps) add gorokh_final mapset from crossfire. - (maps) block most vault-type mlab locations, open up imperial converters for anybody to use. @@ -711,7 +904,7 @@ - refactored the object remove/insert functions and most related functions (decrease, split, merge_ob etc.). - make it compile better on freebsd (reported by pippijn). - - remove GT_UPDATE_INV (no longer applicable). + - removed GT_UPDATE_INV (no longer applicable). - fix the longstanding "container stays open" bug. - improved floorbox updating to be incremental and other protocol optimisations. @@ -1003,3 +1196,4 @@ - removed most all of the weather code - unified logging to stderr and file - too many minor changes to document +