千年国王





monster dropped item rarity +% [14700]
monster slain experience +% [0]
unique monster guarantee one rare [1]
monster slain experience +% [0]
unique monster guarantee one rare [1]
Jamanra, the Abomination
Spectre | N |
---|---|
Area | 无畏战车先锋, Dreadnought Vanguard |
Tags | 2HSharpMetal_onhit_audio, human, humanoid, not_dex, not_int, red_blood, very_slow_movement |
生命
717%
[护甲]
+50%
抗性




伤害
200%
命中
100%
Critical Hits Chance
5%
Critical Damage Bonus
+30%
Attack Distance
6 ~ 18
攻击间隔
1.5 Second
Damage Spread
±20%
经验值
300%
Model Size
100%
Type
PerennialKing
Metadata
PerennialKing
The following values do not include map affix bonuses, monster buff bonuses, altar bonuses, atlas skill bonuses.
等级
57
生命
28,694
[护甲]
1,875
闪避值
353
伤害
328
法术伤害
328
命中
1,504
攻击间隔
1.5
经验值
40,179
Minion Life
34,294
Minion Damage
1,083
Minion Armour
3,125
The following values are skill base values and do not include map affix bonuses, monster buff bonuses, altar bonuses, atlas skill bonuses, monster base damage(ex: The Maven 150% multiplier), monster rarity bonuses (ex: unique 70% more, unique attack 33% less).
GSPerennialKingBasicLightningZap
可触发, 法术, 伤害
暴击几率: 6%
施放间隔: 1 秒
造成 106.7- 320.1 [闪电]伤害
action attack or cast time uses animation length [1]
base skill can be blocked [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
spell maximum action distance +% [-85]
MASPerennialKingSandWhip
攻击, 范围攻击, 技能可幻影射手, 投射物, 近战单一目标, 近战, 玩家投射物
普通攻击
Base Damage: 263–394
暴击几率: 5%
攻击伤害: 75%
攻击间隔: 1.5 秒
冷却时间: 6 秒
攻击伤害总降 25%
action attack or cast time uses animation length [1]
attack maximum action distance + [8]
projectile uses contact position [1]
skill can fire wand projectiles [1]
use scaled contact offset [1]

CTS5PerennialKingSandstorm
action attack or cast time uses animation length [1]
CTS1PerennialKingEndSandstorm
action attack or cast time uses animation length [1]
EASPerennialKingBeaconToss
action attack or cast time uses animation length [1]
spell maximum action distance +% [-35]
EASPerennialKingBeaconBolts
冷却时间: 15 秒
action attack or cast time uses animation length [1]
EASPerennialKingLightningSpray
冷却时间: 22.5 秒
action attack or cast time uses animation length [1]
EASPerennialKingBeaconOrbitStart
冷却时间: 30 秒
action attack or cast time uses animation length [1]
EASPerennialKingBeaconOrbitRecall
action attack or cast time uses animation length [1]
CTS3PerennialKingMultistab
冷却时间: 25 秒
action attack or cast time uses animation length [1]
CTS1PerennialKingEndMultistab
action attack or cast time uses animation length [1]
MPWPerennialKingGlassSpearToss
攻击, 范围攻击, 技能可幻影射手, 投射物, 玩家投射物, 伤害, 可触发
Base Damage: 263–394
暴击几率: 5%
攻击间隔: 1.5 秒
冷却时间: 18 秒
将[物理]伤害的 25% 转化为[闪电]伤害
Pierces all Targets
action attack or cast time uses animation length [1]
base is projectile [1]
monster projectile variation [1125]
projectile uses contact position [1]
GPAPerennialKingGlassSpearMultiToss
可触发, 攻击
Base Damage: 263–394
暴击几率: 5%
攻击间隔: 1.5 秒
冷却时间: 17 秒
Pierces all Targets
action attack or cast time uses animation length [1]
active skill projectile speed +% variation final [0]
attack maximum action distance + [70]
base is projectile [1]
projectile spread radius [5]
projectile uses contact position [1]
use scaled contact offset [1]
GAPerennialKingGlassSwordSlam
可触发, 攻击
Base Damage: 263–394
暴击几率: 5%
攻击伤害: 450%
攻击间隔: 1.5 秒
冷却时间: 18 秒
攻击伤害总增 350%
将[物理]伤害的 35% 转化为[闪电]伤害
action attack or cast time uses animation length [1]
attack maximum action distance + [25]
base skill cannot be blocked [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
EAAPerennialKingGlassSwordFence
冷却时间: 17 秒
action attack or cast time uses animation length [1]
attack maximum action distance + [30]
GAPerennialKingAxeCleave
可触发, 攻击
Base Damage: 263–394
暴击几率: 5%
攻击伤害: 400%
攻击间隔: 1.5 秒
冷却时间: 26 秒
攻击伤害总增 300%
将[物理]伤害的 25% 转化为[闪电]伤害
action attack or cast time uses animation length [1]
attack maximum action distance + [12]
base skill can be avoided by dodge roll [1]
base skill cannot be blocked [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
MDPerennialKingObsidianStorm
法术可重复, 可触发
冷却时间: 40 秒
action attack or cast time uses animation length [1]
MDPerennialKingTornado
法术可重复, 可触发
冷却时间: 42 秒
action attack or cast time uses animation length [1]
EASPerennialKingOrbitTornado
action attack or cast time uses animation length [1]
SOPerennialKingObsidianMinigun
可触发
冷却时间: 17 秒
action attack or cast time uses animation length [1]
EASAbsoluteCartnage
action attack or cast time uses animation length [1]
GSPerennialKingBeaconSpray
可触发, 法术, 伤害
暴击几率: 6%
施放间隔: 1 秒
造成 50.81- 152.4 [闪电]伤害
使敌人[感电]的几率总增 25%
action attack or cast time uses animation length [1]
base skill can be blocked [1]
base skill cannot be parried [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
GAPerennialKingBeaconSpearStab
可触发, 攻击
Base Damage: 263–394
暴击几率: 5%
攻击伤害: 70%
攻击间隔: 1.5 秒
攻击伤害总降 30%
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
GAPerennialKingBeaconSpearImpact
可触发, 攻击
Base Damage: 263–394
暴击几率: 5%
攻击伤害: 90%
攻击间隔: 1.5 秒
攻击伤害总降 10%
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
GSPerennialKingBeaconOrbitLightningBeam
可触发, 法术, 伤害
施放间隔: 1 秒
造成 108.4- 325.2 [闪电]伤害
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
EDSPerennialKingBeaconLightningBolt
可触发, 法术, 伤害
暴击几率: 6%
施放间隔: 1 秒
造成 525- 1575 [闪电]伤害
action attack or cast time uses animation length [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [150]
GTPerennialKingGlassSpearToss
可触发
action attack or cast time uses animation length [1]
GAPerennialKingGlassSpearTossImpact
可触发, 攻击
Base Damage: 263–394
暴击几率: 5%
攻击伤害: 180%
攻击间隔: 1.5 秒
攻击伤害总增 80%
将[物理]伤害的 25% 转化为[闪电]伤害
action attack or cast time uses animation length [1]
base is projectile [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
GAPerennialKingGlassSpearTossImpactMulti
可触发, 攻击
Base Damage: 263–394
暴击几率: 5%
攻击伤害: 150%
攻击间隔: 1.5 秒
攻击伤害总增 50%
将[物理]伤害的 25% 转化为[闪电]伤害
action attack or cast time uses animation length [1]
base is projectile [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
SOPerennialKingGlassSpearMultiRock
可触发
action attack or cast time uses animation length [1]
SOPerennialKingGlassSwordFence
可触发
action attack or cast time uses animation length [1]
GSPerennialKingGlassSwordFenceZap
可触发, 法术, 伤害
暴击几率: 6%
施放间隔: 1 秒
造成 18.33- 55 [闪电]伤害
电殛积蓄值总增 90%
该技能的闪电伤害
作用于电殛积蓄
作用于电殛积蓄
action attack or cast time uses animation length [1]
base skill can be avoided by dodge roll [1]
base skill effect duration [4000]
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
GAPerennialKingObsidianStormImpact
可触发, 攻击
Base Damage: 263–394
暴击几率: 5%
攻击间隔: 1.5 秒
action attack or cast time uses animation length [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
GSPerennialKingSandnadoPhysDamage
可触发, 法术, 伤害
施放间隔: 1 秒
action attack or cast time uses animation length [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
GSPerennialKingSandnadoLightningDamage
可触发, 法术, 伤害
施放间隔: 1 秒
造成 203.2- 609.7 [闪电]伤害
action attack or cast time uses animation length [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
MPWPerennialKingObsidianMinigun
攻击, 范围攻击, 技能可幻影射手, 投射物, 玩家投射物, 伤害, 可触发
Base Damage: 263–394
暴击几率: 5%
攻击伤害: 50%
攻击间隔: 1.5 秒
攻击伤害总降 50%
将[物理]伤害的 25% 转化为[闪电]伤害
action attack or cast time uses animation length [1]
active skill projectile speed +% variation final [20]
base is projectile [1]
monster projectile variation [1127]
projectile ballistic angle from target distance [1]
projectile ballistic gravity override [400]
projectile maximum range override [250]
projectile spread radius [0]
Object Type
version 2 extends "Metadata/Monsters/Monster" extends "Metadata/Monsters/BossBase" /* ------------------------------------------------------------------------------------------------------------------- */ /* Generic */ /* ------------------------------------------------------------------------------------------------------------------- */ BaseEvents { on_construction_complete = { globals.pen_king = this; AddToPlayerWakeGroup( true ); } set_is_act_boss = true } Preload { preload_character_animation = "KnockdownLoop" preload_animated_object = "Metadata/Monsters/PerennialKingStage2/PerennialKingStage2OnlyCorpses.ao" preload_environment = "G2_12_2" } Actor { basic_action = "MoveForced" basic_action = "StrafeLeftNoFlee" basic_action = "StrafeRightNoFlee" leveled_starting_effects = "DoLiterallyNothing" } StateMachine { // the fake PK sets this to 0 when the emerge sequence begins, so it can swap to the correct skin define_shared_state = " invis = 1; lock_on; tornados; " define_shared_checkpoint_state = "seen_intro;" on_state_lock_on_0 = "SetUsesDirectionalRunAnimations( false );" on_state_lock_on_1 = "SetUsesDirectionalRunAnimations( true );" on_or_create_state_invis_0 = "MakeCollidable();" on_or_create_state_invis_1 = "RemoveCollidability();" } Stats { set_monster_delay_item_drops_millis = 11000 strafe_distance_+% = -60 } /* ------------------------------------------------------------------------------------------------------------------- */ /* Beacon Shared */ /* ------------------------------------------------------------------------------------------------------------------- */ StateMachine { // these states are used for ALL the beacon skills and keep track of the beacons, so the boss knows if it can use the other beacon skills define_shared_state = " has_left_beacon = 1; has_right_beacon = 1; " } /* ------------------------------------------------------------------------------------------------------------------- */ /* Phase change to second arena */ /* ------------------------------------------------------------------------------------------------------------------- */ StateMachine { define_shared_state = "first_arena_complete;" } /* ------------------------------------------------------------------------------------------------------------------- */ /* Obsidian Spear Toss (multi) */ /* ------------------------------------------------------------------------------------------------------------------- */ Animated { // this event fires a bit before the projectiles do, so they target a location that is a bit behind to prevent them from always hitting the target // the target points are generated around a circle, so they need to be reshuffled to minimise projectile crossover on_event_prepare_proj_center = " this.spear_count = 0; this.multi_spear_target_center = target.GetLocation(); Call( generate_spear_target_points, multi_spear_target_center, 20.0, 8 ); this.target_points = null; this.target_points += target_points2[2]; this.target_points += target_points2[1]; this.target_points += target_points2[3]; this.target_points += target_points2[0]; this.target_points += target_points2[4]; this.target_points += target_points2[7]; this.target_points += target_points2[5]; this.target_points += target_points2[6]; " on_event_prepare_proj = " SetTargetLocation( GetVariablesFromGroup( target_points, spear_count, Index ), 0, 0, true ); this.spear_count = spear_count + 1; " } Functions { // arg1: center (location) // arg2: radius (float) // arg3: num points (float) generate_spear_target_points = " this.target_points2 = null; this.angle = 0.0; local angle_increment = 360.0 / arg3; local pi = 3.14159265359; Repeat( 8, () { local new_loc = MakeLocation( arg1.x + Eval( arg2 * Cos( angle ) ), arg1.y + Eval( arg2 * Sin( angle ) ) ); this.target_points2 += new_loc; this.angle = angle + angle_increment; } ); " } /* ------------------------------------------------------------------------------------------------------------------- */ /* Death */ /* ------------------------------------------------------------------------------------------------------------------- */ StateMachine { define_shared_state = "lost_head;" }
Object Type Codes
version 2 extends "Metadata/Monsters/Monster" extends "Metadata/Monsters/BossBase" /* ------------------------------------------------------------------------------------------------------------------- */ /* Generic */ /* ------------------------------------------------------------------------------------------------------------------- */ StateMachine { // this state is set by the 'fake' perennial king that exists pre-emerge, so when it does emerge it can swap skins // fake PK: Metadata/Terrain/Gallows/Act2/2_12_2/Objects/PerennialKingHuman on_or_create_state_invis_0 = "EnableRendering();" on_or_create_state_invis_1 = "DisableRendering();" on_state_dead_1 = { globals.destructable_arena_core.PlayAnimation( crash_01 ); globals.destructable_arena_core.GoToAnimationEnd(); } } Render { use_ao_lights = true allow_attached_arrows = false } Preload { preload_animated_object = "Metadata/Effects/Spells/monsters_effects/Act2_FOUR/PerennialKing/ao/sand_storm_arena.ao" preload_animated_object = "Metadata/Effects/Spells/monsters_effects/Act2_FOUR/PerennialKing/ao/big_zap_01.ao" preload_object = "Metadata/Monsters/PerennialKingStage2/PerennialKingBeacon" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend1" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend2" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend3" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend4_" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend5" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend6" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend7" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend8" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend9" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend10__" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend11" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend12" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend13" preload_environment = "G2_12_2_boss" preload_misc_beam = "PerennialKingBeaconSprayBeam" preload_misc_beam = "PerennialKingHandsprayBeam" } /* ------------------------------------------------------------------------------------------------------------------- */ /* Movement/Turning */ /* ------------------------------------------------------------------------------------------------------------------- */ // whenever PK turns need to also play an additive turn animation, using the correct animation for the turn direction (left or right) // can do this by constantly checking the monsters orientation (GetOrientation() and comparing it with its bearing (GetAnimatedBearing())) // orientation is the server orientation, so this value will always be the actual direction the monster is facing // bearing is the clients current facing direction, and this one does visually match with the monsters facing direction // so whenever those two aren't the same, you can assume the monster is turning // also, when the monster is moving don't do any of this cause it messes with the additive n-directional anims 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/2/11/12 (if its not already set) // 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 // 1 and 2 are for the right turns, 1 being used for shorter turns (based on the angle_diff value), and 11/12 are for left with 11 being the short one // 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( angle_diff == 0.0, (){ FadeAnimations( 9, 0.666 ); } ); If( And( angle_diff > 5.0, angle_diff <= 45.0 ), () { If( GetState( current_rotate_dir ) == 0, (){ SetStateTo( current_rotate_dir, 1 ); } ); } ); If( angle_diff > 45.0, () { If( GetState( current_rotate_dir ) == 0, (){ SetStateTo( current_rotate_dir, 2 ); } ); } ); If( And( angle_diff < -5.0, angle_diff >= -45.0 ), () { If( GetState( current_rotate_dir ) == 0, (){ SetStateTo( current_rotate_dir, 11 ); } ); } ); If( angle_diff < -45.0, () { If( GetState( current_rotate_dir ) == 0, (){ SetStateTo( current_rotate_dir, 12 ); } ); } ); StartStateTimer( check_bearing ); " // play a different additive turn anim for different turn directions and velocity on_state_current_rotate_dir_1 = " If( GetCurrentMoveSpeed() < 1.0, () { PlayAdditiveAnimation( turn_02_right, 9 ); Delay( 0.666, { SetStateTo( current_rotate_dir, 0 ); } ); }, (){ SetStateTo( current_rotate_dir, 0 ); } ); " on_state_current_rotate_dir_2 = " If( GetCurrentMoveSpeed() < 1.0, () { PlayAdditiveAnimation( turn_01_right, 9 ); Delay( 0.666, { SetStateTo( current_rotate_dir, 0 ); } ); }, (){ SetStateTo( current_rotate_dir, 0 ); } ); " on_state_current_rotate_dir_11 = " If( GetCurrentMoveSpeed() < 1.0, () { PlayAdditiveAnimation( turn_02_left, 9 ); Delay( 0.666, { SetStateTo( current_rotate_dir, 0 ); } ); }, (){ SetStateTo( current_rotate_dir, 0 ); } ); " on_state_current_rotate_dir_12 = " If( GetCurrentMoveSpeed() < 1.0, () { PlayAdditiveAnimation( turn_01_left, 9 ); Delay( 0.666, { SetStateTo( current_rotate_dir, 0 ); } ); }, (){ SetStateTo( current_rotate_dir, 0 ); } ); " } /* ------------------------------------------------------------------------------------------------------------------- */ /* Phase change to second arena */ /* ------------------------------------------------------------------------------------------------------------------- */ Functions { fade_out = "FadeToBlack( 0, 3000, 6000 );" destroy_cart_core = "globals.destructable_arena_core.PlayAnimationAtSpeed( crash_01, 1.0 );" destroy_cart_core_instant = " globals.destructable_arena_core.PlayAnimation( crash_01 ); globals.destructable_arena_core.GoToAnimationEnd(); " hide_player_weapons = "arg1.HideWeapons();" show_player_weapons = "arg1.ShowWeapons();" } StateMachine { on_or_create_state_first_arena_complete_1 = "TriggerBracket( arena_sector_destruction, 1 );" } /* ------------------------------------------------------------------------------------------------------------------- */ /* Death */ /* ------------------------------------------------------------------------------------------------------------------- */ StateMachine { on_or_create_state_lost_head_1 = " HideMeshSegment( PerennialKing_headShape ); DetachAllOfType( 'Art/Models/MONSTERS/PerennialKingStage2/attachments/PerennialKingHelmet.fmt;Art/Models/MONSTERS/PerennialKingStage2/attachments/PerennialKingHelmet.ao' ); " } Functions { get_up_asala = { PlayCharacterAudioEvent( AfterPerennialKingSeeAsala ); } } /* ------------------------------------------------------------------------------------------------------------------- */ /* Audio */ /* ------------------------------------------------------------------------------------------------------------------- */ GlobalAudioParamEvents { player_in_range_param = "PerennialKing2InRange" life_percent_param = "PerennialKing2LifePercentage" range = 130 } Life { on_life_percent_reaches_1 = "PlayTextAudio( PerennialKing_Dreadnought_DeathMisc_7, 'Metadata/Monsters/PerennialKingStage2/PerennialKing', 1500 );" } Actor { on_effect_start_CTS1BossFightStart = "QueueTextAudio( PerennialKing_Dreadnought_Intro_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing', 3500 );" on_effect_start_GSPerennialKingBasicLightningZap = " Roll( 1, 6, () { PlayTextAudio( PerennialKing_Dreadnought_MiscSkill_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_MASPerennialKingSandWhip = " Roll( 1, 5, () { PlayTextAudio( PerennialKing_Dreadnought_MiscSkill_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_CTS5PerennialKingSandstorm = " Roll( 1, 2, () { PlayTextAudio( PerennialKing_Dreadnought_SummonSandstorm_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_EASPerennialKingBeaconToss = " Roll( 1, 5, () { PlayTextAudio( PerennialKing_Dreadnought_MiscSkill_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_EASPerennialKingBeaconBolts = " Roll( 1, 2, () { PlayTextAudio( PerennialKing_Dreadnought_BeaconLightning_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_EASPerennialKingLightningSpray = " Roll( 1, 2, () { PlayTextAudio( PerennialKing_Dreadnought_BeaconLightningSpray_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_EASPerennialKingBeaconOrbitStart = " Roll( 1, 1, () { PlayTextAudio( PerennialKing_Dreadnought_BeaconSend_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_CTS3PerennialKingMultistab = " Roll( 1, 2, () { PlayTextAudio( PerennialKing_Dreadnought_BeaconStab_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_MPWPerennialKingGlassSpearToss = " Roll( 1, 2, () { PlayTextAudio( PerennialKing_Dreadnought_MiscSkill_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_GPAPerennialKingGlassSpearMultiToss = " Roll( 1, 1, () { PlayTextAudio( PerennialKing_Dreadnought_SpearThrow_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_GAPerennialKingGlassSwordSlam = " Roll( 1, 1, () { PlayTextAudio( PerennialKing_Dreadnought_2hSword_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_EAAPerennialKingGlassSwordFence = " Roll( 1, 2, () { PlayTextAudio( PerennialKing_Dreadnought_Lacerate_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_GAPerennialKingAxeCleave = " Roll( 1, 5, () { PlayTextAudio( PerennialKing_Dreadnought_MiscSkill_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_MDPerennialKingObsidianStorm = " Roll( 1, 1, () { PlayTextAudio( PerennialKing_Dreadnought_ObsidianTornado_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_MDPerennialKingTornado = " Roll( 1, 2, () { PlayTextAudio( PerennialKing_Dreadnought_Tornado_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_SOPerennialKingObsidianMinigun = " Roll( 1, 2, () { PlayTextAudio( PerennialKing_Dreadnought_BeaconElectrify_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_EASAbsoluteCartnage = " Roll( 1, 1, () { PlayTextAudio( PerennialKing_Dreadnought_Countess_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing', 1000 ); } ); " on_effect_event_contact_for_EASPerennialKingOrbitTornado = " Roll( 1, 1, () { PlayTextAudio( PerennialKing_Dreadnought_BeastSandstorm_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " } Animated { on_heavy_stun_01 = " Roll( 1, 2, () { PlayTextAudio( PerennialKing_Dreadnought_HeavyStun_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_death_idle_01 = " Delay( 2, { PlayTextAudio( PerennialKing_Dreadnought_PostStabDeath, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " }
-- src\Data\Spectres.lua minions["Metadata/Monsters/PerennialKingStage2/PerennialKing"] = { name = "Jamanra, the Abomination", life = 7.17, fireResist = 0, coldResist = 0, lightningResist = 0, chaosResist = 0, damage = 2, damageSpread = 0.2, attackTime = 1.5, attackRange = 18, accuracy = 1, skillList = { "MASPerennialKingSandWhip", "GPAPerennialKingGlassSpearMultiToss", "MPWPerennialKingGlassSpearToss", "MPWPerennialKingObsidianMinigun", "CTS1PerennialKingEndMultistab", "CTS3PerennialKingMultistab", "CTS5PerennialKingSandstorm", "CTS1PerennialKingEndSandstorm", "GAPerennialKingBeaconSpearStab", "GAPerennialKingBeaconSpearImpact", "GSPerennialKingBeaconOrbitLightningBeam", "GSPerennialKingBasicLightningZap", "GAPerennialKingGlassSwordSlam", "GAPerennialKingAxeCleave", "GAPerennialKingObsidianStormImpact", "GSPerennialKingSandnadoPhysDamage", "GSPerennialKingSandnadoLightningDamage", "GSPerennialKingBeaconSpray", "GAPerennialKingGlassSpearTossImpact", "GAPerennialKingGlassSpearTossImpactMulti", "GSPerennialKingGlassSwordFenceZap", "EASPerennialKingBeaconToss", "EASPerennialKingBeaconBolts", "EASPerennialKingLightningSpray", "EASPerennialKingBeaconOrbitStart", "EASPerennialKingBeaconOrbitRecall", "EASAbsoluteCartnage", "EAAPerennialKingGlassSwordFence", "EASPerennialKingOrbitTornado", "MDPerennialKingObsidianStorm", "MDPerennialKingTornado", "SOPerennialKingObsidianMinigun", "SOPerennialKingGlassSpearMultiRock", "SOPerennialKingGlassSwordFence", "GTPerennialKingGlassSpearToss", "EDSPerennialKingBeaconLightningBolt", }, modList = { }, } -- src\Data\Skills\spectre.lua skills["MASPerennialKingSandWhip"] = { name = "Basic Attack", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Attack] = true, [SkillType.RangedAttack] = true, [SkillType.MirageArcherCanUse] = true, [SkillType.Projectile] = true, [SkillType.MeleeSingleTarget] = true, [SkillType.Melee] = true, [SkillType.ProjectilesFromUser] = true, }, statDescriptionScope = "skill_stat_descriptions", castTime = 1, baseFlags = { attack = true, melee = true, projectile = true, }, baseMods = { }, qualityStats = { }, stats = { "attack_maximum_action_distance_+", "skill_can_fire_arrows", "skill_can_fire_wand_projectiles", "action_attack_or_cast_time_uses_animation_length", "projectile_uses_contact_position", "use_scaled_contact_offset", }, levels = { [1] = {8, baseMultiplier = 0.75, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GPAPerennialKingGlassSpearMultiToss"] = { name = "GPAPerennialKingGlassSpearMultiToss", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Attack] = true, }, statDescriptionScope = "skill_stat_descriptions", castTime = 1, baseFlags = { attack = true, projectile = true, }, baseMods = { }, qualityStats = { }, stats = { "attack_maximum_action_distance_+", "active_skill_projectile_speed_+%_variation_final", "projectile_spread_radius", "base_is_projectile", "use_scaled_contact_offset", "projectile_uses_contact_position", "action_attack_or_cast_time_uses_animation_length", "always_pierce", }, levels = { [1] = {70, 0, 5, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["MPWPerennialKingGlassSpearToss"] = { name = "MPWPerennialKingGlassSpearToss", 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_lightning", "base_is_projectile", "projectile_uses_contact_position", "action_attack_or_cast_time_uses_animation_length", "always_pierce", }, levels = { [1] = {1125, 25, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["MPWPerennialKingObsidianMinigun"] = { name = "MPWPerennialKingObsidianMinigun", 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", "projectile_spread_radius", "projectile_ballistic_gravity_override", "projectile_maximum_range_override", "active_skill_projectile_speed_+%_variation_final", "active_skill_base_physical_damage_%_to_convert_to_lightning", "base_is_projectile", "action_attack_or_cast_time_uses_animation_length", "projectile_ballistic_angle_from_target_distance", }, levels = { [1] = {1127, 0, 400, 250, 20, 25, baseMultiplier = 0.5, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["CTS1PerennialKingEndMultistab"] = { name = "CTS1PerennialKingEndMultistab", 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["CTS3PerennialKingMultistab"] = { name = "CTS3PerennialKingMultistab", 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["CTS5PerennialKingSandstorm"] = { name = "CTS5PerennialKingSandstorm", 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["CTS1PerennialKingEndSandstorm"] = { name = "CTS1PerennialKingEndSandstorm", 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["GAPerennialKingBeaconSpearStab"] = { name = "GAPerennialKingBeaconSpearStab", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Attack] = true, }, statDescriptionScope = "skill_stat_descriptions", castTime = 1, baseFlags = { attack = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", }, levels = { [1] = {200, baseMultiplier = 0.7, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GAPerennialKingBeaconSpearImpact"] = { name = "GAPerennialKingBeaconSpearImpact", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Attack] = true, }, statDescriptionScope = "skill_stat_descriptions", castTime = 1, baseFlags = { attack = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", }, levels = { [1] = {200, baseMultiplier = 0.9, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSPerennialKingBeaconOrbitLightningBeam"] = { name = "GSPerennialKingBeaconOrbitLightningBeam", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Spell] = true, [SkillType.Damage] = true, }, statDescriptionScope = "geometry_spell", castTime = 1, baseFlags = { spell = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "spell_minimum_base_lightning_damage", "spell_maximum_base_lightning_damage", "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", }, levels = { [1] = {0.5, 1.5, 200, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSPerennialKingBasicLightningZap"] = { name = "GSPerennialKingBasicLightningZap", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Spell] = true, [SkillType.Damage] = true, }, statDescriptionScope = "geometry_spell", castTime = 1, baseFlags = { spell = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "spell_minimum_base_lightning_damage", "spell_maximum_base_lightning_damage", "spell_maximum_action_distance_+%", "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "base_skill_can_be_blocked", }, levels = { [1] = {0.5, 1.5, -85, 200, critChance = 6, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GAPerennialKingGlassSwordSlam"] = { name = "GAPerennialKingGlassSwordSlam", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Attack] = true, }, statDescriptionScope = "skill_stat_descriptions", castTime = 1, baseFlags = { attack = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "attack_maximum_action_distance_+", "active_skill_base_physical_damage_%_to_convert_to_lightning", "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "base_skill_cannot_be_blocked", }, levels = { [1] = {25, 35, 200, baseMultiplier = 4.5, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GAPerennialKingAxeCleave"] = { name = "GAPerennialKingAxeCleave", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Attack] = true, }, statDescriptionScope = "skill_stat_descriptions", castTime = 1, baseFlags = { attack = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "attack_maximum_action_distance_+", "active_skill_base_physical_damage_%_to_convert_to_lightning", "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "base_skill_can_be_avoided_by_dodge_roll", "base_skill_cannot_be_blocked", }, levels = { [1] = {12, 25, 200, baseMultiplier = 4, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GAPerennialKingObsidianStormImpact"] = { name = "GAPerennialKingObsidianStormImpact", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Attack] = true, }, statDescriptionScope = "skill_stat_descriptions", castTime = 1, baseFlags = { attack = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {200, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSPerennialKingSandnadoPhysDamage"] = { name = "GSPerennialKingSandnadoPhysDamage", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Spell] = true, [SkillType.Damage] = true, }, statDescriptionScope = "geometry_spell", castTime = 1, baseFlags = { spell = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {200, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSPerennialKingSandnadoLightningDamage"] = { name = "GSPerennialKingSandnadoLightningDamage", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Spell] = true, [SkillType.Damage] = true, }, statDescriptionScope = "geometry_spell", castTime = 1, baseFlags = { spell = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "spell_minimum_base_lightning_damage", "spell_maximum_base_lightning_damage", "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {0.5, 1.5, 200, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSPerennialKingBeaconSpray"] = { name = "GSPerennialKingBeaconSpray", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Spell] = true, [SkillType.Damage] = true, }, statDescriptionScope = "geometry_spell", castTime = 1, baseFlags = { spell = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "spell_minimum_base_lightning_damage", "spell_maximum_base_lightning_damage", "active_skill_shock_chance_+%_final", "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "base_skill_can_be_blocked", "base_skill_cannot_be_parried", }, levels = { [1] = {0.5, 1.5, 25, 200, critChance = 6, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GAPerennialKingGlassSpearTossImpact"] = { name = "GAPerennialKingGlassSpearTossImpact", 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_lightning", "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "base_is_projectile", }, levels = { [1] = {25, 200, baseMultiplier = 1.8, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GAPerennialKingGlassSpearTossImpactMulti"] = { name = "GAPerennialKingGlassSpearTossImpactMulti", 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_lightning", "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "base_is_projectile", }, levels = { [1] = {25, 200, baseMultiplier = 1.5, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSPerennialKingGlassSwordFenceZap"] = { name = "GSPerennialKingGlassSwordFenceZap", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Spell] = true, [SkillType.Damage] = true, }, statDescriptionScope = "geometry_spell", castTime = 1, baseFlags = { spell = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "spell_minimum_base_lightning_damage", "spell_maximum_base_lightning_damage", "active_skill_electrocutes_as_though_dealt_damage_+%_final", "base_skill_effect_duration", "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "base_lightning_damage_can_electrocute", "base_skill_can_be_avoided_by_dodge_roll", }, levels = { [1] = {0.5, 1.5, 90, 4000, 200, critChance = 6, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["EASPerennialKingBeaconToss"] = { name = "EASPerennialKingBeaconToss", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { }, statDescriptionScope = "skill_stat_descriptions", castTime = 1, baseFlags = { }, baseMods = { }, qualityStats = { }, stats = { "spell_maximum_action_distance_+%", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {-35, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["EASPerennialKingBeaconBolts"] = { name = "EASPerennialKingBeaconBolts", 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["EASPerennialKingLightningSpray"] = { name = "EASPerennialKingLightningSpray", 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["EASPerennialKingBeaconOrbitStart"] = { name = "EASPerennialKingBeaconOrbitStart", 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["EASPerennialKingBeaconOrbitRecall"] = { name = "EASPerennialKingBeaconOrbitRecall", 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["EASAbsoluteCartnage"] = { name = "EASAbsoluteCartnage", 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["EAAPerennialKingGlassSwordFence"] = { name = "EAAPerennialKingGlassSwordFence", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { }, statDescriptionScope = "skill_stat_descriptions", castTime = 1, baseFlags = { }, baseMods = { }, qualityStats = { }, stats = { "attack_maximum_action_distance_+", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {30, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["EASPerennialKingOrbitTornado"] = { name = "EASPerennialKingOrbitTornado", 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["MDPerennialKingObsidianStorm"] = { name = "MDPerennialKingObsidianStorm", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Multicastable] = true, [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["MDPerennialKingTornado"] = { name = "MDPerennialKingTornado", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Multicastable] = true, [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["SOPerennialKingObsidianMinigun"] = { name = "SOPerennialKingObsidianMinigun", 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["SOPerennialKingGlassSpearMultiRock"] = { name = "SOPerennialKingGlassSpearMultiRock", 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["SOPerennialKingGlassSwordFence"] = { name = "SOPerennialKingGlassSwordFence", 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["GTPerennialKingGlassSpearToss"] = { name = "GTPerennialKingGlassSpearToss", 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["EDSPerennialKingBeaconLightningBolt"] = { name = "EDSPerennialKingBeaconLightningBolt", 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", "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {0.5, 1.5, 150, critChance = 6, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, }
monster dropped item rarity +% [14700]
monster slain experience +% [0]
unique monster guarantee one rare [1]
Id | MonsterUniqueT3Boss |
---|---|
Family | MonsterActBoss |
Domains | 怪物 (3) |
GenerationType | 传奇 (3) |
Req. level | 1 |
Stats |
Jamanra, the Abomination





monster dropped item rarity +% [14700]
monster slain experience +% [0]
unique monster guarantee one rare [1]
monster dropped item quantity +% [800]
monster dropped item rarity +% [10000]
monster map key of at least same tier as current map drop chance % [25]
monster slain experience +% [9000]
unique monster guarantee one rare [1]
[感电]几率提高 200%
monster slain experience +% [0]
unique monster guarantee one rare [1]
monster dropped item quantity +% [800]
monster dropped item rarity +% [10000]
monster map key of at least same tier as current map drop chance % [25]
monster slain experience +% [9000]
unique monster guarantee one rare [1]
[感电]几率提高 200%
Spectre | N |
---|---|
Area | The Copper Citadel |
Tags | 2HSharpMetal_onhit_audio, human, humanoid, not_dex, not_int, red_blood, very_slow_movement |
生命
540%
[护甲]
+50%
抗性




伤害
200%
命中
100%
Critical Hits Chance
5%
Critical Damage Bonus
+30%
Attack Distance
6 ~ 18
攻击间隔
1.5 Second
Damage Spread
±20%
经验值
300%
Model Size
100%
Type
PerennialKingMap
Metadata
PerennialKingMap
The following values do not include map affix bonuses, monster buff bonuses, altar bonuses, atlas skill bonuses.
等级
80
生命
84,289
[护甲]
7,205
闪避值
644
伤害
668
法术伤害
668
命中
3,204
攻击间隔
1.5
经验值
300,000
Minion Life
54,454
Minion Damage
3,553
Minion Armour
12,008
The following values are skill base values and do not include map affix bonuses, monster buff bonuses, altar bonuses, atlas skill bonuses, monster base damage(ex: The Maven 150% multiplier), monster rarity bonuses (ex: unique 70% more, unique attack 33% less).
GSPerennialKingBasicLightningZap
可触发, 法术, 伤害
暴击几率: 6%
施放间隔: 1 秒
造成 214.4- 643.3 [闪电]伤害
action attack or cast time uses animation length [1]
base skill can be blocked [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
spell maximum action distance +% [-85]
MASPerennialKingSandWhip
攻击, 范围攻击, 技能可幻影射手, 投射物, 近战单一目标, 近战, 玩家投射物
普通攻击
Base Damage: 534–801
暴击几率: 5%
攻击伤害: 75%
攻击间隔: 1.5 秒
冷却时间: 6 秒
攻击伤害总降 25%
action attack or cast time uses animation length [1]
attack maximum action distance + [8]
projectile uses contact position [1]
skill can fire wand projectiles [1]
use scaled contact offset [1]

CTS5PerennialKingSandstorm
action attack or cast time uses animation length [1]
CTS1PerennialKingEndSandstorm
action attack or cast time uses animation length [1]
EASPerennialKingBeaconToss
action attack or cast time uses animation length [1]
spell maximum action distance +% [-35]
EASPerennialKingBeaconBolts
冷却时间: 15 秒
action attack or cast time uses animation length [1]
EASPerennialKingLightningSpray
冷却时间: 22.5 秒
action attack or cast time uses animation length [1]
EASPerennialKingBeaconOrbitStart
冷却时间: 30 秒
action attack or cast time uses animation length [1]
EASPerennialKingBeaconOrbitRecall
action attack or cast time uses animation length [1]
CTS3PerennialKingMultistab
冷却时间: 25 秒
action attack or cast time uses animation length [1]
CTS1PerennialKingEndMultistab
action attack or cast time uses animation length [1]
MPWPerennialKingGlassSpearToss
攻击, 范围攻击, 技能可幻影射手, 投射物, 玩家投射物, 伤害, 可触发
Base Damage: 534–801
暴击几率: 5%
攻击间隔: 1.5 秒
冷却时间: 18 秒
将[物理]伤害的 25% 转化为[闪电]伤害
Pierces all Targets
action attack or cast time uses animation length [1]
base is projectile [1]
monster projectile variation [1125]
projectile uses contact position [1]
GPAPerennialKingGlassSpearMultiToss
可触发, 攻击
Base Damage: 534–801
暴击几率: 5%
攻击间隔: 1.5 秒
冷却时间: 17 秒
Pierces all Targets
action attack or cast time uses animation length [1]
active skill projectile speed +% variation final [0]
attack maximum action distance + [70]
base is projectile [1]
projectile spread radius [5]
projectile uses contact position [1]
use scaled contact offset [1]
GAPerennialKingGlassSwordSlam
可触发, 攻击
Base Damage: 534–801
暴击几率: 5%
攻击伤害: 450%
攻击间隔: 1.5 秒
冷却时间: 18 秒
攻击伤害总增 350%
将[物理]伤害的 35% 转化为[闪电]伤害
action attack or cast time uses animation length [1]
attack maximum action distance + [25]
base skill cannot be blocked [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
EAAPerennialKingGlassSwordFence
冷却时间: 17 秒
action attack or cast time uses animation length [1]
attack maximum action distance + [30]
GAPerennialKingAxeCleave
可触发, 攻击
Base Damage: 534–801
暴击几率: 5%
攻击伤害: 400%
攻击间隔: 1.5 秒
冷却时间: 26 秒
攻击伤害总增 300%
将[物理]伤害的 25% 转化为[闪电]伤害
action attack or cast time uses animation length [1]
attack maximum action distance + [12]
base skill can be avoided by dodge roll [1]
base skill cannot be blocked [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
MDPerennialKingObsidianStorm
法术可重复, 可触发
冷却时间: 40 秒
action attack or cast time uses animation length [1]
MDPerennialKingTornado
法术可重复, 可触发
冷却时间: 42 秒
action attack or cast time uses animation length [1]
EASPerennialKingOrbitTornado
action attack or cast time uses animation length [1]
SOPerennialKingObsidianMinigun
可触发
冷却时间: 17 秒
action attack or cast time uses animation length [1]
EASAbsoluteCartnage
action attack or cast time uses animation length [1]
GSPerennialKingBeaconSpray
可触发, 法术, 伤害
暴击几率: 6%
施放间隔: 1 秒
造成 102.1- 306.3 [闪电]伤害
使敌人[感电]的几率总增 25%
action attack or cast time uses animation length [1]
base skill can be blocked [1]
base skill cannot be parried [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
GAPerennialKingBeaconSpearStab
可触发, 攻击
Base Damage: 534–801
暴击几率: 5%
攻击伤害: 70%
攻击间隔: 1.5 秒
攻击伤害总降 30%
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
GAPerennialKingBeaconSpearImpact
可触发, 攻击
Base Damage: 534–801
暴击几率: 5%
攻击伤害: 90%
攻击间隔: 1.5 秒
攻击伤害总降 10%
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
GSPerennialKingBeaconOrbitLightningBeam
可触发, 法术, 伤害
施放间隔: 1 秒
造成 217.8- 653.5 [闪电]伤害
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
EDSPerennialKingBeaconLightningBolt
可触发, 法术, 伤害
暴击几率: 6%
施放间隔: 1 秒
造成 1055- 3166 [闪电]伤害
action attack or cast time uses animation length [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [150]
GTPerennialKingGlassSpearToss
可触发
action attack or cast time uses animation length [1]
GAPerennialKingGlassSpearTossImpact
可触发, 攻击
Base Damage: 534–801
暴击几率: 5%
攻击伤害: 180%
攻击间隔: 1.5 秒
攻击伤害总增 80%
将[物理]伤害的 25% 转化为[闪电]伤害
action attack or cast time uses animation length [1]
base is projectile [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
GAPerennialKingGlassSpearTossImpactMulti
可触发, 攻击
Base Damage: 534–801
暴击几率: 5%
攻击伤害: 150%
攻击间隔: 1.5 秒
攻击伤害总增 50%
将[物理]伤害的 25% 转化为[闪电]伤害
action attack or cast time uses animation length [1]
base is projectile [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
SOPerennialKingGlassSpearMultiRock
可触发
action attack or cast time uses animation length [1]
SOPerennialKingGlassSwordFence
可触发
action attack or cast time uses animation length [1]
GSPerennialKingGlassSwordFenceZap
可触发, 法术, 伤害
暴击几率: 6%
施放间隔: 1 秒
造成 35.39- 106.2 [闪电]伤害
电殛积蓄值总增 90%
该技能的闪电伤害
作用于电殛积蓄
作用于电殛积蓄
action attack or cast time uses animation length [1]
base skill can be avoided by dodge roll [1]
base skill effect duration [4000]
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
GAPerennialKingObsidianStormImpact
可触发, 攻击
Base Damage: 534–801
暴击几率: 5%
攻击间隔: 1.5 秒
action attack or cast time uses animation length [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
GSPerennialKingSandnadoPhysDamage
可触发, 法术, 伤害
施放间隔: 1 秒
action attack or cast time uses animation length [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
GSPerennialKingSandnadoLightningDamage
可触发, 法术, 伤害
施放间隔: 1 秒
造成 408.5- 1225 [闪电]伤害
action attack or cast time uses animation length [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [200]
MPWPerennialKingObsidianMinigun
攻击, 范围攻击, 技能可幻影射手, 投射物, 玩家投射物, 伤害, 可触发
Base Damage: 534–801
暴击几率: 5%
攻击伤害: 50%
攻击间隔: 1.5 秒
攻击伤害总降 50%
将[物理]伤害的 25% 转化为[闪电]伤害
action attack or cast time uses animation length [1]
active skill projectile speed +% variation final [20]
base is projectile [1]
monster projectile variation [1127]
projectile ballistic angle from target distance [1]
projectile ballistic gravity override [400]
projectile maximum range override [250]
projectile spread radius [0]
Object Type
version 2 extends "Metadata/Monsters/Monster" extends "Metadata/Monsters/BossBase" /* ------------------------------------------------------------------------------------------------------------------- */ /* Generic */ /* ------------------------------------------------------------------------------------------------------------------- */ BaseEvents { on_construction_complete = { globals.pen_king = this; AddToPlayerWakeGroup( true ); } } Preload { preload_character_animation = "KnockdownLoop" preload_animated_object = "Metadata/Monsters/PerennialKingStage2/PerennialKingStage2OnlyCorpses.ao" preload_environment = "G2_12_2" } Actor { basic_action = "MoveForced" basic_action = "StrafeLeftNoFlee" basic_action = "StrafeRightNoFlee" leveled_starting_effects = "DoLiterallyNothing" } StateMachine { // the fake PK sets this to 0 when the emerge sequence begins, so it can swap to the correct skin define_shared_state = " invis = 1; lock_on; tornados; seen_intro = 1; " on_state_lock_on_0 = "SetUsesDirectionalRunAnimations( false );" on_state_lock_on_1 = "SetUsesDirectionalRunAnimations( true );" on_or_create_state_invis_0 = "MakeCollidable();" on_or_create_state_invis_1 = "RemoveCollidability();" } Stats { set_monster_delay_item_drops_millis = 11000 strafe_distance_+% = -60 } /* ------------------------------------------------------------------------------------------------------------------- */ /* Beacon Shared */ /* ------------------------------------------------------------------------------------------------------------------- */ StateMachine { // these states are used for ALL the beacon skills and keep track of the beacons, so the boss knows if it can use the other beacon skills define_shared_state = " has_left_beacon = 1; has_right_beacon = 1; " } /* ------------------------------------------------------------------------------------------------------------------- */ /* Obsidian Spear Toss (multi) */ /* ------------------------------------------------------------------------------------------------------------------- */ Animated { // this event fires a bit before the projectiles do, so they target a location that is a bit behind to prevent them from always hitting the target // the target points are generated around a circle, so they need to be reshuffled to minimise projectile crossover on_event_prepare_proj_center = " this.spear_count = 0; this.multi_spear_target_center = target.GetLocation(); Call( generate_spear_target_points, multi_spear_target_center, 20.0, 8 ); this.target_points = null; this.target_points += target_points2[2]; this.target_points += target_points2[1]; this.target_points += target_points2[3]; this.target_points += target_points2[0]; this.target_points += target_points2[4]; this.target_points += target_points2[7]; this.target_points += target_points2[5]; this.target_points += target_points2[6]; " on_event_prepare_proj = " SetTargetLocation( GetVariablesFromGroup( target_points, spear_count, Index ), 0, 0, true ); this.spear_count = spear_count + 1; " } Functions { // arg1: center (location) // arg2: radius (float) // arg3: num points (float) generate_spear_target_points = " this.target_points2 = null; this.angle = 0.0; local angle_increment = 360.0 / arg3; local pi = 3.14159265359; Repeat( 8, () { local new_loc = MakeLocation( arg1.x + Eval( arg2 * Cos( angle ) ), arg1.y + Eval( arg2 * Sin( angle ) ) ); this.target_points2 += new_loc; this.angle = angle + angle_increment; } ); " } /* ------------------------------------------------------------------------------------------------------------------- */ /* Death */ /* ------------------------------------------------------------------------------------------------------------------- */ StateMachine { define_shared_state = "lost_head;" }
Object Type Codes
version 2 extends "Metadata/Monsters/Monster" extends "Metadata/Monsters/BossBase" /* ------------------------------------------------------------------------------------------------------------------- */ /* Generic */ /* ------------------------------------------------------------------------------------------------------------------- */ StateMachine { // this state is set by the 'fake' perennial king that exists pre-emerge, so when it does emerge it can swap skins // fake PK: Metadata/Terrain/Gallows/Act2/2_12_2/Objects/PerennialKingHuman on_or_create_state_invis_0 = "EnableRendering();" on_or_create_state_invis_1 = "DisableRendering();" on_state_dead_1 = { globals.destructable_arena_core.PlayAnimation( crash_01 ); globals.destructable_arena_core.GoToAnimationEnd(); } } Render { use_ao_lights = true allow_attached_arrows = false } Preload { preload_animated_object = "Metadata/Effects/Spells/monsters_effects/Act2_FOUR/PerennialKing/ao/sand_storm_arena.ao" preload_animated_object = "Metadata/Effects/Spells/monsters_effects/Act2_FOUR/PerennialKing/ao/big_zap_01.ao" preload_object = "Metadata/Monsters/PerennialKingStage2/PerennialKingBeacon" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend1" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend2" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend3" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend4_" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend5" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend6" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend7" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend8" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend9" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend10__" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend11" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend12" preload_monster_variety = "Metadata/Monsters/PerennialKingStage2/PerennialKingCorpseFriend13" preload_environment = "G2_12_2_boss" preload_misc_beam = "PerennialKingBeaconSprayBeam" preload_misc_beam = "PerennialKingHandsprayBeam" } /* ------------------------------------------------------------------------------------------------------------------- */ /* Movement/Turning */ /* ------------------------------------------------------------------------------------------------------------------- */ // whenever PK turns need to also play an additive turn animation, using the correct animation for the turn direction (left or right) // can do this by constantly checking the monsters orientation (GetOrientation() and comparing it with its bearing (GetAnimatedBearing())) // orientation is the server orientation, so this value will always be the actual direction the monster is facing // bearing is the clients current facing direction, and this one does visually match with the monsters facing direction // so whenever those two aren't the same, you can assume the monster is turning // also, when the monster is moving don't do any of this cause it messes with the additive n-directional anims 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/2/11/12 (if its not already set) // 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 // 1 and 2 are for the right turns, 1 being used for shorter turns (based on the angle_diff value), and 11/12 are for left with 11 being the short one // 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( angle_diff == 0.0, (){ FadeAnimations( 9, 0.666 ); } ); If( And( angle_diff > 5.0, angle_diff <= 45.0 ), () { If( GetState( current_rotate_dir ) == 0, (){ SetStateTo( current_rotate_dir, 1 ); } ); } ); If( angle_diff > 45.0, () { If( GetState( current_rotate_dir ) == 0, (){ SetStateTo( current_rotate_dir, 2 ); } ); } ); If( And( angle_diff < -5.0, angle_diff >= -45.0 ), () { If( GetState( current_rotate_dir ) == 0, (){ SetStateTo( current_rotate_dir, 11 ); } ); } ); If( angle_diff < -45.0, () { If( GetState( current_rotate_dir ) == 0, (){ SetStateTo( current_rotate_dir, 12 ); } ); } ); StartStateTimer( check_bearing ); " // play a different additive turn anim for different turn directions and velocity on_state_current_rotate_dir_1 = " If( GetCurrentMoveSpeed() < 1.0, () { PlayAdditiveAnimation( turn_02_right, 9 ); Delay( 0.666, { SetStateTo( current_rotate_dir, 0 ); } ); }, (){ SetStateTo( current_rotate_dir, 0 ); } ); " on_state_current_rotate_dir_2 = " If( GetCurrentMoveSpeed() < 1.0, () { PlayAdditiveAnimation( turn_01_right, 9 ); Delay( 0.666, { SetStateTo( current_rotate_dir, 0 ); } ); }, (){ SetStateTo( current_rotate_dir, 0 ); } ); " on_state_current_rotate_dir_11 = " If( GetCurrentMoveSpeed() < 1.0, () { PlayAdditiveAnimation( turn_02_left, 9 ); Delay( 0.666, { SetStateTo( current_rotate_dir, 0 ); } ); }, (){ SetStateTo( current_rotate_dir, 0 ); } ); " on_state_current_rotate_dir_12 = " If( GetCurrentMoveSpeed() < 1.0, () { PlayAdditiveAnimation( turn_01_left, 9 ); Delay( 0.666, { SetStateTo( current_rotate_dir, 0 ); } ); }, (){ SetStateTo( current_rotate_dir, 0 ); } ); " } /* ------------------------------------------------------------------------------------------------------------------- */ /* Phase change to second arena */ /* ------------------------------------------------------------------------------------------------------------------- */ Functions { fade_out = "FadeToBlack( 0, 3000, 6000 );" destroy_cart_core = "globals.destructable_arena_core.PlayAnimationAtSpeed( crash_01, 1.0 );" destroy_cart_core_instant = " globals.destructable_arena_core.PlayAnimation( crash_01 ); globals.destructable_arena_core.GoToAnimationEnd(); " hide_player_weapons = "arg1.HideWeapons();" show_player_weapons = "arg1.ShowWeapons();" } /* ------------------------------------------------------------------------------------------------------------------- */ /* Death */ /* ------------------------------------------------------------------------------------------------------------------- */ StateMachine { on_or_create_state_lost_head_1 = " HideMeshSegment( PerennialKing_headShape ); DetachAllOfType( 'Art/Models/MONSTERS/PerennialKingStage2/attachments/PerennialKingHelmet.fmt;Art/Models/MONSTERS/PerennialKingStage2/attachments/PerennialKingHelmet.ao' ); SetGlobalAudioParam( PerennialKingUberDeath, 1 ); " } Functions { get_up_asala = { PlayCharacterAudioEvent( AfterPerennialKingSeeAsala ); } } /* ------------------------------------------------------------------------------------------------------------------- */ /* Audio */ /* ------------------------------------------------------------------------------------------------------------------- */ GlobalAudioParamEvents { player_in_range_param = "PerennialKing2InRange" life_percent_param = "PerennialKing2LifePercentage" range = 130 } Life { on_life_percent_reaches_1 = " PlayTextAudio( PerennialKing_Dreadnought_DeathMisc_7, 'Metadata/Monsters/PerennialKingStage2/PerennialKing', 1500 ); SetGlobalAudioParam( PerennialKingUberDeath, 1 ); " } Actor { on_effect_start_CTS1BossFightStart = "QueueTextAudio( PerennialKing_Dreadnought_Intro_ThisEnds_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing', 3500 );" on_effect_start_GSPerennialKingBasicLightningZap = " Roll( 1, 6, () { PlayTextAudio( PerennialKing_Dreadnought_MiscSkill_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_MASPerennialKingSandWhip = " Roll( 1, 5, () { PlayTextAudio( PerennialKing_Dreadnought_MiscSkill_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_CTS5PerennialKingSandstorm = " Roll( 1, 2, () { PlayTextAudio( PerennialKing_Dreadnought_SummonSandstorm_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_EASPerennialKingBeaconToss = " Roll( 1, 5, () { PlayTextAudio( PerennialKing_Dreadnought_MiscSkill_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_EASPerennialKingBeaconBolts = " Roll( 1, 2, () { PlayTextAudio( PerennialKing_Dreadnought_BeaconLightning_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_EASPerennialKingLightningSpray = " Roll( 1, 2, () { PlayTextAudio( PerennialKing_Dreadnought_BeaconLightningSpray_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_EASPerennialKingBeaconOrbitStart = " Roll( 1, 1, () { PlayTextAudio( PerennialKing_Dreadnought_BeaconSend_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_CTS3PerennialKingMultistab = " Roll( 1, 2, () { PlayTextAudio( PerennialKing_Dreadnought_BeaconStab_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_MPWPerennialKingGlassSpearToss = " Roll( 1, 2, () { PlayTextAudio( PerennialKing_Dreadnought_MiscSkill_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_GPAPerennialKingGlassSpearMultiToss = " Roll( 1, 1, () { PlayTextAudio( PerennialKing_Dreadnought_SpearThrow_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_GAPerennialKingGlassSwordSlam = " Roll( 1, 1, () { PlayTextAudio( PerennialKing_Dreadnought_2hSword_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_EAAPerennialKingGlassSwordFence = " Roll( 1, 2, () { PlayTextAudio( PerennialKing_Dreadnought_Lacerate_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_GAPerennialKingAxeCleave = " Roll( 1, 5, () { PlayTextAudio( PerennialKing_Dreadnought_MiscSkill_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_MDPerennialKingObsidianStorm = " Roll( 1, 1, () { PlayTextAudio( PerennialKing_Dreadnought_ObsidianTornado_2, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_MDPerennialKingTornado = " Roll( 1, 2, () { PlayTextAudio( PerennialKing_Dreadnought_Tornado_4, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_SOPerennialKingObsidianMinigun = " Roll( 1, 2, () { PlayTextAudio( PerennialKing_Dreadnought_BeaconElectrify_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " on_effect_start_EASAbsoluteCartnage = " Roll( 1, 1, () { PlayTextAudio( PerennialKing_Dreadnought_Countess_3, 'Metadata/Monsters/PerennialKingStage2/PerennialKing'); } ); " on_effect_event_contact_for_EASPerennialKingOrbitTornado = " Roll( 1, 1, () { PlayTextAudio( PerennialKing_Dreadnought_BeastSandstorm_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " } Animated { on_heavy_stun_01 = " Roll( 1, 2, () { PlayTextAudio( PerennialKing_Dreadnought_HeavyStun_Random, 'Metadata/Monsters/PerennialKingStage2/PerennialKing' ); } ); " }
-- src\Data\Spectres.lua minions["Metadata/Monsters/PerennialKingStage2/PerennialKingMap"] = { name = "Jamanra, the Abomination", life = 5.4, fireResist = 0, coldResist = 0, lightningResist = 0, chaosResist = 0, damage = 2, damageSpread = 0.2, attackTime = 1.5, attackRange = 18, accuracy = 1, skillList = { "MASPerennialKingSandWhip", "GPAPerennialKingGlassSpearMultiToss", "MPWPerennialKingGlassSpearToss", "MPWPerennialKingObsidianMinigun", "CTS1PerennialKingEndMultistab", "CTS3PerennialKingMultistab", "CTS5PerennialKingSandstorm", "CTS1PerennialKingEndSandstorm", "GAPerennialKingBeaconSpearStab", "GAPerennialKingBeaconSpearImpact", "GSPerennialKingBeaconOrbitLightningBeam", "GSPerennialKingBasicLightningZap", "GAPerennialKingGlassSwordSlam", "GAPerennialKingAxeCleave", "GAPerennialKingObsidianStormImpact", "GSPerennialKingSandnadoPhysDamage", "GSPerennialKingSandnadoLightningDamage", "GSPerennialKingBeaconSpray", "GAPerennialKingGlassSpearTossImpact", "GAPerennialKingGlassSpearTossImpactMulti", "GSPerennialKingGlassSwordFenceZap", "EASPerennialKingBeaconToss", "EASPerennialKingBeaconBolts", "EASPerennialKingLightningSpray", "EASPerennialKingBeaconOrbitStart", "EASPerennialKingBeaconOrbitRecall", "EASAbsoluteCartnage", "EAAPerennialKingGlassSwordFence", "EASPerennialKingOrbitTornado", "MDPerennialKingObsidianStorm", "MDPerennialKingTornado", "SOPerennialKingObsidianMinigun", "SOPerennialKingGlassSpearMultiRock", "SOPerennialKingGlassSwordFence", "GTPerennialKingGlassSpearToss", "EDSPerennialKingBeaconLightningBolt", }, modList = { }, } -- src\Data\Skills\spectre.lua skills["MASPerennialKingSandWhip"] = { name = "Basic Attack", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Attack] = true, [SkillType.RangedAttack] = true, [SkillType.MirageArcherCanUse] = true, [SkillType.Projectile] = true, [SkillType.MeleeSingleTarget] = true, [SkillType.Melee] = true, [SkillType.ProjectilesFromUser] = true, }, statDescriptionScope = "skill_stat_descriptions", castTime = 1, baseFlags = { attack = true, melee = true, projectile = true, }, baseMods = { }, qualityStats = { }, stats = { "attack_maximum_action_distance_+", "skill_can_fire_arrows", "skill_can_fire_wand_projectiles", "action_attack_or_cast_time_uses_animation_length", "projectile_uses_contact_position", "use_scaled_contact_offset", }, levels = { [1] = {8, baseMultiplier = 0.75, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GPAPerennialKingGlassSpearMultiToss"] = { name = "GPAPerennialKingGlassSpearMultiToss", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Attack] = true, }, statDescriptionScope = "skill_stat_descriptions", castTime = 1, baseFlags = { attack = true, projectile = true, }, baseMods = { }, qualityStats = { }, stats = { "attack_maximum_action_distance_+", "active_skill_projectile_speed_+%_variation_final", "projectile_spread_radius", "base_is_projectile", "use_scaled_contact_offset", "projectile_uses_contact_position", "action_attack_or_cast_time_uses_animation_length", "always_pierce", }, levels = { [1] = {70, 0, 5, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["MPWPerennialKingGlassSpearToss"] = { name = "MPWPerennialKingGlassSpearToss", 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_lightning", "base_is_projectile", "projectile_uses_contact_position", "action_attack_or_cast_time_uses_animation_length", "always_pierce", }, levels = { [1] = {1125, 25, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["MPWPerennialKingObsidianMinigun"] = { name = "MPWPerennialKingObsidianMinigun", 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", "projectile_spread_radius", "projectile_ballistic_gravity_override", "projectile_maximum_range_override", "active_skill_projectile_speed_+%_variation_final", "active_skill_base_physical_damage_%_to_convert_to_lightning", "base_is_projectile", "action_attack_or_cast_time_uses_animation_length", "projectile_ballistic_angle_from_target_distance", }, levels = { [1] = {1127, 0, 400, 250, 20, 25, baseMultiplier = 0.5, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["CTS1PerennialKingEndMultistab"] = { name = "CTS1PerennialKingEndMultistab", 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["CTS3PerennialKingMultistab"] = { name = "CTS3PerennialKingMultistab", 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["CTS5PerennialKingSandstorm"] = { name = "CTS5PerennialKingSandstorm", 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["CTS1PerennialKingEndSandstorm"] = { name = "CTS1PerennialKingEndSandstorm", 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["GAPerennialKingBeaconSpearStab"] = { name = "GAPerennialKingBeaconSpearStab", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Attack] = true, }, statDescriptionScope = "skill_stat_descriptions", castTime = 1, baseFlags = { attack = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", }, levels = { [1] = {200, baseMultiplier = 0.7, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GAPerennialKingBeaconSpearImpact"] = { name = "GAPerennialKingBeaconSpearImpact", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Attack] = true, }, statDescriptionScope = "skill_stat_descriptions", castTime = 1, baseFlags = { attack = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", }, levels = { [1] = {200, baseMultiplier = 0.9, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSPerennialKingBeaconOrbitLightningBeam"] = { name = "GSPerennialKingBeaconOrbitLightningBeam", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Spell] = true, [SkillType.Damage] = true, }, statDescriptionScope = "geometry_spell", castTime = 1, baseFlags = { spell = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "spell_minimum_base_lightning_damage", "spell_maximum_base_lightning_damage", "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", }, levels = { [1] = {0.5, 1.5, 200, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSPerennialKingBasicLightningZap"] = { name = "GSPerennialKingBasicLightningZap", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Spell] = true, [SkillType.Damage] = true, }, statDescriptionScope = "geometry_spell", castTime = 1, baseFlags = { spell = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "spell_minimum_base_lightning_damage", "spell_maximum_base_lightning_damage", "spell_maximum_action_distance_+%", "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "base_skill_can_be_blocked", }, levels = { [1] = {0.5, 1.5, -85, 200, critChance = 6, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GAPerennialKingGlassSwordSlam"] = { name = "GAPerennialKingGlassSwordSlam", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Attack] = true, }, statDescriptionScope = "skill_stat_descriptions", castTime = 1, baseFlags = { attack = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "attack_maximum_action_distance_+", "active_skill_base_physical_damage_%_to_convert_to_lightning", "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "base_skill_cannot_be_blocked", }, levels = { [1] = {25, 35, 200, baseMultiplier = 4.5, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GAPerennialKingAxeCleave"] = { name = "GAPerennialKingAxeCleave", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Attack] = true, }, statDescriptionScope = "skill_stat_descriptions", castTime = 1, baseFlags = { attack = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "attack_maximum_action_distance_+", "active_skill_base_physical_damage_%_to_convert_to_lightning", "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "base_skill_can_be_avoided_by_dodge_roll", "base_skill_cannot_be_blocked", }, levels = { [1] = {12, 25, 200, baseMultiplier = 4, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GAPerennialKingObsidianStormImpact"] = { name = "GAPerennialKingObsidianStormImpact", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Attack] = true, }, statDescriptionScope = "skill_stat_descriptions", castTime = 1, baseFlags = { attack = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {200, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSPerennialKingSandnadoPhysDamage"] = { name = "GSPerennialKingSandnadoPhysDamage", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Spell] = true, [SkillType.Damage] = true, }, statDescriptionScope = "geometry_spell", castTime = 1, baseFlags = { spell = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {200, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSPerennialKingSandnadoLightningDamage"] = { name = "GSPerennialKingSandnadoLightningDamage", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Spell] = true, [SkillType.Damage] = true, }, statDescriptionScope = "geometry_spell", castTime = 1, baseFlags = { spell = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "spell_minimum_base_lightning_damage", "spell_maximum_base_lightning_damage", "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {0.5, 1.5, 200, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSPerennialKingBeaconSpray"] = { name = "GSPerennialKingBeaconSpray", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Spell] = true, [SkillType.Damage] = true, }, statDescriptionScope = "geometry_spell", castTime = 1, baseFlags = { spell = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "spell_minimum_base_lightning_damage", "spell_maximum_base_lightning_damage", "active_skill_shock_chance_+%_final", "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "base_skill_can_be_blocked", "base_skill_cannot_be_parried", }, levels = { [1] = {0.5, 1.5, 25, 200, critChance = 6, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GAPerennialKingGlassSpearTossImpact"] = { name = "GAPerennialKingGlassSpearTossImpact", 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_lightning", "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "base_is_projectile", }, levels = { [1] = {25, 200, baseMultiplier = 1.8, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GAPerennialKingGlassSpearTossImpactMulti"] = { name = "GAPerennialKingGlassSpearTossImpactMulti", 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_lightning", "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "base_is_projectile", }, levels = { [1] = {25, 200, baseMultiplier = 1.5, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSPerennialKingGlassSwordFenceZap"] = { name = "GSPerennialKingGlassSwordFenceZap", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Spell] = true, [SkillType.Damage] = true, }, statDescriptionScope = "geometry_spell", castTime = 1, baseFlags = { spell = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "spell_minimum_base_lightning_damage", "spell_maximum_base_lightning_damage", "active_skill_electrocutes_as_though_dealt_damage_+%_final", "base_skill_effect_duration", "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "base_lightning_damage_can_electrocute", "base_skill_can_be_avoided_by_dodge_roll", }, levels = { [1] = {0.5, 1.5, 90, 4000, 200, critChance = 6, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["EASPerennialKingBeaconToss"] = { name = "EASPerennialKingBeaconToss", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { }, statDescriptionScope = "skill_stat_descriptions", castTime = 1, baseFlags = { }, baseMods = { }, qualityStats = { }, stats = { "spell_maximum_action_distance_+%", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {-35, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["EASPerennialKingBeaconBolts"] = { name = "EASPerennialKingBeaconBolts", 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["EASPerennialKingLightningSpray"] = { name = "EASPerennialKingLightningSpray", 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["EASPerennialKingBeaconOrbitStart"] = { name = "EASPerennialKingBeaconOrbitStart", 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["EASPerennialKingBeaconOrbitRecall"] = { name = "EASPerennialKingBeaconOrbitRecall", 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["EASAbsoluteCartnage"] = { name = "EASAbsoluteCartnage", 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["EAAPerennialKingGlassSwordFence"] = { name = "EAAPerennialKingGlassSwordFence", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { }, statDescriptionScope = "skill_stat_descriptions", castTime = 1, baseFlags = { }, baseMods = { }, qualityStats = { }, stats = { "attack_maximum_action_distance_+", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {30, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["EASPerennialKingOrbitTornado"] = { name = "EASPerennialKingOrbitTornado", 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["MDPerennialKingObsidianStorm"] = { name = "MDPerennialKingObsidianStorm", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Multicastable] = true, [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["MDPerennialKingTornado"] = { name = "MDPerennialKingTornado", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Multicastable] = true, [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["SOPerennialKingObsidianMinigun"] = { name = "SOPerennialKingObsidianMinigun", 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["SOPerennialKingGlassSpearMultiRock"] = { name = "SOPerennialKingGlassSpearMultiRock", 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["SOPerennialKingGlassSwordFence"] = { name = "SOPerennialKingGlassSwordFence", 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["GTPerennialKingGlassSpearToss"] = { name = "GTPerennialKingGlassSpearToss", 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["EDSPerennialKingBeaconLightningBolt"] = { name = "EDSPerennialKingBeaconLightningBolt", 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", "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {0.5, 1.5, 150, critChance = 6, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, }
monster dropped item rarity +% [14700]
monster slain experience +% [0]
unique monster guarantee one rare [1]
Id | MonsterUniqueT3Boss |
---|---|
Family | MonsterActBoss |
Domains | 怪物 (3) |
GenerationType | 传奇 (3) |
Req. level | 1 |
Stats |
monster dropped item quantity +% [800]
monster dropped item rarity +% [10000]
monster map key of at least same tier as current map drop chance % [25]
monster slain experience +% [9000]
unique monster guarantee one rare [1]
Id | MonsterMapBossT3 |
---|---|
Family | MonsterMapBoss |
Domains | 怪物 (3) |
GenerationType | 传奇 (3) |
Req. level | 1 |
Stats |
[感电]几率提高 200%
Id | EndgameBossShockChance |
---|---|
Family | ShockChanceIncrease |
Domains | 怪物 (3) |
GenerationType | 传奇 (3) |
Req. level | 1 |
Stats | |
Adds Tags | no_fire_spell_mods no_cold_spell_mods no_chaos_spell_mods |
Jamanra, the Abomination Text Audio /141
Edit
Wikis Content is available under CC BY-NC-SA 3.0 unless otherwise noted.
Wikis Content is available under CC BY-NC-SA 3.0 unless otherwise noted.