叛徒芭芭拉
不死族
地區: 叛徒之路
monster dropped item rarity +% [1600]
monster slain experience +% [0]
Balbala, the Traitor
SpectreN
Area叛徒之路
Tags1HSword_onhit_audio, fast_movement, ghost, humanoid, not_int, not_str, undead, very_fast_movement
生命
188%
閃避
+80%
抗性
30 -30 0 0
傷害
250%
命中
100%
暴擊 Chance
7%
Attack Distance
6 ~ 13
攻擊時間
1.5 Second
Damage Spread
±20%
經驗值
250%
Model Size
140%
Type
Balbala
Metadata
Balbala
等級
19
生命
421
傷害
88
法術傷害
88
命中
284
攻擊時間
1.5
經驗值
1,373
召喚物生命
1,557
召喚物傷害
116
召喚物護甲
81
BalbalaTeleportStrike1
法術, 位移
施放時間: 1.5 秒
冷卻時間: 10 秒
造成 30% 更多攻擊傷害
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
法術, 位移
施放時間: 1.5 秒
冷卻時間: 10 秒
造成 30% 更多攻擊傷害
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
冷卻時間: 26 秒
技能重複施放 8
造成 30% 更多攻擊傷害
skill cannot be knocked back [1]
skill cannot be stunned [1]
BalbalaSpawnClone
法術, 法術可重複, 可觸發, 陷阱技能, 圖騰技能, 地雷技能
施放時間: 1 秒
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
法術, 位移
施放時間: 2 秒
造成 30% 更多攻擊傷害
skill cannot be knocked back [1]
skill cannot be stunned [1]
BalbalaWhirl
攻擊, 近戰, 位移, 快行
迴旋之刃
Base Damage: 71–106
暴擊率: 5%
攻擊傷害: 280%
攻擊時間: 1.5 秒
冷卻時間: 13.5 秒
迅速穿越敵人並同時造成武器傷害。限定匕首、爪以及單手劍。不能被多重打擊輔助。
造成 180% 更多攻擊傷害
attack maximum action distance + [15]
cast time overrides attack duration [1]
ignores proximity shield [1]
monster flurry [1]
BalbalaAttack1TriggeredSlash1
可觸發, 攻擊
Base Damage: 71–106
暴擊率: 5%
攻擊時間: 1.5 秒
monster penalty against minions damage +% final vs player minions [100]
BalbalaAttack1TriggeredSlash2
可觸發, 攻擊
Base Damage: 71–106
暴擊率: 5%
攻擊時間: 1.5 秒
monster penalty against minions damage +% final vs player minions [100]
BalbalaAttack1TriggeredSlash3
可觸發, 攻擊
Base Damage: 71–106
暴擊率: 5%
攻擊時間: 1.5 秒
monster penalty against minions damage +% final vs player minions [100]
BalbalaAttack2TriggeredSlash1
可觸發, 攻擊
Base Damage: 71–106
暴擊率: 5%
攻擊時間: 1.5 秒
monster penalty against minions damage +% final vs player minions [100]
BalbalaAttack2TriggeredSlash2
可觸發, 攻擊
Base Damage: 71–106
暴擊率: 5%
攻擊時間: 1.5 秒
monster penalty against minions damage +% final vs player minions [100]
BalbalaAttack3TriggeredSlash1
可觸發, 攻擊
Base Damage: 71–106
暴擊率: 5%
攻擊時間: 1.5 秒
monster penalty against minions damage +% final vs player minions [100]
BalbalaAttack3TriggeredSlash2
可觸發, 攻擊
Base Damage: 71–106
暴擊率: 5%
攻擊時間: 1.5 秒
monster penalty against minions damage +% final vs player minions [100]
BalbalaAttack3TriggeredSlash3
可觸發, 攻擊
Base Damage: 71–106
暴擊率: 5%
攻擊時間: 1.5 秒
monster penalty against minions damage +% final vs player minions [100]
BalbalaHideAndSeekDisappear
冷卻時間: 40 秒
skill cannot be interrupted [1]
skill cannot be stunned [1]
BalbalaHideAndSeekSlam
action attack or cast time uses animation length [1]
BalbalaHideAndSeekSlamImpact
可觸發, 攻擊
Base Damage: 71–106
暴擊率: 5%
攻擊傷害: 350%
攻擊時間: 1.5 秒
造成 250% 更多攻擊傷害
40% 的物理傷害轉換火焰傷害
base skill cannot be avoided by dodge roll or evaded or blocked [1]
monster penalty against minions damage +% final vs player minions [150]
voll slam damage +% final at centre [30]
BalbalaDetonateClone
範圍, 傷害, 可觸發
造成 23.7935.68 火焰傷害
base skill effect duration [50]
is area damage [1]
upheaval number of spikes [1]
BalbalaTeleportToClone
冷卻時間: 6.5 秒
action attack or cast time uses animation length [1]
BalbalaDetonateCloneGround
法術, 範圍, 傷害, 可觸發, 持續時間, 範圍法術
施放時間: 1 秒
每秒造成 74.3 基本火焰傷害
active skill area of effect radius +% final [-24]
base skill effect duration [11000]
ground fire art variation [1001]
EGBalbalaDeathShockwave
可觸發
MeleeAtAnimationSpeedBoss
攻擊, 範圍攻擊, 技能可幻影射手, 投射物, 近戰單一目標, 近戰, 玩家投射物
基礎攻擊
Base Damage: 71–106
暴擊率: 5%
攻擊時間: 1.5 秒
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
面對最後目標
BalbalaCloneMelee
攻擊, 範圍攻擊, 技能可幻影射手, 投射物, 近戰單一目標, 近戰, 玩家投射物
基礎攻擊
Base Damage: 71–106
暴擊率: 5%
攻擊傷害: 70%
攻擊時間: 1.5 秒
造成 30% 更少攻擊傷害
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
攻擊, 範圍攻擊, 技能可幻影射手, 投射物, 近戰單一目標, 近戰, 玩家投射物
基礎攻擊
Base Damage: 71–106
暴擊率: 5%
攻擊時間: 1.5 秒
冷卻時間: 10 秒
+30 近戰打擊距離
action attack or cast time uses animation length [1]
GPABalbalaHoveringKnife
可觸發, 攻擊
Base Damage: 71–106
暴擊率: 5%
攻擊傷害: 80%
攻擊時間: 1.5 秒
造成 20% 更少攻擊傷害
穿透所有目標
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
法術, 位移
施放時間: 1 秒
skill cannot be knocked back [1]
skill cannot be stunned [1]
MPSBalbalaCoin
法術, 投射物, 玩家投射物, 可觸發, 傷害
施放時間: 1 秒
冷卻時間: 16 秒
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
可觸發
GSBalbalaRuneExplode
可觸發, 法術, 傷害
暴擊率: 5%
施放時間: 1 秒
造成 160.6240.8 火焰傷害
active skill area of effect radius +% final [30]
base skill cannot be avoided by dodge roll or evaded or blocked [1]
is area damage [1]
monster penalty against minions damage +% final vs player minions [100]
BalbalaGlaiveProjectileLeft
攻擊, 範圍攻擊, 投射物, 可觸發
Base Damage: 71–106
暴擊率: 5%
攻擊時間: 1.5 秒
冷卻時間: 6 秒
發射 個額外投射物
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
攻擊, 範圍攻擊, 投射物, 可觸發
Base Damage: 71–106
暴擊率: 5%
攻擊時間: 1.5 秒
冷卻時間: 6 秒
發射 個額外投射物
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
可觸發, 攻擊
Base Damage: 71–106
暴擊率: 5%
攻擊時間: 1.5 秒
is area damage [1]
monster penalty against minions damage +% final vs player minions [100]
GABalbalaFlickerStrikeTriggeredAttack2
可觸發, 攻擊
Base Damage: 71–106
暴擊率: 5%
攻擊時間: 1.5 秒
is area damage [1]
monster penalty against minions damage +% final vs player minions [100]
EAABalbalaDaggerSummonMultiThrow
冷卻時間: 26 秒
action attack or cast time uses animation length [1]
attack maximum action distance + [50]
MPWBalbalaKnifeSummon
攻擊, 範圍攻擊, 技能可幻影射手, 投射物, 玩家投射物, 傷害, 可觸發
Base Damage: 71–106
暴擊率: 5%
攻擊時間: 1.5 秒
發射 個額外投射物
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
法術, 傷害, 範圍, 持續時間, 陷阱技能, 圖騰技能, 地雷技能, 法術可重複, 可觸發, 火焰, 可秘能爆發, Unleashable, 範圍法術, UsableWhileMoving, Limit, Sustained, NoAttackInPlace
烈炎風暴
暴擊率: 6%
施放時間: 1 秒
在目標區域降下火焰。可消耗所有三種的元素灌注,受火焰灌注時明顯增大、受閃電灌注時會產生雷彈,而受冰冷灌注時會降下寒冰彈。
造成 59.4689.2 物理傷害
風暴持續時間為 0.2
0.03 秒撞擊一次
is area damage [1]
monster penalty against minions damage +% final vs player minions [120]
EAABalbalaCombo
冷卻時間: 26 秒
action attack or cast time uses animation length [1]
attack maximum action distance + [20]
MPWBalbalaPoisonKnife
攻擊, 範圍攻擊, 技能可幻影射手, 投射物, 玩家投射物, 傷害, 可觸發
Base Damage: 71–106
暴擊率: 5%
攻擊傷害: 80%
攻擊時間: 1.5 秒
造成 20% 更少攻擊傷害
擊中時使敵人中毒
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 );
	"
}

Preload
{
	preload_animated_object = "Metadata/Effects/Spells/monsters_effects/Act2_FOUR/Balbala/bladegrass_slam.ao"
}

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.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",
        "base_skill_cannot_be_avoided_by_dodge_roll_or_evaded_or_blocked",
    },
    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",
        "base_skill_cannot_be_avoided_by_dodge_roll_or_evaded_or_blocked",
    },
    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.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.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 = "Rain flaming bolts over the targeted area. Can [Consume] all three types of [ElementalInfusion|Elemental Infusion], becoming much larger when [ElementalInfusion|Fire-Infused], causing lightning bolts when [ElementalInfusion|Lightning-Infused], and raining ice bolts when [ElementalInfusion|Cold-Infused].",
    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.Unleashable] = true,
        [SkillType.AreaSpell] = true,
        [SkillType.UsableWhileMoving] = true,
        [SkillType.Limit] = true,
        [SkillType.Sustained] = true,
        [SkillType.NoAttackInPlace] = true,
    },
    statDescriptionScope = "fire_storm/statset_0",
    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 +% [1600]
monster slain experience +% [0]
FamilyMonsterActBoss
Domains怪物 (3)
GenerationType傳奇 (3)
Req. level1
Stats
  • monster slain experience +% Min: 0 Max: 0 Global
  • monster dropped item rarity +% Min: 1600 Max: 1600 Global
  • keyval
    StateMachine./*,
    StateMachine.boss_life_bar - controls when to show the big life bar (also requires the checkbox in MonsterVarieties to be checked)
    StateMachine.0: Life bar is hidden
    StateMachine.1: Life bar is visible, will hide on death
    StateMachine.dont_hide_lifebar_on_unaggro - controls whether the boss life bar should be hidden when the boss unaggros
    StateMachine.0: Life bar is hidden after a short duration when the boss loses aggro
    StateMachine.1: Life bar remains visible the entire time, can still be controlled by setting the disable_life_bar state
    StateMachine.show_life_bar_when_in_range - delay the life bar from showing up, until the boss is on screen (for wild bosses)
    StateMachine.0: Life bar behaves as normal
    StateMachine.1: Life bar initially only shows up when a player can see the boss on screen, this doesn't make it get removed if the player goes off screen though
    StateMachine.hidden - replaces the Unaggro+hidden_monster combo, and optionally pauses delirium fog
    StateMachine.0: Make aggro and remove hidden monster buff
    StateMachine.1: Unaggro and add hidden monster buff
    StateMachine.2: Unaggro, add hidden monster buff and pause delirium fog
    StateMachine.light - controls the boss point light, attaches to head_light_attachment if it exists (otherwise uses the default)
    StateMachine.0: Light off, handles the fade out
    StateMachine.1: Light on, handles the fade in
    StateMachine.introsequence - for bosses that are doing something before you rudely interrupt them
    StateMachine.boss uses the ChangeToStance1BossFightStart granted effect for this, which is added through the actor component in here
    StateMachine.0: no intro sequence
    StateMachine.1: boss starts off in stance2, then does change to stance1 when a proximity trigger is triggered
    StateMachine.intro_zoom - for bosses that should have the camera zoom out during the intro
    StateMachine.0: no zoom
    StateMachine.1: zoom enabled, with default values. These can be overridden in the monsters ots.
    StateMachine.intro_pan - for bosses that should have the camera pan towards them during the intro
    StateMachine.0: no pan
    StateMachine.1: pan enabled, with default values. These can be overridden in the monsters ots.
    StateMachine.use_offset_camera_controller - if this is set to 1, the boss will spawn and use a specific object as the zoom/pan center point
    StateMachine.The location of this object needs to be set by the boss too, if it isn't you will get warning message
    StateMachine.See GreatWhiteOne (shark boss) as an example, but all you really need is to set the state to 1 and move the object after it spawns
    StateMachine.0: use self as zoom/pan origin
    StateMachine.1: use a new object as the zoom/pan origin
    StateMachine.door_type - defaults to 0 for no door (or no boss control over door), other values are related to specific door types
    StateMachine.When used, also need to do 'set_telepad_indexx' in the monsters ots (BaseEvents), where x is the telepad index
    StateMachine.0: disable telepad, but only if a telepad index has been set
    StateMachine.1: force field door, forcefield blocks entrance on boss aggro, is removed on boss death (requires Metadata/MiscellaneousObjects/BossForceFieldDoor.ot in arena)
    StateMachine.2: prisoner boss door, closed on fight start, doesn't reopen afterwards (Metadata/Terrain/Gallows/Act4/4_5_2/Objects/PrisonBossDoor.ot)
    StateMachine.roaming - State for disabling instant portals on roaming bosses vs arena bosses.
    StateMachine.0: Arena Boss
    StateMachine.1: Roaming Boss
    StateMachine.arena_sector_id - If there are multiple arena bosses in an instance, each boss needs a different arena_sector_id INCLUDING roaming bosses
    StateMachine.It defaults to 1 so most bosses wont need this to be changed
    StateMachine.Currently supports up to three different bosses, but its easy to add more
    StateMachine.This state value is used to decide which boss sectors to destroy, see the triggerbracket on death in the BossBase.ots for more detail
    StateMachine.use_custom_sector_removal_handling - Set to 1 if a boss needs to use its own custom handling for sector removal on death (eg Mastodon)
    StateMachine.0: default behaviour, arena sector is removed on boss death
    StateMachine.1: custom behaviour, this disables the on death sector removal in boss base, so will need to be handled in the bosses otc AND ots
    StateMachine.quick_death_enabled - Use this for bosses with long deaths that are visible when you resurrect at checkpoint after killing them
    StateMachine.DO NOT set the quick_death state manually, this will cause the monster to do its quick death anim when it first dies
    StateMachine.0: default behaviour, death will be played at regular speed
    StateMachine.1: death anim is sped up by 10000x, this should be used for bosses that have events in their death that need to trigger
    StateMachine.2: death anim is sped up by 1000x, deaths with move events dont like being super fast so they can use this slower one
    StateMachine.am_final_boss_in_fight - This is used for multi boss fights to handle resurrecting etc after killing a single boss from fight
    StateMachine.0: reaching this state toggles part_of_multiple_boss_fight to be true, and signifies that this boss is not the final boss
    StateMachine.1: default value, will remain here unless another boss turns flips it to 0
    StateMachine.part_of_multiple_boss_fight - helper state for the above, shouldn't be interacted with manually
    StateMachine.0: currently not part of a multi boss fight
    StateMachine.1: was part of a multi boss fight at some point
    StateMachine.*/,
    StateMachine.define_shared_state =,
    StateMachine.", , ,
    StateMachine.boss_life_bar;
    StateMachine.hidden;
    StateMachine.light;
    StateMachine.introsequence;
    StateMachine.disable_life_bar;
    StateMachine.intro_zoom;
    StateMachine.intro_pan;
    StateMachine.use_offset_camera_controller;
    StateMachine.door_type;
    StateMachine.roaming;
    StateMachine.first_aggro;
    StateMachine.room_marker;
    StateMachine.arena_sector_id1;
    StateMachine.use_custom_sector_removal_handling;
    StateMachine.quick_death_enabled;
    StateMachine.quick_death;
    StateMachine.am_final_boss_in_fight1;
    StateMachine.part_of_multiple_boss_fight;
    StateMachine.dead - Boss is dead. This state is saved to the character checkpoint, so if you respawn at checkpoint this state will be automatically set. In BossBase.ots, this also calls KillSelfNoDrops().
    StateMachine.if you DON'T want this state to save/load automatically, use StateMachine{ checkpoint_save_deadfalse }
    StateMachine.0: Boss is alive
    StateMachine.1: Boss is dead
    StateMachine.2: Boss is dead and corpse is hidden
    StateMachine.define_shared_checkpoint_statedead
    StateMachine.visible1;
    StateMachine.hiding;
    StateMachine.multi_stab;
    StateMachine.knives_visible1;
    StateMachine.collidable1;
    StateMachine.on_state_visible_0RemoveCollidability();
    StateMachine.on_state_visible_1MakeCollidable();
    StateMachine.on_or_create_state_collidable_0RemoveCollidability();
    StateMachine.on_or_create_state_collidable_1MakeCollidable();
    Actor.slow_animations_go_to_idlefalse
    Actor.leveled_starting_effectsCTS1BossFightStart
    Actor.basic_actionEmerge, ChangeToStance1, ChangeToStance2, ChangeToStance3, ChangeToStance4
    Stats.corpse_cannot_be_destroyed1
    Stats.base_heavy_stun_duration_ms5600
    Stats.additional_life_scaling_index6
    Stats.monster_delay_item_drops_millis7500
    Life.corpse_usablefalse
    Monster.is_bosstrue
    Animated.on_event_rotate_for_whirlingblades_01 =
    Animated.",
    Animated.TurnToOverTime( GetOrientation() + 180, 0.8f );
    Animated.QueueAnimation( idle_no_blend_01 );
    Animated.on_event_contact_for_disappear_slam_01ForceSkillIntoCooldown( BalbalaHideAndSeekDisappear );
    Functions.fix_orientation =
    Functions.",
    Functions.AddOnActionEnd(
    Functions.SetOrientation( GetOrientation() + arg1, false, true );
    Functions./* PlayAnimationType( Idle, 1.0, 0, 0 ); */
    Functions.}, true );
    Preload.preload_animated_objectMetadata/Effects/Spells/monsters_effects/Act2_FOUR/Balbala/bladegrass_slam.ao
    叛徒芭芭拉 Topic /2
    NPC名稱
    夏布林你們的{血脈}沒有流傳這個傳說嗎?這是我最喜歡的一則故事了。很久很久以前,凱斯城還是瓦斯提里上的明珠,我們發達的貿易網讓已知世界羨慕不已。當時有個意志薄弱、名叫芭芭拉的絲克瑪,她為了一個得到{瓦勒克撒靈藥}的承諾而背叛自己的{血脈}。「瓦勒克撒」是種傳說中的靈藥,據說能賦予人強大的力量。她引來一群外族戰士,通過密道來到哈拉妮關口的頂端。她的{血脈}在這場奇襲中被屠殺殆盡,只剩她最後一人。然而,她又獲得了什麼呢?反正不是{瓦勒克撒靈藥。}那群匪類就在那條通道中,用長矛穿透她的腸子。這就是個警世故事。因為芭芭拉的背叛,那個時代的智者們執行了一個古老的儀式,將她的靈魂以巨靈的形式監禁千年。至今為止,已經遠超出一千年。根據札卡的推算,至少有兩三千年了。芭芭拉背叛的污點已經從她的傳承中抹去,然而關於她被囚禁的知識卻早已失傳……
    夏布林很久很久以前,凱斯城還是瓦斯提里上的明珠,我們發達的貿易網讓已知世界羨慕不已。當時有個意志薄弱、名叫芭芭拉的絲克瑪,她為了一個得到{瓦勒克撒靈藥}的承諾而背叛自己的{血脈}。「瓦勒克撒」是種傳說中的靈藥,據說能賦予人強大的力量。她引來一群外族戰士,通過密道來到哈拉妮關口的頂端。她的{血脈}在這場奇襲中被屠殺殆盡,只剩她最後一人。然而,她又獲得了什麼呢?反正不是{瓦勒克撒靈藥}。那群匪類就在那條通道中,用長矛穿透她的腸子。這就是個警世故事。因為芭芭拉的背叛,那個時代的智者們執行了一個古老的儀式,將她的靈魂以巨靈的形式監禁千年。 {金格克}。至今為止,已經遠超出一千年。根據札卡的推算,至少有兩三千年了。芭芭拉背叛的污點已經從她的傳承中抹去,然而關於她被囚禁的知識卻早已失傳……
    Edit

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