RMVXA

계산식 문제 (해결)

by Vincent posted Oct 01, 2013
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄
Extra Form

제가 일반공격 계산식을 만들었는데 다음과 같습니다.


a.atk * (1 - b.def / (b.def + 100))


그런데 이 계산식을 적용하면, 몬스터 방어력으로 인한 데미지 감소가 안되고, 플레이어 공격력 액면그대로 들어갑니다.



이해를 돕기위해 예제를 하나 들겠습니다.



a.atk = 300 (플레이어의 공격력)


b.def = 80 (몬스터의 방어력)


이라고 가정하겠습니다.



그럼 플레이어의 공격력은 액면 그대로, 300의 피해량 을 갖고있습니다.


다음으로,


몬스터의 방어력은, 위 계산식대로 b.def / (b.def + 100) 를 통하여 0.4444..... 이라는 결과가 도출됩니다.

이는 피해감소(%) 로 나타내자면, 소수점 자르고 0.44 * 100 을 통하여, 44% 감소 라는 결론이 나옵니다.

+ 참고로 이 방어력 계산은 방어력이 아무리 높아도 점감식으로 적용되어, 절대로 숫자 1 이 될수 없습니다.


그리고.. 실질적인 데미지 감소를 위한 추가적인 식을 적용하여,


(1 - b.def / (b.def + 100)) 빨간부분 즉, 1 - 0.44 = 0.56 이라는 식을 만들어,


0.56 을, 플레이어의 공격력.. 즉, 300 에 곱해주면,


최종 피해량은 167 이 됩니다.


44% 감소된 56% 의 데미지 식 이 만들어집니다.








는 이론대로라면 이렇게 되야하는데, 왜 데미지 감소가 안될까요?


제가 뭔가 실수한걸까요?