I was on the bus last Wednesday heading home after a trip to the cinema and saw something that has been haunting me since. It wasn’t something horrific or anything like that but it was something that moved me and still upsets me.

There were a couple of girls in their early teens. I couldn’t say how old they were for sure but one could see that at least one of them was too young. I didn’t specify what she was too young for because I’ve found that it’s a little hard to pin it down in words.

Essentially she looked like she wasn’t ready to switch from little girl to mature teenager. I don’t blame her, it’s an awkward and scary phase. What got to me was that it seemed like she felt like she had no choice but to make the leap.

I thought back to what I was doing during that time – building 40k Orks, playing videogames, learning to build PCs, and the other activities that my hectic school schedule imposed (i.e. sport, meals, prep time). I can’t imagine what girls were up to during that period but at least there was the structure I mentioned. What must it be like for girls during that period outside of that sort of institution?

They’ve got so much on their plates already and it seems they’re being expected to grow up both without many positive role models and sooner than the boys. I saw that in her face and it made me worry about what our society has become.

I shall have to have a think about what I can do about this problem. There doesn’t seem to be much for them between childhood and adulthood. As teenagers they’re not supposed to go out partying but there doesn’t seem to be much in the way of activities aimed at them.

Hot Fuzz hoodiesIt’s not like it’s common to see a fourteen year old girl marshalling Eldar against a force of Imperial Guard. I wish it was for the sake of all genders.

I feel rather sorry for a friend of mine. Despite working in the finance sector it seems when it comes to social relationships he is unable to look at things as investments. I don’t feel all social contact should be treated this way, of course, but a frank look at which relationships are becoming blue chips and which are definitely junk bonds is rather crucial to a healthy mental state, I feel.

At least in my life I have friends who I can get in touch with even if I’ve not spoken to in months, or years. Today I spotted something on Facebook:Fy0iWoO

I grabbed a screenshot and sent it to an old friend who I’ve not had a conversation with since April. Within minutes I got a phone call with a huge laugh and a friendly word as if no time had passed at all. (The joke here is that the original commenter was relatively smart at school and is presumably referencing things like “I am disappoint” whereas the guy posting the correction was a meathead who we both strongly disliked and to see him being pedantic tickles us both.)

In my life I do my best to collect friends like that. Ones who I don’t have to spend every weekend with in order to keep the relationship alive. I not only cannot be bothered with that level of continuous social exertion, it’s also not who I am. Building something on that is just a bad idea, I feel.

As a result, if it’s the middle of the night and I need to talk to someone (and don’t want to wake my old lady) I have a slew of friends I can reach out to throughout the world who are usually up for a bit of a natter.

On the other hand I run into plenty of people who claim to want to be friends but require constant maintenance. Spending time with them makes me less happy and it’s a slow endurance trek watching them spin their wheels and make poor decisions. There’s a difference between being caught in a rut and having a broken axle.

Instead it would seem he treats all friendships as things of equal emotional weight in which promises must be made, obligations created, and the self sacrificed. I could understand that if someone was benefitting from his efforts but from what I’ve seen over the years the only people getting anything good out of the deal are the pub landlords.

It would also seem that through this system he watches as people pair off and his social circle shrinks because so many of his resources are devoted to these relationships that give very little back. Any notion of forming new connections outside of the circle are backed away from due to lack of time and will. Regular commitments must be honoured even though they only seem to serve as punctuation in his fairly unhappy emotional life. They cheer him up for the brief period he is there. To me that’s not enough – I want more out of a social life, and I get it.

I just wish I knew how to help my old friend towards that kind of happiness.

Sometimes I see a video that really reminds me of how much humans suck. Here’s the talk. I find it really inspiring which is why negativity follows. So many people seem to take issue with the notion of sharing. Their definition of individuality apparently involves owning a large car, a sprawling house, and the right to far more resources than is even remotely reasonable.

I love stuff but I don’t buy the whole “expression through consumption” thing. It’s a fairly sound basis for an economy but I’d rather express myself using my words and hobbies. The flats in the video look ideal for me. I hate how much space is normally wasted on being a bedroom when the living room could use that area for other stuff (as I’ve said before).

That said, I couldn’t help thinking about somewhere I’ve seen the concept before…

Of course the vehicles shown in the talk seem to be met with resounding criticism from North America. As much as they like their cars I fail to see why they’re unable to look past them towards the kinds of solutions we’ll need in the future. Whining and digging one’s heels in does little to sway the changing global environment.

Personally I’d love to be able to use a car for a few things when I need it and leave it be the rest of the time. I can’t see any need for me to own a motor vehicle full time. What am I, a travelling salesman?

That reminds me. Bike lock.

I was at the cinema earlier with Jenny watching a film we’ve been looking forward to since the first trailer – The Lone Ranger.

It would seem that our reaction of childish glee, laughter, and mirth were not shared by critics or the press. I’m left confused.

The film was light-hearted, ridiculous, hilarious, and self-aware. It managed to fit in a hero on a horse, atop a speeding train, without leaving me asking how that could even occur.

With these kinds of films I find myself wondering if lots of critics go into these kinds of films looking to be miserable…

Yet films like Scarface and No Country For Old Men are praised?

Sure, I don’t want every film to be an outrageous adventure flick but once in a while it’s fine! I love the National Treasure films for that very reason!

Give me a madam with a Planet Terror-esque ivory leg and a beer and I’m happy. There’s plenty of drama to be had and not enough appreciation for joyous escapism.THE-LONE-RANGER-Image-01

I hit play on my iPhone the other day and the Blink-182 song “What’s My Age Again?” came up. I’m amazed that even all these years later I still love the album it’s from.

Quite a while ago I drew up a list of some favourite albums of mine and now I’m looking back at it and thinking about whether I should try to hunt down some more albums from it on vinyl.

Unfortunately it seems that despite many of the records on that list being extremely popular they’re still rare enough to be worth considerably more than I can afford.

I find myself a little sad that the one way I actually want to buy music isn’t available. Exchanging money for goods is difficult when the goods aren’t being offered. Unsurprisingly my offer of money is not a charitable donation – if you want my cash, music industry, make me an offer I care for.

It leaves me wondering how long it’ll be until I can 3D print my own copies. Given the precision required it wouldn’t surprise me if that’s quite a long way out.

On that front it seems that the Makibox A6 might actually be available before my next birthday. Maybe. I’m not going to hold my breath.

Some days I have the will, the creativity, and the drive to really dive into sculpting. Today was one of those days.

Unfortunately sometimes it just doesn’t work out. I’m really not satisfied with how my scale mail is turning out on this model. If it was something else it’d be less crucial, I imagine, but these arms are important.female_holy_crusader_3

The reason being the shoulder pads you see above them. They’re rather large, which is fine, but they’re just one design. I want to do some smaller ones but before that can happen I need a standardised set of arms. With any luck I’ll soon have those arms allowing me to fit the same ones to another torso. That’s the plan at least.

Similarly once I have a full model done I can break one apart and use the pieces to start (or finish) another. There’s currently two other near-complete sets of legs, for example, and another two torsos. They need fine tuning but that can’t happen until a standardised sizing is established.

That’s all going through my head whilst I battle with some tiny scales about a third of a millimetre wide. Argh!

I’m not a fan of “trash talk” when playing games. Some folks seem to feel it’s all part of the game and I can see how it could be. That is to say if it was a ranked match with stakes of some kind then I could see a more adversarial aspect to play.

I rarely play that sort of thing.

Some how it has become acceptable to be intensely rude even in friendly play. I rarely put up with this sort of thing, especially given the prejudice nature of many of the slurs thrown around. Thankfully today I’m not writing to complain about the state of things, instead I wanted to write about a lovely experience whilst relaxing playing Team Fortress 2.

When playing I often spend time on the old ctf_2Fort map. There’s very little motivation to win or lose and it provides a nice venue for a bit of sniper-based “use gun on man”.

But sometimes I get into a sniper battle with a random opponent. In this case it was a chap known as CaptainSteve. I got him a few times before he finally took my sneaky arse out. I congratulated him on a good shot – a worthy opponent!

Some time later he got me again and apologised. Not for killing me but for it being “super flukey”. Similarly I apologised for getting him with a cheap body shot (rather than an elegant headshot).

This is not the first time I’ve encountered this kind of camaraderie whilst playing online but I wish it was more common. Anonymity doesn’t turn everyone into a walking reason for extraterrestrials to avoid us, especially if we do our bit to encourage better sportsmanship.215499488_8pSZr-L-2

Well that’s my take on things.

I read a little blog post that struck a chord with me recently. It’s fairly old and but is just as relevant today as it was ten years ago.

The Black Triangle

In essence the post is about the first major stage in many projects – getting the basic framework in place.

There have been several occasions in my life where I’ve been working on a project and someone has demanded to know how I’m getting on. Once I’ve shown them what’s happening they’ve not understood what I’m showing them. The end result is basically that I get left alone to keep working but the person checking up feels like I’m not pulling my weight.

Unsurprisingly this is intensely frustrating when I’ve been working my arse off. Thankfully I’ve learned to express myself a little better in recent years and as a result run into it far less often.

The black triangle in question is the first thing being rendered on a bit of old development hardware. It’s not much but it’s a proof of concept that shows that the technologies implemented so far are doing their job.

In the old days as an IT manager I implemented a centralised photo archive in order to allow anyone with access to the company intranet to reach the vast library of images we owned the rights to. They could easily be browsed and downloaded to any user’s machine without requiring a dedicated workstation or an external hard disk passed around the office. Showing this to anyone whilst I was setting it up basically got the response “So you’re working on a webpage..?”

Years later someone asked me whose computer the pictures were on (we didn’t need new pictures often!). I pointed them to the centralised archive and received glowing praise. They had expected to have to sift through files in Windows explorer without any real tagging or hierarchy it would seem. To find something easily indexed designed for accessibility was an unexpected miracle.

Of course when I was setting it up it seemed like everyone watching assumed I was faffing about with some random webpage. What they were looking at was the first black triangle. I guess I’m still annoyed at our general culture of “I don’t understand this techy thing, therefore it’s dumb and easy to do”. I don’t understand much of metallurgy but it’s still a complicated discipline that requires knowledge and skill.

My most recent black triangle moment was building my game and getting the turn sequence to operate properly. It didn’t look like much but it meant that the game environment I’d created was working properly. Now I have a way to talk about times like that - something which makes me very happy.

I love cassette tapes.

23 August 2013

It’s rare for me to feel much of a connection to a procedurally generated world but there’s been an exception recently – Receiver.

From the site:

Receiver was created for the 7-day FPS challenge to explore gun handling mechanics, randomized levels, and unordered storytelling. Armed only with a Colt 1911 A1 and an audiocassette player, you must uncover the secrets of the Mindkill in a building complex infested with automated turrets and hovering shock drones.

2013-08-24_00001I get a distinctly Blade Runner vibe from it that is rather entrancing. Wandering through apartments in the complex, firearm in hand, it’s lonely. For once it’s not the bad kind of lonely though – it’s more of a survival thing. There’s just me so I’d better do my best to survive and see things through.

That’s not really what goes through my mind whilst playing though, it’s more an attempt to describe my emotional state whilst playing. I’m rarely frightened but occasionally startled. It’s thrilling.

What stands out to me is the way the story is conveyed. Rather than feeling like I’m playing multiple instances of the same character there’s something else. It’s something I’ve not felt in a video game before, to the best of my knowledge. I think ZombiU does it but I’ve not had the slightest urge to play it and so am not counting it.

Ah, yes, the mechanic in question is feeling like each time I start a game I’m playing as a different person. The previous character didn’t make it. Between all of us maybe a few will piece things together and make it through. Maybe this attempt will be one of them, we’ll see.


Lastly there’s the unusually precise weapon mechanics. Handguns are operated properly – reloading requires ejecting the magazine, holstering the weapon, inserting new bullets into the magazine, retrieving the gun, inserting the magazine, and racking the slide. Each of those requires a key press. It quickly becomes routine and straightforward but I love that I can check to see whether there’s a round in the chamber by holding T and racking the slide.

I paid £2.39 for it in the July Steam sale. Not bad at all. Give it a go.

Most Thursdays end up fairly horrid for me. Today started like that – dealing with paperwork, finding out why NPower think I owe them money, demanding a refund from my previous letting agency over illegally charged fees, that sort of stuff. Dull grown-up stuff.

It got better though – Jenny and I went to Tesco. That seems a silly thing to be pleased about but it was more the route we have to take to get there. It’s a lovely scenic stroll and at this time of year goes past great swathes of blackberry-encrusted bramble bushes. I could go for some berries…

It was a warm, sunny evening. Very pleasant.

How did we do for berries?

Well we spent a leisurely half hour or so picking the biggest ones we could find and ended up with a relatively heavy bag and grubby paws. Weighing it at home and even I was surprised:


They’re also more delicious than the ones we’ve bought from supermarkets. They’re fantastic, in fact.

I encourage you to do a spot of foraging if you get the chance. There’s good stuff out there if you know where to look!

I’m trying to implement user input in my game and I’m finding myself incredibly frustrated.

The code breaks but I can’t put my finger on why. The variables change like they’re supposed to but one routine falls over no matter what I do. It broadcasts the correct signal but for some reason the routine then fails to execute properly.

I’m not sure what to do short of simply rebuilding the mechanics of user input. It seems there’s just some real issues with clicking on sprites in Scratch 1.4. It’s pretty tiresome.

One rebuild later and I’m still not sure why it was breaking. I seemed to have fixed the accursed thing at least but I wish I hadn’t had to in the first place!

I’ve now implemented two moves – basic attack and defensive stance.

scratch_qr_mockup_graphics_basic_attackThe former is just the standard attack from the first build of the game. The mechanics are still as follows:

Attack * multiplier vs. defence resistance (~0 – 75% reduction)

scratch_qr_mockup_graphics_defensive_stanceThen there’s the new mechanic, defensive stance. It doubles the fighter’s defence score for one turn. I could relatively easily make it last a randomised amount of time due to the way I’ve built it. It’s a little buggy as yet and if both combatants use it it’ll fix one of their defence scores at the doubled rate. Working on that!

Next up will be “risky strike” but I think I’ll hold off on implementing that until I’ve sorted out the kinks in defensive stance. Not bad for my first proper game project though, I must say.

Yesterday I mentioned a podcast pilot. Here it is:


Download in MP3 (36.5 MB)
Download in Ogg Vorbis (needlessly high quality, 118 MB)
Download in AAC (43 MB)

Running time ~1 hour 33 minutes. Chris and Fox in the chair.

Subjects covered:

  • The rise of the Unity engine
  • The Assassin’s Creed series
  • Portal 2
  • Disgaea 3: Absence of Detention
  • Lots of other stuff too, I imagine!

(It’s late…)

If we go further with this, which I hope we do, I’d like some bed music and some other stuff.

This version required more editing than I’d like due to lag introduced by the VM. That said the previous one was done with Mumble entirely. This one used the same clever system but with the addition of Skype. In general I’d rather not use Skype in the setup at all but it is far more convenient than Mumble for potential guests so I made sure it worked. By the sounds of it the sound quality it produces is pretty excellent though and that was using an iPad with the headphone cable microphone. Other podcasts really need to up their game in that respect!

Sometimes I have a little panic in the early hours of the morning. I’m fairly confident that it’s a relatively normal thing for people. I would imagine even my father gets them at times.

Basically the thought goes “Am I doing enough with my life?” and invariably the overwhelming emotion is negative. Emotion. Brass tacks though I’m doing okay but it’s difficult to argue that with a sleep deprived brain tired from working all day.

For example, I’ve spent so many years trying to find someone I can rely on who understands me and humbles me. With any luck that’s something I can tick off the list now.

Then there’s work. My business makes a profit, even if it is a small one at this stage. I could and probably should be pushing harder on that front but even with my current gearing it is ticking over reasonably well leaving plenty of time for other projects.

Creatively I’ve got two audio podcasts and a video one in the pipeline. Two have pilots the third needs more work. I’m also finally getting my teeth into programming, something that has plagued me since I was a teenager.

There’s also cooking and writing. I’m a better cook than I’ve ever been and by the looks of it I’m even making progress on my own cooking discipline (an attempt to make recipes legible to people like me). I’ve written a blog post for every day since December 12th. Sometimes I’m ahead and more often I’m behind, but I’m coming up on the last hundred days of this journey. Either way though, I’ve stuck to it.

Physically I’m also doing fairly well. I’m at a good weight, I’m eating more healthily, I’m going outside more, I’m sleeping better. Hell, I’m even reading an actual book!*

But in the middle of the night none of that matters to Captain Could’ve over here!captain-couldve


Full steam ahead for the doubt ship.

Looking back at old photos generates false nostalgia, or at least nostalgia for false happiness. During those times I can’t even remember what I ate most of the time. I must have had plenty of nosh by the weight on me but beyond that I’m fairly clueless.

It’s the little things like that which make me wonder how good a time that really was. I went to uni, played some video games, watched a lot of TV, filmed a podcast when we could coral the right people, edited it, and that was about it. There was a bit of drinking but nothing compared to what most seemed to be up to.

But the cap’n makes me think of all the gigs I didn’t go to, the comedy performances I could have seen, the parties I could have attended. Except, well, I did those things. For the most part they were less fun than hanging out with Matt talking about philosophy and video games. Gigs were actively boring, comedy performances were usually fairly sub-par, parties were awkward boredom fests full of smoke and noise.

But the Captain cares not.

What a dick.

*I used to read a lot but when I went to uni I fell out of the habit in a huge way. I’d read the new Pratchett book each year and that was about it.

42 Wallaby Way!

18 August 2013

I was sitting with a cup of tea and found my mind wandering. The same happened whilst doing the dishes.

The thing preoccupying my mind was my game.

Now that I’ve got the basic mechanics in place it’s much easier to build more on top. I found myself thinking about possible user intervention mechanics.

Given the approach I’ve taken in the game’s construction adding such things is actually fairly easy and I have a rough idea of how I’d go about doing such things.

I was incredibly pleased that thinking about these things immediately translated into ideas about program flow and construction. For years I’ve wanted to be able to think like this but to no avail. Reading books on programming was useless to me because it would never stick.

As soon as I’ve got a real goal to accomplish I’m burning through the job at a tremendous rate. I’ve still got a long way to go but I don’t feel quite as bogged down for the first time in years.

I will now perform my people’s native dance.

I may have gone a bit nuts and hammered out a fairly fully-featured version of my game in Scratch.

First off I built up the battle mechanic so the two combatants would take turns. At the moment QR1 always goes first but it would actually be very easy to implement a system to flip a coin.

When damage is inflicted the participants audibly complain (utilising my remarkable vocal talents…). When a critical fail is rolled they moan about that too. Such things may seem needless but I originally implemented them to facilitate testing. Watching the output log variable the whole time is a little tricky as it sometimes changes quite quickly. Audio cues quickly report whether something worked or not even if they do introduce another (small) point of failure.

Initially input was in values between 0 and 255. Late in the evening I decided that figuring those out from hex was too much hassle.

So, of course, I went overboard and coded up a little hex converter. The explanations I found for how to do it were amazingly complicated. I started coding, gave up, and tried again. Eventually I found an explanation from Cisco of all places that explained it.


F = (F * 1)

FF = (F * 16) + (F * 1)

FFF = (F*16*16) + (F * 16) + (F * 1)

My values would always be two characters long so it was then just a matter of coding a calculator that would step in and convert numbers when they were provided before handing back control:


It’s long but not all that complicated really.

That meant that I’d need to input the raw hex values. Pretty good.

That was hassle though so I decided to push things a little further. You know what they say – if a job’s worth doing it’s worth writing a script to do it for you!

So after a bit of jiggery pokery and some differences between Scratch 1.4 and the (currently) web-based Scratch 2.0 I had two versions that both worked. Convert the QR code at ZXing and paste the output as input. My code identifies the required values and converts them to stats automatically.


I’ve been playing around with Scratch again. This time to see whether I could put together a prototype of my game. It’ll only ever be a prototype for the simple reason that Scratch can’t process QR codes and creating a hex to decimal converter is too much hassle. Sure, I could build one but why bother when that’s not supposed to be part of the functionality anyway.

In building it I’ve discovered a few things:

1. My HP algorithm is garbage

The idea was to flatten the variance somewhat. It’s a little too effective at that. Plenty of times QR2 (HP 55) ended up with higher HP than QR1 (HP 91). Yeah, that’s not good. I’ll have to rethink that one.

2. Damage resistance works

I’m actually really pleased with it. It should make the health thing less of a problem than I anticipated. Here’s the formula I’m currently using:

(Defence/2 + Rand(1,25))/100

It creates a multiplier, unsurprisingly. It takes up to 75% off the hit but also doesn’t create excessive randomness. It may need tweaking but it’ll do for now.

3. Luck sort of works

It gives a multiplier of 0.1, 1, or 1 to 2.2 as planned. Whether that represents luck enough remains to be seen. Sure, it increases the damage proportional to the luck but does that represent luck in a way I actually want?

I’ll have to give it some thought. The way I’ve implemented it works though, so there’s that.

While bashing away at my design document I started to think about luck. Not fortune but in game luck mechanics.

Perhaps it should work as a multiplier for attacks? If so how should variance be generated?

I considered doing something like this:

Damage * multiplier (1 + 2*[x(Rand(0,1)/x])

Where x = luck value between 1 and 10. Additionally in this case each instance of Rand would result in a fresh value: 3 * Rand(0,1) would be the same as Rand(0,1) + Rand(0,1) + Rand(0,1).

With a luck value of ten it would be:

1 + 2 [10(Rand(0,1)/10]

Essentially taking a mean average of Rand. The higher the luck value the closer to 0.5 it should be, in theory.

Except that means that lower luck gives higher variance and has a higher chance of being above 0.5. Guess that mechanic is going in the bin then!

I decided to try a different method instead:

damage * 2[Rand(0,10) + Luck/100]/10

So a luck value of 77 would work out as follows, assuming Rand = 5.3:

damage * 2[5.3 + 77/100]/10 = damage * 1.214

Something I’ve yet to explain is this – Rand is filtered. Results of 1 are kept as critical failures (and don’t add luck), values between 1.1 and 4.9 are rounded up to 5 – luck value (i.e. a total multiplier of 1.0).

This should mean that the total spread could be a multiplier of 0.2, 1.0, or a bonus ranging from 1.2 to 2.2.

Low luck doesn’t generate more critical failures but it does cap the height of the bonus. I’m not sure if that’s the way I want to go for certain but it’s at least a start.

I tend to dip in and out of projects. Sometimes I’ll power through something quickly, say if there’s a hard deadline. Most of the rest of the time I work on whatever takes my fancy. My projects generally don’t work if forced – be it a banner for someone else or a sculpt for me. I need to be in the right creative gear.

I’m still learning how to deal with this and my current approach is simply to have a vast buffet of things available. This may risk watering down my enthusiasm, admittedly, but perhaps it’s better this way so I can have something to work towards when a given mood takes me. I have yet to master control of that.

Ask me what someone else is hiding from themselves and I can probably give you an answer in a few moments. Ask me to figure out why I just can’t get my head around how that shoulder should look and I’ll look like this guy:

Herp derp

At the moment I’m powering away on a game design project as best I can but I’ve not forgotten about some of my other things. Video work was suspended last week due to lack of hot water (HD and greasy skin just doesn’t seem like a good combo) but what of the steampunk raygun I showed off on the blog a while ago?

It’s sitting on my coffee table undercoated in black. I’m simply not in the mood to paint it right now and so it waits.

I’m considering hunting around for another source of such weapons in Cardiff in order to create a whole range of steampunk armaments. Too few decent weapons are available online. There’s only so many badly done Nerf weapons I can tolerate.

How cool are Nixie tubes?

13 August 2013

Last night I was sitting in bed scribbling on my scratchpad (as opposed to my nice books) whilst pondering the mechanics for how this game might work.

The first thing I did proved extremely useful: I converted the 0 to 255 values to ranges between 1 and 100. It’s not a big step but immediately the numbers became easier to think about.

231, 70, 38, 246 became 91, 27, 15, and 96.

Looking at them it was suddenly clear that the current methodology I was employing for determining hitpoints just wasn’t going to work. Even if I multiplied them by five that’d still give a range of 5 – 500. Yeah, that’s not going to work. 20/255 would translate to 40 HP even after that kind of multiplier. Erk.

Perhaps instead a base HP should be assigned, say 150, which is then affected by modifiers. E.g.:

150 + Rand(0,100) + HP value (0,100) = total HP

That’d give a range of ~150 – 350. Not bad.

The question then becomes whether really tough critters should be available. Maybe the ceiling should be raised to 450?

150 + Rand(0,100) + 2*(HP value (0,100)) = total HP

Food for thought.

Then there’s the defence value. I’d been thinking about it in the style of Falllout: New Vegas treating it as a damage threshold. Anything below that value is completely ignored, or something like that.

What if instead I treated it as a percentage damage reduction?

E.g. 230/355 = 90% resistance

Finally I had a think about attack damage. Perhaps something like this could work:

Attack value (0,100) * multiplier (affected by luck value)

Perhaps critical hits should be a feature?

I’ll keep thinking.

I’m still mulling over the game mechanics but as I potter around thinking about the possibilities something occurs to me – how easy to I want this to be, probability-wise?

Ogrebane suggested in a comment that I should take the attack/defence value and multiply it by a random number between 0 and 255 (if I read it correctly). I’m thinking that might make the variables a bit too difficult in terms of their size.

The thing that’s bothering me is that I could probably plot a graph of the values attainable. Of course I suck at working with large amounts of stats and as such have no convenient way of graphing them.

By that I mean what if the mechanics work as follows:

Attack variable * RAND(0.01 to 1.00) = Attack power

Defence variable * RAND(0.01 to 1.00) = Defence value

Defence value – Attack power = amount of damage inflicted

I’d like to be able to plot that on a graph or similar to allow me to quickly see roughly how often a set of two values will work out doing any damage at all. I can easily work out any combination but it quickly becomes a vast data set that I’m not sure how best to depict on an Excel-style graph.

I’m also considering factoring in the luck stat because as can be seen by the table attack power 70 can only inflict damage about 12% of the time and even then barely any damage is caused at all.

Perhaps some sort of base damage should be created? Or perhaps the stats should be derived from the 0 – 255 mechanic to create something a bit more human-friendly, like 0 – 100.

I’m having fun playing around with the concepts anyway and that’s rather the point of the project. Once I have a better idea I may even throw it together in Scratch just to watch it work. Exciting!

I’ve not quite figured out the game mechanics yet but I’ve been having a think about the visuals.

Each thing generated from a QR code should ideally have a visual representation. I’ve got a vague idea of the sort of thing I’d like them to look like but I’m open to changing that depending what comes along.

I was thinking that the eight values between 0 and 255 could be used for a number of things

For example creating a 3D shape consisting of a number of points (sort of like a 3D asterisk) with some texturing based on a random colour value, processed with one of a number of filters (such as a noise filter). Nothing too complicated, really.

That said I’ve been playing around with something called Mandebulber and this thing is basically open source art.settings-and-such

Settings for the image above

Perhaps using it to power the generation of images for the QR codes would be the way to go, once I get the hang of how it works. It also supports client-server stuff meaning in theory the finished program could ask a server to do the grunt work.

Remember Limp Bizkit?

10 August 2013

Yesterday I talked about pulling data from QR codes. Today I’m thinking about how to use that data.

We’ve got eight values between 0 and 255. How many should we use?

There’s far more data than just eight values, sure, but how many can we realistically count on being there? I was planning on just using the first eight to be safe but it seems there’s insufficient variety there. In fact, on further inspection, there’s not enough variety between two URLs on the same site:



43 86 87 47 47 03 a2 f2 f7 77 77 72 e6 76 96 16 e7 46 26 f6 d6 22 e6 36 f6 d2 f7 66 96 46 56 f7 32 f7 17 56 96 36 b2 d6 c6 f6 f6 b2 d7 06 17 06 57 27 32 d7 06 c6 56 17 36 52 05 f9 11 0e 0a 4a 11 6f ac 00 ec 11 ec 11 ec 11 ec 11 ec 11 ec 11 ec 11 ec 11 ec 11

Whereas http://www.giantbomb.com/articles/the-collusion-of-money-drama-and-pride/1100-4709/ becomes:

44 86 87 47 47 03 a2 f2 f7 77 77 72 e6 76 96 16 e7 46 26 f6 d6 22 e6 36 f6 d2 f6 17 27 46 96 36 c6 57 32 f7 46 86 52 d6 36 f6 c6 c7 57 36 96 f6 e2 d6 f6 62 d6 d6 f6 e6 57 92 d6 47 26 16 d6 12 d6 16 e6 42 d7 07 26 96 46 52 05 f9 00 5a 0a 45 d8 09 ac 00 ec 11

There’s barely any variance until 25 values in, first digit excepted.

Sounds like we’re going to need to pick eight values starting from a random point in the set, possibly excluding the first 8 to be safe.

Let’s assume we’ve got our eight values though and they are as follows:

231, 70, 38, 246, 214, 34, 230, 54

We could use all eight but I’m thinking that I might want to implement move sets or something else later. What if instead we just take the first four and go from there?

So, 231, 70, 38, and 246.

How about we make them mean HP, attack, defence, and luck?

For the moment let’s talk about it as if it were a tabletop game as that’s what I know. We’ll also keep things as simple as possible in an attempt to avoid confusion:

231 HP out of a possible 255. Pretty beefy!

70 attack out of a possible 255. Not so good.

38 defence out of 255? Eek, not great either.

246 luck – that could make all the difference.

At this stage perhaps we should use the other data set from yesterday:

55, 50, 230, 54, 246, 208, 236, 17

55 HP, 50 A, 230 Def., 54 luck.

These two face off in a turn-based battle. Let’s assume dataset 1 goes first due to its superior luck.

It strikes for 70 damage against a defence of 230 hitting for a grand total of –160 (i.e. 0). Well that’s no good. It’ll never be able to damage anything with a defence value over 69. Hmm.

I was considering having them roll virtual dice but the randomness element only really works on a small scale. Rolling 70 virtual D6s will generally always work out around 250 (+/- about 20)

I’m going to have to go away and put some thought into how best to resolve this but I wanted to get my thought process so far written down.

Are you a byte?

09 August 2013

A quick search this morning pointed me towards this tool.

It decodes QR codes into raw data rather than doing the whole parsing thing. Very handy.

Putting in the URL for Giant Bomb’s Papers, Please video gives the following output:


Taking the first section, 43 86 87 47 47 03 a2 f2, we can get the following decimal values: 67, 134, 135, 71, 71, 3, 162, 242

Each one is of course between 0 and 255. That’s handy. Here’s another QR code, this one for WordPress:

Raw text


Raw bytes

41 46 87 47 47 03 a2 f2 f7 76 f7 26 47 07 26 57 37 32 e6 36 f6 d0 ec 11 ec 11 ec 11

Hmm, 41 46 87 47 47 03 a2 f2? Lots of that looks familiar, doesn’t it?
Not good.

What if we take the third strings instead?
Giant Bomb: e7 46 26 f6 d6 22 e6 36
WordPress: 37 32 e6 36 f6 d0 ec 11

So those give us:
231, 70, 38, 246, 214, 34, 230, 54
55, 50, 230, 54, 246, 208, 236, 17

Now there’s a bit more variety! Handy stuff.

Eight values between 0 and 255. That’s enough to start building something from that sits somewhere between curated and procedurally generated.

See where I’m going with this?

We can? Thanks, mom!

08 August 2013

I heard back from my MP today. I wrote to her a while back and was wondering if I’d hear from her at any point. The issue I was concerned about is Mr. Cameron’s extensive filtering plans and Claire Perry’s little crusade against what she perceives as the evils of human sexuality.

Thankfully my MP’s response was not only positive but well thought out too. She even raised points I hadn’t considered:

Cyber-bullying is a much bigger issue than kids seeing something a bit NSFW. Kids, especially teenagers, are very good at being viciously cruel towards each other. Lulling parents into some sort of false sense of security because filters prevent them visiting porn sites doesn’t seem a good way to go.

It’s such a refreshing change from the dismissive arrogance I experienced with Alistair Darling as my MP. I might actually write to my MP again in future given how reassuring the response was. I’m glad to have someone on side that is actually useful.

Thank you, Jenny Willott.

I come back.

07 August 2013

Something I love about living in this era of video games is the fact that along with huge flashy productions we also get interesting low-tech titles.

I phrase it that way because Papers, Please could well have existed long ago. It doesn’t look like much but thankfully it leans into that.

I’m not a huge fan of crappy graphics. Some people love indies for that stuff, personally I prefer well-suited graphics. I’ve got no problem with Fallout and Fallout 2 but Wasteland is too lousy for me.

This game on the other hand is set in 1982 in a dismal (fictional) Eastern Bloc state. The tone is both dark and humorous, possibly based on the classic formula (comedy = tragedy + time).

Here’s a Giant Bomb Quick Look of the game.

I played with the beta a while back and really enjoyed it. I think I’ll hold off buying it for a little while simply because of the number of other games on my plate at the moment. It’ll keep.

In the meantime I would recommend you head over to PapersPlea.se and take a look at the game.

You’re like a 7/11…

06 August 2013

Back in December 2012 I wrote about FLGSsFriendly Local Game Stores. They’re a topic that has arisen again, unsurprisingly.

I’ve been actively insulted because I questioned the status quo. First a let’s get you up to speed. Here’s the part that caused the most offence:

I shouldn't have to "support" a shop. If their business model is sustainable then they'll stick around and I'll buy from them because they're the best option. If they're not that's their problem. It's literally their job to make customers want to buy from them.

Which received the following response:

As I have become friends with one of the local shop owners, and really get to see what all goes on in the financial books... Go fuck yourself and the high and mighty horse you rode in on. We're not talking about big chain hooby stores, we're talking about the blood and sweat someone shed to live their dream of owning a hobby/game shop. Every purchase made is another dollar towards the next order. towards employee wages. Towards MAYBE being able to give your hard working employees a small raise if it has been a really good year. Between magic, warhammer, board games, other card games, warmachine, infinity, etc etc etc etc... Stores have to invest a LOT of capitol into keeping shelves stocked and GW fucks them pretty hard in this regard ($10,000 or stock to be a brick and mortar retailer).

It would seem the notion of how a business runs in a capitalist environment is entirely lost on a great many wargamers if this chap is anything to go by. The blood and sweat someone shed to live their dream?

I’ll tell you what that makes me think of:

Sorry, your business is failing because you gave it a bit too much heart and soul?

As a business person there’s plenty of interesting things to talk about on the subject. As a customer my take goes like this:

Not my problem.

The deliberate callousness is important. As a customer I am not there to wonder what their profit margins are. If they’re making a killing then good for them. If they’re just scraping by too bad. Their job is literally to make the business work. If it isn’t then they need to work smarter.

I say smarter because for the most part calling any of them lazy would be grossly unfair. They love what they do and do indeed put their hearts and souls into it. Unfortunately it takes more than that to make a business a success. It’s difficult but the reality is that thought needs to be put into what makes the business money.

For example – it’s easy for most local game stores to generate good will. People like them and have fun there. Unfortunately the love of one’s customers doesn’t pay the lease.vlcsnap-2013-08-06-22h04m35s179

Hello, UNICEF?
Yes, I'd like to donate some of my immense riches.
What's that?
Children are still starving in Africa because wife love is worthless to you?


The trick to a good business strategy is of course trying to figure out how to convert that positivity into income. I doubt it’s easy but it is their full time job to do precisely that.

If keeping inventory and selling it isn’t generating enough to pay the bills then there are three options:

  1. Work to sell more
  2. Reduce costs
  3. Change focus

Lots of wargamers don’t want to hear it but let’s be fair – if not enough people are buying then their opinions are meaningless. The customers matter more than the target market. The difference being the former exchange their own money for goods and services rather just talking about it.

From my perspective I’d rather pay to play and feel no obligation to purchase goods from them. I have enough goods and not enough money for the next goods I want. I do have some money that goes towards entertainment each week. It’s not much but I either go to the cinema, or buy some lunch, or have a few pints. At the moment there’s no avenue for that to go to a FLGS.


Always make it easy for people to give you money.

-Moist von Lipwig

If you need money and people with spending money are coming into your shop why are you letting them leave with it?

Service industries are growing. Retail on the other hand…

The business environment changes. As a business owner situational awareness and survival instinct are what keep the coffers full. Getting me to want to spend money is all well and good but learn to close the damn deal!

No, really, a towel.

05 August 2013

There was a post on /r/Games recently about staying on current generation games consoles for a while longer that left me scratching my melon.

The new consoles don’t come out until the end of the year anyway and no matter what happens it would be a true miracle if any of the launch titles were all that good. I don’t recall a single games console that launched with titles that were anywhere near as good as those available a year or two later.

Sometimes they were good. Lots of the time they were mediocre.

This notion of the new consoles coming out being the time to buy them boggles my mind. Wait for the retail price to drop. It’ll take a while but by that time several things will have happened:

  • Plenty of releases will be available rather than just the launch ones. Perhaps even some good ones!
  • Hardware issues (RRoD, YLoD, etc.) will have reared their ugly heads.
  • The promised features and actual features will have become obvious. Sometimes not everything is ready to go at launch but by then it’ll be obvious which things were just smoke.
  • A better view of which platform is dominating will be available.
  • Oh and the price will be lower too, just in case we forgot about that.

At this stage we’ve had the same consoles for an absolute age. The games coming out on them look pretty great and the older titles are available cheaply. I’m actually looking to buy an Xbox 360 some time soon for that very reason.

The notion of owning one earlier did come up but for the longest time I lived with a close friend who owns one. These days we’re at opposite ends of the country so that’s a bit tricky!

I wouldn’t advise waiting until the end of a generation but at least wait until it’s clear that the hardware won’t melt itself.

Something I’ve been thinking about recently is the potential for fun using 3D printers.

Sure, I could use one to make fancy parts, conversion kits, or any number of other awesome professional and hobby projects. That’s cool.

Alternatively I could use one to make the pieces needed to play a tabletop game if I want to try it out. Sure, they wouldn’t be as nice as the proper ones but they’d be a lot more serviceable than coins or cardboard cut-outs.

I don’t mind using my imagination but it’s a lot easier when there’s something to bridge the gap. It’s hard to relate to a playing piece that looks like a puddle of red plastic, if you know what I mean.

Print out some graphics, pop some plastic connecters in place, and a some figures and you’ve got Space Hulk good to go. I’ve no idea if I like Space Hulk, admittedly, but I’d probably never find out if all I had was a PDF and some graph paper.

My kid could paint that.

03 August 2013

Back in 2003 I was very active on Introversion’s Uplink forum. The hum of conversation rarely ceased and life was good.

One thing stood out though – whilst the people were often lovely there was the slight issue that there was no connection to reality. The people were usernames and signatures, little more.

I thought it’d be nice to have little profiles for each person with a picture and a little bit about them. We were already communicating but it’d be nice to have a meta page for each user so we could learn a little about our fellow users.

Putting these thoughts into action I got in touch with another forumite, Stewsburntmonkey, and pitched it to him. Within a short space of time he’d setup a subdomain and built the system. It was called The Uplink Directory and went live in the first week of April 2003.

Here’s the announcement from Introversion’s Chris Delay from May the same year. The last time it was available seems to be Q1 2006.

So, that little trip down memory lane was lovely but why did I bother recounting it?

MySpace didn’t start until August 2003. Social networks were in their very infancy.

Remember me yammering on about hashtags in the context of NapierTV?

There have been various other occasions too with that sort of thing. It makes me wonder whether my dismissal of physical media for digital content falls under that banner too. People look at me strangely and don’t seem to understand. In five years are they going to have changed their tune?

Pioneering things is tough and generally disheartening. Should I persevere and try to learn how to make my ideas the next big thing? How do I go about crossing the bottomless chasm that is other people not understanding? I can’t empathise and understand what confuses them about new concepts. That’s not a skill I possess. Do I need to find someone else to do that bit for me or aim to find a different way of presenting things in order to create a group of people to do the championing for me?

I watched The World’s End today. I’d recommend it even if it didn’t blow my socks off.

Mostly I’d recommend it for the character study that is Gary King.

The presentation obviously pours scorn on him for the sake of comedy but I find myself wondering what the middle ground is between the misery of his life and the drudgery that is his former school friends’ lives.

Obviously we can’t be teenagers forever. People like Gary do exist – unwilling to let go of that time. But over time it becomes increasingly pathetic for some reason.

We’re told that we have to abandon that thirst for excitement and life in favour of stability and council tax payments.



The thing being that Gary’s lifestyle clearly doesn’t make him happy but then the choices the others made don’t seem to have made them content either. They’re perhaps not as dramatically miserable but their lives don’t seem to have worked out in any particularly interesting ways either.

My question is simple: what’s the middle ground?

I haven’t done any work on CS50 in quite some time and I’m increasingly feeling I should get back into it.

The reason for this is the number of video game ideas that are starting to bubble up in my head. There’s various small elements I want to try in order to eventually build up to something bigger.

Previously I’ve been conflicted. On the one hand I know starting a big game is probably a bad idea due to my laughable lack of experience and knowledge. On the other hand I wasn’t able to boil down any one mechanic into something that could be standalone to have a learning experience.

With several smaller ideas brewing it’s starting to look like I might be able to put together something fairly rudimentary and have fun with it.

Of course, even small ideas are probably way too big. I’m fairly sure my Imperial date converter is bugged, for example. The notion of doing something bigger is kinda nuts.

I remain conflicted – should I power ahead come-what-may or attempt to be meticulous?