Rest Time !/Monologue

지금은 ?

포레 2013. 5. 23. 21:25

 

 

 

이번 DISKER 프로젝트 프로그램 규모가 생각한 것보다 아주 조금 크게 나와서

 

여전히 시간이 걸리고 있습니다.

 

현재, 메인 코어 프로그램 개발 (80%), 티스토리를 통한 업데이터 프로그램 (50%) 해서 개발중인데

 

졸라 귀찮네 . . .

 

그래서, 이 지루함을 달래기 위해

 

 

트위터 대곤님의 추천을 받아 그리자이어를 시작해봅니다.

 

주인공이 짱짱맨이고, 히로인들의 털털함과 병맛이 이 게임의 큰 매력이라 볼 수 있겠네요.

( 새벽의 호위랑 비슷한거 같습니다. )

 

그리고, 생각보다 재밌길래, 게임을 뜯어보니 . . .

 

일단, 언팩을 해놓고나서, 리버싱하기도 귀찮습니다. 그냥 바이너리로 보죠.

 

[ 스크립트 부분 ]

 

 

꼬라지보니까, 암호화 혹은 패킹되어있는데, 저기 Signature 처럼 보이는 문장 옆에 보니

 

온전한 숫자가 있는거로 봐서 이건 패킹이 확률이 높네요.

 

 

[수정함.]

 

이런식으로 말이죠.

 

이걸 풀어보면

 

 

이런식으로 나오는데, 밑에 숫자가 뭔가 규칙적인거로 봐선 앞에 16 bytes 는 헤더같네요.

 

 

 

대충 이런구조로 말이죠.

 

 

 typedef struct _UNKNOWN_DATA_STRUCT{

     DWORD dwDataSize;

     DWORD dwDataOffset;

 }UNKNOWN_DATA_STRUCT, *PUNKNOWN_DATA_STRUCT;

 

 

Resource Data 는 파일 용량 - 10h (해더사이즈) 하면 되고,

 

Unknown Data Size 는 StringOffsetEntries/sizeof(UNKNOWN_DATA_STRUCT),

 

String Offset Entries 는 대충 스크립트 보고 끼워주면 되고

 

Resource Data Entry 는 String Offset Entries 작업이 끝나고난 시작점을 잡아주면 되겠네요.

 

이걸 기준으로 첫 문장 하나 뽑아보면, "scene それぞれの思惑" 이라는 문장을 볼 수 있죠.

( 문장 앞엔 플레그로 추정되는 값 2 bytes 가 존재합니다. )

 

전체적인 구조는

 

이런 느낌 ?

 

대사 추출하면

 

ExtractText.TXT

 

이런 느낌.

 

근데, 난 왜 이짓을 하고 있지 ?