본문 바로가기

쓰기

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

처리 방식이 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
조회 수 :
1906
등록일 :
2012.05.30
09:12:17
엮인글 :
https://arallab.hided.net/63845/bd8/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
번호 제목 글쓴이 조회 수 추천 수sort 날짜 최근 수정일
공지 Talk [필독] 테스트필터 사용시 주의사항 라파에 155439   2008-08-03 2008-12-16 00:03
368 Talk RLCmd, KoFilter 의 디버그 로그 기능에 대해 - 2 whoami 10308   2008-07-28 2009-01-06 01:26
현재 정식버전에 디버그 로그기능은 살아있습니다. 단, 일반 사용자가 건드릴 수 없도록 옵션창에는 빠져 있습니다. 사용하시려면.. 멀티플러그인의 옵션 직접입력 창에서 집어넣거나 바로가기 편집에서 직접 넣어주시기 바랍니다.  
367 Archive [플러그인, 소스] RLCmd 20080728_2 file whoami 8784   2008-07-28 2009-01-06 01:26
 
366 Talk 사용자 사전 플러그인에 대해서 설문 [5] Hide_D 8785   2008-07-30 2008-07-30 22:47
으음 기본적으로 모든 게임에 사용되는 사용자 사전 을 목표로 진행중이기 때문에 ezTransXPwithCustomDic이 아니라 ezTransXP가 되고 싶습니다만... 0.2에서는 특별한 다이얼로그가 없기 때문에 이걸 그냥 ezTransXP.dll로 만들어 달라기도 애매한 상황입니다...  
365 Archive [플러그인, 소스] CmdFilter 테스트 버전 20080730 [2] file whoami 10233   2008-07-30 2009-01-06 01:26
 
364 Talk 쓸모가 있을것 같은 기능들 [4] Hide_D 18225   2008-07-30 2010-08-04 16:58
1. 줄 재배치 (기능) 사용자 입력으로 개행 기호 (r, n, <br> 등등)를 입력 받고 일본어 부분에서 일단 저것들을 제거했다가 번역후 다시 넣는 기능. (효과) (1) 번역률 향상 개행문자가 사이에 있으면 심오한 번역문이 나옵니다. (2) 벽뚫기 완화 개행문자를 ...  
363 Talk 전에 쓸모 있는 기능의 2번 관련 Hide_D 8860   2008-07-31 2009-01-06 01:00
whoami님이 생각하시는 것 처럼 정규식도 생각은 해봤는데, 이건 저로서는 무리고 =ㅅ=; 저거 비스무~리 하게 와일드 카드만 사용 할 수 있는 모델을 게획해 봤는데, '이걸 만들어야 할지 말아야 할지' Hide_D는 연습장에 적힌 내용을 소환했다. > 문장의 시작...  
362 Talk 리얼라이브 세이브에 대해서... [4] 나는누구인감? 7894   2008-08-01 2009-01-06 01:00
오늘 학교에서 하라는 공부는 안하고 곰곰히 생각을 해봤습니다. 세이브 할 경우 현재 위치의 이미지 정보 읽어들임 → 현재 위치의 대사 정보 읽어들임 → 세이브 파일에 저장 로드 할 경우 세이브 파일의 이미지 정보 읽어들임 → 세이브 파일의 대사 정보 읽어...  
361 Talk DumpText를 만들고 있는데... [2] Hide_D 7892   2008-08-02 2008-08-02 12:04
밖에서 모달리스 다이얼로그 안으로 데이터를 넣어주는 간단한 방법 없나요 =ㅅ=; 저 방법이 생각안나서 지금 해보려고 하는게, 실시간으로 바깥의 isTextFilled 를 체크해서 true인 경우만 밖의 텍스트를 가져온 다음에 isTextFilled를 false로 만드는 방법밖...  
360 Talk 퓩퓩... 퓩퓩... oTL whoami 7557   2008-08-02 2009-01-06 01:35
원인을 알아냈습니다. 하지만 이건.. 참 난감하군요. 이 문제는 RLCmd의 문제가 아닙니다. 이 문제는 SOW방식의 문제도 아닙니다. 이 문제는 한글 완성형 코드의 문제입니다... oTL 예전에 KoFilter 를 한참 만들고 있을 때... 이 이야기가 나온 적이 있었습니...  
359 Archive [플러그인, 소스] RLCmd 20080802 [1] file whoami 8818   2008-08-02 2009-01-06 01:00
 
358 Talk 문자열 -> Hex 변환이 제대로 안되네요. [7] Hide_D 7561   2008-08-02 2009-01-06 01:00
LPSTR ConvertHex(LPCSTR source){ size_t Len=strlen(source); char Temp[2048]=""; BYTE szBuf[3] = { '', }; int j=0; for(size_t i=0;i<Len;i++){ szBuf[0]=(BYTE) source[i]; szBuf[1]=(BYTE) source[i+1]; if(szBuf[0]<0x80){ //1바이트 코드라면 j += ...  
357 Talk DumpText는 아직 개선이 좀 필요한듯; [3] Hide_D 8111   2008-08-03 2009-01-06 01:00
여러개를 켤 수가 없다는 단점이 있네요[...] 그나저나 질문, 헤더 파일에서 extern으로 선언하면 그 프로그램 전체에서 공유되는건가요? 그렇다면, 창은 하나만 띄우고 플러그인 로드될때마다 번호를 매겨서 옵션을 먹여야 하려나요..  
356 Talk 0.3에서 추가할것 Hide_D 7908   2008-08-03 2009-01-06 01:00
까먹을까봐 정리 사용자 사전계 1. 사용자사전 유/무 2. 범용사용자사전 유/무 3. 사용자 정의한 주소의 파일 열기(취소) 4. 탭처리 5. 검색 알고리즘 강화(보류) ezTransXP 강화계 1. 번역후 괄호 처리(다이얼로그에 추가)(보류) 2. 사용자 사전과 완벽히 분...  
355 Talk VS 2005로 갈아탔습니다 [1] Hide_D 8272   2008-08-03 2009-01-06 01:34
MFC, 리소스 에디터 때문에 도저히 못 버티다가 옮겼습니다. VS 2008 깔고는 그 느린 속도에 기겁했는데, 이쪽은 꽤 빠르네요. [우홋홋] 근데, 2005와 2008 차이가 뭐죠? 버전 옮길때 그냥 파일 열고 버전 숫자만 바꾸면 땡이네요[...]  
354 OtherFiles [잡다]UTF8텍스트파일 -> Hex 출력기 file Hide_D 10613   2008-08-03 2008-08-03 16:26
 
353 Talk 현재까지 작업물 + 에러 OTL [2] file Hide_D 9891   2008-08-03 2008-08-03 21:08
 
352 Talk 함수, 변수 작명법 잘 정리된곳 없나요; [1] Hide_D 9291   2008-08-03 2009-01-06 01:00
결국 소스로 올려야하니까 좀 정리는 해둬야겠다.. 싶어서 번역쪽은 그냥 0.2버전(캐시 초기화) + 약간의 강화로 변경  
351 Archive [플러그인,소스] ezTransXP with CustomDic 0.3 20080805(테스트버전) file Hide_D 7830   2008-08-04 2008-08-05 01:06
 
350 Archive [플러그인, 소스] RLCmd 20080806 file whoami 7775   2008-08-06 2009-01-06 01:00