PC98 한글화/한글화 강좌

2 - 대상 선택 및 대사 추출

천수도인 2022. 9. 10. 00:47

대상 게임 선정 및 준비

우선, 한글화 대상게임을 선정합니다. 저는 지금 한글화 진행중인 '마크로스2 - 스컬리더'로 선택했다고 가정하고 설명하려합니다. 그러면 아래와 같이 일본어 원본인 hdi를 '_jpn.hdi', '_kor.hdi'  형식으로 두벌 만듭니다. 또한 '_jpn.hdi'에서 anxdiet.ext를 이용하여 파일들을 추출하여 아래와 같이 "_jpn" 폴더를 만들어 놓습니다. 추후 한글화한 데이터 파일을 "_kor.hdi"에 넣어주면 됩니다. 저는 중간중간 한글화가 잘 되었는지 확인하기위해 아"_kor.hdi"에 지금까지 한글화한 파일들을 넣고 실행해보곤 합니다.

대사추출

이제 vscode를 이용해서 한글화 툴을 로딩합니다.

그리고 다음과 같이 "config.json"을 클릭하고 원본 게임의 파일 하나를 선정합니다.

그림에서 위쪽 "src_"로 시작하는 것들은 일본어 대사 추출용, 아래 "dst_"로 시작하는 것은 한글화한 대사가 있을 때 대사를 일본어 파일에 입력하고, 대상 저장 폴더로 한글화된 데이터를 저장하는 것입니다.

 

위 "config.json"을 다 수정하셨으면 아래의 그림처럼 "extract_script.py"를 선택합니다. 선택한 상태에서 "F5" 또는 "Ctrl + F5"를 눌러주면 실행됩니다. 

그러면 아래와 같이 메세지가 나오면서 대상 파일(S01_ADV.bin)에 대한 대사(S01_ADV_jpn.json)이 나옵니다.

 

여기서 "~.json" 파일을 문서 에디터를 이용해서 아래의 그림과 같이 일본어 대사가 포함되어 있는지를 확인합니다. 이 때 대사가 있는 json 파일들은 따로 보관합니다.

추후 json 파일들 내에 "@" 만 있는 경우는 그 라인을 지워도 됩니다.

 

또한 아래처럼 ■가 있는 경우는 특별한 한자가 필요하므로, config.json에서 맨 위쪽의 font table 입력을 "translation/font_table"에 있는 "anex86jpn-*.json"으로 바꿔가며 재생성 해봅니다. 이때 폰트테이블이 다를시에는 파일명을 다르게 해주는게 좋습니다.

 

두개를 비교해보면 툴을 이용해서 "~_jpn.json"이 고쳐지도록 편집하면 됩니다. "anex86jpn-full.json"을 기본으로 이용하지 않는 이유는 아래와 같이 @ 를 많이 추출하기 때문입니다. 만약 "anex86jpn-full.json"을 사용해서도 ■이 그대로 나오면 포기하고 넘어갑니다. (보통은 일본어 대사가 있다고 생각되는 파일은 이렇게 두벌을 생성해서 비교하면서 대사가 나뉘거나 할 경우를 수정하는 용도로 사용합니다.)

그 후 대사를 정리하면 대사 추출 작업은 끝입니다.

 

여러 파일 대사추출

모든 파일을 하나하나 config.json을 고쳐가면서 실행하는 것은 힘들 수 있습니다. 그래서 자동으로 폴더 전체에 있는 파일을 "~_jpn.json"으로 만드는 코드를 작성하였습니다.

 

아래와 같이 "extract_script_auto.py"를 선택하고 "def main():" 아래쪽에서 "#=======" 위쪽에 있는 내용을 수정하셔서 실행시키시면 됩니다. 그러면 "bin_path"에 있는 모든파일들 뒤에  "extend_word"가 추가되고 ".json"의 확장자를 갖는 일본어 대사 추출 파일이 "script_path"로 저장됩니다.

 

'PC98 한글화 > 한글화 강좌' 카테고리의 다른 글

4 - 대사입력  (2) 2022.09.10
3 - 번역  (2) 2022.09.10
1 - 준비  (2) 2022.09.10
FDI 파일들을 HDI로 인스톨하는 방법  (0) 2021.07.05
PC98 게임 한글화 - 전체적인 흐름  (0) 2021.07.04