In our multiplayer game prototype, we experience a ping of 300 ms (at best) when using Game Center and GKMatch to send data between players, over the GKMatch.SendDataMode.unreliable channel. This latency is not suitable for a real-time game.
When we tested alternative services like Unity's Relay under identical conditions (location, devices, and Wi-Fi), we achieved a ping of 120 ms.
Is a ping value of 300 ms typical when using Game Center?
I can think of possible reasons in case it's not typical, but I can't be sure:
Is there a different behavior (servers relaying peer-to-peer connections) when the game is not yet released on the store?
We're in Europe, maybe this is normal in Europe and better in US?
Selecting any option will automatically load the page