NekoPack

엔진명은 시그니쳐를 따와서 NekoPack이라 다른곳에서도 부르기에 그렇게 부릅니다.

엔진 개발사가 어디인지도 제대로 모름.. (Rosebleu같긴한데.. 흠..) // Closed Source인듯..

 

 

==엔진정보==

 

사용 브랜드::

Rosebleu

Lime사 초기 작품 (현재 QLiE로 변경)
more (少女アクティビティ 이후 작품, KrKr에서 넘어옴)  등

 

Signature

단순판단조건:Dat파일의 유무로 판단합니다. (*.dat)

세부판단조건:Dat 파일에 시그니쳐가 NEKOPACK 입니다. (sig=NEKOPACK)

예시)

스크린샷(26).png

 

내부구성요소

게임실행파일 : exe

데이터 파일 : Dat

      ㄴ이미지파일 : png , mng(영상)

      ㄴ사운드파일 : ogg

      ㄴ스크립트 : 확장자 X

 

참조

엔진에 대한, 더욱 자세한 프로그래밍적 정보는 이곳을 참조바람

https://github.com/morkt/GARbro/blob/3dc35d77e96f9ccce014d8241f26eac5d64a0ad4/ArcFormats/ArcNEKO.cs

 

 

 

==파인딩==

 

대전제: 아랄디버거로 매우 쉽게 찾아짐

(그럼에도 정리하는 이유는 패턴화, 자동화를 위해서...)

스크린샷(27).png

[ESP+0x8]로 구합시다.

 

(물론, [ESP+0x4c]로 구해셔도 됩니다...... 실제로 0x4c로 구해진코드도 있고..

암튼.... 안정화된 주소 구하려면 다 뜯어봐야겠죠. 음..(근데.. 굳이 필요가 있을련...지..?.... 는 누군가하겠지..))

 

 

바이너리패턴

558BEC81C4C4FDFFFFB8

 

스크린샷(28).png

 

 

ATcode 기본 틀:

FORCEFONT(5),FONT(Malgun Gothic,-13),ENCODEKOR,HOOK(주소,TRANS([ESP+0x8],PTRCHEAT),RETNPOS(COPY))

 

주소에 찾은 주소를 넣으면됩니다.

물론, 폰트는 마음대로 바꿔도되고요.

 

 

EX)

https://polaris.hided.net/aral_atcode/2674644

https://polaris.hided.net/aral_atcode/2674641

 

등.. 다양합니다..

엔진표기가 안되어있기에 따로 찾기가 귀찮으니 스킵..

 

 

==자동화==

실질적인 인식방법?

파일확장자/바이너리 서치

*.dat/binary search()

 

자세한 설명:

VNR에서 하듯이 그냥 Dat있으면,

바이너리 패턴대로 검색하고 없으면 무시하는 방식으로 합시다.

귀찮게 시그니쳐 확인하고... 그런거.... ㅁㄴㅇㄹ.. 왜하죠..

그런건 만약에 충돌현상 일어나서 해도 늦지 않을듯..

 

 

=====

요약:

실행 :

그냥 하면 안되는 경우 있음

=>

추출 :

그냥 잘 추출됨

=>

번역 :

특수한.. 명령어 구경을 못함..