// Expert "Hordes of Hatred" // Made by Haniday (https://steamcommunity.com/id/Haniday/) #base robot_haniday_v.pop //spawnbot //spawnbot_mission_spy //spawnbot_mission_sniper WaveSchedule { StartingCurrency 400 RespawnWaveTime 7 Advanced 1 CanBotsAttackWhileInSpawnRoom no Mission // Sentry Buster { Objective "DestroySentries" BeginAtWave 1 Where spawnbot InitialCooldown 30 CooldownTime 30 TFBot { Template T_TFBot_SentryBuster } } Mission // Spy #1 { Objective "Spy" BeginAtWave 2 RunForThisManyWaves 1 Where spawnbot_mission_spy InitialCooldown 60 CooldownTime 40 DesiredCount 2 TFBot { Template T_TFBot_Spy } } Mission // Sniper #1 { Objective "Sniper" BeginAtWave 3 RunForThisManyWaves 1 Where spawnbot_mission_sniper InitialCooldown 60 CooldownTime 60 DesiredCount 2 TFBot { Template T_TFBot_Sniper_Sydney_Sleeper } } Mission // Sniper #2 { Objective "Sniper" BeginAtWave 4 RunForThisManyWaves 1 Where spawnbot_mission_sniper InitialCooldown 40 CooldownTime 40 DesiredCount 4 TFBot { Template T_TFBot_Sniper_Sydney_Sleeper SKill Expert } } Mission // Engineer { Objective "Engineer" BeginAtWave 3 Where spawnbot InitialCooldown 100 CooldownTime 50 DesiredCount 1 TFBot { Template T_TFBot_Engineer_Sentry_Teleporter TeleportWhere spawnbot_mission_sniper TeleportWhere spawnbot_mission_spy } } Wave // Wave 1: 500$ { StartWaveOutput { Target wave_start_relay_ironman // wave_start_relay_boss Action Trigger } DoneOutput { Target wave_finished_relay // wave_finished_relay_boss Action Trigger } WaveSpawn // W1_Support1: Bat Scouts, 2 max, Support { Name "W1_Support1" Where spawnbot TotalCount 2 MaxActive 2 SpawnCount 2 Support 1 WaitBetweenSpawns 20 TFBot { Template T_TFBot_Scout_Melee Skill Easy } } WaveSpawn // W1_S1a: Soldiers + Pyros Squad, 6 max, 12 total { TotalCurrency 100 Name "W1_S1a" Where spawnbot TotalCount 12 MaxActive 6 SpawnCount 3 WaitBeforeStarting 10 WaitBetweenSpawns 5 Squad { TFBot { Template T_TFBot_Soldier } TFBot { Template T_TFBot_Pyro Skill Easy } TFBot { Template T_TFBot_Pyro Skill Easy } } } WaveSpawn // W1_S2a: Soldiers, 12 total { TotalCurrency 200 Name "W1_S2a" Where spawnbot TotalCount 12 // 18 SpawnCount 12 // 18 WaitForAllDead "W1_S1a" WaitBeforeStarting 10 TFBot { Template T_TFBot_Soldier } } WaveSpawn // W1_S2b: Pyros, 12 total { TotalCurrency 100 Name "W1_S2b" Where spawnbot TotalCount 12 // 18 SpawnCount 12 // 18 WaitForAllDead "W1_S2a" WaitBeforeStarting 10 TFBot { Template T_TFBot_Pyro Skill Easy } } WaveSpawn // W1_S3a: Soldier + Pyro, 10 max, 20 total { TotalCurrency 100 Name "W1_S3a" Where spawnbot TotalCount 20 // 24 MaxActive 10 // 12 SpawnCount 2 WaitForAllDead "W1_S2b" WaitBeforeStarting 10 WaitBetweenSpawns 3 // 1 Squad { TFBot { Template T_TFBot_Soldier } TFBot { Template T_TFBot_Pyro Skill Easy } } } } Wave // Wave 2: 600$ { StartWaveOutput { Target wave_start_relay_ironman // Enables a timed bomb instead of a normal one. Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn // W2_S1a: Soldiers, 2 max, 20 total { TotalCurrency 50 Name "W2_S1a" Where spawnbot TotalCount 20 MaxActive 2 SpawnCount 2 Support Limited WaitBetweenSpawns 10 TFBot { Template T_TFBot_Soldier Skill Easy } } WaveSpawn // W2_S1b: Demomen, 10 max, 20 total { TotalCurrency 250 Name "W2_S1b" Where spawnbot TotalCount 20 MaxActive 10 SpawnCount 10 WaitBeforeStarting 10 WaitBetweenSpawns 12 TFBot { Template T_TFBot_Demoman Skill Easy } } WaveSpawn // W2_S2a: Buff Banner Soldier + Demomen, 10 max, 20 total { TotalCurrency 300 Name "W2_S2a" Where spawnbot TotalCount 20 MaxActive 10 SpawnCount 10 WaitForAllDead "W2_S1b" WaitBeforeStarting 12 WaitBetweenSpawns 5 Squad { TFBot { Template T_TFBot_Soldier_Buff_Banner } TFBot { Template T_TFBot_Demoman Skill Easy } TFBot { Template T_TFBot_Demoman Skill Easy } TFBot { Template T_TFBot_Demoman Skill Easy } TFBot { Template T_TFBot_Demoman Skill Easy } TFBot { Template T_TFBot_Demoman Skill Easy } TFBot { Template T_TFBot_Demoman Skill Easy } TFBot { Template T_TFBot_Demoman Skill Easy } TFBot { Template T_TFBot_Demoman Skill Easy } TFBot { Template T_TFBot_Demoman Skill Easy } } } } Wave // Wave 3: 500$ { StartWaveOutput { Target wave_start_relay_ironman Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn // W3_S1a: Huo Long Heaters, 6 max, 12 total { TotalCurrency 100 Name "W3_S1a" Where spawnbot TotalCount 12 // 48 MaxActive 6 // 12 SpawnCount 2 // 2 WaitBeforeStarting 20 WaitBetweenSpawns 2 TFBot { Template T_TFBot_Heavyweapons_Heater // Meant to be a Squad of 2 Pyros and 1 Heavy Heater } } WaveSpawn // W3_S1b: Pyros, 6 max, 12 total { TotalCurrency 50 Name "W3_S1b" Where spawnbot TotalCount 12 MaxActive 6 SpawnCount 2 WaitBeforeStarting 20 WaitBetweenSpawns 2 TFBot { Template T_TFBot_Pyro Skill Easy } } WaveSpawn // W3_S2a: Huo Long Heaters + Pyros + Buff Banner Soldier Squad, 10 max, 30 total { TotalCurrency 50 Name "W3_S2a" Where spawnbot TotalCount 30 // 36 MaxActive 10 // 9 SpawnCount 5 // 3 WaitForAllDead "W3_S1a" WaitBeforeStarting 12 // 10 WaitBetweenSpawns 6 // 3 Squad { // Meant to be a Squad of 2 Heavy Heaters and 1 Buff Banner Soldier TFBot { Template T_TFBot_Soldier_Extended_Buff_Banner } TFBot { Template T_TFBot_Heavyweapons_Heater } TFBot { Template T_TFBot_Heavyweapons_Heater } TFBot { Template T_TFBot_Pyro SKill Easy } TFBot { Template T_TFBot_Pyro Skill Easy } } } WaveSpawn // W3_S2b: Giant Pyro + Quick-Fix Medics, 3 max, 6 total { TotalCurrency 300 Name "W3_S2b" Where spawnbot TotalCount 6 MaxActive 3 SpawnCount 3 WaitForAllDead "W3_S1a" WaitBeforeStarting 30 WaitBetweenSpawns 10 Squad { TFBot { Template T_TFBot_Giant_Pyro } TFBot { Template T_TFBot_Medic_Uber } TFBot { Template T_TFBot_Medic_Uber } } } } Wave // Wave 4: 400$ { StartWaveOutput { Target wave_start_relay // Doesn't uses a timed bomb Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn // W4_S1a: Scouts with random Skill levels, 15 max, 70 total { TotalCurrency 150 Name "W4_S1a" Where spawnbot TotalCount 70 MaxActive 16 SpawnCount 2 WaitBeforeStarting 10 WaitBetweenSpawns 2 RandomChoice { TFBot { Template T_TFBot_Scout Skill Easy } TFBot { Template T_TFBot_Scout Skill Normal } TFBot { Template T_TFBot_Scout Skill Hard } } } WaveSpawn // W4_S1b: Tank 25K HP { TotalCurrency 250 Name "W4_S1a" TotalCount 2 MaxActive 2 SpawnCount 1 WaitBeforeStarting 30 WaitBetweenSpawns 40 Tank { Name "tankboss" Health 25000 StartingPathTrackNode "boss_path_1" OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } } Wave // Wave 5: 500$ { StartWaveOutput { Target wave_start_relay_ironman Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn // W5_S1a: Giant Heavy + Uber Medics, 6 max, 6 total { TotalCurrency 150 Name "W5_S1a" Where spawnbot TotalCount 6 MaxActive 6 SpawnCount 3 WaitBetweenSpawns 8 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons } TFBot { Template T_TFBot_Medic_Uber } TFBot { Template T_TFBot_Medic_Uber } } } WaveSpawn // W5_S1b: Conch Soldier + Heavies, 3 max, 12 total { TotalCurrency 50 Name "W5_S1b" Where spawnbot TotalCount 12 MaxActive 3 SpawnCount 3 WaitForAllSpawned "W5_S1a" WaitBeforeStarting 10 WaitBetweenSpawns 5 Squad { TFBot { Template T_TFBot_Soldier_Extended_Concheror } TFBot { Template T_TFBot_Heavyweapons } TFBot { Template T_TFBot_Heavyweapons } } } WaveSpawn // W5_S1c: Battalion Soldier + Heavies, 3 max, 12 total { TotalCurrency 50 Name "W5_S1c" Where spawnbot TotalCount 12 MaxActive 3 SpawnCount 3 WaitForAllSpawned "W5_S1a" WaitBeforeStarting 15 WaitBetweenSpawns 5 Squad { TFBot { Template T_TFBot_Soldier_Extended_Battalion } TFBot { Template T_TFBot_Heavyweapons } TFBot { Template T_TFBot_Heavyweapons } } } WaveSpawn // W5_S2a: Crit Soldier Mob, 12 max, 12 total { TotalCurrency 100 Name "W5_S2a" Where spawnbot TotalCount 12 SpawnCount 12 WaitForAllDead "W5_S1c" WaitBeforeStarting 10 TFBot { Template T_TFBot_Soldier Skill Easy Attributes AlwaysCrit } } WaveSpawn // W5_S2b: Giant Heavies + Uber Medics, 6 max, 6 total { TotalCurrency 150 Name "W5_S2b" Where spawnbot TotalCount 6 SpawnCount 3 WaitForAllSpawned "W5_S2a" WaitBeforeStarting 10 WaitBetweenSpawns 6 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons } TFBot { Template T_TFBot_Medic_Uber } TFBot { Template T_TFBot_Medic_Uber } } } } Wave // Wave 6: 600$ { StartWaveOutput { Target wave_start_relay_boss Action Trigger } DoneOutput { Target wave_finished_relay_boss Action Trigger } WaveSpawn // W6_S1a: Crit Heavies, 8 max, 48 total { TotalCurrency 100 Name "W6_S1a" Where spawnbot TotalCount 48 // 40 MaxActive 8 // 6 SpawnCount 2 // 1 WaitBetweenSpawns 2 // 1 TFBot { Template T_TFBot_Heavyweapons Attributes AlwaysCrit } } WaveSpawn // W6_S1b: Huntsmen, 8 max, 38 total { TotalCurrency 100 Name "W6_S1b" Where spawnbot TotalCount 38 MaxActive 8 SpawnCount 8 WaitBeforeStarting 10 WaitBetweenSpawns 20 TFBot { Template T_TFBot_Sniper_Huntsman } } WaveSpawn // W6_S2a: Giant Soldier + Über Medic, 6 max, 8 total { TotalCurrency 100 Name "W6_S2a" Where spawnbot TotalCount 8 MaxActive 6 SpawnCount 2 WaitForAllSpawned "W6_S1a" WaitBeforeStarting 10 WaitBetweenSpawns 5 Squad { TFBot { Template T_TFBot_Giant_Soldier_Spammer } TFBot { Template T_TFBot_Medic_Uber } } } WaveSpawn // W6_S2b: Tanks 25K HP, 3 total { TotalCurrency 100 Name "W6_S2b" TotalCount 3 SpawnCount 1 WaitForAllDead "W6_S2a" WaitBetweenSpawns 10 Tank { Name "W6_fast_tank" Health 25000 Speed 150 Skin 1 StartingPathTrackNode "boss_path_1" OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn // W6_Boss: Chief Blast Soldier { TotalCurrency 200 Name "W6_Boss" Where spawnbot TotalCount 1 SpawnCount 1 WaitForAllDead "W6_S2b" WaitBeforeStarting 10 TFBot { Template T_TFBot_Chief_Soldier_Blast } } } }