Game rejected because it "does not connect with another player".

I'm waiting on a response from the resolution center but wanted to ask this question anyway:


My game was rejected because of rule "2.2 - Apps that exhibit bugs will be rejected", specifically, it "does not connect to another player and the activity indicator spins indefinitely". However, I'm using the standard GKMatchmakerViewController to start a match with no custom code whatsoever. Below I included the code I use to present the view controller (it's nothing special) and I've implemented the delegate methods. Also, I'm unable to reproduce this in development or with builds distributed via TestFlight.


Any suggestions? Should I push back on the reviewer or is there somewhere I should start debugging?


    ESMatchRequest *matchRequest = [[ESMatchRequest alloc] init]; // Custom GKMatchRequest class that sets default values
   
    GKMatchmakerViewController *matchmakerViewController = [[GKMatchmakerViewController alloc] initWithMatchRequest:matchRequest];
    matchmakerViewController.matchmakerDelegate = self;
    [self presentViewController:matchmakerViewController animated:animated completion:nil];

I've received feedback from App Review and it appears that inviting a friend causes the GKMatchmakerViewController to never dismiss, while the inviter says "Finding Players..." and the Invitee says "Waiting for players...". However, using the 'Play Now' button of the GKMatchmakerViewController works correctly.


I've attached the screenshots App Review provided from the inviter and invitee. All I can tell is that the inviter is trying to connect 4 players, 1 of which is a friend and the other 2 are auto-matched.


My custom match request is initialized with the following defaults:


- (instancetype)init {
    self = [super init];
    if (self) {
        self.minPlayers = 2;

        NSUInteger peerToPeerMaxPlayers = [[self class] maxPlayersAllowedForMatchOfType:GKMatchTypePeerToPeer];
        self.maxPlayers = MIN(peerToPeerMaxPlayers, ESGameMaxNumberOfPlayers); // ESGameMaxNumberOfPlayers = 5

#if DEBUG
        self.defaultNumberOfPlayers = 2;
#else
        self.defaultNumberOfPlayers = 4;
#endif
    }

    return self;
}


Any suggestions? I'm lost as to what I could have set up incorrectly that would cause the GKMatchmakerViewController to never dismiss. Full disclosure: this is my first attempt at a peer-to-peer game.


Edit: When editing this message my images appear, however, I'm not sure they do once I click save. Inviter: http://imgur.com/bzwRTQj and invitee: http://imgur.com/ksYECGYStill getting used to the new forums.

Hi, Have you found a solution?

I have exactly the same problem (still in development).

It sounds a little like scenario #1 described here: http://oncocoa.blogspot.co.uk/2011/04/game-center-invitation-errors-two.html

Game rejected because it "does not connect with another player".
 
 
Q