/////////////////////////////////////////////////////////////////////////// // BEGIN POP FILE /////////////////////////////////////////////////////////////////////////// #base robot_giant.pop #base robot_standard.pop #base robot_gatebot.pop #base robot_gatebot2.pop #base robot_extras.pop #base robot_homing.pop #base robot_corrupted.pop //pee pee poo poo I am going insane help //Made by Wacev //inspired by hellburg //rafmod required //spawnbot_1 //flankers_1 //spawnbot_long //spawnbot_lower //spawnbot_mission_sentrybuster_1 //spawnbot_mission_sniper_1 //spawnbot_mission_spy_1 //spawnbot_2 //flankers_2 //spawnbot_mission_sentrybuster_2 //spawnbot_mission_sniper_2 //spawnbot_mission_spy_2 //tank_path_a_1 WaveSchedule { StartingCurrency 5000 RespawnWaveTime 5 CanBotsAttackWhileInSpawnRoom no CustomUpgradesFile "mvm_upgrades_corrupted_incursion.txt" TextPrintTime 0 SentryHintBombForwardRange 2000 // How far in front of the bomb the engineer can teleport in (default: 0) SentryHintBombBackwardRange 2000 // How far behind the bomb the engineer can teleport in (default: 3000) SentryHintMinDistanceFromBomb 250 // How far the engineer spot must be behind the bomb (default: 1300) AllowBotExtraSlots 1 RobotLimit 42 //8 slots for support, common bots should go over 30, allowing some extra slots just in case. PrecacheModel models/bots/boss_bot/boss_tank_ubered.mdl PrecacheModel models/props_td/models/props_td/atom_bomb_blue2.mdl ExtraSpawnPoint { Name "spawnbot_timer" TeamNum 2 X "236" Y "-1655" Z "-63" } CustomScriptSounds { "Brutalist.Hit" { "channel" "CHAN_ITEM" "volume" "0.9" "pitch" "95,105" "soundlevel" "SNDLVL_NONE" "rndwave" { "wave" "physics/body/body_medium_break2.wav" "wave" "physics/body/body_medium_break3.wav" "wave" "physics/body/body_medium_break4.wav" } } } ///////////////// //TEMPLATES ///////////////// Templates { T_TFBot_Giant_Pyro_Gas_Passer { ClassIcon pyro_gascann_giant Name "Giant Gas Passer Pyro" Class Pyro Skill Expert WeaponRestrictions SecondaryOnly Item "The Gas Passer" Attributes Miniboss Health 3000 ItemAttributes { ItemName "The Gas Passer" "force weapon switch" 1 "item_meter_charge_rate" 4 "weapon burn dmg increased" 2.5 } ItemAttributes { ItemName "TF_WEAPON_FIREAXE" "is_passive_weapon" 1 //move speed fix "fire rate bonus" 100000 //no attack } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.6 "airblast vulnerability multiplier" 0.6 "override footstep sound set" 6 } } T_TFbot_Giant_Rapid_Conch_Soldier { ClassIcon soldier_rapid_conch Template T_TFBot_Giant_Soldier_Extended_Concheror ItemAttributes { ItemName "TF_WEAPON_ROCKETLAUNCHER" "faster reload rate" -0.8 "fire rate bonus" 0.5 "Projectile speed increased" 0.65 } } T_TFbot_Giant_Burst_Battalion_Soldier { ClassIcon soldier_backup_burstfire_yoovy_giant Template T_TFBot_Giant_Soldier_Extended_Battalion ItemAttributes { ItemName "TF_WEAPON_ROCKETLAUNCHER" "faster reload rate" 0.6 "fire rate bonus" 0.1 "clip size upgrade atomic" 5.0 "Projectile speed increased" 0.65 } } T_TFBot_Giant_Soldier_SlowBarrage_Buff { ClassIcon soldier_barrage_buff Template T_TFBot_Giant_Soldier_SlowBarrage Item "The Buff Banner" Attributes SpawnWithFullCharge CharacterAttributes { "increase buff duration" 9.0 "health regen" 40 "move speed bonus" 0.5 "damage bonus" 1.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 "airblast vertical vulnerability multiplier" 0.1 "Projectile speed increased" 0.4 } } T_TFBot_Heavy_Brutalist { ClassIcon heavy_warrior Name "Brutalist" Class Heavyweapons Health 1250 Scale 1.4 Item "Warrior's Spirit" Attributes AlwaysFireWeapon Attributes AlwaysCrit Action Mobber WeaponRestrictions MeleeOnly Skill Expert ItemAttributes { ItemName "Warrior's Spirit" "fire rate bonus" 0.6 "damage penalty" 0.7 "crit kill will gib" 1 "stun on hit" 1 "stun on hit type" movement "stun on hit slow" 0.75 "custom hit sound" Brutalist.Hit "fire input on hit name restrict" player "fire input on hit" "!self^RunScriptCode^self.ViewPunch(QAngle(RandomInt(-120,120),RandomInt(-120,120),RandomInt(-120,120)))" } CharacterAttributes { "move speed bonus" 1.3 "damage force reduction" 0.75 "airblast vulnerability multiplier" 0.75 } } T_TFBot_Giant_Soldier_Uber_Tanky { ClassIcon soldier_tanker_armored Class Soldier Attributes HoldFireUntilFullReload Attributes SpawnWithFullCharge Attributes MiniBoss Attributes UseBossHealthBar Health 13000 Item "The Grenadier's Softcap" Item "The Black Box" Item "The Battalion's Backup" Name "Giant Uber Tanky Soldier" Skill Expert ItemAttributes { ItemName "The Black Box" "damage bonus" 0.45 "fire rate bonus" 0.001 "faster reload rate" 1.6 "blast radius increased" 1.25 "projectile spread angle penalty" 4 "heal on hit for rapidfire" 1250 } CharacterAttributes { "move speed bonus" 0.35 "damage force reduction" 0.25 "airblast vulnerability multiplier" 0.25 "override footstep sound set" 3 "Projectile speed increased" 0.75 "increase buff duration" 100 } } T_TFBot_Giant_Soldier_Stomper { ClassIcon soldier_mantreads_lite Class Soldier Attributes MiniBoss Attributes UseBossHealthBar Attributes SuppressFire Attributes AutoJump AutoJumpMin 1 AutoJumpMax 1.1 Health 10000 Item "The Mantreads" Name "Stomp Stomp, You're A Goomba" WeaponRestrictions MeleeOnly Skill Expert MaxVisionRange 512 Action Mobber //cant cap because of jumping, so might as well ExtAttr IgnoreBuildings CharacterAttributes { "cancel falling damage" 1 "move speed bonus" 0.5 "increased air control" 12 "increased jump height" 6 "damage force reduction" 0.01 "airblast vulnerability multiplier" 0.01 "override footstep sound set" 7 "kb fall min velocity" 300 "kb fall radius" 128 "kb fall stun time" 5 "kb fall force" 1500 "kb fall damage" 120 } } T_TFBot_Giant_Medic_Sawblade { ClassIcon medic_crossbow_bleed_giant Class Medic Attributes MiniBoss Attributes UseBossHealthBar Attributes AlwaysFireWeapon Health 75000 Item "fuel injector" Item "Armored Authority" Item "The Upgrade" Item "Bushi-Dou" Item "The Crusader's Crossbow" Name "Chop Chop Goes The Saw Blade" WeaponRestrictions PrimaryOnly Action FetchFlag Skill Expert ExtAttr IgnoreBuildings ItemAttributes { ItemName "fuel injector" "item style override" 1 } ItemAttributes { ItemName "The Crusader's Crossbow" "custom projectile model" "models\props_forest\saw_blade.mdl" "projectile speed decreased" 0.65 "grenade bounce speed" 1 "reset arrow hits on bounce" 1 "projectile penetration" 1 "override projectile type" 8 "damage penalty" 0.667 "bleeding duration" 10 "mod projectile heat seek power" 30 "mod projectile heat aim error" 360 "mod projectile heat aim time" 10 "projectile lifetime" 15 "mod projectile heat no predict target speed" 1 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 } } T_TFBot_Giant_Sniper_Hunter { Class Sniper ClassIcon sniper_bow_multi_bleed_penetrator_hyper Name "Mercenary Assassin" Item "Brain Interface" Item "Practitioner's Processing Mask" Item "The Lunatic's Leathers" Item "The Huntsman" Item "Upgradeable TF_WEAPON_CLUB" Attributes MiniBoss Attributes UseBossHealthBar Health 45000 Skill Expert AimLeadProjectileSpeed 1 Action Mobber ExtAttr IgnoreBuildings MoveBehindEnemy 1 ItemAttributes { ItemName "Upgradeable TF_WEAPON_CLUB" "provide on active" 1 "move speed bonus" 1.75 "add cond when active" 64 "no_attack" 1 "switch from wep deploy time decreased" 0.4 "dmg taken increased" 0.5 } ItemAttributes { ItemName "The Huntsman" "bleeding duration" 15 "heal on kill" 5000 "projectile penetration" 1 "damage bonus" 4 "faster reload rate" 0.2 } DesiredAttackRange 500 WeaponSwitch { Delay 0.5 Cooldown 0.1 Repeats 0 Type "Melee" MinTargetRange 1024 } WeaponSwitch { Delay 0.5 Cooldown 0.1 Repeats 0 IfSeeTarget 1 Type "Primary" MaxTargetRange 512 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 } } T_TFBot_Giant_Heavyweapons_HealOnKill_V2 //the valve version sucks, remade { Class Heavyweapons Name "Giant Heal-on-Kill Heavy" ClassIcon heavy_deflector_healonkill Skill Expert Item "The Tungsten Toque" Item "Deflector" Health 5000 MaxVisionRange 1600 WeaponRestrictions PrimaryOnly Attributes MiniBoss ItemAttributes { ItemName "Deflector" "damage bonus" 1.5 "attack projectiles" 2 "heal on kill" 5000 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.3 "airblast vulnerability multiplier" 0.3 "override footstep sound set" 2 } } T_TFBot_Mega_Bomb_Timer { Class Scout Name "Timer" ClassIcon timer_lite Attributes UseBossHealthBar Attributes SuppressFire Attributes IgnoreFlag Health 1500 WeaponRestrictions MeleeOnly UseCustomModel "models/empty.mdl" CustomWeaponModel { Slot 2 Model "models/empty.mdl" } CharacterAttributes { "move speed bonus" 0.001337 "damage force reduction" 0.001337 "airblast vulnerability multiplier" 0.001337 "dmg taken increased" 0.001 //needs 1k damage to take 1 hp of damage "health regen" -1000 //deals 1k damage, equal to 1 damage because of resistance "not solid to players" 1 "mod weapon blocks healing" 1 } } } PointTemplates { MissionName { logic_relay { "targetname" "name" "OnTrigger" "tf_objective_resource,$SetClientProp$m_iszMvMPopfileName,(EXP) Decomposing Death,0,-1" } OnSpawnOutput { Target "name" Action "trigger" Delay 0 } } CoreLogic { NoFixup 1 OnSpawnOutput { Target bignet Action runscriptcode Param " IncludeScript(`tankextensions_main`, getroottable()) IncludeScript(`tankextensions/combattank`, getroottable()) IncludeScript(`tankextensions/combattank_weapons/minigun`, getroottable()) IncludeScript(`tankextensions/combattank_weapons/rocketpod`, getroottable()) IncludeScript(`tankextensions/combattank_weapons/railgun`, getroottable()) " } OnSpawnOutput { Target wave_finished_relay Action addoutput Param "OnTrigger mega_bomb_explode_relay:disable::0:-1" } OnSpawnOutput { Target wave_finished_relay Action addoutput Param "OnTrigger timer_relay*:CancelPending::0:-1" } OnSpawnOutput { Target wave_finished_relay Action addoutput Param "OnTrigger monster_resource:$SetProp$m_iBossHealthPercentageByte::0:-1" } OnSpawnOutput { Target wave_start_relay Action addoutput Param "OnTrigger monster_resource:$SetProp$m_iBossHealthPercentageByte::0:-1" } point_populator_interface //this can do a lot of cool stuff like stopping unlimited support wavespawn with $FinishWavespawn or kill all active enemies from a wavespawn with $KillWavespawn //this can also stop wavespawn spawning with $PauseWavespawn and resume it with $ResumeWavespawn, this also doesn't take up bot slots :D { targetname "interface" } logic_relay { targetname enable_front_upgradestation OnTrigger "upgradestation_door,open,,0,-1" OnTrigger "upgradestation_forward,enable,,0,-1" } logic_relay { targetname disable_front_upgradestation OnTrigger "upgradestation_door,close,,0,-1" OnTrigger "upgradestation_forward,disable,,0,-1" } } T_Uber_Tank //uber tank functions copied from mobo and were changed { NoFixup 1 logic_relay //relay that disables damage to tanks named "ubertank" { targetname "tank_uber_on" OnTrigger "ubertank,SetDamageFilter,filter_uber,0,-1" OnTrigger "ubertank,SetSpeed,50,0,-1" OnTrigger "start_ubercharge,trigger,,0,-1" OnTrigger "spawnbot_boss,disable,,0,-1" } logic_relay // relay that enables damage to tanks named "ubertank" { targetname "tank_uber_off" OnTrigger "ubertank,SetDamageFilter,filter_red,0,-1" OnTrigger "ubertank,Skin,1,0,-1" OnTrigger "ubertank,SetSpeed,75,0,-1" OnTrigger "end_ubercharge,trigger,,0,-1" OnTrigger "spawnbot_boss,enable,,0,-1" } filter_activator_name { filtername "uber_tank_filter" "Negated" "0" "targetname" "filter_uber" } } L_Mega_Bomb { NoFixup 1 prop_dynamic { targetname "mega_bomb_prop" model "models/props_trainyard/cart_bomb_separate.mdl" origin "-2806 -1180 8" angles "68.3937 294.314 -106.924" disableshadows 1 startdisabled 1 //solid 2 //solid via bounding box } training_annotation { targetname "tut_mega_bomb_1" display_text "THE MEGA BOMB WILL EXPLODE IN 15 MINUTES, RESULTING IN A LOSS!" lifetime 10 origin "-2806 -1180 32" } training_annotation { targetname "tut_mega_bomb_2" display_text "KILL ALL BOSSES TO WIN! THEY DO NOT DEPLOY THE BOMB!" lifetime 10 origin "-2806 -1180 32" } training_annotation { targetname "tut_mega_bomb_3" display_text "ALL NON BOSS ROBOTS ARE INFINITE! THEY CAN DEPLOY THE BOMB!" lifetime 10 origin "-2806 -1180 32" } move_rope //icon logic copied from trespasser remastered { "targetname" "megaton_icon" } OnSpawnOutput { Target megaton_icon Action RunScriptCode Param "NetProps.SetPropString(self, `m_iClassname`, `megaton`)" } logic_relay { targetname "mega_bomb_appear_relay" OnTrigger "showtimer,trigger,,0,-1" OnTrigger "timer_relay,trigger,,33,-1" OnTrigger "mega_bomb_prop,enable,,0,-1" OnTrigger "tut_mega_bomb_1,show,,3,-1" OnTrigger "tut_mega_bomb_2,show,,13,-1" OnTrigger "tut_mega_bomb_3,show,,23,-1" OnTrigger "playerRunScriptCodeClientPrint(self,3,`\x07FF3F3FTHE MEGA BOMB WILL EXPLODE IN 15 MINUTES, RESULTING IN A LOSS!`)3-1" OnTrigger "playerRunScriptCodeClientPrint(self,3,`\x07FF3F3FKILL ALL BOSSES TO WIN! THEY DO NOT DEPLOY THE BOMB!`)13-1" OnTrigger "playerRunScriptCodeClientPrint(self,3,`\x07FF3F3FALL NON BOSS ROBOTS ARE INFINITE! THEY CAN DEPLOY THE BOMB!`)23-1" } logic_relay { targetname "mega_bomb_explode_relay" OnTrigger "playerRunScriptCodeClientPrint(self,3,`\x07DA79EFMiss Pauling\x01 : Dear god.`)0-1" OnTrigger "mega_bomb_explode_timer_beepenable0-1" OnTrigger "mega_bomb_explode_timer_beepdisable3-1" OnTrigger "player$PlaySoundToSelfnpc\attack_helicopter\aheli_charge_up.wav1-1" OnTrigger "player$PlaySoundToSelfnpc\attack_helicopter\aheli_charge_up.wav1-1" OnTrigger "player$PlaySoundToSelfambient\explosions\explode_3.wav3-1" OnTrigger "player$PlaySoundToSelfitems\cart_explode.wav3.25-1" OnTrigger "player$PlaySoundToSelfitems\cart_explode.wav3.25-1" OnTrigger "playerRunScriptCodeself.ViewPunch(QAngle(RandomInt(-90,90),RandomInt(-90,90),RandomInt(-90,90)))3-1" //since vscript uses , for arguments, use  as , in the output line. You need to turn on Show All Characters in NotePad++ to see it. OnTrigger "playerRunScriptCodeScreenFade(self, 255, 255, 255, 100, 1, 5, 1)3-1" OnTrigger "playerRunScriptCodeScreenFade(self, 255, 255, 255, 255, 1, 15, 1)3.25-1" OnTrigger "playerrunscriptcodeself.TakeDamageEx(Entities.FindByName(null, `megaton_icon`), self, null, Vector(), Vector(), 100000, 1048640)3.25-1" //copied from trespasser remastered OnTrigger "megaton_iconrunscriptcodeClientPrint(null, 2, ``+self.GetClassname())3.25-1" //copied from trespasser remastered OnTrigger "obj_sentrygun,RemoveHealth,99999,3.25,-1" //copied from trespasser remastered OnTrigger "obj_teleporter,RemoveHealth,99999,3.25,-1" //copied from trespasser remastered OnTrigger "tank_boss,RemoveHealth,99999,3.25,-1" //copied from trespasser remastered OnTrigger "obj_dispenser,RemoveHealth,99999,3.25,-1" //not copied from trespasser remastered somehow OnTrigger "boss_deploy_relay,trigger,,3.25,-1" OnTrigger "mega_bomb_prop,disable,,3.25,-1" } logic_timer { refiretime 0.1 targetname "mega_bomb_explode_timer_beep" startdisabled 1 OnTimer "player,$PlaySoundToSelf,player\cyoa_pda_beep2.wav,0,-1" OnTimer "player,$PlaySoundToSelf,player\cyoa_pda_beep2.wav,0,-1" } } timertest //final wave timer { NoFixup 1 math_counter { "targetname" "timer_counter" "origin" "0 0 0" "startvalue" "255" "min" "0" "max" "255" "OutValue" "monster_resource,$SetProp$m_iBossHealthPercentageByte,,0,-1" "OnHitMin" "timer_relay*,CancelPending,,0,-1" "OnHitMin" "mega_bomb_explode_relay,trigger,,0,-1" } logic_relay { "targetname" "showtimer" "OnTrigger" "monster_resource,$SetProp$m_iBossHealthPercentageByte,255,0,-1" "OnTrigger" "monster_resource,$SetProp$m_iBossState,1,0,-1" //uncomment this for green merasmus bar } logic_relay { "targetname" "timer_relay" "OnTrigger" "timer_counter,Subtract,1,0,-1" // Formula for changing the timer: // t / 255 = r. t = desired seconds, r = refire interval. // 15 minutes (900 seconds) / 255 = 3.52941... "OnTrigger" "timer_relay2,Trigger,,3.5294117647058823529411764705882,-1" "OnTrigger" "monster_resource,$SetProp$m_iBossState,0,0,-1" } logic_relay //relay loops are less resource intensive than logic_timers according to https://developer.valvesoftware.com/wiki/Logic_timer { "targetname" "timer_relay2" "OnTrigger" "timer_relay,Trigger,,0,-1" } } } SpawnTemplate "MissionName" SpawnTemplate "CoreLogic" SpawnTemplate "T_Uber_Tank" SpawnTemplate "L_Mega_Bomb" SpawnTemplate "timertest" ///////////////// //MISSIONS ///////////////// /////////////////////////////////////////////////////////////////////////// //SENTRY BUSTER MISSIONS /////////////////////////////////////////////////////////////////////////// Mission // Sentry Busters - all { Objective DestroySentries InitialCooldown 25 Where spawnbot_mission_sentrybuster_1 Where spawnbot_mission_sentrybuster_2 BeginAtWave 1 RunForThisManyWaves 1 CooldownTime 25 TFBot { Template T_TFBot_SentryBuster_Healing } } /////////////////////////////////////////////////////////////////////////// //SNIPER MISSIONS /////////////////////////////////////////////////////////////////////////// Mission // Snipers - waves 1 { Objective Sniper InitialCooldown 75 Where spawnbot_mission_sniper_1 Where spawnbot_mission_sniper_2 BeginAtWave 1 RunForThisManyWaves 1 DesiredCount 3 CooldownTime 75 TFBot { Template T_TFBot_Explosive_Sniper } } Mission // Snipers - waves 1 { Objective Sniper InitialCooldown 120 Where spawnbot_mission_sniper_1 Where spawnbot_mission_sniper_2 BeginAtWave 1 RunForThisManyWaves 1 DesiredCount 2 CooldownTime 120 TFBot { Template T_TFBot_Piercing_Sniper } } Mission // dumby icon { Objective Sniper InitialCooldown 13371337 Where spawnbot_mission_sniper_1 BeginAtWave 1 RunForThisManyWaves 1 DesiredCount 0 CooldownTime 40 TFBot { Template T_TFBot_Sniper ClassIcon sentry_buster_healing } } /////////////////////////////////////////////////////////////////////////// //SPY MISSIONS /////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////// //ENGINEER MISSIONS /////////////////////////////////////////////////////////////////////////// ///////////////// //WAVES ///////////////// ///////////////// //START $800 ///////////////// //WAVE 1 ///////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////// // Total cash in this wave is $800 /////////////////////////////////////////////////////////////////////////// Wave { WaitWhenDone 65 Checkpoint Yes StartWaveOutput { Target wave_start_relay Action Trigger } initwaveoutput { Target bombpath_choose_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } Explanation //Dispayed once the wave is initialized { Line "{DA79EF}Miss Pauling{reset} : It seems this is the source." Line "{DA79EF}Miss Pauling{reset} : According to this data, mission support is {yellow}Explosive Snipers{reset}, {red}Armor Piercing Snipers{reset}, and {green}Healing Sentry Busters{reset}." Line "{DA79EF}Miss Pauling{reset} : Good luck mercenaries; I'll let you know when something comes up." } //replace spawnbot_main0 with spawnbot_1, replace spawnbot_main0_squad with spawnbot_long, replace spawnbot_main1 with spawnbot_2, replace spawnbot_upper0 with flankers_1, replace spawnbot_upper1 with flankers_2, replace spawnbot_upper2 with spawnbot_lower WaveSpawn { Name w1_a1 TotalCurrency 180 TotalCount 72 MaxActive 18 SpawnCount 6 WaitBeforeStarting 0 WaitBetweenSpawns 8 Where spawnbot_1 Where spawnbot_2 Squad { TFBot { Template T_TFBot_soldier_crit_normal ClassIcon soldier } TFBot { Template T_TFBot_soldier_crit_normal ClassIcon soldier } TFBot { Template T_TFBot_soldier_crit_normal ClassIcon soldier } TFBot { Template T_TFBot_slowing_heavy ClassIcon heavy } TFBot { Template T_TFBot_slowing_heavy ClassIcon heavy } TFBot { Template T_TFBot_Shield_Uber_Medic ClassIcon medic_uber } } } WaveSpawn { Name w1_a2 TotalCurrency 80 TotalCount 8 MaxActive 8 SpawnCount 2 WaitBeforeStarting 12 WaitBetweenSpawns 20 Where flankers_1 Where flankers_2 Squad { TFBot { Template T_TFBot_giant_cluster_demo ClassIcon demo_giant } TFBot { Template T_TFBot_giant_kritz_medic } } } WaveSpawn { Name w1_b1 WaitForAllSpawned w1_a2 TotalCurrency 80 TotalCount 40 MaxActive 10 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 3 Where flankers_1 Where flankers_2 TFBot { Template T_TFBot_mangler_soldier_charge ClassIcon soldier } } WaveSpawn { Name w1_b1 WaitForAllSpawned w1_a2 TotalCurrency 150 TotalCount 8 MaxActive 8 SpawnCount 1 WaitBeforeStarting 20 WaitBetweenSpawns 12 Where flankers_1 Where flankers_2 TFBot { Template T_TFBot_giant_soldier_homing_spammer ClassIcon soldier_homing_nys_giant } } WaveSpawn { Name w1_b1 WaitForAllSpawned w1_a2 TotalCurrency 60 TotalCount 30 MaxActive 12 SpawnCount 3 WaitBeforeStarting 12 WaitBetweenSpawns 4 Where spawnbot_lower Where flankers_2 TFBot { Class Scout } } WaveSpawn { Name w1_c1 WaitForAllSpawned w1_b1 TotalCurrency 100 TotalCount 8 MaxActive 4 SpawnCount 2 WaitBeforeStarting 12 WaitBetweenSpawns 20 Where spawnbot_1 Where spawnbot_2 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons } TFBot { Template T_TFBot_Giant_Medic } } } WaveSpawn { Name w1_c2 WaitForAllSpawned w1_b1 TotalCurrency 100 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 16 WaitBetweenSpawns 10 Tank { Health 32000 Name tankboss StartingPathTrackNode "tank_path_a_1" Speed 75 OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { WaitForAllDead w1_c2 WaitBeforeStarting 12.4 FirstSpawnOutput { Target "intel" Action "ForceReset" } } WaveSpawn { Name w1_d1 WaitForAllDead w1_c2 TotalCurrency 250 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 12.5 WaitBetweenSpawns 10 Where spawnbot_lower Where flankers_2 TFBot { Template T_TFBot_prince_tavish } } WaveSpawn { WaitForAllDead w1_d1 Name w1_alldeadcheck } WaveSpawn { WaitForAllDead w1_c1 Name w1_alldeadcheck } WaveSpawn { WaitForAllDead w1_alldeadcheck WaitBeforeStarting 1 FirstSpawnMessage "{DA79EF}Miss Pauling{reset} : It seems that the robots are recouping. May I suggest using this time to upgrade." FirstSpawnOutput { target enable_front_upgradestation action trigger } } WaveSpawn { WaitForAllDead w1_alldeadcheck WaitBeforeStarting 3 FirstSpawnMessage "{DA79EF}Miss Pauling{reset} : Oh. I'm also seeing signs of what look like {red}Combat Tanks{reset}. They cannot deploy the bomb but have weapons." } WaveSpawn { WaitForAllDead w1_alldeadcheck WaitBeforeStarting 5 FirstSpawnMessage "{DA79EF}Miss Pauling{reset} : I am also detecting an {blue}Uber Tank{reset} that needs the {red}Combat Tanks{reset} to be destroyed first." } WaveSpawn { WaitForAllDead w1_alldeadcheck WaitBeforeStarting 8 FirstSpawnMessage "{DA79EF}Miss Pauling{reset} : It also looks like the boss this wave is the {red}Invincible Scout{reset}. You all have to kill him during the short duration that he isn't bonk, according this file that is." } WaveSpawn { WaitForAllDead w1_alldeadcheck WaitBeforeStarting 60 FirstSpawnMessage "{DA79EF}Miss Pauling{reset} : Uh oh, looks like the robots are getting to attack again, get back into positions everyone!" FirstSpawnOutput { target disable_front_upgradestation action trigger } } WaveSpawn { Name w2_a1 WaitForAllDead w1_alldeadcheck TotalCurrency 250 TotalCount 50 MaxActive 5 SpawnCount 1 WaitBeforeStarting 75 WaitBetweenSpawns 5 Where spawnbot_1 Where spawnbot_2 Where flankers_1 TFBot { Template T_TFBot_Heavy_Brutalist ClassIcon heavy } } WaveSpawn { Name w2_a3 WaitForAllDead w1_alldeadcheck TotalCurrency 50 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 115 WaitBetweenSpawns 0 FirstSpawnWarningSound player/invulnerable_on.wav FirstSpawnOutput { Target tank_uber_on Action Trigger Delay 0.01 } Tank { Health 20000 Speed 50 Skin 2 Name "ubertank" Model "models/bots/boss_bot/boss_tank_ubered.mdl" StartingPathTrackNode "tank_path_a_1" OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name w2_a2 WaitForAllDead w1_alldeadcheck TotalCurrency 50 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 85 WaitBetweenSpawns 10 Tank { Health 20000 Name combattank|minigun|minigun Speed 75 StartingPathTrackNode "tank_path_a_1" } } WaveSpawn { Name w2_a2 WaitForAllDead w1_alldeadcheck TotalCurrency 50 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 100 WaitBetweenSpawns 10 Tank { Health 20000 Name combattank|rocketpod|rocketpod StartingPathTrackNode "tank_path_a_1" Speed 75 } } WaveSpawn { Name w2_b1 WaitForAllDead w2_a2 TotalCurrency 50 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 10 DoneOutput { Target tank_uber_off Action Trigger Delay 0.01 } Tank { Health 30000 Name combattank|railgun|rocketpod_homing StartingPathTrackNode "tank_path_a_1" Speed 50 } } WaveSpawn { Name w2_b1 WaitForAllDead w2_a2 TotalCurrency 150 TotalCount 40 MaxActive 20 SpawnCount 4 WaitBeforeStarting 12.5 WaitBetweenSpawns 12.5 Where spawnbot_1 Where spawnbot_2 Squad { TFBot { Template T_TFBot_giant_soldier_stunner_spammer classicon soldier_giant } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } } } WaveSpawn { Name w2_c1 WaitForAllDead w2_b1 TotalCurrency 150 TotalCount 48 MaxActive 24 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0.5 Where spawnbot_long TFBot { Template T_TFBot_Spy } } WaveSpawn { WaitForAllDead w2_b1 WaitBeforeStarting 14.9 FirstSpawnOutput { Target "intel" Action "ForceReset" } } WaveSpawn { Name w2_c1 WaitForAllDead w2_b1 TotalCurrency 250 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 15 WaitBetweenSpawns 10 Where spawnbot_1 Where spawnbot_2 TFBot { Template T_TFBot_giant_super_bonk_scout Health 12500 } } WaveSpawn { WaitForAllDead w2_c1 Name w2_alldeadcheck FirstSpawnOutput { Target interface Action $FinishWavespawn Param w2_a1 } } WaveSpawn { WaitForAllDead w2_a1 Name w2_alldeadcheck } WaveSpawn { WaitForAllDead w2_a3 Name w2_alldeadcheck } WaveSpawn { WaitForAllDead w2_alldeadcheck WaitBeforeStarting 1 FirstSpawnMessage "{DA79EF}Miss Pauling{reset} : It seems that the robots are recouping. May I suggest using this time to upgrade." FirstSpawnOutput { target enable_front_upgradestation action trigger } } WaveSpawn { WaitForAllDead w2_alldeadcheck WaitBeforeStarting 4 FirstSpawnMessage "{DA79EF}Miss Pauling{reset} : I am seeing an increase in giant robot activity. And that appears to be all." } WaveSpawn { WaitForAllDead w2_alldeadcheck WaitBeforeStarting 60 FirstSpawnMessage "{DA79EF}Miss Pauling{reset} : Uh oh, looks like the robots are getting to attack again, get back into positions everyone!" FirstSpawnOutput { target disable_front_upgradestation action trigger } } WaveSpawn { Name w3_a2 WaitForAllDead w2_alldeadcheck TotalCurrency 120 TotalCount 12 MaxActive 12 SpawnCount 1 WaitBeforeStarting 90 WaitBetweenSpawns 5 Where spawnbot_1 Where spawnbot_2 TFBot { Template T_TFBot_giant_demoman_pirate ClassIcon demo_giant } } WaveSpawn { Name w3_a1 WaitForAllDead w2_alldeadcheck TotalCurrency 300 TotalCount 64 MaxActive 12 SpawnCount 2 WaitBeforeStarting 75 WaitBetweenSpawns 5 Where flankers_2 Where spawnbot_lower TFBot { Template T_TFBot_Pyro_Flaregun Name "Armored Burst Flare Pyro" Health 650 ClassIcon pyro Scale 1.4 ItemAttributes { ItemName "The Flare Gun" "burst fire count" 4 "burst fire rate mult" 10 "fire rate bonus" 0.25 "projectile speed increased" 0.65 } CharacterAttributes { "move speed bonus" 0.7 "damage force reduction" 0.8 "airblast vulnerability multiplier" 0.8 } } } WaveSpawn { Name w3_b1b WaitForAllSpawned w3_a2 TotalCurrency 90 TotalCount 8 MaxActive 8 SpawnCount 2 WaitBeforeStarting 12.5 WaitBetweenSpawns 12.5 Where spawnbot_1 Where spawnbot_2 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons_Shotgun ClassIcon heavy_giant } TFBot { Template T_TFBot_Giant_Medic } } } WaveSpawn { Name w3_b1 WaitForAllSpawned w3_b1b TotalCurrency 90 TotalCount 8 MaxActive 8 SpawnCount 2 WaitBeforeStarting 12.5 WaitBetweenSpawns 12.5 Where spawnbot_1 Where spawnbot_2 Squad { TFBot { Template T_TFBot_Giant_Heavy_Shotgun_Conch ClassIcon heavy_giant } TFBot { Template T_TFBot_Giant_Medic } } } WaveSpawn { Name w3_b2 WaitForAllSpawned w3_a1 TotalCurrency 150 TotalCount 50 MaxActive 12 SpawnCount 2 WaitBeforeStarting 8 WaitBetweenSpawns 5 Where flankers_1 Where flankers_2 TFBot { Template T_TFBot_sticky_demo ClassIcon demo } } WaveSpawn { Name w3_c1 WaitForAllSpawned w3_b1 TotalCurrency 150 TotalCount 9 MaxActive 6 SpawnCount 3 WaitBeforeStarting 15 WaitBetweenSpawns 24 Where spawnbot_2 Where flankers_1 Squad { TFBot { Template T_TFBot_giant_soldier_enrage ClassIcon soldier_giant } TFBot { Template T_TFBot_Giant_Soldier_Extended_Battalion ClassIcon soldier_giant } TFBot { Template T_TFBot_Giant_Soldier_Extended_Concheror ClassIcon soldier_giant } } } WaveSpawn { Name w3_c1 WaitForAllSpawned w3_b1 TotalCurrency 100 TotalCount 6 MaxActive 4 SpawnCount 1 WaitBeforeStarting 12 WaitBetweenSpawns 16 Where spawnbot_long Where spawnbot_2 TFBot { Template T_TFBot_giant_sticky_demo_burst ClassIcon demo_giant } } WaveSpawn { Name w3_d1 WaitForAllSpawned w3_c1 TotalCurrency 200 TotalCount 27 MaxActive 9 SpawnCount 9 WaitBeforeStarting 4 WaitBetweenSpawns 15 Where spawnbot_1 Where spawnbot_2 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons_HealOnKill_V2 ClassIcon heavy_giant Attributes AlwaysCrit } 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 } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } } } WaveSpawn { WaitForAllSpawned w3_c1 WaitBeforeStarting 23.9 FirstSpawnOutput { Target "intel" Action "ForceReset" } } WaveSpawn { Name w3_d1 WaitForAllSpawned w3_c1 TotalCurrency 300 TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 24 WaitBetweenSpawns 10 Where spawnbot_1 Where spawnbot_2 TFBot { Template T_TFBot_Giant_Soldier_Stomper } } WaveSpawn { WaitForAllDead w3_d1 Name w3_alldeadcheck } WaveSpawn { WaitForAllDead w3_b2 Name w3_alldeadcheck } WaveSpawn { WaitForAllDead w3_alldeadcheck WaitBeforeStarting 1 FirstSpawnMessage "{DA79EF}Miss Pauling{reset} : It seems that the robots are recouping. May I suggest using this time to upgrade." FirstSpawnOutput { target enable_front_upgradestation action trigger } } WaveSpawn { WaitForAllDead w3_alldeadcheck WaitBeforeStarting 3 FirstSpawnMessage "{DA79EF}Miss Pauling{reset} : I am detecting a strong presence of {red}Corrupted Robots{reset}. According to their file, these robots are no joke." } WaveSpawn { WaitForAllDead w3_alldeadcheck WaitBeforeStarting 5 FirstSpawnMessage "{DA79EF}Miss Pauling{reset} : If you get hit by the {red}Corrupted Robots{reset}, you should find cover, as their damage will {red}corrupt{reset} you." } WaveSpawn { WaitForAllDead w3_alldeadcheck WaitBeforeStarting 7 FirstSpawnMessage "{DA79EF}Miss Pauling{reset} : This corruption prevents healing, slows you down, lowers your max hp by 50, and deals 5 damage per second." } WaveSpawn { WaitForAllDead w3_alldeadcheck WaitBeforeStarting 9 FirstSpawnMessage "{DA79EF}Miss Pauling{reset} : {red}Corrupted Robot's{reset} inital damage and damage over time pierces all damage resistance, and even uber IF you get ubered after being hit." } WaveSpawn { WaitForAllDead w3_alldeadcheck WaitBeforeStarting 12 FirstSpawnMessage "{DA79EF}Miss Pauling{reset} : I wish you and mannco the best of luck." } WaveSpawn { WaitForAllDead w3_alldeadcheck WaitBeforeStarting 75 FirstSpawnMessage "{DA79EF}Miss Pauling{reset} : Uh oh, looks like the robots are getting to attack again, get back into positions everyone!" FirstSpawnOutput { target disable_front_upgradestation action trigger } } WaveSpawn { Name w4_a1 WaitForAllDead w3_alldeadcheck TotalCurrency 240 TotalCount 120 MaxActive 24 SpawnCount 4 WaitBeforeStarting 90 WaitBetweenSpawns 4 Where spawnbot_1 Where spawnbot_2 Squad { TFBot { Template T_TFBot_Corrupted_Bowman ClassIcon sniper_bow } TFBot { Template T_TFBot_Corrupted_Bowman ClassIcon sniper_bow } TFBot { Template T_TFBot_Corrupted_Bowman ClassIcon sniper_bow } TFBot { Template T_TFBot_Shield_QFix_Medic ClassIcon medic } } } WaveSpawn { Name w4_a2 WaitForAllDead w3_alldeadcheck TotalCurrency 60 TotalCount 8 MaxActive 6 SpawnCount 2 WaitBeforeStarting 80 WaitBetweenSpawns 15 Where spawnbot_1 Where spawnbot_2 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons_HealOnKill_V2 ClassIcon heavy_giant } TFBot { Template T_TFBot_giant_kritz_medic } } } WaveSpawn { Name w4_a1 WaitForAllSpawned w4_a2 TotalCurrency 100 TotalCount 12 MaxActive 9 SpawnCount 3 WaitBeforeStarting 12.5 WaitBetweenSpawns 16 Where spawnbot_2 Where flankers_1 TFBot { Template T_TFBot_Giant_Sniper_Huntsman_Spammer Attributes "AlwaysCrit" } } WaveSpawn { Name w4_b1 WaitForAllDead w4_a1 TotalCurrency 50 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 12 WaitBetweenSpawns 10 Tank { Health 40000 Name tankboss Speed 75 StartingPathTrackNode "tank_path_a_1" } } WaveSpawn { Name w4_b2 WaitForAllDead w4_a1 TotalCurrency 240 TotalCount 36 MaxActive 24 SpawnCount 6 WaitBeforeStarting 4 WaitBetweenSpawns 20 Where spawnbot_1 Where spawnbot_2 Squad { TFBot { Template T_TFBot_Giant_Corrupted_Heavy ClassIcon heavy_giant } TFBot { Template T_TFBot_Corrupted_Soldier ClassIcon soldier } TFBot { Template T_TFBot_Corrupted_Soldier ClassIcon soldier } TFBot { Template T_TFBot_Corrupted_Demo_Burst ClassIcon demo } TFBot { Template T_TFBot_Corrupted_Demo_Burst ClassIcon demo } TFBot { Template T_TFBot_Giant_Shield_QFix_Medic ClassIcon medic_giant } } } WaveSpawn { Name w4_b2 WaitForAllDead w4_b1 TotalCurrency 150 TotalCount 32 MaxActive 16 SpawnCount 2 WaitBeforeStarting 6 WaitBetweenSpawns 3 Where flankers_2 Where spawnbot_lower TFBot { Skill Hard Template T_TFBot_Scout_Shortstop ClassIcon scout Attributes AlwaysCrit } } WaveSpawn { Name w4_c1 WaitForAllSpawned w4_b2 TotalCurrency 120 TotalCount 24 MaxActive 12 SpawnCount 6 WaitBeforeStarting 12 WaitBetweenSpawns 32 Where spawnbot_1 Where spawnbot_2 Squad { TFBot { Template T_TFBot_giant_soldier_homing_burst ClassIcon soldier_homing_nys_giant } TFBot { Template T_TFBot_Corrupted_Pyro ClassIcon pyro } TFBot { Template T_TFBot_Corrupted_Pyro_Flare ClassIcon pyro } TFBot { Template T_TFBot_Corrupted_Pyro ClassIcon pyro } TFBot { Template T_TFBot_Shield_Uber_Medic ClassIcon medic_uber } TFBot { Template T_TFBot_Shield_Uber_Medic ClassIcon medic_uber } } } WaveSpawn { Name w4_c1 WaitForAllSpawned w4_b2 TotalCurrency 120 TotalCount 24 MaxActive 12 SpawnCount 6 WaitBeforeStarting 28 WaitBetweenSpawns 32 Where spawnbot_2 Where flankers_1 Squad { TFBot { Template T_TFBot_giant_soldier_homing_burst ClassIcon soldier_homing_nys_giant } TFBot { Template T_TFBot_Corrupted_Pyro ClassIcon pyro } TFBot { Template T_TFBot_Corrupted_Pyro_Flare ClassIcon pyro } TFBot { Template T_TFBot_Corrupted_Pyro ClassIcon pyro } TFBot { Template T_TFBot_Shield_Uber_Medic ClassIcon medic_uber } TFBot { Template T_TFBot_Shield_Uber_Medic ClassIcon medic_uber } } } WaveSpawn { Name w4_c2 WaitForAllSpawned w4_b2 TotalCurrency 170 TotalCount 75 MaxActive 12 SpawnCount 3 WaitBeforeStarting 8 WaitBetweenSpawns 6 Where spawnbot_2 Where spawnbot_lower TFBot { Template T_TFBot_Heavyweapons_Shotgun ClassIcon heavy } } WaveSpawn { WaitForAllDead w4_c1 WaitBeforeStarting 3.9 FirstSpawnOutput { Target "intel" Action "ForceReset" } } WaveSpawn { Name w4_d1 WaitForAllDead w4_c1 TotalCurrency 250 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 4 WaitBetweenSpawns 10 Where spawnbot_long Where spawnbot_2 TFBot { Template T_TFBot_giant_soldier_homing_major } } WaveSpawn { WaitForAllDead w4_d1 Name w4_alldeadcheck } WaveSpawn { WaitForAllDead w4_alldeadcheck WaitBeforeStarting 1 FirstSpawnMessage "{DA79EF}Miss Pauling{reset} : It seems that the robots are recouping. May I suggest using this time to upgrade." FirstSpawnOutput { target enable_front_upgradestation action trigger } } WaveSpawn { WaitForAllDead w4_alldeadcheck WaitBeforeStarting 3 FirstSpawnMessage "{DA79EF}Miss Pauling{reset} : I am reading a bunch of singles, seems like a big assault" } WaveSpawn { WaitForAllDead w4_alldeadcheck WaitBeforeStarting 60 FirstSpawnMessage "{DA79EF}Miss Pauling{reset} : Uh oh, looks like the robots are getting to attack again, get back into positions everyone!" FirstSpawnOutput { target disable_front_upgradestation action trigger } } WaveSpawn { Name w5_a1 WaitForAllDead w4_alldeadcheck TotalCurrency 150 TotalCount 72 MaxActive 18 SpawnCount 3 WaitBeforeStarting 75 WaitBetweenSpawns 3 Where spawnbot_1 Where spawnbot_1 Squad { TFBot { Template T_TFBot_Soldier_Extended_Battalion ClassIcon soldier } TFBot { Template T_TFBot_Soldier_RocketShotgun ClassIcon soldier } TFBot { Template T_TFBot_Soldier_RocketShotgun ClassIcon soldier } } } WaveSpawn { Name w5_a2 WaitForAllDead w4_alldeadcheck TotalCurrency 150 TotalCount 25 MaxActive 15 SpawnCount 5 WaitBeforeStarting 85 WaitBetweenSpawns 10 Where flankers_1 Where flankers_2 Squad { TFBot { Template T_TFBot_Soldier_BurstFire ClassIcon soldier_giant } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } } } WaveSpawn { Name w5_b1 WaitForAllSpawned w5_a2 TotalCurrency 360 TotalCount 120 MaxActive 15 SpawnCount 3 WaitBeforeStarting 12 WaitBetweenSpawns 5 Where spawnbot_1 Where spawnbot_1 RandomChoice { TFBot { Template T_TFBot_Soldier_Extended_Buff_Banner ClassIcon soldier } TFBot { Class heavyweapons Skill Normal } TFBot { Template T_TFBot_sticky_demo ClassIcon demo } } } WaveSpawn { Name w5_b2 WaitForAllSpawned w5_a1 TotalCurrency 120 TotalCount 9 MaxActive 6 SpawnCount 3 WaitBeforeStarting 12 WaitBetweenSpawns 32 Where spawnbot_1 Where spawnbot_1 Squad { TFBot { Template T_TFBot_Giant_Demo_Burst ClassIcon demo_giant } TFBot { Template T_TFBot_Giant_Medic_Regen } TFBot { Template T_TFBot_Giant_Medic_Regen } } } WaveSpawn { Name w5_b2 WaitForAllSpawned w5_a2 TotalCurrency 120 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 18 WaitBetweenSpawns 10 Tank { Health 54000 Name combattank|minigun|minigun Speed 60 StartingPathTrackNode "tank_path_a_1" } } WaveSpawn { Name w5_c1 WaitForAllSpawned w5_b2 TotalCurrency 100 TotalCount 20 MaxActive 20 SpawnCount 5 WaitBeforeStarting 12 WaitBetweenSpawns 20 Where flankers_1 Where flankers_2 Squad { TFBot { Template T_TFBot_Giant_Soldier_Extended_Battalion ClassIcon soldier_giant } TFBot { Template T_TFBot_Giant_Soldier_Extended_Concheror ClassIcon soldier_giant } TFBot { Template T_TFBot_Corrupted_Heavy ClassIcon heavy } TFBot { Template T_TFBot_Corrupted_Heavy ClassIcon heavy } TFBot { Template T_TFBot_Corrupted_Heavy ClassIcon heavy } } } WaveSpawn { Name w5_c1 WaitForAllSpawned w5_b2 TotalCurrency 250 TotalCount 24 MaxActive 24 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 6 Where flankers_1 Where flankers_2 TFBot { Template T_TFBot_Giant_Soldier_Spammer Attributes "AlwaysCrit" ClassIcon soldier_giant } } WaveSpawn { WaitForAllDead w5_c1 WaitBeforeStarting 15.9 FirstSpawnOutput { Target "intel" Action "ForceReset" } } WaveSpawn { Name w5_d1 WaitForAllDead w5_c1 TotalCurrency 200 TotalCount 4 MaxActive 4 SpawnCount 1 WaitBeforeStarting 16 WaitBetweenSpawns 16 Where spawnbot_1 Where spawnbot_2 TFBot { Template T_TFBot_Giant_Soldier_Uber_Tanky } } WaveSpawn { Name w5_d1 WaitForAllDead w5_c1 TotalCurrency 50 TotalCount 50 MaxActive 5 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 4 Where spawnbot_1 Where flankers_2 RandomChoice { TFBot { Class Demoman Skill Normal } TFBot { Template T_TFBot_Heavyweapons_Shotgun ClassIcon heavy } TFBot { Template T_TFBot_Pyro_Phlog ClassIcon pyro } } } WaveSpawn { WaitForAllDead w5_d1 Name w5_alldeadcheck } WaveSpawn { WaitForAllDead w5_b1 Name w5_alldeadcheck } WaveSpawn { WaitForAllDead w5_b2 Name w5_alldeadcheck } WaveSpawn { WaitForAllDead w5_alldeadcheck WaitBeforeStarting 1 FirstSpawnMessage "{DA79EF}Miss Pauling{reset} : It seems that the robots are recouping. May I suggest using this time to upgrade." FirstSpawnOutput { target enable_front_upgradestation action trigger } } WaveSpawn { WaitForAllDead w5_alldeadcheck WaitBeforeStarting 3 FirstSpawnMessage "{DA79EF}Miss Pauling{reset} : According to these readings, they have a {red}Mega Bomb{reset}!" } WaveSpawn { WaitForAllDead w5_alldeadcheck WaitBeforeStarting 5 FirstSpawnMessage "{DA79EF}Miss Pauling{reset} : You'll have to destroy all the {red}bosses{reset} and then I should be able to disarm the bomb." } WaveSpawn { WaitForAllDead w5_alldeadcheck WaitBeforeStarting 7 FirstSpawnMessage "{DA79EF}Miss Pauling{reset} : When the {red}Mega Bomb{reset} appears, I will sync you timers to the bomb's timer." } WaveSpawn { WaitForAllDead w5_alldeadcheck WaitBeforeStarting 60 FirstSpawnMessage "{DA79EF}Miss Pauling{reset} : Uh oh, looks like the robots are getting to attack again, get back into positions everyone!" FirstSpawnOutput { target disable_front_upgradestation action trigger } } WaveSpawn { WaitForAllDead w5_alldeadcheck WaitBeforeStarting 75 FirstSpawnOutput { Target mega_bomb_appear_relay Action trigger } } //WaveSpawn //{ // WaitForAllDead w5_alldeadcheck // TotalCurrency 0 // TotalCount 1 // MaxActive 1 // SpawnCount 1 // WaitBeforeStarting 93 // WaitBetweenSpawns 0 // Where spawnbot_timer // Support Limited // FirstSpawnMessage "{DA79EF}Miss Pauling{reset} : Okay, I have synced the bomb's timer to your death watches!" // TFBot // { // Template T_TFBot_Mega_Bomb_Timer // } // DoneOutput // { // Target mega_bomb_explode_relay // Action trigger // Delay 1 // } //} WaveSpawn { WaitForAllDead w5_alldeadcheck TotalCurrency 0 TotalCount 50 MaxActive 24 SpawnCount 3 WaitBeforeStarting 108 WaitBetweenSpawns 4 Support 1 RandomSpawn 1 Where spawnbot_1 Where spawnbot_lower Where flankers_1 Where spawnbot_2 Where flankers_2 HideIcon 1 RandomChoice { //weaker class/sentry fodder TFBot { Class Scout Skill Hard ClassIcon scout_support } TFBot { Template T_TFBot_Pyro_Phlog } TFBot { Template T_TFBot_Cleaver_Scout } //pushers/sentry killers TFBot { Template T_TFBot_demoman_loch } TFBot { Template T_TFBot_direct_hit_soldier } TFBot { Template T_TFBot_Heavyweapons_Shotgun } //front line holders TFBot { Template T_TFBot_heavy_brass } TFBot { Template T_TFBot_Airblast_Pyro } TFBot { Template T_TFBot_Heavyweapons_Fist } //misc TFBot { Template T_TFBot_Heavy_Brutalist } TFBot { Template T_TFBot_medic_vac_trio } TFBot { Template T_TFBot_Shield_Kritz_Medic } } } WaveSpawn { WaitForAllDead w5_alldeadcheck TotalCurrency 0 TotalCount 50 MaxActive 3 SpawnCount 1 WaitBeforeStarting 158 WaitBetweenSpawns 42 Support 1 RandomSpawn 1 Where spawnbot_1 Where flankers_1 Where spawnbot_2 Where flankers_2 HideIcon 1 RandomChoice { //bomb pushers TFBot { Template T_TFBot_Giant_Scout_Fast } TFBot { Template T_TFBot_Giant_Scout_FAN } TFBot { Template T_TFBot_giant_smg_cleaner_carbine_sniper } //main attackers TFBot { Template T_TFBot_Giant_Soldier_Spammer } TFBot { Template T_TFBot_Giant_Demo_Scatter } TFBot { Template T_TFBot_Giant_Heavy_Shotgun_Conch } //front line holders TFBot { Template T_TFBot_giant_slowing_heavy } TFBot { Template T_TFBot_giant_engie_circuit_spammer } TFBot { Template T_TFBot_Giant_Soldier_Extended_Battalion } //misc TFBot { Template T_TFBot_giant_medic_vac_trio } TFBot { Template T_TFBot_Giant_Scout ClassIcon scout_support Action Mobber } TFBot { Template T_TFBot_Giant_Boxing_Heavy Attributes AlwaysCrit } } } WaveSpawn { Name w6_boss1 WaitForAllDead w5_alldeadcheck TotalCurrency 1000 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 133 WaitBetweenSpawns 10 Where spawnbot_long Where spawnbot_2 TFBot { Template T_TFBot_Giant_Sniper_Hunter Action Mobber } } WaveSpawn { Name w6_boss2 WaitForAllDead w6_boss1 TotalCurrency 1000 TotalCount 3 MaxActive 3 SpawnCount 3 WaitBeforeStarting 10 WaitBetweenSpawns 10 Where spawnbot_long Where spawnbot_2 TFBot { Template T_TFBot_prince_tavish Action Mobber Attributes AlwaysCrit Health 40000 //default is 66000, with 40k, 120k effective, with 66k, 198k effective } } WaveSpawn { Name w6_boss3 WaitForAllDead w6_boss2 TotalCurrency 1000 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 10 Where spawnbot_long Where spawnbot_2 TFBot { Template T_TFBot_Chief_Heavy_Firestarter Action Mobber } } } }