서머너 고창이 너무 답답해서 시전시간을 계산해봤는데, 매우 이상한 로직이 있습니다.

의문을 가진 부분은 아래에서 말씀드리도록 하고,
일단 인게임내에서 표시되는 스킬의 사용 시간 표시가 정확한지에 대해
프레임 단위로 분석을 해보기로 하였습니다.

프레임은 다음과 같이 측정했습니다.

"고대의 창 시전 범위가 없어지는 순간부터, 캐스팅 바에 불이 들어오는 순간까지"



시전 범위가 없어진다는 것은 말 그대로 스킬 시전에 의해 범위를 미리 보여주고 있던 범위장판이 없어진다는 소리고
캐스팅 바에 불이 들어온다는 것은 이것처럼 노란색 테두리가 생기는 순간을 말합니다.



먼저 모든 신속 장신구와 룬을 해제한 상황입니다.



150프레임입니다.
초당 60프레임이기에 2.5초라는 것을 계산할 수 있고, 이는 인게임 상의 2.5초 캐스팅 표시와 동일합니다.


다음은 룬만 해제한 상황입니다.

122프레임 입니다.
1초에 60프레임이기에 총 2초 하고도 2프레임이지만, 2프레임은 1/30로써 매우 미미한 수치이기에
화면에 표시된 2.0초와 같다고 볼 수 있습니다.


다음은 모든 신속 장신구와 전설 질풍룬을 착용한 상태입니다.



108프레임입니다.
초당 60프레임이므로 1초 + 48프레임이고, 48/60 = 0.8이므로 총 1.8초라는 수치적 계산이 나오고
이는 인게임상의 1.8초 표시와 동일합니다.


여기까지 보면, 인게임상의 캐스팅(혹은 차지, 홀딩 등)시간은 표시와 동일하다고 볼 수 있습니다.
그런데 여기서 왜 의문을 가졌냐?



제 신속수치가 정확하게 나누어 떨어지기 힘든 공격 속도를 갖고 있었기 때문입니다.
만약 공격 속도가 25% 증가한다거나, 최소 22.5% 등 소숫점 한 자리였으면 그냥 넘겼을 수도 있는데
23.19%라는 애매한 수치임에도 불구하고 인게임에서 캐스팅 시간이 소숫점 한 자리로 딱 떨어지는 것에 의문을 가졌습니다.

그래서 수치적인 계산과 비교해보기로 했습니다.


먼저 첫 번째, 모든 룬과 신속 장신구를 해제한 상황은 기존 스킬이 가지고 있던 캐스팅 시간을 그대로 가기에 제외했습니다.

두 번째, 신속 장비만 착용한 상황입니다.

공격 속도가 23.19% 증가했으므로, 고대의 창 시전시간인 2.5초에 76.81%를 곱해주도록 하겠습니다.
2.5 * 0.7681 = 1.92025

무언가 이상합니다.
분명 우리는 아까 프레임 단위로 측정을 했을 때, 2초가 나온 것을 알 수 있었는데
수식 상으로는 1.92초가 나옵니다.

일단 넘겨보도록 하겠습니다.

세 번째, 신속 장비와 룬을 착용한 상태입니다.
사실 실험의 첫 시작은 신속 장비와 룬이 합연산인지 곱연산인지를 계산하기 위해 시작했었습니다.

전설 질풍 룬은 공격 속도를 14% 올려주기에, 캐스팅 시간에 86%를 곱해주면 감소된 시간이 나옵니다.

좀 전에 1.92025초가 나왔으므로 86%를 곱해주면
1.92025 * 0.86 = 1.651415 가 나옵니다.
아까 나왔던 1.8초랑은 더더욱 거리가 멀어졌습니다.

만약 합연산으로 계산한다고 하여도, 
2.5 * (1 - 0.2319 - 0.14) = 1.57로 더더욱 동떨어진 결과가 나옵니다.


그래서 두 번째 실험으로 돌아가봤습니다.
1.92초와 2초의 간극을 좁힐 수 있는 가장 간단한 방법은 올림 또는 반올림입니다.
소수점 첫째 자리에서 올림이나 반올림을 한다고 가정해보겠습니다.
그럼 2초가 되므로 이 상황에선 맞는 가설임을 알 수 있습니다.

하지만 세 번째 실험의 경우, 1.8초와 1.65초는 반올림으로 메꿔질 수 없는 수치입니다.
또한 소숫점 첫째 자리에서 올림이나 반올림을 할 경우 2초가 되므로, 소수점 첫째 자리에서 이루어지는 연산은 아닌 것 같습니다.

그래서 소수점 둘째 자리에서 올림을 한다고 가정해보았습니다.
그랬더니 1.92초는 2초가 되고, 1.65초는 1.7초가 되어 아까보다 나은 결과를 가져왔으나, 아직도 세 번째 결과에서는 만족스러운 유사값이 나오지 않고 있습니다.

그러다가 생각해보았습니다.

"만약, 신속(or 질풍)이 적용되고나서 올림을 한 후에, 나머지 수치를 적용하고 다시 올림을 하는 상황이라면?"

제 생각에는 이 가정이 맞는 것 같습니다.

계산해보겠습니다.

먼저 신속만 적용되었을 경우 1.92025초였으므로, 소수 둘째 자리에서 올림하면 2초가 나옵니다.
그 후에 2초에다가 질풍 룬을 적용할 경우,
2 * 0.86 = 1.72초가 나오고, 이것을 다시 소수 둘째자리에서 올림할 경우 1.8초가 나옵니다.


????????????

너무 정확한 수치가 나왔습니다.

신속과 질풍 순서를 바꿔서 계산해보겠습니다.

2.5초에 질풍 룬 공속 14%를 적용하면
2.5 * 0.86 = 2.15초 이고, 소수 둘째 자리에서 올림하면 2.2초 입니다.
그 후에 신속으로 적용되는 공속 23.19%를 적용하면
2.2 * 0.7681 = 1.68982, 소수 둘째 자리에서 올림하면 1.7초입니다.
이는 1.8초와 거리가 있으므로 이 순서로 적용되는 것은 아니라고 추측합니다.

합연산일경우 1.57과 1.8초는 어떤 수치를 더하는 것 외에는 유사하게 좁힐 방법이 없으므로 합연산도 아니라고 생각합니다.


따라서 제가 내린 결론은 다음과 같습니다.

1. 공격속도의 적용 순서는 신속 -> 룬 이다.
2. 신속이나 룬이 적용되어 수치상으로 나온 시간은, 소수 둘째 자리에서 올림을 하여 인게임에서 실제 적용이 된다.
3. 신속과 룬이 둘 다 적용될 경우, 신속 적용 후에 반올림을 한 번 하고, 그 반올림한 수치에 룬을 적용하고 다시 반올림을 한다.


근데 이게 왜 문제가 되느냐.

서머너의 고대의 창 같이 캐스팅이 긴 시간은 0.1초가 매우 소중합니다.
보스 패턴이 시전 되느냐 마냐, 보스가 이동 하느냐 마냐의 갈림길이기 때문에 어떻게던 적중률을 높이기 위해 노력하는 스킬인데
저렇게 실제 시간과 수치상의 시간이 다른 부분은 큰 오류가 있다고 생각합니다.

위에 써 놓았다시피 신속 1350 서머너가 전설 질풍 룬을 고대의 창에 적용할 경우
수치상으로 나온 1.65초와 인게임에서 적용되는 1.8초는 무려 0.15초 차이인데, 이 둘의 차이는 진짜 말도 안되게 심합니다.
또한 이런 매커니즘이라면, 고대의 창 캐스팅이 끝나고 창이 떨어지는 0.2~3초의 시간까지 포함한다면
제 기준으로는 항상 0.2초 이상의 손해를 보며 게임을 하고 있었다고 할 수 있겠습니다.


본 실험에서는 스킬 트포는 따로 실험하지 않았습니다.
하지만 트포도 적용 순서만 다를 뿐이지 계산 매커니즘은 동일할 것이라 생각합니다.



추가적으로 서머너 직군으로 예시를 하나 더 들어보도록 하겠습니다.
보통 서머너들은 신속 800 언저리를 주고 전부 치명에 몰빵하는 템셋팅을 하는 경우가 많습니다.
물론 사바사겠지만, 소환수 체인 스킬을 세 쿨 돌리기 위해서 필요한 신속의 마지노선이 800이라고 압니다.

때문에 신속 800으로 계산해보겠습니다.
신속 800의 경우 공격속도는 13.74%입니다.

그럼 룬과 신속이 전부 적용될 경우 실제 고대의 창 시전속도는
2.5 * 0.8626 = 2.1565, 소수 둘째 자리에서 올림하면 2.2
2.2 * 0.86 = 1.892, 소수 둘째 자리에서 올림하면 1.9이고
수치상 고대의 창 시전속도는 1.85459.
신속이 낮은 경우도 최소 0.05초, 캐스팅 후 모션까지 포함하면 최소 0.1초씩은 시전속도에서 손해를 보고 있었습니다.


이게 비단 서머너 뿐만 아니라, 차징스킬, 홀딩스킬 등에도 모두 적용될 수 있는 로직이라고 생각합니다.
적어도 인게임 내에서 표시된 수치는 그대로 스킬에 적용되어야 하지 않을까 생각합니다.

혹시 오류가 있다면 지적해주시면 감사하겠습니다.


댓글에 올바른 계산방법이 있어서 수정합니다.

공격속도의 적용 개념은 "스킬을 1번 쓸 시간에 1.x번 쓴다" 의 개념으로 접근해야합니다.

따라서, 만약 제 실험의 경우
신속에 의한 공격속도 증가량이 23.19%이므로 스킬을 1번 쓸 시간에 1.2319번 쓰는 것이고
2.5 / 1.2319 = 2.02로써 인게임과 같은 수치가 나옵니다.

그리고 질풍룬의 경우 합연산이 되기에, 14%를 합친 37.19%가 증가되면
2.5 / 1.3719 = 1.82초가 나오게 됩니다.

이렇게 계산하시면 되겠습니다.


p.s. 근데 1.82초가 나왔다면 프레임 분석 시에 몇 프레임이 더 나왔어야 됐는데 왜 너무나 정확한 1.8초가 나왔을지 궁금하긴 하네요. 반올림하나..?