All posts

Games

Game development

Stories

Happiness

Personal

Music

TV

Film

TOM FRANCIS
REGRETS THIS ALREADY

Hello! I'm Tom. I'm a game designer, writer, and programmer on Gunpoint, Heat Signature, and Tactical Breach Wizards. Here's some more info on all the games I've worked on, here are the videos I make on YouTube, and here are two short stories I wrote for the Machine of Death collections.

Theme

By me. Uses Adaptive Images by Matt Wilcox.

Tom’s Timer 5

The Bone Queen And The Frost Bishop: Playtesting Scavenger Chess In Plasticine

Gridcannon: A Single Player Game With Regular Playing Cards

Dad And The Egg Controller

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

What Works And Why: Multiple Routes In Deus Ex

Naming Drugs Honestly In Big Pharma

Writing vs Programming

Let Me Show You How To Make A Game

What Works And Why: Nonlinear Storytelling In Her Story

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

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

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

A Story Of Heroism In Alien Swarm

One Desperate Battle In FTL

To Hell And Back In Spelunky

Gunpoint Development Breakdown

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

Arguing On The Internet

Shopstorm, A Spelunky Story

Why Are Stealth Games Cool?

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

A Different Idea For Ending 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

Pilot: Terriers

Opens on a conversation between two unappealing men in a pickup. A few lines into it, I know I’m going to love this show. Nothing about the premise is interesting or original, and the plot of the pilot is so over-familiar it could have been traced. But smart writing shows instantly, shows constantly, and never stops being a pleasure. Continued

Dexter Series Five

Ow, this was hard going. If you’ve seen all of season four, the John Lithgow series and the best yet, you’ll know what I’m talking about. If you haven’t, don’t read any more of this. I’m pretty sure I’ve already ruined it for both the people adjacent to me on the plane when I watched it. “Whose funeral was that?” “Uh…” Continued

Brevity Week

I keep trying to make time to write properly, but lately the Jack Bauer of responsibility has been growling that I “don’t have time for this dammit!” and shooting me in the kneecaps. So I haven’t written about any of the great new TV starting in the US right now, or the Team Fortress 2 Walletfucker Update, or Death Note, or Dexter, or StarCraft 2, or the trip to Vancouver I just got back from.


Nicer full-screen. Click in the middle in full-screen for why I took some of them.

So a thought occurs: Brevity Week, in which I rapidly post about these things in as few words as I can manage, possibly not bothering to find images if it’s in any way hard. How was Vancouver? Great.

B R E V I T Y   W E E K

Gunpoint: AI

On some level, my game is going to be about fucking with people. When you get down to it, the reason I like Deus Ex isn’t because I have the choice of using a multitool or shooting a guy. It’s that I can trick the guy into doing what I want. If I don’t have the key to a door with a guard on the other side, I can just shoot a wall, and he’ll unlock it for me when he comes to investigate the noise.

People coming to investigate, in fact, seems to be the core rule in the most enjoyable deceptive play – whether it’s in Deus Ex, Thief or Hitman. So that was my one requirement for Gunpoint AI: you must be able to knowingly misdirect the AI. The fact that investigating suspicious noises is also semi convincing, semi effective behaviour for a guard is just a nice bonus.

Gunpoint - Floor Dead_crop

I had a feeling this would be hard, and I knew it was probably a little too involved for a first project. But I was looking forward to trying, because AI is one of those nice juicy problems that’s too big to tackle. You have to break it down, and breaking things down in ways that make sense is one of my favourite things to do. I took philosophy and maths at university, so it’s about the only common thread in my voluntary education.

I wanted guards in office blocks to head to the source of suspicious noises, like gunshots or glass breaking, even if they weren’t on the same floor. It sounds dangerously like pathfinding, a famously sticky area, but I didn’t think it would come to anything like that. I can just break it down into a) how do I get to somewhere on my floor? and b) am I going to the sound itself or the stairs?

What I’m learning, increasingly, is that conceptual stuff is not the hard bit. Every high-level idea you have for how to translate a design concept into chunks of algorithmic code will probably work, and in fact is pretty easy to write. The hard part is a part I didn’t even realise was a part: order.

Gunpoint - Elevator Awkwardness

“I wanted guards in office blocks to head to the source of suspicious noises” – really? Did I want dead guards to respond to suspicious noises? Did I want guards to walk right past the player himself on his way back from breaking a window, in order to investigate the breaking of the window? Did I want guards who are being blown out of a window by the force of an explosion to stop, mid-air, and tell the others: “Oh hey, I’m closest to that broken window I was just flung through, I’ll go check out what caused it”? Did I want the guard who just shot you to run to your dead body and try to solve your murder?

Actually I kind of do, but that’s probably another game.

It’s easy to code what you want. But you don’t really know what you want until you’ve tried to explain it to a very, very stupid person. That was Socrates’ thing, in fact: he acted like an idiot to make people explain themselves to him on the most basic level, which usually revealed they didn’t truly understand their own beliefs. These days we have silicon hyperidiots to explain things to. They’re able to be much more stupid, many more times a second, than Socrates ever was. Coding is the Socratic method as an extreme sport.

Because the concept behind my AI system was simple, scripting it was getting increasingly complex. Every time I said something like, “Set this guard’s state to ‘alert’,” I had to first check that he wasn’t dead, or stuck, or in a lift, or being punched. And it wasn’t going to get any less fiddly: every time I added a new situation, I’d had to go back and add new exceptions to every line of code it could influence.

Gunpoint - AI Debug

The only way I could make it simpler to code was to make it more complex to think about. It turns out that the nitty gritty of how an idea works in practice is a much more unwieldy beast than the high concept of what you want it to achieve, and it’s the former you really need to simplify.

So now I have an intricate system of connected timers, tracking five or so independent properties of the AI’s mental and physical state, and it’s a mess to think about. But in code, it’s remarkably straightforward. I’ve turned every sub-problem into a separate function with a human-readable name, replacing stuff like:

if ((sprite_index=sGunman && oPlayer.x > x) or (sprite_index=sGunmanLeft && x > oPlayer.x))

With: if HesInFrontOfUs

The top level code is now just this – the pink things are functions I’ve written that call in other chunks of code:

Gunpoint - AI Code

And after a lot of tinkering, and a few maddening variable-definition errors I never really got to the bottom of, it actually works. You can lure guards from their posts, hide the other side of the stairs and jump them when they come out. Or you can make a noise on one floor, then travel to another while the guard there runs to the one you just left. It’ll get more interesting once you have more of a toolset: right now all you can do in Gunpoint is jump on people and whale on them. But it’s already actual fun to screw with the AI, so I’m pretty excited about what I can do with it from here.

By the way, Spelunky creator Derek Yu put up a great guide about what stops people finishing games, and how to avoid it. Since he inspired me to start this, it’s nice of him to also inspire me to try and finish it.

Lastly, I need opinions: man-sized air vents are a cliche. But are they an annoying one, or just a tool that ultimately makes a game more fun? In some ways they’d fit with Gunpoint’s movement system, since they wouldn’t have to be floor-level for you to get to them. But I don’t know how sigh-worthy people find them these days.

My ‘Enemies As Weapons’ Game Idea

The winners of the 48-hour game-making competition Ludum Dare were just announced. It’s a regular thing that awesome indie devs pile onto partly as a test of their skills, partly as a thought experiment, and partly just to jam and share ideas. The theme this time was Enemies as Weapons.

I didn’t enter, though lots of absolute beginners do, and it’s the sort of thing I love. But while I now feel capable of starting a small project like that, I don’t feel capable of finishing one in any kind of time. I was also pretty goddamn determined to get elevators working in Gunpoint by Monday, because four days on that is just kind of sad.

But I did have an idea for one. I think I like the competition’s theme because it’s suggests changing the state of enemies in a more interesting way than from alive to dead. Either to make them accidentally destroy things you want destroyed, as in games where you shove them into something or dodge their attacks, or to turn them to your side.

My game would be called Defect and Serve, and it’d be about bent cops. You’re a criminal who’s just been caught, unarmed, during an elaborate bank job. The arresting officer hints that he’d let you go for a hundred grand, and while he’d like to just take it from you, if you’re dead or caught there’ll be no explanation for the missing money.

Your only option is to pay up – tossing the money to him in bundles of $50,000 by clicking. Above his head is a meter labelled “Principles:” followed by two blue pips, and each bundle of cash makes one of them explode in a little shower of bills. When they’re both gone, he leaves and heads for the opposite end of the building.

It’s from a top-down view, and once that cop leaves you’re free to figure out a route to the exit avoiding the other roaming police. Each has a number of Principles pips, usually between 1 and 10. It’s possible to get out without running into anyone else, but if you do, you’re rooted to the spot and must chuck them a $50k bundle for each pip of Principles they have before you can go.

Once you’re out, the next levels are a series of heists where you start with limited funds, and make your way to vaults and safes to get more. Your objective is to steal more money than you spend bribing, obviously, so you avoid the very Principled cops like the plague.

A few levels in, you’re told you can also toss some extra cash to a cop after you’ve already turned him. This creates a red Loyalty pip, and if you give him as much Loyalty as he had Principles, you can order him to radio an all clear to the rest of the cops, making your current location safe for a while.

If you can double a cop’s Principles in Loyalty pips, you can actually click on another cop to order him killed. The turned cop will head for him, but won’t strike until the two of them are on their own. It’s up to you whether to distract or bribe the other guards to help him achieve that, or get on with sneaking through the building and hope he has the chance at some point.

Eventually you will encounter the odd White Knight cop, who’s impervious to bribes. If he’s guarding your objective, your only option is to have him killed. At this point cops with low principles become essential tools rather than minor threats, and you’ll actively try and run into one on his own so you can turn him to your side. Once you have, it’s worth intentionally alerting the White Knight to lure him away from colleagues, giving your turncoats the chance to take him out without getting caught.

I’m actually enjoying sticking with Gunpoint, it’s just impossible to resist coming up with a concept for a theme like that. I’ll probably have another Gunpoint progress report soon – I’m close to another milestone involving the AI, and I’ll be in a good position to figure out what kind of challenges are going to be fun in this frame work.

Even as it rapidly approaches an actual game, it seems to be getting further and further from the story-heavy finished article I had in mind when I started. I pictured it story-heavy because writing is trivial, but I’m starting to realise scripting is not. And it’s a low value type of work, only really good for one play through, and little to do with the medium’s strengths. I’m starting to wonder if there’s another type of content I can use to link a bunch of puzzles, or a more efficient way to convey story without visually depicting a lot of non-interactive events.

LudumDare18.007roBurky’s game, I think untitled, lets you convert enemies to your side or blow them up in a chain reaction.

Alien Abduction Of AliensAlien Abduction of Aliens, a simple grab-and-throw game that’s beautifully drawn, and even more beautifully named.

FibSophie Houlden’s excellent Fib, in which saying “Basil said John is ass balls” is a valid puzzle solution. You lie to people to trick them into killing themselves, so that you can safely walk on their corpses.

Fail DeadlyThe end game of the competition’s winner, Fail Deadly. It’s a smart and immediately fun subversion of an RTS where you build both side’s bases in an attempt to keep them evenly matched long enough for nuclear war to break out, killing everyone.

Postcards From A Weekend Of Premeditated Murder

A slightly tense week inspired me to go back to Hitman: Blood Money last weekend. It is cathartic.

Hitman - now it's obviousWell, yes, now it’s obvious where the killer was standing.

Hitman - red blipThis is the climax of a spectacularly machiavellian plot to replace an actor’s prop pistol with a real one to trick him into performing your hit for you at the crescendo of a wartime opera.

Hitman - yes, there's a bomb in thatI’ll save you the trouble – yes, there’s a bomb in that.

Hitman - compactI don’t know why, but as I trash-compacted this sanitation worker, it really bothered me that I was depriving society of the valuable service he provides.

Hitman - don't have a wall like thisIf you’re in witness protection, don’t let them put you in a house with a wall like this.

Hitman - in case someone throws a knife into your headIn case someone hides there and throws a kitchen knife into your head like this.

Hitman - dead birdIn retrospect, yes, it was always going to be difficult to get away with killing that bird in front of this cop.

Hitman - crowd sceneI still don’t know how they did this goddamn crowd scene. How- polygons- what?

Hitman - ruffled feathersThis is as tragicomic as it is hilarisad.

Hitman - loadingI am especially unclear on where I keep my pistols in this outfit.

Hitman - spadeStill feels good.

Hitman - conspicuousWhat? Too slutty?

Hitman - knife surpriseYes, I have done this more than once.

Hitman - honest cakeWhat’s the matter asshole, never seen a poisoncake before?

Hitman - strangleNO POISON FOR YOU.

The Maths Of This Week’s Futurama

Futurama hasn’t been this good in years. It’s been very funny this season, and I think most of the movies had some inspired gags, but this week’s was the first time the plot’s been as good as the jokes since the good old days. It did what all the best episodes do: found the humour value in an old sci-fi concept and took it to ridiculous extremes. Continued

This Is All I Can Think During StarCraft 2’s Cut Scenes

I have the following problem with the armour in StarCraft II

Seat Quest 2010: The Return: Origins

This is the final part of my adventure in seats. Part one is here, part two is here, and part three is here.

Two weeks before the return flight: four or five bad seats. I don’t book any of them. Continued

Seat Quest 2010: The Flight

This is part three of my adventure in seats. Part one is here and part two is here.

My first thought on the plane was “Oh man, Club Class on this flight looks just like the lowly World Traveller Plus.” Then, “Oh, that was World Traveller Plus. This is Club Class.” Continued

Seat Quest 2010: The Lounge

This is part two of my adventure in seats. Part one is here. I reserve the right to use unrelated photos to break unsightly blocks of text.

Club World isn’t first class, but it makes it hard to imagine what is. Do their seats go beyond horizontal, into back-breaking reflex angles? Do they face out into the open air, to guarantee three miles of leg room? After the champagne, three course meal and brandy you get in Club World, is there a heroin course? Continued

A Story Of Plane Seats And Class

I think stand up comics do a lot of plane food material because they travel a lot for their work, and travel is boring, and boredom gets you thinking. This is how I’ve come back from a trip with 3,000 words about my seat. I’ll put it up in parts, and since I don’t have any photos of most of it, I’m going to illustrate it with pictures from an unrelated adventure. Continued

Hyperthreaded Depleted Uranium Turbothanks

To anyone who nominated me for a Games Media Award. I am a finalist! With any other award it’d be corny and false to say the nomination is what counts, but with GMAs that’s actually true. Like last year, the nominations are open to the public but the judging is by a panel of games media types and PRs. I’d love to win this year, but I’ll be honest, I’m not super concerned about my popularity among games media types and PRs. The really nice thing is to have a bunch of people put your name forward out of the blue.

In return, I will try to be slightly less inadequate over the next week about posting stuff, both here and on PCG. Starting with some fun news from Valve about Team Fortress 2 I’ve only just had time to write up, and a short series of stupid posts here that have nothing to do with anything. Yes. This plan makes sense.

Picture 010

If you are a judge, you don’t have to vote for me, but you should definitely vote for:

  • PC Gamer for Games Magazine. We’re actually pretty good. The thing I really enjoy about our mag these days is being able to read a preview knowing it’s not just going to be, “This looks like a game that has some classes and some weapons and the graphics seem good”. There’s going to be something mechanically or conceptually interesting and we’re actually going to spend the words telling you about that. Also we do reviews. Oh no! That’s mine! How did that get there?
     
  • Rich McCormick for Rising Star. Rich has already established himself in our office as the person capable of the most tortured pun when we’re sitting around coming up with headlines, and this company is the Abu Ghraib of pun torture. Here’s his piece on Barkley, Shut Up and Jam: Gaiden. It’s a crime that Jaz McDougall isn’t also up for this slot, partly because it would lead to hilarious in-office brawling, and partly because his work on PCGamer.com is making me laugh every day.
     
  • Christian Donlan for Specialist Writer Online. I’m also a fan of Simon, Ellie and Dave, but I think I’m right in saying this is the first time Christian’s been up for this, and it’s way overdue. His stuff on Eurogamer and in Edge always shines, and he is quite literally The Nicest Man In Games Journalism, a title which I must some day kill him to steal.

Machine Of Death Is Out In Two Months

That short story collection I wrote for, Machine of Death, is actually getting published. It’s out in October, in big floppy paperback, and it’s going to be illustrated. It includes stories by:

Illustrated by people including:

I have no idea who’s illustrating mine yet, but you can’t really lose with this list. The final lineup very charitably calls my story ‘brutal, desperate and real’, so it’d be kind of hilarious to see Kate Beaton do it.

I have a flight to catch and a lot to do before and on it, so hasn’t totally sunk in yet. Here’s my story, and here’s the comic that inspired the collection. Oh yeah, and here’s the awesome cover:

Deckard: Blade Runner, Moron

Update: found a new source for the stills that broke and added some clarification from the comments to the intro.

I rewatched Blade Runner recently, because it came up a lot when I asked for visual inspiration for my game. Almost everything about it is still brilliant, except the main character. I’m not sure how I’ve never noticed this before, but Deckard is an idiot.

He’s given all the information he needs on a plate, nothing bad happens unexpectedly, and every lead falls into his lap. He has photo ID of everyone he has to kill, he’s told about their physical strength, he has a gun, they’re all unarmed, and he’s legally allowed to shoot them dead in public. Yet in every case, he lets them get into a hand-to-hand fight with him that he can’t win, and the only way the film can even keep him alive is for his targets to suddenly stop fighting or get killed by someone else.

Here’s a summary of his encounters with all of the replicants he’s apparently the only one good enough to kill. Stills from FilmGrab. Continued