--- deliantra/server/Changes 2010/04/28 20:57:12 1.676 +++ deliantra/server/Changes 2010/07/02 03:40:13 1.737 @@ -2,102 +2,56 @@ 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 - -2010-04-28 20:39:50.4319 Asking for buy-value of unidentified object: {cnt:166814,uuid:<1.82d46d79f>,name:"ring of Calling Death notice",flags:[6,103],type:8}(on ~PincheCabron/nimbus@49+29) -2010-04-28 20:39:50.7517 [ABT] Asking for buy-value of unidentified object: {cnt:166814,uuid:<1.82d46d79f>,name:"ring of Calling Death notice",flags:[6,103],type:8}(on ~PincheCabron/nimbus@49+29) at /opt/deliantra-server/share/deliantra-server/cf.pm line 4003 -2010-04-28 20:39:50.7517+ eval {...} called at /opt/deliantra-server/share/deliantra-server/cf.pm line 4003 -2010-04-28 20:39:50.7517+ cf::tick() called at /opt/deliantra-server/share/deliantra-server/cf.pm line 3569 -2010-04-28 20:39:50.7517+ cf::main_loop() called at /opt/deliantra-server/share/deliantra-server/cf.pm line 3632 -2010-04-28 20:39:50.7517+ cf::main() called at -e line 0 -2010-04-28 20:39:50.7517+ -2010-04-28 20:39:50.7517 [ABT] --- C backtrace follows --- -2010-04-28 20:39:50.7517 [ABT] [log_backtrace(char const*)] /root/src/cf.schmorp.de/server/server/./cfperl.xs:1287 -2010-04-28 20:39:50.7517 [ABT] [LOG(int, char const*, ...)] /root/src/cf.schmorp.de/server/common/logger.C:228 -2010-04-28 20:39:50.7517 [ABT] [query_cost(object const*, object*, int)] /root/src/cf.schmorp.de/server/server/shop.C:128 -2010-04-28 20:39:50.7517 [ABT] [query_cost_string(object const*, object*, int)] /root/src/cf.schmorp.de/server/server/shop.C:368 -2010-04-28 20:39:50.7517 [ABT] [object::describe(object*)] /root/src/cf.schmorp.de/server/common/item.C:1326 -2010-04-28 20:39:50.7517 [ABT] [examine(object*, object*)] /root/src/cf.schmorp.de/server/common/item.C:1417 -2010-04-28 20:39:50.7517 [ABT] [manual_apply] /root/src/cf.schmorp.de/server/server/apply.C:3393 -2010-04-28 20:39:50.7517 [ABT] [object::apply(object*, int)] /root/src/cf.schmorp.de/server/server/apply.C:3720 -2010-04-28 20:39:50.7517 [ABT] [command_apply(object*, char*)] /root/src/cf.schmorp.de/server/server/c_object.C:164 -2010-04-28 20:39:50.7517 [ABT] [execute_newserver_command(object*, char*)] /root/src/cf.schmorp.de/server/server/commands.C:163 -2010-04-28 20:39:50.7517 [ABT] [PlayerCmd(char*, int, player*)] /root/src/cf.schmorp.de/server/socket/request.C:493 -2010-04-28 20:39:50.7517 [ABT] [refptr::operator->() const] /root/src/cf.schmorp.de/server/socket/../include/util.h:558 -2010-04-28 20:39:50.7517 [ABT] [client::execute(packet_type const*, char*, int)] /root/src/cf.schmorp.de/server/socket/lowlevel.C:245 -2010-04-28 20:39:50.7517 [ABT] [client::handle_command()] /root/src/cf.schmorp.de/server/socket/loop.C:107 -2010-04-28 20:39:50.7517 [ABT] [handle_newcs_player] /root/src/cf.schmorp.de/server/server/player.C:2076 -2010-04-28 20:39:50.7518 [ABT] [process_players1] /root/src/cf.schmorp.de/server/server/main.C:184 -2010-04-28 20:39:50.7518 [ABT] [process_events] /root/src/cf.schmorp.de/server/server/main.C:220 -2010-04-28 20:39:50.7518 [ABT] [server_tick()] /root/src/cf.schmorp.de/server/server/main.C:406 -2010-04-28 20:39:50.7518 [ABT] [XS_cf_server_tick] /root/src/cf.schmorp.de/server/server/./cfperl.xs:1668 -2010-04-28 20:39:50.7518 [ABT] [Perl_pp_entersub] /root/cvt/perl/perl-5.10.0/pp_hot.c:2851 -2010-04-28 20:39:50.7518 [ABT] [Perl_runops_standard] /root/cvt/perl/perl-5.10.0/run.c:38 -2010-04-28 20:39:50.7518 [ABT] [Perl_call_sv] /root/cvt/perl/perl-5.10.0/perl.c:2632 -2010-04-28 20:39:50.7518 [ABT] [cfperl_tick()] /root/src/cf.schmorp.de/server/server/./cfperl.xs:1078 -2010-04-28 20:39:50.7518 [ABT] [??] ??:0 -2010-04-28 20:39:50.7518 [ABT] [??] ??:0 - - -TODO: it is possible to inventory-lock items on the floor, and *spomehow* possible to drop them. - -TODO: 2009-11-29 12:48:48.3974 /opt/crossfire/share/crossfire/treasures:5729, "arch stonebig_club": treasure references unknown archetype -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: golem survives "longer" now - too long? TODO: clean up skill handling in kill_object. -TODO: make the "feed all faces" flag persistent between logins. TODO: mining experience -TODO: -2010-04-15 06:50:54.4317 victim {cnt:53513,uuid:<1.80d9c4f7d>,name:"Erich Emautti",title:"the Wizard",flags:[0,14,16,21,29,52,53,54,55,56,57,58,79,82,103,104],t -ype:0}(on /gotischerbereich/mlabspiraltower/sttop1@12+16) (-15411) already dead in hit_player() -TODO: 2010-04-16 00:11:12.8142 {cnt:414174,uuid:<1.80ffd5a6b>,name:"teleporter",flags:[8,11,103,105,106],type:41}(on /scorn/houses/house3.bas1@5+4): no alternative teleporters around (user {cnt:386700,uuid:<1.81001a4d6>,name:"mouse",flags:[0,8,11,14,16,104],type:0}(on /scorn/houses/house3.bas1@5+4)). -TODO: I can access all the apartments I have ever rented, even though I stopped renting them long ago. I have ever rented, even though I stopped renting them long ago. I can enter the scorn and SD apartments -TODO: mining class -TODO: freelist freeing TODO: highest cpu users: stand_in_light (object *op), get_map_flags, blocked_link, path_to_player -TODO: one can apply, but not open, containers without keys -TODO: fix luck in random rolls -TODO: additional error log -TODO: move sound.conf, jeweler conf to datadir... +TODO: reload_settings +TODO: thawer should not next() +TODO: pet experience is, rarely, given to the wrong skill (e.g. mining) +TODO: 2010-05-21 02:48:16.4562 D victim {cnt:109581,uuid:<1.858befa27>,name:"ice",flags:[0,8,103],type:23}(on /whalingoutpost/misc/icecavern1@8+43) (-21) already dead in hit_player() +TODO: jumping, maybe dimdoor works wonders with earthwalls in between. +TODO: cats dimdoor, invoke charm => watch Log-1 +TODO: fountain magic power and shop magic powre potions are different, also, potions are not identified +TODO: identify doesn't merge +TOOD: apply should only apply one stack items +TODO: fixed random maps, e.g. for buildings + +TODO: unapply cursed items in any way will confuse skills (try apply a bow, then hit monsters => missile weapojn exp and ugly msgs) +TODO: remove curse broken - doesn'T apply to unapplied weapons, nor can be cast easily +TODO: set flag when isolation remover needed, call finalise + - (maps) hopefully fix tobias' tower. + - (maps) hopefully fix healing potion vendor in arena entrance. + - (arch) fixed an error in the Gnarg scale mail artifact. + - creators no longer identify objects that shouldn't be identified + (such as money, which won't stack afterwards). + - use same default config in code as on gameserver.deliantra.net. + - Pod::POM 0.26 and higher actually interpret =encoding, which broke + our parser. + - applying a glowing crystal now gives status messages. + - fix a memleak in the random map generator. + - rework the random map parameter passign a bit to be extendable. + - (random maps) use a nonrecursive algorithm to generate mazes, + also, improve the quality of the mazes (no longer will the edges + almost always form a passage) and add two new types - "rooms" + and "braided". + - (random maps) add new "cave" layout, which is much more ... + cave-like. + - roguelike maps sometimes had dead ends due to symmetry settings. + - rewrite layout management in the random map generator from the + ground up. + - fix bug in tausworthe rng initialisation. + - switched to the faster and hopefully better quality gfsr{24,55} random + number generator, the same algorithm that freeciv apparently uses. + +3.0 Sat May 29 23:30:57 CEST 2010 - (maps, arch) complete revamping of the transport routes - all cities are now easily reachable, at a price. - (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). - - (maps) Fixed bad floor tile in navar apartment. + - (maps) fixed bad floor tile in navar apartment. - made (wizard) look_at show also uuids. - added cf::object::find_object_uuid (::find_object already exists!). - (maps) added new apartment, made by LinuxLemoner. @@ -114,10 +68,18 @@ - (maps) the library should be less of a death trap now. - (maps) exits no longer point to auto-apply exits, most affected maps now have proper doors or a similar solution. + - (arch) jumping skill has now physical attacktype. + - (maps) fixed nurnberg/reception/fire5 to match new style torches. + - enter_map did not normalise the map coordinates when the destination + space is blocked, causing badness and freezes for the player. + - when applying containers, server checks for the key on activate + and also allows players to unapply active containers they don't have + a key for. - moved formulae, attackmess, artifacts, exp_table, materials and races files to arch, where they belong (exp_table is no longer in confdir but in datadir now!). - - quit_character was causign a runtime exception, causing it to not + - jeweler and sound config files are now normal datafiles as well. + - quit_character was causing a runtime exception, causing it to not work since 2.93. - entering a map will now respect move_on and other effects, except for auto-apply exits :/ @@ -149,10 +111,15 @@ - (maps) added /goodies map (goto *idkfa) with stuff useful for testing. - (arch,maps,code) rebalanced value of spellbooks greatly. it's now mostly based on the spell's level in the spellbook. + - the music scheduler did not properly send new music on region + changes. - (maps) fix some map regions and the region tree. - the server will now be more picky when parsing the regions file. + - do not rely on chosen_skill in calc_alch_danger. - improve editor support protocol slightly, provide workarounds for 2.10 clients. + - follow has been rewritten to be, hopefully, more robust. + - follow mode will not be aborted when the follower tries to move. - tcp.ext didn't unbind in reloads. - map-tags.ext didn't properly close the database on reloads. - cfutil skips .-directories when scanning. @@ -183,6 +150,10 @@ - (arch) implement mining pickaxes and mining skill. - (arch) add missing stonebig_club archetype from cfextended. - jeweler skill doesn't diminish input values anymore. + - jeweler skill is harder to level now, but in exchange item power + of the output is only 1/5th (instead of 1/3rd) of ring level. + - jeweler skill adds the makers name (currently not visible) to the + generated ring/amulet. - 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. @@ -247,6 +218,35 @@ - (arch) made the spark shower spell available in shops. - don't create a second LOGIN event on character creation. - correctly generate "You paid xyz" message in shops. + - the shop menu now also displays the (approx) value of the item. + - added a 'password' command, to let DMs change the password of players + more conveniently. + - correctly save shopitems string, to avoid parse error when reading + saved maps. + - logging now differentiates between logging levels better. + - speed up get_typedata. + - fix deadlock problem during server shutdown/reload. + - make ext/checkrusage "more" non-blocking. + - use common::sense for extensions. + - work around a 50.10.0 utf8 caching bug. + - correctly try to load tiled maps in adjacent_map, might fix + "no relation to target" bugs. + - try to load (pure-)perl modules asynchronously, warn about + modules being loaded from the mainloop, pre-load some more + core modules so perl doesn't do it later on. + - pre-load many of the files perl might load on it's own e.g. when + compiling regexes. + - make exp_table and materials file reloadable. + - made reload_config non-blocking. + - the seen command called (Blocking) stat() instead of aio_stat, + causing server freezes. + - store unhashed password, to prepare for safer authentication. + - do not log connections from the local host, to help a local + watchdog. + - fix summon freeze at map borders. + - support @group syntax and music config file for music face lists. + - run post_init jobs in parallel, they might do I/O. + - avoid apply conversion for converters. 2.93 Sat Feb 13 15:52:36 CET 2010 - (maps) fix travel to valdor and back.