更多构建方法
这些方法通常较慢,并且需要对 Unreal Engine 有更深入的了解。
参见 虚幻引擎(Unreal Engine) 以开始在 Edgegap 上托管 Unreal Engine 游戏服务器的第一步。
探索适用于更高级 Unreal Engine 和 Edgegap 用户的替代构建方法:
⚡ 使用脚本构建
使用脚本构建是一种快速、完全自动化且简单的方法,适合用于持续集成。
准备工作
1. 配置项目
2. 构建并发布
☑️ 确认已安装并正在运行 Docker。
☑️ 下载我们的 Edgegap Build Utils 压缩包,包括:
特定平台的构建脚本:
BuildAndUpload.ps1用于 Windows,BuildAndUpload.sh用于 macOS 和 Linux,
Dockerfile- 用于构建你的 Docker 镜像的配方,dockerignore- 用于移除非关键文件以加快构建的列表,StartServer.sh- 在运行时管理你的 Unreal Engine 生命周期的实用脚本。
☑️ 将 edgegap-unreal-buildutils 文件夹移动到你的项目根目录。
☑️ 编辑 你的平台的 BuildAndUpload 脚本 以配置:
用于拉取预构建 Linux 服务器 Unreal Engine 镜像的 github 凭据,
项目详情 - 引擎版本、服务器配置、.uproject 文件名,
Edgegap 注册表 用于上传已完成构建的凭据。
☑️ 执行已编辑的脚本 以开始构建和上传过程。完成此步骤将在你的 Edgegap 容器注册表仪表板页面的 仓库中添加一个新的.
☑️ 你将被自动重定向到 创建一个新的 应用与版本 在 仪表板.
✅ 你现在可以继续下一步,或跳到 更多构建方法.
⚡ 使用插件构建
我们的传统插件包含高级实用工具,并且需要从源码构建 Unreal Engine。
准备工作
1. 配置项目
☑️ 从源码构建你的 Unreal Engine 版本 在你的开发机器上,
安装 特定的发布分支(例如
5.5) 以在稳定的基础上构建,使用固态硬盘 (SSD) 以加快构建速度(从大约 12+ 小时到大约 2+ 小时),
这只在第一次以及每次升级 Unreal Engine 版本时需要。
使用 git 客户端下载分支! 使用 GitHub UI 将始终下载不稳定的 发布 分支。
☑️ 安装 Unreal 交叉编译工具链 以为 Linux 构建游戏服务器。
☑️ 重启你的开发机器,否则稍后你会遇到错误!
2. 构建并发布
☑️ 确认已安装并正在运行 Docker。
☑️ 重建我们的插件 以适配你从源码构建的自定义 Unreal Engine 版本。
☑️ 复制编译好的插件 到你的 Plugins 文件夹 在你的 Unreal 项目根目录中 (不是引擎目录)。
☑️ 从 Visual Studio 启动你的新 Unreal Engine 并 打开工具栏项 编辑 / 插件.
☑️ 在 已安装 / 其他 部分启用我们的插件.
☑️ 配置我们的插件 通过打开工具栏项 编辑 / 项目设置 / Edgegap:
编辑输入值后务必按回车键以 确保它们已正确保存.
API 令牌 用于将你的服务器上传到 Edgegap,可通过点击 获取令牌 来获取。
应用名称 在 Edgegap 上可以与项目名称相同或自定义,确保只使用小写字母、数字、连字符
-和下划线_.图像路径 可为你的 Edgegap 游戏服务器可选提供自定义图标,暂时可跳过。
版本名称 对于跟踪客户端/服务器兼容性以及在出现问题时回滚非常有用。
时间戳是应用版本名称的一个很好的选项,例如:
2024.01.30-16.50.20-UTC.多个应用版本可以指向相同的镜像标签,例如
v1.1.0和dev.稍后了解更多关于 应用与版本 的信息。
不要重复使用 latest 版本 以防止我们的系统部署过时的(已缓存的)镜像。
☑️ 点击 创建应用。 完成此步骤将导致一个 新的应用出现在 在 Edgegap 仪表板.
☑️ 目前跳过自定义容器注册表设置,你可以在以后使用第三方注册表(如果愿意)。
☑️ 一旦你对配置满意,点击 构建并推送,等待过程完成并确认你的 Unreal 控制台中没有新的错误。完成此步骤将导致一个 新的文件夹出现在你的项目根目录中 - Saved/LinuxServer。此外, 现在在你的 Edgegap 容器注册表仪表板页面的仓库下出现一个新的镜像, 应用与版本 并且在你的 仪表板应用下出现一个.
☑️ 在你新的应用版本中,设置环境变量 TARGET_FILE_NAME 以匹配你在步骤中来自 DefaultServerTarget 的值, 更多构建方法.
✅ 你现在可以继续下一步。
👉 后续步骤
继续到 虚幻引擎(Unreal Engine) 使用我们的 仪表板部署 功能,了解更多关于停止部署、注入变量与参数化以及服务器可发现性的信息。
最后更新于
这有帮助吗?

