昨儿刷论坛看见个老游戏叫《半老徐娘》,看截图挺对我胃口,结果一搜发现只有毛子语版本。这我哪儿看得懂,心一横干脆自己动手汉化得了。
第一步:拆包翻资源
掏出安卓逆向三件套:APK改之理、MT管理器、Jeb反编译器。先拿改之理把安装包拆开,在res文件夹里翻来覆去扒拉,结果发现文字全塞在这个动态库里。好家伙,跟我玩暗度陈仓!
- 用010 Editor打开so文件搜俄文
- 找到几百条”Привет”这类字符串
- 拿谷歌翻译机翻后手改口语化
小编温馨提醒:本站只提供游戏介绍,下载游戏推荐89游戏,89游戏提供真人恋爱/绅士游戏/3A单机游戏大全,点我立即前往》》》绅士游戏下载专区
第二步:硬核改编码
直接替换俄文就崩游戏!用Jeb反编译一看,发现这玩意儿用的自定义编码,根本没考虑双字节汉字。试了十几回,找到个野路子:
- 给所有汉字加空格避免排版错位
- 用十六进制编辑器改UTF-8标识位
- 把字体文件里的问号符号替换成微软雅黑
改完拿手机测试,菜单界面全是豆腐块。气得我蹲厕所抽了半包烟才想起来要改assets/fonts里的字体映射表。
第三步:动态库大作战
剧情文本全压在so库里,IDA Pro反编译看得我眼花。关键发现这破玩意儿居然用指针偏移调用文本,随便加个汉字就内存溢出。
折腾到凌晨三点终于搞定:
- 先扩大俄文原字符串的存储空间
- 汉化文本长度控制在120%以内
- 用Hook劫持文本渲染入口
最骚的操作是在启动页加了段检测代码,如果系统语言是中文就自动加载我的汉化库,用毛子语就还原原版。
成果跟踩的坑
前后折腾五天总算能玩了,但还有俩毛病:
- 角色名超过三个字会变省略号
- 部分过场动画字幕对不齐
测试机从安卓7到12都能跑,就是鸿蒙系统会抽风闪退。资源文件我打了个补丁包放论坛了,爱折腾的自己下。
这活儿干完真心劝各位:没点耐心真别碰老游戏汉化,光找文本位置就跟大海捞针似的,手都快抽筋了。不过看到俄文变中文那刻,真比喝了冰啤酒还爽!
免责声明:喜欢请购买正版授权并合法使用,此软件只适用于测试试用版本。来源于转载自各大媒体和网络。
此仅供爱好者测试及研究之用,版权归发行公司所有。任何组织或个人不得传播或用于任何商业用途,否则一切后果由该组织及个人承担!我方将不承担任何法律及连带责任。
对使用本测试版本后产生的任何不良影响,我方不承担任何法律及连带责任。
请自觉于下载后24小时内删除。如果喜欢本游戏,请购买正版授权并合法使用。
本站内容侵犯了原著者的合法权益,可联系我们进行处理。