← Back to list

Asinia, the Praetor's Consort

Slug: Asinia%2C_the_Praetors_Consort

Open Source Page
Tags: 1HSword_onhit_audio ghost_blood humanoid not_dex skeleton slow_movement undead
Areas: Tomb of the Consort
Asinia, the Praetor's Consort artwork

No custom art yet. Upload one to replace the placeholder.

Core Stat Percentiles

Spell Damage
699
Top 4.2%
Evasion Rating
708
Top 25%
Damage
699
Top 34%
Accuracy
2,502
Top 70%
Armour
4,223
Top 71%
Life
15,514
Top 74%

Other Notable Percentiles

Critical Damage Bonus
+30%
Top 0.1%
Level
68
Top 2.1%
Critical Hits Chance
5%
Top 3.2%
Minion Damage
2,906
Top 3.7%
Damage Spread
±20%
Top 4.7%
Energy Shield
3,879
Top 6.2%

Asinia, the Praetor's Consort

Variant code: WifeMonster
Section 1 of 3

Overview

Undead

Implicit Mods: i am boss of tier [2] monster dropped item rarity +% [1600] monster slain experience +% [0]

Summary

Spectre N
Area Tomb of the Consort
Tags 1HSword_onhit_audio, ghost_blood, humanoid, not_dex, skeleton, slow_movement, undead

Base Multipliers

Life
175%
Energy Shield From Life
20%
Armour
+75%
Resistance
0 30 0 0
Damage
300%
Accuracy
100%
Critical Hits Chance
5%
Critical Damage Bonus
+30%
Attack Distance
5 ~ 15
Attack Time
1.5 Second
Damage Spread
±20%
Experience
250%
Model Size
140%
Type
WifeMonster
Metadata
WifeMonster

Extra Data

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
}
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' ),
		{
			IfInArea( G1_9, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Ezomyte, 'Metadata/Monsters/WifeMonster/WifeMonster', 600 );
			}, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Ezomyte, 'Metadata/Monsters/WifeMonster/WifeMonsterMap_', 600 );
			} );
			succeeded = true;
		} );
		If( Or( player_ascendancy == 'Warrior', player_ascendancy == 'Warrior1', player_ascendancy == 'Warrior2', player_ascendancy == 'Warrior3' ),
		{
			IfInArea( G1_9, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Karui, 'Metadata/Monsters/WifeMonster/WifeMonster', 900 );
			}, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Karui, 'Metadata/Monsters/WifeMonster/WifeMonsterMap_', 900 );
			} );
			succeeded = true;
		} );
		If( Or( player_ascendancy == 'Marauder', player_ascendancy == 'Marauder1', player_ascendancy == 'Marauder2', player_ascendancy == 'Marauder3' ),
		{
			IfInArea( G1_9, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Karui, 'Metadata/Monsters/WifeMonster/WifeMonster', 900 );
			}, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Karui, 'Metadata/Monsters/WifeMonster/WifeMonsterMap_', 900 );
			} );
			succeeded = true;
		} );
		If( Or( player_ascendancy == 'Sorceress', player_ascendancy == 'Sorceress1', player_ascendancy == 'Sorceress2', player_ascendancy == 'Sorceress3' ),
		{
			IfInArea( G1_9, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Sorc, 'Metadata/Monsters/WifeMonster/WifeMonster', 1300 );
			}, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Sorc, 'Metadata/Monsters/WifeMonster/WifeMonsterMap_', 1300 );
			} );
			succeeded = true;
		} );
		If( Or( player_ascendancy == 'Witch', player_ascendancy == 'Witch1', player_ascendancy == 'Witch2', player_ascendancy == 'Witch3' ),
		{
			IfInArea( G1_9, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Witch, 'Metadata/Monsters/WifeMonster/WifeMonster', 100 );
			}, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Witch, 'Metadata/Monsters/WifeMonster/WifeMonsterMap_', 100 );
			} );
			succeeded = true;
		} );
		If( Or( player_ascendancy == 'Templar', player_ascendancy == 'Templar1', player_ascendancy == 'Templar2', player_ascendancy == 'Templar3' ),
		{
			IfInArea( G1_9, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Templar, 'Metadata/Monsters/WifeMonster/WifeMonster', 1500 );
			}, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Templar, 'Metadata/Monsters/WifeMonster/WifeMonsterMap_', 1500 );
			} );
			succeeded = true;
		} );
		If( !VariableExists( succeeded ), ()
		{
			IfInArea( G1_9, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Other, 'Metadata/Monsters/WifeMonster/WifeMonster', 1500 );
			}, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Other, 'Metadata/Monsters/WifeMonster/WifeMonsterMap_', 1500 );
			} );
		} );
	"

	on_effect_start_EASWifeMonsterBodySwap =
	"
		Roll( 5, 6, ()
		{
			IfInArea( G1_9, ()
			{
				PlayTextAudio( WifeBoss_Swap_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
			}, ()
			{
				PlayTextAudio( WifeBoss_Swap_Random, 'Metadata/Monsters/WifeMonster/WifeMonsterMap_' );
			} );
		} );
	"

	on_effect_start_WifeMonsterComboAttack =
	"
		Roll( 5, 6, ()
		{
			IfInArea( G1_9, ()
			{
				PlayTextAudio( WifeBoss_Combo_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
			}, ()
			{
				PlayTextAudio( WifeBoss_Combo_Random, 'Metadata/Monsters/WifeMonster/WifeMonsterMap_' );
			} );
		} );
	"

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

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

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

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

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

Animated
{
	on_knockdown_bwd_01 =
	"
		IfInArea( G1_9, ()
		{
			PlayTextAudio( WifeBoss_Knockdown_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
		}, ()
		{
			PlayTextAudio( WifeBoss_Knockdown_Random, 'Metadata/Monsters/WifeMonster/WifeMonsterMap_' );
		} );
	"
}
-- 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.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.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",
        "base_skill_cannot_be_avoided_by_dodge_roll_or_evaded_or_blocked",
    },
    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.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 = { }, },
    },
}

Asinia, the Praetor's Consort

Variant code: WifeMonsterCRUEL
Section 2 of 3

Overview

Undead

Implicit Mods: i am boss of tier [2] monster dropped item rarity +% [1600] monster slain experience +% [0]

Summary

Spectre N
Tags 1HSword_onhit_audio, ghost_blood, humanoid, not_dex, skeleton, slow_movement, undead

Base Multipliers

Life
250%
Energy Shield From Life
20%
Armour
+75%
Resistance
0 30 0 0
Damage
300%
Accuracy
100%
Critical Hits Chance
5%
Critical Damage Bonus
+30%
Attack Distance
5 ~ 15
Attack Time
1.5 Second
Damage Spread
±20%
Experience
250%
Model Size
140%
Type
WifeMonsterCRUEL
Metadata
WifeMonsterCRUEL

Extra Data

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
}
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' ),
		{
			IfInArea( G1_9, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Ezomyte, 'Metadata/Monsters/WifeMonster/WifeMonster', 600 );
			}, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Ezomyte, 'Metadata/Monsters/WifeMonster/WifeMonsterMap_', 600 );
			} );
			succeeded = true;
		} );
		If( Or( player_ascendancy == 'Warrior', player_ascendancy == 'Warrior1', player_ascendancy == 'Warrior2', player_ascendancy == 'Warrior3' ),
		{
			IfInArea( G1_9, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Karui, 'Metadata/Monsters/WifeMonster/WifeMonster', 900 );
			}, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Karui, 'Metadata/Monsters/WifeMonster/WifeMonsterMap_', 900 );
			} );
			succeeded = true;
		} );
		If( Or( player_ascendancy == 'Marauder', player_ascendancy == 'Marauder1', player_ascendancy == 'Marauder2', player_ascendancy == 'Marauder3' ),
		{
			IfInArea( G1_9, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Karui, 'Metadata/Monsters/WifeMonster/WifeMonster', 900 );
			}, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Karui, 'Metadata/Monsters/WifeMonster/WifeMonsterMap_', 900 );
			} );
			succeeded = true;
		} );
		If( Or( player_ascendancy == 'Sorceress', player_ascendancy == 'Sorceress1', player_ascendancy == 'Sorceress2', player_ascendancy == 'Sorceress3' ),
		{
			IfInArea( G1_9, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Sorc, 'Metadata/Monsters/WifeMonster/WifeMonster', 1300 );
			}, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Sorc, 'Metadata/Monsters/WifeMonster/WifeMonsterMap_', 1300 );
			} );
			succeeded = true;
		} );
		If( Or( player_ascendancy == 'Witch', player_ascendancy == 'Witch1', player_ascendancy == 'Witch2', player_ascendancy == 'Witch3' ),
		{
			IfInArea( G1_9, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Witch, 'Metadata/Monsters/WifeMonster/WifeMonster', 100 );
			}, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Witch, 'Metadata/Monsters/WifeMonster/WifeMonsterMap_', 100 );
			} );
			succeeded = true;
		} );
		If( Or( player_ascendancy == 'Templar', player_ascendancy == 'Templar1', player_ascendancy == 'Templar2', player_ascendancy == 'Templar3' ),
		{
			IfInArea( G1_9, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Templar, 'Metadata/Monsters/WifeMonster/WifeMonster', 1500 );
			}, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Templar, 'Metadata/Monsters/WifeMonster/WifeMonsterMap_', 1500 );
			} );
			succeeded = true;
		} );
		If( !VariableExists( succeeded ), ()
		{
			IfInArea( G1_9, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Other, 'Metadata/Monsters/WifeMonster/WifeMonster', 1500 );
			}, ()
			{
				PlayTextAudio( WifeBoss_Emerge_Other, 'Metadata/Monsters/WifeMonster/WifeMonsterMap_', 1500 );
			} );
		} );
	"

	on_effect_start_EASWifeMonsterBodySwap =
	"
		Roll( 5, 6, ()
		{
			IfInArea( G1_9, ()
			{
				PlayTextAudio( WifeBoss_Swap_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
			}, ()
			{
				PlayTextAudio( WifeBoss_Swap_Random, 'Metadata/Monsters/WifeMonster/WifeMonsterMap_' );
			} );
		} );
	"

	on_effect_start_WifeMonsterComboAttack =
	"
		Roll( 5, 6, ()
		{
			IfInArea( G1_9, ()
			{
				PlayTextAudio( WifeBoss_Combo_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
			}, ()
			{
				PlayTextAudio( WifeBoss_Combo_Random, 'Metadata/Monsters/WifeMonster/WifeMonsterMap_' );
			} );
		} );
	"

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

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

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

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

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

Animated
{
	on_knockdown_bwd_01 =
	"
		IfInArea( G1_9, ()
		{
			PlayTextAudio( WifeBoss_Knockdown_Random, 'Metadata/Monsters/WifeMonster/WifeMonster' );
		}, ()
		{
			PlayTextAudio( WifeBoss_Knockdown_Random, 'Metadata/Monsters/WifeMonster/WifeMonsterMap_' );
		} );
	"
}
-- 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.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.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",
        "base_skill_cannot_be_avoided_by_dodge_roll_or_evaded_or_blocked",
    },
    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.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 = { }, },
    },
}

Asinia, the Praetor's Consort

Variant code: WifeMonsterApparition_
Section 3 of 3

Overview

Undead

Summary

Spectre N
Tags 1HSword_onhit_audio, ghost_blood, humanoid, not_dex, skeleton, slow_movement, undead

Base Multipliers

Life
175%
Energy Shield From Life
20%
Armour
+75%
Resistance
0 30 0 0
Damage
300%
Accuracy
100%
Critical Hits Chance
5%
Critical Damage Bonus
+30%
Attack Distance
5 ~ 15
Attack Time
1.5 Second
Damage Spread
±20%
Experience
250%
Model Size
140%
Type
WifeMonster
Metadata
WifeMonsterApparition_

Extra Data

version 2
extends "Metadata/Monsters/Monster"

StateMachine
{
	define_shared_state = "light; death; emerged;"
}
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 = "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 = { }, },
    },
}