Orra Greengate
Humanoid
monster base type attack cast speed +% and damage -% final [33]
20% increased Attack Speed
SpectreN
Tagscold_affinity, cursing_monster, female_rogue_exile, has_bow, human, humanoid, light_armour, medium_height, medium_movement, not_int, not_str, physical_affinity, puncturing_weapon, ranged, red_blood, rogue_exile
Packs
  • Orra Greengate, Jonah Unchained, Torr Olgosso, Minara Anemina, Ion Darkshroud
  • Life
    112%
    Evasion
    +100%
    Ailment Threshold
    112%
    Resistance
    30 30 30 20
    Damage
    143%
    Accuracy
    100%
    Critical Strike Chance
    +5%
    Critical Strike Multiplier
    +130%
    Attack Distance
    6 ~ 80
    Attack Time
    1.605 Second
    Damage Spread
    ±20%
    Experience
    220%
    Model Size
    100%
    Type
    ExileRanger1
    Metadata
    ExileRanger1
    Level
    68
    Life
    7,205
    Armour
    28,790
    Evasion
    9,478
    Energy Shield
    0
    Damage
    534
    Spell Damage
    534
    Accuracy
    290
    Attack Time
    1.605
    Experience
    22,561
    Ailment Threshold
    7,205
    Chill
    23
    Shock
    23
    Brittle
    129
    Scorch
    23
    Sap
    63
    Melee
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
    Default Attack
    Base Damage: 427–641
    Critical Strike Chance: 5%
    Attack Time: 1.605 sec
    Strike your foes down with a powerful blow.
    skill can fire arrows [1]
    skill can fire wand projectiles [1]
    ExileVulnerability
    Spell, Area, Duration, Trappable, Totemable, Mineable, Multicastable, Triggerable, Cascadable, AppliesCurse, CanRapidFire, AreaSpell, Physical, InstantNoRepeatWhenHeld, InstantShiftAttackForLeftMouse, Hex
    Vulnerability
    Cast Time: 0.5 sec
    Cooldown Time: 8 sec
    Curse all targets in an area, causing them to take increased physical damage. Attacks against the cursed enemies have a chance to inflict bleeding.
    Base duration is 11.99 seconds
    Cursed enemies take 34% increased Physical Damage
    Attack Hits against Cursed Enemies have 25% chance to inflict Bleeding
    active skill area of effect radius +% final [38]
    ExileRainOfArrows
    Attack, RangedAttack, MirageArcherCanUse, Area, ProjectileSpeed, Totemable, Trappable, Mineable, Triggerable, Rain
    Rain of Arrows
    Base Damage: 427–641
    Critical Strike Chance: 5%
    Attack Time: 1.605 sec
    Fires a large number of arrows into the air, to land at the target after a short delay.
    Gain 18% of Physical Damage as Extra Cold Damage
    Deals 30% less Damage
    19% increased Attack Speed
    18% increased Projectile Speed
    active skill area of effect radius +% final [21]
    animation effect variation [1]
    base is projectile [1]
    is area damage [1]
    spell maximum action distance +% [-35]
    ExileHatred
    Spell, Area, Buff, HasReservation, TotemCastsAlone, Totemable, Aura, Cold, Instant, AreaSpell, CanHaveBlessing, InstantNoRepeatWhenHeld, InstantShiftAttackForLeftMouse, Cooldown
    Hatred
    Cast Time: 1.2 sec
    Cooldown Time: 0.5 sec
    Casts an aura that grants extra cold damage based on physical damage to you and your allies.
    You and nearby allies gain 36% of Physical Damage as Extra Cold Damage
    active skill area of effect radius +% final [40]
    ExileFrenzy
    Attack, RangedAttack, MirageArcherCanUse, Projectile, ProjectilesFromUser, Totemable, Trappable, Mineable, MeleeSingleTarget, Multistrikeable, Melee, Triggerable
    Frenzy
    Base Damage: 427–641
    Critical Strike Chance: 5%
    Attack Time: 1.605 sec
    Performs an attack that gives the character a frenzy charge if it hits. Frenzy charges increase your attack speed.
    Deals 28% less Damage
    Deals 10% more Physical Damage
    10% increased Physical Damage per Frenzy Charge
    Fires 2 additional Projectiles
    10% increased Attack Speed per Frenzy Charge
    skill can fire arrows [1]
    ExileVaalRainOfArrows
    Attack, RangedAttack, Area, ProjectileSpeed, Totemable, Trappable, Mineable, Duration, Vaal, Rain
    Vaal Rain of Arrows
    Base Damage: 427–641
    Critical Strike Chance: 5%
    Attack Time: 1.605 sec
    Fires a large number of arrows into the air, to land at the target after a short delay. Enemies hit by the arrows are pinned in place, unable to move for a time.
    Gain 18% of Physical Damage as Extra Cold Damage
    Deals 30% less Damage
    Base duration is 4.4 seconds
    19% increased Attack Speed
    18% increased Projectile Speed
    active skill area of effect radius +% final [21]
    base is projectile [1]
    is area damage [1]
    rain of arrows pin [1]
    spell maximum action distance +% [-35]
    ExileBarrage
    Attack, RangedAttack, MirageArcherCanUse, Projectile, ProjectilesFromUser, Totemable, Trappable, Mineable
    Barrage
    Base Damage: 427–641
    Critical Strike Chance: 5%
    Attack Time: 1.605 sec
    Cooldown Time: 4 sec
    After a short preparation time, you fire individual projectiles repeatedly with a Bow or Wand. These projectiles have a small randomised spread. This skill cannot be Triggered.
    Deals 60% less Damage
    Fires 3 additional Projectiles
    45% increased Physical Damage
    Fires Projectiles sequentially
    29% more Attack Speed
    monster reverse point blank damage -% at minimum range [30]
    skill can fire arrows [1]
    skill can fire wand projectiles [1]

    Object Type

    version 2
    extends "Metadata/Monsters/Exiles/Exile"
    
    Stats
    {
    	set_base_mana_cost_-% = 0
    	set_mana_regeneration_rate_per_minute_% = 0
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Exiles/Exile"
    
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/Exiles/ExileRanger1"] = {
        name = "Orra Greengate",
        life = 1.12,
        fireResist = 30,
        coldResist = 30,
        lightningResist = 30,
        chaosResist = 20,
        damage = 1.43,
        damageSpread = 0.2,
        attackTime = 1.605,
        attackRange = 80,
        accuracy = 1,
        weaponType1 = "Bow",
        skillList = {
            "ExileFrenzy",
            "Melee",
            "ExileVulnerability",
            "ExileRainOfArrows",
            "ExileVaalRainOfArrows",
            "ExileHatred",
            "ExileBarrage",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileFrenzy"] = {
        name = "Frenzy",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Performs an attack that gives the character a frenzy charge if it hits. Frenzy charges increase your attack speed.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Totemable] = true,
            [SkillType.Trappable] = true,
            [SkillType.Mineable] = true,
            [SkillType.MeleeSingleTarget] = true,
            [SkillType.Multistrikeable] = true,
            [SkillType.Melee] = true,
            [SkillType.Triggerable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "physical_damage_+%_per_frenzy_charge",
            "base_attack_speed_+%_per_frenzy_charge",
            "active_skill_physical_damage_+%_final",
            "skill_can_fire_arrows",
        },
        levels = {
            [1] = {10, 10, 10, levelRequirement = 30, statInterpolation = {},  cost = { }, },
            [2] = {0, 2, -20, 10, 10, 10, levelRequirement = 50, statInterpolation = {1, 1, 1},  cost = { }, },
            [3] = {0, 2, -28, 10, 10, 10, levelRequirement = 65, statInterpolation = {1, 1, 1},  cost = { }, },
            [4] = {0, 2, -36, 10, 10, 10, levelRequirement = 75, statInterpolation = {1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["Melee"] = {
        name = "Default Attack",
        hidden = true,
        color = "4",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Strike your foes down with a powerful blow.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.MeleeSingleTarget] = true,
            [SkillType.Multistrikeable] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileVulnerability"] = {
        name = "Vulnerability",
        hidden = true,
        color = "3",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Curse all targets in an area, causing them to take increased physical damage. Attacks against the cursed enemies have a chance to inflict bleeding.",
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Area] = true,
            [SkillType.Duration] = true,
            [SkillType.Trappable] = true,
            [SkillType.Totemable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Multicastable] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Cascadable] = true,
            [SkillType.AppliesCurse] = true,
            [SkillType.CanRapidFire] = true,
            [SkillType.AreaSpell] = true,
            [SkillType.Physical] = true,
            [SkillType.InstantNoRepeatWhenHeld] = true,
            [SkillType.InstantShiftAttackForLeftMouse] = true,
            [SkillType.Hex] = true,
        },
        statDescriptionScope = "curse_skill_stat_descriptions",
        castTime = 0.5,
        baseFlags = {
            area = true,
            spell = true,
            duration = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "base_skill_effect_duration",
            "physical_damage_taken_+%",
            "receive_bleeding_chance_%_when_hit_by_attack",
        },
        levels = {
            [1] = {9900, 25, 25, levelRequirement = 24, statInterpolation = {1, 1},  cost = { }, },
            [2] = {10010, 25, 2, 25, levelRequirement = 27, statInterpolation = {1, 1, 1},  cost = { }, },
            [3] = {10120, 26, 4, 25, levelRequirement = 30, statInterpolation = {1, 1, 1},  cost = { }, },
            [4] = {10230, 26, 6, 25, levelRequirement = 33, statInterpolation = {1, 1, 1},  cost = { }, },
            [5] = {10340, 27, 8, 25, levelRequirement = 35, statInterpolation = {1, 1, 1},  cost = { }, },
            [6] = {10450, 27, 10, 25, levelRequirement = 38, statInterpolation = {1, 1, 1},  cost = { }, },
            [7] = {10560, 28, 12, 25, levelRequirement = 40, statInterpolation = {1, 1, 1},  cost = { }, },
            [8] = {10670, 28, 14, 25, levelRequirement = 43, statInterpolation = {1, 1, 1},  cost = { }, },
            [9] = {10780, 29, 16, 25, levelRequirement = 46, statInterpolation = {1, 1, 1},  cost = { }, },
            [10] = {10890, 29, 18, 25, levelRequirement = 48, statInterpolation = {1, 1, 1},  cost = { }, },
            [11] = {11000, 30, 20, 25, levelRequirement = 50, statInterpolation = {1, 1, 1},  cost = { }, },
            [12] = {11110, 30, 22, 25, levelRequirement = 52, statInterpolation = {1, 1, 1},  cost = { }, },
            [13] = {11220, 31, 24, 25, levelRequirement = 54, statInterpolation = {1, 1, 1},  cost = { }, },
            [14] = {11330, 31, 26, 25, levelRequirement = 56, statInterpolation = {1, 1, 1},  cost = { }, },
            [15] = {11440, 32, 28, 25, levelRequirement = 58, statInterpolation = {1, 1, 1},  cost = { }, },
            [16] = {11550, 32, 30, 25, levelRequirement = 60, statInterpolation = {1, 1, 1},  cost = { }, },
            [17] = {11660, 33, 32, 25, levelRequirement = 62, statInterpolation = {1, 1, 1},  cost = { }, },
            [18] = {11770, 33, 34, 25, levelRequirement = 64, statInterpolation = {1, 1, 1},  cost = { }, },
            [19] = {11880, 34, 36, 25, levelRequirement = 66, statInterpolation = {1, 1, 1},  cost = { }, },
            [20] = {11990, 34, 38, 25, levelRequirement = 68, statInterpolation = {1, 1, 1},  cost = { }, },
            [21] = {12100, 35, 40, 25, levelRequirement = 70, statInterpolation = {1, 1, 1},  cost = { }, },
            [22] = {12210, 35, 42, 25, levelRequirement = 72, statInterpolation = {1, 1, 1},  cost = { }, },
            [23] = {12320, 36, 44, 25, levelRequirement = 74, statInterpolation = {1, 1, 1},  cost = { }, },
            [24] = {12430, 36, 46, 25, levelRequirement = 76, statInterpolation = {1, 1, 1},  cost = { }, },
            [25] = {12540, 37, 48, 25, levelRequirement = 78, statInterpolation = {1, 1, 1},  cost = { }, },
            [26] = {12650, 37, 50, 25, levelRequirement = 80, statInterpolation = {1, 1, 1},  cost = { }, },
            [27] = {12760, 38, 52, 25, levelRequirement = 82, statInterpolation = {1, 1, 1},  cost = { }, },
            [28] = {12870, 38, 54, 25, levelRequirement = 84, statInterpolation = {1, 1, 1},  cost = { }, },
            [29] = {12980, 39, 56, 25, levelRequirement = 86, statInterpolation = {1, 1, 1},  cost = { }, },
            [30] = {13090, 39, 58, 25, levelRequirement = 88, statInterpolation = {1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileRainOfArrows"] = {
        name = "Rain of Arrows",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Fires a large number of arrows into the air, to land at the target after a short delay.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Area] = true,
            [SkillType.ProjectileSpeed] = true,
            [SkillType.Totemable] = true,
            [SkillType.Trappable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Rain] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            area = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "active_skill_damage_+%_final",
            "animation_effect_variation",
            "spell_maximum_action_distance_+%",
            "is_area_damage",
            "base_is_projectile",
        },
        levels = {
            [1] = {-20, 1, -35, levelRequirement = 2, statInterpolation = {1},  cost = { }, },
            [2] = {-20, 1, 1, -35, levelRequirement = 4, statInterpolation = {1, 1},  cost = { }, },
            [3] = {-20, 2, 1, -35, levelRequirement = 6, statInterpolation = {1, 1},  cost = { }, },
            [4] = {-20, 3, 1, -35, levelRequirement = 9, statInterpolation = {1, 1},  cost = { }, },
            [5] = {-20, 10, 4, 1, -35, levelRequirement = 12, statInterpolation = {1, 1, 1},  cost = { }, },
            [6] = {-20, 10, 5, 1, -35, levelRequirement = 15, statInterpolation = {1, 1, 1},  cost = { }, },
            [7] = {-20, 11, 6, 1, -35, levelRequirement = 19, statInterpolation = {1, 1, 1},  cost = { }, },
            [8] = {-20, 11, 15, 7, 1, -35, levelRequirement = 23, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [9] = {-20, 12, 15, 8, 1, -35, levelRequirement = 28, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [10] = {-20, 12, 15, 9, 1, -35, levelRequirement = 33, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [11] = {-25, 13, 15, 10, 10, 1, -35, levelRequirement = 39, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [12] = {-25, 13, 15, 10, 11, 1, -35, levelRequirement = 43, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [13] = {-25, 14, 16, 11, 12, 1, -35, levelRequirement = 46, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [14] = {-25, 14, 16, 12, 13, 1, -35, levelRequirement = 49, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [15] = {-30, 15, 16, 13, 14, 1, -35, levelRequirement = 52, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [16] = {-30, 15, 16, 14, 15, 1, -35, levelRequirement = 55, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [17] = {-30, 16, 17, 15, 16, 1, -35, levelRequirement = 58, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [18] = {-30, 16, 17, 16, 17, 1, -35, levelRequirement = 61, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [19] = {-30, 17, 17, 17, 18, 1, -35, levelRequirement = 64, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [20] = {-30, 17, 17, 18, 19, 1, -35, levelRequirement = 66, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [21] = {-30, 18, 18, 19, 20, 1, -35, levelRequirement = 67, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [22] = {-30, 18, 18, 19, 21, 1, -35, levelRequirement = 68, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [23] = {-30, 19, 18, 20, 22, 1, -35, levelRequirement = 69, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [24] = {-30, 19, 18, 20, 23, 1, -35, levelRequirement = 70, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [25] = {-30, 20, 18, 21, 24, 1, -35, levelRequirement = 71, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [26] = {-30, 20, 18, 21, 25, 1, -35, levelRequirement = 72, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [27] = {-30, 21, 18, 22, 26, 1, -35, levelRequirement = 73, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [28] = {-30, 21, 18, 22, 27, 1, -35, levelRequirement = 74, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [29] = {-30, 22, 19, 23, 28, 1, -35, levelRequirement = 75, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [30] = {-30, 22, 19, 23, 29, 1, -35, levelRequirement = 76, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [31] = {-30, 23, 19, 24, 30, 1, -35, levelRequirement = 77, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [32] = {-30, 23, 19, 24, 31, 1, -35, levelRequirement = 78, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [33] = {-30, 24, 19, 25, 32, 1, -35, levelRequirement = 79, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [34] = {-30, 24, 19, 25, 33, 1, -35, levelRequirement = 80, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [35] = {-30, 25, 19, 26, 34, 1, -35, levelRequirement = 81, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [36] = {-30, 25, 19, 26, 35, 1, -35, levelRequirement = 82, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileVaalRainOfArrows"] = {
        name = "Vaal Rain of Arrows",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Fires a large number of arrows into the air, to land at the target after a short delay. Enemies hit by the arrows are pinned in place, unable to move for a time.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.Area] = true,
            [SkillType.ProjectileSpeed] = true,
            [SkillType.Totemable] = true,
            [SkillType.Trappable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Duration] = true,
            [SkillType.Vaal] = true,
            [SkillType.Rain] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            area = true,
            duration = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "active_skill_damage_+%_final",
            "base_skill_effect_duration",
            "spell_maximum_action_distance_+%",
            "base_is_projectile",
            "is_area_damage",
            "rain_of_arrows_pin",
        },
        levels = {
            [1] = {-20, 3400, -35, levelRequirement = 2, statInterpolation = {1, 1},  cost = { }, },
            [2] = {-20, 3450, 1, -35, levelRequirement = 4, statInterpolation = {1, 1, 1},  cost = { }, },
            [3] = {-20, 3500, 2, -35, levelRequirement = 6, statInterpolation = {1, 1, 1},  cost = { }, },
            [4] = {-20, 3550, 3, -35, levelRequirement = 9, statInterpolation = {1, 1, 1},  cost = { }, },
            [5] = {-20, 3600, 10, 4, -35, levelRequirement = 12, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [6] = {-20, 3650, 10, 5, -35, levelRequirement = 15, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [7] = {-20, 3700, 11, 6, -35, levelRequirement = 19, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [8] = {-20, 3750, 11, 15, 7, -35, levelRequirement = 23, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [9] = {-20, 3800, 12, 15, 8, -35, levelRequirement = 28, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [10] = {-20, 3850, 12, 15, 9, -35, levelRequirement = 33, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [11] = {-25, 3900, 13, 15, 10, 10, -35, levelRequirement = 39, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [12] = {-25, 3950, 13, 15, 10, 11, -35, levelRequirement = 43, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [13] = {-25, 4000, 14, 16, 11, 12, -35, levelRequirement = 46, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [14] = {-25, 4050, 14, 16, 12, 13, -35, levelRequirement = 49, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [15] = {-30, 4100, 15, 16, 13, 14, -35, levelRequirement = 52, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [16] = {-30, 4150, 15, 16, 14, 15, -35, levelRequirement = 55, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [17] = {-30, 4200, 16, 17, 15, 16, -35, levelRequirement = 58, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [18] = {-30, 4250, 16, 17, 16, 17, -35, levelRequirement = 61, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [19] = {-30, 4300, 17, 17, 17, 18, -35, levelRequirement = 64, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [20] = {-30, 4350, 17, 17, 18, 19, -35, levelRequirement = 66, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [21] = {-30, 4375, 18, 18, 19, 20, -35, levelRequirement = 67, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [22] = {-30, 4400, 18, 18, 19, 21, -35, levelRequirement = 68, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [23] = {-30, 4425, 19, 18, 20, 22, -35, levelRequirement = 69, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [24] = {-30, 4450, 19, 18, 20, 23, -35, levelRequirement = 70, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [25] = {-30, 4475, 20, 18, 21, 24, -35, levelRequirement = 71, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [26] = {-30, 4500, 20, 18, 21, 25, -35, levelRequirement = 72, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [27] = {-30, 4525, 21, 18, 22, 26, -35, levelRequirement = 73, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [28] = {-30, 4550, 21, 18, 22, 27, -35, levelRequirement = 74, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [29] = {-30, 4575, 22, 19, 23, 28, -35, levelRequirement = 75, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [30] = {-30, 4600, 23, 19, 23, 29, -35, levelRequirement = 76, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [31] = {-30, 4625, 23, 19, 24, 30, -35, levelRequirement = 77, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [32] = {-30, 4650, 24, 19, 24, 31, -35, levelRequirement = 78, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [33] = {-30, 4675, 24, 19, 25, 32, -35, levelRequirement = 79, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [34] = {-30, 4700, 25, 19, 25, 33, -35, levelRequirement = 80, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [35] = {-30, 4725, 25, 19, 26, 34, -35, levelRequirement = 81, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [36] = {-30, 4750, 26, 19, 26, 35, -35, levelRequirement = 82, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileHatred"] = {
        name = "Hatred",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Casts an aura that grants extra cold damage based on physical damage to you and your allies.",
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Area] = true,
            [SkillType.Buff] = true,
            [SkillType.HasReservation] = true,
            [SkillType.TotemCastsAlone] = true,
            [SkillType.Totemable] = true,
            [SkillType.Aura] = true,
            [SkillType.Cold] = true,
            [SkillType.Instant] = true,
            [SkillType.AreaSpell] = true,
            [SkillType.CanHaveBlessing] = true,
            [SkillType.InstantNoRepeatWhenHeld] = true,
            [SkillType.InstantShiftAttackForLeftMouse] = true,
            [SkillType.Cooldown] = true,
        },
        statDescriptionScope = "aura_skill_stat_descriptions",
        castTime = 1.2,
        baseFlags = {
            area = true,
            spell = true,
            aura = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "physical_damage_%_to_add_as_cold",
        },
        levels = {
            [1] = {26, levelRequirement = 10, statInterpolation = {1},  cost = { }, },
            [2] = {26, 3, levelRequirement = 13, statInterpolation = {1, 1},  cost = { }, },
            [3] = {27, 6, levelRequirement = 16, statInterpolation = {1, 1},  cost = { }, },
            [4] = {27, 9, levelRequirement = 19, statInterpolation = {1, 1},  cost = { }, },
            [5] = {28, 12, levelRequirement = 22, statInterpolation = {1, 1},  cost = { }, },
            [6] = {28, 15, levelRequirement = 25, statInterpolation = {1, 1},  cost = { }, },
            [7] = {29, 18, levelRequirement = 28, statInterpolation = {1, 1},  cost = { }, },
            [8] = {29, 21, levelRequirement = 32, statInterpolation = {1, 1},  cost = { }, },
            [9] = {30, 23, levelRequirement = 36, statInterpolation = {1, 1},  cost = { }, },
            [10] = {30, 25, levelRequirement = 40, statInterpolation = {1, 1},  cost = { }, },
            [11] = {31, 27, levelRequirement = 44, statInterpolation = {1, 1},  cost = { }, },
            [12] = {31, 29, levelRequirement = 47, statInterpolation = {1, 1},  cost = { }, },
            [13] = {32, 31, levelRequirement = 50, statInterpolation = {1, 1},  cost = { }, },
            [14] = {32, 33, levelRequirement = 53, statInterpolation = {1, 1},  cost = { }, },
            [15] = {33, 35, levelRequirement = 56, statInterpolation = {1, 1},  cost = { }, },
            [16] = {34, 36, levelRequirement = 59, statInterpolation = {1, 1},  cost = { }, },
            [17] = {34, 37, levelRequirement = 62, statInterpolation = {1, 1},  cost = { }, },
            [18] = {35, 38, levelRequirement = 64, statInterpolation = {1, 1},  cost = { }, },
            [19] = {35, 39, levelRequirement = 66, statInterpolation = {1, 1},  cost = { }, },
            [20] = {36, 40, levelRequirement = 68, statInterpolation = {1, 1},  cost = { }, },
            [21] = {36, 41, levelRequirement = 70, statInterpolation = {1, 1},  cost = { }, },
            [22] = {37, 42, levelRequirement = 72, statInterpolation = {1, 1},  cost = { }, },
            [23] = {37, 43, levelRequirement = 74, statInterpolation = {1, 1},  cost = { }, },
            [24] = {38, 44, levelRequirement = 76, statInterpolation = {1, 1},  cost = { }, },
            [25] = {38, 45, levelRequirement = 78, statInterpolation = {1, 1},  cost = { }, },
            [26] = {39, 46, levelRequirement = 80, statInterpolation = {1, 1},  cost = { }, },
            [27] = {39, 47, levelRequirement = 82, statInterpolation = {1, 1},  cost = { }, },
            [28] = {40, 48, levelRequirement = 84, statInterpolation = {1, 1},  cost = { }, },
            [29] = {40, 49, levelRequirement = 86, statInterpolation = {1, 1},  cost = { }, },
            [30] = {41, 50, levelRequirement = 88, statInterpolation = {1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileBarrage"] = {
        name = "Barrage",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "After a short preparation time, you fire individual projectiles repeatedly with a Bow or Wand. These projectiles have a small randomised spread. This skill cannot be Triggered.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Totemable] = true,
            [SkillType.Trappable] = true,
            [SkillType.Mineable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "physical_damage_+%",
            "active_skill_attack_speed_+%_final",
            "number_of_additional_projectiles",
            "active_skill_damage_+%_final",
            "monster_reverse_point_blank_damage_-%_at_minimum_range",
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "projectiles_barrage",
        },
        levels = {
            [1] = {0, 0, 3, -60, 30, levelRequirement = 3, statInterpolation = {1, 1},  cost = { }, },
            [2] = {0, 1, 3, -60, 30, levelRequirement = 10, statInterpolation = {1, 1},  cost = { }, },
            [3] = {2, 2, 3, -60, 30, levelRequirement = 13, statInterpolation = {1, 1},  cost = { }, },
            [4] = {5, 4, 3, -60, 30, levelRequirement = 16, statInterpolation = {1, 1},  cost = { }, },
            [5] = {7, 5, 3, -60, 30, levelRequirement = 19, statInterpolation = {1, 1},  cost = { }, },
            [6] = {9, 7, 3, -60, 30, levelRequirement = 22, statInterpolation = {1, 1},  cost = { }, },
            [7] = {12, 8, 3, -60, 30, levelRequirement = 25, statInterpolation = {1, 1},  cost = { }, },
            [8] = {14, 10, 3, -60, 30, levelRequirement = 28, statInterpolation = {1, 1},  cost = { }, },
            [9] = {16, 11, 3, -60, 30, levelRequirement = 32, statInterpolation = {1, 1},  cost = { }, },
            [10] = {19, 13, 3, -60, 30, levelRequirement = 36, statInterpolation = {1, 1},  cost = { }, },
            [11] = {21, 14, 3, -60, 30, levelRequirement = 40, statInterpolation = {1, 1},  cost = { }, },
            [12] = {24, 16, 3, -60, 30, levelRequirement = 44, statInterpolation = {1, 1},  cost = { }, },
            [13] = {26, 17, 3, -60, 30, levelRequirement = 47, statInterpolation = {1, 1},  cost = { }, },
            [14] = {28, 19, 3, -60, 30, levelRequirement = 50, statInterpolation = {1, 1},  cost = { }, },
            [15] = {31, 20, 3, -60, 30, levelRequirement = 53, statInterpolation = {1, 1},  cost = { }, },
            [16] = {33, 22, 3, -60, 30, levelRequirement = 56, statInterpolation = {1, 1},  cost = { }, },
            [17] = {35, 23, 3, -60, 30, levelRequirement = 59, statInterpolation = {1, 1},  cost = { }, },
            [18] = {38, 25, 3, -60, 30, levelRequirement = 62, statInterpolation = {1, 1},  cost = { }, },
            [19] = {40, 26, 3, -60, 30, levelRequirement = 64, statInterpolation = {1, 1},  cost = { }, },
            [20] = {42, 28, 3, -60, 30, levelRequirement = 66, statInterpolation = {1, 1},  cost = { }, },
            [21] = {44, 29, 3, -60, 30, levelRequirement = 67, statInterpolation = {1, 1},  cost = { }, },
            [22] = {45, 29, 3, -60, 30, levelRequirement = 68, statInterpolation = {1, 1},  cost = { }, },
            [23] = {46, 30, 3, -60, 30, levelRequirement = 69, statInterpolation = {1, 1},  cost = { }, },
            [24] = {47, 31, 3, -60, 30, levelRequirement = 70, statInterpolation = {1, 1},  cost = { }, },
            [25] = {48, 32, 3, -60, 30, levelRequirement = 71, statInterpolation = {1, 1},  cost = { }, },
            [26] = {49, 32, 3, -60, 30, levelRequirement = 72, statInterpolation = {1, 1},  cost = { }, },
            [27] = {51, 33, 3, -60, 30, levelRequirement = 73, statInterpolation = {1, 1},  cost = { }, },
            [28] = {52, 34, 3, -60, 30, levelRequirement = 74, statInterpolation = {1, 1},  cost = { }, },
            [29] = {53, 35, 3, -60, 30, levelRequirement = 75, statInterpolation = {1, 1},  cost = { }, },
            [30] = {54, 35, 3, -60, 30, levelRequirement = 76, statInterpolation = {1, 1},  cost = { }, },
            [31] = {55, 36, 3, -60, 30, levelRequirement = 77, statInterpolation = {1, 1},  cost = { }, },
            [32] = {56, 37, 3, -60, 30, levelRequirement = 78, statInterpolation = {1, 1},  cost = { }, },
            [33] = {58, 39, 3, -60, 30, levelRequirement = 79, statInterpolation = {1, 1},  cost = { }, },
            [34] = {59, 38, 3, -60, 30, levelRequirement = 80, statInterpolation = {1, 1},  cost = { }, },
            [35] = {60, 39, 3, -60, 30, levelRequirement = 81, statInterpolation = {1, 1},  cost = { }, },
            [36] = {61, 40, 3, -60, 30, levelRequirement = 82, statInterpolation = {1, 1},  cost = { }, },
            [37] = {64, 41, 3, -60, 30, levelRequirement = 84, statInterpolation = {1, 1},  cost = { }, },
            [38] = {66, 43, 3, -60, 30, levelRequirement = 86, statInterpolation = {1, 1},  cost = { }, },
            [39] = {68, 44, 3, -60, 30, levelRequirement = 88, statInterpolation = {1, 1},  cost = { }, },
        },
    }
    
    monster base type attack cast speed +% and damage -% final [33]
    IdMonsterSpeedAndDamageFixupComplete
    FamilyMonsterSpeedAndDamageFixup
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • monster base type attack cast speed +% and damage -% final Min: 33 Max: 33 Global
  • Craft Tagscaster_damage damage attack caster speed
    20% increased Attack Speed
    IdMonsterImplicitFastAttack4
    FamilyIncreasedAttackSpeed
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • attack speed +% Min: 20 Max: 20 Global
  • Craft Tagsattack speed
    Orra Greengate
    Humanoid
    monster base type attack cast speed +% and damage -% final [33]
    20% increased Attack Speed
    100% increased maximum Life
    100% increased Area of Effect
    80% increased Character Size
    SpectreN
    Tagscold_affinity, cursing_monster, female_rogue_exile, has_bow, human, humanoid, light_armour, medium_height, medium_movement, not_int, not_str, physical_affinity, puncturing_weapon, ranged, red_blood, rogue_exile
    Life
    112%
    Evasion
    +100%
    Ailment Threshold
    112%
    Resistance
    30 30 30 20
    Damage
    143%
    Accuracy
    100%
    Critical Strike Chance
    +5%
    Critical Strike Multiplier
    +130%
    Attack Distance
    6 ~ 80
    Attack Time
    1.605 Second
    Damage Spread
    ±20%
    Experience
    220%
    Model Size
    100%
    Type
    ExileRanger1
    Metadata
    ExileRanger1Supporter
    Level
    68
    Life
    7,205
    Armour
    28,790
    Evasion
    9,478
    Energy Shield
    0
    Damage
    534
    Spell Damage
    534
    Accuracy
    290
    Attack Time
    1.605
    Experience
    22,561
    Ailment Threshold
    7,205
    Chill
    23
    Shock
    23
    Brittle
    129
    Scorch
    23
    Sap
    63
    Melee
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
    Default Attack
    Base Damage: 427–641
    Critical Strike Chance: 5%
    Attack Time: 1.605 sec
    Strike your foes down with a powerful blow.
    skill can fire arrows [1]
    skill can fire wand projectiles [1]
    ExileVulnerability
    Spell, Area, Duration, Trappable, Totemable, Mineable, Multicastable, Triggerable, Cascadable, AppliesCurse, CanRapidFire, AreaSpell, Physical, InstantNoRepeatWhenHeld, InstantShiftAttackForLeftMouse, Hex
    Vulnerability
    Cast Time: 0.5 sec
    Cooldown Time: 8 sec
    Curse all targets in an area, causing them to take increased physical damage. Attacks against the cursed enemies have a chance to inflict bleeding.
    Base duration is 11.99 seconds
    Cursed enemies take 34% increased Physical Damage
    Attack Hits against Cursed Enemies have 25% chance to inflict Bleeding
    active skill area of effect radius +% final [38]
    ExileRainOfArrows
    Attack, RangedAttack, MirageArcherCanUse, Area, ProjectileSpeed, Totemable, Trappable, Mineable, Triggerable, Rain
    Rain of Arrows
    Base Damage: 427–641
    Critical Strike Chance: 5%
    Attack Time: 1.605 sec
    Fires a large number of arrows into the air, to land at the target after a short delay.
    Gain 18% of Physical Damage as Extra Cold Damage
    Deals 30% less Damage
    19% increased Attack Speed
    18% increased Projectile Speed
    active skill area of effect radius +% final [21]
    animation effect variation [1]
    base is projectile [1]
    is area damage [1]
    spell maximum action distance +% [-35]
    ExileHatred
    Spell, Area, Buff, HasReservation, TotemCastsAlone, Totemable, Aura, Cold, Instant, AreaSpell, CanHaveBlessing, InstantNoRepeatWhenHeld, InstantShiftAttackForLeftMouse, Cooldown
    Hatred
    Cast Time: 1.2 sec
    Cooldown Time: 0.5 sec
    Casts an aura that grants extra cold damage based on physical damage to you and your allies.
    You and nearby allies gain 36% of Physical Damage as Extra Cold Damage
    active skill area of effect radius +% final [40]
    ExileFrenzy
    Attack, RangedAttack, MirageArcherCanUse, Projectile, ProjectilesFromUser, Totemable, Trappable, Mineable, MeleeSingleTarget, Multistrikeable, Melee, Triggerable
    Frenzy
    Base Damage: 427–641
    Critical Strike Chance: 5%
    Attack Time: 1.605 sec
    Performs an attack that gives the character a frenzy charge if it hits. Frenzy charges increase your attack speed.
    Deals 28% less Damage
    Deals 10% more Physical Damage
    10% increased Physical Damage per Frenzy Charge
    Fires 2 additional Projectiles
    10% increased Attack Speed per Frenzy Charge
    skill can fire arrows [1]
    ExileVaalRainOfArrows
    Attack, RangedAttack, Area, ProjectileSpeed, Totemable, Trappable, Mineable, Duration, Vaal, Rain
    Vaal Rain of Arrows
    Base Damage: 427–641
    Critical Strike Chance: 5%
    Attack Time: 1.605 sec
    Fires a large number of arrows into the air, to land at the target after a short delay. Enemies hit by the arrows are pinned in place, unable to move for a time.
    Gain 18% of Physical Damage as Extra Cold Damage
    Deals 30% less Damage
    Base duration is 4.4 seconds
    19% increased Attack Speed
    18% increased Projectile Speed
    active skill area of effect radius +% final [21]
    base is projectile [1]
    is area damage [1]
    rain of arrows pin [1]
    spell maximum action distance +% [-35]
    ExileBarrage
    Attack, RangedAttack, MirageArcherCanUse, Projectile, ProjectilesFromUser, Totemable, Trappable, Mineable
    Barrage
    Base Damage: 427–641
    Critical Strike Chance: 5%
    Attack Time: 1.605 sec
    Cooldown Time: 4 sec
    After a short preparation time, you fire individual projectiles repeatedly with a Bow or Wand. These projectiles have a small randomised spread. This skill cannot be Triggered.
    Deals 60% less Damage
    Fires 3 additional Projectiles
    45% increased Physical Damage
    Fires Projectiles sequentially
    29% more Attack Speed
    monster reverse point blank damage -% at minimum range [30]
    skill can fire arrows [1]
    skill can fire wand projectiles [1]

    Object Type

    version 2
    extends "Metadata/Monsters/Exiles/Exile"
    
    Stats
    {
    	set_base_mana_cost_-% = 0
    	set_mana_regeneration_rate_per_minute_% = 0
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Exiles/Exile"
    
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/Exiles/ExileRanger1Supporter"] = {
        name = "Orra Greengate",
        life = 1.12,
        fireResist = 30,
        coldResist = 30,
        lightningResist = 30,
        chaosResist = 20,
        damage = 1.43,
        damageSpread = 0.2,
        attackTime = 1.605,
        attackRange = 80,
        accuracy = 1,
        weaponType1 = "Bow",
        skillList = {
            "ExileFrenzy",
            "Melee",
            "ExileVulnerability",
            "ExileRainOfArrows",
            "ExileVaalRainOfArrows",
            "ExileHatred",
            "ExileBarrage",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileFrenzy"] = {
        name = "Frenzy",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Performs an attack that gives the character a frenzy charge if it hits. Frenzy charges increase your attack speed.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Totemable] = true,
            [SkillType.Trappable] = true,
            [SkillType.Mineable] = true,
            [SkillType.MeleeSingleTarget] = true,
            [SkillType.Multistrikeable] = true,
            [SkillType.Melee] = true,
            [SkillType.Triggerable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "physical_damage_+%_per_frenzy_charge",
            "base_attack_speed_+%_per_frenzy_charge",
            "active_skill_physical_damage_+%_final",
            "skill_can_fire_arrows",
        },
        levels = {
            [1] = {10, 10, 10, levelRequirement = 30, statInterpolation = {},  cost = { }, },
            [2] = {0, 2, -20, 10, 10, 10, levelRequirement = 50, statInterpolation = {1, 1, 1},  cost = { }, },
            [3] = {0, 2, -28, 10, 10, 10, levelRequirement = 65, statInterpolation = {1, 1, 1},  cost = { }, },
            [4] = {0, 2, -36, 10, 10, 10, levelRequirement = 75, statInterpolation = {1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["Melee"] = {
        name = "Default Attack",
        hidden = true,
        color = "4",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Strike your foes down with a powerful blow.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.MeleeSingleTarget] = true,
            [SkillType.Multistrikeable] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileVulnerability"] = {
        name = "Vulnerability",
        hidden = true,
        color = "3",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Curse all targets in an area, causing them to take increased physical damage. Attacks against the cursed enemies have a chance to inflict bleeding.",
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Area] = true,
            [SkillType.Duration] = true,
            [SkillType.Trappable] = true,
            [SkillType.Totemable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Multicastable] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Cascadable] = true,
            [SkillType.AppliesCurse] = true,
            [SkillType.CanRapidFire] = true,
            [SkillType.AreaSpell] = true,
            [SkillType.Physical] = true,
            [SkillType.InstantNoRepeatWhenHeld] = true,
            [SkillType.InstantShiftAttackForLeftMouse] = true,
            [SkillType.Hex] = true,
        },
        statDescriptionScope = "curse_skill_stat_descriptions",
        castTime = 0.5,
        baseFlags = {
            area = true,
            spell = true,
            duration = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "base_skill_effect_duration",
            "physical_damage_taken_+%",
            "receive_bleeding_chance_%_when_hit_by_attack",
        },
        levels = {
            [1] = {9900, 25, 25, levelRequirement = 24, statInterpolation = {1, 1},  cost = { }, },
            [2] = {10010, 25, 2, 25, levelRequirement = 27, statInterpolation = {1, 1, 1},  cost = { }, },
            [3] = {10120, 26, 4, 25, levelRequirement = 30, statInterpolation = {1, 1, 1},  cost = { }, },
            [4] = {10230, 26, 6, 25, levelRequirement = 33, statInterpolation = {1, 1, 1},  cost = { }, },
            [5] = {10340, 27, 8, 25, levelRequirement = 35, statInterpolation = {1, 1, 1},  cost = { }, },
            [6] = {10450, 27, 10, 25, levelRequirement = 38, statInterpolation = {1, 1, 1},  cost = { }, },
            [7] = {10560, 28, 12, 25, levelRequirement = 40, statInterpolation = {1, 1, 1},  cost = { }, },
            [8] = {10670, 28, 14, 25, levelRequirement = 43, statInterpolation = {1, 1, 1},  cost = { }, },
            [9] = {10780, 29, 16, 25, levelRequirement = 46, statInterpolation = {1, 1, 1},  cost = { }, },
            [10] = {10890, 29, 18, 25, levelRequirement = 48, statInterpolation = {1, 1, 1},  cost = { }, },
            [11] = {11000, 30, 20, 25, levelRequirement = 50, statInterpolation = {1, 1, 1},  cost = { }, },
            [12] = {11110, 30, 22, 25, levelRequirement = 52, statInterpolation = {1, 1, 1},  cost = { }, },
            [13] = {11220, 31, 24, 25, levelRequirement = 54, statInterpolation = {1, 1, 1},  cost = { }, },
            [14] = {11330, 31, 26, 25, levelRequirement = 56, statInterpolation = {1, 1, 1},  cost = { }, },
            [15] = {11440, 32, 28, 25, levelRequirement = 58, statInterpolation = {1, 1, 1},  cost = { }, },
            [16] = {11550, 32, 30, 25, levelRequirement = 60, statInterpolation = {1, 1, 1},  cost = { }, },
            [17] = {11660, 33, 32, 25, levelRequirement = 62, statInterpolation = {1, 1, 1},  cost = { }, },
            [18] = {11770, 33, 34, 25, levelRequirement = 64, statInterpolation = {1, 1, 1},  cost = { }, },
            [19] = {11880, 34, 36, 25, levelRequirement = 66, statInterpolation = {1, 1, 1},  cost = { }, },
            [20] = {11990, 34, 38, 25, levelRequirement = 68, statInterpolation = {1, 1, 1},  cost = { }, },
            [21] = {12100, 35, 40, 25, levelRequirement = 70, statInterpolation = {1, 1, 1},  cost = { }, },
            [22] = {12210, 35, 42, 25, levelRequirement = 72, statInterpolation = {1, 1, 1},  cost = { }, },
            [23] = {12320, 36, 44, 25, levelRequirement = 74, statInterpolation = {1, 1, 1},  cost = { }, },
            [24] = {12430, 36, 46, 25, levelRequirement = 76, statInterpolation = {1, 1, 1},  cost = { }, },
            [25] = {12540, 37, 48, 25, levelRequirement = 78, statInterpolation = {1, 1, 1},  cost = { }, },
            [26] = {12650, 37, 50, 25, levelRequirement = 80, statInterpolation = {1, 1, 1},  cost = { }, },
            [27] = {12760, 38, 52, 25, levelRequirement = 82, statInterpolation = {1, 1, 1},  cost = { }, },
            [28] = {12870, 38, 54, 25, levelRequirement = 84, statInterpolation = {1, 1, 1},  cost = { }, },
            [29] = {12980, 39, 56, 25, levelRequirement = 86, statInterpolation = {1, 1, 1},  cost = { }, },
            [30] = {13090, 39, 58, 25, levelRequirement = 88, statInterpolation = {1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileRainOfArrows"] = {
        name = "Rain of Arrows",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Fires a large number of arrows into the air, to land at the target after a short delay.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Area] = true,
            [SkillType.ProjectileSpeed] = true,
            [SkillType.Totemable] = true,
            [SkillType.Trappable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Rain] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            area = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "active_skill_damage_+%_final",
            "animation_effect_variation",
            "spell_maximum_action_distance_+%",
            "is_area_damage",
            "base_is_projectile",
        },
        levels = {
            [1] = {-20, 1, -35, levelRequirement = 2, statInterpolation = {1},  cost = { }, },
            [2] = {-20, 1, 1, -35, levelRequirement = 4, statInterpolation = {1, 1},  cost = { }, },
            [3] = {-20, 2, 1, -35, levelRequirement = 6, statInterpolation = {1, 1},  cost = { }, },
            [4] = {-20, 3, 1, -35, levelRequirement = 9, statInterpolation = {1, 1},  cost = { }, },
            [5] = {-20, 10, 4, 1, -35, levelRequirement = 12, statInterpolation = {1, 1, 1},  cost = { }, },
            [6] = {-20, 10, 5, 1, -35, levelRequirement = 15, statInterpolation = {1, 1, 1},  cost = { }, },
            [7] = {-20, 11, 6, 1, -35, levelRequirement = 19, statInterpolation = {1, 1, 1},  cost = { }, },
            [8] = {-20, 11, 15, 7, 1, -35, levelRequirement = 23, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [9] = {-20, 12, 15, 8, 1, -35, levelRequirement = 28, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [10] = {-20, 12, 15, 9, 1, -35, levelRequirement = 33, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [11] = {-25, 13, 15, 10, 10, 1, -35, levelRequirement = 39, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [12] = {-25, 13, 15, 10, 11, 1, -35, levelRequirement = 43, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [13] = {-25, 14, 16, 11, 12, 1, -35, levelRequirement = 46, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [14] = {-25, 14, 16, 12, 13, 1, -35, levelRequirement = 49, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [15] = {-30, 15, 16, 13, 14, 1, -35, levelRequirement = 52, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [16] = {-30, 15, 16, 14, 15, 1, -35, levelRequirement = 55, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [17] = {-30, 16, 17, 15, 16, 1, -35, levelRequirement = 58, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [18] = {-30, 16, 17, 16, 17, 1, -35, levelRequirement = 61, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [19] = {-30, 17, 17, 17, 18, 1, -35, levelRequirement = 64, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [20] = {-30, 17, 17, 18, 19, 1, -35, levelRequirement = 66, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [21] = {-30, 18, 18, 19, 20, 1, -35, levelRequirement = 67, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [22] = {-30, 18, 18, 19, 21, 1, -35, levelRequirement = 68, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [23] = {-30, 19, 18, 20, 22, 1, -35, levelRequirement = 69, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [24] = {-30, 19, 18, 20, 23, 1, -35, levelRequirement = 70, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [25] = {-30, 20, 18, 21, 24, 1, -35, levelRequirement = 71, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [26] = {-30, 20, 18, 21, 25, 1, -35, levelRequirement = 72, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [27] = {-30, 21, 18, 22, 26, 1, -35, levelRequirement = 73, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [28] = {-30, 21, 18, 22, 27, 1, -35, levelRequirement = 74, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [29] = {-30, 22, 19, 23, 28, 1, -35, levelRequirement = 75, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [30] = {-30, 22, 19, 23, 29, 1, -35, levelRequirement = 76, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [31] = {-30, 23, 19, 24, 30, 1, -35, levelRequirement = 77, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [32] = {-30, 23, 19, 24, 31, 1, -35, levelRequirement = 78, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [33] = {-30, 24, 19, 25, 32, 1, -35, levelRequirement = 79, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [34] = {-30, 24, 19, 25, 33, 1, -35, levelRequirement = 80, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [35] = {-30, 25, 19, 26, 34, 1, -35, levelRequirement = 81, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [36] = {-30, 25, 19, 26, 35, 1, -35, levelRequirement = 82, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileVaalRainOfArrows"] = {
        name = "Vaal Rain of Arrows",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Fires a large number of arrows into the air, to land at the target after a short delay. Enemies hit by the arrows are pinned in place, unable to move for a time.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.Area] = true,
            [SkillType.ProjectileSpeed] = true,
            [SkillType.Totemable] = true,
            [SkillType.Trappable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Duration] = true,
            [SkillType.Vaal] = true,
            [SkillType.Rain] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            area = true,
            duration = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "active_skill_damage_+%_final",
            "base_skill_effect_duration",
            "spell_maximum_action_distance_+%",
            "base_is_projectile",
            "is_area_damage",
            "rain_of_arrows_pin",
        },
        levels = {
            [1] = {-20, 3400, -35, levelRequirement = 2, statInterpolation = {1, 1},  cost = { }, },
            [2] = {-20, 3450, 1, -35, levelRequirement = 4, statInterpolation = {1, 1, 1},  cost = { }, },
            [3] = {-20, 3500, 2, -35, levelRequirement = 6, statInterpolation = {1, 1, 1},  cost = { }, },
            [4] = {-20, 3550, 3, -35, levelRequirement = 9, statInterpolation = {1, 1, 1},  cost = { }, },
            [5] = {-20, 3600, 10, 4, -35, levelRequirement = 12, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [6] = {-20, 3650, 10, 5, -35, levelRequirement = 15, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [7] = {-20, 3700, 11, 6, -35, levelRequirement = 19, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [8] = {-20, 3750, 11, 15, 7, -35, levelRequirement = 23, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [9] = {-20, 3800, 12, 15, 8, -35, levelRequirement = 28, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [10] = {-20, 3850, 12, 15, 9, -35, levelRequirement = 33, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [11] = {-25, 3900, 13, 15, 10, 10, -35, levelRequirement = 39, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [12] = {-25, 3950, 13, 15, 10, 11, -35, levelRequirement = 43, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [13] = {-25, 4000, 14, 16, 11, 12, -35, levelRequirement = 46, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [14] = {-25, 4050, 14, 16, 12, 13, -35, levelRequirement = 49, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [15] = {-30, 4100, 15, 16, 13, 14, -35, levelRequirement = 52, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [16] = {-30, 4150, 15, 16, 14, 15, -35, levelRequirement = 55, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [17] = {-30, 4200, 16, 17, 15, 16, -35, levelRequirement = 58, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [18] = {-30, 4250, 16, 17, 16, 17, -35, levelRequirement = 61, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [19] = {-30, 4300, 17, 17, 17, 18, -35, levelRequirement = 64, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [20] = {-30, 4350, 17, 17, 18, 19, -35, levelRequirement = 66, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [21] = {-30, 4375, 18, 18, 19, 20, -35, levelRequirement = 67, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [22] = {-30, 4400, 18, 18, 19, 21, -35, levelRequirement = 68, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [23] = {-30, 4425, 19, 18, 20, 22, -35, levelRequirement = 69, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [24] = {-30, 4450, 19, 18, 20, 23, -35, levelRequirement = 70, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [25] = {-30, 4475, 20, 18, 21, 24, -35, levelRequirement = 71, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [26] = {-30, 4500, 20, 18, 21, 25, -35, levelRequirement = 72, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [27] = {-30, 4525, 21, 18, 22, 26, -35, levelRequirement = 73, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [28] = {-30, 4550, 21, 18, 22, 27, -35, levelRequirement = 74, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [29] = {-30, 4575, 22, 19, 23, 28, -35, levelRequirement = 75, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [30] = {-30, 4600, 23, 19, 23, 29, -35, levelRequirement = 76, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [31] = {-30, 4625, 23, 19, 24, 30, -35, levelRequirement = 77, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [32] = {-30, 4650, 24, 19, 24, 31, -35, levelRequirement = 78, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [33] = {-30, 4675, 24, 19, 25, 32, -35, levelRequirement = 79, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [34] = {-30, 4700, 25, 19, 25, 33, -35, levelRequirement = 80, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [35] = {-30, 4725, 25, 19, 26, 34, -35, levelRequirement = 81, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [36] = {-30, 4750, 26, 19, 26, 35, -35, levelRequirement = 82, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileHatred"] = {
        name = "Hatred",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Casts an aura that grants extra cold damage based on physical damage to you and your allies.",
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Area] = true,
            [SkillType.Buff] = true,
            [SkillType.HasReservation] = true,
            [SkillType.TotemCastsAlone] = true,
            [SkillType.Totemable] = true,
            [SkillType.Aura] = true,
            [SkillType.Cold] = true,
            [SkillType.Instant] = true,
            [SkillType.AreaSpell] = true,
            [SkillType.CanHaveBlessing] = true,
            [SkillType.InstantNoRepeatWhenHeld] = true,
            [SkillType.InstantShiftAttackForLeftMouse] = true,
            [SkillType.Cooldown] = true,
        },
        statDescriptionScope = "aura_skill_stat_descriptions",
        castTime = 1.2,
        baseFlags = {
            area = true,
            spell = true,
            aura = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "physical_damage_%_to_add_as_cold",
        },
        levels = {
            [1] = {26, levelRequirement = 10, statInterpolation = {1},  cost = { }, },
            [2] = {26, 3, levelRequirement = 13, statInterpolation = {1, 1},  cost = { }, },
            [3] = {27, 6, levelRequirement = 16, statInterpolation = {1, 1},  cost = { }, },
            [4] = {27, 9, levelRequirement = 19, statInterpolation = {1, 1},  cost = { }, },
            [5] = {28, 12, levelRequirement = 22, statInterpolation = {1, 1},  cost = { }, },
            [6] = {28, 15, levelRequirement = 25, statInterpolation = {1, 1},  cost = { }, },
            [7] = {29, 18, levelRequirement = 28, statInterpolation = {1, 1},  cost = { }, },
            [8] = {29, 21, levelRequirement = 32, statInterpolation = {1, 1},  cost = { }, },
            [9] = {30, 23, levelRequirement = 36, statInterpolation = {1, 1},  cost = { }, },
            [10] = {30, 25, levelRequirement = 40, statInterpolation = {1, 1},  cost = { }, },
            [11] = {31, 27, levelRequirement = 44, statInterpolation = {1, 1},  cost = { }, },
            [12] = {31, 29, levelRequirement = 47, statInterpolation = {1, 1},  cost = { }, },
            [13] = {32, 31, levelRequirement = 50, statInterpolation = {1, 1},  cost = { }, },
            [14] = {32, 33, levelRequirement = 53, statInterpolation = {1, 1},  cost = { }, },
            [15] = {33, 35, levelRequirement = 56, statInterpolation = {1, 1},  cost = { }, },
            [16] = {34, 36, levelRequirement = 59, statInterpolation = {1, 1},  cost = { }, },
            [17] = {34, 37, levelRequirement = 62, statInterpolation = {1, 1},  cost = { }, },
            [18] = {35, 38, levelRequirement = 64, statInterpolation = {1, 1},  cost = { }, },
            [19] = {35, 39, levelRequirement = 66, statInterpolation = {1, 1},  cost = { }, },
            [20] = {36, 40, levelRequirement = 68, statInterpolation = {1, 1},  cost = { }, },
            [21] = {36, 41, levelRequirement = 70, statInterpolation = {1, 1},  cost = { }, },
            [22] = {37, 42, levelRequirement = 72, statInterpolation = {1, 1},  cost = { }, },
            [23] = {37, 43, levelRequirement = 74, statInterpolation = {1, 1},  cost = { }, },
            [24] = {38, 44, levelRequirement = 76, statInterpolation = {1, 1},  cost = { }, },
            [25] = {38, 45, levelRequirement = 78, statInterpolation = {1, 1},  cost = { }, },
            [26] = {39, 46, levelRequirement = 80, statInterpolation = {1, 1},  cost = { }, },
            [27] = {39, 47, levelRequirement = 82, statInterpolation = {1, 1},  cost = { }, },
            [28] = {40, 48, levelRequirement = 84, statInterpolation = {1, 1},  cost = { }, },
            [29] = {40, 49, levelRequirement = 86, statInterpolation = {1, 1},  cost = { }, },
            [30] = {41, 50, levelRequirement = 88, statInterpolation = {1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileBarrage"] = {
        name = "Barrage",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "After a short preparation time, you fire individual projectiles repeatedly with a Bow or Wand. These projectiles have a small randomised spread. This skill cannot be Triggered.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Totemable] = true,
            [SkillType.Trappable] = true,
            [SkillType.Mineable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "physical_damage_+%",
            "active_skill_attack_speed_+%_final",
            "number_of_additional_projectiles",
            "active_skill_damage_+%_final",
            "monster_reverse_point_blank_damage_-%_at_minimum_range",
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "projectiles_barrage",
        },
        levels = {
            [1] = {0, 0, 3, -60, 30, levelRequirement = 3, statInterpolation = {1, 1},  cost = { }, },
            [2] = {0, 1, 3, -60, 30, levelRequirement = 10, statInterpolation = {1, 1},  cost = { }, },
            [3] = {2, 2, 3, -60, 30, levelRequirement = 13, statInterpolation = {1, 1},  cost = { }, },
            [4] = {5, 4, 3, -60, 30, levelRequirement = 16, statInterpolation = {1, 1},  cost = { }, },
            [5] = {7, 5, 3, -60, 30, levelRequirement = 19, statInterpolation = {1, 1},  cost = { }, },
            [6] = {9, 7, 3, -60, 30, levelRequirement = 22, statInterpolation = {1, 1},  cost = { }, },
            [7] = {12, 8, 3, -60, 30, levelRequirement = 25, statInterpolation = {1, 1},  cost = { }, },
            [8] = {14, 10, 3, -60, 30, levelRequirement = 28, statInterpolation = {1, 1},  cost = { }, },
            [9] = {16, 11, 3, -60, 30, levelRequirement = 32, statInterpolation = {1, 1},  cost = { }, },
            [10] = {19, 13, 3, -60, 30, levelRequirement = 36, statInterpolation = {1, 1},  cost = { }, },
            [11] = {21, 14, 3, -60, 30, levelRequirement = 40, statInterpolation = {1, 1},  cost = { }, },
            [12] = {24, 16, 3, -60, 30, levelRequirement = 44, statInterpolation = {1, 1},  cost = { }, },
            [13] = {26, 17, 3, -60, 30, levelRequirement = 47, statInterpolation = {1, 1},  cost = { }, },
            [14] = {28, 19, 3, -60, 30, levelRequirement = 50, statInterpolation = {1, 1},  cost = { }, },
            [15] = {31, 20, 3, -60, 30, levelRequirement = 53, statInterpolation = {1, 1},  cost = { }, },
            [16] = {33, 22, 3, -60, 30, levelRequirement = 56, statInterpolation = {1, 1},  cost = { }, },
            [17] = {35, 23, 3, -60, 30, levelRequirement = 59, statInterpolation = {1, 1},  cost = { }, },
            [18] = {38, 25, 3, -60, 30, levelRequirement = 62, statInterpolation = {1, 1},  cost = { }, },
            [19] = {40, 26, 3, -60, 30, levelRequirement = 64, statInterpolation = {1, 1},  cost = { }, },
            [20] = {42, 28, 3, -60, 30, levelRequirement = 66, statInterpolation = {1, 1},  cost = { }, },
            [21] = {44, 29, 3, -60, 30, levelRequirement = 67, statInterpolation = {1, 1},  cost = { }, },
            [22] = {45, 29, 3, -60, 30, levelRequirement = 68, statInterpolation = {1, 1},  cost = { }, },
            [23] = {46, 30, 3, -60, 30, levelRequirement = 69, statInterpolation = {1, 1},  cost = { }, },
            [24] = {47, 31, 3, -60, 30, levelRequirement = 70, statInterpolation = {1, 1},  cost = { }, },
            [25] = {48, 32, 3, -60, 30, levelRequirement = 71, statInterpolation = {1, 1},  cost = { }, },
            [26] = {49, 32, 3, -60, 30, levelRequirement = 72, statInterpolation = {1, 1},  cost = { }, },
            [27] = {51, 33, 3, -60, 30, levelRequirement = 73, statInterpolation = {1, 1},  cost = { }, },
            [28] = {52, 34, 3, -60, 30, levelRequirement = 74, statInterpolation = {1, 1},  cost = { }, },
            [29] = {53, 35, 3, -60, 30, levelRequirement = 75, statInterpolation = {1, 1},  cost = { }, },
            [30] = {54, 35, 3, -60, 30, levelRequirement = 76, statInterpolation = {1, 1},  cost = { }, },
            [31] = {55, 36, 3, -60, 30, levelRequirement = 77, statInterpolation = {1, 1},  cost = { }, },
            [32] = {56, 37, 3, -60, 30, levelRequirement = 78, statInterpolation = {1, 1},  cost = { }, },
            [33] = {58, 39, 3, -60, 30, levelRequirement = 79, statInterpolation = {1, 1},  cost = { }, },
            [34] = {59, 38, 3, -60, 30, levelRequirement = 80, statInterpolation = {1, 1},  cost = { }, },
            [35] = {60, 39, 3, -60, 30, levelRequirement = 81, statInterpolation = {1, 1},  cost = { }, },
            [36] = {61, 40, 3, -60, 30, levelRequirement = 82, statInterpolation = {1, 1},  cost = { }, },
            [37] = {64, 41, 3, -60, 30, levelRequirement = 84, statInterpolation = {1, 1},  cost = { }, },
            [38] = {66, 43, 3, -60, 30, levelRequirement = 86, statInterpolation = {1, 1},  cost = { }, },
            [39] = {68, 44, 3, -60, 30, levelRequirement = 88, statInterpolation = {1, 1},  cost = { }, },
        },
    }
    
    monster base type attack cast speed +% and damage -% final [33]
    IdMonsterSpeedAndDamageFixupComplete
    FamilyMonsterSpeedAndDamageFixup
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • monster base type attack cast speed +% and damage -% final Min: 33 Max: 33 Global
  • Craft Tagscaster_damage damage attack caster speed
    20% increased Attack Speed
    IdMonsterImplicitFastAttack4
    FamilyIncreasedAttackSpeed
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • attack speed +% Min: 20 Max: 20 Global
  • Craft Tagsattack speed
    100% increased maximum Life
    100% increased Area of Effect
    80% increased Character Size
    IdMonsterSupporterGigantism1
    FamilyMonsterSupporterGigantism
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • maximum life +% Min: 100 Max: 100 Global
  • base actor scale +% Min: 80 Max: 80 Global
  • base skill area of effect +% Min: 100 Max: 100 Global
  • Orra Greengate
    Humanoid
    Monsters grant 100% increased Experience
    15000% increased Rarity of Items Dropped
    monster base type attack cast speed +% and damage -% final [33]
    20% increased Attack Speed
    cannot be stunned for ms after stun finished [2000]
    cannot be stunned while stunned [1]
    SpectreN
    AreaPrecinct Map
    Tagscold_affinity, cursing_monster, female_rogue_exile, has_bow, human, humanoid, light_armour, medium_movement, medium_small_height, non_unique_map_boss, not_int, not_str, physical_affinity, puncturing_weapon, ranged, red_blood, rogue_exile
    Life
    224%
    Evasion
    +100%
    Ailment Threshold
    224%
    Resistance
    40 40 40 25
    Damage
    144%
    Accuracy
    100%
    Critical Strike Chance
    +5%
    Critical Strike Multiplier
    +130%
    Attack Distance
    6 ~ 80
    Attack Time
    1.605 Second
    Damage Spread
    ±20%
    Experience
    200%
    Model Size
    100%
    Type
    ExileRanger1MapBoss
    Metadata
    ExileRanger1MapBoss
    Level
    77
    Life
    1,436,744
    Armour
    58,245
    Evasion
    12,896
    Energy Shield
    0
    Damage
    1,045
    Spell Damage
    1,559
    Accuracy
    412
    Attack Time
    1.07535
    Experience
    134,112
    Ailment Threshold
    718,372
    Chill
    2,271
    Shock
    2,271
    Brittle
    12,851
    Scorch
    2,271
    Sap
    6,276
    Melee
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
    Default Attack
    Base Damage: 1659–2489
    Critical Strike Chance: 5%
    Attack Time: 1.605 sec
    Strike your foes down with a powerful blow.
    skill can fire arrows [1]
    skill can fire wand projectiles [1]
    ExileVulnerability
    Spell, Area, Duration, Trappable, Totemable, Mineable, Multicastable, Triggerable, Cascadable, AppliesCurse, CanRapidFire, AreaSpell, Physical, InstantNoRepeatWhenHeld, InstantShiftAttackForLeftMouse, Hex
    Vulnerability
    Cast Time: 0.5 sec
    Cooldown Time: 8 sec
    Curse all targets in an area, causing them to take increased physical damage. Attacks against the cursed enemies have a chance to inflict bleeding.
    Base duration is 12.43 seconds
    Cursed enemies take 36% increased Physical Damage
    Attack Hits against Cursed Enemies have 25% chance to inflict Bleeding
    active skill area of effect radius +% final [46]
    ExileRainOfArrows
    Attack, RangedAttack, MirageArcherCanUse, Area, ProjectileSpeed, Totemable, Trappable, Mineable, Triggerable, Rain
    Rain of Arrows
    Base Damage: 1659–2489
    Critical Strike Chance: 5%
    Attack Time: 1.605 sec
    Fires a large number of arrows into the air, to land at the target after a short delay.
    Gain 19% of Physical Damage as Extra Cold Damage
    Deals 30% less Damage
    24% increased Attack Speed
    23% increased Projectile Speed
    active skill area of effect radius +% final [30]
    animation effect variation [1]
    base is projectile [1]
    is area damage [1]
    spell maximum action distance +% [-35]
    ExileHatred
    Spell, Area, Buff, HasReservation, TotemCastsAlone, Totemable, Aura, Cold, Instant, AreaSpell, CanHaveBlessing, InstantNoRepeatWhenHeld, InstantShiftAttackForLeftMouse, Cooldown
    Hatred
    Cast Time: 1.2 sec
    Cooldown Time: 0.5 sec
    Casts an aura that grants extra cold damage based on physical damage to you and your allies.
    You and nearby allies gain 38% of Physical Damage as Extra Cold Damage
    active skill area of effect radius +% final [44]
    ExileFrenzy
    Attack, RangedAttack, MirageArcherCanUse, Projectile, ProjectilesFromUser, Totemable, Trappable, Mineable, MeleeSingleTarget, Multistrikeable, Melee, Triggerable
    Frenzy
    Base Damage: 1659–2489
    Critical Strike Chance: 5%
    Attack Time: 1.605 sec
    Performs an attack that gives the character a frenzy charge if it hits. Frenzy charges increase your attack speed.
    Deals 36% less Damage
    Deals 10% more Physical Damage
    10% increased Physical Damage per Frenzy Charge
    Fires 2 additional Projectiles
    10% increased Attack Speed per Frenzy Charge
    skill can fire arrows [1]
    ExileVaalRainOfArrows
    Attack, RangedAttack, Area, ProjectileSpeed, Totemable, Trappable, Mineable, Duration, Vaal, Rain
    Vaal Rain of Arrows
    Base Damage: 1659–2489
    Critical Strike Chance: 5%
    Attack Time: 1.605 sec
    Fires a large number of arrows into the air, to land at the target after a short delay. Enemies hit by the arrows are pinned in place, unable to move for a time.
    Gain 19% of Physical Damage as Extra Cold Damage
    Deals 30% less Damage
    Base duration is 4.63 seconds
    24% increased Attack Speed
    23% increased Projectile Speed
    active skill area of effect radius +% final [30]
    base is projectile [1]
    is area damage [1]
    rain of arrows pin [1]
    spell maximum action distance +% [-35]
    ExileBarrage
    Attack, RangedAttack, MirageArcherCanUse, Projectile, ProjectilesFromUser, Totemable, Trappable, Mineable
    Barrage
    Base Damage: 1659–2489
    Critical Strike Chance: 5%
    Attack Time: 1.605 sec
    Cooldown Time: 4 sec
    After a short preparation time, you fire individual projectiles repeatedly with a Bow or Wand. These projectiles have a small randomised spread. This skill cannot be Triggered.
    Deals 60% less Damage
    Fires 3 additional Projectiles
    55% increased Physical Damage
    Fires Projectiles sequentially
    36% more Attack Speed
    monster reverse point blank damage -% at minimum range [30]
    skill can fire arrows [1]
    skill can fire wand projectiles [1]

    Object Type

    version 2
    extends "Metadata/Monsters/Exiles/ExileMapBoss"
    
    Stats
    {
    	set_base_mana_cost_-% = 0
    	set_mana_regeneration_rate_per_minute_% = 0
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Exiles/ExileMapBoss"
    
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/Exiles/ExileRanger1MapBoss"] = {
        name = "Orra Greengate",
        life = 2.24,
        fireResist = 40,
        coldResist = 40,
        lightningResist = 40,
        chaosResist = 25,
        damage = 1.44,
        damageSpread = 0.2,
        attackTime = 1.605,
        attackRange = 80,
        accuracy = 1,
        weaponType1 = "Bow",
        skillList = {
            "ExileFrenzy",
            "Melee",
            "ExileVulnerability",
            "ExileRainOfArrows",
            "ExileVaalRainOfArrows",
            "ExileHatred",
            "ExileBarrage",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileFrenzy"] = {
        name = "Frenzy",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Performs an attack that gives the character a frenzy charge if it hits. Frenzy charges increase your attack speed.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Totemable] = true,
            [SkillType.Trappable] = true,
            [SkillType.Mineable] = true,
            [SkillType.MeleeSingleTarget] = true,
            [SkillType.Multistrikeable] = true,
            [SkillType.Melee] = true,
            [SkillType.Triggerable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "physical_damage_+%_per_frenzy_charge",
            "base_attack_speed_+%_per_frenzy_charge",
            "active_skill_physical_damage_+%_final",
            "skill_can_fire_arrows",
        },
        levels = {
            [1] = {10, 10, 10, levelRequirement = 30, statInterpolation = {},  cost = { }, },
            [2] = {0, 2, -20, 10, 10, 10, levelRequirement = 50, statInterpolation = {1, 1, 1},  cost = { }, },
            [3] = {0, 2, -28, 10, 10, 10, levelRequirement = 65, statInterpolation = {1, 1, 1},  cost = { }, },
            [4] = {0, 2, -36, 10, 10, 10, levelRequirement = 75, statInterpolation = {1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["Melee"] = {
        name = "Default Attack",
        hidden = true,
        color = "4",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Strike your foes down with a powerful blow.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.MeleeSingleTarget] = true,
            [SkillType.Multistrikeable] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileVulnerability"] = {
        name = "Vulnerability",
        hidden = true,
        color = "3",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Curse all targets in an area, causing them to take increased physical damage. Attacks against the cursed enemies have a chance to inflict bleeding.",
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Area] = true,
            [SkillType.Duration] = true,
            [SkillType.Trappable] = true,
            [SkillType.Totemable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Multicastable] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Cascadable] = true,
            [SkillType.AppliesCurse] = true,
            [SkillType.CanRapidFire] = true,
            [SkillType.AreaSpell] = true,
            [SkillType.Physical] = true,
            [SkillType.InstantNoRepeatWhenHeld] = true,
            [SkillType.InstantShiftAttackForLeftMouse] = true,
            [SkillType.Hex] = true,
        },
        statDescriptionScope = "curse_skill_stat_descriptions",
        castTime = 0.5,
        baseFlags = {
            area = true,
            spell = true,
            duration = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "base_skill_effect_duration",
            "physical_damage_taken_+%",
            "receive_bleeding_chance_%_when_hit_by_attack",
        },
        levels = {
            [1] = {9900, 25, 25, levelRequirement = 24, statInterpolation = {1, 1},  cost = { }, },
            [2] = {10010, 25, 2, 25, levelRequirement = 27, statInterpolation = {1, 1, 1},  cost = { }, },
            [3] = {10120, 26, 4, 25, levelRequirement = 30, statInterpolation = {1, 1, 1},  cost = { }, },
            [4] = {10230, 26, 6, 25, levelRequirement = 33, statInterpolation = {1, 1, 1},  cost = { }, },
            [5] = {10340, 27, 8, 25, levelRequirement = 35, statInterpolation = {1, 1, 1},  cost = { }, },
            [6] = {10450, 27, 10, 25, levelRequirement = 38, statInterpolation = {1, 1, 1},  cost = { }, },
            [7] = {10560, 28, 12, 25, levelRequirement = 40, statInterpolation = {1, 1, 1},  cost = { }, },
            [8] = {10670, 28, 14, 25, levelRequirement = 43, statInterpolation = {1, 1, 1},  cost = { }, },
            [9] = {10780, 29, 16, 25, levelRequirement = 46, statInterpolation = {1, 1, 1},  cost = { }, },
            [10] = {10890, 29, 18, 25, levelRequirement = 48, statInterpolation = {1, 1, 1},  cost = { }, },
            [11] = {11000, 30, 20, 25, levelRequirement = 50, statInterpolation = {1, 1, 1},  cost = { }, },
            [12] = {11110, 30, 22, 25, levelRequirement = 52, statInterpolation = {1, 1, 1},  cost = { }, },
            [13] = {11220, 31, 24, 25, levelRequirement = 54, statInterpolation = {1, 1, 1},  cost = { }, },
            [14] = {11330, 31, 26, 25, levelRequirement = 56, statInterpolation = {1, 1, 1},  cost = { }, },
            [15] = {11440, 32, 28, 25, levelRequirement = 58, statInterpolation = {1, 1, 1},  cost = { }, },
            [16] = {11550, 32, 30, 25, levelRequirement = 60, statInterpolation = {1, 1, 1},  cost = { }, },
            [17] = {11660, 33, 32, 25, levelRequirement = 62, statInterpolation = {1, 1, 1},  cost = { }, },
            [18] = {11770, 33, 34, 25, levelRequirement = 64, statInterpolation = {1, 1, 1},  cost = { }, },
            [19] = {11880, 34, 36, 25, levelRequirement = 66, statInterpolation = {1, 1, 1},  cost = { }, },
            [20] = {11990, 34, 38, 25, levelRequirement = 68, statInterpolation = {1, 1, 1},  cost = { }, },
            [21] = {12100, 35, 40, 25, levelRequirement = 70, statInterpolation = {1, 1, 1},  cost = { }, },
            [22] = {12210, 35, 42, 25, levelRequirement = 72, statInterpolation = {1, 1, 1},  cost = { }, },
            [23] = {12320, 36, 44, 25, levelRequirement = 74, statInterpolation = {1, 1, 1},  cost = { }, },
            [24] = {12430, 36, 46, 25, levelRequirement = 76, statInterpolation = {1, 1, 1},  cost = { }, },
            [25] = {12540, 37, 48, 25, levelRequirement = 78, statInterpolation = {1, 1, 1},  cost = { }, },
            [26] = {12650, 37, 50, 25, levelRequirement = 80, statInterpolation = {1, 1, 1},  cost = { }, },
            [27] = {12760, 38, 52, 25, levelRequirement = 82, statInterpolation = {1, 1, 1},  cost = { }, },
            [28] = {12870, 38, 54, 25, levelRequirement = 84, statInterpolation = {1, 1, 1},  cost = { }, },
            [29] = {12980, 39, 56, 25, levelRequirement = 86, statInterpolation = {1, 1, 1},  cost = { }, },
            [30] = {13090, 39, 58, 25, levelRequirement = 88, statInterpolation = {1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileRainOfArrows"] = {
        name = "Rain of Arrows",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Fires a large number of arrows into the air, to land at the target after a short delay.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Area] = true,
            [SkillType.ProjectileSpeed] = true,
            [SkillType.Totemable] = true,
            [SkillType.Trappable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Rain] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            area = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "active_skill_damage_+%_final",
            "animation_effect_variation",
            "spell_maximum_action_distance_+%",
            "is_area_damage",
            "base_is_projectile",
        },
        levels = {
            [1] = {-20, 1, -35, levelRequirement = 2, statInterpolation = {1},  cost = { }, },
            [2] = {-20, 1, 1, -35, levelRequirement = 4, statInterpolation = {1, 1},  cost = { }, },
            [3] = {-20, 2, 1, -35, levelRequirement = 6, statInterpolation = {1, 1},  cost = { }, },
            [4] = {-20, 3, 1, -35, levelRequirement = 9, statInterpolation = {1, 1},  cost = { }, },
            [5] = {-20, 10, 4, 1, -35, levelRequirement = 12, statInterpolation = {1, 1, 1},  cost = { }, },
            [6] = {-20, 10, 5, 1, -35, levelRequirement = 15, statInterpolation = {1, 1, 1},  cost = { }, },
            [7] = {-20, 11, 6, 1, -35, levelRequirement = 19, statInterpolation = {1, 1, 1},  cost = { }, },
            [8] = {-20, 11, 15, 7, 1, -35, levelRequirement = 23, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [9] = {-20, 12, 15, 8, 1, -35, levelRequirement = 28, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [10] = {-20, 12, 15, 9, 1, -35, levelRequirement = 33, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [11] = {-25, 13, 15, 10, 10, 1, -35, levelRequirement = 39, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [12] = {-25, 13, 15, 10, 11, 1, -35, levelRequirement = 43, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [13] = {-25, 14, 16, 11, 12, 1, -35, levelRequirement = 46, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [14] = {-25, 14, 16, 12, 13, 1, -35, levelRequirement = 49, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [15] = {-30, 15, 16, 13, 14, 1, -35, levelRequirement = 52, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [16] = {-30, 15, 16, 14, 15, 1, -35, levelRequirement = 55, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [17] = {-30, 16, 17, 15, 16, 1, -35, levelRequirement = 58, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [18] = {-30, 16, 17, 16, 17, 1, -35, levelRequirement = 61, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [19] = {-30, 17, 17, 17, 18, 1, -35, levelRequirement = 64, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [20] = {-30, 17, 17, 18, 19, 1, -35, levelRequirement = 66, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [21] = {-30, 18, 18, 19, 20, 1, -35, levelRequirement = 67, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [22] = {-30, 18, 18, 19, 21, 1, -35, levelRequirement = 68, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [23] = {-30, 19, 18, 20, 22, 1, -35, levelRequirement = 69, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [24] = {-30, 19, 18, 20, 23, 1, -35, levelRequirement = 70, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [25] = {-30, 20, 18, 21, 24, 1, -35, levelRequirement = 71, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [26] = {-30, 20, 18, 21, 25, 1, -35, levelRequirement = 72, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [27] = {-30, 21, 18, 22, 26, 1, -35, levelRequirement = 73, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [28] = {-30, 21, 18, 22, 27, 1, -35, levelRequirement = 74, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [29] = {-30, 22, 19, 23, 28, 1, -35, levelRequirement = 75, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [30] = {-30, 22, 19, 23, 29, 1, -35, levelRequirement = 76, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [31] = {-30, 23, 19, 24, 30, 1, -35, levelRequirement = 77, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [32] = {-30, 23, 19, 24, 31, 1, -35, levelRequirement = 78, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [33] = {-30, 24, 19, 25, 32, 1, -35, levelRequirement = 79, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [34] = {-30, 24, 19, 25, 33, 1, -35, levelRequirement = 80, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [35] = {-30, 25, 19, 26, 34, 1, -35, levelRequirement = 81, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [36] = {-30, 25, 19, 26, 35, 1, -35, levelRequirement = 82, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileVaalRainOfArrows"] = {
        name = "Vaal Rain of Arrows",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Fires a large number of arrows into the air, to land at the target after a short delay. Enemies hit by the arrows are pinned in place, unable to move for a time.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.Area] = true,
            [SkillType.ProjectileSpeed] = true,
            [SkillType.Totemable] = true,
            [SkillType.Trappable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Duration] = true,
            [SkillType.Vaal] = true,
            [SkillType.Rain] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            area = true,
            duration = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "active_skill_damage_+%_final",
            "base_skill_effect_duration",
            "spell_maximum_action_distance_+%",
            "base_is_projectile",
            "is_area_damage",
            "rain_of_arrows_pin",
        },
        levels = {
            [1] = {-20, 3400, -35, levelRequirement = 2, statInterpolation = {1, 1},  cost = { }, },
            [2] = {-20, 3450, 1, -35, levelRequirement = 4, statInterpolation = {1, 1, 1},  cost = { }, },
            [3] = {-20, 3500, 2, -35, levelRequirement = 6, statInterpolation = {1, 1, 1},  cost = { }, },
            [4] = {-20, 3550, 3, -35, levelRequirement = 9, statInterpolation = {1, 1, 1},  cost = { }, },
            [5] = {-20, 3600, 10, 4, -35, levelRequirement = 12, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [6] = {-20, 3650, 10, 5, -35, levelRequirement = 15, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [7] = {-20, 3700, 11, 6, -35, levelRequirement = 19, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [8] = {-20, 3750, 11, 15, 7, -35, levelRequirement = 23, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [9] = {-20, 3800, 12, 15, 8, -35, levelRequirement = 28, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [10] = {-20, 3850, 12, 15, 9, -35, levelRequirement = 33, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [11] = {-25, 3900, 13, 15, 10, 10, -35, levelRequirement = 39, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [12] = {-25, 3950, 13, 15, 10, 11, -35, levelRequirement = 43, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [13] = {-25, 4000, 14, 16, 11, 12, -35, levelRequirement = 46, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [14] = {-25, 4050, 14, 16, 12, 13, -35, levelRequirement = 49, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [15] = {-30, 4100, 15, 16, 13, 14, -35, levelRequirement = 52, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [16] = {-30, 4150, 15, 16, 14, 15, -35, levelRequirement = 55, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [17] = {-30, 4200, 16, 17, 15, 16, -35, levelRequirement = 58, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [18] = {-30, 4250, 16, 17, 16, 17, -35, levelRequirement = 61, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [19] = {-30, 4300, 17, 17, 17, 18, -35, levelRequirement = 64, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [20] = {-30, 4350, 17, 17, 18, 19, -35, levelRequirement = 66, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [21] = {-30, 4375, 18, 18, 19, 20, -35, levelRequirement = 67, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [22] = {-30, 4400, 18, 18, 19, 21, -35, levelRequirement = 68, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [23] = {-30, 4425, 19, 18, 20, 22, -35, levelRequirement = 69, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [24] = {-30, 4450, 19, 18, 20, 23, -35, levelRequirement = 70, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [25] = {-30, 4475, 20, 18, 21, 24, -35, levelRequirement = 71, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [26] = {-30, 4500, 20, 18, 21, 25, -35, levelRequirement = 72, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [27] = {-30, 4525, 21, 18, 22, 26, -35, levelRequirement = 73, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [28] = {-30, 4550, 21, 18, 22, 27, -35, levelRequirement = 74, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [29] = {-30, 4575, 22, 19, 23, 28, -35, levelRequirement = 75, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [30] = {-30, 4600, 23, 19, 23, 29, -35, levelRequirement = 76, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [31] = {-30, 4625, 23, 19, 24, 30, -35, levelRequirement = 77, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [32] = {-30, 4650, 24, 19, 24, 31, -35, levelRequirement = 78, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [33] = {-30, 4675, 24, 19, 25, 32, -35, levelRequirement = 79, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [34] = {-30, 4700, 25, 19, 25, 33, -35, levelRequirement = 80, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [35] = {-30, 4725, 25, 19, 26, 34, -35, levelRequirement = 81, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [36] = {-30, 4750, 26, 19, 26, 35, -35, levelRequirement = 82, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileHatred"] = {
        name = "Hatred",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Casts an aura that grants extra cold damage based on physical damage to you and your allies.",
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Area] = true,
            [SkillType.Buff] = true,
            [SkillType.HasReservation] = true,
            [SkillType.TotemCastsAlone] = true,
            [SkillType.Totemable] = true,
            [SkillType.Aura] = true,
            [SkillType.Cold] = true,
            [SkillType.Instant] = true,
            [SkillType.AreaSpell] = true,
            [SkillType.CanHaveBlessing] = true,
            [SkillType.InstantNoRepeatWhenHeld] = true,
            [SkillType.InstantShiftAttackForLeftMouse] = true,
            [SkillType.Cooldown] = true,
        },
        statDescriptionScope = "aura_skill_stat_descriptions",
        castTime = 1.2,
        baseFlags = {
            area = true,
            spell = true,
            aura = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "physical_damage_%_to_add_as_cold",
        },
        levels = {
            [1] = {26, levelRequirement = 10, statInterpolation = {1},  cost = { }, },
            [2] = {26, 3, levelRequirement = 13, statInterpolation = {1, 1},  cost = { }, },
            [3] = {27, 6, levelRequirement = 16, statInterpolation = {1, 1},  cost = { }, },
            [4] = {27, 9, levelRequirement = 19, statInterpolation = {1, 1},  cost = { }, },
            [5] = {28, 12, levelRequirement = 22, statInterpolation = {1, 1},  cost = { }, },
            [6] = {28, 15, levelRequirement = 25, statInterpolation = {1, 1},  cost = { }, },
            [7] = {29, 18, levelRequirement = 28, statInterpolation = {1, 1},  cost = { }, },
            [8] = {29, 21, levelRequirement = 32, statInterpolation = {1, 1},  cost = { }, },
            [9] = {30, 23, levelRequirement = 36, statInterpolation = {1, 1},  cost = { }, },
            [10] = {30, 25, levelRequirement = 40, statInterpolation = {1, 1},  cost = { }, },
            [11] = {31, 27, levelRequirement = 44, statInterpolation = {1, 1},  cost = { }, },
            [12] = {31, 29, levelRequirement = 47, statInterpolation = {1, 1},  cost = { }, },
            [13] = {32, 31, levelRequirement = 50, statInterpolation = {1, 1},  cost = { }, },
            [14] = {32, 33, levelRequirement = 53, statInterpolation = {1, 1},  cost = { }, },
            [15] = {33, 35, levelRequirement = 56, statInterpolation = {1, 1},  cost = { }, },
            [16] = {34, 36, levelRequirement = 59, statInterpolation = {1, 1},  cost = { }, },
            [17] = {34, 37, levelRequirement = 62, statInterpolation = {1, 1},  cost = { }, },
            [18] = {35, 38, levelRequirement = 64, statInterpolation = {1, 1},  cost = { }, },
            [19] = {35, 39, levelRequirement = 66, statInterpolation = {1, 1},  cost = { }, },
            [20] = {36, 40, levelRequirement = 68, statInterpolation = {1, 1},  cost = { }, },
            [21] = {36, 41, levelRequirement = 70, statInterpolation = {1, 1},  cost = { }, },
            [22] = {37, 42, levelRequirement = 72, statInterpolation = {1, 1},  cost = { }, },
            [23] = {37, 43, levelRequirement = 74, statInterpolation = {1, 1},  cost = { }, },
            [24] = {38, 44, levelRequirement = 76, statInterpolation = {1, 1},  cost = { }, },
            [25] = {38, 45, levelRequirement = 78, statInterpolation = {1, 1},  cost = { }, },
            [26] = {39, 46, levelRequirement = 80, statInterpolation = {1, 1},  cost = { }, },
            [27] = {39, 47, levelRequirement = 82, statInterpolation = {1, 1},  cost = { }, },
            [28] = {40, 48, levelRequirement = 84, statInterpolation = {1, 1},  cost = { }, },
            [29] = {40, 49, levelRequirement = 86, statInterpolation = {1, 1},  cost = { }, },
            [30] = {41, 50, levelRequirement = 88, statInterpolation = {1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileBarrage"] = {
        name = "Barrage",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "After a short preparation time, you fire individual projectiles repeatedly with a Bow or Wand. These projectiles have a small randomised spread. This skill cannot be Triggered.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Totemable] = true,
            [SkillType.Trappable] = true,
            [SkillType.Mineable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "physical_damage_+%",
            "active_skill_attack_speed_+%_final",
            "number_of_additional_projectiles",
            "active_skill_damage_+%_final",
            "monster_reverse_point_blank_damage_-%_at_minimum_range",
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "projectiles_barrage",
        },
        levels = {
            [1] = {0, 0, 3, -60, 30, levelRequirement = 3, statInterpolation = {1, 1},  cost = { }, },
            [2] = {0, 1, 3, -60, 30, levelRequirement = 10, statInterpolation = {1, 1},  cost = { }, },
            [3] = {2, 2, 3, -60, 30, levelRequirement = 13, statInterpolation = {1, 1},  cost = { }, },
            [4] = {5, 4, 3, -60, 30, levelRequirement = 16, statInterpolation = {1, 1},  cost = { }, },
            [5] = {7, 5, 3, -60, 30, levelRequirement = 19, statInterpolation = {1, 1},  cost = { }, },
            [6] = {9, 7, 3, -60, 30, levelRequirement = 22, statInterpolation = {1, 1},  cost = { }, },
            [7] = {12, 8, 3, -60, 30, levelRequirement = 25, statInterpolation = {1, 1},  cost = { }, },
            [8] = {14, 10, 3, -60, 30, levelRequirement = 28, statInterpolation = {1, 1},  cost = { }, },
            [9] = {16, 11, 3, -60, 30, levelRequirement = 32, statInterpolation = {1, 1},  cost = { }, },
            [10] = {19, 13, 3, -60, 30, levelRequirement = 36, statInterpolation = {1, 1},  cost = { }, },
            [11] = {21, 14, 3, -60, 30, levelRequirement = 40, statInterpolation = {1, 1},  cost = { }, },
            [12] = {24, 16, 3, -60, 30, levelRequirement = 44, statInterpolation = {1, 1},  cost = { }, },
            [13] = {26, 17, 3, -60, 30, levelRequirement = 47, statInterpolation = {1, 1},  cost = { }, },
            [14] = {28, 19, 3, -60, 30, levelRequirement = 50, statInterpolation = {1, 1},  cost = { }, },
            [15] = {31, 20, 3, -60, 30, levelRequirement = 53, statInterpolation = {1, 1},  cost = { }, },
            [16] = {33, 22, 3, -60, 30, levelRequirement = 56, statInterpolation = {1, 1},  cost = { }, },
            [17] = {35, 23, 3, -60, 30, levelRequirement = 59, statInterpolation = {1, 1},  cost = { }, },
            [18] = {38, 25, 3, -60, 30, levelRequirement = 62, statInterpolation = {1, 1},  cost = { }, },
            [19] = {40, 26, 3, -60, 30, levelRequirement = 64, statInterpolation = {1, 1},  cost = { }, },
            [20] = {42, 28, 3, -60, 30, levelRequirement = 66, statInterpolation = {1, 1},  cost = { }, },
            [21] = {44, 29, 3, -60, 30, levelRequirement = 67, statInterpolation = {1, 1},  cost = { }, },
            [22] = {45, 29, 3, -60, 30, levelRequirement = 68, statInterpolation = {1, 1},  cost = { }, },
            [23] = {46, 30, 3, -60, 30, levelRequirement = 69, statInterpolation = {1, 1},  cost = { }, },
            [24] = {47, 31, 3, -60, 30, levelRequirement = 70, statInterpolation = {1, 1},  cost = { }, },
            [25] = {48, 32, 3, -60, 30, levelRequirement = 71, statInterpolation = {1, 1},  cost = { }, },
            [26] = {49, 32, 3, -60, 30, levelRequirement = 72, statInterpolation = {1, 1},  cost = { }, },
            [27] = {51, 33, 3, -60, 30, levelRequirement = 73, statInterpolation = {1, 1},  cost = { }, },
            [28] = {52, 34, 3, -60, 30, levelRequirement = 74, statInterpolation = {1, 1},  cost = { }, },
            [29] = {53, 35, 3, -60, 30, levelRequirement = 75, statInterpolation = {1, 1},  cost = { }, },
            [30] = {54, 35, 3, -60, 30, levelRequirement = 76, statInterpolation = {1, 1},  cost = { }, },
            [31] = {55, 36, 3, -60, 30, levelRequirement = 77, statInterpolation = {1, 1},  cost = { }, },
            [32] = {56, 37, 3, -60, 30, levelRequirement = 78, statInterpolation = {1, 1},  cost = { }, },
            [33] = {58, 39, 3, -60, 30, levelRequirement = 79, statInterpolation = {1, 1},  cost = { }, },
            [34] = {59, 38, 3, -60, 30, levelRequirement = 80, statInterpolation = {1, 1},  cost = { }, },
            [35] = {60, 39, 3, -60, 30, levelRequirement = 81, statInterpolation = {1, 1},  cost = { }, },
            [36] = {61, 40, 3, -60, 30, levelRequirement = 82, statInterpolation = {1, 1},  cost = { }, },
            [37] = {64, 41, 3, -60, 30, levelRequirement = 84, statInterpolation = {1, 1},  cost = { }, },
            [38] = {66, 43, 3, -60, 30, levelRequirement = 86, statInterpolation = {1, 1},  cost = { }, },
            [39] = {68, 44, 3, -60, 30, levelRequirement = 88, statInterpolation = {1, 1},  cost = { }, },
        },
    }
    
    Monsters grant 100% increased Experience
    15000% increased Rarity of Items Dropped
    IdMonsterMapBoss
    FamilyMonsterMapBoss
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • monster slain experience +% Min: 100 Max: 100 Global
  • monster dropped item rarity +% Min: 15000 Max: 15000 Global
  • monster base type attack cast speed +% and damage -% final [33]
    IdMonsterSpeedAndDamageFixupComplete
    FamilyMonsterSpeedAndDamageFixup
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • monster base type attack cast speed +% and damage -% final Min: 33 Max: 33 Global
  • Craft Tagscaster_damage damage attack caster speed
    20% increased Attack Speed
    IdMonsterImplicitFastAttack4
    FamilyIncreasedAttackSpeed
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • attack speed +% Min: 20 Max: 20 Global
  • Craft Tagsattack speed
    cannot be stunned for ms after stun finished [2000]
    cannot be stunned while stunned [1]
    IdStunRepeatImmunityMapBoss_
    FamilyNothing
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • cannot be stunned while stunned Min: 1 Max: 1 Global
  • cannot be stunned for ms after stun finished Min: 2000 Max: 2000 Global
  • Orra Greengate
    Humanoid
    Monsters grant 100% increased Experience
    15000% increased Rarity of Items Dropped
    monster base type attack cast speed +% and damage -% final [33]
    20% increased Attack Speed
    cannot be stunned for ms after stun finished [2000]
    cannot be stunned while stunned [1]
    SpectreN
    Tagscold_affinity, cursing_monster, has_bow, human, humanoid, light_armour, medium_movement, medium_small_height, not_int, not_str, physical_affinity, puncturing_weapon, ranged, red_blood, standalone_map_boss
    Life
    224%
    Evasion
    +100%
    Ailment Threshold
    224%
    Resistance
    40 40 40 25
    Damage
    144%
    Accuracy
    100%
    Critical Strike Chance
    +5%
    Critical Strike Multiplier
    +130%
    Attack Distance
    6 ~ 80
    Attack Time
    1.605 Second
    Damage Spread
    ±20%
    Experience
    200%
    Model Size
    100%
    Type
    ExileRanger1MapBoss
    Metadata
    ExileRanger1MapBossStandalone
    Level
    68
    Life
    312,136
    Armour
    28,790
    Evasion
    9,478
    Energy Shield
    0
    Damage
    613
    Spell Damage
    914
    Accuracy
    290
    Attack Time
    1.07535
    Experience
    112,805
    Ailment Threshold
    196,646
    Chill
    622
    Shock
    622
    Brittle
    3,518
    Scorch
    622
    Sap
    1,718
    Melee
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
    Default Attack
    Base Damage: 973–1459
    Critical Strike Chance: 5%
    Attack Time: 1.605 sec
    Strike your foes down with a powerful blow.
    skill can fire arrows [1]
    skill can fire wand projectiles [1]
    ExileVulnerability
    Spell, Area, Duration, Trappable, Totemable, Mineable, Multicastable, Triggerable, Cascadable, AppliesCurse, CanRapidFire, AreaSpell, Physical, InstantNoRepeatWhenHeld, InstantShiftAttackForLeftMouse, Hex
    Vulnerability
    Cast Time: 0.5 sec
    Cooldown Time: 8 sec
    Curse all targets in an area, causing them to take increased physical damage. Attacks against the cursed enemies have a chance to inflict bleeding.
    Base duration is 11.99 seconds
    Cursed enemies take 34% increased Physical Damage
    Attack Hits against Cursed Enemies have 25% chance to inflict Bleeding
    active skill area of effect radius +% final [38]
    ExileRainOfArrows
    Attack, RangedAttack, MirageArcherCanUse, Area, ProjectileSpeed, Totemable, Trappable, Mineable, Triggerable, Rain
    Rain of Arrows
    Base Damage: 973–1459
    Critical Strike Chance: 5%
    Attack Time: 1.605 sec
    Fires a large number of arrows into the air, to land at the target after a short delay.
    Gain 18% of Physical Damage as Extra Cold Damage
    Deals 30% less Damage
    19% increased Attack Speed
    18% increased Projectile Speed
    active skill area of effect radius +% final [21]
    animation effect variation [1]
    base is projectile [1]
    is area damage [1]
    spell maximum action distance +% [-35]
    ExileHatred
    Spell, Area, Buff, HasReservation, TotemCastsAlone, Totemable, Aura, Cold, Instant, AreaSpell, CanHaveBlessing, InstantNoRepeatWhenHeld, InstantShiftAttackForLeftMouse, Cooldown
    Hatred
    Cast Time: 1.2 sec
    Cooldown Time: 0.5 sec
    Casts an aura that grants extra cold damage based on physical damage to you and your allies.
    You and nearby allies gain 36% of Physical Damage as Extra Cold Damage
    active skill area of effect radius +% final [40]
    ExileFrenzy
    Attack, RangedAttack, MirageArcherCanUse, Projectile, ProjectilesFromUser, Totemable, Trappable, Mineable, MeleeSingleTarget, Multistrikeable, Melee, Triggerable
    Frenzy
    Base Damage: 973–1459
    Critical Strike Chance: 5%
    Attack Time: 1.605 sec
    Performs an attack that gives the character a frenzy charge if it hits. Frenzy charges increase your attack speed.
    Deals 28% less Damage
    Deals 10% more Physical Damage
    10% increased Physical Damage per Frenzy Charge
    Fires 2 additional Projectiles
    10% increased Attack Speed per Frenzy Charge
    skill can fire arrows [1]
    ExileVaalRainOfArrows
    Attack, RangedAttack, Area, ProjectileSpeed, Totemable, Trappable, Mineable, Duration, Vaal, Rain
    Vaal Rain of Arrows
    Base Damage: 973–1459
    Critical Strike Chance: 5%
    Attack Time: 1.605 sec
    Fires a large number of arrows into the air, to land at the target after a short delay. Enemies hit by the arrows are pinned in place, unable to move for a time.
    Gain 18% of Physical Damage as Extra Cold Damage
    Deals 30% less Damage
    Base duration is 4.4 seconds
    19% increased Attack Speed
    18% increased Projectile Speed
    active skill area of effect radius +% final [21]
    base is projectile [1]
    is area damage [1]
    rain of arrows pin [1]
    spell maximum action distance +% [-35]
    ExileBarrage
    Attack, RangedAttack, MirageArcherCanUse, Projectile, ProjectilesFromUser, Totemable, Trappable, Mineable
    Barrage
    Base Damage: 973–1459
    Critical Strike Chance: 5%
    Attack Time: 1.605 sec
    Cooldown Time: 4 sec
    After a short preparation time, you fire individual projectiles repeatedly with a Bow or Wand. These projectiles have a small randomised spread. This skill cannot be Triggered.
    Deals 60% less Damage
    Fires 3 additional Projectiles
    45% increased Physical Damage
    Fires Projectiles sequentially
    29% more Attack Speed
    monster reverse point blank damage -% at minimum range [30]
    skill can fire arrows [1]
    skill can fire wand projectiles [1]

    Object Type

    version 2
    extends "Metadata/Monsters/Exiles/ExileMapBoss"
    extends "Metadata/Monsters/StandaloneMapBoss"
    
    Stats
    {
    	set_base_mana_cost_-% = 0
    	set_mana_regeneration_rate_per_minute_% = 0
    }
    
    StateMachine
    {
    	define_shared_state = "add_effects;"
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Exiles/ExileMapBoss"
    extends "Metadata/Monsters/StandaloneMapBoss"
    
    StateMachine
    {
    	on_or_create_state_add_effects_1 = "AddEffectPackToVisualSlotAttachedObject( Metadata/Effects/Microtransactions/Weapon_effects/Weapon_effects/green/dryad/Bow/dryad_epk.epk, OffHand );"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/Exiles/ExileRanger1MapBossStandalone"] = {
        name = "Orra Greengate",
        life = 2.24,
        fireResist = 40,
        coldResist = 40,
        lightningResist = 40,
        chaosResist = 25,
        damage = 1.44,
        damageSpread = 0.2,
        attackTime = 1.605,
        attackRange = 80,
        accuracy = 1,
        weaponType1 = "Bow",
        skillList = {
            "ExileFrenzy",
            "Melee",
            "ExileVulnerability",
            "ExileRainOfArrows",
            "ExileVaalRainOfArrows",
            "ExileHatred",
            "ExileBarrage",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileFrenzy"] = {
        name = "Frenzy",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Performs an attack that gives the character a frenzy charge if it hits. Frenzy charges increase your attack speed.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Totemable] = true,
            [SkillType.Trappable] = true,
            [SkillType.Mineable] = true,
            [SkillType.MeleeSingleTarget] = true,
            [SkillType.Multistrikeable] = true,
            [SkillType.Melee] = true,
            [SkillType.Triggerable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "physical_damage_+%_per_frenzy_charge",
            "base_attack_speed_+%_per_frenzy_charge",
            "active_skill_physical_damage_+%_final",
            "skill_can_fire_arrows",
        },
        levels = {
            [1] = {10, 10, 10, levelRequirement = 30, statInterpolation = {},  cost = { }, },
            [2] = {0, 2, -20, 10, 10, 10, levelRequirement = 50, statInterpolation = {1, 1, 1},  cost = { }, },
            [3] = {0, 2, -28, 10, 10, 10, levelRequirement = 65, statInterpolation = {1, 1, 1},  cost = { }, },
            [4] = {0, 2, -36, 10, 10, 10, levelRequirement = 75, statInterpolation = {1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["Melee"] = {
        name = "Default Attack",
        hidden = true,
        color = "4",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Strike your foes down with a powerful blow.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.MeleeSingleTarget] = true,
            [SkillType.Multistrikeable] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileVulnerability"] = {
        name = "Vulnerability",
        hidden = true,
        color = "3",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Curse all targets in an area, causing them to take increased physical damage. Attacks against the cursed enemies have a chance to inflict bleeding.",
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Area] = true,
            [SkillType.Duration] = true,
            [SkillType.Trappable] = true,
            [SkillType.Totemable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Multicastable] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Cascadable] = true,
            [SkillType.AppliesCurse] = true,
            [SkillType.CanRapidFire] = true,
            [SkillType.AreaSpell] = true,
            [SkillType.Physical] = true,
            [SkillType.InstantNoRepeatWhenHeld] = true,
            [SkillType.InstantShiftAttackForLeftMouse] = true,
            [SkillType.Hex] = true,
        },
        statDescriptionScope = "curse_skill_stat_descriptions",
        castTime = 0.5,
        baseFlags = {
            area = true,
            spell = true,
            duration = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "base_skill_effect_duration",
            "physical_damage_taken_+%",
            "receive_bleeding_chance_%_when_hit_by_attack",
        },
        levels = {
            [1] = {9900, 25, 25, levelRequirement = 24, statInterpolation = {1, 1},  cost = { }, },
            [2] = {10010, 25, 2, 25, levelRequirement = 27, statInterpolation = {1, 1, 1},  cost = { }, },
            [3] = {10120, 26, 4, 25, levelRequirement = 30, statInterpolation = {1, 1, 1},  cost = { }, },
            [4] = {10230, 26, 6, 25, levelRequirement = 33, statInterpolation = {1, 1, 1},  cost = { }, },
            [5] = {10340, 27, 8, 25, levelRequirement = 35, statInterpolation = {1, 1, 1},  cost = { }, },
            [6] = {10450, 27, 10, 25, levelRequirement = 38, statInterpolation = {1, 1, 1},  cost = { }, },
            [7] = {10560, 28, 12, 25, levelRequirement = 40, statInterpolation = {1, 1, 1},  cost = { }, },
            [8] = {10670, 28, 14, 25, levelRequirement = 43, statInterpolation = {1, 1, 1},  cost = { }, },
            [9] = {10780, 29, 16, 25, levelRequirement = 46, statInterpolation = {1, 1, 1},  cost = { }, },
            [10] = {10890, 29, 18, 25, levelRequirement = 48, statInterpolation = {1, 1, 1},  cost = { }, },
            [11] = {11000, 30, 20, 25, levelRequirement = 50, statInterpolation = {1, 1, 1},  cost = { }, },
            [12] = {11110, 30, 22, 25, levelRequirement = 52, statInterpolation = {1, 1, 1},  cost = { }, },
            [13] = {11220, 31, 24, 25, levelRequirement = 54, statInterpolation = {1, 1, 1},  cost = { }, },
            [14] = {11330, 31, 26, 25, levelRequirement = 56, statInterpolation = {1, 1, 1},  cost = { }, },
            [15] = {11440, 32, 28, 25, levelRequirement = 58, statInterpolation = {1, 1, 1},  cost = { }, },
            [16] = {11550, 32, 30, 25, levelRequirement = 60, statInterpolation = {1, 1, 1},  cost = { }, },
            [17] = {11660, 33, 32, 25, levelRequirement = 62, statInterpolation = {1, 1, 1},  cost = { }, },
            [18] = {11770, 33, 34, 25, levelRequirement = 64, statInterpolation = {1, 1, 1},  cost = { }, },
            [19] = {11880, 34, 36, 25, levelRequirement = 66, statInterpolation = {1, 1, 1},  cost = { }, },
            [20] = {11990, 34, 38, 25, levelRequirement = 68, statInterpolation = {1, 1, 1},  cost = { }, },
            [21] = {12100, 35, 40, 25, levelRequirement = 70, statInterpolation = {1, 1, 1},  cost = { }, },
            [22] = {12210, 35, 42, 25, levelRequirement = 72, statInterpolation = {1, 1, 1},  cost = { }, },
            [23] = {12320, 36, 44, 25, levelRequirement = 74, statInterpolation = {1, 1, 1},  cost = { }, },
            [24] = {12430, 36, 46, 25, levelRequirement = 76, statInterpolation = {1, 1, 1},  cost = { }, },
            [25] = {12540, 37, 48, 25, levelRequirement = 78, statInterpolation = {1, 1, 1},  cost = { }, },
            [26] = {12650, 37, 50, 25, levelRequirement = 80, statInterpolation = {1, 1, 1},  cost = { }, },
            [27] = {12760, 38, 52, 25, levelRequirement = 82, statInterpolation = {1, 1, 1},  cost = { }, },
            [28] = {12870, 38, 54, 25, levelRequirement = 84, statInterpolation = {1, 1, 1},  cost = { }, },
            [29] = {12980, 39, 56, 25, levelRequirement = 86, statInterpolation = {1, 1, 1},  cost = { }, },
            [30] = {13090, 39, 58, 25, levelRequirement = 88, statInterpolation = {1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileRainOfArrows"] = {
        name = "Rain of Arrows",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Fires a large number of arrows into the air, to land at the target after a short delay.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Area] = true,
            [SkillType.ProjectileSpeed] = true,
            [SkillType.Totemable] = true,
            [SkillType.Trappable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Rain] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            area = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "active_skill_damage_+%_final",
            "animation_effect_variation",
            "spell_maximum_action_distance_+%",
            "is_area_damage",
            "base_is_projectile",
        },
        levels = {
            [1] = {-20, 1, -35, levelRequirement = 2, statInterpolation = {1},  cost = { }, },
            [2] = {-20, 1, 1, -35, levelRequirement = 4, statInterpolation = {1, 1},  cost = { }, },
            [3] = {-20, 2, 1, -35, levelRequirement = 6, statInterpolation = {1, 1},  cost = { }, },
            [4] = {-20, 3, 1, -35, levelRequirement = 9, statInterpolation = {1, 1},  cost = { }, },
            [5] = {-20, 10, 4, 1, -35, levelRequirement = 12, statInterpolation = {1, 1, 1},  cost = { }, },
            [6] = {-20, 10, 5, 1, -35, levelRequirement = 15, statInterpolation = {1, 1, 1},  cost = { }, },
            [7] = {-20, 11, 6, 1, -35, levelRequirement = 19, statInterpolation = {1, 1, 1},  cost = { }, },
            [8] = {-20, 11, 15, 7, 1, -35, levelRequirement = 23, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [9] = {-20, 12, 15, 8, 1, -35, levelRequirement = 28, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [10] = {-20, 12, 15, 9, 1, -35, levelRequirement = 33, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [11] = {-25, 13, 15, 10, 10, 1, -35, levelRequirement = 39, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [12] = {-25, 13, 15, 10, 11, 1, -35, levelRequirement = 43, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [13] = {-25, 14, 16, 11, 12, 1, -35, levelRequirement = 46, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [14] = {-25, 14, 16, 12, 13, 1, -35, levelRequirement = 49, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [15] = {-30, 15, 16, 13, 14, 1, -35, levelRequirement = 52, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [16] = {-30, 15, 16, 14, 15, 1, -35, levelRequirement = 55, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [17] = {-30, 16, 17, 15, 16, 1, -35, levelRequirement = 58, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [18] = {-30, 16, 17, 16, 17, 1, -35, levelRequirement = 61, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [19] = {-30, 17, 17, 17, 18, 1, -35, levelRequirement = 64, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [20] = {-30, 17, 17, 18, 19, 1, -35, levelRequirement = 66, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [21] = {-30, 18, 18, 19, 20, 1, -35, levelRequirement = 67, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [22] = {-30, 18, 18, 19, 21, 1, -35, levelRequirement = 68, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [23] = {-30, 19, 18, 20, 22, 1, -35, levelRequirement = 69, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [24] = {-30, 19, 18, 20, 23, 1, -35, levelRequirement = 70, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [25] = {-30, 20, 18, 21, 24, 1, -35, levelRequirement = 71, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [26] = {-30, 20, 18, 21, 25, 1, -35, levelRequirement = 72, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [27] = {-30, 21, 18, 22, 26, 1, -35, levelRequirement = 73, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [28] = {-30, 21, 18, 22, 27, 1, -35, levelRequirement = 74, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [29] = {-30, 22, 19, 23, 28, 1, -35, levelRequirement = 75, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [30] = {-30, 22, 19, 23, 29, 1, -35, levelRequirement = 76, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [31] = {-30, 23, 19, 24, 30, 1, -35, levelRequirement = 77, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [32] = {-30, 23, 19, 24, 31, 1, -35, levelRequirement = 78, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [33] = {-30, 24, 19, 25, 32, 1, -35, levelRequirement = 79, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [34] = {-30, 24, 19, 25, 33, 1, -35, levelRequirement = 80, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [35] = {-30, 25, 19, 26, 34, 1, -35, levelRequirement = 81, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [36] = {-30, 25, 19, 26, 35, 1, -35, levelRequirement = 82, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileVaalRainOfArrows"] = {
        name = "Vaal Rain of Arrows",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Fires a large number of arrows into the air, to land at the target after a short delay. Enemies hit by the arrows are pinned in place, unable to move for a time.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.Area] = true,
            [SkillType.ProjectileSpeed] = true,
            [SkillType.Totemable] = true,
            [SkillType.Trappable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Duration] = true,
            [SkillType.Vaal] = true,
            [SkillType.Rain] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            area = true,
            duration = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "active_skill_damage_+%_final",
            "base_skill_effect_duration",
            "spell_maximum_action_distance_+%",
            "base_is_projectile",
            "is_area_damage",
            "rain_of_arrows_pin",
        },
        levels = {
            [1] = {-20, 3400, -35, levelRequirement = 2, statInterpolation = {1, 1},  cost = { }, },
            [2] = {-20, 3450, 1, -35, levelRequirement = 4, statInterpolation = {1, 1, 1},  cost = { }, },
            [3] = {-20, 3500, 2, -35, levelRequirement = 6, statInterpolation = {1, 1, 1},  cost = { }, },
            [4] = {-20, 3550, 3, -35, levelRequirement = 9, statInterpolation = {1, 1, 1},  cost = { }, },
            [5] = {-20, 3600, 10, 4, -35, levelRequirement = 12, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [6] = {-20, 3650, 10, 5, -35, levelRequirement = 15, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [7] = {-20, 3700, 11, 6, -35, levelRequirement = 19, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [8] = {-20, 3750, 11, 15, 7, -35, levelRequirement = 23, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [9] = {-20, 3800, 12, 15, 8, -35, levelRequirement = 28, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [10] = {-20, 3850, 12, 15, 9, -35, levelRequirement = 33, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [11] = {-25, 3900, 13, 15, 10, 10, -35, levelRequirement = 39, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [12] = {-25, 3950, 13, 15, 10, 11, -35, levelRequirement = 43, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [13] = {-25, 4000, 14, 16, 11, 12, -35, levelRequirement = 46, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [14] = {-25, 4050, 14, 16, 12, 13, -35, levelRequirement = 49, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [15] = {-30, 4100, 15, 16, 13, 14, -35, levelRequirement = 52, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [16] = {-30, 4150, 15, 16, 14, 15, -35, levelRequirement = 55, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [17] = {-30, 4200, 16, 17, 15, 16, -35, levelRequirement = 58, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [18] = {-30, 4250, 16, 17, 16, 17, -35, levelRequirement = 61, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [19] = {-30, 4300, 17, 17, 17, 18, -35, levelRequirement = 64, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [20] = {-30, 4350, 17, 17, 18, 19, -35, levelRequirement = 66, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [21] = {-30, 4375, 18, 18, 19, 20, -35, levelRequirement = 67, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [22] = {-30, 4400, 18, 18, 19, 21, -35, levelRequirement = 68, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [23] = {-30, 4425, 19, 18, 20, 22, -35, levelRequirement = 69, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [24] = {-30, 4450, 19, 18, 20, 23, -35, levelRequirement = 70, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [25] = {-30, 4475, 20, 18, 21, 24, -35, levelRequirement = 71, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [26] = {-30, 4500, 20, 18, 21, 25, -35, levelRequirement = 72, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [27] = {-30, 4525, 21, 18, 22, 26, -35, levelRequirement = 73, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [28] = {-30, 4550, 21, 18, 22, 27, -35, levelRequirement = 74, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [29] = {-30, 4575, 22, 19, 23, 28, -35, levelRequirement = 75, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [30] = {-30, 4600, 23, 19, 23, 29, -35, levelRequirement = 76, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [31] = {-30, 4625, 23, 19, 24, 30, -35, levelRequirement = 77, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [32] = {-30, 4650, 24, 19, 24, 31, -35, levelRequirement = 78, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [33] = {-30, 4675, 24, 19, 25, 32, -35, levelRequirement = 79, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [34] = {-30, 4700, 25, 19, 25, 33, -35, levelRequirement = 80, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [35] = {-30, 4725, 25, 19, 26, 34, -35, levelRequirement = 81, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [36] = {-30, 4750, 26, 19, 26, 35, -35, levelRequirement = 82, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileHatred"] = {
        name = "Hatred",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Casts an aura that grants extra cold damage based on physical damage to you and your allies.",
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Area] = true,
            [SkillType.Buff] = true,
            [SkillType.HasReservation] = true,
            [SkillType.TotemCastsAlone] = true,
            [SkillType.Totemable] = true,
            [SkillType.Aura] = true,
            [SkillType.Cold] = true,
            [SkillType.Instant] = true,
            [SkillType.AreaSpell] = true,
            [SkillType.CanHaveBlessing] = true,
            [SkillType.InstantNoRepeatWhenHeld] = true,
            [SkillType.InstantShiftAttackForLeftMouse] = true,
            [SkillType.Cooldown] = true,
        },
        statDescriptionScope = "aura_skill_stat_descriptions",
        castTime = 1.2,
        baseFlags = {
            area = true,
            spell = true,
            aura = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "physical_damage_%_to_add_as_cold",
        },
        levels = {
            [1] = {26, levelRequirement = 10, statInterpolation = {1},  cost = { }, },
            [2] = {26, 3, levelRequirement = 13, statInterpolation = {1, 1},  cost = { }, },
            [3] = {27, 6, levelRequirement = 16, statInterpolation = {1, 1},  cost = { }, },
            [4] = {27, 9, levelRequirement = 19, statInterpolation = {1, 1},  cost = { }, },
            [5] = {28, 12, levelRequirement = 22, statInterpolation = {1, 1},  cost = { }, },
            [6] = {28, 15, levelRequirement = 25, statInterpolation = {1, 1},  cost = { }, },
            [7] = {29, 18, levelRequirement = 28, statInterpolation = {1, 1},  cost = { }, },
            [8] = {29, 21, levelRequirement = 32, statInterpolation = {1, 1},  cost = { }, },
            [9] = {30, 23, levelRequirement = 36, statInterpolation = {1, 1},  cost = { }, },
            [10] = {30, 25, levelRequirement = 40, statInterpolation = {1, 1},  cost = { }, },
            [11] = {31, 27, levelRequirement = 44, statInterpolation = {1, 1},  cost = { }, },
            [12] = {31, 29, levelRequirement = 47, statInterpolation = {1, 1},  cost = { }, },
            [13] = {32, 31, levelRequirement = 50, statInterpolation = {1, 1},  cost = { }, },
            [14] = {32, 33, levelRequirement = 53, statInterpolation = {1, 1},  cost = { }, },
            [15] = {33, 35, levelRequirement = 56, statInterpolation = {1, 1},  cost = { }, },
            [16] = {34, 36, levelRequirement = 59, statInterpolation = {1, 1},  cost = { }, },
            [17] = {34, 37, levelRequirement = 62, statInterpolation = {1, 1},  cost = { }, },
            [18] = {35, 38, levelRequirement = 64, statInterpolation = {1, 1},  cost = { }, },
            [19] = {35, 39, levelRequirement = 66, statInterpolation = {1, 1},  cost = { }, },
            [20] = {36, 40, levelRequirement = 68, statInterpolation = {1, 1},  cost = { }, },
            [21] = {36, 41, levelRequirement = 70, statInterpolation = {1, 1},  cost = { }, },
            [22] = {37, 42, levelRequirement = 72, statInterpolation = {1, 1},  cost = { }, },
            [23] = {37, 43, levelRequirement = 74, statInterpolation = {1, 1},  cost = { }, },
            [24] = {38, 44, levelRequirement = 76, statInterpolation = {1, 1},  cost = { }, },
            [25] = {38, 45, levelRequirement = 78, statInterpolation = {1, 1},  cost = { }, },
            [26] = {39, 46, levelRequirement = 80, statInterpolation = {1, 1},  cost = { }, },
            [27] = {39, 47, levelRequirement = 82, statInterpolation = {1, 1},  cost = { }, },
            [28] = {40, 48, levelRequirement = 84, statInterpolation = {1, 1},  cost = { }, },
            [29] = {40, 49, levelRequirement = 86, statInterpolation = {1, 1},  cost = { }, },
            [30] = {41, 50, levelRequirement = 88, statInterpolation = {1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileBarrage"] = {
        name = "Barrage",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "After a short preparation time, you fire individual projectiles repeatedly with a Bow or Wand. These projectiles have a small randomised spread. This skill cannot be Triggered.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Totemable] = true,
            [SkillType.Trappable] = true,
            [SkillType.Mineable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "physical_damage_+%",
            "active_skill_attack_speed_+%_final",
            "number_of_additional_projectiles",
            "active_skill_damage_+%_final",
            "monster_reverse_point_blank_damage_-%_at_minimum_range",
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "projectiles_barrage",
        },
        levels = {
            [1] = {0, 0, 3, -60, 30, levelRequirement = 3, statInterpolation = {1, 1},  cost = { }, },
            [2] = {0, 1, 3, -60, 30, levelRequirement = 10, statInterpolation = {1, 1},  cost = { }, },
            [3] = {2, 2, 3, -60, 30, levelRequirement = 13, statInterpolation = {1, 1},  cost = { }, },
            [4] = {5, 4, 3, -60, 30, levelRequirement = 16, statInterpolation = {1, 1},  cost = { }, },
            [5] = {7, 5, 3, -60, 30, levelRequirement = 19, statInterpolation = {1, 1},  cost = { }, },
            [6] = {9, 7, 3, -60, 30, levelRequirement = 22, statInterpolation = {1, 1},  cost = { }, },
            [7] = {12, 8, 3, -60, 30, levelRequirement = 25, statInterpolation = {1, 1},  cost = { }, },
            [8] = {14, 10, 3, -60, 30, levelRequirement = 28, statInterpolation = {1, 1},  cost = { }, },
            [9] = {16, 11, 3, -60, 30, levelRequirement = 32, statInterpolation = {1, 1},  cost = { }, },
            [10] = {19, 13, 3, -60, 30, levelRequirement = 36, statInterpolation = {1, 1},  cost = { }, },
            [11] = {21, 14, 3, -60, 30, levelRequirement = 40, statInterpolation = {1, 1},  cost = { }, },
            [12] = {24, 16, 3, -60, 30, levelRequirement = 44, statInterpolation = {1, 1},  cost = { }, },
            [13] = {26, 17, 3, -60, 30, levelRequirement = 47, statInterpolation = {1, 1},  cost = { }, },
            [14] = {28, 19, 3, -60, 30, levelRequirement = 50, statInterpolation = {1, 1},  cost = { }, },
            [15] = {31, 20, 3, -60, 30, levelRequirement = 53, statInterpolation = {1, 1},  cost = { }, },
            [16] = {33, 22, 3, -60, 30, levelRequirement = 56, statInterpolation = {1, 1},  cost = { }, },
            [17] = {35, 23, 3, -60, 30, levelRequirement = 59, statInterpolation = {1, 1},  cost = { }, },
            [18] = {38, 25, 3, -60, 30, levelRequirement = 62, statInterpolation = {1, 1},  cost = { }, },
            [19] = {40, 26, 3, -60, 30, levelRequirement = 64, statInterpolation = {1, 1},  cost = { }, },
            [20] = {42, 28, 3, -60, 30, levelRequirement = 66, statInterpolation = {1, 1},  cost = { }, },
            [21] = {44, 29, 3, -60, 30, levelRequirement = 67, statInterpolation = {1, 1},  cost = { }, },
            [22] = {45, 29, 3, -60, 30, levelRequirement = 68, statInterpolation = {1, 1},  cost = { }, },
            [23] = {46, 30, 3, -60, 30, levelRequirement = 69, statInterpolation = {1, 1},  cost = { }, },
            [24] = {47, 31, 3, -60, 30, levelRequirement = 70, statInterpolation = {1, 1},  cost = { }, },
            [25] = {48, 32, 3, -60, 30, levelRequirement = 71, statInterpolation = {1, 1},  cost = { }, },
            [26] = {49, 32, 3, -60, 30, levelRequirement = 72, statInterpolation = {1, 1},  cost = { }, },
            [27] = {51, 33, 3, -60, 30, levelRequirement = 73, statInterpolation = {1, 1},  cost = { }, },
            [28] = {52, 34, 3, -60, 30, levelRequirement = 74, statInterpolation = {1, 1},  cost = { }, },
            [29] = {53, 35, 3, -60, 30, levelRequirement = 75, statInterpolation = {1, 1},  cost = { }, },
            [30] = {54, 35, 3, -60, 30, levelRequirement = 76, statInterpolation = {1, 1},  cost = { }, },
            [31] = {55, 36, 3, -60, 30, levelRequirement = 77, statInterpolation = {1, 1},  cost = { }, },
            [32] = {56, 37, 3, -60, 30, levelRequirement = 78, statInterpolation = {1, 1},  cost = { }, },
            [33] = {58, 39, 3, -60, 30, levelRequirement = 79, statInterpolation = {1, 1},  cost = { }, },
            [34] = {59, 38, 3, -60, 30, levelRequirement = 80, statInterpolation = {1, 1},  cost = { }, },
            [35] = {60, 39, 3, -60, 30, levelRequirement = 81, statInterpolation = {1, 1},  cost = { }, },
            [36] = {61, 40, 3, -60, 30, levelRequirement = 82, statInterpolation = {1, 1},  cost = { }, },
            [37] = {64, 41, 3, -60, 30, levelRequirement = 84, statInterpolation = {1, 1},  cost = { }, },
            [38] = {66, 43, 3, -60, 30, levelRequirement = 86, statInterpolation = {1, 1},  cost = { }, },
            [39] = {68, 44, 3, -60, 30, levelRequirement = 88, statInterpolation = {1, 1},  cost = { }, },
        },
    }
    
    Monsters grant 100% increased Experience
    15000% increased Rarity of Items Dropped
    IdMonsterMapBoss
    FamilyMonsterMapBoss
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • monster slain experience +% Min: 100 Max: 100 Global
  • monster dropped item rarity +% Min: 15000 Max: 15000 Global
  • monster base type attack cast speed +% and damage -% final [33]
    IdMonsterSpeedAndDamageFixupComplete
    FamilyMonsterSpeedAndDamageFixup
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • monster base type attack cast speed +% and damage -% final Min: 33 Max: 33 Global
  • Craft Tagscaster_damage damage attack caster speed
    20% increased Attack Speed
    IdMonsterImplicitFastAttack4
    FamilyIncreasedAttackSpeed
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • attack speed +% Min: 20 Max: 20 Global
  • Craft Tagsattack speed
    cannot be stunned for ms after stun finished [2000]
    cannot be stunned while stunned [1]
    IdStunRepeatImmunityMapBoss_
    FamilyNothing
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • cannot be stunned while stunned Min: 1 Max: 1 Global
  • cannot be stunned for ms after stun finished Min: 2000 Max: 2000 Global
  • Orra Greengate
    Humanoid
    Monsters grant 100% increased Experience
    15000% increased Rarity of Items Dropped
    monster base type attack cast speed +% and damage -% final [33]
    20% increased Attack Speed
    cannot be stunned for ms after stun finished [2000]
    cannot be stunned while stunned [1]
    SpectreN
    Tagselder_map_boss, has_bow, human, humanoid, light_armour, medium_movement, medium_small_height, non_attacking, not_int, not_str, puncturing_weapon, red_blood
    Life
    224%
    Evasion
    +100%
    Ailment Threshold
    224%
    Resistance
    40 40 40 25
    Damage
    144%
    Accuracy
    100%
    Critical Strike Chance
    +5%
    Critical Strike Multiplier
    +130%
    Attack Distance
    6 ~ 80
    Attack Time
    1.605 Second
    Damage Spread
    ±20%
    Experience
    200%
    Model Size
    100%
    Type
    ExileRanger1MapBoss
    Metadata
    ExileRanger1MapBossElder

    Object Type

    version 2
    extends "Metadata/Monsters/Monster"
    
    Life
    {
    	corpse_usable = false
    }
    
    Stats
    {
    	base_cannot_be_damaged = 1
    	base_cannot_be_stunned = 1
    	cannot_be_knocked_back = 1
    	is_hidden_monster = 1
    	immune_to_curses = 1
    	immune_to_auras_from_other_entities = 1
    	set_immune_vaal_lighting_warp = 1
    }
    
    Transitionable
    {
    	
    }
    
    Preload
    {
    	preload_object = "Metadata/Monsters/ElderBosses/ElderAbsorb"
    	preload_object = "Metadata/MiscellaneousObjects/ElderPortal"
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    
    Transitionable
    {
    	on_transition = "AddEffectPack( Metadata/Effects/Spells/monsters_effects/AtlasofWorldsBosses/Elder/entrance/affecting_target.epk );"
    	create_transitioned = "AddEffectPack( Metadata/Effects/Spells/monsters_effects/AtlasofWorldsBosses/Elder/entrance/affecting_target_instant.epk );"
    }
    
    Animated
    {
    	preload_animated_object = "Metadata/Effects/Spells/monsters_effects/AtlasofWorldsBosses/Elder/entrance/entrance.ao"
    	preload_animated_object = "Metadata/Effects/Spells/monsters_effects/AtlasofWorldsBosses/Elder/absorb/absorb.ao"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/Exiles/ExileRanger1MapBossElder"] = {
        name = "Orra Greengate",
        life = 2.24,
        fireResist = 40,
        coldResist = 40,
        lightningResist = 40,
        chaosResist = 25,
        damage = 1.44,
        damageSpread = 0.2,
        attackTime = 1.605,
        attackRange = 80,
        accuracy = 1,
        weaponType1 = "Bow",
        skillList = {
        },
        modList = {
        },
    }
    
    Monsters grant 100% increased Experience
    15000% increased Rarity of Items Dropped
    IdMonsterMapBoss
    FamilyMonsterMapBoss
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • monster slain experience +% Min: 100 Max: 100 Global
  • monster dropped item rarity +% Min: 15000 Max: 15000 Global
  • monster base type attack cast speed +% and damage -% final [33]
    IdMonsterSpeedAndDamageFixupComplete
    FamilyMonsterSpeedAndDamageFixup
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • monster base type attack cast speed +% and damage -% final Min: 33 Max: 33 Global
  • Craft Tagscaster_damage damage attack caster speed
    20% increased Attack Speed
    IdMonsterImplicitFastAttack4
    FamilyIncreasedAttackSpeed
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • attack speed +% Min: 20 Max: 20 Global
  • Craft Tagsattack speed
    cannot be stunned for ms after stun finished [2000]
    cannot be stunned while stunned [1]
    IdStunRepeatImmunityMapBoss_
    FamilyNothing
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • cannot be stunned while stunned Min: 1 Max: 1 Global
  • cannot be stunned for ms after stun finished Min: 2000 Max: 2000 Global
  • Orra Greengate
    Humanoid
    monster base type attack cast speed +% and damage -% final [33]
    20% increased Attack Speed
    SpectreN
    Tagscold_affinity, cursing_monster, delve_monster, exile, female_rogue_exile, has_bow, human, humanoid, light_armour, medium_height, medium_movement, no_pantheon_mod, not_int, not_str, physical_affinity, puncturing_weapon, ranged, red_blood
    Life
    112%
    Evasion
    +100%
    Ailment Threshold
    112%
    Resistance
    30 30 30 20
    Damage
    143%
    Accuracy
    100%
    Critical Strike Chance
    +5%
    Critical Strike Multiplier
    +130%
    Attack Distance
    6 ~ 80
    Attack Time
    1.605 Second
    Damage Spread
    ±20%
    Experience
    220%
    Model Size
    100%
    Type
    ExileRangerDelve1
    Metadata
    DelveExileRanger1
    Level
    68
    Life
    7,205
    Armour
    28,790
    Evasion
    9,478
    Energy Shield
    0
    Damage
    534
    Spell Damage
    534
    Accuracy
    290
    Attack Time
    1.605
    Experience
    22,561
    Ailment Threshold
    7,205
    Chill
    23
    Shock
    23
    Brittle
    129
    Scorch
    23
    Sap
    63
    Melee
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
    Default Attack
    Base Damage: 427–641
    Critical Strike Chance: 5%
    Attack Time: 1.605 sec
    Strike your foes down with a powerful blow.
    skill can fire arrows [1]
    skill can fire wand projectiles [1]
    ExileVulnerability
    Spell, Area, Duration, Trappable, Totemable, Mineable, Multicastable, Triggerable, Cascadable, AppliesCurse, CanRapidFire, AreaSpell, Physical, InstantNoRepeatWhenHeld, InstantShiftAttackForLeftMouse, Hex
    Vulnerability
    Cast Time: 0.5 sec
    Cooldown Time: 8 sec
    Curse all targets in an area, causing them to take increased physical damage. Attacks against the cursed enemies have a chance to inflict bleeding.
    Base duration is 11.99 seconds
    Cursed enemies take 34% increased Physical Damage
    Attack Hits against Cursed Enemies have 25% chance to inflict Bleeding
    active skill area of effect radius +% final [38]
    ExileRainOfArrows
    Attack, RangedAttack, MirageArcherCanUse, Area, ProjectileSpeed, Totemable, Trappable, Mineable, Triggerable, Rain
    Rain of Arrows
    Base Damage: 427–641
    Critical Strike Chance: 5%
    Attack Time: 1.605 sec
    Fires a large number of arrows into the air, to land at the target after a short delay.
    Gain 18% of Physical Damage as Extra Cold Damage
    Deals 30% less Damage
    19% increased Attack Speed
    18% increased Projectile Speed
    active skill area of effect radius +% final [21]
    animation effect variation [1]
    base is projectile [1]
    is area damage [1]
    spell maximum action distance +% [-35]
    ExileHatred
    Spell, Area, Buff, HasReservation, TotemCastsAlone, Totemable, Aura, Cold, Instant, AreaSpell, CanHaveBlessing, InstantNoRepeatWhenHeld, InstantShiftAttackForLeftMouse, Cooldown
    Hatred
    Cast Time: 1.2 sec
    Cooldown Time: 0.5 sec
    Casts an aura that grants extra cold damage based on physical damage to you and your allies.
    You and nearby allies gain 36% of Physical Damage as Extra Cold Damage
    active skill area of effect radius +% final [40]
    ExileFrenzy
    Attack, RangedAttack, MirageArcherCanUse, Projectile, ProjectilesFromUser, Totemable, Trappable, Mineable, MeleeSingleTarget, Multistrikeable, Melee, Triggerable
    Frenzy
    Base Damage: 427–641
    Critical Strike Chance: 5%
    Attack Time: 1.605 sec
    Performs an attack that gives the character a frenzy charge if it hits. Frenzy charges increase your attack speed.
    Deals 28% less Damage
    Deals 10% more Physical Damage
    10% increased Physical Damage per Frenzy Charge
    Fires 2 additional Projectiles
    10% increased Attack Speed per Frenzy Charge
    skill can fire arrows [1]
    ExileVaalRainOfArrows
    Attack, RangedAttack, Area, ProjectileSpeed, Totemable, Trappable, Mineable, Duration, Vaal, Rain
    Vaal Rain of Arrows
    Base Damage: 427–641
    Critical Strike Chance: 5%
    Attack Time: 1.605 sec
    Fires a large number of arrows into the air, to land at the target after a short delay. Enemies hit by the arrows are pinned in place, unable to move for a time.
    Gain 18% of Physical Damage as Extra Cold Damage
    Deals 30% less Damage
    Base duration is 4.4 seconds
    19% increased Attack Speed
    18% increased Projectile Speed
    active skill area of effect radius +% final [21]
    base is projectile [1]
    is area damage [1]
    rain of arrows pin [1]
    spell maximum action distance +% [-35]
    ExileBarrage
    Attack, RangedAttack, MirageArcherCanUse, Projectile, ProjectilesFromUser, Totemable, Trappable, Mineable
    Barrage
    Base Damage: 427–641
    Critical Strike Chance: 5%
    Attack Time: 1.605 sec
    Cooldown Time: 4 sec
    After a short preparation time, you fire individual projectiles repeatedly with a Bow or Wand. These projectiles have a small randomised spread. This skill cannot be Triggered.
    Deals 60% less Damage
    Fires 3 additional Projectiles
    45% increased Physical Damage
    Fires Projectiles sequentially
    29% more Attack Speed
    monster reverse point blank damage -% at minimum range [30]
    skill can fire arrows [1]
    skill can fire wand projectiles [1]
    WalkEmergeExile
    walk emerge distance [200]

    Object Type

    version 2
    extends "Metadata/Monsters/Exiles/Exile"
    
    Stats
    {
    	set_base_mana_cost_-% = 0
    	set_mana_regeneration_rate_per_minute_% = 0
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Exiles/Exile"
    
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/Exiles/DelveExileRanger1"] = {
        name = "Orra Greengate",
        life = 1.12,
        fireResist = 30,
        coldResist = 30,
        lightningResist = 30,
        chaosResist = 20,
        damage = 1.43,
        damageSpread = 0.2,
        attackTime = 1.605,
        attackRange = 80,
        accuracy = 1,
        weaponType1 = "Bow",
        skillList = {
            "ExileFrenzy",
            "Melee",
            "ExileVulnerability",
            "ExileRainOfArrows",
            "ExileVaalRainOfArrows",
            "ExileHatred",
            "ExileBarrage",
            "WalkEmergeExile",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileFrenzy"] = {
        name = "Frenzy",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Performs an attack that gives the character a frenzy charge if it hits. Frenzy charges increase your attack speed.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Totemable] = true,
            [SkillType.Trappable] = true,
            [SkillType.Mineable] = true,
            [SkillType.MeleeSingleTarget] = true,
            [SkillType.Multistrikeable] = true,
            [SkillType.Melee] = true,
            [SkillType.Triggerable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "physical_damage_+%_per_frenzy_charge",
            "base_attack_speed_+%_per_frenzy_charge",
            "active_skill_physical_damage_+%_final",
            "skill_can_fire_arrows",
        },
        levels = {
            [1] = {10, 10, 10, levelRequirement = 30, statInterpolation = {},  cost = { }, },
            [2] = {0, 2, -20, 10, 10, 10, levelRequirement = 50, statInterpolation = {1, 1, 1},  cost = { }, },
            [3] = {0, 2, -28, 10, 10, 10, levelRequirement = 65, statInterpolation = {1, 1, 1},  cost = { }, },
            [4] = {0, 2, -36, 10, 10, 10, levelRequirement = 75, statInterpolation = {1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["Melee"] = {
        name = "Default Attack",
        hidden = true,
        color = "4",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Strike your foes down with a powerful blow.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.MeleeSingleTarget] = true,
            [SkillType.Multistrikeable] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileVulnerability"] = {
        name = "Vulnerability",
        hidden = true,
        color = "3",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Curse all targets in an area, causing them to take increased physical damage. Attacks against the cursed enemies have a chance to inflict bleeding.",
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Area] = true,
            [SkillType.Duration] = true,
            [SkillType.Trappable] = true,
            [SkillType.Totemable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Multicastable] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Cascadable] = true,
            [SkillType.AppliesCurse] = true,
            [SkillType.CanRapidFire] = true,
            [SkillType.AreaSpell] = true,
            [SkillType.Physical] = true,
            [SkillType.InstantNoRepeatWhenHeld] = true,
            [SkillType.InstantShiftAttackForLeftMouse] = true,
            [SkillType.Hex] = true,
        },
        statDescriptionScope = "curse_skill_stat_descriptions",
        castTime = 0.5,
        baseFlags = {
            area = true,
            spell = true,
            duration = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "base_skill_effect_duration",
            "physical_damage_taken_+%",
            "receive_bleeding_chance_%_when_hit_by_attack",
        },
        levels = {
            [1] = {9900, 25, 25, levelRequirement = 24, statInterpolation = {1, 1},  cost = { }, },
            [2] = {10010, 25, 2, 25, levelRequirement = 27, statInterpolation = {1, 1, 1},  cost = { }, },
            [3] = {10120, 26, 4, 25, levelRequirement = 30, statInterpolation = {1, 1, 1},  cost = { }, },
            [4] = {10230, 26, 6, 25, levelRequirement = 33, statInterpolation = {1, 1, 1},  cost = { }, },
            [5] = {10340, 27, 8, 25, levelRequirement = 35, statInterpolation = {1, 1, 1},  cost = { }, },
            [6] = {10450, 27, 10, 25, levelRequirement = 38, statInterpolation = {1, 1, 1},  cost = { }, },
            [7] = {10560, 28, 12, 25, levelRequirement = 40, statInterpolation = {1, 1, 1},  cost = { }, },
            [8] = {10670, 28, 14, 25, levelRequirement = 43, statInterpolation = {1, 1, 1},  cost = { }, },
            [9] = {10780, 29, 16, 25, levelRequirement = 46, statInterpolation = {1, 1, 1},  cost = { }, },
            [10] = {10890, 29, 18, 25, levelRequirement = 48, statInterpolation = {1, 1, 1},  cost = { }, },
            [11] = {11000, 30, 20, 25, levelRequirement = 50, statInterpolation = {1, 1, 1},  cost = { }, },
            [12] = {11110, 30, 22, 25, levelRequirement = 52, statInterpolation = {1, 1, 1},  cost = { }, },
            [13] = {11220, 31, 24, 25, levelRequirement = 54, statInterpolation = {1, 1, 1},  cost = { }, },
            [14] = {11330, 31, 26, 25, levelRequirement = 56, statInterpolation = {1, 1, 1},  cost = { }, },
            [15] = {11440, 32, 28, 25, levelRequirement = 58, statInterpolation = {1, 1, 1},  cost = { }, },
            [16] = {11550, 32, 30, 25, levelRequirement = 60, statInterpolation = {1, 1, 1},  cost = { }, },
            [17] = {11660, 33, 32, 25, levelRequirement = 62, statInterpolation = {1, 1, 1},  cost = { }, },
            [18] = {11770, 33, 34, 25, levelRequirement = 64, statInterpolation = {1, 1, 1},  cost = { }, },
            [19] = {11880, 34, 36, 25, levelRequirement = 66, statInterpolation = {1, 1, 1},  cost = { }, },
            [20] = {11990, 34, 38, 25, levelRequirement = 68, statInterpolation = {1, 1, 1},  cost = { }, },
            [21] = {12100, 35, 40, 25, levelRequirement = 70, statInterpolation = {1, 1, 1},  cost = { }, },
            [22] = {12210, 35, 42, 25, levelRequirement = 72, statInterpolation = {1, 1, 1},  cost = { }, },
            [23] = {12320, 36, 44, 25, levelRequirement = 74, statInterpolation = {1, 1, 1},  cost = { }, },
            [24] = {12430, 36, 46, 25, levelRequirement = 76, statInterpolation = {1, 1, 1},  cost = { }, },
            [25] = {12540, 37, 48, 25, levelRequirement = 78, statInterpolation = {1, 1, 1},  cost = { }, },
            [26] = {12650, 37, 50, 25, levelRequirement = 80, statInterpolation = {1, 1, 1},  cost = { }, },
            [27] = {12760, 38, 52, 25, levelRequirement = 82, statInterpolation = {1, 1, 1},  cost = { }, },
            [28] = {12870, 38, 54, 25, levelRequirement = 84, statInterpolation = {1, 1, 1},  cost = { }, },
            [29] = {12980, 39, 56, 25, levelRequirement = 86, statInterpolation = {1, 1, 1},  cost = { }, },
            [30] = {13090, 39, 58, 25, levelRequirement = 88, statInterpolation = {1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileRainOfArrows"] = {
        name = "Rain of Arrows",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Fires a large number of arrows into the air, to land at the target after a short delay.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Area] = true,
            [SkillType.ProjectileSpeed] = true,
            [SkillType.Totemable] = true,
            [SkillType.Trappable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Rain] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            area = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "active_skill_damage_+%_final",
            "animation_effect_variation",
            "spell_maximum_action_distance_+%",
            "is_area_damage",
            "base_is_projectile",
        },
        levels = {
            [1] = {-20, 1, -35, levelRequirement = 2, statInterpolation = {1},  cost = { }, },
            [2] = {-20, 1, 1, -35, levelRequirement = 4, statInterpolation = {1, 1},  cost = { }, },
            [3] = {-20, 2, 1, -35, levelRequirement = 6, statInterpolation = {1, 1},  cost = { }, },
            [4] = {-20, 3, 1, -35, levelRequirement = 9, statInterpolation = {1, 1},  cost = { }, },
            [5] = {-20, 10, 4, 1, -35, levelRequirement = 12, statInterpolation = {1, 1, 1},  cost = { }, },
            [6] = {-20, 10, 5, 1, -35, levelRequirement = 15, statInterpolation = {1, 1, 1},  cost = { }, },
            [7] = {-20, 11, 6, 1, -35, levelRequirement = 19, statInterpolation = {1, 1, 1},  cost = { }, },
            [8] = {-20, 11, 15, 7, 1, -35, levelRequirement = 23, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [9] = {-20, 12, 15, 8, 1, -35, levelRequirement = 28, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [10] = {-20, 12, 15, 9, 1, -35, levelRequirement = 33, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [11] = {-25, 13, 15, 10, 10, 1, -35, levelRequirement = 39, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [12] = {-25, 13, 15, 10, 11, 1, -35, levelRequirement = 43, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [13] = {-25, 14, 16, 11, 12, 1, -35, levelRequirement = 46, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [14] = {-25, 14, 16, 12, 13, 1, -35, levelRequirement = 49, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [15] = {-30, 15, 16, 13, 14, 1, -35, levelRequirement = 52, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [16] = {-30, 15, 16, 14, 15, 1, -35, levelRequirement = 55, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [17] = {-30, 16, 17, 15, 16, 1, -35, levelRequirement = 58, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [18] = {-30, 16, 17, 16, 17, 1, -35, levelRequirement = 61, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [19] = {-30, 17, 17, 17, 18, 1, -35, levelRequirement = 64, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [20] = {-30, 17, 17, 18, 19, 1, -35, levelRequirement = 66, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [21] = {-30, 18, 18, 19, 20, 1, -35, levelRequirement = 67, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [22] = {-30, 18, 18, 19, 21, 1, -35, levelRequirement = 68, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [23] = {-30, 19, 18, 20, 22, 1, -35, levelRequirement = 69, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [24] = {-30, 19, 18, 20, 23, 1, -35, levelRequirement = 70, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [25] = {-30, 20, 18, 21, 24, 1, -35, levelRequirement = 71, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [26] = {-30, 20, 18, 21, 25, 1, -35, levelRequirement = 72, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [27] = {-30, 21, 18, 22, 26, 1, -35, levelRequirement = 73, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [28] = {-30, 21, 18, 22, 27, 1, -35, levelRequirement = 74, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [29] = {-30, 22, 19, 23, 28, 1, -35, levelRequirement = 75, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [30] = {-30, 22, 19, 23, 29, 1, -35, levelRequirement = 76, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [31] = {-30, 23, 19, 24, 30, 1, -35, levelRequirement = 77, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [32] = {-30, 23, 19, 24, 31, 1, -35, levelRequirement = 78, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [33] = {-30, 24, 19, 25, 32, 1, -35, levelRequirement = 79, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [34] = {-30, 24, 19, 25, 33, 1, -35, levelRequirement = 80, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [35] = {-30, 25, 19, 26, 34, 1, -35, levelRequirement = 81, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [36] = {-30, 25, 19, 26, 35, 1, -35, levelRequirement = 82, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileVaalRainOfArrows"] = {
        name = "Vaal Rain of Arrows",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Fires a large number of arrows into the air, to land at the target after a short delay. Enemies hit by the arrows are pinned in place, unable to move for a time.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.Area] = true,
            [SkillType.ProjectileSpeed] = true,
            [SkillType.Totemable] = true,
            [SkillType.Trappable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Duration] = true,
            [SkillType.Vaal] = true,
            [SkillType.Rain] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            area = true,
            duration = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "active_skill_damage_+%_final",
            "base_skill_effect_duration",
            "spell_maximum_action_distance_+%",
            "base_is_projectile",
            "is_area_damage",
            "rain_of_arrows_pin",
        },
        levels = {
            [1] = {-20, 3400, -35, levelRequirement = 2, statInterpolation = {1, 1},  cost = { }, },
            [2] = {-20, 3450, 1, -35, levelRequirement = 4, statInterpolation = {1, 1, 1},  cost = { }, },
            [3] = {-20, 3500, 2, -35, levelRequirement = 6, statInterpolation = {1, 1, 1},  cost = { }, },
            [4] = {-20, 3550, 3, -35, levelRequirement = 9, statInterpolation = {1, 1, 1},  cost = { }, },
            [5] = {-20, 3600, 10, 4, -35, levelRequirement = 12, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [6] = {-20, 3650, 10, 5, -35, levelRequirement = 15, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [7] = {-20, 3700, 11, 6, -35, levelRequirement = 19, statInterpolation = {1, 1, 1, 1},  cost = { }, },
            [8] = {-20, 3750, 11, 15, 7, -35, levelRequirement = 23, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [9] = {-20, 3800, 12, 15, 8, -35, levelRequirement = 28, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [10] = {-20, 3850, 12, 15, 9, -35, levelRequirement = 33, statInterpolation = {1, 1, 1, 1, 1},  cost = { }, },
            [11] = {-25, 3900, 13, 15, 10, 10, -35, levelRequirement = 39, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [12] = {-25, 3950, 13, 15, 10, 11, -35, levelRequirement = 43, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [13] = {-25, 4000, 14, 16, 11, 12, -35, levelRequirement = 46, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [14] = {-25, 4050, 14, 16, 12, 13, -35, levelRequirement = 49, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [15] = {-30, 4100, 15, 16, 13, 14, -35, levelRequirement = 52, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [16] = {-30, 4150, 15, 16, 14, 15, -35, levelRequirement = 55, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [17] = {-30, 4200, 16, 17, 15, 16, -35, levelRequirement = 58, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [18] = {-30, 4250, 16, 17, 16, 17, -35, levelRequirement = 61, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [19] = {-30, 4300, 17, 17, 17, 18, -35, levelRequirement = 64, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [20] = {-30, 4350, 17, 17, 18, 19, -35, levelRequirement = 66, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [21] = {-30, 4375, 18, 18, 19, 20, -35, levelRequirement = 67, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [22] = {-30, 4400, 18, 18, 19, 21, -35, levelRequirement = 68, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [23] = {-30, 4425, 19, 18, 20, 22, -35, levelRequirement = 69, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [24] = {-30, 4450, 19, 18, 20, 23, -35, levelRequirement = 70, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [25] = {-30, 4475, 20, 18, 21, 24, -35, levelRequirement = 71, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [26] = {-30, 4500, 20, 18, 21, 25, -35, levelRequirement = 72, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [27] = {-30, 4525, 21, 18, 22, 26, -35, levelRequirement = 73, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [28] = {-30, 4550, 21, 18, 22, 27, -35, levelRequirement = 74, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [29] = {-30, 4575, 22, 19, 23, 28, -35, levelRequirement = 75, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [30] = {-30, 4600, 23, 19, 23, 29, -35, levelRequirement = 76, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [31] = {-30, 4625, 23, 19, 24, 30, -35, levelRequirement = 77, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [32] = {-30, 4650, 24, 19, 24, 31, -35, levelRequirement = 78, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [33] = {-30, 4675, 24, 19, 25, 32, -35, levelRequirement = 79, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [34] = {-30, 4700, 25, 19, 25, 33, -35, levelRequirement = 80, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [35] = {-30, 4725, 25, 19, 26, 34, -35, levelRequirement = 81, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
            [36] = {-30, 4750, 26, 19, 26, 35, -35, levelRequirement = 82, statInterpolation = {1, 1, 1, 1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileHatred"] = {
        name = "Hatred",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Casts an aura that grants extra cold damage based on physical damage to you and your allies.",
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Area] = true,
            [SkillType.Buff] = true,
            [SkillType.HasReservation] = true,
            [SkillType.TotemCastsAlone] = true,
            [SkillType.Totemable] = true,
            [SkillType.Aura] = true,
            [SkillType.Cold] = true,
            [SkillType.Instant] = true,
            [SkillType.AreaSpell] = true,
            [SkillType.CanHaveBlessing] = true,
            [SkillType.InstantNoRepeatWhenHeld] = true,
            [SkillType.InstantShiftAttackForLeftMouse] = true,
            [SkillType.Cooldown] = true,
        },
        statDescriptionScope = "aura_skill_stat_descriptions",
        castTime = 1.2,
        baseFlags = {
            area = true,
            spell = true,
            aura = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "physical_damage_%_to_add_as_cold",
        },
        levels = {
            [1] = {26, levelRequirement = 10, statInterpolation = {1},  cost = { }, },
            [2] = {26, 3, levelRequirement = 13, statInterpolation = {1, 1},  cost = { }, },
            [3] = {27, 6, levelRequirement = 16, statInterpolation = {1, 1},  cost = { }, },
            [4] = {27, 9, levelRequirement = 19, statInterpolation = {1, 1},  cost = { }, },
            [5] = {28, 12, levelRequirement = 22, statInterpolation = {1, 1},  cost = { }, },
            [6] = {28, 15, levelRequirement = 25, statInterpolation = {1, 1},  cost = { }, },
            [7] = {29, 18, levelRequirement = 28, statInterpolation = {1, 1},  cost = { }, },
            [8] = {29, 21, levelRequirement = 32, statInterpolation = {1, 1},  cost = { }, },
            [9] = {30, 23, levelRequirement = 36, statInterpolation = {1, 1},  cost = { }, },
            [10] = {30, 25, levelRequirement = 40, statInterpolation = {1, 1},  cost = { }, },
            [11] = {31, 27, levelRequirement = 44, statInterpolation = {1, 1},  cost = { }, },
            [12] = {31, 29, levelRequirement = 47, statInterpolation = {1, 1},  cost = { }, },
            [13] = {32, 31, levelRequirement = 50, statInterpolation = {1, 1},  cost = { }, },
            [14] = {32, 33, levelRequirement = 53, statInterpolation = {1, 1},  cost = { }, },
            [15] = {33, 35, levelRequirement = 56, statInterpolation = {1, 1},  cost = { }, },
            [16] = {34, 36, levelRequirement = 59, statInterpolation = {1, 1},  cost = { }, },
            [17] = {34, 37, levelRequirement = 62, statInterpolation = {1, 1},  cost = { }, },
            [18] = {35, 38, levelRequirement = 64, statInterpolation = {1, 1},  cost = { }, },
            [19] = {35, 39, levelRequirement = 66, statInterpolation = {1, 1},  cost = { }, },
            [20] = {36, 40, levelRequirement = 68, statInterpolation = {1, 1},  cost = { }, },
            [21] = {36, 41, levelRequirement = 70, statInterpolation = {1, 1},  cost = { }, },
            [22] = {37, 42, levelRequirement = 72, statInterpolation = {1, 1},  cost = { }, },
            [23] = {37, 43, levelRequirement = 74, statInterpolation = {1, 1},  cost = { }, },
            [24] = {38, 44, levelRequirement = 76, statInterpolation = {1, 1},  cost = { }, },
            [25] = {38, 45, levelRequirement = 78, statInterpolation = {1, 1},  cost = { }, },
            [26] = {39, 46, levelRequirement = 80, statInterpolation = {1, 1},  cost = { }, },
            [27] = {39, 47, levelRequirement = 82, statInterpolation = {1, 1},  cost = { }, },
            [28] = {40, 48, levelRequirement = 84, statInterpolation = {1, 1},  cost = { }, },
            [29] = {40, 49, levelRequirement = 86, statInterpolation = {1, 1},  cost = { }, },
            [30] = {41, 50, levelRequirement = 88, statInterpolation = {1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ExileBarrage"] = {
        name = "Barrage",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "After a short preparation time, you fire individual projectiles repeatedly with a Bow or Wand. These projectiles have a small randomised spread. This skill cannot be Triggered.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Totemable] = true,
            [SkillType.Trappable] = true,
            [SkillType.Mineable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "physical_damage_+%",
            "active_skill_attack_speed_+%_final",
            "number_of_additional_projectiles",
            "active_skill_damage_+%_final",
            "monster_reverse_point_blank_damage_-%_at_minimum_range",
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "projectiles_barrage",
        },
        levels = {
            [1] = {0, 0, 3, -60, 30, levelRequirement = 3, statInterpolation = {1, 1},  cost = { }, },
            [2] = {0, 1, 3, -60, 30, levelRequirement = 10, statInterpolation = {1, 1},  cost = { }, },
            [3] = {2, 2, 3, -60, 30, levelRequirement = 13, statInterpolation = {1, 1},  cost = { }, },
            [4] = {5, 4, 3, -60, 30, levelRequirement = 16, statInterpolation = {1, 1},  cost = { }, },
            [5] = {7, 5, 3, -60, 30, levelRequirement = 19, statInterpolation = {1, 1},  cost = { }, },
            [6] = {9, 7, 3, -60, 30, levelRequirement = 22, statInterpolation = {1, 1},  cost = { }, },
            [7] = {12, 8, 3, -60, 30, levelRequirement = 25, statInterpolation = {1, 1},  cost = { }, },
            [8] = {14, 10, 3, -60, 30, levelRequirement = 28, statInterpolation = {1, 1},  cost = { }, },
            [9] = {16, 11, 3, -60, 30, levelRequirement = 32, statInterpolation = {1, 1},  cost = { }, },
            [10] = {19, 13, 3, -60, 30, levelRequirement = 36, statInterpolation = {1, 1},  cost = { }, },
            [11] = {21, 14, 3, -60, 30, levelRequirement = 40, statInterpolation = {1, 1},  cost = { }, },
            [12] = {24, 16, 3, -60, 30, levelRequirement = 44, statInterpolation = {1, 1},  cost = { }, },
            [13] = {26, 17, 3, -60, 30, levelRequirement = 47, statInterpolation = {1, 1},  cost = { }, },
            [14] = {28, 19, 3, -60, 30, levelRequirement = 50, statInterpolation = {1, 1},  cost = { }, },
            [15] = {31, 20, 3, -60, 30, levelRequirement = 53, statInterpolation = {1, 1},  cost = { }, },
            [16] = {33, 22, 3, -60, 30, levelRequirement = 56, statInterpolation = {1, 1},  cost = { }, },
            [17] = {35, 23, 3, -60, 30, levelRequirement = 59, statInterpolation = {1, 1},  cost = { }, },
            [18] = {38, 25, 3, -60, 30, levelRequirement = 62, statInterpolation = {1, 1},  cost = { }, },
            [19] = {40, 26, 3, -60, 30, levelRequirement = 64, statInterpolation = {1, 1},  cost = { }, },
            [20] = {42, 28, 3, -60, 30, levelRequirement = 66, statInterpolation = {1, 1},  cost = { }, },
            [21] = {44, 29, 3, -60, 30, levelRequirement = 67, statInterpolation = {1, 1},  cost = { }, },
            [22] = {45, 29, 3, -60, 30, levelRequirement = 68, statInterpolation = {1, 1},  cost = { }, },
            [23] = {46, 30, 3, -60, 30, levelRequirement = 69, statInterpolation = {1, 1},  cost = { }, },
            [24] = {47, 31, 3, -60, 30, levelRequirement = 70, statInterpolation = {1, 1},  cost = { }, },
            [25] = {48, 32, 3, -60, 30, levelRequirement = 71, statInterpolation = {1, 1},  cost = { }, },
            [26] = {49, 32, 3, -60, 30, levelRequirement = 72, statInterpolation = {1, 1},  cost = { }, },
            [27] = {51, 33, 3, -60, 30, levelRequirement = 73, statInterpolation = {1, 1},  cost = { }, },
            [28] = {52, 34, 3, -60, 30, levelRequirement = 74, statInterpolation = {1, 1},  cost = { }, },
            [29] = {53, 35, 3, -60, 30, levelRequirement = 75, statInterpolation = {1, 1},  cost = { }, },
            [30] = {54, 35, 3, -60, 30, levelRequirement = 76, statInterpolation = {1, 1},  cost = { }, },
            [31] = {55, 36, 3, -60, 30, levelRequirement = 77, statInterpolation = {1, 1},  cost = { }, },
            [32] = {56, 37, 3, -60, 30, levelRequirement = 78, statInterpolation = {1, 1},  cost = { }, },
            [33] = {58, 39, 3, -60, 30, levelRequirement = 79, statInterpolation = {1, 1},  cost = { }, },
            [34] = {59, 38, 3, -60, 30, levelRequirement = 80, statInterpolation = {1, 1},  cost = { }, },
            [35] = {60, 39, 3, -60, 30, levelRequirement = 81, statInterpolation = {1, 1},  cost = { }, },
            [36] = {61, 40, 3, -60, 30, levelRequirement = 82, statInterpolation = {1, 1},  cost = { }, },
            [37] = {64, 41, 3, -60, 30, levelRequirement = 84, statInterpolation = {1, 1},  cost = { }, },
            [38] = {66, 43, 3, -60, 30, levelRequirement = 86, statInterpolation = {1, 1},  cost = { }, },
            [39] = {68, 44, 3, -60, 30, levelRequirement = 88, statInterpolation = {1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["WalkEmergeExile"] = {
        name = "WalkEmergeExile",
        hidden = true,
        color = "4",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "walk_emerge_distance",
        },
        levels = {
            [1] = {200, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    
    monster base type attack cast speed +% and damage -% final [33]
    IdMonsterSpeedAndDamageFixupComplete
    FamilyMonsterSpeedAndDamageFixup
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • monster base type attack cast speed +% and damage -% final Min: 33 Max: 33 Global
  • Craft Tagscaster_damage damage attack caster speed
    20% increased Attack Speed
    IdMonsterImplicitFastAttack4
    FamilyIncreasedAttackSpeed
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • attack speed +% Min: 20 Max: 20 Global
  • Craft Tagsattack speed