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

Why friends try to stop you being independent

I notice people doing this a fair bit, to people who are considering quitting their job, or starting up as an indie developer. My experience is obviously from indie game development, but the same applies to almost any ‘going indie’ career, even if it’s opening a corner shop. Why do they try and stop this? and do they have a point?

Reason #1 “You won’t make any money”

This often translates into a subconscious fear that you “will” make some money. If you do, then their own decision to stay in a normal job seems kinda crazy. Note that often the people who work for themselves tell you to go do it, it’s the ones in safe jobs that tell you that you won’t make any money.

Reason #2 “You will forfeit your bonus”

Isn’t it interesting how every job has a bonus and a promotion and a raise ‘just around the corner’?  Also, it may or may not be news to you but those share options they keep giving you are probably worth jack-shit. Ask to exchange them for just a ferw thousand dollars and see what they say. They are a way to keep you from quitting without it costing the company anything. And that bonus? It’s probably not going to happen. Look around your workplace and check that you aren’t just reciting that Luke/Uncle Owen scene. “You can go to the academy next year luke…”

Reason #3 “There is too much competition”

Yeah right… It would be crazy to start up a new search engine Sergey, have you not seen yahoo and Lycos, they OWN this market. And what does Zuckerberg think he is doing, MySpace is already the king there… Times change. The games industry is always changing and growing. Sure there is a lot of competition, but a lot of it sucks, and there is room for a few more. If there was no competition the same people would say the market is too small, or it was impossible to create a market for that.

Reason #4 “It will be lonely”

I met guys in offices who would sit with headphones on and not talk to anyone for the whole day. Going indie doesn’t have a monopoly on loneliness or boredom :D. Plus fellow indies are a chatty and likable bunch. There are probably a few developers, maybe not in games, but certainly in software, living not far from you. Once you get over the initial geeky shyness, getting out and meeting other devs becomes great fun. With skype, instant messaging, phones, facebook etc, you don’t have to be a hermit to work for yourself. On the whole, I’ve found people who work for themselves to be a much more optimistic and cheerful bunch than average.

Reason #5 “You’re wife/husband won’t let you”

Remind them of the ‘richer/poorer’ bit in the vows :D But seriously, your friends don’t know more about your private situation than you do, so don’t listen to them on it.

Reason #6 “It means no job security”

Must I point you at recent layoffs in the games industry? We aren’t like the car or oil business. When game devs go broke you get no notice. I mean NO notice. The doors are just locked one day, and if you are REALLY lucky, you won’t lose a few months salary that they lied to you about and said was ‘an admin problem’. Being indie is MORE secure than a proper job, because you have multiple income streams. If steam stop selling my games tomorrow, I’d be fine (gutted, but fine :D), because there are myriad other deals scattered about that trickle in some royalties. Plus royalty income slowly tapers down, you don’t get a sudden shock and a P45. Don’t get me wrong, being indie does ‘feel’ insecure for the first five years or so, but it really isn’t.

Convinced? :D

Another Gratuitous Tank Battles patch!

So… I’ve released version 1.014 of GTB. It has some under-the-hood changes nobody will notice (yet) but also this:

1) Added hint to make divisions if you have lots of units and have not created any yet.
2) Changed the way unit icons are created so they make more sense for long-barrelled guns.
3) Added new option to allow the game to auto-manage and update divisions for each type of unit.
4) Fixed bug where if you didn't restart the game, you kept unlocking the same unit.
5) Added support for colorblind mode.

The big change there is 3). I wish I’d thought of this originally, but like all my games, they evolve and improve in response to player feedback. The game will now automanage and keep up-to-date a separate division for infantry, vehicles, buildings and support structures/vehicles, and you can swap between them as before using tab or alt+tab.

because I’ve added this *now*, it’s not the default, and you need to go into the division manager and turn it on. if I was more organised, I’d be tracking that as a stat. The trouble is,  you get a lot of people buying games cheap in a sale who play 2 levels, then never return, which is bad for all kinds of reasons (it encourages designing purely for the casual gamer, for one), so ideally I’d be tracking people who play 10+ missions, and then analyzing what percentage of them even use divisions, and how many of them enable auto-management. My stats tracking sucks, yet again. I’ll get it right in my 99th game, I promise!

4) was also an embarrasing bug that I wanted to fix, and is the main reason I suddenly rushed this update out without much fanfare.

In other news, I’ve been working on some future stuff (early days yet) and also re-uploading a bunch of ‘signed’ exes to keep the paranoid gremlins at Norton Internet Security happy (god knows why).

The steam sale was pretty good, but not wallet-burstingly so. We do live in strange times. As a game designer, I’d prefer less, high-margin sales than a whole slew of people grabbing GTB for cheap and hardly playing it. I’m definitely from the hardcore gaming school, rather than the ‘angry-birds’ school of gaming, and I hate to see gaming change to the point where everyone owns hundreds of games, but has played hardly any of them. That’s not a market working properly, it’s like a weird mind game.

It’s amazingly sunny right now in the UK. I know because my solar power readout tells me. Obviously I’ve never gone outdoors. That would be mad.

Independence & control Vs productivity

There is a tension as an indie dev between these forces.

if I rely entirely on middleware and someone else’s engine (Unity + EZ-GUI + some sound stuff + whatever) I can be extremely productive. I don’t waste any time wondering about correct vertex buffer creation flags or optimising sprite rendering, i can just work on the game.

But then when there is a bug in EZ-GUI or a feature missing from Unity, I am totally screwed. Suddenly I’m coding what they support, not what I want to create.

Similarly in business, if I rely entirely on steam for my sales, I don’t waste any time worrying about website design, visitor numbers, bounce-rates, chargebacks or coupon/discount processing, no worries about web server stability, demo download speeds, CDNs and other fluff. I can just work on the game.

But then when steam turn down a game, say they don’t have a slot for a promotion, or change a royalty rate, or screw up a payment (this has NEVER happened to me with steam), then suddenly I am screwed. I become entirely financially dependent on another company, and in that case the term ‘indie’ becomes somewhat shaky.

It’s a constant war between which is more important, and the answer depends on your circumstances, your skills and your attitude, not to mention your free time and team size.

As a lone indie, obviously I have pursued the totally insane route of complete independence in all areas. Even energy independence. Ahahahaha!!! I code my own engine for GSB and GTB, and all my games. I use 3rd party sound libraries just because I frankly find sound coding dull, but everything else is pure me. It’s a big concession to even resort to using phpbb and wordpress, I can tell you…

But something has to give. I am possibly taking on too much and maybe not doing the best job of everything. I need to give way in some direction. Shockingly, and maybe surprisingly, I find myself thinking of giving way more on the business side than the technical side. The thought of abandoning direct sales is madness, but the thought of obsessing less about them, and spending less time on trying to eek out every last bit of direct sales profitability certainly appeals. It also appeals regarding PR. GTB *may* be the last game I handle my own PR for exclusively. (pls don’t email me offering to be my PR guy. The best PR people are already known to me, and frankly if you’re not, then you possibly aren’t that good… :D)

I think I need to spend more time on design, and less on code and less on business. The code side is slimmed back easily by just picking less insanely complex projects for a bit. I also need to spend more time actually relaxing and maybe even enjoying life. A close relative of mine is unwell, and it makes me realise how important it is to enjoy life while you can. I may even manage to sneak in a trip to a nice sunny beach soon.

The only *wrong* decision for me at this point would be to bumble along as I am. I think cracks are starting to show.

My experience with code signing certificates for games…

Hands up everyone who knows about code-signing certificates!!!! anyone?

Well they are quite dull, but you have all seen evidence of them, or their non-existence. Code-signing has been around a long time, but for most of the time it’s been a topic that indie game devs could ignore. Essentially, as I understand it, code signing is a way for people to know that the exe file they are downloading is the same exe file it claims to be, and that it doesn’t have any malware in it (not really…but…read on).

If you download an .exe file from the internet using internet explorer, you get scary message windows popup and warn you that your house is about to explode and that swarms of locusts will descend and kill you. However, if that exe file is code-signed, the message is marginally less scary, and you are told the locusts are probably not deadly, and that the explosion will only cause collateral damage.

Some poor sods who have the misfortune to have malware called ‘norton internet security’ probably don’t even get that far. This malware just deletes any exes it doesn’t personally like the look of, regardless of content or publisher… sigh.

Anyway, the get your code signed (and thus scare your potential customers/demo downloaders) a *bit* less, you need to pay an exorbitant sum of money to some supposedly trustworthy company that will verify who you are. I paid $99 and got a few emails asking to see bill or bank statement scans (like they can’t be forged in 10 minutes in photoshop), hand-wavey claims that my identity will be verified in ways unmentioned, and a 1 minute phonecall from a very bored guy in an indian call center checking that I knew all about my submission.

In other words, rigorous FBI-level security clearing stuff that mafia-funded russian hackers could not even begin to circumvent. Oh no…

And then you get a special URL that plonks something somewhere in your copy of internet explorer (it HAS to be IE, what irony!) and are left to fend for yourself.

A bit of experimenting showed that you can ‘export’ the certificate from IE onto your hard drive, at which point you pick a password for it. The next bit it easier, because if you use inno setup, there are simple instructions of enabling it to auto-sign your installers, once you’ve downloaded a ‘signing tool’ from some third party.

And then lo! You have code-signed installers. This means Internet Explorer and Norton Internet Stupidity are very very very slightly less suspicious of my games and demos. Hurrah! Thanks to crass stupidity at the highest levels, they still spout warnings like ‘This file is not commonly downloaded, and therefore must be a virus’ (which are never ever downloaded, clearly). But, it’s a slight step in the right direction.

People are getting more and more used to using clients like steam to get games, and more and more wary of random internet exes. I thought I should at least do my tiny bit to stem the tide of the total extinction of a free, open internet where people can sell games direct, by actually signing my exes and making them seem safer to the wary. Pity that the entire code-signing system was exposed as totally insecure, but I don’t make the rules…

The maths of unskippable piracy warnings

I bought a new blu-ray movie DVD and sat through three long, boring unskippable anti-piracy notices at the start of the movie.

Lets assume every person who watches DVDs / Blurays puts up with a similar inconvenience approximately once a week on average

Assume a total therefore of twenty seconds of time wasted per week, per viewer. 52 weeks a year is 17 minutes of wasted time per year, per consumer.

Assume 200 million US consumers + 200 million more from Europe, Japan, Australia etc, as a conservative figure.

That’s 56 million hours wasted per year by people watching this stuff. (6,392 man years)

at an average wage of say $16 an hour (src: http://www.data360.org/dsg.aspx?Data_Set_Group_Id=773)

that means pointless unskippable copyright notices cost the global economy $896,000,000 a year, enough to create maybe 18,000 decent paying full time jobs.

Looked at another way, the lost time equates to (assuming average life expectancy of  78.1 yearts according to google) the lives of 81 people.

I hate piracy, but I hate stupidity too. And unskippable piracy warnings are not only stupid, they are wasting the best part of a billion dollars a year.

Pass it on… :D