1 | Deliantra MORPG Server, Maps and Archetypes ChangeLog. |
1 | Deliantra MORPG Server, Maps and Archetypes ChangeLog. |
|
|
2 | |
2 | Version numbers sort like decimal numbers. |
3 | Version numbers sort like decimal numbers. |
3 | |
4 | |
4 | TODO: apartment-descritpions for gotisch1/2 |
5 | TODO: trap disarming/finding very little/constant experience? |
5 | TODO: it is possible to inventory-lock items on the floor, and *spomehow* possible to drop them. |
6 | TODO: golem survives "longer" now - too long? |
6 | TODO: think about naking the rhyzian amulet useful - makes little sense in deliantra? |
7 | TODO: clean up skill handling in kill_object. |
7 | TODO: cast invisible... |
8 | TODO: mining experience |
|
|
9 | TODO: highest cpu users: stand_in_light (object *op), get_map_flags, blocked_link, path_to_player |
|
|
10 | TODO: reload_settings |
|
|
11 | TODO: thawer should not next() |
|
|
12 | TODO: pet experience is, rarely, given to the wrong skill (e.g. mining) |
|
|
13 | 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() |
|
|
14 | TODO: jumping, maybe dimdoor works wonders with earthwalls in between. |
|
|
15 | TODO: cats dimdoor, invoke charm => watch Log-1 |
|
|
16 | TODO: fountain magic power and shop magic powre potions are different, also, potions are not identified |
|
|
17 | TODO: identify doesn't merge |
|
|
18 | TOOD: apply should only apply one stack items |
|
|
19 | TODO: fixed random maps, e.g. for buildings |
8 | |
20 | |
9 | TODO: update_stats delay for players, between commands etc. |
21 | TODO: fix rando maps - wallstyle includes piers? random exitstyle is teleporters? |
10 | TODO: rename flags to at_flags or so |
22 | TODO: 2010-07-26 23:16:17.5863 W Can't call method "skip_block" on an undefined value at /opt/deliantra-server/share/deliantra-server/cf.pm line 2136. |
11 | TODO: get_nearest_player slow |
23 | when trying to load a map that apparently could not been saved during chargen. |
12 | TODO: speed_left dumping very slow |
24 | TODO: http://maps.deliantra.net/lostwages/alchemistscave.xhtml - doesn't work, even after the diamonds you do not get the cauldron. |
|
|
25 | TODO: 2010-10-12 00:46:54.9727 E place_special_exit: undefined hole type 4 |
|
|
26 | TODO: 2010-10-12 00:05:52.3436 E object refering to nonexistant archetype 'ability_fire'. |
|
|
27 | TODO: 2011-08-13 23:21:15.7242 E Treasurelist mage_hound did not generate a valid entry in summon_object |
|
|
28 | TODO: partially transparent, yellow ground(?): wall/bulletwall/bul_wall_*.x11.32x32.png |
|
|
29 | TODO: op->failmsgf ("You lack the proper attunement to cast %s!", &spell_ob->name); <- why for moving bsall spells? check if caster is player? |
|
|
30 | |
|
|
31 | TODO: potionimp/stat potion descriptrions |
|
|
32 | TODO: 22:29:37 -server:#cf- Scara chats: schmorp: i'm trying to get a clue about the tarot and the meaning of the |
|
|
33 | TODO: sepharoth, it goes like this: philosophical salt equals "Gunas" (Subconsciousness), philosophical |
|
|
34 | TODO: sulfur equals "Rajas" (Activity) and philosphical mercury equals "Sattva" (Superconsciousness) or |
|
|
35 | TODO: the sepharoth "Kether" |
|
|
36 | TODO: "illegal" access to mlab via town portal in zealots house near mlab tavern |
|
|
37 | TODO: only store face checksums in C++, store everything else in perl |
|
|
38 | TODO: the motd command is missin |
|
|
39 | TODO: cast create missile's argument should be documented and should work for bolts as well, example: |
|
|
40 | if I use 'cast create missile bolt, it would create bolts (+4) and if I use |
|
|
41 | 'cast create missile bolt Fire, it would create bolts of Fire. 'cast create |
|
|
42 | missile Fire bolt would be invalid. These changes should be reflected in the |
|
|
43 | spell's description. |
|
|
44 | TODO: bowmode threewide (and possibly others) might not properly respect movetype |
|
|
45 | and arrows might end up in places where they shouldn't, e.g. on top of see-through |
|
|
46 | walls. |
|
|
47 | TODO: rijk's frontend does not look for .xhtml files when serving static files. |
|
|
48 | TODO: Allow players to forget spells in the testing server - this makes spell testing and iteration simpler. |
|
|
49 | |
|
|
50 | |
|
|
51 | TODO: cspm spell arg |
|
|
52 | |
|
|
53 | - last remaining BUG (that showed up in the logs for the last years) has |
|
|
54 | been fixed: monsters would snatch arrows/thrown_objs out of the air without |
|
|
55 | stopping them, causing BUG: arrow had no map. Fixed by marking shot arrows, |
|
|
56 | bolts and thrown objects as NO_PICK temporarily. |
|
|
57 | - since binutils/gcc/etc. conspired to break static archives, converted the server |
|
|
58 | binary build into non-recursive Makefiles without static archives. hell, automake |
|
|
59 | is certainly not ready for non-recursive makes, what a hack :() |
|
|
60 | - use c++11 headers in preference to tr1 ones. |
|
|
61 | - fix odr violation: struct point. |
|
|
62 | - make the code warnigns-clean, for some definition of warnings. |
|
|
63 | - port to g++ 6. |
|
|
64 | - implement keep_suffix meta for cfutil, so files keep their extension. |
|
|
65 | - built-in webserver uses improved conetnt-type detection and uses charset utf-8 |
|
|
66 | by default. |
|
|
67 | - do proper etag caching for resources in http server. |
|
|
68 | - fix webserver 304 response, which contained entity-headers, confusing squid. |
|
|
69 | - potentially fix a bug where ob->contr is non-null while ob->contr->ob is null, |
|
|
70 | causing a segfault. |
|
|
71 | |
|
|
72 | 3.1 Wed Nov 16 23:17:11 CET 2016 |
|
|
73 | - convert to blitz++ 0.10 and later (also requiring c++ 11). |
|
|
74 | - port to perl 5.18 and newer. |
|
|
75 | - switch to xz compressed archives as only dist method. |
|
|
76 | - upgrade to automake 1.15. |
|
|
77 | - (maps) hopefully fix tobias' tower. |
|
|
78 | - (maps) hopefully fix healing potion vendor in arena entrance. |
|
|
79 | - (arch) fixed an error in the Gnarg scale mail artifact. |
|
|
80 | - it was possible to unapply or half-unapply cursed items in many |
|
|
81 | cases, which confused players and also player state. fixed. |
|
|
82 | - (arch) remove curse now works more liek idnetify in that it uncurses |
|
|
83 | some items. also, no longer uncurses spells or other invisibles. |
|
|
84 | - (arch) remove curse and identify now treta the marked tiem first. |
|
|
85 | - creators no longer identify objects that shouldn't be identified |
|
|
86 | (such as money, which won't stack afterwards). |
|
|
87 | - (maps) the shady rogue in goths can unapply cursed items for you. |
|
|
88 | - (maps) implement a wilderness town portal. |
|
|
89 | - (arch) set proper(?) int values for all monsters. |
|
|
90 | - (maps) fire5.map could destroy players. |
|
|
91 | - (maps) fix pet arena pit/arena entrace and exits. |
|
|
92 | - clear the spell's applied flag when inscribing scrolls, to make the |
|
|
93 | scrolls mergeable. |
|
|
94 | - redo all build material faces from scratch. |
|
|
95 | - dropall without arguments now drops all containers. |
|
|
96 | - use blitz++ for vector maths (new dependency). |
|
|
97 | - only match archetype names in artifact allowed names. |
|
|
98 | - new command "bumpmsg" that triggers the bump-into-wall messages. |
|
|
99 | - altars with match expressions did not work properly. |
|
|
100 | - use last_sp not cursed/damned flags in remove_curse/damnation spells. |
|
|
101 | - god enemy race check fixed ("god detests your race"). |
|
|
102 | - gods errornously allowed any kind of worshipping race, even |
|
|
103 | ones they hate. |
|
|
104 | - use same default config in code as on gameserver.deliantra.net. |
|
|
105 | - Pod::POM 0.26 and higher actually interpret =encoding, which broke |
|
|
106 | our parser. |
|
|
107 | - generate slightly more special exits and avoid warning. |
|
|
108 | - applying a glowing crystal now gives status messages. |
|
|
109 | - fix a memleak in the random map generator. |
|
|
110 | - rework the random map parameter passign a bit to be extendable. |
|
|
111 | - (random maps) use a nonrecursive algorithm to generate mazes, |
|
|
112 | also, improve the quality of the mazes (no longer will the edges |
|
|
113 | almost always form a passage) and add two new types - "rooms" |
|
|
114 | and "braided". |
|
|
115 | - implement --unique option to reset command. |
|
|
116 | - (random maps) add new "cave" layout, which is much more ... |
|
|
117 | cave-like. |
|
|
118 | - (random maps) new layout style "castle" that generates straighish, |
|
|
119 | rogue-ish maps. |
|
|
120 | - (random maps) new layout style "multiple" that simply mixes multiple |
|
|
121 | different styles in different areas. |
|
|
122 | - roguelike maps sometimes had dead ends due to symmetry settings. |
|
|
123 | - rewrite layout management in the random map generator from the |
|
|
124 | ground up. |
|
|
125 | - fix bug in tausworthe rng initialisation. |
|
|
126 | - switched to the faster and hopefully better quality gfsr{24,55} random |
|
|
127 | number generator, the same algorithm that freeciv apparently uses. |
|
|
128 | - replace unreachable walls in random maps by "blocked", which saves |
|
|
129 | memory and imho looks nicer. |
|
|
130 | - (arch) fix samhlaidh archetype. |
|
|
131 | - fix the "archname" match special function. |
|
|
132 | - add kensler ("better gradient noise") functins, as well as fBm |
|
|
133 | and other fractal algorithms. |
|
|
134 | - one can no longer emote to logged-out players. |
|
|
135 | - (maps) /pup_land/nurnberg/storehouse quest was fixed, the potatoe |
|
|
136 | sacks fit on a tile again. |
|
|
137 | - (arch) fixed message of improve wisdom scroll. |
|
|
138 | - (arch) move glyph/magicmap/visibility into .faceinfo files, |
|
|
139 | support background colour for text clients. |
|
|
140 | - (arch) improve automatic name from archname generation. |
|
|
141 | - implement faceset 2, colour + utf-8 glyph, for text-based clients. |
|
|
142 | - support resist_xxx, body_xxx_info and body_xxx_used specials in |
|
|
143 | match expressions. |
|
|
144 | - don't cause an error if a monster tries to cast magic mapping. |
|
|
145 | - sometimes a special exit wasn't placed when it should have been. |
|
|
146 | - make newmapcmd mandatory, remove support for map0/map1. |
|
|
147 | - require EV 4.00. |
|
|
148 | - made wording of "use_skill jeweler analyze" a bit more precise. |
|
|
149 | - add perlxsi.c to cleanfiles. |
|
|
150 | - (arch) made speed potions easier for now. |
|
|
151 | - the server didn't properly initialise all client skill slots, |
|
|
152 | no known impact. |
|
|
153 | - clean up unused settings, introduce DELIANTRA_DATADIR. |
|
|
154 | - (arch) added potion of fortitude to resist fear for the jeweler skill. |
|
|
155 | - (arch, maps) move worldmap gridmap data to arch/res/ and implement |
|
|
156 | a generic table/matrix/palette converter to cfutil. |
|
|
157 | - avoid crash in describe_item when a power crystal has maxsp=0 (as used, |
|
|
158 | apparently, in the brewery map). |
|
|
159 | - do not endlessly loop when an optional extension cannot be loaded. |
|
|
160 | - remove limits of 000..999 from worldmap coordinates, support negative |
|
|
161 | coordinates and introduce z-layers - deliantra is now 3d, in yet another |
|
|
162 | sense. |
|
|
163 | - move "the worldmap" to ext/map-world-classic.ext and make ext/map-world.ext |
|
|
164 | handle generic "world map areas". |
|
|
165 | - dropped micrpather again - we'll do our own implementation when we need it. |
|
|
166 | - added is_quad flag. |
|
|
167 | - (arch) added quad archetypes. |
|
|
168 | - made the pickaxe mining tool remove quad walls and floors. |
|
|
169 | - move key_values into their own class, simplifiying lots of code and |
|
|
170 | making it possible to use kv pairs easily for maps and other objects as well. |
|
|
171 | - get rid of get_archetype, finally. |
|
|
172 | - maps no longer get activated when loading, only when a palyer is "near" them. |
|
|
173 | - maps can now be swapped (not loaded), active and inactive, other states |
|
|
174 | have been removed, and the map "intelligently" changes between active/inactive. |
|
|
175 | - new variable $cf::SERVER_TICK, also rename pticks in C++ to server_tick. |
|
|
176 | - remove legacy fly_on/off, flying, walk_on/off and no_pass attributes. |
|
|
177 | - server now enforces width/height matches between tiled maps. |
|
|
178 | - fix some off-by-one bugs that presumably created empty rectangles |
|
|
179 | for unordered map walks - which should not cause any real issues. |
|
|
180 | - increase face hashlen to 5 octets from 4, to avoid a collision. |
|
|
181 | - fix output-rate limiting - min/max now use the first argument for the type, |
|
|
182 | as all other similar macros - might cause other breakage... |
|
|
183 | - cfutil no longer creates split tiles multiple times due to a |
|
|
184 | off-by-one bug in comparing mtimes. |
|
|
185 | - cfutil now supports type: prefix to derive faces from other faces, which |
|
|
186 | is used for all build materials currently. |
|
|
187 | - require imagemagick >= 6.6. |
|
|
188 | - fixed possible crash due to broken initialisation order of shstr and |
|
|
189 | freed_map, thanks go to Jonathan Neuschäfer for spotting this! |
|
|
190 | - fix the brace command. |
|
|
191 | - implement refcnt_buf. |
|
|
192 | - avoid std::string to store facedata, use refcnt_buf instead, for a 20kb |
|
|
193 | codesize decrease. wow. |
|
|
194 | - removed version 1 ext/exti command support. |
|
|
195 | - store meta information in faceinfo->meta unless prepended or empty. |
|
|
196 | - new extension, ota_update, for online updates of the game client. |
|
|
197 | - implement a simpler config value system for extensions that allows |
|
|
198 | config updates without a reload. |
|
|
199 | - fix a segfault in reload_perl due to perl 5.12's gv management changes. |
|
|
200 | - make pick_lock work over map boundaries, and fix a crash while we are |
|
|
201 | at it. |
|
|
202 | - make nekosan more disease-resistant. |
|
|
203 | - new event "infect". |
|
|
204 | - setup protocol packet now supports JSONOBJECT syntax. |
|
|
205 | - implement simple web server, currently to serve facedata for the html5 |
|
|
206 | client. |
|
|
207 | - sort faces by name in the server to improve caching locality in clients. |
|
|
208 | - actually prune face checksums (exp_table's checksum was too long). |
|
|
209 | - add skill_info and spell_paths resources to enable caching the info |
|
|
210 | and removing another command. |
|
|
211 | - send completion info to the client. |
|
|
212 | - assume all clients support the deliantra protocol extensions and allow |
|
|
213 | fxix/extcmd and other protocol "extensions" before setup. |
|
|
214 | - implement flash-policy-file server on server socket, to allow flash clients |
|
|
215 | to connect. |
|
|
216 | - implement exti doclet request to request documentation, |
|
|
217 | currently for commands only. |
|
|
218 | - created nickmon extension to monitor nicks. |
|
|
219 | - ix now keeps a copy of the face data while sending, in case the |
|
|
220 | face changes. |
|
|
221 | - do not allocate memory for empty refcnt_bufs. |
|
|
222 | - when faces change, invalidate all clients, not just clients with matching |
|
|
223 | faceset, as faceset only applies to tile resources. |
|
|
224 | - remove dependency on Time::HiRes. |
|
|
225 | - move face data to disk, and load it on each and every access. this saves |
|
|
226 | 250mb ram on load, and 130mb ram in general, and only reduces the http |
|
|
227 | server hot cache throughput for faces from ~24000 to ~18000 requests/s |
|
|
228 | on my system. this should make it possible to add a lot more media files |
|
|
229 | in the future, and reduces the memory footprint by the server from 180mb |
|
|
230 | to 60mb ram. |
|
|
231 | - create food/missile will now fail when the mapspace limits are exceeded. |
|
|
232 | - pod processing could deadlock because the child process might try |
|
|
233 | to get a lock. |
|
|
234 | - removed support for ncom packets. |
|
|
235 | - remove drawinfo packets from the server (use msg instead). |
|
|
236 | - skill objects now have their documentation in the msg slot. |
|
|
237 | - no longer allow prefix match when matchign spells, spells names must |
|
|
238 | now be written fully. |
|
|
239 | - avoid a deadlock when the incloader is called to load an in-memory |
|
|
240 | file in a child process. |
|
|
241 | - implement spellmon v2 protocol - no spell message. |
|
|
242 | - remove ability to cats/invoke seplls by "count". |
|
|
243 | - the "may" mechanism now supports uuids ina ddition to nicknames. |
|
|
244 | - implement dm/dmhide in terms of the "may" mechanism, so dm |
|
|
245 | players must now be configured by adding may_command_dm: ["uuid..."] |
|
|
246 | to the config. |
|
|
247 | - remove nowiz command. |
|
|
248 | - change dm hiding - hidden status is no longer respected by spells etc., |
|
|
249 | it only affects information commands. use observe instead. |
|
|
250 | - automatically send fx for all changed faces, not just for visible tiles. |
|
|
251 | - fix g++-4.7/c++ incompatibilities in noise.h, and work around similar |
|
|
252 | problems in blitz++. |
|
|
253 | - catch sigfpe in the same way as sigsegv. |
|
|
254 | |
|
|
255 | 3.0 Sat May 29 23:30:57 CEST 2010 |
|
|
256 | - (maps, arch) complete revamping of the transport routes - all cities are |
|
|
257 | now easily reachable, at a price. |
|
|
258 | - (maps) the mana fountain now has a ratelimit of 30 potions per hour. |
|
|
259 | - (maps) added (navar) gravedigger, that buys players gravestones. |
|
|
260 | - (maps) added the rathouse quest for the shockwave spell in navar |
|
|
261 | (by Dustfinger). |
|
|
262 | - (maps) fixed bad floor tile in navar apartment. |
|
|
263 | - made (wizard) look_at show also uuids. |
|
|
264 | - added cf::object::find_object_uuid (::find_object already exists!). |
|
|
265 | - (maps) added new apartment, made by LinuxLemoner. |
|
|
266 | - (maps) added quest for the mining skill scroll to valleynoy. |
|
|
267 | - (maps) added greedy highlevel book shop to heaven town. |
|
|
268 | - (arch) added sounds: zombie death, book reading, inscription. |
|
|
269 | - (arch) made the hill giants loose more body parts. |
|
|
270 | - (arch, maps) added black unicorn horn, required to access mlab hell. |
|
|
271 | - (arch) increased the (possible) number of arrows/bolts found in shops |
|
|
272 | and made them a bit more expensive. |
|
|
273 | - (maps) add more glory hole treasure styles. |
|
|
274 | - (maps, arch) add "hollow" variants of cave\d tiles, and use them |
|
|
275 | in a select number of mlab maps. |
|
|
276 | - (maps) the library should be less of a death trap now. |
|
|
277 | - (maps) exits no longer point to auto-apply exits, most affected |
|
|
278 | maps now have proper doors or a similar solution. |
|
|
279 | - (arch) jumping skill has now physical attacktype. |
|
|
280 | - (maps) fixed nurnberg/reception/fire5 to match new style torches. |
|
|
281 | - enter_map did not normalise the map coordinates when the destination |
|
|
282 | space is blocked, causing badness and freezes for the player. |
|
|
283 | - when applying containers, server checks for the key on activate |
|
|
284 | and also allows players to unapply active containers they don't have |
|
|
285 | a key for. |
|
|
286 | - moved formulae, attackmess, artifacts, exp_table, materials and |
|
|
287 | races files to arch, where they belong (exp_table is no longer in |
|
|
288 | confdir but in datadir now!). |
|
|
289 | - jeweler and sound config files are now normal datafiles as well. |
|
|
290 | - quit_character was causing a runtime exception, causing it to not |
|
|
291 | work since 2.93. |
|
|
292 | - entering a map will now respect move_on and other effects, |
|
|
293 | except for auto-apply exits :/ |
|
|
294 | - only talk to the items on the nearest mapspace, or, of there |
|
|
295 | are none, to the player, not ALL items in vicinity. |
|
|
296 | - do not update the floorbox while running, to avoid big item |
|
|
297 | updates that cost network bandwidth and processing power. |
|
|
298 | - diseases could reduce a monsters speed to MIN_ACTIVE_SPEED, which |
|
|
299 | caused overflows causing monsters to become living deads. |
|
|
300 | - unapply weapons and armour before trying to improve it. |
|
|
301 | - teach the random map generator the ability to read ".rmg" files |
|
|
302 | that specify which actual style map to generate, and use it for |
|
|
303 | the default decorstyle to avoid inappropriate maps to be used. |
|
|
304 | - support (with some limitations) multiple different skills with the |
|
|
305 | same subtype. |
|
|
306 | - fix "nekosan duplication" bug - map swap out was not atomic, |
|
|
307 | so nekosan could end up beign saved AND escaped to another map. |
|
|
308 | - show invisible no longer makes magic mouths visible. |
|
|
309 | - move_type changes (spells, skills etc.) now will correctly |
|
|
310 | take move_on/move_off into account (e.g. buttons). |
|
|
311 | - display (exit) or (random map) in client for those objects. |
|
|
312 | - removed (useless) spell damage columns from spell info and replace |
|
|
313 | it by effective casting level - clients > 2.10 required to display |
|
|
314 | properly. |
|
|
315 | - building of levers/doors works again for all kinds of floors. |
|
|
316 | - the player can now withdraw and deposit all the available money. |
|
|
317 | - (maps) fix the apartment shop (japan => 吾妻) and add descriptions for |
|
|
318 | steinwandstadt/celvear. |
|
|
319 | - (maps) added /goodies map (goto *idkfa) with stuff useful for testing. |
|
|
320 | - (arch,maps,code) rebalanced value of spellbooks greatly. it's now |
|
|
321 | mostly based on the spell's level in the spellbook. |
|
|
322 | - the music scheduler did not properly send new music on region |
|
|
323 | changes. |
|
|
324 | - (maps) fix some map regions and the region tree. |
|
|
325 | - the server will now be more picky when parsing the regions file. |
|
|
326 | - do not rely on chosen_skill in calc_alch_danger. |
|
|
327 | - improve editor support protocol slightly, provide workarounds for 2.10 |
|
|
328 | clients. |
|
|
329 | - follow has been rewritten to be, hopefully, more robust. |
|
|
330 | - follow mode will not be aborted when the follower tries to move. |
|
|
331 | - tcp.ext didn't unbind in reloads. |
|
|
332 | - map-tags.ext didn't properly close the database on reloads. |
|
|
333 | - cfutil skips .-directories when scanning. |
|
|
334 | - build.ext prevents players from building on other player's maps. |
|
|
335 | - rent.ext allows the dm to enter anytime. |
|
|
336 | - NPC_Dialogue adds a new predefined variable, $map. |
|
|
337 | - new "build" event hook. |
|
|
338 | - get rid of archetype min/max values except max_x (which should go, too). |
|
|
339 | - added fix_generated_item and cf::object::generate to XS interface. |
|
|
340 | - no longer use uppercase identifiers for saving anywhere, but support |
|
|
341 | them on loading, for old playerfiles and maps. |
|
|
342 | - removed is_legal_2ways_exit - this is apparently dead code, and |
|
|
343 | would be handled differently nowadays anyway. |
|
|
344 | - random map .meta were not being expired at all. |
|
|
345 | - replace move_ob/move_object functiony by the equivalent move method. |
|
|
346 | - update to automake 1.10. |
|
|
347 | - invitation to maps with unagressive and friendly monsters doesn't |
|
|
348 | require level 4 anymore. |
|
|
349 | - do not let update_stats muck with the chosen_skill anymore. |
|
|
350 | - monsters now rotate through all skills (in chosen_skill). |
|
|
351 | - fix lots of path-related buffer overflows in the random map generator. |
|
|
352 | - detect/sense curse/magic will no longer work on items that don't |
|
|
353 | need identify. |
|
|
354 | - added detect mineral vein spell. |
|
|
355 | - support "wall overlays" in the random map generator - not very generic, |
|
|
356 | used by minable veins. |
|
|
357 | - (maps) relocated jeweler town to another directoy. |
|
|
358 | - (arch) implement mining pickaxes and mining skill. |
|
|
359 | - (arch) add missing stonebig_club archetype from cfextended. |
|
|
360 | - jeweler skill doesn't diminish input values anymore. |
|
|
361 | - jeweler skill is harder to level now, but in exchange item power |
|
|
362 | of the output is only 1/5th (instead of 1/3rd) of ring level. |
|
|
363 | - jeweler skill adds the makers name (currently not visible) to the |
|
|
364 | generated ring/amulet. |
|
|
365 | - generate most constants for perl automatically. |
|
|
366 | - properly check for weapon name prefix ("Ragnarok's sword"). |
|
|
367 | - when player dies, restore his food to at least 200. |
|
|
368 | - support multiple inheritance for arch sources (inherit a,b,c). |
|
|
369 | - switch to storable-n-format for facedata, for better interoperability. |
|
|
370 | - implement generic "ranged" item framework (pickaxe, fishing rod). |
|
|
371 | - the singing skill actually respects the direction now. |
|
|
372 | - oratory and singing now require a direction. |
|
|
373 | - use_skill now requires that you can actually apply the skill tool. |
|
|
374 | - do not invoke perl on every user command anymore by providing |
|
|
375 | a command and an unknown_command event. |
|
|
376 | - move mark, run, run_stop, fire and fire_stop commands back from |
|
|
377 | perl to C++, for speed reasons (basically undo patchset 1304). |
|
|
378 | - add a client_destroy event, so we don't have to hook the |
|
|
379 | attachable destroy event (which is called much more often). |
|
|
380 | - removed (unused) FLOOR object type. |
|
|
381 | - fix errornous change_abil messages for rods (and other types). |
|
|
382 | - remove include/commands.h and server/c_new.C, and refactor |
|
|
383 | all into server/commands.C. |
|
|
384 | - save and restore combat/ranged/current slot for players. |
|
|
385 | - the server now batches item's face/fx commands, as opposed |
|
|
386 | to sending one fx per item - helps mostly at connect and |
|
|
387 | with floorbox updates. |
|
|
388 | - implemented ext::player_env::play_music_once $who->contr, "km/...". |
|
|
389 | - the random map generator now supports selecting difficult for |
|
|
390 | more style categories than just monsters (all except fountains |
|
|
391 | apparently). |
|
|
392 | - object serialiser no longer creates empty "owner" references. |
|
|
393 | - make sure failed castings take some time, too, to avoid being |
|
|
394 | smitten by your god. |
|
|
395 | - many more failmsgs and help texts. |
|
|
396 | - support log suspension/resumption, e.g. for defragmenting. |
|
|
397 | - stop thrown objects when their speed goes too low. |
|
|
398 | - log the number of unique logins seen every minute in a compact |
|
|
399 | format (for statistics). |
|
|
400 | - do not send delitem for players. |
|
|
401 | - support static scalar data members properly in genacc now. |
|
|
402 | - implement "simple" freelist management for objects. |
|
|
403 | - recycle object counts now - to support longer uptimes. |
|
|
404 | - got rid of the dreaded write_parameters_to_string (666 chars omitted) |
|
|
405 | function (and yes, 666 is exact!). |
|
|
406 | - random map generator results should now be fully repeatable. |
|
|
407 | - fixed possible crash bug in build code. |
|
|
408 | - rename find_marked_object to ->mark and speed up. |
|
|
409 | - player movers properly destroy themselves when used up, instead |
|
|
410 | of leaking. |
|
|
411 | - do not show msg for unidentified objects that need identification. |
|
|
412 | - convert formulae/bookarch/settings file parser to thawer framework. |
|
|
413 | - finally get rid of fgets (..., thawer) and use a much cleaner |
|
|
414 | next_line method. |
|
|
415 | - use nicer file format for exp_table and attackmess |
|
|
416 | (more like other resource files). |
|
|
417 | - make parse errors during server startup fatal. |
|
|
418 | - properly initialise all maptile values in constructor. |
|
|
419 | - improved {link} map. |
|
|
420 | - optional unloadable extensions will not lead to an endless loop. |
|
|
421 | - server will cleanly autorestart when running out of protocol IDs. |
|
|
422 | - use faster and slightly more exact find_dir_2 replacement. |
|
|
423 | - building listening books is possible again. |
|
|
424 | - (maps, arch) added archetype for building instructions and replaced |
|
|
425 | the copies of the instructions in the maps with it. |
|
|
426 | - (arch) made the spark shower spell available in shops. |
|
|
427 | - don't create a second LOGIN event on character creation. |
|
|
428 | - correctly generate "You paid xyz" message in shops. |
|
|
429 | - the shop menu now also displays the (approx) value of the item. |
|
|
430 | - added a 'password' command, to let DMs change the password of players |
|
|
431 | more conveniently. |
|
|
432 | - correctly save shopitems string, to avoid parse error when reading |
|
|
433 | saved maps. |
|
|
434 | - logging now differentiates between logging levels better. |
|
|
435 | - speed up get_typedata. |
|
|
436 | - fix deadlock problem during server shutdown/reload. |
|
|
437 | - make ext/checkrusage "more" non-blocking. |
|
|
438 | - use common::sense for extensions. |
|
|
439 | - work around a 50.10.0 utf8 caching bug. |
|
|
440 | - correctly try to load tiled maps in adjacent_map, might fix |
|
|
441 | "no relation to target" bugs. |
|
|
442 | - try to load (pure-)perl modules asynchronously, warn about |
|
|
443 | modules being loaded from the mainloop, pre-load some more |
|
|
444 | core modules so perl doesn't do it later on. |
|
|
445 | - pre-load many of the files perl might load on it's own e.g. when |
|
|
446 | compiling regexes. |
|
|
447 | - make exp_table and materials file reloadable. |
|
|
448 | - made reload_config non-blocking. |
|
|
449 | - the seen command called (Blocking) stat() instead of aio_stat, |
|
|
450 | causing server freezes. |
|
|
451 | - store unhashed password, to prepare for safer authentication. |
|
|
452 | - do not log connections from the local host, to help a local |
|
|
453 | watchdog. |
|
|
454 | - fix summon freeze at map borders. |
|
|
455 | - support @group syntax and music config file for music face lists. |
|
|
456 | - run post_init jobs in parallel, they might do I/O. |
|
|
457 | - avoid apply conversion for converters. |
|
|
458 | |
|
|
459 | 2.93 Sat Feb 13 15:52:36 CET 2010 |
|
|
460 | - (maps) fix travel to valdor and back. |
|
|
461 | - do no longer by default eval map cod ein safe compartments |
|
|
462 | (this can be re-enabled using the safe_eval config option). |
|
|
463 | - (maps) fix an apparent crash bug caused by broken generstors |
|
|
464 | in lorak. |
|
|
465 | - fix data corruption issues caused by recursive calls to |
|
|
466 | unordered_mapwalk - now every caller must provide its own |
|
|
467 | buffer. |
|
|
468 | - (maps) improve tindervale maps slightly. |
|
|
469 | - (arch) considerably decrease slag ex price. |
|
|
470 | - (arch) fix filth archetype. |
|
|
471 | - extension dependency resolve was completely broken. |
|
|
472 | - multipart objects would cause save_throw_object to crash - it |
|
|
473 | now acts on the head only. |
|
|
474 | - do not try to connect to an irc server unless explicitly configured. |
|
|
475 | - do not expect decltype() to be available in gcc 4.4. |
|
|
476 | - extended the safe perl environment by loops. |
|
|
477 | - (arch) fix "armless cook" facings. |
|
|
478 | - the "experience table" resource item did not have a proper |
|
|
479 | hash associated with it, so updates could not be detected. |
|
|
480 | - fixed poison traps in doors. |
|
|
481 | - player->killer_name did not properly flag the name as unicode. |
|
|
482 | - aggressively mark many more methods as utf8 or octet-expecting, |
|
|
483 | and provide a non-destructive SvPVutf8 variant. |
|
|
484 | - do not allow dragon players to change their title via the settings. |
|
|
485 | - ratelimited jeweler skill nugget conversion. |
|
|
486 | - under high load, the server stopped swapping out to make |
|
|
487 | the server more responsive, but making it impossible to reduce |
|
|
488 | the load by... swapping out. slot queuing will now always make |
|
|
489 | some progress. |
|
|
490 | - improve the quality of the load-avg calculation. |
|
|
491 | - (maps) fixed quest npc in jeweler dungeon quest. |
|
|
492 | - don't fail to write the runtime file if the temporary already exists. |
|
|
493 | - ipo.ext no longer uses (synchronous) CFDB, stores mail directly at |
|
|
494 | player now. |
|
|
495 | - rewrote hiscore code from scratch to use async I/O, store uuid and |
|
|
496 | timestamp and use a tab in the client to increase awareness. |
|
|
497 | - npc dialog setflag/setsatte now check for defined'ness, so |
|
|
498 | setflag 0 is possible. |
|
|
499 | - make install now deletes old extensions, to ease upgrades in the |
|
|
500 | deliantra vm. |
|
|
501 | |
|
|
502 | 2.92 Thu Dec 24 04:51:56 CET 2009 |
|
|
503 | - the destruction spell could/would corrupt server memory quite often. |
|
|
504 | - logging in only fixed the combat slot when the palyer was loaded from |
|
|
505 | disk, not when it already was in memory. |
|
|
506 | - cede in wait_for_tick* when the tivck is inhibited hopefully |
|
|
507 | avoiding livelock during high-load emergency saves. |
|
|
508 | - logging in did not properly unapply all skills. |
|
|
509 | - (maps) make the invite quest marking much more obvious. |
|
|
510 | - (arch) fix warrior archetype names. |
|
|
511 | - map prefetching never prefetch upwards. |
|
|
512 | - wizpass no longer makes you non-blocking. |
|
|
513 | - (maps) add light to some of the special maps, add troll |
|
|
514 | map. |
|
|
515 | |
|
|
516 | 2.91 Mon Nov 30 10:18:09 CET 2009 |
|
|
517 | - (maps) add gorokh_final mapset from crossfire. |
|
|
518 | - (maps) block most vault-type mlab locations, open up |
|
|
519 | imperial converters for anybody to use. |
|
|
520 | - (maps, arch) replace all permanent stat potions by random |
|
|
521 | variants. |
|
|
522 | - (maps) spread gorokh demon styles more evenly over 1..100. |
13 | - TRIGGER events got passed a garbage pointer instead of a |
523 | - TRIGGER events got passed a garbage pointer instead of a |
14 | real player object on player changes. |
524 | real player object on player changes. |
|
|
525 | - diseases and maybe other things could sometimes reduce the speed |
|
|
526 | to below MIN_ACTIVE_SPEED, deactivating the monster and causing |
|
|
527 | much grief. |
|
|
528 | - speed_left randomisation was, apparently, totally broken. |
|
|
529 | - introduce FLAG_RANDOM_SPEED instead of using the sign bit |
|
|
530 | of the speed slot internally and in map save files. among other |
|
|
531 | things, this gets rid of all the abs (speed) calls. |
|
|
532 | - reduce map file save files by using abridged keywords aliases. |
15 | - shop specialisation calculation was totally broken. |
533 | - shop specialisation calculation was totally broken. |
16 | - nrof/itemcount/volume limits when dropping to the floor are |
534 | - nrof/itemcount/volume limits when dropping to the floor are |
17 | now enforced. |
535 | now enforced. |
18 | - fix magic mapping, which only worked for inate spell casting. |
536 | - fix magic mapping, which only worked for inate spell casting. |
19 | - godgiven items will now be explicitly described as such. |
537 | - godgiven items will now be explicitly described as such. |
|
|
538 | - (arch) dded a quiver of bolts. |
20 | - materialnames would change "randomly" on every load, only |
539 | - materialnames would change "randomly" on every load, only |
21 | set the material when the materialname was not set before. |
540 | set the material when the materialname was not set before. |
22 | - balancing change, halve rod recharge speed (instead |
541 | - balancing change, halve rod recharge speed (instead |
23 | of 4.8s, the standard rods now recharge in ~10s. not a solution, |
542 | of 4.8s, the standard rods now recharge in ~10s. not a solution, |
24 | but still. |
543 | but still. |
25 | - reduce cpu time used for map saving by >40% by avoiding |
544 | - reduce cpu time used for map saving by >>50% by avoiding |
26 | the costly flasg-checking loop in most cases. |
545 | the costly flag-checking loop in most cases and using a simple |
|
|
546 | repeat-cache for speed_left. |
27 | - always delay stats update for players on insert/remove till |
547 | - always delay stats update for players on insert/remove till |
28 | next tick/command, which saves a lot of cpu cycles on drop/take. |
548 | next tick/command, which saves a lot of cpu cycles on drop/take. |
|
|
549 | - add hint about havign to run to attach unaggressive npcs. |
29 | - pet monster level was not displayed correctly in "showpets index". |
550 | - pet monster level was not displayed correctly in "showpets index". |
30 | - clean up floating point conversions and many similar nitpicks. |
551 | - clean up floating point conversions and many similar nitpicks. |
31 | - fix hanuk altar. |
552 | - fix hanuk altar. |
32 | - overhaul material system to be much faster, and having less bugs, but |
553 | - overhaul material system to be much faster, and having less bugs, but |
33 | still having a lot of cruft :/. |
554 | still having a lot of cruft :/. |
… | |
… | |
42 | decrease). |
563 | decrease). |
43 | - fixed a small uncleanlieness in item converters, which might |
564 | - fixed a small uncleanlieness in item converters, which might |
44 | have led to weird item multiplications. |
565 | have led to weird item multiplications. |
45 | - store hash value in shstr, not used by anything, but doesn't use much memory. |
566 | - store hash value in shstr, not used by anything, but doesn't use much memory. |
46 | - fixed crash bug in learn_spell command. |
567 | - fixed crash bug in learn_spell command. |
|
|
568 | - enhanced output of the mapinfo command. |
47 | - remove all traces of FLAG_NO_FIX_PLAYER. |
569 | - remove all traces of FLAG_NO_FIX_PLAYER. |
|
|
570 | - avoid sv_derived_from calls (lots of hash lookups) when converting |
|
|
571 | from perl to c++. |
48 | - implemented least_significand_bit and for_all_bits_sparse_32 utilities |
572 | - implemented least_significand_bit and for_all_bits_sparse_32 utilities |
49 | and use it in some "inner" loops. |
573 | and use it in some "inner" loops. |
|
|
574 | - rename flags to attachable_flags to avoid confusion :=). |
|
|
575 | - fixed jeweler experience output to not be floating point. |
|
|
576 | - added lock/unlock commands, thanks for the patch go to Shawn Robinson! |
|
|
577 | - (arch, maps) introduce inactive_shop_floor and fix some shops with it. |
|
|
578 | - try to prefetch memory inside process_objects, which can give |
|
|
579 | enourmous speed gains. |
|
|
580 | - make some small optimisation to the process_objects loop. |
|
|
581 | - move facedata chksum calculation into cfutil, make server more flexible |
|
|
582 | handling different chksum lengths. |
|
|
583 | - check for hash collisions in cfutil. |
|
|
584 | - reduce face checksum size from 6 to 4 bytes. |
|
|
585 | - don't crash when a map uses empty sound/sound_destroy/face. |
|
|
586 | - removed weather-specific attributes. |
|
|
587 | - fixed genkeywords dependency. |
|
|
588 | - do not clear "randomitems" slot for world underlays. |
|
|
589 | - use "sl" as short-hand for speed_left in save-files, just to make them |
|
|
590 | smaller. |
|
|
591 | - in general, don't crash on value-less resource file lines |
|
|
592 | anymore, due to get_str never returning a 0-pointer. |
|
|
593 | - code cleanup in move_symptom. |
|
|
594 | - removed arch_to_object (replaced it by ->instance ()). |
50 | |
595 | |
51 | 2.90 Sat Nov 7 15:06:06 CET 2009 |
596 | 2.90 Sat Nov 7 15:06:06 CET 2009 |
52 | - some Andrew Madloch wanted, despite being specifically told |
597 | - some Andrew Madloch wanted, despite being specifically told |
53 | multiple times that the Deliantra parts additions are under AGPL, |
598 | multiple times that the Deliantra parts additions are under AGPL, |
54 | lock up the source code of the server within his company. |
599 | lock up the source code of the server within his company. |
… | |
… | |
582 | - bugfix: when unapplying skills also remove them from the range/combat slots. |
1127 | - bugfix: when unapplying skills also remove them from the range/combat slots. |
583 | - bugfix: do not merge items whose archetype name merges, use the |
1128 | - bugfix: do not merge items whose archetype name merges, use the |
584 | archetype *archname* (chairs of different facings were merged). |
1129 | archetype *archname* (chairs of different facings were merged). |
585 | - bugfix: fix a potential crash issue in find_object_name (not used |
1130 | - bugfix: fix a potential crash issue in find_object_name (not used |
586 | normally). |
1131 | normally). |
587 | - bugfix: locked doors cnanot be bashed down by magical means |
1132 | - bugfix: locked doors cannot be bashed down by magical means |
588 | (destruction, magic missile etc.). |
1133 | (destruction, magic missile etc.). |
589 | - swarm spells without a direction now use various spiral patterns |
1134 | - swarm spells without a direction now use various spiral patterns |
590 | instead of being fully random. |
1135 | instead of being fully random. |
591 | - update AnyEvent API to 3.4 and above. |
1136 | - update AnyEvent API to 3.4 and above. |
592 | |
1137 | |
… | |
… | |
671 | - merge items with different arch pointers refering to the same arch |
1216 | - merge items with different arch pointers refering to the same arch |
672 | (due to archetype reloads). |
1217 | (due to archetype reloads). |
673 | - refactored the object remove/insert functions and most related |
1218 | - refactored the object remove/insert functions and most related |
674 | functions (decrease, split, merge_ob etc.). |
1219 | functions (decrease, split, merge_ob etc.). |
675 | - make it compile better on freebsd (reported by pippijn). |
1220 | - make it compile better on freebsd (reported by pippijn). |
676 | - remove GT_UPDATE_INV (no longer applicable). |
1221 | - removed GT_UPDATE_INV (no longer applicable). |
677 | - fix the longstanding "container stays open" bug. |
1222 | - fix the longstanding "container stays open" bug. |
678 | - improved floorbox updating to be incremental and other protocol |
1223 | - improved floorbox updating to be incremental and other protocol |
679 | optimisations. |
1224 | optimisations. |
680 | - get rid of update_after_inventory_change and only do update stats |
1225 | - get rid of update_after_inventory_change and only do update stats |
681 | for weight once/tick/player at max. |
1226 | for weight once/tick/player at max. |
… | |
… | |
963 | - introduced new keyword for map files: file_format_version (integer, server version: 0) |
1508 | - introduced new keyword for map files: file_format_version (integer, server version: 0) |
964 | - better message for apply failures due to applymode |
1509 | - better message for apply failures due to applymode |
965 | - removed most all of the weather code |
1510 | - removed most all of the weather code |
966 | - unified logging to stderr and file |
1511 | - unified logging to stderr and file |
967 | - too many minor changes to document |
1512 | - too many minor changes to document |
|
|
1513 | |