Starting to learn to program

twine early days

I’m currently dipping two tentative toes into the murky waters of programming. Games programming, to be precise. I suspect games programming is quite a bit like normal programming but with more guns at the end.

That image above is from a game called Schism which I’m currently writing, based in the IAT Arms Race universe. It’s created using Twine, an engine specifically designed for writing Choose Your Own Adventure-style games.

I’ve dabbled with various interactive fiction engines over the years – BASIC back in the 80s, Inform in the 90s – and it’s never quite clicked. The problem with interactive fiction is that it explicitly relies upon prose writing, something which is hard enough at the best of times let alone when you’re having to code around it. Twine has a unique flowchart interface which makes it very simple to structure a narrative flow, while still allowing simple code to alter events and track decisions.

Next week I also start FutureLearn’s Begin Programming course, which aims to teach some core programming skills which are of use for creating mobile games. It’s a seven week course and I’m a little skeptical about what it can realistically achieve in that time – we shall see.

Schism is still in very early stages but I’m plugging away at it. One of my main goals is to create semi-dynamic characters which track your interactions and adjust their behaviour appropriately. I’ll be sure to write more about it once I’ve progressed a little further.

DIY gaming part 5: Building the new rig

Last week I revealed the three components that would form the core of my new gaming rig. DABS delivered them promptly on the following Monday and that evening I set about putting it all together.

For a bit of context, the first time I built a computer, 10 years-or-so ago, I completely, utterly cocked it. I actually managed to screw the motherboard directly into the chassis, rather than onto the mounting thingies, promptly shorting the entire thing when I tried to turn it on. Not an auspicious start.

My next build was considerably better, but still took me the best part of a day to complete, with much stress and fiddling about, all the while convinced I was breaking everything and throwing away hundreds of pounds of kit.

This time round, it took me an hour and a half. And that was partly due to working in a tiny room crowded with random toddler paraphernalia.

I’m not sure whether I’m more adept at fiddling around inside a computer case or whether computers have simply got easier to self-build (I suspect a bit of both), but either way I was very pleasantly surprised.

Motherboards have changed a lot since I bought my last system. You can use a mouse in the BIOS! Quite remarkable. The Z97-A has a bunch of built-in overclocking gubbins which seems to have done a good job. Still, I was expecting minimal noticeable benefits in games – this was more about getting up to date, hopefully improving loading times due to DDR3 and faster SATA connections.

Instead, the two games which were really taxing my old system – Titanfall and Star Citizen – have gone from barely playable on low settings to running rather smoothly on very high. It’s a massive, massive change and very welcome indeed.

Funnily enough, RPS published an article today with CPU recommendations, their main one being the one I just purchased. So I guess I did my research properly!

DIY gaming part 4: Motherboard, processor & memory

It’s been a while since the last DIY article, which was back in May. I have, however, at last committed to the next major stage of my new system build. In fact, this is the most major stage, being that it forms the skeleton, brain and memory of the new machine.

Given that I’m chasing a fairly impossible power/value sweet spot, it took a while to pinpoint exactly what to go for. While researching I stumbled across this excellent hardware guide by CynicalCyanide over on the Star Citizen forums. It’s an excellent primer for buying computer tech in 2014 and it clarified a lot of my decisions – and also saved me a bit of money here and there with its pragmatic approach.

Star Citizen has become one of my ‘target games’, being a title which is majorly stressing my current system. In fact, it’s the first game I’ve encountered which I have to run on ‘low’ settings. I’ve not had that experience since the first Crysis on my previous rig, back in 2011.

After much deliberation, I settled on the following pieces:

  • Motherboard: Asus Z97-A. From reviews and general comments this appears to be a very, very good mobo for a good price. It’s sits in the top end of the value pricing bracket but has features you’d associate with something much more expensive. It’s also a Z97, which means it’s relatively up-to-date. Currently there’s also a £30 cashback on this over at DABS, as long as you buy it with…
  • CPU: Intel Core i5-4690K. It was always a showdown between an i5 and an i7 but, ultimately, the i7s are still too expensive for me. They also don’t present immediate benefits for gaming, though I suspect that’ll start to change over the next couple of years. Therefore the i5 is a bit of a risk in terms of future proofing, but it’s an overclockable CPU and up the high end of the i5s – it seems to be the ‘go to’ CPU for gamers.
  • RAM: Corsair 8GB (2x4GB) Vengeance DDR3 1600MHz. I’d originally planned to go for some G.Skill stuff as it’s highly rated but availability is a bit all over the place here in the UK, so I instead opted for Corsair. It’s a brand I’ve used in the past and they’re known for reliability. It’s also the same brand as my new rig’s CPU.

These pieces should arrive early next week. It’s been YEARS since I last built an entirely new machine, so that should be an interesting experience. The most difficult thing will actually be the logistics of backing up and shuffling everything around on my current system so that I can entirely wipe my main drive and put a nice, clean copy of Windows 7 on it. It’s going to be a hefty job, though cloud services like Dropbox and Google docs make the whole process vastly easier than it used to be.

More once I’ve put the thing together…

Spaceship time

My 21-month old son appears to be taking after me, as he’s entirely obsessed with ‘rockets’. I heartily approve.

I’m currently playing with three rocket-related projects.

First up, there’s Millennium Surfing, my first novelette (too big for a short story, too short for a novella). It’s about lots of things but mostly focuses on legacy (you know, because I’m a man in his mid-thirties who has just had a child). Currently halfway through editing the mofo, after which I’m going to attempt to actually sell it, on the advice of Kirstie. So I’ll blame her if nobody goes for it.

Then there’s a professional VFX project I’m working on which is currently under wraps but which I’m happy to say does include a spaceship. Not only that, but it’s a lovely custom spaceship built for the project and it’s looking spectacular. Hopefully I’ll be able to talk more about this around the new year. It’s pretty cool.

Lastly, following a pub chat with It’s A Trap’s Chris Burdett, I’m going to embark on a prototype/proof-of-concept sequence depicting some outer space shenanigans. Aside from anything else it’s to see just how far I can push the rendering quality in HitFilm 2, so it’ll likely also feed back into a tutorial over at FXHOME at some point.

Why I’m on Wattpad

If you enjoy my writing then you might want to pop over to Wattpad, where I now have a growing library of short stories. Check out my profile here.

I’ve had my short stories linked to from this blog for years now, in PDF form or similar. So why the move to Wattpad? Primarily it’s to do with finding the right platform for the job. This blog is great for posting occasional thoughts in a journal-like manner. It’s not so great for highlighting finished projects. It also doesn’t provide a great browsing and reading experience on tablets/mobiles.

Wattpad insists that it’s a social network for writers and readers, rather than explicitly a publishing platform. There’s a fair bit of branding spin in there but they have a point – it’s certainly successful at connecting writers and readers, especially in niche genres which have a ton of fans which aren’t always serviced by traditional publishing.

So grab the Wattpad app for your iOS or Android device and enjoy a Kindle-like reading experience. I’d suggest taking a look at The Comedian first, as it’s both recent and efficiently short.

I’m going to be transferring more of my stories over and I’m also working on a new project (based on one of my Future Learn sketches) which is rather more tailor-made for Wattpad. That one I’ll be releasing chapter-by-chapter over the course of a week, most likely.

I’m also tempted to take Evinden – my long gestating fantasy novel – and sling that on chapter-by-chapter. Evinden exists in first draft but needs extensive editing and expanding. The thought of slogging through the entire book before doing anything with it doesn’t excite me much, which is probably why I haven’t got round to doing it yet.

Wattpad offers something more interesting: edit a chapter, publish a chapter. That way I get to build a readership over time, hopefully start to get feedback as I go, and have an impetus to keep on going. Still not quite decided on the wisdom of that approach yet – first up I need to finish editing Millennium Surfing and decide what to do with that.

Lots to do.

My first novelette: Millennium Surfing complete!

According to this page on Wikipedia, most genre awards classify a novelette as being between 7,500 and 17,500 words, while a novella goes from there up to about 40,000 words. Presumably anything below 7,500 is a simple old short story.

Going by this definition, the short story I just finished writing, Millennium Surfing, is actually a novelette. Which sounds pleasantly quirky!

It’s about ego and ambition and stubbornness and technology and hubris. It’s about progress without restraint. It’s about flying around the sun really bastard fast. Essentially: one man decides to experience the future using vaguely scientific methods involving time dilation. There are what I hope are big ideas scattered through the story but it should also be a lot of fun. That’s the plan.

The first draft is finished and I’m currently taking a slight break before diving back in to edit it down. After that I’ll seek some feedback before deciding what to do with it. I may try to fire it off to Interzone et al to see if they’d like to publish it. If that doesn’t work I’ll sling it over to Wattpad, a publishing platform/social network that has been intriguing me for some time now.

TL;DR – finished a new story! Woo.

Future Learn: Start Writing Fiction: Weeks 6, 7 & 8

Well, this is nice:

FLcompleteTonight I completed the 8 week Start Writing Fiction course over at It’s been a fun and rewarding course. Though it’s aimed primarily at new writers, even for more experienced writers it offers something valuable: a reason to write regularly. Each week you’re given assignments and this alone has been fantastic – I’ve been more productive since the course began than I have been for a while.

So, time to share the final bits and pieces I created for the course. Continue reading