Ren’Py 引擎游戏文件解包与游戏汉化

目前市面上不少的视觉小说(Visual Novel)游戏都采用了 Ren’Py 引擎,这里给大家提供一个解包与汉化 Ren’Py 引擎的游戏的简单方法。


判断是否为 Ren’Py 引擎

这里以 Steam 上的免费游戏 Doki Doki Literature Club!「心跳文学部!」(下简称 DDLC)为解包的例子。至于如何判定游戏是否为 Ren’Py 引擎制作,可以先查看一下游戏文件的整体构架,发现有 *.rpa 文件存在基本可以判定是 Ren’Py 引擎制作。

心跳文学部!

rpa 文件解包方法

进入游戏所在目录 Steam\steamapps\common\Doki Doki Literature Club,观察到 *.rpa 文件集中放置在 game 目录下。对于 *.rpa 文件,可以用 unrpa 工具进行解包。

由于多数人是用 Windows 操作系统,通常没有安装 Python,需要先前往 Python 官网下载运行环境。(如果看不懂英文,也可以通过百度搜索到下载站进行下载。需要注意的是,Python 的版本需要高于3.0。)

运行环境与解包工具就绪后,用命令行执行形如以下格式的命令(可自行对其中的参数进行替换):

python unrpa -mp "path\to\output\dir" "path\to\archive.rpa"

其中,path\to\output\dir 为解包后的文件输出路径,path\to\archive.rpa*.rpa 文件的路径。回车执行后,文件即可成功解包。对于 DDLC,需要解包的文件则为 audio.rpachs.rpafonts.rpaimages.rpascripts.rpa

前往解包后的输出路径,文本通常存在于 *.rpy 文件或者 *.rpyc 文件当中,图片、音频和视频等文件则通常是以未加密的形式储存。至此已经基本完成了游戏的解包工作,绝大部分的内容都可以直接使用。*.rpy 文件是可以直接使用文本类编辑工具进行编辑,直接包含可见的对话明文内容以及程序的脚本内容。

rpyc 文件解包方法

不过,也有一部分的游戏可能没有 *.rpy 文件,而是只有 *.rpyc 文件。*.rpyc 文件实际上是经由 Ren’Py 将 *.rpy 文件编译后输出的文件,需要 unrpyc 对其进行反编译。

具体的使用方法和先前 unrpa 的方法类似,用命令行执行形如以下格式的命令(可自行对其中的参数进行替换):

python unrpyc -c "path\to\dialog.rpyc"

其中,path\to\dialog.rpyc*.rpyc 文件所在的路径。回车执行后,即可实现反编译。

Ren’Py 引擎游戏汉化方案

对于汉化 Ren’Py 引擎游戏,有2个可选的解决方案:

  • 不打包为 *.rpa 文件:由于 Ren’Py 引擎的机制,可以直接将解包汉化后的 *.rpy 文件放置于 game 目录下,图片等资源类文件保留原有路径;
  • 打包为 *.rpa 文件:由于 Ren’Py 引擎的机制,对于 *.rpa 文件内的文件,只读取 *.rpyc 文件而不读取 *.rpy 文件,因而需要用 Ren’Py 引擎重新构建一次游戏以生成编译后的 *.rpyc 文件,再将其打包为 *.rpa 文件。

两个方法各有利弊,方法一相对简单,但是会导致文件数量增大;方法二比较复杂,但是可以同时生成移动端的游戏版本。

Last modification:October 7th, 2019 at 11:38 am

Leave a Comment