เครื่องฉลองชัยของดอร์ยานี


ด่าน: โถงดำ
monster dropped item rarity +% [4800]
monster slain experience +% [0]
ไม่ถูก ผลักออกไป
monster slain experience +% [0]
ไม่ถูก ผลักออกไป
Doryani's Triumph
Spectre | N |
---|---|
Area | โถงดำ, โถงดำ |
Tags | construct, MonsterBlunt_onhit_audio, mud_blood, not_dex, not_int, slow_movement |
พลังชีวิต
480%
ค่าเกราะ
+60%
ค่าต้านทาน




Damage
450%
ความแม่นยำ
100%
ปะทะคริติคอล Chance
5%
โบนัสความเสียหายคริติคอล
+30%
Attack Distance
7 ~ 41
1.005 Second
Damage Spread
±20%
ค่าประสบการณ์
300%
Model Size
100%
Type
DoryaniMech
Metadata
DoryaniMech
The following values do not include map affix bonuses, monster buff bonuses, altar bonuses, atlas skill bonuses.
เลือก เลเวลมอนสเตอร์
เลเวล
64
พลังชีวิต
29,774
ค่าเกราะ
3,050
อัตราการหลบหลีก
429
Damage
926
ความเสียหายเวท
926
ความแม่นยำ
1,910
1.005
ค่าประสบการณ์
63,483
Minion Life
29,170
Minion Damage
3,540
Minion Armour
5,337
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).
MeleeAtAnimationSpeedUnique
Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Melee, ProjectilesFromUser
โจมตีพื้นฐาน
Base Damage: 741–1111
โอกาสปะทะคริติคอล: 5%
action attack or cast time uses animation length [1]
monster penalty against minions damage +% final vs player minions [100]
projectile uses contact position [1]
skill can fire wand projectiles [1]
use scaled contact offset [1]

GADoryaniCrabBodySlam
Triggerable, Attack
Base Damage: 741–1111
โอกาสปะทะคริติคอล: 5%
ความเสียหายโจมตี: 200%
คูลดาวน์: 35 {วิ}
สร้างความเสียหาย โจมตี เพิ่มขึ้น อีก 100%
action attack or cast time uses animation length [1]
is area damage [1]
voll slam damage +% final at centre [40]
EDADoryaniCrabClawSlam
Triggerable, Attack
Base Damage: 741–1111
โอกาสปะทะคริติคอล: 5%
คูลดาวน์: 20 {วิ}
แปลงความเสียหาย กายภาพ 65% เป็น น้ำแข็ง
action attack or cast time uses animation length [1]
is area damage [1]
GSDoryaniCrabBrazierSlam
Triggerable, Spell, Damage
โอกาสปะทะคริติคอล: 5%
คูลดาวน์: 15 {วิ}
เพิ่มโอกาสสร้างสถานะ ลุกไหม้ 100%
สร้างความเสียหาย ไฟ 676.9 ถึง 1015
action attack or cast time uses animation length [1]
is area damage [1]
voll slam damage +% final at centre [40]
GSDoryaniCrabDiscoLazer
Triggerable, Spell, Damage
โอกาสปะทะคริติคอล: 6%
คูลดาวน์: 35 {วิ}
สร้างความเสียหาย สายฟ้า 42.3 ถึง 126.9
action attack or cast time uses animation length [1]
action do not face target [1]
is area damage [1]
skill does not pathfind [1]
GSDoryaniCrabFlamethrower
Triggerable, Spell, Damage
โอกาสปะทะคริติคอล: 5%
คูลดาวน์: 35 {วิ}
เพิ่มโอกาสสร้างสถานะ ลุกไหม้ 50%
สร้างความเสียหาย ไฟ 121.8 ถึง 182.8
action attack or cast time uses animation length [1]
action do not face target [1]
base skill can be avoided by dodge roll [1]
base skill can be blocked [1]
base skill cannot be parried [1]
is area damage [1]
skill does not pathfind [1]
GSDoryaniCrabFlamethrower90Right
Triggerable, Spell, Damage
โอกาสปะทะคริติคอล: 5%
คูลดาวน์: 35 {วิ}
เพิ่มโอกาสสร้างสถานะ ลุกไหม้ 50%
สร้างความเสียหาย ไฟ ถึง
action attack or cast time uses animation length [1]
action do not face target [1]
base skill can be avoided by dodge roll [1]
base skill can be blocked [1]
base skill cannot be parried [1]
is area damage [1]
skill does not pathfind [1]
GSDoryaniCrabFlamethrowerCorrupt
Triggerable, Spell, Damage
โอกาสปะทะคริติคอล: 5%
คูลดาวน์: 35 {วิ}
เพิ่มโอกาสสร้างสถานะ ลุกไหม้ 50%
สร้างความเสียหาย ไฟ ถึง 101.5
สร้างความเสียหาย สายฟ้า 42.3 ถึง 126.9
สกิลที่เสริม มีโอกาสสร้างสถานะ ช็อค เพิ่มขึ้น 300%
สร้างความเสียหาย ไฟ พื้นฐาน 67.69 ถึง ต่อจำนวน Endurance Charge ที่กำจัด
action attack or cast time uses animation length [1]
action do not face target [1]
base skill can be avoided by dodge roll [1]
base skill can be blocked [1]
base skill cannot be parried [1]
is area damage [1]
skill does not pathfind [1]
GSDoryaniCrabFrostLaser
Triggerable, Spell, Damage
โอกาสปะทะคริติคอล: 7%
คูลดาวน์: 40 {วิ}
สร้างความเสียหาย น้ำแข็ง 67.69 ถึง 101.5
เพิ่มจำนวนค่าของสถานะ หนาวเย็น ที่สร้าง อีก 350%
action attack or cast time uses animation length [1]
action do not face target [1]
active skill area of effect radius +% final [0]
base skill can be avoided by dodge roll [1]
base skill can be blocked [1]
base skill effect duration [7000]
ground ice art variation [1007]
is area damage [1]
skill does not pathfind [1]
GSDoryaniCrabFrostLaser90Left
Triggerable, Spell, Damage
โอกาสปะทะคริติคอล: 7%
คูลดาวน์: 40 {วิ}
สร้างความเสียหาย น้ำแข็ง ถึง
เพิ่มจำนวนค่าของสถานะ หนาวเย็น ที่สร้าง อีก 350%
action attack or cast time uses animation length [1]
action do not face target [1]
active skill area of effect radius +% final [0]
base skill can be avoided by dodge roll [1]
base skill can be blocked [1]
base skill effect duration [7000]
ground ice art variation [1007]
is area damage [1]
skill does not pathfind [1]
GSDoryaniCrabFrostLaserCorrupt
Triggerable, Spell, Damage
โอกาสปะทะคริติคอล: 7%
คูลดาวน์: 40 {วิ}
สร้างความเสียหาย น้ำแข็ง 67.69 ถึง 101.5
เพิ่มจำนวนค่าของสถานะ หนาวเย็น ที่สร้าง อีก 350%
action attack or cast time uses animation length [1]
action do not face target [1]
active skill area of effect radius +% final [0]
base skill can be avoided by dodge roll [1]
base skill can be blocked [1]
base skill effect duration [7000]
ground ice art variation [1007]
is area damage [1]
skill does not pathfind [1]
EAADoryaniCrabLegToss
คูลดาวน์: 27.5 {วิ}
action attack or cast time uses animation length [1]
action do not face target [1]
attack maximum action distance + [80]
skill does not pathfind [1]
MASDoryaniCrabSweep180
Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Melee, ProjectilesFromUser
โจมตีพื้นฐาน
Base Damage: 741–1111
โอกาสปะทะคริติคอล: 5%
ความเสียหายโจมตี: 130%
คูลดาวน์: 15 {วิ}
สร้างความเสียหาย โจมตี เพิ่มขึ้น อีก 30%
แปลงความเสียหาย กายภาพ 30% เป็น น้ำแข็ง
action attack or cast time uses animation length [1]
action do not face target [1]
attack maximum action distance + [33]
projectile uses contact position [1]
skill can fire wand projectiles [1]
skill does not pathfind [1]
use scaled contact offset [1]

EASDoryaniCrabLightningCage
คูลดาวน์: 45 {วิ}
action attack or cast time uses animation length [1]
action do not face target [1]
skill does not pathfind [1]
EAADoryaniCrabComboSlam
คูลดาวน์: 32.5 {วิ}
action attack or cast time uses animation length [1]
EASDoryaniCrabExplode
คูลดาวน์: 40 {วิ}
action attack or cast time uses animation length [1]
action do not face target [1]
skill does not pathfind [1]
EASDoryaniCrabPlatformAttach
action attack or cast time uses animation length [1]
EASDoryaniCrabPlatformDetach
คูลดาวน์: 50 {วิ}
action attack or cast time uses animation length [1]
MPADoryaniCrabLegToss
Attack, RangedAttack, MirageArcherCanUse, Projectile, ProjectilesFromUser, Damage, Triggerable
Base Damage: 741–1111
โอกาสปะทะคริติคอล: 5%
action attack or cast time uses animation length [1]
base deal no damage [1]
base is projectile [1]
monster projectile variation [1136]
projectile ballistic angle from target distance [1]
projectile uses contact position [1]
GSDoryaniCrabLegProjImpact
Triggerable, Spell, Damage
โอกาสปะทะคริติคอล: 6%
สร้างความเสียหาย สายฟ้า 549.9 ถึง 1650
สกิลที่เสริม มีโอกาสสร้างสถานะ ช็อค เพิ่มขึ้น 100%
action attack or cast time uses animation length [1]
base is projectile [1]
is area damage [1]
spell maximum action distance +% [100]
GADoryaniCrabLegProjImpactWall
Triggerable, Attack
Base Damage: 741–1111
โอกาสปะทะคริติคอล: 5%
action attack or cast time uses animation length [1]
is area damage [1]
GADoryaniCrabExplode
Triggerable, Spell, Damage
โอกาสปะทะคริติคอล: 6%
สร้างความเสียหาย สายฟ้า 211.5 ถึง 634.6
สกิลที่เสริม มีโอกาสสร้างสถานะ ช็อค เพิ่มขึ้น 500%
action attack or cast time uses animation length [1]
is area damage [1]
voll slam damage +% final at centre [20]
GADoryaniCrabExplodeSmash
Triggerable, Attack
Base Damage: 741–1111
โอกาสปะทะคริติคอล: 5%
ความเสียหายโจมตี: 300%
สร้างความเสียหาย โจมตี เพิ่มขึ้น อีก 200%
action attack or cast time uses animation length [1]
is area damage [1]
voll slam damage +% final at centre [40]
MPSDoryaniCrabLightningCage
Spell, Projectile, ProjectilesFromUser, Triggerable, Damage
โอกาสปะทะคริติคอล: 6%
สร้างความเสียหาย สายฟ้า 253.8 ถึง 761.5
สกิลที่เสริม มีโอกาสสร้างสถานะ ช็อค เพิ่มขึ้น 60%
ยิงโพรเจกไทล์ เพิ่มเติม 2 ลูก
active skill projectile speed +% variation final [20]
base is projectile [1]
monster projectile variation [1138]
projectile spread radius [40]

GADoryaniCrabComboSlamBasic
Triggerable, Attack
Base Damage: 741–1111
โอกาสปะทะคริติคอล: 5%
ความเสียหายโจมตี: 80%
สร้างความเสียหาย โจมตี ลดลง อีก 20%
action attack or cast time uses animation length [1]
is area damage [1]
GADoryaniCrabSlamCold
Triggerable, Attack
Base Damage: 741–1111
โอกาสปะทะคริติคอล: 5%
ความเสียหายโจมตี: 185%
สร้างความเสียหาย โจมตี เพิ่มขึ้น อีก 85%
แปลงความเสียหาย กายภาพ 70% เป็น น้ำแข็ง
action attack or cast time uses animation length [1]
active skill area of effect radius +% final [0]
base skill effect duration [4000]
ground ice art variation [1007]
is area damage [1]
voll slam damage +% final at centre [50]
GADoryaniCrabSlamFire
Triggerable, Attack
Base Damage: 741–1111
โอกาสปะทะคริติคอล: 5%
ความเสียหายโจมตี: 185%
สร้างความเสียหาย โจมตี เพิ่มขึ้น อีก 85%
แปลงความเสียหาย กายภาพ 70% เป็น ไฟ
action attack or cast time uses animation length [1]
is area damage [1]
voll slam damage +% final at centre [50]
GADoryaniCrabIceLaserSnap
Triggerable, Spell, Damage
โอกาสปะทะคริติคอล: 6%
สร้างความเสียหาย สายฟ้า 507.6 ถึง 1523
action attack or cast time uses animation length [1]
active skill area of effect radius +% final [0]
base skill effect duration [4000]
ground ice art variation [1007]
is area damage [1]
Object Type
version 2 extends "Metadata/Monsters/Monster" extends "Metadata/Monsters/BossBase" /* ------------------------------------------------------------------------------------------------------------------- */ /* Generic */ /* ------------------------------------------------------------------------------------------------------------------- */ BaseEvents { set_is_act_boss = true } Stats { set_monster_delay_item_drops_millis = 35000 } StateMachine { define_shared_state = " enabled; no_collision; " on_or_create_state_no_collision_1 = { RemoveCollidability(); } on_state_no_collision_0 = { MakeCollidable(); } } /* ------------------------------------------------------------------------------------------------------------------- */ /* Movement/Rotation */ /* ------------------------------------------------------------------------------------------------------------------- */ StateMachine { define_shared_state = "lock_on;" on_state_lock_on_0 = { SetUsesDirectionalRunAnimations( false ); } on_state_lock_on_1 = { SetUsesDirectionalRunAnimations( true ); } } Animated { // need this to enable the turn anims always_interpolate_bearing = true } Functions { fix_orientation = " AddOnActionEnd( { SetOrientation( GetOrientation() + arg1, false, true ); PlayAnimationType( Idle, 1.0, 0, 0 ); }, true ); " } /* ------------------------------------------------------------------------------------------------------------------- */ /* Lightning Cage */ /* ------------------------------------------------------------------------------------------------------------------- */ StateMachine { define_shared_state = "pylons_active;" } /* ------------------------------------------------------------------------------------------------------------------- */ /* Ice Laser/Corrupt Ice Laser */ /* ------------------------------------------------------------------------------------------------------------------- */ StateMachine { define_shared_state = " ice_laser; ice_laser_90; corr_ice_laser; " } /* ------------------------------------------------------------------------------------------------------------------- */ /* Detach Hovercraft */ /* ------------------------------------------------------------------------------------------------------------------- */ StateMachine { define_shared_state = "hover_crafting;" } /* ------------------------------------------------------------------------------------------------------------------- */ /* Re-attach Hovercraft */ /* ------------------------------------------------------------------------------------------------------------------- */ Actor { leveled_starting_effects = "DoLiterallyNothing" on_effect_start_EASDoryaniCrabPlatformAttach = { ForceSkillIntoCooldown( EASDoryaniCrabPlatformDetach ); } } /* ------------------------------------------------------------------------------------------------------------------- */ /* Self Destruct */ /* ------------------------------------------------------------------------------------------------------------------- */ Functions { no_face = { SetMovementFaceMode( DontFace ); } do_face = { SetMovementFaceMode( FaceDirection ); } }
Object Type Codes
version 2 extends "Metadata/Monsters/Monster" extends "Metadata/Monsters/BossBase" /* ------------------------------------------------------------------------------------------------------------------- */ /* Generic */ /* ------------------------------------------------------------------------------------------------------------------- */ Render { use_ao_lights = true } StateMachine { on_or_create_state_enabled_0 = { RemoveCollidability(); DisableTargetable(); } on_state_enabled_1 = { SetCustomCameraSpeed( 0.65 ); CreateCameraZoomNode( 9, 9, 1.5 ); } on_or_create_state_enabled_2 = { StartStateTimer( check_bearing ); MakeCollidable(); EnableTargetable(); SetCustomCameraSpeed( 1.0 ); ClearCameraZoomNodes(); } } Positioned { on_movement_started = { If( GetState( current_rotate_dir ) > 0, (){ SetStateTo( current_rotate_dir, 0 ); } ); } } BaseEvents { // modify this to change how the turn speed is scaled as the turn distance increases set_turn_speed_mult = 60 } StateMachine { define_state = "current_rotate_dir;" define_timer = "check_bearing = 0.033;" // compare the bearing and orientation here, and then set the current_rotate_dir state to 1 or 11 for left/right turns // that state being set to one of those values causes the additive turn anim to play, then the state is reset after that anim is finished on_timer_check_bearing = { this.orientation = GetOrientation(); this.bearing = GetAnimatedBearing(); this.angle_diff = bearing - orientation; this.angle_diff = Round( EvalIf( angle_diff > 180.0, angle_diff - 360.0, EvalIf( angle_diff < -180, angle_diff + 360.0, angle_diff ) ), 2 ); If( Or( And( angle_diff <= 1.0, angle_diff >= -1.0 ), GetCurrentMoveSpeed() > 1.0 ), (){ SetStateTo( current_rotate_dir, 0 ); } ); If( And( angle_diff > 1.0, GetCurrentMoveSpeed() < 1.0 ), (){ SetStateTo( current_rotate_dir, 1 ); } ); If( And( angle_diff < -1.0, GetCurrentMoveSpeed() < 1.0 ), (){ SetStateTo( current_rotate_dir, 2 ); } ); // Speed up the additive turn anims as the turn speed increases local angle_diff_clamped = Clamp( angle_diff, -100, 100 ); local scaling_factor = Eval( Abs( angle_diff_clamped ) / turn_speed_mult ); local layer_speed = Clamp( scaling_factor, 1.0, 10.0 ); // Log( 'Angle Diff: {angle_diff} | Layer Speed: {layer_speed}', c ); If( Abs( angle_diff_clamped ) < 15, () { layer_speed = layer_speed * Eval( Abs( angle_diff_clamped ) / 15 ); } ); SetLayerAnimationSpeed( 9, layer_speed ); SetLayerAnimationSpeed( 10, layer_speed ); StartStateTimer( check_bearing ); } // if current_rotate_dir is 0, it means the monster isn't turning so fade out the additive turns on_state_current_rotate_dir_0 = { FadeAnimations( 9, 0.2 ); FadeAnimations( 10, 0.2 ); } // play a different additive turn anim for different turn directions and velocity on_state_current_rotate_dir_1 = { FadeAnimations( 10, 0.2 ); PlayAdditiveAnimation( turn_01_right, 9 ); } on_state_current_rotate_dir_2 = { FadeAnimations( 9, 0.2 ); PlayAdditiveAnimation( turn_01_left, 10 ); } } /* ------------------------------------------------------------------------------------------------------------------- */ /* All the attachment ruckus */ /* ------------------------------------------------------------------------------------------------------------------- */ BaseEvents { on_construction_complete = { this.hover_craft = GetAttachedAOByType( 'Metadata/Monsters/DoryaniMechSuit/Hovercraft.ao' ); this.l_arm_front = GetAttachedAOByType( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftLArmFront.ao' ); this.r_arm_front = GetAttachedAOByType( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftRArmFront.ao' ); this.l_arm_back = GetAttachedAOByType( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftLArmBack.ao' ); this.r_arm_back = GetAttachedAOByType( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftRArmBack.ao' ); // coils need to be attached here so I can have a reference to each one this.coil_1 = hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', R_coil_jntBnd_1 ); this.coil_2 = hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', R_coil_jntBnd_2 ); this.coil_3 = hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', R_coil_jntBnd_3 ); this.coil_4 = hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', L_coil_jntBnd_1 ); this.coil_5 = hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', L_coil_jntBnd_2 ); this.coil_6 = hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', L_coil_jntBnd_3 ); } } Functions { detach_hover_craft = { If( IsAlive(), () { this.doryani_boss.hover_craft = doryani_boss.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/Hovercraft.ao', ground ); this.doryani_boss.l_arm_front = doryani_boss.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftLArmFront.ao', ground ); this.doryani_boss.r_arm_front = doryani_boss.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftRArmFront.ao', ground ); this.doryani_boss.l_arm_back = doryani_boss.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftLArmBack.ao', ground ); this.doryani_boss.r_arm_back = doryani_boss.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftRArmBack.ao', ground ); doryani_boss.coil_1 = doryani_boss.hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', R_coil_jntBnd_1 ); doryani_boss.coil_2 = doryani_boss.hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', R_coil_jntBnd_2 ); doryani_boss.coil_3 = doryani_boss.hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', R_coil_jntBnd_3 ); doryani_boss.coil_4 = doryani_boss.hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', L_coil_jntBnd_1 ); doryani_boss.coil_5 = doryani_boss.hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', L_coil_jntBnd_2 ); doryani_boss.coil_6 = doryani_boss.hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', L_coil_jntBnd_3 ); doryani_boss.PlayAnimationAttached( 'Metadata/Monsters/DoryaniMechSuit/Hovercraft.ao', floating_idle_01 ); doryani_boss.PlayAnimationAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftLArmBack.ao', floating_idle_01 ); doryani_boss.PlayAnimationAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftRArmBack.ao', floating_idle_01 ); doryani_boss.PlayAnimationAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftLArmFront.ao', floating_idle_01 ); doryani_boss.PlayAnimationAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftRArmFront.ao', floating_idle_01 ); // without the delay here, the particles of the thruster epk don't show up Delay( 0.5, { doryani_boss.AddEffectPackAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/epk/hovercraft_thrusters.epk', 'Metadata/Monsters/DoryaniMechSuit/Hovercraft.ao' ); } ); } ); DetachAO( hover_craft ); DetachAO( l_arm_front ); DetachAO( r_arm_front ); DetachAO( l_arm_back ); DetachAO( r_arm_back ); } attach_hover_craft = { this.hover_craft = AddAttached( 'Metadata/Monsters/DoryaniMechSuit/Hovercraft.ao',); this.l_arm_front = AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftLArmFront.ao', ); this.r_arm_front = AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftRArmFront.ao', ); this.l_arm_back = AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftLArmBack.ao', ); this.r_arm_back = AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftRArmBack.ao', ); // coils need to be attached here so I can have a reference to each one this.coil_1 = hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', R_coil_jntBnd_1 ); this.coil_2 = hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', R_coil_jntBnd_2 ); this.coil_3 = hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', R_coil_jntBnd_3 ); this.coil_4 = hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', L_coil_jntBnd_1 ); this.coil_5 = hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', L_coil_jntBnd_2 ); this.coil_6 = hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', L_coil_jntBnd_3 ); PlayAnimationAttached( 'Metadata/Monsters/DoryaniMechSuit/Hovercraft.ao', attach_platform_01 ); PlayAnimationAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftLArmBack.ao', attach_platform_01 ); PlayAnimationAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftRArmBack.ao', attach_platform_01 ); PlayAnimationAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftLArmFront.ao', attach_platform_01 ); PlayAnimationAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftRArmFront.ao', attach_platform_01 ); /* PlayAnimationAttached( 'Metadata/Monsters/Doryani/TrueDoryani/TrueDoryani.ao', mech_attach_platform_01 ); */ doryani_boss.DetachAO( hover_craft ); doryani_boss.DetachAO( l_arm_front ); doryani_boss.DetachAO( r_arm_front ); doryani_boss.DetachAO( l_arm_back ); doryani_boss.DetachAO( r_arm_back ); } } StateMachine { create_state_hover_crafting_1 = { Delay( 0.0, { Call( detach_hover_craft ); } ); } } /* ------------------------------------------------------------------------------------------------------------------- */ /* Preload */ /* ------------------------------------------------------------------------------------------------------------------- */ Preload { preload_epk = "Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/epk/hovercraft_thrusters.epk" preload_monster_variety = "Metadata/Monsters/DoryaniMechSuit/DoryaniMechRailGun" preload_object = "Metadata/Monsters/DoryaniMechSuit/DoryaniMechZapTarget" } /* ------------------------------------------------------------------------------------------------------------------- */ /* Lightning Cage */ /* ------------------------------------------------------------------------------------------------------------------- */ StateMachine { on_state_pylons_active_1 = { Delay( Random( 0.1, 0.5 ), { coil_1.Do( () { PlayAnimation( activate_01 ); QueueAnimation( idle_active_01 ); } ); } ); Delay( Random( 0.1, 0.5 ), { coil_2.Do( () { PlayAnimation( activate_01 ); QueueAnimation( idle_active_01 ); } ); } ); Delay( Random( 0.1, 0.5 ), { coil_3.Do( () { PlayAnimation( activate_01 ); QueueAnimation( idle_active_01 ); } ); } ); Delay( Random( 0.1, 0.5 ), { coil_4.Do( () { PlayAnimation( activate_01 ); QueueAnimation( idle_active_01 ); } ); } ); Delay( Random( 0.1, 0.5 ), { coil_5.Do( () { PlayAnimation( activate_01 ); QueueAnimation( idle_active_01 ); } ); } ); Delay( Random( 0.1, 0.5 ), { coil_6.Do( () { PlayAnimation( activate_01 ); QueueAnimation( idle_active_01 ); } ); } ); Delay( 0.5, { this.lightning_ring = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/lightning_cage.ao', root_jntBnd ); } ); } create_state_pylons_active_1 = { coil_1.QueueAnimation( idle_active_01 ); coil_2.QueueAnimation( idle_active_01 ); coil_3.QueueAnimation( idle_active_01 ); coil_4.QueueAnimation( idle_active_01 ); coil_5.QueueAnimation( idle_active_01 ); coil_6.QueueAnimation( idle_active_01 ); this.lightning_ring = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/lightning_cage.ao', root_jntBnd ); } on_state_pylons_active_0 = { Delay( Random( 0.1, 0.5 ), { coil_1.Do( () { PlayAnimation( deactivate_01 ); QueueAnimation( idle_deactive_01 ); } ); } ); Delay( Random( 0.1, 0.5 ), { coil_2.Do( () { PlayAnimation( deactivate_01 ); QueueAnimation( idle_deactive_01 ); } ); } ); Delay( Random( 0.1, 0.5 ), { coil_3.Do( () { PlayAnimation( deactivate_01 ); QueueAnimation( idle_deactive_01 ); } ); } ); Delay( Random( 0.1, 0.5 ), { coil_4.Do( () { PlayAnimation( deactivate_01 ); QueueAnimation( idle_deactive_01 ); } ); } ); Delay( Random( 0.1, 0.5 ), { coil_5.Do( () { PlayAnimation( deactivate_01 ); QueueAnimation( idle_deactive_01 ); } ); } ); Delay( Random( 0.1, 0.5 ), { coil_6.Do( () { PlayAnimation( deactivate_01 ); QueueAnimation( idle_deactive_01 ); } ); } ); lightning_ring.PlayAnimation( end ); Delay( 1.0, { DetachAO( lightning_ring ); } ); } } /* ------------------------------------------------------------------------------------------------------------------- */ /* Ice Laser/Corrupt Ice Laser */ /* ------------------------------------------------------------------------------------------------------------------- */ StateMachine { on_state_ice_laser_0 = { ice_laser.PlayAnimation( end ); } on_state_ice_laser_1 = { this.ice_laser = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/coldbeam.ao', ice_laser_attachment ); ice_laser.PlayAnimation( start ); ice_laser.QueueAnimation( loop ); } create_state_ice_laser_1 = { this.ice_laser = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/coldbeam.ao', ice_laser_attachment ); ice_laser.PlayAnimation( loop ); } on_state_ice_laser_90_0 = { ice_laser.PlayAnimation( end ); } on_state_ice_laser_90_1 = { this.ice_laser = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/coldbeam.ao', ice_laser90_attachment ); ice_laser.PlayAnimation( start ); ice_laser.QueueAnimation( loop ); } create_state_ice_laser_90_1 = { this.ice_laser = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/coldbeam.ao', ice_laser90_attachment ); ice_laser.PlayAnimation( loop ); } on_state_corr_ice_laser_0 = { DetachAllOfType( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/coldbeam_corr.ao' ); } on_state_corr_ice_laser_1 = { this.corr_ice_laser = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/coldbeam_corr.ao', ice_laser_attachment ); corr_ice_laser.PlayAnimation( start ); corr_ice_laser.QueueAnimation( loop ); } create_state_corr_ice_laser_1 = { this.corr_ice_laser = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/coldbeam_corr.ao', ice_laser_attachment ); corr_ice_laser.PlayAnimation( loop ); } on_state_corr_ice_laser_2 = { corr_ice_laser.PlayAnimation( swell ); } create_state_corr_ice_laser_2 = { this.corr_ice_laser = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/coldbeam_corr.ao', ice_laser_attachment ); corr_ice_laser.PlayAnimation( swell ); } } /* ------------------------------------------------------------------------------------------------------------------- */ /* Combat Dialogue */ /* ------------------------------------------------------------------------------------------------------------------- */ Actor { on_effect_start_GSDoryaniCrabFrostLaser90Left = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechClawLaser_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " on_effect_start_GSDoryaniCrabFrostLaser = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechClawLaser_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " on_effect_start_EDADoryaniCrabClawSlam = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechSlam_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " on_effect_start_GSDoryaniCrabBrazierSlam = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechSlam2_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " on_effect_start_GADoryaniCrabBodySlam = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechBodySlam_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " on_effect_start_GSDoryaniCrabDiscoLazer = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechDiscoLaser_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " on_effect_start_GSDoryaniCrabFlamethrower = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechFlamethrower_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " on_effect_start_GSDoryaniCrabFlamethrower90Right = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechFlamethrower_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " on_effect_start_GSDoryaniCrabFlamethrowerCorrupt = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechFlamethrower_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " on_effect_start_EASDoryaniCrabLightningCage = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechLightningStorm_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " on_effect_start_EASDoryaniCrabLightningCageCorrupt = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechLightningStorm_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " on_effect_start_EASDoryaniCrabExplode = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechSelfDestruct_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechReassemble_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast', 6000 ); } ); " on_effect_start_EASDoryaniCrabPlatformDetach = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechDetatchPlatform_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " on_effect_start_EAADoryaniCrabLegToss = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechSpiderLegAttack_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " on_effect_start_EAADoryaniCrabComboSlam = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechComboSlam_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " }
-- src\Data\Spectres.lua minions["Metadata/Monsters/DoryaniMechSuit/DoryaniMech"] = { name = "Doryani's Triumph", life = 4.8, fireResist = 0, coldResist = 0, lightningResist = 0, chaosResist = 0, damage = 4.5, damageSpread = 0.2, attackTime = 1.005, attackRange = 41, accuracy = 1, skillList = { "MeleeAtAnimationSpeedUnique", "MASDoryaniCrabSweep180", "MPADoryaniCrabLegToss", "MPSDoryaniCrabLightningCage", "GADoryaniCrabBodySlam", "GADoryaniCrabExplode", "GADoryaniCrabExplodeSmash", "GSDoryaniCrabBrazierSlam", "GSDoryaniCrabDiscoLazer", "GSDoryaniCrabFlamethrower", "GSDoryaniCrabFlamethrower90Right", "GSDoryaniCrabFlamethrowerCorrupt", "GSDoryaniCrabFrostLaser", "GSDoryaniCrabFrostLaser90Left", "GSDoryaniCrabFrostLaserCorrupt", "GSDoryaniCrabLegProjImpact", "GADoryaniCrabLegProjImpactWall", "GADoryaniCrabSlamCold", "GADoryaniCrabSlamFire", "GADoryaniCrabComboSlamBasic", "GADoryaniCrabIceLaserSnap", "EASDoryaniCrabExplode", "EASDoryaniCrabLightningCage", "EASDoryaniCrabPlatformAttach", "EASDoryaniCrabPlatformDetach", "EAADoryaniCrabLegToss", "EAADoryaniCrabComboSlam", "EDADoryaniCrabClawSlam", }, modList = { }, } -- src\Data\Skills\spectre.lua skills["MeleeAtAnimationSpeedUnique"] = { 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 = { "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "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] = {100, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["MASDoryaniCrabSweep180"] = { 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_+", "active_skill_base_physical_damage_%_to_convert_to_cold", "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", "action_do_not_face_target", "skill_does_not_pathfind", }, levels = { [1] = {33, 30, baseMultiplier = 1.3, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["MPADoryaniCrabLegToss"] = { name = "MPADoryaniCrabLegToss", 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", "base_is_projectile", "projectile_uses_contact_position", "action_attack_or_cast_time_uses_animation_length", "base_deal_no_damage", "projectile_ballistic_angle_from_target_distance", }, levels = { [1] = {1136, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["MPSDoryaniCrabLightningCage"] = { name = "MPSDoryaniCrabLightningCage", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Spell] = true, [SkillType.Projectile] = true, [SkillType.ProjectilesFromUser] = true, [SkillType.Triggerable] = true, [SkillType.Damage] = true, }, statDescriptionScope = "skill_stat_descriptions", castTime = 1, baseFlags = { spell = true, projectile = true, }, baseMods = { }, qualityStats = { }, stats = { "spell_minimum_base_lightning_damage", "spell_maximum_base_lightning_damage", "monster_projectile_variation", "number_of_additional_projectiles", "projectile_spread_radius", "active_skill_projectile_speed_+%_variation_final", "shock_chance_+%", "base_is_projectile", }, levels = { [1] = {0.5, 1.5, 1138, 2, 40, 20, 60, critChance = 6, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GADoryaniCrabBodySlam"] = { name = "GADoryaniCrabBodySlam", 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 = { "voll_slam_damage_+%_final_at_centre", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {40, baseMultiplier = 2, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GADoryaniCrabExplode"] = { name = "GADoryaniCrabExplode", 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", "voll_slam_damage_+%_final_at_centre", "shock_chance_+%", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {0.5, 1.5, 20, 500, critChance = 6, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GADoryaniCrabExplodeSmash"] = { name = "GADoryaniCrabExplodeSmash", 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 = { "voll_slam_damage_+%_final_at_centre", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {40, baseMultiplier = 3, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSDoryaniCrabBrazierSlam"] = { name = "GSDoryaniCrabBrazierSlam", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Spell] = true, [SkillType.Damage] = true, }, statDescriptionScope = "geometry_spell", castTime = 1, baseFlags = { spell = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "spell_minimum_base_fire_damage", "spell_maximum_base_fire_damage", "ignite_chance_+%", "voll_slam_damage_+%_final_at_centre", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {0.80000001192093, 1.2000000476837, 100, 40, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSDoryaniCrabDiscoLazer"] = { name = "GSDoryaniCrabDiscoLazer", 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", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "action_do_not_face_target", "skill_does_not_pathfind", }, levels = { [1] = {0.5, 1.5, critChance = 6, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSDoryaniCrabFlamethrower"] = { name = "GSDoryaniCrabFlamethrower", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Spell] = true, [SkillType.Damage] = true, }, statDescriptionScope = "geometry_spell", castTime = 1, baseFlags = { spell = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "spell_minimum_base_fire_damage", "spell_maximum_base_fire_damage", "ignite_chance_+%", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "action_do_not_face_target", "skill_does_not_pathfind", "base_skill_can_be_avoided_by_dodge_roll", "base_skill_can_be_blocked", "base_skill_cannot_be_parried", }, levels = { [1] = {0.80000001192093, 1.2000000476837, 50, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSDoryaniCrabFlamethrower90Right"] = { name = "GSDoryaniCrabFlamethrower90Right", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Spell] = true, [SkillType.Damage] = true, }, statDescriptionScope = "geometry_spell", castTime = 1, baseFlags = { spell = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "spell_minimum_base_fire_damage", "spell_maximum_base_fire_damage", "ignite_chance_+%", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "action_do_not_face_target", "skill_does_not_pathfind", "base_skill_can_be_avoided_by_dodge_roll", "base_skill_can_be_blocked", "base_skill_cannot_be_parried", }, levels = { [1] = {0.80000001192093, 1.2000000476837, 50, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSDoryaniCrabFlamethrowerCorrupt"] = { name = "GSDoryaniCrabFlamethrowerCorrupt", 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_minimum_base_fire_damage_per_removable_endurance_charge", "spell_maximum_base_fire_damage", "shock_chance_+%", "ignite_chance_+%", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "action_do_not_face_target", "skill_does_not_pathfind", "base_skill_can_be_avoided_by_dodge_roll", "base_skill_can_be_blocked", "base_skill_cannot_be_parried", }, levels = { [1] = {0.25, 0.75, 0.40000000596046, 0.60000002384186, 300, 50, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3, 3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSDoryaniCrabFrostLaser"] = { name = "GSDoryaniCrabFrostLaser", 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_cold_damage", "spell_maximum_base_cold_damage", "active_skill_area_of_effect_radius_+%_final", "base_skill_effect_duration", "ground_ice_art_variation", "active_skill_chill_effect_+%_final", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "action_do_not_face_target", "skill_does_not_pathfind", "base_skill_can_be_avoided_by_dodge_roll", "base_skill_can_be_blocked", }, levels = { [1] = {0.80000001192093, 1.2000000476837, 0, 7000, 1007, 350, critChance = 7, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSDoryaniCrabFrostLaser90Left"] = { name = "GSDoryaniCrabFrostLaser90Left", 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_cold_damage", "spell_maximum_base_cold_damage", "active_skill_area_of_effect_radius_+%_final", "base_skill_effect_duration", "ground_ice_art_variation", "active_skill_chill_effect_+%_final", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "action_do_not_face_target", "skill_does_not_pathfind", "base_skill_can_be_avoided_by_dodge_roll", "base_skill_can_be_blocked", }, levels = { [1] = {0.80000001192093, 1.2000000476837, 0, 7000, 1007, 350, critChance = 7, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSDoryaniCrabFrostLaserCorrupt"] = { name = "GSDoryaniCrabFrostLaserCorrupt", 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_cold_damage", "spell_maximum_base_cold_damage", "active_skill_area_of_effect_radius_+%_final", "base_skill_effect_duration", "ground_ice_art_variation", "active_skill_chill_effect_+%_final", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "action_do_not_face_target", "skill_does_not_pathfind", "base_skill_can_be_avoided_by_dodge_roll", "base_skill_can_be_blocked", }, levels = { [1] = {0.80000001192093, 1.2000000476837, 0, 7000, 1007, 350, critChance = 7, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSDoryaniCrabLegProjImpact"] = { name = "GSDoryaniCrabLegProjImpact", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Spell] = true, [SkillType.Damage] = true, }, statDescriptionScope = "geometry_spell", castTime = 1, baseFlags = { spell = true, area = true, projectile = true, }, baseMods = { }, qualityStats = { }, stats = { "spell_minimum_base_lightning_damage", "spell_maximum_base_lightning_damage", "shock_chance_+%", "spell_maximum_action_distance_+%", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "base_is_projectile", }, levels = { [1] = {0.5, 1.5, 100, 100, critChance = 6, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GADoryaniCrabLegProjImpactWall"] = { name = "GADoryaniCrabLegProjImpactWall", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Attack] = true, }, statDescriptionScope = "skill_stat_descriptions", castTime = 1, baseFlags = { attack = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {critChance = 6, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GADoryaniCrabSlamCold"] = { name = "GADoryaniCrabSlamCold", 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 = { "active_skill_base_physical_damage_%_to_convert_to_cold", "voll_slam_damage_+%_final_at_centre", "active_skill_area_of_effect_radius_+%_final", "base_skill_effect_duration", "ground_ice_art_variation", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {70, 50, 0, 4000, 1007, baseMultiplier = 1.85, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GADoryaniCrabSlamFire"] = { name = "GADoryaniCrabSlamFire", 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 = { "active_skill_base_physical_damage_%_to_convert_to_fire", "voll_slam_damage_+%_final_at_centre", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {70, 50, baseMultiplier = 1.85, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GADoryaniCrabComboSlamBasic"] = { name = "GADoryaniCrabComboSlamBasic", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Attack] = true, }, statDescriptionScope = "skill_stat_descriptions", castTime = 1, baseFlags = { attack = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {baseMultiplier = 0.8, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GADoryaniCrabIceLaserSnap"] = { name = "GADoryaniCrabIceLaserSnap", 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_area_of_effect_radius_+%_final", "base_skill_effect_duration", "ground_ice_art_variation", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {0.5, 1.5, 0, 4000, 1007, critChance = 6, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["EASDoryaniCrabExplode"] = { name = "EASDoryaniCrabExplode", 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", "action_do_not_face_target", "skill_does_not_pathfind", }, levels = { [1] = {levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["EASDoryaniCrabLightningCage"] = { name = "EASDoryaniCrabLightningCage", 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", "action_do_not_face_target", "skill_does_not_pathfind", }, levels = { [1] = {levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["EASDoryaniCrabPlatformAttach"] = { name = "EASDoryaniCrabPlatformAttach", 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["EASDoryaniCrabPlatformDetach"] = { name = "EASDoryaniCrabPlatformDetach", 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["EAADoryaniCrabLegToss"] = { name = "EAADoryaniCrabLegToss", 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", "action_do_not_face_target", "skill_does_not_pathfind", }, levels = { [1] = {80, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["EAADoryaniCrabComboSlam"] = { name = "EAADoryaniCrabComboSlam", 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["EDADoryaniCrabClawSlam"] = { name = "EDADoryaniCrabClawSlam", 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 = { "active_skill_base_physical_damage_%_to_convert_to_cold", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {65, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, }
monster dropped item rarity +% [4800]
monster slain experience +% [0]
Id | MonsterUniqueT3Boss |
---|---|
Family | MonsterActBoss |
Domains | Monster (3) |
GenerationType | ยูนิค (3) |
Req. level | 1 |
Stats |
ไม่ถูก ผลักออกไป
Id | ImmuneToKnockback |
---|---|
Family | ImmuneToKnockback |
Domains | Monster (3) |
GenerationType | ยูนิค (3) |
Req. level | 1 |
Stats |
เครื่องฉลองชัยของดอร์ยานี




ด่าน: ปราการศิลา
เพิ่มโอกาสสร้างสถานะ ช็อค 100%
active skill ignite effect +% final [33]
active skill ignite effect +% final [33]
monster dropped item rarity +% [4800]
monster slain experience +% [0]
ไม่ถูก ผลักออกไป
monster dropped item quantity +% [800]
monster dropped item rarity +% [3200]
monster map key of at least same tier as current map drop chance % [25]
monster slain experience +% [9000]
unique monster guarantee one rare [1]
monster slain experience +% [0]
ไม่ถูก ผลักออกไป
monster dropped item quantity +% [800]
monster dropped item rarity +% [3200]
monster map key of at least same tier as current map drop chance % [25]
monster slain experience +% [9000]
unique monster guarantee one rare [1]
Doryani's Triumph
Spectre | N |
---|---|
Area | ปราการศิลา |
Tags | construct, MonsterBlunt_onhit_audio, mud_blood, not_dex, not_int, slow_movement |
พลังชีวิต
360%
ค่าเกราะ
+100%
ค่าต้านทาน




Damage
450%
ความแม่นยำ
100%
ปะทะคริติคอล Chance
5%
โบนัสความเสียหายคริติคอล
+30%
Attack Distance
7 ~ 41
1.005 Second
Damage Spread
±20%
ค่าประสบการณ์
300%
Model Size
100%
Type
DoryaniMechMap
Metadata
DoryaniMechMap
The following values do not include map affix bonuses, monster buff bonuses, altar bonuses, atlas skill bonuses.
เลือก เลเวลมอนสเตอร์
เลเวล
80
พลังชีวิต
56,192
ค่าเกราะ
9,606
อัตราการหลบหลีก
644
Damage
1,502
ความเสียหายเวท
1,502
ความแม่นยำ
3,204
1.005
ค่าประสบการณ์
300,000
Minion Life
36,302
Minion Damage
7,994
Minion Armour
19,212
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).
MeleeAtAnimationSpeedUnique
Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Melee, ProjectilesFromUser
โจมตีพื้นฐาน
Base Damage: 1202–1802
โอกาสปะทะคริติคอล: 5%
action attack or cast time uses animation length [1]
monster penalty against minions damage +% final vs player minions [100]
projectile uses contact position [1]
skill can fire wand projectiles [1]
use scaled contact offset [1]

GADoryaniCrabBodySlam
Triggerable, Attack
Base Damage: 1202–1802
โอกาสปะทะคริติคอล: 5%
ความเสียหายโจมตี: 200%
คูลดาวน์: 35 {วิ}
สร้างความเสียหาย โจมตี เพิ่มขึ้น อีก 100%
action attack or cast time uses animation length [1]
is area damage [1]
voll slam damage +% final at centre [40]
EDADoryaniCrabClawSlam
Triggerable, Attack
Base Damage: 1202–1802
โอกาสปะทะคริติคอล: 5%
คูลดาวน์: 20 {วิ}
แปลงความเสียหาย กายภาพ 65% เป็น น้ำแข็ง
action attack or cast time uses animation length [1]
is area damage [1]
GSDoryaniCrabBrazierSlam
Triggerable, Spell, Damage
โอกาสปะทะคริติคอล: 5%
คูลดาวน์: 15 {วิ}
เพิ่มโอกาสสร้างสถานะ ลุกไหม้ 100%
สร้างความเสียหาย ไฟ 1089 ถึง 1634
action attack or cast time uses animation length [1]
is area damage [1]
voll slam damage +% final at centre [40]
GSDoryaniCrabDiscoLazer
Triggerable, Spell, Damage
โอกาสปะทะคริติคอล: 6%
คูลดาวน์: 35 {วิ}
สร้างความเสียหาย สายฟ้า 68.08 ถึง 204.2
action attack or cast time uses animation length [1]
action do not face target [1]
is area damage [1]
skill does not pathfind [1]
GSDoryaniCrabFlamethrower
Triggerable, Spell, Damage
โอกาสปะทะคริติคอล: 5%
คูลดาวน์: 35 {วิ}
เพิ่มโอกาสสร้างสถานะ ลุกไหม้ 50%
สร้างความเสียหาย ไฟ 196.1 ถึง 294.1
action attack or cast time uses animation length [1]
action do not face target [1]
base skill can be avoided by dodge roll [1]
base skill can be blocked [1]
base skill cannot be parried [1]
is area damage [1]
skill does not pathfind [1]
GSDoryaniCrabFlamethrower90Right
Triggerable, Spell, Damage
โอกาสปะทะคริติคอล: 5%
คูลดาวน์: 35 {วิ}
เพิ่มโอกาสสร้างสถานะ ลุกไหม้ 50%
สร้างความเสียหาย ไฟ ถึง
action attack or cast time uses animation length [1]
action do not face target [1]
base skill can be avoided by dodge roll [1]
base skill can be blocked [1]
base skill cannot be parried [1]
is area damage [1]
skill does not pathfind [1]
GSDoryaniCrabFlamethrowerCorrupt
Triggerable, Spell, Damage
โอกาสปะทะคริติคอล: 5%
คูลดาวน์: 35 {วิ}
เพิ่มโอกาสสร้างสถานะ ลุกไหม้ 50%
สร้างความเสียหาย ไฟ ถึง 163.4
สร้างความเสียหาย สายฟ้า 68.08 ถึง 204.2
สกิลที่เสริม มีโอกาสสร้างสถานะ ช็อค เพิ่มขึ้น 300%
สร้างความเสียหาย ไฟ พื้นฐาน 108.9 ถึง ต่อจำนวน Endurance Charge ที่กำจัด
action attack or cast time uses animation length [1]
action do not face target [1]
base skill can be avoided by dodge roll [1]
base skill can be blocked [1]
base skill cannot be parried [1]
is area damage [1]
skill does not pathfind [1]
GSDoryaniCrabFrostLaser
Triggerable, Spell, Damage
โอกาสปะทะคริติคอล: 7%
คูลดาวน์: 40 {วิ}
สร้างความเสียหาย น้ำแข็ง 108.9 ถึง 163.4
เพิ่มจำนวนค่าของสถานะ หนาวเย็น ที่สร้าง อีก 350%
action attack or cast time uses animation length [1]
action do not face target [1]
active skill area of effect radius +% final [0]
base skill can be avoided by dodge roll [1]
base skill can be blocked [1]
base skill effect duration [7000]
ground ice art variation [1007]
is area damage [1]
skill does not pathfind [1]
GSDoryaniCrabFrostLaser90Left
Triggerable, Spell, Damage
โอกาสปะทะคริติคอล: 7%
คูลดาวน์: 40 {วิ}
สร้างความเสียหาย น้ำแข็ง ถึง
เพิ่มจำนวนค่าของสถานะ หนาวเย็น ที่สร้าง อีก 350%
action attack or cast time uses animation length [1]
action do not face target [1]
active skill area of effect radius +% final [0]
base skill can be avoided by dodge roll [1]
base skill can be blocked [1]
base skill effect duration [7000]
ground ice art variation [1007]
is area damage [1]
skill does not pathfind [1]
GSDoryaniCrabFrostLaserCorrupt
Triggerable, Spell, Damage
โอกาสปะทะคริติคอล: 7%
คูลดาวน์: 40 {วิ}
สร้างความเสียหาย น้ำแข็ง 108.9 ถึง 163.4
เพิ่มจำนวนค่าของสถานะ หนาวเย็น ที่สร้าง อีก 350%
action attack or cast time uses animation length [1]
action do not face target [1]
active skill area of effect radius +% final [0]
base skill can be avoided by dodge roll [1]
base skill can be blocked [1]
base skill effect duration [7000]
ground ice art variation [1007]
is area damage [1]
skill does not pathfind [1]
EAADoryaniCrabLegToss
คูลดาวน์: 27.5 {วิ}
action attack or cast time uses animation length [1]
action do not face target [1]
attack maximum action distance + [80]
skill does not pathfind [1]
MASDoryaniCrabSweep180
Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Melee, ProjectilesFromUser
โจมตีพื้นฐาน
Base Damage: 1202–1802
โอกาสปะทะคริติคอล: 5%
ความเสียหายโจมตี: 130%
คูลดาวน์: 15 {วิ}
สร้างความเสียหาย โจมตี เพิ่มขึ้น อีก 30%
แปลงความเสียหาย กายภาพ 30% เป็น น้ำแข็ง
action attack or cast time uses animation length [1]
action do not face target [1]
attack maximum action distance + [33]
projectile uses contact position [1]
skill can fire wand projectiles [1]
skill does not pathfind [1]
use scaled contact offset [1]

EASDoryaniCrabLightningCage
คูลดาวน์: 45 {วิ}
action attack or cast time uses animation length [1]
action do not face target [1]
skill does not pathfind [1]
EAADoryaniCrabComboSlam
คูลดาวน์: 32.5 {วิ}
action attack or cast time uses animation length [1]
EASDoryaniCrabExplode
คูลดาวน์: 40 {วิ}
action attack or cast time uses animation length [1]
action do not face target [1]
skill does not pathfind [1]
EASDoryaniCrabPlatformAttach
action attack or cast time uses animation length [1]
EASDoryaniCrabPlatformDetach
คูลดาวน์: 50 {วิ}
action attack or cast time uses animation length [1]
MPADoryaniCrabLegToss
Attack, RangedAttack, MirageArcherCanUse, Projectile, ProjectilesFromUser, Damage, Triggerable
Base Damage: 1202–1802
โอกาสปะทะคริติคอล: 5%
action attack or cast time uses animation length [1]
base deal no damage [1]
base is projectile [1]
monster projectile variation [1136]
projectile ballistic angle from target distance [1]
projectile uses contact position [1]
GSDoryaniCrabLegProjImpact
Triggerable, Spell, Damage
โอกาสปะทะคริติคอล: 6%
สร้างความเสียหาย สายฟ้า 885 ถึง 2655
สกิลที่เสริม มีโอกาสสร้างสถานะ ช็อค เพิ่มขึ้น 100%
action attack or cast time uses animation length [1]
base is projectile [1]
is area damage [1]
spell maximum action distance +% [100]
GADoryaniCrabLegProjImpactWall
Triggerable, Attack
Base Damage: 1202–1802
โอกาสปะทะคริติคอล: 5%
action attack or cast time uses animation length [1]
is area damage [1]
GADoryaniCrabExplode
Triggerable, Spell, Damage
โอกาสปะทะคริติคอล: 6%
สร้างความเสียหาย สายฟ้า 340.4 ถึง 1021
สกิลที่เสริม มีโอกาสสร้างสถานะ ช็อค เพิ่มขึ้น 500%
action attack or cast time uses animation length [1]
is area damage [1]
voll slam damage +% final at centre [20]
GADoryaniCrabExplodeSmash
Triggerable, Attack
Base Damage: 1202–1802
โอกาสปะทะคริติคอล: 5%
ความเสียหายโจมตี: 300%
สร้างความเสียหาย โจมตี เพิ่มขึ้น อีก 200%
action attack or cast time uses animation length [1]
is area damage [1]
voll slam damage +% final at centre [40]
MPSDoryaniCrabLightningCage
Spell, Projectile, ProjectilesFromUser, Triggerable, Damage
โอกาสปะทะคริติคอล: 6%
สร้างความเสียหาย สายฟ้า 408.5 ถึง 1225
สกิลที่เสริม มีโอกาสสร้างสถานะ ช็อค เพิ่มขึ้น 60%
ยิงโพรเจกไทล์ เพิ่มเติม 2 ลูก
active skill projectile speed +% variation final [20]
base is projectile [1]
monster projectile variation [1138]
projectile spread radius [40]

GADoryaniCrabComboSlamBasic
Triggerable, Attack
Base Damage: 1202–1802
โอกาสปะทะคริติคอล: 5%
ความเสียหายโจมตี: 80%
สร้างความเสียหาย โจมตี ลดลง อีก 20%
action attack or cast time uses animation length [1]
is area damage [1]
GADoryaniCrabSlamCold
Triggerable, Attack
Base Damage: 1202–1802
โอกาสปะทะคริติคอล: 5%
ความเสียหายโจมตี: 185%
สร้างความเสียหาย โจมตี เพิ่มขึ้น อีก 85%
แปลงความเสียหาย กายภาพ 70% เป็น น้ำแข็ง
action attack or cast time uses animation length [1]
active skill area of effect radius +% final [0]
base skill effect duration [4000]
ground ice art variation [1007]
is area damage [1]
voll slam damage +% final at centre [50]
GADoryaniCrabSlamFire
Triggerable, Attack
Base Damage: 1202–1802
โอกาสปะทะคริติคอล: 5%
ความเสียหายโจมตี: 185%
สร้างความเสียหาย โจมตี เพิ่มขึ้น อีก 85%
แปลงความเสียหาย กายภาพ 70% เป็น ไฟ
action attack or cast time uses animation length [1]
is area damage [1]
voll slam damage +% final at centre [50]
GADoryaniCrabIceLaserSnap
Triggerable, Spell, Damage
โอกาสปะทะคริติคอล: 6%
สร้างความเสียหาย สายฟ้า 816.9 ถึง 2451
action attack or cast time uses animation length [1]
active skill area of effect radius +% final [0]
base skill effect duration [4000]
ground ice art variation [1007]
is area damage [1]
Object Type
version 2 extends "Metadata/Monsters/Monster" extends "Metadata/Monsters/BossBase" /* ------------------------------------------------------------------------------------------------------------------- */ /* Generic */ /* ------------------------------------------------------------------------------------------------------------------- */ StateMachine { define_shared_state = " enabled; no_collision; " on_or_create_state_no_collision_1 = { RemoveCollidability(); } on_state_no_collision_0 = { MakeCollidable(); } } /* ------------------------------------------------------------------------------------------------------------------- */ /* Movement/Rotation */ /* ------------------------------------------------------------------------------------------------------------------- */ StateMachine { define_shared_state = "lock_on;" on_state_lock_on_0 = { SetUsesDirectionalRunAnimations( false ); } on_state_lock_on_1 = { SetUsesDirectionalRunAnimations( true ); } } Animated { // need this to enable the turn anims always_interpolate_bearing = true } Functions { fix_orientation = " AddOnActionEnd( { SetOrientation( GetOrientation() + arg1, false, true ); PlayAnimationType( Idle, 1.0, 0, 0 ); }, true ); " } /* ------------------------------------------------------------------------------------------------------------------- */ /* Lightning Cage */ /* ------------------------------------------------------------------------------------------------------------------- */ StateMachine { define_shared_state = "pylons_active;" } /* ------------------------------------------------------------------------------------------------------------------- */ /* Ice Laser/Corrupt Ice Laser */ /* ------------------------------------------------------------------------------------------------------------------- */ StateMachine { define_shared_state = " ice_laser; ice_laser_90; corr_ice_laser; " } /* ------------------------------------------------------------------------------------------------------------------- */ /* Detach Hovercraft */ /* ------------------------------------------------------------------------------------------------------------------- */ StateMachine { define_shared_state = "hover_crafting;" } /* ------------------------------------------------------------------------------------------------------------------- */ /* Re-attach Hovercraft */ /* ------------------------------------------------------------------------------------------------------------------- */ Actor { leveled_starting_effects = "DoLiterallyNothing" on_effect_start_EASDoryaniCrabPlatformAttach = { ForceSkillIntoCooldown( EASDoryaniCrabPlatformDetach ); } } /* ------------------------------------------------------------------------------------------------------------------- */ /* Self Destruct */ /* ------------------------------------------------------------------------------------------------------------------- */ Functions { no_face = { SetMovementFaceMode( DontFace ); } do_face = { SetMovementFaceMode( FaceDirection ); } } Stats { set_monster_delay_item_drops_millis = 9000 monster_hide_minimap_icon = 1 }
Object Type Codes
version 2 extends "Metadata/Monsters/Monster" extends "Metadata/Monsters/BossBase" /* ------------------------------------------------------------------------------------------------------------------- */ /* Generic */ /* ------------------------------------------------------------------------------------------------------------------- */ Render { use_ao_lights = true } StateMachine { on_or_create_state_enabled_0 = { RemoveCollidability(); DisableTargetable(); } on_state_enabled_1 = { SetCustomCameraSpeed( 0.65 ); CreateCameraZoomNode( 9, 9, 1.5 ); } on_or_create_state_enabled_2 = { StartStateTimer( check_bearing ); MakeCollidable(); EnableTargetable(); SetCustomCameraSpeed( 1.0 ); ClearCameraZoomNodes(); } } Positioned { on_movement_started = { If( GetState( current_rotate_dir ) > 0, (){ SetStateTo( current_rotate_dir, 0 ); } ); } } BaseEvents { // modify this to change how the turn speed is scaled as the turn distance increases set_turn_speed_mult = 60 } StateMachine { define_state = "current_rotate_dir;" define_timer = "check_bearing = 0.033;" // compare the bearing and orientation here, and then set the current_rotate_dir state to 1 or 11 for left/right turns // that state being set to one of those values causes the additive turn anim to play, then the state is reset after that anim is finished on_timer_check_bearing = { this.orientation = GetOrientation(); this.bearing = GetAnimatedBearing(); this.angle_diff = bearing - orientation; this.angle_diff = Round( EvalIf( angle_diff > 180.0, angle_diff - 360.0, EvalIf( angle_diff < -180, angle_diff + 360.0, angle_diff ) ), 2 ); If( Or( And( angle_diff <= 1.0, angle_diff >= -1.0 ), GetCurrentMoveSpeed() > 1.0 ), (){ SetStateTo( current_rotate_dir, 0 ); } ); If( And( angle_diff > 1.0, GetCurrentMoveSpeed() < 1.0 ), (){ SetStateTo( current_rotate_dir, 1 ); } ); If( And( angle_diff < -1.0, GetCurrentMoveSpeed() < 1.0 ), (){ SetStateTo( current_rotate_dir, 2 ); } ); // Speed up the additive turn anims as the turn speed increases local angle_diff_clamped = Clamp( angle_diff, -100, 100 ); local scaling_factor = Eval( Abs( angle_diff_clamped ) / turn_speed_mult ); local layer_speed = Clamp( scaling_factor, 1.0, 10.0 ); // Log( 'Angle Diff: {angle_diff} | Layer Speed: {layer_speed}', c ); If( Abs( angle_diff_clamped ) < 15, () { layer_speed = layer_speed * Eval( Abs( angle_diff_clamped ) / 15 ); } ); SetLayerAnimationSpeed( 9, layer_speed ); SetLayerAnimationSpeed( 10, layer_speed ); StartStateTimer( check_bearing ); } // if current_rotate_dir is 0, it means the monster isn't turning so fade out the additive turns on_state_current_rotate_dir_0 = { FadeAnimations( 9, 0.2 ); FadeAnimations( 10, 0.2 ); } // play a different additive turn anim for different turn directions and velocity on_state_current_rotate_dir_1 = { FadeAnimations( 10, 0.2 ); PlayAdditiveAnimation( turn_01_right, 9 ); } on_state_current_rotate_dir_2 = { FadeAnimations( 9, 0.2 ); PlayAdditiveAnimation( turn_01_left, 10 ); } } /* ------------------------------------------------------------------------------------------------------------------- */ /* All the attachment ruckus */ /* ------------------------------------------------------------------------------------------------------------------- */ BaseEvents { on_construction_complete = { this.hover_craft = GetAttachedAOByType( 'Metadata/Monsters/DoryaniMechSuit/Hovercraft.ao' ); this.l_arm_front = GetAttachedAOByType( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftLArmFront.ao' ); this.r_arm_front = GetAttachedAOByType( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftRArmFront.ao' ); this.l_arm_back = GetAttachedAOByType( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftLArmBack.ao' ); this.r_arm_back = GetAttachedAOByType( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftRArmBack.ao' ); // coils need to be attached here so I can have a reference to each one this.coil_1 = hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', R_coil_jntBnd_1 ); this.coil_2 = hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', R_coil_jntBnd_2 ); this.coil_3 = hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', R_coil_jntBnd_3 ); this.coil_4 = hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', L_coil_jntBnd_1 ); this.coil_5 = hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', L_coil_jntBnd_2 ); this.coil_6 = hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', L_coil_jntBnd_3 ); } } Functions { detach_hover_craft = { If( IsAlive(), () { this.doryani_boss.hover_craft = doryani_boss.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/Hovercraft.ao', ground ); this.doryani_boss.l_arm_front = doryani_boss.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftLArmFront.ao', ground ); this.doryani_boss.r_arm_front = doryani_boss.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftRArmFront.ao', ground ); this.doryani_boss.l_arm_back = doryani_boss.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftLArmBack.ao', ground ); this.doryani_boss.r_arm_back = doryani_boss.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftRArmBack.ao', ground ); doryani_boss.coil_1 = doryani_boss.hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', R_coil_jntBnd_1 ); doryani_boss.coil_2 = doryani_boss.hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', R_coil_jntBnd_2 ); doryani_boss.coil_3 = doryani_boss.hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', R_coil_jntBnd_3 ); doryani_boss.coil_4 = doryani_boss.hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', L_coil_jntBnd_1 ); doryani_boss.coil_5 = doryani_boss.hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', L_coil_jntBnd_2 ); doryani_boss.coil_6 = doryani_boss.hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', L_coil_jntBnd_3 ); doryani_boss.PlayAnimationAttached( 'Metadata/Monsters/DoryaniMechSuit/Hovercraft.ao', floating_idle_01 ); doryani_boss.PlayAnimationAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftLArmBack.ao', floating_idle_01 ); doryani_boss.PlayAnimationAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftRArmBack.ao', floating_idle_01 ); doryani_boss.PlayAnimationAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftLArmFront.ao', floating_idle_01 ); doryani_boss.PlayAnimationAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftRArmFront.ao', floating_idle_01 ); // without the delay here, the particles of the thruster epk don't show up Delay( 0.5, { doryani_boss.AddEffectPackAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/epk/hovercraft_thrusters.epk', 'Metadata/Monsters/DoryaniMechSuit/Hovercraft.ao' ); } ); } ); DetachAO( hover_craft ); DetachAO( l_arm_front ); DetachAO( r_arm_front ); DetachAO( l_arm_back ); DetachAO( r_arm_back ); } attach_hover_craft = { this.hover_craft = AddAttached( 'Metadata/Monsters/DoryaniMechSuit/Hovercraft.ao',); this.l_arm_front = AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftLArmFront.ao', ); this.r_arm_front = AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftRArmFront.ao', ); this.l_arm_back = AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftLArmBack.ao', ); this.r_arm_back = AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftRArmBack.ao', ); // coils need to be attached here so I can have a reference to each one this.coil_1 = hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', R_coil_jntBnd_1 ); this.coil_2 = hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', R_coil_jntBnd_2 ); this.coil_3 = hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', R_coil_jntBnd_3 ); this.coil_4 = hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', L_coil_jntBnd_1 ); this.coil_5 = hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', L_coil_jntBnd_2 ); this.coil_6 = hover_craft.AddAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftCoil.ao', L_coil_jntBnd_3 ); PlayAnimationAttached( 'Metadata/Monsters/DoryaniMechSuit/Hovercraft.ao', attach_platform_01 ); PlayAnimationAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftLArmBack.ao', attach_platform_01 ); PlayAnimationAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftRArmBack.ao', attach_platform_01 ); PlayAnimationAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftLArmFront.ao', attach_platform_01 ); PlayAnimationAttached( 'Metadata/Monsters/DoryaniMechSuit/attachments/HovercraftRArmFront.ao', attach_platform_01 ); /* PlayAnimationAttached( 'Metadata/Monsters/Doryani/TrueDoryani/TrueDoryani.ao', mech_attach_platform_01 ); */ doryani_boss.DetachAO( hover_craft ); doryani_boss.DetachAO( l_arm_front ); doryani_boss.DetachAO( r_arm_front ); doryani_boss.DetachAO( l_arm_back ); doryani_boss.DetachAO( r_arm_back ); } } StateMachine { create_state_hover_crafting_1 = { Delay( 0.0, { Call( detach_hover_craft ); } ); } } /* ------------------------------------------------------------------------------------------------------------------- */ /* Preload */ /* ------------------------------------------------------------------------------------------------------------------- */ Preload { preload_epk = "Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/epk/hovercraft_thrusters.epk" preload_monster_variety = "Metadata/Monsters/DoryaniMechSuit/DoryaniMechRailGun" preload_object = "Metadata/Monsters/DoryaniMechSuit/DoryaniMechZapTarget" } /* ------------------------------------------------------------------------------------------------------------------- */ /* Lightning Cage */ /* ------------------------------------------------------------------------------------------------------------------- */ StateMachine { on_state_pylons_active_1 = { Delay( Random( 0.1, 0.5 ), { coil_1.Do( () { PlayAnimation( activate_01 ); QueueAnimation( idle_active_01 ); } ); } ); Delay( Random( 0.1, 0.5 ), { coil_2.Do( () { PlayAnimation( activate_01 ); QueueAnimation( idle_active_01 ); } ); } ); Delay( Random( 0.1, 0.5 ), { coil_3.Do( () { PlayAnimation( activate_01 ); QueueAnimation( idle_active_01 ); } ); } ); Delay( Random( 0.1, 0.5 ), { coil_4.Do( () { PlayAnimation( activate_01 ); QueueAnimation( idle_active_01 ); } ); } ); Delay( Random( 0.1, 0.5 ), { coil_5.Do( () { PlayAnimation( activate_01 ); QueueAnimation( idle_active_01 ); } ); } ); Delay( Random( 0.1, 0.5 ), { coil_6.Do( () { PlayAnimation( activate_01 ); QueueAnimation( idle_active_01 ); } ); } ); Delay( 0.5, { this.lightning_ring = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/lightning_cage.ao', root_jntBnd ); } ); } create_state_pylons_active_1 = { coil_1.QueueAnimation( idle_active_01 ); coil_2.QueueAnimation( idle_active_01 ); coil_3.QueueAnimation( idle_active_01 ); coil_4.QueueAnimation( idle_active_01 ); coil_5.QueueAnimation( idle_active_01 ); coil_6.QueueAnimation( idle_active_01 ); this.lightning_ring = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/lightning_cage.ao', root_jntBnd ); } on_state_pylons_active_0 = { Delay( Random( 0.1, 0.5 ), { coil_1.Do( () { PlayAnimation( deactivate_01 ); QueueAnimation( idle_deactive_01 ); } ); } ); Delay( Random( 0.1, 0.5 ), { coil_2.Do( () { PlayAnimation( deactivate_01 ); QueueAnimation( idle_deactive_01 ); } ); } ); Delay( Random( 0.1, 0.5 ), { coil_3.Do( () { PlayAnimation( deactivate_01 ); QueueAnimation( idle_deactive_01 ); } ); } ); Delay( Random( 0.1, 0.5 ), { coil_4.Do( () { PlayAnimation( deactivate_01 ); QueueAnimation( idle_deactive_01 ); } ); } ); Delay( Random( 0.1, 0.5 ), { coil_5.Do( () { PlayAnimation( deactivate_01 ); QueueAnimation( idle_deactive_01 ); } ); } ); Delay( Random( 0.1, 0.5 ), { coil_6.Do( () { PlayAnimation( deactivate_01 ); QueueAnimation( idle_deactive_01 ); } ); } ); lightning_ring.PlayAnimation( end ); Delay( 1.0, { DetachAO( lightning_ring ); } ); } } /* ------------------------------------------------------------------------------------------------------------------- */ /* Ice Laser/Corrupt Ice Laser */ /* ------------------------------------------------------------------------------------------------------------------- */ StateMachine { on_state_ice_laser_0 = { ice_laser.PlayAnimation( end ); } on_state_ice_laser_1 = { this.ice_laser = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/coldbeam.ao', ice_laser_attachment ); ice_laser.PlayAnimation( start ); ice_laser.QueueAnimation( loop ); } create_state_ice_laser_1 = { this.ice_laser = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/coldbeam.ao', ice_laser_attachment ); ice_laser.PlayAnimation( loop ); } on_state_ice_laser_90_0 = { ice_laser.PlayAnimation( end ); } on_state_ice_laser_90_1 = { this.ice_laser = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/coldbeam.ao', ice_laser90_attachment ); ice_laser.PlayAnimation( start ); ice_laser.QueueAnimation( loop ); } create_state_ice_laser_90_1 = { this.ice_laser = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/coldbeam.ao', ice_laser90_attachment ); ice_laser.PlayAnimation( loop ); } on_state_corr_ice_laser_0 = { DetachAllOfType( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/coldbeam_corr.ao' ); } on_state_corr_ice_laser_1 = { this.corr_ice_laser = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/coldbeam_corr.ao', ice_laser_attachment ); corr_ice_laser.PlayAnimation( start ); corr_ice_laser.QueueAnimation( loop ); } create_state_corr_ice_laser_1 = { this.corr_ice_laser = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/coldbeam_corr.ao', ice_laser_attachment ); corr_ice_laser.PlayAnimation( loop ); } on_state_corr_ice_laser_2 = { corr_ice_laser.PlayAnimation( swell ); } create_state_corr_ice_laser_2 = { this.corr_ice_laser = AddAttached( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/coldbeam_corr.ao', ice_laser_attachment ); corr_ice_laser.PlayAnimation( swell ); } } /* ------------------------------------------------------------------------------------------------------------------- */ /* Combat Dialogue */ /* ------------------------------------------------------------------------------------------------------------------- */ Actor { on_effect_start_GSDoryaniCrabFrostLaser90Left = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechClawLaser_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " on_effect_start_GSDoryaniCrabFrostLaser = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechClawLaser_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " on_effect_start_EDADoryaniCrabClawSlam = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechSlam_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " on_effect_start_GSDoryaniCrabBrazierSlam = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechSlam_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " on_effect_start_GADoryaniCrabBodySlam = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechBodySlam_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " on_effect_start_GSDoryaniCrabDiscoLazer = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechDiscoLaser_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " on_effect_start_GSDoryaniCrabFlamethrower = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechFlamethrower_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " on_effect_start_GSDoryaniCrabFlamethrower90Right = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechFlamethrower_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " on_effect_start_GSDoryaniCrabFlamethrowerCorrupt = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechFlamethrower_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " on_effect_start_EASDoryaniCrabLightningCage = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechLightningStorm_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " on_effect_start_EASDoryaniCrabLightningCageCorrupt = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechLightningStorm_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " on_effect_start_EASDoryaniCrabExplode = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechSelfDestruct_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechReassemble_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast', 6000 ); } ); " on_effect_start_EASDoryaniCrabPlatformDetach = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechDetatchPlatform_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " on_effect_start_EAADoryaniCrabLegToss = " Roll( 1, 1, () { globals.doryanis_voicebox.PlayTextAudio( DoryaniPastBoss_MechSpiderLegAttack_Random, 'Metadata/Monsters/Doryani/DoryaniInThePast/DoryaniPast' ); } ); " }
-- src\Data\Spectres.lua minions["Metadata/Monsters/DoryaniMechSuit/DoryaniMechMap"] = { name = "Doryani's Triumph", life = 3.6, fireResist = 0, coldResist = 0, lightningResist = 0, chaosResist = 0, damage = 4.5, damageSpread = 0.2, attackTime = 1.005, attackRange = 41, accuracy = 1, skillList = { "MeleeAtAnimationSpeedUnique", "MASDoryaniCrabSweep180", "MPADoryaniCrabLegToss", "MPSDoryaniCrabLightningCage", "GADoryaniCrabBodySlam", "GADoryaniCrabExplode", "GADoryaniCrabExplodeSmash", "GSDoryaniCrabBrazierSlam", "GSDoryaniCrabDiscoLazer", "GSDoryaniCrabFlamethrower", "GSDoryaniCrabFlamethrower90Right", "GSDoryaniCrabFlamethrowerCorrupt", "GSDoryaniCrabFrostLaser", "GSDoryaniCrabFrostLaser90Left", "GSDoryaniCrabFrostLaserCorrupt", "GSDoryaniCrabLegProjImpact", "GADoryaniCrabLegProjImpactWall", "GADoryaniCrabSlamCold", "GADoryaniCrabSlamFire", "GADoryaniCrabComboSlamBasic", "GADoryaniCrabIceLaserSnap", "EASDoryaniCrabExplode", "EASDoryaniCrabLightningCage", "EASDoryaniCrabPlatformAttach", "EASDoryaniCrabPlatformDetach", "EAADoryaniCrabLegToss", "EAADoryaniCrabComboSlam", "EDADoryaniCrabClawSlam", }, modList = { }, } -- src\Data\Skills\spectre.lua skills["MeleeAtAnimationSpeedUnique"] = { 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 = { "monster_penalty_against_minions_damage_+%_final_vs_player_minions", "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] = {100, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["MASDoryaniCrabSweep180"] = { 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_+", "active_skill_base_physical_damage_%_to_convert_to_cold", "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", "action_do_not_face_target", "skill_does_not_pathfind", }, levels = { [1] = {33, 30, baseMultiplier = 1.3, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["MPADoryaniCrabLegToss"] = { name = "MPADoryaniCrabLegToss", 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", "base_is_projectile", "projectile_uses_contact_position", "action_attack_or_cast_time_uses_animation_length", "base_deal_no_damage", "projectile_ballistic_angle_from_target_distance", }, levels = { [1] = {1136, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["MPSDoryaniCrabLightningCage"] = { name = "MPSDoryaniCrabLightningCage", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Spell] = true, [SkillType.Projectile] = true, [SkillType.ProjectilesFromUser] = true, [SkillType.Triggerable] = true, [SkillType.Damage] = true, }, statDescriptionScope = "skill_stat_descriptions", castTime = 1, baseFlags = { spell = true, projectile = true, }, baseMods = { }, qualityStats = { }, stats = { "spell_minimum_base_lightning_damage", "spell_maximum_base_lightning_damage", "monster_projectile_variation", "number_of_additional_projectiles", "projectile_spread_radius", "active_skill_projectile_speed_+%_variation_final", "shock_chance_+%", "base_is_projectile", }, levels = { [1] = {0.5, 1.5, 1138, 2, 40, 20, 60, critChance = 6, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GADoryaniCrabBodySlam"] = { name = "GADoryaniCrabBodySlam", 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 = { "voll_slam_damage_+%_final_at_centre", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {40, baseMultiplier = 2, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GADoryaniCrabExplode"] = { name = "GADoryaniCrabExplode", 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", "voll_slam_damage_+%_final_at_centre", "shock_chance_+%", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {0.5, 1.5, 20, 500, critChance = 6, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GADoryaniCrabExplodeSmash"] = { name = "GADoryaniCrabExplodeSmash", 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 = { "voll_slam_damage_+%_final_at_centre", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {40, baseMultiplier = 3, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSDoryaniCrabBrazierSlam"] = { name = "GSDoryaniCrabBrazierSlam", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Spell] = true, [SkillType.Damage] = true, }, statDescriptionScope = "geometry_spell", castTime = 1, baseFlags = { spell = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "spell_minimum_base_fire_damage", "spell_maximum_base_fire_damage", "ignite_chance_+%", "voll_slam_damage_+%_final_at_centre", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {0.80000001192093, 1.2000000476837, 100, 40, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSDoryaniCrabDiscoLazer"] = { name = "GSDoryaniCrabDiscoLazer", 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", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "action_do_not_face_target", "skill_does_not_pathfind", }, levels = { [1] = {0.5, 1.5, critChance = 6, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSDoryaniCrabFlamethrower"] = { name = "GSDoryaniCrabFlamethrower", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Spell] = true, [SkillType.Damage] = true, }, statDescriptionScope = "geometry_spell", castTime = 1, baseFlags = { spell = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "spell_minimum_base_fire_damage", "spell_maximum_base_fire_damage", "ignite_chance_+%", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "action_do_not_face_target", "skill_does_not_pathfind", "base_skill_can_be_avoided_by_dodge_roll", "base_skill_can_be_blocked", "base_skill_cannot_be_parried", }, levels = { [1] = {0.80000001192093, 1.2000000476837, 50, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSDoryaniCrabFlamethrower90Right"] = { name = "GSDoryaniCrabFlamethrower90Right", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Spell] = true, [SkillType.Damage] = true, }, statDescriptionScope = "geometry_spell", castTime = 1, baseFlags = { spell = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "spell_minimum_base_fire_damage", "spell_maximum_base_fire_damage", "ignite_chance_+%", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "action_do_not_face_target", "skill_does_not_pathfind", "base_skill_can_be_avoided_by_dodge_roll", "base_skill_can_be_blocked", "base_skill_cannot_be_parried", }, levels = { [1] = {0.80000001192093, 1.2000000476837, 50, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSDoryaniCrabFlamethrowerCorrupt"] = { name = "GSDoryaniCrabFlamethrowerCorrupt", 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_minimum_base_fire_damage_per_removable_endurance_charge", "spell_maximum_base_fire_damage", "shock_chance_+%", "ignite_chance_+%", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "action_do_not_face_target", "skill_does_not_pathfind", "base_skill_can_be_avoided_by_dodge_roll", "base_skill_can_be_blocked", "base_skill_cannot_be_parried", }, levels = { [1] = {0.25, 0.75, 0.40000000596046, 0.60000002384186, 300, 50, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3, 3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSDoryaniCrabFrostLaser"] = { name = "GSDoryaniCrabFrostLaser", 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_cold_damage", "spell_maximum_base_cold_damage", "active_skill_area_of_effect_radius_+%_final", "base_skill_effect_duration", "ground_ice_art_variation", "active_skill_chill_effect_+%_final", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "action_do_not_face_target", "skill_does_not_pathfind", "base_skill_can_be_avoided_by_dodge_roll", "base_skill_can_be_blocked", }, levels = { [1] = {0.80000001192093, 1.2000000476837, 0, 7000, 1007, 350, critChance = 7, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSDoryaniCrabFrostLaser90Left"] = { name = "GSDoryaniCrabFrostLaser90Left", 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_cold_damage", "spell_maximum_base_cold_damage", "active_skill_area_of_effect_radius_+%_final", "base_skill_effect_duration", "ground_ice_art_variation", "active_skill_chill_effect_+%_final", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "action_do_not_face_target", "skill_does_not_pathfind", "base_skill_can_be_avoided_by_dodge_roll", "base_skill_can_be_blocked", }, levels = { [1] = {0.80000001192093, 1.2000000476837, 0, 7000, 1007, 350, critChance = 7, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSDoryaniCrabFrostLaserCorrupt"] = { name = "GSDoryaniCrabFrostLaserCorrupt", 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_cold_damage", "spell_maximum_base_cold_damage", "active_skill_area_of_effect_radius_+%_final", "base_skill_effect_duration", "ground_ice_art_variation", "active_skill_chill_effect_+%_final", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "action_do_not_face_target", "skill_does_not_pathfind", "base_skill_can_be_avoided_by_dodge_roll", "base_skill_can_be_blocked", }, levels = { [1] = {0.80000001192093, 1.2000000476837, 0, 7000, 1007, 350, critChance = 7, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GSDoryaniCrabLegProjImpact"] = { name = "GSDoryaniCrabLegProjImpact", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Spell] = true, [SkillType.Damage] = true, }, statDescriptionScope = "geometry_spell", castTime = 1, baseFlags = { spell = true, area = true, projectile = true, }, baseMods = { }, qualityStats = { }, stats = { "spell_minimum_base_lightning_damage", "spell_maximum_base_lightning_damage", "shock_chance_+%", "spell_maximum_action_distance_+%", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "base_is_projectile", }, levels = { [1] = {0.5, 1.5, 100, 100, critChance = 6, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GADoryaniCrabLegProjImpactWall"] = { name = "GADoryaniCrabLegProjImpactWall", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Attack] = true, }, statDescriptionScope = "skill_stat_descriptions", castTime = 1, baseFlags = { attack = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {critChance = 6, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GADoryaniCrabSlamCold"] = { name = "GADoryaniCrabSlamCold", 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 = { "active_skill_base_physical_damage_%_to_convert_to_cold", "voll_slam_damage_+%_final_at_centre", "active_skill_area_of_effect_radius_+%_final", "base_skill_effect_duration", "ground_ice_art_variation", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {70, 50, 0, 4000, 1007, baseMultiplier = 1.85, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GADoryaniCrabSlamFire"] = { name = "GADoryaniCrabSlamFire", 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 = { "active_skill_base_physical_damage_%_to_convert_to_fire", "voll_slam_damage_+%_final_at_centre", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {70, 50, baseMultiplier = 1.85, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GADoryaniCrabComboSlamBasic"] = { name = "GADoryaniCrabComboSlamBasic", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Attack] = true, }, statDescriptionScope = "skill_stat_descriptions", castTime = 1, baseFlags = { attack = true, area = true, }, baseMods = { }, qualityStats = { }, stats = { "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {baseMultiplier = 0.8, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["GADoryaniCrabIceLaserSnap"] = { name = "GADoryaniCrabIceLaserSnap", 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_area_of_effect_radius_+%_final", "base_skill_effect_duration", "ground_ice_art_variation", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {0.5, 1.5, 0, 4000, 1007, critChance = 6, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["EASDoryaniCrabExplode"] = { name = "EASDoryaniCrabExplode", 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", "action_do_not_face_target", "skill_does_not_pathfind", }, levels = { [1] = {levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["EASDoryaniCrabLightningCage"] = { name = "EASDoryaniCrabLightningCage", 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", "action_do_not_face_target", "skill_does_not_pathfind", }, levels = { [1] = {levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["EASDoryaniCrabPlatformAttach"] = { name = "EASDoryaniCrabPlatformAttach", 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["EASDoryaniCrabPlatformDetach"] = { name = "EASDoryaniCrabPlatformDetach", 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["EAADoryaniCrabLegToss"] = { name = "EAADoryaniCrabLegToss", 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", "action_do_not_face_target", "skill_does_not_pathfind", }, levels = { [1] = {80, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, } -- src\Data\Skills\spectre.lua skills["EAADoryaniCrabComboSlam"] = { name = "EAADoryaniCrabComboSlam", 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["EDADoryaniCrabClawSlam"] = { name = "EDADoryaniCrabClawSlam", 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 = { "active_skill_base_physical_damage_%_to_convert_to_cold", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", }, levels = { [1] = {65, levelRequirement = 1, statInterpolation = {}, cost = { }, }, }, }
เพิ่มโอกาสสร้างสถานะ ช็อค 100%
active skill ignite effect +% final [33]
Id | EndgameBossIgniteShockBonus |
---|---|
Family | DoryaniEndgameIgniteShock |
Domains | Monster (3) |
GenerationType | ยูนิค (3) |
Req. level | 1 |
Stats |
monster dropped item rarity +% [4800]
monster slain experience +% [0]
Id | MonsterUniqueT3Boss |
---|---|
Family | MonsterActBoss |
Domains | Monster (3) |
GenerationType | ยูนิค (3) |
Req. level | 1 |
Stats |
ไม่ถูก ผลักออกไป
Id | ImmuneToKnockback |
---|---|
Family | ImmuneToKnockback |
Domains | Monster (3) |
GenerationType | ยูนิค (3) |
Req. level | 1 |
Stats |
monster dropped item quantity +% [800]
monster dropped item rarity +% [3200]
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 | Monster (3) |
GenerationType | ยูนิค (3) |
Req. level | 1 |
Stats |
เครื่องฉลองชัยของดอร์ยานี


no movement speed [1]
Doryani's Triumph
Spectre | N |
---|---|
Tags | construct, mud_blood, not_dex, not_int, slow_movement |
พลังชีวิต
480%
ค่าเกราะ
+60%
ค่าต้านทาน




Damage
450%
ความแม่นยำ
100%
ปะทะคริติคอล Chance
5%
โบนัสความเสียหายคริติคอล
+30%
Attack Distance
7 ~ 41
1.005 Second
Damage Spread
±20%
ค่าประสบการณ์
300%
Model Size
100%
Type
DoryaniMech
Metadata
DoryaniMechRailGun
The following values do not include map affix bonuses, monster buff bonuses, altar bonuses, atlas skill bonuses.
เลือก เลเวลมอนสเตอร์
เลเวล
68
พลังชีวิต
37,234
ค่าเกราะ
3,861
อัตราการหลบหลีก
477
Damage
1,049
ความเสียหายเวท
1,049
ความแม่นยำ
2,180
1.005
ค่าประสบการณ์
85,902
Minion Life
33,264
Minion Damage
4,359
Minion Armour
6,756
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).
GSDoryaniCrabLegProjImpact
Triggerable, Spell, Damage
โอกาสปะทะคริติคอล: 6%
สร้างความเสียหาย สายฟ้า 621.8 ถึง 1865
สกิลที่เสริม มีโอกาสสร้างสถานะ ช็อค เพิ่มขึ้น 100%
action attack or cast time uses animation length [1]
base is projectile [1]
is area damage [1]
spell maximum action distance +% [100]
Object Type
version 2 extends "Metadata/Monsters/Monster" Positioned { object_size = 0 blocking = false } Functions { update_target = { SetTarget( arg1, 1 ); } } StateMachine { define_shared_state = "fade_out;" }
Object Type Codes
version 2 extends "Metadata/Monsters/Monster" BaseEvents { on_construction_complete = { AddNamedTask( TargetTiltTracker ); } } StateMachine { on_or_create_state_fade_out_1 = { AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/epk/legs_dissolve.epk' ); } } Preload { preload_epk = "Metadata/Effects/Spells/monsters_effects/Act3_FOUR/Doryani/epk/legs_dissolve.epk" }
-- src\Data\Spectres.lua minions["Metadata/Monsters/DoryaniMechSuit/DoryaniMechRailGun"] = { name = "Doryani's Triumph", life = 4.8, fireResist = 0, coldResist = 0, lightningResist = 0, chaosResist = 0, damage = 4.5, damageSpread = 0.2, attackTime = 1.005, attackRange = 41, accuracy = 1, skillList = { "GSDoryaniCrabLegProjImpact", }, modList = { }, } -- src\Data\Skills\spectre.lua skills["GSDoryaniCrabLegProjImpact"] = { name = "GSDoryaniCrabLegProjImpact", hidden = true, color = , baseEffectiveness = 0, incrementalEffectiveness = 0, skillTypes = { [SkillType.Triggerable] = true, [SkillType.Spell] = true, [SkillType.Damage] = true, }, statDescriptionScope = "geometry_spell", castTime = 1, baseFlags = { spell = true, area = true, projectile = true, }, baseMods = { }, qualityStats = { }, stats = { "spell_minimum_base_lightning_damage", "spell_maximum_base_lightning_damage", "shock_chance_+%", "spell_maximum_action_distance_+%", "is_area_damage", "action_attack_or_cast_time_uses_animation_length", "base_is_projectile", }, levels = { [1] = {0.5, 1.5, 100, 100, critChance = 6, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, }, }, }
no movement speed [1]
Id | StanceSalmon |
---|---|
Family | Stance |
Domains | Monster (3) |
GenerationType | ยูนิค (3) |
Req. level | 1 |
Stats |
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.