본문 바로가기

쓰기

안녕하세요.

아랄트랜스에는 수많은 필터가 있지만 여태까지

각 필터들을 종합해서 설명한 적이
한번도 없었기 때문에[...]

싹 정리할겸 필터들에 대해서 설명을 해보도록하겠습니다.

1. 필터가 왜 필요할까?


우선 아랄트랜스가 뭘하는 녀석일까 생각해보죠.

간단히 말해서 아랄트랜스는
게임 프로그램에서 대사가 지나갈 때 그걸 '납치'해선 번역하고 다시 집어넣는
작업을 하는 프로그램!
이라고 볼 수 있겠죠.

그런데 이 대사를 가져올 때 진짜 대사만 슥싹하고 가져오면 무척 좋겠지만
아랄트랜스가 가져오는 텍스트가 순수하게 대사만 있는 경우는 그렇게 많지 않다는게 문제!

이 텍스트를 그대로 번역기에 돌렸다간 문제가 발생할 수도 있겠죠?
그래서 문제가 발생하지 않도록 적절히 처리를 해주기 위해 필터를 사용합니다.

2. 필터들은 어떤식으로 작동할까?


그렇다면 필터들은 대체 어떻게 돌아가는 걸까요?

우선 아랄트랜스 창을 불러와보죠.

AT.png

자주 볼 수 있는 모양이죠?

후킹플러그인에 ATCode, 번역에 ezTransXP가 설정되어있고, 그 가운데에 필터들이 보입니다.

이 필터는 파이프라인 구조로  위->아래,  아래->위로 차례대로 실행됩니다.
말이 좀 어렵죠?

filter.png

그림으로 나타내보면 이렇게!

이걸 설명해보자면
(1) 우선 후킹 모듈에서 일본어를 납치합니다.
(2) 필터1이 그 텍스트를 적절히 처리하고 다음으로 넘깁니다. [필터1 전처리]
(3) 필터2가 그 텍스트에 '추가로' 처리하고 다음을 넘깁니다. [필터2 전처리]
(4) 필터3이 그 텍스트를 처리하고 번역기로 넘깁니다. [필터3 전처리]
(5) 마지막으로 넘어온 텍스트를 번역 모듈이 '번역'합니다. [번역]
(6) 다시 필터3이 번역된 문장을 원래대로 되돌립니다 [필터3 후처리]
(7) 그 다음에 다시 필터2가 원래대로 되돌리고 [필터2 후처리]
(8) 필터1도 처리한걸 되돌리고 다음으로 넘기고 [필터1 후처리]
(9) 마지막으로 후킹 모듈이 받아서 게임에 고쳐씁니다.

이렇게 필터들은 자기 차례에 자기 할 일만 맡아서 처리하게 됩니다.

3. 필터들의 순서

코드글을 필터를 보게 되면,
앞에 오는 필터는 항상 앞에 오고, 뒤에 오는 필터는 항상 뒤에 오는 것을 알 수 있죠.
(당연하겠지만) 필터별로 처리해야 할 위치가 정해져있기 때문입니다.

2번에서 보았듯이 필터들은 딱 자기 할 일만 하고 텍스트를 넘기기 때문에,
자기가 처리해둔 일에 대해서 '표시'를 해두게 됩니다. (일부분을 떼어먹는 경우도있습니다;)

그리고 주우욱 필터들을 돌았다가 다시 자기 차례가 되었을때 그 '표시'를 보고 마무리 작업을 하게 되는데,
그 표시 또는 미리 작업으로 인해 다른 필터가 오작동을 할 수 있기 때문에 그런 일을 줄이기 위해
순서를 표시하게 됩니다.


적절한 예를 들어볼까요?
한  게임은 게임 대사에 띄어쓰기가 들어가선 안되고,
예외로 '[Exit Scene]'이라는 경우만 게임이 종료되기 위해 필요하다고 해보죠.
[이런 경우와 비슷한 게임들이 좀 있습니다 -_-ㅋ]

필터 A필터 B가 있고 이런 일을 한다고 해보죠.
필터 A - 나는 [Exit Scene]을 보관했다가 번역이 끝나면 다시 되돌려 줘.
필터 B - 나는 띄어쓰기가 보이면 무조건 제거해.

이 경우에 필요한 필터 순서는
후킹 플러그인 -> 필터 A -> 필터 B -> 번역기
가 됩니다.

작동 예제!
(1) 후킹 플러그인이 'ゲームが終わった。[Exit Scene]'라는 문장을 받아 넘깁니다.
(2) 필터 A가 이걸 'ゲームが終わった。'로 바꾸고 [Exit Scene]을 보관합니다.
(3) 필터 B는 여기에선 할 일이 없으므로 그냥 넘깁니다. 'ゲームが終わった。'
(4) 번역합니다! '게임이 끝났다.'
(5) 필터 B가 띄어쓰기를 없앱니다 '게임이끝났다.'
(6) 필터 A가 뒤에 [Exit Scene]을 붙입니다. '게임이끝났다.[Exit Scene]'
(7) 후킹 플러그인이 '게임이끝났다.[Exit Scene]'를 게임에 넣습니다.

그런데 만약 이 순서가 뒤집혀 있다면 어떻게 될까요?
후킹 플러그인 -> 필터 B -> 필터 A -> 번역기

작동 예제!
(1) 후킹 플러그인이 'ゲームが終わった。[Exit Scene]'라는 문장을 받아 넘깁니다.
(2) 필터 B는 여기에선 할 일이 없으므로 그냥 넘깁니다. 'ゲームが終わった[Exit Scene]'
(3) 필터 A가 이걸 'ゲームが終わった。'로 바꾸고 [Exit Scene]을 보관합니다.
(4) 번역합니다! '게임이 끝났다.'
(5) 필터 A가 뒤에 [Exit Scene]을 붙입니다. '게임이 끝났다.[Exit Scene]'
(6) 필터 B가 띄어쓰기를 없앱니다 '게임이끝났다.[ExitScene]'
(7) 후킹 플러그인이 '게임이끝났다.[ExitScene]'를 게임에 넣습니다. [어라?]

이 경우에 게임은 [Exit Scene]을 찾기 못해서 에러가 나게 됩니다[....]

왜 이런 문제가 발생했을까요?
그야, [Exit Scene]의 띄어쓰기를 제거하면 안되니까 겠죠?
그래서 필터들은 제각기 순서를 갖게 됩니다.

이 순서는 대략적으로 다음으로 정할 수 있습니다.
1. 텍스트를 확인하는 필터 : 다른 작업이 포함되면 안되니까 가장 앞에!
2. 함수를 처리하는 필터 : 번역율을 올리기 위해 가능한 앞에!
3. 문장을 다듬는 필터 : 함수를 처리한 다음에 해야겠죠?
4. 글자를 처리하는 필터 : 가장 작은 것을 처리하므로 뒤로
5. 번역에 도움을 주는 필터 : 번역 모듈과 가까울수록 좋겠죠? 가장 아래로!

이 원칙과 필터의 기능을 조금 생각해보면 어떻게 해야 올바른 순서를 갖는지 아실 수 있을거에요.

*. 추가로 다음 문서들을 참고해보세요!
필터 순서 ( http://www.aralgood.com/zbxe/475169 )
모든 플러그인 안내 ( http://www.aralgood.com/zbxe/152140 )

이것으로 필터의 간단한 구조에 대한 설명을 마치도록 하겠습니다.

궁금한 내용이나 부족한 내용이 있다면 질문하면 보충하도록 하겠습니다!

다음부터는 각각의 필터에 대해서 설명을 해보도록 하겠습니다.

다른 강의는 태그:필터강의 에서 확인할 수 있습니다.

밥쨩

2009.03.13
23:29:50
수...수고하셨습니다 ( _ _). 저같은 초보자는 봐도 이해가 안되는 글이군요.

순수앜

2009.03.14
00:10:26
잠시 공부하다 머리식히려고 들어오니 이런 엄청난 글이!!!!

히데사마 수고하셨어요~~~~

justice

2009.03.14
01:19:50
흐음

조오오오오금 이해가 됩니다
감사합니다

북극

2009.03.14
01:53:50
수고하셨습니다 +_+ 좋은 글 ㄳㄳ

월희

2009.03.14
06:44:36
님 사랑해여 ... 벌써 올려주시공

내가 여태 몰랐던것도 있네염  님 ㄳㄳㄳㄳㄳㄳㄳㄳㄳ

누구길래

2009.03.14
09:54:15
우어......대단하신...... 수고하셧습니다 ^^

우루룽

2009.03.14
11:51:01
음 적기 귀찮았을듯0_0
수고스~~~0_0/

평군

2009.03.15
14:58:23
우와... 수고하셨습니다...

Doctor

2009.03.18
15:39:13
수고하셨습니다.

Kian

2009.03.30
15:41:36
멋진 강좌군요~ 작성하신다고 수고하셨습니다~

다커

2009.04.02
23:37:59
수고하셨습니다. 도움이 됬습니다. ㅁㅅㅁ~
List of Articles
번호 제목 글쓴이 조회 수 추천 수sort 날짜 최근 수정일
공지 아랄트랜스로 게임하기 앞서 기본 셋팅 확인하기! [4] file TwoComet 40502   2012-08-30 2014-02-26 20:12
공지 아랄트랜스 - 초보자 가이드 [94] file Hide_D 319331   2008-07-16 2015-02-27 18:02
공지 모든 플러그인, 필터 안내 ('09.03.13) [20] Hide_D 191387   2008-10-31 2009-03-13 23:48
공지 아랄트랜스 0.2 - 초보자 가이드 [109] file 아랄 505856   2008-07-16 2013-12-31 09:32
56 시노비류(忍流) 플레이 TIP [5] 마기우스 11173   2009-12-18 2010-01-04 00:04
우선 이걸 어디다 올릴지 고민하다 강좌&팁에 올리기로 했습니다. 공략이라고 하기는 많이 부족한 감이 있어서요. 공략이나 팁 같은 글은 처음으로 써보는 군요. 항상 보기만 하다가 한 번 올려봅니다. 참고로 CG회수나 각 엔딩 조건 같은 건 옆동내 섬나...  
55 자료마당에 존재하는 귀축왕 란스 SSG가 작동하지 않는 분들을 위한 팁 OVER WORLD 10132   2010-01-14 2010-01-14 23:18
자료마당의 이용자자료실에 보면 귀축왕 란스의 SSG가 존재합니다. system3.9 ver.5.49에서만 작동하지요. system3.5에서는 작동하지 않습니다. 그런데 혹시 system3.9 ver.5.49임에도 불구하고 SSG가 작동하지 않는 분들이 계시지 않습니까? 제가 그러했습니...  
54 전여신zero 우연히 알게된 팁..; [2] file 제니우스 11662   2010-01-15 2010-04-21 14:36
 
53 공주사냥 던전 마이스터 (히메가리) 설치 방법 키리아스 21038   2010-01-16 2010-01-16 16:01
CD 이미지를 툴을 이용해서 디스크에 집어넣고, Setup을 어플로케일로 실행하는건 아시겠지요. 계정이 영문이 아니면 안된다고 합니다. 저는 설치에 별다른 문제는 없었어요. 문제는 패치인데. 패치와 확장팩이 자동 설치이기 때문에, 그냥 실행하면 1152 오류...  
52 QLIE 엔진을 사용하는 게임 이렇게 찾으면 쉽습돠 [8] file Wales 4028   2012-08-08 2013-07-17 19:30
 
51 인터넷 익스플로러 8에서 겟츄 검색 사용하기 [1] file whoami 9644   2010-01-23 2010-02-01 07:49
 
50 세이나루 아티팩트 설명 [3] file Beriche 9636   2010-01-30 2010-05-13 04:25
 
49 φage엔진 코드 찾기 강좌. [10] file FrigateBird 12515   2010-01-30 2010-02-02 11:53
 
48 코드파인드를 위한 기초 지식. [13] G2m 22909   2010-02-01 2013-04-13 16:47
코드파인드를 위한 기초지식 Vol. 1 기계어 컴퓨터가 이해할 수 있는 유일한 언어. 사람이 짠 프로그램 소스는 일종의 번역기에 의하여 기계어로 번역되어지고 컴퓨터는 이것을 실행하게 된다. 프로그램 일반적으로는 함수의 집합체라고 한다. 여기서 말하는 ...  
47 코드파인드를 위한 기초 지식(2) [29] file G2m 18799   2010-02-01 2011-11-08 00:55
 
46 아랄트랜스는 어디서 받나요? Hide_D 7712   2010-04-29 2010-04-29 16:42
폴라리스 커뮤니티에서는 아랄트랜스로 미소녀 게임을 이용하는 방법 (AT코드 등)을 다루고 있으며, 아랄트랜스 본체는 http://lab.aralgood.com/ 에서 받을 수 있습니다.  
45 컴플리트사의 C4엔진 간단한 검색법.. [1] file 유피에르 1816   2012-08-25 2012-08-26 00:09
 
44 밑의 글의 보충 설명이랄까요 [2] 불협 8099   2010-06-24 2010-09-26 09:43
저도 프로그래밍은 조금 배웠지만, 디버깅에 대해선 아는게 없어서 밑의 글을 읽고 도움이 참 되었습니다. 다만, 프로그래밍 경험이 없는 분들의 입장에선 조금 이해하기 어렵단 생각이 드네요.ㅎ 특히 첫번째 강좌와 두번째 강좌의 레벨차이가 꽤 난다는 생각...  
43 오토보쿠2 아랄을 후커처럼 사용해보자. [3] file Ria- 6903   2010-07-03 2015-04-23 01:06
 
42 혹시나 하루카나소라(요스가노소라 팬디) 실행오류 있으신분은 보세요! file Gintoki 10917   2010-07-25 2012-09-24 01:24
 
41 한국 IP 차단된 일본 사이트 접속하는 방법 [8] 키리아스 19694   2010-08-13 2012-05-18 11:24
http://www.aliveproxy.com/high-anonymity-proxy-list/ 위 사이트에 접속하면 IP:Port Host name 라고 적힌 밑에 255.255.255.255 : 80AA 이런 식으로 주소와 포트가 적혀있습니다. 익스플로러 도구 모음에서 도구 -> 인터넷 옵션 -> 연결 -> LAN 설정에서 프...  
40 에우슈리사 게임들에대한 간단한 팁(팁이라기도뭐한거지만...) [1] Ronya 6392   2010-10-21 2011-11-24 13:42
1. 유니코드 변경 후 플레이하세요... 에유슈리사 게임들은 어플과 그다지 안친합니다. 제 경험상 에우슈리 게임들은 어플돌리면 어느순간부터 에러메시지 계속뜹니다... (왼쪽이 무시고 오른쪽버튼이 종료하는거였나? 반대엿나?..;) 어플돌려도 괸찬은분도 계...  
39 코드파인드를 위한 기초 지식(3) [4] file G2m2000 9380   2011-07-13 2011-12-07 16:13
 
38 후크하면 아랄트랜스가 소리소문없이 사라지는 분은 [1] 키리아스 5241   2011-01-17 2015-02-11 23:17
혹시 아랄트랜스가 바탕화면에 있지 않나요? 아랄트랜스를 내 문서라든가 어디든지 집어넣으세요. 세 줄 관리해야 하는데... 정말 이것 뿐입니다 =_= 경로가 길어져서 그런 건지, 한글이 들어가서 그런 건진 모르겠어요.