2008년 05월 13일
World in Conflict - Localization Data 구조
WiC는 기본적으로 모든 LocData가 UTF-8(유니코드 표준 중 하나로, 1Byte로 표현할 수 있는 글자들은 1Byte의 용량만을 차지하고 1Byte로 표현 못하는 글자의 경우 2Byte 이상의 용량을 차지하도록 해 용량차지를 줄인 규격입니다.)의 형식으로 저장되는 것으로 볼 때 처음 게임 제작 시부터 다국어 지원을 염두에 둔 것을 알 수 있습니다.
LocData의 위치:
WiC의 LocData는 모두 WiC 폴더에 있는 wicloc##.sdf(여기서 ##은 숫자) 파일들에 "압축"되어 들어가 있습니다.
LocData 추출 방법:
WiC MOD SDK를 설치하시면 덩달아 같이 설치되는 WinSDF.exe라는 프로그램으로 sdf 파일의 내부에 들어 있는 파일을 모조리 풀 수 있습니다.
※ 주의: wicloc##.sdf 파일을 푸실 때에는 무조건 번호 순서대로 풀어야 합니다. 버전 1.0.0.0일 때부터 번호가 순서대로 붙어있는 것이라 순서를 제대로 지키지 않으면 옛날 대사로 덮어씌워집니다.
LocData의 구조:
WiC의 wicloc##.sdf 파일을 모조리 풀어버리면 약 200개 가량의 *.loc 파일과 몇 십개 가량의 *.mp3 파일이 추출됩니다.
이 파일들은 다음과 같은 폴더 구조를 가지고 있습니다.
[Root]
┣ directory.loc
┣ errors.loc
┃
┣ [Campaign]
┃ ┗ [Subtitles]
┃
┣ [Commanderai]
┃ ┣ [Multiplayerais]
┃ ┃ ┣ [air]
┃ ┃ ┃ ┗ [각 AI 성향별 폴더]
┃ ┃ ┣ [armor]
┃ ┃ ┃ ┗ [각 AI 성향별 폴더]
┃ ┃ ┣ [army]
┃ ┃ ┃ ┗ [각 AI 성향별 폴더]
┃ ┃ ┣ [engineer]
┃ ┃ ┃ ┗ [각 AI 성향별 폴더]
┃ ┃ ┗ [fpm]
┃ ┃ ┗ [각 AI 성향별 폴더]
┃ ┗ [Singleplayerais]
┃ ┗ [Map별 폴더]
┃
┣ [Cutscenes]
┃ ┗ [Maps]
┃ ┗ [Map별 폴더]
┃
┣ [Guis]
┃
┣ [Juice]
┃
┣ [Maps]
┃ ┗ [Map별 폴더]
┃
┗ [Units]
자아... 폴더가 무지하게 많습니다 -_-;;;
그럼 이제 각 폴더별로 들어있는 자료의 내용을 까발려보겠습니다.
[Root]
이 폴더에는 일반적으로 게임 실행 시에 발생할 수 있는 오류 문자열과 멀티 플레이 관련 문자열이 들어 있습니다.
directory.loc: 멀티 플레이 관련 문자열(~님께서 통제지점을 점령하셨습니다. 따위의 문자열)
errors.loc: 게임 실행 시에 발생할 수 있는 거의 모든 상황에 대한 오류 메시지(DVD 내놔~ 따위의 문자열)
[Campaign]
이 폴더에는 싱글 플레이 캠페인에 관련된 자료들이 포함되어 있습니다.
campaign.loc 파일(Campaign 폴더 루트): ㆍ 싱글 플레이 동영상 다시 보기 메뉴에서 보실 수 있는 각 임무 별 제목
ㆍ 임무 완수 시에 획득할 수 있는 훈장, 표창의 이름과 설명
phone_mission_3.loc ~ phone_mission_14.loc(subtitles 폴더): ㆍ3~14까지의 임무 시작 전에 재생되는 동영상에서 나오는 자막
[Commanderai]
이 폴더에 있는 loc 파일들에는 캠페인이나 멀티 플레이 시에 플레이어나 봇(컴퓨터)의 이름(부대에 마우스 가져다대면 표시되는 지휘관 이름)이 담겨 있습니다.(약 112개 정도의 loc 파일)
이 폴더에 포함되어 있는 파일의 규칙은 다음과 같습니다.
Commanderai 폴더 루트: [Map 이름][지휘관 이름]_[병과].loc
ex) ustown4bannon_armor.loc (ustown4에서 등장하는 armor[기갑] 병과의 bannon[배넌])
※ Singleplayerais 폴더의 파일이름 규칙은 Commanderai 폴더 루트와 동일
Multiplayerais 폴더: skirmish1_[세력]_[병과].loc
[Cutscenes]
이 폴더에는 게임 진행 도중에 실시간 렌더링으로 표시되는 동영상(Cutscene)들의 대사가 포함되어 있습니다.
파일이름 규칙: [Map 이름]cinematics.loc
[Guis]
이 폴더에는 GUI(Graphical User Interface; 그냥 게임 메뉴라고 보시면 됨)와 관련된 문자열들이 포함되어 있습니다.
[Juice]
이 폴더에는 Massgate 관련 문자열과 게임 내 설정 메뉴 일부가 포함되어 있습니다.
gametext.loc: 설정 메뉴 일부
massgate.loc: Massgate에서 표시되는 문자열
[Maps]
이 폴더에는 캠페인 진행 시, 멀티 플레이 시에 표시되는 각종 Map별 대사가 포함되어 있습니다.
supportweapons.loc(Map 폴더 루트): 싱글 플레이와 멀티 플레이에 등장하는 각종 TA(전술지원)의 이름, 설명
Map별 폴더에 있는 파일이름 규칙: [Map 이름].loc - ㆍ 멀티 플레이 관련 대사(안나오는 것으로 추정)
ㆍ 싱글 플레이에서 임무 선택 시에 나오는 임무 제목, 임무 설명
[Map 이름]_singleplayerdata.loc - ㆍ 싱글 플레이 대사
ㆍ 해당 임무에서 등장하는 각종 Objective(목표) 제목과 설명
[Units]
이 폴더에는 각 부대별 이름, 설명, 특수능력 이름, 특수능력 설명이 포함되어 있습니다.
unittypes_wic.loc : 멀티 플레이에 등장하는 각 세력별 모든 부대의 이름, 설명, 특수능력 이름, 특수능력 설명
unittypes_wic_singleplayer.loc: 싱글 플레이에 등장하는 모든 부대의 이름, 설명, 특수능력 이름, 특수능력 설명
*.loc 파일의 구조:
별 거 없습니다. -_-;;;
그냥 닥치고 텍스트 파일입니다. 그냥 메모장으로 여셔도 아무런 문제없이 열립니다. -_-;
*.loc 파일의 구조는 다음과 같습니다.
[String ID] [String]
정말 간단하지 않습니까? -_-;;;;
String ID: 게임에서 특정 문자열을 읽어올 때 참조하는 ID 값입니다. 물론 "절대로" 건드리면 안 됩니다.
건드렸다가는 해당 ID를 사용하는 대사가 게임에서 "뭔 짓을 해도" 안 나옵니다. -_-(당연)
String: 뭐 있겠어요? 그냥 대사죠[...]
※ 주의: *.loc 파일은 모두 UTF-8 형식의 파일들입니다. 저장하실 때 ANSI, 유니코드, 유니코드(Big Endian)따위로 파일의 인코딩을 변경하셨다가는 게임이 실행되지도 않고 윈도우로 튕겨버립니다. -_-... 메모장에서 다른 이름으로 저장해보시면 파일 저장창 밑부분에 인코딩이란 항목에서 확인하실 수 있습니다.
캠페인 한글화 방법:
별 거 없습니다. -_-;
1) wicloc##.sdf 파일을 모조리 다 하드에 풀어버린다.
2) 캠페인에 해당하는 파일을 찾는다.(임무 하나 당 파일 4개씩임)
3) 메모장이나 기타 프로그램으로 *.loc 파일을 연다.
4) 죽어라 번역한다.
5) UTF-8로 번역한 것을 저장한다.
6) 번역된 파일을 loc 파일의 폴더 구조에 유의하며 WiC 폴더에 "폴더 채로" 복사한다.
7) 게임을 실행해서 확인한다.
끝입니다. -_-;;;;
ex) 싱글 플레이 캠페인의 첫 번째 임무같은 경우에는 다음의 파일을 번역하시면 됩니다.
intro_cinematic.loc (campaign\subtitles\ 폴더)
seattle2cinematics.loc (cutscenes\maps\seattle2\ 폴더)
seattle2.loc (maps\seattle2\ 폴더)
seattle2_singleplayerdata.loc (maps\seattle2\ 폴더)
# by | 2008/05/13 05:21 | 한글화 | 트랙백 | 덧글(2)







