--- deliantra/server/include/config.h 2006/02/03 07:12:48 1.1 +++ deliantra/server/include/config.h 2006/09/04 11:07:59 1.19 @@ -77,6 +77,18 @@ * ***********************************************************************/ +/* Use a very easy, non-challenging server? + * Defining the COZY_SERVER will make the server much less challenging: + * no stats loss on death, much less experience loss, and party members + * are treated by pet monsters as the owner itself when moving "through" them. + */ +#define COZY_SERVER 1 + +/* + * Make it impossible to pk outside the arena. + */ +#define PROHIBIT_PLAYERKILL 1 + /* Use balanced stat loss code? * This code is a little more merciful with repeated stat loss at lower * levels. Basically, the more stats you have lost, the less likely that @@ -109,16 +121,18 @@ */ /* GD */ -#define BALSL_LOSS_CHANCE_RATIO 4 -#define BALSL_NUMBER_LOSSES_RATIO 6 -#define BALSL_MAX_LOSS_RATIO 2 +#define BALSL_LOSS_CHANCE_RATIO 100 +#define BALSL_NUMBER_LOSSES_RATIO 100 +#define BALSL_MAX_LOSS_RATIO 100 /* Don't edit these values. They are configured in lib/settings. These are Simply the defaults. */ #define BALANCED_STAT_LOSS FALSE -#define USE_PERMANENT_EXPERIENCE FALSE +#define PERMANENT_EXPERIENCE_RATIO 25 +#define DEATH_PENALTY_RATIO 20 +#define DEATH_PENALTY_LEVEL 3 #define SET_TITLE TRUE #define SIMPLE_EXP TRUE #define SPELLPOINT_LEVEL_DEPEND TRUE @@ -139,6 +153,7 @@ #define ARMOR_WEIGHT_LINEAR TRUE #define ARMOR_SPEED_IMPROVEMENT 10 #define ARMOR_SPEED_LINEAR TRUE +#define CREATE_HOME_PORTALS FALSE /* you can edit the ones below */ @@ -199,8 +214,8 @@ * MSW 2001-05-28 */ -#define MAP_CLIENT_X 25 -#define MAP_CLIENT_Y 25 +#define MAP_CLIENT_X 31 +#define MAP_CLIENT_Y 31 /* * If you feel the game is too fast or too slow, change MAX_TIME. @@ -223,33 +238,23 @@ * mean slower performance and more memory. IF this is not defined, then * this feature is disabled. */ -/* #define PARTY_KILL_LOG 20 -*/ -/* Use permanent experience code? - * This code allows players to build up a small amount of 'permanent - * experience' which reduces the effect of large experience drains, such as - * death. This makes multiple frequent deaths less devastating, and also - * ensures that any character will make some gradual progress even if they - * die all of the time. - * A nice option if your keep dying due to massive client/server lags despite - * playing well... or you like to swim well outside of your depth. :) - * - * The PERM_EXP values adjust the behaviour of this option - if - * USE_PERMAMENT_EXPERIENCE if off, these values have no meaning. If it - * is on, the minimum ratio is the minimum amount of permanent exp relative - * to the total exp in the skill (ie, at a default of .25, if you had 100 - * experience, at least 25 of it would be permanent). The gain ratio - * is how much of experienced experience goes to the permanent value. - * This does not detract from total exp gain (ie, if you gained 100 exp, - * 100 would go to the skill total and 10 to the permanent value). - * the loss ratio is the maximum amount of experience that can be lost - * in any one hit - this is calculated as total exp - perm exp * loss ratio. +/* + * The PERM_EXP values adjust the behaviour of permenent experience. - if + * the setting permanent_experience_percentage is zero, these values have + * no meaning. The value in the settings file is the percentage of the + * experience that is permenent, the rest could be lost on death. When dying, + * the greatest amount of non-permenent exp it is possible to lose at one time + * is PERM_EXP_MAX_LOSS_RATIO - this is calculated as + * total exp - perm exp * loss ratio. The gain ratio is how much of experienced + * experience goes to the permanent value. This does not detract from total + * exp gain (ie, if you gained 100 exp, 100 would go to the skill total and + * 10 to the permanent value). * * A few thoughts on these default value (by MSW) * gain ratio is pretty much meaningless until exp has been lost, as until - * that poin, the minimum ratio will be used. + * that poin, the value in the settings file will be used. * It is also impossible for the exp to actually be reduced to the permanent * exp ratio - since the loss ratio is .5, it will just get closer and * closer. However, after about half a dozen hits, pretty much all the @@ -258,7 +263,6 @@ */ /* GD */ -#define PERM_EXP_MINIMUM_RATIO 0.25f #define PERM_EXP_GAIN_RATIO 0.10f #define PERM_EXP_MAX_LOSS_RATIO 0.50f @@ -411,9 +415,9 @@ */ /* How many ticks till maps are swapped out */ -#define MAP_MAXTIMEOUT 1000 +#define MAP_MAXTIMEOUT 300 /* At least that many ticks before swapout */ -#define MAP_MINTIMEOUT 500 +#define MAP_MINTIMEOUT 300 /* * MAP_MAXRESET is the maximum time a map can have before being reset. It @@ -431,7 +435,7 @@ /* Maximum time to reset. */ #define MAP_MAXRESET 7200 /* Default time to reset. */ -#define MAP_DEFAULTRESET 7200 +#define MAP_DEFAULTRESET 3600 /* * MAX_OBJECTS is no hard limit. If this limit is exceeded, crossfire @@ -447,7 +451,7 @@ * 25000 is about 8.5 MB */ -#define MAX_OBJECTS 100000 +#define MAX_OBJECTS 400000 /* * Max objects low water mark (lwm). If defined, the map swapping strategy @@ -604,12 +608,11 @@ #define BANISHFILE "banish_file" #define MAX_ERRORS 25 /* Bail out if more are received during tick */ -#define STARTMAX 500 /* How big array of objects to start with */ -#define OBJ_EXPAND 100 /* How big steps to use when expanding array */ +#define OBJ_EXPAND 5000 /* How big steps to use when expanding array */ #define HIGHSCORE_LENGTH 1000 /* How many entries there are room for */ -#define ARCHTABLE 5003 /* Used when hashing archetypes */ +#define ARCHTABLE 16384 /* Arch hashtable size */ #define MAXSTRING 20 #define COMMAND_HASH_SIZE 107 /* If you change this, delete all characters :) */ @@ -650,6 +653,7 @@ * SAVE_MODE is permissions for the files, SAVE_DIR_MODE is permission * for nay directories created. */ +/* IMPORTANT: there is a race during saving, where the umask is being applied */ #define SAVE_MODE 0660 #define SAVE_DIR_MODE 0770 @@ -669,7 +673,7 @@ * This option should now work (Crossfire 0.90.5) */ -/*#define SAVE_INTERVAL 300*/ +//#define SAVE_INTERVAL 60 /* * AUTOSAVE saves the player every AUTOSAVE ticks. A value of @@ -682,7 +686,7 @@ * saves pretty well spread out (in a fairly random fashion.) */ -#define AUTOSAVE 5000 +#define AUTOSAVE 1000 /* Often, emergency save fails because the memory corruption that caused * the crash has trashed the characters too. Define NO_EMERGENCY_SAVE @@ -701,7 +705,7 @@ /*#define BACKUP_SAVE_AT_HOME*/ /* RESET_LOCATION_TIME is the number of seconds that must elapse before - * we fill return the player to his savebed location. If this is zero, + * we will return the player to his savebed location. If this is zero, * this feature is disabled (player will resume where ever he was * when he last logged off). If this is set to less than two hours, * it will prevent players from camping out in treasure rooms.