初级篇

解包:

KrkrExtract 目前最好用的kr2/z解包工具,xmoe开发并开源在Github上

Xp3Viewer 16年之前的kr作品,此工具就是特攻爆破级别的强大

Xp3Dumper 对新手不友好,一般不推荐(处理有emb验证exe完整性的游戏有奇效)

KrKrDump crsky的工具,专杀封包内与hash有关的kr游戏(例:花鐘カナデ*グラム Chapter:1 小桜結)

封包:

krkrrel—原加密封包,稳定

xp3_upk—拖动即可打包,快捷

解包方面,就个人而言,krkr2的引擎推荐用xp3Viewer,而krkrZ的话推荐用krkrExtract

这两个工具,都是将游戏主程序exe拖动到工具上打开,弹出解包窗口之后,将xp3封包拖到解包窗口里就可以开始解包,解出来的文件会以封包名新建一个文件夹存放在游戏目录下

ks文本通常存放在scenario文件夹/封包里,scn文本则通常存放在scn文件夹/封包里

进阶学习篇

解包与封包

首先就是解封包;关于游戏本身就是加密的话,那么修改后并且打包就得是加密回封

kirikiri2引擎,一般都是patch.xp3或者免封包读取的形式来作为游戏的汉化补丁

kirikiriZ引擎,最好就是Universal Patch或者免封包的形式运行,因为引擎本身的原因,封包过程会比较困难棘手

这两个引擎的汉化补丁处理方法中,都涉及了免封包读取,实际上免封包读取是最好测试的处理方法

首先就是启用forcedataxp3,也就是开启游戏读取data目录的功能

下载WinHex(工具不唯一),先在‘查看’中选择字符集No.2,然后选择代码页,再选择CP932编码(如果有需要的话,可以在字符集No.3中选择代码页的CP936方便对比,932是日文编码,936是中文编码)

然后将游戏主程序exe拖进WinHex的窗口中,然后搜索文本栏输入forcedataxp3(注意,没有.),如果搜索的是Unicode就改成ASCII搜索,就可以在代码页中看见forcedataxp3的位置,而这个位置上下加起来会有三个括号,括号中三个数值,如果要启用forcedataxp3这个功能,就让forcedataxp3后面紧跟着的()里的数字改成0,然后保存(最好是三个括号里的数值都改成0)

当想要做到免封包读取时,还要解决的是data目录与data.xp3共存的问题

如果只改了forcedataxp3,游戏还是会优先读取xp3封包而不是去读取data目录,这个时候也可以用WinHex来搜索,还是搜索文本,但跟上面的forcedataxp3不同的是,搜索Unicode而不是ASCII;搜索到之后可以看到data.xp3以及data.exe这个地方,这个时候你可以去更改data.xp3,随便改什么都可以,就随便改成dsen.xp3,然后保存,再打开游戏的时候,它就会优先去读取data目录文件夹

关于游戏本身是否支持patch封包的形式来作为后续补丁,可以通过Initialize.tjs来判断

这个tjs里面就是写了关于patch封包相关的定义,一般特征如图:

当在Initialize.tjs里面没有发现任何关于patch.xp3的定义,那么以patch的形式作为汉化补丁的方法就可以排除掉了

接下来则是kirkirZ引擎的汉化

Universal Patch的方式比较好用,用法就是先用krkrExtract解包,然后在游戏目录下创建ProjectDir文件夹,将修改过的东西丢进去

然后再在解包窗口点击Make Universal Patch就可以在游戏目录下创建一个_Patch.exe,这个exe起到的就是调用ProjectDir文件夹里面已修改文件的作用

解封包这部分还剩下最后一点,就是关于.cf以及.sig这俩玩意儿的验证处理

其实去掉这两种验证很简单,首先也还是先将data封包解出来,然后在data文件夹里面搜索release.ks

点进去之后,可以看到如图部分关于.sig验证的定义

(放图)(将'data.xp3','patch.xp3删掉')

然后就是.cf验证,这时候可以用sublime text的多文件搜索,直接搜.cf,可以看到first.ks里面也有一段.cf验证的调用

(放图)(从[iscript]开始到[endscript]这一段删掉)

这样我们直接将.cf和.sig删掉,打开游戏可以发现已经可以正常运行


闲暇的时候会研究一下