All posts

Games

Game development

Stories

Happiness

Personal

Music

TV

Film

TOM FRANCIS
REGRETS THIS ALREADY

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.

Theme

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

    Projects

    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

    Fault

    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

    Clouds

    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-Rock-and-a-Hard-Place-Trio-Jan

    A Short Script For An Animated 60s Heist Movie

    Dark Messiah

    The Magical Logic Of Dark Messiah’s Boot

    Arguing

    Arguing On The Internet

    Spelunky

    Shopstorm, A Spelunky Story

    Stealth Games

    Why Are Stealth Games Cool?

    Violence

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

    Suspicious Manifesto

    The Suspicious Developments manifesto

    GDC

    GDC Talk: How To Explain Your Game To An Asshole

    Crosslink

    Listening To Your Sound Effects For Gunpoint

    Happiness

    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

    Gnome

    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

    AOL

    A Woman’s Life In Search Queries

    Second Life

    First Night, Second Life

    SWAT 4

    SWAT 4: The Movie Script

    James 2.5 Explained

    Welcome, to the all-new James! The partly-new James! The slightly-altered James! I’m calling it 2.5 – it’s the third redesign of my fifth personal site, but it’s not exactly a generational jump. I coded my first blog when I was fourteen, so I’m littering this post with embarrassing shots and links of the older incarnations. Sadly Archive.org only goes as far back as the first James, so the design marvels of, er, “Pentadact’s Site”, “Ugly Fruit”, “The Open Focus Network” and “Politics” are not on shown here.

    james0
    Turns out I liked dark blue in 1999 too. And I took my tea black? Was I ever that young?

    Very nearly changed the name this time – for a long time the prototype read ‘Pentadact’ at the top. There’s every reason to make that change, not least of which is that people might finally spot that it doesn’t have a ‘u’ in it. But no matter how long I left it like that it just looked wrong. This obviously isn’t Pentadact – that’s me. It would be like calling my house Tom Francis.

    The smallest change is the new visual motif; that didn’t take long. In a weird way I hope making it narrower has made it look wider – when it greedily filled the whole screen, it had no shape or size of its own. Filling the screen used to be one of my design commandments – I loathe sites that cower in a column on the left-hand side of any reasonably-sized display. Now, I’m starting to see that there are readability reasons why ultra-wide isn’t always awesome, and I prefer sites with a sense of place to sites with a design philosophy.

    notices
    Weird, news-style proto-meta-blog

    The idea behind the stuff in the sidebars – which took all the time – is that as much as possible, it should be different each time you come. Almost everything is either automatically-updating, easy to update, or just randomised. Instead of a static set of dozens of nameless thumbnail shots of things, I wanted to actually explain what each thing is that I’m featuring. But for the number of things I want to feature, that takes a prohibitively large amount of space. So instead, the template randomly chooses two items and I attempt to explain what they are.

    I also wanted to dredge up some older stuff occasionally – hence the At Random panel. Blogs are all about what’s new, my sites never were: I like to create a load of stuff and leave it all hanging there, like so much dirty laundry. I’ve read everything on this site at least twice, and I wrote all of it, but even I see things cropping up in that box that make me think “What the hell was that?” If you ever see it blank, by the way, click the Full post link and let me know where it takes you. Every post is supposed to have an excerpt, but I think one or two slipped through the cracks.

    reviews
    Apparently I actually had other people submit reviews and stuff to the first James. I invented Web 2.0?

    It’s not supposed to hit you in the face or anything, but there is a logic to what goes in the left as opposed to right sidebar. Left is stuff by me or on this site, and right is elsewhereville, things by other people that I liked. The Favourites panel is a solution to the problem of distinguishing between the types of places I link. I don’t link anyone’s blog unless I read every post of it, but that doesn’t always mean it’s essential reading I want to push on everyone. I wanted a separate place for the stuff I truly couldn’t live without, and to give it a little love. It’s also the first thing I did, and trying to articulate why you like your favourite sites is not a bad way to start a blog redesign.

    The channels at the top were supposed to be a bigger deal than they’ve ended up being. I thought that since virtually no-one is interested in everything I talk about, and since I personally stop reading a blog after one or two posts I wasn’t interested in, it’d be useful to be able to filter it by topic. Everything here does legitimately fit into one of those, and if you’re an RSS user you can subscribe to each of the ones you care about to get a sort of custom feed. Update: stats show people really like to click the word ‘Games’ up there. Knock yourselves out, chaps!

    personal
    I was fond, perhaps too fond, of the left-centre-right alignment pattern.

    The subscription stuff is technically not new, but I want to highlight it this time: RSS means new posts get sent to you rather than you having to check for them, which in turn makes me feel less guilty about erratic posting. Jason L’s already requested the ability to subscribe to the comments that get made here, so I’ve implemented that too. Google Reader makes the internet a single page that can be read by repeatedly pressing a single key: Space. So at last, we can start out-evolving these pointless limbs. I’m just trying to help that along.

    And as you’ve probably seen, I’m embedding MP3s a lot now – I’ll also add a direct download link for them soon. I want to post more than just music, and I’m thinking of a new regular related to that. I have 1.5 terabytes of storage space now, and ten times that in bandwidth, so I might as well put it to use.

    journal
    2003 – first recognisably bloggy incarnation. Hopelessly dark.

    Oh yeah, the hosting: James was long overdue for its own domain, I got constant complains about the acronymic URL (good luck spelling this one, whiners!), and the real reason: my ISP now sucks so hard that I have to leave them as soon as I humanly can. A load of providers now owned by Tiscali are now getting horrible service as people are moved to cheap, shitty servers in a bid for the parent company to turn a profit for the first time ever. So that really filled me with the warm glow of consumerism.

    I chose BlueHost because a hundred blog posts told me to choose AN Hosting. I don’t know if you know this, but there are no longer any objective reviews of this kind of thing – every major company offers a huge cash kickback to bloggers sending new customers their way. The most trustworthy you get are the minority who admit they’re being paid to recommend you.

    media
    Holy shit I used to write a lot.

    I almost went with AN Hosting anyway, but I happened to have their page up when I closed my browser for the day. It stopped me with a flashing alert claiming that a customer service representative for AN Hosting was trying to talk to me, and even lamely generated her (of course her) introductory lines. I almost spat. When I tried to close it, it generated another alert trying to panic me about that.

    If these guys invent a cure for cancer, and I actually have cancer, they will still never see a penny of my money as long as I live, in cancery pain. BlueHost feel nice. Their CEO blogs. Their website lets you try out a dummy account. In fact, I like them so much I’m not going to link them, just so you know this isn’t a pay-per-post.

    That would actually violate the prime directive of James, by the way, which is never to make money or sense.

    More

    The_B: Man, you should totally start reviewing stuff such as Tescos Reduced Fat Cheese and Bacon Quiche again!

    Next week, on James: Is it really M&S grilled chicken, or is it just leftover human remains? FIND OUT HERE.

    SenatorPalpatine: This site is the best... even more so now. Best site evar, http://www.pentadact.com!!!!!!!!!

    (SEND ME MONIES)

    No really though, it is good site. I started reading it rather late in it's life, so I can always go back and look at older stuff which is cool. Continue the coolness.

    Seniath: Have you tried the new shiny in Opera? It somewhat...explodes in a very horizontal fashion;

    http://www.flickr.co... ...264565359/

    Ayan: Remind me how you managed to integrate stardates into your blog systems?

    Also, I hope BlueHost paid you a sufficiently large lump sum for those paragraphs. (I may contact them.) Though I suspect your penchant for Blue may have offset part of your fee.

    I approve of the new James design and specifications. If only I could find an acceptable rss reader..

    Seniath: It would appear the above issue is only present on linux, it works find on my windows machine at home. Yay for standards =/

    Ayan: Perhaps answering this would be a violation of the prime directive, but I am curious- do you expect people will read the posts at James or on their Readers?

    Tom Francis: Oh God. The notes on your Flickr shot, Seniath, say it's zoomed out -100%. I'm not sure how that works, but does that mean at normal zoom level is much too wide to fit on the screen?

    Maybe it's interpreting my column widths as percentages rather than pixels. Although I'm not sure why the center one would be so wide - that's always relative.

    This might be one of those problems I just back slowly away from, whistling.

    Tom Francis: Like genocide.

    Ayan - I expect very few will actually use RSS instead of coming here. I use it for pretty much everything, but I have to keep reminding myself how widespread it isn't.

    Are you asking because you're wondering why I put so much effort into the design of the site only to encourage people to read in a way that bypasses it entirely?

    Because that would be a good question.

    Tom Francis: Ayan, since you asked:

    var Stardate = new Date();
    var StardateZero = new Date("May 25, 2322");
    var Stardate = Stardate.getTime() - StardateZero.getTime();
    var Words = new Array(" zero"," one"," two"," three"," four"," five"," six"," seven"," eight"," nine");
    document.write(" It's stardate");
    Stardate = Stardate / 3155760;
    Stardate = Math.floor(Stardate);
    Stardate = Stardate / 10;
    Stardate = Stardate + "";
    if(Stardate.indexOf(".") == -1){
    Stardate = Stardate + ".0";
    };
    for(i = 1; i < = Stardate.length; i++){
    if(Stardate.substring(i-1,i) == "."){
    document.write(" point");
    }else if(Stardate.substring(i-1,i) == "-"){
    document.write(" minus");
    }else{
    for(j = 0; j < = 9; j++){
    if(eval(Stardate.substring(i-1,i)) == j){
    document.write(Words[j]);
    };
    };
    };
    };
    document.write(", and this is the Notes section.");

    Tentaculat: Did the 'kfj' part of your old URL ever mean anything, or was it just complete randomness? I had always suspected that it was something obvious but that I was too thick to figure it out.

    Tom Francis: Killing For Jesus, my Action Quake 2 clan. I was the knife-thrower. My flatmate and I chose it as our ISP username since it was the only identity we could think of that we had in common.

    Seniath: http://www.flickr.co... ...266020496/

    That's how it looks on my windows machine, again zoomed out to -100%. As you zoom in, the middle section shrinks, while the side panels grow a little to accommodate, and everything looks fine. I can't recall what happened when zooming in on Linux, suffice to say it was messy.

    Jason L: Given that it's Linux, you probably just need to recompile your PoM.

    Tim E: Hang on.

    Third redesign of your fifth personal site, and you're calling it James 2.5. And you have the gall to be rude about my podcast numbering.

    Damn you.

    Tom Francis: Hey, I wasn't rude. I only relayed your choice of number. If that seemed rude to you, perhaps the numbering system struck you as a crazy one only a crazy man who's crazy would think up. I don't know.

    Seniath: I think I'd have to see what it does at normal zoom to work out what needs fixing, if something needs fixing.

    Jason L: Miniminibug: When live bookmarked on Win32 FF 2.0.0.12, the comments RSS items all display a generic blank page icon untiil visited, at which time they pick up the James logo. Frankly, getting the logo at all is the unexpected behaviour for me. I suspect that this is just some default in Wordpress and nobody cares; certainly I don't. But if you have poured heart and soul into your RSS icons, it hasn't worked.

    Tom Francis: Nah, I'm not doing anything fancy there. The most effort I've put into favicons is making the reference absolute rather than relative - in James 2, single-post pages lost the favicon because they're treated as being in a subfolder.