Follow Patrick McCarron on Twitter View Patrick McCarron's LinkedIn profile View Patrick McCarron's Flickr Photo Album View Patrick McCarron's Facebook profile

My Portfolio

Ask me a question

Archive

RSS

Patrick McCarron's
Infinite Shamrock

 

March 29
2012

Words Play: Reflections on Game Center’s Turn Based APIs

When we at Stand Alone set out to create Words Play we wanted to create a word game with a better user experience than what was out there on iOS already. We wanted it to be faster, more responsive and tailored to iOS as well. Then we added unique features to set us apart like word lookup, turn history, pass and play, achievements and AI play. We felt we could make what we felt was a great well rounded turn by turn word game, and I think we got pretty close to that goal with our latest update that came out this past week where we added a multiplayer chat feature as well as cleaning up the application UX a bit.

Another advantage of being on iOS was Words Play could take advantage of iOS 5’s newest Game Center Turn by Turn APIs. Using these APIs it affords us a game that could be run without needing to run a costly server infrastructure to handle the matchmaking and turn by turn handling. The turn by turn API and its backing server architecture is a nice benefit Apple provides developers of their platform that most other platforms do not even begin to offer. Running a server can be difficult and very costly, and we were happy to see Apple attempt to fill this need with a popular genre of games that run on their platform.

While we continued building the app and getting more intimate with the new Turn Based APIs we found it all very lacking. We feel now that it needs some work to really become a full on replacement for running your own services. From strange usability issues, lack of server data analysis tools, or just plain odd architecture decisions. Below you will find a list of our top issues (with linked bug reports) that we discovered over the past six months as well as a brief description on how that impacted our design. If these issues were to be solved it would dramatically improve Game Center for the better.

The purpose of me bringing up these issues is not to bitch and complain, but to inform other developers and hopefully get some attention to these issues. I actually see the value and potential in Game Center and I want to see Apple improve it. I’d love to see it become a killer-feature for the platform instead of what it is today. So we’re hoping that Apple will make strides to improve these issues in both iOS 6 and the upcoming Mac OS Mountain Lion which brings the Mac Game Center support.


Bug: Game Center turn based games can’t programmatically invite
rdar://11144951 - OpenRadar Link

This is a big one, we find it amazing that inviting or rematching players is not supported still. The API to do it is all there, just doesn’t work at all. There are numerous complaints about this on the Apple Developer Forums and my radar is far from the first, yet the problem still exists and that’s really disappointing. So instead of a simple one button press for a rematch the user is forced to perform just shy of 10 taps to setup a rematch. See the image flow below, this could be much better as the bottom half of the image shows.


Enhancement Request: Fix the Game Center Turn Based menu flow
rdar://11144972 - OpenRadar Link

This is a bit related to the previous bug, but still feel both points are important. The overall flow and design of the Game Center screens is hard to use for users. It’s so hard that we’re currently exploring having adding a first timer tutorial on how to use the menus, and that’s not right. Apple can do better.


Enhancement Request: Allow Filter/Sort for Game Center Turn Based Friend Invite List
rdar://11144995 - OpenRadar Link

Once you get to the list of Game Center friends to invite to a game you are presented with a list of all your friends with no clear indication if they have the game you are also playing. The list should be sorted or allow straight filtered out if they don’t have the game you want to play them in.


Enhancement Request: Game Center Turn Based Notifications should show as game in use
rdar://11145004 - OpenRadar Link

This is almost a bug and an enhancement request, it’s a fine line really. When you get turn based notifications they come across as from Game Center, not the game you are playing, but if you have Game Center turned off in Notification Center then you wont get these notifications at all. We see this a lot with players not sure why they aren’t being told it’s their turn if Words Play is enabled in Notification Center.


Bug: Game Center reporting incorrect dates in lastTurnDate
rdar://10660917 - OpenRadar Link

This one is really unfortunate. We found this bug a while ago, and it still isn’t fixed. Basically in the turn data that Game Center sends back and forth between users there is a lastTurnDate. This date is being set by the DEVICE not the server. So because we can’t trust this date to be accurate, because users can change their devices dates, it’s pretty much useless when comparing if a turn is new or not.


Enhancement Request: Game Center Turn Based Analysis Tool
rdar://11145026 - OpenRadar Link

When debugging game issues with customers it’d be super handy to check the server to see what data a user’s game is passing back and forth. There is no way to do this since Apple owns the servers, but they could provide us an interface to that turn data. We’d love them if they created that tool for us!


Enhancement Request: Game Center should be able to Find Social Network Friends
rdar://11145019 - OpenRadar Link

Let people who have linked Twitter find their Twitter friends on Game Center. And if Apple ever adds Facebook support to the OS, allow Facebook as well. Customers don’t understand why our game doesn’t do this because we can’t do this with Game Center as it stands today.


Enhancement Request: Game Center Message/Chat Functionality
rdar://11145031 - OpenRadar Link

Communicating between Game Center users doesn’t exist, but on most game platforms (Xbox Live, PlayStation Network, Steam, etc) there is a way to send your friends messages. This would be great feature to be built into Game Center as well and I’m sure almost all games would rather run this off of Apple’s infrastructure instead of rolling their own, and this would help spread Game Center adoption across games even more so than Turn by Turn.