Game Career Guide is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.


Get the latest Education e-news
 
  • How To Start Writing Interactive Fiction

    [07.13.21]
    - Giannis Georgiou

  • Write the walkthrough

    An enjoyable way to start with the story is to write a walkthrough mockup, simulating what the player will experience when playing the final game.

    For example, in a parser game walkthrough, you would write player commands and parser responses. In theory, the player can try anything, so the more responses you predict (and default responses you avoid), the more enjoyable the game will be:

    > SEARCH CHEST
    In the old chest, you find a scroll!
    > EXAMINE SCROLL
    An old parchment, reeking of magic.
    > EAT SCROLL
    You absent-mindedly bite on the scroll...
    Then, you reconsider. What if you transform into something?

    In a choice-based game, the player has specific options to choose from, so you can simply write those and pretend you follow one of them:

    You continue digging, until your shovel hits wood.
    - TRY BREAKING THE WOODEN SURFACE
    - EXIT THE GRAVE
    > EXIT THE GRAVE
    "Sod it," you tell yourself and start clawing on the moist
    walls of earth that surround you, trying to get back to the surface.

    Implement it

    If you have programming skills, you probably already know which way to look for your scripting language of choice. If you don't, you should look for visual tools to help you.

    All you need to start with is an app that visually represents the plot's flow, produces options for the player, assigns & checks variable values.

    For example, let's say the player starts in a locked room. They can try opening the door or they can search the mattress.

    * OPEN THE DOOR → CHECK: does the player have the HAIRPIN?
    * RESULT: YES → OK, then, the door opens → Next Section
    * RESULT: NO → The door remains closed → Back to Start
    * SEARCH THE MATTRESS → You find a HAIRPIN.

    For the game to store the information that the player has the hairpin or not, it uses a variable, e.g. has_hairpin.

    Here is how we can visually design this short scene in a diagram, on Arcweave:

    Screenshot of plot's flowchart from Arcweave.
    Zooming in a little...

    Screenshot of plot's flowchart from Arcweave.
    Screenshot of plot's flowchart from Arcweave.
    In Arcweave, conditional (if/else) statements get their own diagram nodes, called "branches."

    The options available to the player depend on the value of the has_hairpin variable. For example, the player gets the option to search the mattress only if they don't have the hairpin, that is if has_hairpin == false, which is the same with not has_hairpin == true.

    After finding the hairpin or failing to open the door, the game returns to the initial element, titled Start: Cell. Otherwise, the game allows the player to proceed to the next section, titled Corridor.

    This was an example of a simple puzzle implementation. You can use similar logic to create all your game's scenes, puzzles, or dialogue trees.

    Share your work

    Test it

    As its writer, you are also the game's first playtester. A word of warning: however conscientious they may be, your testing efforts will never be enough. You have to let other people test your game before you officially release it. "Other people" may include friends and family, but their input-bless them-probably won't be enough, either.

    For testing, you have to stick your head out. Show your work to people who know about the game-design process and its pitfalls, aka bugs.

    The Interactive Fiction Community Forum has a specific room where you can seek out playtesters. Start a new thread and briefly describe your game. Then, contact those interested with a private message, sending them the game file or a confidential link, to play it online.

    Don't be shy; the community is very supportive to everyone, regardless of their level of experience. Be nice to people and give back from your own experience, when you have some.

    Publish it

    When you've thoroughly tested it, you can publish your game on itch.io, your website, social media, or the IF Community Forum.

    Before you open your game to the public, though, take a deep breath. If you receive good feedback during the testing, you may consider submitting your game to one of the several annual competitions for IF works. And there are plenty of them.

    The IF community is world-wide and buzzing. If you get hooked with IF, you will find that engaging with its community as a player, tester, or writer is a deeply rewarding experience.

    Conclusion

    Writing interactive fiction is a unique and satisfying process. It requires a lot of care and attention, as well as testing and rewriting-but what kind of writing doesn't?

    With its particularities, it can be a powerful means of self-expression. For many, it's a passionate hobby. For some, it has even led to careers in the game industry.

    If you haven't tried writing IF before, who knows? Maybe it unlocks a door inside you that you didn't know existed.

    And who knows what awaits to come out...


    Further material

    For more information on interactive fiction, you can dig deeper towards various directions. Here are only a few that you can start from:

    Gameshelf's episode on Modern Interactive Fiction, by and with Jason McIntosh.

    Get Lamp, a 90-minute documentary by Jason Scott, currently found on this semi-unofficial YouTube link.

    Writing IF, by Emily Short.

    IFDB: the Interactive Fiction DataBase.


    Giannis is a writer and story consultant focusing on subjects of narrative structure, theory, and technique. He is affiliated with the Arcweave brand.

Comments

comments powered by Disqus