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

How to 10x your indie game development process

Oh yes, I know all about search engine optimization. Can you tell?

I talk to a lot of indie devs, although TBH not as many as I would like to, and I find many of the discussions illuminating. Because I work mostly alone in a little room in a field in the shire, I get so used to my way of doing things that its easy to forget there even are other ways. However, one of the most illuminating things is discovering just how long it takes most developers to do things (whether its code, art, biz dev, production stuff, whatever), and I am constantly shocked at how my output seems to not be 20-30% higher than many devs, but seemingly 300-400%+ more than many developers.

This blog post will try and explain how.

Its harsh. This is not touchy-feely happy cliff. This may annoy you, and make me seem a harsh, competitive, aggressive workaholic. This is reality. Most people don’t want to know this reality, but they claim to want it. This will not motivate everyone, but here goes…

Tip #1 Stop fucking around with ‘fun’ disguised as work.

Reading reddit is not work, unless its 100% actual new, informative, well-reasoned and argued and productivity or sales-boosting information directly applicable to indie game development on the platform/genre combo you work in. Reading about how to make mobile games about ponies is not going to improve your bottom line when you are a PC strategy game developer, no matter how much you kid yourself it will.

This also includes playing a dozen new indie games a month, or watching youtube lets plays or twitch streams of a whole bunch of new games. Thats not ‘market research’, its just goofing around. If you are currently between titles, and thinking seriously, and doing market research into industry trends etc, then yes, MAYBE you can claim a few hours for doing this as ‘work’. If you current game design is pretty fixed, and you are > 6 months away from release, it really doesn’t matter a fuck what is #1 in the indie game charts and how it plays. Thats not work. It will NOT change your immediate plans, don’t pretend otherwise.

Tip#2 Work somewhere quiet.

No a coffee shop is not quiet. Nor is any room in your house/apartment where other people walk through regularly. You need to be an end-zone where people only enter your room if they need YOU. Unless the house is literally on fire, someone has been shot, or imminent death or suffering beckons, nobody should disturb you when you are working. Nobody. You are in isolation. Don’t kid yourself that ‘you work better in a gregarious group of chatty people’. Thats crap and deep down you know that.

Tip#3 Get a big monitor, get 2 big monitors. Don’t feel bad if you have 3.

You cannot get a lot of work done on a tiny laptop. Thats silly. its 2019. Get some big monitors, they are cheap. I have twin 27″ monitors at 2560×1440 res. I couldn’t work at my current rate with less. I spend less time alt-tabbing than you. I can glance at my inbox without a context switch from game dev. I can view loads of my code and my game at high resolution at the same time. Monitors are cheap. its a business investment. Trust me. Buy 2, big, high quality ones. Buy them now.

literally the bare minimum

Tip#4 Shortcut keys and batch files etc

I feel physically pained when someone right clicks and selects ‘copy’ or ‘paste’. How many shortcut keys do you know? Copy & paste & cut and select word, select line, select page up + down? Windows + R Windows+F? Alt+tab? Shift+alt+tab? Windows+arrow keys? Know them all. You actually do not need a mouse for much. the mouse is SLOW. I use batch files to process files in photoshop quite a lot. I also know a lot of shortcut keys in textpad32 and paintshop pro. Also… if you use visual studio are you using visual assist? its amazing. use it. USE every productivity tool imaginable. leverage what computers are good at. Get a fast PC.

I know devs who use zipped up files and drag-dropping to back up their code. FFS. Use source control and cloud backup software that automates all this for you. If code and software exists to make you more productive USE it. Use email filters and rules. So much time-saving software exists, use it.

FFS I even have my living room lights come on automatically at sunset without me pressing buttons. Automate the fuck out of things.

Tip#5 Comfort

You will work longer and harder and happier in a nice work environment. When it comes to my office, no expense is spared. If you are an indie developer, your desk and office chair are probably more important to you than your car, TV, cooker and sofa combined. You will (hopefully) spend a lot of time in that chair at that desk. Get a really good one. try many, the really good ones will last a while. Mine is an aeron, 9 years old, still perfect. I actually had a desk made for me (surprisingly cheap actually), It will last forever. Do not make false economies here. Mine was about £800. Thats under £100 a year so far for the place I park my ass most of my life.

other chairs are shit

Tip#6 Mindset

If you are working on your first game, I hate to be that ‘one guy’ who breaks with the happy-clappy hugs and flowers online twitter group hug, but no, you are not an indie game dev, you are a wannabe. You are trying. you might one day release a game, in which case, well done, welcome to the club. the world is littered with people who try and fail, and those who give up. Someone who is ‘working on a novel’ is not a novelist, they are a hobbyist.

If you want the warm glowy feeling of being an indie dev who entertains people and ships games and makes a living from it, they you need to work hard as fuck, for a long time, and get your head down and get the product shipped. Do not surround yourself with well meaning people who tell you what you want to hear. Thats a route that spirals down and down into insular failure and disappointment. If your game is behind schedule then you are failing. Stop whining and work harder, and keep that attitude until you finish something.

Also… don’t kid yourself that you have worked ‘super hard’ because you put in a solid 6 hours work at your desk today. Thats great, but frankly someone flipping burgers has worked longer and harder than you today. You claim to want to make a secure living in one of the most competitive, sought-after, cut-throat industries in the world? Well so does everybody else. Most people fail. Most people lose. You will not make a success of this working less hours than someone doing an unskilled minimum wage job. Do not blame me for the harsh realities of competition, but more importantly do not pretend they don’t exist because that truth is inconvenient.

This job is not hard. You want hard? go work as a soldier, a police officer, as a trauma surgeon or an astronaut. game dev is fucking easy. Don’t kid yourself.

Tip#7 Focus on one thing well

If you are good at making 2D RPGs, make 2D RPGs. Unless you have three years salary in the bank, and a lot of confidence, and are absolutely MISERABLE making those games, do not change. Every 2D RPG you make improves your skills, your experience, your audience, your engine, your productivity and your tool-chain.

I’m a competent programmer. I could make a 3D physics game next. Maybe I have a cool idea for one, but for fucks sake that is a BIG leap away from 2D/iso strategy/management games. Why throw 90% of my audience, experience, skills and technologyonto a bonfire just to switch genres and styles.

You might decide to change genres/engines/languages etc because you are seeking artistic fulfillment. Thats great, but thats the luxury of a leisure activity. Again…3 years salary banked? go for it. Else…thats almost certainly a poor business decision. Get good at a thing, then do that thing until its a big success. There is HUGE opportunity cost when you learn a new genre/style/language/technology. Make sure you are fully aware of this. Few genres are so small they cannot support a single indie dev.

source:spiderweb software, experts in genre focus

Tip#8 Seek out harsh but real criticism

I get a fair few really good reviews and emails from people who really like my games. I love them. they make me feel happy, and warm, and appreciated and other nice things. its a good feeling. They don’t actually make my games better though. The emails you hate, the negative reviews, the dreaded steam refund reasons… these are the harsh angry truths that you do NOT want to hear, and yet you must. When someones tells you ‘i could make a better GUI with my ass whilst high‘, you may be angry, depressed, furious, insulted…but you need to hear it. maybe your GUI *is* bad. Maybe it could be improved.

to be fair, that slider was really crap. its better now.

Do not insulate yourself from the negative. negativity can lead to change, improvement and accomplishment. Data about what you are doing badly is absolutely essential in improving. If nobody ever tells you your games art direction is shit, or your game title is stupid, you will never improve it. If you *absolutely* cannot cope with harsh, hurtful criticism, then you probably should not try to make a living from indie game development.

Tip#9 avoid chances for distraction

I used to use rescuetime. I also used to use an hourglass to focus myself on work. I now find I need neither. I’ve worked so hard, so long, I’ve internalized what they used to do for me. Most people aren’t at that stage, and they get distracted. if your phone distracts you from work, switch it off. Nothing will explode. We survived thousands of years without mobile phones, you will be fine for entire eight hour stretches. You don’t need twitter during work hours, you don’t need to check the news sites or reddit during work hours.

If your code takes time to compile or art takes time to render, learn to multi-task with other WORK stuff. Set aside small tasks, like replying to forum threads, easy tech-support emails etc, so you can do them when you are waiting for your work to complete. Schedule other activities that you need to do anyway around times you know you are waiting for your PC. I mow the lawn/chop firewood while my PC renders out youtube videos for me. If my PC needs to reboot and update the O/S I will set it off before I have lunch, or last thing at night.

Avoid situations where your PC is sat there doing something (rendering / compiling / updating) and you have nothing to do but SIT THERE. You will get distracted, your mind-state will collapse, your productivity will plummet.

source: XKCD

Tip#10 Avoid bullshit productivity planning admin

Some peoples reaction to stuff like this is to immediately start planning to be more productive. they will start a productivity planning spreadsheet, with nice formatting, some color-coding and even a company logo, or they will google for inspirational quotes to print out and then stick up around the office. or they will start making an important list of the top ten things they have learned about productivity. They might hop onto discord to chat to fellow devs and share their new found enthusiasm for productivity with their buddies…

This is all bullshit.

The true response to this blog post, which is ending very shortly, is to close your browser. (yes CLOSE it), and do some work. Internalize the *attitude* not the specifics, and actually DO something. In other words, do not become like this classic, absolutely on-topic sketch from the life-of-brian which does a great job of showing exactly what I’m on about.

Get back to work and stop fucking around.

Creating a real working environment for game development

It drives me mad when I talk to some younger indie devs how little actual *work* they do. They are hardcore serious game devs, into game jams, and going to games conferences, and maintaining twitter, instagram and facebook pages about their game, and they often talk at shows, or attend talks, or tweet about talks, and watch tons of past talks, and play fellow indies games, and meet up at game dev meetups and try out the hot games and compare them to other games and…

…very rarely they sit in front of a keyboard and code a game.

This is a big problem if you actually want to make a living from games rather than just enjoy the ‘indie lifestyle’. FWIW, the indie lifestyle is easy. Dye your hair (or for extra points just part of your hair) bright blue, get an apple laptop, and cover it in stickers from games shows. Buy a GDC T-shirt (or for extra points, one from a smaller show), and spend at least three hours a day on social media. Bonus points for every 100 posts on gamedev subreddits talking about tech and marketing and design issues. Super bonus points for getting into heated twitter arguments about whether or not games are art or inclusive.

Oh obviously, you need to have a name and genre (maybe even a game jam concept?) for your game, so you have something to talk about.

This is all fine, and reminds me a LOT of the guy who persuaded me to take up learning the guitar when I was at college. He had been playing the guitar for about 3 years and was very cool. He showed me guitar tab one day and I bought a guitar the next month. Within 2 months I was a better guitarist than him. I ended up playing in 2 bands, and working briefly as a session guitarist, as well as teaching probably 100 people to play. AFAIK he never played a gig.

The difference between us was that I wanted to play the guitar and learn how to play well, whereas he wanted to be a guitar player. This was probably related to a desire to be cool, or get women to sleep with him, or both.

My advice is to know which you are. Are you an indie developer because you love the indie scene, and the people? Or are you an indie developer because you want to make games, ideally full-time? I also suggest that if its the latter, you need to lock down and optimize WHERE you do it.

Briefly, when I quit my job to go indie the first time, and my wife was at work full-time, I experimented with coding in coffee shops, because thats what they show people doing on TV and in magazines. It was crap. They are full of mothers with screaming kids, expensive (but average) coffee, no stability, no room, no peace, an environment 100% NOT conducive to C++.

this is not work

You MAY be one of the 1% of people who can program and design games and do real serious *deep work* while in a noisy environment you do not 100% control and surrounded by other people who often interrupt you. You really may be… but you probably are not. Almost everyone can concentrate better when things are quiet. Programming especially requires *deep* concentration, that is easily shattered and hard to rebuild.

In short, unless your environment is quiet, free from clutter, dedicated to one thing (work) and set up to convey that this is a WORK location, not a chill-out zone, then you are not going to get much done.

My tips?

Get a dedicated room in the house/flat if you can. If you cannot, then set dedicated work times, when you are not to be disturbed for any reason except a literal burning building…

Get an office chair, I recommend an aeron but cheaper alternatives are available. Set it up to be perfect for typing and reading, not slouching. You are *not* going to work all day on a beanbag or a sofa. You just are not.

Only people insecure about creativity think beanbags will save them

If its not quiet enough, get noise cancelling headphones and wear them.

Do not fill your desk and office with lots of fun toys and other distractions. Yes, you are making a fun game, but 95% of your time is work and implementation. Don’t confuse your subconscious. Are all those desk toys REALLY making you more creative or just distracting you from actual work.

Most of us are pretty shallow. We really care about what other people think of us, and when we are young, especially if we are single, we obsess about seeming cool. Work is not cool, work is for serious grown-ups who are boring. Thus we spend a lot of time trying to look cool, rather than be effective. If you saw me sat here right now, unless you noticed the framed prints of past games on my office walls, you would assume I’m working in fintech or IT. Its a very un-gamey environment, and it keeps me focused.

When you have shipped game #10 and sold game copy 1,000,000, feel free to fuck around. I *do* indeed have a child-size Tesla model S propped up in my office, and a toy car with toy robots on my desk, and am happy to be interrupted by cats and visitors all during the day. I can afford to be slack, but it was not always the case.

Set your environment up to be worklike, and you *will* get more done. We are simple animals and highly influenced by our surroundings. Stop trying to be cool.

How to use twitter and be happy and enjoy it.

When I meet fellow game developers and the topic of social media comes up, the scorn for twitter is almost universal. Even people who seemingly rely on it a lot, and have a big social media presence tell me how much they hate it, how divisive it is, how abusive it is, how they wish they didn’t have to be on there.

I love twitter. I find it interesting, fun and positive, and it makes my life a bit better. How on earth can this be true?

(background: I’m a 49 year old UK game dev with about 10k followers, running my own business but using twitter 50% for biz stuff and 50% for laughs).

I think the big mistake people make with twitter is that they are confused about what it is. Twitter is not the Harvard debating society. It is not the BBC. Its is not CNN, it is not your safe space, nor is it a political campaign rally, or a movement for social change. Twitter is a huge open-bar with drunk people sharing funny gifs of cats falling off things, and memes, and bad jokes. It has an element of stand-up comedy, and element of wild party, an element of drunken argument, and its not going to change.

Imagine blundering into the final hours of a drunken stag night/hen party and trying to deliver a lecture about gender politics, or inequality, or trying to argue about austerity. Imagine how well that would work out. Its the wrong forum. Its WORSE than a drunken stag party because so many people are anonymous, and people who you do not *vaguely* know, often from another country. How do you expect it to work when you bring up the issue of gun rights, inequality, or anything else to do with politics…

I’m very political, and opinionated. I have VERY strong opinions on climate change, but despite some eco-tweeting, I don’t vaguely expect that I will change anyone’s opinions on there. Basically life is too short. I tweet when I’m drunk, or find a silly video or interesting website, or have some crazy image of something. I vent angry tweets about trivial things (TV continuity announcer volume levels, donotreply email addresses etc) but I’m not kidding myself that this affects social change.

If you are hating twitter, you are basically doing it wrong. Immediately block or mute everyone you don’t like. Why the hell did you ever follow them. Don’t try and use hashtags to change the world. Follow a lot more silly accounts that post fun stuff. There is an endless supply of funny meme accounts, comedians, and other amusing stuff on twitter. I follow accounts that mock the lack of plates in pretentious restaurants, the stupidity of some internet of things inventions, and an account dedicated to things that annoy British people. Its rare that one of these wont make me smile every day.

Don’t complain about ‘toxicity’ on twitter. Its just a mute button away. You are doing it wrong.

Dealing with a workaholic temperament

There is a huge perception gap between how people perceive those who are wealthy/successful/accomplished, and how those people really feel. I’m not a billionaire, or a nobel prize winner, but by the narrow criteria of solo indie game developer, I’ve had a lot of profitable games, certainly made decent money, and should be feeing pretty content, stable, secure and pretty much able to enjoy life in the way most people would choose to do so. The ‘me’ that people who do not really know me see, is someone with a stupidly fast car, nice house, decent income, and on the face of it, no worries whatsoever. He must be really chill, and really happy.

This is a superficial view.

The reason I’ve done so well in indie games (and other earlier careers like IT), is that I have a completely obsessive workaholic nature. I always overwork, and aim to overachieve. When I was trying to be a heavy rock guitar player, I didn’t set my goals at anything other than the very top. At the time, the best guitar teacher in the country was Shaun Baxter, so I took weekly lessons with him (involving 3 hours each way train journey with a guitar case) at great expense. I saved up to do a course at the Guitar Institute. I bought books of guitar-tab by yngwie malmsteen and steve vai. I read about steves 10 hours a day scales-exercise regime and tried to copy it. I was playing guitar all-the-time.

When I worked in IT, I was told that the ultimate qualification was the MCSE. I studied really hard, and got top marks in practically every exam towards it, getting an MCSE really early, and allowing me to earn a cushy £54,000 a year as an IT contractor (about 20 years ago). When I had an MCSE hardly anybody had one, it was seriously hard to get.

So obviously with programming I’ve taken it equally ridiculously. I code a LOT, and I don’t trust other peoples code. I use C++ and STL, and tbh I’ve spent a lot of time profiling some STL stuff to ensure I am not compromising performance by using it (some iterator stuff *is* slow.). I code my own engine (obviously) and even rewrite my own versions of some of D3DX because they were hilariously slow. I work a LOT, and I think about work a LOT. My bookshelf is 95% code/business and 5% science fiction.

Now the end result of this is great if you judge someone by their bank balance, but health/quality of life wise it can be *pretty bad*. Annoyingly for anyone reading this with physical health problems, I am fine. My heart was described by a doctor as ‘pristine’. my BMI is in the normal range. I am rarely ill. Physically I am not in bad shape, although my cholesterol is highish. But as for my state of mind: thats more kinda frazzled, and bizarrely, its not by alcohol!

Being a workaholic/perfectionist can be very negative because you see the world through faults, problems, errors, failings and potential disasters. I can be very depressed by the state of the world. I can be very negative about the quality of my own work and my prospects. Always worrying about the future is something I’ve kind of had since childhood, but throwing yourself massively into work does not make it better. They say the best things for your mental health and your lifespan are to forge many meaningful relationships with people. Not Facebook friends, but people you physically hang out with. I don’t do nearly enough of that, partly due to being an introvert.

The best thing for my lifestyle in the last year has been falling into a habit of regularly playing online games with buddies whist we voice chat on discord. This is the equiv of a pub for me, and its great, as my game buddies are all indies (we have a lot to chat about) and all work from home, so we are all basically seeking the same kind of sociability. No amount of self-help books or meditation will give me the same feel-good effect as regularly ‘hanging out’, even if its over voice, and not physically.

I’m trying hard to cut out other things in my life that are causing me negative feelings. For years I used the BBC radio 4 today program as an alarm, but its basically politicians shouting, and I don’t need to start my day like that. I’m going to experiment with various gentle alarm apps or soundtracks.  I also consume way too much chocolate, alcohol and do too much day-trading for my ideal mental health. I eat chocolate and drink wine for the short-term serotonin bump, and its self-defeating. I’ll keep doing both, but I’m going to moderate them.

Day trading is a weird one, because although I’m not bad at it (if you ignore my current live trades, I’m £8k up this year), and I do ‘enjoy’ it in some ways, its an extra level of stress, and ties me to a roller-coaster of emotions over which I have zero control. Its a needless ‘game’ that I play with real world consequences and ties me to real world market and political news which I should avoid for my mental health anyway. Again, I’m planning to moderate this, almost certainly quitting for good when/if my current live trades turn positive. At my height, I was playing Battlefield 1 on one monitor and checking day trade charts whilst respawning. That was my ‘relaxing’ time.

Managing my mental state is, for me at least WAY harder than managing finances. If you gave me a choice of having to earn an extra £200k somehow, or learning to work less hard and relax more, I’d probably take the former as I’d find it way easier. That has to change, which means I need to take the idea of work/life balance a lot more seriously. Its hard as hell, but I’m trying.

 

 

Risking everything you have to make it as a successful….cliche?

I think the key to making money at something is to invest for the long term, be prepared to lose before you win, to put your money where your mouth is and take big risks…

…to an extent.

You probably know about survivorship bias, where you listen to nothing but the tales of success from people who took big risks. There are definitely many, many cases of people taking insane risks, those risks playing out and them making a huge, incredible success of it. In the world of video games, valve deciding to sink all the half life profits into HL2 AND also trying to create a digital distribution store when retail was still all-powerful was an insanely high risk venture. It worked, and the rest is history. Making a game which fits in no established genre such as the Sims or for that matter, ‘Democracy’ is also a big risk. Doing this entails being prepared to be wrong in a BIG way, and lose 100% of your investment.

This is something I am minded off today when reading a very long, depressing and complex email about a renewable energy investment I made that is being held up and rejected by government bureaucracy (with zero cause) which could, theoretically lose me a fair chunk of money. Real actual *OUCH* levels of money. It will be extremely vexing if this is the case. I tolerate that sort of risk, because when investments like that work, they work very well, and the returns are great.

I’m a high-risk investor who is happy to tick the ‘yes I know what I’m doing and may lose it all’ box on a regular basis. I have some money in lithium mines, some in palladium futures, lots in the electric car company ‘Tesla’ and a bunch of robotics and biotech stuff. Some of this has been a huge success. others… not so much. Overall… I think I’m doing well, but you never get to say that until you cash out. I’ve also invested in indie games, both as a publisher (Redshirt, Big Pharma, Political Animals, Shadowhand) and as a passive investor. Some of these made several times my money back, some have lost me money.

And right now…as I type this I have two CFDs (very short term bets) on Tesla, both of which I am DOWN on, and both of which cost me money each day just to keep the bet running. I have made 37 consecutive profitable trades doing this, but may be close to coming unstuck on these two. Only time will tell. You can probably understand why I thought I couldn’t lose: (The loss calls still make a profit, just at the lower range of my position)

The trick is… I’m never betting the farm. Do not bet the farm. Ever. I’m not even betting a small barn from the farm.

Don’t think I’m not tempted. I’ve seen stock market trades, AND video games, where I’ve thought ‘LOL, this is easy money. I should sell the house, car and liquidate everything else to really max out this sure thing’. Sometimes those trades shoot way up, and I hate myself for being such a coward. Sometimes they go up a bit. Very, very rarely, they crash like a meteorite. The end result of my level of caution is that I’m not a billionaire, but I’m not in the gutter either. This is a *good thing*.

Do not risk everything to make your dream indie game, or fund the writing of your first novel, or even your second or third or tenth. I’ve made a lot of games (at least 20), and even if I thought my next game was a sure-fire hit, I wouldn’t bet ANY money that I couldn’t afford to lose. Obviously this is much easier to say with no mortgage and some cash in the bank. Normally people cannot possibly make a game without spending their last dollar on it… or can they?

These days we have kickstarter, we have patreon, we have indie publishers. if you cannot persuade anyone to give you the minimum money you need to make an early access game through any of those three avenues, then that is a BAD sign and NOT a sign you should remortgage the house or sell a kidney. There is a myth that you have to ‘risk it all’ to become a hit, which is perpetuated by Hollywood movies, and TV shows where this trope of ‘risking it all’ and ‘succeeding just before they ran out of food’ becomes embedded in peoples idea of what it means to be ‘creative’. The romance of the ‘struggling artist eating out of bins who then becomes a billionaire’ is frankly bollocks.

Democracy 3 is a good example. Its a successful game that made me some decent money. Did I risk everything to ‘take a chance’ and make a hit? Nope. I risked fuck-all. I coded that in my spare time while I had a full time job (and a contract to ensure that was ok). I then made a sequel when I knew that the original was already popular. My wife and I both worked full time and we had no kids, so me then deciding to quit and make more games was zero risk, especially as I was already making more from my older games than I was getting in salary anyway. In all my times making video games from 1998s Asteroid Miner onwards, I’ve been unable to pay the mortgage for two months in total.

By all means take some risks. Risks are good. Risk is part of life. Don’t make any decision that could wreck your life and screw up your family.