공증과 마치를 얼마나 올려야 하나? 공증이 중요한가? 마치가 중요한가?
둘의 딜링 메커니즘은 비슷 해서 항상 고민거리였죠
도움이 될진모르겠지만 분석을 해보도록하겠습니다. (수학을 잘모르시는분은 빨간글만보시길..)
1. 공증, 마치의 개념
공증 : 현재 데미지를 늘려줌 공격력증가10당 1%
ex) 공증100이면 데미지 10%증가
마치 : 데미지가 2배가 되는 확률 마법치명10당 확률1% (마치가 데미지를 올려주진않고 확률만올려줌)
ex) 마치100이면 데미지2배일 확률10%
2. 공증과 마치의 가치
만약에 기본데미지(공증0일때)가 100만이었을때 공격력증가가 100올라간다면 데미지는 10%증가합니다.
데미지가 1.1배되어서 110만이 되는것이죠
만약에 기본데미지(마치0일때)가 100만이었을때 마치가 100올라간다면 데미지의 기댓값은
1.1배가 되어서 110만입니다. (100만*0.9 + 200만*0.1 = 110만 이므로..)
데미지의 기댓값(평균값,누적데미지)으로만 봤을때 공증과 마치의 가치는 같습니다(공증1=마치1)
3. 공증과 마치가 둘다 있을 때
공증0마치0일때 기본데미지가 A
공증이 x이면 데미지는 A(1+x/1000)가 됩니다.
마치가 y이면 데미지(기댓값)은 A(1+y/1000)이 됩니다.
공증만 있거나 마치만 있는 경우는 거의 없으므로 공증과 마치가 둘다있는 경우가 중요합니다.
즉, 공증이 x 마치가 y인 경우는 데미지(기댓값)가 A(1+x/1000)(1+y/1000)입니다.
4. 공증 마치의 이상적 비율
공증과 마치의 합이 일정하다고 가정했을 때 가장 데미지의 기댓값이 쎈 비율을 찾아보겠습니다.
(예를들어, x+y=1000일 때 가장 데미지를 잘 뽑는 x와 y의 값을 구하는 것이 목표)
일단, x+y=n이라고 가정하겠습니다. (n은 2이상의 임의의 자연수입니다.)
3에서 봤던 데미지 기댓값 식을 다시 써보면 A(1+x/1000)(1+y/1000)입니다.
A는 기본 데미지 값이어서 공증 마치와 무관하므로 빼버리도록 하고 (1+x/1000)(1+y/1000)만 다루겠습니다.
z=(1+x/1000)(1+y/1000)라고하면 z의 최댓값을 구하는 것이 목표입니다.
z=1+x/1000+y/1000+xy/1000000
z=1+(x+y)/1000+xy/1000000=1+n/1000+xy/1000000
위의 식에서 1+n/1000인 부분은 n이 이미 정해진 값이므로 그냥 상수라고 볼 수 있습니다.
따라서 z의 크기는 xy의 값에 의해 정해집니다.
xy는 T=xy=x(n-x)=nx-x^2이므로 위로볼록한 2차함수 입니다.
즉, 최댓값이 존재한다는 말입니다.
T=nx-x^2을 x에 대해 미분하면 dT/dx = n-2x이고 미분값이 0이되는 순간이 최댓값입니다.
계산하면 n-2x = 0 이므로 x=n/2가 나오게 됩니다. x=n/2이면 x+y=n이므로 x=y=n/2입니다.
위의 계산결과, 결론은 공증과 마치 수치가 같을 때 데미지 기댓값이 최대라는 것입니다.
위의 결과로 예를 몇개 들어보겠습니다.
공증+마치 합이 1000일 때 데미지 최대가 나오는 비율은?
공증100마치900(공증900마치100)이면 1.1*1.9=2.09
공증300마치700(공증700마치300)이면 1.3*1.7=2.21
공증500마치500이면 1.5*1.5=2.25 -> 최대!
+응용
공증=마치가 될 수록 데미지 기댓값이 높다는 것을 알아봤습니다.
이 현상을 응용하면 공증과 마치 둘 중에 한쪽이 클 경우
큰쪽을 내리고 작은쪽을 올리면 기댓값이 더 커집니다.
예를들어서 현재 공증200 마치800에서 하나는 50올리고 하나는 50내릴때 어떤 것이 더 셀까요?
즉, 공증250마치750, 공증150마치850 (둘다 합은 1000)
둘중에 어떤 것이 더 데미지기댓값이 쎈지 확인해보면
1.25*1.75 > 1.15*1.85 이기 때문에 공증250마치750이 더 쎕니다.
굳이 계산을 하지 않아도 공증250마치750이 공증150마치850보다 수치 차이가 적기 때문에 공증과 마치가 같은 경향이 더 크므로 공증250마치750이 더쎈겁니다.
결론, 공증과 마치가 가까울수록 데미지기댓값높아짐 (공증=마치일때가 최대)
응용의 증명(이건 보실분만보세요)
x < y 일 때 (단, x+y=n)
z=(1+x/1000)(1+y/1000)
한 부분에는 a를 더하고 한 부분에는 a를 뺐을 때 어떤 z값이 더 클까? (a>0)
첫번째 경우) x+a, y-a
z = (1+(x+a)/1000)(1+(y-a)/1000)= 1+(x+y)/1000 + (xy-ax+ay-a^2)/1000000
1+(x+y)/1000+(xy-a^2)/1000000 부분은 상수이므로 k라고 둠
z = k + a(y-x)/1000000
두번째 경우) x-a, y+a
같은 방식으로
z = k + a(x-y)/1000000
x<y이므로 x-y<0이다. 따라서, 첫번째 z가 두번째 z보다 크다.
즉, 큰쪽을 내리고 작은쪽을 올리는 것이 데미지에 더 좋다.