-
[kirikiri엔진 한글화]2. 한글화를 진행하자. - 데이터 수정
at 2009-05-27 10:32:27 9 comment

안녕하십니까, 메프입니다.
저번편에 이어 이번에는 저번 1. 한글화를 시작해보자.편에서 분해한 파일들을 수정하는 방법에 대해 알아보도록 하겠습니다.
수정 방법은 솔직히 아주 간단합니다. 간단하게 설명한다면 텍스트 수정프로그램으로 수정하면 끝.
그 외 몇가지 팁을 포함해서 글을 작성해보도록 하겠습니다.
기리기리엔진의 경우, Nscript와 달리 프로그램을 수정하지 않아도 반각문자를 이용할 수 있고,
스크립트 번역 수정이 기본적으로 Nscript보다 간편합니다. 이 부분이 가장 편하죠.
페이트 한글화 ntyun님의 정리 방식의 기반으로 작업을 시작하였습니다.
클라이언트 파일은 기리기리엔진 디벨로퍼 포럼의 thkim1349님의 한글 SDK를 이용하고 있습니다.
Only You를 작업하며, 중간세이브 겸 겸사겸사 작성하고 있습니다.
다른 게임들의 경우 방식이 조금 틀릴 수도 있습니다. 이점 양해해 주십시오.
ntyun님과 thkim1349님의 노고에 감사드립니다 (..)
2. 한글화 진행 - 데이터 수정
2-1. 에디트 플러스를 설치하자

우선 텍스트 파일을 수정할 수 있는 프로그램을 설치해야합니다.
기본적으로 메모장이나 워드패드도 상관없지만, 일본 텍스트를 수정할 때에는 문자 인코딩 부분을 자주 건드려야 하고,
이것저것 작업을 하다보니 가장편한 프로그램은 에디트플러스더군요.
제가 작업을 주로 하는 것이 에디트 플러스이므로, 이 프로그램을 기본으로 게시물을 작성하도록 하겠습니다.
에디트 플러스는 네이버, 다음등의 포털등에서 쉽게 검색하여 다운받으실 수 있으며,
30일 제한 쉐어웨어의 경우도 30일이 지난 뒤에도 아무 문제 없이 사용을 할 수 있습니다.
일단 설치하고 생각합시다.
2-2. 시나리오를 열어보자

기본적으로 메모장이나 워드패드도 상관없지만, 일본 텍스트를 수정할 때에는 문자 인코딩 부분을 자주 건드려야 하고,
이것저것 작업을 하다보니 가장편한 프로그램은 에디트플러스더군요.
제가 작업을 주로 하는 것이 에디트 플러스이므로, 이 프로그램을 기본으로 게시물을 작성하도록 하겠습니다.
에디트 플러스는 네이버, 다음등의 포털등에서 쉽게 검색하여 다운받으실 수 있으며,
30일 제한 쉐어웨어의 경우도 30일이 지난 뒤에도 아무 문제 없이 사용을 할 수 있습니다.
일단 설치하고 생각합시다.
2-2. 시나리오를 열어보자

데이터 폴더 내부를 살펴보시면 이와 같이 폴더 구성이 되어계실겁니다.
이곳에서 시나리오 파일은 보시면 아시겠지만, scenario 폴더내에 모두 저장되어 있습니다.
(특정 게임의 경우, 시나리오 폴더 등이 다를 수 있습니다만 대부분 동일한 폴더를 사용합니다.)
시나리오 폴더를 보시면 많은 양의 텍스트 파일들이 보이실 텐데, 이 모든 파일이 각각의 시나리오 파일입니다.
이 파일을 에디트 플러스 프로그램으로 불러옵니다.

에디트 플러스로 파일을 불러오실경우, 일본 텍스트 파일이므로 언어 인코딩을 다시 골라야 합니다.
여기서 예 버튼을 눌러 일본어 인코딩을 다시 골라보도록 하죠.
기본적으로 한글텍스트의 경우 ANSI로 불러옵니다.
하지만, 일본어 인코딩의 경우 Shift-JIS로 불러옵니다.
Shift-JIS로 불러올 경우, 아래와 같이 게임 내 시나리오를 확인하실 수 있습니다

#.Tip 1
에디트 플러스를 처음 설치하시면, 인코딩 리스트에 Shift-JIS 인코딩이 없으실 겁니다.
그럴 경우 인코딩 선택 우측에 있는 [...] 버튼을 클릭하신 뒤에,
시스템 코드페이지에서 언어셋을 추가하시면 인코딩 언어 리스트에서 해당 언어를 사용하실 수 있습니다.
#.Tip 2
Shift-JIS 인코딩으로 문서를 읽어와도 인코딩이 깨진다는 오류가 발생할 때가 있습니다.
이럴 경우 우측의 [...] 버튼을 클릭하여 다른 일본어 인코딩을 전부 추가해, 인코딩 오류가 발생하지 않는 인코딩을 골라서 불러옵시다.
2-3. 시나리오를 수정 후, 저장해봅시다.
2-2에서 불러온 파일을 번역해서 내용을 수정합니다.
여기서 중요한 점은 스크립트 내의 명령어 등은 일본어로 유지시켜주세요.게임 대사만을 번역합니다.
(kirikiri 엔진의 시스템 파일까지 전부한글화 하실 분이라면, 아무래도 상관없지만 말입니다. 의미는 없습니다.)
그 후, 이 파일을 저장합니다. (단축키 Ctrl+S)
저장하실 경우
위와 같은 인코딩 충돌관련 메세지가 뜨실텐데요.
이는 일본어 인코딩인 Shift-JIS에 한글이 섞인 상태에서 저장하기 때문에 오류가 발생하는겁니다.
이상태에서 Shift-jis로 저장하면 한글인코딩이 깨지니, [예]버튼을 눌러, 다른 인코딩을 고릅니다.
그리고 저장은 일본어와 한글을 동시에 유지할 수 있는 유니코드로 저장합니다.
그럼 끝. 참 쉽죠잉? 'ㅅ'
2-4. 그럼 실행시켜봅시다.
수정을 하신 뒤, 제대로 한글화가 되었는지 테스트를 해봐야 겠죠.
data 폴더 내의 파일들을 수정시킨 다음에 기존 실행 프로그램을 실행시키셔도, 수정안된 원본만이 실행되실 겁니다.
그 이유는 이 실행파일 자체에 시나리오 파일이 내장되어 있기때문에 data폴더를 불러오는게 아니라, 우선적으로 내장 파일을 불러오기 때문에 시나리오를 못 불러오는거죠.
이때 필요한 것이 기리기리엔진 디벨로퍼 포럼의 thkim1349님의 한글 SDK 입니다.
위 링크를 통해 SDK를 다운받습니다.
압축을 해제하신 뒤, kirikiri 폴더를 들어가시면 기본 클라이언트 파일인 krkr.exe가 있으실 겁니다.
이 krkr.exe 만 그냥 패치 작업을 하는 폴더에 쑤..쑤셔집어넣습니다

그리고 이 krkr.exe를 실행시키시면 data폴더의 시나리오 파일을 불러와 번역된 데이터의 게임을 테스트하실 수 있습니다이곳에서 시나리오 파일은 보시면 아시겠지만, scenario 폴더내에 모두 저장되어 있습니다.
(특정 게임의 경우, 시나리오 폴더 등이 다를 수 있습니다만 대부분 동일한 폴더를 사용합니다.)

이 파일을 에디트 플러스 프로그램으로 불러옵니다.


여기서 예 버튼을 눌러 일본어 인코딩을 다시 골라보도록 하죠.

하지만, 일본어 인코딩의 경우 Shift-JIS로 불러옵니다.


#.Tip 1
에디트 플러스를 처음 설치하시면, 인코딩 리스트에 Shift-JIS 인코딩이 없으실 겁니다.


#.Tip 2

이럴 경우 우측의 [...] 버튼을 클릭하여 다른 일본어 인코딩을 전부 추가해, 인코딩 오류가 발생하지 않는 인코딩을 골라서 불러옵시다.
2-3. 시나리오를 수정 후, 저장해봅시다.

여기서 중요한 점은 스크립트 내의 명령어 등은 일본어로 유지시켜주세요.게임 대사만을 번역합니다.
(kirikiri 엔진의 시스템 파일까지 전부한글화 하실 분이라면, 아무래도 상관없지만 말입니다. 의미는 없습니다.)
그 후, 이 파일을 저장합니다. (단축키 Ctrl+S)
저장하실 경우

이는 일본어 인코딩인 Shift-JIS에 한글이 섞인 상태에서 저장하기 때문에 오류가 발생하는겁니다.
이상태에서 Shift-jis로 저장하면 한글인코딩이 깨지니, [예]버튼을 눌러, 다른 인코딩을 고릅니다.

그럼 끝. 참 쉽죠잉? 'ㅅ'
2-4. 그럼 실행시켜봅시다.

data 폴더 내의 파일들을 수정시킨 다음에 기존 실행 프로그램을 실행시키셔도, 수정안된 원본만이 실행되실 겁니다.
그 이유는 이 실행파일 자체에 시나리오 파일이 내장되어 있기때문에 data폴더를 불러오는게 아니라, 우선적으로 내장 파일을 불러오기 때문에 시나리오를 못 불러오는거죠.
이때 필요한 것이 기리기리엔진 디벨로퍼 포럼의 thkim1349님의 한글 SDK 입니다.
위 링크를 통해 SDK를 다운받습니다.

이 krkr.exe 만 그냥 패치 작업을 하는 폴더에 쑤..쑤셔집어넣습니다

#.Tip 3
테스트 플레이를 할 때, 아래와 같은 오류가 발생하시는 경우.

오류 없이 한글 윈도우에서 실행을 하시고 싶을 경우, 시나리오, 시스템의 모든 파일을 UNICODE 인코딩으로 재저장해야 합니다.
이 부분은 3번째 글에서 안내해드리도록 하고, 그 이전에 테스트 플레이 할 수 있는 방법에 대해 안내하도록 하겠습니다.
간단한 방법으로는 어플로케어로 krkr.exe를 실행시키시면, 간단하게 테스트할 수 있습니다
그 외에는 KonJ등의 유틸리티를 이용하시면 테스트하실 수 있습니다.(네이버 검색해보세요 :D)
궁금하신 점은 댓글로 남겨주심 답변하도록 하겠습니다.
이글루스 가든 - NSCRIPT 기반의 게임 한글화...



2009-08-10 23:34 #
우선 exe 파일로 부터 추출한 xp3 파일에서 구성요소를 추출해보니 $$$ This is a protected archive. $$$(이하 생략) 라는 이름의 파일이 가장 먼저 보였습니다.
뿐만아니라 추출한 이미지나 ks 파일이 암호화되어있는건지, 이미지의 경우 파일이 열리지 않았고 ks파일은 아무리 불러들여봐도 억지로 exe 파일을 연 것 같은 텍스트만 나올뿐 한글화 할 수 있는 텍스트는 보이지 않았습니다.
이 경우 어떻게 해야하나요..? 그냥 포기해야할까요..?
자세한건 mes6264@naver.com 으로 연락 주시면, 알려드리도록 하겠습니다.
도움 주시면 감사하겠습니다.
2009-08-12 01:52 #
$$$ This is a protected archive. $$$(이하 생략) 은 날리셔도 괜찮습니다.
2009-08-13 09:42 #
유니코드를 변경해서 불러오기도 해봤지만, 전혀 달라지지 않네요...
유니코드 문제인걸로는 보이지 않는데...
제가 보기에 파일이 깨져있는것 같았습니다. 이미지도 전혀 실행되지 않고..
susie 가 50mb 이상의 파일은 오류가 난다고 했는데 제 xp3의 용량이 130~140mb 정도라 제대로 추출을 못한거라면...
다른 프로그램은 뭐가 있을까요...?
linar 인가 그건 플러그인 없으면 추출 불가능이라고 하고, Vix 인가 하는건 찾아봐도 안나오던데...
2009-08-21 15:43 #
추출은 했긴 했는데 이미지는 불러들이지 못하고
ks파일도 열어보니까 문자 깨져서 나오고(참고로 코드는 유니코드하고 shift_jis 둘다 해봤슴다)
난감하네요..ㄷㄷ
기리기리2라서 그런걸까요? 요즘 최근나오는것들 엔진이 기리기리2인것같던데..
2009-09-03 07:17 #
메프님의 글을 읽다가 문득 궁금한점이 생겨서 질문을 올려봅니다.
.ks파일을 수정하여 재저장한뒤 테스트할때는 기리기리 한글SDK 를 사용하면
테스트가 가능하다고 하셨는데, 실제로 모든한글화가 끝나서 점검을 할 무렵이나 배포시에도
저 실행파일을 사용해야 하는것인가요? 본래 실행파일 자체에 원본의 파일을 읽도록 경로라던지
시나리오 파일이 내장되어있다고 말씀하셨던부분이 잘 이해가 가지않아서요.
보통 한글패치들을 보면 그에 따른 전용한글판실행아이콘이 존재하던데 ,
새롭게 exe를 생성해주어야하는건지 아니면 기존 실행파일에서 경로설정방법이 있는건지
그것도 아니면 SDK나 Konj 같은 테스트실행파일의 아이콘과 몇가지를 바꾸어 그것을 한글패치
실행파일로 사용하는지 궁금해서 올려봅니다.
아직 그부분까지는 시도를 해보지않았지만 알고싶은 부분이라서요.
혹여 시간되시면 답변부탁드리겠습니다.
2009-11-23 01:18 #
만약 다른 분이 오셔서 질문하실지 모르니 일단 여기에 적어봅니다.
저 같은 경우 한글 SDK의 krkr을 이용하며, 리소스해커로 아이콘을 변경하여 배포하고 있습니다.
2009-09-04 16:34 #
게임 설치시 *.xp3 파일과 *.xp3.sig 파일이 동시에 존재하는 경우는 대부분
암호화 되어있는 상태라고 할 수 있을 것 같네요.
여러가지 툴로 시험해봤습니다만 전부 정상적인 오픈에 실패했습니다.
최근에 키리키리로 나오는 게임들은 대부분 이런 형태를 취하고 있어서 소스 추출이 매우 어렵네요.
다른 부분의 수정이 간편한 만큼 첫 작업이 얼마나 중요한 일인지 새삼 깨닫고 갑니다.
더불어 meph님, 올려주신 강좌 잘 보고 있습니다. 감사드려요. 몇번이고 종종 들러서 참고하고 있습니다.
2009-11-20 18:51 #
시나리오 파일을 온스크립터로 읽을수 있도록 변환 시켜주는 프로그램 같은게 있나요?
기리기리엔진을 포팅시키는 방법은 아직 몰라서... 파일 추출은 할줄 아는데 데이타
파일을 0.txt 로 바꿔줘야 하는데 이 부분이 걸려서...
2009-11-23 01:17 #
그 부분은 잘 모르겠네요.