안녕하세요 새항아리입니다.

 

제목 : GBA 한글화 쌩초보 강좌 - 3

부제목 : 대사 위치를 찾아보자.

 

강좌 시작합니다..

 

우선 대사라는게 무엇인지 부터 기본 개념부터 정리하고 시작하도록 하겠습니다..

컴퓨터는 인간과 달라서 언어라는 개념이 다릅니다.

 

그러면 어떻게 인식을 하냐.. 뭐 들어서 아시겠지만. 전기가 들어오면 1, 안들어 오면 0, 혹은 그 반대로 0,1로 인식하게 됩니다. 전기적 신호 4개를 모아 4bit 이 4bit를 2개 모으면 1byte가 됩니다

(4개로 1-16까지를 표시하는겁니다. 어떻게? 2진수로..)

그리고 그것을 1000여개 정도를 모으면 1kbyte 이게 1000여개면 1mbyte가 되는 겁니다.

즉 요즘 하드디스크로 100gb를 무난하게 쓰는데요. 이건 1바이트의

1000개의 1000개의 1000개의 100개입니다.

하드디스크는 전기적 자기장을 띄고 있어서 자기의 음극과 양극으로 0,1을 처리하는점이 조금 다르죠..

 

갑자기 컴퓨터 개론시간에나 배울 기초상식이 나온 이유는..

바로바로바로.. 한글화에도 이 기본 지식이 필요하다는 점입니다.

롬이 한글을 이해하면 얼마나 좋겠습니까만..

 

롬은 기계의 코드밖에 이해하지 못합니다.. 즉 대사를 출력하기 위해 대사를 직접 저장하는게 아니라 정해진 규칙에 맞는 코드만 담고 있다는 점이고. 이 코드를 다른 코드 중에서 찾아내는 것이 이번 강좌의 전부입니다.

 

대사는 한글화 하기 위해 가장 중요한 스크립트입니다. 왜냐하면 이게 번역되지 않으면 한글화라고 할수 없을테니까요..

 

우선 저번 강좌에서 살펴봤던 하로보츠부터 한번 찾아보도록 하겠습니다.

 

사용자 삽입 이미지


이렇게 폰트가 적혀 있습니다. 이 폰트를 사용하는 부분이 대사부분 아니겠습니까?

 

쉽게 말하자면 이 폰트 중에 37번째, 38번째, 48번째 55번째 77번째를 출력하면..

아이시테루 가 됩니다. (사랑해요라는 뜻.)

컴퓨터가 만약 코드로 37,38,48,55,77 이라고 넘겨받으면 사랑해요라는 뜻을 이해하지 않아도.

아이시테루 라고 대사를 출력할수 있게 된다는 것입니다.

 

즉.. 이미 출력된게 37,38,49,55,77이라면 이게 저장되어 있는 코드를 찾아가면..

대사를 찾을수 있다는 거 아니겠습니까?

 

그런데 어떻게 찾느냐? 우선 서치알로 찾는 방법을 찾아봅시다.

서치알도 종류가 여러개이기 때문에 저는 서치알 330 한글판으로 찾아보겠습니다.

서치알 X는 저한테는 조금 불편하더라구요..(역시 익숙해지면 헤어나올수 없는 게 유틸의 특성?..)

 

사용자 삽입 이미지


우선 쉽게 찾기 위해 ABCabc123순으로 폰트를 덮어 씌워 봅시다.

이유는 서치알에서 기준 중 하나이기 때문입니다.

 

사용자 삽입 이미지


저장하고 실행해보면 다음과 같이 폰트가 수정되어 있는 것을 확인할 수 있습니다.

변경이 안된다면요?.. 대사폰트를 잘못 찾으셨습니다.. 다시 찾으셔야 해요..

^^;

 

그중에 조금 길죽한 것을 찾아보죠.. SFJepSBS가 있네요..

 

사용자 삽입 이미지


우선 서치알을 실행해 롬을 읽어옵니다. 그리고 관련을 누르고 새로 검색을 누르면..

 

사용자 삽입 이미지


위와같이 뜨고 거기에 찾기부분에 위에서 본 대사를 집어넣습니다.

배열순서를 정해도 되지만 안해도 다 찾아집니다..

 

사용자 삽입 이미지


찾아졌네요..

 

사용자 삽입 이미지


이부분인데.. 이게 대사가 맞는지 확인해야 겠지요?.

 

사용자 삽입 이미지


대사를 조금 수정해봅니다. 36이라는 코드가 S를 뜻하는 듯 하니까 그걸로 채워넣어 봅시다.

이처럼 수정하면 SSSS로 나와야겠지요..

 

사용자 삽입 이미지


대사가 수정되었군요. 이부분이 대사부분입니다. 꼭 주소를 기억해 둡시다.

 

이번에는 조금 다르게 한번 찾아보도록 하겠습니다. 스크류 브레이커를 열어봅시다.

 

폰트가 규격 16x16 사이즈가 아니고 각기 조금씩 다르죠?

 

사용자 삽입 이미지


그러면 여기에도 ABCabc123으로 처리할수도 있겠지만 이번에는 조금 다른방식으로 찾아봅시다.

 

사용자 삽입 이미지
 

대사를 한번 보면 길죽한 대사를 찾아보면.. 츠키마시타조!(つきましたぞ) 가 되겠네요.

위 폰트를 기준으로 보면.. あ가 1번째 글짜 い가 2번째 글자 ... 이런식으로 본다면..

 

つ는 18

き는 7

ま는 31

し는 12

た는 16

ぞ는 64 번째 글자입니다.

그러면 이걸 16진수로 바꾸어 봅시다. 왜냐하면 아까도 말했듯이 컴퓨터는 1과 0밖에 모르기 때문에 2진수로 모든 것을 이해합니다. 즉 10진수로 16번째 글자라고 말을 해도 못알아 먹는다는 겁니다.

 

그런데 사람에게 2진수는 조금 어렵습니다. 01001001111010010001 이렇게 써있으면 이게 뭔지 쉽게 알수 가 없잖아요?

그래서 나온게 16진수와 8진수입니다. 그런데 8진수를 안쓰고 16진수를 쓰는 이유는 8진수가 0-7까지 쓰다보니 이게 10진수로 보인단 말입니다.

 

왜냐 271635 이런 수가 있으면 이게 2십 7만 1천 6백 3십 5로 인식될수 있다는 것이죠..

즉 16진수로 적었을경우 영문 a-f까지가 쓰이니까 10ac998d7ef를 보면

아 이거 16진수였지? 하고 인식하게 된다는 겁니다.

(사실은 조금 다르지만 초보분을 위해 이렇게 이해하도록 합시다.. <- 저도 공대생이라.. ^^;)

 

10진수를 16진수로 간단하게 변경 하려면.. 윈도우 기본 내장 계산기에서 계산기 종류를

공학계산기로 바꾼후 DEC(10진수)로 적고 HEX(16진수)를 클릭해보면 바뀝니다.

 

18는 12

7는 07

31는 1F

12는 0C

16는 10

64는 40(16진수) 번째 글자를 말하지요?

이것을 한번 롬에서 찾아볼까요? 대사장 같은 HEX에디터를 열고 찾기를 눌러

 

사용자 삽입 이미지


12 07 1f 0c 10 40을 찾아봅시다. 자료형식을 HEX로 바꾸는 정도의 센스!!

 

사용자 삽입 이미지

 

 

찾아지네요.. 이부분이 맞는지 확인하려면.. 같은걸로 밀어보면 되겠죠?  전부 12번째 폰트를 출력하라고 전부 12로 밀어봅시다.


 

사용자 삽입 이미지


이처럼 밀고 저장한후 다시금 롬을 불러오면

 

사용자 삽입 이미지

 

대사가 변경되었네요. 대사 스크립트 코드부분을 찾은겁니다.

 

이번에는 또 다른이야기를 해봅시다. 모두의 쇼기를 한번 찾아봅시다.

사용자 삽입 이미지


우선 이것은 처음에 썼던 방식인 ABCabc123으로 변경해봅시다.

 

사용자 삽입 이미지


변경후 대사를 찾아보면

 

사용자 삽입 이미지


좀 긴걸로 cBChi가 있네요.

 

사용자 삽입 이미지


서치알로 찾아보면..

 

사용자 삽입 이미지
 
하나 나오기는 하는데.. 위처럼 하나로 밀어봤더니 변경이 안되는군요..
즉 대사부분이 아니라는 것..
 
그럼 어떻게 찾아?!!!
 
이럴때에는

 
사용자 삽입 이미지

 

한칸씩 띄어서 찾아야 합니다. 이유는 2바이트가 한문자로 되어 있을 수 있기 때문입니다.

1바이트는 8개입니다. 2의 8승은 256.. 256개의 수치를 표현할 수 있죠..

하지만 한자어가 포함되거나 해서 폰트갯수가 255개를 넘어가면?

 

2바이트로 표현해야하는 겁니다.2바이트로 넘어가면 6만5천여개까지 표현이 가능하기 때문이죠.

어쨋건 한칸씩 띄어서 찾아보면.


 

사용자 삽입 이미지


검색결과가 두개 나오네요. 둘다 테스트 해보면 첫번째부분이 대사..

 

사용자 삽입 이미지
 
확인해보면 CCCCC로 변경 되었죠? 대사 코드 부분이 맞는겁니다..
 
 
이번 강좌도 여기에서 마쳐야 겠네요..
 
강좌를 마치기 전에 부탁(?)드리고 싶은 부분이 있습니다.
 
우선 한글화를 하시려면 원본은 반드시 백업 해놓으시고 하시길 바랍니다.
이번 강좌처럼 ABCabc123으로 변경한후 다시 변경하려면 귀찮거든요..
원본을 꼭 마련해 놓으시길..
 
두번째..주소나 기억해야할 부분은 TXT파일로 저장해 놓으시는게 좋습니다.
 
예로 모두의 쇼기를 이야기 해보면..
릴리즈 후에 작업 파일을 사무실에 처박아 놓아서 대략 이런 파일 이었습니다.
 
---모두의 쇼기---
 
대사 폰트 주소 AAAAAA - BBBBBB
본쇼기 대사주소 CCCCCC - DDDDDD
회전쇼기 대사주소 EEEEEE - FFFFFF
묘수쇼기 대사주소 GGGGGG - HHHHHH
조작설명 대사주소 IIIII -  JJJJJJ
 
압축 이미지
115 - 116 선수 후수 이미지
186 - 275 메뉴 이미지
283 - 298 설정 이미지
339 - 346 선택문이미지
436 - 461 묘수쇼기 이미지
677 - 748 회전쇼기 이미지
786 - 795 조작설정 이미지
 
-------------------------------------
 
이런식으로 구별해놓으셔서 TXT파일로 저장해 놓으십시오.
 
만약 지금까지 강좌를 제대로 이해하셨다면.
대사폰트 주소와 대사 주소시작부분의 주소는 적어놓으실 수 있겠죠?
 
대사폰트 주소가 뭐냐면? YYCHR에서 제목표시줄에 표시되는 부분이며.
주소시작부분은 대사장이나 서치알에서 대사가 출력되는 곳의 주소입니다.
 
그럼 다음 강좌는 고유번호표 작성 및 제어코드를 알아보자 가 되겠습니다.

댓글을 달아 주세요

  1. 이전 댓글 더보기
  2. 막장인 2007.10.21 00:03  address  modify / delete  reply

    위 폰트를 기준으로 보면.. あ가 1번째 글짜 い가 2번째 글자 ... 이런식으로 본다면..
    이라는 문구가있는데요 폰트기준으로 숫자부터 시작하면 0이 1번째 글자가 되는건가요?

    • Favicon of https://shouting.tistory.com 새항아리 2007.10.21 03:51 신고  address  modify / delete

      해당 부분에 폰트를 보면 숫자는 없습니다.
      폰트를 보고 고유번호가 일본어 아이우에오 식으로 메겨진다는 것을 파악한 후에 아를 1번으로 놓고 계산해 찾아본겁니다. 이렇게 안찾아지면 아를 0번에 놓고 찾아봐야겠죠.

      그리고 폰트를 기준으로 하면 0이 1번째 글짜가 되느냐고 질문하셨는데 어떤 폰트를 말씀하신건지 모르겠습니다. 폰트의 시작점이 0부터 시작했다면 0이 첫번째 글자가 되었을 것이고 1부터 시작했다면 1이 첫번째, A부터 시작했다면 A가 첫번째, 아부터 시작했다면 아가 첫번째 글자가 되는 것이죠.

      즉 폰트를 직접 보고 시작하는 게 아니면 몇번째 글자인지 알수가 없고 게임마다 어떤게임에서는 폰트의 첫번째 글자에 따라 고유번호표의 처음 즉 00이나 01이 어떤 글자인지 알아낼 수 있는 것입니다.

      그리고 제가 알려드린 두번째 순서에 따라 코드를 찾는 방법은 실수하기도 쉽고 제대로 찾기도 어렵습니다. 대부분의 경우라면 알파벳으로 바꾸시고 서치알로 찾는것을 추천합니다.

  3. 세스 2007.10.27 10:05  address  modify / delete  reply

    음..제가 지금 서치알을 다운받았는데요;;
    [이번에는 이해가 잘 되서 다행이지만, 이번엔 서치알이 문제네요;]
    실행이 안되는건 왜일까요;

  4. 카시만 2007.11.29 22:08  address  modify / delete  reply

    음. 제가 역전재판 롬의 대사 폰트를 찾아서 그걸 영(대소문)과 숫자로 바꿨어요.
    그래서 서치알로 대사를 찾으려고 하는데
    얼씨구나 대사가 찾아 지지 않네요.
    오타를 낸 것도 아니고[...]
    분명히 저장도 제대로 했고. 파일도 제대로 열었는데 말이죠[..]
    제가 어느 과정에서 실수를 하거나 놓친 것 같기도 하고[명확하지 못 하냐!!]
    폰트도 제대로 출력되는데, 혹시 제가 폰트를 붙여 넣기 할 때 잘못 붙여넣기 한 걸까요..?

    • Favicon of https://shouting.tistory.com 새항아리 2007.11.30 00:52 신고  address  modify / delete

      2바이트인지 확인해보세요. 위에서도 1바이트 검색으로는 검색되지 않아 2바이트로 검색되는 부분에 대해 설명했었습니다.

      다시한번 천천히 읽어보시고 차근차근 해보세요

  5. 카시만 2007.12.11 13:30  address  modify / delete  reply

    아무리 해도 찾아지지 않ㅅ브니다[며칠만이냐 너는!]
    아무래도 대사 파일이 압축되어 있는 것 같습니다[..]

  6. 안습 2008.02.10 11:21  address  modify / delete  reply

    서몬나이트2를 까봤는데요
    강좌 끝까지 다보고 순서까지 바꿧는데
    아에이오우 순이 아니네요-ㅂ-;;
    이럴땐어떻게?!

    • Favicon of https://shouting.tistory.com 새항아리 2008.02.10 12:52 신고  address  modify / delete

      서몬나이트가 해당 강좌에 없는데 어떤강좌를 보시고 적었는지 모르겠네요.
      이 글을 쓴게 제작년이라 댓글을 다실때 해당 강좌에 달아주세요.

  7. 부르릉 2008.06.15 22:26  address  modify / delete  reply

    안녕하세요 저대로 했는데 폰트가 안잡아지는군요 쓴게 뭐같이 쓰면 안잡아지나요 -_-:;;;
    하루 통째로 해봤는데 안잡혀서 미치겠네요 ;;;

  8. TimeDalek 2008.09.22 22:41  address  modify / delete  reply

    드디어!! 대사주소 찾는 법을 이해했습니다..(갑자기 요즘 들어 다시 하고싶어져서요...)

  9. 음.. 2008.09.28 17:12  address  modify / delete  reply

    ABCabc123순으로 폰트를 덮어씌운다는게 무슨말입니까?...자세하게좀 알려주세요.. ㅠㅠ
    기존에있던 폰트들을 지우고 ABCabc123 순서대로 글자,숫자를 채워넣는다는겁니까?.

    • Favicon of https://shouting.tistory.com 새항아리 2008.09.28 20:02 신고  address  modify / delete

      그 다음 그림을 기준으로 보면 하려는 게 뭔지 아실겁니다.
      원래 있던 폰트 위에
      ABCDEFG---abcdefg---12345----로 덮어 그리는겁니다/.

  10. 모르겠네 2008.10.14 19:19  address  modify / delete  reply

    영어롬에서는 어떻게 ABCabc123을 덮어 씌우지요?
    서몬나이트 1 영판에서는 대사폰트가 (기호)-(숫자)-(알파벳)-(일본어) 이렇게 배열되 있는데
    일본어의 '아'부터 ABCabc123을 덮어 씌우는 것처럼 알파벳의 'A'부터 덮어 씌웠는데 안 되네요.

    • Favicon of https://shouting.tistory.com 새항아리 2008.10.15 00:11 신고  address  modify / delete

      하신 방법이 맞습니다만 하실때 뭔가 실수가 있으셨던것 같네요.
      아니면 대사가 압축되어있거나 할수도 있습니다.
      즉 '아'부터 ABC 방식으로 채워넣으시든 숫자부터 ABC로 채워넣으시던 상관이 없습니다.
      방법이 틀린건 아니므로 롬을 직접봐야하는데 제가 본적이 있긴했었는데 압축 아니었던걸로 기억합니다.
      기억이 가물가물해서 틀릴지도 모르지만 서몬나이트1의 경우는 간단했었던걸로 기억됩니다.
      조금더 천천히 차근차근 한단계한단계 밟아보시면 뭔가 답이 나올것 같습니다.

  11. 최후잡티 2008.10.14 20:17  address  modify / delete  reply

    2막까지는 잘 따라왔는데
    여기서 이해 못하겠습니다
    저기서 말하는 대로 폰트를 덮어쒸었다 칩시다
    하지만 롬자체 내용은 그래픽만 바뀌는거 아닌가요
    바뀐 폰트를 영어로 그대로 치면 나오는 건가요-_-;;
    원래 폰트는 따로있을텐데..그걸 이미지로 바꾸고 그 폰트가 나오면 그대로 영어로 치면 찾아진다니 이해가...
    2번쨰 방법도 잘 모르겠네요
    폰트는 렘용량중에서 극히 일부분인데
    폰트있는곳 기준으로 번호를 잡고도 나올수가 있나요

    • Favicon of https://shouting.tistory.com 새항아리 2008.10.15 00:24 신고  address  modify / delete

      우선 첫번째 질문만 답해드리겠습니다.

      가나다라마바사아자차카타파하 라고 적힌 폰트가 있다고 칩시다.
      이걸 ABCDEFGHIJKLMN 라고 폰트를 넣어놓으면 하마 라는 글자를 찾는다고 치면 NE를 찾으면 됩니다.
      이건 대사장이나 롬이 NE를 이해하고 찾는게 아니라 첫번째에서부터 14번째 폰트가 불려온후 5번째 폰트가 불려온다는 의미로 이해합니다.
      즉 첫번째 위치가 20번이라면 34번째 폰트를 출력한 후 25번째 폰트를 출력한게 되죠.

      즉 ABCabc123의 식으로 폰트를 덮어놓으면 인간이 인식하기에는 대사에 나온 알파벳과 숫자만 기억해 검색하면 그 단어가 몇번째 폰트인지를 체크하고 그 만큼 검색한다는 의미이죠.
      하마를 검색하기 위해 덮어놓은 NE를 통해 14번째와 5번째에 해당할만한 대사들을 뽑아내어주는 일이 대사장입니다.
      13 04 / 24 15 / 87 74 / 61 52
      십진수로 표현했을때 NE로 검색될 데이타를 적어보면 위와 같습니다. 이 때문에 대사가 흔히 나오는 단어가 아니거나 길어야만 이런 모든 작업을 끝내고 하나의 검색결과만 나타내 줄수 있는 거죠.

      이해를 하셨는지 모르겠습니다. 그리고 두번째 질문은 첫번째 질문을 이해하셨다면 당연히 이해되실거라 생각됩니다.

      다만 이제부터 질문은 한식구에 해주시기 바랍니다. 이 블로그가 개인블로그이므로 답변을 하려면 저밖에 할수 없고 개다가 제가 요즘 정신이 없어서 블로그에 이렇게 긴 답글을 달 시간이 별로 없네요.

      간단한 질문이라면 몰라도 조금 긴 답변을 요하는 질문은 한식구를 통해주시기 바랍니다. 죄송합니다.

  12. 최규영 2008.10.16 01:21  address  modify / delete  reply

    새항아리님혹시버디버디나네이트온아이디있으세요?있으면아이디가르쳐주세여

  13. Favicon of http://blou.tistory.com Bleu 2009.04.19 08:48  address  modify / delete  reply

    혹시 일일이.다 123~abc를 써야하나요 ㄱ-

  14. Favicon of http://blou.tistory.com Bleu 2009.04.19 12:14  address  modify / delete  reply

    이 대사장.. 프로그램 좀 보내주시면 안되나요.. 올려주시거나요 ㅠ.ㅠ

  15. Favicon of http://blou.tistory.com Bleu 2009.04.19 13:25  address  modify / delete  reply

    하악.... 123 ~ abc 덮어 씨우는것은 이해를 했는데요 ^^;;
    2번쨰 폰트 번호로 하는것은.. 잘안되네요.....
    포켓몬 에메랄드 버젼으로 공부 하고 있는데요....
    이것을 보면.. .대사폰트 그래픽.. 뭐 어떤건지는 알겠는데요..
    대사폰트가 ぁ부터 시작안해서... 01이 아닌것 같고 번호는 모르겠고 ㅠ.ㅠ 좀 열어봐주셔서 알려주시면 안되나요..
    에메랄드 버젼 대사 폰트 시작은 2A0000 , 2BPP NGP 이예요 ㄱ-

  16. 사과샐러드 2010.01.16 19:44  address  modify / delete  reply

    12시간만에 성공했습니다..수많은 삽질 끝에 그래도 성공하니 좋네요 ..좋은 강좌 정말 고맙습니다.

  17. 역빠 2010.09.23 23:14  address  modify / delete  reply

    흐어....소생하는 역전DS 한글화하고 싶은데, ABC 덮어 씌우는것까진 했거든요?
    그다음이 안되네요. 예를들어 이소가시이노니 이 히라가나를 ABC로 씌워서 BOuLBYV 가 나왔는데, 서치알로 찾아봐도 안나오네요. 제가 뭘 잘못한건지 알려주세요.........................

    • Favicon of https://shouting.tistory.com 새항아리 2010.09.24 11:47 신고  address  modify / delete

      DS는 한글화 하는 방식이 GBA 와는 조금 다릅니다.
      폰트와 스크립트가 분리되어있기 때문에.
      DS 한글화 강좌를 찾아보세요..
      몇개 있었던걸로 기억합니다.
      한글화 손 땐지가 꽤 되어서 기억도 가물하네요.

  18. 질문이요 2011.04.05 21:04  address  modify / delete  reply

    대사폰트는 확실히 찾았습니다.
    그리고 님이 알려주신데로 순서대로 ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890 으로 변경하였습니다.
    그랬더니 게임안에서는 확실히 변해있더군요.
    그런데 왜 서치알로 찾아지지가 않는 걸까요?
    (나루토 RPG - 우케츠가레시 불의 돌 입니다.)

    • Favicon of https://shouting.tistory.com 새항아리 2011.04.05 21:27 신고  address  modify / delete

      한칸씩 띄어서 찾아보시고 그래도 안되면 저도 도와드릴길이 없네요.
      한글화에 손땐지가 너무 오래되어서..
      네이버 한식구 카페에 물어보세요.

  19. 111111 2011.11.25 20:45  address  modify / delete  reply

    테이블표를 작성해서 만들었는데 네모만 잔뜩 뜨고 안뜨네요. 유니코드 설정 어떻게 하나요?

  20. 김원종 2012.01.13 11:22  address  modify / delete  reply

    ABC....
    이런거1개1개 적어야되나요?
    손이너무아프네요

  21. ㅋㅋㅋㅋ 2012.03.16 16:17  address  modify / delete  reply

    YYCHR로 보면 대사 '폰트'는 없는데
    서치알로 'Start Game'을 'Stact Game'으로 바꾸면 바뀌네요 ㅎㅎ
    서치알이 한글이 입력이 안되서 아쉽습니다...