--- deliantra/server/Changes 2016/11/16 22:36:33 1.844 +++ deliantra/server/Changes 2022/10/08 21:54:05 1.876 @@ -1,3 +1,8 @@ +17:23:15 schmorp: I've noticed that artifact armor generation will not copy over attacktype and + dam. I've found that line 1421 of deliantra/server/common/treasure.C prevents + modification of dam on items that have no dam, such as non-weapons +17:25:50 I have no clue why attacktype isn't being added + Deliantra MORPG Server, Maps and Archetypes ChangeLog. Version numbers sort like decimal numbers. @@ -35,8 +40,71 @@ TODO: the sepharoth "Kether" TODO: "illegal" access to mlab via town portal in zealots house near mlab tavern TODO: only store face checksums in C++, store everything else in perl +TODO: the motd command is missin +TODO: cast create missile's argument should be documented and should work for bolts as well, example: + if I use 'cast create missile bolt, it would create bolts (+4) and if I use + 'cast create missile bolt Fire, it would create bolts of Fire. 'cast create + missile Fire bolt would be invalid. These changes should be reflected in the + spell's description. +TODO: bowmode threewide (and possibly others) might not properly respect movetype + and arrows might end up in places where they shouldn't, e.g. on top of see-through + walls. +TODO: rijk's frontend does not look for .xhtml files when serving static files. +TODO: Allow players to forget spells in the testing server - this makes spell testing and iteration simpler. + TODO: cspm spell arg +TODO: holy symbol of great virtue in shops has item power 3, as artifatc from thaumathurgy it has 4 + + - temporary workaorund for an optimiser bug in gcc 10, optimiisng out + memsets used to zero-initialize memory. + - (maps) remove random workbench under house in darcap, fix exit and add random + reading to dragonslib map, modify zealots house in mlab/tavern.map to remove + illegal mlab access (ephraim). + - (maps) make some containers unstackable that erroneously stackable. + - (maps) fix a lot of bogus money/diamond converters in mlab. + - (arch) platinum to gold converter was broken in 2008 and paid out + one gold for one platinum only. mea culpa. + - recipe change: cure blindless potion now takes madman's eye. + - detect stackable containers at load time and make each stack a single item + (reported by Saiapatsu). + - (ipo) corrected "you'Ve got mail" message at login. + - refactored the anim frames/facing macros/methods to range check and avoid + crashes due to corrupted face numbers (e.g. in T_MATCH). + - fix possible animation update bug in hole animations. + - fix gate closing not updating the animation bug. + - do not allow runes to be cast into inaccessible areas (reported by Saiapatsu). + - last remaining BUG (that showed up in the logs for the last years) has + been fixed: monsters would snatch arrows/thrown_objs out of the air without + stopping them, causing BUG: arrow had no map. Fixed by marking shot arrows, + bolts and thrown objects as NO_PICK temporarily. + - since binutils/gcc/etc. conspired to break static archives, converted the server + binary build into non-recursive Makefiles without static archives. hell, automake + is certainly not ready for non-recursive makes, what a hack :() + - use c++11 headers in preference to tr1 ones. + - fix odr violation: struct point. + - make the code warnigns-clean, for some definition of warnings. + - port to g++ 6. + - implement keep_suffix meta for cfutil, so files keep their extension. + - built-in webserver uses improved content-type detection and uses charset utf-8 + by default. + - do proper etag caching for resources in http server. + - fix webserver 304 response, which contained entity-headers, confusing squid. + - potentially fix a bug where ob->contr is non-null while ob->contr->ob is null, + causing a segfault. + - change DIRX/DIRY macros to take a diretcion as argument, and use them instead of + directly referencing freearr_[xy], as the latter is used alot more often then + DIRX/DIRY, and this allows us to change freearr_[xy]. + - tentative port to C++ 17. + - fix a potential bug with packet << (const char *)0. + - add COPYING.Other. + - include libecb and decore compiler.h and other places in preference to it. + - include ska's flat_hash_map and use it instead of unordered_map/set. + - use c++11 variadic templates in include/callback.h, get rid of callback.pl. + - level 0 experience valuew as uninitialised. all these years. + - run the shstr garbage collector regularly, not only after intern (). + - fixed minor undefined behaviour that was unlikely to result in problems. + - don't log runtime errors for invalid regexes for the maps command. 3.1 Wed Nov 16 23:17:11 CET 2016 - convert to blitz++ 0.10 and later (also requiring c++ 11). @@ -68,7 +136,7 @@ - altars with match expressions did not work properly. - use last_sp not cursed/damned flags in remove_curse/damnation spells. - god enemy race check fixed ("god detests your race"). - - gods errornously allowed any kind of worshipping race, even + - gods erroneously allowed any kind of worshipping race, even ones they hate. - use same default config in code as on gameserver.deliantra.net. - Pod::POM 0.26 and higher actually interpret =encoding, which broke @@ -76,7 +144,7 @@ - generate slightly more special exits and avoid warning. - 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. + - rework the random map parameter passing 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" @@ -138,7 +206,7 @@ - move key_values into their own class, simplifiying lots of code and making it possible to use kv pairs easily for maps and other objects as well. - get rid of get_archetype, finally. - - maps no longer get activated when loading, only when a palyer is "near" them. + - maps no longer get activated when loading, only when a player is "near" them. - maps can now be swapped (not loaded), active and inactive, other states have been removed, and the map "intelligently" changes between active/inactive. - new variable $cf::SERVER_TICK, also rename pticks in C++ to server_tick. @@ -203,13 +271,13 @@ - removed support for ncom packets. - remove drawinfo packets from the server (use msg instead). - skill objects now have their documentation in the msg slot. - - no longer allow prefix match when matchign spells, spells names must + - no longer allow prefix match when matching spells, spells names must now be written fully. - avoid a deadlock when the incloader is called to load an in-memory file in a child process. - implement spellmon v2 protocol - no spell message. - - remove ability to cats/invoke seplls by "count". - - the "may" mechanism now supports uuids ina ddition to nicknames. + - remove ability to cast/invoke seplls by "count". + - the "may" mechanism now supports uuids in addition to nicknames. - implement dm/dmhide in terms of the "may" mechanism, so dm players must now be configured by adding may_command_dm: ["uuid..."] to the config. @@ -347,7 +415,7 @@ - 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). + - fix erroneous 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. @@ -415,7 +483,7 @@ compiling regexes. - make exp_table and materials file reloadable. - made reload_config non-blocking. - - the seen command called (Blocking) stat() instead of aio_stat, + - 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