지금에 와서는 아무 의미도 없는 전투력(Battle Power)

그렇다면 그 무의미를 한번 파헤쳐보자.



(자료는 전술교본 DB에 거의 의존함을 미리 밝힘)



1. 변수 체크

전투력(BP)은 오직 공치적행회방체 스탯에만 비례한다.

그것은 이 짤 하나로 증명한다.


리앤과 살라시아의 스탯은 소수부까지 정확히 일치시켰다.

둘은 타입도 스킬계수도 링보도 호감도도 전부 다르나, 스탯만 똑같았더니 BP도 같았던 거다.




 2. 비례관계 찾기

 

적당히 굴러다니는 댕커여운 만렙 하르페이아쟝으로 스탯을 이리저리 찍어본 결과, 일단 스탯 찍은 레벨과 BP 상승량이 정비례해보였다.


 


그러나 이 평균 계수대로 실제 스탯을 곱해보니 6298보다 훨씬 높은 값이 나왔다. 즉 어딘가에서 계수가 뻥튀기 된 것이다.



 


그리하여 공격과 치명을 같은 레벨씩 올려본 결과, 계수가 등차수열로 상승함을 알 수 있었다. 즉 '차의 차'가 등차이므로 계수값을 뻥튀기하는 연산은 곱셈인 것이다. 공격력의 경우 1pt당 치명pt 계수를 약 0.02씩 상승시켰다.



여기까지 스초권을 50개 이상 사용한 나는 더 이상 버티지 못하고 과금을 해버리고 말았다. 위와 같은 연관 관계를 이후 공치적행체방회 7x7 모든 경우의 수에서 따져 보기 위해서였다.



 

그 결과 공치적행은 네 변수가 모두 맞물려있으나 체방회와는 무관하며, 그 안에서도 체방은 무관하다는 점을 발견했다. 즉 (공치적행)의 영향과 (체방회)의 영향은 독립변수이다. 


이 시점에서 난 전투력 함수 BP(공,치,적,행,회,방,체)

공(x), 치(y), 적(z), 행(w)에 관한 함수 F(x,y,z,w)

회(a), 방(b), 체(c)에 관한 함수 G(a,b,c)로 나누었다.


그런데 FGxyzwabc의 곱으로 표현된다는 건 알았어도 모델을 바로 확립하진 못했다. 깔끔하게 하나의 함수로 나눠지지 않고 공격력에 대한 계수함수, 치명타에 대한 계수함수... 이런 방법으로 나뉘어 깔끔하게 인수분해가 불가능할 수도 있기 때문이었다.

예를들어 pq+p+q+2 = (p+1)(q+1)+1 인 것처럼 말이다.


F = αY(y)Z(z)W(w) + βX(x)Z(z)W(w) + γX(x)Y(y)W(w) + δX(x)Y(y)Z(z)

어쩌면 식이 이따구로 더러울 수도 있다는 것. (실제로 진짜 함수를 저래 변형 가능하기도 함) 이런 F를 정공법으로 구하려면 변수가 최소 12개인 연립방정식을 풀어야하는데, 인게임 전투력은 정수부까지만 표기되므로 그렇게 많은 변수를 때려 박다간 엄청난 오차가 발생한다.

  

 

나중에 계산한 비례관계 참값은 이러한데, 돌이켜보면 실험값의 정밀도는 개똥이었던 셈이다. 


 

 

3-1. 쉬운 것부터

척 봐도 F는 구하기 어려웠기에 나는 G부터 구해나갔다.

체력과 방어력이 독립변수이니 피차 계수함수의 변수는 회피(a) 하나 뿐이니까. ( 각각 體(a), 防(a) )


앞선 실험에서 하르페이아의 기본 스탯에 소수부가 너무 많았다고 판단한 나는 '방어력과 회피를 동시에 0 만들 수 있으며 체력이 8의 배수인' 유일한 사례인 101레벨 앨리스를 찾아낸다.

 

 앨리스 칭찬해~

 

아무튼 이러한 변수 통제 덕에 아주 빠르게

體(0) = 0.3, 體(a) = 0.003(a+100),

防(0) = 1.5, 防(a) = 0.015(a+100) 임을 알아냈다.


0.003과 0.015, 즉 방어력의 영향은 체력의 5배인 것.


이 때 회피의 계수함수 回(b,c) = U(5b+c+V)) 일 텐데, 실험 결과 V=0, U=0.003 이었으므로

回(b,c) = 0.003(5b+c) 라고 생각할 수 있다.


이렇게 a,b,c 각각의 계수함수를 셋 다 구했다. 그럼 G(a,b,c) = c·體(a) + b·防(a) + a·回(b,c) 일까?

아니다. 體(a), 防(a), 回(b,c) 세 함수는 G의 편미분 함수에 불과하니까 말이다. 그래서 초반에 단순한 곱의 합이 실제 값과는 안 맞았던 거다.


기준값을 0으로 정해서 차례대로 더해나가야 한다.


회방체가 셋 다 0인 상태에서 체력을 c올리면 전투력은 0.3c만큼 오르고, 방어력을 b 올리면 다시 1.5b 만큼 오르고, 마지막으로 회피를 a올리면 0.003a(c+5b) 만큼 오를 것이다.


합하면 0.3c + 1.5b + 0.003a(c+5b) 이고,

따라서 G(a,b,c) = 0.003(a+100)(5b+c)




3-2. 어려운 것 차례

G함수는 쉽게 구했지만 F(x,y,z,w)함수는 복잡하다.


일단 공치적행의 계수함수를 이하와 같이 가정했다.

공pt 계수: 攻(y,z,w) = α + P(y+i)(z+j)(w+k)

치pt 계수: 致(x,z,w) = β + Q(x+h)(z+j)(w+k)

적pt 계수: 的(x,y,w) = γ + R(x+h)(y+i)(w+k)

 행력 계수: 行(x,y,z) = δ + S(x+h)(y+i)(z+j)

 

공깎칩과 치깎칩을 이용한 실험을 통해 0 i ≪ j 임은 알아냈지만 그 이상을 위해 이번엔 최적의 실험체로 살라시아를 선택했다. (선정 이유는 앨리스와 비슷하다)


 



이번에도 스탯 pt당 계수변동표를 전부 정리해봤다. 일치하는 숫자가 하나도 없길래 조금 당황했지만 다행히 한 줄기 희망이 보였다. 위에서 계수함수 體, 防, 回가 G를 편미분한 거라는 말 기억나는가? 계수변동값도 똑같이 攻, 致, 的, 行 함수의 편미분값인 것이다.


그걸 한 번만 더 편미분하면 변수는 하나밖에 남지 않는다. 따라서 두 캐릭터의 계수변동계수변동계수를 재서 기본 스탯을 고려해 비교하면 h,i,j,k 값을 알아낼 수 있다.

 


그 중 ∂²攻(y,z,w)/∂y·∂z = P(w+k) 로 첫 수확을 얻는데,


P(w+k)값이 행동력(w)에 정비례하렷다? 따라서 k=0

추가적인 비교를 통해 h=0 임도 알게됐다.

이는 F함수가 공격력과 행동력으로 나누어 떨어짐을 뜻한다!


정리하면 F(x,y,z,w) = xw(y+i)(z+j)R


이후 계산된 i, j 실험값은 약 98, 1015였는데 처음엔 내 주화입마에 빠져 각각 96, 1024로 가정하고 R을 계산해보니 뭔가 오류가 있었다. 첫 가정을 폐기한 다음엔 각각 100, 1000으로 놓았다.



이를 확인하기 위해 마지막 교보재로 '스탯 분배만으로 공치적이 아름답게 나오는' 104레벨 SS승급 골타리온을 택했다. 이 상태에서 G함수값은 284.7 이므로 F함수값은 11250일 텐데, 이걸 5*3000*200*1200 (=18억)으로 나누면 R=0.000003125가 나온다. 이렇게 구해진 모든 변수로 이전까지의 사례를 두들겨본 결과 계산에 오류가 없음을 확정짓는다.


결론적으로

F(x,y,z,w) = 0.000003125xw(y+100)(z+1000)

= 공격력*행동력*(치명+100)(적중+1000)/320000




BP(x,y,z,w,a,b,c) = F(x,y,z,w) + G(a,b,c) = [xw(y+100)(z+1000)/320000] + [(a+100)(5b+c)*0.003]



풀어서 쓰면 전투력

[공격력*행동력*(치명+100)*(적중+1000)÷32만]

[(체력+5*방어력)*(회피+100)*0.003]




(실제 데이터 상의 계산식은 이렇다고 한다.)

[(공*5/8)(행/4)*(0.01치+1)*(0.001적) + (0.015체+0.075방)(0.01회+1)]*2



4. 전투원별 최대 전투력

BP 함수도 구했으니 최대값을 구해볼 차례다. 어떻게?


앞서 살펴봤듯이 FG는 변수가 겹치지 않는다. 그럼 스탯을 스까서 올리는 건 매우 비효율적일 테니, 캐릭마다 FG함수값을 각각 최대치로 끌어올릴 때 어느 쪽이 유리한지 대보면 될 것이다.


물론 변수가 엄청나게 많았다. 기본 능력치는 물론, 캐릭별로 %링크 보너스, 풀링크 보너스, 장비 착용조건이 모조리 다른데 그거에 맞춰 스탯 찍는 법까지 갈린다! 물론 내가 생각할 수 있는 모든 변수는 노가다로 전부 따져봤음ㅋ


 


5-1. 체력&회피 올인

 

G = (체력+5*방어력)*(회피+100)*0.003

G몰빵부터 계산해보자.


우선 방어는 찍지 않는다. 체력 1pt의 가치는 언제나 방어 1pt보다 높고, 방베타보다 체베타의 성능이 훨씬 좋기 때문이다. 그렇다면 남는 건 체력과 회피다.


칩(체베타 고정), OS, 보조장비에 따른 기반 능력치에서 스탯을 찍어준다고 치자. 그럼 어떻게 찍는 게 이로울까? 만일 체력을 x 포인트 주면 회피는 360-x 포인트 찍게 된다. 이 관계를 G에 대입하면 위로 볼록한 2차함수가 나온다.


 

따라서 이 그래프의 x∈[0,360] 구간에서의 최고점을 찾으면 된다. 만일 최고봉이 구간 밖에 있을 경우엔 유리한 방향으로 스탯을 몰아준다. 참 쉽죠? 거기에 세팅에 따른 F함수값을 더해주면 최대전투력이다.




   

공격기와 지원기는 딱히 생각할 게 없다. 어차피 최적은 쌍체베+리부트(β/γ)+영전니트로 한 조합 뿐이니까.


   

스팅어, LRL(B~SS)의 전장은 회피를 초월적으로 많이 올려줘서 니트로보단 전장이 훨씬 유리하다. 레오나

전장은 회피가 많이 안 올라서 근소하게만 더 높았다.



불가사리의 경우 미승급은 ''그 아머" 쪽이 더 높으나 SS승급시 니트로가 유리해진다. (120렙 기준)




   

보호기는 보호기 한정 장비가 다수 있기에 고려할 사항이 꽤 많았으나 모든 조합을 전캐릭 전수조사 해본 결과 가장 유리한 조합은 리부트초중량, 리부트슴페, WRII초중량, WRII슴페 4가지로 좁혀졌다.


 

 

   

리부트초중량은 공치 스탯이 높은 회탱 운디슴페금란에게,


 

리부트슴페는 보호기 최고존엄인 스홀과 이터니티에게,


   

WRII초중량은 체력이 낮고 회피가 높은 정통파 기동회탱(뗑컨블하핀토하베지니야) 5종에게,


   

나머지는 체력&회피 둘 다 챙기는 WRII슴페가 유리하다.



 

5-2. 공격&치명&적중에 올인


F = 공격력*행동력*(치명+100)*(적중+1000)÷32만

이제 F의 최댓값을 구할 차례다.


F는 행동력을 빼고도 공,치,적 세 가지 스탯에 의해 좌우되기에 훨씬 복잡하다. 만일 공격에 x포인트, 적중에 z포인트 투자하고 나머지 (360-x-z)포인트를 치명에 올인할 경우, 주어진 기본+장비 능력치에서 F함수F=k(x+A)(z+B)(x+z+C) 꼴로 정리될 수 있다.




3D로 그려낸 F의 그래프 개형은 이런 식으로 중앙이 살짝 볼록하고 세 포물선커튼형 귀퉁이로 발산하는 꼴이며 xy평면과 yz평면에 평행한 단면은 모두 포물선이다. 최댓값은 중앙의 꼭대기로, 이 지점에선 ∂²F/∂x∂z=0, F/∂x=0, ∂F/∂z=0 으로 접평면이 xz에 평행하게 된다.


다행히 편미분한 형태는 깔끔하게 인수분해가 가능하다.

F/∂x = (z+B)(2x+z+A-C)

F/∂z = (x+A)(x+2z+B-C)


이 둘을 갖고 =0 으로 잡으면 해가 네 종류 나오는데, 여기서 중앙지점이면 2x+z = C-A, x+2z = C-B 만이 해당한다. 이는 곧 1차연립방정식이므로 x와 z를 기본+장비 능력치에 관한 식으로 풀어낼 수 있다! 중앙지점 (x,z) 좌표의 음양에 따라 어느 xz<0 이면 위에서 말한 2차함수 최댓값으로 해석하고, x와 z 둘 다 음수면 치명에 올인, 둘 다 양수면 그 값에 반올림한대로 공격과 적중에 투자하고 나머지를 치명으로 돌린다. 이 상태가 F의 최댓값이며 여기에 G값까지 더해주면 최대전투력이 구해진다.



말로 표현하면 좀 긴데, 대충 엑셀로는 이렇게 된다.

물론 여기까진 맛보기였고 진짜는 장비조합이나 링보별로 온갖 변수를 다 때려넣고 비교하는 작업이지만 그건 생략하겠다.


 


결과적으로

 

OS는 타이런트만 전장, 나머진 무조건 리부트(β/γ)


   

칩은 97%의 경우 쌍치베가 유리했으나, 일부 중장형(뽀삐, 아스널, S뚱이, 비헌, A이뱀)에겐 쌍공행이 유리했고 미승급 LRL만은 저열한 능력치와 전장의 높은 회피 때문에 치베+공베가 유리했다. 그외 골타리온과 실피드의 전장칩은 어떤 범용칩 조합보다도 유리했다.


   

보조장비는 대체로 행동력이 느리거나 기본 G가 받쳐주는 경우엔 영전니트로, 기본 공치적행이 높은 경우 영전스코프가 유리한 경향을 보였으며 스탯뻥이 높은 전용장비 대부분은 니트로나 스코프보다 유리했다.


   

기본 스탯이 빈약하고 전장 성능도 애매한 스카디, 기본 행동력이 처참한 셀주크, 낮은 공격력에 비해 방체가 미묘하게 높은 네레이드 이 셋은 전장보다 니트로가 유리했다.




5-3. 비교하기

 

F몰빵이 우세하다면 공치적을 찍어야 전투력 수치 향상에 유리한 것이며 G몰빵이 우세하다면 체회를 찍어야 유리한 것이다. 이하는 최대전투력을 논하므로 120만렙+풀승급을 기준으로 비교한다.



   

경장&기동공격기는 기본스탯이 처참한 더치걸(B~SS)을 제외하면 모두 F몰빵이 우세했으나 중장공격기는 체력이 높아선지 우르, 에밀리, 스프리건(S~SS), 파니를 제외한 나머지는 G몰빵이 우세했다.



 

보호기도 거의 대부분 G몰빵이 우세했는데, 특수케이스인 골타리온을 제외하면 SS승급 운디네만이 유일하게 F몰빵이 (고작 1.1 차이로) 우세했다.



   

경장지원기는 콘챠, 에이다 등 능력치가 공스탯에 치우친 일부(7/33)만 F몰빵이 우세했고 기동지원기는 등급별로 상위 절반은 F몰빵, 하위 절반은 G몰빵이 우세했으며 중장지원기는 예외 없이 전부 G몰빵이 우세했다.




6-1. 캐릭터별 최대 전투력 순위


(클릭 시 확대)


 

(10위까지 재현하기엔 아이아스가 너무 노답이라서 기각)


 

   

대망의 1위는 스트롱홀드, 2위는 기간테스, 3위는 프리가

이하 4위 로크, 5위 장화, 6위 글라시아스, 7위 알바트로스, 8위 아이아스, 9위 타이런트, 10위 브륀힐드 순이다.

 


영광스런 196위 꼴찌는 그렘린이 차지했다. 그렘린의 전투력은 정말 엄청나서 G몰빵이 우세한 캐릭임에도 그 수치가 골타리온보다도 낮고, F몰빵에서도 전캐릭 꼴찌, 노장비노스탯으로도 꼴찌, 100렙 기준으로도 꼴찌다.

 

 

 

 6-2. 스쿼드 종합 최대 전투력


Top5의 보조장비는 현재까지 각각 하나씩만 풀린 상태이기에 전부를 최상의 상태로 맞춰줄 순 없다.

 

 

4,5위인 로크와 장화 둘 다 영전스코프를 필요로 하기에 후순위인 장화는 목뼈를 껴야 한다. 이러면 스코프 빌드보다 전투력이 29감소하게 되므로 현재 이론상 스쿼드 종합 전투력의 상한은 122244.11 이다. (스쿼드원 개개인의 소수부가 더해진 값임)



단, 미니슴페가 워낙 비싼지라 쉽게 교환하긴 힘들 것이다. 보호기들의 높은 순위는 미니슴페의 압도적인 회피율 덕분이라서 이걸 니트로로 대체하면 전투력이 왕창 깎인다. 이 때문에 현질 없이 최대값을 달성하려면 4위 프리가를 방출하고 공격기인 6위 글라시아스를 세워야 하는데, 이렇게 무과금으론 최대 119975.44까지 도달할 수 있다.

  

 

 

7. 전투력의 무의미의 의미

 


전투력은 어디까지나 편성창에서의 공치적행회방체에 의해서 결정되는 패러미터다. 이렇게 설계된 이유는 무엇일까? 9년차의 깊은 뜻을 감히 헤아려보자면 '초기에 좆박았던 편의성의 잔재'라고 생각한다.

 

 

이 콘을 기억하는가? 라오 초창기엔 캐릭터를 직접 먹여서 스탯을 올리는 방식이었고, 그 만큼 '스탯'이 가지는 의미가 지금보다 컸을 것이다. (+초기화시 처음부터 다시 먹여야하는 판타스틱한 시스템)


 

F함수를 잘 보면 치명타는 같은 수치의 적중의 10배의 보정을 받는데, 이는 초기에 설정된 치명타의 가치가 엄청 높았음을 보여주는 예다. 지금이야 치명 250% 정돈 누구나 찍을 수 있지만 초기엔 치칩 구하기가 하도 힘들어서 100% 달성조차 무척 힘들었다.

과거 치칩의 높은 가치는 6-8Ex 드랍에 이벤트로는 발렌에서 최초로 풀린 점이나 여전히 극악으로 낮은 제조확률로 설명된다.



 


G함수를 잘 보면 회피와 방체를 곱하는데, 이는 닼던식 턴제겜을 지향하던 시절의 잔재일 것이다. 처음에 라오는 닼던처럼 '언젠가는 맞는 게 당연하도록' 설계되었는데, 유저들이 자꾸 발키리랑 페로를 써대자 꼬왔는지 절대적중의 도입을 시도한 적도 있었다. 세상에

(이게 무산되자 복씨는 디텍터 AA, 치프틴, 제네럴로 회탱을 고로시했다)

  


 

끝으로....

돌이켜보면 전투력은 초기엔 그나마 약간의 효용성이 있었지만 강화개편, 저자병과 메타변화 등 갖은 변화를 겪어오며 지금에 와서는 아무짝에도 쓸모가 없는 패러미터가 된 것 같다. 구조상 최대 전투력을 최대로 이끌어내는 방법도 치명타를 200% 넘게 찍거나 회탱에게 초중량장갑을 끼우는 등의 비상식적인 수단들 뿐이다. 전투력의 무의미의 의미란 이것을 말한다.

 

앞으로 개선될 가능성은 전혀 없겠지만 지금에 와서라도 한번 모든 것을 파헤쳐보고 싶었다.


++

물론 어떠한 쓰임새도 없는 건 아니다.

교본 업뎃이 중단된 후 난 바르그의 기본스탯을 계산해봤는데,  짤에서 나온 수치를 액면 그대로 전투력 계산식에 대입해보면 258.998...이 나온다. 즉 1렙 스탯엔 숨겨진 소수부가 없으며 저게 참값이라고 생각할 수 있는 것이다.