Memories and Gates

Memories and Gates

You know your friend who remembers we ate turkey in 2004, even though we just said we've been veggie since 2003? Yeah, Charisma is like that friend: it remembers everything. Memories store information the player gives us for when the story needs it most. Anything from a decision they've made, to a path they've taken and even a sentence they have said, we can use Memories to make characters hyper-personal.

When Memories are used in conjunction with Gates, we can change how the story plays out depending on how a player has interacted with the story and create an experience that feels alive and influenceable.

The 5 types of Charisma Memory

  • Word - Word memories pick out specific words from player answers and save them. The most obvious example of this is when we save a player's name. Word memories use Categories to function.
  • Sentence - A sentence memory takes everything that a player said at an interaction point and remembers it.
  • Decision - A decision memory remembers a decision that the player has made, or a route the player has gone down.
  • Counter - Counter memories can be used to remember how many times a player has done a particular thing. You can choose to increase, decrease or set to a certain number.
  • True/false - A true/false memory can have its value be set to either true or false! It's like a decision memory, except the "decisions" of true and false are built-in, so it's easier to author in this special case.

Tags (lightweight memories)

A tag can be set and unset on a character node without having to create a memory beforehand. It is the equivalent of a true/false memory.

It's quite useful if you want to track something in the same graph between a few nodes without having the overhead of a whole memory to setup.


Gates lock or unlock the following node of your story depending on the conditions you set. If all conditions of the gate are met, then your player will be allowed though. If not, they will be sent through an alternative route.

The conditions you can set on Gates are:

  • A character is experiencing a certain feeling (See emotions).
  • A character is in a certain mood (See emotions).
  • A character has a certain relationship with the player (See emotions).
  • A certain memory has been saved (Using any memory).
  • A decision or true/false memory matches a certain value (Using Decision or True/False Memories).
  • A counter matches a comparison (Using Counter Memories).
  • A tag is set/unset.

A gate can have multiple conditions added to it, and you can use many different gates at a single interaction point.

When adding gates, you must always make sure to add a non-gated route, just in case your player has not met the conditions of any gate. Otherwise the story will be stopped and they will not be able to continue.

To see memories and gates in action in a graph, check out the example graphs.