IOS Game center создание матчей
Я работаю над пошаговой игрой с игровым центром. Я терпеливо исследовал следующую проблему, но я надеюсь, что кто-то найдет решение.
Я начинаю игру с автоматическим соответствием с определенной картой, я хотел бы подключиться только к тем игрокам, которые выбрали ту же карту для игры. Есть ли способ ограничить это?
Спасибо.
1 ответ
На самом деле решение моей проблемы было очень легким, просто нужно было немного больше читать. Когда создается запрос на совпадение, свойство playerGroup может быть настроено так, чтобы ограничивать только игроков из группы для подключения к игрокам из той же группы.
Но похоже, что установка этого свойства, когда при приглашении друга не работает, работает только при автоматическом сопоставлении. Так что, если кто-то планирует это сделать, вы должны найти способ обойти это.
GKMatchRequest *request = [[GKMatchRequest alloc] init];
request.minPlayers = 2;
request.maxPlayers = 4;
request.playerGroup = MyMap_Forest | MyRulesCaptureTheFlag;
Если ваша игра устанавливает свойство playerGroup, Game Center автоматически сопоставляет только тех игроков, чьи запросы имеют одинаковое значение playerGroup. Значение группы игроков является произвольным. Например, вы можете определить другие значения playerGroup для реализации любого из следующих фильтров:
Игра может ограничивать игроков в зависимости от уровня квалификации. Игра, которая предоставляет несколько режимов игры, могла бы использовать ее для фильтрации игроков в конкретной игре, в которую они хотят играть. Игра, которая предоставляет бонусный контент посредством покупки в приложении, может сопоставить игроков, которые владеют одинаковым контентом, друг с другом.
Если для playerGroup задано значение 0 или нет, это означает, что для этого матча нет группы игроков, поэтому любой может подключиться к любому.