#base robot_giant.pop #base robot_standard.pop #base robot_intercept_b6.pop #base robot_intercept_gatebot_b6.pop // // Mission name: // Mann Seth (and i am aware that 'Set' would have bee better) - old name. prob gets dropped // Pharaoh Problem // // start: 600 // wave 1: 700 // wave 2: 800 // wave 3: 700 // wave 4: 750 // wave 5: 850 // wave 6: 700 // wave 7: 650 WaveSchedule { StartingCurrency 400 CanBotsAttackWhileInSpawnRoom No RespawnWaveTime 8 Advanced 1 // MISSION: Sentry Buster Mission { Objective DestroySentries Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 Where spawnbot_main_B_0 Where spawnbot_main_B_1 Where spawnbot_main_B_2 CooldownTime 30 TFBot { Template T_TFBot_SentryBuster Tag bot_sentrybuster } } Mission { Objective Sniper InitialCooldown 40 Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 Where spawnbot_alt_B_0 Where spawnbot_alt_B_1 Where spawnbot_alt_B_2 BeginAtWave 3 RunForThisManyWaves 1 CooldownTime 85 DesiredCount 1 TFBot { Class Sniper Skill Expert Name Sniper MaxVisionRange 4000 } } Mission { Objective Sniper InitialCooldown 40 Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 Where spawnbot_alt_B_0 Where spawnbot_alt_B_1 Where spawnbot_alt_B_2 BeginAtWave 1 RunForThisManyWaves 1 CooldownTime 60 DesiredCount 3 TFBot { Class Sniper Skill Expert Name Sniper MaxVisionRange 4000 } } Mission { Objective Sniper InitialCooldown 40 Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 Where spawnbot_alt_B_0 Where spawnbot_alt_B_1 Where spawnbot_alt_B_2 BeginAtWave 6 RunForThisManyWaves 1 CooldownTime 30 DesiredCount 2 TFBot { Class Sniper Skill Expert Name Sniper MaxVisionRange 4000 } } Mission { Objective Engineer InitialCooldown 60 Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 Where spawnbot_alt_B_0 Where spawnbot_alt_B_1 Where spawnbot_alt_B_2 BeginAtWave 1 RunForThisManyWaves 1 CooldownTime 60 DesiredCount 1 TFBot { Template T_TFBot_Engineer_Sentry_Battle } } Mission { Objective Engineer InitialCooldown 60 Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 Where spawnbot_alt_B_0 Where spawnbot_alt_B_1 Where spawnbot_alt_B_2 BeginAtWave 3 RunForThisManyWaves 3 CooldownTime 60 DesiredCount 1 TFBot { Template T_TFBot_Engineer_Sentry_Battle_TeleIn } } Mission { Objective Engineer InitialCooldown 30 Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 Where spawnbot_alt_B_0 Where spawnbot_alt_B_1 Where spawnbot_alt_B_2 BeginAtWave 5 RunForThisManyWaves 1 CooldownTime 60 DesiredCount 1 TFBot { Template T_TFBot_Engineer_Sentry_Battle_TeleIn } } Mission { Objective Spy InitialCooldown 35 Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 Where spawnbot_main_B_0 Where spawnbot_main_B_1 Where spawnbot_main_B_2 BeginAtWave 2 RunForThisManyWaves 1 CooldownTime 65 DesiredCount 1 TFBot { Class Spy Skill Expert Name Spy } } Mission { Objective Spy InitialCooldown 30 Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 Where spawnbot_main_B_0 Where spawnbot_main_B_1 Where spawnbot_main_B_2 BeginAtWave 5 RunForThisManyWaves 1 CooldownTime 60 DesiredCount 3 TFBot { Class Spy Skill Expert Name Spy } } Mission { Objective Spy InitialCooldown 40 Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 Where spawnbot_main_B_0 Where spawnbot_main_B_1 Where spawnbot_main_B_2 BeginAtWave 6 RunForThisManyWaves 1 CooldownTime 30 DesiredCount 2 TFBot { Class Spy Skill Expert Name Spy } } Wave //wave total value 700 { WaitWhenDone 60 Sound "Announcer.IncomingMob" Checkpoint Yes StartWaveOutput { Target wave_start_relay Action Trigger } InitWaveOutput { Target wave_prepare_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } //support cappers WaveSpawn { Where spawnbot_alt_B_0 Where spawnbot_alt_B_1 Where spawnbot_alt_B_2 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 5 WaitBeforeStarting 0 TotalCurrency 0 Support 1 Squad { TFBot { Class scout Skill easy } } } WaveSpawn { Name "wave1a" Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 TotalCount 60 MaxActive 6 SpawnCount 3 WaitBetweenSpawns 5 WaitBeforeStarting 0 TotalCurrency 75 Squad { TFBot { Template T_TFGateBot_Scout_Normal_A } } } WaveSpawn { Name "wave1a" Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 TotalCount 30 MaxActive 6 SpawnCount 3 WaitBetweenSpawns 8 WaitBeforeStarting 0 TotalCurrency 75 Squad { TFBot { Template T_TFGateBot_Scout_Normal_A } } } WaveSpawn { Name "wave1b" Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 TotalCount 20 MaxActive 10 SpawnCount 6 WaitBetweenSpawns 30 WaitBeforeStarting 0 TotalCurrency 100 Squad { TFBot { Template T_TFGateBot_Pyro_AlwaysFireWeapon_B } } } WaveSpawn { Name "wave1c" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 2 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 50 WaitBeforeStarting 20 TotalCurrency 50 Squad { TFBot { Template T_TFBot_Giant_Pyro_Phlog } } } //300 WaveSpawn { Name "wave1d" WaitForAllDead "wave1b" Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 TotalCount 24 MaxActive 6 SpawnCount 6 WaitBetweenSpawns 5 WaitBeforeStarting 15 TotalCurrency 100 Squad { TFBot { Template T_TFGateBot_Demoman_Normal_A } } } WaveSpawn { Name "wave1d" WaitForAllDead "wave1b" Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 TotalCount 20 MaxActive 12 SpawnCount 4 WaitBetweenSpawns 5 WaitBeforeStarting 15 TotalCurrency 100 Squad { TFBot { Template T_TFGateBot_Soldier_Easy_B } } } WaveSpawn { Name "wave1e" WaitForAllDead "wave1c" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 4 MaxActive 2 SpawnCount 2 WaitBetweenSpawns 25 WaitBeforeStarting 25 TotalCurrency 50 Squad { TFBot { Template T_TFGateBot_Giant_Soldier_A } TFBot { Template T_TFBot_Medic } } } WaveSpawn { Name "wave1f" WaitForAllSpawned "wave1d" Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 Where spawnbot_alt_B_0 Where spawnbot_alt_B_1 Where spawnbot_alt_B_2 TotalCount 24 MaxActive 12 SpawnCount 4 WaitBetweenSpawns 5 WaitBeforeStarting 5 TotalCurrency 50 TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ } } //600 } Wave { WaitWhenDone 60 Sound "Announcer.IncomingMob" Checkpoint Yes StartWaveOutput { Target wave_start_relay Action Trigger } InitWaveOutput { Target wave_prepare_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } //support cappers WaveSpawn { Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 TotalCount 20 MaxActive 4 SpawnCount 2 WaitBetweenSpawns 9 WaitBeforeStarting 0 TotalCurrency 50 Support Limited TFBot { Template T_TFGateBot_Scout_Melee_A } } WaveSpawn { Where spawnbot_alt_B_0 Where spawnbot_alt_B_1 Where spawnbot_alt_B_2 TotalCount 20 MaxActive 4 SpawnCount 2 WaitBetweenSpawns 11 WaitBeforeStarting 0 TotalCurrency 50 Support Limited TFBot { Template T_TFGateBot_Scout_Melee_B } } //Primary cappers WaveSpawn { Name "wave3a" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 6 MaxActive 6 SpawnCount 6 WaitBetweenSpawns 5 WaitBeforeStarting 0 TotalCurrency 100 Squad { TFBot { Template T_TFGateBot_Giant_Soldier_A } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } } } WaveSpawn { Name "wave3a" Where spawnbot_main_B_0 Where spawnbot_main_B_1 Where spawnbot_main_B_2 TotalCount 6 MaxActive 6 SpawnCount 6 WaitBetweenSpawns 5 WaitBeforeStarting 30 TotalCurrency 100 Squad { TFBot { Template T_TFGateBot_Giant_Soldier_B } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } } } //300 WaveSpawn { Name "wave3b" WaitForAllDead "wave3a" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 16 MaxActive 10 SpawnCount 2 WaitBetweenSpawns 10 WaitBeforeStarting 10 TotalCurrency 100 Squad { TFBot { Template T_TFGateBot_Heavy_Easy_A } TFBot { Template T_TFBot_Medic_Kritzkrieg } } } WaveSpawn { Name "wave3f" WaitForAllDead "wave3a" Where spawnbot_main_B_0 Where spawnbot_main_B_1 Where spawnbot_main_B_2 TotalCount 6 MaxActive 6 SpawnCount 6 WaitBetweenSpawns 5 WaitBeforeStarting 20 TotalCurrency 100 Squad { TFBot { Template T_TFGateBot_Giant_Heavyweapons_Heater_A } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } } } //500 //Primary cappers WaveSpawn { Name "wave3c" WaitForAllDead "wave3a" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 30 MaxActive 10 SpawnCount 5 WaitBetweenSpawns 20 WaitBeforeStarting 20 TotalCurrency 100 TFBot { Template T_TFGateBot_Demoman_Easy_A } } WaveSpawn { Name "wave3h" WaitForAllDead "wave3f" Where spawnbot_main_B_0 Where spawnbot_main_B_1 Where spawnbot_main_B_2 TotalCount 4 MaxActive 4 SpawnCount 4 WaitBetweenSpawns 35 WaitBeforeStarting 10 TotalCurrency 25 Squad { TFBot { Template T_TFBot_Giant_Soldier_Spammer_Battalion } TFBot { Template T_TFBot_Vaccinator_Bullet } TFBot { Template T_TFBot_Vaccinator_Blast } TFBot { Template T_TFBot_Vaccinator_Fire } } } WaveSpawn { Name "wave3i" WaitForAllDead "wave3c" Where spawnbot_main_B_0 Where spawnbot_main_B_1 Where spawnbot_main_B_2 TotalCount 4 MaxActive 2 SpawnCount 2 WaitBetweenSpawns 15 WaitBeforeStarting 15 TotalCurrency 25 Squad { TFBot { Class Pyro Skill Normal } TFBot { Template T_TFBot_Vaccinator_Fire } } } WaveSpawn { Name "wave3i" WaitForAllDead "wave3c" Where spawnbot_main_B_0 Where spawnbot_main_B_1 Where spawnbot_main_B_2 TotalCount 4 MaxActive 2 SpawnCount 2 WaitBetweenSpawns 15 WaitBeforeStarting 15 TotalCurrency 25 Squad { TFBot { Class Heavyweapons Skill Normal } TFBot { Template T_TFBot_Vaccinator_Bullet } } } WaveSpawn { Name "wave3i" WaitForAllDead "wave3c" Where spawnbot_main_B_0 Where spawnbot_main_B_1 Where spawnbot_main_B_2 TotalCount 4 MaxActive 2 SpawnCount 2 WaitBetweenSpawns 15 WaitBeforeStarting 15 TotalCurrency 25 Squad { TFBot { Class Demoman Skill Normal } TFBot { Template T_TFBot_Vaccinator_Blast } } } //700 } Wave //wave total value 1050 { WaitWhenDone 60 Sound "Announcer.IncomingMob" Checkpoint Yes StartWaveOutput { Target wave_start_relay Action Trigger } InitWaveOutput { Target wave_prepare_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 TotalCount 20 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 5 WaitBeforeStarting 0 TotalCurrency 50 Support 1 Squad { TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ } } } //support cappers WaveSpawn { Name "wave2a" Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 TotalCount 4 MaxActive 4 SpawnCount 4 WaitBetweenSpawns 30 WaitBeforeStarting 0 TotalCurrency 100 Squad { TFBot { Template T_TFGateBot_Giant_Heavyweapons_Shotgun_A } TFBot { Template T_TFGateBot_Soldier_Extended_Concheror_Normal_A } TFBot { Template T_TFGateBot_Soldier_Extended_Concheror_Normal_A } TFBot { Template T_TFGateBot_Soldier_Extended_Concheror_Normal_A } } } WaveSpawn { Name "wave2a" Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 TotalCount 4 MaxActive 4 SpawnCount 4 WaitBetweenSpawns 5 WaitBeforeStarting 25 TotalCurrency 50 Squad { TFBot { Template T_TFGateBot_Giant_Heavyweapons_Shotgun_B } TFBot { Template T_TFGateBot_Soldier_Extended_Concheror_Normal_B } TFBot { Template T_TFGateBot_Soldier_Extended_Concheror_Normal_B } TFBot { Template T_TFGateBot_Soldier_Extended_Concheror_Normal_B } } } //200 WaveSpawn { Name "wave2sup1" Where spawnbot_main_B_0 Where spawnbot_main_B_1 Where spawnbot_main_B_2 TotalCount 12 MaxActive 6 SpawnCount 3 WaitBetweenSpawns 5 WaitBeforeStarting 20 TotalCurrency 50 Squad { TFBot { Template T_TFBot_Heavyweapons_Fist } TFBot { Template T_TFBot_Sniper_Huntsman } TFBot { Template T_TFBot_Sniper_Huntsman } } } //support normal WaveSpawn { Name "wave2b" WaitForAllDead "wave2a" Where spawnbot_alt_B_0 Where spawnbot_alt_B_1 Where spawnbot_alt_B_2 TotalCount 16 MaxActive 8 SpawnCount 8 WaitBetweenSpawns 60 WaitBeforeStarting 0 TotalCurrency 100 Squad { TFBot { Template T_TFGateBot_Giant_Heavyweapons_Deflector_B } TFBot { Template T_TFBot_Medic_Shield_Extended_QuickFix } TFBot { Template T_TFBot_Medic_Kritzkrieg } TFBot { Template T_TFGateBot_Soldier_Hard_B } TFBot { Template T_TFGateBot_Soldier_Hard_B } TFBot { Template T_TFGateBot_Soldier_Hard_B } TFBot { Template T_TFGateBot_Soldier_Hard_B } TFBot { Template T_TFGateBot_Soldier_Hard_B } } } //support normal WaveSpawn { Name "wave2b" WaitForAllDead "wave2a" Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 TotalCount 8 MaxActive 8 SpawnCount 8 WaitBetweenSpawns 0 WaitBeforeStarting 30 TotalCurrency 100 Squad { TFBot { Template T_TFGateBot_Giant_Heavyweapons_Deflector_A } TFBot { Template T_TFBot_Medic_Shield_Extended_QuickFix } TFBot { Template T_TFBot_Medic_Kritzkrieg } TFBot { Template T_TFGateBot_Soldier_Hard_A } TFBot { Template T_TFGateBot_Soldier_Hard_A } TFBot { Template T_TFGateBot_Soldier_Hard_A } TFBot { Template T_TFGateBot_Soldier_Hard_A } TFBot { Template T_TFGateBot_Soldier_Hard_A } } } //450 WaveSpawn { Name "wave2c" WaitForAllDead "wave2a" Where spawnbot_alt_B_0 Where spawnbot_alt_B_1 Where spawnbot_alt_B_2 TotalCount 15 MaxActive 5 SpawnCount 3 WaitBetweenSpawns 5 WaitBeforeStarting 0 TotalCurrency 50 TFBot { Template T_TFBot_Sniper_Huntsman } } WaveSpawn { Name "wave2c" WaitForAllDead "wave2b" Where spawnbot_alt_B_0 Where spawnbot_alt_B_1 Where spawnbot_alt_B_2 TotalCount 24 MaxActive 20 SpawnCount 2 WaitBetweenSpawns 4 WaitBeforeStarting 0 TotalCurrency 50 Support 1 TFBot { Template T_TFGateBot_Scout_Melee_B } } WaveSpawn { Name "wave2c" WaitForAllDead "wave2b" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 Where spawnbot_main_B_0 Where spawnbot_main_B_1 Where spawnbot_main_B_2 TotalCount 7 MaxActive 7 SpawnCount 7 WaitBetweenSpawns 20 WaitBeforeStarting 0 TotalCurrency 50 Squad { TFBot { Template T_TFGateBot_Giant_Soldier_RocketRain_A } TFBot { Template T_TFBot_Medic_Shield_Extended_QuickFix } TFBot { Template T_TFGateBot_Soldier_Extended_Concheror_Normal_A } TFBot { Template T_TFGateBot_Soldier_Extended_Concheror_Normal_A } TFBot { Template T_TFGateBot_Soldier_Extended_Concheror_Normal_A } TFBot { Template T_TFGateBot_Soldier_Extended_Concheror_Normal_A } TFBot { Template T_TFGateBot_Soldier_Extended_Concheror_Normal_A } } } //600 } //Notice: If these soldiers are still to hard they should be the regular spammer //spammer_reload is a weaker burst fire version (most noticed are slower rockets). Wave //wave total value 1000 { WaitWhenDone 60 Sound "Announcer.IncomingMob" Checkpoint Yes StartWaveOutput { Target wave_start_relay Action Trigger } InitWaveOutput { Target wave_prepare_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name "wave4_1a" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 20 MaxActive 9 SpawnCount 3 WaitBetweenSpawns 4 WaitBeforeStarting 0 TotalCurrency 50 TFBot { Template T_TFBot_ScorchShot } } //Capper push WaveSpawn { Name "wave4_1a" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 18 MaxActive 9 SpawnCount 9 WaitBetweenSpawns 40 WaitBeforeStarting 5 TotalCurrency 50 Squad { TFBot { Template T_TFGateBot_Giant_Soldier_Spammer_Reload_A } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } } } WaveSpawn { Name "wave4_1b" Where spawnbot_main_B_0 Where spawnbot_main_B_1 Where spawnbot_main_B_2 TotalCount 2 MaxActive 2 SpawnCount 2 WaitBetweenSpawns 50 WaitBeforeStarting 15 TotalCurrency 25 Squad { TFBot { Template T_TFGateBot_Giant_Demo_Burst_B } TFBot { Template T_TFBot_Medic_Shield_QuickFix } } } //300 WaveSpawn { Name "wave4_1b" WaitForAllSpawned "wave4_1a" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 32 MaxActive 14 SpawnCount 2 WaitBetweenSpawns 2 WaitBeforeStarting 0 TotalCurrency 50 Squad { TFBot { Template T_TFBot_Demoman_Knight } } } //175 WaveSpawn { Name "wave4_1c" WaitForAllSpawned "wave4_1b" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 6 MaxActive 2 SpawnCount 2 WaitBetweenSpawns 7 WaitBeforeStarting 0 TotalCurrency 25 Squad { TFBot { Template T_TFBot_Demoman_Samurai } } } WaveSpawn { Name "wave4_1c" WaitForAllSpawned "wave4_1b" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 16 MaxActive 8 SpawnCount 4 WaitBetweenSpawns 7 WaitBeforeStarting 0 TotalCurrency 50 Squad { TFBot { Template T_TFBot_Soldier_RocketShotgun } TFBot { Template T_TFBot_Medic_Shield_QuickFix } TFBot { Template T_TFBot_ScorchShot } TFBot { Template T_TFBot_ScorchShot } } } WaveSpawn { Name "wave4_1d" WaitForAllSpawned "wave4_1b" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 22 MaxActive 5 SpawnCount 2 WaitBetweenSpawns 4 WaitBeforeStarting 0 TotalCurrency 50 TFBot { Class Heavyweapons Skill Normal } } //300 WaveSpawn { Name "wave4_1d" WaitForAllSpawned "wave4_1c" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 22 MaxActive 5 SpawnCount 2 WaitBetweenSpawns 4 WaitBeforeStarting 0 TotalCurrency 25 TFBot { Template T_TFGateBot_Heavy_Normal_B } } WaveSpawn { Name "wave4_1d" WaitForAllSpawned "wave4_1c" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 2 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 27 WaitBeforeStarting 0 TotalCurrency 25 TFBot { Template T_TFGateBot_Giant_Demoman_A } } WaveSpawn { Name "wave4_1d" WaitForAllSpawned "wave4_1c" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 2 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 17 WaitBeforeStarting 9 TotalCurrency 50 TFBot { Template T_TFGateBot_Giant_Demoman_B } } WaveSpawn { Name "wave4_1e" WaitForAllSpawned "wave4_1d" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 2 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 20 WaitBeforeStarting 0 TotalCurrency 50 TFBot { Template T_TFBot_Soldier_BurstFire } } //450 WaveSpawn { Name "wave4_1e" WaitForAllDead "wave4_1d" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 24 MaxActive 15 SpawnCount 3 WaitBetweenSpawns 2 WaitBeforeStarting 0 TotalCurrency 50 TFBot { Template T_TFBot_ScorchShot } } } Wave //wave total value 1000 { WaitWhenDone 60 Sound "Announcer.IncomingMob" Checkpoint Yes StartWaveOutput { Target wave_start_relay Action Trigger } InitWaveOutput { Target wave_prepare_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name "wave4_2a" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 3 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 10 WaitBeforeStarting 3 TotalCurrency 25 TFBot { Template T_TFGateBot_Giant_Scout_Fast_A_FastCapture } } WaveSpawn { Name "wave4_2a" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 3 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 12 WaitBeforeStarting 0 TotalCurrency 25 TFBot { Template T_TFGateBot_Giant_Scout_Fast_B_FastCapture } } WaveSpawn { Name "wave4_2f" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 12 MaxActive 6 SpawnCount 6 WaitBetweenSpawns 20 WaitBeforeStarting 0 TotalCurrency 50 Squad { TFBot { Template T_TFGateBot_Heavy_Hard_A } TFBot { Template T_TFBot_Medic } } } //100 WaveSpawn { Name "wave4_2f" Where spawnbot_main_B_0 Where spawnbot_main_B_1 Where spawnbot_main_B_2 TotalCount 12 MaxActive 6 SpawnCount 6 WaitBetweenSpawns 30 WaitBeforeStarting 0 TotalCurrency 50 Squad { TFBot { Template T_TFGateBot_Heavy_Hard_B } TFBot { Template T_TFBot_Medic } } } WaveSpawn { WaitForAllSpawned "wave4_2f" Name "wave4_2b" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 16 MaxActive 4 SpawnCount 4 WaitBetweenSpawns 20 WaitBeforeStarting 0 TotalCurrency 100 TFBot { Template T_TFGateBot_Pyro_Flaregun_A } } WaveSpawn { WaitForAllDead "wave4_2f" Name "wave4_2e" Where spawnbot_main_B_0 Where spawnbot_main_B_1 Where spawnbot_main_B_2 TotalCount 8 MaxActive 4 SpawnCount 4 WaitBetweenSpawns 30 WaitBeforeStarting 0 TotalCurrency 50 TFBot { Template T_TFGateBot_Pyro_Flaregun_B } } //300 WaveSpawn { WaitForAllDead "wave4_2a" Name "wave4_2e" Where spawnbot_main_B_0 Where spawnbot_main_B_1 Where spawnbot_main_B_2 TotalCount 30 MaxActive 10 SpawnCount 5 WaitBetweenSpawns 10 WaitBeforeStarting 30 TotalCurrency 100 TFBot { Template T_TFBot_Scout_Bonk } } WaveSpawn { WaitForAllDead "wave4_2f" Name "wave4_2c" Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 TotalCount 4 MaxActive 4 SpawnCount 4 WaitBetweenSpawns 40 WaitBeforeStarting 30 TotalCurrency 50 Squad { TFBot { Template T_TFGateBot_Giant_Heavyweapons_Deflector_A } TFBot { Template T_TFBot_Giant_Medic Tag bot_giant } TFBot { Class Pyro Skill Normal Attributes AlwaysFireWeapon Attributes AlwaysCrit } TFBot { Class Pyro Skill Normal Attributes AlwaysFireWeapon Attributes AlwaysCrit } } } WaveSpawn { WaitForAllDead "wave4_2f" Name "wave4_2c" Where spawnbot_alt_B_0 Where spawnbot_alt_B_1 Where spawnbot_alt_B_2 TotalCount 4 MaxActive 4 SpawnCount 4 WaitBetweenSpawns 50 WaitBeforeStarting 60 TotalCurrency 50 Squad { TFBot { Template T_TFGateBot_Giant_Heavyweapons_Deflector_B } TFBot { Template T_TFBot_Giant_Medic Tag bot_giant } TFBot { Class Pyro Skill Normal Attributes AlwaysFireWeapon Attributes AlwaysCrit } TFBot { Class Pyro Skill Normal Attributes AlwaysFireWeapon Attributes AlwaysCrit } } } //500 WaveSpawn { WaitForAllSpawned "wave4_2e" Name "wave4_2d" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 24 MaxActive 6 SpawnCount 4 WaitBetweenSpawns 30 WaitBeforeStarting 0 Support 1 TotalCurrency 100 Squad { TFBot { Template T_TFGateBot_Heavyweapons_Shotgun_A } TFBot { Template T_TFBot_Soldier_RocketShotgun } } } } //TODO: change the soldiers to only have 1 of each. potentialy getting them to cluster a bit more //And then add more support to it Wave //wave total value 1000 { WaitWhenDone 60 Sound "Announcer.IncomingMob" Checkpoint Yes StartWaveOutput { Target wave_start_relay Action Trigger } InitWaveOutput { Target wave_prepare_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } //support gatebot WaveSpawn { Name "wave5a" Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 TotalCount 15 MaxActive 8 SpawnCount 5 WaitBetweenSpawns 40 WaitBeforeStarting 20 TotalCurrency 75 TFBot { Template T_TFGateBot_Soldier_Normal_A } } WaveSpawn { Name "wave5a" Where spawnbot_alt_B_0 Where spawnbot_alt_B_1 Where spawnbot_alt_B_2 TotalCount 15 MaxActive 8 SpawnCount 5 WaitBetweenSpawns 40 WaitBeforeStarting 0 TotalCurrency 75 TFBot { Template T_TFGateBot_Soldier_Normal_B } } WaveSpawn { Name "wave5d" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 15 MaxActive 6 SpawnCount 3 WaitBetweenSpawns 5 WaitBeforeStarting 0 TotalCurrency 75 Squad { TFBot { Template T_TFGateBot_Heavy_Normal_A } TFBot { Template T_TFBot_Medic_BigHeal } TFBot { Template T_TFBot_Medic_Kritzkrieg } } } WaveSpawn { Name "wave5d" Where spawnbot_main_B_0 Where spawnbot_main_B_1 Where spawnbot_main_B_2 TotalCount 15 MaxActive 6 SpawnCount 3 WaitBetweenSpawns 5 WaitBeforeStarting 6 TotalCurrency 75 Squad { TFBot { Template T_TFGateBot_Heavy_Normal_B } TFBot { Template T_TFBot_Medic_BigHeal } TFBot { Template T_TFBot_Medic_Kritzkrieg } } } WaveSpawn { Name "wave5d" Where spawnbot_main_B_0 Where spawnbot_main_B_1 Where spawnbot_main_B_2 TotalCount 15 MaxActive 6 SpawnCount 3 WaitBetweenSpawns 5 WaitBeforeStarting 3 TotalCurrency 100 Squad { TFBot { Class Heavy Skill Normal } TFBot { Template T_TFBot_Medic_BigHeal } TFBot { Template T_TFBot_Medic_Kritzkrieg } } } //support during soldiers. instead of side groups a more constant stream and more variety WaveSpawn { Name "wave5sup1" WaitForAllDead "wave5d" Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 Where spawnbot_alt_B_0 Where spawnbot_alt_B_1 Where spawnbot_alt_B_2 TotalCount 18 MaxActive 6 SpawnCount 3 WaitBetweenSpawns 12 WaitBeforeStarting 0 TotalCurrency 50 Support 1 RandomChoice { TFBot { Template T_TFGateBot_Soldier_Normal_A } TFBot { Template T_TFGateBot_Soldier_Normal_B } TFBot { Class Soldier Skill Normal } } } WaveSpawn { Name "wave5sup2" WaitForAllSpawned "wave5d" Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 Where spawnbot_alt_B_0 Where spawnbot_alt_B_1 Where spawnbot_alt_B_2 TotalCount 12 MaxActive 3 SpawnCount 1 WaitBetweenSpawns 3 WaitBeforeStarting 3 TotalCurrency 50 RandomChoice { TFBot { Template T_TFGateBot_Pyro_Hard_A } TFBot { Template T_TFGateBot_Pyro_Hard_B } TFBot { Class Pyro Skill Hard } } } WaveSpawn { Name "wave5sup1" WaitForAllDead "wave5d" Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 Where spawnbot_alt_B_0 Where spawnbot_alt_B_1 Where spawnbot_alt_B_2 TotalCount 20 MaxActive 8 SpawnCount 4 WaitBetweenSpawns 8 WaitBeforeStarting 4 TotalCurrency 50 Support 1 RandomChoice { TFBot { Template T_TFGateBot_Sniper_Huntsman_A } TFBot { Template T_TFGateBot_Sniper_Huntsman_B } TFBot { Template T_TFBot_Sniper_Huntsman } } } //main gatebot WaveSpawn { Name "wave5b" WaitForAllDead "wave5d" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 4 MaxActive 2 SpawnCount 2 WaitBetweenSpawns 60 WaitBeforeStarting 0 TotalCurrency 50 Squad { TFBot { Template T_TFGateBot_Giant_Soldier_Extended_Buff_Banner_B Tag bot_giant } TFBot { Template T_TFBot_Medic_QuickUber } } } WaveSpawn { Name "wave5b" WaitForAllDead "wave5d" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 4 MaxActive 2 SpawnCount 2 WaitBetweenSpawns 60 WaitBeforeStarting 0 TotalCurrency 50 Squad { TFBot { Template T_TFGateBot_Giant_Soldier_Extended_Concheror_A Tag bot_giant } TFBot { Template T_TFBot_Medic_QuickUber } } } WaveSpawn { Name "wave5b" WaitForAllDead "wave5d" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 4 MaxActive 2 SpawnCount 2 WaitBetweenSpawns 45 WaitBeforeStarting 30 TotalCurrency 50 Squad { TFBot { Template T_TFBot_Giant_Soldier_Extended_Battalion Tag bot_giant } TFBot { Template T_TFBot_Medic_QuickUber } } } WaveSpawn //a hidden subwave that spawns between the soldiers. { Name "wave5sup3" WaitForAllDead "wave5d" Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 Where spawnbot_alt_B_0 Where spawnbot_alt_B_1 Where spawnbot_alt_B_2 TotalCount 9 MaxActive 5 SpawnCount 3 WaitBetweenSpawns 4 WaitBeforeStarting 15 TotalCurrency 0 Squad { TFBot { Template T_TFBot_Scout_Sandman } } } WaveSpawn //and further near the end just a steady stream at lower numbers { Name "wave5sup3" WaitForAllSpawned "wave5b" Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 Where spawnbot_alt_B_0 Where spawnbot_alt_B_1 Where spawnbot_alt_B_2 TotalCount 2 MaxActive 3 SpawnCount 2 WaitBetweenSpawns 1 WaitBeforeStarting 2 TotalCurrency 0 Support 1 Squad { TFBot { Template T_TFBot_Scout_Sandman } } } } //TODO: fix rage knockback, lower money. Wave //wave total value 1000 { WaitWhenDone 60 Sound "Announcer.IncomingMob" Checkpoint Yes StartWaveOutput { Target wave_start_relay Action Trigger } InitWaveOutput { Target wave_prepare_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } //support gatebot WaveSpawn { Name "wave6a" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 100 Squad { TFBot { Template T_TFGateBot_Giant_Pyro_AlwaysFire_Crit_A Tag bot_giant Health 25000 Attributes UseBossHealthBar } } } WaveSpawn { Name "wave6a" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 100 Squad { TFBot { Template T_TFGateBot_Giant_Demo_Burst_Crit_B Tag bot_giant Health 25000 Attributes UseBossHealthBar } } } WaveSpawn { Name "wave6b" WaitForAllDead "wave6a" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 10 TotalCurrency 100 Squad { TFBot { Template T_TFGateBot_Giant_Heavyweapons_Deflector_A Tag bot_giant Health 20000 Attributes UseBossHealthBar } } } WaveSpawn { Name "wave6b" WaitForAllDead "wave6a" Where spawnbot_main_A_0 Where spawnbot_main_A_1 Where spawnbot_main_A_2 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 10 TotalCurrency 100 Squad { TFBot { Template T_TFGateBot_Giant_Heavyweapons_Deflector_B Tag bot_giant Health 20000 Attributes UseBossHealthBar } } } WaveSpawn { Name "wave6c" Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 TotalCount 15 MaxActive 10 SpawnCount 5 WaitBetweenSpawns 5 WaitBeforeStarting 10 TotalCurrency 50 TFBot { Template T_TFGateBot_Scout_FAN_A } } WaveSpawn { Name "wave6c" Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 TotalCount 15 MaxActive 10 SpawnCount 5 WaitBetweenSpawns 5 WaitBeforeStarting 10 TotalCurrency 50 TFBot { Template T_TFGateBot_Scout_FAN_B } } WaveSpawn { Name "wave6d" WaitForAllDead "wave6c" Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 TotalCount 15 MaxActive 10 SpawnCount 5 WaitBetweenSpawns 7 WaitBeforeStarting 15 TotalCurrency 50 TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ } } WaveSpawn { Name "wave6d" WaitForAllDead "wave6c" Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 TotalCount 15 MaxActive 10 SpawnCount 5 WaitBetweenSpawns 7 WaitBeforeStarting 15 TotalCurrency 50 TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ } } WaveSpawn { Name "wave6f" WaitForAllDead "wave6a" Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 TotalCount 10 MaxActive 10 SpawnCount 10 WaitBetweenSpawns 5 WaitBeforeStarting 0 TotalCurrency 50 TFBot { Template T_TFBot_Demoman_Knight } } WaveSpawn { Name "wave6e" WaitForAllSpawned "wave6d" Where spawnbot_alt_A_0 Where spawnbot_alt_A_1 Where spawnbot_alt_A_2 TotalCount 20 MaxActive 6 SpawnCount 4 WaitBetweenSpawns 18 WaitBeforeStarting 15 Support 1 TotalCurrency 0 TFBot { Template T_TFBot_Scout_Melee } } } }