最近找到了一个非常不错的生存游戏,英文名是「Subnautica」,中文译作深海迷航。它融合了无人深空,孢子的外星探索感,也有饥荒的生存法则。展示了一个神秘精妙的海底世界。目前在 Steam 上获得了将近满分的好评,有兴趣的话可以去试一试。目前呼声最高的需求正是这个游戏的联机,今天讲讲如何用第三方插件为游戏增加联机功能。请注意,目前这个联机插件还在开发中,所以会有不少 BUG,若不能接受的话请不要安装,等未来的稳定版发布了说。开发者没有放出安装包。故必须完成以下步骤,没有比这个更简单的方法安装。

目标

给深海迷航添加多人游戏模式。

增加多人模式按钮
增加多人模式按钮

适合人群

如果你还在看,那一定是想装了,我们开始吧。本篇要求中上的动手能力,以及不怕把东西弄坏的心理素质。目前这个方法只支持 Steam 正版,其他版本请不要尝试。本文的步骤来自于 Nitrox 插件的百科页,但那里的步骤太过简练,不是程序员的话很看懂难跟着走,故把我的实际安装步骤记录下来,以便学习之用。

步骤

  1. 点击链接下载并安装四个辅助软件。Visual Studio 社区免费版 - 点击「下载 Visual Studio Community 2017」即可,安装时若弹出选项,勾选 .NET 开发环境;Git-Bash - 点击链接即会自动下载;Notepad ++ - 找到并点击「Notepad++ Installer 64-bit x64」即可下载;dnSpy - 找到并点击「dnSpy.zip」即可下载,将其解压到任意位置。全部下载完成后多次点击下一步依次安装,这里不再赘述;
  2. 打开 Git,复制下面括号中这一段代码并按回车键运行,完成后它会自动帮你下载插件到电脑中的文档文件夹。「git clone --recurse-submodules https://github.com/SubnauticaNitrox/Nitrox.git Documents/Nitrox」。
    Git-Bash 下载插件
    Git-Bash 下载插件
  3. 打开你的文档文件夹,你会发现多了一个叫 Nitrox 的文件夹,双击进入。找到一个叫做 Nitrox.sln 的文件,右键选择用管理员模式打开。这时候你会发现 Nitrox 文件夹中多了一个叫做 DevVars.targets 的文件。右键点击 DevVars.targets,选择使用 Notepad ++ 打开。
    用 Notepad ++ 打开配置文件
    用 Notepad ++ 打开配置文件
  4. 启动 Steam - 找到 Subnautic 游戏 - 右键点击并选择属性 - 在弹出的选项中点击本地文件 - 浏览本地文件。这时你会被带到游戏目录中,右键点击地址栏 - 点击复制地址,将其粘贴到下图所示位置并保存。这个位置就是你刚刚用 Notepad ++ 打开的文件 <SubnauticaDir> 与 </Subnautica> 之间。
    复制 Steam 游戏所在目录
    复制 Steam 游戏所在目录
  5. 这时候选择你第三步中使用 Visual Studio 打开的 Nitrox.sln 文件。注意看右边栏,如果这边很多东西显示不可用,依次选中不可用内容并右键选择「重新加载项目」。注: 如果启动时提醒缺少 Net 3.5 框架,请点击下载目标框架且不要变更项目,它会把你引导到一个下载链接里,找到 3.5 Runtime 下载安装即可。千万不要点升级框架。如果你不小心点了,是没有办法进行下一步的,请重复步骤 2 - 4。
    用 Visual Studio 加载项目
    用 Visual Studio 加载项目
  6. 全部载入完成后选择「解决方案‘Nitrox’( 8 个项目)」- 右键点击 - 选择「生成解决方案」- 耐心等待, 完成后底下会提示 8 个成功。
    确保 8 个解决方案全部生成成功
    确保 8 个解决方案全部生成成功
  7. 打开你刚刚下载并解压好的 dnSpy 文件夹,找到其中的 「dnSpy - x86」并打开 - 点击左上角的 「file」- 「open」- 在地址栏复制你在第四步中得到的地址 - 按下回车确认 - 依次双击进入「Subnautica_Data」- 「Managed」- 找到「Assembly-CSharp.dll」并选择右下角按键「Open」。
    最终的地址栏
    最终的地址栏

    Assembly-CSharp.dll
    Assembly-CSharp.dll
  8. 点击右上角搜索图标,在搜索框内输入「GameInput」- 在结果中双击「GameInput」这个选项 - 点击文件任意位置 - 再次点击搜索图标,搜索「Awake」。这时你应该看到下图这个部分。
    GameInput 搜索结果
    GameInput 搜索结果

    Awake 搜索结果
    Awake 搜索结果
  9. 将鼠标光标放在如下图所示位置 - 点击鼠标右键 - 选择「Edit Method」- 这时会弹出一个新窗口,允许你编辑 Awake 函数。点击左下角文件夹图标 - 找到「NitroxPatcher」并双击打开。完成后找到「GameInput.SetupDefaultBindings((GameInput.Device)i);」这句话,在下面复制粘贴「NitroxPatcher.Main.Execute();」。完成后应该如图所示。点击右下角「Compile」。完成后同时按下键盘「Ctrl + Shift + S」保存。
    光标位置
    光标位置

    点击左下角文件夹图标
    点击左下角文件夹图标

    插入插件组件
    插入插件组件
  10. 祝贺你!你现在打开游戏应该就可以看到多人游戏「Multiplayer」按钮了。
    联机按钮出现
    联机按钮出现

开启个人联机服务器

为了能够使联机按钮正常运行。我们需要保持开启服务器终端,找到你文档中的 Nitrox 文件夹 - 进入「NitroxServer」- 进入 「bin」- 进入「Debug」- 右键使用管理员模式打开「NitroxServer」。进入游戏,你会发现多人模式中已经可以自由选择名称进入游戏了。如果你想要链接你朋友的服务器,点击「Add Server」,输入你的名称和你朋友的服务器 IP 地址即可。

保持插件后台运行
保持插件后台运行

0
1