#base robot_giant.pop #base robot_standard.pop #base robot_alche.pop #base robot_gatebot.pop #base robot_alche_gatebot.pop ////////////////////////////////////////////////////////////////////////////////// //!!INFO!! //MISSION MAKER: Alche_ [https://steamcommunity.com/profiles/76561198241422512] //CREDITS TO ALL ICON MAKERS AND THEIR RESPECTIVE ICONS USED //MAP BY asd417 //BOMBHOP SCRIPT BY PEALOVER //BUDDHA SCRIPT BY SEELPIT //TANKEXTENSIONS BY LITE //ALSO SHOUTOUT CHAOS&MYSTERY FOR THE FINAL BOSS DEATH ANIMATION IDEA // //!!CASH!! //STARTING CASH: 1600 //WAVE 1: 1450 (1550 WITH A+) //WAVE 2: 1650 (1750 WITH A+) //WAVE 3: 1000 (1100 WITH A+) //WAVE 4: 1500 //TOTAL CASH EARNABLE: 5600 //TOTAL CASH EARNABLE W/STARTING: 7200 //MAX POSSIBLE CASH (STARTING AND A+): 7500 ////////////////////////////////////////////////////////////////////////////////// //spawnbot //DO NOT USE //spawnbot_main //spawnbot_left //spawnbot_right //spawnbot_chief //spawnbot_chief_move //spawnbot_upper //spawnbot_flank //DO NOT USE SwirlSwirlSwirlSwirlSwirlSwirlSwirlSwirlSwirlSwirl { StartingCurrency 1600 RespawnWaveTime 3 CanBotsAttackWhileInSpawnRoom No PrecacheModel "models\props_mvm\robot_spawnpoint_warning.mdl" //Advanced 1 Mission //sentry busters { Objective DestroySentries Where spawnbot_sentrybuster InitialCooldown 30 CooldownTime 30 DesiredCount 1 TFBot { Template T_TFBot_SentryBuster Tag bot_sentrybuster } } Templates { T_TFGateBot_Heavy_GRU { Class Heavyweapons Name "Heavyweight Champ" ClassIcon heavy_gru 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 Heavy" Skill Hard WeaponRestrictions MeleeOnly Item "Gloves of Running Urgently MvM" Item "Pugilist's Protector" ItemAttributes { ItemName "Pugilist's Protector" "set item tint RGB" 15185211 } } RevertGateBotsBehavior { Item "MvM GateBot Light Heavy" ItemAttributes // turn off light hat { ItemName "MvM GateBot Light Heavy" "item style override" 1 } ItemAttributes { ItemName "Pugilist's Protector" "set item tint RGB" 2960676 } WeaponRestrictions MeleeOnly Item "Gloves of Running Urgently MvM" Item "Pugilist's Protector" } } } T_TFGateBot_Giant_Scout_Armored_Baseballing { Class Scout Health 3000 ClassIcon scout_stun_giant_armored //need to make an armored milk icon mmmmmmmm Name "Armored Sandman Scout" EventChangeAttributes { Default { Skill Expert Item "The Sandman" WeaponRestrictions MeleeOnly Attributes MiniBoss 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 Tag bot_giant ItemAttributes { ItemName "The Sandman" "effect bar recharge rate increased" 0.05 "max health additive penalty" -0 } CharacterAttributes { "damage force reduction" 0.7 "airblast vulnerability multiplier" 0.7 "override footstep sound set" 5 "move speed penalty" 0.75 } Item "MvM Gatebot Light Scout" } RevertGateBotsBehavior { Skill Expert Item "The Sandman" WeaponRestrictions MeleeOnly Attributes MiniBoss Tag bot_giant ItemAttributes { ItemName "The Sandman" "effect bar recharge rate increased" 0.05 "max health additive penalty" -0 } CharacterAttributes { "damage force reduction" 0.7 "airblast vulnerability multiplier" 0.7 "override footstep sound set" 5 "move speed penalty" 0.75 } ItemAttributes // turn off light hat { ItemName "MvM GateBot Light Scout" "item style override" 1 } Item "MvM Gatebot Light Scout" } } } T_TFGateBot_Giant_Heavy_Mittens_Crit { Class Heavy Health 5000 ClassIcon heavy_mittens Name "Giant Holiday Heavy" EventChangeAttributes { Default { Skill Expert Item "The Holiday Punch" WeaponRestrictions MeleeOnly Attributes MiniBoss Attributes AlwaysCrit 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 Tag bot_giant CharacterAttributes { "damage force reduction" 0.5 "airblast vulnerability multiplier" 0.3 "override footstep sound set" 2 "move speed penalty" 0.5 } Item "MvM Gatebot Light Heavy" Item "The All-Father" } RevertGateBotsBehavior { Skill Expert Item "The Holiday Punch" WeaponRestrictions MeleeOnly Attributes MiniBoss Attributes AlwaysCrit Tag bot_giant CharacterAttributes { "damage force reduction" 0.5 "airblast vulnerability multiplier" 0.3 "override footstep sound set" 2 "move speed penalty" 0.5 } ItemAttributes // turn off light hat { ItemName "MvM GateBot Light Heavy" "item style override" 1 } Item "MvM Gatebot Light Heavy" Item "The All-Father" } } } T_TFGateBot_Giant_Scout_Fuckin_Swirlin_It { Class Scout Health 3000 ClassIcon scout_armored_pda Name "Giant Armored Scout" EventChangeAttributes { Default { Attributes MiniBoss Attributes IgnoreFlag BehaviorModifiers Push Tag nav_prefer_gate1_flank Tag bot_gatebot Tag bot_giant Skill Expert CharacterAttributes { "damage force reduction" 0.7 "airblast vulnerability multiplier" 0.7 "override footstep sound set" 5 "move speed penalty" 0.75 } Item "MvM Gatebot Light Scout" Item "Isotopic Insulator" } RevertGateBotsBehavior { Attributes MiniBoss Tag bot_giant Skill Expert CharacterAttributes { "damage force reduction" 0.7 "airblast vulnerability multiplier" 0.7 "override footstep sound set" 5 "move speed penalty" 0.75 } ItemAttributes // turn off light hat { ItemName "MvM GateBot Light Scout" "item style override" 1 } Item "MvM Gatebot Light Scout" Item "Isotopic Insulator" } } } T_TFBoss_Cave_Excavator { Class Soldier Skill Expert Attributes MiniBoss Attributes UseBossHealthBar Attributes SuppressFire Name "Deep Mountain Excavator" Item "Potato Hat" Health 25000 //20000 Item "The Escape Plan" WeaponRestrictions MeleeOnly SpawnTemplate soldier_boss_logic //UseHumanAnimations 1 ItemAttributes { ItemName "The Escape Plan" "fire input on attack" "iamminingsohardrn^FireMultiple^1" //"fire rate bonus" 1.9 //controlled by FireWeapon now "mod shovel speed boost" 0 "self mark for death" 0 //"is_passive_weapon" 1 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.2 "airblast vulnerability multiplier" 0.2 "override footstep sound set" 3 } FireInput { Target soldier_titlecard Action Trigger Delay 0.1 Repeats 1 } FireWeapon { Delay 0 Type "Primary" IfSeeTarget 1 Duration 0.5 Cooldown 1.6 } ChangeAttributes { Name ihavefuckinghadit IfHealthBelow 5000 Repeats 1 Delay 0 } EventChangeAttributes { ihavefuckinghadit { WeaponRestrictions MeleeOnly //forced to kill himself :( UseHumanAnimations 1 Taunt { Delay 0.2 Cooldown 69 } CharacterAttributes { "move speed bonus" 0.001 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "override footstep sound set" 3 "dmg from ranged reduced" 0.1 } FireInput { Target !self Action $Suicide Delay 3.7 Repeats 1 Cooldown -1 } } } } T_TFBoss_Heavy_Big_Fella { Class Heavy Skill Expert Attributes MiniBoss Attributes UseBossHealthBar Name "Captain Snowshaker" Health 60000 WeaponRestrictions MeleeOnly ClassIcon heavy_chief Tag punchie_boss Item "War Head" //UseHumanAnimations 1 //SpawnTemplate heavy_boss_logic FireInput { Target heavy_titlecard Action Trigger Delay 0.1 Repeats 1 } FireInput { Target phaseswitcher Action PickRandomShuffle Repeats 1 Delay 7 } WeaponResist { "TF_WEAPON_MINIGUN" 0.65 } CharacterAttributes { "move speed bonus" 0.4 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "override footstep sound set" 3 //"cannot pick up intelligence" 1 } FireInput //yoinked from seelpit messages in various channels/threads. i need this for something funny. { Target "!self" Action RunScriptCode Param "self.EnableBuddha()" Repeats 1 } EventChangeAttributes { HomingRockets { WeaponRestrictions PrimaryOnly Item "Iron Curtain" //Addcond { Index 36 } //homer... you are purple. //86999popp;plp3 //my cat salem did this. thanks man. ItemAttributes { ItemName "Iron Curtain" "fire rate bonus" 7 //8 //"projectile spread angle penalty" 9 "override projectile type" 2 "damage bonus" 6.5 //6.5 "mini rockets" 1 ////"mod projectile heat seek power" 90 //"mod projectile heat aim time" 1.5 //"mod projectile heat aim error" 75 //"projectile acceleration" 1200 //"mod projectile heat no predict target speed" 1 //"projectile acceleration start time" 0.5 //"projectile acceleration time" 5 //"projectile trail particle" eyeboss_projectile "projectile speed increased" 0.4 "mod minigun can holster while spinning" 1 //required if you actually want this guy to change weps //"mult projectile count" 4 //"ignores other projectiles" 1 } FireInput { Target bignet Action RunScriptCode Param "SINS.ChangeIconByTag(`punchie_boss`,`soldier_spammer`,false)" Repeats 999 Delay 0 } FireInput { Target phaseswitcher Action PickRandomShuffle Repeats 999 Delay 20 } ChangeAttributes { Name "PartiallyTrueNuke" IfHealthBelow 30000 Repeats 1 Delay 0.1 } } BeamingYouRN { WeaponRestrictions SecondaryOnly Skill Normal AimTrackingInterval 0.5 ItemAttributes { ItemName "TF_WEAPON_SHOTGUN_HWG" //"custom item model" "models/workshop/weapons/c_models/c_invasion_sniperrifle/c_invasion_sniperrifle.mdl" //why does sniper fires tracer break with custom item model like wtf is this bs //"override projectile type" 1 //"custom kill icon" "shooting_star" "weapon spread bonus" 0.6 //"sniper fires tracer HIDDEN" 1 "bullets per shot bonus" 2 "sniper fires tracer" 1 "projectile penetration heavy" 6 "damage bonus" 3.5 //4 "faster reload rate" 0.5 "fire rate bonus" 2.2 } FireInput { Target bignet Action RunScriptCode Param "SINS.ChangeIconByTag(`punchie_boss`,`heavy_shotgun_penetrate`,false)" Repeats 999 Delay 0 } FireInput { Target phaseswitcher Action PickRandomShuffle Repeats 999 Delay 20 } ChangeAttributes { Name "PartiallyTrueNuke" IfHealthBelow 30000 Repeats 1 Delay 0.1 } } ChuckingSnowAndShit { WeaponRestrictions MeleeOnly Attributes SuppressFire Item "The Holiday Punch" ItemAttributes { ItemName "The Holiday Punch" "fire rate bonus" 2.5 "fire input on attack" "snowchuck^FireMultiple^1" } FireInput { Target bignet Action RunScriptCode Param "SINS.ChangeIconByTag(`punchie_boss`,`heavy_mittens`,false)" Repeats 999 Delay 0 } FireWeapon { Delay 0 Type "Primary" IfSeeTarget 1 Duration 0.5 Cooldown 2 } FireInput { Target phaseswitcher Action PickRandomShuffle Repeats 999 Delay 20 } ChangeAttributes { Name PartiallyTrueNuke IfHealthBelow 30000 Repeats 1 Delay 0.1 } } PartiallyTrueNuke { Attributes SuppressFire WeaponRestrictions MeleeOnly FireInput { Target howshocking Action Trigger Repeats 1 Delay 0.1 } FireInput { Target bignet Action RunScriptCode Param "SINS.ChangeIconByTag(`punchie_boss`,`blast_lite`,false)" Repeats 999 Delay 0.1 } Message { Name "{blue}Captain Snowshaker {FFFFFF}is now {red}ENRAGED" Delay 6.8 Repeats 1 } CharacterAttributes { "move speed bonus" 0.4 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "override footstep sound set" 3 "dmg taken increased" 0.1 //"cannot pick up intelligence" 1 } } //phase 2 begins here //attacks switch more often and are deadlier HomingRocketsP2 { WeaponRestrictions PrimaryOnly Item "Iron Curtain" Addcond { Index 36 } //homer... you are purple. ItemAttributes { ItemName "Iron Curtain" "fire rate bonus" 7 //11.5 "projectile spread angle penalty" 9 "override projectile type" 2 "damage bonus" 6.5 //6.5 "mini rockets" 1 "mod projectile heat seek power" 90 "mod projectile heat aim time" 1.5 "mod projectile heat aim error" 75 "projectile acceleration" 1200 "mod projectile heat no predict target speed" 1 "projectile acceleration start time" 0.5 "projectile acceleration time" 5 "projectile trail particle" eyeboss_projectile "projectile speed increased" 0.4 "mod minigun can holster while spinning" 1 //required if you actually want this guy to change weps //"mult projectile count" 4 //"ignores other projectiles" 1 } FireInput { Target bignet Action RunScriptCode Param "SINS.ChangeIconByTag(`punchie_boss`,`soldier_homing_spammer_nys`,false)" Repeats 999 Delay 0 } FireInput { Target phaseswitcherp2 Action PickRandomShuffle Repeats 999 Delay 15 } ChangeAttributes { Name NothingBurger Repeats 1 Delay 0 IfHealthBelow 5 } } BeamingYouRNP2 //higher bullet accuracy + faster reload + better aimtracking interval { WeaponRestrictions SecondaryOnly Skill Normal AimTrackingInterval 0.4 ItemAttributes { ItemName "TF_WEAPON_SHOTGUN_HWG" "weapon spread bonus" 0.4 "bullets per shot bonus" 2 "sniper fires tracer" 1 "projectile penetration heavy" 6 "damage bonus" 3.5 //4 "faster reload rate" 0.5 "fire rate bonus" 1.9 } FireInput { Target bignet Action RunScriptCode Param "SINS.ChangeIconByTag(`punchie_boss`,`heavy_shotgun_penetrate`,false)" Repeats 999 Delay 0 } FireInput { Target phaseswitcherp2 Action PickRandomShuffle Repeats 999 Delay 15 } ChangeAttributes { Name NothingBurger Repeats 1 Delay 0 IfHealthBelow 5 } } ChuckingSnowAndShitP2 { WeaponRestrictions MeleeOnly Attributes SuppressFire Item "The Holiday Punch" ItemAttributes { ItemName "The Holiday Punch" "fire rate bonus" 1.5 "fire input on attack" "snowchuck2^FireMultiple^3" } FireInput { Target bignet Action RunScriptCode Param "SINS.ChangeIconByTag(`punchie_boss`,`heavy_mittens_hyper`,false)" Repeats 999 Delay 0 } FireWeapon { Delay 0 Type "Primary" IfSeeTarget 1 Duration 0.5 Cooldown 1.5 } FireInput { Target phaseswitcherp2 Action PickRandomShuffle Repeats 999 Delay 15 } ChangeAttributes { Name NothingBurger Repeats 1 Delay 0 IfHealthBelow 5 } } NothingBurger { UseHumanAnimations 1 WeaponRestrictions MeleeOnly Item "TF_WEAPON_FISTS" ItemAttributes { ItemName "TF_WEAPON_FISTS" "gesture speed increase" 0.5 } CharacterAttributes { "move speed bonus" 0.001 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "override footstep sound set" 3 "dmg taken increased" 0.1 //"gesture speed increase" 0.5 "voice pitch scale" 0 "no_jump" 1 //"cannot pick up intelligence" 1 } Taunt { Delay 0 Cooldown 999 Name "Taunt: The Proletariat Showoff" } AddAttribute { Item "TF_WEAPON_FISTS" Name "gesture speed increase" Value 1 Delay 12 } Taunt { Delay 12 Cooldown 999 Name "Taunt: Mourning Mercs" } FireInput { Target p3fakeout Action Trigger Repeats 1 Delay 0 } } } } //the drippy templates T_TFGateBot_Giant_Pyro_AlwaysFire_Dripster { Class Pyro Name "Giant Pyro" ClassIcon pyro_giant Health 3000 EventChangeAttributes { Default { 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 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 Pyro" Item "The Merc's Muffler" Skill Expert WeaponRestrictions PrimaryOnly Attributes MiniBoss Attributes AlwaysFireWeapon Tag bot_giant CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.6 "airblast vulnerability multiplier" 0.6 "override footstep sound set" 6 } } RevertGateBotsBehavior { Item "MvM GateBot Light Pyro" Item "The Merc's Muffler" ItemAttributes // turn off light hat { ItemName "MvM GateBot Light Pyro" "item style override" 1 } Skill Expert WeaponRestrictions PrimaryOnly Attributes MiniBoss Attributes AlwaysFireWeapon Tag bot_giant CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.6 "airblast vulnerability multiplier" 0.6 "override footstep sound set" 6 } } } } } PointTemplates { soldier_boss_logic { NoFixUp 1 //the soldier explodes and dies. laugh now! //this bs took me so long to do jesus christ why does god hate me and i am so dick and balls at rafmod //aaaaaaaaaaaaaaaaaaaaa OnSpawnOutput { Target "kablewie" Action "$SetOwner" Param "!activator" Delay 0.02 } game_text { "targetname" "titlecard_upper" "spawnflags" "1" "message" "WRECKLESS CAVE PROSPECTOR" "x" "-1" "y" "0.2" "effect" "2" "color" "255 255 255" "fxtime" "1" "holdtime" "4" "fadeout" "1" "channel" "1" } game_text { "targetname" "titlecard_lower" "spawnflags" "1" "message" "DEEP MOUNTAIN EXCAVATOR" "x" "-1" "y" "0.25" "effect" "0" "color" "255 255 255" "fadein" "1" "holdtime" "2" "fadeout" "1" "channel" "2" } logic_relay { "targetname" "soldier_titlecard" "OnTrigger" "titlecard_upper,Display,,0,-1" "OnTrigger" "titlecard_lower,Display,,1,-1" } tf_point_weapon_mimic { "spawnflags" "1" "targetname" "kablewie" "teamnum" "3" "origin" "40 0 80" "angles" "0 0 0" "Crits" "false" "ModelScale" "1" "Damage" "1337" "SplashRadius" "450" "WeaponType" "3" "$preventshootparent" "1" "OnUser4" "!self,DetonateStickies,,0.1,-1" //"ParticleEffect" "firesmoke_Collumn_mvmAcres_sm" } tf_point_weapon_mimic { "spawnflags" "1" "targetname" "iamminingsohardrn" "$weaponname" "soldier_doohickey" "origin" "40 0 80" "angles" "-40 0 0" "$preventshootparent" "1" "teamnum" "3" "Crits" "false" "modelscale" "1" "$modules" "rotator" "$lookat" "aim" "$rotationspeedx" "300" "$rotationspeedy" "300" "$rotationlimitx" "180" "$rotationlimity" "180" } OnSpawnOutput { Target "iamminingsohardrn" Action "$SetOwner" Param "!activator" Delay 0.02 } OnSpawnOutput { Target "iamminingsohardrn" Action "$RotateTowards" Param "!activator" Delay 0.02 } KeepAlive 1 info_particle_system { "targetname" "ambatublou" "effect_name" "mvm_tank_destroy" "origin" "40 0 80" "angles" "0 0 0" "start_active" "0" } KeepAlive 1 logic_relay { "targetname" "soldierfuckingdies" "OnTrigger" "ambatublou,Start,,0,-1" "OnTrigger" "kablewie,FireOnce,,0,-1" "OnTrigger" "ambatublou,Stop,,15,-1" } OnParentKilledOutput { Target "soldierfuckingdies" Action Trigger } } heavy_boss_logic { NoFixUp 1 game_text { "targetname" "titlecard_upper_h" "spawnflags" "1" "message" "MOUNTAIN TERRAFORMING CONSTRUCT" "x" "-1" "y" "0.2" "effect" "2" "color" "255 255 255" "fxtime" "1" "holdtime" "4" "fadeout" "1" "channel" "1" } game_text { "targetname" "titlecard_lower_h" "spawnflags" "1" "message" "CAPTAIN SNOWSHAKER" "x" "-1" "y" "0.25" "effect" "0" "color" "255 255 255" "fadein" "1" "holdtime" "2" "fadeout" "1" "channel" "2" } logic_relay { "targetname" "heavy_titlecard" "OnTrigger" "titlecard_upper_h,Display,,0,-1" "OnTrigger" "titlecard_lower_h,Display,,1,-1" } logic_case { "targetname" "phaseswitcher" "OnCase01" "!activator,$ChangeAttributes,HomingRockets,,0,-1" "OnCase02" "!activator,$ChangeAttributes,BeamingYouRN,,0,-1" "OnCase03" "!activator,$ChangeAttributes,ChuckingSnowAndShit,,0,-1" } NoFixUp 1 logic_case { "targetname" "phaseswitcherp2" "OnCase01" "!activator,$ChangeAttributes,HomingRocketsP2,,0,-1" "OnCase02" "!activator,$ChangeAttributes,BeamingYouRNP2,,0,-1" "OnCase03" "!activator,$ChangeAttributes,ChuckingSnowAndShitP2,,0,-1" } tf_point_weapon_mimic //surviveable, large blast that blows you away and stuns you, because lol. { "spawnflags" "1" "targetname" "thisisdumb" "WeaponType" "3" "teamnum" "3" "origin" "40 0 80" "angles" "0 0 0" //"90 0 0" "Crits" "false" "ModelScale" "1" "Damage" "690" "SplashRadius" "550" //"$weaponname" "boss_yeah" "$preventshootparent" "1" "OnUser4" "!self,DetonateStickies,,0.1,-1" } tf_point_weapon_mimic //snowballinmg { "spawnflags" "1" "targetname" "snowchuck" "firesound" "misc/null.wav" "teamnum" "3" "origin" "40 0 80" "angles" "0 0 0" "Crits" "false" "ModelScale" "1" "$weaponname" "boss_snowball" "$preventshootparent" "1" "$modules" "rotator" "$lookat" "aim" "$rotationspeedx" "300" "$rotationspeedy" "300" "$rotationlimitx" "180" "$rotationlimity" "180" } tf_point_weapon_mimic //p2 snow chucks sneed and feed { "spawnflags" "1" "targetname" "snowchuck2" "firesound" "misc/null.wav" "teamnum" "3" "origin" "40 0 80" "angles" "0 0 0" "Crits" "false" "ModelScale" "1" "$weaponname" "boss_snowball2" "$preventshootparent" "1" "$modules" "rotator" "$lookat" "aim" "$rotationspeedx" "300" "$rotationspeedy" "300" "$rotationlimitx" "180" "$rotationlimity" "180" } logic_relay { "spawnflags" "1" "targetname" "howshocking" "OnTrigger" "!activator,$AddCond,71,0,-1" "OnTrigger" "!activator,$Stun,5,0,-1" "OnTrigger" "evozap,enable,,0,-1" "OnTrigger" "beep1,pitch,100,0,-1" "OnTrigger" "beep1,pitch,120,1,-1" "OnTrigger" "beep1,pitch,140,2,-1" "OnTrigger" "beep1,pitch,160,3,-1" "OnTrigger" "beep1,pitch,180,4,-1" "OnTrigger" "thisisdumb,FireOnce,,5,-1" "OnTrigger" "tf_gamerules,PlayVO,weapons/cow_mangler_explosion_charge_03.wav,5,-1" "OnTrigger" "imshockingitrn,start,,4.9,-1" "OnTrigger" "!activator,$RemoveCond,71,5.5,-1" "OnTrigger" "evozap,disable,,5.1,-1" "OnTrigger" "imshockingitrn,stop,,5.3,-1" "OnTrigger" "phaseswitcher,kill,,5,-1" "OnTrigger" "phaseswitcherP2,PickRandomShuffle,,7,-1" "OnTrigger" "howshocking,disable,,6.1,-1" } OnSpawnOutput { Target "snowchuck" Action "$SetOwner" Param "!activator" Delay 0.02 } OnSpawnOutput { Target "snowchuck" Action "$RotateTowards" Param "!activator" Delay 0.02 } OnSpawnOutput { Target "snowchuck2" Action "$SetOwner" Param "!activator" Delay 0.02 } OnSpawnOutput { Target "snowchuck2" //this took so long to fix ahhh Action "$RotateTowards" Param "!activator" Delay 0.02 } OnSpawnOutput { Target "thisisdumb" Action "$SetOwner" Param "!activator" Delay 0.02 } //info_particle_system //{ // "targetname" "evozap" // "effect_name" "nucleus_core_steady" // "origin" "40 0 80" // "angles" "0 0 0" // "start_active" "0" //} prop_dynamic { "targetname" "evozap" "model" "models\props_mvm\robot_spawnpoint_warning.mdl" "solid" "0" "origin" "0 0 -40" "angles" "0 0 0" "skin" "2" "modelscale" "7" "disableshadows" "1" "startdisabled" "1" } //info_particle_system //{ //"targetname" "evozap" //"effect_name" "nucleus_core_steady" //"origin" "40 0 80" //"angles" "0 -90 0" //"start_active" "0" //} info_particle_system { "targetname" "imshockingitrn" "effect_name" "drg_cow_explosioncore_charged_blue" "origin" "60 0 20" "angles" "0 0 0" "start_active" "0" } info_particle_system { "targetname" "imshockingitrn" "effect_name" "drg_cow_explosioncore_charged_blue" "origin" "-60 0 20" "angles" "0 0 0" "start_active" "0" } info_particle_system { "targetname" "imshockingitrn" "effect_name" "drg_cow_explosioncore_charged_blue" "origin" "0 60 20" "angles" "0 0 0" "start_active" "0" } info_particle_system { "targetname" "imshockingitrn" "effect_name" "drg_cow_explosioncore_charged_blue" "origin" "0 -60 20" "angles" "0 0 0" "start_active" "0" } ambient_generic { "targetname" "beep1" "message" "misc/rd_finale_beep01.wav" "radius" "9999" "health" "10" //why tf is volume called "health" this is fucking STUPID "pitch" "100" } info_particle_system { "targetname" "pleasedie" "origin" "30 0 20" "angles" "0 0 0" "effect_name" "firesmoke_Collumn_mvmAcres" } env_shake { "targetname" "therumpshaker" //the thug shaker give us the thug shaker dude "origin" "0 0 0" "amplitude" "8" "radius" "5000" "duration" "2" "frequency" "40" } env_shake { "targetname" "thethugshaker" "origin" "0 0 0" "amplitude" "16" "radius" "5000" "duration" "4" "frequency" "40" } KeepAlive 1 logic_relay //most concise and short rafmod/vscript logic_relay pt { "targetname" "p3fakeout" "OnTrigger" "pop_interface,PauseBotSpawning,,0,-1" "OnTrigger" "youstink,Enable,,0.5,-1" "OnTrigger" "intel_35,ForceResetSilent,,0.6,-1" "OnTrigger" "intel_infinite,ForceResetSilent,,0.6,-1" "OnTrigger" "!activator,$AddCond,5,0,-1" "OnTrigger" "tf_gamerules,PlayVO,player/mannpower_invulnerable.wav,0,-1" "OnTrigger" "!activator,$AddHealth,200,2,-1" "OnTrigger" "!activator,$AddHealth,200,2.5,-1" "OnTrigger" "!activator,$AddHealth,400,3,-1" "OnTrigger" "!activator,$AddHealth,400,3.5,-1" "OnTrigger" "!activator,$AddHealth,400,4,-1" "OnTrigger" "!activator,$AddHealth,1000,4.5,-1" "OnTrigger" "tf_gamerules,PlayVO,vo/mvm/norm/heavy_mvm_laughhappy02.mp3,3,-1" "OnTrigger" "!activator,$AddHealth,1500,5,-1" "OnTrigger" "!activator,$AddHealth,2500,5.5,-1" "OnTrigger" "!activator,$AddHealth,5000,6,-1" "OnTrigger" "!activator,$AddHealth,5000,6.5,-1" "OnTrigger" "!activator,$AddHealth,5000,7,-1" "OnTrigger" "!activator,$AddHealth,5000,7.5,-1" "OnTrigger" "!activator,$AddHealth,5000,8,-1" "OnTrigger" "!activator,$AddHealth,5600,8.5,-1" "OnTrigger" "tf_gamerules,PlayVO,vo/mvm/norm/heavy_mvm_positivevocalization03.mp3,9,-1" "OnTrigger" "!activator,$AddHealth,7000,9,-1" "OnTrigger" "!activator,$AddHealth,7000,9.5,-1" "OnTrigger" "!activator,$AddHealth,7000,10,-1" "OnTrigger" "!activator,$AddHealth,10000,10.5,-1" "OnTrigger" "!activator,$RemoveCond,7,11.9,-1" "OnTrigger" "!activator,$RemoveCond,5,11.9,-1" "OnTrigger" "tf_gamerules,PlayVO,weapons/cow_mangler_explosion_charge_01.wav,12,-1" "OnTrigger" "therumpshaker,StartShake,,12,-1" "OnTrigger" "therumpshaker,StopShake,,15,-1" "OnTrigger" "imfuckindying,start,,12,-1" "OnTrigger" "imfuckindying,stop,,13,-1" "OnTrigger" "tf_gamerules,PlayVO,vo/mvm/norm/heavy_mvm_paincrticialdeath02.mp3,14,-1" //WHY IS CRITICAL MISPELT!!?? "OnTrigger" "tf_gamerules,PlayVO,mvm/mvm_tank_explode.wav,16,-1" "OnTrigger" "pleasedie,start,,15.9,-1" "OnTrigger" "!activator,$Suicide,,16,-1" "OnTrigger" "thethugshaker,StartShake,,16,-1" "OnTrigger" "thethugshaker,StopShake,,22,-1" "OnTrigger" "pleasedie,stop,,16.5,-1" } info_particle_system { "targetname" "imfuckindying" "effect_name" "drg_cow_explosioncore_charged_blue" "origin" "40 -60 20" "angles" "0 0 0" "start_active" "0" } info_particle_system { "targetname" "imfuckindying" "effect_name" "drg_cow_explosioncore_charged_blue" "origin" "16 33 10" "angles" "0 0 0" "start_active" "0" } info_particle_system { "targetname" "imfuckindying" "effect_name" "drg_cow_explosioncore_charged_blue" "origin" "-20 -15 40" "angles" "0 0 0" "start_active" "0" } info_particle_system { "targetname" "imfuckindying" "effect_name" "drg_cow_explosioncore_charged_blue" "origin" "10 30 30" "angles" "0 0 0" "start_active" "0" } filter_tf_bot_has_tag { "targetname" "isthissupport" "tags" "filthy_support" "require_all_tags" "1" "negated" "0" } trigger_hurt { "targetname" "youstink" "damage" "696969" "origin" "0 0 0" "mins" "-6000 -6000 -6000" "maxs" "6000 6000 6000" "damagetype" "16" "filtername" "isthissupport" "startdisabled" "1" "spawnflags" "1" } } } CustomWeapon { soldier_doohickey { OriginalItemName "The Iron Bomber" //"fire rate bonus" 2.33 //hopefully same fire rate as pickaxe "faster reload rate" 0 "custom projectile model" "models/props_lakeside_event/bomb_temp.mdl" //"custom item model" "models/weapons/c_models/c_pickaxe/c_pickaxe.mdl" "projectile spread angle penalty" 4 "mult projectile count" 2 //"damage bonus" 0.75 //75 damage instead of 100 on direct hit } boss_snowball //hurling chunks of ice and all that jazz { OriginalItemName "The Iron Bomber" //"mult projectile count" 3 "faster reload rate" 0 "custom projectile model" "models/props_moonbase/moon_cube_crystal01.mdl" "grenade explode on impact" 1 "sticky air burst mode" 1 "blast radius increased" 0.25 "damage bonus" 2 //1.5 //"projectile gravity" 300 //"projectile speed increased" 0.7 "explosion particle" "snow_steppuff_mist" //"fuse bonus" 9 } boss_snowball2 //hurling chunks of ice and all that jazz except even more deadly { OriginalItemName "The Iron Bomber" //"mult projectile count" 3 "faster reload rate" 0 "fire rate bonus" 0 "custom projectile model" "models/props_moonbase/moon_cube_crystal01.mdl" "grenade explode on impact" 1 "sticky air burst mode" 1 "blast radius increased" 0.25 "damage bonus" 2 //1.5 "projectile spread angle penalty" 7 //"projectile gravity" 300 "projectile speed increased" 0.8 "explosion particle" "snow_steppuff_mist" //"fuse bonus" 9 } boss_yeah //stun { OriginalItemName "TF_WEAPON_PIPEBOMBLAUNCHER" "damage bonus" 5 "faster reload rate" 0 "stun on hit" 5 "stun on hit type" "bonk" "damage causes airblast" 1 "blast radius increased" 4.45 //650 HU roughly //"use large smoke explosion" 1 "stickybomb charge rate" 0 "explosion particle" "drg_cow_explosioncore_charged_blue" "custom projectile size" 9 "mult projectile scale" 9 } } //WAVE 1 //PAYOUT: 1450 Wave { StartWaveOutput { Target wave_start_boss_relay Action RunScriptCode Param " EntFire(`wave_start_boss_relay`, `Trigger`) EntFire(`cap_trigger_up`, `AddOutput`,`OnCapTeam2 gate_softlock_fix:Disable::0.5:-1`) EntFire(`cap_trigger_low`, `AddOutput`,`OnCapTeam2 gate_softlock_fix:Disable::0.5:-1`) EntFire(`wave_init_relay`, `AddOutput`,`OnTrigger gate_softlock_fix:Enable::0.5:-1`) " } DoneOutput { Target wave_reset Action Trigger } InitWaveOutput { Target bignet Action RunScriptCode Param " for (local ent; ent = Entities.FindByClassname(ent, `item_teamflag`); ) { ent.AcceptInput(`RunScriptFile`, `bombhop.nut`, null, null) } EntFire(`wave_init_relay`, `Trigger`) IncludeScript(`tankextensions_main`, getroottable()) IncludeScript(`tankextensions/combattank`, getroottable()) IncludeScript(`tankextensions/combattank_weapons/rocketpod`, getroottable()) IncludeScript(`tankextensions/combattank_weapons/fireball`, getroottable()) if(Entities.FindByName(null, `gate_softlock_fix`) == null) { local barrierfix = SpawnEntityFromTable(`func_forcefield`, { targetname = `gate_softlock_fix` origin = `-1400 1928 129` TeamNum = `1` StartDisabled = `0` rendermode = `10` }) barrierfix.KeyValueFromInt(`solid`, 2) barrierfix.KeyValueFromString(`mins`, `-320 -1 -1000`) barrierfix.KeyValueFromString(`maxs`, `320 10 1000`) } " } WaveSpawn { Name wow!-now_on_swirl! WaitBeforeStarting 0 FirstSpawnOutput { Target gamerules Action RunScriptCode Param " SendGlobalGameEvent(`show_annotation`, { text = ` The bomb will periodically backtrack if it's not being carried.` lifetime = 10 worldPosX = 870 worldPosY = -1686 worldPosZ = 793 id = -1 play_sound = `misc/null.wav` show_distance = false show_effect = false visibilityBitfield = 0 }) " } } WaveSpawn { Name 1a Where spawnbot_left TotalCount 4 SpawnCount 1 WaitBetweenSpawns 15 WaitBeforeStarting 0 TotalCurrency 100 MaxActive 3 TFBot { Template T_TFBot_Giant_Soldier_Spammer Item "Merc's Pride Scarf" Item "The Brown Bomber" Tag bot_giant } } WaveSpawn { Name 1a Where spawnbot_main TotalCount 24 SpawnCount 4 WaitBetweenSpawns 9 WaitBeforeStarting 7 TotalCurrency 32 MaxActive 8 TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ_Fast Item "Pugilist's Protector" Skill Expert } } WaveSpawn { Name 1a-a Where spawnbot_upper TotalCount 16 SpawnCount 4 WaitBetweenSpawns 8 WaitBeforeStarting 5 TotalCurrency 34 MaxActive 8 TFBot { Template T_TFBot_Heavyweapons_Shotgun Name "Shotgun Heavy" Skill Normal } } WaveSpawn { Name 1a Where spawnbot_upper TotalCount 12 SpawnCount 4 WaitBetweenSpawns 8 WaitBeforeStarting 8 TotalCurrency 34 MaxActive 8 WaitForAllSpawned 1a-a TFBot { Template T_TFGateBot_Heavyweapons_Shotgun Name "Shotgun Heavy" } } WaveSpawn { Name 1b Where spawnbot_right TotalCount 2 SpawnCount 1 WaitBetweenSpawns 18 WaitBeforeStarting 20 TotalCurrency 50 MaxActive 9 WaitForAllSpawned 1a TFBot { Template T_TFGateBot_Giant_Pyro_AlwaysFire_Dripster } } WaveSpawn { Name 1b Where spawnbot_left TotalCount 18 SpawnCount 3 WaitBetweenSpawns 7.5 WaitBeforeStarting 12 TotalCurrency 25 MaxActive 6 WaitForAllSpawned 1a TFBot { Class Demoman Skill Normal } } WaveSpawn { Name 1b-tank TotalCount 1 SpawnCount 1 WaitBeforeStarting 14 TotalCurrency 225 WaitForAllSpawned 1a Tank { Name tankboss1 StartingPathTrackNode path_tank_default Health 18000 Speed 75 Skin 0 OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name 1c Where spawnbot_upper TotalCount 24 SpawnCount 4 WaitBetweenSpawns 9 WaitBeforeStarting 10 TotalCurrency 50 MaxActive 8 WaitForAllSpawned 1b TFBot { Template T_TFGateBot_Heavy_GRU } } WaveSpawn { Name 1c Where spawnbot_right TotalCount 6 SpawnCount 2 WaitBetweenSpawns 16 WaitBeforeStarting 15 TotalCurrency 125 MaxActive 6 WaitForAllSpawned 1b Squad { TFBot { Template T_TFBot_Giant_Pyro Item "The Merc's Muffler" Item "Hot Spaniel" Tag bot_giant Attributes AlwaysFireWeapon } TFBot { Template T_TFBot_Medic_QuickFix } } } WaveSpawn { Name 1c Where spawnbot_main TotalCount 16 SpawnCount 2 WaitBetweenSpawns 6 WaitBeforeStarting 11 TotalCurrency 25 MaxActive 8 WaitForAllSpawned 1b TFBot { Class Demoman Skill Normal } } WaveSpawn { Name 1d Where spawnbot_upper TotalCount 12 //12 SpawnCount 4 //4 WaitBetweenSpawns 16 WaitBeforeStarting 5 TotalCurrency 450 WaitForAllDead 1c MaxActive 6 Squad { TFBot { Class Engineer //cosmetics are so janky on engiebots, mainly giants :( Health 3300 ClassIcon engineer_ranger_nys_spammer Name "Giant Ranger Engineer" Skill Expert Attributes MiniBoss Item "The Rescue Ranger" WeaponRestrictions PrimaryOnly Action FetchFlag Tag bot_giant ItemAttributes { ItemName "The Rescue Ranger" "faster reload rate" -0.5 //-0.8 "fire rate bonus" 0.7 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.6 "voice pitch scale" 0 "airblast vulnerability multiplier" 0.6 "override footstep sound set" 6 } } TFBot { Template T_TFBot_Medic_QuickFix } TFBot { Template T_TFBot_Medic_QuickFix } TFBot { Template T_TFBot_Medic_QuickFix } } } WaveSpawn { Name 1d Where spawnbot_main TotalCount 16 SpawnCount 2 WaitBetweenSpawns 7 WaitBeforeStarting 3 TotalCurrency 150 WaitForAllDead 1c MaxActive 10 TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ_Fast Item "Pugilist's Protector" Skill Expert } } WaveSpawn { Name 1d-s Where spawnbot_main TotalCount 21 SpawnCount 3 WaitBetweenSpawns 7 WaitBeforeStarting 2 TotalCurrency 150 WaitForAllDead 1c MaxActive 6 Support 1 TFBot { Class Soldier Skill Normal } } } //WAVE 2 //PAYOUT: 1350 Wave { StartWaveOutput { Target wave_start_boss_relay Action RunScriptCode Param " EntFire(`wave_start_boss_relay`, `Trigger`) EntFire(`cap_trigger_up`, `AddOutput`,`OnCapTeam2 gate_softlock_fix:Disable::0.5:-1`) EntFire(`cap_trigger_low`, `AddOutput`,`OnCapTeam2 gate_softlock_fix:Disable::0.5:-1`) EntFire(`wave_init_relay`, `AddOutput`,`OnTrigger gate_softlock_fix:Enable::0.5:-1`) " } DoneOutput { Target wave_reset Action Trigger } InitWaveOutput { Target bignet Action RunScriptCode Param " for (local ent; ent = Entities.FindByClassname(ent, `item_teamflag`); ) { ent.AcceptInput(`RunScriptFile`, `bombhop.nut`, null, null) } EntFire(`wave_init_relay`, `Trigger`) EntFire(`wave_prepare_relay_lower`, `Trigger`, null, 1.5) IncludeScript(`tankextensions_main`, getroottable()) IncludeScript(`tankextensions/combattank`, getroottable()) IncludeScript(`tankextensions/combattank_weapons/rocketpod`, getroottable()) IncludeScript(`tankextensions/combattank_weapons/fireball`, getroottable()) if(Entities.FindByName(null, `gate_softlock_fix`) == null) { local barrierfix = SpawnEntityFromTable(`func_forcefield`, { targetname = `gate_softlock_fix` origin = `-1400 1928 129` TeamNum = `1` StartDisabled = `0` rendermode = `10` }) barrierfix.KeyValueFromInt(`solid`, 2) barrierfix.KeyValueFromString(`mins`, `-320 -1 -1000`) barrierfix.KeyValueFromString(`maxs`, `320 10 1000`) } " } WaveSpawn { Name wow2!-now_on_swirl2! WaitBeforeStarting 0 FirstSpawnOutput { Target gamerules Action RunScriptCode Param " SendGlobalGameEvent(`show_annotation`, { text = ` An alarm will sound when ambush bots are about to spawn!` lifetime = 10 worldPosX = 870 worldPosY = -1686 worldPosZ = 793 id = -1 play_sound = `misc/null.wav` show_distance = false show_effect = false visibilityBitfield = 0 }) " } } WaveSpawn { Name 2a Where spawnbot_right TotalCount 3 SpawnCount 1 WaitBetweenSpawns 17 WaitBeforeStarting 0 TotalCurrency 150 MaxActive 2 TFBot { Template T_TFGateBot_Giant_Soldier_SlowBarrage //Health 4000 } } WaveSpawn { Name 2a Where spawnbot_upper TotalCount 16 SpawnCount 2 WaitBetweenSpawns 5 WaitBeforeStarting 7 TotalCurrency 25 MaxActive 6 TFBot { Class Pyro Skill Normal Attributes AlwaysFireWeapon } } WaveSpawn { Name 2a Where spawnbot_left Where spawnbot_right TotalCount 24 SpawnCount 3 WaitBetweenSpawns 5.5 WaitBeforeStarting 0 TotalCurrency 25 MaxActive 9 TFBot { Class Scout WeaponRestrictions SecondaryOnly Name "Pistol Scout" ClassIcon scout_pistol_nys } } WaveSpawn //dummy { WaitForAllSpawned 2a WaitBeforeStarting 10 FirstSpawnOutput { Target bignet Action RunScriptCode Param " EntFire(`relay_open_ambush`, `Trigger`) //SendGlobalGameEvent(`show_annotation`, { // text = ` Ambush robots incoming!` // lifetime = 10 // worldPosX = -1273 // worldPosY = 3125 // worldPosZ = 146 // id = -1 // play_sound = `misc/null.wav` // show_distance = false // show_effect = false // visibilityBitfield = 0 //}) " } } WaveSpawn { Name 2a-b Where spawnbot_right TotalCount 3 SpawnCount 1 WaitBetweenSpawns 16 WaitBeforeStarting 17 TotalCurrency 150 MaxActive 2 WaitForAllSpawned 2a TFBot { Template T_TFGateBot_Giant_Demo_Burst } } WaveSpawn { Name 2a-ab Where spawnbot_ambush_lower TotalCount 10 SpawnCount 2 WaitBetweenSpawns 6 WaitBeforeStarting 13 TotalCurrency 150 MaxActive 6 WaitForAllSpawned 2a TFBot { Class Heavyweapons Name "Ambush Holiday Heavy" Skill Expert ClassIcon heavy_mittens WeaponRestrictions MeleeOnly Item "The Holiday Punch" Item "The Conspiracy Cap" //REDDITOR!!! Item "The All-Father" Attributes IgnoreFlag Action Mobber Attributes AlwaysCrit } } WaveSpawn { Name 2a-b Where spawnbot_ambush_lower TotalCount 1 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 3 TotalCurrency 150 MaxActive 1 WaitForAllSpawned 2a-ab TFBot { Template T_TFBot_Giant_Soldier Item "The Conspiracy Cap" Name "Giant Ambush Soldier" Attributes IgnoreFlag Action Mobber Tag bot_giant } } WaveSpawn { Name 2a-b Where spawnbot_upper TotalCount 10 SpawnCount 1 WaitBetweenSpawns 6.5 WaitBeforeStarting 7 TotalCurrency 25 MaxActive 4 WaitForAllSpawned 2a TFBot { Class Pyro Skill Hard Attributes AlwaysFireWeapon } } WaveSpawn { Name 2a-b Where spawnbot_left TotalCount 15 //20 SpawnCount 3 //4 WaitBetweenSpawns 10 WaitBeforeStarting 20 TotalCurrency 75 MaxActive 7 //10 WaitForAllSpawned 2a TFBot { Class Scout WeaponRestrictions SecondaryOnly Name "Pistol Scout" //"Ambush Pistol Scout" ClassIcon scout_pistol_nys //Item "The Conspiracy Cap" //REDDITOR!!! } } WaveSpawn //dummy { WaitForAllDead 2a-b FirstSpawnOutput { Target relay_close_ambush Action Trigger } } WaveSpawn { Name 2b Where spawnbot_left TotalCount 3 SpawnCount 1 WaitBetweenSpawns 17 WaitBeforeStarting 18 TotalCurrency 100 MaxActive 2 WaitForAllSpawned 2a-b TFBot { Template T_TFBot_Giant_Heavyweapons //formerly heater Tag bot_giant Item "Officer's Ushanka" //Name "Giant Heater Heavy" //MaxVisionRange 1200 //Skill Expert } } WaveSpawn { Name 2b Where spawnbot_left Where spawnbot_right TotalCount 16 SpawnCount 2 WaitBetweenSpawns 7 WaitBeforeStarting 12 TotalCurrency 25 MaxActive 6 WaitForAllSpawned 2a-b TFBot { Template T_TFGateBot_Pyro_AlwaysFireWeapon } } WaveSpawn { Name 2b Where spawnbot_upper TotalCount 27 SpawnCount 3 WaitBetweenSpawns 6 WaitBeforeStarting 10.5 TotalCurrency 50 MaxActive 9 WaitForAllSpawned 2a-b TFBot { Template T_TFBot_Demoman_Stickybomb } } WaveSpawn //dummy { WaitForAllDead 2b WaitBeforeStarting 0 FirstSpawnOutput { Target gamerules Action RunScriptCode Param " EntFire(`relay_open_ambush`, `Trigger`) //SendGlobalGameEvent(`show_annotation`, { // text = ` Ambush robots incoming!` // lifetime = 8 // worldPosX = -1273 // worldPosY = 3125 // worldPosZ = 146 // id = -1 // play_sound = `misc/null.wav` // show_distance = false // show_effect = false // visibilityBitfield = 0 //}) " } } WaveSpawn { Name 2c-s Where spawnbot_upper TotalCount 40 SpawnCount 4 WaitBetweenSpawns 7 //6.5 WaitBeforeStarting 2 TotalCurrency 75 MaxActive 6 //8 WaitForAllSpawned 2b Support 1 TFBot { Template T_TFBot_Sniper_Huntsman } } WaveSpawn { Name 2c Where spawnbot_ambush_lower TotalCount 24 SpawnCount 3 WaitBetweenSpawns 6.5 WaitBeforeStarting 5 TotalCurrency 75 MaxActive 9 WaitForAllDead 2b TFBot { Class Heavyweapons Name "Ambush Holiday Heavy" Skill Expert ClassIcon heavy_mittens WeaponRestrictions MeleeOnly Item "The Holiday Punch" Item "The Conspiracy Cap" //REDDITOR!!! Item "The All-Father" Attributes IgnoreFlag Action Mobber Attributes AlwaysCrit } } WaveSpawn { Name 2c Where spawnbot_upper TotalCount 12 SpawnCount 4 WaitBetweenSpawns 17 WaitBeforeStarting 1 TotalCurrency 150 MaxActive 8 WaitForAllDead 2b Squad { ShouldPreserveSquad 1 TFBot { Class Medic Health 4500 ClassIcon medic_syringe_spammer_giant Name "Giant Syringe Spammer Medic" Item "The Combat Medic's Crusher Cap" Item "Medi-Mask" Skill Expert Attributes MiniBoss WeaponRestrictions PrimaryOnly Action FetchFlag Tag bot_giant ItemAttributes { ItemName "TF_WEAPON_SYRINGEGUN_MEDIC" "faster reload rate" 0 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.6 "airblast vulnerability multiplier" 0.6 } } TFBot { Template T_TFBot_Medic_QuickUber Name "Quick Uber Medic" Item "Halogen Head Lamp" } TFBot { Template T_TFBot_Medic_QuickUber Name "Quick Uber Medic" Item "Halogen Head Lamp" } TFBot { Template T_TFBot_Medic_QuickUber Name "Quick Uber Medic" Item "Halogen Head Lamp" } } } WaveSpawn { Name 2d Where spawnbot_upper TotalCount 1 SpawnCount 1 WaitBetweenSpawns 69 WaitBeforeStarting 4 TotalCurrency 400 MaxActive 6 WaitForAllDead 2c FirstSpawnOutput { Target relay_close_ambush Action Trigger } TFBot { Template T_TFBoss_Cave_Excavator ClassIcon soldier_pickaxe_escape_explode //soldier_escapeplan_armored } } WaveSpawn { Name 2d-s Where spawnbot_upper TotalCount 16 SpawnCount 2 WaitBetweenSpawns 5 WaitBeforeStarting 2 TotalCurrency 25 MaxActive 6 WaitForAllDead 2c Support 1 TFBot { Class Heavy Skill Easy } } } //WAVE 3 //PAYOUT: 1000 Wave { StartWaveOutput { Target wave_start_boss_relay Action RunScriptCode Param " EntFire(`wave_start_boss_relay`, `Trigger`) EntFire(`cap_trigger_up`, `AddOutput`,`OnCapTeam2 gate_softlock_fix:Disable::0.5:-1`) EntFire(`cap_trigger_low`, `AddOutput`,`OnCapTeam2 gate_softlock_fix:Disable::0.5:-1`) EntFire(`wave_init_relay`, `AddOutput`,`OnTrigger gate_softlock_fix:Enable::0.5:-1`) " } DoneOutput { Target wave_reset Action Trigger } InitWaveOutput { Target bignet Action RunScriptCode Param " for (local ent; ent = Entities.FindByClassname(ent, `item_teamflag`); ) { ent.AcceptInput(`RunScriptFile`, `bombhop.nut`, null, null) } EntFire(`wave_init_relay`, `Trigger`) EntFire(`wave_prepare_relay_upper`, `Trigger`, null, 1.5) IncludeScript(`tankextensions_main`, getroottable()) IncludeScript(`tankextensions/combattank`, getroottable()) IncludeScript(`tankextensions/combattank_weapons/rocketpod`, getroottable()) IncludeScript(`tankextensions/combattank_weapons/fireball`, getroottable()) if(Entities.FindByName(null, `gate_softlock_fix`) == null) { local barrierfix = SpawnEntityFromTable(`func_forcefield`, { targetname = `gate_softlock_fix` origin = `-1400 1928 129` TeamNum = `1` StartDisabled = `0` rendermode = `10` }) barrierfix.KeyValueFromInt(`solid`, 2) barrierfix.KeyValueFromString(`mins`, `-320 -1 -1000`) barrierfix.KeyValueFromString(`maxs`, `320 10 1000`) } " } WaveSpawn { Name 3a-a Where spawnbot_right TotalCount 6 SpawnCount 2 WaitBetweenSpawns 15 WaitBeforeStarting 0 TotalCurrency 125 MaxActive 9 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons_Shotgun Item "The Outdoorsman" Tag bot_giant } TFBot { Template T_TFBot_Medic_BigHeal_Armored Item "The Surgeon's Stahlhelm" Tag bot_giant } } } WaveSpawn { Name 3a Where spawnbot_main TotalCount 18 //21 SpawnCount 3 WaitBetweenSpawns 6.5 WaitBeforeStarting 6 TotalCurrency 75 MaxActive 6 TFBot { Class Soldier Skill Hard } } WaveSpawn { Name 3b Where spawnbot_right TotalCount 12 SpawnCount 2 WaitBetweenSpawns 6.5 WaitBeforeStarting 7 TotalCurrency 50 MaxActive 8 //6 WaitForAllSpawned 3a TFBot { Class Soldier Skill Hard } } WaveSpawn { Name 3a-g Where spawnbot_upper TotalCount 10 SpawnCount 1 WaitBetweenSpawns 8 WaitBeforeStarting 6 TotalCurrency 50 MaxActive 4 TFBot { Template T_TFGateBot_Soldier_Hard } } WaveSpawn { Name 3b-tank TotalCount 1 SpawnCount 1 WaitBeforeStarting 17 TotalCurrency 150 WaitForAllSpawned 3a-a Tank { Name combattank_bomb|fireball|fireball StartingPathTrackNode path_tank_upper Health 22000 //20000 Speed 75 Skin 1 ClassIcon tank_combat_dragon_fury OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn //dummy { WaitForAllSpawned 3b WaitBeforeStarting 23 FirstSpawnOutput { Target gamerules Action RunScriptCode Param " EntFire(`relay_open_ambush`, `Trigger`) //SendGlobalGameEvent(`show_annotation`, { // text = ` Ambush robots incoming!` // lifetime = 10 // worldPosX = -1205 // worldPosY = 3223 // worldPosZ = 565 // id = -1 // play_sound = `misc/null.wav` // show_distance = false // show_effect = false // visibilityBitfield = 0 //}) " } } WaveSpawn { Name 3c Where spawnbot_upper TotalCount 36 SpawnCount 4 WaitBetweenSpawns 6 //5 WaitBeforeStarting 43.5 //i accidentally put this in waitbetween spawns like a fucking idiot on 4/1/2026. lmao. TotalCurrency 25 MaxActive 10 WaitForAllSpawned 3b-tank TFBot { Template T_TFBot_Demo_Burst //Skill Normal //might as well be hard/expert, whichever of the 2 burst demo commons are. } } WaveSpawn { Name 3c Where spawnbot_right TotalCount 4 SpawnCount 1 WaitBetweenSpawns 14 WaitBeforeStarting 54 //14 TotalCurrency 100 MaxActive 3 WaitForAllSpawned 3b-tank TFBot { Template T_TFGateBot_Giant_Scout_Fuckin_Swirlin_It } } WaveSpawn { Name 3c Where spawnbot_ambush_upper TotalCount 8 //10 SpawnCount 2 WaitBetweenSpawns 13 //11 WaitBeforeStarting 60 //omfg i literally did the exact same mistake too i am actually so fucking STUPID TotalCurrency 25 MaxActive 4 WaitForAllSpawned 3b-tank TFBot { //Template T_TFBot_Pyro_Flaregun Class Pyro Skill Hard Health 650 // 700 Scale 1.5 Attributes AlwaysFireWeapon Item "The Backburner" ClassIcon pyro_backburner_nys_armored Name "Armored Ambush Backburner Pyro" //"Ambush Flare Pyro" Item "The Conspiracy Cap" Tag bot_giant Attributes IgnoreFlag Action Mobber ItemAttributes { ItemName "The Backburner" "lunchbox adds minicrits" 2 //orange flames } } } WaveSpawn { Name 3d-s Where spawnbot_left Where spawnbot_right TotalCount 20 SpawnCount 2 WaitBetweenSpawns 9 //7 WaitBeforeStarting 11 TotalCurrency 50 MaxActive 4 Support 1 WaitForAllSpawned 3c TFBot { Class Heavy //Scout Skill Normal } } WaveSpawn { Name 3d //-b Where spawnbot_upper TotalCount 3 SpawnCount 1 WaitBetweenSpawns 17 //18 WaitBeforeStarting 11 TotalCurrency 250 MaxActive 2 WaitForAllDead 3c TFBot { Template T_TFBot_Giant_Soldier_SlowBarrage Item "The War Pig" Tag bot_giant } } WaveSpawn { Name 3d //-b //Where spawnbot_left Where spawnbot_right TotalCount 6 SpawnCount 1 WaitBetweenSpawns 10 WaitBeforeStarting 5 TotalCurrency 100 MaxActive 3 WaitForAllDead 3c TFBot { Template T_TFBot_Giant_Demoman //_RapidFire ClassIcon demo_spammer_package Item "Tam O'Shanter" Name "Giant Fast Fire Demoman" Tag bot_giant } } } //WAVE 4 //DA BOSS WAVE //PAYOUT: 1500 Wave { StartWaveOutput { Target wave_start_boss_relay Action RunScriptCode Param " EntFire(`wave_start_boss_relay`, `Trigger`) EntFire(`cap_trigger_up`, `AddOutput`,`OnCapTeam2 gate_softlock_fix:Disable::0.5:-1`) EntFire(`cap_trigger_low`, `AddOutput`,`OnCapTeam2 gate_softlock_fix:Disable::0.5:-1`) EntFire(`wave_init_relay`, `AddOutput`,`OnTrigger gate_softlock_fix:Enable::0.5:-1`) " } DoneOutput { Target wave_reset Action Trigger } InitWaveOutput { Target bignet Action RunScriptCode Param " for (local ent; ent = Entities.FindByClassname(ent, `item_teamflag`); ) { ent.AcceptInput(`RunScriptFile`, `bombhop.nut`, null, null) } EntFire(`wave_init_relay`, `Trigger`) EntFire(`wave_prepare_relay_lower`, `Trigger`, null, 1.5) IncludeScript(`buddhamode`) IncludeScript(`tankextensions_main`, getroottable()) IncludeScript(`tankextensions/combattank`, getroottable()) IncludeScript(`tankextensions/combattank_weapons/rocketpod`, getroottable()) IncludeScript(`tankextensions/combattank_weapons/fireball`, getroottable()) IncludeScript(`seel_ins.nut`, getroottable()) if(Entities.FindByName(null, `gate_softlock_fix`) == null) { local barrierfix = SpawnEntityFromTable(`func_forcefield`, { targetname = `gate_softlock_fix` origin = `-1400 1928 129` TeamNum = `1` StartDisabled = `0` rendermode = `10` }) barrierfix.KeyValueFromInt(`solid`, 2) barrierfix.KeyValueFromString(`mins`, `-320 -1 -1000`) barrierfix.KeyValueFromString(`maxs`, `320 10 1000`) } " } WaveSpawn //dummy { FirstSpawnOutput { Target gamerules Action RunScriptCode Param " EntFire(`relay_open_ambush`, `Trigger`) //SendGlobalGameEvent(`show_annotation`, { // text = ` Ambush robots incoming!` // lifetime = 8 // worldPosX = -1273 // worldPosY = 3125 // worldPosZ = 146 // id = -1 // play_sound = `misc/null.wav` // show_distance = false // show_effect = false // visibilityBitfield = 0 //}) " } } WaveSpawn { Name 4a-a Where spawnbot_left TotalCount 27 //30 SpawnCount 3 WaitBetweenSpawns 8 //6.5 WaitBeforeStarting 0 TotalCurrency 50 MaxActive 9 TFBot { Class Soldier Skill Hard } } WaveSpawn { Name 4a-a Where spawnbot_upper TotalCount 5 SpawnCount 1 WaitBetweenSpawns 11 //14 //16 WaitBeforeStarting 3 //5 TotalCurrency 175 MaxActive 3 TFBot { Template T_TFBot_Giant_Demoman ClassIcon demo_spammer_package Item "The Black Watch" //Item "The Conspiracy Cap" //Name "Giant Ambush Spammer Demo" Tag bot_giant } } WaveSpawn { Name 4a-a Where spawnbot_ambush_lower TotalCount 2 SpawnCount 1 WaitBetweenSpawns 16 WaitBeforeStarting 5 TotalCurrency 175 MaxActive 1 TFBot { Class Heavy Health 5000 ClassIcon heavy_mittens Item "The Conspiracy Cap" Name "Giant Ambush Holiday Heavy" Skill Expert Item "The Holiday Punch" Item "The All-Father" WeaponRestrictions MeleeOnly Attributes MiniBoss Attributes AlwaysCrit Attributes IgnoreFlag Action Mobber Tag bot_giant CharacterAttributes { "damage force reduction" 0.5 "airblast vulnerability multiplier" 0.3 "override footstep sound set" 2 "move speed penalty" 0.5 } } } WaveSpawn { Name 4a-b Where spawnbot_upper TotalCount 4 SpawnCount 2 WaitBetweenSpawns 20 WaitBeforeStarting 18 //20 TotalCurrency 180 MaxActive 4 WaitForAllSpawned 4a-a Squad { TFBot { Template T_TFBot_Giant_Demo_Burst //T_TFBot_Giant_Demoman //ClassIcon demo_spammer_package Item "The Broadband Bonnet" Item "The Juggernaut Jacket" Tag bot_giant } TFBot { Template T_TFBot_Giant_Medic_Regen Item "The Gentleman's Ushanka" Tag bot_giant } } } WaveSpawn { Name 4a-b Where spawnbot_left TotalCount 20 SpawnCount 4 WaitBetweenSpawns 9 WaitBeforeStarting 15 TotalCurrency 25 MaxActive 6 //8 WaitForAllSpawned 4a-a TFBot { Template T_TFBot_Pyro_DF } } WaveSpawn { Name 4a-b Where spawnbot_left TotalCount 12 SpawnCount 2 WaitBetweenSpawns 10 //7 WaitBeforeStarting 15 TotalCurrency 20 MaxActive 6 WaitForAllSpawned 4a-a TFBot { Class Soldier Skill Normal } } WaveSpawn { Name 4b Where spawnbot_right TotalCount 3 SpawnCount 1 WaitBetweenSpawns 14 WaitBeforeStarting 3 //6 TotalCurrency 75 WaitForAllDead 4a-b TFBot { Template T_TFBot_Giant_Soldier_Spammer Item "Stout Shako" Tag bot_giant } } WaveSpawn { Name 4b Where spawnbot_right TotalCount 3 SpawnCount 1 WaitBetweenSpawns 14 WaitBeforeStarting 3 //6 TotalCurrency 75 WaitForAllDead 4a-b TFBot { Template T_TFBot_Giant_Demo_Burst Item "The Black Watch" Tag bot_giant } } WaveSpawn { Name 4b Where spawnbot_left Where spawnbot_right TotalCount 14 SpawnCount 2 WaitBetweenSpawns 7 WaitBeforeStarting 8 TotalCurrency 25 MaxActive 6 WaitForAllDead 4a-b TFBot { Class Demoman //formerly easy scouts Skill Normal } } WaveSpawn //dummy { WaitForAllDead 4a-b WaitBeforeStarting 5 FirstSpawnOutput { Target gamerules Action RunScriptCode Param " EntFire(`relay_open_ambush`, `Trigger`) //SendGlobalGameEvent(`show_annotation`, { // text = ` Ambush robots incoming!` // lifetime = 8 // worldPosX = -1273 // worldPosY = 3125 // worldPosZ = 146 // id = -1 // play_sound = `misc/null.wav` // show_distance = false // show_effect = false // visibilityBitfield = 0 //}) " } } WaveSpawn { Name 4b Where spawnbot_ambush_lower TotalCount 18 //24 SpawnCount 6 WaitBetweenSpawns 17 //16 WaitBeforeStarting 10 //15 TotalCurrency 75 MaxActive 12 WaitForAllDead 4a-b Squad { TFBot { Class Heavy Skill Normal Attributes IgnoreFlag Action Mobber MaxVisionRange 1000 Name "Ambush Heavy" Item "The Conspiracy Cap" } TFBot { Template T_TFBot_Medic_QuickUber Name "Ambush Quick Uber Medic" Item "The Conspiracy Cap" Attributes IgnoreFlag } } } //DUMMY WAVESPAWN HELL WaveSpawn { Name donotspawnhimyet WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 0 WaitForAllDead 4b FirstSpawnOutput { Target gamerules Action RunScriptCode Param " EntFire(`wave_init_relay`, `Trigger`) EntFire(`wave_prepare_relay_upper`, `Trigger`, null, 0.8) EntFire(`intel_35`, `ForceReset`, null, 1) EntFire(`intel_infinite`, `ForceReset`, null, 1) SendGlobalGameEvent(`show_annotation`, { text = `Break time! The upgrade station has reopened!` lifetime = 19 worldPosX = -521 worldPosY = 1930 worldPosZ = 525 id = -1 play_sound = `misc/null.wav` show_distance = false show_effect = false visibilityBitfield = 0 }) " } } WaveSpawn { Name donotspawnhimyet WaitBetweenSpawns 0 WaitBeforeStarting 20 TotalCurrency 0 WaitForAllDead 4b FirstSpawnOutput { Target gamerules Action RunScriptCode Param " SendGlobalGameEvent(`show_annotation`, { text = `Bots will now take the upper path!` lifetime = 9 worldPosX = 870 worldPosY = -1686 worldPosZ = 793 id = -1 play_sound = `misc/null.wav` show_distance = false show_effect = false visibilityBitfield = 0 }) " } } WaveSpawn { WaitBeforeStarting 20 FirstSpawnWarningSound "vo\announcer_begins_10sec.mp3" WaitForAllDead 4b } WaveSpawn { WaitBeforeStarting 25 FirstSpawnWarningSound "vo\announcer_begins_5sec.mp3" WaitForAllDead 4b } WaveSpawn { WaitBeforeStarting 26 FirstSpawnWarningSound "vo\announcer_begins_4sec.mp3" WaitForAllDead 4b } WaveSpawn { WaitBeforeStarting 27 FirstSpawnWarningSound "vo\announcer_begins_3sec.mp3" WaitForAllDead 4b } WaveSpawn { WaitBeforeStarting 28 FirstSpawnWarningSound "vo\announcer_begins_2sec.mp3" WaitForAllDead 4b } WaveSpawn { WaitBeforeStarting 29 FirstSpawnWarningSound "vo\announcer_begins_1sec.mp3" WaitForAllDead 4b } WaveSpawn { Name heiscoming WaitBetweenSpawns 0 WaitBeforeStarting 30 TotalCurrency 0 WaitForAllDead 4b FirstSpawnOutput { Target wave_start_boss_relay Action Trigger } } //dummy wavespawn wall done :) WaveSpawn { Name 4c-BOSS-SUPPORTT Where spawnbot_main TotalCount 60 SpawnCount 2 WaitBetweenSpawns 9 WaitBeforeStarting 8 TotalCurrency 60 MaxActive 4 WaitForAllSpawned heiscoming Support 1 TFBot { Class Heavy Skill Normal //AimTrackingInterval 0.5 MaxVisionRange 1000 Tag filthy_support } } WaveSpawn { Name 4c-BOSS-SUPPORTT Where spawnbot_main TotalCount 65 SpawnCount 3 WaitBetweenSpawns 8 WaitBeforeStarting 3 TotalCurrency 65 MaxActive 6 WaitForAllSpawned heiscoming Support 1 TFBot { Template T_TFBot_Demo_Burst Tag filthy_support } } WaveSpawn { Name 4c-BOSS-WOOO Where spawnbot_chief_move TotalCount 1 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 9 TotalCurrency 500 MaxActive 666 WaitForAllSpawned heiscoming FirstSpawnWarningSound "mvm\giant_heavy\giant_heavy_entrance.wav" //obligatory sound clip TFBot { Template T_TFBoss_Heavy_Big_Fella SpawnTemplate heavy_boss_logic } } } }