How IF is made (the crazy way)

This is literally just a Design Discussion. I am using this 1. as a way to show off book torture (jk), 2. as a way of understanding whether my method works, and 3. just to see the extent of madness in people’s designs!

When I am creating my games (okay, I say games but I haven’t ever even published a game. I am currently, however, writing not my next game but the game after that which is like a proper 20-30 hour one - Zork Zero is about 20 hours for comparison) most of the time I write in books, because then I can make great maps and annotate them easily.

But it’s… even too crazy for me to read.

Just, see one of the “nicest” examples from the game I’m currently making:

But when I want to, I can make (IMO) really neat stuff. Like a puzzle over here (a Bridges of Königsberg with an interesting but too-crazy-too-complex twist):

So, what about you guys?


Yeah, mine looks a lot like that:


(if image size is too large I can delete and re-add smaller)


Well that’s really interesting - how different people do design. I definitely couldnt work that way, with paper notes. Probably because my scribbes are even worse. I’m very bad with organising paper and thus all my designs have to be written documents.

But also because I dont start with the map. Looking at the images, it seems the map is a base part of the design for most people. I used to think that maping the game was the first step, but now i don’t agree it’s the best way to start. Because what you tend to do is map the world then try to fit your puzzle objects nicely in the locations so that all locations have a purpose. And that sounds like a recipe for a bogus world.

So instead of focusing on the geography and objects first, I prefer to focus on the events and their sequences. ie the situations. Then, of course, each situation must happen somewhere so that leads to the generation of the locations and thus the map.

Anyway. most interesting.


I used to design things “physically” (on engineering pads or whiteboards) but these days I do things like map layout using dia or something similar (like procreate if I want to freehand sketch things with a stylus).

I actually think most projects (not just games) usually have some things where I have to do the design behind the keyboard (that is, I have to hammer out a toy implementation to “see” things), and some things that I have to design away from the keyboard. The second category usually involves things that have to be whiteboarded out (literally or figuratively), and some things where the design process is “pace around and absolutely refuse to get distracted by anything else until I think it all the way through”.

There are particular types of problems, usually ones where there are multi-layer dependencies involved, where I find it easy to get in a loop…it can’t be option A, so it must be B or C; it can’t be B, so it must be A or C; it can’t be C, so it must be A or B; …but it can’t be A, so I must be B or C…and so on. Usually I find that these are the problems where I’m most likely to need to push away from the keyboard and actually just think things through without trying to diagram it or anything. Because with that kind of problem it isn’t until I can carry everything in my head and “handle all the pieces” without having to look anything up that I can fit everything together. Once I start writing anything down (either by diagramming it or something like that, or by actually writing code) I think that tends to make things worse, but sorta channeling my thinking along the lines of what’s already there instead of what needs to be done to resolve to problem.


I definitely have maps like this for all games I’ve made. But for me, it’s not so much that the map comes first as that I have to write it down because I can’t imagine it in my head. It’s too hard for me to keep track of where everything needs to go. My other notes are a mix of brainstorming and other stuff I’m afraid to forget. Before I write down the map, I usually have weeks or months of chewing over a concept in my brain.


This is what I do as well.

I outline the mechanics and gameplay, and then I arrange nameless and blank rooms, so that the number of turns and connections between them can fit the gameplay plans, and then I figure out what the rooms actually are, and from there I add background details and scatter story hints here and there with environmental storytelling.

This is also how I make custom Doom levels, so the skills carried over to IF quite conveniently.


as people will remember, I take notes in ascii/utf-8 using e.g. nano(1) whose is a format conveniently easy to convert into comments… and yes, I fear that the last step prior of releasing will be a huge “debugging of comments” (xlating into english, converting from jargon to proper tech lexicon, deleting the obsolete ones, putting more sense into it &c. &c…) because the source WILL also be released (on this, kudos to Joey & Jim Aikin for practically trebling the size of TADS3/a3Lite source base…)

Best regards from Italy,
dott. Piergiorgio.



My games tend to be very character and event focused, so the map evolves constantly throughout the design process. In Alias ‘The Magpie’ the map was initially based on the layout of Kenwood House in Hampstead, London, much simplified, but as the game developed I moved rooms around to serve the story. The Collection Room was originally where the Music Room ended up being, for instance. Looking back at my game maps, I’ve noticed a tendency to plan things around a 3x3 grid; I’m not sure why. I think I just find it a satisfying structure.

I tend to take a long time to write a parser game, and in time the game world becomes imprinted on my mind almost as though it were a real place. I can mentally project myself into the space and look around, and sometimes see things there that I hadn’t noticed before, and sometimes these things get incorporated into the game. It’s a bit like a memory palace I suppose. Even now I can mentally revisit the worlds of games I finished decades ago. My current I7 WIPs are both one-room games, so there’s no mapping as such, but I still have a very clear mental picture of where everything in that one room is located.

I used to keep notebooks but now I mainly use Google Keep Notes to jot down my ideas. I always have my phone with me so it’s easy to add a new note when inspiration strikes and I can access it later from my desktop PC. The ones I like I usually copy into a chapter called “notes” at the foot of my I7 source text that is all commented out. I occasionally use Puzzlon to work out problems in the puzzle structure, but most of the game’s mechanics are worked out in my head and tend to stay in my head until I sit down to code it.

Nothing is set in stone until very late in the process. I like to keep things open and flexible for as long as possible in case better ideas come along. I tend to launch into writing a game without much planning at all. Once I have the core idea I just start writing, and let the game develop as I go along. It’s not an efficient way to work, and it’s probably the reason why my games take so long to make, but it works for me.


I’ve switched from a time-based method to a sequence/location-based method. In the old method, I had the game split into sequential phases and coded as I went. Unfortunately, I ran out of working memory to keep track of this, so I needed a rethink :smiley:

The way my current method works is by writing down the sequences I want, and then put in comments according to those needs (including but not restricted to the time at which I want those sequences to occur). The files in which those comments are placed are split by location. Once I have all the notes down for what I want to do, then I can code. Hopefully without coding anything unnecessary to the idea, or daunting myself about the sheer amount of stuff to be tracked.

Also, all those comments will hopefully make it easier for me to help my translators.


When I was writing Une soirée costumée I designed everything using this table.
This is a combinatorics game at the root so I had to verify systematically that all the possible routes were coherent.

Very professional looking game design document

Just kidding


I fill notebooks, too. I have a very particular kind of notebook I like for game ideas, and it’s filled with incomprehensible scribbling and notes to myself in the margins. For instance, one note in red pen by a recent project idea says, “No, dumbass.”

I also write ideas on any scrap of paper handy, like old receipts and grocery lists, and then if I find them later I stick them in the notebook and usually I have no idea what they mean later, like this one: “Give the stick. It won’t do it.” What stick? Won’t do what? No clue.

When I have an idea I like and a notebook full of ramblings about it that I’ve annotated, I just sit down and start going at the beginning and write linearly. I add locations as needed as I go, and write and code a lot of stuff I take out later. The notebook and the plan fall by the wayside and I just go where it takes me. More than half of what I plan ends up in the trash.


Glad to see I’m not the only one to leave notes like this to myself.


I use a Microsoft OneNote notebook for planning. It’s useful for sorting out worldbuilding, character bibles, plot plans, research, and collaborating with other people on writing. If I’m planning alone then I use Scrivener which does the same stuff more robustly, but doesn’t have good collab features.

I also draw diagrams and mental maps, specifically centered around events, sequences, and bottlenecks as opposed to locations since locations aren’t my strong suit. I have an incredibly spoilery diagram for Erstwhile that maps out every single combination of clues and the timeline of the game. This is usually done digitally because otherwise I destroy or waste paper in my erasing, scribbling, scrapping, etc etc.


When editing a message, you can hover over images in the preview pane which will show options to reduce the image size (or grid multiple images into a block).


One of my section headings I added in Transparent post-release based on feedback was something like “Okay, for the love of god, I’ll allow you to FEEL AROUND in the dark…”


I like A4 paper hardback notebooks for scrawling out my plans. Sometimes a whiteboard gets involved. Any time I get stuck, moving away from the screen really helps.


I leave lots of comments like these to myself. Usually I’ll be prototyping some experimental ideas one day, and then I test them the next day for gameplay, and then I’ll write stuff like:

Wow, I’m not sure what we were hoping to happen with this, but it SUCKS. I think we might have given the player too few turns. Maybe we can figure out how to make this happen on the player’s schedule, without seeming unrealistic?

Or a comment in the code saying something like:

Gurl, wtf does this even do??? What kind of cosmic madness have you wrought upon me in 24 hours??? You might have seen this clearly last night, but after a full night’s sleep, I can’t tell what we were trying to do here! Future-Me: If you ever get an ADHD leap and realize what this does, can you please document this within an inch of its life? Thanks! Yikes.


I really like mind mapping software. The one I use (because I’m a cheap bastard) is called FreeMind. It’s open source and works well enough. Definitely explore the keyboard shortcuts, like editing a node or creating a child node.


My computer died a little while back so I can’t provide a screenshot of past maps, but the image above illustrates things well enough. I use comic sans (sacrilege, I know) to keep the ideas looking less formal and it feels like it’s on a whiteboard. You can add icons and colour stuff, but I don’t find any of that useful; just text and lines connecting it all… what else do you need?

The power of the mind mapping is that you can rearrange nodes, edit, collapse and expand nodes (and their children) so that your maps can be quite complex, but never overwhelming or distracting as you are working on them. Your text doesn’t have to be short descriptions either; multiple lines are handled well.

Mind mapping software should be more popular than it is.

Edit: Use Freeplane instead. It uses the same engine and it’s much better.


I just type comments into my code for the most part. I do sometimes write things down, but then I lose the paper. Or I’m too focused to check it. I tried putting things in one note or a spreadsheet, but I just never looked at any of it. My brain doesn’t want me to look at things!

I sometimes make headings in the code for future content and put comments there if I want to remember how things are supposed to go. I’m more likely to see that.

but really, I work on one obsession at a time. If I’m trying to get a mechanic to work, it is very hard for me to think about anything else until that work is finished. So I don’t get a lot of ideas to write down once I’m writing anyway. I don’t jump around from one thing to another, not really.

and I am kind of crazy, so that is a crazy way


So I went to reinstall FreeMind and read a little further and found that it had been forked over to Freeplane. So the engine is quite mature with just more TLC sprinkled over it.

Freeplane is still seeing updates and maintenance. The interface is so much cleaner and I already prefer it. If people are interested in trying mind mapping, you can’t go wrong with Freeplane.