7 min

Write a long novel with AI and the lore you set up early keeps blurring. To fix that, I built TypeTak's lore dictionary, the World, and I'm writing up what I weighed and chose along the way, one post at a time.

Stories Move

Lore in a story bible is tied to a point in the story. The protagonist in chapter 1 and the protagonist in chapter 50 differ in age, in what they know, and in who's around them, so unless you also note when a detail is true, the story bible quickly gets its before and after mixed up.

By the previous post, I had settled the shapes lore is stored in. Things like characters and places go in nodes, a backdrop like eras and principles in a document, and the story itself, events and scenes, on a board. But the more lore I filled in from the manuscript, the clearer it became that shape alone didn't solve one problem: the story keeps moving.

The nodes got messy

A novel doesn't stand still in one scene. A seven-year-old character grows up, hidden secrets come out, alliances break. When you organize a manuscript one chapter at a time, every chapter adds whatever new you learned about a character to their node.

Adding things was fine. The problem was the shape they piled up in. Into the field for a character's personality crept scenes along the lines of “one day he came back from the forest and did such-and-such with so-and-so.” Reading the node, you couldn't tell what the character was originally like, what they're like now, or when anything changed.

In a test where I organized one chapter at a time, there were even cases where organizing a later chapter overwrote sentences written for an earlier one, and they were gone. Trying to add something new had erased what was already there.

If a story bible has no sense of time, the further the story goes, the messier the story bible gets.

Values get a span

I started with the short facts. Values written in properties, like age, rank, or affiliation, change partway through a story. A character who was seven turns seventeen a few chapters later.

So instead of overwriting values, I had each value carry a span: where in the story, from and until, that value holds. The start and end of a span are picked from the board cards I built in the previous post, that is, events or scenes. Leave an end empty and it reads as “from the start” or “until now.”

That way, seven and seventeen both stay in the same field, along with when each one applies.

Recording where lore came from

Next was the source. If you can tell which passage in the manuscript a piece of lore came from, you can also tell roughly when it appeared. Lore from chapter 3 and lore from chapter 30 carry different weight even in the same field.

So for lore added by Organize World, the passage it was based on stays on as its source. In TypeTak, lore comes in from conversations as well as the manuscript, so for lore decided in a conversation, the conversation is the source. Click a source and you go straight to that passage.

Personalities change, and manuscripts don't spell them out

What was left was the long writing: sections. And sections had two problems that values don't.

First, what goes in a section changes in itself. Sections hold things like a character's personality, inner life, and motives. But as the story moves on, personality and motives change too. A timid character finds courage; a character who dreamed of revenge comes to want something else. You can attach a span to a short value, but it's hard to put a date on personality written out in prose.

Second, manuscripts don't state personality directly. Few manuscripts come out and say, “He was the kind of man who would break any rule for his family.” Instead, characters act. All you get is a scene where he defies his mentor's orders and goes to save his younger brother.

Turning that action straight into a personality word is risky. Write “rebellious” after seeing one action, and a trait the writer never intended gets locked into the story bible. So when pulling lore out of the manuscript, I thought it was better to write down what the character did in what situation as it happened, rather than guess at their personality.

But pile those up and things get too noisy. If everything a character does in each chapter stacks up in a section, the section turns into a plot summary instead of a personality description. The “messy node” problem from earlier comes right back.

A lead from Novelcrafter

Spans and sources were relatively easy. Attach a time frame to values and record where each piece of lore came from, and that was that. Sections were the hard part. The story kept seeping into sections and cluttering the text, and I couldn't get it under control.

I found my lead while looking at other products. Novelcrafter has a separate Progressions field for each character: an input where you note what changes over the story, tied to the scene where each change happened. Seeing that, I decided to keep what changes apart from the main text of a section.

Splitting one action into trait and progression

Here's the rule I settled on for splitting. Of what an action reveals, anything that holds true wherever you read it in the story is a trait. A change that happened at that point, or something revealed for the first time, is a progression.

Take the scene where the character defies his mentor's orders to save his younger brother. It splits like this:

  • Section text (trait): When his family is in danger, he puts them before the rules.
  • Progression: Defies his mentor's orders for the first time.

TypeTak already had sections, and you can write anything you like in them. So instead of giving each character a separate progression field as Novelcrafter does, I put the progression inside the section. Under the main paragraph about traits, the agent creates a progression block when it needs one, and the block collects what changed, one line at a time, in story order. Each line has the manuscript passage or board card where the change appeared, and clicking it takes you to that scene.

This way, changes in personality collect in the personality section and changes in relationships in the relationships section. Organize World uses the same rule when it reads the manuscript: traits go in the section text, and what changed or came to light goes in the progression. Even as chapters pile up, the main text keeps telling you who the character is, and you can read what changed and when, in order, in the progression.

The next post is about the screens. The graph, the wiki-style nodes, the nested card board: nearly every screen in the World came from tools that already existed. I'll write about what I took from where.

I decided TypeTak wouldn't overwrite lore that changes. Short values get a span, every piece of lore keeps its source, and in long writing a node's traits stay apart from how it changes over the story (its progression).

Frequently asked questions

How do I keep track of lore that changes during a serial?

Don't overwrite it; note from when until when each detail holds. Keep short values like age or rank side by side for each period, and collect changes in personality or relationships separately from the core traits, in story order, so before and after don't get mixed up.

What goes wrong if a story bible doesn't record when things are true?

Either only the last thing written survives, or details from different points in the story get mixed into one paragraph. Then reading the story bible won't tell you what a character was originally like or what they're like now, and the AI will read past lore as if it were current.

Why keep a source for each piece of lore?

Knowing which passage in the manuscript a detail came from tells you roughly when it appeared and how solid it is. When something looks off, you can go straight back to the manuscript to check.

Features used in this lesson

Step-by-step details are in the guide.

Author
Oasis

I'm building TypeTak. In this series, I'm recording the problems I ran into while designing the World and the answers I chose.

Try TypeTak yourself

You can start on the free plan.

Start for free