#base robot_giant.pop #base robot_standard.pop WaveSchedule { StartingCurrency 1300 RespawnWaveTime 5 CanBotsAttackWhileInSpawnRoom no AllowBotExtraSlots 1 SandmanStun 1 UseOriginalAnimsForUnintendedClassWeapons 1 ForceHoliday 2 NoThrillerTaunt 1 NoCritPumpkin 1 NoHolidayPickups 1 TextPrintTime 0 PointTemplates { Widowmaker_Dudebro_Logic //engineer stuff - royal { NoFixup 1 logic_relay { "targetname" "switch_to_sentry_mode" "spawnflags" "2" "OnTrigger" "!self,EnableRefire,,0,-1" "OnTrigger" "!activator,$WeaponSwitchSlot,5,0,-1" "OnTrigger" "!activator,$AddPlayerAttribute,disable weapon switch|1,0.01,-1" } logic_relay { "targetname" "switch_to_shotgun_mode" "spawnflags" "2" "OnTrigger" "!self,EnableRefire,,0,-1" "OnTrigger" "!activator,$RemovePlayerAttribute,disable weapon switch,0,-1" "OnTrigger" "!activator,$WeaponSwitchSlot,0,0.1,-1" } } Music_Logic { NoFixup 1 logic_relay { "targetname" "music_relay_loop" "spawnflags" "2" "OnTrigger" "tf_gamerules,PlayVO,technical_turncoat_boss_1.mp3,0,-1" "OnTrigger" "music_relay_loop,Trigger,,224,-1" "OnTrigger" "bots_win,AddOutput,OnRoundWin music_relay_stop:Trigger:0:-1" } logic_relay { "targetname" "music_relay_stop" "spawnflags" "2" "OnTrigger" "tf_gamerules,$StopVO,technical_turncoat_boss_1.mp3,0,-1" "OnTrigger" "music_relay_loop,CancelPending,,0,-1" } } } ExtraSpawnPoint //Adds spawn points on specified location { Name "spawnbot_boss_cleo" TeamNum 3 X "64" Y "2112" Z "236" } PrecacheSound "technical_turncoat_boss_1.mp3" Mission // sentry buster { Objective DestroySentries InitialCooldown 20 Where spawnbot BeginAtWave 1 RunForThisManyWaves 9 CooldownTime 40 TFBot { Template T_TFBot_SentryBuster } } //WAVE 1 //Currency 600 /////////////////////////////////////////////////////////////////////////////////////////////////////// Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaitWhenDone 65 Checkpoint Yes WaveSpawn //WAVE 01a: 36 total, 6 active, Slowfire Scout { Name "wave01a" Where spawnbot_invasion TotalCount 36 MaxActive 6 SpawnCount 6 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 50 TFBot { Class Scout Name "Slowfire Scout" Skill Easy ItemAttributes { ItemName "TF_WEAPON_SCATTERGUN" "fire rate bonus" 1.15 //fire slower } } } WaveSpawn //WAVE 01b: 36 total, 6 active, Demoman { Name "wave01b" Where spawnbot_invasion TotalCount 36 MaxActive 6 SpawnCount 6 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 50 TFBot { Template T_TFBot_Demoman } } WaveSpawn //WAVE 01c: total, 1 active, Giant Soldier { Name "wave01c" Where spawnbot TotalCount 3 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 100 StartWaveMessage "{blue}???{reset} : Well, look who decided to finally show up." FirstSpawnMessage "{blue}???{reset} : I had a feeling you dumbasses would pop up here the moment robot activity was detected." LastSpawnMessage "{blue}???{reset} : By the looks of things, you guys are doing a fairly decent job at cleaning up our... 'mess', huh?" TFBot { Template T_TFBot_Giant_Soldier } } WaveSpawn //WAVE 01d: 78 total, 13 active, Bowman { Name "wave01d" WaitForAllDead "wave01a" WaitForAllDead "wave01b" Where spawnbot_giant TotalCount 36 MaxActive 13 SpawnCount 13 WaitBeforeStarting 3 WaitBetweenSpawns 0 TotalCurrency 50 TFBot { Template T_TFBot_Sniper_Huntsman } } WaveSpawn //WAVE 01e: 36 total, 6 active, Super Heavyweight Champ { Name "wave01e" WaitForAllDead "wave01c" Where spawnbot TotalCount 9 MaxActive 6 SpawnCount 3 WaitBeforeStarting 3 WaitBetweenSpawns 6 TotalCurrency 100 StartWaveMessage "{blue}???{reset} : Not that your efforts matter. After all..." FirstSpawnMessage "{blue}???{reset} : ...What you're going up against right now is normal. Routine, even." LastSpawnMessage "{blue}???{reset} : But that is about to change." TFBot { Template T_TFBot_Giant_Boxing_Heavy } } WaveSpawn //WAVE 01f: 12 total, 4 active, Giant Richochet Sniper { Name "wave01f" WaitForAllDead "wave01e" Where spawnbot TotalCount 12 MaxActive 4 SpawnCount 2 WaitBeforeStarting 6 WaitBetweenSpawns 6 TotalCurrency 250 StartWaveMessage "{blue}???{reset} : Here. Allow me to show you..." FirstSpawnMessage "{blue}???{reset} : ...Why you should consider me a threat." TFBot { Class Sniper Name "Giant Richochet Bowman" Item "The Fortified Compound" Item "The Aimframe" ClassIcon sniper_bow_giant Skill Expert MaxVisionRange 1200 Health 2400 Attributes MiniBoss ItemAttributes { ItemName "The Fortified Compound" "grenade bounce speed" 0.9 "arrow target bounce speed" 0.9 "reset arrow hits on bounce" 1 "fire rate bonus" 1 "damage bonus" 0.25 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 5 } } } WaveSpawn //WAVE 01 Support 1: 12 active, Heavyweight Champ { Name "wave01support1" WaitForAllDead "wave01d" Where spawnbot_giant TotalCount 12 MaxActive 12 SpawnCount 3 WaitBeforeStarting 6 WaitBetweenSpawns 3 Support 1 TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ } } } //WAVE 2 //Currency 1200 /////////////////////////////////////////////////////////////////////////////////////////////////////// Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaitWhenDone 65 Checkpoint Yes Explanation //Dispayed once the wave is initialized { Line "{blue}???{reset} : Still standing after that are we? Figures." Line "{blue}???{reset} : You guys have always been quite the stubborn bunch, after all." Line "{blue}???{reset} : Go ahead, lick your wounds. It won't change the outcome of what happens here today." } WaveSpawn //WAVE 02a: 36 total, 12 active, Richochet Bowmen, Multishot Bowmen, Igniter Bowmen, Extended Backup Soldier { Name "wave02a" Where spawnbot_invasion TotalCount 36 MaxActive 12 SpawnCount 6 WaitBeforeStarting 0 WaitBetweenSpawns 3 TotalCurrency 300 StartWaveMessage "{blue}???{reset} : Itching for a fight, huh? Very well." FirstSpawnMessage "{blue}???{reset} : Let's continue where we left off, at the part where you become human pincushions." LastSpawnMessage "{blue}???{reset} : ..." Squad { TFBot { Class Sniper Name "Richochet Bowman" Skill Hard ClassIcon sniper_bow WeaponRestrictions PrimaryOnly Item "The Fortified Compound" Item "The Aimframe" ItemAttributes { ItemName "The Fortified Compound" "grenade bounce speed" 0.9 "arrow target bounce speed" 0.9 "reset arrow hits on bounce" 1 "damage bonus" 0.25 } } TFBot { Class Sniper Name "Multishot Bowman" Skill Hard ClassIcon sniper_bow_multi WeaponRestrictions PrimaryOnly Item "The Fortified Compound" Item "Spider Sights" Item "Hard Hearing" ItemAttributes { ItemName "The Fortified Compound" "arrow mastery" 1 "damage bonus" 0.25 } } TFBot { Class Sniper Name "Igniter Bowman" Skill Hard ClassIcon sniper_bow_ignite WeaponRestrictions PrimaryOnly Item "The Fortified Compound" Item "The HazMat Headcase" ItemAttributes { ItemName "The Fortified Compound" "arrow ignite" 1 "damage bonus" 0.25 } } TFBot { Template T_TFBot_Soldier_Extended_Battalion } TFBot { Template T_TFBot_Soldier_Extended_Battalion } TFBot { Template T_TFBot_Soldier_Extended_Battalion } } } WaveSpawn //WAVE 02b: 36 total, 12 active, Demoknight, Quick-Fix Medic, Extended Buff Banner Soldier { Name "wave02b" Where spawnbot_invasion WaitForAllDead "wave02a" TotalCount 36 MaxActive 12 SpawnCount 3 WaitBeforeStarting 3 WaitBetweenSpawns 3 TotalCurrency 150 FirstSpawnMessage "{blue}???{reset} : ...Guess I'll have to cleave through your defenses the hard way if arrows aren't doing the trick." LastSpawnMessage "{blue}???{reset} : ...Haah." Squad { TFBot { Template T_TFBot_Demoman_Knight } TFBot { Template T_TFBot_Medic_QuickFix } TFBot { Template T_TFBot_Soldier_Extended_Buff_Banner } } } WaveSpawn //WAVE 02c: 36 total, 12 active, Demoknight, Quick-Fix Medic, Extended Buff Banner Soldier { Name "wave02c" Where spawnbot_invasion WaitForAllDead "wave02b" TotalCount 36 MaxActive 12 SpawnCount 6 WaitBeforeStarting 3 WaitBetweenSpawns 6 TotalCurrency 350 FirstSpawnMessage "{blue}???{reset} : I swear to god if this won't make you burn through your supplies..." LastSpawnMessage "{blue}???{reset} : . . ." Squad { TFBot { Template T_TFBot_Giant_Pyro } TFBot { Template T_TFBot_Soldier_Extended_Concheror } TFBot { Template T_TFBot_Soldier_Extended_Concheror } TFBot { Template T_TFBot_Soldier_Extended_Concheror } TFBot { Template T_TFBot_Soldier_Extended_Concheror } TFBot { Template T_TFBot_Soldier_Extended_Concheror } } } WaveSpawn //WAVE 02d: 1 total, 1 active, Tank { TotalCount 1 WaitBeforeStarting 6 TotalCurrency 450 WaitForAllDead "wave02c" StartWaveMessage "{blue}???{reset} : Fine then! If you won't make way for our cause..." FirstSpawnMessage "{blue}???{reset} : ...Then I'll have to force you to do so." 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 //WAVE 02 Support 1: 12 active, Super Heavyweight Champ, Pitcher Scout { Name "wave02support1" WaitForAllDead "wave02c" Where spawnbot_invasion TotalCount 12 MaxActive 12 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 12 Support 1 Squad { TFBot { Template T_TFBot_Giant_Boxing_Heavy } TFBot { Class Scout Name "Pitcher Scout" Skill Hard ClassIcon scout_blaster_ball WeaponRestrictions PrimaryOnly Item "Baby Face's Blaster" Item "Courtly Cuirass" Item "Bonk Batter's Backup" ItemAttributes { ItemName "Baby Face's Blaster" "override projectile type extra" "stunball" "mult projectile count" 3 "projectile spread angle mult" 3 "crit vs stunned players" 1 "crits_become_minicrits" 1 } } } } } //WAVE 3 //Currency 1800 /////////////////////////////////////////////////////////////////////////////////////////////////////// Wave { InitWaveOutput { Target "bignet" Action "RunScriptCode" Param " DoEntFire(`wave_init_relay`, `Trigger`, ``, 0, null, null); IncludeScript(`paint.nut`); " } StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaitWhenDone 65 Checkpoint Yes Explanation //Dispayed once the wave is initialized { Line "{blue}???{reset} : . . ." } WaveSpawn //WAVE 03a: 36 total, 12 active, Shotgun Heavy { Name "wave03a" Where spawnbot_invasion TotalCount 36 MaxActive 12 SpawnCount 3 WaitBeforeStarting 6 WaitBetweenSpawns 3 TotalCurrency 225 StartWaveMessage "{blue}???{reset} : . . ." FirstSpawnMessage "{blue}???{reset} : ...Enough. You WILL give up this facility whether you like it or not." LastSpawnMessage "{blue}???{reset} : It doesn't matter how much I have to throw at you, I cannot fail." TFBot { Template T_TFBot_Heavyweapons_Shotgun } } WaveSpawn //WAVE 03b: 36 total, 12 active, Charged Soldier { Name "wave03b" WaitForAllDead "wave03a" Where spawnbot_invasion TotalCount 36 MaxActive 12 SpawnCount 3 WaitBeforeStarting 3 WaitBetweenSpawns 3 TotalCurrency 225 StartWaveMessage "{blue}???{reset} : ...No, I WILL not fail. Not when they are..." FirstSpawnMessage "{blue}???{reset} : ...Forget it. None of you even care, do you?" LastSpawnMessage "{blue}???{reset} : Even if you did, I doubt you lead-brained idiots would even truly understand it anyways!" TFBot { Class Soldier Name "Charged Soldier" ClassIcon soldier_crit Skill Easy Item "The Original" Attributes AlwaysCrit WeaponRestrictions PrimaryOnly ItemAttributes { ItemName "The Original" "Projectile speed increased" 0.5 "damage penalty" 1.5 } } } WaveSpawn //WAVE 03c: 18 total, 12 active, Giant Demo, Uber Medics { Name "wave03c" WaitForAllDead "wave03b" Where spawnbot TotalCount 18 MaxActive 12 SpawnCount 6 WaitBeforeStarting 3 WaitBetweenSpawns 12 TotalCurrency 825 StartWaveMessage "{blue}???{reset} : On top of that, this is just a job to you. You have zero reason to even listen to me." FirstSpawnMessage "{blue}???{reset} : You just keep watch for robots, murder 'em, and then get paid for your efforts." LastSpawnMessage "{blue}???{reset} : I'm certain that not even once did the question of 'Why' cross your mind throughout all of this." Squad { TFBot { Class Demoman Name "Giant Demoman" ClassIcon demo_giant Health 3300 Skill Normal WeaponRestrictions PrimaryOnly Attributes MiniBoss CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.5 "airblast vulnerability multiplier" 0.5 "override footstep sound set" 4 } } 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 //WAVE 03d: 1 total, 1 active, Sergeant Bannerbox { Name "wave03d" WaitForAllDead "wave03c" Where spawnbot TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 6 WaitBetweenSpawns 0 TotalCurrency 525 StartWaveMessage "{blue}???{reset} : ...Whatever. I'm sick and tired of seeing your faces." FirstSpawnMessage "{blue}???{reset} : Just die already." TFBot { Class Soldier Skill Expert WeaponRestrictions PrimaryOnly Name "Sergeant Bannerbox" ClassIcon soldier_sergeant_bannerbox MaxVisionRange 12000 Health 20000 Scale 1.9 Item "The Warsworn Helmet" Item "The Black Box" Item "The Concheror" Tag "paint|702|3686984" Attributes MiniBoss Attributes UseBossHealthBar Attributes HoldFireUntilFullReload Attributes SpawnWithFullCharge ItemAttributes { ItemName "The Black Box" "clip size penalty" 1.75 "Reload time increased" 3 "mult projectile count" 3 "ignores other projectiles" 1 "projectile spread angle penalty" 2 "Projectile speed increased" 0.4 "damage penalty" 1.66 } ItemAttributes { ItemName "The Concheror" "effect cond override" 1907216 } ItemAttributes { ItemName "The Warsworn Helmet" "set item tint rgb" 3686984 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 "airblast vertical vulnerability multiplier" 0.1 "rage giving scale" 0.2 "increase buff duration" 18.0 } } } WaveSpawn //WAVE 03 Support 1: 1 active, Tank { Name "wave03support1" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 39 WaitBetweenSpawns 78 Support 1 FirstSpawnOutput { Target boss_spawn_relay Action Trigger } Tank { Health 7500 Speed 125 Name "tankboss" StartingPathTrackNode "boss_path_a1" OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn //WAVE 03 Support 2: 2 active, Phlogshot Pyro { Name "wave03support2" WaitForAllDead "wave03b" Where spawnbot_invasion TotalCount 2 MaxActive 2 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 6 Support 1 TFBot { Class Pyro Name "Phlogshot Pyro" Skill Expert ClassIcon pyro_scorch_phlog Item "The Phlogistinator" Item "The Scorch Shot" Action Sniper WeaponSwitch //Periodically switches weapon { Repeats 1 Type "Secondary" // Weapon slot, possible values: } Taunt //Taunt periodically { Repeats 1 IfHealthBelow 88 } WeaponSwitch //Periodically switches weapon { Repeats 1 IfHealthBelow 88 Type "Primary" // Weapon slot, possible values: } AddCond //Adds conditions to bots { Index 5 //Condition index can be used instead Delay 0 // Delay before the condition activates (Default: 0) Duration 4 // Duration of the condition effect (Default: -1 - infinite duration) IfHealthBelow 88 //When set, the condition is applied only when the bot health is below specified value } FireInput // Fires an input to an entity. Target !self and !activator refer to target the bot this block is on. { Repeats 1 IfHealthBelow 88 Target "!self" //Entity name to use Action "$BotCommand switch_action" //Input to fire Param "FetchFlag" //Parameter to use } AddCond //Adds conditions to bots { Index 11 //Condition index can be used instead Delay 4 // Delay before the condition activates (Default: 0) Duration -1 // Duration of the condition effect (Default: -1 - infinite duration) IfHealthBelow 88 //When set, the condition is applied only when the bot health is below specified value } } } } //WAVE 4 //Currency 0 /////////////////////////////////////////////////////////////////////////////////////////////////////// Wave { InitWaveOutput { Target "bignet" Action "RunScriptCode" Param " DoEntFire(`wave_init_relay`, `Trigger`, ``, 0, null, null); IncludeScript(`paint.nut`); " } StartWaveOutput { Target wave_start_relay Action trigger } DoneOutput { Target wave_finished_relay Action trigger } WaitWhenDone 65 Checkpoint Yes SpawnTemplate "Widowmaker_Dudebro_Logic" SpawnTemplate "Music_Logic" WaveSpawn //WAVE 04a: 1 total, 1 active { Name "wave04a" Where "spawnbot_boss_cleo" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 6 WaitBetweenSpawns 0 TotalCurrency 0 StartWaveMessage "{blue}???{reset} : ...Looks like I have no choice. If you want something done right..." TFBot { Class Engineer Action Mobber SuppressTimedFetchFlag 1 Name "Cleo, The Defected Engineer" ClassIcon boss_cleo_firstencounter Skill Expert Health 12500 MaxVisionRange 12000 Attributes UseBossHealthBar Attributes HoldFireUntilFullReload Attributes MiniBoss Attributes IgnoreFlag Scale 1 FireWeapon { Type Primary Delay 0.05 Cooldown 0.5 IfSeeTarget 1 } FireInput { Target switch_to_sentry_mode Action Trigger Delay 0 Cooldown 3.5 IfSeeTarget 1 } FireInput { Target switch_to_shotgun_mode Action Trigger Delay 0 Cooldown 1.5 IfSeeTarget 0 } Item "The Frontier Justice" Item "The Jag" Item "Hundekopf" Item "Snow Stompers" Item "Life Support System" Item "Underminer's Overcoat" UseHumanModel 1 Tag "paint|30543|15787660" Tag "paint|31334|15787660" Tag "paint|30487|15787660" CharacterAttributes { "damage bonus" 1.5 "damage force reduction" 0.3 "airblast vulnerability multiplier" 0 "building cost reduction" 1 "use human voice" 1 "engineer sentry build rate multiplier" 13 "engy building health bonus" 6 "cannot pick up intelligence" 1 "not solid to players" 1 "dmg taken increased" 0.5 } ItemAttributes { ItemName "Snow Stompers" "set item tint rgb" 15787660 } ItemAttributes { ItemName "Underminer's Overcoat" "set item tint rgb" 15787660 "item style override" 1 } ItemAttributes { ItemName "Hundekopf" "set item tint rgb" 15787660 } AddCond { Index 51 // Alternatively, use the index number. Both are found on the TFwiki "Cheats" page. Delay 0 // Default is 10. Delays can be good to give players time to react. Duration 6 // -1 = infinite (default). } AddCond { Index 87 // Alternatively, use the index number. Both are found on the TFwiki "Cheats" page. Delay 0 // Default is 10. Delays can be good to give players time to react. Duration 6 // -1 = infinite (default). } Message //Displays message in the chat { Name "{blue}Cleo, The Defected Engineer{reset} : ...You have to do it yourself." //Message in the chat displayed Delay 3 //Time before the message is first displayed (Default: 10) Repeats 1 //How many times should bot display the message (Default: 0 - Infinite) } Message //Displays message in the chat { Name "{FF9900}\\Now Playing: Spider-Man - Main Theme ~ Marvel Pinball OST, Attila Heger\\" //Message in the chat displayed Delay 6 //Time before the message is first displayed (Default: 10) Repeats 1 //How many times should bot display the message (Default: 0 - Infinite) } FireInput // Fires an input to an entity. Target !self and !activator refer to target the bot this block is on. { Target "music_relay_loop" Action Trigger Delay 6 Repeats 1 } } } WaveSpawn //WAVE 04 Support 1: 1 active, Tank { Name "wave04support1" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 18 WaitBetweenSpawns 78 Support 1 FirstSpawnMessage "{blue}Cleo, The Defected Engineer{reset} : Don't think you won't have to worry about that bomb, though." FirstSpawnOutput { Target boss_spawn_relay Action Trigger } Tank { Health 7500 Speed 125 Name "tankboss" StartingPathTrackNode "boss_path_a1" OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn //WAVE 04 Support 2: 2 active, Pitcher Scout { Name "wave04support2" Where spawnbot_invasion TotalCount 2 MaxActive 2 SpawnCount 2 WaitBeforeStarting 36 WaitBetweenSpawns 6 Support 1 FirstSpawnMessage "{blue}Cleo, The Defected Engineer{reset} : I still have plenty of those special units of mine left over to pressure you with." TFBot { Class Scout Name "Pitcher Scout" Skill Hard ClassIcon scout_blaster_ball WeaponRestrictions PrimaryOnly Item "Baby Face's Blaster" Item "Courtly Cuirass" Item "Bonk Batter's Backup" ItemAttributes { ItemName "Baby Face's Blaster" "override projectile type extra" "stunball" "mult projectile count" 3 "projectile spread angle mult" 3 "crit vs stunned players" 1 "crits_become_minicrits" 1 } } } WaveSpawn //WAVE 04 Support 3: 4 active, Giant Richochet Bowman, Richochet Bowman, Igniter Bowman, Multishot Bowman { Name "wave04support3" Where spawnbot_invasion TotalCount 4 MaxActive 4 SpawnCount 4 WaitBeforeStarting 54 WaitBetweenSpawns 9 Support 1 FirstSpawnMessage "{blue}Cleo, The Defected Engineer{reset} : Even some left over giants are a part of that roster." Squad { TFBot { Class Sniper Name "Giant Richochet Bowman" Item "The Fortified Compound" Item "The Aimframe" ClassIcon sniper_bow_giant Skill Expert MaxVisionRange 1200 Health 2400 Attributes MiniBoss ItemAttributes { ItemName "The Fortified Compound" "grenade bounce speed" 0.9 "arrow target bounce speed" 0.9 "reset arrow hits on bounce" 1 "fire rate bonus" 1 "damage bonus" 0.25 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 5 } } TFBot { Class Sniper Name "Richochet Bowman" Skill Hard ClassIcon sniper_bow WeaponRestrictions PrimaryOnly Item "The Fortified Compound" Item "The Aimframe" ItemAttributes { ItemName "The Fortified Compound" "grenade bounce speed" 0.9 "arrow target bounce speed" 0.9 "reset arrow hits on bounce" 1 "damage bonus" 0.25 } } TFBot { Class Sniper Name "Multishot Bowman" Skill Hard ClassIcon sniper_bow_multi WeaponRestrictions PrimaryOnly Item "The Fortified Compound" Item "Spider Sights" Item "Hard Hearing" ItemAttributes { ItemName "The Fortified Compound" "arrow mastery" 1 "damage bonus" 0.25 } } TFBot { Class Sniper Name "Igniter Bowman" Skill Hard ClassIcon sniper_bow_ignite WeaponRestrictions PrimaryOnly Item "The Fortified Compound" Item "The HazMat Headcase" ItemAttributes { ItemName "The Fortified Compound" "arrow ignite" 1 "damage bonus" 0.25 } } } } WaveSpawn //WAVE 04 Support 4: 6 active, Extended Banner Soldier, Extended Conch Soldier, Extended Backup Soldier { Name "wave04support4" Where spawnbot_invasion TotalCount 6 MaxActive 6 SpawnCount 6 WaitBeforeStarting 72 WaitBetweenSpawns 12 Support 1 FirstSpawnMessage "{blue}Cleo, The Defected Engineer{reset} : So stand down. While you still can." Squad { TFBot { Template T_TFBot_Soldier_Extended_Buff_Banner } TFBot { Template T_TFBot_Soldier_Extended_Battalion } TFBot { Template T_TFBot_Soldier_Extended_Concheror } TFBot { Template T_TFBot_Soldier_Extended_Buff_Banner } TFBot { Template T_TFBot_Soldier_Extended_Battalion } TFBot { Template T_TFBot_Soldier_Extended_Concheror } } } } }