Vagabond RPG FoundryVTT - Vagabond RPG system for Foundry VTT
Actor Data Models: - VagabondActorBase: Shared base class with biography field - CharacterData: Full PC schema with stats, skills, saves, resources, custom crit thresholds, dynamic resources, item slots, wealth tracking - NPCData: Monster stat block with HD, HP, TL, zone, morale, actions, abilities, immunities/weaknesses Item Data Models: - VagabondItemBase: Shared base with description field - AncestryData: Being type, size, racial traits - ClassData: Progression tables, features, mana/casting, trained skills - SpellData: Dynamic mana cost calculation, delivery/duration types - PerkData: Prerequisites system, stat/skill/spell requirements - WeaponData: Damage, grip, properties, attack types, crit thresholds - ArmorData: Armor value, type, dodge penalty - EquipmentData: Quantity, slots, consumables - FeatureData: Class features with Active Effect changes Active Effects Integration: - Helper module for creating and managing Active Effects - Effect key mapping for stats, saves, skills, crit thresholds - Utilities for applying/removing item effects Derived Value Calculations (CharacterData): - Max HP = Might × Level - Speed by Dexterity lookup - Item Slots = 8 + Might - Fatigue - Save difficulties from stat pairs - Skill difficulties (trained doubles stat contribution) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> |
||
|---|---|---|
| .husky | ||
| lang | ||
| module | ||
| styles/scss | ||
| .env.example | ||
| .eslintrc.json | ||
| .gitignore | ||
| .prettierignore | ||
| .prettierrc | ||
| CLAUDE.md | ||
| DEVELOPMENT.md | ||
| docker-compose.yml | ||
| LICENSE | ||
| package-lock.json | ||
| package.json | ||
| PROJECT_ROADMAP.json | ||
| README.md | ||
| system.json | ||
Vagabond RPG - Foundry VTT System
A complete Foundry VTT v13 system implementation for Vagabond RPG - Pulp Fantasy Roleplaying.
Features
- Full character sheet matching the official Hero Record design
- Dynamic spell casting system with delivery/duration/damage customization
- Automated skill checks with favor/hinder modifiers
- Variable crit thresholds per skill (modified by class features and perks)
- Complete compendiums: 18 classes, 55+ spells, 90+ perks, ancestries, equipment, bestiary
- NPC/Monster stat blocks with morale system
- Parchment-themed UI with accessibility (color-blind friendly)
Installation
From Foundry
- Open Foundry VTT Setup
- Navigate to Game Systems
- Click "Install System"
- Search for "Vagabond" or paste the manifest URL:
https://github.com/calcorum/vagabond-rpg-foundryvtt/releases/latest/download/system.json
Manual Installation
- Download the latest release from GitHub
- Extract to
Data/systems/vagabond/ - Restart Foundry VTT
Development Setup
Prerequisites
- Node.js 18+
- Docker & Docker Compose (for local Foundry instance)
Quick Start
# Clone the repository
git clone https://github.com/calcorum/vagabond-rpg-foundryvtt.git
cd vagabond-rpg-foundryvtt
# Install dependencies
npm install
# Start SCSS watcher
npm run watch
# Start local Foundry instance
docker compose up -d
# Access Foundry at http://localhost:30000
Project Structure
vagabond-rpg-foundryvtt/
├── module/ # JavaScript modules
│ ├── vagabond.mjs # System entry point
│ ├── documents/ # Actor/Item document classes
│ ├── sheets/ # Sheet classes
│ ├── helpers/ # Utility functions
│ └── dice/ # Roll handling
├── templates/ # Handlebars templates
│ ├── actor/ # Actor sheet templates
│ ├── item/ # Item sheet templates
│ ├── chat/ # Chat message templates
│ └── dialog/ # Roll dialog templates
├── styles/ # SCSS/CSS
│ └── scss/ # SCSS source files
├── lang/ # Localization files
├── packs/ # Compendium data
├── assets/ # Images and icons
├── system.json # System manifest
└── docker-compose.yml # Local dev environment
Building Styles
# One-time build
npm run build
# Watch for changes
npm run watch
Creating a Release
npm run release
Contributing
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
License
MIT License - see LICENSE for details.
Vagabond RPG is a product of its respective copyright holders. This system implementation is a fan project and is not affiliated with or endorsed by the original game creators.
Acknowledgments
- Vagabond RPG by [Publisher] for the amazing game system
- Foundry VTT community for documentation and examples
- All contributors to this project