// Reverse MvM mission by Midori // Goal: make something better than Shifting Gears and try not to go overboard with schizo // Credits: // B855 - custom nav and logic // Braindawg - some weapon reworks and templates // Hell-met - buster logic and inspiration // Royal - shapeshifting bot and other pts // Sntr - help with fixing gate logic // That Guy Mike and Eve - mini-sentry drone model and template #base robot_standard_red.pop #base robot_giant_red.pop #base robot_gatebot.pop #base robot_midori.pop #base robotize_lines.pop WaveSchedule { StartingCurrency 1100 CanBotsAttackWhileInSpawnRoom yes //keep this so companion bots can combat spawn camping AddSentryBusterWhenDamageDealtExceeds 0 AddSentryBusterWhenKillCountExceeds 0 RespawnWaveTimeBlue 3 FixedRespawnWaveTimeBlue 1 PlayerMiniBossMinRespawnTime 45 // Essential stuff ReverseWinConditions 1 AllowJoinTeamBlueMax 6 AllowJoinTeamBlue 1 HumansMustJoinTeam Blue SetCreditTeam 3 SniperAllowHeadshots 1 //sniper and amby un-exist without this // Optional stuff // CustomUpgradesFile "mvm_upgrades_space_reverse.txt" // MaxTotalPlayers 6 // currently doesn't work in reverse ForceHoliday 2 NoHolidayPickups 1 NoSapUnownedBuildings 1 FixSetCustomModelInput 1 NoRomevisionCosmetics 1 NoRedBotsRandomCrit 1 RemoveBluVelocityLimit 1 ImprovedAirblast 1 StandableHeads 1 SendBotsToSpectatorImmediately 1 SentryBusterFriendlyFire 0 // SniperHideLasers 1 BluHumanSpawnNoShoot 0 RobotLimit 26 BluPlayersAreRobots 1 BluHumanFlagCapture 1 //Can blu humans capture the flag BluHumanFlagPickup 1 BluHumanInfiniteCloak 0 FlagCarrierMovementPenalty 1 BotTeleportUberDuration 0 BluHumanTeleportOnSpawn 1 BluHumanBotTeleporter 0 TextPrintTime 6 BotsRandomCrit 0 BodyPartScaleSpeed 50 MedigunShieldDamage 1 ForceRedMoney 1 MaxSpeedLimit 800 // Max speed limit override. Values above 520 fix max speed on non scout bots. Values above 521 disable jumping on stuck CustomNavFile "mvm_area_52_rev" // Precache all custom models and sounds PrecacheModel "models/props_mvm/mvm_upgrade_blu_center.mdl" PrecacheModel "models/props_mvm/mvm_upgrade_blu_tools.mdl" PrecacheModel "models/props_frontline/tank_cart.mdl" PrecacheModel "models/bots/boss_bot/boss_tankred.mdl" PrecacheModel "models/bots/boss_bot/boss_blimp.mdl" PrecacheModel "models/bots/boss_bot/boss_blimp_damage1.mdl" PrecacheModel "models/bots/boss_bot/boss_blimp_damage2.mdl" PrecacheModel "models/bots/boss_bot/boss_blimp_damage3.mdl" PrecacheModel "models/bots/boss_bot/boss_blimp_damage_explode.mdl" PrecacheModel "models/bots/boss_bot/boss_blimp_explode.mdl" PrecacheModel "models/props_mvm/reversemvm_redbot_wall.mdl" PrecacheModel "models/props_mvm/reversemvm_redwall.mdl" PrecacheModel "models/props_mvm/robot_spawnpoint.mdl" PrecacheModel "models/bots/demo/red_sentry_buster.mdl" PrecacheModel "models/weapons/c_models/c_wasp_launcher/c_wasp_launcher_1.mdl" PrecacheModel "models/bots/soldier/bot_soldier_gibby.mdl" PrecacheModel "models/workshop/weapons/c_models/c_winger_distol/c_winger_distol.mdl" PrecacheModel "models/weapons/w_models/w_rocketbullet.mdl" PrecacheModel "models/weapons/c_models/c_ak47/c_mmg.mdl" PrecacheModel "models/weapons/c_models/c_brief_negotiator/c_lmg.mdl" PrecacheModel "models/rcat/rcat_level2.mdl" PrecacheModel "models/weapons/c_models/c_demo_bot_arms.mdl" PrecacheModel "models/weapons/c_models/c_demo_bot_animations.mdl" PrecacheModel "models/weapons/c_models/c_engineer_bot_arms.mdl" PrecacheModel "models/weapons/c_models/c_engineer_bot_gunslinger.mdl" PrecacheModel "models/weapons/c_models/c_engineer_bot_animations.mdl" PrecacheModel "models/weapons/c_models/c_engineer_bot_gunslinger_animations.mdl" PrecacheModel "models/weapons/c_models/c_heavy_bot_arms.mdl" PrecacheModel "models/weapons/c_models/c_heavy_bot_animations.mdl" PrecacheModel "models/weapons/c_models/c_medic_bot_arms.mdl" PrecacheModel "models/weapons/c_models/c_medic_bot_animations.mdl" PrecacheModel "models/weapons/c_models/c_pyro_bot_arms.mdl" PrecacheModel "models/weapons/c_models/c_pyro_bot_animations.mdl" PrecacheModel "models/weapons/c_models/c_scout_bot_arms.mdl" PrecacheModel "models/weapons/c_models/c_scout_bot_animations.mdl" PrecacheModel "models/weapons/c_models/c_soldier_bot_arms.mdl" PrecacheModel "models/weapons/c_models/c_soldier_bot_animations.mdl" PrecacheModel "models/weapons/c_models/c_sniper_bot_arms.mdl" PrecacheModel "models/weapons/c_models/c_sniper_bot_animations.mdl" PrecacheModel "models/weapons/c_models/c_spy_bot_arms.mdl" PrecacheModel "models/weapons/c_models/c_spy_bot_animations.mdl" PrecacheModel "models/weapons/v_models/v_pda_spy_bot.mdl" PrecacheModel "models/weapons/v_models/v_ttg_watch_spy_bot.mdl" PrecacheModel "models/weapons/v_models/v_watch_leather_spy_bot.mdl" PrecacheModel "models/weapons/v_models/v_watch_pocket_spy_bot.mdl" PrecacheModel "models/weapons/v_models/v_watch_spy_bot.mdl" PrecacheModel "models/workshop_partner/weapons/v_models/v_hm_watch/v_hm_watch_bot.mdl" PrecacheSound "buzwarn.wav" PrecacheSound "vanengineloop.mp3" PrecacheSound "ambient/alarms/city_siren_loop2.wav" PrecacheSound "ak_shoot.wav" PrecacheSound "ak_reload.wav" PrecacheSound "lmg_shoot.wav" PrecacheSound "lmg_reload.wav" // Disable sounds 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_Game_Over_Loss" DisableSound "Announcer.MVM_Robots_Planted" DisableSound "Announcer.MVM_Sentry_Buster_Alert" DisableSound "Announcer.MVM_Sentry_Buster_Alert_Another" 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" DisableSound "Announcer.MVM_First_Wave_Start" DisableSound "Announcer.MVM_Wave_Start" DisableSound "Announcer.MVM_Wave_End" DisableSound "Announcer.MVM_Wave_Lose" DisableSound "Announcer.MVM_Final_Wave_Start" DisableSound "Announcer.MVM_Final_Wave_End" DisableSound "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 "heavy_mvm_giant_robot01" DisableSound "heavy_mvm_giant_robot02" DisableSound "heavy_mvm_giant_robot03" DisableSound "heavy_mvm_giant_robot04" DisableSound "engineer_mvm_giant_robot01" DisableSound "engineer_mvm_giant_robot02" DisableSound "engineer_mvm_giant_robot03" DisableSound "soldier_mvm_giant_robot01" DisableSound "soldier_mvm_giant_robot02" DisableSound "soldier_mvm_giant_robot03" DisableSound "soldier_mvm_giant_robot04" DisableSound "soldier_mvm_sniper01" DisableSound "medic_mvm_giant_robot01" DisableSound "medic_mvm_giant_robot02" DisableSound "medic_mvm_giant_robot03" DisableSound "engineer_mvm_bomb_destroyed01" DisableSound "engineer_mvm_bomb_destroyed02" DisableSound "engineer_mvm_bomb_see01" DisableSound "engineer_mvm_bomb_see02" DisableSound "engineer_mvm_bomb_see03" DisableSound "engineer_mvm_bomb_upgrade01" DisableSound "engineer_mvm_bomb_upgrade02" DisableSound "engineer_mvm_tank_alert01" DisableSound "engineer_mvm_tank_dead01" DisableSound "engineer_mvm_tank_deploy01" DisableSound "engineer_mvm_sniper01" DisableSound "heavy_mvm_bomb_see01" DisableSound "heavy_mvm_bomb_see02" DisableSound "heavy_mvm_bomb_upgrade01" DisableSound "heavy_mvm_bomb_upgrade02" DisableSound "heavy_mvm_tank_alert01" DisableSound "heavy_mvm_tank_alert02" DisableSound "heavy_mvm_tank_alert03" DisableSound "heavy_mvm_tank_dead01" DisableSound "heavy_mvm_tank_deploy01" DisableSound "heavy_mvm_sniper01" DisableSound "medic_mvm_bomb_see01" DisableSound "medic_mvm_bomb_see02" DisableSound "medic_mvm_bomb_see03" DisableSound "medic_mvm_bomb_upgrade01" DisableSound "medic_mvm_bomb_upgrade02" DisableSound "medic_mvm_bomb_upgrade03" DisableSound "medic_mvm_sniper01" DisableSound "medic_mvm_tank_alert01" DisableSound "medic_mvm_tank_dead01" DisableSound "medic_mvm_tank_deploy01" // Override sounds OverrideSounds { "MVM.BombWarning" "buzwarn.wav" "MVM.GiantCommonExplodes" "npc/env_headcrabcanister/explosion.wav" "Announcer.MVM_Spy_Alert" "common/null.wav" "Announcer.mvm_spybot_death" "common/null.wav" "Announcer.mvm_spybot_death_all" "common/null.wav" "Announcer.MVM_All_Dead" "common/null.wav" "Flesh.BulletImpact" "MVM_Robot.BulletImpact" "Player.FallDamage" "MVM.RobotImpactHard" "Player.FallGib" "MVM.RobotImpactHard" "BaseCombatCharacter.CorpseGib" "grinder_bot" } HandModelOverride { Scout "models/weapons/c_models/c_scout_bot_arms.mdl" Soldier "models/weapons/c_models/c_soldier_bot_arms.mdl" Pyro "models/weapons/c_models/c_pyro_bot_arms.mdl" HeavyWeapons "models/weapons/c_models/c_heavy_bot_arms.mdl" Demoman "models/weapons/c_models/c_demo_bot_arms.mdl" Engineer "models/weapons/c_models/c_engineer_bot_arms.mdl" Medic "models/weapons/c_models/c_medic_bot_arms.mdl" Sniper "models/weapons/c_models/c_sniper_bot_arms.mdl" Spy "models/weapons/c_models/c_spy_bot_arms.mdl" } // ClassLimit //Limits the number of specified classes // { // Scout 1 // Soldier 1 // Pyro 1 // Demoman 1 // Heavyweapons 1 // Engineer 1 // Medic 1 // Sniper 1 // Spy 1 // } DisallowUpgrade "engy disposable sentries" //breaks mini drone template PlayerAttributes { "vision opt in flags" -999999999999999999 // disables pyrovision and romevision "always allow taunt" 1 "increased air control" 5 "no damage view flinch" 1 "metal regen" 200 // if players get infinite ammo engi should get infinite metal. Widowmaker and SC are addressed later Demoman { "is miniboss" 1 "cannot upgrade" 1 "hidden maxhealth non buffed" 3325 "move speed bonus" 0.5 "crit mod disabled" 0 "voice pitch scale" 0.7 "damage force reduction" 0.5 "airblast vulnerability multiplier" 0.25 "override footstep sound set" 4 } Engineer { "max health additive bonus" 125 // "upgrade rate decrease" 2 "mult teleporter recharge rate" 0.01 "engineer teleporter build rate multiplier" 3 "engineer sentry build rate multiplier" 3 "building cost reduction" 0.5 "maxammo metal increased" 2 "cannot pick up intelligence" 1 "dmg taken from crit reduced" 0.1 } Medic { "medic machinery beam" 4 "is miniboss" 1 "deploy time increased" 2 "cannot upgrade" 1 "crit mod disabled" 0 "voice pitch scale" 0.7 "damage force reduction" 0.5 "airblast vulnerability multiplier" 0.25 "hidden maxhealth non buffed" 2850 "health from packs decreased" 0.5 "move speed bonus" 0.5 "override footstep sound set" 0 "cannot pick up intelligence" 1 "cancel falling damage" 1 } Heavyweapons { "is miniboss" 1 "cannot upgrade" 1 "crit mod disabled" 0 "voice pitch scale" 0.7 "damage force reduction" 0 "airblast vulnerability multiplier" 0.2 "hidden maxhealth non buffed" 4700 "move speed bonus" 0.5 "override footstep sound set" 2 } Pyro { "is miniboss" 1 "cannot upgrade" 1 "crit mod disabled" 0 "flame_speed" 520 "voice pitch scale" 0.7 "damage force reduction" 0.5 "airblast vulnerability multiplier" 0.25 "max health additive bonus" 3325 "health from packs increased" 0.5 "move speed bonus" 0.5 "override footstep sound set" 6 } Scout { "hidden maxhealth non buffed" 1475 "is miniboss" 1 "cannot upgrade" 1 "deploy time increased" 2 "hidden primary max ammo bonus" 5 "crit mod disabled" 0 "voice pitch scale" 0.7 "damage force reduction" 0.5 "airblast vulnerability multiplier" 0.5 "move speed bonus" 2 "override footstep sound set" 5 "min respawn time" 30 "cancel falling damage" 1 } Soldier { "is miniboss" 1 "cannot upgrade" 1 "crit mod disabled" 0 "voice pitch scale" 0.7 "damage force reduction" 0.5 "airblast vulnerability multiplier" 0.25 "hidden maxhealth non buffed" 3800 "health from packs increased" 0.5 "move speed bonus" 0.5 "boots falling stomp" 1 "override footstep sound set" 3 } Sniper { "dmg taken from crit reduced" 0.1 } Spy { // "cannot pick up intelligence" 1 "dmg taken from crit reduced" 0.1 } } ItemWhitelist //Only allows to use specified weapons below { ClassName "tf_wearable" //also allows mantreads, gunboats, dds, and cozy camper ClassName "tf_weapon_scattergun" ClassName "tf_weapon_soda_popper" ClassName "tf_weapon_handgun_scout_primary" ClassName "tf_weapon_handgun_scout_secondary" //winger/bpbb ClassName "tf_weapon_lunchbox_drink" //bonk/cola ClassName "tf_weapon_cleaver" //flying guillotine bc why not ClassName "tf_weapon_bat" ClassName "tf_weapon_bat_fish" // holy mackerel ClassName "tf_weapon_jar_milk" // mad milk ClassName "tf_weapon_bat_wood" //sandman ClassName "tf_weapon_rocketlauncher" ClassName "tf_weapon_rocketlauncher_directhit" ClassName "tf_weapon_rocketlauncher_airstrike" ClassName "tf_weapon_particle_cannon" ItemName "Festive Black Box" ClassName "tf_weapon_buff_item" ClassName "tf_weapon_raygun" // bison bc why not ItemName "The Disciplinary Action" // only viable melees for giant soldiers ItemName "The Escape Plan" //ItemName "The Equalizer" ClassName "tf_weapon_flamethrower" ClassName "tf_weapon_rocketlauncher_fireball" //DF ClassName "tf_weapon_jar_gas" ClassName "tf_weapon_flaregun" ClassName "tf_weapon_flaregun_revenge" //manmelter ItemName "The Powerjack" ClassName "tf_weapon_grenadelauncher" ClassName "tf_weapon_cannon" ClassName "tf_wearable_demoshield" ClassName "tf_weapon_sword" ClassName "tf_weapon_katana" ClassName "tf_weapon_bottle" ClassName "tf_weapon_stickbomb" ClassName "tf_weapon_minigun" ItemName "tf_weapon_shotgun_hwg" ItemName "The Family Business" ItemName "Fists of Steel" ClassName "tf_weapon_lunchbox" // sandwich ItemName "The Killing Gloves of Boxing" ItemName "Gloves of Running Urgently" ItemName "Gloves of Running Urgently MvM" ItemName "Festive Gloves of Running Urgently" ItemName "Warrior's Spirit" ClassName "tf_weapon_shotgun_primary" ItemName "tf_weapon_shotgun_primary" // ItemName "Panic Attack Shotgun" //multiclass shotguns r cringe ClassName "tf_weapon_shotgun_building_rescue" //RR ClassName "tf_weapon_drg_pomson" ClassName "tf_weapon_sentry_revenge" //FJ ItemName "TF_WEAPON_PISTOL" ClassName "tf_weapon_mechanical_arm" //short circuit ClassName "tf_weapon_laser_pointer" //wrangler ClassName "tf_weapon_wrench" ClassName "tf_weapon_robot_arm" //gunslinger ClassName "tf_weapon_pda_engineer_build" ClassName "tf_weapon_pda_engineer_destroy" ClassName "tf_weapon_syringegun_medic" ClassName "tf_weapon_crossbow" ClassName "tf_weapon_medigun" ClassName "tf_weapon_sniperrifle" ClassName "tf_weapon_sniperrifle_decap" ClassName "tf_weapon_compound_bow" ClassName "tf_wearable_razorback" ClassName "tf_weapon_jar" ClassName "tf_weapon_smg" ClassName "tf_weapon_club" ClassName "tf_weapon_builder" //sapper ClassName "tf_weapon_invis" ClassName "tf_weapon_pda_spy" //disguise kit ClassName "tf_weapon_revolver" ClassName "tf_weapon_knife" ItemSlot "11" //taunt slots ItemSlot "12" ItemSlot "13" ItemSlot "14" ItemSlot "15" ItemSlot "16" ItemSlot "17" ItemSlot "18" } ItemAttributes // too powerful with infinite ammo { Itemname "The Short Circuit" "building cost reduction" 999 "max health additive penalty" -150 "cannot upgrade" 1 } ItemAttributes // too powerful with infinite ammo { Itemname "The Widowmaker" "fire rate penalty" 3 } ItemAttributes //gunslinger buff { ItemName "The Gunslinger" "max health additive bonus" 350 // Rottenburg engi health "build rate bonus" 0.2 "upgrade rate decrease" 4 "special item description" "Gives bonus health and replaces sentries with drones that float beside you." } // Spy ItemAttributes // sapper buff { ClassName "tf_weapon_builder" "sapper damage bonus" 6 "add cond when active" 94 } ItemAttributes // make redtape a stock sapper { ItemName "The Red-Tape Recorder" "sapper degenerates buildings" 0 "sapper damage penalty" 1 "sapper damage bonus" 6 "add cond when active" 94 } CustomWeapon { Name "Upgraded Munitions" OriginalItemName "Upgradeable TF_WEAPON_REVOLVER" "max health additive bonus" 525 "model scale" 1.35 "hand scale" 1.5 "paintkit_proto_def_index" 217 "set_item_texture_wear" 0.2 "override projectile type" 2 "fire rate penalty" 2 "faster reload rate" 1.4 "custom projectile model" "models/weapons/w_models/w_rocketbullet.mdl" "projectile trail particle" "rockettrail_airstrike_line" "no self blast dmg" 2 "centerfire projectile" 1 "projectile no deflect" 1 "cannot disguise" 1 "special item description" "Wearer cannot disguise" } CustomWeapon { Name "AK-47" OriginalItemName "TF_WEAPON_SMG" "damage bonus" 2 "clip size bonus" 1.2 "maxammo secondary increased" 2 "single wep deploy time increased" 1.6 "reload time increased" 2 // "cannot be upgraded" 1 "custom item model" "models/weapons/c_models/c_ak47/c_mmg.mdl" "custom weapon fire sound" "=30|ak_shoot.wav" "custom weapon reload sound" "ak_reload.wav" } CustomWeapon { Name "Tommy Gun" OriginalItemName "TF_WEAPON_SMG" "fire rate bonus" 0.7 "bullets per shot bonus" 1.2 "clip size penalty" 0.8 "spread penalty" 1.25 "custom item model" "models/weapons/c_models/c_brief_negotiator/c_lmg.mdl" "custom weapon fire sound" "=45|lmg_shoot.wav" "custom weapon reload sound" "lmg_reload.wav" // "cannot be upgraded" 1 } // Engineer CustomWeapon { Name "Attack Sentry Gun" OriginalItemName "Upgradeable TF_WEAPON_WRENCH" "custom item model" "models/workshop/weapons/c_models/c_spikewrench/c_spikewrench.mdl" "engy building health bonus" 1.2 "engy sentry damage bonus" 1.2 "engy sentry radius increased" 1.2 "upgrade rate decrease" 0.5 "Construction rate decreased" 0.5 "max health additive penalty" -10 "custom kill icon" "southern_comfort_kill" } //GIANT WEAPONS // Scout ItemAttributes { ClassName "TF_WEAPON_SCATTERGUN" "damage bonus" 2 } ItemAttributes // Giant FaN { ItemName "The Force-a-Nature" "bullets per shot bonus" 2 "max health additive bonus" 1475 "fire rate bonus" 0.5 "scattergun knockback mult" 6 "weapon spread bonus" 0.4 "always crit" 1 } ItemAttributes // Giant Soda { ItemName "The Soda Popper" "deploy time increased" 2 "mod max primary clip override" -1 "mod no reload display only" 1 "maxammo primary increased" 3.125 } ItemAttributes // ty sntr { ItemName "The Back Scatter" "spread penalty" 1 "minicrits become crits" 1 "mult crit dmg" 2 } ItemAttributes //mini-giant shortstop { ClassName "tf_weapon_handgun_scout_primary" "special item description" "Weapon switch disabled" "head scale" 0.7 "always crit" 1 "disable weapon switch" 1 "move speed bonus" 1.25 "model scale" 1.4 "max health additive bonus" 525 "health from packs decreased" 0.5 "mod weapon blocks healing" 1 } ItemAttributes // Giant Jumping { ItemName "The Sandman" "provide on active" 1 "max health additive penalty" -300 "effect bar recharge rate increased" 0.1 "increased jump height" 2 "cancel falling damage" 1 "always crit" 1 //"head scale" 1.5 "no_duck" 1 } ItemAttributes //bat buff { ClassName "tf_weapon_bat" "provide on active" 1 "always crit" 1 "damage bonus" 2 } ItemAttributes // Giant Jumping { ClassName "tf_weapon_bat_wood" "provide on active" 1 "max health additive penalty" 0 "always crit" 1 "increased jump height" 2 "effect bar recharge rate increased" 0.1 "cancel falling damage" 1 //"head scale" 1.5 "no_duck" 1 "override footstep sound set" 5 } ItemAttributes // Super Scout { ItemName "The Holy Mackerel" "provide on active" 1 "max health additive penalty" -300 "move speed bonus" 1.3 "no double jump" 1 "override footstep sound set" 5 "no_duck" 1 } ItemAttributes { ItemName "The Flying Guillotine" "always crit" 1 } // Soldier CustomWeapon { Name "W.A.S.P. Launcher" OriginalItemName "The Liberty Launcher" "custom item model" "models/weapons/c_models/c_wasp_launcher/c_wasp_launcher_1.mdl" "fire rate penalty" 1.2 "blast radius increased" 1.25 "damage penalty" 1 "clip size bonus" 1 "projectile gravity" 800 "projectile acceleration" 1000 "projectile no deflect" 1 // fixes bug caused by reflected rockets with gravity "dmg falloff decreased" 1 "max aoe targets" 5 "mult projectile scale" 1.2 "custom weapon fire sound" "=50|rpg_sounds/rocketfire1.wav" } CustomWeapon { Name "Giant W.A.S.P. Launcher" OriginalItemName "The Liberty Launcher" "custom item model" "models/weapons/c_models/c_wasp_launcher/c_wasp_launcher_1.mdl" "fire rate penalty" 1.2 "blast radius increased" 1.25 "damage penalty" 1 "projectile gravity" 800 "projectile acceleration" 1000 "projectile no deflect" 1 // fixes bug caused by reflected rockets with gravity "dmg falloff decreased" 1 "max aoe targets" 5 "mult projectile scale" 1.2 "mod max primary clip override" -1 "maxammo primary increased" 5 "custom weapon fire sound" "=50|rpg_sounds/rocketfire1.wav" } CustomWeapon // Giant Black Box (1000hp per salvo) { Name "Giant Black Box" OriginalItemName "The Black Box" "damage bonus" 0.45 "fire rate bonus" 0.001 "faster reload rate" 1.6 "blast radius increased" 1.25 "projectile spread angle penalty" 4 "heal on hit for rapidfire" 333 "apply z velocity on damage" 150 } CustomWeapon { Name "Army of One" OriginalItemName "The Black Box" "paintkit_proto_def_index" 217 "set_item_texture_wear" 0.2 "clip size penalty" 0.25 "blast radius increased" 4 "reload time increased" 3 "custom weapon fire sound" "weapons/rpg/rocketfire1.wav" "custom weapon reload sound" "items/ammo_pickup.wav" "mult projectile scale" 0.01 "damage causes airblast" 1 "dmg pierces resists absorbs" 1 "self dmg push force increased" 50 "blast dmg to self increased" 2 "projectile speed decreased" 0.3 "projectile no deflect" 1 "dmg penalty vs players" 2 "mult dmg vs giants" 4 "mult dmg vs tanks" 4 "mult dmg vs npc" 4 "dmg bonus vs buildings" 4 "fire input on hit" "bigboom_relay^trigger^0" "dmg falloff decreased" 1.25 "projectile sound" "weapons/mortar/mortar_shell_incomming1.wav" "explosion particle" "hightower_explosion" } CustomWeapon { Name "Rainbow Laser" OriginalItemName "The Cow Mangler 5000" "damage bonus" 0.3 "mult dmg vs giants" 0.75 // "dmg pierces resists absorbs" 1 "set item tint rgb" 16737380 "particle color rainbow" 200 "override projectile type" 13 "faster reload rate" 0.01 "fire rate bonus" 0.05 "energy weapon penetration" 1 "ragdolls become ash" 1 "projectile penetration" 1 "disable buildings on hit" 3 "max health additive penalty" -1000 } ItemAttributes // Rapid Fire Soldier { ClassName "TF_WEAPON_ROCKETLAUNCHER" "mod max primary clip override" -1 "maxammo primary increased" 5 "fire rate bonus" 0.5 "Projectile speed increased" 0.65 } ItemAttributes // Rapid Fire Soldier { ItemName "The Direct Hit" "mod max primary clip override" -1 "maxammo primary increased" 5 "fire rate bonus" 0.5 "Projectile speed increased" 0.65 "mod no reload display only" 1 } ItemAttributes // Colonel Barrgae { ClassName "TF_WEAPON_ROCKETLAUNCHER_AIRSTRIKE" // clear old stats "Blast radius decreased" 1 "damage penalty" 1 "rocket jump damage reduction" 1 "rocketjump attackrate bonus" 1 "clipsize increase on kill" 0 //new stats "clip size upgrade atomic" 26.0 "faster reload rate" 0.15 "fire rate bonus" 0.2 "projectile spread angle penalty" 5 "mod medic healed damage bonus" 1.5 "health regen" 40 "custom weapon fire sound" "=40|mvm/giant_soldier/giant_soldier_rocket_shoot.wav" } ItemAttributes //spammer_reload stats, tapfire for regular spammer { ItemName "The Beggar's Bazooka" // remove all beggars stuff "fire rate bonus HIDDEN" 1 "faster reload rate" 3 "can overload" 0 "reload time increased hidden" 1 "clip size penalty HIDDEN" 1 // new stats "custom weapon fire sound" "=40|mvm/giant_soldier/giant_soldier_rocket_shoot.wav" "damage bonus" 1.5 "faster reload rate" 0.5 "fire rate bonus" 0.1 "clip size upgrade atomic" 5.0 "Projectile speed increased" 0.65 } ItemAttributes // Giant Blast Soldier { ItemName "The Liberty Launcher" "damage bonus" 0.75 "apply z velocity on damage" 250 "fire rate bonus" 0.25 "clip size upgrade atomic" 5 "faster reload rate" 0.2 "blast radius increased" 1.2 "projectile spread angle penalty" 4 } ItemAttributes //Giant Charged Soldier { ItemName "The Original" "always crit" 1 "mod no reload display only" 1 "maxammo primary increased" 5 "mod max primary clip override" -1 "projectile speed decreased" 0.5 "fire rate penalty" 2 "mod medic healed damage bonus" 2 "special item description" "Giant Charged Soldier mimic." } ItemAttributes { ItemName "The Battalion's Backup" "max health additive bonus" 0 } // Pyro ItemAttributes // Giant Flamethrower { ItemName "TF_WEAPON_FLAMETHROWER" "damage bonus" 2 "lunchbox adds minicrits" 2 "weapon burn dmg increased" 2 "airblast_pushback_no_viewpunch" 1 "extinguish restores health" 500 } ItemAttributes // Giant Flamethrower { ItemName "Upgradeable TF_WEAPON_FLAMETHROWER" "damage bonus" 2 "lunchbox adds minicrits" 2 "weapon burn dmg increased" 2 "airblast_pushback_no_viewpunch" 1 "extinguish restores health" 500 } ItemAttributes // Giant Flamethrower { ItemName "The Nostromo Napalmer" "damage bonus" 2 "lunchbox adds minicrits" 2 "weapon burn dmg increased" 2 "airblast_pushback_no_viewpunch" 1 "extinguish restores health" 500 } ItemAttributes // Giant Flamethrower { ItemName "The Backburner" "damage bonus" 2 "lunchbox adds minicrits" 2 "weapon burn dmg increased" 2 "airblast_pushback_no_viewpunch" 1 "extinguish restores health" 500 } ItemAttributes // Giant Flamethrower { ItemName "The Rainblower" "damage bonus" 2 "lunchbox adds minicrits" 2 "weapon burn dmg increased" 2 "airblast_pushback_no_viewpunch" 1 "extinguish restores health" 1000 // extra health from extinguishing teammates } ItemAttributes { ItemName "The Degreaser" "mult airblast refire time" 1.25 "airblast_give_teammate_speed_boost" 1 "lunchbox adds minicrits" 2 "airblast pushback scale" 4 "extinguish restores health" 500 } ItemAttributes // Giant Detonator { ItemName "The Detonator" "provide on active" 1 "damage bonus" 2 "fire rate bonus" 0.3 "apply z velocity on damage" 250 "override footstep sound set" 5 } ItemAttributes // Treat for Giant Pyro { ItemName "The Gas Passer" "provide on active" 1 "item_meter_damage_for_full_charge" 1500 "max health additive penalty" -500 "weapon burn dmg increased" 25 "weapon burn time increased" 0.001 "override footstep sound set" 5 } // Demo ItemAttributes // Rapid Fire Demo { ItemName "TF_WEAPON_GRENADELAUNCHER" "mod no reload DISPLAY ONLY" 1 "mod max primary clip override" -1 "fire rate bonus" 0.5 "maxammo primary increased" 6.25 } ItemAttributes // Rapid Fire Demo { ItemName "Upgradeable TF_WEAPON_GRENADELAUNCHER" "mod no reload DISPLAY ONLY" 1 "mod max primary clip override" -1 "fire rate bonus" 0.5 "maxammo primary increased" 6.25 } ItemAttributes // Giant Burst Demo { ItemName "The Iron Bomber" "faster reload rate" 0.65 //35% faster reload "fire rate bonus" 0.1 "clip size upgrade atomic" 7.0 //"projectile spread angle penalty" 5 "Projectile speed increased" 1.1 } ItemAttributes // Giant Demo Knight { ItemName "Ali Baba's Wee Booties" "max health additive bonus" 0 } ItemAttributes // Giant Demo Knight { ClassName "TF_WEAPON_SWORD" "critboost on kill" 3 "max health additive penalty" 0 "melee cleave attack" 1 //"override footstep sound set" 5 } ItemAttributes // Sentry Buster { ItemName "The Ullapool Caber" "provide on active" 1 "move speed bonus" 3 "max health additive penalty" -1000 "no_duck" 1 "override footstep sound set" 3 "cannot pick up intelligence" 1 "increase player capture value" -1 "deploy time decreased" 0.0025 "add cond when active" 65 "cannot be backstabbed" 1 "not solid to players" 1 "custom item model" "models/empty.mdl" "explosion particle" "3rd_trail" "custom kill icon" "pumpkindeath" "no resupply" 1 } // Heavyweapons CustomWeapon { Name "The Deflector" OriginalItemName "Deflector" "special item description" "Free projectile deflection" "attack projectiles" 2 "damage bonus" 1.5 "max health additive penalty" -500 "mod minigun can holster while spinning" 1 } ItemAttributes // Giant Heavy { ClassName "TF_WEAPON_MINIGUN" "damage bonus" 1.5 "mod minigun can holster while spinning" 1 // "attack projectiles" 2 } ItemAttributes // Giant Heavy { ItemName "Natascha" "damage bonus" 1.5 "max health additive penalty" -500 "mod minigun can holster while spinning" 1 "no_jump" 1 "no_duck" 1 } ItemAttributes // Giant Heavy { ItemName "The Brass Beast" "damage bonus" 1.7 "spunup_damage_resistance" 1 "max health additive penalty" -1000 } ItemAttributes // Giant Heater Heavy { ItemName "The Huo Long Heatmaker" "damage penalty" 1 "ring of fire while aiming" 20 "damage bonus vs burning" 1.6 } ItemAttributes // Giant Shotgun Heavy { ItemName "TF_WEAPON_SHOTGUN_HWG" "provide on active" 1 "move speed bonus" 1.4 "fire rate bonus" 2.5 "bullets per shot bonus" 10 "damage penalty" 0.5 "mod no reload DISPLAY ONLY" 1 "mod max primary clip override" -1 "hidden secondary max ammo penalty" 3.125 "override footstep sound set" 5 } ItemAttributes // Giant Shotgun Heavy { ItemName "The Family Business" "provide on active" 1 "move speed bonus" 1.4 "fire rate bonus" 2.5 "bullets per shot bonus" 10 "damage penalty" 0.5 "mod no reload DISPLAY ONLY" 1 "mod max primary clip override" -1 "hidden secondary max ammo penalty" 3.125 "override footstep sound set" 5 "heal on hit for rapidfire" 417 "health regen" 33 } // Medic CustomWeapon { Name "Giant Medic Shotgun" OriginalItemName "the frontier justice" "provide on active" 1 "move speed bonus" 1.4 "clip size penalty" 1 "add cond on hit duration" 4 "mod sentry killed revenge" 0 // fuck you raf "mod max primary clip override" -1 "mod no reload display only" 1 "maxammo primary increased" 3.125 "damage penalty" 0.5 "bullets per shot bonus" 10 "fire rate bonus" 2.5 "custom item model" "models/weapons/c_models/c_shotgun/c_shotgun.mdl" "custom weapon fire sound" "Weapon_Shotgun.Single" "use original class weapon animations" 1 "custom kill icon" "shotgun_primary" } CustomWeapon { Name "medfix" OriginalItemName "TF_WEAPON_SYRINGEGUN_MEDIC" "provide on active" 1 "is suicide counter" 10 } // Misc CustomWeapon { Name "Robot Vision" OriginalItemName "Damaged Capacitor" "custom item model" "models/empty.mdl" "has pipboy build interface" 1 } CustomWeapon { Name "Soft Steps" OriginalItemName "Glitched Circuit Board" "custom item model" "models/empty.mdl" "override footstep sound set" -100 "special item description" "Silences the damn steps" } PlayerSpawnTemplate "player_pt" PlayerSpawnTemplate { Name NoKnifeBombPickup Class Spy } PlayerItemEquipSpawnTemplate { Name "caberbuster" ItemName "The Ullapool Caber" } PlayerItemEquipSpawnTemplate { Name "givescreencond" ItemName "Robot Vision" } PlayerItemEquipSpawnTemplate { Name "test_mini" ItemName "The Gunslinger" } PlayerItemEquipSpawnTemplate { Name "medicsteps" ItemName "Soft Steps" } PlayerShootTemplate { Name "nukeprojectile" Offset "0 0 -10" Angles "0 90 0" AttachToProjectile 1 ItemName "Army of One" } ExtraLoadoutItems { Misc "Robot Vision" Scout { Misc "Soft Steps" } Soldier { Primary "Rainbow Laser" Primary "Giant Black Box" Primary "Army of One" Misc "Soft Steps" } Pyro { Misc "Soft Steps" } Demoman { Misc "Soft Steps" } Heavyweapons { Primary "The Deflector" Misc "Soft Steps" } Engineer { Melee "Attack Sentry Gun" } Medic { Primary "Giant Medic Shotgun" } Spy { Secondary "Upgraded Munitions" } } // SPAWN POINTS ExtraSpawnPoint { Name "spawnbot_red" TeamNum 2 X -2397 Y -2934 Z -191 } ExtraSpawnPoint { Name "spawnbot_front" TeamNum 2 X 461 Y 861 Z -255 } ExtraSpawnPoint { Name "spawnbot_front" TeamNum 2 X -1698 Y 883 Z -167 } ExtraSpawnPoint { Name "spawnbot_front2" TeamNum 2 X 452 Y 819 Z -232 } ExtraSpawnPoint { Name "spawnbot_front2" TeamNum 2 X -1111 Y 515 Z -256 } ExtraSpawnPoint { Name "spawnbot_front_behind" TeamNum 2 X -74 Y -1262 Z -303 } ExtraSpawnPoint { Name "spawnbot_front_behind" TeamNum 2 X -1244 Y -1107 Z -303 } ExtraSpawnPoint { Name "spawnbot_front_behind_leftonly" TeamNum 2 X -74 Y -1262 Z -303 } ExtraSpawnPoint { Name "spawnbot_mid" TeamNum 2 X -807 Y -2281 Z -552 } ExtraSpawnPoint { Name "spawnbot_mid" TeamNum 2 X -1856 Y -2287 Z -447 } ExtraSpawnPoint { Name "spawnbot_mid_behind" TeamNum 2 X -3321 Y -1640 Z -383 } ExtraSpawnPoint { Name "spawnbot_pissdick" TeamNum 2 X -3162 Y -2943 Z -191 } ExtraSpawnPoint { Name "spawnbot_hatch" TeamNum 2 X -3595.42 Y -2474.59 Z -247.09 } ExtraTankPath { Name "tank_path_red" Node "1404 -1380 -414.972" Node "1404 -616 -414.972" Node "1404 -320 -414.972" Node "1348 -184 -414.972" Node "1220 -144 -414.972" Node "928 -64 -414.972" Node "656 0 -414.972" Node "456 56 -414.972" Node "224 136 -414.972" Node "-16 264 -414.972" Node "-248 392 -414.972" Node "-360 496 -414.972" Node "-480 624 -414.972" Node "-640 800 -414.972" Node "-680 968 -414.972" Node "-744 1128 -414.972" Node "-904 1400 -414.972" Node "-1056 1672 -414.972" } ExtraTankPath { Name "tankhatch" Node "-3512 -2280 -279" Node "-3512 -2220 -279" } PointTemplates { 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" //delete as much unnecessary/unwanted stuff as you can from your map of choice. //you probably won't risk crashes on simpler/smaller mvm maps, but the further away from the edict limit you can be the better //out-of-bounds decorations, ropes, unreachable easter egg room ents, etc. "OnMapSpawn" "filter_blue_bombhat,Kill,,0,-1" //gatebot maps will need their capture filter deleted for players to cap "OnMapSpawn" "filter_gatebot,Kill,,0,-1" "OnMapSpawn" "snd_gate_cap_alarm,Kill,,0,-1" //gets spammed by both red and blu team "OnMapSpawn" "bot_stun_*,Kill,,0,-1" //some gates may stun players "OnMapSpawn" "item_ammopack*,Kill,,0,-1" //might want to comment this out if players have limited ammo "OnMapSpawn" "spawnbot_mission_spy*,Disable,,0,-1" //disable bad spawns "OnMapSpawn" "spawnbot_mission_spy*,SetTeam,2,0.01,-1" "OnMapSpawn" "spawnbot_mission_spy*,Enable,,10,-1" // "OnMapSpawn" "Barricade*,Kill,,0,-1" //rottenburg specific, deletes front tank barricade "OnMapSpawn" "abduction_timer,Kill,,0,-1" "OnMapSpawn" "main_gate_door_alarm_proxy,Kill,,0,-1" "OnMapSpawn" "main_gate_prerequisite_door,Kill,,0,-1" "OnMapSpawn" "main_gate_prerequisite,Kill,,0,-1" "OnMapSpawn" "relay_enable_outer_nest,Kill,,0,-1" "OnMapSpawn" "elevatorpit,Close,0,0,-1" "OnMapSpawn" "elevatorpit,$setdata$m_NoiseArrivedClosed,hamburger,0,-1" "OnMapSpawn" "antispawncamp,forcespawn,0,0.1,-1" "OnMapSpawn" "side_gate,close,0,0,-1" "OnMapSpawn" "side_gate,$setdata$m_flBlockDamage,0,0,-1" //if there is no targetname for wasteful ents, you can also delete them by classname //deleting these decoration ropes frees up nearly 100 edicts on mvm_yiresa_rc5 "OnMapSpawn" "move_rope,Kill,,0,-1" "OnMapSpawn" "keyframe_rope,Kill,,0,-1" "OnMapSpawn" "point_spotlight,Kill,,0,-1" "OnMapSpawn" "bombpath_ho*,kill,0,0,-1" "OnMapSpawn" "prop_physics_multiplayer,kill,0,0,-1" "OnMapSpawn" "nav_avoid_flank_r,kill,0,0,-1" "OnMapSpawn" "nav_avoid_flank_l,kill,0,0,-1" "OnMapSpawn" "env_smokestack,kill,0,0,-1" "OnMapSpawn" "case_cows,kill,0,0,-1" "OnMapSpawn" "relay_cancelvo,kill,0,0,-1" // "OnMapSpawn" "robot*,kill,0,0,-1" "OnMapSpawn" "ufo*,kill,0,0,-1" "OnMapSpawn" "ufo,kill,0,0,-1" "OnMapSpawn" "vo_an*,kill,0,0,-1" "OnMapSpawn" "cow*,kill,0,0,-1" "OnMapSpawn" "jp*,kill,0,0,-1" "OnMapSpawn" "env_spark,kill,0,0,-1" "OnMapSpawn" "phys_ragdollmagnet,kill,0,0,-1" "OnMapSpawn" "moonrocks*,kill,0,0,-1" "OnMapSpawn" "nav_avoid_bomb_carrier,kill,0,0,-1" "OnMapSpawn" "fwd_upgradestation_spot*,kill,0,0,-1" "OnMapSpawn" "@bb@-2458 -2876 -323 -3172 -3253 62@func_upgradestation,kill,0,0,-1" // "OnMapSpawn" "main_gate_door_trigger,Kill,0,0,-1" // "OnMapSpawn" "filter_redteam,Kill,,0,-1" //red team filters might cause problems, deleting them might cause more problems // "OnMapSpawn" "side_gate*,Kill,,0,-1" "OnMapSpawn" "trigger_push,Disable,,0,-1" //some maps use trigger_pushes intended to un-stick bots //AddOutput can be used to modify existing map logic and automate certain tasks //basically, we can use it to connect the maps logic with our own home-brewed point templates like so: "OnMapSpawn" "wave_start_relay*,AddOutput,OnTrigger spawnbarrier*:Disable:0:-1" "OnMapSpawn" "wave_start_relay*,AddOutput,OnTrigger func_capturezone:Disable:0:-1" "OnMapSpawn" "wave_start_relay*,AddOutput,OnTrigger spawnbarrier*:Disable:0:-1" "OnMapSpawn" "wave_start_relay*,AddOutput,OnTrigger intel:Kill:0:-1" "OnMapSpawn" "wave_start_relay*,AddOutput,OnTrigger intel_new:Enable:0:-1" "OnMapSpawn" "wave_start_relay*,AddOutput,OnTrigger nav_refresh:RecomputeBlockers:0:-1" "OnMapSpawn" "wave_start_relay*,AddOutput,OnTrigger timer_relay:Trigger:0:-1" // "OnMapSpawn" "intel_new,AddOutput,OnPickupTeam2 intel_new:SetTeam:0:0:-1" "OnMapSpawn" "intel_new,AddOutput,OnDrop intel_new:SetTeam:3:0:-1" //"OnMapSpawn" "wave_start_relay*,AddOutput,OnTrigger koto_sound_begin:PlaySound:0:-1" //"OnMapSpawn" "wave_start_relay*,AddOutput,OnTrigger koto_sound_begin:StopSound:15:-1" //"OnMapSpawn" "wave_start_relay*,AddOutput,OnTrigger koto_sound_begin:FireUser1:15:-1" "OnMapSpawn" "wave_finished_relay,AddOutput,OnTrigger spawnbarrier*:Enable:0:-1" "OnMapSpawn" "wave_finished_relay,AddOutput,OnTrigger barrierfence*:Enable:0:-1" "OnMapSpawn" "wave_finished_relay,AddOutput,OnTrigger defendgatea:Enable:0:-1" "OnMapSpawn" "wave_finished_relay,AddOutput,OnTrigger gatenav:Enable:0:-1" "OnMapSpawn" "wave_finished_relay,AddOutput,OnTrigger kill_relay:Trigger:0:-1" "OnMapSpawn" "wave_finished_relay,AddOutput,OnTrigger main_gate_door_alarm_proxy_x:Enable:0:-1" "OnMapSpawn" "wave_finished_relay,AddOutput,OnTrigger timer_relay*:CancelPending:0:-1" "OnMapSpawn" "wave_finished_relay,AddOutput,OnTrigger main_gate_door_trigger_x:Enable:0:-1" "OnMapSpawn" "main_gate_relay,AddOutput,OnTrigger pop_interface:UnpauseBotSpawning:5:-1" //make everything 5 seconds instead of 20 seconds for gate cap "OnMapSpawn" "main_gate_relay,AddOutput,OnTrigger robot_radio_waves_beep2:StopSound:5:-1" "OnMapSpawn" "main_gate_relay,AddOutput,OnTrigger nav_refresh:RecomputeBlockers:0.1:-1" "OnMapSpawn" "main_gate_relay,AddOutput,OnTrigger nav_refresh:RecomputeBlockers:0.15:-1" "OnMapSpawn" "main_gate_relay,AddOutput,OnTrigger nav_refresh:RecomputeBlockers:0.2:-1" "OnMapSpawn" "main_gate_relay,AddOutput,OnTrigger defendgatea:Disable:0:-1" "OnMapSpawn" "main_gate_relay,AddOutput,OnTrigger main_gate_door_alarm_proxy_x:Disable:0:-1" "OnMapSpawn" "main_gate_relay,AddOutput,OnTrigger gatenav:Disable:0:-1" "OnMapSpawn" "main_gate,AddOutput,onfullyopen main_gate_capturepoint:setowner:3:0:-1" "OnMapSpawn" "main_gate,AddOutput,onfullyopen main_gate_relay:trigger:0:-1" "OnMapSpawn" "main_gate,AddOutput,onfullyopen main_gate:kill:0:-1" // "OnMapSpawn" "main_gate_door_trigger,AddOutput,OnCapTeam2 disablebarrier1:Trigger:0:-1" //"OnMapSpawn" "main_gate_door_trigger,AddOutput,OnCapTeam2 relay_enable_mid_nests:Trigger:0:-1" "OnMapSpawn" "relay_disable_gatecap,AddOutput,OnTrigger main_gate_door_alarm_proxy_x:Disable:0:-1" "OnMapSpawn" "relay_disable_gatecap,AddOutput,OnTrigger defendgatea:Disable:0:-1" "OnMapSpawn" "relay_disable_gatecap,AddOutput,OnTrigger gatenav:Disable:0:-1" "OnMapSpawn" "relay_enable_gatecap,AddOutput,OnTrigger defendgatea:Enable:0:-1" "OnMapSpawn" "relay_enable_gatecap,AddOutput,OnTrigger main_gate_door_alarm_proxy_x:Enable:0:-1" "OnMapSpawn" "relay_enable_gatecap,AddOutput,OnTrigger main_gate_door_trigger_x:Enable:0.1:-1" "OnMapSpawn" "relay_disable_gatecap,AddOutput,OnTrigger main_gate_door_trigger_x:Disable:0:-1" } NoFixup 1 logic_relay //trigger this to kill all players and buildings { "targetname" "kill_relay" "OnTrigger" "obj_dispenser,RemoveHealth,5000,0,-1" "OnTrigger" "obj_sentrygun,RemoveHealth,5000,0,-1" "OnTrigger" "obj_teleporter,RemoveHealth,5000,0,-1" "OnTrigger" "teleportblubacktospawn,Enable,0,-1" "OnTrigger" "teleportblubacktospawn,Disable,0.1,-1" } NoFixup 1 logic_relay //trigger this to lose { "origin" "0 0 0" "targetname" "redwin_relay" "OnTrigger" "bots_win_red,RoundWin,,0,-1" "OnTrigger" "pit_explosion_wav,PlaySound,,0,-1" //map dependent "OnTrigger" "failuresound,PlaySound,,0,-1" //map dependent } NoFixup 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" } NoFixup 1 trigger_teleport { "origin" "0 0 0" "mins" "-10000 -10000 -10000" "maxs" "10000 10000 10000" "spawnflags" "1" "StartDisabled" "1" "filtername" "filter_blu_team*" "target" "spawnbot*" "targetname" "teleportblubacktospawn" } func_nav_avoid { "origin" "-1342.51 -69.35 -206.24" "mins" "-100 -100 -100" "maxs" "100 100 100" "tags" "noflank" "targetname" "noflank_navavoid" "team" "-2" } func_nav_prerequisite { "targetname" "gatenav" "mins" "-4096 -4032 -768" "maxs" "4096 4032 768" "Entity" "defendgatea" "filtername" "filter_defending1" "origin" "-4088.51 4210.39 0" "spawnflags" "1" "StartDisabled" "0" "start_disabled" "0" "Task" "2" "Value" "-1" } func_nav_prerequisite { "targetname" "defendgatea" "mins" "-440 -180 -20" "maxs" "440 180 20" "Entity" "defendgatea" "filtername" "filter_defending1" "origin" "-341.92 -530.66 -556" "spawnflags" "1" "StartDisabled" "0" "start_disabled" "0" "Task" "2" "Value" "-1" } filter_tf_bot_has_tag { "Negated" "0" "require_all_tags" "1" "tags" "gatedefend" "targetname" "filter_defending1" } func_nav_prerequisite { "targetname" "defendnavleft" "mins" "-2000 -2000 -2000" "maxs" "2000 2000 2000" "Entity" "spawnbot_flanka" "filtername" "filter_defending2" "origin" "945.24 -906.18 -436" "spawnflags" "1" "Task" "2" "Value" "-1" } filter_tf_bot_has_tag { "Negated" "0" "require_all_tags" "1" "tags" "defendflank" "targetname" "filter_defending2" } func_nav_prerequisite //repeated for hatch { "targetname" "hatchnav" "mins" "-100 -100 -100" "maxs" "100 100 100" "Entity" "spawnbot_hatch" "filtername" "filter_hatch" "origin" "-3599.69 -2193.37 -224.76" "spawnflags" "1" "StartDisabled" "0" "start_disabled" "0" "Task" "2" "Value" "-1" } filter_tf_bot_has_tag { "Negated" "0" "require_all_tags" "1" "tags" "bot_hatch" "targetname" "filter_hatch" } NoFixup 1 trigger_multiple { "targetname" "main_gate_door_alarm_proxy_x" "mins" "-570 -947.5 -80" "maxs" "570 947.5 80" "Origin" "-550 -1332 -496" "filtername" "filter_redteam" "OnEndTouchAll" "main_gate_alarm_timer_relay,Trigger,,0,-1" "OnStartTouchAll" "main_gate_alarm_timer,Enable,,0,-1" "OnStartTouchAll" "main_gate_alarm_timer_relay,CancelPending,,0,-1" } NoFixup 1 trigger_timer_door { "area_cap_point" "main_gate_capturepoint" "area_time_to_cap" "10" "door_name" "main_gate" "origin" "-496 -100 -508.48" "spawnflags" "3" "StartDisabled" "0" "filtername" "filter_blueteam" "targetname" "main_gate_door_trigger_x" "team_cancap_2" "0" "team_cancap_3" "1" "team_numcap_2" "1" "team_numcap_3" "1" "team_startcap_2" "1" "team_startcap_3" "1" "mins" "-408 -220 -60" "maxs" "408 220 60" "OnStartTouchAll" "main_gate,Open,,0,-1" "OnEndTouchAll" "main_gate_alarm_door_reset_relay,Trigger,,0,-1" "OnBreakTeam2" "main_gate,Close,,0,-1" "OnCapTeam2" "main_gate,Open,,0.1,-1" "OnCapTeam2" "main_gate_door_trigger_x,Disable,,0,-1" "OnCapTeam2" "main_gate_relay,Trigger,,0,-1" "OnCapTeam2" "relay_enable_mid_nests,Trigger,,0,-1" "OnStartTouchAll" "relay_gate_lights_on,Trigger,,0,-1" "OnStartTouchAll" "main_gate_alarm_door_reset_relay,CancelPending,,0,-1" "OnBreakTeam2" "relay_gate_lights_off,Trigger,,0,-1" } NoFixup 1 item_teamflag { "origin" "-1006.13 2661.24 -306.25" "trail_effect" "2" "TeamNum" "0" "targetname" "intel_new" "StartDisabled" "1" "ScoringType" "0" "ReturnTime" "60000" "ReturnBetweenWaves" "1" "GameType" "3" "NeutralType" "1" "flag_trail" "flagtrail" "flag_paper" "player_intel_papertrail" "flag_model" "models/props_td/atom_bomb.mdl" "flag_icon" "../hud/objectives_flagpanel_carried" "angles" "0 270 0" } NoFixup 1 logic_relay { "targetname" "red_tank_relay" "OnTrigger" "tankbossred,Setteam,2,0.25,-1" "OnTrigger" "tankbossred,AddCaptureDestroyPostfix,destroy_mvm_cactus_valley3,0.5,-1" //cool explodey effect, doesn't work :( } trigger_multiple { "targetname" "thirdperson" "StartDisabled" "1" "spawnflags" "3" "origin" "-3513.58 -2416.38 -297.41" "maxs" "50 50 50" "mins" "-50 -50 -50" "filtername" "filter_blue" "OnStartTouch" "!activator,setforcedtauntcam,1,0.1,-1" "OnStartTouch" "!activator,SetHUDVisibility,0,0.1,-1" "OnStartTouch" "!activator,DisableDamageForces,,0,-1" //doesn't work? "OnEndTouch" "!activator,setforcedtauntcam,0,0,-1" "OnEndTouch" "!activator,SetHUDVisibility,1,0,-1" "OnEndTouch" "!activator,EnableDamageForces,,0,-1" } NoFixup 1 ambient_generic { "targetname" "failuresound" "health" "10" "message" "vo/announcer_failure.mp3" "pitch" "100" "pitchstart" "100" "radius" "20000" "spawnflags" "49" "origin" "0 0 0" } } buildingsuicide { OnSpawnOutput { Target !activator Action RemoveHealth Param 5000 } } player_pt { OnSpawnOutput { Target !activator Action $setprop$m_nBotSkill Param 2 } OnSpawnOutput { Target !activator Action $addcond Param "32 7.5" } OnSpawnOutput { Target !activator Action $addplayerattribute Param "crit mod disabled hidden|0" } OnSpawnOutput { Target filter_setup Action $testentity Param "tf_gamerules" Delay 0.1 } OnSpawnOutput { Target !activator Action $Regenerate } OnParentKilledOutput { Target cmd Action Command Param "r_screenoverlay ~" } } NoKnifeBombPickup // by royal { OnSpawnOutput { Target "setup" Action "Trigger" Delay 0 } OnSpawnOutput { Target "compare_loop" Action "Trigger" Delay 0.01 } logic_relay { "targetname" "setup" //m_hMyWeapons$ //in this case 1 is melee "OnTrigger" "@e@m_hMyWeapons$1@!activator,$GetEntIndex,compare_current_weapon|$SetVar$desiredEntIndex|-1,0,-1" } logic_relay { "targetname" "compare_loop" "spawnflags" "2" "OnTrigger" "@e@m_hActiveWeapon@!activator,$GetEntIndex,compare_current_weapon|$FireUser5|-1,0,-1" "OnTrigger" "!self,Trigger,,0.1,-1" } logic_relay { "targetname" "compare_current_weapon" "spawnflags" "2" "$OnUser5" "compare_current_weapon,$SetVar$inputHolder,,0,-1" //check if current weapon is desired slot "$OnUser5" "compare_result,InValue,$$=?(compare_current_weapon.desiredEntIndex == compare_current_weapon.inputHolder, 1, 0),0.01,-1" } logic_case { "targetname" "compare_result" "case01" "1" //true "case02" "0" //false //is not on slot "OnCase02" "!activator,$RemoveItemAttribute,cannot pick up intelligence|2,0,-1" //is on slot "OnCase01" "!activator,$AddItemAttribute,cannot pick up intelligence|1|2,0,-1" } } medicsteps { logic_relay { "onspawn" "!parent,$setclientprop$m_bIsMiniBoss,1,0,-1" "onspawn" "@e@m_hMyWeapons$0@!parent,$setclientprop$m_iTeamNum,2,0,-1" "$onkilled" "!parent,$resetclientprop$m_bIsMiniBoss,0,0,-1" } } nukeprojectile { prop_dynamic { "modelscale" "0.6" "skin" "1" "DisableBoneFollowers" "1" "disableshadows" "1" "model" "models/workshop/player/items/soldier/taunt_rocket_jockey/taunt_rocket_jockey.mdl" "solid" "0" "spawnflags" "0" "StartDisabled" "0" } } barriers //spawn blocker { NoFixup 1 func_forcefield { "disablereceiveshadows" "0" "renderamt" "255" "origin" "-550 1998 -167" "TeamNum" "2" "targetname" "spawnbarrierA1" // "parentname" "spawnbarrierA" "mins" "-150 -10 -198" "maxs" "150 10 198" "StartDisabled" "0" } prop_dynamic //prop for show { "targetname" "spawnbarrierA" "angles" "0 90 0" "DisableBoneFollowers" "1" "disablereceiveshadows" "1" "model" "models/props_mvm/reversemvm_redbot_wall.mdl" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "modelscale" "1.0" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "0" "renderfx" "16" //hologram effect, see renderfx section on the developer wiki for more "rendermode" "0" "SetBodyGroup" "0" "skin" "0" "CollisionGroup" "0" "solid" "0" "spawnflags" "0" "StartDisabled" "0" "origin" "-570 1949 -196" } prop_dynamic //prop for show { "targetname" "spawnbarrierA" "angles" "0 0 0" "DisableBoneFollowers" "1" "disablereceiveshadows" "1" "model" "models/props_mvm/reversemvm_redwall.mdl" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "modelscale" "1.5" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "0" "renderfx" "16" //hologram effect, see renderfx section on the developer wiki for more "rendercolor" "255 91 91" "rendermode" "0" "SetBodyGroup" "0" "skin" "0" "CollisionGroup" "0" "solid" "0" "spawnflags" "0" "StartDisabled" "0" "origin" "-570 1980 -241" } func_forcefield { "disablereceiveshadows" "0" "origin" "-1456 1504 -176" "renderamt" "255" "TeamNum" "2" "targetname" "spawnbarrierB1" // "parentname" "spawnbarrierB" "mins" "-8 -152 -226" "maxs" "8 152 226" "StartDisabled" "0" } prop_dynamic //prop for show { "targetname" "spawnbarrierB" "angles" "0 180 0" "DisableBoneFollowers" "1" "disablereceiveshadows" "1" "model" "models/props_mvm/reversemvm_redbot_wall.mdl" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "modelscale" "1.0" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "0" "renderfx" "16" //hologram effect, see renderfx section on the developer wiki for more "rendermode" "0" "SetBodyGroup" "0" "skin" "0" "CollisionGroup" "0" "solid" "0" "spawnflags" "0" "StartDisabled" "0" "origin" "-1413 1536 -269" } prop_dynamic //prop for show { "targetname" "spawnbarrierB" "angles" "0 90 0" "DisableBoneFollowers" "1" "disablereceiveshadows" "1" "model" "models/props_mvm/reversemvm_redwall.mdl" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "modelscale" "1.5" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "0" "renderfx" "16" //hologram effect, see renderfx section on the developer wiki for more "rendercolor" "255 91 91" "rendermode" "0" "SetBodyGroup" "0" "skin" "0" "CollisionGroup" "0" "solid" "0" "spawnflags" "0" "StartDisabled" "0" "origin" "-1408 1536 -320" } } station { NoFixup 1 prop_dynamic //upgrade station { "targetname" "upgradestation" "angles" "0 0 0" "DisableBoneFollowers" "0" "disablereceiveshadows" "0" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "model" "models/props_mvm/mvm_upgrade_blu.mdl" "modelscale" "1" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "255" "renderfx" "0" "rendermode" "0" "SetBodyGroup" "0" "skin" "0" "solid" "0" "spawnflags" "0" "origin" "0 0 0" } func_upgradestation { "mins" "-105 -100 0" "maxs" "105 100 242" "parentname" "upgradestation" } prop_dynamic { "targetname" "shopcollision" "angles" "0 -90 0" "DisableBoneFollowers" "1" "disablereceiveshadows" "1" "model" "models/props_vehicles/train_flatcar_container.mdl" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "modelscale" "1" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "0" "renderfx" "0" "rendermode" "10" "SetBodyGroup" "0" "skin" "0" "CollisionGroup" "5" "solid" "6" "spawnflags" "0" "StartDisabled" "0" "origin" "0 0 0" } } blocker //giant building for blocking stuff { NoFixup 1 func_forcefield { "disablereceiveshadows" "0" "origin" "136 -928 -202" "renderamt" "255" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "barrierfence1a" //"parentname" "barrierfence1" "mins" "-8 -96 -94" "maxs" "8 96 94" "StartDisabled" "0" } func_forcefield { "disablereceiveshadows" "0" "origin" "8 864 -160" "renderamt" "255" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "barrierfence1a" //"parentname" "barrierfence1" "mins" "-8 -60 -96" "maxs" "8 60 96" "StartDisabled" "0" } func_forcefield { "disablereceiveshadows" "0" "origin" "-1016 736 -184" "renderamt" "255" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "barrierfence1a" //"parentname" "barrierfence1" "mins" "-8 -104 -96" "maxs" "8 104 96" "StartDisabled" "0" } func_forcefield { "disablereceiveshadows" "0" "origin" "-1368 360 -184" "renderamt" "255" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "barrierfence1a" //"parentname" "barrierfence1" "mins" "-112 -8 -96" "maxs" "112 8 96" "StartDisabled" "0" } func_forcefield { "disablereceiveshadows" "0" "origin" "568 564 -160" "renderamt" "255" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "barrierfence1a" //"parentname" "barrierfence1" "mins" "-8 -60 -96" "maxs" "8 60 96" "StartDisabled" "0" } func_forcefield { "disablereceiveshadows" "0" "origin" "164 568 -160" "renderamt" "255" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "barrierfence1a" //"parentname" "barrierfence1" "mins" "-8 -60 -96" "maxs" "8 60 96" "StartDisabled" "0" } func_forcefield { "disablereceiveshadows" "0" "origin" "48 -1504 -200" "renderamt" "255" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "barrierfence1a" //"parentname" "barrierfence1" "mins" "-8 -128 -104" "maxs" "8 128 104" "StartDisabled" "0" } func_forcefield { "disablereceiveshadows" "0" "origin" "64 -2032 -412" "renderamt" "255" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "barrierfence1a" //"parentname" "barrierfence1" "mins" "-12 -176 -164" "maxs" "12 176 164" "StartDisabled" "0" } prop_dynamic { "id" "3" "targetname" "barrierfence1" "classname" "prop_dynamic" "angles" "0 270 0" "DisableBoneFollowers" "0" "disablereceiveshadows" "0" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "model" "models/props_mvm/reversemvm_redwall_256x288.mdl" "modelscale" "1.5" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "255" "renderfx" "16" "rendermode" "0" // "rendermode" "10" un-comment this and comment rendermode 0 to make it invisible "SetBodyGroup" "0" "skin" "0" "solid" "0" "spawnflags" "0" "origin" "152 -928 -208" } prop_dynamic { "id" "3" "targetname" "barrierfence1" "classname" "prop_dynamic" "angles" "0 270 0" "DisableBoneFollowers" "0" "disablereceiveshadows" "0" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "model" "models/props_mvm/reversemvm_redwall_256x288.mdl" "modelscale" "1.5" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "255" "renderfx" "16" "rendermode" "0" // "rendermode" "10" un-comment this and comment rendermode 0 to make it invisible "SetBodyGroup" "0" "skin" "0" "solid" "0" "spawnflags" "0" "origin" "63.9999 -1456 -208" } prop_dynamic { "id" "3" "targetname" "barrierfence1" "classname" "prop_dynamic" "angles" "0 270 0" "DisableBoneFollowers" "0" "disablereceiveshadows" "0" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "model" "models/props_mvm/reversemvm_redwall_256x288.mdl" "modelscale" "1.5" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "255" "renderfx" "16" "rendermode" "0" // "rendermode" "10" un-comment this and comment rendermode 0 to make it invisible "SetBodyGroup" "0" "skin" "0" "solid" "0" "spawnflags" "0" "origin" "71.9999 -2008 -440" } func_forcefield { "disablereceiveshadows" "0" "origin" "-1632 -2016 -296" "renderamt" "255" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "barrierfence2a" //"parentname" "barrierfence2" "mins" "-8 -384 -160" "maxs" "8 384 160" "StartDisabled" "0" } func_forcefield { "disablereceiveshadows" "0" "origin" "-992 -2216 -488" "renderamt" "255" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "barrierfence2a" //"parentname" "barrierfence2" "mins" "-80 -8 -96" "maxs" "80 8 96" "StartDisabled" "0" } func_forcefield { "disablereceiveshadows" "0" "origin" "-488 -1888 -488" "renderamt" "255" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "barrierfence2a" //"parentname" "barrierfence2" "mins" "-8 -80 -96" "maxs" "8 80 96" "StartDisabled" "0" } prop_dynamic { "id" "3" "targetname" "barrierfence2" "classname" "prop_dynamic" "angles" "0 -90 0" "DisableBoneFollowers" "0" "disablereceiveshadows" "0" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "model" "models/props_mvm/reversemvm_redwall.mdl" "modelscale" "1.5" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "255" "renderfx" "16" "rendermode" "0" // "rendermode" "10" un-comment this and comment rendermode 0 to make it invisible "SetBodyGroup" "0" "skin" "0" "solid" "0" "spawnflags" "0" "origin" "-1656 -2044 -336" } prop_dynamic { "id" "3" "targetname" "barrierfence2" "classname" "prop_dynamic" "angles" "0 0 0" "DisableBoneFollowers" "0" "disablereceiveshadows" "0" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "model" "models/props_mvm/reversemvm_redwall_112x152.mdl" "modelscale" "1.25" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "255" "renderfx" "16" "rendermode" "0" // "rendermode" "10" un-comment this and comment rendermode 0 to make it invisible "SetBodyGroup" "0" "skin" "0" "solid" "0" "spawnflags" "0" "origin" "-992 -2208 -496" } prop_dynamic { "id" "3" "targetname" "barrierfence2" "classname" "prop_dynamic" "angles" "0 270 0" "DisableBoneFollowers" "0" "disablereceiveshadows" "0" "disableshadows" "1" "model" "models/props_mvm/reversemvm_redwall_112x152.mdl" "modelscale" "1.25" "renderfx" "16" // "rendermode" "10" un-comment this and comment rendermode 0 to make it invisible "origin" "-488 -1888 -496" } trigger_add_tf_player_condition { "targetname" "fieldprotection_front" "origin" "-288 -1912 472" "mins" "-1692 -1560 -1024" "maxs" "1692 1560 1024" "spawnflags" "1" "filtername" "filter_redteam" "condition" "51" "duration" "-1" } trigger_add_tf_player_condition { "targetname" "fieldprotection_front" "origin" "300 848 -148" "mins" "-284 -144 -123.5" "maxs" "284 144 123.5" "spawnflags" "1" "filtername" "filter_redteam" "condition" "51" "duration" "-1" } trigger_add_tf_player_condition { "targetname" "fieldprotection_front" "origin" "408 648 -148" "mins" "-176 -144 -123.5" "maxs" "176 144 123.5" "spawnflags" "1" "filtername" "filter_redteam" "condition" "51" "duration" "-1" } trigger_add_tf_player_condition { "targetname" "fieldprotection_front" "origin" "-1404 640 -152" "mins" "-380 -272 -144" "maxs" "380 272 144" "spawnflags" "1" "filtername" "filter_redteam" "condition" "51" "duration" "-1" } trigger_add_tf_player_condition { "targetname" "fieldprotection_mid" "origin" "-3428 -2216 200" "mins" "-1796 -1176 -648" "maxs" "1796 1176 648" "spawnflags" "1" "filtername" "filter_redteam" "condition" "51" "duration" "-1" } } removeblockers { NoFixup 1 logic_relay { "targetname" "disablebarrier1" "OnTrigger" "barrierfence1*,Disable,,0,-1" "OnTrigger" "side_gate_trigger,Kill,0,0,-1" "OnTrigger" "side_gate,close,0,0.02,-1" "OnTrigger" "side_gate,setspeed,6.5,1.01,-1" "OnTrigger" "side_gate,open,0,1.02,-1" "OnTrigger" "fieldprotection_front,Kill,0,0.2,-1" "OnTrigger" "player,$removecond,51,0.1,-1" "OnTrigger" "fieldprotection_mid,Disable,0,0,-1" "OnTrigger" "fieldprotection_mid,Enable,0,0.2,-1" "OnTrigger" "spawnbot_front2,$teleporttoentity,spawnbot_front_behind_leftonly,0,-1" } NoFixup 1 logic_relay { "targetname" "disablebarrier2" "OnTrigger" "barrierfence2*,Disable,,0,-1" "OnTrigger" "relay_enable_inner_nest,Trigger,,0,-1" "OnTrigger" "player,$removecond,51,0.1,-1" "OnTrigger" "fieldprotection_mid,Kill,0,0.2,-1" "OnTrigger" "spawnbot_front_behind_leftonly,$teleporttoentity,spawnbot_red,0,-1" } } tinydesk { NoFixup 1 prop_dynamic { "StartDisabled" "0" "solid" "0" "model" "models/player/engineer.mdl" "skin" "0" "MaxAnimTime" "0.1" "MinAnimTime" "0.1" "playbackrate" "60" "modelscale" "0.1" "DisableBoneFollowers" "0" "disablereceiveshadows" "0" "disableshadows" "1" "DefaultAnim" "taunt_russian" "origin" "0 0 0" } } decoration { NoFixup 1 prop_dynamic { "angles" "0 0 0" "DisableBoneFollowers" "0" "disablereceiveshadows" "0" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" // "fademindist" "0.0001" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "model" "models/props_movies/campervan/campervan.mdl" "modelscale" "1" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "255" "renderfx" "0" "rendermode" "0" "SetBodyGroup" "0" "skin" "0" "solid" "6" "spawnflags" "0" "origin" "0 0 0" } } decoration2 { NoFixup 1 prop_dynamic { "angles" "0 0 0" "DisableBoneFollowers" "0" "disablereceiveshadows" "0" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" // "fademindist" "0.0001" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "model" "models/bots/boss_bot/boss_blimp_damage3.mdl" "modelscale" "1" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "255" "renderfx" "0" "rendermode" "0" "SetBodyGroup" "0" "skin" "1" "solid" "6" "spawnflags" "0" "origin" "0 0 0" } } hatchblocker //hatch prop & collision { NoFixup 1 func_forcefield { "disablereceiveshadows" "0" "origin" "-3513.03 -2394.35 -280.04" "renderamt" "255" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "10" "TeamNum" "2" "targetname" "hatchcovercollision" "parentname" "hatchcover" "mins" "-100 -120 -100" "maxs" "100 120 100" "StartDisabled" "0" } NoFixup 1 prop_dynamic { "targetname" "hatchcover" "angles" "0 0 0" "DisableBoneFollowers" "1" "disablereceiveshadows" "1" "model" "models/hatch_shield.mdl" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "modelscale" "1.0" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "100" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "0" "SetBodyGroup" "0" "CollisionGroup" "1" "skin" "0" "solid" "0" "spawnflags" "0" "StartDisabled" "0" "origin" "-3504 -2464 -312" } } hatchunblocker { NoFixup 1 logic_relay { "targetname" "unblockhatch" "OnTrigger" "hatchcover*,Disable,,0,-1" "OnTrigger" "func_capturezone,Enable,,0,-1" "OnTrigger" "hatchopen,Show,,0,-1" "OnTrigger" "thirdperson,Enable,,0,-1" } } caberbuster // buster stuff - Hell-met { OnSpawnOutput { Target "caber_checker" Action trigger Delay 0.5 } OnParentKilledOutput { Target "!activator" Action addoutput Param "rendermode 0" } OnParentKilledOutput { Target "bustrelay" Action kill Delay 0.1 } logic_relay { "targetname" "caber_checker" "spawnflags" "2" "ontrigger" "filter_caber,testactivator,,0,-1" "ontrigger" "!self,trigger,,0.1,-1" "onspawn" "!parent,addoutput,rendermode 0,0,-1" "onspawn" "@c@!parent,addoutput,rendermode 1,0,-1" "onspawn" "@c@!parent,alpha,255,0.5,-1" "onspawn" "!parent,$addplayerattribute,cannot pick up intelligence|1,0,-1" "onspawn" "!parent,$weaponswitchslot,0,0,-1" "onspawn" "busthurt,$setowner,!parent,0,-1" "onspawn" "!parent,addoutput,onuser3 bustcmd:command:taunt:0:-1,0,-1" } point_clientcommand { "targetname" "bustcmd" } filter_tf_condition { "targetname" "filter_caber" "condition" "65" "onpass" "!parent,$displaytextcenter,ACTIVATING BUSTER MODE,0,-1" "onpass" "caber_checker,cancelpending,,0,-1" "onpass" "bustermodel,alpha,255,0,-1" "onpass" "!parent,addoutput,rendermode 10,0,-1" "onpass" "@c@!parent,alpha,0,0,-1" "onpass" "caber_swing_check,trigger,,0,-1" "onpass" "player,$playsoundtoself,MVM.SentryBusterIntro,0,-1" "onpass" "bustloop,playsound,,0,-1" "onpass" "!parent,$weaponstripslot,0,0,-1" "onpass" "!parent,$weaponstripslot,1,0,-1" "onpass" "!parent,$giveitem,ESL Season VI Division 2 3rd Place,0.01,-1" "onpass" "bustermodel,$getdata$m_iName,fixupnamer|$setkey$case01|def,0.01,-1" "onpass" "wearable_check,$testentity,@c@!parent,0.02,-1" "onpass" "fixupnamer,$format,,0.02,-1" "onpass" "bustermodel,fireuser1,,0.02,-1" } ambient_generic { "targetname" "bustloop" "message" "MVM.SentryBusterLoop" "health" "3" "radius" "5000" "spawnflags" "16" "sourceentityname" "!parent" } ambient_generic { "targetname" "bustspin" "message" "MVM.SentryBusterSpin" "health" "3" "radius" "5000" "spawnflags" "48" "sourceentityname" "!parent" } ambient_generic { "targetname" "bustboom" "message" "MVM.SentryBusterExplode" "health" "3" "radius" "5000" "spawnflags" "48" "sourceentityname" "!parent" } logic_relay { "targetname" "caber_swing_check" "spawnflags" "2" "ontrigger" "filter_swung1,$testentity,@c@!parent,0,-1" "ontrigger" "filter_swung2,$testentity,@c@!parent,0,-1" "ontrigger" "filter_swung3,$testentity,@c@!parent,0,-1" "ontrigger" "!self,trigger,,0.1,-1" } $filter_sendprop { "targetname" "wearable_check" "$name" "m_iItemDefinitionIndex" "$value" "8037" "$compare" "equal" "onpass" "fire_input_on_passed_entity,$callertoactivator,,0,-1" } logic_case { "targetname" "fire_input_on_passed_entity" "ondefault" "!activator,$setmodeloverride,models/bots/demo/bot_sentry_buster.mdl,0,-1" "ondefault" "!activator,addoutput,rendermode 1,0,-1" } trigger_brush // used as a fixup name for tf_wearable { "targetname" "bustermodel" "onuser1" "!self,kill,,0,-1" } logic_case { "targetname" "fixupnamer" "case16" "ondefault !activator:addoutput:targetname %:0:-1" "ondefault" "fire_input_on_passed_entity,addoutput,,0,-1" } $filter_sendprop // right swing anim { "targetname" "filter_swung1" "$name" "m_nSequence" "$value" "4" "$compare" "equal" "onpass" "bustrelay,trigger,,0,-1" "onpass" "caber_swing_check,cancelpending,,0,-1" } $filter_sendprop // left swing anim { "targetname" "filter_swung2" "$name" "m_nSequence" "$value" "5" "$compare" "equal" "onpass" "bustrelay,trigger,,0,-1" "onpass" "caber_swing_check,cancelpending,,0,-1" } $filter_sendprop // crit swing anim { "targetname" "filter_swung3" "$name" "m_nSequence" "$value" "6" "$compare" "equal" "onpass" "bustrelay,trigger,,0,-1" "onpass" "caber_swing_check,cancelpending,,0,-1" } trigger_hurt { "targetname" "busthurt" "mins" "-300 -300 -300" "maxs" "300 300 300" "damagetype" "64" "damage" "4000" //remember this is halved "spawnflags" "64" "startdisabled" "1" "onstarttouch" "filter_sentry,testactivator,,0,-1" "onstarttouch" "filter_dispenser,testactivator,,0,-1" "onstarttouch" "filter_tele,testactivator,,0,-1" } filter_activator_class { "targetname" "filter_thesentry" "filterclass" "obj_sentrygun" } filter_multi { "targetname" "filter_sentry" "filter01" "filter_thesentry" "filter02" "filter_redteam" "onpass" "!activator,removehealth,10000,0,-1" } filter_activator_class { "targetname" "filter_thedispenser" "filterclass" "obj_dispenser" } filter_multi { "targetname" "filter_dispenser" "filter01" "filter_thedispenser" "filter02" "filter_redteam" "onpass" "!activator,removehealth,10000,0,-1" } filter_activator_class { "targetname" "filter_thetele" "filterclass" "obj_teleporter" } filter_multi { "targetname" "filter_tele" "filter01" "filter_thetele" "filter02" "filter_redteam" "onpass" "!activator,removehealth,10000,0,-1" } info_particle_system { "targetname" "bustparticle" "effect_name" "hightower_explosion" } prop_dynamic { "targetname" "fakebustermodel" "model" "models/bots/demo/bot_sentry_buster.mdl" "skin" "1" "disablebonefollowers" "1" "startdisabled" "1" "onanimationbegun" "!parent,$getprop$m_flModelScale,fakebustermodel|$setprop$m_flModelScale|1,0,-1" } logic_relay { "targetname" "bustrelay" "ontrigger" "!parent,$addcond,14,0,-1" "ontrigger" "!self,disable,,0,-1" "ontrigger" "bustermodel,alpha,0,0,-1" "ontrigger" "fakebustermodel,setanimation,sentry_buster_preExplode,0,-1" "ontrigger" "fakebustermodel,enable,,0,-1" "ontrigger" "bustloop,stopsound,,0,-1" "ontrigger" "bustspin,playsound,,0,-1" "ontrigger" "!parent,fireuser3,,0,-1" "ontrigger" "fakebustermodel,kill,,2,-1" "ontrigger" "bustparticle,start,,2,-1" "ontrigger" "busthurt,enable,,2,-1" "ontrigger" "bustboom,playsound,,2,-1" "ontrigger" "busthurt,disable,,2.01,-1" "ontrigger" "!parent,$suicide,,2,-1" "ontrigger" "!self,kill,,2.1,-1" } RemoveIfKilled "bustrelay" KeepAlive 1 } nests { NoFixup 1 //sniper func_tfbot_hint { "targetname" "sniperspot" "origin" "-1021 -239 -279" "mins" "-100 -100 -100" "maxs" "100 100 100" "team" "2" } func_tfbot_hint { "targetname" "sniperspot" "origin" "521 -0 -465" "mins" "-100 -100 -100" "maxs" "100 100 100" "team" "2" } func_tfbot_hint { "targetname" "sniperspot" "origin" "947 -1634 -448" "mins" "-100 -100 -100" "maxs" "100 100 100" "team" "2" } func_tfbot_hint { "targetname" "sniperspot" "origin" "-539 -2129 -303" "mins" "-100 -100 -100" "maxs" "100 100 100" "team" "2" } func_tfbot_hint { "targetname" "sniperspot" "origin" "-1850 -2276 -447" "mins" "-100 -100 -100" "maxs" "100 100 100" "team" "2" } func_tfbot_hint { "targetname" "sniperspot" "origin" "-3847 -1190 -367" "mins" "-100 -100 -100" "maxs" "100 100 100" "team" "2" } func_tfbot_hint { "targetname" "sniperspot" "origin" "-4174 -2327 -383" "mins" "-100 -100 -100" "maxs" "100 100 100" "team" "2" } } GiantEngieIdle { OnSpawnOutput { Target "!activator" Action "$PlaySound" Param "=50|mvm/giant_pyro/giant_pyro_loop.wav" } } annotations { NoFixup 1 training_annotation { "targetname" "hatchopen" "parentname" "hatch_prop" "display_text" "The bomb can now be deployed!" "lifetime" "10" "origin" "-3645.17 -2371.95 -229.12" } } antispawncamp { NoFixup 1 OnSpawnOutput { Target ubersentry Action $setmodeloverride Param "models/buildables/sentry1_uber.mdl" Delay 0.01 } obj_sentrygun { "targetname" "ubersentry" "origin" "-1265.3 1846.39 -75.8304" "angles" "15 300 15" "teamnum" "3" "spawnflags" "10" } obj_sentrygun { "targetname" "ubersentry" "origin" "-344 2292 -40" "angles" "10 270 20" "teamnum" "3" "spawnflags" "10" } obj_dispenser { "targetname" "spawndispenser" "origin" "-1736 1536 -428" "angles" "75 180 180" "teamnum" "3" "$radiusmult" "3" "$ratemult" "2" "defaultupgrade" "2" "spawnflags" "8" } obj_dispenser { "targetname" "spawndispenser" "origin" "-522 2398 -351" "angles" "0 10 10" "teamnum" "3" "$radiusmult" "3" "$ratemult" "2" "defaultupgrade" "2" "spawnflags" "8" } } nav_stuff // logic by b855 { NoFixup 1 OnSpawnOutput { Target nav_avoid_redspawndrop Action Disable Delay 0.1 } OnSpawnOutput { Target nav_avoid_onewaygate* Action Disable Delay 0.1 } func_nav_avoid { "origin" "-928 616 -292" "mins" "-90 -152 -60" "maxs" "90 152 60" "tags" "bot_cantjump" "team" "-2" } func_nav_avoid { "origin" "-1936 -2656 -356" "mins" "-240 -320 -100" "maxs" "240 320 100" "tags" "bot_cantjump" "team" "-2" } func_nav_avoid { "origin" "-944 -416 -253" "mins" "-48 -64 -35" "maxs" "48 64 35" "tags" "bot_cantjump" "team" "-2" } func_nav_avoid { "origin" "-944 -416 -253" "mins" "-48 -64 -35" "maxs" "48 64 35" "tags" "bot_cantjump" "team" "-2" } func_nav_avoid { "origin" "-224 -2256 -496" "mins" "-128 -80 -48" "maxs" "128 80 48" "tags" "bot_cantjump bot_sentrybuster" "team" "-2" } func_nav_avoid { "origin" "-2528 -704 -160" "mins" "-98 -128 -32" "maxs" "98 128 32" "tags" "bot_cantjump" "team" "-2" } func_nav_avoid { "origin" "64 -208 -294" "mins" "-192 -208 -166" "maxs" "192 208 166" "tags" "bot_cantjump" "team" "-2" } func_nav_avoid { "origin" "-1216 1120 -316" "mins" "-352 -256 -164" "maxs" "352 256 164" "tags" "bot_cantjump bot_sentrybuster bot_red" "team" "-2" } func_nav_avoid { "targetname" "nav_avoid_redspawndrop" "origin" "-2528 -2240 -173" "mins" "-192 -320 -51" "maxs" "192 320 51" "startdisabled" "1" "tags" "bot_red" "team" "-2" } func_nav_avoid { "targetname" "nav_avoid_redspawndrop" "origin" "-2288 -2720 -301" "mins" "-272 -160 -174" "maxs" "272 160 174" "startdisabled" "1" "tags" "bot_red" "team" "-2" } func_nav_avoid { "targetname" "nav_avoid_redspawndrop" "origin" "-3000 -1720 -176" "mins" "-216 -280 -128" "maxs" "216 280 128" "startdisabled" "1" "tags" "bot_red" "team" "-2" } func_nav_avoid { "targetname" "nav_avoid_redspawndrop" "origin" "-3168 -2192 -184" "mins" "-224 -290 -120" "maxs" "224 290 120" "startdisabled" "1" "tags" "bot_red" "team" "-2" } func_nav_avoid { "origin" "352 -2224 -416" "mins" "-192 -112 -64" "maxs" "192 112 64" "tags" "bot_cantjump" "team" "-2" } func_nav_avoid { "origin" "-1536 -2416 -416" "mins" "-96 -80 -64" "maxs" "96 80 64" "tags" "bot_cantjump" "team" "-2" } func_nav_avoid { "origin" "576 -816 -256" "mins" "-64 -80 -32" "maxs" "64 80 32" "tags" "bot_cantjump" "team" "-2" } func_nav_avoid { "origin" "-912 -2336 -560" "mins" "-336 -128 -48" "maxs" "336 128 48" "tags" "bot_sentrybuster" "team" "-2" } func_nav_avoid { "origin" "-736 -2080 -560" "mins" "-160 -359 -48" "maxs" "160 359 48" "tags" "bot_sentrybuster" "team" "-2" } func_nav_avoid { "origin" "-656 -1872 -560" "mins" "-328 -936 -280" "maxs" "328 936 280" "tags" "bot_sentrybuster" "team" "-2" } func_nav_avoid { "origin" "347 156 440" "mins" "-23 -143 -162" "maxs" "23 143 162" "team" "-2" "tags" "common giant bot_red bot_blu" } func_nav_avoid { "targetname" "nav_avoid_onewaygate" "origin" "-1188 -352 -172" "mins" "-206 -178 -158" "maxs" "206 178 158" "team" "-2" "tags" "bot_red" } func_nav_avoid { "targetname" "nav_avoid_onewaygate_w5" "origin" "-1248 -288 -464" "mins" "-352 -672 -365" "maxs" "352 672 365" "team" "-2" "tags" "bot_blu" } func_nav_avoid { "targetname" "nav_avoid_ubersentry" "origin" "-2008 -2696 -320" "mins" "-360 -344 -192" "maxs" "360 344 192" "team" "3" "tags" "bot_blu" } func_nav_avoid { "targetname" "ffs_please_work" "origin" "96 -288 -245" "mins" "-146 -82 -167" "maxs" "146 82 167" "team" "-2" "tags" "bot_red" } func_nav_avoid { "targetname" "nav_avoid_mid_stairs" "origin" "-1856 -1600 -368" "mins" "-160 -285 -176" "maxs" "160 285 176" "team" "-2" "tags" "nav_avoid_mid_stairs" } func_nav_avoid { "targetname" "fuckyou" "origin" "-1440 -1120 -272" "mins" "-480 -544 -175" "maxs" "480 544 175" "team" "-2" "tags" "stop_getting_stuck_retard bot_sentrybuster" } } sentries_w1 { NoFixup 1 OnSpawnOutput { Target "hatch_ubersentry" Action "$setmodeloverride" Param "models/buildables/sentry2_uber.mdl" } obj_sentrygun { "targetname" "hatch_ubersentry" "origin" "-3061 -3046 -191" "angles" "0 123 0" "teamnum" "2" "defaultupgrade" "1" "spawnflags" "10" } obj_sentrygun { "targetname" "hatch_ubersentry" "origin" "-2485 -2316 -191" "angles" "0 -164 0" "teamnum" "2" "defaultupgrade" "1" "spawnflags" "10" } obj_sentrygun { "targetname" "hatch_ubersentry" "origin" "-2841 -1986 -191" "angles" "0 90 0" "teamnum" "2" "defaultupgrade" "1" "spawnflags" "10" } obj_sentrygun { "targetname" "hatch_ubersentry" "origin" "-2655 -2631 -191" "angles" "0 104 0" "teamnum" "2" "defaultupgrade" "1" "spawnflags" "10" } obj_sentrygun { "targetname" "red_sentry" "origin" "-600 180 -454" "angles" "0 90 0" "teamnum" "2" "defaultupgrade" "0" } obj_sentrygun { "targetname" "red_sentry" "origin" "-1289 -1347 -303" "angles" "0 83 0" "teamnum" "2" "defaultupgrade" "0" } obj_sentrygun { "targetname" "red_sentry" "origin" "963 -221 -453" "angles" "0 148 0" "teamnum" "2" "defaultupgrade" "0" } obj_sentrygun { "targetname" "red_sentry" "origin" "944 -1617 -448" "angles" "0 87 0" "teamnum" "2" "defaultupgrade" "0" } obj_sentrygun { "targetname" "red_sentry" "origin" "-1745 -2056 -447" "angles" "0 19 0" "teamnum" "2" "defaultupgrade" "0" } obj_sentrygun { "targetname" "red_sentry" "origin" "-3694 -2133 -319" "angles" "0 135 0" "teamnum" "2" "defaultupgrade" "0" } obj_sentrygun { "targetname" "red_sentry" "origin" "-4113 -1835 -255" "angles" "0 0 0" "teamnum" "2" "defaultupgrade" "0" } obj_sentrygun { "targetname" "red_sentry" "origin" "329 -300 -199" "angles" "0 122 0" "teamnum" "2" "defaultupgrade" "0" } obj_sentrygun { "targetname" "red_sentry" "origin" "1421 -1091 -511" "angles" "0 88 0" "teamnum" "2" "defaultupgrade" "0" } obj_sentrygun { "targetname" "red_sentry" "origin" "-630 -1481 -303" "angles" "0 90 0" "teamnum" "2" "defaultupgrade" "0" } obj_sentrygun { "targetname" "red_sentry" "origin" "-3555 -790 -255" "angles" "0 0 0" "teamnum" "2" "defaultupgrade" "0" } obj_sentrygun { "targetname" "red_sentry" "origin" "-2575 -2051 -191" "angles" "0 45 0" "teamnum" "2" "defaultupgrade" "0" } obj_sentrygun { "targetname" "red_sentry" "origin" "-3404 -1136 -446" "angles" "0 25 0" "teamnum" "2" "defaultupgrade" "0" } obj_sentrygun { "targetname" "red_sentry" "origin" "-753 -670 -575" "angles" "0 -66 0" "teamnum" "2" "defaultupgrade" "0" } } sentries_w2 { NoFixup 1 OnSpawnOutput { Target "hatch_ubersentry" Action "$setmodeloverride" Param "models/buildables/sentry2_uber.mdl" } obj_sentrygun { "targetname" "hatch_ubersentry" "origin" "-3061 -3046 -191" "angles" "0 123 0" "teamnum" "2" "defaultupgrade" "1" "spawnflags" "10" } obj_sentrygun { "targetname" "hatch_ubersentry" "origin" "-2485 -2316 -191" "angles" "0 -164 0" "teamnum" "2" "defaultupgrade" "1" "spawnflags" "10" } obj_sentrygun { "targetname" "hatch_ubersentry" "origin" "-2841 -1986 -191" "angles" "0 90 0" "teamnum" "2" "defaultupgrade" "1" "spawnflags" "10" } obj_sentrygun { "targetname" "hatch_ubersentry" "origin" "-2655 -2631 -191" "angles" "0 104 0" "teamnum" "2" "defaultupgrade" "1" "spawnflags" "10" } obj_sentrygun { "targetname" "red_sentry" "origin" "-600 180 -454" "angles" "0 90 0" "teamnum" "2" "defaultupgrade" "1" } obj_sentrygun { "targetname" "red_sentry" "origin" "-1289 -1347 -303" "angles" "0 83 0" "teamnum" "2" "defaultupgrade" "1" } obj_sentrygun { "targetname" "red_sentry" "origin" "963 -221 -453" "angles" "0 148 0" "teamnum" "2" "defaultupgrade" "1" } obj_sentrygun { "targetname" "red_sentry" "origin" "944 -1617 -448" "angles" "0 87 0" "teamnum" "2" "defaultupgrade" "1" } obj_sentrygun { "targetname" "red_sentry" "origin" "-1745 -2056 -447" "angles" "0 19 0" "teamnum" "2" "defaultupgrade" "1" } obj_sentrygun { "targetname" "red_sentry" "origin" "-3694 -2133 -319" "angles" "0 135 0" "teamnum" "2" "defaultupgrade" "1" } obj_sentrygun { "targetname" "red_sentry" "origin" "-4113 -1835 -255" "angles" "0 0 0" "teamnum" "2" "defaultupgrade" "1" } obj_sentrygun { "targetname" "red_sentry" "origin" "329 -300 -199" "angles" "0 122 0" "teamnum" "2" "defaultupgrade" "1" } obj_sentrygun { "targetname" "red_sentry" "origin" "1421 -1091 -511" "angles" "0 88 0" "teamnum" "2" "defaultupgrade" "1" } obj_sentrygun { "targetname" "red_sentry" "origin" "-630 -1481 -303" "angles" "0 90 0" "teamnum" "2" "defaultupgrade" "1" } obj_sentrygun { "targetname" "red_sentry" "origin" "-3555 -790 -255" "angles" "0 0 0" "teamnum" "2" "defaultupgrade" "1" } obj_sentrygun { "targetname" "red_sentry" "origin" "-2575 -2051 -191" "angles" "0 45 0" "teamnum" "2" "defaultupgrade" "1" } obj_sentrygun { "targetname" "red_sentry" "origin" "-3404 -1136 -446" "angles" "0 25 0" "teamnum" "2" "defaultupgrade" "1" } obj_sentrygun { "targetname" "red_sentry" "origin" "-753 -670 -575" "angles" "0 -66 0" "teamnum" "2" "defaultupgrade" "1" } } sentries_w3 { NoFixup 1 OnSpawnOutput { Target "hatch_ubersentry" Action "$setmodeloverride" Param "models/buildables/sentry2_uber.mdl" } obj_sentrygun { "targetname" "hatch_ubersentry" "origin" "-3061 -3046 -191" "angles" "0 123 0" "teamnum" "2" "defaultupgrade" "1" "spawnflags" "10" } obj_sentrygun { "targetname" "hatch_ubersentry" "origin" "-2485 -2316 -191" "angles" "0 -164 0" "teamnum" "2" "defaultupgrade" "1" "spawnflags" "10" } obj_sentrygun { "targetname" "hatch_ubersentry" "origin" "-2841 -1986 -191" "angles" "0 90 0" "teamnum" "2" "defaultupgrade" "1" "spawnflags" "10" } obj_sentrygun { "targetname" "hatch_ubersentry" "origin" "-2655 -2631 -191" "angles" "0 104 0" "teamnum" "2" "defaultupgrade" "1" "spawnflags" "10" } obj_sentrygun { "targetname" "red_sentry" "origin" "-600 180 -454" "angles" "0 90 0" "teamnum" "2" "defaultupgrade" "2" } obj_sentrygun { "targetname" "red_sentry" "origin" "-1289 -1347 -303" "angles" "0 83 0" "teamnum" "2" "defaultupgrade" "2" } obj_sentrygun { "targetname" "red_sentry" "origin" "963 -221 -453" "angles" "0 148 0" "teamnum" "2" "defaultupgrade" "2" } obj_sentrygun { "targetname" "red_sentry" "origin" "944 -1617 -448" "angles" "0 87 0" "teamnum" "2" "defaultupgrade" "2" } obj_sentrygun { "targetname" "red_sentry" "origin" "-1745 -2056 -447" "angles" "0 19 0" "teamnum" "2" "defaultupgrade" "2" } obj_sentrygun { "targetname" "red_sentry" "origin" "-3694 -2133 -319" "angles" "0 135 0" "teamnum" "2" "defaultupgrade" "2" } obj_sentrygun { "targetname" "red_sentry" "origin" "-4113 -1835 -255" "angles" "0 0 0" "teamnum" "2" "defaultupgrade" "2" } obj_sentrygun { "targetname" "red_sentry" "origin" "329 -300 -199" "angles" "0 122 0" "teamnum" "2" "defaultupgrade" "2" } obj_sentrygun { "targetname" "red_sentry" "origin" "1421 -1091 -511" "angles" "0 88 0" "teamnum" "2" "defaultupgrade" "2" } obj_sentrygun { "targetname" "red_sentry" "origin" "-630 -1481 -303" "angles" "0 90 0" "teamnum" "2" "defaultupgrade" "2" } obj_sentrygun { "targetname" "red_sentry" "origin" "-3555 -790 -255" "angles" "0 0 0" "teamnum" "2" "defaultupgrade" "2" } obj_sentrygun { "targetname" "red_sentry" "origin" "-2575 -2051 -191" "angles" "0 45 0" "teamnum" "2" "defaultupgrade" "2" } obj_sentrygun { "targetname" "red_sentry" "origin" "-3404 -1136 -446" "angles" "0 25 0" "teamnum" "2" "defaultupgrade" "2" } obj_sentrygun { "targetname" "red_sentry" "origin" "-753 -670 -575" "angles" "0 -66 0" "teamnum" "2" "defaultupgrade" "2" } } timertest //final wave timer { NoFixup 1 math_counter { "targetname" "timer_counter" "origin" "0 0 0" "startvalue" "255" "min" "0" "max" "255" "OutValue" "monster_resource,$SetProp$m_iBossHealthPercentageByte,,0,-1" "OnHitMin" "timerfail_relay,Trigger,,0,-1" "OnHitMin" "timer_relay*,CancelPending,,1,-1" } logic_relay { "targetname" "showtimer" "OnTrigger" "monster_resource,$SetProp$m_iBossHealthPercentageByte,255,0,-1" } logic_relay { "targetname" "timer_relay" "OnTrigger" "timer_counter,Subtract,1,0,-1" // Formula for changing the timer: // t / 255 = r. t = desired seconds, r = refire interval. // 15 minutes (900 seconds) / 255 = 3.52941... "OnTrigger" "timer_relay2,Trigger,,2.35294117647,-1" } logic_relay //relay loops are less resource intensive than logic_timers according to https://developer.valvesoftware.com/wiki/Logic_timer { "targetname" "timer_relay2" "OnTrigger" "timer_relay,Trigger,,0,-1" } logic_relay { "targetname" "timerfail_relay" "OnTrigger" "bots_win_red,RoundWin,,10,-1" "OnTrigger" "nuke_launch,Trigger,,1,-1" "OnTrigger" "player,$DisplayTextCenter,Wave Failed...,0,-1" } logic_relay { "targetname" "red_tank_deploy_relay" "OnTrigger" "bots_win_red,RoundWin,,10,-1" "OnTrigger" "nuke_launch,Trigger,,1,-1" "OnTrigger" "player,$DisplayTextCenter,Wave Failed...,0,-1" "OnTrigger" "timer_relay*,CancelPending,,1,-1" } } Nuke { NoFixup 1 ambient_generic { "origin" "-160 864 -204" "volstart" "0" "targetname" "wav_nuke_ambient" "spinup" "0" "spindown" "0" "spawnflags" "33" "radius" "999999" "preset" "0" "pitchstart" "100" "pitch" "100" "message" "ambient/atmosphere/cave_outdoor1.wav" "lfotype" "0" "lforate" "0" "lfomodvol" "0" "lfomodpitch" "0" "health" "10" "fadeoutsecs" "0" "fadeinsecs" "0" "cspinup" "0" } ambient_generic { "origin" "-160 864 -204" "volstart" "0" "targetname" "wav_nuke" "spinup" "0" "spindown" "0" "spawnflags" "33" "radius" "999999" "preset" "0" "pitchstart" "100" "pitch" "100" "message" "items/cart_explode.wav" "lfotype" "0" "lforate" "0" "lfomodvol" "0" "lfomodpitch" "0" "health" "10" "fadeoutsecs" "0" "fadeinsecs" "0" "cspinup" "0" } ambient_generic { "origin" "-160 864 -204" "volstart" "0" "targetname" "missile" "spinup" "0" "spindown" "0" "spawnflags" "33" "radius" "999999" "preset" "0" "pitchstart" "100" "pitch" "100" "message" "misc/doomsday_missile_launch.wav" "lfotype" "0" "lforate" "0" "lfomodvol" "0" "lfomodpitch" "0" "health" "10" "fadeoutsecs" "0" "fadeinsecs" "0" "cspinup" "0" } env_fade { "targetname" "fd_nuke_fast" "spawnflags" "0" "rendercolor" "254 237 197" "renderamt" "50" "holdtime" "5" "duration" "0.5" } env_fade { "targetname" "fd_nuke_slow" "spawnflags" "0" "rendercolor" "254 237 197" "renderamt" "50" "holdtime" "5" "duration" "0.5" } env_viewpunch { "punchangle" "-90 0 0" "radius" "9999" "spawnflags" "3" "targetname" "punch" "origin" "-160 864 -204" } env_shake { "targetname" "shakeit" "spawnflags" "1" "radius" "5000" "frequency" "50" "duration" "3" "amplitude" "16" } info_particle_system { "origin" "-1396 3860 -163.972" "targetname" "ps_nuke" "start_active" "0" "flag_as_weather" "0" "effect_name" "dooms_nuke_ring" "angles" "0 0 0" } info_particle_system { "origin" "-1396 3528 -115.972" "targetname" "ps_nuke" "start_active" "0" "flag_as_weather" "0" "effect_name" "base_destroyed_smoke_doomsday" "angles" "0 0 0" } info_particle_system { "origin" "-1396 3860 480" "targetname" "ps_nuke" "start_active" "0" "flag_as_weather" "0" "effect_name" "dooms_nuke_collumn" "angles" "0 0 0" } info_particle_system { "origin" "-1396 3528 124.028" "targetname" "ps_flash" "start_active" "0" "flag_as_weather" "0" "effect_name" "flash_doomsday" "angles" "0 0 0" } info_particle_system { "origin" "-1584 3512 272" "targetname" "boom" "start_active" "0" "flag_as_weather" "0" "effect_name" "cinefx_goldrush" "angles" "0 0 0" } point_viewcontrol { "targetname" "explosion_cutscene" "acceleration" "0" "deceleration" "0" "interpolatepositiontoplayer" "0" "spawnflags" "0" "speed" "0" "wait" "10" "origin" "-288 674 -112" "angles" "4.23122 113.202 0.755741" } trigger_hurt { "targetname" "ded" "origin" "0 0 0" "angles" "-45 -90 0" "mins" "-8000 -8000 -1000" "maxs" "8000 8000 1000" "nodmgforce" "0" "damagetype" "1048576" "damagemodel" "0" "damagecap" "0" "damage" "9999999999" "StartDisabled" "1" "spawnflags" "64" } logic_relay { "targetname" "nuke_launch" "OnTrigger" "fix_viewcontrol,CancelPending,,0,-1" "OnTrigger" "fd_nuke_fast,Fade,,0,-1" "OnTrigger" "missile,PlaySound,,0,-1" "OnTrigger" "punch,ViewPunch,,0,-1" "OnTrigger" "player,igniteplayer,,0,1" "OnTrigger" "ps_flash,Start,,0,-1" "OnTrigger" "shakeit,StartShake,,0,-1" "OnTrigger" "boom,Start,,0.25,-1" "OnTrigger" "ded,Enable,,0.25,-1" "OnTrigger" "obj_dispenser,RemoveHealth,5000,0.25,-1" "OnTrigger" "obj_sentrygun,RemoveHealth,5000,0.25,-1" "OnTrigger" "obj_teleporter,RemoveHealth,5000,0.25,-1" "OnTrigger" "explosion_cutscene,$EnableAll,,0.5,-1" "OnTrigger" "wav_nuke,PlaySound,,0,-1" "OnTrigger" "fd_nuke_slow,Fade,,1,-1" "OnTrigger" "ps_nuke,Start,,1,-1" "OnTrigger" "wav_nuke_ambient,PlaySound,,1.5,-1" } } filters { NoFixup 1 filter_activator_class { "targetname" "filter_sentrygun" "filterclass" "obj_sentrygun" } filter_multi { "targetname" "filter_bluengineer" "filter01" "filter_engineer" "filter02" "filter_blu" } $filter_sendprop { "targetname" "filter_engineer" "$name" "m_iClass" "$value" "9" } $filter_sendprop { "targetname" "filter_setup" "$name" "m_iRoundState" "$value" "10" "onpass" "tf_weapon_medigun,$setprop$m_flChargeLevel,1,0,-1" "onpass" "tf_weapon_medigun,$setprop$m_bHolstered,1,0,-1" } filter_tf_condition { "targetname" "filter_burning" "condition" "22" "onpass" "fixer_burn,fade,0,0,-1" } filter_tf_condition { "targetname" "filter_stockuber" "condition" "5" "onpass" "fixer_uber,fade,0,0,-1" } filter_tf_condition { "targetname" "filter_uber_misc" "condition" "57" "onpass" "fixer_uber,fade,0,0,-1" } filter_multi { "targetname" "filter_burningnoscreen" "filter01" "filter_burning" "filter02" "filter_noscreencond" "onpass" "fixer_burn,fade,0,0,-1" } filter_multi { "targetname" "filter_stockubernoscreen" "filter01" "filter_stockuber" "filter02" "filter_noscreencond" "onpass" "fixer_uber,fade,0,0,-1" } filter_activator_class { "targetname" "filter_viewmodel_hide" "filterclass" "tf_viewmodel" "onpass" "@e@m_hViewModel@!activator,addoutput,effects 32,0,-1" } filter_activator_class { "targetname" "filter_viewmodel_show" "filterclass" "tf_viewmodel" "onpass" "@e@m_hViewModel@!activator,addoutput,effects 0,0,-1" } filter_tf_condition { "targetname" "filter_screencond" "condition" "12" "onpass" "cmd,command,r_screenoverlay effects/combine_binocoverlay,0,-1" } filter_tf_condition { "targetname" "filter_noscreencond" "condition" "12" "onpass" "cmd,command,r_screenoverlay ~,0,-1" "negated" "1" } filter_activator_class { "targetname" "filter_nothing" "filterclass" "b4b soul" } filter_activator_class { "targetname" "filter_everything" "filterclass" "b4b soul" "negated" "1" } $filter_sendprop { "targetname" "filter_giant" "$name" "m_bIsMiniBoss" "$value" "1" } $filter_sendprop { "targetname" "filter_tele_notdisabled" "$name" "m_iState" "$value" "1" "negated" "1" } $filter_sendprop { "targetname" "filter_tele_disabled" "$name" "m_iState" "$value" "1" } filter_multi { "targetname" "filter_player_nobomb" "filter01" "filter_player" "filter02" "filter_notbombcarrier" "onpass" "bomb_nab,disable,0,0,-1" "onpass" "bomb_nab,enable,0,5,-1" "onpass" "bomb,forcedrop,0,0,-1" } filter_tf_condition { "targetname" "filter_notbombcarrier" "condition" "65" "negated" "1" } $filter_sendprop { "targetname" "filter_spec" "$name" "m_iTeamNum" "$value" "1" } $filter_sendprop { "targetname" "filter_red" "$name" "m_iTeamNum" "$value" "2" } $filter_sendprop { "targetname" "filter_blu" "$name" "m_iTeamNum" "$value" "3" } $filter_sendprop { "targetname" "filter_player" "$name" "m_bIsABot" "$value" "0" } $filter_sendprop { "targetname" "filter_bot" "$name" "m_bIsABot" "$value" "1" } } givescreencond { OnSpawnOutput { Target !activator Action $addcond Param 12 } OnSpawnOutput { Target !activator Action $setprop$m_nBotSkill Param 0 Delay 0.05 } } Shapeshift_Logic // by royal { OnSpawnOutput { Target "shapeshift_start" Action "Trigger" Delay 1 } OnParentKilledOutput { Target "!activator" Action "$SetProp$m_bUseBossHealthBar" Param "0" Delay 0 } OnParentKilledOutput { Target "!activator" Action "addoutput" Param "renderfx 0" } OnSpawnOutput { Target "!activator" Action AddOutput Param "targetname bigguy" Delay 0.00 } OnParentKilledOutput { Target "!activator" Action AddOutput Param "targetname " Delay 0.00 } env_shake { "targetname" "shaker" "amplitude" "255" "radius" "10000" "duration" "1.5" } info_target { "origin" "0 0 50" "targetname" "bossminiontplocation" } logic_relay { "targetname" "shapeshift_start" "spawnflags" "2" "OnTrigger" "!activator,$WeaponStripSlot,0,0.51,-1" "OnTrigger" "shapeshift_loop,Trigger,,0,-1" } logic_relay { "targetname" "shapeshift_global" "spawnflags" "2" "OnTrigger" "!activator,$AddCond,4,0,-1" } logic_relay { "targetname" "shapeshift_loop" "spawnflags" "2" "OnTrigger" "shapeshift_global,Trigger,,0,-1" "OnTrigger" "soldier_shapeshift,Trigger,,0.5,-1" "OnTrigger" "shapeshift_global,Trigger,,10,-1" "OnTrigger" "soldier2_shapeshift,Trigger,,10.5,-1" "OnTrigger" "shapeshift_global,Trigger,,20,-1" "OnTrigger" "demo_automic_shapeshift,Trigger,,20.5,-1" "OnTrigger" "shapeshift_global,Trigger,,30,-1" "OnTrigger" "heavy_shapeshift,Trigger,,30.5,-1" "OnTrigger" "shapeshift_global,Trigger,,40,-1" "OnTrigger" "pyro_shapeshift,Trigger,,40.5,-1" "OnTrigger" "shapeshift_global,Trigger,,50,-1" "OnTrigger" "medic_shapeshift,Trigger,,50.5,-1" "OnTrigger" "shapeshift_global,Trigger,,60,-1" "OnTrigger" "sniper_shapeshift,Trigger,,60.5,-1" "OnTrigger" "shapeshift_global,Trigger,,70,-1" "OnTrigger" "engie_shapeshift,Trigger,,70.5,-1" "OnTrigger" "shapeshift_global,Trigger,,80,-1" "OnTrigger" "spy_shapeshift,Trigger,,80.5,-1" "OnTrigger" "shapeshift_global,Trigger,,90,-1" "OnTrigger" "scout_shapeshift,Trigger,,90.5,-1" "OnTrigger" "!self,Trigger,,100,-1" } logic_relay { "targetname" "soldier_shapeshift" "spawnflags" "2" // "OnTrigger" "!activator,$RemoveItem,War Head,0,-1" // "OnTrigger" "!activator,$RemoveItem,Fists of Steel,0,-1" "OnTrigger" "!activator,$RemoveItem,Geniune Cockfighter,0,-1" "OnTrigger" "!activator,$RemoveItem,The Boston Boom-Bringer,0,-1" "OnTrigger" "!activator,$RemoveItem,Summer Shades,0,-1" "OnTrigger" "!activator,$RemoveItem,The Sandman,0,-1" "OnTrigger" "!activator,AddOutput,renderfx 15,0,-1" "OnTrigger" "!activator,$ChangeAttributes,Soldier,0,-1" "OnTrigger" "scoutloop,StopSound,,0,-1" "OnTrigger" "soldierloop,PlaySound,,0,-1" //"OnTrigger" "!activator,$AddCond,40,0.1,-1" "OnTrigger" "!activator,$WeaponSwitchSlot,0,0.11,-1" "OnTrigger" "!activator,SetCustomModel,models/bots/soldier_boss/bot_soldier_gray_boss.mdl,0.1,-1" "OnTrigger" "!activator,$SetProp$m_iszClassIcon,soldier_sergeant_crits,0.4,-1" "OnTrigger" "!activator,$AddCond,4,0.5,-1" "OnTrigger" "!activator,$RemoveCond,4,0.55,-1" } logic_relay { "targetname" "soldier2_shapeshift" "spawnflags" "2" "OnTrigger" "!activator,$RemoveItem,Tyrant's Helm,0,-1" "OnTrigger" "!activator,AddOutput,renderfx 15,0,-1" "OnTrigger" "!activator,$ChangeAttributes,Soldier2,0,-1" //"OnTrigger" "!activator,$AddCond,40,0.1,-1" "OnTrigger" "!activator,$WeaponSwitchSlot,0,0.11,-1" "OnTrigger" "!activator,SetCustomModel,models/bots/soldier_boss/bot_soldier_gray_boss.mdl,0.1,-1" "OnTrigger" "!activator,$SetProp$m_iszClassIcon,soldier_major_crits,0.4,-1" "OnTrigger" "!activator,$AddCond,4,0.5,-1" "OnTrigger" "!activator,$RemoveCond,4,0.55,-1" } logic_relay { "targetname" "demo_automic_shapeshift" "spawnflags" "2" "OnTrigger" "!activator,$RemoveCond,40,0,-1" "OnTrigger" "!activator,$ChangeAttributes,Demo,0,-1" "OnTrigger" "soldierloop,StopSound,,0,-1" "OnTrigger" "demoloop,PlaySound,,0,-1" "OnTrigger" "!activator,AddOutput,renderfx 15,0,-1" "OnTrigger" "!activator,$RemoveItem,Fancy Dress Uniform,0,-1" "OnTrigger" "!activator,$RemoveItem,The Team Captain,0,-1" "OnTrigger" "!activator,$WeaponSwitchSlot,0,0.11,-1" "OnTrigger" "!activator,SetCustomModel,models/bots/demo_boss/bot_demo_gray_boss.mdl,0.1,-1" "OnTrigger" "!activator,$SetProp$m_iszClassIcon,demo_bomber,0.4,-1" //"OnTrigger" "!activator,$SetProp$m_bUseBossHealthBar,0,3,-1" //"OnTrigger" "!activator,$SetProp$m_bUseBossHealthBar,1,0.45,-1" "OnTrigger" "!activator,$AddCond,4,0.5,-1" "OnTrigger" "!activator,$RemoveCond,4,0.55,-1" } logic_relay { "targetname" "heavy_shapeshift" "spawnflags" "2" "OnTrigger" "!activator,$ChangeAttributes,Heavy,0,-1" "OnTrigger" "demoloop,StopSound,,0,-1" "OnTrigger" "heavyloop,PlaySound,,0,-1" "OnTrigger" "!activator,AddOutput,renderfx 15,0,-1" "OnTrigger" "!activator,$RemoveItem,Prince Tavish's Crown,0,-1" "OnTrigger" "!activator,$WeaponSwitchSlot,2,0.11,-1" "OnTrigger" "!activator,SetCustomModel,models/bots/heavy_boss/bot_heavy_gray_boss.mdl,0.1,-1" "OnTrigger" "!activator,$SetProp$m_iszClassIcon,heavy_chief,0.4,-1" "OnTrigger" "!activator,$AddCond,4,0.5,-1" "OnTrigger" "!activator,$RemoveCond,4,0.55,-1" // "OnTrigger" "!activator,$RemoveItemAttribute,minigun spinup time increased|0,2,-1" } logic_relay { "targetname" "pyro_shapeshift" "spawnflags" "2" "OnTrigger" "!activator,$ChangeAttributes,Pyro,0,-1" "OnTrigger" "heavyloop,StopSound,,0,-1" "OnTrigger" "pyroloop,PlaySound,,0,-1" "OnTrigger" "!activator,AddOutput,renderfx 15,0,-1" "OnTrigger" "!activator,$RemoveItem,War Head,0,-1" "OnTrigger" "!activator,$RemoveItem,Fists of Steel,0,-1" "OnTrigger" "!activator,$WeaponSwitchSlot,0,0.11,-1" "OnTrigger" "!activator,SetCustomModel,models/bots/pyro_boss/bot_pyro_gray_boss.mdl,0.1,-1" "OnTrigger" "!activator,$SetProp$m_iszClassIcon,pyro_giant,0.4,-1" "OnTrigger" "!activator,$AddCond,4,0.5,-1" "OnTrigger" "!activator,$RemoveCond,4,0.55,-1" // "OnTrigger" "!activator,$RemoveItemAttribute,minigun spinup time increased|0,2,-1" } logic_relay { "targetname" "medic_shapeshift" "spawnflags" "2" "OnTrigger" "!activator,$ChangeAttributes,Medic,0,-1" "OnTrigger" "!activator,$RemoveItem,Brigade Helm,0,-1" "OnTrigger" "!activator,AddOutput,renderfx 15,0,-1" "OnTrigger" "!activator,$WeaponSwitchSlot,0,0.11,-1" "OnTrigger" "!activator,SetCustomModel,models/bots/medic/bot_medic_gray.mdl,0.1,-1" "OnTrigger" "!activator,$SetProp$m_iszClassIcon,medic_crossbow_multi,0.4,-1" "OnTrigger" "!activator,$AddCond,4,0.5,-1" "OnTrigger" "!activator,$RemoveCond,4,0.55,-1" // "OnTrigger" "!activator,$RemoveItemAttribute,minigun spinup time increased|0,2,-1" } logic_relay { "targetname" "sniper_shapeshift" "spawnflags" "2" "OnTrigger" "!activator,$ChangeAttributes,Sniper,0,-1" "OnTrigger" "!activator,AddOutput,renderfx 15,0,-1" "OnTrigger" "!activator,$RemoveItem,Modest Metal Pile of Scrap,0,-1" "OnTrigger" "!activator,$RemoveItem,The Crusader's Crossbow,0,-1" "OnTrigger" "!activator,$WeaponSwitchSlot,0,0.11,-1" "OnTrigger" "!activator,SetCustomModel,models/bots/sniper/bot_sniper_gray.mdl,0.1,-1" "OnTrigger" "!activator,$SetProp$m_iszClassIcon,sniper_bow_atomic,0.4,-1" "OnTrigger" "!activator,$AddCond,4,0.5,-1" "OnTrigger" "!activator,$RemoveCond,4,0.55,-1" } logic_relay { "targetname" "engie_shapeshift" "spawnflags" "2" "OnTrigger" "!activator,$RemoveItem,Corona Australis,0,-1" "OnTrigger" "!activator,$RemoveItem,The Fortified Compound,0,-1" "OnTrigger" "!activator,AddOutput,renderfx 0,0,-1" "OnTrigger" "!activator,$ChangeAttributes,Engineer,0,-1" "OnTrigger" "!activator,$PlaySequence,layer_taunt_texas_truckin,0.2,-1" // "OnTrigger" "!activator,$AddCond,40,0.1,-1" "OnTrigger" "!activator,$WeaponSwitchSlot,2,0.11,-1" "OnTrigger" "!activator,SetCustomModel,models/player/engineer.mdl,0.11,-1" //"OnTrigger" "!activator,SetCustomModel,models/bots/scout/bot_scout.mdl,0.1,-1" "OnTrigger" "!activator,$SetProp$m_iszClassIcon,engineer,0.4,-1" "OnTrigger" "!activator,$AddCond,4,0.5,-1" "OnTrigger" "!activator,$RemoveCond,4,0.55,-1" } logic_relay { "targetname" "spy_shapeshift" "spawnflags" "2" "OnTrigger" "!activator,$RemoveItem,Engineer's Cap,0,-1" "OnTrigger" "!activator,AddOutput,renderfx 15,0,-1" "OnTrigger" "!activator,$ChangeAttributes,Spy,0,-1" "OnTrigger" "pyroloop,StopSound,,0,-1" "OnTrigger" "scoutloop,PlaySound,,0,-1" // "OnTrigger" "!activator,$AddCond,40,0.1,-1" "OnTrigger" "!activator,$WeaponSwitchSlot,0,0.11,-1" "OnTrigger" "!activator,SetCustomModel,models/bots/spy/bot_spy_gray.mdl,0.1,-1" //"OnTrigger" "!activator,SetCustomModel,models/bots/scout/bot_scout.mdl,0.1,-1" "OnTrigger" "!activator,$SetProp$m_iszClassIcon,spy_revolver_hyper,0.4,-1" "OnTrigger" "!activator,$AddCond,4,0.5,-1" "OnTrigger" "!activator,$RemoveCond,4,0.55,-1" } logic_relay { "targetname" "scout_shapeshift" "spawnflags" "2" "OnTrigger" "!activator,$RemoveItem,Belltower Spec ops,0,-1" "OnTrigger" "!activator,$RemoveItem,The Diamondback,0,-1" "OnTrigger" "!activator,$ChangeAttributes,Scout,0,-1" //"OnTrigger" "!activator,$AddCond,40,0.1,-1" "OnTrigger" "!activator,$WeaponSwitchSlot,2,0.11,-1" "OnTrigger" "!activator,SetCustomModel,models/bots/scout_boss/bot_scout_gray_boss.mdl,0.1,-1" "OnTrigger" "!activator,$SetProp$m_iszClassIcon,scout_stun,0.4,-1" "OnTrigger" "!activator,$AddCond,4,0.5,-1" "OnTrigger" "!activator,$RemoveCond,4,0.55,-1" } ambient_generic { "targetname" "soldierloop" "message" "mvm/giant_soldier/giant_soldier_loop.wav" "health" "3" "radius" "1250" "spawnflags" "16" "sourceentityname" "!parent" } ambient_generic { "targetname" "demoloop" "message" "mvm/giant_demoman/giant_demoman_loop.wav" "health" "3" "radius" "1250" "spawnflags" "16" "sourceentityname" "!parent" } ambient_generic { "targetname" "pyroloop" "message" "mvm/giant_pyro/giant_pyro_loop.wav" "health" "3" "radius" "1250" "spawnflags" "16" "sourceentityname" "!parent" } ambient_generic { "targetname" "scoutloop" "message" "mvm/giant_scout/giant_scout_loop.wav" "health" "3" "radius" "1250" "spawnflags" "16" "sourceentityname" "!parent" } ambient_generic { "targetname" "heavyloop" "message" "mvm/giant_heavy/giant_heavy_loop.wav" "health" "3" "radius" "1250" "spawnflags" "16" "sourceentityname" "!parent" } } Explosive_Tip_Bot { KeepAlive 1 OnSpawnOutput { Target "tip_explosion" Action "$InheritOwner" Param "!activator" Delay 0.1 } OnSpawnOutput { Target "@c@!activator" Action "FireUser1" Delay 0 } OnSpawnOutput { Target "explosive_tip_relay" Action "FireUser1" Delay 0 } OnSpawnOutput { Target "explosive_tip_relay" Action "FireUser1" Delay 0 } logic_relay { "targetname" "explosive_tip_relay" "OnUser1" "!self,Kill,,5,-1" } info_target { "targetname" "detonate_position" "OnUser1" "!self,Kill,,5,-1" } tf_point_weapon_mimic { "targetname" "tip_explosion" "spawnflags" "1" "angles" "0 0 0" "origin" "-1 0 -3" "teamnum" "2" "Crits" "0" "Damage" "75" "ModelScale" "1" "SpeedMax" "1000000" "SpeedMin" "1000000" "SplashRadius" "144" "SpreadAngle" "0" "WeaponType" "3" "OnUser1" "!self,FireOnce,,2,-1" "OnUser4" "!self,DetonateStickies,,0,-1" } logic_measure_movement { "MeasureReference" "detonate_position" "MeasureTarget" "detonate_position" "MeasureType" "0" "Target" "tip_explosion" "TargetReference" "detonate_position" "TargetScale" "1" } info_particle_system { "targetname" "sticky_flicker" "effect_name" "stickybomb_pulse_red" "flag_as_weather" "0" "start_active" "0" "OnUser1" "!self,Start,2,1,-1" "OnUser1" "!self,Kill,2.7,3,-1" } logic_measure_movement { "MeasureReference" "detonate_position" "MeasureTarget" "detonate_position" "MeasureType" "0" "Target" "sticky_flicker" "TargetReference" "detonate_position" "TargetScale" "1" } ambient_generic { "targetname" "sticky_sound" "message" "weapons/stickybomblauncher_det.wav" "radius" "4000" "health" "5" "spawnflags" "48" "OnUser1" "!self,PlaySound,,1,-1" "OnUser1" "!self,Kill,,3,-1" } logic_measure_movement { "MeasureReference" "detonate_position" "MeasureTarget" "detonate_position" "MeasureType" "0" "Target" "sticky_sound" "TargetReference" "detonate_position" "TargetScale" "1" } filter_activator_tfteam { "targetname" "filter_is_blu" "Negated" "0" "TeamNum" "3" "OnUser1" "!self,Kill,,2.1,-1" } trigger_hurt //for some reason I can't explain using a trigger_once or trigger_multiple just blocks the projectile { "targetname" "attach_to_enemy" "origin" "0 0 0" "mins" "-3 -3 -3" "maxs" "3 3 3" "Damage" "0" "spawnflags" "1" "filtername" "filter_is_blu" "OnStartTouch" "detonate_position,SetParent,!activator,0,-1" //"OnStartTouch" "player,$DisplayTextChat,attached,0.1,-1" "OnStartTouch" "!self,Disable,,0.1,-1" "OnUser1" "!self,Kill,,2.1,-1" } RemoveIfKilled "explosive_tip_relay" } test_mini // drone stuff - Eve { OnSpawnOutput { Target "triggerrefresh" Action Open } OnSpawnOutput { Target "convertmini" Action SetParent Param "!activator" } func_door { "targetname" "triggerrefresh" "rendermode" "10" "spawnflags" "4108" "speed" "1" "wait" "0.01" "onfullyclosed" "!self,open,,0,-1" } trigger_multiple { "targetname" "sentryDetect" "parentname" "triggerrefresh" "mins" "-96 -96 -96" "maxs" "96 96 96" "filtername" "filter_sentrygun" "spawnflags" "64" "onstarttouch" "convertmini,SetValueCompare,$$=?(!activator.m_bMiniBuilding == 1 && !activator.m_nSolidType > 0,1,0),0,-1" } logic_compare { "targetname" "convertmini" "comparevalue" "1" "onequalto" "!activator,SetParent,droneLocation,0.1,-1" "onequalto" "!activator,SetParentAttachment,head,0.15,-1" "onequalto" "!activator,$SetProp$m_iAmmoShells,999999999,0,-1" //gives them tons of ammo "onequalto" "!activator,$SetProp$m_iAmmoShells,999999999,5,-1" //gives them tons of ammo "onequalto" "!activator,$SetProp$m_nSolidType,0,0,-1" //stops them blocking the player, also used to detect if mini has been turned into a drone "onequalto" "!activator,$SetModelOverride,models/rcat/rcat_level2.mdl,0,-1" // sets model | make sure to precache "onequalto" "!activator,$SetProp$m_nSkin,1,0,-1" } prop_dynamic { "targetname" "droneLocation" // invisible engineer doomed to carry the drone for all eternity "model" "models/player/engineer.mdl" "origin" "40 -50 15" "disableshadows" "1" "rendermode" "9" "renderamt" "0" } } StickyTank { OnParentKilledOutput // Clean up stickies { Target tf_projectile_pipe Action Kill Delay 0.1 } OnSpawnOutput { Target stickytank_init_relay Action Trigger Delay 0.1 } OnSpawnOutput { Target stickytank_mimic Action SetOwner Param !activator } logic_relay { "targetname" "stickytank_init_relay" "OnTrigger" "!parent,AddOutput,OnHealthBelow60Percent stickytank_timer:UpperRandomBound:5:0:-1,0,-1" "OnTrigger" "!parent,AddOutput,OnHealthBelow60Percent stickytank_timer:LowerRandomBound:5:0:-1,0,-1" "OnTrigger" "!parent,AddOutput,OnHealthBelow30Percent stickytank_timer:UpperRandomBound:2.5:0:-1,0,-1" "OnTrigger" "!parent,AddOutput,OnHealthBelow30Percent stickytank_timer:LowerRandomBound:2.5:0:-1,0,-1" } logic_relay { "targetname" "stickytank_shooter_relay" "OnTrigger" "stickytank_mimic,FireOnce,,0,-1" "OnTrigger" "stickytank_shoot_sound,PlaySound,,0,-1" "OnTrigger" "stickytank_mimic,FireOnce,,0.1,-1" "OnTrigger" "stickytank_shoot_sound,PlaySound,,0.1,-1" "OnTrigger" "stickytank_mimic,FireOnce,,0.2,-1" "OnTrigger" "stickytank_shoot_sound,PlaySound,,0.2,-1" "OnTrigger" "stickytank_mimic,FireOnce,,0.3,-1" "OnTrigger" "stickytank_shoot_sound,PlaySound,,0.3,-1" "OnTrigger" "stickytank_mimic,FireOnce,,0.4,-1" "OnTrigger" "stickytank_shoot_sound,PlaySound,,0.4,-1" "OnTrigger" "stickytank_mimic,FireMultiple,4,0.5,-1" "OnTrigger" "stickytank_shoot_sound,PlaySound,,0.5,-1" "OnTrigger" "stickytank_mimic,FireOnce,,0.6,-1" "OnTrigger" "stickytank_shoot_sound,PlaySound,,0.6,-1" "OnTrigger" "stickytank_mimic,FireOnce,,0.7,-1" "OnTrigger" "stickytank_shoot_sound,PlaySound,,0.7,-1" "OnTrigger" "stickytank_mimic,FireOnce,,0.8,-1" "OnTrigger" "stickytank_shoot_sound,PlaySound,,0.8,-1" "OnTrigger" "stickytank_mimic,FireOnce,,0.9,-1" "OnTrigger" "stickytank_shoot_sound,PlaySound,,0.9,-1" "OnTrigger" "stickytank_mimic,FireMultiple,4,1,-1" "OnTrigger" "stickytank_shoot_sound,PlaySound,,1,-1" "OnTrigger" "stickytank_mimic_crit,FireOnce,,1.5,-1" "OnTrigger" "stickytank_shoot_sound_crit,PlaySound,,1.5,-1" "OnTrigger" "stickytank_mimic_crit,FireMultiple,2,2,-1" "OnTrigger" "stickytank_shoot_sound_crit,PlaySound,,2,-1" "OnTrigger" "!self,EnableRefire,,2,-1" "OnTrigger" "stickytank_mimic_crit,FireMultiple,3,2.5,-1" "OnTrigger" "stickytank_shoot_sound_crit,PlaySound,,2.5,-1" "OnTrigger" "stickytank_mimic_crit,FireMultiple,6,3,-1" "OnTrigger" "stickytank_shoot_sound_crit,PlaySound,,3,-1" "OnTrigger" "stickytank_mimic,DetonateStickies,,7,-1" "OnTrigger" "stickytank_mimic_crit,DetonateStickies,,7,-1" } logic_timer { "targetname" "stickytank_timer" "spawnflags" "0" "UpperRandomBound" "10" "LowerRandomBound" "7" "UseRandomTime" "1" "OnTimer" "stickytank_shooter_relay,Trigger,,0,-1" } prop_dynamic { "targetname" "stickytank_model" "model" "models/props_frontline/tank_turret.mdl" "skin" "1" "solid" "0" "spawnflags" "0" "origin" "-16 -66 108" "angles" "-56.5 0 -90" } prop_dynamic { "targetname" "stickytank_model" "model" "models/props_frontline/tank_turret.mdl" "skin" "1" "solid" "0" "spawnflags" "0" "origin" "-12 66 108" "angles" "-58.5 0 90" } tf_point_weapon_mimic { "targetname" "stickytank_mimic" "WeaponType" "3" "TeamNum" "2" "ModelScale" "1" "SpeedMax" "525" "SpeedMin" "525" "Crits" "0" "Damage" "105" "SpreadAngle" "25" "SplashRadius" "125" "FireSound" "weapons/stickybomblauncher_shoot_crit.wav" "origin" "54 -56 216" "angles" "-58.5 359 180" } tf_point_weapon_mimic { "targetname" "stickytank_mimic_crit" "WeaponType" "3" "TeamNum" "2" "ModelScale" "1" "SpeedMax" "525" "SpeedMin" "525" "Crits" "1" "Damage" "105" "SpreadAngle" "25" "SplashRadius" "125" "FireSound" "weapons/stickybomblauncher_shoot_crit.wav" "origin" "54 -56 216" "angles" "-58.5 359 180" } tf_point_weapon_mimic { "targetname" "stickytank_mimic" "WeaponType" "3" "TeamNum" "2" "ModelScale" "1" "SpeedMax" "525" "SpeedMin" "525" "Crits" "0" "Damage" "105" "SpreadAngle" "25" "SplashRadius" "125" "FireSound" "weapons/stickybomblauncher_shoot_crit.wav" "origin" "54 56 214" "angles" "-56.5 359 0" } tf_point_weapon_mimic { "targetname" "stickytank_mimic_crit" "WeaponType" "3" "TeamNum" "2" "ModelScale" "1" "SpeedMax" "525" "SpeedMin" "525" "Crits" "1" "Damage" "105" "SpreadAngle" "25" "SplashRadius" "125" "FireSound" "weapons/stickybomblauncher_shoot_crit.wav" "origin" "54 56 214" "angles" "-56.5 359 0" } ambient_generic { "targetname" "stickytank_shoot_sound" "health" "10" "message" "weapons/stickybomblauncher_shoot.wav" "pitch" "100" "pitchstart" "100" "radius" "5000" "spawnflags" "48" "origin" "64 0 224" } ambient_generic { "targetname" "stickytank_shoot_sound_crit" "health" "10" "message" "weapons/stickybomblauncher_shoot_crit.wav" "pitch" "100" "pitchstart" "100" "radius" "5000" "spawnflags" "48" "origin" "64 0 224" } } SuperSentry { OnSpawnOutput { Target sentry1 Action SetHealth Param 1200 } obj_sentrygun { "targetname" "sentry1" "origin" "16 0 160" "teamnum" "2" "spawnflags" "8" "SolidToPlayer" "0" "defaultupgrade" "2" "modelscale" "1.5" } obj_sentrygun { "targetname" "sentry2" "origin" "72 -36 136" "angles" "0 0 90" "teamnum" "2" "spawnflags" "10" "SolidToPlayer" "0" "defaultupgrade" "2" "modelscale" "1" } obj_sentrygun { "targetname" "sentry2" "origin" "72 36 136" "angles" "0 0 -90" "teamnum" "2" "spawnflags" "10" "SolidToPlayer" "0" "defaultupgrade" "2" "modelscale" "1" } } other_stuff { NoFixup 1 logic_relay { "targetname" "hurryup_relay" "ontrigger" "player,$playsoundtoself,misc/doomsday_lift_warning.wav,0,-1" "ontrigger" "hurryup_music,playsound,0,0,-1" "ontrigger" "player,$displaytextcenter,One minute remaining!,0,-1" "ontrigger" "player,$displaytextcenter,5,55,-1" "ontrigger" "player,$displaytextcenter,4,56,-1" "ontrigger" "player,$displaytextcenter,3!,57,-1" "ontrigger" "player,$displaytextcenter,2!,58,-1" "ontrigger" "player,$displaytextcenter,1!,59,-1" } ambient_generic { "targetname" "hurryup_music" "health" "6.5" "message" "#music/hl2_song15.mp3" "spawnflags" "49" } ambient_generic { "targetname" "bam" "origin" "440 48 128" "volstart" "0" "spinup" "0" "spindown" "0" "spawnflags" "17" "radius" "999999" "preset" "0" "pitchstart" "100" "pitch" "100" "message" "ambient/explosions/explode_9.wav" "lfotype" "0" "lforate" "0" "lfomodvol" "0" "lfomodpitch" "0" "health" "10" "fadeoutsecs" "0" "fadeinsecs" "0" "cspinup" "0" } ambient_generic { "targetname" "bam2" "origin" "440 48 128" "volstart" "0" "spinup" "0" "spindown" "0" "spawnflags" "17" "radius" "999999" "preset" "0" "pitchstart" "100" "pitch" "100" "message" "ambient/explosions/explode_9.wav" "lfotype" "0" "lforate" "0" "lfomodvol" "0" "lfomodpitch" "0" "health" "10" "fadeoutsecs" "0" "fadeinsecs" "0" "cspinup" "0" } env_shake { "id" "3" "classname" "env_shake" "amplitude" "255" "duration" "0.5" "frequency" "255" "radius" "50000" "spawnflags" "5" "targetname" "nukeshake" "origin" "-189.888 17.0933 65" } logic_relay { "spawnflags" "2" "targetname" "bigboom_relay" "OnTrigger" "nukeshake,startshake,,0,-1" "OnTrigger" "bam,playsound,,0,-1" "OnTrigger" "bam2,playsound,,0,-1" "OnTrigger" "bam,stopsound,,2,-1" "OnTrigger" "bam2,stopsound,,2,-1" } point_clientcommand { "targetname" "cmd" } trigger_multiple { "targetname" "overlay_giver" "origin" "0 0 0" "mins" "-9000 -9000 -9000" "maxs" "9000 9000 9000" "spawnflags" "4097" "onstarttouch" "!self,disable,0,0,-1" "onstarttouch" "!self,enable,0,0.1,-1" "onstarttouch" "filter_screencond,$testentity,!activator,0,-1" "onstarttouch" "filter_noscreencond,$testentity,!activator,0,-1" "onstarttouch" "filter_burningnoscreen,$testentity,!activator,0,-1" "onstarttouch" "filter_stockubernoscreen,$testentity,!activator,0,-1" } logic_relay { "targetname" "howdoesthisshithappen" "ontrigger" "player,$resetclientprop$m_bUseBossHealthBar,0,0,-1" "ontrigger" "player,$resetclientprop$m_bGlowEnabled,0,0,-1" } logic_relay { "targetname" "relay_enable_mid_nests" "OnTrigger" "sentry_nest_1,Disable,,0,-1" "OnTrigger" "sentry_nest_2,Disable,,0,-1" "OnTrigger" "sentry_nest_3,Disable,,0,-1" "OnTrigger" "sentry_nest_4,Enable,,0,-1" "OnTrigger" "sentry_nest_5,Enable,,0,-1" } trigger_brush { "targetname" "game_playerdie" "StartDisabled" "0" "OnUse" "item_powerup_rune,Kill,0,-1" } } } SpawnTemplate "corelogic" SpawnTemplate "hatchblocker" SpawnTemplate "hatchunblocker" SpawnTemplate "annotations" SpawnTemplate "removeblockers" SpawnTemplate "barriers" SpawnTemplate "nav_stuff" SpawnTemplate "timertest" SpawnTemplate "Nuke" SpawnTemplate "filters" SpawnTemplate "blocker" SpawnTemplate "nests" SpawnTemplate "other_stuff" // SpawnTemplate // { // Name "tinydesk" // Origin "-1530.23 4119.14 -127.54" // Angles "0 -90 0" // } // SpawnTemplate // { // Name "tinydesk" // Origin "-2557.86 2677.13 -274.16" // Angles "0 -90 0" // } SpawnTemplate { Name "decoration" Origin "222.59 1669.35 -476.94" Angles "-10 -180 0" } SpawnTemplate { Name "decoration2" Origin "-2343.68 873.89 -545.76" Angles "0 90 0" } SpawnTemplate { Name "station" Origin "-2627.56 2744.62 -316.55" Angles "0 -90 0" } SpawnTemplate { Name "station" Origin "-1441.95 4164.50 -172.24" Angles "0 -110 0" } Templates { RedBot { Attributes DisableDodge Action Mobber AddCond { Name "TF_COND_REPROGRAMMED" } } RedBotFollow { Attributes DisableDodge Action Medic AddCond { Name "TF_COND_REPROGRAMMED" } } RedBotSniper { Attributes DisableDodge Action Sniper AddCond { Name "TF_COND_REPROGRAMMED" } } RedBotGiant { Action Mobber AddCond { Name "TF_COND_REPROGRAMMED" } Attributes DisableDodge CharacterAttributes { "ammo regen" 1 "voice pitch scale" 0 "health from packs decreased" 0.01 } } T_TFBot_Soldier_Bison_Burn { Name "Burning Bison Soldier" Class Soldier ClassIcon soldier_bison_rng Skill Hard WeaponRestrictions SecondaryOnly Tag bossminion Item "The Righteous Bison" Item "Tyrantium Helmet" ItemAttributes { ItemName "The Righteous Bison" "set item tint RGB" 16750899 "damage penalty" 0.5 "set damagetype ignite" 1 } ItemAttributes { ItemName "Tyrantium Helmet" "set item tint rgb" 16750899 } } T_TFBot_Soldier_Bison_Wet { Name "Water Bison Soldier" Class Soldier ClassIcon soldier_bison_rng Skill Hard WeaponRestrictions SecondaryOnly Tag bossminion Item "The Righteous Bison" Item "Tyrantium Helmet" ItemAttributes { ItemName "The Righteous Bison" "set item tint RGB" 32255 "fire rate bonus" 0.6 "add cond on hit" 27 "add cond on hit duration" 3 } ItemAttributes { ItemName "Tyrantium Helmet" "set item tint rgb" 32255 } } T_TFBot_Soldier_Bison_Elec { Name "Electric Bison Soldier" Class Soldier ClassIcon soldier_bison_rng Skill Hard WeaponRestrictions SecondaryOnly Tag bossminion Item "The Righteous Bison" Item "Tyrantium Helmet" ItemAttributes { ItemName "The Righteous Bison" "fire rate bonus" 0.4 "reload time decreased" 0.5 "set item tint rgb" 9634815 "crit vs wet players" 1 } ItemAttributes { ItemName "Tyrantium Helmet" "set item tint rgb" 9634815 } CharacterAttributes { "move speed bonus" 1.25 } } T_TFBot_Soldier_Bison_Ice { Name "Ice Bison Soldier" Class Soldier ClassIcon soldier_bison_rng Skill Hard WeaponRestrictions SecondaryOnly Tag bossminion Item "The Righteous Bison" Item "Tyrantium Helmet" ItemAttributes { ItemName "The Righteous Bison" "fire rate bonus" 0.79 "reload time decreased" 0.01 "set item tint rgb" 7975893 "clip size bonus" 0.25 "slow enemy on hit" 100 "slow enemy on hit major" 6 "set turn to ice" 1 "fire input on hit" "!activator^$PlaySoundToSelf^weapons/icicle_freeze_victim_01.wav" } ItemAttributes { ItemName "Tyrantium Helmet" "set item tint rgb" 7975893 } } T_TFBot_Giant_Scout_SunStick { Name "Giant Sun-Stick Scout" Class Scout ClassIcon scout_sunstick Health 1600 Attributes MiniBoss Skill Expert WeaponRestrictions MeleeOnly Tag bot_giant RingOfFire 20 Item "Sun-on-a-Stick" Item "Hephaistos' Handcraft" ItemAttributes { ItemName "Sun-on-a-Stick" "damage bonus" 2 "set damagetype ignite" 1 } CharacterAttributes { "damage force reduction" 0 "airblast vulnerability multiplier" 0 "override footstep sound set" 5 } } T_TFBot_Giant_Engineer_Deagle { Name "Giant Deagle Engineer" Class Engineer ClassIcon scout_pistol_nys Health 3000 Attributes MiniBoss Skill Expert MaxVisionRange 1200 WeaponRestrictions SecondaryOnly Item "Dustbowl Devil" ItemAttributes { ItemName "TF_WEAPON_PISTOL" "can headshot" 1 "damage bonus" 3 "mult dmg vs giants" 1.25 "fire rate penalty" 2 "clip size penalty" 0.5 "dmg pierces resists absorbs" 1 "revolver use hit locations" 1 "custom weapon fire sound" "=80|trespasser/de_shot1.wav" "custom item model" "models/workshop/weapons/c_models/c_winger_distol/c_winger_distol.mdl" } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "override footstep sound set" 6 "head scale" 0.679 } } T_TFBot_Red_Heavy { Name "Heavyweapons" Class Heavyweapons Skill Normal WeaponRestrictions PrimaryOnly Action Mobber CharacterAttributes { "crit mod disabled" 0 "health from packs decreased" 0.01 "force distribute currency on death" 1 "voice pitch scale" 0 } AddCond { Name "TF_COND_REPROGRAMMED" } // AddCond // { // Name "TF_COND_INVULNERABLE_USER_BUFF" // Duration 2 // } } T_TFBot_Red_Heavyweapons_Heater_Normal { Name "Heater Heavy" Class Heavyweapons ClassIcon heavy_heater Skill Normal WeaponRestrictions PrimaryOnly Action Mobber Item "The Huo Long Heatmaker" Item "The Bunsen Brave" CharacterAttributes { "health from packs decreased" 0.01 "crit mod disabled" 0 "voice pitch scale" 0.9 "force distribute currency on death" 1 } AddCond { Name "TF_COND_REPROGRAMMED" } // AddCond // { // Name "TF_COND_INVULNERABLE_USER_BUFF" // Duration 2 // } } T_TFBot_Red_Medic_Kritz { Name "Kritz Medic" Class Medic ClassIcon medic_kritz_red Attributes SpawnWithFullCharge Skill Normal Tag bot_cantjump AddCond { Name "TF_COND_REPROGRAMMED" } Item "medfix" Item "The Kritzkrieg" Item "The Weather Master" ItemAttributes { ItemName "The Kritzkrieg" "ubercharge rate bonus" 200 "uber duration bonus" -10 } CharacterAttributes { "bot medic uber health threshold" 999 "heal rate bonus" 10 } } T_TFBot_Red_Giant_Medic_Kritz { Name "Giant Kritz Medic" Class Medic ClassIcon medic_kritz_red_giant Health 4500 Attributes MiniBoss Attributes SpawnWithFullCharge Attributes IgnoreEnemies Skill Expert Tag bot_giant Tag bot_cantjump AddCond { Name "TF_COND_REPROGRAMMED" } Item "The Kritzkrieg" Item "The Weather Master" ItemAttributes { ItemName "The Kritzkrieg" "ubercharge rate bonus" 200 "uber duration bonus" -10 "heal rate bonus" 200 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "bot medic uber health threshold" 9999 } } T_TFBot_Red_Engineer_Ranger { Name "Ranger Engineer" Class Engineer ClassIcon engineer_ranger_nys Health 150 Skill Expert WeaponRestrictions PrimaryOnly AimTrackingInterval 0.001 AimAt Head Action Mobber Item "The Rescue Ranger" Item "The Gunslinger" Item "Texas Tin-Gallon" Item "The Texas Half-Pants" ItemAttributes { ItemName "The Gunslinger" "max health additive bonus" 0 } CharacterAttributes { "crit mod disabled" 0 "voice pitch scale" 0.9 "force distribute currency on death" 1 } AddCond { Name "TF_COND_REPROGRAMMED" } AddCond { Name "TF_COND_INVULNERABLE_USER_BUFF" Duration 2 } } T_TFBot_Faulty_Machine1 { Name "Faulty Machine" Class Soldier ClassIcon soldier_gib_lite Health 125 Attributes DisableDodge Skill Hard WeaponRestrictions MeleeOnly Action Mobber AddCond { Name "TF_COND_REPROGRAMMED" } UseCustomModel "models/bots/soldier/bot_soldier_gibby.mdl" DeathSound "=90|mvm/physics/robo_impact_bullet01.wav" StripItemSlot 0 StripItemSlot 1 Item "Prinny Machete" ItemAttributes { ItemName "Prinny Machete" "is invisible" 1 "custom kill icon" "fists" "custom hit sound" "npc/zombie/zombie_hit.wav" } CharacterAttributes { "voice pitch scale" 0 "move speed bonus" 1.25 "damage penalty" 0.5 } } T_TFBot_Faulty_Machine2 { Name "Faulty Machine" Class Pyro ClassIcon soldier_gib_lite Health 125 Attributes DisableDodge Skill Hard WeaponRestrictions MeleeOnly Action Mobber AddCond { Name "TF_COND_REPROGRAMMED" } UseCustomModel "models/bots/pyro/bot_pyro_gibby.mdl" DeathSound "=90|mvm/physics/robo_impact_bullet01.wav" StripItemSlot 0 StripItemSlot 1 Item "Prinny Machete" ItemAttributes { ItemName "Prinny Machete" "is invisible" 1 "custom kill icon" "fists" "custom hit sound" "npc/zombie/zombie_hit.wav" } CharacterAttributes { "voice pitch scale" 0 "move speed bonus" 1.25 "damage penalty" 0.5 } } T_TFBot_Faulty_Machine3 { Name "Faulty Machine" Class Heavyweapons ClassIcon soldier_gib_lite Health 125 Attributes DisableDodge Skill Hard WeaponRestrictions MeleeOnly Action Mobber AddCond { Name "TF_COND_REPROGRAMMED" } UseCustomModel "models/bots/heavy/bot_heavy_gibby.mdl" DeathSound "=90|mvm/physics/robo_impact_bullet01.wav" StripItemSlot 0 StripItemSlot 1 Item "Prinny Machete" ItemAttributes { ItemName "Prinny Machete" "is invisible" 1 "custom kill icon" "fists" "custom hit sound" "npc/zombie/zombie_hit.wav" } CharacterAttributes { "voice pitch scale" 0 "move speed bonus" 1.25 "damage penalty" 0.5 } } T_TFBot_Faulty_Machine4 { Name "Faulty Machine" Class Demoman ClassIcon soldier_gib_lite Health 125 Attributes DisableDodge Skill Hard WeaponRestrictions MeleeOnly Action Mobber AddCond { Name "TF_COND_REPROGRAMMED" } UseCustomModel "models/bots/demo/bot_demo_gibby.mdl" DeathSound "=90|mvm/physics/robo_impact_bullet01.wav" StripItemSlot 0 StripItemSlot 1 Item "Prinny Machete" ItemAttributes { ItemName "Prinny Machete" "is invisible" 1 "custom kill icon" "fists" "custom hit sound" "npc/zombie/zombie_hit.wav" } CharacterAttributes { "voice pitch scale" 0 "move speed bonus" 1.25 "damage penalty" 0.5 } } T_TFBot_Beep_Man1 { Name "Beep Mann" Class Engineer ClassIcon engineer_beepboy Health 200 Attributes DisableDodge Skill Normal MaxVisionRange 700 WeaponRestrictions PrimaryOnly Action Mobber AddCond { Name "TF_COND_REPROGRAMMED" } DesiredAttackRange 85 StripItemSlot 1 StripItemSlot 2 StripItemSlot 3 StripItemSlot 4 StripItemSlot 5 StripItemSlot 6 Item "powerhouse_shotgun_lightningrod" Item "Iron Fist" Item "Beep Man" ItemAttributes { ItemName "Beep Man" "set item tint rgb" 8289918 } CharacterAttributes { "kill forces attacker to laugh" 1 } VoiceCommand { Delay 8 Cooldown 10 Type "Cheers" } } T_TFBot_Beep_Man2 { Name "Beep Mann" Class Engineer ClassIcon engineer_beepboy Health 200 Attributes DisableDodge Skill Expert MaxVisionRange 700 WeaponRestrictions PrimaryOnly Action Mobber AddCond { Name "TF_COND_REPROGRAMMED" } DesiredAttackRange 85 StripItemSlot 1 StripItemSlot 2 StripItemSlot 3 StripItemSlot 4 StripItemSlot 5 StripItemSlot 6 Item "The Frontier Justice" Item "Iron Fist" Item "Beep Man" ItemAttributes { ItemName "Beep Man" "set item tint rgb" 8289918 } CharacterAttributes { "kill forces attacker to laugh" 1 } VoiceCommand { Delay 8 Cooldown 10 Type "Cheers" } } T_TFBot_Beep_Man3 { Name "Beep Mann" Class Engineer ClassIcon engineer_beepboy Health 200 Attributes DisableDodge Skill Expert MaxVisionRange 700 WeaponRestrictions SecondaryOnly Action Mobber AddCond { Name "TF_COND_REPROGRAMMED" } DesiredAttackRange 85 StripItemSlot 0 StripItemSlot 2 StripItemSlot 3 StripItemSlot 4 StripItemSlot 5 StripItemSlot 6 Item "The C.A.P.P.E.R" Item "Iron Fist" Item "Beep Man" ItemAttributes { ItemName "Beep Man" "set item tint rgb" 8289918 } CharacterAttributes { "kill forces attacker to laugh" 1 } VoiceCommand { Delay 8 Cooldown 10 Type "Cheers" } } T_TFBot_Beep_Man4 { Name "Beep Mann" Class Engineer ClassIcon engineer_beepboy Health 200 Attributes DisableDodge Skill Expert MaxVisionRange 700 WeaponRestrictions PrimaryOnly Action Mobber AddCond { Name "TF_COND_REPROGRAMMED" } DesiredAttackRange 85 StripItemSlot 1 StripItemSlot 2 StripItemSlot 3 StripItemSlot 4 StripItemSlot 5 StripItemSlot 6 Item "The Widowmaker" Item "Iron Fist" Item "Beep Man" ItemAttributes { ItemName "Beep Man" "set item tint rgb" 8289918 } CharacterAttributes { "kill forces attacker to laugh" 1 } VoiceCommand { Delay 8 Cooldown 10 Type "Cheers" } } T_TFBot_Beep_Man5 { Name "Beep Mann" Class Engineer ClassIcon engineer_beepboy Health 200 Attributes DisableDodge Skill Expert MaxVisionRange 700 WeaponRestrictions PrimaryOnly Action Mobber AddCond { Name "TF_COND_REPROGRAMMED" } DesiredAttackRange 85 StripItemSlot 1 StripItemSlot 2 StripItemSlot 3 StripItemSlot 4 StripItemSlot 5 StripItemSlot 6 Item "The Pomson 6000" Item "Iron Fist" Item "Beep Man" ItemAttributes { ItemName "Beep Man" "set item tint rgb" 8289918 } CharacterAttributes { "kill forces attacker to laugh" 1 } VoiceCommand { Delay 8 Cooldown 10 Type "Cheers" } } T_TFBot_Mercenary1 { Name "Trooper" Class Sniper ClassIcon red2_lite Health 200 Attributes Parachute Skill Expert MaxVisionRange 700 WeaponRestrictions SecondaryOnly Action Mobber DesiredAttackRange 150 UseHumanModel 1 AimAt Head StripItemSlot 0 StripItemSlot 2 PainSound "=99|npc/metropolice/pain1.wav" AdditionalStepSound "=99|npc/metropolice/gear6.wav" Item "AK-47" Item "Attack Packs" Item "EOTL_hiphunter_jacket" Item "dec2014 hunter_ushanka" Item "Support Spurs" Item "CLTF2 Prolander Tournament Supporter" Item "Final Frontiersman" Item "The B.A.S.E. Jumper" CharacterAttributes { "move speed bonus" 1.25 "increased air control" 100 "faster reload rate" 0.5 } ItemModel { ItemName "CLTF2 Prolander Tournament Supporter" Model "models/workshop/player/items/scout/hwn2019_fuel_injector_style2/hwn2019_fuel_injector_style2.mdl" } } T_TFBot_Mercenary2 { Name "Trooper" Class Sniper ClassIcon red2_lite Health 200 Attributes Parachute Skill Expert MaxVisionRange 700 WeaponRestrictions SecondaryOnly Action Mobber DesiredAttackRange 150 UseHumanModel 1 AimAt Head StripItemSlot 0 StripItemSlot 2 PainSound "=99|npc/metropolice/pain1.wav" AdditionalStepSound "=99|npc/metropolice/gear6.wav" Item "Tommy Gun" Item "Attack Packs" Item "Loyalty Reward" Item "Medi-Mask" Item "Siberian Tigerstripe" Item "Blizzard Britches" Item "Final Frontiersman" Item "The B.A.S.E. Jumper" CharacterAttributes { "move speed bonus" 1.25 "increased air control" 100 "faster reload rate" 0.5 } } T_TFBot_Player_Scout { Name "Player" Class Scout ClassIcon tf2_lite Health 125 Attributes AutoJump AutoJumpMin 3 AutoJumpMax 3 Skill Expert MaxVisionRange 1200 UseBestWeapon 1 Action Mobber AddCond { Name "TF_COND_REPROGRAMMED" } UseHumanModel 1 Tag gatedefend Item "The Soda Popper" Item "The Flying Guillotine" Item "Dillinger's Duffel" Item "Saxton Hat" Item "The Merc's Muffler" ItemAttributes { ItemName "The Soda Popper" "clip size bonus" 2 "damage bonus" 1.5 } ItemAttributes { ItemName "The Flying Guillotine" "always crit" 1 } CharacterAttributes { "dmg taken from bullets reduced" 0.25 "dmg taken from blast reduced" 0.25 "dmg taken from fire reduced" 0.25 "dmg taken from crit reduced" 0.1 } ItemModel { ItemName "The Merc's Muffler" Model "models/player/items/scout/professor_speks.mdl" } } T_TFBot_Player_Soldier { Name "Player" Class Soldier ClassIcon tf2_lite Health 200 Attributes SpawnWithFullCharge Attributes DisableDodge Skill Expert MaxVisionRange 1500 Action Mobber AddCond { Name "TF_COND_REPROGRAMMED" } UseHumanModel 1 Tag gatedefend Item "The Beggar's Bazooka" Item "The Concheror" Item "Stainless Pot" Item "Antarctic Parka" Item "Robin Walkers" Item "Default Power Up Canteen (MvM)" ItemAttributes { ItemName "The Beggar's Bazooka" "can overload" 0 "auto fires full clip" 0 "damage bonus" 2 "rocket specialist" 4 "clip size upgrade atomic" 8 "faster reload rate" 0.4 "fire rate bonus" 0.6 "heal on kill" 100 "blast dmg to self increased" 0 } ItemAttributes { ItemName "Default Power Up Canteen (MvM)" "critboost" 3 "powerup duration" 5 "powerup charges" 3 } CharacterAttributes { "deploy time decreased" 0.001 "dmg taken from fire reduced" 0.25 "dmg taken from bullets reduced" 0.25 "dmg taken from blast reduced" 0.25 "dmg taken from crit reduced" 0.1 "health regen" 10 "increase buff duration" 1.5 "move speed bonus" 1.3 "increased jump height" 1.6 } } T_TFBot_Player_Spy { Name "Player" Class Spy ClassIcon tf2_lite Health 100 Attributes AutoJump AutoJumpMin 6 AutoJumpMax 12 Skill Expert MaxVisionRange 800 AddCond { Name "TF_COND_REPROGRAMMED" } UseHumanModel 1 UseMeleeThreatPrioritization 1 ExtAttr IgnoreBuildings Item "The Big Earner" Item "The Enforcer" Item "The Dead Ringer" Item "Murderer's Motif" Item "Bandit's Boots" Item "The Caped Crusader" Item "Default Power Up Canteen (MvM)" ItemAttributes { ItemName "The Big Earner" "fire rate bonus" 0.6 "armor piercing" 100 "max health additive penalty" 0 } ItemAttributes { ItemName "TF_WEAPON_BUILDER_SPY" "robo sapper" 3 } CharacterAttributes { "health regen" 10 "dmg taken from bullets reduced" 0.25 "dmg taken from blast reduced" 0.25 "dmg taken from fire reduced" 0.25 "dmg taken from crit reduced" 0.25 "mult dmgtaken from melee" 0.25 "move speed bonus" 2 "cannot pick up intelligence" 1 } FireWeapon { Delay 1 Cooldown 600 Duration 1 Repeats 1 IfSeeTarget 0 Type "Secondary" } FireWeapon { Delay 1 Cooldown 3 Duration 1 Repeats 600 IfSeeTarget 0 Type "Secondary" IfHealthBelow 66 } FireWeapon { Delay 0 Cooldown 0 IfHealthBelow 101 Type "Primary" } } T_TFBot_Player_Sniper { Name "Player" Class Sniper ClassIcon tf2_lite Health 300 Attributes SpawnWithFullCharge Attributes IgnoreFlag Skill Expert MaxVisionRange 3000 AddCond { Name "TF_COND_REPROGRAMMED" } AddCond { Name "TF_COND_AIMING" } UseHumanModel 1 NoCrouchButtonRelease 1 Item "The Hitman's Heatmaker" Item "The Cozy Camper" Item "Liquidator's Lid" Item "The Triggerman's Tacticals" Item "The Scoper's Smoke" ItemAttributes { ItemName "The Hitman's Heatmaker" "damage bonus" 2 "faster reload rate" 0.4 "explosive sniper shot" 3 "projectile penetration" 1 "heal on kill" 100 } ItemAttributes { ItemName "The Cozy Camper" "health regen" 40 "backstab shield" 1 } CharacterAttributes { "dmg taken from bullets reduced" 0.25 "dmg taken from blast reduced" 0.25 "dmg taken from fire reduced" 0.25 "dmg taken from crit reduced" 0.1 "increase buff duration" 50 "move speed bonus" 1.3 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "airblast vertical vulnerability multiplier" 0 } FireWeapon { Delay 3 Cooldown 0 Repeats 1 IfSeeTarget 0 Duration 1 Type "Reload" } FireWeapon { Delay 0 Cooldown 0 Repeats 0 IfSeeTarget 1 Duration 0.1 Type "Primary" } FireWeapon { Delay 0.01 Cooldown 0.01 Repeats 0.01 IfSeeTarget 0.01 Duration 100 Type "Crouch" } } T_TFBot_Player_Demoman { Name "Player" Class Demoman ClassIcon tf2_lite Health 150 Attributes DisableDodge Attributes HoldFireUntilFullReload Skill Expert Action Sniper AddCond { Name "TF_COND_REPROGRAMMED" } UseHumanModel 1 ExtAttr SuppressCanteenUse Item "The Iron Bomber" Item "The Splendid Screen" Item "Nessie's Nine Iron" Item "The Tavish DeGroot Experience" Item "The Cool Breeze" Item "Memes vs Machines Player 2019" Item "Default Power Up Canteen (MvM)" ItemAttributes { ItemName "The Iron Bomber" "damage bonus" 2 "faster reload rate" 0.6 "fire rate bonus" 0.6 "heal on kill" 100 } ItemAttributes { ItemName "Nessie's Nine Iron" "damage bonus" 1.5 "heal on kill" 100 "max health additive penalty" 0 } ItemAttributes { ItemName "Default Power Up Canteen (MvM)" "critboost" 1 "powerup charges" 3 "powerup duration" 5 } FireWeapon // Extra Canteen trolling { IfHealthBelow 100 Delay 0 Cooldown 0 Repeats 0 IfSeeTarget 0 Duration 0.1 Type "Action" } CharacterAttributes { "health regen" 10 "dmg taken from bullets reduced" 0.25 "dmg taken from blast reduced" 0.25 "dmg taken from fire reduced" 0.25 "dmg taken from crit reduced" 0.1 "charge recharge rate increased" 2 "deploy time decreased" 0.25 } } T_TFBot_Player_Pyro { Name "Player" Class Pyro ClassIcon tf2_lite Skill Expert MaxVisionRange 700 Action Mobber AddCond { Name "TF_COND_REPROGRAMMED" } UseHumanModel 1 DesiredAttackRange 150 MoveBehindEnemy 1 Item "The Backburner" Item "The Thermal Thruster" Item "The Powerjack" Item "KF Pyro Mask" Item "The Hot Huaraches" Item "Replica Titanium Tank 2020" ItemAttributes { ItemName "The Backburner" "damage bonus" 2 "weapon burn dmg increased" 2 "airblast pushback scale" 2 "heal on kill" 100 } ItemAttributes { ItemName "The Thermal Thruster" "thermal_thruster_air_launch" 1 "item_meter_charge_rate" 0.01 "falling_impact_radius_stun" 1 "holster_anim_time" 0 "deploy time decreased" 0.001 } CharacterAttributes { "deploy time decreased" 0.25 "increased air control" 4 "boots falling stomp" 1 "dmg taken from blast reduced" 0.25 "dmg taken from bullets reduced" 0.25 "dmg taken from fire reduced" 0.25 "mult dmgtaken from melee" 0.25 "dmg taken from crit reduced" 0.1 "health regen" 10 "move speed bonus" 1.2 } FireWeapon { Delay 1 Cooldown 1 IfSeeTarget 1 Type "Primary" } FireWeapon { Delay 6 Cooldown 3 IfSeeTarget 0 Type "Jump" } ItemModel // Should fix the cosmetics style override { ItemName "Replica Titanium Tank 2020" Model "models/player/items/pyro/pyro_chef_hat.mdl" } } T_TFBot_Player_Medic { Name "Player" Class Medic ClassIcon tf2_lite Attributes SpawnWithFullCharge Attributes ProjectileShield Attributes AlwaysFireWeapon Skill Normal UseHumanModel 1 Action Mobber AddCond { Name "TF_COND_REPROGRAMMED" } AimAt Feet AimOffset "0 0 -85" UseMeleeThreatPrioritization 1 StripItemSlot 0 StripItemSlot 2 Item "The Quick-Fix" Item "Madness vs Machines Burnished Beryl 2019" Item "The Gentleman's Ushanka" Item "Das Metalmeatencasen" ItemAttributes { ItemName "The Quick-Fix" "generate rage on heal" 1 "increase buff duration" 9.0 } ItemAttributes { ItemName "Madness vs Machines Burnished Beryl 2019" "set item tint RGB" 15185211 "item style override" 1 } CharacterAttributes { "health regen" 10 "dmg taken from bullets reduced" 0.25 "dmg taken from blast reduced" 0.25 "dmg taken from fire reduced" 0.25 "dmg taken from crit reduced" 0.1 "move speed bonus" 1.2 } InterruptAction { Target ClosestPlayer Delay 5 Repeats 0 Cooldown 1.05 Duration 1 } FireWeapon { Delay 0 Cooldown 2 Repeats 0 IfSeeTarget 0 Duration 3 Type "Special" } } T_TFBot_Red_Soldier_Wasp_Battalion { Name "Extended Backup Soldier" Class Soldier ClassIcon soldier_backup Health 220 Skill Expert Attributes SpawnWithFullCharge MaxVisionRange 1600 WeaponRestrictions PrimaryOnly AddCond { Name "TF_COND_REPROGRAMMED" } Action Mobber StripItemSlot 2 DropWeapon 1 Item "W.A.S.P. Launcher" Item "The Battalion's Backup" ItemAttributes { ItemName "The Battalion's Backup" "max health additive bonus" 0 } CharacterAttributes { "crit mod disabled" 0 "collect currency on kill" 1 // "health regen" 10 "increase buff duration" 200 // "dmg taken from blast reduced" 0.25 // "dmg taken from bullets reduced" 0.25 // "dmg taken from fire reduced" 0.25 // "dmg taken from crit reduced" 0.1 "deploy time decreased" 0.5 } VoiceCommand { Delay 5 Cooldown 30 Type "Go" } // VoiceCommand // { // Delay 3 // Cooldown 12 // IfHealthBelow 50 // Type "Medic" // } VoiceCommand { Delay 3 Cooldown 12 IfSeeTarget 1 Type "Battle Cry" } // AddCond // { // Name "TF_COND_INVULNERABLE_USER_BUFF" // Duration 3 // } } T_TFBot_Red_Giant_Engineer_Charger { Name "Giant Charged Engineer" Class Engineer ClassIcon engineer_ranger_nys Health 3000 Attributes MiniBoss Attributes DisableDodge Attributes AlwaysCrit Skill Expert WeaponRestrictions SecondaryOnly Action Mobber AddCond { Name "TF_COND_REPROGRAMMED" } Item "The Rescue Ranger" Item "The Giger Counter" Item "The Sightliner" ItemAttributes { ItemName "The Rescue Ranger" "fire rate penalty" 2 "mod max primary clip override" -1 "projectile penetration" 1 "damage bonus" 2 "is_passive_weapon" 1 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "override footstep sound set" 6 "voice pitch scale" 0 "health from packs decreased" 0.01 "head scale" 0.679 } } T_TFBot_Chief_Shapeshifter { Name "Holographic Menace" Class Spy ClassIcon boss_morphing_menace Scale 2.1 Health 200000 Attributes MiniBoss Attributes UseBossHealthBar Attributes DisableDodge Skill Expert WeaponRestrictions PrimaryOnly AddCond { Name "TF_COND_REPROGRAMMED" } Action Mobber FastUpdate 1 UseMeleeThreatPrioritization 1 AimTrackingInterval 0 ExtAttr JumpStomp StripItemSlot 3 StripItemSlot 4 StripItemSlot 5 StripItemSlot 6 ItemAttributes { ItemName "TF_WEAPON_REVOLVER" "damage bonus" 2.5 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "airblast vertical vulnerability multiplier" 0 "rage giving scale" 0.1 "cannot disguise" 1 "voice pitch scale" 0 "health from packs decreased" 0.01 "cannot be sapped" 1 } AddCond { Index 4 Duration 0.4 } EventChangeAttributes { Default { Attributes MiniBoss Attributes UseBossHealthBar } Demo { Attributes MiniBoss Attributes UseBossHealthBar Attributes HoldFireUntilFullReload WeaponRestrictions PrimaryOnly Item "Upgradeable TF_WEAPON_GRENADELAUNCHER" Item "Prince Tavish's Crown" ItemAttributes { ItemName "Upgradeable TF_WEAPON_GRENADELAUNCHER" "add cond when active" 36 "crit vs burning players" 1 "crit vs non burning players" 1 "projectile trail particle" "eyeboss_projectile" "custom projectile model" "models/weapons/w_models/w_repair_claw_gib1.mdl" "fire rate bonus" 0.2 "faster reload rate" 0.3 "clip size penalty" 3.0 "Projectile speed increased" 1.5 } CharacterAttributes { "override footstep sound set" 4 } } Heavy { Attributes MiniBoss Attributes UseBossHealthBar Item "War Head" Item "Fists of Steel" WeaponRestrictions MeleeOnly ItemAttributes { ItemName "Fists of Steel" "custom item model" "models/weapons/c_models/c_fists_of_steel_gray/c_fists_of_steel_gray.mdl" "switch from wep deploy time decreased" 0.01 "single wep deploy time decreased" 0.01 "damage bonus" 5 "fire rate bonus" 0.6 } CharacterAttributes { "override footstep sound set" 2 } } Soldier { Attributes MiniBoss Attributes UseBossHealthBar Attributes HoldFireUntilFullReload WeaponRestrictions PrimaryOnly Item "Upgradeable TF_WEAPON_ROCKETLAUNCHER" Item "Tyrant's Helm" ItemAttributes { ItemName "Upgradeable TF_WEAPON_ROCKETLAUNCHER" "add cond when active" 36 "crit vs burning players" 1 "crit vs non burning players" 1 "projectile trail particle" "eyeboss_projectile" "damage bonus" 1.5 "faster reload rate" 0.6 "fire rate bonus" 0.2 "clip size upgrade atomic" 7.0 "Projectile speed increased" 1.3 } ItemAttributes { ItemName "Tyrant's Helm" "set item tint rgb" 8289918 } CharacterAttributes { "override footstep sound set" 3 } } Soldier2 { Attributes MiniBoss Attributes UseBossHealthBar Attributes HoldFireUntilFullReload WeaponRestrictions PrimaryOnly Item "The Black Box" Item "Fancy Dress Uniform" Item "The Team Captain" ItemAttributes { ItemName "The Black Box" "damage bonus" 5 "mult dmg vs giants" 2.5 "set damagetype ignite" 1 "damage causes airblast" 1 "faster reload rate" 3 "fire rate penalty" 2 "explosion particle" "hightower_explosion" "blast radius increased" 2 "Projectile speed increased" 0.5 } CharacterAttributes { "override footstep sound set" 3 } } Pyro { Attributes MiniBoss Attributes UseBossHealthBar WeaponRestrictions PrimaryOnly Item "TF_WEAPON_FLAMETHROWER" Item "Brigade Helm" ItemAttributes { ItemName "TF_WEAPON_FLAMETHROWER" "airblast pushback scale" 2.0 "damage bonus" 5 } ItemAttributes { ItemName "Brigade Helm" "set item tint rgb" 8289918 } CharacterAttributes { "health regen" 500 "override footstep sound set" 6 } } Medic { Attributes MiniBoss Attributes UseBossHealthBar WeaponRestrictions PrimaryOnly AimLeadProjectileSpeed 1 AimAt Head Item "The Crusader's Crossbow" Item "Modest Metal Pile of Scrap" ItemAttributes { ItemName "The Crusader's Crossbow" "projectile spread angle penalty" 4 "fire rate bonus" 0.001 "clip size bonus" 5 "faster reload rate" 0.4 "damage penalty" 0.5 "mult dmg vs giants" 1.25 } } Sniper { WeaponRestrictions PrimaryOnly Item "Corona Australis" Item "The Fortified Compound" Attributes SuppressFire Attributes UseBossHealthBar AimAt Body FireWeapon { Delay 0.8 Cooldown 0.8 Type "Primary" } ShootTemplate { Name Explosive_Tip_Bot Speed 0 AttachToProjectile 1 ItemName "The Fortified Compound" } ItemAttributes { ItemName "The Fortified Compound" "faster reload rate" 0.001 "sniper no headshots" 1 "headshot damage increase" 0.3 "dmg penalty vs players" 0.75 "dmg bonus vs buildings" 2 } ItemAttributes { ItemName "Corona Australis" "set item tint rgb" 8289918 } CharacterAttributes { "override footstep sound set" 7 } } Engineer { Attributes MiniBoss Attributes UseBossHealthBar WeaponRestrictions MeleeOnly Item "The Southern Hospitality" Item "Engineer's Cap" ItemAttributes { ItemName "The Southern Hospitality" "custom item model" "models/workshop/player/items/engineer/taunt_texas_truckin/taunt_texas_truckin.mdl" "fire rate penalty" 200 "stomp player damage" 100 "stomp player force" 270 } CharacterAttributes { "move speed bonus" 1.0 } } Spy { Attributes MiniBoss Attributes UseBossHealthBar WeaponRestrictions PrimaryOnly Item "The Diamondback" Item "Belltower Spec ops" ItemAttributes { ItemName "The Diamondback" // "add cond when active" 36 // "crit vs burning players" 1 // "crit vs non burning players" 1 "damage penalty" 1 "damage bonus" 4 "bullets per shot bonus" 6 "spread penalty" 3 "fire rate penalty" 2 } CharacterAttributes { "override footstep sound set" 7 "attack projectiles" 1 // force ability to shoot down projectiles } } Scout { Attributes MiniBoss WeaponRestrictions MeleeOnly Item "Genuine Cockfighter" Item "The Boston Boom-Bringer" Item "Summer Shades" Item "The Sandman" FireWeapon { Delay 0.8 Cooldown 0.8 IfSeeTarget 1 Type "Secondary" } ItemAttributes { ItemName "The Sandman" "effect bar recharge rate increased" 0.001 "max health additive penalty" -0 "damage bonus" 2 "item color rgb" 8208497 "always crit" 1 "projectile trail particle" "eyeboss_projectile" } ItemAttributes { ItemName "Genuine Cockfighter" "set item tint rgb" 8289918 } CharacterAttributes { "move speed bonus" 8 "override footstep sound set" 5 } } } SpawnTemplate Shapeshift_Logic } } // PeriodicSpawn // { // Where spawnbot_side // When // { // MinInterval 0 // MaxInterval 35 // } // TFBot // { // Template T_TFBot_Scout_Fish // NoBombUpgrades 1 // Tag bot_blu // Tag stop_getting_stuck_retard // CharacterAttributes { "move speed bonus" 1.5 "health drain" -10 "force distribute currency on death" 1 } // } // } Wave // Wave 1 { WaitWhenDone 65 Checkpoint Yes StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } InitWaveOutput { Target holograms_3way_relay Action Trigger } WaveSpawn // Dummy { TotalCount 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 999999 FirstSpawnWarningSound "ambient/alarms/manhack_alert_pass1.wav" Support 1 PointTemplate { Name sentries_w1 ClassIcon sentry_gun_red_nys } } WaveSpawn { Name "bomb" Where spawnbot TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 999999 TotalCurrency 0 Support 1 TFBot { Name "Don't forget the bomb!" CLass Demoman ClassIcon sentry_gun_red_nys NoGlow 1 Health 1 Attributes IgnoreEnemies UseCustomModel "models/empty.mdl" ChangeAttributes { "voice pitch scale" 0 } AddCond { Name "TF_COND_STEALTHED_USER_BUFF_FADING" } AddCond { Name "TF_COND_REPROGRAMMED" } CustomWeaponModel { Slot 0 Model "models/empty.mdl" } CustomWeaponModel { Slot 1 Model "models/empty.mdl" } CustomWeaponModel { Slot 2 Model "models/empty.mdl" } FireInput { Target "!activator" Action "$TakeDamage" Param "1" Delay 1 Cooldown 1 Repeats 0 } } } WaveSpawn { Name "1a" Where spawnbot_front TotalCount 32 MaxActive 8 SpawnCount 4 WaitBeforeStarting 0 WaitBetweenSpawns 1 TotalCurrency 100 RandomSpawn 1 TFBot { Template T_TFBot_Red_Pyro CharacterAttributes { "airblast disabled" 1 } // AddCond { Name "TF_COND_INVULNERABLE_USER_BUFF" Duration 3 } } } WaveSpawn { Name "1a" Where spawnbot_front2 TotalCount 2 MaxActive 2 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 10 TotalCurrency 100 RandomSpawn 1 TFBot { Template T_TFBot_Red_Heavyweapons_Heater Tag bot_giant Name "Giant Heater Heavy" Item "The Bunsen Brave" } } WaveSpawn { Name "1b" WaitForAllSpawned "1a" Where spawnbot_front2 TotalCount 2 MaxActive 2 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 10 TotalCurrency 100 RandomSpawn 1 TFBot { Template T_TFBot_Giant_Soldier_Spammer_Hatted Tag bot_giant AddTemplate RedBotGiant } } WaveSpawn { Name "1b" WaitForAllSpawned "1a" Where spawnbot_front2 TotalCount 30 MaxActive 10 SpawnCount 5 WaitBeforeStarting 0 WaitBetweenSpawns 5 TotalCurrency 100 RandomSpawn 1 RandomChoice { TFBot { Template T_TFBot_Soldier_Bison_Burn AddTemplate RedBot } TFBot { Template T_TFBot_Soldier_Bison_Ice AddTemplate RedBot } TFBot { Template T_TFBot_Soldier_Bison_Elec AddTemplate RedBot } TFBot { Template T_TFBot_Soldier_Bison_Wet AddTemplate RedBot } } } WaveSpawn // Dummy { WaitForAllSpawned "1b" TotalCount 0 SpawnCount 0 WaitBeforeStarting 0 FirstSpawnOutput { Target disablebarrier1 Action Trigger } } WaveSpawn { Name "1c" WaitForAllSpawned "1b" Where spawnbot_mid TotalCount 8 MaxActive 8 SpawnCount 4 WaitBeforeStarting 0 WaitBetweenSpawns 10 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Red_Giant_Demo_Burst Item "Scotch Bonnet" Tag bot_giant } TFBot { Template T_TFBot_Red_Medic_Kritz } TFBot { Template T_TFBot_Red_Medic_Kritz } TFBot { Template T_TFBot_Red_Medic_Kritz } } } WaveSpawn { Name "1c" WaitForAllSpawned "1b" Where spawnbot_front_behind_leftonly TotalCount 18 MaxActive 9 SpawnCount 3 WaitBeforeStarting 0 WaitBetweenSpawns 8 TotalCurrency 100 TFBot { Template T_TFBot_Red_Sniper_Huntsman_Spammer // AddCond { Name "TF_COND_INVULNERABLE_USER_BUFF" Duration 3 } } } WaveSpawn { Name "1d" WaitForAllSpawned "1c" Where spawnbot_front_behind_leftonly TotalCount 16 MaxActive 4 SpawnCount 1 WaitBeforeStarting 5 WaitBetweenSpawns 5 TotalCurrency 200 TFBot { Template T_TFBot_Red_Demoman_Samurai // AddCond { Name "TF_COND_INVULNERABLE_USER_BUFF" Duration 3 } } } WaveSpawn { Name "1d" WaitForAllSpawned "1c" Where spawnbot_front_behind_leftonly TotalCount 27 MaxActive 18 SpawnCount 9 WaitBeforeStarting 10 WaitBetweenSpawns 5 TotalCurrency 100 RandomSpawn 1 TFBot { Class Sniper Skill Expert WeaponRestrictions PrimaryOnly AimAt Head Item "Shooting Star" Item "Corona Australis" Item "Starduster" AddCond { Name "TF_COND_AIMING" } ItemAttributes { ItemName "Shooting Star" "sniper only fire zoomed" 0 "mult dmg vs giants" 1.5 } FireWeapon { Delay 0 Cooldown 3 Repeats 0 IfSeeTarget 1 Duration 0 Type "Secondary" } AddTemplate RedBot } } WaveSpawn { Name "1d" WaitForAllSpawned "1c" Where spawnbot_front_behind_leftonly TotalCount 6 MaxActive 3 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 12 TotalCurrency 200 TFBot { Template T_TFBot_Red_Giant_Scout ClassIcon scout_bat_nys Attributes AlwaysCrit Attributes DisableDodge WeaponRestrictions MeleeOnly Item "Batter's Helmet" } } WaveSpawn // Dummy { WaitForAllSpawned "1d" TotalCount 0 SpawnCount 0 WaitBeforeStarting 0 StartWaveWarningSound "npc/turret_floor/die.wav" FirstSpawnOutput { Target disablebarrier2 Action Trigger } } WaveSpawn { Name "infinite" WaitForAllSpawned "1d" Where "" Where spawnbot_red TotalCount 999 MaxActive 12 SpawnCount 6 WaitBeforeStarting 5 WaitBetweenSpawns 5 TotalCurrency 0 RandomSpawn 1 Support 1 RandomChoice { TFBot { Template T_TFBot_Faulty_Machine1 } TFBot { Template T_TFBot_Faulty_Machine2 } TFBot { Template T_TFBot_Faulty_Machine3 } } } WaveSpawn { Name "unblockers" WaitForAllDead "1d" Where spawnbot_pissdick TotalCount 2 MaxActive 2 SpawnCount 1 WaitBeforeStarting 5 WaitBetweenSpawns 10 TotalCurrency 100 DoneOutput { Target unblockhatch Action Trigger } TFBot { Name "Giant Overcharged Soldier" Class Soldier ClassIcon soldier_crit Health 4000 Attributes MiniBoss Attributes AlwaysCrit Skill Normal WeaponRestrictions PrimaryOnly Tag bot_hatch Item "The Original" Item "The First American" ItemAttributes { ItemName "The Original" "damage bonus" 2 "faster reload rate" -0.8 "fire rate bonus" 2 "projectile speed increased" 0.5 "blast dmg to self increased" 0 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "override footstep sound set" 3 } AddTemplate RedBot } } WaveSpawn // Dummy { TotalCount 0 SpawnCount 0 WaitBeforeStarting 540 FirstSpawnOutput { Target hurryup_relay Action Trigger } } WaveSpawn { Where spawnbot TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 999999 WaitBetweenSpawns 0 TotalCurrency 0 HideIcon 1 // Hides icons from the wave bar. Should use a ClassIcon different from visible ones TFBot { Class Pyro ClassIcon red2_lite } } } Wave // Wave 2 { WaitWhenDone 65 Checkpoint Yes StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn // Dummy { TotalCount 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 999999 FirstSpawnWarningSound "ambient/alarms/manhack_alert_pass1.wav" Support 1 PointTemplate { Name sentries_w2 ClassIcon sentry_gun_lvl2_red_lite } } WaveSpawn { Name "bomb" Where spawnbot TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 999999 TotalCurrency 0 Support 1 TFBot { Name "Don't forget the bomb!" CLass Demoman ClassIcon sentry_gun_lvl2_red_lite NoGlow 1 Health 1 Attributes IgnoreEnemies UseCustomModel "models/empty.mdl" ChangeAttributes { "voice pitch scale" 0 } AddCond { Name "TF_COND_STEALTHED_USER_BUFF_FADING" } AddCond { Name "TF_COND_REPROGRAMMED" } CustomWeaponModel { Slot 0 Model "models/empty.mdl" } CustomWeaponModel { Slot 1 Model "models/empty.mdl" } CustomWeaponModel { Slot 2 Model "models/empty.mdl" } FireInput { Target "!activator" Action "$TakeDamage" Param "1" Delay 1 Cooldown 1 Repeats 0 } } } WaveSpawn { Name "blu" Where spawnbot_side TotalCount 4 MaxActive 4 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 5 TotalCurrency 0 Support 1 HideIcon 1 TFBot { Template T_TFBot_Heavyweapons_Fist Action Mobber Tag bot_blu DesiredAttackRange 80 } } WaveSpawn { Name "2a" Where spawnbot_front2 TotalCount 2 MaxActive 2 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 200 Squad { TFBot { Name "Giant FlareWeapons" Class Pyro ClassIcon pyro_flare_rain_red_nys Scale 1.8 Health 5000 Attributes MiniBoss Skill Expert WeaponRestrictions SecondaryOnly ExtAttr IgnoreBuildings Tag bot_giant Item "The Scorch Shot" Item "Pyro Helm" ItemAttributes { ItemName "The Scorch Shot" "fire rate bonus" 0.05 // "faster reload rate" 0.01 "mult dmg vs giants" 0.5 "ragdolls become ash" 1 "projectile spread angle penalty" 2 "hand scale" 1.4 "mod flaregun fires pellets with knockback" 0 "crits_become_minicrits" 1 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "override footstep sound set" 6 } AddTemplate RedBotGiant } TFBot { Template T_TFBot_Red_Giant_Medic Tag bot_giant } TFBot { Template T_TFBot_Red_Giant_Medic Tag bot_giant } } } WaveSpawn { Name "2a" Where spawnbot_front Where spawnbot_front2 TotalCount 40 MaxActive 18 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 2 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Red_Heavyweapons_Shotgun Attributes AlwaysCrit Attributes DisableDodge ExtAttr IgnoreBuildings CharacterAttributes { "patient overheal penalty" 0 } } TFBot { Template T_TFBot_Red_Medic_QuickUber Item "medfix" } } } WaveSpawn // Dummy { WaitForAllDead "2a" TotalCount 0 SpawnCount 0 WaitBeforeStarting 0 FirstSpawnOutput { Target disablebarrier1 Action Trigger } } WaveSpawn { Name "2b" WaitForAllDead "2a" Where spawnbot_front_behind_leftonly TotalCount 8 MaxActive 8 SpawnCount 4 WaitBeforeStarting 0 WaitBetweenSpawns 12 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Soldier_RocketRain Tag bot_giant Tag stop_getting_stuck_retard AddTemplate RedBotGiant } TFBot { Template T_TFBot_Red_Sniper_Huntsman_Smg AimAt Head } TFBot { Template T_TFBot_Red_Sniper_Huntsman_Smg AimAt Head } TFBot { Template T_TFBot_Red_Sniper_Huntsman_Smg AimAt Head } } } WaveSpawn { Name "2b.1" WaitForAllDead "2a" Where spawnbot_front_behind_leftonly TotalCount 4 MaxActive 4 SpawnCount 1 WaitBeforeStarting 14 WaitBetweenSpawns 10 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Scout_SunStick DesiredAttackRange 80 AddTemplate RedBotGiant } } WaveSpawn { Name "2c" WaitForAllDead "2b" Where spawnbot_front_behind_leftonly TotalCount 25 MaxActive 10 SpawnCount 5 WaitBeforeStarting 4 WaitBetweenSpawns 5 TotalCurrency 100 TFBot { Template T_TFBot_Red_Soldier_Wasp_Battalion } } WaveSpawn { Name "2c" WaitForAllDead "2b" Where spawnbot_front_behind_leftonly TotalCount 32 MaxActive 8 SpawnCount 4 WaitBeforeStarting 4 WaitBetweenSpawns 4 TotalCurrency 100 TFBot { Template T_TFBot_Demoman_Knight_Persian AddTemplate RedBot } } // WaveSpawn // { // Name "2c.1" // WaitForAllSpawned "2c" // Where spawnbot_front_behind_leftonly // TotalCount 4 // MaxActive 4 // SpawnCount 2 // WaitBeforeStarting 0 // WaitBetweenSpawns 10 // TotalCurrency 100 // Squad // { // TFBot // { // Template T_TFBot_Giant_Soldier_HomingMissile // AddTemplate RedBotGiant // } // TFBot // { // Template T_TFBot_Red_Giant_Medic // CharacterAttributes { "bot medic uber deploy delay duration" 30 } // } // } // } WaveSpawn { Name "2c.1" WaitForAllDead "2c" Where spawnbot_front_behind_leftonly TotalCount 2 MaxActive 2 SpawnCount 1 WaitBeforeStarting 16 WaitBetweenSpawns 4 TotalCurrency 100 TFBot { Name "Giant Phlog Pyro" Class Pyro ClassIcon pyro_phlog_giant Health 3300 Attributes MiniBoss Attributes SpawnWithFullCharge Skill Expert WeaponRestrictions PrimaryOnly Tag bot_giant DesiredAttackRange 80 Item "The Phlogistinator" Item "The MK 50" ItemAttributes { ItemName "The Phlogistinator" "airblast disabled" 0 "mod rage on hit bonus" 333 "increase buff duration" 2.0 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "override footstep sound set" 6 } AddTemplate RedBotGiant } } WaveSpawn // Dummy { WaitForAllDead "2c" TotalCount 0 SpawnCount 0 WaitBeforeStarting 0 FirstSpawnWarningSound "npc/turret_floor/die.wav" FirstSpawnOutput { Target disablebarrier2 Action Trigger } } WaveSpawn { Name "unblockers" WaitForAllDead "2c" Where spawnbot_hatch TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 200 DoneWarningSound "mvm/mvm_player_died.wav" DoneOutput { Target unblockhatch Action Trigger } TFBot { Template T_TFBot_Player_Sniper } } WaveSpawn { Name "infinite" WaitForAllSpawned "2c" Where "" Where spawnbot_red TotalCount 999 MaxActive 8 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 1 TotalCurrency 0 Support 1 RandomSpawn 1 RandomChoice { TFBot { Template T_TFBot_Red_Soldier Skill Expert WeaponRestrictions PrimaryOnly // AddCond { Name "TF_COND_INVULNERABLE_USER_BUFF" Duration 3 } } TFBot { Template T_TFBot_Red_Soldier Skill Expert WeaponRestrictions PrimaryOnly Item "The Direct Hit" // AddCond { Name "TF_COND_INVULNERABLE_USER_BUFF" Duration 3 } } TFBot { Template T_TFBot_Red_Soldier Skill Expert Item "Panic Attack Shotgun" // AddCond { Name "TF_COND_INVULNERABLE_USER_BUFF" Duration 3 } } } } WaveSpawn { Name "redbuster" Where spawnbot_pissdick TotalCount 2 MaxActive 2 SpawnCount 2 WaitForAllDead "part01" WaitBeforeStarting 20 WaitBetweenSpawns 50 TotalCurrency 0 Support 1 RandomSpawn 1 TFBot { Template T_TFBot_Red_SentryBuster } } WaveSpawn // Dummy { TotalCount 0 SpawnCount 0 WaitBeforeStarting 540 FirstSpawnOutput { Target hurryup_relay Action Trigger } } WaveSpawn { Where spawnbot TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 999999 WaitBetweenSpawns 0 TotalCurrency 0 HideIcon 1 // Hides icons from the wave bar. Should use a ClassIcon different from visible ones TFBot { Class Pyro ClassIcon red2_lite } } } Wave // Wave 3 { WaitWhenDone 65 Checkpoint Yes StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn // Dummy { TotalCount 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 999999 FirstSpawnWarningSound "ambient/alarms/manhack_alert_pass1.wav" Support 1 PointTemplate { Name sentries_w3 ClassIcon sentry_gun_lvl3_red_lite } } WaveSpawn { Name "bomb" Where spawnbot TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 999999 TotalCurrency 0 Support 1 TFBot { Name "Don't forget the bomb!" CLass Demoman ClassIcon sentry_gun_lvl3_red_lite NoGlow 1 Health 1 Attributes IgnoreEnemies UseCustomModel "models/empty.mdl" ChangeAttributes { "voice pitch scale" 0 } AddCond { Name "TF_COND_STEALTHED_USER_BUFF_FADING" } AddCond { Name "TF_COND_REPROGRAMMED" } CustomWeaponModel { Slot 0 Model "models/empty.mdl" } CustomWeaponModel { Slot 1 Model "models/empty.mdl" } CustomWeaponModel { Slot 2 Model "models/empty.mdl" } FireInput { Target "!activator" Action "$TakeDamage" Param "1" Delay 1 Cooldown 1 Repeats 0 } } } WaveSpawn { Name "3a" Where spawnbot_front TotalCount 25 MaxActive 10 SpawnCount 5 WaitBeforeStarting 0 WaitBetweenSpawns 5 TotalCurrency 200 RandomSpawn 1 TFBot { Template T_TFBot_Red_Heavy ExtAttr IgnoreBuildings CharacterAttributes { "patient overheal penalty" 0 } } } WaveSpawn { Name "3a" Where spawnbot_front_behind_leftonly TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 0 TotalCurrency 0 DoneWarningSound "mvm/mvm_player_died.wav" TFBot { Template T_TFBot_Player_Scout ExtAttr IgnoreBuildings } } WaveSpawn { Name "3a" Where spawnbot_front_behind_leftonly TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 0 TotalCurrency 0 DoneWarningSound "mvm/mvm_player_died.wav" TFBot { Template T_TFBot_Player_Soldier ExtAttr IgnoreBuildings } } WaveSpawn { Name "3a" Where spawnbot_front_behind_leftonly TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 0 TotalCurrency 0 DoneWarningSound "mvm/mvm_player_died.wav" TFBot { Template T_TFBot_Player_Spy ExtAttr IgnoreBuildings } } WaveSpawn { Name "3a" Where spawnbot_front_behind_leftonly TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 0 TotalCurrency 0 DoneWarningSound "mvm/mvm_player_died.wav" TFBot { Template T_TFBot_Player_Demoman ExtAttr IgnoreBuildings } } WaveSpawn { Name "3a" Where spawnbot_front_behind_leftonly TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 0 TotalCurrency 0 DoneWarningSound "mvm/mvm_player_died.wav" TFBot { Template T_TFBot_Player_Medic ExtAttr IgnoreBuildings } } WaveSpawn { Name "3a" Where spawnbot_front_behind_leftonly TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 0 TotalCurrency 0 DoneWarningSound "mvm/mvm_player_died.wav" TFBot { Template T_TFBot_Player_Pyro ExtAttr IgnoreBuildings } } WaveSpawn // Dummy { WaitForAllDead "3a" TotalCount 0 SpawnCount 0 WaitBeforeStarting 0 FirstSpawnOutput { Target disablebarrier1 Action Trigger } } WaveSpawn { Name "3b" WaitForAllSpawned "3a" Where spawnbot_front_behind Where spawnbot_front_behind_leftonly TotalCount 6 MaxActive 6 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 4 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Giant_Scout_Pistol AddTemplate RedBotGiant } TFBot { Template T_TFBot_Red_Medic_Kritz } } } WaveSpawn { Name "3b" WaitForAllDead "3a" Where spawnbot_front_behind_leftonly TotalCount 2 MaxActive 2 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 12 TotalCurrency 100 TFBot { Name "Giant Steel Gauntlet Pusher" Class Heavyweapons ClassIcon heavy_steelfist_giant Health 5000 Attributes MiniBoss Skill Expert MaxVisionRange 500 WeaponRestrictions MeleeOnly Tag bot_giant DesiredAttackRange 85 Item "Fists of Steel" Item "The Carl" ItemAttributes { ItemName "Fists of Steel" "damage causes airblast" 1 "damage bonus" 1.5 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "override footstep sound set" 2 } AddTemplate RedBotGiant } } WaveSpawn // Dummy { WaitForAllSpawned "3b" TotalCount 0 SpawnCount 0 WaitBeforeStarting 0 FirstSpawnWarningSound "npc/turret_floor/die.wav" FirstSpawnOutput { Target disablebarrier2 Action Trigger } } WaveSpawn { Name "3c" WaitForAllSpawned "3b" Where spawnbot_front_behind_leftonly TotalCount 16 MaxActive 16 SpawnCount 8 WaitBeforeStarting 5 WaitBetweenSpawns 12 TotalCurrency 100 Squad { TFBot { Name "Giant Pyroshark" Class Pyro ClassIcon pyro_neon_red Health 3300 Attributes MiniBoss Skill Expert MaxVisionRange 500 WeaponRestrictions MeleeOnly Tag bot_giant DesiredAttackRange 85 Item "The Neon Annhilator" Item "The Cranial Carcharodon" ItemAttributes { ItemName "The Neon Annhilator" "mult dmg vs giants" 3 "melee cleave attack" 1 } CharacterAttributes { "move speed bonus" 0.7 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "override footstep sound set" 6 } AddTemplate RedBotGiant } TFBot { Template T_TFBot_Scout_Milk Skill Expert AddTemplate RedBotFollow } TFBot { Template T_TFBot_Scout_Milk Skill Expert AddTemplate RedBotFollow } TFBot { Template T_TFBot_Scout_Milk Skill Expert AddTemplate RedBotFollow } TFBot { Template T_TFBot_Scout_Milk Skill Expert AddTemplate RedBotFollow } TFBot { Template T_TFBot_Scout_Milk Skill Expert AddTemplate RedBotFollow } TFBot { Template T_TFBot_Scout_Milk Skill Expert AddTemplate RedBotFollow } TFBot { Template T_TFBot_Scout_Milk Skill Expert AddTemplate RedBotFollow } } } WaveSpawn { Name "3c" WaitForAllSpawned "3b" Where spawnbot_pissdick TotalCount 2 MaxActive 2 SpawnCount 1 WaitBeforeStarting 5 WaitBetweenSpawns 10 TotalCurrency 100 TFBot { Name "Giant Crit-on-Kill Heavy" Class Heavyweapons ClassIcon heavy_booster Health 5000 Attributes MiniBoss Skill Expert MaxVisionRange 1200 Tag bot_giant DesiredAttackRange 80 Item "Upgradeable TF_WEAPON_MINIGUN" Item "The Killing Gloves of Boxing" Item "The Tungsten Toque" ItemAttributes { ItemName "Upgradeable TF_WEAPON_MINIGUN" "damage bonus" 1.5 "critboost on kill" 10 } ItemAttributes { ItemName "The Tungsten Toque" "set item tint rgb" 65535 } ItemAttributes { ItemName "The Killing Gloves of Boxing" "provide on active" 1 "damage bonus" 2 "critboost on kill" 15 "move speed bonus" 2 "melee cleave attack" 1 "gesture speed increase" 1.5 "mult dmg vs giants" 3 "no_jump" 1 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "override footstep sound set" 5 } WeaponSwitch { Delay 0 Cooldown 1 Repeats 1 Type "Primary" } WeaponSwitch { Delay 0 Cooldown 1 Repeats 1 Type "Melee" IfHealthBelow 2500 } AddTemplate RedBotGiant } } WaveSpawn // Tank # HP { Name "redtank" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 200 FirstSpawnOutput { Target hatchcover* Action Disable } Tank { Name "tankbossred" StartingPathTrackNode "tankhatch_1" Health 25000 Speed 0 Skin 0 TeamNum 2 ClassIcon tank_sticky_red Model "models/bots/boss_bot/boss_tankred.mdl" PingSound "common/null.wav" DisableSmokeStack 1 SpawnTemplate SuperSentry SpawnTemplate StickyTank OnKilledOutput { Target unblockhatch Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name "infinite" WaitForAllSpawned "3c" Where "" Where spawnbot_red TotalCount 999 MaxActive 22 SpawnCount 1 WaitBeforeStarting 5 WaitBetweenSpawns 1 TotalCurrency 0 Support 1 Randomspawn 1 RandomChoice { TFBot { Template T_TFBot_Beep_Man1 } TFBot { Template T_TFBot_Beep_Man2 } TFBot { Template T_TFBot_Beep_Man3 } TFBot { Template T_TFBot_Beep_Man4 } TFBot { Template T_TFBot_Beep_Man5 } } } WaveSpawn // Dummy { TotalCount 0 SpawnCount 0 WaitBeforeStarting 540 FirstSpawnOutput { Target hurryup_relay Action Trigger } } WaveSpawn { Where spawnbot TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 999999 WaitBetweenSpawns 0 TotalCurrency 0 HideIcon 1 // Hides icons from the wave bar. Should use a ClassIcon different from visible ones TFBot { Class Pyro ClassIcon scout_stun } } } }