在游戏中实现排行榜

本文介绍了排行榜如何为玩家提供一种在游戏中可以执行的特定作与其他玩家进行评分的方法。 有关详细信息,请务必查看文章末尾的 “另请参阅” 部分的页面。

使用 Microsoft Azure PlayFab 服务 SDK 实现排行榜功能

PlayFab 排行榜服务提供了多个用于实现排行榜的有效使用选项。

  1. 下载并设置 Azure PlayFab C SDK:下载适用于平台的 C/C++ SDK,并将提供程序标头和库文件集成到生成中。

  2. 定义排行榜:

    • 使用 PlayFab Game Manager:导航到 PlayFab Game Manager 中的 “排行榜 ”部分。 通过指定唯一的排行榜名称创建新的排行榜。 配置排行榜的排序方法, (升序或降序) 。 (可选)设置排行榜重置计划。 例如,每日、每周或每月。
    • 使用 API 请求:还可以使用 PlayFab SDK APIPlayFab REST API 创建新的排行榜定义。 这包括指定实体类型、排行榜列和版本配置等参数。
  3. 对玩家进行身份验证:必须先使用 Xbox 服务和 PlayFab 对玩家进行身份验证,然后才能在游戏中使用依赖于这些服务的功能。

  4. 更新玩家排行榜统计信息:可通过两种方式更新排行榜统计信息。

    • 使用来自游戏客户端的 PFStatisticsUpdateStatisticsAsync API 调用。 此 API 需要以下信息。
      • 排行榜名称。
      • 要提交的玩家分数。 排行榜支持多列定义,允许向玩家添加多个分数。 最多可以定义五列。
    • 使用来自游戏客户端的 PFLeaderboardsUpdateLeaderboardEntriesAsync API 调用。

    这些调用中的任何一个都会添加或更新指定排行榜上的条目。

  5. 检索排行榜数据:使用来自游戏客户端的 PFLeaderboardsGetLeaderboardAsync API 调用。 此 API 需要以下信息。

    • 排行榜名称。 可选参数:
      • StartPosition:要从中检索数据的排行榜中的起始位置。
      • MaxResultsCount:要检索的排行榜条目的最大数目。

    此 API 返回排行榜条目数组,包括以下内容:

    • 玩家 PlayFab ID
    • 播放器显示名称 ((如果可用))
    • 玩家分数
    • 玩家排名
  6. 检索玩家周围的排行榜 (可选) :使用来自游戏客户端的 PFLeaderboardsGetLeaderboardAroundEntityAsync API 调用。 此 API 需要以下信息。

    • 排行榜名称。 可选参数:
      • MaxResultsCount:要检索的排行榜条目的最大数目。

    此 API 返回以请求玩家为中心的排行榜数据,显示其相对于其他玩家的位置。 有关使用 和 PFLeaderboardsGetLeaderboardAroundEntityAsyncPFLeaderboardsGetLeaderboardAsync的限制列表,请参阅排行榜限制

  7. 在游戏 UI 中显示排行榜信息:分析 或 PFLeaderboardsGetLeaderboardAroundEntityAsync API 调用返回PFLeaderboardsGetLeaderboardAsync的数据。 在游戏中创建用户界面以显示排行榜数据。 以清晰有序的方式显示玩家排名、分数和玩家名称 (或显示) 名称。

另请参阅

PlayFab 开发人员文档是最准确的主要信息来源。 有关其他信息,请参阅以下文章。