본문 바로가기

쓰기

  바로 아래의 게시글에도 나와있지만 문자열 길이에 관여하는 필터가 있었으면 합니다.

001.JPG 
예를 들기 위한 스샷입니다. 디버거에 물려있는 게임은 아야카시 1.30버전인데요.
현재 드래그 되어있는 곳 즉 005F0AC0이 문장을 가리키는 포인터입니다.
위치는 000FFD0C, 즉 ESP+4군요.
여기서 00FFD0C+10의 주소를 보시게 되면
48를 확인 할 수 있고 그 옆의 00FD0C+14의 위치에는
4F를 확인 하실 수 있습니다 
여기서 재차 확인해 보실건 
바로 대사가 존재하는 지점입니다.

003.JPG  
문장의 길이가 정확히 48바이트 라는 것을 알 수 있습니다.
즉 아야카시 1.30이 대사를 출력할 때 참조하는 것은
[ESP+4]                      대사 포인터
[ESP+4]+10               대사 길이
그리고
[ESP+4]+14               최대 대사 길이
입니다.

최대 대사 길이가 왜 있는지는 모르지만 어찌되었건 저 이상 초과하면 무조건 에러나니 따로 연산 루틴이
있어야 하지 않나 싶습니다 -_-;; 물론 모든 게임이 다 그런것은 아니지만 말이죠.

물론 다들 아시겠지만 이 상태에서 아랄트랜스로 후킹할 시엔 번역은 문제없이 잘 될지라도
[ESP+4]+10에 지정된 대사 길이만큼만을 출력하기 때문에 문장이 잘려서 출력하게 됩니다.

이것을 번역된 문장길이만큼 수정하게 되면 문장이 잘리지 않고 깔끔하게 출력하는 것을 확인 할 수 있습니다.
아랠트랜스가 이런 일련의 작업을 수행할 수 있지 않을까 해서 올려보았습니다.

PS.혹시 몰라 말하지만 올리스샷의 저 연산은 제가 임의로 작성한 코드입니다 -_-;
실제 대사길이 연산 루틴은 스크립트에서 대사를 빼오자마자 이뤄지기 때문에 아랄트랜스가 파고들 여지가
보이지 않는군요;

PS. 건의가 좀더 맞지 않아 싶어서 건의게시판에 글쓰려했더니 글이 안써지는군요 -_-;;
뭐어 히데찌도 여기다 써서 올리라했으니 올려봅니다. 잠시뒤 다시 뵙죠

List of Articles
번호 제목 글쓴이 조회 수sort 추천 수 날짜 최근 수정일
공지 Talk [필독] 테스트필터 사용시 주의사항 라파에 155437   2008-08-03 2008-12-16 00:03
349 Talk 2등 ~ [3] 앙마vv 15977   2008-07-08 2008-09-17 00:31
2등 입니다 ㅋㅋㅋㅋ ........... 뭐... 뭐 어쩌라는거지 .......... 그나저나 이곳 뭐하는곳 ??????? ㄷㄷㄷ;;  
348 Talk FixLine 23일자 파일은 무시설정에 문제가 있는듯하네요 [7] 류제로 15841   2008-12-26 2008-12-30 08:30
이번에 올라온 종말능의를 코드를 입력시켜면서 알게된 것인데 23일자 FixLine 옵션의 무시설정의 서클체크을 사용안함 이외 부분을 체크하고 확인을 누르면 적용은 되는듯하나 다시 옵션창을 열어보면 체크가 사용 안함으로 표시 되어있습니다 20일자로 실행...  
347 Talk XML 파싱 부분에 문제가 하나 있네요. Hide_D 15772   2009-12-30 2009-12-30 21:42
xml 태그에서 그 태그에 대한 내용이 없을경우 <tag></tag> 로도 표현할 수 있지만 <tag/> 로도 표현 가능합니다. 현재 파서 부분을 보니 <tag/>형식의 태그에는 대응이 되어 있지 않은것 같습니다.  
» Talk 문자열 길이에 대한 건의 file G2m 15608   2010-01-21 2010-01-21 18:44
바로 아래의 게시글에도 나와있지만 문자열 길이에 관여하는 필터가 있었으면 합니다. 예를 들기 위한 스샷입니다. 디버거에 물려있는 게임은 아야카시 1.30버전인데요. 현재 드래그 되어있는 곳 즉 005F0AC0이 문장을 가리키는 포인터입니다. 위치는 000FFD0...  
345 OtherFiles 히데님, 픽스라인 관련 메모장 파일입니다. [1] file astral 15603   2008-12-16 2008-12-16 01:19
 
344 Talk [버그 보고?]브라반 드디어 원인을 찾았습니다. orz [6] Hide_D 15593   2008-07-08 2008-07-09 16:23
엉엉엉엉엉엉엉엉엉엉엉엉엉엉엉엉엉엉엉엉엉엉엉 0x3010 0x3011이용해서 대사 처리하는 녀석들을 찾아보았더니 http://aralgood.com/zbxe/26860 루이는 토모를 부른다. 가 있더군요. 요건 그 일부분! ------------------------------------------------------...  
343 Archive [플러그인,소스] KoFilter 테스트 버전 20081118 file whoami 15552   2008-11-18 2008-11-18 23:37
 
342 OtherFiles 0.3 설정 xml 파일 예제 [4] file 아랄 15532   2009-09-20 2009-09-21 00:12
 
341 Talk ats파일에 아이콘을... [2] Hide_D 15493   2009-12-23 2009-12-23 14:27
역시 ats에 아이콘을 넣는 게 좋을 것 같습니다. 그래서 생각해본 방법 1. xml에 <icon></icon>항목을 추가해서 추가할 ico 파일을 변환해서 넣기 0xff -> 'FF' 식으로 하면 실제 ico 파일에 대해서 대략 용량이 2배가 되겠지만 '별 수 없죠' 2. ats에 대한 Ic...  
340 Archive [플러그인,소스] FixLine 테스트버전 081221 [5] file Hide_D 15475   2008-12-21 2008-12-22 02:30
 
339 OtherFiles fixline 테스트 [1] file 처음처럼만 15297   2008-12-16 2008-12-16 15:52
 
338 Archive [플러그인,소스] FixLine 테스트버전 081215 [5] file Hide_D 15213   2008-12-15 2008-12-16 01:18
 
337 Talk 0.3에서 전국란스의 경우 [1] Hide_D 15179   2009-12-13 2009-12-14 02:10
ats파일을 만들어서 동작할경우 문제가 산넘어 산입니다. 1. 주소 문제 2. Rance7으로 바꾸었을때 AppLocale의 미묘한 작동 ㄹㅋ  
336 Talk 번역함수가 불렸을 때 자신이 불린 컨텍스트 이름을 아는 문제.. [8] whoami 15151   2009-12-24 2009-12-26 15:34
4. procTranslate 로 지정된 번역함수가 불렸을 때 자신이 어떤 컨텍스트로 불렸는지 아는 방법 현재 컨텍스트의 이름을 얻는 것 외에는 대부분 원하는게 가능할 것 같습니다. pObjectExtention 에 어떤 객체의 포인터를 넣어 놓고, procTranslate 가 호출되었...  
335 Talk 줄 바꿈을 n으로 하는 게임에서 벽뚫기 방지 해결책 [1] Hide_D 15082   2008-07-12 2008-07-12 18:09
http://aralgood.com/zbxe/33245 여기 스샷보고 생각난건데, 자릿수를 지정해 주고, n을 새로 먹여주면 벽뚫기가 줄어들지 않을까요.  
334 Talk 0.3 SVN 경로 수정했습니다! [2] Hide_D 15071   2009-12-23 2009-12-23 14:03
현재 아랄트랜스가 있는 서버에 SVN이 추가되어서 속도 향상을 목표로 SVN경로를 다음과 같이 변경했습니다. svn://aralgood.com/araltrans03/trunk revision은 몇가지 실수 빼곤 22개 리비젼 그대로 옮겨두었습니다. 다만 커밋 날짜가 달라지게 되므로 경로를...  
333 Talk 문자열의 길이를 반영하는 '필터' [4] Hide_D 15027   2010-01-19 2010-01-22 01:28
문자열 길이가 고정되어서 포인터 바꿔치기를 통해서도 길이가 바뀌지 않는 것들이 있는데, 이놈들을 위해 길이를 반영하는 필터가 있으면 좋을것 같습니다. 인자로 반영할 메모리 주소 1. 모듈(메모리 주소) 기반 2. 레지스터 기반 으로 ATCode의 그것과 비슷...  
332 Talk [질문] HKCU/Software/AralGood/M2WAddr ? [3] whoami 14960   2008-07-08 2008-07-08 19:14
// CATCodeMgr::Init(ATCodeMgr.cpp) 중에서... // 어플로케일 관련 함수 m_sTextFunc.pfnOrigMultiByteToWideChar = (PROC_MultiByteToWideChar) CRegistryMgr::RegReadDWORD(_T("HKEY_CURRENT_USER\Software\AralGood"), _T("M2WAddr")); m_sTextFunc.pfnOri...  
331 Archive [플러그인, 소스] CmdFilter 테스트 버전 20080712 [1] file whoami 14942   2008-07-12 2009-01-06 01:00
 
330 Talk 번역 플러그인 난해한 문제???? [3] 호기 14864   2009-03-15 2009-10-20 18:06
지금 ML_Trans라는 번역 플러그인을 만들고 있는데 좀 이해가 안가는 문제가 생기네요.. 아랄에 적용시킨후 다른 번역 플러그인으로 바꿀때는 아무 문제가 안생깁니다 그러니까 번역 플러그인을 EzTransXp<->ML_Trans로 마구 여러번 바꾸어도 문제는 안일어 납...