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