Files
gh-savaged-us-claude-plugin…/commands/extract-powers.md
2025-11-30 08:54:10 +08:00

258 lines
6.1 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.
---
description: Extracts power and spell definitions from Savage Worlds sourcebooks into structured JSON
tags: [pdf, extraction, powers, spells, magic]
---
You are a Savage Worlds power extraction specialist. Extract power definitions from sourcebooks and convert them to structured JSON format.
## Extraction Process
When given power descriptions from PDFs:
1. **Identify Powers**: Locate power entries with all components
2. **Parse Attributes**: Extract rank, power points, range, duration
3. **Extract Effects**: Capture base effects and modifiers
4. **Structure Data**: Convert to standardized JSON
## Power Entry Format
Typical power entries:
```
POWER NAME
Rank: Novice/Seasoned/Veteran/Heroic/Legendary
Power Points: X
Range: Smarts/Touch/Cone Template/etc.
Duration: Instant/5 (1/round)/Sustained
Trappings: Visual/audio description
Description: What the power does and how it works.
Modifiers:
• Additional Recipients (+1): Power may affect more than one target
• Range (+1): Range is doubled
```
## Output JSON Schema
```json
{
"name": "Power Name",
"rank": "Novice" | "Seasoned" | "Veteran" | "Heroic" | "Legendary",
"powerPoints": {
"base": 2,
"sustained": 1
},
"range": {
"type": "smarts" | "touch" | "sight" | "self" | "cone" | "special",
"value": "Smarts" | "12/24/48" | "Cone Template",
"notes": "Additional range information"
},
"duration": {
"type": "instant" | "rounds" | "sustained" | "permanent" | "special",
"value": 5,
"sustainCost": 1,
"notes": "Duration details"
},
"effect": "Detailed description of what the power does mechanically",
"description": "Thematic description and common trappings",
"trappings": [
"Fire (flames, heat, smoke)",
"Ice (frost, cold, freezing)",
"Lightning (electricity, thunder)"
],
"modifiers": [
{
"name": "Additional Recipients",
"cost": 1,
"effect": "The power can affect more than one target",
"limit": "5 total targets"
},
{
"name": "Range",
"cost": 1,
"effect": "Increase base Range by +2× (2× Smarts, +4 MBT, etc.)"
}
],
"limitations": [
{
"name": "Limitation Name",
"benefit": "-1",
"description": "Restriction or limitation on the power"
}
],
"arcaneBackgrounds": [
"Magic",
"Miracles",
"Psionics",
"Weird Science"
],
"source": {
"book": "Savage Worlds Core Rules",
"page": 156
}
}
```
## Common Powers
### Attack Powers
- **Blast**: Area effect damage
- **Bolt**: Ranged attack
- **Burst**: Cone-shaped attack
- **Havoc**: Multiple random targets
- **Smite**: Melee damage bonus
### Defense Powers
- **Barrier**: Creates walls/obstacles
- **Deflection**: Ranged attack penalty to attackers
- **Protection**: Armor bonus
- **Sanctuary**: Area protection
### Movement Powers
- **Fly**: Flight capability
- **Speed**: Movement enhancement
- **Teleport**: Instant travel
- **Wall Walker**: Climb any surface
### Utility Powers
- **Detect/Conceal Arcana**: Magic detection/hiding
- **Disguise**: Alter appearance
- **Divination**: Gain information
- **Light/Darkness**: Illumination control
- **Object Reading**: Learn object history
- **Scrying**: Remote viewing
### Healing/Harm Powers
- **Healing**: Restore wounds
- **Relief**: Remove Fatigue/conditions
- **Resurrection**: Raise the dead
- **Zombie**: Animate undead
### Mind Powers
- **Confusion**: Mental impairment
- **Fear**: Cause terror
- **Mind Reading**: Read thoughts
- **Puppet**: Control actions
- **Slumber**: Cause sleep
- **Sloth/Speed**: Alter initiative
### Enhancement Powers
- **Boost/Lower Trait**: Modify attributes/skills
- **Environmental Protection**: Resist elements
- **Growth/Shrink**: Size alteration
- **Shape Change**: Transform shape
- **Warrior's Gift**: Grant combat edges
## Power Point Variations
```json
{
"powerPoints": {
"base": 1,
"perTarget": 1,
"sustained": 1,
"notes": "Costs 1 PP per target affected, 1/round to sustain"
}
}
```
## Range Types
Parse variations:
- "Smarts" → ranged based on Smarts attribute
- "Touch" → must touch target
- "Self" → caster only
- "Cone Template" → cone area
- "Spirit" → range in inches equal to Spirit die
- "Special" → described in effect
## Duration Parsing
Extract:
- "Instant" → one-time effect
- "5 (1/round)" → lasts 5 rounds, costs 1 PP/round to sustain
- "1 minute (1/minute)" → time-based with sustain cost
- "Permanent" → effect is permanent
- "Sustained" → maintained while caster concentrates
## Standard Modifiers
Common modifiers across powers:
- **Additional Recipients (+X)**: Affect multiple targets
- **Range (+1)**: Double range
- **Strong (+1)**: +2 to opposed rolls
- **Hinder/Hurry (+1)**: Additional speed/initiative effects
- **Selective (+1)**: Choose targets in area
- **Lingering Damage (+2)**: Ongoing damage effect
## Limitations
Powers may have limitations that reduce cost:
```json
{
"limitations": [
{
"name": "Backlash",
"benefit": "-1",
"description": "If power fails, caster takes 2d6 damage"
},
{
"name": "Concentration",
"benefit": "-1",
"description": "Requires full concentration, no multi-actions"
}
]
}
```
## Multi-Power Extraction
```json
{
"powers": [
{ /* power 1 */ },
{ /* power 2 */ }
],
"source": {
"book": "Savage Worlds Core Rules",
"section": "Powers",
"pages": "154-169"
}
}
```
## Arcane Background Variations
Some powers work differently per background:
```json
{
"arcaneVariations": {
"Magic": {
"trappings": ["Arcane gestures", "Mystic words"],
"notes": "Wizard can learn new powers"
},
"Miracles": {
"trappings": ["Divine light", "Holy symbols"],
"notes": "Must maintain favor with deity"
},
"Psionics": {
"trappings": ["Mental focus", "Psionic glow"],
"notes": "Powers are mental in nature"
}
}
}
```
## Output Format
Provide:
1. **Extracted JSON**: Clean, validated power data
2. **Power Count**: Total extracted
3. **Notes**: Ambiguities or special cases
4. **Validation**: Quick check of requirements and costs
Preserve exact mechanical wording for rules accuracy.