#base robot_giant.pop #base robot_standard.pop //Reverse MvM //Made by Braindawg http://steamcommunity.com/id/HahaMoreLikeBraindead/ //Advanced Skill //Special thanks to: //Sntr - boss fight cave detailing + layout //trigger_hurt - Bot models //Orin - vscript help //lite - animated weapon case model WaveSchedule { StartingCurrency 1000 CanBotsAttackWhileInSpawnRoom No RespawnWaveTime 0 Advanced 1 //rafmod stuff // AllowBotExtraSlots 1 // RobotLimit 56 FastWholeMapTriggers 0 PrecacheSound "major_shocks.wav" PrecacheSound "undermined.mp3" ExtraSpawnPoint { Name "boss_fight_dude2" X -3766 Y -387 Z -3100 TeamNum 2 } ExtraSpawnPoint { Name "boss_support_2" X -2512 Y -2445 Z -3199 TeamNum 2 } // AllowJoinTeamBlue 1 // BluHumanFlagPickup 1 // Mission { //move to sniper // Where extrafrontspawnjumper // BeginAtWave 2 // RunForThisManyWaves 1 // DesiredCount 20 // // InitialCooldown 0 // // CooldownTime 9999 // Objective Sniper // TFBot { // Class Soldier // Classicon soldier_gib_jumper_lite // Name "Rusted Jumper" // Health 100 // Skill Expert // // AddCond { Index 43 } // Attributes DisableDodge // Attributes AlwaysFireWeapon // // Action Sniper // Item "Rocket Jumper" // Item "The Market Gardener" // Item "The Mantreads" // ItemAttributes // { // ItemName "Rocket Jumper" // "override projectile type" 3 // "apply look velocity on damage" 1200 // "custom projectile model" "models/weapons/w_models/w_rocket.mdl" // "grenade no spin" 1 // "apply z velocity on damage" 100 // "fuse bonus" 0.25 // // "alt-fire disabled" 1 // "ammo regen" 1 // "fire rate penalty" 2 // "faster reload rate" 3 // } // CharacterAttributes // { // "cannot pick up intelligence" 1 // // "mult smack time" 0.5 // "deploy time decreased" 0.0025 // "voice pitch scale" 0.4 // } // } // } Wave { //Wave 1 BlueTeamWipeCausesWaveLoss 1 InitWaveOutput { Target wave_start_relay Action RunScriptFile Param "cfive_main.nut" } StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name "cc" Where ccspawn TotalCount 1 MaxActive 1 SpawnCount 1 //kill every other bot DoneOutput { Target gamerules Action RunScriptCode Param " foreach (bot in botarray) if (!IsPlayerDead(bot)) bot.TakeDamage(INT_MAX, DMG_GENERIC, null); " } TFBot { class sniper Scale 0.0001 Attributes IgnoreEnemies Tag "bombholder" CharacterAttributes { "no_jump" 1 "move speed penalty" 0.00001 } } } // WaveSpawn { // Name "sentry" // Where ccspawn // TotalCount 1 // MaxActive 1 // SpawnCount 1 // WaitForAllSpawned "cc" // LastSpawnOutput // { // Target wave_start_relay // Action RunScriptCode // Param " // for (local sentry; sentry = Entities.FindByClassname(sentry, `obj_sentrygun`);) // { // if (sentry.GetModelName() != `models/buildables/spawn_room/spawn_turret.mdl`) continue; // for (local i = 1; i < MaxClients().tointeger(); i++) // { // local bot = PlayerInstanceFromIndex(i) // if ( bot.GetTeam() < 2 || !IsPlayerABot(bot) || bot.GetPlayerClass() != 9) continue; // sentry.SetOwner(bot); // SetPropEntity(sentry, `m_hBuilder`, bot); // DoEntFire(`bomb1_timed`,`ForceResetSilent`, ``, 0.01, null, null) // break; // } // } // " // } // TFBot { // Class Engineer // Name "Engineer^66" // Attributes IgnoreEnemies // Scale 0.0001 // Tag bluebot // Tag addcond // CharacterAttributes { "no_jump" 1 "move speed penalty" 0.00001, "engy sentry fire rate increased" 2, "engy sentry damage bonus" 0.5 } // } // } WaveSpawn { Name "wave1astart1" Where frontspawnbarricade TotalCount 10 MaxActive 10 SpawnCount 10 RandomSpawn 1 RandomChoice { TFBot { Class Soldier Health 100 ClassIcon soldier_gib_lite Action Mobber Name "Rusted Soldier" Attributes DisableDodge // MaxVisionRange 64 Skill Expert Item "TF_WEAPON_FISTS" WeaponRestrictions MeleeOnly } TFBot { Class Heavyweapons Health 100 ClassIcon soldier_gib_lite Action Mobber Name "Rusted Heavy" Attributes DisableDodge // MaxVisionRange 64 Skill Expert WeaponRestrictions MeleeOnly } TFBot { Class Pyro Health 100 ClassIcon soldier_gib_lite Action Mobber Name "Rusted Pyro" Attributes DisableDodge Item "The Bat Outta Hell" // MaxVisionRange 64 Skill Expert WeaponRestrictions MeleeOnly ItemAttributes { ItemName "The Bat Outta Hell" // "custom impact sound" "Weapon_Fist.HitFlesh" // "custom kill icon" "fists" "is invisible" 1 } } } } WaveSpawn { Name "wave1astart" ClosestPoint tunnelboss_support TotalCount 80 MaxActive 40 SpawnCount 2 RandomSpawn 1 DoneWarningSound "#music/hl1_song24.mp3" RandomChoice { TFBot { Class Soldier Health 100 ClassIcon soldier_gib_lite Action Mobber Name "Rusted Soldier" Attributes DisableDodge // MaxVisionRange 64 Skill Expert Item "TF_WEAPON_FISTS" WeaponRestrictions MeleeOnly } TFBot { Class Heavyweapons Health 100 ClassIcon soldier_gib_lite Action Mobber Name "Rusted Heavy" Attributes DisableDodge // MaxVisionRange 64 Skill Expert WeaponRestrictions MeleeOnly } TFBot { Class Pyro Health 100 ClassIcon soldier_gib_lite Action Mobber Name "Rusted Pyro" Attributes DisableDodge Item "The Bat Outta Hell" // MaxVisionRange 64 Skill Expert WeaponRestrictions MeleeOnly CharacterAttributes { "move speed penalty" 0.8 // too fast } ItemAttributes { ItemName "The Bat Outta Hell" // "custom impact sound" "Weapon_Fist.HitFlesh" // "custom kill icon" "fists" "is invisible" 1 } } } } WaveSpawn { Name "wave1aforcefield" Where tunnelboss TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 10 TFBot { Template T_TFBot_Sniper_Huntsman_Spammer Health 1500 BehaviorModifiers Push Tag bot_tunnel CharacterAttributes { "voice pitch scale" 0 "damage penalty" 0.5 "move speed penalty" 0.00001 "no_jump" 1 } } } WaveSpawn { Name "wave1ashotgun" ClosestPoint tunnelboss_support MaxActive 6 SpawnCount 2 TotalCount 8 WaitBeforeStarting 5 WaitForAllSpawned "wave1astart" LastSpawnOutput { Target ffhint_relay Action Trigger } Squad { TFBot { Class Heavyweapons Health 100 ClassIcon shotgun_nys MaxVisionRange 2048 Tag bot_tunnel Name "Rusted Shotgunner" Action Mobber WeaponRestrictions SecondaryOnly BehaviorModifiers Push CharacterAttributes { "damage penalty" 0.5 } } TFBot { Class Soldier Health 100 ClassIcon shotgun_nys MaxVisionRange 2048 Tag bot_tunnel Name "Rusted Shotgunner" Action Mobber WeaponRestrictions SecondaryOnly BehaviorModifiers Push CharacterAttributes { "damage penalty" 0.5 } } } } WaveSpawn { Name "wave1aforcefield" Where thirdspawn TotalCount 999 MaxActive 12 SpawnCount 2 WaitForAllSpawned "wave1ashotgun" WaitBeforeStarting 5 Support Limited RandomChoice { TFBot { Class Soldier Health 100 Action Mobber ClassIcon soldier_bison Item "The Righteous Bison" Name "Rusted Bison" Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload Tag bot_tunnel2 ItemAttributes { ItemName "The Righteous Bison" "set item tint RGB" 7342859 } } TFBot { Class Soldier Health 100 Action Mobber ClassIcon soldier_bison Item "The Righteous Bison" Name "Rusted Bison" Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload Tag bot_tunnel2 ItemAttributes { ItemName "The Righteous Bison" "set item tint RGB" 7342859 } } TFBot { Class Soldier Health 100 Action Mobber ClassIcon soldier_bison Item "The Righteous Bison" Name "Rusted Bison" Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload Tag bot_tunnel2 ItemAttributes { ItemName "The Righteous Bison" "set item tint RGB" 7342859 } } TFBot { Class Soldier Health 100 Action Mobber ClassIcon soldier_bison Item "The Righteous Bison" Name "Rusted Bison" Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload Tag bot_tunnel2 ItemAttributes { ItemName "The Righteous Bison" "set item tint RGB" 7342859 } } TFBot { Class Soldier Health 100 Action Mobber ClassIcon soldier_bison Item "The Righteous Bison" Name "Rusted Bison" Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload Tag bot_tunnel2 ItemAttributes { ItemName "The Righteous Bison" "set item tint RGB" 7342859 } } TFBot { Class Soldier Health 100 Action Mobber ClassIcon soldier_bison Item "The Righteous Bison" Name "Rusted Bison" Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload Tag bot_tunnel2 ItemAttributes { ItemName "The Righteous Bison" "set item tint RGB" 7342859 } } TFBot { Template T_TFBot_Heavyweapons_Fist Attributes DisableDodge Action Mobber Tag bot_tunnel2 CharacterAttributes { "voice pitch scale" 0 } } } } WaveSpawn { Name "wave1aforcefield" Where thirdspawn TotalCount 1 MaxActive 1 SpawnCount 1 Support Limited TFBot { Template T_TFBot_Giant_Boxing_Heavy Attributes DisableDodge Action Mobber ClassIcon heavy_urgent Item "Gloves of Running Urgently MvM" ItemAttributes { ItemName "Gloves of Running Urgently MvM" "fire rate bonus" 0.6 "damage bonus" 1.2 } } } WaveSpawn { Name "wave1b0" Where extrafrontspawn TotalCount 5 MaxActive 5 SpawnCount 5 WaitBetweenSpawns 1 WaitForAllDead "wave1ashotgun" DoneOutput { Target midspawnforcefield Action Disable } RandomChoice { TFBot { Class Heavyweapons Health 100 ClassIcon shotgun_nys MaxVisionRange 2048 Name "Rusted Shotgunner" Action Mobber Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload CharacterAttributes { "damage penalty" 0.5 } } TFBot { Class Soldier Health 100 ClassIcon shotgun_nys MaxVisionRange 2048 Name "Rusted Shotgunner" Action Mobber Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload CharacterAttributes { "damage penalty" 0.5 } } TFBot { Class Pyro Health 100 ClassIcon shotgun_nys MaxVisionRange 2048 Name "Rusted Shotgunner" Action Mobber Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload CharacterAttributes { "damage penalty" 0.5 } } } } WaveSpawn { Name "wave1b" Where extrafrontspawn TotalCount 35 MaxActive 15 SpawnCount 1 RandomChoice { TFBot { Class Heavyweapons Health 100 ClassIcon shotgun_nys MaxVisionRange 2048 Name "Rusted Shotgunner" Action Mobber Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload CharacterAttributes { "damage penalty" 0.5 } } TFBot { Class Soldier Health 100 ClassIcon shotgun_nys MaxVisionRange 2048 Name "Rusted Shotgunner" Action Mobber Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload CharacterAttributes { "damage penalty" 0.5 } } TFBot { Class Pyro Health 100 ClassIcon shotgun_nys MaxVisionRange 2048 Name "Rusted Shotgunner" Action Mobber Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload CharacterAttributes { "damage penalty" 0.5 } } } } WaveSpawn { Name "wave1b1" Where frontspawnbarricade TotalCount 1 MaxActive 1 SpawnCount 1 RandomSpawn 1 WaitForAllDead "wave1ashotgun" LastSpawnOutput { Target gamerules Action RunScriptCode Param " foreach (bot in botarray) { if (bot.GetPlayerClass() == TF_CLASS_DEMOMAN && bot.IsMiniBoss()) { EntFireByHandle(bot, `RunScriptCode`, `self.RemoveCustomAttribute(`move speed bonus`)`,40,-1); //stay here for 40 seconds EntFireByHandle(bot, `RunScriptCode`, `self.AddCustomAttribute(`move speed bonus`)`, 0.5, -1)`,40.1,-1); } } " } TFBot { Template T_TFBot_Giant_Demo_Burst ClassIcon demo_burst_red Action Mobber CharacterAttributes { "move speed bonus" 0.00001 "no_jump" 1 } } } WaveSpawn { Name "wave1b2" Where extrafrontspawn TotalCount 1 MaxActive 1 SpawnCount 1 RandomSpawn 1 WaitForAllSpawned "wave1b1" TFBot { Template T_TFBot_Giant_Demoman Action Mobber } } WaveSpawn { Name "wave1bsupport" // ClosestPoint playerspawnred Where playerspawnred // Where midspawnforcefield MaxActive 6 SpawnCount 2 WaitBetweenSpawns 1 WaitForAllDead "wave1ashotgun" Support 1 RandomChoice { TFBot { Class Soldier Health 100 ClassIcon soldier_gib_lite Action Mobber Name "Rusted Soldier" Attributes DisableDodge Skill Expert Item "TF_WEAPON_FISTS" WeaponRestrictions MeleeOnly } TFBot { Class Heavyweapons Health 100 ClassIcon soldier_gib_lite Action Mobber Name "Rusted Heavy" Attributes DisableDodge Skill Expert WeaponRestrictions MeleeOnly } TFBot { Class Pyro Health 100 ClassIcon soldier_gib_lite Action Mobber Name "Rusted Pyro" Attributes DisableDodge Skill Expert WeaponRestrictions MeleeOnly CharacterAttributes { "move speed penalty" 0.8 } } TFBot { Class Demoman Health 100 ClassIcon soldier_gib_lite Action Mobber Name "Rusted Demo" Attributes DisableDodge MaxVisionRange 32 Skill Expert WeaponRestrictions MeleeOnly } } } WaveSpawn { Name "wave1b3" Where midspawnforcefield TotalCount 60 MaxActive 30 SpawnCount 2 WaitBetweenSpawns 1 TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ ClassIcon heavy_champ_red Health 150 Action Mobber CharacterAttributes { "voice pitch scale" 0 } } } WaveSpawn { Name "wave1c" Where fourthspawn TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllDead "wave1ashotgun" Support Limited TFBot { Template T_TFBot_Giant_Soldier_Extended_Concheror Attributes DisableDodge Action Mobber CharacterAttributes { "increase buff duration" 999 } } } WaveSpawn { Name "wave1c" Where fourthspawn TotalCount 5 MaxActive 5 SpawnCount 5 Support Limited WaitForAllDead "wave1ashotgun" RandomSpawn 1 RandomChoice { TFBot { Class Heavyweapons Health 100 ClassIcon shotgun_nys MaxVisionRange 2048 Name "Rusted Heavy" Action Mobber Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload CharacterAttributes { "damage penalty" 0.5 } } TFBot { Class Soldier Health 100 ClassIcon shotgun_nys MaxVisionRange 2048 Name "Rusted Soldier" Action Mobber Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload CharacterAttributes { "damage penalty" 0.5 } } TFBot { Class Pyro Health 100 ClassIcon shotgun_nys MaxVisionRange 2048 Name "Rusted Pyro" Action Mobber Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload CharacterAttributes { "damage penalty" 0.5 } } } } WaveSpawn { Name "wave1c1" Where "red_spawnp_1" TotalCount 24 MaxActive 4 SpawnCount 2 Support Limited WaitForAllSpawned "wave1ashotgun" RandomSpawn 1 RandomChoice { TFBot { Class Heavyweapons Health 100 ClassIcon shotgun_nys MaxVisionRange 2048 Name "Rusted Heavy" Action Mobber Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload CharacterAttributes { "damage penalty" 0.5 } } TFBot { Class Soldier Health 100 ClassIcon shotgun_nys MaxVisionRange 2048 Name "Rusted Soldier" Action Mobber Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload CharacterAttributes { "damage penalty" 0.5 } } TFBot { Class Pyro Health 100 ClassIcon shotgun_nys MaxVisionRange 2048 Name "Rusted Pyro" Action Mobber Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload CharacterAttributes { "damage penalty" 0.5 } } } } WaveSpawn { Name "wave1c" Where "fourthspawnhatch" TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllDead "wave1ashotgun" LastSpawnOutput { Target gamerules Action RunScriptCode Param "DoEntFire(`spawntele1`, `Disable`,``,-1, null, null);" } DoneOutput { Target gamerules Action RunScriptCode Param " DoEntFire(`red_door_trigger`, `Disable`,``, -1, null, null); DoEntFire(`red_spawnp_*`, `Disable`, ``, -1, null, null); DoEntFire(`door_red*`, `Open`,``, 0.1, null, null); Annotations(7); " } TFBot { Template T_TFBot_Giant_Soldier_SlowBarrage Attributes DisableDodge Action Mobber WeaponRestrictions PrimaryOnly Scale 3 CharacterAttributes { "no_jump" 1 "health regen" 0 "disable weapon switch" 1 } } } WaveSpawn { Name "wave1d" Where "red_spawnp_1" TotalCount 999 MaxActive 8 SpawnCount 2 WaitBetweenSpawns 1 Support Limited WaitForAllSpawned "wave1c1" WaitBeforeStarting 5 RandomChoice { TFBot { Class Soldier Health 100 ClassIcon soldier_gib_lite Action Mobber Name "Rusted Soldier" Attributes DisableDodge // MaxVisionRange 64 Skill Expert Item "TF_WEAPON_FISTS" WeaponRestrictions MeleeOnly Attributes AlwaysFireWeapon } TFBot { Class Heavyweapons Health 100 ClassIcon soldier_gib_lite Action Mobber Name "Rusted Heavy" Attributes DisableDodge // MaxVisionRange 64 Skill Expert WeaponRestrictions MeleeOnly Attributes AlwaysFireWeapon } } } } Wave { //Wave 2 BlueTeamWipeCausesWaveLoss 1 InitWaveOutput { Target wave_start_relay Action RunScriptFile Param "cfive_main.nut" } StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name "cc" Where ccspawn TotalCount 1 MaxActive 1 SpawnCount 1 TFBot { class sniper Scale 0.0001 Attributes IgnoreEnemies Tag "bombholder" CharacterAttributes { "no_jump" 1 "move speed penalty" 0.00001, "engy sentry fire rate increased" 2, "engy sentry damage bonus" 0.5 } } } WaveSpawn { Name "wave2a" Where "tunnelboss_support" TotalCount 15 MaxActive 15 SpawnCount 5 WaitForAllSpawned "cc" RandomChoice { TFBot { Class Heavyweapons Health 100 ClassIcon shotgun_nys MaxVisionRange 2048 Name "Rusted Shotgunner" Action Mobber Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload CharacterAttributes { "damage penalty" 0.5 } } TFBot { Class Soldier Health 100 ClassIcon shotgun_nys MaxVisionRange 2048 Name "Rusted Shotgunner" Action Mobber Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload CharacterAttributes { "damage penalty" 0.5 } } TFBot { Class Pyro Health 100 ClassIcon shotgun_nys MaxVisionRange 2048 Name "Rusted Shotgunner" Action Mobber Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload CharacterAttributes { "damage penalty" 0.5 } } } } WaveSpawn { Name "wave2genA" Where "genspawn" TotalCount 1 MaxActive 1 SpawnCount 1 DoneOutput { Target "gamerules" Action "RunScriptCode" Param "generatorcounter--; if (generatorcounter <= 0) DoEntFire(`w2end_relay`, `Trigger`, ``, -1, null, null);" } // DoneOutput { Target "generator_counter" Action Subtract } TFBot { class sniper Name "GENERATOR 1" ClassIcon generator_lite Scale 0.0001 Attributes UseBossHealthBar Attributes IgnoreEnemies Tag generator1 Health 300 CharacterAttributes { "no_jump" 1 "move speed penalty" 0.00001 "health drain" 1 "cancel falling damage" 1 "dmg from ranged reduced" 0.00001 } } } WaveSpawn { Name "wave2genB" Where "genspawn" TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllSpawned "wave2genA" WaitBeforeStarting 3 DoneOutput { Target "gamerules" Action "RunScriptCode" Param "generatorcounter--; if (generatorcounter <= 0) DoEntFire(`w2end_relay`, `Trigger`, ``, -1, null, null);" } // DoneOutput { Target "generator_counter" Action Subtract } TFBot { class sniper Name "GENERATOR 2" Health 300 ClassIcon generator_lite Scale 0.0001 Attributes UseBossHealthBar Attributes IgnoreEnemies Tag generator2 CharacterAttributes { "no_jump" 1 "move speed penalty" 0.00001 "health drain" 1 "cancel falling damage" 1 "dmg from ranged reduced" 0.00001 } } } WaveSpawn { Name "wave2genC" Where "genspawn" TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllSpawned "wave2genB" WaitBeforeStarting 3 DoneOutput { Target "gamerules" Action "RunScriptCode" Param "generatorcounter--; if (generatorcounter <= 0) DoEntFire(`w2end_relay`, `Trigger`, ``, -1, null, null);" } TFBot { class sniper Name "GENERATOR 3" Health 300 ClassIcon generator_lite Scale 0.0001 Attributes UseBossHealthBar Attributes IgnoreEnemies Tag generator3 CharacterAttributes { "no_jump" 1 "move speed penalty" 0.00001 "health drain" 1 "cancel falling damage" 1 "dmg from ranged reduced" 0.00001 } } } WaveSpawn { Name "wave2gen1" Where "midspawnforcefield" Where "frontspawnbarricade" TotalCount 2 MaxActive 1 SpawnCount 1 WaitForAllSpawned "cc" TFBot { Template T_TFBot_Giant_DemoMan_PrinceTavish Name "Giant Rusted Knight" Attributes DisableDodge } } WaveSpawn { Name "wave2gen1" Where "midspawnforcefield" Where "frontspawnbarricade" TotalCount 40 MaxActive 10 SpawnCount 2 WaitForAllSpawned "cc" TFBot { Class Demoman Name "Rusted Demoman" Health 125 Attributes DisableDodge // AddCond { Index 43 } WeaponRestrictions SecondaryOnly ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "is_passive_weapon" 1 "override projectile type" 27 "fire rate penalty" 420 } ItemAttributes { ItemName "TF_WEAPON_PIPEBOMBLAUNCHER" "stickybomb charge rate" 0.5 "max pipebombs decreased" -6 "Projectile range increased" 0.35 "rage giving scale" 0.25 "no self blast dmg" 2 "sticky arm time penalty" 1.5 } } } WaveSpawn { Name "wave2gen2" Where "extrafrontspawn" TotalCount 2 MaxActive 1 SpawnCount 1 WaitForAllSpawned "cc" TFBot { Template T_TFBot_Giant_Soldier_Crit Name "Giant Rusted Crit Soldier" Attributes DisableDodge } } WaveSpawn { Name "wave2gen2" Where "extrafrontspawn" TotalCount 45 MaxActive 20 SpawnCount 2 WaitBetweenSpawns 1 WaitForAllSpawned "cc" TFBot { Class Soldier Classicon soldier_gib_jumper_lite Name "Rusted Jumper" Health 80 Skill Expert // AddCond { Index 43 } Attributes DisableDodge Attributes AlwaysFireWeapon Attributes HoldFireUntilFullReload // Action Sniper Item "Rocket Jumper" Item "The Market Gardener" Item "The Mantreads" Tag bot_gardener ItemAttributes { ItemName "Rocket Jumper" "override projectile type" 3 "apply look velocity on damage" 1200 "custom projectile model" "models/weapons/w_models/w_rocket.mdl" "grenade no spin" 1 "apply z velocity on damage" 100 "fuse bonus" 0.25 "ammo regen" 1 "fire rate penalty" 2 "move speed penalty" 0.5 } CharacterAttributes { "deploy time decreased" 0.0025 } } } WaveSpawn { Name "wave2gen3" Where "playerspawnred" TotalCount 3 MaxActive 1 SpawnCount 1 WaitForAllSpawned "cc" TFBot { Template T_TFBot_Giant_Pyro Name "Giant Rusted Pyro" Attributes DisableDodge Item "The Backburner" ItemAttributes { ItemName "The Backburner" "lunchbox adds minicrits" 2 } } } WaveSpawn { Name "wave2gen3" Where "playerspawnred" TotalCount 40 MaxActive 10 SpawnCount 2 WaitForAllSpawned "cc" RandomChoice { TFBot { Template T_TFBot_Pyro_Flaregun ClassIcon pyro_flare_red Name "Rusted Flare" Attributes DisableDodge Item "The Detonator" Health 125 CharacterAttributes { "fire rate penalty" 2 } } TFBot { Template T_TFBot_Pyro_Flaregun ClassIcon pyro_flare_red Name "Rusted Flare" Attributes DisableDodge Item "The Detonator" Health 125 CharacterAttributes { "fire rate penalty" 2 } } } } WaveSpawn { Name "wave2c" Where "playerspawnred" TotalCount 999 MaxActive 16 SpawnCount 2 WaitBetweenSpawns 1 Support Limited WaitForAllSpawned "wave2gen3" WaitForAllSpawned "cc" RandomChoice { TFBot { Template T_TFBot_Heavyweapons_Fist Attributes DisableDodge WeaponRestrictions MeleeOnly Action Mobber Tag bot_tunnel2 CharacterAttributes { "voice pitch scale" 0 } } TFBot { Class Soldier Health 100 ClassIcon soldier_gib_lite Action Mobber Name "Rusted Soldier" Attributes DisableDodge // MaxVisionRange 64 Skill Expert Item "TF_WEAPON_FISTS" WeaponRestrictions MeleeOnly Attributes AlwaysFireWeapon } TFBot { Class Heavyweapons Health 100 ClassIcon soldier_gib_lite Action Mobber Name "Rusted Heavy" Attributes DisableDodge // MaxVisionRange 64 Skill Expert WeaponRestrictions MeleeOnly Attributes AlwaysFireWeapon } TFBot { Class Heavyweapons Skill Normal Health 100 ClassIcon shotgun_nys MaxVisionRange 2048 Name "Rusted Shotgunner" WeaponRestrictions SecondaryOnly Action Mobber Attributes DisableDodge Attributes HoldFireUntilFullReload CharacterAttributes {"fire rate penalty" 2} } TFBot { Class Soldier Skill Normal Health 100 ClassIcon shotgun_nys MaxVisionRange 2048 Name "Rusted Shotgunner" WeaponRestrictions SecondaryOnly Action Mobber Attributes DisableDodge Attributes HoldFireUntilFullReload CharacterAttributes {"fire rate penalty" 2} } TFBot { Class Pyro Skill Normal Health 100 ClassIcon shotgun_nys MaxVisionRange 2048 Name "Rusted Shotgunner" WeaponRestrictions SecondaryOnly Action Mobber Attributes DisableDodge Attributes HoldFireUntilFullReload CharacterAttributes {"fire rate penalty" 2} } } } } Wave { //Wave 3 BlueTeamWipeCausesWaveLoss 1 InitWaveOutput { Target wave_start_relay Action RunScriptCode Param " IncludeScript(`popextensions_main`, getroottable()) IncludeScript(`cfive_boss_pt`, getroottable()) IncludeScript(`cfive_main.nut`) EntFire(`w2end_relay`, `CancelPending`, ``, 0.1) EntFire(`w2end_relay`, `Kill`, ``, 0.11) " } StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name "cc" Where ccspawn MaxActive 1 SpawnCount 1 Support 1 RandomChoice { TFBot { class sniper Scale 0.0001 Attributes IgnoreEnemies Tag "bombholder" CharacterAttributes { "no_jump" 1 "move speed penalty" 0.00001 "engy sentry fire rate increased" 2 "engy sentry damage bonus" 0.5 "dmg taken increased" 0 //make this bot invincible until wave end } }} } WaveSpawn { Name "wave3a" Where "playerspawnred" TotalCount 12 MaxActive 6 SpawnCount 2 WaitBetweenSpawns 1 StartWaveOutput { Target "gamerules" Action RunScriptCode Param "DoEntFire(`red_spawnp*`,`Enable`,``,-1, null, null);" } Squad { TFBot { Class Pyro Skill Expert Health 100 WeaponRestrictions SecondaryOnly Attributes SpawnWithFullCharge ClassIcon random_lite Item "The Gas Passer" Item "The Phlogistinator" ItemAttributes { ItemName "The Gas Passer" "mult_item_meter_charge_rate" 0.2 } ItemAttributes { ItemName "The Phlogistinator" "airblast disabled" 0 // "mod soldier buff type" 1 "gesture speed increase" 0.5 } } TFBot { Class Pyro ClassIcon random_lite Health 100 MaxVisionRange 2048 Name "Rusted Shotgunner" Action Mobber Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload } } } WaveSpawn { Name "wave3a" Where "playerspawnred" TotalCount 1 MaxActive 1 SpawnCount 1 TFBot { Template T_TFBot_Giant_Heavyweapons ClassIcon random_lite_giant ItemAttributes { ItemName "TF_WEAPON_MINIGUN" "fire rate penalty" 1.25 } } } WaveSpawn { Name "wave3b" Where "fourthspawnhatch" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 1 WaitForAllSpawned "wave3a" LastSpawnOutput { Target "gamerules" Action "RunScriptCode" Param " Annotations(11) EntFire(`bomb1_timed`, `Enable`) EntFire(`red_spawn*`, `Enable`) EntFire(`w3midforcefield`, `Kill`, ``, 10) " } DoneOutput { Target "gamerules" Action "RunScriptCode" Param "Annotations(12)" } TFBot { Template T_TFBot_Giant_Soldier_SlowBarrage ClassIcon random_lite_giant Attributes DisableDodge // Attributes AlwaysCrit WeaponRestrictions PrimaryOnly Scale 3 CharacterAttributes { "no_jump" 1 "health regen" 0 "ammo regen" 999 "disable weapon switch" 1 } } } WaveSpawn { Name "wave3b" Where "red_spawnp_1" TotalCount 6 MaxActive 6 SpawnCount 2 WaitBetweenSpawns 1 WaitForAllSpawned "wave3a" FirstSpawnWarningSound "*@#misc/tf/undermined.mp3" FirstSpawnOutput { Target "gamerules" Action "PlayVO" Param "*@#misc/tf/undermined.mp3" } TFBot { ClassIcon random_lite Class Soldier } } WaveSpawn { Name "wave3c" Where "playerspawnred" TotalCount 999 MaxActive 9 SpawnCount 1 WaitBetweenSpawns 2 WaitForAllSpawned "wave3a" Support Limited RandomChoice { TFBot { Template T_TFBot_Heavyweapons_Fist ClassIcon random_lite Attributes DisableDodge Action Mobber } TFBot { Class Soldier Health 100 ClassIcon random_lite Action Mobber Name "Rusted Soldier" Attributes DisableDodge // MaxVisionRange 64 Skill Expert Item "TF_WEAPON_FISTS" WeaponRestrictions MeleeOnly Attributes AlwaysFireWeapon } TFBot { Class Soldier ClassIcon random_lite Health 100 Action Mobber Item "The Righteous Bison" Name "Rusted Bison" Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload ItemAttributes { ItemName "The Righteous Bison" "set item tint RGB" 7342859 } } TFBot { Class Heavyweapons ClassIcon random_lite Health 100 Action Mobber Name "Rusted Heavy" Attributes DisableDodge // MaxVisionRange 64 Skill Expert WeaponRestrictions MeleeOnly Attributes AlwaysFireWeapon } TFBot { Class Heavyweapons ClassIcon random_lite Skill Normal Health 100 MaxVisionRange 2048 Name "Rusted Shotgunner" Action Mobber Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload CharacterAttributes {"fire rate penalty" 2} } TFBot { Class Soldier ClassIcon random_lite Skill Normal Health 100 MaxVisionRange 2048 Name "Rusted Shotgunner" Action Mobber Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload CharacterAttributes {"fire rate penalty" 2} } TFBot { Class Pyro Skill Normal Health 100 ClassIcon random_lite MaxVisionRange 2048 Name "Rusted Shotgunner" Action Mobber Attributes DisableDodge WeaponRestrictions SecondaryOnly Attributes HoldFireUntilFullReload CharacterAttributes {"fire rate penalty" 2} } } } WaveSpawn { Name "wave3BOSS" Where "boss_fight_dude" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 1 FirstSpawnOutput { Target "boss_beam_target" Action "CallScriptFunction" Param "StunBoss" Delay 1 } TFBot { Template T_TFBot_Soldier_BurstFire Health 60000 Attributes UseBossHealthBar Scale 5.5 ClassIcon random_lite_giant Tag boss ItemAttributes { ItemName "TF_WEAPON_ROCKETLAUNCHER" "damage bonus" 1.0 "faster reload rate" 0.4 "fire rate bonus" 0.2 "clip size upgrade atomic" 5.0 } } } WaveSpawn { Name "wave3BOSSsupport1" Where "boss_fight_support" TotalCount 35 MaxActive 15 SpawnCount 2 WaitBetweenSpawns 1 WaitBeforeStarting 10 WaitForAllSpawned "wave3BOSS" Support Limited TFBot { Class Scout Name "Rusted Scout" Item "Unarmed Combat" Health 50 Tag boss_support WeaponRestrictions MeleeOnly ClassIcon random_lite CharacterAttributes { "fire rate penalty" 2 } } } WaveSpawn { Name "wave3BOSSsupport2" Where "boss_fight_support" TotalCount 20 MaxActive 3 SpawnCount 1 WaitBetweenSpawns 1 WaitForAllDead "wave3BOSSsupport1" Support Limited TFBot { Class Heavyweapons Name "Rusted Heavy" Health 200 Tag boss_support WeaponRestrictions MeleeOnly ClassIcon random_lite CharacterAttributes { "fire rate penalty" 2 } } } WaveSpawn { Name "wave3BOSSsupport3" Where "boss_fight_support" TotalCount 30 MaxActive 5 SpawnCount 1 WaitForAllDead "wave3BOSSsupport2" Support Limited TFBot { Class Pyro Skill Expert Health 100 WeaponRestrictions SecondaryOnly Attributes SpawnWithFullCharge ClassIcon random_lite Item "The Gas Passer" Item "The Phlogistinator" ItemAttributes { ItemName "The Gas Passer" "mult_item_meter_charge_rate" 0.2 } ItemAttributes { ItemName "The Phlogistinator" "airblast disabled" 0 // "mod soldier buff type" 1 "gesture speed increase" 0.5 } } } } }