#base robot_standard.pop #base robot_giant.pop #base robot_standard_red.pop #base robot_giant_red.pop // Galois - Reverse Mission for Hideout // Made by PDA Expert. // Textual Timer made by Lite. // Some logic (mainly the spawn barriers) was lifted from Space Jockey. // Melee Pullout tech was made by royal. // Brimstone by Locknar // Whistler & The Pied Piper by Cheshyre WaveSchedule { StartingCurrency 1000 CanBotsAttackWhileInSpawnRoom yes RespawnWaveTime 3 RespawnWaveTimeBlue 3 FixedRespawnWaveTimeBlue 1 ReverseWinConditions 1 AllowJoinTeamBlueMax 6 AllowJoinTeamBlue 1 HumansMustJoinTeam Blue WaveStartCountdown 5 SetCreditTeam 3 BluHumanInfiniteAmmo 1 SniperAllowHeadshots 1 BotTeleportUberDuration 2 BluPlayersAreRobots 1 BotsRandomCrit 1 BluHumanTeleportOnSpawn 1 TextPrintTime 0 NoRomevisionCosmetics 1 CustomNavFile "mvm_hideout_b3_rev" // should make bots avoid window PrecacheSound "galois\cheshyre_whistler.mp3" PrecacheSound "galois\cheshyre_the_pied_piper.mp3" PrecacheSound "galois\locknar_brimstone.mp3" PrecacheModel "models\bots\boss_bot\boss_tankred.mdl" PrecacheModel "models\bots\boss_bot\boss_tankred_damage1.mdl" PrecacheModel "models\bots\boss_bot\boss_tankred_damage2.mdl" PrecacheModel "models\bots\boss_bot\boss_tankred_damage3.mdl" PrecacheModel "models\bots\boss_bot\boss_tankred_part1_destruction.mdl" PrecacheModel "models\bots\boss_bot\tankred_track_l.mdl" PrecacheModel "models\bots\boss_bot\tankred_track_r.mdl" PrecacheModel "models/weapons/c_models/c_fists_of_steel_gray/c_fists_of_steel_gray.mdl" 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_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_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" DisallowUpgrade "maxammo primary increased" //players have infinite ammo DisallowUpgrade "maxammo secondary increased" //players have infinite ammo DisallowUpgrade "maxammo metal increased" //players have infinite ammo DisallowUpgrade "metal regen" //players have infinite ammo PlayerAttributes //Player attributes appied for the whole mission { Engineer { "max health additive bonus" 175 // 300 hp "Construction rate increased" 1.5 // makes buildings slightly easier to set up due to being constantly assaulted } } // All-Class ItemAttributes { ItemName "Default Power Up Canteen (MvM)" "custom item model" "models/workshop/player/items/engineer/invasion_life_support_system/invasion_life_support_system.mdl" } ItemAttributes { ItemName "Power Up Canteen (MvM)" "custom item model" "models/workshop/player/items/engineer/invasion_life_support_system/invasion_life_support_system.mdl" } ItemAttributes { ItemName "Kritz Or Treat Canteen" "custom item model" "models/workshop/player/items/engineer/invasion_life_support_system/invasion_life_support_system.mdl" } ItemAttributes { ItemName "Battery Canteens" "custom item model" "models/workshop/player/items/engineer/invasion_life_support_system/invasion_life_support_system.mdl" } // Demoman ItemAttributes { ClassName "TF_WEAPON_SWORD" "melee cleave attack" 1 } ItemAttributes { ItemName "Festive Eyelander" "melee cleave attack" 1 } ItemAttributes { ItemName "The Scotsman's Skullcutter" "melee cleave attack" 1 } ItemAttributes { ItemName "The Claidheamohmor" "melee cleave attack" 1 } ItemAttributes { ItemName "The Half-Zatoichi" "melee cleave attack" 1 } ItemAttributes { ItemName "The Persian Persuader" "melee cleave attack" 1 } // Engineer ItemAttributes { ItemName "The Widowmaker" "damage penalty" 0.8 } ItemAttributes { ItemName "The Short Circuit" "special item description" "Alt-fire now puts up a temporary projectile absorbtion field rather than the usual moving ball." "fire rate penalty" 2.5 "mod projectile heat seek power" 360 "mod projectile heat aim time" 5 "damage penalty" 0 } // Medic //ItemAttributes // offset the stuff a bit //{ // ItemName "The Kritzkrieg" // "uber duration bonus" 4 //} // Demo Weps CustomWeapon { Name "Drunken Drive" OriginalItemName "The Loch-n-Load" "special item description" "Provides 3 seconds of increased fire rate and reload speed on kill" // remove stats "dmg bonus vs buildings" 1.0 "Projectile speed increased" 1.0 "Blast radius decreased" 1.0 "sticky air burst mode" 0 // actual stats //"damage penalty" 0.85 "paintkit_proto_def_index" 214 "set_item_texture_wear" 0 "add cond on kill duration" 3 "add cond on kill" 9329 "fire rate bonus HIDDEN" 0.8 "clip size penalty" 0.5 "grenade no bounce" 1 "custom weapon fire sound" "=75|weapons/mortar/mortar_fire1.wav" } CustomWeapon { Name "Demobot Armor" OriginalItemName "The Razorback" "max health additive bonus" 75 // 250 hp in total "damage force reduction" 0.1 "move speed bonus" 1.15 "airblast vulnerability multiplier" 0.5 "custom item model" "models/workshop/player/items/demo/tw_demobot_armor/tw_demobot_armor.mdl" } CustomWeapon { Name "Death Racer's Drunken Drive" OriginalItemName "The Loch-n-Load" "special item description" "Provides 3 seconds of increased fire rate and reload speed on kill" // remove stats "dmg bonus vs buildings" 1.0 "Projectile speed increased" 1.0 "Blast radius decreased" 1.0 "sticky air burst mode" 0 // actual stats "paintkit_proto_def_index" 214 "set_item_texture_wear" 0 "add cond on kill duration" 3 "add cond on kill" 9329 "fire rate bonus" 0.1 "projectile spread angle penalty" 2 "clip size penalty" 0.75 "grenade no bounce" 1 "custom weapon fire sound" "=75|weapons/mortar/mortar_fire1.wav" } // Engi Weps CustomWeapon { Name "Engibot Armor" OriginalItemName "The Gunboats" "max health additive bonus" 250 // 550 hp in total, you're sacraficing wrangler enough said. "move speed bonus" 1.15 "damage force reduction" 0.5 "airblast vulnerability multiplier" 0.5 "custom item model" "models/workshop/player/items/engineer/tw_engineerbot_armor/tw_engineerbot_armor.mdl" } CustomWeapon { Name "Engibot Helmet" OriginalItemName "The Razorback" "max health additive bonus" 100 // 450 hp in total, 650 if used with armor. Sacraficing a potetionally really good primary, not quite as severe as losing wrangler though. "damage force reduction" 0.75 "airblast vulnerability multiplier" 0.75 "custom item model" "models/workshop/player/items/engineer/tw_engineerbot_helmet/tw_engineerbot_helmet.mdl" } CustomWeapon { Name "The Texan Pummel" OriginalItemName "Upgradeable TF_WEAPON_WRENCH" "special item description" "Deploys and upgrades buildings quickly, building health is drasticly decreased however. Damage lowered by 25% when healed by a medic." "fire rate penalty" 1.5 "damage bonus" 2.25 // for the lols "single wep deploy time increased" 2.0 "Construction rate increased" 9999 "upgrade rate decrease" 10 "melee cleave attack" 1 "engy building health bonus" 0.5 "custom item model" "models/workshop/weapons/c_models/c_sledgehammer/c_sledgehammer.mdl" "custom kill icon" "sledgehammer" } // Medic Weps //CustomWeapon //{ // Name "Canteen Specialist" // OriginalItemName "Upgradeable TF_WEAPON_MEDIGUN" // "special item description" "Cannot use shield and uber, comes pre-packaged with canteen specialist." // "increase buff duration" 0 // "ubercharge rate penalty" 0 // "uber duration bonus" -7 // if you somehow manage to get uber (mainly uber saw) // "canteen specialist" 1 // "paintkit_proto_def_index" 226 // "set_item_texture_wear" 0 //} CustomWeapon { Name "Stasis Shock" OriginalItemName "Upgradeable TF_WEAPON_BONESAW" "special item description" "100% chance to stun non-giant or non-semigiant robots. Can mark multiple enemies for death." "custom item model" "models/workshop/player/items/medic/tauntdoctors_defibrillators/tauntdoctors_defibrillators.mdl" "fire rate penalty" 1.5 "damage penalty" 0.385 // 25 dmg. "custom hit sound" "=125|ambient/energy/weld2.wav" "ragdolls become ash" 1 "add cond on hit" 12338 "stun on damage" 60 "melee range multiplier" 1.33 "add cond on hit duration" 3 "damage all connected" 1 "custom kill icon" "obj_attachment_sapper" } ExtraLoadoutItems { Engineer { Primary "Engibot Helmet" Secondary "Engibot Armor" Melee "The Texan Pummel" } Demoman { Primary "Drunken Drive" Secondary "Demobot Armor" } Medic { //Secondary "Canteen Specialist" Melee "Stasis Shock" } } OverrideSounds { "Regenerate.Touch" "misc/null.wav" "Announcer.MVM_All_Dead" "misc/null.wav" "MVM.GiantCommonExplodes" "ambient\explosions\explode_3.wav" "music.mvm_lost_wave" "#music\radio01.mp3" } Templates { T_TFBot_Chief_Demo_Atomic_NoWeaponRestrict { Class Demoman Name "Sir Nukesalot" ClassIcon demo_atomic Health 50000 Scale 1.9 Skill Expert Item "The Loose Cannon" Attributes MiniBoss Attributes UseBossHealthBar Attributes HoldFireUntilFullReload Attributes AlwaysFireWeapon Attributes AlwaysCrit ItemAttributes { ItemName "The Loose Cannon" "grenade launcher mortar mode" 0 "faster reload rate" 1.8 "fire rate bonus" 2 "clip size penalty" 0.5 "Projectile speed increased" 0.8 "projectile spread angle penalty" 5 "damage bonus" 7 "damage causes airblast" 1 "blast radius increased" 1.2 "use large smoke explosion" 1 } CharacterAttributes { "move speed bonus" 0.35 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 4 } } T_TFBot_Demoman_Deathracer { Class Demoman Name "Death Racer" ClassIcon demo_burst Health 175 Skill Hard DropWeapon 1 Item "Death Racer's Drunken Drive" Item "Death Racer's Helmet" //Item "The Patriot's Pouches" CharacterAttributes { "move speed bonus" 1.15 } } T_TFBot_Giant_Medic_Booster // Booster giant medic, put the following attributes on pockets. // "mod medic healed damage bonus" // "reload time decreased while healed" { Class Medic Name "Giant Booster Medic" ClassIcon medic_boost_giant Skill Expert Health 4500 Attributes MiniBoss Item "The Kritzkrieg" Item "Self-Care" Item "Derangement Garment" Item "Particulate Protector" Item "Das Maddendoktor" ItemAttributes { ItemName "TF_WEAPON_SYRINGEGUN_MEDIC" "damage penalty" 0.5 } ItemAttributes { ItemName "The Kritzkrieg" "bot medic uber health threshold" 5000 } ItemAttributes { ItemName "Das Maddendoktor" "set item tint RGB" 16738740 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.6 "airblast vulnerability multiplier" 0.6 "heal rate bonus" 200 // only works on mediguns that have this attribute ie quickfix } } T_TFBot_Giant_Demo_Giga_Samurai // Devestating giant demoknight which has mastered the art of the blade. Should be used very late in the game and with EXTREME caution. { Class Demoman ClassIcon demoknight_samurai Name "Giga Samurai" Skill Expert Scale 1.8 Health 4200 WeaponRestrictions MeleeOnly Attributes MiniBoss Attributes AlwaysCrit Attributes AirChargeOnly Attributes AutoJump AutoJumpMin 10 AutoJumpMax 10 Item "The Half-Zatoichi" Item "Ali Baba's Wee Booties" Item "The Splendid Screen" //Item "Blast Blocker" Item "Legendary Lid" ItemAttributes { ItemName "The Half-Zatoichi" "damage bonus" 1.5 "charge time increased" 3.0 "Attack not cancel charge" 1 "increased jump height" 2.30 "fire rate bonus" 0.8 "restore health on kill" 5 "honorbound" 0 } ItemAttributes { ItemName "Legendary Lid" "set item tint RGB" 8289918 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.5 "airblast vulnerability multiplier" 0.5 "override footstep sound set" 4 "bot custom jump particle" 1.0 "cancel falling damage" 1 } } } PointTemplates { MeleePullout // big thanks to royal for making this tech. { OnSpawnOutput { Target "!activator" Action "AddOutput" Param "targetname bigguy" Delay 0.1 } OnParentKilledOutput { Target "!activator" Action "AddOutput" Param "targetname bigguy" Delay 0 } filter_activator_tfteam { "targetname" "filter_is_blu" "Negated" "0" "TeamNum" "3" // change to 3 for blue } filter_tf_class { "targetname" "filter_isnt_spy" "Negated" "1" "tfclass" "8" } filter_multi { "targetname" "filter_melee_pullout_main" "Negated" "0" "FilterType" "0" "Filter01" "filter_is_blu" "Filter02" "filter_isnt_spy" } //sucker punches you out of his way if you attempt to bodyblock like a boss //doesn't trigger against spies so as to make their job not aid trigger_multiple { "targetname" "melee_pullout_range" "origin" "0 0 0" "mins" "-100.0 -100.0 -100.0" "maxs" "100.0 100.0 100.0" "spawnflags" "1" "filtername" "filter_melee_pullout_main" "OnStartTouch" "bigguy,$WeaponSwitchSlot,2,0,-1" "OnStartTouch" "bigguy,$AddPlayerAttribute,disable weapon switch|1,0.01,-1" "OnStartTouch" "bigguy,$RemovePlayerAttribute,disable weapon switch,0.4,-1" "OnStartTouch" "bigguy,$WeaponSwitchSlot,1,0.41,-1" "OnStartTouch" "!self,Disable,1,0.42,-1" "OnStartTouch" "!self,Enable,1,1.42,-1" } } powerup_fix { logic_timer { "targetname" "powerup_kill" "RefireTime" "0.05" "OnTimer" "item_powerup_rune,kill,,0,-1" } } corelogic //all the things we want to automatically run when the popfile reloads. Use this the most to avoid spaghetti { NoFixup 1 logic_auto { "origin" "0 0 0" "targetname" "mainrelay" "OnMapSpawn" "item_ammopack*,Kill,,0,-1" //might want to comment this out if players have limited ammo "OnMapSpawn" "move_rope,Kill,,0,-1" "OnMapSpawn" "keyframe_rope,Kill,,0,-1" "OnMapSpawn" "wave_start_relay*,AddOutput,OnTrigger spawnbarrier*:Disable:0:-1,0,-1" "OnMapSpawn" "wave_finished_relay,AddOutput,OnTrigger spawnbarrier*:Enable:0:-1,0,-1" //resupply "OnMapSpawn" "wave_start_relay,AddOutput,OnTrigger func_regenerate:Disable:0:-1,0,-1" "OnMapSpawn" "wave_finished_relay,AddOutput,OnTrigger func_regenerate:Enable:0:-1,0,-1" //hatch disable "OnMapSpawn" "wave_start_relay,AddOutput,OnTrigger func_capturezone:Disable:0:-1,0,-1" } logic_relay { "targetname" "hatch_enable" "OnTrigger" "func_capturezone,Enable,,0,0,-1" "OnTrigger" "hatch_enabled,Show,,0,0,-1" } training_annotation { "targetname" "hatch_enabled" "display_text" "The bomb is now able to be deployed!" "lifetime" "5" "origin" "1146 -126 800" } func_regenerate { "targetname" "regenerate" "associatedmodel" "locker_model" "TeamNum" "3" "mins" "-10000 -10000 -10000" "maxs" "10000 10000 10000" } prop_dynamic { "targetname" "locker_model" "model" "models/props_gameplay/resupply_locker.mdl" "solid" "6" "rendermode" "10" "renderfx" "6" "angles" "0 0 0" "origin" "0 0 0" "disableshadows" "1" } } barriers //spawn blockers, also made by jockey { NoFixup 1 func_forcefield { "disablereceiveshadows" "0" "origin" "-3520 2056 736" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "spawnbarrierA1" "parentname" "spawnbarrierA" "mins" "-320 -8 -96" "maxs" "320 8 96" "StartDisabled" "0" } func_forcefield { "disablereceiveshadows" "0" "origin" "-4216 1855 512" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "notankentrance" "mins" "-24 -128 -142" "maxs" "18 128 300" } func_forcefield { "disablereceiveshadows" "0" "origin" "-4559 1861 481" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "tankentrance_limit" "mins" "-24 -128 -142" "maxs" "18 128 300" } func_respawnroom { "targetname" "bluegate_resproom" "mins" "-400 -120 -40" "maxs" "400 200 216" "origin" "-4434 2472 640" "TeamNum" "3" } prop_dynamic { "angles" "0 180 0" "disablereceiveshadows" "1" "disableshadows" "1" "model" "models/props_urban/urban_blast_door.mdl" "modelscale" "1.2" "targetname" "spawnbarrierA" fademindist 1000 fademaxdist 1100 "origin" "-3487 2066 640" } prop_dynamic { "angles" "0 180 0" "disablereceiveshadows" "1" "disableshadows" "1" "model" "models/props_urban/urban_blast_door_frame.mdl" "modelscale" "1" "targetname" "spawn_frameA" fademindist 1000 fademaxdist 1100 "origin" "-3507 2121 640" } prop_dynamic { "angles" "0 180 0" "disablereceiveshadows" "1" "disableshadows" "1" "model" "models/props_urban/urban_blast_door_frame.mdl" "modelscale" "1" "targetname" "spawn_frameA" fademindist 1000 fademaxdist 1100 "origin" "-3529 2121 640" } prop_dynamic { "angles" "0 180 -180" "disablereceiveshadows" "1" "disableshadows" "1" "model" "models/props_urban/urban_blast_door_frame.mdl" "modelscale" "1" "targetname" "spawn_frameA" fademindist 1000 fademaxdist 1100 "origin" "-3518 2121 835" } func_forcefield { "disablereceiveshadows" "0" "origin" "-2696 1951.83 744" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "spawnbarrierB1" "parentname" "spawnbarrierB" "mins" "-104 -52 -104" "maxs" "104 52 104" "StartDisabled" "0" } prop_dynamic { "angles" "0 135 0" "disablereceiveshadows" "1" "disableshadows" "1" "model" "models/props_urban/urban_blast_door.mdl" "skin" "1" "targetname" "spawnbarrierB" fademindist 1000 fademaxdist 1100 "origin" "-2678 1942 640" } prop_dynamic { "angles" "0 135 0" "disablereceiveshadows" "1" "disableshadows" "1" "model" "models/props_urban/urban_blast_door_frame.mdl" "modelscale" "1" "targetname" "spawn_frameB" fademindist 1000 fademaxdist 1100 "origin" "-2678 1962 640" } prop_dynamic { "angles" "0 315 0" "disablereceiveshadows" "1" "disableshadows" "1" "model" "models/props_urban/urban_blast_door_frame.mdl" "modelscale" "1" "targetname" "spawn_frameB" fademindist 1000 fademaxdist 1100 "origin" "-2678 1962 640" } prop_dynamic { "model" "models/props_mvm/barrel_crate.mdl" "origin" "-2801 2123 640" "angles" "0 -65 0" "targetname" "spawn_frameB" fademindist 1000 fademaxdist 1100 "solid" "6" } prop_dynamic { "model" "models/props_mvm/barrel_crate.mdl" "origin" "-3071 2691 640" "angles" "0 -25 0" "targetname" "spawn_frameB" fademindist 1000 fademaxdist 1100 "solid" "6" } prop_dynamic { "model" "models/props_mvm/barrel_crate.mdl" "origin" "-3071 2691 740" "angles" "0 -25 0" "targetname" "spawn_frameB" fademindist 1000 fademaxdist 1100 "solid" "6" } prop_dynamic { "model" "models/props_mvm/barrel_crate.mdl" "origin" "-2801 2123 740" "angles" "0 -65 0" "targetname" "spawn_frameB" fademindist 1000 fademaxdist 1100 "solid" "6" } prop_dynamic { "model" "models/props_mvm/barrel_crate.mdl" "origin" "-2760 2093 640" "angles" "0 65 0" "targetname" "spawn_frameB" fademindist 1000 fademaxdist 1100 "solid" "6" } prop_dynamic { "model" "models/props_mvm/barrel_crate.mdl" "origin" "-2760 2093 740" "angles" "0 65 0" "targetname" "spawn_frameB" fademindist 1000 fademaxdist 1100 "solid" "6" } } station // all-in-one upgrade station template { NoFixup 1 func_upgradestation { mins "-105 -100 0" maxs "105 100 242" solid 0 } prop_dynamic { targetname upgradestation1 angles "0 0 0" DisableBoneFollowers 0 disablereceiveshadows 0 disableshadows 1 model models\props_mvm\mvm_upgrade_blu.mdl solid 0 origin "0 0 0" } func_upgradestation { mins "-100 -100 0" maxs "90 60 100" parentname upgradestation } prop_dynamic { targetname shopcollision angles "0 -90 0" DisableBoneFollowers 1 disablereceiveshadows 1 model models/props_vehicles/train_flatcar_container.mdl disableshadows 1 renderamt 0 renderfx 0 rendermode 10 CollisionGroup 5 solid 6 origin "0 0 0" } } pitfallblocker // special thanks to jockey for making this template in particular { NoFixup 1 func_forcefield { "disablereceiveshadows" "1" "origin" "-1710 -1042.5 1651.81" "renderamt" "255" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "0" "StartDisabled" "0" "targetname" "deathpitblocker" "mins" "-399 -12.5 -972" "maxs" "399 12.5 972" "TeamNum" "2" } prop_dynamic { "angles" "0 0 0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "MinAnimTime" "5" "model" "models/props_gameplay/security_fence_section01.mdl" "modelscale" "1.5" "parentname" "deathpitblocker" "renderamt" "255" "rendercolor" "255 255 255" "skin" "0" "solid" "6" "targetname" "deathpitfence" "origin" "-1901 -1038 679" } prop_dynamic { "angles" "0 0 0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "MinAnimTime" "5" "model" "models/props_gameplay/security_fence_section01.mdl" "modelscale" "1.5" "parentname" "deathpitblocker" "renderamt" "255" "rendercolor" "255 255 255" "skin" "0" "solid" "6" "targetname" "deathpitfence" "origin" "-1524 -1038 679" } } REDWIN { NoFixup 1 logic_relay //trigger this to lose { "origin" "0 0 0" "targetname" "redwin_relay" "OnTrigger" "bots_win_red,RoundWin,,0,-1" } logic_relay //trigger this to lose { "origin" "0 0 0" "targetname" "redwin_tank_relay" "OnTrigger" "bots_win_red,RoundWin,,0,-1" "OnTrigger" "tankbossred,RemoveHealth,999999,0,-1" "OnTrigger" "tankbossred,Ignite,,0,-1" "OnTrigger" "explosions1,Start,,0,-1" "OnTrigger" "explosions2,Start,,0,-1" "OnTrigger" "explosions3,Start,,0,-1" "OnTrigger" "tank_blowup,Enable,,0,-1" "OnTrigger" "explosions_sounds1,PlaySound,,0,-1" } game_round_win //do not interact with this { "origin" "0 0 0" "TeamNum" "2" "targetname" "bots_win_red" "switch_teams" "0" "force_map_reset" "1" "classname" "game_round_win" } trigger_hurt { "targetname" "tank_blowup" "origin" "-3144 1693 515" "angles" "-90 0 0" "mins" "-640 -320 -400" "maxs" "640 320 400" "damagetype" "1048576" "damage" "99999" "StartDisabled" "1" "spawnflags" "64" } ambient_generic { "targetname" "explosions_sounds1" "message" "misc\doomsday_missile_explosion.wav" "health" "10" "radius" "69420" "spawnflags" "49" } ambient_generic { "targetname" "explosions_sounds1" "message" "misc\doomsday_missile_explosion.wav" "health" "10" "radius" "69420" "spawnflags" "49" } info_particle_system { "targetname" "explosions1" "origin" "-3144 1693 515" "effect_name" "fluidSmokeExpl_ring_mvm" } info_particle_system { "targetname" "explosions1" "origin" "-3008 2034 697" "effect_name" "fluidSmokeExpl_ring_mvm" } info_particle_system { "targetname" "explosions1" "origin" "-3196 2047 706" "effect_name" "fluidSmokeExpl_ring_mvm" } info_particle_system { "targetname" "explosions2" "origin" "-3422 1967 514" "effect_name" "fluidSmokeExpl_ring_mvm" } info_particle_system { "targetname" "explosions2" "origin" "-2945 1916 523" "effect_name" "fluidSmokeExpl_ring_mvm" } info_particle_system { "targetname" "explosions3" "origin" "-3293 2047 643" "effect_name" "fluidSmokeExpl_ring_mvm" } info_particle_system { "targetname" "explosions3" "origin" "-2818 2047 552" "effect_name" "fluidSmokeExpl_ring_mvm" } } fixupspawn { NoFixup 1 prop_dynamic { "model" "models/props_mvm/mine_rocks05.mdl" "origin" "-4200 2166 725" "angles" "180 -265 0" fademindist 1000 fademaxdist 1100 "solid" "6" } prop_dynamic { "model" "models/props_mvm/mine_rocks05.mdl" "origin" "-4345 2166 725" "angles" "180 -270 0" fademindist 1000 fademaxdist 1100 "solid" "6" } prop_dynamic { "model" "models/props_mvm/mine_rocks05.mdl" "origin" "-4505 2196 725" "angles" "180 -285 0" fademindist 1000 fademaxdist 1100 "solid" "6" } prop_dynamic { "model" "models/props_mvm/mine_rocks02.mdl" "origin" "-4342 2565 910" "angles" "0 180 15" fademindist 1000 fademaxdist 1100 "solid" "0" } prop_dynamic { "model" "models/props_mvm/mine_rocks02.mdl" "origin" "-4342 2365 910" "angles" "0 180 -15" fademindist 1000 fademaxdist 1100 "solid" "0" } prop_dynamic { "model" "models/props_mvm/mine_rocks02.mdl" "origin" "-4500 2565 910" "angles" "0 180 15" fademindist 1000 fademaxdist 1100 "solid" "0" } prop_dynamic { "model" "models/props_mvm/mine_rocks02.mdl" "origin" "-4500 2365 910" "angles" "0 180 -15" fademindist 1000 fademaxdist 1100 "solid" "0" } } textualtimer // special thanks to lite. { OnSpawnOutput { Param 5 // change the value for minutes Target minutehand Action SetValue } OnSpawnOutput { Param 60 // change the value for seconds Target secondhand Action SetValue } logic_relay { "targetname" "8minutetimer" "ontrigger" "minutehand,SetValue,7,0,-1" "ontrigger" "secondhand,SetValue,60,0,-1" } logic_relay { "targetname" "7minutetimer" "ontrigger" "minutehand,SetValue,6,0,-1" "ontrigger" "secondhand,SetValue,60,0,-1" } logic_relay { "targetname" "pause_timer" "ontrigger" "realtimer,cancelpending,,0,-1" "ontrigger" "loserelay,cancelpending,,0,-1" } logic_relay { "targetname" "resume_timer" "ontrigger" "realtimer,trigger,,0,-1" } logic_relay { "targetname" "loserelay" "startdisabled" "1" "ontrigger" "bots_win_red,RoundWin,,2,-1" "ontrigger" "realtimer,cancelpending,,2,-1" "onspawn" "wave_start_relay,addoutput,ontrigger realtimer:trigger::0:-1,0,-1" "onspawn" "wave_finish*,addoutput,ontrigger realtimer:cancelpending::0:-1,0,-1" "onspawn" "wave_finish*,addoutput,ontrigger loserelay:cancelpending::0:-1,0,-1" } NoFixup 1 math_counter { "targetname" "minutehand" "max" "9999" "outvalue" "timerformat,$setkey$case01,,0,-1" "onhitmin" "loserelay,enable,,1,-1" } math_counter { "targetname" "secondhand" "max" "60" "outvalue" "timerformat,$setkey$case02,,0,-1" "outvalue" "zerocompare,setvaluecompare,,0,-1" "onhitmin" "loserelay,trigger,,0,-1" "onhitmin" "!self,setvalue,60,1,-1" "onhitmin" "minutehand,subtract,1,1,-1" } logic_compare { "targetname" "zerocompare" "comparevalue" "9" "onequalto" "timerformat,$setkey$case16,%:0%,0,-1" "ongreaterthan" "timerformat,$setkey$case16,%:%,0,-1" } logic_case { "targetname" "timerformat" "case16" "%:%" "ondefault" "timertext,$setkey$message,,0,-1" "ondefault" "timertext,display,0,0,-1" } game_text { "targetname" "timertext" "color" "65 155 255" "holdtime" "2" "spawnflags" "1" "x" "0.7" "y" "0.9" } logic_relay { "targetname" "realtimer" "spawnflags" "2" "ontrigger" "timerformat,$format,,0.01,-1" "ontrigger" "secondhand,subtract,1,0,-1" "ontrigger" "!self,trigger,,1,-1" } game_round_win { "teamnum" "2" "targetname" "bots_win_red" "force_map_reset" "1" } } shakers { NoFixup 1 env_shake { "amplitude" "200" "frequency" "160" "duration" "2" "radius" "99999" "spawnflags" "5" "targetname" "shaker_big" } NoFixup 1 env_shake { "amplitude" "128" "frequency" "80" "duration" "1" "radius" "99999" "spawnflags" "5" "targetname" "shaker_regular" } } music { NoFixup 1 ambient_generic { "targetname" "w3_music" "message" "#galois\cheshyre_whistler.mp3" "health" "10" "radius" "69420" "spawnflags" "49" } ambient_generic { "targetname" "w4_music" "message" "#galois\cheshyre_the_pied_piper.mp3" "health" "10" "radius" "69420" "spawnflags" "17" } ambient_generic { "targetname" "w5_music" "message" "#galois\locknar_brimstone.mp3" "health" "10" "radius" "69420" "spawnflags" "49" } logic_relay { "targetname" "cheshyre_whistler" "OnTrigger" "w3_music,PlaySound,,0,-1" } logic_relay { "targetname" "cheshyre_the_pied_piper" "OnTrigger" "w4_music,PlaySound,,0,-1" } logic_relay { "targetname" "locknar_brimstone" "OnTrigger" "w4_music,StopSound,,0,-1" "OnTrigger" "w5_music,PlaySound,,0,-1" } } barriers_front // Puts barriers at the front. { NoFixup 1 logic_relay { "targetname" "front_barrier_remover" "OnTrigger" "frontbarrier1,disable,,0,-1" "OnTrigger" "frontbarrier2,disable,,0,-1" "OnTrigger" "frontbarrier3,disable,,0,-1" "OnTrigger" "frontbarrier4,disable,,0,-1" "OnTrigger" "frontbarrier_block,disable,,0,-1" "OnTrigger" "front_barriers_lifted,show,,0,-1" } prop_dynamic { "angles" "0 -90 0" "disablereceiveshadows" "1" "disableshadows" "1" "model" "models/props_urban/urban_blast_door.mdl" "skin" "1" "targetname" "frontbarrier1" "origin" "-2407 580 512" } prop_dynamic { "angles" "0 45 0" "disablereceiveshadows" "1" "disableshadows" "1" "model" "models/props_vehicles/train_flatcar_container.mdl" "skin" "1" "modelscale" "1.4" "targetname" "frontbarrier2" "origin" "-2559 -379 680" } prop_dynamic { "angles" "0 -135 0" "disablereceiveshadows" "1" "disableshadows" "1" "model" "models/props_vehicles/train_flatcar_container.mdl" "skin" "1" "modelscale" "1.4" "targetname" "frontbarrier2" "origin" "-2559 -379 875" } prop_dynamic { "angles" "0 90 0" "disablereceiveshadows" "1" "disableshadows" "1" "model" "models/props_mvm/reversemvm_redwall_256x288.mdl" "targetname" "frontbarrier3" "origin" "-2554 1151 660" } prop_dynamic { "angles" "0 -90 0" "disablereceiveshadows" "1" "disableshadows" "1" "model" "models/props_mvm/reversemvm_redwall_256x288.mdl" "targetname" "frontbarrier3" "origin" "-2554 1151 660" } prop_dynamic { "angles" "0 0 0" "disablereceiveshadows" "1" "disableshadows" "1" "model" "models/props_mvm/reversemvm_redwall_256x288.mdl" "targetname" "frontbarrier4" "origin" "-2560 903 916" } prop_dynamic { "angles" "0 180 0" "disablereceiveshadows" "1" "disableshadows" "1" "model" "models/props_mvm/reversemvm_redwall_256x288.mdl" "targetname" "frontbarrier4" "origin" "-2560 903 916" } func_nobuild { "targetname" "frontbarrier_block" "parentname" "frontbarrier1" "origin" "-2247 580 612" "mins" "-156 -156 -100" "maxs" "156 156 100" "AllowTeleporters" "0" "AllowSentry" "0" "AllowDispenser" "0" } func_forcefield { "disablereceiveshadows" "0" "origin" "-2247 580 612" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "frontbarrier_block" "parentname" "frontbarrier1" "mins" "-156 -156 -100" "maxs" "156 156 100" "StartDisabled" "0" } func_nobuild { "targetname" "frontbarrier_block" "origin" "-2540 -379 680" "parentname" "frontbarrier2" "mins" "-220 -220 -500" "maxs" "220 220 500" "AllowTeleporters" "0" "AllowSentry" "0" "AllowDispenser" "0" } func_forcefield { "disablereceiveshadows" "0" "origin" "-2540 -379 680" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "frontbarrier_block" "parentname" "frontbarrier2" "mins" "-220 -220 -500" "maxs" "220 220 500" "StartDisabled" "0" } func_nobuild { "targetname" "frontbarrier_block" "parentname" "frontbarrier3" "origin" "-2420 1151 660" "mins" "-168 -168 -100" "maxs" "168 168 100" "AllowTeleporters" "0" "AllowSentry" "0" "AllowDispenser" "0" } func_forcefield { "disablereceiveshadows" "0" "origin" "-2420 1151 660" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "frontbarrier_block" "parentname" "frontbarrier3" "mins" "-128 -128 -100" "maxs" "128 128 100" "StartDisabled" "0" } func_nobuild { "targetname" "frontbarrier_block" "origin" "-2560 1010 916" "parentname" "frontbarrier4" "mins" "-168 -168 -100" "maxs" "168 168 100" "AllowTeleporters" "0" "AllowSentry" "0" "AllowDispenser" "0" } func_forcefield { "disablereceiveshadows" "0" "origin" "-2560 1010 916" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "frontbarrier_block" "parentname" "frontbarrier4" "mins" "-128 -128 -100" "maxs" "128 128 100" "StartDisabled" "0" } training_annotation { "targetname" "front_barriers_lifted" "display_text" "The barriers have been lifted!" "lifetime" "5" "origin" "-1532 -125 768" } training_annotation { "targetname" "front_hint" "display_text" "The barriers will be lifted in 10 seconds!" "lifetime" "5" "origin" "-2775 -168 704" } } barriers_flank // use this to block the flank routes at spawn for a bit. { NoFixup 1 logic_relay { "targetname" "flank_barrier_remover" "OnTrigger" "frontbarrier3,disable,,0,-1" "OnTrigger" "frontbarrier4,disable,,0,-1" "OnTrigger" "frontbarrier_block,disable,,0,-1" } prop_dynamic { "angles" "0 90 0" "disablereceiveshadows" "1" "disableshadows" "1" "model" "models/props_mvm/reversemvm_redwall_256x288.mdl" "targetname" "frontbarrier3" "origin" "-2554 1151 660" } prop_dynamic { "angles" "0 -90 0" "disablereceiveshadows" "1" "disableshadows" "1" "model" "models/props_mvm/reversemvm_redwall_256x288.mdl" "targetname" "frontbarrier3" "origin" "-2554 1151 660" } prop_dynamic { "angles" "0 0 0" "disablereceiveshadows" "1" "disableshadows" "1" "model" "models/props_mvm/reversemvm_redwall_256x288.mdl" "targetname" "frontbarrier4" "origin" "-2560 903 916" } prop_dynamic { "angles" "0 180 0" "disablereceiveshadows" "1" "disableshadows" "1" "model" "models/props_mvm/reversemvm_redwall_256x288.mdl" "targetname" "frontbarrier4" "origin" "-2560 903 916" } func_nobuild { "targetname" "frontbarrier_block" "parentname" "frontbarrier3" "origin" "-2420 1151 660" "mins" "-168 -168 -100" "maxs" "168 168 100" "AllowTeleporters" "0" "AllowSentry" "0" "AllowDispenser" "0" } func_forcefield { "disablereceiveshadows" "0" "origin" "-2420 1151 660" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "frontbarrier_block" "parentname" "frontbarrier3" "mins" "-128 -128 -100" "maxs" "128 128 100" "StartDisabled" "0" } func_nobuild { "targetname" "frontbarrier_block" "origin" "-2560 1010 916" "parentname" "frontbarrier4" "mins" "-168 -168 -100" "maxs" "168 168 100" "AllowTeleporters" "0" "AllowSentry" "0" "AllowDispenser" "0" } func_forcefield { "disablereceiveshadows" "0" "origin" "-2560 1010 916" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "frontbarrier_block" "parentname" "frontbarrier4" "mins" "-128 -128 -100" "maxs" "128 128 100" "StartDisabled" "0" } } barriers_hatch // blocks away hatch. { NoFixup 1 logic_relay { "targetname" "hatch_blocker_remover" "OnTrigger" "midbarrier1,disable,,0,-1" "OnTrigger" "midbarrier2,disable,,0,-1" "OnTrigger" "midbarrier_block,disable,,0,-1" "OnTrigger" "midbarrier_lifted,show,,0,-1" } logic_relay { "targetname" "midbarrier_hint" "OnTrigger" "midbarrier_notice1,show,,0,-1" "OnTrigger" "midbarrier_notice2,show,,5,-1" } prop_dynamic { "angles" "0 90 0" "disablereceiveshadows" "1" "disableshadows" "1" "model" "models/props_mvm/reversemvm_redwall_256x288.mdl" "targetname" "midbarrier1" "modelscale" "1.45" "origin" "-631 -130 744" } prop_dynamic { "angles" "0 90 0" "disablereceiveshadows" "1" "disableshadows" "1" "model" "models/props_mvm/reversemvm_redwall_256x288.mdl" "targetname" "midbarrier2" "modelscale" "1.65" "origin" "-638 1010 665" } training_annotation { "targetname" "midbarrier_lifted" "display_text" "The barriers have been lifted!" "lifetime" "5" "origin" "768 -125 832" } training_annotation { "targetname" "midbarrier_notice1" "display_text" "Seems like the path to the hatch is blocked." "lifetime" "5" "origin" "-763 -123 704" } training_annotation { "targetname" "midbarrier_notice2" "display_text" "Kill everything in this area!" "lifetime" "5" "origin" "-763 -123 704" } func_nobuild { "targetname" "midbarrier_block" "origin" "-371 -123 744" "parentname" "midbarrier1" "mins" "-275 -275 -525" "maxs" "275 275 525" "AllowTeleporters" "0" "AllowSentry" "0" "AllowDispenser" "0" } func_forcefield { "disablereceiveshadows" "0" "origin" "-371 -123 744" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "midbarrier_block" "parentname" "midbarrier1" "mins" "-250 -250 -500" "maxs" "250 250 500" "StartDisabled" "0" } func_nobuild { "targetname" "midbarrier_block" "origin" "-401 1010 704" "parentname" "midbarrier2" "mins" "-275 -275 -525" "maxs" "275 275 525" "AllowTeleporters" "0" "AllowSentry" "0" "AllowDispenser" "0" } func_forcefield { "disablereceiveshadows" "0" "origin" "-401 1010 704" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "midbarrier_block" "parentname" "midbarrier2" "mins" "-250 -250 -500" "maxs" "250 250 500" "StartDisabled" "0" } } markers { NoFixup 1 prop_dynamic { "targetname" spawnpoint_hologram "model" models/props_mvm/robot_spawnpoint.mdl "disableshadows" 1 "origin" "-3462 818 640" "angles" "0 90 0" fademindist 1500 fademaxdist 1600 } prop_dynamic { "targetname" spawnpoint_hologram "model" models/props_mvm/robot_spawnpoint.mdl "disableshadows" 1 "origin" "-2162 1055 640" "angles" "0 180 0" fademindist 1500 fademaxdist 1600 } prop_dynamic { "targetname" spawnpoint_hologram "model" models/props_mvm/robot_spawnpoint.mdl "disableshadows" 1 "origin" "-4178 117 704" "angles" "0 0 0" fademindist 1500 fademaxdist 1600 } prop_dynamic { "targetname" spawnpoint_hologram "model" models/props_mvm/robot_spawnpoint.mdl "disableshadows" 1 "origin" "-3580 -308 704" "angles" "0 -90 0" fademindist 1500 fademaxdist 1600 } prop_dynamic { "targetname" spawnpoint_hologram "model" models/props_mvm/robot_spawnpoint.mdl "disableshadows" 1 "origin" "-702 -815 704" "angles" "0 0 0" fademindist 1500 fademaxdist 1600 } prop_dynamic { "targetname" spawnpoint_hologram "model" models/props_mvm/robot_spawnpoint.mdl "disableshadows" 1 "origin" "-1302 1112 704" "angles" "0 0 0" fademindist 1500 fademaxdist 1600 } prop_dynamic { "targetname" spawnpoint_hologram "model" models/props_mvm/robot_spawnpoint.mdl "disableshadows" 1 "origin" "-1463 -126 768" "modelscale" "1.5" "angles" "0 0 0" fademindist 1500 fademaxdist 1600 } prop_dynamic { "targetname" spawnpoint_hologram "model" models/props_mvm/robot_spawnpoint.mdl "disableshadows" 1 "origin" "-1715 1049 896" "angles" "0 270 0" fademindist 1500 fademaxdist 1600 } prop_dynamic { "targetname" spawnpoint_hologram "model" models/props_mvm/robot_spawnpoint.mdl "disableshadows" 1 "origin" "20 -120 704" "angles" "0 180 0" fademindist 1500 fademaxdist 1600 } prop_dynamic { "targetname" spawnpoint_hologram "model" models/props_mvm/robot_spawnpoint.mdl "disableshadows" 1 "origin" "-365 1023 712" "angles" "10 180 0" fademindist 1500 fademaxdist 1600 } prop_dynamic { "targetname" spawnpoint_hologram "model" models/props_mvm/robot_spawnpoint.mdl "disableshadows" 1 "origin" "409 -129 832" "modelscale" "1.5" "angles" "0 180 0" fademindist 1500 fademaxdist 1600 } prop_dynamic { "targetname" spawnpoint_hologram "model" models/props_mvm/robot_spawnpoint.mdl "disableshadows" 1 "origin" "1886 161 896" "modelscale" "1.5" "angles" "0 180 0" fademindist 1500 fademaxdist 1600 } prop_dynamic { "targetname" spawnpoint_hologram "model" models/props_mvm/robot_spawnpoint.mdl "disableshadows" 1 "origin" "1818 -542 896" "modelscale" "1.5" "angles" "0 180 0" fademindist 1500 fademaxdist 1600 } } gibbie { NoFixup 1 filter_tf_bot_has_tag { "Negated" "0" "require_all_tags" "1" "tags" "bot_gibbie" //add this tag to the bot you want to teleport "targetname" "giddyup" } trigger_teleport { "origin" "408 -130 832" //locate this where the bot will spawn "mins" "-256 -256 -256" "maxs" "256 256 256" "spawnflags" "1" "filtername" "giddyup" "target" "stomp_tele" //Bombname here } } stomponme { NoFixup 1 info_target { "targetname" "stomp_tele" "origin" "0 0 800" } } BigMadGuy { NoFixup 1 logic_relay { "targetname" "hepissed" "ontrigger" "pause_timer,Trigger,,0,-1" "ontrigger" "owieithurts,PlaySound,,0,-1" "ontrigger" "fuckedwiththis,PlaySound,,3,-1" "ontrigger" "SENATOR,PlaySound,,6.5,-1" "ontrigger" "shaker_big,StartShake,,5,-1" "ontrigger" "uberactivatetruly,PlaySound,,5.5,-1" "ontrigger" "senator_fade,Fade,,5.5,-1" "ontrigger" "resume_timer,Trigger,,5.5,-1" } ambient_generic { "targetname" "owieithurts" "message" "vo/mvm/mght/heavy_mvm_m_painsevere03.mp3" "health" "10" "radius" "69420" "spawnflags" "49" } ambient_generic { "targetname" "fuckedwiththis" "message" "vo/mvm/mght/heavy_mvm_m_revenge04.mp3" "health" "10" "radius" "69420" "spawnflags" "49" } ambient_generic { "targetname" "SENATOR" "message" "vo/mvm/mght/heavy_mvm_m_specialcompleted06.mp3" "health" "10" "radius" "69420" "spawnflags" "49" } ambient_generic { "targetname" "uberactivatetruly" "message" "items/powerup_pickup_uber.wav" "health" "10" "radius" "69420" "spawnflags" "49" } env_fade { "targetname" "senator_fade" "duration" "1" "renderamt" "255" "rendercolor" "255 140 142" // soft red. "spawnflags" "1" } } } ExtraTankPath { Name redtankpath Node "-75 -140 704" Node "-668 -140 704" Node "-847 -15 704" Node "-847 419 704" Node "-1093 561 704" Node "-2885 561 606" Node "-3057 671 635" Node "-3144 878 594" Node "-3144 1663 515" } SpawnTemplate corelogic SpawnTemplate REDWIN SpawnTemplate barriers SpawnTemplate fixupspawn SpawnTemplate pitfallblocker SpawnTemplate textualtimer SpawnTemplate shakers SpawnTemplate markers SpawnTemplate music PrecacheModel "models/props_mvm/mvm_upgrade_blu.mdl" PrecacheModel "models/props_mvm/reversemvm_redwall_256x288.mdl" PrecacheModel "models/props_mvm/reversemvm_redwall_640x418.mdl" SpawnTemplate { Name station Origin "-4248 2669 641" Angles "0 -90 0" } SpawnTemplate { Name station Origin "-3550 2680 646" Angles "0 -90 0" } SpawnTemplate { Name station Origin "-2441 1963 645" Angles "0 135 -2.5" } //ExtraSpawnPoint //{ // Name bluegiants // TeamNum 2 // X -3471 // Y 2380 // Z 640 //} ExtraSpawnPoint { Name hatchspawn TeamNum 2 X 1149 Y -130 Z 800 } ExtraSpawnPoint // made for when the wave first starts, spawning a coule of bots to keep you busy. Spawns bots behind the pillar { Name initial_front1 TeamNum 2 X -3462 Y 818 Z 640 } ExtraSpawnPoint // made for when the wave first starts, spawning a coule of bots to keep you busy. Spawns bots around the corner to the left. { Name initial_front2 TeamNum 2 X -2162 Y 1055 Z 640 } ExtraSpawnPoint // made for when the wave first starts, spawning a coule of bots to keep you busy. Spawns bots around the mid-way upgrade station. { Name initial_front3 TeamNum 2 X -4346 Y 87 Z 704 } ExtraSpawnPoint // made for when the wave first starts, spawning a coule of bots to keep you busy. Spawns bots behind the fuel tank. { Name initial_front4 TeamNum 2 X -3459 Y -172 Z 704 } ExtraSpawnPoint // spawns behind the cargo. { Name front1 TeamNum 2 X -678 Y -875 Z 704 } ExtraSpawnPoint // spawns near the boxes. { Name front2 TeamNum 2 X -1302 Y 1112 Z 704 } ExtraSpawnPoint // spawns on helipad { Name front3 TeamNum 2 X -1540 Y -127 Z 768 } ExtraSpawnPoint // spawns in spytech room (the one with the big number 2 on it) { Name front4 TeamNum 2 X -1702 Y 1182 Z 896 } ExtraSpawnPoint // spawns at hatch entrance. { Name mid1 TeamNum 2 X -45 Y -120 Z 704 } ExtraSpawnPoint // spawns at flank. { Name mid2 TeamNum 2 X -450 Y 850 Z 718 } ExtraSpawnPoint // spawns at the top of the stairs near hatch. { Name mid3 TeamNum 2 X 347 Y -129 Z 832 } ExtraSpawnPoint // spawns near spawn, used for giants that spawn in constantly. { Name hatchgiant TeamNum 2 X 1853 Y 166 Z 896 } ExtraSpawnPoint { Name hatchgiant TeamNum 2 X 1853 Y -607 Z 896 } // Wave 1/5 ($1000) // Hatch Guardian : Giant Burst Fire Demoman (Critboosted) // Endless Hatch Support : Faulty Machines // Exit out of front is blocked off? : Yes // 2 Giant Pyros // 1 Giant Rapid-Fire Soldier // 24 Heavyweight Champs, first 12 with big heals // 2 Giant Pyros // 30 Force-a-Nature Scouts (THE WEAPON SWAP) // 24 Soldiers // 2 Giant Soldiers (Type 2) Wave { SpawnTemplate barriers_front StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } Explanation { Line "{00FF26}====[ {yellow}NOTICE{00FF26} ]====" Line "{00FF26}You cannot pick up the bomb, let your brothers in arms take care of it." Line "{00FF26}The simulation will be {red}TERMINATED{00FF26} if it lasts over 6 minutes!" Line "{00FF26}Extra support will be granted when the giant soldiers are dealt with." } WaveSpawn { FirstSpawnOutput { Target shaker_big Action StartShake } FirstSpawnWarningSound physics\metal\metal_grate_impact_hard3.wav } WaveSpawn { TotalCount 2 MaxActive 1 SpawnCount 2 Support 1 TFBot { Class scout ClassIcon blu2_lite } } WaveSpawn { TotalCount 8 MaxActive 2 SpawnCount 2 Where spawnbot Support 1 WaitBetweenSpawns 10 TFBot { Template T_TFBot_Soldier_Extended_Concheror AlwaysGlow 1 // Bomb Carriers } } WaveSpawn { TotalCount 4 MaxActive 1 SpawnCount 1 Where spawnbot Support 1 WaitBetweenSpawns 10 TFBot { Template T_TFBot_Heavyweapons_Fist // needs to be a tanky guy Attributes DisableDodge AlwaysGlow 1 // Bomb Carriers } } WaveSpawn { TotalCount 1 MaxActive 1 SpawnCount 1 Where spawnbot_mission_sentrybuster Support Limited WaitForAllDead "hatch_giants" TFBot { Template T_TFBot_Giant_Soldier_Extended_Battalion Action Mobber } } WaveSpawn { TotalCount 1 MaxActive 1 SpawnCount 1 Where spawnbot_mission_sniper Support Limited WaitForAllDead "hatch_giants" TFBot { Template T_TFBot_Giant_Soldier_Extended_Battalion Action Mobber } } WaveSpawn { TotalCount 2 MaxActive 1 SpawnCount 2 Support 1 TFBot { Class scout ClassIcon red2_lite } } WaveSpawn { Name "front_initial2" TotalCount 2 MaxActive 2 SpawnCount 1 Where initial_front1 WaitBetweenSpawns 10 TotalCurrency 75 TFBot { Template T_TFBot_Giant_Pyro Attributes DisableDodge Action Mobber AddCond { Index 43 } Item "The U-clank-a" CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "damage force reduction" 0 airblast_destroy_projectile 1 } } } WaveSpawn { Name "front_initial" TotalCount 1 MaxActive 1 SpawnCount 1 Where initial_front4 WaitForAllSpawned "front_initial2" WaitBeforeStarting 10 TotalCurrency 25 TFBot { Template T_TFBot_Giant_Soldier_Spammer Attributes DisableDodge Action Mobber AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "damage force reduction" 0 } } } WaveSpawn { Name "front_initial1" TotalCount 24 SpawnCount 2 MaxActive 12 Where initial_front2 Where initial_front3 Where initial_front4 WaitBetweenSpawns 2.5 TotalCurrency 150 Squad { TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ ClassIcon heavy_champ_red Skill Hard Action Mobber Attributes DisableDodge AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 } } TFBot { Template T_TFBot_Medic_BigHeal Attributes IgnoreFlag AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 } } } } WaveSpawn { Name "front_initial" TotalCount 12 SpawnCount 2 MaxActive 10 Where initial_front2 Where initial_front3 Where initial_front4 WaitBetweenSpawns 2.5 TotalCurrency 150 WaitForAllSpawned "front_initial1" TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ ClassIcon heavy_champ_red Skill Hard Attributes DisableDodge Action Mobber AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 } } } WaveSpawn { Name "mid" TotalCount 2 MaxActive 2 SpawnCount 1 StartWaveOutput { Target front_barrier_remover Action Trigger } Where front3 WaitBeforeStarting 5 WaitBetweenSpawns 15 TotalCurrency 100 WaitForAllDead "front_initial" TFBot { Template T_TFBot_Giant_Pyro Attributes DisableDodge Action Mobber AddCond { Index 43 } Item "The U-clank-a" CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 airblast_destroy_projectile 1 "damage force reduction" 0 } } } WaveSpawn { Name "mid" TotalCount 30 MaxActive 10 SpawnCount 2 FirstSpawnOutput { Target shaker_big Action StartShake } FirstSpawnWarningSound physics\metal\metal_grate_impact_hard2.wav Where mid1 Where mid2 WaitBetweenSpawns 1.75 TotalCurrency 100 WaitForAllDead front_initial TFBot { Class Scout Skill Normal ClassIcon scout_fan Attributes DisableDodge Action Mobber AddCond { Index 43 } Item "The Force-a-Nature" Item "The Bolt Boy" CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 } } } WaveSpawn { Name "mid" TotalCount 24 MaxActive 12 SpawnCount 6 Where mid1 Where mid2 WaitBeforeStarting 5 WaitBetweenSpawns 5 TotalCurrency 100 WaitForAllDead front_initial RandomChoice { TFBot { Class Soldier Skill Normal Attributes DisableDodge //Action Mobber // protect bomb. AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "cannot pick up intelligence" 1 } } TFBot { Class Soldier Skill Normal Attributes DisableDodge Action Mobber AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 } } TFBot { Class Soldier Skill Normal Attributes DisableDodge Action Mobber AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 } } } } WaveSpawn { WaitForAllDead "hatch_support" WaitBeforeStarting 5000 } WaveSpawn { Name "hatch_support" TotalCount 999 MaxActive 12 SpawnCount 1 Support 1 Where "" WaitBetweenSpawns 0.75 WaitBeforeStarting 5 WaitForAllSpawned "mid" RandomChoice { TFBot { Class Soldier ClassIcon soldier_gib_lite Name "Faulty Machine" Health 150 Action Mobber AddCond { Index 43 } Attributes DisableDodge WeaponRestrictions MeleeOnly UseCustomModel models/bots/soldier/bot_soldier_gibby.mdl Item TF_WEAPON_FISTS CharacterAttributes { "voice pitch scale" 0 "move speed bonus" 1.25 "damage penalty" 0.5 "crit mod disabled" 0 } DeathSound "=90|mvm/physics/robo_impact_bullet01.wav" } TFBot { Class Soldier ClassIcon soldier_gib_lite Name "Faulty Machine" Health 150 Action Mobber AddCond { Index 43 } Attributes DisableDodge WeaponRestrictions MeleeOnly UseCustomModel models/bots/soldier/bot_soldier_gibby.mdl CharacterAttributes { "voice pitch scale" 0 "crit mod disabled" 0 } DeathSound "=90|mvm/physics/robo_impact_bullet02.wav" } TFBot { Class Soldier ClassIcon soldier_gib_lite Name "Faulty Machine" Health 150 Action Mobber AddCond { Index 43 } Attributes DisableDodge WeaponRestrictions MeleeOnly UseCustomModel models/bots/soldier/bot_soldier_gibby.mdl Item "The Equalizer" CharacterAttributes { "voice pitch scale" 0 "damage bonus" 1.25 "crit mod disabled" 0 } DeathSound "=90|mvm/physics/robo_impact_bullet03.wav" } TFBot { Class Soldier ClassIcon soldier_gib_lite Name "Faulty Machine" Health 150 Action Mobber AddCond { Index 43 } Attributes DisableDodge WeaponRestrictions MeleeOnly UseCustomModel models/bots/soldier/bot_soldier_gibby.mdl Item "The Escape Plan" CharacterAttributes { "voice pitch scale" 0 "crit mod disabled" 0 } DeathSound "=90|mvm/physics/robo_impact_bullet04.wav" } TFBot { Class Soldier ClassIcon soldier_gib_lite Name "Faulty Machine" Health 150 Action Mobber AddCond { Index 43 } Attributes DisableDodge WeaponRestrictions SecondaryOnly UseCustomModel models/bots/soldier/bot_soldier_gibby.mdl CharacterAttributes { "voice pitch scale" 0 "move speed bonus" 1.25 "crit mod disabled" 0 } DeathSound "=90|mvm/physics/robo_impact_bullet01.wav" } } } WaveSpawn { Name "hatch_giants" TotalCount 2 MaxActive 2 SpawnCount 1 Where hatchgiant WaitBetweenSpawns 1 WaitForAllSpawned "mid" TotalCurrency 150 TFBot { Template T_TFBot_Giant_Soldier_Spammer Attributes DisableDodge Action Mobber AddCond { Index 43 } AlwaysGlow 1 // they tend to wander off sometimes Item "Hazard Headgear" InterruptAction { Delay 0.1 Repeats 1 Duration 10 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "fire rate bonus" 0.6 "voice pitch scale" 0 "damage force reduction" 0 } } } WaveSpawn { Name "hatchguard" TotalCount 1 MaxActive 1 SpawnCount 1 DoneOutput { Target hatch_enable Action Trigger } Where hatchspawn TotalCurrency 150 TFBot { Template T_TFBot_Giant_Demo_Burst ClassIcon demo_burst_red Attributes IgnoreFlag //Attributes AlwaysCrit Attributes DisableDodge CustomEyeGlowColor "255 0 0" Item "Scotch Bonnet" NoPushaway 1 AddCond { Index 43 } InterruptAction { Target "1149 -130 800" Delay 1 Duration 2 Repeats 1 } CharacterAttributes { "force distribute currency on death" 1 "damage force reduction" 0.01 "airblast vulnerability multiplier" 0 "voice pitch scale" 0 "crit mod disabled" 0 "airblast vertical vulnerability multiplier" 0 } } } } // Wave 2/5 ($2000) // Hatch Guardian : Comfy Nukesalot (15k HP) // Hatch Support : Panic Attack & Champ Heavies // Exit out of front is blocked off? : No // 2 Giant Burst-Fire Demomen // 25 Bat Scouts // 4 Giant Rapid-Fire Soldiers // 24 Steel Gauntlets // 2 Giant Heavies with 4 Uber Medics each // 32 Shotgun Heavies Wave { SpawnTemplate barriers_flank StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } Explanation { Line "{00FF26}====[ {yellow}NOTICE{00FF26} ]====" Line "{00FF26}You should watch where you place your teleporter exits, if you place them too close to a wall or any other object a {red}GIANT{00FF26} ally will get stuck." } WaveSpawn { FirstSpawnOutput { Target shaker_big Action StartShake } FirstSpawnWarningSound physics\metal\metal_grate_impact_hard3.wav } WaveSpawn { FirstSpawnOutput { Target flank_barrier_remover Action Trigger } WaitBeforeStarting 30 } WaveSpawn { TotalCount 2 MaxActive 1 SpawnCount 2 Support 1 TFBot { Class scout ClassIcon blu2_lite } } WaveSpawn { TotalCount 4 MaxActive 2 SpawnCount 1 Support 1 Where spawnbot_mission_sniper WaitBetweenSpawns 10 TFBot { Template T_TFBot_Giant_Pyro_Flare_Spammer AlwaysGlow 1 } } WaveSpawn { Name "directs" TotalCount 12 MaxActive 6 SpawnCount 3 Where spawnbot Support Limited WaitBetweenSpawns 10 TFBot { Class Soldier Name "Direct Hit Soldier" ClassIcon soldier_directhit_lite Skill Hard Action Mobber Item "The Direct Hit" } } WaveSpawn { Name "scouts" TotalCount 12 MaxActive 6 SpawnCount 1 Where spawnbot Support 1 WaitBeforeStarting 15 WaitBetweenSpawns 1 TFBot { Class Scout Name "Bat Scout" ClassIcon scout_bat_nys_giant Skill Hard WeaponRestrictions MeleeOnly AlwaysGlow 1 } } WaveSpawn { TotalCount 3 MaxActive 3 SpawnCount 1 Support Limited Where spawnbot_mission_sniper WaitForAllDead "hatch" WaitBeforeStarting 5 WaitBetweenSpawns 5 TFBot { Template T_TFBot_Giant_Soldier_Crit AlwaysGlow 1 } } WaveSpawn { TotalCount 2 MaxActive 1 SpawnCount 2 Support 1 TFBot { Class scout ClassIcon red2_lite } } WaveSpawn { TotalCount 2 MaxActive 2 SpawnCount 2 Where initial_front1 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Demo_Burst ClassIcon demo_burst_red Attributes DisableDodge Action Mobber AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 "damage force reduction" 0 } } } WaveSpawn { TotalCount 25 MaxActive 10 SpawnCount 5 Where initial_front2 Where initial_front3 TotalCurrency 100 WaitBetweenSpawns 5 TFBot { Class Scout ClassIcon scout_bat_nys WeaponRestrictions MeleeOnly Action Mobber AddCond { Index 43 } Attributes DisableDodge CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } } WaveSpawn { Name "mid" TotalCount 24 MaxActive 10 SpawnCount 2 Where mid1 Where mid2 Where front1 Where front2 WaitBetweenSpawns 5 TotalCurrency 150 TFBot { Template T_TFBot_Heavyweapons_Fist Attributes DisableDodge Action Mobber AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } } WaveSpawn { Name "mid" TotalCount 4 MaxActive 3 SpawnCount 1 Where mid3 WaitBetweenSpawns 8 WaitBeforeStarting 15 TotalCurrency 250 TFBot { Template T_TFBot_Giant_Soldier_Spammer Attributes DisableDodge Action Mobber AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 "damage force reduction" 0 } } } WaveSpawn { Name "hatch" TotalCount 5 MaxActive 5 SpawnCount 5 Where hatchgiant WaitForAllSpawned "mid" //WaitBeforeStarting 5 TotalCurrency 300 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons Attributes DisableDodge AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 "damage force reduction" 0 } } TFBot { Template T_TFBot_Medic_QuickUber Attributes IgnoreFlag AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } TFBot { Template T_TFBot_Medic_QuickUber Attributes IgnoreFlag AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } TFBot { Template T_TFBot_Medic_QuickUber Attributes IgnoreFlag AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } TFBot { Template T_TFBot_Medic_QuickUber Attributes IgnoreFlag AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } } } WaveSpawn { Name "hatch" TotalCount 5 MaxActive 5 SpawnCount 5 Where hatchgiant WaitForAllSpawned "mid" //WaitBeforeStarting 5 TotalCurrency 300 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons Action Mobber Attributes DisableDodge AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 "damage force reduction" 0 } } TFBot { Template T_TFBot_Medic_QuickUber Attributes IgnoreFlag AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } TFBot { Template T_TFBot_Medic_QuickUber Attributes IgnoreFlag AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } TFBot { Template T_TFBot_Medic_QuickUber Attributes IgnoreFlag AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } TFBot { Template T_TFBot_Medic_QuickUber Attributes IgnoreFlag AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } } } WaveSpawn { Name "hatch_commons" TotalCount 32 MaxActive 12 SpawnCount 3 Where "" WaitBetweenSpawns 3 WaitForAllSpawned "mid" TotalCurrency 200 TFBot { Template T_TFBot_Heavyweapons_Shotgun Name "Shotgun Heavy" ClassIcon heavy_shotgun_red Action Mobber Attributes DisableDodge AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "voice pitch scale" 0 "crit mod disabled" 0 } } } WaveSpawn { WaitForAllDead "hatch_support" WaitBeforeStarting 5000 } WaveSpawn { Name "hatch_support" TotalCount 999 MaxActive 6 SpawnCount 1 Where "" Support 1 WaitBeforeStarting 3 WaitBetweenSpawns 0.5 WaitForAllSpawned "hatch_commons" TotalCurrency 300 RandomChoice { TFBot { Class Heavy Name "Shotgun Heavy" ClassIcon heavy_shotgun_red_giant Skill Hard Attributes DisableDodge Attributes HoldFireUntilFullReload MaxVisionRange 900 Action Mobber WeaponRestrictions SecondaryOnly Item "Panic Attack Shotgun" AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ ClassIcon heavy_champ_red Skill Hard Attributes DisableDodge Action Mobber AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } } } WaveSpawn { Name "hatchguard" TotalCount 1 MaxActive 1 SpawnCount 1 Where hatchspawn DoneOutput { Target hatch_enable Action Trigger } TotalCurrency 300 TFBot { Template T_TFBot_Chief_Demo_Atomic_NoWeaponRestrict Name "Comfy Nukesalot" Health 8000 Attributes IgnoreFlag Attributes DisableDodge CustomEyeGlowColor "255 0 0" UseHumanAnimations 1 Item "Mooshanka" Item "Antarctic Parka" Item "Festive Eyelander" Item EOTL_demopants StripItemSlot 1 NoPushaway 1 SpawnTemplate MeleePullout AddCond { Index 43 } ItemAttributes { ItemName "Festive Eyelander" "damage bonus" 2.5 "fire rate bonus" 0.8 "melee cleave attack" 1 // no escape "apply z velocity on damage" 2000 "apply look velocity on damage" 3000 "damage causes airblast" 1 "set turn to ice" 1 } InterruptAction { Target "1149 -130 800" Delay 1 Duration 2 Repeats 1 } CharacterAttributes { "force distribute currency on death" 1 "rage giving scale" 0.5 "single wep deploy time decreased" 0 "switch from wep deploy time decreased" 0 "damage force reduction" 0 "voice pitch scale" 0.75 "SET BONUS: special dsp" 45 } } } } // Wave 3/5 ($1500) // Hatch Guardian : Chief Charles (Switches from rapid fire to burst fire) // Hatch Support : Death Racers , Pyros (Hard AI) // Exit out of front is blocked off? : No // Entrance to hatch is blocked. // 1 Giant Burst Demoman with 1 Giant Booster Medic // 1 Giant Burst Soldier with 1 Giant Booster Medic // 64 Crit Bat Scouts // 1 Tank (30k HP) // 2 Giant Tri-Homing Soldiers // 32 Demoknights (1/2 are Katanas) // 6 Super Soda Popper Scouts Wave { SpawnTemplate barriers_hatch StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } Explanation { Line "{00FF26}====[ {yellow}NOTICE{00FF26} ]====" Line "{00FF26}The designated bomb carriers will not be sent in until the {red}TANK{00FF26} is dealt with." Line "{00FF26}Watch out for the {FF4DD5}BOOSTER{00FF26} medics, as they will increase their heal target's efficency." Line "{00FF26}The {red}TIMER{00FF26} has been extended to 7 minutes for this wave." } WaveSpawn { FirstSpawnOutput { Target shaker_big Action StartShake } FirstSpawnWarningSound physics\metal\metal_grate_impact_hard3.wav } WaveSpawn { WaitBeforeStarting 2 FirstSpawnMessage "{2EFF00}♫ Now Playing ♫ {FFFFFF} : {5100ff} Whistler - Cheshyre {FFFFFF}" FirstSpawnOutput { Target cheshyre_whistler Action Trigger } } WaveSpawn { FirstSpawnOutput { Target midbarrier_hint Action Trigger } WaitBeforeStarting 15 } WaveSpawn { TotalCount 2 MaxActive 1 SpawnCount 2 Support 1 TFBot { Class scout ClassIcon blu2_lite } } WaveSpawn { TotalCount 12 MaxActive 4 SpawnCount 1 Where spawnbot_mission_sniper Support Limited WaitBetweenSpawns 8 WaitBeforeStarting 20 TFBot { Template T_TFBot_Demoman_Samurai Attributes DisableDodge Action Mobber ItemAttributes { ItemName "The Half-Zatoichi" "restore health on kill" 25 } } } WaveSpawn { TotalCount 24 MaxActive 6 SpawnCount 2 Where spawnbot_mission_sniper Support Limited WaitBetweenSpawns 3 WaitBeforeStarting 20 TFBot { Template T_TFBot_Demoman_Samurai Health 175 Scale 1 Attributes DisableDodge Action Mobber } } WaveSpawn { TotalCount 12 MaxActive 4 SpawnCount 2 Where spawnbot_mission_sniper Support 1 WaitForAllDead "mid2" WaitBetweenSpawns 15 WaitBeforeStarting 5 Squad { TFBot { Template T_TFBot_Giant_Scout AlwaysGlow 1 } TFBot { Template T_TFBot_Medic_BigHeal ClassIcon medic_armored_lite Health 450 Scale 1.5 Item "Das Metalmeatencasen" Item "Das Naggenvatcher" CharacterAttributes { "heal rate bonus" 50 } } } } WaveSpawn { TotalCount 2 MaxActive 1 SpawnCount 2 Support 1 TFBot { Class scout ClassIcon red2_lite } } WaveSpawn { Name mid1 TotalCount 26 MaxActive 6 SpawnCount 1 WaitBetweenSpawns 2 Where front1 Where front2 Where mid2 TotalCurrency 100 TFBot { Class Scout ClassIcon scout_bat_nys Skill Hard Action Mobber AddCond { Index 43 } WeaponRestrictions MeleeOnly Attributes AlwaysCrit Attributes DisableDodge CharacterAttributes { "force distribute currency on death" 1 "voice pitch scale" 0 } } } WaveSpawn { Name mid1 TotalCount 26 MaxActive 6 SpawnCount 1 WaitBetweenSpawns 2 Where front1 Where front2 Where mid2 TotalCurrency 100 TFBot { Template T_TFBot_Scout_Sandman Action Mobber AddCond { Index 43 } Attributes AlwaysCrit Attributes DisableDodge CharacterAttributes { "force distribute currency on death" 1 "voice pitch scale" 0 } } } WaveSpawn { Name mid1 TotalCount 2 MaxActive 2 SpawnCount 2 StartWaveOutput { Target 7minutetimer Action Trigger } WaitBeforeStarting 5 Where mid1 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Giant_Demo_Burst ClassIcon demo_burst_red_giant Attributes IgnoreFlag Attributes DisableDodge AddCond { Index 43 } NoPushaway 1 InterruptAction { Target "-1532 144 768" Delay 0.1 Repeats 1 Duration 4 WaitUntilDone 1 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "mod medic healed damage bonus" 1.25 "reload time decreased while healed" 0.25 "voice pitch scale" 0 "damage force reduction" 0 } } TFBot { Template T_TFBot_Giant_Medic_Booster Attributes IgnoreFlag NoPushaway 1 AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "voice pitch scale" 0 "damage force reduction" 0 } } } } WaveSpawn { Name mid1 TotalCount 2 MaxActive 2 SpawnCount 2 WaitBeforeStarting 5 Where mid1 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Giant_Soldier_Spammer_Reload Attributes IgnoreFlag Attributes DisableDodge AddCond { Index 43 } NoPushaway 1 InterruptAction { Target "-1532 -396 768" Delay 0.1 Repeats 1 Duration 4 WaitUntilDone 1 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "mod medic healed damage bonus" 1.25 "reload time decreased while healed" 0.25 "voice pitch scale" 0 "damage force reduction" 0 } } TFBot { Template T_TFBot_Giant_Medic_Booster Attributes IgnoreFlag NoPushaway 1 AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "voice pitch scale" 0 "damage force reduction" 0 } } } } WaveSpawn { Name mid2 TotalCount 1 MaxActive 1 WaitBeforeStarting 20 WaitForAllSpawned mid1 FirstSpawnWarningSound mvm/mvm_tele_deliver.wav TotalCurrency 350 Tank { Health 50000 Name tankbossred ClassIcon tank_red_lite Model models/bots/boss_bot/boss_tankred.mdl StartingPathTrackNode redtankpath_1 TeamNum 2 OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target redwin_tank_relay Action Trigger } } } WaveSpawn { Name "mid2" TotalCount 2 MaxActive 2 SpawnCount 1 Where mid1 TotalCurrency 150 WaitBeforeStarting 10 WaitBetweenSpawns 5 WaitForAllSpawned mid1 TFBot { Template T_TFBot_Giant_Soldier Skill Normal Health 4000 Name "Giant Tri-Homing Soldier" ClassIcon soldier_burstfire_homing_nys Item "The Black Box" Item "Steel Shako" Action Mobber ItemAttributes { ItemName "The Black Box" "fire rate bonus" 0.1 "projectile spread angle penalty" 6 "damage bonus" 1.4 "paintkit_proto_def_index" 223 "set_item_texture_wear" 0 "Projectile speed decreased" 0.6 "Reload time increased" 1.25 "projectile trail particle" eyeboss_projectile } HomingRockets { IgnoreDisguisedSpies 1 IgnoreStealthedSpies 1 AimTime 2 RocketSpeed 0.6 AccelerationStartTime 1.8 TurnPower 60 MaxAimError 200 } ItemAttributes { ItemName "Steel Shako" "set item tint RGB" 16738740 } InterruptAction { Target "-843 -100 704" Repeats 1 Delay 0.1 Duration 3 WaitUntilDone 0 } AddCond { Index 43 } AddCond { Index 36 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 "damage force reduction" 0 } } } WaveSpawn { TotalCount 2 MaxActive 2 SpawnCount 1 Where mid1 TotalCurrency 150 WaitBeforeStarting 5 WaitBetweenSpawns 5 WaitForAllSpawned mid2 TFBot { Template T_TFBot_Giant_Soldier Skill Normal Health 4000 Name "Giant Tri-Homing Soldier" ClassIcon soldier_burstfire_homing_nys Item "The Black Box" Item "Steel Shako" Action Mobber ItemAttributes { ItemName "The Black Box" "fire rate bonus" 0.1 "projectile spread angle penalty" 6 "damage bonus" 1.4 "paintkit_proto_def_index" 223 "set_item_texture_wear" 0 "Projectile speed decreased" 0.6 "Reload time increased" 1.25 "projectile trail particle" eyeboss_projectile } HomingRockets { IgnoreDisguisedSpies 1 IgnoreStealthedSpies 1 AimTime 2 RocketSpeed 0.6 AccelerationStartTime 1.8 TurnPower 60 MaxAimError 200 } ItemAttributes { ItemName "Steel Shako" "set item tint RGB" 16738740 } InterruptAction { Target "-843 -100 704" Repeats 1 Delay 0.1 Duration 3 WaitUntilDone 0 } AddCond { Index 43 } AddCond { Index 36 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 "damage force reduction" 0 } } } WaveSpawn { Name "tease" FirstSpawnOutput { Target shaker_regular Action StartShake } WaitForAllSpawned "mid2" WaitBeforeStarting 5 FirstSpawnWarningSound "vo/mvm/mght/demoman_mvm_m_battlecry07.mp3" FirstSpawnMessage "{red}Chief Charles {reset}: Come onnn!" } WaveSpawn { Name "hatch" TotalCount 6 MaxActive 6 SpawnCount 1 StartWaveOutput { Target hatch_blocker_remover Action Trigger } Where hatchgiant WaitBeforeStarting 15 WaitForAllSpawned "mid2" TotalCurrency 150 TFBot { Template T_TFBot_Giant_Scout Skill Normal Health 1200 Name "Super Popper Scout" ClassIcon scout_popper2 Item "The Soda Popper" Item "The Bolt Boy" Action Mobber AddCond { Index 43 } ItemAttributes { ItemName "The Soda Popper" "damage bonus" 1.8 "fire rate bonus" 0.4 "faster reload rate" 1.6 } ItemAttributes { ItemName "The Bolt Boy" "set item tint RGB" 8208497 } CharacterAttributes { "move speed bonus" 1.25 "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } } WaveSpawn { WaitForAllDead "hatch_support" WaitBeforeStarting 5000 } WaveSpawn { Name "hatch_support" TotalCount 999 MaxActive 12 SpawnCount 1 Where "" Support 1 WaitForAllSpawned "hatch" WaitBeforeStarting 15 WaitBetweenSpawns 0.5 RandomChoice { TFBot { Template T_TFBot_Demoman_Deathracer Skill Normal ClassIcon demo_burst_red Action Mobber AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } TFBot { Class Pyro //Skill Easy Action Mobber AddCond { Index 43 } UseBestWeapon 1 Item "The Flare Gun" CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } } } WaveSpawn { Name "hatchguard" TotalCount 1 MaxActive 1 SpawnCount 1 Where hatchspawn DoneOutput { Target hatch_enable Action Trigger } TotalCurrency 300 TFBot { Class Demoman Skill Expert ClassIcon demo_spammer_titan Name "Chief Charles" Scale 2.1 Health 33000 Attributes IgnoreFlag Attributes MiniBoss Attributes UseBossHealthBar Attributes DisableDodge UseMeleeThreatPrioritization 1 CustomEyeGlowColor "255 0 0" Item "The Chief Constable" Item "The Soldier's Stogie" Item "The Crossing Guard" Item "Weight Room Warmer" Item EOTL_demopants StripItemSlot 1 NoPushaway 1 SpawnTemplate MeleePullout AddCond { Index 43 } ItemAttributes { ItemName "The Crossing Guard" "damage bonus" 1.75 "fire rate bonus" 0.4 "critboost on kill" 4 // trolling "melee cleave attack" 1 // no escape "apply z velocity on damage" 2000 "apply look velocity on damage" 3000 "damage causes airblast" 1 } ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "faster reload rate" -0.4 "fire rate bonus" 0.4 "damage bonus" 1.5 "Blast radius increased" 1.2 } InterruptAction { Target "1149 -130 800" Delay 1 Duration 2 Repeats 1 } ChangeAttributes //Periodically changes bot attributes, defined in EventChangeAttributes { Delay 0.1 Repeats 1 IfSeeTarget 0 IfHealthBelow 16001 Name "BurstGun" } CharacterAttributes { "force distribute currency on death" 1 "rage giving scale" 0.1 "single wep deploy time decreased" 0 "switch from wep deploy time decreased" 0 "voice pitch scale" 0 "move speed bonus" 0.35 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "override footstep sound set" 4 "crit mod disabled" 0 } EventChangeAttributes { BurstGun { Skill Expert Attributes HoldFireUntilFullReload ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "faster reload rate" -0.5 "fire rate bonus" 0.05 "clip size upgrade atomic" 12 "damage bonus" 1.5 "projectile spread angle penalty" 3 "Blast radius increased" 1.2 } } } } } } // Wave 4/5 ($1000) // Hatch Guardian : None // Hatch Support : Giant Demomen // Wave revolves around escorting a tank to end the wave early, if it is not succsesful there will be sent in giant rapid fire soldiers (on blu side) to cap the bomb instead. // Exit out of front is blocked off? : Nah. // 4 Giant Burst-Fire Demomen // 1 Red Tank (25k HP) // 26 Samurai Demoknights // 3 Giant Deflectors with 2 Uber Medics each // 6 Giant Demoknights (critboosted) // 32 Soldiers (Hard ai) // 16 Burst-Fire Demomen (Critboosted) with an Uber Medic each // 40 Snipers (Hard AI) // 4 Colonel Scatters // 32 Conch Soldiers Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } Explanation { Line "{00FF26}====[ {yellow}NOTICE{00FF26} ]====" Line "{00FF26}You will now be entrusted to secure a {blue}TANK{00FF26} to its final destination." Line "{00FF26}If you fail to do so, standard bomb carriers will be sent in to help you finish the simulation." Line "{00FF26}It should be noted that enemy sniper bots can and {red}WILL HEADSHOT{00FF26} you if you aren't careful." } WaveSpawn { TotalCount 2 MaxActive 1 SpawnCount 2 Support 1 TFBot { Class scout ClassIcon blu2_lite } } WaveSpawn { Name "bot_support" TotalCount 999 MaxActive 8 SpawnCount 2 Support 1 Where spawnbot WaitBeforeStarting 10 WaitBetweenSpawns 3 TFBot { Class Scout Skill Normal Action Mobber } } WaveSpawn { Name "bot_support" TotalCount 999 MaxActive 3 SpawnCount 1 Support 1 Where spawnbot WaitForAllDead tankboobs WaitBetweenSpawns 15 TFBot { Template T_TFBot_Giant_Soldier_Spammer Attributes DisableDodge AlwaysGlow 1 } } WaveSpawn { Name "sonohead?" FirstSpawnOutput { Target hatch_enable Action Trigger } WaitBeforeStarting 5 WaitForAllDead "tankboobs" } WaveSpawn { Name "tankboobs" TotalCount 1 MaxActive 1 FirstSpawnOutput { Target notankentrance Action Kill } Support Limited Tank { Health 33000 Speed 50 Name tankboss StartingPathTrackNode boss_path_1 OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { TotalCount 2 MaxActive 1 SpawnCount 2 Support 1 TFBot { Class scout ClassIcon red2_lite } } WaveSpawn { WaitBeforeStarting 5000 WaitForAllDead hatch_support } WaveSpawn { Name "hatch_support" TotalCount 999 MaxActive 6 SpawnCount 1 Support 1 Where hatchgiant WaitForAllDead "botkiller2" WaitBeforeStarting 5 WaitBetweenSpawns 10 TFBot { Template T_TFBot_Giant_Demoman ClassIcon demo_spammer Attributes DisableDodge Action Mobber AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 "damage force reduction" 0 } } } WaveSpawn { FirstSpawnOutput { Target shaker_big Action StartShake } FirstSpawnWarningSound physics\metal\metal_grate_impact_hard3.wav } WaveSpawn { WaitBeforeStarting 1 FirstSpawnMessage "{2EFF00}♫ Now Playing ♫ {FFFFFF} : {5100ff} The Pied Piper - Cheshyre {FFFFFF}" FirstSpawnOutput { Target cheshyre_the_pied_piper Action Trigger } } WaveSpawn { Name "botkiller1" TotalCount 4 MaxActive 4 SpawnCount 1 Where mid1 WaitBeforeStarting 6 WaitBetweenSpawns 10 TotalCurrency 200 TFBot { Template T_TFBot_Giant_Demo_Burst Name "Giant Chargin' Burst Demoman" ClassIcon demo_burst_red_giant Attributes DisableDodge Action Mobber ExtAttr IgnoreNPC // does not target tank Item "The Chargin' Targe" AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 "damage force reduction" 0 } } } WaveSpawn { Name "redtank" TotalCount 1 MaxActive 1 WaitBeforeStarting 5 WaitForAllSpawned mid1 FirstSpawnWarningSound mvm/mvm_tele_deliver.wav TotalCurrency 100 Tank { Health 22000 Name tankbossred ClassIcon tank_red_lite Model models/bots/boss_bot/boss_tankred.mdl StartingPathTrackNode redtankpath_1 TeamNum 2 OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target redwin_tank_relay Action Trigger } } } WaveSpawn { Name "tankkiller1" TotalCount 26 MaxActive 12 SpawnCount 3 Where front1 Where front2 Where mid2 WaitBeforeStarting 15 WaitBetweenSpawns 3 TotalCurrency 100 TFBot { Template T_TFBot_Demoman_Samurai Attributes DisableDodge Action Mobber AddCond { Index 43 } InterruptAction { Delay 0.5 Target "tankboss" Duration 2 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } } WaveSpawn { Name "tankkiller2" TotalCount 6 MaxActive 6 SpawnCount 2 Where mid3 WaitBeforeStarting 5 WaitBetweenSpawns 10 WaitForAllSpawned "tankkiller1" TotalCurrency 100 TFBot { Template T_TFBot_Giant_DemoMan_PrinceTavish Action Mobber Attributes AlwaysCrit Attributes DisableDodge AddCond { Index 43 } InterruptAction { Delay 0.5 Target "tankboss" Duration 3 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 "damage force reduction" 0 } } } WaveSpawn { Name "botkiller2" TotalCount 9 MaxActive 6 SpawnCount 3 Where hatchgiant WaitBeforeStarting 10 WaitBetweenSpawns 8 WaitForAllSpawned "botkiller1" TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons_Deflector Action Mobber Attributes DisableDodge ExtAttr IgnoreNPC AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 "damage force reduction" 0 } } TFBot { Template T_TFBot_Medic_QuickUber AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } TFBot { Template T_TFBot_Medic_QuickUber AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } } } WaveSpawn { TotalCount 32 MaxActive 10 SpawnCount 1 Where mid3 TotalCurrency 100 WaitForAllSpawned "redtank" WaitBeforeStarting 25 WaitBetweenSpawns 0.5 TFBot { Class Soldier ClassIcon soldier_directhit_lite Name "Direct Hit Soldier" Skill Normal Action Mobber Attributes DisableDodge AddCond { Index 43 } Item "The Direct Hit" CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } } WaveSpawn { TotalCount 32 MaxActive 16 SpawnCount 2 Where "" WaitBetweenSpawns 2.5 WaitForAllSpawned "tankkiller2" TotalCurrency 50 Squad { TFBot { Template T_TFBot_Demo_Burst ClassIcon demo_burst_red Action Mobber AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } TFBot { Template T_TFBot_Medic_QuickUber AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } } } WaveSpawn { TotalCount 40 MaxActive 10 SpawnCount 2 Where "" Where front1 Where front2 Where front4 WaitBetweenSpawns 2 WaitBeforeStarting 5 WaitForAllSpawned "tankkiller2" TotalCurrency 50 TFBot { Template T_TFBot_Sniper Action Sniper AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 "sniper fires tracer" 1 } } } WaveSpawn { TotalCount 4 MaxActive 4 SpawnCount 1 Where hatchgiant WaitForAllSpawned "tankkiller2" WaitBeforeStarting 40 WaitBetweenSpawns 4 TotalCurrency 50 TFBot { Class Demoman Name "Colonel Scatter" ClassIcon demo_scatter_red Health 3500 Skill Expert Attributes MiniBoss Attributes HoldFireUntilFullReload Attributes DisableDodge Item "Upgradeable TF_WEAPON_GRENADELAUNCHER" Item "Blast Defense" Action Mobber AddCond { Index 43 } ItemAttributes { ItemName "Upgradeable TF_WEAPON_GRENADELAUNCHER" "clip size upgrade atomic" 26.0 "faster reload rate" 0.22 "fire rate bonus" 0.2 "projectile spread angle penalty" 5 "fuse bonus" 0.75 "damage bonus" 1.5 } CharacterAttributes { "move speed bonus" 0.5 "force distribute currency on death" 1 "damage force reduction" 0 "crit mod disabled" 0 "voice pitch scale" 0 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 4 "health regen" 40 } } } WaveSpawn { TotalCount 32 MaxActive 12 SpawnCount 3 Where "" WaitForAllSpawned "tankkiller2" WaitBeforeStarting 30 WaitBetweenSpawns 4 TotalCurrency 50 TFBot { Template T_TFBot_Soldier_Extended_Concheror Action Mobber Attributes DisableDodge AddCond { Index 43 } CharacterAttributes { "crit mod disabled" 0 "force distribute currency on death" 1 "voice pitch scale" 0 } } } } // Wave 5/5 (2000$) // Hatch Guardian : None // Hatch Support : None // Blue Support : 2 Giant Deflectors, Constant Pyro & Soldier bot support (Normal and Hard AI respectievely) , 3 Giant Buff Banner Soldiers , 1 Tank (For cutscene part for B.D. Punch) // Exit out of front is blocked off? : Yes, kinda. // Entrance to hatch is blocked. // 6 Giant Rapid Fire Soldiers // 48 Scouts (24 are shortstops, all 48 are critboosted) // 2 Giant Tomislav Heavies // 4 Dragon Fury Pyros // 6 Giga Samurais // 4 Giant Shotgun Heavies // 30 Heavies (Normal AI) // 3 Giant Critboosted Heavies with 2 Uber Medics each // 32 Knock-Out Gauntlets // B.D. Punch // Red Support : Giant Rapid Fire Soldiers & Regular Pyros (Easy ai) Wave { SpawnTemplate barriers_front SpawnTemplate barriers_hatch SpawnTemplate powerup_fix SpawnTemplate gibbie StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } Explanation { Line "{00FF26}====[ {yellow}NOTICE{00FF26} ]====" Line "{00FF26}You will now be pitted to fight against an onslaught of red bots in the middle area. Kill them all to finish the simulation and be ready to sent onto the battlements!" Line "{00FF26}The {red}TIMER{00FF26} has been extended to 8 minutes for this wave." } WaveSpawn { TotalCount 2 MaxActive 1 SpawnCount 2 Support 1 TFBot { Class scout ClassIcon blu2_lite } } WaveSpawn { TotalCount 2 MaxActive 2 SpawnCount 2 Where spawnbot_mission_sniper Support Limited Squad { TFBot { Template T_TFBot_Giant_Heavyweapons_Deflector ClassIcon heavy_deflector_giant InterruptAction { Target "-2828 -108 704" Repeats 1 Delay 0.1 Duration 5 WaitUntilDone 0 } Action Mobber } TFBot { Template T_TFBot_Medic_BigHeal ClassIcon medic_armored_lite Health 450 Scale 1.5 Item "Das Metalmeatencasen" Item "Das Naggenvatcher" CharacterAttributes { "heal rate bonus" 50 } } } } WaveSpawn { TotalCount 2 MaxActive 2 SpawnCount 2 Where spawnbot_mission_sentrybuster Support Limited WaitBeforeStarting 5 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons_Deflector ClassIcon heavy_deflector_giant InterruptAction { Target "-2611 582 549" // -843 -100 704 Repeats 1 Delay 0.1 Duration 5 WaitUntilDone 0 } Action Mobber } TFBot { Template T_TFBot_Medic_BigHeal ClassIcon medic_armored_lite Health 450 Scale 1.5 Item "Das Metalmeatencasen" Item "Das Naggenvatcher" CharacterAttributes { "heal rate bonus" 50 } } } } WaveSpawn { TotalCount 3 MaxActive 3 SpawnCount 1 Where spawnbot_mission_sentrybuster Support Limited WaitBeforeStarting 10 WaitBetweenSpawns 4 WaitForAllSpawned "mid2" TFBot { Template T_TFBot_Giant_Soldier_Extended_Buff_Banner Action Mobber } } WaveSpawn { FirstSpawnOutput { Target shaker_big Action StartShake } FirstSpawnWarningSound physics\metal\metal_grate_impact_hard3.wav } WaveSpawn { FirstSpawnOutput { Target 8minutetimer Action Trigger } } WaveSpawn { FirstSpawnOutput { Target pause_timer Action Trigger } } WaveSpawn { FirstSpawnMessage "{2EFF00}♫ Now Playing ♫ {FFFFFF} : {391a1a} Brimstone - Locknar {FFFFFF}" FirstSpawnOutput { Target locknar_brimstone Action Trigger } } WaveSpawn { WaitBeforeStarting 17.5 FirstSpawnOutput { Target front_hint Action Show } } WaveSpawn { FirstSpawnOutput { Target front_barrier_remover Action Trigger } WaitBeforeStarting 27.5 FirstSpawnWarningSound physics\metal\metal_grate_impact_hard2.wav } WaveSpawn { FirstSpawnOutput { Target resume_timer Action Trigger } WaitBeforeStarting 27.5 FirstSpawnWarningSound physics\metal\metal_grate_impact_hard2.wav } WaveSpawn { FirstSpawnOutput { Target shaker_big Action StartShake } WaitBeforeStarting 27.5 } WaveSpawn { Name "mid1" TotalCount 8 MaxActive 4 SpawnCount 2 Where mid3 WaitBeforeStarting 26 WaitBetweenSpawns 13 TotalCurrency 200 TFBot { Template T_TFBot_Soldier_BurstFire ClassIcon soldier_burstfire_hyper_lite Attributes DisableDodge Action Mobber AddCond { Index 43 } InterruptAction { Target "-843 -100 704" Repeats 1 Delay 0.1 Duration 4 WaitUntilDone 0 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 "damage force reduction" 0 } } } WaveSpawn { Name "mid1" TotalCount 20 MaxActive 6 SpawnCount 3 Where front1 Where front2 Where front4 WaitBeforeStarting 26 WaitBetweenSpawns 4 TotalCurrency 100 TFBot { Class Scout Skill Hard Action Mobber AddCond { Index 43 } Attributes AlwaysCrit Attributes DisableDodge CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } } WaveSpawn { Name "mid1" TotalCount 20 MaxActive 6 SpawnCount 3 Where front1 Where front2 Where front4 WaitBeforeStarting 26 WaitBetweenSpawns 4 TotalCurrency 100 TFBot { Class Scout Name "Shortstop Scout" ClassIcon scout_shortstop Skill Normal Action Mobber AddCond { Index 43 } Attributes AlwaysCrit Attributes DisableDodge Item "The Shortstop" CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } } WaveSpawn { Name "mid2" TotalCount 2 MaxActive 2 SpawnCount 1 Where mid3 Where mid2 WaitForAllSpawned "mid1" //WaitBeforeStarting 20 WaitBetweenSpawns 7 TotalCurrency 200 TFBot { Template T_TFBot_Giant_Heavyweapons ClassIcon heavy_accurate_lite MaxVisionRange 2000 Name "Giant Tomislav Heavy" Item "Tomislav" Item "Capone's Capper" ItemAttributes { ItemName "Tomislav" "damage bonus" 1.5 "minigun spinup time decreased" 0.5 } InterruptAction { Target "-843 -100 704" Repeats 1 Delay 0.1 Duration 5 WaitUntilDone 0 } Attributes DisableDodge Action Mobber AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 "damage force reduction" 0 } } } WaveSpawn { Name "mid2" TotalCount 6 MaxActive 4 SpawnCount 2 Where mid3 Where mid2 WaitForAllSpawned "mid1" WaitBeforeStarting 5 WaitBetweenSpawns 6 TotalCurrency 200 TFBot { Template T_TFBot_Giant_Pyro ClassIcon pyro_dragon_fury_swordstone Name "Giant Fury Pyro" MaxVisionRange 1000 Item "The Dragon's Fury" Item "Brim of Fire" Action Mobber AddCond { Index 43 } Attributes DisableDodge CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 "damage force reduction" 0 } } } WaveSpawn { Name "mid3" TotalCount 4 MaxActive 4 SpawnCount 2 Where mid2 Where mid1 TotalCurrency 200 WaitForAllSpawned "mid2" WaitBeforeStarting 22 WaitBetweenSpawns 7 TFBot { Template T_TFBot_Giant_Demo_Giga_Samurai Action Mobber Attributes DisableDodge AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 "damage force reduction" 0 } } } WaveSpawn { Name "mid3" TotalCount 3 MaxActive 3 SpawnCount 1 Where mid1 Where mid2 TotalCurrency 200 WaitForAllSpawned "mid2" WaitBeforeStarting 10 WaitBetweenSpawns 6 TFBot { Template T_TFBot_Giant_Heavyweapons_Shotgun ClassIcon heavy_shotgun_red Action Mobber Attributes DisableDodge AddCond { Index 43 } InterruptAction { Target "-843 -100 704" Repeats 1 Delay 0.1 Duration 4 WaitUntilDone 0 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 "damage force reduction" 0 } } } WaveSpawn { Name "mid3" TotalCount 20 MaxActive 10 SpawnCount 2 Where mid2 Where front1 TotalCurrency 100 WaitForAllSpawned "mid2" WaitBetweenSpawns 3 TFBot { Class Heavy Skill Normal Action Mobber Attributes DisableDodge AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } } WaveSpawn { Name "TheseGuys" TotalCount 32 MaxActive 10 SpawnCount 2 Where mid1 Where mid2 TotalCurrency 100 WaitForAllDead "mid3" WaitBetweenSpawns 2.75 TFBot { Template T_TFBot_Heavyweapons_Fist ClassIcon powerup_knockout_lite Name "Knock-Out Gauntlet" Attributes DisableDodge Health 1050 Action Mobber AddCond { Index 43 } AddCond { Index 103 Delay 1 } ItemModel { ItemName "Fists of Steel" Model models/weapons/c_models/c_fists_of_steel_gray/c_fists_of_steel_gray.mdl } ItemColor { ItemName "Fists of Steel" Red 231 Green 181 Blue 59 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 "damage bonus" 1.75 } } } WaveSpawn { Name "TheseGuys" TotalCount 9 MaxActive 6 SpawnCount 3 Where mid1 Where mid2 TotalCurrency 100 WaitForAllDead "mid3" WaitBeforeStarting 25 WaitBetweenSpawns 7.5 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons Attributes DisableDodge Action Mobber AddCond { Index 43 } InterruptAction { Target "-843 -100 704" Repeats 1 Delay 0.1 Duration 5 WaitUntilDone 0 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } TFBot { Template T_TFBot_Medic_QuickUber AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } TFBot { Template T_TFBot_Medic_QuickUber AddCond { Index 43 } CharacterAttributes { "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } } } } WaveSpawn { TotalCount 1 MaxActive 1 Support Limited WaitForAllDead mid3 TotalCurrency 300 Tank { Health 90000 Name tankboss Speed 100 StartingPathTrackNode boss_path_1 SpawnTemplate "stomponme" OnKilledOutput { Target boss_dead_relay Action Trigger } } } WaveSpawn { TotalCount 2 MaxActive 1 SpawnCount 2 Support 1 TFBot { Class scout ClassIcon red2_lite } } WaveSpawn { TotalCount 40 MaxActive 10 SpawnCount 2 Support 1 Where mid2 Where mid3 WaitBetweenSpawns 4 WaitForAllDead "TheseGuys" TFBot { Class Pyro Attributes DisableDodge AddCond { Index 43 } Action Mobber CharacterAttributes { "crit mod disabled" 0 "voice pitch scale" 0 } } } WaveSpawn { TotalCount 8 MaxActive 4 SpawnCount 1 Support 1 Where mid2 Where mid1 WaitBeforeStarting 5 WaitBetweenSpawns 12.5 WaitForAllDead "TheseGuys" TFBot { Template T_TFBot_Giant_Soldier_Spammer Attributes DisableDodge Action Mobber AddCond { Index 43 } Item "Hazard Headgear" CharacterAttributes { "crit mod disabled" 0 "fire rate bonus" 0.6 "voice pitch scale" 0 "damage force reduction" 0 } } } WaveSpawn { WaitBeforeStarting 45.5 WaitForAllDead "mid3" FirstSpawnWarningSound "vo/mvm/mght/heavy_mvm_m_battlecry01.mp3" } WaveSpawn { WaitBeforeStarting 48.5 WaitForAllDead "mid3" FirstSpawnWarningSound "vo/mvm/mght/heavy_mvm_m_revenge14.mp3" } WaveSpawn { WaitBeforeStarting 45.5 WaitForAllDead "mid3" FirstSpawnWarningSound "vo/mvm/mght/heavy_mvm_m_battlecry01.mp3" } WaveSpawn { WaitBeforeStarting 48.5 WaitForAllDead "mid3" FirstSpawnWarningSound "vo/mvm/mght/heavy_mvm_m_revenge14.mp3" } WaveSpawn { TotalCount 1 Where mid3 TotalCurrency 200 WaitBeforeStarting 45 WaitForAllDead "mid3" FirstSpawnWarningSound "misc/grenade_jump_fall_01.wav" TFBot { Class Heavyweapons Skill Expert Name "B.D. Punch" ClassIcon heavy_chief Health 48000 Scale 1.9 Attributes MiniBoss Attributes UseBossHealthBar Attributes DisableDodge WeaponRestrictions MeleeOnly Action Mobber Tag bot_gibbie //Item "War Head" Item "Belltower Spec Ops" Item "Immobile Suit" Item "Life Support System" Item "Fists of Steel" SpawnTemplate BigMadGuy UseHumanAnimations 1 AlwaysGlow 1 FireInput { Target "tankboss*" //Entity name to use Action "SetSpeed" //Input to fire Param "0" //Parameter to use Delay 0.1 //Delay before firing the input Cooldown 1 //Cooldown between firing the input Repeats 1 //How many times should the input be fired } FireInput { Target "tankboss*" //Entity name to use Action "Ignite" //Input to fire Delay 1.2 //Delay before firing the input Cooldown 1 //Cooldown between firing the input Repeats 1 //How many times should the input be fired } FireInput { Target "tankboss*" //Entity name to use Action "SetHealth" //Input to fire Param "0" //Parameter to use Delay 1.35 //Delay before firing the input Cooldown 1 //Cooldown between firing the input Repeats 1 //How many times should the input be fired } FireInput { Target "hepissed" //Entity name to use Action "Trigger" //Input to fire Delay 0.1 //Delay before firing the input IfHealthBelow 12001 Repeats 1 //How many times should the input be fired } AimAt Body ItemAttributes { ItemName "Fists of Steel" "damage causes airblast" 1 "fire rate bonus" 0.6 "damage bonus" 2.309 } FireWeapon { Delay 1.5 Cooldown 3 Repeats 0 IfSeeTarget 1 Duration 0.1 Type "Jump" IfHealthBelow 32001 } FireWeapon { Delay 0.1 Cooldown 2.5 IfSeeTarget 1 Duration 1 Type "Primary" IfHealthBelow 32001 } ChangeAttributes //Periodically changes bot attributes, defined in EventChangeAttributes { Delay 0.1 //Time before the first bot attribute change (Default: 10) Repeats 1 //How many times should bot change attributes in total (Default: 0 - Infinite) IfHealthBelow 32001 //When set, the task activates only when the bot health is below specified value Name "Grapple" // Name of the bot attributes listed in EventChangeAttributes } ChangeAttributes //Periodically changes bot attributes, defined in EventChangeAttributes { Delay 0.1 //Time before the first bot attribute change (Default: 10) Repeats 1 //How many times should bot change attributes in total (Default: 0 - Infinite) IfHealthBelow 12001 //When set, the task activates only when the bot health is below specified value Name "ishestillnotdead" // Name of the bot attributes listed in EventChangeAttributes } AddCond { Index 43 } AddCond { Index 52 Duration 5 } AddCond { Index 51 Duration 5.5 IfHealthBelow 12001 Delay 0.1 } AddCond { Index 56 IfHealthBelow 12001 Delay 5 } AddCond { Index 71 Duration 5.5 IfHealthBelow 12001 Delay 0.1 } InterruptAction { Delay 0.1 Duration 5 Repeats 1 } ItemModel { ItemName "Belltower Spec Ops" Model "models/player/items/all_class/dex_belltower_heavy.mdl" } CharacterAttributes { "move speed bonus" 0.75 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "override footstep sound set" 2 "airblast vertical vulnerability multiplier" 0 "rage giving scale" 0.1 "force distribute currency on death" 1 "crit mod disabled" 0 "voice pitch scale" 0 } EventChangeAttributes { Grapple { Item "TF_WEAPON_GRAPPLINGHOOK" ItemAttributes { ItemName "TF_WEAPON_GRAPPLINGHOOK" "is_passive_weapon" 1 "cancel falling damage" 1 "increased jump height" 1.33 "increased air control" 12 "Projectile speed increased" 10.0 "projectile spread angle penalty" 8 } CharacterAttributes { "move speed bonus" 1.25 } } ishestillnotdead { ItemAttributes { ItemName "TF_WEAPON_GRAPPLINGHOOK" "is_passive_weapon" 1 "cancel falling damage" 1 "increased jump height" 1.33 "increased air control" 12 "fire rate bonus" 0.75 "damage bonus" 10 "Projectile speed increased" 10.0 "projectile spread angle penalty" 8 } CharacterAttributes { "move speed bonus" 1.5 "dmg from ranged reduced" 0.75 "dmg from melee increased" 4.0 } } } } } } }