[
  {
    "id": "eat_dreamdross",
    "type": "SPELL",
    "name": "Eat dreamdross",
    "description": "You consume dreamdross to regain mana.  Pretty tasty.",
    "valid_targets": [ "self" ],
    "min_damage": 75,
    "damage_increment": 1,
    "max_damage": 110,
    "max_level": { "math": [ "eater_level(1)" ] },
    "effect": "recover_energy",
    "effect_str": "MANA",
    "shape": "blast",
    "spell_class": "EATER",
    "skill": "deduction",
    "base_casting_time": 500,
    "base_energy_cost": 0,
    "components": "spell_components_dreamdross",
    "flags": [ "SILENT", "NO_LEGS", "NO_HANDS", "NO_EXPLOSION_SFX" ],
    "extra_effects": [ { "id": "eat_dreamdross_fun_1" } ],
    "learn_spells": { "eat_more_dreamdross": 5 }
  },
  {
    "id": "eat_dreamdross_fun_1",
    "type": "SPELL",
    "name": "Eat dreamdross mood effect T1",
    "description": "Boost your mood from consuming dreamdross.  Tier 1 effect.",
    "valid_targets": [ "self" ],
    "effect": "effect_on_condition",
    "effect_str": "EOC_EATER_DROSS_FUN_1",
    "shape": "blast",
    "flags": [ "SILENT", "NO_EXPLOSION_SFX" ]
  },
  {
    "id": "eat_more_dreamdross",
    "type": "SPELL",
    "name": "Eat more dreamdross",
    "description": "You can consume more dreamdross to regain mana in one sitting.  Delicious.",
    "teachable": false,
    "valid_targets": [ "self" ],
    "min_damage": 750,
    "damage_increment": 30,
    "max_damage": 1100,
    "max_level": { "math": [ "eater_level(1)" ] },
    "effect": "recover_energy",
    "effect_str": "MANA",
    "shape": "blast",
    "skill": "deduction",
    "spell_class": "EATER",
    "base_casting_time": 500,
    "base_energy_cost": 0,
    "components": "spell_components_dreamdross2",
    "flags": [ "SILENT", "NO_LEGS", "NO_HANDS", "NO_EXPLOSION_SFX" ],
    "extra_effects": [ { "id": "eat_dreamdross_fun_2" } ],
    "learn_spells": { "eat_dreamdross_ingot": 5 }
  },
  {
    "id": "eat_dreamdross_fun_2",
    "type": "SPELL",
    "name": "Eat dreamdross mood effect T2",
    "description": "Boost your mood from consuming dreamdross.  Tier 2 effect.",
    "valid_targets": [ "self" ],
    "effect": "effect_on_condition",
    "effect_str": "EOC_EATER_DROSS_FUN_2",
    "shape": "blast",
    "flags": [ "SILENT", "NO_EXPLOSION_SFX" ]
  },
  {
    "id": "eat_dreamdross_ingot",
    "type": "SPELL",
    "name": "Eat dreamdross ingots",
    "description": "You can't really process so much dreamdross at once, and additionally to restoring your mana pool, it directly improves your body, making your stronger and healthier.  It is probably the most delicious thing in your life.",
    "teachable": false,
    "valid_targets": [ "self" ],
    "max_level": { "math": [ "eater_level(1)" ] },
    "effect": "attack",
    "effect_str": "eater_lump_pool",
    "shape": "blast",
    "skill": "deduction",
    "spell_class": "EATER",
    "base_casting_time": 500,
    "components": "spell_components_dreamdross3",
    "flags": [ "SILENT", "NO_LEGS", "NO_HANDS", "NO_EXPLOSION_SFX" ],
    "min_duration": { "math": [ "spell_time(u_val('time: 8 h'))" ] },
    "max_duration": { "math": [ "spell_time(u_val('time: 2 d'))" ] },
    "duration_increment": { "math": [ "spell_time(u_val('time: 30 m'))" ] },
    "extra_effects": [ { "id": "eat_dreamdross_ingot_mana" }, { "id": "eat_dreamdross_fun_3" } ]
  },
  {
    "id": "eat_dreamdross_fun_3",
    "type": "SPELL",
    "name": "Eat dreamdross mood effect T3",
    "description": "Boost your mood from consuming dreamdross.  Tier 3 effect.",
    "valid_targets": [ "self" ],
    "effect": "effect_on_condition",
    "effect_str": "EOC_EATER_DROSS_FUN_3",
    "shape": "blast",
    "flags": [ "SILENT", "NO_EXPLOSION_SFX" ]
  },
  {
    "id": "eat_dreamdross_ingot_mana",
    "type": "SPELL",
    "name": "Eat dreamdross ingots mana",
    "description": "Restore some mana when you consume a whole dreamdross ingot.",
    "teachable": false,
    "valid_targets": [ "self" ],
    "min_damage": 5000,
    "max_damage": 5000,
    "effect": "recover_energy",
    "effect_str": "MANA",
    "shape": "blast",
    "flags": [ "SILENT", "NO_EXPLOSION_SFX" ]
  },
  {
    "id": "blood_boil",
    "type": "SPELL",
    "name": "Blood Boil",
    "description": "With a shouted ancient word, the target's blood temperature begins to increase dangerously.",
    "teachable": false,
    "valid_targets": [ "hostile" ],
    "effect": "attack",
    "shape": "blast",
    "flags": [ "VERBAL", "SOMATIC", "NO_LEGS", "NO_EXPLOSION_SFX", "NO_HANDS" ],
    "energy_source": "MANA",
    "spell_class": "EATER",
    "skill": "deduction",
    "difficulty": 6,
    "base_casting_time": 125,
    "casting_time_increment": -4,
    "final_casting_time": 25,
    "base_energy_cost": 150,
    "energy_increment": -2,
    "final_energy_cost": 100,
    "damage_type": "heat",
    "max_level": { "math": [ "eater_level(1)" ] },
    "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": 1,
    "max_dot": 26,
    "dot_increment": 1
  },
  {
    "id": "self_healing",
    "type": "SPELL",
    "name": "Trade dreams for health",
    "description": "Absorbs some dross and heals damage to yourself.",
    "teachable": false,
    "valid_targets": [ "self" ],
    "min_damage": -5,
    "max_damage": -20,
    "damage_increment": -1.0,
    "max_level": { "math": [ "eater_level(1)" ] },
    "min_range": 0,
    "max_range": 0,
    "effect": "attack",
    "shape": "blast",
    "base_casting_time": { "math": [ "spell_time(u_val('time: 2 m'))" ] },
    "skill": "deduction",
    "flags": [ "SOMATIC", "VERBAL", "NO_HANDS", "NO_EXPLOSION_SFX" ],
    "spell_class": "EATER",
    "components": "spell_components_dreamdross2",
    "difficulty": 4,
    "energy_source": "MANA"
  },
  {
    "id": "supercoffee",
    "type": "SPELL",
    "name": "Recover fatigue for dreams",
    "description": "Absorbs some dross and heals fatigue to yourself.",
    "teachable": false,
    "valid_targets": [ "self" ],
    "message": "You feel refreshed.",
    "effect": "recover_energy",
    "effect_str": "FATIGUE",
    "shape": "blast",
    "base_casting_time": { "math": [ "spell_time(u_val('time: 2 m'))" ] },
    "min_damage": 50,
    "damage_increment": 10,
    "max_damage": 300,
    "max_level": { "math": [ "eater_level(1)" ] },
    "skill": "deduction",
    "flags": [ "SILENT", "NO_HANDS", "NO_EXPLOSION_SFX", "NO_PROJECTILE" ],
    "spell_class": "EATER",
    "components": "spell_components_dreamdross2",
    "difficulty": 4,
    "energy_source": "MANA"
  },
  {
    "type": "SPELL",
    "id": "spring_heeled_leap",
    "name": "Spring-heeled Leap",
    "description": "Force pushes your feet off the ground and launches you several meters.",
    "teachable": false,
    "valid_targets": [ "ground" ],
    "flags": [ "SILENT", "NO_LEGS", "NO_HANDS", "NO_EXPLOSION_SFX" ],
    "effect": "dash",
    "shape": "cone",
    "damage_type": "bash",
    "min_range": 1,
    "max_range": 10,
    "range_increment": 0.4,
    "skill": "deduction",
    "spell_class": "EATER",
    "difficulty": 1,
    "base_casting_time": 300,
    "base_energy_cost": 400,
    "final_casting_time": 50,
    "casting_time_increment": -10,
    "final_energy_cost": 100,
    "energy_increment": -10,
    "max_level": { "math": [ "eater_level(1)" ] },
    "energy_source": "MANA"
  },
  {
    "id": "spell_rage",
    "type": "SPELL",
    "name": "Blind Rage",
    "description": "Perfect hatred.",
    "teachable": false,
    "valid_targets": [ "self" ],
    "effect": "attack",
    "effect_str": "blind_rage",
    "shape": "blast",
    "flags": [ "NO_LEGS", "NO_HANDS", "SILENT", "NO_EXPLOSION_SFX" ],
    "skill": "deduction",
    "spell_class": "EATER",
    "energy_source": "MANA",
    "difficulty": 2,
    "base_casting_time": 300,
    "final_casting_time": 50,
    "casting_time_increment": -9,
    "base_energy_cost": 800,
    "final_energy_cost": 400,
    "energy_increment": -14,
    "max_level": { "math": [ "eater_level(1)" ] },
    "min_duration": { "math": [ "spell_time(u_val('time: 2 m'))" ] },
    "max_duration": { "math": [ "spell_time(u_val('time: 3 h'))" ] },
    "duration_increment": { "math": [ "spell_time(u_val('time: 2 m'))" ] }
  },
  {
    "id": "spell_stamina_wonder",
    "type": "SPELL",
    "name": "Circulatory",
    "description": "Don't stop.",
    "teachable": false,
    "valid_targets": [ "self" ],
    "effect": "attack",
    "effect_str": "spell_stamina_eff",
    "shape": "blast",
    "flags": [ "NO_LEGS", "SILENT", "NO_HANDS", "NO_EXPLOSION_SFX" ],
    "skill": "deduction",
    "min_damage": 0,
    "max_damage": 0,
    "difficulty": 3,
    "min_duration": { "math": [ "spell_time(u_val('time: 2 m'))" ] },
    "max_duration": { "math": [ "spell_time(u_val('time: 3 h'))" ] },
    "duration_increment": { "math": [ "spell_time(u_val('time: 3 m'))" ] },
    "base_casting_time": 500,
    "base_energy_cost": 1000,
    "final_energy_cost": 500,
    "energy_increment": -15,
    "max_level": { "math": [ "eater_level(1)" ] },
    "energy_source": "MANA",
    "spell_class": "EATER"
  },
  {
    "id": "spell_night_vision",
    "type": "SPELL",
    "name": "Dark Vision",
    "description": "Enhance your eyes to see at night same as in daylight.",
    "teachable": false,
    "valid_targets": [ "self" ],
    "effect": "attack",
    "effect_str": "night_sight",
    "shape": "blast",
    "flags": [ "NO_LEGS", "SILENT", "NO_HANDS", "NO_EXPLOSION_SFX" ],
    "skill": "deduction",
    "spell_class": "EATER",
    "difficulty": 7,
    "min_duration": { "math": [ "spell_time(u_val('time: 5 m'))" ] },
    "max_duration": { "math": [ "spell_time(u_val('time: 6 h'))" ] },
    "duration_increment": { "math": [ "spell_time(u_val('time: 5 m'))" ] },
    "base_casting_time": 1000,
    "base_energy_cost": 800,
    "final_energy_cost": 400,
    "energy_increment": -15,
    "max_level": { "math": [ "eater_level(1)" ] },
    "energy_source": "MANA"
  },
  {
    "id": "spell_dodge",
    "type": "SPELL",
    "name": "Dodge",
    "description": "Shun their attacks.",
    "teachable": false,
    "valid_targets": [ "self" ],
    "effect": "attack",
    "effect_str": "effect_dodge",
    "shape": "blast",
    "flags": [ "NO_LEGS", "SILENT", "NO_HANDS", "NO_EXPLOSION_SFX" ],
    "skill": "deduction",
    "spell_class": "EATER",
    "energy_source": "MANA",
    "difficulty": 4,
    "base_casting_time": 1500,
    "final_casting_time": 500,
    "casting_time_increment": -34,
    "base_energy_cost": 800,
    "final_energy_cost": 400,
    "energy_increment": -20,
    "max_level": { "math": [ "eater_level(1)" ] },
    "min_duration": { "math": [ "spell_time(u_val('time: 5 m'))" ] },
    "max_duration": { "math": [ "spell_time(u_val('time: 6 h'))" ] },
    "duration_increment": { "math": [ "spell_time(u_val('time: 5 m'))" ] }
  },
  {
    "id": "spell_endurance",
    "type": "SPELL",
    "name": "Endurance",
    "description": "Take the blows.  Don’t let the world kill you.",
    "teachable": false,
    "valid_targets": [ "self" ],
    "effect": "attack",
    "effect_str": "effect_endurance",
    "shape": "blast",
    "flags": [ "NO_LEGS", "SILENT", "NO_HANDS", "NO_EXPLOSION_SFX" ],
    "skill": "deduction",
    "energy_source": "MANA",
    "spell_class": "EATER",
    "difficulty": 5,
    "base_casting_time": 1500,
    "final_casting_time": 500,
    "casting_time_increment": -34,
    "base_energy_cost": 1500,
    "final_energy_cost": 500,
    "energy_increment": -50,
    "max_level": { "math": [ "eater_level(1)" ] },
    "min_duration": { "math": [ "spell_time(u_val('time: 5 m'))" ] },
    "max_duration": { "math": [ "spell_time(u_val('time: 6 h'))" ] },
    "duration_increment": { "math": [ "spell_time(u_val('time: 5 m'))" ] }
  },
  {
    "id": "spell_invisibility",
    "type": "SPELL",
    "name": "Hide",
    "description": "Don't let them spot you.",
    "valid_targets": [ "self" ],
    "effect": "attack",
    "effect_str": "invisibility",
    "shape": "blast",
    "flags": [ "NO_LEGS", "SILENT", "NO_HANDS", "NO_EXPLOSION_SFX" ],
    "teachable": false,
    "skill": "deduction",
    "spell_class": "EATER",
    "difficulty": 7,
    "min_duration": { "math": [ "spell_time(u_val('time: 40 s'))" ] },
    "max_duration": { "math": [ "spell_time(u_val('time: 20 m'))" ] },
    "duration_increment": { "math": [ "spell_time(u_val('time: 20 s'))" ] },
    "base_casting_time": 1000,
    "base_energy_cost": 2000,
    "final_energy_cost": 500,
    "energy_increment": -50,
    "max_level": { "math": [ "eater_level(1)" ] },
    "energy_source": "MANA"
  },
  {
    "id": "spell_clairvoyance",
    "type": "SPELL",
    "name": "Open Mind",
    "description": "Close your eyes and see.",
    "teachable": false,
    "valid_targets": [ "hostile", "ground" ],
    "flags": [ "IGNORE_WALLS", "NO_LEGS", "NO_HANDS", "SILENT", "NO_EXPLOSION_SFX" ],
    "skill": "deduction",
    "energy_source": "MANA",
    "spell_class": "EATER",
    "difficulty": 9,
    "max_level": { "math": [ "eater_level(1)" ] },
    "effect": "attack",
    "shape": "blast",
    "min_aoe": 1,
    "max_aoe": 36,
    "aoe_increment": 1,
    "base_casting_time": 6000,
    "final_casting_time": 1000,
    "casting_time_increment": -150,
    "base_energy_cost": 900,
    "final_energy_cost": 400,
    "energy_increment": -20,
    "field_id": "fd_clairvoyant",
    "min_field_intensity": 1,
    "max_field_intensity": 1
  },
  {
    "id": "spell_melee_damage",
    "type": "SPELL",
    "name": "Physical Instrument",
    "description": "Your body is a tool of destruction.  Use it effectively.",
    "teachable": false,
    "valid_targets": [ "self" ],
    "effect": "attack",
    "effect_str": "spell_melee_damage",
    "shape": "blast",
    "flags": [ "NO_LEGS", "NO_HANDS", "SILENT", "NO_EXPLOSION_SFX" ],
    "skill": "deduction",
    "spell_class": "EATER",
    "energy_source": "MANA",
    "difficulty": 7,
    "base_casting_time": 1500,
    "final_casting_time": 500,
    "casting_time_increment": -34,
    "base_energy_cost": 1500,
    "final_energy_cost": 500,
    "energy_increment": -50,
    "max_level": { "math": [ "eater_level(1)" ] },
    "min_duration": { "math": [ "spell_time(u_val('time: 3 m'))" ] },
    "max_duration": { "math": [ "spell_time(u_val('time: 6 h'))" ] },
    "duration_increment": { "math": [ "spell_time(u_val('time: 3 m'))" ] }
  },
  {
    "id": "spell_spear",
    "type": "SPELL",
    "name": "Pierce",
    "description": "Throw a long ethereal spear out of your hand.",
    "teachable": false,
    "valid_targets": [ "hostile", "ground" ],
    "flags": [ "NO_LEGS", "NO_HANDS", "SILENT", "NO_EXPLOSION_SFX" ],
    "skill": "deduction",
    "difficulty": 4,
    "max_level": { "math": [ "eater_level(1)" ] },
    "effect": "attack",
    "shape": "cone",
    "damage_type": "stab",
    "min_damage": 10,
    "max_damage": 500,
    "damage_increment": 7,
    "min_range": 3,
    "max_range": 12,
    "range_increment": 0.3,
    "base_casting_time": 280,
    "final_casting_time": 40,
    "casting_time_increment": -7,
    "base_energy_cost": 300,
    "final_energy_cost": 90,
    "energy_increment": -7,
    "energy_source": "MANA",
    "spell_class": "EATER",
    "min_aoe": 3,
    "max_aoe": 3
  },
  {
    "id": "spell_speed_wonder",
    "type": "SPELL",
    "name": "Rush",
    "description": "Run.  Run as fast as you can.  Don't stop.",
    "teachable": false,
    "valid_targets": [ "self" ],
    "effect": "attack",
    "effect_str": "spell_speed_eff",
    "shape": "blast",
    "flags": [ "NO_LEGS", "NO_HANDS", "SILENT", "NO_EXPLOSION_SFX" ],
    "skill": "deduction",
    "spell_class": "EATER",
    "difficulty": 5,
    "min_duration": { "math": [ "spell_time(u_val('time: 2 m'))" ] },
    "max_duration": { "math": [ "spell_time(u_val('time: 1 h'))" ] },
    "duration_increment": { "math": [ "spell_time(u_val('time: 2 m'))" ] },
    "base_casting_time": 500,
    "base_energy_cost": 1300,
    "final_energy_cost": 500,
    "energy_increment": -30,
    "max_level": { "math": [ "eater_level(1)" ] },
    "energy_source": "MANA"
  },
  {
    "id": "spell_weak",
    "type": "SPELL",
    "name": "Weakening",
    "description": "Make enemies around you more vulnerable.",
    "teachable": false,
    "valid_targets": [ "hostile" ],
    "effect": "attack",
    "effect_str": "effect_weakening",
    "shape": "blast",
    "flags": [ "NO_LEGS", "NO_HANDS", "SILENT", "IGNORE_WALLS", "NO_EXPLOSION_SFX" ],
    "skill": "deduction",
    "spell_class": "EATER",
    "energy_source": "MANA",
    "difficulty": 5,
    "min_aoe": 3,
    "max_aoe": 60,
    "aoe_increment": 2,
    "base_casting_time": 250,
    "final_casting_time": 0,
    "casting_time_increment": -10,
    "base_energy_cost": 600,
    "final_energy_cost": 250,
    "energy_increment": -10,
    "max_level": { "math": [ "eater_level(1)" ] },
    "min_duration": { "math": [ "spell_time(u_val('time: 10 s'))" ] },
    "max_duration": { "math": [ "spell_time(u_val('time: 15 m'))" ] },
    "duration_increment": { "math": [ "spell_time(u_val('time: 10 s'))" ] }
  },
  {
    "id": "spell_unbreakable",
    "type": "SPELL",
    "name": "Unbreakable",
    "description": "Nothing can move you from your path.",
    "teachable": false,
    "valid_targets": [ "self" ],
    "effect": "attack",
    "effect_str": "spell_unbreakable_eff",
    "shape": "blast",
    "flags": [ "NO_LEGS", "NO_HANDS", "SILENT", "NO_EXPLOSION_SFX" ],
    "skill": "deduction",
    "spell_class": "EATER",
    "energy_source": "MANA",
    "difficulty": 4,
    "base_casting_time": 300,
    "final_casting_time": 50,
    "casting_time_increment": -9,
    "base_energy_cost": 800,
    "final_energy_cost": 400,
    "energy_increment": -14,
    "max_level": { "math": [ "eater_level(1)" ] },
    "min_duration": { "math": [ "spell_time(u_val('time: 2 m'))" ] },
    "max_duration": { "math": [ "spell_time(u_val('time: 2 h'))" ] },
    "duration_increment": { "math": [ "spell_time(u_val('time: 2 m'))" ] }
  },
  {
    "id": "point_blank",
    "type": "SPELL",
    "name": "Point Blank",
    "description": "Straight hit with your arm.  Using additional energy, you probably can break a wall with such a powerful strike.",
    "teachable": false,
    "valid_targets": [ "hostile", "ground" ],
    "effect": "attack",
    "shape": "blast",
    "flags": [ "SILENT", "SOMATIC", "NO_EXPLOSION_SFX" ],
    "energy_source": "MANA",
    "spell_class": "EATER",
    "skill": "deduction",
    "difficulty": 4,
    "base_casting_time": 125,
    "casting_time_increment": -15,
    "final_casting_time": 25,
    "base_energy_cost": 350,
    "energy_increment": -15,
    "final_energy_cost": 100,
    "damage_type": "bash",
    "max_level": { "math": [ "eater_level(1)" ] },
    "min_damage": 20,
    "max_damage": 250,
    "damage_increment": 6,
    "min_range": 1,
    "max_range": 1,
    "extra_effects": [ { "id": "point_blank_bash" } ]
  },
  {
    "id": "point_blank_bash",
    "type": "SPELL",
    "name": "Point Blank Bash",
    "description": "Additional terrain damage.",
    "valid_targets": [ "ground" ],
    "effect": "bash",
    "shape": "blast",
    "flags": [ "SILENT", "NO_EXPLOSION_SFX" ],
    "max_level": { "math": [ "eater_level(1)" ] },
    "min_damage": 40,
    "max_damage": 500,
    "damage_increment": 10,
    "min_range": 1,
    "max_range": 1
  }
]
