#base robot_giant.pop #base robot_standard.pop WaveSchedule { StartingCurrency 400 CanBotsAttackWhileInSpawnRoom No RespawnWaveTime 7 Templates { T_TFBot_Heavyweapons_Deflector { Class Heavyweapons Name "Deflector Heavy" ClassIcon heavy_deflector Skill Hard Item "The U-clank-a" Item "Deflector" WeaponRestrictions PrimaryOnly MaxVisionRange 1200 ItemAttributes { ItemName "Deflector" "attack projectiles" 1 } } T_TFBot_Sniper_Jarate { Class Sniper Name "Jarate Thrower" Skill Easy ClassIcon sniper_jarate Item "Jarate" Item "Desert Marauder" WeaponRestrictions SecondaryOnly ItemAttributes { ItemName "Jarate" "effect bar recharge rate increased" 0.1 } } } // MISSION: Sentry Buster Mission { Objective DestroySentries Where spawnbot CooldownTime 30 TFBot { Template T_TFBot_SentryBuster } } // MISSION: Sniper 01 Mission { Objective Sniper Where spawnbot_topflank BeginAtWave 1 RunForThisManyWaves 1 CooldownTime 60 InitialCooldown 30 DesiredCount 2 TFBot { Template T_TFBot_Sniper_Sydney_Sleeper Tag doesnottaketopfalldamage } } // MISSION: Sniper 02 Mission { Objective Sniper Where spawnbot_topflank BeginAtWave 2 RunForThisManyWaves 1 CooldownTime 60 InitialCooldown 20 DesiredCount 2 TFBot { Template T_TFBot_Sniper_Razorback Tag doesnottaketopfalldamage } } // MISSION: Sniper 03 Mission { Objective Sniper Where spawnbot_topflank BeginAtWave 3 RunForThisManyWaves 1 CooldownTime 60 InitialCooldown 20 DesiredCount 2 TFBot { Template T_TFBot_Sniper_Razorback Tag doesnottaketopfalldamage } } // MISSION: Sniper 05 Mission { Objective Sniper Where spawnbot_topflank BeginAtWave 5 RunForThisManyWaves 1 CooldownTime 60 InitialCooldown 20 DesiredCount 2 TFBot { Template T_TFBot_Sniper_Sydney_Sleeper Tag doesnottaketopfalldamage } } // MISSION: Spy 01 Mission { Objective Spy Where spawnbot BeginAtWave 1 RunForThisManyWaves 1 CooldownTime 45 InitialCooldown 45 DesiredCount 3 TFBot { Template T_TFBot_Spy } } // MISSION: Spy 02 Mission { Objective Spy Where spawnbot BeginAtWave 2 RunForThisManyWaves 1 CooldownTime 90 InitialCooldown 30 DesiredCount 2 TFBot { Template T_TFBot_Spy } } // MISSION: Spy 04 Mission { Objective Spy Where spawnbot BeginAtWave 4 RunForThisManyWaves 1 CooldownTime 60 InitialCooldown 5 DesiredCount 3 TFBot { Template T_TFBot_Spy } } // MISSION: Spy 05 Mission { Objective Spy Where spawnbot BeginAtWave 5 RunForThisManyWaves 1 CooldownTime 60 InitialCooldown 30 DesiredCount 2 TFBot { Template T_TFBot_Spy } } Mission // Sniper - wave 7 { Objective Engineer InitialCooldown 30 Where spawnbot_topflank BeginAtWave 4 RunForThisManyWaves 1 CooldownTime 30 DesiredCount 1 TFBot { Template T_TFBot_Engineer_Sentry_Teleporter TeleportWhere spawnbot TeleportWhere spawnbot_right TeleportWhere spawnbot_right_back TeleportWhere spawnbot_right_front TeleportWhere spawnbot_left TeleportWhere spawnbot_topflank } } // WAVE 01 900 Wave { Checkpoint Yes InitWaveOutput { Target gamerules Action RunScriptCode Param " EntFire(`bombpath_choose_random_relay`, `Trigger`) if(!(`mutators` in getroottable())) { IncludeScript(`mvmmutatorsvscript/rollMutators.nut`, getroottable()) mutators.rollMutators() } " } StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaveSpawn { TotalCurrency 200 Name "stage1" Where spawnbot_topflank Where spawnbot_right_back Where spawnbot_right_front RandomSpawn 1 TotalCount 12 SpawnCount 2 MaxActive 10 WaitBetweenSpawns 20 WaitBeforeStarting 5 TFBot { Template T_TFBot_Pyro Skill Hard Tag doesnottaketopfalldamage } } WaveSpawn { TotalCurrency 700 Name "stage1" Where spawnbot RandomSpawn 1 TotalCount 35 SpawnCount 5 MaxActive 15 WaitBetweenSpawns 18 WaitBeforeStarting 0 Squad { TFBot { Template T_TFBot_Giant_Demo_RapidFire Tag noflank } TFBot { Template T_TFBot_Heavyweapons_Fist } TFBot { Template T_TFBot_Heavyweapons_Fist } TFBot { Template T_TFBot_Heavyweapons_Fist } TFBot { Template T_TFBot_Heavyweapons_Fist } } } } // WAVE 02 900 Wave { Checkpoint Yes InitWaveOutput { Target bombpath_choose_random_relay Action Trigger } StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaveSpawn // Crit Scout Invasion { TotalCurrency 200 Name "stage1" Where spawnbot RandomSpawn 1 TotalCount 48 SpawnCount 12 MaxActive 16 WaitBetweenSpawns 10 WaitBeforeStarting 0 RandomChoice { TFBot { Template T_TFBot_Scout_Melee Skill Expert Attributes AlwaysCrit Tag mainspawn_prefer_left_leaning } TFBot { Template T_TFBot_Scout_Melee Skill Expert Attributes AlwaysCrit Tag mainspawn_prefer_middle_leaning } TFBot { Template T_TFBot_Scout_Melee Skill Expert Attributes AlwaysCrit Tag mainspawn_prefer_right_leaning } } } WaveSpawn // Crit Scout Invasion Center { TotalCurrency 200 Name "stage1" Where spawnbot_topflank RandomSpawn 1 TotalCount 24 SpawnCount 6 MaxActive 8 WaitBetweenSpawns 10 WaitBeforeStarting 0 TFBot { Template T_TFBot_Scout_Melee Skill Expert Attributes AlwaysCrit Tag doesnottaketopfalldamage } } WaveSpawn // Crit Scout Invasion Escalation { TotalCurrency 200 Name "stage2" WaitForAllSpawned "stage1" Where spawnbot_topflank Where spawnbot_left RandomSpawn 1 TotalCount 32 SpawnCount 16 MaxActive 16 WaitBetweenSpawns 10 WaitBeforeStarting 0 Squad { TFBot { Template T_TFBot_Scout_Melee Skill Expert Attributes AlwaysCrit Tag doesnottaketopfalldamage } TFBot { Template T_TFBot_Medic_QuickFix Tag doesnottaketopfalldamage } } } WaveSpawn // Crit Scout Invasion Center Escalation { TotalCurrency 200 Name "stage2" WaitForAllSpawned "stage1" Where spawnbot_topflank Where spawnbot_left Where spawnbot_right_front Where spawnbot_right_back RandomSpawn 1 TotalCount 24 SpawnCount 6 MaxActive 8 WaitBetweenSpawns 10 WaitBeforeStarting 0 Squad { TFBot { Template T_TFBot_Scout_Melee Skill Expert Attributes AlwaysCrit Tag doesnottaketopfalldamage } TFBot { Template T_TFBot_Medic_QuickFix Tag doesnottaketopfalldamage } } } WaveSpawn { TotalCurrency 50 Name "stage2" WaitForAllSpawned "stage1" Where spawnbot_right_back RandomSpawn 1 TotalCount 4 SpawnCount 1 MaxActive 2 WaitBetweenSpawns 10 WaitBeforeStarting 10 TFBot { Template T_TFBot_Giant_Soldier_Crit } } WaveSpawn { TotalCurrency 50 Name "stage2" WaitForAllSpawned "stage1" Where spawnbot_left RandomSpawn 1 TotalCount 4 SpawnCount 1 MaxActive 2 WaitBetweenSpawns 10 WaitBeforeStarting 10 TFBot { Template T_TFBot_Giant_Soldier_Crit } } } // WAVE 03 900 Wave { Checkpoint Yes InitWaveOutput { Target bombpath_choose_random_relay Action Trigger } StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaveSpawn { TotalCurrency 50 Name "stage1" Where spawnbot RandomSpawn 1 TotalCount 3 SpawnCount 1 MaxActive 2 WaitBetweenSpawns 10 WaitBeforeStarting 0 TFBot { Template T_TFBot_Giant_Scout_Fast } } WaveSpawn { TotalCurrency 50 Name "stage1" Where spawnbot_left RandomSpawn 1 TotalCount 3 SpawnCount 1 MaxActive 2 WaitBetweenSpawns 10 WaitBeforeStarting 0.1 TFBot { Template T_TFBot_Giant_Scout_Fast } } WaveSpawn { TotalCurrency 200 TotalCount 1 WaitForAllSpawned "stage1" Tank { Health 12000 Speed 75 Name "tankboss" StartingPathTrackNode "boss_path_left_1" OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } OnKilledOutput { Target boss_dead_left_relay Action Trigger } } } WaveSpawn { TotalCurrency 200 TotalCount 1 WaitForAllSpawned "stage1" WaitBeforeStarting 7 Tank { Health 12000 Speed 75 Name "tankboss" StartingPathTrackNode "boss_path_middle_1" OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } OnKilledOutput { Target boss_dead_middle_relay Action Trigger } } } WaveSpawn { TotalCurrency 100 Name "stage2" WaitForAllSpawned "stage1" Where spawnbot TotalCount 20 SpawnCount 4 MaxActive 16 WaitBetweenSpawns 10 WaitBeforeStarting 15 RandomChoice { TFBot { Class Soldier Skill Hard WeaponRestrictions PrimaryOnly Tag mainspawn_prefer_left_leaning } TFBot { Class Soldier Skill Hard WeaponRestrictions PrimaryOnly Tag mainspawn_prefer_middle_leaning } TFBot { Class Soldier Skill Hard WeaponRestrictions PrimaryOnly Tag mainspawn_prefer_right_leaning } } } WaveSpawn // Pyro { TotalCurrency 100 Name "stage2" WaitForAllSpawned "stage1" Where spawnbot TotalCount 20 SpawnCount 4 MaxActive 4 WaitBetweenSpawns 15 WaitBeforeStarting 20 RandomChoice { TFBot { Class Pyro Skill Hard WeaponRestrictions PrimaryOnly Tag mainspawn_prefer_left_leaning } TFBot { Class Pyro Skill Hard WeaponRestrictions PrimaryOnly Tag mainspawn_prefer_middle_leaning } TFBot { Class Pyro Skill Hard WeaponRestrictions PrimaryOnly Tag mainspawn_prefer_right_leaning } } } WaveSpawn { TotalCurrency 50 Name "stage2" WaitForAllSpawned "stage1" Where spawnbot_right_back Where spawnbot_right_front RandomSpawn 1 TotalCount 3 SpawnCount 1 MaxActive 2 WaitBetweenSpawns 10 WaitBeforeStarting 20 TFBot { Template T_TFBot_Giant_Scout_Fast } } WaveSpawn { TotalCurrency 50 Name "stage2" WaitForAllSpawned "stage1" Where spawnbot_left RandomSpawn 1 TotalCount 3 SpawnCount 1 MaxActive 2 WaitBetweenSpawns 10 WaitBeforeStarting 20 TFBot { Template T_TFBot_Giant_Scout_Fast } } WaveSpawn { //TotalCurrency 100 Name "stage3" WaitForAllSpawned "stage2" Support 1 // fix the timing issue so these don't just end mid way Where spawnbot TotalCount 36 SpawnCount 6 MaxActive 10 WaitBetweenSpawns 15 WaitBeforeStarting 20 RandomChoice { TFBot { Template T_TFBot_Scout_Melee Tag mainspawn_prefer_left_leaning } TFBot { Template T_TFBot_Scout_Melee Tag mainspawn_prefer_middle_leaning } TFBot { Template T_TFBot_Scout_Melee Tag mainspawn_prefer_right_leaning } } } WaveSpawn { TotalCurrency 12 Name "stage3a" WaitForAllSpawned "stage2" Where spawnbot_right_back RandomSpawn 1 TotalCount 4 SpawnCount 4 MaxActive 4 WaitBetweenSpawns 20 WaitBeforeStarting 0 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons Tag nav_prefer_flank_middle } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } } } WaveSpawn { TotalCurrency 12 Name "stage3a" WaitForAllSpawned "stage2" Where spawnbot_left RandomSpawn 1 TotalCount 4 SpawnCount 4 MaxActive 4 WaitBetweenSpawns 20 WaitBeforeStarting 0 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons Tag nav_prefer_flank_left } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } } } WaveSpawn { TotalCurrency 12 Name "stage3b" WaitForAllDead "stage3a" Where spawnbot_right_back RandomSpawn 1 TotalCount 4 SpawnCount 4 MaxActive 4 WaitBetweenSpawns 20 WaitBeforeStarting 0 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons Tag nav_prefer_flank_middle } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } } } WaveSpawn { TotalCurrency 12 Name "stage3b" WaitForAllDead "stage3a" Where spawnbot_left RandomSpawn 1 TotalCount 4 SpawnCount 4 MaxActive 4 WaitBetweenSpawns 20 WaitBeforeStarting 0 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons Tag nav_prefer_flank_left } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } } } WaveSpawn { TotalCurrency 13 Name "stage3c" WaitForAllDead "stage3b" Where spawnbot_right_back RandomSpawn 1 TotalCount 4 SpawnCount 4 MaxActive 4 WaitBetweenSpawns 20 WaitBeforeStarting 0 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons Tag nav_prefer_flank_middle } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } } } WaveSpawn { TotalCurrency 13 Name "stage3c" WaitForAllDead "stage3b" Where spawnbot_left RandomSpawn 1 TotalCount 4 SpawnCount 4 MaxActive 4 WaitBetweenSpawns 20 WaitBeforeStarting 0 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons Tag nav_prefer_flank_left } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } } } WaveSpawn { TotalCurrency 13 Name "stage3d" WaitForAllDead "stage3c" Where spawnbot_right_back RandomSpawn 1 TotalCount 4 SpawnCount 4 MaxActive 4 WaitBetweenSpawns 20 WaitBeforeStarting 0 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons Tag nav_prefer_flank_middle } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } } } WaveSpawn { TotalCurrency 13 Name "stage3d" WaitForAllDead "stage3c" Where spawnbot_left RandomSpawn 1 TotalCount 4 SpawnCount 4 MaxActive 4 WaitBetweenSpawns 20 WaitBeforeStarting 0 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons Tag nav_prefer_flank_left } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } } } } // WAVE 04 900 Wave { Checkpoint Yes InitWaveOutput { Target bombpath_choose_random_relay Action Trigger } StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaveSpawn { TotalCurrency 200 Name "stage1" Where spawnbot TotalCount 8 SpawnCount 8 MaxActive 8 WaitBetweenSpawns 0 WaitBeforeStarting 0 TFBot { Template T_TFBot_Heavyweapons_Deflector Tag mainspawn_prefer_left_leaning } } WaveSpawn { TotalCurrency 50 Name "stage1" Where spawnbot TotalCount 8 SpawnCount 8 MaxActive 8 WaitBetweenSpawns 0 WaitBeforeStarting 0 TFBot { Template T_TFBot_Demoman Skill Hard Tag mainspawn_prefer_right_leaning } } WaveSpawn { TotalCurrency 50 Name "stage1" Where spawnbot_right_front RandomSpawn 1 TotalCount 2 SpawnCount 1 MaxActive 1 WaitBetweenSpawns 20 WaitBeforeStarting 5 TFBot { Template T_TFBot_Giant_Pyro Attributes AlwaysFireWeapon Tag noflank } } WaveSpawn { TotalCurrency 50 Name "stage1" Where spawnbot_topflank RandomSpawn 1 TotalCount 2 SpawnCount 1 MaxActive 1 WaitBetweenSpawns 20 WaitBeforeStarting 5 TFBot { Template T_TFBot_Giant_Pyro Attributes AlwaysFireWeapon Tag noflank Tag doesnottaketopfalldamage } } WaveSpawn { TotalCurrency 50 Name "stage2" WaitForAllSpawned "stage1" Where spawnbot TotalCount 24 SpawnCount 8 MaxActive 8 WaitBetweenSpawns 10 WaitBeforeStarting 15 TFBot { Template T_TFBot_Demoman Tag mainspawn_prefer_left_leaning } } WaveSpawn { TotalCurrency 200 Name "stage2" WaitForAllSpawned "stage1" Where spawnbot TotalCount 30 SpawnCount 10 MaxActive 12 WaitBetweenSpawns 10 WaitBeforeStarting 15 TFBot { Template T_TFBot_Heavyweapons_Deflector Tag mainspawn_prefer_right_leaning } } WaveSpawn { TotalCurrency 25 Name "stage3" WaitForAllSpawned "stage2" Where spawnbot TotalCount 24 SpawnCount 8 MaxActive 22 WaitBetweenSpawns 20 WaitBeforeStarting 30 RandomChoice { TFBot { Template T_TFBot_Demoman_Knight Tag mainspawn_prefer_left_leaning } TFBot { Template T_TFBot_Demoman_Knight Tag mainspawn_prefer_middle_leaning } TFBot { Template T_TFBot_Demoman_Knight Tag mainspawn_prefer_right_leaning } } } WaveSpawn { TotalCurrency 100 Name "stage3" WaitForAllSpawned "stage2" Where spawnbot TotalCount 6 SpawnCount 1 MaxActive 3 WaitBetweenSpawns 10 WaitBeforeStarting 0 TFBot { Template T_TFBot_Giant_Demo_RapidFire Tag noflank } } WaveSpawn { TotalCurrency 25 Name "stage3" WaitForAllSpawned "stage2" Where spawnbot_right_front TotalCount 1 SpawnCount 1 MaxActive 1 //WaitBetweenSpawns 0 WaitBeforeStarting 0 TFBot { Template T_TFBot_Giant_Pyro Attributes AlwaysFireWeapon Tag noflank } } WaveSpawn { TotalCurrency 25 Name "stage3" WaitForAllSpawned "stage2" Where spawnbot_topflank TotalCount 1 SpawnCount 1 MaxActive 1 //WaitBetweenSpawns 0 WaitBeforeStarting 0 TFBot { Template T_TFBot_Giant_Pyro Attributes AlwaysFireWeapon Tag noflank Tag doesnottaketopfalldamage } } // Final Push WaveSpawn { TotalCurrency 100 Name "stage4" WaitForAllSpawned "stage3" Where spawnbot TotalCount 20 SpawnCount 4 MaxActive 8 WaitBetweenSpawns 5 WaitBeforeStarting 0 Squad { TFBot { Template T_TFBot_Giant_Demo_RapidFire Tag noflank } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } } } WaveSpawn { TotalCurrency 25 Name "stage4" WaitForAllSpawned "stage3" Where spawnbot_topflank TotalCount 12 SpawnCount 3 MaxActive 6 WaitBetweenSpawns 15 WaitBeforeStarting 10 TFBot { Template T_TFBot_Pyro Skill Hard Tag doesnottaketopfalldamage } } WaveSpawn { TotalCurrency 25 Name "stage4" WaitForAllSpawned "stage3" Where spawnbot TotalCount 30 SpawnCount 10 MaxActive 18 WaitBetweenSpawns 10 WaitBeforeStarting 0 RandomChoice { TFBot { Class Soldier Skill Hard WeaponRestrictions PrimaryOnly Tag mainspawn_prefer_left_leaning } TFBot { Class Soldier Skill Hard WeaponRestrictions PrimaryOnly Tag mainspawn_prefer_middle_leaning } TFBot { Class Soldier Skill Hard WeaponRestrictions PrimaryOnly Tag mainspawn_prefer_right_leaning } } } } // WAVE 05 900 Wave { Checkpoint Yes InitWaveOutput { Target bombpath_choose_random_relay Action Trigger } StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaveSpawn { TotalCurrency 200 Name "stage1" Where spawnbot_left TotalCount 8 SpawnCount 2 MaxActive 4 WaitBetweenSpawns 30 WaitBeforeStarting 0 Squad { TFBot { Template T_TFBot_Giant_Soldier_Spammer Tag noflank } TFBot { Template T_TFBot_Medic_QuickUber Tag noflank } } } WaveSpawn { TotalCurrency 200 Name "stage1" Where spawnbot_right_back TotalCount 8 SpawnCount 2 MaxActive 4 WaitBetweenSpawns 30 WaitBeforeStarting 0 Squad { TFBot { Template T_TFBot_Giant_Soldier_Spammer Tag noflank } TFBot { Template T_TFBot_Medic_QuickUber Tag noflank } } } WaveSpawn { TotalCurrency 100 Name "stage1" Where spawnbot_topflank RandomSpawn 1 TotalCount 30 SpawnCount 5 MaxActive 10 WaitBetweenSpawns 20 WaitBeforeStarting 3 Squad { TFBot { Template T_TFBot_Pyro Attributes AlwaysFireWeapon Tag doesnottaketopfalldamage } TFBot { Template T_TFBot_Pyro Tag doesnottaketopfalldamage } TFBot { Template T_TFBot_Pyro Tag doesnottaketopfalldamage } TFBot { Template T_TFBot_Pyro Tag doesnottaketopfalldamage } TFBot { Template T_TFBot_Pyro Tag doesnottaketopfalldamage } } } WaveSpawn { TotalCurrency 50 TotalCount 1 WaitForAllSpawned "stage1" Tank { Health 16000 Speed 75 Name "tankboss" StartingPathTrackNode "boss_path_left_1" OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } OnKilledOutput { Target boss_dead_left_relay Action Trigger } } } WaveSpawn { TotalCurrency 100 TotalCount 1 WaitForAllSpawned "stage1" WaitBeforeStarting 7 Tank { Health 15000 Speed 75 Name "tankboss" StartingPathTrackNode "boss_path_middle_1" OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } OnKilledOutput { Target boss_dead_middle_relay Action Trigger } } } WaveSpawn { TotalCurrency 100 Name "stage2" WaitForAllSpawned "stage1" Where spawnbot TotalCount 25 SpawnCount 5 MaxActive 16 WaitBetweenSpawns 10 WaitBeforeStarting 0 TFBot { Template T_TFBot_Heavyweapons_Deflector } } // Final Push WaveSpawn { TotalCurrency 50 Name "stage3" WaitForAllSpawned "stage2" Where spawnbot_topflank RandomSpawn 1 TotalCount 30 SpawnCount 4 MaxActive 10 WaitBetweenSpawns 20 WaitBeforeStarting 5 TFBot { Template T_TFBot_Pyro Skill Expert Tag doesnottaketopfalldamage } } WaveSpawn { //TotalCurrency 0 Name "stage3" WaitForAllSpawned "stage2" Where spawnbot RandomSpawn 1 TotalCount 8 SpawnCount 1 MaxActive 6 WaitBetweenSpawns 15 WaitBeforeStarting 0 RandomChoice { TFBot { Template T_TFBot_Giant_Demo_RapidFire Tag mainspawn_prefer_left_leaning Tag noflank } TFBot { Template T_TFBot_Giant_Demo_RapidFire Tag mainspawn_prefer_middle_leaning Tag noflank } TFBot { Template T_TFBot_Giant_Demo_RapidFire Tag mainspawn_prefer_right_leaning Tag noflank } } } WaveSpawn { //TotalCurrency 0 Name "stage3" WaitForAllSpawned "stage2" Where spawnbot_left Where spawnbot Where spawnbot_right_front RandomSpawn 1 TotalCount 20 SpawnCount 4 MaxActive 12 WaitBetweenSpawns 15 WaitBeforeStarting 0 TFBot { Template T_TFBot_Heavyweapons_Fist Tag noflank } } WaveSpawn { TotalCurrency 25 Name "stage4" WaitForAllSpawned "stage3" Where spawnbot TotalCount 45 SpawnCount 15 MaxActive 18 //WaitBetweenSpawns 0 WaitBeforeStarting 0 RandomChoice { TFBot { Template T_TFBot_Demoman_Knight Tag mainspawn_prefer_left_leaning } TFBot { Template T_TFBot_Demoman_Knight Tag mainspawn_prefer_middle_leaning } TFBot { Template T_TFBot_Demoman_Knight Tag mainspawn_prefer_right_leaning } } } WaveSpawn { TotalCurrency 50 TotalCount 1 WaitForAllSpawned "stage3" Tank { Health 30000 Speed 75 Name "tankboss_left" Skin 1 StartingPathTrackNode "boss_path_left_1" OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } OnKilledOutput { Target boss_dead_left_relay Action Trigger } } } WaveSpawn { TotalCurrency 50 TotalCount 1 WaitForAllSpawned "stage3" WaitBeforeStarting 7 Tank { Health 30000 Speed 75 Name "tankboss_right" Skin 1 StartingPathTrackNode "boss_path_right_1" OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } OnKilledOutput { Target boss_dead_right_relay Action Trigger } } } } }