You see a form of this question in almost every high profile game's review: why doesn't this have iCloud support? Apple's remote storage service is a tremendous offering that lets us resume any supported game from any connected Apple device. During our commutes, we can bang out a couple of minutes in Infinity Blade 2 on our iPhones. Later, at home, we can finish the section we were exploring on our iPads. When the service works, it's awesome, but we don't see a lot of games using it. It's a surprise when one does.

We spent a few days asking a small pool of independent game developers why they aren't incorporating iCloud in their latest games. What we discovered isn't surprising: iCloud is always on a good studio's radar, but the pitfalls of indie development keep it there. It's too alien, and maybe even a little too wonky, for cash-strapped and low-bandwidth studios to take a chance on.

I'd Buy That For A Dollar

Time, cash, and bandwidth are the three most important resources to the production of any good game. If there's not enough of one or the other, something goes bad. In the age of $.99 download these resources are even more precious. Their effects on the creation of games are exaggerated to the point where even experimentation on things like iCloud, no matter how easy it might be to implement, becomes a liability. Vlambeer says it couldn't commit time and resources to iCloud with Super Crate Box because it didn't have the time or cash to spare.

"We think iCloud is a great technology and we can totally see why Apple is pushing it," Vlambeer's Rami Ismail tells TouchArcade via e-mail. "The thing is that while from the user side it's an easy thing to set up, as developers it's a new thing that we have to consider, learn to use, and then apply."

Super Crate Box is the first game Vlambeer has made for iPhone and iPad, so that put an unusual strain on the studio. By the time iCloud support could become an actual bit of functionality as opposed to just a desire, Vlambeer had decided its time would be better spent on tweaking the game's controls.

Ismail tells us about another wrinkle: now that Super Crate Box is out in the wild and its users have multiple saves across devices, there's a worry that throwing in iCloud at this point could cause something horrible to happen, like loss of progress or even high scores. It's happened before with other games.

Zombieville 2, for example, launched and included the service when it was new. Creator Mika Mobile learned something in the process: iCloud has a hard time when both local data and cloud data are in the picture. If it pulls the wrong set, it could potentially corrupt a save.

This sort of problem has branching consequences. If Vlambeer has to fix a broken Super Crate Box, that's a month spent on a finished game when it could be working on something else, draining resources that it just doesn't have. Ismail breaks down how close to the edge Vlambeer was when it started on Super Crate Box and explains why this informed its decision to not include iCloud.

"Like with basically everything in life, money is a consideration when making games," Ismail said. "Consider the following: Super Crate Box had five people working on it -- the two at us at Vlambeer and two guys at Halfbot. Since we felt the people that made the original art and music deserved a bonus for their work on the original, we decided to pay them out a little holiday money as well."

"We pay ourselves far below minimum wages because we hardly have any real-life costs at this point. However, the Halfbot guys both have families to support. Multiply the costs of two families and two students by the amount of months it took us to make the game. Then add a few thousand dollars for art and music -- AND then add the Apple developer license, iPads, iCades and all other stuff we used to test the game on... the costs simply start adding up and up." Ismail estimates that Super Crate Box on iOS cost his studio around $15,000.

"The shorter a project is and the fewer people work on it, the lower your costs are and the easier it is to create risky projects. This is essentially why a lot of indie studios remain small -- we want to make games we love to make and honestly, if we could avoid all business and just do that without any worries, we'd be doing that. However, there's always the economic realities, so we have to consider all that as well. In the end, we love making games, but we want to be able to keep making games."

"During development, at some point, you run out of time or money -- whatever you want to call it. If things went well, that's a point at which most improvements you could make to the core game make barely have any noticeable effect. With Super Crate Box, we chose to spend a lot of time on such tiny improvements, especially to the controls. Burning through spare money from our release of Serious Sam: The Random Encounter, we just kept going until the gameplay in Super Crate Box iOS was the best we could make it."

"That turned out to be six months later. Basically we found ourselves running out of everything. At that point, we considered adding iCloud, but obviously that was too late to do that. If we wanted to do that, we'd end up figuring out how to add it, where to add it to the code, how to make sure we don't damage player save games or even delete some save games -- basically, it'd add an additional month to development."

Ismael said at this point Vlambeer had two options: it could either gamble by adding content and support that might or might not work or require additional resources, or it could release a good game. "When we have to choose, we always go with releasing a fun and solid game. We'll usually pick a few technologies that we feel would benefit the game most, so in Super Crate Box's case that was Game Center, OpenFeint and iCade support." Vlambeer says it'll always pick the latter when it comes down to quality versus any form of external support.

End Of The Day

Other studios that we talked to for this story, including Simogo and Uppercut games, told us that their latest projects didn't launch with iCloud support because of similar reasons. Vlambeer isn't the only studio on the App Store deciding to hold out on iCloud support in an effort to stay nimble and put out the best game that it possibly can within a sustainable timeframe.

It's also obvious to us that iCloud and the implementation of it needs to be easier, and the service itself needs to be more reliable. Almost every studio we talked to had some trepidations or a horror story to share. Browse our message board, and you'll find even more from users receiving the bad end of an iCloud problem.

That's not to say iCloud isn't awesome. It is. Games that use it, like Infinity Blade 2, are better for the implementation. iCloud could also be used for stuff beyond saves, so there's promise of what's to come. We simply want to see more of it.

Studios like Vlambeer and most others know that you take gaming as seriously as they do, so iCloud support isn't ever going to just get thrown into the mix. Solid implementation takes time and money to pull off, though, and these are finite resources. Studios may want to roll in the support, but until they can afford to do it, iCloud will continue to be a staple of the cutting room floor.

  • http://www.jeffkibuule.com Jeff Kibuule

    It's probably safer and easier to use Dropbox with an encrypted file as a backing store since its multi-platform and probably a lot easier to deal with. As a developer, I wouldn't want to use iCloud because it means having to learn about other cloud systems if I ever wanted to support Android, Windows Phone, or Windows 8. that and iCloud is apparently very buggy whereas Dropbox has been rock solid for years.

    • Obsidian71

      It's clear that you don't have a clue about iCloud and Dropbox for that matter.  iCloud is not buggy I'm already using it with Welder and other games just fine.  

      • http://www.jeffkibuule.com Jeff Kibuule

        Yay, personal attacks!

      • Obsidian71

        "Is there any other kind?" 

        A Few Good Men 

  • TomCrown

    At the end of the day the more user freindly the product is the more you will sell of it, look at Apple for an example. There are a bunch of games that I don't play anymore or very rarely now that I have both an iPad and iPhone because they don't sync across devices which is hugely annoying and I'm starting to not buy games based on that.

  • TomCrown

    As an iOS developer you would be smarter to use iCloud instead of a third party solution that could be blocked by Apple as the Dropbox API currently is for what ever reason.

    • Obsidian71

      Developers that have the time and resource should likely try both and see what helps.  The assumption is that Dropbox will make everything work but I know of a financial app developer that enabled Dropbox sync and struggled.  I'm guessing it's mainly about data and how it's managed that determines the proper sync technology. 

      iCloud could use more developer documentation is what I'm reading from a lot of devs.  Hopefully Mountain Lion ups the ante on API documentation and more.  

  • moo yu

    I just added iCloud to my game in about 4 hours. Reading Noel Llopis's blog post about it was a huge help. http://gamesfromwithin.com/icloud-demystified It can definitely be a pretty difficult task if you have a complicated save game. Specifically, handling the case when someone plays the game offline on two different devices and then try to sync them is pretty difficult. You either need to present a dialog to choose which version they want to progress with, which destroys the illusion of magic of iCloud or you have to choose the "best" save game which may result in lost progress. Luckily, numbers only go up in my game so you can just take the maximum of each value in the save games.

  • Thomas Visser

    I really enjoyed adding iCloud functionality to my game and didn't think it was really that hard. And making it so that progress and highscores don't get lost when you are playing on multiple devices is possible and was cool challenge. Besides that you'll have to make sure it works perfectly fine without iCloud. I'd love to see more games support it.

  • Gagapokerface

    $15,000 to make Super Crate Box? That's pretty impressive. I hope they've at least earned that back by now.

  • http://twitter.com/ileff Ian Leff

    In my game (Poker Swap) I sync to the highest score just by reading it from Gamecenter. That is easy and better than nothing.

  • http://twitter.com/Inaba_kun Inaba-kun

    It's really too bad so few devs are implementing it, as it's a great feature, so great in fact, it's sometimes enough to stop me buying a game if it's missing.

  • DanielMartinsNovais

    Well... I don't want to be a jerk, but I think I'm calling bullshit on this one. I don't see myself as a great (or even good) programmer and I implemented it in J-Werewolf (http://itunes.apple.com/us/app/mystery-japanese-werewolf/id480590556?ls=1&mt=8) in just a day. The documentation is horrible, but it wasn't that hard. So far, no complains. And the great thing is that, since I got it out of the way, my next game will support it day 1.

    • ndre

      what about the offline-play-on-two-devices-and-then-sync issue? Do you use some metric to determine the "best" saved game and sync that one? Kudos for the great game btw! (I'm playing it on iPad only so I did not had a chance to test the iCloud support).

      • DanielMartinsNovais

        Thank you so much for the kind words on J-Werewolf, ndre!

        I'm thinking that maybe it was easier for me since the game uses multiple save files and the user knows what he's getting into when he choses the iCloud slot. I'll admit that.

        J-Werewolf ALWAYS uses the last save. And there's no decision from me here, this is what iCloud does on the background. If you play the game offline and iCloud is enabled, as soon as that device is online it syncs the file to the server. I guess most people don't know about this. The only real issue for me would be if you were playing in two offline devices at the same time... but you can always compare both files and decide what's best for your game.

        Again, thanks! : )

      • ndre

        So, you have to admit that it is a sort of compromise. Users could lose progress if they don't take enough care, and this goes a little against the seamless and flawless experience that you'd expect from a service like this. Your mixed solution with "local" and "cloud" save spots makes a lot of sense to me, but still, I believe that what other devs really mean when they say that it is "hard" to use iCloud is that they would like to be able to manage and have full control even on the rare edge cases that you are somewhat leaving to the user's common sense. I don't think that either of the two approaches is universally the right one, it sorts of reflect the way that a dev wants its app to be, it's probably more a "philosophical" than a technical issue.   

      • DanielMartinsNovais

        I understand and agree with every point you make. But I think we should always go with giving the user the option instead of using some really weird situation as an excuse to not support some new tech. And I have to stress that absolutely no player has complained about iCloud making them lose progress so far, and this absolutely didn't happen to me as well.

        If you want to break the system, you are able to do it. But only if you want to.

        In my case, you would see a save slot marked with iCloud and "new game" text. You can click on it before it downloaded the save from iCloud and the first time it would save, you could lose the progress you already made on a previous device.

        But would you really do it knowing that you already started the game on that slot?

        I think this will always be my strategy. Save slots with iCloud enabled or not! : )

    • http://twitter.com/ChaoticBox Frank Condello

      Implementation isn't difficult, but edge-case testing and reliability can be huge problems. iCloud fails to sync my Safari bookmarks half the time, which leaves me with very little faith. I adopted Game Center early and that turned out to be a big mistake in terms of wasted dev time and support. Maybe Apple will nail down iCloud in iOS 6...

      • DanielMartinsNovais

        I understand you. I thought iCloud would help push the sales and of course I was wrong. But I think it's great to support these features and be familiar with them as soon as possible. J-Werewolf didn't have the features it has now (iCloud, iCade), but I'm really, really happy my next game will have everything at launch.

        As for the Safari thing... never happened to me. Seriously!

        Ah, just to be clear... I think iCloud is much easier to implement than some of devs are saying (specially since I'm a one man band), but I had a really crap day doing it and I think it could be much easier. I hope it gets better on iOS6 as well. : )

      • Adams Immersive

        I do find Safari bookmarks oddly unreliable in iCloud! Everything else has gone great (and I haven’t lost any bookmarks) but sometimes I have to force Reading List in particular to update—by adding something and deleting it. Only my iPhone 4 has this issue; not my Mac or my iPad 2.

  • http://twitter.com/RobotsVsWizards James

    We launched it with Paper Monsters and it did take a couple days but nothing to tough. To me the biggest issue is just performance. On a device where every tidbit of memory needs to be maximized it's a tough call rather it's worth the performance hit.  
    Especially if you are making a 3d game where you gotta maximize every little pixel.We would have been able to get a little better fps if we left it out.

    With an asynchronous system you never know if it's gonna connect to the server right when you are in the middle of a boss fight when you need the twitch performance.

    Just my thoughts but, overall it is a pretty sweet system to have access too

    • DanielMartinsNovais

      I didn't have much trouble on a 2D engine, but I get what you're saying. Game Center got me in trouble a few times for the same reason... even on a low priority thread.

  • http://twitter.com/Num__T Jonathan Westlake

    Kudos to all the gamedevs posting in here. Keep up the good work!

  • swarmster

    First of all, thanks to Touch Arcade for writing about this. I've been surprised by how little attention iCloud (or, the lack thereof) has received, and think its always a good idea to keep asking why our devices are getting short-changed.

    As easy as Apple made it, I guess it's not hugely surprising it hasnt seen greater pick-up. Especially when the focus is time/money and not just making the best game possible, devs will always be reluctant to change. It sounds like support just isn't a priority for most devs right now, and the only way to change that is to continue not buying games that don't support it, and continue letting them know it's desired.

    Just like most people re-use save creation and file access code now, it just takes writing once. Hopefully one day even the most stubborn will update their libraries and Apple's platform can continue to move forward.

  • swarmster

    I've never understood the whole 'sync paradox' argument. Think about how someone might get into that situation. They've played on one non-connected device, and then, without caring about the progress they just made, picked up another device and played the same levels over again. Why not just sync to the most recent one, since the one they didn't care about they, well, didn't care about? How would that be worse than isolating the progress on each device forever?

    Even more confusing is the argument for games like Super Crate Box. Your only assets are high scores and unlocks. Here's a hint: if the device has a score higher than the iCloud score, update the iCloud score. If the device has an unlock the iCloud doesn't, update the iCloud unlocks. If not, do the reverse. You don't have to think about time or status at all.

    • DanielMartinsNovais

      Sooooo true! In so many levels!

    • http://twitter.com/mugathur moo yu

      From my experience, it's not so simple. Imagine you had a relatively complicated game and you played on offline on one device for about an hour. Then you started playing on another device for 10 minutes before you realize your save game hasn't synced. It could be as simple as your high score in some other level wasn't updated. Now that's the "newest" save game, but not necessarily the one you want. Even worse, what if iCloud just happened to be a little slow that day and you played for 10 minutes before it synced up. I think most cases are solvable, but I definitely wouldn't say it's always trivial, especially on a budget like Super Crate Box's. 

      I think the really worrying case is with currency. Let's say I have 1000 coins and I buy a purple hat on one device and a sword of monkey dancing on another device each for 1000 coins. It would be very difficult to write an algorithm that replaces the human psychology of "which one do I really want."

      These are slightly contrived cases, but there are similar looking real case. As I said, my app has none of them. I just take the highest value for each thing. Super Crate Box could have probably done a similar thing. If they're interested, I'd be more than happy to send them some code. But not all cases are so simple.

  • Adams Immersive

    The points made sound valid, yet you could make them about ANY game feature—and some small devs are doing fine with iCloud.

    The shorter answer may be: small devs (or ANY devs) can’t do everything under the sun in every game. Some ideas and features have to be set aside, and sometimes iCloud is one of them. And like any new feature, it’s a lot easier for a brand new game than retrofitting an existing one.

  • Taerdin

    Yes... trust all your information to the cloud.

    What could go wrong?

    http://www.youtube.com/watch?v=8cp_uwr-7lY

  • http://twitter.com/Inaba_kun Inaba-kun

    One thing that stood out to me in this article - if devs are spending their valuable time implementing junk like Open Feint, instead of iCloud snyc, they need a slap.

    • ndre

      Open Feint integration is more straightforward and with less potential side effects, I think it doesn't really subtract significant time. Plus, it may provide additional exposure thanks to the "free game of the day" site that features openfeint-powered games, and in times like these when even good games may pass unnoticed, exposure is crucial.

      • DanielMartinsNovais

        This is the first time someone says something that makes sense to me about Open Feint. Didn't know about Open Feint free game of the day!

      • araczynski

        now i know why i see devs implement that service and make me see that crappy openfeint prompt in every other game....

  • http://twitter.com/WickedlyTapping Wicked Games

    It's a little more in the weeds than just using it or not. There are two different API's for iCloud, a simple prefs-like system and a doc-based system, and one of the issues I've run into is that if you have a large amount of data to save, you can easily exceed the limit on the prefs-based API, which results in no error thrown, just lost data (it's actually a partial failure, which is almost always worse than not working at all). In this case you must go to the doc-based API, which is more time-consuming to implement in that you must write your data to file and manage parsing it and comparing data values (for things like min/max compared to local versions) yourself. It's not difficult, but certainly more time-consuming than using the simple prefs mechanism. In all cases, you still have issues in which the user has disabled iCloud or exceeded a user-specific data limit, which leads to what appears to be data loss in the game in a way that we as devs cannot inspect or manage, so we can't warn or help players when it happens. It's these scenarios, not the data sync or raw coding itself nor any lack of enthusiasm, that cause some hesitation.

  • araczynski

    i probably don't know what i'm talking about, but that's not going to stop me from saying this.... but i thought being 'indie' meant you actually did the work yourself, at the very least the coding work?  how are you indie if you come into the game with $X.XX and farm out the game development? (i can understand the art/audio part)

  • ajvizz

    What annoys me is that Cut the Rope has iCloud support but Cut the Rope: Experiments does not. But I understand other indie developers can't find the time or money to do so. Also does Angry Birds have iCloud support? Because they have no excuse... they have lots of money, all they make is Angry Birds so they have time and they have the resources.