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.

  • RoboLeg: this game would be PERFECT for mobile, and I’d happily pay 10 bucks or so for it.
  • Jepp: 1) Please keep critiquing games by building new ones :) 2) The non-hand holding, simple systems integrating...
  • Jack: Are you going to release Morphblade for iOS or the Nintendo Switch? I would really like to play this on my...
  • Spaceman Moses: One-eyeing this on my phone from the depths of my covers I lazily ask: what do you mean XCOM2 clarity...
  • kripto: For what it’s worth, I also like Morphblade more than Imbroglio. Although, to be fair, I’ve also...
  • 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

    SWAT 4: The Movie Script

    Cloak And Tagger

    I’ve had this vision for how music should be played in the future for ages now: tagged and sorted by mood, style, and speed. You’d click a few words – ‘fast’, ‘instrumental’, ‘electronic’ – and a playlist would be auto-generated from a randomised selection of tracks fitting all three criteria, weighted towards highest-rated and newest. Then you’d chuck it on your MP3 player and cycle downhill to work. Or I would.

    I decided that since we’re already pretty much in the future, there must be something out there that already did this. The trouble is that searching for anything to do with tags and anything to do with media players gets you a billion results about ID3 tags, even if you add a “-id3”. Results are still talking about ID3 tags, they’re just not calling them that.

    But I remembered Tony saying Winamp’s media library was really good. I’d already tried it, shortly after he said that, and hated it, since I didn’t really have a use for a media library beyond the simple big playlist I already have. And it doesn’t support custom tagging in the way I describe. But since I do already use Winamp for everything – and I just found a new skin that makes it look like the future – it couldn’t hurt to fiddle around and see how close I could get.


    Very close indeed, turns out to be the answer. I can do all of what I mention above except the selection ‘weighting’. I can make the list only things with a rating of three or higher, or only things two weeks old or newer, but not a random mix weighted towards those things. Essentially I need a biased shuffle, and I don’t know of anything that can do that.

    But custom tagging can be done, in a stupid sort of way. Winamp is nice enough to let you create your own custom ‘views’ – essentially filters for your music library. The default ones are things like “Never played”, and you can then drag everything that comes up in that View to the Playlist section and it’ll make a playlist of them. What you can do with the custom views is to specify that you only want tracks whose Comment field (a part of the ID3 tag) mentions ‘fast’ and ‘electronic’ and ‘instrumental’. Then instead of having an external tagging system that your media player would have to keep track of itself, you write your tags however you like in the Comment field, and they’ll stay with the file if you ever do change media players.

    The stupid bit is that you have to create a new ‘view’ for each combination of tags you want to filter by, so it’s a few steps rather than just clicking a word. If anyone knows of anything that can do this better, do share.

    I’m not trying to deconstruct my entire music collection into Pandora-like musical properties, I’m trying for a more teleological approach. That is, they’re tagged after what I might want to use them for. So there’s no “mild tonal syncopation” tag, because I’m rarely specifically in the mood for mild tonal syncopation, but there is a “wistful” one. There’s a “chilled” one for working to, and a “cool” one for playing games I’m good at to. Combinations thereof create a smaller playlist that more specifically nails the mood you want from the music, and you can even sort by ‘Times Played’ and select the fifty you’ve heard least often.

    Yes, the theme for this week is Scientifically Quantifying Art. Because you can. The rest of the week I’ll be away quantifying a big chunk of art in a great deal of detail, and I look forward to not being able to tell you about it when I get back.

    TomP: You can do it a similar way, (i.e. using ID3 comments for tags) with 'smart playlists' in iTunes.