본문 바로가기

쓰기

예전에 그 아랄과 최악의 상성으로 불리던

처리 방식이 KLEIN 사의 青空と雲と彼女の恋 여기서도 사용되네요.

 

그냥 포기할까 하다가...

 

스마트 방식과는 별개로 처리 방식을 하나 만들어야 될것 같습니다.

(아래와 같은 처리를 한걸 여럿 보아왔기 때문에.. 스마트와는 다르지만)

 

 

일단 형태는 아래와 같습니다.

 

 0x10000

 대사포인터

 에러체크 포인터

                    

 0x10010

 0x10020

 순수 대사 길이

 에러체크 길이

 

(추가적으로 대사 에러체크 부분에는 출력전에 E라는 글자가 뒤에 붙이면서,

해당포인터의 +0x20자리에 있는 길이 계산값이 +1가감됨)

 

대사포인터: 현재 출력할 대사가 들어가있다.

(개행은 0xef.0xf0 으로 되어있으며 해당 엔진에서는 없애도 자동 개행이 된다.)

(예전에 이런 패턴 체크 엔진에서는 수동 개행이였는데.. 조금 발전한 모양...)

 

에러체크 포인터 : 대사포인터의 출력에 도움 및 정당한 글자가 들어있는지 체크까지 겸용으로 한다.

- 일어는 전부 2바이트 이므로 해당 포인터 안에는 "22222222222222222" 라고 채워져있다.

(ex. 만약대사가 "가나다라마바" 라면 한글자당 2바이트로 연산, 에러체크 포인터에는 "222222" 라고 채워저있을것이다.)

(ex. 위 예제에서 순수 대사길이 값은 0xC, 에러체크 길이값은 0x6 이다.)

-덤으로 확인결과.

대사 포인터에 "가나다라마바1" 라고 집어넣고 순수대사길이에 +1 한후,

에러체크 포인터에 "2222221" 라고 채운뒤, 에러체크길이에 +1 하니. (순수 대사길이 값 0xD, 에러체크 길이값 0x7)

아무런 경고 및 체크 알고리즘을 무사히 피할수 있었다.

 

2바이트 문자 -> 0x32  "2"

1바이트 문자 -> 0x31  "1"

 

번역후 위 형식대로 에러체크포인터에 채워넣으면 될것 같다.

 

 

(ex. 번역후 문자가 "야호~ 번역되라!" 라고 가정하면

대사포인터 : 번역문 포인터 교채하던가, 메모리 덮어쓰기.

에러체크 포인터 : "221122221" 이라고 채워넣기 (위에 번역문을 대상으로)

순수 대사길이 : 0xF

에러체크 길이 : 0x9

로 바꾼 상태로 넘기면 무사히 출력 될것으로 보임)

 

 

따.라.서. 위에 작성한대로

ATCode.dll 에 기능 추가하기....로 결정 OTL

 

 

스마트와 다른점은

일단 패턴 검사하는걸 옆에 두고 있다는 점과

길이에 상관없이 모두 포인터화 되어있군요.

또한 위에 제시한 상태까지 모아지는 특정 부분을 찾아야하는 고생이 뒤따릅니다.

(한줄씩 가져오고 그에 맞게 패턴 형성하고+검사, 전문 다 가져오면 패턴 다시 형성후, 종결문자 달러가는 도중인 장소입니다.)

종결 패턴 문자 = E (0x45)   (위 예시에다 붙이면, "221122221E" 라고 붙인뒤 출력하러 보냅니다.)

 

 *추가로 알은 사실. 종결패턴문자는 디폴트 값일때, P,R,C 라는 문자도 같이 있음 (0x50,0x52,0x43)

 

번역후 길이가 작아질 수 있기 때문에 약 5바이트까지 00문자로 채울것

 

 

데.. 이 기능의 명칭을 무엇으로 할까요?...

분류 :
Talk
조회 수 :
1904
등록일 :
2012.05.30
09:12:17
엮인글 :
https://arallab.hided.net/63845/3cc/trackback
게시글 주소 :
https://arallab.hided.net/board_devtalk/63845

EroGame

2012.06.09
21:07:53

유리스 엔진이였어 브왘!!!!!!!!!ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

 

위 글(5.30) 쓰고나서 지금까지도 몰랐다!ㅋㅋㅋㅋㅋ

EroGame

2012.06.09
21:09:22

위 기능의 명칭은

 YURIS 로 결정!

EroGame

2012.06.09
23:37:38

선택지는 딴데서 오나보네... 아오;

List of Articles
번호 제목 글쓴이 조회 수 추천 수 날짜 최근 수정일
공지 Talk [필독] 테스트필터 사용시 주의사항 라파에 155435   2008-08-03 2008-12-16 00:03
369 Archive [소스, 플러그인] ATCode 120814 [4] file EroGame 1073   2012-08-14 2012-08-14 20:19
 
368 Archive [플러그인] ATCode 120813 [2] file EroGame 1051   2012-08-13 2012-08-13 20:04
 
367 Archive [플러그인] ATCode 120812 [9] file EroGame 1056   2012-08-12 2012-08-13 00:22
 
366 Archive [소스, 플러그인] ATCode 120811 [3] file EroGame 972   2012-08-11 2012-08-11 22:41
 
365 Talk ATCTNR.dll 120809 업데이트..완료 EroGame 1171   2012-08-09 2012-08-09 14:31
원본 방식으로 후킹시 뒤에 밀린 명령어가 0x90 (nop) 로 밀어버려서 언훅시에 그 복사한 값에서 5길이 밖에 복구하지 않더군요. 버그 잡고.. 언훅 잘되는거 확인완료. 주의? 할점은 원본 후킹방식일때는 되도록이면 후킹 장소 지점에 명령어로부터 5 이상의 ...  
364 Archive [플러그인] ATCode 120809 . 3 [1] file EroGame 1027   2012-08-09 2012-08-09 16:26
 
363 Archive [소스, 플러그인] ATCode 120805 - 파기 [9] file EroGame 1055   2012-08-05 2012-08-09 09:52
 
362 Archive [플러그인] ATCode 120730 [10] file EroGame 1677   2012-07-30 2012-08-03 08:14
 
361 Archive 대략 0.2 아랄 업뎃... [5] file EroGame 1918   2012-07-26 2012-07-26 18:37
 
360 Archive [소스, 플러그인] ATCode 120725 [22] file EroGame 1702   2012-07-25 2012-07-30 08:14
 
359 Talk ATCode에 추가했던 ASLR 있잖아요. [2] EroGame 1767   2012-06-18 2012-08-03 08:38
http://lab.aralgood.com/index.php?document_srl=49989 이때 추가한건데 이거 따로 분리해서 사용 유무 지정하는게 좋을것 같네요. (xp에서는 무반응으로 처리하고) 특정 게임에서 연산중 뻗는 경우 발견되었습니다. 더미다 같은경우는 굳이 연산안들어가고 ...  
358 Archive [소스, 플러그인] ATCode 120618 [2] file EroGame 1634   2012-06-14 2012-06-18 00:48
 
357 Archive [소스, 플러그인] ATCode 120613 [1] file EroGame 1740   2012-06-13 2012-07-12 19:27
 
356 Archive [소스, 플러그인] ATCode 120610 테스트 버전 [5] file EroGame 2067   2012-06-10 2012-06-11 00:17
 
» Talk 스마트와 조금 다른 엔진의 처리...(알고보니 유리스엔진) [3] EroGame 1904   2012-05-30 2012-06-09 23:37
예전에 그 아랄과 최악의 상성으로 불리던 처리 방식이 KLEIN 사의 青空と雲と彼女の恋 여기서도 사용되네요. 그냥 포기할까 하다가... 스마트 방식과는 별개로 처리 방식을 하나 만들어야 될것 같습니다. (아래와 같은 처리를 한걸 여럿 보아왔기 때문에.. 스...  
354 Talk XP에서 번역시 단순에 의한 띄어쓰기 처리... [3] EroGame 1798   2012-05-28 2012-05-30 09:05
xp 에서 간혹 이지트랜스의 단순 딕을 사용시 나오는 하나의 버그가 있습니다. 예를 들면 @np20003이것은 대사입니다.%K 라는 대사가 있다고 가정할때 윈7에서는 필터 없이 그냥 번역을 거처도 앞뒤에 있는 1바이트 명령어에 아무런 변질도 되지 않고 나오게 ...  
353 Archive [소스, 플러그인] ATCode 120521 [9] file EroGame 2065   2012-05-21 2012-06-10 13:17
 
352 Talk LEN 기능에서 체크기능 제거 및 투가기능. EroGame 1766   2012-05-10 2012-05-10 10:37
현재 LEN 기능으로 길이 연산 체크를 할때 -1이나 0의 범위까지 0x00인 NULL 문자로 길이 체크를 하잖아요? 그렇지 않은 경우도 있네요. 길이는 있으나 해당 번역문+길이 위치에 NULL문자가 없는 형태의 길이 교체형태도 추가주세요. (그때는 길이값만 변하도...  
351 Talk 픽스라인 추가기능 건의. EroGame 1799   2012-04-29 2012-04-29 15:18
현재 픽스라인에 버그도 버그가 많지만.. 일단 부가적으로 추가할 기능 몇개 끄적여 놓고 갑니다. (까먹을까봐) 1.패턴 중 인자값에서 번역 인자로 지정할때(임의의 길이 설정시) 공백 제거 기능 추가 말 그대로 임의 길이로 지정하여 번역함으로 해놓고 그 부...  
350 Talk 어김없이 기능추가 건의입니다. [3] EroGame 1865   2012-04-22 2012-05-05 09:15
그 뭐냐. 스마트 기능이 어째 제대로 빛을 발휘하지 못하고 있습니다. 왜그런가 되돌아서 생각해보니 발더스카이 개조할때 구현한 기능중 하나가 스마트에서 빠졌다는겁니다;; 그래서 요번 기가 사에서 나온 게임들 전부가 에러 팅팅 거리면서 꺼지더군요. OTL...