衰朽佣兵
亡灵
undead description [1]
Decrepit Mercenary
SpectreY
Area欧甘农地, 幽闭监牢, 金字塔避难所, 藏身处:农田
Tags1HAxe_onhit_audio, melee, not_dex, not_int, physical_affinity, slow_movement, undead, zombie
Packs
  • 欧甘农地: 衰朽佣兵, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 金字塔避难所: 衰朽佣兵, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 金字塔避难所: 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 生命
    120%
    +50%
    抗性
    0 0 0 0
    伤害
    120%
    命中
    100%
    暴击 Chance
    5%
    Attack Distance
    5 ~ 8
    攻击间隔
    1.755 Second
    Damage Spread
    ±20%
    经验值
    120%
    Model Size
    100%
    Type
    InfectedMercenaryOneHand
    Metadata
    InfectedMercenaryAxe__
    等级
    65
    生命
    7,816
    3,035
    伤害
    255
    法术伤害
    255
    命中
    2,214
    攻击间隔
    1.755
    经验值
    25,808
    召唤物生命
    7,538
    召唤物伤害
    995
    召唤物护甲
    5,058
    MeleeAtAnimationSpeed
    攻击, 范围攻击, 技能可幻影射手, 投射物, 近战单一目标, 近战, 玩家投射物
    基础攻击
    Base Damage: 204–306
    暴击率: 5%
    攻击间隔: 1.755 秒
    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"
    
    Actor
    {
    	basic_action = "Revive"
    	basic_action = "Emerge"
    	basic_action = "Emerge2"
    	basic_action = "ChangeToStance1"
    	basic_action = "ChangeToStance2"
    }
    
    StateMachine
    {
    	define_shared_state = "fire;"
    }
    
    Stats
    {
    	set_base_heavy_stun_duration_ms = 2200
    }
    
    Transitionable
    
    {
    
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    
    StateMachine
    {
    	on_or_create_state_fire_2 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			this.my_torch_fire = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/PirateBarrel/ao/torch_fire.ao', L_Weapon_Fire );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', MainHand );
    		} );
    		IfVarietyContains( MaulIncin, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', MainHand );
    		} );
    		IfVarietyContains( AxeIncin, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', MainHand );
    		} );
    		SetAudioParam( WeaponFireEPK, 1 );
    	"
    
    	on_state_fire_0 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			my_torch_fire.SetLightState( off, GetCurrentAnimationLength(), 0 );
    			PlayAnimationAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/PirateBarrel/ao/torch_fire.ao', end_rand );
    		} );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', OffHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', OffHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', OffHand );
    	"
    
    	create_state_fire_0 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			my_torch_fire.SetLightState( off, 0, 0 );
    			my_torch.PlayAnimation( end_rand );
    			my_torch.GoToAnimationEnd();
    		} );
    	"
    
    	on_or_create_state_fire_1 =
    	"
    		IfVarietyContains( Axe__, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', MainHand );
    		} );
    		IfVarietyContains( Sword, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', MainHand );
    		} );
    		IfVarietyContains( AxeAxe, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', MainHand );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', OffHand );
    		} );
    		IfVarietyContains( SwordSword_, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', MainHand );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', OffHand );
    		} );
    		IfVarietyContains( Maul, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hmace.epk', MainHand );
    		} );
    	"
    }
    
    Transitionable
    
    {
    
    on_transition =
    
    "
    
    Roll( 1, 2, { PlayEffect( 'Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryAggroAudio.ao' ); } );
    
    "
    
    }
    
    Animated
    
    {
    
    preload_animated_object = "Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryAggroAudio.ao"
    
    }
    
    Render
    {
    	selection_size_override = "100, 100, 190"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/Mercenary/Infected/InfectedMercenaryAxe__"] = {
        name = "Decrepit Mercenary",
        life = 1.2,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1.2,
        damageSpread = 0.2,
        attackTime = 1.755,
        attackRange = 8,
        accuracy = 1,
        weaponType1 = "One Hand Axe",
        skillList = {
            "MeleeAtAnimationSpeed",
        },
        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.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 = { }, },
        },
    }
    
    undead description [1]
    FamilyMonsterNecromancerRaisable
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    Stats
  • undead description Min: 1 Max: 1 Global
  • Adds Tagsnecromancer_raisable
    衰朽佣兵
    亡灵
    undead description [1]
    Decrepit Mercenary
    SpectreY
    Area欧甘农地, 幽闭监牢, 金字塔避难所
    Tags1HSword_onhit_audio, melee, not_dex, not_int, physical_affinity, slow_movement, undead, zombie
    Packs
  • 欧甘农地: 衰朽佣兵, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 金字塔避难所: 衰朽佣兵, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 生命
    120%
    +50%
    抗性
    0 0 0 0
    伤害
    120%
    命中
    100%
    暴击 Chance
    5%
    Attack Distance
    5 ~ 8
    攻击间隔
    1.755 Second
    Damage Spread
    ±20%
    经验值
    120%
    Model Size
    100%
    Type
    InfectedMercenaryOneHand
    Metadata
    InfectedMercenarySword
    等级
    65
    生命
    7,816
    3,035
    伤害
    255
    法术伤害
    255
    命中
    2,214
    攻击间隔
    1.755
    经验值
    25,808
    召唤物生命
    7,538
    召唤物伤害
    995
    召唤物护甲
    5,058
    MeleeAtAnimationSpeed
    攻击, 范围攻击, 技能可幻影射手, 投射物, 近战单一目标, 近战, 玩家投射物
    基础攻击
    Base Damage: 204–306
    暴击率: 5%
    攻击间隔: 1.755 秒
    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"
    
    Actor
    {
    	basic_action = "Revive"
    	basic_action = "Emerge"
    	basic_action = "Emerge2"
    	basic_action = "ChangeToStance1"
    	basic_action = "ChangeToStance2"
    }
    
    StateMachine
    {
    	define_shared_state = "fire;"
    }
    
    Stats
    {
    	set_base_heavy_stun_duration_ms = 2200
    }
    
    Transitionable
    
    {
    
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    
    StateMachine
    {
    	on_or_create_state_fire_2 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			this.my_torch_fire = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/PirateBarrel/ao/torch_fire.ao', L_Weapon_Fire );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', MainHand );
    		} );
    		IfVarietyContains( MaulIncin, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', MainHand );
    		} );
    		IfVarietyContains( AxeIncin, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', MainHand );
    		} );
    		SetAudioParam( WeaponFireEPK, 1 );
    	"
    
    	on_state_fire_0 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			my_torch_fire.SetLightState( off, GetCurrentAnimationLength(), 0 );
    			PlayAnimationAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/PirateBarrel/ao/torch_fire.ao', end_rand );
    		} );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', OffHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', OffHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', OffHand );
    	"
    
    	create_state_fire_0 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			my_torch_fire.SetLightState( off, 0, 0 );
    			my_torch.PlayAnimation( end_rand );
    			my_torch.GoToAnimationEnd();
    		} );
    	"
    
    	on_or_create_state_fire_1 =
    	"
    		IfVarietyContains( Axe__, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', MainHand );
    		} );
    		IfVarietyContains( Sword, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', MainHand );
    		} );
    		IfVarietyContains( AxeAxe, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', MainHand );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', OffHand );
    		} );
    		IfVarietyContains( SwordSword_, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', MainHand );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', OffHand );
    		} );
    		IfVarietyContains( Maul, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hmace.epk', MainHand );
    		} );
    	"
    }
    
    Transitionable
    
    {
    
    on_transition =
    
    "
    
    Roll( 1, 2, { PlayEffect( 'Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryAggroAudio.ao' ); } );
    
    "
    
    }
    
    Animated
    
    {
    
    preload_animated_object = "Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryAggroAudio.ao"
    
    }
    
    Render
    {
    	selection_size_override = "100, 100, 190"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/Mercenary/Infected/InfectedMercenarySword"] = {
        name = "Decrepit Mercenary",
        life = 1.2,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1.2,
        damageSpread = 0.2,
        attackTime = 1.755,
        attackRange = 8,
        accuracy = 1,
        weaponType1 = "One Hand Sword",
        skillList = {
            "MeleeAtAnimationSpeed",
        },
        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.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 = { }, },
        },
    }
    
    undead description [1]
    FamilyMonsterNecromancerRaisable
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    Stats
  • undead description Min: 1 Max: 1 Global
  • Adds Tagsnecromancer_raisable
    衰朽佣兵
    亡灵
    undead description [1]
    Decrepit Mercenary
    SpectreY
    Area欧甘农地, 庄园城壁, 幽闭监牢, 金字塔避难所
    Tags1HAxe_onhit_audio, melee, not_dex, not_int, physical_affinity, slow_movement, undead, zombie
    Packs
  • 欧甘农地: 衰朽佣兵, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 庄园城壁: 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 庄园城壁: 钢铁奇术师, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 庄园城壁: 钢铁矛兵, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 庄园城壁: 钢铁守卫, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 金字塔避难所: 衰朽佣兵, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 生命
    120%
    +50%
    抗性
    0 0 0 0
    伤害
    120%
    命中
    100%
    暴击 Chance
    5%
    Attack Distance
    5 ~ 11
    攻击间隔
    1.755 Second
    Damage Spread
    ±20%
    经验值
    120%
    Model Size
    100%
    Type
    InfectedMercenaryOneHand
    Metadata
    InfectedMercenaryAxeAxe
    等级
    65
    生命
    7,816
    3,035
    伤害
    255
    法术伤害
    255
    命中
    2,214
    攻击间隔
    1.755
    经验值
    25,808
    召唤物生命
    7,538
    召唤物伤害
    995
    召唤物护甲
    5,058
    MeleeAtAnimationSpeed
    攻击, 范围攻击, 技能可幻影射手, 投射物, 近战单一目标, 近战, 玩家投射物
    基础攻击
    Base Damage: 204–306
    暴击率: 5%
    攻击间隔: 1.755 秒
    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"
    
    Actor
    {
    	basic_action = "Revive"
    	basic_action = "Emerge"
    	basic_action = "Emerge2"
    	basic_action = "ChangeToStance1"
    	basic_action = "ChangeToStance2"
    }
    
    StateMachine
    {
    	define_shared_state = "fire;"
    }
    
    Stats
    {
    	set_base_heavy_stun_duration_ms = 2200
    }
    
    Transitionable
    
    {
    
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    
    StateMachine
    {
    	on_or_create_state_fire_2 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			this.my_torch_fire = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/PirateBarrel/ao/torch_fire.ao', L_Weapon_Fire );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', MainHand );
    		} );
    		IfVarietyContains( MaulIncin, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', MainHand );
    		} );
    		IfVarietyContains( AxeIncin, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', MainHand );
    		} );
    		SetAudioParam( WeaponFireEPK, 1 );
    	"
    
    	on_state_fire_0 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			my_torch_fire.SetLightState( off, GetCurrentAnimationLength(), 0 );
    			PlayAnimationAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/PirateBarrel/ao/torch_fire.ao', end_rand );
    		} );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', OffHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', OffHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', OffHand );
    	"
    
    	create_state_fire_0 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			my_torch_fire.SetLightState( off, 0, 0 );
    			my_torch.PlayAnimation( end_rand );
    			my_torch.GoToAnimationEnd();
    		} );
    	"
    
    	on_or_create_state_fire_1 =
    	"
    		IfVarietyContains( Axe__, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', MainHand );
    		} );
    		IfVarietyContains( Sword, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', MainHand );
    		} );
    		IfVarietyContains( AxeAxe, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', MainHand );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', OffHand );
    		} );
    		IfVarietyContains( SwordSword_, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', MainHand );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', OffHand );
    		} );
    		IfVarietyContains( Maul, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hmace.epk', MainHand );
    		} );
    	"
    }
    
    Transitionable
    
    {
    
    on_transition =
    
    "
    
    Roll( 1, 2, { PlayEffect( 'Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryAggroAudio.ao' ); } );
    
    "
    
    }
    
    Animated
    
    {
    
    preload_animated_object = "Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryAggroAudio.ao"
    
    }
    
    Render
    {
    	selection_size_override = "100, 100, 190"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/Mercenary/Infected/InfectedMercenaryAxeAxe"] = {
        name = "Decrepit Mercenary",
        life = 1.2,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1.2,
        damageSpread = 0.2,
        attackTime = 1.755,
        attackRange = 11,
        accuracy = 1,
        weaponType1 = "One Hand Axe",
        weaponType2 = "One Hand Axe",
        skillList = {
            "MeleeAtAnimationSpeed",
        },
        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.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 = { }, },
        },
    }
    
    undead description [1]
    FamilyMonsterNecromancerRaisable
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    Stats
  • undead description Min: 1 Max: 1 Global
  • Adds Tagsnecromancer_raisable
    衰朽佣兵
    Decrepit Mercenary
    SpectreY
    Area欧甘农地, 庄园城壁, 幽闭监牢, 金字塔避难所, 藏身处:农田
    Tags1HSword_onhit_audio, melee, not_dex, not_int, physical_affinity, slow_movement, undead, zombie
    Packs
  • 欧甘农地: 衰朽佣兵, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 庄园城壁: 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 庄园城壁: 钢铁奇术师, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 庄园城壁: 钢铁矛兵, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 庄园城壁: 钢铁守卫, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 金字塔避难所: 衰朽佣兵, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 金字塔避难所: 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 生命
    120%
    +50%
    抗性
    0 0 0 0
    伤害
    120%
    命中
    100%
    暴击 Chance
    5%
    Attack Distance
    5 ~ 11
    攻击间隔
    1.755 Second
    Damage Spread
    ±20%
    经验值
    120%
    Model Size
    100%
    Type
    InfectedMercenaryOneHand
    Metadata
    InfectedMercenarySwordSword_
    等级
    65
    生命
    7,816
    3,035
    伤害
    255
    法术伤害
    255
    命中
    2,214
    攻击间隔
    1.755
    经验值
    25,808
    召唤物生命
    7,538
    召唤物伤害
    995
    召唤物护甲
    5,058
    MeleeAtAnimationSpeed
    攻击, 范围攻击, 技能可幻影射手, 投射物, 近战单一目标, 近战, 玩家投射物
    基础攻击
    Base Damage: 204–306
    暴击率: 5%
    攻击间隔: 1.755 秒
    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"
    
    Actor
    {
    	basic_action = "Revive"
    	basic_action = "Emerge"
    	basic_action = "Emerge2"
    	basic_action = "ChangeToStance1"
    	basic_action = "ChangeToStance2"
    }
    
    StateMachine
    {
    	define_shared_state = "fire;"
    }
    
    Stats
    {
    	set_base_heavy_stun_duration_ms = 2200
    }
    
    Transitionable
    
    {
    
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    
    StateMachine
    {
    	on_or_create_state_fire_2 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			this.my_torch_fire = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/PirateBarrel/ao/torch_fire.ao', L_Weapon_Fire );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', MainHand );
    		} );
    		IfVarietyContains( MaulIncin, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', MainHand );
    		} );
    		IfVarietyContains( AxeIncin, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', MainHand );
    		} );
    		SetAudioParam( WeaponFireEPK, 1 );
    	"
    
    	on_state_fire_0 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			my_torch_fire.SetLightState( off, GetCurrentAnimationLength(), 0 );
    			PlayAnimationAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/PirateBarrel/ao/torch_fire.ao', end_rand );
    		} );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', OffHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', OffHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', OffHand );
    	"
    
    	create_state_fire_0 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			my_torch_fire.SetLightState( off, 0, 0 );
    			my_torch.PlayAnimation( end_rand );
    			my_torch.GoToAnimationEnd();
    		} );
    	"
    
    	on_or_create_state_fire_1 =
    	"
    		IfVarietyContains( Axe__, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', MainHand );
    		} );
    		IfVarietyContains( Sword, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', MainHand );
    		} );
    		IfVarietyContains( AxeAxe, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', MainHand );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', OffHand );
    		} );
    		IfVarietyContains( SwordSword_, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', MainHand );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', OffHand );
    		} );
    		IfVarietyContains( Maul, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hmace.epk', MainHand );
    		} );
    	"
    }
    
    Transitionable
    
    {
    
    on_transition =
    
    "
    
    Roll( 1, 2, { PlayEffect( 'Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryAggroAudio.ao' ); } );
    
    "
    
    }
    
    Animated
    
    {
    
    preload_animated_object = "Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryAggroAudio.ao"
    
    }
    
    Render
    {
    	selection_size_override = "100, 100, 190"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/Mercenary/Infected/InfectedMercenarySwordSword_"] = {
        name = "Decrepit Mercenary",
        life = 1.2,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1.2,
        damageSpread = 0.2,
        attackTime = 1.755,
        attackRange = 11,
        accuracy = 1,
        weaponType1 = "One Hand Sword",
        weaponType2 = "One Hand Sword",
        skillList = {
            "MeleeAtAnimationSpeed",
        },
        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.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 = { }, },
        },
    }
    
    undead description [1]
    FamilyMonsterNecromancerRaisable
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    Stats
  • undead description Min: 1 Max: 1 Global
  • Adds Tagsnecromancer_raisable
    衰朽佣兵
    亡灵
    undead description [1]
    Decrepit Mercenary
    SpectreY
    Tags2HBluntMetal_onhit_audio, not_dex, not_int, slow_movement, undead, zombie
    生命
    120%
    +50%
    抗性
    0 0 0 0
    伤害
    144%
    命中
    100%
    暴击 Chance
    5%
    Attack Distance
    5 ~ 9
    攻击间隔
    2.25 Second
    Damage Spread
    ±20%
    经验值
    120%
    Model Size
    100%
    Type
    InfectedMercenaryTwoHand
    Metadata
    InfectedMercenaryMaul
    等级
    68
    生命
    9,308
    3,620
    伤害
    336
    法术伤害
    336
    命中
    2,464
    攻击间隔
    2.25
    经验值
    34,361
    召唤物生命
    8,316
    召唤物伤害
    1,395
    召唤物护甲
    6,033
    MeleeAtAnimationSpeed
    攻击, 范围攻击, 技能可幻影射手, 投射物, 近战单一目标, 近战, 玩家投射物
    基础攻击
    Base Damage: 269–403
    暴击率: 5%
    攻击间隔: 2.25 秒
    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"
    
    Actor
    {
    	basic_action = "Revive"
    	basic_action = "Emerge"
    	basic_action = "Emerge2"
    	basic_action = "ChangeToStance1"
    	basic_action = "ChangeToStance2"
    }
    
    StateMachine
    {
    	define_shared_state = "fire;"
    }
    
    Stats
    {
    	set_base_heavy_stun_duration_ms = 2200
    }
    
    Transitionable
    
    {
    
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    
    StateMachine
    {
    	on_or_create_state_fire_2 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			this.my_torch_fire = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/PirateBarrel/ao/torch_fire.ao', L_Weapon_Fire );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', MainHand );
    		} );
    		IfVarietyContains( MaulIncin, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', MainHand );
    		} );
    		IfVarietyContains( AxeIncin, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', MainHand );
    		} );
    		SetAudioParam( WeaponFireEPK, 1 );
    	"
    
    	on_state_fire_0 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			my_torch_fire.SetLightState( off, GetCurrentAnimationLength(), 0 );
    			PlayAnimationAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/PirateBarrel/ao/torch_fire.ao', end_rand );
    		} );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', OffHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', OffHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', OffHand );
    	"
    
    	create_state_fire_0 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			my_torch_fire.SetLightState( off, 0, 0 );
    			my_torch.PlayAnimation( end_rand );
    			my_torch.GoToAnimationEnd();
    		} );
    	"
    
    	on_or_create_state_fire_1 =
    	"
    		IfVarietyContains( Axe__, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', MainHand );
    		} );
    		IfVarietyContains( Sword, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', MainHand );
    		} );
    		IfVarietyContains( AxeAxe, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', MainHand );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', OffHand );
    		} );
    		IfVarietyContains( SwordSword_, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', MainHand );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', OffHand );
    		} );
    		IfVarietyContains( Maul, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hmace.epk', MainHand );
    		} );
    	"
    }
    
    Transitionable
    
    {
    
    on_transition =
    
    "
    
    Roll( 1, 2, { PlayEffect( 'Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryAggroAudio.ao' ); } );
    
    "
    
    }
    
    Animated
    
    {
    
    preload_animated_object = "Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryAggroAudio.ao"
    
    }
    
    Render
    {
    	selection_size_override = "100, 100, 190"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/Mercenary/Infected/InfectedMercenaryMaul"] = {
        name = "Decrepit Mercenary",
        life = 1.2,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1.44,
        damageSpread = 0.2,
        attackTime = 2.25,
        attackRange = 9,
        accuracy = 1,
        weaponType1 = "Two Hand Mace",
        skillList = {
            "MeleeAtAnimationSpeed",
        },
        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.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 = { }, },
        },
    }
    
    undead description [1]
    FamilyMonsterNecromancerRaisable
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    Stats
  • undead description Min: 1 Max: 1 Global
  • Adds Tagsnecromancer_raisable
    衰朽佣兵
    亡灵
    undead description [1]
    Decrepit Mercenary
    SpectreY
    TagsArrow_onhit_audio, not_dex, not_int, slow_movement, undead, zombie
    生命
    120%
    +50%
    抗性
    0 0 0 0
    伤害
    120%
    命中
    100%
    暴击 Chance
    6%
    Attack Distance
    6 ~ 55
    攻击间隔
    3.75 Second
    Damage Spread
    ±20%
    经验值
    120%
    Model Size
    100%
    Type
    InfectedMercenaryRanged
    Metadata
    InfectedMercenaryBow
    等级
    68
    生命
    9,308
    3,620
    伤害
    280
    法术伤害
    280
    命中
    2,464
    攻击间隔
    3.75
    经验值
    34,361
    召唤物生命
    8,316
    召唤物伤害
    1,163
    召唤物护甲
    6,033
    MeleeAtAnimationSpeed
    攻击, 范围攻击, 技能可幻影射手, 投射物, 近战单一目标, 近战, 玩家投射物
    基础攻击
    Base Damage: 224–336
    暴击率: 5%
    攻击间隔: 3.75 秒
    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"
    
    Actor
    {
    	basic_action = "Revive"
    	basic_action = "Emerge"
    	basic_action = "Emerge2"
    	basic_action = "ChangeToStance1"
    	basic_action = "ChangeToStance2"
    }
    
    StateMachine
    {
    	define_shared_state = "fire;"
    }
    
    Stats
    {
    	set_base_heavy_stun_duration_ms = 2200
    }
    
    Transitionable
    
    {
    
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    
    StateMachine
    {
    	on_or_create_state_fire_2 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			this.my_torch_fire = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/PirateBarrel/ao/torch_fire.ao', L_Weapon_Fire );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', MainHand );
    		} );
    		IfVarietyContains( MaulIncin, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', MainHand );
    		} );
    		IfVarietyContains( AxeIncin, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', MainHand );
    		} );
    		SetAudioParam( WeaponFireEPK, 1 );
    	"
    
    	on_state_fire_0 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			my_torch_fire.SetLightState( off, GetCurrentAnimationLength(), 0 );
    			PlayAnimationAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/PirateBarrel/ao/torch_fire.ao', end_rand );
    		} );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', OffHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', OffHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', OffHand );
    	"
    
    	create_state_fire_0 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			my_torch_fire.SetLightState( off, 0, 0 );
    			my_torch.PlayAnimation( end_rand );
    			my_torch.GoToAnimationEnd();
    		} );
    	"
    
    	on_or_create_state_fire_1 =
    	"
    		IfVarietyContains( Axe__, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', MainHand );
    		} );
    		IfVarietyContains( Sword, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', MainHand );
    		} );
    		IfVarietyContains( AxeAxe, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', MainHand );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', OffHand );
    		} );
    		IfVarietyContains( SwordSword_, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', MainHand );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', OffHand );
    		} );
    		IfVarietyContains( Maul, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hmace.epk', MainHand );
    		} );
    	"
    }
    
    Transitionable
    
    {
    
    on_transition =
    
    "
    
    Roll( 1, 2, { PlayEffect( 'Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryAggroAudio.ao' ); } );
    
    "
    
    }
    
    Animated
    
    {
    
    preload_animated_object = "Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryAggroAudio.ao"
    
    }
    
    Render
    {
    	selection_size_override = "100, 100, 190"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/Mercenary/Infected/InfectedMercenaryBow"] = {
        name = "Decrepit Mercenary",
        life = 1.2,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1.2,
        damageSpread = 0.2,
        attackTime = 3.75,
        attackRange = 55,
        accuracy = 1,
        weaponType1 = "Bow",
        skillList = {
            "MeleeAtAnimationSpeed",
        },
        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.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 = { }, },
        },
    }
    
    undead description [1]
    FamilyMonsterNecromancerRaisable
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    Stats
  • undead description Min: 1 Max: 1 Global
  • Adds Tagsnecromancer_raisable
    衰朽佣兵
    亡灵
    undead description [1]
    stance movement speed +% final [-71]
    Decrepit Mercenary
    SpectreY
    Area欧甘农地, 庄园城壁, 幽闭监牢, 金字塔避难所, 藏身处:农田
    Tagsallows_additional_projectiles, allows_inc_aoe, Arrow_onhit_audio, monster_barely_moves, not_dex, not_int, physical_affinity, ranged, slow_movement, undead, zombie
    Packs
  • 庄园城壁: 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 庄园城壁: 钢铁奇术师, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 庄园城壁: 钢铁矛兵, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 庄园城壁: 钢铁守卫, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 欧甘农地: 衰朽佣兵
  • 金字塔避难所: 衰朽佣兵, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 金字塔避难所: 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 生命
    120%
    +50%
    抗性
    0 0 0 0
    伤害
    120%
    命中
    100%
    暴击 Chance
    6%
    Attack Distance
    6 ~ 55
    攻击间隔
    3.75 Second
    Damage Spread
    ±20%
    经验值
    120%
    Model Size
    100%
    Type
    InfectedMercenaryRanged
    Metadata
    InfectedMercenaryCrossbow
    等级
    65
    生命
    7,816
    3,035
    伤害
    255
    法术伤害
    255
    命中
    2,214
    攻击间隔
    3.75
    经验值
    25,808
    召唤物生命
    7,538
    召唤物伤害
    995
    召唤物护甲
    5,058
    MeleeAtAnimationSpeed
    攻击, 范围攻击, 技能可幻影射手, 投射物, 近战单一目标, 近战, 玩家投射物
    基础攻击
    Base Damage: 204–306
    暴击率: 5%
    攻击间隔: 3.75 秒
    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]
    MPWInfectedMercenarySnipe
    攻击, 范围攻击, 技能可幻影射手, 投射物, 玩家投射物, 伤害, 可触发
    Base Damage: 204–306
    暴击率: 5%
    攻击伤害: 250%
    攻击间隔: 3.75 秒
    冷却时间: 6.7 秒
    攻击伤害总增 150%
    晕眩积蓄总增 100%
    压制30% 物理伤害减免
    action attack or cast time uses animation length [2]
    base is projectile [1]
    check for targets between initiator and projectile source [1]
    monster projectile variation [1056]
    projectile ballistic angle from target distance [1]
    projectile uses contact position [1]
    spell maximum action distance +% [-45]
    use scaled contact offset [1]
    MPWInfectedMercenaryMinigun
    攻击, 范围攻击, 技能可幻影射手, 投射物, 玩家投射物, 伤害, 可触发
    Base Damage: 204–306
    暴击率: 5%
    攻击间隔: 3.75 秒
    base is projectile [1]
    cast time overrides attack duration [1]
    chance to apply suppression on hit % [100]
    check for targets between initiator and projectile source [1]
    main hand base maximum attack distance [25]
    monster projectile variation [1057]
    projectile spread radius [3]
    projectile uses contact position [1]
    use scaled contact offset [1]
    BurstShotArmourPiercingBoltMonster
    攻击, 范围攻击, 投射物, 玩家投射物, CrossbowSkill, 陷阱技能, 图腾技能, 地雷技能, UsableWhileMoving, SkillConsumesFreeze, NoAttackInPlace, 范围
    碎裂弹药
    Base Damage: 204–306
    暴击率: 5%
    攻击伤害: 40%
    攻击间隔: 3.75 秒
    发射在飞行时分成碎片的穿透箭矢。箭矢击中被冻结的敌人时会消耗冻结,并产生冰霜碎片爆炸。这些碎片可以融合
    攻击伤害总降 60%
    击退敌人
    晕眩积蓄总增 100%
    压制30% 物理伤害减免
    每次连射发射 8 支弩箭
    弩箭穿透 2 个目标
    action attack or cast time uses animation length [1]
    action required target facing angle tolerance degrees [90]
    action requires aiming stance [1]
    active skill ignores crossbow manager [1]
    active skill projectile speed +% variation final [60]
    attack maximum action distance + [-45]
    base is projectile [1]
    cannot cancel skill before contact point [1]
    check for targets between initiator and projectile source [1]
    destroy frost wall segment on hit [1]
    disable visual hit effect [1]
    projectile distance variance [10]
    projectile uses contact direction [1]
    projectile uses contact position [1]
    projectiles normal distribution height mean [1]
    projectiles normal distribution height standard deviation [3]
    projectiles normal distribution spread standard deviation [8]
    BurstShotIncendiaryBoltMonster
    攻击, 范围攻击, 投射物, 玩家投射物, 范围, CrossbowSkill, 陷阱技能, 图腾技能, 地雷技能, 火焰, UsableWhileMoving, NoAttackInPlace
    燃烧射击
    Base Damage: 204–306
    暴击率: 5%
    攻击伤害: 15%
    攻击间隔: 3.75 秒
    发射在飞行时分成碎片的火焰之箭,击中后对最终目标和身后一小片锥形范围内的敌人造成伤害和点燃。这些碎片可以融合
    攻击伤害总降 85%
    物理伤害的 80% 转化为火焰伤害
    击退敌人
    始终造成点燃
    弩箭击中时碎裂,在 1.4 米锥形范围内造成伤害
    每次连射发射 8 支弩箭
    action required target facing angle tolerance degrees [90]
    action requires aiming stance [1]
    active skill ignores crossbow manager [1]
    active skill maintains total ignite damage per minute [1]
    active skill projectile speed +% variation final [40]
    attack maximum action distance + [-45]
    base is projectile [1]
    burst shot cone angle [220]
    cannot cancel skill before contact point [1]
    check for targets between initiator and projectile source [1]
    disable visual hit effect [1]
    projectile distance variance [10]
    projectile uses contact direction [1]
    projectile uses contact position [1]
    projectiles normal distribution height mean [1]
    projectiles normal distribution height standard deviation [3]
    projectiles normal distribution spread standard deviation [8]
    RapidShotIncendiaryBoltMonster
    攻击, 范围攻击, 投射物, 玩家投射物, CrossbowSkill, 陷阱技能, 图腾技能, 地雷技能, UsableWhileMoving, 火焰, NoAttackInPlace
    快速射击
    Base Damage: 204–306
    暴击率: 5%
    攻击伤害: 15%
    攻击间隔: 3.75 秒
    发射一连串的加热弩箭。发射时你的战弩会积蓄热度,达到最大热度会在短时间内阻止你发射这些弩箭。但是,其他技能可以消耗热度获得额外增益。
    攻击伤害总降 85%
    物理伤害的 60% 转化为火焰伤害
    击退敌人
    最大热度 +12
    action do not face target [1]
    action required target facing angle tolerance degrees [60]
    action requires aiming stance [1]
    active skill facing angle turn duration ms [100]
    active skill ignores crossbow manager [1]
    active skill override turn duration ms [100]
    attack maximum action distance + [-50]
    base is projectile [1]
    base skill effect duration [80]
    can perform skill while moving [1]
    check for targets between initiator and projectile source [1]
    disable visual hit effect [1]
    projectile uses contact direction [1]
    projectile uses contact position [1]
    projectiles crossbow barrage [1]
    GAInfectedMercIncendiaryBoltImpact
    可触发, 攻击
    Base Damage: 204–306
    暴击率: 5%
    攻击伤害: 215%
    攻击间隔: 3.75 秒
    攻击伤害总增 115%
    物理伤害的 80% 转化为火焰伤害
    action attack or cast time uses animation length [1]
    base is projectile [2]
    base skill can be avoided by dodge roll [1]
    base skill can be blocked [1]
    is area damage [1]

    Object Type

    version 2
    extends "Metadata/Monsters/Monster"
    
    Actor
    {
    	actor = "Metadata/Monsters/Mercenary/Infected/InfectedMercenaryCrossbow.act"
    	basic_action = "Revive"
    	basic_action = "Emerge"
    	basic_action = "Emerge2"
    	basic_action = "ChangeToStance1"
    	basic_action = "ChangeToStance2"
    }
    
    StateMachine
    {
    	define_shared_state = "lock_on;"
    	on_state_lock_on_0 = "SetUsesDirectionalRunAnimations( false );"
    	on_state_lock_on_1 = "SetUsesDirectionalRunAnimations( true );"
    }
    
    Functions
    {
    	marker_height =
    	"
    		this.temp = arg2;
    
    		arg1.SetHeight( this.temp.GetHeight() );
    	"
    }
    
    Transitionable
    
    {
    
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    
    Actor
    {
    	on_effect_start_MPWInfectedMercIncendiaryBolt = "AddEffectPackAttached( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/crossbow_weaponheat.epk', 'Metadata/Monsters/LeagueHeist/Military/attachments/Crossbow.ao' );"
    }
    
    Transitionable
    {
    	on_transition =
    	"
    		Roll( 1, 2,
    		{
    			PlayEffect( 'Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryCrossbowAggroAudio.ao' );
    		} );
    	"
    }
    
    Animated
    {
    	preload_animated_object = "Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryCrossbowAggroAudio.ao"
    }
    
    Preload
    {
    	preload_particle = "Metadata/Effects/Spells/crossbow_armour_piercing/pet/power_impact.pet"
    	preload_particle = "Metadata/Effects/Spells/crossbow_basic/pet/burst_impact.pet"
    	preload_particle = "Metadata/Effects/Spells/crossbow_armour_piercing/pet/power_pierce.pet"
    }
    
    Render
    {
    	selection_size_override = "100, 100, 190"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/Mercenary/Infected/InfectedMercenaryCrossbow"] = {
        name = "Decrepit Mercenary",
        life = 1.2,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1.2,
        damageSpread = 0.2,
        attackTime = 3.75,
        attackRange = 55,
        accuracy = 1,
        weaponType1 = "Bow",
        skillList = {
            "MeleeAtAnimationSpeed",
            "MPWInfectedMercenarySnipe",
            "MPWInfectedMercenaryMinigun",
            "GAInfectedMercIncendiaryBoltImpact",
            "BurstShotArmourPiercingBoltMonster",
            "BurstShotIncendiaryBoltMonster",
            "RapidShotIncendiaryBoltMonster",
        },
        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.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["MPWInfectedMercenarySnipe"] = {
        name = "MPWInfectedMercenarySnipe",
        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",
            "active_skill_hit_damage_stun_multiplier_+%_final",
            "enemy_phys_reduction_%_penalty_vs_hit",
            "projectile_base_number_of_targets_to_pierce",
            "spell_maximum_action_distance_+%",
            "base_is_projectile",
            "action_attack_or_cast_time_uses_animation_length",
            "check_for_targets_between_initiator_and_projectile_source",
            "projectile_ballistic_angle_from_target_distance",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {1056, 100, 30, 0, -45, baseMultiplier = 2.5, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MPWInfectedMercenaryMinigun"] = {
        name = "MPWInfectedMercenaryMinigun",
        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",
            "main_hand_base_maximum_attack_distance",
            "projectile_spread_radius",
            "chance_to_apply_suppression_on_hit_%",
            "base_is_projectile",
            "check_for_targets_between_initiator_and_projectile_source",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
            "cast_time_overrides_attack_duration",
        },
        levels = {
            [1] = {1057, 25, 3, 100, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GAInfectedMercIncendiaryBoltImpact"] = {
        name = "GAInfectedMercIncendiaryBoltImpact",
        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,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "active_skill_base_physical_damage_%_to_convert_to_fire",
            "is_area_damage",
            "action_attack_or_cast_time_uses_animation_length",
            "base_is_projectile",
            "base_skill_can_be_blocked",
            "base_skill_can_be_avoided_by_dodge_roll",
            "base_is_projectile",
        },
        levels = {
            [1] = {80, baseMultiplier = 2.15, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["BurstShotArmourPiercingBoltMonster"] = {
        name = "Fragmentation Rounds",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Fire [Pierce|Piercing] bolts that fragment in flight. Bolts that hit a [Frozen] enemy [Consume] the [Freeze] and cause an explosion of ice shards. These fragments can [Merging|Merge].",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.CrossbowSkill] = true,
            [SkillType.Trappable] = true,
            [SkillType.Totemable] = true,
            [SkillType.Mineable] = true,
            [SkillType.UsableWhileMoving] = true,
            [SkillType.SkillConsumesFreeze] = true,
            [SkillType.NoAttackInPlace] = true,
            [SkillType.Area] = true,
        },
        statDescriptionScope = "burst_shot_piercing/statset_0",
        castTime = 1.5,
        baseFlags = {
            attack = true,
            area = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "projectiles_normal_distribution_height_mean",
            "projectiles_normal_distribution_height_standard_deviation",
            "projectiles_normal_distribution_spread_standard_deviation",
            "action_required_target_facing_angle_tolerance_degrees",
            "base_number_of_projectiles",
            "projectile_distance_variance",
            "active_skill_projectile_speed_+%_variation_final",
            "active_skill_hit_damage_stun_multiplier_+%_final",
            "enemy_phys_reduction_%_penalty_vs_hit",
            "projectile_base_number_of_targets_to_pierce",
            "base_knockback_distance",
            "attack_maximum_action_distance_+",
            "base_is_projectile",
            "projectiles_can_shotgun",
            "action_requires_aiming_stance",
            "projectile_uses_contact_position",
            "projectile_uses_contact_direction",
            "check_for_targets_between_initiator_and_projectile_source",
            "cannot_cancel_skill_before_contact_point",
            "destroy_frost_wall_segment_on_hit",
            "disable_visual_hit_effect",
            "action_attack_or_cast_time_uses_animation_length",
            "active_skill_ignores_crossbow_manager",
        },
        levels = {
            [1] = {1, 3, 8, 90, 8, 10, 60, 100, 30, 2, 100, -45, baseMultiplier = 0.4, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["BurstShotIncendiaryBoltMonster"] = {
        name = "Incendiary Shot",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Fire flaming bolts that fragment in flight, damaging and [Ignite|Igniting] enemies on hit, and in a small cone behind their final target. These fragments can [Merging|Merge].",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Area] = true,
            [SkillType.CrossbowSkill] = true,
            [SkillType.Trappable] = true,
            [SkillType.Totemable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Fire] = true,
            [SkillType.UsableWhileMoving] = true,
            [SkillType.NoAttackInPlace] = true,
        },
        statDescriptionScope = "burst_shot_incendiary",
        castTime = 1,
        baseFlags = {
            attack = true,
            area = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "projectiles_normal_distribution_height_mean",
            "projectiles_normal_distribution_height_standard_deviation",
            "projectiles_normal_distribution_spread_standard_deviation",
            "action_required_target_facing_angle_tolerance_degrees",
            "base_number_of_projectiles",
            "projectile_distance_variance",
            "active_skill_projectile_speed_+%_variation_final",
            "active_skill_hit_damage_stun_multiplier_+%_final",
            "active_skill_base_physical_damage_%_to_convert_to_fire",
            "base_knockback_distance",
            "burst_shot_cone_angle",
            "active_skill_base_area_of_effect_radius",
            "attack_maximum_action_distance_+",
            "base_is_projectile",
            "projectiles_can_shotgun",
            "disable_visual_hit_effect",
            "action_requires_aiming_stance",
            "projectile_uses_contact_position",
            "projectile_uses_contact_direction",
            "check_for_targets_between_initiator_and_projectile_source",
            "cannot_cancel_skill_before_contact_point",
            "active_skill_maintains_total_ignite_damage_per_minute",
            "always_ignite",
            "active_skill_ignores_crossbow_manager",
        },
        levels = {
            [1] = {1, 3, 8, 90, 8, 10, 40, 0, 80, 75, 220, 14, -45, baseMultiplier = 0.15, levelRequirement = 15.932, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["RapidShotIncendiaryBoltMonster"] = {
        name = "Rapid Shot",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Fire a stream of heated bolts. [Heat] builds up on your [Crossbow] as you fire, and reaching maximum heat will prevent you from firing these bolts for a short time. However, other Skills can Consume [Heat] for extra benefits.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.CrossbowSkill] = true,
            [SkillType.Trappable] = true,
            [SkillType.Totemable] = true,
            [SkillType.Mineable] = true,
            [SkillType.UsableWhileMoving] = true,
            [SkillType.Fire] = true,
            [SkillType.NoAttackInPlace] = true,
        },
        statDescriptionScope = "rapid_shot_incendiary",
        castTime = 1,
        baseFlags = {
            attack = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "maximum_number_of_crossbow_heat_stacks",
            "action_required_target_facing_angle_tolerance_degrees",
            "active_skill_base_physical_damage_%_to_convert_to_fire",
            "base_skill_effect_duration",
            "active_skill_override_turn_duration_ms",
            "active_skill_facing_angle_turn_duration_ms",
            "base_knockback_distance",
            "attack_maximum_action_distance_+",
            "base_is_projectile",
            "action_requires_aiming_stance",
            "projectile_uses_contact_position",
            "projectile_uses_contact_direction",
            "check_for_targets_between_initiator_and_projectile_source",
            "projectiles_crossbow_barrage",
            "disable_visual_hit_effect",
            "action_do_not_face_target",
            "can_perform_skill_while_moving",
            "active_skill_ignores_crossbow_manager",
        },
        levels = {
            [1] = {12, 60, 60, 80, 100, 100, 30, -50, baseMultiplier = 0.15, levelRequirement = 15.932, statInterpolation = {1},  cost = { }, },
        },
    }
    
    undead description [1]
    FamilyMonsterNecromancerRaisable
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    Stats
  • undead description Min: 1 Max: 1 Global
  • Adds Tagsnecromancer_raisable
    FamilyNothing
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    stance movement speed +% final [-71]
    FamilyStance
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    Stats
  • stance movement speed +% final Min: -71 Max: -71 Global
  • keyval
    Stats.item_drop_slots1
    Stats.energy_shield_recharge_rate_per_minute_%750
    Stats.base_maximum_mana200
    Stats.maximum_physical_damage_reduction_%75
    Stats.base_maximum_all_resistances_%75
    Stats.monster_base_flask_charges_percent_of_monster_power50
    Stats.base_critical_hit_damage_bonus30
    Stats.max_endurance_charges3
    Stats.max_frenzy_charges3
    Stats.max_power_charges3
    Stats.object_inherent_base_maximum_block_%_from_ot50
    Stats.movement_velocity_cap128
    Stats.max_azurite_debuff_stacks10
    Stats.ignore_skill_weapon_restrictions1
    Stats.melee_hit_damage_stun_multiplier_+%_final_from_ot33
    Stats.physical_hit_damage_stun_multiplier_+%_final_from_ot100
    Stats.scale_melee_range_to_actor_scale1
    Stats.use_melee_pattern_range1
    Stats.melee_swing_not_scaled_by_area_modifiers1
    Stats.actor_scale_+%_limit200
    Stats.base_heavy_stun_duration_ms2000
    Stats.melee_defer_damage_prediction1
    Stats.poise_decay_delay_ms8000
    Stats.poise_decay_%_per_second5
    Stats.base_block_angle_degrees180
    Stats.action_attack_or_cast_time_uses_animation_length1
    Stats.slow_potency_+%_final_per_additional_player-10
    Stats.check_for_targets_between_initiator_and_projectile_source1
    Stats.maximum_life_+%_final_per_additional_player50
    Stats.maximum_energy_shield_+%_final_per_additional_player50
    Stats.poise_threshold_+%_final_per_additional_player50
    Stats.stun_base_duration_override_ms500
    Stats.bleeding_moving_damage_%_of_base_override200
    ObjectMagicProperties.stat_description_listMetadata/StatDescriptions/monster_stat_descriptions.csd
    Positioned.blockingtrue
    Positioned.team0
    Positioned.serialise_collidabletrue
    BaseEvents.server_onlytrue
    Actor.basic_actionMove, MoveForced, MoveToFormation, Flee, StrafeLeft, StrafeRight, StrafeRandom, Advance, DoNothing, MonsterPickup, MinionInteraction, Revive, Emerge, Emerge2, ChangeToStance1, ChangeToStance2
    Actor.slow_animations_go_to_idlefalse
    Actor.actorMetadata/Monsters/Mercenary/Infected/InfectedMercenaryCrossbow.act
    StateMachine.define_shared_statelock_on;
    StateMachine.on_state_lock_on_0SetUsesDirectionalRunAnimations( false );
    StateMachine.on_state_lock_on_1SetUsesDirectionalRunAnimations( true );
    Functions.marker_height =
    Functions.",
    Functions.this.temparg2;
    Functions.arg1.SetHeight( this.temp.GetHeight() );
    衰朽佣兵
    亡灵
    undead description [1]
    stance movement speed +% final [-71]
    Decrepit Mercenary
    SpectreY
    Area欧甘村庄, 阴霾湾, 金字塔避难所
    Tagsallows_additional_projectiles, allows_inc_aoe, Arrow_onhit_audio, fire_affinity, monster_barely_moves, not_dex, not_int, ranged, slow_movement, undead, zombie
    Packs
  • 欧甘村庄: 衰朽佣兵
  • 欧甘村庄: 衰朽佣兵, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 金字塔避难所: 钢铁奇术师, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 金字塔避难所: 钢铁执法者, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 金字塔避难所: 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 生命
    120%
    +50%
    抗性
    30 0 0 0
    伤害
    120%
    命中
    100%
    暴击 Chance
    5%
    Attack Distance
    6 ~ 55
    攻击间隔
    3.75 Second
    Damage Spread
    ±20%
    经验值
    120%
    Model Size
    100%
    Type
    InfectedMercenaryRangedIncin
    Metadata
    InfectedMercenaryCrossbowIncin
    等级
    65
    生命
    7,816
    3,035
    伤害
    255
    法术伤害
    255
    命中
    2,214
    攻击间隔
    3.75
    经验值
    25,808
    召唤物生命
    7,538
    召唤物伤害
    995
    召唤物护甲
    5,058
    MeleeAtAnimationSpeed
    攻击, 范围攻击, 技能可幻影射手, 投射物, 近战单一目标, 近战, 玩家投射物
    基础攻击
    Base Damage: 204–306
    暴击率: 5%
    攻击间隔: 3.75 秒
    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]
    BurstShotIncendiaryBoltMonster
    攻击, 范围攻击, 投射物, 玩家投射物, 范围, CrossbowSkill, 陷阱技能, 图腾技能, 地雷技能, 火焰, UsableWhileMoving, NoAttackInPlace
    燃烧射击
    Base Damage: 204–306
    暴击率: 5%
    攻击伤害: 15%
    攻击间隔: 3.75 秒
    发射在飞行时分成碎片的火焰之箭,击中后对最终目标和身后一小片锥形范围内的敌人造成伤害和点燃。这些碎片可以融合
    攻击伤害总降 85%
    物理伤害的 80% 转化为火焰伤害
    击退敌人
    始终造成点燃
    弩箭击中时碎裂,在 1.4 米锥形范围内造成伤害
    每次连射发射 8 支弩箭
    action required target facing angle tolerance degrees [90]
    action requires aiming stance [1]
    active skill ignores crossbow manager [1]
    active skill maintains total ignite damage per minute [1]
    active skill projectile speed +% variation final [40]
    attack maximum action distance + [-45]
    base is projectile [1]
    burst shot cone angle [220]
    cannot cancel skill before contact point [1]
    check for targets between initiator and projectile source [1]
    disable visual hit effect [1]
    projectile distance variance [10]
    projectile uses contact direction [1]
    projectile uses contact position [1]
    projectiles normal distribution height mean [1]
    projectiles normal distribution height standard deviation [3]
    projectiles normal distribution spread standard deviation [8]
    RapidShotIncendiaryBoltMonster
    攻击, 范围攻击, 投射物, 玩家投射物, CrossbowSkill, 陷阱技能, 图腾技能, 地雷技能, UsableWhileMoving, 火焰, NoAttackInPlace
    快速射击
    Base Damage: 204–306
    暴击率: 5%
    攻击伤害: 15%
    攻击间隔: 3.75 秒
    发射一连串的加热弩箭。发射时你的战弩会积蓄热度,达到最大热度会在短时间内阻止你发射这些弩箭。但是,其他技能可以消耗热度获得额外增益。
    攻击伤害总降 85%
    物理伤害的 60% 转化为火焰伤害
    击退敌人
    最大热度 +12
    action do not face target [1]
    action required target facing angle tolerance degrees [60]
    action requires aiming stance [1]
    active skill facing angle turn duration ms [100]
    active skill ignores crossbow manager [1]
    active skill override turn duration ms [100]
    attack maximum action distance + [-50]
    base is projectile [1]
    base skill effect duration [80]
    can perform skill while moving [1]
    check for targets between initiator and projectile source [1]
    disable visual hit effect [1]
    projectile uses contact direction [1]
    projectile uses contact position [1]
    projectiles crossbow barrage [1]
    MPWInfectedMercenarySnipeIncin
    攻击, 范围攻击, 技能可幻影射手, 投射物, 玩家投射物, 伤害, 可触发
    Base Damage: 204–306
    暴击率: 5%
    攻击间隔: 3.75 秒
    冷却时间: 6.7 秒
    物理伤害的 60% 转化为火焰伤害
    action attack or cast time uses animation length [2]
    base deal no damage [1]
    base is projectile [1]
    check for targets between initiator and projectile source [1]
    monster projectile variation [1124]
    projectile ballistic angle from target distance [1]
    projectile uses contact position [1]
    spell maximum action distance +% [-45]
    use scaled contact offset [1]
    GAInfectedMercIncendiaryBoltImpact
    可触发, 攻击
    Base Damage: 204–306
    暴击率: 5%
    攻击伤害: 215%
    攻击间隔: 3.75 秒
    攻击伤害总增 115%
    物理伤害的 80% 转化为火焰伤害
    action attack or cast time uses animation length [1]
    base is projectile [2]
    base skill can be avoided by dodge roll [1]
    base skill can be blocked [1]
    is area damage [1]

    Object Type

    version 2
    extends "Metadata/Monsters/Monster"
    
    Actor
    {
    	actor = "Metadata/Monsters/Mercenary/Infected/InfectedMercenaryCrossbow.act"
    	basic_action = "Revive"
    	basic_action = "Emerge"
    	basic_action = "Emerge2"
    	basic_action = "ChangeToStance1"
    	basic_action = "ChangeToStance2"
    }
    
    StateMachine
    {
    	define_shared_state = "lock_on;"
    	on_state_lock_on_0 = "SetUsesDirectionalRunAnimations( false );"
    	on_state_lock_on_1 = "SetUsesDirectionalRunAnimations( true );"
    }
    
    Functions
    {
    	marker_height =
    	"
    		this.temp = arg2;
    
    		arg1.SetHeight( this.temp.GetHeight() );
    	"
    }
    
    Transitionable
    
    {
    
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    
    Actor
    {
    	on_effect_start_MPWInfectedMercIncendiaryBolt = "AddEffectPackAttached( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/crossbow_weaponheat.epk', 'Metadata/Monsters/LeagueHeist/Military/attachments/Crossbow.ao' );"
    }
    
    Transitionable
    {
    	on_transition =
    	"
    		Roll( 1, 2,
    		{
    			PlayEffect( 'Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryCrossbowAggroAudio.ao' );
    		} );
    	"
    }
    
    Animated
    {
    	preload_animated_object = "Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryCrossbowAggroAudio.ao"
    }
    
    Preload
    {
    	preload_particle = "Metadata/Effects/Spells/crossbow_armour_piercing/pet/power_impact.pet"
    	preload_particle = "Metadata/Effects/Spells/crossbow_basic/pet/burst_impact.pet"
    	preload_particle = "Metadata/Effects/Spells/crossbow_armour_piercing/pet/power_pierce.pet"
    }
    
    Render
    {
    	selection_size_override = "100, 100, 190"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/Mercenary/Infected/InfectedMercenaryCrossbowIncin"] = {
        name = "Decrepit Mercenary",
        life = 1.2,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1.2,
        damageSpread = 0.2,
        attackTime = 3.75,
        attackRange = 55,
        accuracy = 1,
        weaponType1 = "Bow",
        skillList = {
            "MeleeAtAnimationSpeed",
            "MPWInfectedMercenarySnipeIncin",
            "GAInfectedMercIncendiaryBoltImpact",
            "BurstShotIncendiaryBoltMonster",
            "RapidShotIncendiaryBoltMonster",
        },
        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.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["MPWInfectedMercenarySnipeIncin"] = {
        name = "MPWInfectedMercenarySnipeIncin",
        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",
            "active_skill_base_physical_damage_%_to_convert_to_fire",
            "projectile_base_number_of_targets_to_pierce",
            "spell_maximum_action_distance_+%",
            "base_is_projectile",
            "action_attack_or_cast_time_uses_animation_length",
            "check_for_targets_between_initiator_and_projectile_source",
            "projectile_ballistic_angle_from_target_distance",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
            "action_attack_or_cast_time_uses_animation_length",
            "base_deal_no_damage",
        },
        levels = {
            [1] = {1124, 60, 0, -45, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GAInfectedMercIncendiaryBoltImpact"] = {
        name = "GAInfectedMercIncendiaryBoltImpact",
        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,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "active_skill_base_physical_damage_%_to_convert_to_fire",
            "is_area_damage",
            "action_attack_or_cast_time_uses_animation_length",
            "base_is_projectile",
            "base_skill_can_be_blocked",
            "base_skill_can_be_avoided_by_dodge_roll",
            "base_is_projectile",
        },
        levels = {
            [1] = {80, baseMultiplier = 2.15, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["BurstShotIncendiaryBoltMonster"] = {
        name = "Incendiary Shot",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Fire flaming bolts that fragment in flight, damaging and [Ignite|Igniting] enemies on hit, and in a small cone behind their final target. These fragments can [Merging|Merge].",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Area] = true,
            [SkillType.CrossbowSkill] = true,
            [SkillType.Trappable] = true,
            [SkillType.Totemable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Fire] = true,
            [SkillType.UsableWhileMoving] = true,
            [SkillType.NoAttackInPlace] = true,
        },
        statDescriptionScope = "burst_shot_incendiary",
        castTime = 1,
        baseFlags = {
            attack = true,
            area = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "projectiles_normal_distribution_height_mean",
            "projectiles_normal_distribution_height_standard_deviation",
            "projectiles_normal_distribution_spread_standard_deviation",
            "action_required_target_facing_angle_tolerance_degrees",
            "base_number_of_projectiles",
            "projectile_distance_variance",
            "active_skill_projectile_speed_+%_variation_final",
            "active_skill_hit_damage_stun_multiplier_+%_final",
            "active_skill_base_physical_damage_%_to_convert_to_fire",
            "base_knockback_distance",
            "burst_shot_cone_angle",
            "active_skill_base_area_of_effect_radius",
            "attack_maximum_action_distance_+",
            "base_is_projectile",
            "projectiles_can_shotgun",
            "disable_visual_hit_effect",
            "action_requires_aiming_stance",
            "projectile_uses_contact_position",
            "projectile_uses_contact_direction",
            "check_for_targets_between_initiator_and_projectile_source",
            "cannot_cancel_skill_before_contact_point",
            "active_skill_maintains_total_ignite_damage_per_minute",
            "always_ignite",
            "active_skill_ignores_crossbow_manager",
        },
        levels = {
            [1] = {1, 3, 8, 90, 8, 10, 40, 0, 80, 75, 220, 14, -45, baseMultiplier = 0.15, levelRequirement = 15.932, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["RapidShotIncendiaryBoltMonster"] = {
        name = "Rapid Shot",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Fire a stream of heated bolts. [Heat] builds up on your [Crossbow] as you fire, and reaching maximum heat will prevent you from firing these bolts for a short time. However, other Skills can Consume [Heat] for extra benefits.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.RangedAttack] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.CrossbowSkill] = true,
            [SkillType.Trappable] = true,
            [SkillType.Totemable] = true,
            [SkillType.Mineable] = true,
            [SkillType.UsableWhileMoving] = true,
            [SkillType.Fire] = true,
            [SkillType.NoAttackInPlace] = true,
        },
        statDescriptionScope = "rapid_shot_incendiary",
        castTime = 1,
        baseFlags = {
            attack = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "maximum_number_of_crossbow_heat_stacks",
            "action_required_target_facing_angle_tolerance_degrees",
            "active_skill_base_physical_damage_%_to_convert_to_fire",
            "base_skill_effect_duration",
            "active_skill_override_turn_duration_ms",
            "active_skill_facing_angle_turn_duration_ms",
            "base_knockback_distance",
            "attack_maximum_action_distance_+",
            "base_is_projectile",
            "action_requires_aiming_stance",
            "projectile_uses_contact_position",
            "projectile_uses_contact_direction",
            "check_for_targets_between_initiator_and_projectile_source",
            "projectiles_crossbow_barrage",
            "disable_visual_hit_effect",
            "action_do_not_face_target",
            "can_perform_skill_while_moving",
            "active_skill_ignores_crossbow_manager",
        },
        levels = {
            [1] = {12, 60, 60, 80, 100, 100, 30, -50, baseMultiplier = 0.15, levelRequirement = 15.932, statInterpolation = {1},  cost = { }, },
        },
    }
    
    undead description [1]
    FamilyMonsterNecromancerRaisable
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    Stats
  • undead description Min: 1 Max: 1 Global
  • Adds Tagsnecromancer_raisable
    FamilyNothing
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    stance movement speed +% final [-71]
    FamilyStance
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    Stats
  • stance movement speed +% final Min: -71 Max: -71 Global
  • 衰朽佣兵
    亡灵
    undead description [1]
    Decrepit Mercenary
    SpectreY
    Area欧甘村庄, 阴霾湾, 金字塔避难所
    Tags1HSword_onhit_audio, fire_affinity, melee, not_dex, not_int, physical_affinity, slow_movement, undead, zombie
    Packs
  • 欧甘村庄: 衰朽佣兵, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 金字塔避难所: 钢铁奇术师, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 生命
    120%
    +50%
    抗性
    30 0 0 0
    伤害
    120%
    命中
    100%
    暴击 Chance
    5%
    Attack Distance
    5 ~ 11
    攻击间隔
    1.755 Second
    Damage Spread
    ±20%
    经验值
    120%
    Model Size
    100%
    Type
    InfectedMercenaryOneHandIncin
    Metadata
    InfectedMercenarySwordTorchIncin
    等级
    65
    生命
    7,816
    3,035
    伤害
    255
    法术伤害
    255
    命中
    2,214
    攻击间隔
    1.755
    经验值
    25,808
    召唤物生命
    7,538
    召唤物伤害
    995
    召唤物护甲
    5,058
    MeleeAtAnimationSpeedFire
    攻击, 范围攻击, 技能可幻影射手, 投射物, 近战单一目标, 近战, 玩家投射物
    基础攻击
    Base Damage: 204–306
    暴击率: 5%
    攻击间隔: 1.755 秒
    物理伤害的 40% 转化为火焰伤害
    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"
    
    Actor
    {
    	basic_action = "Revive"
    	basic_action = "Emerge"
    	basic_action = "Emerge2"
    	basic_action = "ChangeToStance1"
    	basic_action = "ChangeToStance2"
    }
    
    StateMachine
    {
    	define_shared_state = "fire;"
    }
    
    Stats
    {
    	set_base_heavy_stun_duration_ms = 2200
    }
    
    Transitionable
    
    {
    
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    
    StateMachine
    {
    	on_or_create_state_fire_2 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			this.my_torch_fire = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/PirateBarrel/ao/torch_fire.ao', L_Weapon_Fire );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', MainHand );
    		} );
    		IfVarietyContains( MaulIncin, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', MainHand );
    		} );
    		IfVarietyContains( AxeIncin, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', MainHand );
    		} );
    		SetAudioParam( WeaponFireEPK, 1 );
    	"
    
    	on_state_fire_0 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			my_torch_fire.SetLightState( off, GetCurrentAnimationLength(), 0 );
    			PlayAnimationAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/PirateBarrel/ao/torch_fire.ao', end_rand );
    		} );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', OffHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', OffHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', OffHand );
    	"
    
    	create_state_fire_0 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			my_torch_fire.SetLightState( off, 0, 0 );
    			my_torch.PlayAnimation( end_rand );
    			my_torch.GoToAnimationEnd();
    		} );
    	"
    
    	on_or_create_state_fire_1 =
    	"
    		IfVarietyContains( Axe__, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', MainHand );
    		} );
    		IfVarietyContains( Sword, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', MainHand );
    		} );
    		IfVarietyContains( AxeAxe, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', MainHand );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', OffHand );
    		} );
    		IfVarietyContains( SwordSword_, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', MainHand );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', OffHand );
    		} );
    		IfVarietyContains( Maul, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hmace.epk', MainHand );
    		} );
    	"
    }
    
    Transitionable
    
    {
    
    on_transition =
    
    "
    
    Roll( 1, 2, { PlayEffect( 'Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryAggroAudio.ao' ); } );
    
    "
    
    }
    
    Animated
    
    {
    
    preload_animated_object = "Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryAggroAudio.ao"
    
    }
    
    Render
    {
    	selection_size_override = "100, 100, 190"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/Mercenary/Infected/InfectedMercenarySwordTorchIncin"] = {
        name = "Decrepit Mercenary",
        life = 1.2,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1.2,
        damageSpread = 0.2,
        attackTime = 1.755,
        attackRange = 11,
        accuracy = 1,
        weaponType1 = "One Hand Sword",
        weaponType2 = "One Hand Mace",
        skillList = {
            "MeleeAtAnimationSpeedFire",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MeleeAtAnimationSpeedFire"] = {
        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",
            "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, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    
    undead description [1]
    FamilyMonsterNecromancerRaisable
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    Stats
  • undead description Min: 1 Max: 1 Global
  • Adds Tagsnecromancer_raisable
    衰朽佣兵
    亡灵
    undead description [1]
    Decrepit Mercenary
    SpectreY
    Area欧甘村庄, 金字塔避难所
    Tags2HBluntMetal_onhit_audio, fire_affinity, melee, not_dex, not_int, physical_affinity, slow_movement, undead, zombie
    Packs
  • 欧甘村庄: 衰朽佣兵, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 金字塔避难所: 钢铁执法者, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 金字塔避难所: 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 生命
    120%
    +50%
    抗性
    30 0 0 0
    伤害
    144%
    命中
    100%
    暴击 Chance
    5%
    Attack Distance
    5 ~ 9
    攻击间隔
    2.25 Second
    Damage Spread
    ±20%
    经验值
    120%
    Model Size
    100%
    Type
    InfectedMercenaryTwoHandIncin
    Metadata
    InfectedMercenaryMaulIncin
    等级
    65
    生命
    7,816
    3,035
    伤害
    306
    法术伤害
    306
    命中
    2,214
    攻击间隔
    2.25
    经验值
    25,808
    召唤物生命
    7,538
    召唤物伤害
    1,194
    召唤物护甲
    5,058
    MeleeAtAnimationSpeedFire
    攻击, 范围攻击, 技能可幻影射手, 投射物, 近战单一目标, 近战, 玩家投射物
    基础攻击
    Base Damage: 245–367
    暴击率: 5%
    攻击间隔: 2.25 秒
    物理伤害的 40% 转化为火焰伤害
    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"
    
    Actor
    {
    	basic_action = "Revive"
    	basic_action = "Emerge"
    	basic_action = "Emerge2"
    	basic_action = "ChangeToStance1"
    	basic_action = "ChangeToStance2"
    }
    
    StateMachine
    {
    	define_shared_state = "fire;"
    }
    
    Stats
    {
    	set_base_heavy_stun_duration_ms = 2200
    }
    
    Transitionable
    
    {
    
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    
    StateMachine
    {
    	on_or_create_state_fire_2 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			this.my_torch_fire = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/PirateBarrel/ao/torch_fire.ao', L_Weapon_Fire );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', MainHand );
    		} );
    		IfVarietyContains( MaulIncin, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', MainHand );
    		} );
    		IfVarietyContains( AxeIncin, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', MainHand );
    		} );
    		SetAudioParam( WeaponFireEPK, 1 );
    	"
    
    	on_state_fire_0 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			my_torch_fire.SetLightState( off, GetCurrentAnimationLength(), 0 );
    			PlayAnimationAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/PirateBarrel/ao/torch_fire.ao', end_rand );
    		} );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', OffHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', OffHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', OffHand );
    	"
    
    	create_state_fire_0 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			my_torch_fire.SetLightState( off, 0, 0 );
    			my_torch.PlayAnimation( end_rand );
    			my_torch.GoToAnimationEnd();
    		} );
    	"
    
    	on_or_create_state_fire_1 =
    	"
    		IfVarietyContains( Axe__, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', MainHand );
    		} );
    		IfVarietyContains( Sword, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', MainHand );
    		} );
    		IfVarietyContains( AxeAxe, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', MainHand );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', OffHand );
    		} );
    		IfVarietyContains( SwordSword_, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', MainHand );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', OffHand );
    		} );
    		IfVarietyContains( Maul, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hmace.epk', MainHand );
    		} );
    	"
    }
    
    Transitionable
    
    {
    
    on_transition =
    
    "
    
    Roll( 1, 2, { PlayEffect( 'Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryAggroAudio.ao' ); } );
    
    "
    
    }
    
    Animated
    
    {
    
    preload_animated_object = "Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryAggroAudio.ao"
    
    }
    
    Render
    {
    	selection_size_override = "100, 100, 190"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/Mercenary/Infected/InfectedMercenaryMaulIncin"] = {
        name = "Decrepit Mercenary",
        life = 1.2,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1.44,
        damageSpread = 0.2,
        attackTime = 2.25,
        attackRange = 9,
        accuracy = 1,
        weaponType1 = "Two Hand Mace",
        skillList = {
            "MeleeAtAnimationSpeedFire",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MeleeAtAnimationSpeedFire"] = {
        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",
            "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, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    
    undead description [1]
    FamilyMonsterNecromancerRaisable
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    Stats
  • undead description Min: 1 Max: 1 Global
  • Adds Tagsnecromancer_raisable
    衰朽佣兵
    亡灵
    undead description [1]
    Decrepit Mercenary
    SpectreY
    Area欧甘村庄, 阴霾湾, 金字塔避难所
    Tags1HAxe_onhit_audio, fire_affinity, melee, not_dex, not_int, physical_affinity, slow_movement, undead, zombie
    Packs
  • 欧甘村庄: 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 金字塔避难所: 钢铁奇术师, 衰朽佣兵, 衰朽佣兵
  • 金字塔避难所: 钢铁执法者, 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 金字塔避难所: 衰朽佣兵, 衰朽佣兵, 衰朽佣兵
  • 生命
    120%
    +50%
    抗性
    30 0 0 0
    伤害
    120%
    命中
    100%
    暴击 Chance
    5%
    Attack Distance
    5 ~ 8
    攻击间隔
    1.755 Second
    Damage Spread
    ±20%
    经验值
    120%
    Model Size
    100%
    Type
    InfectedMercenaryOneHandIncin
    Metadata
    InfectedMercenaryAxeIncin
    等级
    65
    生命
    7,816
    3,035
    伤害
    255
    法术伤害
    255
    命中
    2,214
    攻击间隔
    1.755
    经验值
    25,808
    召唤物生命
    7,538
    召唤物伤害
    995
    召唤物护甲
    5,058
    MeleeAtAnimationSpeedFire
    攻击, 范围攻击, 技能可幻影射手, 投射物, 近战单一目标, 近战, 玩家投射物
    基础攻击
    Base Damage: 204–306
    暴击率: 5%
    攻击间隔: 1.755 秒
    物理伤害的 40% 转化为火焰伤害
    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"
    
    Actor
    {
    	basic_action = "Revive"
    	basic_action = "Emerge"
    	basic_action = "Emerge2"
    	basic_action = "ChangeToStance1"
    	basic_action = "ChangeToStance2"
    }
    
    StateMachine
    {
    	define_shared_state = "fire;"
    }
    
    Stats
    {
    	set_base_heavy_stun_duration_ms = 2200
    }
    
    Transitionable
    
    {
    
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    
    StateMachine
    {
    	on_or_create_state_fire_2 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			this.my_torch_fire = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/PirateBarrel/ao/torch_fire.ao', L_Weapon_Fire );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', MainHand );
    		} );
    		IfVarietyContains( MaulIncin, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', MainHand );
    		} );
    		IfVarietyContains( AxeIncin, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', MainHand );
    		} );
    		SetAudioParam( WeaponFireEPK, 1 );
    	"
    
    	on_state_fire_0 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			my_torch_fire.SetLightState( off, GetCurrentAnimationLength(), 0 );
    			PlayAnimationAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/PirateBarrel/ao/torch_fire.ao', end_rand );
    		} );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', OffHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', OffHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', OffHand );
    	"
    
    	create_state_fire_0 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			my_torch_fire.SetLightState( off, 0, 0 );
    			my_torch.PlayAnimation( end_rand );
    			my_torch.GoToAnimationEnd();
    		} );
    	"
    
    	on_or_create_state_fire_1 =
    	"
    		IfVarietyContains( Axe__, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', MainHand );
    		} );
    		IfVarietyContains( Sword, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', MainHand );
    		} );
    		IfVarietyContains( AxeAxe, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', MainHand );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', OffHand );
    		} );
    		IfVarietyContains( SwordSword_, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', MainHand );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', OffHand );
    		} );
    		IfVarietyContains( Maul, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hmace.epk', MainHand );
    		} );
    	"
    }
    
    Transitionable
    
    {
    
    on_transition =
    
    "
    
    Roll( 1, 2, { PlayEffect( 'Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryAggroAudio.ao' ); } );
    
    "
    
    }
    
    Animated
    
    {
    
    preload_animated_object = "Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryAggroAudio.ao"
    
    }
    
    Render
    {
    	selection_size_override = "100, 100, 190"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/Mercenary/Infected/InfectedMercenaryAxeIncin"] = {
        name = "Decrepit Mercenary",
        life = 1.2,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1.2,
        damageSpread = 0.2,
        attackTime = 1.755,
        attackRange = 8,
        accuracy = 1,
        weaponType1 = "One Hand Axe",
        skillList = {
            "MeleeAtAnimationSpeedFire",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MeleeAtAnimationSpeedFire"] = {
        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",
            "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, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    
    undead description [1]
    FamilyMonsterNecromancerRaisable
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    Stats
  • undead description Min: 1 Max: 1 Global
  • Adds Tagsnecromancer_raisable
    衰朽佣兵
    亡灵
    undead description [1]
    monster slain flask charges granted +% [100]
    stance movement speed +% final [-71]
    Decrepit Mercenary
    SpectreY
    TagsArrow_onhit_audio, not_dex, not_int, slow_movement, undead, zombie
    生命
    120%
    +50%
    抗性
    0 0 0 0
    伤害
    120%
    命中
    100%
    暴击 Chance
    6%
    Attack Distance
    6 ~ 55
    攻击间隔
    3.75 Second
    Damage Spread
    ±20%
    经验值
    120%
    Model Size
    100%
    Type
    InfectedMercenaryRanged
    Metadata
    InfectedMercenaryCrossbowExecutionerMinion
    等级
    68
    生命
    9,308
    3,620
    伤害
    280
    法术伤害
    280
    命中
    2,464
    攻击间隔
    3.75
    经验值
    34,361
    召唤物生命
    8,316
    召唤物伤害
    1,163
    召唤物护甲
    6,033
    MeleeAtAnimationSpeed
    攻击, 范围攻击, 技能可幻影射手, 投射物, 近战单一目标, 近战, 玩家投射物
    基础攻击
    Base Damage: 224–336
    暴击率: 5%
    攻击间隔: 3.75 秒
    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]
    DTTExecutionerMinionsJumpToArena
    法术, 位移
    施放间隔: 1 秒
    action attack or cast time uses animation length [1]
    leap slam minimum distance [30]
    spell maximum action distance +% [150]
    walk emerge extra distance [0]
    MPWInfectedMercIncendiaryBolt
    攻击, 范围攻击, 技能可幻影射手, 投射物, 玩家投射物, 伤害, 可触发
    Base Damage: 224–336
    暴击率: 5%
    攻击间隔: 3.75 秒
    物理伤害的 80% 转化为火焰伤害
    attack maximum action distance + [40]
    base is projectile [1]
    maintain projectile direction when using contact position [1]
    monster projectile variation [1109]
    projectile uses contact position [1]
    GAInfectedMercIncendiaryBoltImpact
    可触发, 攻击
    Base Damage: 224–336
    暴击率: 5%
    攻击伤害: 215%
    攻击间隔: 3.75 秒
    攻击伤害总增 115%
    物理伤害的 80% 转化为火焰伤害
    action attack or cast time uses animation length [1]
    base is projectile [2]
    base skill can be avoided by dodge roll [1]
    base skill can be blocked [1]
    is area damage [1]
    EASInfectedMercArenaTaunt
    冷却时间: 3.5 秒
    action attack or cast time uses animation length [1]
    ExecutionerMinionLeapSlam
    攻击, 范围, 近战, Slam, 图腾技能, 快行, Jumping, ConsumesFullyBrokenArmour, NoAttackInPlace
    跃击
    Base Damage: 224–336
    暴击率: 5%
    攻击伤害: 140%
    攻击间隔: 3.75 秒
    跃向空中,落地时用锤子对敌人造成伤害,并击退敌人。 被踩到的敌人将被推离。
    攻击伤害总增 40%
    action attack or cast time uses animation length [1]
    base deal no damage [1]
    leap slam minimum distance [30]
    GTInfectedMercIncendiaryBolt
    可触发
    action attack or cast time uses animation length [1]
    GCEInfectedMercIncendiaryBolt
    法术, 范围, 伤害, 可触发, 持续时间, 范围法术
    施放间隔: 1 秒
    每秒造成 10.1 基础[火焰]伤害
    active skill area of effect radius +% final [-35]
    base skill effect duration [6000]
    ground fire art variation [1005]
    GTInfectedMercIncendiaryBoltPostFight
    可触发
    action attack or cast time uses animation length [1]

    Object Type

    version 2
    extends "Metadata/Monsters/Monster"
    
    Actor
    {
    	actor = "Metadata/Monsters/Mercenary/Infected/InfectedMercenaryCrossbow.act"
    	basic_action = "Revive"
    	basic_action = "Emerge"
    	basic_action = "Emerge2"
    	basic_action = "ChangeToStance1"
    	basic_action = "ChangeToStance2"
    }
    
    StateMachine
    {
    	define_shared_state = "lock_on;"
    	on_state_lock_on_0 = "SetUsesDirectionalRunAnimations( false );"
    	on_state_lock_on_1 = "SetUsesDirectionalRunAnimations( true );"
    }
    
    Functions
    {
    	marker_height =
    	"
    		this.temp = arg2;
    
    		arg1.SetHeight( this.temp.GetHeight() );
    	"
    }
    
    Transitionable
    
    {
    
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    
    Actor
    {
    	on_effect_start_MPWInfectedMercIncendiaryBolt = "AddEffectPackAttached( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/crossbow_weaponheat.epk', 'Metadata/Monsters/LeagueHeist/Military/attachments/Crossbow.ao' );"
    }
    
    Transitionable
    {
    	on_transition =
    	"
    		Roll( 1, 2,
    		{
    			PlayEffect( 'Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryCrossbowAggroAudio.ao' );
    		} );
    	"
    }
    
    Animated
    {
    	preload_animated_object = "Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryCrossbowAggroAudio.ao"
    }
    
    Preload
    {
    	preload_particle = "Metadata/Effects/Spells/crossbow_armour_piercing/pet/power_impact.pet"
    	preload_particle = "Metadata/Effects/Spells/crossbow_basic/pet/burst_impact.pet"
    	preload_particle = "Metadata/Effects/Spells/crossbow_armour_piercing/pet/power_pierce.pet"
    }
    
    Render
    {
    	selection_size_override = "100, 100, 190"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/Mercenary/Infected/InfectedMercenaryCrossbowExecutionerMinion"] = {
        name = "Decrepit Mercenary",
        life = 1.2,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1.2,
        damageSpread = 0.2,
        attackTime = 3.75,
        attackRange = 55,
        accuracy = 1,
        weaponType1 = "Bow",
        skillList = {
            "MeleeAtAnimationSpeed",
            "ExecutionerMinionLeapSlam",
            "MPWInfectedMercIncendiaryBolt",
            "GCEInfectedMercIncendiaryBolt",
            "GAInfectedMercIncendiaryBoltImpact",
            "EASInfectedMercArenaTaunt",
            "GTInfectedMercIncendiaryBolt",
            "GTInfectedMercIncendiaryBoltPostFight",
            "DTTExecutionerMinionsJumpToArena",
        },
        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.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["ExecutionerMinionLeapSlam"] = {
        name = "Leap Slam",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Jump into the air, damaging and [Knockback|Knocking Back] enemies with your mace where you land. Enemies you would land on are
    pushed out of the way.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.Area] = true,
            [SkillType.Melee] = true,
            [SkillType.Slam] = true,
            [SkillType.Totemable] = true,
            [SkillType.Travel] = true,
            [SkillType.Jumping] = true,
            [SkillType.ConsumesFullyBrokenArmour] = true,
            [SkillType.NoAttackInPlace] = true,
        },
        statDescriptionScope = "leap_slam",
        castTime = 1.4,
        baseFlags = {
            attack = true,
            area = true,
            melee = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "leap_slam_minimum_distance",
            "action_attack_or_cast_time_uses_animation_length",
            "base_deal_no_damage",
        },
        levels = {
            [1] = {30, baseMultiplier = 1.4, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MPWInfectedMercIncendiaryBolt"] = {
        name = "MPWInfectedMercIncendiaryBolt",
        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 = 2.5,
        baseFlags = {
            attack = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "monster_projectile_variation",
            "attack_maximum_action_distance_+",
            "active_skill_base_physical_damage_%_to_convert_to_fire",
            "base_is_projectile",
            "projectile_uses_contact_position",
            "maintain_projectile_direction_when_using_contact_position",
        },
        levels = {
            [1] = {1109, 40, 80, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GCEInfectedMercIncendiaryBolt"] = {
        name = "GCEInfectedMercIncendiaryBolt",
        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_fire_damage_to_deal_per_minute",
            "active_skill_area_of_effect_radius_+%_final",
            "base_skill_effect_duration",
            "ground_fire_art_variation",
        },
        levels = {
            [1] = {2, -35, 6000, 1005, levelRequirement = 1, statInterpolation = {3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GAInfectedMercIncendiaryBoltImpact"] = {
        name = "GAInfectedMercIncendiaryBoltImpact",
        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,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "active_skill_base_physical_damage_%_to_convert_to_fire",
            "is_area_damage",
            "action_attack_or_cast_time_uses_animation_length",
            "base_is_projectile",
            "base_skill_can_be_blocked",
            "base_skill_can_be_avoided_by_dodge_roll",
            "base_is_projectile",
        },
        levels = {
            [1] = {80, baseMultiplier = 2.15, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASInfectedMercArenaTaunt"] = {
        name = "EASInfectedMercArenaTaunt",
        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["GTInfectedMercIncendiaryBolt"] = {
        name = "GTInfectedMercIncendiaryBolt",
        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["GTInfectedMercIncendiaryBoltPostFight"] = {
        name = "GTInfectedMercIncendiaryBoltPostFight",
        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["DTTExecutionerMinionsJumpToArena"] = {
        name = "DTTExecutionerMinionsJumpToArena",
        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] = {0, 30, 150, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    
    undead description [1]
    FamilyMonsterNecromancerRaisable
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    Stats
  • undead description Min: 1 Max: 1 Global
  • Adds Tagsnecromancer_raisable
    monster slain flask charges granted +% [100]
    FamilyMonsterSlainFlaskCharges
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    Stats
  • monster slain flask charges granted +% Min: 100 Max: 100 Global
  • Craft Tagsflask
    FamilyNothing
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    stance movement speed +% final [-71]
    FamilyStance
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    Stats
  • stance movement speed +% final Min: -71 Max: -71 Global
  • 衰朽佣兵
    亡灵
    undead description [1]
    monster slain flask charges granted +% [100]
    stance movement speed +% final [-71]
    Decrepit Mercenary
    SpectreY
    TagsArrow_onhit_audio, not_dex, not_int, slow_movement, undead, zombie
    生命
    120%
    +50%
    抗性
    0 0 0 0
    伤害
    120%
    命中
    100%
    暴击 Chance
    6%
    Attack Distance
    6 ~ 55
    攻击间隔
    3.75 Second
    Damage Spread
    ±20%
    经验值
    120%
    Model Size
    100%
    Type
    InfectedMercenaryRanged
    Metadata
    InfectedMercenaryCrossbowExecutionerMinionSTANDALONE
    等级
    68
    生命
    9,308
    3,620
    伤害
    280
    法术伤害
    280
    命中
    2,464
    攻击间隔
    3.75
    经验值
    34,361
    召唤物生命
    8,316
    召唤物伤害
    1,163
    召唤物护甲
    6,033
    MeleeAtAnimationSpeed
    攻击, 范围攻击, 技能可幻影射手, 投射物, 近战单一目标, 近战, 玩家投射物
    基础攻击
    Base Damage: 224–336
    暴击率: 5%
    攻击间隔: 3.75 秒
    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]
    DTTExecutionerMinionsJumpToArena
    法术, 位移
    施放间隔: 1 秒
    action attack or cast time uses animation length [1]
    leap slam minimum distance [30]
    spell maximum action distance +% [150]
    walk emerge extra distance [0]
    MPWInfectedMercIncendiaryBolt
    攻击, 范围攻击, 技能可幻影射手, 投射物, 玩家投射物, 伤害, 可触发
    Base Damage: 224–336
    暴击率: 5%
    攻击间隔: 3.75 秒
    物理伤害的 80% 转化为火焰伤害
    attack maximum action distance + [40]
    base is projectile [1]
    maintain projectile direction when using contact position [1]
    monster projectile variation [1109]
    projectile uses contact position [1]
    GAInfectedMercIncendiaryBoltImpact
    可触发, 攻击
    Base Damage: 224–336
    暴击率: 5%
    攻击伤害: 215%
    攻击间隔: 3.75 秒
    攻击伤害总增 115%
    物理伤害的 80% 转化为火焰伤害
    action attack or cast time uses animation length [1]
    base is projectile [2]
    base skill can be avoided by dodge roll [1]
    base skill can be blocked [1]
    is area damage [1]
    EASInfectedMercArenaTaunt
    冷却时间: 3.5 秒
    action attack or cast time uses animation length [1]
    ExecutionerMinionLeapSlam
    攻击, 范围, 近战, Slam, 图腾技能, 快行, Jumping, ConsumesFullyBrokenArmour, NoAttackInPlace
    跃击
    Base Damage: 224–336
    暴击率: 5%
    攻击伤害: 140%
    攻击间隔: 3.75 秒
    跃向空中,落地时用锤子对敌人造成伤害,并击退敌人。 被踩到的敌人将被推离。
    攻击伤害总增 40%
    action attack or cast time uses animation length [1]
    base deal no damage [1]
    leap slam minimum distance [30]
    GTInfectedMercIncendiaryBolt
    可触发
    action attack or cast time uses animation length [1]
    GCEInfectedMercIncendiaryBolt
    法术, 范围, 伤害, 可触发, 持续时间, 范围法术
    施放间隔: 1 秒
    每秒造成 10.1 基础[火焰]伤害
    active skill area of effect radius +% final [-35]
    base skill effect duration [6000]
    ground fire art variation [1005]
    GTInfectedMercIncendiaryBoltPostFight
    可触发
    action attack or cast time uses animation length [1]

    Object Type

    version 2
    extends "Metadata/Monsters/Monster"
    
    Actor
    {
    	actor = "Metadata/Monsters/Mercenary/Infected/InfectedMercenaryCrossbow.act"
    	basic_action = "Revive"
    	basic_action = "Emerge"
    	basic_action = "Emerge2"
    	basic_action = "ChangeToStance1"
    	basic_action = "ChangeToStance2"
    }
    
    StateMachine
    {
    	define_shared_state = "lock_on;"
    	on_state_lock_on_0 = "SetUsesDirectionalRunAnimations( false );"
    	on_state_lock_on_1 = "SetUsesDirectionalRunAnimations( true );"
    }
    
    Functions
    {
    	marker_height =
    	"
    		this.temp = arg2;
    
    		arg1.SetHeight( this.temp.GetHeight() );
    	"
    }
    
    Transitionable
    
    {
    
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    
    Actor
    {
    	on_effect_start_MPWInfectedMercIncendiaryBolt = "AddEffectPackAttached( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/crossbow_weaponheat.epk', 'Metadata/Monsters/LeagueHeist/Military/attachments/Crossbow.ao' );"
    }
    
    Transitionable
    {
    	on_transition =
    	"
    		Roll( 1, 2,
    		{
    			PlayEffect( 'Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryCrossbowAggroAudio.ao' );
    		} );
    	"
    }
    
    Animated
    {
    	preload_animated_object = "Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryCrossbowAggroAudio.ao"
    }
    
    Preload
    {
    	preload_particle = "Metadata/Effects/Spells/crossbow_armour_piercing/pet/power_impact.pet"
    	preload_particle = "Metadata/Effects/Spells/crossbow_basic/pet/burst_impact.pet"
    	preload_particle = "Metadata/Effects/Spells/crossbow_armour_piercing/pet/power_pierce.pet"
    }
    
    Render
    {
    	selection_size_override = "100, 100, 190"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/Mercenary/Infected/InfectedMercenaryCrossbowExecutionerMinionSTANDALONE"] = {
        name = "Decrepit Mercenary",
        life = 1.2,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1.2,
        damageSpread = 0.2,
        attackTime = 3.75,
        attackRange = 55,
        accuracy = 1,
        weaponType1 = "Bow",
        skillList = {
            "MeleeAtAnimationSpeed",
            "ExecutionerMinionLeapSlam",
            "MPWInfectedMercIncendiaryBolt",
            "GCEInfectedMercIncendiaryBolt",
            "GAInfectedMercIncendiaryBoltImpact",
            "EASInfectedMercArenaTaunt",
            "GTInfectedMercIncendiaryBolt",
            "GTInfectedMercIncendiaryBoltPostFight",
            "DTTExecutionerMinionsJumpToArena",
        },
        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.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["ExecutionerMinionLeapSlam"] = {
        name = "Leap Slam",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Jump into the air, damaging and [Knockback|Knocking Back] enemies with your mace where you land. Enemies you would land on are
    pushed out of the way.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.Area] = true,
            [SkillType.Melee] = true,
            [SkillType.Slam] = true,
            [SkillType.Totemable] = true,
            [SkillType.Travel] = true,
            [SkillType.Jumping] = true,
            [SkillType.ConsumesFullyBrokenArmour] = true,
            [SkillType.NoAttackInPlace] = true,
        },
        statDescriptionScope = "leap_slam",
        castTime = 1.4,
        baseFlags = {
            attack = true,
            area = true,
            melee = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "leap_slam_minimum_distance",
            "action_attack_or_cast_time_uses_animation_length",
            "base_deal_no_damage",
        },
        levels = {
            [1] = {30, baseMultiplier = 1.4, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MPWInfectedMercIncendiaryBolt"] = {
        name = "MPWInfectedMercIncendiaryBolt",
        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 = 2.5,
        baseFlags = {
            attack = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "monster_projectile_variation",
            "attack_maximum_action_distance_+",
            "active_skill_base_physical_damage_%_to_convert_to_fire",
            "base_is_projectile",
            "projectile_uses_contact_position",
            "maintain_projectile_direction_when_using_contact_position",
        },
        levels = {
            [1] = {1109, 40, 80, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GCEInfectedMercIncendiaryBolt"] = {
        name = "GCEInfectedMercIncendiaryBolt",
        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_fire_damage_to_deal_per_minute",
            "active_skill_area_of_effect_radius_+%_final",
            "base_skill_effect_duration",
            "ground_fire_art_variation",
        },
        levels = {
            [1] = {2, -35, 6000, 1005, levelRequirement = 1, statInterpolation = {3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GAInfectedMercIncendiaryBoltImpact"] = {
        name = "GAInfectedMercIncendiaryBoltImpact",
        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,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "active_skill_base_physical_damage_%_to_convert_to_fire",
            "is_area_damage",
            "action_attack_or_cast_time_uses_animation_length",
            "base_is_projectile",
            "base_skill_can_be_blocked",
            "base_skill_can_be_avoided_by_dodge_roll",
            "base_is_projectile",
        },
        levels = {
            [1] = {80, baseMultiplier = 2.15, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASInfectedMercArenaTaunt"] = {
        name = "EASInfectedMercArenaTaunt",
        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["GTInfectedMercIncendiaryBolt"] = {
        name = "GTInfectedMercIncendiaryBolt",
        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["GTInfectedMercIncendiaryBoltPostFight"] = {
        name = "GTInfectedMercIncendiaryBoltPostFight",
        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["DTTExecutionerMinionsJumpToArena"] = {
        name = "DTTExecutionerMinionsJumpToArena",
        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] = {0, 30, 150, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    
    undead description [1]
    FamilyMonsterNecromancerRaisable
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    Stats
  • undead description Min: 1 Max: 1 Global
  • Adds Tagsnecromancer_raisable
    monster slain flask charges granted +% [100]
    FamilyMonsterSlainFlaskCharges
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    Stats
  • monster slain flask charges granted +% Min: 100 Max: 100 Global
  • Craft Tagsflask
    FamilyNothing
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    stance movement speed +% final [-71]
    FamilyStance
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    Stats
  • stance movement speed +% final Min: -71 Max: -71 Global
  • 衰朽佣兵
    亡灵
    undead description [1]
    monster slain flask charges granted +% [100]
    Decrepit Mercenary
    SpectreY
    Tags1HAxe_onhit_audio, not_dex, not_int, slow_movement, undead, zombie
    生命
    120%
    +50%
    抗性
    0 0 0 0
    伤害
    120%
    命中
    100%
    暴击 Chance
    5%
    Attack Distance
    5 ~ 11
    攻击间隔
    1.755 Second
    Damage Spread
    ±20%
    经验值
    120%
    Model Size
    100%
    Type
    InfectedMercenaryOneHand
    Metadata
    InfectedMercenaryAxeShieldExecutionerMinion
    等级
    68
    生命
    9,308
    3,620
    伤害
    280
    法术伤害
    280
    命中
    2,464
    攻击间隔
    1.755
    经验值
    34,361
    召唤物生命
    8,316
    召唤物伤害
    1,163
    召唤物护甲
    6,033
    MeleeAtAnimationSpeed
    攻击, 范围攻击, 技能可幻影射手, 投射物, 近战单一目标, 近战, 玩家投射物
    基础攻击
    Base Damage: 224–336
    暴击率: 5%
    攻击间隔: 1.755 秒
    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]
    DTTExecutionerMinionsJumpToArena
    法术, 位移
    施放间隔: 1 秒
    action attack or cast time uses animation length [1]
    leap slam minimum distance [30]
    spell maximum action distance +% [150]
    walk emerge extra distance [0]
    EASInfectedMercArenaTaunt
    冷却时间: 3.5 秒
    action attack or cast time uses animation length [1]
    ExecutionerMinionLeapSlam
    攻击, 范围, 近战, Slam, 图腾技能, 快行, Jumping, ConsumesFullyBrokenArmour, NoAttackInPlace
    跃击
    Base Damage: 224–336
    暴击率: 5%
    攻击伤害: 140%
    攻击间隔: 1.755 秒
    跃向空中,落地时用锤子对敌人造成伤害,并击退敌人。 被踩到的敌人将被推离。
    攻击伤害总增 40%
    action attack or cast time uses animation length [1]
    base deal no damage [1]
    leap slam minimum distance [30]

    Object Type

    version 2
    extends "Metadata/Monsters/Monster"
    
    Actor
    {
    	basic_action = "Revive"
    	basic_action = "Emerge"
    	basic_action = "Emerge2"
    	basic_action = "ChangeToStance1"
    	basic_action = "ChangeToStance2"
    }
    
    StateMachine
    {
    	define_shared_state = "fire;"
    }
    
    Stats
    {
    	set_base_heavy_stun_duration_ms = 2200
    }
    
    Transitionable
    
    {
    
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    
    StateMachine
    {
    	on_or_create_state_fire_2 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			this.my_torch_fire = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/PirateBarrel/ao/torch_fire.ao', L_Weapon_Fire );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', MainHand );
    		} );
    		IfVarietyContains( MaulIncin, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', MainHand );
    		} );
    		IfVarietyContains( AxeIncin, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', MainHand );
    		} );
    		SetAudioParam( WeaponFireEPK, 1 );
    	"
    
    	on_state_fire_0 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			my_torch_fire.SetLightState( off, GetCurrentAnimationLength(), 0 );
    			PlayAnimationAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/PirateBarrel/ao/torch_fire.ao', end_rand );
    		} );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', OffHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', OffHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', OffHand );
    	"
    
    	create_state_fire_0 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			my_torch_fire.SetLightState( off, 0, 0 );
    			my_torch.PlayAnimation( end_rand );
    			my_torch.GoToAnimationEnd();
    		} );
    	"
    
    	on_or_create_state_fire_1 =
    	"
    		IfVarietyContains( Axe__, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', MainHand );
    		} );
    		IfVarietyContains( Sword, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', MainHand );
    		} );
    		IfVarietyContains( AxeAxe, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', MainHand );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', OffHand );
    		} );
    		IfVarietyContains( SwordSword_, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', MainHand );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', OffHand );
    		} );
    		IfVarietyContains( Maul, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hmace.epk', MainHand );
    		} );
    	"
    }
    
    Transitionable
    
    {
    
    on_transition =
    
    "
    
    Roll( 1, 2, { PlayEffect( 'Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryAggroAudio.ao' ); } );
    
    "
    
    }
    
    Animated
    
    {
    
    preload_animated_object = "Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryAggroAudio.ao"
    
    }
    
    Render
    {
    	selection_size_override = "100, 100, 190"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/Mercenary/Infected/InfectedMercenaryAxeShieldExecutionerMinion"] = {
        name = "Decrepit Mercenary",
        life = 1.2,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1.2,
        damageSpread = 0.2,
        attackTime = 1.755,
        attackRange = 11,
        accuracy = 1,
        weaponType1 = "One Hand Axe",
        weaponType2 = "Shield",
        skillList = {
            "MeleeAtAnimationSpeed",
            "ExecutionerMinionLeapSlam",
            "EASInfectedMercArenaTaunt",
            "DTTExecutionerMinionsJumpToArena",
        },
        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.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["ExecutionerMinionLeapSlam"] = {
        name = "Leap Slam",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Jump into the air, damaging and [Knockback|Knocking Back] enemies with your mace where you land. Enemies you would land on are
    pushed out of the way.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.Area] = true,
            [SkillType.Melee] = true,
            [SkillType.Slam] = true,
            [SkillType.Totemable] = true,
            [SkillType.Travel] = true,
            [SkillType.Jumping] = true,
            [SkillType.ConsumesFullyBrokenArmour] = true,
            [SkillType.NoAttackInPlace] = true,
        },
        statDescriptionScope = "leap_slam",
        castTime = 1.4,
        baseFlags = {
            attack = true,
            area = true,
            melee = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "leap_slam_minimum_distance",
            "action_attack_or_cast_time_uses_animation_length",
            "base_deal_no_damage",
        },
        levels = {
            [1] = {30, baseMultiplier = 1.4, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASInfectedMercArenaTaunt"] = {
        name = "EASInfectedMercArenaTaunt",
        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["DTTExecutionerMinionsJumpToArena"] = {
        name = "DTTExecutionerMinionsJumpToArena",
        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] = {0, 30, 150, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    
    undead description [1]
    FamilyMonsterNecromancerRaisable
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    Stats
  • undead description Min: 1 Max: 1 Global
  • Adds Tagsnecromancer_raisable
    monster slain flask charges granted +% [100]
    FamilyMonsterSlainFlaskCharges
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    Stats
  • monster slain flask charges granted +% Min: 100 Max: 100 Global
  • Craft Tagsflask
    衰朽佣兵
    亡灵
    undead description [1]
    monster slain flask charges granted +% [100]
    Decrepit Mercenary
    SpectreY
    Tags1HAxe_onhit_audio, not_dex, not_int, slow_movement, undead, zombie
    生命
    120%
    +50%
    抗性
    0 0 0 0
    伤害
    120%
    命中
    100%
    暴击 Chance
    5%
    Attack Distance
    5 ~ 11
    攻击间隔
    1.755 Second
    Damage Spread
    ±20%
    经验值
    120%
    Model Size
    100%
    Type
    InfectedMercenaryOneHand
    Metadata
    InfectedMercenaryAxeShieldExecutionerMinion_STANDALONE
    等级
    68
    生命
    9,308
    3,620
    伤害
    280
    法术伤害
    280
    命中
    2,464
    攻击间隔
    1.755
    经验值
    34,361
    召唤物生命
    8,316
    召唤物伤害
    1,163
    召唤物护甲
    6,033
    MeleeAtAnimationSpeed
    攻击, 范围攻击, 技能可幻影射手, 投射物, 近战单一目标, 近战, 玩家投射物
    基础攻击
    Base Damage: 224–336
    暴击率: 5%
    攻击间隔: 1.755 秒
    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]
    DTTExecutionerMinionsJumpToArena
    法术, 位移
    施放间隔: 1 秒
    action attack or cast time uses animation length [1]
    leap slam minimum distance [30]
    spell maximum action distance +% [150]
    walk emerge extra distance [0]
    EASInfectedMercArenaTaunt
    冷却时间: 3.5 秒
    action attack or cast time uses animation length [1]
    ExecutionerMinionLeapSlam
    攻击, 范围, 近战, Slam, 图腾技能, 快行, Jumping, ConsumesFullyBrokenArmour, NoAttackInPlace
    跃击
    Base Damage: 224–336
    暴击率: 5%
    攻击伤害: 140%
    攻击间隔: 1.755 秒
    跃向空中,落地时用锤子对敌人造成伤害,并击退敌人。 被踩到的敌人将被推离。
    攻击伤害总增 40%
    action attack or cast time uses animation length [1]
    base deal no damage [1]
    leap slam minimum distance [30]

    Object Type

    version 2
    extends "Metadata/Monsters/Monster"
    
    Actor
    {
    	basic_action = "Revive"
    	basic_action = "Emerge"
    	basic_action = "Emerge2"
    	basic_action = "ChangeToStance1"
    	basic_action = "ChangeToStance2"
    }
    
    StateMachine
    {
    	define_shared_state = "fire;"
    }
    
    Stats
    {
    	set_base_heavy_stun_duration_ms = 2200
    }
    
    Transitionable
    
    {
    
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    
    StateMachine
    {
    	on_or_create_state_fire_2 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			this.my_torch_fire = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/PirateBarrel/ao/torch_fire.ao', L_Weapon_Fire );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', MainHand );
    		} );
    		IfVarietyContains( MaulIncin, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', MainHand );
    		} );
    		IfVarietyContains( AxeIncin, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', MainHand );
    		} );
    		SetAudioParam( WeaponFireEPK, 1 );
    	"
    
    	on_state_fire_0 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			my_torch_fire.SetLightState( off, GetCurrentAnimationLength(), 0 );
    			PlayAnimationAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/PirateBarrel/ao/torch_fire.ao', end_rand );
    		} );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hsword.epk', OffHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Hmace.epk', OffHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', MainHand );
    		RemoveEffectPackFromVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/fire_1Haxe.epk', OffHand );
    	"
    
    	create_state_fire_0 =
    	"
    		IfVarietyContains( Torch, ()
    		{
    			my_torch_fire.SetLightState( off, 0, 0 );
    			my_torch.PlayAnimation( end_rand );
    			my_torch.GoToAnimationEnd();
    		} );
    	"
    
    	on_or_create_state_fire_1 =
    	"
    		IfVarietyContains( Axe__, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', MainHand );
    		} );
    		IfVarietyContains( Sword, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', MainHand );
    		} );
    		IfVarietyContains( AxeAxe, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', MainHand );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Haxe.epk', OffHand );
    		} );
    		IfVarietyContains( SwordSword_, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', MainHand );
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hsword.epk', OffHand );
    		} );
    		IfVarietyContains( Maul, ()
    		{
    			AddEffectPackToVisualSlotAttachedObject( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/InfectedMercenary/epk/blood_1Hmace.epk', MainHand );
    		} );
    	"
    }
    
    Transitionable
    
    {
    
    on_transition =
    
    "
    
    Roll( 1, 2, { PlayEffect( 'Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryAggroAudio.ao' ); } );
    
    "
    
    }
    
    Animated
    
    {
    
    preload_animated_object = "Metadata/Monsters/Mercenary/Infected/audio/InfectedMercenaryAggroAudio.ao"
    
    }
    
    Render
    {
    	selection_size_override = "100, 100, 190"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/Mercenary/Infected/InfectedMercenaryAxeShieldExecutionerMinion_STANDALONE"] = {
        name = "Decrepit Mercenary",
        life = 1.2,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 1.2,
        damageSpread = 0.2,
        attackTime = 1.755,
        attackRange = 11,
        accuracy = 1,
        weaponType1 = "One Hand Axe",
        weaponType2 = "Shield",
        skillList = {
            "MeleeAtAnimationSpeed",
            "ExecutionerMinionLeapSlam",
            "EASInfectedMercArenaTaunt",
            "DTTExecutionerMinionsJumpToArena",
        },
        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.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["ExecutionerMinionLeapSlam"] = {
        name = "Leap Slam",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Jump into the air, damaging and [Knockback|Knocking Back] enemies with your mace where you land. Enemies you would land on are
    pushed out of the way.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.Area] = true,
            [SkillType.Melee] = true,
            [SkillType.Slam] = true,
            [SkillType.Totemable] = true,
            [SkillType.Travel] = true,
            [SkillType.Jumping] = true,
            [SkillType.ConsumesFullyBrokenArmour] = true,
            [SkillType.NoAttackInPlace] = true,
        },
        statDescriptionScope = "leap_slam",
        castTime = 1.4,
        baseFlags = {
            attack = true,
            area = true,
            melee = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "leap_slam_minimum_distance",
            "action_attack_or_cast_time_uses_animation_length",
            "base_deal_no_damage",
        },
        levels = {
            [1] = {30, baseMultiplier = 1.4, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASInfectedMercArenaTaunt"] = {
        name = "EASInfectedMercArenaTaunt",
        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["DTTExecutionerMinionsJumpToArena"] = {
        name = "DTTExecutionerMinionsJumpToArena",
        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] = {0, 30, 150, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    
    undead description [1]
    FamilyMonsterNecromancerRaisable
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    Stats
  • undead description Min: 1 Max: 1 Global
  • Adds Tagsnecromancer_raisable
    monster slain flask charges granted +% [100]
    FamilyMonsterSlainFlaskCharges
    Domains怪物 (3)
    GenerationType传奇 (3)
    Req. level1
    Stats
  • monster slain flask charges granted +% Min: 100 Max: 100 Global
  • Craft Tagsflask
    Edit

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