#base robot_giant.pop #base robot_standard.pop #base robot_gatebot.pop //Reverse MvM //Groundwork By Hell-met http://steamcommunity.com/id/hell-met/ //Made by Braindawg http://steamcommunity.com/id/HahaMoreLikeBraindead/ //Advanced Skill //Requires sigsegv extensions WaveSchedule { StartingCurrency 600 CanBotsAttackWhileInSpawnRoom Yes RespawnWaveTimeBlue 3 FixedRespawnWaveTimeBlue 1 //Fixes NoMvMDeathTune 1 SniperAllowHeadshots 1 SentryBusterFriendlyFire 0 ImprovedAirblast 1 NoSapUnownedBuildings 1 SendBotsToSpectatorImmediately 1 //Global GrapplingHook 1 RobotLimit 27 ForceHoliday 2 NoHolidayPickups 1 // BotPushaway 1 MaxTotalPlayers 6 DisplayRobotDeathNotice 0 BotsRandomCrit 1 NoRomevisionCosmetics 1 StandableHeads 1 CustomUpgradesFile "mvm_upgrades_brain_reverse.txt" //Players are robots ReverseWinConditions 1 BluHumanFlagCapture 1 BluHumanFlagPickup 1 AllowJoinTeamBlueMax 6 AllowJoinTeamBlue 1 HumansMustJoinTeam blue BluPlayersAreRobots 1 SetCreditTeam 3 BluHumanInfiniteAmmo 0 //Enable infinite ammo for blu humans (default: 1) FlagCarrierMovementPenalty 1 // BotTeleportUberDuration 1 // BluHumanTeleportOnSpawn 1 // BluHumanBotTeleporter 0 //Disable Sounds DisableSound "music.mvm_end_last_wave" DisableSound "music.mvm_end_mid_wave" DisableSound "music.mvm_end_tank_wave" DisableSound "music.mvm_end_wave" DisableSound "music.mvm_lost_wave" DisableSound "music.mvm_start_last_wave" DisableSound "music.mvm_start_mid_wave" DisableSound "music.mvm_start_tank_wave" DisableSound "music.mvm_start_wave" // DisableSound "Announcer.MVM_Get_To_Upgrade" DisableSound "Announcer.MVM_Spy_Alert" DisableSound "Announcer.mvm_spybot_death" DisableSound "Announcer.mvm_spybot_death_all" DisableSound "Announcer.MVM_First_Wave_Start" DisableSound "Announcer.MVM_Wave_Start" DisableSound "Announcer.MVM_Wave_End" DisableSound "Announcer.MVM_Wave_Lose" DisableSound "Announcer.MVM_Final_Wave_Start" DisableSound "Announcer.MVM_Final_Wave_End" DisableSound "Announcer.MVM_Robots_Planted" DisableSound "Announcer.MVM_All_Dead" DisableSound "Announcer.MVM_Bomb_Alert_Entered" DisableSound "Announcer.MVM_Bomb_Alert_Near_Hatch" DisableSound "Announcer.MVM_Bomb_Alert_Deploying" DisableSound "Announcer.MVM_Sentry_Buster_Alert" DisableSound "Announcer.MVM_Sentry_Buster_Alert_Another" DisableSound "Announcer.MVM_General_Wave_Start" DisableSound "Announcer.MVM_Game_Over_Loss" DisableSound "Announcer.MVM_Tank_Planted" DisableSound "Announcer.MVM_Tank_Alert_Spawn" DisableSound "Announcer.MVM_Tank_Alert_Another" DisableSound "Announcer.MVM_Tank_Alert_Multiple" DisableSound "Announcer.MVM_Tank_Alert_Halfway" DisableSound "Announcer.MVM_Tank_Alert_Halfway_Multiple" DisableSound "Announcer.MVM_Tank_Alert_Near_Hatch" DisableSound "Announcer.MVM_Tank_Alert_Deploying" //Precache PrecacheModel "models\props_mvm\mvm_upgrade_blu_center.mdl" PrecacheModel "models\props_mvm\mvm_upgrade_blu_tools.mdl" PrecacheModel "models\bots\soldier_boss\bot_soldier_gray_boss.mdl" PrecacheModel "models\bots\heavy_boss\bot_heavy_gray_boss.mdl" PrecacheModel "models\bots\heavy\bot_heavy_gray.mdl" PrecacheModel "models\bots\soldier\bot_soldier_gray.mdl" PrecacheModel "models\bots\demo\bot_demo_gray.mdl" PrecacheModel "models\bots\scout\bot_scout_gray.mdl" PrecacheModel "models\bots\pyro\bot_pyro_gray.mdl" PrecacheSound "combine_bank_alarm.mp3" PrecacheSound "weapons\flaregun\fire.wav" OverrideSounds { "MVM.GiantCommonExplodes" "ambient\explosions\explode_3.wav" "MVM.BombWarning" "combine_bank_alarm.mp3" "Announcer.MVM_Spy_Alert" "empty.wav" "Announcer.mvm_spybot_death" "empty.wav" "Announcer.mvm_spybot_death_all" "empty.wav" "Announcer.MVM_All_Dead" "empty.wav" } ClassLimit { Heavyweapons 1 Medic 1 Engineer 1 } PlayerAttributes { "maxammo primary increased" 2 // "maxammo secondary increased" 3 // "maxammo grenades1 increased" 3 "boots falling stomp" 1 "penetration damage penalty" 0.75 "health from healers increased" 3 Scout { "max health additive bonus" 50 } Pyro { "max health additive bonus" 50 } Heavyweapons { "max health additive penalty" -75 } Engineer { "max health additive bonus" 125 "upgrade rate decrease" 2 "mult dispenser rate" 0.5 "mult teleporter recharge rate" 0.01 "mod teleporter cost" 0.001 "engineer sentry build rate multiplier" 2 "engineer teleporter build rate multiplier" 3 "building cost reduction" 0.5 "maxammo metal increased" 2 } Medic { "medic machinery beam" 4 "heal rate penalty" 0.33 } Spy { "cannot pick up intelligence" 1 } } ItemAttributes //no loose cannon push { ItemName "The Loose Cannon" "override projectile type" 3 "damage penalty" 0.8 "Blast radius increased" 1.5 "custom projectile model" "models\weapons\w_models\w_cannonball.mdl" } // ItemAttributes { //disallow bonk from picking up intel // ItemName "Bonk! Atomic Punch" // "cannot pick up intelligence" 1 // } ItemAttributes { ItemName "Tomislav" "minigun spinup time decreased" 0.25 "mod minigun can holster while spinning" 1 "max health additive penalty" -75 "aiming movespeed decreased" 2 } ItemAttributes { //holster while spinning ClassName "TF_WEAPON_MINIGUN" "mod minigun can holster while spinning" 1 } ItemAttributes { //ubersaw gets fucked ItemName "The Ubersaw" "max health additive penalty" -25 } ItemAttributes { //vita buff ItemName "The Vita-Saw" // "ubercharge_preserved_on_spawn_max" 0.99 "max health additive penalty" 25 } ItemAttributes { //amputator change ItemName "The Amputator" "provide on active" 1 "ubercharge rate bonus" 200 // "gesture speed increase" 0.5 "cosmetic taunt sound" "BaseCombatWeapon.WeaponMaterialize" } ItemAttributes { ItemName "The Solemn Vow" "provide on active" 1 "add give health to teammate on hit" 300 "mult smack time" 0 "health drain" -10 } ItemAttributes { //needle rework ItemName "tf_weapon_syringegun_medic" "ubercharge ammo" 1 "mad milk syringes" 1 } ItemAttributes {//rip beggars ItemName "The Beggar's Bazooka" "reload time increased hidden" 2 } ItemAttributes {//rip beggars ItemName "The Mantreads" "max health additive bonus" 75 "mod weapon blocks healing" 1 } ItemAttributes { //no dispenser/sentry ItemName "The Short Circuit" "maxhealth additive bonus" -75 "building cost reduction" 99 } ItemAttributes { //passive disposable ItemName "The Gunslinger" "engy disposable sentries" 1 "mvm sentry ammo" 99 "engineer sentry build rate multiplier" 2 } ItemAttributes { //pistol buff ClassName "TF_WEAPON_PISTOL" "critboost on kill" 3 "max health additive bonus" 25 } ItemAttributes { ClassName "tf_weapon_handgun_scout_secondary" "critboost on kill" 3 "max health additive bonus" 25 } ItemAttributes { //shotgun buff ClassName "TF_WEAPON_SHOTGUN" "minicritboost on kill" 6 "max health additive bonus" 50 } ItemAttributes { ClassName "tf_weapon_shotgun_multiclass" "minicritboost on kill" 6 "max health additive bonus" 50 } ItemAttributes { //DR fix ItemName "The Dead Ringer" "cloak_consume_on_feign_death_activate" 2 } ItemAttributes { //DR fix ClassName "tf_weapon_invis" "max health additive bonus" 50 } ItemAttributes { //YER no work ClassName "tf_weapon_knife" "mod_disguise_consumes_cloak" 0 "mult cloak meter consume rate" 1 } // ItemAttributes // { //sandvich nerfs // ItemName "The Sandvich" // "item_meter_charge_rate" 180 // "item_meter_charge_type" 3 // "item_meter_damage_for_full_charge" 20000 // "single wep deploy time increased" 5 // } // ItemAttributes // { // ItemName "The Robo-Sandvich" // "item_meter_charge_rate" 180 // "item_meter_charge_type" 3 // "item_meter_damage_for_full_charge" 20000 // "single wep deploy time increased" 5 // } // ItemAttributes // { // ItemName "Festive Sandvich" // "item_meter_charge_rate" 180 // "item_meter_charge_type" 3 // "item_meter_damage_for_full_charge" 20000 // "single wep deploy time increased" 5 // } // ItemAttributes // { // ItemName "The Buffalo Steak Sandvich" // "item_meter_charge_rate" 180 // "item_meter_charge_type" 3 // "single wep deploy time increased" 5 // "item_meter_damage_for_full_charge" 18000 // } // ItemAttributes // { // ItemName "The Second Banana" // "item_meter_charge_rate" 180 // "item_meter_charge_type" 3 // "item_meter_damage_for_full_charge" 12000 // "single wep deploy time increased" 3 // } // ItemAttributes // { // ItemName "The Dalokohs Bar" // "item_meter_charge_rate" 180 // "item_meter_charge_type" 3 // "item_meter_damage_for_full_charge" 12000 // "single wep deploy time increased" 3 // } // ItemAttributes // { // ItemName "Fishcake" // "item_meter_charge_rate" 180 // "item_meter_charge_type" 3 // "item_meter_damage_for_full_charge" 12000 // "single wep deploy time increased" 3 // } ItemAttributes { ClassName "The Disciplinary Action" //whipping blu players is fucked "melee range multiplier" 3 "melee bounds multiplier" 9 } ItemAttributes { //nerfed heal rate, no overheal, extremely fast free uber build rate ItemName "The Vaccinator" // "overheal fill rate reduced" 0 "overheal expert" -100 "ubercharge overheal rate penalty" 0 "uber duration bonus" 6 "heal rate penalty" 0.5 "ubercharge rate bonus" 2 } ItemAttributes { //eoi rework ItemName "The Gas Passer" "maxhealth additive penalty" -50 "explode_on_ignite" 1 "item_meter_charge_rate" 360 "item_meter_damage_for_full_charge" 6500 } ItemAttributes { //big slappum ClassName "tf_weapon_slap" "speed_boost_on_hit_enemy" 5 } ItemAttributes { //widow rework ItemName "The Widowmaker" "damage penalty" .66 "damage bonus bullet vs sentry target" 1.5 } ItemAttributes { ItemName "The Pomson 6000" "override projectile type" 1 "sniper fires tracer HIDDEN" 1 "always crit" 1 "dmg bonus vs buildings" 10 "damage applies to sappers" 1 "set item tint rgb" 16777215 } ItemAttributes { //infinite caber ItemName "The Ullapool Caber" "regenerate stickbomb" 1 } ItemAttributes { //wrangler nerf ClassName "tf_weapon_laser_pointer" "build small sentries" 1 "upgrade rate decrease" 0.9 } PointTemplates { corelogic { NoFixup 1 game_round_win //win logic { "origin" "-1611.31 4748.55 169.35" "TeamNum" "2" "targetname" "bots_win_red" "switch_teams" "0" "force_map_reset" "1" "classname" "game_round_win" } NoFixup 1 logic_relay { "origin" "266.305756 514.122192 103.214890" "targetname" "redwin_relay" "OnTrigger" "bots_win_red,RoundWin,,0,-1" "OnTrigger" "pit_explosion_wav,PlaySound,,0,-1" "OnTrigger" "player,setforcedtauntcam,1,0.1,-1" } NoFixup 1 logic_auto { "targetname" "mainrelay" "OnMapSpawn" "spawnbot_mission_spy*,Disable,,0,-1" //disable bad spawns "OnMapSpawn" "spawnbot_mission_spy*,SetTeam,2,0.01,-1" "OnMapSpawn" "spawnbot_mission_spy*,Enable,,10,-1" // lets free up a few edicts "OnMapSpawn" "filter_blue_bombhat,Kill,,0,-1" "OnMapSpawn" "filter_redteam,Kill,,0,-1" //kill jump-pad and grinder filter "OnMapSpawn" "gate1_alarm,Kill,,0,-1" "OnMapSpawn" "bot_stun_reprogram,Kill,,0,-1" "OnMapSpawn" "trigger_push,Disable,,0,-1" //this map loves anti exploit trigger_pushes everywhere "OnMapSpawn" "_bigboyPantsfrontline_tankdoor_clock,Kill,,0,-1" //keeps closing doors // decoration/useless stuff "OnMapSpawn" "upgradedoor*,Kill,,0,-1" "OnMapSpawn" "Secretroom*,Kill,,0,-1" "OnMapSpawn" "music*,Kill,,0,-1" "OnMapSpawn" "forward_resupply_music*,Kill,,0,-1" "OnMapSpawn" "resupply_music,Kill,,0,-1" "OnMapSpawn" "grinder*,Kill,,0,-1" "OnMapSpawn" "roof_chimneys,Kill,,0,-1" //these 3 alone are ~100 edicts "OnMapSpawn" "move_rope,Kill,,0,-1" "OnMapSpawn" "keyframe_rope,Kill,,0,-1" "OnMapSpawn" "gateA*,Disable,,0,-1" "OnMapSpawn" "grayspawn*,Disable,,0,-1" "OnMapSpawn" "gate_left_capturezone,AddOutput,OnCapTeam2 gateAleft:Enable:0:-1" //gate spawns "OnMapSpawn" "gate_left_capturezone,AddOutput,OnCapTeam2 grayspawnleft:Enable:0:-1" //gray spawns "OnMapSpawn" "gate_right_capturezone,AddOutput,OnCapTeam2 gateAright:Enable:0:-1" "OnMapSpawn" "gate_right_capturezone,AddOutput,OnCapTeam2 grayspawnright:Enable:0:-1" "OnMapSpawn" "gate_left_capturezone,AddOutput,OnCapTeam2 enablespawningleft:Enable:0:-1" "OnMapSpawn" "gate_right_capturezone,AddOutput,OnCapTeam2 enablespawningright:Enable:0:-1" "OnMapSpawn" "gate_right_capturezone,AddOutput,OnCapTeam2 _leftrrrfrontline_tankdoor*,Open,,0,-1" "OnMapSpawn" "gate_left_capturezone,AddOutput,OnCapTeam2 closetankdoor:Trigger:0:-1" //close front tank gate on A cap "OnMapSpawn" "gate_left_capturezone,AddOutput,OnCapTeam2 LeftSide_Door_blockbots:Disable:0:-1" //remove bot blocker instantly "OnMapSpawn" "gate_right_capturezone,AddOutput,OnCapTeam2 RightSide_Door_blockbots:Disable:0:-1" "OnMapSpawn" "RightSide_Door,AddOutput,OnOpen endright:Trigger:0:-1" //don't laugh "OnMapSpawn" "RightSide_Door,AddOutput,OnOpen shopcollision:DisableCollision:0:-1" "OnMapSpawn" "gate_left_capturezone,AddOutput,OnCapTeam2 bombpath_arrows_left_left:Disable:5:-1" "OnMapSpawn" "gate_left_capturezone,AddOutput,OnCapTeam2 Free_robot_Sound:PlaySound:5:-1" "OnMapSpawn" "gate_left_capturezone,AddOutput,OnCapTeam2 intel_new:Enable:0:-1" "OnMapSpawn" "gate_right_capturezone,AddOutput,OnCapTeam2 intel_new2:Enable:0:-1" "OnMapSpawn" "intel_new*,AddOutput,OnPickupTeam2 point_populator_interface:UnpauseBotSpawning:0:-1" //continue not laughing "OnMapSpawn" "intel_new*,AddOutput,OnPickupTeam2 _leftrrrfrontline_tankdoor*:Open:0:-1" "OnMapSpawn" "intel_new*,AddOutput,OnPickupTeam2 intel_new*:SetTeam:0:0:-1" //fixes 2 compasses pointing to the same bomb "OnMapSpawn" "intel_new*,AddOutput,OnPickupTeam1 intel_new*:ForceReset:0:-1" //you shouldn't have that "OnMapSpawn" "wave_start_relay,AddOutput,OnTrigger barrier*:DisableCollision:0:-1" "OnMapSpawn" "wave_start_relay,AddOutput,OnTrigger barrier*:Disable:0:-1" "OnMapSpawn" "wave_start_relay,AddOutput,OnTrigger bluesidedoor*:Close:0:-1" } NoFixup 1 trigger_multiple { "targetname" "thirdperson" "StartDisabled" "1" "spawnflags" "3" "origin" "268 510 49" "maxs" "50 50 50" "mins" "-50 -50 -50" "filtername" "filter_blue" "OnStartTouch" "!activator,setforcedtauntcam,1,0.1,-1" "OnStartTouch" "!activator,SetHUDVisibility,0,0.1,-1" "OnStartTouch" "!activator,DisableDamageForces,,0,-1" //doesn't work? "OnEndTouch" "!activator,setforcedtauntcam,0,0,-1" "OnEndTouch" "!activator,SetHUDVisibility,1,0,-1" "OnEndTouch" "!activator,EnableDamageForces,,0,-1" } NoFixup 1 trigger_multiple { "targetname" "opengateright" "StartDisabled" "1" "spawnflags" "3" "origin" "-3995.271484 -2841.066162 36.031250" "maxs" "50 50 50" "mins" "-50 -50 -50" "filtername" "filter_blue" "OnStartTouch" "RightSide_Door,Open,1,0.1,-1" "OnEndTouch" "RightSide_Door,Open,1,0.1,-1" } NoFixup 1 trigger_multiple { "targetname" "opengateleft" "StartDisabled" "1" "spawnflags" "3" "origin" "-2966.143066 3305.273926 132.031250" "maxs" "50 50 50" "mins" "-50 -50 -50" "filtername" "filter_blue" "OnStartTouch" "LeftSide_Door,Open,1,0.1,-1" "OnEndTouchTouch" "LeftSide_Door,Open,1,0.1,-1" } NoFixup 1 logic_relay { "origin" "0 0 0" "targetname" "grayround" "OnTrigger" "periodicspawn,Disable,,0,-1" "OnTrigger" "destroygianthint,Show,,45,-1" "OnTrigger" "grayspawn*,Enable,,0,-1" "OnTrigger" "hatchcover,KillHierarchy,,0,-1" "OnTrigger" "intel*,Disable,,0,-1" "OnTrigger" "intel*,Kill,,0,-1" } NoFixup 1 logic_relay { "origin" "-1611.31 4748.55 169.35" "targetname" "forcecapleft" "OnTrigger" "gate_capturepoint,SetOwner,3,0.15,-1" "OnTrigger" "gate_capturepoint,SetOwner,3,0.1,-1" "OnTrigger" "gate_capturepoint,SetOwner,3,0,-1" "OnTrigger" "gate_prerequisite_door_left,Disable,,0.15,-1" "OnTrigger" "wave_start_relay,AddOutput,OnTrigger opengateleft:Enable:0.1:-1" "OnTrigger" "playerspawn,Disable,,0.1,-1" "OnTrigger" "spawnbot*,Disable,,0.2,-1" "OnTrigger" "barrierteleleft,Disable,,0,-1" "OnTrigger" "LeftSide_Door,Open,,0.15,-1" "OnTrigger" "point_populator_interface,ChangeBotAttributes,RevertGateBotsBehavior,0.15,-1" "OnTrigger" "point_populator_interface,ChangeDefaultEventAttributes,RevertGateBotsBehavior,0.15,-1" "OnTrigger" "movespawns_left,Trigger,,0,-1" "OnTrigger" "intel_new2,Enable,,0,-1" "OnTrigger" "intel*,ForceReset,,0.5,-1" "OnTrigger" "bombpath_arrows_left_left,Enable,,0,-1" "OnTrigger" "bombpath_arrows_left_left,Disable,,22,-1" "OnTrigger" "redside_engineer_pastpoint,Enable,,0,-1" "OnTrigger" "redside_engineer,Disable,,0,-1" "OnTrigger" "LeftSide_Door_blockbots,Disable,,5,-1" "OnTrigger" "wave_finished_relay,CancelPending,,0,-1" } NoFixup 1 logic_relay { "origin" "-1611.31 4748.55 169.35" "targetname" "forcecapright" "OnTrigger" "gate_capturepoint,SetOwner,3,0.15,-1" "OnTrigger" "gate_capturepoint,SetOwner,3,0.1,-1" "OnTrigger" "gate_capturepoint,SetOwner,3,0,-1" "OnTrigger" "gate_prerequisite_door_right,Disable,,0.15,-1" "OnTrigger" "wave_start_relay,AddOutput,OnTrigger opengateright:Enable:0.1:-1" "OnTrigger" "playerspawn,Disable,,0.1,-1" "OnTrigger" "spawnbot*,Disable,,0.2,-1" "OnTrigger" "barrierteleright,Disable,,0,-1" "OnTrigger" "RightSide_Door,Open,,0.15,-1" "OnTrigger" "point_populator_interface,ChangeBotAttributes,RevertGateBotsBehavior,0.15,-1" "OnTrigger" "point_populator_interface,ChangeDefaultEventAttributes,RevertGateBotsBehavior,0.15,-1" "OnTrigger" "movespawns_right,Trigger,,0,-1" "OnTrigger" "intel_new2,Enable,,0,-1" "OnTrigger" "intel*,ForceReset,,0.5,-1" "OnTrigger" "bombpath_arrows_right_right,Enable,,0,-1" "OnTrigger" "bombpath_arrows_right_right,Disable,,22,-1" "OnTrigger" "blueside_engineer_pastpoint,Enable,,0,-1" "OnTrigger" "blueside_engineer,Disable,,0,-1" "OnTrigger" "RightSide_Door_blockbots,Disable,,5,-1" "OnTrigger" "wave_finished_relay,CancelPending,,0,-1" } NoFixup 1 logic_relay { "origin" "-1611.31 4748.55 169.35" "targetname" "forcerandom1" "OnTrigger" "bot_bombpath_pickrandom,Trigger,,1.15,-1" "OnTrigger" "global_randomround,TurnOn,,0,-1" "OnTrigger" "global_leftround,TurnOff,,0,-1" "OnTrigger" "global_rightround,TurnOff,,0,-1" "OnTrigger" "bot_bombpath_resetall,Trigger,,1,-1" "OnTrigger" "checkweapons,Show,,0,-1" //annotations "OnTrigger" "checkweapons2,Show,,10,-1" "OnTrigger" "checkweapons3,Show,,20,-1" } NoFixup 1 logic_relay { "origin" "-1611.31 4748.55 169.35" "targetname" "forceright" "OnTrigger" "defendnavleft,Disable,,0,-1" "OnTrigger" "defendnavright,Enable,,0.01,-1" "OnTrigger" "leftspawn*,Disable,,0,-1" "OnTrigger" "rightspawn*,Enable,,0.01,-1" "OnTrigger" "blueside_teleport_out,AddOutput,target rightspawngatedefender,0,-1" "OnTrigger" "blueside_teleport_out,Enable,,1,-1" "OnTrigger" "bluesidedoor_*,Close,,1,-1" "OnTrigger" "bot_bombpath_rightSidePick,Trigger,,1,-1" } NoFixup 1 logic_relay { "origin" "-1611.31 4748.55 169.35" "targetname" "forceleft" "OnTrigger" "defendnavright,Disable,,0,-1" "OnTrigger" "defendnavleft,Enable,,0.01,-1" "OnTrigger" "rightspawn*,Disable,,0,-1" "OnTrigger" "leftspawn*,Enable,,0.01,-1" "OnTrigger" "blueside_teleport_out,AddOutput,target leftspawngatedefender,0,-1" "OnTrigger" "blueside_teleport_out,Enable,,1,-1" "OnTrigger" "bluesidedoor_*,Close,,1,-1" "OnTrigger" "bot_bombpath_leftSidePick,Trigger,,1,-1" } NoFixup 1 logic_relay { "origin" "-1611.31 4748.55 169.35" "targetname" "endright" "OnTrigger" "blueside_teleport_out,Disable,,0,-1" "OnTrigger" "bluedoors_trigger,Disable,,0,-1" "OnTrigger" "tf_point_nav_interface,RecomputeBlockers,,3,-1" "OnTrigger" "game_player*,Kill,,0,-1" "OnTrigger" "bluesidedoor_2,Open,,0.1,-1" "OnTrigger" "bluesidedoor_1,Open,,0.1,-1" "OnTrigger" "bluesidedoor_0,Open,,0.1,-1" "OnTrigger" "blueside_nobuild,Disable,,0,-1" } NoFixup 1 item_teamflag { "origin" "-3323.152344 3538.447998 72.031311" "trail_effect" "2" "TeamNum" "0" "targetname" "intel_new" "StartDisabled" "1" "ScoringType" "0" "ReturnTime" "35" "ReturnBetweenWaves" "1" "GameType" "3" "NeutralType" "2" "flag_trail" "flagtrail" "flag_paper" "player_intel_papertrail" "flag_model" "models/props_td/atom_bomb.mdl" "flag_icon" "../hud/objectives_flagpanel_carried" "angles" "0 270 0" } NoFixup 1 item_teamflag { "origin" " -3650.518311 -3368.843262 0" "trail_effect" "2" "TeamNum" "0" "targetname" "intel_new2" "StartDisabled" "1" "ScoringType" "0" "ReturnTime" "35" "ReturnBetweenWaves" "1" "GameType" "3" "NeutralType" "2" "flag_trail" "flagtrail" "flag_paper" "player_intel_papertrail" "flag_model" "models/props_td/atom_bomb.mdl" "flag_icon" "../hud/objectives_flagpanel_carried" "angles" "0 270 0" } NoFixup 1 prop_dynamic { "targetname" "hatchcover" "angles" "0 0 0" "DisableBoneFollowers" "1" "disablereceiveshadows" "1" "model" "models/props_hydro/water_machinery2.mdl" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "1024" "fadescale" "0.75" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "modelscale" "1.0" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "254" "rendercolor" "100 100 255" "renderfx" "9" "rendermode" "0" "SetBodyGroup" "0" "CollisionGroup" "1" "skin" "0" "solid" "0" "spawnflags" "0" "StartDisabled" "0" "origin" "268 510 49" } NoFixup 1 func_forcefield { "disablereceiveshadows" "0" "origin" "268 510 69" "renderamt" "255" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "hatchcovercollision" "parentname" "hatchcover" "mins" "-100 -120 -100" "maxs" "100 120 100" "StartDisabled" "0" } NoFixup 1 logic_relay { "targetname" "unblockhatch" "OnTrigger" "hatchcover*,Disable,,0,-1" "OnTrigger" "hatchcover*,DisableCollision,,0.01,-1" "OnTrigger" "hatchopen,Show,,0,-1" "OnTrigger" "thirdperson,Enable,,0,-1" } func_nav_prerequisite { "targetname" "hatchnav" "mins" "-8000 -8000 -8000" "maxs" "8000 8000 8000" "Entity" "hatchspawn" "filtername" "filter_hatchspawn" "origin" "268 510 129" "spawnflags" "1" "start_disabled" "0" "StartDisabled" "0" "Task" "2" "Value" "-1" } func_nav_prerequisite { "targetname" "defendnavright" "mins" "-2000 -2000 -2000" "maxs" "2000 2000 2000" "Entity" "rightspawngatedefender" "filtername" "filter_defendingr" "origin" "-3918.257568 2068.090820 112.171120" "spawnflags" "1" "start_disabled" "1" "StartDisabled" "1" "Task" "2" "Value" "-1" } func_nav_prerequisite { "targetname" "defendnavleft" "mins" "-2000 -2000 -2000" "maxs" "2000 2000 2000" "Entity" "leftspawngatedefender" "filtername" "filter_defendingl" "origin" "-3851 -1252 228" "spawnflags" "1" "start_disabled" "1" "StartDisabled" "1" "Task" "2" "Value" "-1" } filter_tf_bot_has_tag { "Negated" "0" "require_all_tags" "1" "tags" "bot_hatchspawn" "targetname" "filter_hatchspawn" } filter_tf_bot_has_tag { "Negated" "0" "require_all_tags" "1" "tags" "bot_periodic" "targetname" "filter_periodic" } filter_tf_bot_has_tag { "Negated" "0" "require_all_tags" "1" "tags" "bot_defender_r" "targetname" "filter_defendingr" } filter_tf_bot_has_tag { "Negated" "0" "require_all_tags" "1" "tags" "bot_defender_l" "targetname" "filter_defendingl" } NoFixup 1 logic_relay { "origin" "-1611.31 4748.55 169.35" "targetname" "secondbarrier" "OnTrigger" "tempbarrierB*,Disable,,0,-1" "OnTrigger" "tankcapdoor_opener,Open,,0,-1" "OnTrigger" "left_tankdoor,Open,,0,-1" "OnTrigger" "right_tankdoor,Open,,0,-1" } NoFixup 1 logic_relay { "origin" "-1611.31 4748.55 169.35" "targetname" "opentankdoors" "OnTrigger" "frontline_tankdoor_clock,Kill,,0,-1" "OnTrigger" "opentankdoor_frontline*,Trigger,,0.01,-1" // "OnTrigger" "left_tankdoor,Open,,0,-1" // "OnTrigger" "right_tankdoor,Open,,0,-1" "OnTrigger" "opentankdoor_frontline*,Trigger,,0.01,-1" // "OnTrigger" "_leftrrrfrontline_tankdoor*,Open,,120,-1" "OnTrigger" "tempbarrierA*,Disable,,0.01,-1" "OnTrigger" "frontspawn,Disable,,10,-1" } NoFixup 1 logic_relay { "origin" "-1611.31 4748.55 169.35" "targetname" "closerightdoors" "OnTrigger" "game_playerkill,Enable,,0.1,-1" "OnTrigger" "bluesidedoor_*,Close,,0.1,-1" } NoFixup 1 logic_relay { "origin" "0 0 0" "targetname" "openrightdoors" "OnTrigger" "bluesidedoor_*,Open,,1,-1" "OnTrigger" "game_player*,Kill,,0,-1" "OnTrigger" "_leftrrrfrontline_tankdoor,Open,,1,-1" "OnTrigger" "tankcapdoor_opener,Open,,0.1,-1" } logic_relay { "origin" "-1611.31 4748.55 169.35" "targetname" "closetankdoors" "OnTrigger" "frontline_tankdoor,Close,,0,-1" "OnTrigger" "gatealarm_fartted,StopSound,,0,-1" "OnTrigger" "Tankdoor_prop_frontline,SetAnimation,1,0,-1" "OnTrigger" "Tankdoor_prop_frontline,Skin,1,0,-1" "OnTrigger" "tempbarrierA*,Enable,,0.01,-1" } trigger_teleport { "targetname" "barrierteleright" "spawnflags" "1" "target" "spawnbot_front_left" "origin" "-3632.000000 -3405.209961 66.618073" "mins" "-100 -100 -100" "maxs" "100 100 100" } trigger_teleport { "targetname" "barrierteleleft" "spawnflags" "1" "target" "spawnbot_front_left" "origin" "-3431.968750 3529.504639 70" "mins" "-200 -200 -200" "maxs" "200 200 200" } trigger_teleport { "targetname" "barriertele1" "spawnflags" "1" "target" "spawnbot_front_left" "origin" "-8800 336 70" "mins" "-200 -200 -200" "maxs" "200 200 200" } } tempbarriers { NoFixup 1 func_forcefield { "disablereceiveshadows" "0" "origin" "0 0 0" "renderamt" "255" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "tempbarrierA1" "parentname" "tempbarrierA" "mins" "-300 -100 -3000" "maxs" "300 100 3000" "StartDisabled" "0" } NoFixup 1 prop_dynamic { "targetname" "tempbarrierA" "angles" "0 0 0" "DisableBoneFollowers" "1" "disablereceiveshadows" "1" "model" "models/props_vehicles/train_flatcar_container.mdl" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "modelscale" "1.5" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "0" "renderfx" "16" "rendermode" "0" "SetBodyGroup" "0" "skin" "1" "CollisionGroup" "1" "solid" "0" "spawnflags" "0" "StartDisabled" "0" "origin" "0 0 0" } } killpowerups { NoFixup 1 //stay the fuck closed trigger_brush { "origin" "-596 -232 34" "targetname" "game_playerdie" "StartDisabled" "0" "OnUse" "item_powerup_rune,Kill,,0,-1" "OnUse" "_leftrrrfrontline_tankdoor*,Open,,0,-1" } } // killprops // { // NoFixup 1 //kill random props around the map // trigger_multiple // { // "origin" "0 0 0" // "targetname" "killprop" // "OnStartTouch" "!activator,Kill,,0,-1" // } // } doorcloseomatic { NoFixup 1 //stay the fuck closed trigger_brush { "origin" "-596 -232 34" "targetname" "game_playerkill" "StartDisabled" "0" "OnUse" "bluesidedoor_*,Close,0,-1" } } doorcloseomatic2 { NoFixup 1 trigger_brush { "origin" "-596 -232 34" "targetname" "game_playerdie" "StartDisabled" "0" "OnUse" "bluesidedoor_3,Close,0,-1" "OnUse" "bluesidedoor_4,Close,0,-1" "OnUse" "bluesidedoor_5,Close,0,-1" } } tempbarriers2 { NoFixup 1 func_forcefield { "disablereceiveshadows" "0" "origin" "0 0 0" "renderamt" "255" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "tempbarrierB1" "parentname" "tempbarrierB" "mins" "-300 -100 -300" "maxs" "300 100 300" "StartDisabled" "0" } NoFixup 1 prop_dynamic { "targetname" "tempbarrierB" "angles" "0 0 0" "DisableBoneFollowers" "1" "disablereceiveshadows" "1" "model" "models/props_vehicles/train_flatcar_container.mdl" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "modelscale" "1.5" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "0" "renderfx" "16" "rendermode" "0" "SetBodyGroup" "0" "skin" "1" "CollisionGroup" "1" "solid" "0" "spawnflags" "0" "StartDisabled" "0" "origin" "0 0 0" } } station { NoFixup 1 prop_dynamic //upgrade station { "targetname" "upgradestation" "angles" "0 0 0" "DisableBoneFollowers" "0" "disablereceiveshadows" "0" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "model" "models\props_mvm\mvm_upgrade_blu_center.mdl" //"model" "models\props_mvm\mvm_upgrade_center.mdl" "modelscale" "1" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "255" "renderfx" "0" "rendermode" "0" "SetBodyGroup" "0" "skin" "0" "solid" "0" "spawnflags" "0" "origin" "0 0 0" } NoFixup 1 prop_dynamic { "targetname" "upgradestation1" "angles" "0 0 0" "DisableBoneFollowers" "0" "disablereceiveshadows" "0" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "model" "models\props_mvm\mvm_upgrade_blu_tools.mdl" //"model" "models\props_mvm\mvm_upgrade_tools.mdl" "modelscale" "1" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "255" "renderfx" "0" "rendermode" "0" "SetBodyGroup" "0" "skin" "0" "solid" "0" "spawnflags" "0" "origin" "0 0 0" } func_upgradestation { "mins" "-100 -100 0" "maxs" "90 60 100" "parentname" "upgradestation" } NoFixup 1 prop_dynamic { "targetname" "idiot" "parentname" "upgradestation" "angles" "0 0 0" "DisableBoneFollowers" "1" "disablereceiveshadows" "0" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "model" "models/bots/bot_worker/bot_worker_a.mdl" "modelscale" "1" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "DefaultAnim" "idle" "renderamt" "255" "renderfx" "0" "rendermode" "0" "SetBodyGroup" "2" "skin" "1" "solid" "0" "spawnflags" "0" "origin" "-65 50 0" } NoFixup 1 prop_dynamic { "targetname" "shopcollision" "angles" "0 -90 0" "DisableBoneFollowers" "1" "disablereceiveshadows" "1" "model" "models/props_vehicles/train_flatcar_container.mdl" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "modelscale" "1" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "0" "renderfx" "0" "rendermode" "10" "SetBodyGroup" "0" "skin" "0" "CollisionGroup" "5" "solid" "6" "spawnflags" "0" "StartDisabled" "0" "origin" "0 0 0" } } ramps { NoFixup 1 prop_dynamic //carrier tank ramp { "targetname" "ramp" "classname" "prop_dynamic" "angles" "0 0 0" "DisableBoneFollowers" "0" "disablereceiveshadows" "0" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" // "fademindist" "0.0001" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "model" "models/props_2fort/sniper_fence01.mdl" "modelscale" "1" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "255" "renderfx" "0" "rendermode" "10" "SetBodyGroup" "0" "skin" "0" "solid" "6" "spawnflags" "0" "origin" "0 0 0" } } barrier { NoFixup 1 prop_dynamic { "targetname" "barrierbuilding" "classname" "prop_dynamic" "angles" "0 0 0" "DisableBoneFollowers" "0" "disablereceiveshadows" "0" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" // "fademindist" "-1" "fademindist" "0.0001" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "model" "models\props_buildings\building_002a.mdl" "modelscale" "1" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "255" "renderfx" "1" "rendermode" "0" "SetBodyGroup" "0" "skin" "0" "solid" "6" "spawnflags" "0" "origin" "0 0 0" } } decoration2 { NoFixup 1 prop_dynamic { "targetname" "rocc" "classname" "prop_dynamic" "angles" "0 0 0" "DisableBoneFollowers" "0" "disablereceiveshadows" "0" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" // "fademindist" "0.0001" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "model" "models\bots\boss_bot\boss_tank_part1_destruction.mdl" "modelscale" "1" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "255" "renderfx" "0" "rendermode" "0" "SetBodyGroup" "0" "skin" "0" "solid" "6" "spawnflags" "0" "origin" "0 0 0" } } decoration2 { NoFixup 1 prop_dynamic { "targetname" "rocc" "classname" "prop_dynamic" "angles" "0 0 0" "DisableBoneFollowers" "0" "disablereceiveshadows" "0" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" // "fademindist" "0.0001" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "model" "models\thundermountain_fx\thundermountain_bigboom1.mdl" "modelscale" "1" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "1" "renderamt" "255" "renderfx" "0" "rendermode" "0" "SetBodyGroup" "0" "skin" "0" "solid" "6" "spawnflags" "0" "origin" "0 0 0" } } decoration { NoFixup 1 prop_dynamic { "targetname" "rocc" "classname" "prop_dynamic" "angles" "0 0 0" "DisableBoneFollowers" "0" "disablereceiveshadows" "0" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" // "fademindist" "0.0001" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "model" "models\bots\tw2\boss_bot\boss_tank_part1_destruction.mdl" "modelscale" "1" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "255" "renderfx" "0" "rendermode" "0" "SetBodyGroup" "0" "skin" "0" "solid" "6" "spawnflags" "0" "origin" "0 0 0" } } decoration3 { NoFixup 1 prop_dynamic { "targetname" "rocc" "classname" "prop_dynamic" "angles" "0 0 0" "DisableBoneFollowers" "0" "disablereceiveshadows" "0" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" // "fademindist" "0.0001" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "model" "models/props_mining/rock001.mdl" "modelscale" "1.5" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "255" "renderfx" "0" "rendermode" "0" "SetBodyGroup" "0" "skin" "2" "solid" "6" "spawnflags" "0" "origin" "0 0 0" } } barrierfence { NoFixup 1 prop_dynamic { "targetname" "barrier1" "classname" "prop_dynamic" "angles" "0 0 0" "DisableBoneFollowers" "0" "disablereceiveshadows" "0" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "model" "models/props_2fort/sniper_fence01.mdl" "modelscale" "1" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "255" "renderfx" "0" "rendermode" "0" "SetBodyGroup" "0" "skin" "0" "solid" "6" "spawnflags" "0" "origin" "0 0 0" } NoFixup 1 prop_dynamic { "targetname" "barrier2" "classname" "prop_dynamic" "angles" "0 0 0" "DisableBoneFollowers" "0" "disablereceiveshadows" "0" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "model" "models/props_2fort/sniper_fence02.mdl" "modelscale" "1" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "1" "renderamt" "255" "renderfx" "0" "rendermode" "0" "SetBodyGroup" "0" "skin" "0" "solid" "6" "spawnflags" "0" "origin" "0 0 0" } } annotation { NoFixup 1 training_annotation { "targetname" "destroygianthint" "parentname" "spawnbot" "display_text" "Destroy them!" "lifetime" "10" "origin" "268 510 129" } NoFixup 1 training_annotation { "targetname" "checkweapons" "parentname" "spawnbot" "display_text" "Many upgrades and weapon/player stats have been changed! inspect them here" "lifetime" "10" "origin" "-6448.904297 -2945.212402 21.101023" } NoFixup 1 training_annotation { "targetname" "checkweapons2" "parentname" "spawnbot" "display_text" "Classes with major changes: Scout, Pyro, Heavy, Engi, Medic" "lifetime" "10" "origin" "-6448.904297 -2945.212402 21.101023" } NoFixup 1 training_annotation { "targetname" "checkweapons3" "parentname" "spawnbot" "display_text" "Weapons with major changes: Pistols/Shotguns, Gas, Lunchboxes, Gunslinger, Syringes, Vacc, Amputator, Watches" "lifetime" "30" "origin" "-6448.904297 -2945.212402 21.101023" } NoFixup 1 training_annotation { "targetname" "grabpowerup" "parentname" "spawnbot" "display_text" "Grab a powerup" "lifetime" "20" "origin" "-5978.309082 -2951.993164 7.640057" } NoFixup 1 training_annotation { "targetname" "onegiantleft" "parentname" "spawnbot" "display_text" "Only 1 giant remains!" "lifetime" "10" "origin" "-3363.54 3584 83.618" } NoFixup 1 training_annotation { "targetname" "escorttogate" "parentname" "intel*" "display_text" "Deliver the bomb, capture the gate to spawn giants!" "lifetime" "10" "origin" "-6336 -2625.02 -32" } NoFixup 1 training_annotation { "targetname" "hatchopen" "display_text" "The bomb can now be deployed!" "lifetime" "10" "origin" "268 510 129" } NoFixup 1 training_annotation { "targetname" "finalsubwave" "display_text" "The hatch will unlock when all bots are dead" "lifetime" "10" "origin" "268 510 129" } NoFixup 1 training_annotation { "targetname" "runehint" "parentname" "engispawn2" "display_text" "More powerups have been scattered around the map..." "lifetime" "15" "origin" "145.989761 1743.196655 -117.968689" } } } SpawnTemplate "corelogic" SpawnTemplate "annotation" SpawnTemplate { Name "decoration" "origin" "-6195.264160 -3040.455078 -80" "angles" "0 0 20" } SpawnTemplate { Name "decoration2" "origin" "-6696.156250 -2891.279297 -80.912525" "angles" "0 75 20" } SpawnTemplate { Name "decoration3" "origin" "-5884.569824 -2025.027100 180.728424" "angles" "-10 10 0" } // SpawnTemplate // { // Name "killprops" // "origin" "1468 1442 170" // "angles" "0 0 0" // } // SpawnTemplate // { // Name "killprops" // "origin" "931 1021 212" // "angles" "0 0 0" // } // SpawnTemplate // { // Name "killprops" // "origin" "1056 614 212" // "angles" "0 0 0" // } // SpawnTemplate // { // Name "killprops" // "origin" "-5045 -181 -27" // "angles" "0 0 0" // } SpawnTemplate { Name "tempbarriers" "origin" "-4479 728 66" "angles" "0 -180 0" } SpawnTemplate { Name "tempbarriers" "origin" "-4912.112793 1155.970703 -67.750916" "angles" "0 -180 0" } SpawnTemplate { Name "tempbarriers2" "origin" "-1937.313232 1965.142700 146.342804" "angles" "0 90 0" } SpawnTemplate { Name "tempbarriers2" "origin" "-1848.276733 0 76.03131" "angles" "0 90 0" } SpawnTemplate { Name "barrier" "origin" "-6439.902344 -1635.442871 1062.62023" "angles" "0 0 0" } SpawnTemplate { Name "barrier" "origin" "-7837.259277 605.864136 723.93450" "angles" "0 0 0" } SpawnTemplate { Name "barrierfence" "origin" "-8326.719238 698.392883 19.731293" "angles" "0 -180 0" } SpawnTemplate { Name "barrierfence" "origin" "-8326.719238 528.392883 19.731293" "angles" "0 -180 0" } SpawnTemplate { Name "barrierfence" "origin" "-8326.719238 368.392883 19.731293" "angles" "0 -180 0" } SpawnTemplate { Name "barrierfence" "origin" "-6178.697754 -2315.712158 -50.515499" "angles" "0 -90 0" } SpawnTemplate { Name "barrierfence" "origin" "-6378.697754 -2315.712158 -50.515499" "angles" "0 -90 0" } SpawnTemplate { Name "barrierfence" "origin" "-6578.697754 -2315.712158 -50.515499" "angles" "0 -90 0" } SpawnTemplate { Name "barrierfence" "origin" "-6778.697754 -2315.712158 -50.515499" "angles" "0 -90 0" } SpawnTemplate { Name "ramps" "origin" "-9073.923828 170.062286 -80.031311" "angles" "-60 65 0" } SpawnTemplate { Name "ramps" "origin" "-9073.923828 -20.062286 25.031311" "angles" "-60 65 0" } SpawnTemplate { Name "ramps" "origin" "-9273.923828 90.062286 25.031311" "angles" "-60 65 0" } SpawnTemplate { Name "ramps" "origin" "-8873.923828 120.062286 -80.031311" "angles" "-60 65 0" } SpawnTemplate { Name "ramps" "origin" "-8943.923828 -70.062286 25.031311" "angles" "-60 65 0" } SpawnTemplate { Name "ramps" "origin" "-9273.923828 210.062286 -30.031311" "angles" "-60 65 0" } SpawnTemplate { Name "ramps" "origin" "-2729.177246 1452.867310 -24" "angles" "-60 -90 0" } SpawnTemplate { Name "ramps" "origin" "-928.058777 -781.182861 -229.184380" "angles" "0 45 0" } SpawnTemplate { Name "ramps" "origin" "-1708.865356 -578.729370 58.970871" "angles" "-60 45 0" } SpawnTemplate { Name "station" "origin" "-9394.505859 -494.312805 148.10629" "angles" "0 65 0" } SpawnTemplate { Name "station" "origin" "-6461.757813 -2983.834473 -66.347286" "angles" "0 65 0" } SpawnTemplate { Name "station" "origin" "-3431.968750 3529.504639 70" "angles" "0 0 0" } SpawnTemplate { Name "station" "origin" "-3644.874512 -3163.577881 -23" "angles" "0 -90 0" } OverrideSounds { "MVM.GiantCommonExplodes" "ambient\explosions\explode_3.wav" "MVM.BombWarning" "combine_bank_alarm.mp3" "Announcer.MVM_Spy_Alert" "empty.wav" "Announcer.mvm_spybot_death" "empty.wav" "Announcer.mvm_spybot_death_all" "empty.wav" "Announcer.MVM_All_Dead" "empty.wav" } ExtraSpawnPoint { Name "playerspawn" TeamNum 3 X -6325.393066 Y -2742.261719 Z 10 } ExtraSpawnPoint { Name "periodicspawn" TeamNum 3 X -6325.393066 Y -2742.261719 Z 10 } ExtraSpawnPoint { Name "frontspawn" TeamNum 2 X -4834.913086 Y 1678.248901 Z 88.291306 } ExtraSpawnPoint { Name "grayspawnleft" TeamNum 2 X 4 Y 1607 Z 132 } ExtraSpawnPoint { Name "grayspawnright" TeamNum 2 X 108 Y 142 Z 119 } ExtraSpawnPoint { Name "RedSpawn_giant" TeamNum 2 X 704.917053 Y 1277.114136 Z 302.936249 } ExtraSpawnPoint { Name "powerups" TeamNum 2 X -5677.164063 Y -968.139343 Z -20.968681 } ExtraSpawnPoint { Name "powerups" TeamNum 2 X -5978.314453 Y -2951.968750 Z 7 } ExtraSpawnPoint { Name "rightspawnpowerups" TeamNum 2 X -3652 Y -2265 Z 9 } ExtraSpawnPoint { Name "leftspawnpowerups" TeamNum 2 X -2768 Y 2299 Z 164 } ExtraSpawnPoint { Name "powerups" TeamNum 2 X -7003.484863 Y 1879.968750 Z 7 } ExtraSpawnPoint { Name "hatchspawn" TeamNum 2 X 268.512909 Y 510.05453 Z 129.031311 } ExtraSpawnPoint { Name "leftspawngatedefender" TeamNum 2 X -3803 Y 1680 Z 164 } ExtraSpawnPoint { Name "leftspawngatedefender1" TeamNum 2 X -3803 Y 1680 Z 264 } ExtraSpawnPoint { Name "leftspawngatedefender" TeamNum 2 X -4054 Y 2541 Z 201 } ExtraSpawnPoint { Name "rightspawngatedefender" TeamNum 2 X -3851 Y -1252 Z 228 } ExtraSpawnPoint { Name "rightspawngatedefender" TeamNum 2 X -4152 Y -2339 Z 4 } ExtraSpawnPoint { Name "rightspawngatedefender1" TeamNum 2 X -4152 Y -2339 Z 4 } ExtraSpawnPoint { Name "leftspawnknight" TeamNum 2 X -2263.056885 Y 1473 Z 196 } ExtraSpawnPoint { Name "rightspawnknight" TeamNum 2 X -2909 Y -747 Z 132 } ExtraSpawnPoint { Name "frontspawn" TeamNum 2 X -4358 Y 856 Z 161 } ExtraSpawnPoint { Name "gateAleft" TeamNum 2 X -1302.828613 Y 2040.787231 Z 196.0313 } ExtraSpawnPoint { Name "gateAleft" TeamNum 2 X -1563 Y 1300 Z 193 } ExtraSpawnPoint { Name "gateAleft" TeamNum 2 X -1547.546387 Y 804 Z 162.031311 } ExtraSpawnPoint { Name "gateAleft" TeamNum 2 X -894.220825 Y -101.046959 Z -77.49076 } ExtraSpawnPoint { Name "gateAright" TeamNum 2 X 27.393545 Y -832.000916 Z 116.138802 } // Mission { // Objective Spy // Where spawnbot // BeginAtWave 1 // RunForThisManyWaves 6 // CooldownTime 5 // DesiredCount 1 // TFBot { // Class Spy // Item "The Wanga Prick" // CharacterAttributes { // "disguise as dispenser on crouch" 1 // } // ItemAttributes { // ItemName "The Wanga Prick" // "damage all connected" 1 //third degree stat // "dmg penalty vs players" 0.1 //stabs don't instakill, deals between 50-80% of victims total HP // "subtract victim medigun charge on hit" 50 // "melee attack rate bonus" 4 //slow swings to avoid -50 uber butterknifes // "mult decloak rate" 0.01 //instant decloaks to compensate for nerfed knife // "voice pitch scale" 0 //no voice queues to compensate for nerfed knife // } // } // } RandomPlacement { Count 8 MinimumSeparation 500 NavAreaFilter SNIPER_SPOT SentryGun {Level 1} } PeriodicSpawn { //bomb runner Where periodicspawn When { MinInterval 5 MaxInterval 30 } TFBot { Template T_TFBot_Scout_Fish NoBombUpgrades 1 CharacterAttributes {"health drain" -10 "force distribute currency on death" 1 "move speed bonus" 2} } } PeriodicSpawn { Where spawnbot_mission_spy When { MinInterval 30 MaxInterval 45 } RandomChoice { TFBot { Class Engineer Name Engineer Skill Expert Health 275 ExtAttr BuildDispenserAsSentryGun ClassIcon red2_lite Item "The Jag" StripItemSlot 0 AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "engineer sentry build rate multiplier" 6 "engineer teleporter build rate multiplier" 6 "mult dispenser rate" 3 "engy dispenser radius increased" 6 "building cost reduction" 0.01 "metal regen" 999 "maxammo metal increased" 999 "voice pitch scale" 0 "cannot pick up intelligence" 1 "health drain" -2 "force distribute currency on death" 1 } } TFBot { Class Engineer Name Engineer Skill Expert Health 275 Attributes AlwaysFireWeapon ClassIcon red2_lite Item "The Jag" StripItemSlot 0 StripItemSlot 1 AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "engineer sentry build rate multiplier" 6 "mvm sentry ammo" 99 "building cost reduction" 0.01 "metal regen" 999 "maxammo metal increased" 999 "voice pitch scale" 0 "cannot pick up intelligence" 1 "health drain" -2 "force distribute currency on death" 1 } } TFBot { Class Engineer Name Engineer Skill Expert Health 275 Attributes AlwaysFireWeapon ClassIcon red2_lite Item "The Wrangler" Item "The Jag" StripItemSlot 0 StripItemSlot 1 AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "engineer sentry build rate multiplier" 6 "mvm sentry ammo" 99 "building cost reduction" 0.01 "metal regen" 999 "maxammo metal increased" 999 "voice pitch scale" 0 "cannot pick up intelligence" 1 "health drain" -2 "force distribute currency on death" 1 } } } } //-------------------------- //WAVE 1 //-------------------------- Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } Explanation { Line "{0600A6}_____________________________" Line "" Line "{D500FF}- GRAPPLING HOOKS: {green} ENABLED" Line "{D500FF}- Weapon Rebalances: {green} ENABLED" Line "{D500FF}- Custom Upgrades: {green} ENABLED" Line "{blue} This mission uses many class and weapon rebalances, inspect them using the upgrade menu" Line "{blue} https://pastebin.com/rFR4efVh" Line "{0600A6}_____________________________" } SpawnTemplate "doorcloseomatic" //-------------------------- //RED WAVESPAWNS //-------------------------- WaveSpawn { Name "rWave1a" Where frontspawn TotalCount 36 MaxActive 16 SpawnCount 4 TotalCurrency 105 RandomSpawn 1 TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ_Fast Skill Expert Action Mobber ClassIcon heavy_urgent AddCond { Name TF_COND_REPROGRAMMED } ItemAttributes { ItemName "Gloves of Running Urgently MvM" "health from packs decreased" 0.01 "force distribute currency on death" 1 "fists have radial buff" 1 } } } WaveSpawn { Name "rWave1a" Where frontspawn TotalCount 4 MaxActive 2 SpawnCount 2 TotalCurrency 100 RandomSpawn 1 TFBot { Class Pyro Name "Giant Pyro" Action Mobber UseBestWeapon 1 UseMeleeThreatPrioritization 1 ClassIcon pyro_giant Item "The Flare Gun" Skill Expert Health 3000 Attributes MiniBoss Attributes AlwaysFireWeapon AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.6 "airblast vulnerability multiplier" 0.6 "override footstep sound set" 6 "voice pitch scale" 0 "crit mod disabled" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 } ItemAttributes { ItemName "TF_WEAPON_FLAMETHROWER" "lunchbox adds minicrits" 2 } ItemAttributes { ItemName "The Flare Gun" "provide on active" 1 "move speed bonus" 1.5 } } } WaveSpawn { Name "rWave1defender" Where leftspawngatedefender Where rightspawngatedefender TotalCount 4 MaxActive 4 SpawnCount 2 TotalCurrency 50 RandomSpawn 1 WaitForAllDead "rWave1a" FirstSpawnOutput { Target opentankdoors Action Trigger } DoneOutput { Target _leftrrrfrontline_tankdoor Action Open } Squad { TFBot { Class Demoman Name "Giant Defender Demo" Skill Expert Tag bot_sentrybuster ClassIcon demo_sticky_red_daan Attributes MiniBoss Health 3250 // UseHumanAnimations 1 //unnecessary so long as he doesn't move ForceRomeVision 1 Action Sniper AddCond { Name TF_COND_REPROGRAMMED } Item "The Pain Train" Item "The Scottish Resistance" Item "Ali Baba's Wee Booties" Item "MvM GateBot Light Pyro" Attributes HoldFireUntilFullReload MaxVisionRange 1024 ItemAttributes { ItemName "The Scottish Resistance" "provide on active" 1 "deploy time decreased" 0.01 "projectile spread angle penalty" 5 // "sticky detonate mode" 0 "custom projectile model" "models\weapons\w_models\w_stickybomb_d.mdl" "stickybomb charge rate" 0.001dwd "max pipebombs increased" 36 "clip size bonus" 80 "Projectile range increased" 0.35 "faster reload rate" 0.001 "move speed bonus" 0.001 "no_jump" 1 } ChangeAttributes //Periodically changes bot attributes, defined in EventChangeAttributes { Delay 0 //Time before the first bot attribute change (Default: 10) Cooldown 3 //Time between each bot attribute change (Default: 10) Name "Attr1" // Name of the bot attributes listed in EventChangeAttributes } ChangeAttributes { Delay 1 Cooldown 2 Name "Attr2" } EventChangeAttributes //Do not attempt to put any of custom keys here. ExtAttr is the only exception { Attr1 { Skill Expert WeaponRestrictions SecondaryOnly Attributes AlwaysFireWeapon CharacterAttributes { "damage force reduction" 0.2 "airblast vulnerability multiplier" 0 "force distribute currency on death" 1 "voice pitch scale" 0 "health from packs decreased" 0.01 } } Attr2 { Skill Expert Attributes AlwaysFireWeapon CharacterAttributes { "damage force reduction" 0.5 "airblast vulnerability multiplier" 0 "override footstep sound set" 7 "force distribute currency on death" 1 "voice pitch scale" 0 "health from packs decreased" 0.01 } ItemAttributes { ItemName "The Pain Train" "override footstep sound set" 7 "crit vs non burning players" 1 } } } } TFBot { Template T_TFBot_Medic Skill Expert AddCond { Name TF_COND_REPROGRAMMED } WeaponRestrictions SecondaryOnly Attributes IgnoreEnemies Attributes IgnoreFlag CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 "mod weapon blocks healing" 1 } } } } WaveSpawn { Name "rWave1defender1" Where "leftspawnknight" Where "rightspawnknight" Where "rightspawngatedefender" Where "leftspawngatedefender" WaitBeforeStarting 1 TotalCount 19 MaxActive 8 SpawnCount 2 TotalCurrency 200 RandomSpawn 1 WaitForAllDead "rWave1a" TFBot { Class Demoman Skill Expert Name "Hybrid Knight" Attributes HoldFireUntilFullReload Attributes DisableDodge AimLeadProjectileSpeed 1216 Action Sniper ClassIcon demo_targe_nys MaxVisionRange 1500 AddCond { Name TF_COND_REPROGRAMMED } Item "The Iron Bomber" Item "The Tide Turner" Item "The Claidheamohmor" CharacterAttributes { "charge recharge rate increased" 2 "deploy time decreased" 0.1 "gesture speed increase" 2 "force distribute currency on death" 1 } ItemAttributes { ItemName "The Claidheamohmor" "critboost on kill" 6 } ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "no self blast dmg" 2 } } } WaveSpawn { Name "rWave1defender2" Where "leftspawngatedefender" Where "rightspawngatedefender" TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllDead "rWave1a" LastSpawnOutput { Target closerightdoors Action Trigger } TFBot { Class Demoman Skill Expert Name "Hybrid Knight" SpawnTemplate "doorcloseomatic2" Attributes HoldFireUntilFullReload AimLeadProjectileSpeed 1216 Action Sniper ClassIcon demo_targe_nys MaxVisionRange 1500 AddCond { Name TF_COND_REPROGRAMMED } Item "The Iron Bomber" Item "The Tide Turner" Item "The Claidheamohmor" CharacterAttributes { "charge recharge rate increased" 2 "deploy time decreased" 0.1 "gesture speed increase" 2 "force distribute currency on death" 1 } ItemAttributes { ItemName "The Claidheamohmor" "critboost on kill" 6 } ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "no self blast dmg" 2 } } } WaveSpawn { Name "rWave1b" Where gateAleft Where gateAright TotalCount 4 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 3 TotalCurrency 200 WaitForAllDead "rWave1b1" RandomSpawn 1 DoneOutput { Target secondbarrier Action Trigger } TFBot { Template T_TFBot_Giant_Scout_FAN Action Mobber AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes {"voice pitch scale" 0 "crit mod disabled" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 } } } WaveSpawn { Name "rWave1b1" Where gateAleft Where gateAright TotalCount 1 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 3 TotalCurrency 200 RandomSpawn 1 WaitForAllDead "rWave1defender" LastSpawnOutput { Target openrightdoors Action Trigger } TFBot { Template T_TFBot_Giant_Scout_FAN Action Mobber AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes {"voice pitch scale" 0 "crit mod disabled" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 } } } WaveSpawn { Name "rWave1b" Where gateAleft Where gateAright TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllSpawned "rWave1defender1" LastSpawnOutput { Target tankcapdoor_opener Action Open } TFBot { Template T_TFBot_Demoman_Knight Action Mobber Attributes AlwaysCrit AddCond { Name TF_COND_REPROGRAMMED } ItemAttributes { ItemName "The Chargin' Targe" "attack not cancel charge" 1 } CharacterAttributes { "crit mod disabled" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 } } } WaveSpawn { Name "rWave1b" Where gateAleft Where gateAright TotalCount 49 MaxActive 16 SpawnCount 4 WaitForAllSpawned "rWave1defender1" WaitBeforeStarting 1 TotalCurrency 50 RandomSpawn 1 TFBot { Template T_TFBot_Demoman_Knight Action Mobber Attributes AlwaysCrit AddCond { Name TF_COND_REPROGRAMMED } ItemAttributes { ItemName "The Chargin' Targe" "attack not cancel charge" 1 } CharacterAttributes { "crit mod disabled" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 } } } WaveSpawn { Name "rWave1c" Where RedSpawn TotalCount 999 MaxActive 6 SpawnCount 2 WaitForAllSpawned "rWave1b" WaitBetweenSpawns 2 RandomSpawn 1 RandomChoice { TFBot { Class Sniper Skill Expert ClassIcon sniper_smg_tind Action Mobber UseBestWeapon 1 Item "The Cleaner's Carbine" Item "The Fortified Compound" AimAt Body FireWeapon { Delay 0 Cooldown 10 IfSeeTarget 1 Duration 0.1 Type "Secondary" } AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "crit mod disabled" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 } } TFBot { Class Sniper Skill Expert ClassIcon sniper_smg_tind Action Mobber UseBestWeapon 1 Item "The Fortified Compound" Attributes DisableDodge AimAt Body AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "crit mod disabled" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 } } } } WaveSpawn { Name "rWave1c" Where RedSpawn_giant TotalCount 3 MaxActive 1 SpawnCount 1 WaitForAllSpawned "rWave1b" WaitBetweenSpawns 6 RandomSpawn 1 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Soldier Action Mobber AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "crit mod disabled" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 } } } WaveSpawn { Name "rWave1c" Where hatchspawn TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllDead "rWave1b" TotalCurrency 101 // LastSpawnOutput { // Target finalsubwave // Action Show // } DoneOutput { Target unblockhatch Action Trigger } Squad { TFBot { Class Pyro Name "Giant Pyro" Action Mobber UseBestWeapon 1 UseMeleeThreatPrioritization 1 ForceRomeVision 1 Item "The Backburner" ClassIcon pyro_giant Tag bot_hatchspawn Skill Expert Health 3000 Attributes MiniBoss AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.6 "airblast vulnerability multiplier" 0.6 "override footstep sound set" 6 "voice pitch scale" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 "faster reload rate" 0.01 } ItemAttributes { ItemName "The Backburner" "lunchbox adds minicrits" 2 } } } } //-------------------------- //BLU WAVESPAWNS //-------------------------- WaveSpawn { Name "bWave1support" Where spawnbot TotalCount 999 MaxActive 3 SpawnCount 1 Support Limited WaitBeforeStarting 7 WaitBetweenSpawns 3 RandomSpawn 1 StartWaveOutput { Target escorttogate Action Show } RandomChoice { TFBot { Template T_TFGateBot_Scout_Hard } TFBot { Template T_TFGateBot_Scout_FaN ClassIcon scout } TFBot { Template T_TFGateBot_Scout_Melee } TFBot { Template T_TFGateBot_Scout_Melee } } } WaveSpawn { Name "bWave1a1" Where spawnbot_left Where spawnbot_right TotalCount 1 MaxActive 1 SpawnCount 1 Support Limited WaitBeforeStarting 6 WaitBetweenSpawnsAfterDeath 5 RandomSpawn 1 // DoneOutput { // Target protectgianthint // Action Show // } TFBot { Template T_TFBot_Giant_DemoMan_PrinceTavish Action Mobber } } WaveSpawn { Name "bWave1a2" Where spawnbot_left Where spawnbot_right TotalCount 99 MaxActive 1 SpawnCount 1 Support Limited WaitBetweenSpawnsAfterDeath 5 RandomSpawn 1 WaitForAllDead "bWave1a1" LastSpawnWarningSound "ambient\machines\thumper_shutdown1.wav" // LastSpawnOutput { // Target onegiantleft // Action Show // } // DoneOutput { // Target redwin_relay // Action Trigger // } TFBot { Template T_TFBot_Giant_DemoMan_PrinceTavish Action Mobber } } } //-------------------------- //WAVE 2 //-------------------------- Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } SpawnTemplate "doorcloseomatic" WaveSpawn { Name "rWave2a" Where frontspawn TotalCount 6 MaxActive 4 SpawnCount 2 WaitBetweenSpawns 10 TotalCurrency 107 RandomSpawn 1 DoneOutput { Target opentankdoors Action Trigger } Squad { TFBot { Template T_TFBot_Giant_Soldier_Crit Action Mobber Attributes DisableDodge Skill Expert AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes {"voice pitch scale" 0 "crit mod disabled" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 } } TFBot { Template T_TFBot_Medic Skill Expert Attributes IgnoreFlag WeaponRestrictions SecondaryOnly AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "voice pitch scale" 0 "crit mod disabled" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 } } } } WaveSpawn { Name "rWave2a1" // Where spawnbot_mission_spy Where frontspawn TotalCount 36 MaxActive 10 SpawnCount 2 WaitBetweenSpawns 1 TotalCurrency 200 RandomSpawn 1 RandomChoice { TFBot { Class Scout Skill Expert Item "Pretty Boy's Pocket Pistol" Attributes DisableDodge ClassIcon red2_lite UseBestWeapon 1 Action Mobber AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes {"voice pitch scale" 0 "crit mod disabled" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 } } TFBot { Class Scout Skill Expert ClassIcon red2_lite Attributes DisableDodge UseBestWeapon 1 Action Mobber AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes {"voice pitch scale" 0 "crit mod disabled" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 } } TFBot { Class Soldier Skill Expert Item "The Original" Item "Panic Attack Shotgun" ClassIcon red2_lite RocketJump 2 UseBestWeapon 1 Action Mobber AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes {"voice pitch scale" 0 "crit mod disabled" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 "rocket jump damage reduction" 0.1 } } TFBot { Class Soldier Skill Expert Item "The Original" ClassIcon red2_lite RocketJump 2 UseBestWeapon 1 Action Mobber AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes {"voice pitch scale" 0 "crit mod disabled" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 "rocket jump damage reduction" 0.1 } } } } WaveSpawn { Name "rWave2defender" Where leftspawngatedefender Where rightspawngatedefender1 TotalCount 2 MaxActive 2 SpawnCount 2 RandomSpawn 1 WaitForAllDead "rWave2a" DoneOutput { Target _leftrrrfrontline_tankdoor Action Open } Squad { TFBot { Template T_TFBot_Giant_Heavyweapons_Shotgun SpawnTemplate "doorcloseomatic2" Skill Expert Attributes AlwaysCrit Tag bot_defender_l Tag bot_defender_r ClassIcon heavy_shotgun_red Action Mobber AddCond { Name TF_COND_REPROGRAMMED } ItemAttributes { ItemName "TF_WEAPON_SHOTGUN_HWG" "custom weapon fire sound" "weapons/flaregun/fire.wav" "health from packs decreased" 0.01 "force distribute currency on death" 1 "voice pitch scale" 0 "crit mod disabled" 0 } } TFBot { Template T_TFBot_Giant_Medic AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "voice pitch scale" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 "damage force reduction" 0 } } } } WaveSpawn { Name "rWave2defender" Where "leftspawnknight" Where "rightspawnknight" TotalCount 12 MaxActive 6 SpawnCount 2 WaitBetweenSpawns 4 TotalCurrency 100 RandomSpawn 1 WaitForAllDead "rWave2a" TFBot { Template T_TFBot_Demoman_Samurai Item "The Mantreads" Action Mobber AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "voice pitch scale" 0 "crit mod disabled" 0 "dmg taken increased" 0.33 // very low falldmg (also affects bleed, eoi, eh) "dmg from melee increased" 3 // regular damage from melee "dmg from ranged reduced" 3 // regular damage from everything else } } } WaveSpawn { Name "rWave2spies" Where RedSpawn TotalCount 24 MaxActive 8 SpawnCount 8 TotalCurrency 100 RandomSpawn 1 WaitBeforeStarting 5 WaitForAllDead "rWave2a" TFBot { Template T_TFBot_Spy Item "Your Eternal Reward" AddCond { Name TF_COND_REPROGRAMMED } MaxVisionRange 128 FireWeapon { Delay 0 Cooldown 1 IfSeeTarget 1 Type "Primary" } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 "cannot pick up intelligence" 1 } ItemAttributes { ItemName "Your Eternal Reward" "armor piercing" 50 } } } WaveSpawn { Name "rWave2c" Where gateAleft Where gateAright TotalCount 35 MaxActive 8 SpawnCount 2 TotalCurrency 100 RandomSpawn 1 WaitBeforeStarting 3 WaitForAllDead "rWave2defender" TFBot { Template T_TFBot_Heavyweapons_Shotgun AimTrackingInterval 1 ClassIcon heavy_shotgun_red_giant Action Mobber AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 } } } WaveSpawn { Name "rWave2c" Where gateAleft Where gateAright TotalCount 8 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 3 TotalCurrency 100 RandomSpawn 1 WaitBeforeStarting 3 WaitForAllDead "rWave2defender" LastSpawnOutput { Target secondbarrier Action Trigger } TFBot { Template T_TFBot_Soldier_Extended_Buff_Banner Action Mobber AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 } } } WaveSpawn { Name "dummy" Where gateAleft Where gateAright TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllDead "rWave2defender" WaitBeforeStarting 5 LastSpawnOutput { Target openrightdoors Action Trigger } FirstSpawnOutput { Target _leftrrrfrontline_tankdoor Action Open } TFBot { Template T_TFBot_Heavyweapons_Shotgun AimTrackingInterval 1 ClassIcon heavy_shotgun_red_giant Action Mobber AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 } } } WaveSpawn { Name "rWave2c" Where gateAleft Where gateAright TotalCount 3 MaxActive 1 SpawnCount 1 TotalCurrency 100 RandomSpawn 1 WaitForAllDead "rWave2defender" LastSpawnOutput { Target secondbarrier Action Trigger } FirstSpawnOutput { Target _leftrrrfrontline_tankdoor Action Open } TFBot { Template T_TFBot_Giant_Demo_Burst ClassIcon demo_burst_red Action Mobber AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 } } } WaveSpawn { Name "rWave2d" Where RedSpawn TotalCount 988 MaxActive 6 SpawnCount 2 WaitBetweenSpawns 2 RandomSpawn 1 WaitForAllDead "rWave2c" TFBot { Template T_TFBot_Soldier_Extended_Buff_Banner Action Mobber AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 } } } WaveSpawn { Name "rWave2d" Where RedSpawn_giant TotalCount 12 MaxActive 4 SpawnCount 1 WaitBetweenSpawns 2 RandomSpawn 1 WaitForAllSpawned "rWave2c" TFBot { Template T_TFBot_Heavyweapons_Fist Action Mobber AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 } } } WaveSpawn { Name "rWave2d" Where hatchspawn TotalCount 1 MaxActive 1 SpawnCount 1 RandomSpawn 1 WaitForAllSpawned "rWave2c" DoneOutput { Target unblockhatch Action Trigger } TFBot { Class Heavyweapons Name "Giant Shotgun Heavy" ClassIcon heavy_shotgun_red Health 5000 StripItemSlot 0 Attributes MiniBoss Action Sniper Item "the killing gloves of boxing" Item "Pugilist's Protector" AddCond { Name TF_COND_REPROGRAMMED } //Attributes HoldFireUntilFullReload ChangeAttributes //Periodically changes bot attributes, defined in EventChangeAttributes { Delay 0 //Time before the first bot attribute change (Default: 10) Cooldown 3 //Time between each bot attribute change (Default: 10) Name "Attr1" // Name of the bot attributes listed in EventChangeAttributes } ChangeAttributes { Delay 0 Cooldown 2 Name "Attr2" } EventChangeAttributes //Do not attempt to put any of custom keys here. ExtAttr is the only exception { Attr1 { Skill Expert WeaponRestrictions SecondaryOnly Tag bot_hatchspawn Attributes DisableDodge ItemAttributes { ItemName "TF_WEAPON_SHOTGUN_HWG" "fire rate bonus" 2.5 "bullets per shot bonus" 10 "damage penalty" 0.5 "faster reload rate" 0.1 } ItemAttributes { ItemName "the killing gloves of boxing" "fire rate bonus" 0.6 "damage bonus" 1.2 } CharacterAttributes { "damage force reduction" 0.3 "airblast vulnerability multiplier" 0.3 "attack projectiles" 1 // force ability to shoot down projectiles "override footstep sound set" 2 "health from packs decreased" 0.01 "force distribute currency on death" 1 "move speed bonus" 0.001 "no_jump" 1 "cannot pick up intelligence" 1 } } Attr2 { Skill Expert Tag bot_hatchspawn ItemAttributes { ItemName "TF_WEAPON_SHOTGUN_HWG" "fire rate bonus" 2.5 "bullets per shot bonus" 10 "damage penalty" 0.5 "faster reload rate" 0.1 } ItemAttributes { ItemName "the killing gloves of boxing" "fire rate bonus" 0.6 "damage bonus" 1.2 } CharacterAttributes { "move speed bonus" 0.7 "damage force reduction" 0.3 "airblast vulnerability multiplier" 0.3 "attack projectiles" 1 // force ability to shoot down projectiles "override footstep sound set" 2 "health from packs decreased" 0.01 "force distribute currency on death" 1 "cannot pick up intelligence" 1 } } } } } //-------------------------- //BLU WAVESPAWNS //-------------------------- WaveSpawn { Name "bWave2support" Where spawnbot TotalCount 999 MaxActive 3 SpawnCount 1 Support Limited WaitBeforeStarting 7 WaitBetweenSpawns 3 RandomSpawn 1 RandomChoice { TFBot { Template T_TFGateBot_Heavyweapons_Shotgun } TFBot { Template T_TFGateBot_Heavyweapons_Shotgun } TFBot { Template T_TFGateBot_Heavyweapons_Shotgun } TFBot { Template T_TFBot_Heavyweapons_Shotgun } } } WaveSpawn { Name "bWave2a2" Where spawnbot_left Where spawnbot_right TotalCount 999 MaxActive 1 SpawnCount 1 Support Limited WaitBetweenSpawnsAfterDeath 5 RandomSpawn 1 WaitForAllDead "bWave2a1" // LastSpawnOutput { // Target onegiantleft // Action Show // } // DoneOutput { // Target redwin_relay // Action Trigger // } TFBot { Template T_TFGateBot_Giant_Heavyweapons_Shotgun ClassIcon heavy_shotgun } } } //-------------------------- //WAVE 3 //-------------------------- Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } SpawnTemplate "doorcloseomatic" SpawnTemplate "killpowerups" WaveSpawn { Name "rWave3a" Where frontspawn TotalCount 21 MaxActive 6 SpawnCount 2 TotalCurrency 301 WaitBetweenSpawns 3 RandomSpawn 1 TFBot { Class Demoman Name "Grapple Samurai Demo" ClassIcon demoknight_samurai Skill Expert StripItemSlot 0 StripItemSlot 1 UseHumanAnimations 1 Item "The Half-Zatoichi" Item "The Mantreads" Item "TF_WEAPON_GRAPPLINGHOOK" Action Mobber Attributes AlwaysCrit AddCond { Name TF_COND_REPROGRAMMED } ItemAttributes { ItemName "TF_WEAPON_GRAPPLINGHOOK" "custom item model" "models/workshop_partner/weapons/c_models/c_shogun_katana/c_shogun_katana.mdl" } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "voice pitch scale" 0.7 "crit mod disabled" 0 "charge time increased" 2 "charge recharge rate increased" 7 "increased jump height" 2.3 "bot custom jump particle" 1 "damage bonus" 1.5 "dmg taken increased" 0.34 // very low falldmg (also affects bleed, eoi, eh) "dmg from melee increased" 3 // regular damage from melee "dmg from ranged reduced" 3 // regular damage from everything else } Item "Demo Kabuto" Scale 1.3 Health 650 Attributes AirChargeOnly Attributes AutoJump AutoJumpMin 10 AutoJumpMax 10 } } WaveSpawn { Name "rWave3a" Where frontspawn TotalCount 6 MaxActive 2 SpawnCount 2 WaitBetweenSpawns 6 TotalCurrency 200 RandomSpawn 1 TFBot { Template T_TFBot_Giant_Soldier_Spammer UseMeleeThreatPrioritization 1 Action Mobber Attributes AlwaysFireWeapon AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "voice pitch scale" 0 "crit mod disabled" 5 } } } WaveSpawn { Name "rWave3defender" Where rightspawngatedefender1 Where leftspawngatedefender1 TotalCount 2 MaxActive 2 SpawnCount 2 RandomSpawn 2 TotalCurrency 397 WaitForAllDead "rWave3a" WaitBeforeStarting 3 FirstSpawnOutput { Target opentankdoors Action Trigger } DoneOutput { Target _leftrrrfrontline_tankdoor Action Open } Squad { TFBot { Class Soldier Name "Colonel Barrage" ClassIcon soldier_barrage Health 4000 Tag bot_giant Tag bot_defender_l Tag bot_defender_r Skill Expert Attributes MiniBoss Attributes AlwaysCrit Attributes HoldFireUntilFullReload Item "MvM GateBot Light Soldier" Action Mobber AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 } ItemAttributes { ItemName "TF_WEAPON_ROCKETLAUNCHER" "clip size upgrade atomic" 26.0 "voice pitch scale" 0 "faster reload rate" 0.22 "fire rate bonus" 0.2 "health regen" 40 "move speed bonus" 0.001 "no_jump" 1 "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 } } TFBot { Template T_TFBot_Giant_Medic AddCond { Name TF_COND_REPROGRAMMED } SpawnTemplate "killpowerups" CharacterAttributes { "voice pitch scale" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 "damage force reduction" 0 "no_jump" 1 } } } } WaveSpawn { Name "rWave3defender" Where "leftspawnknight" Where "leftspawngatedefender" Where "rightspawnknight" TotalCount 36 MaxActive 12 SpawnCount 4 RandomSpawn 1 WaitForAllDead "rWave3a" TotalCurrency 200 TFBot { Class Soldier Skill Expert AimTrackingInterval 1 Name "Crit Soldier" Attributes AlwaysCrit Action Mobber Tag bot_defender_l Tag bot_defender_r AddCond { Name TF_COND_REPROGRAMMED } ItemAttributes { ItemName "TF_WEAPON_ROCKETLAUNCHER" "damage bonus" 2.0 "faster reload rate" -0.8 "fire rate bonus" 0.6 } CharacterAttributes { "voice pitch scale" 0 "crit mod disabled" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 } } } WaveSpawn { Name "rWave3b" Where gateAleft Where gateAright TotalCount 5 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 10 TotalCurrency 200 WaitForAllDead "rWave3defender1" RandomSpawn 1 LastSpawnOutput { Target secondbarrier Action Trigger } TFBot { Template T_TFBot_Giant_Demoman Action Mobber Attributes AlwaysCrit AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes {"voice pitch scale" 0 "crit mod disabled" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 } } } WaveSpawn { Name "rWave3b" Where gateAleft Where gateAright TotalCount 1 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 3 TotalCurrency 200 RandomSpawn 1 WaitForAllDead "rWave3defender1" DoneOutput { Target tankcapdoor_opener Action Open } LastSpawnOutput { Target openrightdoors Action Trigger } TFBot { Template T_TFBot_Demo_Burst Action Mobber ClassIcon demo_burst_red SpawnTemplate "killpowerups" AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes {"voice pitch scale" 0 "crit mod disabled" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 } } } WaveSpawn { Name "rWave3b" Where gateAleft Where gateAright TotalCount 39 MaxActive 12 SpawnCount 4 WaitForAllSpawned "rWave3defender1" WaitBetweenSpawns 1 TotalCurrency 100 RandomSpawn 1 TFBot { Template T_TFBot_Demo_Burst Tag bot_defender_l Tag bot_defender_r ClassIcon demo_burst_red Action Mobber Attributes DisableDodge AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "voice pitch scale" 0 } } } WaveSpawn { Name "rWave3c" Where hatchspawn TotalCount 2 MaxActive 2 SpawnCount 2 WaitForAllSpawned "rWave3b" TotalCurrency 300 DoneOutput { Target unblockhatch Action Trigger } Squad { TFBot { Template T_TFBot_Giant_Heavyweapons Action Mobber UseMeleeThreatPrioritization 1 ForceRomeVision 1 Tag bot_hatchspawn ExtAttr AlwaysFireWeaponAlt AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "voice pitch scale" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 } } TFBot { Template T_TFBot_Giant_Medic AddCond { Name TF_COND_REPROGRAMMED } Tag bot_hatchspawn CharacterAttributes { "voice pitch scale" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 "damage force reduction" 0 "no_jump" 1 } } } } WaveSpawn { Name "rWave3c" Where RedSpawn TotalCount 999 MaxActive 6 SpawnCount 2 WaitBetweenSpawns 1 WaitForAllSpawned "rWave3b" TotalCurrency 105 FirstSpawnOutput { Target secondbarrier Action Trigger } TFBot { Template T_TFBot_Soldier_RocketShotgun Attributes AlwaysCrit Action Mobber UseMeleeThreatPrioritization 1 AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "damage force reduction" 0 } } } WaveSpawn { Name "bWave3a" Where spawnbot TotalCount 999 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 6 Support Limited RandomChoice { TFBot {Template T_TFGateBot_Pyro_AlwaysFireWeapon } TFBot {Template T_TFGateBot_Pyro_AlwaysFireWeapon } TFBot {Template T_TFGateBot_Pyro_AlwaysFireWeapon } TFBot {Template T_TFGateBot_Pyro_AlwaysFireWeapon } TFBot {Template T_TFGateBot_Pyro_AlwaysFireWeapon } TFBot {Template T_TFGateBot_Pyro_AlwaysFireWeapon } TFBot {Template T_TFGateBot_Pyro_AlwaysFireWeapon } TFBot {Template T_TFGateBot_Pyro_AlwaysFireWeapon } TFBot {Template T_TFGateBot_Pyro_AlwaysFireWeapon } TFBot { Class Pyro Skill Normal Name "Thruster Pyro" Item "The Thermal Thruster" Item "The Backburner" Action Mobber UseBestWeapon 1 UseMeleeThreatPrioritization 1 FireWeapon { Delay 0 Cooldown 1 IfSeeTarget 1 Type "Primary" } ItemAttributes { ItemName "The Thermal Thruster" "single wep deploy time increased" 0.01 "holster_anim_time" 0.01 "item_meter_charge_rate" 3 "thermal_thruster_air_launch" 1 "falling_impact_radius_stun" 1 } } TFBot { Class Pyro Skill Normal Name "Gas Pyro" Item "The Phlogistinator" Item "The Gas Passer" WeaponRestrictions SecondaryOnly UseMeleeThreatPrioritization 1 Attributes SpawnWithFullCharge Action Mobber ItemAttributes { ItemName "The Phlogistinator" "deploy time increased" 0.01 "airblast disabled" 0 } ItemAttributes { ItemName "The Gas Passer" "item_meter_damage_for_full_charge" 1200 "explode_on_ignite" 1 "dmg penalty vs player" 0.33 } } } } WaveSpawn { Name "bWave3a" Where spawnbot_left Where spawnbot_right TotalCount 999 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 6 Support Limited TFBot { Template T_TFBot_Giant_Demo_Burst } } WaveSpawn { Where "powerups" Where "leftspawnpowerups" Where "rightspawnpowerups" TotalCount 999 MaxActive 4 SpawnCount 1 Support Limited RandomSpawn 1 StartWaveOutput { Target grabpowerup Action Show } RandomChoice { TFBot { Class Heavy ClassIcon pyro WeaponRestrictions MeleeOnly Name "⠀" Skin 3 Skill Normal Attributes AlwaysFireWeapon ItemAttributes { ItemName "TF_WEAPON_FISTS" "no_jump" 1 "move speed bonus" 0.001 "voice pitch scale" 0 "damage penalty" 0.01 "melee range multiplier" 2 "melee bounds multiplier" 2 "melee cleave attack" 1 "gesture speed increase" 0.5 } Action Mobber AddCond { Name TF_COND_STEALTHED_USER_BUFF_FADING } AddCond { Name TF_COND_RUNE_SUPERNOVA } AddCond { Name TF_COND_REPROGRAMMED } DamageAppliesCond { Name TF_COND_RUNE_SUPERNOVA } } TFBot { Class Heavy ClassIcon pyro WeaponRestrictions MeleeOnly Name "⠀" Skin 3 Skill Normal Attributes AlwaysFireWeapon ItemAttributes { ItemName "TF_WEAPON_FISTS" "no_jump" 1 "move speed bonus" 0.001 "voice pitch scale" 0 "damage penalty" 0.01 "melee range multiplier" 2 "melee bounds multiplier" 2 "melee cleave attack" 1 "gesture speed increase" 0.5 } Action Mobber AddCond { Name TF_COND_STEALTHED_USER_BUFF_FADING } AddCond { Name TF_COND_RUNE_RESIST } AddCond { Name TF_COND_REPROGRAMMED } DamageAppliesCond { Name TF_COND_RUNE_RESIST } } TFBot { Class Heavy ClassIcon pyro WeaponRestrictions MeleeOnly Name "⠀" Skin 3 Skill Normal Attributes AlwaysFireWeapon ItemAttributes { ItemName "TF_WEAPON_FISTS" "no_jump" 1 "move speed bonus" 0.001 "voice pitch scale" 0 "damage penalty" 0.01 "melee range multiplier" 2 "melee bounds multiplier" 2 "melee cleave attack" 1 "gesture speed increase" 0.5 } Action Mobber AddCond { Name TF_COND_STEALTHED_USER_BUFF_FADING } AddCond { Name TF_COND_RUNE_RESIST } AddCond { Name TF_COND_REPROGRAMMED } DamageAppliesCond { Name TF_COND_RUNE_RESIST } } TFBot { Class Heavy ClassIcon pyro WeaponRestrictions MeleeOnly Name "⠀" Skin 3 Skill Normal Attributes AlwaysFireWeapon ItemAttributes { ItemName "TF_WEAPON_FISTS" "no_jump" 1 "move speed bonus" 0.001 "voice pitch scale" 0 "damage penalty" 0.01 "melee range multiplier" 2 "melee bounds multiplier" 2 "melee cleave attack" 1 "gesture speed increase" 0.5 } Action Mobber AddCond { Name TF_COND_STEALTHED_USER_BUFF_FADING } AddCond { Name TF_COND_RUNE_KING } AddCond { Name TF_COND_REPROGRAMMED } DamageAppliesCond { Name TF_COND_RUNE_KING } } TFBot { Class Heavy ClassIcon pyro WeaponRestrictions MeleeOnly Name "⠀" Skin 3 Skill Normal Attributes AlwaysFireWeapon ItemAttributes { ItemName "TF_WEAPON_FISTS" "no_jump" 1 "move speed bonus" 0.001 "voice pitch scale" 0 "damage penalty" 0.01 "melee range multiplier" 2 "melee bounds multiplier" 2 "melee cleave attack" 1 "gesture speed increase" 0.5 } Action Mobber AddCond { Name TF_COND_STEALTHED_USER_BUFF_FADING } AddCond { Name TF_COND_RUNE_RESIST } AddCond { Name TF_COND_REPROGRAMMED } DamageAppliesCond { Name TF_COND_RUNE_RESIST } } TFBot { Class Heavy ClassIcon pyro WeaponRestrictions MeleeOnly Name "⠀" Skin 3 Skill Normal Attributes AlwaysFireWeapon ItemAttributes { ItemName "TF_WEAPON_FISTS" "no_jump" 1 "move speed bonus" 0.001 "voice pitch scale" 0 "damage penalty" 0.01 "melee range multiplier" 2 "melee bounds multiplier" 2 "melee cleave attack" 1 "gesture speed increase" 0.5 } Action Mobber AddCond { Name TF_COND_STEALTHED_USER_BUFF_FADING } AddCond { Name TF_COND_RUNE_KING } AddCond { Name TF_COND_REPROGRAMMED } DamageAppliesCond { Name TF_COND_RUNE_KING } } TFBot { Class Heavy ClassIcon pyro WeaponRestrictions MeleeOnly Name "⠀" Skin 3 Skill Normal Attributes AlwaysFireWeapon ItemAttributes { ItemName "TF_WEAPON_FISTS" "no_jump" 1 "move speed bonus" 0.001 "voice pitch scale" 0 "damage penalty" 0.01 "melee range multiplier" 2 "melee bounds multiplier" 2 "melee cleave attack" 1 "gesture speed increase" 0.5 } Action Mobber AddCond { Name TF_COND_STEALTHED_USER_BUFF_FADING } AddCond { Name TF_COND_RUNE_RESIST } AddCond { Name TF_COND_REPROGRAMMED } DamageAppliesCond { Name TF_COND_RUNE_RESIST } } TFBot { Class Heavy ClassIcon pyro WeaponRestrictions MeleeOnly Name "⠀" Skin 3 Skill Normal Attributes AlwaysFireWeapon ItemAttributes { ItemName "TF_WEAPON_FISTS" "no_jump" 1 "move speed bonus" 0.001 "voice pitch scale" 0 "damage penalty" 0.01 "melee range multiplier" 2 "melee bounds multiplier" 2 "melee cleave attack" 1 "gesture speed increase" 0.5 } Action Mobber AddCond { Name TF_COND_STEALTHED_USER_BUFF_FADING } AddCond { Name TF_COND_RUNE_KING } AddCond { Name TF_COND_REPROGRAMMED } DamageAppliesCond { Name TF_COND_RUNE_KING } } } } } Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } SpawnTemplate "doorcloseomatic" WaveSpawn { Name "rWave4a1" Where frontspawn TotalCount 30 MaxActive 8 SpawnCount 2 WaitBetweenSpawns 2 RandomSpawn 1 RandomChoice { TFBot { Template T_TFBot_Soldier_Extended_Battalion ClassIcon soldier_banner_trio Action Mobber AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 } } TFBot { Template T_TFBot_Soldier_Extended_Buff_Banner ClassIcon soldier_banner_trio Action Mobber AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 } } TFBot { Template T_TFBot_Soldier_Extended_Buff_Banner ClassIcon soldier_banner_trio Action Mobber AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 } } TFBot { Template T_TFBot_Soldier_Extended_Buff_Banner ClassIcon soldier_banner_trio Action Mobber AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 } } TFBot { Template T_TFBot_Soldier_Extended_Buff_Banner ClassIcon soldier_banner_trio Action Mobber AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 } } TFBot { Template T_TFBot_Soldier_Extended_Concheror ClassIcon soldier_banner_trio Action Mobber AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 } } TFBot { Template T_TFBot_Soldier_Extended_Concheror ClassIcon soldier_banner_trio Action Mobber AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 } } TFBot { Template T_TFBot_Soldier_Extended_Concheror ClassIcon soldier_banner_trio Action Mobber AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 } } } } WaveSpawn { Name "rWave4a" Where frontspawn TotalCount 6 MaxActive 3 SpawnCount 3 TotalCurrency 200 RandomSpawn 1 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons_Deflector Action Mobber Attributes DisableDodge Skill Expert AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes {"voice pitch scale" 0 "crit mod disabled" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 } } TFBot { Template T_TFBot_Medic Skill Expert Attributes IgnoreFlag WeaponRestrictions SecondaryOnly AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "voice pitch scale" 0 "crit mod disabled" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 } } TFBot { Template T_TFBot_Medic Skill Expert Attributes IgnoreFlag WeaponRestrictions SecondaryOnly AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "voice pitch scale" 0 "crit mod disabled" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 } } } } WaveSpawn { Name "rWave4defender" Where "leftspawnknight" Where "leftspawngatedefender" Where "rightspawnknight" TotalCount 24 MaxActive 8 SpawnCount 2 RandomSpawn 1 WaitForAllSpawned "rWave4defender1" TotalCurrency 200 TFBot { Class Heavy Skill Expert Item "Deflector" Item "The U-clank-a" Attributes DisableDodge ClassIcon heavy_deflector_crit AimLeadProjectileSpeed 5100 Action Mobber AddCond { Name TF_COND_REPROGRAMMED } ItemAttributes { ItemName "Deflector" "attack projectiles" 2 "health from packs decreased" 0.01 "force distribute currency on death" 1 } } } WaveSpawn { Name "rWave4defender1" Where "leftspawngatedefender" Where "rightspawngatedefender" TotalCount 2 MaxActive 2 SpawnCount 2 RandomSpawn 1 WaitForAllDead "rWave4a" TotalCurrency 200 WaitBeforeStarting 3 LastSpawnOutput { Target opentankdoors Action Trigger } TFBot { Template T_TFBot_Giant_Heavyweapons_HealOnKill ClassIcon heavy_deflector_healonkill Name "Giant Heal-On-Kill Heavy" Attributes AlwaysCrit Action Mobber Attributes UseBossHealthBar UseMeleeThreatPrioritization 1 Tag bot_defender_l Tag bot_defender_r Item "Deflector" Item "The Tungsten Toque" AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "voice pitch scale" 0 "crit mod disabled" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 "move speed bonus" 0.001 "no_jump" 1 } } } WaveSpawn { Name "rWave4b" Where gateAleft Where gateAright TotalCount 1 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 3 TotalCurrency 200 WaitForAllDead "rWave4b1" RandomSpawn 1 DoneOutput { Target secondbarrier Action Trigger } TFBot { Template T_TFBot_Giant_Soldier_Spammer_Reload Attributes AlwaysCrit Action Mobber AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } } WaveSpawn { Name "rWave4b1" Where gateAleft Where gateAright TotalCount 1 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 3 TotalCurrency 200 RandomSpawn 1 WaitForAllSpawned "rWave4defender" LastSpawnOutput { Target openrightdoors Action Trigger } TFBot { Template T_TFBot_Giant_Soldier_Spammer_Reload Attributes AlwaysCrit Action Mobber AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 } } } WaveSpawn { Name "rWave4b" Where gateAleft Where gateAright TotalCount 1 MaxActive 1 SpawnCount 1 WaitForAllSpawned "rWave4defender" LastSpawnOutput { Target tankcapdoor_opener Action Open } TFBot { Class Engineer Name "Widowmaker Engineer" Skill Expert Health 250 ClassIcon engineer_widowmaker_nys WeaponRestrictions PrimaryOnly Attributes AlwaysFireWeapon Action Mobber AddCond { Name TF_COND_REPROGRAMMED } Item "The Widowmaker" CharacterAttributes { "engineer sentry build rate multiplier" -1 "cannot pick up intelligence" 1 "projectile penetration" 1 "fire rate bonus" 0.6 "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 } } } WaveSpawn { Name "rWave4b1" Where gateAleft Where gateAright TotalCount 35 MaxActive 12 SpawnCount 2 WaitForAllSpawned "rWave4defender" WaitBeforeStarting 1 WaitBetweenSpawns 1 TotalCurrency 50 RandomSpawn 1 TFBot { Class Engineer Skill Expert Name "Widowmaker Engineer" Health 250 ClassIcon engineer_widowmaker_nys WeaponRestrictions PrimaryOnly Attributes AlwaysFireWeapon Action Mobber AddCond { Name TF_COND_REPROGRAMMED } Item "The Widowmaker" CharacterAttributes { "projectile penetration" 1 "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 "fire rate bonus" 0.6 } } } WaveSpawn { Name "rWave4c" Where RedSpawn TotalCount 12 MaxActive 6 SpawnCount 2 RandomSpawn 1 Support Limited WaitForAllDead "rWave4b" Squad { RandomChoice { TFBot { Class Soldier Skill Hard Action Mobber Tag bot_hatchspawn ClassIcon red2_lite AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 } } TFBot { Class Scout Skill Hard Action Mobber Tag bot_hatchspawn ClassIcon red2_lite AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 } } TFBot { Class Pyro Skill Hard Action Mobber Tag bot_hatchspawn ClassIcon red2_lite AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 } } TFBot { Class Demoman Skill Hard Action Mobber Tag bot_hatchspawn ClassIcon red2_lite AddCond { Name TF_COND_REPROGRAMMED } CharacterAttributes { "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 } } }} } WaveSpawn { Name "gWave4c" Where hatchspawn Where grayspawnleft Where grayspawnright TotalCount 2 MaxActive 2 SpawnCount 2 RandomSpawn 1 WaitBeforeStarting 1 WaitForAllDead "rWave4b" FirstSpawnWarningSound "vo\announcer_security_warning.mp3" FirstSpawnOutput { Target grayround Action Trigger } LastSpawnOutput { Target vox_opendoor Action PlaySound } DoneOutput { Target boss_deploy_relay Action Trigger } RandomChoice { TFBot { Class Soldier Name "⠀" Skill Expert WeaponRestrictions PrimaryOnly Attributes MiniBoss Attributes HoldFireUntilFullReload ClassIcon gry_Lite Scale 1.9 Health 15000 Attributes UseBossHealthBar Attributes DisableDodge UseMeleeThreatPrioritization 1 Action Mobber UseCustomModel models/bots/soldier_boss/bot_soldier_gray_boss.mdl RocketCustomParticle "eyeboss_projectile" AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } AddCond { Name TF_COND_SODAPOPPER_HYPE } AddCond { Name TF_COND_INVULNERABLE Duration 45 } ItemAttributes { ItemName "TF_WEAPON_ROCKETLAUNCHER" "move speed bonus" 0.5 "damage bonus" 2.0 "Projectile speed increased" 0.9 "faster reload rate" 0.4 "fire rate bonus" 0.2 "clip size upgrade atomic" 5.0 "Projectile speed increased" 0.65 "health from packs decreased" 0.01 "head scale" 0.0001 "force distribute currency on death" 1 "voice pitch scale" 0.2 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 "crit vs non burning players" 1 "crit vs burning players" 1 } } TFBot { Template T_TFBot_Giant_Heavyweapons_Deflector Name "⠀" Health 18000 Scale 1.9 Attributes UseBossHealthBar Attributes DisableDodge ExtAttr AlwaysFireWeaponAlt UseMeleeThreatPrioritization 1 ClassIcon gry_Lite Action Mobber UseCustomModel models/bots/heavy_boss/bot_heavy_gray_boss.mdl AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } AddCond { Name TF_COND_SODAPOPPER_HYPE } AddCond { Name TF_COND_INVULNERABLE Duration 45 } ItemAttributes { ItemName "Deflector" "health from packs decreased" 0.01 "head scale" 0.0001 "force distribute currency on death" 1 "voice pitch scale" 0.2 "crit vs non burning players" 1 "crit vs burning players" 1 } } } } WaveSpawn { Name "gWave4c" Where RedSpawn TotalCount 999 MaxActive 6 SpawnCount 2 RandomSpawn 1 WaitForAllDead "rWave4c" RandomChoice { TFBot { Class Soldier ClassIcon gry_lite Name "⠀" UseCustomModel models/bots/soldier/bot_soldier_gray.mdl RocketCustomParticle "eyeboss_projectile" Attributes HoldFireUntilFullReload Action Mobber AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } AddCond { Name TF_COND_SODAPOPPER_HYPE } ItemAttributes { ItemName "TF_WEAPON_ROCKETLAUNCHER" "no self blast dmg" 2 "crit vs non burning players" 1 "crit vs burning players" 1 "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 "head scale" 0.0001 "voice pitch scale" 0.2 } } TFBot { Class Heavyweapons ClassIcon gry_lite Name "⠀" Action Mobber UseCustomModel models/bots/heavy/bot_heavy_gray.mdl AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } AddCond { Name TF_COND_SODAPOPPER_HYPE } ExtAttr AlwaysFireWeaponAlt ItemAttributes { ItemName "TF_WEAPON_MINIGUN" "crit vs non burning players" 1 "crit vs burning players" 1 "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 "head scale" 0.0001 "voice pitch scale" 0.2 } } TFBot { Class Pyro ClassIcon gry_lite Name "⠀" Action Mobber UseCustomModel models/bots/pyro/bot_pyro_gray.mdl AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } AddCond { Name TF_COND_SODAPOPPER_HYPE } ItemAttributes { ItemName "TF_WEAPON_FLAMETHROWER" "crit vs non burning players" 1 "crit vs burning players" 1 "health from packs decreased" 0.01 "force distribute currency on death" 1 "crit mod disabled" 0 "head scale" 0.0001 "voice pitch scale" 0.2 } } TFBot { Class Demoman ClassIcon gry_lite Name "⠀" UseCustomModel models/bots/demo/bot_demo_gray.mdl Action Mobber Attributes HoldFireUntilFullReload AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } AddCond { Name TF_COND_SODAPOPPER_HYPE } ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "custom projectile model" "models/weapons/w_models/w_repair_claw_gib1.mdl" "crit vs non burning players" 1 "health from packs decreased" 0.01 "voice pitch scale" 0.2 "force distribute currency on death" 1 "crit mod disabled" 0 "head scale" 0.0001 } } } } } Wave { InitWaveOutput { Target forcecapright Action Trigger } StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } } Wave { InitWaveOutput { Target boss_deploy_relay Action Trigger } } //dumb reverse bug workaround }