本帖最后由 漆黑之翼 于 2015-3-28 16:55 编辑
一时脑抽跟了下红辉心,现在发布下成果。资源文件夹里面一共有3类文件 1、data.dpk。2、pack01.pak。3、rpack01 02 03。
1、data.dpk
这个文件里面是个Json字符串,存着一些游戏设置。前四个字节是个checksum,后面是加密字符串。加密方式大致是这样:
- buff[i] = buff[i] ^ ((i & 1) ? 0x3 : 0x39);
复制代码
2、pack01.pak
这个文件存放的是ogg格式的BGM。头部结构大致是这样:
- struct SoundHeader
- {
- char magic[8];
- int infoCnt;
- };
- struct SoundInfo
- {
- int dat1;
- int id; // BGM的ID
- int dat2[3];
- int offset; // 文件中的偏移
- int dat3;
- int size; // 大小
- };
- SoundHeader header;
- SoundInfo infos[header.infoCnt];
- char unknown[0x14];
复制代码 后面紧接着数据。
3、rpack01.dat、rpack02.dat、rpack03.dat
这3个是其他的资源文件,其他什么图片脚本的都在里面。
- // Struct Def
- struct ResHeader
- {
- char magic[8];
- int magic2;
- int headerSize;
- int fileCount;
- int listSize;
- int reserved[10];
- };
- struct ResFileInfo
- {
- size_t nameLen;
- string name;
- INT64 offset;
- INT64 size;
- };
- //File Def
- ResHeader header;
- ResFileInfo filelist[header.fileCount];
复制代码 加密方式是每个字节跟0xA4异或。后面的文件数据没有加密。
最后发现红辉心跟收集荷取一样也是用SQuirrel做脚本的
最后是参考源码
kokishin.zip
(2.11 KB, 下载次数: 261)
|