Triunfo de Doryani
Área: Las cámaras negras
monster dropped item rarity +% [14700]
monster slain experience +% [0]
unique monster guarantee one rare [1]
No puede ser empujado
monster slain experience +% [0]
unique monster guarantee one rare [1]
No puede ser empujado
Doryani's Triumph
Spectre | N |
---|---|
Area | Las cámaras negras, Las cámaras negras |
Tags | construct, MonsterBlunt_onhit_audio, mud_blood, not_dex, not_int, slow_movement |
Vida
360%
Armadura
+60%
Resistencia




Damage
450%
Precisión
100%
Impactos críticos Chance
5%
Bonificación de daño crítico
+30%
Attack Distance
7 ~ 41
Tiempo de ataque
1.005 Second
Damage Spread
±20%
Experiencia
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.
Nivel
64
Vida
22,331
Armadura
3,050
Evasión
429
Damage
926
Daño de hechizos
926
Precisión
1,910
Tiempo de ataque
1.005
Experiencia
63,483
Minion Life
20,776
Minion Damage
1,937
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
Ataque básico
Base Damage: 741–1111
Probabilidad de impacto crítico: 5%
Tiempo de ataque: 1.005 seg
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
Probabilidad de impacto crítico: 5%
Daño de ataque: 200%
Tiempo de ataque: 1.005 seg
Tiempo de recarga: 35 seg
Inflige un 100% más de daño de ataques
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
Probabilidad de impacto crítico: 5%
Tiempo de ataque: 1.005 seg
Tiempo de recarga: 20 seg
Convierte el 65% del daño físico en daño de hielo
action attack or cast time uses animation length [1]
is area damage [1]
GSDoryaniCrabBrazierSlam
Triggerable, Spell, Damage
Probabilidad de impacto crítico: 5%
Tiempo de lanzamiento: 1 seg
Tiempo de recarga: 15 seg
Probabilidad de quemar aumentada un 100%
Inflige de 676.9 a 1015 de daño de fuego
action attack or cast time uses animation length [1]
is area damage [1]
voll slam damage +% final at centre [40]
GSDoryaniCrabDiscoLazer
Triggerable, Spell, Damage
Probabilidad de impacto crítico: 6%
Tiempo de lanzamiento: 1 seg
Tiempo de recarga: 35 seg
Inflige de 42.3 a 126.9 de daño de rayo
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
Probabilidad de impacto crítico: 5%
Tiempo de lanzamiento: 1 seg
Tiempo de recarga: 35 seg
Probabilidad de quemar aumentada un 50%
Inflige de 121.8 a 182.8 de daño de fuego
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
Probabilidad de impacto crítico: 5%
Tiempo de lanzamiento: 1 seg
Tiempo de recarga: 35 seg
Probabilidad de quemar aumentada un 50%
Inflige de a de daño de fuego
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
Probabilidad de impacto crítico: 5%
Tiempo de lanzamiento: 1 seg
Tiempo de recarga: 35 seg
Probabilidad de quemar aumentada un 50%
Inflige de 84.61 a 253.8 de daño de rayo
Las habilidades asistidas tienen la probabilidad de electrocutar aumentada un 300%
action attack or cast time uses animation length [1]
action do not face target [1]
active skill base lightning damage % to convert to fire [20]
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
Probabilidad de impacto crítico: 7%
Tiempo de lanzamiento: 1 seg
Tiempo de recarga: 40 seg
Inflige de 67.69 a 101.5 de daño de hielo
350% más de magnitud del escarchamiento aplicado
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
Probabilidad de impacto crítico: 7%
Tiempo de lanzamiento: 1 seg
Tiempo de recarga: 40 seg
Inflige de a de daño de hielo
350% más de magnitud del escarchamiento aplicado
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
Probabilidad de impacto crítico: 7%
Tiempo de lanzamiento: 1 seg
Tiempo de recarga: 40 seg
Inflige de 67.69 a 101.5 de daño de hielo
350% más de magnitud del escarchamiento aplicado
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
Tiempo de recarga: 27.5 seg
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
Ataque básico
Base Damage: 741–1111
Probabilidad de impacto crítico: 5%
Daño de ataque: 130%
Tiempo de ataque: 1.005 seg
Tiempo de recarga: 15 seg
Inflige un 30% más de daño de ataques
Convierte el 30% del daño físico en daño de hielo
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
Tiempo de recarga: 45 seg
action attack or cast time uses animation length [1]
action do not face target [1]
skill does not pathfind [1]
EAADoryaniCrabComboSlam
Tiempo de recarga: 32.5 seg
action attack or cast time uses animation length [1]
EASDoryaniCrabExplode
Tiempo de recarga: 40 seg
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
Tiempo de recarga: 50 seg
action attack or cast time uses animation length [1]
MPADoryaniCrabLegToss
Attack, RangedAttack, MirageArcherCanUse, Projectile, ProjectilesFromUser, Damage, Triggerable
Base Damage: 741–1111
Probabilidad de impacto crítico: 5%
Tiempo de ataque: 1.005 seg
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
Probabilidad de impacto crítico: 6%
Tiempo de lanzamiento: 1 seg
Inflige de 549.9 a 1650 de daño de rayo
Las habilidades asistidas tienen la probabilidad de electrocutar aumentada un 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
Probabilidad de impacto crítico: 5%
Tiempo de ataque: 1.005 seg
action attack or cast time uses animation length [1]
is area damage [1]
GADoryaniCrabExplode
Triggerable, Spell, Damage
Probabilidad de impacto crítico: 6%
Tiempo de lanzamiento: 1 seg
Inflige de 211.5 a 634.6 de daño de rayo
Las habilidades asistidas tienen la probabilidad de electrocutar aumentada un 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
Probabilidad de impacto crítico: 5%
Daño de ataque: 300%
Tiempo de ataque: 1.005 seg
Inflige un 200% más de daño de ataques
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
Probabilidad de impacto crítico: 6%
Tiempo de lanzamiento: 1 seg
Inflige de 253.8 a 761.5 de daño de rayo
Las habilidades asistidas tienen la probabilidad de electrocutar aumentada un 60%
Dispara 2 proyectiles adicionales
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
Probabilidad de impacto crítico: 5%
Daño de ataque: 80%
Tiempo de ataque: 1.005 seg
Inflige un 20% menos de daño de ataques
action attack or cast time uses animation length [1]
is area damage [1]
GADoryaniCrabSlamCold
Triggerable, Attack
Base Damage: 741–1111
Probabilidad de impacto crítico: 5%
Daño de ataque: 185%
Tiempo de ataque: 1.005 seg
Inflige un 85% más de daño de ataques
Convierte el 70% del daño físico en daño de hielo
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
Probabilidad de impacto crítico: 5%
Daño de ataque: 185%
Tiempo de ataque: 1.005 seg
Inflige un 85% más de daño de ataques
Convierte el 70% del daño físico en daño de fuego
action attack or cast time uses animation length [1]
is area damage [1]
voll slam damage +% final at centre [50]
GADoryaniCrabIceLaserSnap
Triggerable, Spell, Damage
Probabilidad de impacto crítico: 6%
Tiempo de lanzamiento: 1 seg
Inflige de 507.6 a 1523 de daño de rayo
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 = 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", "shock_chance_+%", "active_skill_base_lightning_damage_%_to_convert_to_fire", "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.5, 1.5, 300, 20, 50, critChance = 5, levelRequirement = 1, statInterpolation = {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 +% [14700]
monster slain experience +% [0]
unique monster guarantee one rare [1]
Id | MonsterUniqueT3Boss |
---|---|
Family | MonsterActBoss |
Domains | Monster (3) |
GenerationType | Único (3) |
Req. level | 1 |
Stats |
No puede ser empujado
Id | ImmuneToKnockback |
---|---|
Family | ImmuneToKnockback |
Domains | Monster (3) |
GenerationType | Único (3) |
Req. level | 1 |
Stats |
Triunfo de Doryani


Área: La ciudadela de piedra
Probabilidad de electrocutar aumentada un 100%
active skill ignite effect +% final [33]
active skill ignite effect +% final [33]
monster dropped item rarity +% [14700]
monster slain experience +% [0]
unique monster guarantee one rare [1]
No puede ser empujado
monster dropped item quantity +% [800]
monster dropped item rarity +% [10000]
monster map key of at least same tier as current map drop chance % [25]
monster slain experience +% [9000]
unique monster guarantee one rare [1]
monster slain experience +% [0]
unique monster guarantee one rare [1]
No puede ser empujado
monster dropped item quantity +% [800]
monster dropped item rarity +% [10000]
monster map key of at least same tier as current map drop chance % [25]
monster slain experience +% [9000]
unique monster guarantee one rare [1]
Doryani's Triumph
Spectre | N |
---|---|
Area | La ciudadela de piedra |
Tags | construct, MonsterBlunt_onhit_audio, mud_blood, not_dex, not_int, slow_movement |
Vida
360%
Armadura
+100%
Resistencia




Damage
450%
Precisión
100%
Impactos críticos Chance
5%
Bonificación de daño crítico
+30%
Attack Distance
7 ~ 41
Tiempo de ataque
1.005 Second
Damage Spread
±20%
Experiencia
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.
Nivel
80
Vida
56,192
Armadura
9,606
Evasión
644
Damage
1,502
Daño de hechizos
1,502
Precisión
3,204
Tiempo de ataque
1.005
Experiencia
300,000
Minion Life
35,543
Minion Damage
4,031
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
Ataque básico
Base Damage: 1202–1802
Probabilidad de impacto crítico: 5%
Tiempo de ataque: 1.005 seg
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
Probabilidad de impacto crítico: 5%
Daño de ataque: 200%
Tiempo de ataque: 1.005 seg
Tiempo de recarga: 35 seg
Inflige un 100% más de daño de ataques
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
Probabilidad de impacto crítico: 5%
Tiempo de ataque: 1.005 seg
Tiempo de recarga: 20 seg
Convierte el 65% del daño físico en daño de hielo
action attack or cast time uses animation length [1]
is area damage [1]
GSDoryaniCrabBrazierSlam
Triggerable, Spell, Damage
Probabilidad de impacto crítico: 5%
Tiempo de lanzamiento: 1 seg
Tiempo de recarga: 15 seg
Probabilidad de quemar aumentada un 100%
Inflige de 1089 a 1634 de daño de fuego
action attack or cast time uses animation length [1]
is area damage [1]
voll slam damage +% final at centre [40]
GSDoryaniCrabDiscoLazer
Triggerable, Spell, Damage
Probabilidad de impacto crítico: 6%
Tiempo de lanzamiento: 1 seg
Tiempo de recarga: 35 seg
Inflige de 68.08 a 204.2 de daño de rayo
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
Probabilidad de impacto crítico: 5%
Tiempo de lanzamiento: 1 seg
Tiempo de recarga: 35 seg
Probabilidad de quemar aumentada un 50%
Inflige de 196.1 a 294.1 de daño de fuego
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
Probabilidad de impacto crítico: 5%
Tiempo de lanzamiento: 1 seg
Tiempo de recarga: 35 seg
Probabilidad de quemar aumentada un 50%
Inflige de a de daño de fuego
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
Probabilidad de impacto crítico: 5%
Tiempo de lanzamiento: 1 seg
Tiempo de recarga: 35 seg
Probabilidad de quemar aumentada un 50%
Inflige de 136.2 a 408.5 de daño de rayo
Las habilidades asistidas tienen la probabilidad de electrocutar aumentada un 300%
action attack or cast time uses animation length [1]
action do not face target [1]
active skill base lightning damage % to convert to fire [20]
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
Probabilidad de impacto crítico: 7%
Tiempo de lanzamiento: 1 seg
Tiempo de recarga: 40 seg
Inflige de 108.9 a 163.4 de daño de hielo
350% más de magnitud del escarchamiento aplicado
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
Probabilidad de impacto crítico: 7%
Tiempo de lanzamiento: 1 seg
Tiempo de recarga: 40 seg
Inflige de a de daño de hielo
350% más de magnitud del escarchamiento aplicado
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
Probabilidad de impacto crítico: 7%
Tiempo de lanzamiento: 1 seg
Tiempo de recarga: 40 seg
Inflige de 108.9 a 163.4 de daño de hielo
350% más de magnitud del escarchamiento aplicado
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
Tiempo de recarga: 27.5 seg
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
Ataque básico
Base Damage: 1202–1802
Probabilidad de impacto crítico: 5%
Daño de ataque: 130%
Tiempo de ataque: 1.005 seg
Tiempo de recarga: 15 seg
Inflige un 30% más de daño de ataques
Convierte el 30% del daño físico en daño de hielo
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
Tiempo de recarga: 45 seg
action attack or cast time uses animation length [1]
action do not face target [1]
skill does not pathfind [1]
EAADoryaniCrabComboSlam
Tiempo de recarga: 32.5 seg
action attack or cast time uses animation length [1]
EASDoryaniCrabExplode
Tiempo de recarga: 40 seg
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
Tiempo de recarga: 50 seg
action attack or cast time uses animation length [1]
MPADoryaniCrabLegToss
Attack, RangedAttack, MirageArcherCanUse, Projectile, ProjectilesFromUser, Damage, Triggerable
Base Damage: 1202–1802
Probabilidad de impacto crítico: 5%
Tiempo de ataque: 1.005 seg
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
Probabilidad de impacto crítico: 6%
Tiempo de lanzamiento: 1 seg
Inflige de 885 a 2655 de daño de rayo
Las habilidades asistidas tienen la probabilidad de electrocutar aumentada un 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
Probabilidad de impacto crítico: 5%
Tiempo de ataque: 1.005 seg
action attack or cast time uses animation length [1]
is area damage [1]
GADoryaniCrabExplode
Triggerable, Spell, Damage
Probabilidad de impacto crítico: 6%
Tiempo de lanzamiento: 1 seg
Inflige de 340.4 a 1021 de daño de rayo
Las habilidades asistidas tienen la probabilidad de electrocutar aumentada un 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
Probabilidad de impacto crítico: 5%
Daño de ataque: 300%
Tiempo de ataque: 1.005 seg
Inflige un 200% más de daño de ataques
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
Probabilidad de impacto crítico: 6%
Tiempo de lanzamiento: 1 seg
Inflige de 408.5 a 1225 de daño de rayo
Las habilidades asistidas tienen la probabilidad de electrocutar aumentada un 60%
Dispara 2 proyectiles adicionales
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
Probabilidad de impacto crítico: 5%
Daño de ataque: 80%
Tiempo de ataque: 1.005 seg
Inflige un 20% menos de daño de ataques
action attack or cast time uses animation length [1]
is area damage [1]
GADoryaniCrabSlamCold
Triggerable, Attack
Base Damage: 1202–1802
Probabilidad de impacto crítico: 5%
Daño de ataque: 185%
Tiempo de ataque: 1.005 seg
Inflige un 85% más de daño de ataques
Convierte el 70% del daño físico en daño de hielo
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
Probabilidad de impacto crítico: 5%
Daño de ataque: 185%
Tiempo de ataque: 1.005 seg
Inflige un 85% más de daño de ataques
Convierte el 70% del daño físico en daño de fuego
action attack or cast time uses animation length [1]
is area damage [1]
voll slam damage +% final at centre [50]
GADoryaniCrabIceLaserSnap
Triggerable, Spell, Damage
Probabilidad de impacto crítico: 6%
Tiempo de lanzamiento: 1 seg
Inflige de 816.9 a 2451 de daño de rayo
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", "shock_chance_+%", "active_skill_base_lightning_damage_%_to_convert_to_fire", "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.5, 1.5, 300, 20, 50, critChance = 5, levelRequirement = 1, statInterpolation = {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 = { }, }, }, }
Probabilidad de electrocutar aumentada un 100%
active skill ignite effect +% final [33]
Id | EndgameBossIgniteShockBonus |
---|---|
Family | DoryaniEndgameIgniteShock |
Domains | Monster (3) |
GenerationType | Único (3) |
Req. level | 1 |
Stats |
monster dropped item rarity +% [14700]
monster slain experience +% [0]
unique monster guarantee one rare [1]
Id | MonsterUniqueT3Boss |
---|---|
Family | MonsterActBoss |
Domains | Monster (3) |
GenerationType | Único (3) |
Req. level | 1 |
Stats |
No puede ser empujado
Id | ImmuneToKnockback |
---|---|
Family | ImmuneToKnockback |
Domains | Monster (3) |
GenerationType | Único (3) |
Req. level | 1 |
Stats |
monster dropped item quantity +% [800]
monster dropped item rarity +% [10000]
monster map key of at least same tier as current map drop chance % [25]
monster slain experience +% [9000]
unique monster guarantee one rare [1]
Id | MonsterMapBossT3 |
---|---|
Family | MonsterMapBoss |
Domains | Monster (3) |
GenerationType | Único (3) |
Req. level | 1 |
Stats |
Triunfo de Doryani
no movement speed [1]
Doryani's Triumph
Spectre | N |
---|---|
Tags | construct, mud_blood, not_dex, not_int, slow_movement |
Vida
360%
Armadura
+60%
Resistencia




Damage
450%
Precisión
100%
Impactos críticos Chance
5%
Bonificación de daño crítico
+30%
Attack Distance
7 ~ 41
Tiempo de ataque
1.005 Second
Damage Spread
±20%
Experiencia
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.
Nivel
68
Vida
27,925
Armadura
3,861
Evasión
477
Damage
1,049
Daño de hechizos
1,049
Precisión
2,180
Tiempo de ataque
1.005
Experiencia
85,902
Minion Life
23,872
Minion Damage
2,337
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
Probabilidad de impacto crítico: 6%
Tiempo de lanzamiento: 1 seg
Inflige de 621.8 a 1865 de daño de rayo
Las habilidades asistidas tienen la probabilidad de electrocutar aumentada un 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 = 3.6, 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 | Único (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.