All posts


Game development








Hello! I'm Tom. I designed a game called Gunpoint, about rewiring things and punching people, and now I'm working on a new one called Heat Signature, about sneaking aboard randomly generated spaceships. Here's some more info on all the games I've worked on, here's the podcast I do, here are the videos I make on YouTube, here are some of the articles I wrote for PC Gamer, and here are two short stories I wrote for the Machine of Death collections.


By me. Uses Adaptive Images by Matt Wilcox.

Heat Signature’s Launch, And First Player Legend

A Leftfield Solution To An XCOM Disaster

Rewarding Creative Play Styles In Hitman

Postcards From Far Cry Primal

Solving XCOM’s Snowball Problem

Kill Zone And Bladestorm

An Idea For More Flexible Indie Game Awards

Teaching Heat Signature’s Ship Generator To Think In Sectors

What Works And Why: Multiple Routes In Deus Ex

Natural Numbers In Game Design

Naming Drugs Honestly In Big Pharma

Writing vs Programming

Let Me Show You How To Make A Game

New Heat Signature Video: Galaxies, Suction And Wrench-Throwing

What Works And Why: Nonlinear Storytelling In Her Story

My Idea For An ‘Unconventional Weapon’ Game

From Gunpoint To Heat Signature: A Narrative Journey

The Cost Of Simplifying Conversations In Videogames

What Works And Why: Invisible Inc

Our Super Game Jam Episode Is Out

What Works And Why: Sauron’s Army

Showing Heat Signature At Fantastic Arcade And EGX

What I’m Working On And What I’ve Done

The Formula For An Episode Of Murder, She Wrote

Heat Signature Needs An Artist And A Composer

Improving Heat Signature’s Randomly Generated Ships, Inside And Out

Gunpoint Patch: New Engine, Steam Workshop, And More

Distance: A Visual Short Story For The Space Cowboy Game Jam

Raising An Army Of Flying Dogs In The Magic Circle

Floating Point Is Out! And Free! On Steam! Watch A Trailer!

Drawing With Gravity In Floating Point

What’s Your Fault?

The Randomised Tactical Elegance Of Hoplite

Here I Am Being Interviewed By Steve Gaynor For Tone Control

Heat Signature: A Game About Sneaking Aboard Randomly Generated Spaceships

The Grappling Hook Game, Dev Log 6: The Accomplice

A Story Of Heroism In Alien Swarm

One Desperate Battle In FTL

To Hell And Back In Spelunky

Games Vs Story 2

Gunpoint Development Breakdown

Five Things I Learned About Game Criticism In Nine Years At PC Gamer

My Short Story For The Second Machine Of Death Collection

Not Being An Asshole In An Argument

Playing Skyrim With Nothing But Illusion

How Mainstream Games Butchered Themselves, And Why It’s My Fault

A Short Script For An Animated 60s Heist Movie

The Magical Logic Of Dark Messiah’s Boot

Arguing On The Internet

Shopstorm, A Spelunky Story

Why Are Stealth Games Cool?

E3’s Violence Overload, Versus Gaming’s Usual Violence Overload

The Suspicious Developments manifesto

GDC Talk: How To Explain Your Game To An Asshole

Listening To Your Sound Effects For Gunpoint

Understanding Your Brain

What Makes Games Good

A Story Of Plane Seats And Class

Deckard: Blade Runner, Moron

Avoiding Suspicion At The US Embassy

An Idea For A Better Open World Game

A Different Way To Level Up

How I Would Have Ended BioShock

My Script For A Team Fortress 2 Short About The Spy

Team Fortress 2 Unlockable Weapon Ideas

Don’t Make Me Play Football Manager

EVE’s Assassins And The Kill That Shocked A Galaxy

My Galactic Civilizations 2 War Diary

I Played Through Episode Two Holding A Goddamn Gnome

My Short Story For The Machine Of Death Collection

Blood Money And Sex

A Woman’s Life In Search Queries

First Night, Second Life

SWAT 4: The Movie Script

Welcome To Site 7

Look, I changed everything! I usually redesign my blog a bit at the start of every year, but this one is the first time I’ve built a completely new one from scratch in more than eight years. As is now tradition, I’ll give you a song to listen to while you snoop around.

Site Six

It’s been like that for two years, and there were a six things I wanted to change:

1. A title

I’ve always struggled with this – I like to be clear and descriptive, but most personal blog titles make me cringe. I also have a bad name for possessive apostrophes, so “Tom Francis’s Blog” is just painful. I used to avoid the issue by naming it something completely irrelevant, like ‘Ugly Fruit’ or at one point ‘Politics’. Then I avoided it by removing the name completely, so the last few iterations have had no title at all.

This time, I was determined to have one even if I immediately regretted it. After trying several I immediately regretted, I gave up and left it as the placeholder: “Tom Francis Regrets This Already”. I still regretted it, but neatly, the more I regretted it the more appropriate it became.

2. An intro

I looked at a lot of people’s personal sites to figure out how to improve mine, and it’s weird how many of them don’t explain who the hell the person is until you rummage around. In the spirit of explaining things to assholes, I really wanted to do a better job of that. The previous site did it in a few terse, reluctant words, so I tried to make it a bit friendlier this time.

I also think a lot of us are still under the impression that the ‘home page’ is where people arrive, and then they delve into the ‘post pages’ from there. In reality, most people discover sites when they’re linked to a particular page, so they’re more likely to see a particular post first. That’s why the new intro’s on every page.

3. Responsive design

Literally more than half of internet users are browsing from a mobile device now. And they vary wildly in resolution. I’ve never liked fixed-width designs, and I’ve never had one here, but previous versions all needed a resolution of at least 1024 pixels wide. They were basically useless on mobile phones.

Rather than make a separate mobile version, which’d scale badly to the huge middle ground between a Retina iMac and a first-gen smartphone, I’ve made the whole design resolution-agnostic. Try resizing the browser window – it should adapt all the way down to about 250 pixels wide, so it should be readable and usable on anything beyond a scientific calculator.

I’m also using Matt Wilcox’s Adaptive Images code to automatically resize images to your screen width before you download them, so smaller-res devices don’t download unnecessarily big images.

4. Bigger images

At the other end of the scale, it’s ridiculous how many sites look awful at 1920×1080. That’s by far the most common resolution now, and the internet at that res is a sad ocean of wasted space around unreadable text. I wanted to make sure everything expanded at high resolutions, and I particularly wanted big, sharp, colourful images. Most of the games I write about are gorgeous, and it always makes me sad to see them relegated to little thumbnails.

5. More featured posts

Previous designs did have a column for posts I wanted to highlight, but it was a clumsy JavaScript array I had to manually text-edit every time I wanted to add something new. So I never did. This time, I wanted those to be bold, colourful little badges, with clearer titles, and a much easier way to add to them. I can just add a tag to any post to add it to the rotation there, so I’ll be expanding that set as we go. You can also read all 30 with the link at the bottom of the right column.

6. Ways to subscribe

I realise not everyone uses an RSS reader – even Google, who make the best one, are basically abandoning it. I’m still keeping it, but I’ve now set up a Facebook page and a Twitter account that only ever post when I publish something here.

I think that’s it! Big thanks to Westley Knight, Jenn Frank and Graham Smith for testing and help. As ever, let me know in the comments if anything’s broken. If anyone’s interested in the stats, we’ve just passed 26,000 comments, this is roughly the 600th post (I deleted a few), and so far 1.4 million people have been here. Wow.


Magnus: Looks pretty damn great.

Ben Borthwick: Liking the new design - a minor thing though is I feel the main body text is slightly too big reading maximised at 1920x1080 resolution, although if I resize the browser window in any way (even if I have it the full size, just not "maximised" if that makes sense), it's fine.

kARL: 16 point font would be awesome, the text is huge and makes me feel like I'm blind as fuck.

Other than that great job. Here is to another year of great content.

Tom Francis: Cheers guys! Tweaked the font sizes for 1900 - how is it now?

Zeddy: I browse at 1920x1080 and this may be the only website I don't need to zoom in on.

Good show!

Lack: Overall, I rather like it; the featured articles part especially. And the jacket in your profile shot, I could never pull off black leather, only shades of brown.

Only niggle, don't care for the drop shadow on the text at the top of the page. Looks a bit messy when combined with the gradient. Okay; I'll admit that that's perhaps pedantic point, even for me.

Mickiscoole: New design looks pretty damn awesome.

(Also, the Explaining Things to Assholes link in this article is broken)

Ben Borthwick: Much better! Cheers Tom - as kARL alluded to, I did at one point think I'd accidentally pressed the shortcut for some sort of Large Print accessibility mode! Much more comfortable now I think (and easier to tell the difference between headings and text.)

Definitely liking the more efficient (not sure if that's the right word?) use of the space too - your blog has always been the reason I've stuck with a three column theme for my own, and every year I get more jealous at how well you're able to tweak yours and it still works really well.

Tom Francis: Argh! I made that mistake I never make, of leaving out the http://. I promise I haven't believed www is sufficient since 1997. It actually happened because of the noobification of address bars: if you copy and paste the URL from an address bar, it 'helpfully' clips off the vital http:// to make it look cuter or something.

Matt: I love the comment submission button. Just throwing that out there.

TychoCelchuuu: It won't let me comment in Opera. It says "You are posting comments too quickly. Slow down."

TychoCelchuuu: Actually that one just worked. I only get the error trying to post comments on your resume, maybe.

TooNu: ooh shiny. Hi Tom, good job Tom. See you later Tom

Niall: Tom, thanks for keeping on RSS - it's my main method of keeping track of everything on t'internet so I'd hate to see it die!

On a design feedback front, the text in the comment boxes doesn't scale the same as the rest of the page, so right now I've made the page text small yet readable but the only way I can tell when I make a typo here is by the red line that Firefox inserts, because I can't actually make out individual letters. (Ironically, Firefox doesn't recognise Firefox as a cromulent word...)

Shaun: I like this new site. It's slick and cool and it's got a certain something about that makes it really feel like it belongs in 2013.

Micah: Wow. The dynamic resizing down to tiny width is freaking amazing. Seriously the best, fastest, most responsive implementation of that I've ever seen. Why is this not everywhere?

Otherwise, looks good. Regret nothing!

MartinJ: On Opera, Win7, 1680x1050:

http://i94.photobuck... ...6a8c0f.jpg

Notice the "Continued". It's not a big issue, you can click on it just fine, but looks messy. Might wanna look into it :)

Matt: I just noticed that on mobile, the YouTube video for the level editor doesn't shrink with the rest of the site, so it doubles the actual width of the page.

Roy Gatsby: I love the Responsive design. What did you use to implement it?
A program or did you hard code the whole site?
Great job.

Fin C: Is the title of this post a very obscure reference to HL2's "Welcome to City 17"?