Beamable 是一个开源游戏服务器平台,允许用户在几分钟内构建在线游戏和虚拟世界。该平台支持为任何游戏项目添加玩家身份验证、分析、社交、商业、库存管理、内容管理、元游戏功能、生成式 AI(GenAI)、Web3 功能等。Beamable 通过去中心化物理基础设施网络(DePIN)革新游戏后端基础设施的创建与运行方式。
什么是 Beamable?
Beamable 是一个开放且可扩展的游戏服务器平台,使用户能够快速构建在线游戏和虚拟世界。通过引擎集成,用户可以在几分钟内完成原型开发,并扩展至数百万玩家。该平台既可作为完全托管的 SaaS 服务提供,也可作为 AWS 支持的私有云替代方案。
Beamable 旨在解决一系列相互关联的问题,为游戏开发者提供现代游戏所需的在线服务,如社交游戏、社区驱动游戏以及具备经济系统的游戏。对于基于 Unity 的在线游戏开发,Beamable 是创建、管理和扩展游戏的高效解决方案。
构建(Build): 采用低代码方法,支持 Unity 项目,提供拖放功能和 UI,可直接发布或完全自定义皮肤。
管理(Manage): 通过 Unity 编辑器和 Web 浏览器提供工具,用于启动在线活动、更改玩家数据、创建内容等。
扩展(Scale): 依托可扩展的 Amazon Web Services(AWS)云计算服务,已为超过 3000 万玩家提供高质量且具成本效益的用户体验。
Beamable 背景
John S. Kline 和 David J. Hill 于 2018 年开发 Beamable,旨在打造一个统一平台,使游戏开发者能够轻松集成后端服务并进行实时游戏运营。
2019 年,Beamable 开始在游戏行业建立联系,并与流行的游戏开发引擎 Unity 进行集成。在此期间,Beamable 重点开发了实时多人游戏、游戏内商业交易和数据分析等关键功能。
2020 年,Beamable 正式发布其平台,使更多游戏开发者能够使用。该平台提供玩家数据管理、多玩家支持以及实时游戏运营等核心功能。
2021 年,Beamable 持续优化和扩展平台,新增了实时运营(LiveOps)、A/B 测试以及跨平台玩家兼容性。同时,平台增强了玩家互动和数据分析能力。作为游戏开发者后端服务领域的重要参与者,Beamable 支持多种游戏类型,使开发者能够轻松扩展实时游戏运营。
在融资方面,Beamable 于 2018 年完成种子轮融资,获得了一笔未公开的资金,用于加速平台开发,重点打造多人游戏功能、游戏内商业交易和实时游戏管理等核心产品。2021 年,Beamable 在 A 轮融资中筹集了 1000 万美元,由 Northwest Venture Partners 和 Volition Capital 领投,并吸引了其他投资者的参与。
Beamable 的功能
Beamable 是一个游戏开发平台,为开发者提供后端服务和实时游戏功能。
Beamable 私有云后端服务
Beamable 提供基于云的后端架构,使开发者能够创建可扩展的多人在线游戏和实时服务游戏,而无需自行运营服务器。该平台负责游戏管理的主要部分,包括:
- 无服务器架构(Serverless Architecture):可自动扩展,支持数百万玩家。
- 云存储(Cloud Storage):为玩家数据和游戏资源提供安全可靠的数据存储。
该功能的核心组件包括:
- Unity 和 Unreal SDK:指向开发者的私有云 API 端点,支持个性化和修改。
- Beamable 后端服务、基础设施和 CI 工具:部署到开发者的 AWS 账户,并包含完整源代码。
- Web Dashboard 应用:部署到开发者的 AWS 账户,配备部署脚本和完整源代码,可进行定制和品牌化。
- 联合开发支持:用于关键功能和定制化开发。
Web3 集成
开发者可以使用 Beamable 创建 Web3 游戏。借助 Beamable,开发者可以专注于游戏内容,同时通过拖放式链连接器(chain connectors)添加链上资产。
这一集成允许开发者在链上和链下玩家持有资产之间构建互操作层,使特定 Beamable 资产或货币能够联邦化(federated)到特定区块链。例如,游戏内物品或货币可以直接从 Beamable 库存系统查询,该系统为链上和链下资产提供统一接口。
此外,Web3 连接支持 Beamable 用户使用加密钱包登录。钱包与 Beamable 账户绑定,使服务器端能够加密验证钱包所有权。
Unity 和 Unreal Live Services SDK
Beamable 提供多种 API,以不同方式解决问题,每种 API 都具有独特的智能层,适用于不同的操作模式,包括以玩家为中心的 API、C# API 和 REST API。借助这些工具,创作者可以将游戏垂直集成到 Unity IDE 中,从而加快实现、内容开发、测试和发布流程。这种集成减少了将技术和服务拼接在一起的需求,使所有内容能够无缝连接并高效运行。所有服务均由预制件完全管理、集成和驱动,使开发者能够尽早开始实验。SDK 具备响应式特性,并会根据平台数据自动调整。所有 Pub-Sub 机制均已部署完毕。
Beamable Core Unreal 包含用于身份验证、内容管理、玩家账户、统计数据的机制,并支持使用 Blueprints/C++ 以类型安全的方式访问完整的 Beamable REST API。Unreal Engine Live Services SDK 将充分利用蓝图,支持低代码创建和迭代强大的实时功能,以提升玩家参与度。开发者无需编写任何代码即可在 Beamable 上创建可用账户。Beamable 允许多个本地用户同时登录,从而支持远程和本地合作模式。该功能包含一个集成的编辑工具集,充分利用 Unreal Engine 标准 UI/UX 开发流程,使开发者无需学习 Beamable 专属内容即可上手并高效开发。
Beamable 的解决方案
身份管理
Beamable 提供强大的身份解决方案,可与第三方应用程序集成。这一功能集让您可以完全控制游戏中的用户身份验证方式。Beamable 了解不同游戏的身份验证方式各不相同,因此我们提供多种身份验证工具,以满足您的特定需求。
身份验证通常较为复杂,涉及比预期更多的边缘情况。您需要考虑在出现错误时会发生什么,以及如何处理这些问题。下方的图示展示了身份验证流程,并说明了如何应对特定情况。
登录功能
RecoverAccount 函数(也称为登录函数)是 Beamable 身份系统的重要组成部分,并可与所有其他登录方法结合使用。RecoverAccountWithEmail() 用于电子邮件和密码验证,而 RecoverAccountWithThirdParty() 用于第三方身份验证服务。这两种方法都会触发玩家恢复操作。
PlayerRecoveryOperation 结构体可检查用户尝试恢复的账户信息,前提是提供了必要的凭据。如果提供的凭据无效,PlayerRecoveryOperation 将返回错误,并且 isSuccess 字段的值将为 false。
身份管理功能
- 无摩擦身份验证:无摩擦身份验证是游戏中最易集成的身份验证方式。然而,它依赖于设备,因此如果需要跨平台支持,不应将其作为唯一的身份验证机制。
- 用户名/密码:使用 Beamable 的用户名和密码进行身份验证。此方案支持用户构建跨平台身份验证,而无需整合其他平台的社交功能。
- Facebook 身份验证:此方案支持 Facebook 集成,使游戏具备跨平台兼容性。在此,您可以找到将 Beamable 与 Facebook 进行身份验证集成所需的全部信息。
- Google 登录:Google 登录方案管理 OAuth 2.0 认证流程和令牌生命周期,使其更容易与 Google API 集成。用户可以随时撤销对应用程序的访问权限。
- Apple 登录:Apple 登录允许用户使用 Apple ID 轻松登录应用和网站。用户无需填写表单、验证电子邮件或创建新密码,而是可以直接使用“使用 Apple 登录”创建账户并立即使用应用。为增强安全性,所有账户均采用双重身份验证,且 Apple 不会跟踪用户在应用或网站中的行为。
- Steam 集成:Valve 的 Steamworks 提供一套工具和服务,帮助游戏开发者和发行商构建游戏并最大化其在 Steam 平台的发行潜力。此集成可让开发者无缝将 Steam 身份验证与 Beamable 结合使用。
个人档案与存储
Beamable 提供强大且灵活的游戏内存储与内容管理解决方案。Beamable 云存储允许玩家保存游戏进度,云端数据可在线获取并存储于本地,支持游戏级和玩家级数据范围。该方案能够自动检测所有更改,并保持数据同步。
Beamable 还提供内容功能,使游戏开发者能够存储特定于项目的数据。这一方案让开发者无需重新发布应用即可创建、部署和更新游戏内容。
此外,Beamable 提供统计功能,允许开发者存储玩家特定的统计数据。借助此功能,开发者可以跟踪内置或自定义的玩家(以及公会)统计变量,并调整其可见性级别。
运营功能(Live Ops)
Beamable 的 Live Ops 提供强大且灵活的解决方案,以便游戏与玩家互动,并让玩家与游戏进行交互。
- 活动(Events):Beamable Live Ops 包含活动功能,使游戏开发者能够创建一次性竞赛。这一社交/竞技功能允许玩家在设定时间内参与多个阶段,并通过游戏内操作获得分数,参与活动排行榜竞争,并赢取奖励。
- 公告(Announcements):公告功能允许玩家管理游戏公告。这一消息传递功能可显著提升玩家互动和收益。公告提供了一对多的通信渠道,使开发者能够直接向玩家传递信息。
- Beamable Live Ops 还包括以下其他功能:
- 通知(Notifications):支持游戏通过订阅发送和接收消息。消息系统可根据服务器数据提供实时更新,主要用于广播通信(如一对多消息)。
- 邮件(Mail):允许玩家管理游戏内邮件。消息传递功能可大幅提高玩家互动和盈利能力。该功能旨在限制玩家间的通信,仅支持一对一交流。
社交与联网功能
社交与联网功能使玩家能够协作或竞争。在当今的游戏世界中,为玩家提供一个可互相连接的界面比以往任何时候都更加重要。大多数主流游戏主机都支持群组(也称为“Party”或“Clan”),竞技类网络游戏支持匹配系统和联网多人游戏,而专注于电竞的游戏通常提供游戏内锦标赛。Beamable 能够以最小的开发工作量满足这些需求,使游戏开发者能够尽快让游戏上线并运行。
主要功能包括:
- 聊天(Chat):聊天功能允许玩家在游戏内交流。聊天可用于合作时的策略讨论,也可在竞争时进行信息交流。
- 连接(Connectivity):检测网络连接的可用性。系统会检查互联网连接状态,并在发生变化(如远程服务器故障或本地以太网/WiFi 断网)时立即更新。
- 群组(Groups):该功能允许玩家实时组队。群组可以是短期的“Party”,围绕特定游戏事件临时组建并解散,也可以是长期存在的“公会”或“战队”,持续跨游戏会话运行。
- 排行榜(Leaderboards):允许玩家管理排行榜。排行榜可用于追踪玩家在社交排名中的表现,支持“全球”排行榜(数亿玩家参与)或“分区”排行榜(较小范围的玩家分组)。
- 匹配(Matchmaking):该功能让开发者能够将远程玩家匹配到同一场游戏中。匹配基于多种标准,如经验(Elo 算法)和竞技评分。
- 多人游戏(Multiplayer):支持开发者创建多人互动体验。支持回合制游戏,并无缝集成奖励、匹配系统和排行榜,无需额外构建、管理或扩展游戏服务器。
- 锦标赛(Tournaments):允许游戏开发者创建循环竞赛。这一社交/竞技功能包含元游戏机制,支持周期性排名、阶段、等级和进度管理。
游戏内容设计师(Game Content Designer)
Game Content Designer(GCD)是一个 Google Sheets 插件,使游戏开发者能够像操作 Google 表格一样轻松管理游戏的所有实时数据。该功能允许开发者无需编写代码即可构建和管理数据结构。GCD 使开发者能够在最熟悉的环境中工作,并可随时导出结果。开发者可以直接将数据发布到游戏中,无需额外操作,因为 GCD 会自动将平面表格数据转换为 Beamable 内容,最终由 Unity 以 ScriptableObjects 形式使用。Beamable 已经提供了多种常见的内容类型,使开发者无需接触代码即可创建和发布内容。
尽管 GCD 旨在与 Beamable 兼容,但游戏开发者并不必须使用 Beamable 作为后端。GCD 可将平面表格数据转换为带有复杂结构(数组、对象引用、多维对象)的 JSON 对象,同时支持数据验证、约束(最小/最大值)和交叉表 ID(crosstab IDs)。这些 JSON 数据可直接加载到 Unity 游戏中。在 GCD 表格中,模式(Schema)定义位于第一行。对于包含分层数据的复杂数据结构,表头可能会跨越多行,以指示数据的层级关系。模式定义包含映射信息,以便将表格数据正确导出到游戏中。
Beamable 的使用场景
Beamable 是一种低代码解决方案,可快速将社交、商业和内容管理功能集成到实时游戏中。开发者可以通过 Beamable 的在线产品文档学习如何使用该平台。
游戏开发者深知,开发、发布和扩展实时游戏(即玩家可交互的游戏)需要广泛的工程、DevOps 和 LiveOps 技术,而大多数游戏公司缺乏独立开发这些技术的资源。Beamable 带来的直接优势取决于游戏开发者的角色和游戏项目的类型。其文档涵盖功能、代码、预制件(Prefabs)、脚本参考、工具窗口等,帮助所有游戏开发者找到所需资源。
美术(Artist)
Beamable 的低代码功能预制件以及 UI 皮肤系统的灵活性可帮助游戏美术人员。Beamable 使美术人员能够在玩家的游戏体验中创建一致且精美的视觉效果,并支持在多个游戏项目之间共享图形主题。
皮肤化(Skinning)功能允许开发者自定义用户界面的外观,包括颜色、字体和声音。主题管理器(Theme Manager)是 UI 重新设计的主要入口,旨在让游戏设计师调整 Beamable UI 的外观。
客户支持(Customer Support)
游戏开发中的客户支持人员可通过高质量的技术讨论,为所有用户提供快速、准确和专业的帮助。Beamable Portal 允许客户支持团队检查并解决玩家的支持请求,并通过 Beamable 内置邮件工具与玩家联系。
Beamable 为客户支持提供对玩家行为和游戏历史的高度可见性,并可通过游戏内邮件和聊天功能快速与玩家沟通。
游戏设计师(Game Designer)
游戏设计师负责构思游戏概念和关卡,并在保持游戏挑战性的同时优化玩家体验。Beamable 的功能预制件提供了低代码解决方案,使设计师可以快速原型化新功能。同时,Portal 和 Game Content Designer 允许用户在无需下载新更新的情况下调整游戏平衡。
Beamable 使游戏设计师能够提供更多面向用户的功能,而无需过多依赖程序员。
游戏制作人(Producer)
游戏制作人负责规划和监督整个游戏开发周期,确保各个部门按时完成任务并交付高质量产品。Beamable 提供了广泛的功能集,其中包含各种开箱即用的低代码和无代码功能。
Beamable 使开发者能够更快地部署和更新功能丰富的游戏,提高开发效率和产品质量。
结论
Beamable 是一个领先的平台,致力于简化多人游戏和实时游戏服务的后端运营。它帮助开发者构建和管理具备实时多人游戏、游戏内经济系统和动态内容更新等高级功能的游戏。
Beamable 的发展始终专注于降低开发者的技术负担,使其能够专注于创新与游戏玩法,而复杂的后端服务则由 Beamable 负责管理。