| 本帖最后由 漆黑之翼 于 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个是其他的资源文件,其他什么图片脚本的都在里面。
 
 加密方式是每个字节跟0xA4异或。后面的文件数据没有加密。复制代码// 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];
最后发现红辉心跟收集荷取一样也是用SQuirrel做脚本的
  
 最后是参考源码
  kokishin.zip
(2.11 KB, 下载次数: 255) 
 
 
 |