Difference between revisions of "Module:Table of spells"

From CrawlWiki
Jump to: navigation, search
(slow)
(updated C++ code and then generated for 0.28)
Line 1: Line 1:
-- Table of spells (0.25.0)
+
-- Table of spells (0.29-a0-92-gee772dd00f)
 
return {
 
return {
  ["Absolute Zero"] = {
 
    books = {
 
      ["book of Annihilations"] = true
 
    },
 
    description = "Entirely removes the heat from the enemy nearest the caster, instantly freezing it into a block of solid ice.",
 
    flags = {
 
      NO_GHOST = true
 
    },
 
    level = 9,
 
    name = "Absolute Zero",
 
    noise = {
 
      casting = 9,
 
      effect = 40
 
    },
 
    ["power cap"] = 200,
 
    range = {
 
      max = 5,
 
      min = 5
 
    },
 
    schools = {
 
      Ice = true
 
    }
 
  },
 
 
   Agony = {
 
   Agony = {
 
     books = {
 
     books = {
       ["book of Death"] = true
+
       ["book of Pain"] = true,
 +
      ["book of the Senses"] = true
 
     },
 
     },
     description = "Cuts the resilience of an adjacent creature in half. This damage is never directly lethal.",
+
     description = "Cuts the health of an adjacent creature in half. This damage is never directly lethal.",
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       dir_or_target = true,
       WILL_CHECK = true,
+
       needs_tracer = true,
       NEEDS_TRACER = true,
+
       not_self = true,
       NOT_SELF = true
+
       WL_check = true
 
     },
 
     },
 
     level = 5,
 
     level = 5,
Line 39: Line 17:
 
     noise = {
 
     noise = {
 
       casting = 4,
 
       casting = 4,
       effect = 2
+
       effect = 0
 
     },
 
     },
     ["power cap"] = 200,
+
     ["power cap"] = 100,
    quote = "“Unbearable, isn't it? The suffering of strangers, the agony of friends. There is a secret song at the center of the world, Joey, and its sound is like razors through flesh.”\n    -Pinhead, _Hellraiser 3: Hell on Earth_. 1992.",
 
 
     range = {
 
     range = {
 
       max = 1,
 
       max = 1,
Line 53: Line 30:
 
   Airstrike = {
 
   Airstrike = {
 
     books = {
 
     books = {
       ["book of the Sky"] = true,
+
       ["book of Air"] = true,
 
       ["book of Storms"] = true
 
       ["book of Storms"] = true
 
     },
 
     },
 
     description = "Causes the air around a creature to twist itself into a whirling vortex of meteorological fury. It does more damage to targets surrounded by empty space.",
 
     description = "Causes the air around a creature to twist itself into a whirling vortex of meteorological fury. It does more damage to targets surrounded by empty space.",
 
     flags = {
 
     flags = {
       NOT_SELF = true,
+
       not_self = true,
       TARGET = true
+
       target = true
 
     },
 
     },
 
     level = 4,
 
     level = 4,
Line 78: Line 55:
 
   ["Alistair's Intoxication"] = {
 
   ["Alistair's Intoxication"] = {
 
     books = {
 
     books = {
       ["book of Alchemy"] = true,
+
       ["book of Party Tricks"] = true,
       ["book of Party Tricks"] = true
+
       ["Great Wizards, Vol. II"] = true
 
     },
 
     },
     description = "Converts a small portion of the brain matter of those around you into alcohol, confusing all intelligent humanoids within view (although poison-resistant creatures may resist the effects). The caster may experience vertigo briefly as a result of making contact with other minds. It is frequently used as an icebreaker at wizard parties.",
+
     description = "Converts a small portion of the brain matter of those around you into alcohol, attempting to confuse all intelligent creatures within view (although poison-resistant creatures may resist the effects). The caster will experience vertigo briefly if they successfully make contact with other minds. It is frequently used as an icebreaker at wizard parties.",
 
     flags = {},
 
     flags = {},
 
     level = 5,
 
     level = 5,
Line 89: Line 66:
 
       effect = 0
 
       effect = 0
 
     },
 
     },
     ["power cap"] = 100,
+
     ["power cap"] = 150,
 
     schools = {
 
     schools = {
 
       Poison = true,
 
       Poison = true,
Line 95: Line 72:
 
     }
 
     }
 
   },
 
   },
   ["Animate Armour"] = {
+
  Anguish = {
 +
    books = {
 +
      ["book of Dreams"] = true,
 +
      ["book of Maledictions"] = true
 +
    },
 +
    description = "Afflicts nearby foes with supernatural anguish, causing all damage they deal to rebound on them for the duration of the effect. Strong-willed foes can resist the necromantic visions of pain and suffering, and mindless creatures are unaffected.",
 +
    flags = {
 +
      area = true,
 +
      WL_check = true
 +
    },
 +
    level = 4,
 +
    name = "Anguish",
 +
    noise = {
 +
      casting = 4,
 +
      effect = 0
 +
    },
 +
    ["power cap"] = 200,
 +
    range = {
 +
      max = 7,
 +
      min = 7
 +
    },
 +
    schools = {
 +
      Hexes = true,
 +
      Necromancy = true
 +
    }
 +
  },
 +
   ["Animate Armour"] = {
 
     books = {
 
     books = {
 
       ["book of Armaments"] = true,
 
       ["book of Armaments"] = true,
 
       ["book of Iron"] = true
 
       ["book of Iron"] = true
 
     },
 
     },
     description = "Calls upon the spirit of your worn armour to fight alongside you. The spirit moves slowly, but draws strength from the inherent protection of your own armour. At higher power, the spirit becomes more durable.",
+
     description = "Call upon the spirit of your worn armour to fight alongside you. The spirit moves slowly, but draws strength from the inherent protection of your own armour. At higher power, the spirit becomes more durable.",
 
     flags = {},
 
     flags = {},
 
     level = 4,
 
     level = 4,
Line 112: Line 115:
 
       Earth = true,
 
       Earth = true,
 
       Summoning = true
 
       Summoning = true
     },
+
     }
    ["summons limit"] = 1
 
 
   },
 
   },
 
   ["Animate Dead"] = {
 
   ["Animate Dead"] = {
 
     books = {
 
     books = {
       ["book of Necromancy"] = true,
+
       ["book of Death"] = true,
 
       ["book of Unlife"] = true
 
       ["book of Unlife"] = true
 
     },
 
     },
 
     description = "Reanimates all corpses and skeletons in the vicinity as followers. This magic is unstable, so eventually those reanimated will crumble to dust. Zombies and skeletons cannot leave the level they were created on. The resilience of zombies raised by this spell increases with spell power.",
 
     description = "Reanimates all corpses and skeletons in the vicinity as followers. This magic is unstable, so eventually those reanimated will crumble to dust. Zombies and skeletons cannot leave the level they were created on. The resilience of zombies raised by this spell increases with spell power.",
 
     flags = {
 
     flags = {
       AREA = true,
+
       area = true,
       NEUTRAL = true,
+
       neutral = true,
       UTILITY = true
+
       utility = true
 
     },
 
     },
 
     level = 4,
 
     level = 4,
Line 144: Line 146:
 
     description = "Reanimates a single skeleton as a follower, even if that skeleton is still encased in flesh. This magic is unstable, so eventually those reanimated will crumble to dust. Skeletons cannot leave the level they were created on. The resilience of a skeleton raised by this spell increases with spell power.",
 
     description = "Reanimates a single skeleton as a follower, even if that skeleton is still encased in flesh. This magic is unstable, so eventually those reanimated will crumble to dust. Skeletons cannot leave the level they were created on. The resilience of a skeleton raised by this spell increases with spell power.",
 
     flags = {
 
     flags = {
       UTILITY = true
+
       utility = true
 
     },
 
     },
 
     level = 1,
 
     level = 1,
Line 164: Line 166:
 
     description = "Pulls the top item or group of similar items from a distant pile to the floor near the caster. With low power, items might not be moved all the way to the caster's position.\n\nExtremely powerful magical items, such as the Orb of Zot, may actively resist the pull of this spell.",
 
     description = "Pulls the top item or group of similar items from a distant pile to the floor near the caster. With low power, items might not be moved all the way to the caster's position.\n\nExtremely powerful magical items, such as the Orb of Zot, may actively resist the pull of this spell.",
 
     flags = {
 
     flags = {
       NOT_SELF = true,
+
       not_self = true,
       OBJ = true,
+
       obj = true,
       TARGET = true
+
       target = true
 
     },
 
     },
 
     level = 1,
 
     level = 1,
Line 187: Line 189:
 
       ["book of Changes"] = true
 
       ["book of Changes"] = true
 
     },
 
     },
     description = "Causes monstrous horns or talons to grow from the caster's body, granting them a chance of making an extra attack in melee. It is not powerful enough to meld armour or enhance appendages that are already nonhuman.",
+
     description = "{{[string \"db_embedded_lua\"]:2: attempt to index global 'you' (a nil value)}}\n\nWhile transformed, auxiliary armour on the affected body parts is melded.",
 
     flags = {
 
     flags = {
       CHAOTIC = true,
+
       chaotic = true,
       HELPFUL = true
+
       helpful = true
 
     },
 
     },
 
     level = 1,
 
     level = 1,
Line 205: Line 207:
 
   ["Blade Hands"] = {
 
   ["Blade Hands"] = {
 
     books = {
 
     books = {
       ["book of Changes"] = true
+
       ["book of Iron"] = true,
 +
      ["book of Transfigurations"] = true,
 +
      ["book of Weapons"] = true
 
     },
 
     },
     description = "Causes long, scythe-shaped blades to grow from the caster's hands, increasing melee damage significantly.",
+
     description = "{{[string \"db_embedded_lua\"]:2: attempt to index global 'you' (a nil value)}}\n\nWhile transformed, equipped weapons, shields, and gloves are melded, and casting spells becomes somewhat more difficult.",
 
     flags = {
 
     flags = {
       CHAOTIC = true,
+
       chaotic = true,
       HELPFUL = true,
+
       helpful = true,
       UTILITY = true
+
       utility = true
 
     },
 
     },
 
     level = 5,
 
     level = 5,
Line 226: Line 230:
 
   Blink = {
 
   Blink = {
 
     books = {
 
     books = {
      ["book of Minor Magic"] = true,
 
 
       ["book of Spatial Translocations"] = true,
 
       ["book of Spatial Translocations"] = true,
 
       ["Inescapable Atlas"] = true
 
       ["Inescapable Atlas"] = true
 
     },
 
     },
     description = "Randomly translocates the caster a short distance.",
+
     description = "Randomly translocates the caster a short distance. Translocating in this way destabilises the caster temporarily, preventing consecutive blinks for a short period of time depending on spellpower.",
 
     flags = {
 
     flags = {
       EMERGENCY = true,
+
       escape = true,
       ESCAPE = true,
+
       selfench = true,
       SELFENCH = true,
+
       utility = true
      UTILITY = true
 
 
     },
 
     },
 
     level = 2,
 
     level = 2,
Line 243: Line 245:
 
       effect = 0
 
       effect = 0
 
     },
 
     },
     ["power cap"] = 0,
+
     ["power cap"] = 50,
 
     schools = {
 
     schools = {
 
       Translocation = true
 
       Translocation = true
 
     }
 
     }
 
   },
 
   },
   ["Bolt of Magma"] = {
+
   ["Borgnjor's Revivification"] = {
 
     books = {
 
     books = {
      ["book of Power"] = true,
+
       Necronomicon = true
      ["book of the Earth"] = true
 
    },
 
    description = "Fires a penetrating bolt of molten rock. A portion of its damage bypasses fire resistance. The range of the bolt is decreased by one for every creature it strikes.",
 
    flags = {
 
      DIR_OR_TARGET = true,
 
      NEEDS_TRACER = true
 
    },
 
    level = 5,
 
    name = "Bolt of Magma",
 
    noise = {
 
      casting = 5,
 
      effect = 2
 
    },
 
    ["power cap"] = 200,
 
    range = {
 
      max = 4,
 
      min = 4
 
    },
 
    schools = {
 
      Conjuration = true,
 
      Earth = true,
 
      Fire = true
 
    }
 
  },
 
  ["Borgnjor's Revivification"] = {
 
    books = {
 
       Necronomicon = true
 
 
     },
 
     },
 
     description = "Instantly heals any and all wounds suffered by the caster, but also permanently damages their health, to a degree dependent on (and inversely related to) power.\n\nIt is powerful enough to cancel the effects of Death's Door, although doing so will briefly paralyse the caster. It has no effect on the undead.",
 
     description = "Instantly heals any and all wounds suffered by the caster, but also permanently damages their health, to a degree dependent on (and inversely related to) power.\n\nIt is powerful enough to cancel the effects of Death's Door, although doing so will briefly paralyse the caster. It has no effect on the undead.",
 
     flags = {
 
     flags = {
       UTILITY = true
+
       utility = true
 
     },
 
     },
 
     level = 8,
 
     level = 8,
Line 296: Line 271:
 
   ["Borgnjor's Vile Clutch"] = {
 
   ["Borgnjor's Vile Clutch"] = {
 
     books = {
 
     books = {
       ["book of Dreams"] = true,
+
       ["book of Unlife"] = true,
       ["book of Unlife"] = true
+
       ["Great Wizards, Vol. II"] = true
 
     },
 
     },
 
     description = "Calls forth hands from corpses interred beneath the dungeon floor long ago. Enemies caught in the area will be held in place and constricted until they break free.",
 
     description = "Calls forth hands from corpses interred beneath the dungeon floor long ago. Enemies caught in the area will be held in place and constricted until they break free.",
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       dir_or_target = true,
       NEEDS_TRACER = true
+
       needs_tracer = true
 
     },
 
     },
 
     level = 5,
 
     level = 5,
 
     name = "Borgnjor's Vile Clutch",
 
     name = "Borgnjor's Vile Clutch",
 
     noise = {
 
     noise = {
       casting = 0,
+
       casting = 5,
       effect = 0
+
       effect = 4
 
     },
 
     },
 
     ["power cap"] = 200,
 
     ["power cap"] = 200,
Line 316: Line 291:
 
     },
 
     },
 
     schools = {
 
     schools = {
       Necromancy = true,
+
       Earth = true,
       Earth = true
+
       Necromancy = true
 
     }
 
     }
 
   },
 
   },
 
   ["Call Canine Familiar"] = {
 
   ["Call Canine Familiar"] = {
 
     books = {
 
     books = {
       ["book of Callings"] = true
+
       ["book of Callings"] = true,
 +
      ["book of the Hunter"] = true
 
     },
 
     },
     description = "Summons a solitary canine to the caster's aid.",
+
     description = "Summons a solitary canine to the caster's aid. Spell power increases the chance of summoning a stronger breed.",
 
     flags = {},
 
     flags = {},
 
     level = 3,
 
     level = 3,
Line 333: Line 309:
 
     },
 
     },
 
     ["power cap"] = 100,
 
     ["power cap"] = 100,
    quote = "“There seemed a strange stillness over everything. But as I listened, I heard as if from down below in the valley the howling of many wolves. The Count's eyes gleamed, and he said.\n\n‘Listen to them, the children of the night. What music they make!’ Seeing, I suppose, some expression in my face strange to him, he added, ‘Ah, sir, you dwellers in the city cannot enter into the feelings of the hunter.’”\n    -Bram Stoker, _Dracula_. 1897.",
 
 
     schools = {
 
     schools = {
 
       Summoning = true
 
       Summoning = true
     },
+
     }
    ["summons limit"] = 1
 
 
   },
 
   },
 
   ["Call Imp"] = {
 
   ["Call Imp"] = {
 
     books = {
 
     books = {
      ["book of Callings"] = true,
 
 
       ["book of Minor Magic"] = true
 
       ["book of Minor Magic"] = true
 
     },
 
     },
     description = "Calls forth a minor demon from the pits of Hell.",
+
     description = "Calls forth a minor demon from the pits of Hell. The demon will fight alongside the caster for a time depending on spell power.",
 
     flags = {
 
     flags = {
       SELFENCH = true,
+
       selfench = true,
       UNHOLY = true
+
       unholy = true
 
     },
 
     },
 
     level = 2,
 
     level = 2,
Line 358: Line 331:
 
     schools = {
 
     schools = {
 
       Summoning = true
 
       Summoning = true
     },
+
     }
    ["summons limit"] = 3
 
 
   },
 
   },
 
   ["Cause Fear"] = {
 
   ["Cause Fear"] = {
 
     books = {
 
     books = {
      ["book of Debilitation"] = true,
 
 
       ["book of Hexes"] = true,
 
       ["book of Hexes"] = true,
 
       ["book of the Dragon"] = true
 
       ["book of the Dragon"] = true
Line 369: Line 340:
 
     description = "Causes fear in those near to the caster, causing those affected to be unable to approach the caster, and to sometimes fail to attack them in melee. Leaving the caster's line of sight will end the effect.",
 
     description = "Causes fear in those near to the caster, causing those affected to be unable to approach the caster, and to sometimes fail to attack them in melee. Leaving the caster's line of sight will end the effect.",
 
     flags = {
 
     flags = {
       AREA = true,
+
       area = true,
       WILL_CHECK = true
+
       WL_check = true
 
     },
 
     },
 
     level = 4,
 
     level = 4,
Line 379: Line 350:
 
     },
 
     },
 
     ["power cap"] = 200,
 
     ["power cap"] = 200,
    quote = "“And when Miranda sang\n Everyone turned away\n Used to the noose, they obey”\n    -The Mars Volta, “Miranda That Ghost Just Isn't Holy Anymore”. 2005.",
 
 
     range = {
 
     range = {
 
       max = 7,
 
       max = 7,
Line 392: Line 362:
 
       ["book of Annihilations"] = true
 
       ["book of Annihilations"] = true
 
     },
 
     },
     description = "Releases a massive electrical discharge that arcs from target to target until it grounds out. It may ground out harmlessly if there are no targets sufficiently close to the caster. Its damage partially bypasses armour.",
+
     description = "Releases a massive electrical discharge that arcs to the creature nearest the caster and then outward from it. The further it travels, the less damage it does. Secondary arcs have limited range and do little damage to the caster. The spell's damage partially bypasses armour and resistance to electricity.",
 
     flags = {
 
     flags = {
       AREA = true
+
       area = true
 
     },
 
     },
     level = 8,
+
     level = 9,
 
     name = "Chain Lightning",
 
     name = "Chain Lightning",
 
     noise = {
 
     noise = {
       casting = 8,
+
       casting = 25,
       effect = 25
+
       effect = 10
 
     },
 
     },
 
     ["power cap"] = 200,
 
     ["power cap"] = 200,
    quote = "“The trouble ain't that there is too many fools,\n but that the lightning ain't distributed right.”\n    -traditionally attributed to Samuel Clemens",
 
 
     schools = {
 
     schools = {
 
       Air = true,
 
       Air = true,
Line 411: Line 380:
 
   ["Confusing Touch"] = {
 
   ["Confusing Touch"] = {
 
     books = {
 
     books = {
       ["book of Maledictions"] = true,
+
       ["book of Debilitation"] = true,
 
       ["book of Misfortune"] = true
 
       ["book of Misfortune"] = true
 
     },
 
     },
 
     description = "Enchants the caster's dominant hand with magical energy. This energy is released when the caster touches a monster, and may induce a state of confusion in the monster. The caster's attacks do no damage while attempting to touch a monster in this way.",
 
     description = "Enchants the caster's dominant hand with magical energy. This energy is released when the caster touches a monster, and may induce a state of confusion in the monster. The caster's attacks do no damage while attempting to touch a monster in this way.",
     flags = {},
+
     flags = {
 +
      selfench = true,
 +
      WL_check = true
 +
    },
 
     level = 3,
 
     level = 3,
 
     name = "Confusing Touch",
 
     name = "Confusing Touch",
Line 429: Line 401:
 
   ["Conjure Ball Lightning"] = {
 
   ["Conjure Ball Lightning"] = {
 
     books = {
 
     books = {
       ["book of the Sky"] = true
+
      ["book of Chaos"] = true,
 +
       ["book of the Spheres"] = true
 
     },
 
     },
 
     description = "Creates a pack of ball lightnings, which seek out the nearest enemy before exploding in a huge blast of electricity. Casters are advised to use caution; the lightning is not mindful of what it may hit.\n\nThe magic which keeps ball lightnings cohesive has limited range, so they may dissipate harmlessly if allowed to drift too far away from their caster before exploding.",
 
     description = "Creates a pack of ball lightnings, which seek out the nearest enemy before exploding in a huge blast of electricity. Casters are advised to use caution; the lightning is not mindful of what it may hit.\n\nThe magic which keeps ball lightnings cohesive has limited range, so they may dissipate harmlessly if allowed to drift too far away from their caster before exploding.",
 
     flags = {
 
     flags = {
       SELFENCH = true
+
       selfench = true
 
     },
 
     },
 
     level = 6,
 
     level = 6,
Line 449: Line 422:
 
   ["Conjure Flame"] = {
 
   ["Conjure Flame"] = {
 
     books = {
 
     books = {
      ["book of Clouds"] = true,
 
 
       ["book of Flames"] = true,
 
       ["book of Flames"] = true,
       ["book of Minor Magic"] = true
+
       ["Everburning Encyclopedia"] = true
 
     },
 
     },
     description = "Create a cloud of magically sustained fire at the caster's feet. The fire takes a moment to begin burning with vigor and in its fragile initial state is easily smothered by either the caster or a wandering monster. Re-casting the spell will bring the fire fully to life, but will burn the caster.",
+
     description = "Conjures burning embers at the caster's feet, which will burst into flame soon after. Any creature (including the caster) that stands on the embers will smother them, so casters are well advised to step away immediately after casting. Re-casting the spell will also ignite the embers, burning the caster.",
 
     flags = {
 
     flags = {
       NOT_SELF = true,
+
       neutral = true,
       TARGET = true
+
       no_ghost = true
 
     },
 
     },
 
     level = 3,
 
     level = 3,
Line 470: Line 442:
 
     }
 
     }
 
   },
 
   },
   ["Controlled Blink"] = {
+
   ["Corpse Rot"] = {
 
     books = {
 
     books = {
       ["book of the Warp"] = true
+
       ["book of Decay"] = true,
 +
      ["book of Vapours"] = true
 
     },
 
     },
     description = "Translocates the caster a short distance, with precise control. Be wary that controlled translocations will cause the subject to become contaminated with magical energy.",
+
     description = "Rapidly accelerates the decomposition of any corpses lying around the caster, and gathers the foul miasmic vapour around the caster. The clouds eat away at the life force of any creature they envelop.",
 
     flags = {
 
     flags = {
       EMERGENCY = true,
+
       area = true,
       ESCAPE = true,
+
       neutral = true,
       UTILITY = true
+
       unclean = true
 
     },
 
     },
     level = 8,
+
     level = 2,
     name = "Controlled Blink",
+
     name = "Corpse Rot",
 
     noise = {
 
     noise = {
 
       casting = 2,
 
       casting = 2,
 
       effect = 0
 
       effect = 0
 
     },
 
     },
     ["power cap"] = 0,
+
     ["power cap"] = 50,
 
     schools = {
 
     schools = {
       Translocation = true
+
       Air = true,
 +
      Necromancy = true
 
     }
 
     }
 
   },
 
   },
   Corona = {
+
   ["Dazzling Flash"] = {
 
     books = {
 
     books = {
       ["book of Cantrips"] = true,
+
       ["book of Spectacle"] = true,
       ["book of Debilitation"] = true,
+
       ["book of the Senses"] = true
      ["book of Maledictions"] = true
+
     },
     },
+
     description = "The caster erupts in a scintillating display of light. Any living creature nearby may be dazzled and left stumbling blindly.",
     description = "Causes a halo of glowing light to surround and effectively outline a creature. This glow offsets the dark, musty atmosphere of the dungeon, and makes the affected creature appreciably easier to hit.",
 
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       area = true,
       WILL_CHECK = true,
+
       no_ghost = true
      NEEDS_TRACER = true,
 
      NOT_SELF = true
 
 
     },
 
     },
     level = 1,
+
     level = 3,
     name = "Corona",
+
     name = "Dazzling Flash",
 
     noise = {
 
     noise = {
       casting = 1,
+
       casting = 0,
       effect = 2
+
       effect = 0
 
     },
 
     },
     ["power cap"] = 40,
+
     ["power cap"] = 50,
 
     range = {
 
     range = {
       max = 7,
+
       max = 3,
       min = 7
+
       min = 2
 
     },
 
     },
 
     schools = {
 
     schools = {
 +
      Conjuration = true,
 
       Hexes = true
 
       Hexes = true
 
     }
 
     }
 
   },
 
   },
   ["Corpse Rot"] = {
+
   ["Death Channel"] = {
 
     books = {
 
     books = {
       ["book of Death"] = true,
+
       ["book of Decay"] = true,
       ["Fen Folio"] = true
+
       ["book of Unlife"] = true
 
     },
 
     },
     description = "Rapidly accelerates the decomposition of any corpses lying around the caster, and gathers the foul miasmic vapour around the caster. The clouds eat away at the life force of any creature they envelop.",
+
     description = "Binds the souls of living, demonic and holy creatures slain by the caster and their allies, causing their spectres to remain and fight for the caster. When the channel expires the spectres will fade away.",
 
     flags = {
 
     flags = {
       AREA = true,
+
       helpful = true,
       NEUTRAL = true,
+
       selfench = true,
       UNCLEAN = true
+
       utility = true
 
     },
 
     },
     level = 2,
+
     level = 6,
     name = "Corpse Rot",
+
     name = "Death Channel",
 
     noise = {
 
     noise = {
       casting = 2,
+
       casting = 5,
 
       effect = 0
 
       effect = 0
 
     },
 
     },
     ["power cap"] = 0,
+
     ["power cap"] = 200,
 
     schools = {
 
     schools = {
 
       Necromancy = true
 
       Necromancy = true
 
     }
 
     }
 
   },
 
   },
   ["Dazzling Flash"] = {
+
   ["Death's Door"] = {
 
     books = {
 
     books = {
       ["book of Conjurations"] = true,
+
       Necronomicon = true
      ["book of Maledictions"] = true
 
 
     },
 
     },
     description = "The caster erupts in a scintillating display of light. Any living creature nearby may be dazzled and left stumbling blindly.",
+
     description = "Renders the caster nigh invulnerable to harm for a brief period, but brings them dangerously close to death in the process. So close, in fact, that the body believes itself to be dead — healing effects will do nothing.\n\nThe caster will receive one warning shortly before the spell expires. After expiry, the spell cannot immediately be recast, but with high power the caster will be left further from death when the effect ends. It has no effect on those who are already undead.",
 
     flags = {
 
     flags = {
       AREA = true,
+
       no_ghost = true,
       NO_GHOST = true
+
       utility = true
 
     },
 
     },
     level = 3,
+
     level = 9,
     name = "Dazzling Flash",
+
     name = "Death's Door",
 
     noise = {
 
     noise = {
       casting = 0,
+
       casting = 6,
 
       effect = 0
 
       effect = 0
 
     },
 
     },
     ["power cap"] = 50,
+
     ["power cap"] = 200,
    range = {
 
      max = 3,
 
      min = 2
 
    },
 
 
     schools = {
 
     schools = {
       Conjuration = true,
+
       Necromancy = true
      Hexes = true
 
 
     }
 
     }
 
   },
 
   },
   ["Death Channel"] = {
+
   Discord = {
 
     books = {
 
     books = {
       ["book of Unlife"] = true
+
       ["book of Chaos"] = true,
 +
      ["book of Hexes"] = true
 
     },
 
     },
     description = "Raises living creatures slain by the caster and their allies, reducing them to a state of spectral slavery.",
+
     description = "Drives nearby creatures into an insane frenzy, causing them to mercilessly attack anything and everything nearby with great strength and speed.",
 
     flags = {
 
     flags = {
       HELPFUL = true,
+
       area = true,
       UTILITY = true
+
       hasty = true,
 +
      WL_check = true
 
     },
 
     },
     level = 6,
+
     level = 8,
     name = "Death Channel",
+
     name = "Discord",
 
     noise = {
 
     noise = {
       casting = 5,
+
       casting = 6,
 
       effect = 0
 
       effect = 0
 
     },
 
     },
 
     ["power cap"] = 200,
 
     ["power cap"] = 200,
 
     schools = {
 
     schools = {
       Necromancy = true
+
       Hexes = true
 
     }
 
     }
 
   },
 
   },
   ["Death's Door"] = {
+
   Disjunction = {
 
     books = {
 
     books = {
       Necronomicon = true
+
       ["book of Chaos"] = true,
 +
      ["book of the Warp"] = true
 
     },
 
     },
     description = "Renders the caster nigh invulnerable to harm for a brief period, but brings them dangerously close to death in the process. So close, in fact, that the body believes itself to be dead — healing effects will do nothing.\n\nThe caster will receive one warning shortly before the spell expires. After expiry, the spell cannot immediately be recast, but with high power the caster will be left more resilient when the effect ends. It has no effect on those who are already undead.",
+
     description = "Destabilizes the space in a sphere around the caster for a while, causing anyone nearby to blink away from the caster. The chance of blinking depends on the distance from the caster, being nearly certain when directly adjacent. It causes magical contamination when cast.",
 
     flags = {
 
     flags = {
       EMERGENCY = true,
+
       escape = true,
       NO_GHOST = true,
+
       utility = true
      UTILITY = true
 
 
     },
 
     },
 
     level = 8,
 
     level = 8,
     name = "Death's Door",
+
     name = "Disjunction",
 
     noise = {
 
     noise = {
 
       casting = 6,
 
       casting = 6,
Line 604: Line 572:
 
     },
 
     },
 
     ["power cap"] = 200,
 
     ["power cap"] = 200,
 +
    range = {
 +
      max = 4,
 +
      min = 4
 +
    },
 
     schools = {
 
     schools = {
       Charms = true,
+
       Translocation = true
      Necromancy = true
 
 
     }
 
     }
 
   },
 
   },
   Discord = {
+
   ["Dispel Undead"] = {
 
     books = {
 
     books = {
       ["book of Hexes"] = true
+
       ["book of Decay"] = true,
 +
      ["book of Touch"] = true
 
     },
 
     },
     description = "Drives nearby creatures into an insane frenzy, causing them to mercilessly attack anything and everything nearby with great strength and speed.",
+
     description = "Harms an adjacent undead creature greatly by interfering with the forces binding it together.",
 
     flags = {
 
     flags = {
       AREA = true,
+
       dir_or_target = true,
       HASTY = true
+
       needs_tracer = true
 
     },
 
     },
     level = 8,
+
     level = 4,
     name = "Discord",
+
     name = "Dispel Undead",
 
     noise = {
 
     noise = {
       casting = 6,
+
       casting = 4,
 
       effect = 0
 
       effect = 0
 
     },
 
     },
     ["power cap"] = 200,
+
     ["power cap"] = 100,
 +
    range = {
 +
      max = 1,
 +
      min = 1
 +
    },
 
     schools = {
 
     schools = {
       Hexes = true
+
       Necromancy = true
 
     }
 
     }
 
   },
 
   },
   Disjunction = {
+
   Dispersal = {
 
     books = {
 
     books = {
       ["book of the Warp"] = true
+
       ["book of the Warp"] = true,
 +
      ["There-And-Back Book"] = true
 
     },
 
     },
     description = "Destabilizes the space in a sphere around the caster for a while, causing anyone nearby to blink away from the caster. The chance of blinking depends on the distance from the caster, being nearly certain when directly adjacent. It causes magical contamination when cast.",
+
     description = "Teleports away any creatures within a short distance of the caster. Any creature that resists the effect will still be irresistibly blinked a shorter distance, and any monster it affects at all has a chance of being confused by the warping of space.",
 
     flags = {
 
     flags = {
       ESCAPE = true,
+
       area = true,
       UTILITY = true
+
       escape = true
 
     },
 
     },
     level = 8,
+
     level = 6,
     name = "Disjunction",
+
     name = "Dispersal",
 
     noise = {
 
     noise = {
       casting = 6,
+
       casting = 5,
 
       effect = 0
 
       effect = 0
 
     },
 
     },
 
     ["power cap"] = 200,
 
     ["power cap"] = 200,
 +
    range = {
 +
      max = 4,
 +
      min = 1
 +
    },
 
     schools = {
 
     schools = {
 
       Translocation = true
 
       Translocation = true
 
     }
 
     }
 
   },
 
   },
   ["Dispel Undead"] = {
+
   ["Dragon Form"] = {
 
     books = {
 
     books = {
       ["book of Death"] = true
+
       ["book of the Dragon"] = true,
 +
      ["book of Transfigurations"] = true
 
     },
 
     },
     description = "Harms an adjacent undead creature greatly by interfering with the forces binding it together.",
+
     description = "{{[string \"db_embedded_lua\"]:4: attempt to index global 'you' (a nil value)}} The caster becomes able to deal incredible damage in melee combat, and they become much more robust, although their evasiveness is reduced.\n\nWhile transformed, any equipped weapons and armour are melded.",
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       chaotic = true,
       NEEDS_TRACER = true
+
       helpful = true,
 +
      utility = true
 
     },
 
     },
     level = 4,
+
     level = 7,
     name = "Dispel Undead",
+
     name = "Dragon Form",
 
     noise = {
 
     noise = {
       casting = 4,
+
       casting = 6,
       effect = 2
+
       effect = 0
 
     },
 
     },
     ["power cap"] = 100,
+
     ["power cap"] = 200,
     range = {
+
     schools = {
       max = 1,
+
       Transmutation = true
       min = 1
+
    }
 +
  },
 +
  ["Dragon's Call"] = {
 +
    books = {
 +
      ["book of the Dragon"] = true
 +
    },
 +
    description = "Issues a powerful call to a draconic realm, beckoning forth dragon after dragon to engage the summoner's enemies. The spell is taxing to maintain, and each new dragon which answers the call will further drain the summoner's magical reserves. After the call ends, it cannot be issued again for a short time. The duration of the call and the species of dragons called depend on spell power.",
 +
    flags = {},
 +
    level = 9,
 +
    name = "Dragon's Call",
 +
    noise = {
 +
      casting = 7,
 +
       effect = 15
 
     },
 
     },
 +
    ["power cap"] = 200,
 
     schools = {
 
     schools = {
       Necromancy = true
+
       Summoning = true
 
     }
 
     }
 
   },
 
   },
   Dispersal = {
+
   Enfeeble = {
 
     books = {
 
     books = {
       ["book of the Warp"] = true
+
       ["book of Maledictions"] = true,
 +
      ["book of Misfortune"] = true
 
     },
 
     },
     description = "Teleports away any creatures within a short distance of the caster. Any creature that resists the effect will still be irresistibly blinked a shorter distance, and any monster it affects at all has a chance of being confused by the warping of space.",
+
     description = "Overwhelms an enemy with malignant energies, irresistibly weakening their melee attacks and disrupting their magic. It will additionally daze and blind any foe that fails to resist the full force of the curse.",
 
     flags = {
 
     flags = {
       AREA = true,
+
       dir_or_target = true,
       ESCAPE = true
+
       needs_tracer = true,
 +
      WL_check = true
 
     },
 
     },
     level = 6,
+
     level = 7,
     name = "Dispersal",
+
     name = "Enfeeble",
 
     noise = {
 
     noise = {
       casting = 5,
+
       casting = 7,
 
       effect = 0
 
       effect = 0
 
     },
 
     },
 
     ["power cap"] = 200,
 
     ["power cap"] = 200,
 
     range = {
 
     range = {
       max = 4,
+
       max = 7,
       min = 1
+
       min = 7
 
     },
 
     },
 
     schools = {
 
     schools = {
       Translocation = true
+
       Hexes = true
 
     }
 
     }
 
   },
 
   },
   ["Dragon Form"] = {
+
   ["Ensorcelled Hibernation"] = {
 
     books = {
 
     books = {
       ["book of the Dragon"] = true,
+
       ["book of Burglary"] = true,
       ["book of Transfigurations"] = true
+
       ["book of Dreams"] = true
 
     },
 
     },
     description = "Transforms the caster into a mighty, fire-breathing dragon. The caster becomes highly resistant to fire and resistant to poison, but vulnerable to cold. The caster becomes able to deal incredible damage in melee combat, and they become much more robust, although their evasiveness is reduced.\n\nWhile transformed, any equipped weapons and armour are melded.",
+
     description = "Lowers its target's metabolic rate, inducing hibernation. After awakening, the target will be unable to be put to sleep again for some time.",
 
     flags = {
 
     flags = {
       CHAOTIC = true,
+
       dir_or_target = true,
       HELPFUL = true,
+
       needs_tracer = true,
       UTILITY = true
+
       not_self = true,
 +
      WL_check = true
 
     },
 
     },
     level = 7,
+
     level = 2,
     name = "Dragon Form",
+
     name = "Ensorcelled Hibernation",
 
     noise = {
 
     noise = {
       casting = 6,
+
       casting = 0,
 
       effect = 0
 
       effect = 0
 
     },
 
     },
     ["power cap"] = 200,
+
     ["power cap"] = 50,
 +
    range = {
 +
      max = 7,
 +
      min = 7
 +
    },
 
     schools = {
 
     schools = {
       Transmutation = true
+
       Hexes = true,
 +
      Ice = true
 
     }
 
     }
 
   },
 
   },
   ["Dragon's Call"] = {
+
   ["Eringya's Noxious Bog"] = {
 
     books = {
 
     books = {
       ["book of the Dragon"] = true
+
       ["Fen Folio"] = true,
 +
      ["Great Wizards, Vol. II"] = true
 +
    },
 +
    description = "Causes the caster to release a torrent of sludge that transforms nearby areas into a toxic bog. The sludge damages and poisons all monsters, even those resistant to poison. The bog cannot form on areas adjacent to multiple solid features, nor on areas that lack solid floor, like deep water or lava. The transformation is temporary and cannot be sustained out of the caster's sight. Spellpower will increase how long the bog lingers.",
 +
    flags = {
 +
      area = true,
 +
      no_ghost = true
 
     },
 
     },
    description = "Issues a powerful call to a draconic realm, beckoning forth dragon after dragon to engage the summoner's enemies. The spell is taxing to maintain, and each new dragon which answers the call will further drain the summoner's magical reserves. After the call ends, it cannot be issued again for a short time.",
+
     level = 6,
    flags = {},
+
     name = "Eringya's Noxious Bog",
     level = 9,
 
     name = "Dragon's Call",
 
 
     noise = {
 
     noise = {
       casting = 7,
+
       casting = 6,
       effect = 15
+
       effect = 0
 
     },
 
     },
 
     ["power cap"] = 200,
 
     ["power cap"] = 200,
     quote = "“This is where the dragons went.\n They lie...\n Not dead, not asleep. Not waiting, because waiting implies expectation.\n Possibly the word we're looking for here is...\n ...dormant.\n And although the space they occupy isn't like normal space, nevertheless\n  they are packed in tightly. Not a cubic inch there but is filled by a claw,\n  a talon, a scale, the tip of a tail, so the effect is like one of those\n  trick drawings and your eyeballs eventually realise that the space between\n  each dragon is, in fact, another dragon.\n They could put you in mind of a can of sardines, if you thought sardines\n  were huge and scaly and proud and arrogant.\n And presumably, somewhere, there's the key.”\n    -Terry Pratchett, “Guards! Guards!”. 1990.",
+
     range = {
 +
      max = 4,
 +
      min = 4
 +
    },
 
     schools = {
 
     schools = {
       Summoning = true
+
       Poison = true,
 +
      Transmutation = true
 
     }
 
     }
 
   },
 
   },
   ["Ensorcelled Hibernation"] = {
+
   ["Excruciating Wounds"] = {
 
     books = {
 
     books = {
       ["book of Dreams"] = true,
+
       ["book of Pain"] = true,
       ["book of Maledictions"] = true
+
       ["book of Weapons"] = true
 
     },
 
     },
     description = "Lowers its target's metabolic rate, inducing hibernation. After awakening, the target will be unable to be put to sleep again for some time.",
+
     description = "Temporarily infuses the weapon held by the caster with the essence of pain itself. It will not affect artefact weapons.\n\nWhile a weapon is infused it cannot be unwielded and casting spells is slightly more difficult.",
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       helpful = true
      WILL_CHECK = true,
 
      NEEDS_TRACER = true,
 
      NOT_SELF = true
 
 
     },
 
     },
     level = 2,
+
     level = 5,
     name = "Ensorcelled Hibernation",
+
     name = "Excruciating Wounds",
 
     noise = {
 
     noise = {
       casting = 0,
+
       casting = 5,
       effect = 2
+
       effect = 5
    },
 
    ["power cap"] = 56,
 
    quote = "“Sweet dreams are made of this; who am I to disagree?”\n    -Eurythmics, “Sweet Dreams (Are Made of This)”. 1983.",
 
    range = {
 
      max = 7,
 
      min = 7
 
 
     },
 
     },
 +
    ["power cap"] = 200,
 
     schools = {
 
     schools = {
       Hexes = true,
+
       Necromancy = true
      Ice = true
 
 
     }
 
     }
 
   },
 
   },
   ["Eringya's Noxious Bog"] = {
+
   ["Fire Storm"] = {
 
     books = {
 
     books = {
       ["book of Alchemy"] = true,
+
       ["book of Annihilations"] = true
      ["Fen Folio"] = true
 
 
     },
 
     },
     description = "Causes the caster to release a torrent of sludge, which transforms the dungeon into a toxic bog in the caster's wake. The sludge damages and poisons all monsters, even those resistant to poison. The sludge is temporary, cannot replace deep water or lava, and cannot be sustained out of the caster's sight. Spellpower will increase both the duration of the torrent and how long the sludge lingers.",
+
     description = "Calls forth a mighty storm of roaring flame directly onto the target, dealing damage in a large area and leaving behind short-lived fire vortices. A portion of its damage bypasses fire resistance.",
 
     flags = {
 
     flags = {
       SELFENCH = true
+
       area = true,
 +
      needs_tracer = true,
 +
      target = true
 
     },
 
     },
     level = 6,
+
     level = 9,
     name = "Eringya's Noxious Bog",
+
     name = "Fire Storm",
 
     noise = {
 
     noise = {
       casting = 2,
+
       casting = 9,
       effect = 0
+
       effect = 25
 
     },
 
     },
 
     ["power cap"] = 200,
 
     ["power cap"] = 200,
 +
    range = {
 +
      max = 5,
 +
      min = 5
 +
    },
 
     schools = {
 
     schools = {
       Poison = true,
+
       Conjuration = true,
       Transmutation = true
+
       Fire = true
 
     }
 
     }
 
   },
 
   },
   ["Excruciating Wounds"] = {
+
   Fireball = {
 
     books = {
 
     books = {
       ["book of Death"] = true
+
       ["book of Fire"] = true,
 +
      ["book of the Spheres"] = true
 
     },
 
     },
     description = "Temporarily infuses the weapon held by the caster with the essence of pain itself. It will not affect artefact weapons.",
+
     description = "Hurls an explosive ball of fire.",
 
     flags = {
 
     flags = {
       HELPFUL = true
+
       dir_or_target = true,
 +
      needs_tracer = true
 
     },
 
     },
 
     level = 5,
 
     level = 5,
     name = "Excruciating Wounds",
+
     name = "Fireball",
 
     noise = {
 
     noise = {
       casting = 4,
+
       casting = 5,
 
       effect = 15
 
       effect = 15
 
     },
 
     },
 
     ["power cap"] = 200,
 
     ["power cap"] = 200,
 +
    range = {
 +
      max = 5,
 +
      min = 5
 +
    },
 
     schools = {
 
     schools = {
       Charms = true,
+
       Conjuration = true,
       Necromancy = true
+
       Fire = true
 
     }
 
     }
 
   },
 
   },
   ["Fire Storm"] = {
+
   ["Flame Wave"] = {
 
     books = {
 
     books = {
       ["book of Annihilations"] = true
+
       ["book of Flames"] = true,
 +
      ["book of Scorching"] = true
 
     },
 
     },
     description = "Calls forth a mighty storm of roaring flame directly onto the target, dealing damage in a large area and leaving behind short-lived fire vortices. A portion of its damage bypasses fire resistance.",
+
     description = "Blasts the caster's surroundings with a wave of fire. If the caster maintains focus and supplies the spell with magical power (by waiting in place and not taking any other actions), more and larger flame waves will radiate outward.",
 
     flags = {
 
     flags = {
       AREA = true,
+
       area = true
      NEEDS_TRACER = true,
 
      TARGET = true
 
 
     },
 
     },
     level = 9,
+
     level = 4,
     name = "Fire Storm",
+
     name = "Flame Wave",
 
     noise = {
 
     noise = {
       casting = 9,
+
       casting = 0,
       effect = 25
+
       effect = 12
 
     },
 
     },
     ["power cap"] = 200,
+
     ["power cap"] = 100,
    quote = "“Some have said there is no subtlety to destruction. You know what? They're dead.”\n    -Jaya Ballard, task mage (Magic: the Gathering)",
 
 
     range = {
 
     range = {
       max = 5,
+
       max = 3,
       min = 5
+
       min = 3
 
     },
 
     },
 
     schools = {
 
     schools = {
Line 834: Line 846:
 
     }
 
     }
 
   },
 
   },
   Fireball = {
+
   Foxfire = {
 
     books = {
 
     books = {
      ["book of Fire"] = true,
 
 
       ["book of Flames"] = true
 
       ["book of Flames"] = true
 
     },
 
     },
     description = "Hurls an explosive ball of fire.",
+
     description = "Conjures two balls of burning swamp gas adjacent to the caster. The balls will rapidly seek the nearest monster and burn them. They will dissipate harmlessly if unable to reach a target or if the caster swaps places with them.",
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       selfench = true
      NEEDS_TRACER = true
 
 
     },
 
     },
    level = 5,
+
     level = 1,
    name = "Fireball",
+
     name = "Foxfire",
    noise = {
 
      casting = 5,
 
      effect = 15
 
    },
 
    ["power cap"] = 200,
 
    range = {
 
      max = 5,
 
      min = 5
 
    },
 
    schools = {
 
      Conjuration = true,
 
      Fire = true
 
    }
 
  },
 
  ["Foxfire"] = {
 
    books = {
 
      ["book of Flames"] = true,
 
      ["book of the Dragon"] = true
 
    },
 
    description = "Conjures two balls of burning swamp gas adjacent to the caster. The balls will rapidly seek the nearest monster and burn them. They will dissipate harmlessly if unable to reach a target or if the caster swaps places with them.",
 
    flags = {
 
      SELFENCH = true,
 
    },
 
     level = 1,
 
     name = "Foxfire",
 
 
     noise = {
 
     noise = {
 
       casting = 1,
 
       casting = 1,
       effect = 2
+
       effect = 1
 
     },
 
     },
 
     ["power cap"] = 25,
 
     ["power cap"] = 25,
Line 887: Line 872:
 
     description = "Freezes an adjacent creature, dealing damage that bypasses any armour the target may have. This may temporarily slow cold-blooded creatures.",
 
     description = "Freezes an adjacent creature, dealing damage that bypasses any armour the target may have. This may temporarily slow cold-blooded creatures.",
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       dir_or_target = true,
       NOT_SELF = true
+
       not_self = true
 
     },
 
     },
 
     level = 1,
 
     level = 1,
Line 907: Line 892:
 
   ["Freezing Cloud"] = {
 
   ["Freezing Cloud"] = {
 
     books = {
 
     books = {
       ["book of Clouds"] = true,
+
       ["book of Ice"] = true,
       ["book of Ice"] = true
+
       ["Trismegistus Codex"] = true
 
     },
 
     },
 
     description = "Conjures up a large cloud of lethally cold vapour.",
 
     description = "Conjures up a large cloud of lethally cold vapour.",
 
     flags = {
 
     flags = {
       AREA = true,
+
       area = true,
       CLOUD = true,
+
       cloud = true,
       NEEDS_TRACER = true,
+
       needs_tracer = true,
       TARGET = true
+
       target = true
 
     },
 
     },
 
     level = 5,
 
     level = 5,
Line 936: Line 921:
 
   ["Frozen Ramparts"] = {
 
   ["Frozen Ramparts"] = {
 
     books = {
 
     books = {
       ["book of Frost"] = true
+
       ["book of Frost"] = true,
 +
      ["book of Rime"] = true
 
     },
 
     },
     description = "Encases surrounding walls with ice for a short time. Victims that wander near the icy walls will be damaged, and this may temporarily slow cold-blooded creatures. The damage dealt bypasses any armour the target may have. Each victim is only ever affected by one icy wall at a time.",
+
     description = "Encases surrounding walls with ice for a short time as long as the caster refrains from moving. Victims that wander near the icy walls will be damaged, and this may temporarily slow cold-blooded creatures. The damage dealt bypasses any armour the target may have. Each victim is only ever affected by one icy wall at a time.\n\nThe caster and any allies can safely remain near icy walls. The ice will crack and fall away if the caster moves to a new position.",
 
     flags = {
 
     flags = {
       AREA = true,
+
       area = true,
       NO_GHOST = true
+
       no_ghost = true
 
     },
 
     },
 
     level = 3,
 
     level = 3,
Line 960: Line 946:
 
   ["Fulminant Prism"] = {
 
   ["Fulminant Prism"] = {
 
     books = {
 
     books = {
 +
      ["book of Blasting"] = true,
 
       ["book of Conjurations"] = true
 
       ["book of Conjurations"] = true
 
     },
 
     },
 
     description = "Conjures a prism which unleashes a violent explosion of arcane force after a short duration. The prism is extremely fragile and any damage caused to it may result in premature detonation.",
 
     description = "Conjures a prism which unleashes a violent explosion of arcane force after a short duration. The prism is extremely fragile and any damage caused to it may result in premature detonation.",
 
     flags = {
 
     flags = {
       AREA = true,
+
       area = true,
       NOT_SELF = true,
+
       not_self = true,
       TARGET = true
+
       target = true
 
     },
 
     },
 
     level = 4,
 
     level = 4,
Line 972: Line 959:
 
     noise = {
 
     noise = {
 
       casting = 4,
 
       casting = 4,
       effect = "0 (If it explodes: 15 for a weak explosion, 20 for a normal explosion) "
+
       effect = 0
 
     },
 
     },
 
     ["power cap"] = 200,
 
     ["power cap"] = 200,
Line 986: Line 973:
 
   ["Gell's Gravitas"] = {
 
   ["Gell's Gravitas"] = {
 
     books = {
 
     books = {
       ["book of Misfortune"] = true,
+
       ["book of Displacement"] = true,
       ["book of Spatial Translocations"] = true,
+
       ["There-And-Back Book"] = true
      ["book of the Warp"] = true
 
 
     },
 
     },
     description = "Briefly redirects gravity around a target point, causing 'down' to be towards that point. All nearby creatures, save the caster, fall helplessly toward that point typically colliding with each other, or with a victim standing there.",
+
     description = "Briefly redirects gravity around a target point, causing 'down' to be towards that point. All nearby creatures, save the caster, fall helplessly toward that point typically colliding with each other, or with a victim standing there.",
 
     flags = {
 
     flags = {
       NEEDS_TRACER = true,
+
       needs_tracer = true,
       NOT_SELF = true,
+
       not_self = true,
       TARGET = true
+
       target = true
 
     },
 
     },
 
     level = 3,
 
     level = 3,
Line 1,002: Line 988:
 
       effect = 0
 
       effect = 0
 
     },
 
     },
     ["power cap"] = 200,
+
     ["power cap"] = 100,
 
     range = {
 
     range = {
 
       max = 7,
 
       max = 7,
Line 1,011: Line 997:
 
     }
 
     }
 
   },
 
   },
   ["Hailstorm"] = {
+
   Hailstorm = {
 
     books = {
 
     books = {
       ["book of Frost"] = true
+
       ["book of Frost"] = true,
 +
      ["book of the Tundra"] = true
 
     },
 
     },
 
     description = "Conjures a cannonade of hail. The eye of the storm is wide enough that monsters adjacent to the caster are unaffected. Due to the strong impact and cutting edges a significant portion of its damage bypasses cold resistance.",
 
     description = "Conjures a cannonade of hail. The eye of the storm is wide enough that monsters adjacent to the caster are unaffected. Due to the strong impact and cutting edges a significant portion of its damage bypasses cold resistance.",
 
     flags = {
 
     flags = {
       AREA = true
+
       area = true
 
     },
 
     },
 
     level = 4,
 
     level = 4,
Line 1,023: Line 1,010:
 
     noise = {
 
     noise = {
 
       casting = 4,
 
       casting = 4,
       effect = 2
+
       effect = 0
 
     },
 
     },
 
     ["power cap"] = 100,
 
     ["power cap"] = 100,
 
     range = {
 
     range = {
 
       max = 3,
 
       max = 3,
       min = 2
+
       min = 3
 
     },
 
     },
 
     schools = {
 
     schools = {
Line 1,037: Line 1,024:
 
   Haunt = {
 
   Haunt = {
 
     books = {
 
     books = {
       Necronomicon = true
+
       ["book of Death"] = true
 
     },
 
     },
     description = "Calls wraiths and ghosts to haunt the caster's target. They will only attack the creature they are haunting, and will dissipate quickly once their target dies.",
+
     description = "Calls wraiths and ghosts to haunt the caster's target. They will only attack the creature they are haunting, and will dissipate quickly once their target dies. The number of spectres summoned increases with spell power.",
 
     flags = {
 
     flags = {
       MONS_ABJURE = true,
+
       mons_abjure = true,
       NOT_SELF = true,
+
       not_self = true,
       TARGET = true
+
       target = true
 
     },
 
     },
 
     level = 7,
 
     level = 7,
Line 1,059: Line 1,046:
 
       Necromancy = true,
 
       Necromancy = true,
 
       Summoning = true
 
       Summoning = true
    }
 
  },
 
  ["Hydra Form"] = {
 
    books = {
 
      ["book of Transfigurations"] = true,
 
      ["Fen Folio"] = true
 
    },
 
    description = "Transforms the caster into a many-headed hydra for a brief duration. Its many heads strike in all directions. Edible foes slain by the gnashing teeth are instantly devoured, reinvigorating the caster in their reptilian rampage. The caster gains innate armour and increased health, and becomes resistant to poison.\n\nWhile transformed, any equipped weapons and armour are melded. The form's number of heads is fixed upon casting the spell, and increases with power.",
 
    flags = {
 
      CHAOTIC = true,
 
      HELPFUL = true,
 
      UTILITY = true
 
    },
 
    level = 6,
 
    name = "Hydra Form",
 
    noise = {
 
      casting = 6,
 
      effect = 0
 
    },
 
    ["power cap"] = 200,
 
    schools = {
 
      Transmutation = true
 
 
     }
 
     }
 
   },
 
   },
 
   ["Ice Form"] = {
 
   ["Ice Form"] = {
 
     books = {
 
     books = {
       ["book of Changes"] = true,
+
       ["book of Rime"] = true,
       ["book of Ice"] = true
+
       ["book of the Tundra"] = true
 
     },
 
     },
     description = "Transforms the caster into a frozen ice-creature, light enough to float on water. The caster gains a freezing melee attack, and becomes incredibly resistant to cold and resistant to poison, but vulnerable to fire.",
+
     description = "Transforms the caster into a frozen ice-creature, light enough to float on water. The caster gains a freezing melee attack, and becomes incredibly resistant to cold and resistant to poison, but vulnerable to fire. High power increases the armour granted by this form.\n\nWhile transformed, any equipped weapons and armour are melded.",
 
     flags = {
 
     flags = {
       CHAOTIC = true,
+
       chaotic = true,
       HELPFUL = true,
+
       helpful = true,
       UTILITY = true
+
       utility = true
 
     },
 
     },
 
     level = 4,
 
     level = 4,
Line 1,108: Line 1,073:
 
   ["Ignite Poison"] = {
 
   ["Ignite Poison"] = {
 
     books = {
 
     books = {
       ["book of Alchemy"] = true,
+
       ["Everburning Encyclopedia"] = true,
       ["book of Fire"] = true
+
       ["Trismegistus Codex"] = true
 
     },
 
     },
 
     description = "Converts all nearby poison into liquid flame, burning poisoned creatures from within. It also turns clouds of poison and mephitic gases into flame. The caster is not affected directly.",
 
     description = "Converts all nearby poison into liquid flame, burning poisoned creatures from within. It also turns clouds of poison and mephitic gases into flame. The caster is not affected directly.",
 
     flags = {
 
     flags = {
       AREA = true
+
       area = true
 
     },
 
     },
 
     level = 3,
 
     level = 3,
Line 1,128: Line 1,093:
 
     }
 
     }
 
   },
 
   },
["Ignition"] = {
+
  Ignition = {
 
     books = {
 
     books = {
 
       ["book of Fire"] = true,
 
       ["book of Fire"] = true,
       ["book of the Tempests"] = true
+
       ["the Unrestrained Analects"] = true
 
     },
 
     },
 
     description = "All foes in the caster's surroundings are engulfed in balls of fire. The caster and their allies are protected from the fire and will never be harmed by this spell.",
 
     description = "All foes in the caster's surroundings are engulfed in balls of fire. The caster and their allies are protected from the fire and will never be harmed by this spell.",
 
     flags = {
 
     flags = {
       AREA = true
+
       area = true
 
     },
 
     },
 
     level = 8,
 
     level = 8,
 
     name = "Ignition",
 
     name = "Ignition",
 
     noise = {
 
     noise = {
       casting = 4,
+
       casting = 8,
 
       effect = 15
 
       effect = 15
 
     },
 
     },
Line 1,150: Line 1,115:
 
   Infestation = {
 
   Infestation = {
 
     books = {
 
     books = {
       Necronomicon = true
+
       ["book of Death"] = true
 
     },
 
     },
 
     description = "Calls forth a plague of scarabs, infesting affected creatures for a duration depending on power and causing death scarabs to grow and burst from them upon death.",
 
     description = "Calls forth a plague of scarabs, infesting affected creatures for a duration depending on power and causing death scarabs to grow and burst from them upon death.",
 
     flags = {
 
     flags = {
       TARGET = true,
+
       target = true,
       UNCLEAN = true
+
       unclean = true
 
     },
 
     },
 
     level = 8,
 
     level = 8,
Line 1,170: Line 1,135:
 
     schools = {
 
     schools = {
 
       Necromancy = true
 
       Necromancy = true
    }
 
  },
 
  Infusion = {
 
    books = {
 
      ["book of Battle"] = true
 
    },
 
    description = "Infuses the caster's melee attacks with magic, drawing from their reserves of magical energy to deal additional damage whenever an enemy is hit. It has no effect when the caster's magic is depleted.",
 
    flags = {
 
      UTILITY = true
 
    },
 
    level = 1,
 
    name = "Infusion",
 
    noise = {
 
      casting = 1,
 
      effect = 0
 
    },
 
    ["power cap"] = 25,
 
    schools = {
 
      Charms = true
 
 
     }
 
     }
 
   },
 
   },
 
   ["Inner Flame"] = {
 
   ["Inner Flame"] = {
 
     books = {
 
     books = {
       ["book of Debilitation"] = true,
+
       ["book of Flames"] = true,
       ["book of Flames"] = true
+
       ["book of Hexes"] = true
 
     },
 
     },
     description = "Fills an enemy with an intense fire, to be explosively released upon death. This fire is released any time the target is hit, and explosively released upon death. The size of the explosion caused is dependent on the size of the target.",
+
     description = "Fills an enemy with an intense fire. This fire is released any time the target is hit, and explosively released upon death. The size of the explosion caused is dependent on the size of the target.",
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       not_self = true,
       WILL_CHECK = true,
+
       target = true,
       NEUTRAL = true,
+
       WL_check = true
      NOT_SELF = true
 
 
     },
 
     },
 
     level = 3,
 
     level = 3,
Line 1,207: Line 1,152:
 
     noise = {
 
     noise = {
 
       casting = 3,
 
       casting = 3,
       effect = "0 (15 or 20 when the monster explodes, depends on the size of the monster)"
+
       effect = 0
 
     },
 
     },
     ["power cap"] = 200,
+
     ["power cap"] = 100,
 
     range = {
 
     range = {
 
       max = 7,
 
       max = 7,
Line 1,215: Line 1,160:
 
     },
 
     },
 
     schools = {
 
     schools = {
       Hexes = true,
+
       Fire = true,
       Fire = true
+
       Hexes = true
 
     }
 
     }
 
   },
 
   },
   Invisibility = {
+
   ["Iron Shot"] = {
 
     books = {
 
     books = {
       ["book of Burglary"] = true,
+
       ["book of Iron"] = true,
       ["book of Party Tricks"] = true
+
       ["book of Power"] = true
 
     },
 
     },
     description = "Turns a targeted creature invisible. Turning invisible causes magical contamination and may eventually cause glowing, nullifying the invisibility.",
+
     description = "Hurls a large and heavy metal shot.",
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       dir_or_target = true,
       EMERGENCY = true,
+
       needs_tracer = true
      HELPFUL = true,
 
      NEEDS_TRACER = true,
 
      SELFENCH = true
 
 
     },
 
     },
 
     level = 6,
 
     level = 6,
     name = "Invisibility",
+
     name = "Iron Shot",
 
     noise = {
 
     noise = {
       casting = 0,
+
       casting = 6,
       effect = 0
+
       effect = 6
    },
 
    ["power cap"] = 50,
 
    range = {
 
      max = 7,
 
      min = 7
 
    },
 
    schools = {
 
      Hexes = true
 
    }
 
  },
 
  ["Iron Shot"] = {
 
    books = {
 
      ["book of Power"] = true,
 
      ["book of the Earth"] = true
 
    },
 
    description = "Hurls a large and heavy metal shot.",
 
    flags = {
 
      DIR_OR_TARGET = true,
 
      NEEDS_TRACER = true
 
    },
 
    level = 6,
 
    name = "Iron Shot",
 
    noise = {
 
      casting = 6,
 
      effect = 2
 
 
     },
 
     },
 
     ["power cap"] = 200,
 
     ["power cap"] = 200,
Line 1,278: Line 1,195:
 
       ["book of Transfigurations"] = true
 
       ["book of Transfigurations"] = true
 
     },
 
     },
     description = "Transmutes an ultra-thin layer of the caster's skin (or equivalent) directly into pure magical energy, blasting adjacent creatures and bypassing any armour they may have. It heavily deforms its targets, weakening them and reducing their armour. The caster is not left entirely unaffected; some of the magic lingers, enough to leave them dangerously contaminated after a few castings.",
+
     description = "Transmutes an ultra-thin layer of the caster's skin (or equivalent) directly into pure magical energy, blasting adjacent creatures. It heavily deforms its targets, weakening them and reducing their armour. The caster is not left entirely unaffected; some of the magic lingers, enough to leave them dangerously contaminated after a few castings.",
 
     flags = {
 
     flags = {
       AREA = true,
+
       area = true,
       CHAOTIC = true
+
       chaotic = true
 
     },
 
     },
 
     level = 5,
 
     level = 5,
Line 1,290: Line 1,207:
 
     },
 
     },
 
     ["power cap"] = 200,
 
     ["power cap"] = 200,
    quote = "“Reflex in the sky warn you you're gonna die\n Storm coming, you'd better hide from the atomic tide\n Flashes in the sky turns houses into sties\n Turns people into clay, radiation minds decay”\n    -Black Sabbath, “Electric Funeral”. 1970.",
 
 
     range = {
 
     range = {
 
       max = 1,
 
       max = 1,
Line 1,302: Line 1,218:
 
   ["Iskenderun's Battlesphere"] = {
 
   ["Iskenderun's Battlesphere"] = {
 
     books = {
 
     books = {
       ["book of Power"] = true
+
       ["book of Power"] = true,
 +
      ["book of the Spheres"] = true
 
     },
 
     },
     description = "Conjures a small globe of magical energy linked to the caster's own magical reserves. While the battlesphere cannot take independent action, it will fire volleys of energy at the caster's enemies in sync with its creator's own destructive conjurations. With increasing power, the battlesphere lasts longer and deals more damage per volley.",
+
     description = "Conjures a small globe of magical energy. Each time its creator casts a destructive Conjuration, the battlesphere will launch its own volley of energy at a random foe. With increasing power, the battlesphere lasts longer and deals more damage per volley.",
 
     flags = {
 
     flags = {
       UTILITY = true
+
       utility = true
 
     },
 
     },
 
     level = 5,
 
     level = 5,
Line 1,315: Line 1,232:
 
     },
 
     },
 
     ["power cap"] = 100,
 
     ["power cap"] = 100,
    quote = "“Maxim 4: Close air support covereth a multitude of sins.”\n    -Howard Tayler, _The Seventy Maxims of Maximally Effective Mercenaries_,\n    in _Schlock Mercenary_. 2008.",
 
 
     schools = {
 
     schools = {
      Charms = true,
 
 
       Conjuration = true
 
       Conjuration = true
 
     }
 
     }
Line 1,323: Line 1,238:
 
   ["Iskenderun's Mystic Blast"] = {
 
   ["Iskenderun's Mystic Blast"] = {
 
     books = {
 
     books = {
       ["book of Conjurations"] = true
+
       ["book of Blasting"] = true,
 +
      ["book of Spectacle"] = true
 
     },
 
     },
 
     description = "Detonates a crackling sphere of destructive energy. The explosion will hit all nearby monsters with physical force, knocking them back if damage is done.",
 
     description = "Detonates a crackling sphere of destructive energy. The explosion will hit all nearby monsters with physical force, knocking them back if damage is done.",
 
     flags = {
 
     flags = {
       AREA = true
+
       area = true
 
     },
 
     },
 
     level = 4,
 
     level = 4,
Line 1,347: Line 1,263:
 
   ["Leda's Liquefaction"] = {
 
   ["Leda's Liquefaction"] = {
 
     books = {
 
     books = {
       ["book of Debilitation"] = true,
+
       ["book of the Earth"] = true,
       ["book of the Earth"] = true
+
       ["book of the Hunter"] = true
 
     },
 
     },
 
     description = "Liquefies the ground around the caster, making it difficult to move through. Any movement through liquefied ground will be slowed, and creatures stuck in the liquefied ground will be unable to fly. Attempts to attack the caster in melee may fail.\n\nThe effect starts out with a radius depending on power, which will then shrink, eventually covering only the caster, before it times out. Maintaining the connection to the ground slows the caster's movement, even if they are flying.",
 
     description = "Liquefies the ground around the caster, making it difficult to move through. Any movement through liquefied ground will be slowed, and creatures stuck in the liquefied ground will be unable to fly. Attempts to attack the caster in melee may fail.\n\nThe effect starts out with a radius depending on power, which will then shrink, eventually covering only the caster, before it times out. Maintaining the connection to the ground slows the caster's movement, even if they are flying.",
 
     flags = {
 
     flags = {
       AREA = true
+
       area = true
 
     },
 
     },
 
     level = 4,
 
     level = 4,
Line 1,368: Line 1,284:
 
   ["Lee's Rapid Deconstruction"] = {
 
   ["Lee's Rapid Deconstruction"] = {
 
     books = {
 
     books = {
       ["book of Burglary"] = true,
+
       ["book of Blasting"] = true,
       ["book of Geomancy"] = true
+
       ["book of the Earth"] = true
 
     },
 
     },
 
     description = "Fragments a wall or a suitably brittle visible monster into an explosion of deadly shrapnel. It can be used on monsters made of ice, bone, or any wall-like substance, as well as those turned to stone by petrification. Its damage is strongly reduced by armour.\n\nTargets made from rock, stone, ice or bone will cause a small explosion. Metal targets will cause a small but more damaging explosion, and targets made from crystal will cause a large and more damaging explosion.",
 
     description = "Fragments a wall or a suitably brittle visible monster into an explosion of deadly shrapnel. It can be used on monsters made of ice, bone, or any wall-like substance, as well as those turned to stone by petrification. Its damage is strongly reduced by armour.\n\nTargets made from rock, stone, ice or bone will cause a small explosion. Metal targets will cause a small but more damaging explosion, and targets made from crystal will cause a large and more damaging explosion.",
 
     flags = {
 
     flags = {
       TARGET = true
+
       target = true
 
     },
 
     },
 
     level = 5,
 
     level = 5,
Line 1,382: Line 1,298:
 
     },
 
     },
 
     ["power cap"] = 200,
 
     ["power cap"] = 200,
    quote = "“Now the house was full of men and women; and all the lords of the Philistines were there; and there were upon the roof about three thousand men and women, that beheld while Samson made sport.\n\nAnd Samson called unto the LORD, and said, O Lord GOD, remember me, I pray thee, and strengthen me, I pray thee, only this once, O God, that I may be at once avenged of the Philistines for my two eyes.\n\nAnd Samson said, Let me die with the Philistines. And he bowed himself with all his might; and the house fell upon the lords, and upon all the people that were therein. So the dead which he slew at his death were more than they which he slew in his life.”\n    -KJV Bible, Judges 16:28-30.",
 
 
     range = {
 
     range = {
 
       max = 7,
 
       max = 7,
Line 1,393: Line 1,308:
 
   ["Lehudib's Crystal Spear"] = {
 
   ["Lehudib's Crystal Spear"] = {
 
     books = {
 
     books = {
       ["book of Annihilations"] = true
+
       ["book of Armaments"] = true,
 +
      ["book of the Moon"] = true
 
     },
 
     },
 
     description = "Hurls a lethally sharp shard of crystal.",
 
     description = "Hurls a lethally sharp shard of crystal.",
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       dir_or_target = true,
       NEEDS_TRACER = true
+
       needs_tracer = true
 
     },
 
     },
 
     level = 8,
 
     level = 8,
Line 1,404: Line 1,320:
 
     noise = {
 
     noise = {
 
       casting = 8,
 
       casting = 8,
       effect = 0
+
       effect = 8
 
     },
 
     },
 
     ["power cap"] = 200,
 
     ["power cap"] = 200,
Line 1,418: Line 1,334:
 
   ["Lesser Beckoning"] = {
 
   ["Lesser Beckoning"] = {
 
     books = {
 
     books = {
       ["book of Party Tricks"] = true,
+
       ["book of Displacement"] = true,
 
       ["book of Spatial Translocations"] = true
 
       ["book of Spatial Translocations"] = true
 
     },
 
     },
 
     description = "Beckons the target forward, attempting to place them adjacent to the caster.",
 
     description = "Beckons the target forward, attempting to place them adjacent to the caster.",
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       dir_or_target = true,
       NEEDS_TRACER = true,
+
       needs_tracer = true,
       NOT_SELF = true
+
       not_self = true
 
     },
 
     },
 
     level = 3,
 
     level = 3,
Line 1,433: Line 1,349:
 
       effect = 0
 
       effect = 0
 
     },
 
     },
     ["power cap"] = 200,
+
     ["power cap"] = 100,
 
     range = {
 
     range = {
       max = 7,
+
       max = 5,
 
       min = 2
 
       min = 2
 
     },
 
     },
Line 1,444: Line 1,360:
 
   ["Lightning Bolt"] = {
 
   ["Lightning Bolt"] = {
 
     books = {
 
     books = {
       ["book of Air"] = true,
+
       ["book of Lightning"] = true,
      ["book of the Tempests"] = true,
 
 
       ["book of Storms"] = true
 
       ["book of Storms"] = true
 
     },
 
     },
     description = "Fires a mighty bolt of lightning. It inflicts less damage than other similar bolts, but its damage partially bypasses armour and it can be bounced off walls to hit targets twice.",
+
     description = "Fires a mighty bolt of lightning. Its damage partially bypasses armour and it can be bounced off walls to hit targets twice.",
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       dir_or_target = true,
       NEEDS_TRACER = true
+
       needs_tracer = true
 
     },
 
     },
 
     level = 5,
 
     level = 5,
Line 1,476: Line 1,391:
 
     description = "Fires a small bolt of magical energy which never misses.",
 
     description = "Fires a small bolt of magical energy which never misses.",
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       dir_or_target = true,
       NEEDS_TRACER = true
+
       needs_tracer = true
 
     },
 
     },
 
     level = 1,
 
     level = 1,
Line 1,483: Line 1,398:
 
     noise = {
 
     noise = {
 
       casting = 1,
 
       casting = 1,
       effect = 0
+
       effect = 1
 
     },
 
     },
 
     ["power cap"] = 25,
 
     ["power cap"] = 25,
Line 1,492: Line 1,407:
 
     schools = {
 
     schools = {
 
       Conjuration = true
 
       Conjuration = true
 +
    }
 +
  },
 +
  ["Malign Gateway"] = {
 +
    books = {
 +
      ["Grand Grimoire"] = true
 +
    },
 +
    description = "Tears a gash in reality, creating a self-sustained but temporary portal to an unknown, tainted otherworld. It requires open space to succeed. After a short time, a powerful clawed tentacle will reach through the portal, remaining bound to the caster's will for a duration depending on power. With the portal's expiry, the tentacle will be severed and turn on the caster. The duration of the portal increases with spell power.",
 +
    flags = {
 +
      chaotic = true,
 +
      unholy = true
 +
    },
 +
    level = 7,
 +
    name = "Malign Gateway",
 +
    noise = {
 +
      casting = 6,
 +
      effect = 0
 +
    },
 +
    ["power cap"] = 200,
 +
    schools = {
 +
      Summoning = true,
 +
      Translocation = true
 
     }
 
     }
 
   },
 
   },
Line 1,499: Line 1,435:
 
       ["Inescapable Atlas"] = true
 
       ["Inescapable Atlas"] = true
 
     },
 
     },
     description = "Launches melee attacks against multiple visible enemies, warping space into paradoxical configurations to allow one swing to be in many places. The effect is too imprecise to allow stabbing unsuspecting foes.",
+
     description = "Warps space into paradoxical configurations in order to strike many visible targets with one melee attack. The effect is too imprecise to allow stabbing unsuspecting foes. At high power, it can be used to strike more enemies at once.",
 
     flags = {
 
     flags = {
       NO_GHOST = true
+
       no_ghost = true
 
     },
 
     },
 
     level = 5,
 
     level = 5,
Line 1,511: Line 1,447:
 
     ["power cap"] = 100,
 
     ["power cap"] = 100,
 
     schools = {
 
     schools = {
      Translocation = true
 
    }
 
  },
 
  ["Malign Gateway"] = {
 
    books = {
 
      ["Grand Grimoire"] = true
 
    },
 
    description = "Tears a gash in reality, creating a self-sustained but temporary portal to an unknown, tainted otherworld. It requires open space to succeed. After a short time, a powerful clawed tentacle will reach through the portal, remaining bound to the caster's will for a duration depending on power. With the portal's expiry, the tentacle will be severed and turn on the caster.",
 
    flags = {
 
      CHAOTIC = true,
 
      UNHOLY = true
 
    },
 
    level = 7,
 
    name = "Malign Gateway",
 
    noise = {
 
      casting = 6,
 
      effect = 0
 
    },
 
    ["power cap"] = 200,
 
    schools = {
 
      Summoning = true,
 
 
       Translocation = true
 
       Translocation = true
 
     }
 
     }
Line 1,540: Line 1,455:
 
       ["book of the Sky"] = true
 
       ["book of the Sky"] = true
 
     },
 
     },
     description = "Gradually builds up electric charge in the caster. When a critical threshold is reached the charge couples with the nearest foe, vapourizing them instantly. The resulting charge is so intense it bypasses even electrical immunity.",
+
     description = "Gradually builds up electric charge in the caster, so long as they maintain focus (by waiting in place and not taking any other actions). When a threshold is reached, the charge couples with the nearest foe, vaporising them instantly. Higher spell power will allow the caster to accumulate charge more rapidly.",
 
     flags = {
 
     flags = {
       NO_GHOST = true
+
       no_ghost = true
 
     },
 
     },
 
     level = 8,
 
     level = 8,
Line 1,552: Line 1,467:
 
     ["power cap"] = 200,
 
     ["power cap"] = 200,
 
     range = {
 
     range = {
       max = 5,
+
       max = 7,
       min = 5
+
       min = 7
 
     },
 
     },
 
     schools = {
 
     schools = {
Line 1,561: Line 1,476:
 
   ["Mephitic Cloud"] = {
 
   ["Mephitic Cloud"] = {
 
     books = {
 
     books = {
       ["book of Clouds"] = true,
+
       ["book of Minor Magic"] = true,
       ["book of Minor Magic"] = true
+
       ["Trismegistus Codex"] = true
 
     },
 
     },
     description = "Conjures up a short-lived cloud of noxious fumes, which may cause confusion.",
+
     description = "Conjures up a short-lived cloud of noxious fumes, which may cause confusion in any creature not resistant to poison. Tougher, more experienced creatures are less likely to be affected.",
 
     flags = {
 
     flags = {
       AREA = true,
+
       area = true,
       CLOUD = true,
+
       cloud = true,
       DIR_OR_TARGET = true,
+
       dir_or_target = true,
       NEEDS_TRACER = true
+
       needs_tracer = true
 
     },
 
     },
 
     level = 3,
 
     level = 3,
Line 1,590: Line 1,505:
 
   ["Metabolic Englaciation"] = {
 
   ["Metabolic Englaciation"] = {
 
     books = {
 
     books = {
       ["book of Ice"] = true,
+
       ["book of Sloth"] = true,
       ["book of Misfortune"] = true
+
       ["book of Winter"] = true
 
     },
 
     },
     description = "Lowers the metabolic rate of every creature in the caster's vicinity, slowing all those who are not resistant to cold. Those especially vulnerable to cold will be affected much more strongly, and tougher creatures will be slowed for a shorter time.",
+
     description = "Lowers the metabolic rate of every creature in the caster's vicinity, slowing all those who are not resistant to cold. Cold-blooded creatures will be affected much more strongly, and tougher creatures will be slowed for a shorter time.",
 
     flags = {
 
     flags = {
       AREA = true
+
       area = true
 
     },
 
     },
 
     level = 5,
 
     level = 5,
Line 1,611: Line 1,526:
 
   ["Monstrous Menagerie"] = {
 
   ["Monstrous Menagerie"] = {
 
     books = {
 
     books = {
       ["Grand Grimoire"] = true
+
       ["book of Beasts"] = true
 
     },
 
     },
 
     description = "Summons a powerful exotic creature to the caster's aid: a manticore, a lindwurm, or, at high power, even a sphinx. Casting the spell at higher power also increases the strength of the beasts themselves.",
 
     description = "Summons a powerful exotic creature to the caster's aid: a manticore, a lindwurm, or, at high power, even a sphinx. Casting the spell at higher power also increases the strength of the beasts themselves.",
 
     flags = {
 
     flags = {
       MONS_ABJURE = true
+
       mons_abjure = true
 
     },
 
     },
 
     level = 7,
 
     level = 7,
Line 1,626: Line 1,541:
 
     schools = {
 
     schools = {
 
       Summoning = true
 
       Summoning = true
     },
+
     }
    ["summons limit"] = 3
 
 
   },
 
   },
 
   Necromutation = {
 
   Necromutation = {
Line 1,633: Line 1,547:
 
       Necronomicon = true
 
       Necronomicon = true
 
     },
 
     },
     description = "Transforms the caster into a lich — a powerful skeletal figure. The caster becomes more resistant to cold and hostile enchantments and completely immune to poison, rotting, negative energy and torment, and requires no food at all for the duration of the spell. The caster's necromancy spells are increased in power, and they gain a draining melee attack. The caster also gains some of the more dubious benefits of having an undead body, such as a vulnerability to holy damage and Dispel Undead, and an inability to consume potions.",
+
     description = "Transforms the caster into a lich — a powerful skeletal figure. The caster becomes stronger-willed, more resistant to cold and completely immune to poison, miasma, negative energy, and torment for the duration of the spell. The caster's necromancy spells are increased in power, and they gain a draining melee attack. The caster also gains some of the more dubious benefits of having an undead body, such as a vulnerability to holy damage and Dispel Undead, and an inability to consume potions.",
 
     flags = {
 
     flags = {
       CHAOTIC = true,
+
       chaotic = true,
       HELPFUL = true
+
       helpful = true
 
     },
 
     },
 
     level = 8,
 
     level = 8,
Line 1,652: Line 1,566:
 
   ["Olgreb's Toxic Radiance"] = {
 
   ["Olgreb's Toxic Radiance"] = {
 
     books = {
 
     books = {
 +
      ["the Unrestrained Analects"] = true,
 
       ["Young Poisoner's Handbook"] = true
 
       ["Young Poisoner's Handbook"] = true
 
     },
 
     },
     description = "Causes the caster to radiate toxic energy, continuously inflicting poison on everything nearby for as long as the spell lasts.",
+
     description = "Causes the caster to radiate toxic energy, continuously inflicting poison on everything in line of sight for as long as the spell lasts.",
 
     flags = {
 
     flags = {
       AREA = true
+
       area = true
 
     },
 
     },
 
     level = 4,
 
     level = 4,
Line 1,671: Line 1,586:
 
   ["Orb of Destruction"] = {
 
   ["Orb of Destruction"] = {
 
     books = {
 
     books = {
       ["book of Power"] = true
+
       ["book of Dangerous Friends"] = true,
 +
      ["book of the Spheres"] = true
 
     },
 
     },
 
     description = "Conjures an orb made of pure destructive magic. Compared to most other projectiles, these orbs travel at a relatively slow pace. The orbs home onto their targets, yet because of their huge inertia, especially agile opponents may be able to outmanoeuvre them. The orbs need some time to stabilize, and a nascent orb will deal reduced damage.\n\nResidents of the dungeon are able to maintain the orb until it impacts a target, but when cast by you the orb will dissipate upon leaving your line of sight.",
 
     description = "Conjures an orb made of pure destructive magic. Compared to most other projectiles, these orbs travel at a relatively slow pace. The orbs home onto their targets, yet because of their huge inertia, especially agile opponents may be able to outmanoeuvre them. The orbs need some time to stabilize, and a nascent orb will deal reduced damage.\n\nResidents of the dungeon are able to maintain the orb until it impacts a target, but when cast by you the orb will dissipate upon leaving your line of sight.",
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       dir_or_target = true,
       NEEDS_TRACER = true,
+
       needs_tracer = true,
       NOT_SELF = true
+
       not_self = true
 
     },
 
     },
 
     level = 7,
 
     level = 7,
Line 1,696: Line 1,612:
 
   ["Ozocubu's Armour"] = {
 
   ["Ozocubu's Armour"] = {
 
     books = {
 
     books = {
       ["book of Battle"] = true,
+
       ["book of Winter"] = true,
       ["book of Frost"] = true
+
       ["Ozocubu's Autobiography"] = true
 
     },
 
     },
     description = "Envelops the caster's body in a protective layer of thick ice, granting a substantial bonus to armour as long as they remain in their current location. The ice will crack and fall away if the caster moves to a new position. The spell will not function for casters already wearing heavy armour (any body armour with an encumbrance rating of 5 or more).",
+
     description = "Envelops the caster's body in a protective layer of thick ice, granting a substantial bonus to armour as long as they remain in their current location. The ice will crack and fall away if the caster moves to a new position. The spell decreases in effectiveness in heavier armour, granting a lower bonus the higher the encumbrance rating of the caster's armour.",
 
     flags = {
 
     flags = {
       NO_GHOST = true
+
       no_ghost = true
 
     },
 
     },
 
     level = 3,
 
     level = 3,
Line 1,711: Line 1,627:
 
     ["power cap"] = 100,
 
     ["power cap"] = 100,
 
     schools = {
 
     schools = {
      Charms = true,
 
 
       Ice = true
 
       Ice = true
 
     }
 
     }
Line 1,717: Line 1,632:
 
   ["Ozocubu's Refrigeration"] = {
 
   ["Ozocubu's Refrigeration"] = {
 
     books = {
 
     books = {
       ["book of Ice"] = true
+
       ["Ozocubu's Autobiography"] = true,
 +
      ["the Unrestrained Analects"] = true
 
     },
 
     },
 
     description = "Drains heat from the caster and their surroundings, causing harm to all creatures not resistant to cold and bypassing any armour the targets may have. It prevents the caster from using potions for a brief duration.",
 
     description = "Drains heat from the caster and their surroundings, causing harm to all creatures not resistant to cold and bypassing any armour the targets may have. It prevents the caster from using potions for a brief duration.",
 
     flags = {
 
     flags = {
       AREA = true
+
       area = true
 
     },
 
     },
 
     level = 7,
 
     level = 7,
Line 1,736: Line 1,652:
 
   Pain = {
 
   Pain = {
 
     books = {
 
     books = {
       ["book of Necromancy"] = true
+
       ["book of Necromancy"] = true,
 +
      ["book of Pain"] = true
 
     },
 
     },
 
     description = "Inflicts an extremely painful injury upon one living creature. The caster suffers minor damage from the backlash.",
 
     description = "Inflicts an extremely painful injury upon one living creature. The caster suffers minor damage from the backlash.",
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       dir_or_target = true,
       WILL_CHECK = true,
+
       needs_tracer = true,
       NEEDS_TRACER = true
+
       WL_check = true
 
     },
 
     },
 
     level = 1,
 
     level = 1,
Line 1,761: Line 1,678:
 
   ["Passage of Golubria"] = {
 
   ["Passage of Golubria"] = {
 
     books = {
 
     books = {
       ["book of Burglary"] = true,
+
       ["book of the Moon"] = true,
       ["book of Spatial Translocations"] = true
+
       ["Great Wizards, Vol. VII"] = true
 
     },
 
     },
 
     description = "Opens two gateways (one always near the caster), which allow instantaneous transport to random other open gateways to any creature entering them. There is no limit to the number of gateways that can be open at one time, but a gateway will close when entered, or after a moderate amount of time.",
 
     description = "Opens two gateways (one always near the caster), which allow instantaneous transport to random other open gateways to any creature entering them. There is no limit to the number of gateways that can be open at one time, but a gateway will close when entered, or after a moderate amount of time.",
 
     flags = {
 
     flags = {
       ESCAPE = true,
+
       escape = true,
       NEUTRAL = true,
+
       neutral = true,
       SELFENCH = true,
+
       selfench = true,
       TARGET = true
+
       target = true
 
     },
 
     },
 
     level = 4,
 
     level = 4,
Line 1,777: Line 1,694:
 
       effect = 8
 
       effect = 8
 
     },
 
     },
     ["power cap"] = 0,
+
     ["power cap"] = 100,
 
     range = {
 
     range = {
 
       max = 7,
 
       max = 7,
       min = 7
+
       min = 2
 
     },
 
     },
 
     schools = {
 
     schools = {
Line 1,793: Line 1,710:
 
     description = "Tunes the caster's body such that it can instantly pass through solid rock. It takes some time for the caster to attune to the rock, during which they will be helpless.",
 
     description = "Tunes the caster's body such that it can instantly pass through solid rock. It takes some time for the caster to attune to the rock, during which they will be helpless.",
 
     flags = {
 
     flags = {
       DIR = true,
+
       escape = true,
       ESCAPE = true,
+
       not_self = true,
       NOT_SELF = true,
+
       target = true,
       UTILITY = true
+
       utility = true
 
     },
 
     },
 
     level = 2,
 
     level = 2,
Line 1,805: Line 1,722:
 
     },
 
     },
 
     ["power cap"] = 120,
 
     ["power cap"] = 120,
    quote = "“He says the best way out is always through.”\n    -Robert Frost, _A Servant to Servants_. 1915.",
 
 
     range = {
 
     range = {
 
       max = 7,
 
       max = 7,
Line 1,818: Line 1,734:
 
     books = {
 
     books = {
 
       ["book of Alchemy"] = true,
 
       ["book of Alchemy"] = true,
       ["book of Geomancy"] = true,
+
       ["book of Sloth"] = true
      ["book of Misfortune"] = true
 
 
     },
 
     },
 
     description = "Petrifies a targeted creature. If successful, the target is slowed down for a while until it is temporarily turned into stone. In this state, the target will take less damage upon being hit.",
 
     description = "Petrifies a targeted creature. If successful, the target is slowed down for a while until it is temporarily turned into stone. In this state, the target will take less damage upon being hit.",
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       dir_or_target = true,
       WILL_CHECK = true,
+
       needs_tracer = true,
       NEEDS_TRACER = true
+
       WL_check = true
 
     },
 
     },
 
     level = 4,
 
     level = 4,
Line 1,833: Line 1,748:
 
       effect = 0
 
       effect = 0
 
     },
 
     },
     ["power cap"] = 50,
+
     ["power cap"] = 100,
 
     range = {
 
     range = {
 
       max = 7,
 
       max = 7,
Line 1,845: Line 1,760:
 
   ["Poisonous Vapours"] = {
 
   ["Poisonous Vapours"] = {
 
     books = {
 
     books = {
       ["book of Clouds"] = true,
+
       ["book of Vapours"] = true,
 
       ["Young Poisoner's Handbook"] = true
 
       ["Young Poisoner's Handbook"] = true
 
     },
 
     },
     description = "Turns the air around a targeted creature poisonous. Exceedingly little poison is created, generally just enough to poison the target before dispersing.",
+
     description = "Turns the air around a targeted creature toxic, directly inflicting poison on the target before dispersing.",
 
     flags = {
 
     flags = {
       NOT_SELF = true,
+
       not_self = true,
       TARGET = true
+
       target = true
 
     },
 
     },
 
     level = 2,
 
     level = 2,
Line 1,857: Line 1,772:
 
     noise = {
 
     noise = {
 
       casting = 2,
 
       casting = 2,
       effect = 4
+
       effect = 0
 
     },
 
     },
 
     ["power cap"] = 50,
 
     ["power cap"] = 50,
Line 1,873: Line 1,788:
 
       ["book of Ice"] = true
 
       ["book of Ice"] = true
 
     },
 
     },
     description = "Turns the air around the caster into a freezing vortex, doing tremendous damage to everyone caught in it that can only be partially mitigated by resistance to cold. Those affected will also be swept up into the air and tossed around. Only the eye of the storm is a safe place, and it follows the caster. The vortex is unable to follow the caster through long-distance translocations. This spell's effectiveness is greatly diminished in closed areas. After the vortex fades, it cannot be called forth again for a short time.",
+
     description = "Turns the air around the caster into a freezing vortex, doing tremendous damage to everyone caught in it that can only partially be mitigated by resistance to cold. Those affected will also be swept up into the air and tossed around. Only the eye of the storm is a safe place, and it follows the caster. The vortex is unable to follow the caster through long-distance translocations. The spell's effectiveness is greatly diminished in closed areas. After the vortex fades, it cannot be called forth again for a short time.",
 
     flags = {
 
     flags = {
       AREA = true
+
       area = true
 
     },
 
     },
 
     level = 9,
 
     level = 9,
Line 1,894: Line 1,809:
 
   ["Portal Projectile"] = {
 
   ["Portal Projectile"] = {
 
     books = {
 
     books = {
       ["book of Debilitation"] = true,
+
       ["book of the Hunter"] = true,
       ["book of the Warp"] = true
+
       ["book of Weapons"] = true
 
     },
 
     },
 
     description = "Allows the caster to teleport fired or thrown missiles directly to their targets for a short duration, spending an additional small amount of magic for each missile. Teleported projectiles have their accuracy greatly increased.",
 
     description = "Allows the caster to teleport fired or thrown missiles directly to their targets for a short duration, spending an additional small amount of magic for each missile. Teleported projectiles have their accuracy greatly increased.",
Line 1,907: Line 1,822:
 
     ["power cap"] = 50,
 
     ["power cap"] = 50,
 
     schools = {
 
     schools = {
      Translocation = true,
+
       Hexes = true,
       Hexes = true
+
       Translocation = true
    }
 
  },
 
  ["Ring of Flames"] = {
 
    books = {
 
       ["book of Clouds"] = true,
 
      ["book of Fire"] = true
 
    },
 
    description = "Surrounds the caster with a mobile ring of searing flame, and keeps other fire clouds away from the caster. This spell attunes the caster to the forces of fire, increasing the power of their fire magic and giving protection from fire. However, it also makes them much more susceptible to cold.",
 
    flags = {
 
      AREA = true
 
    },
 
    level = 7,
 
    name = "Ring of Flames",
 
    noise = {
 
      casting = 6,
 
      effect = 0
 
    },
 
    ["power cap"] = 200,
 
    schools = {
 
      Charms = true,
 
      Fire = true
 
 
     }
 
     }
 
   },
 
   },
Line 1,938: Line 1,832:
 
     description = "Consumes a stone to create a short blast of high-velocity rock shards. Its damage is strongly reduced by armour.",
 
     description = "Consumes a stone to create a short blast of high-velocity rock shards. Its damage is strongly reduced by armour.",
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       dir_or_target = true,
       NEEDS_TRACER = true,
+
       needs_tracer = true,
       NOT_SELF = true
+
       not_self = true
 
     },
 
     },
 
     level = 1,
 
     level = 1,
Line 1,946: Line 1,840:
 
     noise = {
 
     noise = {
 
       casting = 1,
 
       casting = 1,
       effect = 0
+
       effect = 2
 
     },
 
     },
 
     ["power cap"] = 50,
 
     ["power cap"] = 50,
Line 1,955: Line 1,849:
 
     schools = {
 
     schools = {
 
       Earth = true
 
       Earth = true
 +
    }
 +
  },
 +
  Scorch = {
 +
    books = {
 +
      ["book of Scorching"] = true
 +
    },
 +
    description = "Scorches a random foe. Those injured by this have their resistance to fire burned away for a short time.",
 +
    flags = {
 +
      no_ghost = true
 +
    },
 +
    level = 2,
 +
    name = "Scorch",
 +
    noise = {
 +
      casting = 4,
 +
      effect = 8
 +
    },
 +
    ["power cap"] = 50,
 +
    range = {
 +
      max = 3,
 +
      min = 3
 +
    },
 +
    schools = {
 +
      Fire = true
 
     }
 
     }
 
   },
 
   },
Line 1,963: Line 1,880:
 
     description = "Fires a continuous piercing ray of arcane energy from the caster's hands. So long as the caster maintains focus upon the spell and supplies it with magical power (by waiting in place and not taking any other actions), the ray will follow the caster's target if it should move.",
 
     description = "Fires a continuous piercing ray of arcane energy from the caster's hands. So long as the caster maintains focus upon the spell and supplies it with magical power (by waiting in place and not taking any other actions), the ray will follow the caster's target if it should move.",
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       dir_or_target = true,
       NEEDS_TRACER = true
+
       needs_tracer = true
 
     },
 
     },
 
     level = 2,
 
     level = 2,
Line 1,970: Line 1,887:
 
     noise = {
 
     noise = {
 
       casting = 2,
 
       casting = 2,
       effect = 0
+
       effect = 2
 
     },
 
     },
 
     ["power cap"] = 50,
 
     ["power cap"] = 50,
Line 1,981: Line 1,898:
 
     }
 
     }
 
   },
 
   },
   ["Shadow Creatures"] = {
+
   Shatter = {
 
     books = {
 
     books = {
       ["book of Dreams"] = true,
+
       ["book of Annihilations"] = true
      ["book of Summonings"] = true
 
 
     },
 
     },
     description = "Creates replicas of creatures native to the caster's current location, weaving them from shadows and threads of Abyssal matter.",
+
     description = "Causes an enormous burst of concussive force around the caster, dealing severe damage to all nearby creatures. It is especially effective against those made from ice, bone, or any wall-like substance (such as rock, metal or crystal), as well as those turned to stone by petrification. It is less effective against flying, gelatinous and insubstantial creatures. It may also destroy nearby walls.",
 
     flags = {
 
     flags = {
       MONS_ABJURE = true
+
       area = true
 
     },
 
     },
     level = 6,
+
     level = 9,
     name = "Shadow Creatures",
+
     name = "Shatter",
 
     noise = {
 
     noise = {
      casting = 4,
+
       casting = 7,
      effect = 0
+
       effect = 30
    },
 
    ["power cap"] = 0,
 
    schools = {
 
      Summoning = true
 
    },
 
    ["summons limit"] = 4
 
  },
 
  Shatter = {
 
    books = {
 
      ["book of the Earth"] = true,
 
      ["book of the Tempests"] = true
 
    },
 
    description = "Causes an enormous burst of concussive force around the caster, dealing severe damage to all nearby creatures. It is especially effective against those made from ice, bone, or any wall-like substance (such as rock, metal or crystal), as well as those turned to stone by petrification. It is less effective against flying, gelatinous and insubstantial creatures. It may also destroy nearby walls.",
 
    flags = {
 
      AREA = true
 
    },
 
    level = 9,
 
    name = "Shatter",
 
    noise = {
 
       casting = 7,
 
       effect = 30
 
 
     },
 
     },
 
     ["power cap"] = 200,
 
     ["power cap"] = 200,
    quote = "“And it happened when the people heard the sound of the trumpet, and the people shouted with a great shout, that the wall fell down flat. Then the people went up into the city, every man straight before him, and they took the city. And they utterly destroyed all that was in the city, both man and woman, young and old, ox and sheep and donkey, with the edge of the sword.”\n    -KJV Bible, Joshua 6:20-21.",
 
 
     schools = {
 
     schools = {
 
       Earth = true
 
       Earth = true
Line 2,029: Line 1,923:
 
     description = "Throws a bouncing bolt of electricity. It partially bypasses armour.",
 
     description = "Throws a bouncing bolt of electricity. It partially bypasses armour.",
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       dir_or_target = true,
       NEEDS_TRACER = true
+
       needs_tracer = true
 
     },
 
     },
 
     level = 1,
 
     level = 1,
Line 2,048: Line 1,942:
 
     }
 
     }
 
   },
 
   },
   ["Shroud of Golubria"] = {
+
   Silence = {
 
     books = {
 
     books = {
       ["book of Battle"] = true,
+
       ["book of the Moon"] = true,
       ["book of Spatial Translocations"] = true
+
       ["book of the Senses"] = true
 
     },
 
     },
     description = "Bends space around the caster's body, protecting them from some blows by redirecting their force to the air nearby. Ranged attacks cannot be diverted in this way. The shroud is highly unstable, and may fall apart unexpectedly under stress.",
+
     description = "Eliminates all sound near the caster. This makes reading scrolls, casting spells, invoking divine abilities, or shouting impossible in the caster's vicinity. The spell's oppressive, unnatural effect will greatly hamper stealth.\n\nCertain monsters have innate magical or special abilities which will still be usable while silenced.\n\nThe effect starts out with a radius depending on power, which will then shrink, eventually covering only the caster, before it times out.",
 
     flags = {
 
     flags = {
       SELFENCH = true
+
       area = true
 
     },
 
     },
     level = 2,
+
     level = 5,
     name = "Shroud of Golubria",
+
     name = "Silence",
 
     noise = {
 
     noise = {
       casting = 2,
+
       casting = 4,
 
       effect = 0
 
       effect = 0
 
     },
 
     },
     ["power cap"] = 50,
+
     ["power cap"] = 200,
 
     schools = {
 
     schools = {
       Charms = true,
+
       Air = true,
       Translocation = true
+
       Hexes = true
 
     }
 
     }
 
   },
 
   },
  Silence = {
+
   Simulacrum = {
    books = {
 
      ["book of Dreams"] = true,
 
      ["book of Hexes"] = true,
 
      ["book of the Sky"] = true
 
    },
 
    description = "Eliminates all sound near the caster. This makes reading scrolls, casting spells, invoking divine abilities, or shouting impossible in the caster's vicinity. The spell's oppressive, unnatural effect will greatly hamper stealth.\n\nCertain monsters have innate magical or special abilities which will still be usable while silenced.\n\nThe effect starts out with a radius depending on power, which will then shrink, eventually covering only the caster, before it times out.",
 
    flags = {
 
      AREA = true
 
    },
 
    level = 5,
 
    name = "Silence",
 
    noise = {
 
      casting = 4,
 
      effect = 0
 
    },
 
    ["power cap"] = 200,
 
    schools = {
 
      Air = true,
 
      Hexes = true
 
    }
 
  },
 
   Simulacrum = {
 
 
     books = {
 
     books = {
 
       ["book of Ice"] = true,
 
       ["book of Ice"] = true,
       ["book of Unlife"] = true
+
       ["book of the Tundra"] = true,
 +
      ["book of Winter"] = true
 
     },
 
     },
     description = "Creates an icy replica from the corpse of the original being. This magic is unstable, so eventually the replica will sublimate into a freezing cloud. Simulacra cannot leave the level they were created on.",
+
     description = "Creates an icy replica from the corpse of the original being. This magic is unstable, so eventually the replica will sublimate into a freezing cloud. Simulacra cannot leave the level they were created on. The number of simulacra created depends on the size of the creature and spell power.",
 
     flags = {},
 
     flags = {},
 
     level = 6,
 
     level = 6,
Line 2,112: Line 1,985:
 
   Slow = {
 
   Slow = {
 
     books = {
 
     books = {
       ["book of Debilitation"] = true,
+
       ["book of Debilitation"] = true
      ["book of Minor Magic"] = true
 
 
     },
 
     },
 
     description = "Slows the actions of a creature.",
 
     description = "Slows the actions of a creature.",
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       dir_or_target = true,
       WILL_CHECK = true,
+
       needs_tracer = true,
       NEEDS_TRACER = true
+
       WL_check = true
 
     },
 
     },
 
     level = 1,
 
     level = 1,
Line 2,125: Line 1,997:
 
     noise = {
 
     noise = {
 
       casting = 2,
 
       casting = 2,
       effect = 2
+
       effect = 0
 
     },
 
     },
 
     ["power cap"] = 25,
 
     ["power cap"] = 25,
Line 2,136: Line 2,008:
 
     }
 
     }
 
   },
 
   },
   ["Spectral Weapon"] = {
+
   ["Spellforged Servitor"] = {
 
     books = {
 
     books = {
       ["book of Battle"] = true
+
       ["book of Dangerous Friends"] = true,
 +
      ["book of Power"] = true
 
     },
 
     },
    description = "Draws out the spirit within a wielded weapon to fight for the caster, with its strength increasing with power. It only attacks when the caster does, and its kills count as the caster's own. If the weapon is damaged, part of the injury will be echoed on the caster's body. Only one spectral weapon can be maintained at a time, and only while the original weapon remains wielded.\n\nCertain powerful named artefacts cannot be affected, and any abilities that require evocation skill to trigger will not be active.",
+
     description = "Summons an extraplanar elemental and binds it to a durable shell forged from the caster's own magic. The servitor is capable of unleashing some of the destructive spells known to its creator, though the strongest and most volatile of magics cannot be imbued in this fashion. The strength of the servitor increases with spell power.",
    flags = {
+
     flags = {},
      NO_GHOST = true,
+
     level = 7,
      SELFENCH = true,
 
      UTILITY = true
 
    },
 
    level = 3,
 
    name = "Spectral Weapon",
 
    noise = {
 
      casting = 3,
 
      effect = 0
 
    },
 
    ["power cap"] = 100,
 
    schools = {
 
      Charms = true,
 
      Hexes = true
 
    }
 
  },
 
  ["Spellforged Servitor"] = {
 
    books = {
 
      ["book of Power"] = true
 
    },
 
     description = "Summons an extraplanar elemental and binds it to a durable shell forged from the caster's own magic. The servitor is capable of unleashing some of the destructive spells known to its creator, though the strongest and most volatile of magics cannot be imbued in this fashion.",
 
     flags = {},
 
     level = 7,
 
 
     name = "Spellforged Servitor",
 
     name = "Spellforged Servitor",
 
     noise = {
 
     noise = {
Line 2,171: Line 2,022:
 
     },
 
     },
 
     ["power cap"] = 200,
 
     ["power cap"] = 200,
    quote = "“When you think\n Your toys have gone berserk\n It's an illusion\n You cannot shirk”\n    -Siouxsie and the Banshees, \"Spellbound\"",
 
 
     schools = {
 
     schools = {
 
       Conjuration = true,
 
       Conjuration = true,
 
       Summoning = true
 
       Summoning = true
     },
+
     }
    ["summons limit"] = 1
 
 
   },
 
   },
 
   ["Spider Form"] = {
 
   ["Spider Form"] = {
 
     books = {
 
     books = {
       ["book of Changes"] = true
+
       ["book of Changes"] = true,
 +
      ["book of Dreams"] = true
 
     },
 
     },
 
     description = "Transforms the caster into a venomous, spider-like creature. The caster becomes highly evasive and gains a poisonous bite, but gains vulnerability to poison.\n\nWhile transformed, any equipped weapons and armour are melded, and casting spells becomes slightly more difficult.",
 
     description = "Transforms the caster into a venomous, spider-like creature. The caster becomes highly evasive and gains a poisonous bite, but gains vulnerability to poison.\n\nWhile transformed, any equipped weapons and armour are melded, and casting spells becomes slightly more difficult.",
 
     flags = {
 
     flags = {
       CHAOTIC = true,
+
       chaotic = true,
       HELPFUL = true,
+
       helpful = true,
       UTILITY = true
+
       utility = true
 
     },
 
     },
 
     level = 3,
 
     level = 3,
Line 2,194: Line 2,044:
 
       effect = 0
 
       effect = 0
 
     },
 
     },
     ["power cap"] = 200,
+
     ["power cap"] = 100,
 
     schools = {
 
     schools = {
 
       Poison = true,
 
       Poison = true,
Line 2,200: Line 2,050:
 
     }
 
     }
 
   },
 
   },
   ["Starburst"] = {
+
   Starburst = {
 
     books = {
 
     books = {
 
       ["book of Fire"] = true,
 
       ["book of Fire"] = true,
 +
      ["book of Spectacle"] = true
 
     },
 
     },
     description = "Releases penetrating bolts of fire from the caster in every direction. The range of each bolt is decreased by one for every creature it strikes.",
+
     description = "Releases penetrating bolts of fire from the caster in every direction.",
 
     flags = {
 
     flags = {
       AREA = true,
+
       area = true
 
     },
 
     },
 
     level = 6,
 
     level = 6,
Line 2,212: Line 2,063:
 
     noise = {
 
     noise = {
 
       casting = 6,
 
       casting = 6,
       effect = 2
+
       effect = 6
 
     },
 
     },
 
     ["power cap"] = 200,
 
     ["power cap"] = 200,
Line 2,226: Line 2,077:
 
   ["Static Discharge"] = {
 
   ["Static Discharge"] = {
 
     books = {
 
     books = {
       ["book of Air"] = true,
+
       ["book of Lightning"] = true,
       ["book of the Tempests"] = true
+
       ["book of Touch"] = true
 
     },
 
     },
 
     description = "Releases electrical charges against those next to the caster. These may arc to other adjacent creatures, or back to the caster, before eventually grounding out. It deals reduced damage when arcing to the caster, and bypasses any armour the target may have.",
 
     description = "Releases electrical charges against those next to the caster. These may arc to other adjacent creatures, or back to the caster, before eventually grounding out. It deals reduced damage when arcing to the caster, and bypasses any armour the target may have.",
 
     flags = {
 
     flags = {
       AREA = true
+
       area = true
 
     },
 
     },
 
     level = 2,
 
     level = 2,
Line 2,251: Line 2,102:
 
   ["Statue Form"] = {
 
   ["Statue Form"] = {
 
     books = {
 
     books = {
       ["book of the Earth"] = true,
+
       ["book of Sloth"] = true,
       ["book of Transfigurations"] = true
+
       ["book of the Earth"] = true
 
     },
 
     },
     description = "Transforms the caster into a slow but extremely robust stone statue. The caster's melee damage, both unarmed and with weapons, is substantially increased. The caster's stone body is insulated from electricity and gains resistance to poison, rotting and negative energy.\n\nWhile transformed, any equipped body armour, gloves and boots are melded.",
+
     description = "Transforms the caster into a slow but extremely robust stone statue. The caster's melee damage, both unarmed and with weapons, is substantially increased. The caster's stone body is immune to poison and miasma, and gains resistance to electricity and negative energy. High power increases the armour granted by this form.\n\nWhile transformed, any equipped body armour, gloves and boots are melded.",
 
     flags = {
 
     flags = {
       CHAOTIC = true,
+
       chaotic = true,
       HELPFUL = true,
+
       helpful = true,
       UTILITY = true
+
       utility = true
 
     },
 
     },
 
     level = 6,
 
     level = 6,
Line 2,274: Line 2,125:
 
   ["Sticky Flame"] = {
 
   ["Sticky Flame"] = {
 
     books = {
 
     books = {
       ["book of Flames"] = true
+
       ["book of Touch"] = true,
 +
      ["Everburning Encyclopedia"] = true
 
     },
 
     },
 
     description = "Conjures a glob of sticky flame, covering an adjacent creature with liquid fire for a short time.",
 
     description = "Conjures a glob of sticky flame, covering an adjacent creature with liquid fire for a short time.",
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       dir_or_target = true,
       NEEDS_TRACER = true
+
       needs_tracer = true
 
     },
 
     },
 
     level = 4,
 
     level = 4,
Line 2,288: Line 2,140:
 
     },
 
     },
 
     ["power cap"] = 100,
 
     ["power cap"] = 100,
    quote = "“Give a man a fire and he's warm for a day, but set fire to him and he's warm for the rest of his life.”\n    -Terry Pratchett, “Jingo”. 1997.",
 
 
     range = {
 
     range = {
 
       max = 1,
 
       max = 1,
Line 2,304: Line 2,155:
 
     description = "Briefly transforms one of the caster's limbs into a long insectoid stinger, which lashes out at the target. The stinger's impact will always poison a susceptible target. Even resistant targets have a chance to be poisoned and immune monsters will be damaged by the physical impact of the stinger.",
 
     description = "Briefly transforms one of the caster's limbs into a long insectoid stinger, which lashes out at the target. The stinger's impact will always poison a susceptible target. Even resistant targets have a chance to be poisoned and immune monsters will be damaged by the physical impact of the stinger.",
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       dir_or_target = true,
       NEEDS_TRACER = true
+
       needs_tracer = true
 
     },
 
     },
 
     level = 1,
 
     level = 1,
Line 2,319: Line 2,170:
 
     },
 
     },
 
     schools = {
 
     schools = {
       Transmutation = true,
+
       Poison = true,
       Poison = true
+
       Transmutation = true
 
     }
 
     }
 
   },
 
   },
 
   ["Stone Arrow"] = {
 
   ["Stone Arrow"] = {
 
     books = {
 
     books = {
       ["book of Geomancy"] = true,
+
       ["book of Armaments"] = true,
       ["Fen Folio"] = true
+
       ["book of Geomancy"] = true
 
     },
 
     },
 
     description = "Fires a sharp spine of rock.",
 
     description = "Fires a sharp spine of rock.",
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       dir_or_target = true,
       NEEDS_TRACER = true
+
       needs_tracer = true
 
     },
 
     },
 
     level = 3,
 
     level = 3,
Line 2,349: Line 2,200:
 
     }
 
     }
 
   },
 
   },
 
 
   ["Storm Form"] = {
 
   ["Storm Form"] = {
 
     books = {
 
     books = {
Line 2,355: Line 2,205:
 
       ["Inescapable Atlas"] = true
 
       ["Inescapable Atlas"] = true
 
     },
 
     },
     description = "Lets the caster walk through the air as a raging, lightning-filled tempest. The caster's melee attacks are strengthened, electrified, and strike all adjacent foes. The caster also flies, is more evasive, and resists electricity. They can launch themselves as a lightning bolt, blasting through everything in their way. The damage and evasion granted by storm form are highly dependent on the power with which it was cast.",
+
     description = "Lets the caster walk through the air as a raging, lightning-filled tempest. The caster's melee attacks are strengthened, electrified, and strike all adjacent foes. The caster also flies, is more evasive, gains immunity to poison and miasma, and resists electricity. They can launch themselves as a lightning bolt, blasting through everything in their way. The damage and evasion granted by storm form are highly dependent on the power with which it was cast.\n\nWhile transformed, any equipped weapons and armour are melded.",
 
     flags = {
 
     flags = {
       CHAOTIC = true,
+
       chaotic = true,
       HELPFUL = true,
+
       helpful = true,
       UTILITY = true
+
       utility = true
 
     },
 
     },
 
     level = 7,
 
     level = 7,
Line 2,368: Line 2,218:
 
     },
 
     },
 
     ["power cap"] = 200,
 
     ["power cap"] = 200,
    quote = "“Stormform is said to cause\n A tempest of winds and showers,\n Beware its powers, beware its powers.\n Though its coming brings the gods their night,\n It obliges a bloodred spren.\n Beware its end, beware its end.”\n    -Brandon Sanderson, “Words of Radiance”. 2014.",
 
 
     schools = {
 
     schools = {
 
       Air = true,
 
       Air = true,
Line 2,377: Line 2,226:
 
     books = {
 
     books = {
 
       ["book of Alchemy"] = true,
 
       ["book of Alchemy"] = true,
       ["book of Death"] = true
+
       ["book of Blood"] = true
 
     },
 
     },
 
     description = "Converts some of the caster's blood into magical energy. The process is painful but never directly lethal. The efficiency of the conversion increases with the spell's power.",
 
     description = "Converts some of the caster's blood into magical energy. The process is painful but never directly lethal. The efficiency of the conversion increases with the spell's power.",
 
     flags = {
 
     flags = {
       UTILITY = true
+
       utility = true
 
     },
 
     },
 
     level = 2,
 
     level = 2,
Line 2,389: Line 2,238:
 
       effect = 0
 
       effect = 0
 
     },
 
     },
     ["power cap"] = 200,
+
     ["power cap"] = 100,
 
     schools = {
 
     schools = {
 
       Necromancy = true
 
       Necromancy = true
 
     }
 
     }
 
   },
 
   },
   ["Summon Demon"] = {
+
   ["Summon Cactus Giant"] = {
 
     books = {
 
     books = {
       ["book of Summonings"] = true
+
       ["book of Scorching"] = true,
 +
      ["book of the Wilderness"] = true
 
     },
 
     },
     description = "Opens a gate to the realm of Pandemonium and draws forth one of its inhabitants to serve the caster for a time. The demon's servitude is not guaranteed, but will be more likely with high power.",
+
     description = "Summons a warrior from a particularly prickly tribe. Foes that strike these giants in melee are in for a painful surprise! When cast at a higher power, older, more robust warriors will answer the call.",
     flags = {
+
     flags = {},
      MONS_ABJURE = true,
+
     level = 6,
      SELFENCH = true,
+
     name = "Summon Cactus Giant",
      UNHOLY = true
 
    },
 
     level = 5,
 
     name = "Summon Demon",
 
 
     noise = {
 
     noise = {
 
       casting = 4,
 
       casting = 4,
Line 2,411: Line 2,257:
 
     },
 
     },
 
     ["power cap"] = 200,
 
     ["power cap"] = 200,
    quote = "“'Tis now the very witching time of night,\n When churchyards yawn and hell itself breathes out\n Contagion to this world.”\n    -William Shakespeare, _The Tragedy of Hamlet, Prince of Denmark_, III, 2.",
 
 
     schools = {
 
     schools = {
 
       Summoning = true
 
       Summoning = true
     },
+
     }
    ["summons limit"] = 3
 
 
   },
 
   },
 
   ["Summon Forest"] = {
 
   ["Summon Forest"] = {
 
     books = {
 
     books = {
       ["book of Summonings"] = true,
+
       ["book of the Wilderness"] = true,
 
       ["Fen Folio"] = true
 
       ["Fen Folio"] = true
 
     },
 
     },
     description = "Forcefully intersects a forested plane with this world. It requires open space to succeed. While the spell holds, a spirit of the forest will be called forth, and the trees of the forest will be awakened to deal damage to nearby enemies.",
+
     description = "Forcefully intersects a forested plane with this world. It requires open space to succeed. While the spell holds, a spirit of the forest will be called forth, and the trees of the forest will be awakened to deal damage to nearby enemies. Spell power increases the duration, size, and thickness of the intersected plane; as well as the strength of the spirit.",
 
     flags = {},
 
     flags = {},
 
     level = 5,
 
     level = 5,
Line 2,435: Line 2,279:
 
       Translocation = true
 
       Translocation = true
 
     }
 
     }
  },
 
  ["Summon Greater Demon"] = {
 
    books = {
 
      ["Grand Grimoire"] = true
 
    },
 
    description = "Calls forth one of the greater demons of Pandemonium to serve the caster. With high power, the summoned demon will be less likely to be initially hostile — but the strongest demons may eventually turn against their summoner regardless. Unlike other summons, greater demons will not be dismissed when attacked by their summoner - they will become hostile.",
 
    flags = {
 
      MONS_ABJURE = true,
 
      SELFENCH = true,
 
      UNHOLY = true
 
    },
 
    level = 7,
 
    name = "Summon Greater Demon",
 
    noise = {
 
      casting = 6,
 
      effect = 0
 
    },
 
    ["power cap"] = 200,
 
    schools = {
 
      Summoning = true
 
    },
 
    ["summons limit"] = 3
 
 
   },
 
   },
 
   ["Summon Guardian Golem"] = {
 
   ["Summon Guardian Golem"] = {
 
     books = {
 
     books = {
       ["book of Callings"] = true
+
       ["book of Callings"] = true,
 +
      ["book of Dangerous Friends"] = true
 
     },
 
     },
 
     description = "Summons a protective golem. It redirects the injuries of its allies (but not the caster) to itself. When sufficiently damaged, it may fill with an inner flame, causing it to explode if destroyed. It gains more health at high power.",
 
     description = "Summons a protective golem. It redirects the injuries of its allies (but not the caster) to itself. When sufficiently damaged, it may fill with an inner flame, causing it to explode if destroyed. It gains more health at high power.",
Line 2,474: Line 2,297:
 
       Hexes = true,
 
       Hexes = true,
 
       Summoning = true
 
       Summoning = true
     },
+
     }
    ["summons limit"] = 1
 
 
   },
 
   },
 
   ["Summon Horrible Things"] = {
 
   ["Summon Horrible Things"] = {
Line 2,481: Line 2,303:
 
       ["Grand Grimoire"] = true
 
       ["Grand Grimoire"] = true
 
     },
 
     },
     description = "Opens a gate to the Abyss and calls through one or more hideous abominations from that dreadful place. The opening of the gate may drain a portion of the caster's intellect.",
+
     description = "Opens a gate to the Abyss and calls through one or more hideous abominations from that dreadful place. The opening of the gate may drain a portion of the caster's intellect. The number of abominations summoned increases with spell power.",
 
     flags = {
 
     flags = {
       CHAOTIC = true,
+
       chaotic = true,
       MONS_ABJURE = true,
+
       mons_abjure = true,
       UNHOLY = true
+
       unholy = true
 
     },
 
     },
 
     level = 8,
 
     level = 8,
Line 2,496: Line 2,318:
 
     schools = {
 
     schools = {
 
       Summoning = true
 
       Summoning = true
     },
+
     }
    ["summons limit"] = 8
 
 
   },
 
   },
 
   ["Summon Hydra"] = {
 
   ["Summon Hydra"] = {
 
     books = {
 
     books = {
       ["book of Summonings"] = true,
+
       ["book of Blood"] = true,
 
       ["Fen Folio"] = true
 
       ["Fen Folio"] = true
 
     },
 
     },
     description = "Summons a many-headed hydra to fight alongside the caster for a short time.",
+
     description = "Summons a many-headed hydra to fight alongside the caster for a short time. Spell power determines the number of heads.",
 
     flags = {
 
     flags = {
       MONS_ABJURE = true
+
       mons_abjure = true
 
     },
 
     },
 
     level = 7,
 
     level = 7,
Line 2,517: Line 2,338:
 
     schools = {
 
     schools = {
 
       Summoning = true
 
       Summoning = true
     },
+
     }
    ["summons limit"] = 3
 
 
   },
 
   },
 
   ["Summon Ice Beast"] = {
 
   ["Summon Ice Beast"] = {
 
     books = {
 
     books = {
       ["book of Callings"] = true,
+
       ["book of Beasts"] = true,
       ["book of Frost"] = true
+
       ["book of Rime"] = true
 
     },
 
     },
     description = "Calls forth a beast of ice to serve the caster.",
+
     description = "Calls forth a beast of ice to serve the caster. The strength of the beast depends on spell power.",
 
     flags = {},
 
     flags = {},
 
     level = 4,
 
     level = 4,
Line 2,537: Line 2,357:
 
       Ice = true,
 
       Ice = true,
 
       Summoning = true
 
       Summoning = true
     },
+
     }
    ["summons limit"] = 3
 
 
   },
 
   },
 
   ["Summon Lightning Spire"] = {
 
   ["Summon Lightning Spire"] = {
 
     books = {
 
     books = {
       ["book of Callings"] = true,
+
       ["book of Storms"] = true,
       ["book of the Sky"] = true,
+
       ["book of the Sky"] = true
      ["book of Storms"] = true
 
 
     },
 
     },
     description = "Constructs a lightning spire in a nearby location. It can fire bouncing bolts of electricity at the caster's foes, but is completely immobile.",
+
     description = "Constructs a lightning spire in a nearby location. It can fire bouncing bolts of electricity at the caster's foes, but is completely immobile. The strength of the spire depends on spell power.",
 
     flags = {},
 
     flags = {},
 
     level = 4,
 
     level = 4,
Line 2,555: Line 2,373:
 
     },
 
     },
 
     ["power cap"] = 100,
 
     ["power cap"] = 100,
    range = {
 
      max = 2,
 
      min = 2
 
    },
 
 
     schools = {
 
     schools = {
 
       Air = true,
 
       Air = true,
 
       Summoning = true
 
       Summoning = true
     },
+
     }
    ["summons limit"] = 1
 
 
   },
 
   },
 
   ["Summon Mana Viper"] = {
 
   ["Summon Mana Viper"] = {
 
     books = {
 
     books = {
       ["book of Summonings"] = true
+
       ["book of Beasts"] = true,
 +
      ["book of the Wilderness"] = true
 
     },
 
     },
 
     description = "Summons a violet-scaled serpent whose bite can swiftly drain the magical reserves of nearly any foe. At higher power, the antimagic properties of the viper's bite grow even stronger.",
 
     description = "Summons a violet-scaled serpent whose bite can swiftly drain the magical reserves of nearly any foe. At higher power, the antimagic properties of the viper's bite grow even stronger.",
 
     flags = {
 
     flags = {
       MONS_ABJURE = true
+
       mons_abjure = true
 
     },
 
     },
 
     level = 5,
 
     level = 5,
Line 2,583: Line 2,397:
 
       Hexes = true,
 
       Hexes = true,
 
       Summoning = true
 
       Summoning = true
     },
+
     }
    ["summons limit"] = 2
 
 
   },
 
   },
 
   ["Summon Small Mammal"] = {
 
   ["Summon Small Mammal"] = {
Line 2,591: Line 2,404:
 
       ["book of Cantrips"] = true
 
       ["book of Cantrips"] = true
 
     },
 
     },
     description = "Summons a small mammal to the caster's aid.",
+
     description = "Summons a rat, bat, or quokka to the caster's aid. Spell power increases the chance of summoning a quokka.",
 
     flags = {},
 
     flags = {},
 
     level = 1,
 
     level = 1,
Line 2,602: Line 2,415:
 
     schools = {
 
     schools = {
 
       Summoning = true
 
       Summoning = true
     },
+
     }
    ["summons limit"] = 4
 
 
   },
 
   },
 
   Swiftness = {
 
   Swiftness = {
Line 2,612: Line 2,424:
 
     description = "Calls forth winds to greatly increase the caster's movement speed. After the effect ends, the caster's movements will be sluggish for a time.",
 
     description = "Calls forth winds to greatly increase the caster's movement speed. After the effect ends, the caster's movements will be sluggish for a time.",
 
     flags = {
 
     flags = {
       HASTY = true,
+
       hasty = true,
       SELFENCH = true,
+
       selfench = true,
       UTILITY = true
+
       utility = true
 
     },
 
     },
 
     level = 3,
 
     level = 3,
Line 2,629: Line 2,441:
 
   ["Teleport Other"] = {
 
   ["Teleport Other"] = {
 
     books = {
 
     books = {
       ["book of Spatial Translocations"] = true
+
       ["book of Displacement"] = true,
 +
      ["There-And-Back Book"] = true
 
     },
 
     },
 
     description = "Randomly translocates a targeted creature.",
 
     description = "Randomly translocates a targeted creature.",
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       dir_or_target = true,
       EMERGENCY = true,
+
       escape = true,
       ESCAPE = true,
+
       needs_tracer = true,
       WILL_CHECK = true,
+
       not_self = true,
       NEEDS_TRACER = true,
+
       WL_check = true
      NOT_SELF = true
 
 
     },
 
     },
 
     level = 3,
 
     level = 3,
Line 2,646: Line 2,458:
 
       effect = 0
 
       effect = 0
 
     },
 
     },
     ["power cap"] = 200,
+
     ["power cap"] = 100,
 
     range = {
 
     range = {
 
       max = 7,
 
       max = 7,
Line 2,653: Line 2,465:
 
     schools = {
 
     schools = {
 
       Translocation = true
 
       Translocation = true
    }
 
  },
 
  Tornado = {
 
    books = {
 
      ["book of the Sky"] = true,
 
      ["book of the Tempests"] = true
 
    },
 
    description = "Turns the air around the caster into a mighty vortex, doing tremendous damage to everyone caught in it. Those affected will also be swept up into the air and tossed around. Only the eye of the storm is a safe place, and it follows the caster. The spell's effectiveness is greatly diminished in closed areas. After the tornado fades, it cannot be called forth again for a short time.",
 
    flags = {
 
      AREA = true
 
    },
 
    level = 9,
 
    name = "Tornado",
 
    noise = {
 
      casting = 5,
 
      effect = 15
 
    },
 
    ["power cap"] = 200,
 
    range = {
 
      max = 5,
 
      min = 5
 
    },
 
    schools = {
 
      Air = true
 
 
     }
 
     }
 
   },
 
   },
Line 2,682: Line 2,470:
 
     books = {
 
     books = {
 
       ["book of Maledictions"] = true,
 
       ["book of Maledictions"] = true,
       ["book of Party Tricks"] = true
+
       ["Great Wizards, Vol. VII"] = true
 
     },
 
     },
     description = "Animates the weapon of a targeted foe, ripping it from their hands and causing it to attack them relentlessly. Once the target dies, the weapon will fall to the ground shortly thereafter.\n\nRanged weapons and certain powerful named artefacts cannot be affected, and any abilities that require evocation skill to trigger will not be active.",
+
     description = "Animates the weapon of a targeted foe, ripping it from their hands and causing it to attack them relentlessly. Once the target dies, the weapon will fall to the ground shortly thereafter.\n\nCertain powerful named artefacts cannot be animated, and any properties that require skill in evocations will not be active.",
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       dir_or_target = true,
       WILL_CHECK = true,
+
       needs_tracer = true,
       NEEDS_TRACER = true,
+
       not_self = true,
       NOT_SELF = true
+
       WL_check = true
 
     },
 
     },
 
     level = 3,
 
     level = 3,
Line 2,708: Line 2,496:
 
   ["Vampiric Draining"] = {
 
   ["Vampiric Draining"] = {
 
     books = {
 
     books = {
       ["book of Necromancy"] = true,
+
       ["book of Debilitation"] = true,
       ["book of Debilitation"] = true
+
       ["book of Necromancy"] = true
 
     },
 
     },
 
     description = "Steals the life of an adjacent living creature and grants it to the caster.",
 
     description = "Steals the life of an adjacent living creature and grants it to the caster.",
 
     flags = {
 
     flags = {
       DIR_OR_TARGET = true,
+
       dir_or_target = true,
       EMERGENCY = true,
+
       not_self = true
      NOT_SELF = true
 
 
     },
 
     },
 
     level = 3,
 
     level = 3,
Line 2,723: Line 2,510:
 
       effect = 0
 
       effect = 0
 
     },
 
     },
     ["power cap"] = 200,
+
     ["power cap"] = 100,
 
     range = {
 
     range = {
 
       max = 1,
 
       max = 1,
Line 2,732: Line 2,519:
 
     }
 
     }
 
   },
 
   },
   ["Wereblood"] = {
+
   Wereblood = {
 
     books = {
 
     books = {
 +
      ["book of Blood"] = true,
 
       ["book of Changes"] = true
 
       ["book of Changes"] = true
 
     },
 
     },
     description = "Transforms some of the caster's blood into that of a were-beast. Each non-summoned enemy the caster slays in combat quickens the pulse and temporarily enhances their melee and ranged effectiveness. The thrill of slaying gives the caster an uncontrollable urge to howl.\n\nThe bonus only lasts for the duration of a single cast; retransforming the caster's blood calms the were-spirit and resets the bonus.",
+
     description = "Transforms some of the caster's blood into that of a were-beast, causing them to occasionally howl uncontrollably. While active, each non-summoned enemy the caster slays in combat temporarily enhances their melee and ranged effectiveness, and killing adjacent enemies also provides minor healing.\n\nThe bonus only lasts for the duration of a single cast; retransforming the caster's blood calms the were-spirit and resets the bonus.",
 
     flags = {
 
     flags = {
       UTILITY = true
+
       chaotic = true,
 +
      utility = true
 
     },
 
     },
 
     level = 2,
 
     level = 2,
Line 2,753: Line 2,542:
 
   ["Yara's Violent Unravelling"] = {
 
   ["Yara's Violent Unravelling"] = {
 
     books = {
 
     books = {
       ["book of Hexes"] = true,
+
       ["book of Misfortune"] = true,
       ["book of Misfortune"] = true
+
       ["Great Wizards, Vol. VII"] = true
 
     },
 
     },
     description = "Tears apart the bonds that bind enchantments to the target creature, transforming the magic into a spray of deadly, mutagenic radiation.",
+
     description = "If cast upon a creature already blessed (or cursed) with magical enchantments, those enchantments will be torn apart, transforming into a spray of destructive mutagenic radiation. The victim and anyone adjacent will be blasted and heavily deformed, weakening them and reducing their armour. Summoned creatures are particularly vulnerable, as the enchantments binding them to this plane will unravel and cause them to be dismissed immediately.",
 
     flags = {
 
     flags = {
       CHAOTIC = true,
+
       chaotic = true,
       DIR_OR_TARGET = true,
+
       no_ghost = true,
       NEEDS_TRACER = true,
+
       target = true
      NO_GHOST = true
 
 
     },
 
     },
 
     level = 5,
 
     level = 5,

Revision as of 00:12, 12 February 2022

Module:Table of spells is a Lua module which contains information used by Module:Spell. If you want to add new Lua functions to process this page, write them in Module:Spell.

To generate this script, see https://github.com/jkornelsen/crawl-wiki-modules. Or, update it by hand.


-- Table of spells (0.29-a0-92-gee772dd00f)
return {
  Agony = {
    books = {
      ["book of Pain"] = true,
      ["book of the Senses"] = true
    },
    description = "Cuts the health of an adjacent creature in half. This damage is never directly lethal.",
    flags = {
      dir_or_target = true,
      needs_tracer = true,
      not_self = true,
      WL_check = true
    },
    level = 5,
    name = "Agony",
    noise = {
      casting = 4,
      effect = 0
    },
    ["power cap"] = 100,
    range = {
      max = 1,
      min = 1
    },
    schools = {
      Necromancy = true
    }
  },
  Airstrike = {
    books = {
      ["book of Air"] = true,
      ["book of Storms"] = true
    },
    description = "Causes the air around a creature to twist itself into a whirling vortex of meteorological fury. It does more damage to targets surrounded by empty space.",
    flags = {
      not_self = true,
      target = true
    },
    level = 4,
    name = "Airstrike",
    noise = {
      casting = 2,
      effect = 4
    },
    ["power cap"] = 200,
    range = {
      max = 7,
      min = 7
    },
    schools = {
      Air = true
    }
  },
  ["Alistair's Intoxication"] = {
    books = {
      ["book of Party Tricks"] = true,
      ["Great Wizards, Vol. II"] = true
    },
    description = "Converts a small portion of the brain matter of those around you into alcohol, attempting to confuse all intelligent creatures within view (although poison-resistant creatures may resist the effects). The caster will experience vertigo briefly if they successfully make contact with other minds. It is frequently used as an icebreaker at wizard parties.",
    flags = {},
    level = 5,
    name = "Alistair's Intoxication",
    noise = {
      casting = 3,
      effect = 0
    },
    ["power cap"] = 150,
    schools = {
      Poison = true,
      Transmutation = true
    }
  },
  Anguish = {
    books = {
      ["book of Dreams"] = true,
      ["book of Maledictions"] = true
    },
    description = "Afflicts nearby foes with supernatural anguish, causing all damage they deal to rebound on them for the duration of the effect. Strong-willed foes can resist the necromantic visions of pain and suffering, and mindless creatures are unaffected.",
    flags = {
      area = true,
      WL_check = true
    },
    level = 4,
    name = "Anguish",
    noise = {
      casting = 4,
      effect = 0
    },
    ["power cap"] = 200,
    range = {
      max = 7,
      min = 7
    },
    schools = {
      Hexes = true,
      Necromancy = true
    }
  },
  ["Animate Armour"] = {
    books = {
      ["book of Armaments"] = true,
      ["book of Iron"] = true
    },
    description = "Call upon the spirit of your worn armour to fight alongside you. The spirit moves slowly, but draws strength from the inherent protection of your own armour. At higher power, the spirit becomes more durable.",
    flags = {},
    level = 4,
    name = "Animate Armour",
    noise = {
      casting = 4,
      effect = 0
    },
    ["power cap"] = 50,
    schools = {
      Earth = true,
      Summoning = true
    }
  },
  ["Animate Dead"] = {
    books = {
      ["book of Death"] = true,
      ["book of Unlife"] = true
    },
    description = "Reanimates all corpses and skeletons in the vicinity as followers. This magic is unstable, so eventually those reanimated will crumble to dust. Zombies and skeletons cannot leave the level they were created on. The resilience of zombies raised by this spell increases with spell power.",
    flags = {
      area = true,
      neutral = true,
      utility = true
    },
    level = 4,
    name = "Animate Dead",
    noise = {
      casting = 3,
      effect = 0
    },
    ["power cap"] = 200,
    schools = {
      Necromancy = true
    }
  },
  ["Animate Skeleton"] = {
    books = {
      ["book of Cantrips"] = true,
      ["book of Necromancy"] = true
    },
    description = "Reanimates a single skeleton as a follower, even if that skeleton is still encased in flesh. This magic is unstable, so eventually those reanimated will crumble to dust. Skeletons cannot leave the level they were created on. The resilience of a skeleton raised by this spell increases with spell power.",
    flags = {
      utility = true
    },
    level = 1,
    name = "Animate Skeleton",
    noise = {
      casting = 1,
      effect = 0
    },
    ["power cap"] = 50,
    schools = {
      Necromancy = true
    }
  },
  Apportation = {
    books = {
      ["book of Cantrips"] = true,
      ["book of Party Tricks"] = true
    },
    description = "Pulls the top item or group of similar items from a distant pile to the floor near the caster. With low power, items might not be moved all the way to the caster's position.\n\nExtremely powerful magical items, such as the Orb of Zot, may actively resist the pull of this spell.",
    flags = {
      not_self = true,
      obj = true,
      target = true
    },
    level = 1,
    name = "Apportation",
    noise = {
      casting = 1,
      effect = 0
    },
    ["power cap"] = 50,
    range = {
      max = 7,
      min = 7
    },
    schools = {
      Translocation = true
    }
  },
  ["Beastly Appendage"] = {
    books = {
      ["book of Changes"] = true
    },
    description = "{{[string \"db_embedded_lua\"]:2: attempt to index global 'you' (a nil value)}}\n\nWhile transformed, auxiliary armour on the affected body parts is melded.",
    flags = {
      chaotic = true,
      helpful = true
    },
    level = 1,
    name = "Beastly Appendage",
    noise = {
      casting = 1,
      effect = 0
    },
    ["power cap"] = 50,
    schools = {
      Transmutation = true
    }
  },
  ["Blade Hands"] = {
    books = {
      ["book of Iron"] = true,
      ["book of Transfigurations"] = true,
      ["book of Weapons"] = true
    },
    description = "{{[string \"db_embedded_lua\"]:2: attempt to index global 'you' (a nil value)}}\n\nWhile transformed, equipped weapons, shields, and gloves are melded, and casting spells becomes somewhat more difficult.",
    flags = {
      chaotic = true,
      helpful = true,
      utility = true
    },
    level = 5,
    name = "Blade Hands",
    noise = {
      casting = 4,
      effect = 0
    },
    ["power cap"] = 200,
    schools = {
      Transmutation = true
    }
  },
  Blink = {
    books = {
      ["book of Spatial Translocations"] = true,
      ["Inescapable Atlas"] = true
    },
    description = "Randomly translocates the caster a short distance. Translocating in this way destabilises the caster temporarily, preventing consecutive blinks for a short period of time depending on spellpower.",
    flags = {
      escape = true,
      selfench = true,
      utility = true
    },
    level = 2,
    name = "Blink",
    noise = {
      casting = 2,
      effect = 0
    },
    ["power cap"] = 50,
    schools = {
      Translocation = true
    }
  },
  ["Borgnjor's Revivification"] = {
    books = {
      Necronomicon = true
    },
    description = "Instantly heals any and all wounds suffered by the caster, but also permanently damages their health, to a degree dependent on (and inversely related to) power.\n\nIt is powerful enough to cancel the effects of Death's Door, although doing so will briefly paralyse the caster. It has no effect on the undead.",
    flags = {
      utility = true
    },
    level = 8,
    name = "Borgnjor's Revivification",
    noise = {
      casting = 6,
      effect = 0
    },
    ["power cap"] = 200,
    schools = {
      Necromancy = true
    }
  },
  ["Borgnjor's Vile Clutch"] = {
    books = {
      ["book of Unlife"] = true,
      ["Great Wizards, Vol. II"] = true
    },
    description = "Calls forth hands from corpses interred beneath the dungeon floor long ago. Enemies caught in the area will be held in place and constricted until they break free.",
    flags = {
      dir_or_target = true,
      needs_tracer = true
    },
    level = 5,
    name = "Borgnjor's Vile Clutch",
    noise = {
      casting = 5,
      effect = 4
    },
    ["power cap"] = 200,
    range = {
      max = 6,
      min = 6
    },
    schools = {
      Earth = true,
      Necromancy = true
    }
  },
  ["Call Canine Familiar"] = {
    books = {
      ["book of Callings"] = true,
      ["book of the Hunter"] = true
    },
    description = "Summons a solitary canine to the caster's aid. Spell power increases the chance of summoning a stronger breed.",
    flags = {},
    level = 3,
    name = "Call Canine Familiar",
    noise = {
      casting = 3,
      effect = 0
    },
    ["power cap"] = 100,
    schools = {
      Summoning = true
    }
  },
  ["Call Imp"] = {
    books = {
      ["book of Minor Magic"] = true
    },
    description = "Calls forth a minor demon from the pits of Hell. The demon will fight alongside the caster for a time depending on spell power.",
    flags = {
      selfench = true,
      unholy = true
    },
    level = 2,
    name = "Call Imp",
    noise = {
      casting = 2,
      effect = 0
    },
    ["power cap"] = 100,
    schools = {
      Summoning = true
    }
  },
  ["Cause Fear"] = {
    books = {
      ["book of Hexes"] = true,
      ["book of the Dragon"] = true
    },
    description = "Causes fear in those near to the caster, causing those affected to be unable to approach the caster, and to sometimes fail to attack them in melee. Leaving the caster's line of sight will end the effect.",
    flags = {
      area = true,
      WL_check = true
    },
    level = 4,
    name = "Cause Fear",
    noise = {
      casting = 3,
      effect = 0
    },
    ["power cap"] = 200,
    range = {
      max = 7,
      min = 7
    },
    schools = {
      Hexes = true
    }
  },
  ["Chain Lightning"] = {
    books = {
      ["book of Annihilations"] = true
    },
    description = "Releases a massive electrical discharge that arcs to the creature nearest the caster and then outward from it. The further it travels, the less damage it does. Secondary arcs have limited range and do little damage to the caster. The spell's damage partially bypasses armour and resistance to electricity.",
    flags = {
      area = true
    },
    level = 9,
    name = "Chain Lightning",
    noise = {
      casting = 25,
      effect = 10
    },
    ["power cap"] = 200,
    schools = {
      Air = true,
      Conjuration = true
    }
  },
  ["Confusing Touch"] = {
    books = {
      ["book of Debilitation"] = true,
      ["book of Misfortune"] = true
    },
    description = "Enchants the caster's dominant hand with magical energy. This energy is released when the caster touches a monster, and may induce a state of confusion in the monster. The caster's attacks do no damage while attempting to touch a monster in this way.",
    flags = {
      selfench = true,
      WL_check = true
    },
    level = 3,
    name = "Confusing Touch",
    noise = {
      casting = 2,
      effect = 0
    },
    ["power cap"] = 100,
    schools = {
      Hexes = true
    }
  },
  ["Conjure Ball Lightning"] = {
    books = {
      ["book of Chaos"] = true,
      ["book of the Spheres"] = true
    },
    description = "Creates a pack of ball lightnings, which seek out the nearest enemy before exploding in a huge blast of electricity. Casters are advised to use caution; the lightning is not mindful of what it may hit.\n\nThe magic which keeps ball lightnings cohesive has limited range, so they may dissipate harmlessly if allowed to drift too far away from their caster before exploding.",
    flags = {
      selfench = true
    },
    level = 6,
    name = "Conjure Ball Lightning",
    noise = {
      casting = 6,
      effect = 25
    },
    ["power cap"] = 200,
    schools = {
      Air = true,
      Conjuration = true
    }
  },
  ["Conjure Flame"] = {
    books = {
      ["book of Flames"] = true,
      ["Everburning Encyclopedia"] = true
    },
    description = "Conjures burning embers at the caster's feet, which will burst into flame soon after. Any creature (including the caster) that stands on the embers will smother them, so casters are well advised to step away immediately after casting. Re-casting the spell will also ignite the embers, burning the caster.",
    flags = {
      neutral = true,
      no_ghost = true
    },
    level = 3,
    name = "Conjure Flame",
    noise = {
      casting = 3,
      effect = 2
    },
    ["power cap"] = 100,
    schools = {
      Conjuration = true,
      Fire = true
    }
  },
  ["Corpse Rot"] = {
    books = {
      ["book of Decay"] = true,
      ["book of Vapours"] = true
    },
    description = "Rapidly accelerates the decomposition of any corpses lying around the caster, and gathers the foul miasmic vapour around the caster. The clouds eat away at the life force of any creature they envelop.",
    flags = {
      area = true,
      neutral = true,
      unclean = true
    },
    level = 2,
    name = "Corpse Rot",
    noise = {
      casting = 2,
      effect = 0
    },
    ["power cap"] = 50,
    schools = {
      Air = true,
      Necromancy = true
    }
  },
  ["Dazzling Flash"] = {
    books = {
      ["book of Spectacle"] = true,
      ["book of the Senses"] = true
    },
    description = "The caster erupts in a scintillating display of light. Any living creature nearby may be dazzled and left stumbling blindly.",
    flags = {
      area = true,
      no_ghost = true
    },
    level = 3,
    name = "Dazzling Flash",
    noise = {
      casting = 0,
      effect = 0
    },
    ["power cap"] = 50,
    range = {
      max = 3,
      min = 2
    },
    schools = {
      Conjuration = true,
      Hexes = true
    }
  },
  ["Death Channel"] = {
    books = {
      ["book of Decay"] = true,
      ["book of Unlife"] = true
    },
    description = "Binds the souls of living, demonic and holy creatures slain by the caster and their allies, causing their spectres to remain and fight for the caster. When the channel expires the spectres will fade away.",
    flags = {
      helpful = true,
      selfench = true,
      utility = true
    },
    level = 6,
    name = "Death Channel",
    noise = {
      casting = 5,
      effect = 0
    },
    ["power cap"] = 200,
    schools = {
      Necromancy = true
    }
  },
  ["Death's Door"] = {
    books = {
      Necronomicon = true
    },
    description = "Renders the caster nigh invulnerable to harm for a brief period, but brings them dangerously close to death in the process. So close, in fact, that the body believes itself to be dead — healing effects will do nothing.\n\nThe caster will receive one warning shortly before the spell expires. After expiry, the spell cannot immediately be recast, but with high power the caster will be left further from death when the effect ends. It has no effect on those who are already undead.",
    flags = {
      no_ghost = true,
      utility = true
    },
    level = 9,
    name = "Death's Door",
    noise = {
      casting = 6,
      effect = 0
    },
    ["power cap"] = 200,
    schools = {
      Necromancy = true
    }
  },
  Discord = {
    books = {
      ["book of Chaos"] = true,
      ["book of Hexes"] = true
    },
    description = "Drives nearby creatures into an insane frenzy, causing them to mercilessly attack anything and everything nearby with great strength and speed.",
    flags = {
      area = true,
      hasty = true,
      WL_check = true
    },
    level = 8,
    name = "Discord",
    noise = {
      casting = 6,
      effect = 0
    },
    ["power cap"] = 200,
    schools = {
      Hexes = true
    }
  },
  Disjunction = {
    books = {
      ["book of Chaos"] = true,
      ["book of the Warp"] = true
    },
    description = "Destabilizes the space in a sphere around the caster for a while, causing anyone nearby to blink away from the caster. The chance of blinking depends on the distance from the caster, being nearly certain when directly adjacent. It causes magical contamination when cast.",
    flags = {
      escape = true,
      utility = true
    },
    level = 8,
    name = "Disjunction",
    noise = {
      casting = 6,
      effect = 0
    },
    ["power cap"] = 200,
    range = {
      max = 4,
      min = 4
    },
    schools = {
      Translocation = true
    }
  },
  ["Dispel Undead"] = {
    books = {
      ["book of Decay"] = true,
      ["book of Touch"] = true
    },
    description = "Harms an adjacent undead creature greatly by interfering with the forces binding it together.",
    flags = {
      dir_or_target = true,
      needs_tracer = true
    },
    level = 4,
    name = "Dispel Undead",
    noise = {
      casting = 4,
      effect = 0
    },
    ["power cap"] = 100,
    range = {
      max = 1,
      min = 1
    },
    schools = {
      Necromancy = true
    }
  },
  Dispersal = {
    books = {
      ["book of the Warp"] = true,
      ["There-And-Back Book"] = true
    },
    description = "Teleports away any creatures within a short distance of the caster. Any creature that resists the effect will still be irresistibly blinked a shorter distance, and any monster it affects at all has a chance of being confused by the warping of space.",
    flags = {
      area = true,
      escape = true
    },
    level = 6,
    name = "Dispersal",
    noise = {
      casting = 5,
      effect = 0
    },
    ["power cap"] = 200,
    range = {
      max = 4,
      min = 1
    },
    schools = {
      Translocation = true
    }
  },
  ["Dragon Form"] = {
    books = {
      ["book of the Dragon"] = true,
      ["book of Transfigurations"] = true
    },
    description = "{{[string \"db_embedded_lua\"]:4: attempt to index global 'you' (a nil value)}} The caster becomes able to deal incredible damage in melee combat, and they become much more robust, although their evasiveness is reduced.\n\nWhile transformed, any equipped weapons and armour are melded.",
    flags = {
      chaotic = true,
      helpful = true,
      utility = true
    },
    level = 7,
    name = "Dragon Form",
    noise = {
      casting = 6,
      effect = 0
    },
    ["power cap"] = 200,
    schools = {
      Transmutation = true
    }
  },
  ["Dragon's Call"] = {
    books = {
      ["book of the Dragon"] = true
    },
    description = "Issues a powerful call to a draconic realm, beckoning forth dragon after dragon to engage the summoner's enemies. The spell is taxing to maintain, and each new dragon which answers the call will further drain the summoner's magical reserves. After the call ends, it cannot be issued again for a short time. The duration of the call and the species of dragons called depend on spell power.",
    flags = {},
    level = 9,
    name = "Dragon's Call",
    noise = {
      casting = 7,
      effect = 15
    },
    ["power cap"] = 200,
    schools = {
      Summoning = true
    }
  },
  Enfeeble = {
    books = {
      ["book of Maledictions"] = true,
      ["book of Misfortune"] = true
    },
    description = "Overwhelms an enemy with malignant energies, irresistibly weakening their melee attacks and disrupting their magic. It will additionally daze and blind any foe that fails to resist the full force of the curse.",
    flags = {
      dir_or_target = true,
      needs_tracer = true,
      WL_check = true
    },
    level = 7,
    name = "Enfeeble",
    noise = {
      casting = 7,
      effect = 0
    },
    ["power cap"] = 200,
    range = {
      max = 7,
      min = 7
    },
    schools = {
      Hexes = true
    }
  },
  ["Ensorcelled Hibernation"] = {
    books = {
      ["book of Burglary"] = true,
      ["book of Dreams"] = true
    },
    description = "Lowers its target's metabolic rate, inducing hibernation. After awakening, the target will be unable to be put to sleep again for some time.",
    flags = {
      dir_or_target = true,
      needs_tracer = true,
      not_self = true,
      WL_check = true
    },
    level = 2,
    name = "Ensorcelled Hibernation",
    noise = {
      casting = 0,
      effect = 0
    },
    ["power cap"] = 50,
    range = {
      max = 7,
      min = 7
    },
    schools = {
      Hexes = true,
      Ice = true
    }
  },
  ["Eringya's Noxious Bog"] = {
    books = {
      ["Fen Folio"] = true,
      ["Great Wizards, Vol. II"] = true
    },
    description = "Causes the caster to release a torrent of sludge that transforms nearby areas into a toxic bog. The sludge damages and poisons all monsters, even those resistant to poison. The bog cannot form on areas adjacent to multiple solid features, nor on areas that lack solid floor, like deep water or lava. The transformation is temporary and cannot be sustained out of the caster's sight. Spellpower will increase how long the bog lingers.",
    flags = {
      area = true,
      no_ghost = true
    },
    level = 6,
    name = "Eringya's Noxious Bog",
    noise = {
      casting = 6,
      effect = 0
    },
    ["power cap"] = 200,
    range = {
      max = 4,
      min = 4
    },
    schools = {
      Poison = true,
      Transmutation = true
    }
  },
  ["Excruciating Wounds"] = {
    books = {
      ["book of Pain"] = true,
      ["book of Weapons"] = true
    },
    description = "Temporarily infuses the weapon held by the caster with the essence of pain itself. It will not affect artefact weapons.\n\nWhile a weapon is infused it cannot be unwielded and casting spells is slightly more difficult.",
    flags = {
      helpful = true
    },
    level = 5,
    name = "Excruciating Wounds",
    noise = {
      casting = 5,
      effect = 5
    },
    ["power cap"] = 200,
    schools = {
      Necromancy = true
    }
  },
  ["Fire Storm"] = {
    books = {
      ["book of Annihilations"] = true
    },
    description = "Calls forth a mighty storm of roaring flame directly onto the target, dealing damage in a large area and leaving behind short-lived fire vortices. A portion of its damage bypasses fire resistance.",
    flags = {
      area = true,
      needs_tracer = true,
      target = true
    },
    level = 9,
    name = "Fire Storm",
    noise = {
      casting = 9,
      effect = 25
    },
    ["power cap"] = 200,
    range = {
      max = 5,
      min = 5
    },
    schools = {
      Conjuration = true,
      Fire = true
    }
  },
  Fireball = {
    books = {
      ["book of Fire"] = true,
      ["book of the Spheres"] = true
    },
    description = "Hurls an explosive ball of fire.",
    flags = {
      dir_or_target = true,
      needs_tracer = true
    },
    level = 5,
    name = "Fireball",
    noise = {
      casting = 5,
      effect = 15
    },
    ["power cap"] = 200,
    range = {
      max = 5,
      min = 5
    },
    schools = {
      Conjuration = true,
      Fire = true
    }
  },
  ["Flame Wave"] = {
    books = {
      ["book of Flames"] = true,
      ["book of Scorching"] = true
    },
    description = "Blasts the caster's surroundings with a wave of fire. If the caster maintains focus and supplies the spell with magical power (by waiting in place and not taking any other actions), more and larger flame waves will radiate outward.",
    flags = {
      area = true
    },
    level = 4,
    name = "Flame Wave",
    noise = {
      casting = 0,
      effect = 12
    },
    ["power cap"] = 100,
    range = {
      max = 3,
      min = 3
    },
    schools = {
      Conjuration = true,
      Fire = true
    }
  },
  Foxfire = {
    books = {
      ["book of Flames"] = true
    },
    description = "Conjures two balls of burning swamp gas adjacent to the caster. The balls will rapidly seek the nearest monster and burn them. They will dissipate harmlessly if unable to reach a target or if the caster swaps places with them.",
    flags = {
      selfench = true
    },
    level = 1,
    name = "Foxfire",
    noise = {
      casting = 1,
      effect = 1
    },
    ["power cap"] = 25,
    schools = {
      Conjuration = true,
      Fire = true
    }
  },
  Freeze = {
    books = {
      ["book of Frost"] = true
    },
    description = "Freezes an adjacent creature, dealing damage that bypasses any armour the target may have. This may temporarily slow cold-blooded creatures.",
    flags = {
      dir_or_target = true,
      not_self = true
    },
    level = 1,
    name = "Freeze",
    noise = {
      casting = 1,
      effect = 0
    },
    ["power cap"] = 25,
    range = {
      max = 1,
      min = 1
    },
    schools = {
      Ice = true
    }
  },
  ["Freezing Cloud"] = {
    books = {
      ["book of Ice"] = true,
      ["Trismegistus Codex"] = true
    },
    description = "Conjures up a large cloud of lethally cold vapour.",
    flags = {
      area = true,
      cloud = true,
      needs_tracer = true,
      target = true
    },
    level = 5,
    name = "Freezing Cloud",
    noise = {
      casting = 6,
      effect = 2
    },
    ["power cap"] = 200,
    range = {
      max = 5,
      min = 5
    },
    schools = {
      Air = true,
      Conjuration = true,
      Ice = true
    }
  },
  ["Frozen Ramparts"] = {
    books = {
      ["book of Frost"] = true,
      ["book of Rime"] = true
    },
    description = "Encases surrounding walls with ice for a short time as long as the caster refrains from moving. Victims that wander near the icy walls will be damaged, and this may temporarily slow cold-blooded creatures. The damage dealt bypasses any armour the target may have. Each victim is only ever affected by one icy wall at a time.\n\nThe caster and any allies can safely remain near icy walls. The ice will crack and fall away if the caster moves to a new position.",
    flags = {
      area = true,
      no_ghost = true
    },
    level = 3,
    name = "Frozen Ramparts",
    noise = {
      casting = 3,
      effect = 8
    },
    ["power cap"] = 50,
    range = {
      max = 2,
      min = 2
    },
    schools = {
      Ice = true
    }
  },
  ["Fulminant Prism"] = {
    books = {
      ["book of Blasting"] = true,
      ["book of Conjurations"] = true
    },
    description = "Conjures a prism which unleashes a violent explosion of arcane force after a short duration. The prism is extremely fragile and any damage caused to it may result in premature detonation.",
    flags = {
      area = true,
      not_self = true,
      target = true
    },
    level = 4,
    name = "Fulminant Prism",
    noise = {
      casting = 4,
      effect = 0
    },
    ["power cap"] = 200,
    range = {
      max = 4,
      min = 4
    },
    schools = {
      Conjuration = true,
      Hexes = true
    }
  },
  ["Gell's Gravitas"] = {
    books = {
      ["book of Displacement"] = true,
      ["There-And-Back Book"] = true
    },
    description = "Briefly redirects gravity around a target point, causing 'down' to be towards that point. All nearby creatures, save the caster, fall helplessly toward that point — typically colliding with each other, or with a victim standing there.",
    flags = {
      needs_tracer = true,
      not_self = true,
      target = true
    },
    level = 3,
    name = "Gell's Gravitas",
    noise = {
      casting = 3,
      effect = 0
    },
    ["power cap"] = 100,
    range = {
      max = 7,
      min = 7
    },
    schools = {
      Translocation = true
    }
  },
  Hailstorm = {
    books = {
      ["book of Frost"] = true,
      ["book of the Tundra"] = true
    },
    description = "Conjures a cannonade of hail. The eye of the storm is wide enough that monsters adjacent to the caster are unaffected. Due to the strong impact and cutting edges a significant portion of its damage bypasses cold resistance.",
    flags = {
      area = true
    },
    level = 4,
    name = "Hailstorm",
    noise = {
      casting = 4,
      effect = 0
    },
    ["power cap"] = 100,
    range = {
      max = 3,
      min = 3
    },
    schools = {
      Conjuration = true,
      Ice = true
    }
  },
  Haunt = {
    books = {
      ["book of Death"] = true
    },
    description = "Calls wraiths and ghosts to haunt the caster's target. They will only attack the creature they are haunting, and will dissipate quickly once their target dies. The number of spectres summoned increases with spell power.",
    flags = {
      mons_abjure = true,
      not_self = true,
      target = true
    },
    level = 7,
    name = "Haunt",
    noise = {
      casting = 6,
      effect = 0
    },
    ["power cap"] = 200,
    range = {
      max = 7,
      min = 7
    },
    schools = {
      Necromancy = true,
      Summoning = true
    }
  },
  ["Ice Form"] = {
    books = {
      ["book of Rime"] = true,
      ["book of the Tundra"] = true
    },
    description = "Transforms the caster into a frozen ice-creature, light enough to float on water. The caster gains a freezing melee attack, and becomes incredibly resistant to cold and resistant to poison, but vulnerable to fire. High power increases the armour granted by this form.\n\nWhile transformed, any equipped weapons and armour are melded.",
    flags = {
      chaotic = true,
      helpful = true,
      utility = true
    },
    level = 4,
    name = "Ice Form",
    noise = {
      casting = 3,
      effect = 0
    },
    ["power cap"] = 100,
    schools = {
      Ice = true,
      Transmutation = true
    }
  },
  ["Ignite Poison"] = {
    books = {
      ["Everburning Encyclopedia"] = true,
      ["Trismegistus Codex"] = true
    },
    description = "Converts all nearby poison into liquid flame, burning poisoned creatures from within. It also turns clouds of poison and mephitic gases into flame. The caster is not affected directly.",
    flags = {
      area = true
    },
    level = 3,
    name = "Ignite Poison",
    noise = {
      casting = 4,
      effect = 0
    },
    ["power cap"] = 100,
    schools = {
      Fire = true,
      Poison = true,
      Transmutation = true
    }
  },
  Ignition = {
    books = {
      ["book of Fire"] = true,
      ["the Unrestrained Analects"] = true
    },
    description = "All foes in the caster's surroundings are engulfed in balls of fire. The caster and their allies are protected from the fire and will never be harmed by this spell.",
    flags = {
      area = true
    },
    level = 8,
    name = "Ignition",
    noise = {
      casting = 8,
      effect = 15
    },
    ["power cap"] = 200,
    schools = {
      Fire = true
    }
  },
  Infestation = {
    books = {
      ["book of Death"] = true
    },
    description = "Calls forth a plague of scarabs, infesting affected creatures for a duration depending on power and causing death scarabs to grow and burst from them upon death.",
    flags = {
      target = true,
      unclean = true
    },
    level = 8,
    name = "Infestation",
    noise = {
      casting = 8,
      effect = 4
    },
    ["power cap"] = 200,
    range = {
      max = 7,
      min = 7
    },
    schools = {
      Necromancy = true
    }
  },
  ["Inner Flame"] = {
    books = {
      ["book of Flames"] = true,
      ["book of Hexes"] = true
    },
    description = "Fills an enemy with an intense fire. This fire is released any time the target is hit, and explosively released upon death. The size of the explosion caused is dependent on the size of the target.",
    flags = {
      not_self = true,
      target = true,
      WL_check = true
    },
    level = 3,
    name = "Inner Flame",
    noise = {
      casting = 3,
      effect = 0
    },
    ["power cap"] = 100,
    range = {
      max = 7,
      min = 7
    },
    schools = {
      Fire = true,
      Hexes = true
    }
  },
  ["Iron Shot"] = {
    books = {
      ["book of Iron"] = true,
      ["book of Power"] = true
    },
    description = "Hurls a large and heavy metal shot.",
    flags = {
      dir_or_target = true,
      needs_tracer = true
    },
    level = 6,
    name = "Iron Shot",
    noise = {
      casting = 6,
      effect = 6
    },
    ["power cap"] = 200,
    range = {
      max = 4,
      min = 4
    },
    schools = {
      Conjuration = true,
      Earth = true
    }
  },
  Irradiate = {
    books = {
      ["book of Alchemy"] = true,
      ["book of Transfigurations"] = true
    },
    description = "Transmutes an ultra-thin layer of the caster's skin (or equivalent) directly into pure magical energy, blasting adjacent creatures. It heavily deforms its targets, weakening them and reducing their armour. The caster is not left entirely unaffected; some of the magic lingers, enough to leave them dangerously contaminated after a few castings.",
    flags = {
      area = true,
      chaotic = true
    },
    level = 5,
    name = "Irradiate",
    noise = {
      casting = 4,
      effect = 0
    },
    ["power cap"] = 200,
    range = {
      max = 1,
      min = 1
    },
    schools = {
      Conjuration = true,
      Transmutation = true
    }
  },
  ["Iskenderun's Battlesphere"] = {
    books = {
      ["book of Power"] = true,
      ["book of the Spheres"] = true
    },
    description = "Conjures a small globe of magical energy. Each time its creator casts a destructive Conjuration, the battlesphere will launch its own volley of energy at a random foe. With increasing power, the battlesphere lasts longer and deals more damage per volley.",
    flags = {
      utility = true
    },
    level = 5,
    name = "Iskenderun's Battlesphere",
    noise = {
      casting = 5,
      effect = 0
    },
    ["power cap"] = 100,
    schools = {
      Conjuration = true
    }
  },
  ["Iskenderun's Mystic Blast"] = {
    books = {
      ["book of Blasting"] = true,
      ["book of Spectacle"] = true
    },
    description = "Detonates a crackling sphere of destructive energy. The explosion will hit all nearby monsters with physical force, knocking them back if damage is done.",
    flags = {
      area = true
    },
    level = 4,
    name = "Iskenderun's Mystic Blast",
    noise = {
      casting = 4,
      effect = 10
    },
    ["power cap"] = 100,
    range = {
      max = 2,
      min = 2
    },
    schools = {
      Conjuration = true,
      Translocation = true
    }
  },
  ["Leda's Liquefaction"] = {
    books = {
      ["book of the Earth"] = true,
      ["book of the Hunter"] = true
    },
    description = "Liquefies the ground around the caster, making it difficult to move through. Any movement through liquefied ground will be slowed, and creatures stuck in the liquefied ground will be unable to fly. Attempts to attack the caster in melee may fail.\n\nThe effect starts out with a radius depending on power, which will then shrink, eventually covering only the caster, before it times out. Maintaining the connection to the ground slows the caster's movement, even if they are flying.",
    flags = {
      area = true
    },
    level = 4,
    name = "Leda's Liquefaction",
    noise = {
      casting = 3,
      effect = 0
    },
    ["power cap"] = 200,
    schools = {
      Earth = true,
      Hexes = true
    }
  },
  ["Lee's Rapid Deconstruction"] = {
    books = {
      ["book of Blasting"] = true,
      ["book of the Earth"] = true
    },
    description = "Fragments a wall or a suitably brittle visible monster into an explosion of deadly shrapnel. It can be used on monsters made of ice, bone, or any wall-like substance, as well as those turned to stone by petrification. Its damage is strongly reduced by armour.\n\nTargets made from rock, stone, ice or bone will cause a small explosion. Metal targets will cause a small but more damaging explosion, and targets made from crystal will cause a large and more damaging explosion.",
    flags = {
      target = true
    },
    level = 5,
    name = "Lee's Rapid Deconstruction",
    noise = {
      casting = 4,
      effect = 20
    },
    ["power cap"] = 200,
    range = {
      max = 7,
      min = 7
    },
    schools = {
      Earth = true
    }
  },
  ["Lehudib's Crystal Spear"] = {
    books = {
      ["book of Armaments"] = true,
      ["book of the Moon"] = true
    },
    description = "Hurls a lethally sharp shard of crystal.",
    flags = {
      dir_or_target = true,
      needs_tracer = true
    },
    level = 8,
    name = "Lehudib's Crystal Spear",
    noise = {
      casting = 8,
      effect = 8
    },
    ["power cap"] = 200,
    range = {
      max = 3,
      min = 3
    },
    schools = {
      Conjuration = true,
      Earth = true
    }
  },
  ["Lesser Beckoning"] = {
    books = {
      ["book of Displacement"] = true,
      ["book of Spatial Translocations"] = true
    },
    description = "Beckons the target forward, attempting to place them adjacent to the caster.",
    flags = {
      dir_or_target = true,
      needs_tracer = true,
      not_self = true
    },
    level = 3,
    name = "Lesser Beckoning",
    noise = {
      casting = 2,
      effect = 0
    },
    ["power cap"] = 100,
    range = {
      max = 5,
      min = 2
    },
    schools = {
      Translocation = true
    }
  },
  ["Lightning Bolt"] = {
    books = {
      ["book of Lightning"] = true,
      ["book of Storms"] = true
    },
    description = "Fires a mighty bolt of lightning. Its damage partially bypasses armour and it can be bounced off walls to hit targets twice.",
    flags = {
      dir_or_target = true,
      needs_tracer = true
    },
    level = 5,
    name = "Lightning Bolt",
    noise = {
      casting = 5,
      effect = 25
    },
    ["power cap"] = 200,
    range = {
      max = 7,
      min = 4
    },
    schools = {
      Air = true,
      Conjuration = true
    }
  },
  ["Magic Dart"] = {
    books = {
      ["book of Conjurations"] = true,
      ["book of Minor Magic"] = true
    },
    description = "Fires a small bolt of magical energy which never misses.",
    flags = {
      dir_or_target = true,
      needs_tracer = true
    },
    level = 1,
    name = "Magic Dart",
    noise = {
      casting = 1,
      effect = 1
    },
    ["power cap"] = 25,
    range = {
      max = 7,
      min = 7
    },
    schools = {
      Conjuration = true
    }
  },
  ["Malign Gateway"] = {
    books = {
      ["Grand Grimoire"] = true
    },
    description = "Tears a gash in reality, creating a self-sustained but temporary portal to an unknown, tainted otherworld. It requires open space to succeed. After a short time, a powerful clawed tentacle will reach through the portal, remaining bound to the caster's will for a duration depending on power. With the portal's expiry, the tentacle will be severed and turn on the caster. The duration of the portal increases with spell power.",
    flags = {
      chaotic = true,
      unholy = true
    },
    level = 7,
    name = "Malign Gateway",
    noise = {
      casting = 6,
      effect = 0
    },
    ["power cap"] = 200,
    schools = {
      Summoning = true,
      Translocation = true
    }
  },
  ["Manifold Assault"] = {
    books = {
      ["book of Spatial Translocations"] = true,
      ["Inescapable Atlas"] = true
    },
    description = "Warps space into paradoxical configurations in order to strike many visible targets with one melee attack. The effect is too imprecise to allow stabbing unsuspecting foes. At high power, it can be used to strike more enemies at once.",
    flags = {
      no_ghost = true
    },
    level = 5,
    name = "Manifold Assault",
    noise = {
      casting = 5,
      effect = 0
    },
    ["power cap"] = 100,
    schools = {
      Translocation = true
    }
  },
  ["Maxwell's Capacitive Coupling"] = {
    books = {
      ["book of Lightning"] = true,
      ["book of the Sky"] = true
    },
    description = "Gradually builds up electric charge in the caster, so long as they maintain focus (by waiting in place and not taking any other actions). When a threshold is reached, the charge couples with the nearest foe, vaporising them instantly. Higher spell power will allow the caster to accumulate charge more rapidly.",
    flags = {
      no_ghost = true
    },
    level = 8,
    name = "Maxwell's Capacitive Coupling",
    noise = {
      casting = 7,
      effect = 25
    },
    ["power cap"] = 200,
    range = {
      max = 7,
      min = 7
    },
    schools = {
      Air = true
    }
  },
  ["Mephitic Cloud"] = {
    books = {
      ["book of Minor Magic"] = true,
      ["Trismegistus Codex"] = true
    },
    description = "Conjures up a short-lived cloud of noxious fumes, which may cause confusion in any creature not resistant to poison. Tougher, more experienced creatures are less likely to be affected.",
    flags = {
      area = true,
      cloud = true,
      dir_or_target = true,
      needs_tracer = true
    },
    level = 3,
    name = "Mephitic Cloud",
    noise = {
      casting = 3,
      effect = 15
    },
    ["power cap"] = 100,
    range = {
      max = 4,
      min = 4
    },
    schools = {
      Air = true,
      Conjuration = true,
      Poison = true
    }
  },
  ["Metabolic Englaciation"] = {
    books = {
      ["book of Sloth"] = true,
      ["book of Winter"] = true
    },
    description = "Lowers the metabolic rate of every creature in the caster's vicinity, slowing all those who are not resistant to cold. Cold-blooded creatures will be affected much more strongly, and tougher creatures will be slowed for a shorter time.",
    flags = {
      area = true
    },
    level = 5,
    name = "Metabolic Englaciation",
    noise = {
      casting = 4,
      effect = 0
    },
    ["power cap"] = 200,
    schools = {
      Hexes = true,
      Ice = true
    }
  },
  ["Monstrous Menagerie"] = {
    books = {
      ["book of Beasts"] = true
    },
    description = "Summons a powerful exotic creature to the caster's aid: a manticore, a lindwurm, or, at high power, even a sphinx. Casting the spell at higher power also increases the strength of the beasts themselves.",
    flags = {
      mons_abjure = true
    },
    level = 7,
    name = "Monstrous Menagerie",
    noise = {
      casting = 5,
      effect = 0
    },
    ["power cap"] = 200,
    schools = {
      Summoning = true
    }
  },
  Necromutation = {
    books = {
      Necronomicon = true
    },
    description = "Transforms the caster into a lich — a powerful skeletal figure. The caster becomes stronger-willed, more resistant to cold and completely immune to poison, miasma, negative energy, and torment for the duration of the spell. The caster's necromancy spells are increased in power, and they gain a draining melee attack. The caster also gains some of the more dubious benefits of having an undead body, such as a vulnerability to holy damage and Dispel Undead, and an inability to consume potions.",
    flags = {
      chaotic = true,
      helpful = true
    },
    level = 8,
    name = "Necromutation",
    noise = {
      casting = 6,
      effect = 0
    },
    ["power cap"] = 200,
    schools = {
      Necromancy = true,
      Transmutation = true
    }
  },
  ["Olgreb's Toxic Radiance"] = {
    books = {
      ["the Unrestrained Analects"] = true,
      ["Young Poisoner's Handbook"] = true
    },
    description = "Causes the caster to radiate toxic energy, continuously inflicting poison on everything in line of sight for as long as the spell lasts.",
    flags = {
      area = true
    },
    level = 4,
    name = "Olgreb's Toxic Radiance",
    noise = {
      casting = 2,
      effect = 0
    },
    ["power cap"] = 100,
    schools = {
      Poison = true
    }
  },
  ["Orb of Destruction"] = {
    books = {
      ["book of Dangerous Friends"] = true,
      ["book of the Spheres"] = true
    },
    description = "Conjures an orb made of pure destructive magic. Compared to most other projectiles, these orbs travel at a relatively slow pace. The orbs home onto their targets, yet because of their huge inertia, especially agile opponents may be able to outmanoeuvre them. The orbs need some time to stabilize, and a nascent orb will deal reduced damage.\n\nResidents of the dungeon are able to maintain the orb until it impacts a target, but when cast by you the orb will dissipate upon leaving your line of sight.",
    flags = {
      dir_or_target = true,
      needs_tracer = true,
      not_self = true
    },
    level = 7,
    name = "Orb of Destruction",
    noise = {
      casting = 7,
      effect = 0
    },
    ["power cap"] = 200,
    range = {
      max = 7,
      min = 7
    },
    schools = {
      Conjuration = true
    }
  },
  ["Ozocubu's Armour"] = {
    books = {
      ["book of Winter"] = true,
      ["Ozocubu's Autobiography"] = true
    },
    description = "Envelops the caster's body in a protective layer of thick ice, granting a substantial bonus to armour as long as they remain in their current location. The ice will crack and fall away if the caster moves to a new position. The spell decreases in effectiveness in heavier armour, granting a lower bonus the higher the encumbrance rating of the caster's armour.",
    flags = {
      no_ghost = true
    },
    level = 3,
    name = "Ozocubu's Armour",
    noise = {
      casting = 3,
      effect = 0
    },
    ["power cap"] = 100,
    schools = {
      Ice = true
    }
  },
  ["Ozocubu's Refrigeration"] = {
    books = {
      ["Ozocubu's Autobiography"] = true,
      ["the Unrestrained Analects"] = true
    },
    description = "Drains heat from the caster and their surroundings, causing harm to all creatures not resistant to cold and bypassing any armour the targets may have. It prevents the caster from using potions for a brief duration.",
    flags = {
      area = true
    },
    level = 7,
    name = "Ozocubu's Refrigeration",
    noise = {
      casting = 5,
      effect = 0
    },
    ["power cap"] = 200,
    schools = {
      Ice = true
    }
  },
  Pain = {
    books = {
      ["book of Necromancy"] = true,
      ["book of Pain"] = true
    },
    description = "Inflicts an extremely painful injury upon one living creature. The caster suffers minor damage from the backlash.",
    flags = {
      dir_or_target = true,
      needs_tracer = true,
      WL_check = true
    },
    level = 1,
    name = "Pain",
    noise = {
      casting = 1,
      effect = 1
    },
    ["power cap"] = 25,
    range = {
      max = 5,
      min = 5
    },
    schools = {
      Necromancy = true
    }
  },
  ["Passage of Golubria"] = {
    books = {
      ["book of the Moon"] = true,
      ["Great Wizards, Vol. VII"] = true
    },
    description = "Opens two gateways (one always near the caster), which allow instantaneous transport to random other open gateways to any creature entering them. There is no limit to the number of gateways that can be open at one time, but a gateway will close when entered, or after a moderate amount of time.",
    flags = {
      escape = true,
      neutral = true,
      selfench = true,
      target = true
    },
    level = 4,
    name = "Passage of Golubria",
    noise = {
      casting = 3,
      effect = 8
    },
    ["power cap"] = 100,
    range = {
      max = 7,
      min = 2
    },
    schools = {
      Translocation = true
    }
  },
  Passwall = {
    books = {
      ["book of Burglary"] = true,
      ["book of Geomancy"] = true
    },
    description = "Tunes the caster's body such that it can instantly pass through solid rock. It takes some time for the caster to attune to the rock, during which they will be helpless.",
    flags = {
      escape = true,
      not_self = true,
      target = true,
      utility = true
    },
    level = 2,
    name = "Passwall",
    noise = {
      casting = 0,
      effect = 0
    },
    ["power cap"] = 120,
    range = {
      max = 7,
      min = 1
    },
    schools = {
      Earth = true,
      Transmutation = true
    }
  },
  Petrify = {
    books = {
      ["book of Alchemy"] = true,
      ["book of Sloth"] = true
    },
    description = "Petrifies a targeted creature. If successful, the target is slowed down for a while until it is temporarily turned into stone. In this state, the target will take less damage upon being hit.",
    flags = {
      dir_or_target = true,
      needs_tracer = true,
      WL_check = true
    },
    level = 4,
    name = "Petrify",
    noise = {
      casting = 3,
      effect = 0
    },
    ["power cap"] = 100,
    range = {
      max = 7,
      min = 7
    },
    schools = {
      Earth = true,
      Transmutation = true
    }
  },
  ["Poisonous Vapours"] = {
    books = {
      ["book of Vapours"] = true,
      ["Young Poisoner's Handbook"] = true
    },
    description = "Turns the air around a targeted creature toxic, directly inflicting poison on the target before dispersing.",
    flags = {
      not_self = true,
      target = true
    },
    level = 2,
    name = "Poisonous Vapours",
    noise = {
      casting = 2,
      effect = 0
    },
    ["power cap"] = 50,
    range = {
      max = 7,
      min = 7
    },
    schools = {
      Air = true,
      Poison = true
    }
  },
  ["Polar Vortex"] = {
    books = {
      ["book of Ice"] = true
    },
    description = "Turns the air around the caster into a freezing vortex, doing tremendous damage to everyone caught in it that can only partially be mitigated by resistance to cold. Those affected will also be swept up into the air and tossed around. Only the eye of the storm is a safe place, and it follows the caster. The vortex is unable to follow the caster through long-distance translocations. The spell's effectiveness is greatly diminished in closed areas. After the vortex fades, it cannot be called forth again for a short time.",
    flags = {
      area = true
    },
    level = 9,
    name = "Polar Vortex",
    noise = {
      casting = 5,
      effect = 15
    },
    ["power cap"] = 200,
    range = {
      max = 5,
      min = 5
    },
    schools = {
      Ice = true
    }
  },
  ["Portal Projectile"] = {
    books = {
      ["book of the Hunter"] = true,
      ["book of Weapons"] = true
    },
    description = "Allows the caster to teleport fired or thrown missiles directly to their targets for a short duration, spending an additional small amount of magic for each missile. Teleported projectiles have their accuracy greatly increased.",
    flags = {},
    level = 3,
    name = "Portal Projectile",
    noise = {
      casting = 3,
      effect = 0
    },
    ["power cap"] = 50,
    schools = {
      Hexes = true,
      Translocation = true
    }
  },
  Sandblast = {
    books = {
      ["book of Geomancy"] = true
    },
    description = "Consumes a stone to create a short blast of high-velocity rock shards. Its damage is strongly reduced by armour.",
    flags = {
      dir_or_target = true,
      needs_tracer = true,
      not_self = true
    },
    level = 1,
    name = "Sandblast",
    noise = {
      casting = 1,
      effect = 2
    },
    ["power cap"] = 50,
    range = {
      max = 3,
      min = 3
    },
    schools = {
      Earth = true
    }
  },
  Scorch = {
    books = {
      ["book of Scorching"] = true
    },
    description = "Scorches a random foe. Those injured by this have their resistance to fire burned away for a short time.",
    flags = {
      no_ghost = true
    },
    level = 2,
    name = "Scorch",
    noise = {
      casting = 4,
      effect = 8
    },
    ["power cap"] = 50,
    range = {
      max = 3,
      min = 3
    },
    schools = {
      Fire = true
    }
  },
  ["Searing Ray"] = {
    books = {
      ["book of Conjurations"] = true
    },
    description = "Fires a continuous piercing ray of arcane energy from the caster's hands. So long as the caster maintains focus upon the spell and supplies it with magical power (by waiting in place and not taking any other actions), the ray will follow the caster's target if it should move.",
    flags = {
      dir_or_target = true,
      needs_tracer = true
    },
    level = 2,
    name = "Searing Ray",
    noise = {
      casting = 2,
      effect = 2
    },
    ["power cap"] = 50,
    range = {
      max = 4,
      min = 4
    },
    schools = {
      Conjuration = true
    }
  },
  Shatter = {
    books = {
      ["book of Annihilations"] = true
    },
    description = "Causes an enormous burst of concussive force around the caster, dealing severe damage to all nearby creatures. It is especially effective against those made from ice, bone, or any wall-like substance (such as rock, metal or crystal), as well as those turned to stone by petrification. It is less effective against flying, gelatinous and insubstantial creatures. It may also destroy nearby walls.",
    flags = {
      area = true
    },
    level = 9,
    name = "Shatter",
    noise = {
      casting = 7,
      effect = 30
    },
    ["power cap"] = 200,
    schools = {
      Earth = true
    }
  },
  Shock = {
    books = {
      ["book of Air"] = true
    },
    description = "Throws a bouncing bolt of electricity. It partially bypasses armour.",
    flags = {
      dir_or_target = true,
      needs_tracer = true
    },
    level = 1,
    name = "Shock",
    noise = {
      casting = 1,
      effect = 1
    },
    ["power cap"] = 25,
    range = {
      max = 7,
      min = 7
    },
    schools = {
      Air = true,
      Conjuration = true
    }
  },
  Silence = {
    books = {
      ["book of the Moon"] = true,
      ["book of the Senses"] = true
    },
    description = "Eliminates all sound near the caster. This makes reading scrolls, casting spells, invoking divine abilities, or shouting impossible in the caster's vicinity. The spell's oppressive, unnatural effect will greatly hamper stealth.\n\nCertain monsters have innate magical or special abilities which will still be usable while silenced.\n\nThe effect starts out with a radius depending on power, which will then shrink, eventually covering only the caster, before it times out.",
    flags = {
      area = true
    },
    level = 5,
    name = "Silence",
    noise = {
      casting = 4,
      effect = 0
    },
    ["power cap"] = 200,
    schools = {
      Air = true,
      Hexes = true
    }
  },
  Simulacrum = {
    books = {
      ["book of Ice"] = true,
      ["book of the Tundra"] = true,
      ["book of Winter"] = true
    },
    description = "Creates an icy replica from the corpse of the original being. This magic is unstable, so eventually the replica will sublimate into a freezing cloud. Simulacra cannot leave the level they were created on. The number of simulacra created depends on the size of the creature and spell power.",
    flags = {},
    level = 6,
    name = "Simulacrum",
    noise = {
      casting = 5,
      effect = 0
    },
    ["power cap"] = 200,
    schools = {
      Ice = true,
      Necromancy = true
    }
  },
  Slow = {
    books = {
      ["book of Debilitation"] = true
    },
    description = "Slows the actions of a creature.",
    flags = {
      dir_or_target = true,
      needs_tracer = true,
      WL_check = true
    },
    level = 1,
    name = "Slow",
    noise = {
      casting = 2,
      effect = 0
    },
    ["power cap"] = 25,
    range = {
      max = 7,
      min = 7
    },
    schools = {
      Hexes = true
    }
  },
  ["Spellforged Servitor"] = {
    books = {
      ["book of Dangerous Friends"] = true,
      ["book of Power"] = true
    },
    description = "Summons an extraplanar elemental and binds it to a durable shell forged from the caster's own magic. The servitor is capable of unleashing some of the destructive spells known to its creator, though the strongest and most volatile of magics cannot be imbued in this fashion. The strength of the servitor increases with spell power.",
    flags = {},
    level = 7,
    name = "Spellforged Servitor",
    noise = {
      casting = 6,
      effect = 0
    },
    ["power cap"] = 200,
    schools = {
      Conjuration = true,
      Summoning = true
    }
  },
  ["Spider Form"] = {
    books = {
      ["book of Changes"] = true,
      ["book of Dreams"] = true
    },
    description = "Transforms the caster into a venomous, spider-like creature. The caster becomes highly evasive and gains a poisonous bite, but gains vulnerability to poison.\n\nWhile transformed, any equipped weapons and armour are melded, and casting spells becomes slightly more difficult.",
    flags = {
      chaotic = true,
      helpful = true,
      utility = true
    },
    level = 3,
    name = "Spider Form",
    noise = {
      casting = 2,
      effect = 0
    },
    ["power cap"] = 100,
    schools = {
      Poison = true,
      Transmutation = true
    }
  },
  Starburst = {
    books = {
      ["book of Fire"] = true,
      ["book of Spectacle"] = true
    },
    description = "Releases penetrating bolts of fire from the caster in every direction.",
    flags = {
      area = true
    },
    level = 6,
    name = "Starburst",
    noise = {
      casting = 6,
      effect = 6
    },
    ["power cap"] = 200,
    range = {
      max = 5,
      min = 5
    },
    schools = {
      Conjuration = true,
      Fire = true
    }
  },
  ["Static Discharge"] = {
    books = {
      ["book of Lightning"] = true,
      ["book of Touch"] = true
    },
    description = "Releases electrical charges against those next to the caster. These may arc to other adjacent creatures, or back to the caster, before eventually grounding out. It deals reduced damage when arcing to the caster, and bypasses any armour the target may have.",
    flags = {
      area = true
    },
    level = 2,
    name = "Static Discharge",
    noise = {
      casting = 3,
      effect = 0
    },
    ["power cap"] = 100,
    range = {
      max = 1,
      min = 1
    },
    schools = {
      Air = true,
      Conjuration = true
    }
  },
  ["Statue Form"] = {
    books = {
      ["book of Sloth"] = true,
      ["book of the Earth"] = true
    },
    description = "Transforms the caster into a slow but extremely robust stone statue. The caster's melee damage, both unarmed and with weapons, is substantially increased. The caster's stone body is immune to poison and miasma, and gains resistance to electricity and negative energy. High power increases the armour granted by this form.\n\nWhile transformed, any equipped body armour, gloves and boots are melded.",
    flags = {
      chaotic = true,
      helpful = true,
      utility = true
    },
    level = 6,
    name = "Statue Form",
    noise = {
      casting = 5,
      effect = 0
    },
    ["power cap"] = 150,
    schools = {
      Earth = true,
      Transmutation = true
    }
  },
  ["Sticky Flame"] = {
    books = {
      ["book of Touch"] = true,
      ["Everburning Encyclopedia"] = true
    },
    description = "Conjures a glob of sticky flame, covering an adjacent creature with liquid fire for a short time.",
    flags = {
      dir_or_target = true,
      needs_tracer = true
    },
    level = 4,
    name = "Sticky Flame",
    noise = {
      casting = 4,
      effect = 1
    },
    ["power cap"] = 100,
    range = {
      max = 1,
      min = 1
    },
    schools = {
      Conjuration = true,
      Fire = true
    }
  },
  Sting = {
    books = {
      ["Young Poisoner's Handbook"] = true
    },
    description = "Briefly transforms one of the caster's limbs into a long insectoid stinger, which lashes out at the target. The stinger's impact will always poison a susceptible target. Even resistant targets have a chance to be poisoned and immune monsters will be damaged by the physical impact of the stinger.",
    flags = {
      dir_or_target = true,
      needs_tracer = true
    },
    level = 1,
    name = "Sting",
    noise = {
      casting = 1,
      effect = 1
    },
    ["power cap"] = 25,
    range = {
      max = 3,
      min = 3
    },
    schools = {
      Poison = true,
      Transmutation = true
    }
  },
  ["Stone Arrow"] = {
    books = {
      ["book of Armaments"] = true,
      ["book of Geomancy"] = true
    },
    description = "Fires a sharp spine of rock.",
    flags = {
      dir_or_target = true,
      needs_tracer = true
    },
    level = 3,
    name = "Stone Arrow",
    noise = {
      casting = 3,
      effect = 3
    },
    ["power cap"] = 50,
    range = {
      max = 4,
      min = 4
    },
    schools = {
      Conjuration = true,
      Earth = true
    }
  },
  ["Storm Form"] = {
    books = {
      ["book of the Sky"] = true,
      ["Inescapable Atlas"] = true
    },
    description = "Lets the caster walk through the air as a raging, lightning-filled tempest. The caster's melee attacks are strengthened, electrified, and strike all adjacent foes. The caster also flies, is more evasive, gains immunity to poison and miasma, and resists electricity. They can launch themselves as a lightning bolt, blasting through everything in their way. The damage and evasion granted by storm form are highly dependent on the power with which it was cast.\n\nWhile transformed, any equipped weapons and armour are melded.",
    flags = {
      chaotic = true,
      helpful = true,
      utility = true
    },
    level = 7,
    name = "Storm Form",
    noise = {
      casting = 15,
      effect = 0
    },
    ["power cap"] = 200,
    schools = {
      Air = true,
      Transmutation = true
    }
  },
  ["Sublimation of Blood"] = {
    books = {
      ["book of Alchemy"] = true,
      ["book of Blood"] = true
    },
    description = "Converts some of the caster's blood into magical energy. The process is painful but never directly lethal. The efficiency of the conversion increases with the spell's power.",
    flags = {
      utility = true
    },
    level = 2,
    name = "Sublimation of Blood",
    noise = {
      casting = 2,
      effect = 0
    },
    ["power cap"] = 100,
    schools = {
      Necromancy = true
    }
  },
  ["Summon Cactus Giant"] = {
    books = {
      ["book of Scorching"] = true,
      ["book of the Wilderness"] = true
    },
    description = "Summons a warrior from a particularly prickly tribe. Foes that strike these giants in melee are in for a painful surprise! When cast at a higher power, older, more robust warriors will answer the call.",
    flags = {},
    level = 6,
    name = "Summon Cactus Giant",
    noise = {
      casting = 4,
      effect = 0
    },
    ["power cap"] = 200,
    schools = {
      Summoning = true
    }
  },
  ["Summon Forest"] = {
    books = {
      ["book of the Wilderness"] = true,
      ["Fen Folio"] = true
    },
    description = "Forcefully intersects a forested plane with this world. It requires open space to succeed. While the spell holds, a spirit of the forest will be called forth, and the trees of the forest will be awakened to deal damage to nearby enemies. Spell power increases the duration, size, and thickness of the intersected plane; as well as the strength of the spirit.",
    flags = {},
    level = 5,
    name = "Summon Forest",
    noise = {
      casting = 4,
      effect = 10
    },
    ["power cap"] = 200,
    schools = {
      Summoning = true,
      Translocation = true
    }
  },
  ["Summon Guardian Golem"] = {
    books = {
      ["book of Callings"] = true,
      ["book of Dangerous Friends"] = true
    },
    description = "Summons a protective golem. It redirects the injuries of its allies (but not the caster) to itself. When sufficiently damaged, it may fill with an inner flame, causing it to explode if destroyed. It gains more health at high power.",
    flags = {},
    level = 3,
    name = "Summon Guardian Golem",
    noise = {
      casting = 3,
      effect = 0
    },
    ["power cap"] = 100,
    schools = {
      Hexes = true,
      Summoning = true
    }
  },
  ["Summon Horrible Things"] = {
    books = {
      ["Grand Grimoire"] = true
    },
    description = "Opens a gate to the Abyss and calls through one or more hideous abominations from that dreadful place. The opening of the gate may drain a portion of the caster's intellect. The number of abominations summoned increases with spell power.",
    flags = {
      chaotic = true,
      mons_abjure = true,
      unholy = true
    },
    level = 8,
    name = "Summon Horrible Things",
    noise = {
      casting = 6,
      effect = 0
    },
    ["power cap"] = 200,
    schools = {
      Summoning = true
    }
  },
  ["Summon Hydra"] = {
    books = {
      ["book of Blood"] = true,
      ["Fen Folio"] = true
    },
    description = "Summons a many-headed hydra to fight alongside the caster for a short time. Spell power determines the number of heads.",
    flags = {
      mons_abjure = true
    },
    level = 7,
    name = "Summon Hydra",
    noise = {
      casting = 6,
      effect = 0
    },
    ["power cap"] = 200,
    schools = {
      Summoning = true
    }
  },
  ["Summon Ice Beast"] = {
    books = {
      ["book of Beasts"] = true,
      ["book of Rime"] = true
    },
    description = "Calls forth a beast of ice to serve the caster. The strength of the beast depends on spell power.",
    flags = {},
    level = 4,
    name = "Summon Ice Beast",
    noise = {
      casting = 3,
      effect = 0
    },
    ["power cap"] = 100,
    schools = {
      Ice = true,
      Summoning = true
    }
  },
  ["Summon Lightning Spire"] = {
    books = {
      ["book of Storms"] = true,
      ["book of the Sky"] = true
    },
    description = "Constructs a lightning spire in a nearby location. It can fire bouncing bolts of electricity at the caster's foes, but is completely immobile. The strength of the spire depends on spell power.",
    flags = {},
    level = 4,
    name = "Summon Lightning Spire",
    noise = {
      casting = 2,
      effect = 0
    },
    ["power cap"] = 100,
    schools = {
      Air = true,
      Summoning = true
    }
  },
  ["Summon Mana Viper"] = {
    books = {
      ["book of Beasts"] = true,
      ["book of the Wilderness"] = true
    },
    description = "Summons a violet-scaled serpent whose bite can swiftly drain the magical reserves of nearly any foe. At higher power, the antimagic properties of the viper's bite grow even stronger.",
    flags = {
      mons_abjure = true
    },
    level = 5,
    name = "Summon Mana Viper",
    noise = {
      casting = 4,
      effect = 0
    },
    ["power cap"] = 100,
    schools = {
      Hexes = true,
      Summoning = true
    }
  },
  ["Summon Small Mammal"] = {
    books = {
      ["book of Callings"] = true,
      ["book of Cantrips"] = true
    },
    description = "Summons a rat, bat, or quokka to the caster's aid. Spell power increases the chance of summoning a quokka.",
    flags = {},
    level = 1,
    name = "Summon Small Mammal",
    noise = {
      casting = 1,
      effect = 0
    },
    ["power cap"] = 25,
    schools = {
      Summoning = true
    }
  },
  Swiftness = {
    books = {
      ["book of Air"] = true,
      ["book of Burglary"] = true
    },
    description = "Calls forth winds to greatly increase the caster's movement speed. After the effect ends, the caster's movements will be sluggish for a time.",
    flags = {
      hasty = true,
      selfench = true,
      utility = true
    },
    level = 3,
    name = "Swiftness",
    noise = {
      casting = 2,
      effect = 0
    },
    ["power cap"] = 100,
    schools = {
      Air = true
    }
  },
  ["Teleport Other"] = {
    books = {
      ["book of Displacement"] = true,
      ["There-And-Back Book"] = true
    },
    description = "Randomly translocates a targeted creature.",
    flags = {
      dir_or_target = true,
      escape = true,
      needs_tracer = true,
      not_self = true,
      WL_check = true
    },
    level = 3,
    name = "Teleport Other",
    noise = {
      casting = 3,
      effect = 0
    },
    ["power cap"] = 100,
    range = {
      max = 7,
      min = 7
    },
    schools = {
      Translocation = true
    }
  },
  ["Tukima's Dance"] = {
    books = {
      ["book of Maledictions"] = true,
      ["Great Wizards, Vol. VII"] = true
    },
    description = "Animates the weapon of a targeted foe, ripping it from their hands and causing it to attack them relentlessly. Once the target dies, the weapon will fall to the ground shortly thereafter.\n\nCertain powerful named artefacts cannot be animated, and any properties that require skill in evocations will not be active.",
    flags = {
      dir_or_target = true,
      needs_tracer = true,
      not_self = true,
      WL_check = true
    },
    level = 3,
    name = "Tukima's Dance",
    noise = {
      casting = 3,
      effect = 0
    },
    ["power cap"] = 100,
    range = {
      max = 7,
      min = 7
    },
    schools = {
      Hexes = true
    }
  },
  ["Vampiric Draining"] = {
    books = {
      ["book of Debilitation"] = true,
      ["book of Necromancy"] = true
    },
    description = "Steals the life of an adjacent living creature and grants it to the caster.",
    flags = {
      dir_or_target = true,
      not_self = true
    },
    level = 3,
    name = "Vampiric Draining",
    noise = {
      casting = 3,
      effect = 0
    },
    ["power cap"] = 100,
    range = {
      max = 1,
      min = 1
    },
    schools = {
      Necromancy = true
    }
  },
  Wereblood = {
    books = {
      ["book of Blood"] = true,
      ["book of Changes"] = true
    },
    description = "Transforms some of the caster's blood into that of a were-beast, causing them to occasionally howl uncontrollably. While active, each non-summoned enemy the caster slays in combat temporarily enhances their melee and ranged effectiveness, and killing adjacent enemies also provides minor healing.\n\nThe bonus only lasts for the duration of a single cast; retransforming the caster's blood calms the were-spirit and resets the bonus.",
    flags = {
      chaotic = true,
      utility = true
    },
    level = 2,
    name = "Wereblood",
    noise = {
      casting = 2,
      effect = 8
    },
    ["power cap"] = 100,
    schools = {
      Transmutation = true
    }
  },
  ["Yara's Violent Unravelling"] = {
    books = {
      ["book of Misfortune"] = true,
      ["Great Wizards, Vol. VII"] = true
    },
    description = "If cast upon a creature already blessed (or cursed) with magical enchantments, those enchantments will be torn apart, transforming into a spray of destructive mutagenic radiation. The victim and anyone adjacent will be blasted and heavily deformed, weakening them and reducing their armour. Summoned creatures are particularly vulnerable, as the enchantments binding them to this plane will unravel and cause them to be dismissed immediately.",
    flags = {
      chaotic = true,
      no_ghost = true,
      target = true
    },
    level = 5,
    name = "Yara's Violent Unravelling",
    noise = {
      casting = 5,
      effect = 15
    },
    ["power cap"] = 200,
    range = {
      max = 7,
      min = 7
    },
    schools = {
      Hexes = true,
      Transmutation = true
    }
  }
}