Foundry VTT v13 requires all _id values to be exactly 16 characters. Previous IDs ranged from 17-25+ characters and caused validation errors. Changes: - Use 7-char prefix per type (vgbdAnc, vgbdCls, vgbdPrk, etc.) - Append 9-char name derived from filename with padding - Handle collisions with numeric suffixes (e.g., vgbdPrkheighten1) Files updated across all compendiums: - Ancestries: 7 files - Classes: 18 files - Perks: 103 files (3 collision fixes) - Spells: 58 files - Weapons: 43 files - Armor: 5 files - Equipment: ~300 files (25 collision fixes) - Bestiary: ~70 files (8 collision fixes) - Statuses: ~15 files 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
155 lines
4.4 KiB
JSON
Executable File
155 lines
4.4 KiB
JSON
Executable File
{
|
||
"_id": "vgbdClssorcerer0",
|
||
"_key": "!items!vgbdClssorcerer0",
|
||
"name": "Sorcerer",
|
||
"type": "class",
|
||
"img": "icons/svg/fire.svg",
|
||
"system": {
|
||
"description": "<p>Arcanists given a precious gift of magical prowess, sorcerers can tap into their own inner reserves to provide more Mana for casting.</p>",
|
||
"keyStat": "presence",
|
||
"actionStyle": "cast",
|
||
"zone": "backline",
|
||
"weaponTraining": [],
|
||
"skillTraining": [
|
||
{
|
||
"type": "fixed",
|
||
"skills": ["influence"],
|
||
"count": 1
|
||
},
|
||
{
|
||
"type": "choice",
|
||
"skills": ["arcana", "brawl", "mysticism", "performance"],
|
||
"count": 3
|
||
}
|
||
],
|
||
"trainedSkills": [],
|
||
"startingPack": "<p>Mage or Occultist</p>",
|
||
"isCaster": true,
|
||
"progression": [
|
||
{
|
||
"level": 1,
|
||
"mana": 4,
|
||
"castingMax": 0,
|
||
"spellsKnown": 4,
|
||
"features": ["Glamour", "Tap"]
|
||
},
|
||
{
|
||
"level": 2,
|
||
"mana": 8,
|
||
"castingMax": 0,
|
||
"spellsKnown": 0,
|
||
"features": ["Spell-Slinger"]
|
||
},
|
||
{
|
||
"level": 3,
|
||
"mana": 12,
|
||
"castingMax": 0,
|
||
"spellsKnown": 1,
|
||
"features": ["Perk"]
|
||
},
|
||
{
|
||
"level": 4,
|
||
"mana": 16,
|
||
"castingMax": 0,
|
||
"spellsKnown": 0,
|
||
"features": ["Quickening"]
|
||
},
|
||
{
|
||
"level": 5,
|
||
"mana": 20,
|
||
"castingMax": 0,
|
||
"spellsKnown": 1,
|
||
"features": ["Perk"]
|
||
},
|
||
{
|
||
"level": 6,
|
||
"mana": 24,
|
||
"castingMax": 0,
|
||
"spellsKnown": 0,
|
||
"features": ["Arcane Anomaly"]
|
||
},
|
||
{
|
||
"level": 7,
|
||
"mana": 28,
|
||
"castingMax": 0,
|
||
"spellsKnown": 1,
|
||
"features": ["Perk"]
|
||
},
|
||
{
|
||
"level": 8,
|
||
"mana": 32,
|
||
"castingMax": 0,
|
||
"spellsKnown": 0,
|
||
"features": ["Spell Twinning"]
|
||
},
|
||
{
|
||
"level": 9,
|
||
"mana": 36,
|
||
"castingMax": 0,
|
||
"spellsKnown": 1,
|
||
"features": ["Perk"]
|
||
},
|
||
{
|
||
"level": 10,
|
||
"mana": 40,
|
||
"castingMax": 0,
|
||
"spellsKnown": 0,
|
||
"features": ["Overpowered"]
|
||
}
|
||
],
|
||
"features": [
|
||
{
|
||
"name": "Glamour",
|
||
"level": 1,
|
||
"description": "<p>You can Cast Spells using Influence.</p><p><strong>Spells:</strong> You learn 4 Spells. You learn 1 other Spell every 2 Sorcerer Levels hereafter.</p><p><strong>Mana:</strong> Your Maximum Mana is equal to (4 × your Sorcerer Level), and the highest amount of Mana you can spend to Cast a Spell is equal to (Presence + half your Sorcerer Level, round up). You regain spent Mana when you Rest.</p>",
|
||
"passive": true,
|
||
"changes": []
|
||
},
|
||
{
|
||
"name": "Tap",
|
||
"level": 1,
|
||
"description": "<p>You gain the <strong>Metamagic Perk</strong>. Further, when you Cast, you can reduce your Max HP to regain Mana equal to (2 × the reduction). This reduction ends when you Rest. If you die from this reduction, the Cast resolves before your death, and your body is vaporized.</p>",
|
||
"passive": false,
|
||
"changes": []
|
||
},
|
||
{
|
||
"name": "Spell-Slinger",
|
||
"level": 2,
|
||
"description": "<p>You Crit on Cast Checks on a roll of 19 to 20, and your Spells use a d8 damage die, rather than a d6.</p>",
|
||
"passive": true,
|
||
"changes": []
|
||
},
|
||
{
|
||
"name": "Quickening",
|
||
"level": 4,
|
||
"description": "<p>You can skip your Move to Cast a Spell. No Mana can be spent on this Casting.</p>",
|
||
"passive": true,
|
||
"changes": []
|
||
},
|
||
{
|
||
"name": "Arcane Anomaly",
|
||
"level": 6,
|
||
"description": "<p>You reduce Magic damage you take by half.</p>",
|
||
"passive": true,
|
||
"changes": []
|
||
},
|
||
{
|
||
"name": "Spell Twinning",
|
||
"level": 8,
|
||
"description": "<p>If you Cast the same Spell twice on a Turn, the second Cast Check is Favored.</p>",
|
||
"passive": true,
|
||
"changes": []
|
||
},
|
||
{
|
||
"name": "Overpowered",
|
||
"level": 10,
|
||
"description": "<p>You Crit on Cast Checks on a roll of 18 to 20. Further, when you Cast, you can choose to gain 2 Fatigue. If you do, you regain Cd6 Mana at the start of your Turns, and you can spend as much Mana as you like to Cast.</p>",
|
||
"passive": true,
|
||
"changes": []
|
||
}
|
||
],
|
||
"customResource": {}
|
||
},
|
||
"reviewed": true
|
||
}
|