본문 바로가기

쓰기

마찬가지로 아야카시를 몰모트로 설명해볼까 합니다.

004.JPG 

004355DA지점의 [ESP]+4 지점을 가리키고 있습니다.
게임에서는 이제 막 선택지를 출력하려고 하고 있습니다.
그 스크립트 명령어가 <MenuAdd>란 것을 알 수 있었죠
여기서 004355DA에 다시 브포를 걸고 무엇이 오는지를 확인해 보겠습니다.

005.JPG 
1 이군요[...]
다시 ㄱㄱㄱ

006.JPG 
아래에서 언급했던 대사와 동일한 구조의 포인터입니다.
011781A8이 문장 포인터고 12가 문장 길이, 1F가 최대 출력 길이가 되겠군요.
혹시 몰라 확인해 보자면

007.JPG 
일본어 문장이 확실한 것을 볼 수 있습니다.

008.JPG 
그리고 다시 진행하니 또한번 MenuAdd가 오는군요.

009.JPG 
2 군요.
2번째 선택지란 거겠죠.

010.JPG 
이번에도 문장 포인터가 나타남을 알 수 있습니다.
계속 실행해보면

011.JPG 
또다시 MenuAdd군요

012.JPG 
예측대로 3번째.
다시 실행 ㄱㄱ

013.JPG 
이번에도 문장이 오는데 이번엔 포인터가 아니라 문장이 통채로 왔군요 -_-;
귀찮아서 언급 안하려 했지만 그 이유는 최대 길이에 있습니다.
최대길이가 0F이하일 경우엔 대사포인터가 오는게 아닌 대사 그 자체가 와버리는 연산을 하더군요.
아야카시란 녀석은
여하튼 계속 진행해 보겠습니다.

014.JPG 
3개의 선택지를 내놓고 비로소 MenuEnd
그 이후엔 곧바로 선택지 출력을 확인 할 수 있었습니다.

여기서 말하고 싶은 것은 선택지를 출력하는 단계
즉 004355DA라는 함수를 거칠때마다 불러오는 데이터의 수순입니다.
종합해보면

<MenuAdd> -> 1 or 2 or 3(선택지 번호) -> 대사 포인터(혹은 대사) -><MenuAdd>->.........-><MenuEnd>

인 것을 알 수 있습니다.
만약 이것을 알고리즘화 해 패턴을 잡을 수 있다면 그러니까

<MenuAdd>가 오고 번호가 온뒤에 오는 대사 포인터 혹은 대사를 번역한다는 알고리즘을
아랄에 적용할 수 있지 않을까 해서 올려봤습니다.

문장 길이 지정만큼 많은 게임에서 쓰이는 방식은 아니지만 히데씨에게 설명해보니
여기에 직접 올려달라는군요 ㅡㅡㅋ

물론 이렇게 더러운 연산만 있는건 아닙니다.016.JPG 
어째선지 15번 이미지가 안올라오는군요 -_-;;;;;;;

이름 출력 부분입니다.
이미지가 안올라온지라 설명을 하자면 우선 처음으로

<Name>이 [ESP]+4에 오고
두번째로 바로 저기 드래그 되어있는 이름이 온 형상입니다.


<Name> -> 이름

이라는 간단한 구조도 존재하니 활용할 수 있지 않을까 싶습니다. 




List of Articles
번호 제목 글쓴이 조회 수 추천 수 날짜 최근 수정일sort
공지 Talk [필독] 테스트필터 사용시 주의사항 라파에 155439   2008-08-03 2008-12-16 00:03
164 Talk 다음 계획 [1] Hide_D 9995   2008-08-10 2009-01-06 01:33
1. 개행 문자 처리 사용자가 정한 문자열(hex나 문자열중 하나 선택해서 입력)으로 벽을 뚫지 않도록[...] 개행문자를 처리해주는 기능 번역률 향상도 기해 할 수 있을듯. 2. 사용자 대본 기능 관련 http://koreajapan.pe.kr/make.htm 이녀석 문법 귀찮네요[.....  
163 Talk whoami님 Util.h의 옵션 파서가 [4] Hide_D 7908   2008-08-10 2008-08-10 15:13
문자열 을 지원하나요? 아니... 으음 c:documents and settindsuser내 문서Game,A루트(미완성).txt 라는 문자열을 파서로 받을 수 있나요?  
162 Talk CustomSD 원문 단어 흘리기 결과. [2] whoami 9910   2008-08-10 2009-01-06 02:06
제가 다른분이 제작하신 플러그인 테스트를 하게 될줄은.. 어쨌든. 원문 - 誰だ⑤ 誰なんだよ⑤@n美奈⑤ そいつは誰なんだ⑤ 번역 - 누구다⑤ 누구이에요놡@n미나⑤ 그 녀석은 누구야 놡 단어 흘리기 (?) 가 되다 안되다 하는군요. 중간에 "놡" 은 된 것이고.. ⑤ ...  
161 Talk 필터 3개 커밋 완료했습니다. [2] Hide_D 9263   2008-08-11 2009-01-06 01:06
HK2FK KoFilter TextDump whoami님이 안하셨길래 대신; RLCMD는 해도 괜찮을 것 같긴 한데, 이건 안하나요?  
160 Talk 어휴.. [2] file whoami 8573   2008-08-11 2009-01-06 01:06
 
159 Talk 옵션 스트링 버퍼 말이죠? [1] Hide_D 10830   2008-08-11 2008-08-11 23:22
ezTransXP단부터 확인을 해봤더니 ezTransXP도 LPSTR을 이용하는 군요 ㄱ- 옵션으로 파일명을 받으려고 했는데, 이거 참 난감하게 됬네요. c:ゲ?ムABCA_Route.txt 하면 못열테니까요. 아직 LPTSTR은 안줘봐서 모르겠지만 안된다면 충격이 좀 클듯;  
158 Talk Hide_D군님, CCustomDic2 의 문제점을 알 것 같습니다.. [1] whoami 7811   2008-08-12 2008-08-12 22:41
저번에 (5) 문제.. 기억하시나요? 아마도 이것 때문인 것 같습니다. void CCustomDic2::PreCustomDic(LPSTR Dest, LPCSTR Source) { // ... 전략 for(int head=0;head<SourceLen;head++) { for(int tail=SourceLen-1;tail>head;tail--) { // ... 중략 ... //2...  
157 Talk 플러그인을 만들다가 '또다시' 엄청난 실수를 저질렀다는걸 깨달았습니다. [2] Hide_D 7929   2008-08-12 2009-01-06 01:01
이쪽은 프로그래밍이라보가는 구상과 관련된 문제네요 ㅠ_ㅠ 현재 제가 손대고 있는 플러그인이 사용자사전 사용자대본 개행문자처리 컨트롤문자처리 인데, 두개씩 묶여있는 구조죠. 그런데... 사용자대본 -> 문장단위처리 사용자사전 -> 단어단위처리 개행문...  
156 Talk 빈공간[...] file Hide_D 11531   2008-08-16 2008-08-19 00:01
 
155 Talk 라파에님 한번 테스트해보세요. [2] file Hide_D 8759   2008-08-17 2008-08-17 16:55
 
154 Talk 라파에님 다시 한번 테스트해보세요. [3] file Hide_D 10896   2008-08-17 2008-08-17 17:23
 
153 Talk 루비문자 처리 스샷 입니다. file 라파에 8595   2008-08-17 2008-08-17 17:43
 
152 Talk 개행 처리 관련해서 일단 제 구상입니다 Hide_D 8149   2008-08-21 2009-01-06 01:05
랄까 어느새인가 개행처리가 아니라 텍스트 처리 필터가 되어있습니다만[......] (CmdFilter는 텍스트와 텍스트 바깥을 구분하고, 이건 텍스트 내부를 처리하는 느낌?) 우선 입력 받을 내용은 MaxLine MaxWord (MaxChar?) 개행 기호 문자열(또는 Hex) 그리고 ...  
151 Talk 아... 괴물한자의 정체가 Hide_D 8458   2008-08-23 2009-01-06 01:05
일반적인 과정 후킹시에 MS949 -> Shift-JIS(괴물 한자) 아랄이 인식한 텍스트 출력 함수에서 Shift-JIS(괴물 한자) -> MS949 인데, 괴물세트(?) 후킹시에 MS949 -> Shift-JIS(괴물 한자) 아랄이 인식 하지 못한 텍스트 출력 함수에서 Shift-JIS(괴물 한자) ->...  
150 Talk FixLine 예상 작동 방식 [1] file Hide_D 10715   2008-08-23 2009-01-06 02:04
 
149 Talk 토모요 애프터...... [2] file whoami 10576   2008-08-26 2009-01-06 02:04
 
148 Talk [질문]UTF 코드를 SHIFT-JIS와 KS코드로 변환 [4] 호기심맨 13984   2008-09-02 2008-09-16 23:09
안녕하세요... 요즘 Aral이란 프로그램 덕에 갑자기 컴퓨터가 좋아진 사람입니다. 다시한번 모든 개발자분께 감사하구요.. 저도 아주아주 미약한 실력이지만 .. 참여해 보려고 합니다. (Aral에 도움될 실질적 가능성 0.0001%) 제가 관심가지는 부분은 단순님이...  
147 Talk DenyWord 변경한 내용입니다 Hide_D 9493   2008-09-11 2008-09-11 23:04
1. 일단 EXACT를 추가했습니다. 정보(옵션버튼), 플러그인초기화부분, DenyWord클래스의 초기화부분이 변경되었고 실제 처리부분에서는 먼저 처리를 해준 다음 if문 대신 루프의 n값을 0으로 고쳐 루프를 돌지 않도록 처리했습니다. 2. 1바이트인지 확인하는 ...  
146 Talk 하루카 원문 [1] 나는누구인감? 10337   2008-09-16 2008-09-17 01:00
원문  
145 Talk 히데님께 문의 해요! [2] file 라파에 11922   2008-09-21 2009-01-06 01:25