[
  {
    "id": "smite",
    "type": "SPELL",
    "name": "Smite",
    "description": "Evil has become pervasive throughout the world.  Let your power be the light that shines in the darkness!",
    "valid_targets": [ "hostile" ],
    "min_damage": 10,
    "max_damage": 200,
    "damage_increment": 15,
    "min_range": 1,
    "max_range": 1,
    "effect": "attack",
    "shape": "blast",
    "base_casting_time": 160,
    "final_casting_time": 40,
    "casting_time_increment": -8,
    "base_energy_cost": 400,
    "final_energy_cost": 200,
    "energy_increment": -14,
    "spell_class": "ANIMIST",
    "difficulty": 8,
    "max_level": 15,
    "damage_type": "pure",
    "flags": [ "VERBAL", "LOUD", "NO_HANDS" ],
    "energy_source": "MANA"
  },
  {
    "id": "recover_mana",
    "type": "SPELL",
    "name": "Life Conversion",
    "description": "You channel lifeforce itself into your spiritual energy.  You spend runes to regain mana.",
    "valid_targets": [ "self" ],
    "min_damage": 75,
    "damage_increment": 15.0,
    "max_damage": 600,
    "max_level": 35,
    "effect": "recover_energy",
    "effect_str": "MANA",
    "shape": "blast",
    "spell_class": "ANIMIST",
    "energy_source": "MANA",
    "components": "spell_components_rune_animist",
    "base_casting_time": 500,
    "flags": [ "SOMATIC", "VERBAL", "SILENT", "NO_LEGS", "CONSUMES_RUNES" ],
    "difficulty": 3
  },
  {
    "id": "recover_pain",
    "type": "SPELL",
    "name": "Mind over Pain",
    "description": "With an intense ritual that resembles crossfit, you manage to put some of your pain at bay.",
    "valid_targets": [ "self" ],
    "min_damage": 10,
    "max_damage": 100,
    "damage_increment": 2.0,
    "max_level": 45,
    "spell_class": "ANIMIST",
    "effect": "recover_energy",
    "effect_str": "PAIN",
    "shape": "blast",
    "energy_source": "STAMINA",
    "base_casting_time": 50000,
    "base_energy_cost": 5000,
    "energy_increment": 500.0,
    "flags": [ "SOMATIC", "VERBAL", "PAIN_NORESIST" ],
    "final_energy_cost": 10000
  },
  {
    "id": "summon_undead",
    "type": "SPELL",
    "name": "Summon Undead",
    "description": "An ethereal-looking undead rises from the depths of the earth to fight for you.  You may be able to summon the stronger ones with a higher level in this spell.",
    "valid_targets": [ "self" ],
    "min_damage": 1,
    "max_damage": 1,
    "max_level": 35,
    "difficulty": 3,
    "spell_class": "ANIMIST",
    "effect": "effect_on_condition",
    "effect_str": "EOC_SUMMON_ZOMBIE",
    "components": "spell_components_rune_animist",
    "shape": "blast",
    "energy_source": "MANA",
    "base_energy_cost": 400,
    "base_casting_time": 3000,
    "flags": [ "SOMATIC", "VERBAL", "CONCENTRATE", "CONSUMES_RUNES" ],
    "min_duration": 36000,
    "max_duration": 1080000,
    "duration_increment": 36000
  },
  {
    "type": "effect_on_condition",
    "id": "EOC_SUMMON_ZOMBIE",
    "effect": {
      "switch": { "u_val": "spell_level", "spell": "summon_undead" },
      "cases": [
        { "case": 0, "effect": { "u_cast_spell": { "id": "summon_zombie" } } },
        { "case": 7, "effect": { "u_cast_spell": { "id": "summon_tough_zombie" } } },
        { "case": 14, "effect": { "u_cast_spell": { "id": "summon_zombie_brute" } } },
        { "case": 21, "effect": { "u_cast_spell": { "id": "summon_skeleton" } } },
        { "case": 28, "effect": { "u_cast_spell": { "id": "summon_skeleton_brute" } } },
        { "case": 35, "effect": { "u_cast_spell": { "id": "summon_skeleton_hulk" } } }
      ]
    }
  },
  {
    "abstract": "summon_abstract_zombie",
    "type": "SPELL",
    "name": "Abstract Summon Zombie",
    "description": "Abstract of Summon Undead spell.",
    "valid_targets": [ "ground" ],
    "min_damage": 1,
    "max_damage": 1,
    "max_level": 35,
    "effect": "summon",
    "shape": "blast",
    "min_range": 3,
    "max_range": 3,
    "min_aoe": 2,
    "max_aoe": 2,
    "flags": [ "SILENT", "NO_EXPLOSION_SFX", "NO_CORPSE_QUIET" ],
    "min_duration": 36000,
    "max_duration": 1080000,
    "duration_increment": 36000
  },
  {
    "id": "summon_zombie",
    "copy-from": "summon_abstract_zombie",
    "type": "SPELL",
    "name": "Summon Zombie",
    "description": "Summon a zombie.  Part of Summon Undead spell.",
    "valid_targets": [ "ground" ],
    "effect": "summon",
    "effect_str": "mon_zombie",
    "max_level": 35,
    "min_duration": 216000,
    "max_duration": 216000,
    "duration_increment": 36000
  },
  {
    "id": "summon_tough_zombie",
    "copy-from": "summon_abstract_zombie",
    "type": "SPELL",
    "name": "Summon Tough Zombie",
    "description": "Summon a tough zombie.  Part of Summon Undead spell.",
    "valid_targets": [ "ground" ],
    "effect": "summon",
    "effect_str": "mon_zombie_tough",
    "max_level": 35,
    "min_duration": 468000,
    "max_duration": 468000,
    "duration_increment": 36000
  },
  {
    "id": "summon_zombie_brute",
    "copy-from": "summon_abstract_zombie",
    "type": "SPELL",
    "name": "Summon Zombie Brute",
    "description": "Summon a zombie brute.  Part of Summon Undead spell.",
    "valid_targets": [ "ground" ],
    "effect": "summon",
    "effect_str": "mon_zombie_brute",
    "max_level": 35,
    "min_duration": 720000,
    "max_duration": 720000,
    "duration_increment": 36000
  },
  {
    "id": "summon_skeleton",
    "copy-from": "summon_abstract_zombie",
    "type": "SPELL",
    "name": "Summon Skeleton Zombie",
    "description": "Summon a skeleton zombie.  Part of Summon Undead spell.",
    "valid_targets": [ "ground" ],
    "effect": "summon",
    "effect_str": "mon_skeleton",
    "max_level": 35,
    "min_duration": 972000,
    "max_duration": 972000,
    "duration_increment": 36000
  },
  {
    "id": "summon_skeleton_brute",
    "copy-from": "summon_abstract_zombie",
    "type": "SPELL",
    "name": "Summon Skeletal Brute",
    "description": "Summon a skeletal brute.  Part of Summon Undead spell.",
    "valid_targets": [ "ground" ],
    "effect": "summon",
    "effect_str": "mon_skeleton_brute",
    "max_level": 35,
    "min_duration": 1260000,
    "max_duration": 1260000,
    "duration_increment": 36000
  },
  {
    "id": "summon_skeleton_hulk",
    "copy-from": "summon_abstract_zombie",
    "type": "SPELL",
    "name": "Summon Skeletal Juggernaut",
    "description": "Summon a skeletal juggernaut.  Part of Summon Undead spell.",
    "valid_targets": [ "ground" ],
    "effect": "summon",
    "effect_str": "mon_skeleton_hulk",
    "max_level": 35,
    "min_duration": 1260000,
    "max_duration": 1260000,
    "duration_increment": 36000
  },
  {
    "id": "summon_undead_swarm",
    "type": "SPELL",
    "name": "Summon Undead Swarm",
    "description": "A group of undead animals rises from the depths of the earth to fight for you.  You may be able to summon the stronger ones with a higher level in this spell.",
    "valid_targets": [ "self" ],
    "min_damage": 1,
    "max_damage": 1,
    "max_level": 35,
    "difficulty": 3,
    "spell_class": "ANIMIST",
    "effect": "effect_on_condition",
    "effect_str": "EOC_SUMMON_ZOMBIE_SWARM",
    "components": "spell_components_rune_animist_3",
    "shape": "blast",
    "energy_source": "MANA",
    "base_energy_cost": 600,
    "base_casting_time": 3000,
    "flags": [ "SOMATIC", "VERBAL", "CONCENTRATE", "CONSUMES_RUNES" ],
    "min_duration": 36000,
    "max_duration": 1080000,
    "duration_increment": 36000
  },
  {
    "type": "effect_on_condition",
    "id": "EOC_SUMMON_ZOMBIE_SWARM",
    "effect": {
      "switch": { "u_val": "spell_level", "spell": "summon_undead_swarm" },
      "cases": [
        { "case": 0, "effect": { "u_cast_spell": { "id": "summon_zombie_dog" } } },
        { "case": 5, "effect": { "u_cast_spell": { "id": "summon_dog_skeleton" } } },
        { "case": 10, "effect": { "u_cast_spell": { "id": "summon_zougar" } } },
        { "case": 15, "effect": { "u_cast_spell": { "id": "summon_wolf_skeleton" } } },
        { "case": 20, "effect": { "u_cast_spell": { "id": "summon_dog_zombie_brute" } } },
        { "case": 25, "effect": { "u_cast_spell": { "id": "summon_dog_skeleton_brute" } } },
        { "case": 30, "effect": { "u_cast_spell": { "id": "summon_dog_zombie_hulk" } } },
        { "case": 35, "effect": { "u_cast_spell": { "id": "summon_zougar_hunter" } } }
      ]
    }
  },
  {
    "abstract": "summon_abstract_swarm",
    "type": "SPELL",
    "name": "Abstract Summon Swarm",
    "description": "Abstract of Summon Undead Swarm spell.",
    "valid_targets": [ "ground" ],
    "min_damage": 3,
    "max_damage": 3,
    "max_level": 35,
    "effect": "summon",
    "shape": "blast",
    "min_range": 3,
    "max_range": 3,
    "min_aoe": 2,
    "max_aoe": 2,
    "flags": [ "SILENT", "NO_EXPLOSION_SFX", "NO_CORPSE_QUIET" ],
    "min_duration": 36000,
    "max_duration": 1080000,
    "duration_increment": 36000
  },
  {
    "id": "summon_zombie_dog",
    "copy-from": "summon_abstract_swarm",
    "type": "SPELL",
    "name": "Summon Zombie Dog",
    "description": "Summon a zombie dog.  Part of Summon Undead Swarm spell.",
    "valid_targets": [ "ground" ],
    "effect": "summon",
    "effect_str": "mon_zombie_dog",
    "max_level": 35,
    "min_duration": 144000,
    "max_duration": 144000,
    "duration_increment": 36000
  },
  {
    "id": "summon_dog_skeleton",
    "copy-from": "summon_abstract_swarm",
    "type": "SPELL",
    "name": "Summon Skeletal Dog",
    "description": "Summon a skeletal dog.  Part of Summon Undead Swarm spell.",
    "valid_targets": [ "ground" ],
    "effect": "summon",
    "effect_str": "mon_dog_skeleton",
    "max_level": 35,
    "min_duration": 324000,
    "max_duration": 324000,
    "duration_increment": 36000
  },
  {
    "id": "summon_zougar",
    "copy-from": "summon_abstract_swarm",
    "type": "SPELL",
    "name": "Summon Decayed Pouncer",
    "description": "Summon a decayed pouncer.  Part of Summon Undead Swarm spell.",
    "valid_targets": [ "ground" ],
    "effect": "summon",
    "effect_str": "mon_zougar",
    "max_level": 35,
    "min_duration": 504000,
    "max_duration": 504000,
    "duration_increment": 36000
  },
  {
    "id": "summon_wolf_skeleton",
    "copy-from": "summon_abstract_swarm",
    "type": "SPELL",
    "name": "Summon Skeletal Wolf",
    "description": "Summon a skeletal wolf.  Part of Summon Undead Swarm spell.",
    "valid_targets": [ "ground" ],
    "effect": "summon",
    "effect_str": "mon_wolf_skeleton",
    "max_level": 35,
    "min_duration": 684000,
    "max_duration": 684000,
    "duration_increment": 36000
  },
  {
    "id": "summon_dog_zombie_brute",
    "copy-from": "summon_abstract_swarm",
    "type": "SPELL",
    "name": "Summon Barghest",
    "description": "Summon a barghest.  Part of Summon Undead Swarm spell.",
    "valid_targets": [ "ground" ],
    "effect": "summon",
    "effect_str": "mon_dog_zombie_brute",
    "max_level": 35,
    "min_duration": 864000,
    "max_duration": 864000,
    "duration_increment": 36000
  },
  {
    "id": "summon_dog_skeleton_brute",
    "copy-from": "summon_abstract_swarm",
    "type": "SPELL",
    "name": "Summon Boneplate Wolf",
    "description": "Summon a boneplate wolf.  Part of Summon Undead Swarm spell.",
    "valid_targets": [ "ground" ],
    "effect": "summon",
    "effect_str": "mon_dog_skeleton_brute",
    "max_level": 35,
    "min_duration": 1044000,
    "max_duration": 1044000,
    "duration_increment": 36000
  },
  {
    "id": "summon_dog_zombie_hulk",
    "copy-from": "summon_abstract_swarm",
    "type": "SPELL",
    "name": "Summon Hulking Horror",
    "description": "Summon a Hulking Horror.  Part of Summon Undead Swarm spell.",
    "valid_targets": [ "ground" ],
    "effect": "summon",
    "effect_str": "mon_dog_zombie_hulk",
    "max_level": 35,
    "min_duration": 1260000,
    "max_duration": 1260000,
    "duration_increment": 36000
  },
  {
    "id": "summon_zougar_hunter",
    "copy-from": "summon_abstract_swarm",
    "type": "SPELL",
    "name": "Summon Spearcat Hunter",
    "description": "Summon a spearcat hunter.  Part of Summon Undead Swarm spell.",
    "valid_targets": [ "ground" ],
    "effect": "summon",
    "effect_str": "mon_zougar_hunter",
    "max_level": 35,
    "min_duration": 1260000,
    "max_duration": 1260000,
    "duration_increment": 36000
  },
  {
    "id": "necrotic_gaze",
    "type": "SPELL",
    "name": "Necrotic Gaze",
    "description": "You use the power of your own blood, concentrated in rune, to imbue necrotic energy into your gaze, damaging the target you look at.",
    "valid_targets": [ "hostile" ],
    "effect": "attack",
    "shape": "line",
    "spell_class": "ANIMIST",
    "energy_source": "MANA",
    "flags": [ "NO_LEGS", "CONCENTRATE", "SOMATIC", "NO_PROJECTILE", "NO_HANDS", "CONSUMES_RUNES" ],
    "components": "spell_components_rune_animist",
    "min_damage": 10,
    "max_damage": 160,
    "damage_increment": 6.0,
    "min_range": 3,
    "max_range": 5,
    "range_increment": 0.1,
    "max_level": 25,
    "difficulty": 3,
    "base_casting_time": 100,
    "min_aoe": 1,
    "max_aoe": 3,
    "aoe_increment": 0.1,
    "damage_type": "biological"
  },
  {
    "id": "create_rune_animist",
    "type": "SPELL",
    "name": { "str": "Animist Rune" },
    "description": "This ritual creates a small pebble attuned to Animists.  You can use the rune to summon creatures, or as a catalyst for recipes.",
    "valid_targets": [ "self" ],
    "min_damage": 1,
    "max_damage": 1,
    "effect": "spawn_item",
    "effect_str": "rune_animist",
    "shape": "blast",
    "base_casting_time": 5000,
    "base_energy_cost": 5,
    "min_duration": 1,
    "max_duration": 2,
    "duration_increment": 1,
    "difficulty": 0,
    "max_level": 0,
    "spell_class": "ANIMIST",
    "energy_source": "HP",
    "flags": [ "PERMANENT", "NO_LEGS", "CONCENTRATE" ]
  },
  {
    "id": "dominate",
    "type": "SPELL",
    "name": "Domination",
    "description": "Force the undead creature you pick to obey your command, making it ally for a short time.  It's an expensive spell, so use it wisely.",
    "valid_targets": [ "hostile" ],
    "flags": [ "CONCENTRATE", "SOMATIC", "SILENT", "CONSUMES_RUNES" ],
    "effect": "charm_monster",
    "targeted_monster_species": [ "ZOMBIE" ],
    "components": "spell_components_rune_animist_3",
    "shape": "blast",
    "message": "",
    "min_damage": 80,
    "max_damage": 280,
    "damage_increment": 10,
    "min_range": 4,
    "max_range": 26,
    "range_increment": 1.1,
    "base_energy_cost": 400,
    "spell_class": "ANIMIST",
    "difficulty": 6,
    "max_level": 20,
    "min_aoe": 0,
    "max_aoe": 1,
    "aoe_increment": 0.1,
    "min_duration": 36000,
    "max_duration": 1080000,
    "duration_increment": 36000,
    "base_casting_time": 300,
    "final_casting_time": 30,
    "casting_time_increment": -14,
    "energy_source": "MANA"
  },
  {
    "id": "life_detonation",
    "type": "SPELL",
    "name": "Life Detonation",
    "description": "Explode a living energy inside your undead and release a tremendous force around it.",
    "valid_targets": [ "ally" ],
    "targeted_monster_species": [ "ZOMBIE" ],
    "effect": "attack",
    "shape": "blast",
    "spell_class": "ANIMIST",
    "flags": [ "NO_LEGS", "CONCENTRATE", "SOMATIC", "NO_PROJECTILE", "NO_HANDS", "PERCENTAGE_DAMAGE" ],
    "min_damage": 100,
    "max_damage": 100,
    "min_range": 10,
    "max_range": 50,
    "range_increment": 1.6,
    "max_level": 25,
    "difficulty": 5,
    "base_casting_time": 150,
    "final_casting_time": 30,
    "casting_time_increment": -5,
    "base_energy_cost": 300,
    "energy_source": "MANA",
    "damage_type": "biological",
    "extra_effects": [ { "id": "life_detonation_explosion" } ]
  },
  {
    "id": "life_detonation_explosion",
    "type": "SPELL",
    "name": "Life Detonation Explosion",
    "description": "Detonation for life detonation spell.",
    "valid_targets": [ "hostile", "ground" ],
    "flags": [ "CONCENTRATE", "SOMATIC", "SILENT" ],
    "effect": "attack",
    "shape": "blast",
    "message": "",
    "damage_type": "biological",
    "//": "would be cool to make it deal damage the same as hp of the monster, but not possible sadly",
    "min_damage": 20,
    "max_damage": 180,
    "damage_increment": 6.4,
    "spell_class": "ANIMIST",
    "difficulty": 5,
    "max_level": 25,
    "min_aoe": 2,
    "max_aoe": 11,
    "aoe_increment": 0.4
  },
  {
    "id": "convert",
    "type": "SPELL",
    "name": "Convert",
    "description": "Kill an allied creature, converting its life energy into a compact rune that you can use afterwards.",
    "valid_targets": [ "ally" ],
    "flags": [ "CONCENTRATE", "SOMATIC", "SILENT", "PERCENTAGE_DAMAGE" ],
    "effect": "attack",
    "shape": "blast",
    "message": "",
    "min_damage": 100,
    "max_damage": 100,
    "min_range": 10,
    "max_range": 10,
    "base_energy_cost": 250,
    "spell_class": "ANIMIST",
    "difficulty": 4,
    "max_level": 10,
    "base_casting_time": 30000,
    "final_casting_time": 1000,
    "casting_time_increment": -200,
    "energy_source": "MANA",
    "extra_effects": [ { "id": "create_rune_animist", "hit_self": true } ]
  },
  {
    "id": "soulrend",
    "type": "SPELL",
    "name": "Soulrend",
    "description": "Violently tears the spirit from the body and binds the resulting shade to your will.",
    "valid_targets": [ "hostile", "ally" ],
    "flags": [ "NO_LEGS", "LOUD", "SOMATIC", "POLYMORPH_GROUP", "FRIENDLY_POLY", "NO_HANDS" ],
    "effect": "targeted_polymorph",
    "effect_str": "GROUP_POLYMORPH_SHADOW",
    "shape": "blast",
    "spell_class": "ANIMIST",
    "energy_source": "MANA",
    "difficulty": 15,
    "min_damage": 40,
    "max_damage": 140,
    "damage_increment": 2.5,
    "max_level": 40,
    "base_casting_time": 200,
    "casting_time_increment": -2.0,
    "final_casting_time": 120,
    "base_energy_cost": 200,
    "min_range": 3,
    "max_range": 6,
    "range_increment": 0.2
  },
  {
    "id": "disruption_bolt",
    "type": "SPELL",
    "name": "Disruption Bolt",
    "description": "Release a resonant bolt of spiritual energy at a nearby target.  It will disrupt the natural link between matter and animus, causing heavy but never lethal damage.",
    "valid_targets": [ "hostile" ],
    "flags": [ "VERBAL", "SOMATIC", "NO_LEGS", "PERCENTAGE_DAMAGE", "SILENT", "NO_PROJECTILE" ],
    "min_damage": 35,
    "damage_type": "pure",
    "damage_increment": 1,
    "max_damage": 50,
    "min_range": 2,
    "range_increment": 0.5,
    "max_range": 66,
    "base_energy_cost": 150,
    "energy_increment": -5.0,
    "final_energy_cost": 50,
    "spell_class": "ANIMIST",
    "difficulty": 3,
    "max_level": 20,
    "base_casting_time": 100,
    "energy_source": "MANA",
    "shape": "blast",
    "effect": "attack",
    "learn_spells": { "soulrend": 20 }
  },
  {
    "id": "wrathful_spirits",
    "type": "SPELL",
    "name": "Wrathful Spirits",
    "description": "Grant brief corporality to orphaned spirits and allow them to fight under your command.",
    "valid_targets": [ "self", "ground" ],
    "min_damage": 2,
    "max_damage": 6,
    "damage_increment": 0.2,
    "max_level": 30,
    "difficulty": 1,
    "spell_class": "ANIMIST",
    "effect": "summon",
    "effect_str": "mon_magi_shadow",
    "shape": "blast",
    "energy_source": "MANA",
    "base_energy_cost": 200,
    "base_casting_time": 500,
    "min_aoe": 3,
    "max_aoe": 3,
    "flags": [ "SOMATIC", "VERBAL" ],
    "min_duration": 6000,
    "max_duration": 12000,
    "duration_increment": 1000
  },
  {
    "id": "spirit_walk",
    "type": "SPELL",
    "name": "Spirit Walk",
    "description": "Momentarily plunge into the underworld and swap positions with any spirit you command.",
    "valid_targets": [ "ally" ],
    "targeted_monster_ids": [ "mon_wisp", "mon_shadow", "mon_magi_shadow", "mon_darkman", "mon_shadow_snake" ],
    "flags": [ "NO_LEGS", "LOUD", "SOMATIC", "SWAP_POS", "NO_PROJECTILE" ],
    "effect": "attack",
    "shape": "blast",
    "spell_class": "ANIMIST",
    "energy_source": "MANA",
    "difficulty": 5,
    "max_level": 20,
    "base_casting_time": 100,
    "casting_time_increment": -2.5,
    "final_casting_time": 50,
    "base_energy_cost": 300,
    "energy_increment": -5.0,
    "final_energy_cost": 200,
    "min_range": 5,
    "max_range": 15,
    "range_increment": 1.0
  },
  {
    "id": "banishment_lesser",
    "type": "SPELL",
    "name": "Lesser Banishment",
    "description": "Banish a monster to a lesser-known nether dimension.  If a monster is more powerful than you can handle, the spell drains your life force to make up the difference.",
    "valid_targets": [ "hostile" ],
    "flags": [ "SOMATIC", "VERBAL", "NO_HANDS" ],
    "effect": "banishment",
    "shape": "blast",
    "min_damage": 40,
    "damage_increment": 10,
    "max_damage": 290,
    "min_range": 6,
    "max_range": 6,
    "base_energy_cost": 600,
    "spell_class": "ANIMIST",
    "difficulty": 9,
    "max_level": 25,
    "base_casting_time": 100,
    "energy_source": "MANA"
  },
  {
    "id": "summon_wisps",
    "type": "SPELL",
    "name": "Ignus Fatuus",
    "description": "Summons ghostly foxfire worked from living marsh vapor to lead your enemies astray.  With more experience, this spell can conjure multiple ghost lights.",
    "valid_targets": [ "ground" ],
    "effect": "summon",
    "effect_str": "mon_wisp",
    "shape": "blast",
    "flags": [ "LOUD", "SOMATIC" ],
    "energy_source": "MANA",
    "spell_class": "ANIMIST",
    "difficulty": 2,
    "base_casting_time": 250,
    "base_energy_cost": 300,
    "max_level": 25,
    "min_damage": 1,
    "max_damage": 8,
    "damage_increment": 0.28,
    "min_aoe": 3,
    "max_aoe": 3,
    "min_range": 3,
    "max_range": 7,
    "range_increment": 0.16,
    "min_duration": 6000,
    "max_duration": 60000,
    "duration_increment": 2160
  },
  {
    "id": "bleed",
    "type": "SPELL",
    "name": "Bleed",
    "description": "With a shout and a gesture, the target starts bleeding from old wounds.",
    "valid_targets": [ "hostile" ],
    "effect": "attack",
    "shape": "blast",
    "flags": [ "VERBAL", "SOMATIC", "NO_LEGS", "NO_PROJECTILE", "NO_HANDS" ],
    "energy_source": "MANA",
    "spell_class": "ANIMIST",
    "difficulty": 2,
    "base_casting_time": 100,
    "base_energy_cost": 150,
    "damage_type": "pure",
    "max_level": 25,
    "min_damage": 1,
    "max_damage": 26,
    "damage_increment": 1,
    "min_range": 3,
    "max_range": 5,
    "range_increment": 0.1,
    "min_duration": 500,
    "max_duration": 1000,
    "duration_increment": 20,
    "min_dot": 2,
    "max_dot": 52,
    "dot_increment": 2
  },
  {
    "id": "animist_summon_decaying_boneclub",
    "type": "SPELL",
    "name": { "str": "Decaying Boneclub" },
    "description": "This spell links your living blood to dead blood and bones, creating a club hungry for the flesh of the living.",
    "effect": "spawn_item",
    "effect_str": "decaying_boneclub",
    "shape": "blast",
    "valid_targets": [ "self" ],
    "flags": [ "SOMATIC", "CONCENTRATE", "VERBAL" ],
    "components": "spell_components_decayingboneclub",
    "max_level": 15,
    "min_damage": 1,
    "max_damage": 1,
    "min_duration": 24000,
    "max_duration": 360000,
    "duration_increment": 24000,
    "spell_class": "ANIMIST",
    "base_casting_time": 400,
    "base_energy_cost": 6,
    "energy_source": "HP",
    "learn_spells": { "animist_summon_decaying_boneclub_plus": 20 },
    "difficulty": 6
  },
  {
    "id": "animist_summon_decaying_boneclub_plus",
    "type": "SPELL",
    "name": { "str": "Improved Decaying Boneclub" },
    "description": "This spell links your living blood to dead blood and bones, creating a club hungry for the flesh of the living.  Now you know this spell like the back of your hand, and have started to design your own version.",
    "effect": "spawn_item",
    "effect_str": "decaying_boneclub",
    "shape": "blast",
    "valid_targets": [ "self" ],
    "flags": [ "SOMATIC", "VERBAL" ],
    "components": "spell_components_decayingboneclub",
    "max_level": 25,
    "min_damage": 1,
    "max_damage": 1,
    "min_duration": 360000,
    "max_duration": 2160000,
    "duration_increment": 72000,
    "spell_class": "ANIMIST",
    "base_casting_time": 400,
    "final_casting_time": 100,
    "casting_time_increment": -12,
    "base_energy_cost": 6,
    "final_energy_cost": 3,
    "energy_increment": -0.2,
    "energy_source": "HP",
    "difficulty": 7
  },
  {
    "id": "rupture",
    "type": "SPELL",
    "name": "Rupture",
    "description": "You pour mana into an unwilling and unprepared vessel, causing cellular break-down, internal hemorrhaging, muddling ley lines, and overcharging electronics.  Immensely gruesome and crude, it was once illegal world-wide, not that it matters now.",
    "effect": "attack",
    "shape": "blast",
    "valid_targets": [ "hostile" ],
    "flags": [ "SOMATIC", "NO_PROJECTILE", "LOUD", "NO_HANDS" ],
    "max_level": 25,
    "min_range": 1,
    "range_increment": 0.1,
    "max_range": 3,
    "min_damage": 0,
    "max_damage": 90,
    "damage_increment": 3.6,
    "base_casting_time": 50,
    "base_energy_cost": 500,
    "final_energy_cost": 250,
    "energy_increment": -10,
    "spell_class": "ANIMIST",
    "min_duration": 1500,
    "max_duration": 0,
    "duration_increment": -60,
    "min_dot": 6,
    "max_dot": 6,
    "energy_source": "MANA",
    "difficulty": 3,
    "damage_type": "pure"
  },
  {
    "id": "devour",
    "type": "SPELL",
    "name": "Devour",
    "description": "Kill a summoned creature, consuming its life energy to regain some health.",
    "valid_targets": [ "ally" ],
    "flags": [ "CONCENTRATE", "SOMATIC" ],
    "//": "added this min/max damage for player, so it will be visible how much hp would be healed.  ",
    "effect": "attack",
    "shape": "blast",
    "message": "",
    "min_damage": -1,
    "max_damage": -10,
    "damage_increment": -0.4,
    "min_range": 10,
    "max_range": 10,
    "base_energy_cost": 250,
    "spell_class": "ANIMIST",
    "difficulty": 10,
    "max_level": 25,
    "base_casting_time": 100,
    "energy_source": "MANA",
    "extra_effects": [ { "id": "devour_damage" }, { "id": "devour_healing", "hit_self": true } ]
  },
  {
    "id": "devour_damage",
    "type": "SPELL",
    "name": "Devour Damage",
    "description": "Deal deadly damage to ally.  You can see it only in debug mode.",
    "valid_targets": [ "ally" ],
    "flags": [ "SILENT", "PERCENTAGE_DAMAGE" ],
    "effect": "attack",
    "shape": "blast",
    "damage_type": "pure",
    "min_damage": 100,
    "max_damage": 100
  },
  {
    "id": "devour_healing",
    "type": "SPELL",
    "name": "Devour Healing",
    "description": "Heal the player.  You can see it only in debug mode.",
    "valid_targets": [ "self" ],
    "flags": [ "CONCENTRATE", "SOMATIC", "SILENT", "NO_PROJECTILE" ],
    "effect": "attack",
    "shape": "blast",
    "min_damage": -1,
    "max_damage": -10,
    "damage_increment": -0.4,
    "max_level": 25
  },
  {
    "id": "animist_sense_outsiders",
    "type": "SPELL",
    "name": "Sense Outsiders",
    "description": "You can sense the presence of nearby beings from the Nether.",
    "valid_targets": [ "self" ],
    "spell_class": "ANIMIST",
    "flags": [ "CONCENTRATE", "VERBAL", "SOMATIC", "NO_EXPLOSION_SFX" ],
    "effect": "attack",
    "effect_str": "effect_sense_outsiders",
    "shape": "blast",
    "energy_source": "MANA",
    "difficulty": 5,
    "max_level": 15,
    "base_energy_cost": 500,
    "min_duration": 90000,
    "max_duration": 900000,
    "duration_increment": 60000,
    "base_casting_time": 1500
  },
  {
    "id": "animist_summon_watcher",
    "type": "SPELL",
    "name": { "str": "Summon Watcher Spirit" },
    "description": "Summon a watcher spirit, whose senses overlap with your own and through whose eyes you can see.  Although they are spirits, they are fragile and dissipate easily in the face of any assault.",
    "flags": [ "SOMATIC", "CONCENTRATE", "VERBAL", "NO_PROJECTILE" ],
    "spell_class": "ANIMIST",
    "effect": "summon",
    "effect_str": "mon_watcher_spirit",
    "shape": "blast",
    "valid_targets": [ "ground" ],
    "difficulty": 3,
    "max_level": 15,
    "min_damage": 1,
    "max_damage": 1,
    "min_range": 3,
    "max_range": 20,
    "range_increment": 1.1,
    "min_duration": 24000,
    "max_duration": 360000,
    "duration_increment": 24000,
    "energy_source": "MANA",
    "base_casting_time": 500,
    "base_energy_cost": 150
  }
]
