본문 바로가기

쓰기

제가 새벽에 내내 엘리스사의 게임인 아가씨를 내마음대로 하는 게임(お??をいいなりにするゲ?ム)을

만져보다가 결국에는 지지 쳤습니다. 이유는

너무나 많은 명령줄 때문인데요.  함수처리 예외문 기능을 하는 EL.DAT가

DENY기능이 아닌 EXACT밖에 기능을 안가지고 있기 때문입니다.

아래는 게임의 명령처리 예문 들 입니다.

エミリ106
エミリ103
梢104
梢102
理?子101_2M
エミリ咸_??
エミリ譬?_??
エミリ???_??
エミリ竅拜_??
エミリ膾聽_??
エミリ膾聽 2_??
エミリ?鵝凡 路螟脩_??
エミリ69_??
梢SEX_??
梢?嶼 2_??
梢W膾聽_??
梢SEX2_??
梢卷 褒拿_?

보시는 것처럼 앨리스 게임은 이벤트 처리 함수 이름을 일본어로 써서 그게 해석 되버리는 바람에 에러를 리턴하기 때문에 

이 처리 함수들을 정확히 입력 해야합니다. 

때문에 클립보드 모니터를 키고 씬이 넘어 갈때마다 명령줄을 전부 하나하나 확인해요. 정말 노가다죠.. (초얌섬인하루카도.. 으..)

플러그인을 제작하신 my님께서도 이문제 때문에 란스 코드를 공개하는데 한달이 걸리셨다고 합니다.

하지만 Denyword 필터를 사용한다면 deny에 10 과 _ 을 넣기만 한다면 해결 되는 문제이죠.

그렇다면 왜 Denyword필터를 사용안하는지 궁금 하실텐데요.

아래 스샷은 엘리스사 게임에 denyword필터를 넣었을 경우와 뺄경우의 스샷과 헥스 입니다.



denyword 필터를 넣었을 경우 ( AT플러그인의 폰트로드와 포인터번역이외 옵션없음 , 멀티플러그인 코필터 포함)


?尾
90A3 94F6

817A

??尾押
899E 90A3 94F6 899F
和也…?
9861 96E7 8163 8148
카즈야…?


denyword 필터를 뺄 경우  ( AT플러그인의 폰트로드와 포인터번역이외 옵션없음 , 멀티플러그인 코필터 포함)

?尾
90A3 94F6
세노오

8179


817A

和也…?
9861 96E7 8163 8148
카즈야…?


데이니필터 포함 시켜을때


데이니필터를 뺄경우

위처럼 이름이나 메뉴창. 그리고 루비문자가 포함된 글이

데이니필터를쓰면 번역이 안되는 증상이 일어나는데 이 증상은

엘리스사 뿐만아니라 이외로 많은 게임에서 증상이 일어 납니다.

제가 이쪽에는 까막눈이라 확신이 안서지만..

예상되는 문제는  데이니워드의 기본기능인 1바이트 문자 죽이기

텍스트를 처리하는 명령줄 중에 1바이트문자가 포함되어 먹히는 경우인듯 해요.

그래서 데이니필터의 기능중에서 DENY의 기능만 빼온 필터가 제작이 가능한지

문의 합니다.

Hide_D

2008.09.21
09:16:08
우선... 현재 사용중인 DenyWord 버전이 어떻게 되나요?
?尾가 공백처리되는 걸로 봐서는 최신 테스트버전은 아닌것 같은데 ^^:;

혹시 모르니까 현재 버그 수정된 최신 DenyWord를 사용해 주시면 감사하겠습니다.

1. 우선 ?尾 -> (6)? 처리되는 것은
대체로 문자열이 번역되지 않거나, 길이가 0이 되어버리기 때문인데,
제가보기엔 이 버그는 DenyWord 080910버그거든요 =ㅅ=;;;
뒷부분의 것도 마찬가지입니다.
분명 '한자만 들어간' 문장만 잘리는 것으로 봐선, 이전 버전 문제인것 같은데[...]
으음...

2. DenyWord에서 1바이트 검출 기능이 뭐냐면(지금은 좀 바뀌었습니다만)
1바이트문자들은 ASCII + 반각가타카나(요샌 쓰이지도 않는)인데
ABCDEFGHI을 번역한다고 해서
ABCDEFGHI가 AJFSLEFIJ가 되진 않겠죠?
그래서 번역해도 문제가 안되는 텍스트는 그냥 번역하지 않고 되돌려보낸다..가 기본 취지입니다.

뭐 현재 문제가 되는 쪽은 새로 바뀐 저 기능에서 진화(?)한 '비일본어 검출 기능'인데,
구버전의 경우 '히라가나,가타카나,대화기호''한글자도 없는 경우' 번역하지 않도록합니다.
그런데 한자만 들어간 경우(대체로 이름) 쪽도 번역하지 않아 텍스트가 왕창 깨지는 문제가 발생했기 때문에
현재는 '히라가나,가타카나,한자,대화기호'를 검사해서 체크하도록 하고 있습니다.

최신버전으로 테스트해보신뒤 그래도 문제가 발생한다면 말씀해주세요.
옵션으로 저 검출기능을 사용하지 않도록 해볼께요.

라파에

2008.09.21
16:07:15

문제는 한자옵션 때문이였군요.
디나이 최신 버젼으로 하니 해결 가능 했습니다. = =;
또 삽질 했군요.
하지만 문제가 되는 함수처리줄을 찾지를 못하겠네요. 이벤트씬이 무시되고 그냥 넘어가는 증상은 여전히.. 흠냐..
이쯤되니 짜증이 버럭 나네요. 그냥 코드 찾는거 포기 하고 양양이나 다녀와야 겠습니다.
두분다 즐거운 주말 되세요~

List of Articles
번호 제목 글쓴이 조회 수sort 추천 수 날짜 최근 수정일
공지 Talk [필독] 테스트필터 사용시 주의사항 라파에 155439   2008-08-03 2008-12-16 00:03
64 Talk 필터 3개 커밋 완료했습니다. [2] Hide_D 9263   2008-08-11 2009-01-06 01:06
HK2FK KoFilter TextDump whoami님이 안하셨길래 대신; RLCMD는 해도 괜찮을 것 같긴 한데, 이건 안하나요?  
63 Talk RLCmd, KoFilter 의 디버그 로그 기능에 대해.. whoami 9246   2008-07-26 2009-01-06 01:26
슬슬 RLCmd와 KoFilter 의 테스트버전 딱지를 떼어줘야겠는데요, 디버그 로그 기능을 뺄까 그냥 놔둘까 생각중입니다. 어떻게 하면 좋을까요? 1. 필요하므로 그냥 놔둔다. 2. 없애고 로그기능만 넣은 디버그용 로그 필터를 하나 새로 만든다.. (단 디버그용 로...  
62 Talk ATCode 버전업에 대해 - 관리자님 봐주세요.. [1] whoami 9241   2008-07-26 2008-07-27 02:35
오랫동안의 (.. 그리 오랫동안은 아닌 것 같은 기분도 들지만) ATCode 테스트 버전의 테스트로 SOW 모드가 어느정도 안정이 되었다고 생각됩니다. 그래서 기존 ATCode 에 융합해서 버전업을 하고 싶은데 어떻게 했으면 좋겠습니까? 그냥 SVN 내에서 커밋만 하...  
61 Talk Windows 7, UAC, 64bit Hide_D 9107   2011-04-24 2011-06-28 01:25
사실상 요새 구입하는 '최신형' 컴퓨터들이 갖는 세팅이 Windows 7 64bit에다가 UAC를 기본값으로 두고 사용하는 방식인데, 기존 아랄트랜스가 여기에 대응하지 못하는 부분이 많습니다. Windows 7 - 사실 이게 제일 속편합니다. 이거 자체로는 문제되는 부분...  
60 Talk whoami님 [3] Hide_D 9072   2008-07-18 2008-07-18 21:25
아래에 만든 플러그인이 에러가 납니다. 맨 처음에 만들었던 개발모드가 풀유니코드로 작성되어있고, 이녀석이 그냥 돌릴땐 잘 돌아가길래 그냥 Ctrl+C, Ctrl+V 해주고, 위 아래에 Ansi -> Unicode Unicode -> Ansi만 붙여넣은 거라 아무래도 변환부에 문제가 ...  
59 Talk 비주얼베이직에서의 Hash값 생성 코드 작업 file HaruKaze 9022   2009-01-05 2009-02-14 11:04
 
58 Talk http svn을 운용하는건 어떨까요? [3] 아랄 8950   2008-07-20 2009-01-06 01:35
몇몇 개발자 분들께서 열악한 버전관리 환경 속에서도 플러그인을 개발하시는데 조금이나마 도움이 되고싶네요 소스는 svn상으로 함께 공유하며 자발적으로 개선해 나갔으면 하는데요 현재 기존의 플러그인에서 분기되거나 또는 아랄트랜스 기본 기능에 넣고 ...  
57 Talk 전에 쓸모 있는 기능의 2번 관련 Hide_D 8860   2008-07-31 2009-01-06 01:00
whoami님이 생각하시는 것 처럼 정규식도 생각은 해봤는데, 이건 저로서는 무리고 =ㅅ=; 저거 비스무~리 하게 와일드 카드만 사용 할 수 있는 모델을 게획해 봤는데, '이걸 만들어야 할지 말아야 할지' Hide_D는 연습장에 적힌 내용을 소환했다. > 문장의 시작...  
56 Talk SOW 방식 지원 ATCode 플러그인 소스 커밋하였습니다.. [2] whoami 8829   2008-07-27 2008-07-27 21:12
빠진 파일은 없을겁니다; 버전 정보는 손대지 않았습니다. 버전 정보 업데이트 해주시고.. 혹시라도 문제가 있으면 알려주시기 바랍니다. (개인적으로는 아랄님 자주 보고 싶은데 덧글 하나 없이 대화방에도 없이 스리슬쩍 사라져 버리셔서 아쉽.. ㅡ.ㅡ)  
55 Talk 사용자 사전 플러그인에 대해서 설문 [5] Hide_D 8785   2008-07-30 2008-07-30 22:47
으음 기본적으로 모든 게임에 사용되는 사용자 사전 을 목표로 진행중이기 때문에 ezTransXPwithCustomDic이 아니라 ezTransXP가 되고 싶습니다만... 0.2에서는 특별한 다이얼로그가 없기 때문에 이걸 그냥 ezTransXP.dll로 만들어 달라기도 애매한 상황입니다...  
54 Talk 라파에님 한번 테스트해보세요. [2] file Hide_D 8759   2008-08-17 2008-08-17 16:55
 
53 Talk 맵을 이렇게 사용해도 되나요? [2] Hide_D 8705   2008-08-09 2008-08-09 22:13
void CCustomDic2::SetKey(LPCSTR JpnWord, LPCSTR KorWord) { map<UINT,struct DicWord> EmptyMap; struct DicWord TempWord; map<size_t,UINT>::iterator iterBook; TempWord.WordLen = strlen(KorWord); TempWord.WordN = WordN++; UINT Hash=MakeStringHas...  
52 Talk 루비문자 처리 스샷 입니다. file 라파에 8595   2008-08-17 2008-08-17 17:43
 
51 Talk 어휴.. [2] file whoami 8573   2008-08-11 2009-01-06 01:06
 
50 Talk 아... 괴물한자의 정체가 Hide_D 8458   2008-08-23 2009-01-06 01:05
일반적인 과정 후킹시에 MS949 -> Shift-JIS(괴물 한자) 아랄이 인식한 텍스트 출력 함수에서 Shift-JIS(괴물 한자) -> MS949 인데, 괴물세트(?) 후킹시에 MS949 -> Shift-JIS(괴물 한자) 아랄이 인식 하지 못한 텍스트 출력 함수에서 Shift-JIS(괴물 한자) ->...  
49 Talk 플러그인을 다시 Multi2용으로 만들면서 생긴 궁금증 [4] Hide_D 8374   2008-08-09 2009-01-06 01:26
MFC를 그대로 써야하는지라 API용의 기본틀을 쓸순 없어서 새로 만들었는데, extern "C" __declspec(dllexport) BOOL __stdcall OnPluginInit(HWND hSettingWnd, LPSTR cszSettingStringBuffer); extern "C" __declspec(dllexport) BOOL __stdcall OnPluginOpt...  
48 Talk 컨텍스트 구조 제안(핸들러 구조) [4] Hide_D 8336   2011-04-21 2011-04-23 20:17
가령 모듈 3가지가 DumpText, FixLine, EzTransXP 요렇게 있다고 가정할때 var c0_EzTransXP = new EzTransXP("NoSpace"); var c0_DumpText = new DumpText("KOut,KHex,KHex16"); var c0_FixLine = new FixLine("/ATData/c0.dat"); c0_DumpText.setNext(c0_EzT...  
47 Talk VS 2005로 갈아탔습니다 [1] Hide_D 8272   2008-08-03 2009-01-06 01:34
MFC, 리소스 에디터 때문에 도저히 못 버티다가 옮겼습니다. VS 2008 깔고는 그 느린 속도에 기겁했는데, 이쪽은 꽤 빠르네요. [우홋홋] 근데, 2005와 2008 차이가 뭐죠? 버전 옮길때 그냥 파일 열고 버전 숫자만 바꾸면 땡이네요[...]  
46 Talk 어? ezTransXP 플러그인을 분석하다 생각난건데 [1] Hide_D 8162   2008-07-22 2008-11-22 16:38
이 플러그인에서는 전각 기호는 다른 코드로 치환해 뒀다가 다시 전각 기호로 되돌려주는데, 반각기호는 처리법이 약~간 특이합니다. 1. 원문에 ()<>{}가 없고, 번역문에 ()<>{}가 있으면, ()<>{}와 그 안의 내용을 날립니다. 2. 원문에 ()<>{}가 있고, 번역문...  
45 Talk 개행 처리 관련해서 일단 제 구상입니다 Hide_D 8149   2008-08-21 2009-01-06 01:05
랄까 어느새인가 개행처리가 아니라 텍스트 처리 필터가 되어있습니다만[......] (CmdFilter는 텍스트와 텍스트 바깥을 구분하고, 이건 텍스트 내부를 처리하는 느낌?) 우선 입력 받을 내용은 MaxLine MaxWord (MaxChar?) 개행 기호 문자열(또는 Hex) 그리고 ...