Files
HolodoriCalc/docs/research/m0341-expert-sus.md
T
dal4segno e688036d11
Publish GitHub Pages output / publish (push) Successful in 54s
fix: calculate chart scores with song formulas and hidden note weights
2026-09-06 21:51:42 +09:00

50 lines
3.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 코로네 Expert 원본 SUS 분모 계산
2026-09-06, 공개 에셋 카탈로그 revision 70에서 `chart_m0341_expert.sus`를 확보했다. SHA-256은 `b6523da612971b3c8816a8fbb5d86d14d569b259aae84387f2818dd31944d969`이며 서비스 채보의 원본 해시와 일치한다.
## 집계
| 종류 | 개수 | 1개 가중치 | 합 |
|---|---:|---:|---:|
| 일반 | 464 | 1000 | 464000 |
| 독립 플릭 | 85 | 1050 | 89250 |
| 홀드 시작 | 109 | 1000 | 109000 |
| 홀드 끝 | 83 | 1000 | 83000 |
| 홀드 끝 플릭 | 26 | 1000 | 26000 |
| 보이는 릴레이 | 40 | 100 | 4000 |
| 홀드 중간 판정 | 151 | 100 | 15100 |
| 비가시 릴레이 | 105 | 100 | 10500 |
| 베지어 제어점 | 0 | 100 | 0 |
| **전체 분모** | | | **800850** |
득점 판정 958개의 합은 790350이다. 비가시 릴레이 105개를 분모에만 더한다. 일반 노트=1 단위로는 **800.85**다.
공개 [SUS 파서](https://github.com/UntitledCharts/sonolus-level-converters/blob/main/sonolus_converters/holodori_sus/loader.py)의 종류 구분과 압축 토큰 규칙을 대조했다. family 3의 kind 4/5를 베지어/비가시 릴레이로 집계한다. `0xNN`은 base62 빈 칸 압축이며 노트가 아니다. 같은 채널이 여러 줄로 나와도 모두 유지한다. 생성되는 홀드 중간 판정은 SUS 헤더의 카테고리별 개수를 사용한다. 따라서 이 도구는 전체 득점 타임라인을 복원하는 파서가 아니다.
## 검증
- 기존 실측 대상 18개 채보 + 코로네 Easy/Normal/Hard = **알려진 분모 21개 전부 일치**.
- 코로네 Hard: 득점 합 495550 + 비가시 48×100 = **500350**.
- 실제 엔진의 기존 일반 PERFECT 실측 19건은 계속 모두 일치한다.
- 이번 Expert 분모는 원본 구조와 검증된 집계법으로 산출한 값이다. 코로네 Expert의 신규 게임 실측값은 아직 없다.
SUS 헤더의 `SCORE_LEVEL`은 26이지만, 현재 공개 마스터 및 서비스 난이도는 **28**이다. 환산식에는 28을 사용한다. 곡별 계수는 5다.
```text
곡·난이도 배율 = 2.3 × (1 + 5/1000 × (28 − 5)) = 2.5645
scoreRatio = 800.85 / 2.5645 = 312.28309612010145
일반 PERFECT 기본점수 = 종합력 / 312.28309612010145
```
## 적용과 재현
신규 값은 외부 연구 메타데이터와 구분하여 `sus-score-formulas.json`에 출처·해시·집계표·검증 대상과 함께 기록했다. 공식 적용 및 채보 수집은 이 값을 함께 읽고, SUS 해시가 달라지면 적용을 거부한다. 현재 서비스 카탈로그 **388개 모두 formula-v1**이며 추정값으로 남아 있는 채보는 없다. 신규 곡의 분모가 자동으로 확보되는 것은 아니며 원본 확보·집계·검증 과정이 필요하다.
```sh
node scripts/calculate-sus-score-formula.mjs data/raw/sus/chart_m0341_expert.sus
node scripts/validate-sus-score-formulas.mjs data/raw/sus
npm run test:sus-score
```
원본 SUS는 `data/raw/sus`에 저장되어 있으며 Git 및 공개 배포에는 포함하지 않는다.