Repository navigation
RPG Mode
Game mode turns any chat into a light RPG. You keep writing the story the way you always do, and the game keeps score alongside you: where you are, who's in the scene, what's in your pack, which quests are open. The Waystone is my baby and the rest of the panel grew around it.
- The host runs it. Only the host can turn game mode on or off, open the Game tab, or edit the game's shared state. Everyone in the room sees the panel, and each person can edit part of their own sheet.
- A model with tool use lets the story update its own state. Without one, the panel shows a Read-only badge. Your trackers still steer the story, but you update them by hand. Connect a model shows how to spot models that support tools, and how to declare tool calls for a model on your own server.
- The host's model does the work. Replies, state updates, Resync from story and Fill from card all run on the host's Chat connection. There is no per-chat model choice. The one per-room override is the GM voice preset, covered below.
- A game starts Freeform. No dice, no attributes, no HP meter. You can switch to the D20 ruleset any time.
- Long games want Memory. The panel tracks the facts you've set up. For the long story behind them, switch on Memory. It's off until you do, it tells you the cost before it turns on, and it needs a Utility model. → How memory works
- As host, open Chat options and choose Turn on game mode. The Game tab in the chat's details panel (Show details) has the same button.
- The panel opens on Status. At first it's mostly empty. The story fills it in as you play.
To stop, choose Turn off game mode from Chat options. Nothing is deleted: your sheets, scene and quests are kept. Turn on game mode (or Turn game mode back on in the Game tab) picks up where you left off. The chat itself reads like any other chat while the game is off.
Forking a game chat gives the new chat its own copy of the game.
The story updates the panel through checked tool calls or a separate structured state reply. Nothing is scraped out of the story text, so a narrator who writes "you now have 50 gold" without recording a state change changes nothing. The mechanics are on How a turn is built under "How game state changes".

The panel opens with the Waystone: a day-and-night dial with the room's name, the scene's location, the date, the time of day and the weather. Until the story sets the scene it says so. Your orbs and coin appear with it.
- Orbs are meters the host chose to show. A meter with a maximum shows as a ring, and one without shows as a disc. Text and list trackers never become orbs.
- Coin is your own purse. The Inventory tab adds up the whole party's.
- On a phone the orbs and coin are hidden. The same numbers are in Status and Inventory.
- A small badge shows how the panel stays current. Live means each reply records its own state. Updating... means a second pass is still writing it, and Last recorded beat means that pass is done. A Read-only badge means the model can't update the game for you, and it replaces these.
- The host sees an N veiled count when the story is holding secrets. → Secrets
The panel's tabs are below.
Each person in the room (under their persona's name) and each seated character gets a card: portrait, name, title, a status line, meters, trackers and condition chips. Open one by its name to see the whole sheet: title, level, a line about who they are, coin, attributes (once your ruleset has any), trackers and conditions. The host edits any of it in place. Members can edit only their own title, level, description line and attributes.
A pack for each character. Pick whose pack you're looking at, and switch between a grid and a list. The host can add items, change a name, quantity, location or description, pick an icon, or drop an item. The story adds and removes things as it goes.
The scene right now: location, date, time of day and weather (the host can set any of them), the characters on stage, your active quests as goals, any game-wide trackers, and the last few beats of the story. If you've turned on CYOA choices, the live choice shows here too. While story cards are on, a Cards archive lists the scene's cards. If the scene is empty (no characters and no location), the host also gets a Resync from story shortcut here.
Quests are cards with an objective checklist. Finished and failed quests move to Done. When the story has set up a campaign arc, an act rail (Act II and its title) shows which act you're in. The host can edit its number and title, start a quest, rename one, add, remove or tick off objectives, or delete a quest.
The campaign chronicle, grouped by date. The story writes entries as it goes, and the host can add, edit and delete entries. The journal has up to three views:
- All: every entry and card.
- Marks: saved moments you can restore.
- Cards: every story card the game has made. It only appears while story cards are on.
A Mark bookmarks the game's state. The host types a name under Mark this moment... and presses New mark. Later, Restore puts the game's state back to how it was at that Mark. Your chat messages stay as they are, a "scene restored" note lands in the chat, and the journal keeps everything since. Members can see the list of Marks, but only the host can restore one.
This is the host's job, in the Game tab.
Stat profile holds attributes: a name, a hint, and the range their values can take. A game can carry up to twelve. Freeform starts with none.
Trackers are anything else you want the story to keep up: a Health meter, a Grit meter, a Corruption note, a list of rumours. To add one, type its name first, choose per character or game-wide, then press meter, text or list. Then set:
- whether the story spends and restores it (spend & restore, like gold) or just observes it (observe, like mood),
- who carries it: the party, the scene's characters, or everyone,
- an optional maximum for a meter,
- whether it shows as an orb,
- and whether to lock it, so the story can never write it.
For one character who's an exception, open their sheet and use Tracker access to grant them a tracker the group missed, or revoke one the group got.
Every attribute and tracker has a hint: a line telling the narrator what it means, like "Grit: how long they keep going when it hurts". The narrator is taught the hint along with the stat. It's the best lever you have, so write one for every stat. A stat with no hint is a number the narrator guesses at.
Two more hint lists sit beside them. Relationship hints explain custom relationship labels, and Journal type hints explain beat types you've invented.
Characters the story invents (a shopkeeper, a rival) walk on and off stage in the Scene tab as scene characters. Each has a mood, notes on their appearance, outfit and thoughts, and a relationship to you: lover, friend, ally, neutral, enemy, or a custom label. The story updates all of it, and the host can correct it.
When a scene character leaves, they're listed under Known characters (press Show to open it). The host has two choices there:
- Promote gives them a character card in your library and a seat in the room, and their tracked state comes along. Their mood and their stance toward you don't. A confirmation says so first, and promoting is refused if someone in the room already has that name.
- Dismiss forgets them and everything tracked on them.
The Ruleset setting is in the Game tab. Freeform is the default and steers the story by prose alone. D20 adds the six classic attributes (Strength, Dexterity, Constitution, Intelligence, Wisdom, Charisma), an HP meter, and dice.
You can switch whenever you like. A switch only adds: nothing you set up is removed, and switching back to Freeform hides nothing.
To fill D20 scores, open a character's sheet in Status. Choose Roll 4d6 drop lowest, Use standard array, or Enter by hand, then adjust individual scores if needed. Members fill their own scores; the host can edit everyone's.
With D20, the Message tools menu in the composer gains a Dice rolls group (Roll d20, Roll d6, Roll 2d6, Roll d100). Any member can roll. The app rolls it and the result lands in your message box, ready to send.
For a roll using your own character's score, choose Message tools → Dice rolls → Ability check, then pick the ability. Orbweaver rolls a d20, adds the modifier from your saved score, and places the result in your draft. Set that score in Status first if the choice is unavailable. The story still decides what the result means; Orbweaver does not run combat or choose success thresholds for you.
State follows swipes. Swipe to another version of a reply and the whole panel swaps with it: stats, loot, quests, who's on stage. Reroll a bad turn and what it did goes away with it. That roll never happened. State you edited by hand stays put.

Your edits stick. When the host changes a value by hand, a pin marks it and the story can't overwrite it. Press the pin to release it back to the story. If the story tries to change something you've pinned, Game actions on this turn (below) says "your edit kept".
Resync from story. If the panel drifts from the story, the host can rebuild it from the recent story in one click, from the Game tab (or from the Scene tab when the scene is empty). It costs one model call and never overwrites pinned fields. If you changed personas partway through, tick Restamp my messages first so the rebuilt state uses your current name.
Fill from card. In a character's sheet, the host can press Fill from card to have the model read their card and the opening of the story, then fill in what play can't: title and level, starting gear and coin, and goals their background implies. It only fills what's still empty, costs one model call, and needs a model that can return structured output. It works for characters with cards, not for you or for scene characters.
What this turn did. A game reply that recorded state, or tried to, has a collapsed fold-out under it, Game actions on this turn, listing the changes. Each is marked recorded, partly recorded, not recorded, or your edit kept. It follows whichever swipe you're viewing.
- Plot steering. On by default. In the Message tools menu, a Story group has Steer the plot: Natural progression, Random twist, Grounded twist, Escalate, De-escalate and Advance the act. Each nudges the next reply once. The host can turn the group off in the Game tab.
- CYOA choices. Off by default. Turn on CYOA choices in the Game tab and every reply ends with clickable choices. The host picks whether a click drops the choice into your message box to edit (the default) or sends it at once. For a single reply in any chat, use Offer choices in Message tools.
- Steering note. A short standing directive in the Game tab. Members never see it.
In the Game tab, under Hidden channels, the host can turn on (both are off by default):
- Deception, so characters can lie or hold standing secrets.
- Omniscience, so the narrator can note events the party can't perceive.
The host sees what's really going on. Under Status, a Veiled list shows each secret as the claim, the truth and where it was told. Members never see hidden content, and while either channel is on, members can't see the model's reasoning output either.
The ledger stays empty until a lie exists, so a fresh game shows no trace of it.
To be surprised when playing solo, turn off Let me reveal hidden content. Then you play blind too: no reveal, no ledger.
The story can answer with in-world pages like a letter, a wanted poster or a ship's terminal, shown in a locked-down frame. Immersive HTML cards in the Game tab turns the idea on or off (it's on by default), and the Cards views in Scene and Journal keep every one in the chat.
Cards you can click through work out of the box. Let interactive cards run their own scripts in the system settings is on by default, and every character starts on Inherit default, which counts as Interactive. If an admin switches that off, or the character who made the card has HTML rendering set to Render HTML or Untrusted in their Trust tab, you still get the card, just without moving parts. → Privacy and security The game's Allow interactivity in cards setting only decides whether the model is asked for them.
Everything below is host-only and autosaves. The in-app help on each setting is the reference for what it does.
- GM voice pins a preset for this room's turns without changing your own preset anywhere else. → Presets and prompts
- Game macros are macros that live with this game.
- Steering note and Recent beats in the reminder shape what rides along on each turn.
- Delivery model picks how state gets recorded. If you run a small local model, try Separate pass. If your model can't carry the state calls inside its reply, Orbweaver uses a second pass by itself.
- Extraction depth has its reading-depth controls only with Separate pass.
- How the state is asked for chooses Automatic, Tool calls or Structured reply for the separate pass and Resync from story. Automatic chooses a supported vehicle for the model. A skipped tool pass may get one structured retry. If a structured reply isn't supported, the app uses tools instead and tells you. This setting does not change In the reply delivery or make a read-only model writable.
- Ambient date mode picks between a date the story narrates and a running day counter.
If the state pass cannot fit the model's context window, the host gets a notice with Open its context window. Adjust the connection's Advanced context-window setting to what the model actually supports; the notice recommends 16k. Orbweaver does not raise it silently. The notice is shown once per game, connection and window during the session, rather than on every reply.

As host, you can give a game a countdown that everyone in the room can watch. Open the This chat tab, go to Rules, and choose Add a rule:
- Clock fires when full is a countdown that fills one step per reply. When it's full, the story narrates something or you get a notification.
New rules start switched off. Turning one on is a separate step. → Automation
The needle, a tension dial in the same list, is for chats without a game. Adding it to a game chat is refused, because the game steers its own story.
The Story Clocks example plugin is a different take: the host starts and ticks several clocks, and the narrator can tick them too. → Plugins
Games work in group chats. Every seated character gets a sheet. The group's How the characters reply setting still applies: Narrator gives you one message voiced by the group, and Per-speaker gives each character their own. → Rooms and group chats
Friends join a game room like any other, see the same panel, and play from it. → Share with friends
- No automatic combat or success resolution. You can roll ability checks with your saved modifiers, but the story decides their outcome.
- No maps. The Map tab says "Maps are planned", and nothing behind it works yet.
- The journal groups by real date, not in-story days.
- Shared state is the host's to edit. Members can edit only their own title, level, description line and attributes, and nothing else in the game.
Something wrong or out of date on this page? Open an issue and say which page.
Get started
Guides
- Characters and personas
- Lorebooks
- Presets and prompts
- Rooms and group chats
- RPG mode
- Automation
- Images
- Refinery
- Stats and Insights
- Plugins
- Themes
- Share with friends
- Back up and restore
How it works
Help