One of the big challenges with making a big iPhone game is that to do the graphics justice at the caliber expected by gamers these days is hard. There’s just too much data to package the iPhone/Retina iPhone/4 inch iPhone/iPad/Retina iPad assets all together in one bundle.
So for my latest game I’m kicking things up a notch and adding a fairly complex loading screen which will connect to my web server API and download much of the content of the game from there.
There are of course some downsides to doing this. It requires that my web servers have great uptime, and are performant enough to support all the players connecting. The added complexity means more code to maintain and debug.
However it gives a ton of options for tweaking things on players and improving the game without deploying new versions it through the App Store. It opens the door for the opportunity to split test game play options to find what values create more engagement.
If the game code is flexible enough I will be able to download new assets, change prices, run sales and promotions, and add more complex multi-player interaction.
The mobile gaming market is becoming more sophisticated very quickly and the quality required to stand out in the crowd is amazingly high. Developing something that is just OK will be a waste of your time and flop. Being an indie game developer for mobile is now a difficult undertaking.
When the code for the loading screen is done I may make it available as a component for other developers to use in their projects.