#base robot_giant.pop #base robot_standard.pop #base robot_gatebot.pop #base robot_click.pop #base robot_click_giant.pop #base robot_hole.pop WaveSchedule { StartingCurrency 600 RespawnWaveTime 7 CanBotsAttackWhileInSpawnRoom no Advanced 1 Mission { Objective DestroySentries Where spawnbot BeginAtWave 1 RunForThisManyWaves 7 InitialCooldown 40 CooldownTime 30 TFBot { Template T_TFBot_SentryBuster } } Mission { Objective Spy Where spawnbot_mission_spy BeginAtWave 2 RunForThisManyWaves 1 InitialCooldown 30 CooldownTime 30 DesiredCount 2 TFBot { Template T_TFBot_Spy } } Mission { Objective Sniper Where spawnbot_mission_sniper BeginAtWave 2 RunForThisManyWaves 1 InitialCooldown 30 CooldownTime 60 DesiredCount 2 TFBot { Template T_TFBot_Sniper_Sydney_Sleeper } } Mission { Objective sniper Where spawnbot_mission_sniper BeginAtWave 4 RunForThisManyWaves 1 InitialCooldown 30 CooldownTime 60 DesiredCount 2 TFBot { Template T_TFBot_Sniper } } Mission { Objective Spy Where spawnbot_mission_spy BeginAtWave 5 RunForThisManyWaves 1 InitialCooldown 30 CooldownTime 30 DesiredCount 2 TFBot { Template T_TFBot_Spy_Ninja } } Mission { Objective Engineer Where spawnbot BeginAtWave 5 RunForThisManyWaves 2 InitialCooldown 5 CooldownTime 60 DesiredCount 2 TFBot { Template T_TFBot_Engineer_Sentry_Teleporter_FastBuild TeleportWhere spawnbot TeleportWhere spawnbot_right TeleportWhere spawnbot_left TeleportWhere spawnbot_invasion } } Mission { Objective sniper Where spawnbot_mission_sniper BeginAtWave 6 RunForThisManyWaves 1 InitialCooldown 30 CooldownTime 60 DesiredCount 2 TFBot { Template T_TFBot_Sniper_UberConsume } } Mission { Objective Spy Where spawnbot_mission_spy BeginAtWave 7 RunForThisManyWaves 1 InitialCooldown 15 CooldownTime 30 DesiredCount 2 TFBot { Template T_TFBot_Spy_Silent } } Mission { Objective Sniper Where spawnbot_mission_Sniper BeginAtWave 7 RunForThisManyWaves 1 InitialCooldown 15 CooldownTime 30 DesiredCount 2 TFBot { Template T_TFBot_Sniper_Sydney_Bomb } } Wave { WaitWhenDone 65 Checkpoint Yes // "Wave0l : 600 + 900 = 1500 (100)" StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name w1_a TotalCurrency 200 TotalCount 8 MaxActive 4 SpawnCount 4 WaitBeforeStarting 10 WaitBetweenSpawns 0 Where spawnbot Squad { TFBot { Template T_TFBot_Giant_Heavyweapons } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } } } WaveSpawn { Name w1_a TotalCurrency 200 TotalCount 40 MaxActive 10 SpawnCount 4 WaitBeforeStarting 0 WaitBetweenSpawns 0 Where spawnbot Squad { TFBot { Template T_TFBot_Sniper_Huntsman_Penetration } } } WaveSpawn { Name w1_b WaitForAllDead w1_a TotalCurrency 100 TotalCount 4 MaxActive 2 SpawnCount 1 WaitBeforeStarting 20 WaitBetweenSpawns 10 Where spawnbot Squad { TFBot { Template T_TFBot_Giant_Scout_Fast } } } WaveSpawn { Name w1_b WaitForAllDead w1_a TotalCurrency 250 TotalCount 40 MaxActive 12 SpawnCount 4 WaitBeforeStarting 0 WaitBetweenSpawns 0 RandomSpawn 1 Where spawnbot_left Where spawnbot_right Squad { TFBot { Template T_TFBot_Sniper_Huntsman_Penetration } } } WaveSpawn { Name w1_support TotalCurrency 150 TotalCount 50 MaxActive 6 SpawnCount 6 WaitBeforeStarting 20 WaitBetweenSpawns 30 Support 1 RandomSpawn 1 Where spawnbot_left Where spawnbot_right Squad { TFBot { Template T_TFBot_Scout_Melee Attributes "AlwaysCrit" } } } } Wave { WaitWhenDone 65 Checkpoint Yes // "Wave02 : 1500 + 1000 = 2500 (200)" StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name w2_tank TotalCurrency 100 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0 Where spawnbot FirstSpawnOutput { Target boss_spawn_relay Action Trigger } Tank { Health 17000 Speed 75 Name "tank" StartingPathTrackNode "boss_path_a1" OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name w2_a0 TotalCurrency 200 TotalCount 9 MaxActive 6 SpawnCount 3 WaitBeforeStarting 5 WaitBetweenSpawns 10 Where spawnbot Squad { TFBot { Template T_TFBot_Giant_Demo_Spammer } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } } } WaveSpawn { Name w2_a0 TotalCurrency 200 TotalCount 36 MaxActive 12 SpawnCount 4 WaitBeforeStarting 10 WaitBetweenSpawns 0 Where spawnbot_invasion RandomChoice { TFBot { Template T_TFBot_Pyro_ScorchShot_Wide Tag "nav_prefer_flank_right" } TFBot { Template T_TFBot_Pyro_ScorchShot_Wide Tag "nav_prefer_flank_left" } TFBot { Template T_TFBot_Pyro_ScorchShot_Wide } } } WaveSpawn { Name w2_b0 WaitForAllDead w2_a0 TotalCurrency 300 TotalCount 48 MaxActive 16 SpawnCount 16 WaitBeforeStarting 0 WaitBetweenSpawns 0 Where spawnbot Squad { TFBot { Template T_TFBot_Soldier_Extended_Concheror } TFBot { Template T_TFBot_Medic_QuickUber } } } WaveSpawn { Name w2_b0 WaitForAllDead w2_a0 TotalCurrency 200 TotalCount 9 MaxActive 3 SpawnCount 3 WaitBeforeStarting 0 WaitBetweenSpawns 0 Where spawnbot Squad { TFBot { Template T_TFBot_Giant_Demo_Spammer } } } } Wave { WaitWhenDone 65 Checkpoint Yes // "Wave03 : 2500 + 900 = 3400(300)" StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name w3_a0 TotalCurrency 200 TotalCount 30 MaxActive 10 SpawnCount 10 WaitBeforeStarting 0 WaitBetweenSpawns 0 Where spawnbot Squad { TFBot { Template T_TFBot_Heavy_Deflector } } } WaveSpawn { Name w3_a0 TotalCurrency 200 TotalCount 36 MaxActive 6 SpawnCount 2 WaitBeforeStarting 5 WaitBetweenSpawns 0 RandomSpawn 1 Where spawnbot_left Where spawnbot_right RandomChoice { TFBot { Template T_TFBot_Soldier_Extended_Buff_Banner_Spammer } TFBot { Template T_TFBot_Soldier_Extended_Buff_Banner_Spammer Tag "nav_prefer_flank_left" } TFBot { Template T_TFBot_Soldier_Extended_Buff_Banner_Spammer Tag "nav_prefer_flank_right" } } } WaveSpawn { Name w3_b0 WaitForAllSpawned w3_a0 TotalCurrency 200 TotalCount 60 MaxActive 12 SpawnCount 4 WaitBeforeStarting 10 WaitBetweenSpawns 0 Support 1 RandomSpawn 1 Where spawnbot_left Where spawnbot_right RandomChoice { TFBot { Template T_TFBot_Scout_FAN } TFBot { Template T_TFBot_Scout_FAN Tag "nav_prefer_flank_left" } TFBot { Template T_TFBot_Scout_FAN Tag "nav_prefer_flank_right" } } } WaveSpawn { Name w3_b0 WaitForAllDead w3_a0 TotalCurrency 200 TotalCount 6 MaxActive 4 SpawnCount 2 WaitBeforeStarting 5 WaitBetweenSpawns 20 Where spawnbot Squad { TFBot { Template T_TFBot_Giant_DemoMan_PrinceTavish Attributes "AlwaysCrit" } TFBot { Template T_TFBot_Giant_Medic_Regen } } } WaveSpawn { Name w3_support TotalCurrency 100 TotalCount 20 MaxActive 4 SpawnCount 4 WaitBeforeStarting 10 WaitBetweenSpawns 30 Support 1 Where spawnbot_invasion Squad { TFBot { Template T_TFBot_Engineer_Sentry_Tele_Battle TeleportWhere spawnbot TeleportWhere spawnbot_invasion TeleportWhere spawnbot_left TeleportWhere spawnbot_right } TFBot { Template T_TFBot_Medic_QuickUber } } } } Wave { WaitWhenDone 65 Checkpoint Yes // "Wave04 : 3400 + 1050 = 4450 (400)" StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name w04_Tank TotalCurrency 100 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 30 Where spawnbot FirstSpawnOutput { Target boss_spawn_relay Action Trigger } Tank { Health 25000 Speed 75 Name "tankboss" StartingPathTrackNode "boss_path_a1" OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name w4_engirush0 TotalCurrency 60 TotalCount 8 MaxActive 8 SpawnCount 8 WaitBeforeStarting 5 WaitBetweenSpawns 0 Support Limited RandomSpawn 1 Where spawnbot_left Where spawnbot_right Squad { TFBot { Template T_TFBot_Engineer_Sentry_Tele_Battle_FastBuild TeleportWhere spawnbot TeleportWhere spawnbot_invasion TeleportWhere spawnbot_left TeleportWhere spawnbot_right } } } WaveSpawn { Name w4_engirush1 WaitForAllDead w4_engirush0 TotalCurrency 140 TotalCount 14 MaxActive 2 SpawnCount 2 WaitBeforeStarting 30 WaitBetweenSpawns 45 Support 1 RandomSpawn 1 Where spawnbot_left Where spawnbot_right Squad { TFBot { Template T_TFBot_Engineer_Sentry_Tele_Battle_FastBuild TeleportWhere spawnbot TeleportWhere spawnbot_invasion TeleportWhere spawnbot_left TeleportWhere spawnbot_right } } } WaveSpawn { Name w4_a0 TotalCurrency 150 TotalCount 8 MaxActive 4 SpawnCount 2 WaitBeforeStarting 15 WaitBetweenSpawns 15 Where spawnbot RandomChoice { TFBot { Template T_TFBot_Giant_Demo_Scatter Tag "nav_prefer_flank_right" } TFBot { Template T_TFBot_Giant_Demo_Scatter Tag "nav_prefer_flank_left" } } } WaveSpawn { Name w4_a0 TotalCurrency 150 TotalCount 48 MaxActive 10 SpawnCount 4 WaitBeforeStarting 5 WaitBetweenSpawns 0 Where spawnbot RandomChoice { TFBot { Template T_TFBot_Demo_Loch_Spammer } } } WaveSpawn { Name w04_Tank2 WaitForAllDead w4_a0 TotalCurrency 100 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 30 Where spawnbot FirstSpawnOutput { Target boss_spawn_relay Action Trigger } Tank { Health 13000 Speed 75 Name "tankboss" StartingPathTrackNode "boss_path_a1" OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name w4_b0 WaitForAllDead w4_a0 TotalCurrency 250 TotalCount 40 MaxActive 12 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 0 Where spawnbot_invasion RandomChoice { TFBot { Template T_TFBot_Soldier_Burst_Pusher } TFBot { Template T_TFBot_Soldier_Burst_Pusher Tag "nav_prefer_flank_left" } TFBot { Template T_TFBot_Soldier_Burst_Pusher Tag "nav_prefer_flank_right" } TFBot { Template T_TFBot_Soldier_Direct_Spammer_Nobuff } TFBot { Template T_TFBot_Soldier_Direct_Spammer_Nobuff Tag "nav_prefer_flank_left" } TFBot { Template T_TFBot_Soldier_Direct_Spammer_Nobuff Tag "nav_prefer_flank_right" } } } WaveSpawn { Name w4_b0 WaitForAllDead w4_a0 TotalCurrency 100 TotalCount 20 MaxActive 4 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 0 Where spawnbot Squad { TFBot { Template T_TFBot_Scout_Bonk_Fast_Type2 Attributes "AlwaysCrit" } } } } Wave { WaitWhenDone 65 Checkpoint Yes // "Wave05 : 4450 + 950 = 5400(600)" StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name w5_a0 TotalCurrency 150 TotalCount 6 MaxActive 4 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 20 Where spawnbot Squad { TFBot { Template T_TFBot_Giant_Heavyweapons_Deflector Attributes "AlwaysCrit" } TFBot { Template T_TFBot_Giant_Medic } } } WaveSpawn { Name w5_a0 TotalCurrency 200 TotalCount 40 MaxActive 10 SpawnCount 2 WaitBeforeStarting 15 WaitBetweenSpawns 0 Where spawnbot_invasion Squad { TFBot { Template T_TFBot_Pyro_Backburner } } } WaveSpawn { Name w5_a0 TotalCurrency 50 TotalCount 2 MaxActive 2 SpawnCount 2 WaitBeforeStarting 15 WaitBetweenSpawns 20 RandomSpawn 1 Where spawnbot_left Where spawnbot_right RandomChoice { TFBot { Template T_TFBot_Giant_Soldier_Stun Tag "nav_prefer_flank_left" } TFBot { Template T_TFBot_Giant_Soldier_Stun Tag "nav_prefer_flank_right" } } } WaveSpawn { Name w5_b0 WaitForAllDead w5_a0 TotalCurrency 400 TotalCount 40 MaxActive 12 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 0 RandomSpawn 1 Where spawnbot_right Where spawnbot_left Squad { TFBot { Template T_TFBot_Heavy_Brassbeast } TFBot { Template T_TFBot_Medic_QuickUber } } } WaveSpawn { Name w5_b0 WaitForAllDead w5_a0 TotalCurrency 150 TotalCount 6 MaxActive 2 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 20 Where spawnbot RandomChoice { TFBot { Template T_TFBot_Giant_Soldier_Stun Tag "nav_prefer_flank_left" } TFBot { Template T_TFBot_Giant_Soldier_Stun Tag "nav_prefer_flank_right" } } } } Wave { WaitWhenDone 65 Checkpoint Yes // "Wave06 : 5400 + 1400 = 6800(700)" StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name w06_Tank TotalCurrency 200 TotalCount 2 MaxActive 2 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 30 Where spawnbot FirstSpawnOutput { Target boss_spawn_relay Action Trigger } Tank { Health 22500 Speed 75 Name "tankboss" StartingPathTrackNode "boss_path_a1" OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name w6_a0 TotalCurrency 200 TotalCount 36 MaxActive 8 SpawnCount 2 WaitBeforeStarting 5 WaitBetweenSpawns 0 RandomSpawn 1 Where spawnbot_left Where spawnbot_right RandomChoice { TFBot { Template T_TFBot_Soldier_Direct_Spammer_Nobuff Attributes "AlwaysCrit" } TFBot { Template T_TFBot_Soldier_Direct_Spammer_Nobuff Attributes "AlwaysCrit" Tag "nav_prefer_flank_left" } TFBot { Template T_TFBot_Soldier_Direct_Spammer_Nobuff Attributes "AlwaysCrit" Tag "nav_prefer_flank_right" } } } WaveSpawn { Name w6_a0 TotalCurrency 200 TotalCount 36 MaxActive 8 SpawnCount 2 WaitBeforeStarting 5 WaitBetweenSpawns 0 Where spawnbot_invasion RandomChoice { TFBot { Template T_TFBot_Demo_Loch_Spammer Attributes "AlwaysCrit" } TFBot { Template T_TFBot_Demo_Loch_Spammer Attributes "AlwaysCrit" Tag "nav_prefer_flank_right" } TFBot { Template T_TFBot_Demo_Loch_Spammer Attributes "AlwaysCrit" Tag "nav_prefer_flank_left" } } } WaveSpawn { Name w6_a0 TotalCurrency 100 TotalCount 32 MaxActive 4 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 0 Where spawnbot RandomChoice { TFBot { Template T_TFBot_Scout_Fast } } } WaveSpawn { Name w6_b0 WaitForAllDead w6_a0 TotalCurrency 150 TotalCount 6 MaxActive 4 SpawnCount 2 WaitBeforeStarting 5 WaitBetweenSpawns 20 Where spawnbot Squad { TFBot { Template T_TFBot_Giant_Scout_Fast WeaponRestrictions PrimaryOnly } } } WaveSpawn { Name w6_b0 WaitForAllDead w6_a0 TotalCurrency 150 TotalCount 36 MaxActive 14 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 0 Where spawnbot RandomChoice { TFBot { Template T_TFBot_Soldier_Burst_Pusher } TFBot { Template T_TFBot_Soldier_Burst_Pusher Tag "nav_prefer_flank_left" } TFBot { Template T_TFBot_Soldier_Burst_Pusher Tag "nav_prefer_flank_right" } } } WaveSpawn { Name w6_c0 WaitForAllDead w6_b0 TotalCurrency 300 TotalCount 16 MaxActive 8 SpawnCount 4 WaitBeforeStarting 10 WaitBetweenSpawns 10 Where spawnbot Squad { TFBot { Template T_TFBot_Giant_Pyro_Future } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } } } WaveSpawn { Name w6_support WaitForAllDead w6_b0 TotalCurrency 100 TotalCount 50 MaxActive 9 SpawnCount 3 WaitBeforeStarting 10 WaitBetweenSpawns 0 Where spawnbot_invasion Support 1 RandomChoice { TFBot { Class Heavyweapons Skill Expert Attributes "AlwaysCrit" } TFBot { Class Heavyweapons Skill Expert Attributes "AlwaysCrit" Tag "nav_prefer_flank_left" } TFBot { Class Heavyweapons Skill Expert Attributes "AlwaysCrit" Tag "nav_prefer_flank_right" } } } } Wave { WaitWhenDone 65 Checkpoint Yes // "Wave07 : 6800 + 1600 = 8400(800)" StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name w7_tank1 TotalCurrency 100 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0 Where spawnbot FirstSpawnOutput { Target boss_spawn_relay Action Trigger } Tank { Health 50000 Speed 75 Name "tankboss" StartingPathTrackNode "boss_path_a1" OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name w7_finalwave WaitForAllDead w7_b0 TotalCurrency 0 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 5 WaitBetweenSpawns 0 Where spawnbot FirstSpawnOutput { Target boss_spawn_relay Action Trigger } Tank { Health 120000 Speed 35 Name "tankboss" Skin 1 StartingPathTrackNode "boss_path_a1" OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name w7_a0 TotalCurrency 400 TotalCount 12 MaxActive 9 SpawnCount 3 WaitBeforeStarting 0 WaitBetweenSpawns 10 Where spawnbot Squad { TFBot { Template T_TFBot_Giant_Demo_Burst_Infinite_Expert } TFBot { Template T_TFBot_Medic_Armored } TFBot { Template T_TFBot_Medic_Armored } } } WaveSpawn { Name w7_a0 TotalCurrency 400 TotalCount 8 MaxActive 6 SpawnCount 2 WaitBeforeStarting 5 WaitBetweenSpawns 10 RandomSpawn 1 Where spawnbot_left Where spawnbot_right Squad { TFBot { Template T_TFBot_Giant_Soldier_Barrage_Hyper } } } WaveSpawn { Name w7_b0 WaitForAllDead w7_a0 TotalCurrency 400 TotalCount 8 MaxActive 8 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 5 Where spawnbot Squad { TFBot { Template T_TFBot_Giant_Soldier_Burst_Infinite_Expert } TFBot { Template T_TFBot_Medic_Armored } } } WaveSpawn { Name w7_b0 WaitForAllDead w7_a0 TotalCurrency 200 TotalCount 36 MaxActive 10 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 0 Where spawnbot_invasion RandomChoice { TFBot { Template T_TFBot_Scout_Blaster_Hyper } TFBot { Template T_TFBot_Scout_Blaster_Hyper Tag "nav_prefer_flank_left" } TFBot { Template T_TFBot_Scout_Blaster_Hyper Tag "nav_prefer_flank_right" } } } WaveSpawn { Name w7_finalwave WaitForAllDead w7_b0 TotalCurrency 0 TotalCount 8 MaxActive 8 SpawnCount 2 WaitBeforeStarting 20 WaitBetweenSpawns 0 Support Limited Where spawnbot_invasion Squad { TFBot { Template T_TFBot_Engineer_Sentry_Battle_Hyper TeleportWhere spawnbot TeleportWhere spawnbot_invasion BehaviorModifiers Push } } } WaveSpawn { Name w7_finalwave WaitForAllDead w7_b0 TotalCurrency 0 TotalCount 120 MaxActive 12 SpawnCount 4 WaitBeforeStarting 125 WaitBetweenSpawns 0 Support Limited Where spawnbot RandomChoice { TFBot { Template T_TFBot_Demo_Burst_Hyper BehaviorModifiers Push } TFBot { Template T_TFBot_Soldier_Burst_Expert BehaviorModifiers Push } } } } }