一份关于如何在 PC 和 Meta Quest 上为 BONELAB 下载和安装 mod 的指南。
在我们撰写这类指南的游戏中,BONELAB 有些不寻常,因为它拥有两套完全独立的 modding 系统,各自负责不同的工作:
- mod.io 内置于游戏之中。它在 PC 和独立版 Quest 上都能运行,不需要任何外部工具,涵盖角色(avatar)、地图和可生成物品。
- MelonLoader 是一个仅限 PC 的代码 mod 加载器,用于那些真正改变游戏行为方式的 mod。这类 mod 都放在 Thunderstore 上。
你需要哪一种完全取决于你想要的 mod 类型。我们会两者都讲到,并以 Ragdoll Player 作为 MelonLoader 部分的实操示例。
前置要求
对于 mod.io 内容:
- BONELAB 在任何受支持的平台上,包括独立版 Quest 2、Quest 3 和 Quest Pro。
- 一个免费的 mod.io 账号。
对于 MelonLoader 代码 mod,另外还需要:
- 一台运行 Windows 10 或更高版本的 PC,BONELAB 通过 Steam 或 Oculus PC 应用安装。通过 Proton 的 Linux 也可以运行,只需额外添加一个启动选项。
- Microsoft Visual C++ 2015-2019 Redistributable, 64 位。
- .NET Desktop Runtime 6.0, x64。BONELAB 是 Il2Cpp 游戏,MelonLoader 需要这个运行时。
- 如果你打算收集角色和地图,预留几 GB 空间,这些内容体积都不小。
两套系统,两种 Mod
提前把这个区别搞清楚能省不少时间。
| mod.io | MelonLoader | |
|---|---|---|
| 获取途径 | 内置于游戏中,或 mod.io | Thunderstore |
| 平台 | PC 和独立版 Quest | 仅限 PC |
| 处理内容 | 角色、地图、可生成物品,使用 BONELAB SDK 制作 | 改变游戏行为的代码 mod |
| 是否需要额外工具 | 否 | 是,需要 MelonLoader,通常还需要 BoneLib |
| 例子 | 自定义角色或额外关卡 | Ragdoll Player、Fusion 多人联机 |
所以,如果你想扮演不同的角色或加载社区地图,mod.io 就是全部答案,你完全不需要碰任何文件。如果你想改变游戏的运作方式,那就是 MelonLoader 的地盘,Quest 玩家在这方面没有办法。
注意 - 独立版 Quest 无法运行 MelonLoader,这一点无从绕过。通过 Link 或 Air Link 连接到 PC 的 Quest 玩家运行的是 PC 版本,因此他们属于本表中的 PC 一侧。
使用 mod.io 安装 Mod
从游戏内安装
这是本系列所有游戏中最简单的 modding 体验,没有之一。
- 启动 BONELAB 并加载进入 Hub。
- 在 Hub 中找到 mod.io 终端并与之互动。
- 登录你的 mod.io 账号。游戏会给你一个代码,让你在手机或 PC 浏览器上访问 mod.io/connect 输入,这样就不用在 VR 中用手柄打密码了。
- 浏览或搜索目录。
- 选择一个 mod 并安装。它会直接下载到设备上。
已安装的角色会出现在角色终端处,地图会出现在关卡列表中,可生成物品会出现在生成枪的目录里。没有文件夹需要查找,也没有不同的启动方式。
从网站安装
你也可以在电脑上提前排队安装。
- 在 mod.io/g/bonelab 登录。
- 找到一个 mod 并点击 Subscribe。
- 用同一账号登录并启动 BONELAB。
订阅内容会在启动时同步下载。这比在头显里操作要舒服得多,更适合浏览。
提示 - 订阅是跟随账号的,而不是设备。你在 PC 上订阅后,同样的 mod 也会出现在 Quest 上,如果你两边都玩,这一点非常方便。
Quest 注意事项
这里的限制在于存储空间。角色和地图都是实打实的 Unity 内容,在一个还要装其他东西的头显上很快就会占满空间。在游戏内取消订阅会删除相应文件。
Quest 使用的是移动端 GPU。为 PC 制作的地图在 Quest 上也能运行,但不一定顺畅,mod 描述通常会说明是否支持 Quest。如果某个 mod 分别有 PC 和 Quest 版本,mod.io 会自动提供合适的那个。
使用 MelonLoader 安装代码 Mod
这是仅限 PC 的部分。
BoneLib
几乎所有 BONELAB 代码 mod 都依赖 BoneLib,这是整个场景赖以构建的共享库。Ragdoll Player 也不例外。
这里有个小插曲值得了解。BoneLib 过去发布在 gnonme 命名空间下,后来迁移到了 bonelib 命名空间。旧的 gnonme/BoneLib 包依然存在,现在只是依赖新包而已,因此那些引用旧名称的老 mod 仍能正常工作。如果你在已安装列表中看到两者同时存在,原因就在这里,这并不是问题。
这些事情 mod 管理器都会自动处理。只有你手动安装时才需要在意这些。
使用 Gale 或 r2modman
- 下载 Gale 或 r2modman 并安装。
- 打开它并选择 BONELAB。
- 让它自动检测你的安装位置,或手动指向游戏文件夹。
- 搜索 Ragdoll Player,点击 Install 或 Download with dependencies。
- MelonLoader 和 BoneLib 会一并自动安装。
- 使用 Launch game (modded) 或 Start modded 启动游戏。
改为从 Steam 或 Oculus 应用启动 BONELAB,则运行的是未安装模组的版本。
手动安装 MelonLoader
先找到你的游戏文件夹。在 Steam 中,右键点击 BONELAB,然后选择 管理 和 浏览本地文件:
C:\Program Files (x86)\Steam\steamapps\common\BONELAB
最简单的方法是使用 MelonLoader Installer。运行它,从检测到的游戏列表中选择 BONELAB,选一个稳定版本,然后点击 Install。如果没有检测到 BONELAB,使用 Add Game Manually 并指向 BONELAB.exe。
要完全手动完成的话:
- 下载 MelonLoader.x64.zip。
- 将
MelonLoader文件夹解压到 BONELAB 文件夹中。 - 同样将
version.dll解压到 BONELAB 文件夹中。 - 运行一次游戏后退出,这样会创建
Mods和UserData文件夹。
警告 - 不要在安装器中启用 nightly 构建。它们是基于最新提交构建的,经常出问题。模组都是针对稳定版发布构建的。
手动安装 Ragdoll Player
- 使用 Manual Download 下载 BoneLib 和 Ragdoll Player。
- 将两者都解压。
- 把每个
.dll复制到你 BONELAB 目录下的Mods文件夹中。
MelonLoader 的模组放在 Mods 中,而不是 plugins 文件夹。如果你是从 BepInEx 游戏过来的,这是需要记住的目录结构差异。
Ragdoll Player 会在首次运行时在 UserData 下写入配置文件,你可以在那里设置触发布娃娃效果的输入按键。
使用 TMC App 安装
还有第三条值得了解的途径,不过它只适用于本指南 MelonLoader 那部分。TMC App 是我们自己开发的模组管理器和服务器浏览器,支持一键安装和 sandboxes(沙盒):针对每个游戏的命名模组配置文件,各自拥有独立的加载顺序和部署方式,可以切换而无需重新下载任何内容。
BONELAB 目前还不在其支持的游戏列表中。 添加一个游戏只需要四个 JSON 文件,而不是代码,所以这不是个大工程。
有两点需要说清楚。这个应用只会管理 代码模组;mod.io 的内容是在游戏内部处理的,任何外部工具都无法改变这一点。而且 该应用尚处于非常早期的开发阶段,其自己的 README 中就明确说明了这一点。其中很多功能只经过部分测试,所以目前建议把它与 Gale 搭配使用,而不是取代它。如果你尝试了它,我们非常想听听你的使用体验。
它是基于 GPL-3.0 协议的 开源 项目,仓库地址在 github.com/modcommunity/tmc-app。错误报告和功能请求请提交到 issue 追踪器,欢迎提交 pull request,如果你想自己为 BONELAB 添加支持,仓库中也记录了每个游戏的格式说明。
安装方法:
- Linux:一行命令即可,无需 root 权限也无需包管理器。
curl -fsSL https://raw.githubusercontent.com/modcommunity/tmc-app/main/scripts/install.sh | sh
- Windows:从发布页面下载
setup.exe或setup.msi。也有便携版,不过它不会注册启动器条目或tmc://链接处理程序。 - macOS:同一发布页面上的
.dmg。
使用 Fusion 进行多人游戏
这里值得一提,因为它是大多数人最终都想要的模组。Fusion 为 BONELAB 添加了完整的多人游戏功能,是该游戏下载量最高的模组之一,遥遥领先。
它是一个 MelonLoader 模组,因此仅限 PC,会话中的每个人都需要安装它。因为它还需要让所有人对彼此拥有哪些 mod.io 内容达成一致,所以有一个配套模组 ModioModNetworker,用于在会话中的玩家之间同步 mod.io 的角色模型和地图。
安装 Fusion 的方式与 Thunderstore 那边的其他模组一样,并与一起游玩的伙伴共享同一个模组管理器配置文件。
确认你的模组已加载
**mod.io 内容:**直接看就行。角色模型出现在角色模型终端处,地图出现在关卡选择中。如果你订阅的内容没有出现,检查一下你在游戏内是否登录了同一个账号。
**MelonLoader 模组:**游戏旁边会打开一个控制台窗口,每加载一个模组就打印一行信息,包含名称、版本和作者。完整日志写在这里:
BONELAB\MelonLoader\Latest.log
当某个模组无法正常工作时,这个日志是首先要检查的地方,也是任何来帮你的人首先会要求你提供的东西。
Linux
BONELAB 是通过 Proton 运行的。MelonLoader 需要一个 DLL 覆盖设置,所以要把游戏的 Steam 启动选项设为:
WINEDLLOVERRIDES="version=n,b" %command%
这里是 version,不是 winhttp。MelonLoader 和 BepInEx 使用不同的钩子 DLL,混淆启动选项是很容易犯的错误。
还有一个 MelonLoader installer 的 Linux 版本。Gale 和 r2modman 在你通过它们启动时会自动帮你设置好覆盖选项。
mod.io 的内容在 Linux 上不需要任何特殊处理,因为它完全在游戏内部处理。
卸载
**mod.io:**在游戏内或网站上取消订阅即可。文件会从设备上移除。
**单个 MelonLoader 模组:**在你的模组管理器中卸载它,或者从 Mods 文件夹中删除它的 .dll。
**完全卸载 MelonLoader:**从游戏目录中删除 MelonLoader 文件夹、version.dll、Mods 和 UserData,或者使用 MelonLoader Installer 中的卸载选项。Steam 的文件校验不会处理这些,因为这些内容都不是来自 Steam 的。
故障排除
**mod.io 终端显示我未登录。**通过 mod.io/connect 使用游戏显示的代码重新登录。
**已订阅的模组没有出现。**重启游戏。订阅是在启动时同步的,而不是实时同步。
**Quest 存储空间不足。**取消订阅你不使用的内容。地图和角色模型体积都很大。
没有出现 MelonLoader 控制台。 MelonLoader 没有加载。检查 version.dll 是否直接位于 BONELAB.exe 旁边,并确认你是通过模组管理器启动的。
MelonLoader 已加载但某个模组没有生效。 查看 MelonLoader\Latest.log。缺失或版本不匹配的 BoneLib 是目前最常见的原因。
MelonLoader 在启动时崩溃。 安装 VC++ 2015-2019 x64 redistributable 和 .NET Desktop Runtime 6.0 x64。
某个 Thunderstore 模组没有任何反应。 检查它是否确实是 BONELAB 的模组。有些包同时被列在 BONEWORKS 分类下,而 BONEWORKS 模组依赖的是 ModThatIsNotMod,而不是 BoneLib。
更新后一切都坏了。 Stress Level Zero 的补丁会破坏 MelonLoader 模组。清空 Mods 文件夹以确认游戏能干净运行,然后等待作者更新。
结语
真正需要判断的是你需要哪个系统。头像、地图和可生成物品属于 mod.io,可在 Quest 上使用,并且无需离开游戏即可安装。代码类模组属于 MelonLoader,仅限 PC,借助 Gale 这样的模组管理器,安装只需两步。
如果你使用的是独立 Quest,那么 mod.io 就是全部内容,而且这已经很不错了。
如果你有空闲时间,TMC App 是开源的,目前处于非常早期的开发阶段,欢迎提供反馈。
另请参阅
- BONELAB on mod.io
- BONELAB on Thunderstore
- MelonLoader Wiki
- BONELAB Modding Discord
- BONELAB Wiki
- TMC App
我们会尽力让本指南保持最新,但游戏、mod.io 和 MelonLoader 都在各自独立地变化。如果你发现某条说明已经与实际情况不符,请反馈给我们,或在本指南的 GitHub 仓库中提交 pull request。
如果你有任何问题,或需要模组相关的帮助,欢迎加入我们的 Discord 服务器!

