1 | /* |
1 | /* |
2 | * This file is part of Deliantra, the Roguelike Realtime MMORPG. |
2 | * This file is part of Deliantra, the Roguelike Realtime MMORPG. |
3 | * |
3 | * |
4 | * Copyright (©) 2005,2006,2007,2008 Marc Alexander Lehmann / Robin Redeker / the Deliantra team |
4 | * Copyright (©) 2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016 Marc Alexander Lehmann / Robin Redeker / the Deliantra team |
5 | * Copyright (©) 2002,2007 Mark Wedel & Crossfire Development Team |
5 | * Copyright (©) 2002 Mark Wedel & Crossfire Development Team |
6 | * Copyright (©) 1992,2007 Frank Tore Johansen |
6 | * Copyright (©) 1992 Frank Tore Johansen |
7 | * |
7 | * |
8 | * Deliantra is free software: you can redistribute it and/or modify it under |
8 | * Deliantra is free software: you can redistribute it and/or modify it under |
9 | * the terms of the Affero GNU General Public License as published by the |
9 | * the terms of the Affero GNU General Public License as published by the |
10 | * Free Software Foundation, either version 3 of the License, or (at your |
10 | * Free Software Foundation, either version 3 of the License, or (at your |
11 | * option) any later version. |
11 | * option) any later version. |
12 | * |
12 | * |
13 | * This program is distributed in the hope that it will be useful, |
13 | * This program is distributed in the hope that it will be useful, |
14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
16 | * GNU General Public License for more details. |
16 | * GNU General Public License for more details. |
17 | * |
17 | * |
18 | * You should have received a copy of the Affero GNU General Public License |
18 | * You should have received a copy of the Affero GNU General Public License |
19 | * and the GNU General Public License along with this program. If not, see |
19 | * and the GNU General Public License along with this program. If not, see |
20 | * <http://www.gnu.org/licenses/>. |
20 | * <http://www.gnu.org/licenses/>. |
21 | * |
21 | * |
22 | * The authors can be reached via e-mail to <support@deliantra.net> |
22 | * The authors can be reached via e-mail to <support@deliantra.net> |
23 | */ |
23 | */ |
24 | |
24 | |
25 | /* This file contains various #defines that select various options. |
25 | /* This file contains various #defines that select various options. |
26 | * Some may not be desirable, and some just may not work. |
26 | * Some may not be desirable, and some just may not work. |
… | |
… | |
33 | * |
33 | * |
34 | * prepare_weapon, improve_*: Allow characters to enchant their own |
34 | * prepare_weapon, improve_*: Allow characters to enchant their own |
35 | * weapons |
35 | * weapons |
36 | * ench_armour: Allow characters to enchant their armor. |
36 | * ench_armour: Allow characters to enchant their armor. |
37 | * |
37 | * |
38 | * In theory, most of the values here should just be defaults, and |
38 | * In theory, most of the values here should just be defaults, and |
39 | * everything here should just be selectable by different run time |
39 | * everything here should just be selectable by different run time |
40 | * flags However, for some things, that would just be too messy. |
40 | * flags However, for some things, that would just be too messy. |
41 | */ |
41 | */ |
42 | |
42 | |
43 | /* There are 4 main sections to this file- |
43 | /* There are 4 main sections to this file- |
… | |
… | |
93 | * The BALSL_.. values control this behaviour. |
93 | * The BALSL_.. values control this behaviour. |
94 | * BALSL_NUMBER_LOSSES_RATIO determines the number of stats to lose. |
94 | * BALSL_NUMBER_LOSSES_RATIO determines the number of stats to lose. |
95 | * the character level is divided by that value, and that is how many |
95 | * the character level is divided by that value, and that is how many |
96 | * stats are lost. |
96 | * stats are lost. |
97 | * |
97 | * |
98 | * BALSL_MAX_LOSS_RATIO puts the upper limit on depletion of a stat - |
98 | * BALSL_MAX_LOSS_RATIO puts the upper limit on depletion of a stat - |
99 | * basically, level/max_loss_ratio is the most a stat can be depleted. |
99 | * basically, level/max_loss_ratio is the most a stat can be depleted. |
100 | * |
100 | * |
101 | * BALSL_LOSS_CHANCE_RATIO controls how likely it is a stat is depleted. |
101 | * BALSL_LOSS_CHANCE_RATIO controls how likely it is a stat is depleted. |
102 | * The chance not to lose a stat is |
102 | * The chance not to lose a stat is |
103 | * depleteness^2 / (depletedness^2+ level/ratio). |
103 | * depleteness^2 / (depletedness^2+ level/ratio). |
104 | * ie, if the stats current depleted value is 2 and the character is level |
104 | * ie, if the stats current depleted value is 2 and the character is level |
105 | * 15, the chance not to lose the stat is 4/(4+3) or 4/7. The higher the |
105 | * 15, the chance not to lose the stat is 4/(4+3) or 4/7. The higher the |
106 | * level, the more likely it is a stat can get really depleted, but |
106 | * level, the more likely it is a stat can get really depleted, but |
107 | * this gets more offset as the stat gets more depleted. |
107 | * this gets more offset as the stat gets more depleted. |
108 | * |
108 | * |
109 | */ |
109 | */ |
110 | /* GD */ |
110 | /* GD */ |
111 | |
111 | |
112 | #define BALSL_LOSS_CHANCE_RATIO 100 |
112 | #define BALSL_LOSS_CHANCE_RATIO 100 |
113 | #define BALSL_NUMBER_LOSSES_RATIO 100 |
113 | #define BALSL_NUMBER_LOSSES_RATIO 100 |
… | |
… | |
115 | |
115 | |
116 | |
116 | |
117 | /* Don't edit these values. They are configured in lib/settings. These are |
117 | /* Don't edit these values. They are configured in lib/settings. These are |
118 | Simply the defaults. */ |
118 | Simply the defaults. */ |
119 | |
119 | |
120 | #define BALANCED_STAT_LOSS FALSE |
120 | #define BALANCED_STAT_LOSS TRUE |
121 | #define PERMANENT_EXPERIENCE_RATIO 25 |
121 | #define PERMANENT_EXPERIENCE_RATIO 30 |
122 | #define DEATH_PENALTY_RATIO 20 |
122 | #define DEATH_PENALTY_RATIO 10 |
123 | #define DEATH_PENALTY_LEVEL 3 |
123 | #define DEATH_PENALTY_LEVEL 2 |
124 | #define SET_TITLE TRUE |
124 | #define SET_TITLE TRUE |
125 | #define SIMPLE_EXP TRUE |
125 | #define SIMPLE_EXP TRUE |
126 | #define SPELLPOINT_LEVEL_DEPEND TRUE |
126 | #define SPELLPOINT_LEVEL_DEPEND TRUE |
127 | #define SPELL_ENCUMBRANCE TRUE |
127 | #define SPELL_ENCUMBRANCE FALSE |
128 | #define SPELL_FAILURE_EFFECTS FALSE |
128 | #define SPELL_FAILURE_EFFECTS FALSE |
129 | #define RESURRECTION FALSE |
129 | #define RESURRECTION FALSE |
130 | #define SEARCH_ITEMS TRUE |
130 | #define SEARCH_ITEMS TRUE |
131 | #define NOT_PERMADETH TRUE |
131 | #define NOT_PERMADETH TRUE |
132 | #define EXPLORE_MODE FALSE |
|
|
133 | #define STAT_LOSS_ON_DEATH FALSE |
132 | #define STAT_LOSS_ON_DEATH FALSE |
134 | #define PK_LUCK_PENALTY 1 |
133 | #define PK_LUCK_PENALTY 0 |
135 | #define SET_FRIENDLY_FIRE 5 |
134 | #define SET_FRIENDLY_FIRE 0 |
136 | #define ARMOR_MAX_ENCHANT 5 |
135 | #define ARMOR_MAX_ENCHANT 5 |
137 | #define ARMOR_WEIGHT_REDUCTION 10 |
136 | #define ARMOR_WEIGHT_REDUCTION 10 |
138 | #define ARMOR_WEIGHT_LINEAR TRUE |
137 | #define ARMOR_WEIGHT_LINEAR TRUE |
139 | #define ARMOR_SPEED_IMPROVEMENT 10 |
138 | #define ARMOR_SPEED_IMPROVEMENT 10 |
140 | #define ARMOR_SPEED_LINEAR TRUE |
139 | #define ARMOR_SPEED_LINEAR TRUE |
… | |
… | |
216 | */ |
215 | */ |
217 | #define PARTY_KILL_LOG 40 |
216 | #define PARTY_KILL_LOG 40 |
218 | |
217 | |
219 | /* |
218 | /* |
220 | * The PERM_EXP values adjust the behaviour of permenent experience. - if |
219 | * The PERM_EXP values adjust the behaviour of permenent experience. - if |
221 | * the setting permanent_experience_percentage is zero, these values have |
220 | * the setting permanent_experience_percentage is zero, these values have |
222 | * no meaning. The value in the settings file is the percentage of the |
221 | * no meaning. The value in the settings file is the percentage of the |
223 | * experience that is permenent, the rest could be lost on death. When dying, |
222 | * experience that is permenent, the rest could be lost on death. When dying, |
224 | * the greatest amount of non-permenent exp it is possible to lose at one time |
223 | * the greatest amount of non-permenent exp it is possible to lose at one time |
225 | * is PERM_EXP_MAX_LOSS_RATIO - this is calculated as |
224 | * is PERM_EXP_MAX_LOSS_RATIO - this is calculated as |
226 | * total exp - perm exp * loss ratio. The gain ratio is how much of experienced |
225 | * total exp - perm exp * loss ratio. The gain ratio is how much of experienced |
227 | * experience goes to the permanent value. This does not detract from total |
226 | * experience goes to the permanent value. This does not detract from total |
228 | * exp gain (ie, if you gained 100 exp, 100 would go to the skill total and |
227 | * exp gain (ie, if you gained 100 exp, 100 would go to the skill total and |
229 | * 10 to the permanent value). |
228 | * 10 to the permanent value). |
230 | * |
229 | * |
231 | * A few thoughts on these default value (by MSW) |
230 | * A few thoughts on these default value (by MSW) |
232 | * gain ratio is pretty much meaningless until exp has been lost, as until |
231 | * gain ratio is pretty much meaningless until exp has been lost, as until |
233 | * that poin, the value in the settings file will be used. |
232 | * that poin, the value in the settings file will be used. |
234 | * It is also impossible for the exp to actually be reduced to the permanent |
233 | * It is also impossible for the exp to actually be reduced to the permanent |
… | |
… | |
249 | * do not change gameplay as percieved by players much. Some options |
248 | * do not change gameplay as percieved by players much. Some options |
250 | * may affect memory consumption however. |
249 | * may affect memory consumption however. |
251 | * |
250 | * |
252 | * Values: |
251 | * Values: |
253 | * |
252 | * |
254 | * CSPORT - port to use for new client/server |
|
|
255 | * DMFILE - file with dm/wizard access lists |
253 | * DMFILE - file with dm/wizard access lists |
256 | * LOGFILE - where to log if using -daemon option |
254 | * LOGFILE - where to log if using -daemon option |
257 | * MAP_ - various map timeout and swapping parameters |
255 | * MAP_ - various map timeout and swapping parameters |
258 | * MAX_OBJECTS - how many objects to keep in memory. |
256 | * MAX_OBJECTS - how many objects to keep in memory. |
259 | * MAX_OBJECTS_LWM - only swap maps out if below that value |
257 | * MAX_OBJECTS_LWM - only swap maps out if below that value |
… | |
… | |
264 | * TMPDIR - directory to use for temp files |
262 | * TMPDIR - directory to use for temp files |
265 | * UNIQUE_DIR - directory to put unique item files into |
263 | * UNIQUE_DIR - directory to put unique item files into |
266 | *********************************************************************** |
264 | *********************************************************************** |
267 | */ |
265 | */ |
268 | |
266 | |
269 | /* CSPORT is the port used for the new client/server code. Change |
|
|
270 | * if desired. Only of relevance if ERIC_SERVER is set above |
|
|
271 | */ |
|
|
272 | #define CSPORT 13327 /* old port + 1 */ |
|
|
273 | |
|
|
274 | /* |
267 | /* |
275 | * DMFILE |
268 | * DMFILE |
276 | * A file containing valid names that can be dm, one on each line. See |
269 | * A file containing valid names that can be dm, one on each line. See |
277 | * example dm_file for syntax help. |
270 | * example dm_file for syntax help. |
278 | */ |
271 | */ |
… | |
… | |
308 | * storing backlogged messages for the client. This is not operating system |
301 | * storing backlogged messages for the client. This is not operating system |
309 | * buffers or the like. This amount is used per connection (client). |
302 | * buffers or the like. This amount is used per connection (client). |
310 | * This buffer is in addition to OS buffers, so it may not need to be very |
303 | * This buffer is in addition to OS buffers, so it may not need to be very |
311 | * large. When the OS buffer and this buffer is exhausted, the server |
304 | * large. When the OS buffer and this buffer is exhausted, the server |
312 | * will drop the client connection for falling too far behind. So if |
305 | * will drop the client connection for falling too far behind. So if |
313 | * you have very slow client connections, a larger value may be |
306 | * you have very slow client connections, a larger value may be |
314 | * warranted. |
307 | * warranted. |
315 | */ |
308 | */ |
316 | #define SOCKETBUFSIZE 256*1024 |
309 | #define SOCKETBUFSIZE 256*1024 |
317 | |
310 | |
318 | /* |
311 | /* |
319 | * Your tmp-directory should be large enough to hold the uncompressed |
312 | * Your tmp-directory should be large enough to hold the uncompressed |
320 | * map-files for all who are playing. Local to 'lib' directory. |
313 | * map-files for all who are playing. Local to 'lib' directory. |
321 | */ |
314 | */ |
322 | #define TMPDIR "tmp" |
315 | #define TMPDIR "tmp" |
323 | |
316 | |
324 | /* Directory to use for unique items. This is placed into the 'lib' |
317 | /* Directory to use for unique items. This is placed into the 'lib' |
325 | * directory. Changing this will cause any old unique items file |
318 | * directory. Changing this will cause any old unique items file |
326 | * not to be used. |
319 | * not to be used. |
327 | */ |
320 | */ |
328 | #define UNIQUE_DIR "unique-items" |
321 | #define UNIQUE_DIR "unique-items" |
329 | |
322 | |
330 | /* |
323 | /* |
331 | * These defines tells where, relative to LIBDIR, the maps, the map-index, |
324 | * These defines tells where, relative to LIBDIR, the maps, the map-index, |
332 | * archetypes highscore and treaures files and directories can be found. |
325 | * archetypes highscore and treaures files and directories can be found. |
333 | */ |
326 | */ |
334 | |
|
|
335 | #define MAPDIR "maps" |
327 | #define MAPDIR "maps" |
336 | #define TEMPLATE_DIR "template-maps" |
|
|
337 | #define ARCHETYPES "archetypes" |
|
|
338 | #define REGIONS "regions" |
|
|
339 | #define HIGHSCORE "highscore" |
|
|
340 | #define TREASURES "treasures" |
|
|
341 | |
|
|
342 | #define HIGHSCORE_LENGTH 1000 /* How many entries there are room for */ |
|
|
343 | |
328 | |
344 | #define MAXSTRING 20 |
329 | #define MAXSTRING 20 |
345 | |
330 | |
346 | #define COMMAND_HASH_SIZE 107 /* If you change this, delete all characters :) */ |
331 | #define COMMAND_HASH_SIZE 107 /* If you change this, delete all characters :) */ |
347 | |
332 | |