Lessons learned from the development of an online casual game
Whilst working on a social media project for work, and being a curious software developer, it seemed like a good idea to have a go at creating an online Flash based casual game to better understand the mechanics of the online casual game environment. During this exercise, and after having produced a few other titles, a number of lessons have been learned – a number of these are included in this article.
Create something new
When deciding upon a particular type of game a number of options were considered but the one finally selected, a memory matching card game, seemed like a reasonable place to start. From this development an important lesson emerged that special something or new which gives people a reason to play the game over other similar “me too” games needs to be factored in. The original Pairs game developed was played on various portals around 3,000 times in just under one month – it may sound a lot but other games were played 300,000 times or more in the same period of time. When producing Pairs II a number of new features including multi-levels were added and it had more plays in one day than the original had received up to that point.
The best thing of course is to create a game from an original idea.
Lessons learned from the development of an online casual game – from www.jasonslater.co.uk
Another lesson is to ensure you don’t alienate large parts of your potential audience. In CopyMeDo the challenge was to avoid the red orbs and find the green orbs – colours that some people have difficulty distinguishing between. The game has since been modified so that the orbs include additional visual indicators (they also look a lot better too IMHO) – these sort of issues will be considered in any future developments.
Locking out large portions of a potential audience is never a good idea if you want your game to be popular.
Sounds good to me
It was only in the latest game PopEm StopEm that any sound was added – games up to that point were silent. When playing online games I often switch the sound off, so had little real appreciation for the role sound effects play in a game. However, the most commonly recurring comment I have received so far is the lack of sound in the games. Using a freely downloadable tool such as Audacity and the Lame MP3 encoder you can create your own sounds – and it is worth spending some time getting the right sounds. For the bubbling sound in PopEm StopEm all manner of ideas were tested – the best of which, after about an hour of fun testing, was blowing water in a glass using a straw (whilst trying not to short circuit the laptop with water).
An online sound library could be used but you can get a real sense of satisfaction from implementing my own sounds.
Test all the levels properly
Later on in the levels of CopyMeDo the amount of time you get to remember the orb sequence gets shorter and shorter – at the time this seemed like a good idea as it would add an additional challenge. This was OK for me because during the development I played the game so many times that I got used to the speed but people coming to the game from a new perspective may not – a number of comments received pointed to this – the orbs now sequence at the same rate from level to level.
Not going to get rich quick
Not that you should ever start out with sole intention of making any money but my experience so far shows that a game developer needs to create something pretty spectacular to make any real money and retire with their feet up at the beach. Original Pairs, after 3k+ plays, netted under 50 cents and most of that was in the first few days of launch.
Integrate the API
A number of the big game portals I approached asked me to include their own API for high score submissions and other things and I ended up spending as much time working on, and understanding, various API integrations as I did making the original game. Fortunately, once one API integration is working properly it can be Classed off and reused. But, getting that initial integration right took a lot of time. Some of the API I include in the games are MochiMedia, Newgrounds, MindJolt, and Kongregate.
I can’t say I was really surprised when a few forum entries slated my Pairs game – after all it was a first attempt. However, looking through the forums for other games this seems to be a common pastime – even with good games. With this in mind I decided to accept the criticism and that some people won’t like the games I write. Some of the comments are pretty humorous and others do offer good ideas for game enhancements. From what I can see there will always be someone who hates my game and marks it a big fat zero – so I won’t take it to heart.
Draw a line under the development
When working under my own timelines I was tempted to keep adding features, tinkering with graphics and sounds, and basically put off finishing the games. My work process is evolving and now, I write a plan and keep a wish list – everything on the plan is what “needs” to be done and everything else goes on the wish list. I currently have a three week window for producing a game (working nights as I have a day job!).
Love your own game
This item hit home with me after reading the post mortem of “Hanna in a Choppa” – up to that point it had been just a nagging doubt in the back of my mind. If I really wanted to I could probably crank out a game a day (before I run out of steam or ideas!) but I believe players can tell if a game has not been loved by the developer and it may put players off. Adding little quirks, features and oddities to my game hopefully shows I have spent time honing it and moulding it – plus it is quite fun and will hopefully form part of the process which helps future games stand out.
In PopEm StopEm I introduced twenty levels but initially these all felt a bit “samey”, so I started thinking about each level on its own merit and that led me to add a different backdrop to each level. Then I got the idea to put in different coloured (and symboled) bubbles – each with mysterious effects – some good, some bad. I also added little game messages and bonuses which, whilst probably unnecessary in the cold light, I feel really add something to the game. Watch out for the multi-pop bubble – it took ages coding that routine.
I guess this should probably have been the first point in the list and for playability I mean a number of things:
- The impetus for someone to play a game in the first place
- A reason to keep playing my game
- Offering a replay value
First off, a title such as Pairs doesn’t exactly excite or stand out from the crowd but once launched I was stuck with it – this is an important lesson to learn – think about game names carefully. Whilst there has been a little criticism about the “silly name” for CopyMeDo it certainly sounds a bit different and might contribute to why it has had more plays than Pairs and Pairs II put together.
Once I got the name sorted out I needed to think about the thumbnail – I originally used a small version of the Splash screen but now I include an ingame shot which shows more clearly what the game entails (but not the whole screen – just a tempter). On the var
ious portals I also found it paid to include number of thumbnail sizes, including 50×50, 100×100, 200×200 in various formats.
If you don’t provide a suitable thumbnail the portal provider may create their own.
As to the next point – what makes someone keep on playing level after level? Awards and recognition perhaps? The chance to be in the leader board – or just the desire to “beat the game” – I still have no idea what that magic ingredient is (take Bloons Tower Defence 3 for example – I was hooked on it for weeks because I needed to finish the game). PopEm StopEm introduced a level code function so players can leap straight into the level of choice (once they know the code of course!). I also introduced a number of achievements to offer additional reward.
Evolve your ideas
What has been amusing to me is how the idea for each game has spun out of the last game. Pairs II obviously popped up to include most of the “wish list” items I had
optimistically originally planned for the original Pairs. CopyMeDo was borne out of Pairs II as I got the idea I could make a memory sequence game by changing the behaviour of the cards (and changing them to orbs). On the Splash Screen of Pairs II and CopyMeDo are some animated cards and orbs respectively. I got the idea for PopEm StopEm out of this routine and built a game around it. Out of CopyMeDo and PopEm StopEm I got the idea for the new game, but this is currently a state secret under wraps.
PopEm StopEm was actually started before CopyMeDo but I shelved it for a while because the game play didn’t feel right – as explained earlier. Coming back to it after a few weeks made a big difference and gave me all sorts of new ideas – it also increased my development cycle to three weeks from two.
Learn, Learn, Learn
Coming to a new development platform means there are new things to learn. Fortunately, (having learned my lesson many years ago) I managed to keep the UI and the Game Logic elements separated which makes the game easier to develop iteration after iteration (see Flash Game Postmortem: Robo Riot, by Urbansquall for more information about splitting the UI and Logic).
I am also reading as much as I can about techniques, optimisations, and coding standards – having come to Flash based development straight to AS3 has probably helped a great deal. Algorithms are my latest reading material. Remembering those bits and pieces about all those formulae at school you might wonder “but I well never use this in the real world” – who is laughing now? I need to re-learn formulae about gravity, acceleration, radius, area and many other calculations which come in really handy when developing games. Simple collision detection of two circles can really be helped by knowing Pythagoras Theorem and the radius of the circles.
Be your own promoter
Understanding how to promote a game effectively can be challenging as there are any number of ways of approaching it. My first experience was adding games to MochiMedia distribution which seemed like a sensible place to start. After a few days I submitted my game to Kongregate, Newgrounds, and MindJolt. All went well for the first few days but then the plays started to dry up. Flash Game Distribution was the next place to visit and this did have an effect on game plays but then it hit me – I needed to actively promote my games and not simply expect people to promote my games for me. Game portals, sites that are dedicated to online casual gaming, are another place to head for distribution.
Game portals are great for uploading your game but they have two problems:
1) They are full of thousands of fantastic games already
2) Games soon disappear from public view quite quickly
For the second point – many portals have a section called “New Games” which show the recently added games – these are where I got my initial traffic spikes and when the games disappeared from view so did the game plays.
So I developed my game, added it to MochiMedia, uploaded it to Flash Game Distribution, MindJolt, Newgrounds, and Kongregate but the initial rush settled down and the game plays pretty much steadied. I needed to be proactive about promoting my games – so I added game tracking so I could assess where my game was getting played – and more importantly try and identify where it was not getting played. Then I set about Twittering about my games, hosting the games on my own sites, spreading the word, and approaching portals directly – there is a lot of work involved in these activities and they really do eat into valuable development time – but what use is development if no one knows about it?
That’s about it for now. You can see all the games at the games section.