今天得空,跟大家伙儿聊聊我前阵子瞎折腾的一个玩意儿——一个H版的宝可梦安卓游戏,主要是原版啃着费劲,就寻思着自己动手汉化一下,玩起来也舒坦些。这过程,可真是一把辛酸泪,不过总算是弄利索了,今天就给大家伙儿说道说道我是怎么一步步把它给汉化过来的。
准备开搞
动手之前,家伙事儿得备齐了。我主要用了这么几个东西:

小编温馨提醒:本站只提供游戏介绍,下载游戏推荐89游戏,89游戏提供真人恋爱/绅士游戏/3A单机游戏大全,点我立即前往》》》绅士游戏下载专区
- Apktool:这玩意儿是主力,拆包打包全靠它。有时候版本不对还挺折腾人的。
- 一个好使的文本编辑器:我用的是Notepad++,能看编码,方便查找替换,比系统自带的记事本强太多了。
- 当然还有台电脑和安卓手机:电脑用来折腾,手机用来一遍遍地测试,没个实体机真不踏实。
- 耐心,巨量的耐心:这个最重要,真的,没耐心真搞不下去,好几次我都想砸键盘了。
开始拆包
家伙事儿齐了就开干。第一步就是把那个apk文件给拆了,把它里面的东西都给掏出来。我用的是apktool,在电脑上打开命令行窗口,输个命令,大概是 apktool d * 这么个格式,*就是你要拆的游戏文件名。顺利的话,一会儿就能在旁边生成一个同名的文件夹,里面就是游戏被拆开后的各种文件了。有时候拆包会报错,可能是因为游戏开发者用了些特殊手段防止被修改,比如加固什么的,那就得另想辙了,不过我这回这个还算老实,没碰到太恶心的保护,直接就拆开了,省了不少事。
翻箱倒柜找文本
拆开之后,文件夹里一堆乱七八糟的文件和子文件夹,看得人眼花。咱的目标是找到那些需要翻译的英文,比如菜单选项、人物对话、道具说明啥的。一般情况下,安卓游戏的文本都老老实实地放在一个叫 res/values/* 的文件里头。我满怀希望地打开一看,大部分文本果然都在这儿,心里先松了口气。但是,也别高兴太早,有些坑爹的游戏,它会把一部分文本藏在其他地方,比如别的xml文件里,甚至直接写死在代码里头,那就麻烦了,得一点点扒拉,跟侦探似的。我这个游戏还除了主要的,还有一些零散的文本分布在几个其他的xml布局文件里,耐着性子找找也能找到。

苦哈哈的翻译活儿
找到文本就好办了,接下来就是纯粹的苦力活——翻译。一开始我图省事,想着先用那些在线翻译工具把所有英文整个扔进去,哗一下出来中文,然后再自己校对润色一下。结果?机翻出来的东西简直没法看,各种驴唇不对马嘴,语句不通顺不说,很多游戏里的专有名词,比如宝可梦的名字、技能名,还有一些剧情对话里的梗,机翻根本处理不翻得牛头不对马嘴。没办法,只能老老实实一句一句啃原文,遇到拿不准的词就去网上查资料,对比着翻译。特别是那些对话,得尽量符合人物性格,不然看着出戏。这过程真是枯燥又漫长,眼睛都快看瞎了。
图片里的字也得弄
光翻译文本还不行,有些游戏里的按钮、提示、标题,是直接做在图片里的,这些图片里的英文也得换成中文。这就得用到P图软件了,我用的是PhotoShop,技术不咋地,但改个字还是勉强能应付。把图片里的英文小心翼翼地擦掉,或者用背景色覆盖掉,然后再打上翻译好的中文。关键是字体和原来的风格尽量保持一致,颜色、大小也得协调,不然P上去的字跟狗皮膏药似的,看着特别别扭。我这个游戏还带文字的图片不算太多,不然光P图就得累死人。

重新打包回去
文本和图片都弄妥当了,就该把这些修改后的东西再塞回去了,重新打包成一个可以安装的apk文件。还是用apktool,命令也简单,就是 apktool b xxx (xxx是你之前拆包出来的那个文件夹的名字)。听着简单,但这一步也经常出幺蛾子,各种报错家常便饭。有时候是某个xml文件改的时候不小心弄错了格式,比如少了个尖括号啥的;有时候是资源文件有问题,比如图片格式不对或者文件名有特殊字符。遇到报错就得仔细看命令行窗口里的提示信息,虽然那些提示经常跟天书似的,但硬着头皮也得分析,一点点排查问题出在哪儿。这过程可真是锻炼人的心态和解决问题的能力,有时候一个小小的疏忽就得折腾大半天。
给APK盖个章——签名
回编译成功后,会在原来的文件夹里生成一个新的apk文件,一般在 `dist` 文件夹里。但这个apk还不能直接往手机上装,因为它没签名。安卓系统为了安全,不认没签名的应用,装了也打不开。所以还得给它签个名,相当于给这个apk盖个章,证明它“身份清白”。我用的是一个叫 apksigner 的工具,这是安卓SDK里带的。签名需要一个叫keystore的证书文件,如果没有的话就自己生成一个,网上教程很多,照着敲几条命令就行。签名的命令也挺简单的,指定好证书和要签名的apk文件就行了。
装机测试,反复折磨
签完名,终于可以把汉化好的apk文件拷到手机上安装了!心情那是相当激动…然后,点击安装,顺利装上,再点击打开…结果?要么直接闪退!要么进是进去了,结果发现翻译的地方还是英文,或者直接显示一堆方块块的乱码,更惨的是有些地方文字直接消失了。这时候真想把手机扔了。但没办法,还得冷静下来,从头开始检查。是哪个xml文件编码出错了?是不是某个文本资源ID没对应上?还是说翻译的时候用了什么手机不支持的特殊字符?就这么一遍遍地修改、重新打包、重新签名、拷到手机上安装、打开测试…这个循环能把人逼疯。比如我碰到过一次,就因为一个标点符号用的是全角,结果导致整个对话框加载不出来,游戏直接卡死在那儿,查了半天才找到原因。
大功告成,一点感想
经过了不知道多少次的失败和反复折腾,终于有一天,打开游戏,所有菜单、对话都变成了熟悉的中文,而且运行流畅,没有奇奇怪怪的bug和乱码。那一刻,真是比打游戏通关还要开心得多!虽然只是个小小的H版宝可梦,跟那些专业汉化组发布的作品没法比,BUG肯定也还有,但毕竟是自己亲手一点点摸索着弄出来的,那种成就感是没法形容的。通过这回瞎折腾,也算是对安卓应用内部的结构,还有这些工具的使用有了更深的了解。总之一句话,自己动手丰衣足食的感觉真不赖,但汉化这活儿也确实不是那么轻松的。希望我这点磕磕绊绊的经验,能给同样想自己动手汉化点啥小玩意儿的朋友一点点启发。玩游戏嘛看懂了才更有意思,对?



