Gamekit "chooseBestHostingPlayer" doesn't return same value to all players in the match?

I'm attempting to find the best host player for all the players connected to the game and on SOME occasions the completion handler returns a host player to some players and returns nil to another player indicating no viable host was found (either all connections or very similar or error happened).


I don't understand why some players are receiving different values for the host player? At the moment the method is being called by all players connected to the match, should this only be called by one player once matchmaking is completed and send the results to all players? It is happening about 15% of the time so would like to eliminate this error. The problem is that the application waits for the host to start the game so if one player fails to find the host and he is actually the host player to the other players the game never starts.

Yes I noticed this problem too in iOS9, and I had to stop using it on my products to avoid hunderds of complaints form my customers

I'm noticing more and more troubles with Game Center at every new iOS release, and this is really discouraging espcially if you invested lot of work on your prodcuts, probably for future Games I'll develop I will evaluate to use a different online game platform

Is this something that used to work properly 100% of the time? I am thinking of ordering the players in an array and only the first player in the order looks for the host and then sends the data to the rest of the players. However, I will save myself the trouble if it's only a short-term bug or something.

It used to work in iOS7 and iOS8 from the release of iOS9 it started to give strange results, so I decided to abandon the Apple methods in favour of the player ordering solution, in my case it wasn't very important to detect who was the best connected player so for me this is a viable and definitve solution

I am having this exact same problem!
Even though this reply is 5 years old do you think you could provide some more information on how you fixed this?

Very typical issues with those Apple framework & APIs, had problems for years and no one ever wanted to fix it.... Same here for me, I am guessing most likely not many people are using their GameCenter APIs (except for leaderboard & achievement). All serious developers or companies might already developer their own servers to avoid as much as possible their framework....

Gamekit "chooseBestHostingPlayer" doesn't return same value to all players in the match?
 
 
Q