[
  {
    "id": "xe_fey_magick",
    "type": "magic_type",
    "energy_source": "MANA",
    "cannot_cast_flags": [ "NO_FEY_MAGIC", "NO_SPELLCASTING" ],
    "cannot_cast_message": "You can't use your glamours now!"
  },
  {
    "id": "cloud_of_steam_sylph",
    "type": "SPELL",
    "name": "Cloud of Steam",
    "description": "You bring forth a cloud of boiling water.",
    "effect": "attack",
    "shape": "blast",
    "valid_targets": [ "self", "ally", "hostile", "ground" ],
    "skill": "deduction",
    "flags": [ "SOMATIC", "VERBAL", "NO_LEGS" ],
    "max_level": 35,
    "min_damage": 4,
    "max_damage": 68,
    "damage_increment": 2.2,
    "min_aoe": 3,
    "max_aoe": 11,
    "aoe_increment": 0.2,
    "min_range": 6,
    "max_range": 20,
    "range_increment": 1.0,
    "base_casting_time": 200,
    "final_casting_time": 120,
    "casting_time_increment": 4,
    "base_energy_cost": 350,
    "final_energy_cost": 100,
    "energy_increment": -8,
    "magic_type": "xe_fey_magick",
    "teachable": false,
    "spell_class": "SYLPH",
    "difficulty": 4,
    "damage_type": "heat"
  },
  {
    "id": "cloud_of_steam_undine",
    "type": "SPELL",
    "name": "Cloud of Steam",
    "description": "You bring forth a cloud of boiling water.",
    "effect": "attack",
    "shape": "blast",
    "valid_targets": [ "self", "ally", "hostile", "ground" ],
    "flags": [ "SOMATIC", "VERBAL", "NO_LEGS" ],
    "max_level": 35,
    "min_damage": 4,
    "max_damage": 68,
    "damage_increment": 2.2,
    "min_aoe": 3,
    "max_aoe": 11,
    "aoe_increment": 0.2,
    "min_range": 6,
    "max_range": 20,
    "range_increment": 1.0,
    "base_casting_time": 200,
    "final_casting_time": 120,
    "casting_time_increment": 4,
    "base_energy_cost": 350,
    "final_energy_cost": 100,
    "energy_increment": -8,
    "magic_type": "xe_fey_magick",
    "teachable": false,
    "spell_class": "UNDINE",
    "difficulty": 4,
    "damage_type": "heat"
  },
  {
    "id": "create_light_sylph",
    "type": "SPELL",
    "name": "Light",
    "description": "Creates a magical light.",
    "valid_targets": [ "self" ],
    "skill": "deduction",
    "flags": [ "NO_LEGS" ],
    "min_range": 0,
    "max_range": 0,
    "min_damage": 1,
    "max_damage": 1,
    "effect": "spawn_item",
    "effect_str": "magic_light",
    "shape": "blast",
    "teachable": false,
    "spell_class": "SYLPH",
    "magic_type": "xe_fey_magick",
    "difficulty": 2,
    "max_level": 20,
    "base_casting_time": 200,
    "base_energy_cost": 150,
    "min_duration": 100000,
    "max_duration": 1000000,
    "duration_increment": 45000
  },
  {
    "id": "create_light_salamander",
    "type": "SPELL",
    "name": "Light",
    "description": "Creates a magical light.",
    "valid_targets": [ "self" ],
    "flags": [ "NO_LEGS" ],
    "min_range": 0,
    "max_range": 0,
    "min_damage": 1,
    "max_damage": 1,
    "effect": "spawn_item",
    "effect_str": "magic_light",
    "shape": "blast",
    "teachable": false,
    "spell_class": "SALAMANDER",
    "magic_type": "xe_fey_magick",
    "difficulty": 2,
    "max_level": 20,
    "base_casting_time": 200,
    "base_energy_cost": 150,
    "min_duration": 100000,
    "max_duration": 1000000,
    "duration_increment": 45000
  },
  {
    "id": "cultivate_goblin_fruit_real",
    "type": "SPELL",
    "name": { "str": "Cultivate Goblin Fruit Real", "//~": "NO_I18N" },
    "description": { "str": "The actual spell that calls forth a goblin fruit.  It's a bug if you have it.", "//~": "NO_I18N" },
    "skill": "deduction",
    "flags": [ "SPAWN_GROUP" ],
    "valid_targets": [ "self" ],
    "effect": "spawn_item",
    "effect_str": "spell_spawned_goblin_fruit",
    "shape": "blast",
    "min_damage": 1,
    "max_damage": 1
  },
  {
    "id": "paraclesian_spell_dodge_bonus_arvore",
    "type": "SPELL",
    "name": "The Wind Blows, the Willow Bends",
    "description": "Like the flitting wind or the flexible willow, the spell allows you to avoid attacks much more easily.  It has <color_yellow>reduced effects</color> when on artificial terrain.",
    "flags": [ "SOMATIC", "VERBAL", "NO_EXPLOSION_SFX", "RANDOM_DURATION" ],
    "valid_targets": [ "self" ],
    "skill": "deduction",
    "max_level": 25,
    "effect": "effect_on_condition",
    "effect_str": "EOC_APPLY_PARACLESIAN_DODGE_BONUS",
    "spell_class": "ARVORE",
    "shape": "blast",
    "difficulty": 5,
    "min_duration": {
      "math": [
        "( ( (u_spell_level('paraclesian_spell_dodge_bonus_arvore') * 1800) + 21000) * (scaling_factor(u_val('perception') ) ) )"
      ]
    },
    "max_duration": {
      "math": [
        "( ( (u_spell_level('paraclesian_spell_dodge_bonus_arvore') * 4200) + 39000) * (scaling_factor(u_val('perception') ) ) )"
      ]
    },
    "magic_type": "xe_fey_magick",
    "base_energy_cost": 600,
    "final_energy_cost": 400,
    "energy_increment": -12,
    "base_casting_time": 150
  },
  {
    "id": "paraclesian_spell_dodge_bonus_sylph",
    "type": "SPELL",
    "copy-from": "paraclesian_spell_dodge_bonus_arvore",
    "name": "The Wind Blows, the Willow Bends",
    "description": "Like the flitting wind or the flexible willow, the spell allows you to avoid attacks much more easily.  It has <color_yellow>reduced effects</color> indoors.",
    "spell_class": "SYLPH",
    "min_duration": {
      "math": [
        "( ( (u_spell_level('paraclesian_spell_dodge_bonus_sylph') * 1800) + 21000) * (scaling_factor(u_val('perception') ) ) )"
      ]
    },
    "max_duration": {
      "math": [
        "( ( (u_spell_level('paraclesian_spell_dodge_bonus_sylph') * 4200) + 39000) * (scaling_factor(u_val('perception') ) ) )"
      ]
    }
  },
  {
    "id": "paraclesian_spell_make_gossamer",
    "type": "SPELL",
    "name": "Weave Gossamer",
    "description": "Under the light of the moon, you can weave cotton into gossamer.",
    "flags": [ "SOMATIC", "VERBAL", "NO_EXPLOSION_SFX" ],
    "valid_targets": [ "self" ],
    "components": "spell_components_paraclesian_spell_make_gossamer",
    "skill": "deduction",
    "max_level": 8,
    "effect": "effect_on_condition",
    "effect_str": "EOC_PARACLESIAN_TURN_COTTON_TO_GOSSAMER",
    "shape": "blast",
    "difficulty": 7,
    "magic_type": "xe_fey_magick",
    "base_energy_cost": 800,
    "base_casting_time": 360000
  },
  {
    "id": "spell_components_paraclesian_spell_make_gossamer",
    "type": "requirement",
    "//": "Cotton for the Weave Gossamer spell",
    "components": [ [ [ "cotton_patchwork", 8 ], [ "sheet_cotton", 1 ], [ "sheet_cotton_patchwork", 1 ] ] ]
  },
  {
    "id": "paraclesian_spell_make_gossamer_real",
    "type": "SPELL",
    "name": "Weave Gossamer",
    "description": "Under the light of the moon, you can weave cotton into gossamer.",
    "flags": [ "PERMANENT_ALL_LEVELS" ],
    "valid_targets": [ "self" ],
    "components": "spell_components_paraclesian_spell_make_gossamer",
    "skill": "deduction",
    "max_level": 8,
    "effect": "spawn_item",
    "effect_str": "gossamer_patchwork",
    "shape": "blast",
    "min_damage": { "math": [ "(u_spell_level('paraclesian_spell_make_gossamer') )" ] },
    "max_damage": { "math": [ "(u_spell_level('paraclesian_spell_make_gossamer') )" ] }
  },
  {
    "id": "homullus_spell_wish_to_converse",
    "type": "SPELL",
    "name": { "str": "Wish to Converse" },
    "description": "When this spell is cast, the target will somehow begin to care about you very much and can't not help but talk to.",
    "valid_targets": [ "hostile" ],
    "max_level": 1,
    "flags": [ "SILENT", "NO_HANDS", "NO_LEGS" ],
    "base_casting_time": 75,
    "min_range": 15,
    "max_range": 15,
    "shape": "blast",
    "effect": "attack",
    "effect_str": "effect_wants_to_talk"
  },
  {
    "type": "effect_type",
    "id": "effect_wants_to_talk",
    "name": [ "Seeming to want to talk to you" ],
    "desc": [ "This person wants to talk with you." ]
  },
  {
    "id": "paraclesian_translocate",
    "type": "SPELL",
    "name": { "str": "Paraclesian Translocation", "//~": "NO_I18N" },
    "description": {
      "str": "The actual spell that transports you when Paraclesians use translocation spells.  It's a bug if you have it.",
      "//~": "NO_I18N"
    },
    "teachable": false,
    "valid_targets": [ "self" ],
    "flags": [ "VERBAL", "SOMATIC" ],
    "effect": "translocate",
    "shape": "blast"
  }
]
