본문 바로가기

쓰기


안녕하세요.


요즈음 여유시간에 예전에 찾다가 포기한 게임의 코드를 찾으려 하고 있는데 잘 안됩니다.

제가 찾으려고 하는 게임은 아래쪽에 질문올린 [030530][Complets] ママしぼり(마마시보리) 인데요.

아랄트랜스 디버깅을 하여 대사를 불러오면 아래같이 나옵니다.



1.jpg


옆에 보시면 40A6E0, 40A870 이 두개가 나옵니다.
40A6EO이 대사창에 대사가 나오는 코드 이고 40A870은 마우스 우클릭을 하여 대사창을 임시로 한번 보내고 다시 대사창을 불렀을때 대사 나오는 코드 입니다.

문제는 40A6E0이 게임화면에 대사가 뜨면 디버깅에서는 처음 전체문장이 나오고 그 문장직후에는 문장의 첫 글자부터 끝의 마침표까지 나옵니다.


가령 ありがとう 면 ありがとう 고맙습니다 라고 디버깅에 뜨고 그 다음에는 あ, り, が,と, う 라고 나옵니다. 그래서 한글자씩 나올때는 번역이 엉망이지요.

AT코드 찾아서 적용해보니 게임화면에는 궑, 나무, 궥 이런 식으로 해석이 나옵니다.


찾은 코드는 이러합니다. ENCODEKOR,HOOK(0x0040A6E0,RETNPOS(COPY),TRANS([ESP+0x10],TWOBYTE,REMOVESPACE,ONEBYTE,OVERWRITE(IGNORE)))

위 AT코드에서 40A870 을 뺀 이유는 굳이 없어도 되기 때문입니다.

위 코드를 적용하면 타이틀 메뉴 번역과 선택지 번역 및 대사창에서 마우스 우클릭을 하여 대사창을 한번 숨기고 다시 냈을때 나오는 대사 번역에 문제없습니다.


이렇게 나옵니다.



2.jpg


타이틀 화면만 스샷 올리는데, 선택지 번역도 번역 잘됩니다.

여기서 처음부터를 누르면 게임이 시작됩니다.



3.jpg


번역이 이상하게 나옵니다. 분명 맞게 찾았거늘!!

이 상태에서 마우스 우클릭을 하면 대사창이 한번 없어지고 게임화면만 나오는데, 다시 마우스 우클릭을 하면 대사창이 게임화면에 나옵니다.


그러면 이렇게 나옵니다,



4.jpg


어느아침일에대해 라고 번역이 잘되어 있습니다. 


아무래도 아랄디버깅응 할때 대사코드 40A6E0 에서 처음 전체 문장이 나오고 다시 한 글자씩 다시 나오는데 이 한글자씩들이 게임화면에 적용되는 거 같네요.
아랄디버깅으로 보면 맨 처음에는 하나의 첫 문장이 나옵니다. 이 것만 적용시켜 게임화면에 나오게 할 수 없을까 싶어서

처음 전체 문장이 나왔을때 브레이크 먹여서 뜨는 수치가 ESP+0x10 인데 이건 나중에 한글자씩 일때와 같습니다.

아마도 이 문제는 엔진의 문제가 아닌가 합니다.


현재 제가 찾고있는 [030530][Complets] ママしぼり(마마시보리)는 실행파일 외 XEX.EXE 라는 파일이 있는데요.

제가 과거에 찾아 폴라리스가 연구소 역활을 하던 시기에 올린 게임 중  [080229][Complets] ママしぼり2 ~ママしぼりの事情~(마마시보리2 ~마마시보리의 사정~)

이라고 마마시보리 속편이 있는데 ママしぼり2에는 실행파일 외 C4.EXE 라는 파일이 있습니다.


참고로 Complets사에서 발매한 게임들 중 XEX.EXE가 있는 게임들은 모두 아랄디버깅 시 대사가 진행되면 전체 문장을 한번 내보이고 한글자 씩 나옵니다.

문장->한글자씩 그 문장이나 단락완성->다시 문장->한글자씩 문장 완성->반복

Complets사 게임 중 C4.EXE 파일이 있는 게임들은 아랄 디버깅을 했을때 문장 단위로 뜨고 한글자씩 따로 나오지 않기 때문에 쉽게 번역이 됩니다.


같은 회사에서 발매한 게임에서 XEX.EXE 파일이 탑재된 게임만 아랄 디버깅으로 번역을 했을시 대사를 진행하면 전체문장->한글자씩 뜨면서 문장완성->반복되는 반면

C4.EXE 파일이 탑재된 게임은 아랄 디버깅으로 번역을 했을시 대사를 진행하면 전체문장 단위로 뜨고, 한글자 단위로는 없는 것이 차이점 입니다.

즉, XEX.EXE가 게임의 엔진과 관련된 파일이라면 게임 엔진 문제라고 볼 수 밖에 없습니다.


제가 예전에 보기로 이런 문제가 생기는 게임의 경우 바이너래 코드(b코드)로 해결하는 경우를 보았는데, b코드를 생성할 능력이 없어서 난감하네요.

과연 b코드를 만들 수 있다면 이를 적용시켜 아랄 디버깅에서 전체문장 후 한글자씩 문장이 완성될때까지 뜨는 걸 전체 문장단위로 뜨게 바꿀 수 있는지 궁금합니다.

또한 위 게임처럼 대사창을 한번 숨기고 다시 내보냈을때 그 화면만 번역되는 코드의 경우 일반적으로 어떻게 대처하는게 좋은지 좀 조언을 해주시면 감사하겠습니다.


혹 제가 요청게시판에 코드 찾아달라고 올려놓기도 했는데, 고수 분께서 보시고 찾아 보시면서 XEX 엔진의 고질적 문제점에 대해 널리 토의해봤으면 합니다.,


TwoControl

2016.04.09
12:25:54

저라면 한글자씩 고정된 형태로 분리된 대사를 

한번 고의적으로 모아놓고 다시 되돌려넣는 루틴을

외부로더나 dll인젝션 혹은 어셈(바이너리 패치) 등으로 수정하여 후킹하겠죠?


패턴이 어느정도 되어있으니까 모으기와 돌리기는 어렵지 않을거에요.

실 예로 유사한 출력방식을 수정하여 과거 성공한 사례도 많구요.


xex 엔진만 그런건 아니지만 이런형태로 대사뿌려서 사용하는게임은 꽤 많죠.

(추천 수: 1 / 0)

암흑마제

2016.04.09
15:11:06

피시님 제가 실력이 부족해서요.


한글자씩 고정된 형태로 분리된 대사를 

한번 고의적으로 모아놓고 다시 되돌려넣는 루틴을

외부로더나 dll인젝션 혹은 어셈(바이너리 패치) 등으로 수정하여 후킹하겠죠. 의 한자락도 못하거든요;;


저야 그저 아랄디버깅으로만 코드찾다가 올리디버거로 찾아보려고 기웃거리는 초급자라서요,

혹 시간되시면 바이너리 패치 만들어주시면 안될까요? 혹 실행파일이 필요하신거면 실행파일과 엔진파일 첨부할게요.


첨부 :
MSB.EXE-x [File Size:76.0KB/Download31]
XEX.EXE-x [File Size:200.0KB/Download22]

암흑마제

2016.04.09
15:22:56

피시님 염치불구하고 메일보내기 기능이 있어 메일로도 문의보냈으니 한번 읽어봐주셨음 합니다.

고의적으로 모아놓고 다시 되돌려넣는 루틴을 외부로더나 dll인젝션 혹은 어셈(바이너리 패치)을 올려주시면 정말 감사하겠습니다만...

시간이 없으시다면 나중에라도 저렇게 하는 방법을 강좌로 전문적으로 게시판에 올려주시면 어떨지요.

그러면 다른 파인더들이 코드를 더 잘 찾고 좋을거 같아서요. 댓글 감사합니다.

List of Articles
주제 최종 글sort 댓글 조회 수
공지 아랄트랜스가 정상 동작하지 않는다면 꼭 읽어주세요. by Hide_D file 2020-05-14 14:28 ppqq 177 291653
대도서관의 양치기 AT코드까지 입력하면 팅깁니다. by Sketch 2016-04-06 01:52 dkssuddksdks 1 277
orc soft 사 키리키리 엔진 추출할때 시나리오부분이 깨지는데, by 부웅부웅 2016-04-09 12:06 지기보이즈간지 1 271
코드 찾을때 아랄트랜스 디버깅에서 전체문장이 나오고 다시 한글자로 나오는 경우 by 암흑마제 file 2016-04-09 15:22 암흑마제 3 508
vnr 내장번역 관련 질문 드립니다. by 보노군 file 2016-04-10 12:18 보노군 4 943
사노바위치 at코드가 어디있나요.. by ICE 2016-04-12 19:52 ICE 2 2561
사노바위치 아랄트랜스 적용이안됩니다,,(스샷) by 백승전 file 2016-04-12 21:53 백승전 3 766
저기 윈도우 10은 미연시 포기해야 하나요??? by 꿈꾸는바람 2016-04-14 19:20 싼불 3 29919
ルネ사 게임 하시느분들 질문있습니다 by pastast 2016-04-14 19:21 싼불 1 151
던전오브레가리아스 질문입니다. by 파크 2016-04-16 00:02 파크 3 467
이거 해결방법좀요,,, by ICE file 2016-04-16 00:21 싼불 2 191
성기사melty lovers 오류해결좀요 by 해결좀용 file 2016-04-18 14:23 싼불 1 123
코드센터 검색 하니깐 왜 게시판이 안보일까요. by 달달한발기 2016-04-18 21:03 달달한발기 3 736
게임이 들어가있는 폴더 영어말고 원제로 해도 정상실행되나요? by 백승전 2016-04-21 10:38 싼불 1 141
유포리아HD리마스터 질묺 가ㅔㅆ습니다. by 달달한발기 2016-04-21 10:39 싼불 1 1558
윈도우10이랑 기리기리는 안되나보군요 하.. by 니쿠! 2016-04-21 10:39 싼불 1 505
기리기리엔진 문자.. by 정치 file 2016-04-21 10:40 싼불 2 229
던전 오브 레갈리아스 질문 by dognmdvb 2016-04-21 10:40 싼불 1 900
제발 처리좀 해주세요 ;;; 열받아 죽겠네 진짜... by 쟌나라 2016-04-22 00:16 암흑마제 2 293
츠마미구이3 공략 by LabianRose 2016-04-22 14:27 싼불 1 4637
던전 오브 레갈리아스 세이브 관련 질문입니다. by 훗훗 2016-04-23 00:00 훗훗 3 1290