Ha. Thats me just being funny in a way that will mess up Chris & Marks SEO efforts :D

But seriously…

I’m reading a cool book, called ‘Quiet‘. Here is an exciting screenshot of the cover!

I’m about 50% through the book, but feel motivated to mention how good it is. Normally I’d post stuff like this to facebook, but meh…do I really want to be monetised, scanned, aggregated and catalogued just because I like a book? Anyway. This book is pretty awesome. its basically all about introverts, what is feels like, why its not a bad thing, how you get treated by other people, and most interestingly, it raises awareness of how society treats introverts.

I’ve never really thought about it before, but there is an implicit assumption that extraversion is good. When you see someone who is loud, confident, shaking hands, smiling, hugging people and laughing, you assume they are good people, worthy people, people who are going places, high achievers, people you can trust…blah blah. Almost all politicians are extraverts, they shake tons of hands, do the proverbial kissing of babies, they speak confidently with no equivocation, they often have louder voices than normal, they never, ever shirk from public appearances…

This book makes it clear that this can be *really bad*. Some problems (like climate change) are best dealt with by people who are quiet, reflective, deep thinkers. It brings to mind the old joke that ‘we must do something! this is something! lets do this!’ which is pretty much the attitude of most politicians, and the cause of many a poorly thought out law or economic policy.

Of course, not all walks of life are as obsessive about extroverts as politics, but the entertainment industry and games is definitely one in that general area. To succeed 9we are told) one must go to games shows, shake hands, talk to everyone, be confident, be outgoing, be personable. Go to all the GDC parties, and meet new people! Walk up to journalists and pitch your game to them! Practice your elevator pitch!


Thankfully this good will make you feel good, happy, content to be an introvert. It will also open your eyes to the very low-key preference for extroversion in the media. In my own tiny, tiny way, I am trying to support introverts by not being stupidly LOUD AND EXCITABLE when I do my video developer blogs.  My part in the great war :D

I recently released Production Line update 1.29, so that’s 29 updates since the original release of the game, which was back in the pre-early access days, and just for people buying direct from my site. In that time, what’s happened?

Well, we have more than doubled the players of the game since going into Early Access, which is cool. Not surprisingly most people now buy direct from steam rather than through the humble widget, which means we earn noticeably less per sale, but that’s to be expected. Income from the game is ‘ok’, in that compared to Democracy 3 it hasn’t set the world on fire, but then the game has already paid for its dev costs (minus my salary, which I don’t count directly), and if I do the maths, its paying me a reasonable income for a senior software developer, so from a financial POV, things aren’t that bad at all.

Plus its still in Early Access, so I’m expecting a nice fat bump when we eventually declare it released, a second bump for the first time its discounted in a steam sale,  and so on.

Working out what to do regarding promoting the game has been very tricky. Take a look at this, at first seemingly interesting chart:

The trouble is, that big spike is a steam sale (we were not even discounted, but extra eyeballs etc…) that final peak at the end is the first steam visibility round which I triggered yesterday. I’m trying to work out if its worth spending money on ads right now. There isn’t a strong correlation between ad spend and higher profit, but it does result in higher income overall (as you would expect), and there is an argument that higher overall player counts will lead to building virality and higher long term sales.

My gut instinct tells me I need to nudge the games approval higher (currently 84% positive in last 30 days, 78% overall), and also include my own internal in-game metrics reporting which gives me this:

Which is good, but could be better. Especially stability. I need to see roe examples of crashes and fix them. Essentially what I’m getting at is that the game feels ‘good’ but not ‘great’ in terms of how people respond to it, and I want to save my marketing firepower for when the conversion rate is really high.

That brings me on to the whole pricing strategy debate. There has been some interesting and well-argued talk lately about indie games being under-priced lately. I have a lot of sympathy with this view. I am a bit biased in this area due to being relatively cash-rich and time poor, which is the opposite of many gamers and mean basically I all-but-ignore the price of a game if it looks like I’ll enjoy it. I own the premium edition of Battlefield one (enough said :D).

The trouble is, when I browse games on steam in the top sellers for the categories that interest me, I do not see acres and acres of crap, which is how many devs describe indie games new on steam these last few months. Granted, there are a lot of poor quality, unplayable, useless titles in steams bargain bin, but what do I care? I’m not trying to compete with someone’s first unity effort, I’m a guy with 36 years of programming experience, and multiple million-dollar selling games under his belt.

To be blunt, I’m competing with Factorio, RimWorld, Prison Architect, and their ilk. These are my competitors. I don’t give a damn about the price of other titles.

And given the huge feature-set of some of those games, and their long development history, and their current prices, and the fact that Production Line is still in development…could I really increase the price yet?

I don’t think so. Its still $15.99.

On a related point however, I always felt, from the very first time someone did it, that having a sale on a game during Early Access seems a bit weird. Its like the game is not even properly on sale yet, and you already don’t think its worth what you are asking. It sends, in my opinion, a signal of ‘we just cant wait to discount this game! just you watch!’, and I think that can be unhealthy.

Production Line entered Early Access at $15.99 on May 18th, and 3 months later its the same price and has not been discounted a single cent. I’m fairly happy with this as a pricing strategy and have absolutely no plans to run a discount on the game in the near future. I think this sends a bit of a quality signal, even if its a small one.

Anyway… Patch 1.29 is under my belt, Sports Cars and Design studios will be coming soon. Eventually it will be time to do Hybrid/Electric engines, Quality and Defects, along with more marketing. Still plenty to do, and still in early Access for a while yet. The main thing is that I enjoy working on it, and its not causing me any actual stress. I also really enjoy playing it myself, which is always a good sign :D





There are no comments yet

More messing with marketing stats

August 12, 2017 | Filed under: business

Its very frustrating to not know if your ads work. I also know that you can never truly correlate these things, but I guess I enjoy trying. With that in mind lets look at 8 days of Production Line sales and marketing

Sales Marketing Net profit
$1,140.00 $351.94 $389.06
$1,283.00 $306.24 $527.71
$1,453.00 $362.78 $581.67
$999.00 $583.09 $66.26
$934.00 $0.00 $607.10
$796.00 $0.00 $517.40
$916.00 $0.00 $595.40
s$936.00 $0.00 $608.40

There are taxes, distributors cuts etc which explains the lower amount you see as net profit. In any case, is there *any* correlation here? A fairly crude approximation shows average profit when I have no marketing running is $582 versus $391 when I’m running ads. Yikes. Obviously its not that simple. Firstly the ads could be adding to my wishlists and thus further sales. Or I could be generating more facebook likes. Its so complex.

if I look at visits to the steam store page for production line and add that in I get this:

Sales Marketing Net profit visits
$1,140.00 $351.94 $389.06 357
$1,283.00 $306.24 $527.71 295
$1,453.00 $362.78 $581.67 342
$999.00 $583.09 $66.26 515
$934.00 $0.00 $607.10 122
$796.00 $0.00 $517.40 86
$916.00 $0.00 $595.40 96
$936.00 $0.00 $608.40 122

Which suggests that I am at least successfully driving traffic with the ads. However, the percentage of visits to the store page that come from external sites over that period is only 22%. In other words, I really should be scaling any boost in sales (if there was one) by 0.22 anyway. I can see that I’ve managed to peak that share of visits from external sites to 38% on the 7th August, at a cost of about $480. Hmmm

So what can be learned?

a) My suspicion that direct attribution of ads->sales is difficult to correlate certainly seems true.

b) You can probably double your visits to your steam store page for about $600/day.

You really can’t learn much from 8 days data. I’m trying to resist the temptation to advertise more for a few more days so I have a better dataset (I have ad-spending data going back about 30 days before I stopped).

I have a suspicion that the cost to generate enough ‘loss-leading’ traffic to push the games popularity up to the point where it gets noticed by steams algorithms and thus starts to generate sales from within steam at a higher rate is quite high.  I’m digging into the stats of all of my games to try and work out how many extra sales I need to push PL into the top 10 ‘topsellers’ among indie strategy games…


Yup, this is all very small fry. I’m trying to find a winning strategy before I start shovelling wheelbarrows full of marketing dollars at it :D

There are a number of things wrong with the nitty-gritty fine detail of Production Line’s design. I don’t mean easily adjusted stuff like ‘this costs too much’ or ‘that happens too quickly’, but actual design issues that may require me to change the way some of the mechanics work. Here is an explanation and some background:

Production Line is a car game where cars move along a production line from one ‘slot’ to another, and new components such as doors, engines, wheels etc get added at each slot. Different cars may be different designs, meaning they get a different series of components added. For example all cars get wing-mirrors added, but some get heated wing-mirrors, some get heated+folding wing-mirrors, and so on. Where I have gone wrong is this ‘fitting complex components’ mechanic.

Essentially, the problem comes from the relative simplicity of when I first started work on the game. For example, fitting door panels was just a thing that happened, taking X minutes to do. Then I added a new feature ‘car alarm’ which I decided could be fitted at the door panel slot. This slightly slowed down that slot. (For cars with alarms). then came lane-collision avoidance tech, which again involved extra components at the ‘fit doors’ slot. Then came keyless entry…and so on. As a result, something that was once simple (fit door) became really complex, and really slow, causing a bottleneck not only due to the sheer penalty time for all those features, but also waiting for all the myriad of components (sensors, alarms etc) to arrive for each door, meaning the slot was often ‘waiting for resources’. This also felt unrealistic. Surely the doors get fitted with all this stuff already assembled?

Because I’m clever I fixed this.

Now you have a system where some upgrades (folding/heated wing-mirrors is one) can only be installed if you make them yourself. As a result, you have a slot in the game that will manufacture wing-mirrors, and you can then upgrade THAT slot, and it will attach extra ‘features’ to each wing-mirror. The wing-mirror then gets requested by the fitting slot, attached to the car and the final car now has the features it wanted, fitted no slower than the normal wing-mirror.

A combination of method A and method B of adding features keeps a nice balance between bottlenecks and free-flowing of the line, encourages the player to experiment with local production, and adds to the complexity, maybe even the fun of the game?

Unfortunately it leads to big problems!

Imagine a situation where there are two car designs, Budget and Luxury, and production alternates so the line sees B,L,B,L etc. B has basic wing mirrors, luxury has everything… A local production slot ‘factory’ is upgraded, and thus churning out a load of heated & folded wing-mirrors. This is the process by which it all screws up:

The fitting slot encounters a BUDGET car. It fits some basic wing-mirrors, which because its closer to an importer than the factory, it imports. It also fills up the pare 14 slots with new basic wing-mirrors.

The fitting slot now encounters a LUXURY car. It now needs wing-mirrors that are heated and folding. Should it trash 2 wing-mirrors and order them from the factory? if so, does the player get the trashed items refunded? What about numbers…does it order just 2? or 14. it cannot be 100% certain that the end car (due to complex junctions) will be a Budget or Luxury. It has no idea. Does it order half and half? what if there are four designs? or eight and they all have different combinations, and production ratios? How many do I order? Also…back at the production slot, should I be just making a bunch of fully-loaded wing-mirrors? or some ratio? how do I set this? is it automatic? does the player decide?

Plus…because some components now have upgrades, how the hell is the supply stockpile GUI even working any more? when I say this stockpile should be full of wing-mirrors…which type? does it care? should the player be able to control this? how?

Why did I start making video games? what the fuck am I doing with my life? What made me think I know how to do this? ARGGGHHH.

Obviously this can be solved somehow, but I need to do it properly and not flail around coding random hacks, which is basically how I ended up here. How on earth am I going to fix this mess? Here are some solutions, not all to the same exact part of the problem, and not mutually exclusive:

Solution A: Downgrade components where required.

In other words, when we fit a wing-mirror to a budget car, we effectively snip the wires, and it acts just like a cheap wing mirror. We fucked up here in some ways, and spent the money to make an expensive component that got wasted. This is effectively very simple to implement, as some code can handle this at the fitting stage (stripping inappropriate features before adding them to the car). This is potentially very frustrating to the player, as if they want to produced everything locally, they are effectively wasting money (and resources) on every cheap car they produce. This is not efficient, and efficiency is the key to the game :(

Solution B: Scrap the idea of embedded features in components.

This means that all the component fitting is done *at the assembly line*. So factory slots now just make wing-mirrors, and the upgrades move to the fitting slot. This simplifies the games design from a tutorial POV very much, but it re-introduces big bottleneck, is very unrealistic, and involves a lot of change which will fuck up save games. Plus it doesn’t solve the core problem anyway, we still may have the wrong resources at the fitting stage.

Solution C: Allow manual configuration of assembly-line stockpiles.

Right now, the player has no control over what components a fitting-slot orders. It decides what to order when a new car arrives, and it then ‘over-orders’ on the assumption that the following car will be the same design. Because the player knows that all those aluminium stocks for an aluminium body shell are not needed for 90% of the cars, he/she could specify what to keep in stock instead, giving the player micro-management. The downside is this will not work AT ALL if you go BBBBBLLBBBBBLL, and thus the local ‘caching’ demands change. Plus its rife with the possibility of bugs, and confusion.

Solution D: Allow automatic ‘flushing’ of unused resources in a stockpile.

If I order 5 chunks of aluminium for a body-shell, and then take the effort to order another 11 to fill my stockpile, but the next car doesn’t use aluminium, I should immediately flush (probably refund) all those spare aluminium chunks the minute I realize this. This would eliminate a current ‘blocking’ problem, but mean that if my cars go BLBLBLBL (where L uses aluminium), I am constantly wrong-ordering and flushing. In a sense, this is for the player to spot and fix right?

Solution E: Express composite resources as their own resource.

Life might get simpler if I allow the player to refer to ‘folding wing-mirror’ ‘heated wing-mirror’ and ‘folding,heated,wing-mirror’ rather than just ‘wing-mirror’ in terms of supply stockpiles etc. This only solves a minor issue, regarding supply stockpiles, and vastly complicates the supply stockpile resource picker list (and others for that matter0. However this would theoretically allow the player to import them ready-made rather than produce stuff locally, which gives the player more flexibility.


I’m in a design mess here. It *will* get better, probably through a process of far better tutorial & player feedback combined with some combination of the changes listed above. I’m interested to know how annoying all this mess is for actual players right now. Have you encountered any of this? does it bother you? do you think I’m getting too fixated? Is this just something you enjoy working around? How bad is it? :(