超越せし野獣
Brutal Transcendent
SpectreY
Areaジッグラトの避難所, 黒の間, 黒の間
Tags2HBluntWood_onhit_audio, allows_additional_projectiles, allows_inc_aoe, construct, humanoid, lightning_affinity, medium_movement, not_dex, ranged, red_blood
Packs
  • 黒の間, 黒の間: 超越せし野獣, ドリヤニの精鋭
  • 黒の間, 黒の間: 超越せし野獣, ゴライアス・トランセンデント, ブレードラッシュ・トランセンデント
  • ジッグラトの避難所: 超越せし野獣, ドリヤニの精鋭
  • 超越せし野獣, ドリヤニの精鋭
  • ライフ
    250%
    Energy Shield From Life
    8%
    アーマー
    +100%
    耐性
    30 0 30 0
    Damage
    250%
    命中
    100%
    クリティカルヒット Chance
    5%
    クリティカルダメージボーナス
    +30%
    Attack Distance
    5 ~ 14
    Attack Time
    1.5 Second
    Damage Spread
    ±20%
    経験値
    250%
    Model Size
    100%
    Type
    VaalPyramidHands
    Metadata
    VaalPyramidHands
    レベル
    70
    ライフ
    20,047
    アーマー
    7,754
    回避力
    502
    エナジーシールド
    1,743
    Damage
    620
    スペルダメージ
    620
    命中
    2,328
    Attack Time
    1.5
    経験値
    86,598
    Minion Life
    28,212
    Minion Energy Shield
    2,453
    Minion Damage
    5,406
    Minion Armour
    15,508
    EDSPyramidHandLightningLance
    Triggerable, Spell, Damage
    キャストタイム: 1 秒
    4463から6695ダメージを与える
    action attack or cast time uses animation length [1]
    is area damage [1]
    spell maximum action distance +% [-65]
    MPSVaalHumanoidPyramidHandsGrenade
    Spell, Projectile, ProjectilesFromUser, Triggerable, Damage
    キャストタイム: 1 秒
    クールダウン時間: 10 秒
    action attack or cast time uses animation length [1]
    ballistic projectiles always bounce [1]
    base deal no damage [1]
    base is projectile [1]
    maintain projectile direction when using contact position [1]
    monster projectile variation [1126]
    projectile ballistic angle from reference event [1]
    projectile ballistic gravity override [3000]
    projectile spread radius [9]
    projectile uses contact position [1]
    spell maximum action distance +% [-30]
    GSPyramidHandGenadeExplosion
    Triggerable, Spell, Damage
    キャストタイム: 1 秒
    2789から8368ダメージを与える
    base is projectile [1]
    is area damage [1]

    Object Type

    version 2
    extends "Metadata/Monsters/Monster"
    
    Stats
    {
    	strafe_distance_+% = -60
    }
    
    StateMachine
    {
    	define_shared_state = "lock_on;"
    	on_state_lock_on_0 = "SetUsesDirectionalRunAnimations( false );"
    	on_state_lock_on_1 = "SetUsesDirectionalRunAnimations( true );"
    }
    
    Animated
    {
    	// need this to enable the turn anims
    	always_interpolate_bearing = true
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    
    /* ------------------------------------------------------------------------------------------------------------------- */
    /* Movement/Turning */
    /* ------------------------------------------------------------------------------------------------------------------- */
    
    Positioned
    {
    	on_initial_position_set = "StartStateTimer( check_bearing );"
    
    	on_movement_started =
    	"
    		If( GetState( current_rotate_dir ) > 0, (){ SetStateTo( current_rotate_dir, 0 ); } );
    	"
    }
    
    StateMachine
    {
    	define_state = "current_rotate_dir;"
    	define_timer = "check_bearing = 0.033;"
    
    	// compare the bearing and orientation here, and then set the current_rotate_dir state to 1 or 11 for left/right turns
    	// that state being set to one of those values causes the additive turn anim to play, then the state is reset after that anim is finished
    	// there is a 10 degree no-turn forward angle, to prevent tiny turns that aren't needed
    	on_timer_check_bearing =
    	"
    		this.orientation = GetOrientation();
    		this.bearing = GetAnimatedBearing();
    		this.angle_diff = bearing - orientation;
    		this.angle_diff = Round( EvalIf( angle_diff > 180.0, angle_diff - 360.0, EvalIf( angle_diff < -180, angle_diff + 360.0, angle_diff ) ), 2 );
    		If( Or( And( angle_diff <= 5.0, angle_diff >= -5.0 ), GetCurrentMoveSpeed() > 1.0 ), (){ SetStateTo( current_rotate_dir, 0 ); } );
    		If( And( angle_diff > 5.0, GetCurrentMoveSpeed() < 1.0 ), (){ SetStateTo( current_rotate_dir, 1 ); } );
    		If( And( angle_diff < -5.0, GetCurrentMoveSpeed() < 1.0 ), (){ SetStateTo( current_rotate_dir, 2 ); } );
    		// Speed up the additive turn anims as the turn speed increases
    		local angle_diff_clamped = Clamp( angle_diff, -100, 100 );
    		local scaling_factor = 1.0 + Eval( Abs( angle_diff_clamped ) / 100 );
    		local layer_speed = Clamp( scaling_factor, 1.0, 3.0 );
    		// Log( 'Angle Diff: {angle_diff} | Layer Speed: {layer_speed}', c );
    		SetLayerAnimationSpeed( 9, layer_speed );
    		SetLayerAnimationSpeed( 10, layer_speed );
    		StartStateTimer( check_bearing );
    	"
    
    	// if current_rotate_dir is 0, it means the monster isn't turning so fade out the additive turns
    	on_state_current_rotate_dir_0 =
    	"
    		FadeAnimations( 9, 0.5 );
    		FadeAnimations( 10, 0.5 );
    	"
    
    	// play a different additive turn anim for different turn directions and velocity
    	on_state_current_rotate_dir_1 =
    	"
    		FadeAnimations( 10, 0.5 );
    		PlayAdditiveAnimation( turn_01_right, 9 );
    	"
    
    	on_state_current_rotate_dir_2 =
    	"
    		FadeAnimations( 9, 0.5 );
    		PlayAdditiveAnimation( turn_01_left, 10 );
    	"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/VaalHumanoids/VaalHumanoidPyramidHands/VaalPyramidHands"] = {
        name = "Brutal Transcendent",
        life = 2.5,
        energyShield = 0.08,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 2.5,
        damageSpread = 0.2,
        attackTime = 1.5,
        attackRange = 14,
        accuracy = 1,
        skillList = {
            "MPSVaalHumanoidPyramidHandsGrenade",
            "GSPyramidHandGenadeExplosion",
            "EDSPyramidHandLightningLance",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MPSVaalHumanoidPyramidHandsGrenade"] = {
        name = "MPSVaalHumanoidPyramidHandsGrenade",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Damage] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            spell = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "monster_projectile_variation",
            "spell_maximum_action_distance_+%",
            "projectile_spread_radius",
            "projectile_ballistic_gravity_override",
            "base_is_projectile",
            "projectile_uses_contact_position",
            "maintain_projectile_direction_when_using_contact_position",
            "action_attack_or_cast_time_uses_animation_length",
            "base_deal_no_damage",
            "projectile_ballistic_angle_from_reference_event",
            "ballistic_projectiles_always_bounce",
        },
        levels = {
            [1] = {1126, -30, 9, 3000, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GSPyramidHandGenadeExplosion"] = {
        name = "GSPyramidHandGenadeExplosion",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
            [SkillType.Spell] = true,
            [SkillType.Damage] = true,
        },
        statDescriptionScope = "geometry_spell",
        castTime = 1,
        baseFlags = {
            spell = true,
            area = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_lightning_damage",
            "spell_maximum_base_lightning_damage",
            "is_area_damage",
            "base_is_projectile",
        },
        levels = {
            [1] = {0.5, 1.5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EDSPyramidHandLightningLance"] = {
        name = "EDSPyramidHandLightningLance",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
            [SkillType.Spell] = true,
            [SkillType.Damage] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            spell = true,
            area = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_lightning_damage",
            "spell_maximum_base_lightning_damage",
            "spell_maximum_action_distance_+%",
            "is_area_damage",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, -65, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    
    Edit

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