← Back to list

Vaal Skeletal Archer

Slug: Vaal_Skeletal_Archer

Open Source Page
Spectre-capable
Tags: Arrow_onhit_audio allows_additional_projectiles fire_affinity monster_barely_moves ranged skeleton undead very_slow_movement
Areas: Jiquani's Machinarium Jiquani's Sanctum Kriar Peaks The Ziggurat Refuge
Vaal Skeletal Archer artwork

No custom art yet. Upload one to replace the placeholder.

Stats by Level

Rarity Life Damage Armour Evasion Accuracy Experience Resistances
Unique 1,451,711 642.45 14,441 1,304 4,011 0 F: 0% / C: 0% / L: 0% / Ch: 0%
Rare 400,472 642.45 14,441 1,304 4,011 0 F: 0% / C: 0% / L: 0% / Ch: 0%
Magic 124,146 642.45 14,441 1,304 4,011 0 F: 0% / C: 0% / L: 0% / Ch: 0%
Normal 50,059 642.45 14,441 1,304 4,011 0 F: 0% / C: 0% / L: 0% / Ch: 0%

Core Stat Percentiles

Life
1,451,711
Unique @ Level 100
Damage
642.45
Unique @ Level 100
Armour
14,441
Unique @ Level 100
Evasion
1,304
Unique @ Level 100
Accuracy
4,011
Unique @ Level 100
Experience
0
Unique @ Level 100

Other Notable Percentiles

Resistances
F: 0% / C: 0% / L: 0% / Ch: 0%
Unique @ Level 100

Vaal Skeletal Archer

Variant code: BoneRabbleEagle
Section 1 of 2

Overview

Implicit Mods: undead description [1]

Base Multipliers

Life
100%
Resistance
0 0 0 0
Damage
110%
Accuracy
100%
Critical Hits Chance
5%
Critical Damage Bonus
+30%
Attack Distance
6 ~ 55
Attack Time
1.5 Second
Damage Spread
±30%
Experience
100%
Model Size
100%
Type
SkeletonBasicRanged
Metadata
BoneRabbleEagle

Extra Data

version 2
extends "Metadata/Monsters/Monster"

Actor
{
	basic_action = "ChangeToStance1"
	basic_action = "ChangeToStance2"
	basic_action = "ChangeToStance3"
	basic_action = "Emerge"
	basic_action = "Revive"
}

StateMachine
{
	define_shared_state =
	"
		use_arrow;
		arrow_visible = 1;
	"
}

Stats
{
	set_base_heavy_stun_duration_ms = 2488
}
version 2
extends "Metadata/Monsters/Monster"

Life
{
	on_spawned_alive =
	"
		HideMeshSegmentsBySubstring( Static|Bone );
		AddEffectPackAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/BoneRabble/epk/sceptre_fx.epk', 'Metadata/Monsters/Skeletons/BoneRabble/Squire/BoneRabbleSceptreAncient.ao' );
	"

	on_death =
	"
		ShowMeshSegmentsBySubstring( Static|Bone );
		HideMeshSegmentsBySubstring( Robe|Bone );
		RemoveEffectPackAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/BoneRabble/epk/sceptre_fx.epk', 'Metadata/Monsters/Skeletons/BoneRabble/Squire/BoneRabbleSceptreAncient.ao' );
		IfVarietyContains( BoneRabbleEagle,
		{
			PlayAnimationAttached( 'Metadata/Monsters/Skeletons/BoneRabble/Eagle/BoneRabbleEagleQuiver.ao', death_01 );
		} );
		IfVarietyContains( BoneRabbleSquire,
		{
			PlayAnimationAttached( 'Metadata/Monsters/Skeletons/BoneRabble/Squire/BoneRabbleSquireBackpack.ao', death_01 );
		} );
	"

	on_spawned_dead = "HideMeshSegmentsBySubstring( Robe|Bone );"
}

Animated
{
	on_event_remove_arrow = "SetStateTo( arrow_visible, 0 );"
	on_event_add_arrow = "SetStateTo( arrow_visible, 1 );"
}

StateMachine
{
	on_state_arrow_visible_0 = "DetachAllOfType( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/BoneRabble_Eagle/ao/basic_arrow_flaming.ao' );"

	on_state_arrow_visible_1 =
	"
		IfState( use_arrow, 1, { AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/BoneRabble_Eagle/ao/basic_arrow_flaming.ao', R_Weapon ); } );
	"

	create_state_arrow_visible_1 =
	"
		IfState( use_arrow, 1, { AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/BoneRabble_Eagle/ao/basic_arrow_flaming.ao', R_Weapon ); } );
	"
}
-- src\Data\Spectres.lua
minions["Metadata/Monsters/Skeletons/BoneRabble/BoneRabbleEagle"] = {
    name = "Vaal Skeletal Archer",
    life = 1,
    fireResist = 0,
    coldResist = 0,
    lightningResist = 0,
    chaosResist = 0,
    damage = 1.1,
    damageSpread = 0.3,
    attackTime = 1.5,
    attackRange = 55,
    accuracy = 1,
    weaponType1 = "Bow",
    skillList = {
        "MASFireConvertAltArtFireArrow",
        "MPSBoneRabbleBurningArrow",
    },
    modList = {
    },
}
-- src\Data\Skills\spectre.lua
skills["MASFireConvertAltArtFireArrow"] = {
    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 = {
        "active_skill_base_physical_damage_%_to_convert_to_fire",
        "ignite_chance_+%",
        "arrow_projectile_variation",
        "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",
        "projectile_ballistic_angle_from_reference_event",
    },
    levels = {
        [1] = {60, 50, 1000, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MPSBoneRabbleBurningArrow"] = {
    name = "MPSBoneRabbleBurningArrow",
    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.5,
    baseFlags = {
        attack = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "monster_projectile_variation",
        "ignite_chance_+%",
        "non_skill_base_physical_damage_%_to_gain_as_fire",
        "active_skill_base_physical_damage_%_to_convert_to_fire",
        "use_scaled_contact_offset",
        "projectile_uses_contact_position",
        "base_is_projectile",
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {1032, 50, 30, 60, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}

Vaal Skeletal Archer

Variant code: BoneRabbleEagleStrongbox
Section 2 of 2

Overview

Undead

Implicit Mods: undead description [1]

Summary

Spectre N
Tags allows_additional_projectiles, Arrow_onhit_audio, fire_affinity, monster_barely_moves, ranged, skeleton, undead, very_slow_movement
Packs
  • Vaal Skeletal Priest, Vaal Skeletal Archer, Vaal Skeletal Warrior, Vaal Skeletal Squire
  • Vaal Skeletal Archer, Vaal Skeletal Warrior
  • Base Multipliers

    Life
    100%
    Resistance
    0 0 0 0
    Damage
    110%
    Accuracy
    100%
    Critical Hits Chance
    5%
    Critical Damage Bonus
    +30%
    Attack Distance
    6 ~ 55
    Attack Time
    1.5 Second
    Damage Spread
    ±30%
    Experience
    100%
    Model Size
    100%
    Type
    SkeletonBasicRanged
    Metadata
    BoneRabbleEagleStrongbox

    Extra Data

    version 2
    extends "Metadata/Monsters/Monster"
    
    Actor
    {
    	basic_action = "ChangeToStance1"
    	basic_action = "ChangeToStance2"
    	basic_action = "ChangeToStance3"
    	basic_action = "Emerge"
    	basic_action = "Revive"
    }
    
    StateMachine
    {
    	define_shared_state =
    	"
    		use_arrow;
    		arrow_visible = 1;
    	"
    }
    
    Stats
    {
    	set_base_heavy_stun_duration_ms = 2488
    }
    version 2
    extends "Metadata/Monsters/Monster"
    
    Life
    {
    	on_spawned_alive =
    	"
    		HideMeshSegmentsBySubstring( Static|Bone );
    		AddEffectPackAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/BoneRabble/epk/sceptre_fx.epk', 'Metadata/Monsters/Skeletons/BoneRabble/Squire/BoneRabbleSceptreAncient.ao' );
    	"
    
    	on_death =
    	"
    		ShowMeshSegmentsBySubstring( Static|Bone );
    		HideMeshSegmentsBySubstring( Robe|Bone );
    		RemoveEffectPackAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/BoneRabble/epk/sceptre_fx.epk', 'Metadata/Monsters/Skeletons/BoneRabble/Squire/BoneRabbleSceptreAncient.ao' );
    		IfVarietyContains( BoneRabbleEagle,
    		{
    			PlayAnimationAttached( 'Metadata/Monsters/Skeletons/BoneRabble/Eagle/BoneRabbleEagleQuiver.ao', death_01 );
    		} );
    		IfVarietyContains( BoneRabbleSquire,
    		{
    			PlayAnimationAttached( 'Metadata/Monsters/Skeletons/BoneRabble/Squire/BoneRabbleSquireBackpack.ao', death_01 );
    		} );
    	"
    
    	on_spawned_dead = "HideMeshSegmentsBySubstring( Robe|Bone );"
    }
    
    Animated
    {
    	on_event_remove_arrow = "SetStateTo( arrow_visible, 0 );"
    	on_event_add_arrow = "SetStateTo( arrow_visible, 1 );"
    }
    
    StateMachine
    {
    	on_state_arrow_visible_0 = "DetachAllOfType( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/BoneRabble_Eagle/ao/basic_arrow_flaming.ao' );"
    
    	on_state_arrow_visible_1 =
    	"
    		IfState( use_arrow, 1, { AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/BoneRabble_Eagle/ao/basic_arrow_flaming.ao', R_Weapon ); } );
    	"
    
    	create_state_arrow_visible_1 =
    	"
    		IfState( use_arrow, 1, { AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/BoneRabble_Eagle/ao/basic_arrow_flaming.ao', R_Weapon ); } );
    	"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/Skeletons/BoneRabble/BoneRabbleEagleStrongbox"] = {
        name = "Vaal Skeletal Archer",
        life = 1,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1.1,
        damageSpread = 0.3,
        attackTime = 1.5,
        attackRange = 55,
        accuracy = 1,
        weaponType1 = "Bow",
        skillList = {
            "MASFireConvertAltArtFireArrow",
            "MPSBoneRabbleBurningArrow",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MASFireConvertAltArtFireArrow"] = {
        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 = {
            "active_skill_base_physical_damage_%_to_convert_to_fire",
            "ignite_chance_+%",
            "arrow_projectile_variation",
            "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",
            "projectile_ballistic_angle_from_reference_event",
        },
        levels = {
            [1] = {60, 50, 1000, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MPSBoneRabbleBurningArrow"] = {
        name = "MPSBoneRabbleBurningArrow",
        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.5,
        baseFlags = {
            attack = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "monster_projectile_variation",
            "ignite_chance_+%",
            "non_skill_base_physical_damage_%_to_gain_as_fire",
            "active_skill_base_physical_damage_%_to_convert_to_fire",
            "use_scaled_contact_offset",
            "projectile_uses_contact_position",
            "base_is_projectile",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {1032, 50, 30, 60, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }