참고하실 분 있으시면 참고하셔도 될듯요.
어차피 저도 FFT 대미지계산식 참고한거고.
액터 파라미터 (ㅁ : 스테이터스 표시 / ㅇ : 스테이터스 비표시)
ㅁ HP : Hit Points 체력. 999. (actor.maxhp)
장비로 능력추가 有
ㅁ TP : Technical Points. MP대용. 999. (actor.maxmp)
장비로 능력추가 有
ㅁ PAT : 물리공격력. Physical Attack power. 50 (actor.atk)
장비로 능력추가 無
ㅁ MAT : 마법공격력. Magical Attack power. 50 (actor.spi)
장비로 능력추가 無
ㅁ PDF : 물리방어력. Physical Defence. 50 (actor.def)
장비로 능력추가 無
ㅁ MDF : 마법방어력. Magical Defence. 50 ($game_actor[actor.id + 10]. maxhp)
장비로 능력추가 無
ㅁ AGI : 민첩성. Agility. 50 (actor.agi)
장비로 능력추가 有
ㅁ LUK : 행운. Luck. 50. ($game_actor[actor.id + 10].maxmp)
장비로 능력추가 有 (HP, TP증가시와 함께 추가할 것)
ㅇ WP : 무기공격력. Weapon Power. 각무기의존. 값을 $game_actor[actor.id + 10].atk에 삽입. 최저치 1.
장비의 능력치 중에서는 공격력.
ㅇ APD : 장비물리방어력. Armor Physical Defence. 각방구의존. 값을 $game_actor[actor.id + 10].def에 삽입. 최저치 1.
장비의 능력치 중에서는 방어력.
ㅇ AMD : 장비마법방어력. Armor Masical Defence. 각방구의존. 값을 $game_actor[actor.id + 10].spi에 삽입. 최저치 1.
장비의 능력치 중에서는 HP, TP증가시와 함께 추가할 것.
ㅇ POS : 내부치로만 존재. 1 ~ 2 (전열1, 후열2)
적 파라미터
ㅁ MDF : 마법방어력. $game_enemy[enemy.id + 10].maxhp
ㅁ LUK : 행운. $game_enemy[enemy.id + 10].maxmp
ㅁ WP : 무기공격력. $game_enemy[enemy.id + 10].atk
ㅁ APD : 장비물리방어력. $game_enemy[enemy.id + 10].def
ㅁ AMD : 장비마법방어력. $game_enemy[enemy.id + 10].spi
ㅁ Level : 레벨. $game_enemy[enemy.id + 10].eva
ㅁ POS : 내부치로만 존재. 2고정.
ㅁ TEC : 기술치. $game_enemy[enemy.id + 10].agi
ㅁ FHR : 최종명중률. enemy.hit + enemy.tec
ㅁ FER : 최종회피율. enemy.eva + enemy.agi
대미지계산식
ㅁ 물리판정 : phsycal_attack, atk_f > spi_f
ㅁ 마법판정 : unless phsycal_attack, spi_f > atk_f
ㅁ 통상공격 대미지계산식
공격식 계산 : 물리공격력 * 무기공격력
방어식 계산 : 물리방어력 * 장비물리방어력 / 4
: (attacker.atk * attacker.wp) - (self.def * self.apd / 4)
ㅁ 물리어빌리티 대미지계산식 (atk_f = 100)
공격식 계산 : 물리공격력 * 무기공격력 * 스킬위력 / 100
방어식 계산 : 물리방어력 * 장비물리방어력 / 4
공격스킬 : (user.atk * user.wp * (obj.damage / 100)) - (self.def * self.apd / 4)
회복스킬 : (user.atk * user.wp * (obj.damage/ 100))(A) + (A * (50 - self.tec))
ㅁ 크리티컬 판정
attacker.cri + attacker.luk / 4
ㅁ 크리티컬 대미지계산식 (완전방어무시)
(attacker.atk * attacker.wp)
ㅁ 방어무시 물리대미지계산식
(attacker.atk * attacker.wp) - (self.def * self.ad / 10)
ㅁ 마법어빌리티 대미지계산식 (spi_f = 100)
공격식 계산 : 마법공격력 * 스킬위력
방어식 계산 : 마법방어력 * 장비마법방어력 / 4
공격마법 : (user.spi * obj.damage) - (self.mdf * self.amd / 4)
회복마법 : (user.spi * obj.damage)(A) + (A * (100 - self.mdf))
ㅁ 통상공격 명중률계산식 = 기본명중률 (attacker.hit)
ㅁ 물리어빌리티 명중률계산식 = 기본명중률 (user.hit)
ㅁ 마법어빌리티 명중률계산식 = 어빌리티명중률 (obj.hit)
ㅁ 통상공격 회피율계산식 = 기본회피율 (self.eva)
ㅁ 물리어빌리티 회피율계산식 = 기본회피율 (self.eva)
ㅁ 마법어빌리티 회피율계산식 = 기본회피율 (self.eva)
완전회피 : rand(400) < self.luk