// Lotus : click_expert1 // ========== Spawnbot list ========== // spawnbot_left // spawnbot_right // spawnbot_middle // // spawnbot_mission_sentrybuster // spawnbot_mission_sniper // spawnbot_mission_spy // ========== Tank Path List ========== // tank_path_a_1 // tank_path_b_1 // ========== Relays ========== // wave_start_classic_relay : called when wave starts // wave_finished_relay : called when wave ends #base robot_standard.pop #base robot_giant.pop #base robot_click.pop #base robot_click_giant.pop #base robot_click_sig.pop #base ex_upgrade_click.pop https://youtu.be/D6DVTLvOupE { RobotLimit 26 StartingCurrency 600 RespawnWaveTime 5 CanBotsAttackWhileInSpawnRoom no PrecacheModel "models/props_tumb/mvm/tank_shield.mdl" PrecacheModel "models/weapons/c_models/c_critbanner/c_critbanner.mdl" PointTemplates { // SpawnTemplate "TankVacBlast" // ClassIcon tank_vac_blast_lite TankVacBlast { NoFixup 1 OnSpawnOutput { Target "!activator" Action "SetDamageFilter" Param "filter_blast" Delay 0 } filter_damage_type { "damagetype" "2359360" "Negated" "1" "targetname" "filter_blast1" } filter_damage_type { "damagetype" "3407936" "Negated" "1" "targetname" "filter_blast2" } filter_damage_type { "damagetype" "20185152" "Negated" "1" "targetname" "filter_blast3" } filter_damage_type { "damagetype" "262208" "Negated" "1" "targetname" "filter_blast4" } filter_damage_type { "damagetype" "1310784" "Negated" "1" "targetname" "filter_blast5" } filter_damage_type { "damagetype" "2490432" "Negated" "1" "targetname" "filter_blast6" } filter_damage_type { "damagetype" "3539008" "Negated" "1" "targetname" "filter_blast7" } filter_damage_type { "damagetype" "17039362" "Negated" "1" "targetname" "filter_blast8" } filter_damage_type { "damagetype" "18087938" "Negated" "1" "targetname" "filter_blast9" } filter_damage_type { "damagetype" "00240040" "Negated" "1" "targetname" "filter_blast10" } filter_multi { "targetname" "filter_blast_sub1" "Filter01" "filter_blast1" "Filter02" "filter_blast2" "Filter03" "filter_blast3" "Filter04" "filter_blast4" "Filter05" "filter_blast5" } filter_multi { "targetname" "filter_blast_sub2" "Filter01" "filter_blast6" "Filter02" "filter_blast7" "Filter03" "filter_blast8" "Filter04" "filter_blast9" "Filter05" "filter_blast10" } filter_multi { "targetname" "filter_blast" "Filter01" "filter_blast_sub1" "Filter02" "filter_blast_sub2" } prop_dynamic { "targetname" "tank_shield" "model" "models/props_tumb/mvm/tank_shield.mdl" "skin" "3" } } // SpawnTemplate "TankVacBullet" // ClassIcon tank_vac_bullet_lite TankVacBullet { NoFixup 1 OnSpawnOutput { Target "!activator" Action "SetDamageFilter" Param "filter_bullet" Delay 0 } filter_damage_type { "damagetype" "2097154" "Negated" "1" "targetname" "filter_bullet1" } filter_damage_type { "damagetype" "3145730" "Negated" "1" "targetname" "filter_bullet2" } filter_damage_type { "damagetype" "538968064" "Negated" "1" "targetname" "filter_bullet3" } filter_damage_type { "damagetype" "540016640" "Negated" "1" "targetname" "filter_bullet4" } filter_damage_type { "damagetype" "538968066" "Negated" "1" "targetname" "filter_bullet5" } filter_damage_type { "damagetype" "540016642" "Negated" "1" "targetname" "filter_bullet6" } filter_damage_type { "damagetype" "16777218" "Negated" "1" "targetname" "filter_bullet7" } filter_damage_type { "damagetype" "17825794" "Negated" "1" "targetname" "filter_bullet8" } filter_damage_type { "damagetype" "2230274" "Negated" "1" "targetname" "filter_bullet9" } filter_damage_type { "damagetype" "3278850" "Negated" "1" "targetname" "filter_bullet10" } filter_damage_type { "damagetype" "33554434" "Negated" "1" "targetname" "filter_bullet11" } filter_damage_type { "damagetype" "34603010" "Negated" "1" "targetname" "filter_bullet12" } filter_damage_type { "damagetype" "2" "Negated" "1" "targetname" "filter_bullet13" } filter_damage_type { "damagetype" "1048578" "Negated" "1" "targetname" "filter_bullet14" } filter_damage_type { "damagetype" "2232322" "Negated" "1" "targetname" "filter_bullet15" } filter_damage_type { "damagetype" "3280898" "Negated" "1" "targetname" "filter_bullet16" } filter_multi { "targetname" "filter_bullet_sub1" "Filter01" "filter_bullet1" "Filter02" "filter_bullet2" "Filter03" "filter_bullet3" "Filter04" "filter_bullet4" "Filter05" "filter_bullet5" } filter_multi { "targetname" "filter_bullet_sub2" "Filter01" "filter_bullet6" "Filter02" "filter_bullet7" "Filter03" "filter_bullet8" "Filter04" "filter_bullet9" "Filter05" "filter_bullet10" } filter_multi { "targetname" "filter_bullet_sub3" "Filter01" "filter_bullet11" "Filter02" "filter_bullet12" "Filter03" "filter_bullet13" "Filter04" "filter_bullet14" "Filter05" "filter_bullet15" } filter_multi { "targetname" "filter_bullet" "Filter01" "filter_bullet_sub1" "Filter02" "filter_bullet_sub2" "Filter03" "filter_bullet_sub3" "Filter04" "filter_bullet16" } prop_dynamic { "targetname" "tank_shield" "model" "models/props_tumb/mvm/tank_shield.mdl" "skin" "2" } } // SpawnTemplate "TankVacFire" // ClassIcon tank_vac_fire_lite TankVacFire { NoFixup 1 OnSpawnOutput { Target "!activator" Action "SetDamageFilter" Param "filter_fire" Delay 0 } filter_damage_type { "damagetype" "16779264" "Negated" "1" "targetname" "filter_fire1" } filter_damage_type { "damagetype" "17827840" "Negated" "1" "targetname" "filter_fire2" } filter_damage_type { "damagetype" "19005440" "Negated" "1" "targetname" "filter_fire3" } filter_damage_type { "damagetype" "20054016" "Negated" "1" "targetname" "filter_fire4" } filter_damage_type { "damagetype" "16777218" "Negated" "1" "targetname" "filter_fire5" } filter_damage_type { "damagetype" "17825794" "Negated" "1" "targetname" "filter_fire6" } filter_multi { "targetname" "filter_fire_sub1" "Filter01" "filter_fire1" "Filter02" "filter_fire2" "Filter03" "filter_fire3" "Filter04" "filter_fire4" "Filter05" "filter_fire5" } filter_multi { "targetname" "filter_fire" "Filter01" "filter_fire_sub1" "Filter02" "filter_fire6" } prop_dynamic { "targetname" "tank_shield" "model" "models/props_tumb/mvm/tank_shield.mdl" "skin" "4" } } // SpawnTemplate "TankVacMelee" // ClassIcon tank_vac_trio_lite TankVacMelee { NoFixup 1 OnSpawnOutput { Target "!activator" Action "SetDamageFilter" Param "filter_melee" Delay 0 } filter_tf_damaged_by_weapon_in_slot { "weaponSlot" "2" "Negated" "0" "targetname" "filter_melee" } prop_dynamic { "targetname" "tank_shield" "model" "models/props_tumb/mvm/tank_shield.mdl" "skin" "0" } prop_dynamic { "targetname" "tank_shield" "model" "models/props_tumb/mvm/tank_shield.mdl" "skin" "1" } } DropZonelock { NoFixup 1 prop_dynamic { "model" "models/props_doomsday/dday_map.mdl" "modelscale" "3.8" "solid" "2" "disableshadows" "1" } prop_dynamic { "model" "models\props_trainyard\crane_platform001.mdl" "modelscale" "0.4" "solid" "2" "disableshadows" "1" } } ResetBomb_Tree { func_respawnflag { "origin" "1445 2215 -206" "mins" "115 133 40" "maxs" "-115 -133 -70" "spawnflags" "1" } } } SpawnTemplate ResetBomb_Tree Templates { T_TFBot_Chief_Soldier_Critbuff { Class Soldier ClassIcon soldier_critbuff Name "Chief Crit Buff Soldier" Skill Expert Health 40000 Scale 1.8 WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload Attributes MiniBoss Attributes SpawnWithFullCharge Attributes UseBossHealthBar CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 "airblast vertical vulnerability multiplier" 0.1 "rage giving scale" 0.1 } StripItemSlot 2 Item "The Gunboats" SpawnTemplate "crit_radius" SpawnTemplate "powerup_logic_critbuff_recipient" CustomWeaponModel { Slot 1 Model "models/weapons/c_models/c_critbanner/c_critbanner.mdl" } } T_TFBot_Boss { Name "Ultimate Charger" Class Demoman ClassIcon demo_splendid_lite Health 100000 Scale 1.5 AutoJumpMin 10 AutoJumpMax 10 ChangeAttributes { Name "Phase2" Delay 0 Repeats 1 IfHealthBelow 70001 } ChangeAttributes { Name "Phase3" Delay 0 Repeats 1 IfHealthBelow 40001 } ChangeAttributes { Name "Phase4" Delay 0 Repeats 1 IfHealthBelow 10001 } EventChangeAttributes { Default // Phase 1 { Item "Upgradeable TF_WEAPON_GRENADELAUNCHER" Item "The Splendid Screen" Item "The Frag Proof Fragger" Item "The Juggernaut Jacket" WeaponRestrictions PrimaryOnly BehaviorModifiers Mobber Attributes UseBossHealthBar Attributes HoldFireUntilFullReload Attributes AlwaysCrit Attributes AirChargeOnly Attributes AutoJump ItemAttributes { ItemName "Upgradeable TF_WEAPON_GRENADELAUNCHER" "faster reload rate" 0.1 "fire rate bonus" 0.1 "clip size upgrade atomic" 20.0 "Projectile speed increased" 2.0 "damage bonus" 2.0 "loot rarity" 1 "is australium item" 1 "item style override" 1 } ItemAttributes { ItemName "The Splendid Screen" "no charge impact range" 1 "Attack not cancel charge" 1 "charge time increased" 5 "charge recharge rate increased" 100 "charge impact damage increased" 100 "full charge turn control" 50 "damage causes airblast" 1 } CharacterAttributes { "dmg taken from self reduced" 0 "cannot be backstabbed" 1 "cannot be sapped" 1 "increased jump height" 2.5 "bot custom jump particle" 1 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "cannot pick up intelligence" 1 "cancel falling damage" 1 } } Phase2 { Item "The Loose Cannon" Item "The Splendid Screen" Item "The Frag Proof Fragger" Item "The Juggernaut Jacket" BehaviorModifiers Mobber WeaponRestrictions PrimaryOnly Attributes UseBossHealthBar Attributes HoldFireUntilFullReload Attributes AlwaysCrit Attributes AirChargeOnly Attributes AutoJump ItemAttributes { ItemName "The Loose Cannon" "faster reload rate" 0.2 "fire rate bonus" 2.0 "Projectile speed increased" 2.0 "damage bonus" 20 "damage causes airblast" 1 "Blast radius increased" 2.0 "use large smoke explosion" 1 } ItemAttributes { ItemName "The Splendid Screen" "no charge impact range" 1 "Attack not cancel charge" 1 "charge time increased" 5 "charge recharge rate increased" 100 "charge impact damage increased" 100 "full charge turn control" 50 "damage causes airblast" 1 } CharacterAttributes { "dmg taken from self reduced" 0 "cannot be backstabbed" 1 "cannot be sapped" 1 "increased jump height" 2.5 "bot custom jump particle" 1 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "cannot pick up intelligence" 1 "grenade launcher mortar mode" -2 "cancel falling damage" 1 } } Phase3 { Item "The Loch-n-Load" Item "The Splendid Screen" Item "The Frag Proof Fragger" Item "The Juggernaut Jacket" BehaviorModifiers Mobber WeaponRestrictions PrimaryOnly Attributes UseBossHealthBar Attributes HoldFireUntilFullReload Attributes AlwaysCrit Attributes AirChargeOnly Attributes AutoJump ItemAttributes { ItemName "The Loch-n-Load" "faster reload rate" -0.4 "fire rate bonus" 0.75 "damage bonus" 5 "dmg bonus vs buildings" 5 "Projectile speed increased" 2 } ItemAttributes { ItemName "The Splendid Screen" "no charge impact range" 1 "Attack not cancel charge" 1 "charge time increased" 5 "charge recharge rate increased" 100 "charge impact damage increased" 100 "full charge turn control" 50 "damage causes airblast" 1 } CharacterAttributes { "dmg taken from self reduced" 0 "cannot be backstabbed" 1 "cannot be sapped" 1 "increased jump height" 2.5 "bot custom jump particle" 1 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "cannot pick up intelligence" 1 "cancel falling damage" 1 } } Phase4 { Item "The Splendid Screen" Item "The Claidheamohmor" Item "The Frag Proof Fragger" Item "The Juggernaut Jacket" BehaviorModifiers Mobber WeaponRestrictions MeleeOnly Attributes UseBossHealthBar Attributes HoldFireUntilFullReload Attributes AlwaysCrit Attributes AirChargeOnly Attributes AutoJump ItemAttributes { ItemName "The Splendid Screen" "no charge impact range" 1 "Attack not cancel charge" 1 "charge time increased" 5 "charge recharge rate increased" 100 "charge impact damage increased" 100 "full charge turn control" 50 "damage causes airblast" 1 } ItemAttributes { ItemName "The Claidheamohmor" "damage bonus" 10 "fire rate bonus" 0.6 } CharacterAttributes { "dmg taken from self reduced" 0 "cannot be backstabbed" 1 "cannot be sapped" 1 "increased jump height" 2.5 "bot custom jump particle" 1 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "cannot pick up intelligence" 1 "cancel falling damage" 1 } } } } } // Sentry Buster Mission { Objective DestroySentries Where spawnbot_mission_sentrybuster BeginAtWave 1 InitialCooldown 50 CooldownTime 50 TFBot { Template T_TFBot_SentryBuster } } // Wave 1/8 // Total $ in this wave : 1000$ // Total $ when wave starts : 600$ (Starting money) // Total $ when wave ends : 600$ (Starting money) + 1000$ (Collected money) + 100$ (Bonus) = 1700$ // 1. Homing Soldier + Kritzkrieg Medic // 2. Giant Rapid Fire Demo + Giant Medic (Regen), Dragon Pyro // 3. Giant Demoknight + Giant Medic, Persian Demoknight // 4. Giant Burst Fire Demo, Flame Shotgun Pyro // 5. Homing Soldier + Kritzkrieg Medic Wave { Checkpoint Yes StartWaveOutput { Target wave_start_classic_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaveSpawn { Where spawnbot_left Name "stage01" TotalCount 12 MaxActive 12 SpawnCount 4 WaitBeforeStarting 0 WaitBetweenSpawns 10 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Soldier_Homing } TFBot { Template T_TFBot_Medic_Kritzkrieg } } } WaveSpawn { Where spawnbot_middle Name "stage02_giant" WaitForAllSpawned "stage01" TotalCount 2 MaxActive 2 SpawnCount 2 WaitBeforeStarting 15 WaitBetweenSpawns 0 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Demo_Spammer } TFBot { Template T_TFBot_Giant_Medic_Regen } } } WaveSpawn { Where spawnbot_left Name "stage02" WaitForAllSpawned "stage01" TotalCount 28 MaxActive 14 SpawnCount 7 WaitBeforeStarting 25 WaitBetweenSpawns 7 TotalCurrency 100 TFBot { Template T_TFBot_Pyro_Dragon Skill Expert } } WaveSpawn { Where spawnbot_middle Name "stage03_giant" WaitForAllSpawned "stage02" TotalCount 2 MaxActive 2 SpawnCount 2 WaitBeforeStarting 10 WaitBetweenSpawns 0 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_DemoMan_PrinceTavish } TFBot { Template T_TFBot_Giant_Medic } } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_right Name "stage03" WaitForAllSpawned "stage02" TotalCount 32 MaxActive 16 SpawnCount 4 WaitBeforeStarting 10 WaitBetweenSpawns 2 TotalCurrency 100 TFBot { Template T_TFBot_Demoknight_Persian } } WaveSpawn { Where spawnbot_right Name "stage04_giant" WaitForAllSpawned "stage03" TotalCount 5 MaxActive 4 SpawnCount 1 WaitBeforeStarting 15 WaitBetweenSpawns 15 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Demo_Burst } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Name "stage04" WaitForAllSpawned "stage03" TotalCount 40 MaxActive 15 SpawnCount 5 WaitBeforeStarting 10 WaitBetweenSpawns 3 TotalCurrency 100 TFBot { Template T_TFBot_Pyro_Shotgun_Ignite } } WaveSpawn { Where spawnbot_left Name "stage05" WaitForAllSpawned "stage04" TotalCount 12 MaxActive 12 SpawnCount 4 WaitBeforeStarting 10 WaitBetweenSpawns 10 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Soldier_Homing } TFBot { Template T_TFBot_Medic_Kritzkrieg } } } } // Wave 2/8 // Total $ in this wave : 1200$ // Total $ when wave starts : 600$ (Starting money) + 1000$ (Collected money) + 100$ (Bonus) = 1700$ // Total $ when wave ends : 600$ (Starting money) + 2200$ (Collected money) + 200$ (Bonus) = 3000$ // 1. Tank (25000), Burst Crossbow Medic (Penetration), Burst Scatter Scout (Hard) // 2. Giant Jumping Sandman Scout, Armored Giant Scout + 3 Uber Medic, Armored Giant Scout + Uber Medic // 3. Giant Jumping Sandman Scout, Giant Homing Soldier (Crit) + 2 Uber Medic, Deflector Heavy // Support: Armored Homewrecker Pyro // Mission: Explosive Piss Sniper, Tank Buster Soldier Mission { Objective Sniper Where spawnbot_mission_sniper BeginAtWave 2 RunForThisManyWaves 1 InitialCooldown 60 CooldownTime 60 DesiredCount 2 TFBot { Template T_TFBot_Soldier_TankBuster } } Wave { Checkpoint Yes StartWaveOutput { Target wave_start_classic_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaveSpawn { Name "stage01_tank" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 15 WaitBetweenSpawns 0 TotalCurrency 200 Tank { Health 25000 Name TankBoss Speed 75 StartingPathTrackNode tank_path_a_1 OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Where spawnbot_left Name "stage01" TotalCount 32 MaxActive 8 SpawnCount 4 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 100 TFBot { Template T_TFBot_Medic_Crossbow_Burst_Penetration } } WaveSpawn { Where spawnbot_middle Name "stage01" TotalCount 40 MaxActive 8 SpawnCount 4 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 100 TFBot { Template T_TFBot_Scout_Backscatter_Hard } } WaveSpawn { Where spawnbot_left Name "stage02" WaitForAllSpawned "stage01" TotalCount 12 MaxActive 8 SpawnCount 4 WaitBeforeStarting 15 WaitBetweenSpawns 15 TotalCurrency 120 Squad { TFBot { Template T_TFBot_Giant_Scout_Armored } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } } } WaveSpawn { Where spawnbot_middle Name "stage02" WaitForAllSpawned "stage01" TotalCount 12 MaxActive 8 SpawnCount 4 WaitBeforeStarting 15 WaitBetweenSpawns 15 TotalCurrency 120 Squad { TFBot { Template T_TFBot_Giant_Scout_Armored } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } } } WaveSpawn { Where spawnbot_right Name "stage02" WaitForAllSpawned "stage01" TotalCount 6 MaxActive 2 SpawnCount 2 WaitBeforeStarting 20 WaitBetweenSpawns 20 TotalCurrency 60 TFBot { Template T_TFBot_Giant_Scout_Jumping_Sandman } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Name "stage03" WaitForAllSpawned "stage02" TotalCount 4 MaxActive 2 SpawnCount 1 WaitBeforeStarting 40 WaitBetweenSpawns 20 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Scout_Jumping_Sandman } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Name "stage03" WaitForAllSpawned "stage02" TotalCount 9 MaxActive 6 SpawnCount 3 WaitBeforeStarting 20 WaitBetweenSpawns 20 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Soldier_Homing Attributes AlwaysCrit } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Name "stage03" WaitForAllSpawned "stage02" TotalCount 36 MaxActive 10 SpawnCount 2 WaitBeforeStarting 10 WaitBetweenSpawns 0 TotalCurrency 100 TFBot { Template T_TFBot_Heavy_Deflector } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Name "support" Support 1 TotalCount 20 MaxActive 4 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 5 TotalCurrency 100 TFBot { Template T_TFBot_Pyro_Homewrecker_Armored } } } // Wave 3/8 // Total $ in this wave : 1100$ // Total $ when wave starts : 600$ (Starting money) + 2200$ (Collected money) + 200$ (Bonus) = 3000$ // Total $ when wave ends : 600$ (Starting money) + 3300$ (Collected money) + 300$ (Bonus) = 4200$ // 1. Giant Fast Burst Fire Soldier + 3 Armored Quick Uber Medic + Armored Kritzkrieg Shield Medic (Extended), Direct Hit Soldier (Burst), Burst Loch Demo // 2. Giant Goldgun Penetrator Heavy + Armored Quick Uber Medic, Direct Hit Soldier (Rapid), Moonman (Taunt, Mobber) // 3. Giant Goldgun Penetrator Heavy + Armored Quick Uber Medic + Armored Kritzkrieg Shield Medic (Extended), Giant Moonman (Taunt, Mobber), Rapid Loch Demo // 4. Giant Fast Burst Fire Soldier + 3 Armored Quick Uber Medic + Armored Kritzkrieg Shield Medic (Extended), Moonman (Taunt, Mobber) + Quick Heal Medic // Mission: Ninja Spy, Fast Build Engineer Mission { Objective Spy Where spawnbot_mission_spy BeginAtWave 3 RunForThisManyWaves 1 InitialCooldown 30 CooldownTime 30 DesiredCount 5 TFBot { Template T_TFBot_Spy_Ninja } } Mission { Objective Engineer Where spawnbot_left BeginAtWave 3 RunForThisManyWaves 1 InitialCooldown 60 CooldownTime 60 DesiredCount 1 TFBot { Template T_TFBot_Engineer_Sentry_Teleporter_FastBuild Attributes TeleportToHint TeleportWhere spawnbot_left TeleportWhere spawnbot_middle TeleportWhere spawnbot_right } } Wave { Checkpoint Yes StartWaveOutput { Target wave_start_classic_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaveSpawn { Where spawnbot_middle Name "stage01_giant" TotalCount 8 MaxActive 4 SpawnCount 4 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Giant_Soldier_Burst_Spammer } TFBot { Template T_TFBot_Medic_Quickuber_Armored } TFBot { Template T_TFBot_Medic_Quickuber_Armored } TFBot { Template T_TFBot_Medic_Shield_Kritzkrieg_Extended_Armored } } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Where spawnbot_right Name "stage01" TotalCount 48 MaxActive 16 SpawnCount 4 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 100 RandomChoice { TFBot { Template T_TFBot_Soldier_DirectHit_Burst } TFBot { Template T_TFBot_Demo_Loch_Burst_Shield } } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Name "stage02_giant" WaitForAllSpawned "stage01" TotalCount 8 MaxActive 4 SpawnCount 2 WaitBeforeStarting 10 WaitBetweenSpawns 10 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Giant_Heavy_Brassbeast } TFBot { Template T_TFBot_Medic_Quickuber_Armored } } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Name "stage02" WaitForAllSpawned "stage01" TotalCount 32 MaxActive 8 SpawnCount 4 WaitBeforeStarting 10 WaitBetweenSpawns 0 TotalCurrency 100 TFBot { Template T_TFBot_Soldier_DirectHit_Spammer } } WaveSpawn { Where spawnbot_right Name "stage02" WaitForAllSpawned "stage01" TotalCount 32 MaxActive 8 SpawnCount 4 WaitBeforeStarting 15 WaitBetweenSpawns 0 TotalCurrency 100 TFBot { Template T_TFBot_Pyro_Future_Taunt BehaviorModifiers Mobber CharacterAttributes { "cannot pick up intelligence" 1 } } } WaveSpawn { Where spawnbot_left Name "stage03_giant" WaitForAllSpawned "stage02" TotalCount 3 MaxActive 3 SpawnCount 3 WaitBeforeStarting 15 WaitBetweenSpawns 0 TotalCurrency 60 Squad { TFBot { Template T_TFBot_Giant_Heavy_Brassbeast } TFBot { Template T_TFBot_Medic_Quickuber_Armored } TFBot { Template T_TFBot_Medic_Shield_Kritzkrieg_Extended_Armored } } } WaveSpawn { Where spawnbot_right Name "stage03_giant" WaitForAllSpawned "stage02" TotalCount 3 MaxActive 3 SpawnCount 3 WaitBeforeStarting 10 WaitBetweenSpawns 0 TotalCurrency 60 Squad { TFBot { Template T_TFBot_Giant_Heavy_Brassbeast } TFBot { Template T_TFBot_Medic_Quickuber_Armored } TFBot { Template T_TFBot_Medic_Shield_Kritzkrieg_Extended_Armored } } } WaveSpawn { Where spawnbot_middle Name "stage03_giant" WaitForAllSpawned "stage02" TotalCount 4 MaxActive 4 SpawnCount 1 WaitBeforeStarting 20 WaitBetweenSpawns 15 TotalCurrency 80 TFBot { Template T_TFBot_Giant_Pyro_Future_Taunt BehaviorModifiers Mobber CharacterAttributes { "cannot pick up intelligence" 1 } } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Where spawnbot_right Name "stage03" WaitForAllSpawned "stage02" TotalCount 40 MaxActive 10 SpawnCount 5 WaitBeforeStarting 10 WaitBetweenSpawns 2 TotalCurrency 100 TFBot { Template T_TFBot_Demo_Loch_Spammer_Shield } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_right Name "stage04" WaitForAllSpawned "stage03" TotalCount 12 MaxActive 8 SpawnCount 4 WaitBeforeStarting 10 WaitBetweenSpawns 10 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Soldier_Burst_Spammer } TFBot { Template T_TFBot_Medic_Quickuber_Armored } TFBot { Template T_TFBot_Medic_Quickuber_Armored } TFBot { Template T_TFBot_Medic_Shield_Kritzkrieg_Extended_Armored } } } WaveSpawn { Where spawnbot_right Name "stage04" WaitForAllSpawned "stage03" TotalCount 16 MaxActive 12 SpawnCount 4 WaitBeforeStarting 0 WaitBetweenSpawns 5 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Pyro_Future_Taunt BehaviorModifiers Mobber CharacterAttributes { "cannot pick up intelligence" 1 } } TFBot { Template T_TFBot_Medic_Quickheal } } } } // Wave 4/8 // Total $ in this wave : 1500$ // Total $ when wave starts : 600$ (Starting money) + 3300$ (Collected money) + 300$ (Bonus) = 4200$ // Total $ when wave ends : 600$ (Starting money) + 4800$ (Collected money) + 400$ (Bonus) = 5800$ // 1. Tank (30000), Chief Crit Buff Soldier (40000), Giant Sticky Spam Demo, Giant Fat Scout, Rifleman // 2. Giant Crit Buff Soldier + Giant Blinking Uber Medic // 2-a. Goldgun Penetrator Heavy + Blinking Uber Medic, Burst Sticky Demo (Hard) + Blinking Uber Medic // 2-b. Tank (25000), Rapid Fire Soldier (Conch), Burst Fire Soldier (Conch) // Mission: Armored Sniper (Crit) Mission { Objective Sniper Where spawnbot_mission_sniper BeginAtWave 4 RunForThisManyWaves 1 InitialCooldown 40 CooldownTime 40 DesiredCount 2 TFBot { Template T_TFBot_Sniper_Armored Attributes AlwaysCrit } } Wave { Checkpoint Yes StartWaveOutput { Target wave_start_classic_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaveSpawn { Name "stage01_tank" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 100 Tank { Health 30000 Name TankBoss Speed 75 StartingPathTrackNode tank_path_b_1 OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Where spawnbot_left Name "stage01_boss" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 200 TFBot { Template T_TFBot_Chief_Soldier_Critbuff } } WaveSpawn { Where spawnbot_middle Name "stage01" TotalCount 12 MaxActive 12 SpawnCount 3 WaitBeforeStarting 0 WaitBetweenSpawns 12 TotalCurrency 200 TFBot { Template T_TFBot_Giant_Demo_Sticky_Spammer SpawnTemplate "powerup_logic_critbuff_recipient" } } WaveSpawn { Where spawnbot_left Name "stage01" TotalCount 6 MaxActive 3 SpawnCount 3 WaitBeforeStarting 12 WaitBetweenSpawns 20 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Heavy_Shotgun_Scout SpawnTemplate "powerup_logic_critbuff_recipient" } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Name "stage01" TotalCount 30 MaxActive 9 SpawnCount 3 WaitBeforeStarting 24 WaitBetweenSpawns 0 TotalCurrency 100 TFBot { Template T_TFBot_Sniper_Rifleman SpawnTemplate "powerup_logic_critbuff_recipient" } } WaveSpawn { Where spawnbot_right Name "stage02_giant" WaitForAllSpawned "stage01" TotalCount 12 MaxActive 6 SpawnCount 2 WaitBeforeStarting 25 WaitBetweenSpawns 17 TotalCurrency 300 Squad { TFBot { Template T_TFBot_Giant_Soldier_Critbuff } TFBot { Template T_TFBot_Giant_Medic_Blinking SpawnTemplate "powerup_logic_critbuff_recipient" } } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Name "stage02a" WaitForAllSpawned "stage01" TotalCount 24 MaxActive 8 SpawnCount 2 WaitBeforeStarting 20 WaitBetweenSpawns 0 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Heavy_Brassbeast_Penetration SpawnTemplate "powerup_logic_critbuff_recipient" } TFBot { Template T_TFBot_Medic_Blinking SpawnTemplate "powerup_logic_critbuff_recipient" } } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Name "stage02a" WaitForAllSpawned "stage01" TotalCount 24 MaxActive 8 SpawnCount 2 WaitBeforeStarting 20 WaitBetweenSpawns 0 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Demo_Sticky_Burst_Hard SpawnTemplate "powerup_logic_critbuff_recipient" } TFBot { Template T_TFBot_Medic_Blinking SpawnTemplate "powerup_logic_critbuff_recipient" } } } WaveSpawn { Name "stage02b_tank" WaitForAllSpawned "stage02a" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 0 TotalCurrency 100 Tank { Health 25000 Name TankBoss Speed 75 StartingPathTrackNode tank_path_a_1 OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Where spawnbot_right Name "stage02b" WaitForAllSpawned "stage02a" Support 1 TotalCount 40 MaxActive 18 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 200 RandomChoice { TFBot { Template T_TFBot_Soldier_Burst_Conch SpawnTemplate "powerup_logic_critbuff_recipient" } TFBot { Template T_TFBot_Soldier_Spammer_Conch SpawnTemplate "powerup_logic_critbuff_recipient" } } } } // Wave 5/8 // Total $ in this wave : 2000$ // Total $ when wave starts : 600$ (Starting money) + 4800$ (Collected money) + 400$ (Bonus) = 5800$ // Total $ when wave ends : 600$ (Starting money) + 6800$ (Collected money) + 500$ (Bonus) = 7900$ // Main. Super Scout // 1. Flame Vac Tank (20000), Giant Hyper Flare Pyro + 2 Armored Vac Medic (Flame, Inf) // 2. Blast Vac Tank (20000), Giant Hyper Burst Fire Demo + 2 Armored Vac Medic (Blast, Inf) // 3. Bullet Vac Tank (20000), Giant Hyper Homing Bowman + 2 Armored Vac Medic (Bullet, Inf) // 4. Melee Vac Tank (7500), Super Heavyweight Champ (Fire Vac) + Super Heavyweight Champ (Bullet Vac) + Super Heavyweight Champ (Blast Vac) // Support: Fast Scout (Crit), Fast Scorch Shot (Crit), Scatter Demo (Crit), Heavy (Crit) // Mission: Business Spy, Croc-o-Style Sniper (EH) Mission { Objective Spy Where spawnbot_mission_spy BeginAtWave 5 RunForThisManyWaves 1 InitialCooldown 10 CooldownTime 30 DesiredCount 3 TFBot { Template T_TFBot_Spy_Business_Support } } Mission { Objective Sniper Where spawnbot_mission_sniper BeginAtWave 5 RunForThisManyWaves 1 InitialCooldown 20 CooldownTime 30 DesiredCount 3 TFBot { Template T_TFBot_Sniper_Crocostyle_Explosive } } Wave { Checkpoint Yes StartWaveOutput { Target wave_start_classic_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Where spawnbot_right Name "superscout" TotalCount 20 MaxActive 4 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 20 TotalCurrency 200 TFBot { Template T_TFBot_Giant_Scout_Fast_Expert } } WaveSpawn { Name "stage01_tank" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 200 Tank { Health 20000 Name VacFireTankBoss Speed 75 StartingPathTrackNode tank_path_a_1 OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } SpawnTemplate "TankVacFire" ClassIcon tank_vac_fire_lite } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Where spawnbot_right Name "stage01" TotalCount 6 MaxActive 6 SpawnCount 3 WaitBeforeStarting 10 WaitBetweenSpawns 20 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Pyro_Flare_Hyper } TFBot { Template T_TFBot_Medic_Vaccinator_Fire_Infinite_Armored } TFBot { Template T_TFBot_Medic_Vaccinator_Fire_Infinite_Armored } } } WaveSpawn { Name "stage02_tank" WaitForAllSpawned "stage01" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 200 Tank { Health 20000 Name VacBlastTankBoss Speed 75 StartingPathTrackNode tank_path_b_1 OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } SpawnTemplate "TankVacBlast" ClassIcon tank_vac_blast_lite } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Where spawnbot_right Name "stage02" WaitForAllSpawned "stage01" TotalCount 6 MaxActive 6 SpawnCount 3 WaitBeforeStarting 20 WaitBetweenSpawns 20 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Demo_Burst_Hyper } TFBot { Template T_TFBot_Medic_Vaccinator_Blast_Infinite_Armored } TFBot { Template T_TFBot_Medic_Vaccinator_Blast_Infinite_Armored } } } WaveSpawn { Name "stage03_tank" WaitForAllSpawned "stage02" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 200 Tank { Health 20000 Name VacBlastTankBoss Speed 75 StartingPathTrackNode tank_path_a_1 OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } SpawnTemplate "TankVacBullet" ClassIcon tank_vac_bullet_lite } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Where spawnbot_right Name "stage03" WaitForAllSpawned "stage02" TotalCount 6 MaxActive 6 SpawnCount 3 WaitBeforeStarting 20 WaitBetweenSpawns 20 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Sniper_Huntsman_Hyper_Homing } TFBot { Template T_TFBot_Medic_Vaccinator_Bullet_Infinite_Armored } TFBot { Template T_TFBot_Medic_Vaccinator_Bullet_Infinite_Armored } } } WaveSpawn { Name "stage04_tank" WaitForAllSpawned "stage03" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 200 Tank { Health 8000 Name VacMeleeTankBoss Speed 75 StartingPathTrackNode tank_path_b_1 OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } SpawnTemplate "TankVacMelee" ClassIcon tank_vac_trio_lite } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Where spawnbot_right Name "stage04" WaitForAllSpawned "stage03" TotalCount 6 MaxActive 6 SpawnCount 3 WaitBeforeStarting 30 WaitBetweenSpawns 30 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Heavy_Heavyweight_Bullet_Vac } TFBot { Template T_TFBot_Giant_Heavy_Heavyweight_Blast_Vac } TFBot { Template T_TFBot_Giant_Heavy_Heavyweight_Fire_Vac } } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Where spawnbot_right Name "support" Support 1 TotalCount 50 MaxActive 10 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 200 RandomChoice { TFBot { Template T_TFBot_Scout_Fast Attributes AlwaysCrit } TFBot { Template T_TFBot_ScorchShot_FastShot Attributes AlwaysCrit } TFBot { Template T_TFBot_Demo_Scatter Attributes AlwaysCrit } TFBot { Class Heavyweapons Attributes AlwaysCrit Skill Expert } } } } // Wave 6/8 // Total $ in this wave : 1200$ // Total $ when wave starts : 600$ (Starting money) + 6800$ (Collected money) + 500$ (Bonus) = 7900$ // Total $ when wave ends : 600$ (Starting money) + 8000$ (Collected money) + 600$ (Bonus) = 9200$ // 1. Giant Scatter Homing Soldier (Hyper) + Giant Medic + Giant Haste Medic + 2 Colonel Barrage (Backup, Crit) // Giant Killer Bee Scout (Crit), Penetrator Hunter Sniper (Armored, Crit) + 3 Heal-on-Hit Heavy (Hyper) // Giant Heal-on-Hit Heavy (Hyper) + Giant Extended Uber Medic (Regen) + Giant Strength Medic + 2 Giant Battalion Heavy (Crit) // Scatter Homing Soldier (Hyper) + Uber Medic + 3 Hyper Pyro, Giant Burst Scatter Scout (Hyper, Crit) // 2. Giant Hyper Pyro + Giant Extended Shield Medic, Penetrator Hunter Sniper (Crit) // Mission: Armored Engineer (Crit), Hyper Spy Mission { Objective Spy Where spawnbot_mission_spy BeginAtWave 6 RunForThisManyWaves 1 InitialCooldown 10 CooldownTime 50 DesiredCount 4 TFBot { Template T_TFBot_Spy_Hyper } } Mission { Objective Engineer Where spawnbot_left BeginAtWave 6 RunForThisManyWaves 1 InitialCooldown 20 CooldownTime 50 DesiredCount 2 TFBot { Template T_TFBot_Engineer_Sentry_Teleporter_Armored Attributes AlwaysCrit Attributes TeleportToHint TeleportWhere spawnbot_left TeleportWhere spawnbot_middle TeleportWhere spawnbot_right } } Wave { Checkpoint Yes StartWaveOutput { Target wave_start_classic_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaveSpawn { Where spawnbot_left Name "stage01_giant" TotalCount 10 MaxActive 10 SpawnCount 5 WaitBeforeStarting 0 WaitBetweenSpawns 30 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Soldier_Scatter_Homing_Hyper SpawnTemplate "powerup_haste_logic" } TFBot { Template T_TFBot_Giant_Medic SpawnTemplate "powerup_haste_logic" } TFBot { Template T_TFBot_Giant_Medic_Haste } TFBot { Template T_TFBot_Giant_Soldier_SlowBarrage_Backup SpawnTemplate "powerup_haste_logic" Attributes AlwaysCrit } TFBot { Template T_TFBot_Giant_Soldier_SlowBarrage_Backup SpawnTemplate "powerup_haste_logic" Attributes AlwaysCrit } } } WaveSpawn { Where spawnbot_right Name "stage01" TotalCount 5 MaxActive 2 SpawnCount 2 WaitBeforeStarting 30 WaitBetweenSpawns 10 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Scout_Jumping_Hyper Attributes AlwaysCrit SpawnTemplate "powerup_haste_logic" } } WaveSpawn { Where spawnbot_middle Name "stage01" TotalCount 32 MaxActive 8 SpawnCount 4 WaitBeforeStarting 10 WaitBetweenSpawns 3 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Sniper_Hunter_Spammer_Penetration SpawnTemplate "powerup_haste_logic" } TFBot { Template T_TFBot_Heavy_Deflector_HoH_Hyper SpawnTemplate "powerup_haste_logic" } TFBot { Template T_TFBot_Heavy_Deflector_HoH_Hyper SpawnTemplate "powerup_haste_logic" } TFBot { Template T_TFBot_Heavy_Deflector_HoH_Hyper SpawnTemplate "powerup_haste_logic" } } } WaveSpawn { Where spawnbot_middle Name "stage01_giant" TotalCount 10 MaxActive 10 SpawnCount 5 WaitBeforeStarting 60 WaitBetweenSpawns 30 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Heavy_Deflector_HoH_Hyper SpawnTemplate "powerup_strength_logic" } TFBot { Template T_TFBot_Giant_Medic_Uber_Extended SpawnTemplate "powerup_strength_logic" } TFBot { Template T_TFBot_Giant_Medic_Strength } TFBot { Template T_TFBot_Giant_Heavy_Backup SpawnTemplate "powerup_strength_logic" Attributes AlwaysCrit } TFBot { Template T_TFBot_Giant_Heavy_Backup SpawnTemplate "powerup_strength_logic" Attributes AlwaysCrit } } } WaveSpawn { Where spawnbot_left Name "stage01" TotalCount 40 MaxActive 10 SpawnCount 5 WaitBeforeStarting 70 WaitBetweenSpawns 3 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Soldier_Scatter_Homing_Hyper SpawnTemplate "powerup_strength_logic" } TFBot { Template T_TFBot_Medic SpawnTemplate "powerup_strength_logic" } TFBot { Template T_TFBot_Pyro_Hyper SpawnTemplate "powerup_strength_logic" } TFBot { Template T_TFBot_Pyro_Hyper SpawnTemplate "powerup_strength_logic" } TFBot { Template T_TFBot_Pyro_Hyper SpawnTemplate "powerup_strength_logic" } } } WaveSpawn { Where spawnbot_right Name "stage01" TotalCount 5 MaxActive 5 SpawnCount 1 WaitBeforeStarting 90 WaitBetweenSpawns 10 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Scout_Backscatter_Hyper Attributes AlwaysCrit SpawnTemplate "powerup_strength_logic" } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Name "stage02_giant" WaitForAllSpawned "stage01_giant" TotalCount 4 MaxActive 4 SpawnCount 2 WaitBeforeStarting 40 WaitBetweenSpawns 30 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Pyro_Hyper } TFBot { Template T_TFBot_Giant_Medic_Shield_Extended } } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Name "stage02" WaitForAllSpawned "stage01" TotalCount 16 MaxActive 16 SpawnCount 4 WaitBeforeStarting 25 WaitBetweenSpawns 0 TotalCurrency 200 TFBot { Template T_TFBot_Sniper_Hunter_Spammer_Penetration Attributes AlwaysCrit } } } // Wave 7/8 // Total $ in this wave : 1500$ // Total $ when wave starts : 600$ (Starting money) + 8000$ (Collected money) + 600$ (Bonus) = 9200$ // Total $ when wave ends : 600$ (Starting money) + 9500$ (Collected money) + 700$ (Bonus) = 10800$ // 1. Tank (30000 * 2), Hyper Shortstop Scout + Vac Medic (Bullet) // Giant Addicted Scout (Crit), Hyper Sticky Spam Demo + Vac Medic (Blast) // 2. Giant Nuclear Sticky Demo + Giant Vac Medic (Blast), Hyper Burst Fire Soldier + Vac Medic (Blast), Hyper Bonk Scout // 3. Tank (60000), Giant Dragon Heavy + Giant Vac Medic (Bullet), Dragon Heavy + Vac Medic (Bullet) // Support: Hyper Engineer + Armored Hyper Medic // Mission: Charged Sniper, Hyper Revolver Spy Mission { Objective Spy Where spawnbot_mission_spy BeginAtWave 7 RunForThisManyWaves 1 InitialCooldown 60 CooldownTime 60 DesiredCount 2 TFBot { Template T_TFBot_Spy_Hyper_Revolver_Support } } Mission { Objective Sniper Where spawnbot_mission_sniper BeginAtWave 7 RunForThisManyWaves 1 InitialCooldown 40 CooldownTime 60 DesiredCount 2 TFBot { Template T_TFBot_Sniper_Charged } } Wave { Checkpoint Yes StartWaveOutput { Target wave_start_classic_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaveSpawn { Name "stage01_tank" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 125 Tank { Health 30000 Name TankBoss Speed 75 StartingPathTrackNode tank_path_a_1 OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name "stage01_tank" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 20 WaitBetweenSpawns 0 TotalCurrency 125 Tank { Health 30000 Name TankBoss Speed 75 StartingPathTrackNode tank_path_b_1 OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { RandomSpawn 1 Where spawnbot_middle Where spawnbot_right Name "stage01_scouts" TotalCount 40 MaxActive 4 SpawnCount 4 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Scout_Shortstop_Hyper } TFBot { Template T_TFBot_Medic_Vaccinator_Bullet_Click } } } WaveSpawn { RandomSpawn 1 Where spawnbot_middle Where spawnbot_right Name "stage01_giantscouts" TotalCount 10 MaxActive 2 SpawnCount 2 WaitBeforeStarting 25 WaitBetweenSpawns 20 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Scout_Soda_Hyper Attributes AlwaysCrit } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Name "stage01" TotalCount 54 MaxActive 14 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Demo_Sticky_Spammer_Hyper } TFBot { Template T_TFBot_Medic_Vaccinator_Blast_Click } } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Name "stage02_giant" WaitForAllSpawned "stage01" TotalCount 6 MaxActive 4 SpawnCount 2 WaitBeforeStarting 15 WaitBetweenSpawns 20 TotalCurrency 150 Squad { TFBot { Template T_TFBot_Giant_Demo_Sticky_Nuker } TFBot { Template T_TFBot_Giant_Medic_Vaccinator_Blast } } } WaveSpawn { RandomSpawn 1 Where spawnbot_middle Where spawnbot_right Name "stage02" WaitForAllSpawned "stage01" TotalCount 30 MaxActive 6 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Soldier_Burst_Hyper } TFBot { Template T_TFBot_Medic_Vaccinator_Blast_Click } } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Name "stage02" WaitForAllSpawned "stage01" TotalCount 30 MaxActive 6 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 100 TFBot { Template T_TFBot_Scout_Hyper_Bonk } } WaveSpawn { Name "stage03_tank" WaitForAllSpawned "stage02" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 150 Tank { Health 60000 Name TankBoss Speed 75 Skin 1 StartingPathTrackNode tank_path_b_1 OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Name "stage03" WaitForAllSpawned "stage02" TotalCount 4 MaxActive 4 SpawnCount 2 WaitBeforeStarting 20 WaitBetweenSpawns 10 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Giant_Heavy_Dragon } TFBot { Template T_TFBot_Giant_Medic_Vaccinator_Bullet } } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Name "stage03" WaitForAllSpawned "stage02" TotalCount 40 MaxActive 12 SpawnCount 2 WaitBeforeStarting 30 WaitBetweenSpawns 0 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Heavy_Dragon } TFBot { Template T_TFBot_Medic_Vaccinator_Bullet } } } WaveSpawn { Where spawnbot_right Name "support" Support 1 TotalCount 10 MaxActive 4 SpawnCount 2 WaitBeforeStarting 30 WaitBetweenSpawns 45 TotalCurrency 50 Squad { TFBot { Template T_TFBot_Engineer_Sentry_Tele_Battle_Hyper TeleportWhere spawnbot_left TeleportWhere spawnbot_middle TeleportWhere spawnbot_right } TFBot { Template T_TFBot_Medic_Hyper_Armored } } } } // Wave 8/8 // Total $ in this wave : 500$ // Total $ when wave starts : 600$ (Starting money) + 9500$ (Collected money) + 700$ (Bonus) = 10800$ // Total $ when wave ends : 600$ (Starting money) + 10000$ (Collected money) + 700$ (Bonus) = 11300$ // Boss // Support: Timer, Bonk Scout (Trio Vac), Heavyweight Champ (Trio Vac) // Mission: Death Ray Sniper Mission { Objective Sniper Where spawnbot_mission_sniper BeginAtWave 8 RunForThisManyWaves 1 InitialCooldown 60 CooldownTime 15 DesiredCount 8 TFBot { Template T_TFBot_Sniper_Deathray } } Wave { Checkpoint Yes StartWaveOutput { Target wave_start_classic_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } SpawnTemplate { Name "DropZonelock" Origin "1370 3954 -485" Angles "0 90 0" } WaveSpawn { Where spawnbot_left Name "boss" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 0 TFBot { Template T_TFBot_Boss BehaviorModifiers Mobber } } WaveSpawn { Where spawnbot_right Name "timer" Support Limited TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 0 TFBot { Class Scout ClassIcon timer_lite Health 240 Scale 0.01 Attributes UseBossHealthBar Attributes SuppressFire Attributes IgnoreFlag Attributes IgnoreEnemies CharacterAttributes { "is suicide counter" 1 "voice pitch scale" 0.001 "mod weapon blocks healing" 1 "self dmg push force decreased" -99 "dmg from ranged reduced" 0.000000001 "cancel falling damage" 1 "move speed bonus" 0.000001 "damage force reduction" 0.0001 "airblast vulnerability multiplier" 0.01 "airblast vertical vulnerability multiplier" 0.01 "cannot pick up intelligence" 1 "increased jump height" 0 "voice pitch scale" 0 "dmg from melee increased" 0.0 "health from packs decreased" 0 } } } WaveSpawn { Where spawnbot_right Name "wave_fail" WaitForAllDead "timer" Support 1 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 2 WaitBetweenSpawns 0 TotalCurrency 0 FirstSpawnOutput { Target boss_deploy_relay Action Trigger } TFBot { Class Scout ClassIcon scout_bonk_blast_nys Health 66666 Scale 0.01 Attributes SuppressFire Attributes IgnoreFlag Attributes IgnoreEnemies CharacterAttributes { "voice pitch scale" 0.001 "mod weapon blocks healing" 1 "self dmg push force decreased" -99 "dmg from ranged reduced" 0.000000001 "cancel falling damage" 1 "move speed bonus" 0.000001 "damage force reduction" 0.0001 "airblast vulnerability multiplier" 0.01 "airblast vertical vulnerability multiplier" 0.01 "cannot pick up intelligence" 1 "increased jump height" -9 "voice pitch scale" 0 "dmg from melee increased" 0.0 } } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Where spawnbot_right Name "support" Support 1 TotalCount 25 MaxActive 8 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 250 RandomChoice { TFBot { Template T_TFBot_Scout_Bonk_Blast_Vac } TFBot { Template T_TFBot_Scout_Bonk_Bullet_Vac } TFBot { Template T_TFBot_Scout_Bonk_Fire_Vac } } } WaveSpawn { RandomSpawn 1 Where spawnbot_left Where spawnbot_middle Where spawnbot_right Name "support" Support 1 TotalCount 25 MaxActive 8 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 250 RandomChoice { TFBot { Template T_TFBot_Heavy_Heavyweight_Blast_Vac } TFBot { Template T_TFBot_Heavy_Heavyweight_Bullet_Vac } TFBot { Template T_TFBot_Heavy_Heavyweight_Fire_Vac } } } } }