Viper Legionnaire
stance movement speed +% final [-71]
SpectreY
Tags2HSharpMetal_onhit_audio, fast_movement, human, humanoid, melee, not_int, physical_affinity, red_blood
Packs
  • Viper Legionnaire, Viper Legionnaire
  • Life
    160%
    Armour
    +33%
    Evasion
    +50%
    Resistance
    0 0 0 0
    Damage
    160%
    Accuracy
    100%
    Critical Hits Chance
    5%
    Critical Damage Bonus
    +30%
    Attack Distance
    4 ~ 12
    Attack Time
    1.5 Second
    Damage Spread
    ±20%
    Experience
    160%
    Model Size
    100%
    Type
    VaalLegionnaireSword
    Metadata
    ViperLegionnaireSword_
    Level
    68
    Life
    12,411
    Armour
    4,590
    Evasion Rating
    716
    Damage
    373
    Spell Damage
    373
    Accuracy
    2,180
    Attack Time
    1.5
    Experience
    45,814
    Minion Life
    18,048
    Minion Damage
    3,034
    Minion Armour
    6,867
    MeleeAtAnimationSpeed
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 298–448
    Critical Hit Chance: 5%
    Attack Time: 1.5 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]
    MeleeAtAnimationSpeedViperLegionnaireCombo
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 298–448
    Critical Hit Chance: 5%
    Attack Time: 1.5 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]

    Object Type

    version 2
    extends "Metadata/Monsters/Monster"

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/VaalMonsters/ViperLegionnaire/ViperLegionnaireSword_"] = {
        name = "Viper Legionnaire",
        life = 1.6,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1.6,
        damageSpread = 0.2,
        attackTime = 1.5,
        attackRange = 12,
        accuracy = 1,
        weaponType1 = "One Hand Sword",
        skillList = {
            "MeleeAtAnimationSpeed",
            "MeleeAtAnimationSpeedViperLegionnaireCombo",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MeleeAtAnimationSpeed"] = {
        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.Multistrikeable] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "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["MeleeAtAnimationSpeedViperLegionnaireCombo"] = {
        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.Multistrikeable] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "action_attack_or_cast_time_uses_animation_length",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    
    IdNothing
    FamilyNothing
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    stance movement speed +% final [-71]
    IdStanceViperLegionnaireSwordWalk
    FamilyStance
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • stance movement speed +% final Min: -71 Max: -71 Global
  • Craft Tagsspeed
    Viper Legionnaire
    stance movement speed +% final [-66]
    SpectreY
    AreaThe Ziggurat Refuge, Utzaal, Utzaal
    Tagsallows_additional_projectiles, allows_inc_aoe, Arrow_onhit_audio, fast_movement, human, humanoid, not_int, physical_affinity, ranged, red_blood
    Packs
  • Utzaal, Utzaal: Viper Legionnaire, Viper Legionnaire
  • The Ziggurat Refuge: Viper Legionnaire, Viper Legionnaire
  • Life
    160%
    Armour
    +33%
    Evasion
    +66%
    Resistance
    0 0 0 0
    Damage
    140%
    Accuracy
    100%
    Critical Hits Chance
    5%
    Critical Damage Bonus
    +30%
    Attack Distance
    4 ~ 50
    Attack Time
    1.5 Second
    Damage Spread
    ±20%
    Experience
    160%
    Model Size
    100%
    Type
    VaalLegionnaireBow
    Metadata
    ViperLegionnaireBow_
    Level
    70
    Life
    13,946
    Armour
    5,156
    Evasion Rating
    833
    Damage
    347
    Spell Damage
    347
    Accuracy
    2,328
    Attack Time
    1.5
    Experience
    55,422
    Minion Life
    19,626
    Minion Damage
    3,027
    Minion Armour
    7,715
    MeleeAtAnimationSpeedBow
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 278–416
    Critical Hit Chance: 5%
    Attack Time: 1.5 sec
    action attack or cast time uses animation length [1]
    check for targets between initiator and projectile source [1]
    maintain projectile direction when using contact position [1]
    projectile uses contact position [1]
    skill can fire wand projectiles [1]
    use scaled contact offset [1]
    GTLegionnaireCausticRainOfArrows
    Triggerable
    Cooldown Time: 10 sec
    action attack or cast time uses animation length [1]
    GTLegionnaireSmokeArrow
    Triggerable
    Cooldown Time: 12 sec
    action attack or cast time uses animation length [1]
    LegionnaireDodgeLeft
    Cooldown Time: 3 sec
    action attack or cast time uses animation length [1]
    monster dodge direction [1]
    monster dodge distance [25]
    LegionnaireDodgeRight
    Cooldown Time: 3 sec
    action attack or cast time uses animation length [1]
    monster dodge distance [25]
    SOLegionnaireCausticRainOfArrows
    Triggerable
    GSLegionnaireCausticRainOfArrows
    Triggerable, Spell, Damage
    Cast Time: 1 sec
    Deals 5579 to 8368 Fire Damage
    is area damage [1]
    CGELegionaireCausticGround
    Spell, Area, Damage, Triggerable, Duration, AreaSpell
    Cast Time: 1 sec
    Deals 6198.7 Base Chaos Damage per second
    base skill effect duration [5000]
    ground caustic art variation [1005]
    SOLegionnaireSmokeArrow
    Triggerable
    GSLegionnaireSmokeArrow
    Triggerable, Spell, Damage
    Cast Time: 1 sec
    Deals 5579 to 8368 Fire Damage
    is area damage [1]
    CGELegionaireSmokeGround
    Spell, Area, Damage, Triggerable, Duration, AreaSpell
    Cast Time: 1 sec
    base skill effect duration [10000]
    ground smoke art variation [1000]

    Object Type

    version 2
    extends "Metadata/Monsters/Monster"
    
    Transitionable {}
    
    Stats
    {
    	set_base_heavy_stun_duration_ms = 2400
    	set_arrow_projectile_variation = 1004
    }
    
    StateMachine
    {
    	define_shared_state =
    	"
    		has_arrow = 1;
    		in_smoke;
    	"
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    
    Transitionable
    {
    	on_transition =
    	"
    		Roll( 1, 2,
    		{
    			PlayEffect( 'Metadata/Monsters/VaalMonsters/ViperLegionnaire/ViperLegionnaireBowsAggroAudio.ao' );
    		} );
    	"
    }
    
    Animated
    {
    	preload_animated_object = "Metadata/Monsters/VaalMonsters/ViperLegionnaire/ViperLegionnaireBowsAggroAudio.ao"
    }
    
    StateMachine
    {
    	on_or_create_state_has_arrow_0 = "DetachAllOfType( 'Metadata/Items/Quivers/ViperLegionnaireQuiver/ViperLegionnaireArrowHeld.ao' );"
    	on_or_create_state_has_arrow_1 = "AddAttached( 'Metadata/Items/Quivers/ViperLegionnaireQuiver/ViperLegionnaireArrowHeld.ao', R_Weapon );"
    	on_or_create_state_in_smoke_0 = "EnableTargetable();"
    	on_or_create_state_in_smoke_1 = "DisableTargetable();"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/VaalMonsters/ViperLegionnaire/ViperLegionnaireBow_"] = {
        name = "Viper Legionnaire",
        life = 1.6,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1.4,
        damageSpread = 0.2,
        attackTime = 1.5,
        attackRange = 50,
        accuracy = 1,
        weaponType1 = "Bow",
        skillList = {
            "MeleeAtAnimationSpeedBow",
            "CGELegionaireSmokeGround",
            "CGELegionaireCausticGround",
            "GSLegionnaireCausticRainOfArrows",
            "GSLegionnaireSmokeArrow",
            "SOLegionnaireCausticRainOfArrows",
            "SOLegionnaireSmokeArrow",
            "GTLegionnaireCausticRainOfArrows",
            "GTLegionnaireSmokeArrow",
            "LegionnaireDodgeLeft",
            "LegionnaireDodgeRight",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MeleeAtAnimationSpeedBow"] = {
        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.Multistrikeable] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "action_attack_or_cast_time_uses_animation_length",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
            "maintain_projectile_direction_when_using_contact_position",
            "check_for_targets_between_initiator_and_projectile_source",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["CGELegionaireSmokeGround"] = {
        name = "CGELegionaireSmokeGround",
        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_skill_effect_duration",
            "ground_smoke_art_variation",
            "base_skill_area_of_effect_+%",
        },
        levels = {
            [1] = {10000, 1000, 0, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["CGELegionaireCausticGround"] = {
        name = "CGELegionaireCausticGround",
        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",
            "ground_caustic_art_variation",
            "base_skill_effect_duration",
        },
        levels = {
            [1] = {1, 1005, 5000, levelRequirement = 1, statInterpolation = {3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GSLegionnaireCausticRainOfArrows"] = {
        name = "GSLegionnaireCausticRainOfArrows",
        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, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GSLegionnaireSmokeArrow"] = {
        name = "GSLegionnaireSmokeArrow",
        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, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["SOLegionnaireCausticRainOfArrows"] = {
        name = "SOLegionnaireCausticRainOfArrows",
        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["SOLegionnaireSmokeArrow"] = {
        name = "SOLegionnaireSmokeArrow",
        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["GTLegionnaireCausticRainOfArrows"] = {
        name = "GTLegionnaireCausticRainOfArrows",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1.5,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GTLegionnaireSmokeArrow"] = {
        name = "GTLegionnaireSmokeArrow",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1.5,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["LegionnaireDodgeLeft"] = {
        name = "LegionnaireDodgeLeft",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "monster_dodge_direction",
            "monster_dodge_distance",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {1, 25, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["LegionnaireDodgeRight"] = {
        name = "LegionnaireDodgeRight",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "monster_dodge_distance",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {25, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    
    IdNothing
    FamilyNothing
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    stance movement speed +% final [-66]
    IdStanceViperLegionnaireBowWalk
    FamilyStance
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • stance movement speed +% final Min: -66 Max: -66 Global
  • Craft Tagsspeed
    Viper Legionnaire
    stance movement speed +% final [-71]
    stance movement speed +% final [-83]
    SpectreY
    AreaThe Ziggurat Refuge, Utzaal, Utzaal
    Tags1HSword_onhit_audio, allows_additional_projectiles, fast_movement, human, humanoid, melee, not_int, physical_affinity, ranged, red_blood
    Packs
  • Viper Legionnaire, Viper Legionnaire
  • Utzaal, Utzaal: Viper Legionnaire, Viper Legionnaire
  • The Ziggurat Refuge: Viper Legionnaire, Viper Legionnaire
  • The Ziggurat Refuge: Viper Legionnaire, Viper Legionnaire
  • Life
    160%
    Armour
    +33%
    Evasion
    +66%
    Resistance
    0 0 0 0
    Damage
    144%
    Accuracy
    100%
    Critical Hits Chance
    5%
    Critical Damage Bonus
    +30%
    Attack Distance
    4 ~ 7
    Attack Time
    1.5 Second
    Damage Spread
    ±20%
    Experience
    160%
    Model Size
    100%
    Type
    VaalLegionnaireClaw
    Metadata
    ViperLegionnaireClaw_
    Level
    70
    Life
    13,946
    Armour
    5,156
    Evasion Rating
    833
    Damage
    357
    Spell Damage
    357
    Accuracy
    2,328
    Attack Time
    1.5
    Experience
    55,422
    Minion Life
    19,626
    Minion Damage
    3,114
    Minion Armour
    7,715
    MeleeAtAnimationSpeed
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 286–428
    Critical Hit Chance: 5%
    Attack Time: 1.5 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]
    MPAViperLegionnaireClawToss
    Attack, RangedAttack, MirageArcherCanUse, Projectile, ProjectilesFromUser, Damage, Triggerable
    Base Damage: 286–428
    Critical Hit Chance: 5%
    Attack Time: 1.5 sec
    Cooldown Time: 10 sec
    action attack or cast time uses animation length [1]
    base is projectile [1]
    monster projectile variation [1128]
    projectile ballistic angle from reference event [1]
    projectile uses contact direction [1]
    projectile uses contact position [1]
    spell maximum action distance +% [-70]
    use scaled contact offset [1]
    EASViperLegionnaireTeleport
    Cooldown Time: 10 sec
    action attack or cast time uses animation length [1]
    spell maximum action distance +% [-30]
    DTTViperLegionnaireWhirlingBlades
    Spell, Movement
    Cast Time: 1 sec
    Cooldown Time: 8 sec
    action attack or cast time uses animation length [1]
    leap slam minimum distance [40]
    spell maximum action distance +% [-40]
    walk emerge extra distance [10]
    GAViperLegionnaireWhirlingBlades
    Triggerable, Attack
    Base Damage: 286–428
    Critical Hit Chance: 5%
    Attack Damage: 110%
    Attack Time: 1.5 sec
    Deals 10% more Attack Damage
    action attack or cast time uses animation length [1]

    Object Type

    version 2
    extends "Metadata/Monsters/Monster"
    
    Actor
    {
    	basic_action = "ChangeToStance1"
    	basic_action = "ChangeToStance4"
    	basic_action = "StrafeLeftNoFlee"
    	basic_action = "StrafeRightNoFlee"
    }
    
    Stats
    {
    	strafe_distance_+% = -80
    	set_base_heavy_stun_duration_ms = 2450
    }
    
    StateMachine
    {
    	define_shared_state = "lock_on; in_smoke;"
    	on_state_lock_on_0 = "SetUsesDirectionalRunAnimations( false );"
    	on_state_lock_on_1 = "SetUsesDirectionalRunAnimations( true );"
    }
    
    Transitionable
    {
    	
    }
    

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    
    StateMachine
    {
    	on_or_create_state_in_smoke_0 = "EnableTargetable();"
    	on_or_create_state_in_smoke_1 = "DisableTargetable();"
    }
    
    Transitionable
    {
    
    	on_transition =
    	"
    		Roll( 1, 2, { PlayEffect( 'Metadata/Monsters/VaalMonsters/ViperLegionnaire/ViperLegionnareClawsAggroAudio.ao' ); } );
    	"
    }
    
    Animated
    {
    
    	preload_animated_object = "Metadata/Monsters/VaalMonsters/ViperLegionnaire/ViperLegionnareClawsAggroAudio.ao"
    
    }
    
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/VaalMonsters/ViperLegionnaire/ViperLegionnaireClaw_"] = {
        name = "Viper Legionnaire",
        life = 1.6,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1.44,
        damageSpread = 0.2,
        attackTime = 1.5,
        attackRange = 7,
        accuracy = 1,
        weaponType1 = "Claw",
        weaponType2 = "Claw",
        skillList = {
            "MeleeAtAnimationSpeed",
            "MPAViperLegionnaireClawToss",
            "GAViperLegionnaireWhirlingBlades",
            "EASViperLegionnaireTeleport",
            "DTTViperLegionnaireWhirlingBlades",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MeleeAtAnimationSpeed"] = {
        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.Multistrikeable] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "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["MPAViperLegionnaireClawToss"] = {
        name = "MPAViperLegionnaireClawToss",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.MirageArcherCanUse] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Damage] = true,
            [SkillType.Triggerable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "monster_projectile_variation",
            "spell_maximum_action_distance_+%",
            "base_is_projectile",
            "projectile_uses_contact_direction",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
            "action_attack_or_cast_time_uses_animation_length",
            "projectile_ballistic_angle_from_reference_event",
        },
        levels = {
            [1] = {1128, -70, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GAViperLegionnaireWhirlingBlades"] = {
        name = "GAViperLegionnaireWhirlingBlades",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
            [SkillType.Attack] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {baseMultiplier = 1.1, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASViperLegionnaireTeleport"] = {
        name = "EASViperLegionnaireTeleport",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 0.5,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_maximum_action_distance_+%",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {-30, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["DTTViperLegionnaireWhirlingBlades"] = {
        name = "DTTViperLegionnaireWhirlingBlades",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Movement] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            spell = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "walk_emerge_extra_distance",
            "leap_slam_minimum_distance",
            "spell_maximum_action_distance_+%",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {10, 40, -40, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    
    IdNothing
    FamilyNothing
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    stance movement speed +% final [-71]
    IdStanceViperLegionnaireClawsWalk
    FamilyStance
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • stance movement speed +% final Min: -71 Max: -71 Global
  • Craft Tagsspeed
    IdNothing
    FamilyNothing
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    stance movement speed +% final [-83]
    IdStanceMovementSpeedNegative83
    FamilyStance
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • stance movement speed +% final Min: -83 Max: -83 Global
  • Viper Legionnaire
    stance movement speed +% final [-60]
    stance movement speed +% final [-60]
    SpectreY
    AreaThe Ziggurat Refuge
    Tags2HSharpMetal_onhit_audio, human, humanoid, medium_movement, melee, not_dex, not_int, physical_affinity, red_blood
    Packs
  • Viper Legionnaire
  • The Ziggurat Refuge: Viper Legionnaire, Viper Legionnaire
  • Life
    160%
    Armour
    +80%
    Resistance
    0 0 0 0
    Damage
    160%
    Accuracy
    100%
    Critical Hits Chance
    5%
    Critical Damage Bonus
    +30%
    Attack Distance
    4 ~ 17
    Attack Time
    1.5 Second
    Damage Spread
    ±20%
    Experience
    160%
    Model Size
    100%
    Type
    VaalLegionnaireShield
    Metadata
    ViperLegionnaireShield_
    Level
    70
    Life
    13,946
    Armour
    6,979
    Evasion Rating
    502
    Damage
    397
    Spell Damage
    397
    Accuracy
    2,328
    Attack Time
    1.5
    Experience
    55,422
    Minion Life
    19,626
    Minion Damage
    3,460
    Minion Armour
    13,182
    MeleeAtAnimationSpeed
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 317–476
    Critical Hit Chance: 5%
    Attack Time: 1.5 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]
    EASViperLegionnaireShieldTurnLeft
    EASViperLegionnaireShieldTurnRight
    EASViperSkill5
    +70 to Melee Strike Range
    action attack or cast time uses animation length [1]

    Object Type

    version 2
    extends "Metadata/Monsters/Monster"
    
    Actor
    {
    	basic_action = "ChangeToStance1"
    	basic_action = "ChangeToStance4"
    	basic_action = "ChangeToStance5"
    	basic_action = "MoveForced"
    }
    
    Stats
    {
    	set_base_heavy_stun_duration_ms = 2433
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/VaalMonsters/ViperLegionnaire/ViperLegionnaireShield_"] = {
        name = "Viper Legionnaire",
        life = 1.6,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1.6,
        damageSpread = 0.2,
        attackTime = 1.5,
        attackRange = 17,
        accuracy = 1,
        weaponType1 = "Spear",
        weaponType2 = "Shield",
        skillList = {
            "MeleeAtAnimationSpeed",
            "EASViperSkill5",
            "EASViperLegionnaireShieldTurnLeft",
            "EASViperLegionnaireShieldTurnRight",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MeleeAtAnimationSpeed"] = {
        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.Multistrikeable] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "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["EASViperSkill5"] = {
        name = "EASViperSkill5",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "melee_range_+",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {70, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASViperLegionnaireShieldTurnLeft"] = {
        name = "EASViperLegionnaireShieldTurnLeft",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASViperLegionnaireShieldTurnRight"] = {
        name = "EASViperLegionnaireShieldTurnRight",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    
    IdNothing
    FamilyNothing
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    stance movement speed +% final [-60]
    IdStanceViperLegionnaireSpearShieldWalk
    FamilyStance
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • stance movement speed +% final Min: -60 Max: -60 Global
  • Craft Tagsspeed
    IdNothing
    FamilyNothing
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    stance movement speed +% final [-60]
    IdStanceViperLegionnaireSpearShieldWalk
    FamilyStance
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • stance movement speed +% final Min: -60 Max: -60 Global
  • Craft Tagsspeed
    Viper Legionnaire
    stance movement speed +% final [-60]
    stance movement speed +% final [-60]
    SpectreY
    Tags2HSharpMetal_onhit_audio, human, humanoid, medium_movement, melee, not_dex, not_int, physical_affinity, red_blood
    Life
    160%
    Armour
    +80%
    Resistance
    0 0 0 0
    Damage
    160%
    Accuracy
    100%
    Critical Hits Chance
    5%
    Critical Damage Bonus
    +30%
    Attack Distance
    4 ~ 17
    Attack Time
    1.5 Second
    Damage Spread
    ±20%
    Experience
    160%
    Model Size
    100%
    Type
    VaalLegionnaireShield
    Metadata
    ViperLegionnaireShieldNapuatzi
    Level
    68
    Life
    12,411
    Armour
    6,212
    Evasion Rating
    477
    Damage
    373
    Spell Damage
    373
    Accuracy
    2,180
    Attack Time
    1.5
    Experience
    45,814
    Minion Life
    18,048
    Minion Damage
    3,034
    Minion Armour
    11,733
    MeleeAtAnimationSpeed
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 298–448
    Critical Hit Chance: 5%
    Attack Time: 1.5 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]
    EASViperLegionnaireShieldTurnLeft
    EASViperLegionnaireShieldTurnRight
    EASViperSkill5
    +70 to Melee Strike Range
    action attack or cast time uses animation length [1]
    GAViperNapuatziGuardsAtttack
    Triggerable, Attack
    Base Damage: 298–448
    Critical Hit Chance: 5%
    Attack Damage: 200%
    Attack Time: 1.5 sec
    Deals 100% more Attack Damage
    Always Poison on Hit
    action attack or cast time uses animation length [1]
    base skill can be avoided by dodge roll [1]
    base skill can be blocked [1]
    MAASViperNapuatziSoldierStep
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 298–448
    Critical Hit Chance: 5%
    Attack Damage: 50%
    Attack Time: 1.5 sec
    Deals 50% less Attack Damage
    action attack or cast time uses animation length [1]
    projectile uses contact position [1]
    skill can fire wand projectiles [1]
    skill no los required [1]
    use scaled contact offset [1]
    EAAViperNapuatziSoldierShove
    action do not face target [1]
    skill no los required [1]
    GAViperNapuatziSoldierShove
    Triggerable, Attack
    Base Damage: 298–448
    Critical Hit Chance: 5%
    Attack Damage: 75%
    Attack Time: 1.5 sec
    Deals 25% less Attack Damage
    is area damage [1]
    EAAViperLegionaireShieldFlinch
    action attack or cast time uses animation length [1]
    action do not face target [1]
    skill no los required [1]
    EGViperNapuatziSoldierBadShove
    Triggerable
    action attack or cast time uses animation length [1]

    Object Type

    version 2
    extends "Metadata/Monsters/VaalMonsters/ViperLegionnaire/ViperLegionnaireShield"
    extends "Metadata/Monsters/VaalMonsters/Living/VaalSoldiersPatrolBase"
    
    StateMachine
    {
    	define_shared_state =
    	"
    		snaked;
    		blocking;
    		fighting;
    		forming;
    		lance_strike;
    		stepping;
    		freezing;
    	"
    
    	on_state_blocking_2 = "UnlockHeight();"
    }
    
    Functions
    {
    	path_to_location = "PathTo(arg1, 1);"
    
    	lock_height = "LockHeight(arg1);"
    
    	stop_collidable = "RemoveCollidability();"
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/VaalMonsters/ViperLegionnaire/ViperLegionnaireShield"
    extends "Metadata/Monsters/VaalMonsters/Living/VaalSoldiersPatrolBase"
    
    StateMachine
    {
    	on_state_snaked_1 =
    	"
    		PlayEffect( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/ao/ViperStoneAudio.ao' );
    		AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/epk/stone.epk' );
    	"
    
    	create_state_snaked_1 = "AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/epk/stone.epk' );"
    	on_state_lance_strike_0 = "RemoveEffectPackAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/epk/lance_hell/soldier_weapon_buff.epk', R_Weapon );"
    	on_state_lance_strike_1 = "PlayBeam( ViperNapuatziEmpowerBeam, globals.viperboss, this, default, default, 0.5, L_wrist_jntBnd, head_jntBnd );"
    	on_state_lance_strike_2 = "PlayBeam( ViperNapuatziEmpowerBeam, globals.viperboss, this, default, default, 0.5, R_wrist_jntBnd, head_jntBnd );"
    
    	on_or_create_state_lance_strike_3 =
    	"
    		AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/epk/lance_hell/soldier_buff_flash.epk', 1.0 );
    		AddEffectPackAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/epk/lance_hell/soldier_weapon_buff.epk', R_Weapon );
    	"
    
    	on_or_create_state_freezing_1 = "AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/epk/death/death_soldier_crystallize.epk' );"
    	on_state_freezing_2 = "PlayEffect( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/ao/death/death_crystals.ao' );"
    }
    
    Functions
    {
    	add_fire_epk =
    	"
    		AddEffectPackAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/epk/fire_chaos_rain/soldier_shieldscorch.epk', L_Weapon );
    		Delay( 5.0,
    		{
    			RemoveEffectPackAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/epk/fire_chaos_rain/soldier_shieldscorch.epk', L_Weapon );
    		} );
    	"
    
    	add_chaos_epk =
    	"
    		AddEffectPackAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/epk/fire_chaos_rain/soldier_shieldscorch_chaos.epk', L_Weapon );
    		Delay( 5.0,
    		{
    			RemoveEffectPackAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/epk/fire_chaos_rain/soldier_shieldscorch_chaos.epk', L_Weapon );
    		} );
    	"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/VaalMonsters/ViperLegionnaire/ViperLegionnaireShieldNapuatzi"] = {
        name = "Viper Legionnaire",
        life = 1.6,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1.6,
        damageSpread = 0.2,
        attackTime = 1.5,
        attackRange = 17,
        accuracy = 1,
        weaponType1 = "Spear",
        weaponType2 = "Shield",
        skillList = {
            "MeleeAtAnimationSpeed",
            "MAASViperNapuatziSoldierStep",
            "GAViperNapuatziGuardsAtttack",
            "GAViperNapuatziSoldierShove",
            "EASViperSkill5",
            "EASViperLegionnaireShieldTurnLeft",
            "EASViperLegionnaireShieldTurnRight",
            "EAAViperNapuatziSoldierShove",
            "EAAViperLegionaireShieldFlinch",
            "EGViperNapuatziSoldierBadShove",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MeleeAtAnimationSpeed"] = {
        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.Multistrikeable] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "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["MAASViperNapuatziSoldierStep"] = {
        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.Multistrikeable] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "action_attack_or_cast_time_uses_animation_length",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
            "skill_no_los_required",
        },
        levels = {
            [1] = {baseMultiplier = 0.5, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GAViperNapuatziGuardsAtttack"] = {
        name = "GAViperNapuatziGuardsAtttack",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
            [SkillType.Attack] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "base_chance_to_poison_on_hit_%",
            "action_attack_or_cast_time_uses_animation_length",
            "base_skill_can_be_blocked",
            "base_skill_can_be_avoided_by_dodge_roll",
        },
        levels = {
            [1] = {100, baseMultiplier = 2, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GAViperNapuatziSoldierShove"] = {
        name = "GAViperNapuatziSoldierShove",
        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",
        },
        levels = {
            [1] = {baseMultiplier = 0.75, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASViperSkill5"] = {
        name = "EASViperSkill5",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "melee_range_+",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {70, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASViperLegionnaireShieldTurnLeft"] = {
        name = "EASViperLegionnaireShieldTurnLeft",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASViperLegionnaireShieldTurnRight"] = {
        name = "EASViperLegionnaireShieldTurnRight",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EAAViperNapuatziSoldierShove"] = {
        name = "EAAViperNapuatziSoldierShove",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "skill_no_los_required",
            "action_do_not_face_target",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EAAViperLegionaireShieldFlinch"] = {
        name = "EAAViperLegionaireShieldFlinch",
        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",
            "skill_no_los_required",
            "action_do_not_face_target",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EGViperNapuatziSoldierBadShove"] = {
        name = "EGViperNapuatziSoldierBadShove",
        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 = { }, },
        },
    }
    
    IdNothing
    FamilyNothing
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    stance movement speed +% final [-60]
    IdStanceViperLegionnaireSpearShieldWalk
    FamilyStance
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • stance movement speed +% final Min: -60 Max: -60 Global
  • Craft Tagsspeed
    IdNothing
    FamilyNothing
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    stance movement speed +% final [-60]
    IdStanceViperLegionnaireSpearShieldWalk
    FamilyStance
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • stance movement speed +% final Min: -60 Max: -60 Global
  • Craft Tagsspeed
    Viper Legionnaire
    stance movement speed +% final [-60]
    stance movement speed +% final [-60]
    SpectreY
    Tags2HSharpMetal_onhit_audio, human, humanoid, medium_movement, not_dex, not_int, red_blood
    Life
    160%
    Armour
    +80%
    Resistance
    0 0 0 0
    Damage
    160%
    Accuracy
    100%
    Critical Hits Chance
    5%
    Critical Damage Bonus
    +30%
    Attack Distance
    4 ~ 17
    Attack Time
    1.5 Second
    Damage Spread
    ±20%
    Experience
    160%
    Model Size
    100%
    Type
    VaalLegionnaireShield
    Metadata
    ViperLegionnaireShieldNapuatziNoScale
    Level
    68
    Life
    12,411
    Armour
    6,212
    Evasion Rating
    477
    Damage
    373
    Spell Damage
    373
    Accuracy
    2,180
    Attack Time
    1.5
    Experience
    45,814
    Minion Life
    18,048
    Minion Damage
    3,034
    Minion Armour
    11,733
    MeleeAtAnimationSpeed
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 298–448
    Critical Hit Chance: 5%
    Attack Time: 1.5 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]
    EASViperLegionnaireShieldTurnLeft
    EASViperLegionnaireShieldTurnRight
    EASViperSkill5
    +70 to Melee Strike Range
    action attack or cast time uses animation length [1]
    GAViperNapuatziGuardsAtttack
    Triggerable, Attack
    Base Damage: 298–448
    Critical Hit Chance: 5%
    Attack Damage: 200%
    Attack Time: 1.5 sec
    Deals 100% more Attack Damage
    Always Poison on Hit
    action attack or cast time uses animation length [1]
    base skill can be avoided by dodge roll [1]
    base skill can be blocked [1]
    MAASViperNapuatziSoldierStep
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 298–448
    Critical Hit Chance: 5%
    Attack Damage: 50%
    Attack Time: 1.5 sec
    Deals 50% less Attack Damage
    action attack or cast time uses animation length [1]
    projectile uses contact position [1]
    skill can fire wand projectiles [1]
    skill no los required [1]
    use scaled contact offset [1]
    EAAViperNapuatziSoldierShove
    action do not face target [1]
    skill no los required [1]
    GAViperNapuatziSoldierShove
    Triggerable, Attack
    Base Damage: 298–448
    Critical Hit Chance: 5%
    Attack Damage: 75%
    Attack Time: 1.5 sec
    Deals 25% less Attack Damage
    is area damage [1]
    EAAViperLegionaireShieldFlinch
    action attack or cast time uses animation length [1]
    action do not face target [1]
    skill no los required [1]
    EGViperNapuatziSoldierBadShove
    Triggerable
    action attack or cast time uses animation length [1]

    Object Type

    version 2
    extends "Metadata/Monsters/VaalMonsters/ViperLegionnaire/ViperLegionnaireShield"
    extends "Metadata/Monsters/VaalMonsters/Living/VaalSoldiersPatrolBase"
    
    StateMachine
    {
    	define_shared_state =
    	"
    		snaked;
    		blocking;
    		fighting;
    		forming;
    		lance_strike;
    		stepping;
    		freezing;
    	"
    
    	on_state_blocking_2 = "UnlockHeight();"
    }
    
    Functions
    {
    	path_to_location = "PathTo(arg1, 1);"
    
    	lock_height = "LockHeight(arg1);"
    
    	stop_collidable = "RemoveCollidability();"
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/VaalMonsters/ViperLegionnaire/ViperLegionnaireShield"
    extends "Metadata/Monsters/VaalMonsters/Living/VaalSoldiersPatrolBase"
    
    StateMachine
    {
    	on_state_snaked_1 =
    	"
    		PlayEffect( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/ao/ViperStoneAudio.ao' );
    		AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/epk/stone.epk' );
    	"
    
    	create_state_snaked_1 = "AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/epk/stone.epk' );"
    	on_state_lance_strike_0 = "RemoveEffectPackAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/epk/lance_hell/soldier_weapon_buff.epk', R_Weapon );"
    	on_state_lance_strike_1 = "PlayBeam( ViperNapuatziEmpowerBeam, globals.viperboss, this, default, default, 0.5, L_wrist_jntBnd, head_jntBnd );"
    	on_state_lance_strike_2 = "PlayBeam( ViperNapuatziEmpowerBeam, globals.viperboss, this, default, default, 0.5, R_wrist_jntBnd, head_jntBnd );"
    
    	on_or_create_state_lance_strike_3 =
    	"
    		AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/epk/lance_hell/soldier_buff_flash.epk', 1.0 );
    		AddEffectPackAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/epk/lance_hell/soldier_weapon_buff.epk', R_Weapon );
    	"
    
    	on_or_create_state_freezing_1 = "AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/epk/death/death_soldier_crystallize.epk' );"
    	on_state_freezing_2 = "PlayEffect( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/ao/death/death_crystals.ao' );"
    }
    
    Functions
    {
    	add_fire_epk =
    	"
    		AddEffectPackAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/epk/fire_chaos_rain/soldier_shieldscorch.epk', L_Weapon );
    		Delay( 5.0,
    		{
    			RemoveEffectPackAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/epk/fire_chaos_rain/soldier_shieldscorch.epk', L_Weapon );
    		} );
    	"
    
    	add_chaos_epk =
    	"
    		AddEffectPackAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/epk/fire_chaos_rain/soldier_shieldscorch_chaos.epk', L_Weapon );
    		Delay( 5.0,
    		{
    			RemoveEffectPackAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/ViperNapuatzi/epk/fire_chaos_rain/soldier_shieldscorch_chaos.epk', L_Weapon );
    		} );
    	"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/VaalMonsters/ViperLegionnaire/ViperLegionnaireShieldNapuatziNoScale"] = {
        name = "Viper Legionnaire",
        life = 1.6,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1.6,
        damageSpread = 0.2,
        attackTime = 1.5,
        attackRange = 17,
        accuracy = 1,
        weaponType1 = "Spear",
        weaponType2 = "Shield",
        skillList = {
            "MeleeAtAnimationSpeed",
            "MAASViperNapuatziSoldierStep",
            "GAViperNapuatziGuardsAtttack",
            "GAViperNapuatziSoldierShove",
            "EASViperSkill5",
            "EASViperLegionnaireShieldTurnLeft",
            "EASViperLegionnaireShieldTurnRight",
            "EAAViperNapuatziSoldierShove",
            "EAAViperLegionaireShieldFlinch",
            "EGViperNapuatziSoldierBadShove",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MeleeAtAnimationSpeed"] = {
        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.Multistrikeable] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "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["MAASViperNapuatziSoldierStep"] = {
        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.Multistrikeable] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "action_attack_or_cast_time_uses_animation_length",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
            "skill_no_los_required",
        },
        levels = {
            [1] = {baseMultiplier = 0.5, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GAViperNapuatziGuardsAtttack"] = {
        name = "GAViperNapuatziGuardsAtttack",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
            [SkillType.Attack] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "base_chance_to_poison_on_hit_%",
            "action_attack_or_cast_time_uses_animation_length",
            "base_skill_can_be_blocked",
            "base_skill_can_be_avoided_by_dodge_roll",
        },
        levels = {
            [1] = {100, baseMultiplier = 2, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GAViperNapuatziSoldierShove"] = {
        name = "GAViperNapuatziSoldierShove",
        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",
        },
        levels = {
            [1] = {baseMultiplier = 0.75, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASViperSkill5"] = {
        name = "EASViperSkill5",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "melee_range_+",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {70, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASViperLegionnaireShieldTurnLeft"] = {
        name = "EASViperLegionnaireShieldTurnLeft",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASViperLegionnaireShieldTurnRight"] = {
        name = "EASViperLegionnaireShieldTurnRight",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EAAViperNapuatziSoldierShove"] = {
        name = "EAAViperNapuatziSoldierShove",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "skill_no_los_required",
            "action_do_not_face_target",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EAAViperLegionaireShieldFlinch"] = {
        name = "EAAViperLegionaireShieldFlinch",
        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",
            "skill_no_los_required",
            "action_do_not_face_target",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EGViperNapuatziSoldierBadShove"] = {
        name = "EGViperNapuatziSoldierBadShove",
        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 = { }, },
        },
    }
    
    IdNothing
    FamilyNothing
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    stance movement speed +% final [-60]
    IdStanceViperLegionnaireSpearShieldWalk
    FamilyStance
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • stance movement speed +% final Min: -60 Max: -60 Global
  • Craft Tagsspeed
    IdNothing
    FamilyNothing
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    stance movement speed +% final [-60]
    IdStanceViperLegionnaireSpearShieldWalk
    FamilyStance
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • stance movement speed +% final Min: -60 Max: -60 Global
  • Craft Tagsspeed
    Viper Legionnaire
    stance movement speed +% final [-60]
    stance movement speed +% final [-60]
    SpectreY
    Tags2HSharpMetal_onhit_audio, human, humanoid, medium_movement, melee, not_dex, not_int, physical_affinity, red_blood
    Life
    160%
    Armour
    +80%
    Resistance
    0 0 0 0
    Damage
    160%
    Accuracy
    100%
    Critical Hits Chance
    5%
    Critical Damage Bonus
    +30%
    Attack Distance
    4 ~ 17
    Attack Time
    1.5 Second
    Damage Spread
    ±20%
    Experience
    160%
    Model Size
    100%
    Type
    VaalLegionnaireShield
    Metadata
    ViperLegionnaireShieldUtzaalIntro
    Level
    68
    Life
    12,411
    Armour
    6,212
    Evasion Rating
    477
    Damage
    373
    Spell Damage
    373
    Accuracy
    2,180
    Attack Time
    1.5
    Experience
    45,814
    Minion Life
    18,048
    Minion Damage
    3,034
    Minion Armour
    11,733
    MeleeAtAnimationSpeed
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 298–448
    Critical Hit Chance: 5%
    Attack Time: 1.5 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]
    EASViperLegionnaireShieldTurnLeft
    EASViperLegionnaireShieldTurnRight
    EASViperSkill5
    +70 to Melee Strike Range
    action attack or cast time uses animation length [1]

    Object Type

    version 2
    extends "Metadata/Monsters/VaalMonsters/ViperLegionnaire/ViperLegionnaireShield"

    Object Type Codes

    version 2
    extends "Metadata/Monsters/VaalMonsters/ViperLegionnaire/ViperLegionnaireShield"
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/VaalMonsters/ViperLegionnaire/ViperLegionnaireShieldUtzaalIntro"] = {
        name = "Viper Legionnaire",
        life = 1.6,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1.6,
        damageSpread = 0.2,
        attackTime = 1.5,
        attackRange = 17,
        accuracy = 1,
        weaponType1 = "Spear",
        weaponType2 = "Shield",
        skillList = {
            "MeleeAtAnimationSpeed",
            "EASViperSkill5",
            "EASViperLegionnaireShieldTurnLeft",
            "EASViperLegionnaireShieldTurnRight",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MeleeAtAnimationSpeed"] = {
        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.Multistrikeable] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
            "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["EASViperSkill5"] = {
        name = "EASViperSkill5",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "melee_range_+",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {70, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASViperLegionnaireShieldTurnLeft"] = {
        name = "EASViperLegionnaireShieldTurnLeft",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASViperLegionnaireShieldTurnRight"] = {
        name = "EASViperLegionnaireShieldTurnRight",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    
    IdNothing
    FamilyNothing
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    stance movement speed +% final [-60]
    IdStanceViperLegionnaireSpearShieldWalk
    FamilyStance
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • stance movement speed +% final Min: -60 Max: -60 Global
  • Craft Tagsspeed
    IdNothing
    FamilyNothing
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    stance movement speed +% final [-60]
    IdStanceViperLegionnaireSpearShieldWalk
    FamilyStance
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • stance movement speed +% final Min: -60 Max: -60 Global
  • Craft Tagsspeed
    Edit

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