#base robot_standard.pop #base robot_giant.pop #base robot_scallops.pop WaveSchedule { StartingCurrency 600 RespawnWaveTime 2 CanBotsAttackWhileInSpawnRoom no Mission { Where spawnbot_invasion Objective DestroySentries InitialCooldown 10.0 CooldownTime 32.5 BeginAtWave 1 RunForThisManyWaves 6 DesiredCount 1 TFBot { Template T_TFBot_SentryBuster Tag dont_highlight } } Mission { Where spawnbot_invasion Objective Spy InitialCooldown 10.0 CooldownTime 45.0 BeginAtWave 2 RunForThisManyWaves 1 DesiredCount 2 TFBot { Class Spy Skill Expert Tag dont_highlight } } Wave { InitWaveOutput { Target gamerules Action RunScriptCode Param " EntFire(`wave_init_relay`, `Trigger`) EntFire(`placeholder_relay_killer_enable_all`, `Trigger`) EntFire(`spawnbot_placeholder1`, `Disable`) EntFire(`spawnbot_placeholder2`, `Disable`) " } StartWaveOutput { Action "trigger" Target "wave_start_relay" } DoneOutput { Action "trigger" Target "wave_finished_relay" } WaveSpawn //Dummy wavespawn to control spawn times { Name "1lc_buffer" Where spawnbot_placeholder1 TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllSpawned "1la" WaitBeforeStarting 4.0 WaitBetweenSpawns 5 TotalCurrency 0 Support Limited RandomChoice { Squad { TFBot { Class Scout Tag placeholder_kill1 } } } } WaveSpawn //Dummy wavespawn to control spawn times { Name "1rc_buffer" Where spawnbot_placeholder2 TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllSpawned "1ra" WaitBeforeStarting 4.0 WaitBetweenSpawns 5 TotalCurrency 0 Support Limited RandomChoice { Squad { TFBot { Class Scout Tag placeholder_kill1 } } } } WaveSpawn { Name "1la" Where spawnbot_a TotalCount 10 MaxActive 8 SpawnCount 2 WaitBeforeStarting 0.0 WaitBetweenSpawns 8.5 TotalCurrency 100 LastSpawnOutput { Target gamerules Action RunScriptCode Param " EntFire(`spawnbot_placeholder1`, `Enable`, null, 20) " } DoneOutput { Target gamerules Action RunScriptCode Param " EntFire(`spawnbot_placeholder1`, `Enable`) " } Squad { TFBot { Class Soldier Skill Easy ClassIcon soldier_scallops_red } TFBot { Template T_TFBot_Medic_LightUber ClassIcon medic_uber_scallops_mix } } } WaveSpawn { Name "1ra" Where spawnbot_b TotalCount 10 MaxActive 8 SpawnCount 2 WaitBeforeStarting 0.0 WaitBetweenSpawns 8.5 TotalCurrency 100 LastSpawnOutput { Target gamerules Action RunScriptCode Param " EntFire(`spawnbot_placeholder2`, `Enable`, null, 12) " } DoneOutput { Target gamerules Action RunScriptCode Param " EntFire(`spawnbot_placeholder2`, `Enable`) " } Squad { TFBot { Class Demoman Skill Easy ClassIcon demo_scallops_blue } TFBot { Template T_TFBot_Medic_LightUber ClassIcon medic_uber_scallops_mix } } } WaveSpawn { Name "1lb" Where spawnbot_a TotalCount 9 MaxActive 3 SpawnCount 1 WaitBeforeStarting 5 WaitBetweenSpawns 1 TotalCurrency 100 DoneOutput { Target gamerules Action RunScriptCode Param " EntFire(`spawnbot_placeholder1`, `Enable`) " } TFBot { Class Scout Skill Easy Attributes AlwaysCrit WeaponRestrictions MeleeOnly ClassIcon scout_scallops_red } } WaveSpawn { Name "1rb" Where spawnbot_b TotalCount 9 MaxActive 3 SpawnCount 1 WaitBeforeStarting 5 WaitBetweenSpawns 1 TotalCurrency 100 DoneOutput { Target gamerules Action RunScriptCode Param " EntFire(`spawnbot_placeholder2`, `Enable`) " } TFBot { Class Pyro Skill Easy ClassIcon pyro_scallops_blue } } WaveSpawn { Name "1rc" Where spawnbot_b TotalCount 11 MaxActive 11 SpawnCount 1 WaitForAllDead "1rc_buffer" WaitBeforeStarting 0 WaitBetweenSpawns 0.1 TotalCurrency 100 TFBot { Class Pyro Skill Easy ClassIcon pyro_scallops_blue } } WaveSpawn { Name "1lc" Where spawnbot_a TotalCount 11 MaxActive 11 SpawnCount 1 WaitForAllDead "1lc_buffer" WaitBeforeStarting 0 WaitBetweenSpawns 0.15 TotalCurrency 100 TFBot { Class Scout Skill Expert Attributes AlwaysCrit WeaponRestrictions MeleeOnly ClassIcon scout_scallops_red } } } Wave { InitWaveOutput { Target gamerules Action RunScriptCode Param //Placeholder spawns are used to have greater control over when robots spawn " EntFire(`wave_init_relay`, `Trigger`) EntFire(`placeholder_relay_killer_enable_all`, `Trigger`) EntFire(`spawnbot_placeholder1`, `Disable`) EntFire(`spawnbot_placeholder2`, `Disable`) EntFire(`spawnbot_placeholder3`, `Disable`) EntFire(`spawnbot_placeholder4`, `Disable`) " } StartWaveOutput { Action "trigger" Target "wave_start_relay" } DoneOutput { Action "trigger" Target "wave_finished_relay" } WaveSpawn { Name "2la" Where spawnbot_a TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0.0 WaitBetweenSpawns 5 TotalCurrency 100 FirstSpawnOutput { Target gamerules Action RunScriptCode Param " EntFire(`spawnbot_placeholder1`, `Enable`, null, 30) " } DoneOutput { Target gamerules Action RunScriptCode Param " EntFire(`spawnbot_placeholder1`, `Enable`) " } TFBot { Template T_TFBot_Giant_Heavyweapons ClassIcon heavy_scallops_red } } WaveSpawn { Name "2ra" Where spawnbot_b TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0.0 WaitBetweenSpawns 5 TotalCurrency 100 FirstSpawnOutput { Target gamerules Action RunScriptCode Param " EntFire(`spawnbot_placeholder2`, `Enable`, null, 30) " } DoneOutput { Target gamerules Action RunScriptCode Param " EntFire(`spawnbot_placeholder2`, `Enable`) " } TFBot { Template T_TFBot_Giant_Soldier_Spammer ClassIcon soldier_spammer_scallops_blue } } WaveSpawn //Dummy wavespawn to control spawn times { Name "2lb_buffer" Where spawnbot_placeholder1 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 3.0 WaitBetweenSpawns 5 TotalCurrency 0 Support Limited RandomChoice { Squad { TFBot { Class Scout Tag placeholder_kill1 } } } } WaveSpawn //Dummy wavespawn to control spawn times { Name "2rb_buffer" Where spawnbot_placeholder2 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 3.0 WaitBetweenSpawns 5 TotalCurrency 0 Support Limited RandomChoice { Squad { TFBot { Class Scout Tag placeholder_kill1 } } } } WaveSpawn { Name "2lb" Where spawnbot_a TotalCount 4 MaxActive 4 SpawnCount 4 WaitForAllSpawned 2lb_buffer WaitBeforeStarting 0.0 WaitBetweenSpawns 5 TotalCurrency 200 FirstSpawnOutput { Target gamerules Action RunScriptCode Param " EntFire(`spawnbot_placeholder3`, `Enable`, null, 30) " } DoneOutput { Target gamerules Action RunScriptCode Param " EntFire(`spawnbot_placeholder3`, `Enable`) " } Squad { TFBot { Template T_TFBot_Giant_Heavyweapons ClassIcon heavy_scallops_red } TFBot { Template T_TFBot_Medic_BigHeal ClassIcon medic_scallops_mix } TFBot { Template T_TFBot_Medic_BigHeal ClassIcon medic_scallops_mix } TFBot { Template T_TFBot_Medic_BigHeal ClassIcon medic_scallops_mix } } } WaveSpawn { Name "2rb" Where spawnbot_b TotalCount 4 MaxActive 4 SpawnCount 4 WaitForAllSpawned 2rb_buffer WaitBeforeStarting 0.0 WaitBetweenSpawns 5 TotalCurrency 200 FirstSpawnOutput { Target gamerules Action RunScriptCode Param " EntFire(`spawnbot_placeholder4`, `Enable`, null, 30) " } DoneOutput { Target gamerules Action RunScriptCode Param " EntFire(`spawnbot_placeholder4`, `Enable`) " } Squad { TFBot { Template T_TFBot_Giant_Soldier_Spammer ClassIcon soldier_spammer_scallops_blue } TFBot { Template T_TFBot_Medic_BigHeal ClassIcon medic_scallops_mix } TFBot { Template T_TFBot_Medic_BigHeal ClassIcon medic_scallops_mix } TFBot { Template T_TFBot_Medic_BigHeal ClassIcon medic_scallops_mix } } } WaveSpawn //Dummy wavespawn to control spawn times { Name "2lc_buffer" Where spawnbot_placeholder3 TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllSpawned "2lb" WaitBeforeStarting 3.0 WaitBetweenSpawns 5 TotalCurrency 0 Support Limited RandomChoice { Squad { TFBot { Class Scout Tag placeholder_kill1 } } } } WaveSpawn //Dummy wavespawn to control spawn times { Name "2rc_buffer" Where spawnbot_placeholder4 TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllSpawned "2rb" WaitBeforeStarting 3.0 WaitBetweenSpawns 5 TotalCurrency 0 Support Limited RandomChoice { Squad { TFBot { Class Scout Tag placeholder_kill1 } } } } WaveSpawn { Name "2lc" Where spawnbot_a TotalCount 4 MaxActive 4 SpawnCount 4 WaitForAllSpawned 2lc_buffer WaitBeforeStarting 0.0 WaitBetweenSpawns 5 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons ClassIcon heavy_scallops_red } TFBot { Template T_TFBot_Medic ClassIcon medic_uber_scallops_mix } TFBot { Template T_TFBot_Medic ClassIcon medic_uber_scallops_mix } TFBot { Template T_TFBot_Medic ClassIcon medic_uber_scallops_mix } } } WaveSpawn { Name "2rc" Where spawnbot_b TotalCount 4 MaxActive 4 SpawnCount 4 WaitForAllSpawned 2rc_buffer WaitBeforeStarting 0.0 WaitBetweenSpawns 5 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Soldier_Spammer ClassIcon soldier_spammer_scallops_blue } TFBot { Template T_TFBot_Medic ClassIcon medic_uber_scallops_mix } TFBot { Template T_TFBot_Medic ClassIcon medic_uber_scallops_mix } TFBot { Template T_TFBot_Medic ClassIcon medic_uber_scallops_mix } } } } Wave { InitWaveOutput { Target gamerules Action RunScriptCode Param //Placeholder spawns are used to have greater control over when robots spawn " EntFire(`wave_init_relay`, `Trigger`) EntFire(`placeholder_relay_killer_enable_all`, `Trigger`) EntFire(`spawnbot_placeholder1`, `Disable`) EntFire(`spawnbot_placeholder2`, `Disable`) " } StartWaveOutput { Action "trigger" Target "wave_start_relay" } DoneOutput { Action "trigger" Target "wave_finished_relay" } WaveSpawn //Dummy wavespawn to control spawn times { Name "3lc_buffer" Where spawnbot_placeholder1 TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllSpawned "3la" WaitBeforeStarting 3.0 WaitBetweenSpawns 5 TotalCurrency 0 Support Limited RandomChoice { Squad { TFBot { Class Scout Tag placeholder_kill1 } } } } WaveSpawn //Dummy wavespawn to control spawn times { Name "3rc_buffer" Where spawnbot_placeholder2 TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllSpawned "3ra" WaitBeforeStarting 3.0 WaitBetweenSpawns 5 TotalCurrency 0 Support Limited RandomChoice { Squad { TFBot { Class Scout Tag placeholder_kill1 } } } } WaveSpawn { Name "3la" Where spawnbot_a TotalCount 4 MaxActive 4 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 17.5 TotalCurrency 400 LastSpawnOutput { Target gamerules Action RunScriptCode Param //Placeholder spawns are used to have greater control over when robots spawn " EntFire(`spawnbot_placeholder1`, `Enable`, null, 17.5) " } DoneOutput { Target gamerules Action RunScriptCode Param //Placeholder spawns are used to have greater control over when robots spawn " EntFire(`spawnbot_placeholder1`, `Enable`) " } TFBot { Template T_TFBot_Giant_Demo_Burst ClassIcon demo_burst_scallops_red } } WaveSpawn { Name "3ra" Where spawnbot_b TotalCount 16 MaxActive 8 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 3.9 TotalCurrency 240 LastSpawnOutput { Target gamerules Action RunScriptCode Param //Placeholder spawns are used to have greater control over when robots spawn " EntFire(`spawnbot_placeholder2`, `Enable`, null, 17.5) " } DoneOutput { Target gamerules Action RunScriptCode Param //Placeholder spawns are used to have greater control over when robots spawn " EntFire(`spawnbot_placeholder2`, `Enable`) " } TFBot { Template T_TFBot_Heavyweapons_Fist ClassIcon heavy_steelfist_scallops_blue } } WaveSpawn { Name "3lc" Where spawnbot_a TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllDead "3lc_buffer" WaitBeforeStarting 0 WaitBetweenSpawns 20 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Heavyweapons_BrassBeast_Hatted ClassIcon heavy_brass_nys_scallops_red } } WaveSpawn { Name "3rc" Where spawnbot_b TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllDead "3rc_buffer" WaitBeforeStarting 0 WaitBetweenSpawns 5 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Heavyweapons_Heater_Hatted ClassIcon heavy_heater_scallops_blue } } WaveSpawn { Name "3lb" Where spawnbot_a TotalCount 36 MaxActive 6 SpawnCount 1 Support Limited WaitBeforeStarting 2 WaitBetweenSpawns 1.25 TotalCurrency 130 TFBot { Template T_TFBot_Sniper_Huntsman ClassIcon sniper_bow_scallops_mix } } WaveSpawn { Name "3rb" Where spawnbot_b TotalCount 36 MaxActive 6 SpawnCount 1 Support Limited WaitBeforeStarting 2 WaitBetweenSpawns 1.25 TotalCurrency 130 TFBot { Template T_TFBot_Sniper_Huntsman ClassIcon sniper_bow_scallops_mix } } } Wave { InitWaveOutput { Target gamerules Action RunScriptCode Param " EntFire(`wave_init_relay`, `Trigger`) " } StartWaveOutput { Action "trigger" Target "wave_start_relay" } DoneOutput { Action "trigger" Target "wave_finished_relay" } WaveSpawn { Name 4l_firsttank TotalCurrency 400 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 10 Where spawnbot_a Support Limited RandomChoice { RandomChoice { Tank { Health 20000 Name tankboss StartingPathTrackNode "boss_path_a_1" Speed 75 OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } } } WaveSpawn { Name tank_icon TotalCurrency 0 TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllDead 4l_firsttank WaitBeforeStarting 0 WaitBetweenSpawns 10 Where spawnbot_placeholder_tank TFBot { Class Scout Tag tank_icon_placeholder Name "Tank" Attributes MiniBoss ClassIcon tank_scallops_red BehaviorModifiers Push Attributes IgnoreFlag } } WaveSpawn { Name "4lb" Where spawnbot_a TotalCount 5 MaxActive 5 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 12 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Pyro_DF ClassIcon pyro_dragon_fury_swordstone_scallops_red } } WaveSpawn { Name "4ra" Where spawnbot_b TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 20 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Soldier_Crit ClassIcon soldier_crit_scallops_blue } } WaveSpawn { Name "4ra" Where spawnbot_b TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 1 WaitBetweenSpawns 20 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Soldier_Crit ClassIcon soldier_crit_scallops_blue } } WaveSpawn { Name "4ra" Where spawnbot_b TotalCount 2 MaxActive 2 SpawnCount 2 WaitBeforeStarting 35 WaitBetweenSpawns 20 TotalCurrency 200 TFBot { Template T_TFBot_Giant_Soldier_Crit ClassIcon soldier_crit_scallops_blue } } WaveSpawn { Name "4rb" Where spawnbot_b TotalCount 50 MaxActive 8 SpawnCount 1 Support 1 WaitBeforeStarting 5 WaitBetweenSpawns 1 TotalCurrency 50 TFBot { Class Scout Skill Easy ClassIcon scout_scallops_blue } } WaveSpawn { Name "4rb" Where spawnbot_b TotalCount 50 MaxActive 6 SpawnCount 1 Support 1 WaitBeforeStarting 5 WaitBetweenSpawns 2 TotalCurrency 50 TFBot { Class Demoman Skill Hard ClassIcon demo_scallops_blue } } } Wave { InitWaveOutput { Target gamerules Action RunScriptCode Param //Semi WFAD spawns the next wavespawn after X bots have died in that group " EntFire(`wave_init_relay`, `Trigger`) IncludeScript(`scallops_semi_wfad_counter.nut`) initializeWFADcaps(4, 4, 6, 38) " } StartWaveOutput { Action "trigger" Target "wave_start_relay" } DoneOutput { Action "trigger" Target "wave_finished_relay" } WaveSpawn //Dummy wavespawn to control spawn times { Name "5lb_buffer" Where spawnbot_placeholder1 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 2.0 WaitBetweenSpawns 5 TotalCurrency 0 Support Limited RandomChoice { Squad { TFBot { Class Scout Tag placeholder_kill1 } } } } WaveSpawn //Dummy wavespawn to control spawn times { Name "5lc_buffer" Where spawnbot_placeholder2 TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllDead "5lb_buffer" WaitBeforeStarting 2.0 WaitBetweenSpawns 5 TotalCurrency 0 Support Limited RandomChoice { Squad { TFBot { Class Scout Tag placeholder_kill1 } } } } WaveSpawn { Name "5le" Where spawnbot_a TotalCount 16 MaxActive 4 SpawnCount 2 WaitBeforeStarting 2 WaitBetweenSpawns 9 TotalCurrency 80 TFBot { Class Soldier Attributes AlwaysCrit ClassIcon soldier_scallops_red Tag "semiwfad3" Tag "semiwfad4" } } WaveSpawn //Dummy wavespawn to control spawn times { Name "5ld_buffer" Where spawnbot_placeholder3 TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllDead "5lc_buffer" WaitBeforeStarting 2.0 WaitBetweenSpawns 5 TotalCurrency 0 Support Limited RandomChoice { Squad { TFBot { Class Scout Tag placeholder_kill1 } } } } WaveSpawn //Dummy wavespawn to control spawn times { Name "5xe_buffer" Where spawnbot_placeholder4 TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllDead "5ld_buffer" WaitBeforeStarting 2.0 WaitBetweenSpawns 5 TotalCurrency 0 Support Limited RandomChoice { Squad { TFBot { Class Scout Tag placeholder_kill1 } } } } WaveSpawn { Name "5la" Where spawnbot_a TotalCount 8 MaxActive 8 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 7 TotalCurrency 100 Squad { TFBot { Class Heavy Skill Hard ClassIcon heavy_scallops_red Tag "semiwfad1" Tag "semiwfad4" } TFBot { Template T_TFBot_Medic_InfPop ClassIcon medic_infpop_scallops_red Tag "semiwfad1" Tag "semiwfad4" } } } WaveSpawn { Name "5lb" Where spawnbot_a TotalCount 8 MaxActive 8 SpawnCount 2 WaitForAllDead "5lb_buffer" WaitBeforeStarting 0 WaitBetweenSpawns 7 TotalCurrency 100 Squad { TFBot { Class Heavy Skill Hard ClassIcon heavy_scallops_red Tag "semiwfad2" Tag "semiwfad4" } TFBot { Template T_TFBot_Medic_Shield ClassIcon medic_shield_lite_scallops_red Tag "semiwfad2" Tag "semiwfad4" } } } WaveSpawn { Name "5lc" Where spawnbot_a TotalCount 8 MaxActive 8 SpawnCount 2 WaitForAllDead "5lc_buffer" WaitBeforeStarting 0 WaitBetweenSpawns 7 TotalCurrency 100 Squad { TFBot { Class Heavy Skill Hard ClassIcon heavy_scallops_red Tag "semiwfad3" Tag "semiwfad4" } TFBot { Template T_TFBot_Medic ClassIcon medic_uber_scallops_red Tag "semiwfad3" Tag "semiwfad4" } } } WaveSpawn { Name "5ld" Where spawnbot_a TotalCount 8 MaxActive 8 SpawnCount 1 WaitForAllDead "5ld_buffer" WaitBeforeStarting 0 WaitBetweenSpawns 0.1 TotalCurrency 100 TFBot { Class Heavy Skill Hard ClassIcon heavy_scallops_red Tag "semiwfad3" Tag "semiwfad4" } } WaveSpawn { Name "5ra" Where spawnbot_b TotalCount 12 MaxActive 4 SpawnCount 1 WaitBeforeStarting 2 WaitBetweenSpawns 5 TotalCurrency 120 TFBot { Template T_TFBot_Heavyweapons_Fist ClassIcon heavy_steelfist_scallops_blue Tag "semiwfad4" } } WaveSpawn { Name "5rb" Where spawnbot_b TotalCount 4 MaxActive 4 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 20 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Heavyweapons_Deflector ClassIcon heavy_deflector_scallops_blue Tag "semiwfad4" } } WaveSpawn { Name "5le" Where spawnbot_a TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllDead "5xe_buffer" WaitBeforeStarting 0 WaitBetweenSpawns 20 TotalCurrency 400 TFBot { Template T_TFBot_Giant_Soldier_Spammer_Reload ClassIcon soldier_burstfire_scallops_mix } } WaveSpawn { Name "5re" Where spawnbot_b TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllDead "5xe_buffer" WaitBeforeStarting 0 WaitBetweenSpawns 20 TotalCurrency 400 TFBot { Template T_TFBot_Giant_Soldier_Spammer_Reload ClassIcon soldier_burstfire_scallops_mix } } } Wave { InitWaveOutput { Target gamerules Action RunScriptCode Param //Placeholder spawns are used to have greater control over when robots spawn " EntFire(`wave_init_relay`, `Trigger`) EntFire(`placeholder_relay_killer_enable_all`, `Trigger`) EntFire(`spawnbot_placeholder1`, `Disable`) EntFire(`spawnbot_placeholder2`, `Disable`) EntFire(`spawnbot_placeholder3`, `Disable`) EntFire(`spawnbot_placeholder4`, `Disable`) " } StartWaveOutput { Action "trigger" Target "wave_start_relay" } DoneOutput { Action "trigger" Target "wave_finished_relay" } WaveSpawn //Dummy wavespawn to control spawn times { Name "6lb_buffer" Where spawnbot_placeholder1 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 2.0 WaitBetweenSpawns 5 TotalCurrency 0 Support Limited RandomChoice { Squad { TFBot { Class Scout Tag placeholder_kill1 } } } } WaveSpawn //Dummy wavespawn to control spawn times { Name "6rb_buffer" Where spawnbot_placeholder2 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 2.0 WaitBetweenSpawns 5 TotalCurrency 0 Support Limited RandomChoice { Squad { TFBot { Class Scout Tag placeholder_kill1 } } } } WaveSpawn { Name "6la" Where spawnbot_a TotalCount 2 MaxActive 2 SpawnCount 2 WaitBeforeStarting 0.0 WaitBetweenSpawns 30 TotalCurrency 125 LastSpawnOutput { Target gamerules Action RunScriptCode Param //Placeholder spawns are used to have greater control over when robots spawn " EntFire(`spawnbot_placeholder1`, `Enable`, null, 18) " } DoneOutput { Target gamerules Action RunScriptCode Param //Placeholder spawns are used to have greater control over when robots spawn " EntFire(`spawnbot_placeholder1`, `Enable`) " } Squad { TFBot { Template T_TFBot_Giant_Heavyweapons_Deflector ClassIcon heavy_deflector_scallops_red } TFBot { Template T_TFBot_Giant_Medic_Regen ClassIcon medic_scallops_mix } } } WaveSpawn { Name "6ra" Where spawnbot_b TotalCount 2 MaxActive 2 SpawnCount 2 WaitBeforeStarting 0.0 WaitBetweenSpawns 16 TotalCurrency 125 LastSpawnOutput { Target gamerules Action RunScriptCode Param //Placeholder spawns are used to have greater control over when robots spawn " EntFire(`spawnbot_placeholder2`, `Enable`, null, 18) " } DoneOutput { Target gamerules Action RunScriptCode Param //Placeholder spawns are used to have greater control over when robots spawn " EntFire(`spawnbot_placeholder2`, `Enable`) " } Squad { TFBot { Template T_TFBot_Giant_Soldier_Spammer ClassIcon soldier_spammer_scallops_blue } TFBot { Template T_TFBot_Giant_Medic_Regen ClassIcon medic_scallops_mix } } } WaveSpawn { Name "6lb" Where spawnbot_a TotalCount 12 MaxActive 8 SpawnCount 2 WaitForAllDead "6lb_buffer" WaitBeforeStarting 0 WaitBetweenSpawns 2 TotalCurrency 50 Squad { TFBot { Template T_TFBot_Heavy_Hyper ClassIcon heavy_scallops_red } TFBot { Template T_TFBot_Medic ClassIcon medic_uber_scallops_red } } } WaveSpawn { Name "6rb" Where spawnbot_b TotalCount 4 MaxActive 4 SpawnCount 2 WaitForAllDead 6rb_buffer WaitBeforeStarting 20 WaitBetweenSpawns 0 TotalCurrency 200 TFBot { Template T_TFBot_Giant_Soldier_Crit ClassIcon soldier_crit_scallops_blue } } WaveSpawn { Where spawnbot_b TotalCount 36 MaxActive 2 SpawnCount 1 WaitForAllSpawned "6rb" WaitBeforeStarting 3 WaitBetweenSpawns 2 Support Limited TotalCurrency 100 TFBot { Template T_TFBot_Demo_Burst Attributes AlwaysCrit ClassIcon demo_burst_scallops_mix } } WaveSpawn { Name "6lc" Where spawnbot_a TotalCount 12 MaxActive 8 SpawnCount 2 WaitForAllSpawned "6lb" WaitBeforeStarting 5 WaitBetweenSpawns 2 TotalCurrency 50 Squad { TFBot { Template T_TFBot_Heavy_Hyper ClassIcon heavy_scallops_red } TFBot { Template T_TFBot_Medic ClassIcon medic_uber_scallops_red } } } WaveSpawn { Name 6ld TotalCurrency 400 TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllDead "6lb_buffer" WaitBeforeStarting 2 WaitBetweenSpawns 30 Where spawnbot_a Support Limited RandomChoice { RandomChoice { Tank { Health 27500 Name tankboss Speed 75 Skin 1 //ClassIcon tank_scallops_red StartingPathTrackNode "boss_path_a_1" OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } } } WaveSpawn { Name tank_icon TotalCurrency 0 TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllDead 6ld WaitBeforeStarting 0 WaitBetweenSpawns 10 Where spawnbot_placeholder_tank TFBot { Class Scout Tag tank_icon_placeholder Name "Tank" Attributes MiniBoss ClassIcon tank_scallops_mix BehaviorModifiers Push Attributes IgnoreFlag } } WaveSpawn { Name 6rc TotalCurrency 400 TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllDead "6rb_buffer" WaitBeforeStarting 2 WaitBetweenSpawns 30 Where spawnbot_a Support Limited RandomChoice { RandomChoice { Tank { Health 27500 Name tankboss Speed 75 Skin 1 //ClassIcon tank_scallops_red StartingPathTrackNode "boss_path_b_1" OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } } } WaveSpawn { Name tank_icon TotalCurrency 0 TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllDead 6rc WaitBeforeStarting 0 WaitBetweenSpawns 10 Where spawnbot_placeholder_tank TFBot { Class Scout Tag tank_icon_placeholder Name "Tank" Attributes MiniBoss ClassIcon tank_scallops_mix BehaviorModifiers Push Attributes IgnoreFlag } } WaveSpawn { Name "6le" Where spawnbot_a TotalCount 3 MaxActive 3 SpawnCount 1 WaitForAllSpawned "6lb" WaitBeforeStarting 13 WaitBetweenSpawns 11 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Heavyweapons_BrassBeast_Hatted ClassIcon heavy_brass_nys_scallops_red } } WaveSpawn { Name "6rd" Where spawnbot_b TotalCount 3 MaxActive 3 SpawnCount 1 WaitForAllSpawned "6rb" WaitBeforeStarting 21 WaitBetweenSpawns 11 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Heavyweapons_Heater_Hatted ClassIcon heavy_heater_scallops_blue } } WaveSpawn { Name "6lf" Where spawnbot_a TotalCount 40 MaxActive 6 SpawnCount 3 Support 1 WaitForAllDead "6lb" WaitBeforeStarting 5 WaitBetweenSpawns 5 TotalCurrency 100 TFBot { Template T_TFBot_Demo_Burst Attributes AlwaysCrit ClassIcon demo_burst_scallops_mix } } WaveSpawn { Name "6re" Where spawnbot_b TotalCount 40 MaxActive 6 SpawnCount 1 Support 1 WaitForAllDead "6rb" WaitBeforeStarting 5 WaitBetweenSpawns 0.9 TotalCurrency 100 TFBot { Template T_TFBot_Demo_Burst Attributes AlwaysCrit ClassIcon demo_burst_scallops_mix } } } }