了解Edgegap的工作原理

了解Edgegap的工作原理

Cocos Creator

部署至 Edgegap

Cocos Creator:如何在数分钟内为多人游戏添加专属游戏服务器以及匹配功能

已发布

已发布

最近一次准确性审核

最近一次准确性审核

Cocos 标志:Edgegap 专属游戏服务器与玩家匹配的 Cocos Creator 集成指南

本指南将向您展示如何为 Cocos Creator 多人游戏添加专用游戏服务器并托管在 Edgegap 上,然后添加匹配功能,以便玩家能够自动分组并连接到离他们最近的服务器。

一旦您的游戏服务器容器化,只需通过简单的 API 调用,Edgegap 即可将其(按需)部署到全球 615+ 个边缘云节点,并完全按使用量计费:无需租用整台服务器、预配置或在比赛间隙保持运行。对于需要保留容量的持久服务器,Edgegap 提供了专属机群 (Private Fleets)。Edgegap 的匹配基于此构建,并且是可选的。

Cocos Creator 没有无头服务器构建版本。Cocos 游戏的多人服务器是一个独立的程序,通常是项目文件夹中的一个 Node.js 应用程序:例如 Colyseus 或您自己的 WebSocket 服务器。该服务器正是运行在 Edgegap 上的内容,而您的 Cocos 项目仍保持普通的客户端构建。每场比赛都会在玩家附近拥有自己的专属服务器,通过 wss:// 进行连接,并在比赛结束时服务器会自动停止。

本指南涵盖:

  • 准备 Cocos Creator、服务器文件夹、Edgegap 账户和 Docker

  • 将您的代码编写智能体连接到 Edgegap(可选)

  • 让您的游戏服务器为 Edgegap 做好准备

  • 使用 Edgegap Cocos 扩展进行构建和上传

  • 部署测试服务器并连接到它

  • 添加匹配(可选)

  • 发布 Web 和原生构建版本

  • 双人全流程测试

您可以通过两种方式进行操作,也可以结合使用:

  • 使用代码编写智能体。 将 Claude Code、Cursor 或其他智能体连接到 Edgegap MCP 服务器及其 智能体技能。智能体会进行服务器修改、设置扩展并将匹配器接入您的 Cocos 脚本。您只需登录、在扩展中点击操作并进行游戏测试即可。

  • 手动操作。 下文中的每个步骤也可以在没有智能体的情况下,通过编辑器中的 Edgegap Cocos 扩展完成。

本指南使用的是 Edgegap 分支版本的 Colyseus Cocos 井字棋示例,该示例已升级至 Cocos Creator 3.8.8 和 Colyseus 0.17。它于 2026 年 10 月 29 日在 Edgegap 上使用 Web 构建版本进行了测试:通过匹配器完成匹配,进行完整场游戏,服务器随后自动停止。

无需信用卡。免费版包含部署真实游戏服务器所需的资源。

无需信用卡。免费版包含部署真实游戏服务器所需的资源。

您的游戏使用哪个服务器?

您的游戏服务器

如何按照本指南操作

已在 Edgegap 上测试

Colyseus

所有步骤,以井字棋示例为参考,并配合 edgegap-colyseus 技能

是,使用 Web 桌面构建版本(2026年10月29日)

您自有的 Node.js WebSocket 服务器(ws、socket.io)

相同的步骤,配合 edgegap-cocos 技能的服务器和客户端模板

模板在本地运行;尚未在 Edgegap 上进行端到端测试

其他语言也可以使用:服务器只需在 Linux 容器中运行即可。

Cocos Creator tic-tac-toe sample in play: a hand-drawn board on lined paper, a 5-second turn timer and the prompt “Your move!”

分步指南

详细集成步骤

1. 开始之前

  • 一个免费的 Edgegap 账户。请验证您的电子邮箱。测试无需信用卡。

  • Cocos Creator 3.8 或更高版本。示例使用的是 3.8.8。

  • 位于项目文件夹中的游戏服务器(扩展默认在 Server/ 中查找),如果使用 Node.js 服务器,需配备 Node.js 22。

  • 处于运行状态的 Docker Desktop。Edgegap Cocos 扩展支持在 Windows 和 macOS 上运行。

  • 针对 Agent 路径:需要一个 Edgegap API 令牌,可从 Dashboard → User Settings → Tokens 获取。由于该令牌在整个组织范围内有效,请像对待密码一样妥善保管:切勿将其放入客户端、服务器镜像或聊天中。

快捷方式:先运行示例。克隆 井字棋(tic-tac-toe)fork 版本,运行 cd Server && npm install && npm start,然后在 Cocos Creator 3.8.8 中打开项目并在两个浏览器标签页中运行预览(localhost:7456)。步骤 3 中的所有更改均已包含在其中。

2. 将您的代码代理连接到 Edgegap

如果您全部手动操作,请跳过此步骤。

Edgegap MCP 服务器允许您的代理在您的账户上创建应用程序和版本、部署服务器、读取日志并生成配对器配置。两项技能涵盖了 Cocos Creator:当您的服务器是 Colyseus 时使用 edgegap-colyseus(已通过井字棋示例进行测试),对于任何其他服务器使用 edgegap-cocos,包含服务器骨架、Cocos 客户端文件和扩展设置。

Claude Code:安装 Edgegap 插件。它会同时添加 MCP 服务器和技能,并在安装期间请求您的 API 令牌(存储在系统的凭据存储中):

/plugin marketplace add edgegap/llm-agent-skills,然后运行 /plugin install edgegap@edgegap。重新启动会话。

只想使用 MCP 服务器,不需要插件?请改为在您自己的终端中运行以下命令:claude mcp add --transport http edgegap https://mcp.edgegap.dev/mcp -H "Authorization: token YOUR_EDGEGAP_API_TOKEN" --scope user。切勿两者都操作,否则您将拥有两个 edgegap 服务器。

Cursor、VS Code 和其他发送标头的客户端:添加 https://mcp.edgegap.dev/mcp 并附带标头 Authorization: token YOUR_EDGEGAP_API_TOKEN,然后使用 npx skills add edgegap/llm-agent-skills --skill "*" 安装技能。

Claude Desktop:自定义连接器无法发送该标头,因此请改用本地服务器 (Node 22):{ "mcpServers": { "edgegap": { "command": "npx", "args": ["-y", "@edgegap/mcp"] } } }。它会在首次使用时请求令牌。

检查是否正常运行:

“列出我的 Edgegap 应用程序。”

3. 让您的游戏服务器准备好接入 Edgegap

Edgegap 会在对局需要时启动服务器。只有您的游戏知道对局何时结束,因此服务器需要自行停止其部署。否则,空闲的服务器将持续运行并计费,直到达到其最大运行时间。

  • 通过 WebSocket 在 0.0.0.0 上监听来自 PORT 的端口。通过 https:// 提供的 Web 构建只能打开 wss://。TLS 升级(第 4 步)会处理证书,因此您的服务器只需处理纯 ws 即可。

  • 生命周期模块,仅在 Edgegap 上运行(当设置了 ARBITRIUM_REQUEST_ID 时,Edgegap 会在每次部署时设置该变量)。如果在 120 秒内无人加入、服务器空闲 30 秒或对局结束时,它将停止部署。在示例中,该文件为 Server/src/edgegap.ts。

  • 结束对局:锁定房间,显示结果几秒钟,断开玩家连接,然后停止。同时也要处理 SIGTERM:通知玩家并退出。

  • Colyseus:在 Edgegap 上关闭 playground 和 monitor:任何拥有服务器地址的人都可以打开它们。示例仅在未运行在 Edgegap 上时才挂载它们。

  • 服务器文件夹中的 Dockerfile,以 Node.js 作为主进程。如果您没有 Dockerfile,该扩展会编写一个初始版本。

使用您的智能体:

“加载 edgegap 技能,然后加载 edgegap-colyseus(如果我的服务器不是 Colyseus,则加载 edgegap-cocos)。将 Edgegap 生命周期添加到 Server/ 中我的 Cocos 游戏服务器:监听 PORT,在无人加入、所有人离开以及对局结束时停止部署,并处理 SIGTERM。然后在 Docker 中进行本地测试。”

4. 构建并上传您的服务器

Edgegap 在容器中运行您的服务器。可以使用其中任一选项,或两者结合使用。

选项 A:Edgegap Cocos 扩展。它可以在编辑器的一个面板中完成服务器的构建、测试、上传和部署。

  • 安装:下载扩展并将其复制到您的项目中作为 extensions/edgegap-extension/。它是预构建的,因此无需额外安装。在 Cocos Creator 中,打开“扩展”→“扩展管理器”→“项目”并启用 edgegap-extension,然后打开“扩展”→“Edgegap”→“打开面板”。

  • 登录:选择获取令牌(在 Edgegap 控制面板上一键登录),粘贴该令牌并选择验证并登录。该扩展会自动获取您的注册表登录信息。普通的 API 令牌也可以使用:随后面板会提示从控制面板的“容器注册表”页面输入项目、用户名和令牌。两者都会保存在您的 Cocos Creator 用户配置文件中,绝不会保存在项目里。

  • 服务器:服务器文件夹、镜像名称、标签(UTC 时间戳,也用作版本名称)、端口、协议 WS(开启 TLS Upgrade)以及端口名称 gameport。这些设置保存在项目中,以便您的团队共享。

  • 构建镜像,然后本地运行并将客户端指向 ws://localhost:<port>。完成后点击停止本地运行。

  • 推送镜像并创建版本:推送镜像,根据需要创建应用程序,并使用您的端口、CPU、内存和最大持续时间创建版本。

该扩展不会设置重启策略或环境变量。首次上传后,在控制面板中打开该版本,将重启策略设置为“从不”(Never),并添加服务器读取的所有环境变量。

选项 B:询问您的代理。

“为 linux/amd64 构建 Server/ 中我的 Cocos 游戏服务器,使用新标签将其推送到我的 Edgegap 容器注册表,并创建应用程序和应用程序版本:我的服务器端口、协议 WS、开启 TLS Upgrade、命名为 gameport、0.25 vCPU 和 512 MB、重启策略为从不。”

代理会要求您使用容器注册表页面中的用户名和令牌自行运行 docker login registry.edgegap.com,以确保这些凭据不会留在聊天记录中。每次构建请使用新的镜像标签,切勿使用 latest。

对于 CI,该扩展的 scripts/e2e.mjs 可以在脱离编辑器的情况下运行相同的步骤。如果仅需交付构建版本,edgegap/deploy-action 会更简单。

5. 部署测试服务器并连接

  • 在面板中,选择 Deploy near me。它会在靠近您公网 IP 地址的位置启动一台服务器,并显示客户端连接的地址:wss://<id>.pr.edgegap.net:<port>。Stop server 可将其停止;达到最大持续时间后,它也会自动停止。

  • 将该地址传递给客户端。在示例的 Web 构建版本中,将 ?server=wss://... 添加到页面地址中。请始终使用主机名而非 IP 地址,否则证书检查将失败。

  • 如果首次加入失败并出现 502 错误,请重试:刚启动的服务器可能会在几秒钟内返回 502。示例中的 joinWithRetry 会每隔 2 秒重试一次,共重试 10 次。

当玩家离开后,服务器会自动停止其自身的部署,并从控制面板中消失。免费套餐一次只能运行一个部署。

6. 添加匹配功能

Edgegap 的撮合系统对玩家进行分组,将您的服务器部署在他们附近,并将服务器地址提供给每个客户端。

  • 从示例的 edgegap/matchmaker-config.json 开始:一个包含 2 名玩家的 casual 配置文件。将应用程序版本设置为您上传的标签。

  • 在 allowed_cors_origins 中列出您的网址:提供 Web 构建服务的每个地址,加上用于 Cocos 预览的 http://localhost:7456。否则浏览器会阻止撮合系统的回复。

  • 在控制面板中,打开 Matchmaker,选择 Create Matchmaker,上传文件并选择 Create and Start。复制其 API URL 和 Auth Token。Auth Token 旨在随游戏一起发布:它只能创建和读取撮合票据。它不是您的 Edgegap API 令牌。

  • 在示例中:在页面地址中添加 ?mm=<API URL>&mmToken=<Auth Token>,或填写 Canvas 节点上 SceneManager 组件的 Matchmaker URL 和 Token 字段。

  • 在您自己的项目中:将示例的 Matchmaker.ts 和 joinWithRetry.ts 复制到您的脚本中并运行 npm i @edgegap/sdk:Matchmaker.ts 使用 Edgegap 的 JavaScript SDK。玩家在搜索过程中退出时取消票据。

使用您的智能体:

“使用 edgegap-colyseus 技能(或 edgegap-cocos),将 Edgegap 撮合功能添加到我的 Cocos 客户端:包含 2 名玩家的 casual 配置文件,在 allowed_cors_origins 中添加我的网址和 localhost:7456,一个‘寻找对局’按钮,以及在服务器分配后重试的加入逻辑。”

手动操作:请参阅匹配文档。

当您发布新的服务器构建时,请更新撮合配置中的 application.version(停止、编辑、启动),否则比赛将继续部署旧版本。

7. 发布 Web 和原生版本

  • Web(web-desktop、web-mobile):通过主机名连接到 wss://。已在 Edgegap 上使用 Chrome 中的 web-desktop 构建版本进行了测试;未运行 web-mobile。

  • 原生(Windows、macOS、Android、iOS):Cocos Creator 在原生构建中支持 WebSocket,并且从 Cocos Creator 3.5 开始,Android 上的 wss:// 不再需要证书文件。原生构建尚未在 Edgegap 上运行。如果 Windows 构建在安全连接时失败,请向 WebSocket 传递 CA 证书包。仅发布原生构建的游戏也可以使用 UDP 或 TCP 端口,无需 TLS 升级。

  • 新服务器构建版本:在面板中,为新标签选择立即(Now),然后选择构建镜像(Build image)和推送镜像并创建版本(Push image and create version)。随后将配对器(matchmaker)指向新版本。

8. 由两名玩家测试完整循环

  • 确保没有测试部署仍在运行。在免费层级中,遗留的部署会阻止匹配系统的部署。

  • 使用匹配系统设置打开两个客户端:两个 Web 构建版本,或者一个 Web 构建版本和示例机器人(在 Server/ 目录下,30 秒内运行 node scripts/e2e.mjs --players=1 --mm=<API URL> --mm-token=<Auth Token>)。

  • 将 Cocos 标签页保持在最前端:处于隐藏标签页中的 Cocos Web 构建版本不会运行任何帧,因此永远不会响应其回合。

  • 两名玩家将进入同一个服务器并开始游戏。比赛结束时,服务器会停止自身的部署,并在控制面板中消失。

发布之前:在匹配系统配置中将 inspect 设置为 false,仅列出真实的网站地址,提高最长持续时间以适应您的比赛,并且仅允许已匹配的玩家进入(每个已匹配的部署会在 MM_TICKET_IDS 中接收其票证 ID)。

在免费层级中,匹配系统每次启动后 3 小时停止(可从控制面板重新启动),部署会在 60 分钟后停止,并且一次只能运行一个部署。

后续步骤

后续步骤

准备上线?让您的代理运行 edgegap-launch 技能的检查清单。

遇到困难?让您的代理加载 edgegap-troubleshoot,或在 Edgegap Discord 上向我们的团队和其他工作室咨询。

常见问题

关于在 Edgegap 专属服务器上托管 Cocos Creator 多人游戏的常见问题。

Cocos Creator 是否可以构建专用服务器?

不。Cocos Creator 游戏的多人服务器是一个单独的程序,通常是 Node.js 应用程序,例如 Colyseus 或您自己的 WebSocket 服务器。Edgegap 在容器中运行该程序,每场比赛一个服务器,靠近其玩家。

支持哪些 Cocos Creator 版本?

Edgegap Cocos 扩展需要 Cocos Creator 3.8 或更高版本,本示例使用的是 3.8.8。服务端不依赖于您的 Cocos 版本:任何在 Linux 容器中运行的服务器都可以使用。

我可以在 Edgegap 上将 Colyseus 与 Cocos Creator 配合使用吗?

是的。Edgegap 对 Colyseus 的 Cocos 井字棋演示进行的复刻,在 Edgegap 上为每场比赛运行一个由匹配系统启动的 Colyseus 0.17 服务器,并已使用 Cocos Web 构建版本进行了测试。

Cocos Web 构建版本如何安全地连接到服务器?

通过 https:// 提供的页面只能打开安全 WebSocket (wss://)。请在服务器的 WS 端口上启用 TLS 升级:Edgegap 会处理证书并将纯文本流量转发到您的服务器。请通过主机名连接,而不是 IP 地址。

我需要 Edgegap Cocos 扩展吗?

不。虽然这是在编辑器中最快的方式,但您也可以使用 Docker 进行构建和推送,并在控制面板中创建版本;或者让您的 AI 智能体通过 Edgegap MCP 服务器来完成,亦或是使用 edgegap/deploy-action 从 CI 发布构建。

在我的游戏中发布匹配器令牌安全吗?

是的。配对系统的身份验证令牌(Auth Token)只能创建和读取配对票证。您的 Edgegap API 令牌控制着您的整个组织,因此绝不能将其放入游戏客户端中。

客户

了解更多已接入 Edgegap 的客户案例

提供 31 个从其他平台迁移至 Edgegap 的工作室案例研究。

他们选择 Edgegap 的关键原因

了解 Edgegap 自动化游戏服务器编排如何带来无缝的多人游戏体验。

费用

定价

定价

通过混合编排优化成本与性能

通过混合编排优化成本与性能

通过混合编排优化成本与性能

边缘云

按需

$0.00115

/ vCPU

/ 分钟

按分钟计费,仅按实际使用量收费

只有在玩家在线玩游戏时才需付费。0 个活动服务器 = $0

在全球 615 多个边缘云节点中按实例部署游戏服务器。零承诺。

只需添加信用卡。

边缘云

按需

$0.00115

/ vCPU

/ 分钟

按分钟计费,仅按实际使用量收费

只有在玩家在线玩游戏时才需付费。0 个活动服务器 = $0

在全球 615 多个边缘云节点中按实例部署游戏服务器。零承诺。

只需添加信用卡。

专属物理机集群 (裸金属)

预留容量

$0.0261

/ vCPU

/ 小时

按月计费,始终开启

每个主机每月 $280(12个月标准价),或按月支付每月 $350

通过无出站流量费用的专用机队托管,优化您游戏服务器的成本效益。

持久在线,24/7全天候可用,您的工作室专属。

专属物理机集群 (裸金属)

预留容量

$0.0261

/ vCPU

/ 小时

按月计费,始终开启

每个主机每月 $280(12个月标准价),或按月支付每月 $350

通过无出站流量费用的专用机队托管,优化您游戏服务器的成本效益。

持久在线,24/7全天候可用,您的工作室专属。

您的账单因费率和使用量而异;这可能会根据游戏类型、玩家人数等因素而有所不同。

您的账单因费率和使用量而异;这可能会根据游戏类型、玩家人数等因素而有所不同。

使用我们的预估计算器模拟您的用量 ->

使用我们的预估计算器模拟您的用量 ->

Edgegap 的功能与价格:边缘云与私有集群(Private Fleets)详细对比

Edgegap 的功能与价格:边缘云与私有集群(Private Fleets)详细对比

对比

免费试用

边缘云

Private Fleets

功能特色

分析与监控

账单警报

点击展开

还有 28 行

解锁

在帐户中添加信用卡后,即可解锁各项功能。

对比

免费试用

边缘云

Private Fleets

功能特色

分析与监控

账单警报

点击展开

还有 28 行

解锁

在帐户中添加信用卡后,即可解锁各项功能。

对比

免费试用

边缘云

Private Fleets

功能特色

分析与监控

账单警报

点击展开

还有 28 行

解锁

在帐户中添加信用卡后,即可解锁各项功能。