User Guide
Text Shortcuts
Type these at the start of a line to format content:
| Shortcut | Result |
|---|---|
# |
Heading 1 |
## |
Heading 2 |
### |
Heading 3 |
>## |
Toggle Heading 2 (collapsible) |
>### |
Toggle Heading 3 (collapsible) |
| ` | ` |
- or * |
Bullet list |
1. |
Numbered list |
[] |
Task list |
--- |
Horizontal rule |
` |
Code block |
Toggle headings create collapsible sections - click the chevron or heading to expand/collapse. All content until the next heading of the same level is included in the collapsible section.
Entity Linking in the Editor
When editing content, type @ syntax then space to create links:
@character(Name)or@npc(Name)- Link to a character@place(Name)- Link to a place@item(Name)- Link to an item@hero(Name)- Link to a hero (owner only)@lore(Name)- Link to a lore entry@doc(Name)- Link to a library document@org(Name)- Link to an organization
Matching is case-insensitive and "starts with" — @place(River) finds "Riverbend". If no match exists, a new hidden entity is created.
Partials
Partials are reusable content snippets you can insert into any document.
Creating Partials:
- Go to Campaign Settings > Templates
- Click the Add Partial button in the Partials section
- Give it a name (no spaces allowed) and add your content
Using Partials:
- Type
@PartialNamethen space to insert the content inline - Matching is case-insensitive —
@combatfinds "Combat" - The partial's content replaces the
@PartialNametext
System vs Campaign Partials:
- System partials are read-only defaults available to all campaigns
- Campaign partials are ones you create for your campaign
- If both exist with the same name, your campaign partial takes priority
- You can copy a system partial to customize it
Inline Documents
Embed the content of a Library document directly into another document with @inline(Title) then space.
@inline(Combat Rules)- Embeds the content of "Combat Rules" library document
The matching is case-insensitive and uses "starts with" matching like entity links. When the document is viewed, the inline content is expanded and displayed with a subtle visual indicator.
Notes:
- The Library document must exist (no auto-creation)
- Hidden documents are not rendered for players
- Maximum nesting depth is 3 levels (to prevent infinite loops)
- Circular references are detected and blocked
This is useful for reusing shared rules, reference tables, or boilerplate text across multiple documents.
Lookup Tables
Campaigns use lookup tables for dropdowns like ancestry, profession, item type, and more. Each campaign can:
- Use system defaults - Read-only access to the standard values
- Copy and customize - Start with defaults, then add/remove/reorder
- Start blank - Build your own list from scratch
Access via Campaign Settings > Lookups. Some fields (like profession) allow adding custom values inline even when using system defaults.
Visibility
Every piece of content - characters, items, places, lore, heroes, library documents and campaign documents - answers one question: who can see this?
- Hidden (default) - Only you and any co-directors can see it
- Chosen groups - Only the player groups you tick can see it
- Everyone - Everyone who can see the campaign can see it
This lets you prepare content before revealing it. Members with permission can only edit what they can already see, so a player can never edit something hidden from them.
If your campaign has no player groups, only Hidden and Everyone appear, and things work exactly as they always have.
Player Groups
Running more than one party in the same world? Create a group per party in Campaign Settings > Player Groups, then choose which groups can see each piece of content.
A player can belong to more than one group, and sees anything shared with any group they are in. You and your co-directors always see everything.
Give each group a color and its content is marked with a colored eye wherever it is listed, so you can tell at a glance which party knows what. On any list you can also switch to Viewing as a group to see exactly what that party sees.
Sessions
A session summary belongs to the one party that played it. You pick the party when you create the summary, and each party numbers its own sessions - the Tuesday group and the Friday group both start at Session 1.
Plans work the other way: a campaign plan or adventure plan can be shared with any number of groups, which is useful when a co-director runs one of the parties. Session plans are always private to you and your co-directors.
Heroes
A hero assigned to a player who belongs to exactly one group joins that group automatically, so parties do not see each other's characters. A player always sees their own hero.
Roles and Permissions
Every member is a Player unless you promote them to Co-Director.
A Co-Director can see and edit everything in the campaign, including hidden content and plans, exactly as you can. They cannot change campaign settings, manage members, or create API keys.
Beyond that, you can grant any member permission to create and edit specific content types:
- Session Summaries
- Characters
- Items
- Places
- Lore
- Organizations
Go to Campaign Settings > Campaign Players, click a member, and set their role and permissions. Members with permission can only edit visible content in the categories you allow.