본문 바로가기

쓰기

 

Q. AGTH H코드와 아랄트랜스의 AT코드는 둘 다 텍스트 출력지점을 뜻하는 걸로 아는데 무엇이 다른가?

A. 둘 다 텍스트 출력지점임은 맞습니다. 하지만 프로그램의 성격이 미묘하게 다릅니다.

AGTH H코드는 대부분 한 개의 문자가 출력되는 지점만 잡으면 됩니다. , 문자를 별도의 창에 출력하는 것이 주 목적이므로 문자가 하나하나 찍히는 부분을 후킹해서 모으면 하나의 문장이 보여지게 되는 형식입니다.

반면 아랄트랜스의 경우에는 문자로 출력되기 전에 전체 문장을 찾아야 합니다. 게임에 찍힌 문자들을 모아서 하나의 문장을 만들었다 한들, 이미 늦었죠. 게임은 이미 그 텍스트를 화면에 찍어버렸기 때문입니다. 따라서 H코드보다 찾기가 까다로운 것은 사실입니다. 이 문제는 디버거 플러그인을 점점 개선시키는 방향으로 해결할 것입니다.

 

 

Q. AT코드는 모든 게임에 존재하는가?

A. 현재 제공되고 있는 AT코드 디버깅 플러그인은 윈디버거, 올리디버거 같은 전문 디버거 툴에 비하면 코딱지(?) 같은 존재입니다. 다만 텍스트가 지나가는 함수를 찾는 기능에 특화되어 있을 뿐이죠. 따라서 AT코드 디버거가 잡아내지 못하는 함수나 문자열들도 있습니다. 이론상으론 90% 이상의 게임은 AT코드가 될만한 지점이 있긴 있습니다. 말이 AT코드이지;; 사실 게임 프로그래밍에 있어서 대사 출력함수는 10 9게임은 존재하기 마련입니다. 물론 아랄트랜스가 불안정해서 팅기거나 하는 경우는 아랄트랜스가 개선해야 될 문제구요. ^^

 

 

Q. 강좌대로 했는데 번역이 안된다. 혹시 후킹지점을 잘못잡았는가?

A. 가장 이상적인 AT코드는 대략 다음과 같습니다.

- 대사를 한 번 넘기면 후킹지점도 단 한 번 걸린다.

- ESP로부터 가깝다. (ESP+0x20 이상이면 의심해보시길..)

- 게임 내부적으로 텍스트 복사가 이루어지기 전의 위치다.

 

 

Q. 후킹코드를 찾은거 같은데 첫글자가 외계어로 나온다. 왜 그런가?

A. 후킹코드에 거의 근접한 주소를 찾았으나 한 박자 느린 주소입니다. 그 첫 문자 조차도 출력되기 전의 주소를 찾아야 합니다.

 

 

Q. 후킹 코드는 꼭 함수 진입점이어야 하는가?

A. 어셈블 코드 중간도 상관없습니다. 후킹 복귀시 EAX~EDX, ESI, EDI, ESP, EBP, EFL 레지스터들을 그대로 복구시킵니다.

 

 

Q. 아랄트랜스로 후킹만하면 게임이 뻗어버린다. 원인이 무엇인가?

A. 크게 두 가지 경우를 생각할 수 있습니다.

- 첫번째 : 후킹 시도만 하면 게임에서 거부반응을 보이는 경우. , 아랄트랜스에서 Hook버튼을 누르기만 해도 뻗어버리는 경우는 게임 자체적으로 조작방지 기능을 넣었거나, 컴퓨터에 깔린 바이러스 감시 프로그램에 의해 종료되는 경우가 있습니다. 이러한 경우는 저도 속수무책입니다. ,.;;

- 두번째 : 후킹 플러그인으로 Cached, NonCached를 적용시키거나, AT코드를 적용시켜 번역을 시도할 때 게임이 뻗어버리는 경우. 이런 경우는 후킹 주소가 잘못된 경우입니다. 텍스트가 아닌 중요한 메모리임에도 불구하고, 텍스트로 인식, 이를 다른 데이터로 덮어버릴 때 발생하는 문제입니다. DebuggingATCode 플러그인을 적용시켜 돌려보시면 알겁니다. 이 플러그인은 메모리에 쓰기작업은 일체 하지 않고 오로지 정보를 보여주기만 하므로 뻗지 않을 겁니다.

 

 

Q. 아랄트랜스가 버전업하면 AT코드 형식도 바뀌는가?

A. 업그레이드 됨에 따라 새로운 옵션이 추가되기는 하겠지만, 현재의 옵션체계 그대로 하위 호환이 되도록 할겁니다. 따라서 형식 자체가 바뀐다거나, 예전 AT코드가 쓸모없게 되는 일은 절대 없습니다.

 

조회 수 :
64836
등록일 :
2008.04.25
23:38:44
엮인글 :
https://arallab.hided.net/2206/1b9/trackback
게시글 주소 :
https://arallab.hided.net/board_lecture/2206

스미카

2008.04.26
00:24:28

게임이 뻗어 버리는 증상이 나오는 게임은 보류중..

AT 코드는 쭉가겠죠..

후아암 저녁인뎅 않주무시는 관리자님에게 박수.. (?)

라파에

2008.04.26
08:22:24

제가 원하던 글입니다!! 웟..

어쩐지 h옵션을 찾는 방식대로 찾앗습니다만

안되는 이유가 바로 여기에 있엇군여

버젼업이 되면 필요 없겟지만

나중에 시간 되시면 전문디버깅툴의 주소 찾기 강좌도 해주셧으면.. - -;;

List of Articles
번호 제목 글쓴이 조회 수 추천 수 날짜sort 최근 수정일
공지 아랄트랜스로 게임하기 앞서 기본 셋팅 확인하기! [4] file TwoComet 40502   2012-08-30 2014-02-26 20:12
공지 아랄트랜스 - 초보자 가이드 [94] file Hide_D 319331   2008-07-16 2015-02-27 18:02
공지 모든 플러그인, 필터 안내 ('09.03.13) [20] Hide_D 191387   2008-10-31 2009-03-13 23:48
공지 아랄트랜스 0.2 - 초보자 가이드 [109] file 아랄 505856   2008-07-16 2013-12-31 09:32
17 CS2엔진 야매+ file 두병더더 2315   2012-09-16 2012-09-24 12:09
 
16 http://www.dlsite.com/maniax/ 들어가는데 팁 [2] file nicday1234 3672   2012-09-17 2012-09-18 00:34
 
15 U・Me SOFT사 코드 찾기 간단한 방법(편법)... 유피에르 2488   2012-10-14 2012-10-14 23:52
FORCEFONT(5),ENCODEKOR,FONT(HY엽서M,-13),HOOK(0x0042A6A0,TRANS(EAX,PTRCHEAT),RETNPOS(COPY)),HOOK(0x0040459A,TRANS(ESI,OVERWRITE(IGNORE)),RETNPOS(COPY)) 이게 무슨 게임 코드였는지는 까먹었는데..;; U・Me SOFT게임의 코드입니다.. (쿨럭쿨럭.. 적용...  
14 CustomDic 이 적용이 되지 않을때. [10] file TwoComet 4617   2012-10-16 2012-11-06 23:42
 
13 기리기리 데이터 추출 [1] file 두병더더 7762   2012-12-06 2012-12-13 11:50
 
12 코드를 찾아 여행하는 히치하이커를 위한 작은 팁 [1] 어린나무 7906   2013-01-22 2014-09-26 16:06
의지의 한국인어쩌면 이글은 올라가자마자 짤릴거 같지만 일단은 글을 써보도록 하겠습니다. 일단 불순한의도로 가입을 하였고 많은 능력자분들의 도움으로 게임을 즐겨왔습니다.(하드에 미연시나 야동, 기타 성인물이 없으신 분만 저를 욕하세요) 아무튼 그중...  
11 NTLEA GUI 0.92 이상을 쓰시는 분은 필히 보시기 바랍니다. [5] TwoComet 2879   2013-02-01 2013-07-29 03:13
현재 NTLEA 0.87 beta 를 쓰고 있었다가 저걸로 한번 사용하게 되었었습니다. 근데 큰 문제가 생깁니다. 어플로케일의 AlLayer.dll 가 인젝션 되지 않는 사태가 벌어지는군요. 솔직히 기능면에서는 0.87 beta 나 0.92 GUI 나 같습니다. 만약 0.92을 인스톨하여...  
10 미연시 플레이시 특히 오프닝 엔딩영상에서 강제종료 되는문제. 소라노카제 3281   2013-04-13 2013-04-13 11:40
많은 미연시 플레이어들이 겪으시는 문제인데.... 해결책을 아는 분이 적네요..... 저만 모르던가요. 어째든 최근들어 알게 된겁니다만............. "그리자이아의 과실" 과 "지금 당장 오빠에게 여동생이라고 말하고 싶어" 밑 여러 작품에서 이유없는 강제 ...  
9 [팁]단순후커사전SDK 두통 1452   2013-07-06 2013-07-08 20:42
[후커사전] 단순후커사전 SDK Ver1.00 자료실에 올릴까 하다가 그냥 방문해서 이것저것 봐보는게 좋을듯싶어서 링크 다른건 모르겠는데 ezTransMini 요놈 쓸만하네요.  
8 에우슈리 & 아나스타샤 게임에서 오류가 뜨시는분 Peith 530   2013-08-07 2013-08-07 00:49
이런 에러가 뜨시는분 전에 질문을 올렷는데 더미컷 버전이라 그렇다고 하시더군요 근데 제가알기론 타유우타랑 명색의 예희는 더미컷 버전이 아닌데 말이죠 환린이랑 전여신은 잘 모르겟지만 그것들도 더미컷이 아닐겁니다 설치하는데 필요한 용량과 게임 파...  
7 [번역률향상]Ehnd+꿀도르 설치, 허니엔드 [2] 미래도 35342   2015-04-28 2015-05-08 18:11
eztrans의 번역률을 향상하기위한 Ehnd라는 도구와, 꿀도르 사전이라는 사전이 있습니다. http://sokcuri.neko.kr/220301117949 http://blog.naver.com/waltherp38/220267098421 다만, 이렇게 설치방법이 나와있어도.. http://blog.naver.com/waltherp38/22028...  
6 PhantOm:디버깅이 제한된 프로세스 디버깅하기 [1] 미래도 1438   2015-08-23 2015-08-25 19:46
사실 VNR 스크립트 주석에서 퍼옴 椎名里緒, 시나리오 엔진의 경우 Themida로 디버깅을 막았습니다.(다른 디버깅방지 엔진도 비슷할꺼라 생각함) - OllyDbg로 열 때, 게임이 실행되지 않는다. - 게임 모듈 메모리 공간이 수정하는 것을 막는다. 대체로 이런 특...  
5 사진이 깨진 글에서 사진순서 맞추기 file 미래도 431   2015-09-13 2015-09-13 03:08
 
4 [VNR홈페이지]게임이름으로 게임정보 찾기 미래도 3684   2015-09-13 2015-09-13 03:43
게임 정보를 빠르게 찾는 법에 대해 소개합니다. 개인적으로 엔진정리와 작업을 하고 있으나.. 금칙어 크리때문에.. VNR 홈페이지에서 일종의 데이터베이스를 제공합니다. 물론 정보를 수집해서 올려놓은 것이기에 플레이하지 않은 것은 지원하지 않습니다. 주...  
3 게시물 분류작업 미래도 494   2015-09-14 2015-09-14 05:09
게시물 분류작업입니다. 주석달기전에 일단 분류부터.. http://lab.aralgood.com/index.php?mid=board_lecture&document_srl=게시물번호 게시물번호에 해당 번호 복붙해서 들어가면됩니다. 찾아보니, 똑같은 게시물이 두개있는경우가 있더군요. 과거 폴라...  
2 Sho&#6489lԀ &#1... AngeliaTolmer6414 364   2015-11-08 2015-11-08 01:28
ShoᥙlԀ уоu lоvᥱⅾ thiѕ ρоѕt and үоս ѡɑnt tο гесеіνe tоɗⲟ mоrе infօ гᥱǥагding Ореracjɑ Ⲣlаstуczna Nοѕa Ꮯᥱnnіκ (Http://Www.Dbamy.Pl/) aѕsᥙrе ѵiѕіt ⲟսг οᴡn աeb-ѕitᥱ.  
1 cs2엔진 게임에서 대사창이 안나올경우 file 별초군 681   2015-12-03 2015-12-03 18:52