Game Design, Programming and running a one-man games business…

Outcasts Update

For those not following closely I am working on a new expansion pack for Gratuitous Space Battles. I was working on something else…but then i got seduced by the idea of more spaceships. I’ll return to the ‘other thing’ soon, I promise!

The new race is called the outcasts, and they are cybernetic types with a chip on their shoulder about biology. Think ‘the founders’ from DS9 but with a hatred of biologicals rather than solids.  In terms of visual design, they like their ships to be saucer shaped, with some exposed pipework and no shortage of engines or big glowy regions:

In terms of race design, I’m giving them a slight tendency towards faster ships (speed bonuses a plenty!) and concentrating on making better frigates for them. Currently my special ‘race-specific’ modules are as follows:

  1. Cruiser Decoy projector (see video here): This is a way that cruisers can project a fake cruiser hologram in front of them to lure enemy weapons away from the real fleet. bwahahahaha.
  2. Frigate 2-stage missiles (see video here): These start off slow, then accelerate (like a javelin missile) to make them hard to shoot down.
  3. Frigate multi-point tractor beam: These puppies can grab up to three different targets (probably fighters) at once. Oh yes.
  4. Frigate Pulse Gun: A new fast-firing laser-salvo gun that acts like a souped up ion cannon.
  5. Frigate Sniper Laser: Super-long-range frigate beam laser that allows them to snipe at the enemy from the safety of the main battle line for the first time.
  6. Solar Power Collector: A special frigate power generator module that beats all the others. Possibly frees up an extra slot for crew./shields/armor.

I may add other stuff, or make a few more radical changes during testing. I’ve also commissioned some awesome new music for the expansion from sean vella. This will make the outcasts the first new race to get their own special music recorded. Plus there are some stunning new nebula backdrops I got an artist to render for the new missions. For some reason, I’m really getting into this expansion pack :D There is no release date yet. I need to test and test and then release a patch to the main game to support them before I even consider releasing them. I can’t tell yet if it will be pre or post-christmas. Join in the discussion on the forums.

In other news, I just spent another fortune (well…£200) on insulation*. It’s COOOOOLLLLDDDDD here, and I’m determined to finish insulating that attic one day. I’ve shivered enough. Actually it’s not a problem if you are a normal person without an obsession with not using the oil-fired radiators like me. I’m a log-fire kind of guy.

*we have to use ‘breathable’ insulation in this old house, which makes the stuff much more expensive than normal.


Kickstarting inequality

I’m not a huge fan of kickstarter. There, I said it. I know that makes me unpopular. I’m not a fan for a number of reasons, but ultimately, if people are happy to fund games that way, then good luck to them. And of course, anything that serves as a kick in the vulnerables to big evil publishers will always get my vote. There are lots of reasons to like kickstarter, but those are commonly discussed. So let me lay out briefly, my reservations, and then expand on one I find never mentioned.

Kickstarter is selling dreams

Do you want to play Gratuitous Space Battles 2.0? It will be awesome. the ships will have AI the same level of intelligence as humans, and will have forty trillion polys each. They will be in 3D this time, and physics will model every atom in the universe. There will be 500 races, 10,000 ships and a trillion different modules, all of which will be balanced perfectly. it will run on a ZX81 at 60 FPS.

Yeah, I doubt that’s possible either, but when you are typing up your dreams at the start of a project, it’s very easy to get carried away. Selling dreams is a very different skill to actually building a final product. We should be rewarding people who can deliver, not who can dream. We can all name developers who can dream but not deliver. We are cynical when politicians do this, why not game developers?

Kickstarter is selling a FIXED dream

I sketched out a great game idea on my chalkboard recently, I got very excited about it, started doing a proper design doc, and half way through the design, I realized it had some fundamental flaws that meant although it *sounded good*, it wasn’t going to work as a game. I had to abandon the idea. I COULD abandon the idea, as I owed nobody anything. Nobody even knew I’d considered it as a game idea. When people fund a game, they fund a game, and although a lot of gamers will be understanding if you explain major changes, some will not. Some gamers get VERY VERY angry. This is a no-win situation, either backers get angry, or the developer sticks with what turns out to be a flawed idea.  No game I’ve ever made bares any relationship to my original design for it.

As a developer, paying me in advance could make me lazy.

When you get builders to work on your house, do you pay them the whole sum up front? I don’t. Nor do most people, because you know you aren’t going to get the job done on time that way. Always hold something back. I am quite a motivated guy, but I can see why

a lot of developers will get an extra hours sleep every morning knowing they’ve already been paid for the next years work.

Great design is not commitee design

When I worked for a certain game designer, I found him to be a single-minded megalomaniacal obsessive dictator who knew he was right. Then I ended up as sole-owner and game designer and programmer and discovered I am exactly the same, which was an interesting lesson :D I truly believe that in many cases good game design does come from single-minded, frankly arrogant people who are obsessed with their ‘vision’ and who think they are right. We’ve all seen Hollywood movie cash-ins designed by a team of scriptwriters. I am wary of the fact that with kickstarter you are basically inviting thousands of gamers to feel like they should have a seat at design meetings. They shouldn’t feel that way, but a percentage of them will. That is not good.

But there is the one which nobody seems concerned by but me:

Kickstarter is the absolute poster-child for inequality amongst gamers, based on income. Now I am definitely not a raging socialist, but I know a lot of gamers are, and I find it a bit weird that it doesn’t bug them that when these kickstarter games ship, not only will gamers with more money that them be swanning around with better outfits and weapons, (This already happens in F2P games), but some of the NPC’s will have the names of the ‘wealthy’ backers. Some will even have their digitized faces in the game. Elite is actually naming PLANETS after people who back the game with a lot of money.

Gamers say they hate in-game product placement and advertising. It compromises the game design for the sake of money. I agree. So why are we deciding that the best way to name our planets or design the appearance of our NPC’s is to put that part of game design up for auction? Why should gamers who are wealthy get more influence over a game that those who flip burgers for a living? The cold hard economic reality of the real world is bad enough without shoehorning it into games too.

Now you might say that we have always had this, recently in F2P games, but also with ‘collectors editions’ and DLC. I sell DLC myself. But I argue there is a VAST difference. To buy ALL the DLC for GSB at full price, with no bundle or discount or anything, is still easily affordable for almost any PC gamer, if you really like the game. Not so with all the top tiers of kickstarter projects. Some of them are asking for THOUSANDS of dollars. Who do you know who has a spare thousand of five thousand dollars to spend backing a game?

Years ago, it was common for bands to have ‘fan clubs’ where you could enter competitions to ‘meet the band’. Now bands sell ‘premium passes’ to wealthier fans to meet their idols backstage and have their photo taken. Anyone can get will shatner’s autograph, you just need to hand over hard cash for the ‘honor’. I don’t like this. I can imagine wanting to meet with, and shake hands with, maybe even (eek) have a beer with the people who are the biggest fans of your work. But kickstarter doesn’t do that. It hands those ‘lunch with the devs’ opportunities not to the most enthusiastic fans, but to the wealthiest.

Are you sure you agree with that?

Don’t flame me, I’m just asking the question :D If you still want to support kickstarter, I suggest backing ‘sir you are being hunted’, which looks awesome.


Two-stage rockets for GSB

Here is a video of a little experiment:

The idea is to have missiles that go slowly at first, then suddenly boost towards their target. They deliberately start off at a slight angle too. The benefit is that enemy last-minute defense don’t have much time to shoot them down, but if you have a defensive screen of point-defense frigates, then can pick them off before they start their boost stage. The plan is to have this as a frigate-only outcasts-only weapon for the next expansion. Let me know what you think.

Cliffski’s 2012 guide to advertising your indie PC game online.

I get asked about this stuff a lot, so thought I’d do an updated guide…

Pre-advertising considerations:

Have you got a game that is priced at a level that will give you a decent return-on-investment for a site visitor? If your game is <$10 in price, and you do not have multiple titles to cross-promote to a visitor, then stop right now, because you are probably wasting your money.

Have you got a game that people cannot buy right now? Are you hoping they will remember and come back later? If you don’t have some way of capturing them with an email signup or alpha-funding etc, then also probably stop right now. You will do much better if you can get your site visitor to click a few buttons and hand you some money right now.

Are you sure your website runs fairly solidly and fast? Have you used online tools to measure load speeds, and possibly used a CDN to host demos or large screenshot images? Make sure your site is worth visiting before you pay for people to visit it.

Preparation and timing

Open an account with google adwords, or your other ad service of choice. google’s is the biggest, and the most complex. Setting up an account and putting ads together will take a while, so don’t wait until release day for your game. Have everything in place at least a week in advance. Google sometimes take a while to approve ads.

Install google analytics on your website. It is 100% free. Almost every site uses it. Basically you need an account (ideally the same username as a google adwords account, and *link* the two of them), and a small bit of javascript on every page of your site. Put it on EVERY page of your site, not just the landing page. If you host your own sales pages and thankyou pages, you will want to set these up as tracking ‘conversions’ which will let you track sales ‘fairly’ accurately (but see below…). That just means a different snippet of javascript on those pages.

Setting up an adwords campaign

90% of the effort is telling google NOT to advertise to people. Here are some tips. If you know where your sales come from, through sales reports, pick the top 10 countries, and geographically limit your adwords campaign to those. I limit mine to less than 10. for example Australia, Canada, Germany, Ireland, New Zealand, UK, USA.

If your game is PC only I strongly recommend limiting ‘devices’ for the campaign to desktop and laptop computers. Not mobile phones and tablets.

Also limit your language to English, unless you really are getting a lot of non-english sales.

I recommend focusing on clicks, with manual CPC (cost-per-click) bidding. Not impressions.

I set an impression cap per user per day to 8. Letting it be higher reduces your click-through-rate and thus your ads ranking.

Now it’s time to add a bunch of keywords and targeted websites so that google knows where to show your ads. Don’t blindly accept google’s suggestions, they suck. They always add ‘free’ and ‘cheats’ and so on. In fact, unless you are making a F2P game, I’d add ‘free’ ‘crack’ ‘torrent’ etc as negative keywords for your campaign. Only advertise to people who might be looking to actually buy…

It definitely helps to add as many sites as possible to the ‘managed’ part of a campaign. if you just let google choose, not only will you get a lot of really obscure and crappy sites, but you will not be able to effectively analyse the behavior of individual domains later…

Add a bunch of different ads. You might want to try text ads, but I recommend banners too. And different sizes and shapes, to get as much coverage as you can. Some games look better in skyscraper ads, some as rectangles or banners. I never bother with animation (my tests show no effect), but do add lots of variety. Google will auto-sort the best performing ad for you. It costs nothing to have a dozen ads.

I recommend setting a higher CPC for your ‘managed’ placements and a lower one for googles automatic placements. I try to stay under £0.30 CPC as a maximum, which means an average CPC for me of about £0.19.  In some cases, you will have a max CPC way higher than the average. This is fine. Googl;e uses your max CPC as a vote from you showing your faith in your ad. You won’t get charged the max unless someone competes with you at the same bid, so you can sometimes push the max higher, knowing it won’t make any difference :D

You need to set a budget that actually has some impact. This isn’t a plan for people with $50 to spend. Spending less than $500 will probably not give enough data to properly analyze, although you might want to trickle that in over a few weeks. My yearly adwords bill was about $16,000, but it’s been higher than that before.

Running the campaign

Don’t just hit ‘go’ and then forget about it. You will want to check your campaign daily. You can analyze what is going on in the adwords interface, especially the display network tab. Sort by clicks so you can see where all those clicks are coming from. If you set up sales-page ‘conversions’ you might want to look at the cost-per-conversions column, and pause (or even exclude) any domain where the conversion cost is getting much too high. If you are letting google manage your placements on it’s own check they aren’t all taking place on some awful inappropriate site you don’t want to support, or suspect will give poor traffic.

Also.. check the ‘dimensions’ tab, which will show traffic by country. Ensure that including Croatia was not a mistake as it is eating 99% of your budget…

Analyzing the results

If you control your buy/thanks page, and can place javascript on it, you might be successfully tracking sales from it through adwords itself, which makes life easier, but cross-domain tracking is hard, so it may not be working. Even if it *is* working, it isn’t reporting correctly due to people buying the next day from a different PC, buying at home after clicking the ad at work, buying with javascript turned off, or buying after trying the demo at a friends house, or buying after reading a review you only got because someone else saw the ad and…etc etc. So what we need is another non-purchase way to judge the quality of our ad traffic…

Enter google analytics.

some menu items worth investigating…

If your analytics is set up right, and linked to google adwords you will have a button on the left of the ‘standard reporting’ GUI for analytics that says advertising. You want the adwords, then placements sub menu to list where your ads are showing. This will show up a few howlers immediately, where site ‘A’ will give you ten times the average visit duration than site B. You might want to compare bounce rates too. When you do all this, make sure your landing page has some darned content! If it’s just a logo saying ‘click to enter site!!!’ then these stats are meaningless and your site needs changing.

You can manually go through all the ad placements here and note the ones with decent traffic, and then go back to adwords and pause/exclude the poor performing ones, which will hone your campaign to be more effective. If you do this, you might be able to afford to raise your CPC, knowing it’s only going to traffic that is actually seriously interested. Over time, your CPC bids should rise, and your targeted audience should narrow more and more.

One tip I employ to make things easier, and less cluttered is to set up an ‘advanced segment’. You will find the button just above the chart at the left. Click it, and follow the instructions to build up a segment called ‘likely buyers’. I use the fairly crude metric of ‘visit duration > 60 seconds’, but you can build up complex filters and exclusions here if you like, and know your audience well. Once set up, click that segment so that it filters the traffic for you. You will then be able to look at the lists of placements purely filtered through that segment.

Analytics is scarily complex. I recall another indie dev having hysterics when I demonstrated the animated graphs over time feature :D

You might want to  try looking at ‘campaigns’ then pick an ad group and then change the ‘explorer’ setting at the top from site usage to ‘clicks’. You then see all the adwords CPC  data, and even ROI and margin data (if you have the sales tracking working). This is also very handy, but always be aware that this is only listing directly-trackable income

Remember it’s all about narrowing where you show your ads so it works FOR YOU. Every game sells differently. You MUST get your own data.

Tracking non-sales events

Say you want to get people to download your demo / sign up your newsletter or signup for an account…whatever, and track that rather than sales. This can be done too. You probably want to set those events up as ‘conversions’ in analytics and assign them a value. That will then get tracked just like sales and those charts will show you your ROI etc.

Remember… it’s very hard to be 100% sure you know if your ads are really working. You *do* need a bit of faith. If in doubt, ask yourself why coca cola spend so much if ads don’t really work. or read ‘the advertised mind’ if you want further convincing. 95% of indie game developers seem to do no advertising. Of the 5% who try it, 90% seem to put no effort into doing it right, so they give up. You can do everything I’ve described in one day, and it *does* work, if you pay attention to it all.

I’ve described google adwords, but many other ad services are available, but ANALYZE THE RESULTS. Don’t just ‘trust’ them to work. I found facebook ads to not work, and stumbleupon to be a waste of money. You may find the exact opposite.  Adwords will give you a good baseline to compare against other ads. I’d definitely try them first, before you talk to websites that quote you hilarious costs for impression based ads. In the last 365 days, my adwords spend was about $16,000 and I got 30 million impressions and 73,000 clicks. So $0.21 CPC and $0.53 CPM. That’s just as a point of reference for when you are quoted $10 CPM for untargeted traffic  :D

If you found this post helpful, please tweet about it. I want small indie developers to have a fighting chance against the big boys, and this is the best help I can be :D