// Mission by Space Jockey for Hexadecimal Horrors Contest (https://steamcommunity.com/id/spacejocke) // Requires rafmod extensions // // Starting Currency: 600 // // +----------+----------+----------+ // | Wave | Currency | A+ | // +----------+----------+----------+ // | Wave 1 | 900 | 1000 | // | Wave 2 | 900 | 1000 | // | Wave 3 | 950 | 1050 | // | Wave 4 | 700 | 800 | // | Wave 5 | 900 | 1000 | // | Wave 6 | 1050 | 1150 | // | Wave 7 | 1900 | 2000 | // | Wave 8 | 1984 | 2084 | // +----------+----------+----------+ // | Total | 9284 | 10084 | // +----------+----------+----------+ // // // version 2 changes: // general: huntsman requiem now damages all players connected by a medigun and does 75% more damage, reduced volume of the ak-47 sounds, added explanation texts on waves with music to type snd_restart on wave finished // w5: changed blimps path; now goes through the tunnel (reduced blimp's scale in case) // w6: giant mannpower soldiers are now regular giant banner soldiers, reduced maxactive red giants; removed giant bbox soldiers // w7: reduced maxactive red robot support // w8: made boss's firing sound quieter // version 2.5 changes: // general: moved map to heatrock #base robot_standard.pop #base robot_giant.pop #base robot_spacejockey.pop #base robot_red_modular.pop #base robot_gatebot_modular_zombie.pop tomboys_are_gay { StartingCurrency 600 CanBotsAttackWhileInSpawnRoom no RespawnWaveTime 3 AddSentryBusterWhenDamageDealtExceeds 3000 AddSentryBusterWhenKillCountExceeds 15 Advanced 1 // EventPopfile Halloween NoRomevisionCosmetics 1 // ImprovedAirblast 1 ForceHoliday 2 RobotLimit 26 FixSetCustomModelInput 1 BodyPartScaleSpeed 50 TextPrintTime 0 MedigunShieldDamage 1 // Shield medics can now harm human team SentryBusterFriendlyFire 0 // Sentry Busters will no longer harm other robots SniperAllowHeadshots 1 // Sniper bots can headshot - required for red snipers MedigunShieldDamage 1 // BotsDropSpells 1 // GiantsDropRareSpells 1 // SpellDropRateCommon 0.01 // SpellDropRateGiant 0.01 NoThrillerTaunt 1 // No thriller taunt in halloween NoCritPumpkin 1 // No crit pumpkin on player death drop in halloween BotsUsePlayerTeleporters 0 // ZombiesNoWave666 1 ForceRobotBleed 1 WaveStartCountdown 5 GrapplingHook 1 //Enables grappling hook for a mission // RemoveGrapplingHooks 1 //Grappling hooks are immediately destroyed after being fired BotHumansHaveRobotVoice 0 BotHumansHaveEyeGlow 1 NoHolidayPickups 1 DisallowUpgrade "generate rage on heal" DisallowUpgrade "rocket specialist" DisallowUpgrade "canteen specialist" DisallowUpgrade "applies snare effect" DisallowUpgrade "critboost" DisallowUpgrade "ubercharge" 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/bots/sniper_boss/bot_sniper_boss.mdl" PrecacheModel "models/bots/demo/red_sentry_buster.mdl" PrecacheModel "models/bots/skeleton_sniper/skeleton_sniper.mdl" PrecacheModel "models/bots/skeleton_sniper_boss/skeleton_sniper_boss.mdl" PrecacheModel "models/props_frontline/tank_turret.mdl" PrecacheModel "models/weapons/c_models/c_brief_negotiator/c_lmg.mdl" PrecacheModel "models/workshop/weapons/c_models/c_tokamak/c_tomislav.mdl" PrecacheModel "models/weapons/c_models/c_lawbringer/c_pistol.mdl" PrecacheModel "models/weapons/c_models/c_ak47/c_mmg.mdl" PrecacheModel "models/weapons/c_models/c_tranquilizer/c_revolver.mdl" PrecacheModel "models/weapons/c_models/c_pow/c_bow.mdl" PrecacheModel "models/weapons/w_modelsb/w_arrow.mdl" PrecacheModel "models/weapons/c_models/c_rapidfire/c_rapidfire_1.mdl" PrecacheModel "models/weapons/c_models/c_hypodermic_injector/c_hypodermic_injector.mdl" PrecacheModel "models/weapons/c_models/c_gamma_gazer/c_gamma_gazer_1.mdl" PrecacheModel "models/weapons/c_models/c_wasp_launcher/c_wasp_launcher_1.mdl" PrecacheModel "models/community/player/items/medic/scientist_head_3/scientist_head_3.mdl" PrecacheModel "models/community/player/items/medic/hippocratic_growth/hippocratic_growth.mdl" PrecacheModel "models/props_arctic/helicopter.mdl" PrecacheModel "models/props_arctic/husky.mdl" PrecacheModel "models/props_arctic/husky_bowl_food.mdl" PrecacheModel "models/props_arctic/husky_bowl_water.mdl" PrecacheModel "models/effects/cappoint_hologram2.mdl" PrecacheModel "models/props_mvm/bomb_cart_red.mdl" PrecacheSound "bombs_for_throwing_at_you.mp3" PrecacheSound "ak_shoot.wav" PrecacheSound "ak_reload.wav" PrecacheSound "lmg_shoot.wav" PrecacheSound "lmg_reload.wav" PrecacheSound "tokamak_spin.wav" PrecacheSound "tokamak_wind_up.wav" PrecacheSound "tokamak_wind_down.wav" PrecacheSound "tokamak_shoot.wav" PrecacheSound "mvm/blimp_start.wav" PrecacheSound "rpg_sounds/rpg_explode.wav" PrecacheSound "rpg_sounds/rocketfire1.wav" OverrideSounds { "MVM.BombWarning" "ambient/alarms/doomsday_lift_alarm.wav" "MVM.GiantHeavyExplodes" "npc/env_headcrabcanister/explosion.wav" "MVM.GiantCommonExplodes" "npc/env_headcrabcanister/explosion.wav" "music.mvm_lost_wave" "ui/halloween_boss_defeated.wav" } // ClassLimit // { // Scout 1 // Soldier 1 // Pyro 1 // Demoman 1 // Heavyweapons 0 // Engineer 1 // Medic 1 // Sniper 1 // Spy 0 // } PointTemplates { Bomb_Replacement { NoFixup 1 logic_auto { "OnMapSpawn" "intel_new_trigger,Trigger,,0,-1" "OnMapSpawn" "wave_start_relay,AddOutput,OnTrigger intel:Kill:0:-1" "OnMapSpawn" "wave_finished_relay,AddOutput,OnTrigger intel_new_trigger:Trigger:0:-1" } logic_relay { "targetname" "intel_new_trigger" "OnTrigger" "intel_new,Enable,,0,-1" "OnTrigger" "intel,Kill,,0,-1" "OnTrigger" "powercore_prop,Enable,,0,-1" "OnTrigger" "powercore_prop,SetParent,intel_new,0.1,-1" } logic_relay { "targetname" "intel_new_disable" "OnTrigger" "intel_new,Disable,,0,-1" "OnTrigger" "powercore_prop,Disable,,0,-1" } item_teamflag { "origin" "-2336 5424 134.672" "trail_effect" "1" "TeamNum" "3" "targetname" "intel_new" "StartDisabled" "1" "skin" "0" "ScoringType" "0" "ReturnTime" "60000000" "ReturnBetweenWaves" "1" "rendercolor" "255 255 255" "renderamt" "255" "physdamagescale" "1.0" "NeutralType" "1" "MinAnimTime" "5" "MaxAnimTime" "10" "GameType" "1" "flag_trail" "flagtrail" "flag_paper" "player_intel_papertrail" "flag_model" "models/empty.mdl" "flag_icon" "../hud/objectives_flagpanel_carried" "angles" "0 180 0" } prop_dynamic { "origin" "-2336 5424 134.672" "targetname" "powercore_prop" "spawnflags" "0" "solid" "0" "skin" "1" "rendercolor" "255 255 255" "renderamt" "255" "RandomAnimation" "0" "pressuredelay" "0" "physdamagescale" "1.0" "PerformanceMode" "0" "modelscale" "1.0" "model" "models/props_moonbase/powersupply_flag.mdl" "MinAnimTime" "5" "MaxAnimTime" "10" "body" "0" "angles" "-90 0 -90" "StartDisabled" "1" } } BombFix // fixes weird clipping { NoFixup 1 func_flagdetectionzone { "targetname" "bombfixer" "origin" "577 -677 376" "mins" "-352 -205 -44" "maxs" "352 205 44" "alarm" "0" "StartDisabled" "0" "TeamNum" "3" "OnDroppedFlag" "bomb_relocate,Teleport,,0,-1" } point_teleport { "targetname" "bomb_relocate" "target" "intel_new" "angles" "0 0 0" "spawnflags" "0" "origin" "387 -743 397" } } CarpetBomber { NoFixup 1 OnSpawnOutput { Target "!activator" Action Color Param "102 2 60" } prop_dynamic { "targetname" "turretmodel" "angles" "0 0 270" "DisableBoneFollowers" "0" "disablereceiveshadows" "1" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "model" "models/props_frontline/tank_turret.mdl" "modelscale" "0.5" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "255" "rendercolor" "175 0 60" "renderfx" "0" "rendermode" "0" "SetBodyGroup" "0" "skin" "2" "solid" "0" "spawnflags" "0" "origin" "37 -37 88" } prop_dynamic { "targetname" "turretmodel" "angles" "0 0 90" "DisableBoneFollowers" "0" "disablereceiveshadows" "1" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "model" "models/props_frontline/tank_turret.mdl" "modelscale" "0.5" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "255" "rendercolor" "175 0 60" "renderfx" "0" "rendermode" "0" "SetBodyGroup" "0" "skin" "2" "solid" "0" "spawnflags" "0" "origin" "37 37 88" } tf_glow { "target" "turretmodel" "glowcolor" "175 215 255 210" } tf_point_weapon_mimic { "angles" "0 0 0" "Crits" "0" "Damage" "50" "modelscale" "1" "SpeedMax" "1000" "SpeedMin" "1000" "SplashRadius" "75" "SpreadAngle" "25" "targetname" "grenadeshoot" "WeaponType" "1" "teamnum" "3" "modeloverride" "models/workshop/weapons/c_models/c_quadball/w_quadball_grenade.mdl" "origin" "145 -36 88" } tf_point_weapon_mimic { "angles" "0 0 0" "Crits" "0" "Damage" "50" "modelscale" "1" "SpeedMax" "1000" "SpeedMin" "1000" "SplashRadius" "75" "SpreadAngle" "25" "targetname" "grenadeshoot" "WeaponType" "1" "teamnum" "3" "modeloverride" "models/workshop/weapons/c_models/c_quadball/w_quadball_grenade.mdl" "origin" "145 36 88" } ambient_generic { "targetname" "grenadeshoot_sound" "origin" "-40 -44 57" "volstart" "0" "message" "Weapon_TackyGrenadier.Single" "pitch" "100" "pitchstart" "100" "radius" "5000" "spawnflags" "48" } ambient_generic { "targetname" "grenadeshoot_sound" "origin" "-50 39 55" "volstart" "0" "message" "Weapon_TackyGrenadier.Single" "pitch" "100" "pitchstart" "100" "radius" "5000" "spawnflags" "48" } logic_relay { "targetname" "grenade_fire_relay" "OnTrigger" "grenadeshoot,FireOnce,,0,-1" "OnTrigger" "grenadeshoot_sound,PlaySound,,0,-1" "OnTrigger" "grenadeshoot,FireOnce,,0.1,-1" "OnTrigger" "grenadeshoot_sound,PlaySound,,0.1,-1" "OnTrigger" "grenadeshoot,FireOnce,,0.2,-1" "OnTrigger" "grenadeshoot_sound,PlaySound,,0.2,-1" "OnTrigger" "grenadeshoot,FireOnce,,0.3,-1" "OnTrigger" "grenadeshoot_sound,PlaySound,,0.3,-1" "OnTrigger" "grenadeshoot,FireOnce,,0.4,-1" "OnTrigger" "grenadeshoot_sound,PlaySound,,0.4,-1" "OnTrigger" "grenadeshoot,FireMultiple,4,0.5,-1" "OnTrigger" "grenadeshoot_sound,PlaySound,,0.5,-1" "OnTrigger" "grenadeshoot,FireOnce,,0.6,-1" "OnTrigger" "grenadeshoot_sound,PlaySound,,0.6,-1" "OnTrigger" "grenadeshoot,FireOnce,,0.7,-1" "OnTrigger" "grenadeshoot_sound,PlaySound,,0.7,-1" "OnTrigger" "grenadeshoot,FireOnce,,0.8,-1" "OnTrigger" "grenadeshoot_sound,PlaySound,,0.8,-1" "OnTrigger" "grenadeshoot,FireOnce,,0.9,-1" "OnTrigger" "grenadeshoot_sound,PlaySound,,0.9,-1" "OnTrigger" "grenadeshoot,FireMultiple,4,1,-1" "OnTrigger" "grenadeshoot_sound,PlaySound,,1,-1" } logic_timer { "targetname" "grenade_fire_timer" "RefireTime" "10" "spawnflags" "0" "OnTimer" "grenade_fire_relay,Trigger,,0,-1" } } GeneraLogic { NoFixup 1 trigger_teleport { "targetname" "spawntele" "target" "teleporter_exit" "origin" "494 -2703 620" "mins" "-42 -42 -70" "maxs" "42 42 70" "spawnflags" "1" "StartDisabled" "0" "OnStartTouch" "teleported1,PlaySound,,0,-1" "OnStartTouch" "!activator,$PlaySoundToSelf,misc/halloween/spell_teleport.wav,0,-1" "OnStartTouch" "tp2_exit_fx,Stop,,0.2,-1" "OnStartTouch" "tp2_exit_fx,Start,,0,-1" } trigger_teleport { "targetname" "spawntele_during_round" "target" "teleporter_exit_during_round" "origin" "494 -2703 620" "mins" "-42 -42 -70" "maxs" "42 42 70" "spawnflags" "1" "StartDisabled" "0" "OnStartTouch" "teleported1,PlaySound,,0,-1" "OnStartTouch" "!activator,$PlaySoundToSelf,misc/halloween/spell_teleport.wav,0,-1" "OnStartTouch" "tp2_exit_fx,Stop,,0.2,-1" "OnStartTouch" "tp2_exit_fx,Start,,0,-1" } trigger_teleport { "targetname" "spawntele" "target" "respawnpoints" "origin" "-1067 3327 379" "mins" "-42 -42 -70" "maxs" "42 42 70" "spawnflags" "1" "StartDisabled" "0" "OnStartTouch" "teleported1,PlaySound,,0,-1" "OnStartTouch" "!activator,$PlaySoundToSelf,misc/halloween/spell_teleport.wav,0,-1" "OnStartTouch" "tp2_exit_fx,Start,,0,-1" "OnStartTouch" "tp2_exit_fx,Stop,,0.5,-1" } info_target { "targetname" "teleporter_exit" "origin" "947 4374 378" "angles" "0 180 0" } info_target { "targetname" "teleporter_exit_during_round" "origin" "291 -2488 545" "angles" "0 180 0" } info_particle_system { "targetname" "teleporter_particle" "effect_name" "eyeboss_tp_vortex" "flag_as_weather" "0" "start_active" "1" "origin" "492.361 -2702.78 595" "angles" "0 0 0" } info_particle_system { "targetname" "teleporter_particle_during_round" "effect_name" "eyeboss_tp_vortex" "flag_as_weather" "0" "start_active" "1" "origin" "492.361 -2702.78 595" "angles" "0 0 0" } info_particle_system { "targetname" "teleporter_particle" "effect_name" "eyeboss_tp_vortex" "flag_as_weather" "0" "start_active" "1" "origin" "-1067 3327 379" "angles" "0 0 0" } info_particle_system { "targetname" "tp2_exit_fx" "effect_name" "eyeboss_tp_vortex" "flag_as_weather" "0" "start_active" "0" "origin" "947 4374 425" } info_particle_system { "targetname" "tp2_exit_fx" "effect_name" "eyeboss_tp_vortex" "flag_as_weather" "0" "start_active" "0" "origin" "704 -3008 595" } ambient_generic { "targetname" "tele_idlesound" "health" "10" "message" "misc/halloween/merasmus_float.wav" "pitch" "150" "pitchstart" "100" "radius" "1200" "spawnflags" "16" "origin" "492.361 -2702.78 635" } ambient_generic { "targetname" "teleported1" "health" "10" "message" "misc/halloween/spell_teleport.wav" "pitch" "150" "pitchstart" "100" "radius" "213" "spawnflags" "16" "origin" "704 3264 357" } logic_relay { "targetname" "spawntele_start" "OnTrigger" "teleporter_particle,Start,,0,-1" "OnTrigger" "spawntele,Enable,,0,-1" "OnTrigger" "spawntele_during_round,Disable,,0,-1" "OnTrigger" "tele_idlesound,PlaySound,,0,-1" } logic_relay { "targetname" "spawntele_end" "OnTrigger" "spawntele,Disable,,0,-1" "OnTrigger" "spawntele_during_round,Enable,,0,-1" "OnTrigger" "teleporter_particle,Stop,,0,-1" "OnTrigger" "tele_idlesound,StopSound,,0,-1" } logic_auto { "OnMapSpawn" "wave_start_relay,AddOutput,OnTrigger spawntele_end:Trigger::0:-1,0,-1" "OnMapSpawn" "wave_start_relay,AddOutput,OnTrigger spawnpoint_relay:Trigger::0:-1,0,-1" "OnMapSpawn" "wave_start_relay,AddOutput,OnTrigger case_soldier:InValue:2:0:-1,0,-1" "OnMapSpawn" "wave_finished_relay,AddOutput,OnTrigger spawnpoint_reset_relay:Trigger::0:-1,0,-1" "OnMapSpawn" "wave_finished_relay,AddOutput,OnTrigger case_soldier:InValue:1:0:-1,0,-1" "OnMapSpawn" "trigger_ignite,Disable,,0,-1" "OnMapSpawn" "shopgear1,setattached,soldierpog1,0,-1" "OnMapSpawn" "shopgear2,setattached,soldierpog2,0,-1" } filter_activator_name { "targetname" "filter_redtank" "Negated" "Allow entities that match criteria" "filtername" "tankboss_red" } filter_activator_name { "targetname" "filter_redblimp" "Negated" "Allow entities that match criteria" "filtername" "blimp_red" } logic_relay { "targetname" "boss_hurt_relay" "OnTrigger" "tankboss_red,RemoveHealth,500000,0,-1" "OnTrigger" "bosshurt,Enable,,0,-1" "OnTrigger" "bosshurt,Disable,,0.1,-1" } logic_relay { "targetname" "blimp_hurt_relay" "OnTrigger" "blimp_red,RemoveHealth,500000,0,-1" "OnTrigger" "bosshurt,Enable,,0,-1" "OnTrigger" "bosshurt,Disable,,0.1,-1" } filter_damage_type { "targetname" "filter_nocrush" "Negated" "1" "damagetype" "1" } logic_case { "targetname" "case_soldier" "OnCase01" "soldierpog,SetDefaultAnimation,competitive_loserstate_idle,0,-1" "OnCase02" "soldierpog,SetDefaultAnimation,stand_loser,0,-1" } tf_point_nav_interface { "targetname" "nav_refresh" } logic_relay { "targetname" "powerup_logic_relay" "OnTrigger" "@p@powerup_haver_target*,$RemoveCond,93,0.1,-1" "OnTrigger" "@p@powerup_haver_target*,$RemoveCond,90,0.1,-1" "OnTrigger" "@p@powerup_haver_target*,$RemoveCond,103,0.1,-1" "OnTrigger" "@p@powerup_haver_target*,$RemoveCond,109,0.1,-1" "OnTrigger" "@p@powerup_bystander_target*,$RemoveCond,93,0.1,-1" "OnTrigger" "@p@powerup_bystander_target*,$RemoveCond,90,0.1,-1" "OnTrigger" "@p@powerup_bystander_target*,$RemoveCond,103,0.1,-1" "OnTrigger" "@p@powerup_bystander_target*,$RemoveCond,109,0.1,-1" "OnTrigger" "@p@powerup_haver_target*,$RemoveCond,91,0.1,-1" } env_viewpunch { "punchangle" "0 -90 0" "radius" "9999" "spawnflags" "3" "targetname" "punch" "origin" "1184 512 388" } } MiscEntities { NoFixup 1 training_annotation { "targetname" "blimp_hint" "display_text" "Blimp incoming!" "lifetime" "10" "origin" "1531 5967 803" } training_annotation { "targetname" "skeleton_hint" "display_text" "Watch out for skeletons!" "lifetime" "10" "origin" "1432 88 76" } trigger_multiple { "targetname" "spawn_trigger" "filtername" "filter_breadcrab" "origin" "0 2120 395" "mins" "-500 -500 -500" "maxs" "500 500 500" "spawnflags" "64" "solid" "2" "OnStartTouch" "filter_breadcrab,TestActivator,,0,-1" } logic_case { "targetname" "attack_sentries" "OnCase01" "player,$ChangeAttributes,AttackSentry,0,-1" } logic_timer { "targetname" "mannpower_kill" "RefireTime" "0.01" "spawnflags" "0" "UseRandomTime" "0" "OnTimer" "item_powerup_rune,Kill,,0,-1" } } Spawnpoints { NoFixup 1 info_player_teamspawn { "targetname" "spawnbot_breadcrab" "StartDisabled" "1" "spawnflags" "511" "TeamNum" "3" "origin" "-1585.20 133.32 340.03" } } BreadcrabSpawner { KeepAlive 1 OnParentKilledOutput { Target "breadcrab_teleport_maker" Action ForceSpawnAtEntityOrigin Param "breadcrabcanister" Delay 0.00 } OnParentKilledOutput { Target "breadcrab_death_relay" Action Trigger Delay 0.01 } OnParentKilledOutput { Target "breadcrabcanister" Action Kill Delay 0.02 } prop_dynamic { "targetname" "breadcrabcanister" "model" "models/weapons/c_models/c_breadmonster/c_breadmonster.mdl" "modelscale" "1.5" "spawnflags" "0" "solid" "0" "DisableBoneFollowers" "1" "disablereceiveshadows" "1" "disableshadows" "1" "angles" "0 0 0" } } BreadcrabTeleportLogic { NoFixup 1 filter_tf_bot_has_tag { "targetname" "filter_breadcrab" "Negated" "0" "require_all_tags" "1" "tags" "breadcrab" "OnPass" "breadcrab_teleport,Teleport,,0,-1" } logic_relay { "targetname" "breadcrab_death_relay" "OnTrigger" "spawnbot_breadcrab,Enable,,0.01,-1" "OnTrigger" "spawnbot_breadcrab,Disable,,0.01,-1" "OnTrigger" "breadcrab_teleport,Kill,,0.1,-1" } env_entity_maker { "targetname" "breadcrab_teleport_maker" "EntityTemplate" "breadcrab_teleport_template" } } breadcrab_teleport_template { NoFixup 1 KeepAlive 1 point_teleport { "targetname" "breadcrab_teleport" "target" "!activator" "origin" "0 0 32" } } Potion_Cooldown { NoFixup 1 OnSpawnOutput { Target "cooldown_handler" Action "SetCompareValue" Param "0" Delay 0 } OnSpawnOutput { Target "cooldown_handler" Action "SetValueCompare" Param "0" Delay 0 } OnSpawnOutput { Target "cooldown" Action "FireUser1" Delay 0.1 } math_counter { "targetname" "cooldown" "startvalue" "0" "min" "0" "max" "90" "OnGetValue" "cooldown_formatter,$FormatInput1,,0,-1" "OnGetValue" "cooldown_formatter,$Format,,0.1,-1" "OnGetValue" "cooldown_handler,SetValueCompare,,0.1,-1" "OnUser1" "cooldown,Subtract,1,0,-1" "OnUser1" "cooldown,GetValue,,0,-1" "OnUser1" "cooldown,FireUser1,,1,-1" "OnUser2" "cooldown,GetValue,,0,-1" } logic_compare { "targetname" "cooldown_handler" "OnNotEqualTo" "drink_checker,Disable,,0,-1" "OnNotEqualTo" "potioncase,Disable,,0,-1" "OnEqualTo" "drink_checker,Enable,,0,-1" "OnEqualTo" "potioncase,Enable,,0,-1" } } DemoPotion { NoFixup 1 OnSpawnOutput { Target "cooldown_formatter" Action "$Format" Delay 0.1 } OnSpawnOutput { Target "cooldown_requester" Action "FireUser1" Delay 0 } logic_relay //"ping" the cooldown every second to get the current timer { "targetname" "cooldown_requester" "OnUser1" "cooldown,FireUser2,,0,-1" "OnUser1" "!self,FireUser1,,1,-1" } logic_case { "targetname" "cooldown_formatter" "case16" "message Cooldown %" "case01" "69" "OnDefault" "cooldown_indicator,AddOutput,,0,-1" "OnDefault" "cooldown_indicator,Display,,0.1,-1" } game_text { "targetname" "cooldown_indicator" "message" "among us" "x" "-1" "y" "0.77" "color" "255 255 255" "fadein" "0" "holdtime" "999999" } filter_tf_condition { "targetname" "filter_is_taunting" "Negated" "0" "condition" "7" // "OnPass" "!activator,$RemoveCond,7,0,-1" "OnPass" "potion_roll_relay,Trigger,,0,-1" } logic_case { "targetname" "potioncase" "OnCase01" "potion_positive,PickRandom,,0,-1" "OnCase02" "potion_negative,PickRandom,,0,-1" } logic_case { "targetname" "potion_positive" "OnCase01" "!activator,$AddCond,73,0,-1" "OnCase01" "!activator,$RemoveCond,73,20,-1" "OnCase01" "!activator,$DisplayTextCenter,Effect: Healing,0,-1" "OnCase02" "!activator,$AddCond,90,0,-1" "OnCase02" "!activator,$RemoveCond,90,20,-1" "OnCase02" "!activator,$DisplayTextCenter,Effect: Strength,0,-1" "OnCase03" "!activator,$AddCond,32,0,-1" "OnCase03" "!activator,$RemoveCond,32,20,-1" "OnCase03" "!activator,$DisplayTextCenter,Effect: Speed,0,-1" "OnCase04" "!activator,$AddCond,93,0,-1" "OnCase04" "!activator,$RemoveCond,93,20,-1" "OnCase04" "!activator,$DisplayTextCenter,Effect: Resistance,0,-1" "OnCase05" "!activator,$AddCond,66,0,-1" "OnCase05" "!activator,$RemoveCond,66,20,-1" "OnCase05" "!activator,$DisplayTextCenter,Effect: Invisibility,0,-1" "OnCase06" "!activator,$AddCond,94,0,-1" "OnCase06" "!activator,$RemoveCond,94,20,-1" "OnCase06" "!activator,$DisplayTextCenter,Effect: Vampire,0,-1" "OnCase07" "!activator,$AddCond,19,0,-1" "OnCase07" "!activator,$RemoveCond,19,20,-1" "OnCase07" "!activator,$DisplayTextCenter,Effect: Energy Buff,0,-1" "OnCase08" "!activator,$AddCond,95,0,-1" "OnCase08" "!activator,$RemoveCond,95,20,-1" "OnCase08" "!activator,$DisplayTextCenter,Effect: Reflect,0,-1" } logic_case { "targetname" "potion_negative" "OnCase01" "!activator,$AddCond,24,0,-1" "OnCase01" "!activator,$RemoveCond,24,20,-1" "OnCase01" "!activator,$DisplayTextCenter,Effect: Jarate,0,-1" "OnCase02" "!activator,$AddCond,123,0,-1" "OnCase02" "!activator,$RemoveCond,123,20,-1" "OnCase02" "!activator,$DisplayTextCenter,Effect: Gas,0,-1" "OnCase03" "!activator,$AddCond,84,0,-1" "OnCase03" "!activator,$RemoveCond,84,20,-1" "OnCase03" "!activator,$DisplayTextCenter,Effect: Big Head,0,-1" "OnCase06" "!activator,$AddCond,41,0,-1" "OnCase06" "!activator,$RemoveCond,41,20,-1" "OnCase06" "!activator,$DisplayTextCenter,Effect: Melee Only,0,-1" "OnCase07" "!activator,$AddPlayerAttribute,move speed penalty|0.3,0,-1" "OnCase07" "!activator,$RemovePlayerAttribute,move speed penalty,20,-1" "OnCase07" "!activator,$SwitchClassInPlace,demoman,20,-1" "OnCase07" "!activator,$DisplayTextCenter,Effect: Snail,0,-1" "OnCase09" "!activator,$AddCond,25,0,-1" "OnCase09" "!activator,$RemoveCond,25,15,-1" "OnCase09" "!activator,$DisplayTextCenter,Effect: Bleeding,0,-1" "OnCase10" "!player,SetHUDVisibility,0,0,-1" "OnCase10" "!player,SetHUDVisibility,1,10,-1" "OnCase10" "!activator,$DisplayTextCenter,Effect: Blindness,0,-1" } trigger_multiple { "targetname" "drink_checker" "mins" "-1 -1 -1" "maxs" "1 1 1" "StartDisabled" "1" "spawnflags" "1" "OnTrigger" "filter_is_taunting,TestActivator,!activator,0,-1" } logic_relay { "targetname" "potion_roll_relay" "OnTrigger" "potioncase,PickRandom,,0,-1" "OnTrigger" "potioncase,Disable,,0,-1" "OnTrigger" "drink_checker,Disable,,0,-1" "OnTrigger" "filter_is_taunting,Disable,,0,-1" "OnTrigger" "cooldown,SetValue,90,0.1,-1" "OnTrigger" "cooldown,FireUser2,,0.1,-1" } } // UNUSED // SentryGiant // { // OnSpawnOutput // { // Target disprobot_disp // Action AddOutput // Param "SolidToPlayer 0" // Delay 0.00 // } // OnSpawnOutput // { // Target disprobot_disp // Action FireUser1 // Delay 0.00 // } // OnSpawnOutput // { // Target buildcounter // Action SetValue // Param "15" // Delay 0.00 // } // obj_dispenser // { // "origin" "-58 -0.41089 0" // "angles" "0 90 0" // "defaultupgrade" "2" // "targetname" "disprobot_disp" // "TeamNum" "3" // "OnDestroyed" "buildcounter,Subtract,1,0,1" // } // obj_dispenser // { // "origin" "-58 -0.41089 55" // "angles" "0 90 0" // "defaultupgrade" "2" // "targetname" "disprobot_disp" // "TeamNum" "3" // "OnDestroyed" "buildcounter,Subtract,1,0,1" // } // obj_dispenser // { // "origin" "-63.6396 -0.41089 111.723" // "angles" "0 90 45" // "defaultupgrade" "2" // "targetname" "disprobot_disp" // "TeamNum" "3" // "OnDestroyed" "buildcounter,Subtract,1,0,1" // } // obj_dispenser // { // "origin" "-14 -0.410888 142" // "angles" "0 90 0" // "defaultupgrade" "2" // "targetname" "disprobot_disp" // "TeamNum" "3" // "OnDestroyed" "buildcounter,Subtract,1,0,1" // } // obj_dispenser // { // "origin" "35.3162 -0.410886 111.684" // "angles" "0 90 -45" // "defaultupgrade" "2" // "targetname" "disprobot_disp" // "TeamNum" "3" // "OnDestroyed" "buildcounter,Subtract,1,0,1" // } // obj_dispenser // { // "origin" "36 -0.410886 54" // "angles" "0 90 0" // "defaultupgrade" "2" // "targetname" "disprobot_disp" // "TeamNum" "3" // "OnDestroyed" "buildcounter,Subtract,1,0,1" // } // obj_dispenser // { // "origin" "36 -0.410886 1" // "angles" "0 90 0" // "defaultupgrade" "2" // "targetname" "disprobot_disp" // "TeamNum" "3" // "OnDestroyed" "buildcounter,Subtract,1,0,1" // } // obj_dispenser // { // "origin" "-14 -0.410888 193" // "angles" "0 90 0" // "defaultupgrade" "2" // "targetname" "disprobot_disp" // "TeamNum" "3" // "OnDestroyed" "buildcounter,Subtract,1,0,1" // } // obj_dispenser // { // "origin" "-29 -0.410889 236" // "angles" "0 90 -90" // "defaultupgrade" "2" // "targetname" "disprobot_disp" // "TeamNum" "3" // "OnDestroyed" "buildcounter,Subtract,1,0,1" // } // obj_dispenser // { // "origin" "-77 -0.410891 236" // "angles" "0 90 -90" // "defaultupgrade" "2" // "targetname" "disprobot_disp" // "TeamNum" "3" // "OnDestroyed" "buildcounter,Subtract,1,0,1" // } // obj_dispenser // { // "origin" "-1.99999 -0.410888 236" // "angles" "0 90 90" // "defaultupgrade" "2" // "targetname" "disprobot_disp" // "TeamNum" "3" // "OnDestroyed" "buildcounter,Subtract,1,0,1" // } // obj_dispenser // { // "origin" "53 -0.410886 236" // "angles" "0 90 90" // "defaultupgrade" "2" // "targetname" "disprobot_disp" // "TeamNum" "3" // "OnDestroyed" "buildcounter,Subtract,1,0,1" // } // obj_teleporter // { // "origin" "-58 -22 0" // "angles" "0 90 0" // "targetname" "disprobot_disp" // "TeamNum" "3" // "TeleportWhere" "spawnbot" // "solid" "0" // "OnUser2" "!self,RemoveHealth,99999,0,-1" // "OnDestroyed" "disprobot_disp,FireUser2,,0,-1" // "OnUser1" "!self,AddOutput,solid 0,0,-1" // } // obj_teleporter // { // "origin" "36 -19 0" // "angles" "0 90 0" // "targetname" "disprobot_disp" // "TeamNum" "3" // "TeleportWhere" "spawnbot" // "solid" "0" // "OnUser2" "!self,RemoveHealth,99999,0,-1" // "OnDestroyed" "disprobot_disp,FireUser2,,0,-1" // "OnUser1" "!self,AddOutput,solid 0,0,-1" // } // obj_sentrygun // { // "origin" "-187 -0.410893 225" // "angles" "0 270 -90" // "defaultupgrade" "1" // "targetname" "disprobot_disp" // "TeamNum" "3" // "spawnflags" "8" // "OnDestroyed" "buildcounter,Subtract,1,0,1" // "OnUser1" "!self,SetHealth,500,0,-1" // } // obj_sentrygun // { // "origin" "162 2.99999 240" // "angles" "0 270 90" // "defaultupgrade" "1" // "targetname" "disprobot_disp" // "TeamNum" "3" // "spawnflags" "8" // "OnDestroyed" "buildcounter,Subtract,1,0,1" // "OnUser1" "!self,SetHealth,500,0,-1" // } // obj_sentrygun // { // "origin" "-11 2 224" // "angles" "0 270 0" // "defaultupgrade" "2" // "targetname" "disprobot_disp" // "TeamNum" "3" // "modelscale" "1.25" // "spawnflags" "8" // "OnDestroyed" "buildcounter,Subtract,1,0,1" // "OnUser1" "!self,SetHealth,500,0,-1" // } // math_counter // { // "targetname" "buildcounter" // "min" "0" // "max" "15" // "startvalue" "15" // "OnHitMin" "!parent,SetHealth,-99999,0,-1" // "OnHitMin" "!parent,SetHealth,-99999,1,-1" // "OnHitMin" "!parent,SetHealth,-99999,10,-1" // "OnHitMin" "!parent,SetHealth,-99999,30,-1" // "OnHitMin" "!parent,SetHealth,-99999,60,-1" // } // dispenser_touch_trigger // { // "targetname" "touch" // "StartDisabled" "0" // "spawnflags" "1" // "solid" "1" // "origin" "-5.5 -10.35 226.5" // "mins" "-254 -142 -230" // "maxs" "254 142 230" // } // mapobj_cart_dispenser // { // "targetname" "disprobot_radius" // "spawnflags" "14" // "TeamNum" "3" // "touch_trigger" "touch" // "origin" "0 -23 64" // } // } DeflectorEasterEgg { OnSpawnOutput { Target "apply_deflector_attributes" Action Trigger Delay 0.01 } logic_relay { "targetname" "apply_deflector_attributes" "OnTrigger" "!activator,SetCustomModel,models/bots/heavy/bot_heavy.mdl,0.11,-1" "OnTrigger" "!activator,$AddItemAttribute,attack projectiles|2|0,0.11,-1" // "OnTrigger" "!activator,$AddPlayerAttribute,override footstep sound set|5,0.11,-1" } } Liberty_Global { NoFixup 1 math_counter { "targetname" "liberty_berserk_points_to_add" "startvalue" "0" "min" "0" "max" "0" "OutValue" "berserkpoints_grabber,$GetKeyValueFromActivator,spawnflags,0,-1" "OutValue" "liberty_berserk_updater,Add,,0.01,-1" "OutValue" "liberty_berserk_updater,SetValueNoFire,0,0,-1" } math_counter { "targetname" "liberty_berserk_updater" "startvalue" "0" "min" "0" "max" "3000" //damage requirement //"OutValue" "red_player,$DisplayTextCenter,,0,-1" "OutValue" "liberty_berserkpoints_apply,$FormatInput1,,0,-1" } logic_case { "targetname" "liberty_berserkpoints_apply" "case16" "spawnflags %" "case01" "0" //"ondefault" "red_player,$DisplayTextCenter,,0,-1" "ondefault" "!activator,AddOutput,,0,-1" "ondefault" "!self,$FormatInputNoFire1,0,0,-1" } logic_case { "targetname" "berserkpoints_grabber" //"ondefault" "red_player,$DisplayTextCenter,,0,-1" "ondefault" "liberty_berserk_updater,SetValue,,0,-1" } } airstrike_rework // shout out to the king of pointtemplates himself, royal { OnSpawnOutput { Target "!activator" Action "$AddItemAttribute" Param "fire input on hit|liberty_berserk_points_to_add^SetValue^|0"//"fire input on hit|red_player^$DisplayTextCenter^|0" Delay 0.1 } OnSpawnOutput { Target "!activator" Action "AddOutput" Param "spawnflags 0" Delay 0.1 } OnSpawnOutput { Target "berserkpoints_checker" Action "Trigger" Delay 0.1 } OnSpawnOutput { Target "beserk_meter_formatter" Action "$FormatInput1" Param "0" Delay 0 } OnParentKilledOutput { Target "!activator" Action "AddOutput" Param "spawnflags 0" Delay 0 } filter_tf_condition { "targetname" "beserk_filter_is_taunting" "Negated" "0" "condition" "7" "OnPass" "!activator,AddOutput,spawnflags 0,0,-1" "OnPass" "berserkpoints_storer,SetValue,0,0,-1" "OnPass" "berserkpoints_storer,GetValue,,0.1,-1" "OnPass" "is_berserk_ready,SetValueTest,0,0,-1" //"OnPass" "berserkpoints_checker,Trigger,,0.01,-1" "OnPass" "!activator,$RemoveItemAttribute,fire input on hit|0,0,-1" "OnPass" "!activator,$RemoveCond,7,0,-1" "OnPass" "!activator,$AddCond,46,0,-1" "OnPass" "!activator,$AddItemAttribute,fire rate bonus hidden|0.1|0,0,-1" "OnPass" "!activator,$AddItemAttribute,reload time increased hidden|0.3|0,0,-1" "OnPass" "!activator,$AddItemAttribute,ammo regen|1|0,0,-1" "OnPass" "!activator,$AddItemAttribute,fire input on hit|liberty_berserk_points_to_add^SetValue^|0,10,-1" "OnPass" "!activator,$RemoveItemAttribute,fire rate bonus hidden|0,12,-1" "OnPass" "!activator,$RemoveItemAttribute,reload time increased hidden|0,12,-1" "OnPass" "!activator,$RemoveItemAttribute,ammo regen|0,12,-1" "OnPass" "!activator,$RemoveCond,46,12,-1" } logic_branch { "targetname" "is_berserk_ready" "InitialValue" "0" "OnFalse" "beserk_start_checker,Disable,,0,-1" "OnTrue" "beserk_start_checker,Enable,,0,-1" "OnTrue" "beserk_start_checker,Trigger,,0.1,-1" //"OnTrue" "berserk_ready_text,Display,,0,-1" "OnTrue" "!activator,$DisplayTextCenter,Berserk is ready. Taunt to activate,0,-1" } logic_relay { "targetname" "beserk_start_checker" "spawnflags" "2" "StartDisabled" "1" "OnTrigger" "!self,Trigger,,0.1,-1" "OnTrigger" "beserk_filter_is_taunting,TestActivator,!activator,0,-1" } logic_case { "targetname" "beserk_meter_formatter" "case16" "message Beserk %/3000" ///damage requirement (visual only) "case01" "69" "ondefault" "berserk_meter,AddOutput,,0,-1" "ondefault" "berserk_meter,Display,,0.01,-1" } math_counter { "targetname" "berserkpoints_storer" "startvalue" "0" "min" "0" "max" "3000" //damage requirement //"OnHitMax" "player,$DisplayTextCenter,full,0,-1" "OnHitMax" "is_berserk_ready,SetValueTest,1,0,-1" "OnGetValue" "beserk_meter_formatter,$FormatInput1,,0,-1" } game_text { "origin" "1984 1984 99999" "targetname" "berserk_meter" "message" "unassigned" "x" "-1" "y" "0.77" "color" "255 255 255" "fadein" "0" "holdtime" "999999" } game_text { "origin" "1984 1984 99999" "targetname" "berserk_ready_text" "message" "Berserk is ready! Taunt to activate" "x" "-1" "y" "0.3" "channel" "1" "color" "255 255 255" "fadein" "0" "holdtime" "3" } logic_relay { "targetname" "berserkpoints_checker" "spawnflags" "2" "OnTrigger" "!self,Trigger,,0.1,-1" "OnTrigger" "berserkpoints_grabber_local,$GetKeyValueFromActivator,spawnflags,0,-1" } logic_case { "targetname" "berserkpoints_grabber_local" //"ondefault" "red_player,$DisplayTextCenter,,0,-1" "ondefault" "berserkpoints_storer,SetValue,,0,-1" "ondefault" "berserkpoints_storer,GetValue,,0.01,-1" } } Caber_Rework { OnSpawnOutput { Target "caber_taunt_checker" Action "Trigger" Delay 0.1 } OnSpawnOutput { Target "common_damage" Action "$SetOwner" Param "!activator" Delay 0 } OnSpawnOutput { Target "giant_damage" Action "$SetOwner" Param "!activator" Delay 0 } OnSpawnOutput { Target "!activator" Action "$AddCond" Param "41" Delay 0 } OnSpawnOutput { Target "!activator" Action "$AddCond" Param "85" Delay 0 } OnSpawnOutput { Target "!activator" Action "$RemoveCond" Param "85" Delay 0.01 } OnSpawnOutput { Target "apply_buster_attributes" Action "Trigger" Delay 0.01 } OnParentKilledOutput { Target "!activator" Action "SetCustomModel" Param "" Delay 0 } OnParentKilledOutput { Target "!activator" Action "AddOutput" Param "modelscale 1" Delay 0 } OnParentKilledOutput { Target "!activator" Action "SetForcedTauntCam" Param "0" Delay 0 } OnParentKilledOutput { Target "!activator" Action "$RemoveCond" Param "41" Delay 0 } logic_relay { "targetname" "apply_buster_attributes" "OnTrigger" "!activator,AddOutput,modelscale 1.75,0.11,-1" "OnTrigger" "!activator,SetCustomModel,models/bots/demo/red_sentry_buster.mdl,0.11,-1" "OnTrigger" "!activator,SetForcedTauntCam,1,0.11,-1" "OnTrigger" "!activator,$AddItemAttribute,max health additive bonus|825|2,0.11,-1" "OnTrigger" "!activator,sethealth,1000,0.3,-1" "OnTrigger" "!activator,$AddItemAttribute,no_attack|1|2,0.11,-1" "OnTrigger" "!activator,$AddPlayerAttribute,move speed penalty|2|2,0,-1" "OnTrigger" "!activator,$AddItemAttribute,damage force reduction|0.5|2,0.11,-1" "OnTrigger" "!activator,$AddItemAttribute,always allow taunt|0.5|2,0.11,-1" "OnTrigger" "!activator,$AddItemAttribute,override footstep sound set|7|2,0.11,-1" "OnTrigger" "!activator,$AddItemAttribute,cannot be backstabbed|1|2,0.11,-1" } ////////////////////// // // Filters // ///////////////////// filter_tf_class //fixes switching class after taunting and get a demoman model on other classes (lol) { "targetname" "filter_still_demoman" "Negated" "0" "tfclass" "4" "OnPass" "!activator,SetCustomModel,,0,-1" "OnPass" "!activator,$RemoveCond,7,0,-1" "OnPass" "!activator,$RemoveCond,41,0,-1" "OnPass" "!activator,SetForcedTauntCam,0,0,-1" "OnPass" "!activator,$AddCond,57,0,-1" "OnPass" "!activator,$AddCond,32,0,-1" "OnPass" "!activator,$RemoveCond,57,2,-1" "OnPass" "!activator,$RemoveCond,32,2,-1" "OnPass" "common_damage,FireUser1,,0,-1" "OnPass" "giant_damage,FireUser1,,0,-1" "OnPass" "!activator,AddOutput,modelscale 1,0,-1" //"OnPass" "!activator,$RemoveItemAttribute,not solid to players|2,0,-1" "OnPass" "!activator,$RemoveItemAttribute,no_attack|2,0,-1" "OnPass" "!activator,$RemoveItemAttribute,max health additive bonus|2,0,-1" "OnPass" "!activator,sethealth,201,0,-1" "OnPass" "!activator,$RemovePlayerAttribute,move speed penalty,0,-1" "OnPass" "!activator,$RemoveItemAttribute,damage force reduction|2,0,-1" "OnPass" "!activator,$RemoveItemAttribute,always allow taunt|2,0,-1" "OnPass" "!activator,$RemoveItemAttribute,model scale|2,0,-1" "OnPass" "!activator,$RemoveItemAttribute,override footstep sound set|2,0,-1" "OnPass" "!activator,$RemoveItemAttribute,cannot be backstabbed|2,0,-1" } filter_tf_condition { "targetname" "filter_is_taunting" "Negated" "0" "condition" "7" "OnPass" "caber_taunt_checker,Disable,,0,-1" "OnPass" "!self,Disable,,5,-1" "OnPass" "!activator,$AddPlayerAttribute,move speed penalty|0.001,0,-1" //prevent loserboys from using a cancelable taunt and escape the animation "OnPass" "!activator,$PlaySoundToSelf,mvm/sentrybuster/mvm_sentrybuster_spin.wav,0,-1" "OnPass" "filter_still_demoman,TestActivator,,2,-1" "OnPass" "!activator,$PlaySoundToSelf,mvm/sentrybuster/mvm_sentrybuster_explode.wav,2,-1" } filter_activator_tfteam { "targetname" "filter_blueteam" "Negated" "0" "TeamNum" "3" "OnUser1" "!self,Kill,,2.1,-1" } filter_multi { "targetname" "filter_caber_common" "Negated" "0" "FilterType" "0" "Filter01" "filter_blueteam" // is blue, is not a giant "Filter02" "filter_giant_exclude" "Filter03" "filter_tank_exclude" } filter_tf_bot_has_tag { "targetname" "filter_giant_include" "Negated" "0" "require_all_tags" "1" "tags" "bot_giant" } filter_tf_bot_has_tag { "targetname" "filter_giant_exclude" "Negated" "1" "require_all_tags" "1" "tags" "bot_giant" } filter_activator_class { "targetname" "filter_tank_include" "filterclass" "tank_boss" "Negated" "0" } filter_activator_class { "targetname" "filter_tank_exclude" "filterclass" "tank_boss" "Negated" "1" } filter_multi { "targetname" "filter_caber_giant" "Negated" "0" "FilterType" "0" "Filter01" "filter_blueteam" // is blue, is a giant "Filter02" "filter_giant_include" "Filter03" "filter_tank_include" } trigger_hurt { "targetname" "common_damage" "origin" "0 0 0" "mins" "-500 -500 -500" "maxs" "500 500 500" "Damage" "99999" "damagetype" "262240" "spawnflags" "64" "filtername" "filter_caber_common" "choices" "64" //blast damage type "StartDisabled" "1" "OnUser1" "!self,Enable,,0,-1" "OnUser1" "!self,Disable,,0.1,-1" } trigger_hurt { "targetname" "giant_damage" "origin" "0 0 0" "mins" "-500 -500 -500" "maxs" "500 500 500" "Damage" "1200" //damage is half of this "damagetype" "262240" "spawnflags" "1" "filtername" "filter_caber_giant" "choices" "64" //blast damage type "StartDisabled" "1" "OnUser1" "!self,Enable,,0,-1" "OnUser1" "!self,Disable,,0.1,-1" } logic_relay { "targetname" "caber_taunt_checker" "spawnflags" "2" "OnTrigger" "caber_taunt_checker,Trigger,,0.1,-1" "OnTrigger" "filter_is_taunting,TestActivator,!activator,0,-1" } } Buster_Upgrade_Station { NoFixup 1 func_upgradestation { "origin" "968 -2628 568" "mins" "-240 -48 -191" "maxs" "240 48 191" } func_upgradestation { "origin" "444 -3144 568" "mins" "-48 -200 -159" "maxs" "48 200 159" } } // ModelFixScout // { // OnSpawnOutput // { // Target "!activator" // Action "$SetModelOverride" // Param "models/player/scout.mdl" // Delay 0.1 // } // } // ModelFixSoldier // { // OnSpawnOutput // { // Target "!activator" // Action "$SetModelOverride" // Param "models/player/soldier.mdl" // Delay 0.1 // } // } // ModelFixPyro // { // OnSpawnOutput // { // Target "!activator" // Action "$SetModelOverride" // Param "models/player/pyro.mdl" // Delay 0.1 // } // } // ModelFixDemo // { // OnSpawnOutput // { // Target "!activator" // Action "$SetModelOverride" // Param "models/player/demo.mdl" // Delay 0.1 // } // } // ModelFixHeavy // { // OnSpawnOutput // { // Target "!activator" // Action "$SetModelOverride" // Param "models/player/heavy.mdl" // Delay 0.1 // } // } // ModelFixEngie // { // OnSpawnOutput // { // Target "!activator" // Action "$SetModelOverride" // Param "models/player/engineer.mdl" // Delay 0.1 // } // } // ModelFixMedic // { // OnSpawnOutput // { // Target "!activator" // Action "$SetModelOverride" // Param "models/player/medic.mdl" // Delay 0.1 // } // } // ModelFixSniper // { // OnSpawnOutput // { // Target "!activator" // Action "$SetModelOverride" // Param "models/player/sniper.mdl" // Delay 0.1 // } // } // ModelFixSpy // { // OnSpawnOutput // { // Target "!activator" // Action "$SetModelOverride" // Param "models/player/spy.mdl" // Delay 0.1 // } // } // ModelFixScout // { // OnSpawnOutput // { // Target "!activator" // Action "$SetModelOverride" // Param "models/player/spy.mdl" // Delay 0.1 // } // } RegenArea { NoFixup 1 filter_tf_bot_has_tag //optional { "targetname" "filter_regen_tag" "Negated" "0" "require_all_tags" "1" "tags" "regen" } trigger_multiple { "targetname" "regen_zone" "origin" "1432 88 76" //replace with your origin "mins" "-232 -280 -12" "maxs" "232 280 12" "spawnflags" "1" "StartDisabled" "0" "filtername" "filter_regen_tag" //optional "OnStartTouch" "!activator,$AddPlayerAttribute,health regen|100,0,-1" "OnEndTouch" "!activator,$RemovePlayerAttribute,health regen,0,-1" } } RamielModel { NoFixUp 1 // OnSpawnOutput // { // Target "!activator" // Action "SetCustomModel" // Param "" // Delay 0.00 // } OnSpawnOutput { Target "!activator" Action SetDamageFilter Param "filter_nocrush" Delay 0.00 } prop_dynamic { "targetname" "ramiel_model" "angles" "0 0 0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "MinAnimTime" "5" "model" "models/weapons/w_models/w_drg_ball.mdl" "modelscale" "25" "renderamt" "200" "rendercolor" "10 63 224" "renderfx" "0" "rendermode" "1" "skin" "0" "solid" "0" "origin" "0 0 650" "disableshadows" "1" } tf_glow { "GlowColor" "3 132 190 255" "Mode" "0" "target" "ramiel_model" } info_teleport_destination { "targetname" "boss_target" "origin" "0 0 300" } } ConchSound { OnSpawnOutput { Target "!activator" Action "$PlaySound" Param "items/samurai/tf_conch.wav" Delay 0.00 } } killtarget { NoFixup 1 info_target { "targetname" "kill_me" "origin" "0 0 50" } } killtarget2 { NoFixup 1 info_target { "targetname" "kill_me2" "origin" "0 0 50" } } InvisRework // special thanks to royal { NoFixup 1 filter_tf_condition { "targetname" "filter_is_cloaked" "Negated" "0" "condition" "4" "OnPass" "!activator,$AddCond,107,0,-1" "OnFail" "!activator,$RemoveCond,107,0,-1" } trigger_multiple { "targetname" "cloak_checker" "mins" "-1 -1 -1" "maxs" "1 1 1" "spawnflags" "1" "OnTrigger" "filter_is_cloaked,TestActivator,!activator,0.1,-1" } } BuffMarkForDeath { NoFixup 1 filter_tf_condition { "targetname" "filter_is_critboosted" "Negated" "0" "condition" "33" "OnPass" "!activator,$AddCond,30,0,-1" "OnFail" "!activator,$RemoveCond,30,0,-1" } trigger_multiple { "targetname" "mark_checker" "mins" "-75 -75 -75" "maxs" "75 75 75" "spawnflags" "1" "OnTrigger" "filter_is_critboosted,TestActivator,!activator,0.1,-1" } } SoleemnVowRework { NoFixup 1 OnSpawnOutput { Target "!activator" Action "$AddPlayerAttribute" Param "heal rate bonus|2" Delay 0.1 } OnParentKilledOutput { Target "!activator" Action "$ForceRespawnDead" Delay 0.0 } OnParentKilledOutput { Target "!activator" Action "$RemovePlayerAttribute" Param "heal rate bonus" Delay 0.1 } } nocrush { OnSpawnOutput { Target "!activator" Action SetDamageFilter Param "filter_nocrush" Delay 0.00 } } powerup_logic { OnSpawnOutput { Target "powerup_haver_target" Action SetParent Param "!activator" Delay 0.01 } OnParentKilledOutput { Target "item_powerup_rune" Action Kill Delay 0 } info_target { "targetname" "powerup_haver_target" } } powerup_logic_medic { OnParentKilledOutput { Target "item_powerup_rune" Action Kill Delay 0 } OnParentKilledOutput { Target "powerup_logic_relay" Action Trigger Delay 0.001 } } powerup_logic_bystander { OnSpawnOutput { Target "powerup_bystander_target" Action SetParent Param "!activator" Delay 0.01 } OnSpawnOutput { Target "powerup_bystander_timer" Action Enable Delay 0.01 } OnParentKilledOutput { Target "item_powerup_rune" Action Kill Delay 0 } info_target { "targetname" "powerup_bystander_target" } } powerup_timer { NoFixup 1 logic_timer { "targetname" "powerup_bystander_timer" "RefireTime" "1" "spawnflags" "0" "StartDisabled" "1" "UseRandomTime" "0" "OnTimer" "@p@powerup_bystander_target*,$RemoveCond,93,0.01,-1" "OnTimer" "@p@powerup_bystander_target*,$RemoveCond,90,0.01,-1" "OnTimer" "@p@powerup_bystander_target*,$RemoveCond,103,0.01,-1" "OnTimer" "@p@powerup_bystander_target*,$RemoveCond,109,0.01,-1" } } TitanSpawnShake { NoFixup 1 env_shake { "spawnflags" "1" "amplitude" "16" "duration" "6" "frequency" "9" "targetname" "shake_effect_titan" } } EngyBattleCry { NoFixup 1 logic_case { "targetname" "choose_battle_cry" "OnCase01" "!activator,$PlaySound,=85|vo/engineer_meleedare01.mp3,0,-1" "OnCase02" "!activator,$PlaySound,=85|vo/engineer_meleedare02.mp3,0,-1" "OnCase03" "!activator,$PlaySound,=85|vo/engineer_battlecry01.mp3,0,-1" "OnCase04" "!activator,$PlaySound,=85|vo/engineer_battlecry06.mp3,0,-1" "OnCase05" "!activator,$PlaySound,=85|vo/engineer_battlecry07.mp3,0,-1" "OnCase06" "!activator,$PlaySound,=85|vo/engineer_taunts08.mp3,0,-1" "OnCase07" "!activator,$PlaySound,=85|vo/engineer_taunts10.mp3,0,-1" } } TankFire { NoFixup 1 logic_relay { "targetname" "tankfire_start_relay" "OnTrigger" "fire_ring,SetParent,tankboss_fire,0.05,-1" "OnTrigger" "fire_hurt,SetParent,tankboss_fire,0.05,-1" "OnTrigger" "fire_timer,SetParent,tankboss_fire,0.05,-1" "OnTrigger" "tankdragon_sound,SetParent,tankboss_fire,0.05,-1" "OnTrigger" "fire_timer,Enable,,0,-1" "OnTrigger" "fire_hurt,Enable,,0,-1" } logic_timer { "targetname" "fire_timer" "RefireTime" "0.5" "spawnflags" "0" "UseRandomTime" "0" "StartDisabled" "1" "OnTimer" "fire_ring,Start,,0,-1" "OnTimer" "fire_ring,Stop,,0.1,-1" "OnTimer" "fire_hurt,Enable,,0,-1" "OnTimer" "fire_hurt,Disable,,0.1,-1" "OnTimer" "tankdragon_sound,PlaySound,,0.1,-1" } info_particle_system { "targetname" "fire_ring" "effect_name" "heavy_ring_of_fire" "flag_as_weather" "0" "start_active" "0" "origin" "640 5504 384" //Same origin as where the tank spawns, if its too high reduce the Z coordinate (usually 56 below the path node's origin is good) } trigger_ignite { "targetname" "fire_hurt" "filtername" "tankfire_filter" "burn_duration" "8" "damage_percent_per_second" "72" "origin" "640 5504 384" //Same deal "spawnflags" "1" "StartDisabled" "1" "mins" "-155 -155 -24" "maxs" "155 155 48" } filter_activator_tfteam { "targetname" "tankfire_filter" "TeamNum" "2" "Negated" "0" } ambient_generic { "targetname" "tankdragon_sound" "health" "10" "message" "weapons/dragon_gun_motor_start.wav" "pitch" "100" "pitchstart" "100" "radius" "5000" "spawnflags" "16" "origin" "640 5504 328" } } TankBloodRed { OnSpawnOutput { Target "!activator" Action Color Param "102 2 60" } } TankDragon { OnSpawnOutput { Target "!activator" Action Color Param "75 4 17" } prop_dynamic { "targetname" "tank_head" "angles" "0 0 0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "MinAnimTime" "5" "disableshadows" "1" "model" "models/player/items/pyro/pyro_pyromancers_mask.mdl" "modelscale" "3.5" "renderamt" "255" "rendercolor" "255 255 255" "skin" "0" "solid" "0" "origin" "38 5 82" } prop_dynamic { "targetname" "tank_tail" "angles" "36.2642 163.86 64.4188" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "MinAnimTime" "5" "disableshadows" "1" "model" "models/workshop/player/items/pyro/hw2013_dragonbutt/hw2013_dragonbutt.mdl" "modelscale" "5" "renderamt" "255" "rendercolor" "255 255 255" "skin" "0" "solid" "0" "origin" "-212.477 56.4416 -45.2774" } } kill_tank { NoFixup 1 OnParentKilledOutput { Target "tank_boss" Action "removehealth" Param 100000 } } idiot { NoFixup 1 prop_dynamic { "targetname" "soldierpog1" "angles" "0 180 0" "DefaultAnim" "competitive_loserstate_idle" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "MinAnimTime" "5" "disableshadows" "1" "DisableBoneFollowers" "1" "model" "models/player/soldier.mdl" "modelscale" "1.0" "renderamt" "255" "rendercolor" "255 255 255" "skin" "0" "solid" "0" "SetBodyGroup" "2" "origin" "1024 -2716 513" } prop_dynamic { "targetname" "soldierpog2" "angles" "0 105 0" "DefaultAnim" "competitive_loserstate_idle" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "MinAnimTime" "5" "disableshadows" "1" "DisableBoneFollowers" "1" "model" "models/player/soldier.mdl" "modelscale" "1.0" "renderamt" "255" "rendercolor" "255 255 255" "skin" "0" "solid" "0" "SetBodyGroup" "2" "origin" "360.315 -3207.02 513" } prop_dynamic_ornament { "targetname" "shopgear1" "classname" "prop_dynamic_ornament" "DisableBoneFollowers" "1" "disableshadows" "1" "solid" "0" "spawnflags" "256" "modelscale" "1.0" "SetBodyGroup" "1" "initialowner" "soldierpog1" "model" "models/player/items/all_class/saxton_hat_soldier.mdl" } prop_dynamic_ornament { "targetname" "shopgear2" "classname" "prop_dynamic_ornament" "DisableBoneFollowers" "1" "disableshadows" "1" "solid" "0" "spawnflags" "256" "modelscale" "1.0" "SetBodyGroup" "1" "initialowner" "soldierpog2" "model" "models/player/items/all_class/saxton_hat_soldier.mdl" } prop_dynamic_ornament { "targetname" "shopgear1" "classname" "prop_dynamic_ornament" "DisableBoneFollowers" "1" "disableshadows" "1" "solid" "0" "spawnflags" "256" "initialowner" "soldierpog1" "model" "models/workshop/player/items/soldier/xms2013_soldier_parka/xms2013_soldier_parka.mdl" } prop_dynamic_ornament { "targetname" "shopgear2" "classname" "prop_dynamic_ornament" "DisableBoneFollowers" "1" "disableshadows" "1" "solid" "0" "spawnflags" "256" "initialowner" "soldierpog2" "model" "models/workshop/player/items/soldier/xms2013_soldier_parka/xms2013_soldier_parka.mdl" } prop_dynamic_ornament { "targetname" "shopgear1" "classname" "prop_dynamic_ornament" "DisableBoneFollowers" "1" "disableshadows" "1" "solid" "0" "spawnflags" "256" "initialowner" "soldierpog1" "model" "models/player/items/soldier/professor_speks.mdl" } prop_dynamic_ornament { "targetname" "shopgear2" "classname" "prop_dynamic_ornament" "DisableBoneFollowers" "1" "disableshadows" "1" "solid" "0" "spawnflags" "256" "initialowner" "soldierpog2" "model" "models/player/items/soldier/professor_speks.mdl" } } blimpteleporter { NoFixup 1 trigger_teleport { "targetname" "blimp_teleport" "origin" "1672 3424 1126.5" "mins" "-245 -205 -209.5" "maxs" "245 205 209.5" "spawnflags" "64" "StartDisabled" "0" "filtername" "filter_tank" "target" "blimp_target" } info_target { "targetname" "blimp_target" "origin" "1448 1975 1017" } filter_activator_class { "targetname" "filter_tank" "filterclass" "tank_boss" "Negated" "Allow entities that match criteria" } } controlpoint { NoFixup 1 prop_dynamic { "model" "models/props_gameplay/cap_point_base.mdl" "targetname" "cap_base" "solid" "6" "skin" "0" //set this number to 0 for neutral, 1 for red, 2 for blu } trigger_capture_area { "classname" "trigger_capture_area" "area_cap_point" "cap_point" "area_time_to_cap" "60" //multiply this number by 2 to get the capture duration in seconds, raising "team_numcap_3" and "team_numcap_2" will also increase the time taken by a factor of the value (e.g. raising it to 2 will multiply the duration by 2) "StartDisabled" "0" "filtername" "filter_can_cap" "targetname" "cap_area" "team_cancap_2" "1" //setting this number to 0 disables red team from recapturing, 1 enables red team to recapture "team_cancap_3" "1" //1 enables blu team to cap "team_numcap_2" "1" //changing this number will change the number of red players required to stand on the point to finish capturing "team_numcap_3" "1" //changing this number will change the number of blu players required to stand on the point to finish capturing "team_spawn_2" "0" "team_spawn_3" "0" "team_startcap_2" "1" //changing this number will change the number of red players required to stand on the point to begin capturing "team_startcap_3" "1" //changing this number will change the number of blu players required to stand on the point to begin capturing "mins" "-128 -128 -128" "maxs" "128 128 128" "origin" "0 0 128" "spawnflags" "1" "OnCapTeam1" "cap_base,Skin,1,0,-1" //set the first number to 0 for neutral, 1 for red, 2 for blu "OnCapTeam1" "red_capped_point,Trigger,,0,-1" "OnCapTeam2" "cap_base,Skin,2,0,-1" //set the first number to 0 for neutral, 1 for red, 2 for blu //"OnCapTeam2" "bots_win,RoundWin,,0,-1" "OnCapTeam2" "blu_capped_relay,Trigger,,0,-1" ////////////////////////////////////////////editable outputs//////////////////////////////////////////// OnStartTeam1,OnBreakTeam1,OnCapTeam1,OnStartTeam2,OnBreakTeam2.OnCapTeam2,OnStartCap,OnBreakCap,OnEndCap,OnNumCappersChanged,OnNumCappersChanged2 //add your outputs here using "OnCapTeam2" for blu team capture, or "OnCapTeam1" for red team capture } team_control_point { "classname" "team_control_point" "angles" "0 0 0" "point_default_owner" "0" //this is the team that the control point will spawn in, set this number to 0 for neutral, 2 for red, 3 for blu "point_group" "0" "point_index" "0" //if you plan on having multiple control points at once, you must give each one a unique "point_index", spawning more than 8 control points on the map will crash the server "point_printname" "The Helipad" //this is the name of the control point that will show up in the kill feed "point_start_locked" "0" "point_warn_on_cap" "0" "point_warn_sound" "ControlPoint.CaptureWarn" "random_owner_on_restart" "0" "spawnflags" "4" "targetname" "cap_point" "team_bodygroup_0" "3" "team_bodygroup_2" "1" "team_bodygroup_3" "1" "team_icon_0" "sprites/obj_icons/icon_obj_neutral" //this is the image shown on the hud icon "team_icon_2" "sprites/obj_icons/icon_obj_red" "team_icon_3" "sprites/obj_icons/icon_obj_blu" "team_model_0" "models/effects/cappoint_hologram2.mdl" //this is the model of the hologram that appears above the control point "team_model_2" "models/effects/cappoint_hologram2.mdl" "team_model_3" "models/effects/cappoint_hologram2.mdl" "team_previouspoint_3_0" "cap_point" "team_previouspoint_2_0" "cap_point" //if you want to create a sequence of control points similar to an attack/defense map, this keyvalue determines the order in which they can be captured //it represents the names of the previous control points that must be owned by blu team before this point can be unlocked, if this is the first control point on the map, it must refer to itself or else it will be locked //"team_previouspoint_3_1" "0" //"team_previouspoint_3_2" "0" //"team_previouspoint_2_0" "cap_point" //this allows red to recapture if "team_cancap_2" is set to 1 in the trigger_capture_area //"team_previouspoint_2_1" "0" //"team_previouspoint_2_2" "0" "team_timedpoints_2" "0" "team_timedpoints_3" "0" "origin" "0 0 4" } team_control_point_master { "classname" "team_control_point_master" "cpm_restrict_team_cap_win" "1" //this makes it so the wave does not end when all the points are owned by a team, set this to 0 for neither team (this will end the wave on capture), 1 to restrict both teams, 2 to restrict red team winning, and 3 to restrict blu team winning "custom_position_x" "0.4" //you can change the number here to move the control points on the hud if something is blocking it, accepted values are from 0 to 1 and is expressed as a percentage of the screen from left to right, 0.5 or "-1" will center the hud "custom_position_y" "-1" "partial_cap_points_rate" "0" //this gives points on the scoreboard for partially capturing a point, it has nothing to do with the rate at which the control point is captured "play_all_rounds" "0" "score_style" "0" "StartDisabled" "0" "switch_teams" "0" "caplayout" "0, 1" "targetname" "cap_master" "team_base_icon_2" "sprites/obj_icons/icon_base_red" "team_base_icon_3" "sprites/obj_icons/icon_base_blu" } OnSpawnOutput //very important to keep this output otherwise the control point will not function { Target cap_area Action SetControlPoint Param cap_point } OnSpawnOutput //i believe this output is optional but it is kept here for debugging purposes, if you do not restrict a team from winning and the control point spawned owned by red or blu, it will automatically end the wave so make sure you set the restriction { Target cap_master Action RoundSpawn } OnSpawnOutput { Target intel_new_disable Action Trigger Delay 0.1 } } Chopper { Nofixup 1 prop_dynamic { "classname" "prop_dynamic" "angles" "0 90 0" "DefaultAnim" "idle" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "MinAnimTime" "5" "model" "models/props_arctic/helicopter.mdl" "modelscale" "1" "parentname" "heli_mover" "renderamt" "255" "rendercolor" "255 255 255" "skin" "0" "solid" "6" "targetname" "helicopter" "origin" "-850.991 1126 353" } func_tracktrain { "classname" "func_tracktrain" "bank" "0" "disablereceiveshadows" "1" "disableshadows" "1" "dmg" "0" "height" "1" "ManualAccelSpeed" "0" "ManualDecelSpeed" "0" "ManualSpeedChanges" "0" "MoveSoundMaxPitch" "200" "MoveSoundMaxTime" "0" "MoveSoundMinPitch" "60" "MoveSoundMinTime" "0" "orientationtype" "1" "origin" "-874 1081 427.5" "mins" "-5 -5 -5" "maxs" "5 5 5" "renderamt" "255" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "0" "spawnflags" "536" "speed" "0" "solid" "0" "startspeed" "200" "target" "heli_path_1" "targetname" "heli_mover" "velocitytype" "0" "volume" "0" "wheels" "50" } path_track { "classname" "path_track" "angles" "0 0 0" "orientationtype" "1" "radius" "0" "speed" "200" "target" "heli_path_2" "targetname" "heli_path_1" "origin" "-874 1081 427.5" } path_track { "classname" "path_track" "angles" "0 0 0" "orientationtype" "1" "radius" "0" "speed" "200" "targetname" "heli_path_2" "target" "heli_path_3" "origin" "-874 1081 712" } path_track { "classname" "path_track" "angles" "0 0 0" "orientationtype" "1" "radius" "0" "speed" "200" "targetname" "heli_path_3" "origin" "-874 1081 1582" "OnPass" "helicopter,Kill,,0,-1" "OnPass" "heli_mover,Kill,,0,-1" } } Wave5Logic { NoFixup 1 OnSpawnOutput { Target pop_interface Action ChangeBotAttributes Param "Default" Delay 0.1 } OnSpawnOutput { Target pop_interface Action ChangeDefaultEventAttributes Param "Default" Delay 0.1 } OnSpawnOutput { Target nav_refresh Action RecomputeBlockers Delay 2 } OnSpawnOutput { Target bombpath_right_relay Action Trigger } point_populator_interface { "targetname" "pop_interface" } tf_point_nav_interface { "targetname" "nav_refresh" } trigger_add_tf_player_condition { "classname" "trigger_add_tf_player_condition" "condition" "71" "duration" "10" "filtername" "filter_bot_small" "origin" "414.5 1153 2333.1" "spawnflags" "1" "StartDisabled" "1" "targetname" "point_capture_stun" "mins" "-10000 -10000 -10000" "maxs" "10000 10000 10000" } trigger_add_tf_player_condition { "classname" "trigger_add_tf_player_condition" "condition" "40" "duration" "10" "filtername" "filter_bot_small" "origin" "414.5 1153 2333.1" "spawnflags" "1" "StartDisabled" "1" "targetname" "bot_booster" "mins" "-10000 -10000 -10000" "maxs" "10000 10000 10000" } func_nav_prefer { "targetname" "nav_prefer_gate1_flank" "team" "3" "start_disabled" "0" "tags" "nav_prefer_gate1_flank" "mins" "-480 -480 -48" "maxs" "480 480 48" "origin" "-549 1401 313" } func_nav_prerequisite { "targetname" "controlpoint_prereq" "team" "3" "start_disabled" "0" "tags" "bot_gatebot" "mins" "-480 -480 -48" "maxs" "480 480 48" "origin" "-550 946 313" } ///////////////////// // // Filters // //////////////////// filter_multi { "targetname" "filter_bot_small" "filtertype" "0" "Negated" "0" "Filter01" "filter_blueteam" "Filter02" "filter_giant_exclude" } filter_multi { "targetname" "filter_can_cap" "filtertype" "0" "Negated" "0" "Filter01" "filter_redteam" "Filter02" "filter_gatebot" } filter_tf_bot_has_tag { "targetname" "filter_gatebot" "Negated" "0" "require_all_tags" "1" "tags" "bot_gatebot" } filter_tf_bot_has_tag { "targetname" "filter_giant_exclude" "Negated" "1" "require_all_tags" "1" "tags" "bot_giant" } filter_tf_bot_has_tag { "targetname" "filter_giant_include" "Negated" "0" "require_all_tags" "1" "tags" "bot_giant" } filter_tf_bot_has_tag { "targetname" "filter_vip" "Negated" "0" "require_all_tags" "1" "tags" "bot_vip" } filter_activator_tfteam { "targetname" "filter_blueteam" "Negated" "0" "TeamNum" "3" } //////////////////////// // // Capture relay // /////////////////////// logic_relay { "targetname" "blu_capped_relay" "OnTrigger" "pop_interface,PauseBotSpawning,,0,-1" "OnTrigger" "point_capture_stun,Enable,,0,-1" "OnTrigger" "intel_new_trigger,Trigger,,0,-1" "OnTrigger" "robot_radiowaves_beep,PlaySound,,0,-1" "OnTrigger" "point_capture_stun,Disable,,0.05,-1" "OnTrigger" "pop_interface,ChangeDefaultEventAttributes,RevertGateBotsBehavior,0,-1" "OnTrigger" "pop_interface,ChangeBotAttributes,RevertGateBotsBehavior,0,-1" "OnTrigger" "nav_refresh,RecomputeBlockers,,10,-1" "OnTrigger" "pop_interface,UnpauseBotSpawning,,10,-1" "OnTrigger" "nav_refresh,RecomputeBlockers,,2,-1" "OnTrigger" "bot_booster,Enable,,10,-1" "OnTrigger" "bot_booster,Disable,,10.05,-1" "OnTrigger" "point_captured_hint,Show,,0,-1" } logic_relay { "targetname" "vip_dead_capped" "OnTrigger" "blu_capped_relay,Trigger,,0.1,-1" "OnTrigger" "cap_area,Disable,,0.2,-1" "OnTrigger" "cap_area,SetOwner,3,0,-1" "OnTrigger" "helicopter,Kill,,0,-1" "OnTrigger" "heli_mover,Kill,,0,-1" "OnTrigger" "vip_dead_hint,Show,,0,-1" } logic_relay { "targetname" "red_capped_point" "OnTrigger" "intel_new,Enable,,0,-1" "OnTrigger" "intel_new,ForceReset,,0,-1" "OnTrigger" "vip_teleport,Enable,,0,-1" "OnTrigger" "@p@vip_position*,$TeleportToEntity,vip_teleport,0,-1" "OnTrigger" "cap_area,Disable,,0.1,-1" "OnTrigger" "pop_interface,ChangeDefaultEventAttributes,RevertGateBotsBehavior,0,-1" "OnTrigger" "pop_interface,ChangeBotAttributes,RevertGateBotsBehavior,0,-1" "OnTrigger" "nav_refresh,RecomputeBlockers,,10,-1" "OnTrigger" "helicopter*,SetDefaultAnimation,spin,0,-1" "OnTrigger" "heli_mover,SetSpeed,200,0.05,-1" "OnTrigger" "capture_successful_money1,Display,,0,-1" "OnTrigger" "capture_successful_money2,Display,,0.2,-1" "OnTrigger" "player,$AddCurrency,250,0,-1" } // game_round_win // { // "targetname" "red_win" // "TeamNum" "2" // "switch_teams" "0" // "force_map_reset" "0" // "OnRoundWin" "wave_finished_relay,Trigger,,0,-1" // } /////////////////// // // Annotations // ///////////////// training_annotation { "targetname" "cp_annotation" "display_text" "Escort the vips to the helicopter!" "lifetime" "10" "origin" "-645 1173 357" } training_annotation { "targetname" "point_captured_hint" "display_text" "Retake the helipad and get them out ASAP!" "lifetime" "10" "origin" "-645 1173 357" } training_annotation { "targetname" "vip_dead_hint" "display_text" "All vips are dead! The area is now under the enemy's control." "lifetime" "10" "origin" "-645 1173 357" } game_text { "targetname" "capture_successful_money1" "message" "You have successfully escorted all vips" "x" "-1" "y" "0.2" "spawnflags" "1" "effect" "2" "channel" "2" "fxtime" "0.2" "color" "255 239 115" "fadeout" "1" "holdtime" "5" } game_text { "targetname" "capture_successful_money2" "message" "and you will recieve an extra $250 for your efforts." "x" "-1" "y" "0.2" "spawnflags" "1" "effect" "2" "channel" "2" "fxtime" "0.2" "color" "255 239 115" "fadeout" "1" "holdtime" "5" } ///////////////// // // VIP logic // ///////////////// trigger_teleport { "targetname" "vip_teleport" "filtername" "filter_vip" "origin" "-647.5 1174 401.38" "spawnflags" "1" "StartDisabled" "1" "target" "oob_area" "mins" "-128 -128 -128" "maxs" "128 128 128" } info_teleport_destination { "targetname" "oob_area" "origin" "8272 -6744 129" } //////////////// // // Ambient // /////////////// ambient_generic { "classname" "ambient_generic" "health" "10" "message" "mvm.robo_stun_lp" "pitch" "100" "pitchstart" "100" "radius" "8000" "spawnflags" "48" "targetname" "robot_radiowaves_beep" "origin" "-726 1199 492" } } props_spawnpoint { NoFixup 1 prop_dynamic { "targetname" "spawnpointprops_red" "angles" "0 0 0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "MinAnimTime" "5" "model" "models/props_mvm/robot_spawnpoint.mdl" "modelscale" "1.0" "renderamt" "255" "rendercolor" "255 255 255" "skin" "0" "solid" "0" "defaultanim" "idle" "origin" "800 -2306 513" } prop_dynamic { "targetname" "spawnpointprops_red" "angles" "0 0 0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "MinAnimTime" "5" "model" "models/props_mvm/robot_spawnpoint.mdl" "modelscale" "1.0" "renderamt" "255" "rendercolor" "255 255 255" "skin" "0" "solid" "0" "defaultanim" "idle" "origin" "39 -3010 513" } logic_relay { "targetname" "spawnpoint_relay" "OnTrigger" "spawnpointprops_red,skin,3,0,-1" } logic_relay { "targetname" "spawnpoint_reset_relay" "OnTrigger" "spawnpointprops_red,skin,0,0,-1" } } vip_position { OnSpawnOutput { Target vip_position Action SetParent Param "!activator" Delay 0.05 } info_target { "targetname" "vip_position" } } RedBotsTele { NoFixup 1 trigger_teleport { "targetname" "blimp_teleport" "origin" "755 -2889 575" "mins" "-284 -284 -32" "maxs" "284 284 32" "spawnflags" "1" "StartDisabled" "1" "filtername" "filter_dropper_blimp" "target" "blimptele_target" } trigger_teleport { "targetname" "dropin_tele1" "origin" "755 -2889 575" "mins" "-284 -284 -32" "maxs" "284 284 32" "spawnflags" "1" "StartDisabled" "1" "filtername" "filter_dropper" "target" "airdrop_destination1" } info_target { "targetname" "airdrop_destination1" "origin" "-1133 -146 1626" } trigger_teleport { "targetname" "dropin_tele2" "origin" "755 -2889 575" "mins" "-284 -284 -32" "maxs" "284 284 32" "spawnflags" "1" "StartDisabled" "1" "filtername" "filter_dropper" "target" "airdrop_destination2" } info_target { "targetname" "airdrop_destination2" "origin" "-989 1052 1626" } trigger_teleport { "targetname" "dropin_tele3" "origin" "755 -2889 575" "mins" "-284 -284 -32" "maxs" "284 284 32" "spawnflags" "1" "StartDisabled" "1" "filtername" "filter_dropper" "target" "airdrop_destination3" } info_target { "targetname" "airdrop_destination3" "origin" "573 1052 1626" } trigger_teleport { "targetname" "dropin_tele4" "origin" "755 -2889 575" "mins" "-284 -284 -32" "maxs" "284 284 32" "spawnflags" "1" "StartDisabled" "1" "filtername" "filter_dropper" "target" "airdrop_destination4" } info_target { "targetname" "airdrop_destination4" "origin" "891 116 1626" } filter_tf_bot_has_tag { "Negated" "0" "require_all_tags" "1" "tags" "bot_dropped" "targetname" "filter_dropper" } filter_tf_bot_has_tag { "Negated" "0" "require_all_tags" "1" "tags" "bot_dropped_blimp" "targetname" "filter_dropper_blimp" } logic_case { "targetname" "teleportcase" "OnCase01" "dropin_tele1,Enable,0,1,-1" "OnCase01" "dropin_tele1,Disable,0,1.1,-1" "OnCase02" "dropin_tele2,Enable,0,1,-1" "OnCase02" "dropin_tele2,Disable,0,1.1,-1" "OnCase03" "dropin_tele3,Enable,0,1,-1" "OnCase03" "dropin_tele3,Disable,0,1.1,-1" "OnCase04" "dropin_tele4,Enable,0,1,-1" "OnCase04" "dropin_tele4,Disable,0,1.1,-1" } trigger_multiple { "targetname" "airdrop_teleport_activator" "origin" "755 -2889 575" "mins" "-284 -284 -32" "maxs" "284 284 32" "spawnflags" "1" "StartDisabled" "0" "filtername" "filter_dropper" "OnTrigger" "teleportcase,PickRandomShuffle,0,0,-1" } } BossTele { NoFixup 1 trigger_teleport { "targetname" "teleport_boss" "origin" "-2044 5350.27 96" "mins" "-256 -256 -256" "maxs" "256 256 256" "spawnflags" "1" "StartDisabled" "0" "target" "boss_target" "filtername" "filter_tele" "OnStartTouch" "!activator,$PlaySound,=50|mvm/mvm_tele_deliver.wav,0,-1" "OnStartTouch" "!activator,$AddCond,57 2,0,-1" } filter_tf_bot_has_tag { "targetname" "filter_tele" "Negated" "0" "require_all_tags" "1" "tags" "bot_tele" } } playerweapon_fix { //NoFixup 1 OnSpawnOutput { Target "associate_model" Action Kill Delay 0.02 } OnSpawnOutput { Target "regenerate" Action Kill Delay 0.01 } prop_dynamic { "targetname" "associate_model" "model" "models/empty.mdl" "solid" "0" "angles" "0 0 0" "disableshadows" "1" } func_regenerate { "targetname" "regenerate" "associatedmodel" "associate_model" "TeamNum" "2" "mins" "-2 -2 -2" "maxs" "2 2 2" } } buddy { prop_dynamic { "classname" "prop_dynamic" "angles" "0 345 0" "DefaultAnim" "sleep_idle_1" "disablereceiveshadows" "1" "disableshadows" "1" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "MinAnimTime" "5" "model" "models/props_arctic/husky.mdl" "modelscale" "1.0" "renderamt" "255" "rendercolor" "255 255 255" "skin" "0" "solid" "0" "targetname" "bud" "origin" "738.489 -2235.3 524" } prop_dynamic { "classname" "prop_dynamic" "angles" "0 180 0" "disablereceiveshadows" "1" "disableshadows" "1" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "MinAnimTime" "5" "model" "models/props_arctic/husky_bowl_food.mdl" "modelscale" "0.5" "renderamt" "255" "rendercolor" "255 255 255" "skin" "0" "solid" "0" "targetname" "bowl" "origin" "681 -2216.93 515" } prop_dynamic { "classname" "prop_dynamic" "angles" "0 180 0" "disablereceiveshadows" "1" "disableshadows" "1" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "MinAnimTime" "5" "model" "models/props_arctic/husky_bowl_water.mdl" "modelscale" "0.5" "renderamt" "255" "rendercolor" "255 255 255" "skin" "0" "solid" "0" "targetname" "water" "origin" "682 -2235 515" } prop_dynamic { "classname" "prop_dynamic" "angles" "0 180 0" "disablereceiveshadows" "1" "disableshadows" "1" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "MinAnimTime" "5" "model" "models/props_mvm/sack_flat.mdl" "modelscale" "1.2" "renderamt" "255" "rendercolor" "255 255 255" "skin" "0" "solid" "0" "targetname" "sack" "origin" "741 -2236 515" } } Combo_Pyro { NoFixup 1 logic_relay { "targetname" "combo_primary_to_secondary" "spawnflags" "2" "OnTrigger" "!self,EnableRefire,,0,-1" "OnTrigger" "!activator,$RemoveItemAttribute,fire input on hit|0,0,-1" "OnTrigger" "!activator,$WeaponSwitchSlot,1,0,-1" "OnTrigger" "!activator,$AddPlayerAttribute,disable weapon switch|1,0.01,-1" "OnTrigger" "!activator,$RemovePlayerAttribute,disable weapon switch,0.6,-1" "OnTrigger" "!activator,$WeaponSwitchSlot,0,0.61,-1" "OnTrigger" "!activator,$AddItemAttribute,fire input on hit|combo_primary_to_secondary^Trigger^|0,0.62,-1" } logic_relay { "targetname" "combo_primary_to_melee" "spawnflags" "2" "OnTrigger" "!self,EnableRefire,,0,-1" "OnTrigger" "!activator,$RemoveItemAttribute,fire input on hit|0,0,-1" "OnTrigger" "!activator,$WeaponSwitchSlot,2,0,-1" "OnTrigger" "!activator,$AddPlayerAttribute,disable weapon switch|2,0.01,-1" "OnTrigger" "!activator,$RemovePlayerAttribute,disable weapon switch,0.6,-1" "OnTrigger" "!activator,$WeaponSwitchSlot,0,0.61,-1" "OnTrigger" "!activator,$AddItemAttribute,fire input on hit|combo_primary_to_melee^Trigger^|0,0.62,-1" } logic_relay { "targetname" "combo_primary_to_secondary_longhold" "spawnflags" "2" "OnTrigger" "!self,EnableRefire,,0,-1" "OnTrigger" "!activator,$RemoveItemAttribute,fire input on hit|0,0,-1" "OnTrigger" "!activator,$WeaponSwitchSlot,1,0,-1" "OnTrigger" "!activator,$AddPlayerAttribute,disable weapon switch|1,0.01,-1" "OnTrigger" "!activator,$RemovePlayerAttribute,disable weapon switch,1.5,-1" "OnTrigger" "!activator,$WeaponSwitchSlot,0,1.51,-1" "OnTrigger" "!activator,$AddItemAttribute,fire input on hit|combo_primary_to_secondary^Trigger^|0,1.52,-1" } } rpg_shoottemplate // nabbed it from jurrell cause the sound effects are cool { KeepAlive 1 OnParentKilledOutput { Target "rpg_template_aliveness" Action Kill Delay 0.1 } OnParentKilledOutput { Target "rpg_impact_sound" Action Kill Delay 0.1 } OnParentKilledOutput { Target "rpg_impact_sound" Action PlaySound Delay 0.01 } logic_relay { "targetname" "rpg_template_aliveness" } prop_dynamic { "targetname" "projectile" "DisableBoneFollowers" "1" "disableshadows" "1" "model" "models/empty.mdl" "solid" "0" "spawnflags" "0" "StartDisabled" "0" } ambient_generic //weapons/explode4.wav { "targetname" "rpg_impact_sound" "health" "5" "message" "rpg_sounds/rpg_explode.wav" "pitch" "100" "pitchstart" "100" "radius" "11000" "spawnflags" "48" "StartDisabled" "0" } RemoveIfKilled "rpg_template_aliveness" } brick_projectile { NoFixup 1 KeepAlive 1 OnSpawnOutput { Target "brick" Action "$SetOwner" Param "!activator" Delay 0.01 } tf_projectile_throwable_brick { "targetname" "brick" "origin" "0 0 0" "teamnum" "2" } } traintracks { NoFixup 1 prop_dynamic { "angles" "0 180 0" "model" "models/custom/train_bumper.mdl" "solid" "6" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "140 -1982 449" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "286.018 -1984.02 449" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "414 -1984.02 449" } prop_dynamic { "angles" "0 180 0" "model" "models/props_mining/track_arc_90degree_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "540 -1948 449" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_arc_90degree_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "540.09 -1821 449" } prop_dynamic { "angles" "0 270 15" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "293.025 -1785 432.58" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "416 -1785 449" } prop_dynamic { "angles" "0 270 15" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "184.841 -1785 403.592" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_arc_90degree_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "58.0001 -1749 386" } prop_dynamic { "angles" "0 180 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "22.0001 -1625 386" } prop_dynamic { "angles" "0 180 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "22.0001 -1561 386" } prop_dynamic { "angles" "0 180 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "22.0001 -1497 386" } prop_dynamic { "angles" "0 180 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "22.0001 -1433 386" } prop_dynamic { "angles" "0 180 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "22.0001 -1369 386" } prop_dynamic { "angles" "0 180 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "22.0001 -1305 386" } prop_dynamic { "angles" "0 180 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "22.0001 -1241 386" } prop_dynamic { "angles" "0 180 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "22.0001 -1177 386" } prop_dynamic { "angles" "0 180 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "22.0001 -1113 386" } prop_dynamic { "angles" "0 180 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "22.0001 -1049 386" } prop_dynamic { "angles" "0 180 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "22.0001 -985 386" } prop_dynamic { "angles" "0 180 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "22.0001 -921 386" } prop_dynamic { "angles" "0 180 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "22.0001 -857 386" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_arc_90degree_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-14 -729 386" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-141 -693 386" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-173 -693 386" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-205 -693 386" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-237 -693 386" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-269 -693 386" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-301 -693 386" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-333 -693 386" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-365 -693 386" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-397 -693 386" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-429 -693 386" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-461 -693 386" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-493 -693 386" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-525 -693 386" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-557 -693 386" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-589 -693 386" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-621 -693 386" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-653 -693 386" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-685 -693 386" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-717 -693 386" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-749 -693 386" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-781 -693 386" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-813 -693 386" } prop_dynamic { "angles" "0 270 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-845 -693 386" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_arc_90degree_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-969 -657 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 -529 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 -465 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 -433 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 -369 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 -337 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 -305 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 -273 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 -241 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 -209 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 -177 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 -145 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 -113 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 -81 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 -49 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 -17 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 15 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 47 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 79 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 111 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 143 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 175 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 207 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 239 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 271 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 303 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 335 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 367 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 399 386" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_64.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 431 386" } prop_dynamic { "angles" "0 0 -2" "model" "models/props_mining/track_straight_64.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 493.737 385.003" } prop_dynamic { "angles" "0 0 -5" "model" "models/props_mining/track_straight_64.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 493.737 385.003" } prop_dynamic { "angles" "0 0 -5" "model" "models/props_mining/track_straight_64.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 557.316 380.876" } prop_dynamic { "angles" "0 0 -7" "model" "models/props_mining/track_straight_64.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 620.227 374.203" } prop_dynamic { "angles" "0 0 -10" "model" "models/props_mining/track_straight_64.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 682.488 365.033" } prop_dynamic { "angles" "0 0 -12" "model" "models/props_mining/track_straight_64.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 745.621 352.684" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 840 353" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 872 353" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 904 353" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 936 353" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 968 353" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-1005 1000 353" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_arc_90degree_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-968 1126 353" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_64.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-872 1162 353" } prop_dynamic { "angles" "0 90 4" "model" "models/props_mining/track_straight_64.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-808.537 1162 350.254" } prop_dynamic { "angles" "0 90 6" "model" "models/props_mining/track_straight_64.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-808.537 1162 350.254" } prop_dynamic { "angles" "0 90 10" "model" "models/props_mining/track_straight_64.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-682.863 1162 335.678" } prop_dynamic { "angles" "-6 180 0" "model" "models/props_mining/track_arc_90degree_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-590.421 1198 323.488" } prop_dynamic { "angles" "0 180 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-554 1351 321" } prop_dynamic { "angles" "0 180 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-554 1383 321" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-554 1383 321" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_arc_90degree_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-518 1504 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-393 1540 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-361 1540 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-329 1540 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-297 1540 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-265 1540 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-233 1540 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-201 1540 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-169 1540 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-137 1540 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-105 1540 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-73.0001 1540 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-41.0001 1540 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "-9.00006 1540 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "22.9999 1540 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "54.9999 1540 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "86.9999 1540 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "119 1540 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "151 1540 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "183 1540 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "215 1540 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "247 1540 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "279 1540 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "311 1540 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "343 1540 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "375 1540 321" } prop_dynamic { "angles" "0 180 0" "model" "models/props_mining/track_arc_90degree_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "500 1576 321" } prop_dynamic { "angles" "0 0 0" "model" "models/props_mining/track_arc_90degree_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "572 1703 321" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "695.269 1738 320" } prop_dynamic { "angles" "-5 90 15" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "999.592 1739.26 251.191" } prop_dynamic { "angles" "0 90 25" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "880.482 1737 293.38" } prop_dynamic { "angles" "0 90 0" "model" "models/props_mining/track_straight_128.mdl" "solid" "0" "disablereceiveshadows" "1" "disableshadows" "1" "origin" "792 1738 320" } } trackmaker { NoFixup 1 env_entity_maker { "targetname" "track_maker" "EntityTemplate" "traintracks" } } Payload_Init { NoFixup 1 OnSpawnOutput { Target "payload_model" Action "SetParent" Param "!activator" Delay 0.1 } OnSpawnOutput { Target "payload_model" Action "SetParent" Param "!activator" Delay 0.1 } OnSpawnOutput { Target "payload_annotation" Action "Show" Delay 0.1 } training_annotation { "targetname" "payload_annotation" "display_text" "Deploying the payload will deal significant damage to the boss!" "lifetime" "10" "origin" "0 0 100" } dispenser_touch_trigger { "targetname" "cart_dispenser_trigger" "mins" "-300 -300 -300" "maxs" "300 300 300" "spawnflags" "1" } mapobj_cart_dispenser { "targetname" "cart_dispenser" "origin" "-40 -10 100" "spawnflags" "10" "TeamNum" "2" "touch_trigger" "cart_dispenser_trigger" } info_target { "targetname" "payload_position" } prop_dynamic { "targetname" "payload_model" "model" "models/props_mvm/bomb_cart_red.mdl" "origin" "0 0 30" "angles" "0 180 0" "solid" "0" } } } SpawnTemplate "GeneraLogic" SpawnTemplate "MiscEntities" SpawnTemplate "BreadcrabTeleportLogic" SpawnTemplate "Spawnpoints" SpawnTemplate "Bomb_Replacement" // SpawnTemplate "Potion_Cooldown" SpawnTemplate "idiot" SpawnTemplate "BombFix" SpawnTemplate "props_spawnpoint" SpawnTemplate "RedBotsTele" SpawnTemplate "Liberty_Global" SpawnTemplate "Buster_Upgrade_Station" SpawnTemplate "powerup_timer" SpawnTemplate "buddy" SpawnTemplate "Combo_Pyro" SpawnTemplate "trackmaker" ExtraTankPath { Name "blimp1" Node "1531 5967 803" Node "1723 5729 803" Node "1723 5088 804" Node "1605 4926 804" Node "1428 4689 804" Node "1130 4426 721" Node "984 4346 711" Node "820 4312 544" Node "738 4227 544" Node "652 3894 482" Node "589 3767 466" Node "379 3591 449" Node "172 3411 433" Node "-2 3175 382" Node "-9 1772 382" Node "164 1648 553" Node "303 1554 614" Node "660 1030 917" Node "791 821 1016" Node "791 -626 1016" Node "6 -1494 1016" Node "6 -1891 1016" } ExtraTankPath { Name "tank_path_cart" Node "256 -1984 512" Node "448 -1984 512" Node "541 -1984 512" Node "582 -1938 512" Node "582 -1870 512" Node "526 -1809 512" Node "403 -1783 512" Node "114 -1783 441" Node "49 -1748 441" Node "25 -1701 441" Node "25 -832 441" Node "-3 -736 441" Node "-64 -697 441" Node "-832 -697 448" Node "-988 -652 448" Node "-988 512 448" Node "-988 751 413" Node "-988 1088 413" Node "-924 1161 413" Node "-768 1160 413" Node "-593 1164 391" Node "-559 1234 391" Node "-559 1438 391" Node "-511 1522 391" Node "-431 1546 391" Node "448 1551 391" Node "530 1606 391" Node "535 1647 391" Node "550 1678 391" Node "593 1728 391" Node "806 1728 391" Node "950 1698 336" } // ==================== // // SPAWN POINTS // // ==================== ExtraSpawnPoint { Name "spawnbot_big" TeamNum 3 X "800" Y "-2306" Z "580" } ExtraSpawnPoint { Name "spawnbot_big" TeamNum 3 X "39" Y "-3010" Z "580" } ExtraSpawnPoint { Name "spawnbot_special" TeamNum 3 X "-60" Y "-1980" Z "555" } ExtraSpawnPoint { Name "spawnbot_tank" TeamNum 3 X "650" Y "4799" Z "396" } ExtraSpawnPoint { Name "spawnbot_somewhere" TeamNum 3 X "1401" Y "-65" Z "276" } ExtraSpawnPoint { Name "spawnbot_titan" TeamNum 3 X "1223" Y "1351" Z "452" } // ExtraSpawnPoint // { // Name "spawnbot_titan" // TeamNum 3 // X "-461" // Y "1716" // Z "452" // } // ExtraSpawnPoint // { // Name "spawnbot_titan" // TeamNum 3 // X "631" // Y "1783" // Z "452" // } ExtraSpawnPoint { Name "spawnbot_redtitan" TeamNum 3 X "-461" Y "1716" Z "452" } // ExtraSpawnPoint // { // Name "spawnbot_redtitan" // TeamNum 3 // X "-1052.58" // Y "455.97" // Z "825" // } ExtraSpawnPoint { Name "spawnbot_mid" TeamNum 3 X "-1670" Y "285" Z "347" } ExtraSpawnPoint { Name "spawnbot_mid" TeamNum 3 X "1556" Y "713" Z "311" } ExtraSpawnPoint { Name "spawnbot_mid" TeamNum 3 X "-2" Y "-1221" Z "206" } ExtraSpawnPoint { Name "spawnbot_mid" TeamNum 3 X "-1349" Y "-1620" Z "577" } ExtraSpawnPoint { Name "spawnbot_mid" TeamNum 3 X "-1511" Y "-164" Z "449" } ExtraSpawnPoint { Name "spawnbot_mid" TeamNum 3 X "1325" Y "-647" Z "580" } ExtraSpawnPoint { Name "spawnbot_mid" TeamNum 3 X "-968" Y "-1980" Z "580" } /////////////////////////////////////////////////////////////////// PlayerAttributes { "bot custom jump particle" 1 // "always allow taunt" 1 // "max health additive bonus" 5000 // debug // "damage bonus hidden" 5 // debug // "ammo regen" 1 //debug Pyro { "airblast_pushback_disabled" 1 } Medic { "medic machinery beam" 4.5 } } PlayerSpawnTemplate { Name "playerweapon_fix" Origin "0 0 30" } ItemAttributes { ItemName "TF_WEAPON_GRAPPLINGHOOK" "provide on active" 1 "cancel falling damage" 1 } // ItemAttributes // { // ItemName "The Soda Popper" // "special item description" "[INFO]: Enables speed boost and increased fire rate while hyped." // "mod rage on hit penalty" 0.6 // } ItemAttributes // Super shotgun (#1) { ItemName "The Force-a-Nature" "crit kill will gib" 1 "scattergun has knockback" 0 "damage penalty" 1 "fire rate bonus" 1 "bullets per shot bonus" 2.5 "mod ammo per shot" 2 "special item description" "[INFO]: Super shotgun" } ItemAttributes { ItemName "Sharpened Volcano Fragment" "crit vs burning players" 1 "crit mod disabled" 0 "weapon burn dmg increased" 2 "special item description" "[INFO]: 100% afterburn damage bonus, crit on burning player" } ItemAttributes { ItemName "The Air Strike" "rocketjump attackrate bonus" 1 "clipsize increase on kill" 0 "crit mod disabled" 0 "special item description" "[INFO]: Deal damage to build berserk. When full, taunt to gain increase firing speed and reload rate." } ItemAttributes { ItemName "The Candy Cane" "drop health pack on kill" 0 "dmg taken from blast increased" 0 "mult dmg vs same class" 3 "fire rate penalty" 1.5 } // ItemAttributes // { // Classname "TF_WEAPON_ROCKETLAUNCHER" // "mod max primary clip override" -1 // "fire rate bonus" 0.1 // "maxammo primary increased" 10 // } // ItemAttributes // { // ItemName "TF_WEAPON_BOTTLE" // "special item description" "[INFO]: Drink for a surprise" // } // ItemAttributes // { // ItemName "The Scottish Handshake" // "special item description" "[INFO]: Drink for a surprise" // } ItemAttributes { ItemName "The Ullapool Caber" "not solid to players" 1 "cancel falling damage" 1 "special item description" "[INFO]: Become a sentry buster. Taunt to detonate and revert to a normal demoman." } ItemAttributes { ItemName "The Eviction Notice" "mod_maxhealth_drain_rate" 0 "damage penalty" 1 //"damage bonus" 1.5 "fire rate bonus" 1 "bleeding duration" 3 "crit mod disabled" 0 "add cond on kill" 29 "speed_boost_on_hit" 0 "add cond on kill duration" 10 "special item description" "[INFO]: Damage buff due to brass knuckes, bleed on hit, conch buff on kill" } ItemAttributes // Minicrits without melee restriction (#4) { ItemName "The Buffalo Steak Sandvich" "effect cond override" 16 "item_meter_charge_rate" 90 "special item description" " [INFO]: Eat to gain minicrits on all weapons; slower recharge rate" } ItemAttributes // Homing projectiles (#5) { ItemName "The Pomson 6000" "energy weapon penetration" 1 "damage bonus" 1.5 "special item description" "[INFO]: 50% damage bonus, penetrate enemies" } ItemAttributes { ItemName "The Southern Hospitality" "bleeding duration" 0 "dmg taken from fire increased" 1 "crit mod disabled" 1 "engy building health bonus" 1.5 "engy sentry damage bonus" 1.25 "engy sentry radius increased" 1.25 "construction rate decreased" 0.5 "upgrade rate decrease" 1.5 "max health additive penalty" -55 "mod sentry cost" 1.1538 "special item description" "[INFO]: Increases your sentry's health and firepower; sentry costs 150 metal to build, -55 max health" } // ItemAttributes // (#7) // buggy because the crit duration stays after the healing beam is removed; turned a lot of waves into curbstomps // { // ItemName "The Kritzkrieg" // "effect cond override" 34 // "special item description" "[INFO]: Boosts sentry firing speed in addition to crits" // } ItemAttributes { ItemName "The Solemn Vow" "special item description" "[INFO]: 100% heal rate on all mediguns, instant respawn" } ItemAttributes // (#9) { ItemName "The Enforcer" "dmg pierces resists absorbs" 0 "damage bonus while disguised" 1 "mult dmg vs tanks" 1.5 "fire rate penalty" 1 "fire rate bonus" 0.001 "faster reload rate" 1.2 "spread penalty" 2 "bullets per shot bonus" 2 "auto fires full clip" 1 "hidden secondary max ammo penalty" 3 "special item description" "[INFO]: Hold fire and release to fire up to 6 bullets at once, +50% damage vs tanks." } // ItemAttributes // { // ItemName "TF_WEAPON_INVIS" // "special item description" "[INFO]: Enables flight while cloaked" // "swimming mastery" 1 // } // ItemAttributes // { // ItemName "The Quackenbirdt" // "special item description" "[INFO]: Enables flight while cloaked" // "swimming mastery" 1 // } // ItemAttributes // { // ItemName "The Cloak and Dagger" // "special item description" "[INFO]: Enables flight while cloaked" // "swimming mastery" 1 // } // PlayerItemEquipSpawnTemplate // Invis can swim in air (#10) // { // Name "InvisRework" // ItemName "TF_WEAPON_INVIS" // } // PlayerItemEquipSpawnTemplate // Invis can swim in air (#10) // { // Name "InvisRework" // ItemName "The Quackenbirdt" // } // PlayerItemEquipSpawnTemplate // Invis can swim in air (#10) // { // Name "InvisRework" // ItemName "The Cloak and Dagger" // } PlayerItemEquipSpawnTemplate // easter egg { Name "DeflectorEasterEgg" ItemName "The U-clank-a" } PlayerItemEquipSpawnTemplate { Name "airstrike_rework" Itemname "The Air Strike" } // PlayerItemEquipSpawnTemplate // { // Name "DemoPotion" // ItemName "TF_WEAPON_BOTTLE" // } // PlayerItemEquipSpawnTemplate // { // Name "DemoPotion" // ItemName "The Scottish Handshake" // } PlayerItemEquipSpawnTemplate // (#11) { Name "SoleemnVowRework" ItemName "The Solemn Vow" } PlayerItemEquipSpawnTemplate // (#12) { Name "Caber_Rework" ItemName "The Ullapool Caber" } // PlayerItemEquipSpawnTemplate // (#12) // { // Name "SodaPhase" // ItemName "The Soda Popper" // } // PlayerItemEquipSpawnTemplate // { // Name "BuffMarkForDeath" // ItemName "Merasmus' Private Stash" // } CustomWeapon //Allows you to use an alias for items with custom attributes { Name "Tranquilizer Gun" OriginalItemName "L'Etranger" "override projectile type" 5 // "fire rate penalty" 2.5 // "custom kill icon" "syringegun_medic" // "slow enemy on hit major" 3 "add cond on hit" 50 "add cond on hit duration" 3 "stun on damage" 120 "damage penalty" 0.5 "clip size penalty" 0.167 // "cannot be upgraded" 1 "custom item model" "models/weapons/c_models/c_tranquilizer/c_revolver.mdl" "custom weapon fire sound" "Weapon_ProSniperRifle.Single" "special item description" "[INFO]: Stuns robots for 3 seconds. Giants cannot be stunned" } // CustomWeapon //Allows you to use an alias for items with custom attributes // { // Name "Merasmus' Private Stash" // OriginalItemName "The Buff Banner" // "effect cond override" 33 // "special item description" "[INFO]: Rage provides nearby team members 100% critical chance" // } CustomWeapon //Allows you to use an alias for items with custom attributes { Name "Huntsman Requiem" OriginalItemName "The Huntsman" "custom item model" "models/weapons/c_models/c_pow/c_bow.mdl" "custom projectile model" "models/weapons/w_modelsb/w_arrow.mdl" //"aoe blast on damage" 600 "damage all connected" 1 "damage bonus hidden" 1.75 } CustomWeapon //Allows you to use an alias for items with custom attributes { 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 //Allows you to use an alias for items with custom attributes { 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 } // CustomWeapon //Allows you to use an alias for items with custom attributes // { // Name "Tommy Gun Scout" // OriginalItemName "TF_WEAPON_PISTOL" // "fire rate bonus" 0.65 // "bullets per shot bonus" 1.2 // "clip size bonus" 1.67 // "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" // "custom kill icon" "smg" // "cannot be upgraded" 1 // } CustomWeapon //Allows you to use an alias for items with custom attributes { Name "Laser Pistol" OriginalItemName "TF_WEAPON_SYRINGEGUN_MEDIC" "custom item model" "models/weapons/c_models/c_gamma_gazer/c_gamma_gazer_1.mdl" "custom weapon fire sound" "=85|weapons/capper_shoot.wav" "override projectile type" 1 "sniper fires tracer hidden" 1 "damage bonus" 2.5 "fire rate penalty" 3 "projectile penetration" 1 "clip size penalty" 0.125 "ragdolls become ash" 1 // "cannot be upgraded" 1 } CustomWeapon //Allows you to use an alias for items with custom attributes { Name "Laser Pistol Scout" OriginalItemName "The C.A.P.P.E.R" "can headshot" 1 "damage bonus" 2 "fire rate penalty" 2 "clip size penalty" 0.5 "dmg pierces resists absorbs" 1 "weapon spread bonus" 0.6 "custom item model" "models/weapons/c_models/c_gamma_gazer/c_gamma_gazer_1.mdl" "ragdolls become ash" 1 // "cannot be upgraded" 1 } CustomWeapon //Allows you to use an alias for items with custom attributes { Name "Firey Frontier" OriginalItemName "TF_WEAPON_SHOTGUN_PYRO" "crit vs burning players" 1 "crit mod disabled" 0 "clip size penalty" 0.5 "damage bonus" 1.25 "custom item model" "models/weapons/c_models/c_frontierjustice/c_frontierjustice.mdl" "custom weapon fire sound" "Weapon_FrontierJustice.Single" "custom kill icon" "frontier_kill" // "cannot be upgraded" 1 } CustomWeapon //Allows you to use an alias for items with custom attributes { Name "Syringe" OriginalItemName "TF_WEAPON_BONESAW" "custom item model" "models/weapons/c_models/c_hypodermic_injector/c_hypodermic_injector.mdl" "crit mod disabled" 0 "add give health to teammate on hit" 50 // "cannot be upgraded" 1 } CustomWeapon //Allows you to use an alias for items with custom attributes { Name "Tokamak" OriginalItemName "Tomislav" "override projectile type" 13 "damage bonus" 2.5 "fire rate penalty" 2.5 "projectile spread angle penalty" 3 "minigun no spin sounds" 0 "projectile speed increased" 1.5 "custom wind up sound" "=40|tokamak_wind_up.wav" "custom wind down sound" "=40|tokamak_wind_down.wav" "custom minigun spin sound" "=40|tokamak_spin.wav" "ragdolls become ash" 1 "custom item model" "models/workshop/weapons/c_models/c_tokamak/c_tomislav.mdl" "cannot be upgraded" 1 } CustomWeapon //Allows you to use an alias for items with custom attributes { Name "Bolshevik Bomber" OriginalItemName "TF_WEAPON_SHOTGUN_HWG" "custom item model" "models/weapons/c_models/c_the_bolshevik_bomber/c_the_bolshevik_bomber_1.mdl" "damage bonus" 1.3 "explosive bullets" 147 "fire rate penalty" 1.3 "clip size penalty" 0.75 } CustomWeapon //Allows you to use an alias for items with custom attributes { 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 //Allows you to use an alias for items with custom attributes { Name "Nailbiter" OriginalItemName "TF_WEAPON_WRENCH" "custom item model" "models/workshop/weapons/c_models/c_rfa_hammer/c_rfa_hammer.mdl" "fire rate penalty" 1.25 "Repair rate increased" 1.2 "melee range multiplier" 1.15 "damage penalty" 0.1 "dmg penalty vs players" 10 "dmg bonus vs buildings" 10 "rocket specialist" 4 "mult firerocket rate" 0.25 "engy sentry fire rate increased" 5 "rocket jump damage reduction" 0 // "building color rgb" 657930 "custom kill icon" "the_maul" } // CustomWeapon //Allows you to use an alias for items with custom attributes // { // Name "Brick" // OriginalItemName "Jarate" // "override projectile type" 0 // "special item description" "[INFO] A brick" // } // PlayerShootTemplate // { // Name "OnStunnerWeaponFire" // ItemName "L'Etranger" // // Speed 0 // AttachToProjectile 1 // } PlayerShootTemplate { Name "rpg_shoottemplate" ItemName "W.A.S.P. Launcher" AttachToProjectile 1 } // PlayerShootTemplate // { // Name "brick_projectile" // ItemName "Brick" // Speed 1200 // OverrideShoot 1 // } ItemReplacement { "AK-47" { ItemName "The Cleaner's Carbine" } } ItemReplacement { "Huntsman Requiem" { ItemName "The Fortified Compound" } } ItemReplacement { "Syringe" { ItemName "Festive Bonesaw 2014" } } ItemReplacement { "W.A.S.P. Launcher" { ItemName "The Liberty Launcher" } } // ForceItem // Force items to classes even if the item is not intended for the class // { // All // { // Item "The MK 50" // } // } ExtraLoadoutItems // Extra loadout items available after typing !missionitems in chat { Spy { Secondary "Tranquilizer Gun" } Sniper { Secondary "Brick" } } ///////////////////////////////////////////////////////////////// // ========================== // // BOT TEMPLATES // // ========================== Templates { Zombify_Scout { UseCustomModel "models/player/scout.mdl" Item "Zombie Scout" } Zombify_Soldier { UseCustomModel "models/player/soldier.mdl" Item "Zombie Soldier" } Zombify_Pyro { UseCustomModel "models/player/pyro.mdl" Item "Zombie Pyro" } Zombify_Demo { UseCustomModel "models/player/demo.mdl" Item "Zombie Demo" } Zombify_Heavy { UseCustomModel "models/player/heavy.mdl" Item "Zombie Heavy" } Zombify_Engie { UseCustomModel "models/player/engineer.mdl" Item "Zombie Engineer" } Zombify_Medic { UseCustomModel "models/player/medic.mdl" Item "Zombie Medic" } Zombify_Sniper { UseCustomModel "models/player/sniper.mdl" Item "Zombie Sniper" } Zombify_Spy { UseCustomModel "models/player/spy.mdl" Item "Zombie Spy" } T_TFBot_Soldier_Demon { Name "Demon Soldier" Class Soldier Health 200 Skill Easy WeaponRestrictions PrimaryOnly Item "Upgradeable TF_WEAPON_ROCKETLAUNCHER" Item "The Hellmet" ItemAttributes { ItemName "Upgradeable TF_WEAPON_ROCKETLAUNCHER" "paintkit_proto_def_index" 390 "set_item_texture_wear" 0.2 } } T_TFBot_Soldier_Demon_Buff { Name "Buff Demon Soldier" Class Soldier ClassIcon soldier_buff Health 200 Skill Normal Attributes SpawnWithFullCharge Item "Upgradeable TF_WEAPON_ROCKETLAUNCHER" Item "The Buff Banner" Item "The Hellmet" ItemAttributes { ItemName "Upgradeable TF_WEAPON_ROCKETLAUNCHER" "paintkit_proto_def_index" 390 "set_item_texture_wear" 0.2 } CharacterAttributes { "increase buff duration" 9 "deploy time decreased" 0.5 } } T_TFBot_Soldier_Demon_Fire { Name "Incedinary Demon Soldier" Class Soldier ClassIcon soldier_incendiary_nys Health 200 Skill Expert WeaponRestrictions PrimaryOnly Item "Upgradeable TF_WEAPON_ROCKETLAUNCHER" Item "The Hellmet" ItemAttributes { ItemName "Upgradeable TF_WEAPON_ROCKETLAUNCHER" "paintkit_proto_def_index" 390 "set_item_texture_wear" 0.2 "set damagetype ignite" 1 "damage penalty" 0.5 } ItemAttributes { ItemName "The Hellmet" "attach particle effect" 13 } } T_TFBot_Scout_Imp { Name "Imp Scout" Class Scout Health 125 Skill Easy MaxVisionRange 1500 WeaponRestrictions PrimaryOnly Item "pyroland_scattergun_shottohell" Item "Impish Ears" Item "The Merc's Muffler" ItemAttributes { ItemName "pyroland_scattergun_shottohell" "set_item_texture_wear" 0.2 } ItemModel { ItemName "The Merc's Muffler" Model "models/workshop/player/items/scout/dec2014_marauders_mask/dec2014_marauders_mask.mdl" } } T_TFBot_Sniper_Huntsman_Master { Name "Arrow Master" Class Sniper ClassIcon sniper_bow_multi Scale 1.5 Health 1200 Skill Hard MaxVisionRange 1600 WeaponRestrictions PrimaryOnly UseCustomModel "models/player/sniper.mdl" Item "The Fortified Compound" Item "Legendary Lid" Item "Starduster" Item "Zombie Sniper" ItemAttributes { ItemName "The Fortified Compound" "arrow mastery" 1 "fire rate bonus" 1.2 "cannot headshot" 1 } CharacterAttributes { "move speed bonus" 0.85 } } T_TFBot_Sniper_Huntsman_Conch // unused { Name "Conch Bowman" Class Sniper ClassIcon sniper_bow_conch Health 125 Skill Hard WeaponRestrictions PrimaryOnly SpawnTemplate "ConchSound" UseCustomModel "models/player/sniper.mdl" Item "The Huntsman" Item "The Cozy Camper" Item "Crocodile Dandy" Item "Demo Kabuto" Item "Zombie Sniper" ItemAttributes { ItemName "The Huntsman" "damage penalty" 0.5 "cannot headshot" 1 } AddCond { Name "TF_COND_REGENONDAMAGEBUFF" Delay 1.5 } ItemModel { ItemName "The Cozy Camper" Model "models/workshop_partner/weapons/c_models/c_shogun_warpack/c_shogun_warpack.mdl" } ItemModel { ItemName "Crocodile Dandy" Model "models/workshop_partner/weapons/c_models/c_shogun_warbanner/c_shogun_warbanner.mdl" } } T_TFBot_Pyro_Axtinguisher // unused { Name "Infernal Imp" Class Pyro ClassIcon pyro_axtinguisher Health 175 Skill Hard WeaponRestrictions MeleeOnly RingOfFire 2 UseCustomModel "models/player/pyro.mdl" Item "The Axtinguisher" Item "Blazing Bull" Item "Tail From The Crypt" Item "Fallen Angel" Item "Zombie Pyro" } T_TFBot_Heavy_Rifle { Name "Mann of the Mob" Class Heavyweapons ClassIcon heavy_family_business_lite Health 300 Skill Hard MaxVisionRange 1500 // Attributes HoldFireUntilFullReload WeaponRestrictions SecondaryOnly UseCustomModel "models/player/heavy.mdl" Item "The Family Business" Item "Capone's Capper" Item "Zombie Heavy" ItemAttributes { ItemName "The Family Business" "fire rate penalty" 1.5 "bullets per shot bonus" 2 "damage penalty" 0.36 "faster reload rate" 0.1 } } T_TFBot_Sniper_Battle { Name "Combat Sniper" Class Sniper Health 125 Skill Hard Attributes SuppressFire MaxVisionRange 2500 Tag nav_prefer_flank_left AimAt Body UseCustomModel "models/player/sniper.mdl" Item "The Hitman's Heatmaker" Item "The Cleaner's Carbine" Item "Zombie Sniper" Item "Liquidator's Lid" FireWeapon //Periodically fires weapon { Delay 3 //Time before the first fire input starts (Default: 10) Cooldown 0.7 //Time between each fire input (Default: 10) IfSeeTarget 1 //When set to 1, this task activates only when the bot can see the target player (Default 0 - Always activate) Duration 0.7 //How long should the button be pressed (Default: 0.1) Type "Primary" } FireWeapon //Periodically fires weapon { Delay 4 //Time before the first fire input starts (Default: 10) Cooldown 7 //Time between each fire input (Default: 10) IfSeeTarget 0 //When set to 1, this task activates only when the bot can see the target player (Default 0 - Always activate) Duration 0.1 //How long should the button be pressed (Default: 0.1) Type "Secondary" } } T_TFBot_Medic_QuickUber_Armoured // unused { Name "Armoured Quick Uber Medic" Class Medic ClassIcon medic_uber_armored Scale 1.5 Health 1200 Attributes SpawnWithFullCharge Skill Hard Item "Upgradeable TF_WEAPON_MEDIGUN" Item "The Surgeon's Stahlhelm" Item "Das Metalmeatencasen" ItemAttributes { ItemName "Upgradeable TF_WEAPON_MEDIGUN" "ubercharge rate bonus" 5 "uber duration bonus" -3 } CharacterAttributes { "bot medic uber health threshold" 500 "heal rate bonus" 0.5 "move speed bonus" 0.85 } } T_TFBot_Medic_Overhealer { Name "Overhealer" Class Medic ClassIcon medic_overheal Health 150 Skill Hard UseCustomModel "models/player/medic.mdl" Item "Upgradeable TF_WEAPON_MEDIGUN" Item "Otolaryngologist's Mirror" Item "Das Metalmeatencasen" Item "Zombie Medic" ItemAttributes { ItemName "Upgradeable TF_WEAPON_MEDIGUN" "ubercharge rate bonus" 0.05 "overheal expert" 4 } CharacterAttributes { "heal rate bonus" 5 } } T_TFBot_Pyro_Axtinguisher_Combo { Name "Axe Combo Pyro" Class Pyro ClassIcon pyro_axtinguisher_combo Health 175 Skill Hard MaxVisionRange 1200 UseCustomModel "models/player/pyro.mdl" UseMeleeThreatPrioritization 1 Item "Upgradeable TF_WEAPON_FLAMETHROWER" Item "The Axtinguisher" Item "Zombie Pyro" Item "Blazing Bull" ItemAttributes { ItemName "Upgradeable TF_WEAPON_FLAMETHROWER" "airblast disabled" 1 "fire input on hit" "combo_primary_to_melee^Trigger^" } CharacterAttributes { "deploy time decreased" 0.1 } } T_TFBot_Giant_Soldier_Samurai { Name "Forgotten Samurai" Class Soldier ClassIcon demoknight_samurai Health 3800 Skill Expert Attributes MiniBoss WeaponRestrictions MeleeOnly UseCustomModel "models/player/soldier.mdl" Item "The Half-Zatoichi" Item "Soldier Samurai Hat" Item "The Menpo" Item "The Shogun's Shoulder Guard" Item "Zombie Soldier" ItemAttributes { ItemName "The Half-Zatoichi" "damage bonus" 1.25 "critboost on kill" 3 } CharacterAttributes { "move speed bonus" 0.6 "damage force reduction" 0.6 "airblast vulnerability multiplier" 0.6 "override footstep sound set" 3 } } T_TFBot_Medic_Strength { Name "Strength Medic" Class Medic ClassIcon medic_strength Attributes SpawnWithFullCharge Skill Hard UseCustomModel "models/player/medic.mdl" Item "Upgradeable TF_WEAPON_SYRINGEGUN_MEDIC" Item "Upgradeable TF_WEAPON_MEDIGUN" Item "Zombie Medic" Item "The Macho Mann" Item "Burly Beast" ItemAttributes { ItemName "Upgradeable TF_WEAPON_MEDIGUN" "effect cond override" 90 "ubercharge rate bonus" 200 "uber duration bonus" 200 } ItemAttributes { ItemName "Upgradeable TF_WEAPON_SYRINGEGUN_MEDIC" "damage penalty" 0.1 } CharacterAttributes { "heal rate bonus" 200 "bot medic uber health threshold" 999 } } T_TFBot_Engineer_Steak { Name "Prowler" Class Heavyweapons ClassIcon engineer_steak Scale 1.3 Health 350 Skill Expert Attributes SuppressFire WeaponRestrictions MeleeOnly Action Mobber SpawnTemplate "EngyBattleCry" AddCond { Name "TF_COND_ENERGY_BUFF" } UseCustomModel "models/player/engineer.mdl" Item "The Jag" Item "The Buffalo Steak Sandvich" Item "The Grizzled Growth" Item "The Last Bite" Item "Texas Slim's Dome Shine" Item "Zombie Engineer" ItemAttributes { ItemName "The Jag" "damage penalty" 0.0025 "hit self on miss" 1 "apply look velocity on damage" 1000 "melee range multiplier" 0.0025 "melee bounds multiplier" 0.0025 "decapitate type" 1 } // ItemAttributes // { // ItemName "The Buffalo Steak Sandvich" // "energy buff dmg taken multiplier" 0.65 // } CharacterAttributes { "move speed bonus" 1.5 "voice pitch scale" 0 "cancel falling damage" 1 "stomp player damage" 30 "stomp player force" 100 "crit kill will gib" 1 "stomp player time" 0.025 "increased air control" 100 "mult smack time" 0 "cannot be sapped" 1 } ItemModel { ItemName "The Last Bite" Model "models/workshop/player/items/all_class/hwn2019_horrible_horns/hwn2019_horrible_horns_engineer.mdl" } FireInput { Target "choose_battle_cry" Action PickRandom Param "" Delay 0 Cooldown 5 IfSeeTarget 1 } FireWeapon { Delay 5 Cooldown 0 Repeats 0 IfSeeTarget 1 Duration 0 Type "Primary" } FireWeapon { Delay 5 Cooldown 0.25 Repeats 0 IfSeeTarget 1 Duration 0 Type "Jump" } CustomWeaponModel { Slot 0 Model "models/empty.mdl" } } T_TFBot_Breadcrab_Zombie { Name "Breadcrab" Class Heavyweapons ClassIcon breadcrab_zombie Health 300 Skill Normal WeaponRestrictions MeleeOnly UseCustomModel "models/player/heavy.mdl" Item "Upgradeable TF_WEAPON_FISTS" Item "Breadcrab" Item "Bread Biter" Item "Zombie Heavy" ItemAttributes { ItemName "Upgradeable TF_WEAPON_FISTS" "bleeding duration" 3 } } T_TFBot_Breadcrab_Zombie_Midget // unused { Name "Micro Breadcrab" Class Heavyweapons ClassIcon breadcrab_zombie Scale 0.65 Health 100 Skill Normal WeaponRestrictions MeleeOnly Action Mobber Tag breadcrab UseCustomModel "models/player/heavy.mdl" Item "Upgradeable TF_WEAPON_FISTS" Item "Breadcrab" Item "Bread Biter" Item "Zombie Heavy" CharacterAttributes { "move speed bonus" 1.3 } } T_TFBot_Scout_Bonk_Vac_Bullet { Name "Bullet Bonk Scout" Class Scout ClassIcon scout_bonk_bullet_nys Health 125 Skill Normal WeaponRestrictions MeleeOnly UseCustomModel "models/player/scout.mdl" Item "The Atomizer" Item "Bonk! Atomic Punch" Item "Bonk Helm" Item "Zombie Scout" ItemAttributes { ItemName "Bonk! Atomic Punch" "effect cond override" 67 } ItemAttributes { ItemName "The Atomizer" "single wep deploy time increased" 1 } } T_TFBot_Scout_Bonk_Vac_Blast { Name "Blast Bonk Scout" Class Scout ClassIcon scout_bonk_blast_nys Health 125 Skill Normal WeaponRestrictions MeleeOnly UseCustomModel "models/player/scout.mdl" Item "The Atomizer" Item "Bonk! Atomic Punch" Item "Bonk Helm" Item "Zombie Scout" ItemAttributes { ItemName "Bonk! Atomic Punch" "effect cond override" 68 } ItemAttributes { ItemName "Bonk Helm" "set item tint rgb" 5025616 } ItemAttributes { ItemName "The Atomizer" "single wep deploy time increased" 1 } } T_TFBot_Giant_Breadcrab_Zombie // Giant that shoots canisters which spawn mini breadcrabs when destroyed. { Name "Giant Breadcrab" Class Heavyweapons ClassIcon breadcrab_zombie_giant Health 5000 Attributes MiniBoss Skill Expert WeaponRestrictions PrimaryOnly Tag bot_giant FireSound "misc/null.wav" UseCustomModel "models/player/heavy.mdl" Item "TF_WEAPON_GRENADELAUNCHER" Item "Upgradeable TF_WEAPON_FISTS" Item "Breadcrab" Item "Bread Biter" Item "Zombie Heavy" ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "fire rate penalty" 2.5 "faster reload rate" 0.05 "projectile speed increased" 0.75 "custom projectile model" "models/empty.mdl" "grenade no bounce" 1 "fuse bonus" 3 "damage penalty" 0.3 } ItemAttributes { ItemName "Upgradeable TF_WEAPON_FISTS" "is_passive_weapon" 1 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.2 "airblast vulnerability multiplier" 0.2 "override footstep sound set" 7 } CustomWeaponModel { Slot 0 Model "models/empty.mdl" } ShootTemplate { Name "BreadcrabSpawner" Spread 0.2 Offset "0 0 -16" Angles "90 270 0" AttachToProjectile 1 } } T_TFBot_Giant_Heavyweapons_HealOnAll // Stronger version of the HoK heavy, heals on hit and has health regen. Spawns alone so players can focus fire it { Name "Colonel Regen" Class Heavyweapons ClassIcon heavy_deflector_healonkill Health 5000 Attributes MiniBoss Skill Expert MaxVisionRange 1600 WeaponRestrictions PrimaryOnly Tag bot_giant UseCustomModel "models/player/heavy.mdl" Item "Deflector" Item "The Tungsten Toque" Item "Zombie Heavy" ItemAttributes { ItemName "Deflector" "damage bonus" 1.45 "attack projectiles" 2 "heal on kill" 5000 "heal on hit for rapidfire" 4 } CharacterAttributes { "move speed bonus" 0.35 "damage force reduction" 0.2 "airblast vulnerability multiplier" 0.2 "airblast vertical vulnerability multiplier" 0 "override footstep sound set" 2 "health regen" 40 } } T_TFBot_Giant_Heavyweapons_Tomislav // unused { Name "Black Marketer" Class Heavyweapons ClassIcon heavy_accurate_lite Health 5000 Attributes MiniBoss Skill Expert MaxVisionRange 1600 WeaponRestrictions PrimaryOnly Tag bot_giant UseCustomModel "models/player/heavy.mdl" Item "Tomislav" Item "Capone's Capper" Item "Zombie Heavy" ItemAttributes { ItemName "Tomislav" "damage bonus" 1.5 "weapon spread bonus" 0.3 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.2 "airblast vulnerability multiplier" 0.2 "override footstep sound set" 2 } } T_TFBot_Giant_Medic_King { Name "Emperor Medic" Class Medic ClassIcon medic_king Health 4500 Attributes MiniBoss Attributes SpawnWithFullCharge Attributes IgnoreEnemies Skill Expert WeaponRestrictions SecondaryOnly Tag bot_giant UseCustomModel "models/player/medic.mdl" Item "Upgradeable TF_WEAPON_MEDIGUN" Item "Class Crown" Item "The King of Scotland Cape" Item "Zombie Medic" ItemAttributes { ItemName "Upgradeable TF_WEAPON_MEDIGUN" "effect cond override" 109 "ubercharge rate bonus" 2 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.6 "airblast vulnerability multiplier" 0.6 "bot medic uber health threshold" 3000 "heal rate bonus" 200 } } T_TFBot_Giant_Soldier_Nuke_BlackBox // Fires super slow rockets that deal massive damage to players in a wide radius { Name "Army of One" Class Soldier ClassIcon soldier_nuker Health 4200 Attributes MiniBoss Attributes AlwaysCrit Attributes HoldFireUntilFullReload Skill Expert Tag bot_giant WeaponRestrictions PrimaryOnly Item "The Black Box" Item "The Nuke" Item "Zombie Soldier" RocketCustomParticle "flare_glow" UseCustomModel "models/player/soldier.mdl" ItemAttributes { ItemName "The Black Box" "damage bonus" 4 "damage causes airblast" 1 "fire rate penalty" 3 "faster reload rate" 3 "projectile speed increased" 0.35 // "use large smoke explosion" 1 "blast radius increased" 2 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 } } T_TFBot_Chief_Heavy_Plasma { Name "Cyberdemon" Class Heavyweapons ClassIcon heavy_atomic Scale 1.8 Health 30000 Attributes MiniBoss Attributes UseBossHealthBar Skill Expert MaxVisionRange 1600 WeaponRestrictions PrimaryOnly Tag bot_giant DropWeapon 1 UseCustomModel "models/player/heavy.mdl" AimLeadProjectileSpeed 1800 Item "Tokamak" Item "Minsk Beef" Item "Immobile Suit" Item "Zombie Heavy" CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "airblast vertical vulnerability multiplier" 0 "override footstep sound set" 2 "rage giving scale" 0.1 } } // Unused // T_TFBot_Chief_Sniper_HipFire // { // Name "Chief Hipfire Sniper" // Class Sniper // ClassIcon sniper_alwaysfire // Health 30000 // Scale 1.8 // Skill Expert // Attributes MiniBoss // Attributes AlwaysFireWeapon // Attributes UseBossHealthBar // WeaponRestrictions PrimaryOnly // Tag bot_giant // MaxVisionRange 2500 // AimAt Body // Item "Shooting Star" // Item "Corona Australis" // Item "Starduster" // ItemAttributes // { // ItemName "Shooting Star" // "sniper only fire zoomed" 0 // "faster reload rate" 1.15 // "damage bonus" 2.4 // } // CharacterAttributes // { // "move speed bonus" 0.45 // "damage force reduction" 0 // "airblast vulnerability multiplier" 0 // "airblast vertical vulnerability multiplier" 0 // "override footstep sound set" 2 // "rage giving scale" 0.1 // "health regen" 50 // } // } T_TFBot_Chief_Skeleton { Name "Skeleton King" Class Sniper ClassIcon dead_king_lite Scale 1.8 Health 30000 Attributes MiniBoss Attributes DisableDodge Attributes UseBossHealthBar Skill Expert WeaponRestrictions MeleeOnly Tag bot_giant Action Mobber Skin 2 NoIdleSound 1 StripItemSlot 0 StripItemSlot 1 UseCustomModel "models/bots/skeleton_sniper_boss/skeleton_sniper_boss.mdl" Item "Prince Tavish's Crown" ItemAttributes { ItemName "TF_WEAPON_CLUB" // "damage bonus" 2 // "fire rate bonus" 0.6 "is invisible" 1 "custom kill icon" "skull_tf" } CharacterAttributes { "move speed bonus" 0.8 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "override footstep sound set" 7 "voice pitch scale" 0 } // ChangeAttributes //Periodically changes bot attributes, defined in EventChangeAttributes // { // Delay 1 //Time before the first bot attribute change (Default: 10) // Cooldown 1 //Time between each bot attribute change (Default: 10) // Repeats 1 //How many times should bot change attributes in total (Default: 0 - Infinite) // IfSeeTarget 0 //When set to 1, this task activates only when the bot can see the target player (Default 0 - Always activate) // IfHealthBelow 10000 //When set, the task activates only when the bot health is below specified value // Name "LowHealth" // Name of the bot attributes listed in EventChangeAttributes // } // FireInput // { // Target "regen_zone" //Entity name to use // Action Enable //Input to fire // Param "" //Parameter to use // Delay 0.1 //Delay before firing the input // Cooldown 0 //Cooldown between firing the input // Repeats 1 //How many times should the input be fired // IfHealthBelow 10001 //When set, the task activates only when the bot health is below specified value // } // EventChangeAttributes // { // LowHealth // { // InterruptAction // { // Target "regen_zone" // Delay 1 // Repeats 1 // Cooldown 0 // Duration 10 // WaitUntilDone 1 // OnDoneChangeAttributes "Backtoattack" // } // } // Backtoattack // { // WeaponRestrictions MeleeOnly // CharacterAttributes // { // "health regen" 0 // } // } // } } T_TFBot_Ramiel { Name "Ramiel" Class Pyro ClassIcon boss_ramiel Scale 14 Health 500000 Skill Expert Attributes MiniBoss Attributes DisableDodge // Attributes HoldFireUntilFullReload Attributes UseBossHealthBar Attributes AlwaysCrit //Attributes AlwaysFireWeapon Tag boss Tag bot_giant ExtAttr IgnoreBuildings ExtAttr AlwaysFireWeaponAlt Action Mobber UseCustomModel "models/empty.mdl" SpawnTemplate "RamielModel" AlwaysGlow 1 NoIdleSound 1 StripItemSlot 1 StripItemSlot 2 DeathSound "ambient/explosions/explode_9.wav" AimTrackingInterval 0.001 // AimAt Feet Item "The Cow Mangler 5000" ItemAttributes { ItemName "The Cow Mangler 5000" "custom kill icon" "firedeath" "is invisible" 1 "faster reload rate" -1 "weapon burn dmg increased" 2 "fire rate penalty" 2 "projectile speed increased" 2 "mod projectile heat seek power" 400 "mod projectile heat aim error" 150 "projectile speed increased" 0.5 "blast radius increased" 1.5 "damage bonus" 2.25 "crits_become_minicrits" 0 "mult dmg vs giants" 3.5 } CharacterAttributes { "not solid to players" 1 "ragdolls plasma effect" 1 "move speed bonus" 0.01 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "airblast vertical vulnerability multiplier" 0 "voice pitch scale" 0 "gesture speed increase" 0 "no_duck" 1 "no_jump" 1 "cannot be sapped" 1 "rage giving scale" 200 } // WeaponResist // { // "tf_weapon_soda_popper" 2.076 // "tf_weapon_flamethrower" 2.5 // "tf_weapon_flaregun" 2.5 // "tf_weapon_raygun" 1.25 // "TF_WEAPON_SNIPERRIFLE" 1.5 // "TF_WEAPON_GRENADELAUNCHER" 0.996 // "TF_WEAPON_ROCKETLAUNCHER" 1.24 // "tf_weapon_minigun" 0.75 // } } T_TFBot_Skeleton_BombRunner // unused { Class Sniper ClassIcon scout_bombrunner Name "Bomb Running Skeleton" Health 4200 Skill Expert Scale 1.5 Attributes MiniBoss WeaponRestrictions MeleeOnly MaxVisionRange 50 UseCustomModel "models/bots/skeleton_sniper/skeleton_sniper.mdl" AlwaysGlow 1 Skin 1 FastUpdate 1 // NoBombUpgrades 1 Tag bot_giant CustomWeaponModel { Slot 0 Model "models/empty.mdl" } CustomWeaponModel { Slot 1 Model "models/empty.mdl" } CustomWeaponModel { Slot 2 Model "models/empty.mdl" } ItemAttributes { ItemName "TF_WEAPON_CLUB" "apply look velocity on damage" 800 "apply z velocity on damage" 900 "damage causes airblast" 1 "dmg penalty vs players" 0.05 "fire rate penalty" 1.5 } CharacterAttributes { "move speed bonus" 2 "damage force increase hidden" 1.5 "not solid to players" 1 "voice pitch scale" 0 "override footstep sound set" 7 "mult stun resistance" 0 "backstab shield" 1 "cancel falling damage" 1 "increased air control" 100 } } // ==================== // // Red robots // // ==================== T_TFBot_Red_Boss_Soldier_Mortar { Name "Titanotron" Class Soldier ClassIcon soldier_rocketrain_heat Scale 14 Health 500000 Attributes MiniBoss Attributes UseBossHealthBar Attributes HoldFireUntilFullReload Attributes AlwaysFireWeapon Skill Expert WeaponRestrictions PrimaryOnly AddCond { Name "TF_COND_REPROGRAMMED" } // AddCond { Name "TF_COND_CRITBOOSTED_ON_KILL" } UseCustomModel "models/bots/soldier_boss/bot_soldier_boss.mdl" AlwaysGlow 1 Action Mobber StripItemSlot 1 StripItemSlot 2 Item "Upgradeable TF_WEAPON_ROCKETLAUNCHER" Item "Immobile Suit" Item "The Menpo" Item "The Hardium Helm" Item "The Space Bracers" Item "The Jupiter Jumpers" ItemAttributes { ItemName "Upgradeable TF_WEAPON_ROCKETLAUNCHER" "clip size upgrade atomic" 30 "fire rate bonus" 0.05 "faster reload rate" 0.1 "mini rockets" 1 "damage bonus" 0.3 "projectile spread angle penalty" 180 "rocket jump damage reduction" 0 "is invisible" 1 "hand scale" 0 "killstreak tier" 2 "killstreak idleeffect" 1 "mod weapon blocks healing" 1 "custom kill icon" "purgatory" } CharacterAttributes { "move speed bonus" 0.01 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "airblast vertical vulnerability multiplier" 0 "not solid to players" 1 "no_jump" 1 "no_duck" 1 "cancel falling damage" 1 "gesture speed increase" 0.25 "override footstep sound set" 3 "collect currency on kill" 1 "health from healers reduced" 0 "health from packs decreased" 0 "dmg taken from crit reduced" 0.1 "voice pitch scale" 0 } HomingRockets { Enable 1 IgnoreDisguisedSpies 1 IgnoreStealthedSpies 1 RocketSpeed 0.5 TurnPower 400 MaxAimError 150 } } T_TFBot_Red_Giant_Sniper { Name "Giant Sniper" Class Sniper ClassIcon red2_lite Health 3000 Attributes MiniBoss Attributes DisableDodge Skill Expert MaxVisionRange 3000 Action Sniper UseCustomModel "models/bots/sniper_boss/bot_sniper_boss.mdl" AddCond { Name "TF_COND_REPROGRAMMED" } Skin 0 Item "Diamond Botkiller Sniper Rifle Mk.I" ItemAttributes { ItemName "Diamond Botkiller Sniper Rifle Mk.I" "faster reload rate" 0.5 "damage bonus" 2 } ItemAttributes { ItemName "TF_WEAPON_CLUB" "crit vs non burning players" 1 } CharacterAttributes { "move speed bonus" 0.65 "damage force reduction" 0.5 "airblast vulnerability multiplier" 0.5 "override footstep sound set" 3 "voice pitch scale" 0 "deploy time decreased" 0.5 "health from packs decreased" 0.01 "collect currency on kill" 1 } } T_TFBot_Scout_Mercenary { Name "Laser Scout" Class Scout ClassIcon red2_lite Health 125 Skill Expert MaxVisionRange 1600 AddCond { Name "TF_COND_REPROGRAMMED" } Action Mobber WeaponRestrictions SecondaryOnly UseCustomModel "models/player/scout.mdl" StripItemSlot 0 StripItemSlot 2 AimAt Head Item "Laser Pistol Scout" Item "Baseball Bill's Sports Shine" Item "Merc's Pride Scarf" Item "Jungle Jersey" Item "Transparent Trousers" Item "Forest Footwear" Item "Dillinger's Duffel" Item "Portal 2 Pin" ItemModel { ItemName "Portal 2 Pin" Model "models/player/items/scout/professor_speks.mdl" } ItemModel { ItemName "Merc's Pride Scarf" Model "models/workshop/player/items/medic/medic_gasmask/medic_gasmask.mdl" } ChangeAttributes { "collect currency on kill" 1 "crit mod disabled" 0 "ammo regen" 1 "health regen" 10 "dmg taken from blast reduced" 0.5 "dmg taken from bullets reduced" 0.5 "dmg taken from fire reduced" 0.5 "dmg taken from crit reduced" 0.1 } 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" } } T_TFBot_Red_Soldier_Wasp_Battalion { Name "Extended Backup Soldier" Class Soldier ClassIcon red2_lite Health 220 Skill Expert Attributes SpawnWithFullCharge MaxVisionRange 1600 WeaponRestrictions PrimaryOnly AddCond { Name "TF_COND_REPROGRAMMED" } UseCustomModel "models/player/soldier.mdl" Action Mobber StripItemSlot 2 DropWeapon 1 Item "W.A.S.P. Launcher" Item "The Battalion's Backup" Item "Saxton Hat" Item "Antarctic Parka" Item "Robin Walkers" Item "Polycount Pin" 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.5 "dmg taken from bullets reduced" 0.5 "dmg taken from fire reduced" 0.5 "dmg taken from crit reduced" 0.1 "deploy time decreased" 0.5 } ItemModel { ItemName "Robin Walkers" Model "models/workshop/player/items/soldier/mantreads/mantreads.mdl" } ItemModel { ItemName "Polycount Pin" Model "models/player/items/soldier/professor_speks.mdl" } 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" } } T_TFBot_Red_Demo_Burst_Human { Name "Burst Fire Demo" Class Demoman ClassIcon red2_lite Health 150 Attributes HoldFireUntilFullReload Skill Expert MaxVisionRange 1600 // WeaponRestrictions PrimaryOnly AddCond { Name "TF_COND_REPROGRAMMED" } UseCustomModel "models/player/demo.mdl" Action Mobber AimLeadProjectileSpeed 1 DropWeapon 1 Item "The Iron Bomber" Item "The Chargin' Targe" Item "The Eyelander" Item "The Allbrero" Item "Six Pack Abs" Item "PASS Time Early Participation Pin" ItemAttributes { ItemName "The Iron Bomber" "faster reload rate" 1.75 "fire rate bonus" 0.05 "clip size penalty" 0.5 "projectile spread angle penalty" 3 "projectile speed increased" 1.1 "blast dmg to self increased" 0 } ItemAttributes { ItemName "The Eyelander" "critboost on kill" 3 "max health additive penalty" 0 } CharacterAttributes { "crit mod disabled" 0 "collect currency on kill" 1 "health regen" 10 "attack not cancel charge" 1 "full charge turn control" 25 "dmg taken from blast reduced" 0.5 "dmg taken from bullets reduced" 0.5 "dmg taken from crit reduced" 0.1 } ItemModel { ItemName "PASS Time Early Participation Pin" Model "models/workshop/player/items/demo/sum19_unforgiven_glory/sum19_unforgiven_glory.mdl" } 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" } WeaponSwitch { Delay 0 Cooldown 0 Repeats 1 IfSeeTarget 0 Type "Melee" IfHealthBelow 75 } } T_TFBot_Red_Heavyweapons_Tomislav { Name "Tomislav Heavy" Class Heavyweapons ClassIcon red2_lite Health 300 // Attributes DisableDodge Skill Expert MaxVisionRange 1600 AddCond { Name "TF_COND_REPROGRAMMED" } UseCustomModel "models/player/heavy.mdl" Action Mobber UseMeleeThreatPrioritization 1 Item "The Apparatchik's Apparel" Item "The Soviet Gentleman" Item "Jungle Booty" Item "Tomislav" Item "The Holiday Punch" ItemAttributes { ItemName "Tomislav" "attack projectiles" 2 "weapon spread bonus" 0.1 "mod minigun can holster while spinning" 1 } ItemAttributes { ItemName "The Holiday Punch" "always crit" 1 "provide on active" 1 "move speed bonus" 1.3 } CharacterAttributes { "crit mod disabled" 0 "collect currency on kill" 1 "deploy time decreased" 0.1 "dmg taken from blast reduced" 0.5 "dmg taken from bullets reduced" 0.5 "dmg taken from fire reduced" 0.5 "dmg taken from crit reduced" 0.1 } 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" } WeaponSwitch { Delay 0 Cooldown 0 Repeats 1 IfSeeTarget 0 Type "Melee" IfHealthBelow 100 } } T_TFBot_Red_Pyro_Thruster { Name "Thruster Pyro" Class Pyro ClassIcon red2_lite Health 175 Attributes DisableDodge Skill Expert MaxVisionRange 400 UseBestWeapon 1 UseMeleeThreatPrioritization 1 AddCond { Name "TF_COND_REPROGRAMMED" } UseCustomModel "models/player/pyro.mdl" Action Mobber Item "The Backburner" Item "The Thermal Thruster" Item "Pyro's Beanie" Item "The Cute Suit" ItemAttributes { ItemName "The Thermal Thruster" "single wep deploy time increased" 0.01 "holster_anim_time" 0.01 "item_meter_charge_rate" 3 "thermal_thruster_air_launch" 1 "falling_impact_radius_stun" 1 } CharacterAttributes { "dmg taken increased" 0.33 // very low falldmg (also affects bleed, eoi, eh) "dmg from melee increased" 3 // regular damage from melee "dmg from ranged reduced" 3 // regular damage from everything else "crit mod disabled" 0 "collect currency on kill" 1 "health regen" 10 } FireWeapon { Delay 0 Cooldown 1 IfSeeTarget 1 Type "Primary" } } T_TFBot_Red_Sniper_Sleeper { Name "Sydney Sniper" Class Sniper ClassIcon red2_lite Health 125 Attributes DisableDodge Skill Expert MaxVisionRange 3000 AddCond { Name "TF_COND_REPROGRAMMED" } UseCustomModel "models/player/sniper.mdl" Action Sniper Item "The Sydney Sleeper" Item "The Bushwacka" Item "Wet Works" Item "The Extra Layer" CharacterAttributes { "crit mod disabled" 0 "collect currency on kill" 1 "deploy time decreased" 0.1 "dmg taken from blast reduced" 0.5 "dmg taken from bullets reduced" 0.5 "dmg taken from fire reduced" 0.5 "dmg taken from crit reduced" 0.1 } } T_TFBot_Red_Soldier_DirectHit_Parachute { Name "Direct Hit Soldier" Class Soldier ClassIcon red2_lite Health 200 Attributes HoldFireUntilFullReload Skill Expert MaxVisionRange 1600 WeaponRestrictions PrimaryOnly Tag bot_dropped AddCond { Name "TF_COND_REPROGRAMMED" } UseCustomModel "models/player/soldier.mdl" Action Mobber AimLeadProjectileSpeed 1980 Item "The Direct Hit" Item "The B.A.S.E. Jumper" Item "The Cloud Crasher" CharacterAttributes { "cancel falling damage" 1 "increased air control" 5 "collect currency on kill" 1 "crit mod disabled" 0 "dmg taken from blast reduced" 0.5 "dmg taken from bullets reduced" 0.5 "dmg taken from fire reduced" 0.5 } } T_TFBot_Red_Heavyweapons_Bomber_Para { Name "Bomber Heavy" Class Heavyweapons ClassIcon red2_lite Health 300 Attributes DisableDodge Skill Expert MaxVisionRange 1600 WeaponRestrictions SecondaryOnly Tag bot_dropped AddCond { Name "TF_COND_REPROGRAMMED" } UseCustomModel "models/player/heavy.mdl" Action Mobber AimAt Feet DropWeapon 1 Item "Bolshevik Bomber" Item "The B.A.S.E. Jumper" Item "The Borscht Belt" Item "Commando Elite" CharacterAttributes { "cancel falling damage" 1 "increased air control" 5 "blast dmg to self increased" 0 "crit mod disabled" 0 "collect currency on kill" 1 "dmg taken from blast reduced" 0.5 "dmg taken from bullets reduced" 0.5 "dmg taken from fire reduced" 0.5 } } T_TFBot_UAC_Scientist_1 { Name "UAC Scientist" Class Medic ClassIcon vip Health 500 Attributes IgnoreFlag Attributes UseBossHealthBar Skill Expert WeaponRestrictions MeleeOnly AlwaysGlow 1 // ExtAttr IgnoreNPC StripItemSlot 1 DropWeapon 1 AddCond { Name "TF_COND_REPROGRAMMED" } UseCustomModel "models/player/medic.mdl" SpawnTemplate "vip_position" Item "Laser Pistol" Item "Doctor's Sack" Item "Coldfront Carapace" Item "Emerald Jarate" Item "The Vita-Saw" ItemAttributes { ItemName "The Vita-Saw" "ubercharge_preserved_on_spawn_max" 0 "max health additive penalty" 0 "lunchbox adds minicrits" 0 "add cond on hit" 112 "add cond on hit duration" 2 } CharacterAttributes { "deploy time decreased" 0.001 "dmg taken from crit reduced" 0.1 "collect currency on kill" 1 "crit mod disabled" 0 "damage bonus" 5 "health regen" 10 // "backstab shield" 1 } ItemModel { ItemName "Doctor's Sack" Model "models/community/player/items/medic/scientist_head_3/scientist_head_3.mdl" } WeaponSwitch { Delay 0 Cooldown 0 Repeats 1 IfSeeTarget 0 Type "Primary" IfHealthBelow 100 } VoiceCommand { Delay 0 Cooldown 0 IfHealthBelow 100 Type "Medic" } VoiceCommand { Delay 0 Cooldown 3 IfSeeTarget 1 Type "Help" } VoiceCommand { Delay 0 Cooldown 40 IfSeeTarget 0 Type "Spy" } } T_TFBot_UAC_Scientist_2 { Name "UAC Scientist" Class Medic ClassIcon vip Health 500 Attributes IgnoreFlag Attributes UseBossHealthBar Skill Expert WeaponRestrictions MeleeOnly AlwaysGlow 1 // ExtAttr IgnoreNPC StripItemSlot 1 DropWeapon 1 AddCond { Name "TF_COND_REPROGRAMMED" } UseCustomModel "models/player/medic.mdl" SpawnTemplate "vip_position" Item "Laser Pistol" Item "Das Hazmattenhatten" Item "Coldfront Carapace" Item "Syringe" Item "End of the Line Community Update Medal" ItemModel { ItemName "End of the Line Community Update Medal" Model "models/workshop/weapons/c_models/c_medigun_defense/c_medigun_defensepack.mdl" } CharacterAttributes { "deploy time decreased" 0.001 "dmg taken from crit reduced" 0.1 "collect currency on kill" 1 "crit mod disabled" 0 "damage bonus" 5 "health regen" 10 // "backstab shield" 1 } WeaponSwitch { Delay 0 Cooldown 0 Repeats 1 IfSeeTarget 0 Type "Primary" IfHealthBelow 100 } VoiceCommand { Delay 0 Cooldown 0 IfHealthBelow 100 Type "Medic" } VoiceCommand { Delay 0 Cooldown 3 IfSeeTarget 1 Type "Help" } VoiceCommand { Delay 0 Cooldown 40 IfSeeTarget 0 Type "Spy" } } T_TFBot_UAC_Scientist_3 { Name "UAC Scientist" Class Medic ClassIcon vip Health 500 Attributes IgnoreFlag Attributes UseBossHealthBar Skill Expert WeaponRestrictions MeleeOnly AlwaysGlow 1 // ExtAttr IgnoreNPC StripItemSlot 1 DropWeapon 1 AddCond { Name "TF_COND_REPROGRAMMED" } UseCustomModel "models/player/medic.mdl" SpawnTemplate "vip_position" Item "Laser Pistol" Item "The MK 50" Item "Coldfront Carapace" Item "The Itsy Bitsy Spyer" Item "Syringe" ItemModel { ItemName "The Itsy Bitsy Spyer" Model "models/community/player/items/medic/hippocratic_growth/hippocratic_growth.mdl" } CharacterAttributes { "deploy time decreased" 0.001 "dmg taken from crit reduced" 0.1 "collect currency on kill" 1 "crit mod disabled" 0 "damage bonus" 5 "health regen" 10 // "backstab shield" 1 } WeaponSwitch { Delay 0 Cooldown 0 Repeats 1 IfSeeTarget 0 Type "Primary" IfHealthBelow 100 } VoiceCommand { Delay 0 Cooldown 0 IfHealthBelow 100 Type "Medic" } VoiceCommand { Delay 0 Cooldown 3 IfSeeTarget 1 Type "Help" } VoiceCommand { Delay 0 Cooldown 40 IfSeeTarget 0 Type "Spy" } } T_TFBot_UAC_Scientist_4 { Name "UAC Scientist" Class Medic ClassIcon vip Health 500 Attributes IgnoreFlag Attributes UseBossHealthBar Skill Expert WeaponRestrictions MeleeOnly AlwaysGlow 1 // ExtAttr IgnoreNPC StripItemSlot 1 DropWeapon 1 AddCond { Name "TF_COND_REPROGRAMMED" } AddCond { Name "TF_COND_RADIUSHEAL_ON_DAMAGE" } UseCustomModel "models/player/medic.mdl" SpawnTemplate "vip_position" Item "Laser Pistol" Item "Heer's Helmet" Item "Coldfront Carapace" Item "The Amputator" CharacterAttributes { "deploy time decreased" 0.001 "dmg taken from crit reduced" 0.1 "collect currency on kill" 1 "crit mod disabled" 0 "always allow taunt" 1 "damage bonus" 5 "health regen" 10 // "backstab shield" 1 } WeaponSwitch { Delay 0 Cooldown 0 Repeats 1 IfSeeTarget 0 Type "Primary" IfHealthBelow 100 } VoiceCommand { Delay 0 Cooldown 0 IfHealthBelow 100 Type "Medic" } VoiceCommand { Delay 0 Cooldown 3 IfSeeTarget 1 Type "Help" } VoiceCommand { Delay 0 Cooldown 40 IfSeeTarget 1 Type "Spy" } // FireWeapon // { // Delay 0 // Cooldown 5 // Repeats 0 // IfSeeTarget 0 // Type "Secondary" // } } T_TFBot_Red_Giant_Sentrybuster { Name "Sentry Buster" Class Demoman ClassIcon sentry_buster_red Health 2500 Skill Expert Attributes MiniBoss Attributes DisableDodge WeaponRestrictions MeleeOnly Item "The Ullapool Caber" Action SuicideBomber UseBusterModel 1 UseCustomModel "models/bots/demo/red_sentry_buster.mdl" Skin 0 AddCond { Name "TF_COND_REPROGRAMMED" } FastUpdate 1 CharacterAttributes { "move speed bonus" 2 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "airblast vertical vulnerability multiplier" 0 "override footstep sound set" 7 "voice pitch scale" 0 "cannot be backstabbed" 1 "health from packs decreased" 0 "bombinomicon effect on death" 1 } EventChangeAttributes { AttackSentry { Skill Expert MaxVisionRange 10 WeaponRestrictions MeleeOnly Item "The Ullapool Caber" InterruptAction { Target "kill_me" Delay 1 Repeats 0 Cooldown 0 Duration 0 OnDoneChangeAttributes "Explode" } } Explode { ClientCommand { Name "explode" Delay 1 Cooldown 0 Repeats 1 IfSeeTarget 1 } } } } T_TFBot_Red_Giant_Metalbeard_NoBoss { Class Demoman Name "Major Bomber" ClassIcon red2_lite Skill Hard Health 10000 Item "Prince Tavish's Crown" AddCond { Name "TF_COND_REPROGRAMMED" } AddCond { Name "TF_COND_CRITBOOSTED_ON_KILL" } Action Mobber UseCustomModel "models/bots/demo_boss/bot_demo_boss.mdl" // Skin 0 Attributes MiniBoss Attributes HoldFireUntilFullReload ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "fire rate bonus" 0.2 "faster reload rate" 0.3 "clip size penalty" 3.0 "Projectile speed increased" 1.5 } CharacterAttributes { "health regen" 40 "move speed bonus" 0.5 "health from packs decreased" 0.01 "voice pitch scale" 0 "damage force reduction" 0.7 "airblast vulnerability multiplier" 0.3 "override footstep sound set" 4 "airblast vertical vulnerability multiplier" 0.1 "rage giving scale" 0.1 "collect currency on kill" 1 } } T_TFBot_Red_Giant_Railgun { Name "Giant Railgun" Class Pyro ClassIcon red2_lite Health 3300 Attributes MiniBoss Attributes SuppressFire Skill Expert WeaponRestrictions SecondaryOnly MaxVisionRange 3000 AddCond { Name "TF_COND_REPROGRAMMED" } Action Mobber UseCustomModel "models/bots/pyro_boss/bot_pyro_boss.mdl" // Skin 0 AimAt Head Item "The Triclops" ItemAttributes { ItemName "TF_WEAPON_SHOTGUN_PYRO" "fire rate penalty" 2.5 "reload time decreased" 0.05 "sniper fires tracer hidden" 1 "weapon spread bonus" 0.01 "damage bonus" 3 "projectile penetration" 1 "can headshot" 1 "no damage falloff" 1 "custom kill icon" "machina" "custom weapon fire sound" "=40|weapons/sniper_railgun_single_01.wav" "hand scale" 1.2 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.2 "airblast vulnerability multiplier" 0.2 "override footstep sound set" 6 "collect currency on kill" 1 "crit mod disabled" 0 } CustomWeaponModel { Slot 1 Model "models/weapons/c_models/c_dex_sniperrifle/c_dex_sniperrifle.mdl" } FireWeapon { Delay 0 Cooldown 2 Repeats 0 IfSeeTarget 1 Type "Primary" } } T_TFBot_Skeleton_Infantry { Class Sniper ClassIcon dead_red_lite Name "Infantry Skeleton" Health 200 Skill Expert Action Mobber AddCond { Name "TF_COND_REPROGRAMMED" } UseCustomModel "models/bots/skeleton_sniper/skeleton_sniper.mdl" UseHumanAnimations 1 AimAt Head DropWeapon 1 WeaponRestrictions SecondaryOnly Item "AK-47" Item "The Head Hedge" Item "Flak Jack" Item "The Cammy Jammies" CharacterAttributes { "collect currency on kill" 1 "crit mod disabled" 0 "voice pitch scale" 0 } CustomWeaponModel { Slot 0 Model "models/empty.mdl" } CustomWeaponModel { Slot 2 Model "models/empty.mdl" } } T_TFBot_Skeleton_Gas { Name "Gas Skeleton" Class Pyro ClassIcon dead_red_lite Health 200 Attributes SpawnWithFullCharge Skill Expert WeaponRestrictions SecondaryOnly Action Mobber UseHumanAnimations 1 AddCond { Name "TF_COND_REPROGRAMMED" } UseCustomModel "models/bots/skeleton_sniper/skeleton_sniper.mdl" Item "The Gas Passer" Item "The HazMat Headcase" ItemAttributes { ItemName "The Gas Passer" "item_meter_charge_rate" 2 "weapon burn dmg increased" 3 "fire rate penalty" 4.5 } CharacterAttributes { "collect currency on kill" 1 "crit mod disabled" 0 "voice pitch scale" 0 } CustomWeaponModel { Slot 2 Model "models/empty.mdl" } } T_TFBot_Skeleton_Engineer { Name "Skeletal Engineer" Class Engineer ClassIcon dead_red_lite Health 275 Attributes IgnoreFlag Skill Expert TeleportWhere respawnpoints AddCond { Name "TF_COND_REPROGRAMMED" } UseHumanAnimations 1 UseCustomModel "models/bots/skeleton_sniper/skeleton_sniper.mdl" ExtAttr BuildDispenserAsTeleporter Item "Engineer's Cap" Item "The Texas Half-Pants" Item "The Jag" CharacterAttributes { "engy building health bonus" 2 "engy dispenser radius increased" 10 "cancel falling damage" 1 "mult dispenser rate" 3 "construction rate increased" 3 "voice pitch scale" 0 } } } Mission // Sentry Buster { Where spawnbot Objective DestroySentries BeginAtWave 1 InitialCooldown 35 CooldownTime 35 TFBot { Name "Mercury Buster" Class Scout ClassIcon sentry_buster Health 2500 Skill Expert Attributes MiniBoss Attributes IgnoreEnemies Attributes DisableDodge WeaponRestrictions MeleeOnly Tag bot_giant Item "The Freedom Staff" Item "Olympic Leapers" Item "Hephaistos' Handcraft" CharacterAttributes { "move speed bonus" 2 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "airblast vertical vulnerability multiplier" 0 "override footstep sound set" 7 "cannot be backstabbed" 1 "head scale" 3 "torso scale" 0.05 } } } Mission // Sniper { Where spawnbot Objective Sniper BeginAtWave 1 RunForThisManyWaves 1 DesiredCount 2 InitialCooldown 40 CooldownTime 40 TFBot { Template T_TFBot_Sniper AimAt Body Name "Headhunter" Item "gentlemanne_sniperrifle_dressedtokill" Item "The Cozy Camper" Item "The Shaman's Skull" Item "The Tribalman's Shiv" ItemAttributes { ItemName "gentlemanne_sniperrifle_dressedtokill" "set_item_texture_wear" 0.2 } AddTemplate Zombify_Sniper } } Mission // Engineer wave 2 { Where spawnbot Objective Engineer BeginAtWave 2 RunForThisManyWaves 1 DesiredCount 1 InitialCooldown 50 CooldownTime 50 TFBot { Template T_TFBot_Engineer_Sentry_Teleporter TeleportWhere spawnbot StripItemSlot 0 Name "Machete Mechanic" Item "Prinny Machete" Item "The Virtual Reality Headset" Item "Roboot" ItemAttributes { ItemName "Prinny Machete" "damage bonus" 21 // hehe funny knife } AddTemplate Zombify_Engie } } // Mission // Engineer // { // Where Behind // Objective Engineer // BeginAtWave 4 // RunForThisManyWaves 1 // DesiredCount 2 // InitialCooldown 2 // CooldownTime 2 // TFBot // { // Template T_TFBot_MiniSentry // CharacterAttributes { "bombinomicon effect on death" 1 } // } // } Mission // Engineer wave 6 { Where spawnbot Objective Engineer BeginAtWave 6 RunForThisManyWaves 1 DesiredCount 1 InitialCooldown 35 CooldownTime 35 TFBot { Template T_TFBot_Engineer_Sentry_Tele_Battle Name "Giant Machete Mechanic" Health 3000 Attributes MiniBoss Scale 1.5 Tag bot_giant Item "Prinny Machete" Item "The Virtual Reality Headset" Item "Roboot" ExtAttr BuildDispenserAsTeleporter ItemAttributes { ItemName "Prinny Machete" "damage bonus" 21 // hehe funny knife } CharacterAttributes { "building scale" 1.5 "engy building health bonus" 2 "move speed bonus" 0.5 "damage force reduction" 0.6 "airblast vulnerability multiplier" 0.6 "override footstep sound set" 6 "engy sentry fire rate increased" 5 "engy sentry radius increased" 1.25 "mult firerocket rate" 0.25 "rocket specialist" 3 "voice pitch scale" 0 } AddTemplate Zombify_Engie } } Mission // Spy { Where spawnbot Objective Spy BeginAtWave 3 RunForThisManyWaves 1 DesiredCount 2 InitialCooldown 40 CooldownTime 40 TFBot { Template T_TFBot_Spy Name "Midas Touch" Item "Gold Frying Pan" AddTemplate Zombify_Spy } } Mission // Spy { Where spawnbot Objective Spy BeginAtWave 5 RunForThisManyWaves 1 DesiredCount 2 InitialCooldown 40 CooldownTime 40 TFBot { Template T_TFBot_Spy Name "Diamondback" Item "The Diamondback" Item "The Spy-Cicle" Item "Belltower Spec Ops" ItemAttributes { ItemName "The Diamondback" "auto fires full clip" 1 "auto fires when full" 1 "reload time increased" 2 } AddTemplate Zombify_Spy } } // Mission // Spy // { // Where spawnbot // Objective Spy // BeginAtWave 8 // RunForThisManyWaves 1 // DesiredCount 2 // InitialCooldown 35 // CooldownTime 35 // TFBot // { // Template T_TFBot_Spy // Name "Midas Touch" // Item "Gold Frying Pan" // AddTemplate Zombify_Spy // } // } Wave // Wave 1 { WaitWhenDone 65 Checkpoint Yes StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } InitWaveOutput { Target spawntele_start Action Trigger } Explanation { Line "{F04747}-----------------INCOMING TRANSMISSION-------------------" Line "{0384BE}Our radars have detected a disturbance in the vortex that connects Hell with the Mortal Plane." Line "{0384BE}Fortunately, help is on the way. We have provided you with a supply of {red}red robots{0384BE} ." Line "{0384BE}They will auto-collect money from the enemies they kill." Line "{0384BE}Some robots will drop weapons, which can be picked up by players." Line "{0384BE}Enemy Medic shields can damage players." Line "{DC682A}Some of your weapons have been changed. Inspect weapons to find out." Line "{F04747}-----------------END TRANSMISSION------------------------" // Line "" // Line "{green}Special thanks to Royal on the Potato.tf discord for the point templates!" } WaveSpawn { Name "wave01a" Where spawnbot TotalCount 10 MaxActive 5 SpawnCount 5 WaitBeforeStarting 0 WaitBetweenSpawns 10 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Soldier Tag bot_giant AddTemplate Zombify_Soldier } TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ Name "Undead Champ" AddTemplate Zombify_Heavy } TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ Name "Undead Champ" AddTemplate Zombify_Heavy } TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ Name "Undead Champ" AddTemplate Zombify_Heavy } TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ Name "Undead Champ" AddTemplate Zombify_Heavy } } } WaveSpawn { Name "wave01a" Where spawnbot TotalCount 18 MaxActive 6 SpawnCount 3 WaitBeforeStarting 0 WaitBetweenSpawns 3 TotalCurrency 100 TFBot { Template T_TFBot_Demoman Skill Easy Name "Bomber Zombie" Item "Hair of the Dog" Item "Scottish Snarl" AddTemplate Zombify_Demo } } WaveSpawn { Name "wave01a" Where spawnbot TotalCount 24 MaxActive 12 SpawnCount 2 WaitBeforeStarting 5 WaitBetweenSpawns 2 TotalCurrency 100 TFBot { Template T_TFBot_Scout_Imp AddTemplate Zombify_Scout } } WaveSpawn { Name "wave01b" WaitForAllSpawned wave01a Where spawnbot // Where spawnbot_tank TotalCount 18 MaxActive 9 SpawnCount 3 WaitBeforeStarting 5 WaitBetweenSpawns 3 TotalCurrency 100 RandomSpawn 1 TFBot { Template T_TFBot_Pyro Skill Easy AddTemplate Zombify_Pyro } } WaveSpawn { Name "wave01c" WaitForAllSpawned wave01b Where spawnbot TotalCount 16 MaxActive 8 SpawnCount 4 WaitBeforeStarting 10 WaitBetweenSpawns 15 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Soldier Tag bot_giant AddTemplate Zombify_Soldier } TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ Name "Undead Champ" AddTemplate Zombify_Heavy } TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ Name "Undead Champ" AddTemplate Zombify_Heavy } TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ Name "Undead Champ" AddTemplate Zombify_Heavy } } } WaveSpawn // Tank 20000 HP { Name "wave01c" WaitForAllSpawned wave01b TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 0 TotalCurrency 200 Tank { Name "tankboss" StartingPathTrackNode "boss_path_1" Health 20000 Speed 75 Skin 0 Model "models/bots/boss_bot/boss_tank_color.mdl" SpawnTemplate "TankBloodRed" ReplaceModelCollisions 1 OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name "wave01_support" Where spawnbot TotalCount 60 MaxActive 6 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 0 TotalCurrency 0 Support 1 TFBot { Class Sniper ClassIcon sniper_kukri_lite Name "Knife Maniac" WeaponRestrictions MeleeOnly AddTemplate Zombify_Sniper } } WaveSpawn { Name "wave01red" Where spawnbot_big TotalCount 20 MaxActive 3 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 20 TotalCurrency 0 Support 1 TFBot { Template T_TFBot_Heavyweapons_Fist ClassIcon red2_lite AddTemplate RedHeavyBot } } } Wave // Wave 2 { WaitWhenDone 65 Checkpoint Yes StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } InitWaveOutput { Target spawntele_start Action Trigger } // Explanation // { // Line "{DC682A}The Buffalo Steak Sandvich{0384BE} : Eat to gain minicrits on all weapons; slower recharge rate." // Line "{DC682A}The Enforcer{0384BE} : Hold fire and release to fire up to 6 bullets at once, +50% damage vs tanks." // Line "{DC682A}The Kritzkrieg{0384BE} : Doubles your Engineer's sentry gun firing speed while ubered." // Line "{DC682A}The Soda Popper{0384BE} : Speed boost during hype." // } WaveSpawn { Name "wave02a" Where spawnbot TotalCount 15 MaxActive 15 SpawnCount 5 WaitBeforeStarting 0 WaitBetweenSpawns 20 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Demo_Rapidfire Name "Giant Bomber Zombie" Item "Hair of the Dog" Item "Scottish Snarl" Tag bot_giant AddTemplate Zombify_Demo } TFBot { Template T_TFBot_Soldier_Demon AddTemplate Zombify_Soldier } TFBot { Template T_TFBot_Soldier_Demon AddTemplate Zombify_Soldier } TFBot { Template T_TFBot_Soldier_Demon AddTemplate Zombify_Soldier } TFBot { Template T_TFBot_Soldier_Demon AddTemplate Zombify_Soldier } } } WaveSpawn { Name "wave02a" Where spawnbot TotalCount 20 MaxActive 10 SpawnCount 5 WaitBeforeStarting 10 WaitBetweenSpawns 5 TotalCurrency 100 TFBot { Class Heavyweapons Skill Normal Item "concealedkiller_minigun_kingofthejungle" ItemAttributes { ItemName "concealedkiller_minigun_kingofthejungle" "set_item_texture_wear" 0.2 } AddTemplate Zombify_Heavy } } WaveSpawn { Name "wave02b" WaitForAllSpawned wave02a Where spawnbot TotalCount 8 MaxActive 4 SpawnCount 4 WaitBeforeStarting 0 WaitBetweenSpawns 15 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons_Shotgun Tag bot_giant CustomWeaponModel { Slot 1 Model "models/weapons/c_models/c_rapidfire/c_rapidfire_1.mdl" } AddTemplate Zombify_Heavy } // TFBot // { // Template T_TFBot_Giant_Medic_Regen // Attributes IgnoreEnemies // Item "The Virus Doctor" // AddTemplate Zombify_Medic // } TFBot { Template T_TFBot_Soldier_Demon AddTemplate Zombify_Soldier } TFBot { Template T_TFBot_Soldier_Demon AddTemplate Zombify_Soldier } TFBot { Template T_TFBot_Soldier_Demon AddTemplate Zombify_Soldier } } } WaveSpawn { Name "wave02b" WaitForAllSpawned wave02a Where spawnbot TotalCount 10 MaxActive 5 SpawnCount 5 WaitBeforeStarting 10 WaitBetweenSpawns 5 TotalCurrency 200 TFBot { Template T_TFBot_Scout_Shortstop Item "The Milkman" CharacterAttributes { "head scale" 1 } AddTemplate Zombify_Scout } } WaveSpawn { Name "wave02c" WaitForAllDead wave02b Where spawnbot TotalCount 9 MaxActive 9 SpawnCount 3 WaitBeforeStarting 10 WaitBetweenSpawns 20 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Soldier_Crit_Improved Tag bot_giant Name "Giant Charged Zombie" Item "Idiot Box" Item "Steel Pipes" Item "Shoestring Budget" AddTemplate Zombify_Soldier } TFBot { Template T_TFBot_Medic_QuickFix AddTemplate Zombify_Medic } TFBot { Template T_TFBot_Medic_QuickFix AddTemplate Zombify_Medic } } } WaveSpawn { Name "wave02c" WaitForAllDead wave02b Where spawnbot TotalCount 3 MaxActive 1 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 10 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Scout_Improved ClassIcon scout_pop Name "Giant Soda Popper Scout" Item "The Soda Popper" AddTemplate Zombify_Scout } } WaveSpawn { Name "wave02c" WaitForAllDead wave02b Where spawnbot TotalCount 25 MaxActive 2 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 0 Support 1 TFBot { Template T_TFBot_Sniper_Battle } } WaveSpawn { Name "wave02c" WaitForAllDead wave02b Where spawnbot Where spawnbot_tank TotalCount 60 MaxActive 4 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 2 TotalCurrency 0 Support 1 RandomSpawn 1 RandomChoice { TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ_Fast Name "Undead Champ" ClassIcon heavy_champ AddTemplate Zombify_Heavy } TFBot { Template T_TFBot_Demoman_Knight Name "Skeleton Knight" Item "Forgotten King's Pauldrons" Item "Forgotten King's Restless Head" AddTemplate Zombify_Demo } } } WaveSpawn { Name "wave02red" Where spawnbot_big TotalCount 60 MaxActive 2 SpawnCount 1 WaitBeforeStarting 3 WaitBetweenSpawns 10 TotalCurrency 0 Support 1 RandomChoice { TFBot { Template T_TFBot_Sniper_Huntsman_Spammer_Fixed ClassIcon red2_lite Name "Brief Negotiator" Skill Expert UseBestWeapon 1 AimAt Head DropWeapon 1 Item "Tommy Gun" Item "Saxton Hat" Item "The Cobber Chameleon" CharacterAttributes { "voice pitch scale" 0.8 "deploy time decreased" 0.2 } AddTemplate RedSniperBot_Mobber } TFBot { Class Pyro ClassIcon red2_lite Name "Shotgun Combo Pyro" Health 1200 Scale 1.5 Skill Expert // WeaponRestrictions SecondaryOnly DropWeapon 1 StripItemSlot 0 StripItemSlot 2 UseMeleeThreatPrioritization 1 Item "The Degreaser" Item "Firey Frontier" Item "Old Guadalajara" ItemAttributes { ItemName "The Degreaser" "fire input on hit" "combo_primary_to_secondary_longhold^Trigger^" "airblast disabled" 1 "damage penalty" 0.25 } CharacterAttributes { "head scale" 0.7 "voice pitch scale" 0.8 } AddTemplate RedPyroBot } } } } Wave // Wave 3 { WaitWhenDone 65 Checkpoint Yes StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } InitWaveOutput { Target spawntele_start Action Trigger } Explanation { Line "{0384BE}They have sent in more reinforcements, including a convoy of mighty tanks." Line "{0384BE}Luckily we have a supply of {red}Persian Demo-bots {0384BE}that will assist us in destroying them." Line "{0384BE}We have also supplied you with some {red}Samurai bots {0384BE}, shipped from Japan." Line "{green}Note: Type snd_restart in console to stop music on wave completion." } WaveSpawn // Music { TotalCount 0 SpawnCount 0 WaitBeforeStarting 0 Support 1 FirstSpawnWarningSound "#music/hl2_song20_submix0.mp3" } WaveSpawn // Music { TotalCount 0 SpawnCount 0 WaitBeforeStarting 0 Support 1 FirstSpawnWarningSound "#music/hl2_song20_submix0.mp3" } WaveSpawn // Music { TotalCount 0 SpawnCount 0 WaitBeforeStarting 103 Support 1 FirstSpawnWarningSound "#music/hl2_song31.mp3" } WaveSpawn // Music { TotalCount 0 SpawnCount 0 WaitBeforeStarting 103 Support 1 FirstSpawnWarningSound "#music/hl2_song31.mp3" } WaveSpawn { Name "wave03a" Where spawnbot TotalCount 24 MaxActive 12 SpawnCount 6 WaitBeforeStarting 0 WaitBetweenSpawns 2 TotalCurrency 200 TFBot { Template T_TFBot_Scout_Imp Skill Hard AddTemplate Zombify_Scout } } WaveSpawn // Tank 36000 HP { Name "wave03_tank1" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 25 WaitBetweenSpawns 0 TotalCurrency 200 Tank { Name "tankboss" StartingPathTrackNode "boss_path_1" Health 55000 Speed 75 Skin 0 Model "models/bots/boss_bot/boss_tank_color.mdl" SpawnTemplate "killtarget" SpawnTemplate "TankBloodRed" ReplaceModelCollisions 1 OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name "wave03red1" Where spawnbot_tank TotalCount 12 MaxActive 12 SpawnCount 12 WaitBeforeStarting 25 WaitBetweenSpawns 0 TotalCurrency 0 Support Limited TFBot { Template T_TFBot_Demoman_Knight_Persian ClassIcon red2_lite InterruptAction // Stop current bot ai and force the bot to move to a location { Target "kill_me" AimTarget "kill_me" Delay 0.1 // Time before the first task starts (Default: 10) Repeats 1 // How many times should bot do the task in total (Default: 0 - Infinite) Cooldown 0 //Time between each task (Default: 10) Duration 40 // How long should the ai be interrupted WaitUntilDone 1 // If set, duration timer only starts when the bot moves to the target location or the aim target is killed (Default: 0) OnDoneChangeAttributes "Attr2" } EventChangeAttributes { Attr2 { CharacterAttributes { "health drain" -1200 } } } AddTemplate RedDemoBot } } WaveSpawn { Name "wave03b" WaitForAllSpawned wave03a Where spawnbot TotalCount 2 MaxActive 2 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 10 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Soldier_Spammer_Hatted Tag bot_giant AddTemplate Zombify_Soldier } } WaveSpawn { Name "wave03b" WaitForAllSpawned wave03a Where spawnbot TotalCount 18 MaxActive 9 SpawnCount 3 WaitBeforeStarting 10 WaitBetweenSpawns 3 TotalCurrency 100 TFBot { Template T_TFBot_Demoman Skill Normal Name "Bomber Zombie" Item "Hair of the Dog" Item "Scottish Snarl" AddTemplate Zombify_Demo } } WaveSpawn { Name "wave03b" WaitForAllSpawned wave03a Where spawnbot TotalCount 4 MaxActive 4 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 5 TotalCurrency 50 TFBot { Template T_TFBot_Giant_Soldier_Samurai } } WaveSpawn { Name "wave03c" WaitForAllDead wave03b Where spawnbot TotalCount 21 MaxActive 6 SpawnCount 3 WaitBeforeStarting 0 WaitBetweenSpawns 3 TotalCurrency 100 Support Limited TFBot { Template T_TFBot_Heavy_Rifle } } WaveSpawn { Name "wave03c" WaitForAllDead wave03b Where spawnbot TotalCount 12 MaxActive 8 SpawnCount 4 WaitBeforeStarting 0 WaitBetweenSpawns 5 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Giant_Pyro_Improved // Attributes AlwaysCrit Tag bot_giant ItemAttributes { ItemName "Upgradeable TF_WEAPON_FLAMETHROWER" "airblast disabled" 1 } AddTemplate Zombify_Pyro } TFBot { Template T_TFBot_Medic_BigHeal_Improved AddTemplate Zombify_Medic } TFBot { Template T_TFBot_Medic_BigHeal_Improved AddTemplate Zombify_Medic } TFBot { Template T_TFBot_Medic_BigHeal_Improved AddTemplate Zombify_Medic } } } // WaveSpawn // { // Name "wave03c" // WaitForAllDead wave03b // Where spawnbot // TotalCount 8 // MaxActive 4 // SpawnCount 2 // WaitBeforeStarting 10 // WaitBetweenSpawns 4 // TotalCurrency 0 // Support Limited // TFBot // { // Template T_TFBot_Engineer_Steak // } // } WaveSpawn // Dummy { Name "wave03dummy" WaitForAllDead wave03b TotalCount 0 SpawnCount 0 WaitBeforeStarting 0 } WaveSpawn // Dummy { Name "wave03dummy" WaitForAllDead wave03red1 TotalCount 0 SpawnCount 0 WaitBeforeStarting 0 } WaveSpawn // Tank 45000 HP { Name "wave03tank2" WaitForAllDead wave03dummy TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 100 Tank { Name "tankboss" StartingPathTrackNode "boss_path_1" Health 55000 Speed 75 Skin 0 Model "models/bots/boss_bot/boss_tank_color.mdl" SpawnTemplate "killtarget2" SpawnTemplate "TankBloodRed" ReplaceModelCollisions 1 OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name "wave03red2" WaitForAllDead wave03dummy Where spawnbot_tank TotalCount 12 MaxActive 12 SpawnCount 12 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 0 Support Limited TFBot { Template T_TFBot_Demoman_Knight_Persian ClassIcon red2_lite InterruptAction // Stop current bot ai and force the bot to move to a location { Target "kill_me2" AimTarget "kill_me2" Delay 0.1 // Time before the first task starts (Default: 10) Repeats 1 // How many times should bot do the task in total (Default: 0 - Infinite) Cooldown 0 //Time between each task (Default: 10) Duration 40 // How long should the ai be interrupted WaitUntilDone 1 // If set, duration timer only starts when the bot moves to the target location or the aim target is killed (Default: 0) OnDoneChangeAttributes "Attr2" } EventChangeAttributes { Attr2 { CharacterAttributes { "health drain" -1200 } } } AddTemplate RedDemoBot } } // WaveSpawn // { // Name "wave03_support" // WaitForAllDead wave03b // Where spawnbot // TotalCount 12 // MaxActive 4 // SpawnCount 2 // WaitBeforeStarting 10 // WaitBetweenSpawns 3 // TotalCurrency 0 // Support Limited // Squad // { // TFBot // { // Template T_TFBot_Sniper_Sydney_Sleeper // Name "Urine Trouble" // Item "Master's Yellow Belt" // Item "The Bushwacka" // AimAt Body // Action Sniper // AddTemplate Zombify_Sniper // } // TFBot // { // Template T_TFBot_Medic_Overhealer // } // } // } WaveSpawn { Name "wave03red" Where spawnbot_big TotalCount 60 MaxActive 2 SpawnCount 1 WaitBeforeStarting 5 WaitBetweenSpawns 12 TotalCurrency 0 Support 1 TFBot { Template T_TFBot_Demoman_Samurai ClassIcon red2_lite CharacterAttributes { "cancel falling damage" 1 } AddTemplate RedDemoBot } } } Wave // Wave 4 { WaitWhenDone 65 Checkpoint Yes StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } InitWaveOutput { Target spawntele_start Action Trigger } Explanation { Line "{636262}Mysterious forces have shown up ahead..." Line "{0384BE}Don't worry, they're not here to fight us." Line "{0384BE}They are the souls of fallen soldiers, seeking revenge upon those who killed them." Line "{0384BE}Be sure to look up because they will be arriving by air." Line "{green}Note: Type snd_restart in console to stop music on wave completion." } SpawnTemplate "RegenArea" WaveSpawn { Name "wave04a" Where spawnbot TotalCount 22 MaxActive 8 SpawnCount 4 WaitBeforeStarting 0 WaitBetweenSpawns 2 TotalCurrency 100 TFBot { Template T_TFBot_Soldier_Extended_Concheror_Fix AddTemplate Zombify_Soldier } } WaveSpawn { Name "wave04a" Where spawnbot // Where spawnbot_tank TotalCount 24 MaxActive 12 SpawnCount 6 WaitBeforeStarting 6 WaitBetweenSpawns 6 TotalCurrency 100 TFBot { Template T_TFBot_Demo_Burst_Fix AddTemplate Zombify_Demo } } WaveSpawn { Name "wave04b" WaitForAllSpawned wave04a Where spawnbot TotalCount 4 MaxActive 4 SpawnCount 2 WaitBeforeStarting 15 WaitBetweenSpawns 15 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons_Improved Tag bot_giant AddTemplate Zombify_Heavy } TFBot { Template T_TFBot_Giant_Medic_Shield Tag bot_giant Attributes IgnoreEnemies ItemAttributes { ItemName "Upgradeable TF_WEAPON_MEDIGUN" "generate rage on heal" 1 "increase buff duration" 1 } AddTemplate Zombify_Medic } } } WaveSpawn { Name "wave04b" WaitForAllSpawned wave04a Where spawnbot TotalCount 30 MaxActive 10 SpawnCount 5 WaitBeforeStarting 30 WaitBetweenSpawns 1 TotalCurrency 100 TFBot { Template T_TFBot_Scout_FAN AddTemplate Zombify_Scout } } WaveSpawn { Name "wave04c" WaitForAllDead wave04b Where spawnbot TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 5 WaitBetweenSpawns 15 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Soldier_SlowBarrage_Improved Item "Hellhunter's Headpiece" Tag bot_giant AddTemplate Zombify_Soldier } } WaveSpawn // Dummy { WaitForAllDead wave04b TotalCount 0 SpawnCount 0 WaitBeforeStarting 0 Support 1 FirstSpawnWarningSound "#music/hl2_song19.mp3" } WaveSpawn // Dummy { WaitForAllDead wave04b TotalCount 0 SpawnCount 0 WaitBeforeStarting 0 Support 1 FirstSpawnWarningSound "#music/hl2_song19.mp3" } WaveSpawn { Name "wave04c" WaitForAllDead wave04b Where spawnbot_somewhere TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 150 FirstSpawnOutput { Target skeleton_hint Action Show } TFBot { Template T_TFBot_Chief_Skeleton Tag regen } } WaveSpawn { Name "wave04c_support" WaitForAllDead wave04b Where spawnbot_mid TotalCount 30 MaxActive 2 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 3 TotalCurrency 0 RandomSpawn 1 Support 1 RandomChoice { TFBot { Class Sniper ClassIcon dead_lite Name "Ninja Skeleton" Skill Expert Scale 1.001 UseCustomModel "models/bots/skeleton_sniper/skeleton_sniper.mdl" Action Mobber Skin 1 UseHumanAnimations 1 WeaponRestrictions MeleeOnly Item "The Dread Hiding Hood" Item "Prinny Machete" ItemAttributes { ItemName "Prinny Machete" "custom kill icon" "demokatana" "decapitate type" 1 "critboost on kill" 3 "melee range multiplier" 1.2 "custom hit sound" ")weapons/tf_katana_slice_01.wav" } CharacterAttributes { "move speed bonus" 1.25 "voice pitch scale" 0 } CustomWeaponModel { Slot 0 Model "models/empty.mdl" } CustomWeaponModel { Slot 1 Model "models/empty.mdl" } CustomWeaponModel { Slot 2 Model "models/workshop_partner/weapons/c_models/c_shogun_katana/c_shogun_katana_soldier.mdl" } // WeaponResist // { // "The Half-Zatoichi" 20 // } } TFBot { Class Sniper ClassIcon dead_lite Name "Biker Skeleton" Skill Expert Scale 1.001 UseCustomModel "models/bots/skeleton_sniper/skeleton_sniper.mdl" Action Mobber Skin 1 WeaponRestrictions MeleeOnly Item "Death Racer's Helmet" Item "Wipe Out Wraps" ItemAttributes { ItemName "TF_WEAPON_CLUB" "custom kill icon" "skull_tf" "custom hit sound" ")npc/zombie/claw_strike3.wav" } CharacterAttributes { "move speed bonus" 1.25 "voice pitch scale" 0 } CustomWeaponModel { Slot 0 Model "models/empty.mdl" } CustomWeaponModel { Slot 1 Model "models/empty.mdl" } CustomWeaponModel { Slot 2 Model "models/empty.mdl" } } TFBot { Class Sniper ClassIcon dead_lite Health 325 Scale 1.25 Name "Boxing Skeleton" Skill Expert Scale 1.001 UseCustomModel "models/bots/skeleton_sniper/skeleton_sniper.mdl" Action Mobber Skin 1 WeaponRestrictions MeleeOnly Item "Pugilist's Protector" Item "The Killing Gloves of Boxing" CharacterAttributes { "move speed bonus" 0.85 "voice pitch scale" 0 } CustomWeaponModel { Slot 0 Model "models/empty.mdl" } CustomWeaponModel { Slot 1 Model "models/empty.mdl" } } } } WaveSpawn { Name "wave04c" WaitForAllDead wave04b Where spawnbot TotalCount 12 MaxActive 4 SpawnCount 2 WaitBeforeStarting 15 WaitBetweenSpawns 5 TotalCurrency 50 TFBot { Template T_TFBot_Heavyweapons_Fist Name "Brute" Item "The Warsworn Helmet" AddTemplate Zombify_Heavy } } WaveSpawn { Name "wave04c" WaitForAllDead wave04b Where spawnbot TotalCount 32 MaxActive 8 SpawnCount 4 WaitBeforeStarting 15 WaitBetweenSpawns 1 TotalCurrency 0 Support 1 TFBot { Template T_TFBot_Pyro_Flaregun AddTemplate Zombify_Pyro } } WaveSpawn { Name "wave04red" WaitForAllDead wave04b Where respawnpoints TotalCount 1984 MaxActive 4 SpawnCount 1 WaitBeforeStarting 1 WaitBetweenSpawns 2 TotalCurrency 0 Support 1 RandomChoice { TFBot { Template T_TFBot_Skeleton_Infantry Tag bot_dropped Item "The B.A.S.E. Jumper" CharacterAttributes { "cancel falling damage" 1 "increased air control" 5 } } TFBot { Template T_TFBot_Skeleton_Infantry Tag bot_dropped Item "The B.A.S.E. Jumper" CharacterAttributes { "cancel falling damage" 1 "increased air control" 5 } } TFBot { Template T_TFBot_Skeleton_Gas Tag bot_dropped Item "The B.A.S.E. Jumper" CharacterAttributes { "cancel falling damage" 1 "increased air control" 5 } } TFBot { Template T_TFBot_Skeleton_Engineer Tag bot_dropped Item "The B.A.S.E. Jumper" CharacterAttributes { "increased air control" 5 } } } } } Wave // Wave 5 { WaitWhenDone 65 Checkpoint Yes StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } InitWaveOutput { Target spawntele_start Action Trigger } // SpawnTemplate "blimpteleporter" SpawnTemplate { Name "controlpoint" "origin" "-648 1178 330" } SpawnTemplate "Wave5Logic" SpawnTemplate "Chopper" Explanation { Line "{0384BE}We have found some stray survivors in the area." Line "{0384BE}They need your help in escorting them out of this place." } // WaveSpawn // Tank 17000 HP // { // Name "wave05_blimp" // TotalCount 1 // MaxActive 1 // SpawnCount 1 // WaitBeforeStarting 0 // WaitBetweenSpawns 0 // TotalCurrency 200 // FirstSpawnWarningSound "mvm/blimp_start.wav" // FirstSpawnOutput // { // Target blimp_hint // Action Show // } // Tank // { // Name "tankboss" // StartingPathTrackNode "blimp1_1" // Health 17000 // Speed 75 // Skin 5 // Scale 0.7 // ClassIcon blimp2_grenade_lite // Model "models/bots/boss_bot/boss_blimp.mdl" // MaxTurnRate 75 // Gravity 0 // RotatePitch 0 // EngineLoopSound "npc/combine_gunship/dropship_engine_distant_loop1.wav" // PingSound "npc/combine_gunship/ping_search.wav" // DisableTracks 1 // DisableChildModels 1 // DisableSmokeStack 1 // ReplaceModelCollisions 1 // SpawnTemplate "CarpetBomber" // OnKilledOutput // { // Target boss_dead_relay // Action Trigger // } // OnBombDroppedOutput // { // Target boss_deploy_relay // Action Trigger // } // } // } WaveSpawn { Name "wave05a" Where spawnbot TotalCount 30 MaxActive 12 SpawnCount 3 WaitBeforeStarting 10 WaitBetweenSpawns 3 TotalCurrency 100 TFBot { Template T_TFBot_Scout_Imp Skill Hard AddTemplate GatebotScout } } WaveSpawn { Name "wave05a" Where spawnbot TotalCount 4 MaxActive 4 SpawnCount 1 WaitBeforeStarting 20 WaitBetweenSpawns 15 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Soldier_Extended_Concheror_Fix Tag bot_giant AddTemplate GatebotSoldier } } WaveSpawn { Name "wave05b" WaitForAllSpawned wave05a Where spawnbot TotalCount 24 MaxActive 12 SpawnCount 12 WaitBeforeStarting 0 WaitBetweenSpawns 20 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Scout_Bonk_Vac_Bullet SpawnTemplate "powerup_logic_bystander" AddTemplate GatebotScout } TFBot { Template T_TFBot_Scout_Bonk_Vac_Blast SpawnTemplate "powerup_logic_bystander" AddTemplate GatebotScout } } } WaveSpawn { Name "wave05b" WaitForAllSpawned wave05a Where spawnbot TotalCount 15 MaxActive 15 SpawnCount 5 WaitBeforeStarting 0 WaitBetweenSpawns 8 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Giant_DemoMan_PrinceTavish Name "Giant Forgotten Knight" Item "Forgotten King's Pauldrons" Item "Forgotten King's Restless Head" Tag bot_giant SpawnTemplate "powerup_logic" AddTemplate GatebotDemoman } TFBot { Template T_TFBot_Medic_Strength SpawnTemplate "powerup_logic_medic" } TFBot { Template T_TFBot_Medic_Strength SpawnTemplate "powerup_logic_medic" } TFBot { Template T_TFBot_Medic_Strength SpawnTemplate "powerup_logic_medic" } TFBot { Template T_TFBot_Medic_Strength SpawnTemplate "powerup_logic_medic" } } } WaveSpawn { Name "wave05b" WaitForAllSpawned wave05a Where spawnbot TotalCount 8 MaxActive 2 SpawnCount 2 WaitBeforeStarting 12 WaitBetweenSpawns 12 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons_Deflector_Improved UseMeleeThreatPrioritization 1 Item "Mad Mask" Item "The Baronial Badge" Tag bot_giant ItemModel { ItemName "The Baronial Badge" Model "models/player/items/mvm_loot/heavy/robo_ushanka.mdl" } SpawnTemplate "powerup_logic_bystander" AddTemplate GatebotHeavy } TFBot { Template T_TFBot_Giant_Medic_Regen Item "The Virus Doctor" Attributes IgnoreEnemies Tag bot_giant SpawnTemplate "powerup_logic_bystander" AddTemplate Zombify_Medic } } } WaveSpawn { Name "wave05b_support" WaitForAllDead wave05a Where spawnbot TotalCount 42 MaxActive 6 SpawnCount 3 WaitBeforeStarting 12 WaitBetweenSpawns 3 TotalCurrency 0 Support Limited TFBot { Template T_TFBot_Soldier_Demon } } WaveSpawn { Name "wave05b_support" WaitForAllSpawned wave05a Where spawnbot TotalCount 60 MaxActive 4 SpawnCount 1 WaitBeforeStarting 12 WaitBetweenSpawns 0.5 TotalCurrency 0 Support 1 TFBot { Class Engineer ClassIcon engineer_widowmaker_nys Name "Widowmaker Engineer" Skill Normal Action FetchFlag WeaponRestrictions PrimaryOnly Item "The Widowmaker" SpawnTemplate "powerup_logic_bystander" AddTemplate Zombify_Engie } } WaveSpawn { Name "wave05_red" Where spawnbot_big TotalCount 3 MaxActive 2 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 5 TotalCurrency 0 Support 1 RandomSpawn 1 TFBot { Template T_TFBot_Red_Giant_Sniper } } WaveSpawn { Name "wave05_vip" Where spawnbot_mid TotalCount 4 MaxActive 4 SpawnCount 4 WaitBeforeStarting 5 WaitBetweenSpawns 0 TotalCurrency 0 RandomSpawn 1 Support Limited FirstSpawnOutput { Target cp_annotation Action Show } RandomChoice { RandomChoice { TFBot { Template T_TFBot_UAC_Scientist_1 Tag bot_vip } TFBot { Template T_TFBot_UAC_Scientist_2 Tag bot_vip } TFBot { Template T_TFBot_UAC_Scientist_3 Tag bot_vip } TFBot { Template T_TFBot_UAC_Scientist_4 Tag bot_vip } } } } WaveSpawn // Dummy { WaitForAllDead wave05_vip TotalCount 0 SpawnCount 0 WaitBeforeStarting 0 Support 1 FirstSpawnOutput { Target vip_dead_capped Action Trigger } } WaveSpawn { Name "vip_dead" WaitForAllDead wave05_vip Where spawnbot TotalCount 6 MaxActive 3 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 8 TotalCurrency 0 Support 1 RandomChoice { Squad { TFBot { Template T_TFBot_Giant_Breadcrab_Zombie } } } } WaveSpawn { Name "vip_dead" WaitForAllDead wave05_vip Where spawnbot TotalCount 24 MaxActive 9 SpawnCount 3 WaitBeforeStarting 3 WaitBetweenSpawns 3 TotalCurrency 0 Support 1 RandomChoice { Squad { TFBot { Template T_TFBot_Soldier_Demon_Buff AddTemplate Zombify_Soldier } } } } WaveSpawn { Name "vip_dead" WaitForAllDead wave05_vip Where spawnbot_breadcrab TotalCount 16 MaxActive 8 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0.25 TotalCurrency 0 Support 1 RandomChoice { Squad { TFBot { Template T_TFBot_Breadcrab_Zombie Action Mobber Tag breadcrab } } } } // WaveSpawn // { // Name "vipdead" // WaitForAllDead "wave05_vip" // Where spawnbot_somewhere // TotalCount 1 // MaxActive 1 // SpawnCount 1 // WaitBeforeStarting 0 // WaitBetweenSpawns 0 // TotalCurrency 0 // Support Limited // RandomChoice // { // Squad // { // HalloweenBoss // HalloweenBoss spawner. Spawns a boss // { // IsMiniBoss 1 // Shows icon as mini boss (Default: 1) // ClassIcon horsemann_lite // ClassIcon to use // BossType HHH // Boss type: MONOCULUS, Merasmus, HHH, SkeletonSmall, SkeletonNormal, SkeletonKing. Skeletons default limit is 30 active at once unless modified by MaxActiveSkeletons // SpawnCurrencyPack 0 // If set, the boss will drop money on death. Otherwise its distributed automatically (Default: 1) // TeamNum 5 // Team number for Monoculus (2 - red, 3 - blu, 5 - neutral) (Default: 5) // Health 8000 // Boss health, 0 means default health (Default: 0) // Lifetime 9999 // Boss lifetime for Monoculus, Merasmus and skeletons in seconds (Default: infinite) // // Origin "0 100 0" // If set, spawns boss at the specified position rather than at where location // DamageMultiplier 0.625 //50% target's hp // } // } // } // } } Wave // Wave 6 { WaitWhenDone 65 Checkpoint Yes StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } InitWaveOutput { Target spawntele_start Action Trigger } SpawnTemplate "TankFire" WaveSpawn { Name "wave06a" Where spawnbot TotalCount 2 MaxActive 2 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 15 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Heavyweapons_HealOnAll } } WaveSpawn { Name "wave06a" Where spawnbot TotalCount 4 MaxActive 2 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 1 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Scout_Bonk ClassIcon scout_bonk_fire_nys Tag bot_giant Name "Giant Fire Bonk Scout" Item "The Atomizer" ItemAttributes { ItemName "Bonk! Atomic Punch" "effect cond override" 69 } ItemAttributes { ItemName "The Atomizer" "single wep deploy time increased" 1 "dmg penalty vs players" 1 } ItemAttributes { ItemName "Bonk Helm" "set item tint rgb" 14444556 } AddTemplate Zombify_Scout } } WaveSpawn { Name "wave06a" Where spawnbot TotalCount 27 MaxActive 9 SpawnCount 3 WaitBeforeStarting 9 WaitBetweenSpawns 3 TotalCurrency 100 RandomChoice { TFBot { Template T_TFBot_Demoman Skill Easy Name "Bomber Zombie" Item "Hair of The Dog" Item "Scottish Snarl" AddTemplate Zombify_Demo } TFBot { Template T_TFBot_Demoman Skill Hard Attributes HoldFireUntilFullReload Name "Bomber Zombie" Item "Hair of The Dog" Item "Scottish Snarl" AddTemplate Zombify_Demo } } } // WaveSpawn // { // Name "wave06a" // Where spawnbot // TotalCount 3 // MaxActive 3 // SpawnCount 1 // WaitBeforeStarting 15 // WaitBetweenSpawns 15 // TotalCurrency 100 // TFBot // { // Template T_TFBot_Giant_Soldier_Spammer_Hatted // Attributes AlwaysCrit // Tag bot_giant // } // } WaveSpawn { Name "wave06b" WaitForAllDead wave06a Where spawnbot TotalCount 8 MaxActive 2 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 8 TotalCurrency 100 TFBot { Template T_TFBot_Sniper_Huntsman_Master } } WaveSpawn { Name "wave06b" WaitForAllDead wave06a Where spawnbot TotalCount 20 MaxActive 8 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 3 TotalCurrency 100 Squad { TFBot { Class Heavyweapons Skill Hard // AimAt Head Item "concealedkiller_minigun_kingofthejungle" ItemAttributes { ItemName "concealedkiller_minigun_kingofthejungle" "set_item_texture_wear" 0.2 } AddTemplate Zombify_Heavy } TFBot { Template T_TFBot_Medic_Overhealer } } } WaveSpawn // Tank 42000 HP { Name "wave06_tank" WaitForAllDead wave06a TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 0 TotalCurrency 200 FirstSpawnOutPut { Target tankfire_start_relay Action Trigger } DoneOutput { Target fire_ring Action kill } Tank { Name "tankboss_fire" StartingPathTrackNode "boss_path_1" Health 42000 Speed 75 Skin 1 ClassIcon tank_ring Model "models/bots/boss_bot/boss_tank_color.mdl" SpawnTemplate "TankDragon" ReplaceModelCollisions 1 DisableSmokeStack 1 OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name "wave06c" WaitForAllSpawned wave06b Where spawnbot TotalCount 15 MaxActive 15 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0.5 TotalCurrency 50 TFBot { Template T_TFBot_Demo_Burst_Fix Attributes AlwaysCrit AddTemplate Zombify_Demo } } WaveSpawn { Name "wave06c" WaitForAllSpawned wave06b Where spawnbot TotalCount 4 MaxActive 2 SpawnCount 2 WaitBeforeStarting 8 WaitBetweenSpawns 10 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Giant_Soldier_RocketRain Tag bot_giant AddTemplate Zombify_Soldier } TFBot { Template T_TFBot_Giant_Medic_Kritz Attributes IgnoreEnemies Tag bot_giant AddTemplate Zombify_Medic } } } WaveSpawn { Name "wave06c" WaitForAllSpawned wave06b Where spawnbot TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 20 WaitBetweenSpawns 0 TotalCurrency 200 TFBot { Template T_TFBot_Chief_Heavy_Plasma } } // WaveSpawn // { // Name "wave06_support" // Where spawnbot // TotalCount 40 // MaxActive 1 // SpawnCount 1 // WaitBeforeStarting 10 // WaitBetweenSpawnsAfterDeath 15 // TotalCurrency 0 // Support 1 // TFBot // { // Template T_TFBot_Pyro_Airblast // } // } // WaveSpawn // { // Name "wave06_red" // Where spawnbot_big // TotalCount 2 // MaxActive 1 // SpawnCount 1 // WaitBeforeStarting 2 // WaitBetweenSpawns 20 // TotalCurrency 0 // Support 1 // RandomChoice // { // TFBot // { // Template T_TFBot_Giant_Soldier_Extended_Concheror_Fix // //Name "Giant Healing Aura Soldier" // ClassIcon red2_lite // // ItemAttributes // // { // // ItemName "The Concheror" // // "effect cond override" 55 // // } // AddTemplate RedSoldierBotGiant // } // TFBot // { // Template T_TFBot_Giant_Soldier_Extended_Battalion_Fix // // Name "Giant Resistance Soldier" // ClassIcon red2_lite // // ItemAttributes // // { // // ItemName "The Battalion's Backup" // // "effect cond override" 93 // // } // AddTemplate RedSoldierBotGiant // } // TFBot // { // Template T_TFBot_Giant_Soldier_Extended_Buff_Banner_Fix // // Name "Giant Strength Soldier" // ClassIcon red2_lite // Item "The Direct Hit" // // ItemAttributes // // { // // ItemName "The Buff Banner" // // "effect cond override" 90 // // } // AddTemplate RedSoldierBotGiant // } // } // } WaveSpawn { Name "wave06red" Where respawnpoints TotalCount 60 MaxActive 2 SpawnCount 1 WaitBeforeStarting 2 WaitBetweenSpawns 4 TotalCurrency 0 Support 1 RandomChoice { TFBot { Template T_TFBot_Scout_Shortstop ClassIcon red2_lite Skill Expert Tag bot_dropped Item "The B.A.S.E. Jumper" CharacterAttributes { "cancel falling damage" 1 "increased air control" 5 } AddTemplate RedScoutBot } TFBot { Template T_TFBot_Giant_Scout_Spammer ClassIcon red2_lite Tag bot_dropped Item "The B.A.S.E. Jumper" Item "The Fast Learner" CharacterAttributes { "cancel falling damage" 1 "increased air control" 5 } AddTemplate RedScoutBotGiant } TFBot { Template T_TFBot_Red_Giant_Railgun Tag bot_dropped Item "The B.A.S.E. Jumper" CharacterAttributes { "cancel falling damage" 1 "increased air control" 5 } } TFBot { Template T_TFBot_Giant_Boxing_Heavy ClassIcon red2_lite Tag bot_dropped Item "The B.A.S.E. Jumper" CharacterAttributes { "cancel falling damage" 1 "increased air control" 5 } AddTemplate RedHeavyBotGiant } TFBot { Template T_TFBot_Giant_Bowman ClassIcon red2_lite Tag bot_dropped Item "The B.A.S.E. Jumper" CharacterAttributes { "cancel falling damage" 1 "increased air control" 5 "head scale" 1 } AddTemplate RedSniperBotGiant } } } } Wave // Wave 7 { WaitWhenDone 65 Checkpoint Yes StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } InitWaveOutput { Target spawntele_start Action Trigger } Explanation { Line "{0384BE}The size of the hordes are getting larger by the minute." Line "{0384BE}Luckily, our support is ramping up too." Line "{0384BE}Some of {red}Mann. co's{0384BE} finest mercenaries have volunteered to assist us." Line "{0384BE}Be sure to pick up some of their weapons too." } WaveSpawn { Name "wave07a" Where spawnbot TotalCount 2 MaxActive 2 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 20 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Soldier_Nuke_BlackBox } } WaveSpawn { Name "wave07a" Where spawnbot TotalCount 18 MaxActive 6 SpawnCount 6 WaitBeforeStarting 10 WaitBetweenSpawns 2 TotalCurrency 100 TFBot { Template T_TFBot_Heavyweapons_Deflector Attributes AlwaysCrit Item "Mad Mask" Item "The Baronial Badge" ItemModel { ItemName "The Baronial Badge" Model "models/player/items/mvm_loot/heavy/robo_ushanka.mdl" } AddTemplate Zombify_Heavy } } WaveSpawn { Name "wave07b" WaitForAllDead wave07a Where spawnbot TotalCount 24 MaxActive 12 SpawnCount 3 WaitBeforeStarting 0 WaitBetweenSpawns 3 TotalCurrency 100 TFBot { Class Engineer Name "Laser Tag" ClassIcon scout_capper_nys Skill Hard Action FetchFlag WeaponRestrictions SecondaryOnly Item "The C.A.P.P.E.R" Item "Iron Lung" AddTemplate Zombify_Engie } } WaveSpawn { Name "wave07b" WaitForAllDead wave07a Where spawnbot TotalCount 6 MaxActive 4 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 8 TotalCurrency 200 Squad { TFBot { Class Spy Classicon spy_enforcer_nys Name "Giant Enforcer Spy" Health 3000 Attributes MiniBoss Attributes AlwaysCrit Action FetchFlag AimTrackingInterval 0.001 AimAt Head WeaponRestrictions PrimaryOnly Tag bot_giant SpawnTemplate "powerup_logic" Item "The Enforcer" Item "The Counterfeit Billycock" ItemAttributes { ItemName "The Enforcer" "dmg pierces resists absorbs" 0 "reload time decreased" 0.0025 "fire rate penalty" 2 "bullets per shot bonus" 10 "damage penalty" 0.2 "weapon spread bonus" 2.5 } CharacterAttributes { "cannot disguise" 1 "move speed bonus" 0.55 "damage force reduction" 0.6 "airblast vulnerability multiplier" 0.6 "override footstep sound set" 7 } AddTemplate Zombify_Spy } TFBot { Template T_TFBot_Giant_Medic_King SpawnTemplate "powerup_logic_medic" } } } WaveSpawn { Name "wave07b" WaitForAllDead wave07a Where spawnbot TotalCount 18 MaxActive 18 SpawnCount 6 WaitBeforeStarting 0 WaitBetweenSpawns 6 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Pyro_Axtinguisher_Combo AddTemplate Zombify_Pyro } TFBot { Template T_TFBot_Soldier_Demon_Fire AddTemplate Zombify_Soldier } TFBot { Template T_TFBot_Soldier_Demon_Fire AddTemplate Zombify_Soldier } TFBot { Template T_TFBot_Soldier_Demon_Fire AddTemplate Zombify_Soldier } TFBot { Template T_TFBot_Soldier_Demon_Fire AddTemplate Zombify_Soldier } TFBot { Template T_TFBot_Soldier_Demon_Fire AddTemplate Zombify_Soldier } } } WaveSpawn // Tank 18000 HP { Name "wave07_blimp" WaitForAllDead wave07b TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 200 FirstSpawnOutput { Target blimp_hint Action Show } Tank { Name "tankboss" StartingPathTrackNode "blimp1_1" Health 18000 Speed 75 Skin 5 Speed 75 Scale 0.7 ClassIcon blimp2_grenade_lite Model "models/bots/boss_bot/boss_blimp.mdl" MaxTurnRate 75 Gravity 0 RotatePitch 0 EngineLoopSound "npc/combine_gunship/dropship_engine_distant_loop1.wav" PingSound "npc/combine_gunship/ping_search.wav" DisableTracks 1 DisableChildModels 1 DisableSmokeStack 1 ReplaceModelCollisions 1 SpawnTemplate "CarpetBomber" OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } // WaveSpawn // { // Name "wave07c" // WaitForAllDead wave07b // Where spawnbot // TotalCount 6 // MaxActive 6 // SpawnCount 2 // WaitBeforeStarting 0 // WaitBetweenSpawns 15 // TotalCurrency 100 // Squad // { // TFBot // { // Template T_TFBot_Giant_Pyro_Fury // Name "Dragon" // Tag bot_giant // } // TFBot // { // Template T_TFBot_Giant_Medic_Kritz // } // } // } WaveSpawn { Name "wave07c" WaitForAllDead wave07b Where spawnbot TotalCount 22 MaxActive 8 SpawnCount 4 WaitBeforeStarting 2 WaitBetweenSpawns 1 TotalCurrency 50 Squad { TFBot { Template T_TFBot_Sniper_Huntsman_2 Attributes AlwaysCrit AddTemplate Zombify_Sniper } TFBot { Template T_TFBot_Medic_Quick_Uber Name "Undead Mender" Item "Fuel Injector" AddTemplate Zombify_Medic } } } WaveSpawn { Name "wave07c" WaitForAllDead wave07b Where spawnbot TotalCount 15 MaxActive 5 SpawnCount 1 WaitBeforeStarting 2 WaitBetweenSpawns 0.5 TotalCurrency 50 TFBot { Template T_TFBot_Pyro_Axtinguisher_Combo } } WaveSpawn { Name "wave07c" WaitForAllDead wave07b Where spawnbot TotalCount 3 MaxActive 3 SpawnCount 3 WaitBeforeStarting 20 WaitBetweenSpawns 0 TotalCurrency 2000 Squad { TFBot { Template T_TFBot_Giant_Soldier_Spammer_Hatted Name "Giant Rapid Buff Soldier" ClassIcon soldier_banner_trio_spammer_lite Attributes SpawnWithFullCharge Item "The Buff Banner" Item "The Crosslinker's Coil" CharacterAttributes { "deploy time decreased" 0.5 "increase buff duration" 10 } AddTemplate Zombify_Soldier } TFBot { Template T_TFBot_Giant_Soldier_Spammer_Hatted Name "Giant Rapid Battalion Soldier" ClassIcon soldier_banner_trio_spammer_lite Attributes SpawnWithFullCharge Item "The Battalion's Backup" Item "The Grenadier's Softcap" CharacterAttributes { "deploy time decreased" 0.5 "increase buff duration" 10 } AddTemplate Zombify_Soldier } TFBot { Template T_TFBot_Giant_Soldier_Spammer_Hatted Name "Giant Rapid Conch Soldier" ClassIcon soldier_banner_trio_spammer_lite Attributes SpawnWithFullCharge Item "The Concheror" Item "Soldier Samurai Hat" CharacterAttributes { "deploy time decreased" 0.5 "increase buff duration" 10 } AddTemplate Zombify_Soldier } } } WaveSpawn { Name "wave07_support" WaitForAllDead wave07a Where spawnbot TotalCount 1984 MaxActive 3 SpawnCount 3 WaitBeforeStarting 6 WaitBetweenSpawns 6 TotalCurrency 0 Support 1 TFBot { Template T_TFBot_Soldier_Demon Skill Normal AddTemplate Zombify_Soldier } } WaveSpawn { Name "wave07_red" Where respawnpoints TotalCount 1984 MaxActive 3 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 10 TotalCurrency 0 Support 1 RandomChoice { TFBot { Template T_TFBot_Red_Soldier_Wasp_Battalion } TFBot { Template T_TFBot_Red_Demo_Burst_Human } TFBot { Template T_TFBot_Red_Heavyweapons_Tomislav } TFBot { Template T_TFBot_Red_Pyro_Thruster } TFBot { Template T_TFBot_Red_Sniper_Sleeper } TFBot { Template T_TFBot_Scout_Mercenary } TFBot { Template T_TFBot_Red_Soldier_DirectHit_Parachute } TFBot { Template T_TFBot_Red_Heavyweapons_Bomber_Para } } } WaveSpawn { Name "wave07_red_engi" Where spawnbot_big TotalCount 2 MaxActive 1 SpawnCount 1 WaitBeforeStarting 2 WaitBetweenSpawns 35 TotalCurrency 0 Support 1 RandomSpawn 1 TFBot { Name "Giant Engineer" Class Engineer ClassIcon red2_lite Health 3000 Scale 1.5 Skill Expert Attributes MiniBoss ExtAttr BuildDispenserAsTeleporter DropWeapon 1 TeleportWhere respawnpoints Item "Nailbiter" Item "Potato Hat" Item "Portal 2 Pin" CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.6 "airblast vulnerability multiplier" 0.6 "override footstep sound set" 6 "voice pitch scale" 0 "head scale" 0.7 "building scale" 1.5 "engineer sentry build rate multiplier" 2 "engy sentry damage bonus" 1.5 "engy sentry radius increased" 2 "engy building health bonus" 3 "engy dispenser radius increased" 20 "mult dispenser rate" 5 "construction rate increased" 10 } AddTemplate RedEngieBot } } } Wave // Wave 8 { WaitWhenDone 65 Checkpoint Yes StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } InitWaveOutput { Target spawntele_start Action Trigger } SpawnTemplate "TitanSpawnShake" SpawnTemplate "BossTele" // SpawnTemplate "Boss_Z_Axis" Explanation { Line "{0384BE}We've detected a mysterious entity emerging from the Void." Line "{0384BE}According to our data, this entity is classified as an {red}EXTREME{0384BE} threat." Line "{0384BE}Fortunately, we've provided you with all the assets needed to take down this monstrosity." // Line "{0384BE}To defeat him, we built a monster of our own, {red}Titanotron{0384BE} ." // Line "{0384BE}The entity doesn't come alone, so let our metal beast do the job and hope he defeats that thing, too." Line "{green}Note: Type snd_restart in console to stop music on wave completion." } WaveSpawn { Name "fakeicon" Where spawnbot TotalCount 0 MaxActive 0 SpawnCount 0 WaitBeforeStarting 0 WaitBetweenSpawns 0 TotalCurrency 0 Support Limited TFBot { Class Scout ClassIcon red2_lite } } WaveSpawn // Dummy { Name "music" TotalCount 0 SpawnCount 0 WaitBeforeStarting 0 FirstSpawnWarningSound "#bombs_for_throwing_at_you.mp3" Support 1 } WaveSpawn // Dummy { Name "music" TotalCount 0 SpawnCount 0 WaitBeforeStarting 8 FirstSpawnWarningSound "ambient/alarms/apc_alarm_pass1.wav" Support 1 } WaveSpawn // Dummy { Name "music" TotalCount 0 SpawnCount 0 WaitBeforeStarting 8 FirstSpawnWarningSound "ambient/alarms/apc_alarm_pass1.wav" Support 1 } WaveSpawn // Dummy { Name "music" TotalCount 0 SpawnCount 0 WaitBeforeStarting 10 FirstSpawnWarningSound "vo/heavy_sf12_attack02.mp3" Support 1 } WaveSpawn // Dummy { Name "music" TotalCount 0 SpawnCount 0 WaitBeforeStarting 348 FirstSpawnWarningSound "#music/hl1_song15.mp3" Support 1 } WaveSpawn // Dummy { Name "music" TotalCount 0 SpawnCount 0 WaitBeforeStarting 471 FirstSpawnWarningSound "#music/hl2_song3.mp3" Support 1 } WaveSpawn { Name "wave08_boss" Where spawnbot_titan TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 16 WaitBetweenSpawns 0 TotalCurrency 1984 // Support Limited FirstSpawnWarningSound "misc/halloween/spell_spawn_boss.wav" FirstSpawnOutput { Target shake_effect_titan Action StartShake } TFBot { Template T_TFBot_Ramiel SpawnTemplate "kill_tank" } } WaveSpawn { Name "wave08_redtitan" Where spawnbot_redtitan TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 16.5 WaitBetweenSpawns 0 TotalCurrency 0 Support Limited RandomChoice { Squad { TFBot { Template T_TFBot_Red_Boss_Soldier_Mortar SpawnTemplate "nocrush" } } } } WaveSpawn // Dummy { WaitForAllDead "wave08_redtitan" TotalCount 0 SpawnCount 0 WaitBeforeStarting 0 Support Limited FirstSpawnOutput { Target boss_deploy_relay Action Trigger } } WaveSpawn { Name "wave08_bosssupport" Where spawnbot TotalCount 40 MaxActive 3 SpawnCount 1 WaitBeforeStarting 20 WaitBetweenSpawns 10 TotalCurrency 0 Support 1 RandomChoice { TFBot { Template T_TFBot_Giant_Soldier_Extended_Battalion_Fix Tag bot_tele CharacterAttributes { "cancel falling damage" 1 } AddTemplate Zombify_Soldier } TFBot { Template T_TFBot_Giant_Soldier_Crit_Improved Tag bot_tele Name "Giant Charged Zombie" Item "Idiot Box" Item "Steel Pipes" Item "Shoestring Budget" CharacterAttributes { "cancel falling damage" 1 } AddTemplate Zombify_Soldier } TFBot { Template T_TFBot_Giant_Soldier_RocketShotgun_Improved Tag bot_tele CharacterAttributes { "cancel falling damage" 1 } AddTemplate Zombify_Soldier } TFBot { Template T_TFBot_Giant_Demo_Burst Tag bot_tele CharacterAttributes { "cancel falling damage" 1 } AddTemplate Zombify_Demo } TFBot { Template T_TFBot_Giant_DemoMan_PrinceTavish Attributes AlwaysCrit Name "Giant Forgotten Knight" Item "Forgotten King's Pauldrons" Item "Forgotten King's Restless Head" Tag bot_tele AddTemplate Zombify_Demo } TFBot { Template T_TFBot_Giant_Heavyweapons_Improved Tag bot_tele UseMeleeThreatPrioritization 1 CharacterAttributes { "cancel falling damage" 1 } AddTemplate Zombify_Heavy } TFBot { Template T_TFBot_Giant_Heavyweapons_Shotgun Tag bot_tele UseMeleeThreatPrioritization 1 CharacterAttributes { "cancel falling damage" 1 } AddTemplate Zombify_Heavy } TFBot { Template T_TFBot_Giant_Heavyweapons_Deflector_Improved Tag bot_tele UseMeleeThreatPrioritization 1 Item "Mad Mask" Item "The Baronial Badge" ItemModel { ItemName "The Baronial Badge" Model "models/player/items/mvm_loot/heavy/robo_ushanka.mdl" } CharacterAttributes { "cancel falling damage" 1 } AddTemplate Zombify_Heavy } TFBot { Template T_TFBot_Giant_Scout_FAN Attributes AlwaysCrit Tag bot_tele UseMeleeThreatPrioritization 1 CharacterAttributes { "cancel falling damage" 1 } AddTemplate Zombify_Scout } TFBot { Template T_TFBot_Giant_Pyro_Fury ClassIcon pyro Tag bot_tele UseMeleeThreatPrioritization 1 CharacterAttributes { "cancel falling damage" 1 } AddTemplate Zombify_Pyro } } } WaveSpawn { Name "wave07_boss_supportcommon" Where spawnbot TotalCount 40 MaxActive 8 SpawnCount 1 WaitBeforeStarting 20 WaitBetweenSpawns 1 TotalCurrency 0 Support 1 RandomChoice { TFBot { Template T_TFBot_Sniper_Battle Tag bot_tele CharacterAttributes { "cancel falling damage" 1 } } TFBot { Template T_TFBot_Heavyweapons_Fist Name "Brute" Item "The Warsworn Helmet" Tag bot_tele CharacterAttributes { "cancel falling damage" 1 } AddTemplate Zombify_Heavy } TFBot { Template T_TFBot_Scout_FAN ClassIcon scout_fan_giant Tag bot_tele CharacterAttributes { "cancel falling damage" 1 } AddTemplate Zombify_Scout } TFBot { Template T_TFBot_Soldier_RocketShotgun ClassIcon soldier_blackbox_giant Tag bot_tele CharacterAttributes { "cancel falling damage" 1 } AddTemplate Zombify_Soldier } TFBot { Template T_TFBot_Heavyweapons_Deflector ClassIcon heavy_giant Tag bot_tele CharacterAttributes { "cancel falling damage" 1 } AddTemplate Zombify_Heavy } TFBot { Template T_TFBot_Pyro Skill Hard Tag bot_tele CharacterAttributes { "cancel falling damage" 1 } AddTemplate Zombify_Pyro } } } } }