Digging around in iPhone IPA
The Payload folder contains the actual program and more interestingly its resources. To look at it you'll have to right click and ask to Show Package Contents. You should copy all the contents and put them into a new folder on your desktop so that you can easily sort and work with them.
At this point you'll be able to see all the goodies inside the IPA. In this case I'm looking at Pocket God v10. What can I see? Well, it has about 2MB in graphics. The graphics are contained within two very large atlas files. Most developers do not go to the effort of creating atlas files, not even KP funded ngmoco.
There are 26MB of audio in 75 files. Five of those files contain 22.2MB in music. This is an interesting discovery since playing the game I don't think all of the music is used. They aren't compressing the audio either these are just plain little-endian CAF files. These two things give us part of the story about why the version 10 Pocket God is about 25MB compressed in the store. At that size, the download is over the 10MB mobile download limit and is probably loosing impulse buyers to the CBS NCAA application. (And March Madness?)
The PNG images you see in any IPA are not in the usual format. There are in a proprietary format that is optimized for the graphics hardware on the device. A conversion tool such as iPhonePNG will have to be used to convert them into something you can use with a normal PNG viewer. As of this writing the PNG conversion tools are not compatible with the large PNG files found in applications like Pocket God.
Finally, the last interesting tidbit looking into this IPA is the use of XML to script the animations and sounds. This is the first application I've seen taking this approach. It emphasizes BoltCreative's background in scripted languages and suggests the potential for the BoltCreative game engine to quickly and easily support products beyond Pocket God.
Labels: iphone developer