Create experiences that keep players coming back to your game. Add leaderboards, achievements, matchmaking, challenges, and more.
- iOS 3.0+
- macOS 10.8+
- tvOS 9.0+
- watchOS 3.0+
GameKit offers features that you can use to create great social games.
GameKit provides you with the ability to create apps that allow players to interact with each other. Multiplayer apps allow your game to create realtime network matches. Players can invite other players to join their game. Most importantly, players can receive invitations to join a match even when your game is not running. Your game is running on each device and the instances of your game exchange match and voice data with each other. Turn-Based Gaming provides store-and-forward network match infrastructure where the match is played out over a series of discrete turns. This kind of match can be played without requiring all of the players to be connected simultaneously.Starting in iOS 10.0, GameKit provides the ability to create multiplayer and turn-based using
GKGameSession. Game sessions use a player's iCloud account to invite other players to a game, save game data, and transfer data between players. Game sessions fully support the tracking aspects of Game Center. Game Center offers a centralized game service that connects players to each other. Game Center implements many different features:
Achievements provide the ability to track a player’s accomplishments in your game.
Leaderboards allow your game to store and fetch player scores from Game Center.
Challenges allow a player to challenge other players to complete an achievement or to beat a leaderboard score.
Game Center is available on iOS, macOS, and tvOS.
Use the legacy classes to support multiplayer and turn-based gaming in iOS 9.0, macOS 10.11, tvOS 9.0 and earlier. Multiplayer and turn-based apps are not compatible between game sessions and legacy classes. However, after updating an app to use game sessions, players still have access to existing achievements, leaderboards, and challenges after being authenticated as the local player.