findMatch with iOS 具有不同游戏模式的GameCenter

findMatch with iOS GameCenter with different game modes

我正在开发一款有六个 "game modes" 的游戏。这意味着,在玩游戏时,会针对游戏的玩法制定不同的规则。所有游戏模式均适用于多人游戏。

例如,

一种模式是 2 名玩家之间的计时比赛。

另一种模式不定时;相反,您正在尝试通过一定数量的移动获得最高分。

我们称它们为 "Time Battle" 和 "Move Battle"

我的问题是这样的。我使用游戏中心为多人游戏设置了游戏。我现在可以使用

找到匹配项
- (void)findMatchWithMinPlayers:(int)minPlayers maxPlayers:(int)maxPlayers viewController:(UIViewController *)viewController delegate:(id<GameKitHelperDelegate>)delegate;

但是我将如何根据玩家想要玩的游戏模式来搜索和匹配玩家?有没有办法添加另一个参数,这样如果玩家选择 "Time Battle" 它将匹配 him/her 到其他寻找 "Time Battle"?

的人

查看 GKMatchRequest 文档,特别是 playerGroup 实例 属性 “如果您的游戏设置了 playerGroup 属性,只有请求共享相同 playerGroup 值的玩家才会被 Game Center 自动匹配。将 playerGroup 属性 设置为 0 允许将玩家匹配到任何等待的比赛中。将 playerGroup 属性 设置为非零数字,以仅将玩家与匹配请求共享相同玩家组编号的玩家匹配。玩家组的值是任意的。例如,您可以定义不同的 playerGroup 值来实现以下任何过滤器: - 游戏可以根据技能水平限制玩家。 - 等等。”