Gianna
Humanoid
Regenerate 2% of Life per second
SpectreN
Tagscaster, human, humanoid, is_unarmed, lightning_affinity, medium_movement, metal_armour, physical_affinity, puncturing_weapon, red_blood
Life
400%
Energy Shield From Life
33%
Armour
+33%
Evasion
+33%
Ailment Threshold
400%
Resistance
40 40 40 25
Damage
400%
Accuracy
100%
Critical Strike Chance
+5%
Critical Strike Multiplier
+130%
Attack Distance
4 ~ 11
Attack Time
1.755 Second
Damage Spread
±20%
Experience
200%
Model Size
100%
Type
HeistAlliedNPC
Metadata
HeistIllusionist1_
Level
68
Life
25,733
Armour
38,291
Evasion
6,303
Energy Shield
2,022
Damage
1,494
Spell Damage
1,494
Accuracy
290
Attack Time
1.755
Experience
20,510
Ailment Threshold
25,733
Chill
81
Shock
81
Brittle
460
Scorch
81
Sap
225
MPSHeistGiannaSpellProjectile
Spell, Projectile, ProjectilesFromUser, Triggerable
Critical Strike Chance: 5%
Cast Time: 1.333 sec
Cooldown Time: 2 sec
Deals 4865 to 9034 Lightning Damage
50% chance to Shock enemies
base is projectile [1]
maintain projectile direction when using contact position [1]
monster projectile variation [153]
projectile uses contact position [1]
use scaled contact offset [1]
MPSHeistGiannaSpellProjectile2
Spell, Projectile, ProjectilesFromUser, Triggerable
Critical Strike Chance: 5%
Cast Time: 1.333 sec
Cooldown Time: 2 sec
Deals 4865 to 9034 Physical Damage
50% chance to Hinder Enemies on Hit
base is projectile [1]
maintain projectile direction when using contact position [1]
monster projectile variation [161]
projectile uses contact position [1]
use scaled contact offset [1]
TEMP_EASHeistGiannaTransform
Spell
Cast Time: 1.83 sec
EGHeistPullLever
Triggerable, Spell
Cast Time: 2.17 sec
skill cannot be knocked back [1]
skill cannot be stunned [1]
spell maximum action distance +% [-95]
EGHeistDeceptionTrickGuard
Triggerable, Spell
Cast Time: 1 sec
spell maximum action distance +% [-40]
EASHeistGiannaDisappear
Spell
Cast Time: 1.83 sec
EGHeistScoutDetect
Triggerable, Spell
Cast Time: 1.5 sec
skill cannot be knocked back [1]
skill cannot be stunned [1]
EGHeistPerceptionDiscoverHidden
Triggerable, Spell
Cast Time: 1 sec
Cooldown Time: 1.5 sec
skill cannot be stunned [1]
HeistFindDoorArt2
[UNUSED] You son of a ****
[UNUSED I'm in
skill cannot be knocked back [1]
skill cannot be stunned [1]
HeistMindControl
Channel
skill cannot be knocked back [1]
skill cannot be stunned [1]
HeistDisableMagic
[UNUSED] You son of a ****
[UNUSED I'm in
skill cannot be knocked back [1]
skill cannot be stunned [1]

Object Type

version 2
extends "Metadata/Monsters/LeagueHeist/NPCAllies/NPCAlliesBase"

BaseEvents
{
	on_construction_complete =
	"
		IfState( infiltration_monster_variety, >0,
		{
			StartStateTimer( shapeshift_infiltrate, 0.01 );
			PlayAnimationType( Idle );
		} );
	"
}

StateMachine
{
	define_shared_state =
	"
		disguised = 0;
		remove_disguise = 0;
		shapeshift_type;
		infiltration_sequence;
		infiltration_monster_variety;
	"

	on_change_state_remove_disguise = 
	"
		StartStateTimer( unshapeshift, 0.01 );
	"

	on_change_state_infiltration_monster_variety =
	"
		IfState( infiltration_monster_variety, >0,
		{
			StartStateTimer( shapeshift_infiltrate, 0.01 );
			PlayAnimationType( Idle );
		} );
	"

	on_timer_shapeshift =
	"
		TriggerStateBracket( shapeshift, shapeshift_type );
		ChangeStance( stance3 );
		PlayAnimationType( Idle );
	"

	on_timer_shapeshift_infiltrate = "ChangeAppearanceToMonsterVarietyIndex( GetState( infiltration_monster_variety ) );"

	on_timer_unshapeshift =
	"
		TriggerBracket( shapeshift, 0 );
		PlayAnimationType( Idle );
	"

	on_state_abandoned_1 =
	"
		IfState( disguised, 1, { StartStateTimer( unshapeshift, 0.01 ); } );
	"
}

Actor
{
	on_event_contact_for_EmptyActionSpell = "StartStateTimer( shapeshift, 0.01 );"
	disable_play_animation_from_set_stance = true
}

Brackets
{
	define_bracket = "shapeshift"
	shapeshift_0 = "ChangeAppearanceToMonsterVariety( Metadata/Monsters/LeagueHeist/NPCAllies/HeistIllusionist1_ );"
	shapeshift_1 = "ChangeAppearanceToMonsterVariety( Metadata/Monsters/LeagueHeist/Military/MilitaryMelee1Miniboss );"
	shapeshift_2 = "ChangeAppearanceToMonsterVariety( Metadata/Monsters/LeagueHeist/Thug/ThugMelee2Miniboss );"
	shapeshift_3 = "ChangeAppearanceToMonsterVariety( Metadata/Monsters/LeagueHeist/Science/ThaumaturgistFemaleMiniBoss );"
	shapeshift_4 = "ChangeAppearanceToMonsterVariety( Metadata/Monsters/LeagueHeist/Robot/RobotArgusMiniboss );"
	shapeshift_5 = "ChangeAppearanceToMonsterVariety( Metadata/Monsters/LeagueHeist/Science/ThaumaturgistFemaleMiniBoss );"
	shapeshift_6 = "ChangeAppearanceToMonsterVariety( Metadata/Monsters/LeagueHeist/Robot/RobotArgusMiniboss );"
	shapeshift_7 = "ChangeAppearanceToMonsterVariety( Metadata/Monsters/LeagueHeist/Thug/ThugMelee2Miniboss );"
	shapeshift_8 = "ChangeAppearanceToMonsterVariety( Metadata/Monsters/LeagueHeist/Military/MilitaryMelee1Miniboss );"
	shapeshift_9 = "ChangeAppearanceToMonsterVariety( Metadata/Monsters/LeagueHeist/Military/MilitaryMelee1Miniboss );"
}

Object Type Codes

version 2
extends "Metadata/Monsters/LeagueHeist/NPCAllies/NPCAlliesBase"

Actor
{
	on_event_contact_for_EmptyActionSpell2 =
	"
		IfState( heist_alert, <2,
		{
			DisableRendering();
			HideMinimapIcon();
		} );
	"

	on_end_or_destroy_HeistLockPick =
	"
		DetachAllOfType( Metadata/Effects/Spells/monsters_effects/League_Heist/Nenet/reveal.ao );
		DetachAllOfType( Metadata/Effects/Spells/monsters_effects/League_Heist/Nenet/revealR.ao );
		DetachAllOfType( Metadata/Effects/Spells/monsters_effects/League_Heist/Nenet/revealL.ao );
	"

	on_start_EmptyActionSpell2 =
	"
		FaceCamera();
		PlayEffect( Metadata/Effects/Spells/monsters_effects/League_Heist/Gianna/onact_transform.ao, 0, 1.0, 0.8, 1.0, inherit );
	"

	on_event_disguise_for_EmptyActionSpell = "PlayEffect( HeistGiannaNowYouDont );"
}

StateMachine
{
	on_timer_unshapeshift = "PlayEffect( HeistGiannaNowYouSeeMe );"

	create_state_infiltration_sequence_1 =
	"
		DisableRendering();
		HideMinimapIcon();
	"

	on_exit_state_infiltration_sequence_1 =
	"
		EnableRendering();
		ShowMinimapIcon();
	"

	on_state_abandoned_1 =
	"
		EnableRendering();
		DetachAllOfType( Metadata/Effects/Spells/monsters_effects/League_Heist/Nenet/reveal.ao );
	"
}

Animated
{
	on_event_add_hand_reveal_fx =
	"
		AddAttached( Metadata/Effects/Spells/monsters_effects/League_Heist/Nenet/revealR.ao, jazz_hand_R );
		AddAttached( Metadata/Effects/Spells/monsters_effects/League_Heist/Nenet/revealL.ao, jazz_hand_L );
	"

	on_event_loop_hand_reveal_fx =
	"
		PlayAnimationAttached( Metadata/Effects/Spells/monsters_effects/League_Heist/Nenet/revealR.ao, loop );
		PlayAnimationAttached( Metadata/Effects/Spells/monsters_effects/League_Heist/Nenet/revealL.ao, loop );
	"

	on_event_remove_hand_reveal_fx =
	"
		PlayAnimationAttached( Metadata/Effects/Spells/monsters_effects/League_Heist/Nenet/revealR.ao, end );
		PlayAnimationAttached( Metadata/Effects/Spells/monsters_effects/League_Heist/Nenet/revealL.ao, end );
		DetachAllOfType( Metadata/Effects/Spells/monsters_effects/League_Heist/Nenet/reveal.ao );
	"
}

Preload
{
	preload_animated_object = "Metadata/Effects/Spells/monsters_effects/League_Heist/Gianna/onact_transform.ao"
}
-- src\Data\Spectres.lua
minions["Metadata/Monsters/LeagueHeist/NPCAllies/HeistIllusionist1_"] = {
    name = "Gianna",
    life = 4,
    energyShield = 0.33,
    fireResist = 40,
    coldResist = 40,
    lightningResist = 40,
    chaosResist = 25,
    damage = 4,
    damageSpread = 0.2,
    attackTime = 1.755,
    attackRange = 11,
    accuracy = 1,
    skillList = {
        "MPSHeistGiannaSpellProjectile",
        "MPSHeistGiannaSpellProjectile2",
        "TEMP_EASHeistGiannaTransform",
        "HeistFindDoorArt2",
        "EGHeistScoutDetect",
        "HeistDisableMagic",
        "EGHeistPullLever",
        "HeistMindControl",
        "EGHeistDeceptionTrickGuard",
        "EASHeistGiannaDisappear",
        "EGHeistPerceptionDiscoverHidden",
    },
    modList = {
    },
}
-- src\Data\Skills\spectre.lua
skills["MPSHeistGiannaSpellProjectile"] = {
    name = "MPSHeistGiannaSpellProjectile",
    hidden = true,
    color = 4,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Projectile] = true,
        [SkillType.ProjectilesFromUser] = true,
        [SkillType.Triggerable] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1.333,
    baseFlags = {
        spell = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_minimum_base_lightning_damage",
        "spell_maximum_base_lightning_damage",
        "monster_projectile_variation",
        "base_chance_to_shock_%",
        "base_is_projectile",
        "use_scaled_contact_offset",
        "projectile_uses_contact_position",
        "maintain_projectile_direction_when_using_contact_position",
    },
    levels = {
        [1] = {0.69999998807907, 1.2999999523163, 153, 50, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MPSHeistGiannaSpellProjectile2"] = {
    name = "MPSHeistGiannaSpellProjectile2",
    hidden = true,
    color = 4,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Projectile] = true,
        [SkillType.ProjectilesFromUser] = true,
        [SkillType.Triggerable] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1.333,
    baseFlags = {
        spell = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_minimum_base_physical_damage",
        "spell_maximum_base_physical_damage",
        "monster_projectile_variation",
        "spells_chance_to_hinder_on_hit_%",
        "base_is_projectile",
        "use_scaled_contact_offset",
        "projectile_uses_contact_position",
        "maintain_projectile_direction_when_using_contact_position",
    },
    levels = {
        [1] = {0.69999998807907, 1.2999999523163, 161, 50, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["TEMP_EASHeistGiannaTransform"] = {
    name = "TEMP_EASHeistGiannaTransform",
    hidden = true,
    color = 4,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Spell] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1.83,
    baseFlags = {
        spell = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
    },
    levels = {
        [1] = {levelRequirement = 0, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["HeistFindDoorArt2"] = {
    name = "[UNUSED] You son of a ****",
    hidden = true,
    color = 4,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    description = "[UNUSED  I'm in",
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "skill_cannot_be_stunned",
        "skill_cannot_be_knocked_back",
    },
    levels = {
        [1] = {levelRequirement = 0, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EGHeistScoutDetect"] = {
    name = "EGHeistScoutDetect",
    hidden = true,
    color = 4,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Spell] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1.5,
    baseFlags = {
        spell = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "skill_cannot_be_stunned",
        "skill_cannot_be_knocked_back",
    },
    levels = {
        [1] = {levelRequirement = 0, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["HeistDisableMagic"] = {
    name = "[UNUSED] You son of a ****",
    hidden = true,
    color = 4,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    description = "[UNUSED  I'm in",
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "skill_cannot_be_stunned",
        "skill_cannot_be_knocked_back",
    },
    levels = {
        [1] = {levelRequirement = 0, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EGHeistPullLever"] = {
    name = "EGHeistPullLever",
    hidden = true,
    color = 4,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Spell] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 2.17,
    baseFlags = {
        spell = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_maximum_action_distance_+%",
        "skill_cannot_be_stunned",
        "skill_cannot_be_knocked_back",
    },
    levels = {
        [1] = {-95, levelRequirement = 0, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["HeistMindControl"] = {
    name = "HeistMindControl",
    hidden = true,
    color = 4,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Channel] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "skill_cannot_be_stunned",
        "skill_cannot_be_knocked_back",
    },
    levels = {
        [1] = {levelRequirement = 0, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EGHeistDeceptionTrickGuard"] = {
    name = "EGHeistDeceptionTrickGuard",
    hidden = true,
    color = 4,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Spell] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        spell = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_maximum_action_distance_+%",
    },
    levels = {
        [1] = {-40, levelRequirement = 0, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EASHeistGiannaDisappear"] = {
    name = "EASHeistGiannaDisappear",
    hidden = true,
    color = 4,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Spell] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1.83,
    baseFlags = {
        spell = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
    },
    levels = {
        [1] = {levelRequirement = 0, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EGHeistPerceptionDiscoverHidden"] = {
    name = "EGHeistPerceptionDiscoverHidden",
    hidden = true,
    color = 4,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Spell] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        spell = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "skill_cannot_be_stunned",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
Regenerate 2% of Life per second
IdHeistNPCLifeRegen
FamilyLifeRegenerationRatePercentage
DomainsMonster (3)
GenerationTypeUnique (3)
Req. level1
Stats
  • life regeneration rate per minute % Min: 120 Max: 120 Global
  • Craft Tagsresource life
    Edit

    Wikis Content is available under CC BY-NC-SA 3.0 unless otherwise noted.