多人游戏的5大后端解决方案

因此,您已经决定制作一款移动多人游戏,但无法决定合适的解决方案来增强您的下一个杰作。 别担心,您并不孤单。 这是一个重要的决定,因此有些困惑是很正常的,尤其是要知道有太多名称可供选择。 当然,最好的办法可能是为多人游戏构建自己的后端解决方案,但这是一个艰苦而漫长的过程,有时现成的解决方案可以避免您犯下严重的错误。 请记住,多人游戏比制作单人游戏要棘手,因此我们建议四处寻找合适的选择。 市场上有很好的构建工具,它们提供不同的价格和功能。 我们来看看一些针对多人游戏的更流行的后端解决方案。

1.游戏火花

GameSparks最近成为新闻,因为亚马逊决定以1000万美元的价格将其收购,但开发人员可能更了解它,因为它是成功获得成功的Lara Croft:Relic Run的引擎。 这是一个基于云的平台,用于构建游戏服务器端功能,然后在启动后对其进行管理。 GameSparks为开发人员提供了一个集成的工具来构建服务器组件,而无需设置和运行服务器。 这是构建任何基于回合或实时移动多人游戏的理想选择。

我们认为所有脚本都用javascript编写并具有将数据保存到云的能力很酷。 服务器交互很容易:您将消息发送到服务器,就会触发相应的脚本,读取信息,进行更改并返回结果。 此外,脚本可以将消息发送给任何其他用户。 一切看起来都很简单。 它与Unity3D等其他引擎完美配合。

复杂的婚介是另一个很棒的功能,能够自定义或使用内置的婚介。 对于实时多人游戏,您可以创建单独的房间,这些房间在服务器端不断旋转,服务器将始终知道谁在线。 也总是可以看到谁离开了游戏。 如果您失去连接,则将缓存每个请求,并且在重新连接后,客户端会将请求发送出去,以使其自身同步。

对于那些现金短缺的人,GameSparks是一个不错的选择,因为如果MAU(每月活跃用户)不超过100,000个用户,则您无需支付任何费用。 另一方面,GameSparks承诺不向独立开发者收费,但在某些情况下并非如此。

2. PlayFab

PlayFab是一种专门针对实况游戏而构建的平台即服务,具有玩家帐户,虚拟商品和真钱电子商务,分析,排行榜,游戏内消息传递等。 PlayFab SDK可轻松与Unity,Unreal,Xamarin和Cocos集成。 我们的游戏开发实践表明,PlayFab是一项用户友好的服务,具有良好的存储能力
实施用户数据,清单和字符; 存储云数据,排行榜,具有连接各种服务的能力,并具有创建商店和本币的良好系统。 PlayFab还具有触发器和事件系统,以在后端部分自动执行操作,但是在一定时间内,使用的API命令的数量受到一些严格的限制。 还要强调的是,氏族和行会的实施情况很差,但对商店来说可能是好的。

3.光子

光子已经存在了一段时间,这就是为什么它被认为是最可靠的。 有充分的理由,光子是最受欢迎的网络解决方案。 它具有超级易用性,并提供易于安装的即用型多人游戏。 云上内置了负载均衡功能,可提高会议室实例的效率。 Photon相对容易建立,并且团队在您的开发的第一阶段为您提供了很大的帮助。

即使Photon是方便的工具,它也有一些缺点。 一些开发人员已经表示,与DarkRift之类的解决方案相比,Photon的二进制协议效率很低。 当然,这为开发人员提供了简单可靠的RPC,但代价是滞后和高带宽。 Photon Cloud服务器不允许自定义服务器逻辑。 有时候这对于制作游戏是不切实际的。 运行定制逻辑的唯一方法是修改服务器SDK并自己托管服务器。 定价也可能是一个问题。 开发人员必须支付3500美元才能拥有许多成功游戏所需的500CCU。

4. Firebase

Firebase是Google提供的另一个有趣的选项,可提供配对服务,类似于Photon的服务。 Firebase实时数据库允许您直接从客户端代码安全访问数据库,从而使您可以构建应用程序。 数据保留在本地,即使脱机,实时事件也继续触发。 设备重新建立连接后,实时数据库会将本地数据更改与客户端脱机时发生的远程更新同步,自动合并所有冲突。 当数据库中发生某些更改时,将立即触发设备端的响应。
一些专家确实注意到了一些缺点。 例如,他们说,如果数据库模型由大量嵌套对象组成,则解决方案的工作速度会很慢。 还需要注意的是,Firebase不能很好地过滤数据,这意味着您只能基于一种条件进行查询。 另一个问题可能是Firebase没有任何角色。 所有通过身份验证的帐户仅由电子邮件,密码和通用标识符确定。 但是可以使用数据库分配角色。

5. App Engine

Google App Engine在Google Cloud Platform上提供了高度可扩展且可靠的游戏实施,该实施使用Google App Engine和Google Compute Engine进行实时玩家互动。 该解决方案支持核心游戏元素,例如使用App Engine进行比赛配对和玩家自定义,同时使用Compute Engine运行专用游戏服务器和普通游戏引擎。 该平台显然值得关注,因为它支持云保存和分析。 该插件(适用于Unity)包括Google+中的用户授权,使用玩家成绩和排名的功能,实时存储和逐步模式下的Google云数据存储以及多人组织。 在该插件中,有4种多人游戏操作模式:创建一个具有随机玩家的房间(快速游戏),创建具有邀请屏幕的房间(允许您邀请Google+圈子中的朋友),查看邀请(让您查看哪些朋友在Google+上想邀请您加入游戏)和按ID邀请。

还有一些缺点。 当游戏最小化时,玩家会与房间断开连接,对于某些应用程序,这可能是个问题。 此外,该引擎是市场上最昂贵的引擎之一。

选择什么?

您的选择完全取决于您要实现的目标。 仔细考虑该项目,并确保您选择的解决方案符合您的游戏期望,因此您最终不会在其他引擎上浪费金钱和时间。 并非每个解决方案都是通用的。 例如,如果您要使用氏族系统开发多人游戏,而玩家需要互相聊天和互动,则Playfab并不是最佳选择,但这是建立可靠的库存和商店的非常合适的选择。 Melior Games花了很多时间精心定制每个解决方案,我们敦促您做同样的事情。 在考虑最适合自己需求的服务时,您可能会感到沮丧,但精心选择的现成后端解决方案可能更便宜,更可靠。