ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/Changes
Revision: 1.24
Committed: Tue Jul 31 03:13:44 2007 UTC (16 years, 9 months ago) by root
Branch: MAIN
Changes since 1.23: +44 -0 lines
Log Message:
update changes... boy, we did a lot

File Contents

# Content
1 Crossfire TRT Server, Maps and Archetypes ChangeLog.
2
3 2.2
4 - relicense under the gnu affero license.
5 - implement server-side framework for generic resources.
6 - use resource framework for server-provided ambient
7 music.
8 - replace limited sound api with server-provided sound effects.
9 - new sc (sound control) protocol command.
10 - improve fxix protocol to include types.
11 - exactly fill tcp segments, if possible.
12 - output-rate is now an upper limit, the server will automatically
13 (and quite perfectly) adjust to the network conditions, ensuring
14 low latency even during bulk transfers (music, images, sounds etc.).
15 - implement server-side widgets (i.e. client widgets controlled
16 in the server side). this will allow future expansion without
17 having to upgrade clients.
18 - implement a (artwork) world map with realtime player position
19 tracking.
20 - new and more efficient extcmd (server still supports old extcmd
21 protocol).
22 - replace simple messaging protocol with channels carrying metadata
23 (similar to message types, but more directed at the user).
24 - reduce command processing latency by a whopping 120ms by
25 reordering some processing steps inside the server. this directly
26 reduces lag by 120ms.
27 - actually send spell faces to the client.
28 - implement player genders.
29 - unclean logout/login results in: nothing if map hasn't reset,
30 otherwise return to savebed and possible kill if the log-out
31 was for too long.
32 - fast socket-dead detection (kick player after 8 seconds without ack).
33 - greatly reduce the cpu time needed to draw maps _again_.
34 - archetypes are now subclasses of objects.
35 - rebalanced shop greed and approval functions to be more realistic
36 (and likely match the actual intention).
37 - implement "crossfire pod" format for messages, with working bold,
38 italic, gender-specific text, paragraphs etc.
39 - implemented hint framework, players can opt to receive hints.
40 - implemented (long) book framework, added some books from the cf wiki.
41 - implement generic message framework that uses xml, utf8 for the client
42 protocol and is capable of transmitting generic meta information.
43 - implement (in a suboptimal way) per-player instantiated maps.
44 - replace the nexus by a per-player tutorial map that teaches stuff
45 better than the newbie house.
46 - fix the magicmap colours.
47 - optimise map update even more by removing unneeded code and checks.
48 - decouple map and stats update from pl->ob and use pl->observe instead.
49 - implement observe command.
50 - major speed up in map refresh by replacing most get_map_from_coord
51 calls with a simple comparison.
52 - fix a latent crossfire bug that could crash the server because the
53 map refresh did not update the mapspace.
54 - support custom keys for regions and maps, regions are now
55 refcount-managed.
56 - allow worldmap overlays anywhere in the 000..999 range.
57 - new system to acquire time slices for background jobs, to reduce
58 jitter.
59 - implement new observe command.
60 - dependency tracking for perl extensions.
61 - new slag-ex extension for cleaning cauldrons.
62 - server clamps some stats now to avoid over/underflow.
63 - fix invoke result processing.
64 - there are even less i/o syncpoints in the server now.
65 - many more bugfixes and minor optimisations.
66
67 2.1 Sun May 27 04:21:29 CEST 2007
68 - optimised event invocation (non-wanted events can now be
69 skipped with 4-5 inlined instructions).
70 - complete rewrite of town_portal: it now creates a portal
71 to the "nearest" town only, travel is only possible
72 to the town and back, anybody can use it (also removes
73 one of the remaining syncpoints in the server).
74 - complete rewrite of the range/attack skill slot system:
75 there are now two slots, one for combat, one for ranged
76 attacks.
77 - introduce the concept of a current weapon (either a ranged
78 or a combat weapon/skill/tool) and switch between them as
79 needed.
80 - rewrite bow code so bows get more useful: apply damage,
81 attacktype and other stats to the arrows and treat
82 bows as weapons. also rebalance the missile weapons skill
83 so its damage increases with level.
84 - rewrite the complete player speed logic: weapon_speed now
85 works as documented and there are no unnatural speed boosts.
86 - implement a utility - cfutil - that simplifies arch and map
87 installation, replacing the old collect scripts and
88 simplying deployment by scaling and cutting faces as required.
89 - simplify the map protocol extensively by taking advantage
90 of missing bigfaces, speeding up map generation immensely.
91 - implement inherit keyword allowing archetypes to inherit from
92 other archetypes.
93 - rationalise archetype, region and treasurelist file format
94 into a single file format and make them reloadable asynchronously.
95 - make the worldmap, facedata (smoothing, faces, magicmap)
96 reloadable at runtime.
97 - implement 64x64 faceset support.
98 - implement fxixsx protocol that saves
99 a lot of bandwidth over the old image/face/smooth packets
100 and allows images > packetsize, incremental and background
101 transfers.
102 - implement a bandwidth-saving smoothing protocol that works
103 on a face basis as opposed to a mapspace basis.
104 - the server can now rate-limit image uploads to not exceed
105 a certain (client-configurable) speed while guarenteeing full
106 freedom of movement.
107 - implement new ex command to request item descriptions.
108 - implement new msg command for in-game messages with meta
109 information (using xml).
110 - enforce utf-8 for all text messages.
111 - added micropather (not used yet).
112 - many, many bugfixes.
113
114 2.0 Tue Mar 6 15:22:53 CET 2007
115 - make coroapi accessible to cf+.
116 - moved map handling logic completely to perl
117 - per player maps are now marked in the map
118 - maps are saved completely differently now,
119 and much more often.
120 - rewrote map header parser and writer, to be much faster.
121 - maps and players are now (in the average case) loaded
122 and saved completely asynchronously, I/O contention will no
123 longer freeze the server.
124 - players and maps can be loaded anytime, without the player
125 being logged in.
126 - automatically generate method interfaces for perl from headers
127 - unbundled freezethaw
128 - mostly rewrote common/map.C
129 - completely rewrite server/swap.C
130 - introduced "runtime", the CCT clock (corrected crossfire time) :)
131 - introduced new keyword for map files: file_format_version (integer, server version: 0)
132 - better message for apply failures due to applymode
133 - removed most all of the weather code
134 - unified logging to stderr and file
135 - too many minor changes to document