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

THE END OF DEMOCRACY? OR? …

Democracy is the game I’m best known for. Its the ONLY game I have made three versions of. The very first version was released back before the invention of color television when I was really young. Winston Churchill gave it decent reviews, and the rest is history. It remains my best-selling game to-date, and the one that has got me by far the most press attention, as you would expect given the subject matter and title. The list of weird offers and proposals and deals I have discussed with people over the years (including foreign governments and military institutions) has provided me with enough interesting anecdotes to compensate for my inherent boringness. Its been a fun ride.

Because Democracy 3 was built on Democracy 2, which was built on Democracy 1… there were some coding decisions made right at the start that effectively bit me in the backside years later. The most obvious two were the dependence on directx9 (meaning no cross platform capability) and the development in ASCII (well… MBCS) instead of Unicode. The game was incredibly popular, so not having mac or ipad or linux versions AND not being able to do a Chinese / Russian version was kinda silly and had to be fixed eventually.

With this in mind, I hired people to make a mac port of the game, and for a long time we had linux and OSX versions, even eventually ipad versions of the game. They make up about 10% of revenue (9% mac, 1% Linux), and definitely have paid for themselves over the long run (although I was sceptical at the start. The linux build existed purely as a humble-bundle price-of-admission at the time). The ipad build is *sub optimal*, due to the RAM limitations in the device, but still, it has turned out to be profitable in the long run.

A while ago now, I decided that it made sense to bite the bullet and have the game translated into Unicode, which would allow for non-western character sets, and thus Chinese and Russian support. Who could resist the opportunity to bring Democracy to Russia and China right? After all, as  Spock explains in Star Trek 6: “Only cliffski could go to china”. I HATE middleware, and hate compiler/development environment bullshit, so I had always avoided it, so it wasn’t until Jeff Sheen (Stargazy studios) offered to handle it, that I actually got around to making it happen.

The next part of this story contains so much grief, hassle, WTF moments and ‘how the hell is this even possible’ mini-stories that it is surely worthy of a Klingon opera, or a Netflix miniseries. The short version is that yes, its 2018 and still if you want to code a game and have it seamlessly support Unicode for both display and text entry, and support every possible language known to man AND also run on really old hardware (which often blatantly LIES about its capabilities…) then you are in for a world of pain. A lot of games *claim* to support Chinese and Russian character sets, but they are not doing so fully, they just create a huge sprite-sheet of the few characters they use, and dont allow for modding or user input. Modding is a huge part of Democracy 3 and we wanted to do it properly.

So anyway… today is the day I am declaring that yup.. its done. Finished. Finito. DONEZO, Completahontas maximus rex. IT.IS.DONE. TYhe updates to Democracy 3 we sneaked out (purely Unicode-related bugfixes) last week are the final ones. Development on Democracy 3 is FINISHED. After 4 expansion packs (Social Engineering, Extremism, Clones & Drones and Electioneering), Ports to Ipad, Linux and OSX, and translation into a long list of languages…we are done. I’m sure that it still crashes or wont run for 0.1% of potential players (which is actually a lot for a game that popular), but at a certain point, you just have to accept that PCs are VERY variable, and you will never have 100% compatibility.

Now you might think that with everything that is happening politically in the world right now, surely this would be a good time to be working on a political game, not a good time to finish working on one.

And I say to you people who think this… follow me on twitter or bookmark this blog :D.

 

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.

 

 

Maintenance & breakdowns in Production Line

For a long while I have talked-the-talk about putting slot breakdowns into Production Line, but recently I’ve actually been doing the code, and I now have a working implementation in the game, ready for imminent release to the unstable build on steam, and eventually the full early-access alpha build. The implementation is fairly simple to describe. basically slots break down for a random duration between X and Y, and you can research and then place down maintenance facilities that vastly reduce that repair duration so that the line is stopped for a shorter period.  The maintenance facilities UI has two different circles that illustrate the two levels at which they can reduce repair times.
Thats all very simple, but coding it was harder than it sounds, combined with the fact that it needed some tutorial pop-ups, and it needed a GUI that looked nice and was also clear and usable. All of that is done, and I’m happy with it, so all it comes down to now is a simple case of getting the numbers right. In a game like Production Line, the numbers you set for items are basically the WHOLE game, in terms of long term playability. I can wreck the game immediately by getting these numbers wrong, or less drastically, I can make this new feature and all the work that went into it irrelevant if the numbers are wrong in the opposite direction In an ideal world, the breakdowns introduce just the right amount of complexity, and light-frustration which keeps the game interesting and something that demands the players attention, while the maintenance facilities provide just the right solution, which should come at a price, and with interesting trade-offs. To put it another way: If the breakdowns are no big deal, the maintenance is irrelevant. If they cause mayhem despite maintenance, they make the game worse. Meanwhile if maintenance is too cheap and easy to place, its irrelevant as a decision. Too expensive or difficult and its going to be annoying.
There is no real easy way to pick these numbers, they just have to be experimented with. Right mow, the chance of any slot breaking down after completing a task is 1 in 200. The time it takes (in seconds at 1x speed) to fix them is between  24 and 48 seconds. That time is reduced by either 37.5% or 75% depending how close the nearest maintenance slot is. The slot itself costs $98,800 to place, and requires 8 engineers which cost slightly more per hour than a scientist (researcher). Power draw for the slot is equivalent to most other manufacturing slots, and its footprint is 4×4. All of those numbers MIGHT be wrong. Maybe the slot is too cheap, maybe we need more (or less) engineers to adjust the ongoing cost of maintenance? Perhaps the breakdowns are too frequent and annoying? or maybe so rare, and so cheaply fixed by spamming maintenance that the mechanic becomes irrelevant? Hopefully none of the above! and I also think that the fact that maintenance requires research, and has an area-of-effect mechanic will add new interest to factory layouts, both in preventing sprawl (which works against the mechanic) and also ensuring the expert player leaves regular areas for future maintenance facilities that they cannot yet afford, or have not researched. Expect to see this in the next update for the game, and I hope people agree it makes things a bit more realistic and interesting.

Solar Update

Since I got a new inverter, I have far better logging of the power output of my solar panels, even on my phone :D

I have a pretty small, 2.1kwp (10 panel) ground mount array in my driveway. Its partially shaded at certain points of the day and year, far from ideal. Nevertheless it looks like we are producing about 44% of our August energy consumption from our solar panels.

Thats better than it sounds, because our electrical consumption is relatively high due to

a) Working from home

b) Having an induction hob electric cooker and

c) Having an electric car that charges from home.

We use about 514kwh of energy in August, our peak is about 800 which is January, and probably due to some electric heating in certain rooms, and more hot food I guess.   If we had a new house, with better insulation (this one is insulated as much as it can be given its structure), and larger rooftop solar with zero shading, I reckon we could probably hit 100% renewable in the summer months. Why new-build homes are not mandated to include solar panels is a mystery to me. Its just such an obvious thing to do.

How can these stats about apple possibly be real?

I will never understand the obsession that modern companies have with reducing headcount. Its almost pathological. I totally understand that the marketplace can be competitive and that sometimes you need to cut costs, but this obsession with not employing any humans hits the hardest with companies that quite definitely have the available cash to take on a few extra staff.

The nature of may business (very long established one-man biz, set in a remote rural location, lots of legacy code, home-brew engine) makes hiring people very difficult, purely for practical and technical reasons. I am definitely not opposed to hiring people, and I actually think I’d feel really good about it. Every month I have to pay out royalty checks to 3 different people, and also pay at least one contractor, and it doesn’t feel bad, it feels GOOD, knowing that I’m contributing to the wider economy, and improving other peoples standards of living by creating employment. In some cases, those payments can help kick-start other small businesses who then employ people, and thats just awesome. Isn’t this the sort of thing we are supposed to be proud of as entrepreneurs?

To see whether or not you fall into the category of business owners who are really not doing their bit, take this simple test:

  1. Is it technically difficult, or practically difficult for you to hire new staff for some reason? If so, then I’ll let you off.
  2. Check your profit margin. is it less than 5%? are your company finances looking shaky? are profits falling dramatically? If so, then I’ll let you off.
  3. When you call the phone number for your company as a customer, do you get through to a real live human within 15 seconds? If so, then I’ll let you off.
  4. If you email your company as a customer with a technical support or customer services request, do you hear back from a human within one day? If so, then I’ll let you off.

I’m guessing this still leaves a very large number of businesses who could be doing amazing things employment wise, who instead are sitting on money in a bank and twiddling their thumbs.

Apples current cash hoard is 267 billion dollars. Their profit margin is 21.63%. I’m guessing that you cant phone up and speak directly to an apple customer service person right now, anywhere in the world. Why on earth not? (I just tried…and its a slow, irritating computer voice…to save hiring enough people…). The current total apple workforce is 123,000 people.

So the cash on hand for apple would allow them to give every single employee a windfall payment of $2,170731.

Yup, I had to check that several times to ensure its correct because it absolutely fucking cannot be. They can make every single employee of the company a dollar millionaire twice over. Or they could just spend HALF their current *cash* and make them all dollar millionaires. Lets look at it another way. The average salary in the US in the bay area tech firms is $142,000. Lets almost double that (yeah right) to account for employment costs, office space etc, and call it $0.25 million per employee per year.

Apple could afford to hire one million and 68 thousand tech workers for a year and still not burn through its entire cash hoard.

Or to put it another way, assuming all 123k people earn that crazy bay area salary, apple could double its current workforce, have them all sit on their ass doing absolutely nothing all day, and it would still take 8 years for the resulting cash drain to wipe out their *current* cash mountain.

PLEASE someone tell me my sums are wrong because they MUST be right? It couldn’t possibly be the case that despite Tim Cook being a ‘nice guy’ the first openly gay tech CEO who is trendy and right-on, and popular and seemingly one of the good guys, that he would rather sit on that vast obscene pile of capital and not spend a penny of it on increasing the workforce or improving the income of apples employees? Surely that would not be the case, Especially as Donald trumps recent tax changes are apparently designed to boost employment?

And of course, lets not forget that in the very home of tech-financial excess, San Francisco, there is a MAJOR homelessness problem. Its actually truly shocking. Apple could fix this out of their spare change. In the UK today there was an announced plan to completely eradicate rough sleeping which was put at costing £100 million. Say it should be £200 million instead, which is $260 million, and this would be for ONE city not a country. Apple could do that with one thousandth of its cash hoard.

These companies are not innovators who are making our lives better. They are like pharaohs and emperors treating the rest of us like peasants, beneath their contempt, not even worth saving.