这事儿说起来,完全是年初那会儿闲得蛋疼,手里一个大项目刚交差,领导又不批假,就想找点小玩意儿折腾一下。天天看群里有人求这个《圣骑士复仇之夜》的安卓汉化版,这游戏我以前在电脑上玩过,剧情确实够劲,但每次用模拟器都觉得麻烦。一看安卓上居然没有靠谱的汉化,火气就上来了。

第一步:找货源和摸底

我第一件事就是,去墙外几个站,终于扒拉下来一个比较干净的原版APK。APK拿到手,马上丢进我常用的那套逆向工具里,先跑一遍。想着这估计也就是个Unity或者Ren’Py的小玩意儿,应该三下五除二就搞定了。

  • 拆包: 用拆包工具直接反编译,把资源文件和代码结构都给扒拉出来
  • 摸索: 翻了半天,代码结构倒是挺清晰,但一文字资源,傻眼了。

小编温馨提醒:本站只提供游戏介绍,下载游戏请前往89游戏主站,89游戏提供真人恋爱/绅士游戏/3A单机游戏大全,点我立即前往》》》绅士游戏下载专区

它文字肯定不是放在那种好找的XML或者TXT里,而是被塞进了一个后缀很奇怪的加密资源包里,看着像是一种日本独立游戏圈常用的加密引擎,非常小众,以前只听说过,没真动手抠过

第二步:绝境逢生——抠文件

遇到这种自创引擎,硬啃代码那是给自己找不痛快。我转头就跑去几个老前辈的论坛里翻箱倒柜,去有没有人以前做过这个引擎的提取工具。功夫不负有心人,在某个十几年的老帖子里,我真挖到一个C#写的、专门针对这类加密包的解包工具

这工具拿回来,直接在虚拟机里跑,没想到这么老的东西居然还能用!

  • 提取: 我把那个加密包扔进去,工具一顿噼里啪,吐出来一个巨大的脚本文件,好家伙,足足几十万字的日文文本,光是那个体积就头大。
  • 测试: 随便抽几段关键对话出来,对照着游戏里的场景,确认这个就是全部的剧本没跑了。

最难的文件提取算是搞定了,接下来就是体力活。

第三步:汉化地狱与编码折腾

几十万字,指望我一句句翻译那得猴年马月。我直接丢给某翻译引擎,让它跑一遍生成一个初稿。但日翻中这玩意儿,不亲自校对根本没法看,那些语气、专有名词、人名,翻出来都是一堆莫名其妙的东西。我连着熬了好几个通宵,对着原文和机翻稿,一句句捋顺改掉所有拗口的地方,统一了所有角色的称谓。

文本处理完,我用那个解包工具的配套脚本,又把它打包回原来的格式。这时候最怕的就是编码问题

  • 回填: 把新的中文文本文件塞回去重新生成资源包。
  • 初次报错: 第一次打包完,我替换进去编译APK,装到手机上一跑,一进剧情对话,“砰”!直接报错闪退,一看,果然是中文编码没法识别,全变乱码了。

回去查工具的配置文件,折腾了快一个小时,才发现是目标文件的编码格式从原来的Shift-JIS变成了UTF-8,但游戏引擎本身只认特定的非标准编码。我在文本编辑器里强制把编码改回最原始的GBK,又试了一次

第四步:的收尾和品尝果实

这回再跑,中文终于能显示了,但新的问题又冒出来了。很多台词在屏幕上显示不下,直接溢出,或者把旁边的立绘给盖住了,看着特别难受。这是因为中文的字宽和日文不一样,导致文本框的显示布局崩了

没办法,我只得找到控制文本显示的配置文件,找到那几个关键的坐标参数,一点点调小字号,调大文本框的宽度和高度,来适应中文的显示习惯。这个过程很磨人,需要不断地编译安装看效果再改

前后折腾了快一个礼拜的晚上,终于在我的测试机上,看到完整的、排版正常的、中文对话流畅地跑起来。那种感觉,简直了。虽然只是个汉化小活,但从找工具、抠文件、搞定编码,到调整排版,自己走了一遍这个流程,还是挺有成就感的。马上就整理出来分享给大家了。玩去!

免责声明:喜欢请购买正版授权并合法使用,此软件只适用于测试试用版本。来源于转载自各大媒体和网络。 此仅供爱好者测试及研究之用,版权归发行公司所有。任何组织或个人不得传播或用于任何商业用途,否则一切后果由该组织及个人承担!我方将不承担任何法律及连带责任。 对使用本测试版本后产生的任何不良影响,我方不承担任何法律及连带责任。 请自觉于下载后24小时内删除。如果喜欢本游戏,请购买正版授权并合法使用。 本站内容侵犯了原著者的合法权益,可联系我们进行处理。