Lore & Knowledge Graph
Track NPCs, locations, factions, and their relationships as a living knowledge graph. Reuse lore across parties with templates.
Last updated: April 10, 2026
What is Lore?
Most tools for tracking campaign details give you a pile of wiki pages. You end up with a folder of documents that mention each other in prose and nothing else connects them. ScryMarket’s Lore system is different: it is a knowledge graph for your campaign.
Every person, place, organization, and quest is a first-class entity. Entities are typed, so an NPC is not just a page titled “The Ashen Chancellor” — it is an NPC entity with a race, class, status, and disposition. And entities are connected. You can draw a typed, directional relationship from “The Ashen Chancellor” to “Blackreach” (“rules”) and from “Blackreach” to “The Deepdown” (“located in”). When you open the Chancellor’s page, his connection to Blackreach and the wider Deepdown is right there in the sidebar, not buried in a paragraph somewhere.
That small difference changes how your campaign notes work. Instead of re-reading a wiki to rebuild context, you navigate a map.
Replaces Campaign Entities
Lore replaces the older Campaign Entities concept from earlier versions of ScryMarket. If you are starting fresh, this is the only system you need — there is nothing to migrate.
Entity Categories
ScryMarket supports eight entity categories out of the box. Each category has its own icon and a set of optional structured fields (metadata) that match how GMs actually think about that kind of thing.
| Category | What It’s For | Structured Fields |
|---|---|---|
| NPC | People the party meets: allies, villains, shopkeepers, rivals | Race, class, level, status (alive/dead/missing/unknown), disposition (friendly/neutral/hostile/unknown) |
| Location | Anywhere the party might go, from continents to single rooms | Type (continent, region, city, town, village, building, dungeon, wilderness, landmark, other), population, government |
| Faction | Organizations, guilds, cults, armies, criminal outfits | Alignment, size, influence (local/regional/national/global), party reputation |
| Quest | Active and completed adventure hooks | Status (available/active/completed/failed/abandoned), priority (main/side/personal), level range, reward |
| Lore | Worldbuilding, history, cosmology, anything free-form | None — pure markdown |
| Handout | In-fiction documents: letters, maps, prophecies, puzzle clues | Handout type (letter, map, drawing, clue, puzzle, prophecy, other) |
| Session | Session recaps and GM prep notes | Session number, date, duration, players present |
| Custom | Anything that does not fit the above — artifacts, deities, historical events | Custom label you define |
Every entity, regardless of category, also gets: a name, a markdown body, tags, an optional section (for grouping), an optional image, a visibility setting, and a pinned flag.
Custom Category Is a Safety Valve
If you run a homebrew setting with its own lexicon — artifacts, deities, historical eras — use the Custom category and give it a label like “Artifact” or “Deity”. You get a full entity with relationships, just without the preset metadata fields.
Creating Your First Entity
In the party view, open the Lore tab and click New Entity. The form is deliberately short — most entities take under a minute to create.
- Name. Required. Short and memorable — “The Ashen Chancellor,” “Blackreach Undercity,” “The Obsidian Hand.”
- Category. Pick from the list above. The form adapts — choosing NPC reveals the race/class/status fields; choosing Location reveals the location type and population.
- Section. Optional free-text grouping like “Chapter 1,” “Barovia,” or “The Deepdown.” You can filter the lore list by section later.
- Content. A markdown body with a live Write / Preview toggle. Aim for one to three focused paragraphs — this is a reference, not a novel chapter.
- Visibility. GM Only or Party. See the Visibility section below.
- Pinned. If on, the entity appears in the Pinned Lore panel on your party home dashboard.
- Image URL. Optional. Drop in a character portrait or location photo — it renders in the entity card and detail view.
- Tags. Comma-separated. Use tags for cross-cutting themes:
undead,underdark,act-one,redemption-arc.
Save, and the entity is live for your party immediately.
Sessions Have a Shortcut
When you create a Session entity, ScryMarket pre-fills the session number (max existing session + 1) and today’s date. Just name it and drop in your recap.
Pinning Entities to Your Party Home
Any entity can be pinned. Pinned entities appear on the party home dashboard in the Pinned Lore section, up to a few dozen at a glance. This is where you put the things your table needs to see every session.
Good candidates to pin:
- The current BBEG and their lieutenants
- The city the party is currently in
- The faction they are working for right now
- Any active main-arc quests
- The artifact they are hunting
When the party moves on to a new act, unpin the old set and pin the new one. The home page becomes a living spotlight instead of a static dashboard.
Pinned Is Also What Scrybe Sees First
When Scrybe answers a question about your campaign, it prioritizes pinned entities in its context. Pinning is not just decoration — it is telling both your players and the assistant what matters right now.
Visibility: GM-Only vs Party-Visible
Every entity has a visibility flag. It is how you separate “things the players know” from “things the GM is still holding back.”
| Visibility | Who Sees It | Badge |
|---|---|---|
| Party | Every party member, including players | (hidden — default state) |
| GM Only | GMs, managers, and admins | Amber “GM Only” badge with an eye-off icon |
GM-only entities are completely filtered out of the lore list and search results for players. They do not appear in relationship sidebars either — a player opening an entity will only see connections to things they are allowed to see.
You can flip visibility at any time. A common pattern: draft the villain’s backstory as a GM-only entity, then flip it to Party after the party discovers the truth in a session. The entity does not move, the URL does not change, players suddenly just have access to it.
Relationships Have Their Own Visibility
Each relationship also has a visibility setting. You can have a party-visible NPC with a GM-only relationship to a hidden cult — players see the NPC, but the connection stays hidden until you reveal it. Useful for slow-burn reveals.
Relationships
Relationships are where the graph part of “knowledge graph” shows up. Open any entity, click Add Relationship in the sidebar, pick a target entity by name, and choose a type.
Relationship Types
There are thirteen built-in relationship types, organized around how tabletop campaigns actually work:
| Type | Typical Use |
|---|---|
| Located in | A city is located in a region, a dungeon is located in a forest |
| Member of | An NPC is a member of a faction |
| Parent of | A region is parent of a city, or a family lineage |
| Allied with | Two factions cooperating |
| Enemy of | Open hostility between factions or individuals |
| Quest giver | An NPC who handed the party a quest |
| Owns | An NPC owns a shop, a faction owns a stronghold |
| Guards | A creature or faction defending a location |
| Reports to | Chain of command within a faction |
| Serves | Looser loyalty — cultist serves a dark god |
| Employs | A guild employs mercenaries |
| Related to | Generic catch-all when no other type fits |
| Knows | Personal acquaintance — useful for rumor networks |
Each relationship is directional (source → target) and can optionally be marked bidirectional for symmetric connections like allied/enemy pairs. You can also add a short free-text description to explain the connection — “hired the party in session 3” or “paid off by the Obsidian Hand.”
Once you have a few relationships wired up, every entity page shows a Relationships sidebar split into Outgoing and Incoming connections. It becomes trivial to answer questions like “who works for the Chancellor” or “what quests does this NPC have open.”
Templates vs Instances
If you have used ScryMarket’s items or shops, the next part will feel familiar. Lore uses the same template/instance pattern as the rest of the system, and it is the feature that makes the whole thing worth building.
The Pattern
A Lore Template is a reusable collection of entities that lives in your personal library. It is not attached to any party. You build it once — maybe a homebrew pantheon, a published adventure’s NPC roster, or a shared setting you run at multiple tables — and it stays in your account forever.
A Lore Instance is what a specific party has. When you create a party, it gets an empty lore instance automatically. Every entity you create in that party’s Lore tab is an entity instance that lives only inside that party.
The magic happens when you deploy a template to a party: ScryMarket copies every entity and every relationship out of the template and into the party’s lore instance. The party now owns full copies it can edit freely.
| Layer | Where It Lives | Who Edits It | Example |
|---|---|---|---|
| Template | Your personal library | You (the creator) | “Curse of Strahd NPCs” — Strahd, Ireena, Ismark, Madame Eva, all wired up |
| Instance | Inside a specific party | GM and managers | Your Tuesday group’s Curse of Strahd run, with their session-specific edits |
Why This Matters
Build once, run many times. If you run the same adventure for multiple groups — a published module, a home-brew campaign you want to try again with different players, a one-shot convention module — build it as a template. Every time you start a new group, one deploy action sets up the entire lore graph.
Edits stay local. When the Tuesday party kills Strahd, that change lives in their instance. The original template is untouched. Your Friday group, running the same template, still has Strahd alive and plotting.
Promote instance content back to a template. Built something great in one campaign that deserves to be reusable? You can save a polished party instance back into your template library to deploy in future campaigns.
Deploying a Template
From a template’s detail page, click Deploy Template, pick a target party from the dropdown, and confirm. ScryMarket copies every entity and every relationship into that party’s lore instance and attributes the deploy to you. The dialog then gives you a direct link to jump into the party’s Lore tab.
Only GMs and managers can deploy to a given party, and you must own or have access to the template. Templates marked public in the marketplace can be deployed by anyone; private templates stay personal.
Deploy Is a Copy, Not a Link
After deploy, the party’s instance entities are independent copies. Updating the template later does not push changes to already-deployed parties. This is intentional — it keeps each campaign stable.
Activity Feed
Every entity instance has its own per-entity Activity Feed. It logs who did what, and when, with no extra bookkeeping required.
Logged actions include:
- Created — when the entity was added
- Updated — individual field changes, with before/after values
- Visibility changed — GM-only flipped to party or back
- Relationship added / removed — structural changes to the graph
- Archived / restored — soft deletion and recovery
The feed also tracks the source of each change. If an edit came from the web app it shows the user; if Scrybe made the edit at a GM’s request, the feed shows scrybe_assistant in the source column. You always know where a change came from.
For GMs, the activity feed doubles as a between-session memory aid — open an NPC before the session and you can see exactly what shifted since last time.
Scrybe + Lore
Scrybe, ScryMarket’s AI assistant, has a dedicated lore_knowledge tool that reads and writes your party’s lore directly. The integration is the reason the graph structure matters: Scrybe does not just grep text, it understands typed entities and relationships.
What Players Can Ask
Anything about party-visible lore. For example:
- “Who is the Ashen Chancellor and what do we know about him?”
- “What factions are we currently allied with?”
- “Which NPCs gave us active quests?”
- “What do we know about Blackreach?”
Scrybe searches your lore by category and query, pulls the matching entities, walks the relationship graph for related context, and answers in plain language. GM-only entities are invisible to player queries — Scrybe respects the same visibility rules the rest of the app does.
What GMs Can Ask
GMs get the full toolset: search, fetch, create, update, and change visibility, all through natural language.
- “Create an NPC called Kira Vex, half-elf rogue, friendly, member of the Obsidian Hand.”
- “Mark the Chancellor as dead and flip his backstory to party-visible.”
- “What active quests are tied to the Obsidian Hand?”
- “Add a quest called ‘Retrieve the Sunstone’, give it to the party from Madame Vex, make it a main quest.”
Scrybe picks the right category, fills in structured metadata, and can wire up relationships to existing entities by name in a single request. Everything Scrybe creates is logged in the activity feed with scrybe_assistant as the source, so you always see exactly what it did.
For the full assistant reference — including how Scrybe discovers your active party and which tools it has access to — see the Scrybe guide.
Common Questions
Do players see GM-only entities in search or Scrybe answers? No. GM-only entities are filtered out of the lore list, relationship sidebars, and Scrybe’s search results when a player is asking. A player querying Scrybe about a GM-only villain gets the same “no results” answer as if the entity did not exist.
Can I upload image files directly? Not yet. The entity form takes an image URL — host your portraits on any image service and paste the link. Scrymarket-hosted uploads are on the roadmap.
What happens to a party’s lore if I delete the template I deployed from? Nothing. Deployed entities are full copies — they have no live dependency on the source template. Deleting a template does not touch any parties it was deployed to.
Can I import lore from an existing document or adventure module? Yes. The Import tool extracts lore entities alongside items when you feed it a published module or your own campaign notes. It identifies NPCs, locations, factions, and quests, and drops them straight into a template for review.
How many entities can a party have? There is no hard cap for typical campaigns. Practical performance stays excellent into the low thousands. If you are running a megacampaign brushing against those limits, reach out — we want to hear about it.
Can two GMs edit the same party’s lore at the same time? Yes. Both the GM and any managers can edit entities in the party instance. The activity feed records each change with the editor’s username so you can see who did what.
Do relationships show up both ways? The relationship sidebar shows Outgoing and Incoming links separately for each entity, so yes — open an NPC and you see both “who they report to” (outgoing) and “who reports to them” (incoming). Mark a relationship as bidirectional for symmetric cases (allied/enemy).
Can I filter the lore list by tag or section? Yes. The lore page has both category filtering (in the sidebar) and section filtering (a toggle switches between “By Category” and “By Section” grouping). Tags are searchable through Scrybe and the entity search.
Does Lore count toward my subscription’s inventory limits? No. Lore is tracked separately from inventory actions. See the Subscription Guide for current plan details.
What’s Next?
- Templates & Instances — The mental model Lore shares with items, shops, and loot
- Scrybe Guide — The assistant that reads and writes your lore
- Party Management Guide — How pinned lore plugs into the party home dashboard
- Import Guide — Pull lore entities out of adventure PDFs and campaign docs