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.

Hitman header tunnel

Rewarding Creative Play Styles In Hitman

Far Cry Primal Thumbnail

Postcards From Far Cry Primal

Snowball jack header

Solving XCOM’s Snowball Problem

Kill Zone and Bladestorm

Kill Zone And Bladestorm

BAFTA Featured

An Idea For More Flexible Indie Game Awards

Sectors Header

Teaching Heat Signature’s Ship Generator To Think In Sectors

DXHR Open area

What Works And Why: Multiple Routes In Deus Ex

Heat Signature Natural Numbers

Natural Numbers In Game Design

Pharma Header

Naming Drugs Honestly In Big Pharma

Writing vs Programming

Make A Game Tutorial Thumbnail Featured IMage

Let Me Show You How To Make A Game

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

Her Story banner

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

Invisible Header

What Works And Why: Invisible Inc

Super Game Jam Header

Our Super Game Jam Episode Is Out

Shadow of Mordor Header 2

What Works And Why: Sauron’s Army

Heat Signature Talk

Showing Heat Signature At Fantastic Arcade And EGX


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

Murder, She Wrote

The Formula For An Episode Of Murder, She Wrote

Heat Signature Wide 2

Heat Signature Needs An Artist And A Composer

Heat Signature Floorplans Header

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

Gunpoint Steam Workshop

Gunpoint Patch: New Engine, Steam Workshop, And More

Distance Header

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

The Magic Circle

Raising An Army Of Flying Dogs In The Magic Circle

Floating Point Blog Launch

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

Floating Sine

Drawing With Gravity In Floating Point


What’s Your Fault?

Hoplite banner

The Randomised Tactical Elegance Of Hoplite

Gone Point

Here I Am Being Interviewed By Steve Gaynor For Tone Control

Heat Signature Thumbnail

Heat Signature: A Game About Sneaking Aboard Randomly Generated Spaceships

GRappling Hook Thumbnail

The Grappling Hook Game, Dev Log 6: The Accomplice

Alien Swarm Heroics

A Story Of Heroism In Alien Swarm

FTL Story

One Desperate Battle In FTL

Spelunky Banner

To Hell And Back In Spelunky

Game vs story graph

Games Vs Story 2

Gunpoint Breakdown

Gunpoint Development Breakdown

Max Payne 3

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

This is how you die

My Short Story For The Second Machine Of Death Collection


Not Being An Asshole In An Argument

Skyrim Diary - Frostmere

Playing Skyrim With Nothing But Illusion

Mainstream Games

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


A Short Script For An Animated 60s Heist Movie

Dark Messiah

The Magical Logic Of Dark Messiah’s Boot


Arguing On The Internet


Shopstorm, A Spelunky Story

Stealth Games

Why Are Stealth Games Cool?


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

Suspicious Manifesto

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

What Makes Games Good

Seat Quest

A Story Of Plane Seats And Class

Deckard: Blade Runner, Moron

Beneath Suspicion

Avoiding Suspicion At The US Embassy

Open Worlds

An Idea For A Better Open World Game

Level Up

A Different Way To Level Up

BioShock Ending

How I Would Have Ended BioShock

Meet the Spy

My Script For A Team Fortress 2 Short About The Spy

Team Fortress 2

Team Fortress 2 Unlockable Weapon Ideas

Football Manager

Don’t Make Me Play Football Manager

EVE Assassins

EVE’s Assassins And The Kill That Shocked A Galaxy

GalCiv 2

My Galactic Civilizations 2 War Diary


I Played Through Episode Two Holding A Goddamn Gnome

Machine of Death

My Short Story For The Machine Of Death Collection

Blood money and sex

Blood Money And Sex


A Woman’s Life In Search Queries

Second Life

First Night, Second Life


SWAT 4: The Movie Script

I Made A Taskbar Timer To Keep An Eye On Wasted Time

I definitely waste more of my time than I’d like. Mostly on Twitter, but also just with this mysterious business of general internetting. I’ll sometimes catch myself switching between 7 open browser tabs, each containing something I want or need to do, and doing none of it. And none of the productivity plug-ins or apps I’ve found do quite what I want, because my requirements are incredibly specific. What I needed was:

  • Something general. No use tying it to specific websites, or even my browser, since I waste time all over the place.
  • Something non-enforcing: hard rules don’t work for me, because I always hit situations where they don’t make sense, so I override them, and you can guess where that leads.
  • Something persistently visible: if I have to switch to it or check it, I won’t.
  • But not something eye-catching: if it’s ticking away on-screen at all times, it becomes a distraction of its own.

I found a few things that were close, but their faults always meant I stopped using them. So I made my own, in Game Maker Studio.

Taskbar Timer Taskbar

(v3.0, 2.5MB, Windows, installer)

It’s a little application that you leave minimised, and its name on the taskbar changes to reflect how many minutes have passed since you set it.

So when I sit down at my PC, I start it, and then only when I actually get down to work do I click the satisfying button to reset the clock. That way I can glance at it to see how much time I’ve wasted, and once that becomes a point of shame and regret, I get on. And I click Reset, so it’s now a tally of how long I’ve been productively working.

Tom's Timer 3

It only shows minutes in the taskbar so that there’s no distracting ticking, but it shows seconds in the window if you switch to it, so you can see it’s going.

I only just made it today, so I can’t say whether I’ll stick with it, but I like it so far. It’s very satisfying, and its discouragement is very gentle. Once I’m aware of my bad habits I’m usually pretty good at adjusting them subconsciously without much faff.

Gustav: Cool. I once made a small app to counter a similar problem. At random intervals, a window would pop up and ask me "what are you doing right now?" I would then write a few words about what I was currently doing ("game dev", "browsing Reddit", " doing homework", etc.). I also saved these words with time stamps, which is a bit funny to look back at once in a while.

As you wrote, just the mere act of having to be conscious aware of what you are doing helps a lot with minimizing procrastination.

TR: Depending on your work habits, if you get the app to check the currently active window title/class, you could perhaps get it to automatically determine whether you're working or not.

If a window with "gamemaker" in the title is the active one, you're working. If you find "facebook", "twitter" or "gmail" in the title, and the class contains "Chrome", then you're clearly not...

If you have access to the Windows API in GM, it's



Iajawl: The secret is out. Tom Francis wastes time writing blog posts about wasting time. I then waste my time reading and replying. Possibly someone else will waste their time reading what I am writing now.
When will this madness end !

Gustav: TR: Then you might as well install a dedicated program such as RescueTime. It tracks and organizes what you do on the computer.

R Flaum: I use ManicTime for similar purposes. The advantage is that you don't have to set it yourself -- it automatically keeps track of what you're doing. The disadvantage is that you have to pay for it.

Tentaculat: So you used Game Maker Studio to write a clock application? You're trolling, aren't you? What about efficiency? This is an outrage! THIS IS OUTRAGEOUS. School children have been ARRESTED recently for doing something similar.

You can download Visual Studio Community edition. Start a desktop application project. Drag a label or whatever c# or uses these days to display text. Drag a timer, set the interval to 1000s, set enabled to true.

Drag a button. Double click, write some code.

This application used 3.4mb, as opposed to 8.4mb, and it didn't touch the CPU%, whereas Tom's Timer fluctuated up to 0.8%.

Hang on, why the fuck is this using 3.4mb? Fucked if I know.

Publish, anyway.

It also had a smaller install footprint. Since .NET is cross platform these days, you could probably port it to other major platforms.

I give Tom's Timer 70%; it sets out what it intended to do, but with little flair or concern for optimisation.

Shaun Cheah: Thanks to Tentaculat's review, I will be acquiring a copy of Tom's Timer to test on my computer. I would be interested in seeing this Visual Studio knock-off, though. Efficiency is fun!