Skip to content

feat: add Shadowdark Quickstart Set data - #1

Merged
ubermanu merged 2 commits into
mainfrom
claude/codex-shadowdark-data-f39Vc
Jun 7, 2026
Merged

feat: add Shadowdark Quickstart Set data#1
ubermanu merged 2 commits into
mainfrom
claude/codex-shadowdark-data-f39Vc

Conversation

@ubermanu

@ubermanu ubermanu commented Jun 6, 2026

Copy link
Copy Markdown
Member

$(cat <<'EOF'

Summary

Populates the codex with structured game data from the free Shadowdark RPG Quickstart Set (© 2023 The Arcane Library, LLC). All data files reference data/source/quickstart-set.json as their source.

  • 14 weapons — full weapon table (club, crossbow, greataxe, greatsword, handaxe, javelin, longbow, longsword, mace, shortbow, shortsword, spear, staff, warhammer) plus source attribution on existing bastard sword and dagger
  • 4 armor pieces — leather armor, chainmail, plate mail, shield (with AC formula, stealth/swim penalty flags)
  • 16 spells — all 12 wizard tier 1 spells + 4 priest tier 1 spells; light and protection from evil are shared between both classes
  • 4 classes — Fighter, Priest, Thief, Wizard (hp die, allowed weapons/armor, spellcasting flag)
  • 4 ancestries — Human, Elf, Dwarf, Halfling (special ability, languages)
  • 4 new schemasarmor.json, spell.json, class.json, ancestry.json
  • Bumped codex.json version to 0.1.0

Test plan

  • Validate all new JSON files against their referenced schemas
  • Confirm weapon attributes values are within the enum defined in schema/weapon.json
  • Confirm distance values (Close, Near, Far) match schema/distance.json
  • Confirm coin cost objects match schema/coins.json
  • Review spell descriptions against the Quickstart Set PDF for accuracy
    EOF
    )"

Generated by Claude Code

claude added 2 commits June 6, 2026 21:30
Adds full weapon, armor, spell, class, and ancestry data sourced from
the Shadowdark RPG Quickstart Set (free content, © 2023 The Arcane Library, LLC).

- 14 weapons (club, crossbow, greataxe, greatsword, handaxe, javelin,
  longbow, longsword, mace, shortbow, shortsword, spear, staff, warhammer)
- 4 armor pieces (leather armor, chainmail, plate mail, shield)
- 16 spells: 12 wizard tier 1 + 6 priest tier 1 (light and protection
  from evil shared across both classes)
- 4 classes: Fighter, Priest, Thief, Wizard
- 4 ancestries: Human, Elf, Dwarf, Halfling
- 4 new schemas: armor, spell, class, ancestry
- Bumped codex version to 0.1.0

https://claude.ai/code/session_01FzundV4gavWqjzNucHL8cy
- Add .github/workflows/validate.yml running npx -y ajv-cli per data
  category (weapons, armor, spells, classes, ancestries) on push and PR
- Add schema/dice.json locally so validation works offline (was an
  external URL reference in weapon.json and class.json)
- Add $id to coins.json, distance.json, item.json, dice.json so
  ajv-cli can resolve cross-schema $ref without key collisions
- Fix armor.json: replace required ["ac"] with oneOf so shields
  (which only have ac_bonus) pass validation
- Update weapon.json and class.json $ref to use local ./dice.json

https://claude.ai/code/session_01FzundV4gavWqjzNucHL8cy
@ubermanu
ubermanu merged commit 5915aeb into main Jun 7, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants