匹配

概述

PlayFab 匹配功能提供了一种在游戏中构建匹配的好方法。 它提供了一个简单但功能强大的系统,可帮助用户找到彼此。 此功能升级 PlayFab 已弃用的匹配器,并使用 Xbox 网络上SmartMatch的成熟功能。

此功能标志着首次通过 PlayFab 在 Xbox 生态系统外部提供已建立的 Xbox 网络SmartMatch匹配技术。

当个人或组要参加比赛时,游戏会将请求提交给匹配服务。 发出请求后,服务会保留该请求,并尝试将其与其他请求匹配。 服务随后会创建包含最兼容的玩家的比赛。

术语

匹配系统使用你需要理解的常见术语。 这些术语包括:

  • 票证:票证是匹配过程的核心资源。 票证由要在一起玩游戏的某个玩家或一组玩家及其属性(如游戏内级别、常用地图或技能)组成。
  • 队列:队列是一组要一起匹配的票证和一组控制如何匹配票证的规则。
  • 规则:规则是票证符合匹配条件的约束。 匹配算法会搜索满足队列定义的所有规则的一组票证来创建比赛。
  • 属性:属性是一个与玩家关联的值,可以应用规则。 可以在票证或玩家的 实体对象中指定属性。
  • 匹配:匹配是匹配过程的输出。 它是满足提交票证的队列的所有规则的票证集合。

基本信息

当某个玩家或玩家组要在一起玩游戏时,玩家会为自己或整个组创建票证,并通过游戏将它提交给匹配功能。 加入流程可确保组中的所有玩家都同意一起进行比赛。 玩家加入后,匹配过程将自动开始。 当匹配找到合适的匹配项时,游戏会将匹配的玩家分组到游戏中。

将票证提交到匹配队列。 一个游戏可以有多个队列。 例如,一个游戏可以为排名游戏模式创建一个队列,并为社交游戏模式创建另一个队列。 票证只能与同一队列中的其他票证匹配。 一个玩家一次只能位于一张票证中。

若要定义队列,必须创建队列配置。 最简单的配置由队列名称和比赛规模(最小和最大玩家数)组成。 匹配服务尝试将匹配项填充到指定的最大大小。 如果票证不足,它可以创建最小大小的匹配项。

如果你有不同的游戏模式和不同的匹配大小要求,请创建多个队列配置。 对于更高级的匹配方案,请配置队列规则。

匹配服务当前支持以下规则类型:

  • 字符串相等规则:确保比赛中所有票证中的字符串属性都相同。
  • 差异规则:确保比赛中任意两个票证之间的数字属性绝对差异小于配置的差异。
  • 设置交集规则:对于作为字符串列表的给定属性,确保比赛中的所有票证共享的值的数量至少与配置的值数量一样多。
  • 比赛总数规则:确保比赛中所有玩家的数字属性合计在配置的范围内。
  • 区域选择规则:确保相对于比赛中所有用户的公共数据中心的延迟小于配置的最大值。
  • 团队规模平衡规则:确保比赛中包含的团队包含类似的成员计数。
  • 团队差异规则:确保比赛中包含的团队的特定属性(如技能)在配置的差异内。
  • 团队票证大小相似性规则:强制大群的数量等于团队数量,或者为零。

定义规则以强制实施基本功能,例如使用相同的地图、游戏模式或游戏版本匹配玩家。 更多高级用途允许约束随时间推移而放松,或是在一段时间之后禁用。 这类规则对于基于技能的匹配十分有用。 有关这些选项的更深入文档,请参阅 Game Manager

有关来自游戏客户端或服务的特定流程的详细信息,请参阅下面的文档。

快速入门指南

配置

教程

SDK 和工具