vagabond-rpg-foundryvtt/CLAUDE.md
Cal Corum 628f3ab76c Optimize CLAUDE.md from 163 to 70 lines
Compress spell casting, resources, and NoteDiscovery sections.
Remove redundant rule question protocol. Keep game rules reference and compendium review process.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 08:31:12 -06:00

76 lines
2.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Vagabond RPG Foundry VTT System
Foundry VTT v13 system implementation for Vagabond RPG (Pulp Fantasy TTRPG).
## Commands
```bash
docker compose up -d # Start local Foundry
docker compose restart # Restart after code changes
npm run watch # Watch SCSS
docker compose logs -f foundry # View logs
```
## Key Architecture
### Data Models (Foundry v13 style)
- TypeDataModel classes in `module/data/` for Actor and Item schemas
- Character stats: Might, Dexterity, Awareness, Reason, Presence, Luck (range 2-7)
- Derived values in `prepareData()`: HP, Speed, Save difficulties, Skill difficulties
### Roll System
- Base: `d20 >= (20 - Stat)` untrained, `d20 >= (20 - Stat*2)` trained
- Favor: +d6 bonus, Hinder: -d6 penalty, Crit: natural 20 (modifiable per-skill via Active Effects)
- Exploding dice: `d6!` for certain abilities
### Spell Casting
- **Mana cost**: Base(0-1) + extra damage dice(+1/d6) + delivery cost(0-2) + duration(focus: 1/round on unwilling)
- **Delivery costs**: Touch/Remote/Imbue(0), Cube(1), Aura/Cone/Glyph/Line/Sphere(2)
- **Cast skills by class**: Wizard/Magus=Arcana, Druid/Luminary/Witch=Mysticism, Sorcerer=Influence, Revelator=Leadership
- Cast checks only required when targeting unwilling beings
### Class System
- Classes are Items with progression tables → Active Effects for current level
- Supports multiclassing via multiple class items
### Resources
- HP: Might × Level | Mana: class-dependent | Luck: equals Luck stat
- Fatigue: 0-5 (death at 5, each reduces item slots by 1)
## File Naming
- Entry: `vagabond.mjs` | Documents: `VagabondActor.mjs` | Sheets: `VagabondCharacterSheet.mjs`
- Data models: `CharacterData.mjs` | Templates: `character-sheet.hbs`
## Reference Data
Game rules in NoteDiscovery under `gaming/vagabond-rpg/`: core-mechanics, combat, character-creation, magic-system, spells-full-text, perks-full-list, classes-full-text, bestiary, testing-strategy.
Access: `cd ~/.claude/skills/notediscovery && python client.py search "keyword"`
Original PDF: `/mnt/NV2/Development/claude-home/gaming/Vagabond_RPG_-_Pulp_Fantasy_Core_Rulebook_Interactive_PDF.pdf`
D&D 5e reference: https://deepwiki.com/foundryvtt/dnd5e/1-dnd5e-system-overview
## Style
- Parchment color scheme, high contrast (WCAG AA), CSS custom properties, SCSS with BEM naming
- Match official Hero Record layout where possible
## Compendium Data Review (REQUIRED)
**All compendium data in `packs/_source/` MUST be reviewed by a human before committing.**
1. Always reference source material (NoteDiscovery or PDF) — never invent mechanics or flavor text
2. Show complete JSON content to user before committing
3. Wait for explicit approval before staging compendium files
4. Verify against `packs/_source/REVIEW_CHECKLIST.md`: feature names, progression tables, prerequisites, mechanical effects
## Roadmap
See `PROJECT_ROADMAP.json` for complete task breakdown.