Haviri, Forjador de Metales Vaal
Constructo
La rareza de los objetos arrojados está aumentada un %
+7 a la cantidad máxima de tótems que puedes invocar
monster additional quantity of dropped items in cruel +% [500]
monster additional quantity of dropped items in merciless +% [1000]
monster additional rarity of dropped items in cruel +% [750]
monster additional rarity of dropped items in merciless +% [1500]
monster no map drops [1]
kill traps mines and totems on death [1]
level 33 or lower damage +% final [-20]
level 33 or lower life +% final [-20]
Haviri, Vaal Metalsmith
SpectreN
AreaAposento prohibido, Aposento prohibido
Tagsbludgeoning_weapon, bone_armour, bones, Lanzador de hechizos, chaos_affinity, cold_affinity, construct, fire_affinity, has_two_hand_mace, has_two_handed_melee, large_height, lightning_affinity, not_dex, not_int, physical_affinity, ranged, skeleton, undead, vaalsidearea_boss, very_slow_movement
Vida
180%
Armadura
+100%
Ailment Threshold
180%
Resistencia
30 30 30 20
Damage
100%
Precisión
100%
Probabilidad de golpe crítico
+5%
Multiplicador de golpe crítico
+130%
Attack Distance
6 ~ 9
Attack Time
1.605 Second
Damage Spread
±20%
Experiencia
200%
Model Size
160%
Type
ConstructMeleeArmouredBossSideArea
Metadata
ConstructMeleeBossSideArea
Nivel
68
Vida
11,580
Armadura
57,580
Evasión
4,739
Escudo de energía
0
Damage
374
Daño de hechizos
374
Precisión
290
Attack Time
1.605
Experiencia
20,510
Ailment Threshold
11,580
Chill
37
Shock
37
Brittle
207
Scorch
37
Sap
101
MonsterArcticBreathSideArea
Spell, Projectile, ProjectilesFromUser, Damage, Trappable, Totemable, Mineable, Duration, Area, Multicastable, Triggerable, Cold, ChillingArea, CanRapidFire, AreaSpell
Escarcha acechante
Probabilidad de golpe crítico: 5%
Tiempo de lanzamiento: 0.8 seg
Dispara un proyectil helado que explota al impactar o al llegar al área objetivo. La explosión inflige daño en área y crea un área de escarcha que inflige daño de hielo degenerativo. Esta área se deslizará por el suelo hacia los enemigos cercanos hasta que expire su duración.
Inflige de 1127 a 1690 de daño de hielo
El Tótem dura 20 segundos
La duración base es de 12 segundos
Los proyectiles se bifurcan
Invoca un tótem que usa esta habilidad
Velocidad de lanzamiento de hechizos aumentada un 55%
Velocidad de proyectiles reducida un 20%
El radio base es de 1.5 metros
El radio base secundario es de 1.5 metros
base active skill totem level [68]
base is projectile [1]
base totem range [80]
MonsterFreezingPulseSideArea
Spell, Projectile, ProjectilesFromUser, Damage, Trappable, Totemable, Mineable, Multicastable, Triggerable, Cold, CanRapidFire
Pulso congelante
Probabilidad de golpe crítico: 6%
Efectividad del daño agregado: 125%
Tiempo de lanzamiento: 0.65 seg
Un proyectil helado que tiene una probabilidad de congelar a los enemigos que atraviesa. El proyectil se desvanece rápidamente, y su daño y probabilidad de congelar se van reduciendo hasta que se disipa por completo.
Inflige de 423.2 a 634.7 de daño de hielo
Los proyectiles perforan a todos los objetivos
El Tótem dura 20 segundos
Dispara 3 proyectiles adicionales
Invoca un tótem que usa esta habilidad
Velocidad de lanzamiento de hechizos aumentada un 60%
Velocidad de proyectiles aumentada un 60%
base active skill totem level [68]
base is projectile [1]
base totem range [80]
MonsterFlameRedSideArea
Spell, Projectile, ProjectilesFromUser, Damage, Trappable, Mineable, SummonsTotem, Fire
Tótem de llamas sagradas
Efectividad del daño agregado: 10%
Tiempo de lanzamiento: 0.25 seg
Invoca un tótem que lanza una oleada de llamas a los enemigos cercanos.
Los proyectiles perforan a todos los objetivos
El Tótem dura 20 segundos
Inflige de 98.05 a 147.1 de daño de fuego
Dispara 11 proyectiles adicionales
Invoca un tótem que usa esta habilidad
Dispara proyectiles en círculo
Velocidad de lanzamiento de hechizos aumentada un 40%
base active skill totem level [68]
base is projectile [1]
base totem range [80]
monster penalty against minions damage +% final vs player minions [-25]
totem art variation [-2]
MonsterFireballSideArea
Projectile, ProjectilesFromUser, Spell, Damage, Area, Trappable, Totemable, Mineable, Multicastable, Triggerable, Fire, CanRapidFire, AreaSpell
Bola de fuego
Probabilidad de golpe crítico: 6%
Tiempo de lanzamiento: 0.85 seg
Lanza una bola de fuego hacia un objetivo que explota y daña a los enemigos cercanos.
El Tótem dura 20 segundos
Los proyectiles se bifurcan
Inflige de 355 a 532.4 de daño de fuego
Dispara 3 proyectiles adicionales
Invoca un tótem que usa esta habilidad
Velocidad de lanzamiento de hechizos aumentada un 60%
El radio base es de 0.9 metros
base active skill totem level [68]
base is projectile [1]
base totem range [80]
MonsterShockNovaSideArea
Spell, Damage, Area, Trappable, Totemable, Mineable, Multicastable, Triggerable, Lightning, CanRapidFire, AreaSpell, Nova
Nova de rayo
Probabilidad de golpe crítico: 3%
Tiempo de lanzamiento: 0.75 seg
Lanza un anillo de rayo electrocutante que inflige daño a los monstruos que toca. Los monstruos en el centro del anillo no reciben daño.
Inflige de 128.9 a 386.8 de daño de rayo
El Tótem dura 20 segundos
Invoca un tótem que usa esta habilidad
Velocidad de lanzamiento de hechizos aumentada un 50%
active skill area of effect radius +% final [66]
base active skill totem level [68]
base totem range [80]
is area damage [1]
MonsterStormCallSideArea
Spell, Damage, Area, Duration, Trappable, Totemable, Mineable, Triggerable, Multicastable, Lightning, Cascadable, CanRapidFire, AreaSpell
Llamado de tormenta
Probabilidad de golpe crítico: 5%
Tiempo de lanzamiento: 0.5 seg
Pone un marcador en una ubicación. Después de una corta duración, un rayo golpea el marcador e inflige daño a su alrededor. Cuando esto sucede, también caen rayos en cualquier otro marcador que hayas colocado.
Inflige de 344.3 a 1033 de daño de rayo
El Tótem dura 20 segundos
La duración base es de 1.5 segundos
Invoca un tótem que usa esta habilidad
active skill area of effect radius +% final [-6]
base active skill totem level [68]
base totem range [80]
is area damage [1]
MonsterShockwaveTotemSideArea
Spell, Damage, Area, Trappable, Mineable, SummonsTotem, Multicastable, AreaSpell, Physical, Nova
Tótem de onda sísmica
Efectividad del daño agregado: 50%
Tiempo de lanzamiento: 0.6 seg
Invoca un tótem que sacude la tierra a su alrededor para empujar y dañar a los enemigos cercanos.
Inflige de 85.89 a 143.1 de daño físico
Empuja a los enemigos con cada golpe
Velocidad de lanzamiento de hechizos aumentada un 45%
Distancia de empuje aumentada un 800%
El radio base es de 2.4 metros
active skill area of effect radius +% final [4]
base skill is totemified [1]
is area damage [1]
MonsterSpinestormSideArea
Spell, Damage, Area, Duration, Trappable, Totemable, Mineable, Multicastable, Triggerable, Fire, Cascadable, CanRapidFire, AreaSpell
Tormenta de fuego
Probabilidad de golpe crítico: 5%
Tiempo de lanzamiento: 0.9 seg
Una lluvia de bolas de fuego cae sobre el área objetivo. Las bolas de fuego explotan al impactar e infligen daño a los enemigos cercanos.
Inflige de 93.09 a 139.6 de daño físico
El Tótem dura 20 segundos
La duración base es de 3.5 segundos
Invoca un tótem que usa esta habilidad
Un impacto cada 0.13 segundos
El radio base es de 1 metro
base active skill totem level [68]
base totem range [80]
is area damage [1]
MonsterEtherealKnivesSideArea
Spell, Damage, Projectile, ProjectilesFromUser, Totemable, Trappable, Mineable, Multicastable, Triggerable, CanRapidFire, Physical
Cuchillos etéreos
Probabilidad de golpe crítico: 5%
Tiempo de lanzamiento: 0.6 seg
Dispara un arco de cuchillos hacia fuera delante del personaje que infligen daño físico.
Inflige de 384.8 a 577.2 de daño físico
El Tótem dura 20 segundos
Dispara 9 proyectiles adicionales
El 50% del daño físico se convierte en daño de caos
Invoca un tótem que usa esta habilidad
base active skill totem level [68]
base is projectile [1]
base totem range [80]
visual hit effect chaos is green [1]

Object Type

version 2
extends "Metadata/Monsters/Monster"

Actor
{
	main_hand_unarmed_type = "One_Hand_Mace"
	basic_action = "Emerge"
}

Object Type Codes

version 2
extends "Metadata/Monsters/Monster"

Render
{
     //turn_duration = 0.35
}
-- src\Data\Spectres.lua
minions["Metadata/Monsters/Skeletons/ConstructMeleeBossSideArea"] = {
    name = "Haviri, Vaal Metalsmith",
    life = 1.8,
    fireResist = 30,
    coldResist = 30,
    lightningResist = 30,
    chaosResist = 20,
    damage = 1,
    damageSpread = 0.2,
    attackTime = 1.605,
    attackRange = 9,
    accuracy = 1,
    weaponType1 = "Two Hand Mace",
    skillList = {
        "MonsterFireballSideArea",
        "MonsterFreezingPulseSideArea",
        "MonsterShockNovaSideArea",
        "MonsterSpinestormSideArea",
        "MonsterShockwaveTotemSideArea",
        "MonsterEtherealKnivesSideArea",
        "MonsterArcticBreathSideArea",
        "MonsterFlameRedSideArea",
        "MonsterStormCallSideArea",
    },
    modList = {
    },
}
-- src\Data\Skills\spectre.lua
skills["MonsterFireballSideArea"] = {
    name = "Fireball",
    hidden = true,
    color = "3",
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    description = "Unleashes a ball of fire towards a target which explodes, damaging nearby foes.",
    skillTypes = {
        [SkillType.Projectile] = true,
        [SkillType.ProjectilesFromUser] = true,
        [SkillType.Spell] = true,
        [SkillType.Damage] = true,
        [SkillType.Area] = true,
        [SkillType.Trappable] = true,
        [SkillType.Totemable] = true,
        [SkillType.Mineable] = true,
        [SkillType.Multicastable] = true,
        [SkillType.Triggerable] = true,
        [SkillType.Fire] = true,
        [SkillType.CanRapidFire] = true,
        [SkillType.AreaSpell] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 0.85,
    baseFlags = {
        area = true,
        spell = true,
        projectile = true,
        totem = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_minimum_base_fire_damage",
        "spell_maximum_base_fire_damage",
        "base_active_skill_totem_level",
        "number_of_additional_projectiles",
        "base_cast_speed_+%",
        "base_totem_duration",
        "base_totem_range",
        "active_skill_base_area_of_effect_radius",
        "is_totem",
        "base_is_projectile",
    },
    levels = {
        [1] = {0.80000001192093, 1.2000000476837, 3, 0, 0, 20000, 80, 9, critChance = 6, levelRequirement = 3, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [2] = {0.80000001192093, 1.2000000476837, 5, 0, 0, 20000, 80, 9, critChance = 6, levelRequirement = 5, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [3] = {0.80000001192093, 1.2000000476837, 8, 0, 0, 20000, 80, 9, critChance = 6, levelRequirement = 8, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [4] = {0.80000001192093, 1.2000000476837, 12, 0, 0, 20000, 80, 9, critChance = 6, levelRequirement = 12, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [5] = {0.80000001192093, 1.2000000476837, 15, 0, 0, 20000, 80, 9, critChance = 6, levelRequirement = 15, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [6] = {0.80000001192093, 1.2000000476837, 19, 0, 0, 20000, 80, 9, critChance = 6, levelRequirement = 19, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [7] = {0.80000001192093, 1.2000000476837, 20, 0, 0, 20000, 80, 9, critChance = 6, levelRequirement = 20, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [8] = {0.80000001192093, 1.2000000476837, 21, 0, 0, 20000, 80, 9, critChance = 6, levelRequirement = 21, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [9] = {0.80000001192093, 1.2000000476837, 26, 0, 0, 20000, 80, 9, critChance = 6, levelRequirement = 26, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [10] = {0.80000001192093, 1.2000000476837, 30, 0, 0, 20000, 80, 9, critChance = 6, levelRequirement = 30, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [11] = {0.80000001192093, 1.2000000476837, 34, 2, 35, 20000, 80, 9, critChance = 6, levelRequirement = 34, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [12] = {0.80000001192093, 1.2000000476837, 38, 2, 35, 20000, 80, 9, critChance = 6, levelRequirement = 38, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [13] = {0.80000001192093, 1.2000000476837, 43, 2, 35, 20000, 80, 9, critChance = 6, levelRequirement = 43, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [14] = {0.80000001192093, 1.2000000476837, 45, 2, 35, 20000, 80, 9, critChance = 6, levelRequirement = 45, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [15] = {0.80000001192093, 1.2000000476837, 53, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 53, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [16] = {0.80000001192093, 1.2000000476837, 58, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 58, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [17] = {0.80000001192093, 1.2000000476837, 62, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 62, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [18] = {0.80000001192093, 1.2000000476837, 63, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 63, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [19] = {0.80000001192093, 1.2000000476837, 66, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 66, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [20] = {0.80000001192093, 1.2000000476837, 67, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 67, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [21] = {0.80000001192093, 1.2000000476837, 68, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 68, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [22] = {0.80000001192093, 1.2000000476837, 69, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 69, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [23] = {0.80000001192093, 1.2000000476837, 70, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 70, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [24] = {0.80000001192093, 1.2000000476837, 71, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 71, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [25] = {0.80000001192093, 1.2000000476837, 72, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 72, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [26] = {0.80000001192093, 1.2000000476837, 73, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 73, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [27] = {0.80000001192093, 1.2000000476837, 74, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 74, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [28] = {0.80000001192093, 1.2000000476837, 75, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 75, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [29] = {0.80000001192093, 1.2000000476837, 76, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 76, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [30] = {0.80000001192093, 1.2000000476837, 77, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 77, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [31] = {0.80000001192093, 1.2000000476837, 78, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 78, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [32] = {0.80000001192093, 1.2000000476837, 79, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 79, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [33] = {0.80000001192093, 1.2000000476837, 80, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 80, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [34] = {0.80000001192093, 1.2000000476837, 81, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 81, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [35] = {0.80000001192093, 1.2000000476837, 82, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 82, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MonsterFreezingPulseSideArea"] = {
    name = "Freezing Pulse",
    hidden = true,
    color = "3",
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    description = "An icy projectile which has a chance to freeze enemies it passes through. The projectile fades quickly, reducing damage and freezing chance until it dissipates.",
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Projectile] = true,
        [SkillType.ProjectilesFromUser] = true,
        [SkillType.Damage] = true,
        [SkillType.Trappable] = true,
        [SkillType.Totemable] = true,
        [SkillType.Mineable] = true,
        [SkillType.Multicastable] = true,
        [SkillType.Triggerable] = true,
        [SkillType.Cold] = true,
        [SkillType.CanRapidFire] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 0.65,
    baseFlags = {
        spell = true,
        projectile = true,
        totem = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_minimum_base_cold_damage",
        "spell_maximum_base_cold_damage",
        "base_projectile_speed_+%",
        "base_active_skill_totem_level",
        "number_of_additional_projectiles",
        "base_cast_speed_+%",
        "base_totem_duration",
        "base_totem_range",
        "base_is_projectile",
        "is_totem",
        "always_pierce",
    },
    levels = {
        [1] = {0.80000001192093, 1.2000000476837, 20, 3, 0, 0, 20000, 80, critChance = 6, levelRequirement = 3, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [2] = {0.80000001192093, 1.2000000476837, 20, 5, 0, 0, 20000, 80, critChance = 6, levelRequirement = 5, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [3] = {0.80000001192093, 1.2000000476837, 20, 8, 0, 0, 20000, 80, critChance = 6, levelRequirement = 8, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [4] = {0.80000001192093, 1.2000000476837, 20, 12, 0, 0, 20000, 80, critChance = 6, levelRequirement = 12, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [5] = {0.80000001192093, 1.2000000476837, 20, 15, 0, 0, 20000, 80, critChance = 6, levelRequirement = 15, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [6] = {0.80000001192093, 1.2000000476837, 20, 19, 0, 0, 20000, 80, critChance = 6, levelRequirement = 19, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [7] = {0.80000001192093, 1.2000000476837, 20, 20, 0, 0, 20000, 80, critChance = 6, levelRequirement = 20, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [8] = {0.80000001192093, 1.2000000476837, 20, 21, 0, 0, 20000, 80, critChance = 6, levelRequirement = 21, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [9] = {0.80000001192093, 1.2000000476837, 20, 26, 0, 0, 20000, 80, critChance = 6, levelRequirement = 26, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [10] = {0.80000001192093, 1.2000000476837, 20, 30, 0, 0, 20000, 80, critChance = 6, levelRequirement = 30, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [11] = {0.80000001192093, 1.2000000476837, 40, 34, 2, 35, 20000, 80, critChance = 6, levelRequirement = 34, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [12] = {0.80000001192093, 1.2000000476837, 40, 38, 2, 35, 20000, 80, critChance = 6, levelRequirement = 38, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [13] = {0.80000001192093, 1.2000000476837, 40, 43, 2, 35, 20000, 80, critChance = 6, levelRequirement = 43, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [14] = {0.80000001192093, 1.2000000476837, 40, 45, 2, 35, 20000, 80, critChance = 6, levelRequirement = 45, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [15] = {0.80000001192093, 1.2000000476837, 60, 53, 3, 60, 20000, 80, critChance = 6, levelRequirement = 53, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [16] = {0.80000001192093, 1.2000000476837, 60, 58, 3, 60, 20000, 80, critChance = 6, levelRequirement = 58, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [17] = {0.80000001192093, 1.2000000476837, 60, 62, 3, 60, 20000, 80, critChance = 6, levelRequirement = 62, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [18] = {0.80000001192093, 1.2000000476837, 60, 63, 3, 60, 20000, 80, critChance = 6, levelRequirement = 63, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [19] = {0.80000001192093, 1.2000000476837, 60, 66, 3, 60, 20000, 80, critChance = 6, levelRequirement = 66, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [20] = {0.80000001192093, 1.2000000476837, 60, 67, 3, 60, 20000, 80, critChance = 6, levelRequirement = 67, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [21] = {0.80000001192093, 1.2000000476837, 60, 68, 3, 60, 20000, 80, critChance = 6, levelRequirement = 68, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [22] = {0.80000001192093, 1.2000000476837, 60, 69, 3, 60, 20000, 80, critChance = 6, levelRequirement = 69, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [23] = {0.80000001192093, 1.2000000476837, 60, 70, 3, 60, 20000, 80, critChance = 6, levelRequirement = 70, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [24] = {0.80000001192093, 1.2000000476837, 60, 71, 3, 60, 20000, 80, critChance = 6, levelRequirement = 71, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [25] = {0.80000001192093, 1.2000000476837, 60, 72, 3, 60, 20000, 80, critChance = 6, levelRequirement = 72, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [26] = {0.80000001192093, 1.2000000476837, 60, 73, 3, 60, 20000, 80, critChance = 6, levelRequirement = 73, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [27] = {0.80000001192093, 1.2000000476837, 60, 74, 3, 60, 20000, 80, critChance = 6, levelRequirement = 74, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [28] = {0.80000001192093, 1.2000000476837, 60, 75, 3, 60, 20000, 80, critChance = 6, levelRequirement = 75, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [29] = {0.80000001192093, 1.2000000476837, 60, 76, 3, 60, 20000, 80, critChance = 6, levelRequirement = 76, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [30] = {0.80000001192093, 1.2000000476837, 60, 77, 3, 60, 20000, 80, critChance = 6, levelRequirement = 77, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [31] = {0.80000001192093, 1.2000000476837, 60, 78, 3, 60, 20000, 80, critChance = 6, levelRequirement = 78, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [32] = {0.80000001192093, 1.2000000476837, 60, 79, 3, 60, 20000, 80, critChance = 6, levelRequirement = 79, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [33] = {0.80000001192093, 1.2000000476837, 60, 80, 3, 60, 20000, 80, critChance = 6, levelRequirement = 80, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [34] = {0.80000001192093, 1.2000000476837, 60, 81, 3, 60, 20000, 80, critChance = 6, levelRequirement = 81, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [35] = {0.80000001192093, 1.2000000476837, 60, 82, 3, 60, 20000, 80, critChance = 6, levelRequirement = 82, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MonsterShockNovaSideArea"] = {
    name = "Shock Nova",
    hidden = true,
    color = "3",
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    description = "Casts a shocking ring of lightning which deals damage to monsters it touches. Monsters in the centre of the ring receive no damage.",
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Damage] = true,
        [SkillType.Area] = true,
        [SkillType.Trappable] = true,
        [SkillType.Totemable] = true,
        [SkillType.Mineable] = true,
        [SkillType.Multicastable] = true,
        [SkillType.Triggerable] = true,
        [SkillType.Lightning] = true,
        [SkillType.CanRapidFire] = true,
        [SkillType.AreaSpell] = true,
        [SkillType.Nova] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 0.75,
    baseFlags = {
        area = true,
        spell = true,
        totem = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_minimum_base_lightning_damage",
        "spell_maximum_base_lightning_damage",
        "base_active_skill_totem_level",
        "base_cast_speed_+%",
        "active_skill_area_of_effect_radius_+%_final",
        "base_totem_duration",
        "base_totem_range",
        "is_totem",
        "is_area_damage",
    },
    levels = {
        [1] = {0.5, 1.5, 3, 0, 33, 20000, 80, critChance = 3, levelRequirement = 3, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [2] = {0.5, 1.5, 5, 0, 33, 20000, 80, critChance = 3, levelRequirement = 5, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [3] = {0.5, 1.5, 8, 0, 33, 20000, 80, critChance = 3, levelRequirement = 8, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [4] = {0.5, 1.5, 12, 0, 33, 20000, 80, critChance = 3, levelRequirement = 12, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [5] = {0.5, 1.5, 15, 0, 33, 20000, 80, critChance = 3, levelRequirement = 15, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [6] = {0.5, 1.5, 19, 0, 33, 20000, 80, critChance = 3, levelRequirement = 19, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [7] = {0.5, 1.5, 20, 0, 33, 20000, 80, critChance = 3, levelRequirement = 20, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [8] = {0.5, 1.5, 21, 0, 33, 20000, 80, critChance = 3, levelRequirement = 21, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [9] = {0.5, 1.5, 26, 0, 33, 20000, 80, critChance = 3, levelRequirement = 26, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [10] = {0.5, 1.5, 30, 0, 33, 20000, 80, critChance = 3, levelRequirement = 30, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [11] = {0.5, 1.5, 34, 25, 50, 20000, 80, critChance = 3, levelRequirement = 34, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [12] = {0.5, 1.5, 38, 25, 50, 20000, 80, critChance = 3, levelRequirement = 38, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [13] = {0.5, 1.5, 43, 25, 50, 20000, 80, critChance = 3, levelRequirement = 43, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [14] = {0.5, 1.5, 45, 25, 50, 20000, 80, critChance = 3, levelRequirement = 45, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [15] = {0.5, 1.5, 53, 50, 66, 20000, 80, critChance = 3, levelRequirement = 53, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [16] = {0.5, 1.5, 58, 50, 66, 20000, 80, critChance = 3, levelRequirement = 58, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [17] = {0.5, 1.5, 62, 50, 66, 20000, 80, critChance = 3, levelRequirement = 62, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [18] = {0.5, 1.5, 63, 50, 66, 20000, 80, critChance = 3, levelRequirement = 63, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [19] = {0.5, 1.5, 66, 50, 66, 20000, 80, critChance = 3, levelRequirement = 66, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [20] = {0.5, 1.5, 67, 50, 66, 20000, 80, critChance = 3, levelRequirement = 67, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [21] = {0.5, 1.5, 68, 50, 66, 20000, 80, critChance = 3, levelRequirement = 68, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [22] = {0.5, 1.5, 69, 50, 66, 20000, 80, critChance = 3, levelRequirement = 69, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [23] = {0.5, 1.5, 70, 50, 66, 20000, 80, critChance = 3, levelRequirement = 70, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [24] = {0.5, 1.5, 71, 50, 66, 20000, 80, critChance = 3, levelRequirement = 71, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [25] = {0.5, 1.5, 72, 50, 66, 20000, 80, critChance = 3, levelRequirement = 72, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [26] = {0.5, 1.5, 73, 50, 66, 20000, 80, critChance = 3, levelRequirement = 73, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [27] = {0.5, 1.5, 74, 50, 66, 20000, 80, critChance = 3, levelRequirement = 74, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [28] = {0.5, 1.5, 75, 50, 66, 20000, 80, critChance = 3, levelRequirement = 75, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [29] = {0.5, 1.5, 76, 50, 66, 20000, 80, critChance = 3, levelRequirement = 76, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [30] = {0.5, 1.5, 77, 50, 66, 20000, 80, critChance = 3, levelRequirement = 77, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [31] = {0.5, 1.5, 78, 50, 66, 20000, 80, critChance = 3, levelRequirement = 78, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [32] = {0.5, 1.5, 79, 50, 66, 20000, 80, critChance = 3, levelRequirement = 79, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [33] = {0.5, 1.5, 80, 50, 66, 20000, 80, critChance = 3, levelRequirement = 80, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [34] = {0.5, 1.5, 81, 50, 66, 20000, 80, critChance = 3, levelRequirement = 81, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [35] = {0.5, 1.5, 82, 50, 66, 20000, 80, critChance = 3, levelRequirement = 82, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MonsterSpinestormSideArea"] = {
    name = "Firestorm",
    hidden = true,
    color = "3",
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    description = "Flaming bolts rain down over the targeted area. They explode when landing, dealing damage to nearby enemies.",
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Damage] = true,
        [SkillType.Area] = true,
        [SkillType.Duration] = true,
        [SkillType.Trappable] = true,
        [SkillType.Totemable] = true,
        [SkillType.Mineable] = true,
        [SkillType.Multicastable] = true,
        [SkillType.Triggerable] = true,
        [SkillType.Fire] = true,
        [SkillType.Cascadable] = true,
        [SkillType.CanRapidFire] = true,
        [SkillType.AreaSpell] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 0.9,
    baseFlags = {
        area = true,
        spell = true,
        duration = true,
        totem = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_minimum_base_physical_damage",
        "spell_maximum_base_physical_damage",
        "base_skill_effect_duration",
        "fire_storm_fireball_delay_ms",
        "base_active_skill_totem_level",
        "base_totem_duration",
        "base_totem_range",
        "active_skill_base_area_of_effect_radius",
        "is_area_damage",
        "is_totem",
    },
    levels = {
        [1] = {0.40000000596046, 0.60000002384186, 2500, 225, 3, 20000, 80, 10, critChance = 5, levelRequirement = 3, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [2] = {0.40000000596046, 0.60000002384186, 2500, 225, 5, 20000, 80, 10, critChance = 5, levelRequirement = 5, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [3] = {0.40000000596046, 0.60000002384186, 2500, 225, 8, 20000, 80, 10, critChance = 5, levelRequirement = 8, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [4] = {0.40000000596046, 0.60000002384186, 2500, 225, 12, 20000, 80, 10, critChance = 5, levelRequirement = 12, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [5] = {0.40000000596046, 0.60000002384186, 2500, 225, 15, 20000, 80, 10, critChance = 5, levelRequirement = 15, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [6] = {0.40000000596046, 0.60000002384186, 2500, 225, 19, 20000, 80, 10, critChance = 5, levelRequirement = 19, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [7] = {0.40000000596046, 0.60000002384186, 2500, 225, 20, 20000, 80, 10, critChance = 5, levelRequirement = 20, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [8] = {0.40000000596046, 0.60000002384186, 2500, 225, 21, 20000, 80, 10, critChance = 5, levelRequirement = 21, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [9] = {0.40000000596046, 0.60000002384186, 2500, 225, 26, 20000, 80, 10, critChance = 5, levelRequirement = 26, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [10] = {0.40000000596046, 0.60000002384186, 2500, 225, 30, 20000, 80, 10, critChance = 5, levelRequirement = 30, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [11] = {0.40000000596046, 0.60000002384186, 2500, 175, 34, 20000, 80, 10, critChance = 5, levelRequirement = 34, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [12] = {0.40000000596046, 0.60000002384186, 2500, 175, 38, 20000, 80, 10, critChance = 5, levelRequirement = 38, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [13] = {0.40000000596046, 0.60000002384186, 2500, 175, 43, 20000, 80, 10, critChance = 5, levelRequirement = 43, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [14] = {0.40000000596046, 0.60000002384186, 3500, 175, 45, 20000, 80, 10, critChance = 5, levelRequirement = 45, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [15] = {0.40000000596046, 0.60000002384186, 3500, 125, 53, 20000, 80, 10, critChance = 5, levelRequirement = 53, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [16] = {0.40000000596046, 0.60000002384186, 3500, 125, 58, 20000, 80, 10, critChance = 5, levelRequirement = 58, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [17] = {0.40000000596046, 0.60000002384186, 3500, 125, 62, 20000, 80, 10, critChance = 5, levelRequirement = 62, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [18] = {0.40000000596046, 0.60000002384186, 3500, 125, 63, 20000, 80, 10, critChance = 5, levelRequirement = 63, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [19] = {0.40000000596046, 0.60000002384186, 3500, 125, 66, 20000, 80, 10, critChance = 5, levelRequirement = 66, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [20] = {0.40000000596046, 0.60000002384186, 3500, 125, 67, 20000, 80, 10, critChance = 5, levelRequirement = 67, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [21] = {0.40000000596046, 0.60000002384186, 3500, 125, 68, 20000, 80, 10, critChance = 5, levelRequirement = 68, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [22] = {0.40000000596046, 0.60000002384186, 3500, 125, 69, 20000, 80, 10, critChance = 5, levelRequirement = 69, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [23] = {0.40000000596046, 0.60000002384186, 3500, 125, 70, 20000, 80, 10, critChance = 5, levelRequirement = 70, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [24] = {0.40000000596046, 0.60000002384186, 3500, 125, 71, 20000, 80, 10, critChance = 5, levelRequirement = 71, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [25] = {0.40000000596046, 0.60000002384186, 3500, 125, 72, 20000, 80, 10, critChance = 5, levelRequirement = 72, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [26] = {0.40000000596046, 0.60000002384186, 3500, 125, 73, 20000, 80, 10, critChance = 5, levelRequirement = 73, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [27] = {0.40000000596046, 0.60000002384186, 3500, 125, 74, 20000, 80, 10, critChance = 5, levelRequirement = 74, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [28] = {0.40000000596046, 0.60000002384186, 3500, 125, 75, 20000, 80, 10, critChance = 5, levelRequirement = 75, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [29] = {0.40000000596046, 0.60000002384186, 3500, 125, 76, 20000, 80, 10, critChance = 5, levelRequirement = 76, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [30] = {0.40000000596046, 0.60000002384186, 3500, 125, 77, 20000, 80, 10, critChance = 5, levelRequirement = 77, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [31] = {0.40000000596046, 0.60000002384186, 3500, 125, 78, 20000, 80, 10, critChance = 5, levelRequirement = 78, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [32] = {0.40000000596046, 0.60000002384186, 3500, 125, 79, 20000, 80, 10, critChance = 5, levelRequirement = 79, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [33] = {0.40000000596046, 0.60000002384186, 3500, 125, 80, 20000, 80, 10, critChance = 5, levelRequirement = 80, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [34] = {0.40000000596046, 0.60000002384186, 3500, 125, 81, 20000, 80, 10, critChance = 5, levelRequirement = 81, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [35] = {0.40000000596046, 0.60000002384186, 3500, 125, 82, 20000, 80, 10, critChance = 5, levelRequirement = 82, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MonsterShockwaveTotemSideArea"] = {
    name = "Shockwave Totem",
    hidden = true,
    color = 4,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    description = "Summons a totem that shakes the earth around it, knocking back and damaging nearby enemies",
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Damage] = true,
        [SkillType.Area] = true,
        [SkillType.Trappable] = true,
        [SkillType.Mineable] = true,
        [SkillType.SummonsTotem] = true,
        [SkillType.Multicastable] = true,
        [SkillType.AreaSpell] = true,
        [SkillType.Physical] = true,
        [SkillType.Nova] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 0.6,
    baseFlags = {
        area = true,
        spell = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_minimum_base_physical_damage",
        "spell_maximum_base_physical_damage",
        "knockback_distance_+%",
        "base_cast_speed_+%",
        "active_skill_area_of_effect_radius_+%_final",
        "active_skill_base_area_of_effect_radius",
        "base_skill_is_totemified",
        "global_knockback",
        "is_area_damage",
    },
    levels = {
        [1] = {0.69999998807907, 1.2999999523163, 300, 0, -31, 24, levelRequirement = 3, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [2] = {0.69999998807907, 1.2999999523163, 450, 25, -14, 24, levelRequirement = 34, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [3] = {0.89999997615814, 1.5, 800, 45, 4, 24, levelRequirement = 53, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MonsterEtherealKnivesSideArea"] = {
    name = "Ethereal Knives",
    hidden = true,
    color = "2",
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    description = "Fires an arc of knives outwards in front of the caster which deal physical damage.",
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Damage] = true,
        [SkillType.Projectile] = true,
        [SkillType.ProjectilesFromUser] = true,
        [SkillType.Totemable] = true,
        [SkillType.Trappable] = true,
        [SkillType.Mineable] = true,
        [SkillType.Multicastable] = true,
        [SkillType.Triggerable] = true,
        [SkillType.CanRapidFire] = true,
        [SkillType.Physical] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 0.6,
    baseFlags = {
        spell = true,
        projectile = true,
        totem = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_minimum_base_physical_damage",
        "spell_maximum_base_physical_damage",
        "base_active_skill_totem_level",
        "number_of_additional_projectiles",
        "skill_physical_damage_%_to_convert_to_chaos",
        "base_totem_duration",
        "base_totem_range",
        "base_is_projectile",
        "is_totem",
        "visual_hit_effect_chaos_is_green",
    },
    levels = {
        [1] = {0.80000001192093, 1.2000000476837, 3, 9, 50, 20000, 80, critChance = 5, levelRequirement = 3, statInterpolation = {3, 3, 1},  cost = { }, },
        [2] = {0.80000001192093, 1.2000000476837, 5, 9, 50, 20000, 80, critChance = 5, levelRequirement = 5, statInterpolation = {3, 3, 1},  cost = { }, },
        [3] = {0.80000001192093, 1.2000000476837, 8, 9, 50, 20000, 80, critChance = 5, levelRequirement = 8, statInterpolation = {3, 3, 1},  cost = { }, },
        [4] = {0.80000001192093, 1.2000000476837, 10, 9, 50, 20000, 80, critChance = 5, levelRequirement = 10, statInterpolation = {3, 3, 1},  cost = { }, },
        [5] = {0.80000001192093, 1.2000000476837, 12, 9, 50, 20000, 80, critChance = 5, levelRequirement = 12, statInterpolation = {3, 3, 1},  cost = { }, },
        [6] = {0.80000001192093, 1.2000000476837, 14, 9, 50, 20000, 80, critChance = 5, levelRequirement = 14, statInterpolation = {3, 3, 1},  cost = { }, },
        [7] = {0.80000001192093, 1.2000000476837, 17, 9, 50, 20000, 80, critChance = 5, levelRequirement = 17, statInterpolation = {3, 3, 1},  cost = { }, },
        [8] = {0.80000001192093, 1.2000000476837, 20, 9, 50, 20000, 80, critChance = 5, levelRequirement = 20, statInterpolation = {3, 3, 1},  cost = { }, },
        [9] = {0.80000001192093, 1.2000000476837, 24, 9, 50, 20000, 80, critChance = 5, levelRequirement = 24, statInterpolation = {3, 3, 1},  cost = { }, },
        [10] = {0.80000001192093, 1.2000000476837, 30, 9, 50, 20000, 80, critChance = 5, levelRequirement = 30, statInterpolation = {3, 3, 1},  cost = { }, },
        [11] = {0.80000001192093, 1.2000000476837, 31, 9, 50, 20000, 80, critChance = 5, levelRequirement = 31, statInterpolation = {3, 3, 1},  cost = { }, },
        [12] = {0.80000001192093, 1.2000000476837, 36, 9, 50, 20000, 80, critChance = 5, levelRequirement = 36, statInterpolation = {3, 3, 1},  cost = { }, },
        [13] = {0.80000001192093, 1.2000000476837, 41, 9, 50, 20000, 80, critChance = 5, levelRequirement = 41, statInterpolation = {3, 3, 1},  cost = { }, },
        [14] = {0.80000001192093, 1.2000000476837, 44, 9, 50, 20000, 80, critChance = 5, levelRequirement = 44, statInterpolation = {3, 3, 1},  cost = { }, },
        [15] = {0.80000001192093, 1.2000000476837, 51, 9, 50, 20000, 80, critChance = 5, levelRequirement = 51, statInterpolation = {3, 3, 1},  cost = { }, },
        [16] = {0.80000001192093, 1.2000000476837, 52, 9, 50, 20000, 80, critChance = 5, levelRequirement = 52, statInterpolation = {3, 3, 1},  cost = { }, },
        [17] = {0.80000001192093, 1.2000000476837, 57, 9, 50, 20000, 80, critChance = 5, levelRequirement = 57, statInterpolation = {3, 3, 1},  cost = { }, },
        [18] = {0.80000001192093, 1.2000000476837, 60, 9, 50, 20000, 80, critChance = 5, levelRequirement = 60, statInterpolation = {3, 3, 1},  cost = { }, },
        [19] = {0.80000001192093, 1.2000000476837, 65, 9, 50, 20000, 80, critChance = 5, levelRequirement = 65, statInterpolation = {3, 3, 1},  cost = { }, },
        [20] = {0.80000001192093, 1.2000000476837, 66, 9, 50, 20000, 80, critChance = 5, levelRequirement = 66, statInterpolation = {3, 3, 1},  cost = { }, },
        [21] = {0.80000001192093, 1.2000000476837, 67, 9, 50, 20000, 80, critChance = 5, levelRequirement = 67, statInterpolation = {3, 3, 1},  cost = { }, },
        [22] = {0.80000001192093, 1.2000000476837, 68, 9, 50, 20000, 80, critChance = 5, levelRequirement = 68, statInterpolation = {3, 3, 1},  cost = { }, },
        [23] = {0.80000001192093, 1.2000000476837, 69, 9, 50, 20000, 80, critChance = 5, levelRequirement = 69, statInterpolation = {3, 3, 1},  cost = { }, },
        [24] = {0.80000001192093, 1.2000000476837, 70, 9, 50, 20000, 80, critChance = 5, levelRequirement = 70, statInterpolation = {3, 3, 1},  cost = { }, },
        [25] = {0.80000001192093, 1.2000000476837, 71, 9, 50, 20000, 80, critChance = 5, levelRequirement = 71, statInterpolation = {3, 3, 1},  cost = { }, },
        [26] = {0.80000001192093, 1.2000000476837, 72, 9, 50, 20000, 80, critChance = 5, levelRequirement = 72, statInterpolation = {3, 3, 1},  cost = { }, },
        [27] = {0.80000001192093, 1.2000000476837, 73, 9, 50, 20000, 80, critChance = 5, levelRequirement = 73, statInterpolation = {3, 3, 1},  cost = { }, },
        [28] = {0.80000001192093, 1.2000000476837, 74, 9, 50, 20000, 80, critChance = 5, levelRequirement = 74, statInterpolation = {3, 3, 1},  cost = { }, },
        [29] = {0.80000001192093, 1.2000000476837, 75, 9, 50, 20000, 80, critChance = 5, levelRequirement = 75, statInterpolation = {3, 3, 1},  cost = { }, },
        [30] = {0.80000001192093, 1.2000000476837, 76, 9, 50, 20000, 80, critChance = 5, levelRequirement = 76, statInterpolation = {3, 3, 1},  cost = { }, },
        [31] = {0.80000001192093, 1.2000000476837, 77, 9, 50, 20000, 80, critChance = 5, levelRequirement = 77, statInterpolation = {3, 3, 1},  cost = { }, },
        [32] = {0.80000001192093, 1.2000000476837, 78, 9, 50, 20000, 80, critChance = 5, levelRequirement = 78, statInterpolation = {3, 3, 1},  cost = { }, },
        [33] = {0.80000001192093, 1.2000000476837, 79, 9, 50, 20000, 80, critChance = 5, levelRequirement = 79, statInterpolation = {3, 3, 1},  cost = { }, },
        [34] = {0.80000001192093, 1.2000000476837, 80, 9, 50, 20000, 80, critChance = 5, levelRequirement = 80, statInterpolation = {3, 3, 1},  cost = { }, },
        [35] = {0.80000001192093, 1.2000000476837, 81, 9, 50, 20000, 80, critChance = 5, levelRequirement = 81, statInterpolation = {3, 3, 1},  cost = { }, },
        [36] = {0.80000001192093, 1.2000000476837, 82, 9, 50, 20000, 80, critChance = 5, levelRequirement = 82, statInterpolation = {3, 3, 1},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MonsterArcticBreathSideArea"] = {
    name = "Creeping Frost",
    hidden = true,
    color = "3",
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    description = "Fire an icy projectile that bursts on impact or when reaching the targeted area, dealing area damage and creating a chilling area that deals cold damage over time. This area will creep across the ground towards nearby enemies until its duration expires.",
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Projectile] = true,
        [SkillType.ProjectilesFromUser] = true,
        [SkillType.Damage] = true,
        [SkillType.Trappable] = true,
        [SkillType.Totemable] = true,
        [SkillType.Mineable] = true,
        [SkillType.Duration] = true,
        [SkillType.Area] = true,
        [SkillType.Multicastable] = true,
        [SkillType.Triggerable] = true,
        [SkillType.Cold] = true,
        [SkillType.ChillingArea] = true,
        [SkillType.CanRapidFire] = true,
        [SkillType.AreaSpell] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 0.8,
    baseFlags = {
        area = true,
        spell = true,
        projectile = true,
        duration = true,
        totem = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_minimum_base_cold_damage",
        "spell_maximum_base_cold_damage",
        "base_skill_effect_duration",
        "base_projectile_speed_+%",
        "base_active_skill_totem_level",
        "base_cast_speed_+%",
        "base_totem_duration",
        "base_totem_range",
        "active_skill_base_area_of_effect_radius",
        "active_skill_base_secondary_area_of_effect_radius",
        "is_totem",
        "base_is_projectile",
    },
    levels = {
        [1] = {0.80000001192093, 1.2000000476837, 3500, -50, 3, 0, 20000, 80, 15, 15, critChance = 5, levelRequirement = 3, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [2] = {0.80000001192093, 1.2000000476837, 3500, -50, 5, 0, 20000, 80, 15, 15, critChance = 5, levelRequirement = 5, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [3] = {0.80000001192093, 1.2000000476837, 3500, -50, 8, 0, 20000, 80, 15, 15, critChance = 5, levelRequirement = 8, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [4] = {0.80000001192093, 1.2000000476837, 3500, -50, 12, 0, 20000, 80, 15, 15, critChance = 5, levelRequirement = 12, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [5] = {0.80000001192093, 1.2000000476837, 3500, -50, 15, 0, 20000, 80, 15, 15, critChance = 5, levelRequirement = 15, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [6] = {0.80000001192093, 1.2000000476837, 3500, -50, 19, 0, 20000, 80, 15, 15, critChance = 5, levelRequirement = 19, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [7] = {0.80000001192093, 1.2000000476837, 3500, -50, 20, 0, 20000, 80, 15, 15, critChance = 5, levelRequirement = 20, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [8] = {0.80000001192093, 1.2000000476837, 3500, -50, 21, 0, 20000, 80, 15, 15, critChance = 5, levelRequirement = 21, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [9] = {0.80000001192093, 1.2000000476837, 3500, -50, 26, 0, 20000, 80, 15, 15, critChance = 5, levelRequirement = 26, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [10] = {0.80000001192093, 1.2000000476837, 3500, -50, 30, 0, 20000, 80, 15, 15, critChance = 5, levelRequirement = 30, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [11] = {0.80000001192093, 1.2000000476837, 7000, -40, 34, 30, 20000, 80, 15, 15, critChance = 5, levelRequirement = 34, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [12] = {0.80000001192093, 1.2000000476837, 7000, -40, 38, 30, 20000, 80, 15, 15, critChance = 5, levelRequirement = 38, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [13] = {0.80000001192093, 1.2000000476837, 7000, -40, 43, 30, 20000, 80, 15, 15, critChance = 5, levelRequirement = 43, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [14] = {0.80000001192093, 1.2000000476837, 7000, -40, 45, 30, 20000, 80, 15, 15, critChance = 5, levelRequirement = 45, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [15] = {0.80000001192093, 1.2000000476837, 12000, -20, 53, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 53, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [16] = {0.80000001192093, 1.2000000476837, 12000, -20, 58, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 58, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [17] = {0.80000001192093, 1.2000000476837, 12000, -20, 62, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 62, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [18] = {0.80000001192093, 1.2000000476837, 12000, -20, 63, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 63, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [19] = {0.80000001192093, 1.2000000476837, 12000, -20, 66, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 66, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [20] = {0.80000001192093, 1.2000000476837, 12000, -20, 67, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 67, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [21] = {0.80000001192093, 1.2000000476837, 12000, -20, 68, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 68, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [22] = {0.80000001192093, 1.2000000476837, 12000, -20, 69, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 69, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [23] = {0.80000001192093, 1.2000000476837, 12000, -20, 70, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 70, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [24] = {0.80000001192093, 1.2000000476837, 12000, -20, 71, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 71, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [25] = {0.80000001192093, 1.2000000476837, 12000, -20, 72, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 72, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [26] = {0.80000001192093, 1.2000000476837, 12000, -20, 73, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 73, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [27] = {0.80000001192093, 1.2000000476837, 12000, -20, 74, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 74, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [28] = {0.80000001192093, 1.2000000476837, 12000, -20, 75, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 75, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [29] = {0.80000001192093, 1.2000000476837, 12000, -20, 76, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 76, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [30] = {0.80000001192093, 1.2000000476837, 12000, -20, 77, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 77, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [31] = {0.80000001192093, 1.2000000476837, 12000, -20, 78, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 78, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [32] = {0.80000001192093, 1.2000000476837, 12000, -20, 79, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 79, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [33] = {0.80000001192093, 1.2000000476837, 12000, -20, 80, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 80, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [34] = {0.80000001192093, 1.2000000476837, 12000, -20, 81, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 81, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        [35] = {0.80000001192093, 1.2000000476837, 12000, -20, 82, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 82, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MonsterFlameRedSideArea"] = {
    name = "Holy Flame Totem",
    hidden = true,
    color = 4,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    description = "Summons a totem that fires a stream of flame at nearby enemies.",
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Projectile] = true,
        [SkillType.ProjectilesFromUser] = true,
        [SkillType.Damage] = true,
        [SkillType.Trappable] = true,
        [SkillType.Mineable] = true,
        [SkillType.SummonsTotem] = true,
        [SkillType.Fire] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 0.25,
    baseFlags = {
        spell = true,
        projectile = true,
        totem = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_minimum_base_fire_damage",
        "spell_maximum_base_fire_damage",
        "base_active_skill_totem_level",
        "number_of_additional_projectiles",
        "base_cast_speed_+%",
        "base_totem_duration",
        "base_totem_range",
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
        "totem_art_variation",
        "base_is_projectile",
        "is_totem",
        "always_pierce",
    },
    levels = {
        [1] = {0.80000001192093, 1.2000000476837, 3, 2, 0, 20000, 80, -25, -2, levelRequirement = 3, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [2] = {0.80000001192093, 1.2000000476837, 5, 2, 0, 20000, 80, -25, -2, levelRequirement = 5, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [3] = {0.80000001192093, 1.2000000476837, 8, 2, 0, 20000, 80, -25, -2, levelRequirement = 8, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [4] = {0.80000001192093, 1.2000000476837, 12, 2, 0, 20000, 80, -25, -2, levelRequirement = 12, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [5] = {0.80000001192093, 1.2000000476837, 15, 2, 0, 20000, 80, -25, -2, levelRequirement = 15, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [6] = {0.80000001192093, 1.2000000476837, 19, 2, 0, 20000, 80, -25, -2, levelRequirement = 19, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [7] = {0.80000001192093, 1.2000000476837, 20, 2, 0, 20000, 80, -25, -2, levelRequirement = 20, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [8] = {0.80000001192093, 1.2000000476837, 21, 2, 0, 20000, 80, -25, -2, levelRequirement = 21, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [9] = {0.80000001192093, 1.2000000476837, 26, 2, 0, 20000, 80, -25, -2, levelRequirement = 26, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [10] = {0.80000001192093, 1.2000000476837, 30, 2, 0, 20000, 80, -25, -2, levelRequirement = 30, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [11] = {0.80000001192093, 1.2000000476837, 34, 3, 25, 20000, 80, -25, -2, levelRequirement = 34, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [12] = {0.80000001192093, 1.2000000476837, 38, 3, 25, 20000, 80, -25, -2, levelRequirement = 38, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [13] = {0.80000001192093, 1.2000000476837, 43, 3, 25, 20000, 80, -25, -2, levelRequirement = 43, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [14] = {0.80000001192093, 1.2000000476837, 45, 3, 25, 20000, 80, -25, -2, levelRequirement = 45, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [15] = {0.80000001192093, 1.2000000476837, 53, 11, 40, 20000, 80, -25, -2, levelRequirement = 53, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [16] = {0.80000001192093, 1.2000000476837, 58, 11, 40, 20000, 80, -25, -2, levelRequirement = 58, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [17] = {0.80000001192093, 1.2000000476837, 62, 11, 40, 20000, 80, -25, -2, levelRequirement = 62, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [18] = {0.80000001192093, 1.2000000476837, 63, 11, 40, 20000, 80, -25, -2, levelRequirement = 63, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [19] = {0.80000001192093, 1.2000000476837, 66, 11, 40, 20000, 80, -25, -2, levelRequirement = 66, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [20] = {0.80000001192093, 1.2000000476837, 67, 11, 40, 20000, 80, -25, -2, levelRequirement = 67, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [21] = {0.80000001192093, 1.2000000476837, 68, 11, 40, 20000, 80, -25, -2, levelRequirement = 68, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [22] = {0.80000001192093, 1.2000000476837, 69, 11, 40, 20000, 80, -25, -2, levelRequirement = 69, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [23] = {0.80000001192093, 1.2000000476837, 70, 11, 40, 20000, 80, -25, -2, levelRequirement = 70, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [24] = {0.80000001192093, 1.2000000476837, 71, 11, 40, 20000, 80, -25, -2, levelRequirement = 71, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [25] = {0.80000001192093, 1.2000000476837, 72, 11, 40, 20000, 80, -25, -2, levelRequirement = 72, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [26] = {0.80000001192093, 1.2000000476837, 73, 11, 40, 20000, 80, -25, -2, levelRequirement = 73, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [27] = {0.80000001192093, 1.2000000476837, 74, 11, 40, 20000, 80, -25, -2, levelRequirement = 74, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [28] = {0.80000001192093, 1.2000000476837, 75, 11, 40, 20000, 80, -25, -2, levelRequirement = 75, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [29] = {0.80000001192093, 1.2000000476837, 76, 11, 40, 20000, 80, -25, -2, levelRequirement = 76, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [30] = {0.80000001192093, 1.2000000476837, 77, 11, 40, 20000, 80, -25, -2, levelRequirement = 77, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [31] = {0.80000001192093, 1.2000000476837, 78, 11, 40, 20000, 80, -25, -2, levelRequirement = 78, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [32] = {0.80000001192093, 1.2000000476837, 79, 11, 40, 20000, 80, -25, -2, levelRequirement = 79, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [33] = {0.80000001192093, 1.2000000476837, 80, 11, 40, 20000, 80, -25, -2, levelRequirement = 80, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [34] = {0.80000001192093, 1.2000000476837, 81, 11, 40, 20000, 80, -25, -2, levelRequirement = 81, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [35] = {0.80000001192093, 1.2000000476837, 82, 11, 40, 20000, 80, -25, -2, levelRequirement = 82, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MonsterStormCallSideArea"] = {
    name = "Storm Call",
    hidden = true,
    color = "3",
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    description = "Sets a marker at a location. After a short duration, lightning strikes the marker, dealing damage around it and causing lightning strikes at any other markers you've cast.",
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Damage] = true,
        [SkillType.Area] = true,
        [SkillType.Duration] = true,
        [SkillType.Trappable] = true,
        [SkillType.Totemable] = true,
        [SkillType.Mineable] = true,
        [SkillType.Triggerable] = true,
        [SkillType.Multicastable] = true,
        [SkillType.Lightning] = true,
        [SkillType.Cascadable] = true,
        [SkillType.CanRapidFire] = true,
        [SkillType.AreaSpell] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 0.5,
    baseFlags = {
        area = true,
        spell = true,
        duration = true,
        totem = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_minimum_base_lightning_damage",
        "spell_maximum_base_lightning_damage",
        "base_skill_effect_duration",
        "base_active_skill_totem_level",
        "active_skill_area_of_effect_radius_+%_final",
        "base_totem_duration",
        "base_totem_range",
        "is_area_damage",
        "is_totem",
    },
    levels = {
        [1] = {0.5, 1.5, 2500, 3, -31, 20000, 80, critChance = 5, levelRequirement = 3, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [2] = {0.5, 1.5, 2500, 5, -31, 20000, 80, critChance = 5, levelRequirement = 5, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [3] = {0.5, 1.5, 2500, 8, -31, 20000, 80, critChance = 5, levelRequirement = 8, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [4] = {0.5, 1.5, 2500, 12, -31, 20000, 80, critChance = 5, levelRequirement = 12, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [5] = {0.5, 1.5, 2500, 15, -31, 20000, 80, critChance = 5, levelRequirement = 15, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [6] = {0.5, 1.5, 2500, 19, -31, 20000, 80, critChance = 5, levelRequirement = 19, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [7] = {0.5, 1.5, 2500, 20, -31, 20000, 80, critChance = 5, levelRequirement = 20, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [8] = {0.5, 1.5, 2500, 21, -31, 20000, 80, critChance = 5, levelRequirement = 21, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [9] = {0.5, 1.5, 2500, 26, -31, 20000, 80, critChance = 5, levelRequirement = 26, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [10] = {0.5, 1.5, 2500, 30, -31, 20000, 80, critChance = 5, levelRequirement = 30, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [11] = {0.5, 1.5, 2000, 34, -16, 20000, 80, critChance = 5, levelRequirement = 34, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [12] = {0.5, 1.5, 2000, 38, -16, 20000, 80, critChance = 5, levelRequirement = 38, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [13] = {0.5, 1.5, 2000, 43, -16, 20000, 80, critChance = 5, levelRequirement = 43, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [14] = {0.5, 1.5, 2000, 45, -16, 20000, 80, critChance = 5, levelRequirement = 45, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [15] = {0.5, 1.5, 1500, 53, -6, 20000, 80, critChance = 5, levelRequirement = 53, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [16] = {0.5, 1.5, 1500, 58, -6, 20000, 80, critChance = 5, levelRequirement = 58, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [17] = {0.5, 1.5, 1500, 62, -6, 20000, 80, critChance = 5, levelRequirement = 62, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [18] = {0.5, 1.5, 1500, 63, -6, 20000, 80, critChance = 5, levelRequirement = 63, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [19] = {0.5, 1.5, 1500, 66, -6, 20000, 80, critChance = 5, levelRequirement = 66, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [20] = {0.5, 1.5, 1500, 67, -6, 20000, 80, critChance = 5, levelRequirement = 67, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [21] = {0.5, 1.5, 1500, 68, -6, 20000, 80, critChance = 5, levelRequirement = 68, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [22] = {0.5, 1.5, 1500, 69, -6, 20000, 80, critChance = 5, levelRequirement = 69, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [23] = {0.5, 1.5, 1500, 70, -6, 20000, 80, critChance = 5, levelRequirement = 70, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [24] = {0.5, 1.5, 1500, 71, -6, 20000, 80, critChance = 5, levelRequirement = 71, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [25] = {0.5, 1.5, 1500, 72, -6, 20000, 80, critChance = 5, levelRequirement = 72, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [26] = {0.5, 1.5, 1500, 73, -6, 20000, 80, critChance = 5, levelRequirement = 73, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [27] = {0.5, 1.5, 1500, 74, -6, 20000, 80, critChance = 5, levelRequirement = 74, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [28] = {0.5, 1.5, 1500, 75, -6, 20000, 80, critChance = 5, levelRequirement = 75, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [29] = {0.5, 1.5, 1500, 76, -6, 20000, 80, critChance = 5, levelRequirement = 76, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [30] = {0.5, 1.5, 1500, 77, -6, 20000, 80, critChance = 5, levelRequirement = 77, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [31] = {0.5, 1.5, 1500, 78, -6, 20000, 80, critChance = 5, levelRequirement = 78, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [32] = {0.5, 1.5, 1500, 79, -6, 20000, 80, critChance = 5, levelRequirement = 79, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [33] = {0.5, 1.5, 1500, 80, -6, 20000, 80, critChance = 5, levelRequirement = 80, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [34] = {0.5, 1.5, 1500, 81, -6, 20000, 80, critChance = 5, levelRequirement = 81, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        [35] = {0.5, 1.5, 1500, 82, -6, 20000, 80, critChance = 5, levelRequirement = 82, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
    },
}
La rareza de los objetos arrojados está aumentada un %
IdMonsterSideAreaBoss
FamilyMonsterSideAreaBoss
Domainsmonstruo (3)
GenerationTypeÚnico (3)
Req. level1
Stats
  • monster dropped item rarity +% Min: 0 Max: 0 Global
  • +7 a la cantidad máxima de tótems que puedes invocar
    IdMonsterAdditionalTotems2
    FamilyAdditionalTotems
    Domainsmonstruo (3)
    GenerationTypeÚnico (3)
    Req. level1
    Stats
  • number of additional totems allowed Min: 7 Max: 7 Global
  • monster additional quantity of dropped items in cruel +% [500]
    monster additional quantity of dropped items in merciless +% [1000]
    monster additional rarity of dropped items in cruel +% [750]
    monster additional rarity of dropped items in merciless +% [1500]
    IdMonsterInvasionMercilessDrops2
    FamilyMonsterMercilessDrops
    Domainsmonstruo (3)
    GenerationTypeÚnico (3)
    Req. level1
    Stats
  • monster additional rarity of dropped items in cruel +% Min: 750 Max: 750 Global
  • monster additional quantity of dropped items in cruel +% Min: 500 Max: 500 Global
  • monster additional rarity of dropped items in merciless +% Min: 1500 Max: 1500 Global
  • monster additional quantity of dropped items in merciless +% Min: 1000 Max: 1000 Global
  • monster no map drops [1]
    IdMonsterNoMapDrops
    FamilyMonsterNoMapDrops
    Domainsmonstruo (3)
    GenerationTypeÚnico (3)
    Req. level1
    Stats
  • monster no map drops Min: 1 Max: 1 Global
  • kill traps mines and totems on death [1]
    IdMonsterKillTrapsMinesTotemsOnDeath
    FamilyMonsterKillTrapsMinesTotemsOnDeath
    Domainsmonstruo (3)
    GenerationTypeÚnico (3)
    Req. level1
    Stats
  • kill traps mines and totems on death Min: 1 Max: 1 Global
  • level 33 or lower damage +% final [-20]
    level 33 or lower life +% final [-20]
    IdMonsterLifeAndDamageLessBelowLevel33
    FamilyMoreLifeBelowLevelThreshold
    Domainsmonstruo (3)
    GenerationTypeÚnico (3)
    Req. level1
    Stats
  • level 33 or lower life +% final Min: -20 Max: -20 Global
  • level 33 or lower damage +% final Min: -20 Max: -20 Global
  • Craft Tagsresource life damage
    Haviri, Forjador de Metales Vaal
    Constructo
    La rareza de los objetos arrojados está aumentada un %
    +7 a la cantidad máxima de tótems que puedes invocar
    monster additional quantity of dropped items in cruel +% [500]
    monster additional quantity of dropped items in merciless +% [1000]
    monster additional rarity of dropped items in cruel +% [750]
    monster additional rarity of dropped items in merciless +% [1500]
    monster no map drops [1]
    monster is invasion boss [1]
    kill traps mines and totems on death [1]
    level 33 or lower damage +% final [-20]
    level 33 or lower life +% final [-20]
    Haviri, Vaal Metalsmith
    SpectreN
    AreaInvasionBoss
    End GameVida máxima aumentada un 50%
    Tagsbludgeoning_weapon, bone_armour, bones, Lanzador de hechizos, chaos_affinity, cold_affinity, construct, fire_affinity, has_two_hand_mace, has_two_handed_melee, invasion_boss, large_height, lightning_affinity, not_dex, not_int, physical_affinity, ranged, skeleton, undead, very_slow_movement
    Packs
  • InvasionBoss: Haviri, Forjador de Metales Vaal, Caído vaal, Caído vaal
  • Vida
    180%
    Armadura
    +100%
    Ailment Threshold
    180%
    Resistencia
    30 30 30 20
    Damage
    100%
    Precisión
    100%
    Probabilidad de golpe crítico
    +5%
    Multiplicador de golpe crítico
    +130%
    Attack Distance
    6 ~ 9
    Attack Time
    1.605 Second
    Damage Spread
    ±20%
    Experiencia
    200%
    Model Size
    160%
    Type
    ConstructMeleeArmouredBossSideArea
    Metadata
    ConstructMeleeBossSideAreaInvasion
    Nivel
    68
    Vida
    11,580
    Armadura
    57,580
    Evasión
    4,739
    Escudo de energía
    0
    Damage
    374
    Daño de hechizos
    374
    Precisión
    290
    Attack Time
    1.605
    Experiencia
    20,510
    Ailment Threshold
    11,580
    Chill
    37
    Shock
    37
    Brittle
    207
    Scorch
    37
    Sap
    101
    MonsterArcticBreathSideArea
    Spell, Projectile, ProjectilesFromUser, Damage, Trappable, Totemable, Mineable, Duration, Area, Multicastable, Triggerable, Cold, ChillingArea, CanRapidFire, AreaSpell
    Escarcha acechante
    Probabilidad de golpe crítico: 5%
    Tiempo de lanzamiento: 0.8 seg
    Dispara un proyectil helado que explota al impactar o al llegar al área objetivo. La explosión inflige daño en área y crea un área de escarcha que inflige daño de hielo degenerativo. Esta área se deslizará por el suelo hacia los enemigos cercanos hasta que expire su duración.
    Inflige de 1127 a 1690 de daño de hielo
    El Tótem dura 20 segundos
    La duración base es de 12 segundos
    Los proyectiles se bifurcan
    Invoca un tótem que usa esta habilidad
    Velocidad de lanzamiento de hechizos aumentada un 55%
    Velocidad de proyectiles reducida un 20%
    El radio base es de 1.5 metros
    El radio base secundario es de 1.5 metros
    base active skill totem level [68]
    base is projectile [1]
    base totem range [80]
    MonsterFreezingPulseSideArea
    Spell, Projectile, ProjectilesFromUser, Damage, Trappable, Totemable, Mineable, Multicastable, Triggerable, Cold, CanRapidFire
    Pulso congelante
    Probabilidad de golpe crítico: 6%
    Efectividad del daño agregado: 125%
    Tiempo de lanzamiento: 0.65 seg
    Un proyectil helado que tiene una probabilidad de congelar a los enemigos que atraviesa. El proyectil se desvanece rápidamente, y su daño y probabilidad de congelar se van reduciendo hasta que se disipa por completo.
    Inflige de 423.2 a 634.7 de daño de hielo
    Los proyectiles perforan a todos los objetivos
    El Tótem dura 20 segundos
    Dispara 3 proyectiles adicionales
    Invoca un tótem que usa esta habilidad
    Velocidad de lanzamiento de hechizos aumentada un 60%
    Velocidad de proyectiles aumentada un 60%
    base active skill totem level [68]
    base is projectile [1]
    base totem range [80]
    MonsterFlameRedSideArea
    Spell, Projectile, ProjectilesFromUser, Damage, Trappable, Mineable, SummonsTotem, Fire
    Tótem de llamas sagradas
    Efectividad del daño agregado: 10%
    Tiempo de lanzamiento: 0.25 seg
    Invoca un tótem que lanza una oleada de llamas a los enemigos cercanos.
    Los proyectiles perforan a todos los objetivos
    El Tótem dura 20 segundos
    Inflige de 98.05 a 147.1 de daño de fuego
    Dispara 11 proyectiles adicionales
    Invoca un tótem que usa esta habilidad
    Dispara proyectiles en círculo
    Velocidad de lanzamiento de hechizos aumentada un 40%
    base active skill totem level [68]
    base is projectile [1]
    base totem range [80]
    monster penalty against minions damage +% final vs player minions [-25]
    totem art variation [-2]
    MonsterFireballSideArea
    Projectile, ProjectilesFromUser, Spell, Damage, Area, Trappable, Totemable, Mineable, Multicastable, Triggerable, Fire, CanRapidFire, AreaSpell
    Bola de fuego
    Probabilidad de golpe crítico: 6%
    Tiempo de lanzamiento: 0.85 seg
    Lanza una bola de fuego hacia un objetivo que explota y daña a los enemigos cercanos.
    El Tótem dura 20 segundos
    Los proyectiles se bifurcan
    Inflige de 355 a 532.4 de daño de fuego
    Dispara 3 proyectiles adicionales
    Invoca un tótem que usa esta habilidad
    Velocidad de lanzamiento de hechizos aumentada un 60%
    El radio base es de 0.9 metros
    base active skill totem level [68]
    base is projectile [1]
    base totem range [80]
    MonsterShockNovaSideArea
    Spell, Damage, Area, Trappable, Totemable, Mineable, Multicastable, Triggerable, Lightning, CanRapidFire, AreaSpell, Nova
    Nova de rayo
    Probabilidad de golpe crítico: 3%
    Tiempo de lanzamiento: 0.75 seg
    Lanza un anillo de rayo electrocutante que inflige daño a los monstruos que toca. Los monstruos en el centro del anillo no reciben daño.
    Inflige de 128.9 a 386.8 de daño de rayo
    El Tótem dura 20 segundos
    Invoca un tótem que usa esta habilidad
    Velocidad de lanzamiento de hechizos aumentada un 50%
    active skill area of effect radius +% final [66]
    base active skill totem level [68]
    base totem range [80]
    is area damage [1]
    MonsterStormCallSideArea
    Spell, Damage, Area, Duration, Trappable, Totemable, Mineable, Triggerable, Multicastable, Lightning, Cascadable, CanRapidFire, AreaSpell
    Llamado de tormenta
    Probabilidad de golpe crítico: 5%
    Tiempo de lanzamiento: 0.5 seg
    Pone un marcador en una ubicación. Después de una corta duración, un rayo golpea el marcador e inflige daño a su alrededor. Cuando esto sucede, también caen rayos en cualquier otro marcador que hayas colocado.
    Inflige de 344.3 a 1033 de daño de rayo
    El Tótem dura 20 segundos
    La duración base es de 1.5 segundos
    Invoca un tótem que usa esta habilidad
    active skill area of effect radius +% final [-6]
    base active skill totem level [68]
    base totem range [80]
    is area damage [1]
    MonsterShockwaveTotemSideArea
    Spell, Damage, Area, Trappable, Mineable, SummonsTotem, Multicastable, AreaSpell, Physical, Nova
    Tótem de onda sísmica
    Efectividad del daño agregado: 50%
    Tiempo de lanzamiento: 0.6 seg
    Invoca un tótem que sacude la tierra a su alrededor para empujar y dañar a los enemigos cercanos.
    Inflige de 85.89 a 143.1 de daño físico
    Empuja a los enemigos con cada golpe
    Velocidad de lanzamiento de hechizos aumentada un 45%
    Distancia de empuje aumentada un 800%
    El radio base es de 2.4 metros
    active skill area of effect radius +% final [4]
    base skill is totemified [1]
    is area damage [1]
    MonsterSpinestormSideArea
    Spell, Damage, Area, Duration, Trappable, Totemable, Mineable, Multicastable, Triggerable, Fire, Cascadable, CanRapidFire, AreaSpell
    Tormenta de fuego
    Probabilidad de golpe crítico: 5%
    Tiempo de lanzamiento: 0.9 seg
    Una lluvia de bolas de fuego cae sobre el área objetivo. Las bolas de fuego explotan al impactar e infligen daño a los enemigos cercanos.
    Inflige de 93.09 a 139.6 de daño físico
    El Tótem dura 20 segundos
    La duración base es de 3.5 segundos
    Invoca un tótem que usa esta habilidad
    Un impacto cada 0.13 segundos
    El radio base es de 1 metro
    base active skill totem level [68]
    base totem range [80]
    is area damage [1]
    MonsterEtherealKnivesSideArea
    Spell, Damage, Projectile, ProjectilesFromUser, Totemable, Trappable, Mineable, Multicastable, Triggerable, CanRapidFire, Physical
    Cuchillos etéreos
    Probabilidad de golpe crítico: 5%
    Tiempo de lanzamiento: 0.6 seg
    Dispara un arco de cuchillos hacia fuera delante del personaje que infligen daño físico.
    Inflige de 384.8 a 577.2 de daño físico
    El Tótem dura 20 segundos
    Dispara 9 proyectiles adicionales
    El 50% del daño físico se convierte en daño de caos
    Invoca un tótem que usa esta habilidad
    base active skill totem level [68]
    base is projectile [1]
    base totem range [80]
    visual hit effect chaos is green [1]

    Object Type

    version 2
    extends "Metadata/Monsters/Monster"
    
    Actor
    {
    	main_hand_unarmed_type = "One_Hand_Mace"
    	basic_action = "Emerge"
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    
    Render
    {
         //turn_duration = 0.35
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/Skeletons/ConstructMeleeBossSideAreaInvasion"] = {
        name = "Haviri, Vaal Metalsmith",
        life = 1.8,
        fireResist = 30,
        coldResist = 30,
        lightningResist = 30,
        chaosResist = 20,
        damage = 1,
        damageSpread = 0.2,
        attackTime = 1.605,
        attackRange = 9,
        accuracy = 1,
        weaponType1 = "Two Hand Mace",
        skillList = {
            "MonsterFireballSideArea",
            "MonsterFreezingPulseSideArea",
            "MonsterShockNovaSideArea",
            "MonsterSpinestormSideArea",
            "MonsterShockwaveTotemSideArea",
            "MonsterEtherealKnivesSideArea",
            "MonsterArcticBreathSideArea",
            "MonsterFlameRedSideArea",
            "MonsterStormCallSideArea",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MonsterFireballSideArea"] = {
        name = "Fireball",
        hidden = true,
        color = "3",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Unleashes a ball of fire towards a target which explodes, damaging nearby foes.",
        skillTypes = {
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Spell] = true,
            [SkillType.Damage] = true,
            [SkillType.Area] = true,
            [SkillType.Trappable] = true,
            [SkillType.Totemable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Multicastable] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Fire] = true,
            [SkillType.CanRapidFire] = true,
            [SkillType.AreaSpell] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 0.85,
        baseFlags = {
            area = true,
            spell = true,
            projectile = true,
            totem = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_fire_damage",
            "spell_maximum_base_fire_damage",
            "base_active_skill_totem_level",
            "number_of_additional_projectiles",
            "base_cast_speed_+%",
            "base_totem_duration",
            "base_totem_range",
            "active_skill_base_area_of_effect_radius",
            "is_totem",
            "base_is_projectile",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 3, 0, 0, 20000, 80, 9, critChance = 6, levelRequirement = 3, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [2] = {0.80000001192093, 1.2000000476837, 5, 0, 0, 20000, 80, 9, critChance = 6, levelRequirement = 5, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [3] = {0.80000001192093, 1.2000000476837, 8, 0, 0, 20000, 80, 9, critChance = 6, levelRequirement = 8, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [4] = {0.80000001192093, 1.2000000476837, 12, 0, 0, 20000, 80, 9, critChance = 6, levelRequirement = 12, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [5] = {0.80000001192093, 1.2000000476837, 15, 0, 0, 20000, 80, 9, critChance = 6, levelRequirement = 15, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [6] = {0.80000001192093, 1.2000000476837, 19, 0, 0, 20000, 80, 9, critChance = 6, levelRequirement = 19, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [7] = {0.80000001192093, 1.2000000476837, 20, 0, 0, 20000, 80, 9, critChance = 6, levelRequirement = 20, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [8] = {0.80000001192093, 1.2000000476837, 21, 0, 0, 20000, 80, 9, critChance = 6, levelRequirement = 21, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [9] = {0.80000001192093, 1.2000000476837, 26, 0, 0, 20000, 80, 9, critChance = 6, levelRequirement = 26, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [10] = {0.80000001192093, 1.2000000476837, 30, 0, 0, 20000, 80, 9, critChance = 6, levelRequirement = 30, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [11] = {0.80000001192093, 1.2000000476837, 34, 2, 35, 20000, 80, 9, critChance = 6, levelRequirement = 34, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [12] = {0.80000001192093, 1.2000000476837, 38, 2, 35, 20000, 80, 9, critChance = 6, levelRequirement = 38, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [13] = {0.80000001192093, 1.2000000476837, 43, 2, 35, 20000, 80, 9, critChance = 6, levelRequirement = 43, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [14] = {0.80000001192093, 1.2000000476837, 45, 2, 35, 20000, 80, 9, critChance = 6, levelRequirement = 45, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [15] = {0.80000001192093, 1.2000000476837, 53, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 53, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [16] = {0.80000001192093, 1.2000000476837, 58, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 58, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [17] = {0.80000001192093, 1.2000000476837, 62, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 62, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [18] = {0.80000001192093, 1.2000000476837, 63, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 63, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [19] = {0.80000001192093, 1.2000000476837, 66, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 66, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [20] = {0.80000001192093, 1.2000000476837, 67, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 67, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [21] = {0.80000001192093, 1.2000000476837, 68, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 68, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [22] = {0.80000001192093, 1.2000000476837, 69, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 69, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [23] = {0.80000001192093, 1.2000000476837, 70, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 70, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [24] = {0.80000001192093, 1.2000000476837, 71, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 71, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [25] = {0.80000001192093, 1.2000000476837, 72, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 72, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [26] = {0.80000001192093, 1.2000000476837, 73, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 73, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [27] = {0.80000001192093, 1.2000000476837, 74, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 74, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [28] = {0.80000001192093, 1.2000000476837, 75, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 75, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [29] = {0.80000001192093, 1.2000000476837, 76, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 76, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [30] = {0.80000001192093, 1.2000000476837, 77, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 77, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [31] = {0.80000001192093, 1.2000000476837, 78, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 78, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [32] = {0.80000001192093, 1.2000000476837, 79, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 79, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [33] = {0.80000001192093, 1.2000000476837, 80, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 80, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [34] = {0.80000001192093, 1.2000000476837, 81, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 81, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [35] = {0.80000001192093, 1.2000000476837, 82, 3, 60, 20000, 80, 9, critChance = 6, levelRequirement = 82, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MonsterFreezingPulseSideArea"] = {
        name = "Freezing Pulse",
        hidden = true,
        color = "3",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "An icy projectile which has a chance to freeze enemies it passes through. The projectile fades quickly, reducing damage and freezing chance until it dissipates.",
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Damage] = true,
            [SkillType.Trappable] = true,
            [SkillType.Totemable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Multicastable] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Cold] = true,
            [SkillType.CanRapidFire] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 0.65,
        baseFlags = {
            spell = true,
            projectile = true,
            totem = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_cold_damage",
            "spell_maximum_base_cold_damage",
            "base_projectile_speed_+%",
            "base_active_skill_totem_level",
            "number_of_additional_projectiles",
            "base_cast_speed_+%",
            "base_totem_duration",
            "base_totem_range",
            "base_is_projectile",
            "is_totem",
            "always_pierce",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 20, 3, 0, 0, 20000, 80, critChance = 6, levelRequirement = 3, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [2] = {0.80000001192093, 1.2000000476837, 20, 5, 0, 0, 20000, 80, critChance = 6, levelRequirement = 5, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [3] = {0.80000001192093, 1.2000000476837, 20, 8, 0, 0, 20000, 80, critChance = 6, levelRequirement = 8, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [4] = {0.80000001192093, 1.2000000476837, 20, 12, 0, 0, 20000, 80, critChance = 6, levelRequirement = 12, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [5] = {0.80000001192093, 1.2000000476837, 20, 15, 0, 0, 20000, 80, critChance = 6, levelRequirement = 15, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [6] = {0.80000001192093, 1.2000000476837, 20, 19, 0, 0, 20000, 80, critChance = 6, levelRequirement = 19, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [7] = {0.80000001192093, 1.2000000476837, 20, 20, 0, 0, 20000, 80, critChance = 6, levelRequirement = 20, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [8] = {0.80000001192093, 1.2000000476837, 20, 21, 0, 0, 20000, 80, critChance = 6, levelRequirement = 21, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [9] = {0.80000001192093, 1.2000000476837, 20, 26, 0, 0, 20000, 80, critChance = 6, levelRequirement = 26, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [10] = {0.80000001192093, 1.2000000476837, 20, 30, 0, 0, 20000, 80, critChance = 6, levelRequirement = 30, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [11] = {0.80000001192093, 1.2000000476837, 40, 34, 2, 35, 20000, 80, critChance = 6, levelRequirement = 34, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [12] = {0.80000001192093, 1.2000000476837, 40, 38, 2, 35, 20000, 80, critChance = 6, levelRequirement = 38, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [13] = {0.80000001192093, 1.2000000476837, 40, 43, 2, 35, 20000, 80, critChance = 6, levelRequirement = 43, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [14] = {0.80000001192093, 1.2000000476837, 40, 45, 2, 35, 20000, 80, critChance = 6, levelRequirement = 45, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [15] = {0.80000001192093, 1.2000000476837, 60, 53, 3, 60, 20000, 80, critChance = 6, levelRequirement = 53, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [16] = {0.80000001192093, 1.2000000476837, 60, 58, 3, 60, 20000, 80, critChance = 6, levelRequirement = 58, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [17] = {0.80000001192093, 1.2000000476837, 60, 62, 3, 60, 20000, 80, critChance = 6, levelRequirement = 62, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [18] = {0.80000001192093, 1.2000000476837, 60, 63, 3, 60, 20000, 80, critChance = 6, levelRequirement = 63, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [19] = {0.80000001192093, 1.2000000476837, 60, 66, 3, 60, 20000, 80, critChance = 6, levelRequirement = 66, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [20] = {0.80000001192093, 1.2000000476837, 60, 67, 3, 60, 20000, 80, critChance = 6, levelRequirement = 67, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [21] = {0.80000001192093, 1.2000000476837, 60, 68, 3, 60, 20000, 80, critChance = 6, levelRequirement = 68, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [22] = {0.80000001192093, 1.2000000476837, 60, 69, 3, 60, 20000, 80, critChance = 6, levelRequirement = 69, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [23] = {0.80000001192093, 1.2000000476837, 60, 70, 3, 60, 20000, 80, critChance = 6, levelRequirement = 70, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [24] = {0.80000001192093, 1.2000000476837, 60, 71, 3, 60, 20000, 80, critChance = 6, levelRequirement = 71, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [25] = {0.80000001192093, 1.2000000476837, 60, 72, 3, 60, 20000, 80, critChance = 6, levelRequirement = 72, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [26] = {0.80000001192093, 1.2000000476837, 60, 73, 3, 60, 20000, 80, critChance = 6, levelRequirement = 73, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [27] = {0.80000001192093, 1.2000000476837, 60, 74, 3, 60, 20000, 80, critChance = 6, levelRequirement = 74, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [28] = {0.80000001192093, 1.2000000476837, 60, 75, 3, 60, 20000, 80, critChance = 6, levelRequirement = 75, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [29] = {0.80000001192093, 1.2000000476837, 60, 76, 3, 60, 20000, 80, critChance = 6, levelRequirement = 76, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [30] = {0.80000001192093, 1.2000000476837, 60, 77, 3, 60, 20000, 80, critChance = 6, levelRequirement = 77, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [31] = {0.80000001192093, 1.2000000476837, 60, 78, 3, 60, 20000, 80, critChance = 6, levelRequirement = 78, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [32] = {0.80000001192093, 1.2000000476837, 60, 79, 3, 60, 20000, 80, critChance = 6, levelRequirement = 79, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [33] = {0.80000001192093, 1.2000000476837, 60, 80, 3, 60, 20000, 80, critChance = 6, levelRequirement = 80, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [34] = {0.80000001192093, 1.2000000476837, 60, 81, 3, 60, 20000, 80, critChance = 6, levelRequirement = 81, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [35] = {0.80000001192093, 1.2000000476837, 60, 82, 3, 60, 20000, 80, critChance = 6, levelRequirement = 82, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MonsterShockNovaSideArea"] = {
        name = "Shock Nova",
        hidden = true,
        color = "3",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Casts a shocking ring of lightning which deals damage to monsters it touches. Monsters in the centre of the ring receive no damage.",
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Damage] = true,
            [SkillType.Area] = true,
            [SkillType.Trappable] = true,
            [SkillType.Totemable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Multicastable] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Lightning] = true,
            [SkillType.CanRapidFire] = true,
            [SkillType.AreaSpell] = true,
            [SkillType.Nova] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 0.75,
        baseFlags = {
            area = true,
            spell = true,
            totem = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_lightning_damage",
            "spell_maximum_base_lightning_damage",
            "base_active_skill_totem_level",
            "base_cast_speed_+%",
            "active_skill_area_of_effect_radius_+%_final",
            "base_totem_duration",
            "base_totem_range",
            "is_totem",
            "is_area_damage",
        },
        levels = {
            [1] = {0.5, 1.5, 3, 0, 33, 20000, 80, critChance = 3, levelRequirement = 3, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [2] = {0.5, 1.5, 5, 0, 33, 20000, 80, critChance = 3, levelRequirement = 5, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [3] = {0.5, 1.5, 8, 0, 33, 20000, 80, critChance = 3, levelRequirement = 8, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [4] = {0.5, 1.5, 12, 0, 33, 20000, 80, critChance = 3, levelRequirement = 12, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [5] = {0.5, 1.5, 15, 0, 33, 20000, 80, critChance = 3, levelRequirement = 15, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [6] = {0.5, 1.5, 19, 0, 33, 20000, 80, critChance = 3, levelRequirement = 19, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [7] = {0.5, 1.5, 20, 0, 33, 20000, 80, critChance = 3, levelRequirement = 20, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [8] = {0.5, 1.5, 21, 0, 33, 20000, 80, critChance = 3, levelRequirement = 21, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [9] = {0.5, 1.5, 26, 0, 33, 20000, 80, critChance = 3, levelRequirement = 26, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [10] = {0.5, 1.5, 30, 0, 33, 20000, 80, critChance = 3, levelRequirement = 30, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [11] = {0.5, 1.5, 34, 25, 50, 20000, 80, critChance = 3, levelRequirement = 34, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [12] = {0.5, 1.5, 38, 25, 50, 20000, 80, critChance = 3, levelRequirement = 38, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [13] = {0.5, 1.5, 43, 25, 50, 20000, 80, critChance = 3, levelRequirement = 43, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [14] = {0.5, 1.5, 45, 25, 50, 20000, 80, critChance = 3, levelRequirement = 45, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [15] = {0.5, 1.5, 53, 50, 66, 20000, 80, critChance = 3, levelRequirement = 53, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [16] = {0.5, 1.5, 58, 50, 66, 20000, 80, critChance = 3, levelRequirement = 58, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [17] = {0.5, 1.5, 62, 50, 66, 20000, 80, critChance = 3, levelRequirement = 62, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [18] = {0.5, 1.5, 63, 50, 66, 20000, 80, critChance = 3, levelRequirement = 63, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [19] = {0.5, 1.5, 66, 50, 66, 20000, 80, critChance = 3, levelRequirement = 66, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [20] = {0.5, 1.5, 67, 50, 66, 20000, 80, critChance = 3, levelRequirement = 67, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [21] = {0.5, 1.5, 68, 50, 66, 20000, 80, critChance = 3, levelRequirement = 68, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [22] = {0.5, 1.5, 69, 50, 66, 20000, 80, critChance = 3, levelRequirement = 69, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [23] = {0.5, 1.5, 70, 50, 66, 20000, 80, critChance = 3, levelRequirement = 70, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [24] = {0.5, 1.5, 71, 50, 66, 20000, 80, critChance = 3, levelRequirement = 71, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [25] = {0.5, 1.5, 72, 50, 66, 20000, 80, critChance = 3, levelRequirement = 72, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [26] = {0.5, 1.5, 73, 50, 66, 20000, 80, critChance = 3, levelRequirement = 73, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [27] = {0.5, 1.5, 74, 50, 66, 20000, 80, critChance = 3, levelRequirement = 74, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [28] = {0.5, 1.5, 75, 50, 66, 20000, 80, critChance = 3, levelRequirement = 75, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [29] = {0.5, 1.5, 76, 50, 66, 20000, 80, critChance = 3, levelRequirement = 76, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [30] = {0.5, 1.5, 77, 50, 66, 20000, 80, critChance = 3, levelRequirement = 77, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [31] = {0.5, 1.5, 78, 50, 66, 20000, 80, critChance = 3, levelRequirement = 78, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [32] = {0.5, 1.5, 79, 50, 66, 20000, 80, critChance = 3, levelRequirement = 79, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [33] = {0.5, 1.5, 80, 50, 66, 20000, 80, critChance = 3, levelRequirement = 80, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [34] = {0.5, 1.5, 81, 50, 66, 20000, 80, critChance = 3, levelRequirement = 81, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [35] = {0.5, 1.5, 82, 50, 66, 20000, 80, critChance = 3, levelRequirement = 82, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MonsterSpinestormSideArea"] = {
        name = "Firestorm",
        hidden = true,
        color = "3",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Flaming bolts rain down over the targeted area. They explode when landing, dealing damage to nearby enemies.",
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Damage] = true,
            [SkillType.Area] = true,
            [SkillType.Duration] = true,
            [SkillType.Trappable] = true,
            [SkillType.Totemable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Multicastable] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Fire] = true,
            [SkillType.Cascadable] = true,
            [SkillType.CanRapidFire] = true,
            [SkillType.AreaSpell] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 0.9,
        baseFlags = {
            area = true,
            spell = true,
            duration = true,
            totem = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_physical_damage",
            "spell_maximum_base_physical_damage",
            "base_skill_effect_duration",
            "fire_storm_fireball_delay_ms",
            "base_active_skill_totem_level",
            "base_totem_duration",
            "base_totem_range",
            "active_skill_base_area_of_effect_radius",
            "is_area_damage",
            "is_totem",
        },
        levels = {
            [1] = {0.40000000596046, 0.60000002384186, 2500, 225, 3, 20000, 80, 10, critChance = 5, levelRequirement = 3, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [2] = {0.40000000596046, 0.60000002384186, 2500, 225, 5, 20000, 80, 10, critChance = 5, levelRequirement = 5, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [3] = {0.40000000596046, 0.60000002384186, 2500, 225, 8, 20000, 80, 10, critChance = 5, levelRequirement = 8, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [4] = {0.40000000596046, 0.60000002384186, 2500, 225, 12, 20000, 80, 10, critChance = 5, levelRequirement = 12, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [5] = {0.40000000596046, 0.60000002384186, 2500, 225, 15, 20000, 80, 10, critChance = 5, levelRequirement = 15, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [6] = {0.40000000596046, 0.60000002384186, 2500, 225, 19, 20000, 80, 10, critChance = 5, levelRequirement = 19, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [7] = {0.40000000596046, 0.60000002384186, 2500, 225, 20, 20000, 80, 10, critChance = 5, levelRequirement = 20, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [8] = {0.40000000596046, 0.60000002384186, 2500, 225, 21, 20000, 80, 10, critChance = 5, levelRequirement = 21, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [9] = {0.40000000596046, 0.60000002384186, 2500, 225, 26, 20000, 80, 10, critChance = 5, levelRequirement = 26, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [10] = {0.40000000596046, 0.60000002384186, 2500, 225, 30, 20000, 80, 10, critChance = 5, levelRequirement = 30, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [11] = {0.40000000596046, 0.60000002384186, 2500, 175, 34, 20000, 80, 10, critChance = 5, levelRequirement = 34, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [12] = {0.40000000596046, 0.60000002384186, 2500, 175, 38, 20000, 80, 10, critChance = 5, levelRequirement = 38, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [13] = {0.40000000596046, 0.60000002384186, 2500, 175, 43, 20000, 80, 10, critChance = 5, levelRequirement = 43, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [14] = {0.40000000596046, 0.60000002384186, 3500, 175, 45, 20000, 80, 10, critChance = 5, levelRequirement = 45, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [15] = {0.40000000596046, 0.60000002384186, 3500, 125, 53, 20000, 80, 10, critChance = 5, levelRequirement = 53, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [16] = {0.40000000596046, 0.60000002384186, 3500, 125, 58, 20000, 80, 10, critChance = 5, levelRequirement = 58, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [17] = {0.40000000596046, 0.60000002384186, 3500, 125, 62, 20000, 80, 10, critChance = 5, levelRequirement = 62, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [18] = {0.40000000596046, 0.60000002384186, 3500, 125, 63, 20000, 80, 10, critChance = 5, levelRequirement = 63, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [19] = {0.40000000596046, 0.60000002384186, 3500, 125, 66, 20000, 80, 10, critChance = 5, levelRequirement = 66, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [20] = {0.40000000596046, 0.60000002384186, 3500, 125, 67, 20000, 80, 10, critChance = 5, levelRequirement = 67, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [21] = {0.40000000596046, 0.60000002384186, 3500, 125, 68, 20000, 80, 10, critChance = 5, levelRequirement = 68, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [22] = {0.40000000596046, 0.60000002384186, 3500, 125, 69, 20000, 80, 10, critChance = 5, levelRequirement = 69, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [23] = {0.40000000596046, 0.60000002384186, 3500, 125, 70, 20000, 80, 10, critChance = 5, levelRequirement = 70, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [24] = {0.40000000596046, 0.60000002384186, 3500, 125, 71, 20000, 80, 10, critChance = 5, levelRequirement = 71, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [25] = {0.40000000596046, 0.60000002384186, 3500, 125, 72, 20000, 80, 10, critChance = 5, levelRequirement = 72, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [26] = {0.40000000596046, 0.60000002384186, 3500, 125, 73, 20000, 80, 10, critChance = 5, levelRequirement = 73, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [27] = {0.40000000596046, 0.60000002384186, 3500, 125, 74, 20000, 80, 10, critChance = 5, levelRequirement = 74, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [28] = {0.40000000596046, 0.60000002384186, 3500, 125, 75, 20000, 80, 10, critChance = 5, levelRequirement = 75, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [29] = {0.40000000596046, 0.60000002384186, 3500, 125, 76, 20000, 80, 10, critChance = 5, levelRequirement = 76, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [30] = {0.40000000596046, 0.60000002384186, 3500, 125, 77, 20000, 80, 10, critChance = 5, levelRequirement = 77, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [31] = {0.40000000596046, 0.60000002384186, 3500, 125, 78, 20000, 80, 10, critChance = 5, levelRequirement = 78, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [32] = {0.40000000596046, 0.60000002384186, 3500, 125, 79, 20000, 80, 10, critChance = 5, levelRequirement = 79, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [33] = {0.40000000596046, 0.60000002384186, 3500, 125, 80, 20000, 80, 10, critChance = 5, levelRequirement = 80, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [34] = {0.40000000596046, 0.60000002384186, 3500, 125, 81, 20000, 80, 10, critChance = 5, levelRequirement = 81, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [35] = {0.40000000596046, 0.60000002384186, 3500, 125, 82, 20000, 80, 10, critChance = 5, levelRequirement = 82, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MonsterShockwaveTotemSideArea"] = {
        name = "Shockwave Totem",
        hidden = true,
        color = 4,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Summons a totem that shakes the earth around it, knocking back and damaging nearby enemies",
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Damage] = true,
            [SkillType.Area] = true,
            [SkillType.Trappable] = true,
            [SkillType.Mineable] = true,
            [SkillType.SummonsTotem] = true,
            [SkillType.Multicastable] = true,
            [SkillType.AreaSpell] = true,
            [SkillType.Physical] = true,
            [SkillType.Nova] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 0.6,
        baseFlags = {
            area = true,
            spell = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_physical_damage",
            "spell_maximum_base_physical_damage",
            "knockback_distance_+%",
            "base_cast_speed_+%",
            "active_skill_area_of_effect_radius_+%_final",
            "active_skill_base_area_of_effect_radius",
            "base_skill_is_totemified",
            "global_knockback",
            "is_area_damage",
        },
        levels = {
            [1] = {0.69999998807907, 1.2999999523163, 300, 0, -31, 24, levelRequirement = 3, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [2] = {0.69999998807907, 1.2999999523163, 450, 25, -14, 24, levelRequirement = 34, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [3] = {0.89999997615814, 1.5, 800, 45, 4, 24, levelRequirement = 53, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MonsterEtherealKnivesSideArea"] = {
        name = "Ethereal Knives",
        hidden = true,
        color = "2",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Fires an arc of knives outwards in front of the caster which deal physical damage.",
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Damage] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Totemable] = true,
            [SkillType.Trappable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Multicastable] = true,
            [SkillType.Triggerable] = true,
            [SkillType.CanRapidFire] = true,
            [SkillType.Physical] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 0.6,
        baseFlags = {
            spell = true,
            projectile = true,
            totem = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_physical_damage",
            "spell_maximum_base_physical_damage",
            "base_active_skill_totem_level",
            "number_of_additional_projectiles",
            "skill_physical_damage_%_to_convert_to_chaos",
            "base_totem_duration",
            "base_totem_range",
            "base_is_projectile",
            "is_totem",
            "visual_hit_effect_chaos_is_green",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 3, 9, 50, 20000, 80, critChance = 5, levelRequirement = 3, statInterpolation = {3, 3, 1},  cost = { }, },
            [2] = {0.80000001192093, 1.2000000476837, 5, 9, 50, 20000, 80, critChance = 5, levelRequirement = 5, statInterpolation = {3, 3, 1},  cost = { }, },
            [3] = {0.80000001192093, 1.2000000476837, 8, 9, 50, 20000, 80, critChance = 5, levelRequirement = 8, statInterpolation = {3, 3, 1},  cost = { }, },
            [4] = {0.80000001192093, 1.2000000476837, 10, 9, 50, 20000, 80, critChance = 5, levelRequirement = 10, statInterpolation = {3, 3, 1},  cost = { }, },
            [5] = {0.80000001192093, 1.2000000476837, 12, 9, 50, 20000, 80, critChance = 5, levelRequirement = 12, statInterpolation = {3, 3, 1},  cost = { }, },
            [6] = {0.80000001192093, 1.2000000476837, 14, 9, 50, 20000, 80, critChance = 5, levelRequirement = 14, statInterpolation = {3, 3, 1},  cost = { }, },
            [7] = {0.80000001192093, 1.2000000476837, 17, 9, 50, 20000, 80, critChance = 5, levelRequirement = 17, statInterpolation = {3, 3, 1},  cost = { }, },
            [8] = {0.80000001192093, 1.2000000476837, 20, 9, 50, 20000, 80, critChance = 5, levelRequirement = 20, statInterpolation = {3, 3, 1},  cost = { }, },
            [9] = {0.80000001192093, 1.2000000476837, 24, 9, 50, 20000, 80, critChance = 5, levelRequirement = 24, statInterpolation = {3, 3, 1},  cost = { }, },
            [10] = {0.80000001192093, 1.2000000476837, 30, 9, 50, 20000, 80, critChance = 5, levelRequirement = 30, statInterpolation = {3, 3, 1},  cost = { }, },
            [11] = {0.80000001192093, 1.2000000476837, 31, 9, 50, 20000, 80, critChance = 5, levelRequirement = 31, statInterpolation = {3, 3, 1},  cost = { }, },
            [12] = {0.80000001192093, 1.2000000476837, 36, 9, 50, 20000, 80, critChance = 5, levelRequirement = 36, statInterpolation = {3, 3, 1},  cost = { }, },
            [13] = {0.80000001192093, 1.2000000476837, 41, 9, 50, 20000, 80, critChance = 5, levelRequirement = 41, statInterpolation = {3, 3, 1},  cost = { }, },
            [14] = {0.80000001192093, 1.2000000476837, 44, 9, 50, 20000, 80, critChance = 5, levelRequirement = 44, statInterpolation = {3, 3, 1},  cost = { }, },
            [15] = {0.80000001192093, 1.2000000476837, 51, 9, 50, 20000, 80, critChance = 5, levelRequirement = 51, statInterpolation = {3, 3, 1},  cost = { }, },
            [16] = {0.80000001192093, 1.2000000476837, 52, 9, 50, 20000, 80, critChance = 5, levelRequirement = 52, statInterpolation = {3, 3, 1},  cost = { }, },
            [17] = {0.80000001192093, 1.2000000476837, 57, 9, 50, 20000, 80, critChance = 5, levelRequirement = 57, statInterpolation = {3, 3, 1},  cost = { }, },
            [18] = {0.80000001192093, 1.2000000476837, 60, 9, 50, 20000, 80, critChance = 5, levelRequirement = 60, statInterpolation = {3, 3, 1},  cost = { }, },
            [19] = {0.80000001192093, 1.2000000476837, 65, 9, 50, 20000, 80, critChance = 5, levelRequirement = 65, statInterpolation = {3, 3, 1},  cost = { }, },
            [20] = {0.80000001192093, 1.2000000476837, 66, 9, 50, 20000, 80, critChance = 5, levelRequirement = 66, statInterpolation = {3, 3, 1},  cost = { }, },
            [21] = {0.80000001192093, 1.2000000476837, 67, 9, 50, 20000, 80, critChance = 5, levelRequirement = 67, statInterpolation = {3, 3, 1},  cost = { }, },
            [22] = {0.80000001192093, 1.2000000476837, 68, 9, 50, 20000, 80, critChance = 5, levelRequirement = 68, statInterpolation = {3, 3, 1},  cost = { }, },
            [23] = {0.80000001192093, 1.2000000476837, 69, 9, 50, 20000, 80, critChance = 5, levelRequirement = 69, statInterpolation = {3, 3, 1},  cost = { }, },
            [24] = {0.80000001192093, 1.2000000476837, 70, 9, 50, 20000, 80, critChance = 5, levelRequirement = 70, statInterpolation = {3, 3, 1},  cost = { }, },
            [25] = {0.80000001192093, 1.2000000476837, 71, 9, 50, 20000, 80, critChance = 5, levelRequirement = 71, statInterpolation = {3, 3, 1},  cost = { }, },
            [26] = {0.80000001192093, 1.2000000476837, 72, 9, 50, 20000, 80, critChance = 5, levelRequirement = 72, statInterpolation = {3, 3, 1},  cost = { }, },
            [27] = {0.80000001192093, 1.2000000476837, 73, 9, 50, 20000, 80, critChance = 5, levelRequirement = 73, statInterpolation = {3, 3, 1},  cost = { }, },
            [28] = {0.80000001192093, 1.2000000476837, 74, 9, 50, 20000, 80, critChance = 5, levelRequirement = 74, statInterpolation = {3, 3, 1},  cost = { }, },
            [29] = {0.80000001192093, 1.2000000476837, 75, 9, 50, 20000, 80, critChance = 5, levelRequirement = 75, statInterpolation = {3, 3, 1},  cost = { }, },
            [30] = {0.80000001192093, 1.2000000476837, 76, 9, 50, 20000, 80, critChance = 5, levelRequirement = 76, statInterpolation = {3, 3, 1},  cost = { }, },
            [31] = {0.80000001192093, 1.2000000476837, 77, 9, 50, 20000, 80, critChance = 5, levelRequirement = 77, statInterpolation = {3, 3, 1},  cost = { }, },
            [32] = {0.80000001192093, 1.2000000476837, 78, 9, 50, 20000, 80, critChance = 5, levelRequirement = 78, statInterpolation = {3, 3, 1},  cost = { }, },
            [33] = {0.80000001192093, 1.2000000476837, 79, 9, 50, 20000, 80, critChance = 5, levelRequirement = 79, statInterpolation = {3, 3, 1},  cost = { }, },
            [34] = {0.80000001192093, 1.2000000476837, 80, 9, 50, 20000, 80, critChance = 5, levelRequirement = 80, statInterpolation = {3, 3, 1},  cost = { }, },
            [35] = {0.80000001192093, 1.2000000476837, 81, 9, 50, 20000, 80, critChance = 5, levelRequirement = 81, statInterpolation = {3, 3, 1},  cost = { }, },
            [36] = {0.80000001192093, 1.2000000476837, 82, 9, 50, 20000, 80, critChance = 5, levelRequirement = 82, statInterpolation = {3, 3, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MonsterArcticBreathSideArea"] = {
        name = "Creeping Frost",
        hidden = true,
        color = "3",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Fire an icy projectile that bursts on impact or when reaching the targeted area, dealing area damage and creating a chilling area that deals cold damage over time. This area will creep across the ground towards nearby enemies until its duration expires.",
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Damage] = true,
            [SkillType.Trappable] = true,
            [SkillType.Totemable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Duration] = true,
            [SkillType.Area] = true,
            [SkillType.Multicastable] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Cold] = true,
            [SkillType.ChillingArea] = true,
            [SkillType.CanRapidFire] = true,
            [SkillType.AreaSpell] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 0.8,
        baseFlags = {
            area = true,
            spell = true,
            projectile = true,
            duration = true,
            totem = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_cold_damage",
            "spell_maximum_base_cold_damage",
            "base_skill_effect_duration",
            "base_projectile_speed_+%",
            "base_active_skill_totem_level",
            "base_cast_speed_+%",
            "base_totem_duration",
            "base_totem_range",
            "active_skill_base_area_of_effect_radius",
            "active_skill_base_secondary_area_of_effect_radius",
            "is_totem",
            "base_is_projectile",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 3500, -50, 3, 0, 20000, 80, 15, 15, critChance = 5, levelRequirement = 3, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [2] = {0.80000001192093, 1.2000000476837, 3500, -50, 5, 0, 20000, 80, 15, 15, critChance = 5, levelRequirement = 5, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [3] = {0.80000001192093, 1.2000000476837, 3500, -50, 8, 0, 20000, 80, 15, 15, critChance = 5, levelRequirement = 8, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [4] = {0.80000001192093, 1.2000000476837, 3500, -50, 12, 0, 20000, 80, 15, 15, critChance = 5, levelRequirement = 12, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [5] = {0.80000001192093, 1.2000000476837, 3500, -50, 15, 0, 20000, 80, 15, 15, critChance = 5, levelRequirement = 15, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [6] = {0.80000001192093, 1.2000000476837, 3500, -50, 19, 0, 20000, 80, 15, 15, critChance = 5, levelRequirement = 19, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [7] = {0.80000001192093, 1.2000000476837, 3500, -50, 20, 0, 20000, 80, 15, 15, critChance = 5, levelRequirement = 20, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [8] = {0.80000001192093, 1.2000000476837, 3500, -50, 21, 0, 20000, 80, 15, 15, critChance = 5, levelRequirement = 21, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [9] = {0.80000001192093, 1.2000000476837, 3500, -50, 26, 0, 20000, 80, 15, 15, critChance = 5, levelRequirement = 26, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [10] = {0.80000001192093, 1.2000000476837, 3500, -50, 30, 0, 20000, 80, 15, 15, critChance = 5, levelRequirement = 30, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [11] = {0.80000001192093, 1.2000000476837, 7000, -40, 34, 30, 20000, 80, 15, 15, critChance = 5, levelRequirement = 34, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [12] = {0.80000001192093, 1.2000000476837, 7000, -40, 38, 30, 20000, 80, 15, 15, critChance = 5, levelRequirement = 38, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [13] = {0.80000001192093, 1.2000000476837, 7000, -40, 43, 30, 20000, 80, 15, 15, critChance = 5, levelRequirement = 43, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [14] = {0.80000001192093, 1.2000000476837, 7000, -40, 45, 30, 20000, 80, 15, 15, critChance = 5, levelRequirement = 45, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [15] = {0.80000001192093, 1.2000000476837, 12000, -20, 53, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 53, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [16] = {0.80000001192093, 1.2000000476837, 12000, -20, 58, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 58, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [17] = {0.80000001192093, 1.2000000476837, 12000, -20, 62, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 62, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [18] = {0.80000001192093, 1.2000000476837, 12000, -20, 63, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 63, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [19] = {0.80000001192093, 1.2000000476837, 12000, -20, 66, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 66, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [20] = {0.80000001192093, 1.2000000476837, 12000, -20, 67, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 67, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [21] = {0.80000001192093, 1.2000000476837, 12000, -20, 68, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 68, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [22] = {0.80000001192093, 1.2000000476837, 12000, -20, 69, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 69, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [23] = {0.80000001192093, 1.2000000476837, 12000, -20, 70, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 70, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [24] = {0.80000001192093, 1.2000000476837, 12000, -20, 71, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 71, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [25] = {0.80000001192093, 1.2000000476837, 12000, -20, 72, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 72, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [26] = {0.80000001192093, 1.2000000476837, 12000, -20, 73, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 73, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [27] = {0.80000001192093, 1.2000000476837, 12000, -20, 74, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 74, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [28] = {0.80000001192093, 1.2000000476837, 12000, -20, 75, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 75, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [29] = {0.80000001192093, 1.2000000476837, 12000, -20, 76, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 76, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [30] = {0.80000001192093, 1.2000000476837, 12000, -20, 77, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 77, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [31] = {0.80000001192093, 1.2000000476837, 12000, -20, 78, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 78, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [32] = {0.80000001192093, 1.2000000476837, 12000, -20, 79, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 79, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [33] = {0.80000001192093, 1.2000000476837, 12000, -20, 80, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 80, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [34] = {0.80000001192093, 1.2000000476837, 12000, -20, 81, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 81, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
            [35] = {0.80000001192093, 1.2000000476837, 12000, -20, 82, 55, 20000, 80, 15, 15, critChance = 5, levelRequirement = 82, statInterpolation = {3, 3, 1, 1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MonsterFlameRedSideArea"] = {
        name = "Holy Flame Totem",
        hidden = true,
        color = 4,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Summons a totem that fires a stream of flame at nearby enemies.",
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Damage] = true,
            [SkillType.Trappable] = true,
            [SkillType.Mineable] = true,
            [SkillType.SummonsTotem] = true,
            [SkillType.Fire] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 0.25,
        baseFlags = {
            spell = true,
            projectile = true,
            totem = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_fire_damage",
            "spell_maximum_base_fire_damage",
            "base_active_skill_totem_level",
            "number_of_additional_projectiles",
            "base_cast_speed_+%",
            "base_totem_duration",
            "base_totem_range",
            "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
            "totem_art_variation",
            "base_is_projectile",
            "is_totem",
            "always_pierce",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 3, 2, 0, 20000, 80, -25, -2, levelRequirement = 3, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [2] = {0.80000001192093, 1.2000000476837, 5, 2, 0, 20000, 80, -25, -2, levelRequirement = 5, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [3] = {0.80000001192093, 1.2000000476837, 8, 2, 0, 20000, 80, -25, -2, levelRequirement = 8, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [4] = {0.80000001192093, 1.2000000476837, 12, 2, 0, 20000, 80, -25, -2, levelRequirement = 12, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [5] = {0.80000001192093, 1.2000000476837, 15, 2, 0, 20000, 80, -25, -2, levelRequirement = 15, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [6] = {0.80000001192093, 1.2000000476837, 19, 2, 0, 20000, 80, -25, -2, levelRequirement = 19, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [7] = {0.80000001192093, 1.2000000476837, 20, 2, 0, 20000, 80, -25, -2, levelRequirement = 20, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [8] = {0.80000001192093, 1.2000000476837, 21, 2, 0, 20000, 80, -25, -2, levelRequirement = 21, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [9] = {0.80000001192093, 1.2000000476837, 26, 2, 0, 20000, 80, -25, -2, levelRequirement = 26, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [10] = {0.80000001192093, 1.2000000476837, 30, 2, 0, 20000, 80, -25, -2, levelRequirement = 30, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [11] = {0.80000001192093, 1.2000000476837, 34, 3, 25, 20000, 80, -25, -2, levelRequirement = 34, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [12] = {0.80000001192093, 1.2000000476837, 38, 3, 25, 20000, 80, -25, -2, levelRequirement = 38, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [13] = {0.80000001192093, 1.2000000476837, 43, 3, 25, 20000, 80, -25, -2, levelRequirement = 43, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [14] = {0.80000001192093, 1.2000000476837, 45, 3, 25, 20000, 80, -25, -2, levelRequirement = 45, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [15] = {0.80000001192093, 1.2000000476837, 53, 11, 40, 20000, 80, -25, -2, levelRequirement = 53, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [16] = {0.80000001192093, 1.2000000476837, 58, 11, 40, 20000, 80, -25, -2, levelRequirement = 58, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [17] = {0.80000001192093, 1.2000000476837, 62, 11, 40, 20000, 80, -25, -2, levelRequirement = 62, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [18] = {0.80000001192093, 1.2000000476837, 63, 11, 40, 20000, 80, -25, -2, levelRequirement = 63, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [19] = {0.80000001192093, 1.2000000476837, 66, 11, 40, 20000, 80, -25, -2, levelRequirement = 66, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [20] = {0.80000001192093, 1.2000000476837, 67, 11, 40, 20000, 80, -25, -2, levelRequirement = 67, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [21] = {0.80000001192093, 1.2000000476837, 68, 11, 40, 20000, 80, -25, -2, levelRequirement = 68, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [22] = {0.80000001192093, 1.2000000476837, 69, 11, 40, 20000, 80, -25, -2, levelRequirement = 69, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [23] = {0.80000001192093, 1.2000000476837, 70, 11, 40, 20000, 80, -25, -2, levelRequirement = 70, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [24] = {0.80000001192093, 1.2000000476837, 71, 11, 40, 20000, 80, -25, -2, levelRequirement = 71, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [25] = {0.80000001192093, 1.2000000476837, 72, 11, 40, 20000, 80, -25, -2, levelRequirement = 72, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [26] = {0.80000001192093, 1.2000000476837, 73, 11, 40, 20000, 80, -25, -2, levelRequirement = 73, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [27] = {0.80000001192093, 1.2000000476837, 74, 11, 40, 20000, 80, -25, -2, levelRequirement = 74, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [28] = {0.80000001192093, 1.2000000476837, 75, 11, 40, 20000, 80, -25, -2, levelRequirement = 75, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [29] = {0.80000001192093, 1.2000000476837, 76, 11, 40, 20000, 80, -25, -2, levelRequirement = 76, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [30] = {0.80000001192093, 1.2000000476837, 77, 11, 40, 20000, 80, -25, -2, levelRequirement = 77, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [31] = {0.80000001192093, 1.2000000476837, 78, 11, 40, 20000, 80, -25, -2, levelRequirement = 78, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [32] = {0.80000001192093, 1.2000000476837, 79, 11, 40, 20000, 80, -25, -2, levelRequirement = 79, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [33] = {0.80000001192093, 1.2000000476837, 80, 11, 40, 20000, 80, -25, -2, levelRequirement = 80, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [34] = {0.80000001192093, 1.2000000476837, 81, 11, 40, 20000, 80, -25, -2, levelRequirement = 81, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [35] = {0.80000001192093, 1.2000000476837, 82, 11, 40, 20000, 80, -25, -2, levelRequirement = 82, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MonsterStormCallSideArea"] = {
        name = "Storm Call",
        hidden = true,
        color = "3",
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Sets a marker at a location. After a short duration, lightning strikes the marker, dealing damage around it and causing lightning strikes at any other markers you've cast.",
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Damage] = true,
            [SkillType.Area] = true,
            [SkillType.Duration] = true,
            [SkillType.Trappable] = true,
            [SkillType.Totemable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Multicastable] = true,
            [SkillType.Lightning] = true,
            [SkillType.Cascadable] = true,
            [SkillType.CanRapidFire] = true,
            [SkillType.AreaSpell] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 0.5,
        baseFlags = {
            area = true,
            spell = true,
            duration = true,
            totem = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_lightning_damage",
            "spell_maximum_base_lightning_damage",
            "base_skill_effect_duration",
            "base_active_skill_totem_level",
            "active_skill_area_of_effect_radius_+%_final",
            "base_totem_duration",
            "base_totem_range",
            "is_area_damage",
            "is_totem",
        },
        levels = {
            [1] = {0.5, 1.5, 2500, 3, -31, 20000, 80, critChance = 5, levelRequirement = 3, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [2] = {0.5, 1.5, 2500, 5, -31, 20000, 80, critChance = 5, levelRequirement = 5, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [3] = {0.5, 1.5, 2500, 8, -31, 20000, 80, critChance = 5, levelRequirement = 8, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [4] = {0.5, 1.5, 2500, 12, -31, 20000, 80, critChance = 5, levelRequirement = 12, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [5] = {0.5, 1.5, 2500, 15, -31, 20000, 80, critChance = 5, levelRequirement = 15, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [6] = {0.5, 1.5, 2500, 19, -31, 20000, 80, critChance = 5, levelRequirement = 19, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [7] = {0.5, 1.5, 2500, 20, -31, 20000, 80, critChance = 5, levelRequirement = 20, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [8] = {0.5, 1.5, 2500, 21, -31, 20000, 80, critChance = 5, levelRequirement = 21, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [9] = {0.5, 1.5, 2500, 26, -31, 20000, 80, critChance = 5, levelRequirement = 26, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [10] = {0.5, 1.5, 2500, 30, -31, 20000, 80, critChance = 5, levelRequirement = 30, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [11] = {0.5, 1.5, 2000, 34, -16, 20000, 80, critChance = 5, levelRequirement = 34, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [12] = {0.5, 1.5, 2000, 38, -16, 20000, 80, critChance = 5, levelRequirement = 38, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [13] = {0.5, 1.5, 2000, 43, -16, 20000, 80, critChance = 5, levelRequirement = 43, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [14] = {0.5, 1.5, 2000, 45, -16, 20000, 80, critChance = 5, levelRequirement = 45, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [15] = {0.5, 1.5, 1500, 53, -6, 20000, 80, critChance = 5, levelRequirement = 53, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [16] = {0.5, 1.5, 1500, 58, -6, 20000, 80, critChance = 5, levelRequirement = 58, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [17] = {0.5, 1.5, 1500, 62, -6, 20000, 80, critChance = 5, levelRequirement = 62, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [18] = {0.5, 1.5, 1500, 63, -6, 20000, 80, critChance = 5, levelRequirement = 63, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [19] = {0.5, 1.5, 1500, 66, -6, 20000, 80, critChance = 5, levelRequirement = 66, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [20] = {0.5, 1.5, 1500, 67, -6, 20000, 80, critChance = 5, levelRequirement = 67, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [21] = {0.5, 1.5, 1500, 68, -6, 20000, 80, critChance = 5, levelRequirement = 68, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [22] = {0.5, 1.5, 1500, 69, -6, 20000, 80, critChance = 5, levelRequirement = 69, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [23] = {0.5, 1.5, 1500, 70, -6, 20000, 80, critChance = 5, levelRequirement = 70, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [24] = {0.5, 1.5, 1500, 71, -6, 20000, 80, critChance = 5, levelRequirement = 71, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [25] = {0.5, 1.5, 1500, 72, -6, 20000, 80, critChance = 5, levelRequirement = 72, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [26] = {0.5, 1.5, 1500, 73, -6, 20000, 80, critChance = 5, levelRequirement = 73, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [27] = {0.5, 1.5, 1500, 74, -6, 20000, 80, critChance = 5, levelRequirement = 74, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [28] = {0.5, 1.5, 1500, 75, -6, 20000, 80, critChance = 5, levelRequirement = 75, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [29] = {0.5, 1.5, 1500, 76, -6, 20000, 80, critChance = 5, levelRequirement = 76, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [30] = {0.5, 1.5, 1500, 77, -6, 20000, 80, critChance = 5, levelRequirement = 77, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [31] = {0.5, 1.5, 1500, 78, -6, 20000, 80, critChance = 5, levelRequirement = 78, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [32] = {0.5, 1.5, 1500, 79, -6, 20000, 80, critChance = 5, levelRequirement = 79, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [33] = {0.5, 1.5, 1500, 80, -6, 20000, 80, critChance = 5, levelRequirement = 80, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [34] = {0.5, 1.5, 1500, 81, -6, 20000, 80, critChance = 5, levelRequirement = 81, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
            [35] = {0.5, 1.5, 1500, 82, -6, 20000, 80, critChance = 5, levelRequirement = 82, statInterpolation = {3, 3, 1, 1, 1},  cost = { }, },
        },
    }
    
    La rareza de los objetos arrojados está aumentada un %
    IdMonsterSideAreaBoss
    FamilyMonsterSideAreaBoss
    Domainsmonstruo (3)
    GenerationTypeÚnico (3)
    Req. level1
    Stats
  • monster dropped item rarity +% Min: 0 Max: 0 Global
  • +7 a la cantidad máxima de tótems que puedes invocar
    IdMonsterAdditionalTotems2
    FamilyAdditionalTotems
    Domainsmonstruo (3)
    GenerationTypeÚnico (3)
    Req. level1
    Stats
  • number of additional totems allowed Min: 7 Max: 7 Global
  • monster additional quantity of dropped items in cruel +% [500]
    monster additional quantity of dropped items in merciless +% [1000]
    monster additional rarity of dropped items in cruel +% [750]
    monster additional rarity of dropped items in merciless +% [1500]
    IdMonsterInvasionMercilessDrops2
    FamilyMonsterMercilessDrops
    Domainsmonstruo (3)
    GenerationTypeÚnico (3)
    Req. level1
    Stats
  • monster additional rarity of dropped items in cruel +% Min: 750 Max: 750 Global
  • monster additional quantity of dropped items in cruel +% Min: 500 Max: 500 Global
  • monster additional rarity of dropped items in merciless +% Min: 1500 Max: 1500 Global
  • monster additional quantity of dropped items in merciless +% Min: 1000 Max: 1000 Global
  • monster no map drops [1]
    IdMonsterNoMapDrops
    FamilyMonsterNoMapDrops
    Domainsmonstruo (3)
    GenerationTypeÚnico (3)
    Req. level1
    Stats
  • monster no map drops Min: 1 Max: 1 Global
  • monster is invasion boss [1]
    IdIsInvasionBoss
    FamilyMonsterIsInvasionBoss
    Domainsmonstruo (3)
    GenerationTypeÚnico (3)
    Req. level1
    Stats
  • monster is invasion boss Min: 1 Max: 1 Global
  • kill traps mines and totems on death [1]
    IdMonsterKillTrapsMinesTotemsOnDeath
    FamilyMonsterKillTrapsMinesTotemsOnDeath
    Domainsmonstruo (3)
    GenerationTypeÚnico (3)
    Req. level1
    Stats
  • kill traps mines and totems on death Min: 1 Max: 1 Global
  • level 33 or lower damage +% final [-20]
    level 33 or lower life +% final [-20]
    IdMonsterLifeAndDamageLessBelowLevel33
    FamilyMoreLifeBelowLevelThreshold
    Domainsmonstruo (3)
    GenerationTypeÚnico (3)
    Req. level1
    Stats
  • level 33 or lower life +% final Min: -20 Max: -20 Global
  • level 33 or lower damage +% final Min: -20 Max: -20 Global
  • Craft Tagsresource life damage