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

Democracy 3: Clones & Drones

So, with great pleasure…after an incredibly long wait…I’m happy to announce we have a new expansion pack for Democracy 3, called ‘Clones & drones’. First…. the trailer!

A little explanation: This is an expansion that adds in the challenges of the near future. I’m not talking space battles and attacks by aliens, but more the kind of thing we might expect in 2020, 2030 maybe 2040. So we have to start worrying about stuff like Food Prices rising, rare-earth metals running out, technology causing unemployment, climate change (of course!) and the impact of stuff like driver-less cars, maybe even flying cars (oh yes…), longer lifespans and human cloning. Plus more depressing things like the collapse of effectiveness of antibiotics (we use them too much, basically), the danger of another, much bigger, flash crash. There is also the eventual problem of population rise (would we ever condone a one-child policy I wonder?) and hopefully one day, a trip to mars.

For deep tedious psychological reasons, I tend to be a pessimist about the future. I worry about climate change, the ease with which weapons of mass destruction (not so much nuclear, but biological) can be delivered by future terrorists, the almost inevitable erosion of privacy by technology, the further concentration of wealth and rise of corporate superpowers. For the record, I think Climate change trumps all of them, for the potential to really fuck us all over. However… your mileage may vary. Maybe you see an Iain M Banks or Star Trek future of abundance,  shorter working weeks and eventual lives of recreation with a robot workforce, extended lifespan and nuclear fusion providing limitless energy!

Whether your future glass is half full or empty, you will probably have fun trying to navigate the world of Democracy 3 through those years. Keep an eye on Food Prices and global temperature, it can be a real pain. I hope I’m around in 50 years to look back and laugh at what I thought would be the political issues of the year 2064.

The expansion works just like the others, so you can grab it direct from the developer(me!) here, which gets you steam keys too, or you can obviously buy it from steam, or the humble store, and soon, on GoG. It comes in Windows Mac & Linux flavors. I hope you enjoy it. ONLY YOU CAN SAVE OUR FUTURE!!!111ONEONEONE

Obviously the best thing you can do to save the future now is buy the DLC and the second best is to tweet about it, share it on facebook, or up-vote it on whatever social sharing site you people can access from your hover cars in the year 2050.

I will leave you with this:

The joy of building, and treating simulation and strategy games as toys

I had a few negative reactions (not many) to some of my early screenshots and videos of Gratuitous Space Battles 2 Screenshots like this:

dread1

Basically people didn’t like the ship designs and colors. The colors were too gaudy, and they hated any hint of a checkerboard pattern because it makes them think of placeholder textures. This amused me, because actually the designs are based upon the artist chriss foss, who I liked as a kid. He did some really distinctive spaceship designs. Some people may dislike them, but in a world of identikit spaceships, his stood out.

So much for blocky color patterns, but the other criticisms (that the designs were not good) is more relevant, and serious. It is, of course, entirely a matter of personal opinion. For contrast, here is a few ships from GSB1:

gsb1

Some of you may prefer that. So this blog post is here to make you feel better :D.

Firstly, do you know who designed the spaceships in all the GSB2 screenshots and videos? It was ME. ME!!!!! And I don’t have much of an artistic eye, or patience, or time. The basic components are done by the talented GSB1 artist, but then my totally clueless hands have been let lose on them, using an unfinished space ship designer, so this is what comes out. In other words, people with more of a sense of style, more patience, more time, and finished editor…should turn out MUCH nicer stuff. I’m also toying with the idea of actually paying someone to design the initial enemy ships for this very reason, although I’d love to try it myself…

The thing is, I am vastly more of a fan (as a player) of stuff that lets me put my mark on it. Sim City is great, but it’s even better when you have the building design tool. One of the appeals of minecraft is surely building things. People spend a crazy amount of effort just designing their clam logos for Battlefield 4. Give the player a ‘customize’ option, and you will lose them for an hour or ten. Even spore, a game that people rapidly dismissed as bad (despite earlier promise) had a huge number of high quality creature designs. And the ultimate example of people designing awesome spaceships so far is probably galactic civilizations 2, where people have clearly spent hours and hours designing the ultimate space battleship.

Yup, we may not all be experts, but I’ll take a ship I’ve customised over a ‘stock’ ship any day. People like to stand out, they like to create, they like to ‘play’. And this is where I like to think my games often cross the line from what people call ‘games’ into toys. I have never been a fan of scripting in games, or linear experiences. We have books and movies for that. Games give us freedom, freedom to experiment, to define our own rules, to invent, or at least they could…

fpsmap-650x519
FPS Design over the years…

Back when I first started gaming, a lot of games gave you a sandbox experience. It was frankly easier and cheaper than level design, and limits of file sizes mean you simply couldn’t fit 200 hours of RPG backstory onto a floppy disk. This resulted in incredible free-form strategy epics like Lords Of Midnight. I really miss those times, and that encouragement for free-form experimentation. Kids these days do not really ‘play’ games. They ‘compete’ at them, to ‘win’, or to ‘beat’ them. This feels weird to me. I’m always playing to have fun, not to go along with what a designer has decided I will do that day. In the ideal Star Trek MMO, I’d just tend a ferengi bar, but the designer no doubt wants me to go ‘questing’…

Democracy is probably the most free-form of my games so far, but they all have a hint of it in them. Kudos didn’t really have a proper ‘end’ as such. there was no boss to beat or princess to rescue. It was a toolkit, a toy, and bunch of things to play with, woven together as a functional simulation that let you play out ‘what if’ scenarios.

That’s what GSB2 is. It’s a big pretty spaceship battle toolkit for you to have fun with. If anyone complains that they’ve ‘beaten’ it, or Democracy 3, then they haven’t understood the purpose of the product. A game is not a challenge from the designer to the player, but an environment created so the player can experiment and enjoy themselves. That’s why there are customizable spaceships in GSB2. It’s not about the designer, or the artist, but about the player, and I believe in giving the player as much control as possible.

 

 

Multithreading concurrency bug?

I have a theory, help me out if you know about this stuff. take the following image from the visual studio concurrency profiler for GSB2 pre-draw code…

8156,6792 and 8404 are my additional worker threads I spawn to help me process stuff. Click to enlarge…

threadsWhat I do is basically build up a queue of tasks. The threads are always running and checking for whats next available to process for them. Meanwhile the main worker thread also does the same thing, ensuring it is not idle while the other threads are busy. Critical sections surround access tro the queue stuff to ensure there are no nasty bugs.

I think my problem is illustrated by the red section with the black line connecting above it. This is a thread sat there doing nothing. Here is what I think happens…

  • The main thread builds up the queue of stuff to do.
  • 6792 jumps in and grabs a task to do
  • 8404 jumps in and grabs a task to do
  • The main thread then thinks ‘right then, I’ll do this next task’
  • 8156 wants to jump in now and also grab a task, but the main thread is busy doing actual work. In fact, it seems to ‘miss’ its opportunity to grab a task for ages, even though the other threads do ok getting task after task.

Is this just a problem of my code design because the allocation of tasks is done by a thread that is not otherwise idling? It seems horribly wasteful to have a whole thread work just as a 99% idle ‘task allocator’. I thought cpus were clever enough to allow interruption of one cpu by another in these instances?

I know I could queue up the tasks ahead of time, but each task takes a variable amount of time, and also varies each frame. I *could* work off the last known task timings and write a clever allocator that tried to assign things in the best order, but that seems possibly like overkill, and something the cpu surely handles anyway? Or am I totally misreading this data. IO checked a few frames, they all seem to have the same pattern.

Virality, conversion rates, LTV and why I care

So here are some harsh figures that will make you cancel your ad spending for your indie game.

In the last 8 days my figures show me this…

For every 100 visits to my index page for D3, 48 people will proceed to the register page. Of those, 11 will hit the buy button, of those roughly 1 will buy the game. That earns me about $22.

so the maximum cost per click that makes sense is $0.22, or £0.13, which is practically unachievable.

So how can ads make sense?

The beauty of ads is that the person who comes and buys the click is just one factor in the equation. There are many other factors, and the problem is they are hard to quantify.  Here are the ones I think matter and the rough guesses.

  • The life time value (LTV) of the customer has to include every other game they buy, including DLC. Assume D3’s DLC adds 10% to total income, and assume a 20% chance of buying another positech game eventually  so LTV factor is 0.3.
  • The virality of the customer has to include friends that he persuades to buy the game. This is hard to tell, but lets say it’s pitched at roughly 20%. So one in five people will eventually lead to another sale, either directly or indirectly through a forum post or tweet about the game, so this includes people they have never met. So this is 0.2
  • The untracked sale. This includes people who visit the buy page at work/school, then buy at home, or view it on mobile but buy on desktop. I suspect that is around 10% so another 0.1.
  • The delayed / wishlist/ bargain hunter. I crunched the numbers once for Democracy 2 and found roughly 33% of revenue was from sales, so thats 33% of income not being tracked here, or earned here, but stored for later, so lets say 0.33.
  •  The impression that wasn’t a sale. This is a big thing. Some people used to say you needed to see an ad 5 times before it worked. Other research claims even 1 impression has an impact, and >5 can still help. Because click-through rates are pretty low, we are totally disregarding the impact on brand awareness. Essentially you visually prime a customer with your logo to ensure subconscious recollection when viewing a review, portal listing or whatever else. Personally I think this is a big factor, lets say at least 25% to be cautious.

So if we add that up, we get 0.3 + 0.2 + 0.1 + 0.33 + 0.25 = 1.18, so an extra 118% of income generated by that sale. In other words our 0.22 is really 0.48. That *is achievable, although still not easy. What should be immediately obvious is that we have a LOT of fuzzy numbers and guesses in here that really cannot be tracked. Putting hard numbers to some of them would help a lot.

Looking at it the other way, we have to take into account the fact that a big chunk of site visitors are not ad related but coming from reviews, portal links, tweets etc. Ideally I need to deduct that traffic to get a better picture (which would make my figures much worse).

So for now, lets assumed that we break even at $0.48 per click, what are the possibilities for making an ad-based strategy work?

  • Target traffic more cleverly so the people who arrive are more suited to purchasing. That would push up that 48% who go to the register page.
  • Increase the lifetime value of the customer. More games. Cross-promotion. Maybe more DLC, or sequels, there are various strategies here, but I’m already doing most of them
  • Reduce leakage points. Find out why people don’t hit the buy button, or then hit the actual order form buy button. A/B testing to improve both stages.
  • An ad that more clearly prevents non-buyers from clicking, and thus targets better. I don’t want people who expect a free game, or a mobile game. Luckily adwords lets you analyze each ads performance. I should do this…

Fun fun fun…

 

 

 

Positech Energy. STAGE ONE. BWAHAHAHAHAHA

My day dreams involve mostly chocolate and spaceships, but now and then I dream about running a big renewable energy business. I’m a big believer in such things. If You are someone who thinks climate change is made up by Al Gore as a plot to take away your guns, stop reading now.

Unfortunately, despite being very into green energy, I know sod all about engineering. I can wire a plug, and even solder a bit now and then, but my understanding of planning applications and energy management and construction processes is absolutely zero, so Positech has to be, for now, a passive investor in such things. Long term readers of my blog may know that I have a hybrid car and a little row of 10 solar panels in my driveway, and maybe also know that I’ve bought some shares in a solar farm here and there. I consider them to be good investments. I don’t know many investments that pretty much guarantee an inflation-beating return over 25 years, but energy infrastructure does. I’m willing to bet that energy prices will only go UP during that time frame.

Anyway, today marks a milestone because rather than making these investments as an individual, Positech has invested in a chunk of renewable energy as a long term (25 years) investment. I see this as a pretty good hedge against the games industry. Don’t keep all your eggs in one basket and all that.

So Positech has bought roughly 6% of this:

14711216160_b16ec05afe_z

It’s a crowd-funded Vestas V39 Wind Turbine, in Dorset, SW England. It’s also BIG. Wind turbine efficiency is very directly correlated with scale. Small ones suck. TBH, this one is too small really. It’s a 500Kw one, whereas the big ones are 6MW or even 8MW for experimental offshore ones. However, it kicks my 2.1kwp solar array into dust. Plus wind turbines run all night and all year. yay! It might be small by wind turbine standards, but its’ big enough to be efficient. 39 meter diameter blades. pic below shows scale better…

IMG_3021

I’m a big fan of long term investments, and spreading risk, and trying to do something about climate change. Positech could leave its money in the bank, where it could be lent out to arms companies like BAE or Oil Companies or god knows what else, or I could take control of it directly and invest it in something I consider positive, so thats what we have done.

Who knows maybe in the long term we will invest directly, and get a turbine built as a company (positech energy?) rather than this sort of investment, but that takes BIG money. I think you really need about a million pounds to do that, and ideally about five to ten million to build any of the proper sized ones. I better get back to work… :D