diff options
Diffstat (limited to 'src/config')
-rw-r--r-- | src/config/classes/general.h | 5 | ||||
-rw-r--r-- | src/config/const.h | 13 | ||||
-rw-r--r-- | src/config/core.h | 13 |
3 files changed, 20 insertions, 11 deletions
diff --git a/src/config/classes/general.h b/src/config/classes/general.h index b3da4a475..b75c907e3 100644 --- a/src/config/classes/general.h +++ b/src/config/classes/general.h @@ -22,6 +22,11 @@ #define MAX_SPIRITBALL 15 /** +* Spirit Charm Limitation +**/ +#define MAX_SPIRITCHARM 10 + +/** * when enabled, reflect damage doesn't bypass devotion (and thus damage is passed to crusader) * uncomment to enable **/ diff --git a/src/config/const.h b/src/config/const.h index 2b5b180c4..e10d2ad2a 100644 --- a/src/config/const.h +++ b/src/config/const.h @@ -52,10 +52,14 @@ #define DEFTYPE_MAX CHAR_MAX #endif -/* ATCMD_FUNC(mobinfo) HIT and FLEE calculations */ +/* ATCMD_FUNC(mobinfo) HIT, FLEE, ATK, ATK2, MATK and MATK2 calculations */ #ifdef RENEWAL #define MOB_FLEE(mobdata) ( (mobdata)->lv + (mobdata)->status.agi + 100 ) #define MOB_HIT(mobdata) ( (mobdata)->lv + (mobdata)->status.dex + 150 ) + #define MOB_ATK1(mobdata) ( ((mobdata)->lv + (mobdata)->status.str) + (mobdata)->status.rhw.atk * 8 / 10 ) + #define MOB_ATK2(mobdata) ( ((mobdata)->lv + (mobdata)->status.str) + (mobdata)->status.rhw.atk * 12 / 10 ) + #define MOB_MATK1(mobdata)( ((mobdata)->lv + (mobdata)->status.int_) + (mobdata)->status.rhw.atk2 * 7 / 10 ) + #define MOB_MATK2(mobdata)( ((mobdata)->lv + (mobdata)->status.int_) + (mobdata)->status.rhw.atk2 * 13 / 10 ) #define RE_SKILL_REDUCTION() do { \ wd.damage = battle->calc_elefix(src, target, skill_id, skill_lv, battle->calc_cardfix(BF_WEAPON, src, target, nk, s_ele, s_ele_, wd.damage, 0, wd.flag), nk, n_ele, s_ele, s_ele_, false, flag.arrow); \ if( flag.lh ) \ @@ -69,17 +73,16 @@ /* Renewal's dmg level modifier, used as a macro for a easy way to turn off. */ #ifdef RENEWAL_LVDMG #define RE_LVL_DMOD(val) do { \ - if( status->get_lv(src) > 100 && (val) > 0 ) \ + if( (val) > 0 ) \ skillratio = skillratio * status->get_lv(src) / (val); \ } while(0) #define RE_LVL_MDMOD(val) do { \ - if( status->get_lv(src) > 100 && (val) > 0) \ + if ( (val) > 0 ) \ md.damage = md.damage * status->get_lv(src) / (val); \ } while(0) /* ranger traps special */ #define RE_LVL_TMDMOD() do { \ - if( status->get_lv(src) > 100 ) \ - md.damage = md.damage * 150 / 100 + md.damage * status->get_lv(src) / 100; \ + md.damage = md.damage * 150 / 100 + md.damage * status->get_lv(src) / 100; \ } while(0) #else #define RE_LVL_DMOD(val) diff --git a/src/config/core.h b/src/config/core.h index ac59563b5..da9296bda 100644 --- a/src/config/core.h +++ b/src/config/core.h @@ -35,15 +35,16 @@ //#define STATS_OPT_OUT /// Uncomment to enable the Cell Stack Limit mod. -/// It's only config is the battle_config cell_stack_limit. -/// Only chars affected are those defined in BL_CHAR (mobs and players currently) +/// It's only config is the battle_config custom_cell_stack_limit. +/// Only chars affected are those defined in BL_CHAR //#define CELL_NOSTACK /// Uncomment to enable circular area checks. -/// By default, all range checks in Aegis are of Square shapes, so a weapon range -/// - of 10 allows you to attack from anywhere within a 21x21 area. -/// Enabling this changes such checks to circular checks, which is more realistic, -/// - but is not the official behavior. +/// By default, most server-sided range checks in Aegis are of square shapes, so a monster +/// with a range of 4 can attack anything within a 9x9 area. +/// Client-sided range checks are, however, are always circular. +/// Enabling this changes all checks to circular checks, which is more realistic, +/// - but is not the official behaviour. //#define CIRCULAR_AREA //This is the distance at which @autoloot works, |