사쿠라대전 1&2
한패 아카이브 #64 · 버전이 바뀌어도 이 번호로 기록을 이어갑니다.
조회 0
좋아요 0
패치 정보
PSP 일본판 사쿠라대전 1&2의 비공식 한국어 패치입니다.
최신 배포 정보
v3.4
사쿠라대전 1&2 한글 패치 v3.4
배포처에서 확인하기 ↗버전 안내 보기
## 사쿠라1 대사 음성이 나옵니다 — 원인은 `tbl.bin` 의 **본문 앞 4바이트**
v2.9 부터 계속 들어온 제보(#5 #8 #9 #10)를 해결했습니다.
엔진(`0x8a7f9e8`)을 역어셈블해 `tbl.bin` 구조를 다시 밝혔습니다.
```
본문 = buf + (W + off + 2)*2
음성 = BE16(본문 - 4) 0 이면 음성 없음, 0xFFFF 면 0 으로
립싱크 = buf + (U + BE16(본문 - 2))*2
```
메시지마다 **본문 앞 4바이트**에 `[음성 번호][립싱크 오프셋]` 이 들어 있고,
엔트리표의 오프셋은 그 **뒤**의 본문을 가리킵니다.
번역문을 되넣을 때 본문만 이어 붙이고 오프셋을 본문 앞으로 잡는 바람에,
음성 번호 자리에 **앞 메시지의 꼬리**가 들어가 있었습니다. 게임은 그
쓰레기를 음성 번호로 읽었고, 그래서 대사 음성이 통째로 나오지 않았습니다.
원본 `0100tbl.bin` 을 세어 보면 메시지 634개 중 **170개**가 음성 번호를
갖고 있고, 그 수는 1장 립싱크 블록의 비어 있지 않은 레코드 수와 정확히
같습니다. 전체로는 **31,481개 중 9,575개(30.4%)** 입니다.
립싱크 블록은 자리를 머리표의 `U` 에서 읽으므로 옮겨도 됩니다. 예전에는
그걸 몰라서 블록을 원래 절대 위치에 못박고 앞을 0으로 채웠습니다.
이제 한국어 길이에 맞춰 블록을 밀고 `U` 를 고쳐 씁니다.
검증 — 엔진과 똑같은 계산으로 원본과 대조합니다.
```
python tools/check_voice.py
사쿠라1 본편 메시지 31,481
음성이 붙은 메시지 9,575 (30.4%)
원본과 음성·립싱크가 어긋난 메시지 0
```
## 사쿠라2 10장 끝에서 멈추던 문제
`S2A:SK1007:44` (「무사시여…… / 저주받은 제도를 되돌릴 / 위대한 고치여」)
에서 제어코드 `<FFFC><000E>` 가 문장 맨 앞이 아니라 뒤로 옮겨져 있었습니다.
원문은 `<FFFC><000E>武蔵よ……` 로 시작합니다.
되돌렸고, 앞으로는 검사가 막습니다 — `fit_lines.py --check` 가 제어코드
목록뿐 아니라 **맨 앞 자리**까지 봅니다.
## 사쿠라2 화 제목의 검은 가로줄
화 제목 카드에서 원문을 지울 때 글자 띠를 **아래 띠의 타일로 통째 덮고**
있었습니다. 그래서 띠 경계가 네모로 드러나고 가로줄이 생겼습니다.
이 그림들은 세로로 색이 크게 변합니다(어두운 실내 → 밝은 종이). 다른
줄에서 질감을 떠 오는 방법은 그래서 다 실패합니다. 마스크를 넉넉히
부풀려 **확산만** 쓰도록 되돌렸습니다. 13장 모두 네모·가로줄이 없습니다.
## 적용
```
xdelta3 -d -s "Sakura Taisen 1 and 2.iso" "Sakura Taisen 1 and 2 (KR).xdelta" "출력.iso"
```
| | 크기 | SHA1 |
|---|---|---|
| 원본 ISO | 1,756,037,120 | `62AEEC46C4174C024A7B743DDC8ACF1ABA2EDAF2` |
| 패치 파일 | 7,606,888 | `5BE2729916D4962FC3CFAA596D1218384988D429` |
| 적용 결과 | 1,756,037,120 | `62373DEFA8684E54873DE47D7B7233F8F157BD00` |
v3.3 에서 고친 실기 프리징(파일 배치)도 그대로 들어 있습니다.
버전 이력 (26개)
- v3.4 배포 페이지 ↗
- v3.3 배포 페이지 ↗
- v3.2 배포 페이지 ↗
- v3.1 배포 페이지 ↗
- v3.0 배포 페이지 ↗
- v2.9 배포 페이지 ↗
- v2.8 배포 페이지 ↗
- v2.7 배포 페이지 ↗
- v2.6 배포 페이지 ↗
- v2.5 배포 페이지 ↗
- v2.4 배포 페이지 ↗
- v2.3 배포 페이지 ↗
- v2.2 배포 페이지 ↗
- v2.1 배포 페이지 ↗
- v2.0 배포 페이지 ↗
- v1.9.1 배포 페이지 ↗
- v1.9 배포 페이지 ↗
- v1.8 배포 페이지 ↗
- v1.7 배포 페이지 ↗
- v1.6 배포 페이지 ↗
- v1.5 배포 페이지 ↗
- v1.4 배포 페이지 ↗
- v1.3 배포 페이지 ↗
- v1.2 배포 페이지 ↗
- v1.1 배포 페이지 ↗
- v1.0 배포 페이지 ↗