1 | Crossfire TRT Server, Maps and Archetypes ChangeLog |
1 | Deliantra MORPG Server, Maps and Archetypes ChangeLog. |
|
|
2 | Version numbers sort like decimal numbers. |
2 | |
3 | |
3 | 2.1 |
4 | TODO: apartment-descritpions for gotisch1/2 |
|
|
5 | TODO: it is possible to inventory-lock items on the floor, and *spomehow* possible to drop them. |
|
|
6 | TODO: think about naking the rhyzian amulet useful - makes little sense in deliantra? |
|
|
7 | TODO: cast invisible... |
|
|
8 | |
|
|
9 | TODO: investigate why take takes so extremely long |
|
|
10 | - TRIGGER events got passed a garbage pointer instead of a |
|
|
11 | real player object on player changes. |
|
|
12 | - shop specialisation calculation was totally broken. |
|
|
13 | - nrof/itemcount/volume limits when dropping to the floor are |
|
|
14 | now enforced. |
|
|
15 | - fix magic mapping, which only worked for inate spell casting. |
|
|
16 | - godgiven items will now be explicitly described as such. |
|
|
17 | - balancing change, halve rod recharge speed (instead |
|
|
18 | of 4.8s, the standard rods now recharge in ~10s. not a solution, |
|
|
19 | but still. |
|
|
20 | - reduce cpu time used for map saving by >40% by avoiding |
|
|
21 | the costly flasg-checking loop in most cases. |
|
|
22 | - pet monster level was not displayed correctly in "showpets index". |
|
|
23 | - clean up floating point conversions and many similar nitpicks. |
|
|
24 | - move gcc specifics to new file include/compiler.h. |
|
|
25 | - unrecognised cfpod directives could cause undefined behaviour. |
|
|
26 | - pad mapspace to power-of two size for speed/codesize/cache gains. |
|
|
27 | - optimise mapspace updates. |
|
|
28 | - cache volume/items per mapspace. |
|
|
29 | - use fabs, min and max consistently (surprisingly for a code size |
|
|
30 | decrease). |
|
|
31 | - fixed a small uncleanlieness in item converters, which might |
|
|
32 | have led to weird item multiplications. |
|
|
33 | |
|
|
34 | 2.90 Sat Nov 7 15:06:06 CET 2009 |
|
|
35 | - some Andrew Madloch wanted, despite being specifically told |
|
|
36 | multiple times that the Deliantra parts additions are under AGPL, |
|
|
37 | lock up the source code of the server within his company. |
|
|
38 | some reorganisations have been done to the sourcecode to make |
|
|
39 | it clearer that this violates the Affero GPL. Help to keep |
|
|
40 | Deliantra free software even for the coming generations |
|
|
41 | and be wary of the promises of Andrew Madloch, he has nothing |
|
|
42 | good in mind for free software. |
|
|
43 | - clarify which files of the server are 100% AGPL. |
|
|
44 | - minor reorganisation, move some GPL code into other files. |
|
|
45 | - implement viewpoint (which is like observe, but only for the map, |
|
|
46 | not stats etc.). |
|
|
47 | - replace magic mapping overlay by a flying bird exposing area |
|
|
48 | on the worldmap (ext/magic_mapping.ext). |
|
|
49 | - @find in npc dialog was useless as the vairbale wasn't accessible. |
|
|
50 | - @find results in npc dialogue is now stored in $find. |
|
|
51 | - (maps) add lostwages and lorak (valdor/varsia) from cfextended. |
|
|
52 | - (maps, server) add lostwages and celvear apartments to rent system. |
|
|
53 | - (maps) closed guild houses, this is not scalable, ask your friendly |
|
|
54 | dm instead. |
|
|
55 | - (maps) add town portal to celvear. |
|
|
56 | - (maps, arch) add troll canyon, pygmy forest, elven moon and temple of justice |
|
|
57 | mapsets from crossfire, together with associated archetypes. |
|
|
58 | - (maps) add extended region descriptions for some regions from crossfire. |
|
|
59 | - (maps) define a new whalingoutpost region. |
|
|
60 | - (maps, arch) add all changes to mlab between 2006-08-01 and 2009-10-28, |
|
|
61 | and most archetypes that go with them (without stoning and swallow effects), |
|
|
62 | casino tokens and stock certificates are also missing. |
|
|
63 | - (maps, arch) add a number of minor maps from crossfire to scorn, navar |
|
|
64 | and santo dominion. |
|
|
65 | - (maps, arch) added gotischerbereich from cfextended, and some archetypes |
|
|
66 | to go with them. also adjusted archetypes to be more korrekt "gotisch". |
|
|
67 | - doors/containers can now use "match ..." expressions for the slaying field. |
|
|
68 | - properly close client-side dialogue when the player is teleported away. |
|
|
69 | - map-tags did not properly close it's database tables or wait |
|
|
70 | for a quiescent state, causing memory corruption on reload. |
|
|
71 | - support "stat.xyz" accessor in match expressions. |
|
|
72 | - skip /styles and /editor directories in cf::map::static_maps. |
|
|
73 | - implement ->send_big_packet and use it in ext_msg (among other things, this |
|
|
74 | fixes long answers from npc dialogue). |
|
|
75 | - connected magic mouths no longer spill to Log-1, but use the examine tab. |
|
|
76 | - (arch) change marker archetypes to not remove "marker" forces anymore |
|
|
77 | and to not add a "put your code here" force needlessly. |
|
|
78 | - (arch) fix or improve many plurals. |
|
|
79 | - markers do no longer add a force if the slaying field is unset. |
|
|
80 | - sped up search-items implementation, but it's still horrible. |
|
|
81 | - (maps) bigchests are now properly non-unique, per_player and no_reset. |
|
|
82 | - editor_folder can now be used to override whatever cfutil sets, and was |
|
|
83 | used to reogianise the illogical arch tree a bit. |
|
|
84 | - (maps) import most map names from crossfire. |
|
|
85 | - nuke image_sums/image_info subcommands from the protocol. |
|
|
86 | - fly_high movement gives better los, ignoring blocksview. |
|
|
87 | - the addexp command should now honour skill names with spaces. |
|
|
88 | - (arch) add nuke from cfextended to avoid a crash. |
|
|
89 | - (arch) added many more buildable marble floors. |
|
|
90 | - major namespace cleanup: save 45kb by making functions static |
|
|
91 | that were unnecessarily global. |
|
|
92 | |
|
|
93 | 2.82 Sat Oct 24 03:50:17 CEST 2009 |
|
|
94 | - fixed a classical and exploitable stack buffer overflow in the gsay command. |
|
|
95 | - fix a memory buffer overflow in the book code. |
|
|
96 | - add @check, @find npc dialogue commands. |
|
|
97 | - (maps) add a number of town interiors. |
|
|
98 | - (maps) add tindervale the fireborn capitol from cfextended. |
|
|
99 | - (maps) add celvear area from cfextended. |
|
|
100 | - (server,arch) add a number of inscribables, show their capacity in hint. |
|
|
101 | - (server,maps) fix bug causing some library books not to be chained down, |
|
|
102 | cause Scorn/Navar libraries not to have inscribable books. |
|
|
103 | - (maps) fix bug causing the Greyshield and Greysword to have |
|
|
104 | inappropriate item power. |
|
|
105 | - (maps) fix intwell balancing issue. |
|
|
106 | - improve the look of generated books. |
|
|
107 | - make slag no_drop so it can't be dropped from the cauldron. |
|
|
108 | - fix bug where players could bypass no_drop by putting items in containers. |
|
|
109 | - consecutive commands arriving at the same time in the server would be |
|
|
110 | corrupted if the length was >255. |
|
|
111 | - support sub-matches in () inside match expressions, not just conditions. |
|
|
112 | - got rid of motd/rules/news code in C++ part, move motd to it's own tab |
|
|
113 | and perl. |
|
|
114 | - implemented new "match" type that combines both check_inv and pedestal |
|
|
115 | functionality (and more) inside the same object using the match expressions. |
|
|
116 | - create simpler match expression compiles in many common cases. |
|
|
117 | - reduce object size by removing obsolete "seen_by" member. |
|
|
118 | - removed the rather broken make_list_like utility function, taking advantage |
|
|
119 | of the new dynbuf::splice function (which gave an unexpected net win |
|
|
120 | in code size...). |
|
|
121 | - the server will no longer complain (and subtly fail) when an object |
|
|
122 | being removed from a map causes another object to get removed. |
|
|
123 | - banish strncpy from the server, speed up and simplify sending item |
|
|
124 | descriptions to the client considerably. |
|
|
125 | - add new "in head" set modifier for matches. |
|
|
126 | - new BLOCKED_MOVE event added. |
|
|
127 | - mapscript archetype now has activate_on_xxx true by default, as similar |
|
|
128 | connected elements. |
|
|
129 | - (maps) imported all styles from cfextended except |
|
|
130 | floorstyles/land_plots and monsterstyles. |
|
|
131 | - (arch) imported gem treasurelists and archetypes from cfextended. |
|
|
132 | - don't crash when treasure lists are empty / supply new empty |
|
|
133 | treasurelist for randomitems when none can be found. |
|
|
134 | - implement cf::map::static_maps and use it in map-tags.ext. |
|
|
135 | - fix a bug in map-tag scanning when moving tags. |
|
|
136 | - (deliantra.net) improve watchdog to now check both listening ports |
|
|
137 | for a reaction. |
|
|
138 | - implement new "loadall" map loading command, purely for debugging. |
|
|
139 | |
|
|
140 | 2.81 Mon Oct 12 20:00:18 CEST 2009 |
|
|
141 | - display spell description for spellbooks, rods, wands, potion and scrolls, |
|
|
142 | but not horns (to make them more useful for content-creators). |
|
|
143 | - fix a number of bugs in check_move_on: 1) it didn't update the flags |
|
|
144 | 2) it skipped spell effects and 3) it didn't handle the case where |
|
|
145 | and object was destroyed while iterating over it correctly. all this |
|
|
146 | allowed players to sometimes walk onto spaces they should not be able to |
|
|
147 | walk on. |
|
|
148 | - fix an exploit where inscription/marking runes could execute arbitrary code. |
|
|
149 | - examining an object now dumps the serialised object form when the user |
|
|
150 | is a wizard (wizlook). |
|
|
151 | - altars no longer accept unpaid items. |
|
|
152 | - party spells didn't work all that well. |
|
|
153 | - added complex object matching framework (cf::match), and make altars |
|
|
154 | and pedestals use it. |
|
|
155 | - identified skill-tools show what skill they grant. |
|
|
156 | - display the duration of change_ability spells when examining them |
|
|
157 | (missing: protection spells, but they are a hack...). |
|
|
158 | - improve effectiveness of special foods created by woodsman skill, |
|
|
159 | adding more variety to the different mushrooms. |
|
|
160 | - fix a minor cfpod formatting bug. |
|
|
161 | - do not talk about the hintmode so much - die-hards are expected to find |
|
|
162 | the hintmode setting on the settings page. |
|
|
163 | - IPO no longer lies about prices; prices tweaked. |
|
|
164 | - clarified that all deliantra-specific parts are under the Affero GPL. |
|
|
165 | - enable the object loader to also dump archetypes. |
|
|
166 | - (maps) fix guild teleporters to Pupland Terminal. |
|
|
167 | - (maps) put the trapdoor above the floor in sisters/necro_ruins1. |
|
|
168 | - force the initial face when loading an object that is time-animated |
|
|
169 | or a monster, so it does not have to be specified anymore. |
|
|
170 | - fix a bug where recasting an ability changing spell could shorten |
|
|
171 | its remaining duration. |
|
|
172 | - fix pedestal and floor building with builder. |
|
|
173 | - fix RUNATT attack mode, which was broken before (used e.g. by mice). |
|
|
174 | - fix a broken bow-related speed optimisation by using splay - speed |
|
|
175 | up splay operations as well. |
|
|
176 | - use NDI_CLEAR for the body command, and make it use observe. |
|
|
177 | - implement introspection data for C++ classes (%REFLECT). |
|
|
178 | - (arch) add name_pl fields and documentation for building materials. |
|
|
179 | - (maps) random fountains no longer generate permanent stat increases. |
|
|
180 | - fix transmutation alchemy. |
|
|
181 | - speed up many frequently-invoked C->perl callbacks. |
|
|
182 | - added complex object matching framework, to be used in altars and the like. |
|
|
183 | - switch to YAML::XS from YAML. |
|
|
184 | |
|
|
185 | 2.80 Tue Sep 15 20:22:31 CEST 2009 |
|
|
186 | - fix the "screen stays black on login" bug and remove debug instrumentation |
|
|
187 | that ultimately was not helpful to catch it :) |
|
|
188 | - split outer_env into outer_env and outer_env_self, and fix |
|
|
189 | all callers to use either one or the other, as appropriate. This |
|
|
190 | fixes the (rather fragile) light spell, maybe others. |
|
|
191 | - fixed an overflow and exploit in the bank/payment code. |
|
|
192 | - fixed a bug in the jeweler quest and added the 'Tome of Jewelery' |
|
|
193 | to explain the skill a bit more. |
|
|
194 | - removed a buggy check for zero attacktype. So that we might find |
|
|
195 | the real bugs in the archs/maps/objects. |
|
|
196 | - Fixed enabling torches with lighters. |
|
|
197 | - (maps) Added Heaven Town region. |
|
|
198 | - (arch+maps) Fixed & normalized warriors on map |
|
|
199 | /quests/peterm/CTower/Barracks. |
|
|
200 | - fix the light spell (and possibly diseases and other lights). |
|
|
201 | - (arch) The clawing skill didn't have the physical attacktype. |
|
|
202 | - (maps) make the greenway accessible again - this bug was introduced |
|
|
203 | a long time ago, and similar cases are still to be found in the maps. |
|
|
204 | - make the socket_timeout configurable in the code (but not yet for users). |
|
|
205 | - earth wall health bar is now correct. |
|
|
206 | |
|
|
207 | 2.79 Tue Jul 28 00:56:36 CEST 2009 |
|
|
208 | - IO::AIO chaged to using eventfd internally - updated server to not |
|
|
209 | freeze with IO::AIO anymore due this change. |
|
|
210 | - avoid a crash when a player tries to apply a lighter. |
|
|
211 | - allow a spell argument for dimension door. |
|
|
212 | - move shop item listing and some otherstuff into the info tab. |
|
|
213 | - avoid crashes when non-players cast party spells. |
|
|
214 | - fix a crash in get_spell_by_name (for learn_spell). |
|
|
215 | - added pyromancer class with graphics (by Job Vranish). |
|
|
216 | - small improvement of the number of potions in shops |
|
|
217 | (by Job Vranish). |
|
|
218 | - added a few party spells (by Job Vranish). |
|
|
219 | - use a common message dynbuf. |
|
|
220 | - destroying tear down objects will now use the full hp range |
|
|
221 | for animation and will only destroy/lastframe when hp < 0. |
|
|
222 | - allow monsters to use earth to dust. |
|
|
223 | - use manhattan distance for get_rangevector_from_mapcoord, just as |
|
|
224 | in get_rangevector. |
|
|
225 | - los updates now correctly take tiled maps into account. |
|
|
226 | - do los updates even on maps without darkness. |
|
|
227 | - fixed quiver of holding bolts to be able to hold bolts. |
|
|
228 | - upgrade to IO::AIO 3.21. |
|
|
229 | - fixed show invisible, to show objects of type CONTAINER. |
|
|
230 | - properly catching exceptions from callback in irc.ext. |
|
|
231 | - fixed a potentially hazardous bug in cfpod regarding Z<>. |
|
|
232 | - (maps) fixed npc dialog in /pup_land/nurnberg/reception/reception. |
|
|
233 | - (arch) added hint about usage to Slag Ex. |
|
|
234 | - (maps) /darcap/quest/water sea1 tile are now passable by players, |
|
|
235 | like the rest. |
|
|
236 | - (maps) added /heaven/gem_shop by Boes. |
|
|
237 | - (arch+maps) added rate limited converter and adjusted |
|
|
238 | /elmex/mana_fountain. |
|
|
239 | - store arrow->slaying in custom_name, to get rid of the spellarg slot. |
|
|
240 | - reduce size of casting_time, move_status, attack_movement, |
|
|
241 | last_heal and last_sp slots, squeezing some more space out of struct |
|
|
242 | object, also declare expmul as constant 1.0, as it isn't used |
|
|
243 | anywhere. |
|
|
244 | |
|
|
245 | 2.78 Sun Apr 5 20:04:29 CEST 2009 |
|
|
246 | - fixed bug in alchemy, where finding the right object for enhancements |
|
|
247 | didn't work. |
|
|
248 | - aggressively merge spell effects and do not allow more than 5 spell |
|
|
249 | effects (w.r.t. put_more) per mapspace, to give the server a chance |
|
|
250 | to survive a hundred deathsheads. |
|
|
251 | - correctly clear op->env when inserting onto map, this was a potentially |
|
|
252 | disastrous bug of unfortunately unknown proportions... |
|
|
253 | - fix cone-spell symmetry that was broken for direction 8. |
|
|
254 | - use gender-neutral place descriptions for invite. |
|
|
255 | - (arch) new faces for alchemist class, wizard class and quetzalcoatl race. |
|
|
256 | Thanks go to Lisa Larsen! |
|
|
257 | - remove support for colour reducing 32x32 images (no cfclient support |
|
|
258 | anymore). |
|
|
259 | - actually mention the literacy level when it is too low to learn the spell. |
|
|
260 | - use better dependency tracking for include/keyword.h. |
|
|
261 | - add accept-invitation and suicide to the list of asynchronous commands, |
|
|
262 | so it is possible to invite somebody out of some stck-till-death traps, |
|
|
263 | or simply to commit suicide. |
|
|
264 | - replace the "ignoring delayed commands" message by something more useful |
|
|
265 | (cf. cunning gnome freezeing issue). |
|
|
266 | - various fixes for weapon improvements. |
|
|
267 | - fixed small bug with handling connect errors in the IRC gateway. |
|
|
268 | - support T and G sequences in cfpod. |
|
|
269 | |
|
|
270 | 2.77 Sun Feb 1 16:30:48 CET 2009 |
|
|
271 | - convert me command from per-map to chat, which makes more sense, also |
|
|
272 | document it. |
|
|
273 | - more than one spellbooks of same class can now be given |
|
|
274 | in class selection. |
|
|
275 | - adjusted the starting_spell.trs treasure list to the recent |
|
|
276 | spell rebalancements. |
|
|
277 | - the IRC gateway filters IRC colors now. |
|
|
278 | |
|
|
279 | 2.76 Sat Jan 17 08:36:51 CET 2009 |
|
|
280 | - (arch) fix quiver of Holding Bolts. |
|
|
281 | - applying unpaid items will now examine them. |
|
|
282 | - add "What" column to body command, showing items in that slot. |
|
|
283 | - redesigned and rebalanced lamps and torches. |
|
|
284 | - add "..." to item names that have been shortened. |
|
|
285 | - fixed "assign" function that squeezes strings into fixed length. |
|
|
286 | - add cursed effect to lamps and (some) torches. |
|
|
287 | - fixed bad assigned crafting skills and their tools. |
|
|
288 | |
|
|
289 | 2.75 Fri Jan 9 16:13:30 CET 2009 |
|
|
290 | - rebalanced lighting w.r.t. outdoor, darkness and see_in_dark. |
|
|
291 | - fix a bug in the nimbus extension that allowed players to cheat. |
|
|
292 | - make monster smell logic dependent on their wisdom stat. |
|
|
293 | - put the death reason into a separate tab. |
|
|
294 | - converted "connected" slot to string, cleanly got rid of some ugly |
|
|
295 | hacks such as the path_attuned hack. |
|
|
296 | - introduce shstr_tmp for fast temporary shstr passing. |
|
|
297 | - replace one-at-a-time hash by faster than smaller FNV-1a hash |
|
|
298 | when hashing strings. |
|
|
299 | - sanitized alchemy-like skills and cauldrons to check earlier |
|
|
300 | whether the right cauldron is used. |
|
|
301 | - considerably optimise shared string implementation by |
|
|
302 | making its null value a compiletime constant. |
|
|
303 | - use shared string matching insteafd of strcmp in a lot of places, |
|
|
304 | as well as using shstr_cmp to pass shared stringsa round efficiently, |
|
|
305 | for lots of code size savings. |
|
|
306 | - monsters which breed new monsters shouldn't breed new monsters when |
|
|
307 | they are sleeping: generators now check for the sleeping flag. |
|
|
308 | - tell gcc not to excessively inline some perl interface functions. |
|
|
309 | - remove marking rune length limit. |
|
|
310 | - fix formatting of cfpod when a verbatim block was following |
|
|
311 | a single newline. |
|
|
312 | - move resistances, statistics and showpets command output into tabs. |
|
|
313 | - implement map scripts that can replace the boulder logic without |
|
|
314 | having to write extensions. |
|
|
315 | |
|
|
316 | 2.74 Mon Dec 29 15:23:38 CET 2008 |
|
|
317 | - fix a longstanding bug that teared multipart monsters |
|
|
318 | at map boundaries apart. |
|
|
319 | - temporarily make permanently invisible player visible when |
|
|
320 | he/she makes noise. |
|
|
321 | - fix being able to see through walls a bit. |
|
|
322 | - improve look at output. |
|
|
323 | - completely replaced the line of sight algorithm with a variant |
|
|
324 | of spiral fov capable of visibility grades and arbitrary |
|
|
325 | shadow angles, that uses less memory and less code. |
|
|
326 | - the new los code supports arbitrary map rectangles and loosens |
|
|
327 | other restrictions of the old code, supporting further optimisations. |
|
|
328 | - update los if blocksview-objects are inserted in a map, not just when |
|
|
329 | removed (e.g. for summon fog). |
|
|
330 | - permanent invisibility doesn't make immune against making noise: |
|
|
331 | implement a noise system that allows monsters to locate the player |
|
|
332 | when he/she makes noise. |
|
|
333 | - implement a primitive smell system that monsters can use to track |
|
|
334 | players. |
|
|
335 | - create bomb now also works when casted by door traps. |
|
|
336 | - (arch) new torch graphics. |
|
|
337 | - (maps) considerably soften the subway spider. |
|
|
338 | - (maps) made the portgate of navar safe ground, to protect |
|
|
339 | the guards from being killed by players. |
|
|
340 | - (maps) lots of tweaks in and around scorn. |
|
|
341 | - (maps) use special non-blocksview jungle, mountain and |
|
|
342 | darkforest freely on the worldmap, to get gradual sight obstacles |
|
|
343 | instead of total blackout in those areas. |
|
|
344 | - no maximum darkness for outdoor maps anymore. |
|
|
345 | - add more hints, fix some messages. |
|
|
346 | - fix a bug: firing rods should tell you something about them. |
|
|
347 | - make light additive even within players. |
|
|
348 | - darken xrays effect a bit. |
|
|
349 | - improve handling of los changes when inserting or removing |
|
|
350 | objects, not perfect yet. |
|
|
351 | - make map darkness signed (formerly unsigned) to allow |
|
|
352 | ambient lighting and centrally manage darkness as an offset. |
|
|
353 | - revamped, fixed and documented the server calendrics, also |
|
|
354 | tell users the current time and data, to improve awareness. |
|
|
355 | - implement proper wizlook flag and handling of wizlook, instead |
|
|
356 | of dumbly just clearing los once. |
|
|
357 | - speed up los code - it's now about 2-3 times as fast as the old one, |
|
|
358 | and has a smaller runtime variance. |
|
|
359 | - daylight/nightfall can now increase/decrease past the natural limit, |
|
|
360 | making them actually useful. |
|
|
361 | - see_in_dark now increases the viewing radius by 3. |
|
|
362 | - implement a fast tiled map iterator and use it in LOS for a 20% |
|
|
363 | speedup, as well as in many other places. |
|
|
364 | - remove support for extended map infos - these are not used |
|
|
365 | by the deliantra client and removing them gives us a 10% speedup |
|
|
366 | when sending map changes. |
|
|
367 | - remove most gcfclient and other client bug workarounds, as well |
|
|
368 | as now obsolete protocol versions, simplying the code. |
|
|
369 | - optimise and simplify generation of random numbers. |
|
|
370 | - correctly provide a non-zero default density for materials, to |
|
|
371 | avoid crashes, fix other bugs in the material handling code. |
|
|
372 | - fix volume calculations. |
|
|
373 | - fix cfpod parsing when multiple verbatim blocks were separated by |
|
|
374 | newlines. |
|
|
375 | - increase monster detection radius from wis/5 to wis/3. |
|
|
376 | - remove old pickup modes. |
|
|
377 | - remove obsolete disarm and search commands (search wasn't working |
|
|
378 | anyways). |
|
|
379 | - fix a crash when an npc applied a sign. |
|
|
380 | |
|
|
381 | 2.73 Thu Dec 18 20:56:31 CET 2008 |
|
|
382 | - this release is assumed to be very stable. |
|
|
383 | - (maps) radically redesigned and improved tutorial. |
|
|
384 | - directional casting no longer immediately removes the invisible effect. |
|
|
385 | - magic ears now trigger when used inside the NPC dialogue. |
|
|
386 | - fix overflow in lighting calculations. |
|
|
387 | - negative glow radii can no longer cause total darkness. |
|
|
388 | - allow lookat on spaces where we only barely see, as opposed to |
|
|
389 | only maximally-lit ones. |
|
|
390 | - class selection has been reworked completely and their documentation corrected. |
|
|
391 | - swashbucklers got the oratory skill now. |
|
|
392 | - jump skill was fixed to adhere to all the flags a mapspace has got. |
|
|
393 | - (maps) small fix w.r.t. magic ear in /scorn/houses/wizz.entry |
|
|
394 | - fix deadlock in Jeweler::improve_ring_by_plan. |
|
|
395 | - use Coro::SemaphoreSet instead of our own lock management |
|
|
396 | (which was probably broken, too). |
|
|
397 | - support negative glow radii during daytime, too. |
|
|
398 | - use circular, not rectangular, viewing area. |
|
|
399 | - use minimum viewing distance of 2 in outdoor maps. |
|
|
400 | - negative glow is stronger than viewing area or lamps. |
|
|
401 | - (arch) new darkness spell face. |
|
|
402 | |
|
|
403 | 2.72 Thu Dec 4 22:20:19 CET 2008 |
|
|
404 | - (maps) completely redesigned scorn. |
|
|
405 | - "cast light" now works on oneself. |
|
|
406 | - bump max light radius to 9, rewrote glow lighting calculations, fix |
|
|
407 | negative glow radii again (they were totally broken before). |
|
|
408 | - the "worldmaps sometimes are black" bug is finally fixed. |
|
|
409 | - the "player objects are referenced in _GENxx globals" bug has finally |
|
|
410 | been fixed, by not relying on buggy perl internals when serialising. |
|
|
411 | - fixed a long standing bug in the anvil converters in armour shops. |
|
|
412 | - items shops weren't interested in don't vanish anymore, and are given |
|
|
413 | back to the player. |
|
|
414 | - attuned/repell and spell base level system reworked. |
|
|
415 | - rewrote skill cache (last_skill_ob) system and usage - might |
|
|
416 | be less erratic now. |
|
|
417 | - refuse to write the uuid file if the uuid is zero |
|
|
418 | (to avoid writing it in early crashes). |
|
|
419 | - pathsync the directory after saving a file for added slowdown^Wsafety. |
|
|
420 | - speed up emergency_save by not syncing every file separately. |
|
|
421 | - no longer reattach perl to every object on reload, it's slow, and no longer |
|
|
422 | necessary since we don't nuke stashes anymore. |
|
|
423 | - do not bootstrap perl from the commandline args, use separate eval for |
|
|
424 | better error reporting. |
|
|
425 | - fix a crash when pushing cone spells met ice attacks. |
|
|
426 | - pre-cache perl extension files on reload to speed up the reload. |
|
|
427 | - speed up map refresh in server a bit. |
|
|
428 | - refactored drop code and fixed some programming errors in it. |
|
|
429 | - fixed small regression in 'Slag Ex' potion extension. |
|
|
430 | - fixed a bug where some objects couldn't cross map tile boundaries. |
|
|
431 | - fixed a bug with weight update of the player, the client showed -0.0 |
|
|
432 | as the current weight of the inventory. |
|
|
433 | - (arch) the dragonbreath spell is level 12 again, but the high level spell |
|
|
434 | dragonfire has been introduced for the non-dragon players. |
|
|
435 | - remove unused "tooltype", "start_holding" object slots. |
|
|
436 | - change "weapontype" object slot to uint8. |
|
|
437 | - convert "hide" object slot into flag. |
|
|
438 | - reorder object members for better locality of reference and codesize |
|
|
439 | decrease. |
|
|
440 | - correct rounding in lerp, add lerp_rd, lerp_ru. |
|
|
441 | - fix a crash when no skill could be found when killing amonster. |
|
|
442 | - fix a small memleak that would eat one pointer on the perl stack for |
|
|
443 | every completed aio operation. |
|
|
444 | - perl mapspace acessor methods now normalise (handle tiled maps) |
|
|
445 | and update mapspaces if necessary. |
|
|
446 | |
|
|
447 | 2.71 Tue Sep 23 07:02:23 CEST 2008 |
|
|
448 | - removed all command line parsing, only env variables are supported |
|
|
449 | anymore. |
|
|
450 | - region-specific monsters will now once more be on the worldmap. |
|
|
451 | - fix a disastrous "memleak" where temporary memory allocations |
|
|
452 | would grow out of bounds. |
|
|
453 | - server now writes a pidfile and makes sure its alter ego is killed. |
|
|
454 | - fixed a double-escaping bug in the pod-parser. |
|
|
455 | - rewrote the cfpod parser in C++. |
|
|
456 | - hintmode moved to C++, players need to re-set their hintmode if |
|
|
457 | they dislike "show". |
|
|
458 | - fix RIP inscription. |
|
|
459 | - bump login name length from 18 to 20 char max. |
|
|
460 | - correctly support gender in emotes. |
|
|
461 | - correctly support gender in the death messages. |
|
|
462 | - correctly generate death messages for players only when they really die, |
|
|
463 | with increased information. |
|
|
464 | - fix a bug in the dynbuf code that could potentially lead to crashes |
|
|
465 | and data corruption (but apparently was never triggered). |
|
|
466 | - close the $ENV{LOCKUTIL_LOCK_FD} fd if in the env, for lockutil. |
|
|
467 | - make sure Compress::LZF acquires the storable lock, might fix some |
|
|
468 | data corruption bug. |
|
|
469 | - tweak coredumping/monitoring a bit. |
|
|
470 | - completely redid server initialisation to hopefully avoid rare races. |
|
|
471 | - do not crash in the loader when an inventory object could not be loaded |
|
|
472 | (from a corrupted file). |
|
|
473 | - redid skills command to send output to proper channel. |
|
|
474 | - object->map is no longer refcounting. |
|
|
475 | - add FLAG_DEBUG for internal debugging. |
|
|
476 | - add NDI_VERBATIM flag to send_msg. |
|
|
477 | - add perl backtraces to logBacktrace-initiated backtraces. |
|
|
478 | - player->exists is no longer a sync_job. |
|
|
479 | - split login.ext's player scheduler into |
|
|
480 | it's own player-scheduler.ext extension. |
|
|
481 | |
|
|
482 | 2.7 Sun Sep 7 16:32:03 CEST 2008 |
|
|
483 | - require perl 5.10. |
|
|
484 | - make nrof signed, so that code that checks for underflow actually works. |
|
|
485 | - swap player and observed count's on the map when observing. |
|
|
486 | - add (mostly untested) mapspace perl class and accessors. |
|
|
487 | - re-"calibrate" value/weight autopickup to be silver/kg >= pickup*100. |
|
|
488 | - fix a crash in cast_bless (restoration et al.) when no target |
|
|
489 | could be found. |
|
|
490 | - pits now have a configurable "random spread" range and default |
|
|
491 | to a radius of two now. |
|
|
492 | - rewrite pay_player_arch. |
|
|
493 | - use a more stable perl_reload implementation. |
|
|
494 | - do not use Symbol::delete_package (causes crashes after perl-reload), |
|
|
495 | use our own, safer, clear_package instead. |
|
|
496 | - when asynchronously dumping core, close all file handles to allow |
|
|
497 | the server to restart concurrently. |
|
|
498 | - improve the cfpod parser to generate proper xml from proper cfpod |
|
|
499 | sequences, without double-encoding. it should be faster, too. |
|
|
500 | - the above fixes wrong display of help tetx and many other issues. |
|
|
501 | - use lzf and frag packets for large messages for clients supporting them |
|
|
502 | (0.9976+), use it for long books and other messages. |
|
|
503 | - eradicate listen command and corresponding code. |
|
|
504 | - eradicate logs command. |
|
|
505 | - let the client log into the server log, used for crash backtraces. |
|
|
506 | - fixed rods/wands/etc. with randomitem spells on maps, but broke |
|
|
507 | old style spell objects with the spell magic bullet. |
|
|
508 | - (arch) fixed skill less rods in the archetypes |
|
|
509 | |
|
|
510 | 2.61 Sun Aug 3 17:59:50 CEST 2008 |
|
|
511 | - made jeweler workbench larger and some other minor map |
|
|
512 | changes in jeweler town. |
|
|
513 | - fixed wrong item handling in jeweler skill code. |
|
|
514 | - (arch) use a special "key_random_map" for random map keys |
|
|
515 | that are used up. |
|
|
516 | - fix a crash when the player who was observed has logged out long |
|
|
517 | enough for his region/map to be gone. |
|
|
518 | - port to g++-4.3's incompatible tr1 changes. |
|
|
519 | - add some missing dependencies. |
|
|
520 | - log to /var/log/deliantra/ by default. |
|
|
521 | - hack observe code to enable smooth movmenet when observing. |
|
|
522 | |
|
|
523 | 2.6 Sun Jul 20 18:58:08 CEST 2008 |
|
|
524 | - (maps) extension of the jeweler quest/skill/town |
|
|
525 | - correctly move gsay to the party channel. |
|
|
526 | - fix a crash when animate weapon was used in some areas. |
|
|
527 | - fixed unnecessary identification of by converters created objects. |
|
|
528 | - (maps) tutorial now contains clues about chatting and talking |
|
|
529 | with NPCs. |
|
|
530 | - (arch) dragon scales got proper type now |
|
|
531 | - object::decrease would sometimes cause container weights to |
|
|
532 | be wrong, this has been fixed. |
|
|
533 | - do not send time updates for newly-seen items. |
|
|
534 | - thawing an icecube will once more drop its contents to the ground. |
|
|
535 | - fix cone spells etc. going through walls sometimes. |
|
|
536 | - fix a weight update bug that sometimes left containers |
|
|
537 | with wrong weights. |
|
|
538 | - added auto_apply event and extension for shop tiles. |
|
|
539 | - work around get_map_flags invoking perl and switching the stack. |
|
|
540 | - make sure the map is loaded when using a town portal return. |
|
|
541 | - fixed a bug with caching of sp/grace/food points for spells |
|
|
542 | where healing spells didn't cost any grace. |
|
|
543 | - fix starvation kill reason. |
|
|
544 | - fix pk killer name message. |
|
|
545 | - don't let people apply signs with @match. |
|
|
546 | - add support for berkeley db 4.7 (the new BDB module also fixes |
|
|
547 | what seems to be the biggets memleak in the server). |
|
|
548 | |
|
|
549 | 2.56 Wed Jun 4 10:50:40 CEST 2008 |
|
|
550 | - require Coro 4.73 which contains an important performance-bugfix. |
|
|
551 | - use anyevent to manage listen ports (this enables IPv6 support). |
|
|
552 | - server supports ipv6 client connections now. |
|
|
553 | - use newly-available Coro::AnyEvent. |
|
|
554 | - get rid of the AnyEvent::AIO watcher, start the event thread earlier |
|
|
555 | to let it handle AIO requests. |
|
|
556 | |
|
|
557 | 2.55 Sat May 24 19:52:52 CEST 2008 |
|
|
558 | - avoid newmap commands when crossing tiled map boundaries. this speeds up |
|
|
559 | processing considerably (especially in the client) and reduces data transfers |
|
|
560 | (saves roughly 1kb each crossing in typical configs). works even with gcfclient. |
|
|
561 | - (arch) fix typo in ixalovh treasurelist causing empty_archetypes to appear. |
|
|
562 | - (map) fixed npc dialogue in pup_land/s_f/special. |
|
|
563 | - bugfix: fix a crash when a player casts a swarm spell and then logs out |
|
|
564 | (swarm spells now stay in the player's inventory). |
|
|
565 | - bugfix: when unapplying skills also remove them from the range/combat slots. |
|
|
566 | - bugfix: do not merge items whose archetype name merges, use the |
|
|
567 | archetype *archname* (chairs of different facings were merged). |
|
|
568 | - bugfix: fix a potential crash issue in find_object_name (not used |
|
|
569 | normally). |
|
|
570 | - bugfix: locked doors cnanot be bashed down by magical means |
|
|
571 | (destruction, magic missile etc.). |
|
|
572 | - swarm spells without a direction now use various spiral patterns |
|
|
573 | instead of being fully random. |
|
|
574 | - update AnyEvent API to 3.4 and above. |
|
|
575 | |
|
|
576 | 2.54 Thu May 8 22:01:22 CEST 2008 |
|
|
577 | - change floorbox item ordering to enable more efficient protocol and to |
|
|
578 | stay in sync with the 0.9971 client update which also reverses ordering. |
|
|
579 | - bugfix: the jumping skill now gives experience for jumping |
|
|
580 | and for attacking monsters. it also takes about one second to do a jump. |
|
|
581 | - bugfix: players couldn't starve in 2.53 :( |
|
|
582 | - bugfix: correctly send the client a del_spell when a spell gets removed. |
|
|
583 | - bugfix: spell effects like word of recall are removed on death. |
|
|
584 | - bugfix: fix a crash when objects with treasure on top (ground...) |
|
|
585 | were created outside a map. |
|
|
586 | - bugfix: couldn't apply inventory items when levitating, but ground items |
|
|
587 | (fixed by reversing the logic). |
|
|
588 | - bugfix: fixed a mismatched '"' in the debugging description of objects |
|
|
589 | - bugfix: the random map generator no longer leaks key objects. |
|
|
590 | - bugfix: support random maps >127x127. |
|
|
591 | - (maps) fixed the death certificate system in nimbus. |
|
|
592 | - (maps) rebalance onefang, build a road to onefang, temporarily closed zorn. |
|
|
593 | - (arch) the material 'wood' was undefined, it's now a burnable material. |
|
|
594 | - (arch) give ball lightning a real name. |
|
|
595 | - (arch) fixed material of bones (was 'wood', is now 'bone') |
|
|
596 | - support cfpod in ex replies (client item tooltips). |
|
|
597 | - unapply item in range slow when readying a spell. |
|
|
598 | - bugfix: account for rounding errors in weight updates. |
|
|
599 | - remove synchronous mkdir in chargen_race_done. |
|
|
600 | - fix per-race starting maps. |
|
|
601 | - check hiscore on suicide and quit as well. |
|
|
602 | - tell players when they are starving. |
|
|
603 | - get rid of costly object_from_name conversion for altar effects. |
|
|
604 | - fix map difficulty calculation for generators. |
|
|
605 | - slightly more intelligent handling of "is_animated" flag. |
|
|
606 | - support no_drop map header flag (before it was only available internally). |
|
|
607 | - make random-map-generated keys crumble after one hour, use more unique slaying. |
|
|
608 | |
|
|
609 | 2.53 Sun May 4 17:32:48 CEST 2008 |
|
|
610 | - bugfix: custom skill settings were not saved by the server. |
|
|
611 | - bugfix: remove did not actually remove items from the inventory, leaving |
|
|
612 | ghost items. |
|
|
613 | - bugfix: properly update items identified on the ground. |
|
|
614 | - bugfix: use localtime_r in the logger thread. |
|
|
615 | - bugfix: player starvation will now give the correct kill reason. |
|
|
616 | - bugfix: archetype reloads could crash the server. |
|
|
617 | - bugfix: the mailscrolls are now correctly handed out even when the destination |
|
|
618 | player is not logged in. |
|
|
619 | - bugfix: make list_logins non-blocking (glaring oversight). this caused the lag at |
|
|
620 | server startup. |
|
|
621 | - bugfix: fix the door surround check in the random map generator. |
|
|
622 | - (maps) fix heaven quest difficulty progression. |
|
|
623 | - (maps) fix some random map styles. |
|
|
624 | - dropping items a shop is not interested in won't sell them anymore. |
|
|
625 | - rods and horns with a too low maximum charge allow now at least one discharge. |
|
|
626 | - implement kill & death statistics. |
|
|
627 | - random map preparation is no longer synchronous. |
|
|
628 | - rewrite find_style in perl, no longer does synchronous I/O. |
|
|
629 | - improve random map specials placement. |
|
|
630 | - make the killer a real object pointer instead of a string, improved |
|
|
631 | kill reason messages. |
|
|
632 | - take advantage of new aio_close and aio_chmod. |
|
|
633 | - implement archetype::get, object::deep_clone and update callers. |
|
|
634 | - change_abil is much faster. |
|
|
635 | - update the floorbox more often to work around the reverses item order |
|
|
636 | display in clients. |
|
|
637 | - cleaned up object copying by encapsulating it to a single place. |
|
|
638 | - add hints to the invite messages. |
|
|
639 | - rewrote key<->value pair handling. |
|
|
640 | - use an independent random number generator for the random map generator. |
|
|
641 | |
|
|
642 | 2.52 Thu Apr 24 11:47:19 CEST 2008 |
|
|
643 | - completely automate the item add/delete on remove/insert. this should fix |
|
|
644 | all "ghost" item bugs caused by sloppy coding, as sloppy coding is now correct :) |
|
|
645 | - completely automate the weight handling, should fix all weight |
|
|
646 | accounting bugs caused by sloppy coding, as sloppy coding is now correct :) |
|
|
647 | - reloading archetypes while a user was in the character creation phase |
|
|
648 | could crash the server. |
|
|
649 | - fix a nontrivial number of cases of code commented similar |
|
|
650 | to "is this really correct?", as many of those cases are now handles |
|
|
651 | automatically by lower level code. |
|
|
652 | - replace many ad-hoc checks for client visibility by object::visible_to, |
|
|
653 | should result in broader applicability of functions using it. |
|
|
654 | - merge items with different arch pointers refering to the same arch |
|
|
655 | (due to archetype reloads). |
|
|
656 | - refactored the object remove/insert functions and most related |
|
|
657 | functions (decrease, split, merge_ob etc.). |
|
|
658 | - make it compile better on freebsd (reported by pippijn). |
|
|
659 | - remove GT_UPDATE_INV (no longer applicable). |
|
|
660 | - fix the longstanding "container stays open" bug. |
|
|
661 | - improved floorbox updating to be incremental and other protocol |
|
|
662 | optimisations. |
|
|
663 | - get rid of update_after_inventory_change and only do update stats |
|
|
664 | for weight once/tick/player at max. |
|
|
665 | - rewrite party commands, use party channel. |
|
|
666 | |
|
|
667 | 2.51 Sun Apr 20 21:27:37 CEST 2008 |
|
|
668 | - properly link against libgthread as that is needed to make the slice |
|
|
669 | allocator thread-safe. |
|
|
670 | - support perls not compiled with 64 bit support (though this is not a |
|
|
671 | recommended configuration) (reported by Samuel Gondouin). |
|
|
672 | - always put godgiven items into the player inventory, never any containers. |
|
|
673 | - (maps, arch) the scorn go club was founded! |
|
|
674 | - (arch) do no longer support player abilities, they didn't work anyways. |
|
|
675 | - (arch) the alchemy spell is now of the alchemy spell school, which |
|
|
676 | became a real spell-class. |
|
|
677 | - (arch) the alchemist class now get an alchemy spell book for new characters. |
|
|
678 | - (arch) considerably strengthened spark shower and destruction. |
|
|
679 | - match archetypes by name, not by ptr, in treasure.C, this makes archetypes |
|
|
680 | finally reloadable at runtime. |
|
|
681 | - changed archetype loading algorithm to only require one pass and |
|
|
682 | use delayed resolving of references. |
|
|
683 | - examine command now uses the examine infobox. |
|
|
684 | - implement an "incremental garbage collector" for archetypes. |
|
|
685 | - enable slice allocator again. |
|
|
686 | - implement optional free memory poisoning. |
|
|
687 | |
|
|
688 | 2.5 Wed Apr 16 15:06:53 CEST 2008 |
|
|
689 | - the two handed weapon skill can no longer be used as unarmed combat |
|
|
690 | skill. |
|
|
691 | - append [drop xxx coins] to altar/trigger_altar/identify_table/converter |
|
|
692 | names (also update all maps to use money instead of coins). |
|
|
693 | - add uuid accessors to perl. |
|
|
694 | - add coin names and archetype accessors to perl. |
|
|
695 | - fix runtime uuid file format to use "." instead of ",". |
|
|
696 | - change perl extensions to not use hardcoded coins and values. |
|
|
697 | - write uuids asynchronously (no hiccups due to uuid writes) |
|
|
698 | and be more parsimonous of uuid usage by the exact value out on exit. |
|
|
699 | - write log messages in another thread, removing another sync point. |
|
|
700 | - support multi-line log messages in a nicer way. |
|
|
701 | - be more portable w.r.t. uuids and format specifiers everywhere. |
|
|
702 | - fix a minor memleak in the random map generator. |
|
|
703 | - some parts of the random map generator are not coroutine-safe, |
|
|
704 | so only call it "single-threaded". |
|
|
705 | - major cleanup of memory management in random map generator. |
|
|
706 | - slight refactoring of the random map generator, faster too. |
|
|
707 | - solve the "slice_alloc becomes negative" mystery - no allocation bug, |
|
|
708 | bookkeeping bug. |
|
|
709 | - work around "player is on active list" problem by deactivating player |
|
|
710 | after loading. |
|
|
711 | - garbage collect shstr's more evenly and adaptively only when |
|
|
712 | there have in fact been allocations. |
|
|
713 | - fix object::insert to do as documented and insert into the env |
|
|
714 | if necessary. |
|
|
715 | - fix cf::map::unique_maps. |
|
|
716 | - fix nrof overflow check in can_merge_slow. |
|
|
717 | - fix converter code to handle >31 bit values. |
|
|
718 | - added support for the player_sold flag |
|
|
719 | - converters no longer accept unpaid items. |
|
|
720 | - canonicalize random map meta files for better unification. |
|
|
721 | |
|
|
722 | 2.43 Sun Apr 6 20:35:29 CEST 2008 |
|
|
723 | - work around a glibc bug that causes calloc to return non-zero memory |
|
|
724 | when mlockall has been used. |
|
|
725 | - pass environment to perl_sys_init3, as required by newer perls. |
|
|
726 | - use separate thread for ticker timing (and more in the future). |
|
|
727 | this greatly increases timing accuracy and gets rid of an enourmous |
|
|
728 | number of gettimeofday calls. |
|
|
729 | - use a separate thread to signal aio completion, for lower latency. |
|
|
730 | - require Coro 4.47, which fixes a data corruption bug with its C API. |
|
|
731 | |
|
|
732 | 2.42 Sat Mar 15 12:05:21 CET 2008 |
|
|
733 | - rebalanced default experience table to be more exponential |
|
|
734 | and much easier up to level ~40, then moderately harder. |
|
|
735 | - change attuned/repelled level boni to +-8 from +-2. |
|
|
736 | - use SvUPGRADE to avoid exception in sv_upgrade with perl 5.10. |
|
|
737 | - do not exit on reload/load errors but properly cleanup. |
|
|
738 | - fix a 32 bit uncleanlyness in the slice debugging wrapper. |
|
|
739 | |
|
|
740 | 2.41 Fri Jan 25 13:15:37 CET 2008 |
|
|
741 | - get rid of YAML::Syck, it's too buggy and misparses many files |
|
|
742 | (this fixes the jeweler skill). |
|
|
743 | - back-to-back perl_reloads don't freeze the ticker anymore. |
|
|
744 | - convert cfutil from Event to EV (forgot to do this earlier...). |
|
|
745 | - move tombstone to real map if player died due to cave-in (even if |
|
|
746 | it has reset, which is better than putting it on the savebed, also as |
|
|
747 | proof that the player didn't use a savebed). |
|
|
748 | |
|
|
749 | 2.4 Sun Jan 13 13:41:29 CET 2008 |
|
|
750 | - work around perl bug in configure perl module version check. |
|
|
751 | - fix bug in golem move code that would cause a crash at tiling borders. |
|
|
752 | - fix a freeze bug when looking for an arrow in the inventory. |
|
|
753 | - fix a bug in animate_weapon, causing a crash. |
|
|
754 | - no longer exit when a coroutine throws an exception. |
|
|
755 | - fix a potential double free bug (nicely exploited by g++ 4.2). |
|
|
756 | - fix the "<player> is nuts" message. |
|
|
757 | - fix an exception at logout due to the json_coder being gone. |
|
|
758 | - upgrade to EV version 2.0 API. |
|
|
759 | - when players don't apply a savebed correctly but stand above one, |
|
|
760 | do not move or kill them. |
|
|
761 | - implement client-side settings page in playerbook (0.9963+ required). |
|
|
762 | - implement generic framework for server-side resource files. |
|
|
763 | - implement resource file update event. |
|
|
764 | - hook experience table update into the framework. |
|
|
765 | - move jeweler.yaml to resources (arch/). |
|
|
766 | - switch from Crossfire to Deliantra perl module. |
|
|
767 | - implement json2json arch filter. |
|
|
768 | - implement widget protocol version 2, support for ui templates. |
|
|
769 | - mapinfo is now handled fully asynchronously. |
|
|
770 | - ext/irc: also log irc messages. |
|
|
771 | - ext/schmorplog: write user stat files asynchronously. |
|
|
772 | |
|
|
773 | 2.32 Sun Dec 2 18:11:01 CET 2007 |
|
|
774 | - limited the number of items that can be picked up and dropped |
|
|
775 | as temporary measurement against bad performance or dropping things |
|
|
776 | (this lead to long freezes and triggered the watchdog). |
|
|
777 | - improved the performance of the drop command a bit. |
|
|
778 | - switch from Event to EV for higher performance, easier usage, |
|
|
779 | less bugs... |
|
|
780 | - updated to release version of the gnu affero license. |
|
|
781 | |
|
|
782 | 2.31 Sun Nov 11 17:26:28 CET 2007 |
|
|
783 | - more thoroughly rename the binaries, contact addresses. |
|
|
784 | - update the copyrights. |
|
|
785 | - avoid backtraces due to old spells on some maps, sometimes causing |
|
|
786 | crashes. |
|
|
787 | - fix a problem where facedata wasn't initialised to zero properly, |
|
|
788 | potentially causing crashes. |
|
|
789 | - assign weapons on user load time, not login-time, avoiding |
|
|
790 | crashes. |
|
|
791 | |
|
|
792 | 2.3 Sat Oct 27 11:22:38 CEST 2007 |
|
|
793 | - fixed an important bug that caused passwords to be forgotten. |
|
|
794 | - implement *tag destinations for goto, slaying etc. and use it |
|
|
795 | in some of the maps. |
|
|
796 | - bigworldised many maps (islands as in pupland and aldwulf), |
|
|
797 | which is now trivial to do. |
|
|
798 | - removed all traces of the old (and never working) plug-in interface |
|
|
799 | (70kb code less on amd64). |
|
|
800 | - improve/tune scheduling priorities. |
|
|
801 | - fix some freezing bugs. |
|
|
802 | - fix a memory corruption problem in dynbuf.printf. |
|
|
803 | - use channels for chat and many informational commands. |
|
|
804 | - improved the tutorial. |
|
|
805 | - create missile is now fixed. |
|
|
806 | - race fields must now contain archetypes. |
|
|
807 | - jumping skill now works as advertised. |
|
|
808 | |
|
|
809 | 2.2 Tue Sep 11 15:41:24 CEST 2007 |
|
|
810 | - relicense under the gnu affero license. |
|
|
811 | - new inscription skill, can only inscribe INSCRIBABLE items. |
|
|
812 | - implement server-side framework for generic resources. |
|
|
813 | - use resource framework for server-provided ambient |
|
|
814 | music. |
|
|
815 | - save object owners (players only atm). |
|
|
816 | - replace limited sound api with server-provided sound effects. |
|
|
817 | - new sc (sound control) protocol command. |
|
|
818 | - improve fxix protocol to include types. |
|
|
819 | - exactly fill tcp segments, if possible. |
|
|
820 | - output-rate is now an upper limit, the server will automatically |
|
|
821 | (and quite perfectly) adjust to the network conditions, ensuring |
|
|
822 | low latency even during bulk transfers (music, images, sounds etc.). |
|
|
823 | - implement server-side widgets (i.e. client widgets controlled |
|
|
824 | in the server side). this will allow future expansion without |
|
|
825 | having to upgrade clients. |
|
|
826 | - implement a (artwork) world map with realtime player position |
|
|
827 | tracking. |
|
|
828 | - new and more efficient extcmd (server still supports old extcmd |
|
|
829 | protocol). |
|
|
830 | - fixed lots of underflow/overflow bugs in diseases and general stats |
|
|
831 | calcluation that could be easily exploited by users. |
|
|
832 | - rebalanced diseases to spread more naturally/evenly. |
|
|
833 | - completely asynchronous map loading even for tiled maps. |
|
|
834 | - replace simple messaging protocol with channels carrying metadata |
|
|
835 | (similar to message types, but more directed at the user). |
|
|
836 | - reduce command processing latency by a whopping 120ms by |
|
|
837 | reordering some processing steps inside the server. this directly |
|
|
838 | reduces lag by 120ms. |
|
|
839 | - actually send spell faces to the client. |
|
|
840 | - implement player genders. |
|
|
841 | - unclean logout/login results in: nothing if map hasn't reset, |
|
|
842 | otherwise return to savebed and possible kill if the log-out |
|
|
843 | was for too long. |
|
|
844 | - fast socket-dead detection (kick player after 8 seconds without ack). |
|
|
845 | - greatly reduce the cpu time needed to draw maps _again_. |
|
|
846 | - archetypes are now subclasses of objects. |
|
|
847 | - rebalanced shop greed and approval functions to be more realistic |
|
|
848 | (and likely match the actual intention). |
|
|
849 | - implement "crossfire pod" format for messages, with working bold, |
|
|
850 | italic, gender-specific text, paragraphs etc. |
|
|
851 | - implemented hint framework, players can opt to receive hints. |
|
|
852 | - implemented (long) book framework, added some books from the cf wiki. |
|
|
853 | - implement generic message framework that uses xml, utf8 for the client |
|
|
854 | protocol and is capable of transmitting generic meta information. |
|
|
855 | - implement (in a suboptimal way) per-player instantiated maps. |
|
|
856 | - replace the nexus by a per-player tutorial map that teaches stuff |
|
|
857 | better than the newbie house. |
|
|
858 | - fix the magicmap colours. |
|
|
859 | - optimise map update even more by removing unneeded code and checks. |
|
|
860 | - decouple map and stats update from pl->ob and use pl->observe instead. |
|
|
861 | - implement observe command. |
|
|
862 | - major speed up in map refresh by replacing most get_map_from_coord |
|
|
863 | calls with a simple comparison. |
|
|
864 | - fix a latent crossfire bug that could crash the server because the |
|
|
865 | map refresh did not update the mapspace. |
|
|
866 | - support custom keys for regions and maps, regions are now |
|
|
867 | refcount-managed. |
|
|
868 | - allow worldmap overlays anywhere in the 000..999 range. |
|
|
869 | - new system to acquire time slices for background jobs, to reduce |
|
|
870 | jitter. |
|
|
871 | - semi-persistent object-referencing framework (currently only players |
|
|
872 | supported). |
|
|
873 | - dependency tracking for perl extensions. |
|
|
874 | - new slag-ex extension for cleaning cauldrons. |
|
|
875 | - fix invoke result processing. |
|
|
876 | - there are even less i/o syncpoints in the server now. |
|
|
877 | - added map-tags extension that scans all maps for object tags |
|
|
878 | and records them in the database (not used yet). |
|
|
879 | - metaserver 2 support. |
|
|
880 | - many more bugfixes and minor optimisations. |
|
|
881 | |
|
|
882 | 2.1 Sun May 27 04:21:29 CEST 2007 |
4 | - optimised event invocation (non-wanted events can now be |
883 | - optimised event invocation (non-wanted events can now be |
5 | skipped with 4-5 inlined instructions). |
884 | skipped with 4-5 inlined instructions). |
6 | - complete rewrite of town_portal: it now creates a portal |
885 | - complete rewrite of town_portal: it now creates a portal |
7 | to the "nearest" town only, travel is only possible |
886 | to the "nearest" town only, travel is only possible |
8 | to the town and back, anybody can use it (also removes |
887 | to the town and back, anybody can use it (also removes |
… | |
… | |
51 | - make coroapi accessible to cf+. |
930 | - make coroapi accessible to cf+. |
52 | - moved map handling logic completely to perl |
931 | - moved map handling logic completely to perl |
53 | - per player maps are now marked in the map |
932 | - per player maps are now marked in the map |
54 | - maps are saved completely differently now, |
933 | - maps are saved completely differently now, |
55 | and much more often. |
934 | and much more often. |
56 | - rewrote map header parser and writer |
935 | - rewrote map header parser and writer, to be much faster. |
57 | - maps and players are now (in the average case) loaded |
936 | - maps and players are now (in the average case) loaded |
58 | and saved completely asynchronously, I/O contention will no |
937 | and saved completely asynchronously, I/O contention will no |
59 | longer freeze the server. |
938 | longer freeze the server. |
60 | - players and maps can be loaded anytime, without the player |
939 | - players and maps can be loaded anytime, without the player |
61 | being logged in. |
940 | being logged in. |