#base robot_giant.pop #base robot_standard.pop WaveSchedule { StartingCurrency 800 RespawnWaveTime 5 CanBotsAttackWhileInSpawnRoom no Templates { T_TFBot_Giant_Demoman_Knight { Class Demoman Name "Giant Demoknight" ClassIcon demoknight Health 6600 Skill Expert Item "The Chargin' Targe" Item "The Eyelander" WeaponRestrictions MeleeOnly Attributes MiniBoss ItemAttributes { ItemName "The Eyelander" "critboost on kill" 3 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.5 "airblast vulnerability multiplier" 0.5 "override footstep sound set" 4 } } T_TFBot_Medic_Kritz { Name "Kritz Medic" ClassIcon medic_kritz Class Medic Skill Expert Health 300 Attributes SpawnWithFullCharge Item "The Kritzkrieg" ItemAttributes { ItemName "The Kritzkrieg" "uber duration bonus" 999 "ubercharge rate bonus" 10 } ItemAttributes { ItemName "TF_WEAPON_SYRINGEGUN_MEDIC" "damage penalty" 0.1 } CharacterAttributes { "bot medic uber health threshold" 9999 } } } Mission { Objective DestroySentries Where spawnbot CooldownTime 30 TFBot { Template T_TFBot_SentryBuster } } Mission { Objective Sniper Where spawnbot_mission_sniper BeginAtWave 2 RunForThisManyWaves 1 CooldownTime 60 InitialCooldown 15 DesiredCount 3 TFBot { Template T_TFBot_Sniper } } Mission { Objective Spy Where spawnbot_mission_spy BeginAtWave 3 RunForThisManyWaves 1 CooldownTime 60 InitialCooldown 30 DesiredCount 2 TFBot { Template T_TFBot_Spy } } // Wave 1 $700 // Scouts -> Giant Demoknights -> Soldier+Heavies -> Giant Demos + Pyro support // Notes: more scouts, more pyros, 2nd giant demos come too late and spawn too slow Wave { StartWaveOutput { Target bombpath_arrows_clear_relay Action Trigger } DoneOutput { Target bombpath_wavefinished Action Trigger } WaitWhenDone 65 Checkpoint Yes WaveSpawn { Name "wave01a" Where spawnbot TotalCount 20 SpawnCount 2 MaxActive 11 WaitBetweenSpawns 5 WaitBeforeStarting 0 TotalCurrency 100 Squad { TFBot { Class Scout Item "The Fan O'War" ClassIcon scout_fanowar WeaponRestrictions MeleeOnly Attributes AlwaysFireWeapon Health 250 } TFBot { Class Scout Health 250 Skill Hard } } } WaveSpawn { Name "wave01b" Where spawnbot_left TotalCount 4 SpawnCount 1 MaxActive 3 WaitBetweenSpawns 20 WaitBeforeStarting 20 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Demoman_Knight } } WaveSpawn { Name "wave01c" Where spawnbot TotalCount 20 SpawnCount 2 MaxActive 8 WaitBetweenSpawns 10 WaitForAllSpawned "wave01a" TotalCurrency 100 TFBot { Class Soldier Health 400 } } WaveSpawn { Name "wave01d" Where spawnbot TotalCount 10 SpawnCount 1 MaxActive 8 WaitBetweenSpawns 11 WaitBeforeStarting 2 WaitForAllSpawned "wave01a" TotalCurrency 100 TFBot { Class Heavyweapons Health 600 } } WaveSpawn { Name "wave01e" Where spawnbot TotalCount 4 SpawnCount 1 MaxActive 4 WaitBetweenSpawns 20 WaitBeforeStarting 0 WaitForAllDead "wave01b" WaitForAllSpawned "wave01c" WaitForAllSpawned "wave01d" TotalCurrency 200 TFBot { Template T_TFBot_Giant_Demoman Health 6600 } } WaveSpawn { Name "wave01f" Where spawnbot TotalCount 20 SpawnCount 1 MaxActive 8 WaitBetweenSpawns 5 WaitBeforeStarting 20 WaitForAllDead "wave01a" WaitForAllSpawned "wave01c" WaitForAllSpawned "wave01d" Support 1 TotalCurrency 100 TFBot { Template T_TFBot_Pyro Health 350 } } } // Wave 2 $750 // Random ext. Soldiers + Tank -> Pyro + Medic -> Giant Heavy + Medics -> Sandman support // Pyros too slow, heavies spawn too fast, soldier start fixed already // Fixed all Wave { StartWaveOutput { Target bombpath_arrows_clear_relay Action Trigger } DoneOutput { Target bombpath_wavefinished Action Trigger } WaitWhenDone 65 Checkpoint Yes WaveSpawn { Name "wave02a" Where spawnbot TotalCount 20 SpawnCount 1 MaxActive 8 WaitBetweenSpawns 3 WaitBeforeStarting 0 TotalCurrency 100 RandomChoice { TFBot { Template T_TFBot_Soldier_Extended_Battalion Health 400 } TFBot { Template T_TFBot_Soldier_Extended_Buff_Banner Health 400 } TFBot { Template T_TFBot_Soldier_Extended_Concheror Health 400 } } } WaveSpawn { Name "wave02b" TotalCount 1 WaitBeforeStarting 10 TotalCurrency 150 Tank { Health 20000 Speed 75 Name "tankboss_left" StartingPathTrackNode "boss_path_1" OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name "wave02c" Where spawnbot TotalCount 30 SpawnCount 2 MaxActive 10 WaitBetweenSpawns 10 WaitBeforeStarting 0 WaitForAllSpawned "wave02a" // Random sollies WaitForAllDead "wave02b" // Tank TotalCurrency 150 Squad { TFBot { Template T_TFBot_Pyro Health 350 } TFBot { Template T_TFBot_Medic_QuickFix Health 300 } } } WaveSpawn { Name "wave02d" Where spawnbot_left TotalCount 8 SpawnCount 4 MaxActive 7 WaitBetweenSpawns 30 WaitBeforeStarting 10 WaitForAllSpawned "wave02a" // Random sollies WaitForAllDead "wave02b" // Tank TotalCurrency 250 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons_Deflector Attributes UseBossHealthBar Health 10000 } TFBot { Template T_TFBot_Medic Health 300 } TFBot { Template T_TFBot_Medic Health 300 } TFBot { Template T_TFBot_Medic Health 300 } } } WaveSpawn { Name "wave02e" Where spawnbot TotalCount 10 SpawnCount 2 MaxActive 8 WaitBetweenSpawns 10 WaitBeforeStarting 0 WaitForAllSpawned "wave02c" Support 1 TotalCurrency 100 TFBot { Template T_TFBot_Scout_Sandman Health 250 } } } // Wave 3 $800 // Random choice heavy+soldier+demo+pyro mess -> Shortstop -> Giant Shotgun -> // Demoknight -> More Giant Shotguns+kritz -> Soldier support Wave { StartWaveOutput { Target bombpath_arrows_clear_relay Action Trigger } DoneOutput { Target bombpath_wavefinished Action Trigger } WaitWhenDone 65 Checkpoint Yes WaveSpawn { Name "wave03a" Where spawnbot TotalCount 40 SpawnCount 1 MaxActive 12 WaitBetweenSpawns 2 WaitBeforeStarting 0 TotalCurrency 200 RandomChoice { TFBot { Class Soldier Health 400 } TFBot { Class Pyro Health 350 } TFBot { Class Demoman Health 350 } TFBot { Class Heavyweapons Health 600 } } } WaveSpawn { Name "wave03b" Where spawnbot_lower TotalCount 10 SpawnCount 1 MaxActive 6 WaitBetweenSpawns 5 WaitBeforeStarting 45 // Later 30->45 TotalCurrency 100 TFBot { Template T_TFBot_Scout_Shortstop Health 1300 Attributes MiniBoss } } WaveSpawn { Name "wave03c" Where spawnbot_left TotalCount 4 SpawnCount 1 MaxActive 2 WaitBetweenSpawns 20 WaitBeforeStarting 0 WaitForAllDead "wave03a" WaitForAllDead "wave03b" TotalCurrency 150 TFBot { Template T_TFBot_Giant_Heavyweapons_Shotgun Health 10000 Attributes UseBossHealthBar ItemAttributes { ItemName "TF_WEAPON_SHOTGUN_HWG" "fire rate bonus" 0.5 "bullets per shot bonus" 5 "clip size penalty" 5.0 "damage penalty" 0.1 "faster reload rate" 0.1 } } } WaveSpawn { Name "wave03d" Where spawnbot_right TotalCount 30 SpawnCount 4 MaxActive 12 WaitBetweenSpawns 15 WaitBeforeStarting 15 WaitForAllDead "wave03a" WaitForAllDead "wave03b" TotalCurrency 100 TFBot { Template T_TFBot_Demoman_Knight Health 350 } } WaveSpawn { Name "wave03e" Where spawnbot_right TotalCount 8 SpawnCount 2 MaxActive 4 WaitBetweenSpawns 20 WaitBeforeStarting 20 WaitForAllDead "wave03c" TotalCurrency 150 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons_Shotgun Health 10000 Attributes UseBossHealthBar ItemAttributes { ItemName "TF_WEAPON_SHOTGUN_HWG" "fire rate bonus" 0.5 "bullets per shot bonus" 5 "clip size penalty" 5.0 "damage penalty" 0.1 "faster reload rate" 0.1 } } TFBot { Template T_TFBot_Medic_Kritz Health 300 } } } WaveSpawn { Name "wave03f" Where spawnbot TotalCount 20 SpawnCount 2 MaxActive 10 WaitBetweenSpawns 10 WaitBeforeStarting 0 WaitForAllDead "wave03d" Support 1 TotalCurrency 100 TFBot { Class Soldier Health 400 } } } }