Ekbab, Ancient Steed
monster dropped item rarity +% [2700]
monster slain experience +% [0]
unique monster guarantee one rare [0]
monster slain flask charges granted +% [-50]
SpectreN
AreaThe Bone Pits, The Bone Pits
Tagsbeast, construct, medium_movement, melee, MonsterBlunt_onhit_audio, physical_affinity, undead
Life
150%
Ailment Threshold
%
Resistance
0 0 0 0
Damage
270%
Accuracy
100%
Critical Strike Chance
+5%
Critical Strike Multiplier
+130%
Attack Distance
6 ~ 25
Attack Time
2.145 Second
Damage Spread
±20%
Experience
250%
Model Size
100%
Type
MastodonBoss
Metadata
MastodonBoss
Level
54
Life
5,712
Armour
1,486
Evasion
323
Energy Shield
0
Damage
401
Spell Damage
401
Accuracy
0
Attack Time
2.145
Experience
27,493
Melee
Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
Basic Attack
Base Damage: 321–481
[Critical|Critical Hit] Chance: 5%
Attack Time: 2.145 sec
skill can fire wand projectiles [1]
MastodonCharge
Attack, Melee, MeleeSingleTarget, Movement, Travel
Shield Charge
Base Damage: 321–481
[Critical|Critical Hit] Chance: 5%
Attack Time: 2.145 sec
Cooldown Time: 10 sec
Charges at an enemy, bashing it with the character's shield and striking it. This knocks it back and stuns it. Enemies in the way are pushed to the side. Damage and stun are proportional to distance travelled. Cannot be supported by Multistrike.
75% increased Movement Speed
base deal no damage [1]
ignores proximity shield [1]
shield charge continue past target [1]
shield charge extra distance [100]
MastodonSlam
Cooldown Time: 3 sec
Deals 70% more Attack Damage
+25 to Melee Strike Range
action attack or cast time uses animation length [1]
action do not face target [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [150]
MastodonAttackLeftTurn
Cooldown Time: 3.25 sec
Cannot be Knocked Back
Your Hits cannot Stun Enemies
+10 to Melee Strike Range
action attack or cast time uses animation length [1]
action do not face target [1]
melee defer damage prediction [1]
MastodonAttackRightTurn
Cooldown Time: 3.25 sec
Cannot be Knocked Back
Your Hits cannot Stun Enemies
+10 to Melee Strike Range
action attack or cast time uses animation length [1]
action do not face target [1]
melee defer damage prediction [1]
MastodonSlamBackTurn
Attack
Base Damage: 321–481
[Critical|Critical Hit] Chance: 5%
Attack Time: 2.145 sec
Cooldown Time: 4.25 sec
Cannot be Knocked Back
Your Hits cannot Stun Enemies
+20 to Melee Strike Range
action attack or cast time uses animation length [1]
action do not face target [1]
active skill base area of effect radius [100]
brutus ground slam effect step [400]
brutus ground slam number of effects at max [4]
brutus ground slam number of effects at min [2]
ground slam cone angle override [45]
ground slam wave duration override ms [1400]
melee defer damage prediction [1]
GTMastodonSpikes
Triggerable
MastodonCreateSpike
Triggerable
MastodonLeftTurn
Cooldown Time: 3.25 sec
action do not face target [1]
MastodonRightTurn
Cooldown Time: 3.25 sec
action do not face target [1]
MastodonSlamTriggered
Triggerable, Attack
Base Damage: 321–481
[Critical|Critical Hit] Chance: 5%
Attack Damage: 170%
Attack Time: 2.145 sec
Deals 70% more Attack Damage
MastodonSlamComboLeftTurn
Cooldown Time: 3.25 sec
Cannot be Knocked Back
Your Hits cannot Stun Enemies
+10 to Melee Strike Range
action attack or cast time uses animation length [1]
action do not face target [1]
melee defer damage prediction [1]
MastodonSlamComboRightTurn
Cooldown Time: 3.25 sec
Cannot be Knocked Back
Your Hits cannot Stun Enemies
+10 to Melee Strike Range
action attack or cast time uses animation length [1]
action do not face target [1]
melee defer damage prediction [1]
MastodonDualSwipe
Cooldown Time: 3.25 sec
action attack or cast time uses animation length [1]
action do not face target [1]
melee defer damage prediction [1]
GAMastodonLeftShape
Triggerable, Attack
Base Damage: 321–481
[Critical|Critical Hit] Chance: 5%
Attack Damage: 140%
Attack Time: 2.145 sec
Deals 40% more Attack Damage
monster penalty against minions damage +% final vs player minions [150]
GAMastodonRightShape
Triggerable, Attack
Base Damage: 321–481
[Critical|Critical Hit] Chance: 5%
Attack Damage: 140%
Attack Time: 2.145 sec
Deals 40% more Attack Damage
monster penalty against minions damage +% final vs player minions [150]
MastodonAttackRightTurnHalf
Cooldown Time: 3.25 sec
Cannot be Knocked Back
Your Hits cannot Stun Enemies
+10 to Melee Strike Range
action attack or cast time uses animation length [1]
action do not face target [1]
melee defer damage prediction [1]
MastodonAttackLeftTurnHalf
Cooldown Time: 3.25 sec
Cannot be Knocked Back
Your Hits cannot Stun Enemies
+10 to Melee Strike Range
action attack or cast time uses animation length [1]
action do not face target [1]
melee defer damage prediction [1]
GAMastodonChargeShape
Triggerable, Attack
Base Damage: 321–481
[Critical|Critical Hit] Chance: 5%
Attack Damage: 140%
Attack Time: 2.145 sec
Deals 40% more Attack Damage
monster penalty against minions damage +% final vs player minions [50]
GAMastodonSlamImpact
Triggerable, Attack
Base Damage: 321–481
[Critical|Critical Hit] Chance: 5%
Attack Damage: 170%
Attack Time: 2.145 sec
Deals 70% more Attack Damage
is area damage [1]
monster penalty against minions damage +% final vs player minions [150]

Object Type

version 2
extends "Metadata/Monsters/Monster"
extends "Metadata/Monsters/BossBase"

Positioned
{
	blocking = false
}

StateMachine
{
	define_shared_state =
	"
		spawnritual;
		mastodondeath;
		necromancerdeath;
		epks;
		shieldcharge;
	"
}

//need to trigger aura for enrage on partners deaths
Actor
{
	basic_action = "Emerge"

	on_event_contact_for_Emerge =
	"
		SetStateTo( spawnritual, 1 );
		summoners.SetStateTo( spawnritual, 1 );
		summonerboss.SetStateTo( spawnritual, 1 );
	"
}

Transitionable {}

ControlZone
{
}

Functions
{
	fix_orientation =
	"
		/* arg1 doesn't exist by the time AddOnActionEnd happens so needs to be put somewhere */
		this.temp_anim_orientation = arg1;
		AddOnActionEnd(
		{
			SetOrientation( GetOrientation() + temp_anim_orientation, false, true );
			PlayAnimationType( Idle, 1.0, 0, 0 );
            this.temp_anim_orientation = null;
		}, true );
	"
}

Stats
{
	set_monster_delay_item_drops_millis = 750
	set_base_heavy_stun_duration_ms = 4933
}

BaseEvents
{
	on_construction_complete = "globals.MastodonBoss = this;"
}

Brackets
{
	
}

Object Type Codes

version 2
extends "Metadata/Monsters/Monster"
extends "Metadata/Monsters/BossBase"

StateMachine
{
	create_state_spawnritual_0 = "DisableTargetable();"

	on_state_spawnritual_1 =
	"
		EnableTargetable();
		SetStaticLifeBarVisibilty( True );
		AddAttachedObjectToBones( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/ao/mastadon_light.ao', root );
		PlayAnimationAttached( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/ao/mastadon_light.ao', fadein );
		QueueAnimationAttached( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/ao/mastadon_light.ao', idle );
	"

	create_state_spawnritual_1 =
	"
		AddAttachedObjectToBones( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/ao/mastadon_light.ao', root );
		PlayAnimationAttached( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/ao/mastadon_light.ao', idle );
		Delay( 0.1, { SetStaticLifeBarVisibilty( True ); } );
	"

	on_or_create_state_epks_2 = "/*		RemoveEffectPack( Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/mastadon_idle.epk );*/
/*		IfAlive( { AddEffectPack( Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/mastaton_idle_02.epk ); } );*/
"
	on_or_create_state_epks_1 = "AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/mastaton_idle_02.epk' );"

	on_state_epks_0 =
	"
		PlayAnimationAttached( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/ao/mastadon_light.ao', fadeout );
		AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/mastadon_death.epk' );
		RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/mastaton_idle_02.epk' );
		RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/mastaton_idle_02.epk' );
		DetachAllOfType( 'Metadata/Monsters/MastodonBoss/attachments/EngravedConstructDanglesHeld.ao' );
	"

	on_or_create_state_shieldcharge_0 =
	"
		RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/charge_start.epk' );
		RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/charge_idle.epk' );
		RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/charge_end.epk' );
	"

	on_or_create_state_shieldcharge_1 = "AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/charge_start.epk' );"

	on_or_create_state_shieldcharge_2 =
	"
		AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/charge_idle.epk' );
		RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/charge_start.epk' );
	"

	on_or_create_state_shieldcharge_3 =
	"
		AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/charge_end.epk' );
		RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/charge_idle.epk' );
		RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/charge_idle.epk' );
	"
}

BaseEvents
{
	on_construction_complete =
	"
		HideMeshSegment( bandagesShape );
		HideMeshSegment( TentaclesShape );
	"
}

Animated
{
	on_event_show_segment_for_emerge_01 =
	"
		ShowMeshSegment( bandagesShape );
		ShowMeshSegment( TentaclesShape );
	"

	on_event_hide_segment_for_death_01 =
	"
		HideMeshSegment( bandagesShape );
		HideMeshSegment( TentaclesShape );
		ShowMeshSegments( Tentacles_split1Shape, Tentacles_split2Shape );
	"
}

Actor
{
	on_event_footstep1_for_ShieldCharge = "PlayEffect( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/ao/mastadon_stomp.ao', default, 1.0, inherit, 0.0, inherit, 165, -60, 0, SelfLocation );"
	on_event_footstep2_for_ShieldCharge = "PlayEffect( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/ao/mastadon_stomp.ao', default, 1.0, inherit, 0.0, inherit, 165, 60, 0, SelfLocation );"
}

Transitionable
{
	create_untransitioned =
	"
		IfAlive( ()
		{
			PlayAnimation( emerge_01 );
			PauseAnimation();
		} );
	"
}

Life
{
	on_death = 
	"
		SetStaticLifeBarVisibilty( false );
		IfState( necromancerdeath, 1,
		{
			TriggerBracket( arena_sector_destruction, GetState( arena_sector_id ) );
		} );
	"
}

Preload
{
	preload_animated_object = "Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/ao/prefight.ao"
	preload_environment = "G2_5_boss"
}

Render
{
	use_ao_lights = true
}

GlobalAudioParamEvents
{
	player_in_range_param = "MastodonInRange"
	life_percent_param = "MastodonLifePercentage"
	range = 130
}
-- src\Data\Spectres.lua
minions["Metadata/Monsters/MastodonBoss/MastodonBoss"] = {
    name = "Ekbab, Ancient Steed",
    life = 1.5,
    fireResist = 0,
    coldResist = 0,
    lightningResist = 0,
    chaosResist = 0,
    damage = 2.7,
    damageSpread = 0.2,
    attackTime = 2.145,
    attackRange = 25,
    accuracy = 1,
    skillList = {
        "Melee",
        "GAMastodonSlamImpact",
        "MastodonCharge",
        "MastodonSlam",
        "MastodonAttackLeftTurn",
        "MastodonAttackRightTurn",
        "MastodonSlamBackTurn",
        "MastodonSlamComboLeftTurn",
        "MastodonSlamComboRightTurn",
        "MastodonAttackLeftTurnHalf",
        "MastodonAttackRightTurnHalf",
        "MastodonDualSwipe",
        "MastodonCreateSpike",
        "GTMastodonSpikes",
        "MastodonLeftTurn",
        "MastodonRightTurn",
        "MastodonSlamTriggered",
        "GAMastodonLeftShape",
        "GAMastodonRightShape",
        "GAMastodonChargeShape",
    },
    modList = {
    },
}
-- src\Data\Skills\spectre.lua
skills["Melee"] = {
    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.Multistrikeable] = true,
        [SkillType.Melee] = true,
        [SkillType.ProjectilesFromUser] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        melee = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "skill_can_fire_arrows",
        "skill_can_fire_wand_projectiles",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["GAMastodonSlamImpact"] = {
    name = "GAMastodonSlamImpact",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Attack] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        area = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
        "is_area_damage",
    },
    levels = {
        [1] = {150, baseMultiplier = 1.7, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MastodonCharge"] = {
    name = "Shield Charge",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    description = "Charges at an enemy, bashing it with the character's shield and striking it. This knocks it back and stuns it. Enemies in the way are pushed to the side. Damage and stun are proportional to distance travelled. Cannot be supported by Multistrike.",
    skillTypes = {
        [SkillType.Attack] = true,
        [SkillType.Melee] = true,
        [SkillType.MeleeSingleTarget] = true,
        [SkillType.Movement] = true,
        [SkillType.Travel] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        melee = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "base_movement_velocity_+%",
        "shield_charge_extra_distance",
        "ignores_proximity_shield",
        "shield_charge_continue_past_target",
        "base_deal_no_damage",
    },
    levels = {
        [1] = {75, 100, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MastodonSlam"] = {
    name = "MastodonSlam",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 2,
    baseFlags = {
        area = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "melee_range_+",
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
        "action_attack_or_cast_time_uses_animation_length",
        "is_area_damage",
        "action_do_not_face_target",
    },
    levels = {
        [1] = {25, 150, baseMultiplier = 1.7, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MastodonAttackLeftTurn"] = {
    name = "MastodonAttackLeftTurn",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1.6,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "melee_range_+",
        "melee_defer_damage_prediction",
        "action_attack_or_cast_time_uses_animation_length",
        "action_do_not_face_target",
        "cannot_stun",
        "cannot_be_knocked_back",
    },
    levels = {
        [1] = {10, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MastodonAttackRightTurn"] = {
    name = "MastodonAttackRightTurn",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1.6,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "melee_range_+",
        "melee_defer_damage_prediction",
        "action_attack_or_cast_time_uses_animation_length",
        "action_do_not_face_target",
        "cannot_stun",
        "cannot_be_knocked_back",
    },
    levels = {
        [1] = {10, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MastodonSlamBackTurn"] = {
    name = "MastodonSlamBackTurn",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Attack] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 2,
    baseFlags = {
        attack = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "melee_range_+",
        "active_skill_base_area_of_effect_radius",
        "ground_slam_cone_angle_override",
        "ground_slam_wave_duration_override_ms",
        "brutus_ground_slam_effect_step",
        "brutus_ground_slam_number_of_effects_at_max",
        "brutus_ground_slam_number_of_effects_at_min",
        "melee_defer_damage_prediction",
        "action_attack_or_cast_time_uses_animation_length",
        "action_do_not_face_target",
        "cannot_stun",
        "cannot_be_knocked_back",
    },
    levels = {
        [1] = {20, 100, 45, 1400, 400, 4, 2, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MastodonSlamComboLeftTurn"] = {
    name = "MastodonSlamComboLeftTurn",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 3,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "melee_range_+",
        "melee_defer_damage_prediction",
        "action_attack_or_cast_time_uses_animation_length",
        "action_do_not_face_target",
        "cannot_stun",
        "cannot_be_knocked_back",
    },
    levels = {
        [1] = {10, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MastodonSlamComboRightTurn"] = {
    name = "MastodonSlamComboRightTurn",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 3,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "melee_range_+",
        "melee_defer_damage_prediction",
        "action_attack_or_cast_time_uses_animation_length",
        "action_do_not_face_target",
        "cannot_stun",
        "cannot_be_knocked_back",
    },
    levels = {
        [1] = {10, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MastodonAttackLeftTurnHalf"] = {
    name = "MastodonAttackLeftTurnHalf",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1.6,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "melee_range_+",
        "melee_defer_damage_prediction",
        "action_attack_or_cast_time_uses_animation_length",
        "action_do_not_face_target",
        "cannot_stun",
        "cannot_be_knocked_back",
    },
    levels = {
        [1] = {10, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MastodonAttackRightTurnHalf"] = {
    name = "MastodonAttackRightTurnHalf",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1.6,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "melee_range_+",
        "melee_defer_damage_prediction",
        "action_attack_or_cast_time_uses_animation_length",
        "action_do_not_face_target",
        "cannot_stun",
        "cannot_be_knocked_back",
    },
    levels = {
        [1] = {10, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MastodonDualSwipe"] = {
    name = "MastodonDualSwipe",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 3.2,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "melee_defer_damage_prediction",
        "action_attack_or_cast_time_uses_animation_length",
        "action_do_not_face_target",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MastodonCreateSpike"] = {
    name = "MastodonCreateSpike",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["GTMastodonSpikes"] = {
    name = "GTMastodonSpikes",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MastodonLeftTurn"] = {
    name = "MastodonLeftTurn",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1.6,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "action_do_not_face_target",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MastodonRightTurn"] = {
    name = "MastodonRightTurn",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1.6,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "action_do_not_face_target",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MastodonSlamTriggered"] = {
    name = "MastodonSlamTriggered",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Attack] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
    },
    levels = {
        [1] = {baseMultiplier = 1.7, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["GAMastodonLeftShape"] = {
    name = "GAMastodonLeftShape",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Attack] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
    },
    levels = {
        [1] = {150, baseMultiplier = 1.4, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["GAMastodonRightShape"] = {
    name = "GAMastodonRightShape",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Attack] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
    },
    levels = {
        [1] = {150, baseMultiplier = 1.4, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["GAMastodonChargeShape"] = {
    name = "GAMastodonChargeShape",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Attack] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
    },
    levels = {
        [1] = {50, baseMultiplier = 1.4, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
monster dropped item rarity +% [2700]
monster slain experience +% [0]
unique monster guarantee one rare [0]
IdMonsterUniqueT2Boss
FamilyMonsterActBoss
DomainsMonster (3)
GenerationTypeUnique (3)
Req. level1
Stats
  • monster slain experience +% Min: 0 Max: 0 Global
  • monster dropped item rarity +% Min: 2700 Max: 2700 Global
  • unique monster guarantee one rare Min: 0 Max: 0 Global
  • monster slain flask charges granted +% [-50]
    IdMonsterReducedFlaskCharges50Percent
    FamilyMonsterSlainFlaskCharges
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • monster slain flask charges granted +% Min: -50 Max: -50 Global
  • Craft Tagsflask
    Ekbab, Ancient Steed
    monster dropped item rarity +% [2700]
    monster slain experience +% [0]
    unique monster guarantee one rare [0]
    monster slain flask charges granted +% [-50]
    SpectreN
    Tagsbeast, construct, medium_movement, melee, MonsterBlunt_onhit_audio, physical_affinity, undead
    Life
    150%
    Ailment Threshold
    %
    Resistance
    0 0 0 0
    Damage
    270%
    Accuracy
    100%
    Critical Strike Chance
    +5%
    Critical Strike Multiplier
    +130%
    Attack Distance
    6 ~ 25
    Attack Time
    2.145 Second
    Damage Spread
    ±20%
    Experience
    250%
    Model Size
    100%
    Type
    MastodonBoss
    Metadata
    MastodonBossCorrupted
    Level
    68
    Life
    11,636
    Armour
    3,451
    Evasion
    477
    Energy Shield
    0
    Damage
    629
    Spell Damage
    629
    Accuracy
    0
    Attack Time
    2.145
    Experience
    71,585
    Melee
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 504–755
    [Critical|Critical Hit] Chance: 5%
    Attack Time: 2.145 sec
    skill can fire wand projectiles [1]
    MastodonCharge
    Attack, Melee, MeleeSingleTarget, Movement, Travel
    Shield Charge
    Base Damage: 504–755
    [Critical|Critical Hit] Chance: 5%
    Attack Time: 2.145 sec
    Cooldown Time: 10 sec
    Charges at an enemy, bashing it with the character's shield and striking it. This knocks it back and stuns it. Enemies in the way are pushed to the side. Damage and stun are proportional to distance travelled. Cannot be supported by Multistrike.
    75% increased Movement Speed
    base deal no damage [1]
    ignores proximity shield [1]
    shield charge continue past target [1]
    shield charge extra distance [100]
    MastodonSlam
    Cooldown Time: 3 sec
    Deals 70% more Attack Damage
    +25 to Melee Strike Range
    action attack or cast time uses animation length [1]
    action do not face target [1]
    is area damage [1]
    monster penalty against minions damage +% final vs player minions [150]
    MastodonAttackLeftTurn
    Cooldown Time: 3.25 sec
    Cannot be Knocked Back
    Your Hits cannot Stun Enemies
    +10 to Melee Strike Range
    action attack or cast time uses animation length [1]
    action do not face target [1]
    melee defer damage prediction [1]
    MastodonAttackRightTurn
    Cooldown Time: 3.25 sec
    Cannot be Knocked Back
    Your Hits cannot Stun Enemies
    +10 to Melee Strike Range
    action attack or cast time uses animation length [1]
    action do not face target [1]
    melee defer damage prediction [1]
    MastodonSlamBackTurn
    Attack
    Base Damage: 504–755
    [Critical|Critical Hit] Chance: 5%
    Attack Time: 2.145 sec
    Cooldown Time: 4.25 sec
    Cannot be Knocked Back
    Your Hits cannot Stun Enemies
    +20 to Melee Strike Range
    action attack or cast time uses animation length [1]
    action do not face target [1]
    active skill base area of effect radius [100]
    brutus ground slam effect step [400]
    brutus ground slam number of effects at max [4]
    brutus ground slam number of effects at min [2]
    ground slam cone angle override [45]
    ground slam wave duration override ms [1400]
    melee defer damage prediction [1]
    GTMastodonSpikes
    Triggerable
    MastodonCreateSpike
    Triggerable
    MastodonLeftTurn
    Cooldown Time: 3.25 sec
    action do not face target [1]
    MastodonRightTurn
    Cooldown Time: 3.25 sec
    action do not face target [1]
    MastodonSlamTriggered
    Triggerable, Attack
    Base Damage: 504–755
    [Critical|Critical Hit] Chance: 5%
    Attack Damage: 170%
    Attack Time: 2.145 sec
    Deals 70% more Attack Damage
    MastodonSlamComboLeftTurn
    Cooldown Time: 3.25 sec
    Cannot be Knocked Back
    Your Hits cannot Stun Enemies
    +10 to Melee Strike Range
    action attack or cast time uses animation length [1]
    action do not face target [1]
    melee defer damage prediction [1]
    MastodonSlamComboRightTurn
    Cooldown Time: 3.25 sec
    Cannot be Knocked Back
    Your Hits cannot Stun Enemies
    +10 to Melee Strike Range
    action attack or cast time uses animation length [1]
    action do not face target [1]
    melee defer damage prediction [1]
    MastodonDualSwipe
    Cooldown Time: 3.25 sec
    action attack or cast time uses animation length [1]
    action do not face target [1]
    melee defer damage prediction [1]
    GAMastodonLeftShape
    Triggerable, Attack
    Base Damage: 504–755
    [Critical|Critical Hit] Chance: 5%
    Attack Damage: 140%
    Attack Time: 2.145 sec
    Deals 40% more Attack Damage
    monster penalty against minions damage +% final vs player minions [150]
    GAMastodonRightShape
    Triggerable, Attack
    Base Damage: 504–755
    [Critical|Critical Hit] Chance: 5%
    Attack Damage: 140%
    Attack Time: 2.145 sec
    Deals 40% more Attack Damage
    monster penalty against minions damage +% final vs player minions [150]
    MastodonAttackRightTurnHalf
    Cooldown Time: 3.25 sec
    Cannot be Knocked Back
    Your Hits cannot Stun Enemies
    +10 to Melee Strike Range
    action attack or cast time uses animation length [1]
    action do not face target [1]
    melee defer damage prediction [1]
    MastodonAttackLeftTurnHalf
    Cooldown Time: 3.25 sec
    Cannot be Knocked Back
    Your Hits cannot Stun Enemies
    +10 to Melee Strike Range
    action attack or cast time uses animation length [1]
    action do not face target [1]
    melee defer damage prediction [1]
    GAMastodonChargeShape
    Triggerable, Attack
    Base Damage: 504–755
    [Critical|Critical Hit] Chance: 5%
    Attack Damage: 140%
    Attack Time: 2.145 sec
    Deals 40% more Attack Damage
    monster penalty against minions damage +% final vs player minions [50]

    Object Type

    version 2
    extends "Metadata/Monsters/Monster"
    extends "Metadata/Monsters/BossBase"
    
    Positioned
    {
    	blocking = false
    }
    
    StateMachine
    {
    	define_shared_state =
    	"
    		spawnritual;
    		mastodondeath;
    		necromancerdeath;
    		epks;
    		shieldcharge;
    	"
    }
    
    //need to trigger aura for enrage on partners deaths
    Actor
    {
    	basic_action = "Emerge"
    
    	on_event_contact_for_Emerge =
    	"
    		SetStateTo( spawnritual, 1 );
    		summoners.SetStateTo( spawnritual, 1 );
    		summonerboss.SetStateTo( spawnritual, 1 );
    	"
    }
    
    Transitionable {}
    
    ControlZone
    {
    }
    
    Functions
    {
    	fix_orientation =
    	"
    		/* arg1 doesn't exist by the time AddOnActionEnd happens so needs to be put somewhere */
    		this.temp_anim_orientation = arg1;
    		AddOnActionEnd(
    		{
    			SetOrientation( GetOrientation() + temp_anim_orientation, false, true );
    			PlayAnimationType( Idle, 1.0, 0, 0 );
                this.temp_anim_orientation = null;
    		}, true );
    	"
    }
    
    Stats
    {
    	set_monster_delay_item_drops_millis = 750
    	set_base_heavy_stun_duration_ms = 4933
    }
    
    BaseEvents
    {
    	on_construction_complete = "globals.MastodonBoss = this;"
    }
    
    Brackets
    {
    	
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    extends "Metadata/Monsters/BossBase"
    
    StateMachine
    {
    	create_state_spawnritual_0 = "DisableTargetable();"
    
    	on_state_spawnritual_1 =
    	"
    		EnableTargetable();
    		SetStaticLifeBarVisibilty( True );
    		AddAttachedObjectToBones( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/ao/mastadon_light.ao', root );
    		PlayAnimationAttached( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/ao/mastadon_light.ao', fadein );
    		QueueAnimationAttached( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/ao/mastadon_light.ao', idle );
    	"
    
    	create_state_spawnritual_1 =
    	"
    		AddAttachedObjectToBones( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/ao/mastadon_light.ao', root );
    		PlayAnimationAttached( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/ao/mastadon_light.ao', idle );
    		Delay( 0.1, { SetStaticLifeBarVisibilty( True ); } );
    	"
    
    	on_or_create_state_epks_2 = "/*		RemoveEffectPack( Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/mastadon_idle.epk );*/
    /*		IfAlive( { AddEffectPack( Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/mastaton_idle_02.epk ); } );*/
    "
    	on_or_create_state_epks_1 = "AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/mastaton_idle_02.epk' );"
    
    	on_state_epks_0 =
    	"
    		PlayAnimationAttached( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/ao/mastadon_light.ao', fadeout );
    		AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/mastadon_death.epk' );
    		RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/mastaton_idle_02.epk' );
    		RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/mastaton_idle_02.epk' );
    		DetachAllOfType( 'Metadata/Monsters/MastodonBoss/attachments/EngravedConstructDanglesHeld.ao' );
    	"
    
    	on_or_create_state_shieldcharge_0 =
    	"
    		RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/charge_start.epk' );
    		RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/charge_idle.epk' );
    		RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/charge_end.epk' );
    	"
    
    	on_or_create_state_shieldcharge_1 = "AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/charge_start.epk' );"
    
    	on_or_create_state_shieldcharge_2 =
    	"
    		AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/charge_idle.epk' );
    		RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/charge_start.epk' );
    	"
    
    	on_or_create_state_shieldcharge_3 =
    	"
    		AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/charge_end.epk' );
    		RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/charge_idle.epk' );
    		RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/epk/charge_idle.epk' );
    	"
    }
    
    BaseEvents
    {
    	on_construction_complete =
    	"
    		HideMeshSegment( bandagesShape );
    		HideMeshSegment( TentaclesShape );
    	"
    }
    
    Animated
    {
    	on_event_show_segment_for_emerge_01 =
    	"
    		ShowMeshSegment( bandagesShape );
    		ShowMeshSegment( TentaclesShape );
    	"
    
    	on_event_hide_segment_for_death_01 =
    	"
    		HideMeshSegment( bandagesShape );
    		HideMeshSegment( TentaclesShape );
    		ShowMeshSegments( Tentacles_split1Shape, Tentacles_split2Shape );
    	"
    }
    
    Actor
    {
    	on_event_footstep1_for_ShieldCharge = "PlayEffect( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/ao/mastadon_stomp.ao', default, 1.0, inherit, 0.0, inherit, 165, -60, 0, SelfLocation );"
    	on_event_footstep2_for_ShieldCharge = "PlayEffect( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/ao/mastadon_stomp.ao', default, 1.0, inherit, 0.0, inherit, 165, 60, 0, SelfLocation );"
    }
    
    Transitionable
    {
    	create_untransitioned =
    	"
    		IfAlive( ()
    		{
    			PlayAnimation( emerge_01 );
    			PauseAnimation();
    		} );
    	"
    }
    
    Life
    {
    	on_death = 
    	"
    		SetStaticLifeBarVisibilty( false );
    		IfState( necromancerdeath, 1,
    		{
    			TriggerBracket( arena_sector_destruction, GetState( arena_sector_id ) );
    		} );
    	"
    }
    
    Preload
    {
    	preload_animated_object = "Metadata/Effects/Spells/monsters_effects/Act2_FOUR/MastadonBoss/ao/prefight.ao"
    	preload_environment = "G2_5_boss"
    }
    
    Render
    {
    	use_ao_lights = true
    }
    
    GlobalAudioParamEvents
    {
    	player_in_range_param = "MastodonInRange"
    	life_percent_param = "MastodonLifePercentage"
    	range = 130
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/MastodonBoss/MastodonBossCorrupted"] = {
        name = "Ekbab, Ancient Steed",
        life = 1.5,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 2.7,
        damageSpread = 0.2,
        attackTime = 2.145,
        attackRange = 25,
        accuracy = 1,
        skillList = {
            "Melee",
            "MastodonCharge",
            "MastodonSlam",
            "MastodonAttackLeftTurn",
            "MastodonAttackRightTurn",
            "MastodonSlamBackTurn",
            "MastodonSlamComboLeftTurn",
            "MastodonSlamComboRightTurn",
            "MastodonAttackLeftTurnHalf",
            "MastodonAttackRightTurnHalf",
            "MastodonDualSwipe",
            "MastodonCreateSpike",
            "GTMastodonSpikes",
            "MastodonLeftTurn",
            "MastodonRightTurn",
            "MastodonSlamTriggered",
            "GAMastodonLeftShape",
            "GAMastodonRightShape",
            "GAMastodonChargeShape",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["Melee"] = {
        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.Multistrikeable] = true,
            [SkillType.Melee] = true,
            [SkillType.ProjectilesFromUser] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "skill_can_fire_arrows",
            "skill_can_fire_wand_projectiles",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MastodonCharge"] = {
        name = "Shield Charge",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Charges at an enemy, bashing it with the character's shield and striking it. This knocks it back and stuns it. Enemies in the way are pushed to the side. Damage and stun are proportional to distance travelled. Cannot be supported by Multistrike.",
        skillTypes = {
            [SkillType.Attack] = true,
            [SkillType.Melee] = true,
            [SkillType.MeleeSingleTarget] = true,
            [SkillType.Movement] = true,
            [SkillType.Travel] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
            melee = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "base_movement_velocity_+%",
            "shield_charge_extra_distance",
            "ignores_proximity_shield",
            "shield_charge_continue_past_target",
            "base_deal_no_damage",
        },
        levels = {
            [1] = {75, 100, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MastodonSlam"] = {
        name = "MastodonSlam",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 2,
        baseFlags = {
            area = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "melee_range_+",
            "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
            "action_attack_or_cast_time_uses_animation_length",
            "is_area_damage",
            "action_do_not_face_target",
        },
        levels = {
            [1] = {25, 150, baseMultiplier = 1.7, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MastodonAttackLeftTurn"] = {
        name = "MastodonAttackLeftTurn",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1.6,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "melee_range_+",
            "melee_defer_damage_prediction",
            "action_attack_or_cast_time_uses_animation_length",
            "action_do_not_face_target",
            "cannot_stun",
            "cannot_be_knocked_back",
        },
        levels = {
            [1] = {10, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MastodonAttackRightTurn"] = {
        name = "MastodonAttackRightTurn",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1.6,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "melee_range_+",
            "melee_defer_damage_prediction",
            "action_attack_or_cast_time_uses_animation_length",
            "action_do_not_face_target",
            "cannot_stun",
            "cannot_be_knocked_back",
        },
        levels = {
            [1] = {10, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MastodonSlamBackTurn"] = {
        name = "MastodonSlamBackTurn",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Attack] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 2,
        baseFlags = {
            attack = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "melee_range_+",
            "active_skill_base_area_of_effect_radius",
            "ground_slam_cone_angle_override",
            "ground_slam_wave_duration_override_ms",
            "brutus_ground_slam_effect_step",
            "brutus_ground_slam_number_of_effects_at_max",
            "brutus_ground_slam_number_of_effects_at_min",
            "melee_defer_damage_prediction",
            "action_attack_or_cast_time_uses_animation_length",
            "action_do_not_face_target",
            "cannot_stun",
            "cannot_be_knocked_back",
        },
        levels = {
            [1] = {20, 100, 45, 1400, 400, 4, 2, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MastodonSlamComboLeftTurn"] = {
        name = "MastodonSlamComboLeftTurn",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 3,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "melee_range_+",
            "melee_defer_damage_prediction",
            "action_attack_or_cast_time_uses_animation_length",
            "action_do_not_face_target",
            "cannot_stun",
            "cannot_be_knocked_back",
        },
        levels = {
            [1] = {10, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MastodonSlamComboRightTurn"] = {
        name = "MastodonSlamComboRightTurn",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 3,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "melee_range_+",
            "melee_defer_damage_prediction",
            "action_attack_or_cast_time_uses_animation_length",
            "action_do_not_face_target",
            "cannot_stun",
            "cannot_be_knocked_back",
        },
        levels = {
            [1] = {10, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MastodonAttackLeftTurnHalf"] = {
        name = "MastodonAttackLeftTurnHalf",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1.6,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "melee_range_+",
            "melee_defer_damage_prediction",
            "action_attack_or_cast_time_uses_animation_length",
            "action_do_not_face_target",
            "cannot_stun",
            "cannot_be_knocked_back",
        },
        levels = {
            [1] = {10, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MastodonAttackRightTurnHalf"] = {
        name = "MastodonAttackRightTurnHalf",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1.6,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "melee_range_+",
            "melee_defer_damage_prediction",
            "action_attack_or_cast_time_uses_animation_length",
            "action_do_not_face_target",
            "cannot_stun",
            "cannot_be_knocked_back",
        },
        levels = {
            [1] = {10, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MastodonDualSwipe"] = {
        name = "MastodonDualSwipe",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 3.2,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "melee_defer_damage_prediction",
            "action_attack_or_cast_time_uses_animation_length",
            "action_do_not_face_target",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MastodonCreateSpike"] = {
        name = "MastodonCreateSpike",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GTMastodonSpikes"] = {
        name = "GTMastodonSpikes",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MastodonLeftTurn"] = {
        name = "MastodonLeftTurn",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1.6,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "action_do_not_face_target",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MastodonRightTurn"] = {
        name = "MastodonRightTurn",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1.6,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "action_do_not_face_target",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MastodonSlamTriggered"] = {
        name = "MastodonSlamTriggered",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
            [SkillType.Attack] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
        },
        levels = {
            [1] = {baseMultiplier = 1.7, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GAMastodonLeftShape"] = {
        name = "GAMastodonLeftShape",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
            [SkillType.Attack] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
        },
        levels = {
            [1] = {150, baseMultiplier = 1.4, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GAMastodonRightShape"] = {
        name = "GAMastodonRightShape",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
            [SkillType.Attack] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
        },
        levels = {
            [1] = {150, baseMultiplier = 1.4, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GAMastodonChargeShape"] = {
        name = "GAMastodonChargeShape",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
            [SkillType.Attack] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            attack = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
        },
        levels = {
            [1] = {50, baseMultiplier = 1.4, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    
    monster dropped item rarity +% [2700]
    monster slain experience +% [0]
    unique monster guarantee one rare [0]
    IdMonsterUniqueT2Boss
    FamilyMonsterActBoss
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • monster slain experience +% Min: 0 Max: 0 Global
  • monster dropped item rarity +% Min: 2700 Max: 2700 Global
  • unique monster guarantee one rare Min: 0 Max: 0 Global
  • monster slain flask charges granted +% [-50]
    IdMonsterReducedFlaskCharges50Percent
    FamilyMonsterSlainFlaskCharges
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • monster slain flask charges granted +% Min: -50 Max: -50 Global
  • Craft Tagsflask