# 코로네 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 및 공개 배포에는 포함하지 않는다.