Skip to content
3 Death Saves

FAQ

Spell Book replaces the default spell management interface with a rule-aware one. It handles spell preparation, multiclass spellcasting, wizard spellbook management, party coordination, and loadouts.

Spell Book targets the dnd5e system, version 5.3.0 or later. It does not work with other game systems.

  • Click the Spell Book button on a character sheet.
  • Run SPELLBOOK.api.spellBookQuickAccess() from a hotbar macro with a token selected.
  • Through token HUD controls, if configured.

Yes. The module ships five macros in the spell-book.spell-book-macros compendium. They are created or updated each time you load the world as a GM.

MacroPurpose
Spell Book - Quick AccessOpen Spell Book for the selected token
Spell Book - Slot TrackerPost a chat card listing slot usage
Spell Book - Scroll ScannerScan every Item compendium for spell scrolls
Spell Book - Spells Not In ListsGM-only: find spells not referenced by any spell list
Spell Book - Flag PurgeGM-only: purge Spell Book flags from an actor

Drag any of them from the compendium to your hotbar, or write your own macros against the API.


Open Spell Book Settings on the actor and assign a Class Spell List. Without one, the class has no spell source and the tab is empty. When a class gains spellcasting with no list assigned, you and the character’s owners get a whispered card with a button that opens the right place to assign one.

Open Spell Book Settings and set a Subclass Spell List. A subclass list only appears if you point at one directly.

How do I get bonus domain / oath / patron spells?

Section titled “How do I get bonus domain / oath / patron spells?”

In Spell Book Settings, pick the subclass journal in the Subclass Spell List field. That journal holds the expanded list, and its spells are granted and always prepared.

Why did some spell lists disappear from the picker and the Spell List Manager?

Section titled “Why did some spell lists disappear from the picker and the Spell List Manager?”

You disabled the Compendium Browser source those lists draw from. A stock list is hidden when every spell on it belongs to a disabled source. Re-enable the source to restore it. A list already assigned to a class stays selectable, marked “(source disabled)”, and still renders every spell it references.

I edited a stock spell list. Where did the original go?

Section titled “I edited a stock spell list. Where did the original go?”

Editing a bundled list moves the original into the Hidden Spell Lists folder so it does not shadow your edits. To restore it:

  • Open the Spell List Manager, find the entry in the Hidden Spell Lists folder, and click the eye-slash icon next to it, or
  • Delete your modified version; the original becomes visible again.

The eye icon on visible lists hides them; the eye-slash icon on hidden lists unhides them.

After modifying a list, the “Classes” label on a spell is not right.

Section titled “After modifying a list, the “Classes” label on a spell is not right.”

Spells added to a list update their class label immediately, but spells removed from a list keep their old class label until a world reload. The system registry has no unregister API, so stale entries persist until the registry rebuilds on startup. This is an upstream limitation.

Why do some spells (Fire Bolt, Shield, etc.) appear multiple times?

Section titled “Why do some spells (Fire Bolt, Shield, etc.) appear multiple times?”

Multiple source packs ship the same spell. SRD 5.1, SRD 5.2, and PHB 2024 all include overlapping entries. Spell Book does not dedupe them, because doing so would silently hide content from some packs. Use debugSpell('spell name') to see which packs a spell name comes from, and pick the copy you want in the Spell List Manager.

How do I find spells that are not in any list?

Section titled “How do I find spells that are not in any list?”

Run SPELLBOOK.api.spellsNotInLists() (GM) to audit every Item compendium against every discoverable spell list. The 3DS:ATLAS troubleshooter report includes the same audit.


The character has reached its preparation limit for that class. The footer shows the current count against the maximum, derived from class level and spellcasting ability modifier. If the number looks wrong, check ability scores and class levels on the character sheet.

Can a player exceed their spell or cantrip maximum?

Section titled “Can a player exceed their spell or cantrip maximum?”

Yes. Preparation is not blocked. If Notify GM on Spell Changes is enabled, you get a whispered card on save listing what the player added or removed, with a warning when a class is over its limit. The player sees an over-limit toast while editing.

”Notify GM” does not fire for some players.

Section titled “”Notify GM” does not fire for some players.”

Two controls gate it: a world setting (notifyGmOnSpellChanges) that enables the feature globally, and a per-actor override in that actor’s Spell Book Settings. Both must be enabled for notifications to fire for a given actor.

What does a locked/disabled spell checkbox mean?

Section titled “What does a locked/disabled spell checkbox mean?”

Locked spells are always prepared, granted by a class, subclass, or item. They are excluded from the preparation system: they cannot be unprepared, and they do not count against the preparation limit.

Each spellcasting class has its own tab and its own preparation limit, prepared independently. Spell slots are shared across classes using standard multiclass slot calculations.

TagMeaning
PreparedCurrently prepared, ready to cast
GrantedAlways prepared via class feature or item
At WillCastable without spell slots
PactUses Warlock pact magic slots
RitualCan be cast as a ritual
InnateInnate spellcasting ability

Can I save a loadout without saving spell preparation first?

Section titled “Can I save a loadout without saving spell preparation first?”

Yes. A loadout captures the live checkbox state of the preparation grid, so committing preparation first is not required. Apply a loadout, then save preparation as normal.

Yes. Loadouts can be saved and applied per class.


Wizards have a free spell capacity calculated from class level. Cantrips are always free regardless of capacity. The footer tracks remaining free spells; once they are used, learning additional spells costs gold.

Yes. A scroll copy is free unless Charge Cost for Scroll Copying is enabled, and that setting only deducts currency if Deduct Spell Learning Costs is also enabled. With that setting off, a copy still computes a cost but nothing leaves the actor’s purse. Scroll consumption is controlled by its own setting. All three live on the settings page.

  • Legacy (2014): traditional rules, no cantrip swapping.
  • Modern (2024): cantrip swapping on level-up or long rest, class-dependent.

See Ruleset Types and What They Mean for the class-specific defaults table.


Each supported module is covered on Module Integrations.

Cauldron of Plentiful Resources integration?

Section titled “Cauldron of Plentiful Resources integration?”

When the chris-premades module is active, a Cauldron of Plentiful Resources Compatibility world setting appears on the settings page. Enabled, Spell Book triggers CPR’s automation setup on the actor’s spells after spell changes are saved. It does not redirect spell resolution or substitute enhanced compendium spell versions for stock ones.

Yes. The Spell Book button is wired into Tidy 5e’s character sheet header the same way it is for the default dnd5e sheet.


Advanced search using a ^-prefix syntax was removed. Use the Search spells field in the sidebar. Other filters remain available: spell level, school, casting time, target, damage type, condition, save, source, and range as dropdowns or number ranges; verbal, somatic, material, concentration, and ritual as toggle buttons; and prepared-only, favorites-only, and costly-material checkboxes.

How do I change the Spell Book’s theme, including the parchment look?

Section titled “How do I change the Spell Book’s theme, including the parchment look?”

Theming is handled by 3DS:ATLAS, the shared library this module depends on.

I moved the Spell Book to a second monitor and child dialogs open on the primary monitor.

Section titled “I moved the Spell Book to a second monitor and child dialogs open on the primary monitor.”

Foundry v14’s detach-window feature is supported. When the Spell Book is detached, child dialogs (spell notes, loadout selector, party coordinator, spell comparison, learn-from-scroll, etc.) route to the same detached window automatically. If a dialog still opens on the wrong monitor, make sure the parent Spell Book window is the one you detached.


  1. Check that the character has the correct spellcasting class(es) configured on their sheet.
  2. Open Spell Book Settings and confirm a Class Spell List (and Subclass Spell List, if applicable) is assigned.
  3. Verify spell lists exist in the Spell List Manager.
  4. If spells were recently added to a compendium, reload Foundry.
  5. Check the console for a warning about spell list entries that could not be resolved. Those point at a compendium that is not installed.

The ATLAS primary GM. Copy approval, the pending-request sweep, the downtime note, the spellcasting notice, and the Peddler trade listener all run on that one client.

  1. Reload Foundry (F5 or Settings > Return to Setup).
  2. Clear your browser cache.
  3. If the issue persists, generate a troubleshooter report and share it on Discord or GitHub Issues.
  1. Open the 3DS:ATLAS troubleshooter and export a report.
  2. Open a new issue on GitHub or post in the Discord support channel.
  3. Attach the troubleshooter report and describe the steps to reproduce the issue.

Spell lists are stored as journal pages in Spell Book’s compendium packs. Per-actor data (preparation state, wizard spellbook, notes, loadouts) is stored as module flags on each actor document.

Yes. Use the Loadout feature to save and restore named spell preparation configurations, stored per-actor and swappable instantly. For a world snapshot, the 3DS:ATLAS troubleshooter exports a Markdown report listing module settings and system data. There is no import function; the report is for sharing with the GM or support, not restoring configuration.

Module flags remain on actor documents but are inert. Custom spell lists in the module’s compendium packs are removed with the module. If you plan to reinstall later, per-actor data is still there. GMs who want a clean slate can run SPELLBOOK.api.flagPurge() before uninstalling.