Balbala, the Traitor
monster dropped item rarity +% [2700]
monster slain experience +% [0]
unique monster guarantee one rare [0]
SpectreN
AreaTraitor's Passage, Traitor's Passage
Tags1HSword_onhit_audio, ghost, humanoid, not_int, not_str, undead, very_fast_movement
Life
188%
Evasion
+80%
Ailment Threshold
%
Resistance
30 -30 0 0
Damage
250%
Accuracy
100%
Critical Strike Chance
+5%
Critical Strike Multiplier
+130%
Attack Distance
6 ~ 13
Attack Time
1.5 Second
Damage Spread
±20%
Experience
250%
Model Size
140%
Type
Balbala
Metadata
Balbala
Level
52
Life
6,494
Armour
1,311
Evasion
304
Energy Shield
0
Damage
347
Spell Damage
347
Accuracy
0
Attack Time
1.5
Experience
24,103
BalbalaTeleportStrike1
Spell, Movement
Cast Time: 1.5 sec
Cooldown Time: 10 sec
Deals 30% more Attack Damage
monster penalty against minions damage +% final vs player minions [100]
skill cannot be knocked back [1]
skill cannot be stunned [1]
teleport additional distance between self and target [3]
BalbalaTeleportStrike2
Spell, Movement
Cast Time: 1.5 sec
Cooldown Time: 10 sec
Deals 30% more Attack Damage
monster penalty against minions damage +% final vs player minions [100]
skill cannot be knocked back [1]
skill cannot be stunned [1]
teleport additional distance between self and target [3]
BalbalaFlickerCloneStrike
Cooldown Time: 26 sec
Skills Repeat an additional 8 Times
Deals 30% more Attack Damage
skill cannot be knocked back [1]
skill cannot be stunned [1]
BalbalaSpawnClone
Spell, Multicastable, Triggerable, Trappable, Totemable, Mineable
Cast Time: 1 sec
alternate minion [1013]
number of monsters to summon [1]
summon specific monsters radius +% [-99]
summoned monsters are minions [1]
summoned monsters no drops or experience [1]
BalbalaMinionFinisher
Spell, Movement
Cast Time: 2 sec
Deals 30% more Attack Damage
skill cannot be knocked back [1]
skill cannot be stunned [1]
BalbalaWhirl
Attack, Melee, Movement, Travel
Whirling Blades
Base Damage: 278–416
[Critical|Critical Hit] Chance: 5%
Attack Damage: 280%
Attack Time: 1.5 sec
Cooldown Time: 13.5 sec
Dive through enemies, dealing weapon damage. Only works with daggers, claws and one handed swords. Cannot be supported by Multistrike.
Deals 180% more Attack Damage
attack maximum action distance + [15]
cast time overrides attack duration [1]
ignores proximity shield [1]
monster flurry [1]
BalbalaAttack1TriggeredSlash1
Triggerable, Attack
Base Damage: 278–416
[Critical|Critical Hit] Chance: 5%
Attack Time: 1.5 sec
monster penalty against minions damage +% final vs player minions [100]
BalbalaAttack1TriggeredSlash2
Triggerable, Attack
Base Damage: 278–416
[Critical|Critical Hit] Chance: 5%
Attack Time: 1.5 sec
monster penalty against minions damage +% final vs player minions [100]
BalbalaAttack1TriggeredSlash3
Triggerable, Attack
Base Damage: 278–416
[Critical|Critical Hit] Chance: 5%
Attack Time: 1.5 sec
monster penalty against minions damage +% final vs player minions [100]
BalbalaAttack2TriggeredSlash1
Triggerable, Attack
Base Damage: 278–416
[Critical|Critical Hit] Chance: 5%
Attack Time: 1.5 sec
monster penalty against minions damage +% final vs player minions [100]
BalbalaAttack2TriggeredSlash2
Triggerable, Attack
Base Damage: 278–416
[Critical|Critical Hit] Chance: 5%
Attack Time: 1.5 sec
monster penalty against minions damage +% final vs player minions [100]
BalbalaAttack3TriggeredSlash1
Triggerable, Attack
Base Damage: 278–416
[Critical|Critical Hit] Chance: 5%
Attack Time: 1.5 sec
monster penalty against minions damage +% final vs player minions [100]
BalbalaAttack3TriggeredSlash2
Triggerable, Attack
Base Damage: 278–416
[Critical|Critical Hit] Chance: 5%
Attack Time: 1.5 sec
monster penalty against minions damage +% final vs player minions [100]
BalbalaAttack3TriggeredSlash3
Triggerable, Attack
Base Damage: 278–416
[Critical|Critical Hit] Chance: 5%
Attack Time: 1.5 sec
monster penalty against minions damage +% final vs player minions [100]
BalbalaHideAndSeekDisappear
Cooldown Time: 40 sec
skill cannot be interrupted [1]
skill cannot be stunned [1]
BalbalaHideAndSeekSlam
action attack or cast time uses animation length [1]
BalbalaHideAndSeekSlamImpact
Triggerable, Attack
Base Damage: 278–416
[Critical|Critical Hit] Chance: 5%
Attack Damage: 350%
Attack Time: 1.5 sec
Deals 250% more Attack Damage
Converts 40% of Physical Damage to Fire Damage
monster penalty against minions damage +% final vs player minions [150]
voll slam damage +% final at centre [30]
BalbalaDetonateClone
Area, Damage, Triggerable
Deals 15.06 to 22.59 Fire Damage
base skill effect duration [50]
is area damage [1]
upheaval number of spikes [1]
BalbalaTeleportToClone
Cooldown Time: 6.5 sec
action attack or cast time uses animation length [1]
BalbalaDetonateCloneGround
Spell, Area, Damage, Triggerable, Duration, AreaSpell
Cast Time: 1 sec
Deals 47.1 Base Fire Damage per second
active skill area of effect radius +% final [-24]
base skill effect duration [11000]
ground fire art variation [1001]
EGBalbalaDeathShockwave
Triggerable
MeleeAtAnimationSpeedBoss
Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
Basic Attack
Base Damage: 278–416
[Critical|Critical Hit] Chance: 5%
Attack Time: 1.5 sec
action attack or cast time uses animation length [1]
projectile uses contact position [1]
skill can fire wand projectiles [1]
use scaled contact offset [1]
FaceLastTarget
Face Last Target
BalbalaCloneMelee
Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
Basic Attack
Base Damage: 278–416
[Critical|Critical Hit] Chance: 5%
Attack Damage: 70%
Attack Time: 1.5 sec
Deals 30% less Attack Damage
action attack or cast time uses animation length [1]
projectile uses contact position [1]
skill can fire wand projectiles [1]
use scaled contact offset [1]
BalbalaCloneKnifeThrow
Attack, RangedAttack, MirageArcherCanUse, Projectile, MeleeSingleTarget, Multistrikeable, Melee, ProjectilesFromUser
Basic Attack
Base Damage: 278–416
[Critical|Critical Hit] Chance: 5%
Attack Time: 1.5 sec
Cooldown Time: 10 sec
+30 to Melee Strike Range
action attack or cast time uses animation length [1]
GPABalbalaHoveringKnife
Triggerable, Attack
Base Damage: 278–416
[Critical|Critical Hit] Chance: 5%
Attack Damage: 80%
Attack Time: 1.5 sec
Projectiles Pierce all Targets
Deals 20% less Attack Damage
base is projectile [1]
monster penalty against minions damage +% final vs player minions [100]
projectile uses contact position [1]
use scaled contact offset [1]
BalbalaFlickerCloneStrikeEnd
Spell, Movement
Cast Time: 1 sec
skill cannot be knocked back [1]
skill cannot be stunned [1]
MPSBalbalaCoin
Spell, Projectile, ProjectilesFromUser, Triggerable, Damage
Cast Time: 1 sec
Cooldown Time: 16 sec
action attack or cast time uses animation length [1]
base deal no damage [1]
base is projectile [1]
maintain projectile direction when using contact position [1]
monster projectile variation [1102]
projectile ballistic angle from target distance [1]
projectile uses contact position [1]
use scaled contact offset [1]
SOBalbalaRune
Triggerable
GSBalbalaRuneExplode
Triggerable, Spell, Damage
Critical Strike Chance: 5%
Cast Time: 1 sec
Deals 101.6 to 152.5 Fire Damage
active skill area of effect radius +% final [30]
is area damage [1]
monster penalty against minions damage +% final vs player minions [100]
BalbalaGlaiveProjectileLeft
Attack, RangedAttack, Projectile, Triggerable
Base Damage: 278–416
[Critical|Critical Hit] Chance: 5%
Attack Time: 1.5 sec
Cooldown Time: 6 sec
Fires 5 additional Projectiles
action attack or cast time uses animation length [1]
animation effect variation [1]
attack maximum action distance + [40]
base is projectile [1]
lunaris glaive acceleration x [100]
lunaris glaive acceleration y [1700]
lunaris glaive angle [-20]
projectile uses contact position [1]
BalbalaGlaiveProjectileRight
Attack, RangedAttack, Projectile, Triggerable
Base Damage: 278–416
[Critical|Critical Hit] Chance: 5%
Attack Time: 1.5 sec
Cooldown Time: 6 sec
Fires 5 additional Projectiles
action attack or cast time uses animation length [1]
animation effect variation [1]
attack maximum action distance + [40]
base is projectile [1]
lunaris glaive acceleration x [100]
lunaris glaive acceleration y [1700]
lunaris glaive angle [-20]
projectile uses contact position [1]
GABalbalaFlickerStrikeTriggeredAttack1
Triggerable, Attack
Base Damage: 278–416
[Critical|Critical Hit] Chance: 5%
Attack Time: 1.5 sec
is area damage [1]
monster penalty against minions damage +% final vs player minions [100]
GABalbalaFlickerStrikeTriggeredAttack2
Triggerable, Attack
Base Damage: 278–416
[Critical|Critical Hit] Chance: 5%
Attack Time: 1.5 sec
is area damage [1]
monster penalty against minions damage +% final vs player minions [100]
EAABalbalaDaggerSummonMultiThrow
Cooldown Time: 26 sec
action attack or cast time uses animation length [1]
attack maximum action distance + [50]
MPWBalbalaKnifeSummon
Attack, RangedAttack, MirageArcherCanUse, Projectile, ProjectilesFromUser, Damage, Triggerable
Base Damage: 278–416
[Critical|Critical Hit] Chance: 5%
Attack Time: 1.5 sec
Fires 2 additional Projectiles
action attack or cast time uses animation length [1]
base deal no damage [1]
base is projectile [1]
monster projectile variation [1131]
projectile spread radius [20]
projectile uses contact position [1]
spell maximum action distance +% [-30]
use scaled contact offset [1]
BalbalaReverseKnifeFirestorm
Spell, Damage, Area, Duration, Trappable, Totemable, Mineable, Multicastable, Triggerable, Fire, Cascadable, CanRapidFire, AreaSpell, Nonpathing, Limit, Sustained, SkillConsumesIgnite
Firestorm
Critical Strike Chance: 6%
Cast Time: 1 sec
Rains flaming bolts over the targeted area. Ignites on enemies in front of you are Consumed to fuel the Firestorm, causing one bolt to be improved for each Ignite Consumed.
Deals 37.65 to 56.47 Physical Damage
Storm duration is 0.2 seconds
One impact every 0.03 seconds
is area damage [1]
monster penalty against minions damage +% final vs player minions [120]
EAABalbalaCombo
Cooldown Time: 26 sec
action attack or cast time uses animation length [1]
attack maximum action distance + [20]
MPWBalbalaPoisonKnife
Attack, RangedAttack, MirageArcherCanUse, Projectile, ProjectilesFromUser, Damage, Triggerable
Base Damage: 278–416
[Critical|Critical Hit] Chance: 5%
Attack Damage: 80%
Attack Time: 1.5 sec
Deals 20% less Attack Damage
Poisons Enemies on Hit
action attack or cast time uses animation length [1]
base is projectile [1]
monster penalty against minions damage +% final vs player minions [80]
monster projectile variation [1132]
projectile uses contact position [1]
use scaled contact offset [1]
EAABalbalaMultiStab
action attack or cast time uses animation length [1]

Object Type

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

Actor
{
	basic_action = "Emerge"
	basic_action = "ChangeToStance1"
	basic_action = "ChangeToStance2"
	basic_action = "ChangeToStance3"
	basic_action = "ChangeToStance4"
}

StateMachine
{
	define_shared_state =
	"
		visible = 1;
		hiding;
		multi_stab;
		knives_visible = 1;
		collidable = 1;
	"

	on_state_visible_0 = "RemoveCollidability();"
	on_state_visible_1 = "MakeCollidable();"

	on_or_create_state_collidable_0 = "RemoveCollidability();"
	on_or_create_state_collidable_1 = "MakeCollidable();"
}

Transitionable {}

Animated
{
	on_event_rotate_for_whirlingblades_01 =
	"
		TurnToOverTime( GetOrientation() + 180, 0.8f );
		QueueAnimation( idle_no_blend_01 );
	"

	on_event_contact_for_disappear_slam_01 = "ForceSkillIntoCooldown( BalbalaHideAndSeekDisappear );"
}

Stats
{
	set_base_heavy_stun_duration_ms = 5600
	set_monster_delay_item_drops_millis = 7500
}

Functions
{
	fix_orientation =
	"
		AddOnActionEnd(
		{
			SetOrientation( GetOrientation() + arg1, false, true );
			/* PlayAnimationType( Idle, 1.0, 0, 0 ); */
		}, true );
	"
}

Object Type Codes

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

Render
{
	use_ao_lights = true
}

StateMachine
{
	create_state_visible_0 =
	"
		RemoveCollidability();
		HideAllMeshSegments();
		HideAllMeshColliders();
	"

	create_state_visible_1 = "MakeCollidable();"

	on_state_visible_0 =
	"
		HideAllMeshSegments();
		HideAllMeshColliders();
	"

	on_state_visible_1 =
	"
		ShowAllMeshSegments();
		ShowAllMeshColliders();
		IfState( knives_visible, 0, (){HideMeshSegments( knife02Shape );});
	"

	on_or_create_state_hiding_1 = "AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/Balbala/fade_by_player_dist.epk' );"
	on_state_hiding_0 = "RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/Balbala/fade_by_player_dist.epk' );"

	on_or_create_state_knives_visible_1 =
	"
		IfState( visible, 1, (){ ShowMeshSegments( knife02Shape ); } );
	"

	on_or_create_state_knives_visible_0 = "HideMeshSegments( knife02Shape );"
}

Transitionable
{
	create_untransitioned =
	"
		IfAlive( (){ PlayAnimation( impaled_idle_01 ); } );
		HideMeshSegment( knife02Shape );
	"

	create_transitioned =
	"
		EnableTargetable();
		ShowMeshSegment( knife02Shape );
	"

	on_transition = "EnableTargetable();"
}

Actor
{
	on_event_epkout_for_Teleport =
	"
		AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/Balbala/epks/teleport_out.epk', 1.0 );
		DisableHighlighting();
	"

	on_event_epkin_for_Teleport =
	"
		RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/Balbala/epks/teleport_out.epk' );
		AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/Balbala/epks/teleport_in.epk', 1.0 );
		Delay( 1.0,
		{
			EnableHighlighting();
			RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/Balbala/epks/teleport_in.epk' );
		} );
	"

	on_event_epkin_for_EmptyActionAttack2 =
	"
		RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/Balbala/epks/teleport_out.epk' );
		AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/Balbala/epks/teleport_in.epk', 1.0 );
		Delay( 1.0,
		{
			EnableHighlighting();
			RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/Balbala/epks/teleport_in.epk' );
		} );
	"
}

Life
{
	on_death =
	"
		//PlayTextAudio( BalbalaDeath, 'Metadata/Monsters/Balbala/Balbala' );
	"
}

Animated
{
	on_event_showweapons_for_impaled_activate_01 = "ShowMeshSegment( knife02Shape );"

	on_end_death_01 = "DisableRendering(  );"

	on_disappear_01 =
	"
		AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/Balbala/epks/fade_away.epk' );
		PlayTextAudio( BalbalaDisappearRandom, 'Metadata/Monsters/Balbala/Balbala' );
		Delay( 1.0,
		{
			RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/Balbala/epks/fade_away.epk' );
		} );
	"

	on_rune_detonate_01 =
	"
		RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/Balbala/epks/teleport_in.epk' );
		AddEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/Balbala/epks/teleport_in.epk', 1.0 );
		PlayTextAudio( BalbalaCoinAmbushRandom, 'Metadata/Monsters/Balbala/Balbala', 800 );
		Delay( 1.0,
		{
			RemoveEffectPack( 'Metadata/Effects/Spells/monsters_effects/Act2_FOUR/Balbala/epks/teleport_in.epk' );
		} );
	"

	on_whirlingblades_01 = "PlayTextAudio( BalbalaWhirlingBladesRandom, 'Metadata/Monsters/Balbala/Balbala' );"
	on_flicker_strike_end_01 = "PlayTextAudio( BalbalaFinalStrikeRandom, 'Metadata/Monsters/Balbala/Balbala' );"
	on_coin_toss_01 = "PlayTextAudio( BalbalaCoinTossRandom, 'Metadata/Monsters/Balbala/Balbala' );"
	on_heavy_stun_01 = "PlayTextAudio( BalbalaHeavyStunRandom, 'Metadata/Monsters/Balbala/Balbala' );"
	on_disappear_slam_01 = "PlayTextAudio( BalbalaFlickerStrikeSkillRandom, 'Metadata/Monsters/Balbala/Balbala' );"
	on_disappear_01 = "PlayTextAudio( BalbalaDisappearRandom, 'Metadata/Monsters/Balbala/Balbala' );"
	on_clone_strike_finisher_01 = "PlayTextAudio( BalbalaAmbushRandom, 'Metadata/Monsters/Balbala/Balbala' );"
	on_pedestal_emerge_01 = "PlayTextAudio( BalbalaSpiritReleasedFromCoin, 'Metadata/Monsters/Balbala/Balbala' );"
	//on_multi_throw_01 = "PlayTextAudio( BalbalaDekharRandom, 'Metadata/Monsters/Balbala/Balbala', 200);"
}
Preload
{
	preload_environment = "G2_2_boss"
}
-- src\Data\Spectres.lua
minions["Metadata/Monsters/Balbala/Balbala"] = {
    name = "Balbala, the Traitor",
    life = 1.88,
    fireResist = 0,
    coldResist = 0,
    lightningResist = 0,
    chaosResist = 0,
    damage = 2.5,
    damageSpread = 0.2,
    attackTime = 1.5,
    attackRange = 13,
    accuracy = 1,
    skillList = {
        "MeleeAtAnimationSpeedBoss",
        "GPABalbalaHoveringKnife",
        "MPSBalbalaCoin",
        "MPWBalbalaKnifeSummon",
        "MPWBalbalaPoisonKnife",
        "FaceLastTarget",
        "BalbalaGlaiveProjectileLeft",
        "BalbalaGlaiveProjectileRight",
        "GSBalbalaRuneExplode",
        "GABalbalaFlickerStrikeTriggeredAttack1",
        "GABalbalaFlickerStrikeTriggeredAttack2",
        "EAABalbalaDaggerSummonMultiThrow",
        "EAABalbalaCombo",
        "EAABalbalaMultiStab",
        "BalbalaTeleportStrike1",
        "BalbalaTeleportStrike2",
        "SOBalbalaRune",
        "BalbalaFlickerCloneStrike",
        "BalbalaFlickerCloneStrikeEnd",
        "BalbalaTeleportToClone",
        "BalbalaAttack1TriggeredSlash1",
        "BalbalaAttack1TriggeredSlash2",
        "BalbalaAttack1TriggeredSlash3",
        "BalbalaAttack2TriggeredSlash1",
        "BalbalaAttack2TriggeredSlash2",
        "BalbalaAttack3TriggeredSlash1",
        "BalbalaAttack3TriggeredSlash2",
        "BalbalaAttack3TriggeredSlash3",
        "BalbalaSpawnClone",
        "BalbalaDetonateClone",
        "BalbalaDetonateCloneGround",
        "BalbalaMinionFinisher",
        "BalbalaWhirl",
        "BalbalaHideAndSeekSlam",
        "BalbalaHideAndSeekSlamImpact",
        "BalbalaHideAndSeekDisappear",
        "BalbalaCloneMelee",
        "BalbalaCloneKnifeThrow",
        "EGBalbalaDeathShockwave",
        "BalbalaReverseKnifeFirestorm",
    },
    modList = {
    },
}
-- src\Data\Skills\spectre.lua
skills["MeleeAtAnimationSpeedBoss"] = {
    name = "Basic Attack",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Attack] = true,
        [SkillType.RangedAttack] = true,
        [SkillType.MirageArcherCanUse] = true,
        [SkillType.Projectile] = true,
        [SkillType.MeleeSingleTarget] = true,
        [SkillType.Multistrikeable] = true,
        [SkillType.Melee] = true,
        [SkillType.ProjectilesFromUser] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        melee = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "skill_can_fire_arrows",
        "skill_can_fire_wand_projectiles",
        "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["GPABalbalaHoveringKnife"] = {
    name = "GPABalbalaHoveringKnife",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Attack] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
        "base_is_projectile",
        "use_scaled_contact_offset",
        "projectile_uses_contact_position",
        "always_pierce",
    },
    levels = {
        [1] = {100, baseMultiplier = 0.8, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MPSBalbalaCoin"] = {
    name = "MPSBalbalaCoin",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Projectile] = true,
        [SkillType.ProjectilesFromUser] = true,
        [SkillType.Triggerable] = true,
        [SkillType.Damage] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        spell = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "monster_projectile_variation",
        "base_is_projectile",
        "use_scaled_contact_offset",
        "projectile_uses_contact_position",
        "maintain_projectile_direction_when_using_contact_position",
        "action_attack_or_cast_time_uses_animation_length",
        "base_deal_no_damage",
        "projectile_ballistic_angle_from_target_distance",
    },
    levels = {
        [1] = {1102, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MPWBalbalaKnifeSummon"] = {
    name = "MPWBalbalaKnifeSummon",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Attack] = true,
        [SkillType.RangedAttack] = true,
        [SkillType.MirageArcherCanUse] = true,
        [SkillType.Projectile] = true,
        [SkillType.ProjectilesFromUser] = true,
        [SkillType.Damage] = true,
        [SkillType.Triggerable] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "monster_projectile_variation",
        "spell_maximum_action_distance_+%",
        "number_of_additional_projectiles",
        "projectile_spread_radius",
        "base_is_projectile",
        "projectile_uses_contact_position",
        "use_scaled_contact_offset",
        "action_attack_or_cast_time_uses_animation_length",
        "base_deal_no_damage",
    },
    levels = {
        [1] = {1131, -30, 2, 20, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["MPWBalbalaPoisonKnife"] = {
    name = "MPWBalbalaPoisonKnife",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Attack] = true,
        [SkillType.RangedAttack] = true,
        [SkillType.MirageArcherCanUse] = true,
        [SkillType.Projectile] = true,
        [SkillType.ProjectilesFromUser] = true,
        [SkillType.Damage] = true,
        [SkillType.Triggerable] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "monster_projectile_variation",
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
        "base_is_projectile",
        "projectile_uses_contact_position",
        "use_scaled_contact_offset",
        "action_attack_or_cast_time_uses_animation_length",
        "global_poison_on_hit",
    },
    levels = {
        [1] = {1132, 80, baseMultiplier = 0.8, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["FaceLastTarget"] = {
    name = "Face Last Target",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 0.01,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["BalbalaGlaiveProjectileLeft"] = {
    name = "BalbalaGlaiveProjectileLeft",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Attack] = true,
        [SkillType.RangedAttack] = true,
        [SkillType.Projectile] = true,
        [SkillType.Triggerable] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "lunaris_glaive_angle",
        "lunaris_glaive_acceleration_x",
        "lunaris_glaive_acceleration_y",
        "attack_maximum_action_distance_+",
        "animation_effect_variation",
        "number_of_additional_projectiles",
        "base_is_projectile",
        "projectile_uses_contact_position",
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {-20, 100, 1700, 40, 1, 5, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["BalbalaGlaiveProjectileRight"] = {
    name = "BalbalaGlaiveProjectileRight",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Attack] = true,
        [SkillType.RangedAttack] = true,
        [SkillType.Projectile] = true,
        [SkillType.Triggerable] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "lunaris_glaive_angle",
        "lunaris_glaive_acceleration_x",
        "lunaris_glaive_acceleration_y",
        "attack_maximum_action_distance_+",
        "animation_effect_variation",
        "number_of_additional_projectiles",
        "base_is_projectile",
        "projectile_uses_contact_position",
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {-20, 100, 1700, 40, 1, 5, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["GSBalbalaRuneExplode"] = {
    name = "GSBalbalaRuneExplode",
    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_fire_damage",
        "spell_maximum_base_fire_damage",
        "active_skill_area_of_effect_radius_+%_final",
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
        "is_area_damage",
    },
    levels = {
        [1] = {0.80000001192093, 1.2000000476837, 30, 100, critChance = 5, levelRequirement = 19, statInterpolation = {3, 3},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["GABalbalaFlickerStrikeTriggeredAttack1"] = {
    name = "GABalbalaFlickerStrikeTriggeredAttack1",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Attack] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        area = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
        "is_area_damage",
    },
    levels = {
        [1] = {100, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["GABalbalaFlickerStrikeTriggeredAttack2"] = {
    name = "GABalbalaFlickerStrikeTriggeredAttack2",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Attack] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        area = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
        "is_area_damage",
    },
    levels = {
        [1] = {100, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EAABalbalaDaggerSummonMultiThrow"] = {
    name = "EAABalbalaDaggerSummonMultiThrow",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "attack_maximum_action_distance_+",
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {50, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EAABalbalaCombo"] = {
    name = "EAABalbalaCombo",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "attack_maximum_action_distance_+",
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {20, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EAABalbalaMultiStab"] = {
    name = "EAABalbalaMultiStab",
    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["BalbalaTeleportStrike1"] = {
    name = "BalbalaTeleportStrike1",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Movement] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1.5,
    baseFlags = {
        spell = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "teleport_additional_distance_between_self_and_target",
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
        "skill_cannot_be_stunned",
        "skill_cannot_be_knocked_back",
    },
    levels = {
        [1] = {3, 100, baseMultiplier = 1.3, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["BalbalaTeleportStrike2"] = {
    name = "BalbalaTeleportStrike2",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Movement] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1.5,
    baseFlags = {
        spell = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "teleport_additional_distance_between_self_and_target",
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
        "skill_cannot_be_stunned",
        "skill_cannot_be_knocked_back",
    },
    levels = {
        [1] = {3, 100, baseMultiplier = 1.3, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["SOBalbalaRune"] = {
    name = "SOBalbalaRune",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["BalbalaFlickerCloneStrike"] = {
    name = "BalbalaFlickerCloneStrike",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 0.2,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "skill_repeat_count",
        "skill_cannot_be_stunned",
        "skill_cannot_be_knocked_back",
    },
    levels = {
        [1] = {8, baseMultiplier = 1.3, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["BalbalaFlickerCloneStrikeEnd"] = {
    name = "BalbalaFlickerCloneStrikeEnd",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Movement] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        spell = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "skill_cannot_be_stunned",
        "skill_cannot_be_knocked_back",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["BalbalaTeleportToClone"] = {
    name = "BalbalaTeleportToClone",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1.065,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["BalbalaAttack1TriggeredSlash1"] = {
    name = "BalbalaAttack1TriggeredSlash1",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Attack] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
    },
    levels = {
        [1] = {100, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["BalbalaAttack1TriggeredSlash2"] = {
    name = "BalbalaAttack1TriggeredSlash2",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Attack] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
    },
    levels = {
        [1] = {100, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["BalbalaAttack1TriggeredSlash3"] = {
    name = "BalbalaAttack1TriggeredSlash3",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Attack] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
    },
    levels = {
        [1] = {100, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["BalbalaAttack2TriggeredSlash1"] = {
    name = "BalbalaAttack2TriggeredSlash1",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Attack] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
    },
    levels = {
        [1] = {100, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["BalbalaAttack2TriggeredSlash2"] = {
    name = "BalbalaAttack2TriggeredSlash2",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Attack] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
    },
    levels = {
        [1] = {100, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["BalbalaAttack3TriggeredSlash1"] = {
    name = "BalbalaAttack3TriggeredSlash1",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Attack] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
    },
    levels = {
        [1] = {100, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["BalbalaAttack3TriggeredSlash2"] = {
    name = "BalbalaAttack3TriggeredSlash2",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Attack] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
    },
    levels = {
        [1] = {100, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["BalbalaAttack3TriggeredSlash3"] = {
    name = "BalbalaAttack3TriggeredSlash3",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Attack] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
    },
    levels = {
        [1] = {100, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["BalbalaSpawnClone"] = {
    name = "BalbalaSpawnClone",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Multicastable] = true,
        [SkillType.Triggerable] = true,
        [SkillType.Trappable] = true,
        [SkillType.Totemable] = true,
        [SkillType.Mineable] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        spell = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "number_of_monsters_to_summon",
        "alternate_minion",
        "summon_specific_monsters_radius_+%",
        "summoned_monsters_no_drops_or_experience",
        "summoned_monsters_are_minions",
    },
    levels = {
        [1] = {1, 1013, -99, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["BalbalaDetonateClone"] = {
    name = "BalbalaDetonateClone",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Area] = true,
        [SkillType.Damage] = true,
        [SkillType.Triggerable] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        area = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_minimum_base_fire_damage",
        "spell_maximum_base_fire_damage",
        "base_skill_effect_duration",
        "upheaval_number_of_spikes",
        "is_area_damage",
    },
    levels = {
        [1] = {0.80000001192093, 1.2000000476837, 50, 1, critChance = 5, levelRequirement = 1, statInterpolation = {3, 3},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["BalbalaDetonateCloneGround"] = {
    name = "BalbalaDetonateCloneGround",
    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",
        "ground_fire_art_variation",
        "base_skill_effect_duration",
        "active_skill_area_of_effect_radius_+%_final",
    },
    levels = {
        [1] = {1, 1001, 11000, -24, levelRequirement = 1, statInterpolation = {3},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["BalbalaMinionFinisher"] = {
    name = "BalbalaMinionFinisher",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Movement] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 2,
    baseFlags = {
        spell = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "skill_cannot_be_stunned",
        "skill_cannot_be_knocked_back",
    },
    levels = {
        [1] = {baseMultiplier = 1.3, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["BalbalaWhirl"] = {
    name = "Whirling Blades",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    description = "Dive through enemies, dealing weapon damage. Only works with daggers, claws and one handed swords. Cannot be supported by Multistrike.",
    skillTypes = {
        [SkillType.Attack] = true,
        [SkillType.Melee] = true,
        [SkillType.Movement] = true,
        [SkillType.Travel] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 3,
    baseFlags = {
        attack = true,
        melee = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "monster_flurry",
        "attack_maximum_action_distance_+",
        "ignores_proximity_shield",
        "cast_time_overrides_attack_duration",
    },
    levels = {
        [1] = {1, 15, baseMultiplier = 2.8, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["BalbalaHideAndSeekSlam"] = {
    name = "BalbalaHideAndSeekSlam",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 2.5,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["BalbalaHideAndSeekSlamImpact"] = {
    name = "BalbalaHideAndSeekSlamImpact",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
        [SkillType.Attack] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "active_skill_base_physical_damage_%_to_convert_to_fire",
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
        "voll_slam_damage_+%_final_at_centre",
    },
    levels = {
        [1] = {40, 150, 30, baseMultiplier = 3.5, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["BalbalaHideAndSeekDisappear"] = {
    name = "BalbalaHideAndSeekDisappear",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "skill_cannot_be_stunned",
        "skill_cannot_be_interrupted",
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["BalbalaCloneMelee"] = {
    name = "Basic Attack",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Attack] = true,
        [SkillType.RangedAttack] = true,
        [SkillType.MirageArcherCanUse] = true,
        [SkillType.Projectile] = true,
        [SkillType.MeleeSingleTarget] = true,
        [SkillType.Multistrikeable] = true,
        [SkillType.Melee] = true,
        [SkillType.ProjectilesFromUser] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
        attack = true,
        melee = true,
        projectile = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "skill_can_fire_arrows",
        "skill_can_fire_wand_projectiles",
        "action_attack_or_cast_time_uses_animation_length",
        "projectile_uses_contact_position",
        "use_scaled_contact_offset",
    },
    levels = {
        [1] = {baseMultiplier = 0.7, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["BalbalaCloneKnifeThrow"] = {
    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 = {
        "melee_range_+",
        "action_attack_or_cast_time_uses_animation_length",
    },
    levels = {
        [1] = {30, levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["EGBalbalaDeathShockwave"] = {
    name = "EGBalbalaDeathShockwave",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    skillTypes = {
        [SkillType.Triggerable] = true,
    },
    statDescriptionScope = "skill_stat_descriptions",
    castTime = 1,
    baseFlags = {
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
    },
    levels = {
        [1] = {levelRequirement = 1, statInterpolation = {},  cost = { }, },
    },
}
-- src\Data\Skills\spectre.lua
skills["BalbalaReverseKnifeFirestorm"] = {
    name = "Firestorm",
    hidden = true,
    color = ,
    baseEffectiveness = 0,
    incrementalEffectiveness = 0,
    description = "Rains flaming bolts over the targeted area. [Ignite|Ignites] on enemies in front of you are [Consume|Consumed] to fuel the Firestorm, causing one bolt to be improved for each [Ignite] [Consume|Consumed].",
    skillTypes = {
        [SkillType.Spell] = true,
        [SkillType.Damage] = true,
        [SkillType.Area] = true,
        [SkillType.Duration] = true,
        [SkillType.Trappable] = true,
        [SkillType.Totemable] = true,
        [SkillType.Mineable] = true,
        [SkillType.Multicastable] = true,
        [SkillType.Triggerable] = true,
        [SkillType.Fire] = true,
        [SkillType.Cascadable] = true,
        [SkillType.CanRapidFire] = true,
        [SkillType.AreaSpell] = true,
        [SkillType.Nonpathing] = true,
        [SkillType.Limit] = true,
        [SkillType.Sustained] = true,
        [SkillType.SkillConsumesIgnite] = true,
    },
    statDescriptionScope = "fire_storm",
    castTime = 1,
    baseFlags = {
        area = true,
        spell = true,
        duration = true,
    },
    baseMods = {
    },
    qualityStats = {
    },
    stats = {
        "spell_minimum_base_physical_damage",
        "spell_maximum_base_physical_damage",
        "fire_storm_fireball_delay_ms",
        "base_skill_effect_duration",
        "monster_penalty_against_minions_damage_+%_final_vs_player_minions",
        "is_area_damage",
    },
    levels = {
        [1] = {0.80000001192093, 1.2000000476837, 30, 200, 120, critChance = 6, levelRequirement = 1, statInterpolation = {3, 3},  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
  • Balbala, the Traitor Topic /2
    NPCName
    ShambrinYour {akhara} did not tell this tale? It's one of my favourites. Long ago, when Keth was the shining jewel of the Vastiri and our trade routes were the envy of the known world, a weak-willed Sekhema named Balbala betrayed her {akhara} for a promise of {welakath,} a mythical elixir said to bestow great power. She led a band of foreign warriors through secret paths to the top of the Halani Gates. Taken by surprise, the akhara was slain to the last woman. What was her reward? Not {welakath.} The bandits put a spear through her gut in that very passage. A cautionary tale, yes. For her betrayal, the wise women of that era enacted an ancient ritual, trapping Balbala's soul as a Djinn for a sentence intended to be one thousand years. It has been far more than one thousand years. By Zarka's reckoning, at least two or three. The stain of Balbala's betrayal has been lifted from her legacy, yet the knowledge of her prison was lost long ago...
    ShambrinLong ago, when Keth was the shining jewel of the Vastiri and our trade routes were the envy of the known world, a weak-willed Sekhema named Balbala betrayed her {akhara} for a promise of {welakath,} a mythical elixir said to bestow great power. She led a band of foreign warriors through secret paths to the top of the Halani Gates. Taken by surprise, the akhara was slain to the last woman. What was her reward? Not {welakath.} The bandits put a spear through her gut in that very passage. A cautionary tale, yes. For her betrayal, the wise women of that era enacted an ancient ritual, trapping Balbala's soul as a Djinn for a sentence intended to be one thousand years. Jingakh. It has been far more than one thousand years. By Zarka's reckoning, at least two or three. The stain of Balbala's betrayal has been lifted from her legacy, yet the knowledge of her prison was lost long ago...