바알 세공사 하비리
구조물
떨어지는 아이템 희귀도 % 증가
소환 가능한 토템 최대치 +7
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
Area금단의 방, 금단의 방
Tagsbludgeoning_weapon, bone_armour, bones, 시전, 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
생명력
180%
방어도
+100%
Ailment Threshold
180%
저항
30 30 30 20
Damage
100%
정확도
100%
치명타 확률
+5%
치명타 피해 배율
+130%
Attack Distance
6 ~ 9
Attack Time
1.605 Second
Damage Spread
±20%
경험치
200%
Model Size
160%
Type
ConstructMeleeArmouredBossSideArea
Metadata
ConstructMeleeBossSideArea
레벨
68
생명력
11,580
방어도
57,580
회피
4,739
에너지 보호막
0
Damage
374
주문 피해
374
정확도
290
Attack Time
1.605
경험치
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
엄습하는 서리
치명타 확률: 5%
시전 속도: 0.8 초
대상 지점에 도달하거나 충돌 시 폭발하는 얼음 투사체를 발사하여 범위 피해를 주고 지역을 냉각시켜 지속 냉기 피해를 줍니다. 해당 지역은 지속시간이 끝날 때까지 적들을 찾아 이동합니다.
1127~1690 냉기 피해
20초간 토템 지속
기본 지속시간 12
투사체 갈라짐
이 스킬을 사용하는 토템 1개 소환
시전 속도 55% 증가
투사체 속도 20% 감소
기본 반경 1.5미터
기본 2차 반경 1.5미터
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
동결 파동
치명타 확률: 6%
추가 피해 효율: 125%
시전 속도: 0.65 초
직선 경로 내 적들을 관통하며 일정 확률로 얼리는 얼음 투사체를 발사합니다. 투사체는 빠르게 소멸되며, 완전히 사라지기 전까지 피해량과 동결 확률이 점차 감소합니다.
423.2~634.7 냉기 피해
투사체가 모든 대상 관통
20초간 토템 지속
투사체 3개 추가 발사
이 스킬을 사용하는 토템 1개 소환
시전 속도 60% 증가
투사체 속도 60% 증가
base active skill totem level [68]
base is projectile [1]
base totem range [80]
MonsterFlameRedSideArea
Spell, Projectile, ProjectilesFromUser, Damage, Trappable, Mineable, SummonsTotem, Fire
신성한 화염 토템
추가 피해 효율: 10%
시전 속도: 0.25 초
주변의 적들에게 불줄기를 뿜어내는 토템을 소환합니다.
투사체가 모든 대상 관통
20초간 토템 지속
98.05~147.1 화염 피해
투사체 11개 추가 발사
이 스킬을 사용하는 토템 1개 소환
원형으로 투사체 발사
시전 속도 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
화염구
치명타 확률: 6%
시전 속도: 0.85 초
대상에게 폭발하여 주변의 적들에게 화염 피해를 주는 화염구를 날립니다.
20초간 토템 지속
투사체 갈라짐
355~532.4 화염 피해
투사체 3개 추가 발사
이 스킬을 사용하는 토템 1개 소환
시전 속도 60% 증가
기본 반경 0.9미터
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
충격 폭발
치명타 확률: 3%
시전 속도: 0.75 초
충격을 주는 번개 고리를 만들어 접촉하는 몬스터들에게 피해를 줍니다. 고리의 중앙에 위치한 몬스터들은 아무런 피해를 받지 않습니다.
128.9~386.8 번개 피해
20초간 토템 지속
이 스킬을 사용하는 토템 1개 소환
시전 속도 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
폭풍 부름
치명타 확률: 5%
시전 속도: 0.5 초
원하는 지점을 대상으로 설정합니다. 잠시 후 번개가 대상 지역을 강타하여 주변에 피해를 주고 시전자가 설정한 다른 모든 대상 지역에도 번개가 강타합니다.
344.3~1033 번개 피해
20초간 토템 지속
기본 지속시간 1.5
이 스킬을 사용하는 토템 1개 소환
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
충격파 토템
추가 피해 효율: 50%
시전 속도: 0.6 초
주변 지역을 뒤흔드는 토템을 소환하여 주변의 적들을 밀어내고 피해를 줍니다.
85.89~143.1 물리 피해
명중 시 적을 밀어냄
시전 속도 45% 증가
밀어내기 거리 800% 증가
기본 반경 2.4미터
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
화염 폭풍
치명타 확률: 5%
시전 속도: 0.9 초
대상 지역에 화염의 화살이 쏟아져 폭발하며 주변의 적들에게 화염 피해를 줍니다.
93.09~139.6 물리 피해
20초간 토템 지속
기본 지속시간 3.5
이 스킬을 사용하는 토템 1개 소환
0.13초마다 충돌 1회
기본 반경 1미터
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
천상의 단도
치명타 확률: 5%
시전 속도: 0.6 초
시전자 전방으로 원호 형태로 단도를 던져 물리 피해를 줍니다.
384.8~577.2 물리 피해
20초간 토템 지속
투사체 9개 추가 발사
물리 피해의 50%를 카오스 피해로 전환
이 스킬을 사용하는 토템 1개 소환
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 = { }, },
    },
}
떨어지는 아이템 희귀도 % 증가
IdMonsterSideAreaBoss
FamilyMonsterSideAreaBoss
Domains몬스터 (3)
GenerationType고유 (3)
Req. level1
Stats
  • monster dropped item rarity +% Min: 0 Max: 0 Global
  • 소환 가능한 토템 최대치 +7
    IdMonsterAdditionalTotems2
    FamilyAdditionalTotems
    Domains몬스터 (3)
    GenerationType고유 (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
    Domains몬스터 (3)
    GenerationType고유 (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
    Domains몬스터 (3)
    GenerationType고유 (3)
    Req. level1
    Stats
  • monster no map drops Min: 1 Max: 1 Global
  • kill traps mines and totems on death [1]
    IdMonsterKillTrapsMinesTotemsOnDeath
    FamilyMonsterKillTrapsMinesTotemsOnDeath
    Domains몬스터 (3)
    GenerationType고유 (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
    Domains몬스터 (3)
    GenerationType고유 (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
    바알 세공사 하비리
    구조물
    지역: InvasionBoss
    떨어지는 아이템 희귀도 % 증가
    소환 가능한 토템 최대치 +7
    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 Game최대 생명력 50% 증가
    Tagsbludgeoning_weapon, bone_armour, bones, 시전, 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: 바알 세공사 하비리, 바알 몰락자, 바알 몰락자
  • 생명력
    180%
    방어도
    +100%
    Ailment Threshold
    180%
    저항
    30 30 30 20
    Damage
    100%
    정확도
    100%
    치명타 확률
    +5%
    치명타 피해 배율
    +130%
    Attack Distance
    6 ~ 9
    Attack Time
    1.605 Second
    Damage Spread
    ±20%
    경험치
    200%
    Model Size
    160%
    Type
    ConstructMeleeArmouredBossSideArea
    Metadata
    ConstructMeleeBossSideAreaInvasion
    레벨
    68
    생명력
    11,580
    방어도
    57,580
    회피
    4,739
    에너지 보호막
    0
    Damage
    374
    주문 피해
    374
    정확도
    290
    Attack Time
    1.605
    경험치
    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
    엄습하는 서리
    치명타 확률: 5%
    시전 속도: 0.8 초
    대상 지점에 도달하거나 충돌 시 폭발하는 얼음 투사체를 발사하여 범위 피해를 주고 지역을 냉각시켜 지속 냉기 피해를 줍니다. 해당 지역은 지속시간이 끝날 때까지 적들을 찾아 이동합니다.
    1127~1690 냉기 피해
    20초간 토템 지속
    기본 지속시간 12
    투사체 갈라짐
    이 스킬을 사용하는 토템 1개 소환
    시전 속도 55% 증가
    투사체 속도 20% 감소
    기본 반경 1.5미터
    기본 2차 반경 1.5미터
    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
    동결 파동
    치명타 확률: 6%
    추가 피해 효율: 125%
    시전 속도: 0.65 초
    직선 경로 내 적들을 관통하며 일정 확률로 얼리는 얼음 투사체를 발사합니다. 투사체는 빠르게 소멸되며, 완전히 사라지기 전까지 피해량과 동결 확률이 점차 감소합니다.
    423.2~634.7 냉기 피해
    투사체가 모든 대상 관통
    20초간 토템 지속
    투사체 3개 추가 발사
    이 스킬을 사용하는 토템 1개 소환
    시전 속도 60% 증가
    투사체 속도 60% 증가
    base active skill totem level [68]
    base is projectile [1]
    base totem range [80]
    MonsterFlameRedSideArea
    Spell, Projectile, ProjectilesFromUser, Damage, Trappable, Mineable, SummonsTotem, Fire
    신성한 화염 토템
    추가 피해 효율: 10%
    시전 속도: 0.25 초
    주변의 적들에게 불줄기를 뿜어내는 토템을 소환합니다.
    투사체가 모든 대상 관통
    20초간 토템 지속
    98.05~147.1 화염 피해
    투사체 11개 추가 발사
    이 스킬을 사용하는 토템 1개 소환
    원형으로 투사체 발사
    시전 속도 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
    화염구
    치명타 확률: 6%
    시전 속도: 0.85 초
    대상에게 폭발하여 주변의 적들에게 화염 피해를 주는 화염구를 날립니다.
    20초간 토템 지속
    투사체 갈라짐
    355~532.4 화염 피해
    투사체 3개 추가 발사
    이 스킬을 사용하는 토템 1개 소환
    시전 속도 60% 증가
    기본 반경 0.9미터
    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
    충격 폭발
    치명타 확률: 3%
    시전 속도: 0.75 초
    충격을 주는 번개 고리를 만들어 접촉하는 몬스터들에게 피해를 줍니다. 고리의 중앙에 위치한 몬스터들은 아무런 피해를 받지 않습니다.
    128.9~386.8 번개 피해
    20초간 토템 지속
    이 스킬을 사용하는 토템 1개 소환
    시전 속도 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
    폭풍 부름
    치명타 확률: 5%
    시전 속도: 0.5 초
    원하는 지점을 대상으로 설정합니다. 잠시 후 번개가 대상 지역을 강타하여 주변에 피해를 주고 시전자가 설정한 다른 모든 대상 지역에도 번개가 강타합니다.
    344.3~1033 번개 피해
    20초간 토템 지속
    기본 지속시간 1.5
    이 스킬을 사용하는 토템 1개 소환
    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
    충격파 토템
    추가 피해 효율: 50%
    시전 속도: 0.6 초
    주변 지역을 뒤흔드는 토템을 소환하여 주변의 적들을 밀어내고 피해를 줍니다.
    85.89~143.1 물리 피해
    명중 시 적을 밀어냄
    시전 속도 45% 증가
    밀어내기 거리 800% 증가
    기본 반경 2.4미터
    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
    화염 폭풍
    치명타 확률: 5%
    시전 속도: 0.9 초
    대상 지역에 화염의 화살이 쏟아져 폭발하며 주변의 적들에게 화염 피해를 줍니다.
    93.09~139.6 물리 피해
    20초간 토템 지속
    기본 지속시간 3.5
    이 스킬을 사용하는 토템 1개 소환
    0.13초마다 충돌 1회
    기본 반경 1미터
    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
    천상의 단도
    치명타 확률: 5%
    시전 속도: 0.6 초
    시전자 전방으로 원호 형태로 단도를 던져 물리 피해를 줍니다.
    384.8~577.2 물리 피해
    20초간 토템 지속
    투사체 9개 추가 발사
    물리 피해의 50%를 카오스 피해로 전환
    이 스킬을 사용하는 토템 1개 소환
    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 = { }, },
        },
    }
    
    떨어지는 아이템 희귀도 % 증가
    IdMonsterSideAreaBoss
    FamilyMonsterSideAreaBoss
    Domains몬스터 (3)
    GenerationType고유 (3)
    Req. level1
    Stats
  • monster dropped item rarity +% Min: 0 Max: 0 Global
  • 소환 가능한 토템 최대치 +7
    IdMonsterAdditionalTotems2
    FamilyAdditionalTotems
    Domains몬스터 (3)
    GenerationType고유 (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
    Domains몬스터 (3)
    GenerationType고유 (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
    Domains몬스터 (3)
    GenerationType고유 (3)
    Req. level1
    Stats
  • monster no map drops Min: 1 Max: 1 Global
  • monster is invasion boss [1]
    IdIsInvasionBoss
    FamilyMonsterIsInvasionBoss
    Domains몬스터 (3)
    GenerationType고유 (3)
    Req. level1
    Stats
  • monster is invasion boss Min: 1 Max: 1 Global
  • kill traps mines and totems on death [1]
    IdMonsterKillTrapsMinesTotemsOnDeath
    FamilyMonsterKillTrapsMinesTotemsOnDeath
    Domains몬스터 (3)
    GenerationType고유 (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
    Domains몬스터 (3)
    GenerationType고유 (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
    Edit

    Wikis Content is available under CC BY-NC-SA 3.0 unless otherwise noted.