Friday 25 April 2014

why am i making games for ios


Someone asked me this yesterday because I was complaining along the way to finishing Helix.
Writing this more for myself to figure out if it still makes sense.

I got into this when I was working on Kompendium; someone suggested the games might work better on a mobile device. I was pretty skeptical at first, partially because I'd never owned a phone or anything and so it would mean buying expensive stuff I couldn't really afford, partially because the games were very much designed around the constraint of each player using just the arrow keys and I didn't know how that would translate to a different control scheme. But I decided to go for it, bought an iPad, the first game I ported over was Glitch Tank which turned out to work amazingly well, better than on a keyboard. So I released that one on its own while I kept working on the others, it didn't sell enough to cover the cost of the device, justifying some of my skepticism - but I was really happy with how it turned out, falsifying the rest.

The other games didn't transfer over anywhere near so well, they felt pretty bad. So I got interested in the problem of how to use a touchscreen well. Touchscreens are really interesting to design for, they have this immediacy to them - you're directly touching the videogame. They're malleable, you can divide up the space however you like, invent new button configurations and change them on the fly, adjust to accommodate different numbers of players. They constrain you in that all controls take up screen space, but I feel that's the right kind of constraint, forcing elegance and good design. Their obvious weakness is a lack of tactile feedback, but just wait. (This is where Helix came from - since it was really hard to do movement controls for two players well I decided to solve it for just one player first. Which is still pretty hard, hardly any games get it right. I've done it to my satisfaction now, but it might not be to everyone's; it seems like everybody has a slightly different expectation of how a touchscreen will work.)

I've ended up really enjoying working on the iPad, it just fits really well with how I make things, it feels like the right size for my games - compact but rich. It's really convenient to have games on a portable device, handy for being able to show people what I've been working on, and perfect for multiplayer, being able to play games together when out places. I don't like working with telephones at all though, they're far too cramped, supporting a different resolution is a bunch of work (more with this low-res pixel stuff I've been doing than if you just do scalable vector graphics, and even more now they've brought out widescreen ones as well), BUT HEY IT'S A BIGGER MARKET so.
Also it kind of feels to me like games at the scale I've been making it's easier to sell on mobile. I'm pretty sure the most reliable source of income from videogames is big PC games with lots of graphics and lots of fiddly bits and inelegant content to justify a substantial pricetag, but if you're making small focused things and want to get paid at all I think mobile's the best bet at the moment? That's just my impression though, it's a subject on which I could easily be quite wrong.

I really don't like that putting games on iOS means people can't play them without some expensive gadget. It excludes people, and it doesn't feel true to myself - I've been disappointed many times by games being exclusive to some console I couldn't afford. I shouldn't do this I'd rather not do this. It makes me quite unhappy that Glitch Tank and O are confined to proprietary Apple products but it's a real pain to do anything about it. Obviously it'd be nice to cover Android devices too but those are even more of a nuisance to develop for: way more different resolutions, whole bunch of extra technical nonsense to fight through (probably not that much worse than iOS but it's separate & one only has so much time in a life), plus it tends to pay a lot less than iOS and until 868-HACK I really wasn't making much. (I actually did get Glitch Tank running on Android, with some ugly hacks, but it's not getting a good framerate and I'm not quite motivated enough to dig into that mess to figure out why.) Obviously games that don't require a touchscreen I can release on PC, I do this, I've been delayed with 868-HACK because I got into a bit of a mess trying to track down some obscure crashes on a few people's computers that I can't reproduce on my own - something that is a bit less of a concern on iOS, having fixed target hardware is pretty nice (although Apple tends to break stuff with every update; I had a bunch of complaints when iOS7 broke something, though it was fortunately non-critical and only required one line added to a config file to fix. More of a concern is that Vertex Dispenser is crashing on startup on the latest MacOS, no idea why, haven't had time to dig into it, it can't really be my priority right now, but it's hanging over me. Wish I could just release games and be done with them, but each one is an additional maintenance cost at random intervals forever, and each platform it's on adds a multiplier on top of that.).

Really a lot of the reason I've stuck with iOS for a while is the multiplayer games. This is what got me into this in the first place, it's something I got really excited about for a while, it's so perfect for them but there are very few and they don't do well. I think a lot of people just don't realise that they're carrying around multiplayer consoles everywhere they go? Culture. Anyway I was hoping if I stuck with the platform for a while and made some singleplayer games maybe I could get some attention to reflect back on the multiplayer ones - because they can't so much go elsewhere. This has worked a little I guess, but of course they're not new, I'm thinking about making a new one or maybe doing a sequel to Glitch Tank, but it's hard for me to work on these at the moment because I got so excited and then demoralised.

Anyway at some point Apple will drive me away and I guess I'll go back to only making PC games again, yay.


  1. Heya!

    So, I know bad hotel isn't nearly as focused as say 868, but it is certainly small. On steam alone, it did better money than on iOS. Across all the sales of the pc (which is complex, because we included the android version in some bundles), we did 3x money than on iOS.

    I would happily speculate why, but it would just be speculation.

    1. yeah 868 is way bigger than anything else i've been making recently so it's probably above that threshold (though it's still "small" as PC games go), the rest though..
      but yeah i'm not super worried about money now that 868's sold decently on ios and is getting on steam too, i'm more thinking about what i want to be spending my time on now

  2. Hey Brog,

    Please don't stop making games for--or, at the very least, porting them to--iOS. Your games' insane aesthetics and play mechanics translate so well to that medium, and it's great to have something interesting to play in a sea of shovelware. iOS doesn't have to be the joke of a platform it's often made out to be. Anyway, your work is much appreciated. Thanks.


    1. I fully agree! I love the iOS games, especially 868-HACK!

  3. This comment has been removed by the author.

  4. Yeah, I get why this is a dilemma for you. I feel like just the fact that we're making videogames is a bit exclusionary by nature. Not everybody has access to a computer or the internet. Sure it's cheap (probably even free in many cases) to get an old computer now. But I think the same is probably already true for old smartphones/tablets now that there have been a few generations of them. It does suck that a lot of these devices have short lifetimes with planned obsolescence, i.e. Apple dropping support for OS updates. One good thing about Android is that Google tries to give developers the option to be backwards- and forwards- compatible, although it can be a pain sometimes.

    How are you programming the games? You probably know this, but there are are a number of free or relatively cheap frameworks/engines out there that let you develop for iOS and Android, and in some cases also for PC. Multi-resolution is definitely a pain, but if you write or use a good GUI framework you can at least get OK support across a wide range of aspect ratios and DPIs - pixel/vector art also makes multiple DPI support a lot easier. Cocos2d-x isn't bad if you don't mind writing C++. The rendering pipeline is inefficient but it's pretty adequate for simple 2D games. I'm learning Unity also, it's pretty nice although a bit pricy to support Android and iOS. There are also some other engines I haven't tried yet that seem pretty active like Corona SDK and libgdx.

  5. This was a fantastic article. Really loved reading your we blog post. The information was very informative and helpful.
    If you love gaming for unity games kindly visit….
    mobile app development