Viper Napuatzi
Humanoid
Area: Utzaal
monster dropped item rarity +% [1600]
monster slain experience +% [0]
SpectreN
AreaUtzaal
Tagsallows_additional_projectiles, allows_inc_aoe, cultist, human, humanoid, melee, monster_applies_poison, physical_affinity, ranged, red_blood, Unarmed_onhit_audio, very_slow_movement
Life
288%
Energy Shield From Life
10%
Armour
+40%
Evasion
+40%
Resistance
30 30 30 0
Damage
250%
Accuracy
100%
5%
Attack Distance
5 ~ 18
Attack Time
1.38 Second
Damage Spread
±20%
Experience
250%
Model Size
100%
Type
ViperNapuatzi
Metadata
ViperNapuatzi
Level
43
Life
4,090
Armour
717
Evasion Rating
532
Energy Shield
454
Damage
252
Spell Damage
252
Accuracy
946
Attack Time
1.38
Experience
13,198
Minion Life
7,312
Minion Energy Shield
812
Minion Damage
612
Minion Armour
1,126
MeleeAtAnimationSpeedBoss
Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Melee, ProjectilesFromUser
Basic Attack
Base Damage: 202–302
Critical Hit Chance: 5%
Attack Time: 1.38 sec
action attack or cast time uses animation length [1]
projectile uses contact position [1]
skill can fire wand projectiles [1]
use scaled contact offset [1]
MPSViperNapuatziFastProjectile
Spell, Projectile, ProjectilesFromUser, Triggerable, Damage
Critical Hit Chance: 5%
Cast Time: 1 sec
Deals 134 to 201 Physical Damage
Fires an additional Projectile
Poisons Enemies on Hit
base is projectile [1]
distribute projectiles over contact points [1]
monster projectile variation [1038]
projectile uses contact position [1]
spell maximum action distance +% [-20]
use scaled contact offset [1]
GSViperNapuatziSpinSlam
Triggerable, Spell, Damage
Critical Hit Chance: 5%
Cast Time: 1 sec
Cooldown Time: 15 sec
Deals 502.4 to 753.6 Physical Damage
action attack or cast time uses animation length [1]
is area damage [1]
voll slam damage +% final at centre [25]
EGViperNapuatziSnakeSacrifice
Triggerable
Cooldown Time: 30 sec
ViperNapuatziSnakeSpark
Spell, Projectile, ProjectilesFromUser, Damage, Duration, Trappable, Totemable, Mineable, Multicastable, Triggerable, Lightning, Unleashable, Invokable
Critical Hit Chance: 5%
Cast Time: 0.7 sec
Deals 217.7 to 326.6 Physical Damage
25% reduced Projectile Speed
Fires 5 additional Projectiles
Poisons Enemies on Hit
base is projectile [1]
base skill effect duration [10000]
check for targets between initiator and projectile source [1]
distribute projectiles over contact points [1]
projectile uses contact direction [1]
projectile uses contact position [1]
projectiles should collide with flying monsters [1]
spark pathing width bounds [15]
spark projectile absolute angle override deg [50]
spark projectile bounces off walls [1]
use scaled contact offset [1]
GSViperNapuatziFireRain
Triggerable, Spell, Damage
Critical Hit Chance: 5%
Cast Time: 1 sec
Deals 418.7 to 628 Fire Damage
is area damage [1]
GSViperNapuatziChaosRain
Triggerable, Spell, Damage
Critical Hit Chance: 5%
Cast Time: 1 sec
Deals 418.7 to 628 Chaos Damage
is area damage [1]
voll slam damage +% final at centre [25]
GTViperNapuatziFireRain
Triggerable
action attack or cast time uses animation length [1]
GTViperNapuatziChaosRain
Triggerable
action attack or cast time uses animation length [1]
EASViperNapuatziCrissCrossCascade
Cooldown Time: 40 sec
action attack or cast time uses animation length [1]
EAAViperNapuatziDashForward
action attack or cast time uses animation length [1]
EAAViperNapuatziDashBackward
action attack or cast time uses animation length [1]
EAAViperNapuatziDashLeft
action attack or cast time uses animation length [1]
EAAViperNapuatziDashRight
action attack or cast time uses animation length [1]
MAASViperNapuatziCombo
Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Melee, ProjectilesFromUser
Basic Attack
Base Damage: 202–302
Critical Hit Chance: 5%
Attack Time: 1.38 sec
Cooldown Time: 7 sec
50% chance to Poison on Hit
action attack or cast time uses animation length [1]
attack maximum action distance + [15]
projectile uses contact position [1]
skill can fire wand projectiles [1]
use scaled contact offset [1]
MAASViperNapuatziSerpentStrike
Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Melee, ProjectilesFromUser
Basic Attack
Base Damage: 202–302
Critical Hit Chance: 5%
Attack Damage: 80%
Attack Time: 1.38 sec
Cooldown Time: 40 sec
Deals 20% less Attack Damage
action attack or cast time uses animation length [1]
attack maximum action distance + [40]
projectile uses contact position [1]
skill can fire wand projectiles [1]
use scaled contact offset [1]
ViperNapuatziLightningSpear
Attack, Projectile, Lightning
Base Damage: 202–302
Critical Hit Chance: 5%
Attack Damage: 150%
Attack Time: 1.38 sec
Cooldown Time: 10 sec
Deals 50% more Attack Damage
Converts 60% of Physical Damage to Lightning Damage
Shocks Enemies as though dealing 10% more Damage
action attack or cast time uses animation length [1]
attack maximum action distance + [80]
base is projectile [1]
no additional projectiles [1]
projectile uses contact position [1]
use scaled contact offset [1]
GAViperNapuatziSnakeWave
Triggerable, Attack
Base Damage: 202–302
Critical Hit Chance: 5%
Attack Damage: 250%
Attack Time: 1.38 sec
Deals 150% more Attack Damage
Poisons Enemies on Hit
base cannot be blocked [1]
base skill can be avoided by dodge roll [1]
is area damage [1]
CGEViperNapuatziSpear
Spell, Area, Damage, Triggerable, Duration, AreaSpell
Cast Time: 1 sec
Deals 255.9 Base Chaos Damage per second
active skill area of effect radius +% final [-5]
ground caustic art variation [1020]
infinite skill effect duration [1]
EASViperNapuatziCommandSoliders
action attack or cast time uses animation length [1]
EASViperNapuatziProjectileBarrage
Cooldown Time: 17.5 sec
action attack or cast time uses animation length [1]
spell maximum action distance +% [-40]
EASViperNapuatziSnakeRelease
Cooldown Time: 15 sec
action attack or cast time uses animation length [1]
spell maximum action distance +% [-70]
MAASViperNapuatziCombo2
Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Melee, ProjectilesFromUser
Basic Attack
Base Damage: 202–302
Critical Hit Chance: 5%
Attack Damage: 80%
Attack Time: 1.38 sec
Cooldown Time: 7 sec
Deals 20% less Attack Damage
50% chance to Poison on Hit
action attack or cast time uses animation length [1]
attack maximum action distance + [15]
projectile uses contact position [1]
skill can fire wand projectiles [1]
use scaled contact offset [1]
GAViperComboEndSlam
Triggerable, Attack
Base Damage: 202–302
Critical Hit Chance: 5%
Attack Damage: 120%
Attack Time: 1.38 sec
Deals 20% more Attack Damage
50% chance to Poison on Hit
is area damage [1]
voll slam damage +% final at centre [20]
MAASViperNapuatziStepThrust
Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Melee, ProjectilesFromUser
Basic Attack
Base Damage: 202–302
Critical Hit Chance: 5%
Attack Time: 1.38 sec
Cooldown Time: 5 sec
20% chance to Poison on Hit with Attacks
action attack or cast time uses animation length [1]
attack maximum action distance + [10]
projectile uses contact position [1]
skill can fire wand projectiles [1]
use scaled contact offset [1]
MAASViperNapuatziStepSwipes
Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Melee, ProjectilesFromUser
Basic Attack
Base Damage: 202–302
Critical Hit Chance: 5%
Attack Time: 1.38 sec
Cooldown Time: 5 sec
action attack or cast time uses animation length [1]
attack maximum action distance + [10]
projectile uses contact position [1]
skill can fire wand projectiles [1]
use scaled contact offset [1]
MAASViperNapuatziDashThrust
Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Melee, ProjectilesFromUser
Basic Attack
Base Damage: 202–302
Critical Hit Chance: 5%
Attack Damage: 70%
Attack Time: 1.38 sec
Cooldown Time: 5 sec
Deals 30% less Attack Damage
action attack or cast time uses animation length [1]
attack maximum action distance + [0]
projectile uses contact position [1]
skill can fire wand projectiles [1]
use scaled contact offset [1]
MPSViperNapuatziPoisonSpray
Spell, Projectile, ProjectilesFromUser, Triggerable, Damage
Critical Hit Chance: 5%
Cast Time: 1 sec
Deals 100.5 to 150.7 Physical Damage
Poisons Enemies on Hit
base is projectile [1]
monster projectile variation [1357]
projectile ballistic angle from reference event [1]
projectile spread radius [4]
CGEViperNapuatziGasGround
Spell, Area, Damage, Triggerable, Duration, AreaSpell
Cast Time: 1 sec
Deals 174.5 Base Chaos Damage per second
active skill area of effect radius +% final [-40]
base skill effect duration [6000]
ground caustic art variation [1023]
EASViperNapuatziDashForward
Cooldown Time: 5 sec
action attack or cast time uses animation length [1]
EASViperNapuatziDashBackward
Cooldown Time: 5 sec
action attack or cast time uses animation length [1]
EASViperNapuatziDashLeft
Cooldown Time: 5 sec
action attack or cast time uses animation length [1]
EASViperNapuatziDashRight
Cooldown Time: 5 sec
action attack or cast time uses animation length [1]
MAASViperNapuatziJumpStab
Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Melee, ProjectilesFromUser
Basic Attack
Base Damage: 202–302
Critical Hit Chance: 5%
Attack Time: 1.38 sec
Cooldown Time: 5 sec
action attack or cast time uses animation length [1]
attack maximum action distance + [0]
projectile uses contact position [1]
skill can fire wand projectiles [1]
use scaled contact offset [1]
MAASViperNapuatziJumpStabMoving
Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Melee, ProjectilesFromUser
Basic Attack
Base Damage: 202–302
Critical Hit Chance: 5%
Attack Time: 1.38 sec
Cooldown Time: 5 sec
action attack or cast time uses animation length [1]
attack maximum action distance + [-10]
projectile uses contact position [1]
skill can fire wand projectiles [1]
use scaled contact offset [1]
EAAViperNapuatziCycloneEndNoTurn
action attack or cast time uses animation length [1]
action do not face target [1]
EAAViperNapuatziCycloneEndTurn
action attack or cast time uses animation length [1]
action do not face target [1]
MAASViperNapuatziStepSweep
Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Melee, ProjectilesFromUser
Basic Attack
Base Damage: 202–302
Critical Hit Chance: 5%
Attack Time: 1.38 sec
Cooldown Time: 5 sec
action attack or cast time uses animation length [1]
attack maximum action distance + [10]
projectile uses contact position [1]
skill can fire wand projectiles [1]
use scaled contact offset [1]
MPSViperNapuatziProjectileBarrage
Spell, Projectile, ProjectilesFromUser, Triggerable, Damage
Critical Hit Chance: 5%
Cast Time: 1 sec
Deals 100.5 to 150.7 Physical Damage
Fires 10 additional Projectiles
Poisons Enemies on Hit
base is projectile [1]
distribute projectiles over contact points [1]
monster projectile variation [1038]
projectile uses contact position [1]
spell maximum action distance +% [-20]
use scaled contact offset [1]

Object Type

version 2
extends "Metadata/Monsters/Monster"
extends "Metadata/Monsters/BossBase"

StateMachine
{
	define_shared_state =
	"
		emerging;
		spear_visible = 1;
		invisible_after_death;
		commands_left;
		float_epk;
		skip_death;
		collidable = 1;
	"

	define_shared_timer = "combat_style_cooldown;"

	on_or_create_state_collidable_1 = "MakeCollidable();"
	on_or_create_state_collidable_0 = "RemoveCollidability();"
}

Functions
{
	fix_orientation =
	"
		AddOnActionEnd(
		{
			SetOrientation( GetOrientation() + arg1, false, true );
			PlayAnimationType( Idle, 1.0, 0, 0 );
		}, true );
	"
}

Actor
{
	basic_action = "ChangeToStance3"
	basic_action = "ChangeToStance4"
}

Stats
{
	set_monster_delay_item_drops_millis = 4800
}

BaseEvents
{
	on_construction_complete = "globals.viperboss = this;"
}

Preload
{
	preload_animated_object = "Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/ao/ViperAssembleAudio.ao"
	preload_animated_object = "Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/ao/ViperShieldsUpAudio.ao"
	preload_animated_object = "Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/ao/ViperChargeAudio.ao"
	preload_animated_object = "Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/ao/ViperDeathAudio.ao"
	preload_animated_object = "Metadata/Terrain/Gallows/Act3/3_14/Objects/BossFormationHeightStart.ao"
	preload_animated_object = "Metadata/Terrain/Gallows/Act3/3_14/Objects/BossFormationHeightLeftSideIn.ao"
	preload_animated_object = "Metadata/Terrain/Gallows/Act3/3_14/Objects/BossFormationHeightRightSideIn.ao"
	preload_animated_object = "Metadata/Terrain/Gallows/Act3/3_14/Objects/BossFormationHeightBothSidesIn.ao"
	preload_animated_object = "Metadata/Monsters/VaalMonsters/ViperNapuatzi/Objects/PlantedSpear.ao"
	preload_animated_object = "Metadata/Monsters/VaalMonsters/ViperNapuatzi/Objects/LegionObelisk.ao"
	preload_animated_object = "Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/ao/lance_hell/buff_beam.ao"
}

Object Type Codes

version 2
extends "Metadata/Monsters/Monster"
extends "Metadata/Monsters/BossBase"

StateMachine
{
	on_or_create_state_spear_visible_0 = "RemoveAttachedObjectFromBones( R_Weapon );"

	on_state_spear_visible_1 =
	"
		AddAttached( 'Metadata/Monsters/VaalMonsters/ViperNapuatzi/attachments/ViperNapuatziSpear.ao', R_Weapon );
		this.viper_spear = GetAttachedAOByType( 'Metadata/Monsters/VaalMonsters/ViperNapuatzi/attachments/ViperNapuatziSpear.ao' );
		this.viper_spear.PlayAnimationEx( this.CurrentAnimationName(), begin_percent:this.GetCurrentAnimationPosition( true ) );
	"

	on_or_create_state_invisible_after_death_1 =
	"
		DisableRendering();
		SetProximityTriggerRadius( 150 );
	"
}

Preload
{
	preload_environment = "LegionLeagueWorld"
	preload_environment = "LegionLeagueWorldBattle"
}

Render
{
	use_ao_lights = true
}

ProximityTrigger
{
	radius = 0
	condition = "players"
	on_triggered = "DisableRendering();"
}

Animated
{
	on_end_caster_snake_release_01 = "PlayCharacterAudioEvent( ViperNapuatziSnakeSkillResponse );"
}

/* ------------------------------------------------------------------------------------------------------------------- */
/* Lance Hell - Commands soldiers to attack as a section, multiple times in sequence */
/* ------------------------------------------------------------------------------------------------------------------- */

StateMachine
{
	on_or_create_state_float_epk_1 = "AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/epk/lance_hell/viper_buff.epk' );"
	on_state_float_epk_0 = "RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/epk/lance_hell/viper_buff.epk' );"
}
-- src\Data\Spectres.lua
minions["Metadata/Monsters/VaalMonsters/ViperNapuatzi/ViperNapuatzi"] = {
    name = "Viper Napuatzi",
    life = 2.88,
    energyShield = 0.1,
    fireResist = 0,
    coldResist = 0,
    lightningResist = 0,
    chaosResist = 0,
    damage = 2.5,
    damageSpread = 0.2,
    attackTime = 1.38,
    attackRange = 18,
    accuracy = 1,
    skillList = {
        "MeleeAtAnimationSpeedBoss",
        "MAASViperNapuatziCombo",
        "MAASViperNapuatziSerpentStrike",
        "MAASViperNapuatziCombo2",
        "MAASViperNapuatziStepThrust",
        "MAASViperNapuatziStepSwipes",
        "MAASViperNapuatziDashThrust",
        "MAASViperNapuatziJumpStab",
        "MAASViperNapuatziJumpStabMoving",
        "MAASViperNapuatziStepSweep",
        "MPSViperNapuatziFastProjectile",
        "ViperNapuatziLightningSpear",
        "MPSViperNapuatziPoisonSpray",
        "MPSViperNapuatziProjectileBarrage",
        "CGEViperNapuatziSpear",
        "CGEViperNapuatziGasGround",
        "GSViperNapuatziSpinSlam",
        "GSViperNapuatziFireRain",
        "GSViperNapuatziChaosRain",
        "GAViperNapuatziSnakeWave",
        "GAViperComboEndSlam",
        "EASViperNapuatziCrissCrossCascade",
        "EAAViperNapuatziDashForward",
        "EAAViperNapuatziDashBackward",
        "EAAViperNapuatziDashLeft",
        "EAAViperNapuatziDashRight",
        "EASViperNapuatziCommandSoliders",
        "EASViperNapuatziProjectileBarrage",
        "EASViperNapuatziSnakeRelease",
        "EASViperNapuatziDashForward",
        "EASViperNapuatziDashBackward",
        "EASViperNapuatziDashLeft",
        "EASViperNapuatziDashRight",
        "EAAViperNapuatziCycloneEndNoTurn",
        "EAAViperNapuatziCycloneEndTurn",
        "EGViperNapuatziSnakeSacrifice",
        "GTViperNapuatziFireRain",
        "GTViperNapuatziChaosRain",
        "ViperNapuatziSnakeSpark",
    },
    modList = {
    },
}
-- src\Data\Skills\spectre.lua
skills["MeleeAtAnimationSpeedBoss"] = {
    name = "Basic Attack",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Attack] = true,
        [SkillType.RangedAttack] = true,
        [SkillType.MirageArcherCanUse] = true,
        [SkillType.Projectile] = true,
        [SkillType.MeleeSingleTarget] = true,
        [SkillType.Melee] = true,
        [SkillType.ProjectilesFromUser] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        melee = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "skill_can_fire_arrows",
        "skill_can_fire_wand_projectiles",
        "action_attack_or_cast_time_uses_animation_length",
        "projectile_uses_contact_position",
        "use_scaled_contact_offset",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MAASViperNapuatziCombo"] = {
    name = "Basic Attack",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Attack] = true,
        [SkillType.RangedAttack] = true,
        [SkillType.MirageArcherCanUse] = true,
        [SkillType.Projectile] = true,
        [SkillType.MeleeSingleTarget] = true,
        [SkillType.Melee] = true,
        [SkillType.ProjectilesFromUser] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        melee = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "attack_maximum_action_distance_+",
        "base_chance_to_poison_on_hit_%",
        "skill_can_fire_arrows",
        "skill_can_fire_wand_projectiles",
        "action_attack_or_cast_time_uses_animation_length",
        "projectile_uses_contact_position",
        "use_scaled_contact_offset",
    },
    levels = {
        [1] = {15, 50, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MAASViperNapuatziSerpentStrike"] = {
    name = "Basic Attack",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Attack] = true,
        [SkillType.RangedAttack] = true,
        [SkillType.MirageArcherCanUse] = true,
        [SkillType.Projectile] = true,
        [SkillType.MeleeSingleTarget] = true,
        [SkillType.Melee] = true,
        [SkillType.ProjectilesFromUser] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        melee = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "attack_maximum_action_distance_+",
        "skill_can_fire_arrows",
        "skill_can_fire_wand_projectiles",
        "action_attack_or_cast_time_uses_animation_length",
        "projectile_uses_contact_position",
        "use_scaled_contact_offset",
    },
    levels = {
        [1] = {40, baseMultiplier = 0.8, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MAASViperNapuatziCombo2"] = {
    name = "Basic Attack",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Attack] = true,
        [SkillType.RangedAttack] = true,
        [SkillType.MirageArcherCanUse] = true,
        [SkillType.Projectile] = true,
        [SkillType.MeleeSingleTarget] = true,
        [SkillType.Melee] = true,
        [SkillType.ProjectilesFromUser] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        melee = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "attack_maximum_action_distance_+",
        "base_chance_to_poison_on_hit_%",
        "skill_can_fire_arrows",
        "skill_can_fire_wand_projectiles",
        "action_attack_or_cast_time_uses_animation_length",
        "projectile_uses_contact_position",
        "use_scaled_contact_offset",
    },
    levels = {
        [1] = {15, 50, baseMultiplier = 0.8, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MAASViperNapuatziStepThrust"] = {
    name = "Basic Attack",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Attack] = true,
        [SkillType.RangedAttack] = true,
        [SkillType.MirageArcherCanUse] = true,
        [SkillType.Projectile] = true,
        [SkillType.MeleeSingleTarget] = true,
        [SkillType.Melee] = true,
        [SkillType.ProjectilesFromUser] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        melee = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "attack_maximum_action_distance_+",
        "chance_to_poison_on_hit_with_attacks_%",
        "skill_can_fire_arrows",
        "skill_can_fire_wand_projectiles",
        "action_attack_or_cast_time_uses_animation_length",
        "projectile_uses_contact_position",
        "use_scaled_contact_offset",
    },
    levels = {
        [1] = {10, 20, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MAASViperNapuatziStepSwipes"] = {
    name = "Basic Attack",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Attack] = true,
        [SkillType.RangedAttack] = true,
        [SkillType.MirageArcherCanUse] = true,
        [SkillType.Projectile] = true,
        [SkillType.MeleeSingleTarget] = true,
        [SkillType.Melee] = true,
        [SkillType.ProjectilesFromUser] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        melee = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "attack_maximum_action_distance_+",
        "skill_can_fire_arrows",
        "skill_can_fire_wand_projectiles",
        "action_attack_or_cast_time_uses_animation_length",
        "projectile_uses_contact_position",
        "use_scaled_contact_offset",
    },
    levels = {
        [1] = {10, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MAASViperNapuatziDashThrust"] = {
    name = "Basic Attack",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Attack] = true,
        [SkillType.RangedAttack] = true,
        [SkillType.MirageArcherCanUse] = true,
        [SkillType.Projectile] = true,
        [SkillType.MeleeSingleTarget] = true,
        [SkillType.Melee] = true,
        [SkillType.ProjectilesFromUser] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        melee = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "attack_maximum_action_distance_+",
        "skill_can_fire_arrows",
        "skill_can_fire_wand_projectiles",
        "action_attack_or_cast_time_uses_animation_length",
        "projectile_uses_contact_position",
        "use_scaled_contact_offset",
    },
    levels = {
        [1] = {0, baseMultiplier = 0.7, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MAASViperNapuatziJumpStab"] = {
    name = "Basic Attack",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Attack] = true,
        [SkillType.RangedAttack] = true,
        [SkillType.MirageArcherCanUse] = true,
        [SkillType.Projectile] = true,
        [SkillType.MeleeSingleTarget] = true,
        [SkillType.Melee] = true,
        [SkillType.ProjectilesFromUser] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        melee = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "attack_maximum_action_distance_+",
        "skill_can_fire_arrows",
        "skill_can_fire_wand_projectiles",
        "action_attack_or_cast_time_uses_animation_length",
        "projectile_uses_contact_position",
        "use_scaled_contact_offset",
    },
    levels = {
        [1] = {0, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MAASViperNapuatziJumpStabMoving"] = {
    name = "Basic Attack",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Attack] = true,
        [SkillType.RangedAttack] = true,
        [SkillType.MirageArcherCanUse] = true,
        [SkillType.Projectile] = true,
        [SkillType.MeleeSingleTarget] = true,
        [SkillType.Melee] = true,
        [SkillType.ProjectilesFromUser] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        melee = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "attack_maximum_action_distance_+",
        "skill_can_fire_arrows",
        "skill_can_fire_wand_projectiles",
        "action_attack_or_cast_time_uses_animation_length",
        "projectile_uses_contact_position",
        "use_scaled_contact_offset",
    },
    levels = {
        [1] = {-10, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MAASViperNapuatziStepSweep"] = {
    name = "Basic Attack",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Attack] = true,
        [SkillType.RangedAttack] = true,
        [SkillType.MirageArcherCanUse] = true,
        [SkillType.Projectile] = true,
        [SkillType.MeleeSingleTarget] = true,
        [SkillType.Melee] = true,
        [SkillType.ProjectilesFromUser] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        melee = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "attack_maximum_action_distance_+",
        "skill_can_fire_arrows",
        "skill_can_fire_wand_projectiles",
        "action_attack_or_cast_time_uses_animation_length",
        "projectile_uses_contact_position",
        "use_scaled_contact_offset",
    },
    levels = {
        [1] = {10, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MPSViperNapuatziFastProjectile"] = {
    name = "MPSViperNapuatziFastProjectile",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Projectile] = true,
        [SkillType.ProjectilesFromUser] = true,
        [SkillType.Triggerable] = true,
        [SkillType.Damage] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        spell = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_minimum_base_physical_damage",
        "spell_maximum_base_physical_damage",
        "monster_projectile_variation",
        "number_of_additional_projectiles",
        "spell_maximum_action_distance_+%",
        "base_is_projectile",
        "projectile_uses_contact_position",
        "use_scaled_contact_offset",
        "global_poison_on_hit",
        "distribute_projectiles_over_contact_points",
    },
    levels = {
        [1] = {0.80000001192093, 1.2000000476837, 1038, 1, -20, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["ViperNapuatziLightningSpear"] = {
    name = "ViperNapuatziLightningSpear",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Attack] = true,
        [SkillType.Projectile] = true,
        [SkillType.Lightning] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "active_skill_base_physical_damage_%_to_convert_to_lightning",
        "active_skill_shock_as_though_damage_+%_final",
        "attack_maximum_action_distance_+",
        "base_is_projectile",
        "projectile_uses_contact_position",
        "use_scaled_contact_offset",
        "action_attack_or_cast_time_uses_animation_length",
        "no_additional_projectiles",
    },
    levels = {
        [1] = {60, 10, 80, baseMultiplier = 1.5, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MPSViperNapuatziPoisonSpray"] = {
    name = "MPSViperNapuatziPoisonSpray",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Projectile] = true,
        [SkillType.ProjectilesFromUser] = true,
        [SkillType.Triggerable] = true,
        [SkillType.Damage] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        spell = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_minimum_base_physical_damage",
        "spell_maximum_base_physical_damage",
        "monster_projectile_variation",
        "projectile_spread_radius",
        "base_is_projectile",
        "global_poison_on_hit",
        "projectile_ballistic_angle_from_reference_event",
    },
    levels = {
        [1] = {0.80000001192093, 1.2000000476837, 1357, 4, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MPSViperNapuatziProjectileBarrage"] = {
    name = "MPSViperNapuatziProjectileBarrage",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Projectile] = true,
        [SkillType.ProjectilesFromUser] = true,
        [SkillType.Triggerable] = true,
        [SkillType.Damage] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        spell = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_minimum_base_physical_damage",
        "spell_maximum_base_physical_damage",
        "monster_projectile_variation",
        "number_of_additional_projectiles",
        "spell_maximum_action_distance_+%",
        "base_is_projectile",
        "projectile_uses_contact_position",
        "use_scaled_contact_offset",
        "global_poison_on_hit",
        "distribute_projectiles_over_contact_points",
    },
    levels = {
        [1] = {0.80000001192093, 1.2000000476837, 1038, 10, -20, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["CGEViperNapuatziSpear"] = {
    name = "CGEViperNapuatziSpear",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Area] = true,
        [SkillType.Damage] = true,
        [SkillType.Triggerable] = true,
        [SkillType.Duration] = true,
        [SkillType.AreaSpell] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        area = true,
        spell = true,
        duration = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "base_chaos_damage_to_deal_per_minute",
        "active_skill_area_of_effect_radius_+%_final",
        "ground_caustic_art_variation",
        "infinite_skill_effect_duration",
    },
    levels = {
        [1] = {1, -5, 1020, levelRequirement = 1, statInterpolation = {3},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["CGEViperNapuatziGasGround"] = {
    name = "CGEViperNapuatziGasGround",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Area] = true,
        [SkillType.Damage] = true,
        [SkillType.Triggerable] = true,
        [SkillType.Duration] = true,
        [SkillType.AreaSpell] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        area = true,
        spell = true,
        duration = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "base_chaos_damage_to_deal_per_minute",
        "active_skill_area_of_effect_radius_+%_final",
        "ground_caustic_art_variation",
        "base_skill_effect_duration",
    },
    levels = {
        [1] = {1, -40, 1023, 6000, levelRequirement = 1, statInterpolation = {3},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["GSViperNapuatziSpinSlam"] = {
    name = "GSViperNapuatziSpinSlam",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Spell] = true,
        [SkillType.Damage] = true,
    },
    statDescriptionScope = "geometry_spell",
    castTime = 1,
    baseFlags = {
        spell = true,
        area = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_minimum_base_physical_damage",
        "spell_maximum_base_physical_damage",
        "voll_slam_damage_+%_final_at_centre",
        "is_area_damage",
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {0.80000001192093, 1.2000000476837, 25, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["GSViperNapuatziFireRain"] = {
    name = "GSViperNapuatziFireRain",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Spell] = true,
        [SkillType.Damage] = true,
    },
    statDescriptionScope = "geometry_spell",
    castTime = 1,
    baseFlags = {
        spell = true,
        area = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_minimum_base_fire_damage",
        "spell_maximum_base_fire_damage",
        "is_area_damage",
    },
    levels = {
        [1] = {0.80000001192093, 1.2000000476837, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["GSViperNapuatziChaosRain"] = {
    name = "GSViperNapuatziChaosRain",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Spell] = true,
        [SkillType.Damage] = true,
    },
    statDescriptionScope = "geometry_spell",
    castTime = 1,
    baseFlags = {
        spell = true,
        area = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_minimum_base_chaos_damage",
        "spell_maximum_base_chaos_damage",
        "voll_slam_damage_+%_final_at_centre",
        "is_area_damage",
    },
    levels = {
        [1] = {0.80000001192093, 1.2000000476837, 25, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["GAViperNapuatziSnakeWave"] = {
    name = "GAViperNapuatziSnakeWave",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Attack] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        area = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "is_area_damage",
        "global_poison_on_hit",
        "base_skill_can_be_avoided_by_dodge_roll",
        "base_cannot_be_blocked",
    },
    levels = {
        [1] = {baseMultiplier = 2.5, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["GAViperComboEndSlam"] = {
    name = "GAViperComboEndSlam",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Attack] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        area = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "base_chance_to_poison_on_hit_%",
        "voll_slam_damage_+%_final_at_centre",
        "is_area_damage",
    },
    levels = {
        [1] = {50, 20, baseMultiplier = 1.2, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EASViperNapuatziCrissCrossCascade"] = {
    name = "EASViperNapuatziCrissCrossCascade",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EAAViperNapuatziDashForward"] = {
    name = "EAAViperNapuatziDashForward",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EAAViperNapuatziDashBackward"] = {
    name = "EAAViperNapuatziDashBackward",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EAAViperNapuatziDashLeft"] = {
    name = "EAAViperNapuatziDashLeft",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EAAViperNapuatziDashRight"] = {
    name = "EAAViperNapuatziDashRight",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EASViperNapuatziCommandSoliders"] = {
    name = "EASViperNapuatziCommandSoliders",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EASViperNapuatziProjectileBarrage"] = {
    name = "EASViperNapuatziProjectileBarrage",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_maximum_action_distance_+%",
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {-40, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EASViperNapuatziSnakeRelease"] = {
    name = "EASViperNapuatziSnakeRelease",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_maximum_action_distance_+%",
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {-70, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EASViperNapuatziDashForward"] = {
    name = "EASViperNapuatziDashForward",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EASViperNapuatziDashBackward"] = {
    name = "EASViperNapuatziDashBackward",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EASViperNapuatziDashLeft"] = {
    name = "EASViperNapuatziDashLeft",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EASViperNapuatziDashRight"] = {
    name = "EASViperNapuatziDashRight",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EAAViperNapuatziCycloneEndNoTurn"] = {
    name = "EAAViperNapuatziCycloneEndNoTurn",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "action_attack_or_cast_time_uses_animation_length",
        "action_do_not_face_target",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EAAViperNapuatziCycloneEndTurn"] = {
    name = "EAAViperNapuatziCycloneEndTurn",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "action_attack_or_cast_time_uses_animation_length",
        "action_do_not_face_target",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EGViperNapuatziSnakeSacrifice"] = {
    name = "EGViperNapuatziSnakeSacrifice",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["GTViperNapuatziFireRain"] = {
    name = "GTViperNapuatziFireRain",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["GTViperNapuatziChaosRain"] = {
    name = "GTViperNapuatziChaosRain",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["ViperNapuatziSnakeSpark"] = {
    name = "ViperNapuatziSnakeSpark",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Projectile] = true,
        [SkillType.ProjectilesFromUser] = true,
        [SkillType.Damage] = true,
        [SkillType.Duration] = true,
        [SkillType.Trappable] = true,
        [SkillType.Totemable] = true,
        [SkillType.Mineable] = true,
        [SkillType.Multicastable] = true,
        [SkillType.Triggerable] = true,
        [SkillType.Lightning] = true,
        [SkillType.Unleashable] = true,
        [SkillType.Invokable] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 0.7,
    baseFlags = {
        spell = true,
        projectile = true,
        duration = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_minimum_base_physical_damage",
        "spell_maximum_base_physical_damage",
        "base_skill_effect_duration",
        "spark_pathing_width_bounds",
        "spark_projectile_absolute_angle_override_deg",
        "base_projectile_speed_+%",
        "number_of_additional_projectiles",
        "base_is_projectile",
        "projectiles_should_collide_with_flying_monsters",
        "projectile_uses_contact_position",
        "projectile_uses_contact_direction",
        "check_for_targets_between_initiator_and_projectile_source",
        "spark_projectile_bounces_off_walls",
        "global_poison_on_hit",
        "use_scaled_contact_offset",
        "distribute_projectiles_over_contact_points",
    },
    levels = {
        [1] = {0.80000001192093, 1.2000000476837, 10000, 15, 50, -25, 5, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
    },
}
monster dropped item rarity +% [1600]
monster slain experience +% [0]
FamilyMonsterActBoss
DomainsMonster (3)
GenerationTypeUnique (3)
Req. level1
Stats
  • monster slain experience +% Min: 0 Max: 0 Global
  • monster dropped item rarity +% Min: 1600 Max: 1600 Global
  • keyval
    StateMachine./*,
    StateMachine.boss_life_bar - controls when to show the big life bar (also requires the checkbox in MonsterVarieties to be checked)
    StateMachine.0: Life bar is hidden
    StateMachine.1: Life bar is visible, will hide on death
    StateMachine.dont_hide_lifebar_on_unaggro - controls whether the boss life bar should be hidden when the boss unaggros
    StateMachine.0: Life bar is hidden after a short duration when the boss loses aggro
    StateMachine.1: Life bar remains visible the entire time, can still be controlled by setting the disable_life_bar state
    StateMachine.show_life_bar_when_in_range - delay the life bar from showing up, until the boss is on screen (for wild bosses)
    StateMachine.0: Life bar behaves as normal
    StateMachine.1: Life bar initially only shows up when a player can see the boss on screen, this doesn't make it get removed if the player goes off screen though
    StateMachine.hidden - replaces the Unaggro+hidden_monster combo, and optionally pauses delirium fog
    StateMachine.0: Make aggro and remove hidden monster buff
    StateMachine.1: Unaggro and add hidden monster buff
    StateMachine.2: Unaggro, add hidden monster buff and pause delirium fog
    StateMachine.light - controls the boss point light, attaches to head_light_attachment if it exists (otherwise uses the default)
    StateMachine.0: Light off, handles the fade out
    StateMachine.1: Light on, handles the fade in
    StateMachine.introsequence - for bosses that are doing something before you rudely interrupt them
    StateMachine.boss uses the ChangeToStance1BossFightStart granted effect for this, which is added through the actor component in here
    StateMachine.0: no intro sequence
    StateMachine.1: boss starts off in stance2, then does change to stance1 when a proximity trigger is triggered
    StateMachine.intro_zoom - for bosses that should have the camera zoom out during the intro
    StateMachine.0: no zoom
    StateMachine.1: zoom enabled, with default values. These can be overridden in the monsters ots.
    StateMachine.intro_pan - for bosses that should have the camera pan towards them during the intro
    StateMachine.0: no pan
    StateMachine.1: pan enabled, with default values. These can be overridden in the monsters ots.
    StateMachine.use_offset_camera_controller - if this is set to 1, the boss will spawn and use a specific object as the zoom/pan center point
    StateMachine.The location of this object needs to be set by the boss too, if it isn't you will get warning message
    StateMachine.See GreatWhiteOne (shark boss) as an example, but all you really need is to set the state to 1 and move the object after it spawns
    StateMachine.0: use self as zoom/pan origin
    StateMachine.1: use a new object as the zoom/pan origin
    StateMachine.door_type - defaults to 0 for no door (or no boss control over door), other values are related to specific door types
    StateMachine.When used, also need to do 'set_telepad_indexx' in the monsters ots (BaseEvents), where x is the telepad index
    StateMachine.0: disable telepad, but only if a telepad index has been set
    StateMachine.1: force field door, forcefield blocks entrance on boss aggro, is removed on boss death (requires Metadata/MiscellaneousObjects/BossForceFieldDoor.ot in arena)
    StateMachine.2: prisoner boss door, closed on fight start, doesn't reopen afterwards (Metadata/Terrain/Gallows/Act4/4_5_2/Objects/PrisonBossDoor.ot)
    StateMachine.roaming - State for disabling instant portals on roaming bosses vs arena bosses.
    StateMachine.0: Arena Boss
    StateMachine.1: Roaming Boss
    StateMachine.arena_sector_id - If there are multiple arena bosses in an instance, each boss needs a different arena_sector_id INCLUDING roaming bosses
    StateMachine.It defaults to 1 so most bosses wont need this to be changed
    StateMachine.Currently supports up to three different bosses, but its easy to add more
    StateMachine.This state value is used to decide which boss sectors to destroy, see the triggerbracket on death in the BossBase.ots for more detail
    StateMachine.use_custom_sector_removal_handling - Set to 1 if a boss needs to use its own custom handling for sector removal on death (eg Mastodon)
    StateMachine.0: default behaviour, arena sector is removed on boss death
    StateMachine.1: custom behaviour, this disables the on death sector removal in boss base, so will need to be handled in the bosses otc AND ots
    StateMachine.quick_death_enabled - Use this for bosses with long deaths that are visible when you resurrect at checkpoint after killing them
    StateMachine.DO NOT set the quick_death state manually, this will cause the monster to do its quick death anim when it first dies
    StateMachine.0: default behaviour, death will be played at regular speed
    StateMachine.1: death anim is sped up by 10000x, this should be used for bosses that have events in their death that need to trigger
    StateMachine.2: death anim is sped up by 1000x, deaths with move events dont like being super fast so they can use this slower one
    StateMachine.am_final_boss_in_fight - This is used for multi boss fights to handle resurrecting etc after killing a single boss from fight
    StateMachine.0: reaching this state toggles part_of_multiple_boss_fight to be true, and signifies that this boss is not the final boss
    StateMachine.1: default value, will remain here unless another boss turns flips it to 0
    StateMachine.part_of_multiple_boss_fight - helper state for the above, shouldn't be interacted with manually
    StateMachine.0: currently not part of a multi boss fight
    StateMachine.1: was part of a multi boss fight at some point
    StateMachine.*/,
    StateMachine.define_shared_state =,
    StateMachine.", , ,
    StateMachine.boss_life_bar;
    StateMachine.hidden;
    StateMachine.light;
    StateMachine.introsequence;
    StateMachine.disable_life_bar;
    StateMachine.intro_zoom;
    StateMachine.intro_pan;
    StateMachine.use_offset_camera_controller;
    StateMachine.door_type;
    StateMachine.roaming;
    StateMachine.first_aggro;
    StateMachine.room_marker;
    StateMachine.arena_sector_id1;
    StateMachine.use_custom_sector_removal_handling;
    StateMachine.quick_death_enabled;
    StateMachine.quick_death;
    StateMachine.am_final_boss_in_fight1;
    StateMachine.part_of_multiple_boss_fight;
    StateMachine.dead - Boss is dead. This state is saved to the character checkpoint, so if you respawn at checkpoint this state will be automatically set. In BossBase.ots, this also calls KillSelfNoDrops().
    StateMachine.if you DON'T want this state to save/load automatically, use StateMachine{ checkpoint_save_deadfalse }
    StateMachine.0: Boss is alive
    StateMachine.1: Boss is dead
    StateMachine.2: Boss is dead and corpse is hidden
    StateMachine.define_shared_checkpoint_statedead
    StateMachine.emerging;
    StateMachine.spear_visible1;
    StateMachine.invisible_after_death;
    StateMachine.commands_left;
    StateMachine.float_epk;
    StateMachine.skip_death;
    StateMachine.collidable1;
    StateMachine.define_shared_timercombat_style_cooldown;
    StateMachine.on_or_create_state_collidable_1MakeCollidable();
    StateMachine.on_or_create_state_collidable_0RemoveCollidability();
    Actor.slow_animations_go_to_idlefalse
    Actor.leveled_starting_effectsCTS1BossFightStart
    Actor.basic_actionChangeToStance3, ChangeToStance4
    Stats.corpse_cannot_be_destroyed1
    Stats.base_heavy_stun_duration_ms4000
    Stats.additional_life_scaling_index6
    Stats.monster_delay_item_drops_millis4800
    Life.corpse_usablefalse
    Monster.is_bosstrue
    Functions.fix_orientation =
    Functions.",
    Functions.AddOnActionEnd(
    Functions.SetOrientation( GetOrientation() + arg1, false, true );
    Functions.PlayAnimationType( Idle, 1.0, 0, 0 );
    Functions.}, true );
    BaseEvents.on_construction_completeglobals.viperboss = this;
    Preload.preload_animated_objectMetadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/ao/ViperAssembleAudio.ao, Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/ao/ViperShieldsUpAudio.ao, Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/ao/ViperChargeAudio.ao, Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/ao/ViperDeathAudio.ao, Metadata/Terrain/Gallows/Act3/3_14/Objects/BossFormationHeightStart.ao, Metadata/Terrain/Gallows/Act3/3_14/Objects/BossFormationHeightLeftSideIn.ao, Metadata/Terrain/Gallows/Act3/3_14/Objects/BossFormationHeightRightSideIn.ao, Metadata/Terrain/Gallows/Act3/3_14/Objects/BossFormationHeightBothSidesIn.ao, Metadata/Monsters/VaalMonsters/ViperNapuatzi/Objects/PlantedSpear.ao, Metadata/Monsters/VaalMonsters/ViperNapuatzi/Objects/LegionObelisk.ao, Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/ao/lance_hell/buff_beam.ao
    Viper Napuatzi
    Humanoid
    monster dropped item rarity +% [1600]
    monster slain experience +% [0]
    monster dropped item quantity +% [800]
    monster dropped item rarity +% [1600]
    monster map key of at least same tier as current map drop chance % [25]
    monster slain experience +% [7500]
    unique monster guarantee one rare [1]
    SpectreN
    AreaVaal City, Boss Rush Area 3
    Tagsallows_additional_projectiles, allows_inc_aoe, cultist, human, humanoid, melee, monster_applies_poison, physical_affinity, ranged, red_blood, Unarmed_onhit_audio, very_slow_movement
    Life
    250%
    Energy Shield From Life
    10%
    Armour
    +40%
    Evasion
    +40%
    Resistance
    30 30 30 0
    Damage
    250%
    Accuracy
    100%
    5%
    Attack Distance
    5 ~ 18
    Attack Time
    1.38 Second
    Damage Spread
    ±20%
    Experience
    250%
    Model Size
    100%
    Type
    ViperNapuatziMap
    Metadata
    ViperNapuatziMAP
    Level
    65
    Life
    14,654
    Armour
    2,832
    Evasion Rating
    928
    Energy Shield
    1,628
    Damage
    531
    Spell Damage
    531
    Accuracy
    2,214
    Attack Time
    1.38
    Experience
    53,768
    Minion Life
    14,135
    Minion Energy Shield
    1,571
    Minion Damage
    2,072
    Minion Armour
    4,451
    MeleeAtAnimationSpeedBoss
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 425–637
    Critical Hit Chance: 5%
    Attack Time: 1.38 sec
    action attack or cast time uses animation length [1]
    projectile uses contact position [1]
    skill can fire wand projectiles [1]
    use scaled contact offset [1]
    MPSViperNapuatziFastProjectile
    Spell, Projectile, ProjectilesFromUser, Triggerable, Damage
    Critical Hit Chance: 5%
    Cast Time: 1 sec
    Deals 279.3 to 418.9 Physical Damage
    Fires an additional Projectile
    Poisons Enemies on Hit
    base is projectile [1]
    distribute projectiles over contact points [1]
    monster projectile variation [1038]
    projectile uses contact position [1]
    spell maximum action distance +% [-20]
    use scaled contact offset [1]
    GSViperNapuatziSpinSlam
    Triggerable, Spell, Damage
    Critical Hit Chance: 5%
    Cast Time: 1 sec
    Cooldown Time: 15 sec
    Deals 1047 to 1571 Physical Damage
    action attack or cast time uses animation length [1]
    is area damage [1]
    voll slam damage +% final at centre [25]
    EGViperNapuatziSnakeSacrifice
    Triggerable
    Cooldown Time: 30 sec
    ViperNapuatziSnakeSpark
    Spell, Projectile, ProjectilesFromUser, Damage, Duration, Trappable, Totemable, Mineable, Multicastable, Triggerable, Lightning, Unleashable, Invokable
    Critical Hit Chance: 5%
    Cast Time: 0.7 sec
    Deals 453.8 to 680.7 Physical Damage
    25% reduced Projectile Speed
    Fires 5 additional Projectiles
    Poisons Enemies on Hit
    base is projectile [1]
    base skill effect duration [10000]
    check for targets between initiator and projectile source [1]
    distribute projectiles over contact points [1]
    projectile uses contact direction [1]
    projectile uses contact position [1]
    projectiles should collide with flying monsters [1]
    spark pathing width bounds [15]
    spark projectile absolute angle override deg [50]
    spark projectile bounces off walls [1]
    use scaled contact offset [1]
    GSViperNapuatziFireRain
    Triggerable, Spell, Damage
    Critical Hit Chance: 5%
    Cast Time: 1 sec
    Deals 872.7 to 1309 Fire Damage
    is area damage [1]
    GSViperNapuatziChaosRain
    Triggerable, Spell, Damage
    Critical Hit Chance: 5%
    Cast Time: 1 sec
    Deals 872.7 to 1309 Chaos Damage
    is area damage [1]
    voll slam damage +% final at centre [25]
    GTViperNapuatziFireRain
    Triggerable
    action attack or cast time uses animation length [1]
    GTViperNapuatziChaosRain
    Triggerable
    action attack or cast time uses animation length [1]
    EASViperNapuatziCrissCrossCascade
    Cooldown Time: 40 sec
    action attack or cast time uses animation length [1]
    EAAViperNapuatziDashForward
    action attack or cast time uses animation length [1]
    EAAViperNapuatziDashBackward
    action attack or cast time uses animation length [1]
    EAAViperNapuatziDashLeft
    action attack or cast time uses animation length [1]
    EAAViperNapuatziDashRight
    action attack or cast time uses animation length [1]
    MAASViperNapuatziCombo
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 425–637
    Critical Hit Chance: 5%
    Attack Time: 1.38 sec
    Cooldown Time: 7 sec
    50% chance to Poison on Hit
    action attack or cast time uses animation length [1]
    attack maximum action distance + [15]
    projectile uses contact position [1]
    skill can fire wand projectiles [1]
    use scaled contact offset [1]
    MAASViperNapuatziSerpentStrike
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 425–637
    Critical Hit Chance: 5%
    Attack Damage: 80%
    Attack Time: 1.38 sec
    Cooldown Time: 40 sec
    Deals 20% less Attack Damage
    action attack or cast time uses animation length [1]
    attack maximum action distance + [40]
    projectile uses contact position [1]
    skill can fire wand projectiles [1]
    use scaled contact offset [1]
    ViperNapuatziLightningSpear
    Attack, Projectile, Lightning
    Base Damage: 425–637
    Critical Hit Chance: 5%
    Attack Damage: 150%
    Attack Time: 1.38 sec
    Cooldown Time: 10 sec
    Deals 50% more Attack Damage
    Converts 60% of Physical Damage to Lightning Damage
    Shocks Enemies as though dealing 10% more Damage
    action attack or cast time uses animation length [1]
    attack maximum action distance + [80]
    base is projectile [1]
    no additional projectiles [1]
    projectile uses contact position [1]
    use scaled contact offset [1]
    GAViperNapuatziSnakeWave
    Triggerable, Attack
    Base Damage: 425–637
    Critical Hit Chance: 5%
    Attack Damage: 250%
    Attack Time: 1.38 sec
    Deals 150% more Attack Damage
    Poisons Enemies on Hit
    base cannot be blocked [1]
    base skill can be avoided by dodge roll [1]
    is area damage [1]
    CGEViperNapuatziSpear
    Spell, Area, Damage, Triggerable, Duration, AreaSpell
    Cast Time: 1 sec
    Deals 533.3 Base Chaos Damage per second
    active skill area of effect radius +% final [-5]
    ground caustic art variation [1020]
    infinite skill effect duration [1]
    EASViperNapuatziCommandSoliders
    action attack or cast time uses animation length [1]
    EASViperNapuatziProjectileBarrage
    Cooldown Time: 17.5 sec
    action attack or cast time uses animation length [1]
    spell maximum action distance +% [-40]
    EASViperNapuatziSnakeRelease
    Cooldown Time: 15 sec
    action attack or cast time uses animation length [1]
    spell maximum action distance +% [-70]
    MAASViperNapuatziCombo2
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 425–637
    Critical Hit Chance: 5%
    Attack Damage: 80%
    Attack Time: 1.38 sec
    Cooldown Time: 7 sec
    Deals 20% less Attack Damage
    50% chance to Poison on Hit
    action attack or cast time uses animation length [1]
    attack maximum action distance + [15]
    projectile uses contact position [1]
    skill can fire wand projectiles [1]
    use scaled contact offset [1]
    GAViperComboEndSlam
    Triggerable, Attack
    Base Damage: 425–637
    Critical Hit Chance: 5%
    Attack Damage: 120%
    Attack Time: 1.38 sec
    Deals 20% more Attack Damage
    50% chance to Poison on Hit
    is area damage [1]
    voll slam damage +% final at centre [20]
    MAASViperNapuatziStepThrust
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 425–637
    Critical Hit Chance: 5%
    Attack Time: 1.38 sec
    Cooldown Time: 5 sec
    20% chance to Poison on Hit with Attacks
    action attack or cast time uses animation length [1]
    attack maximum action distance + [10]
    projectile uses contact position [1]
    skill can fire wand projectiles [1]
    use scaled contact offset [1]
    MAASViperNapuatziStepSwipes
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 425–637
    Critical Hit Chance: 5%
    Attack Time: 1.38 sec
    Cooldown Time: 5 sec
    action attack or cast time uses animation length [1]
    attack maximum action distance + [10]
    projectile uses contact position [1]
    skill can fire wand projectiles [1]
    use scaled contact offset [1]
    MAASViperNapuatziDashThrust
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 425–637
    Critical Hit Chance: 5%
    Attack Damage: 70%
    Attack Time: 1.38 sec
    Cooldown Time: 5 sec
    Deals 30% less Attack Damage
    action attack or cast time uses animation length [1]
    attack maximum action distance + [0]
    projectile uses contact position [1]
    skill can fire wand projectiles [1]
    use scaled contact offset [1]
    MPSViperNapuatziPoisonSpray
    Spell, Projectile, ProjectilesFromUser, Triggerable, Damage
    Critical Hit Chance: 5%
    Cast Time: 1 sec
    Deals 209.4 to 314.2 Physical Damage
    Poisons Enemies on Hit
    base is projectile [1]
    monster projectile variation [1357]
    projectile ballistic angle from reference event [1]
    projectile spread radius [4]
    CGEViperNapuatziGasGround
    Spell, Area, Damage, Triggerable, Duration, AreaSpell
    Cast Time: 1 sec
    Deals 363.6 Base Chaos Damage per second
    active skill area of effect radius +% final [-40]
    base skill effect duration [6000]
    ground caustic art variation [1023]
    EASViperNapuatziDashForward
    Cooldown Time: 5 sec
    action attack or cast time uses animation length [1]
    EASViperNapuatziDashBackward
    Cooldown Time: 5 sec
    action attack or cast time uses animation length [1]
    EASViperNapuatziDashLeft
    Cooldown Time: 5 sec
    action attack or cast time uses animation length [1]
    EASViperNapuatziDashRight
    Cooldown Time: 5 sec
    action attack or cast time uses animation length [1]
    MAASViperNapuatziJumpStab
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 425–637
    Critical Hit Chance: 5%
    Attack Time: 1.38 sec
    Cooldown Time: 5 sec
    action attack or cast time uses animation length [1]
    attack maximum action distance + [0]
    projectile uses contact position [1]
    skill can fire wand projectiles [1]
    use scaled contact offset [1]
    MAASViperNapuatziJumpStabMoving
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 425–637
    Critical Hit Chance: 5%
    Attack Time: 1.38 sec
    Cooldown Time: 5 sec
    action attack or cast time uses animation length [1]
    attack maximum action distance + [-10]
    projectile uses contact position [1]
    skill can fire wand projectiles [1]
    use scaled contact offset [1]
    EAAViperNapuatziCycloneEndNoTurn
    action attack or cast time uses animation length [1]
    action do not face target [1]
    EAAViperNapuatziCycloneEndTurn
    action attack or cast time uses animation length [1]
    action do not face target [1]
    MAASViperNapuatziStepSweep
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 425–637
    Critical Hit Chance: 5%
    Attack Time: 1.38 sec
    Cooldown Time: 5 sec
    action attack or cast time uses animation length [1]
    attack maximum action distance + [10]
    projectile uses contact position [1]
    skill can fire wand projectiles [1]
    use scaled contact offset [1]
    MPSViperNapuatziProjectileBarrage
    Spell, Projectile, ProjectilesFromUser, Triggerable, Damage
    Critical Hit Chance: 5%
    Cast Time: 1 sec
    Deals 209.4 to 314.2 Physical Damage
    Fires 10 additional Projectiles
    Poisons Enemies on Hit
    base is projectile [1]
    distribute projectiles over contact points [1]
    monster projectile variation [1038]
    projectile uses contact position [1]
    spell maximum action distance +% [-20]
    use scaled contact offset [1]

    Object Type

    version 2
    extends "Metadata/Monsters/Monster"
    extends "Metadata/Monsters/BossBase"
    
    StateMachine
    {
    	define_shared_state =
    	"
    		emerging;
    		spear_visible = 1;
    		invisible_after_death;
    		commands_left;
    		float_epk;
    		skip_death;
    		collidable = 1;
    	"
    
    	define_shared_timer = "combat_style_cooldown;"
    
    	on_or_create_state_collidable_1 = "MakeCollidable();"
    	on_or_create_state_collidable_0 = "RemoveCollidability();"
    }
    
    Functions
    {
    	fix_orientation =
    	"
    		AddOnActionEnd(
    		{
    			SetOrientation( GetOrientation() + arg1, false, true );
    			PlayAnimationType( Idle, 1.0, 0, 0 );
    		}, true );
    	"
    }
    
    Actor
    {
    	basic_action = "ChangeToStance3"
    	basic_action = "ChangeToStance4"
    }
    
    Stats
    {
    	set_monster_delay_item_drops_millis = 4800
    }
    
    BaseEvents
    {
    	on_construction_complete = "globals.viperboss = this;"
    }
    
    Preload
    {
    	preload_animated_object = "Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/ao/ViperAssembleAudio.ao"
    	preload_animated_object = "Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/ao/ViperShieldsUpAudio.ao"
    	preload_animated_object = "Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/ao/ViperChargeAudio.ao"
    	preload_animated_object = "Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/ao/ViperDeathAudio.ao"
    	preload_animated_object = "Metadata/Terrain/Gallows/Act3/3_14/Objects/BossFormationHeightStart.ao"
    	preload_animated_object = "Metadata/Terrain/Gallows/Act3/3_14/Objects/BossFormationHeightLeftSideIn.ao"
    	preload_animated_object = "Metadata/Terrain/Gallows/Act3/3_14/Objects/BossFormationHeightRightSideIn.ao"
    	preload_animated_object = "Metadata/Terrain/Gallows/Act3/3_14/Objects/BossFormationHeightBothSidesIn.ao"
    	preload_animated_object = "Metadata/Monsters/VaalMonsters/ViperNapuatzi/Objects/PlantedSpear.ao"
    	preload_animated_object = "Metadata/Monsters/VaalMonsters/ViperNapuatzi/Objects/LegionObelisk.ao"
    	preload_animated_object = "Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/ao/lance_hell/buff_beam.ao"
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    extends "Metadata/Monsters/BossBase"
    
    StateMachine
    {
    	on_or_create_state_spear_visible_0 = "RemoveAttachedObjectFromBones( R_Weapon );"
    
    	on_state_spear_visible_1 =
    	"
    		AddAttached( 'Metadata/Monsters/VaalMonsters/ViperNapuatzi/attachments/ViperNapuatziSpear.ao', R_Weapon );
    		this.viper_spear = GetAttachedAOByType( 'Metadata/Monsters/VaalMonsters/ViperNapuatzi/attachments/ViperNapuatziSpear.ao' );
    		this.viper_spear.PlayAnimationEx( this.CurrentAnimationName(), begin_percent:this.GetCurrentAnimationPosition( true ) );
    	"
    
    	on_or_create_state_invisible_after_death_1 =
    	"
    		DisableRendering();
    		SetProximityTriggerRadius( 150 );
    	"
    }
    
    Preload
    {
    	preload_environment = "LegionLeagueWorld"
    	preload_environment = "LegionLeagueWorldBattle"
    }
    
    Render
    {
    	use_ao_lights = true
    }
    
    ProximityTrigger
    {
    	radius = 0
    	condition = "players"
    	on_triggered = "DisableRendering();"
    }
    
    /* ------------------------------------------------------------------------------------------------------------------- */
    /* Lance Hell - Commands soldiers to attack as a section, multiple times in sequence */
    /* ------------------------------------------------------------------------------------------------------------------- */
    
    StateMachine
    {
    	on_or_create_state_float_epk_1 = "AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/epk/lance_hell/viper_buff.epk' );"
    	on_state_float_epk_0 = "RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/epk/lance_hell/viper_buff.epk' );"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/VaalMonsters/ViperNapuatzi/ViperNapuatziMAP"] = {
        name = "Viper Napuatzi",
        life = 2.5,
        energyShield = 0.1,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 2.5,
        damageSpread = 0.2,
        attackTime = 1.38,
        attackRange = 18,
        accuracy = 1,
        skillList = {
            "MeleeAtAnimationSpeedBoss",
            "MAASViperNapuatziCombo",
            "MAASViperNapuatziSerpentStrike",
            "MAASViperNapuatziCombo2",
            "MAASViperNapuatziStepThrust",
            "MAASViperNapuatziStepSwipes",
            "MAASViperNapuatziDashThrust",
            "MAASViperNapuatziJumpStab",
            "MAASViperNapuatziJumpStabMoving",
            "MAASViperNapuatziStepSweep",
            "MPSViperNapuatziFastProjectile",
            "ViperNapuatziLightningSpear",
            "MPSViperNapuatziPoisonSpray",
            "MPSViperNapuatziProjectileBarrage",
            "CGEViperNapuatziSpear",
            "CGEViperNapuatziGasGround",
            "GSViperNapuatziSpinSlam",
            "GSViperNapuatziFireRain",
            "GSViperNapuatziChaosRain",
            "GAViperNapuatziSnakeWave",
            "GAViperComboEndSlam",
            "EASViperNapuatziCrissCrossCascade",
            "EAAViperNapuatziDashForward",
            "EAAViperNapuatziDashBackward",
            "EAAViperNapuatziDashLeft",
            "EAAViperNapuatziDashRight",
            "EASViperNapuatziCommandSoliders",
            "EASViperNapuatziProjectileBarrage",
            "EASViperNapuatziSnakeRelease",
            "EASViperNapuatziDashForward",
            "EASViperNapuatziDashBackward",
            "EASViperNapuatziDashLeft",
            "EASViperNapuatziDashRight",
            "EAAViperNapuatziCycloneEndNoTurn",
            "EAAViperNapuatziCycloneEndTurn",
            "EGViperNapuatziSnakeSacrifice",
            "GTViperNapuatziFireRain",
            "GTViperNapuatziChaosRain",
            "ViperNapuatziSnakeSpark",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MeleeAtAnimationSpeedBoss"] = {
        name = "Basic Attack",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.MeleeSingleTarget] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "action_attack_or_cast_time_uses_animation_length",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MAASViperNapuatziCombo"] = {
        name = "Basic Attack",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.MeleeSingleTarget] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "attack_maximum_action_distance_+",
            "base_chance_to_poison_on_hit_%",
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "action_attack_or_cast_time_uses_animation_length",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
        },
        levels = {
            [1] = {15, 50, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MAASViperNapuatziSerpentStrike"] = {
        name = "Basic Attack",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.MeleeSingleTarget] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "attack_maximum_action_distance_+",
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "action_attack_or_cast_time_uses_animation_length",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
        },
        levels = {
            [1] = {40, baseMultiplier = 0.8, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MAASViperNapuatziCombo2"] = {
        name = "Basic Attack",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.MeleeSingleTarget] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "attack_maximum_action_distance_+",
            "base_chance_to_poison_on_hit_%",
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "action_attack_or_cast_time_uses_animation_length",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
        },
        levels = {
            [1] = {15, 50, baseMultiplier = 0.8, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MAASViperNapuatziStepThrust"] = {
        name = "Basic Attack",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.MeleeSingleTarget] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "attack_maximum_action_distance_+",
            "chance_to_poison_on_hit_with_attacks_%",
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "action_attack_or_cast_time_uses_animation_length",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
        },
        levels = {
            [1] = {10, 20, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MAASViperNapuatziStepSwipes"] = {
        name = "Basic Attack",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.MeleeSingleTarget] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "attack_maximum_action_distance_+",
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "action_attack_or_cast_time_uses_animation_length",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
        },
        levels = {
            [1] = {10, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MAASViperNapuatziDashThrust"] = {
        name = "Basic Attack",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.MeleeSingleTarget] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "attack_maximum_action_distance_+",
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "action_attack_or_cast_time_uses_animation_length",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
        },
        levels = {
            [1] = {0, baseMultiplier = 0.7, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MAASViperNapuatziJumpStab"] = {
        name = "Basic Attack",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.MeleeSingleTarget] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "attack_maximum_action_distance_+",
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "action_attack_or_cast_time_uses_animation_length",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
        },
        levels = {
            [1] = {0, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MAASViperNapuatziJumpStabMoving"] = {
        name = "Basic Attack",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.MeleeSingleTarget] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "attack_maximum_action_distance_+",
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "action_attack_or_cast_time_uses_animation_length",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
        },
        levels = {
            [1] = {-10, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MAASViperNapuatziStepSweep"] = {
        name = "Basic Attack",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.MeleeSingleTarget] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "attack_maximum_action_distance_+",
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "action_attack_or_cast_time_uses_animation_length",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
        },
        levels = {
            [1] = {10, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MPSViperNapuatziFastProjectile"] = {
        name = "MPSViperNapuatziFastProjectile",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Damage] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            spell = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_physical_damage",
            "spell_maximum_base_physical_damage",
            "monster_projectile_variation",
            "number_of_additional_projectiles",
            "spell_maximum_action_distance_+%",
            "base_is_projectile",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
            "global_poison_on_hit",
            "distribute_projectiles_over_contact_points",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 1038, 1, -20, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ViperNapuatziLightningSpear"] = {
        name = "ViperNapuatziLightningSpear",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.Projectile] = true,
            [SkillType.Lightning] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "active_skill_base_physical_damage_%_to_convert_to_lightning",
            "active_skill_shock_as_though_damage_+%_final",
            "attack_maximum_action_distance_+",
            "base_is_projectile",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
            "action_attack_or_cast_time_uses_animation_length",
            "no_additional_projectiles",
        },
        levels = {
            [1] = {60, 10, 80, baseMultiplier = 1.5, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MPSViperNapuatziPoisonSpray"] = {
        name = "MPSViperNapuatziPoisonSpray",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Damage] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            spell = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_physical_damage",
            "spell_maximum_base_physical_damage",
            "monster_projectile_variation",
            "projectile_spread_radius",
            "base_is_projectile",
            "global_poison_on_hit",
            "projectile_ballistic_angle_from_reference_event",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 1357, 4, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MPSViperNapuatziProjectileBarrage"] = {
        name = "MPSViperNapuatziProjectileBarrage",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Damage] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            spell = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_physical_damage",
            "spell_maximum_base_physical_damage",
            "monster_projectile_variation",
            "number_of_additional_projectiles",
            "spell_maximum_action_distance_+%",
            "base_is_projectile",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
            "global_poison_on_hit",
            "distribute_projectiles_over_contact_points",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 1038, 10, -20, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["CGEViperNapuatziSpear"] = {
        name = "CGEViperNapuatziSpear",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Area] = true,
            [SkillType.Damage] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Duration] = true,
            [SkillType.AreaSpell] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            area = true,
            spell = true,
            duration = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "base_chaos_damage_to_deal_per_minute",
            "active_skill_area_of_effect_radius_+%_final",
            "ground_caustic_art_variation",
            "infinite_skill_effect_duration",
        },
        levels = {
            [1] = {1, -5, 1020, levelRequirement = 1, statInterpolation = {3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["CGEViperNapuatziGasGround"] = {
        name = "CGEViperNapuatziGasGround",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Area] = true,
            [SkillType.Damage] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Duration] = true,
            [SkillType.AreaSpell] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            area = true,
            spell = true,
            duration = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "base_chaos_damage_to_deal_per_minute",
            "active_skill_area_of_effect_radius_+%_final",
            "ground_caustic_art_variation",
            "base_skill_effect_duration",
        },
        levels = {
            [1] = {1, -40, 1023, 6000, levelRequirement = 1, statInterpolation = {3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GSViperNapuatziSpinSlam"] = {
        name = "GSViperNapuatziSpinSlam",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
            [SkillType.Spell] = true,
            [SkillType.Damage] = true,
        },
        statDescriptionScope = "geometry_spell",
        castTime = 1,
        baseFlags = {
            spell = true,
            area = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_physical_damage",
            "spell_maximum_base_physical_damage",
            "voll_slam_damage_+%_final_at_centre",
            "is_area_damage",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 25, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GSViperNapuatziFireRain"] = {
        name = "GSViperNapuatziFireRain",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
            [SkillType.Spell] = true,
            [SkillType.Damage] = true,
        },
        statDescriptionScope = "geometry_spell",
        castTime = 1,
        baseFlags = {
            spell = true,
            area = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_fire_damage",
            "spell_maximum_base_fire_damage",
            "is_area_damage",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GSViperNapuatziChaosRain"] = {
        name = "GSViperNapuatziChaosRain",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
            [SkillType.Spell] = true,
            [SkillType.Damage] = true,
        },
        statDescriptionScope = "geometry_spell",
        castTime = 1,
        baseFlags = {
            spell = true,
            area = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_chaos_damage",
            "spell_maximum_base_chaos_damage",
            "voll_slam_damage_+%_final_at_centre",
            "is_area_damage",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 25, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GAViperNapuatziSnakeWave"] = {
        name = "GAViperNapuatziSnakeWave",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
            [SkillType.Attack] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            area = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "is_area_damage",
            "global_poison_on_hit",
            "base_skill_can_be_avoided_by_dodge_roll",
            "base_cannot_be_blocked",
        },
        levels = {
            [1] = {baseMultiplier = 2.5, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GAViperComboEndSlam"] = {
        name = "GAViperComboEndSlam",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
            [SkillType.Attack] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            area = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "base_chance_to_poison_on_hit_%",
            "voll_slam_damage_+%_final_at_centre",
            "is_area_damage",
        },
        levels = {
            [1] = {50, 20, baseMultiplier = 1.2, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASViperNapuatziCrissCrossCascade"] = {
        name = "EASViperNapuatziCrissCrossCascade",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EAAViperNapuatziDashForward"] = {
        name = "EAAViperNapuatziDashForward",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EAAViperNapuatziDashBackward"] = {
        name = "EAAViperNapuatziDashBackward",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EAAViperNapuatziDashLeft"] = {
        name = "EAAViperNapuatziDashLeft",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EAAViperNapuatziDashRight"] = {
        name = "EAAViperNapuatziDashRight",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASViperNapuatziCommandSoliders"] = {
        name = "EASViperNapuatziCommandSoliders",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASViperNapuatziProjectileBarrage"] = {
        name = "EASViperNapuatziProjectileBarrage",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_maximum_action_distance_+%",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {-40, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASViperNapuatziSnakeRelease"] = {
        name = "EASViperNapuatziSnakeRelease",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_maximum_action_distance_+%",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {-70, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASViperNapuatziDashForward"] = {
        name = "EASViperNapuatziDashForward",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASViperNapuatziDashBackward"] = {
        name = "EASViperNapuatziDashBackward",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASViperNapuatziDashLeft"] = {
        name = "EASViperNapuatziDashLeft",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASViperNapuatziDashRight"] = {
        name = "EASViperNapuatziDashRight",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EAAViperNapuatziCycloneEndNoTurn"] = {
        name = "EAAViperNapuatziCycloneEndNoTurn",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "action_attack_or_cast_time_uses_animation_length",
            "action_do_not_face_target",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EAAViperNapuatziCycloneEndTurn"] = {
        name = "EAAViperNapuatziCycloneEndTurn",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "action_attack_or_cast_time_uses_animation_length",
            "action_do_not_face_target",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EGViperNapuatziSnakeSacrifice"] = {
        name = "EGViperNapuatziSnakeSacrifice",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GTViperNapuatziFireRain"] = {
        name = "GTViperNapuatziFireRain",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GTViperNapuatziChaosRain"] = {
        name = "GTViperNapuatziChaosRain",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["ViperNapuatziSnakeSpark"] = {
        name = "ViperNapuatziSnakeSpark",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Damage] = true,
            [SkillType.Duration] = true,
            [SkillType.Trappable] = true,
            [SkillType.Totemable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Multicastable] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Lightning] = true,
            [SkillType.Unleashable] = true,
            [SkillType.Invokable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 0.7,
        baseFlags = {
            spell = true,
            projectile = true,
            duration = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_physical_damage",
            "spell_maximum_base_physical_damage",
            "base_skill_effect_duration",
            "spark_pathing_width_bounds",
            "spark_projectile_absolute_angle_override_deg",
            "base_projectile_speed_+%",
            "number_of_additional_projectiles",
            "base_is_projectile",
            "projectiles_should_collide_with_flying_monsters",
            "projectile_uses_contact_position",
            "projectile_uses_contact_direction",
            "check_for_targets_between_initiator_and_projectile_source",
            "spark_projectile_bounces_off_walls",
            "global_poison_on_hit",
            "use_scaled_contact_offset",
            "distribute_projectiles_over_contact_points",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 10000, 15, 50, -25, 5, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    
    monster dropped item rarity +% [1600]
    monster slain experience +% [0]
    FamilyMonsterActBoss
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • monster slain experience +% Min: 0 Max: 0 Global
  • monster dropped item rarity +% Min: 1600 Max: 1600 Global
  • monster dropped item quantity +% [800]
    monster dropped item rarity +% [1600]
    monster map key of at least same tier as current map drop chance % [25]
    monster slain experience +% [7500]
    unique monster guarantee one rare [1]
    FamilyMonsterMapBoss
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • monster slain experience +% Min: 7500 Max: 7500 Global
  • monster dropped item rarity +% Min: 1600 Max: 1600 Global
  • monster dropped item quantity +% Min: 800 Max: 800 Global
  • unique monster guarantee one rare Min: 1 Max: 1 Global
  • monster map key of at least same tier as current map drop chance % Min: 25 Max: 25 Global
  • Viper Napuatzi Text Audio /125
    Name
    Look upon us and despair!
    LegionNapuatziBattleCry1
    Bow to your Queen, or die!
    LegionNapuatziBattleCry2
    Serve the Vaal in life or in death.
    LegionNapuatziBattleCry3
    For the Queen!
    LegionNapuatziAttackOneRandom
    For the Queen!
    LegionNapuatziAttackOne2
    Yield and save yourself!
    LegionNapuatziAttackTwoRandom
    Yield and save yourself!
    LegionNapuatziAttackTwo2
    Fall before us!
    LegionNapuatziAttackThreeRandom
    Fall before us!
    LegionNapuatziAttackThree2
    Locust!
    LegionNapuatziAttackFourRandom
    Locust!
    LegionNapuatziAttackFour2
    Insect!
    LegionNapuatziAttackFiveRandom
    Insect!
    LegionNapuatziAttackFive2
    When I return, it will be with an army of thousands.
    LegionNapuatziFleeing1
    Enjoy this brief victory. You will not have another.
    LegionNapuatziFleeing2
    These are Vaal lands. You only delay your destiny.
    LegionNapuatziFleeing3
    Children of darkness, we are your illumination!
    LegionNapuatziMapIntro1
    Do not weep. Your sacrifice is not without value.
    LegionNapuatziMapIntro2
    Rejoice! The Queen has deemed you worthy of sacrifice!
    LegionNapuatziMapIntro3
    I'm sorry... my... queen...
    LegionNapuatziDefeat1
    Free... at... last...
    LegionNapuatziDefeat2
    Is... is it over...?
    LegionNapuatziDefeat3
    Pain is nothing.
    LegionNapuatziInjured1
    Pain sharpens the mind.
    LegionNapuatziInjured2
    Every scar is a gift.
    LegionNapuatziInjured3
    Your skull will adorn the halls of the queen.
    LegionNapuatziTaunt1
    Your death is written into the stars.
    LegionNapuatziTaunt2
    You are a locust, and I will crush you underfoot.
    LegionNapuatziTaunt3
    Surround the interloper!
    ViperNapuatzi_Intro_A
    Vipers, assume formation!
    ViperNapuatzi_Intro_B
    Your rampage ends here.
    ViperNapuatzi_Intro_C_Random
    Your rampage ends here.
    ViperNapuatzi_Intro_C_2
    I will handle this interloper.
    ViperNapuatzi_Intro_D
    For the Queen!
    ViperNapuatzi_SnakeSacrifice_Random
    For the Queen!
    ViperNapuatzi_SnakeSacrifice_2
    For the Queen!
    ViperNapuatzi_SnakeSacrifice_3
    Sacrifice!
    ViperNapuatzi_SnakeSacrifice_4
    Sacrifice!
    ViperNapuatzi_SnakeSacrifice_5
    Sacrifice!
    ViperNapuatzi_SnakeSacrifice_6
    By the Viper!
    ViperNapuatzi_SnakeSacrifice_7
    By the Viper!
    ViperNapuatzi_SnakeSacrifice_8
    By the Viper!
    ViperNapuatzi_SnakeSacrifice_9
    By the Viper!
    ViperNapuatzi_SnakeSacrifice_10
    Enough of this. Attack!
    ViperNapuatzi_LowHealth
    A voice... calls to me...
    ViperNapuatzi_Death_A
    A vast hand... reaches out...
    ViperNapuatzi_Death_B
    Locust!
    ViperNapuatzi_Locust_Random
    Locust!
    ViperNapuatzi_Locust_2
    Locust!
    ViperNapuatzi_Locust_3
    Locust!
    ViperNapuatzi_Locust_4
    Insect!
    ViperNapuatzi_Insect_Random
    Insect!
    ViperNapuatzi_Insect_2
    Insect!
    ViperNapuatzi_Insect_3
    Insect!
    ViperNapuatzi_Insect_4
    Insect!
    ViperNapuatzi_Insect_5
    I will crush you!
    ViperNapuatzi_SpinSlam_Random
    I will crush you!
    ViperNapuatzi_SpinSlam_2
    I will crush you!
    ViperNapuatzi_SpinSlam_3
    Your soul shall serve the Queen.
    ViperNapuatzi_ServeTheQueen_Random
    Your soul shall serve the Queen.
    ViperNapuatzi_ServeTheQueen_2
    Despair, for here you will fall.
    ViperNapuatzi_Despair_Random
    Despair, for here you will fall.
    ViperNapuatzi_Despair_2
    Halt! Your rampage ends here!
    Napuatzi_IntroOne
    Which one of you activated the gate? Which one of you is of Vaal blood?
    Napuatzi_IntroTwo
    Take her!
    Napuatzi_IntroThree
    Bring her to Doryani!
    Napuatzi_IntroFour
    As for you, I will pay back every drop of Vaal Blood you have spilled.
    Napuatzi_IntroFive
    I will pay back every drop of Vaal Blood you have spilled.
    Napuatzi_IntroShort
    You will fall before us!
    Napuatzi_CasterMode_Random
    You will fall before us!
    Napuatzi_CasterMode_2
    I shall crush you!
    Napuatzi_CasterSlam_Random
    I shall crush you!
    Napuatzi_CasterSlam_2
    I shall crush you, insect!
    Napuatzi_CasterSlam_3
    I shall crush you, insect!
    Napuatzi_CasterSlam_4
    I am the will of the Queen!
    Napuatzi_ChaosStorm_Random
    I am the will of the Queen!
    Napuatzi_ChaosStorm_2
    I am the will of the Queen!
    Napuatzi_ChaosStorm_3
    Feel the might of the Vaal!
    Napuatzi_ChaosStorm_4
    Feel the might of the Vaal!
    Napuatzi_ChaosStorm_5
    My war... is not over!
    Napuatzi_Death_Random
    My war... is not over!
    Napuatzi_Death_2
    No... I'm not ready...!
    Napuatzi_Death_3
    No... I'm not ready...!
    Napuatzi_Death_4
    Do not let them... leave alive...
    Napuatzi_DeathAlt_Random
    Do not let them... leave alive...
    Napuatzi_DeathAlt_2
    Pain sharpens the mind!
    Napuatzi_HeavyStun_Random
    Pain sharpens the mind!
    Napuatzi_HeavyStun_2
    You are nothing but a locust...
    Napuatzi_HeavyStun_3
    You are nothing but a locust...
    Napuatzi_HeavyStun_4
    You are nothing but a locust...
    Napuatzi_HeavyStun_5
    Bow to your Queen, or die!
    Napuatzi_MultiStab_Random
    Bow to your Queen, or die!
    Napuatzi_MultiStab_2
    Bow to your Queen, or die!
    Napuatzi_MultiStab_3
    My patron grants me sight of the river ahead. I know you'll be back.
    Napuatzi_PlayerDeath_Random
    My patron grants me sight of the river ahead. I know you'll be back.
    Napuatzi_PlayerDeath_2
    I see more than you think. When you return, I will just kill you again.
    Napuatzi_PlayerDeath_3
    I see more than you think. When you return, I will just kill you again.
    Napuatzi_PlayerDeath_4
    Ha!
    Napuatzi_RecallSpear_Random
    I will crush you, insect!
    Napuatzi_RecallSpear_2
    I will crush you, insect!
    Napuatzi_RecallSpear_3
    Aegis Formation!
    Napuatzi_SnakeBarrage_Random
    Shields!
    Napuatzi_SnakeBarrage_2
    Shields!
    Napuatzi_SnakeBarrage_3
    Suffer the Viper's Onslaught!
    Napuatzi_SnakeBarrage_4
    Suffer the Viper's Onslaught!
    Napuatzi_SnakeBarrage_5
    Viper's Onslaught!
    Napuatzi_SnakeBarrage_6
    Viper's Onslaught!
    Napuatzi_SnakeBarrage_7
    I will not relent!
    Napuatzi_SpearCombo2_Random
    I will not relent!
    Napuatzi_SpearCombo2_2
    The Viper strikes!
    Napuatzi_SpearCombo2_3
    The Viper strikes!
    Napuatzi_SpearCombo2_4
    Arakaali's web!
    Napuatzi_SpearHell_Random
    Arakaali's web!
    Napuatzi_SpearHell_2
    Feel Arakaali's sting!
    Napuatzi_SpearHell_3
    Feel Arakaali's sting!
    Napuatzi_SpearHell_4
    Yaomac take you!
    Napuatzi_SerpentStrike_Random
    Yaomac take you!
    Napuatzi_SerpentStrike_2
    Yaomac take you!
    Napuatzi_SerpentStrike_3
    Serpent's bite!
    Napuatzi_SerpentStrike_4
    Serpent's bite!
    Napuatzi_SerpentStrike_5
    Serpent's bite!
    Napuatzi_SerpentStrike_6
    Storm of Xopec!
    Napuatzi_SpearThrow_Random
    Storm of Xopec!
    Napuatzi_SpearThrow_2
    Xopec's spear!
    Napuatzi_SpearThrow_3
    Xopec's spear!
    Napuatzi_SpearThrow_4
    Edit

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