Taking on the app stores – step 1: Google

I’m on something of a mission to have my HTML5 arcade visible to the search engines. Naturally I’ve a number of keywords and phrases that I want to have positioned favourably in Google et al. My goal is to have phrases such as “free arcade games” on the first page of results and ideally “above the fold”.
To this end I’ve done a good deal of work in making sure that the site’s content is specific, relevant and perhaps most important of all unobtrusive to the player. I think I’ve achieved a reasonable balance.

Every once in a while I grab a coffee and spend 5 minutes punching in variations on my keywords in to Google.
The most recent search phrase was “free arcade games for ipad”.

Before I go on I must at this point pledge my love for Apple’s iPad. I’ve had an iPad since its launch and have very much fallen for its elegance, execution and simplicity. Contrary to popular opinion I also rather like its sandboxed nature. I’ve no intention to “jailbreak” it. There’s no need. Not for me. It does what I want it to do and then some. Most important of all though it plays HTML5 games like a dream.
So appearing favourably for a search phrase containing the words arcade, games and ipad is a key goal for my plans of 2014. Free is obviously also an important word since HTML5 games tend to be largely synonymous with free gaming just now. I guess that will change. It’s interesting that I’ve not identified HTML5 as a key search word just now. I’ve made some provision for it but until it becomes a key word in the mind of the public searching for games on their mobile I’m less concerned about it. That said part of my mission is to create that relationship amongst the gaming public with the words HTML5 and games.

So what do I get when I punch “free arcade games for ipad” in to Google?

Well, disregarding adverts, I get several results before my own site playstar.mobi is returned.
I set out to take a closer look at the links that preceed my own. Here’s some detail.

Results as at 21st February 2014

1. http://www.techradar.com/news/mobile-computing/tablets/60-best-free-ipad-games-692690
A very respectable list of free iPad games available from the app store. Very difficult to compete with as some of those games are AAA in iPad terms.

2. http://toucharcade.com/2013/12/25/best-free-iphone-and-ipad-games-of-2013/
Different games but the same premise. A list of very good quality games that you can install and enjoy for free before you hit the brick wall of In App Purchasing.

So far it’s hard to see where my humble little HTML5 games arcade could possibly fit in to the big world of iPad arcade gaming. But I’ll persevere.

3. https://itunes.apple.com/gb/app/namco-arcade/id465606050?mt=8
This time a direct link to some of the games that influenced me both as a boy and as a “grown up” game developer. Geez. This is getting tough. How on earth can I compete with this?

4. http://www.pcmag.com/article2/0,2817,2373779,00.asp
Holy hell another list. This seems to be the way to get your pages ranked well. TechCrunch, TouchArcade, Apple and PCMag are all well ranked within Google so this is no surprise. It’s looking quite ominous a task.

5. http://reviews.cnet.com/8301-31747_7-20110992-243/the-best-free-ipad-games-period/
ANOTHER take on the best free iPad games available to us in 2013. It’s becoming very much a trend is this. I doubt the authors care a jot about what games are good and what are bad. They just want their site ranking well for these search phrases. “The best free ipad games, period“. Well if that’s not arrogant I don’t know what is. Arrogant link baiting. Wow. The internet sinks a level.
This list is different but really no different to the others, other than it ranks lower in Google’s index.

I offer some very simple arcade games that are based on a simple premise: shoot, dodge and blast your way to the top of the high score table. It’s old school and I’m starting to feel like I cannot compete.

6. http://ipad.about.com/od/Action-Arcade-Games/tp/The-Best-Action-Arcade-Games-For-The-iPad.htm
I couldn’t see a date alongside this entry. I think it may be a couple of years old given some of the titles on offer – “Rage” for example.
I quite like this list. It’s simple and honest. But still it points directly to the app store. HTML5 gaming hasn’t a sniff. Yet.

7. http://ipad.about.com/od/iPad_Games/u/A-Guide-To-iPad-Games-And-Gaming.htm
I didn’t delve too deep here but it looks like all the results of number 6 categorised. The author is the same. Yup, very much an SEO exercise.
“Daniel, get us listed up there with Techcrunch for free iPad games. We’re about.com for God’s sake. We need to be registering.”

8. http://iappguide.com/ipad/top-games/arcade-games/free
Hang on. This looks different. I’ve never heard of iappguide.com. These guys could well be HTML5 focused.
Alas, no. It’s another bunch of links to the app store. To its credit it looks pretty well maintained. Right now Flappy Bird is all the craze and there’s a bunch of “flappy” games on offer. No HTML5 but it’s a bit different. Credit to them for weighing in at number 8 but I’m not sure I’d install any of their listed games. It’s just a list and feels pretty pointless. i.e. content I could get just by going to the app store or reading one of the previous 7 lists.

Lists, lists, lists. There’s no experience to be had here. Just lists. If you play Google you can position yourself well but have limited relevance to your audience. I’m not convinced lists are what people searching with the word “arcade” are after. I’m possibly (and probably) wrong.

9. http://iphone.mob.org/genre/arkady/
Proceed with caution! I’m not convinced that this site is a friendly site.
It’s the first site on the list that offers games outside of the app store. Yup, you’ll need a jailbroken iPad for this lot.
If you’ve jailbroken your iPad you’ve really missed the point. You probably should have some form of Android detritus like a Nexus 7 or Samsung Galaxy Mega. Both fine bits of kit but for my money inferior to Apple’s offerings. Anyway, that’s technical opinion and I try to avoid that.
I don’t like this site. It’s just a bit “hey look at my adverts”. There’s no promise of an experience to be had here. Just a vehicle for ranking highly and splurging adverts at you.

10. http://www.makeuseof.com/tag/muo-free-ipad-games-addicting-arcade-edition/
Aaaand another list. A bunch of iPad games that somebody has hastily assembled without any real thought or care. Actually perhaps there was some care taken not to replicate what Techcrunch or About.com were offering.
This is a terrible list wrapped with some adverts. Again.

I must be close to being listed. Surely.

11. http://www.imore.com/namco-arcade-ios-freetoplay-classic-arcade-titles
205 words in this article. 205 words. The rest of the page is adverts and links to other site content. Those silly enough to fall for it have commented in the comments section. Jesus.
So for anyone genuinely looking for free arcade games to play on their iPad it’s looking pretty grim. Unless they’re happy with wading through a list of somebody’s opinion as to what’s good they’re not really going to get the “arcade” experience.
Perhaps that’s not important.
I perhaps need to think about this.
Most people surfing the web for games were probably born after the glory days of arcade gaming. Is it really right that I should harp on about the beauty of playing games and striving for the high score for the cost of a single coin?
Maybe not. I am quite possibly barking up the wrong tree. But that said I’m convinced that what was fun for me as a boy 30 years ago ought to be fun for today’s casual gamer. The challenge of a good arcade game with that single goal of dominating the high score table – the one thing that identified you as the “best” – has to be a worthwhile pursuit.

12. http://playstar.mobi/
HUZZAH! I made it. Amongst the endless lists of lists I made it.

So what does a searcher see for their “free arcade games for ipad”?
To better understand this I’m going to try and step inside the mind of the searcher. What kind of a person might want to find free arcade games for their ipad?

Free games for iPad is quite different to free arcade games for iPad. At least I think it is.
If you include the word arcade you’re looking for something quite specific. That’s not to say you’re looking for something from 30 years ago. Not at all. But you’re looking for a style of game that almost by definition is brief, challenging, entertaining and most likely pretty intense.
So far a few of those lists have thrown up their own results and a bunch of the games listed are very good. Very good indeed. But they’re not “classic” in their execution. Not necessarily.
So from this I deduce that what I want from my searcher is an unwritten desire to play “classic” arcade games.
To have my games returned without having to supply an extra (and arguably implied) keyword is good.
The person I want to be searching for “free arcade games for ipad” is an iPad owner (obviously) and somebody interested in (ideally) classic style arcade games from what I would call the golden era.
This is both useful and limiting.
Useful in that it provides a niche target audience to aim for an limiting in that it restricts me to that very same audience.
Nonetheless I am happy to target this audience.

So what words greet my searcher?

Well right now it’s

Free Mobile Arcade Games – HTML5 gaming – No Downloads, no installs | Play Where can I play games on my iPad, Android, iPhone or iPod Touch for free 

Woah. Look at that – HTML5 gaming.
If I can get this person to click they’ve suddenley (hopefully) made an association with free and/or arcade gaming and HTML5.
I’d be happy with either of those associations.
One day HTML5 will be a key search phrase for anyone looking for a particular style of game. Ideally “mobile” and possibly “free”. Whether that shifts to the stinking world of In App Purchasing remains to be seen but certainly the mobile angle is key.

Same game > any device. That has to be a winner. It is afterall our unique selling proposition to our audience.

Targets and thinking like a casual mobile gamer

I have a number of targets for this year with Space Monster Games but crucially I have one goal that stands out above all others; grow traffic to Playstar.

Playstar logo

The current visitor count stands at around 250,000 a month. I’m happy with that but I want to double it by January 1st 2015. What’s more I want to double it organically. i.e. not spend money promoting the site.

I noted a few points down relating to my targets that I thought might be worth sharing here.

Get a better spread of traffic sources

Just now I take regular traffic from a few sites. Referral figures run at anywhere between 40% and 60% daily. I have always assumed that the remainder have the arcade bookmarked but I suppose that Google’s Analytics script simply doesn’t have enough information to determine a source. This could be for a number of reasons.
I’ve often wondered, for example, what the effect of launching the site from within an embedded browser inside an app might return. I’m guessing that it would be returned as direct or not set since there’s no referring URL.
Either way it won’t do any harm to promote the arcade organically and be visible on a broader range and number of related sites.
Which leads me nicely on to…

Improved Page Rank

Playstar is a new site. It’s been actively maintained for less than 6 months. In that time I’ve used all the expected methods of communicating its existence via social media including Facebook and Twitter. But predictably its ranking within Google is low. Around 1/10.

By the end of 2014 I’d like to see that up at around 4/10.

How will I do that? This is of course the million dollar question. How on earth do you increase your Google Page Ranking for a mobile web gaming site?

Well I’ve pondered this question over and over and ultimately I arrive right back at the beginning. There is no magic solution specific to promoting a mobile web gaming site. It is after all just a web site. So to succeed I simply promote it as I would any other web site.

Demographics

Where and how I promote it warrants a little more thought.
I sometimes try and visualise my audience. Right down to the person.

  • What do they look like?
  • Where do they live?
  • What is their employment / education status?
  • How old are they?
  • What budget do they have?
  • What are their interests?

In an attempt to flesh this out a bit I’ve attempted to become my target audience!

What does a mobile gamer (never mind the web bit for now) do to find games to play?
Well this really does depend upon an array of things (including but not at all limited to):

  • Handset used
  • Budget
  • Internet connection / reliability
  • Demographic

The analytics collected from Playstar thus far inform me that the majority (60%) of visitors are male and aged somewhere between 16 and 36.
They are also casual / hardcore gamers, savvy parents, photography enthusiasts and petrol heads!
OK, so good luck targetting that audience with a single strategy. Google’s assumptions based algorithms for determining this data are simply not reliable enough.

To get inside the head of a typical mobile gamer it’s probably more reliable to collect a few handsets and go looking for games. Free games. The word FREE is key here.

Freemium

Annoyingly In App Purchasing (the freemium model) has taken off in a big way. This essentially renders games free at the point of download and in many cases the gamer gets a satisfactory experience without spending any cash. This of course means that a gamer looking for a free game can simply head to an app store and sniff out a freemium game. Their first port of call being the app store means that they are potentially less inclined to use a search engine to find a free game.

Competing with the countless millions of app store games is not for me. Besides I want to crush the app stores and drive everyone toward browser gaming!

But am I missing a trick here? Why not use the app stores? Why not submit my games to the app store as a means of promoting the arcade. The “footfall” through the app stores is huge. Even 0.01% of daily app store traffic at least seeing a screenshot of my games might warrant further investigation.
I could offer the games for free such they they stand a better chance of download and then splash my branding all over them in the hope that the gamer will take the next step and go visit the arcade.

Why visit the arcade when they can just launch the app I hear you ask?
It’s a good point but the arcade is more than just a bunch of games. Its feature set is growing and is largely based around high scores and achievements. This functionality wouldn’t extend to the app store. It would be important to stress that point.

As positive as this sounds it still seems like fishing with a crude wooden stick and a piece of string in a lake the size of Australia.

I’m brought back to search engines; where the same analogy could of course be applied. I just feel there is a little more control with the search engines.

Search Engine Optimisation

Encouragingly there is obviously a hunger for free games.

Surely these gamers are willing to play anything. And that must include mobile web games.
Naturally therefore there must be a significant volume of gamers using Google to search for “free mobile games” or “free online games”. Not necessarily “free mobile web games” but that will change with time.
The challenge here is in making my “free mobile web game” site stand up alongside the “free mobile game” options returned in Google.

SEO best practices essentially point to a couple of strategies:

  • Keep talking about your site (via all means)
  • Share your site with as many people as you can

It’s certainly not going to do any harm and to this end I have a blog and social media accounts. I’m less inclined to litter forums and blog comments with drivel purely to get links as I think it devalues the brand. But is this the right approach?

If I were a gamer looking for free games what would drive me toward a mobile web gaming site? Who might I be?

  • A disillusioned iOS gamer used to Flash gaming in my PC’s browser?
  • The frustrated owner of a cheap handset with an assumption that nothing will run because it’s so terrible?
  • A novice who simply taps “free games” in to the Google box that sits on the home screen of Android devices?

This kind of thing intrigues me. To properly reach out to a potential mobile web gaming audience I need to think and behave like a mobile gamer.

Education

There is of course another approach.
Rather than waiting for the world to catch up with the notion of mobile web gaming, tell them about it.
Stand out from the crowd as somebody who is an authority on mobile web gaming. Not just a gaming portal but an innovator. A designer, developer and arcade owner.
There’s some merit in this but what would concern me is that it places a direct relationship between the developer and the arcade; the technology and the fun.

I would really want the arcade to stand out as a pure means of escape without linking it directly to the nuts and bolts that go in to its production. As a boy playing Space Invaders et al I couldn’t have cared less about who designed the games and how they made it in to the arcade.
But in this age of maximising web exposure it’s important to play to your strengths. This blog is as much of a weapon in that sense as the arcade and its games.

Conclusion

Drawing conclusions from all of this is tough but one thing has emerged that I will take on board.
I need to be the gamer. I need to actually become the audience.
To this end I need to ditch using an iPhone 5s as my daily phone and walk around with a Samsung Galaxy model for a week or so. Samsung devices are by far the most popular handsets visiting the arcade.
I’d probably pick a low to mid-range Galaxy phone running a minimum of Ice Cream Sandwich (4.0). An SII perhaps.
I’ll treat it as my main phone and source of all mobile gaming. I’ll set my budget to zero and at every point I want to play a game of some kind I’ll shun the iOS devices in favour of the Samsung.
It will be hugely frustrating initially I’m sure but hopefully will yield some interesting results.

All comments, suggestions and opinions welcomed.

Road Rage – New HTML5 arcade game

Road RageRoad Rage is finally complete.

I put a lot of work in to this one in terms of balancing the action versus rewarding the player with plenty of on-screen action.

I’m not really in to doing post-mortems on my games but for this one I’d say it’s come out pretty close to how I envisaged it. I made a decision early on to keep the pace up and allow the player a fair amount of freedom to move and blast things. To that end I litter the screen with explosions, bombs, bullets and debris.
I’m hoping that it’s well received enough to justify the extra effort :)

Ultimately the question of “is it fun?” has to be answered and I’d have to say that the feedback from testing that I’ve had is extremely positive. Most of the comments returned highlight the soundtrack, audio fx and big colourful sprites. I’m thrilled to read such encouraging comments since it pretty much underpins my ethos for making games. It’s certainly something that will carry over in to my book.

Road Rage

You can play the game over at the arcade. Sign up, sign in and shoot for the top spot. Let’s see how good you are!

Analysing the Playstar Arcade – Gingerbread (Android v2.3.6) visits

As the month draws to a close I’m enjoying poring over the visitor statistics collected through my Playstar arcade courtesy of Google’s Analytics.

The figures are interesting in terms of growth but a little depressing when I see that under closer inspection there’s a significant percentage of traffic who don’t get the full experience.

Take a look at these charts.

November 2013 - 171,462 visits

November 2013 – 171,462 visits

This chart stands out for the high percentage of visits from devices loaded with the Android Gingerbread OS version 2.3.6. Gingerbread, the 2.3 range OS from Google, is notoriously clunky for HTML5 game execution. It’s not without its functional issues and is typically the OS that comes bundled with popular lower spec models such as the Samsung Galaxy Y or Galaxy Ace.

28.6% of 171k visits is a lot. Too much. It pains me that so many people would come to the arcade and not get the experience that I want to deliver.

99% of my traffic is mobile.

The 21.1% listed as other is a mix of Android, iOS and Firefox. iPad emerges as a popular device.

December 2013 - 235,758 visits

December 2013 – 235,758 visits

December is a month that traditionally skews the figures since it contains the Christmas holiday season. I have over the last few years experienced a marked spike in traffic to my games in the two weeks that typically constitute the Christmas break. This Christmas was no different.

Although the figure of 23.6% is a reduction on the previous month for Gingerbread users, it’s still high.

As mentioned in a previous post iPad increases in strength but still falls under the category of other.

January 2014 - 255,601 visits

January 2014 – 255,601 visits

So on to this month. Obviously I’m posting this with a full day’s worth of data to collect. I imagine the total # of visits will be closer to 262,000 based on the pattern over the last 30 days.

Gingerbread’s presence is still a little ominous although less so than it might have been. 22.2% of total visits is still a reduction but a small one. Moore’s law has to kick in at some point and the public will surely all be holding a minimum of Galaxy S3 in their hands soon!

It’s thrilling to be at a quarter of a million visits per month. It’s also thrilling to see so many high end devices visiting the arcade. The purist in me really does care for the owners of those low end handsets but at some point I know I have to let go.
I’m not such a purist that I’ll invest countless hours of time and money ensuring that my games work perfectly across the board. I am after all always keen to continue producing fast paced, action packed arcade games.

 

 

Some Friday data from the Playstar arcade

Over the last six months I’ve paid a lot of attention to the visitors statistics generated by my HTML5 game portal. Particularly interesting are the figures for iPad.

The rise in popularity of the iPad as a mobile web gaming device is wonderful news. iPad is an HTML5 game developer’s dream in many respects. Super fast performance and a beautiful display. I have in the past had issues with the way that my spritesheets were rendered on iPad. Specifically pixels from neighbouring frames glitching intermittently in the animation loop. The same code on other iOS devices didn’t present the same anomaly. On later models this is fixed.

iPad is not the leading device to visit the arcade. That honour (of the identifiable devices in Google Analytics) goes to Samsung’s Galaxy Y handset. By contrast a fairly terrible device to develop for.

Here are the figures for iPad traffic.

Month (2013) % of portal traffic # iPad visits
July 1.82% 4,031
August 1.8% 4,492
September 4.1% 9,062
October 4.3% 11,985
November 7.56% 25,539
December 11.48% 48,885

Christmas certainly helps. I imagine that iPads have been a popular gift globally. As you can see the holiday season also presents a significant increase in traffic.

Adding dynamic tweet functionality to HTML5 games

My current focus is with the PlayStar Arcade. I’m keen to push it as a platform for playing my HTML5 games. A lot of work has been carried out “under the bonnet” as we say in the UK and now I’m in to the slightly more entertaining areas of adding bells and whistles.

Something I was always keen to pursue was the ability for players to share their scores via social media. Twitter was my first port of call.
Thanks to their Tweet button script placing a button inside the game was a fairly simple exercise.
The flow that I wanted would see the player complete the game and reach the “GAMEOVER” status. At this point I would present the <div> containing the Twitter code.
The player would then be prompted to share their score and tap the Twitter “Tweet” button. All I had to do at this point was switch the text inside of the code that Twitter gave me with my own text. This replaced text would be what appears in the dialogue box for the player to tweet.

tweet score from html5 game

But there was a problem.

The attribute that I need to change to achieve this is the data-text attribute of the <a> tag in the Twitter script. But dynamically changing this attribute proves useless. 

When the Twitter script executes it converts the <a> tag in to a <div>. Any subsequent calls that I make to amend the tag fail.

I appreciate that this is largely theory so rather than post my own code solutions I’m going to link a site that covers it neatly with code examples.

http://tumblr.christophercamps.com/post/4072517874/dynamic-tweet-button-text-using-jquery

This guy had the exact same problem and solved it beautifully. 
I now have the ability to let the player complete a game, rack up a score and then share it with the world courtesy of Twitter. Facebook is next.

Road Rage development update

In wrapping up the development of Road Rage I hit one or two snags. This annoys the hell out of me since it is largely due to big holes in the game’s design.

I’m a designer who likes to have the core stuff ironed out long before I get my hands dirty with code and graphics. The central mechanics of the game are the first thing I figure out and everything else gets built around it.
For Road Rage the central theme is the winding road that shifts at pace beneath the action and provides a rapidly changing restriction to the player’s movement. If the car veers off-road it incurs significant damage.

HTML5 arcade game screenshot

This all worked out well initially. I’d used the code base for Spy Chase as a foundation and built upon it with layers of activity. The problem was that the game was actually far too easy to play and I wasn’t willing to compromise any of the design features. 
The road movement look neat, the laser fire from the player’s car worked well, the missile fire from the enemy looked great and the explosions and special effects all added a wonderful depth to the game. But it was just too easy.
The player’s movement was limited but fairly swift in the x axis and his laser fire was rapid. This I liked. Everything played out smooth and it felt like the most complete arcade game I’d ever made. 
Injecting the time limit was a late addition and it really intensified the challenge. 

Then it occured to me that the fundamental issue was with the player’s ability to shield damage from bombs, cars and the off-road. This increased the player’s chance of survival through to the health regenerating Checkpoint between stages. 
I played with a few different means of punishing the player and settled on a single hit from a bullet or missile destroying the car. Bumping other cars and trucks took a small amount off the player’s “health” (pretty vital as bumping is a key feature in the game and a fair bit of fun) and running off-road added larger amounts of damage. I didn’t want to destroy the car for veering off road as in some cases it’s unavoidable. Better to add damage and encourage the player to return to the road at the earliest opportunity.

So the game dynamics are now set such that the player avoids enemy fire at all costs and shifts left and right to collect, dodge and shoot. So much so that you could pretty much remove the road and backdrop and it’d play out like an old school shoot ’em up. 

I think the game is a huge amount of fun and faithful to the arcade game designer’s ethos of short, challenging and intense fun for your coin. Hopefully it will encourage a high percentage of replays!

Road Rage will find its way to the PlayStar Arcade in the next week or so.

Using Google Trends to gauge the popularity of mobile gaming related search terms

Google offers a pretty neat trends service that attempts to illustrate the popularity of search phrases over a given period. I’ve been having a little play.

Here’s a few quick charts using some reasonably obvious mobile gaming related search phrases illustrated over the past 12 months. The use of the word Free is my own assumption that the world at large wants everything for nothing!

1. Free Mobile Games, Free Online Games, Free Arcade Games, Free Online Arcade Games

Google Trends

I removed the word “Free”:

2. Mobile Games, Online Games, Arcade Games, Online Arcade Games

Google Trends chart

Hardly a dramatic change.

3. Mobile Games, Online Games, Arcade Games, Online Arcade Games, Free Games (link)

google trends chart

Just for a bit of fun I added the straight forward search phrase “free games” in to the mix. A popular search phrase. No real surprises there.
Hardly scientific but an interesting way to spend a coffee break.

A selection of screens from my new HTML5 arcade game – Road Rage

I intend to complete this game very soon. I confess I’ve got a little carried away adding some special effects with sprites. The shards of metal that fly away from the damaged vehicles when struck with a missile or gun fire were just too tempting to resist.
I spawn them in the game with random trajectory, speed and spin rate. The effect is pretty neat. For the most part the metal shards whizz off the screen but occasionally you get a slower shard that just ambles off screen with a slow spin. It really adds to the impression of blasting everything to pieces. Hope to have the game completed over the Christmas break in time for new year.

9HTML5 arcade game screenshotHTML5 arcade game screenshotHTML5 arcade game screenshotHTML5 arcade game screenshotHTML5 arcade game screenshotHTML5 arcade game screenshotHTML5 arcade game screenshotHTML5 arcade game screenshot

The importance of quickly proving a game concept with JavaScript

I have what I’m sure is probably considered a primitive style of coding JavaScript. It’s never really evolved in to anything that a purist would adopt over the years. To be frank it doesn’t concern me. What’s most important to me is that I understand my code and more importantly perhaps; it works.

The benefits of knowing my own code and the intimate relationship that I have developed with it have time and again proven useful. Not least when I’m approached by clients and 3rd parties to implement their own code and / or extract data from the game. Simple modifications and tweaks are simpler because I know my code inside out and the upside to all of that is of course that such changes are quick. Or at least quicker than they would have been if I’d had to first figure out how the code works.

There’s another huge benefit to writing and understanding my own code which for me comes in to its own when I’m considering a new game. I often daydream about a game or take inspiration from the most random things. I’ve got sketch books full of ideas and documents on my computer full of code snippets and high concepts.

HTML5 arcade game screenshot

To try and explain I’ll briefly explain the process of developing one game.

Some time last year I was driving home after a long journey across country. Not too far from home I remember pulling off the motorway and as I approached the traffic lights on the slip road I watched the striped yellow lines on the road. As I slowed to stop I remember clearly thinking how cool it would be to create a game in which the player controls a jet fighter that flies low over a striped landscape. Inspired by the illusion of the lines cascading beneath the car I turned over in my mind how the code might look. It didn’t take much to figure it out and that game turned out to be Distant Orbit (pictured).
I could prove the concept quickly because I knew how to adapt my code base to implement the stripe objects that form the planet floor. Better yet I visualised the game loop and could understand how to scale the alien bugs as they emerged over the horizon. There was nothing overly complicated in it and using the same approach I could quickly implement the tower that forms the player’s primary target in the game. The thought processes in understanding scale rates and how to manipulate such events per game “tick” came to me pretty quickly and because I understood the underlying code that handles the drawing and moving / scaling of objects I knew pretty much how the code would look.

What’s valuable to me is being able to take a concept, process it in my mind (and therefore visualise it on screen) and then move quickly in to code. It’s only by being able to do this that I can quickly dismiss an idea or take it to the next step – design. I like to have one quirky feature per game:  striped floors, scrolling terrain, 3D trench, starfield; and it’s generally this feature that I’m focusing on at the concept stage.

Much of this is always done using “defaults” for sprite art and defaults for audio. All objects have default behaviours as sprites in my code and adapting them to behave differently is 5 minutes work. At least to prove the concept. Fine-tuning can happen much later on as part of a balancing process.

So in short it’s crucial for me to be able to very quickly get in to coding. When I have a vision for something I spend a short amount of time poring over the approach that I’ll take and then it’s all about cutting code.

In future posts I’m going to break with my own tradition of not sharing my code. You can see for yourself just how ugly code can render some pretty cool looking arcade games :)

%d bloggers like this: