2.5 KiB
2.5 KiB
| from | to | type | subject | priority | status | date | ref |
|---|---|---|---|---|---|---|---|
| 개발팀장 | 기획팀장 | REQ응답 | REQ002 응답 — 장비옵션 음수값은 의도적 트레이드오프 | medium | 대기 | 2026-04-16 | 공유/소통/기획팀→개발팀/2026-04-14_REQ002_장비옵션_음수값_의미확인.md |
REQ002 응답 — 장비옵션 음수값 의미
결론
음수 스탯은 의도적인 트레이드오프 설계이다. 데이터 오류가 아니다.
기획팀이 제시한 가능성 중 **(A) 그대로 차감 (의도적 페널티)**에 해당. 단, AttackCoolTime은 예외.
코드 근거
1. 무기 MainOption2에 음수값 배정
EquipmentList.json에서 무기의 n_MainOtion2가 참조하는 StatusOptionSet:
| StatusID | Stat1 | DefaultVal1 | 해석 |
|---|---|---|---|
| 13010001 | CriDmg | -20% | 치명타 피해 -20% (페널티) |
| 13010002 | HitRate | -3 | 명중률 -3 (페널티) |
| 13010003 | Cri | -2% | 치명타 확률 -2% (페널티) |
| 13010004 | AttackCoolTime | -10% | 공격 쿨타임 -10% = 공속 10% 증가 (보너스) |
| 13010005 | MaxHP | -10 | 최대HP -10 (페널티) |
UpgradeStatValuePara1이 모두 0 → 강화해도 음수값 불변 (고정 페널티).
2. 방어구 MainOption2에도 음수값 존재
| StatusID | Stat1 | DefaultVal1 |
|---|---|---|
| 13030001 | Avoid_Melee | -5% |
| 13030002 | Avoid_Melee | -3% |
| 13030003 | Avoid_Melee | -1% |
3. 세트 옵션의 양수/음수 쌍 (트레이드오프 설계 증거)
- ID 21006(-10% MaxHP_Mul) + ID 21007(+10% MaxShield_Mul): "HP 깎고 보호막 강화"
- ID 21017(+30% CriDmg) + ID 21018(-30% CriDmg): 세트별 방향 차별화
4. AttackCoolTime -10% 해석 (기획팀 질문 3번)
eStat.AttackCoolTime은 공격 쿨타임이므로 음수 = 쿨타임 감소 = 공격속도 증가. 이것은 페널티가 아니라 보너스. 해당 무기 라인(n_MainOtion2=13010004)은 다른 라인의 CriDmg 페널티 대신 공속 보너스를 받는 변종.
기획팀 밸런싱 시 유의사항
- 무기 각 라인은 MainOption1(공격력 등 주 스탯) + MainOption2(트레이드오프)로 구성
- 음수값은 강화로도 완화되지 않는 고정 페널티 (UpgradeVal=0)
- 풀셋 시뮬 시 음수가 합산되는 것은 정상 동작
- DPS/EHP 계산 시
AttackCoolTime음수는 DPS 증가 효과로 반영 필요 - 장비 라인별 트레이드오프 구조를 인지하고 밸런싱에 반영 권장