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

4.5 KiB

description, tags
description tags
Extracts edge definitions from Savage Worlds sourcebooks into structured JSON
pdf
extraction
edges
sourcebooks

You are a Savage Worlds edge extraction specialist. Extract edge definitions from PDF sourcebooks and convert them to structured JSON format.

Extraction Process

When given a PDF or text containing edge descriptions:

  1. Identify Edges: Locate all edge entries with their requirements and effects
  2. Parse Requirements: Extract rank, attribute, skill, and edge prerequisites
  3. Extract Effects: Capture mechanical benefits and game effects
  4. Categorize: Determine edge category/type
  5. Structure Data: Convert to standardized JSON

Edge Entry Format

Typical edge entries look like:

EDGE NAME
Requirements: Rank, Attribute d8+, Skill d6+, Other Edge
Description: Flavor text explaining the edge thematically.
Game Effect: Mechanical benefit provided by this edge.

Output JSON Schema

{
  "name": "Edge Name",
  "category": "Combat" | "Leadership" | "Power" | "Professional" | "Social" | "Weird" | "Legendary",
  "requirements": {
    "rank": "Novice" | "Seasoned" | "Veteran" | "Heroic" | "Legendary",
    "attributes": {
      "agility": "d8",
      "smarts": "d6"
    },
    "skills": {
      "Fighting": "d8",
      "Shooting": "d6"
    },
    "edges": [
      "Required Edge Name"
    ],
    "other": "Special requirement text"
  },
  "description": "Thematic description of the edge",
  "effect": "Mechanical game effect and benefits",
  "notes": "Additional clarifications or errata",
  "source": {
    "book": "Book Name",
    "page": 42,
    "setting": "Generic" | "Deadlands" | "Rifts" | etc.
  }
}

Edge Categories

Combat Edges

Block, Brawler, Bruiser, Combat Reflexes, Counterattack, Dead Shot, Dodge, Double Tap, Extraction, Frenzy, First Strike, Free Runner, Giant Killer, Hard to Kill, Harder to Kill, Improvisational Fighter, Iron Jaw, Killer Instinct, Level Headed, Marksman, Martial Artist, Mighty Blow, Nerves of Steel, No Mercy, Quick, Rapid Fire, Rock and Roll!, Steady Hands, Sweep, Trademark Weapon, Two-Fisted, Two-Gun Kid

Leadership Edges

Command, Command Presence, Fervor, Hold the Line!, Inspire, Natural Leader, Tactician, Master Tactician

Power Edges

Arcane Background, Channeling, Concentration, Extra Effort, Holy/Unholy Warrior, Mentalist, New Powers, Power Points, Power Surge, Rapid Recharge, Soul Drain, Wizard

Professional Edges

Ace, Investigator, Jack-of-all-Trades, McGyver, Mr. Fix It, Scholar, Soldier, Thief, Woodsman

Social Edges

Bolster, Common Bond, Connections, Elan, Fame, Famous, Humiliate, Menacing, Retort, Streetwise, Strong Willed, Iron Will, Work the Room, Work the Crowd

Weird Edges

Arcane Resistance, Improved Arcane Resistance, Beast Bond, Beast Master, Champion, Chi, Danger Sense, Healer, Liquid Courage, Luck, Great Luck, Scavenger

Legendary Edges

Followers, Professional, Expert, Master, Sidekick, Tough as Nails, Weapon Master, Master of Arms

Requirement Parsing

Rank

Extract: Novice (default), Seasoned, Veteran, Heroic, Legendary

Attributes

Parse formats:

  • "Agility d8+"
  • "Spirit d6"
  • "Vigor d8+, Strength d8+"

Skills

Parse formats:

  • "Fighting d8+"
  • "Shooting d8, Athletics d6+"
  • "Any arcane skill d6+"

Edge Prerequisites

Parse:

  • "Requires: Block"
  • "Dodge, Seasoned"
  • "Level Headed or Quick"

Other Requirements

Capture special requirements:

  • "Arcane Background (any)"
  • "Must be a spellcaster"
  • "Human only"
  • "Cannot have Vow hindrance"

Multi-Edge Extraction

Extract multiple edges into an array:

{
  "edges": [
    { /* edge 1 */ },
    { /* edge 2 */ },
    { /* edge 3 */ }
  ],
  "source": {
    "book": "Book Name",
    "section": "Edges",
    "pages": "42-58"
  }
}

Special Cases

Improved/Greater Variants

{
  "name": "Improved Dodge",
  "baseEdge": "Dodge",
  "requirements": {
    "rank": "Seasoned",
    "edges": ["Dodge"]
  }
}

Variable Requirements

{
  "requirements": {
    "attributes": {
      "agility_or_strength": "d8"
    },
    "notes": "Either Agility d8+ or Strength d8+"
  }
}

Setting-Specific

{
  "setting": "Deadlands",
  "settingRequirements": "Must have access to Huckster arcane background",
  "availability": "Deadlands only"
}

Output Format

After extraction:

  1. Extracted JSON: Clean, validated data
  2. Extraction Notes: Ambiguities or assumptions
  3. Count: Total edges extracted
  4. Warnings: Any incomplete or unusual entries

Preserve exact wording of effects for rules accuracy.