起因

朋友几天前给我推荐了个这个:【明日方舟】澄闪同人视觉小说《绚烂火花》

但是原作者只提供了 Windows、macOS 和 Android 的版本,作为澄闪厨和重度 Arch 用户,花了 2 个多小时在 Arch 上面跑了起来,在这里记录下。

编译 Ren’Py 及其依赖

通常情况下使用 AUR 助手可以帮你完成很多 AUR 依赖的编译步骤(如 cython0ffmpeg6.1),我这里使用 trizen。

1
trizen -S renpy

由于 Ren’Py 的 Python 模块搜索方式不同,我们还需要打补丁,否则安装好后,直接运行编辑器会报错:

Editor

如果不需要编辑器对游戏进行修改,可以跳过这部分。

下载 5686.patch 后,编辑 PKGBUILD,在 source 数组中增加 5686.patch 的绝对路径,同时在 sha256sums 数组后加入 SKIP 跳过校验,并加入 prepare 函数以应用补丁。

以下为修改后 PKGBUILD 的节选:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
source=("git+https://github.com/${pkgname}/${pkgname}.git#tag=${pkgver}"
        "${pkgname}.desktop"
        "${pkgname}-launcher.sh"
        "/path/to/5686.patch")
sha256sums=('e11a92b866fce4ed6160a0d55b1b629c5844caa1d5165239cc6d14847af52282'
            'b58efcc42526c4de15e8963b02991e558b5e3d15d720b3777b791ac13fc815e6'
            'a38112859bf659d48c30be5c7c20ed1a1c72271ffd74eb4b4e730afbd87d73dc'
            'SKIP')

prepare () {
    cd "${pkgname}"
    patch -p1 -i ../5686.patch
}

#...

同时也可以去掉 makedepends 数组中的 python-sphinx_rtd_dark_modepython-sphinx_rtd_theme(不需要构建文档),加快构建速度。

冒烟测试,还有 Wayland

一般的 Ren’Py 项目还是比较好处理的,直接解压《绚烂火花》后,在项目根目录下运行即可:

1
2
export SDL_VIDEODRIVER=wayland # 如果不使用 Wayland,可以去掉此行
renpy . run

启动时会有一些 PermissionError 的错误,这是因为 Ren’Py 安装在 /usr/share/renpy 的原因,不过对于运行没有影响。

现在游戏就可以在 Linux 上面跑了,并且使用 Wayland 协议。

run

注释

还有一些 Ren’Py 项目的资源和脚本被打包成了 rparpyc 格式,通常情况下也可以直接运行。如果出现无法运行的情况,可能需要使用 unrpaunrpyc 解包后进行处理,可以在网上找到使用这两种工具的信息。

信息

如果你希望发布你的移植,请先与原作者授权后进行移植,不要增加或删除原文本。同时建议将你的 ID 放在开屏或者关于这类的页面上,以免带来不必要的麻烦。

并且务必测试全部内容,以免产生不兼容的问题。

chat

参考

Ren’Py PR #5686