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

non-political environmentalism

I’m an enviornmentalist. No surprise, because I have solar panels and an electric car, and am even planning to build a solar farm. However I am not any of these things:

  • A Hippie
  • Into drugs
  • A vegan
  • An ‘outdoorsy’ person
  • LGBT
  • A pacifist
  • Into face painting and bongo drums / festivals
  • A Socialist

I have nothing against any of those traits. I have buddies with probably all of them. (Not sure about the bongos actually), and there is nothing negative about any of them. It just so happens that they are not me. But if you see news footage of environmental activists they pretty much are always someone with dreadlocks and bongo drums face-painted as an owl, talking about how sustainable living is incompatible with the ‘capitalist system’. These are the people who are chosen to be on TV. Why?

They make more interesting TV.

I’m a fairly boring looking stereotypical middle aged dude with rapidly thinning grey-ish hair and glasses. I’m an office-bound company director. If you HAD to guess by looking at me, you would assume I’m middle-management, married, 2 kids, semi detached house, and listens to dire straits on his commute in his Ford Mondeo. You would not assume I’m an environmentalist.

The reason I’m an environmentalist is practical. Climate change is fucking up the environment, and I happen to live in the environment. I’m also 51. if I was 81, maybe I wouldn’t care (I suspect I would actually…), but in PURE SELF INTEREST, I am aware that unless we sort this issue, my retirement years are fucked.

There are a bunch of myths about the environment that are believed by most people in my position. Such as:

I’m too old to worry about it. I’ll be dead before it gets bad.

Firstly…you don’t have kids? I hope not, because you are just letting them have a fucked up life instead of you. Seriously, do NOT bother including them in your will, or educating them. Who cares right? whats the point of a house and an education if we hit 2 degrees warming in their life. (clue: none, they will be dead before needing either).

Secondly… even if you do NOT have kids…. your timescales are off. We are not ‘waiting’ for climate change to start wrecking us. its started. Do you not even *watch* the news. Sure…a catastrophic freeze in TEXAS that bursts pipes, and wipes out the power grid for days at a time is just normal right? (no). The number and severity of extreme weather events is accelerating. Already. And its going to get way way worse before it gets better even if we take this seriously. Like I said, if you are under 80, yes, it will fuck up your life. Also, just the texas event cost $195billion. Just 1 year, One state.

Texas weather: Deadly winter storm sweeps Texas and US southern states -  BBC News

This is all just socialism in disguise.

My close buddies would laugh at me having to argue this. NO. There is NO link between left/right politics and environmentalism as a goal. Sure, a powerful state could ‘fix’ climate change with massive taxes and massive state investment. SO could a revenue-neutral carbon tax that shifts the tax base purely towards pollutants and away from income. One of the most effective companies doing something abouit climate change is the car company tesla. A capitalist company run by a billionaire, and occasional worlds richest man. Elon isnt doing this because he is a communist.

True, a lot of left-wingers are also environmentalists. But there is NOTHING incompatible about capitalism and fixing climate change. It should be seen as a huge business and economic shift that is an opportunity for canny investors to make a fortune. My Tesla shares are up 800%. Thats not socialism.

Elon Musk: 620-Mile Tesla Roadster Will Be 'Part Rocket' & Can Fly 'A  Little'

Its an excuse for big government to control us.

Doesn’t have to be. We already have most of the tools in government to take drastic action. fossil-fuel cars are taxed (at different rates), gasoline is taxed, electricity consumption is taxed. Car efficiency is regulated. Major changes to the way we approach climate change can happen literally by changing some numbers in a database by the government. More drastic measures like a carbon tax would involve new laws/tax policy, but that can be a headache for power-plant operators and oil refineries. The government does not have to VAGUELY get more involved in anybodies life to fix this issue.

It will not affect my country / be good for my country

No. It doesn’t matter where you live, 2 degrees of warming is BAD news for the human race. It sounds like its trivial, whats 2 degrees right? The reason for it is simple, but not talked about, and its nothing top do with sea-level rise (although yup, your beach-side house is FUCKED btw). Its Food production. Food is VERY sensitive both to temperature, and to extreme weather events. Crop yields are vastly affected by climate change. And extreme weather events are generally infrequent enough that we tend to get a decent harvest almost every year. As that ramps up, food yields go down, combined with temperature change to yields and…our food production is going to start to collapse while our population continues to rise.

Crop failure and bankruptcy threaten farmers as drought grips Europe |  Drought | The Guardian

Honestly, even if food prices double, I’m fine.

Great news for you! But I hope you enjoy the idea of living in a gated community with armed guards then, because the fact that YOU can afford food does not mean your neighbors can. Also…even if they can, their disposable income has now collapsed, because food takes up so much of it. That basically collapses the economy. Not your economy, the global economy. Your retirement fund is now worth zero. How are you paying for that food now? Oh and… when entire regions and countries become useless for food production…people leave. They are desperate, hungry, poor and need somewhere else to live. If people think the last decade or so of problems with migration into Europe is bad, its going to get way way worse unless we do something.

Conclusion

You will not be ‘ok’ if we hit bad levels of climate change, and the current forecasts are catastrophic. You might not be ‘interested’ in it (you really think I’m interested in climatology?), you might think ‘its no big deal’ you might think ‘its just for people like X’, but I urge you to rethink all that. Like anything in 2021, Climate Change has been shoehorned into the culture wars and social justice wars. PICK YOUR SIDE! Except actually you don’t have to. People on twitter shout very loudly that sustainability is incompatible with capitalism! Just because its in a hashtag doesn’t make it true. No more than an Ayn Rand advocate saying freedom is impossible without capitalism. Do not let other people decide that environmentalism is ‘not for you’. At its heart, its actually just practical self-interest.

Why Positech Games has no discord server

Yes its true. Prepare to have your minds explode. Positech Games is not on discord. We have no discord server/channel. None. There may be people discussing our games on discord in unofficial servers, we do not no, or to be honest…care. Why?

Its because there are just TOO MANY different places on social media that an indie game developer needs to keep track of. When an indie dev has 8 employees and one of them is the dedicated marketing/social media/PR person, perhaps, maybe, just perhaps, there is some value in having a discord server where that person can be constantly replying to people and talking about the game… but even then I seriously doubt the ROI on that.

Right now, our social media and online presence consists of the following list:

  • My personal (cliffski) twitter account
  • reddits for Democracy3 and 4, also some older games which we never check now.
  • facebook pages for virtually every major game we made. (Only Democracy really checked now)
  • Our amazing forums, hosted by discourse, but paid for on a business subscription by us.
  • This blog
  • The widely publicized email addresses for me, which means a LOT of spam.
  • A keymailer account, that we barely check now (none of the key-requesters actually cover the game)
  • The steam forums
  • Steam curator connect
  • My youtube channel (effectively positech games youtube channel)

Thats ENOUGH. In fact thats WAY too much. Some of that gets constant attention (my forums, youtube, twitter), some less so (facebook, reddit, steam stuff), some is all but abandoned (keymailer, curator connect).

My feeling is that if people really want to find you, then they will. I am a member of a tesla forum, but also follow a spacex reddit. Why the difference? well all the tesla chat seems to be on forums, all the spacex chat seems to be on reddit. I am not (and I suspect few people are) so massively invested in a single social media platform that I only communicate with people that one way.

To put this another way, I suspect if we just closed down our democracy3 and democracy 4 reddits, and the facebook pages, a fair chunk of those users would eventually find their way to our forums or this blog, or my twitter account. I decide NOT to do that, because I really do not want to lose *any* existing followers/users, but the idea of possibly adding another split in the ‘fanbase’ to yet another format is not appealing.

When you think about it, I could also be trying to promote my games through instagram and tiktok and twitch too. Why not?

Its worth thinking about how many different forums you can possibly cope with communicating with your players when you have to also remember that you *need to also work on making the actual game too*. How much bandwidth do you really have? enough for 5 social media channels? 10? 20? Do not kid yourself that you can cope with all of them, as the number is only going to go up in the future, you need to pick your battles.

Plus…sometimes an entire social media platform turns evil (remember Facebook suddenly deciding to charge you money to message your own page followers? or that time they they totally banned me from ever advertising on Facebook because…I dunno, I make games about politics? (yes really)). And even when they do not turn evil, then can turn stupid, like completely deleting the entire online presence of the terraria devs for no reason and with no warning (yes really), or maybe just realizing they suck and giving up (remember google plus!).

I still maintain the best possible platform for an indie developer to communicate with players is their own forum. It can be hosted elsewhere, but NOT for free (they *will* either go bust or change the terms later…). You have NO SAY what the rules or membership of the steam forums are like. You have no real control or ownership of your Facebook or reddit pages, or your YouTube channel. It can all disappear at the whim of someone in silicon valley.

And so… discord, a company with no real business model whatsoever, and entirely funded by venture capitalists who will want to monetize (track/exploit) all the users soon… forgive me if I don’t get all excited about leaping into the setting up, promoting and running of a discord server. There are plenty of other more productive uses of my time.

The emotional satisfaction of physical creation

Long ago, before netflix, twitch, steam, social media, broadband or even Tony Blair, I worked in a boatyard nailing boats together. They were smallish rowing boats. This was hard work, as was building wooden bridges. here is a bridge I helped build.

The Chinese bridge - Picture of Painshill, Cobham - Tripadvisor

And here is a boat I probably helped restore/build etc.

Thames Camping Skiff Hire

To be honest, it was stupidly hard work (often involving lying on the floor while holding a lead weight above your head as someone hammers it.), and not exactly well paid or with great prospects. However, at the end of the day, something got built. You could point at it, and say ‘we made that’, and there was great satisfaction in that.

I definitely don’t miss the physical work, although I miss having very strong forearms and being super slim despite eating like a horse.

What I do miss, to an extent, is the fact that however hard I work, there is nothing *tangible* to show for it. I can point to stuff I bought with the money I made form doing the work, but thats not the same. The work I do rearranges some bits on a hard drive, which then get copied and put on hard drives around the world, but there is nothing to really SEE. I cannot grab a hold of my work and lift it up to the sky in that dramatic fashion people do with their first child in classic TV series ‘roots’.

sidebar: Did you know who played kunta kinte in roots? Here he is from the series:

Here he is older. Yes really. Amazeballs…

Israeli scientists develop prototype of Geordi's Star Trek VISOR

anyway…

I spent a lot of time reading about car manufacturing when I made my earlier strategy game, Production Line, about car factories. I also follow the progress of the electric car company Tesla, a lot, and have got sucked into reading about lithium ion battery manufacture as a result. I am now reading a book on solar farm financing, and solar panel manufacture, because thats the kind of person I am. And my conclusion from all this is…

Manufacturing is AWESOME.

We have gone through a big shift over my lifetime from a world where manufacturing was a big deal, and something people were excited to work in (my father worked in a factory, making various steel things), to a world where factory work is considered menial, and low paid and boring, and the smart people worked in offices…typing.

Now I know that there is more to computer programming than typing, and more to law and marketing than typing…but it still lacks that gritty sense of achievement you get from working somewhere where stuff is MADE.

Ultimately the real progress in society is not being made with an app. Uber is fucking useless unless someone makes cars. Deliveroo is useless unless someone is cooking pizzas. Facebook and Instagram are useless unless someone is making phones. Meanwhile, we all have to eat, need somewhere to live, need decent clothes and shoes, and a decent TV and we need power and heating…

I feel like society has lost respect for the admirable job of MAKING stuff. Real PHYSICAL stuff. We sit in our airconditioned offices looking down our noses at people who have to sweat for a living, or work somewhere with physical goods, without which our lives would be hellish. The scales have tipped too far and they need to tip back.

Besides which…manufacturing has moved on. Its not people working a lathe anymore. Here is a modern battery factory:

Someone had to design that, build it, maintain it, optimize it. This is AWESEOME. I would love to do this. I’m too old to re-train, but if a teenager asked me what industry they should aim for, I would be hard torn between tech (AI/programming) and manufacturing/logistics. I’m going to stick at programming for the rest of my working life, but I’m trying to get involved in another industry, one that actually makes things. I’m sick of just ‘investing’ in something built by someone else. Making things that other people want to invest in is the REAL hard bit, and I suspect the rewarding bit.

The simple pleasure of innocent drama

My wife has now firmly got me hooked on Korean drama series, or ‘kdramas‘ as we now call them apparently. On an average day, I’ll likely watch 2 or 3 TV shows, and almost certainly one of them will be Schitts Creek, Star Trek:TNG or some Korean drama. I think a lot about the appeal of this show and why I choose them, and not any of the more popular ‘trending’ TV right now.

Frankly, I think its a 2020 thing, or more a ‘the state of the world’ thing. Right now, a LOT of stuff is worrying. fake news, social media hell, the culture wars, the infighting in the USA, the looming catastrophic hell of climate change, coronavirus, and so on. There is, in other words, a lot of ‘real life drama’ and ‘real life misery’ in the world. We are surrounded by it, and can barely escape from it, thanks to twitter, smartphones and media everywhere.

real world stress

I think its no surprise then, that for those of us who feel bombarded by such negativity (especially if you HAVE to keep vaguely in-tune with it due to making a contemporary political strategy game), and who have problems staying calm at the best of times, there is some appeal in the idea of escapist TV drama.

But the problem is, too much of modern TV is NOT escapist. Or its escapism into hell, or conflict, or fear, misery, death, suicide and culture wars. In other words, writers are trying to AMPLIFY the current anxiety in the world as entertainment, instead of offering a much needed temporary escape from it. Its very rare these days to find a TV show that does not have a bunch of content warnings about ‘suicide references, addiction, injury detail, drugs, explicit sex’ and so on.

I started watching an HBO show (industry) about city traders. Kind of my thing, but in 2 episodes there has been one suicide, lots of abuse, and lots of frankly stupidly out of place and gratuitous sex and nudity. Thats fine, I’m not a moral crusader but…really? is it so necessary. I know what naked people look like, I know what sex is. You can easily imply that people had sex without us watching it. Its frankly not shocking, or edgy or artistic. Its just kinda tragic. The same is true in Game Of Thrones, or any other ‘gritty’ HBO/Netflix series that thinks its essential to have violence and sex in every drama.

5 times Jung Hyuk and Se Ri makes my heart skipped a beat in “Crash Landing  on You” – Ahgasewatchtv
This is intimacy, Korean style

For some reason, you get none of that in kdramas. Maybe Koreans are prudish, or the censors are. Who knows, but also who cares. I’ve got REALLY into a bunch of Korean dramas that are apparently romances, but the main characters don’t even kiss for fourteen episodes. One is about the military, but there has been so far, 2 scenes out of 10 episodes where someone fired a gun. One person has died. Just one. It was not explicit at all. And yet weirdly, it was still exciting and dramatic.

If HBO or Netflix made star trek:TNG now, then there would be multiple explicit scenes where we saw Picard and crusher having athletic zero-G sex. If Worf had to fight someone with his bat-leth there would be blood and limbs scattered all over the place. We would all be tired by now of seeing riker stark naked. Wesley would be snorting cocaine in every other scene…

And it wouldnt be any better a drama series at all.

Pin auf Cool, Random, Fantastic, Funny, Brilliant Stuff...
This is the ideal male body. You may not like it but this is what peak performance looks like.

KDramas, and older shows like TNG, or even family-rated shows like schitts creek, show that you don’t have to bombard people with sex and violence to entertain them. We live in an age where even the US president is accused of paying off porn-stars, where politicians are often caught taking hard drugs, where the media is packed with the salacious details of celebrities addictions and sex lives and so on. There is enough of this in our lives.

Its still ok for entertainment to be FUN. It doesn’t have to do ANYTHING else than entertain. You don’t have to be making statements about social-justice in every casting decision, and every scene. You can cast people of color in a role without them having to shoehorn in a race-relations plotline (even in space!). We are fine with just enjoying some escapism, munching some popcorn and watching fun things happens and hear people speaking witty dialog. You can have conflict without spraying blood and intestines at the viewer. People can fall for each other without us watching every sexual position in 4K.

Give me more kdramas and less ‘gritty, brutal re-imaginings’. if I want gritty and brutal I’ll watch CNN.

The irritating last-minute bug

So…I am 99% sure I’ve fixed this, but it was a bug hell nightmare and worthy of a blog post. It also kept me coding till midnight last night, so I did probably 14 hours work yesterday. arrrghhh. no wonder I slept late this morning. Anyway…

Democracy 4 releases into steam early access on Tuesday, but we already have 3-4,000 players, and I had no showstopper bugs., Most noticeable the game was 32 bit, and only in English. Very recently we switched to 64 bit, and I guess some combination of that, and some people playing in different countries started me on a journey of bug tracking hell.

I got one bug report “game crashes on next turn, or if you change sound volume”. I tested my copy, worked fine. Tested on my laptop too, worked fine. Asked them to try and repro on another PC, arrogantly assuming user error. Then another customer reported the same thing, then a third. This is NOT GOOD. I asked for debug logs, which handily my engine does do, and are fairly comprehensive.

Nothing in the logs explained the actual crashes. Everything looked good. nothing was especially shocking except an error about failing to find a specific neuron (no name supplied). This could be just a typo, or a badly written mod. This *shouldnt* happen, but the game should recover. its not critical… but then why didnt MY copy give me the same error… weird?

I put together a new build of the game that outputs the NAME of the neuron it can’t find (should have done this anyway tbh), and I get back a log from a user where the missing neuron is called 0,00.

WUT?

That sounds like a bug with a comma somewhere, as the equation Socialist,0.00+(2*x) for example must have a typo, so instead of the name ‘Socialist’ we are getting the value. Ha! a simple typo. But why am *I* not getting the bug? I do a windows search of the whole data folder looking for 0,00. I get two hits… neither file actually contains the string. Windows search is WORSE than useless. Weird…

So I change the code again to output the name of EVERY attempt to get a neuron by name so I can compare mine with the users, and see where in the code they were just before this goes wrong. This turns out to be no help, as its inside the Voter processing, which makes no sense… there is simply no way any string like that is being passed at this point in the code. this makes ZERO sense.

And then I notice it. I’d normally missit…but it was weird. REALLY weird. In the debug logs of the players:

PreCalcCoreSimulation time: 0,70 seconds

No big deal, this value will vary based on CPU, but on my PC it said this

PreCalcCoreSimulation time: 0.92 seconds

Yup. Mine has a period/full stop, theirs has a comma. No big deal, its debug logging, who cares. Maybe its even an artifact of copy/pasting the log to my forums… I check this…nope. I ask the player to verify thats really a comma in that log file, not a full stop, they confirm its a comma. How? HOW is this possible? I check the code:

char temp[256];
sprintf_s(temp, 256, "\n\nPreCalcCoreSimulation time: %.2f seconds\n\n", elapsed);
GetDebug()->DebugOut(temp);

This is simple stuff. I just used the very low level, very basic, very simple good old fashioned sprintf function to convert a value into a decimal number in a string. I do some googling and… what the actual fuck? apparently even good old c++, ignoring anything higher level, is looking up the regional settings, and deciding whether or not commas or periods are used in decimal strings. In english its full-stops (.). It is VERY VERY important to the structure of my code and engine that its full stops. When the majority of your data uses comma-separated values, you cant go messing around with the definition of a comma for fucks sake…

So theoretically easy fix, find the function that hacks in the ‘locale’ to be English for this app…and boom! No! it doesn’t work. Sure, I can use

setlocale(LC_NUMERIC, "en-US")

to force the number format to be full-stops, and when I check that the locale really has been set…it has! and everything is fine but… once the game loads a new level, everything has gone haywire, all the values are wrong, all the policies are set to zero, and checking the locale returns what the PC has set it to (I temporarily changed mine to commas as a test). In other words….my setlocale is being overrriden.

Arggh. Now its late, I am tired, I am thirsty, but not enough to leave my desk and lose my concentration. I am very tired now. I spam the code with multiple checks to read the locale at every possible location to see where the hell it goes wrong… And eventually I find it. Its the text renderer, which does use some middleware, to convert fonts into vector graphcis, render them into memory and then paste them as strips to the screen, dynamically. Its all very clever and supports any language, any font size, its super l33t. It also has its own opinions about locales.

So now the game is fixed, by me setting the locale to the US the millisecond the game starts, and then the minute its rendered its first bit of text (and thus the middleware has overrriden me, it sets it AGAIN, to ensure no funny business. Everything now seems to work. Hurrah. I hate computers. I need sleep. Why the hell cant humans agree on what a decimal point looks like in 2020?