Asinia, the Praetor's Consort
monster dropped item rarity +% [2700]
monster slain experience +% [0]
unique monster guarantee one rare [0]
SpectreN
AreaTomb of the Consort
Tags1HSword_onhit_audio, ghost_blood, humanoid, not_dex, skeleton, slow_movement, undead
Life
175%
Energy Shield From Life
20%
Armour
+75%
Ailment Threshold
%
Resistance
0 30 0 0
Damage
300%
Accuracy
100%
Critical Strike Chance
+5%
Critical Strike Multiplier
+130%
Attack Distance
5 ~ 15
Attack Time
1.5 Second
Damage Spread
±20%
Experience
250%
Model Size
140%
Type
WifeMonster
Metadata
WifeMonster
Level
8
Life
91
Armour
32
Evasion
35
Energy Shield
0
Damage
53
Spell Damage
53
Accuracy
0
Attack Time
1.5
Experience
188
MeleeAtAnimationSpeedUnique
Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
Basic Attack
Base Damage: 42–64
[Critical|Critical Hit] Chance: 5%
Attack Time: 1.5 sec
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]
GSWifeMonsterDelayedBlast
Triggerable, Spell, Damage
Critical Strike Chance: 5%
Cast Time: 1 sec
Deals 28.08 to 42.11 Physical Damage
action attack or cast time uses animation length [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [100]
GSWifeMonsterDelayedBlastLarge
Triggerable, Spell, Damage
Critical Strike Chance: 5%
Cast Time: 1 sec
Deals 87.74 to 131.6 Physical Damage
action attack or cast time uses animation length [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [80]
MMSWifeMonsterSpiritMortar
Projectile, ProjectilesFromUser, Spell, Damage, Area, Trappable, Totemable, Mineable, Multicastable, Triggerable, AreaSpell
Critical Strike Chance: 5%
Cast Time: 1 sec
Generic monster mortar skill. Like Monster Projectile but has an impact effect.
Deals 17.55 to 26.32 Physical Damage
Converts 60% of Physical Damage to Fire Damage
action attack or cast time uses animation length [1]
base is projectile [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [40]
projectile spread radius [10]
projectile uses contact position [1]
spell maximum action distance +% [0]
use scaled contact offset [1]
WifeMonsterComboAttack
Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
Basic Attack
Base Damage: 42–64
[Critical|Critical Hit] Chance: 5%
Attack Damage: 80%
Attack Time: 1.5 sec
Cooldown Time: 5 sec
Deals 20% less Attack Damage
Knock Enemies Back on Hit
action attack or cast time uses animation length [1]
attack maximum action distance + [15]
determine knockback direction from melee pattern [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]
GTWifeMonsterUnstableProj
Triggerable
Cooldown Time: 13 sec
action attack or cast time uses animation length [1]
EASWifeMonsterBodySwap
Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
Basic Attack
Base Damage: 42–64
[Critical|Critical Hit] Chance: 5%
Attack Time: 1.5 sec
Cooldown Time: 8.5 sec
action attack or cast time uses animation length [1]
EASWifeMonsterDelayedBlast
Cooldown Time: 16 sec
action attack or cast time uses animation length [1]
GSHusbandPurge
Triggerable, Spell, Damage
Cast Time: 1 sec
base deal no damage over time [1]
is area damage [1]
CGEWifeGhostflameBurning
Spell, Area, Damage, Triggerable, Duration, AreaSpell
Cast Time: 1 sec
Deals 16.5 Base Fire Damage per second
active skill area of effect radius +% final [-40]
base skill effect duration [10000]
ground fire art variation [1016]
EASWifeUnstableProjectiles
action attack or cast time uses animation length [1]
EASWifeMonsterBoneWallStorm
action attack or cast time uses animation length [1]
GSWifeMonsterBoneCone
Triggerable, Spell, Damage
Critical Strike Chance: 5%
Cast Time: 1 sec
Cooldown Time: 10 sec
Deals 24.57 to 36.85 Physical Damage
action attack or cast time uses animation length [1]
active skill area of effect radius +% final [50]
base skill can be avoided by dodge roll [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [100]
spell maximum action distance +% [-45]
SSMWifeMonsterBoneWall
Spell, Multicastable, Triggerable
Cast Time: 1 sec
action attack or cast time uses animation length [1]
alternate minion [1052]
monster no drops or experience [1]
number of monsters to summon [1]
summon specific monsters radius +% [-99]
summoned monsters are minions [1]
GTWifeMonsterBoneWall
Triggerable
Cooldown Time: 20 sec
action attack or cast time uses animation length [1]
GTWifeMonsterBoneWallStorm
Triggerable
action attack or cast time uses animation length [1]
GSWifeMonsterBoneStorm
Triggerable, Spell, Damage
Critical Strike Chance: 5%
Cast Time: 1 sec
Deals 28.08 to 42.11 Physical Damage
action attack or cast time uses animation length [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [30]
EASWifeSummon90
action attack or cast time uses animation length [1]
GSWifeBossSlow
Triggerable, Spell, Damage
Cast Time: 1 sec
Deals 0.62163344926306 to 0.93245019705223 Physical Damage
action attack or cast time uses animation length [1]
base skill effect duration [5000]
is area damage [1]

Object Type

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

StateMachine
{
	define_shared_state = "spirits; max; souls;"
}

Stats
{
	set_monster_delay_item_drops_millis = 3500
}

Object Type Codes

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

Render
{
	use_ao_lights = true
	light_starts_disabled = true
}

GlobalAudioParamEvents
{
	player_in_range_param = "WifeInRange"
	life_percent_param = "WifeLifePercentage"
	range = 130
}

StateMachine
{
	create_state_light_0 = "DisableLight();"

	create_state_light_1 =
	"
		Delay( 0.01, { EnableLight(); } );
	"

	on_state_light_0 = "FadeOutLight( 1.0 );"
	on_state_light_1 = "FadeInLight( 6.0 );"
	on_state_light_2 = "SetLightState( dim, 2 );"
	create_state_light_2 = "SetLightState( dim );"
	on_or_create_state_spirits_1 = "AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/HusbandBoss/epk/powerup.epk' );"
	on_or_create_state_spirits_0 = "RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/HusbandBoss/epk/powerup.epk' );"

	on_change_state_spirits =
	"
		this.soul_intensity = 2.0 + GetState( spirits );
		Call( update_soul_states, soul_intensity );
	"
}

Render
{
	selection_size_override = "140, 140, 200"
}

Functions
{
	update_soul_states =
	"
		this.effect_values = arg1;
		effect_values += arg1;
		effect_values += 0.0;
		effect_values += 0.0;
	"
}

Actor
{
	on_effect_event_dialogue_for_CTS1BossFightStart = 
	"		
		local player = GetLocalPlayer();
		local succeeded;
		this.player_ascendancy = player.GetAscendancyName();
		If( Or( player_ascendancy == 'Druid', player_ascendancy == 'Druid1', player_ascendancy == 'Druid2', player_ascendancy == 'Druid3' ),
		{
			PlayTextAudio( WifeBoss_Emerge_Ezomyte, 'Metadata/Monsters/WifeMonster/WifeMonster', 600 );
			succeeded = true;
		} );
		If( Or( player_ascendancy == 'Warrior', player_ascendancy == 'Warrior1', player_ascendancy == 'Warrior2', player_ascendancy == 'Warrior3' ),
		{
			PlayTextAudio( WifeBoss_Emerge_Karui_Random, 'Metadata/Monsters/WifeMonster/WifeMonster', 900 );
			succeeded = true;
		} );
		If( Or( player_ascendancy == 'Marauder', player_ascendancy == 'Marauder1', player_ascendancy == 'Marauder2', player_ascendancy == 'Marauder3' ),
		{
			PlayTextAudio( WifeBoss_Emerge_Karui_Random, 'Metadata/Monsters/WifeMonster/WifeMonster', 900  );
			succeeded = true;
		} );
		If( Or( player_ascendancy == 'Sorceress', player_ascendancy == 'Sorceress1', player_ascendancy == 'Sorceress2', player_ascendancy == 'Sorceress3' ),
		{
			PlayTextAudio( WifeBoss_Emerge_Sorc, 'Metadata/Monsters/WifeMonster/WifeMonster', 1300 );
			succeeded = true;
		} );
		If( Or( player_ascendancy == 'Witch', player_ascendancy == 'Witch1', player_ascendancy == 'Witch2', player_ascendancy == 'Witch3' ),
		{
			PlayTextAudio( WifeBoss_Emerge_Witch, 'Metadata/Monsters/WifeMonster/WifeMonster', 100 );
			succeeded = true;
		} );
		If( Or( player_ascendancy == 'Templar', player_ascendancy == 'Templar1', player_ascendancy == 'Templar2', player_ascendancy == 'Templar3' ),
		{
			PlayTextAudio( WifeBoss_Emerge_Templar, 'Metadata/Monsters/WifeMonster/WifeMonster', 1500 );
			succeeded = true;
		} );
		If( !VariableExists( succeeded ), ()
		{
			PlayTextAudio( WifeBoss_Emerge_Other, 'Metadata/Monsters/WifeMonster/WifeMonster', 1500 );
		} );
	"

	on_effect_start_EASWifeMonsterBodySwap =
	"
		Roll( 1, 2, ()
		{
			PlayTextAudio( WifeBoss_Swap_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
		} );
	"

	on_effect_start_WifeMonsterComboAttack =
	"
		Roll( 1, 2, ()
		{
			PlayTextAudio( WifeBoss_Combo_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
		} );
	"

	on_effect_start_EASWifeMonsterDelayedBlast =
	"
		Roll( 1, 1, ()
		{
			PlayTextAudio( WifeBoss_DelayedBlast_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
		} );
	"

	on_effect_start_GTWifeMonsterUnstableProj =
	"
		Roll( 1, 1, ()
		{
			PlayTextAudio( WifeBoss_Explode_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
		} );
	"

	on_effect_start_GTWifeMonsterBoneWall =
	"
		Roll( 1, 1, ()
		{
			PlayTextAudio( WifeBoss_BoneWall_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
		} );
	"

	on_effect_start_GSWifeMonsterBoneCone =
	"
		Roll( 1, 1, ()
		{
			PlayTextAudio( WifeBoss_Attack_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
		} );
	"

}

Functions
{
	call_husband =
	"
		Roll( 1, 1, ()
		{
			PlayTextAudio( WifeBoss_Summon_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
		} );
	"
}

Animated
{
	on_summon_01 = "PlayTextAudio( WifeBoss_SummonMinion_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );"
}
-- src\Data\Spectres.lua
minions["Metadata/Monsters/WifeMonster/WifeMonster"] = {
    name = "Asinia, the Praetor's Consort",
    life = 1.75,
    energyShield = 0.2,
    fireResist = 0,
    coldResist = 0,
    lightningResist = 0,
    chaosResist = 0,
    damage = 3,
    damageSpread = 0.2,
    attackTime = 1.5,
    attackRange = 15,
    accuracy = 1,
    skillList = {
        "MeleeAtAnimationSpeedUnique",
        "WifeMonsterComboAttack",
        "SSMWifeMonsterBoneWall",
        "MMSWifeMonsterSpiritMortar",
        "CGEWifeGhostflameBurning",
        "GSWifeMonsterDelayedBlast",
        "GSWifeMonsterDelayedBlastLarge",
        "GSHusbandPurge",
        "GSWifeMonsterBoneCone",
        "GSWifeMonsterBoneStorm",
        "GSWifeBossSlow",
        "EASWifeMonsterBodySwap",
        "EASWifeMonsterDelayedBlast",
        "EASWifeUnstableProjectiles",
        "EASWifeMonsterBoneWallStorm",
        "EASWifeSummon90",
        "GTWifeMonsterUnstableProj",
        "GTWifeMonsterBoneWall",
        "GTWifeMonsterBoneWallStorm",
    },
    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.Multistrikeable] = 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["WifeMonsterComboAttack"] = {
    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 = {
        "attack_maximum_action_distance_+",
        "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",
        "global_knockback",
        "determine_knockback_direction_from_melee_pattern",
        "projectile_uses_contact_position",
        "use_scaled_contact_offset",
    },
    levels = {
        [1] = {15, 100, baseMultiplier = 0.8, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["SSMWifeMonsterBoneWall"] = {
    name = "SSMWifeMonsterBoneWall",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Multicastable] = true,
        [SkillType.Triggerable] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        spell = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "alternate_minion",
        "number_of_monsters_to_summon",
        "summon_specific_monsters_radius_+%",
        "summoned_monsters_are_minions",
        "monster_no_drops_or_experience",
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {1052, 1, -99, levelRequirement = 8, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MMSWifeMonsterSpiritMortar"] = {
    name = "MMSWifeMonsterSpiritMortar",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    description = "Generic monster mortar skill. Like Monster Projectile but has an impact effect.",
    skillTypes = {
        [SkillType.Projectile] = true,
        [SkillType.ProjectilesFromUser] = true,
        [SkillType.Spell] = true,
        [SkillType.Damage] = true,
        [SkillType.Area] = true,
        [SkillType.Trappable] = true,
        [SkillType.Totemable] = true,
        [SkillType.Mineable] = true,
        [SkillType.Multicastable] = true,
        [SkillType.Triggerable] = true,
        [SkillType.AreaSpell] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        area = true,
        spell = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_minimum_base_physical_damage",
        "spell_maximum_base_physical_damage",
        "projectile_spread_radius",
        "spell_maximum_action_distance_+%",
        "active_skill_base_physical_damage_%_to_convert_to_fire",
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
        "is_area_damage",
        "base_is_projectile",
        "projectile_uses_contact_position",
        "use_scaled_contact_offset",
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {0.80000001192093, 1.2000000476837, 10, 0, 60, 40, critChance = 5, levelRequirement = 8, statInterpolation = {3, 3},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["CGEWifeGhostflameBurning"] = {
    name = "CGEWifeGhostflameBurning",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Area] = true,
        [SkillType.Damage] = true,
        [SkillType.Triggerable] = true,
        [SkillType.Duration] = true,
        [SkillType.AreaSpell] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        area = true,
        spell = true,
        duration = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "base_fire_damage_to_deal_per_minute",
        "active_skill_area_of_effect_radius_+%_final",
        "base_skill_effect_duration",
        "ground_fire_art_variation",
    },
    levels = {
        [1] = {3, -40, 10000, 1016, levelRequirement = 8, statInterpolation = {3},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["GSWifeMonsterDelayedBlast"] = {
    name = "GSWifeMonsterDelayedBlast",
    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_physical_damage",
        "spell_maximum_base_physical_damage",
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
        "is_area_damage",
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {0.80000001192093, 1.2000000476837, 100, critChance = 5, levelRequirement = 8, statInterpolation = {3, 3},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["GSWifeMonsterDelayedBlastLarge"] = {
    name = "GSWifeMonsterDelayedBlastLarge",
    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_physical_damage",
        "spell_maximum_base_physical_damage",
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
        "is_area_damage",
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {0.80000001192093, 1.2000000476837, 80, critChance = 5, levelRequirement = 8, statInterpolation = {3, 3},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["GSHusbandPurge"] = {
    name = "GSHusbandPurge",
    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 = {
        "base_deal_no_damage_over_time",
        "is_area_damage",
    },
    levels = {
        [1] = {levelRequirement = 8, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["GSWifeMonsterBoneCone"] = {
    name = "GSWifeMonsterBoneCone",
    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_physical_damage",
        "spell_maximum_base_physical_damage",
        "spell_maximum_action_distance_+%",
        "active_skill_area_of_effect_radius_+%_final",
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
        "is_area_damage",
        "action_attack_or_cast_time_uses_animation_length",
        "base_skill_can_be_avoided_by_dodge_roll",
    },
    levels = {
        [1] = {0.80000001192093, 1.2000000476837, -45, 50, 100, critChance = 5, levelRequirement = 8, statInterpolation = {3, 3},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["GSWifeMonsterBoneStorm"] = {
    name = "GSWifeMonsterBoneStorm",
    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_physical_damage",
        "spell_maximum_base_physical_damage",
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
        "is_area_damage",
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {0.80000001192093, 1.2000000476837, 30, critChance = 5, levelRequirement = 8, statInterpolation = {3, 3},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["GSWifeBossSlow"] = {
    name = "GSWifeBossSlow",
    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_physical_damage",
        "spell_maximum_base_physical_damage",
        "base_skill_effect_duration",
        "is_area_damage",
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {0.80000001192093, 1.2000000476837, 5000, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EASWifeMonsterBodySwap"] = {
    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 = {
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EASWifeMonsterDelayedBlast"] = {
    name = "EASWifeMonsterDelayedBlast",
    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["EASWifeUnstableProjectiles"] = {
    name = "EASWifeUnstableProjectiles",
    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["EASWifeMonsterBoneWallStorm"] = {
    name = "EASWifeMonsterBoneWallStorm",
    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["EASWifeSummon90"] = {
    name = "EASWifeSummon90",
    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["GTWifeMonsterUnstableProj"] = {
    name = "GTWifeMonsterUnstableProj",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["GTWifeMonsterBoneWall"] = {
    name = "GTWifeMonsterBoneWall",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["GTWifeMonsterBoneWallStorm"] = {
    name = "GTWifeMonsterBoneWallStorm",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
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
  • Asinia, the Praetor's Consort
    monster dropped item rarity +% [2700]
    monster slain experience +% [0]
    unique monster guarantee one rare [0]
    SpectreN
    AreaTomb of the Consort
    Tags1HSword_onhit_audio, ghost_blood, humanoid, not_dex, skeleton, slow_movement, undead
    Life
    250%
    Energy Shield From Life
    20%
    Armour
    +75%
    Ailment Threshold
    %
    Resistance
    0 30 0 0
    Damage
    300%
    Accuracy
    100%
    Critical Strike Chance
    +5%
    Critical Strike Multiplier
    +130%
    Attack Distance
    5 ~ 15
    Attack Time
    1.5 Second
    Damage Spread
    ±20%
    Experience
    250%
    Model Size
    140%
    Type
    WifeMonsterCRUEL
    Metadata
    WifeMonsterCRUEL
    Level
    48
    Life
    7,105
    Armour
    1,017
    Evasion
    269
    Energy Shield
    0
    Damage
    362
    Spell Damage
    362
    Accuracy
    0
    Attack Time
    1.5
    Experience
    18,475
    MeleeAtAnimationSpeedUnique
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 290–435
    [Critical|Critical Hit] Chance: 5%
    Attack Time: 1.5 sec
    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]
    GSWifeMonsterDelayedBlast
    Triggerable, Spell, Damage
    Critical Strike Chance: 5%
    Cast Time: 1 sec
    Deals 56.2 to 84.3 Physical Damage
    action attack or cast time uses animation length [1]
    is area damage [1]
    monster penalty against minions damage +% final vs player minions [100]
    GSWifeMonsterDelayedBlastLarge
    Triggerable, Spell, Damage
    Critical Strike Chance: 5%
    Cast Time: 1 sec
    Deals 175.6 to 263.4 Physical Damage
    action attack or cast time uses animation length [1]
    is area damage [1]
    monster penalty against minions damage +% final vs player minions [80]
    MMSWifeMonsterSpiritMortar
    Projectile, ProjectilesFromUser, Spell, Damage, Area, Trappable, Totemable, Mineable, Multicastable, Triggerable, AreaSpell
    Critical Strike Chance: 5%
    Cast Time: 1 sec
    Generic monster mortar skill. Like Monster Projectile but has an impact effect.
    Deals 35.12 to 52.68 Physical Damage
    Converts 60% of Physical Damage to Fire Damage
    action attack or cast time uses animation length [1]
    base is projectile [1]
    is area damage [1]
    monster penalty against minions damage +% final vs player minions [40]
    projectile spread radius [10]
    projectile uses contact position [1]
    spell maximum action distance +% [0]
    use scaled contact offset [1]
    WifeMonsterComboAttack
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 290–435
    [Critical|Critical Hit] Chance: 5%
    Attack Damage: 80%
    Attack Time: 1.5 sec
    Cooldown Time: 5 sec
    Deals 20% less Attack Damage
    Knock Enemies Back on Hit
    action attack or cast time uses animation length [1]
    attack maximum action distance + [15]
    determine knockback direction from melee pattern [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]
    GTWifeMonsterUnstableProj
    Triggerable
    Cooldown Time: 13 sec
    action attack or cast time uses animation length [1]
    EASWifeMonsterBodySwap
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 290–435
    [Critical|Critical Hit] Chance: 5%
    Attack Time: 1.5 sec
    Cooldown Time: 8.5 sec
    action attack or cast time uses animation length [1]
    EASWifeMonsterDelayedBlast
    Cooldown Time: 16 sec
    action attack or cast time uses animation length [1]
    GSHusbandPurge
    Triggerable, Spell, Damage
    Cast Time: 1 sec
    base deal no damage over time [1]
    is area damage [1]
    CGEWifeGhostflameBurning
    Spell, Area, Damage, Triggerable, Duration, AreaSpell
    Cast Time: 1 sec
    Deals 32.9 Base Fire Damage per second
    active skill area of effect radius +% final [-40]
    base skill effect duration [10000]
    ground fire art variation [1016]
    EASWifeUnstableProjectiles
    action attack or cast time uses animation length [1]
    EASWifeMonsterBoneWallStorm
    action attack or cast time uses animation length [1]
    GSWifeMonsterBoneCone
    Triggerable, Spell, Damage
    Critical Strike Chance: 5%
    Cast Time: 1 sec
    Cooldown Time: 10 sec
    Deals 49.17 to 73.76 Physical Damage
    action attack or cast time uses animation length [1]
    active skill area of effect radius +% final [50]
    base skill can be avoided by dodge roll [1]
    is area damage [1]
    monster penalty against minions damage +% final vs player minions [100]
    spell maximum action distance +% [-45]
    SSMWifeMonsterBoneWall
    Spell, Multicastable, Triggerable
    Cast Time: 1 sec
    action attack or cast time uses animation length [1]
    alternate minion [1052]
    monster no drops or experience [1]
    number of monsters to summon [1]
    summon specific monsters radius +% [-99]
    summoned monsters are minions [1]
    GTWifeMonsterBoneWall
    Triggerable
    Cooldown Time: 20 sec
    action attack or cast time uses animation length [1]
    GTWifeMonsterBoneWallStorm
    Triggerable
    action attack or cast time uses animation length [1]
    GSWifeMonsterBoneStorm
    Triggerable, Spell, Damage
    Critical Strike Chance: 5%
    Cast Time: 1 sec
    Deals 56.2 to 84.3 Physical Damage
    action attack or cast time uses animation length [1]
    is area damage [1]
    monster penalty against minions damage +% final vs player minions [30]
    EASWifeSummon90
    action attack or cast time uses animation length [1]
    GSWifeBossSlow
    Triggerable, Spell, Damage
    Cast Time: 1 sec
    Deals 0.62163344926306 to 0.93245019705223 Physical Damage
    action attack or cast time uses animation length [1]
    base skill effect duration [5000]
    is area damage [1]

    Object Type

    version 2
    extends "Metadata/Monsters/Monster"
    extends "Metadata/Monsters/BossBase"
    
    StateMachine
    {
    	define_shared_state = "spirits; max; souls;"
    }
    
    Stats
    {
    	set_monster_delay_item_drops_millis = 3500
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    extends "Metadata/Monsters/BossBase"
    
    Render
    {
    	use_ao_lights = true
    	light_starts_disabled = true
    }
    
    GlobalAudioParamEvents
    {
    	player_in_range_param = "WifeInRange"
    	life_percent_param = "WifeLifePercentage"
    	range = 130
    }
    
    StateMachine
    {
    	create_state_light_0 = "DisableLight();"
    
    	create_state_light_1 =
    	"
    		Delay( 0.01, { EnableLight(); } );
    	"
    
    	on_state_light_0 = "FadeOutLight( 1.0 );"
    	on_state_light_1 = "FadeInLight( 6.0 );"
    	on_state_light_2 = "SetLightState( dim, 2 );"
    	create_state_light_2 = "SetLightState( dim );"
    	on_or_create_state_spirits_1 = "AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/HusbandBoss/epk/powerup.epk' );"
    	on_or_create_state_spirits_0 = "RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/HusbandBoss/epk/powerup.epk' );"
    
    	on_change_state_spirits =
    	"
    		this.soul_intensity = 2.0 + GetState( spirits );
    		Call( update_soul_states, soul_intensity );
    	"
    }
    
    Render
    {
    	selection_size_override = "140, 140, 200"
    }
    
    Functions
    {
    	update_soul_states =
    	"
    		this.effect_values = arg1;
    		effect_values += arg1;
    		effect_values += 0.0;
    		effect_values += 0.0;
    	"
    }
    
    Actor
    {
    	on_effect_event_dialogue_for_CTS1BossFightStart = 
    	"		
    		local player = GetLocalPlayer();
    		local succeeded;
    		this.player_ascendancy = player.GetAscendancyName();
    		If( Or( player_ascendancy == 'Druid', player_ascendancy == 'Druid1', player_ascendancy == 'Druid2', player_ascendancy == 'Druid3' ),
    		{
    			PlayTextAudio( WifeBoss_Emerge_Ezomyte, 'Metadata/Monsters/WifeMonster/WifeMonster', 600 );
    			succeeded = true;
    		} );
    		If( Or( player_ascendancy == 'Warrior', player_ascendancy == 'Warrior1', player_ascendancy == 'Warrior2', player_ascendancy == 'Warrior3' ),
    		{
    			PlayTextAudio( WifeBoss_Emerge_Karui_Random, 'Metadata/Monsters/WifeMonster/WifeMonster', 900 );
    			succeeded = true;
    		} );
    		If( Or( player_ascendancy == 'Marauder', player_ascendancy == 'Marauder1', player_ascendancy == 'Marauder2', player_ascendancy == 'Marauder3' ),
    		{
    			PlayTextAudio( WifeBoss_Emerge_Karui_Random, 'Metadata/Monsters/WifeMonster/WifeMonster', 900  );
    			succeeded = true;
    		} );
    		If( Or( player_ascendancy == 'Sorceress', player_ascendancy == 'Sorceress1', player_ascendancy == 'Sorceress2', player_ascendancy == 'Sorceress3' ),
    		{
    			PlayTextAudio( WifeBoss_Emerge_Sorc, 'Metadata/Monsters/WifeMonster/WifeMonster', 1300 );
    			succeeded = true;
    		} );
    		If( Or( player_ascendancy == 'Witch', player_ascendancy == 'Witch1', player_ascendancy == 'Witch2', player_ascendancy == 'Witch3' ),
    		{
    			PlayTextAudio( WifeBoss_Emerge_Witch, 'Metadata/Monsters/WifeMonster/WifeMonster', 100 );
    			succeeded = true;
    		} );
    		If( Or( player_ascendancy == 'Templar', player_ascendancy == 'Templar1', player_ascendancy == 'Templar2', player_ascendancy == 'Templar3' ),
    		{
    			PlayTextAudio( WifeBoss_Emerge_Templar, 'Metadata/Monsters/WifeMonster/WifeMonster', 1500 );
    			succeeded = true;
    		} );
    		If( !VariableExists( succeeded ), ()
    		{
    			PlayTextAudio( WifeBoss_Emerge_Other, 'Metadata/Monsters/WifeMonster/WifeMonster', 1500 );
    		} );
    	"
    
    	on_effect_start_EASWifeMonsterBodySwap =
    	"
    		Roll( 1, 2, ()
    		{
    			PlayTextAudio( WifeBoss_Swap_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
    		} );
    	"
    
    	on_effect_start_WifeMonsterComboAttack =
    	"
    		Roll( 1, 2, ()
    		{
    			PlayTextAudio( WifeBoss_Combo_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
    		} );
    	"
    
    	on_effect_start_EASWifeMonsterDelayedBlast =
    	"
    		Roll( 1, 1, ()
    		{
    			PlayTextAudio( WifeBoss_DelayedBlast_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
    		} );
    	"
    
    	on_effect_start_GTWifeMonsterUnstableProj =
    	"
    		Roll( 1, 1, ()
    		{
    			PlayTextAudio( WifeBoss_Explode_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
    		} );
    	"
    
    	on_effect_start_GTWifeMonsterBoneWall =
    	"
    		Roll( 1, 1, ()
    		{
    			PlayTextAudio( WifeBoss_BoneWall_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
    		} );
    	"
    
    	on_effect_start_GSWifeMonsterBoneCone =
    	"
    		Roll( 1, 1, ()
    		{
    			PlayTextAudio( WifeBoss_Attack_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
    		} );
    	"
    
    }
    
    Functions
    {
    	call_husband =
    	"
    		Roll( 1, 1, ()
    		{
    			PlayTextAudio( WifeBoss_Summon_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
    		} );
    	"
    }
    
    Animated
    {
    	on_summon_01 = "PlayTextAudio( WifeBoss_SummonMinion_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/WifeMonster/WifeMonsterCRUEL"] = {
        name = "Asinia, the Praetor's Consort",
        life = 2.5,
        energyShield = 0.2,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 3,
        damageSpread = 0.2,
        attackTime = 1.5,
        attackRange = 15,
        accuracy = 1,
        skillList = {
            "MeleeAtAnimationSpeedUnique",
            "WifeMonsterComboAttack",
            "SSMWifeMonsterBoneWall",
            "MMSWifeMonsterSpiritMortar",
            "CGEWifeGhostflameBurning",
            "GSWifeMonsterDelayedBlast",
            "GSWifeMonsterDelayedBlastLarge",
            "GSHusbandPurge",
            "GSWifeMonsterBoneCone",
            "GSWifeMonsterBoneStorm",
            "GSWifeBossSlow",
            "EASWifeMonsterBodySwap",
            "EASWifeMonsterDelayedBlast",
            "EASWifeUnstableProjectiles",
            "EASWifeMonsterBoneWallStorm",
            "EASWifeSummon90",
            "GTWifeMonsterUnstableProj",
            "GTWifeMonsterBoneWall",
            "GTWifeMonsterBoneWallStorm",
        },
        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.Multistrikeable] = 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["WifeMonsterComboAttack"] = {
        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 = {
            "attack_maximum_action_distance_+",
            "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",
            "global_knockback",
            "determine_knockback_direction_from_melee_pattern",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
        },
        levels = {
            [1] = {15, 100, baseMultiplier = 0.8, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["SSMWifeMonsterBoneWall"] = {
        name = "SSMWifeMonsterBoneWall",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Multicastable] = true,
            [SkillType.Triggerable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            spell = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "alternate_minion",
            "number_of_monsters_to_summon",
            "summon_specific_monsters_radius_+%",
            "summoned_monsters_are_minions",
            "monster_no_drops_or_experience",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {1052, 1, -99, levelRequirement = 8, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MMSWifeMonsterSpiritMortar"] = {
        name = "MMSWifeMonsterSpiritMortar",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Generic monster mortar skill. Like Monster Projectile but has an impact effect.",
        skillTypes = {
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Spell] = true,
            [SkillType.Damage] = true,
            [SkillType.Area] = true,
            [SkillType.Trappable] = true,
            [SkillType.Totemable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Multicastable] = true,
            [SkillType.Triggerable] = true,
            [SkillType.AreaSpell] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            area = true,
            spell = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_physical_damage",
            "spell_maximum_base_physical_damage",
            "projectile_spread_radius",
            "spell_maximum_action_distance_+%",
            "active_skill_base_physical_damage_%_to_convert_to_fire",
            "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
            "is_area_damage",
            "base_is_projectile",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 10, 0, 60, 40, critChance = 5, levelRequirement = 8, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["CGEWifeGhostflameBurning"] = {
        name = "CGEWifeGhostflameBurning",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Area] = true,
            [SkillType.Damage] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Duration] = true,
            [SkillType.AreaSpell] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            area = true,
            spell = true,
            duration = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "base_fire_damage_to_deal_per_minute",
            "active_skill_area_of_effect_radius_+%_final",
            "base_skill_effect_duration",
            "ground_fire_art_variation",
        },
        levels = {
            [1] = {3, -40, 10000, 1016, levelRequirement = 8, statInterpolation = {3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GSWifeMonsterDelayedBlast"] = {
        name = "GSWifeMonsterDelayedBlast",
        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_physical_damage",
            "spell_maximum_base_physical_damage",
            "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
            "is_area_damage",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 100, critChance = 5, levelRequirement = 8, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GSWifeMonsterDelayedBlastLarge"] = {
        name = "GSWifeMonsterDelayedBlastLarge",
        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_physical_damage",
            "spell_maximum_base_physical_damage",
            "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
            "is_area_damage",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 80, critChance = 5, levelRequirement = 8, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GSHusbandPurge"] = {
        name = "GSHusbandPurge",
        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 = {
            "base_deal_no_damage_over_time",
            "is_area_damage",
        },
        levels = {
            [1] = {levelRequirement = 8, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GSWifeMonsterBoneCone"] = {
        name = "GSWifeMonsterBoneCone",
        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_physical_damage",
            "spell_maximum_base_physical_damage",
            "spell_maximum_action_distance_+%",
            "active_skill_area_of_effect_radius_+%_final",
            "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
            "is_area_damage",
            "action_attack_or_cast_time_uses_animation_length",
            "base_skill_can_be_avoided_by_dodge_roll",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, -45, 50, 100, critChance = 5, levelRequirement = 8, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GSWifeMonsterBoneStorm"] = {
        name = "GSWifeMonsterBoneStorm",
        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_physical_damage",
            "spell_maximum_base_physical_damage",
            "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
            "is_area_damage",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 30, critChance = 5, levelRequirement = 8, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GSWifeBossSlow"] = {
        name = "GSWifeBossSlow",
        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_physical_damage",
            "spell_maximum_base_physical_damage",
            "base_skill_effect_duration",
            "is_area_damage",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 5000, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASWifeMonsterBodySwap"] = {
        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 = {
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASWifeMonsterDelayedBlast"] = {
        name = "EASWifeMonsterDelayedBlast",
        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["EASWifeUnstableProjectiles"] = {
        name = "EASWifeUnstableProjectiles",
        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["EASWifeMonsterBoneWallStorm"] = {
        name = "EASWifeMonsterBoneWallStorm",
        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["EASWifeSummon90"] = {
        name = "EASWifeSummon90",
        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["GTWifeMonsterUnstableProj"] = {
        name = "GTWifeMonsterUnstableProj",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GTWifeMonsterBoneWall"] = {
        name = "GTWifeMonsterBoneWall",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GTWifeMonsterBoneWallStorm"] = {
        name = "GTWifeMonsterBoneWallStorm",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    
    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
  • Asinia, the Praetor's Consort
    monster dropped item rarity +% [2700]
    monster slain experience +% [0]
    unique monster guarantee one rare [0]
    monster dropped item quantity +% [800]
    monster dropped item rarity +% [4000]
    monster map key of at least same tier as current map drop chance % [25]
    monster slain experience +% [7500]
    unique monster guarantee one rare [1]
    SpectreN
    AreaGothic City
    Tags1HSword_onhit_audio, ghost_blood, humanoid, not_dex, skeleton, slow_movement, undead
    Life
    250%
    Energy Shield From Life
    20%
    Armour
    +75%
    Ailment Threshold
    %
    Resistance
    0 30 0 0
    Damage
    300%
    Accuracy
    100%
    Critical Strike Chance
    +5%
    Critical Strike Multiplier
    +130%
    Attack Distance
    5 ~ 15
    Attack Time
    1.5 Second
    Damage Spread
    ±20%
    Experience
    250%
    Model Size
    140%
    Type
    WifeMonsterCRUEL
    Metadata
    WifeMonsterMap
    Level
    65
    Life
    16,283
    Armour
    2,893
    Evasion
    440
    Energy Shield
    0
    Damage
    637
    Spell Damage
    637
    Accuracy
    0
    Attack Time
    1.5
    Experience
    53,768
    MeleeAtAnimationSpeedUnique
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 510–764
    [Critical|Critical Hit] Chance: 5%
    Attack Time: 1.5 sec
    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]
    GSWifeMonsterDelayedBlast
    Triggerable, Spell, Damage
    Critical Strike Chance: 5%
    Cast Time: 1 sec
    Deals 75.47 to 113.2 Physical Damage
    action attack or cast time uses animation length [1]
    is area damage [1]
    monster penalty against minions damage +% final vs player minions [100]
    GSWifeMonsterDelayedBlastLarge
    Triggerable, Spell, Damage
    Critical Strike Chance: 5%
    Cast Time: 1 sec
    Deals 235.9 to 353.8 Physical Damage
    action attack or cast time uses animation length [1]
    is area damage [1]
    monster penalty against minions damage +% final vs player minions [80]
    MMSWifeMonsterSpiritMortar
    Projectile, ProjectilesFromUser, Spell, Damage, Area, Trappable, Totemable, Mineable, Multicastable, Triggerable, AreaSpell
    Critical Strike Chance: 5%
    Cast Time: 1 sec
    Generic monster mortar skill. Like Monster Projectile but has an impact effect.
    Deals 47.17 to 70.76 Physical Damage
    Converts 60% of Physical Damage to Fire Damage
    action attack or cast time uses animation length [1]
    base is projectile [1]
    is area damage [1]
    monster penalty against minions damage +% final vs player minions [40]
    projectile spread radius [10]
    projectile uses contact position [1]
    spell maximum action distance +% [0]
    use scaled contact offset [1]
    WifeMonsterComboAttack
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 510–764
    [Critical|Critical Hit] Chance: 5%
    Attack Damage: 80%
    Attack Time: 1.5 sec
    Cooldown Time: 5 sec
    Deals 20% less Attack Damage
    Knock Enemies Back on Hit
    action attack or cast time uses animation length [1]
    attack maximum action distance + [15]
    determine knockback direction from melee pattern [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]
    GTWifeMonsterUnstableProj
    Triggerable
    Cooldown Time: 13 sec
    action attack or cast time uses animation length [1]
    EASWifeMonsterBodySwap
    Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
    Basic Attack
    Base Damage: 510–764
    [Critical|Critical Hit] Chance: 5%
    Attack Time: 1.5 sec
    Cooldown Time: 8.5 sec
    action attack or cast time uses animation length [1]
    EASWifeMonsterDelayedBlast
    Cooldown Time: 16 sec
    action attack or cast time uses animation length [1]
    GSHusbandPurge
    Triggerable, Spell, Damage
    Cast Time: 1 sec
    base deal no damage over time [1]
    is area damage [1]
    CGEWifeGhostflameBurning
    Spell, Area, Damage, Triggerable, Duration, AreaSpell
    Cast Time: 1 sec
    Deals 44.2 Base Fire Damage per second
    active skill area of effect radius +% final [-40]
    base skill effect duration [10000]
    ground fire art variation [1016]
    EASWifeUnstableProjectiles
    action attack or cast time uses animation length [1]
    EASWifeMonsterBoneWallStorm
    action attack or cast time uses animation length [1]
    GSWifeMonsterBoneCone
    Triggerable, Spell, Damage
    Critical Strike Chance: 5%
    Cast Time: 1 sec
    Cooldown Time: 10 sec
    Deals 66.04 to 99.06 Physical Damage
    action attack or cast time uses animation length [1]
    active skill area of effect radius +% final [50]
    base skill can be avoided by dodge roll [1]
    is area damage [1]
    monster penalty against minions damage +% final vs player minions [100]
    spell maximum action distance +% [-45]
    SSMWifeMonsterBoneWall
    Spell, Multicastable, Triggerable
    Cast Time: 1 sec
    action attack or cast time uses animation length [1]
    alternate minion [1052]
    monster no drops or experience [1]
    number of monsters to summon [1]
    summon specific monsters radius +% [-99]
    summoned monsters are minions [1]
    GTWifeMonsterBoneWall
    Triggerable
    Cooldown Time: 20 sec
    action attack or cast time uses animation length [1]
    GTWifeMonsterBoneWallStorm
    Triggerable
    action attack or cast time uses animation length [1]
    GSWifeMonsterBoneStorm
    Triggerable, Spell, Damage
    Critical Strike Chance: 5%
    Cast Time: 1 sec
    Deals 75.47 to 113.2 Physical Damage
    action attack or cast time uses animation length [1]
    is area damage [1]
    monster penalty against minions damage +% final vs player minions [30]
    EASWifeSummon90
    action attack or cast time uses animation length [1]
    GSWifeBossSlow
    Triggerable, Spell, Damage
    Cast Time: 1 sec
    Deals 0.62163344926306 to 0.93245019705223 Physical Damage
    action attack or cast time uses animation length [1]
    base skill effect duration [5000]
    is area damage [1]

    Object Type

    version 2
    extends "Metadata/Monsters/Monster"
    extends "Metadata/Monsters/BossBase"
    
    StateMachine
    {
    	define_shared_state = "spirits; max; souls;"
    }
    
    Stats
    {
    	set_monster_delay_item_drops_millis = 3500
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    extends "Metadata/Monsters/BossBase"
    
    Render
    {
    	use_ao_lights = true
    	light_starts_disabled = true
    }
    
    GlobalAudioParamEvents
    {
    	player_in_range_param = "WifeInRange"
    	life_percent_param = "WifeLifePercentage"
    	range = 130
    }
    
    StateMachine
    {
    	create_state_light_0 = "DisableLight();"
    
    	create_state_light_1 =
    	"
    		Delay( 0.01, { EnableLight(); } );
    	"
    
    	on_state_light_0 = "FadeOutLight( 1.0 );"
    	on_state_light_1 = "FadeInLight( 6.0 );"
    	on_state_light_2 = "SetLightState( dim, 2 );"
    	create_state_light_2 = "SetLightState( dim );"
    	on_or_create_state_spirits_1 = "AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/HusbandBoss/epk/powerup.epk' );"
    	on_or_create_state_spirits_0 = "RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act1_FOUR/HusbandBoss/epk/powerup.epk' );"
    
    	on_change_state_spirits =
    	"
    		this.soul_intensity = 2.0 + GetState( spirits );
    		Call( update_soul_states, soul_intensity );
    	"
    }
    
    Render
    {
    	selection_size_override = "140, 140, 200"
    }
    
    Functions
    {
    	update_soul_states =
    	"
    		this.effect_values = arg1;
    		effect_values += arg1;
    		effect_values += 0.0;
    		effect_values += 0.0;
    	"
    }
    
    Actor
    {
    	on_effect_event_dialogue_for_CTS1BossFightStart = 
    	"		
    		local player = GetLocalPlayer();
    		local succeeded;
    		this.player_ascendancy = player.GetAscendancyName();
    		If( Or( player_ascendancy == 'Druid', player_ascendancy == 'Druid1', player_ascendancy == 'Druid2', player_ascendancy == 'Druid3' ),
    		{
    			PlayTextAudio( WifeBoss_Emerge_Ezomyte, 'Metadata/Monsters/WifeMonster/WifeMonster', 600 );
    			succeeded = true;
    		} );
    		If( Or( player_ascendancy == 'Warrior', player_ascendancy == 'Warrior1', player_ascendancy == 'Warrior2', player_ascendancy == 'Warrior3' ),
    		{
    			PlayTextAudio( WifeBoss_Emerge_Karui_Random, 'Metadata/Monsters/WifeMonster/WifeMonster', 900 );
    			succeeded = true;
    		} );
    		If( Or( player_ascendancy == 'Marauder', player_ascendancy == 'Marauder1', player_ascendancy == 'Marauder2', player_ascendancy == 'Marauder3' ),
    		{
    			PlayTextAudio( WifeBoss_Emerge_Karui_Random, 'Metadata/Monsters/WifeMonster/WifeMonster', 900  );
    			succeeded = true;
    		} );
    		If( Or( player_ascendancy == 'Sorceress', player_ascendancy == 'Sorceress1', player_ascendancy == 'Sorceress2', player_ascendancy == 'Sorceress3' ),
    		{
    			PlayTextAudio( WifeBoss_Emerge_Sorc, 'Metadata/Monsters/WifeMonster/WifeMonster', 1300 );
    			succeeded = true;
    		} );
    		If( Or( player_ascendancy == 'Witch', player_ascendancy == 'Witch1', player_ascendancy == 'Witch2', player_ascendancy == 'Witch3' ),
    		{
    			PlayTextAudio( WifeBoss_Emerge_Witch, 'Metadata/Monsters/WifeMonster/WifeMonster', 100 );
    			succeeded = true;
    		} );
    		If( Or( player_ascendancy == 'Templar', player_ascendancy == 'Templar1', player_ascendancy == 'Templar2', player_ascendancy == 'Templar3' ),
    		{
    			PlayTextAudio( WifeBoss_Emerge_Templar, 'Metadata/Monsters/WifeMonster/WifeMonster', 1500 );
    			succeeded = true;
    		} );
    		If( !VariableExists( succeeded ), ()
    		{
    			PlayTextAudio( WifeBoss_Emerge_Other, 'Metadata/Monsters/WifeMonster/WifeMonster', 1500 );
    		} );
    	"
    
    	on_effect_start_EASWifeMonsterBodySwap =
    	"
    		Roll( 1, 2, ()
    		{
    			PlayTextAudio( WifeBoss_Swap_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
    		} );
    	"
    
    	on_effect_start_WifeMonsterComboAttack =
    	"
    		Roll( 1, 2, ()
    		{
    			PlayTextAudio( WifeBoss_Combo_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
    		} );
    	"
    
    	on_effect_start_EASWifeMonsterDelayedBlast =
    	"
    		Roll( 1, 1, ()
    		{
    			PlayTextAudio( WifeBoss_DelayedBlast_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
    		} );
    	"
    
    	on_effect_start_GTWifeMonsterUnstableProj =
    	"
    		Roll( 1, 1, ()
    		{
    			PlayTextAudio( WifeBoss_Explode_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
    		} );
    	"
    
    	on_effect_start_GTWifeMonsterBoneWall =
    	"
    		Roll( 1, 1, ()
    		{
    			PlayTextAudio( WifeBoss_BoneWall_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
    		} );
    	"
    
    	on_effect_start_GSWifeMonsterBoneCone =
    	"
    		Roll( 1, 1, ()
    		{
    			PlayTextAudio( WifeBoss_Attack_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
    		} );
    	"
    
    }
    
    Functions
    {
    	call_husband =
    	"
    		Roll( 1, 1, ()
    		{
    			PlayTextAudio( WifeBoss_Summon_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
    		} );
    	"
    }
    
    Animated
    {
    	on_summon_01 = "PlayTextAudio( WifeBoss_SummonMinion_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/WifeMonster/WifeMonsterMap"] = {
        name = "Asinia, the Praetor's Consort",
        life = 2.5,
        energyShield = 0.2,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 3,
        damageSpread = 0.2,
        attackTime = 1.5,
        attackRange = 15,
        accuracy = 1,
        skillList = {
            "MeleeAtAnimationSpeedUnique",
            "WifeMonsterComboAttack",
            "SSMWifeMonsterBoneWall",
            "MMSWifeMonsterSpiritMortar",
            "CGEWifeGhostflameBurning",
            "GSWifeMonsterDelayedBlast",
            "GSWifeMonsterDelayedBlastLarge",
            "GSHusbandPurge",
            "GSWifeMonsterBoneCone",
            "GSWifeMonsterBoneStorm",
            "GSWifeBossSlow",
            "EASWifeMonsterBodySwap",
            "EASWifeMonsterDelayedBlast",
            "EASWifeUnstableProjectiles",
            "EASWifeMonsterBoneWallStorm",
            "EASWifeSummon90",
            "GTWifeMonsterUnstableProj",
            "GTWifeMonsterBoneWall",
            "GTWifeMonsterBoneWallStorm",
        },
        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.Multistrikeable] = 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["WifeMonsterComboAttack"] = {
        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 = {
            "attack_maximum_action_distance_+",
            "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",
            "global_knockback",
            "determine_knockback_direction_from_melee_pattern",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
        },
        levels = {
            [1] = {15, 100, baseMultiplier = 0.8, levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["SSMWifeMonsterBoneWall"] = {
        name = "SSMWifeMonsterBoneWall",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Multicastable] = true,
            [SkillType.Triggerable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            spell = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "alternate_minion",
            "number_of_monsters_to_summon",
            "summon_specific_monsters_radius_+%",
            "summoned_monsters_are_minions",
            "monster_no_drops_or_experience",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {1052, 1, -99, levelRequirement = 8, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["MMSWifeMonsterSpiritMortar"] = {
        name = "MMSWifeMonsterSpiritMortar",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        description = "Generic monster mortar skill. Like Monster Projectile but has an impact effect.",
        skillTypes = {
            [SkillType.Projectile] = true,
            [SkillType.ProjectilesFromUser] = true,
            [SkillType.Spell] = true,
            [SkillType.Damage] = true,
            [SkillType.Area] = true,
            [SkillType.Trappable] = true,
            [SkillType.Totemable] = true,
            [SkillType.Mineable] = true,
            [SkillType.Multicastable] = true,
            [SkillType.Triggerable] = true,
            [SkillType.AreaSpell] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            area = true,
            spell = true,
            projectile = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "spell_minimum_base_physical_damage",
            "spell_maximum_base_physical_damage",
            "projectile_spread_radius",
            "spell_maximum_action_distance_+%",
            "active_skill_base_physical_damage_%_to_convert_to_fire",
            "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
            "is_area_damage",
            "base_is_projectile",
            "projectile_uses_contact_position",
            "use_scaled_contact_offset",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 10, 0, 60, 40, critChance = 5, levelRequirement = 8, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["CGEWifeGhostflameBurning"] = {
        name = "CGEWifeGhostflameBurning",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Spell] = true,
            [SkillType.Area] = true,
            [SkillType.Damage] = true,
            [SkillType.Triggerable] = true,
            [SkillType.Duration] = true,
            [SkillType.AreaSpell] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
            area = true,
            spell = true,
            duration = true,
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "base_fire_damage_to_deal_per_minute",
            "active_skill_area_of_effect_radius_+%_final",
            "base_skill_effect_duration",
            "ground_fire_art_variation",
        },
        levels = {
            [1] = {3, -40, 10000, 1016, levelRequirement = 8, statInterpolation = {3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GSWifeMonsterDelayedBlast"] = {
        name = "GSWifeMonsterDelayedBlast",
        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_physical_damage",
            "spell_maximum_base_physical_damage",
            "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
            "is_area_damage",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 100, critChance = 5, levelRequirement = 8, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GSWifeMonsterDelayedBlastLarge"] = {
        name = "GSWifeMonsterDelayedBlastLarge",
        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_physical_damage",
            "spell_maximum_base_physical_damage",
            "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
            "is_area_damage",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 80, critChance = 5, levelRequirement = 8, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GSHusbandPurge"] = {
        name = "GSHusbandPurge",
        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 = {
            "base_deal_no_damage_over_time",
            "is_area_damage",
        },
        levels = {
            [1] = {levelRequirement = 8, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GSWifeMonsterBoneCone"] = {
        name = "GSWifeMonsterBoneCone",
        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_physical_damage",
            "spell_maximum_base_physical_damage",
            "spell_maximum_action_distance_+%",
            "active_skill_area_of_effect_radius_+%_final",
            "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
            "is_area_damage",
            "action_attack_or_cast_time_uses_animation_length",
            "base_skill_can_be_avoided_by_dodge_roll",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, -45, 50, 100, critChance = 5, levelRequirement = 8, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GSWifeMonsterBoneStorm"] = {
        name = "GSWifeMonsterBoneStorm",
        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_physical_damage",
            "spell_maximum_base_physical_damage",
            "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
            "is_area_damage",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 30, critChance = 5, levelRequirement = 8, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GSWifeBossSlow"] = {
        name = "GSWifeBossSlow",
        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_physical_damage",
            "spell_maximum_base_physical_damage",
            "base_skill_effect_duration",
            "is_area_damage",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 5000, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASWifeMonsterBodySwap"] = {
        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 = {
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASWifeMonsterDelayedBlast"] = {
        name = "EASWifeMonsterDelayedBlast",
        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["EASWifeUnstableProjectiles"] = {
        name = "EASWifeUnstableProjectiles",
        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["EASWifeMonsterBoneWallStorm"] = {
        name = "EASWifeMonsterBoneWallStorm",
        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["EASWifeSummon90"] = {
        name = "EASWifeSummon90",
        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["GTWifeMonsterUnstableProj"] = {
        name = "GTWifeMonsterUnstableProj",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GTWifeMonsterBoneWall"] = {
        name = "GTWifeMonsterBoneWall",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GTWifeMonsterBoneWallStorm"] = {
        name = "GTWifeMonsterBoneWallStorm",
        hidden = true,
        color = ,
        baseEffectiveness = 0,
        incrementalEffectiveness = 0,
        skillTypes = {
            [SkillType.Triggerable] = true,
        },
        statDescriptionScope = "skill_stat_descriptions",
        castTime = 1,
        baseFlags = {
        },
        baseMods = {
        },
        qualityStats = {
        },
        stats = {
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
        },
    }
    
    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 dropped item quantity +% [800]
    monster dropped item rarity +% [4000]
    monster map key of at least same tier as current map drop chance % [25]
    monster slain experience +% [7500]
    unique monster guarantee one rare [1]
    IdMonsterMapBossT2
    FamilyMonsterMapBoss
    DomainsMonster (3)
    GenerationTypeUnique (3)
    Req. level1
    Stats
  • monster slain experience +% Min: 7500 Max: 7500 Global
  • monster dropped item rarity +% Min: 4000 Max: 4000 Global
  • monster dropped item quantity +% Min: 800 Max: 800 Global
  • unique monster guarantee one rare Min: 1 Max: 1 Global
  • monster map key of at least same tier as current map drop chance % Min: 25 Max: 25 Global
  • Asinia, the Praetor's Consort
    SpectreN
    Tags1HSword_onhit_audio, ghost_blood, humanoid, not_dex, skeleton, slow_movement, undead
    Life
    175%
    Energy Shield From Life
    20%
    Armour
    +75%
    Ailment Threshold
    %
    Resistance
    0 30 0 0
    Damage
    300%
    Accuracy
    100%
    Critical Strike Chance
    +5%
    Critical Strike Multiplier
    +130%
    Attack Distance
    5 ~ 15
    Attack Time
    1.5 Second
    Damage Spread
    ±20%
    Experience
    250%
    Model Size
    140%
    Type
    WifeMonster
    Metadata
    WifeMonsterApparition_
    Level
    68
    Life
    13,575
    Armour
    3,451
    Evasion
    477
    Energy Shield
    0
    Damage
    699
    Spell Damage
    699
    Accuracy
    0
    Attack Time
    1.5
    Experience
    71,585
    GSWifeMonsterDelayedBlast
    Triggerable, Spell, Damage
    Critical Strike Chance: 5%
    Cast Time: 1 sec
    Deals 79.51 to 119.3 Physical Damage
    action attack or cast time uses animation length [1]
    is area damage [1]
    monster penalty against minions damage +% final vs player minions [100]
    GSWifeMonsterDelayedBlastLarge
    Triggerable, Spell, Damage
    Critical Strike Chance: 5%
    Cast Time: 1 sec
    Deals 248.5 to 372.7 Physical Damage
    action attack or cast time uses animation length [1]
    is area damage [1]
    monster penalty against minions damage +% final vs player minions [80]
    EASWifeMonsterDelayedBlast
    Cooldown Time: 16 sec
    action attack or cast time uses animation length [1]

    Object Type

    version 2
    extends "Metadata/Monsters/Monster"
    
    StateMachine
    {
    	define_shared_state = "light; death; emerged;"
    }

    Object Type Codes

    version 2
    extends "Metadata/Monsters/Monster"
    
    Render
    {
    	use_ao_lights = true
    	light_starts_disabled = true
    }
    
    StateMachine
    {
    	create_state_light_0 = "DisableLight();"
    
    	create_state_light_1 =
    	"
    		Delay( 0.01, { EnableLight(); } );
    	"
    
    	on_state_light_0 = "FadeOutLight( 1.5 );"
    	on_state_light_1 = "FadeInLight( 1.0 );"
    }
    
    Animated
    {
    	on_summoned_delayed_blast_01 =
    	"
    		IfInArea( MapNecropolis, (){}, ()
    		{
    			PlayTextAudio( WifeBoss_Summoned_Random, 'Metadata/Monsters/WifeMonster/WifeMonster', 3000 );
    		} );
    	"
    }
    -- src\Data\Spectres.lua
    minions["Metadata/Monsters/WifeMonster/WifeMonsterApparition_"] = {
        name = "Asinia, the Praetor's Consort",
        life = 1.75,
        energyShield = 0.2,
        fireResist = 0,
        coldResist = 0,
        lightningResist = 0,
        chaosResist = 0,
        damage = 3,
        damageSpread = 0.2,
        attackTime = 1.5,
        attackRange = 15,
        accuracy = 1,
        skillList = {
            "GSWifeMonsterDelayedBlast",
            "GSWifeMonsterDelayedBlastLarge",
            "EASWifeMonsterDelayedBlast",
        },
        modList = {
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GSWifeMonsterDelayedBlast"] = {
        name = "GSWifeMonsterDelayedBlast",
        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_physical_damage",
            "spell_maximum_base_physical_damage",
            "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
            "is_area_damage",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 100, critChance = 5, levelRequirement = 8, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["GSWifeMonsterDelayedBlastLarge"] = {
        name = "GSWifeMonsterDelayedBlastLarge",
        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_physical_damage",
            "spell_maximum_base_physical_damage",
            "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
            "is_area_damage",
            "action_attack_or_cast_time_uses_animation_length",
        },
        levels = {
            [1] = {0.80000001192093, 1.2000000476837, 80, critChance = 5, levelRequirement = 8, statInterpolation = {3, 3},  cost = { }, },
        },
    }
    -- src\Data\Skills\spectre.lua
    skills["EASWifeMonsterDelayedBlast"] = {
        name = "EASWifeMonsterDelayedBlast",
        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 = { }, },
        },
    }
    
    Asinia, the Praetor's Consort Text Audio /129
    Name
    Conquer!
    WifeBoss_Attack_Random
    Conquer!
    WifeBoss_Attack_2
    Conquer!
    WifeBoss_Attack_3
    Insolence!
    WifeBoss_Attack_4
    Insolence!
    WifeBoss_Attack_5
    Insolence!
    WifeBoss_Attack_6
    Now are mine... Forever!
    WifeBoss_BoneWall_Random
    Now are mine... Forever!
    WifeBoss_BoneWall_2
    Prison of bone! Now.. Hold still!
    WifeBoss_BoneWall_3
    Prison of bone! Now.. Hold still!
    WifeBoss_BoneWall_4
    Prison of bone! Now.. Hold still!
    WifeBoss_BoneWall_5
    Bow before me!
    WifeBoss_Combo_Random
    Bow before me!
    WifeBoss_Combo_2
    Bow before me!
    WifeBoss_Combo_3
    Bow before me!
    WifeBoss_Combo_4
    Just die already!
    WifeBoss_Combo_5
    Just die already!
    WifeBoss_Combo_6
    Just die already!
    WifeBoss_Combo_7
    Just die already!
    WifeBoss_Combo_8
    Your soul is mine!
    WifeBoss_Combo_9
    Your soul is mine!
    WifeBoss_Combo_10
    Your soul is mine!
    WifeBoss_Combo_11
    Your soul is mine!
    WifeBoss_Combo_12
    Rite of The Fourth Moon!
    WifeBoss_DelayedBlast_Random
    Rite of The Fourth Moon!
    WifeBoss_DelayedBlast_2
    Rite of The Fourth Moon!
    WifeBoss_DelayedBlast_3
    Rite of The Fourth Moon!
    WifeBoss_DelayedBlast_4
    I will avenge you, dear husband!
    WifeBoss_Emerge_Draven
    Vile dog! Now you shall meet your end!
    WifeBoss_Emerge_Ezomyte
    Your "Way" has no place here, Karui!
    WifeBoss_Emerge_Karui_Random
    You will never leave this place!
    WifeBoss_Emerge_Other
    Let me teach you the power of the Eternals, Maraketh fiend!
    WifeBoss_Emerge_Sorc
    The Cult of Innocence is not welcome here, Templar!
    WifeBoss_Emerge_Templar
    Ohhhh... Show me your power, dear sister!
    WifeBoss_Emerge_Witch
    How dare you disturb me!
    WifeBoss_SummonMinion_Random
    How dare you disturb me!
    WifeBoss_SummonMinion_2
    How dare you disturb me!
    WifeBoss_SummonMinion_3
    How dare you disturb me!
    WifeBoss_SummonMinion_4
    Insolent fool!
    WifeBoss_Explode_Random
    Insolent fool!
    WifeBoss_Explode_2
    Insolent fool!
    WifeBoss_Explode_3
    Sacrificial souls!
    WifeBoss_Explode_4
    Sacrificial souls!
    WifeBoss_Explode_5
    Sacrificial souls!
    WifeBoss_Explode_6
    Tormented dead!
    WifeBoss_Explode_7
    Tormented dead!
    WifeBoss_Explode_8
    Tormented dead!
    WifeBoss_Explode_9
    Long live the Eternal Empire!
    WifeBoss_PlayerDeath_Ezomyte_Random
    Long live the Eternal Empire!
    WifeBoss_PlayerDeath_Ezomyte_2
    Long live the Eternal Empire!
    WifeBoss_PlayerDeath_Ezomyte_3
    We will always win... Ezomyte...
    WifeBoss_PlayerDeath_Ezomyte_4
    Your bones will adorn our Eternal home...
    WifeBoss_PlayerDeath_Generic_Random
    Your bones will hang over these graves for eternity...
    WifeBoss_PlayerDeath_Generic_2
    Your torment has just begun...
    WifeBoss_PlayerDeath_Generic_3
    Your torment has just begun...
    WifeBoss_PlayerDeath_Generic_4
    Your soul will not travel to your Halls of the Dead, Karui... it will stay right here with us...
    WifeBoss_PlayerDeath_Karui
    No escape!
    WifeBoss_Swap_Random
    No escape!
    WifeBoss_Swap_2
    No escape!
    WifeBoss_Swap_3
    Wilt and rot!
    WifeBoss_Swap_4
    Wilt and rot!
    WifeBoss_Swap_5
    Wilt and rot!
    WifeBoss_Swap_6
    Who dares tread my halls?
    WifeBoss_Area1_Random
    Who dares tread my halls?
    WifeBoss_Area1_2
    Who dares tread my halls?
    WifeBoss_Area1_3
    So... You have vanquished my beloved Praetor? You shall find no mercy here, intruder. I will relish every moment of your torment.
    WifeBoss_Area1_Draven_Random
    You murder my Praetor, and now you dare come for me? I will break you, dog.
    WifeBoss_Area1_Ezo_Draven_Random
    Ezomyte filth! Yet you bested my husband? Your kind knows only suffering, and I shall ensure you suffer most of all!
    WifeBoss_Area1_Ezo_Draven_2
    Ezomyte filth! Yet you bested my husband? Your kind knows only suffering, and I shall ensure you suffer most of all!

    WifeBoss_Area1_Ezo_Draven_3
    You dare trespass in my halls after what your people have done to mine, Ezomyte? You disgust me!

    WifeBoss_Area1_Ezo_Random
    You dare trespass in my halls after what your people have done to mine, Ezomyte? You disgust me!
    WifeBoss_Area1_Ezo_2
    An Ezomyte trespassing in my halls? Disgusting... This land belongs to the immortal souls of the Eternal Empire!
    WifeBoss_Area1_Ezo_3
    An Ezomyte trespassing in my halls? Disgusting... This land belongs to the immortal souls of the Eternal Empire!
    WifeBoss_Area1_Ezo_4
    You can't possibly be aiding that doddering old fool! Why die for someone else's war?
    WifeBoss_Area2_Random
    You can't possibly be aiding that doddering old fool! Why die for someone else's war?
    WifeBoss_Area2_2
    Your precious 'Count' Lachlann has accomplished nothing but sending your people to their deaths.
    WifeBoss_Area2_Ezo_Random
    Your precious 'Count' Lachlann has accomplished nothing but sending your people to their deaths.
    WifeBoss_Area2_Ezo_2
    Your precious 'Count' Lachlann has accomplished nothing but sending your people to their deaths.
    WifeBoss_Area2_Ezo_3
    Hmm... aiding that decrepit Ezomyte fool, are you?
    WifeBoss_Area2_Ezo_4
    Hmm... aiding that decrepit Ezomyte fool, are you?
    WifeBoss_Area2_Ezo_5
    Arise! Slay this intruder!
    WifeBoss_Area3_Random
    Arise! Slay this intruder!
    WifeBoss_Area3_2
    Arise! Slay this intruder!
    WifeBoss_Area3_3
    Arise! Slay this intruder!
    WifeBoss_Area3_4
    Arise! Slay this intruder!
    WifeBoss_Area3_5
    Arise! Slay this intruder!
    WifeBoss_Area3_6
    Arise! Slay this intruder!
    WifeBoss_Area3_7
    Arise! Slay this intruder!
    WifeBoss_Area3_8
    Arise! Cut down this Ezomyte!
    WifeBoss_Area3_Ezo_Random
    Arise! Cut down this Ezomyte!
    WifeBoss_Area3_Ezo_2
    Arise! Cut down this Ezomyte!
    WifeBoss_Area3_Ezo_3
    Arise! Cut down this Ezomyte!
    WifeBoss_Area3_Ezo_4
    It appears I will have to deal with you myself... So be it.
    WifeBoss_Area3_Dead_Random
    It appears I will have to deal with you myself... So be it.
    WifeBoss_Area3_Dead_2
    It appears I must sully my hands with you... Ezomyte vermin.
    WifeBoss_Area3_Ezo_Dead_Random
    It appears I must sully my hands with you... Ezomyte vermin.
    WifeBoss_Area3_Ezo_Dead_2
    I studied dark thaumaturgy beyond your comprehension! With this power, I have transcended the chains of the flesh!
    WifeBoss_Area_PreEmerge_Random
    And finally... You have found my place of rest. Here... You shall fight for more than just your worthless life.
    WifeBoss_Area_PreEmerge_2
    Beloved Draven, aid me!
    WifeBoss_Summon_Random
    Draven, I need you!
    WifeBoss_Summon_2
    Draven, I need you!
    WifeBoss_Summon_3
    My love, I call to you!
    WifeBoss_Summon_4
    My love, I call to you!
    WifeBoss_Summon_5
    My love, I call to you!
    WifeBoss_Summon_6
    My love, I call to you!
    WifeBoss_Summon_7
    To me, Draven!
    WifeBoss_Summon_8
    To me, Draven!
    WifeBoss_Summon_9
    At your request
    WifeBoss_Summoned_Random
    At your request
    WifeBoss_Summoned_2
    At your request
    WifeBoss_Summoned_3
    At your request
    WifeBoss_Summoned_4
    At your request
    WifeBoss_Summoned_5
    At your request
    WifeBoss_Summoned_6
    At your request
    WifeBoss_Summoned_7
    At your request
    WifeBoss_Summoned_8
    I am here, my beloved...
    WifeBoss_Summoned_9
    I am here, my beloved...
    WifeBoss_Summoned_10
    I am here, my beloved...
    WifeBoss_Summoned_11
    I am here, my beloved...
    WifeBoss_Summoned_12
    I am here, my beloved...
    WifeBoss_Summoned_13
    I am here, my beloved...
    WifeBoss_Summoned_14
    I am with you, Draven!
    WifeBoss_Summoned_15
    I am with you, Draven!
    WifeBoss_Summoned_16
    I am with you, Draven!
    WifeBoss_Summoned_17
    I am with you, Draven!
    WifeBoss_Summoned_18
    I am with you, Draven!
    WifeBoss_Summoned_19
    I answer your call, husband!
    WifeBoss_Summoned_20
    I answer your call, husband!
    WifeBoss_Summoned_21
    I answer your call, husband!
    WifeBoss_Summoned_22