Life on the App Store – one week later

It’s….pretty quiet.  The release day for my app wound up being swamped by more than 40 other apps released in the same category – pushing PlusContact back to page 3.  A miserable position for what was my main hope for visibility on the App Store.  There is an important lesson to be learned from this experience: the Utilities category is a catch-all.  If it’s possible to place an app in a different category, use that as the primary.  Everyone uses Utilities.

Here are some other lessons learned the hard way from my first App Store experience:

/**Read the documentation!**/
I’m in that point in my career where I’ve been using computers for long enough that a lot of documentation is just empty words, and I can pull the meaning out of it a lot faster than it would take to read all the text.  Most dialog boxes I just infer their content from the context they pop up in and the buttons on them.  Well, in this case I missed an important part of the documentation that wasn’t as obvious as I expected, and it gave me all sorts of issues trying to make a beta build.  In future I’ll be more thorough as a skim the documentation :)

/**Reserve the name!**/
My original name for PlusContact was actually “Add Contact”.  A simple name for a simple purpose.  Something Apple doesn’t tell you – people can reserve the names for apps before they even begin working on the program.  This is a brilliant idea for most developers, but it’s been leading to people ‘squatting’ on good app names just in case they feel like developing them later.  The lesson learned: reserve the name on iTunes Connect before creating the project or any assets.

/**Seriously, don’t use the Utilities category!**/
Seriously, don’t use the Utilities category.

I hope this advice helps someone in the long run.  The App store has become much better for us serious developers now that Apple has ended the reign of “essentially the same gallery app with different pictures of girls in bikinis” – suddenly there’s a lot more room to move and be visible in the store – but there’s still a lot of work that developers have to put into getting their app visible and downloaded.


P.S. Thank you to all the people who gave my app such lovely reviews.  It was nice to know – even if I wasn’t visible on the front page of anything – that I was the highest rated app of the last 200 that had been released.  Some of you weren’t even my friends – but you can be now :)

PlusContact live in the App Store!

Just a quick post to announce that my first iPhone application – PlusContact – went live on the App Store today!

PlusContact is a nifty little utility that makes it easier to add a new contact to the address book. And it’s free! I’d love for any readers my blog has to download it and give it a try, and if you like it: tell all your friends and give it 5 stars :)

I made this app basically to address an issue I had with the Address Book app and how long it took to add contacts into it, but my hope is that even more people will find it useful.

You can find PlusContact by searching for it on the App Store, searching for “Tatham Johnson”, or following this link

Class Act Post-mortem

As promised, here’s the breakdown of what went right and what went wrong with the game Class Act: made by myself and 3 QANTM graduates during Game Jam Sydney.
Note that the entire game was conceptualized, designed and created over a very short (48hrs) time-frame; this alone makes it one of the most impressive projects I’ve been a part of. A lot of what I mention will be specific to how we tracked and used the time given to us, and may not be applicable to projects with less strictly enforced timeframes.

What went right:

The most fun section to answer!

  1. We finished it! Not every team involved in the jam managed to achieve that.
  2. We adopted an iterative development strategy. As the project came together we made an effort to force ourselves to find points where we could stop our work, play the latest version, then go into a separate room and decide what was missing and what was needed to make it closer to/a better game. It was sort of like planning sprints in Scrum, but without any formal management framework.
  3. Art. Our artist was experienced in 3D modelling and had never worked with pixel art or sprites at all. Which makes the graphics that he produced even more incredible. They were expertly crafted, pixel perfect, and had exactly the look and feel we were going for. Our artist single-handedly gave our game an 80’s reference, which was one of the requirements.

What went wrong:

Things to learn from

  1. Bad choice of tools. We ended up using what the majority of us were used to, which was Allegro: a 2D graphics library not far off from GDI. It did blitting and basic image loading and nothing else. Because of this we wasted a lot of time getting something on screen, and an epic amount of time writing our own movement, collision and animation code. We were trapped doing 2D because we weren’t all familiar with a single 3D framework and despite our artist doing some amazing pixel art, he would have been much happier making models. Because of the time taken to work with Allegro, we never even had time to polish.
  2. No polish. Yeah. Lack of time or code design for creating gameplay variables that could be tweaked to improve the gameplay. Little things like a visible view area for the teacher, or tweaking the reaction times of teachers/students would have upped the fun level if we’d had the time or the ability to tweak them in-game and find the perfect value. Bringing along a reusable console class for providing all that functionality would have made a lot of difference in the end product
  3. Time management. For all of us this was our first game jam event, and most of us had issues with managing our sleep and our work. Each of us had different issues: for some the sleep was ineffective, for others there wasn’t enough and they were fading during the last minute cram at the end. I don’t think it’s a common thing for many developers to know the limits of their bodies, or be familiar with their sleep cycles etc.; it’s the kind of knowledge that proves useful in a weekend game challenge though.

There was lots that went right, and lots of stuff to learn from, and I look forward to putting it all to good use as soon as the next Game Jam is announced!

For those interested in having a play, the files for Class Act can be downloaded from the Global Game Jam website here

Game Jam Writeup

So last weekend I took part in Game Jam Sydney, a chance for crazy people nostalgic for university assignment all-nighters to get together and spend 48hrs straight designing, creating and making games.  The entire event was a phenomenal success, massive kudos to the incredibly talented organisers Dan Graf and Malcolm Ryan – and to the Powerhouse Museum for happily locking us up for 2 days straight.

I’m not sure what I was expecting when I first showed up, but once I walked in the many computers sitting on desks all in one row had the LANner in me feeling right at home, and I quickly made lots of new friends.

After some security briefings (the pies are good, apparently) and a quick bite to eat, we all headed down to the main foyer where the 80’s are back exhibition was officially opening.  Steve Wang from Microforte gave an interesting talk about what Game Development was like in the 80’s; I love that they bought a machine, spent days making a game prototype using it, then returned it to the store once the prototype was submitted!  Classic!  After that it was time for us Jammers to head up to get locked in.

Finally, we were given the theme: Deception.  What?!?!  It was quite a difficult theme to try to include in a game concept, and we had a few secondary themes as well: sewing, snowing or rowing; plus trying to work in an 80’s theme, style or reference.  I ended up brainstorming with some graduates of QANTM Sydney about a game involving sewing body parts of 80s celebrities together; unfortunately we couldn’t turn it into a game in our heads.  Our first real playtest was with a game played in a sweatshop, where the player needs to deceive inspectors into thinking they’re running a decent business, while making profit by running sweatshop conditions in other rooms.  A quick paper and pen playtest showed that it wasn’t much fun to play, so we dropped the concept.

Our next playtest was based on being a student trying to disrupt a classroom without being caught – using spitballs and rulers to deceive the teacher into thinking other students were responsible.  Oh, and it’s a sewing class :).  A quick playtest showed that this idea had potential, so we set about making it happen.

As our own design unfolded with the help of our unwilling sprite artist it was fascinating to walk around and see how other jammers ideas were coming together.  Most, like ours,  took a few hours to evolve to a playable state and a day or so to actually be a game with win/lose conditions etc.  Towards the end of the second day, there was some strategy in our game, and most (but not all) of the bugs had been ironed out.  Menus, sound and splash screens were quickly added, and all too soon our game – Class Act – was packaged up and submitted.

The best part of the Jam happened next – being able to go around and try out everyone elses games!  The sheer amount of skill, design and effort that went into these games was mind-blowing.  There were spy-games, games of hide and seek, stealthiness, bloody carnage and even a rhythm game.  And the quirky and awesome GNILLEY.  We had plenty of people play and comment positively on our game as well, which was a great feeling.  In the end we all voted for our favourite choices and headed off to the public presentation.

The public presentation was very quick: we only had a couple minutes each to present our games, and the judges never played them.  Embarassingly, I lost while trying to show off the deception aspects of our game and wasted our chance to win some judge lovin’.  Some other games, like the fantastic SpyWear also fell foul of the presentation – it really only worked with 4 other people playing simultaneously.  Once the judges had announced their choices we headed back to the Jam room, grabbed our stuff, exchanged contact details and said goodbye.

It was an amazing weekend, testing the limit of most of my abilities (including sleep-resistance), and I met some fantastic people and made some amazing new friends.  I would highly recommend it to anyone like myself that’s looking to get a foot into the Indy Game Industry.

Post-mortem on the game we created next week.