游戏后端

游戏后端由多人在线对战、Client Engine 和排行榜三项服务组成。多人在线对战负责玩家匹配、房间管理与消息同步;Client Engine 在云端运行游戏逻辑;排行榜保存并排列玩家成绩。账户、存档、资源文件以及组队、公会聊天等需求,则由数据存储和即时通讯提供。

多人在线对战

玩家可以随机匹配,也可以按房间属性选择水平相近的对手,或与指定好友进入同一房间。匹配成功后,房间内的消息由服务端实时同步给所有成员。

MasterClient 负责运算游戏逻辑,是房间内具有特殊权限的客户端;断开连接时,服务端会指定其他客户端接替。房间和玩家的自定义属性由服务端维护,游戏状态无需由应用自行广播。

JavaScriptCocos Creator · LayaAir · Egret · 微信小游戏与小程序

C#Unity

Client Engine

MasterClient 运行在玩家设备上时,房间状态对所有玩家可见,胜负结果也由客户端上报。Client Engine 将其托管到服务端,使判定、随机和结果上报均在云端完成,玩家只能获得服务端下发的信息。

这段逻辑使用 Node.js 编写,与对战服务处在同一个网络内,部署后由平台负责运行、日志、监控和扩容。除 MasterClient 外,还可以在这里托管虚拟玩家,或者提供自定义的 REST API。

Node.js

排行榜

成绩更新后自动重新排名。榜单成员可以是内建账户中的用户,也可以是数据存储中的对象;可以查询前 N 名、指定玩家及其相邻名次,也可以限定成员范围形成好友榜。

排名可以按降序或升序排列,成绩可以保留最高值、最新值,或者累加。榜单能按天、周、月自动重置,旧数据归档保留;成绩也可以设成只接受服务端提交,避免客户端伪造。接口包含在数据存储 SDK 中,也可以直接调用 REST API。

JavaScript

C#

Objective-C

Java

价格方案

以中国节点的价格为例。三项服务分开计费,开发版有免费额度,商用版按用量计费,另有企业版需商务洽谈。

多人在线对战

开发版商用版
同时在线人数(CCU)免费,最大支持 20 CCU25 元 / 500 CCU / 天,最大支持 5000 CCU
流量免费 1 GB / 天,超出部分 0.8 元 / GB0.8 元 / GB / 天

排行榜

开发版商用版
请求次数免费 1 万次 / 天2.5 元 / 万次
榜单记录数免费 1 万条,超出部分 0.05 元 / 万条 / 天0.05 元 / 万条 / 天

Client Engine

体验版标准版
计算单元免费 1 计算单元4 元 / 计算单元 / 天
流量免费 1 GB / 付费实例 / 天,超出部分 0.8 元 / GB0.8 元 / GB

更新历史

  1. 排行榜支持给任意对象排名

    榜单成员此前只能是内建账户里的用户,现在扩展到数据存储中任意一张表的对象,以及开发者自行指定唯一标识的业务实体。

    2021 年 8 月更新

  2. Unity 支持排行榜

    Unity 游戏可以直接调用排行榜,无需再通过 REST API。

    2020 年 5 月更新

  3. 推出对战服务的独立部署版本

    规模较大的游戏可以独占一组 GameServer 节点,服务端逻辑改用 Hook 函数编写,与 GameServer 在同一个进程内运行;房间最大人数、消息下发频率和消息体大小的限制也随之取消。

    LeanCloud 2019 回顾

  4. 推出 Client Engine

    MasterClient 可以脱离玩家客户端,托管到服务端运行,判定、随机和结果上报因此不再经过玩家的设备。

    LeanCloud 月刊|国际节点正式独立运行·LeanCloud 2019 回顾

  5. 排行榜只接受可信环境提交的成绩

    成绩更新可以限定为服务端用超级权限提交,从客户端伪造的请求不再放行。

    LeanCloud 月刊|国际节点正式独立运行

  6. 多人在线对战支持白鹭引擎

    继微信开发者工具、Cocos Creator 和 LayaAir 之后,JavaScript SDK 增加了对白鹭引擎(Egret)的支持。

    LeanCloud 月刊|国际节点正式独立运行

  7. 排行榜发布

    成绩更新后自动重新排名,可以查询前 N 名、当前玩家及其相邻名次;榜单按天、周、月自动重置,也可以手动重置。

    LeanCloud 排行榜,提升用户活跃度的新招数

  8. 多人在线对战发布

    服务端提供玩家匹配、房间消息同步和 MasterClient 游戏逻辑,无需开发者自行搭建相应后端。发布时只支持 Unity。

    LeanCloud Play 对战游戏服务正式上线

数据来源

功能介绍与价格参考了 LeanCloud 官网的 游戏解决方案页,以及开发文档中的 多人在线对战Client Engine排行榜 三份功能介绍。

更新历史整理自 LeanCloud Blog 的月度通讯与单独发布的公告。