[
  {
    "id": "point_flare",
    "type": "SPELL",
    "name": "Point Flare",
    "description": "Causes an intense heat at the location, damaging the target.",
    "valid_targets": [ "hostile" ],
    "flags": [ "CONCENTRATE", "SOMATIC", "LOUD", "NO_PROJECTILE" ],
    "effect": "attack",
    "shape": "blast",
    "damage_type": "heat",
    "min_damage": 16,
    "damage_increment": 4.0,
    "max_damage": 80,
    "min_range": 3,
    "range_increment": 0.5,
    "max_range": 11,
    "base_energy_cost": 75,
    "spell_class": "KELVINIST",
    "difficulty": 4,
    "max_level": 16,
    "base_casting_time": 300,
    "energy_source": "MANA"
  },
  {
    "id": "nova_flare",
    "type": "SPELL",
    "name": "Nova Flare",
    "description": "Causes an intense heat at the location, greatly damaging the target.",
    "valid_targets": [ "hostile" ],
    "flags": [ "CONCENTRATE", "SOMATIC", "LOUD", "NO_PROJECTILE" ],
    "components": "spell_components_nova_flare",
    "effect": "attack",
    "shape": "blast",
    "damage_type": "heat",
    "min_damage": 45,
    "damage_increment": 6.0,
    "max_damage": 135,
    "min_range": 3,
    "range_increment": 0.5,
    "max_range": 11,
    "base_energy_cost": 80,
    "spell_class": "KELVINIST",
    "difficulty": 8,
    "max_level": 16,
    "base_casting_time": 300,
    "energy_source": "MANA"
  },
  {
    "id": "create_lighter",
    "type": "SPELL",
    "name": "Finger Firelighter",
    "description": "Summons a small flame that does not burn you, but you can use it to light things on fire.  It seems to need you to have some intent to light things on fire, because you are able to put it in your pocket with no issue.",
    "valid_targets": [ "none" ],
    "flags": [ "NO_LEGS" ],
    "effect": "spawn_item",
    "effect_str": "finger_firelighter",
    "shape": "blast",
    "min_damage": 1,
    "max_damage": 1,
    "min_duration": 6000,
    "max_duration": 60000,
    "duration_increment": 5400,
    "max_level": 10,
    "spell_class": "KELVINIST",
    "energy_source": "MANA",
    "base_casting_time": 250,
    "final_casting_time": 50,
    "casting_time_increment": -20.0,
    "base_energy_cost": 65,
    "difficulty": 0
  },
  {
    "id": "ice_spike",
    "type": "SPELL",
    "name": "Ice Spike",
    "description": "Causes jagged icicles to form in the air above the target, falling and damaging it.",
    "valid_targets": [ "hostile" ],
    "flags": [ "CONCENTRATE", "SOMATIC", "LOUD", "VERBAL", "NO_PROJECTILE" ],
    "effect": "attack",
    "shape": "blast",
    "damage_type": "cold",
    "min_damage": 30,
    "max_damage": 100,
    "damage_increment": 3.5,
    "min_range": 4,
    "max_range": 12,
    "range_increment": 0.6,
    "max_level": 20,
    "difficulty": 6,
    "spell_class": "KELVINIST",
    "base_casting_time": 200,
    "energy_source": "MANA",
    "base_energy_cost": 100
  },
  {
    "id": "fireball",
    "type": "SPELL",
    "name": "Fireball",
    "description": "You hurl a pea-sized glowing orb that when reaches its target or an obstacle produces a pressure-less blast of searing heat.",
    "effect": "attack",
    "shape": "blast",
    "valid_targets": [ "self", "ally", "hostile", "ground" ],
    "flags": [ "SOMATIC", "VERBAL", "NO_LEGS", "IGNITE_FLAMMABLE" ],
    "max_level": 20,
    "min_damage": 24,
    "max_damage": 68,
    "damage_increment": 2.2,
    "min_aoe": 3,
    "max_aoe": 5,
    "aoe_increment": 0.1,
    "min_range": 6,
    "max_range": 20,
    "range_increment": 1.0,
    "spell_class": "KELVINIST",
    "base_casting_time": 200,
    "base_energy_cost": 350,
    "energy_source": "MANA",
    "difficulty": 4,
    "damage_type": "heat"
  },
  {
    "id": "cone_cold",
    "type": "SPELL",
    "name": "Cone of Cold",
    "description": "You blast a cone of frigid air toward the target.",
    "effect": "attack",
    "shape": "cone",
    "valid_targets": [ "ally", "hostile", "ground" ],
    "flags": [ "SOMATIC", "VERBAL" ],
    "max_level": 20,
    "min_damage": 24,
    "max_damage": 68,
    "damage_increment": 2.2,
    "min_aoe": 30,
    "max_aoe": 60,
    "aoe_increment": 1.4,
    "min_range": 6,
    "max_range": 20,
    "range_increment": 1.0,
    "spell_class": "KELVINIST",
    "base_casting_time": 200,
    "base_energy_cost": 350,
    "energy_source": "MANA",
    "difficulty": 4,
    "field_id": "fd_cold_air2",
    "min_field_intensity": 0,
    "max_field_intensity": 4,
    "field_intensity_increment": 0.5,
    "damage_type": "cold"
  },
  {
    "id": "burning_hands",
    "type": "SPELL",
    "name": { "str": "Burning Hands" },
    "description": "You're pretty sure you saw this in a game somewhere.  You fire a short-range cone of fire.",
    "effect": "attack",
    "shape": "cone",
    "valid_targets": [ "ally", "hostile", "ground" ],
    "flags": [ "SOMATIC", "VERBAL", "IGNITE_FLAMMABLE", "NO_HANDS" ],
    "max_level": 20,
    "min_damage": 8,
    "max_damage": 65,
    "damage_increment": 4.0,
    "min_range": 3,
    "max_range": 5,
    "range_increment": 0.25,
    "min_aoe": 25,
    "max_aoe": 60,
    "aoe_increment": 5.0,
    "spell_class": "KELVINIST",
    "base_casting_time": 100,
    "base_energy_cost": 150,
    "energy_source": "MANA",
    "difficulty": 2,
    "damage_type": "heat"
  },
  {
    "id": "frost_spray",
    "type": "SPELL",
    "name": "Frost Spray",
    "description": "You're pretty sure you saw this in a game somewhere.  You fire a short-range cone of ice and cold.",
    "effect": "attack",
    "effect_str": "cold",
    "shape": "cone",
    "affected_body_parts": [ "torso" ],
    "valid_targets": [ "ally", "hostile", "ground" ],
    "flags": [ "SOMATIC", "VERBAL", "NO_HANDS" ],
    "max_level": 20,
    "min_damage": 8,
    "max_damage": 65,
    "damage_increment": 4.0,
    "min_range": 3,
    "max_range": 5,
    "range_increment": 0.25,
    "min_aoe": 25,
    "max_aoe": 60,
    "aoe_increment": 5.0,
    "spell_class": "KELVINIST",
    "base_casting_time": 100,
    "base_energy_cost": 100,
    "energy_source": "MANA",
    "difficulty": 2,
    "damage_type": "cold"
  },
  {
    "id": "chilling_touch",
    "type": "SPELL",
    "name": "Chilling Touch",
    "description": "Freezes the touched target with intense cold.",
    "valid_targets": [ "hostile" ],
    "flags": [ "SOMATIC", "NO_PROJECTILE" ],
    "effect": "attack",
    "effect_str": "cold",
    "shape": "blast",
    "affected_body_parts": [ "torso" ],
    "damage_type": "cold",
    "min_damage": 3,
    "damage_increment": 4.0,
    "max_damage": 40,
    "min_range": 1,
    "max_range": 1,
    "base_energy_cost": 50,
    "spell_class": "KELVINIST",
    "difficulty": 1,
    "max_level": 10,
    "base_casting_time": 100,
    "energy_source": "MANA"
  },
  {
    "id": "glide_ice",
    "type": "SPELL",
    "name": "Glide on Ice",
    "description": "Encases your feet in a magical coating of ice, allowing you to glide along smooth surfaces faster.",
    "valid_targets": [ "none" ],
    "flags": [ "VERBAL", "NO_HANDS", "NO_LEGS", "CONCENTRATE" ],
    "min_damage": 1,
    "max_damage": 1,
    "effect": "spawn_item",
    "effect_str": "ice_gliders",
    "shape": "blast",
    "energy_source": "MANA",
    "spell_class": "KELVINIST",
    "difficulty": 2,
    "max_level": 15,
    "base_casting_time": 650,
    "base_energy_cost": 100,
    "min_duration": 24000,
    "max_duration": 360000,
    "duration_increment": 24000,
    "learn_spells": { "glide_ice_plus": 15 }
  },
  {
    "id": "glide_ice_plus",
    "type": "SPELL",
    "name": "Enhanced Glide on Ice",
    "description": "Encases your feet in a magical coating of ice, allowing you to glide along smooth surfaces faster.",
    "valid_targets": [ "none" ],
    "flags": [ "VERBAL", "NO_HANDS", "NO_LEGS" ],
    "min_damage": 1,
    "max_damage": 1,
    "effect": "spawn_item",
    "effect_str": "ice_gliders",
    "shape": "blast",
    "energy_source": "MANA",
    "spell_class": "KELVINIST",
    "difficulty": 5,
    "max_level": 25,
    "base_casting_time": 650,
    "final_casting_time": 100,
    "casting_time_increment": -22,
    "base_energy_cost": 100,
    "final_energy_cost": 50,
    "energy_increment": -2,
    "min_duration": 360000,
    "max_duration": 9000000,
    "duration_increment": 360000
  },
  {
    "id": "hoary_blast",
    "type": "SPELL",
    "name": "Hoary Blast",
    "description": "You project a glowing white crystal of ice and it explodes on impact into a blossom of shattering cold.",
    "effect": "attack",
    "effect_str": "cold",
    "shape": "blast",
    "affected_body_parts": [ "torso" ],
    "valid_targets": [ "self", "ally", "hostile", "ground" ],
    "flags": [ "SOMATIC", "VERBAL", "NO_LEGS" ],
    "max_level": 20,
    "min_damage": 24,
    "max_damage": 68,
    "damage_increment": 2.2,
    "min_aoe": 3,
    "max_aoe": 5,
    "aoe_increment": 0.1,
    "min_range": 6,
    "max_range": 20,
    "range_increment": 1.0,
    "spell_class": "KELVINIST",
    "base_casting_time": 200,
    "base_energy_cost": 350,
    "energy_source": "MANA",
    "difficulty": 4,
    "damage_type": "cold"
  },
  {
    "id": "ice_shield",
    "type": "SPELL",
    "name": "Ice Shield",
    "description": "Creates a magical shield of ice on your arm, you can defend yourself with it in melee combat and use it to bash.",
    "valid_targets": [ "self" ],
    "flags": [ "NO_LEGS", "CONCENTRATE", "VERBAL" ],
    "min_damage": 1,
    "max_damage": 1,
    "effect": "spawn_item",
    "effect_str": "shield_ice",
    "shape": "blast",
    "energy_source": "MANA",
    "spell_class": "KELVINIST",
    "difficulty": 3,
    "max_level": 15,
    "base_casting_time": 150,
    "base_energy_cost": 100,
    "min_duration": 24000,
    "max_duration": 360000,
    "duration_increment": 24000,
    "learn_spells": { "ice_shield_plus": 15 }
  },
  {
    "id": "ice_shield_plus",
    "type": "SPELL",
    "name": "Enhanced Ice Shield",
    "description": "Creates a magical shield of ice on your arm, you can defend yourself with it in melee combat and use it to bash.  Now you know this spell like the back of your hand, and start to design your own version.",
    "valid_targets": [ "self" ],
    "flags": [ "NO_LEGS", "VERBAL" ],
    "min_damage": 1,
    "max_damage": 1,
    "effect": "spawn_item",
    "effect_str": "shield_ice",
    "shape": "blast",
    "energy_source": "MANA",
    "spell_class": "KELVINIST",
    "difficulty": 5,
    "max_level": 25,
    "base_casting_time": 150,
    "final_casting_time": 50,
    "casting_time_increment": -4,
    "base_energy_cost": 100,
    "final_energy_cost": 50,
    "energy_increment": -2,
    "min_duration": 360000,
    "max_duration": 9000000,
    "duration_increment": 360000
  },
  {
    "id": "frost_armor",
    "type": "SPELL",
    "name": "Frost Armor",
    "description": "Covers you in a thin layer of magical ice to attack the enemies nearby.",
    "valid_targets": [ "self" ],
    "flags": [ "NO_LEGS", "CONCENTRATE", "VERBAL", "SOMATIC" ],
    "effect": "spawn_item",
    "effect_str": "armor_frost",
    "shape": "blast",
    "affected_body_parts": [ "head", "torso", "leg_l", "leg_r", "arm_r", "arm_l" ],
    "energy_source": "MANA",
    "spell_class": "KELVINIST",
    "difficulty": 5,
    "max_level": 15,
    "base_casting_time": 200,
    "base_energy_cost": 550,
    "min_duration": 24000,
    "max_duration": 360000,
    "duration_increment": 24000,
    "learn_spells": { "frost_armor_plus": 15 }
  },
  {
    "id": "frost_armor_plus",
    "type": "SPELL",
    "name": "Enhanced Frost Armor",
    "description": "Covers you in a thin layer of magical ice to attack the enemies nearby.",
    "valid_targets": [ "self" ],
    "flags": [ "NO_LEGS", "VERBAL", "SOMATIC" ],
    "effect": "spawn_item",
    "effect_str": "armor_frost",
    "shape": "blast",
    "affected_body_parts": [ "head", "torso", "leg_l", "leg_r", "arm_r", "arm_l" ],
    "energy_source": "MANA",
    "spell_class": "KELVINIST",
    "difficulty": 5,
    "max_level": 25,
    "base_casting_time": 200,
    "final_casting_time": 100,
    "casting_time_increment": -4,
    "base_energy_cost": 550,
    "final_energy_cost": 200,
    "energy_increment": -14,
    "min_duration": 360000,
    "max_duration": 9000000,
    "duration_increment": 72000
  },
  {
    "id": "create_rune_kelvinist",
    "type": "SPELL",
    "name": "Kelvinist Rune",
    "description": "This ritual creates a small pebble attuned to Kelvinists.  You can use the rune as a catalyst for recipes.",
    "valid_targets": [ "self" ],
    "min_damage": 1,
    "max_damage": 1,
    "effect": "spawn_item",
    "effect_str": "rune_kelvinist",
    "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": "KELVINIST",
    "energy_source": "MANA",
    "flags": [ "PERMANENT", "NO_LEGS", "CONCENTRATE" ]
  },
  {
    "id": "kelvinist_summon_flamesword",
    "type": "SPELL",
    "name": "Flamesword",
    "description": "This spell ignites a wooden sword, creating a flaming blade able to burn, bruise, and chop.",
    "valid_targets": [ "self" ],
    "flags": [ "NO_LEGS", "SOMATIC" ],
    "effect": "spawn_item",
    "effect_str": "flamesword",
    "shape": "blast",
    "components": "spell_components_flamesword",
    "min_damage": 1,
    "max_damage": 1,
    "min_duration": 24000,
    "max_duration": 360000,
    "duration_increment": 24000,
    "max_level": 15,
    "spell_class": "KELVINIST",
    "energy_source": "MANA",
    "base_casting_time": 250,
    "base_energy_cost": 300,
    "difficulty": 4,
    "learn_spells": { "kelvinist_summon_flamesword_plus": 15 }
  },
  {
    "id": "kelvinist_summon_flamesword_plus",
    "type": "SPELL",
    "name": "Enhanced Flamesword",
    "description": "This spell ignites a wooden sword, creating a flaming blade able to burn, bruise, and chop.  Now you know this spell like the back of your hand, and start to design your own version.",
    "valid_targets": [ "self" ],
    "flags": [ "NO_LEGS", "NO_HANDS" ],
    "effect": "spawn_item",
    "effect_str": "flamesword",
    "shape": "blast",
    "components": "spell_components_flamesword",
    "min_damage": 1,
    "max_damage": 1,
    "min_duration": 360000,
    "max_duration": 2160000,
    "duration_increment": 72000,
    "max_level": 25,
    "spell_class": "KELVINIST",
    "energy_source": "MANA",
    "base_casting_time": 250,
    "final_casting_time": 100,
    "casting_time_increment": -6,
    "base_energy_cost": 300,
    "final_energy_cost": 100,
    "energy_increment": -8,
    "difficulty": 6
  },
  {
    "id": "kelvinist_flamebreath",
    "type": "SPELL",
    "name": { "str": "Flamebreath" },
    "description": "This spell ignites dust scattered in the air, creating a cone of flame.  The hot ashes can cling to targets, causing additional burns over time.",
    "effect": "attack",
    "shape": "cone",
    "valid_targets": [ "ally", "hostile", "ground" ],
    "flags": [ "SOMATIC", "CONCENTRATE", "IGNITE_FLAMMABLE" ],
    "components": "spell_components_flamebreath",
    "max_level": 10,
    "min_damage": 25,
    "max_damage": 45,
    "damage_increment": 2,
    "min_dot": 2,
    "max_dot": 5,
    "dot_increment": 0.3,
    "min_duration": 400,
    "max_duration": 1000,
    "duration_increment": 60,
    "min_range": 5,
    "max_range": 12,
    "range_increment": 0.7,
    "min_aoe": 15,
    "max_aoe": 30,
    "aoe_increment": 1.5,
    "spell_class": "KELVINIST",
    "base_casting_time": 150,
    "base_energy_cost": 200,
    "energy_source": "MANA",
    "difficulty": 5,
    "damage_type": "heat"
  },
  {
    "id": "freezing_touch",
    "type": "SPELL",
    "name": "Freezing Touch",
    "description": "Your hands freeze anything they touch at temperatures so cold it slows down your foes.",
    "valid_targets": [ "hostile" ],
    "flags": [ "NO_PROJECTILE", "SILENT", "NO_HANDS", "NO_HANDS" ],
    "effect": "attack",
    "effect_str": "slow_freeze_effect",
    "shape": "blast",
    "damage_type": "cold",
    "min_damage": 38,
    "damage_increment": 5,
    "max_damage": 128,
    "min_range": 1,
    "max_range": 1,
    "base_energy_cost": 175,
    "final_energy_cost": 75,
    "energy_increment": -5,
    "spell_class": "KELVINIST",
    "min_duration": 1000,
    "max_duration": 1000,
    "difficulty": 7,
    "max_level": 20,
    "base_casting_time": 160,
    "final_casting_time": 40,
    "casting_time_increment": -6,
    "energy_source": "MANA"
  },
  {
    "id": "kelvinist_anti_cold",
    "type": "SPELL",
    "name": "Cloak of Warmth",
    "description": "Heat the nearby air, keeping you warm and providing some protection against ice and cold.",
    "valid_targets": [ "self" ],
    "spell_class": "KELVINIST",
    "flags": [ "CONCENTRATE", "VERBAL", "SOMATIC" ],
    "effect": "attack",
    "effect_str": "effect_kelvinist_anti_cold",
    "shape": "blast",
    "difficulty": 4,
    "max_level": 20,
    "min_duration": 180000,
    "max_duration": 2160000,
    "duration_increment": 99000,
    "energy_source": "MANA",
    "base_energy_cost": 450,
    "base_casting_time": 1500
  },
  {
    "id": "kelvinist_anti_heat",
    "type": "SPELL",
    "name": "Cloak of Chill",
    "description": "Cool the nearby air, keeping you cool and providing some protection against heat and flame.",
    "valid_targets": [ "self" ],
    "spell_class": "KELVINIST",
    "flags": [ "CONCENTRATE", "VERBAL", "SOMATIC" ],
    "effect": "attack",
    "effect_str": "effect_kelvinist_anti_heat",
    "shape": "blast",
    "difficulty": 4,
    "max_level": 20,
    "min_duration": 180000,
    "max_duration": 2160000,
    "duration_increment": 99000,
    "energy_source": "MANA",
    "base_energy_cost": 450,
    "base_casting_time": 1500
  }
]
