#base robot_giant.pop #base robot_standard.pop WaveSchedule { StartingCurrency 1500 RespawnWaveTime 3 CanBotsAttackWhileInSpawnRoom no RespecEnabled 0 NoReanimators 1 Templates { T_TFBot_Soldier_BlueBird { Class Soldier Name "Jump 'n' Fall Soldier" ClassIcon soldier_bluebird Skill Normal Item "The B.A.S.E. Jumper" WeaponRestrictions PrimaryOnly Attributes AutoJump Attributes HoldFireUntilFullReload AutoJumpMin 1 AutoJumpMax 2 ItemAttributes { ItemName "TF_WEAPON_ROCKETLAUNCHER" "fire rate bonus" 0.5 } CharacterAttributes { "cancel falling damage" 1 "increased jump height" 4 } } } Mission // Sentry Buster { Objective DestroySentries InitialCooldown 20 Where spawnbot BeginAtWave 1 RunForThisManyWaves 3 CooldownTime 30 TFBot { Template T_TFBot_SentryBuster } } Mission // Engineer (Wave 1) { Objective Engineer InitialCooldown 60 Where spawnbot BeginAtWave 1 RunForThisManyWaves 1 CooldownTime 60 DesiredCount 1 TFBot { Template T_TFBot_Engineer_Sentry_Teleporter } } Mission // Spy (Wave 2) { Objective Spy InitialCooldown 30 Where spawnbot_mission_spy BeginAtWave 2 RunForThisManyWaves 1 CooldownTime 50 DesiredCount 2 TFBot { Class Spy Skill Expert } } Mission // Engineer (Wave 2) { Objective Engineer InitialCooldown 40 Where spawnbot BeginAtWave 2 RunForThisManyWaves 1 CooldownTime 60 DesiredCount 1 TFBot { Template T_TFBot_Engineer_Sentry_Teleporter } } Mission // Sniper (Wave 3) { Objective Sniper InitialCooldown 30 Where spawnbot_mission_sniper BeginAtWave 3 RunForThisManyWaves 1 CooldownTime 90 DesiredCount 2 TFBot { Template T_TFBot_Sniper MaxVisionRange 3000 } } Mission // Spy (Wave 3) { Objective Spy InitialCooldown 50 Where spawnbot_mission_spy BeginAtWave 3 RunForThisManyWaves 1 CooldownTime 90 DesiredCount 2 TFBot { Class Spy Skill Expert } } Mission // Engineer (Wave 3) { Objective Engineer InitialCooldown 60 Where spawnbot BeginAtWave 3 RunForThisManyWaves 1 CooldownTime 60 DesiredCount 1 TFBot { Template T_TFBot_Engineer_Sentry_Teleporter } } Wave // Wave 1 ($1200) { StartWaveOutput { Target wave_start_relay_ironman Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaitWhenDone 65 Checkpoint Yes WaveSpawn // wave01a-1: 60 Scouts (2/3 Melee, 1/3 Primary) { Name "wave01a" Where spawnbot TotalCount 60 MaxActive 12 SpawnCount 6 WaitBeforeStarting 4 WaitBetweenSpawns 10 TotalCurrency 100 RandomChoice { TFBot { Class Scout Skill Easy } TFBot { Class Scout Skill Hard WeaponRestrictions MeleeOnly } TFBot { Class Scout Skill Hard WeaponRestrictions MeleeOnly } } } WaveSpawn // wave01a-2: 3 Giant Pyros (each with 3 Medics) { Name "wave01a" Where spawnbot TotalCount 12 MaxActive 8 SpawnCount 4 WaitBeforeStarting 20 WaitBetweenSpawns 30 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Giant_Pyro Attributes AlwaysFireWeapon } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } } } WaveSpawn // wave01b: 100 KGB Heavyweight Champs { Name "wave01b" Where spawnbot TotalCount 100 MaxActive 20 SpawnCount 5 WaitForAllDead "wave01a" WaitBeforeStarting 10 WaitBetweenSpawns 0 TotalCurrency 100 TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ } } WaveSpawn // wave01c-1: Tank { Name "wave01c" TotalCount 1 WaitForAllDead "wave01b" WaitBeforeStarting 10 TotalCurrency 200 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 // wave01c-2: 40 Soldiers (leaders have a Concheror) { Name "wave01c" Where spawnbot TotalCount 40 MaxActive 8 SpawnCount 4 WaitForAllDead "wave01b" WaitBeforeStarting 10 WaitBetweenSpawns 10 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Soldier_Extended_Concheror } TFBot { Class Soldier Skill Easy } TFBot { Class Soldier Skill Easy } TFBot { Class Soldier Skill Easy } } } WaveSpawn // wave01c-3: 4 Giant Demoknights { Name "wave01c" Where spawnbot TotalCount 4 MaxActive 4 SpawnCount 1 WaitForAllDead "wave01b" WaitBeforeStarting 10 WaitBetweenSpawns 35 TotalCurrency 100 TFBot { Template T_TFBot_Giant_DemoMan_PrinceTavish } } WaveSpawn // wave01d: 5 Giant Rapid Fire Soldiers (each with 3 Medics and 3 Bowmen) { Name "wave01d" Where spawnbot TotalCount 35 MaxActive 21 SpawnCount 7 WaitForAllDead "wave01c" WaitBeforeStarting 10 WaitBetweenSpawns 25 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Soldier_Spammer } TFBot { Template T_TFBot_Medic_BigHeal } TFBot { Template T_TFBot_Medic_BigHeal } TFBot { Template T_TFBot_Medic_BigHeal } TFBot { Template T_TFBot_Sniper_Huntsman } TFBot { Template T_TFBot_Sniper_Huntsman } TFBot { Template T_TFBot_Sniper_Huntsman } } } WaveSpawn // wave01e-1: 40 Heavies { Name "wave01e_1" Where spawnbot TotalCount 40 MaxActive 8 SpawnCount 4 WaitForAllDead "wave01d" WaitBeforeStarting 10 WaitBetweenSpawns 8 TotalCurrency 100 TFBot { Class Heavyweapons Skill Easy } } WaveSpawn // wave01e-2: 10 Giant Flare Pyros { Name "wave01e_2" Where spawnbot TotalCount 10 MaxActive 5 SpawnCount 1 WaitForAllDead "wave01d" WaitBeforeStarting 10 WaitBetweenSpawns 20 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Pyro_Flare_Spammer } } WaveSpawn // wave01f: 60 Scouts (1/2 Scattergun, 1/2 Sandman) { Name "wave01f" Where spawnbot TotalCount 60 MaxActive 12 SpawnCount 12 WaitForAllSpawned "wave01e_1" WaitBeforeStarting 10 WaitBetweenSpawns 20 TotalCurrency 100 RandomChoice { TFBot { Class Scout Skill Easy Tag nav_prefer_flank_right } TFBot { Template T_TFBot_Scout_Sandman Skill Expert Tag nav_prefer_flank_right } TFBot { Class Scout Skill Easy Tag nav_prefer_flank_left } TFBot { Template T_TFBot_Scout_Sandman Skill Expert Tag nav_prefer_flank_left } } } } Wave // Wave 2 ($1300 - $2700 before this wave) { StartWaveOutput { Target wave_start_relay_ironman Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaitWhenDone 65 Checkpoint Yes WaveSpawn // wave02a: 6 Giant Charged Soldiers (each with 3 Medics and a Backup Soldier) { Name "wave02a" Where spawnbot TotalCount 30 MaxActive 20 SpawnCount 5 WaitBeforeStarting 0 WaitBetweenSpawns 20 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Soldier_Crit } TFBot { Template T_TFBot_Medic_BigHeal } TFBot { Template T_TFBot_Medic_BigHeal } TFBot { Template T_TFBot_Medic_BigHeal } TFBot { Template T_TFBot_Soldier_Extended_Battalion } } } WaveSpawn // wave02b-1: 18 Steel Gauntlets { Name "wave02b_1" Where spawnbot TotalCount 18 MaxActive 8 SpawnCount 2 WaitForAllDead "wave02a" WaitBeforeStarting 10 WaitBetweenSpawns 10 TotalCurrency 150 TFBot { Template T_TFBot_Heavyweapons_Fist } } WaveSpawn // wave02b-2: 60 Pyros (2/3 Flare Gun, 1/3 Flamethrower) { Name "wave02b_2" Where spawnbot TotalCount 60 MaxActive 12 SpawnCount 4 WaitForAllDead "wave02a" WaitBeforeStarting 10 WaitBetweenSpawns 3 TotalCurrency 150 RandomChoice { TFBot { Template T_TFBot_Pyro_Flaregun } TFBot { Template T_TFBot_Pyro_Flaregun } TFBot { Class Pyro Skill Normal Attributes AlwaysFireWeapon } } } WaveSpawn // wave02c-1: 5 Major League Scouts { Name "wave02c_1" Where spawnbot TotalCount 5 MaxActive 5 SpawnCount 1 WaitForAllSpawned "wave02b_1" WaitBeforeStarting 10 WaitBetweenSpawns 25 TotalCurrency 50 TFBot { Template T_TFBot_Giant_Scout_Baseball } } WaveSpawn // wave02c-2: 60 Demoknights { Name "wave02c_2" Where spawnbot TotalCount 60 MaxActive 15 SpawnCount 10 WaitForAllSpawned "wave02b_2" WaitBeforeStarting 10 WaitBetweenSpawns 20 TotalCurrency 150 TFBot { Template T_TFBot_Demoman_Knight } } WaveSpawn // wave02d-1-1: 3 Giant Pyros (flank left) { Name "wave02d" Where spawnbot TotalCount 3 MaxActive 2 SpawnCount 1 WaitForAllSpawned "wave02c_1" WaitBeforeStarting 15 WaitBetweenSpawns 35 TotalCurrency 75 TFBot { Template T_TFBot_Giant_Pyro Attributes AlwaysFireWeapon Tag nav_prefer_flank_left } } WaveSpawn // wave02d-1-2: 3 Giant Pyros (flank right) { Name "wave02d" Where spawnbot TotalCount 3 MaxActive 2 SpawnCount 1 WaitForAllSpawned "wave02c_1" WaitBeforeStarting 15 WaitBetweenSpawns 35 TotalCurrency 75 TFBot { Template T_TFBot_Giant_Pyro Attributes AlwaysFireWeapon Tag nav_prefer_flank_right } } WaveSpawn // wave02d-2: 20 Soldier-Medic pairs { Name "wave02d" Where spawnbot TotalCount 40 MaxActive 12 SpawnCount 4 WaitForAllSpawned "wave02c_2" WaitBeforeStarting 15 WaitBetweenSpawns 10 TotalCurrency 150 Squad { TFBot { Class Soldier Skill Normal } TFBot { Template T_TFBot_Medic_BigHeal } } } WaveSpawn // wave02e: 16 Steel Gauntlet-Medic pairs { Name "wave02e" Where spawnbot TotalCount 32 MaxActive 10 SpawnCount 2 WaitForAllDead "wave02d" WaitBeforeStarting 10 WaitBetweenSpawns 6 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Heavyweapons_Fist } TFBot { Template T_TFBot_Medic_BigHeal } } } WaveSpawn // wave02s: Bowman support { Name "wave02s" Where spawnbot TotalCount 50 MaxActive 10 SpawnCount 5 WaitForAllDead "wave02d" WaitBeforeStarting 10 WaitBetweenSpawns 10 TotalCurrency 100 Support 1 TFBot { Template T_TFBot_Sniper_Huntsman } } } Wave // Wave 3 ($1500 - $4000 before this wave) { StartWaveOutput { Target wave_start_relay_ironman Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaitWhenDone 65 Checkpoint Yes WaveSpawn // wave03a-2: 7 Giant Rapid Fire Soldiers (each with 2 Medics) { Name "wave03a" Where spawnbot TotalCount 21 MaxActive 6 SpawnCount 3 WaitBeforeStarting 0 WaitBetweenSpawns 20 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Soldier_Spammer } TFBot { Template T_TFBot_Medic_BigHeal } TFBot { Template T_TFBot_Medic_BigHeal } } } WaveSpawn // wave03a-2: 100 Scouts { Name "wave03a" Where spawnbot TotalCount 100 MaxActive 15 SpawnCount 10 WaitBeforeStarting 5 WaitBetweenSpawns 10 TotalCurrency 200 RandomChoice { TFBot { Class Scout Skill Easy Tag nav_prefer_flank_right BehaviorModifiers push } TFBot { Class Scout Skill Easy Tag nav_prefer_flank_left BehaviorModifiers push } } } WaveSpawn // wave03a-3: Tank { Name "wave03a" TotalCount 1 WaitBeforeStarting 10 TotalCurrency 150 FirstSpawnOutput { Target boss_spawn_relay Action Trigger } Tank { Health 30000 Speed 75 Name "tankboss" StartingPathTrackNode "boss_path_a1" OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn // wave03b-1: 4 Giant Charged Soldier-Medic pairs (take left path) { Name "wave03b_1" Where spawnbot TotalCount 8 MaxActive 8 SpawnCount 2 WaitForAllDead "wave03a" WaitBeforeStarting 10 WaitBetweenSpawns 20 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Giant_Soldier_Crit Tag special_main_left } TFBot { Template T_TFBot_Medic_QuickUber } } } WaveSpawn // wave03b-2: 4 Giant Charged Soldier-Medic pairs (take right path) { Name "wave03b_2" Where spawnbot TotalCount 8 MaxActive 8 SpawnCount 2 WaitForAllDead "wave03a" WaitBeforeStarting 20 WaitBetweenSpawns 20 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Giant_Soldier_Crit Tag special_main_right } TFBot { Template T_TFBot_Medic_QuickUber } } } WaveSpawn // wave03c-1: 120 Heavyweight Champs (1/2 GRU, 1/2 KGB) { Name "wave03c" Where spawnbot TotalCount 120 MaxActive 16 SpawnCount 8 WaitForAllSpawned "wave03b_1" WaitBeforeStarting 15 WaitBetweenSpawns 1 TotalCurrency 150 RandomChoice { TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ_Fast Tag nav_prefer_flank_left BehaviorModifiers push } TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ_Fast Tag nav_prefer_flank_right BehaviorModifiers push } TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ Skill Expert } TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ Skill Expert } } } WaveSpawn // wave03c-2: 10 Super Scouts { Name "wave03c" Where spawnbot TotalCount 10 MaxActive 4 SpawnCount 1 WaitForAllSpawned "wave03b_2" WaitBeforeStarting 15 WaitBetweenSpawns 15 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Scout_Fast } } WaveSpawn // wave03s: Blue Bird support { Name "wave03s" Where spawnbot TotalCount 30 MaxActive 3 SpawnCount 3 WaitForAllDead "wave03c" WaitBeforeStarting 10 WaitBetweenSpawns 10 TotalCurrency 100 Support 1 TFBot { Template T_TFBot_Soldier_BlueBird } } WaveSpawn // wave03d: 12 Giant Demomen { Name "wave03d" Where spawnbot TotalCount 12 MaxActive 12 SpawnCount 2 WaitForAllDead "wave03c" WaitBeforeStarting 10 WaitBetweenSpawns 15 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Demo_RapidFire } } WaveSpawn // wave03e-1: 4 Giant Heavies (each with 5 Medics) { Name "wave03e" Where spawnbot TotalCount 24 MaxActive 12 SpawnCount 6 WaitForAllSpawned "wave03d" WaitBeforeStarting 25 WaitBetweenSpawns 25 TotalCurrency 300 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 } TFBot { Template T_TFBot_Medic_QuickUber } TFBot { Template T_TFBot_Medic_QuickUber } } } WaveSpawn // wave03e-2: Final Tank { Name "wave03e" TotalCount 1 WaitForAllSpawned "wave03d" WaitBeforeStarting 60 TotalCurrency 0 FirstSpawnOutput { Target boss_spawn_relay Action Trigger } Tank { Health 40000 Speed 75 Name "tankboss" Skin 1 StartingPathTrackNode "boss_path_1" OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } } }