ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/cvsroot/deliantra/www/src/differences.html
Revision: 1.6
Committed: Mon Oct 15 12:54:34 2007 UTC (19 years ago) by elmex
Content type: text/html
Branch: MAIN
CVS Tags: HEAD
Changes since 1.5: +0 -0 lines
State: FILE REMOVED
Log Message:
*** empty log message ***

File Contents

# Content
1 Differences
2
3 <h2>New stuff and differences to Crossfire</h2>
4
5 <p>
6 A lot of development flew into the server code and the game balancing.
7 Here are some of the changes listed. All other changes are annunced at
8 the <a href="/index.html">front page in the news</a>.
9 </p>
10
11 <h3>Code changes</h3>
12
13 <ul>
14 <li>
15 lots of bugfixes, mainly crashfixes
16 </li>
17 <li>
18 better handling of file saving, allowing more reliable regular backups
19 and also a more crash-safe behavoir.
20 </li>
21 <li>
22 a Perl plugin system which is actively used to improve interactivity features,
23 like the tradeshop, mana fountain or the prieses in the churches of gorokh and valriel.
24 </li>
25 <li>
26 the server code has been converted to C++ and a few structs are improved with
27 C++ features (templates, methods, ...)
28 </li>
29 <li>
30 Perl has been moved further into the core of Deliantra, allowing more stable
31 and more interesting plugin extensions to the game.
32 </li>
33 <li>
34 Lots of the loading/saving code for players and maps has been rewritten/changed
35 to handle serialized Perl data.
36 </li>
37 <li>
38 The 'shutdown' command has been improved to save maps and players now before
39 exiting.
40 </li>
41 <li>
42 Updated the server with a linux-specific improvement to the socket handling,
43 The old code sent out 2 TCP packets per command, the new one will bundle them
44 into one segment. This will decrease bandwidth requirements a lot, decreases the
45 chance of packet loss a lot and greatly reduces chances for lag. As a side effect,
46 it decreases latency without the ill side-effects of disabling nagle.
47 </li>
48 <li>
49 Added Linux-specific fast timeout code that kicks players out when the client
50 doesn't ack data after 20 seconds. This makes it possible to quickly re-login
51 after a "catastrophic" even such as losing your internet conenction. Also
52 player-stealing between hostile players is possible.
53 </li>
54 <li>
55 Added a plug-in that asynchronously pre-fetches adjacent maps from disk
56 whenever a player enters a map. This make ist highly probable that maps entered by
57 the player are already in memory and comes at almost no cost (they are loaded into
58 the OS disk cache only). As a net effect, most short freezes due to map loading
59 should be gone.
60 </li>
61 <li>
62
63 </li>
64 </ul>
65
66 <h3>Balancing changes</h3>
67
68 <ul>
69 <li>reduced draining effects by about a factor of 8</li>
70 <li>
71 Enabled limited playerkilling again, when both players are
72 hostile (there is no luck penalty). If one of the players isn't
73 hostile, then you can't attack him/her.
74 </li>
75 <li>
76 Rods are now limited by the use_magic_item skill of the player (+ some extra).
77 </li>
78 <li>
79 The experience table has been adjusted and made a little bit harder.
80 The 'nimbus', where you get back the lost experience compensates this a little bit.
81 </li>
82 <li>
83 Some of the treasurelists have been changed, for example nearly all
84 occurences of rings in monster loot have been replaced by gems.
85 </li>
86 <li>
87 The IPO and Bank don't use the Python plugins anymore and have been replaced by
88 more featureful Perl plugins, eg. live mail notification of the new IPO or the handling
89 of the new royalties in the bank.
90 </li>
91 <li>
92 Added 3d models for some houses and monsters, unfortunately there weren't enough
93 people who had time for modelling, so the graphics set looks more mixed now, more
94 modellers are needed.
95 </li>
96 <li>
97 Furthermore, a setting has been added that allows players to cast town portal
98 in their personal maps such as apartments, big chests in guilds etc.
99 </li>
100 <li>
101 A 'suicide' command has been added.
102 </li>
103 <li>
104 Stealing now never yields more exp than the monster has and also reduces monster experience.
105 </li>
106 <li>
107 Greatly reduced availability of skill scrolls and (to a lesser extent) enchantment scrolls,
108 to enhance class-based gameplay. Also reduced amount of generators in raffle.
109 </li>
110 <li>
111 Greatly reduced experience for playerkills. Disable friendly fire logic in the arena,
112 so you do not have to be hostile anymore just to visit the arena.
113 </li>
114 <li>
115 Put a bargaining scrolls in the Gem shop in scorn for a low price.
116 So that players can begin levelling bargaining early.
117 </li>
118 <li>
119 Monsters don't drop rings anymore, only gems and money instead.
120 Expanded the magic shops a bit, because monsters don't drop rings or spellbooks anymore.
121 </li>
122 <li>
123 Shops have now a default maximum.
124 </li>
125 <li>
126 the difficulty calculations for maps were adjusted together with the generation
127 of scrolls, rods, wands and staffs, which are now more close to the level difficulty.
128 </li>
129 </ul>
130
131 <h3>New systems</h3>
132
133 <p>
134 Some sub systems have been rewritten in Perl:
135 </p>
136
137 <ul>
138 <li>
139 The event objects have been completly removed from the archetypes and have been
140 replaced with an 'attach' field, which describes a linking point between extensions and
141 objects.<br />
142 Look at the <a href="http://cvs.schmorp.de/cf.schmorp.de/maps/perl/">perl extensions in the cvs</a> for
143 examples.
144 </li>
145
146 <li>
147 NPCs have now a greatly increased functionality, they have a map-local states and
148 player-states. Look at the
149 <a href="doc/development/NPC_Dialogue.html">NPC Dialogues</a>
150 documentation, which explaines the Perl interface.
151 The interface allows direct script integration, dialog trees and more.
152 </li>
153
154 <li>
155 Chat commands, NPC dialogues and lots of other things have been rewritten.
156 One new function that has already been implemented is the 'ignore' commmand.
157 One can ignore shouts/chats, tells or both from one person for a specified amount of
158 hours.
159 </li>
160 </ul>
161
162 <p></p>