--- deliantra/server/Changes 2011/12/31 06:18:00 1.797 +++ deliantra/server/Changes 2012/11/12 03:48:34 1.820 @@ -31,6 +31,8 @@ TODO: sepharoth, it goes like this: philosophical salt equals "Gunas" (Subconsciousness), philosophical TODO: sulfur equals "Rajas" (Activity) and philosphical mercury equals "Sattva" (Superconsciousness) or 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 - (maps) hopefully fix tobias' tower. - (maps) hopefully fix healing potion vendor in arena entrance. - (arch) fixed an error in the Gnarg scale mail artifact. @@ -45,6 +47,7 @@ - (maps) implement a wilderness town portal. - (arch) set proper(?) int values for all monsters. - (maps) fire5.map could destroy players. + - (maps( fix pet arena pit/arena entrace and exits. - redo all build material faces from scratch. - dropall without arguments now drops all containers. - use blitz++ for vector maths (new dependency). @@ -139,6 +142,47 @@ - fixed possible crash due to broken initialisation order of shstr and freed_map, thanks go to Jonathan Neuschäfer for spotting this! - fix the brace command. + - implement refcnt_buf. + - avoid std::string to store facedata, use refcnt_buf instead, for a 20kb + codesize decrease. wow. + - removed version 1 ext/exti command support. + - store meta information in faceinfo->meta unless prepended or empty. + - new extension, ota_update, for online updates of the game client. + - implement a simpler config value system for extensions that allows + config updates without a reload. + - fix a segfault in reload_perl due to perl 5.12's gv management changes. + - make pick_lock work over map boundaries, and fix a crash while we are + at it. + - make nekosan more disease-resistant. + - new event "infect". + - setup protocol packet now supports JSONOBJECT syntax. + - implement simple web server, currently to serve facedata for the html5 + client. + - sort faces by name in the server to improve caching locality in clients. + - actually prune face checksums (exp_table's checksum was too long). + - add skill_info and spell_paths resources to enable caching the info + and removing another command. + - add command help info as res/command_help. + - assume all clients support the deliantra protocol extensions and allow + fxix/extcmd and other protocol "extensions" before setup. + - implement flash-policy-file server on server socket, to allow flash clients + to connect. + - implement exti doclet request to request documentation, + currently for commands only. + - created nickmon extension to monitor nicks. + - ix now keeps a copy of the face data while sending, in case the + face changes. + - do not allocate memory for empty refcnt_bufs. + - when faces change, invalidate all clients, not just clients with matching + faceset, as faceset only applies to tile resources. + - remove dependency on Time::HiRes. + - move face data to disk, and load it on each and every access. this saves + 250mb ram on load, and 130mb ram in general, and only reduces the http + server hot cache throughput for faces from ~24000 to ~18000 requests/s + on my system. this should make it possible to add a lot more media files + in the future, and reduces the memory footprint by the server from 180mb + to 60mb ram. + - create food/missile will now fail when the mapspace limits are exceeded. 3.0 Sat May 29 23:30:57 CEST 2010 - (maps, arch) complete revamping of the transport routes - all cities are