Side Characters in Interactive Fiction Want Things

Side characters in interactive fiction read as people when they want something, act while you are elsewhere, and are free to refuse you.

By The Fabledrift Team · · 8 min read

Side characters in interactive fiction become people the moment they want something you cannot simply hand over. A character with a goal of their own acts while you are elsewhere, answers a request with a refusal when refusing is in character, and turns up in the next scene having changed their mind. Accent, catchphrase and a carefully described face are decoration laid over a prop.

  • A side character needs four things to read as a person: a want, a location when you are offstage, the freedom to refuse, and permission to change their mind.
  • The adv3Lite manual says nothing can make implementing a life-like and complex NPC straightforward, simple and easy, and that it will always be a lot of work.
  • adv3Lite gives each actor an “agenda”: a list of AgendaItems, each one an action the actor wants to perform.
  • In Inform 7, telling another character to do something is a request that goes to the persuasion rulebook first, so by default they do not comply.
  • A character who never says no is a mechanism with dialogue attached, no matter how well the dialogue is written.

What makes side characters in interactive fiction feel real?

Four tests, and none of them is description. They want something specific. They are somewhere when you are not watching. They can refuse you. They are allowed to change their mind between one scene and the next. A character who passes all four reads as a person in two lines of dialogue.

Authoring libraries treat this as the hard part of the craft rather than a flourish. The adv3Lite manual’s overview of actors states that implementing convincing non-player characters is difficult, and that nothing “can make implementing a life-like and complex NPC straightforward, simple and easy, it will always be a lot of work.” That is the author of a toolkit writing about his own toolkit.

Test A prop with lines A person
Wants to be used by you something that costs you
Offstage nowhere somewhere specific
Refusal impossible available and in character
Across scenes identical changed by what happened

What does a side character actually want?

Something narrow, dated and inconvenient. “To help you” is not a want, it is a job description. “To get her brother’s body out of the orchard before the frost sets” is a want, because it has a deadline, an owner, and a cost to anybody with other plans for that morning. The difference shows up in every scene the character appears in.

adv3Lite formalizes this with agendas. Its chapter on AgendaItems notes that some characters can afford to be passive, reacting only to what the player says or does, but that an author may want others to be “a bit more life-like, pursuing agendas and goals of their own.” Each actor gets a list of actions it wants to perform.

The want has to be inferable without being announced

A motive stated outright stops being interesting; a motive the reader cannot reach is the same as no motive at all. The usable middle is behavior: what the character steers the conversation back to, what they do with their hands while answering, who they glance at before they speak. You should be able to guess wrong twice and still be guessing about something.

This is also the difference between a character who exists to dispense information and one you can negotiate with. The second kind gives you leverage — you know what she wants, so you know what you have.

Can a side character refuse the reader?

In the oldest toolchain still in use, refusal is the default. Inform 7’s standard rules for actions describe the convention that a command like DAPHNE, TAKE MASK is a request to Daphne rather than an instruction to the machine: the action results only “if the persuasion rules in force mean that she consents.” An author who writes nothing gets a character who declines.

That ordering is worth borrowing as a reading habit. When you tell a companion to do something and it simply happens, you have learned nothing about them. When it happens because you spent something — a promise, a secret, the last of their patience — the compliance is information.

Refusal also protects the story’s shape. A character who can be talked into anything cannot be a rival, a sceptic, or a person with a prior loyalty, and those three carry most of the pressure a middle act runs on. Stories that never reach for a weapon depend on somebody in the room wanting the opposite of what you want, which is a thing only a character with standing can supply.

The useful habit, then, is to treat a yes as expensive. Ask what the character gave up by agreeing, and whether the story shows it. If agreement costs them nothing, you are not talking to anyone.

Where is a character when you are not looking?

Somewhere specific, and the story should be able to say where. This does not require a simulation running behind the prose. It requires that the gap between appearances be accounted for: she was at the gate, she wanted the key, you went the long way round, so by the time you arrive she has either found another route or stopped asking.

Two tracks compared across three scenes. The upper track, labelled a prop with lines, shows the same beat three times: the stablehand waits by the gate, the stablehand waits by the gate, the stablehand waits by the gate. The lower track, labelled a person, shows her asking you for the key in scene four, walking to the gate herself in scene five while you are elsewhere, and meeting you there in scene six no longer asking. Only the lower track changes when the reader leaves.scene 4scene 5 — you are elsewherescene 6a prop with lineswaits by the gatewaits by the gatewaits by the gatea personasks you for the keywalks to the gate herselfmeets you there,no longer asking

Most side characters in interactive fiction fail this test quietly. They are written to be present, which means they are written to be waiting, and waiting is the one activity that cannot be interrupted. Giving a character an errand of their own costs a sentence and buys every later scene a reason to differ from the one you expected.

Offstage life is also what makes a first meeting worth writing. A stranger who has been living a life before you arrive is someone you are likely to misread, and misreading is the engine of first contact interactive fiction and of most good scenes between people who have just met.

How do you write side characters in an AI-narrated story?

Name the want in your own prose, once, and then stop managing it. One clause does the work: she wants the ledger back before her brother sees it. A narrator handed that will test you with it later, in scenes you did not plan, which is the whole return on the sentence.

Fabledrift, an interactive fiction app for Android, is built around that handoff: every scene is written live, and the narrator is given the story’s structured record of facts, characters, places and promises on each turn rather than only the transcript. In The Emberwood, the forest remembers every promise made beneath its branches, which makes a promise to a person a thing with a keeper. In Ironreach Station you wake alone on a station that should have a crew of four hundred, so the question of where everyone is when you are not looking becomes the plot.

The two worlds and their narrators differ in how much they will carry of this, and choosing an AI narrator is partly choosing how dense the supporting cast can get before it thins out.

The reader’s side of the craft is restraint. Resist asking a character what they want; ask them for something and watch the cost appear in the answer. Address them by name, say the line you mean, and let the refusal stand when it comes.

A test you can run in one scene

Side characters in interactive fiction are easiest to audit one at a time. Pick one who has appeared twice. Ask yourself what they were doing between those appearances, and whether anything in the second scene would have been different if you had taken longer to arrive. If the answer is no, the character is furniture with a voice, and the fix is not more description — it is one sentence of want, with a deadline attached.

Then try refusing them. A person has a second move ready. A prop repeats the first one.

Frequently asked questions

What makes a side character feel like a person rather than a prop?

A want of their own, a location when you are not watching them, the freedom to refuse you, and permission to change their mind. Accent and appearance are decoration on top of those four.

Should a companion character ever refuse the reader?

Yes, when refusing is in character. In Inform 7 a command addressed to another character is treated as a request that only succeeds if the persuasion rules let it, which makes consent something an author has to earn rather than assume.

How do I give a side character a motivation in an AI story?

State it in your own prose, in one clause, the first time the character matters. "She wants the ledger back before her brother sees it" is enough for a narrator to act on for the rest of the story.

Do AI narrators simulate characters who are offstage?

Not in the sense of running a second world in the background. A narrator working from a structured story record keeps each character's goal and last known position, then accounts for the gap when you meet again.

How many side characters should one story have?

Fewer than you expect. Three or four who want incompatible things produce more scenes than a dozen who each want one thing from you.