Exporting to iOS – Three Things Newbies Panic Over
February 13, 2013
If you own a copy of GameMaker: Studio Professional, chances are you’re into mobile development. Statistically, new developers are more likely to move towards Apple’s mobile platform, iOS, as it is “easier” to sell copies of your software through their online app store, despite the higher entry barriers.
If you are new to iOS development, there is no doubt you’ll run into problems quickly. Fortunately this is all part of the learning process, and the issues you’ll experience have already been solved by developers just like you.
A very common issue developers encounter is codesigning errors when exporting the app. This means the certificates you obtained to digitally sign your software were not able to successfully bind themselves to your IPA. Your app therefore has no identity.
Codesigning is one of the final steps in the process, and it can be frustrating to see an error appear in the console just when you think you’ve successfully compiled it. An incorrectly codesigned IPA is completely useless.
Last year, finding information on how to setup Xcode when exporting with GameMaker: Studio was a difficult task. One important step seemed to be missing: the installation of Command Line Tools. This additional package for Xcode is crucial in successfully exporting your app to IPA format. It can be downloaded for free through Apple.
It was previously suggested that the GameMaker: Studio iOS module would work in harmony with Mac OS X Snow Leopard (version 10.6), but this isn’t true. Installing the latest Xcode with Command Line Tools on Snow Leopard is simply not possible. A copy of Lion or Mountain Lion (which you can cheaply purchase via the Mac app store) is required instead.
The Command Line Tools are the final piece of the puzzle in allowing Studio to correctly prompt codesigning. Make sure your Xcode folder is in the ‘Applications’ directory on your hard drive, and not in the ‘Developer’ folder. Unlike previous versions of the development tool, Xcode is now bundled and self-contained.
Though this issue is far less prominent now that GameMaker: Studio’s iOS runner has improved, having blurry graphics in your game is a common problem. Some newbie developers build their game to the literal resolution of an iPod/iPhone screen. While this isn’t a problem with the latest iPhones, iPods, and iPads which use retina screens, older non-retina devices require graphics that are double the size of the listed resolution.
The screens have lower pixel counts and try to make up for this by ‘faking’ extra pixels. This causes sprites to look stretched. The solution? If you’re making a game for a 1st, 2nd, or 3rd generation iPod, avoid a 480 x 320 resolution and instead opt for 960 x 640. Sure, your game will never look as flash as it will on the sleek screen of an iPhone 4G, but it’ll be looking as good as it can on those old displays.
At this point you have finished your game and you are now uploading it to the app store. All seems to be going well but… wait! Not another last minute error!
“Required file not found directly under the app wrapper: embedded.mobileprovision”
This issue is one you can turn a blind eye to. Its not something you can fix yourself, but you don’t need to anyway. Many, if not all GameMaker users uploading to the app store, have experienced this error up to the publishing of this article. Not one of them has had their app denied because of it. It is a trivial issue that poses no problem to your app being distributed. If it did, it would have been fixed it by now.