I’ve completed the 2.0 version of my popular Mission: Minesweeper game and it is now available on the App Store. Please feel free to go check it out, I’ll wait.
The game has been fully updated to a universal application and looks great (if I do say so myself) on the iPhone, iPod Touch and the iPad. In reality, the interface is so different between the iPhone and iPad versions that it is practically two different applications squeezed together into one binary. The iPhone version uses the the typical navigation controller for all of it’s navigation while the iPad version uses popovers instead.
In fact, the iPad version is also using my BAMPopoverBackgroundView which I will be making publicly available soon. It is a subclass of UIPopoverBackgroundView and makes it very simple to change the appearance of your popovers by changing the tintColor or images associated with the popover. I think everyone will be pleased with it.
Of course, I also took the opportunity to include images optimized for retina displays while I was updating it. This was a rather large undertaking since the app was originally written for older iPhones. That means I had to recreate and rerender every single image used for each device. As well as generating over thirty images for use in the new achievements.
Game Center support was also added to the game, which now has three different leaderboards: Beginner, Intermediate and Advanced. Achievements were also added. There are thirty-one achievements in all and I’ll be surprised if anyone ever earns the “Impossible Mission” achievement which requires winning a game by uncovering a cell surrounded by eight other cells. Pretty much an impossible feat of both skill and luck!
On the road to adding Game Center to my app, it occurred to me that most people are using the GameCenterManager from Apple’s GKTapper demo to incorporate Game Center into their apps. It seems to me that it could be improved upon greatly by adding a queue to ensure that achievements are never lost because a phone call interrupted the process or the app was terminated.
Additionally, it would be nice to have the user notifications built into the class, as well, so that by simply adding the class and submitting the achievements, all of the local queueing and user notification tasks would be handled automatically. If people are interested in seeing a future BAMGameCenterManager class, let me know and I’ll see about creating it once I get a bit of free time.
But for now, your mission should you decide to accept it…