初级篇
解包:
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删掉,打开游戏可以发现已经可以正常运行