SpectreY
AreaThe Grand Promenade, The Eternal Laboratory, Forgotten Gulch, Dusty Bluff, Forgotten Gulch, Dusty Bluff, Promenade Map
Tagsbludgeoning_weapon, caster, fire_affinity, ghost, ghost_armour, ghost_blood, humanoid, is_unarmed, medium_height, medium_movement, not_int, not_str, raises_dead, summoner, undead
Packs
  • The Grand Promenade: Spectral Tactician, Spectral Soldier, Spectral Officer, Spectral Legionnaire
  • The Eternal Laboratory: Spectral Tactician, Spectral Soldier, Spectral Officer
  • The Eternal Laboratory: Spectral Tactician, Spectral Soldier, Spectral Legionnaire
  • Life
    100%
    Evasion
    +20%
    Ailment Threshold
    100%
    Resistance
    0 40 0 0
    Damage
    100%
    Accuracy
    100%
    Critical Strike Chance
    +5%
    Critical Strike Multiplier
    +130%
    Attack Distance
    6 ~ 10
    Attack Time
    1.5 Second
    Damage Spread
    ±20%
    Experience
    100%
    Model Size
    100%
    Type
    WarHero1
    Metadata
    WarHeroCaster
    Level
    73
    Life
    10,852
    Armour
    42,661
    Evasion
    6,760
    Energy Shield
    0
    Damage
    504
    Spell Damage
    504
    Accuracy
    352
    Attack Time
    1.5
    Experience
    11,388
    Ailment Threshold
    10,852
    Chill
    34
    Shock
    34
    Brittle
    194
    Scorch
    34
    Sap
    95
    WarHeroCasterGhostOrb
    Damage, Area, Fire, Spell, Triggerable, AreaSpell
    Cast Time: 1 sec
    Cooldown Time: 6 sec
    Deals 466.1 to 569.6 Fire Damage
    Fires 3 additional Projectiles
    85% reduced Movement Speed
    is area damage [1]
    WarCasterRagingSpirit
    Spell, Minion, Duration, MinionsCanExplode, Trappable, Totemable, Mineable, Multicastable, Triggerable, Fire, CreatesMinion
    Cast Time: 0.8 sec
    Deals 27% less Damage
    Maximum 50 Summoned Raging Spirits
    Base duration is 6 seconds
    10% reduced Cast Speed
    alternate minion [1]
    WarcasterReviveGhost
    Spell
    Cast Time: 0.75 sec

    Object Type

    version 2
    extends "Metadata/Monsters/Monster"

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    
    Life
    {
    	on_spawned_alive = "AddEffectPack( Metadata/Effects/Spells/monsters_effects/act8/WarHero/spectral_fx.epk );"
    	on_death = "AddAttached( Metadata/Effects/Spells/ghost_biostuff/GladiatorGhost.ao,  ); RemoveEffectPack( Metadata/Effects/Spells/monsters_effects/act8/WarHero/spectral_fx.epk );"
    	on_spawned_dead = "AddAttached( Metadata/Effects/Spells/ghost_biostuff/GladiatorGhost.ao,  );"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/WarHero/WarHeroCaster"] = {
        name = "Spectral Tactician",
        life = 1,
        fireResist = 0,
        coldResist = 40,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1,
        damageSpread = 0.2,
        attackTime = 1.5,
        attackRange = 10,
        accuracy = 1,
        skillList = {
            "WarcasterReviveGhost",
            "WarCasterRagingSpirit",
            "WarHeroCasterGhostOrb",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["WarcasterReviveGhost"] = {
        name = "WarcasterReviveGhost",
        hidden = true,
        color = "4",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 0.75,
        baseFlags = {
            spell = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
        },
        levels = {
            [1] = {levelRequirement = 0, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["WarCasterRagingSpirit"] = {
        name = "WarCasterRagingSpirit",
        hidden = true,
        color = "3",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Minion] = true,
            [SkillType.Duration] = true,
            [SkillType.MinionsCanExplode] = true,
            [SkillType.Trappable] = true,
            [SkillType.Totemable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Multicastable] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Fire] = true,
            [SkillType.CreatesMinion] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 0.8,
        baseFlags = {
            spell = true,
            duration = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "active_skill_damage_+%_final",
            "base_skill_effect_duration",
            "base_number_of_raging_spirits_allowed",
            "base_cast_speed_+%",
            "alternate_minion",
        },
        levels = {
            [1] = {0, 6000, 50, -10, 1, levelRequirement = 4, statInterpolation = {1},  cost = { }, },
            [2] = {-1, 6000, 50, -10, 1, levelRequirement = 7, statInterpolation = {1},  cost = { }, },
            [3] = {-2, 6000, 50, -10, 1, levelRequirement = 9, statInterpolation = {1},  cost = { }, },
            [4] = {-3, 6000, 50, -10, 1, levelRequirement = 12, statInterpolation = {1},  cost = { }, },
            [5] = {-4, 6000, 50, -10, 1, levelRequirement = 16, statInterpolation = {1},  cost = { }, },
            [6] = {-5, 6000, 50, -10, 1, levelRequirement = 20, statInterpolation = {1},  cost = { }, },
            [7] = {-6, 6000, 50, -10, 1, levelRequirement = 27, statInterpolation = {1},  cost = { }, },
            [8] = {-7, 6000, 50, -10, 1, levelRequirement = 28, statInterpolation = {1},  cost = { }, },
            [9] = {-8, 6000, 50, -10, 1, levelRequirement = 29, statInterpolation = {1},  cost = { }, },
            [10] = {-9, 6000, 50, -10, 1, levelRequirement = 32, statInterpolation = {1},  cost = { }, },
            [11] = {-10, 6000, 50, -10, 1, levelRequirement = 36, statInterpolation = {1},  cost = { }, },
            [12] = {-11, 6000, 50, -10, 1, levelRequirement = 40, statInterpolation = {1},  cost = { }, },
            [13] = {-12, 6000, 50, -10, 1, levelRequirement = 45, statInterpolation = {1},  cost = { }, },
            [14] = {-13, 6000, 50, -10, 1, levelRequirement = 49, statInterpolation = {1},  cost = { }, },
            [15] = {-14, 6000, 50, -10, 1, levelRequirement = 50, statInterpolation = {1},  cost = { }, },
            [16] = {-15, 6000, 50, -10, 1, levelRequirement = 52, statInterpolation = {1},  cost = { }, },
            [17] = {-16, 6000, 50, -10, 1, levelRequirement = 56, statInterpolation = {1},  cost = { }, },
            [18] = {-17, 6000, 50, -10, 1, levelRequirement = 60, statInterpolation = {1},  cost = { }, },
            [19] = {-18, 6000, 50, -10, 1, levelRequirement = 64, statInterpolation = {1},  cost = { }, },
            [20] = {-19, 6000, 50, -10, 1, levelRequirement = 65, statInterpolation = {1},  cost = { }, },
            [21] = {-20, 6000, 50, -10, 1, levelRequirement = 66, statInterpolation = {1},  cost = { }, },
            [22] = {-21, 6000, 50, -10, 1, levelRequirement = 67, statInterpolation = {1},  cost = { }, },
            [23] = {-22, 6000, 50, -10, 1, levelRequirement = 68, statInterpolation = {1},  cost = { }, },
            [24] = {-23, 6000, 50, -10, 1, levelRequirement = 69, statInterpolation = {1},  cost = { }, },
            [25] = {-24, 6000, 50, -10, 1, levelRequirement = 70, statInterpolation = {1},  cost = { }, },
            [26] = {-25, 6000, 50, -10, 1, levelRequirement = 71, statInterpolation = {1},  cost = { }, },
            [27] = {-26, 6000, 50, -10, 1, levelRequirement = 72, statInterpolation = {1},  cost = { }, },
            [28] = {-27, 6000, 50, -10, 1, levelRequirement = 73, statInterpolation = {1},  cost = { }, },
            [29] = {-28, 6000, 50, -10, 1, levelRequirement = 74, statInterpolation = {1},  cost = { }, },
            [30] = {-29, 6000, 50, -10, 1, levelRequirement = 75, statInterpolation = {1},  cost = { }, },
            [31] = {-30, 6000, 50, -10, 1, levelRequirement = 76, statInterpolation = {1},  cost = { }, },
            [32] = {-31, 6000, 50, -10, 1, levelRequirement = 77, statInterpolation = {1},  cost = { }, },
            [33] = {-32, 6000, 50, -10, 1, levelRequirement = 78, statInterpolation = {1},  cost = { }, },
            [34] = {-33, 6000, 50, -10, 1, levelRequirement = 79, statInterpolation = {1},  cost = { }, },
            [35] = {-34, 6000, 50, -10, 1, levelRequirement = 80, statInterpolation = {1},  cost = { }, },
            [36] = {-35, 6000, 50, -10, 1, levelRequirement = 81, statInterpolation = {1},  cost = { }, },
            [37] = {-36, 6000, 50, -10, 1, levelRequirement = 82, statInterpolation = {1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["WarHeroCasterGhostOrb"] = {
        name = "WarHeroCasterGhostOrb",
        hidden = true,
        color = "4",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Damage] = true,
            [SkillType.Area] = true,
            [SkillType.Fire] = true,
            [SkillType.Spell] = true,
            [SkillType.Triggerable] = true,
            [SkillType.AreaSpell] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            area = true,
            spell = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_fire_damage",
            "spell_maximum_base_fire_damage",
            "number_of_additional_projectiles",
            "base_movement_velocity_+%",
            "is_area_damage",
        },
        levels = {
            [1] = {0.89999997615814, 1.1000000238419, 3, -85, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    
    Spectral Tactician
    Undead
    SpectreY
    Tagsbludgeoning_weapon, caster, fire_affinity, ghost, ghost_armour, ghost_blood, humanoid, is_unarmed, medium_movement, not_int, not_str, raises_dead, summoner, undead
    Packs
  • Spectral Soldier, Spectral Officer, Spectral Legionnaire, Spectral Tactician
  • Life
    100%
    Evasion
    +20%
    Ailment Threshold
    100%
    Resistance
    0 40 0 0
    Damage
    100%
    Accuracy
    100%
    Critical Strike Chance
    +5%
    Critical Strike Multiplier
    +130%
    Attack Distance
    6 ~ 10
    Attack Time
    1.5 Second
    Damage Spread
    ±20%
    Experience
    100%
    Model Size
    100%
    Type
    WarHero1
    Metadata
    WarHeroCasterHellscape
    Level
    68
    Life
    6,433
    Armour
    28,790
    Evasion
    5,687
    Energy Shield
    0
    Damage
    374
    Spell Damage
    374
    Accuracy
    290
    Attack Time
    1.5
    Experience
    10,255
    Ailment Threshold
    6,433
    Chill
    20
    Shock
    20
    Brittle
    115
    Scorch
    20
    Sap
    56
    WarHeroCasterGhostOrb
    Damage, Area, Fire, Spell, Triggerable, AreaSpell
    Cast Time: 1 sec
    Cooldown Time: 6 sec
    Deals 432.6 to 528.8 Fire Damage
    Fires 3 additional Projectiles
    85% reduced Movement Speed
    is area damage [1]
    WarCasterRagingSpirit
    Spell, Minion, Duration, MinionsCanExplode, Trappable, Totemable, Mineable, Multicastable, Triggerable, Fire, CreatesMinion
    Cast Time: 0.8 sec
    Deals 22% less Damage
    Maximum 50 Summoned Raging Spirits
    Base duration is 6 seconds
    10% reduced Cast Speed
    alternate minion [1]
    WarcasterReviveGhost
    Spell
    Cast Time: 0.75 sec

    Object Type

    version 2
    extends "Metadata/Monsters/Monster"

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    
    Life
    {
    	on_spawned_alive = "AddEffectPack( Metadata/Effects/Spells/monsters_effects/act8/WarHero/spectral_fx.epk );"
    	on_death = "AddAttached( Metadata/Effects/Spells/ghost_biostuff/GladiatorGhost.ao,  ); RemoveEffectPack( Metadata/Effects/Spells/monsters_effects/act8/WarHero/spectral_fx.epk );"
    	on_spawned_dead = "AddAttached( Metadata/Effects/Spells/ghost_biostuff/GladiatorGhost.ao,  );"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/WarHero/WarHeroCasterHellscape"] = {
        name = "Spectral Tactician",
        life = 1,
        fireResist = 0,
        coldResist = 40,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1,
        damageSpread = 0.2,
        attackTime = 1.5,
        attackRange = 10,
        accuracy = 1,
        skillList = {
            "WarcasterReviveGhost",
            "WarCasterRagingSpirit",
            "WarHeroCasterGhostOrb",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["WarcasterReviveGhost"] = {
        name = "WarcasterReviveGhost",
        hidden = true,
        color = "4",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 0.75,
        baseFlags = {
            spell = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
        },
        levels = {
            [1] = {levelRequirement = 0, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["WarCasterRagingSpirit"] = {
        name = "WarCasterRagingSpirit",
        hidden = true,
        color = "3",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Minion] = true,
            [SkillType.Duration] = true,
            [SkillType.MinionsCanExplode] = true,
            [SkillType.Trappable] = true,
            [SkillType.Totemable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Multicastable] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Fire] = true,
            [SkillType.CreatesMinion] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 0.8,
        baseFlags = {
            spell = true,
            duration = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "active_skill_damage_+%_final",
            "base_skill_effect_duration",
            "base_number_of_raging_spirits_allowed",
            "base_cast_speed_+%",
            "alternate_minion",
        },
        levels = {
            [1] = {0, 6000, 50, -10, 1, levelRequirement = 4, statInterpolation = {1},  cost = { }, },
            [2] = {-1, 6000, 50, -10, 1, levelRequirement = 7, statInterpolation = {1},  cost = { }, },
            [3] = {-2, 6000, 50, -10, 1, levelRequirement = 9, statInterpolation = {1},  cost = { }, },
            [4] = {-3, 6000, 50, -10, 1, levelRequirement = 12, statInterpolation = {1},  cost = { }, },
            [5] = {-4, 6000, 50, -10, 1, levelRequirement = 16, statInterpolation = {1},  cost = { }, },
            [6] = {-5, 6000, 50, -10, 1, levelRequirement = 20, statInterpolation = {1},  cost = { }, },
            [7] = {-6, 6000, 50, -10, 1, levelRequirement = 27, statInterpolation = {1},  cost = { }, },
            [8] = {-7, 6000, 50, -10, 1, levelRequirement = 28, statInterpolation = {1},  cost = { }, },
            [9] = {-8, 6000, 50, -10, 1, levelRequirement = 29, statInterpolation = {1},  cost = { }, },
            [10] = {-9, 6000, 50, -10, 1, levelRequirement = 32, statInterpolation = {1},  cost = { }, },
            [11] = {-10, 6000, 50, -10, 1, levelRequirement = 36, statInterpolation = {1},  cost = { }, },
            [12] = {-11, 6000, 50, -10, 1, levelRequirement = 40, statInterpolation = {1},  cost = { }, },
            [13] = {-12, 6000, 50, -10, 1, levelRequirement = 45, statInterpolation = {1},  cost = { }, },
            [14] = {-13, 6000, 50, -10, 1, levelRequirement = 49, statInterpolation = {1},  cost = { }, },
            [15] = {-14, 6000, 50, -10, 1, levelRequirement = 50, statInterpolation = {1},  cost = { }, },
            [16] = {-15, 6000, 50, -10, 1, levelRequirement = 52, statInterpolation = {1},  cost = { }, },
            [17] = {-16, 6000, 50, -10, 1, levelRequirement = 56, statInterpolation = {1},  cost = { }, },
            [18] = {-17, 6000, 50, -10, 1, levelRequirement = 60, statInterpolation = {1},  cost = { }, },
            [19] = {-18, 6000, 50, -10, 1, levelRequirement = 64, statInterpolation = {1},  cost = { }, },
            [20] = {-19, 6000, 50, -10, 1, levelRequirement = 65, statInterpolation = {1},  cost = { }, },
            [21] = {-20, 6000, 50, -10, 1, levelRequirement = 66, statInterpolation = {1},  cost = { }, },
            [22] = {-21, 6000, 50, -10, 1, levelRequirement = 67, statInterpolation = {1},  cost = { }, },
            [23] = {-22, 6000, 50, -10, 1, levelRequirement = 68, statInterpolation = {1},  cost = { }, },
            [24] = {-23, 6000, 50, -10, 1, levelRequirement = 69, statInterpolation = {1},  cost = { }, },
            [25] = {-24, 6000, 50, -10, 1, levelRequirement = 70, statInterpolation = {1},  cost = { }, },
            [26] = {-25, 6000, 50, -10, 1, levelRequirement = 71, statInterpolation = {1},  cost = { }, },
            [27] = {-26, 6000, 50, -10, 1, levelRequirement = 72, statInterpolation = {1},  cost = { }, },
            [28] = {-27, 6000, 50, -10, 1, levelRequirement = 73, statInterpolation = {1},  cost = { }, },
            [29] = {-28, 6000, 50, -10, 1, levelRequirement = 74, statInterpolation = {1},  cost = { }, },
            [30] = {-29, 6000, 50, -10, 1, levelRequirement = 75, statInterpolation = {1},  cost = { }, },
            [31] = {-30, 6000, 50, -10, 1, levelRequirement = 76, statInterpolation = {1},  cost = { }, },
            [32] = {-31, 6000, 50, -10, 1, levelRequirement = 77, statInterpolation = {1},  cost = { }, },
            [33] = {-32, 6000, 50, -10, 1, levelRequirement = 78, statInterpolation = {1},  cost = { }, },
            [34] = {-33, 6000, 50, -10, 1, levelRequirement = 79, statInterpolation = {1},  cost = { }, },
            [35] = {-34, 6000, 50, -10, 1, levelRequirement = 80, statInterpolation = {1},  cost = { }, },
            [36] = {-35, 6000, 50, -10, 1, levelRequirement = 81, statInterpolation = {1},  cost = { }, },
            [37] = {-36, 6000, 50, -10, 1, levelRequirement = 82, statInterpolation = {1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["WarHeroCasterGhostOrb"] = {
        name = "WarHeroCasterGhostOrb",
        hidden = true,
        color = "4",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Damage] = true,
            [SkillType.Area] = true,
            [SkillType.Fire] = true,
            [SkillType.Spell] = true,
            [SkillType.Triggerable] = true,
            [SkillType.AreaSpell] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            area = true,
            spell = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_fire_damage",
            "spell_maximum_base_fire_damage",
            "number_of_additional_projectiles",
            "base_movement_velocity_+%",
            "is_area_damage",
        },
        levels = {
            [1] = {0.89999997615814, 1.1000000238419, 3, -85, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    
    Spectral Tactician
    Undead
    SpectreY
    Tagsbludgeoning_weapon, caster, fire_affinity, ghost, ghost_armour, ghost_blood, humanoid, is_unarmed, medium_movement, not_int, not_str, raises_dead, summoner, undead
    Packs
  • Spectral Corsair, Spectral Scoundrel, Spectral Swashbuckler, Phantom Occultist, Spectral Tactician
  • Life
    100%
    Evasion
    +20%
    Ailment Threshold
    100%
    Resistance
    0 40 0 0
    Damage
    100%
    Accuracy
    100%
    Critical Strike Chance
    +5%
    Critical Strike Multiplier
    +130%
    Attack Distance
    6 ~ 10
    Attack Time
    1.5 Second
    Damage Spread
    ±20%
    Experience
    100%
    Model Size
    100%
    Type
    WarHero1
    Metadata
    WarHeroCasterExpedition
    Level
    68
    Life
    6,433
    Armour
    28,790
    Evasion
    5,687
    Energy Shield
    0
    Damage
    374
    Spell Damage
    374
    Accuracy
    290
    Attack Time
    1.5
    Experience
    10,255
    Ailment Threshold
    6,433
    Chill
    20
    Shock
    20
    Brittle
    115
    Scorch
    20
    Sap
    56
    WarHeroCasterGhostOrb
    Damage, Area, Fire, Spell, Triggerable, AreaSpell
    Cast Time: 1 sec
    Cooldown Time: 6 sec
    Deals 432.6 to 528.8 Fire Damage
    Fires 3 additional Projectiles
    85% reduced Movement Speed
    is area damage [1]
    WarCasterRagingSpirit
    Spell, Minion, Duration, MinionsCanExplode, Trappable, Totemable, Mineable, Multicastable, Triggerable, Fire, CreatesMinion
    Cast Time: 0.8 sec
    Deals 22% less Damage
    Maximum 50 Summoned Raging Spirits
    Base duration is 6 seconds
    10% reduced Cast Speed
    alternate minion [1]
    WarcasterReviveGhost
    Spell
    Cast Time: 0.75 sec

    Object Type

    version 2
    extends "Metadata/Monsters/Monster"
    
    Positioned
    {
    	team = 125
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    
    Life
    {
    	on_spawned_alive = "AddEffectPack( Metadata/Effects/Spells/monsters_effects/act8/WarHero/spectral_fx.epk );"
    	on_death = "AddAttached( Metadata/Effects/Spells/ghost_biostuff/GladiatorGhost.ao,  ); RemoveEffectPack( Metadata/Effects/Spells/monsters_effects/act8/WarHero/spectral_fx.epk );"
    	on_spawned_dead = "AddAttached( Metadata/Effects/Spells/ghost_biostuff/GladiatorGhost.ao,  );"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/WarHero/WarHeroCasterExpedition"] = {
        name = "Spectral Tactician",
        life = 1,
        fireResist = 0,
        coldResist = 40,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1,
        damageSpread = 0.2,
        attackTime = 1.5,
        attackRange = 10,
        accuracy = 1,
        skillList = {
            "WarcasterReviveGhost",
            "WarCasterRagingSpirit",
            "WarHeroCasterGhostOrb",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["WarcasterReviveGhost"] = {
        name = "WarcasterReviveGhost",
        hidden = true,
        color = "4",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 0.75,
        baseFlags = {
            spell = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
        },
        levels = {
            [1] = {levelRequirement = 0, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["WarCasterRagingSpirit"] = {
        name = "WarCasterRagingSpirit",
        hidden = true,
        color = "3",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Minion] = true,
            [SkillType.Duration] = true,
            [SkillType.MinionsCanExplode] = true,
            [SkillType.Trappable] = true,
            [SkillType.Totemable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Multicastable] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Fire] = true,
            [SkillType.CreatesMinion] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 0.8,
        baseFlags = {
            spell = true,
            duration = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "active_skill_damage_+%_final",
            "base_skill_effect_duration",
            "base_number_of_raging_spirits_allowed",
            "base_cast_speed_+%",
            "alternate_minion",
        },
        levels = {
            [1] = {0, 6000, 50, -10, 1, levelRequirement = 4, statInterpolation = {1},  cost = { }, },
            [2] = {-1, 6000, 50, -10, 1, levelRequirement = 7, statInterpolation = {1},  cost = { }, },
            [3] = {-2, 6000, 50, -10, 1, levelRequirement = 9, statInterpolation = {1},  cost = { }, },
            [4] = {-3, 6000, 50, -10, 1, levelRequirement = 12, statInterpolation = {1},  cost = { }, },
            [5] = {-4, 6000, 50, -10, 1, levelRequirement = 16, statInterpolation = {1},  cost = { }, },
            [6] = {-5, 6000, 50, -10, 1, levelRequirement = 20, statInterpolation = {1},  cost = { }, },
            [7] = {-6, 6000, 50, -10, 1, levelRequirement = 27, statInterpolation = {1},  cost = { }, },
            [8] = {-7, 6000, 50, -10, 1, levelRequirement = 28, statInterpolation = {1},  cost = { }, },
            [9] = {-8, 6000, 50, -10, 1, levelRequirement = 29, statInterpolation = {1},  cost = { }, },
            [10] = {-9, 6000, 50, -10, 1, levelRequirement = 32, statInterpolation = {1},  cost = { }, },
            [11] = {-10, 6000, 50, -10, 1, levelRequirement = 36, statInterpolation = {1},  cost = { }, },
            [12] = {-11, 6000, 50, -10, 1, levelRequirement = 40, statInterpolation = {1},  cost = { }, },
            [13] = {-12, 6000, 50, -10, 1, levelRequirement = 45, statInterpolation = {1},  cost = { }, },
            [14] = {-13, 6000, 50, -10, 1, levelRequirement = 49, statInterpolation = {1},  cost = { }, },
            [15] = {-14, 6000, 50, -10, 1, levelRequirement = 50, statInterpolation = {1},  cost = { }, },
            [16] = {-15, 6000, 50, -10, 1, levelRequirement = 52, statInterpolation = {1},  cost = { }, },
            [17] = {-16, 6000, 50, -10, 1, levelRequirement = 56, statInterpolation = {1},  cost = { }, },
            [18] = {-17, 6000, 50, -10, 1, levelRequirement = 60, statInterpolation = {1},  cost = { }, },
            [19] = {-18, 6000, 50, -10, 1, levelRequirement = 64, statInterpolation = {1},  cost = { }, },
            [20] = {-19, 6000, 50, -10, 1, levelRequirement = 65, statInterpolation = {1},  cost = { }, },
            [21] = {-20, 6000, 50, -10, 1, levelRequirement = 66, statInterpolation = {1},  cost = { }, },
            [22] = {-21, 6000, 50, -10, 1, levelRequirement = 67, statInterpolation = {1},  cost = { }, },
            [23] = {-22, 6000, 50, -10, 1, levelRequirement = 68, statInterpolation = {1},  cost = { }, },
            [24] = {-23, 6000, 50, -10, 1, levelRequirement = 69, statInterpolation = {1},  cost = { }, },
            [25] = {-24, 6000, 50, -10, 1, levelRequirement = 70, statInterpolation = {1},  cost = { }, },
            [26] = {-25, 6000, 50, -10, 1, levelRequirement = 71, statInterpolation = {1},  cost = { }, },
            [27] = {-26, 6000, 50, -10, 1, levelRequirement = 72, statInterpolation = {1},  cost = { }, },
            [28] = {-27, 6000, 50, -10, 1, levelRequirement = 73, statInterpolation = {1},  cost = { }, },
            [29] = {-28, 6000, 50, -10, 1, levelRequirement = 74, statInterpolation = {1},  cost = { }, },
            [30] = {-29, 6000, 50, -10, 1, levelRequirement = 75, statInterpolation = {1},  cost = { }, },
            [31] = {-30, 6000, 50, -10, 1, levelRequirement = 76, statInterpolation = {1},  cost = { }, },
            [32] = {-31, 6000, 50, -10, 1, levelRequirement = 77, statInterpolation = {1},  cost = { }, },
            [33] = {-32, 6000, 50, -10, 1, levelRequirement = 78, statInterpolation = {1},  cost = { }, },
            [34] = {-33, 6000, 50, -10, 1, levelRequirement = 79, statInterpolation = {1},  cost = { }, },
            [35] = {-34, 6000, 50, -10, 1, levelRequirement = 80, statInterpolation = {1},  cost = { }, },
            [36] = {-35, 6000, 50, -10, 1, levelRequirement = 81, statInterpolation = {1},  cost = { }, },
            [37] = {-36, 6000, 50, -10, 1, levelRequirement = 82, statInterpolation = {1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["WarHeroCasterGhostOrb"] = {
        name = "WarHeroCasterGhostOrb",
        hidden = true,
        color = "4",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Damage] = true,
            [SkillType.Area] = true,
            [SkillType.Fire] = true,
            [SkillType.Spell] = true,
            [SkillType.Triggerable] = true,
            [SkillType.AreaSpell] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            area = true,
            spell = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_fire_damage",
            "spell_maximum_base_fire_damage",
            "number_of_additional_projectiles",
            "base_movement_velocity_+%",
            "is_area_damage",
        },
        levels = {
            [1] = {0.89999997615814, 1.1000000238419, 3, -85, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
        },
    }