//mission by randomguy #base robot_standard.pop #base robot_giant.pop #base robot_randomguy_new.pop //using this map is a frustrating and stupid and terrible experience. do not. // ****Spawns**** // spawnbot_a (road or cliff, upper gate A/B) // spawnbot_b (road or cliff, lower gate A/B) // spawnbot_c (carrier, far cliff dropdown at gate A/B) // ****Main setup**** // StartWaveOutput // wave_start_relay // InitWaveOutput // initMain (default setup, chooses pit, roadside, or cliffside) // initMain_pit (All spawns lead into the pit, gatebots and bombbots will take different underpasses) // initMain_roadside (The road spawn will use its dropdown, pit bots will use the underpass next to it) // initMain_cliffside (The cliff spawn uses its dropdown, pit bots will use the underpass next to it) // initMain_sides (The road and cliff spawn use their dropdowns, gatebots and bombbots will take different underpasses) // initMain_threebomb (same as initMain_sides, but with three bombs) // NOTE: Spawns A and B exist in both the cliff and road spawns, but only one of each will be randomly enabled. // To control this, trigger changeMain_setAB (A will be road, B will be cliff) or changeMain_setBA during the wave. // For the madlads: // changeMain_pit // changeMain_roadside // changeMain_cliffside // changeMain_sides // Opens/closes the spawn gates to match their initMain counterpart, then fires RecomputeBlockers. // Can be triggered at any time. // ****Gate A setup**** // StartWaveOutput // wave_start_relayA // InitWaveOutput // initA (default setup, chooses setFront or setBack) // initA_setFront (both front doors open setup) // initA_setUpper (upper front door and lower back open) // initA_setLower (upper back door and lower front open) // initA_setBack (both back doors open setup) // initA_setRandom (chooses setFront or setBack) // initA_setRandomMix (chooses setUpper or setLower) // initA_setRandomAll (chooses any of the four setups) // NOTE: Every initA_set relay can be used at any time if a wave starts at Main. // When the gate is captured, it will use whichever relay was most recently triggered. // They will not break if called after the gate is capped. // ****Gate B setup**** // StartWaveOutput // wave_start_relayB // InitWaveOutput // initB // ****Tanks**** // NOTE: Fully functional, just lacks the bells and whistles // tank_path_start : Next to whichever gate is active // tank_path_a_10 : Front spawn // tank_path_b_10 : Gate A // tank_path_d_10 : Gate B WaveSchedule { CanBotsAttackWhileInSpawnRoom no RespawnWaveTime 2 StartingCurrency 1 //:3 Templates //incl all gatebots { T_TFGateBot_Soldier_Normal { Class Soldier EventChangeAttributes { Default { BehaviorModifiers push // having these will cause bots to run towards gates Attributes IgnoreFlag // having these will cause bots to run towards gates Tag nav_prefer_gate1_flank // having these will cause bots to run towards gates Tag bot_gatebot // having these will cause bots to run towards gates Item "MvM GateBot Light Soldier" Skill Normal } RevertGateBotsBehavior { Item "MvM GateBot Light Soldier" ItemAttributes // turn off light hat { ItemName "MvM GateBot Light Soldier" "item style override" 1 } Skill Normal } } } T_TFGateBot_Giant_Scout { Class Scout Name "Giant Scout" ClassIcon scout_giant Health 1600 EventChangeAttributes { Default { BehaviorModifiers push // having these will cause bots to run towards gates Attributes IgnoreFlag // having these will cause bots to run towards gates Tag nav_prefer_gate1_flank // having these will cause bots to run towards gates Tag bot_gatebot // having these will cause bots to run towards gates Item "MvM GateBot Light Scout" Tag bot_giant Skill Expert Attributes MiniBoss CharacterAttributes { "damage force reduction" 0.7 "airblast vulnerability multiplier" 0.7 "override footstep sound set" 5 } } RevertGateBotsBehavior { Item "MvM GateBot Light Scout" ItemAttributes // turn off light hat { ItemName "MvM GateBot Light Scout" "item style override" 1 } Tag bot_giant Skill Expert Attributes MiniBoss CharacterAttributes { "damage force reduction" 0.7 "airblast vulnerability multiplier" 0.7 "override footstep sound set" 5 } } } } T_TFGateBot_Giant_Soldier { Class Soldier Name "Giant Soldier" ClassIcon soldier_giant Health 3800 EventChangeAttributes { Default { BehaviorModifiers push // having these will cause bots to run towards gates Attributes IgnoreFlag // having these will cause bots to run towards gates Tag nav_prefer_gate1_flank // having these will cause bots to run towards gates Tag bot_gatebot // having these will cause bots to run towards gates Item "MvM GateBot Light Soldier" Tag bot_giant Skill Expert WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload Attributes MiniBoss Attributes DisableDodge //idiots CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 } } RevertGateBotsBehavior { Item "MvM GateBot Light Soldier" ItemAttributes // turn off light hat { ItemName "MvM GateBot Light Soldier" "item style override" 1 } Tag bot_giant Skill Expert 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 } } } } T_TFGateBot_Heavy_Para_Easy { Class HeavyWeapons EventChangeAttributes { Default { BehaviorModifiers push // having these will cause bots to run towards gates Attributes IgnoreFlag // having these will cause bots to run towards gates Tag nav_prefer_gate1_flank // having these will cause bots to run towards gates Tag bot_gatebot // having these will cause bots to run towards gates Item "MvM GateBot Light Heavy" Skill Easy MaxVisionRange 1200 //Parachute Item "The B.A.S.E. Jumper" Attributes Parachute } RevertGateBotsBehavior { Item "MvM GateBot Light Heavy" ItemAttributes // turn off light hat { ItemName "MvM GateBot Light Heavy" "item style override" 1 } Skill Easy //Attributes AlwaysCrit //lol valve wtf MaxVisionRange 1200 //Parachute Item "The B.A.S.E. Jumper" Attributes Parachute } } } T_TFGateBot_Scout_Para_Easy { Class Scout EventChangeAttributes { Default { Tag bot_gatebot // having these will cause bots to run towards gates Tag nav_prefer_gate1_flank // having these will cause bots to run towards gates BehaviorModifiers push // having these will cause bots to run towards gates Attributes IgnoreFlag // having these will cause bots to run towards gates Item "MvM GateBot Light Scout" Skill Easy MaxVisionRange 1200 //Parachute Item "The B.A.S.E. Jumper" Attributes Parachute } RevertGateBotsBehavior { Item "MvM GateBot Light Scout" ItemAttributes // turn off light hat { ItemName "MvM GateBot Light Scout" "item style override" 1 } // ItemAttributes // { // ItemName "TF_WEAPON_SCATTERGUN" // "damage penalty" 0.5 // } Skill Easy MaxVisionRange 1200 //Parachute Item "The B.A.S.E. Jumper" Attributes Parachute } } } T_TFGateBot_Giant_Scout_Fast_NoConvert { Class Scout Name "Super Scout" ClassIcon scout_giant_fast Health 1200 BehaviorModifiers push // having these will cause bots to run towards gates Attributes IgnoreFlag // having these will cause bots to run towards gates Tag nav_prefer_gate1_flank // having these will cause bots to run towards gates Tag bot_gatebot // having these will cause bots to run towards gates Item "Bonk Boy" Item "The Holy Mackerel" Item "MvM GateBot Light Scout" Tag bot_giant Attributes MiniBoss WeaponRestrictions MeleeOnly CharacterAttributes { "move speed bonus" 1.3 "damage force reduction" 0.7 "airblast vulnerability multiplier" 0.7 "override footstep sound set" 5 } } T_TFGateBot_Soldier_Extended_Concheror_Normal { Class Soldier Name "Extended Conch Soldier" ClassIcon soldier_conch EventChangeAttributes { Default { BehaviorModifiers push // having these will cause bots to run towards gates Attributes IgnoreFlag // having these will cause bots to run towards gates Tag nav_prefer_gate1_flank // having these will cause bots to run towards gates Tag bot_gatebot // having these will cause bots to run towards gates Item "The Concheror" Item "MvM GateBot Light Soldier" Skill Normal Attributes SpawnWithFullCharge CharacterAttributes { "increase buff duration" 9.0 } } RevertGateBotsBehavior { Item "The Concheror" Item "MvM GateBot Light Soldier" ItemAttributes // turn off light hat { ItemName "MvM GateBot Light Soldier" "item style override" 1 } Skill Normal Attributes SpawnWithFullCharge CharacterAttributes { "increase buff duration" 9.0 } } } } Boss_1 { Class Demoman Name "kill me first no balls" ClassIcon demo_scatter_giant Health 10000 EventChangeAttributes { Default { BehaviorModifiers push // having these will cause bots to run towards gates Attributes IgnoreFlag // having these will cause bots to run towards gates Tag nav_prefer_gate1_flank // having these will cause bots to run towards gates Tag bot_gatebot // having these will cause bots to run towards gates Item "MvM GateBot Light Demoman" //Item "Scotch Bonnet" Skill Expert WeaponRestrictions PrimaryOnly Attributes MiniBoss Attributes UseBossHealthBar Tag bot_giant Attributes HoldFireUntilFullReload Attributes AlwaysFireWeapon ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "faster reload rate" 0.25 "fire rate bonus" -1 "clip size upgrade atomic" 12 "projectile spread angle penalty" 5 "Projectile speed increased" 1.2 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.0 "airblast vulnerability multiplier" 0.0 "override footstep sound set" 4 "cancel falling damage" 1 } } RevertGateBotsBehavior { Item "MvM GateBot Light Demoman" Item "Scotch Bonnet" ItemAttributes // turn off light hat { ItemName "MvM GateBot Light Demoman" "item style override" 1 } Skill Expert WeaponRestrictions PrimaryOnly Attributes MiniBoss Attributes UseBossHealthBar Tag bot_giant Attributes HoldFireUntilFullReload Attributes AlwaysFireWeapon ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "faster reload rate" 0.25 "fire rate bonus" -1 "clip size upgrade atomic" 12 "projectile spread angle penalty" 5 "Projectile speed increased" 1.2 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.0 "airblast vulnerability multiplier" 0.0 "override footstep sound set" 4 "cancel falling damage" 1 } } } } Boss_1_Gimmick { Class Scout Name "kill the other guy first k thx" ClassIcon scout_giant_fast Health 12000 EventChangeAttributes { Default { BehaviorModifiers push // having these will cause bots to run towards gates Attributes IgnoreFlag // having these will cause bots to run towards gates Tag nav_prefer_gate1_flank // having these will cause bots to run towards gates Tag bot_gatebot // having these will cause bots to run towards gates Item "The Holy Mackerel" Item "MvM GateBot Light Scout" Tag bot_giant Skill Expert Attributes MiniBoss Attributes UseBossHealthBar WeaponRestrictions MeleeOnly CharacterAttributes { "move speed bonus" 1.3 "damage force reduction" 0.7 "airblast vulnerability multiplier" 0.7 "override footstep sound set" 5 "cancel falling damage" 1 } } RevertGateBotsBehavior { Item "The Holy Mackerel" Item "MvM GateBot Light Scout" ItemAttributes // turn off light hat { ItemName "MvM GateBot Light Scout" "item style override" 1 } Tag bot_giant Skill Expert Attributes MiniBoss Attributes UseBossHealthBar WeaponRestrictions MeleeOnly CharacterAttributes { "move speed bonus" 1.3 "damage force reduction" 0.7 "airblast vulnerability multiplier" 0.7 "override footstep sound set" 5 "cancel falling damage" 1 } } } } } Mission { Objective Spy InitialCooldown 20 Where spawnbot_a BeginAtWave 3 RunForThisManyWaves 1 CooldownTime 45 DesiredCount 2 TFBot { Template T_TFBot_Spy } } Mission { Objective Sniper Where spawnbot_a BeginAtWave 6 RunForThisManyWaves 1 InitialCooldown 25 CooldownTime 40 DesiredCount 2 TFBot { Template T_TFBot_Sniper_Sydney_Sleeper } } Mission { Objective Engineer Where spawnbot_b BeginAtWave 6 RunForThisManyWaves 1 InitialCooldown 15 CooldownTime 30 DesiredCount 2 TFBot { Template T_TFBot_Engineer_Sentry_Battle } } Mission { Objective DestroySentries Where spawnbot_a InitialCooldown 30 CooldownTime 30 BeginAtWave 1 RunForThisManyWaves 10 TFBot { Template T_TFBot_SentryBuster } } //WAVE 1 //////////CURRENCY 699/////////////////////////////////// Wave { InitWaveOutPut { Target wave_start_relay Action RunScriptCode Param " // local ent = Entities.FindByClassname(null, `tf_objective_resource`) // if (ent) // { // NetProps.SetPropString(ent, `m_iszMvMPopfileName`, `Dizzying Drill (Intermediate)`) // } //^ sets mission name EntFire(`InitB`,`Trigger`) " } StartWaveOutput { Target wave_start_relay Action RunScriptCode Param " EntFire(`container_flank_location `,`Kill`) //kills thing that fucks up the entire hatch building. necessary as fuck. EntFire(`intel3`,`setreturntime`,`99999`) EntFire(`wave_start_relayB`,`Trigger`) " } //bugger convention, i cba with resettable bombs. WaveSpawn { Name constsupport Where spawnbot_b TotalCount 25 MaxActive 4 //5 SpawnCount 2 WaitBeforeStarting 5 WaitBetweenSpawns 10 //8 TotalCurrency 150 Support 1 TFBot { Class Soldier Skill Normal Name "Troller Of Montenegro" } } WaveSpawn { Name stage1_a Where spawnbot_a TotalCount 6 //8 MaxActive 4 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 6 TotalCurrency 100 TFBot { Template T_TFBot_Demoman_Knight } } WaveSpawn { Name stage1_b Where spawnbot_c TotalCount 18 //24 MaxActive 12 SpawnCount 6 WaitBeforeStarting 0.5 WaitBetweenSpawns 4 TotalCurrency 100 TFBot { Template T_TFBot_Heavyweapons_Gnome Scale 0.65 Item "The All-Father" Item "Point and Shoot" //Parachute Item "The B.A.S.E. Jumper" Attributes Parachute } } WaveSpawn { Name stage2 WaitForAllSpawned stage1_b WaitForAllDead stage1_a Where spawnbot_a TotalCount 6 //8 MaxActive 4 SpawnCount 2 WaitBeforeStarting 10 WaitBetweenSpawns 7 TotalCurrency 100 TFBot { Template T_TFBot_Heavyweapons_Gnome Scale 0.65 Item "The All-Father" Item "Point and Shoot" } } WaveSpawn { Name stage2 WaitForAllSpawned stage1_b WaitForAllDead stage1_a Where spawnbot_c TotalCount 18 //24 MaxActive 12 SpawnCount 6 WaitBeforeStarting 10 WaitBetweenSpawns 5 TotalCurrency 100 TFBot { Template T_TFBot_Demoman_Knight //Parachute Item "The B.A.S.E. Jumper" Attributes Parachute } } WaveSpawn { Name stage3 WaitForAllSpawned stage2 //Dead stage2 Where spawnbot_a TotalCount 2 MaxActive 2 SpawnCount 1 WaitBeforeStarting 10 //0 WaitBetweenSpawns 15 TotalCurrency 149 TFBot { Template T_TFBot_Giant_Soldier_RocketShotgun Tag bot_giant Name "Giant Bad Box Soldier" Health 3800 ItemAttributes { ItemName "The Black Box" "damage bonus" 0.75 "blast radius increased" 1 "projectile spread angle penalty" 0 "heal on hit for rapidfire" 200 } } } } //WAVE 2 //////////CURRENCY 600/////////////////////////////////// Wave { InitWaveOutPut { Target wave_start_relay Action RunScriptCode Param " // local ent = Entities.FindByClassname(null, `tf_objective_resource`) // if (ent) // { // NetProps.SetPropString(ent, `m_iszMvMPopfileName`, `Dizzying Drill (Intermediate)`) // } //^ sets mission name EntFire(`initB`,`Trigger`) IncludeScript(`mvm_hoovydam_b10_int_dizzying_drill_tankwave_shutterfix`) " } //shutterfix made by Needles (https://steamcommunity.com/profiles/76561198026257137/). StartWaveOutput { Target wave_start_relay Action RunScriptCode Param " EntFire(`container_flank_location `,`Kill`) //kills thing that fucks up the entire hatch building. necessary as fuck. EntFire(`intel3`,`setreturntime`,`99999`) EntFire(`wave_start_relayB`,`Trigger`) " } //bugger convention, i cba with resettable bombs. WaveSpawn { Name stage1 Where spawnbot_a TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 4 TotalCurrency 4 TFBot { Class Demoman Skill Normal } } WaveSpawn { Name stage1 Where spawnbot_b TotalCount 24 MaxActive 9 SpawnCount 6 WaitBeforeStarting 0.5 WaitBetweenSpawns 10 TotalCurrency 96 TFBot { Class Demoman Skill Normal } } WaveSpawn { //Name stage1 TotalCount 1 SpawnCount 1 WaitBeforeStarting 5 WaitBetweenSpawns 4 TotalCurrency 200 FirstSpawnWarningSound mvm/mvm_tank_start.wav Tank { Name Tankboss Health 10000 Speed 75 StartingPathTrackNode tank_path_d_10 Skin 0 OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } FirstSpawnOutPut { Target wave_start_relay Action RunScriptCode Param " ClientPrint(null,3,`\x0799CCFFTank deployed with 10k (10000) HP!`) " } } WaveSpawn { Name stage2 WaitForAllSpawned stage1 //Dead stage1 Where spawnbot_a Where spawnbot_b Where spawnbot_c TotalCount 25 MaxActive 14 //7 SpawnCount 3 WaitBeforeStarting 15 //5 WaitBetweenSpawns 7 TotalCurrency 150 RandomSpawn 1 Support 1 TFBot { Name "Big Head" Class Soldier ClassIcon soldier_head_nys //funny story, this wasn't on potato testing earlier. somehow. Health 600 //Item "The Tank Top" //looks ass, so they're heads now. Attributes IgnoreEnemies Attributes DisableDodge Attributes SuppressFire // ItemAttributes // { // ItemName "The Tank Top" // "set item tint RGB" 5801378 // } ItemAttributes { ItemName "tf_weapon_rocketlauncher" "damage penalty" 0 "fire rate penalty" 999 "override projectile type" 15 } CharacterAttributes { "damage force reduction" 0 "airblast vulnerability multiplier" 0 "airblast vertical vulnerability multiplier" 0 "torso scale" 0 "hand scale" 0 "head scale" 5 "move speed bonus" 0.6 //"backstab shield" 1 //dammit mo "override footstep sound set" 7 } //Parachute Item "The B.A.S.E. Jumper" Attributes Parachute } } WaveSpawn { Name stage2 WaitForAllSpawned stage1 //Dead stage1 Where spawnbot_a TotalCount 3 MaxActive 2 SpawnCount 1 WaitBeforeStarting 10 //0 WaitBetweenSpawns 15 TotalCurrency 150 TFBot { Template T_TFBot_Giant_Demoman Tag bot_giant } } } //WAVE 3 //////////CURRENCY 700/////////////////////////////////// Wave { InitWaveOutPut { Target wave_start_relay Action RunScriptCode Param " // local ent = Entities.FindByClassname(null, `tf_objective_resource`) // if (ent) // { // NetProps.SetPropString(ent, `m_iszMvMPopfileName`, `Dizzying Drill (Intermediate)`) // } //^ sets mission name EntFire(`InitA_SetFront`,`Trigger`) ClientPrint(null,3,`\x07FFEA00The robots have fallen back! Move to gate A!`) " } StartWaveOutput { Target wave_start_relay Action RunScriptCode Param " EntFire(`container_flank_location `,`Kill`) //kills thing that fucks up the entire hatch building. necessary as fuck. EntFire(`intel3`,`setreturntime`,`99999`) EntFire(`intel2`,`setreturntime`,`99999`) EntFire(`wave_start_relayA`,`Trigger`) EntFire(`gate2_relay ontrigger addoutput toggle gate1_bot_teleport`,`toggle`,0,0,-1) EntFire(`wave_start_relayA ontrigger addoutput disable gate1_bot_teleport`,`disable`,0,0,-1) " } //bugger convention, i cba with resettable bombs. //other shit is because this map is hot dogshit and needs *me* to fucking fix it. Or it's the wave start relay lol //ent_fire gate2_relay ontrigger addoutput toggle gate1_bot_teleport,toggle,0,0,-1 WaveSpawn { Name hate Where spawnbot_a TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 30 WaitBetweenSpawnsAfterDeath 10 Support 1 TFBot { Template T_TFBot_Soldier_TriRocket Name "Bombing Service!" Health 100 //idk man } } WaveSpawn { Name stage1 Where spawnbot_b TotalCount 24 //36 MaxActive 10 //8 SpawnCount 4 WaitBeforeStarting 0 WaitBetweenSpawns 6 //5 TotalCurrency 150 TFBot { Template T_TFGateBot_Soldier_Normal } } WaveSpawn { Name stage2 WaitForAllSpawned stage1 //Dead stage1 Where spawnbot_b TotalCount 3 MaxActive 2 SpawnCount 1 WaitBeforeStarting 15 //0 WaitBetweenSpawns 15 TotalCurrency 99 TFBot { Template T_TFGateBot_Giant_Scout } } WaveSpawn { Name stage2 WaitForAllSpawned stage1 //Dead stage1 Where spawnbot_a TotalCount 32 MaxActive 16 SpawnCount 8 WaitBeforeStarting 15 //0 WaitBetweenSpawns 10 TotalCurrency 151 TFBot { Template T_TFBot_Scout_Melee ClassIcon scout_bat } } WaveSpawn { Name stage3 WaitForAllDead stage2 Where spawnbot_a TotalCount 8 MaxActive 6 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 15 TotalCurrency 300 Squad { TFBot { Template T_TFBot_Giant_Pyro Attributes AlwaysFireWeapon Tag bot_giant } TFBot { Template T_TFBot_Medic_Bigheal } } } WaveSpawn { Name stage3 WaitForAllSpawned stage2 //Dead stage2 Where spawnbot_c TotalCount 33 MaxActive 7 SpawnCount 3 WaitBeforeStarting 10 //5 WaitBetweenSpawns 10 Support 1 TFBot { Template T_TFBot_Soldier_TriRocket //Parachute Item "The B.A.S.E. Jumper" Attributes Parachute } } } //WAVE 4 //////////CURRENCY 600/////////////////////////////////// // BLADE. YOUR SETUP ISN'T THAT BAD, BUT WOULD IT HAVE *KILLED* YOU TO NOT WASTE TWO HOURS OF MY NEW YEAR'S EVE? Wave { InitWaveOutPut { Target wave_start_relay Action RunScriptCode Param " // local ent = Entities.FindByClassname(null, `tf_objective_resource`) // if (ent) // { // NetProps.SetPropString(ent, `m_iszMvMPopfileName`, `Dizzying Drill (Intermediate)`) // } //^ sets mission name EntFire(`initA`,`Enable`) //< this thing here is what wasted two hours. EntFire(`initA_setBack`,`Trigger`) IncludeScript(`mvm_hoovydam_b10_int_dizzying_drill_tankwave_shutterfix`) ClientPrint(null,3,`\x07FFEA00The robots this wave will be heavily taking advantage of jump pads to skip past your frontline.`) " } //this was so ass to do. Needles (https://steamcommunity.com/profiles/76561198026257137/) once again made the shutter door fix. StartWaveOutput { Target wave_start_relay Action RunScriptCode Param " EntFire(`container_flank_location `,`Kill`) //kills thing that fucks up the entire hatch building. necessary as fuck. EntFire(`intel3`,`setreturntime`,`99999`) EntFire(`intel2`,`setreturntime`,`99999`) EntFire(`wave_start_relayA`,`Trigger`) EntFire(`gate2_relay ontrigger addoutput enable gate1_bot_teleport`,`enable`,0,0,-1) EntFire(`wave_start_relay ontrigger addoutput disable gate1_bot_teleport`,`disable`,0,0,-1) " } //bugger convention, i cba with resettable bombs. //other shit is because this map is hot dogshit and needs *me* to fucking fix it. Or it's the wave start relay lol //ent_fire gate2_relay ontrigger addoutput toggle gate1_bot_teleport,toggle,0,0,-1 WaveSpawn { Name hate Where spawnbot_a TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 30 WaitBetweenSpawnsAfterDeath 10 Support 1 TFBot { Class Demoman Skill Expert Name "Bombing Service!" //Parachute Item "The B.A.S.E. Jumper" Attributes Parachute } } WaveSpawn { Name stage1 Where spawnbot_b TotalCount 2 MaxActive 2 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 10 TotalCurrency 50 TFBot { Template T_TFGateBot_Giant_Soldier } } WaveSpawn { Name stage1 Where spawnbot_a TotalCount 2 MaxActive 2 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 10 TotalCurrency 50 TFBot { Template T_TFBot_Giant_Soldier Tag bot_giant } } WaveSpawn { Name thetankappears TotalCount 1 SpawnCount 1 WaitBeforeStarting 5 TotalCurrency 100 FirstSpawnWarningSound mvm/mvm_tank_start.wav Tank { Name Tankboss Health 20000 Speed 75 StartingPathTrackNode tank_path_b_10 Skin 1 OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } FirstSpawnOutPut { Target wave_start_relay Action RunScriptCode Param " ClientPrint(null,3,`\x0799CCFFTank deployed with 20k (20000) HP!`) " } } WaveSpawn { Name stage2 WaitForAllDead stage1 Where spawnbot_a Where spawnbot_b TotalCount 24 MaxActive 12 SpawnCount 6 WaitBeforeStarting 0 WaitBetweenSpawns 8 TotalCurrency 100 RandomSpawn 1 TFBot { Template T_TFGateBot_Heavy_Para_Easy } } WaveSpawn { Name stage2 WaitForAllDead stage1 Where spawnbot_c TotalCount 12 MaxActive 6 SpawnCount 3 WaitBeforeStarting 5 WaitBetweenSpawns 8 TotalCurrency 40 TFBot { Template T_TFGateBot_Scout_Para_Easy } } WaveSpawn { //Name stage2 WaitForAllDead stage1 Where spawnbot_a TotalCount 3 MaxActive 2 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 8 TotalCurrency 30 TFBot { Template T_TFBot_Heavyweapons_Fist } } WaveSpawn { Name stage3 WaitForAllDead stage2 Where spawnbot_a TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 5 WaitBetweenSpawns 15 TotalCurrency 90 TFBot { Template T_TFBot_Giant_Soldier Tag bot_giant } } WaveSpawn { Name stage3 WaitForAllDead stage2 Where spawnbot_b TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 5 WaitBetweenSpawns 15 TotalCurrency 90 TFBot { Template T_TFBot_Giant_Soldier Tag bot_giant } } WaveSpawn { Name stage3 WaitForAllDead stage2 Where spawnbot_a Where spawnbot_b Where spawnbot_c TotalCount 12 MaxActive 6 SpawnCount 2 WaitBeforeStarting 10 WaitBetweenSpawns 7 TotalCurrency 25 Support 1 RandomSpawn 1 RandomChoice { TFBot { Template T_TFBot_Heavyweapons_Gnome Scale 0.65 Item "The All-Father" Item "Point and Shoot" //Parachute Item "The B.A.S.E. Jumper" Attributes Parachute } TFBot { Template T_TFBot_Heavyweapons_Gnome Scale 0.65 Item "The All-Father" Item "Point and Shoot" //Parachute Item "The B.A.S.E. Jumper" Attributes Parachute } TFBot { Template T_TFBot_Heavyweapons_Gnome Scale 0.65 Item "The All-Father" Item "Point and Shoot" //Parachute Item "The B.A.S.E. Jumper" Attributes Parachute } TFBot { Template T_TFBot_Heavyweapons_Gnome Scale 0.65 Item "The All-Father" Item "Point and Shoot" //Parachute Item "The B.A.S.E. Jumper" Attributes Parachute } TFBot { Template T_TFBot_Heavyweapons_Gnome Scale 0.65 Item "The All-Father" Item "Point and Shoot" //Parachute Item "The B.A.S.E. Jumper" Attributes Parachute } TFBot { Template T_TFBot_Heavyweapons_Gnome Scale 0.65 Item "The All-Father" Item "Point and Shoot" //Parachute Item "The B.A.S.E. Jumper" Attributes Parachute } TFBot { Template T_TFBot_Heavyweapons_Gnome Scale 0.65 Item "The All-Father" Item "Point and Shoot" //Parachute Item "The B.A.S.E. Jumper" Attributes Parachute } TFBot { Template T_TFBot_Heavyweapons_Gnome Scale 0.65 Item "The All-Father" Item "Point and Shoot" //Parachute Item "The B.A.S.E. Jumper" Attributes Parachute } TFBot { Template T_TFBot_Heavyweapons_Gnome Scale 0.65 Item "The All-Father" Item "Point and Shoot" //Parachute Item "The B.A.S.E. Jumper" Attributes Parachute } TFBot { Class Demoman Skill Normal Name "Reference" //Parachute Item "The B.A.S.E. Jumper" Attributes Parachute } } } WaveSpawn { Name stage3 WaitForAllDead stage2 Where spawnbot_a Where spawnbot_b Where spawnbot_c TotalCount 12 MaxActive 6 SpawnCount 2 WaitBeforeStarting 10 WaitBetweenSpawns 7 TotalCurrency 25 Support 1 RandomSpawn 1 TFBot { Class Demoman Skill Normal //Parachute // Item "The B.A.S.E. Jumper" // Attributes Parachute // i forgor :skull: } } } //WAVE 5 //////////CURRENCY 700/////////////////////////////////// Wave { InitWaveOutPut { Target wave_start_relay Action RunScriptCode Param " // local ent = Entities.FindByClassname(null, `tf_objective_resource`) // if (ent) // { // NetProps.SetPropString(ent, `m_iszMvMPopfileName`, `Dizzying Drill (Intermediate)`) // } //^ sets mission name EntFire(`initMain_pit`,`Trigger`) ClientPrint(null,3,`\x07FFEA00The robots have fallen back! Move to the front!`) ClientPrint(null,3,`\x0790EE90The only gatebots present will be the support Super Scouts, use their lacking firepower to your advantage! They will NOT deploy the bomb if both gates are lost.`) " } StartWaveOutput { Target wave_start_relay Action RunScriptCode Param " EntFire(`container_flank_location `,`Kill`) //kills thing that fucks up the entire hatch building. necessary as fuck. EntFire(`intel3`,`setreturntime`,`99999`) EntFire(`intel2`,`setreturntime`,`99999`) EntFire(`intel`,`setreturntime`,`99999`) EntFire(`wave_start_relay`,`Trigger`) EntFire(`gate1_relay ontrigger addoutput enable gate0_bot_teleport`,`enable`,0,0,-1) EntFire(`wave_start_relay ontrigger addoutput disable gate0_bot_teleport`,`disable`,0,0,-1) EntFire(`gate2_relay ontrigger addoutput enable gate1_bot_teleport`,`enable`,0,0,-1) EntFire(`wave_start_relay ontrigger addoutput disable gate1_bot_teleport`,`disable`,0,0,-1) " } //bugger convention, i cba with resettable bombs. //other shit is because this map is hot dogshit and needs *me* to fucking fix it. Or it's the wave start relay lol //ent_fire gate2_relay ontrigger addoutput toggle gate1_bot_teleport,toggle,0,0,-1 WaveSpawn { Name thetrollingappears Where spawnbot_b TotalCount 15 MaxActive 1 SpawnCount 1 WaitBeforeStarting 20 WaitBetweenSpawnsAfterDeath 15 TotalCurrency 150 Support Limited //as if a team is getting through all of these without stalling anyway lol TFBot { Template T_TFGateBot_Giant_Scout_Fast_NoConvert //Too much trolling? :3 } FirstSpawnOutPut { Target initA_setBack Action Trigger } } WaveSpawn { Name hate Where spawnbot_a TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 30 WaitBetweenSpawnsAfterDeath 10 Support 1 TFBot { Class Scout Skill Expert WeaponRestrictions MeleeOnly Item "The Holy Mackerel" Name "Bombing Service!" ClassIcon scout_giant_fast } } WaveSpawn { Name stage1 Where spawnbot_c TotalCount 4 MaxActive 4 SpawnCount 4 WaitBeforeStarting 0 TotalCurrency 8 Squad { TFBot { Class Soldier Skill Normal } TFBot { Template T_TFBot_Medic_QuickUber } } } WaveSpawn { Name stage1 Where spawnbot_a Where spawnbot_b TotalCount 16 MaxActive 10 SpawnCount 4 WaitBeforeStarting 6 WaitBetweenSpawns 6 TotalCurrency 42 Squad { TFBot { Class Soldier Skill Normal } TFBot { Template T_TFBot_Medic_QuickUber } } } WaveSpawn { Name stage2 WaitForAllDead stage1 Where spawnbot_a TotalCount 10 MaxActive 5 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 4 TotalCurrency 40 TFBot { Class Soldier Skill Normal //Parachute Item "The B.A.S.E. Jumper" Attributes Parachute } } WaveSpawn { Name stage2 WaitForAllDead stage1 Where spawnbot_a TotalCount 10 MaxActive 5 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 4 TotalCurrency 40 TFBot { Class Scout Skill Easy //Parachute Item "The B.A.S.E. Jumper" Attributes Parachute } } WaveSpawn { Name stage2 WaitForAllDead stage1 Where spawnbot_b TotalCount 10 MaxActive 5 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 4 TotalCurrency 40 TFBot { Class Pyro Skill Easy //Parachute Item "The B.A.S.E. Jumper" Attributes Parachute } } WaveSpawn { Name stage2 WaitForAllDead stage1 Where spawnbot_b TotalCount 10 MaxActive 5 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 4 TotalCurrency 40 TFBot { Class HeavyWeapons Skill Easy //Parachute Item "The B.A.S.E. Jumper" Attributes Parachute } } WaveSpawn { Name stage3 WaitForAllSpawned stage2 Where spawnbot_b TotalCount 3 MaxActive 2 SpawnCount 1 WaitBeforeStarting 5 WaitBetweenSpawns 15 TotalCurrency 50 TFBot { Template T_TFBot_Giant_Soldier_Spammer_Reload Tag bot_giant //Parachute Item "The B.A.S.E. Jumper" Attributes Parachute } } WaveSpawn { Name stage3 WaitForAllSpawned stage2 Where spawnbot_a TotalCount 3 MaxActive 2 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 15 TotalCurrency 50 TFBot { Template T_TFBot_Giant_Soldier_Spammer_Reload Tag bot_giant //Parachute Item "The B.A.S.E. Jumper" Attributes Parachute } } WaveSpawn { Name stage3 WaitForAllSpawned stage2 Where spawnbot_c TotalCount 35 MaxActive 14 SpawnCount 7 WaitBeforeStarting 10 WaitBetweenSpawns 10 TotalCurrency 50 TFBot { Class Pyro Skill Easy } } WaveSpawn { Name stage4 WaitForAllDead stage3 Where spawnbot_a TotalCount 3 MaxActive 2 //3 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 15 //10 TotalCurrency 90 TFBot { Template T_TFBot_Giant_Heavyweapons Tag bot_giant } } WaveSpawn { Name stage4 WaitForAllDead stage3 Where spawnbot_b TotalCount 15 MaxActive 10 SpawnCount 5 WaitBeforeStarting 10 WaitBetweenSpawns 15 //10 TotalCurrency 50 TFBot { Class Scout Skill Easy } } WaveSpawn { Name stage4 WaitForAllDead stage3 Where spawnbot_b TotalCount 15 MaxActive 10 SpawnCount 5 WaitBeforeStarting 10 WaitBetweenSpawns 15 //10 TotalCurrency 50 TFBot { Class HeavyWeapons Skill Easy } } } //WAVE 6 //////////CURRENCY 600/////////////////////////////////// Wave { InitWaveOutPut { Target wave_start_relay Action RunScriptCode Param " // local ent = Entities.FindByClassname(null, `tf_objective_resource`) // if (ent) // { // NetProps.SetPropString(ent, `m_iszMvMPopfileName`, `Dizzying Drill (Intermediate)`) // } //^ sets mission name EntFire(`initMain_roadside`,`Trigger`) " } StartWaveOutput { Target wave_start_relay Action RunScriptCode Param " EntFire(`container_flank_location `,`Kill`) //kills thing that fucks up the entire hatch building. necessary as fuck. EntFire(`intel3`,`setreturntime`,`99999`) EntFire(`intel2`,`setreturntime`,`99999`) EntFire(`intel`,`setreturntime`,`99999`) EntFire(`wave_start_relay`,`Trigger`) EntFire(`gate1_relay ontrigger addoutput enable gate0_bot_teleport`,`enable`,0,0,-1) EntFire(`wave_start_relay ontrigger addoutput disable gate0_bot_teleport`,`disable`,0,0,-1) EntFire(`gate2_relay ontrigger addoutput enable gate1_bot_teleport`,`enable`,0,0,-1) EntFire(`wave_start_relay ontrigger addoutput disable gate1_bot_teleport`,`disable`,0,0,-1) " } //bugger convention, i cba with resettable bombs. //other shit is because this map is hot dogshit and needs *me* to fucking fix it. Or it's the wave start relay lol //ent_fire gate2_relay ontrigger addoutput toggle gate1_bot_teleport,toggle,0,0,-1 WaveSpawn { Name hate Where spawnbot_a TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 30 WaitBetweenSpawnsAfterDeath 10 Support 1 TFBot { Class Scout Skill Expert WeaponRestrictions MeleeOnly Name "Bombing Service!" ClassIcon scout_bat } } WaveSpawn { Name stage1 Where spawnbot_c TotalCount 2 MaxActive 2 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 150 Squad { FormationSize 50 TFBot { Template Boss_1 } TFBot { Template Boss_1_Gimmick } } FirstSpawnOutPut { Target initA_setFront Action Trigger } } WaveSpawn { Name stage2 WaitForAllDead stage1 Where spawnbot_a TotalCount 8 MaxActive 6 SpawnCount 2 WaitBeforeStarting 5 WaitBetweenSpawns 15 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Giant_HeavyWeapons Tag bot_giant } TFBot { Template T_TFBot_Medic_QuickUber } } } WaveSpawn { Name stage2 WaitForAllDead stage1 Where spawnbot_b TotalCount 32 MaxActive 12 SpawnCount 4 WaitBeforeStarting 5 WaitBetweenSpawns 6 TotalCurrency 150 Squad { TFBot { Template T_TFGateBot_Soldier_Normal //T_TFGateBot_Soldier_Extended_Concheror_Normal } TFBot { Template T_TFBot_Medic_BigHeal } } } WaveSpawn { Name stage3 WaitForAllDead stage2 Where spawnbot_a TotalCount 10 MaxActive 7 SpawnCount 5 WaitBeforeStarting 0 WaitBetweenSpawns 20 //0 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons_Deflector Tag bot_giant } TFBot { Template T_TFBot_Giant_Medic_Regen Tag bot_giant } TFBot { Template T_TFBot_Medic_Kritz } TFBot { Template T_TFBot_Medic_Kritz } TFBot { Template T_TFBot_Medic_Kritz } } } } }