#base robot_giant.pop #base robot_standard.pop // The Stars Above - Expert // Tag normal - all of the nav_avoids/ nav_prefers filter for "normal" instead of "common" // relays: // bombpath_force_right, bombpath_force_left // change_attributes_relay(BotAttributesSet1), change_attributes_relay2(BotAttributesSet2), change_attributes_relay_default(Default) // enable_deathpits_relay / disable_deathpits_relay, deathpits are blocked off by default // Barricade_Disable_Relay: kills barricade (allows engineer to build where it was) //TODO // MISSION // better icons for Leo, maybe picses,aries,taurus as well // double check tag normal, cash, names // MAP // red flag sets off alarm // second upgrade station first wave ? // BOSSFIGHT // DONE // sound cue for weakened state // sound cues for other stuff too (constellation spawning) // alert players when they pick up the bomb // anti grief mechanic // straggler soldiers wave 4: lower scout? count, lower max active of end soldiers, prune // one player thought they needed to drop the bomb near polaris, maybe make the proximity check more accurate // MAYBE // wave 6 fist of steels might benefit from simplifying to 1 spawner, adjusting their teleport spot dynamically // so that if they aren't able to spawn in at any particular moment it wont break all of their future spawns // more space weapons // +----------+----------+----------+ // | Wave | Currency | Total | // +----------+----------+----------+ // | Start | 750 | 750 | // | Wave 1 | 650 | 1500 | // | Wave 2 | 900 | 2500 | // | Wave 3 | 1150 | 3750 | // | Wave 4 | 900 | 4750 | // | Wave 5 | 705 | 5550 | // +----------+----------+----------+ // | Total | 5055 | 5555 | // +----------+----------+----------+ WaveSchedule { StartingCurrency 750 // 750 RespawnWaveTime 3 // omg almost forgot to lower this, time is increased by 1 sec per wave CanBotsAttackWhileInSpawnRoom no Mission //Sentry Buster { Objective DestroySentries DesiredCount 1 BeginAtWave 1 RunForThisManyWaves 6 CooldownTime 35 InitialCooldown 30 Where spawnbot_mission_sentry_buster // AddSentryBusterWhenKillCountExceeds 25 // idk // AddSentryBusterWhenDamageDealtExceeds 5000 // idk TFBot { Tag normal Name "Betelgeuse" Template T_TFBot_SentryBuster } } Mission // Wave 3 Spy { Objective Spy DesiredCount 2 BeginAtWave 3 RunForThisManyWaves 1 CooldownTime 15 InitialCooldown 45 Where spawnbot_mission_spy TFBot { Tag normal Class Spy ClassIcon Spy Name "Asellus Australis" // Name "Spy" Skill Expert Attributes IgnoreFlag } } Mission // Wave 4 engineers { Objective Engineer DesiredCount 1 BeginAtWave 4 RunForThisManyWaves 1 CooldownTime 45 InitialCooldown 10 Where flankers TFBot { Tag normal Name "Zeta Tauri" // Name "Engineer" Class Engineer ClassIcon Engineer Skill Expert Attributes IgnoreFlag Attributes TeleportToHint Health 275 } } Mission // Shooting Stars 2 { Objective Sniper Where spawnbot_mission_sniper BeginAtWave 2 RunForThisManyWaves 1 CooldownTime 30 InitialCooldown 30 DesiredCount 1 TFBot { Tag ShSt Name "Shooting Star" Template T_TFBot_Sniper Skill Expert Item "Corona Australis" Item "Final Frontiersman" Item "Starduster" Item "Master's Yellow Belt" Item "Shooting Star" CharacterAttributes { "ragdolls become ash" 1 } ItemAttributes { ItemName "Master's Yellow Belt" "attach particle effect" 17 } ItemAttributes { ItemName "Shooting Star" // "damage bonus" 0.75 } } } Mission // Shooting Stars 4 { Objective Sniper Where spawnbot_mission_sniper BeginAtWave 4 RunForThisManyWaves 1 CooldownTime 25 InitialCooldown 4 DesiredCount 1 TFBot { Tag ShSt Name "Shooting Star" Template T_TFBot_Sniper Skill Expert Item "Corona Australis" Item "Final Frontiersman" Item "Starduster" Item "Master's Yellow Belt" Item "Shooting Star" CharacterAttributes { "ragdolls become ash" 1 } ItemAttributes { ItemName "Master's Yellow Belt" "attach particle effect" 17 } ItemAttributes { ItemName "Shooting Star" // "damage bonus" 0.75 } } } Mission // Shooting Stars 5-6 { Objective Sniper Where spawnbot_mission_sniper BeginAtWave 5 RunForThisManyWaves 2 CooldownTime 20 InitialCooldown 30 DesiredCount 1 TFBot { Tag ShSt Name "Shooting Star" Template T_TFBot_Sniper Skill Expert Item "Corona Australis" Item "Final Frontiersman" Item "Starduster" Item "Master's Yellow Belt" Item "Shooting Star" CharacterAttributes { "ragdolls become ash" 1 } ItemAttributes { ItemName "Master's Yellow Belt" "attach particle effect" 17 } ItemAttributes { ItemName "Shooting Star" // "damage bonus" 0.75 } } } //Wave 1: Bust through the heavens!! // 650 cash in wave Wave { InitWaveOutput { Target gamerules Action RunScriptCode Param " ClientPrint(null,3,`\x079ccddcWave 1: Bust Through the Heavens!!`) EntFire(`Barricade_Disable_Relay`, `Trigger`) EntFire(`bombpath_force_left`, `Trigger`,``,0.3) EntFire(`bombpath_force_left`, `Trigger`,``,5) IncludeScript(`popextensions`) " } StartWaveOutput { Target wave_start_relay_classic Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name "1_1" Where spawnbot TotalCount 24 MaxActive 8 SpawnCount 6 WaitBetweenSpawns 12 WaitBeforeStarting 0 TotalCurrency 50 TFBot { Tag normal Name "Crit Batsaber Porrima" // Name "Demoman" ClassIcon "scout_batsaber_nys" Item "Batsaber" WeaponRestrictions MeleeOnly Attributes AlwaysCrit Class Scout Skill Expert } } WaveSpawn { Name "1_1" Where flankers TotalCount 24 MaxActive 8 SpawnCount 6 WaitBetweenSpawns 12 WaitBeforeStarting 1 TotalCurrency 50 TFBot { Tag normal Name "Crit Batsaber Porrima" // Name "Demoman" ClassIcon "scout_batsaber_nys" Item "Batsaber" WeaponRestrictions MeleeOnly Attributes AlwaysCrit Class Scout Skill Expert } } WaveSpawn { Name "1_2" Where spawnbot TotalCount 12 MaxActive 6 SpawnCount 4 WaitBetweenSpawns 8 WaitBeforeStarting 6 TotalCurrency 100 TFBot { Tag normal // Name "Demoman" Name "Syrma" Class Demoman } } WaveSpawn { Name "1_3" Where spawnbot TotalCount 2 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 16 WaitBeforeStarting 4 TotalCurrency 100 TFBot { Tag normal Class Soldier // Name "Giant Soldier" ClassIcon soldier_giant Skill Expert Health 3800 WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload Attributes MiniBoss CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 } } } WaveSpawn { Name "2_1" Where spawnbot TotalCount 8 MaxActive 8 SpawnCount 4 WaitBetweenSpawns 20 WaitForAllSpawned "1_3" WaitBeforeStarting 20 TotalCurrency 100 Squad { TFBot { Tag normal Name "Spica" // Name "Giant Demoman" Class Demoman ClassIcon demo_giant Skill Expert Health 3300 WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload Attributes MiniBoss ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "faster reload rate" -0.4 "fire rate bonus" 0.75 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.5 "airblast vulnerability multiplier" 0.5 "override footstep sound set" 4 } } TFBot { Tag normal Name "Quick Uber Zavijava" // Name "Quick Uber Medic" Template T_TFBot_Medic_QuickUber } TFBot { Tag normal Name "Quick Uber Zavijava" // Name "Quick Uber Medic" Template T_TFBot_Medic_QuickUber } TFBot { Tag normal Name "Quick Uber Zavijava" // Name "Quick Uber Medic" Template T_TFBot_Medic_QuickUber } } } WaveSpawn { Name "2_2" Where spawnbot TotalCount 16 MaxActive 8 SpawnCount 4 WaitBetweenSpawns 10 WaitBeforeStarting 8 WaitForAllSpawned "1_2" TotalCurrency 50 TFBot { Tag normal Name "Minelauva" Class Heavy MaxVisionRange 1200 Skill Easy } } WaveSpawn { Name "3_1" Where spawnbot TotalCount 4 MaxActive 4 SpawnCount 4 WaitBetweenSpawns 15 WaitBeforeStarting 15 WaitForAllSpawned "2_1" TotalCurrency 100 Squad { TFBot { Tag normal Name "Spica" // Name "Giant Demoman" Class Demoman ClassIcon demo_giant Skill Hard Health 3300 WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload Attributes MiniBoss ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "faster reload rate" -0.4 "fire rate bonus" 0.75 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.5 "airblast vulnerability multiplier" 0.5 "override footstep sound set" 4 } } TFBot { Tag normal Name "Quick Uber Zavijava" // Name "Quick Uber Medic" Template T_TFBot_Medic_QuickUber } TFBot { Tag normal Name "Quick Uber Zavijava" // Name "Quick Uber Medic" Template T_TFBot_Medic_QuickUber } TFBot { Tag normal Name "Quick Uber Zavijava" // Name "Quick Uber Medic" Template T_TFBot_Medic_QuickUber } } } WaveSpawn { Name "3_2" Where flankers TotalCount 2 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 20 WaitBeforeStarting 5 WaitForAllSpawned "2_1" TotalCurrency 50 TFBot { Tag normal Name "Black Box Vindemiatrix" // Name "Giant Black Box Soldier" Class Soldier ClassIcon soldier_blackbox_giant Health 3800 Item "The Black Box" Skill Expert Attributes MiniBoss WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload ItemAttributes { ItemName "The Black Box" "damage bonus" 0.45 "fire rate bonus" 0.001 "clip size upgrade atomic" 0 "faster reload rate" 1.6 "blast radius increased" 1.25 //"Projectile speed increased" 0.4 "projectile spread angle penalty" 4 "heal on hit for rapidfire" 1000 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 "Projectile speed increased" 0.9 } } } WaveSpawn { Name "3_3" Where flankers TotalCount 10 MaxActive 8 SpawnCount 2 WaitBetweenSpawns 4 WaitBeforeStarting 12 WaitForAllSpawned "2_2" TotalCurrency 50 Support 1 TFBot { Tag normal Name "Shotgun Heze" // Shotgun Heze? // Name "Shotgun Heavy" Class Heavy ClassIcon heavy_shotgun Skill Normal WeaponRestrictions SecondaryOnly ItemAttributes { ItemName "TF_WEAPON_SHOTGUN_HWG" "faster reload rate" 0.1 "fire rate bonus" 2.5 "bullets per shot bonus" 3 "damage bonus" 0.5 } } } WaveSpawn { Name "4_2" Where spawnbot TotalCount 10 MaxActive 4 SpawnCount 1 WaitBetweenSpawns 6 WaitBeforeStarting 12 WaitForAllSpawned "2_2" TotalCurrency 50 Support Limited TFBot { Tag normal Name "Bison Zaniah" // Name "Bison Soldier" Class soldier Skill Hard Item "The Righteous Bison" ClassIcon soldier_bison_a WeaponRestrictions SecondaryOnly } } WaveSpawn { Name "Virgo" Where spawnbot TotalCount 4 MaxActive 4 SpawnCount 4 WaitBetweenSpawns 90 WaitBeforeStarting 15 WaitForAllSpawned "3_2" TotalCurrency 50 Squad { TFBot { Tag normal Name "Virgo" // Not changing the name of this one Attributes UseBossHealthBar Class Demoman ClassIcon demo_burst Health 6660 Scale 1.9 Skill Expert Attributes AlwaysCrit Attributes MiniBoss Attributes HoldFireUntilFullReload ItemAttributes { "attach particle effect" 3129 ItemName "TF_WEAPON_GRENADELAUNCHER" "faster reload rate" 0.6 "fire rate bonus" 0.2 "clip size upgrade atomic" 6 "projectile spread angle penalty" 2 } CharacterAttributes { "charge time increased" 1.5 "charge recharge rate increased" 2 "move speed bonus" 0.4 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 4 "rage giving scale" 0.5 } } TFBot { Tag normal Name "Quick Uber Zavijava" // Name "Quick Uber Medic" Template T_TFBot_Medic_QuickUber } TFBot { Tag normal Name "Quick Uber Zavijava" // Name "Quick Uber Medic" Template T_TFBot_Medic_QuickUber } TFBot { Tag normal Name "Quick Uber Zavijava" // Name "Quick Uber Medic" Template T_TFBot_Medic_QuickUber } } } } // Wave 2: You don't know anything! // 900 cash in wave Wave { InitWaveOutput { Target gamerules Action RunScriptCode Param " ClientPrint(null,3,`\x079ccddcWave 2: You Don't Know Anything!`) EntFire(`Barricade_Disable_Relay`, `Trigger`) EntFire(`bombpath_force_right`, `Trigger`,``,0.3) EntFire(`bombpath_force_right`, `Trigger`,``,5) // removed sniper script IncludeScript(`popextensions`) " } StartWaveOutput { Target wave_start_relay_classic Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name "1_1" Where spawnbot TotalCount 28 MaxActive 12 SpawnCount 4 WaitBetweenSpawns 5 WaitBeforeStarting 0 TotalCurrency 200 Squad { TFBot { Tag normal ClassIcon heavy_shotgun Name "Shotgun Chort" // Name "Shotgun Heavy" Class Heavy ClassIcon heavy_shotgun Skill Hard WeaponRestrictions SecondaryOnly ItemAttributes { ItemName "TF_WEAPON_SHOTGUN_HWG" "faster reload rate" 0.1 "fire rate bonus" 2.5 "bullets per shot bonus" 3 "damage bonus" 0.33 } } TFBot { Tag normal Name "Extended Buff Algieba" // Name "Extended Buff Soldier" Class Soldier Skill Normal ClassIcon soldier_buff Attributes SpawnWithFullCharge Item "The Buff Banner" CharacterAttributes { "increase buff duration" 9.0 } } } } WaveSpawn { Name "1_2" Where spawnbot TotalCount 4 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 10 WaitBeforeStarting 10 TotalCurrency 100 TFBot { Tag normal Name "Force-a-Nature Zosma" // Name "Giant Force-a-Nature Scout" Class Scout ClassIcon scout_fan Skill Normal Health 1200 WeaponRestrictions PrimaryOnly Attributes MiniBoss Item "The Force-a-Nature" CharacterAttributes { "move speed bonus" 1.5 "damage force reduction" 0.7 "airblast vulnerability multiplier" 0.7 "override footstep sound set" 5 } } } WaveSpawn { Name "2_1" Where spawnbot TotalCount 12 MaxActive 9 SpawnCount 3 WaitBetweenSpawns 8 WaitBeforeStarting 12 WaitForAllSpawned "1_2" TotalCurrency 150 Squad { TFBot { Tag normal Name "Phlogistinator Regulus" // Name "Giant Phlogistinator Pyro" Class Pyro ClassIcon pyro_phlog_v2_giant Skill Expert Health 3000 WeaponRestrictions PrimaryOnly Attributes MiniBoss Attributes SpawnWithFullCharge Item "The Phlogistinator" ItemAttributes { ItemName "The Phlogistinator" "airblast disabled" 0 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.6 "airblast vulnerability multiplier" 0.6 "override footstep sound set" 6 } } TFBot { Tag normal Name "Quick Uber Regulus B" // Name "Quick Uber Medic" Template T_TFBot_Medic_QuickUber } TFBot { Tag normal Name "Quick Uber Regulus C" // Name "Quick Uber Medic" Template T_TFBot_Medic_QuickUber } } } WaveSpawn { Name "2_2" Where flankers TotalCount 20 MaxActive 5 SpawnCount 1 WaitBetweenSpawns 4 WaitBeforeStarting 12 WaitForAllSpawned "1_1" TotalCurrency 75 TFBot { Tag normal Name "C.A.P.P.E.R Al Minliar" // Name "Charged Sandman Scout" Class Scout WeaponRestrictions SecondaryOnly ClassIcon scout_capper_tind Item "The C.A.P.P.E.R" Skill Normal MaxVisionRange 800 } } WaveSpawn { Name "2_3" Where flankers TotalCount 24 MaxActive 9 SpawnCount 6 WaitBetweenSpawns 10 WaitBeforeStarting 12 WaitForAllSpawned "1_2" TotalCurrency 75 TFBot { Tag normal // Name "Scout" Class scout Name "Soda Popper Alterf" // Name "Soda Popper Scout" Skill Hard Item "The Soda Popper" Item "Crit-a-Cola" ClassIcon scout_cola CharacterAttributes { "deploy time decreased" 0.1 } } } WaveSpawn { Name "3_1" Where spawnbot TotalCount 2 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 10 WaitBeforeStarting 15 WaitForAllSpawned "2_1" TotalCurrency 100 TFBot { Tag normal Name "Crit Black Box Denebola" // Name "Giant Charged Black Box Soldier" Class Soldier ClassIcon soldier_blackbox_giant Health 4200 Item "The Black Box" Skill Expert Attributes MiniBoss WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload Attributes AlwaysCrit ItemAttributes { ItemName "The Black Box" "damage bonus" 0.45 "fire rate bonus" 0.001 "clip size upgrade atomic" 0 "faster reload rate" 1.6 "blast radius increased" 1.25 "projectile spread angle penalty" 4 "heal on hit for rapidfire" 1000 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 "Projectile speed increased" 0.9 } } } WaveSpawn { Name "2_1b" Where spawnbot TotalCount 3 MaxActive 3 SpawnCount 3 WaitBetweenSpawns 8 WaitBeforeStarting 20 WaitForAllSpawned "2_1" TotalCurrency 150 Squad { TFBot { Tag normal Name "Phlogistinator Regulus" // Name "Giant Phlogistinator Pyro" Class Pyro ClassIcon pyro_phlog_v2_giant Skill Expert Health 3000 WeaponRestrictions PrimaryOnly Attributes MiniBoss Attributes SpawnWithFullCharge Item "The Phlogistinator" ItemAttributes { ItemName "The Phlogistinator" "airblast disabled" 0 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.6 "airblast vulnerability multiplier" 0.6 "override footstep sound set" 6 } } TFBot { Tag normal Name "Quick Uber Regulus B" // Name "Quick Uber Medic" Template T_TFBot_Medic_QuickUber } TFBot { Tag normal Name "Quick Uber Regulus C" // Name "Quick Uber Medic" Template T_TFBot_Medic_QuickUber } } } WaveSpawn { Name "3_3" Where spawnbot TotalCount 100 MaxActive 6 SpawnCount 1 WaitBetweenSpawns 3 WaitBeforeStarting 12 WaitForAllSpawned "2_2" TotalCurrency 50 Support 1 TFBot { Tag normal Name "Subra" // Name "Pyro" Class Pyro Skill Easy } } WaveSpawn { Name "3_3" Where spawnbot TotalCount 100 MaxActive 8 SpawnCount 4 WaitBetweenSpawns 8 WaitBeforeStarting 12 WaitForAllSpawned "2_2" TotalCurrency 50 Support 1 TFBot { Tag normal Name "Manmelter Al Jabbah" // Name "Flare Gun Pyro" Item "The Manmelter" ClassIcon pyro_manmelter Class Pyro Skill Expert WeaponRestrictions SecondaryOnly ItemAttributes { ItemName "The Manmelter" "faster reload rate" 0.75 } } } WaveSpawn { Name "Leo" Where spawnbot TotalCount 1 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 90 WaitBeforeStarting 15 WaitForAllSpawned "3_1" TotalCurrency 100 TFBot { Tag normal Class Heavy Name "Leo" // not changing the name of this one Attributes UseBossHealthBar ClassIcon heavy_heater_bigcrit Skill Expert Health 7770 WeaponRestrictions PrimaryOnly MaxVisionRange 1200 Item "The Huo Long Heatmaker" Item "The Bunsen Brave" // Item "Die Regime-Panzerung" Attributes MiniBoss ItemAttributes { "attach particle effect" 3129 ItemName "The Huo Long Heatmaker" "damage bonus" 1.5 "crit vs burning players" 1 } CharacterAttributes { "rage giving scale" 0.5 "move speed bonus" 0.5 "damage force reduction" 0.3 "airblast vulnerability multiplier" 0.3 "override footstep sound set" 2 } } } } // Wave 3: Tell me the secrets of this world // 1150 cash in wave Wave { InitWaveOutput { Target gamerules Action RunScriptCode Param " ClientPrint(null,3,`\x079ccddcWave 3: Tell Me the Secrets of This World.`) IncludeScript(`popextensions`) EntFire(`Barricade_Disable_Relay`, `Trigger`) EntFire(`bombpath_force_left`, `Trigger`,``,0.3) EntFire(`bombpath_force_left`, `Trigger`,``,5) AddRobotTag(`cancer`, { OnSpawn = function(bot, tag) { Entities.FindByName(null, `Classic_Mode_Intel`).SetOrigin(bot.GetOrigin()) } }) // removed sniper script " } StartWaveOutput { Target wave_start_relay_classic Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn // put her back into a squad and maybe she wont walk into weird sections of the map? { Name "Cancer" Where spawnbot TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 TotalCurrency 100 TFBot { Tag normal Tag cancer Class Spy BehaviorModifiers Push Name "Cancer" // not changing the name of this one Attributes UseBossHealthBar ClassIcon spy_revolver_atomic_giant Skill Expert Health 8880 WeaponRestrictions PrimaryOnly Attributes MiniBoss Item "Crabe de Chapeau" Item "OSX Item" Item "TF_WEAPON_REVOLVER" Attributes AlwaysCrit ItemAttributes { ItemName "TF_WEAPON_REVOLVER" "override projectile type" 13 "energy weapon penetration" 1 "attach particle effect" 3129 "fire rate bonus" 0.2 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.3 "airblast vulnerability multiplier" 0.3 "override footstep sound set" 2 } } } WaveSpawn { Name "1_2" Where flankers TotalCount 8 MaxActive 6 SpawnCount 1 WaitBeforeStarting 6 WaitBetweenSpawns 3 TotalCurrency 100 Support Limited RandomChoice { Squad { TFBot { Tag normal Class Spy Name "Asellus Australis" // Name "Spy" Skill Expert Attributes IgnoreFlag ClassIcon Spy } } } } WaveSpawn { Name "1_3" Where spawnbot TotalCount 18 MaxActive 10 SpawnCount 6 WaitBeforeStarting 2 WaitBetweenSpawns 10 TotalCurrency 50 TFBot { Tag normal Name "Asellus Borealis" // Name "Heavy" Skill Normal MaxVisionRange 1200 Class Heavy } } WaveSpawn { Name "2_2" Where flankers TotalCount 6 MaxActive 5 SpawnCount 2 WaitBeforeStarting 8 WaitBetweenSpawns 10 TotalCurrency 100 Squad { TFBot { Tag normal Name "Shotgun Acubens" // Name "Giant Shotgun Heavy" Class Heavyweapons ClassIcon heavy_shotgun Skill Expert Health 4500 WeaponRestrictions SecondaryOnly MaxVisionRange 1200 Attributes MiniBoss ItemAttributes { ItemName "TF_WEAPON_SHOTGUN_HWG" "fire rate bonus" 2.5 "bullets per shot bonus" 10 "damage penalty" 0.5 "faster reload rate" 0.1 } CharacterAttributes { "move speed bonus" 0.7 "damage force reduction" 0.3 "airblast vulnerability multiplier" 0.3 "attack projectiles" 1 "override footstep sound set" 2 } } TFBot { Tag normal Name "Uber Tegmine" Class Medic ClassIcon medic_uber Skill Hard Attributes SpawnWithFullCharge CharacterAttributes { "heal rate bonus" 5 } } } } WaveSpawn { LastSpawnOutput { Target gamerules Action RunScriptCode Param "ClientPrint(null,3,`\x079ccddcA tank with 20000 HP has spawned!`)" } Name "3_T" TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllSpawned "2_2" WaitBeforeStarting 12 TotalCurrency 100 Tank { Health 20000 Name "Wasat" // Name "Tank" ??? Speed 80 StartingPathTrackNode tank_path_b_10 OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name "3_1" Where spawnbot TotalCount 6 MaxActive 4 SpawnCount 1 WaitBeforeStarting 16 WaitBetweenSpawns 10 WaitForAllSpawned "2_2" TotalCurrency 100 TFBot { Tag normal Name "Charged Cow Mangler Pollux" // Name "Giant Charged Cow Mangler Soldier" Class Soldier Skill Expert Health 4000 WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload Attributes MiniBoss ClassIcon soldier_charged_mangler_v2 Attributes AlwaysCrit Item "The Cow Mangler 5000" ItemAttributes { ItemName "The Cow Mangler 5000" "reload time decreased" -0.8 "damage bonus" 2 } FireWeapon { Repeats 0 Delay 4 Cooldown 4 IfSeeTarget 1 Duration 4 Type "Secondary" } CharacterAttributes { "rage giving scale" 0.5 "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 } } } WaveSpawn { Name "3_2" Where flankers TotalCount 24 MaxActive 6 SpawnCount 1 WaitBeforeStarting 24 WaitBetweenSpawns 3 WaitForAllSpawned "2_2" TotalCurrency 100 TFBot { Tag normal Name "Alhena" // Name "Demoknight" Skill Hard Class Scout } } // Name "Mebsuta" WaveSpawn { Name "3_3" Where spawnbot TotalCount 16 MaxActive 6 SpawnCount 1 WaitBeforeStarting 24 WaitBetweenSpawns 3 WaitForAllSpawned "2_2" TotalCurrency 100 TFBot { Tag normal Name "Mebsuta" // Name "Demoman" Class Demoman Skill Hard } } WaveSpawn { Name "4_1" Where flankers TotalCount 2 MaxActive 2 SpawnCount 2 WaitBeforeStarting 24 WaitBetweenSpawns 2 WaitForAllSpawned "3_1" TotalCurrency 50 TFBot { Tag normal Class Pyro Name "Dragon's Fury Castor" // Name "Giant Dragon's Fury Pyro" ClassIcon pyro_dragon_fury_swordstone Skill Expert Health 3000 WeaponRestrictions PrimaryOnly Attributes MiniBoss Item "The Dragon's Fury" CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.6 "airblast vulnerability multiplier" 0.6 "override footstep sound set" 6 } } } WaveSpawn { Name "Gemini" Where spawnbot TotalCount 3 MaxActive 3 SpawnCount 3 WaitBeforeStarting 14 WaitBetweenSpawns 90 WaitForAllSpawned "4_1" TotalCurrency 125 Squad { TFBot { Tag normal Class Demoman Name "Gemini" // not changing the name of this one ClassIcon demo_sticky_daan_giant Attributes UseBossHealthBar Health 7770 Scale 1.9 Skill Expert WeaponRestrictions SecondaryOnly Item "The Filamental" Item "Starduster" Attributes MiniBoss Attributes AlwaysCrit Item "TF_WEAPON_PIPEBOMBLAUNCHER" ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "is_passive_weapon" 1 "override projectile type" 27 "fire rate penalty" 99 } ItemAttributes { ItemName "TF_WEAPON_PIPEBOMBLAUNCHER" "stickybomb charge rate" 0.01 "max pipebombs decreased" -7 "projectile range increased" 0.4 "attach particle effect" 3129 "faster reload rate" 0.65 "damage bonus" 1.5 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 4 "rage giving scale" 0.3 } } TFBot { Tag normal Name "Uber Mekbuda" Class Medic ClassIcon medic_uber Skill Hard Attributes SpawnWithFullCharge CharacterAttributes { "heal rate bonus" 5 } } TFBot { Tag normal Name "Uber Mekbuda" Class Medic ClassIcon medic_uber Skill Hard Attributes SpawnWithFullCharge CharacterAttributes { "heal rate bonus" 5 } } } } WaveSpawn { Name "Gemini" Where spawnbot TotalCount 3 MaxActive 3 SpawnCount 3 WaitBeforeStarting 14 WaitBetweenSpawns 90 WaitForAllSpawned "4_1" TotalCurrency 125 Squad { TFBot { Tag normal Class Demoman Name "Gemini" // not changing the name of this one Attributes UseBossHealthBar ClassIcon demo_giant Health 7770 Scale 1.9 Skill Expert WeaponRestrictions PrimaryOnly Item "The Iron Bomber" Item "The Filamental" Item "Starduster" Attributes MiniBoss Attributes HoldFireUntilFullReload Attributes AlwaysCrit ItemAttributes { "attach particle effect" 3129 ItemName "The Iron Bomber" "Projectile speed increased" 1.2 "faster reload rate" 0.33 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 4 "rage giving scale" 0.3 } } TFBot { Tag normal Name "Uber Mekbuda" Class Medic ClassIcon medic_uber Skill Hard Attributes SpawnWithFullCharge CharacterAttributes { "heal rate bonus" 5 } } TFBot { Tag normal Name "Uber Mekbuda" Class Medic ClassIcon medic_uber Skill Hard Attributes SpawnWithFullCharge CharacterAttributes { "heal rate bonus" 5 } } } } WaveSpawn { Name "5_4" Where spawnbot TotalCount 50 MaxActive 9 SpawnCount 4 WaitBeforeStarting 12 WaitBetweenSpawns 10 WaitForAllSpawned "3_3" TotalCurrency 25 Support 1 TFBot { Tag normal Name "Hybrid Knight Propus" // Name "Hybrid knight" Skill normal Class Demoman ClassIcon demo_targe_nys Item "The Chargin' Targe" } } WaveSpawn { Name "bison:3" Where spawnbot TotalCount 50 MaxActive 4 SpawnCount 1 WaitBeforeStarting 20 WaitBetweenSpawns 6 WaitForAllSpawned "Gemini" TotalCurrency 25 Support 1 TFBot { Tag normal Name "Crit Bison Alzirr" // Name "Charged Bison Soldier" ClassIcon soldier_bison_a Class soldier Skill Hard Item "The Righteous Bison" WeaponRestrictions SecondaryOnly Attributes AlwaysCrit } } } // Wave 4: How Far will god test us? // 900 cash in wave Wave { InitWaveOutput { Target gamerules Action RunScriptCode Param " ClientPrint(null,3,`\x079ccddcWave 4: How Far Will God Test Us?`) IncludeScript(`popextensions`) EntFire(`Barricade_Disable_Relay`, `Trigger`) EntFire(`bombpath_force_right`, `Trigger`,``,0.3) EntFire(`bombpath_force_right`, `Trigger`,``,5) // removed sniper script AddRobotTag(`Taurus`, { OnTakeDamage = function(bot, params) { if(bot.GetHealth() <= 2000) { bot.AddCondEx(72,1,bot) } } }) " } StartWaveOutput { Target wave_start_relay_classic Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name "Taurus" Where spawnbot TotalCount 4 MaxActive 4 SpawnCount 4 WaitBetweenSpawns 90 WaitBeforeStarting 0 TotalCurrency 100 Squad { TFBot { Tag normal Tag Taurus Attributes UseBossHealthBar Class Demoman ClassIcon demo_cannon Name "Taurus" // not changing the name of this one Skill Expert Health 13330 Item "Blastphomet" Item "Forgotten King's Pauldrons" Item "The Loose Cannon" WeaponRestrictions PrimaryOnly Attributes AlwaysCrit Attributes MiniBoss CharacterAttributes { "move speed bonus" 0.6 "damage force reduction" 0.2 "airblast vulnerability multiplier" 0.2 "override footstep sound set" 6 "rage giving scale" 0.5 } ItemAttributes { ItemName "The Loose Cannon" "damage causes airblast" 1 "damage bonus" 1.5 "grenade launcher mortar mode" -1 "auto fires full clip" 1 "auto fires when full" 1 "faster reload rate" 0.01 "fire rate penalty" 2 "clip size penalty" 0.25 "attach particle effect" 3129 } } TFBot { Tag normal Name "Uber Pectus Tauri" Class Medic ClassIcon medic_uber Skill Hard Attributes SpawnWithFullCharge CharacterAttributes { "heal rate bonus" 5 } } TFBot { Tag normal Name "Uber Pectus Tauri" Class Medic ClassIcon medic_uber Skill Hard Attributes SpawnWithFullCharge CharacterAttributes { "heal rate bonus" 5 } } TFBot { Tag normal Name "Uber Pectus Tauri" Class Medic ClassIcon medic_uber Skill Hard Attributes SpawnWithFullCharge CharacterAttributes { "heal rate bonus" 5 } } } } WaveSpawn { Name "1_2" Where flankers TotalCount 8 MaxActive 5 SpawnCount 1 WaitBetweenSpawns 2 WaitBeforeStarting 12 TotalCurrency 50 TFBot { Tag normal Name "Reflect Delta Tauri" // Name "Charged Pyro" Class Pyro Skill Hard ClassIcon pyro_reflect_daan // Attributes AlwaysCrit } } WaveSpawn { Name "1_3" Where spawnbot TotalCount 24 MaxActive 10 SpawnCount 6 WaitBetweenSpawns 8 WaitBeforeStarting 4 TotalCurrency 50 TFBot { Tag normal Name "Crit Theta Tauri" // Name "Heavy" Skill Normal MaxVisionRange 1200 Class Heavy Attributes AlwaysCrit } } WaveSpawn { Name "2_1a" Where flankers TotalCount 1 MaxActive 1 SpawnCount 1 // WaitForAllSpawned "1_5" WaitBetweenSpawns 16 WaitBeforeStarting 8 TotalCurrency 20 TFBot { Tag normal Name "Burst Fire Ain" // Name "GiantBurst Fire Soldier" Class Soldier ClassIcon soldier_burstfire Health 4200 Skill Expert WeaponRestrictions PrimaryOnly Attributes MiniBoss Attributes HoldFireUntilFullReload ItemAttributes { ItemName "TF_WEAPON_ROCKETLAUNCHER" "damage bonus" 2.0 "faster reload rate" 0.4 "fire rate bonus" 0.2 "clip size upgrade atomic" 5.0 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 "Projectile speed increased" 0.9 } } } WaveSpawn { Name "2_1b" Where spawnbot TotalCount 4 MaxActive 4 SpawnCount 2 WaitBetweenSpawns 18 WaitBeforeStarting 18 WaitForAllSpawned "2_1a" TotalCurrency 80 Squad { TFBot { Tag normal Name "Burst Fire Ain" // Name "GiantBurst Fire Soldier" Class Soldier ClassIcon soldier_burstfire Health 4200 Skill Expert WeaponRestrictions PrimaryOnly Attributes MiniBoss Attributes HoldFireUntilFullReload ItemAttributes { ItemName "TF_WEAPON_ROCKETLAUNCHER" "damage bonus" 2.0 "faster reload rate" 0.4 "fire rate bonus" 0.2 "clip size upgrade atomic" 5.0 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 "Projectile speed increased" 0.9 } } TFBot { Tag normal Name "Quick-Fix Aldebaran" // Name "Giant Quick-Fix Medic" Class Medic ClassIcon medic_giant Skill Expert Health 4500 Item "The Quick-Fix" WeaponRestrictions SecondaryOnly Attributes MiniBoss ItemAttributes { ItemName "The Quick-Fix" "ubercharge rate bonus" 0.01 } ItemAttributes { ItemName "TF_WEAPON_SYRINGEGUN_MEDIC" "damage penalty" 0.1 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.6 "airblast vulnerability multiplier" 0.6 "heal rate bonus" 200 "health regen" 50 } } } } WaveSpawn { Name "2_2" Where spawnbot TotalCount 16 MaxActive 6 SpawnCount 1 WaitBetweenSpawns 2 WaitForAllSpawned "2_1a" WaitBeforeStarting 22 TotalCurrency 50 TFBot { Tag normal Name "Force-a-Nature Hyadum I" Class Scout Skill Normal Item "The Force-a-Nature" ClassIcon scout_fan } } WaveSpawn { Name "3_1b" Where spawnbot TotalCount 6 MaxActive 3 SpawnCount 1 WaitBetweenSpawns 6 WaitForAllSpawned "2_1b" WaitBeforeStarting 45 TotalCurrency 100 TFBot { Tag normal Name "Expeditious Elnath" // Name "Super Scout" Class Scout ClassIcon scout_giant_fast Skill Easy Health 1200 WeaponRestrictions MeleeOnly Attributes MiniBoss CharacterAttributes { "move speed bonus" 2 "damage force reduction" 0.5 "airblast vulnerability multiplier" 0.5 "override footstep sound set" 5 } } } WaveSpawn { LastSpawnOutput { Target gamerules Action RunScriptCode Param "ClientPrint(null,3,`\x079ccddcA tank with 30000 HP has spawned!`)" } Name "4_2" TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllSpawned "2_1b" WaitBeforeStarting 30 TotalCurrency 200 Tank { Health 30000 Name "Sheratan" // Name "Tank" ??? Speed 80 StartingPathTrackNode tank_path_a_10 OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name "3_3" Where flankers TotalCount 12 MaxActive 9 SpawnCount 6 WaitBeforeStarting 32 WaitBetweenSpawns 12 WaitForAllSpawned "2_1b" TotalCurrency 50 TFBot { Tag normal Name "Crit Mesarthim" // Name "Charged Soldier" Skill Expert Class Soldier Attributes AlwaysCrit WeaponRestrictions PrimaryOnly } } // Name "Botein" WaveSpawn { Name "Aries" Where spawnbot TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 20 WaitForAllSpawned "3_1b" TotalCurrency 100 TFBot { Tag normal Tag Aries Class Heavyweapons Attributes UseBossHealthBar Name "Aries" // not changing the name of this one ClassIcon heavy_shotgun_healonkill // shotgun_heal_nys ? Skill Expert Health 14440 WeaponRestrictions SecondaryOnly Item "Bone-Cut Belt" MaxVisionRange 1200 Attributes MiniBoss Attributes HoldFireUntilFullReload ItemAttributes { ItemName "TF_WEAPON_SHOTGUN_HWG" "fire rate bonus" 0.5 "faster reload rate" 0.85 "damage bonus" 1.5 "minicrits become crits" 1 "attach particle effect" 3129 } CharacterAttributes { "healing received bonus" 6 "move speed bonus" 0.5 "damage force reduction" 0.3 "airblast vulnerability multiplier" 0.3 "attack projectiles" 1 "override footstep sound set" 2 } } } WaveSpawn { Name "5_c" Where spawnbot TotalCount 50 MaxActive 6 SpawnCount 4 WaitBeforeStarting 12 WaitBetweenSpawns 12 WaitForAllSpawned "Aries" Support 1 TotalCurrency 50 TFBot { Tag normal // Tag ariesupp Name "Extended Concherer Delta-1 Tauri" // Name "Extended Concherer Soldier" Class Soldier Skill Normal ClassIcon soldier_conch Attributes SpawnWithFullCharge Item "The Concheror" CharacterAttributes { "increase buff duration" 10 } } } WaveSpawn { Name "5_b" Where spawnbot TotalCount 50 MaxActive 6 SpawnCount 1 WaitBeforeStarting 12 WaitBetweenSpawns 5 WaitForAllSpawned "Aries" Support 1 TotalCurrency 50 TFBot { Tag normal // Tag ariesupp Name "Extended Buff Delta-2 Tauri" // Name "Extended Buff Soldier" Class Soldier Skill Normal ClassIcon soldier_buff Attributes SpawnWithFullCharge Item "The Buff Banner" CharacterAttributes { "increase buff duration" 10 } } } } // Wave 5: I'll Never Forget This Minute, This Second. // 700 cash in wave Wave { InitWaveOutput { Target gamerules Action RunScriptCode Param " ClientPrint(null,3,`\x079ccddcWave 5: I'll Never Forget This Minute, This Second.`) IncludeScript(`popextensions`) EntFire(`Barricade_Disable_Relay`, `Trigger`) EntFire(`bombpath_force_left`, `Trigger`,``,0.3) EntFire(`bombpath_force_left`, `Trigger`,``,5) // removed sniper script local pThreshold = 1 ::piscesShield <- function(robot) { if(pThreshold == 1) { if(robot.GetHealth() < 14800) { robot.RemoveCondEx(60,true) robot.AddCondEx(59,-1,robot) pThreshold = 2 } } if(pThreshold == 2) { if(robot.GetHealth() < 7400) { robot.RemoveCondEx(59,true) robot.AddCondEx(58,-1,robot) pThreshold = 3 } } if(pThreshold == 3) { return null } } AddRobotTag(`Pisces`, { OnTakeDamage = function(bot, params) { piscesShield(bot) } OnSpawn = function(bot, params) { bot.AddCondEx(60,-1,bot) } }) " } StartWaveOutput { Target wave_start_relay_classic Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name "Pisces" Where spawnbot TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 1 WaitBetweenSpawns 90 TotalCurrency 100 TFBot { Class Heavyweapons Skill Expert WeaponRestrictions MeleeOnly Name "Pisces" Tag Pisces Tag normal ClassIcon heavy_steelfist_hok Health 22200 Scale 1.75 Item "Fists of Steel" Attributes MiniBoss Attributes UseBossHealthBar Item "The Spooky Sleeves" ItemAttributes { ItemName "The Spooky Sleeves" "attach particle effect" 3129 } ItemAttributes { ItemName "Fists of Steel" // "attach particle effect" 3129 // doesn't attach correctly "damage bonus" 3 "heal on kill" 1000 } CharacterAttributes { "move speed bonus" 0.4 // "health regen" 100 "damage force reduction" 0.3 "airblast vulnerability multiplier" 0.3 "override footstep sound set" 2 "airblast vertical vulnerability multiplier" 0.1 "rage giving scale" 0.1 } } } WaveSpawn { Name "1_b" Where flankers TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 4 WaitBetweenSpawns 8 TotalCurrency 50 TFBot { Tag normal Attributes AlwaysCrit Name "Crit Rapid Fire Gamma Piscium" Class Sniper // Name "Bowman Rapid Fire" Item "The Huntsman" ClassIcon sniper_bow_multi Skill Hard Health 1200 Scale 1.5 ItemAttributes { ItemName "The Huntsman" "fire rate bonus" 0.6 } CharacterAttributes { "head scale" 0.7 "move speed bonus" 0.85 } } } WaveSpawn { Name "1_1" Where spawnbot TotalCount 32 MaxActive 14 SpawnCount 8 WaitBeforeStarting 8 WaitBetweenSpawns 12 TotalCurrency 50 TFBot { Tag normal Name "Direct Hit Omega Piscium" // Name "Direct Hit Soldier" Class soldier Skill Hard Item "The Direct Hit" ClassIcon soldier_directhit_lite } } WaveSpawn { Name "2_1" Where Spawnbot TotalCount 4 MaxActive 4 SpawnCount 2 WaitForAllSpawned "1_1" WaitBeforeStarting 0 WaitBetweenSpawns 24 TotalCurrency 50 Squad { TFBot { Tag normal Name "Brass Beast Alrescha" // Name "Giant Brass Beast Heavy" Class Heavy ClassIcon heavy_brass_nys Skill Expert Health 5000 WeaponRestrictions PrimaryOnly MaxVisionRange 1200 Attributes MiniBoss Item "The Brass Beast" ItemAttributes { ItemName "The Brass Beast" "damage bonus" 1.5 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.3 "airblast vulnerability multiplier" 0.3 "override footstep sound set" 2 } } TFBot { Tag normal Name "Kritzkrieg Alpherg" // Name "Giant Kritzkrieg Medic" Class Medic ClassIcon medic_kritz Skill Expert Health 3000 Item "The Kritzkrieg" Attributes MiniBoss WeaponRestrictions SecondaryOnly //Attributes ProjectileShield Attributes IgnoreEnemies Attributes SpawnWithFullCharge ItemAttributes { ItemName "The Kritzkrieg" "ubercharge rate bonus" 2 // "generate rage on heal" 2 "uber duration bonus" 999 // "increase buff duration" 3 } CharacterAttributes { "bot medic uber health threshold" 3001 "move speed bonus" 0.5 "damage force reduction" 0.6 "airblast vulnerability multiplier" 0.6 "heal rate bonus" 200 } } } } WaveSpawn { Name "3_3" Where spawnbot TotalCount 24 MaxActive 6 SpawnCount 1 WaitBeforeStarting 12 WaitBetweenSpawns 3 WaitForAllSpawned "1_1" TotalCurrency 50 TFBot { Tag normal Name "Theta Piscium" Skill Normal MaxVisionRange 1200 Class Heavy } } WaveSpawn { Name "3_3" Where flankers TotalCount 18 MaxActive 8 SpawnCount 6 WaitBeforeStarting 12 WaitBetweenSpawns 14 WaitForAllSpawned "1_1" TotalCurrency 50 TFBot { Tag normal Name "Iota Piscium" // Name "Bison Soldier" ClassIcon soldier_bison_a Class soldier Skill Hard Item "The Righteous Bison" WeaponRestrictions SecondaryOnly Attributes AlwaysCrit } } WaveSpawn { LastSpawnOutput { Target gamerules Action RunScriptCode Param "ClientPrint(null,3,`\x079ccddcA tank with 35000 HP has spawned!`)" } Name "4_T" TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllSpawned "2_1" WaitBeforeStarting 30 TotalCurrency 50 Tank { Health 35000 Name "Fumalsamakah" // Name "Tank" ??? Speed 80 StartingPathTrackNode tank_path_b_10 OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name "4_1" Where flankers TotalCount 16 MaxActive 12 SpawnCount 4 WaitForAllSpawned "2_1" WaitBeforeStarting 24 WaitBetweenSpawns 12 TotalCurrency 80 Squad { TFBot { Tag normal Name "Burst Fire Sadalmelik" // Name "Giant Burst Fire Soldier" Class soldier ClassIcon soldier_burstfire Health 4200 Skill Expert WeaponRestrictions PrimaryOnly Attributes MiniBoss Attributes HoldFireUntilFullReload Attributes AlwaysCrit ItemAttributes { ItemName "TF_WEAPON_ROCKETLAUNCHER" "damage bonus" 2.0 "faster reload rate" 0.5 "fire rate bonus" 0.1 "clip size upgrade atomic" 8.0 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 "Projectile speed increased" 0.9 } } TFBot { Name "Bullet Vaccinator Zeta Aquarii B" Class Medic Skill Expert ClassIcon medic_vacc_trio WeaponRestrictions SecondaryOnly Attributes SpawnWithFullCharge ItemAttributes { ItemName "TF_WEAPON_MEDIGUN" "lunchbox adds minicrits" 3 "medigun bullet resist deployed" 1 "medigun bullet resist passive" 1 "medigun charge is resists" 3 //3 for bullet, 4 for blast, 5 for fire "ubercharge rate bonus" 200 } CharacterAttributes { "bot medic uber health threshold" 4444 } } TFBot { Name "Blast Vaccinator Zeta Aquarii Aa" Class Medic Skill Expert ClassIcon medic_vacc_trio WeaponRestrictions SecondaryOnly Attributes SpawnWithFullCharge ItemAttributes { ItemName "TF_WEAPON_MEDIGUN" "lunchbox adds minicrits" 3 "medigun bullet resist deployed" 1 "medigun bullet resist passive" 1 "medigun charge is resists" 4 //3 for bullet, 4 for blast, 5 for fire "ubercharge rate bonus" 200 } CharacterAttributes { "bot medic uber health threshold" 4444 } } TFBot { Name "Fire Vaccinator Zeta Aquarii Ab" Class Medic Skill Expert ClassIcon medic_vacc_trio WeaponRestrictions SecondaryOnly Attributes SpawnWithFullCharge ItemAttributes { ItemName "TF_WEAPON_MEDIGUN" "lunchbox adds minicrits" 3 "medigun bullet resist deployed" 1 "medigun bullet resist passive" 1 "medigun charge is resists" 5 //3 for bullet, 4 for blast, 5 for fire "ubercharge rate bonus" 200 } CharacterAttributes { "bot medic uber health threshold" 4444 } } } } WaveSpawn { Name "5_3" Where spawnbot TotalCount 25 MaxActive 5 SpawnCount 1 WaitBeforeStarting 35 WaitBetweenSpawns 6 WaitForAllSpawned "2_1" TotalCurrency 25 Support 1 TFBot { Tag normal Name "Extened Concherer Sadaltager" // Name "Extened Concherer Soldier" Class Soldier Skill Normal ClassIcon soldier_conch Attributes SpawnWithFullCharge Item "The Concheror" CharacterAttributes { "increase buff duration" 9.0 } } } WaveSpawn { Name "Aquarius" Where Spawnbot TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 14 WaitForAllSpawned "4_1" WaitBetweenSpawns 20 TotalCurrency 50 TFBot { Tag normal Name "Aquarius" // not changing the name of this one Attributes UseBossHealthBar ClassIcon pyro_dragon_fury_burstfire_swordstone_giant // pyro_dragon_fury_swordstone_giant Attributes MiniBoss Health 15550 Class pyro Skill Expert MaxVisionRange 350 WeaponRestrictions PrimaryOnly Item "The Dragon's Fury" Item "Phobos Filter" Item "The Flare Gun" ItemAttributes { ItemName "The Flare Gun" "override projectile type" 27 "is_passive_weapon" 1 "faster reload rate" 0.02 "damage penalty" 0.01 "dmg bonus vs buildings" 1.5 } ItemAttributes { ItemName "The Dragon's Fury" "attach particle effect" 3129 "mult_item_meter_charge_rate" 0.6 // "damage bonus" 3 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.6 "airblast vulnerability multiplier" 0.6 "override footstep sound set" 6 } } } WaveSpawn { Name "a_1" Where spawnbot TotalCount 16 MaxActive 6 SpawnCount 2 WaitForAllSpawned "Aquarius" WaitBeforeStarting 10 WaitBetweenSpawns 4 TotalCurrency 25 Support 1 TFBot { Tag normal Name "Rapid Fire Manmelter Omicron Piscium" // Name "Dragon's Fury Pyro" Class Pyro Skill Expert Item "The Manmelter" WeaponRestrictions SecondaryOnly ClassIcon pyro_manmelter_spammer_yoovy ItemAttributes { ItemName "The Manmelter" "fire rate bonus" 0.3 } } } WaveSpawn { Name "a_2" Where spawnbot TotalCount 16 MaxActive 6 SpawnCount 2 WaitForAllSpawned "Aquarius" WaitBeforeStarting 10 WaitBetweenSpawns 4 TotalCurrency 25 Support 1 TFBot { Tag normal Name "Dragon's Fury Omicron Piscium" // Name "Dragon's Fury Pyro" Class Pyro ClassIcon pyro_dragon_fury_swordstone Skill Expert WeaponRestrictions PrimaryOnly Item "The Dragon's Fury" } } } // Wave 6: The Lights in the Sky Are Stars /////////////////////////////////////////////////////// // Final Boss: Polaris // Even Stars Burn Out // Capricornus, Saggittarius, Scorpius, Libra Wave { StartWaveOutput { Target wave_start_relay_classic Action Trigger } InitWaveOutput { Target gamerules Action RunScriptCode Param " ClientPrint(null,3,`\x079ccddcFinal Wave: The Lights in the Sky Are Stars.`) ClientPrint(null,3,`\x079f9cdcThe final boss: \x07e087f4Polaris \x079f9cdccannot be killed by regular means, you will only be able to weaken them temporarily.`) ClientPrint(null,3,`\x079f9cdcYou can deliver \x07e087f4Stellar Bombs\x079f9cdc to Polaris while they are in their weakened state to damage them.`) ClientPrint(null,3,`\x079f9cdcThese can be obtained by killing \x07e087f4Constellation Robots\x079f9cdc that Polaris will summon in retaliation to taking damage.`) EntFire(`Barricade_Disable_Relay`, `Trigger`) EntFire(`bombpath_force_left`, `Trigger`,``,0.3) EntFire(`bombpath_force_left`, `Trigger`,``,5) IncludeScript(`popextensions`) for (local i = 1; i <= Constants.Server.MAX_PLAYERS; i++) { local player = PlayerInstanceFromIndex(i) if(player == null) continue if(!IsPlayerABot(player)) continue if(player.HasBotTag(`boss`)) { printl(`player: `+i+` is a boss`) player.RemoveBotTag(`boss`) } if(player.HasBotTag(`Capricorn`)) { player.RemoveBotTag(`Capricorn`) } if(player.HasBotTag(`Saggittarius`)) { player.RemoveBotTag(`Saggittarius`) } if(player.HasBotTag(`Scorpio`)) { player.RemoveBotTag(`Scorpio`) } if(player.HasBotTag(`Libra`)) { player.RemoveBotTag(`Libra`) } if(player.HasBotTag(`Dummy`)) { player.RemoveBotTag(`Dummy`) } if(player.HasBotTag(`CapS`)) { player.RemoveBotTag(`CapS`) } if(player.HasBotTag(`SagS`)) { player.RemoveBotTag(`SagS`) } if(player.HasBotTag(`ScoS`)) { player.RemoveBotTag(`ScoS`) } if(player.HasBotTag(`LibS`)) { player.RemoveBotTag(`LibS`) } } AddRobotTag(`Capricorn`, { OnSpawn = function(bot, params) { bot.SetOrigin(Vector(3697, 5313, 76)) } }) AddRobotTag(`Saggittarius`, { OnSpawn = function(bot, params) { bot.SetOrigin(Vector(3697, 5313, 76)) } }) AddRobotTag(`Scorpio`, { OnSpawn = function(bot, params) { bot.SetOrigin(Vector(3697, 5313, 76)) } }) AddRobotTag(`Libra`, { OnSpawn = function(bot, params) { bot.SetOrigin(Vector(3697, 5313, 76)) } }) AddRobotTag(`Dummy`, { OnSpawn = function(bot, params) { bot.AddCondEx(64,-1,bot) bot.SetOrigin(Vector(-1998, 543, -334)) } }) AddRobotTag(`CapS`, { OnSpawn = function(bot, params) { bot.SetOrigin(Vector(1519,-750,-500)) } }) AddRobotTag(`SagS`, { OnSpawn = function(bot, params) { bot.SetOrigin(Vector(1862, 1705, -420)) } }) AddRobotTag(`ScoS`, { OnSpawn = function(bot, params) { bot.SetOrigin(Vector(1054, 1674, -200)) } }) AddRobotTag(`LibS`, { OnSpawn = function(bot, params) { bot.SetOrigin(Vector(-445, 2520, -200)) } }) EntFire(`spawnMiniBoss`,`Disable`,``,5) " } DoneOutput { Target wave_finished_relay Action trigger } WaveSpawn { LastSpawnOutput { Target gamerules Action RunScriptFile Param "the_stars_above.nut" } Name "Polaris" Where spawnbot TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 1 TFBot { Class Demoman Health 66600 Name "Polaris" ClassIcon demo_bomber EventChangeAttributes { Default { Tag boss Tag normal // my baby... Attributes MiniBoss // Attributes UseBossHealthBar ActionOverride fetchflag WeaponRestrictions PrimaryOnly Skill Expert Item "Forgotten King's Pauldrons" Item "The Caped Crusader" Item "Prince Tavish's Crown" // Attributes HoldFireUntilFullReload Attributes AlwaysCrit ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "attach particle effect" 3072 "fire rate bonus" 0.2 "faster reload rate" 0.3 "clip size penalty" 3.0 "clip size upgrade atomic" 0 "Projectile speed increased" 1.1 "dmg bonus vs buildings" 2 "damage bonus" 1.5 } ItemAttributes { ItemName "Prince Tavish's Crown" "attach particle effect" 99 } CharacterAttributes { "move speed bonus" 0.35 "damage force reduction" 0.7 "airblast vulnerability multiplier" 0.3 "override footstep sound set" 4 "airblast vertical vulnerability multiplier" 0.1 "rage giving scale" 0.1 "cancel falling damage" 1 } } BotAttributesSet1 { MaxVisionRange 1 Tag boss Tag normal Attributes MiniBoss // Attributes UseBossHealthBar ActionOverride Idle Attributes IgnoreFlag WeaponRestrictions MeleeOnly Skill Expert Item "Forgotten King's Pauldrons" Item "The Caped Crusader" Item "Prince Tavish's Crown" Item "Festive Eyelander" ItemAttributes { ItemName "Festive Eyelander" "attach particle effect" 3072 } ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "attach particle effect" 3072 } ItemAttributes { ItemName "Prince Tavish's Crown" "attach particle effect" 99 } CharacterAttributes { // "health regen" 6660 "move speed bonus" 0.01 "damage force reduction" 0.01 "airblast vulnerability multiplier" 0.01 "override footstep sound set" 4 "airblast vertical vulnerability multiplier" 0.01 "rage giving scale" 0.1 "cancel falling damage" 1 } } BotAttributesSet2 { Tag boss Tag normal Attributes MiniBoss Attributes UseBossHealthBar WeaponRestrictions PrimaryOnly Attributes AlwaysCrit ActionOverride fetchflag Skill Expert Item "Forgotten King's Pauldrons" Item "The Caped Crusader" Item "Prince Tavish's Crown" Attributes AlwaysCrit Attributes HoldFireUntilFullReload ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "attach particle effect" 3072 "faster reload rate" 0.33 "fire rate bonus" 0.1 "clip size upgrade atomic" 8.0 "Projectile speed increased" 1 "projectile spread angle penalty" 5 } ItemAttributes { ItemName "Prince Tavish's Crown" "attach particle effect" 99 } CharacterAttributes { "move speed bonus" 0.4 "damage force reduction" 0.7 "airblast vulnerability multiplier" 0.3 "override footstep sound set" 4 "airblast vertical vulnerability multiplier" 0.1 "rage giving scale" 0.1 "cancel falling damage" 1 } } } } } WaveSpawn { Name "Polaris_dummy" Where spawnbot TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 Support Limited RandomChoice { Squad { TFBot { Class Demoman Health 5000 Name "Polaris_Shield" ClassIcon demoknight_shield Tag "Dummy" EventChangeAttributes { Default { Attributes IgnoreFlag Attributes MiniBoss Attributes UseBossHealthBar Skill Easy ActionOverride Idle Tag "Dummy" CharacterAttributes { "cancel falling damage" 1 "move speed bonus" 0.001 } } BotAttributesSet1 { Attributes IgnoreFlag Attributes MiniBoss Attributes UseBossHealthBar Skill Easy Tag "Dummy" ActionOverride Idle CharacterAttributes { "health regen" 350 "cancel falling damage" 1 "move speed bonus" 0.001 } } } } } } } WaveSpawn { Name "Capricorn" Where spawnbot TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 2 TotalCurrency 50 TFBot { Tag "Capricorn" Name "Capricorn" Health 7770 // 7770 ClassIcon scout_burstfire Class scout Skill Expert Attributes MiniBoss WeaponRestrictions PrimaryOnly Attributes AlwaysCrit Attributes HoldFireUntilFullReload Action Mobber Item "Cadet Visor" Item "Fuel Injector" MaxVisionRange 1200 ItemAttributes { "attach particle effect" 3129 ItemName "TF_WEAPON_SCATTERGUN" "fire rate bonus" 0.65 "faster reload rate" 0.65 // "damage bonus" 2 "dmg bonus vs buildings" 2 } CharacterAttributes { "increased jump height" 2 "move speed bonus" 1.25 "damage force reduction" 0.7 "airblast vulnerability multiplier" 3.0 "override footstep sound set" 5 "airblast vertical vulnerability multiplier" 0.1 "rage giving scale" 0.1 "cancel falling damage" 1 } } } WaveSpawn { Name "Saggittarius" Where spawnbot TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 2 TotalCurrency 50 TFBot { Tag "Saggittarius" Name "Saggitarius" Health 9990 Attributes AlwaysCrit Class Pyro Skill normal Attributes MiniBoss Attributes AlwaysFireWeapon WeaponRestrictions PrimaryOnly ClassIcon pyro_ranged Action mobber Item "The Space Diver" Item "Phobos Filter" MaxVisionRange 1800 ItemAttributes { "attach particle effect" 3129 ItemName "TF_WEAPON_FLAMETHROWER" "airblast pushback scale" 2.0 "dmg bonus vs buildings" 2 "damage bonus" 2 "flame_drag" 4 } CharacterAttributes { "move speed bonus" 0.45 "damage force reduction" 0.3 "airblast vulnerability multiplier" 0.3 "override footstep sound set" 2 "airblast vertical vulnerability multiplier" 0.1 "rage giving scale" 0.2 "cancel falling damage" 1 } } } WaveSpawn { Name "Scorpio" Where spawnbot TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 2 TotalCurrency 50 TFBot { Tag "Scorpio" Name "Scorpio" Health 12220 Attributes AlwaysCrit Class Heavy MaxVisionRange 1200 Skill Expert Attributes MiniBoss WeaponRestrictions PrimaryOnly ClassIcon heavy_atomic_v2 Action mobber Item "The Purity Fist" ItemAttributes { "attach particle effect" 3129 ItemName "TF_WEAPON_MINIGUN" "damage bonus" 3 "dmg bonus vs buildings" 10 "override projectile type" 13 "energy weapon penetration" 1 "projectile spread angle penalty" 6 "fire rate penalty" 0.75 } CharacterAttributes { "move speed bonus" 0.4 "damage force reduction" 0.3 "airblast vulnerability multiplier" 0.4 "airblast vertical vulnerability multiplier" 0.1 "rage giving scale" 0.2 "override footstep sound set" 2 "cancel falling damage" 1 } } } WaveSpawn { Name "Libra" Where spawnbot TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 2 TotalCurrency 50 TFBot { Tag "Libra" Name "Libra" Health 9990 Attributes MiniBoss Attributes HoldFireUntilFullReload Attributes AlwaysCrit ClassIcon soldier_nuke2 Class Soldier Skill Expert WeaponRestrictions PrimaryOnly Scale 1.75 Action mobber Item "Tyrantium Helmet" Item "The Space Bracers" Item "The Space Bracers" Item "The Black Box" ItemAttributes { ItemName "The Black Box" "damage bonus" 5 "damage causes airblast" 1 "faster reload rate" 0.01 "fire rate penalty" 4 "projectile spread angle penalty" 1 "use large smoke explosion" 1 "blast radius increased" 2 } CharacterAttributes { "rage giving scale" 0.2 "move speed bonus" 0.4 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 "airblast vertical vulnerability multiplier" 0.1 } } } // invasion support spawners WaveSpawn { Name "Capricorn_Support" Where spawnMiniBoss TotalCount 4 MaxActive 4 SpawnCount 4 WaitBeforeStarting 10 TotalCurrency 20 Support Limited TFBot { Action mobber Tag "CapS" Name "Steel Gauntlet Dabih" Class Heavyweapons Skill Hard ClassIcon heavy_steelfist Health 900 Scale 1.5 WeaponRestrictions MeleeOnly Item "Fists of Steel" Attributes AlwaysCrit } } WaveSpawn { Name "Saggittarius_Support" Where spawnMiniBoss TotalCount 4 MaxActive 4 SpawnCount 4 WaitBeforeStarting 15 WaitForAllSpawned "Capricorn_Support" TotalCurrency 20 Support Limited TFBot { Action mobber Tag "SagS" Name "Steel Gauntlet Kaus Media" Class Heavyweapons Skill Hard ClassIcon heavy_steelfist Health 900 Scale 1.5 WeaponRestrictions MeleeOnly Item "Fists of Steel" Attributes AlwaysCrit } } WaveSpawn { Name "Scorpio_Support" Where spawnMiniBoss TotalCount 4 MaxActive 4 SpawnCount 4 WaitForAllSpawned "Saggittarius_Support" WaitBeforeStarting 15 TotalCurrency 20 Support Limited TFBot { Action mobber Tag "ScoS" Name "Steel Gauntlet Shaula" Class Heavyweapons Skill Hard ClassIcon heavy_steelfist Health 900 Scale 1.5 WeaponRestrictions MeleeOnly Item "Fists of Steel" Attributes AlwaysCrit } } WaveSpawn { Name "Libra_Support" Where spawnMiniBoss TotalCount 4 MaxActive 4 SpawnCount 4 WaitBeforeStarting 15 WaitForAllSpawned "Scorpio_Support" TotalCurrency 20 Support Limited TFBot { Action mobber Tag "LibS" Name "Steel Gauntlet Methuselah" Class Heavyweapons Skill Hard ClassIcon heavy_steelfist Health 900 Scale 1.5 WeaponRestrictions MeleeOnly Item "Fists of Steel" Attributes AlwaysCrit } } // Regular mission support WaveSpawn { Name "1_1" Where spawnbot TotalCount 12 MaxActive 6 SpawnCount 2 WaitBetweenSpawns 6 WaitBeforeStarting 3 TotalCurrency 24 Support Limited Squad { TFBot { Tag normal Name "Direct Hit Brachium A" Class Soldier Skill Expert Item "The Direct Hit" ClassIcon soldier_directhit_lite } TFBot { Tag normal Name "Quick Uber Brachium B" // Name "Quick Uber Medic" Template T_TFBot_Medic_QuickUber } } } WaveSpawn { Name "Heavy" Where spawnbot TotalCount 18 MaxActive 6 SpawnCount 6 WaitBetweenSpawns 15 WaitBeforeStarting 0 WaitForAllSpawned "1_1" TotalCurrency 36 Support Limited TFBot { Tag normal Name "Zubeneschamali" Class Heavy MaxVisionRange 1200 Skill Normal } } WaveSpawn { Name "DH" Where flankers TotalCount 18 MaxActive 6 SpawnCount 6 WaitBetweenSpawns 10 WaitBeforeStarting 0 WaitForAllDead "Heavy" TotalCurrency 36 Support Limited TFBot { Tag normal Name "Direct Hit Brachium A" Class Soldier Skill Expert Item "The Direct Hit" ClassIcon soldier_directhit_lite } } WaveSpawn { Name "2_1" Where spawnbot TotalCount 50 MaxActive 6 SpawnCount 1 WaitBetweenSpawns 4 WaitBeforeStarting 6 WaitForAllDead "1_1" TotalCurrency 50 Support 1 TFBot { Tag normal Name "C.A.P.P.E.R Deneb Algedi" // Name "Charged Sandman Scout" Class Scout WeaponRestrictions SecondaryOnly ClassIcon scout_capper_tind Item "The C.A.P.P.E.R" Skill Normal MaxVisionRange 800 } } } //:3 }