大伙儿晚上今天又来跟大家唠唠嗑了。最近闲着没事干,手机上翻来覆去也就那几个老游戏,有点腻歪了。前阵子听人说有个叫《哥布林的逆袭3D》的安卓游戏,瞅着好像挺有意思的,据说是扮演个哥布林搞事情,听着就带感。结果找来一试,好家伙,不是英文就是日文,啃起来费劲,玩游戏的乐趣都少了大半。
就是有点折腾劲儿。既然官方没中文,那咱就自己动手,丰衣足食嘛于是一场轰轰烈烈的“哥布林逆袭3D安卓汉化之旅”就开始了。
准备工作与初步尝试
第一步,那肯定是得把游戏的APK安装包给弄到手。这个不难,随便找个靠谱点的应用市场或者游戏论坛,都能扒拉下来。我下的是最新版的,好像是叫ver3.0啥的。
拿到APK后,就该琢磨怎么把它拆开,找到里面的文字了。我下意识就想到了用APKTool这个老伙计。这玩意儿用起来也顺手,直接在电脑上打开命令行,输入命令,比如 apktool d *
(xxx就是你游戏APK的名字),一回车,它就吭哧吭哧开始解包了。解完之后,当前目录下就会多出来一个跟APK同名的文件夹,里面就是游戏的各种资源和代码文件了。
寻找文本数据的坎坷之路
小编温馨提醒:本站只提供游戏介绍,下载游戏推荐89游戏,89游戏提供真人恋爱/绅士游戏/3A单机游戏大全,点我立即前往》》》绅士游戏下载专区
解包是解完了,但接下来的问题更头大:文本到底藏在哪儿?安卓游戏的文本存放位置真是五花八门。有的比较规矩,在res/values
或者res/values-en
这样的文件夹里,存成文件。但现在很多游戏,尤其是用Unity这类引擎做的,文本都打包到assets
文件夹里的某些资源文件里去了。
我点开那个解包出来的文件夹,先是翻了翻res
目录,果然,里只有寥寥几行系统相关的文本,跟游戏剧情、界面对话啥的完全不搭边。看来,重点还是在assets
文件夹里。
打开assets
文件夹,里面东西就多了,花里胡哨的。根据经验,Unity游戏的主要数据一般都在bin/Data
目录下,或者是一些后缀名稀奇古怪的.unity3d
、.assetbundle
、.assets
之类的文件里。我一个个点开看,有些是二进制文件,直接用记事本打开全是乱码。
这时候就得借助一些专门的工具了。我试了试用AssetStudio这个工具,它可以预览和提取Unity游戏的资源。把assets
目录下的可疑文件一个个拖进去分析。找了好一会儿,终于在一些没有明显后缀名,或者后缀是.bytes
、.txt
(但直接打开是乱码或格式不对)的文件里,发现了一些疑似英文或日文的文本片段。这些文件通常是一些脚本定义文件或者数据表。
这个过程真的挺磨人的,因为你不知道哪个文件才是关键。有时候一个游戏里可能有好几个地方都存着文本,比如UI文本在一处,剧情对话在另一处,道具说明又在别的地方。只能靠耐心,一个个排除,一个个尝试。
编辑与翻译的细致活
找到包含主要文本的文件后,接下来的工作就是翻译了。我一般会用Notepad++或者VS Code这样的文本编辑器打开它。这些编辑器支持多种编码,不容易出现乱码问题。
打开文件一看,里面的文本格式也可能不一样。有的是纯文本,一行一句;有的是JSON格式,键值对;还有的是CSV格式,用逗号隔开。反正不管啥格式,核心就是把里面的外文内容替换成中文。
翻译这活儿,说简单也简单,说难也难。简单是因为现在有机翻工具,大段文本可以先过一遍机翻,然后再人工校对润色。难就难在游戏里的文本讲究个“信达雅”,得符合游戏情境和角色语气,还得注意长度,别翻译完了中文太长,游戏界面显示不下,那就尴尬了。
我就一句一句对着翻译,遇到拿不准的词,就结合游戏里的具体场景去理解。比如一些技能名称、道具描述,得尽量翻得酷炫一点或者贴合它的实际效果。这期间,我还顺手把游戏里提到的一些装备、道具也记了下来,看看能不能找到对应的图片资源,如果图片里也有文字,那就更麻烦了,还得P图。
替换与打包的冲刺
所有文本都翻译完毕,并且保存好了之后,就该把修改后的文件放回原来的位置,替换掉原来的英文或日文文件。注意备份!注意备份!注意备份!重要的事情说三遍,万一搞砸了,还能恢复。
文件替换就可以用APKTool重新打包了。还是在命令行,进入到APK解包出来的那个文件夹的上一级目录,然后输入命令,比如 apktool b xxx
(xxx就是那个文件夹的名字),APKTool就会把修改后的文件重新打包成一个新的APK。这个新的APK一般在原文件夹的dist
子目录里能找到。
但是,这时候生成的APK还不能直接安装到手机上,因为它没有签名。安卓系统要求所有APK都必须有合法的签名才能安装。我们还得给这个新生成的APK签个名。我用的是一个叫APK Easy Tool的整合工具,它里面就带了签名功能,点几下按钮就行,比较傻瓜化。用Java的jarsigner
命令手动签名也行,就是麻烦点。
安装测试与问题修复
签名完毕,总算是拿到了一个可以安装的汉化版APK了!赶紧把它传到手机上,卸载掉原来的版本,然后安装这个汉化版。
安装成功,打开游戏!紧张又期待地看着加载画面……
- 首次测试:大部分界面都变成中文了!剧情对话也出来了!心里一阵小激动。
- 发现问题:仔细玩了一会儿,还是发现了一些小问题。
- 有的地方中文显示不全,被截断了,这是因为原来的UI设计没给中文留够空间。
- 有的字变成了“口口口”或者乱码,这通常是字体不支持某些中文字符导致的。
- 偶尔还有因为文本替换错误导致的游戏跳出(这个我这回运气没碰到)。
针对这些问题,又是一轮返工。显示不全的,就得回去修改翻译,尽量精简语句,或者看看能不能调整游戏内的字体大小(但这一般比较难)。字体不支持的,就得找个合适的、支持中文的ttf字体文件,替换掉游戏原来使用的字体文件。Unity游戏的字体文件也通常在assets
目录下,或者打包在资源文件里,得把它提取出来,用新的中文字体替换,注意文件名要保持一致。
就这样来回折腾了好几次,反复修改文本、替换字体、重新打包、安装测试……直到游戏里的中文显示基本完美,玩起来也流畅,没啥大毛病了。
大功告成与小小总结
看着自己亲手汉化的《哥布林的逆袭3D》,虽然过程有点小曲折,但玩起来那感觉真是不一样,成就感满满!
安卓游戏汉化这事儿,入门不难,但想做得完美就得花不少心思。主要就是:
- 耐心:找文本、翻译、测试,都需要大量时间。
- 细心:一个字符的错误都可能导致乱码或者游戏出错。
- 工具:APKTool、文本编辑器、AssetStudio之类的工具是必备的。
- 一点点运气和经验:有时候找文本就像大海捞针。
我这只是针对一些没有加壳或者加密特别严重的游戏。要是碰到那种有强力保护的,那难度就指数级上升了,那就不是我这点三脚猫功夫能搞定的了。
好了,今天的实践分享就到这里。希望能给同样喜欢折腾、又被外语游戏难住的朋友们一点点启发。自己动手,乐趣无穷嘛下次再有啥好玩的实践,再来跟大家分享!