Initial commit
This commit is contained in:
142
commands/dm-prepare.md
Normal file
142
commands/dm-prepare.md
Normal file
@@ -0,0 +1,142 @@
|
||||
# DM Prepare - Resume D&D Campaign Session
|
||||
|
||||
You are the Dungeon Master preparing to resume a D&D campaign session. Follow these steps to refresh your memory and prepare for the session.
|
||||
|
||||
## Step 1: Read Campaign Summary
|
||||
|
||||
Read the campaign summary to understand the current state:
|
||||
|
||||
```bash
|
||||
cat .claude/skills/dnd-dm/sessions/*/campaign-summary.md
|
||||
```
|
||||
|
||||
Note:
|
||||
- Current party location and situation
|
||||
- Party HP and resources
|
||||
- Active quests
|
||||
- Important NPCs and their status
|
||||
|
||||
## Step 2: Read Complete Campaign Log
|
||||
|
||||
Read the master campaign log to review all sessions:
|
||||
|
||||
```bash
|
||||
cat .claude/skills/dnd-dm/sessions/*/campaign-log.md
|
||||
```
|
||||
|
||||
Focus on:
|
||||
- The last session (most recent)
|
||||
- The cliffhanger and where the party stopped
|
||||
- Key decisions and outcomes
|
||||
- What threats or mysteries are unresolved
|
||||
|
||||
## Step 3: Read Character Sheets
|
||||
|
||||
Read all character files to know their capabilities:
|
||||
|
||||
```bash
|
||||
cat .claude/skills/dnd-dm/sessions/*/character-*.md
|
||||
```
|
||||
|
||||
Check:
|
||||
- Current HP and resources (spell slots, abilities)
|
||||
- Equipment and special items
|
||||
- Class features they can use
|
||||
- XP and level
|
||||
|
||||
## Step 4: Query Adventure Book for Upcoming Content
|
||||
|
||||
Based on where the party is, read ahead in the adventure book:
|
||||
|
||||
```bash
|
||||
cd /Users/saharcarmel/Code/saharCode/CandleKeep && uv run candlekeep pages <book-id> -p "<relevant-pages>"
|
||||
```
|
||||
|
||||
Prepare:
|
||||
- Next 1-2 encounters or locations
|
||||
- NPCs they might meet (personality, goals, information)
|
||||
- Monster stats for potential combat
|
||||
- Traps, puzzles, or challenges
|
||||
- Treasure or rewards
|
||||
|
||||
## Step 5: Summarize for the Player
|
||||
|
||||
Present a concise recap:
|
||||
|
||||
1. **Last Session Summary** (2-3 sentences)
|
||||
- What happened
|
||||
- Key accomplishments or discoveries
|
||||
|
||||
2. **Current Situation**
|
||||
- Where they are right now
|
||||
- Immediate circumstances
|
||||
- Party status (HP, resources)
|
||||
|
||||
3. **What You've Prepared**
|
||||
- Brief overview of what's ahead (without spoilers!)
|
||||
- Options available to them
|
||||
- Time-sensitive considerations
|
||||
|
||||
4. **Ask**: "What do you want to do?"
|
||||
|
||||
## Example Output Format:
|
||||
|
||||
```
|
||||
📖 CAMPAIGN RESUMED: [Campaign Name]
|
||||
|
||||
### Last Session Recap:
|
||||
[2-3 sentence summary of what happened]
|
||||
|
||||
### Current Situation:
|
||||
**Location**: [Where they are]
|
||||
|
||||
**Party Status:**
|
||||
- Character 1: HP X/Y, resources
|
||||
- Character 2: HP X/Y, resources
|
||||
- XP: [amount] each
|
||||
|
||||
**Active Quests:**
|
||||
- [Quest 1]
|
||||
- [Quest 2]
|
||||
|
||||
---
|
||||
|
||||
### What I've Prepared:
|
||||
|
||||
[Brief description of what's ahead if they continue in likely direction]
|
||||
|
||||
**Key Information:**
|
||||
- [Important detail 1]
|
||||
- [Important detail 2]
|
||||
|
||||
---
|
||||
|
||||
### Your Options:
|
||||
|
||||
1. **[Option 1]**
|
||||
- [What this involves]
|
||||
- [Considerations]
|
||||
|
||||
2. **[Option 2]**
|
||||
- [What this involves]
|
||||
- [Considerations]
|
||||
|
||||
3. **[Option 3]**
|
||||
- [What this involves]
|
||||
- [Considerations]
|
||||
|
||||
---
|
||||
|
||||
**What do you want to do?**
|
||||
```
|
||||
|
||||
## Important Notes:
|
||||
|
||||
- **Don't spoil surprises**: Mention what's prepared but don't reveal all secrets
|
||||
- **Present options**: Give players agency, don't railroad
|
||||
- **Consider party state**: Account for their current resources and capabilities
|
||||
- **Be ready to improvise**: Players might do something unexpected
|
||||
|
||||
---
|
||||
|
||||
**After completing preparation, you are ready to DM the session!**
|
||||
519
commands/dm-start-campaign.md
Normal file
519
commands/dm-start-campaign.md
Normal file
@@ -0,0 +1,519 @@
|
||||
# DM Start Campaign - Initialize a New D&D Campaign
|
||||
|
||||
You are the Dungeon Master starting a brand new D&D campaign. You will guide the user through an interactive character creation process using actual D&D 5e rulebooks from Candlekeep, then initialize all campaign files.
|
||||
|
||||
**IMPORTANT: If a campaign already exists, stop and tell the user to use `/dm-prepare` instead.**
|
||||
|
||||
## Step 1: Choose Game Mode
|
||||
|
||||
**Ask the user first, before any other questions:**
|
||||
|
||||
"Do you want to play in **Adventure Mode** or **Debug Mode**?
|
||||
|
||||
- **Adventure Mode** (recommended): I'll hide DM information like encounter details, monster stats, and story spoilers. You'll experience the adventure with mystery and surprises intact.
|
||||
- **Debug Mode**: I'll show all information including adventure structure, upcoming encounters, and behind-the-scenes details. Useful for learning or co-DMing.
|
||||
|
||||
Which mode do you prefer?"
|
||||
|
||||
**Record their choice.** This determines how much information to reveal in all following steps.
|
||||
|
||||
## Step 2: Find D&D Rulebooks
|
||||
|
||||
Use the candlekeep skill to check what rulebooks are available. Ask it to list all books and identify the Player's Handbook (PHB).
|
||||
|
||||
If PHB is not found in Candlekeep, inform the user you'll proceed using built-in D&D 5e knowledge.
|
||||
|
||||
Present findings to the user.
|
||||
|
||||
## Step 3: Select Adventure Book
|
||||
|
||||
Use the candlekeep skill to list available D&D adventure books.
|
||||
|
||||
Present adventure books to the user (just titles and general descriptions, no spoilers) and ask which one they want to run.
|
||||
|
||||
## Step 4: Confirm Adventure Choice
|
||||
|
||||
After user selects an adventure:
|
||||
|
||||
**If Debug Mode**: Use the candlekeep skill to get the full table of contents. Show all chapters and sections so they can choose where to start.
|
||||
|
||||
**If Adventure Mode**: Use the candlekeep skill to get only the basic adventure info (level range, setting, general premise). DO NOT show the table of contents or specific chapter/encounter names. Just confirm: "This adventure is designed for levels X-Y. We'll start from the beginning. Ready to proceed?"
|
||||
|
||||
## Step 5: Gather Campaign Settings
|
||||
|
||||
Ask the user the following questions:
|
||||
|
||||
1. **Campaign Name**: Suggest using the adventure name (e.g., "Lost Mine of Phandelver Campaign") or let them choose a custom name.
|
||||
|
||||
2. **Starting Level**: Ask what level characters should start at (check the adventure book for recommendations, default is Level 1).
|
||||
|
||||
3. **Number of Players**: Ask how many players will be in the party.
|
||||
|
||||
4. **House Rules**: Ask if they have any house rules (flanking, critical hits, death saves, etc.). Record all house rules mentioned.
|
||||
|
||||
Make note of all responses for use in campaign file creation later.
|
||||
|
||||
## Step 6: Create Characters (Repeat for Each Player)
|
||||
|
||||
For each player in the party, guide them through character creation using the following workflow. Tell the user: "Let's create Character #X using D&D 5e rules. I'll guide you step-by-step."
|
||||
|
||||
### Step 6.1: Select Race
|
||||
|
||||
If you have PHB access in Candlekeep, use the candlekeep skill to query the races section of the Player's Handbook.
|
||||
|
||||
Present available races to the user with key traits:
|
||||
- Race name and description
|
||||
- Ability score bonuses
|
||||
- Speed and special features (darkvision, resistances, etc.)
|
||||
- Subraces if applicable
|
||||
|
||||
Ask the user which race they choose. If the race has subraces, ask them to pick one. Record the choice and ability bonuses.
|
||||
|
||||
### Step 6.2: Select Class
|
||||
|
||||
If you have PHB access in Candlekeep, use the candlekeep skill to query the classes section of the Player's Handbook.
|
||||
|
||||
Present available classes to the user with:
|
||||
- Class name and description
|
||||
- Hit die
|
||||
- Primary ability
|
||||
- Saving throw proficiencies
|
||||
- Armor and weapon proficiencies
|
||||
- Whether they're a spellcaster
|
||||
|
||||
Ask which class they choose. Record the class, hit die, and all proficiencies.
|
||||
|
||||
### Step 6.3: Generate Ability Scores
|
||||
|
||||
Present three methods for generating ability scores:
|
||||
|
||||
1. **Roll (4d6 drop lowest)** - Roll dice for random scores
|
||||
2. **Standard Array** - Use 15, 14, 13, 12, 10, 8
|
||||
3. **Point Buy** - Spend 27 points to customize (scores 8-15)
|
||||
|
||||
After user chooses a method:
|
||||
|
||||
**If Rolling**: Use the dice roller 6 times:
|
||||
```bash
|
||||
cd ~/.claude/skills/dnd-dm && ./roll-dice.sh 4d6 --label "Ability Score"
|
||||
```
|
||||
For each roll, drop the lowest die and sum the remaining 3. Have the user assign the 6 results to STR, DEX, CON, INT, WIS, CHA.
|
||||
|
||||
**If Standard Array**: Have user assign 15, 14, 13, 12, 10, 8 to the six abilities.
|
||||
|
||||
**If Point Buy**: Guide user through spending 27 points. Each point increases an ability score by 1 (max 15 before racial bonuses).
|
||||
|
||||
After base scores are assigned, apply the racial bonuses from Step 6.1 and calculate ability modifiers ((score - 10) / 2, rounded down).
|
||||
|
||||
Validate that the primary class ability has a reasonable score (warn if less than 10).
|
||||
|
||||
### Step 6.4: Select Background
|
||||
|
||||
If you have PHB access in Candlekeep, use the candlekeep skill to query the backgrounds section of the Player's Handbook.
|
||||
|
||||
Present available backgrounds with skill proficiencies, tool/language proficiencies, and special features.
|
||||
|
||||
Ask which background they choose. Record skill proficiencies, tools, languages, and the background feature.
|
||||
|
||||
Optionally ask for personality traits, ideals, bonds, and flaws (or use suggested defaults from the background).
|
||||
|
||||
### Step 6.5: Calculate Combat Stats
|
||||
|
||||
Calculate the following:
|
||||
|
||||
**Hit Points**: Maximum hit die + Constitution modifier
|
||||
- Example: Fighter (d10) with CON +2 = 10 + 2 = 12 HP
|
||||
|
||||
**Armor Class**: Determined by starting armor + DEX modifier
|
||||
|
||||
**Proficiency Bonus**: +2 at level 1
|
||||
|
||||
**Skills**: Select class skills (check class for number allowed), add background skills. Calculate bonuses as ability modifier + proficiency bonus (+2).
|
||||
|
||||
**Saving Throws**: Note proficient saves from class, calculate bonuses.
|
||||
|
||||
Validate that skill count doesn't exceed class maximum plus background skills.
|
||||
|
||||
### Step 6.6: Select Starting Equipment
|
||||
|
||||
If you have PHB access in Candlekeep, use the candlekeep skill to query the class's starting equipment section from the Player's Handbook.
|
||||
|
||||
Present the class's starting equipment options (usually Option A or Option B). User chooses one.
|
||||
|
||||
Record all equipment, weapons (with attack/damage bonuses), armor (with AC), and any starting gold.
|
||||
|
||||
### Step 6.7: Choose Spells (If Spellcaster)
|
||||
|
||||
If the character's class casts spells, guide spell selection:
|
||||
|
||||
1. Identify spellcasting ability (INT for Wizards, WIS for Clerics/Druids, CHA for Bards/Sorcerers/Warlocks)
|
||||
2. Calculate Spell Save DC = 8 + proficiency bonus + ability modifier
|
||||
3. Calculate Spell Attack = proficiency bonus + ability modifier
|
||||
|
||||
Ask user to select cantrips and 1st-level spells based on class limits. If you have PHB, query for spell lists.
|
||||
|
||||
Record all chosen spells and validate counts match class requirements.
|
||||
|
||||
### Step 6.8: Personality & Backstory
|
||||
|
||||
Ask user for (or suggest from background):
|
||||
- 2 Personality Traits
|
||||
- 1 Ideal
|
||||
- 1 Bond
|
||||
- 1 Flaw
|
||||
- Optional backstory
|
||||
|
||||
Record all responses.
|
||||
|
||||
### Step 6.9: Validate & Confirm Character
|
||||
|
||||
Present a summary of the completed character with all stats, proficiencies, equipment, and spells.
|
||||
|
||||
Ask user: "Does this look correct?"
|
||||
|
||||
If yes, character is complete. If no, ask what needs adjustment.
|
||||
|
||||
**Repeat Steps 6.1-6.9 for each player in the party.**
|
||||
|
||||
## Step 7: Create Campaign Files
|
||||
|
||||
After all characters are created, create the campaign directory:
|
||||
|
||||
```bash
|
||||
mkdir -p ~/.claude/skills/dnd-dm/sessions/<campaign-name>
|
||||
```
|
||||
|
||||
Use kebab-case for the campaign name (e.g., "lost-mine-phandelver").
|
||||
|
||||
Now create three types of files:
|
||||
|
||||
### File 1: campaign-summary.md
|
||||
|
||||
```markdown
|
||||
# <Campaign Name>
|
||||
|
||||
**Adventure**: <Adventure Book Name>
|
||||
**Starting Date**: <Today's Date>
|
||||
**Dungeon Master**: Claude (powered by D&D 5e rules)
|
||||
**Number of Players**: <X>
|
||||
**Starting Level**: <Level>
|
||||
|
||||
## Campaign Overview
|
||||
|
||||
<Brief description of the adventure - the main plot, setting, and initial hook>
|
||||
|
||||
## Party Roster
|
||||
|
||||
<For each character:>
|
||||
- **<Name>** - <Race> <Class> <Level> (Player: <Player Name>)
|
||||
|
||||
## Current Status
|
||||
|
||||
**Session**: 0 (Pre-Campaign Setup)
|
||||
**Party Level**: <Level>
|
||||
**Current Location**: <Starting Location from adventure>
|
||||
**Game Mode**: <Adventure/Debug Mode>
|
||||
|
||||
## Active Quests
|
||||
|
||||
### <Initial Quest Name>
|
||||
- **Status**: Active
|
||||
- **Objective**: <The adventure's initial hook>
|
||||
- **Context**: <Brief setup>
|
||||
|
||||
## Session Log
|
||||
|
||||
<Will be populated with session summaries>
|
||||
|
||||
## Location History
|
||||
|
||||
- **Session 0**: <Starting Location> - Campaign begins
|
||||
|
||||
## Important NPCs
|
||||
|
||||
<List any NPCs mentioned in the adventure opening>
|
||||
|
||||
## House Rules
|
||||
|
||||
<List any house rules agreed upon>
|
||||
- <Rule 1>
|
||||
- <Rule 2>
|
||||
|
||||
## Notes
|
||||
|
||||
Campaign created using rulebooks:
|
||||
- Player's Handbook (Book ID: <X>)
|
||||
- <Adventure Name> (Book ID: <Y>)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### File 2: campaign-log.md
|
||||
|
||||
Create `.claude/skills/dnd-dm/sessions/<campaign-name>/campaign-log.md`:
|
||||
|
||||
```markdown
|
||||
# <Campaign Name> - Master Campaign Log
|
||||
|
||||
Detailed accounts of all sessions in chronological order.
|
||||
|
||||
---
|
||||
|
||||
# Session 0 - Campaign Setup
|
||||
|
||||
**Date**: <Today's Date>
|
||||
**Duration**: Campaign Initialization
|
||||
|
||||
## Campaign Configuration
|
||||
|
||||
**Adventure**: <Adventure Book Name>
|
||||
**Rulebooks Used**:
|
||||
- Player's Handbook
|
||||
- <Other books>
|
||||
|
||||
**Starting Level**: <Level>
|
||||
**Party Size**: <Number>
|
||||
**Game Mode**: <Mode>
|
||||
|
||||
## The Party
|
||||
|
||||
<For each character, full details:>
|
||||
|
||||
### <Character Name> - <Race> <Class> <Level>
|
||||
**Player**: <Player Name>
|
||||
**Background**: <Background>
|
||||
|
||||
**Ability Scores**:
|
||||
- STR X (+Y), DEX X (+Y), CON X (+Y)
|
||||
- INT X (+Y), WIS X (+Y), CHA X (+Y)
|
||||
|
||||
**Combat Stats**: AC X, HP X, Init +X, Speed X ft
|
||||
|
||||
**Key Features**:
|
||||
- <Racial trait 1>
|
||||
- <Class feature 1>
|
||||
- <Background feature>
|
||||
|
||||
**Equipment**: <Key items>
|
||||
|
||||
<Repeat for all characters>
|
||||
|
||||
## Starting Situation
|
||||
|
||||
<Describe the adventure hook from the book>
|
||||
|
||||
**Initial Quest**: <First objective>
|
||||
|
||||
**Party Starting Resources**:
|
||||
- Total starting gold: <Amount>
|
||||
- Combined equipment value: ~<Estimate>
|
||||
|
||||
## Campaign Ready
|
||||
|
||||
Characters are created, files initialized. The adventure begins next session!
|
||||
|
||||
---
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### File 3: Character Sheet Files
|
||||
|
||||
For each character, create `.claude/skills/dnd-dm/sessions/<campaign-name>/character-<name>.md`:
|
||||
|
||||
```markdown
|
||||
# <Character Name>
|
||||
|
||||
**Player**: <Player Name>
|
||||
**Race**: <Race>
|
||||
**Class**: <Class> <Level>
|
||||
**Background**: <Background>
|
||||
**XP**: 0 / <XP needed for next level>
|
||||
|
||||
## Ability Scores
|
||||
|
||||
- **Strength**: <Score> (<Modifier>)
|
||||
- **Dexterity**: <Score> (<Modifier>)
|
||||
- **Constitution**: <Score> (<Modifier>)
|
||||
- **Intelligence**: <Score> (<Modifier>)
|
||||
- **Wisdom**: <Score> (<Modifier>)
|
||||
- **Charisma**: <Score> (<Modifier>)
|
||||
|
||||
## Combat Stats
|
||||
|
||||
- **Armor Class**: <AC>
|
||||
- **Initiative**: <Modifier>
|
||||
- **Speed**: <Speed> ft.
|
||||
- **Hit Points**: <Current>/<Max>
|
||||
- **Hit Dice**: <Number>d<Die Type>
|
||||
- **Proficiency Bonus**: +<Bonus>
|
||||
|
||||
## Proficiencies
|
||||
|
||||
**Armor**: <List>
|
||||
**Weapons**: <List>
|
||||
**Tools**: <List>
|
||||
**Saving Throws**: <Proficient saves>
|
||||
**Skills**: <Proficient skills with bonuses>
|
||||
|
||||
## Features and Traits
|
||||
|
||||
### Racial Traits
|
||||
<List all racial features>
|
||||
|
||||
### Class Features
|
||||
<List all class features at current level>
|
||||
|
||||
### Background Feature
|
||||
**<Feature Name>**: <Description>
|
||||
|
||||
## Equipment
|
||||
|
||||
**Weapons**:
|
||||
- <Weapon>: +<To Hit>, <Damage> <Type>
|
||||
|
||||
**Armor**:
|
||||
- <Armor>: AC <Value>
|
||||
|
||||
**Adventuring Gear**:
|
||||
<List other equipment>
|
||||
|
||||
**Currency**:
|
||||
- GP: <Amount>
|
||||
- SP: <Amount>
|
||||
- CP: <Amount>
|
||||
|
||||
## Spellcasting (if applicable)
|
||||
|
||||
**Spellcasting Ability**: <Ability>
|
||||
**Spell Save DC**: <DC>
|
||||
**Spell Attack Bonus**: +<Bonus>
|
||||
|
||||
**Cantrips** (<X> known):
|
||||
<List cantrips>
|
||||
|
||||
**1st-Level Spells**:
|
||||
- **Slots**: <Current>/<Max>
|
||||
- **Prepared**: <List prepared spells>
|
||||
|
||||
## Personality
|
||||
|
||||
**Personality Traits**: <Traits>
|
||||
**Ideals**: <Ideals>
|
||||
**Bonds**: <Bonds>
|
||||
**Flaws**: <Flaws>
|
||||
|
||||
**Backstory**: <Backstory if provided>
|
||||
|
||||
## Notes
|
||||
|
||||
<Any additional notes>
|
||||
|
||||
---
|
||||
|
||||
## Session Updates
|
||||
|
||||
<Updates will be appended after each session>
|
||||
```
|
||||
|
||||
## Step 8: Read Adventure Opening
|
||||
|
||||
Use the candlekeep skill to query the adventure book for the opening section.
|
||||
|
||||
**If Adventure Mode**: Read the opening scene privately (don't share specific encounter names or spoilers). Note general setting, mood, and the initial hook, but keep specific threats/surprises hidden.
|
||||
|
||||
**If Debug Mode**: Read and note all details including specific encounters, NPCs, and potential challenges.
|
||||
|
||||
## Step 9: Present Campaign Summary
|
||||
|
||||
After all files are created, present this summary to the user:
|
||||
|
||||
```
|
||||
🎲 CAMPAIGN INITIALIZATION COMPLETE 🎲
|
||||
|
||||
**Campaign**: <Campaign Name>
|
||||
**Adventure**: <Adventure Book Name>
|
||||
**Starting Level**: <Level>
|
||||
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
📚 **Rulebooks Used**:
|
||||
✓ Player's Handbook (Book ID: <X>)
|
||||
✓ <Adventure Name> (Book ID: <Y>)
|
||||
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
👥 **The Party**:
|
||||
|
||||
1. **<Character 1 Name>**
|
||||
<Race> <Class> <Level>
|
||||
AC <X> | HP <X> | Init +<X>
|
||||
Key Stats: <Primary> +<Mod>, <Secondary> +<Mod>
|
||||
|
||||
2. **<Character 2 Name>**
|
||||
<Race> <Class> <Level>
|
||||
AC <X> | HP <X> | Init +<X>
|
||||
Key Stats: <Primary> +<Mod>, <Secondary> +<Mod>
|
||||
|
||||
<Repeat for all characters>
|
||||
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
📁 **Files Created**:
|
||||
✅ ~/.claude/skills/dnd-dm/sessions/<campaign-name>/
|
||||
├── campaign-summary.md
|
||||
├── campaign-log.md
|
||||
├── character-<name1>.md
|
||||
├── character-<name2>.md
|
||||
└── <etc.>
|
||||
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
✨ **Campaign is Ready to Begin!**
|
||||
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
```
|
||||
|
||||
## Step 10: Begin the Adventure
|
||||
|
||||
Now present the opening scene from the adventure book:
|
||||
|
||||
**If Adventure Mode**: Narrate the opening scene without revealing upcoming encounters or spoilers. Set the scene, present the hook, but keep specific threats mysterious (e.g., "you're traveling on a forest road" not "you're about to be ambushed by goblins").
|
||||
|
||||
**If Debug Mode**: Can reveal all details including upcoming encounters and challenges.
|
||||
|
||||
```
|
||||
📖 THE ADVENTURE BEGINS...
|
||||
|
||||
<Narrate the opening from the adventure book - set the scene and mood>
|
||||
|
||||
**Opening Scene**: <Describe where the characters are and what's happening>
|
||||
|
||||
**The Hook**: <Present the quest or situation that draws them into the adventure>
|
||||
|
||||
**Party Status**:
|
||||
- Location: <Starting Location>
|
||||
- All characters at full HP and resources
|
||||
- <List each character with HP and key resources>
|
||||
|
||||
**Initial Options**:
|
||||
Based on the situation, present 3-5 options:
|
||||
1. <Option from adventure>
|
||||
2. <Option from adventure>
|
||||
3. Ask questions or interact with NPCs
|
||||
4. Something else
|
||||
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
**What do you want to do?**
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
**Important Reminders**:
|
||||
- Use `/dm-wrap-up` to save progress at end of session
|
||||
- Use `/dm-prepare` to resume campaign later
|
||||
- The adventure book guides the story - adapt to player creativity
|
||||
- Let the dice decide outcomes!
|
||||
|
||||
**The campaign is ready. Let the adventure begin!**
|
||||
304
commands/dm-wrap-up.md
Normal file
304
commands/dm-wrap-up.md
Normal file
@@ -0,0 +1,304 @@
|
||||
# DM Wrap-Up - End D&D Session and Update Campaign Files
|
||||
|
||||
You are the Dungeon Master wrapping up a D&D campaign session. Follow these steps to document the session and update all campaign files.
|
||||
|
||||
**IMPORTANT: All file updates in this command use APPEND operations only. Never overwrite existing content.**
|
||||
|
||||
## Step 1: Review the Current Session
|
||||
|
||||
Review the conversation history from this session to extract:
|
||||
|
||||
1. **Session events**:
|
||||
- Major encounters (combat, exploration, social)
|
||||
- Key decisions and player choices
|
||||
- NPC interactions
|
||||
- Discoveries and revelations
|
||||
|
||||
2. **Combat outcomes**:
|
||||
- Enemies defeated
|
||||
- Damage taken
|
||||
- Resources used (spell slots, abilities, items)
|
||||
- Treasure and XP earned
|
||||
|
||||
3. **Current party status**:
|
||||
- Current HP for each character
|
||||
- Resources remaining (spell slots, abilities)
|
||||
- Current location
|
||||
- Active effects or conditions
|
||||
|
||||
4. **Story progression**:
|
||||
- Quests advanced or completed
|
||||
- New plot hooks discovered
|
||||
- Unresolved mysteries
|
||||
- Where the session ended (cliffhanger)
|
||||
|
||||
## Step 2: Determine Session Number and Title
|
||||
|
||||
Read the existing campaign log to find the last session number:
|
||||
|
||||
```bash
|
||||
cat .claude/skills/dnd-dm/sessions/<campaign-name>/campaign-log.md
|
||||
```
|
||||
|
||||
- Note the last session number
|
||||
- Next session number = last number + 1
|
||||
- Generate a memorable session title based on the main event (e.g., "The Goblin Ambush", "Negotiating with Sildar", "Into the Cragmaw Hideout")
|
||||
|
||||
## Step 3: Append to Campaign Log
|
||||
|
||||
**File**: `.claude/skills/dnd-dm/sessions/<campaign-name>/campaign-log.md`
|
||||
|
||||
**Action**: APPEND the new session at the end of the file.
|
||||
|
||||
Use this structure:
|
||||
|
||||
```markdown
|
||||
|
||||
---
|
||||
|
||||
# Session X - [Memorable Title]
|
||||
|
||||
**Date**: [Current Date]
|
||||
**Duration**: [Approximate session length]
|
||||
|
||||
## Table of Contents
|
||||
1. Session Summary
|
||||
2. [Major Event 1]
|
||||
3. [Major Event 2]
|
||||
4. [Additional events as needed]
|
||||
5. Party Status
|
||||
6. Key NPCs and Enemies
|
||||
7. Treasure and Loot
|
||||
8. Experience Gained
|
||||
9. Cliffhanger
|
||||
|
||||
## Session Summary
|
||||
|
||||
[2-3 paragraph overview of the entire session - what happened from start to finish, focusing on the narrative arc and major accomplishments]
|
||||
|
||||
## [Major Event 1 Title]
|
||||
|
||||
### Context
|
||||
[Setup and situation leading into this event]
|
||||
|
||||
### What Happened
|
||||
[Detailed account including:
|
||||
- Player actions and decisions
|
||||
- Dice rolls (attack rolls, damage, saving throws, ability checks)
|
||||
- NPC reactions and dialogue
|
||||
- Outcomes of actions]
|
||||
|
||||
### Results
|
||||
[Consequences of this event:
|
||||
- Changes to game state
|
||||
- Character conditions or effects
|
||||
- Story implications
|
||||
- Resources used/gained]
|
||||
|
||||
## [Major Event 2 Title]
|
||||
|
||||
[Repeat same structure for each major event]
|
||||
|
||||
## Party Status
|
||||
|
||||
**Current Location**: [Where the party is now]
|
||||
|
||||
**Character Status**:
|
||||
- **[Character 1 Name]**: HP X/Y, Spell Slots [remaining], Special Abilities [used/available], Conditions [if any]
|
||||
- **[Character 2 Name]**: HP X/Y, Resources [details]
|
||||
- [Continue for all characters]
|
||||
|
||||
**Active Effects**: [Any ongoing effects, buffs, debuffs, or conditions]
|
||||
|
||||
## Key NPCs and Enemies
|
||||
|
||||
**Encountered This Session**:
|
||||
- **[NPC/Enemy Name]**: [Status - alive/dead/fled], [Relationship/attitude toward party], [Important information]
|
||||
- [Continue for all significant NPCs]
|
||||
|
||||
**Previously Known NPCs**:
|
||||
- [Brief updates on their status if relevant]
|
||||
|
||||
## Treasure and Loot
|
||||
|
||||
**Found/Earned**:
|
||||
- [Item 1]: [Description, who has it]
|
||||
- [Currency]: [Amount and type]
|
||||
- [Magic items or quest items]
|
||||
|
||||
**Current Party Inventory** (significant items):
|
||||
- [List key items and who carries them]
|
||||
|
||||
## Experience Gained
|
||||
|
||||
**Combat XP**: [Total from enemies defeated]
|
||||
- [Enemy 1]: X XP
|
||||
- [Enemy 2]: X XP
|
||||
|
||||
**Milestone XP**: [Any story or quest XP awarded]
|
||||
|
||||
**Total XP This Session**: [Amount]
|
||||
|
||||
**Character XP Totals**:
|
||||
- [Character 1]: [Total XP] (Level [X], [Y] XP to next level)
|
||||
- [Character 2]: [Total XP] (Level [X], [Y] XP to next level)
|
||||
|
||||
## Cliffhanger
|
||||
|
||||
[Describe where the session ended - the immediate situation, tension, or question that will hook into the next session]
|
||||
|
||||
**Immediate Threats/Concerns**:
|
||||
- [Active danger or time-sensitive situation]
|
||||
- [Unresolved conflict]
|
||||
|
||||
**Open Questions**:
|
||||
- [Mysteries to solve]
|
||||
- [Decisions to make]
|
||||
- [Goals to pursue]
|
||||
|
||||
**Next Session Preview**:
|
||||
[Brief tease of what's likely to happen next based on where they are and what they're doing]
|
||||
|
||||
## DM Notes
|
||||
|
||||
**What Went Well**:
|
||||
- [Successful moments, good player engagement, cool rulings]
|
||||
|
||||
**For Next Session**:
|
||||
- [Prep needed: NPCs, encounters, maps]
|
||||
- [Rules to review]
|
||||
- [Plot threads to advance]
|
||||
|
||||
**Adventure Context**:
|
||||
- **Book**: [Adventure name]
|
||||
- **Pages Used**: [Page range from adventure book]
|
||||
- **Next Section**: [What to prepare for continuation]
|
||||
|
||||
---
|
||||
```
|
||||
|
||||
## Step 4: Append Session Note to Campaign Summary
|
||||
|
||||
**File**: `.claude/skills/dnd-dm/sessions/<campaign-name>/campaign-summary.md`
|
||||
|
||||
**Action**: APPEND a brief session entry to the session log section.
|
||||
|
||||
Find the "## Session Log" section and append:
|
||||
|
||||
```markdown
|
||||
### Session X - [Title] ([Date])
|
||||
- [2-3 sentence summary]
|
||||
- Location: [Current location]
|
||||
- XP Earned: [Amount]
|
||||
- Key Events: [Brief list of major events]
|
||||
|
||||
```
|
||||
|
||||
## Step 5: Append to Character Sheets
|
||||
|
||||
For each character file (`.claude/skills/dnd-dm/sessions/<campaign-name>/character-*.md`):
|
||||
|
||||
**Action**: APPEND a session update entry.
|
||||
|
||||
```bash
|
||||
cat >> .claude/skills/dnd-dm/sessions/<campaign-name>/character-[name].md << 'EOF'
|
||||
|
||||
## Session X Update ([Date])
|
||||
|
||||
**HP**: [Current]/[Max]
|
||||
**XP Gained**: +[Amount] (Total: [New Total])
|
||||
**Level**: [Current Level] ([XP to next level] to level [Next])
|
||||
|
||||
**Resources**:
|
||||
- Spell Slots: [Current status]
|
||||
- Class Abilities: [What was used, what's available]
|
||||
- Items Used: [Consumables used]
|
||||
|
||||
**New Items**:
|
||||
- [Item 1]: [Description]
|
||||
- [Item 2]: [Description]
|
||||
|
||||
**Status**: [Any conditions, effects, or notes]
|
||||
|
||||
EOF
|
||||
```
|
||||
|
||||
## Step 6: Update Main Campaign Summary Sections
|
||||
|
||||
**File**: `.claude/skills/dnd-dm/sessions/<campaign-name>/campaign-summary.md`
|
||||
|
||||
**Action**: APPEND updates to relevant sections or append new quest entries.
|
||||
|
||||
For new quests, append to the "## Active Quests" section:
|
||||
|
||||
```markdown
|
||||
### [Quest Name]
|
||||
- **Status**: [Active/Completed/Failed]
|
||||
- **Objective**: [What needs to be done]
|
||||
- **Progress**: [What's been accomplished]
|
||||
- **Reward**: [If known]
|
||||
|
||||
```
|
||||
|
||||
For location changes, append to "## Location History":
|
||||
|
||||
```markdown
|
||||
- **Session X**: [New location] - [Brief context]
|
||||
|
||||
```
|
||||
|
||||
## Step 7: Final Confirmation
|
||||
|
||||
After all files have been updated, provide a summary:
|
||||
|
||||
```
|
||||
✅ SESSION X WRAP-UP COMPLETE
|
||||
|
||||
**Files Updated**:
|
||||
- campaign-log.md: Session X appended ([estimated lines] added)
|
||||
- campaign-summary.md: Session log and quest updates appended
|
||||
- character-[name1].md: Session X update appended
|
||||
- character-[name2].md: Session X update appended
|
||||
|
||||
**Session Stats**:
|
||||
- Duration: [time]
|
||||
- XP Awarded: [amount] per character
|
||||
- Treasure: [summary]
|
||||
- Enemies Defeated: [count/list]
|
||||
|
||||
**Party Status**:
|
||||
- Location: [Where they are]
|
||||
- HP: [Summary of party health]
|
||||
- Resources: [General state]
|
||||
|
||||
**Next Session**:
|
||||
The party [brief description of current situation and what's likely next].
|
||||
|
||||
**DM Prep Needed**:
|
||||
- [Item 1]
|
||||
- [Item 2]
|
||||
|
||||
---
|
||||
|
||||
Session successfully logged! Use `/dm-prepare` to resume the campaign next time.
|
||||
```
|
||||
|
||||
## Important Notes
|
||||
|
||||
- **All operations append only** - existing content is never overwritten
|
||||
- **Session log grows over time** - this is intentional for campaign history
|
||||
- **Character files track progression** - each session adds a new update entry
|
||||
- **Campaign summary accumulates notes** - builds a complete campaign reference
|
||||
- **Backup reminder**: Suggest backing up session files periodically (git commit)
|
||||
|
||||
## Tips
|
||||
|
||||
- Be specific about dice rolls and outcomes in the detailed write-up
|
||||
- Capture player creativity and memorable moments
|
||||
- Note any house rules or special rulings for consistency
|
||||
- Include enough detail to resume smoothly next session
|
||||
- End the write-up on an exciting note to build anticipation
|
||||
|
||||
---
|
||||
|
||||
**After completing all steps, the session is fully documented and the campaign is ready to resume!**
|
||||
Reference in New Issue
Block a user