- All 123 official subclasses (2014 books and the 2024 Player's Handbook), each
with its book and features up to level 20; one file per class
- The builder has a subclass step after the class: pick one, let a die suggest
one, or decide later; its gifts arrive at the class's choice level
- 2024 updates (Wild Heart, Warrior of the Elements) offer a one-click switch
- The Road Ahead: a level 1-20 timeline on every sheet and in the builder
- 33 new species (2024 Aasimar and Goliath, Monsters of the Multiverse) with
chosen +2/+1 or +1/+1/+1 bonuses; species roll is now a d8 by family
- The Artificer: class, half-caster slots from level 1, features, Flash of Genius
- Class tables and counters run to level 20; a fifth Boon, Resolve
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- A DM can start a campaign from a ready-made world by typing its
six-character code: "+ New Campaign" on the Campaigns page, then "Or
start from a ready-made world". The whole world is built in one go
with them as its DM: locations, weapons, items, spells, monsters,
NPCs, encounters and notes. ALDENF is Aldenfell, HOLLOW is Hollowcrown.
- A world is one file in /backend/seeds. Drop another in and its code
works straight away, with no restart. "npm run seeds:check" lists
every world, or what is wrong with one: a misspelt field, a name used
twice, an encounter pointing at something the file does not have. A
file with a mistake in it is never offered. docs/SEEDS.md has the
format.
- A seed can now hold everything a campaign can: gear effects, an NPC's
wares and exchange rate, things for sale at an encounter, and rewards
in silver, copper and cash.
- The database seed creates the admin account and nothing else. The
Aldenfell and Hollowcrown seed commands are gone: worlds come from
codes.
- Hollowcrown follows the V3 book: 4 starting items and 3 things
equipped, the book's effects on every weapon and item, armor as items
(library, modern and magic), worn gear at the book's levels, damage
types on monsters, ten shop scenes with prices and stock, five money
changers, Meridian loot as cash and mixed hoards as gold, silver and
copper.
- Aldenfell: the Shield and Leather Armor change AC, Mireille and the
Founding Fair stalls sell things, and the book's missing scenes are in
(E5, E7, E15, E16, E18, E23-24, E26, the Drowned Shrine, Sevrisk's
Hollow, a wyvern pass). The locket is found with Investigation, as the
book has it.
- Packages are up to date: Prisma 7 (with the pg driver adapter and a
prisma.config.js that holds the database URL), Express 5, zod 4,
dotenv 18, jest 30, bcrypt 6 and TypeScript 7. "npm audit" finds
nothing. Install scripts are approved for Prisma and bcrypt. On a
server: "npm install", then "npm run deploy".
- The frontend's five lint warnings are fixed; useAuth and usePagination
have files of their own.
- All packages at version 1.12.0.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Hollowcrown: The Rift Between Worlds as its own seed (npm run
seed:hollowcrown), built from the campaign book: pools, 58 monsters,
57 NPCs, 28 locations, 72 encounters with rewards, and DM notes. Shared
seeding logic moved to prisma/seedCampaign.js.
- What players can see: only encounters their own character is in; only
the pool entries their character holds (plus starting options while
building); only locations their character has been to; no invite code;
no gold, inventory or money log of other players' characters. Socket
events carry ids only and campaign rooms are members-only.
- Encounters have a location; while one is in progress its characters are
there, and visits are remembered.
- Campaign setting to show players a health bar only for monsters and NPCs.
- Initiative is entered as the d20 roll (1-20) and the bonus is added;
players can enter their own character's roll.
- Number fields enforce their limits when typing, and the API enforces
the same limits.
- Temp HP shows on HP bars and absorbs damage before real HP.
- All packages at version 1.3.0.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Campaigns: DM can archive/restore; owner can delete. Archived campaigns
move off the main list and stop accepting invite codes.
- Encounters: DM can archive/restore and delete, and arrange the campaign's
own order; the list can also be sorted by name, status, type or date.
Archived encounters are hidden from players' lists.
- Account page with change password (POST /auth/password).
- Seed is now additive (safe on a live database; --reset for the old wipe)
and builds a fuller Aldenfell: earned weapons, item pool, spells, NPCs,
and 28 battle/quest scenes with descriptions, DM notes and rewards.
- Vite preview host config for the deployed site.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Seed now resets the database and seeds the Aldenfell campaign from the
campaign book: admin DM user, default weapons, locations, bestiary,
pre-built encounters, and DM/shared notes
- Default weapon/spell/monster library, character profile fields,
locations and dice mode (new migration)
- Party overview page, pagination, info tips, build preview calc
- Remove stale demo-login hint; notes preserve line breaks
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>