Chapter 1: Getting Started with Game Kit and Game Center
Game Kit and Game Center a History Game Center Benefits and Marketing Game Kit: An Overview
Sample Game: UFOs
UFOs: Examining the Source Code
Getting Started with iTunes Connect
Chapter 2: Game Center: Setting Up and Getting Started
Game Center from the user perspective
Testing for Game Center
Authenticating with Game Center
The Sandbox
Watching for Status Changes
Working with GKLocalPlayer
Retrieving a Friends List
Friend List Avatars
Working with Players
Chapter 3: Leaderboards
Why a Leaderboard?
An Overview of Leaderboards in Game Center
Configuring a Leaderboard in iTunes Connect
Posting a Score
Setting a Default Leaderboard
Adding Score Posting to UFOs
Handling Failures When Submitting a Score
Presenting a Leaderboard
Customizing the Leaderboard
Mapping a Player ID
Local Player Score
A Better Approach
Chapter 4: Achievements
Why Achievements?
An Overview of Achievements in Game Center
Configuring Achievements in iTunes Connect
Resetting Achievements
Adding Achievement Hooks
Chapter 5: Matchmaking and Invitations
Why Add Matchmaking and Invitations to Your App?
Common Matchmaking Scenarios
Creating a New Match Request
Presenting Match GUI
Handling Incoming Invitations
Auto-Matching
Matching Programmatically
Adding a Player to a Match
iOS 5
Reinvites
Player Groups
Player Attributes
Player Activity
Using Your Own Server (Hosted Matches)
Chapter 6: The Peer Picker
Benefits of the Peer Picker
Real-World Examples
Working with Sessions
Presenting a Peer Picker
Advanced GKSession Interaction
The Peer Picker Delegate
Summary
Chapter 7: Network Design Overview
Three Types of Networks
Less Common Networks
Reliable Data vs. Unreliable Data
Sending Only What Is Needed
Prediction and Extrapolation
Formatting Messages
Preventing Cheating and Preventing Timeout-Related Disconnections
What to Do When All Else Fails
Chapter 8: Exchanging Data
Modifying a Single-Player Game
Setting Up Our Engine for Multiplayer
Putting Everything Together
Disconnections
Chapter 9: Turned-Based Gaming with Game Center
A New Sample Project
GKTurnedBasedMatchmakerViewController
Starting a New Game
Making the First Move
Continuing a Game in Progress
Ending a Match
Quitting and Forfeiting
Programmatic Matches
GKTurnBasedEventHandler
Chapter 10: Voice Chat
Voice Chat for Game Center
Voice Chat for Game Kit
Putting It Together
Chapter 11: In-App Purchase with StoreKit
Setting Up Your App in iTunes Connect
Adding Products to Your App
Purchasing a Product
Subscriptions and Renewals
Test Accounts and Testing Purchases
Submitting a Purchase GUI Screenshot
Developer Approval
Receipts
Tying Everything Together in UFOs
Kyle Richter started writing code in the early 90's on the Commodore 64, and soon after progressed to a Mac SE. Since then he has been dedicated to working exclusively with Apple products. Kyle is currently the CEO of MartianCraft LLC a custom mobile software development shop. Kyle has been running software development companies since 2004. His company was behind the release of the first iOS trivia game, as well as the first mobile game to support true non-local multiplayer. His companies have been named to the Inc 5000 fastest growing companies in the world on three separate occasions. Kyle has worked on notable project for some of the largest brands in the world. He is also a frequent speaker on software development and entrepreneurship speaking at more than two hundred events across the globe. In his spare time he enjoys traveling, backcountry hiking, scuba diving, and cooking. He can be found on twitter @kylerichter.
Beau Bolle has been tinkering with technology as long as he can remember and has over 20 years of professional software development experience. He’s worked on a wide variety of clients from startups to Fortune 500 companies on an even wider variety of projects including audio tools; social media apps; e-commerce, bug tracking, source control, and CRM systems; and enterprise apps. As CTO of MartianCraft, he is dedicated to creating an environment that fosters creativity and enables people to do their best work. In his free time, Beau enjoys traveling, camping, and hiking. He’s an avid tabletop gamer and has recently taken up leatherworking.
Create fun and polished games and gamify your apps with GameKit and Game Center. This fully updated new edition of Kyle Richter’s classic can help you reach new customers through social integrations, multiplayer, and achievements. Quickly add a level of polish to your apps that used to take weeks of hard work and late nights.
Implementing a leaderboard and achievement system has never been so simple! Gone are the days of writing and maintaining your own server. You'll also see how to easily add advanced networking concepts like VoIP support in hours, not days. Game Center is heavily pushed and promoted by Apple. By adding Game Center into your game, not only do you gain access to polished and professional features but your app will see a boost in downloads and sharing.
Expeditiously implement a plethora of advanced social networking concepts into your apps. Create custom Game Center Manager classes that can be rapidly deployed into any of your new or existing projects. And jump right over pitfalls commonly encountered by new and experienced Game Center developers. Become a Game Center development champ!
You will:
Build a reusable Game Center manager class that can be quickly used in future projects
Integrate Game Kit and Game Center leaderboards and Achievements into your project
Add real time and turned based multiplayer functionality to your game