文件列表
通过观察可知所有的xp3封包都配有sig签名,exe配有cf文件,此外还有个xp3dec.tpm,存档放在当前目录无需更改。前期处理的目标是移除sig、cf文件,对所有文本进行转码,把所有资源文件封入data中
前期处理
看到xp3dec.tpm就知道本作不能直接用Garbro提取文件,祭出krkrextract,先解包data.xp3,用EmEditor打开所有的ks、txt、tjs文件,语言选日语(自动选择),全部保存为UTF-16LE(有签名)
移除sig。在data文件夹中找到release.ks(本作是在script文件夹里),用EmEditor打开,找到:
/* チェックするファイル */ var fn = [ System.exeName.substr( System.exePath.length ), // エンジン名 'data.xp3', 'patch.xp3' ];
可见本作的sig校验只对data.xp3还有patch.xp3有效,其它的直接删掉也不影响运行。用//注释掉这两行
移除cf。打开first.ks,发现一开头就是:
[iscript] /* cfファイルチェック */ var file = ( Storages.chopStorageExt( System.exeName ) + ".cf" ); if( Storages.isExistentStorage( file ) != true ) { System.inform( 'cfファイルがありません。終了します。' ); System.exit(); } [endscript]
把这整段删掉或者注释掉即可
回到游戏根目录下,把sig和cf文件都删掉,删除data.xp3,把解包得到修改好的data文件夹放到游戏根目录,试着双击直接运行游戏,游戏正常启动
用krkrextract解包其它所有xp3封包,把解出的文件夹放进游戏根目录下的data文件夹中,删除所有xp3封包,删除xp3dec.tpm,顺便把散落在外的krflash.dll和krmovie.dll放进plugin文件夹。试着双击直接运行游戏,游戏正常启动
汉化
需要汉化的文件
对于本作而言:
对话文本还有选择文本在/data/scenario
(一般情况下都在这里)
标题在/data/script/first.ks
(不一定,把所有文件都用文本编辑器打开搜索一下标题就知道了)
菜单在/data/system/Menus.tjs
还有/data/script/customMenu.ks
(也是搜索一下就知道了)
手动或机翻上述提到的文本就行了
更改exe以显示简体中文字体
转成UTF16只是让文本能正常解析,还需要修改EXE的默认编码才能解决文字大小不定的问题:
winhex打开exe,搜索C6431780 把 80 -> 86
如果有打开字体选择界面,8A401A8845D7 -> C645D7869090
更改完成后运行exe发现报错,弹窗说exe有问题通不过认证,打开release.ks,找到:
function onCheckSignatureDone( handler, info, result, error )
{
message("署名確認結果 : " + handler + ":" + result + ":" + error );
if( result < 1 )
{
//System.inform( '認証エラー' + "\n\n" + "File : " + file + "\n" + "Result : " + result + "\n" + "Msg : " + error );
//System.exit();
}
}
把弹窗注释掉就行了,现在游戏已经可以完美显示简体中文
其它更改
删除游戏刚启动时自动播放的图片
游戏刚启动时播放的那几张图片不能跳过,而且耗时很长,打开/data/script/mode_title.ks,找到:
;メディ倫テロップ
*medi|
[clickskip enabled="false"]
[if exp="sf.trial == false"]
[haikei file="medi1" st="bg" fade="cross" time="500"]
[wait time="2000"]
[haikei file="white" st="bg" fade="cross" time="500"]
[wait time="1000"]
[haikei file="medi2" st="bg" fade="cross" time="1500"]
[wait time="3000"]
[haikei file="white" st="bg" fade="cross" time="500"]
[wait time="1000"]
[haikei file="medi3" st="bg" fade="cross" time="1500"]
[wait time="3000"]
[haikei file="white" st="bg" fade="cross" time="500"]
[wait time="1000"]
[endif]
把这部分代码直接删除,那些什么警告啊啥啥的就直接没了,但还是会显示logo,找到:
[haikei file="logo00" st="bg" fade="cross" time="1500"]
[haikei file="logo01" st="bg" fade="28" time="1500"]
删掉或者注释掉,发现类似的东西后面还有,找到全删了:
[wait time="4000"]
[haikei file="white" st="bg" fade="cross" time="500"]
[wait time="1000"]
;警告文
[bg file="black"]
[crossfade time="2000"]
[haikei file="caution001" st="bg" fade="cross" time="1500"]
[wait time="1000"]
[haikei file="caution002" st="bg" fade="cross" time="1500"]
[wait time="1000"]
[haikei file="caution003" st="bg" fade="cross" time="1500"]
[wait time="3000"]
[bg file="black"]
[crossfade time="2000"]
现在只要一运行游戏就会直接进入主界面,免得浪费时间
封包
用Garbro打包kirikiri2文件非常方便,把data和patch两个文件夹打包成data.xp3和patch.xp3即可
注意打包时不要带上最外层的文件夹data和patch本身,只打包里面的
data.xp3里有所有的日语版资源文件,而patch.xp3就是汉化补丁了