Skip to content

Spell Schema Reference

Complete field reference for spell entries in the 5etools data format.

  • Path: {book}/spells/spells-{source}.json
  • Fluff: {book}/spells/fluff-spells-{source}.json
{
"spell": [
{
// spell objects
}
]
}
  • name (string) - Spell name, must be unique within source
  • source (string) - Source book abbreviation (PHB, DMG, etc.)
  • level (number) - Spell level (0-9, where 0 = cantrip)
  • school (string) - School of magic single-letter code
  • time (array) - Casting time specification
  • range (object) - Range specification
  • components (object) - V/S/M components
  • duration (array) - Duration specification
  • entries (array) - Main spell description
  • page (number) - Page number in source book
  • otherSources (array) - Additional source references
  • srd (boolean/string) - Available in System Reference Document (SRD Name if the name is different)
  • basicRules (boolean) - Available in basic rules
  • A - Abjuration
  • C - Conjuration
  • D - Divination
  • E - Enchantment
  • V - Evocation (note: V, not E)
  • I - Illusion
  • N - Necromancy
  • T - Transmutation

Array of timing objects:

// Standard actions
[{"number": 1, "unit": "action"}]
[{"number": 1, "unit": "bonus"}]
[{"number": 1, "unit": "reaction"}]
// Conditional reactions
[{"number": 1, "unit": "reaction", "condition": "which you take when you see a creature within 60 feet of you casting a spell"}]
// Extended casting
[{"number": 1, "unit": "minute"}]
[{"number": 10, "unit": "minute"}]
[{"number": 1, "unit": "hour"}]
[{"number": 8, "unit": "hour"}]
[{"number": 24, "unit": "hour"}]

Object specifying targeting range:

// Self-targeting
{"type": "point", "distance": {"type": "self"}}
// Touch spells
{"type": "point", "distance": {"type": "touch"}}
// Ranged point target
{"type": "point", "distance": {"type": "feet", "amount": 60}}
{"type": "point", "distance": {"type": "miles", "amount": 1}}
// Area effects from caster
{"type": "radius", "distance": {"type": "feet", "amount": 20}}
{"type": "sphere", "distance": {"type": "feet", "amount": 40}}
{"type": "cone", "distance": {"type": "feet", "amount": 15}}
{"type": "line", "distance": {"type": "feet", "amount": 100}}
// Special ranges
{"type": "point", "distance": {"type": "sight"}}
{"type": "point", "distance": {"type": "unlimited"}}

Object with V/S/M flags and material description:

// Verbal only
{"v": true}
// Somatic only
{"s": true}
// Verbal and somatic
{"v": true, "s": true}
// All components with material
{
"v": true,
"s": true,
"m": "a tiny ball of bat guano and sulfur"
}
// Complex material component
{
"m": {
"text": "a diamond worth at least 1,000 gp",
"cost": 100000,
"consume": true
}
}

Array of duration objects:

// Instantaneous
[{"type": "instant"}]
// Timed durations
[{"type": "timed", "duration": {"amount": 1, "type": "round"}}]
[{"type": "timed", "duration": {"amount": 1, "type": "minute"}}]
[{"type": "timed", "duration": {"amount": 10, "type": "minute"}}]
[{"type": "timed", "duration": {"amount": 1, "type": "hour"}}]
[{"type": "timed", "duration": {"amount": 8, "type": "hour"}}]
[{"type": "timed", "duration": {"amount": 1, "type": "day"}}]
// Concentration spells
[{
"type": "timed",
"duration": {"amount": 1, "type": "minute"},
"concentration": true
}]
// Up to duration
[{
"type": "timed",
"duration": {"amount": 1, "type": "hour", "upTo": true}
}]
// Permanent effects
[{"type": "permanent", "ends": ["dispel"]}]
[{"type": "permanent", "ends": ["dispel", "trigger"]}]
// Special duration
[{"type": "special"}]

Array of strings and complex objects:

[
"A bright streak flashes from your pointing finger to a point you choose within range and then blossoms with a low roar into an explosion of flame.",
"The fire spreads around corners. It ignites flammable objects in the area that aren't being worn or carried."
]

Array describing effects when cast with higher level slots:

[
{
"type": "entries",
"name": "At Higher Levels",
"entries": [
"When you cast this spell using a spell slot of 4th level or higher, the damage increases by {@scaledamage 8d6|3-9|1d6} for each slot level above 3rd."
]
}
]

Array of damage types the spell can deal:

["fire"]
["acid", "cold", "fire"]
["bludgeoning", "piercing", "slashing"]
["necrotic", "radiant"]

All Damage Types:

  • Physical: bludgeoning, piercing, slashing
  • Elemental: acid, cold, fire, lightning, thunder
  • Energy: force, necrotic, psychic, radiant
  • Biological: poison

Array of conditions the spell can inflict:

["blinded"]
["charmed", "incapacitated"]
["frightened", "stunned"]

All Conditions: blinded, charmed, deafened, frightened, grappled, incapacitated, invisible, paralyzed, petrified, poisoned, prone, restrained, stunned, unconscious

Array of required saving throws:

["dexterity"]
["wisdom", "charisma"]

Ability Names: strength, dexterity, constitution, intelligence, wisdom, charisma

Array indicating attack roll types:

["M"] // Melee spell attack
["R"] // Ranged spell attack
["O"] // Other/special attack

Array describing area of effect:

["ST"] // Single target
["MT"] // Multiple targets
["S"] // Sphere
["C"] // Cone
["L"] // Line
["Y"] // Cylinder
["H"] // Hemisphere
["Q"] // Square
["R"] // Rectangle
["N"] // Square/Rectangle
["W"] // Wall

Array of miscellaneous mechanical properties:

["SCL"] // Scaling (cantrip damage increases)
["SGT"] // Single target
["HL"] // Has "At Higher Levels" section
["OBJ"] // Can affect objects
["PRM"] // Creates permanent effects
["SMN"] // Summons creatures
["THP"] // Grants temporary hit points
["UBA"] // Can be used as bonus action
["LGT"] // Creates light
["HEL"] // Provides healing
["FMV"] // Forced movement
["MAC"] // Multiple attack rolls/checks

Object specifying which classes can learn/prepare the spell:

{
"fromClassList": [
{"name": "Sorcerer", "source": "PHB"},
{"name": "Wizard", "source": "PHB"},
{"name": "Light Domain", "source": "PHB"}
]
}

Additional availability through subclasses:

{
"fromSubclass": [
{
"class": {"name": "Cleric", "source": "PHB"},
"subclass": {"name": "Light Domain", "source": "PHB"}
}
]
}

Object for special casting methods:

{"ritual": true} // Can be cast as ritual

Object describing damage scaling for cantrips:

{
"label": "fire damage",
"scaling": {
"1": "1d10",
"5": "2d10",
"11": "3d10",
"17": "4d10"
}
}

Array of ability checks the spell might require:

["strength"]
["intelligence", "wisdom"]

Creature Type Interactions (affectsCreatureType)

Section titled “Creature Type Interactions (affectsCreatureType)”

Array of creature types affected by the spell:

["beast", "humanoid"]
["undead"]
["aberration", "celestial", "elemental", "fey", "fiend"]

Immunity Grants (conditionImmune, damageImmune, etc.)

Section titled “Immunity Grants (conditionImmune, damageImmune, etc.)”

Arrays of immunities/resistances granted:

"conditionImmune": ["charmed", "frightened"]
"damageImmune": ["poison"]
"damageResist": ["bludgeoning", "piercing", "slashing"]
"damageVulnerable": ["cold"]
  • srd (boolean) - Available in System Reference Document
  • basicRules (boolean) - Available in D&D Basic Rules
  • legacy (boolean) - From legacy/outdated content
  • otherSources (array) - Additional publications containing this spell
  • reprintedAs (array) - Where this spell was reprinted with changes
  • hasFluffImages (boolean) - Has associated artwork in fluff file
  • hasFluff (boolean) - Has extended lore in fluff file

Spell descriptions use 5etools formatting tags:

  • {@damage 1d6} - Damage rolls
  • {@condition blinded} - Conditions
  • {@spell fireball} - Spell references
  • {@creature goblin} - Creature references
  • {@item longsword} - Item references
  • {@dice 1d20} - Dice rolls
  • {@dc 15} - Difficulty classes
  • {@scaledamage 1d6|1-9|1d6} - Scaling damage
  • {@quickref Cover||3} - Quick reference links
{
"name": "Fireball",
"source": "PHB",
"page": 241,
"level": 3,
"school": "V",
"time": [{"number": 1, "unit": "action"}],
"range": {
"type": "point",
"distance": {"type": "feet", "amount": 150}
},
"components": {
"v": true,
"s": true,
"m": "a tiny ball of bat guano and sulfur"
},
"duration": [{"type": "instant"}],
"entries": [
"A bright streak flashes from your pointing finger to a point you choose within range and then blossoms with a low roar into an explosion of flame. Each creature in a 20-foot-radius sphere centered on that point must make a Dexterity saving throw. A target takes {@damage 8d6} fire damage on a failed save, or half as much damage on a successful one.",
"The fire spreads around corners. It ignites flammable objects in the area that aren't being worn or carried."
],
"entriesHigherLevel": [
{
"type": "entries",
"name": "At Higher Levels",
"entries": [
"When you cast this spell using a spell slot of 4th level or higher, the damage increases by {@scaledamage 8d6|3-9|1d6} for each slot level above 3rd."
]
}
],
"damageInflict": ["fire"],
"savingThrow": ["dexterity"],
"areaTags": ["S"],
"miscTags": ["OBJ"],
"classes": {
"fromClassList": [
{"name": "Sorcerer", "source": "PHB"},
{"name": "Wizard", "source": "PHB"}
]
},
"srd": true,
"basicRules": true,
"hasFluffImages": true
}

This schema provides the complete specification for spell data as used in Mimir’s D&D content system.