Well, it's finally happened. We've submitted to Apple earlier today! Actually, we submitted the other day, but we pulled that build. We had gotten word from one of our Beta Testers that he was suddenly experiencing a bunch of random crashes relating to the OpenFeint functionality that we added to the game. We felt the issue was serious enough to keep looking into the matter to try and figure out what was wrong. The problems were created by the OpenFeint SDK/database, but at the end of the day if a crash occurs, users will blame us, not OF.
For those who are not familiar with OpenFeint, it's a Social Gaming Platform that we're using for online leaderboards and letting players compare each other's progress with one another. For social gaming, it is one of the main players in the iPhone market. And while it touts a large community, the SDK and support are lacking. We lost quite a bit of time during development due to bugs in the SDK, very poor documentation, slowness in getting answers to questions, and an inconsistency in how OF performs across different devices. I literally found myself having to dig through their internal code to try and figure out why things were crashing. When you find yourself doing that at 3 in the morning, you know there is something seriously wrong.
This morning, by pure random luck, our simulator build started to exhibit random crashing. That coupled with the information provided by the Beta Tester with the issue allowed us to put the pieces to this jigsaw puzzle together. We were able to fix this problem. Does this mean we're free of all issues with OF? I highly doubt that. Given what I saw in their SDK and how it behaves, there will probably some other cases that will cause crashes. We just happened to get "lucky" enough to get repeatable conditions to figure out this one.
Lumpy and the 2n crew wants to thank all the Beta Testers for EP3. Without their help and feedback, we couldn't have gotten EP3 out!
A special shout out goes to Devilishly Good! He patiently downloaded the new versions, crash after crash, until we could finally isolate the problem.
Afterwards, Lumpy asked about what all the hassles were that delayed our submission. It's a production after all, so shouldn't things be 100% accounted for? So we explained what the problems were and all the hoops we had to hop through. Looking a bit skeptical, he shook his head and hopped away. Later on, Lumpy's Agent approached us, telling us that upon pondering the issues we had to contend with this round his client said that he felt like he wanted to faint.