Песочница Apple Game Center: приглашения игроков работают, но НЕ соответствуют - PullRequest
2 голосов
/ 12 апреля 2011

Я реализовал многопользовательскую игру в своей IOS-игре с использованием стандартного экрана интерфейса организации матчей.Все работает хорошо, если я приглашаю другого игрока в песочницу: другой игрок получает push-уведомление, игра запускается и т. Д., И мы можем насладиться классной многопользовательской сессией.

Проблема в том, когда я пытаюсьиспользовать автоматическое совпадение (без приглашения конкретного друга).Я запускаю игру на 2 устройствах, запускаю один и тот же стандартный экран интерфейса службы знакомств и нажимаю «играть сейчас» на обоих.Затем я жду 5 минут, прежде чем matchmakerViewController завершится с ошибкой: «Запрошенная операция не может быть завершена из-за ошибки связи с сервером»

Означает ли, что автоматическое сопоставление не работает в песочнице?

Спасибо за помощь!

вот мой код:

- (IBAction) hostMatch:(id)sender
{   
    GKMatchRequest *request = [[[GKMatchRequest alloc] init] autorelease];
    request.minPlayers = 2;
    request.maxPlayers = 2;

    GKMatchmakerViewController *mmvc = [[[GKMatchmakerViewController alloc] initWithMatchRequest:request] autorelease];
    mmvc.matchmakerDelegate = self;

    [self presentModalViewController:mmvc animated:YES];        
}

Ответы [ 2 ]

2 голосов
/ 12 июля 2011

У меня есть исправление проблемы с приглашением в игровой центр.Поэтому выполните следующие действия: -
1 - убедитесь, что в настройках аккаунта включены ваши push-уведомления, а в настройках учетной записи игрового центра включены приглашения друзей.
2 - установите последнюю версию игры Fruit Ninja
3-откройте игровой центр и войдите в систему, затем поместите его в фоновом режиме
3-открытый фруктовый ниндзя непосредственно перейдите в новую игру => многопользовательский режим => gamecenter
4 - теперь вы увидите два варианта (пригласить друга и сыграть сейчас наверхний правый угол)
5 - нажмите кнопку «Играть сейчас», чтобы игровой центр нашел для вас незваную игру.
6- когда игра начнется, и вы сможете увидеть имя вашего незваного друга в правом верхнем углуугол.После того, как игра закончится, перейдите непосредственно к игровому центру в фоновом режиме и в разделе игр и перейдите к фруктовым ниндзя в списке игр.Здесь вы увидите недавно сыгранный вариант.Потрогай это.Здесь вы увидите вверху списка имя игрока (с которым вы играли), коснитесь имени и немедленно отправьте ему запрос на добавление в друзья.
7 - если он примет запрос, перейдите в друзья => (ваш недавно добавленный друг) =>играем вместе (frut ninja) => нажмите play (в верхнем правом углу)
8 - теперь игра откроется, и вы увидите страницу GC, нажмите кнопку приглашения, выберите недавно добавленного друга, а затем отправьте, ожидая егои готов играть.

Теперь ваш gc-идентификатор подтвержден, и вы можете пригласить любого из своих друзей и играть в любую игру (которая поддерживает функцию приглашения).

1 голос
/ 13 апреля 2011

Не уверен, что ваша проблема может быть, не видя код, но автоматическое сопоставление определенно работает в песочнице.Для меня следующее делает трюк:

GKMatchRequest *request = [[[GKMatchRequest alloc] init] autorelease];
request.minPlayers = 2;
request.maxPlayers = 4;
GKMatchmakerViewController *mmvc = [[[GKMatchmakerViewController alloc] initWithMatchRequest:request] autorelease];
mmvc.matchmakerDelegate = self;
[self presentModalViewController:mmvc animated:YES];
...