… | |
… | |
14 | 4) Whenever making an update, please update this file, no matter how |
14 | 4) Whenever making an update, please update this file, no matter how |
15 | small - this just lets others know that the file has changed if nothing |
15 | small - this just lets others know that the file has changed if nothing |
16 | else. With this, include the file(s) that you changed. |
16 | else. With this, include the file(s) that you changed. |
17 | ------------------------------------------------------------------------------ |
17 | ------------------------------------------------------------------------------ |
18 | Changes for CVS: |
18 | Changes for CVS: |
|
|
19 | |
|
|
20 | common/utils.c: apply patch #1445892 (transmute_materialname crash) courtesy |
|
|
21 | the cf.schmorp.de development team. |
|
|
22 | include/spellist.h: disable big unused arrays, legacy of spell code. |
|
|
23 | server/c_object.c: merge find_best_apply_object_match and find_best_object_match |
|
|
24 | which are really the same. |
|
|
25 | server/init.c: fix memory leak. |
|
|
26 | server/monster.c: fix a monster/scroll related crash, based on patch #1447242 by |
|
|
27 | the cf.schmorp.de development team. |
|
|
28 | server/player.c: fix monitor_spells not initalized (before InitConnection()). |
|
|
29 | server/skills.c: fix merging bug with inscription. |
|
|
30 | socket/init.c: fix monitor_spells not being initialized. |
|
|
31 | Ryo 2006-03-14 |
|
|
32 | |
|
|
33 | Fix bug/exploit in setup command. We were strcat'ing back data provided |
|
|
34 | by the client. |
|
|
35 | --- |
|
|
36 | socket/request.c: Modify SetUp() to use safe_strcat() - eliminates buffer |
|
|
37 | overflow issues. Add some char* casts to spell/skill requestinfo |
|
|
38 | to eliminate compiler warnings. Add IP address to log for incoming |
|
|
39 | connections. |
|
|
40 | MSW 2006-03-13 |
|
|
41 | |
|
|
42 | Fix possible exploit with shadow alchemy. Also improve the alchemy spell to |
|
|
43 | yield more nuggets. |
|
|
44 | --- |
|
|
45 | server/shop.c: In query_cost() apply the hack (to multiply non-GEM/non-MONEY |
|
|
46 | values by four) also if no player object is present. |
|
|
47 | Andreas Kirschbaum 2006-03-07 |
|
|
48 | |
|
|
49 | Add settings permanent_experience_percentage, death_penalty_percentage and |
|
|
50 | death_penalty_levels to the settings file. |
|
|
51 | --- |
|
|
52 | common/living.c: don't hardcode exp calculations |
|
|
53 | common/init.c, include/config.h, lib/settings: set defaults for new values |
|
|
54 | doc/settings: document new values |
|
|
55 | include/global.h: change settings struct to hold the new values |
|
|
56 | server/init.c: parse new values in the settings file. |
|
|
57 | server/skill_util.c: reference new value |
|
|
58 | Brendan Lally 2006-03-07 |
|
|
59 | |
|
|
60 | Apply modified parts of patch #1439490 (Fix in random map generation) by CF |
|
|
61 | Development Team Schmorp.de <crossfire@schmorp.de>. |
|
|
62 | --- |
|
|
63 | random_maps/exit.c: In place_exits() check for a valid exit path before |
|
|
64 | dereferencing it. |
|
|
65 | random_maps/treasure.c: In find_closest_monster() include monsters at map |
|
|
66 | border. In find_enclosed_spot() prevent access to out of map tiles. |
|
|
67 | Andreas Kirschbaum 2006-03-04 |
|
|
68 | |
|
|
69 | Apply patch #1436833 (Patch for forked lightning crash at map borders) by CF |
|
|
70 | Development Team Schmorp.de <crossfire@schmorp.de>. |
|
|
71 | --- |
|
|
72 | server/spell_attack.c: In forklightning() prevent access to out of map tiles. |
|
|
73 | Andreas Kirschbaum 2006-03-04 |
|
|
74 | |
|
|
75 | common/loader.l: Prevent excess whitespace while saving objects. |
|
|
76 | common/loader.c: Rebuilt. |
|
|
77 | Andreas Kirschbaum 2006-02-27 |
|
|
78 | |
|
|
79 | Apply patch by Marc Alexander Lehmann to improve server performance. |
|
|
80 | --- |
|
|
81 | include/map.h: Move path field to end of struct. Since this field was huge it |
|
|
82 | pushed all other fields to large offsets in the struct. Moving it to the |
|
|
83 | end of the struct mapdef should not break anything but will improve |
|
|
84 | performance and reduce the server code by >3500 bytes. |
|
|
85 | Andreas Kirschbaum 2006-02-27 |
|
|
86 | |
|
|
87 | ------------------------------------------------------------------------------ |
|
|
88 | Changes for 1.9.0: |
|
|
89 | |
|
|
90 | lib/collect.pl.in: Again fix generation of 'editor_folder' field to make |
|
|
91 | sub-folder selection work again. |
|
|
92 | lib/archetypes: Rebuilt. |
|
|
93 | Andreas Kirschbaum 2006-02-26 |
|
|
94 | |
|
|
95 | */Makefile{in.am}: Fix plugin makefiles so that 'make distcheck' works. Using |
|
|
96 | relative path names for files to include in distribution does not work - |
|
|
97 | need to have a makefile in each directory. |
|
|
98 | configure{.ac}: Updated as result of new Makefiles. |
|
|
99 | MSW 2006-02-24 |
|
|
100 | |
|
|
101 | Apply patch #1428057 courtesy Pippijn van Steenhoven: fix to a crashing bug in plugins |
|
|
102 | (incoherent order of parameters). |
|
|
103 | Also use plugin_common.h in CFAnim instead of having separate definitions. |
|
|
104 | Modified files: |
|
|
105 | plugins/cfanim/cfanim.c |
|
|
106 | plugins/cfanim/include/cfanim.h |
|
|
107 | plugins/cfanim/include/cfanim_proto.h |
|
|
108 | plugins/common/plugin_common.c |
|
|
109 | plugins/common/include/plugin_common.h |
|
|
110 | Ryo 2006-02-23 |
|
|
111 | |
|
|
112 | Remove object type CONFUSION since it was not used anymore. |
|
|
113 | --- |
|
|
114 | common/item.c: Remove CONFUSION entry from item_types[] array. |
|
|
115 | include/define.h: Uncomment #define CONFUSION. |
|
|
116 | Andreas Kirschbaum 2006-02-22 |
|
|
117 | |
|
|
118 | lib/collect.pl.in: Fix generation of 'editor_folder' field. It did not work |
|
|
119 | too well for .arc files in deep subdirs. |
|
|
120 | lib/{archetypes,bmaps.paths,crossfire.0}: Rebuilt. |
|
|
121 | Andreas Kirschbaum 2006-02-21 |
|
|
122 | |
|
|
123 | random_maps/random_map.c: Cause the random map generator to skip certain |
|
|
124 | elements if the style is set to "none". |
|
|
125 | doc/Developers/random-maps: Document above change |
|
|
126 | Alex Schultz 2006-02-20 |
|
|
127 | |
|
|
128 | socket/request.c: Don't crash on trying to send a spell which doesn't have an |
|
|
129 | associated skill |
|
|
130 | Brendan Lally 2006-02-20 |
|
|
131 | |
|
|
132 | Do not allow to dimension door into monsters or earthwalls. |
|
|
133 | --- |
|
|
134 | server/spell_effect.c: In dimension_door() do not allow destinations that are |
|
|
135 | P_IS_ALIVE. |
|
|
136 | Andreas Kirschbaum 2006-02-19 |
|
|
137 | |
|
|
138 | random_maps/style.c: In find_style() fix access to uninitialized variable. |
|
|
139 | Andreas Kirschbaum 2006-02-19 |
|
|
140 | |
|
|
141 | Prevent crossedit from stripping out 'maplore' map header field. |
|
|
142 | --- |
|
|
143 | common/map.c: Add code to load/save/dump maplore information. |
|
|
144 | include/map.h: Add new maplore field to map struct. |
|
|
145 | Andreas Kirschbaum 2006-02-19 |
|
|
146 | |
|
|
147 | Apply patch #1433271 (code-cleanup) by Stefan Huehner: Add const and static. |
|
|
148 | --- |
|
|
149 | Affected files: common/{loader.l,los.c,map.c}, include/{libproto.h,sproto.h}, |
|
|
150 | plugins/cfanim/{cfanim.c,include/cfanim.h}, server/{apply.c,skill_util.c} |
|
|
151 | common/loader.c: Rebuilt. |
|
|
152 | Andreas Kirschbaum 2006-02-17 |
|
|
153 | |
|
|
154 | common/map.c: Modify ob_blocked() to properly handly objects with a 0 |
|
|
155 | ob->move_type. Fixes infinite loop from random map code when trying |
|
|
156 | to place exits. |
|
|
157 | MSW 2006-02-16 |
|
|
158 | |
|
|
159 | Commit forgotten file for yesterday, which have the CFAPI_INT16 define... |
|
|
160 | include/plugin.h |
|
|
161 | server/plugins.c |
|
|
162 | Ryo 2006-02-15 |
|
|
163 | |
|
|
164 | Minor bugfixes: |
|
|
165 | server/apply.c: Fix apply_transport ->contr checks to actually |
|
|
166 | check against correct values. |
|
|
167 | server/plugins.c: Replace CFAPI_INT16 with CFAPI_INT - there is no |
|
|
168 | declaration anyplace for CFAPI_INT16 so compiles fails. |
|
|
169 | server/swamp.c: Fix swamp code so that only objects that can be |
|
|
170 | picked up disappear - this way, transports don't disappear into |
|
|
171 | oblivion. |
|
|
172 | MSW 2006-02-15 |
|
|
173 | |
|
|
174 | Swamps don't affect DMs anymore. Also, swamps don't remove items with |
|
|
175 | FLAG_IS_FLOOR or FLAG_IS_OVERLAY_FLOOR. |
|
|
176 | server/swamp.c |
|
|
177 | ---- |
|
|
178 | Fixes to plugin system. Added "SINT16" as return type. |
|
|
179 | server/plugins.c: resistances are sint16, not int. |
|
|
180 | plugins/cfanim/include/cfanim_proto.h: fix cf_object_get_resistance declaration. |
|
|
181 | plugins/cfpython/cfpython_archetype.c: fix comparison function, which should return 0 or +-1. |
|
|
182 | plugins/cfpython/cfpython_map.c: fix comparison function. |
|
|
183 | plugins/cfpython/cfpython_object.c: fix broken GetResist, fix comparison function. |
|
|
184 | plugins/cfpython/cfpython_party.c: fix comparison function. |
|
|
185 | plugins/cfpython/cfpython_region.c: fix comparison function. |
|
|
186 | plugins/common/plugin_common.c: object resistances are sint16. |
|
|
187 | plugins/common/include/plugin_common.h: object resistances are sint16. |
|
|
188 | Ryo 2006-02-14 |
|
|
189 | |
|
|
190 | Apply modified patch #1428048 (make the log line buffered) by Marc Lehmann. |
|
|
191 | --- |
|
|
192 | common/init.c: In init_globals() switch the log file to line buffer mode. |
|
|
193 | Andreas Kirschbaum 2006-02-11 |
|
|
194 | |
|
|
195 | server/apply.c: In apply_scroll() do not identify the scroll if the player |
|
|
196 | lacks the literacy skill. |
|
|
197 | Andreas Kirschbaum 2006-02-10 |
|
|
198 | |
|
|
199 | Apply slightly modified patch #1428309 (code-cleanup: const, static) by |
|
|
200 | Stefan Huehner: add const/static to functions/variables. Remove some type |
|
|
201 | casts. |
|
|
202 | --- |
|
|
203 | Affected files: common/{arch.c,glue.c,image.c,init.c,readable.c,time.c}, |
|
|
204 | crossedit/stubs.c |
|
|
205 | include/{attack.h,libproto.h,object.h,sockproto.h,spells.h,sproto.h}, |
|
|
206 | random_maps/{door.c,rproto.h,standalone.c,style.c}, |
|
|
207 | server/{alchemy.c,apply.c,c_chat.c,c_misc.c,init.c,player.c,shop.c,spell_effect.c}, |
|
|
208 | socket/{info.c,loop.c,request.c} |
|
|
209 | Andreas Kirschbaum 2006-02-10 |
|
|
210 | |
|
|
211 | server/c_wiz.c: make dm stats command print Int and damage. Rearrange output |
|
|
212 | to match the stat ordering. |
|
|
213 | lib/wizhelp/stats: document the stats command |
|
|
214 | lib/Makefile.am lib/Makefile.in: install the new help file |
|
|
215 | Brendan Lally 2006-02-10 |
|
|
216 | |
|
|
217 | Apply modified patch by Marc Alexander Lehmann to fix get_rangevector |
|
|
218 | functions on tiled maps. |
|
|
219 | --- |
|
|
220 | server/map.c: Add helper function adjacent_map() to check if two maps are |
|
|
221 | adjacent. Modify get_rangevector(), get_rangevector_from_mapcoord(), and |
|
|
222 | on_same_map() to use this function. |
|
|
223 | Andreas Kirschbaum 2006-02-09 |
|
|
224 | |
|
|
225 | server/player.c: make a player's starting items be locked, so that they |
|
|
226 | can't accidentally drop and lose them without unlocking them first. |
|
|
227 | Brendan Lally 2006-02-09 |
|
|
228 | |
|
|
229 | Apply patch #1427979 (code-cleanup: add const, fix warnings) by Stefan |
|
|
230 | Huehner. |
|
|
231 | --- |
|
|
232 | common/{anim.c,button.c,exp.c,friend.c,image.c,item.c,living.c,los.c,map.c, |
|
|
233 | object.c,player.c,quest.c,readable.c,recipe.c,region.c,treasure.c,utils.c}, |
|
|
234 | include/libproto.h: Add "const" to pointer function parameters. |
|
|
235 | Andreas Kirschbaum 2006-02-09 |
|
|
236 | |
|
|
237 | Make create food spell work for all FOOD/DRINK objects. It used to fail for |
|
|
238 | objects where another object with the same name but type POISON does exist. |
|
|
239 | --- |
|
|
240 | common/arch.c: Add new function find_archetype_by_object_type_name() to find |
|
|
241 | an archetype by item type and item name. |
|
|
242 | include/libproto.h: Add new prototype. |
|
|
243 | server/spell_effect.c: In cast_create_food() only search for objects of type |
|
|
244 | FOOD or DRINK. |
|
|
245 | Andreas Kirschbaum 2006-02-09 |
|
|
246 | |
|
|
247 | Added a "insert_into" command for DMs, to easily put items in other items. |
|
|
248 | Modified filse: |
|
|
249 | include/sproto.h |
|
|
250 | server/c_wiz.c |
|
|
251 | server/commands.c |
|
|
252 | Ryo 2006-02-08 |
|
|
253 | |
|
|
254 | server/main.c: Modify enter_exit() to see if player is in a transport, |
|
|
255 | and if so, remove him. Can happen if player uses word of recall |
|
|
256 | while in a transport. |
|
|
257 | MSW 2006-02-07 |
|
|
258 | |
|
|
259 | Regional jails. |
|
|
260 | --- |
|
|
261 | common/region.c, include/libproto.h, map.h: parse jail entries, new function |
|
|
262 | get_jail_exit to return the exit to the local jail. |
|
|
263 | doc/Developers/regions: update |
|
|
264 | server/c_wiz.c, commands.c, include/sproto.h: add dm command, command_arrest |
|
|
265 | to jail players in the correct location. |
|
|
266 | lib/regions: add scorn and navar jails. |
|
|
267 | Brendan Lally 2006/02/08 |
|
|
268 | |
|
|
269 | Code that adds transports. Transports are described more in detail in |
|
|
270 | docs/Developers/objects. |
|
|
271 | --- |
|
|
272 | loader.l: Add new move type ('boat'). Update move_name field to be aware of |
|
|
273 | this type. |
|
|
274 | common/object.c: Unrelated to transport, but more apparant with transports - |
|
|
275 | fix bug with insert_ob_in_map() and multipart objects - we now only |
|
|
276 | try to fix up map and coordinates if the provided coordinates are |
|
|
277 | out of the map. Before, function would always use the passed |
|
|
278 | map for multipart objects, which is incorrect if we have already |
|
|
279 | set valid coordinates. |
|
|
280 | doc/Developers/objects: Update notes for TRANSPORTS. Update move |
|
|
281 | information to include MOVE_BOAT. |
|
|
282 | include/define.h: Add type TRANSPORT. Add MOVE_BOAT. |
|
|
283 | include/player.h: Add transport field to player structure. |
|
|
284 | include/sproto.h: rebuilt. |
|
|
285 | server/apply.c: Add code to handle applying of transports. Update |
|
|
286 | apply_below to apply transport if player is on one. |
|
|
287 | server/attack.c: Update hit_map() to look for transports, and hit any |
|
|
288 | players with the damage. |
|
|
289 | server/c_object.c: Update put_object_in_sack() to also handle TRANSPORTS |
|
|
290 | so that code can be re-used. |
|
|
291 | server/move.c: Fix handling of multipart objects in move_object() - |
|
|
292 | old code didn't work right with multipart objects moving along seams |
|
|
293 | of tiled maps. Add code to move_ob() to update player map position |
|
|
294 | for all players in a moving transport. |
|
|
295 | server/player.c: Update move_player_attack() too check of player is |
|
|
296 | in tranport, and use that for map and location information. Update |
|
|
297 | move_player() to handle speed related issues with transports. |
|
|
298 | server/time.c: Add code to credit time back to TRANSPORT objects since |
|
|
299 | we remove time in move_player() for TRANSPORTS. |
|
|
300 | socket/item.c: Add add_object_to_socklist() so that same code isn't |
|
|
301 | reproduced in 3 different places in the file. Update draw_look() |
|
|
302 | to handle transports - send transport object itself, then objects |
|
|
303 | in transport. Update esrv_send_inventory() and esrv_send_item() |
|
|
304 | to use add_object_to_socklist(). Update esrv_get_ob_from_count() to look |
|
|
305 | for objects in transport if player is in transport. |
|
|
306 | socket/loop.c: Remove checking of pl->map status, since draw_client_map() |
|
|
307 | does that, and we need to handle if the player is in a transport. |
|
|
308 | socket/request.c: Handle map drawing if player is in a transport. |
|
|
309 | MSW 2006-02-06 |
|
|
310 | |
|
|
311 | movement type changes. Add move_allow field to explicitly allow certain |
|
|
312 | movement types on spaces. Add suppport for using string names instead |
|
|
313 | of numeric values to specify the MOVE_ values. Add code so when saving |
|
|
314 | data out, use string names instead of numeric value. |
|
|
315 | --- |
|
|
316 | common/loader.l: Remove save_double(), as it isn't used by any code. |
|
|
317 | Add set_move() to set movement types from strings. |
|
|
318 | Add get_string_move_type, which takes integer movement type and |
|
|
319 | returns a string. Update load and save code to use these functions |
|
|
320 | respectively. |
|
|
321 | common/map.c: Change blocked_link() so that we only examine all the objects |
|
|
322 | on a space if there is something alive on the space or space is otherwise |
|
|
323 | blocked. There is no reason to examine all the objects on the space if |
|
|
324 | the object in question can move onto it. |
|
|
325 | Modify update_position() to use the move_allow field to clear bits |
|
|
326 | in the move_block field. |
|
|
327 | common/object.c: Add check in CAN_MERGE for move_allow. Add check for |
|
|
328 | move_allow in update_object to see if we should update the space or |
|
|
329 | not. |
|
|
330 | doc/Developers/objects: Update Movement code section to note use of using |
|
|
331 | strings to set movement types. Add note about move_allow. Section |
|
|
332 | about Transports added, but code isn't there yet. |
|
|
333 | include/object.h: Add move_allow to object structure. |
|
|
334 | MSW 2006-02-04 |
|
|
335 | |
|
|
336 | Fix attack messages containing random characters. |
|
|
337 | -- |
|
|
338 | server/attack.c: In attack_message() always initialize variables. |
|
|
339 | Andreas Kirschbaum 2006-02-03 |
|
|
340 | |
|
|
341 | server/c_misc.c: fix bug 1413239 Server crash with "who" command output |
|
|
342 | using null map names |
|
|
343 | Brendan Lally 2006-02-03 |
19 | |
344 | |
20 | include/newserver.h, server/login.c, socket/init.c, socket/loop.c: |
345 | include/newserver.h, server/login.c, socket/init.c, socket/loop.c: |
21 | drop any connection that fails to login successfully after |
346 | drop any connection that fails to login successfully after |
22 | MAX_PASSWORD_FAILURES attempts (defaults to 5) |
347 | MAX_PASSWORD_FAILURES attempts (defaults to 5) |
23 | doc/Developers/protocol: document properly the byte counts of item flags, |
348 | doc/Developers/protocol: document properly the byte counts of item flags, |