Skip to content

如何在 Discord Activities 上发布游戏(2026)

最后更新:2026 年 7 月。

没错,你可以在 Discord 上发布游戏,这种形式称为 Activity。Activity 是一种在 Discord 客户端内运行的 Web 应用,会嵌入 iframe 中,并可从语音频道、文字频道或私信中启动。你需要使用 Discord Embedded App SDK 进行开发。这套 JavaScript 工具包于 2024 年首次发布,目前仍在积极更新(v2.5.0 已于 2026 年 5 月 5 日发布)。如果你的游戏已经可以在浏览器中运行,那么大部分工作就是托管游戏、告诉 Discord 游戏的访问地址,以及使用 SDK 获取当前用户和频道中的其他参与者。

简而言之,具体流程是:在 Discord Developer Portal 中创建应用,启用 Activities 功能,将 Web 构建版本托管在可公开访问的位置,添加 URL 映射以便 Discord 的代理提供游戏内容,然后使用 SDK 验证玩家身份并读取参与者列表。完成这些步骤后,你就会得到一个可供朋友启动的 Activity。更困难的另一半,是如何让其他人发现它,因为 Discord 没有“浏览所有游戏”的商店。下文会如实说明这一点。

快速参考

它是什么在 Discord 内的 iframe 中运行的 Web 应用(你的游戏),可从语音频道、文字频道和私信中启动
技术栈任意 Web 构建版本(HTML5/WebGL、Unity WebGL、Godot Web 导出),外加用于身份验证和获取参与者的 Embedded App SDK
托管你需要自行托管构建版本;Discord 会通过采用严格 CSP 的 discordsays.com 代理提供内容
商业化原生应用内购买(订阅和一次性商品)。Discord 的平台费用为前 100 万美元收取 15%,之后收取 30%,另加支付处理费
内容发现App Launcher、App Directory 资料页(通过验证后)以及主要依靠口碑传播。没有可浏览全部内容的全局入口
发布成本创建应用免费;你需要自行承担托管和游戏服务器费用

2026 年的 Activities 是什么

Activity 并不是你上传的一款原生游戏。它其实是你的网站,由 Discord 实时加载,并在人们一起聊天时运行于沙盒化的框架中。SDK 位于你的页面与 Discord 客户端之间,负责处理社交层面的连接:这里有谁、我是谁、我们在哪个频道,以及如何完成 OAuth 握手以获取可信令牌(参见 SDK 参考文档)。

之所以说 Activities 在 2026 年比刚推出时更重要,是因为 Discord 大力加强了对游戏品类的投入。如今,超过 25% 的 Discord 月活跃用户会使用 Apps 和 Activities;截至 2025 年底,平台上已有超过 10,000 个游戏社区,成员总数超过 8,000 万(Discord 新闻稿,GDC 2026)。一些 Activities 已在这批用户中真正获得了关注。Playroom 推出的 Death by AI 日活跃用户峰值约为 70 万,并在几周内吸引了约 700 万名玩家,其中超过 70% 的游戏会话有三位或更多好友参与。Mojiworks 的 Chef Showdown 已有超过 1,400 万人游玩,玩家在游戏中的停留时间约为其他平台的三倍。Krunker Strike FRVR 以 Activity 形式发布后,玩家规模扩大了一倍多(a16zDiscord)。这些成功案例有一个共同模式:社交、休闲,并且可以立刻开始多人游戏。这正是适合该平台的游戏形态。

设置 Activity

首先前往 Discord Developer Portal。创建一个新应用,然后在 Activities 部分为它启用 Activities 权限。你的游戏必须能够通过公开的 HTTPS URL 访问,因此可将 Web 构建版本托管在你现有的任意平台上,例如 Cloudflare Pages、Vercel、Netlify 或普通静态托管服务。

最容易让人卡住的是 URL 映射。Discord 不会直接加载你的网站,而是通过位于 https://<your-app-id>.discordsays.com 的代理转发所有请求,从而隐藏玩家的 IP 地址,并拦截已知的恶意端点(参见 Discord 网络文档)。你需要在 Developer Portal 中将路径前缀映射到真实主机,例如让 / 指向你的游戏,让 /api 指向后端。游戏获取的任何未映射资源都会被拦截。对于只在运行时出现的请求,SDK 的 patchUrlMappings API 可以即时重写 URL,使开发构建版本和经过代理的生产构建版本具有相同的行为(参见 patch-url-mappings 指南)。

完成托管和映射设置后,就可以接入 SDK。先调用 discordSdk.ready(),确认框架已连接;然后调用 authorize()authenticate() 运行 OAuth 流程,并获取用于识别玩家的令牌(参见 SDK 参考文档)。之后,你就可以读取频道中的参与者,并围绕他们构建游戏。测试时,请在已经安装该应用的真实语音频道中启动 Activity。Discord 的文档以及适用于 Robo.js 和原生配置的社区模板,可以帮助你在一个下午内从空仓库做到成功运行框架。

技术限制

由于 Activity 是运行在严格受限 iframe 中的网页,因此它既受到 Web 本身的限制,也受到 Discord 安全规则的约束。Activities 在限制严格的内容安全策略下运行,而且所有网络请求都必须经过 discordsays.com 代理。直接请求一个尚未映射的外部域名,会触发 blocked:csp 错误(参见 Discord 代理说明)。当某个第三方 npm 模块暗中调用自己的 CDN 或 API 时,这个问题尤其棘手。你要么映射相应域名,要么修补该请求。

所有请求都要经过代理映射主机后即可提供内容;如果跳过映射,Discord 的 CSP 会将其拦截。你的游戏Discord 中的 iframediscordsays.com代理 + CSP已映射的主机已提供内容 ✓未映射的主机blocked:csp ✗已映射未映射

在游戏引擎兼容性方面,只要能编译为 Web 版本,就能做成 Activity。原生 HTML5 和 WebGL 都可以使用。Unity 的 WebGL 导出也可正常运行;由于 Discord 只是通过代理将提供的 WebGL 构建版本载入框架,因此社区一直在维护 Unity SDK 封装和模板。Godot 的 Web 导出工作方式相同,也有将 Godot 与 Web 托管服务结合起来的现成模板。无法以浏览器为目标平台的原生引擎则完全无法制作 Activity。请尽量缩小游戏的初始加载量,因为在聊天窗口中下载庞大的 WebGL 内容,比在商店页面上更容易让玩家流失。

移动端是整个方案的一部分,而不是事后才考虑的补充。Activities 可以在 Discord 的桌面、Web 和移动客户端上运行,因此从一开始就要针对触控和竖屏进行设计,而不能默认玩家都使用键盘和鼠标。

多人游戏与社交接口

这才是在 Discord 上发布游戏的真正理由。平台会直接为你带来一群已经共同待在语音频道中的好友,而这种场景正是大多数多人游戏耗费巨资也想营造出来的。SDK 免费提供参与者列表和身份信息,因此“通话中的所有人现在都加入了我的游戏”只需要几行代码,而不需要一套匹配系统。

不过,你仍然需要自行运行游戏的实时状态服务。Embedded App SDK 负责身份和在线状态,而不是你的网络同步代码,因此还需要搭配游戏服务器。Colyseus 介绍了它如何作为后端接入 Discord Activity,我们在多人浏览器游戏指南中提到的方案也同样适用:使用 WebSocket 发布游戏,并采用权威服务器,以便简化反作弊和唯一可信状态源。请记住,游戏服务器也是一个外部主机,因此和其他所有服务一样,需要配置 URL 映射。

请充分利用这种社交场景。真正脱颖而出的 Activities,都是以群体互动为核心,而不是把多人游戏做成一个可以关闭的可选模式。派对游戏、绘画游戏、知识问答、快速竞技回合——任何能让玩家与通话中已有的人直接加入,并且比独自游玩更有趣的游戏类型,都很合适。

商业化的现实情况

Discord 支持 Activities 的原生应用内购买,因此你可以直接销售内容,而不必将玩家带到外部结账页面。Activities 应用内购买系统支持订阅(用户订阅或服务器订阅)和一次性购买;一次性购买又分为用于永久解锁的耐久型商品,以及可供玩家消耗的消耗型商品。

对于收入分成,请保持清醒。累计销售额的前 100 万美元,Discord 会收取 15% 的平台费用;超过该门槛后则收取 30%,而且这还没有扣除支付处理费和交易费(参见高级应用收益支付条款,2024 年 6 月 6 日生效)。你可能会在网上看到“Discord 抽成 10%”的说法。请对此保持怀疑,因为文档所规定的是上述 15%/30% 分级费率。收入达到 100 美元后,你就具备收款资格。 2026 年变现版图中还有两块值得了解,尽管目前它们还不太适合大多数独立开发者。Discord 的 Orbs 货币已于 2025 年 7 月在全球上线。玩家可以通过完成 Quests(激励广告任务)获得这种软货币,并在 Discord 商店中消费。它本质上是一种广告经济体系,更适合拥有大型游戏营销预算的团队,而不是你的第一款 Activity。此外,Discord 在 GDC 2026 上扩展了 Social Commerce,让用户可以直接在服务器内购买和赠送游戏内物品;该功能最初于 2025 年 12 月与《漫威争锋》合作展示。Discord 商店约 20% 的购买属于赠礼,而在《漫威争锋》上线期间,这一比例达到了 41%(GDC 2026 回顾)。Social Commerce 会先向少数合作伙伴开放,因此它更适合在游戏发展壮大后接入,而不是首发时就能利用的增长杠杆。

真实的分发与曝光情况

在围绕 Discord 制订开发计划之前,你需要先理解这一点:Discord 内部并不存在像 Steam 或网页游戏平台首页那样的全局“浏览 Activities”商店(StraySpark,2026 年 5 月 14 日)。玩家主要通过自己已经加入的服务器、聊天中分享的链接,以及 App Launcher(客户端底部的形状图标)和你的 App Directory 资料页发现游戏。后两者只有在应用通过验证,并且你已在 Developer Portal 中启用 Discovery 后才会显示(Discord 支持文档)。

实际来说,这意味着 Activity 本身不会凭空带来受众。如果你的社区原本就不在 Discord 上,发布 Activity 也不会神奇地创造出一个社区。那些走红的游戏,都是在现有好友群体中传播起来的:一个人在语音通话中启动游戏,整个群组便能立刻加入。因此,你要设计的增长循环是“一个人在频道里分享游戏”,而不是“有人在浏览目录时发现游戏”。游戏应该让三位好友在开始游玩的前 30 秒内就能感受到它的吸引力。

与网页游戏平台相比,值得做吗

Discord 和网页游戏平台解决的是不同问题,因此答案通常是“两个都做,但理由不同”。

Discord Activities网页游戏平台(Poki、CrazyGames、itch.io)
受众已经一起进行语音通话的好友正在浏览并寻找新游戏的陌生玩家
曝光方式口碑传播,没有可浏览所有游戏的商店首页推荐和算法流量
最适合社交、休闲、可立即开始的多人游戏单人游戏和面向广泛受众的网页游戏
变现方式原生应用内购买,15%/30% 费率档位平台广告收入分成或自有应用内购买
在网页版本基础上的额外工作SDK、代理映射、CSP、社交玩法设计通常只需嵌入游戏并创建一个页面

PokiCrazyGames 等平台会带来陌生玩家,并把你的游戏展示给正在主动寻找新内容的人,而 Discord 做不到这一点。Discord 则会带来好友群体和社交场景,让多人游戏极易冷启动,而网页游戏平台做不到这一点。如果你的游戏是单人游戏,网页游戏平台更适合作为首发阵地。如果游戏能在三位好友一起语音通话时迅速活跃起来,那么 Discord 值得你投入额外的技术工作。好消息是,这些平台运行的都是网页版本,所以同一款游戏可以发布到各个平台。先以网页游戏的形式发布,再针对每个平台进行适配。

常见问题

我可以在 Discord 上发布任何游戏吗?

可以,但前提是它能在浏览器中运行。Discord Activity 是加载在 iframe 中的网页应用,因此 HTML5、WebGL、Unity WebGL 和 Godot 网页导出版本都符合要求,而无法编译为网页版本的纯原生游戏则不符合。你需要使用 Embedded App SDK 开发游戏,将网页版本自行托管在公开 URL 上,然后在 Discord Developer Portal 中将其注册为 Activity。如果你的游戏已经可以在浏览器中运行,那么大部分工作都已经完成了。

发布 Discord Activity 免费吗?

在 Developer Portal 中创建应用并启用 Activities 不收取任何费用。你需要支付的是网页版本的托管费用,以及多人游戏所需的服务器费用,因为 Discord 只会代理你的网站,而不会替你托管。如果你销售应用内商品,前 100 万美元销售额中 Discord 会收取 15% 的平台费,超过部分则收取 30%,另加支付处理费;不过,发布游戏不需要预付费用,也没有上架费。

玩家如何找到我的 Discord Activity?

主要通过好友。Discord 没有可供用户“浏览所有 Activities”的全局商店,因此游戏主要通过频道中分享的链接、有人在语音通话中启动游戏来传播。应用通过验证后,玩家也可以通过你的 App Directory 资料页和客户端内的 App Launcher 找到它。那些获得大规模增长的 Activities 都是在现有好友群体中传播起来的,而不是靠玩家在目录中发现。你应该以口碑增长为目标,并把玩家与好友一起游玩的第一分钟设计成最有吸引力的体验。

发布 Activity 必须支持多人游戏吗?

不必,但多人游戏正是这个平台最有吸引力的地方。Activities 可以是单人游戏,但 Discord 的优势在于,它能把游戏直接放进好友已经身处其中的语音频道,而 SDK 还会直接提供参与者列表。真正走红的 Activities 通常都具有社交属性,并且可以立即开始多人游玩。单人游戏通常更适合发布到能带来浏览流量的网页游戏平台。

Discord Activity 的变现方式与网页游戏平台相比如何?

Discord 允许你销售原生应用内购买内容(订阅和一次性商品),无需将玩家跳转到外部结账页面。在销售额达到 100 万美元前,你可以保留 85% 的收入;超过后则保留 70%,且以上均未扣除支付处理费。网页游戏平台通常会根据游玩次数向你支付广告收入分成,或者允许你运营自己的应用内购买系统。Discord 的模式更适合拥有忠实玩家、且玩家愿意购买外观道具或解锁内容的游戏;而网页游戏平台更青睐能够吸引大量休闲玩家游玩的游戏。

发布到 Discord 时有哪些技术陷阱?

最大的两个问题是代理和 CSP。Activity 发出的每个网络请求都会通过 discordsays.com 路由,而任何尚未声明为 URL 映射的外部域名都会被拦截。最常见的情况是,某个依赖项在后台调用了自己的 API。你可以通过映射该域名,或使用 SDK 修补请求来解决这个问题。除此之外,由于游戏运行在聊天窗口中,首次加载内容应尽量精简;同时还要针对触控操作进行设计,因为 Activities 也能在移动设备上运行。

现在就试试Discord Activities 可以运行网页游戏

只用一句话构建一款可玩的 3D 浏览器游戏,再将其适配为 Activity。

免费生成 →免费,直接在浏览器里运行,无需安装。

相关内容