Courtesan
Slug: Courtesan
Open Source Page
Spectre-capable
Tags:
Caster
Unarmed_onhit_audio
allows_additional_projectiles
allows_inc_aoe
medium_movement
melee
monster_barely_moves
not_str
physical_affinity
ranged
red_blood
undead
zombie
Areas:
Holten Estate
Mausoleum of the Praetor
Ogham Manor
The Manor Ramparts
The Ziggurat Refuge
No custom art yet. Upload one to replace the placeholder.
Core Stat Percentiles
Evasion Rating
850
Top 16%
Spell Damage
466
Top 26%
Accuracy
2,502
Top 71%
Damage
466
Top 73%
Life
12,411
Top 79%
Armour
2,413
Top 81%
Other Notable Percentiles
Critical Damage Bonus
+30%
Top 0.1%
Level
68
Top 2.1%
Critical Hits Chance
5%
Top 3.2%
Damage Spread
±20%
Top 4.7%
Attack Time
2.25 Second
Top 7.9%
Energy Shield
3,103
Top 16%
Courtesan
Variant code: BloodCourtesan1Overview
Summary
| Spectre | Y | |
|---|---|---|
| Area | Mausoleum of the Praetor, The Manor Ramparts, Ogham Manor, Holten Estate, The Ziggurat Refuge | |
| Tags | allows_additional_projectiles, allows_inc_aoe, Caster, medium_movement, melee, monster_barely_moves, not_str, physical_affinity, ranged, red_blood, Unarmed_onhit_audio, undead, zombie | |
| Packs |
Base Multipliers
Life
200%
Energy Shield From Life
20%
Evasion
+20%
Resistance
Damage
200%
Accuracy
100%
Critical Hits Chance
5%
Critical Damage Bonus
+30%
Attack Distance
5 ~ 11
Attack Time
2.25 Second
Damage Spread
±20%
Experience
200%
Model Size
100%
Type
BloodCourtesan
Metadata
BloodCourtesan1
Extra Data
version 2
extends "Metadata/Monsters/Monster"
Actor
{
basic_action = "Revive"
basic_action = "Emerge2"
basic_action = "ChangeToStance1"
basic_action = "ChangeToStance2"
}
Stats
{
set_base_heavy_stun_duration_ms = 3317
}
Transitionable
{
}
version 2
extends "Metadata/Monsters/Monster"
Preload
{
preload_animated_object = "Metadata/Effects/Spells/monsters_effects/Gallows/Act1/LivingBlood/bloodrush.ao"
preload_animated_object = "Metadata/Effects/Spells/monsters_effects/Gallows/Act1/BloodCourtesan/bloodbeam.ao"
preload_animated_object = "Metadata/Effects/Spells/monsters_effects/Gallows/Act1/BloodCourtesan/pierce.ao"
preload_epk = "Metadata/Effects/Spells/monsters_effects/Gallows/Act1/BloodCourtesan/CretinPop.epk"
}
Actor
{
on_event_beamstart_for_EmptyActionSpell =
"
target.IfAlive( ()
{
PlayBeam( BloodCourtesanBurstBeam, this, this.target, default, default, default, R_Weapon, chest_jntBnd );
PlayBeam( BloodCourtesanBurstBeam, this, this.target, default, default, default, L_Weapon, chest_jntBnd );
} );
"
}
Life
{
on_death = "AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/on_death_epks/monster_on_death.epk' );"
on_spawned_dead = "AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/on_death_epks/monster_on_death.epk' );"
}
Transitionable
{
on_transition =
"
Roll( 1, 2,
{
PlayEffect( 'Metadata/Monsters/BloodMonsters/CourtesanAggroAudio.ao' );
} );
"
}
-- src\Data\Spectres.lua
minions["Metadata/Monsters/BloodMonsters/BloodCourtesan1"] = {
name = "Courtesan",
life = 2,
energyShield = 0.2,
fireResist = 0,
coldResist = 0,
lightningResist = 0,
chaosResist = 0,
damage = 2,
damageSpread = 0.2,
attackTime = 2.25,
attackRange = 11,
accuracy = 1,
skillList = {
"MeleeAtAnimationSpeed",
"LivingBloodGroundSmall",
"CourtesanBloodBurstBeam",
"CourtesanBloodSpear",
"CourtesanBloodSpear2",
"CourtesanBloodSpear3",
"CourtesanBloodSpearEmptyAction",
"CourtesanBloodSpearAreaOfEffect",
},
modList = {
},
}
-- src\Data\Skills\spectre.lua
skills["MeleeAtAnimationSpeed"] = {
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 = {
"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] = {levelRequirement = 1, statInterpolation = {}, cost = { }, },
},
}
-- src\Data\Skills\spectre.lua
skills["LivingBloodGroundSmall"] = {
name = "LivingBloodGroundSmall",
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_physical_damage_to_deal_per_minute",
"active_skill_area_of_effect_radius_+%_final",
"base_skill_effect_duration",
"monster_penalty_against_minions_damage_+%_final_vs_player_minions",
"is_area_damage",
},
levels = {
[1] = {1, -35, 4000, -40, levelRequirement = 1, statInterpolation = {3}, cost = { }, },
},
}
-- src\Data\Skills\spectre.lua
skills["CourtesanBloodBurstBeam"] = {
name = "CourtesanBloodBurstBeam",
hidden = true,
color = ,
baseEffectiveness = 0,
incrementalEffectiveness = 0,
skillTypes = {
},
statDescriptionScope = "skill_stat_descriptions",
castTime = 2.5,
baseFlags = {
},
baseMods = {
},
qualityStats = {
},
stats = {
},
levels = {
[1] = {levelRequirement = 1, statInterpolation = {}, cost = { }, },
},
}
-- src\Data\Skills\spectre.lua
skills["CourtesanBloodSpear"] = {
name = "CourtesanBloodSpear",
hidden = true,
color = ,
baseEffectiveness = 0,
incrementalEffectiveness = 0,
skillTypes = {
[SkillType.Triggerable] = true,
[SkillType.Damage] = true,
},
statDescriptionScope = "skill_stat_descriptions",
castTime = 2.5,
baseFlags = {
projectile = true,
},
baseMods = {
},
qualityStats = {
},
stats = {
"base_is_projectile",
"always_pierce",
"projectile_uses_contact_position",
"base_deal_no_damage",
},
levels = {
[1] = {levelRequirement = 1, statInterpolation = {}, cost = { }, },
},
}
-- src\Data\Skills\spectre.lua
skills["CourtesanBloodSpear2"] = {
name = "CourtesanBloodSpear2",
hidden = true,
color = ,
baseEffectiveness = 0,
incrementalEffectiveness = 0,
skillTypes = {
[SkillType.Triggerable] = true,
[SkillType.Damage] = true,
},
statDescriptionScope = "skill_stat_descriptions",
castTime = 1,
baseFlags = {
projectile = true,
},
baseMods = {
},
qualityStats = {
},
stats = {
"base_is_projectile",
"always_pierce",
"projectile_uses_contact_position",
"base_deal_no_damage",
},
levels = {
[1] = {levelRequirement = 1, statInterpolation = {}, cost = { }, },
},
}
-- src\Data\Skills\spectre.lua
skills["CourtesanBloodSpear3"] = {
name = "CourtesanBloodSpear3",
hidden = true,
color = ,
baseEffectiveness = 0,
incrementalEffectiveness = 0,
skillTypes = {
[SkillType.Triggerable] = true,
[SkillType.Damage] = true,
},
statDescriptionScope = "skill_stat_descriptions",
castTime = 1,
baseFlags = {
projectile = true,
},
baseMods = {
},
qualityStats = {
},
stats = {
"base_is_projectile",
"always_pierce",
"projectile_uses_contact_position",
"base_deal_no_damage",
},
levels = {
[1] = {levelRequirement = 1, statInterpolation = {}, cost = { }, },
},
}
-- src\Data\Skills\spectre.lua
skills["CourtesanBloodSpearEmptyAction"] = {
name = "CourtesanBloodSpearEmptyAction",
hidden = true,
color = ,
baseEffectiveness = 0,
incrementalEffectiveness = 0,
skillTypes = {
},
statDescriptionScope = "skill_stat_descriptions",
castTime = 2.5,
baseFlags = {
},
baseMods = {
},
qualityStats = {
},
stats = {
},
levels = {
[1] = {levelRequirement = 1, statInterpolation = {}, cost = { }, },
},
}
-- src\Data\Skills\spectre.lua
skills["CourtesanBloodSpearAreaOfEffect"] = {
name = "CourtesanBloodSpearAreaOfEffect",
hidden = true,
color = ,
baseEffectiveness = 0,
incrementalEffectiveness = 0,
skillTypes = {
[SkillType.Triggerable] = true,
[SkillType.Spell] = true,
[SkillType.Damage] = true,
},
statDescriptionScope = "geometry_spell",
castTime = 1,
baseFlags = {
spell = true,
area = true,
projectile = true,
},
baseMods = {
},
qualityStats = {
},
stats = {
"spell_minimum_base_physical_damage",
"spell_maximum_base_physical_damage",
"monster_penalty_against_minions_damage_+%_final_vs_player_minions",
"is_area_damage",
"base_skill_can_be_blocked",
"base_is_projectile",
},
levels = {
[1] = {0.80000001192093, 1.2000000476837, -40, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, },
},
}
Courtesan
Variant code: BloodCourtesanStrongboxOverview
Summary
| Spectre | N | |
|---|---|---|
| Tags | allows_additional_projectiles, allows_inc_aoe, Caster, medium_movement, melee, monster_barely_moves, not_str, physical_affinity, ranged, red_blood, Unarmed_onhit_audio, undead, zombie | |
| Packs |
Base Multipliers
Life
200%
Energy Shield From Life
20%
Evasion
+20%
Resistance
Damage
200%
Accuracy
100%
Critical Hits Chance
5%
Critical Damage Bonus
+30%
Attack Distance
5 ~ 11
Attack Time
2.25 Second
Damage Spread
±20%
Experience
200%
Model Size
100%
Type
BloodCourtesan
Metadata
BloodCourtesanStrongbox
Extra Data
version 2
extends "Metadata/Monsters/Monster"
Actor
{
basic_action = "Revive"
basic_action = "Emerge2"
basic_action = "ChangeToStance1"
basic_action = "ChangeToStance2"
}
Stats
{
set_base_heavy_stun_duration_ms = 3317
}
Transitionable
{
}
version 2
extends "Metadata/Monsters/Monster"
Preload
{
preload_animated_object = "Metadata/Effects/Spells/monsters_effects/Gallows/Act1/LivingBlood/bloodrush.ao"
preload_animated_object = "Metadata/Effects/Spells/monsters_effects/Gallows/Act1/BloodCourtesan/bloodbeam.ao"
preload_animated_object = "Metadata/Effects/Spells/monsters_effects/Gallows/Act1/BloodCourtesan/pierce.ao"
preload_epk = "Metadata/Effects/Spells/monsters_effects/Gallows/Act1/BloodCourtesan/CretinPop.epk"
}
Actor
{
on_event_beamstart_for_EmptyActionSpell =
"
target.IfAlive( ()
{
PlayBeam( BloodCourtesanBurstBeam, this, this.target, default, default, default, R_Weapon, chest_jntBnd );
PlayBeam( BloodCourtesanBurstBeam, this, this.target, default, default, default, L_Weapon, chest_jntBnd );
} );
"
}
Life
{
on_death = "AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/on_death_epks/monster_on_death.epk' );"
on_spawned_dead = "AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/on_death_epks/monster_on_death.epk' );"
}
Transitionable
{
on_transition =
"
Roll( 1, 2,
{
PlayEffect( 'Metadata/Monsters/BloodMonsters/CourtesanAggroAudio.ao' );
} );
"
}
-- src\Data\Spectres.lua
minions["Metadata/Monsters/BloodMonsters/BloodCourtesanStrongbox"] = {
name = "Courtesan",
life = 2,
energyShield = 0.2,
fireResist = 0,
coldResist = 0,
lightningResist = 0,
chaosResist = 0,
damage = 2,
damageSpread = 0.2,
attackTime = 2.25,
attackRange = 11,
accuracy = 1,
skillList = {
"MeleeAtAnimationSpeed",
"LivingBloodGroundSmall",
"CourtesanBloodBurstBeam",
"CourtesanBloodSpear",
"CourtesanBloodSpear2",
"CourtesanBloodSpear3",
"CourtesanBloodSpearEmptyAction",
"CourtesanBloodSpearAreaOfEffect",
},
modList = {
},
}
-- src\Data\Skills\spectre.lua
skills["MeleeAtAnimationSpeed"] = {
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 = {
"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] = {levelRequirement = 1, statInterpolation = {}, cost = { }, },
},
}
-- src\Data\Skills\spectre.lua
skills["LivingBloodGroundSmall"] = {
name = "LivingBloodGroundSmall",
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_physical_damage_to_deal_per_minute",
"active_skill_area_of_effect_radius_+%_final",
"base_skill_effect_duration",
"monster_penalty_against_minions_damage_+%_final_vs_player_minions",
"is_area_damage",
},
levels = {
[1] = {1, -35, 4000, -40, levelRequirement = 1, statInterpolation = {3}, cost = { }, },
},
}
-- src\Data\Skills\spectre.lua
skills["CourtesanBloodBurstBeam"] = {
name = "CourtesanBloodBurstBeam",
hidden = true,
color = ,
baseEffectiveness = 0,
incrementalEffectiveness = 0,
skillTypes = {
},
statDescriptionScope = "skill_stat_descriptions",
castTime = 2.5,
baseFlags = {
},
baseMods = {
},
qualityStats = {
},
stats = {
},
levels = {
[1] = {levelRequirement = 1, statInterpolation = {}, cost = { }, },
},
}
-- src\Data\Skills\spectre.lua
skills["CourtesanBloodSpear"] = {
name = "CourtesanBloodSpear",
hidden = true,
color = ,
baseEffectiveness = 0,
incrementalEffectiveness = 0,
skillTypes = {
[SkillType.Triggerable] = true,
[SkillType.Damage] = true,
},
statDescriptionScope = "skill_stat_descriptions",
castTime = 2.5,
baseFlags = {
projectile = true,
},
baseMods = {
},
qualityStats = {
},
stats = {
"base_is_projectile",
"always_pierce",
"projectile_uses_contact_position",
"base_deal_no_damage",
},
levels = {
[1] = {levelRequirement = 1, statInterpolation = {}, cost = { }, },
},
}
-- src\Data\Skills\spectre.lua
skills["CourtesanBloodSpear2"] = {
name = "CourtesanBloodSpear2",
hidden = true,
color = ,
baseEffectiveness = 0,
incrementalEffectiveness = 0,
skillTypes = {
[SkillType.Triggerable] = true,
[SkillType.Damage] = true,
},
statDescriptionScope = "skill_stat_descriptions",
castTime = 1,
baseFlags = {
projectile = true,
},
baseMods = {
},
qualityStats = {
},
stats = {
"base_is_projectile",
"always_pierce",
"projectile_uses_contact_position",
"base_deal_no_damage",
},
levels = {
[1] = {levelRequirement = 1, statInterpolation = {}, cost = { }, },
},
}
-- src\Data\Skills\spectre.lua
skills["CourtesanBloodSpear3"] = {
name = "CourtesanBloodSpear3",
hidden = true,
color = ,
baseEffectiveness = 0,
incrementalEffectiveness = 0,
skillTypes = {
[SkillType.Triggerable] = true,
[SkillType.Damage] = true,
},
statDescriptionScope = "skill_stat_descriptions",
castTime = 1,
baseFlags = {
projectile = true,
},
baseMods = {
},
qualityStats = {
},
stats = {
"base_is_projectile",
"always_pierce",
"projectile_uses_contact_position",
"base_deal_no_damage",
},
levels = {
[1] = {levelRequirement = 1, statInterpolation = {}, cost = { }, },
},
}
-- src\Data\Skills\spectre.lua
skills["CourtesanBloodSpearEmptyAction"] = {
name = "CourtesanBloodSpearEmptyAction",
hidden = true,
color = ,
baseEffectiveness = 0,
incrementalEffectiveness = 0,
skillTypes = {
},
statDescriptionScope = "skill_stat_descriptions",
castTime = 2.5,
baseFlags = {
},
baseMods = {
},
qualityStats = {
},
stats = {
},
levels = {
[1] = {levelRequirement = 1, statInterpolation = {}, cost = { }, },
},
}
-- src\Data\Skills\spectre.lua
skills["CourtesanBloodSpearAreaOfEffect"] = {
name = "CourtesanBloodSpearAreaOfEffect",
hidden = true,
color = ,
baseEffectiveness = 0,
incrementalEffectiveness = 0,
skillTypes = {
[SkillType.Triggerable] = true,
[SkillType.Spell] = true,
[SkillType.Damage] = true,
},
statDescriptionScope = "geometry_spell",
castTime = 1,
baseFlags = {
spell = true,
area = true,
projectile = true,
},
baseMods = {
},
qualityStats = {
},
stats = {
"spell_minimum_base_physical_damage",
"spell_maximum_base_physical_damage",
"monster_penalty_against_minions_damage_+%_final_vs_player_minions",
"is_area_damage",
"base_skill_can_be_blocked",
"base_is_projectile",
},
levels = {
[1] = {0.80000001192093, 1.2000000476837, -40, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3}, cost = { }, },
},
}