근접 밸런스 스프레드시트

스프레드시트

이 문서는 Melee Weapons Evaluation.ods 스프레드시트에 대한 설명입니다. 이 스프레드시트는 0.E 실험판의 근접 무기 리밸런스 프로젝트를 이끌었습니다. 원본 스프레드시트는 Google 문서로 제공되지만, 문서가 이동할 경우에 대비해 정적 사본도 보존되어 있습니다.

이 스프레드시트는 여러 요소가 맞물리는 복잡한 문서입니다. 다음은 각 탭과 데이터 흐름입니다.

Raw

Raw는 0.D 실험판의 2019년 10월경 버전에서 가져온 최초 데이터 덤프입니다. mlangsdorf가 평소에 사용하던 모드를 적용했기 때문에 Blazemod 관련 항목이 모두 포함되어 있습니다. Raw에는 다음 분류가 몇 가지 추가되었습니다.

  • Weapon Class - 단순한 숫자 등급입니다. 0은 무기가 아닌 물건, 1은 폭발 장치, 2는 원거리 무기나 총, 3은 냄비처럼 무기로 쓰기 나쁜 도구, 4는 헬멧, 5는 큰 망치처럼 무기로 쓰기 좋은 도구, 6은 즉석 무기나 가짜 무기, 7은 실제 전용 무기입니다.
  • Category - 비슷한 무기를 쉽게 비교할 수 있도록 아이템을 무기별로 분류한 값입니다. 근접 무기 분류에는 Ax, Ax2, Club, Club2, Flail, Flail2, Knife, Polearm, Spear, Staff, Shortsword, Sword, Sword2가 있습니다. 이름이 2로 끝나는 분류는 양손 무기입니다.
  • Acc - 데이터를 검토한 결과 많은 무기의 명중도 값이 GAME_BALANCE.md의 기준에 부합하지 않았기 때문에, 아래의 명중도 요소에 따라 무기 명중도를 다시 계산한 값입니다.
  • Grip - GAME_BALANCE.md에 설명된 아이템의 그립입니다.
  • Leng - GAME_BALANCE.md에 설명된 아이템의 길이입니다.
  • Surf - GAME_BALANCE.md에 설명된 아이템의 타격면입니다.
  • Bal - GAME_BALANCE.md에 설명된 아이템의 균형입니다. Clumsy 외에도 분류를 추가했으며, 육안으로 판단하여 배정했습니다.

Filter

Filter는 Raw의 최초 데이터와 무기 등급(B1 셀)을 받아, 그보다 무기 등급이 낮은 아이템을 걸러 내어 추가 분석을 쉽게 합니다.

New Formula

최초 능력치에 새 무기 평가 공식을 적용하여 계산하는 탭입니다. 계산 과정은 복잡합니다.

처음 7개 행에는 헤더 데이터가 있습니다. 계산의 대부분은 8행부터 시작됩니다.

모든 무기 스킬이 4이고 근력 10, 민첩 10, 지각 10인 생존자를 기준으로 무기를 평가했습니다. base hit, stat crit, skill crit, bash mult, cut mult, stab mult 값은 src/melee.cpp의 관련 부분에서 가져왔습니다.

  • A열 "Average"는 무기의 새 평가 값이며, 쉽게 참조할 수 있도록 시트 가장자리에 있습니다.
  • B-J열은 Filter 탭을 거쳐 Raw 탭에서 가져온 무기의 원래 능력치입니다.
  • K열 "roll_hit"은 평가자의 base_hit과 무기의 acc를 더한 값입니다.
  • L열 "Wpn Crit"은 무기가 치명타에 기여하는 값입니다.
  • M-N열 "3 Crit"과 "2 Crit"은 스킬, 명중도, 능력치에 따라 삼중 및 이중 치명타가 발생할 확률입니다.
  • O-Q열 "Average Non-Crit" damage는 세 피해 유형 각각에서 계산한, 장갑 적용 전의 비치명타 평균 피해입니다.

여기까지는 상당히 간단합니다. 다음 세 블록부터 복잡해집니다. S-Z열은 몬스터 능력치만 달리하여 AB-AI열과 AK-AR열에 반복됩니다.

  • S열 "Hits"는 공격 1,000회당 예상 명중 횟수입니다. 평균이 5 * ( roll_hit - monster Dodge )이고 표준편차가 25인 정규 분포를 상대로 계산합니다.
  • T열 "Crit %s"는 명중 중 치명타가 될 것으로 예상되는 비율입니다.
  • U열 "Dmg"는 장갑을 통과한 평균 예상 피해입니다. 세 피해 유형 각각에 대해 max( 0, damage type - armor amount )를 계산해 모두 더한 값입니다.
  • V열 "Crit"은 장갑을 통과한 평균 예상 치명타 피해입니다. 세 피해량 각각에서 치명타 피해와 장갑 수치의 차를 더한 값이지만, 세 피해 유형은 치명타 피해 배수가 다르고 치명타 시 유효 장갑을 서로 다른 수치만큼 감소시키므로 공식은 훨씬 복잡합니다.
  • W-Y열은 피해와 치명타 피해 계산을 반복하되, 기본 피해에 2/3를 곱하는 연속 타격을 대상으로 합니다.
  • Z열 "Dmg/Turn"은 다음 둘 중 하나입니다.
    • 100 * ( Dmg * ( Hits - num crits ) + Crit Dmg * ( num hits ) ) / ( 1000 * Moves ) — 일반 명중마다의 명중당 피해와 치명타마다의 치명타 피해를 합산하여 공격 1,000회의 이동 수로 나눈 뒤, 초당 100 이동을 곱합니다.
    • 100 * ( Dmg * ( Hits - num crits ) / 2 + Crit Dmg * ( num hits ) / 2 + rapid strike Dmg * ( Hits - num crits ) / 2 + rapid strike Crit Dmg * ( num hits ) / 2 ) / ( 1000 - ( hits / 2 ) * Moves + Hits * 0.33 * Moves ) — 위와 같지만 연속 타격의 감소한 피해와 이동 비용을 반영합니다.

마지막으로 다음 열이 있습니다.

  • AT열 "Weapon"은 참조하기 쉽도록 무기 이름을 반복해서 표시합니다.
  • Au열 "Value"는 Z, AI, AR열의 평균이며 Reach 2 무기는 1.5를, Reach 3 무기는 1.75를 곱합니다.

New Formula Sorted

기존 무기 값과 새 공식으로 계산한 값을 비교하고, 무기 분류별로 새 값이 높은 순서대로 정렬합니다. 이를 통해 해당 분류에서 비정상적으로 좋은 무기(브로드소드, 바로 당신을 말하는 겁니다)나 나쁜 무기를 쉽게 찾을 수 있습니다.

Proposed Values

New Formula 탭을 반복한 탭이지만, C-J열을 복사하여 값으로 붙여 넣은 뒤 보기 좋은 숫자가 되도록 조정했습니다.

  • 명중도는 Raw 탭의 그립, 길이, 타격면, 균형에 따라 새 값으로 조정했습니다. 그 결과 바이오닉 클로처럼 이전에 정확했던 여러 무기는 약화되었고, 카타나처럼 부적절하게 부정확했던 무기는 강화되었습니다.
  • 같은 분류의 무기는 값이 서로 달라도 평가 값은 대체로 비슷하도록 조정했습니다. 일반적으로 유럽 무기는 아시아 무기보다 타격 피해의 비중이 높고 베기 피해의 비중이 낮으며, 더 무겁고 느린 경우가 많습니다. 이는 다소 자의적이고 완전히 현실적이지는 않지만 모두가 그렇게 예상하는 듯합니다. 예를 들어 일본 양손검 nodachi는 공격 속도 164, 타격 6, 베기 47이고, 유럽 양손검 zweihander는 공격 속도 169, base 18, 베기 39입니다. 두 무기의 값은 모두 약 26입니다.
  • 조잡한 무기는 실제 무기보다 균형을 한 단계 낮추고, 베기/관통 피해의 절반을 타격 피해로 옮긴 뒤 베기/관통 피해를 실제 무기의 1/4로 줄였습니다. 예를 들어 조잡한 파이크는 타격 30, 찌르기 11이고, 파이크는 타격 8, 찌르기 44입니다.
  • 가짜 무기는 조잡한 무기만큼 균형이 나쁘지만 사실상 둔기이므로, 타격면은 보통 every로 상향되었습니다. 아이러니하게도 이 때문에 실제 무기만큼 정확하거나 더 정확해졌습니다. 타격 피해는 조잡한 무기의 절반으로 줄이고, 베기/관통 피해는 다시 조잡한 무기의 1/4, 즉 실제 무기의 1/16로 줄였습니다. 가짜 파이크는 타격 15, 찌르기 3입니다.
  • 많은 무기는 평가 값을 높이기 위해 피해가 상향되었습니다. 피해가 낮고 연속 타격이 있는 많은 무기는 평가가 지나치게 높았지만, 장갑을 통과한 피해를 시험해 보니 연속 타격은 종종 장갑에 두 배 빠르게 튕겨 나가게 할 뿐이었습니다.
  • 창의 관통 피해에는 무게에 기반한 대략적인 공식을 적용했지만, 이제 그 공식을 복원할 수 없습니다. 다만 일반적으로 창 사이의 차이는 전보다 작아졌습니다.
  • 장병기는 거리 2에서 Ax2와 대략 같은 피해를 주도록 했지만, 거리 1에는 원시 피해를 0.7배로 줄인 별도의 밸런스 행을 두었습니다. 이 때문에 장병기는 거리를 두면 매우 강력하지만, 인접한 대상을 상대로는 쿼터스태프보다 약간 나쁩니다.

Proposed Values Sorted

New Formula Sorted와 같은 또 하나의 비교 탭이지만 Proposed Values의 데이터를 사용합니다.

Comparison

요약 탭입니다.

A-P열에는 Filter 탭의 각 무기에 대해 현재 능력치와 제안 능력치, 원래 평가 값, 새 공식에 따른 값, 제안 값을 새 공식에 적용한 값이 표시됩니다. 제안 값 중 개선된 값은 녹색, 나빠진 값은 빨간색으로 강조됩니다. 이를 통해 변경 사항을 쉽게 비교하고 실수를 찾을 수 있는 것이 이상적입니다.

S-AH열은 같은 과정을 반복하지만, S1, T1, U1, V1 셀에 분류 이름을 지정할 수 있고 소계에는 해당 분류와 일치하는 선택된 무기만 표시됩니다. 이를 통해 비교가 간단해집니다.