BINARY_SCALE = 1024 DECIMAL_SCALE = 10000 FRAME_PER_SECOND = 16 LEVEL = 120 LEVEL_SCALE = 450 LEVEL_CONSTANT = 45750 LEVEL_REDUCTION = 0.05 DOT_DAMAGE_SCALE = 12 PHYSICAL_DAMAGE_SCALE = 10 MAGICAL_DAMAGE_SCALE = 12 MAX_GCD_GROUP = 10 CRITICAL_STRIKE_SCALE = 9.530 * (LEVEL_SCALE * LEVEL - LEVEL_CONSTANT) CRITICAL_POWER_SCALE = 3.335 * (LEVEL_SCALE * LEVEL - LEVEL_CONSTANT) OVERCOME_SCALE = 9.530 * (LEVEL_SCALE * LEVEL - LEVEL_CONSTANT) HASTE_SCALE = 11.695 * (LEVEL_SCALE * LEVEL - LEVEL_CONSTANT) STRAIN_SCALE = 9.189 * (LEVEL_SCALE * LEVEL - LEVEL_CONSTANT) SURPLUS_SCALE = 13.192 SHIELD_SCALE = 5.091 SHIELD_BASE_MAP = { 124: 27550, 123: 26317, 122: 15528, 121: 11073 } MAJOR_BASE = 41 BASE_CRITICAL_POWER = 1.75 AGILITY_TO_CRITICAL_STRIKE = 655 / BINARY_SCALE STRENGTH_TO_ATTACK_POWER = 153 / BINARY_SCALE STRENGTH_TO_OVERCOME = 307 / BINARY_SCALE SPIRIT_TO_CRITICAL_STRIKE = 655 / BINARY_SCALE SPUNK_TO_ATTACK_POWER = 184 / BINARY_SCALE SPUNK_TO_OVERCOME = 307 / BINARY_SCALE DELTA_SCALE = 1 MAJOR_DELTA = 198 PHYSICAL_DELTA = 398 MAGICAL_DELTA = 475 MINOR_DELTA = 883 WEAPON_DELTA = 597 def PHYSICAL_ATTACK_POWER_COF(cof): return cof / FRAME_PER_SECOND / PHYSICAL_DAMAGE_SCALE def PHYSICAL_DOT_ATTACK_POWER_COF(cof, interval): return PHYSICAL_ATTACK_POWER_COF(cof * interval / FRAME_PER_SECOND / DOT_DAMAGE_SCALE) def MAGICAL_ATTACK_POWER_COF(cof): return cof / FRAME_PER_SECOND / MAGICAL_DAMAGE_SCALE def MAGICAL_DOT_ATTACK_POWER_COF(cof, interval): return MAGICAL_ATTACK_POWER_COF(cof * interval / FRAME_PER_SECOND / DOT_DAMAGE_SCALE) def WEAPON_DAMAGE_COF(cof): return cof / BINARY_SCALE