Playing a TTRPG Novel - flukeatzerocool/holonovel GitHub Wiki

Playing a TTRPG, Part 2: The Novel

Tutorial. For new players and Game Masters. You have a running game server from Part 1. For our walkthrough that's Mothership, but everything here applies to any game. By the end, you'll have a Novel prepared for play โ€” the adventure loaded, session zero run, a crew built โ€” and you'll be playing it.

The easiest way through this tutorial is to let your AI read it. Have your AI follow along page by page โ€” that's the advantage of agentic AI. You supervise and make the calls; the AI drives the tools and asks you the built-in questions as they come up.

What a Novel is

A Novel is your entire campaign in one structured save file โ€” party, NPCs, scenes, lore, combat state, world model, story journal, factions, secrets, everything. It is not a chat log. It survives server restarts, crashes, and rebuilds. You can export it, clone it, and import it on another machine.

One Novel is active at a time. Multiple Novels coexist on the server without leaking state into each other.

Source: spec ยง5.9, Novels.

Session 3: Create the Novel

What you do

Mode: Build. Model: DeepSeek Pro. Thinking: High.

Creating a Novel is the moment your campaign starts to exist on disk. I name it. For our example:

"Start a new game called Another Bug Hunt."

"Start a new game" invokes the built-in novel-setup prompt, which walks you through naming and binding the Novel. The Novel starts in the Editor badge โ€” full access to every tool. You build the world before the story begins.

The Novel's slug is derived from the name (lowercased, whitespace to hyphens). You'll use it to resume and switch. Bind the Novel to your ruleset โ€” for us, Mothership:

"Bind this game to the Mothership ruleset."

Your options

  • Name. The Novel name becomes its slug. Pick something you'll recognize.
  • Resume or switch. "Resume the Another Bug Hunt game." or "Switch to my other campaign." Badge state carries over when you switch.
  • Clone. "Clone the Another Bug Hunt game as 'Bug Hunt โ€” branch'." to test a story branch without touching the main campaign.

Source: spec ยง5.9, Novels.

Load the adventure

What adventure modules are

Adventure modules are supplementary Markdown files loaded during the Build workflow. When you load one into a Novel, the server populates the world model from the module's ## World section and creates its NPCs, lore, and factions โ€” plus indexes the module's prose so it is searchable and surfaced in the GM briefing. They add content, not new mechanics.

Another Bug Hunt is the official Mothership introductory adventure: four connected scenarios. Your crew is sent to re-establish contact with a remote terraforming colony that has gone silent. I'll keep this article at the public premise โ€” the scenarios are yours to discover at the table. Whatever game you're playing, the module you load slots into this same step.

What you do

Because I converted Another Bug Hunt in Part 1, its Markdown is already in my books directory. I point the server at it and load it:

"Load the Another Bug Hunt adventure."

Adventure content is badge-gated. Sections marked for the Warden โ€” Mothership's name for the Game Master โ€” stay hidden from the Player badge. I won't spoil my own first game.

Your options

  • Adventure location. The adventure .md file lives in your TTRPG_ADVENTURE directory. The server indexes it there.
  • Generated adventures. You can also generate a fresh adventure from a one-line premise: "Generate an adventure: a salvage run to a dead liner." These are transient Novel artifacts, separate from indexed modules.

Source: spec Appendix K (adventure module format), REQ-079, REQ-132, Adventure Modules.

Build the world

What the world model is

The world model is a real spatial layer โ€” rooms, exits, containers, supports, doors. Every object knows where it is and what it contains. The server keeps a containment graph, not a paragraph of prose it hopes the AI remembers.

I can navigate it with parser commands while playing โ€” "go north," "take the medkit," "look around" โ€” and exits connect in both directions. Your map is real.

Source: README.md ยง2 (World).

What you do

Mode: Build. Model: DeepSeek Pro. Thinking: High.

Loading the adventure module is what seeds the world โ€” the AI GM does that as part of reading the module, not me. The module's ## World section fills the rooms, exits, and things; its NPC annotations become the Novel's NPCs; its locations and factions are extracted into the world; and its premise and adventure hook surface in the GM briefing. The crew the party will meet, and the opening location, are all already there.

I can add to it if I want a specific ticking clock:

"The colony's power core is failing. It holds for three more hours."

Your options

When you load an adventure module, the server does the heavy lifting: it populates the world model from the module's ## World section (rooms, things, exits), creates its NPCs, turns its locations into lore, its factions into factions, and surfaces its premise and adventure hook in the GM briefing. You don't lay any of this out by hand.

If you have no adventure module, you can set it all up yourself:

  • World model. Set rooms and exits now, or let parser commands reveal the map as you explore.
  • NPCs. Give each NPC a disposition, a voice, and a goal. The engine tracks their memory and shifts their disposition as events unfold.
  • Lore. Keyword-triggered entries surface only when relevant. Set badge scope so Warden-only knowledge never leaks to the Player badge.
  • Countdowns. Round countdowns tick per combat round; narrative countdowns tick on scene changes.

Source: spec ยง5.6, ยง5.8, REQ-079, REQ-247, Game Mastering.

Session zero

What session zero is

Session zero is where you agree on tone, safety, and the crew before the story starts. Mothership is a horror game for mature audiences, and Another Bug Hunt lists its own content warnings โ€” arachnophobia, body horror, mind control, violence, and claustrophobia. Other games bring their own warnings; read them.

Session zero in Holonovel does three things: you set the boundaries, you confirm the tone, and you build the characters. Nothing here is mechanical work โ€” it is you and the AI agreeing on how the game should feel.

What you do

Mode: Build. Model: DeepSeek Pro. Thinking: High.

"Run session zero."

"Run session zero" invokes the built-in session-zero prompt, and the AI walks through its checklist โ€” tone, safety, and the crew. I set my boundaries with player signals โ€” structured controls that persist in the GM briefing until I change them:

"Boundary: no body horror." "Tone: slow-burn dread, not gore."

Five signals exist: pace, difficulty, tone, focus, and boundary. Each carries the value you set and when you last changed it.

Source: spec ยง5.6 (REQ-069, REQ-128), Mothership Another Bug Hunt content warnings, Playing the Game.

The crew

Mothership has four classes: Teamster, Scientist, Android, and Marine. For our example I'm building five characters โ€” three Marines, one Teamster, one Scientist, no Android. Each gets a full sheet and a persona. If you're playing another game, this is where you'd build its classes instead; the flow is the same.

What character creation is

Holonovel reads every stat, save, skill, and derived field the ruleset defines and walks me through creation. Two modes:

  • Step-by-step. The AI asks, I answer โ€” stats, class, skills, gear, name.
  • Quick creation. One call with everything, and the AI fills the sheet.

Both modes produce a complete sheet. The engine does the rolling โ€” Mothership stats are 2d10 + 25 each, Saves are 2d10 + 10, Health is 1d10 + 10, and Credits are 2d10 ร— 10. Class adjustments, skills, and the Trauma Response are applied from the rulebook. I never hand-compute a number.

Source: Mothership Player's Survival Guide (character creation), spec ยง5.4 (REQ-104), Character Creation.

Ripley, built step by step

I'll build Ellen Ripley manually, watching each decision. She is Ellen Ripley at the start of Aliens โ€” Warrant Officer of the Nostromo, just rescued after fifty-seven years adrift in hypersleep. Disbelieved by the Company, living in a cramped apartment and waking from nightmares, she has survived one encounter with the thing that killed her crew, and now they're asking her to go back to LV-426 with a squad of Colonial Marines.

Mode: Build. Model: DeepSeek Pro. Thinking: High.

"Create a character."

The server walks me through every field on the sheet. I can follow the rules strictly, or override any value to customize the sheet as I like. I don't have to do it by hand, either โ€” I can hand the AI a character study and let it produce the sheet from that. The AI can also recommend advancement for Ripley and each member of the crew: Mothership has two tracks, Shore Leave (converting Stress into improved Saves) and learning new Skills over time โ€” or, in a level-based game, a starting level.

Then I give her a persona and a voice:

"Describe Ripley: a warrant officer who survived the Nostromo and is done pretending everything will be fine. She is competent, terse, and protective of the people she has left. She plans instead of panicking."

"Give Ripley these voice examples." "Context: given bad news. 'Tell me the part you're not saying.'" "Context: someone wants to split up. 'We stay together. That is not a discussion.'"

Here is the finished sheet, with example rolls โ€” yours will differ:

Field Value
Class Teamster
Strength 38
Speed 33
Intellect 46
Combat 35
Sanity 44
Fear 40
Body 41
Health 16
Wounds 0 of 2
Stress 2 (minimum 2)
Armor Vaccsuit, AP 3
Credits 80
Trauma Response Advantage on a Panic Check, once per session
Skills Industrial Equipment (Trained), Zero-G (Trained), Jury-Rigging (Trained), Mechanical Repair (Expert)

Source: Mothership Player's Survival Guide (class table, sample sheet).

The rest of the crew, automated

The other four characters are built the same way โ€” Holonovel rolls their stats, applies their class adjustments, and fills their sheets. I supply the persona in one call each.

Mode: Build. Model: DeepSeek Pro. Thinking: High.

"Create Carl Jenkins, a Scientist. An earnest, intense psychic officer who is quietly certain the worst is coming."

"Create Dutch, a Marine. A special-forces survivalist who fights calm and talks little."

"Create Rain Ocampo, a Marine. A hard-edged corporate commando loyal to the squad before any employer."

"Create Guy Fleegman, a Marine. A terrified security guard who is sure he dies first."

Each call returns a complete sheet plus the persona I described. The AI fills the class bonuses, skills, loadout, Trinket, Patch, and Credits from the rulebook, and can recommend advancement for each character. I can review any sheet with "Show me Rain's sheet," and adjust a voice later with a voice correction.

Source: spec ยง5.4 (dual-mode creation), Character Creation.

Session 4: Play

The play switch

Mode: Build. Model: DeepSeek Flash. Thinking: None.

Playing is different from building. I want the AI to respond like a Game Master at a table โ€” immediately. DeepSeek Flash with no thinking answers fast. The reasoning I needed to build a ruleset only drags on a horror beat. Switch models, drop thinking, and keep Build mode so the engine can mutate game state.

Wear the Player badge

"Put on my Player badge. Let's play."

Badges are server-enforced roles. Wearing the Player badge narrows my tool surface to player tools and hides every Warden-only surface. The AI's narrative role becomes Game Master by default. I can switch back anytime:

"Put on the Game Master badge. I need to fix something."

Source: spec ยง5.5 (REQ-031, REQ-032, REQ-066), Badges.

Set your point of view

Point of view locks the narration to one character. I inhabit them โ€” I speak as them and see through their senses. Other characters' internal states stay inaccessible.

"Let me play as Ripley."

The server sets Ripley as my active character and locks narration to her point of view. The directive that names her and her voice is never truncated, no matter how tight the briefing budget.

My options:

  • Character point of view. Default. I am Ripley. I only know what she could observe or infer.
  • Omniscient. "Switch to omniscient point of view." Narration is unrestricted and I see everyone's state.

Source: spec ยง7 (REQ-220, REQ-223).

Set your autonomy

Autonomy controls how much the AI acts on its own. I want my character to talk freely, but to ask before any mechanical action โ€” so I, not the engine, decide when Ripley shoots, runs, or reaches for a tool.

"Autonomy: mechanical decisions only."

Four sliders govern this. The setting above maps to level of mechanical_prompt and confirmation of prompt:

Slider Values What it controls
level full / mechanical_prompt / manual How much the AI auto-plays vs. defers to you
confirmation auto / confirm / prompt Whether the AI asks before making changes
safety safe / moderate / hardcore Content boundaries for AI narration
creativity predictable / standard / chaotic How much the AI introduces unexpected elements

With mechanical_prompt, the AI narrates exploration and roleplay freely and pauses only for TTRPG mechanics โ€” world-model and narrative actions never pause.

Source: spec ยง5.5 (REQ-305, REQ-306), Badges.

The first scene

I'm playing. The AI narrates, the dice decide, and the engine enforces Mothership's rules โ€” the d100 roll-under, the Stress that climbs toward a Panic Check, the Wounds that do not heal quickly.

"We touch down on the landing pad and the comms tower is dark. What do we see?"

The GM sets the scene from the adventure I loaded. I describe what Ripley does. When a roll matters, the AI picks the right Stat or Save and shows its work.

When the story goes somewhere I do not want, I use a signal:

"Pace: slow down. I want to look around first." "Boundary: keep the body horror out."

Signals persist. The GM's briefing reflects them every turn.

Source: spec ยง5.6, Playing the Game.

Where you are now

I converted my books, built the server, created the Novel, loaded the adventure, ran session zero, and built a crew. I'm wearing the Player badge, playing Ripley, and the dice are deciding. If you followed with a different game, you're at the same place โ€” your own books, your own crew, your own first scene.

When the session ends, your Novel is still on disk. Resume it next time:

"Resume the Another Bug Hunt game."

Source: spec ยง5.9, Novels.

See also

Maintenance notes

Deliberate departures to preserve across future updates:

  • The AI GM seeds the world and creates the NPCs from the adventure module โ€” not the user. Do not re-attribute this to manual setup.
  • Ripley is Aliens (1986), not Alien 3. Do not revert her persona.
  • Prompt examples are intentionally terse. Do not expand them back into paragraph-length examples.

Last updated: 2026-10-12.