기본 데미지 계산:


dmg = (1 + skillLevelEmpower) * attackFactor * (atkStat + atkStat  * attackBoostHPRate * (1.0 - fAtkHPRate))

attackFactor = 기본 스킬계수. 내가 전에 올린 계수파일 참고. PVP 계수가 따로 있는 경우엔 PVP 계수를 참고한다.

skillLevelEmpower  = 스킬 데미지 증가량 %. 스킬 레벨에 표기된거 참고

atkStat = 공격력 증가 버프나 여러가지 다 적용된 공격력

fAtkHPRate = 현재 공격자 체력

attackBoostRate의 예시는 알렉스 패시브에 붙은, 감소된 체력에 비례하여 공격력 최대 50% 증가.


데미지 조정식 (GetDamageAdjustFactor)


공격자 시점 조정식

AtkAdjustment = (1 - RoleTypeDamageReduceRate)(RoleTypeAdjustment * RoleTypeDamageRate) + RangedAttackBonusDamageRate + UnitTypeBonusDamageRate + UnitSubTypeBonusDamageRate + RoleBonusDamageRate + MoveTypeBonusDamageRate  


RoleTypeAdjustment = 상성피해 데미지. 상성에 따라 0.3

RoleTypeDamageReduceRate = 방어자 시점에서 상성 추가 피해 감소율

RoleTypeDamageRate = 공격자 시점에서 상성 추가 피해 증가율

RangedAttackBonusDamageRate  = 근거리 피해 증가율 혹은 원거리 피해 증가율

UnitTypeBonusDamageRate = 유닛의 타입에 대한 추가데미지 (예: 오르카의 침식체 추가 데미지%)

UnitSubTypeBonusDamageRate = 유닛의 보조타입에 대한 추가데미지 (예: 각성킹 같은 경우는 메인 타입이 카운터이지만 보조타입이 리플레이서. 이 경우 리플레이서에 대한 추가데미지가 있는지 여부를 확인)

RoleBonusDamageRate = 특정 클래스에 대한 추가데미지 (스트라이커 타입 +% 등)

MoveTypeBonusDamageRate = 공중 혹은 지상 피해 추가데미지


방어자 시점 조정식

DefAdjustment = RoleTypeReduceRate + RangeTypeReduceRate+ UnitTypeDamageReduceRate + UnitSubTypeDamageReduceRate + RoleSpecificReduceRate + MoveTypeReduceRate


RoleTypeReduceRate = 상성 감소 데미지. 상성에 따라 0.3

RangeTypeReduceRate = 근/원거리 피해 감소율

UnitTypeDamageReduceRate = 유닛의 타입에 대한 감소데미지 (예: 이유리의 카운터 피해 감소)

UnitSubTypeDamageReduceRate = 유닛의 보조타입에 대한 감소데미지 (위 참고)

RoleSpecificReduceRate = 특정 클래스에 대한 감소데미지%

MoveTypeReduceRate = 공중 혹은 지상 피해 감소%


최종 조정식

Adjustment = 1.0 + AtkAdjustment - (AtkAdjustment  * AddDamageReduceRate) - (DefAdjustment  - (DefAdjustment * ReduceDamagePenetrationRate))


AddDamageReduceRate = 추가 피해량 감소율 (이 기믹이 있는 캐릭이 있는지 모르곘음)

ReduceDamagePenetrationRate = 피해량 감소 관통율 (이 기믹이 있는 캐릭은 없음)


기본 방어력 계산


Def = (defStat + defStat * defBoostHPRate * (1.0 - fDefHPRate)) * (1.0 - defPenetration)

defStat = 버프 다 적용된 최종 방어력

defBoostHPRate = HP 감소 비례 방어력 증가%

fDefHPRate = 현재 방어자 체력비율

defPenetration = 공격자 방어 관통률


방어력 적용 공식

DefApplied = 1.0 - Def / (Def + 1000)


데미지 감소 + 무시 공식

DamageReduced = 1.0 - (DamageReduceRate - DamageReduceRate * DemageReducePenetrationRate)


최종 데미지 조정률:

FinalAdjustment = DefApplied * DamageReduced * Adjustment

(다만,  최종 조정률은 0.2 미만이 되지 않음)


최종 데미지 = dmg * FinalAdjustment 


이제 최소/최대데미지, 피해제한, 회피율 치명피해 저항 알아보는중