It has been almost a year since the last blog post. Most of the time we were working on our own apps, a few client jobs as well as on our latest game Cow Bird.
But something went wrong, terribly terribly wrong. Cow Bird was a complete and utter failure. Months of hard work and a lot of money spent for nothing! The game doesn’t sell a bit. Right now we are at 0 – 1 sales per week… It is not only frustrating but also very discouraging – and that’s the last thing a jung and small iOS develpment team needs.
But let’s go back to the begining, when we started working on the game.
At the Begining
At the begining there is always a great idea. But how do you spot a great idea? You don’t, you just select one from many others and start working on it.
As you may know by now – I have a knack for organizing our iOS knowledge in our Confluence wiki. So that’s where we started. Trung and I brainstormed for a while on game ideas and wrote them down. Then each of us rated every idea in turn. And that’s the first mistake we made. We didn’t focus on “fun” or on something that we both would be addicted to. We rated the games based on some predictions and observations we made beforehand regarding the game’s potential to become an App Store hit. Well, that’s not entierly true – I’d never work on a game that I think is not fun nor would Trung, yet the problem was that it wasn’t our very main focus. As iOS developers we may not be like the typical iOS gamer. I play tons of games, sometimes for fun sometimes just to test the game mechanics. We both analyze new iOS games and test them all the time – so this might change our perception of fun and of games in general.
We couldn’t really narrow down the list of ideas – we had at least three favorites. So we started creating prototypes. Along those was Cow Bird. One evening Trung and I started a little competition. We wanted to see which one of us would finish the prototype first. Trung used Cocos2d and I worked with Unity. (we were done roughly at the same time – but we went on with Cocos2d afterwards).
At first Cow Bird wasn’t even a cow but just a bird. Our initial idea was about a bird that bounced down a mountain crashing into the stair shaped rocks. I had this image in my mind of a funny dizzy bird that constantly bumps into the mountain always landing on her head. Like a cartoon figure with the proper mimics and funny sounds. A bit like the bird from the intro of Day of the Tentacle:
The game’s main menu would show the bird flying endlessly while the camera followed it. When the game started, a mountain peak would appear out of nowhere and the bird would crash into it. The player would have to touch and hold to help the bird try to fly for a short while, interrupting the boucing for a bit. At the same time the initial crash would have caused an snow slide and the bird would have to fly/bounce downhill – away from the avalanche.
Soon we realized that the game mechanic wasn’t much fun and changed it. Instead of hovering while the player touched the screen, the bird would now bounce harder into the mountain when touched. Much like a basketball that one forcibly throws against the floor.
But there was a problem – let’s call it THE MAIN MISTAKE ( <- all caps always makes stupid things sound important). Somehow (and although still different) the core game mechanic reminded us of Tiny Wings. The fact that Tiny Wings is Trung’s and my all time favourite game EVER didn’t help either. So we had this dilemma where we were close to our favourite game and yet we wanted to stay away from it. We wanted to stay away out of respect to Andreas Illiger. The last thing we wanted was another clone. Clones are lame and we are the last who would want to ride the “me too train”. In retrospect I think we would have been far more successful with a 1:1 clone (yet I am still glad we didn’t do it). The problem became worse as the development went on. Sometimes even small details we added to the game had to be removed because we deemed them to “Tiny Wings like”. Paranoia at work
The grunge style, the stripy mountains, the lighting – every small detail of every distinct design element had to endure the “it stays only if it is not too Tiny Wings alike” test. Our design became a game of avoidance.
Beta Test and Feedback
We went on to show the early prototype to our friends. This is the third mistake. It was too early. Most of them were underwhelmed. But they were too nice to tell us why. So we thought it must have been the early state of the game, the improvised graphics, the unpolished gameplay – things that we went on to improve anyway. What most testers didn’t mention at that time was that the core gameplay wasn’t interesting. And if you spend most of your waking hours focused on one thing (like we did) you tend to develop a blindness, making it easy to overlook even the most obvious things.
But the game developed and started to take shape. Instead of a bird, we changed the main character into a cow who thinks she is a bird and wears a bird costume.
Suddenly the game got its own quirky character and headed into the right direction (or so we thought). So we went on with the development. Eventually we got over the Tiny Wings paranoia and focussed on polishing the game. We hired a young and talented designer to create the most important graphic elements.
Thanks to Sandra Cow Bird became more… charismatic.
We put so much work even into small details. For example we added a dynamic day and night cycle based on the current time of the device, added different music tracks Emmett Cooke for day and night, tweaked every particle effect to match the costume of the character and so on. We spent weeks tweaking every level, constantly testing it again and again. This was especially difficult since the levels were semi-randomly generated from a JSON file where we defined parameters for every edge that forms a stair part of the mountain. At that time I tried so hard to imagine how someone would play our game for the first time that it permanently messed up my skills with the game (I still can’t beat Trung’s highscore although I designed all levels)
We added objectives and the egg as a score multiplier. Finishing objectives would change the egg (adding cracks to the shell and finally – when all objectives were done – a new small bird would appear instead). The egg should add to the “poor cow can’t fly and must protect her egg” theme. The short intro should explain the “story”.
We also added costumes unlocked by in-game currency (no in-app purchases). We had to fight some nasty performance problems due to the retina graphics on the iPhone 4. Shortly after that the game became universal with retina graphics for the new iPad (3).
In the end we became so convinced that the game would be successful – we dismissed every scenario of failure. The crunch mode and the relatively long development time had left their clear marks. We bacame impatient and wrapped it up. There was still stuff we wanted to add. Multiplayer for example was left out. I also had this constant fear that the distinct atmosphere of the game woldn’t catch onto new players. So much love and attention we put in the game could have went unnoticed just because we left out some fluff.
Fairly late into the develpment cycle we decided to port the game to the Mac. Thanks to Cocos2d this wasn’t a big issue. The game was already Universal and the iPad resolution and assets were already done.
The game was released on 16th june 2012. That’s exactly the day when my vacation started. I was abroad when the game launched and left all my iDevices at home. But we were prepared. Or at least I think we were. Landing page was redy, press release and presskit were done (Mary Kish from Indieviddy helped us out), review sites were contacted, trailer(s) were uploaded, tweets and facebook messages were written. We had even bought a big marketing push in Germany through several channels that guarenteed us at least 100k impressions (push notifications in app agregator apps – no spam!).
The launch was extremely disappointing. We had so few sales (around 200) – this translates to around 10€ that we spent for every sale (app price = 1$)…
I was sure that we messed up something important. The icon had to be bad or the game name or at least the screenshots would have failed to convey the gameplay. We tried and changed them (without effect). Here is a comparison:
For the record – I still like the first icon much better then the actual one – but I felt that it could tell too little about the game.
Normally this is the place where I would wrap it up with encouraging words like “…but we learned something important along the way”. To be honest, I am not sure what we learned. Of course Trung is a real Cocos2d coding wizard now. I know for sure that when you create something that you REALLY love and use – it will get the best of you. That was the case with our app Today To-Do. But it is so easy to deceive yourself to accept what you are working on as the thing you really desire most. And although I know that, I wonder why we still fell into that trap.
Next time (if there will be a next time) our next game will be released greatly delayed. Not because it took so long to develop, but because we were so addicted and would rather play than finish it.