/////////////////////////////////////////////////////////////////////////// // BEGIN POP FILE /////////////////////////////////////////////////////////////////////////// #base robot_giant.pop #base robot_standard.pop //Made by Wacev //Made for fun RandomBullshitGo { StartingCurrency 1000 RespawnWaveTime 30 FixedRespawnWaveTime 1 CanBotsAttackWhileInSpawnRoom Yes LuaScriptFile "scripts/ledgerdemain_l4d2.lua" BonusRatioHalf 1.95 BonusRatioFull 2 ExtendedUpgradesOnly 1 BotsAreHumans 1 BuybacksPerWave 0 BodyPartScaleSpeed 26 BotHumansHaveRobotVoice 1 BluHumanFlagCapture 1 BluHumanFlagPickup 1 DeathPenalty 0 DisplayRobotDeathNotice 1 ForceHoliday 2 ForceRobotBleed 1 FixedBuybacks 1 RespecEnabled 1 FlagEscortCountOffset -4 FixSetCustomModelInput 1 HealOnKillOverhealMelee 1 MaxSpeedLimit 1337 MaxSpectators 0 MinibossSentrySingleKill 1 NoJoinMidwave 1 NoReanimators 1 NoHolidayPickups 1 NoThrillerTaunt 1 NoRomevisionCosmetics 1 AllowBotExtraSlots 1 RobotLimit 50 RemoveGrapplingHooks 1.5 SandmanStun 0 StandableHeads 1 SniperAllowHeadshots 0 TextPrintTime 0 WaveStartCountdown 3 StuckTimeMultiplier 3.5 FastNPCUpdate 1 NoCreditsVelocity 1 NoMissionInfo 0 PrecacheSound "trespasser/de_shot1.wav" PrecacheSound "trespasser/mp40f1.wav" PrecacheSound "trespasser/sg-1.wav" PrecacheSound "weapons\mp40_shoot.wav" PrecacheSound "weapons\auto_shotgun_fire_1.wav" PrecacheSound "ak_shoot.wav" PrecacheSound "lmg_shoot.wav" PrecacheSound "crush\hubby_shoot.wav" PrecacheSound "smg_shoot_giant3.wav" PrecacheSound "trespasser\tank_yell_10.wav" PrecacheSound "shadows/gas_spit.mp3" PrecacheSound "shadows\smoker_death.mp3" PrecacheSound "shadows/smoker_launchtongue_02.mp3" PrecacheSound "shadows/charger_death.mp3" PrecacheSound "shadows\tank_death_01.mp3" PrecacheSound "shadows/tank_punch_1.mp3" PrecacheSound "shadows/gas_spit.mp3" PrecacheSound "shadows/gas_death.mp3" PrecacheSound "shadows/thrown_projectile_hit_01.mp3" PrecacheSound "trespasser\tank_yell_10.wav" PrecacheSound "billwin.wav" PrecacheModel "models\kirillian\infected\wanker_v4.mdl" PrecacheModel "models\weapons\c_models\c_rapidfire\c_rapidfire_1.mdl" PrecacheModel "models/workshop/weapons/c_models/c_winger_distol/c_winger_distol.mdl" PrecacheModel "models\weapons\c_models\c_scopelessrifle\c_scopelessrifle.mdl" PrecacheModel "models\weapons\c_models\c_ak47\c_mmg.mdl" PrecacheModel "models\weapons\c_models\c_brief_negotiator\c_lmg.mdl" PrecacheModel "models\workshop\weapons\c_models\c_golfclub\c_golfclub.mdl" PrecacheModel "models\weapons\c_models\c_wooden_bat\c_wooden_bat.mdl" PrecacheModel "models\weapons\c_models\c_nitro\c_nitro.mdl" PrecacheModel "models\props_frontline\helicopter_windows.mdl" PrecacheModel "models\props_gameplay\cap_square_256.mdl" PrecacheModel "models/weapons/c_models/c_soldier_arms_rocketless.mdl" PrecacheModel "models\weapons\c_models\c_steel_battalion\c_steel_battalion.mdl" PrecacheModel "models\weapons\c_models\c_heckler\c_smg.mdl" PrecacheModel "models\workshop\weapons\c_models\c_sshockgun\c_sshockgun.mdl" DisableSound "heavy_mvm_giant_robot01" DisableSound "heavy_mvm_giant_robot02" DisableSound "heavy_mvm_giant_robot03" DisableSound "heavy_mvm_giant_robot04" DisableSound "engineer_mvm_giant_robot01" DisableSound "engineer_mvm_giant_robot02" DisableSound "engineer_mvm_giant_robot03" DisableSound "soldier_mvm_giant_robot01" DisableSound "soldier_mvm_giant_robot02" DisableSound "soldier_mvm_giant_robot03" DisableSound "soldier_mvm_giant_robot04" DisableSound "medic_mvm_giant_robot01" DisableSound "medic_mvm_giant_robot02" DisableSound "medic_mvm_giant_robot03" DisableSound "music.mvm_end_last_wave" DisableSound "music.mvm_end_mid_wave" DisableSound "music.mvm_end_tank_wave" DisableSound "music.mvm_end_wave" DisableSound "music.mvm_lost_wave" DisableSound "music.mvm_start_last_wave" DisableSound "music.mvm_start_mid_wave" DisableSound "music.mvm_start_tank_wave" DisableSound "music.mvm_start_wave" DisableSound "Announcer.MVM_Get_To_Upgrade" DisableSound "Announcer.MVM_Spy_Alert" DisableSound "Announcer.mvm_spybot_death" DisableSound "Announcer.mvm_spybot_death_all" DisableSound "Announcer.MVM_First_Wave_Start" DisableSound "Announcer.MVM_Wave_Start" DisableSound "Announcer.MVM_Wave_End" DisableSound "Announcer.MVM_Wave_Lose" DisableSound "Announcer.MVM_Final_Wave_Start" DisableSound "Announcer.MVM_Final_Wave_End" DisableSound "Announcer.MVM_Robots_Planted" DisableSound "Announcer.MVM_All_Dead" DisableSound "Announcer.MVM_Sentry_Buster_Alert" DisableSound "Announcer.MVM_Sentry_Buster_Alert_Another" DisableSound "Announcer.MVM_General_Wave_Start" DisableSound "Announcer.MVM_Game_Over_Loss" DisableSound "Announcer.MVM_Bomb_Alert_Entered" DisableSound "Announcer.MVM_Bomb_Alert_Near_Hatch" DisableSound "Announcer.MVM_Bomb_Alert_Deploying" DisableSound "Announcer.MVM_Bonus" DisableSound "Announcer.mvm_spybot_death" DisableSound "Announcer.mvm_spybot_death_all" DisableSound "Announcer.MVM_Spy_Alert" ///////////////// //TEMPLATES ///////////////// PointTemplates { MissionName { logic_relay { "targetname" "name" "OnTrigger" "tf_objective_resource,$SetClientProp$m_iszMvMPopfileName,L4D2 (TF2),0,-1" } OnSpawnOutput { Target "name" Action "trigger" Delay 0 } } playertracker { OnSpawnOutput { Target "cap_counter_alive" Action "Add" Param 1 } OnParentKilledOutput { Target "cap_counter_alive" Action "Subtract" Param 1 } } PT_common { OnParentKilledOutput { Target "popscript" Action "$addCashOnKillWeak" } } PT_special { OnParentKilledOutput { Target "popscript" Action "$addCashOnKillSpecial" } } PT_tank { OnParentKilledOutput { Target "popscript" Action "$addCashOnKillTank" } } PT_Boomer { NoFixup 1 logic_relay { "targetname" "boomer_death" "OnTrigger" "boomer_explode_fx,Start,,0,-1" "OnTrigger" "boomer_hurt,TurnOn,,0,-1" "OnTrigger" "boomer_hurt,TurnOff,,0.5,-1" "OnTrigger" "boomer_jarate,Enable,,0,-1" "OnTrigger" "boomer_jarate,Disable,,0.5,-1" "OnTrigger" "!activator,$Suicide,,0.1,-1" } NoFixup 1 info_particle_system { "targetname" "boomer_explode_fx" "origin" "0 0 0" "angles" "0 90 0" "start_active" "0" "effect_name" "rd_robot_explosion" } NoFixup 1 info_particle_system { "targetname" "boomer_explode_fx" "origin" "0 0 32" "angles" "0 0 0" "start_active" "0" "effect_name" "blood_decap" } NoFixup 1 info_particle_system { "targetname" "boomer_explode_fx" "origin" "0 0 32" "angles" "0 0 0" "start_active" "0" "effect_name" "tfc_sniper_mist" } NoFixup 1 info_particle_system { "targetname" "boomer_explode_fx" "origin" "0 0 32" "angles" "0 0 0" "start_active" "0" "effect_name" "breadjar_impact" } OnParentKilledOutput { Target "popscript" Action "$addCashOnKillSpecial" } OnParentKilledOutput { Target "popscript" Action "$boomerExplode" Parm "activator" } } resupply_zone { prop_dynamic { "targetname" "locker" "model" "models/props_gameplay/resupply_locker.mdl" "solid" "0" "angles" "0 90 0" "origin" "-423 -433 64" "disableshadows" "1" "rendermode" "1" "renderamt" "255" "modelscale" "0.75" } func_regenerate { "targetname" "resupply" "associatedmodel" "locker" "TeamNum" "2" "origin" "-342 -223 64" "mins" "-256 -200 -256" "maxs" "256 200 256" } } corelogic { NoFixup 1 logic_auto { "targetname" "mainrelay" "OnMapSpawn" "func_nav_avoid,Kill,,0,-1" "OnMapSpawn" "func_nav_prefer,Kill,,0,-1" "OnMapSpawn" "func_respawnroomvisualizer,Kill,,0,-1" "OnMapSpawn" "func_respawnroom,Kill,,0,-1" "OnMapSpawn" "func_door,Lock,,0,-1" "OnMapSpawn" "func_upgradestation,Enable,,0,-1" "OnMapSpawn" "forward_station,kill,,0,-1" "OnMapSpawn" "filter_red,kill,,0,-1" "OnMapSpawn" "breaks,Show,,0,-1" "OnMapSpawn" "merasmus*,kill,,0,-1" "OnMapSpawn" "item_ammopack_medium,Kill,,0,-1" "OnMapSpawn" "item_ammopack_full,Kill,,0,-1" "OnMapSpawn" "item_healthkit_medium,Kill,,0,-1" "OnMapSpawn" "item_healthkit_full,Kill,,0,-1" "OnMapSpawn" "intel_*,Kill,,0,-1" "OnMapSpawn" "bombpath_arrows*,Kill,,0,-1" "OnMapSpawn" "resupply,Enable,,0,-1" "OnMapSpawn" "wave_start_relay,AddOutput,OnTrigger func_door:Unlock:0:-1" "OnMapSpawn" "wave_start_relay,AddOutput,OnTrigger resupply:Disable:0:-1" "OnMapSpawn" "wave_start_relay,AddOutput,OnTrigger navman:RecomputeBlockers:0:-1" "OnMapSpawn" "wave_start_relay,AddOutput,OnTrigger func_door:Open:0:-1" "OnMapSpawn" "wave_finished_relay,AddOutput,OnTrigger break:Show:0:-1" "OnMapSpawn" "wave_finished_relay,AddOutput,OnTrigger resupply:Enable:0:-1" } tf_point_nav_interface { targetname navman } filter_activator_tfteam { targetname filter_red_backup teamnum 2 negated 0 // anyone who is red passes } filter_activator_tfteam { targetname filter_zombies teamnum 1 negated 0 // anyone who is blue passes } } annotations { NoFixup 1 training_annotation { "targetname" "breaks" "display_text" "There will be a break after every tank wave!" "lifetime" "10" "origin" "-342 -439 112" } training_annotation { "targetname" "break" "display_text" "BREAK" "lifetime" "10" "origin" "-342 -439 112" } } crashed_helicopter { prop_dynamic { "classname" "prop_dynamic" "model" "models\props_frontline\helicopter_windows.mdl" "disableshadows" "1" "modelscale" "1.4" "angles" "60 281.5 0" "origin" "273.819 -1120.04 -15.1561" "SetBodyGroup" "0" "skin" "0" "solid" "6" "CollisionGroup" 5 "spawnflags" "0" "DefaultAnim" "ref" } info_particle_system { "targetname" "helicopter_smoke" "origin" "330 -1162 120" "angles" "0 0 0" "start_active" "0" "effect_name" "h2013_corpse_smoke" } func_forcefield { "disablereceiveshadows" "0" "origin" "280.5 -1160.5 49" "renderamt" "255" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "10" "TeamNum" "4" "targetname" "spawnbarrierA1" "mins" "-40 -60 -200" "maxs" "40 60 200" "StartDisabled" "0" } logic_auto { "targetname" "helicopter_auto" "OnMapSpawn" "helicopter_smoke,Start,,0,-1" } } ending_template { prop_dynamic { "targetname" "cave_win_holo" "classname" "prop_dynamic" "model" "models\props_gameplay\cap_square_256.mdl" "disableshadows" "1" "origin" "-1130 -7575 -220" "SetBodyGroup" "0" "skin" "1" "solid" "0" "spawnflags" "0" } training_annotation { "origin" "-1130 -7575 -200" "targetname" "win_anno" "display_text" "Escape to the mines!" "lifetime" "15" } trigger_teleport { "targetname" "cave_tp_no_player" "origin" "0 0 0" "mins" "-20000 -20000 -20000" "maxs" "20000 20000 20000" "spawnflags" "1" "startdisabled" "1" "target" "breaks" "filtername" "filter_red_backup" } trigger_multiple { "targetname" "cave_win_zone" "origin" "-1130 -7575 -220" "mins" "-128 -128 -128" "maxs" "128 128 128" "spawnflags" "1" "startdisabled" "1" "OnStartTouch" "cap_counter,add,1,0,-1" "OnEndTouch" "cap_counter,subtract,1,0,-1" "filtername" "filter_red_backup" } logic_relay { "targetname" "cave_spawn_trigger" "OnTrigger" "cave_win_holo,disable,,0,-1" "OnTrigger" "cave_win_zone,disable,,0,-1" } logic_relay { "targetname" "cave_win_enable_trigger" "OnTrigger" "cave_win_holo,enable,,2,-1" "OnTrigger" "win_anno,Show,,2,-1" "OnTrigger" "cave_win_zone,Enable,,2,-1" } ambient_generic { "targetname" "cave_win_sound" "message" "billwin.wav" "origin" "1625 -2937 -246" "volstart" "10" "spinup" "0" "spindown" "0" "spawnflags" "17" "radius" "99999" "preset" "0" "pitchstart" "100" "pitch" "100" "lfotype" "0" "lforate" "0" "lfomodvol" "0" "lfomodpitch" "0" "health" "10" "fadeoutsecs" "0" "fadeinsecs" "0" "cspinup" "0" } ambient_generic { "targetname" "cave_win_sound" "message" "billwin.wav" "origin" "1625 -2937 -246" "volstart" "10" "spinup" "0" "spindown" "0" "spawnflags" "17" "radius" "99999" "preset" "0" "pitchstart" "100" "pitch" "100" "lfotype" "0" "lforate" "0" "lfomodvol" "0" "lfomodpitch" "0" "health" "10" "fadeoutsecs" "0" "fadeinsecs" "0" "cspinup" "0" } math_counter { "targetname" "cap_counter_alive" "max" "6" "outvalue" "cap_counter_compare,SetCompareValue,,0.1,-1" } math_counter { "targetname" "cap_counter" "max" "6" "outvalue" "cap_counter_compare,SetValueCompare,,0,-1" } logic_compare { "targetname" "cap_counter_compare" "comparevalue" "6" "ongreaterthan" "win_red,RoundWin,,7.5,-1" "ongreaterthan" "fade,fade,,0,-1" "ongreaterthan" "fade2,fade,,1,-1" "ongreaterthan" "cave_tp_no_player,enable,,1,-1" "ongreaterthan" "camera,$EnableAll,,1,-1" "ongreaterthan" "camera,$DisableAll,,12,-1" "ongreaterthan" "cave_win_zone,disable,,0,-1" "ongreaterthan" "cave_win_sound,PlaySound,,2,-1" "onequalto" "win_red,RoundWin,,7.5,-1" "onequalto" "fade,fade,,0,-1" "onequalto" "fade2,fade,,1,-1" "onequalto" "camera,$EnableAll,,1,-1" "onequalto" "camera,$DisableAll,,12,-1" "onequalto" "cave_tp_no_player,enable,,1,-1" "onequalto" "cave_win_zone,disable,,0,-1" "onequalto" "cave_win_sound,PlaySound,,2,-1" } game_round_win { "teamnum" "2" "targetname" "win_red" "force_map_reset" "0" "switch_teams" "0" } NoFixup 1 point_viewcontrol { "acceleration" "0" "deceleration" "0" "interpolatepositiontoplayer" "0" "spawnflags" "12" "speed" "0" "wait" "10" "targetname" "camera" "origin" "348 -6055 769" "angles" "34 -113 0" } env_fade { "targetname" "fade" "angles" "0 0 0" "duration" "1" "rendercolor" "0 0 0" "spawnflags" "8" } env_fade { "targetname" "fade2" "angles" "0 0 0" "duration" "1" "rendercolor" "0 0 0" "spawnflags" "1" } OnSpawnOutput { Target cave_spawn_trigger Action Trigger } } shaker { NoFixup 1 env_shake { "classname" "env_shake" "amplitude" "255" "duration" "1" "frequency" "255" "radius" "50000" "spawnflags" "5" "targetname" "shakeit" "origin" "0 0 0" } env_shake { "classname" "env_shake" "amplitude" "255" "duration" "3" "frequency" "255" "radius" "50000" "spawnflags" "5" "targetname" "shakeit2" "origin" "0 0 0" } } p_smallammo { NoFixup 1 item_ammopack_small { "classname" "item_ammopack_small" "disableshadows" "0" } } p_smallmedkit { NoFixup 1 item_healthkit_small { "classname" "item_healthkit_small" } } } SpawnTemplate MissionName SpawnTemplate corelogic SpawnTemplate shaker SpawnTemplate annotations SpawnTemplate ending_template SpawnTemplate crashed_helicopter SpawnTemplate resupply_zone SpawnTemplate { Name "p_smallammo" Origin "-910 -1091 64" Angles "0 0 0" } SpawnTemplate { Name "p_smallammo" Origin "515 -1779 3" Angles "0 0 0" } SpawnTemplate { Name "p_smallammo" Origin "-128 -3363 -128" Angles "0 0 0" } SpawnTemplate { Name "p_smallammo" Origin "1512 -4067 64" Angles "0 0 0" } SpawnTemplate { Name "p_smallammo" Origin "-1005 -4566 -31" Angles "0 0 0" } SpawnTemplate { Name "p_smallammo" Origin "-3 -5565 -159" Angles "0 0 0" } SpawnTemplate { Name "p_smallammo" Origin "-768 -6829 32" Angles "0 0 0" } SpawnTemplate { Name "p_smallmedkit" Origin "1 -5640 -159" Angles "0 0 0" } SpawnTemplate { Name "p_smallmedkit" Origin "-126 -3485 0" Angles "0 0 0" } SpawnTemplate { Name "p_smallmedkit" Origin "-612 -1592 64" Angles "0 0 0" } SpawnTemplate { Name "p_smallmedkit" Origin "1851 -2969 0" Angles "0 0 0" } PlayerSpawnTemplate { Name "playertracker" } Templates { T_Zombie_Heavy { Class Heavy Skill Expert Health 50 WeaponRestrictions MeleeOnly Action Mobber Attributes DisableDodge DesiredAttackRange 50 ClassIcon heavy_zombie_lite Scale 1 NoIdleSound 1 Name Infected CustomEyeParticle "bot_eye_glow" CustomEyeGlowColor "40 180 40" DeathSound =80|physics\body\body_medium_break3.wav Item "BRAINS" VoiceCommand { Delay 2 Cooldown 5.8 Repeats 0 Type "Battle cry" } CharacterAttributes { "cancel falling damage" 1 "voice pitch scale" 0.85 "increased jump height" 1.3 "cannot be sapped" 1 "force distribute currency on death" 1 "dmg taken from crit reduced" 0.7 "move speed bonus" 1.29 "add attributes on hit" "move speed bonus|0.5|2" "dmg taken from blast increased" 1.5 } SpawnTemplate { Name "PT_common" } } T_Zombie_Sniper { Class Sniper Skill Expert Health 50 WeaponRestrictions MeleeOnly Action Mobber Attributes DisableDodge DesiredAttackRange 50 ClassIcon heavy_zombie_lite Scale 1 NoIdleSound 1 Name Infected Item "Ritzy Rick's Hair Fixative" CustomEyeParticle "bot_eye_glow" CustomEyeGlowColor "40 180 40" DeathSound =80|physics\body\body_medium_break3.wav Item "BRAINS" VoiceCommand { Delay 2 Cooldown 5.8 Repeats 0 Type "Battle cry" } CharacterAttributes { "cancel falling damage" 1 "increased jump height" 1.3 "voice pitch scale" 1.1 "cannot be sapped" 1 "force distribute currency on death" 1 "dmg taken from crit reduced" 0.7 "add attributes on hit" "move speed bonus|0.5|2" "dmg taken from blast increased" 1.5 } SpawnTemplate { Name "PT_common" } } T_Zombie_Soldier { Class Soldier Skill Expert Health 50 WeaponRestrictions MeleeOnly Action Mobber Attributes DisableDodge DesiredAttackRange 50 ClassIcon heavy_zombie_lite Scale 1 NoIdleSound 1 Name Infected CustomEyeParticle "bot_eye_glow" CustomEyeGlowColor "40 180 40" DeathSound =80|physics\body\body_medium_break3.wav Item "The Zipperface" Item "BRAINS" VoiceCommand { Delay 2 Cooldown 5.8 Repeats 0 Type "Battle cry" } CharacterAttributes { "cancel falling damage" 1 "increased jump height" 1.3 "cannot be sapped" 1 "force distribute currency on death" 1 "dmg taken from crit reduced" 0.7 "move speed bonus" 1.25 "add attributes on hit" "move speed bonus|0.5|2" "dmg taken from blast increased" 1.5 } SpawnTemplate { Name "PT_common" } } T_Zombie_Demo { Class Demoman Skill Expert Health 50 WeaponRestrictions MeleeOnly Action Mobber Attributes DisableDodge DesiredAttackRange 50 ClassIcon heavy_zombie_lite Scale 1 NoIdleSound 1 Name Infected CustomEyeParticle "bot_eye_glow" CustomEyeGlowColor "40 180 40" DeathSound =80|physics\body\body_medium_break3.wav Item "BRAINS" VoiceCommand { Delay 2 Cooldown 5.8 Repeats 0 Type "Battle cry" } CharacterAttributes { "cancel falling damage" 1 "dmg taken from fire reduced" 1.05 "voice pitch scale" 0.9 "increased jump height" 1.3 "cannot be sapped" 1 "force distribute currency on death" 1 "dmg taken from crit reduced" 0.7 "move speed bonus" 1.07 "add attributes on hit" "move speed bonus|0.5|2" "dmg taken from blast increased" 1.5 } SpawnTemplate { Name "PT_common" } } T_Zombie_Medic { Class Medic Skill Expert Health 50 WeaponRestrictions MeleeOnly Action Mobber Attributes DisableDodge DesiredAttackRange 50 ClassIcon heavy_zombie_lite Scale 1 NoIdleSound 1 Name Infected CustomEyeParticle "bot_eye_glow" CustomEyeGlowColor "40 180 40" DeathSound =80|physics\body\body_medium_break3.wav // VoiceCommand // { // Delay 2 // Cooldown 5.8 // Repeats 0 // Type "Battle cry" // } ItemAttributes { ItemName TF_WEAPON_BONESAW "damage bonus HIDDEN" 0.62 "is invisible" 1 "alt-fire disabled" 1 // for heavy AI "custom kill icon" unarmed_combat "damage penalty" 0.31 } CharacterAttributes { "cancel falling damage" 1 "dmg taken from fire reduced" 1.05 "increased jump height" 1.3 "cannot be sapped" 1 "force distribute currency on death" 1 "dmg taken from crit reduced" 0.7 "move speed bonus" 0.93 "add attributes on hit" "move speed bonus|0.5|2" "dmg taken from blast increased" 1.5 } SpawnTemplate { Name "PT_common" } } T_Zombie_Uncommon_Ceda { Class Pyro Skill Expert Health 150 WeaponRestrictions MeleeOnly Action Mobber Attributes DisableDodge DesiredAttackRange 50 ClassIcon heavy_zombie_lite Scale 1 NoIdleSound 1 Name "CEDA Infected" CustomEyeParticle "bot_eye_glow" CustomEyeGlowColor "40 180 40" DeathSound =80|physics\body\body_medium_break3.wav Item "BRAINS" Item "Trickster's Turnout Gear" Item "A Head Full of Hot Air" VoiceCommand { Delay 2 Cooldown 5.8 Repeats 0 Type "Battle cry" } CharacterAttributes { "cancel falling damage" 1 "increased jump height" 1.3 "voice pitch scale" 1.1 "cannot be sapped" 1 "force distribute currency on death" 1 "dmg taken from crit reduced" 0.7 "add attributes on hit" "move speed bonus|0.5|2" "dmg taken from blast increased" 1.5 "afterburn immunity" 1 "dmg taken from fire reduced" 0.5 } SpawnTemplate { Name "PT_common" } } T_Zombie_Uncommon_Riot { Class Heavy Skill Expert Health 50 WeaponRestrictions MeleeOnly Action Mobber Attributes DisableDodge DesiredAttackRange 50 ClassIcon heavy_zombie_lite Scale 1 NoIdleSound 1 Name "Riot Infected" CustomEyeParticle "bot_eye_glow" CustomEyeGlowColor "40 180 40" DeathSound =80|physics\body\body_medium_break3.wav Item "BRAINS" Item "Die Regime-Panzerung" Item "Steel-Toed Stompers" Item "The Eliminators Safeguard" Item "The Purity Fist" VoiceCommand { Delay 2 Cooldown 5.8 Repeats 0 Type "Battle cry" } CharacterAttributes { "cancel falling damage" 1 "voice pitch scale" 0.85 "increased jump height" 1.3 "cannot be sapped" 1 "force distribute currency on death" 1 "dmg taken from crit reduced" 0.25 "move speed bonus" 1.29 "add attributes on hit" "move speed bonus|0.5|2" "dmg taken from bullets reduced" 0.1 "dmg taken from blast reduced" 0.75 } SpawnTemplate { Name "PT_common" } } T_Zombie_Uncommon_Survivor { Class Soldier Skill Expert Health 1000 WeaponRestrictions MeleeOnly Action Mobber Attributes DisableDodge DesiredAttackRange 650 ClassIcon heavy_zombie_lite Scale 1 NoIdleSound 1 Name "Infected Survivor" CustomEyeParticle "bot_eye_glow" CustomEyeGlowColor "40 180 40" DeathSound =80|physics\body\body_medium_break3.wav Item "BRAINS" Item "Flakcatcher" Item "The Killer's Kit" Item "The Shellmet" VoiceCommand { Delay 2 Cooldown 5.8 Repeats 0 Type "Battle cry" } CharacterAttributes { "cancel falling damage" 1 "increased jump height" 1.3 "cannot be sapped" 1 "force distribute currency on death" 1 "dmg taken from crit reduced" 0.7 "add attributes on hit" "move speed bonus|0.5|2" "dmg taken from blast increased" 1.5 "afterburn immunity" 1 "dmg taken from fire reduced" 0.5 } SpawnTemplate { Name "PT_common" } } T_Zombie_Special_Boomer { Class Sniper Skill Expert Health 50 Action Mobber Attributes DisableDodge DesiredAttackRange 50 ClassIcon pyro_membrain_lite Scale 1 NoIdleSound 1 Name Boomer Item "Conspiratorial Cut" Item "The Mucous Membrain" Item "Skinless Slashers" Item "The Biomech Backpack" Item "Jarate" CustomEyeParticle "bot_eye_glow" CustomEyeGlowColor "40 180 40" DeathSound =80|physics\body\body_medium_break3.wav Item "BRAINS" SpawnTemplate "PT_Boomer" Addcond {Name TF_COND_PREVENT_DEATH} ItemAttributes { ItemName "Jarate" "provide on active" 1 "projectile trail particle" "~bread_gloves_goop" "explosion particle" "breadjar_impact" "projectile spread angle penalty" 5 "effect bar recharge rate increased" 0.001 "fire rate bonus" 0.25 "deploy time decreased" 0.01 "is invisible" 1 "move speed bonus" 0.2 } FireInput { Target boomer_death Action Trigger Delay 0 IfHealthBelow 2 Repeats 1 } WeaponSwitch { Delay 1 Cooldown 0 Repeats 1 Type "Melee" } WeaponSwitch { Delay 1 Cooldown 15 Repeats 0 IfSeeTarget 1 Type "Secondary" MaxTargetRange 1000 } FireWeapon { Delay 2 Cooldown 15 Repeats 0 IfSeeTarget 1 Duration 3 Type "Primary" MaxTargetRange 1000 } WeaponSwitch { Delay 5 Cooldown 15 Repeats 0 IfSeeTarget 1 Type "Melee" MaxTargetRange 1000 } VoiceCommand { Delay 2 Cooldown 5.8 Repeats 0 Type "Battle cry" } CharacterAttributes { "cancel falling damage" 1 "move speed bonus" 0.83 "increased jump height" 1.3 "voice pitch scale" 1.1 "cannot be sapped" 1 "force distribute currency on death" 1 "dmg taken from crit reduced" 0.7 "dmg taken from fire increased" 4 "dmg taken from blast increased" 1.5 } } T_Zombie_Special_Grappler { Class Sniper Skill Expert Health 250 Action Mobber Attributes DisableDodge DesiredAttackRange 1000 ClassIcon sniper_smoker ExtAttr IgnoreBuildings MaxVisionRange 3000 Scale 1 NoIdleSound 1 StripItem "Zombie Sniper" Item "The Huntsman" // Item BRAINS Name "Smoker" UseCustomModel "models\kirillian\infected\wanker_v4.mdl" DeathSound =80|shadows\smoker_death.mp3 VoiceCommand { Delay 5 Cooldown 3.6 Repeats 0 Type "Go" } WeaponSwitch { Delay 1 Cooldown 0 Repeats 1 Type "Melee" } WeaponSwitch { Delay 3 Cooldown 10 Repeats 0 IfSeeTarget 1 Type "Primary" } Sequence { Delay 4 Cooldown 10 Repeats 0 IfSeeTarget 1 Name tongue_attack_grab_survivor } WeaponSwitch { Delay 6 Cooldown 10 Repeats 0 IfSeeTarget 1 Type "Melee" } ItemAttributes { ItemName "The Huntsman" "is invisible" 1 "override projectile type" 26 // hook "fire rate bonus" 1.5 "attachment offset" "0 0 48" "custom weapon fire sound" =80|shadows/smoker_launchtongue_02.mp3 "apply look velocity on damage" -1200 "dmg penalty vs players" 5 "stun on hit" 2.5 "stun on hit type" "bonk" } ItemAttributes { ItemName TF_WEAPON_CLUB "damage bonus HIDDEN" 0.62 "is invisible" 1 "alt-fire disabled" 1 // for heavy AI "custom kill icon" unarmed_combat } CharacterAttributes { "move speed bonus" 0.7 // "voice pitch scale" 0 "cancel falling damage" 1 "override footstep sound set" 0 "mult stun resistance" 0 "increased jump height" 1.3 "cannot be sapped" 1 "force distribute currency on death" 1 "dmg taken from crit reduced" 0.7 "dmg taken from fire increased" 2 "dmg taken from blast increased" 1.5 "dmg taken mult from special damage type 2" 1.5 } SpawnTemplate { Name "PT_special" } } T_Zombie_Special_Charger { Class Demoman Skill Expert Health 600 StripItem "Zombie Demo" StripItemSlot 0 Action Mobber // DesiredAttackRange 50 ExtAttr IgnoreBuildings Name "Charger" ClassIcon demo_superfist UseCustomModel "models/kirillian/infected/coomer_v4.mdl" DeathSound =80|shadows/charger_death.mp3 Item "The Chargin' Targe" Scale 1.25 NoIdleSound 1 VoiceCommand { Delay 15 Cooldown 5 Repeats 0 IfNoTarget 1 Type "Move up" } VoiceCommand { Delay 2 Cooldown 4 Repeats 0 IfSeeTarget 1 Type "Negative" } ItemAttributes { ItemName TF_WEAPON_BOTTLE "is invisible" 1 "fire rate penalty" 1.3 "damage bonus" 1.2 "custom kill icon" hot_hand "custom impact sound" =80|player/taunt_chest_thump_alt.wav "charge time increased" 2 "damage causes airblast" 1 } ItemAttributes { ItemName "The Chargin' Targe" "charge time increased" 2.5 "effect add attributes" "no_attack|1" "mult charge turn control" 0.01 "charge recharge rate increased" 9999 "Attack not cancel charge" 1 "charge impact damage increased" 0.01 "is invisible" 1 "dmg taken from fire reduced" 1 "dmg taken from blast reduced" 1 "damage causes airblast" 1 } FireWeapon { Delay 1 Cooldown 7.5 Repeats 0 IfSeeTarget 1 Duration 0.1 Type "Secondary" } CharacterAttributes { "voice pitch scale" 0.5 "move speed bonus" 0.6 "cannot be sapped" 1 "override footstep sound set" 7 "crit kill will gib" 1 "stomp building damage" 1337 "stomp player damage" 50 "stomp player force" 600 "stomp player time" 0.25 "fire input on hit" "shakeit^startshake^0" "stun on hit" 6 "stun on hit type" "bigbonk" "force distribute currency on death" 1 "dmg taken from crit reduced" 0.7 "dmg taken from fire increased" 2 "dmg taken from blast increased" 1.5 "dmg taken mult from special damage type 2" 1.25 } SpawnTemplate { Name "PT_special" } PainSound =65|physics/body/body_medium_break2.wav DeathSound physics/body/body_medium_break4.wav } T_Zombie_Special_Tank { Class Heavy Skill Expert StripItem "Zombie Heavy" StripItemSlot 0 Name "Tank" Health 8000 Attributes MiniBoss Attributes DisableDodge ExtAttr IgnoreBuildings Action Mobber UseMeleeThreatPrioritization 1 ClassIcon heavy_zombie_arm2_lite UseCustomModel "models\kirillian\infected\hank_v4.mdl" StripItem "Tank" Skin 1 NoIdleSound 1 AdditionalStepSound "=80|player/footsteps/giant2.wav" DeathSound shadows\tank_death_01.mp3 WeaponSwitch { Delay 1 Cooldown 30 Repeats 1 Type "Melee" } VoiceCommand { Delay 2 Cooldown 4.2 Repeats 0 IfNoTarget 1 Type "Move Up" } VoiceCommand { Delay 1 Cooldown 3 Repeats 0 IfSeeTarget 1 Type "Cheers" } Sequence { Delay 0 Cooldown 20 Repeats 0 IfSeeTarget 0 Name "Throw_02" } Sequence { Delay 3 Cooldown 20 Repeats 0 IfSeeTarget 0 Name "Idle_Yell_short" } WeaponSwitch //Periodically switches weapon { Delay 0 //Time before the first weapon switch starts (Default: 10) Cooldown 20 //Time between each weapon switch (Default: 10) Repeats 0 //How many times should bot switch weapons 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) Type "Secondary" // Weapon slot, possible values: } FireWeapon { Delay 4 Cooldown 20 Repeats 0 IfSeeTarget 0 Duration 0.1 Type "Primary" } WeaponSwitch //Periodically switches weapon { Delay 6 //Time before the first weapon switch starts (Default: 10) Cooldown 20 //Time between each weapon switch (Default: 10) Repeats 0 //How many times should bot switch weapons 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) Type "Melee" // Weapon slot, possible values: } ItemAttributes { ItemName TF_WEAPON_FISTS "provide on active" 1 "dmg bonus vs buildings" 4444 "damage causes airblast" 1 "fire rate bonus" 2 "custom impact sound" shadows/tank_punch_1.mp3 "deploy time decreased" 3 "alt-fire disabled" 1 // stop punching until you're actually close "melee range multiplier" 1.75 "stun on hit" 1 "stun on hit type" "panic" "stun on hit slow" 0.9 } ItemAttributes { ItemName TF_WEAPON_SHOTGUN_HWG "provide on active" 1 "is invisible" 1 "fire rate bonus" 10 "override projectile type" 2 "no_jump" 1 "reload full clip at once" 1 "faster reload rate" -0.8 "dmg pierces resists absorbs" 1 "custom projectile model" models\props_forest\cliff_wall_09a.mdl "damage bonus" 10.83 "dmg bonus vs buildings" 4444 "custom impact sound" =100|shadows/thrown_projectile_hit_01.mp3 "custom weapon fire sound" "=120|trespasser\tank_yell_10.wav" "projectile gravity" 300 "projectile speed increased" 1.75 "passive reload" 1 "blast radius increased" 1.25 "custom kill icon" mailbox "stun on hit" 2 "stun on hit type" "panic" "stun on hit slow" 0.9 "penetrate teammates" 1 // throw through teammates "mult_player_movespeed_active" 0 // stop moving when throwing rocks! } CharacterAttributes { "voice pitch scale" 1 "cancel falling damage" 1 "override footstep sound set" 0 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "mult stun resistance" 0 "dmg from ranged reduced" 0.75 "dmg taken mult from special damage type 1" 2.5 "cannot be sapped" 1 "no_duck" 1 "increased jump height" 1.3 "move speed penalty" 1.212 "dmg taken from crit reduced" 0.5 "force distribute currency on death" 1 "dmg taken from fire increased" 4 "dmg taken from blast increased" 1.5 "dmg taken mult from special damage type 2" 2.5 } SpawnTemplate { Name "PT_tank" } } T_Zombie_Special_Hunter { Class Scout Classicon scunter Name "Hunter" Scale 1.1 Skill Expert Health 250 Action Mobber NoIdleSound 1 Attributes DisableDodge Attributes IgnoreFlag ExtAttr IgnoreBuildings WeaponRestrictions MeleeOnly UseMeleeThreatPrioritization 1 MaxVisionRange 1250 Item "Zombie Scout" Item "The Delinquent's Down Vest" Item "Head Hunter" Item "Blizzard Britches" Item "The Bat Outta Hell" CustomEyeParticle "bot_eye_glow" CustomEyeGlowColor "40 180 40" NoIdleSound 1 ItemAttributes { ItemName "The Bat Outta Hell" "is invisible" 1 "damage bonus" 0.0025 "hit self on miss" 1 "apply look velocity on damage" 1500 "melee range multiplier" 0.0025 "melee bounds multiplier" 0.0025 "custom kill icon" "unarmed_combat" "custom hit sound" physics/flesh/flesh_squishy_impact_hard3.wav "remove damage type" 128 "special damage type" 3 "dmg taken mult from special damage type 3" 0.01 } FireWeapon { Delay 5.25 Cooldown 2.5 Repeats 0 IfSeeTarget 1 Duration 0 Type "Primary" } FireWeapon { Delay 5 Cooldown 2.5 Repeats 0 IfSeeTarget 1 Duration 0 Type "Jump" } CharacterAttributes { "dmg pierces resists absorbs" 1 "increased jump height" 2.5 "move speed bonus" 0.5 "stomp player damage" 12 "stomp building damage" 12 "stomp player force" 20 "stomp player time" 0.5 "increased air control" 100 "no double jump" 1 "head scale" 1.3 "mult stun resistance" 0 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "airblast vertical vulnerability multiplier" 0 "cancel falling damage" 1 "mult smack time" 0 "cannot be sapped" 1 "crit kill will gib" 1 "gesture speed increase" 0 "voice pitch scale" 0.65 "force distribute currency on death" 1 "dmg taken from fire increased" 2 "dmg taken from blast increased" 1.25 "dmg taken mult from special damage type 2" 1.5 } SpawnTemplate { Name "PT_special" } PainSound =65|physics/body/body_medium_break2.wav DeathSound npc/fast_zombie/fz_frenzy1.wav } T_Zombie_Special_Jocky { Class Scout Classicon scunter Name "Jocky" Scale 1.1 Skill Expert Health 325 Action Mobber NoIdleSound 1 Attributes DisableDodge Attributes IgnoreFlag ExtAttr IgnoreBuildings WeaponRestrictions MeleeOnly UseMeleeThreatPrioritization 1 MaxVisionRange 750 DesiredAttackRange 500 Item "Zombie Scout" Item "Crazy Legs" Item "Claws And Infect" Item "Facepeeler" Item "The Bat Outta Hell" CustomEyeParticle "bot_eye_glow" CustomEyeGlowColor "40 180 40" NoIdleSound 1 ItemAttributes { ItemName "The Bat Outta Hell" "is invisible" 1 "damage bonus" 0.0025 "hit self on miss" 1 "apply look velocity on damage" 2000 "melee range multiplier" 0.0025 "melee bounds multiplier" 0.0025 "custom kill icon" "unarmed_combat" "custom hit sound" physics/flesh/flesh_squishy_impact_hard3.wav "remove damage type" 128 "special damage type" 3 "dmg taken mult from special damage type 3" 0.01 } FireWeapon { Delay 5.25 Cooldown 1.5 Repeats 0 IfSeeTarget 1 Duration 0 Type "Primary" } FireWeapon { Delay 5 Cooldown 1.5 Repeats 0 IfSeeTarget 1 Duration 0 Type "Jump" } CharacterAttributes { "dmg pierces resists absorbs" 1 "move speed bonus" 0.70 "stomp player damage" 12 "stomp building damage" 12 "stomp player force" 120 "stomp player time" 0.5 "stun on hit" 2 "stun on hit type" "panic" "stun on hit slow" 0.4 "increased air control" 100 "no double jump" 1 "head scale" 1.3 "mult stun resistance" 0 "damage force reduction" 0 "airblast vulnerability multiplier" 0 "airblast vertical vulnerability multiplier" 0 "cancel falling damage" 1 "mult smack time" 0 "cannot be sapped" 1 "crit kill will gib" 1 "gesture speed increase" 0 "voice pitch scale" 0.65 "force distribute currency on death" 1 "dmg taken from fire increased" 2 "dmg taken from blast increased" 1.25 "dmg taken mult from special damage type 2" 1.5 } SpawnTemplate { Name "PT_special" } PainSound =65|physics/body/body_medium_break2.wav DeathSound npc/fast_zombie/fz_frenzy1.wav } T_Zombie_Special_Spitter { Class Pyro Skill Expert Health 100 StripItem "Zombie Pyro" Name "Spitter" StripItemSlot 0 Action Mobber ExtAttr IgnoreBuildings DesiredAttackRange 50 ClassIcon pyro_spitter Item "The Gas Passer" UseCustomModel "models/kirillian/infected/spyro_v4.mdl" Scale 1.1 Skin 1 NoIdleSound 1 DeathSound =80|shadows/gas_death.mp3 VoiceCommand { Delay 15 Cooldown 4 Repeats 0 Type "Jeers" } WeaponSwitch { Delay 1 Cooldown 0 Repeats 1 Type "Melee" } WeaponSwitch // spittin { Delay 2 Cooldown 10 Repeats 0 IfSeeTarget 1 Type "Secondary" } Sequence { Delay 2.5 Cooldown 10 Repeats 0 IfSeeTarget 1 Name spitter_spitting } WeaponSwitch { Delay 3.5 Cooldown 10 Repeats 0 IfSeeTarget 1 Type "Melee" } ItemAttributes { ItemName tf_weapon_fireaxe "damage bonus HIDDEN" 0.38 "is invisible" 1 "alt-fire disabled" 1 // for heavy AI "custom kill icon" unarmed_combat "custom impact sound" Weapon_Fist.HitFlesh } ItemAttributes { ItemName "The Gas Passer" "provide on active" 1 "is invisible" 1 "move speed penalty" 0.5 "mult_item_meter_charge_rate" 0.1 "weapon burn dmg increased" 1.25 "applies snare effect" 0.4 "weapon burn time reduced" 0.5 "custom projectile model" models/weapons/w_models/w_drg_ball.mdl "custom weapon fire sound" =80|shadows/gas_spit.mp3 "cannot be sapped" 1 "no_jump" 1 } CharacterAttributes { "move speed bonus" 0.7 // "voice pitch scale" 0 "cancel falling damage" 1 "override footstep sound set" 0 "mult stun resistance" 0 "increased jump height" 1.3 "force distribute currency on death" 1 "dmg taken from crit reduced" 0.7 "dmg taken from fire increased" 2 "dmg taken from blast increased" 1.5 } SpawnTemplate { Name "PT_special" } } } ItemBlacklist { ItemSlot "UTILITY" ItemSlot "ACTION" ItemSlot "BUILDING" ItemSlot "PDA2" ItemSlot "PDA" ItemSlot "Melee" ItemSlot "Secondary" ItemSlot "Primary" } ///////////////// //Custom Weapons ///////////////// CustomWeapon //Allows you to use an alias for items with custom attributes { "BRAINS" { OriginalItemName "Necro Smasher" "damage bonus HIDDEN" 0.08 //5 damage per hit "is invisible" 1 "alt-fire disabled" 1 "custom kill icon" unarmed_combat } "Pistol" // The name you would use in Item key in TFBot { OriginalItemName "Upgradeable TF_WEAPON_PISTOL" "clip size penalty HIDDEN" 1.25 "damage bonus HIDDEN" 2.4 "hidden secondary max ammo penalty" 50000 "fire rate penalty HIDDEN" 1.34 "cannot be upgraded" 1 "use original class weapon animations" 1 "Paintkit_proto_def_index" 412 "Set_item_texture_wear" 0 "penetration damage penalty" 0.2 "projectile penetration heavy" 1 "explosion particle" "lowV_blood_impact_red_01" "explosion particle on direct hit" "lowV_blood_impact_red_01" } "Magnum" // The name you would use in Item key in TFBot { OriginalItemName "Upgradeable TF_WEAPON_PISTOL" "clip size penalty HIDDEN" 0.67 "hidden secondary max ammo penalty" 50000 "damage bonus HIDDEN" 5.33 "fire rate penalty HIDDEN" 2 "cannot be upgraded" 1 "use original class weapon animations" 1 "custom weapon fire sound" "=90|trespasser/de_shot1.wav" "custom item model" "models\workshop\weapons\c_models\c_winger_distol\c_winger_distol.mdl" "penetration damage penalty" 0.65 "projectile penetration heavy" 2 "dmg pierces resists absorbs" 1 "explosion particle" "lowV_blood_impact_red_01" "explosion particle on direct hit" "lowV_blood_impact_red_01" } "Pump Shotgun" // The name you would use in Item key in TFBot { OriginalItemName "The Frontier Justice" "mod sentry killed revenge" 0 "clip size penalty HIDDEN" 1.34 "hidden primary max ammo bonus" 2.25 "damage bonus HIDDEN" 4.16 "fire rate penalty HIDDEN" 1.6 "clip size penalty" 1 "cannot be upgraded" 1 "reload time increased hidden" 0.7 "weapon spread bonus" 1.35 "use original class weapon animations" 1 "custom item model" "models\weapons\c_models\c_steel_battalion\c_steel_battalion.mdl" "custom weapon fire sound" "=100|weapons\shotgun\shotgun_dbl_fire7.wav" "penetration damage penalty" 0.8 "projectile penetration heavy" 2 "explosion particle" "lowV_blood_impact_red_01" "explosion particle on direct hit" "lowV_blood_impact_red_01" } "Chrome Shotgun" // The name you would use in Item key in TFBot { OriginalItemName "The Frontier Justice" "mod sentry killed revenge" 0 "clip size penalty HIDDEN" 1.34 "hidden primary max ammo bonus" 2.25 "damage bonus HIDDEN" 5.16 "fire rate penalty HIDDEN" 1.6 "clip size penalty" 1 "cannot be upgraded" 1 "reload time increased hidden" 0.7 "weapon spread bonus" 0.8 "bullets per shot bonus" 0.8 "use original class weapon animations" 1 "custom item model" "models\workshop\weapons\c_models\c_sshockgun\c_sshockgun.mdl" "custom weapon fire sound" "=100|crush\hubby_shoot.wav" "penetration damage penalty" 0.8 "projectile penetration heavy" 3 "explosion particle" "lowV_blood_impact_red_01" "explosion particle on direct hit" "lowV_blood_impact_red_01" } "Combat Shotgun" // The name you would use in Item key in TFBot { OriginalItemName "The Frontier Justice" "mod sentry killed revenge" 0 "bullets per shot bonus" 0.9 "clip size penalty HIDDEN" 1.67 "hidden primary max ammo bonus" 2.8125 "damage bonus HIDDEN" 3.5 "fire rate penalty HIDDEN" 0.48 "clip size penalty" 1 "weapon spread bonus" 1.35 "cannot be upgraded" 1 "reload time increased hidden" 0.5 "use original class weapon animations" 1 "custom item model" "models\weapons\c_models\c_rapidfire\c_rapidfire_1.mdl" "custom weapon fire sound" "=100|weapons\auto_shotgun_fire_1.wav" "penetration damage penalty" 0.8 "projectile penetration heavy" 2 "explosion particle" "lowV_blood_impact_red_01" "explosion particle on direct hit" "lowV_blood_impact_red_01" } "Hunting Rifle" // The name you would use in Item key in TFBot { OriginalItemName "Upgradeable TF_WEAPON_SNIPERRIFLE" "alt-fire disabled" 1 "special damage type" 2 "hidden primary max ammo bonus" 6 "projectile penetration" 1 "damage bonus HIDDEN" 1.8 "faster reload rate" 0.25 "cannot be upgraded" 1 "use original class weapon animations" 1 "dmg pierces resists absorbs" 1 "custom item model" "models\weapons\c_models\c_scopelessrifle\c_scopelessrifle.mdl" "custom weapon fire sound" "=120|weapons\mp40_shoot.wav" "explosion particle" "lowV_blood_impact_red_01" "explosion particle on direct hit" "lowV_blood_impact_red_01" } "AWP" // The name you would use in Item key in TFBot { OriginalItemName "The AWPer Hand" "special damage type" 2 "hidden primary max ammo bonus" 8 "projectile penetration" 1 "damage bonus HIDDEN" 2.3 "faster reload rate" 0.667 "cannot be upgraded" 1 "use original class weapon animations" 1 "dmg pierces resists absorbs" 1 "explosion particle" "lowV_blood_impact_red_01" "explosion particle on direct hit" "lowV_blood_impact_red_01" } "Submachine Gun" // The name you would use in Item key in TFBot { OriginalItemName "Upgradeable TF_WEAPON_SMG" "clip size penalty HIDDEN" 2 "hidden secondary max ammo penalty" 8.67 "damage bonus HIDDEN" 2.5 "fire rate penalty HIDDEN" 0.4629 "clip size penalty" 1 "fire rate penalty" 1 "cannot be upgraded" 1 "use original class weapon animations" 1 "continous accuracy mult" 1.6 "continous accuracy time" 1 "penetration damage penalty" 0.65 "projectile penetration heavy" 1 "custom item model" "models\weapons\c_models\c_heckler\c_smg.mdl" "custom weapon fire sound" "=80|smg_shoot_giant3.wav" "explosion particle" "lowV_blood_impact_red_01" "explosion particle on direct hit" "lowV_blood_impact_red_01" } "Silenced Submachine Gun" // The name you would use in Item key in TFBot { OriginalItemName "The Cleaner's Carbine" "minicrit_boost_when_charged" 0 "clip size penalty HIDDEN" 2 "hidden secondary max ammo penalty" 8.67 "damage bonus HIDDEN" 3.125 "fire rate penalty HIDDEN" 0.4629 "clip size penalty" 1 "fire rate penalty" 1 "cannot be upgraded" 1 "use original class weapon animations" 1 "continous accuracy mult" 1.75 "continous accuracy time" 1 "penetration damage penalty" 0.4 "projectile penetration heavy" 2 "explosion particle" "lowV_blood_impact_red_01" "explosion particle on direct hit" "lowV_blood_impact_red_01" } "AK-47" // The name you would use in Item key in TFBot { OriginalItemName "Upgradeable TF_WEAPON_SMG" "clip size penalty HIDDEN" 1.6 "hidden secondary max ammo penalty" 4.8 "damage bonus HIDDEN" 5.5 "fire rate penalty HIDDEN" 1.25 "cannot be upgraded" 1 "use original class weapon animations" 1 "continous accuracy mult" 1.75 "continous accuracy time" 3 "custom item model" "models\weapons\c_models\c_ak47\c_mmg.mdl" "custom weapon fire sound" "=80|ak_shoot.wav" "penetration damage penalty" 0.6 "projectile penetration heavy" 3 "explosion particle" "lowV_blood_impact_red_01" "explosion particle on direct hit" "lowV_blood_impact_red_01" } "Combat Rifle" // The name you would use in Item key in TFBot { OriginalItemName "Upgradeable TF_WEAPON_SMG" "clip size penalty HIDDEN" 2.4 "hidden secondary max ammo penalty" 4.8 "damage bonus HIDDEN" 5.5 "fire rate penalty HIDDEN" 1.13 "cannot be upgraded" 1 "use original class weapon animations" 1 "weapon spread bonus" 0.85 "continous accuracy mult" 1.6 "continous accuracy time" 3 "burst fire count" 3 "burst fire rate mult" 1.8 "custom item model" "models\weapons\c_models\c_brief_negotiator\c_lmg.mdl" "custom weapon fire sound" "=80|lmg_shoot.wav" "penetration damage penalty" 0.9 "projectile penetration heavy" 2 "explosion particle" "lowV_blood_impact_red_01" "explosion particle on direct hit" "lowV_blood_impact_red_01" } "Grenade Launcher" // The name you would use in Item key in TFBot { OriginalItemName "The Loch-n-Load" "clip size penalty HIDDEN" 0.33 "hidden primary max ammo bonus" 1.875 "damage bonus HIDDEN" 4 "fire rate penalty HIDDEN" 1.5 "reload time increased hidden" 1.5 "cannot be upgraded" 1 "use original class weapon animations" 1 "explosion particle" "rd_robot_explosion" "sticky air burst mode" 1 "grenade explode on impact" 1 "Blast radius increased" 1.75 "Blast radius decreased" 1 "special damage type" 1 "custom weapon fire sound" "=80|mvm\giant_demoman\giant_demoman_grenade_shoot.wav" } "M60 Machine Gun" { OriginalItemName "Upgradeable TF_WEAPON_MINIGUN" "custom item model" models\workshop\weapons\c_models\c_browning\c_browning.mdl "cannot be upgraded" 1 "hidden primary max ammo bonus" 0.75 "damage bonus HIDDEN" 5.56 "use original class weapon animations" 1 "fire rate penalty HIDDEN" 1.045 "aiming movespeed increased" "1.8" "bullets per shot bonus" 0.25 "weapon spread bonus" 0.5 "continous accuracy mult" 1.5 "continous accuracy time" 5 "provide on active" 1 "move speed penalty" 0.7 "projectile penetration heavy" 3 "explosion particle" "lowV_blood_impact_red_01" "explosion particle on direct hit" "lowV_blood_impact_red_01" } "Fire Axe" { OriginalItemName "Upgradeable TF_WEAPON_FIREAXE" "cannot be upgraded" 1 "damage bonus HIDDEN" 6.16 "fire rate penalty HIDDEN" 1.125 "melee cleave attack" 1 "special item description" "Alt fire to shove!" "alt fire attack" 0.5 "alt fire attributes" "damage penalty|0.05|mult smack time|0.01|damage causes airblast|1|fire rate bonus HIDDEN|0.5|stun on hit type|bonk|stun on hit|2" } "Baseball Bat" { OriginalItemName "Upgradeable TF_WEAPON_BAT" "custom item model" models\weapons\c_models\c_wooden_bat\c_wooden_bat.mdl "cannot be upgraded" 1 "damage bonus HIDDEN" 11.43 "fire rate penalty HIDDEN" 1.7 "melee cleave attack" 1 "special item description" "Alt fire to shove!" "alt fire attack" 0.5 "alt fire attributes" "damage penalty|0.05|mult smack time|0.01|damage causes airblast|1|fire rate bonus HIDDEN|0.5|stun on hit type|bonk|stun on hit|2" } "Golf Club" { OriginalItemName "Upgradeable TF_WEAPON_SHOVEL" "custom item model" models\workshop\weapons\c_models\c_golfclub\c_golfclub.mdl "cannot be upgraded" 1 "damage bonus HIDDEN" 6.16 "fire rate penalty HIDDEN" 0.9375 "melee cleave attack" 1 "melee range multiplier" 1.25 "special item description" "Alt fire to shove!" "alt fire attack" 0.5 "alt fire attributes" "damage penalty|0.05|mult smack time|0.01|damage causes airblast|1|fire rate bonus HIDDEN|0.5|stun on hit type|bonk|stun on hit|2" } "Machete" { OriginalItemName "Upgradeable TF_WEAPON_CLUB" "cannot be upgraded" 1 "damage bonus HIDDEN" 6.16 "fire rate penalty HIDDEN" 0.84375 "melee cleave attack" 1 "special item description" "Alt fire to shove!" "alt fire attack" 0.5 "alt fire attributes" "damage penalty|0.05|mult smack time|0.01|damage causes airblast|1|fire rate bonus HIDDEN|0.5|stun on hit type|bonk|stun on hit|2" } "Golden Frying Pan" { OriginalItemName "Gold Frying Pan" "cannot be upgraded" 1 "damage bonus HIDDEN" 6.16 "fire rate penalty HIDDEN" 0.8 "melee cleave attack" 1 "special item description" "Just because it doesn't look golden, doesn't mean it isn't." "special item description 2" "Alt fire to shove!" "turn to gold" 1 "item style override" 6 "alt fire attack" 0.4 "alt fire attributes" "damage penalty|0.25|mult smack time|0.01|damage causes airblast|1|fire rate bonus HIDDEN|0.35|stun on hit type|bigbonk|stun on hit|5" } "Pipe Bomb" //FBI no like { OriginalItemName "Jarate" "custom item model" models\workshop\weapons\c_models\c_quadball\c_quadball_grenade.mdl "custom projectile model" models\weapons\w_models\w_grenade_grenadelauncher.mdl "use original class weapon animations" 1 "override projectile type" 3 "cannot be upgraded" 1 "item style override" 0 "special item description" "30 Second Cooldown" "fuse bonus" 2.6 "effect bar recharge rate increased" 1.5 "Blast radius increased" 1.75 "explosion particle" "rd_robot_explosion" "custom impact sound" "=150|ambient\explosions\explode_3.wav" "cannot be upgraded" 1 "effect cond override" 7 "damage bonus HIDDEN" 16 } "Molotov Cocktail" { OriginalItemName "Mad Milk" "custom item model" models\weapons\c_models\c_nitro\c_nitro.mdl "custom projectile model" models\weapons\c_models\c_nitro\c_nitro.mdl "use original class weapon animations" 1 "override projectile type" 3 "cannot be upgraded" 1 "item style override" 0 "special item description" "30 Second Cooldown" "fuse bonus" 2.6 "effect bar recharge rate increased" 1.5 "Blast radius increased" 2 "grenade explode on impact" 1 "Set DamageType Ignite" 1 "weapon burn dmg increased" 10 "explosion particle" "rd_robot_explosion" "custom impact sound" "=120|spell_fireball_impact.wav" "cannot be upgraded" 1 "effect cond override" 7 "damage bonus HIDDEN" 2.5 } "Boomer Bile Bomb" { OriginalItemName "Mad Milk" "custom item model" models\weapons\c_models\c_gascan\c_gascan.mdl "custom projectile model" models\weapons\c_models\c_gascan\c_gascan.mdl "use original class weapon animations" 1 "override projectile type" 3 "cannot be upgraded" 1 "item style override" 0 "special item description" "20 Second Cooldown" "fuse bonus" 2.6 "effect bar recharge rate increased" 2.25 "Blast radius increased" 1.5 "grenade explode on impact" 1 "explosion particle" "breadjar_impact" "custom impact sound" "=100|weapons\gas_can_explode.wav" "cannot be upgraded" 1 "effect cond override" 7 "add cond on hit" 24 "add cond on hit duration" 20 "damage bonus HIDDEN" 0.0025 } "Energy Drink (Adrenaline Shot)" { OriginalItemName "Festive Bonk 2014" "effect cond override" 32 "mult effect duration" 1.875 "effect add attributes" "major move speed bonus|1.15|mult stun resistance|0" //major move speed bonus is the same move speed bonus "effect bar recharge rate increased" 1.37 "special item description" "Once Consumed: User gains speed buff!" "special item description 2" "30 Second recharge time" "taunt attack time mult" 0.5 "gesture speed increase" 2 } "Sandvich (First Aid Kit)" { OriginalItemName "The Sandvich" "lunchbox healing decreased" 0.2 "special item description" "Once Consumed: User is healed for 60 hp" "special item description 2" "30 Second recharge time" } "Banana (Pain Pills)" { OriginalItemName "The Second Banana" "lunchbox healing decreased" 0.067 "special item description" "Once Consumed: User is healed for 20 hp" "special item description 2" "20 Second recharge time" "special item description 3" "Cannot be shared with teammates" "taunt attack time mult" 0.2 "gesture speed increase" 5 "effect bar recharge rate increased" 2 "alt-fire disabled" 1 } } /////////////////////////////////////////////////////////////////////////// //ExtraLoadoutItems /////////////////////////////////////////////////////////////////////////// ExtraLoadoutItems // Extra loadout items available after typing !missionitems in chat { AllowEquipOutsideSpawn 1 // Allow equipping items outside spawn Primary // Extended syntax, Item slot to use { Item "Pump Shotgun" // Item name, custom weapon names are available Cost 1000 // The cost of the weapon (default: 0) AllowRefund 0 //Allow refunding of the weapon (default: 1) // Hidden 1 //If set, this item is only accessible via $AwardExtraItem input (default: 0) } Primary // Extended syntax, Item slot to use { Item "Chrome Shotgun" // Item name, custom weapon names are available Cost 2000 // The cost of the weapon (default: 0) AllowRefund 0 //Allow refunding of the weapon (default: 1) // Hidden 1 //If set, this item is only accessible via $AwardExtraItem input (default: 0) } Primary // Extended syntax, Item slot to use { Item "Combat Shotgun" // Item name, custom weapon names are available Cost 5000 // The cost of the weapon (default: 0) AllowRefund 0 //Allow refunding of the weapon (default: 1) // Hidden 1 //If set, this item is only accessible via $AwardExtraItem input (default: 0) } Primary // Extended syntax, Item slot to use { Item "Hunting Rifle" // Item name, custom weapon names are available Cost 2500 // The cost of the weapon (default: 0) AllowRefund 0 //Allow refunding of the weapon (default: 1) // Hidden 1 //If set, this item is only accessible via $AwardExtraItem input (default: 0) } Primary // Extended syntax, Item slot to use { Item "AWP" // Item name, custom weapon names are available Cost 3000 // The cost of the weapon (default: 0) AllowRefund 0 //Allow refunding of the weapon (default: 1) // Hidden 1 //If set, this item is only accessible via $AwardExtraItem input (default: 0) } Primary // Extended syntax, Item slot to use { Item "Grenade Launcher" // Item name, custom weapon names are available Cost 2500 // The cost of the weapon (default: 0) AllowRefund 0 //Allow refunding of the weapon (default: 1) // Hidden 1 //If set, this item is only accessible via $AwardExtraItem input (default: 0) } Primary // Extended syntax, Item slot to use { Item "M60 Machine Gun" // Item name, custom weapon names are available Cost 2500 // The cost of the weapon (default: 0) AllowRefund 0 //Allow refunding of the weapon (default: 1) // Hidden 1 //If set, this item is only accessible via $AwardExtraItem input (default: 0) } Secondary // Extended syntax, Item slot to use { Item "Magnum" // Item name, custom weapon names are available Cost 250 // The cost of the weapon (default: 0) AllowRefund 0 //Allow refunding of the weapon (default: 1) // Hidden 1 //If set, this item is only accessible via $AwardExtraItem input (default: 0) } Secondary // Extended syntax, Item slot to use { Item "Submachine Gun" // Item name, custom weapon names are available Cost 1000 // The cost of the weapon (default: 0) AllowRefund 0 //Allow refunding of the weapon (default: 1) // Hidden 1 //If set, this item is only accessible via $AwardExtraItem input (default: 0) } Secondary // Extended syntax, Item slot to use { Item "Silenced Submachine Gun" // Item name, custom weapon names are available Cost 2000 // The cost of the weapon (default: 0) AllowRefund 0 //Allow refunding of the weapon (default: 1) // Hidden 1 //If set, this item is only accessible via $AwardExtraItem input (default: 0) } Secondary // Extended syntax, Item slot to use { Item "Combat Rifle" // Item name, custom weapon names are available Cost 3000 // The cost of the weapon (default: 0) AllowRefund 0 //Allow refunding of the weapon (default: 1) // Hidden 1 //If set, this item is only accessible via $AwardExtraItem input (default: 0) } Secondary // Extended syntax, Item slot to use { Item "AK-47" // Item name, custom weapon names are available Cost 4000 // The cost of the weapon (default: 0) AllowRefund 0 //Allow refunding of the weapon (default: 1) // Hidden 1 //If set, this item is only accessible via $AwardExtraItem input (default: 0) } Secondary // Extended syntax, Item slot to use { Item "Pipe Bomb" // Item name, custom weapon names are available Cost 750 // The cost of the weapon (default: 0) AllowRefund 0 //Allow refunding of the weapon (default: 1) // Hidden 1 //If set, this item is only accessible via $AwardExtraItem input (default: 0) } Secondary // Extended syntax, Item slot to use { Item "Molotov Cocktail" // Item name, custom weapon names are available Cost 1000 // The cost of the weapon (default: 0) AllowRefund 0 //Allow refunding of the weapon (default: 1) // Hidden 1 //If set, this item is only accessible via $AwardExtraItem input (default: 0) } Secondary // Extended syntax, Item slot to use { Item "Boomer Bile Bomb" // Item name, custom weapon names are available Cost 1000 // The cost of the weapon (default: 0) AllowRefund 0 //Allow refunding of the weapon (default: 1) // Hidden 1 //If set, this item is only accessible via $AwardExtraItem input (default: 0) } Secondary // Extended syntax, Item slot to use { Item "Energy Drink (Adrenaline Shot)" // Item name, custom weapon names are available Cost 750 // The cost of the weapon (default: 0) AllowRefund 0 //Allow refunding of the weapon (default: 1) // Hidden 1 //If set, this item is only accessible via $AwardExtraItem input (default: 0) } Secondary // Extended syntax, Item slot to use { Item "Banana (Pain Pills)" // Item name, custom weapon names are available Cost 1000 // The cost of the weapon (default: 0) AllowRefund 0 //Allow refunding of the weapon (default: 1) // Hidden 1 //If set, this item is only accessible via $AwardExtraItem input (default: 0) } Secondary // Extended syntax, Item slot to use { Item "Sandvich (First Aid Kit)" // Item name, custom weapon names are available Cost 2000 // The cost of the weapon (default: 0) AllowRefund 0 //Allow refunding of the weapon (default: 1) // Hidden 1 //If set, this item is only accessible via $AwardExtraItem input (default: 0) } Melee // Extended syntax, Item slot to use { Item "Fire Axe" // Item name, custom weapon names are available Cost 1000 // The cost of the weapon (default: 0) AllowRefund 0 //Allow refunding of the weapon (default: 1) // Hidden 1 //If set, this item is only accessible via $AwardExtraItem input (default: 0) } Melee // Extended syntax, Item slot to use { Item "Baseball Bat" // Item name, custom weapon names are available Cost 1200 // The cost of the weapon (default: 0) AllowRefund 0 //Allow refunding of the weapon (default: 1) // Hidden 1 //If set, this item is only accessible via $AwardExtraItem input (default: 0) } Melee // Extended syntax, Item slot to use { Item "Golf Club" // Item name, custom weapon names are available Cost 1500 // The cost of the weapon (default: 0) AllowRefund 0 //Allow refunding of the weapon (default: 1) // Hidden 1 //If set, this item is only accessible via $AwardExtraItem input (default: 0) } Melee // Extended syntax, Item slot to use { Item "Machete" // Item name, custom weapon names are available Cost 2000 // The cost of the weapon (default: 0) AllowRefund 0 //Allow refunding of the weapon (default: 1) // Hidden 1 //If set, this item is only accessible via $AwardExtraItem input (default: 0) } Melee // Extended syntax, Item slot to use { Item "Golden Frying Pan" // Item name, custom weapon names are available Cost 10000 // The cost of the weapon (default: 0) AllowRefund 0 //Allow refunding of the weapon (default: 1) // Hidden 1 //If set, this item is only accessible via $AwardExtraItem input (default: 0) } } /////////////////////////////////////////////////////////////////////////// //Player And Item Attributes /////////////////////////////////////////////////////////////////////////// PlayerAttributes { "crit mod disabled" 0 "min respawn time" 30 // disable scout's quick respawn "move accuracy mult" 1.33 "duck accuracy mult" 0.5 "no damage falloff" 1 "allow bunny hop" 2 "halloween increased jump height" 0.9 "use original class weapon animations" 1 // test "self dmg push force decreased" 0.4 Scout { "min respawn time" 30 // disable scout's quick respawn "hidden maxhealth non buffed" -25 "move speed penalty" 0.7 "can headshot" 1 "no double jump" 1 "Reload time increased" 1.65 } Soldier { "can headshot" 1 "hidden maxhealth non buffed" -100 "move speed penalty" 1.16 "custom view model" "models/weapons/c_models/c_soldier_arms_rocketless.mdl" "Reload time increased" 1.65 } Demoman { "hidden maxhealth non buffed" -75 "can headshot" 1 "Reload time increased" 1.65 } Heavyweapons { "hidden maxhealth non buffed" -200 "can headshot" 1 "move speed penalty" 1.217 "Reload time increased" 1.65 } Engineer { "hidden maxhealth non buffed" -25 "can headshot" 1 "move speed penalty" 0.93 "Reload time increased" 1.65 } Sniper { "hidden maxhealth non buffed" -25 "can headshot" 1 "move speed penalty" 0.93 "Reload time increased" 1.65 } } /////////////////////////////////////////////////////////////////////////// //Natural Spawns /////////////////////////////////////////////////////////////////////////// PeriodicSpawn { When //Can be given a value (such as 3) to spawn the bot at that interval without the need for MinInterval and MaxInterval { MinInterval 60 MaxInterval 85 } Where Anywhere TFBot { Template T_Zombie_Special_Charger } } PeriodicSpawn { When //Can be given a value (such as 3) to spawn the bot at that interval without the need for MinInterval and MaxInterval { MinInterval 40 MaxInterval 50 } Where Anywhere TFBot { Template T_Zombie_Special_Spitter } } PeriodicSpawn { When //Can be given a value (such as 3) to spawn the bot at that interval without the need for MinInterval and MaxInterval { MinInterval 50 MaxInterval 70 } Where Anywhere TFBot { Template T_Zombie_Special_Grappler } } PeriodicSpawn { When //Can be given a value (such as 3) to spawn the bot at that interval without the need for MinInterval and MaxInterval { MinInterval 30 MaxInterval 45 } Where Anywhere TFBot { Template T_Zombie_Special_Boomer } } PeriodicSpawn { When //Can be given a value (such as 3) to spawn the bot at that interval without the need for MinInterval and MaxInterval { MinInterval 60 MaxInterval 85 } Where Anywhere TFBot { Template T_Zombie_Special_Hunter } } PeriodicSpawn { When //Can be given a value (such as 3) to spawn the bot at that interval without the need for MinInterval and MaxInterval { MinInterval 75 MaxInterval 90 } Where Anywhere TFBot { Template T_Zombie_Special_Jocky } } PeriodicSpawn { When //Can be given a value (such as 3) to spawn the bot at that interval without the need for MinInterval and MaxInterval { MinInterval 4.5 MaxInterval 9 } Where Anywhere RandomChoice { TFBot { Template T_Zombie_Demo } TFBot { Template T_Zombie_Sniper } TFBot { Template T_Zombie_Soldier } TFBot { Template T_Zombie_Heavy } TFBot { Template T_Zombie_Medic } } } /////////////////////////////////////////////////////////////////////////// //Replace Weapons /////////////////////////////////////////////////////////////////////////// ItemReplacement // Replace Items { "Pistol" // The replacement target item { ItemSlot "Secondary" } } ClassLimit //Limits the number of specified classes { Scout 1 Soldier 1 Pyro 0 Demoman 1 Heavyweapons 1 Engineer 1 Medic 0 Sniper 1 Spy 0 //too buggy and I can't fix it } /////////////////////////////////////////////////////////////////////////// //Weapon Upgrades /////////////////////////////////////////////////////////////////////////// ExtendedUpgrades { Incendiary_Ammo //Player Upgrades { Name "Incendiary Ammo" Attribute "Set DamageType Ignite" Cap 1 Increment 1 Cost 2500 PlayerUpgrade 1 SecondaryAttributes { "add damage type" 8 } DisallowedUpgrade { Upgrade Laser_Sight Level 1 } DisallowedUpgrade { Upgrade Explosive_Ammo Level 1 } } Explosive_Ammo //Player Upgrades { Name "Explosive Ammo" Attribute "explosive bullets" Cap 64 Increment 64 Cost 4000 PlayerUpgrade 1 SecondaryAttributes { "add damage type" 64 "Blast radius increased" 0.25 } DisallowedUpgrade { Upgrade Incendiary_Ammo Level 1 } DisallowedUpgrade { Upgrade Laser_Sight Level 1 } } Laser_Sight //Player Upgrades { Name "Laser Sight" Attribute "weapon spread bonus" Cap 0.6 Increment -0.4 Cost 1000 PlayerUpgrade 1 DisallowedUpgrade { Upgrade Incendiary_Ammo Level 1 } DisallowedUpgrade { Upgrade Explosive_Ammo Level 1 } } } ///////////////// //WAVES ///////////////// ///////////////// //START $800 ///////////////// /////////////////////////////////////////////////////////////////////////// //WAVE 1 ///////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////// // Total cash in this wave is $1000 /////////////////////////////////////////////////////////////////////////// Wave { WaitWhenDone 65 Checkpoint Yes StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } CustomMaxWaveNumber 0 // Display custom max wave number. 0 hides the max wave number Explanation { Line "{Green}****MONEY IS GAINED FROM KILLS****" Line "" Line "{800080}Sniper:{fbeccb} Well, that’s just our luck. Dead helicopter pilot and another infected town!" Line "{008080}Demoman:{fbeccb} I’ve had so much whisky, I don’t know what's real anymore!" Line "{Blue}Soldier:{fbeccb} Men, it looks like we're going to have to fight our way out again." Line "{Yellow}Scout:{fbeccb} I’ll look for escape options in the down time." } RedTeamWipeCausesWaveLoss 1 WaveSpawn { Name "Wave01" TotalCount 75 MaxActive 20 SpawnCount 5 WaitBeforeStarting 8 WaitBetweenSpawns 0.5 TotalCurrency 0 Where spawnbot HideIcon 1 RandomChoice { TFBot { Template T_Zombie_Demo } TFBot { Template T_Zombie_Heavy } TFBot { Template T_Zombie_Medic } TFBot { Template T_Zombie_Soldier } TFBot { Template T_Zombie_Sniper } } } WaveSpawn { Name "Wave01" TotalCount 4 MaxActive 3 SpawnCount 1 WaitBeforeStarting 20 WaitBetweenSpawns 4 TotalCurrency 0 Where spawnbot_left HideIcon 1 TFBot { Template T_Zombie_Special_Hunter } } WaveSpawn { Name "Wave01" TotalCount 3 MaxActive 2 SpawnCount 1 WaitBeforeStarting 16 WaitBetweenSpawns 8 TotalCurrency 0 Where spawnbot_right HideIcon 1 TFBot { Template T_Zombie_Special_Jocky } } WaveSpawn { Name "Wave02" WaitForAllDead "Wave01" TotalCount 50 MaxActive 20 SpawnCount 3 WaitBeforeStarting 4 WaitBetweenSpawns 4 TotalCurrency 0 Where spawnbot HideIcon 1 RandomChoice { TFBot { Template T_Zombie_Demo } TFBot { Template T_Zombie_Heavy } TFBot { Template T_Zombie_Medic } TFBot { Template T_Zombie_Soldier } TFBot { Template T_Zombie_Sniper } } } WaveSpawn { Name "Wave02" WaitForAllDead "Wave01" TotalCount 4 MaxActive 4 SpawnCount 1 WaitBeforeStarting 16 WaitBetweenSpawns 7 TotalCurrency 0 Where spawnbot_right Where spawnbot_left HideIcon 1 TFBot { Template T_Zombie_Special_Grappler } } WaveSpawn { Name "Wave02" WaitForAllDead "Wave01" TotalCount 4 MaxActive 4 SpawnCount 2 WaitBeforeStarting 6 WaitBetweenSpawns 6 TotalCurrency 0 Where spawnbot HideIcon 1 TFBot { Template T_Zombie_Special_Spitter } } WaveSpawn { Name "Wave03" WaitForAllDead "Wave02" TotalCount 4 MaxActive 4 SpawnCount 1 WaitBeforeStarting 20 WaitBetweenSpawns 20 TotalCurrency 0 Where spawnbot HideIcon 1 TFBot { Template T_Zombie_Special_Charger } } WaveSpawn { Name "Wave03" WaitForAllDead "Wave02" TotalCount 6 MaxActive 6 SpawnCount 2 WaitBeforeStarting 16 WaitBetweenSpawns 12 TotalCurrency 0 Where spawnbot_right HideIcon 1 TFBot { Template T_Zombie_Special_Grappler } } WaveSpawn { Name "Wave03" WaitForAllDead "Wave02" TotalCount 4 MaxActive 4 SpawnCount 1 WaitBeforeStarting 24 WaitBetweenSpawns 15 TotalCurrency 0 Where spawnbot_left HideIcon 1 TFBot { Template T_Zombie_Special_Hunter } } WaveSpawn { Name "Wave04" WaitForAllDead "Wave03" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 12.5 WaitBetweenSpawns 20 TotalCurrency 0 Where spawnbot_left HideIcon 1 FirstSpawnWarningSound "trespasser\tank_yell_10.wav" FirstSpawnOutput { Target shakeit2 Action startshake } TFBot { Template T_Zombie_Special_Tank } } } ///////////////////////////////////////////////////////////////// //Wave 2 // ///////////////////////////////////////////////////////////////// Wave { WaitWhenDone 65 Checkpoint Yes StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } CustomMaxWaveNumber 0 // Display custom max wave number. 0 hides the max wave number Explanation { Line "{Yellow}Scout:{fbeccb} No luck in finding an escape yet." Line "{800080}Sniper:{fbeccb} Knowing our luck, there isn’t." Line "{Red}Heavy:{fbeccb} Worst case scenario, we go into the mines by the graveyard." Line "{Green}Engineer:{fbeccb} I would say I can fix the helicopter, but I'm no helicopter engineer." } RedTeamWipeCausesWaveLoss 1 WaveSpawn { Name "Wave01" TotalCount 50 MaxActive 20 SpawnCount 5 WaitBeforeStarting 2 WaitBetweenSpawns 0.5 TotalCurrency 0 Where spawnbot_left Where spawnbot_right randomspawn 1 HideIcon 1 RandomChoice { TFBot { Template T_Zombie_Demo } TFBot { Template T_Zombie_Heavy } TFBot { Template T_Zombie_Medic } TFBot { Template T_Zombie_Soldier } TFBot { Template T_Zombie_Sniper } } } WaveSpawn { Name "Wave01" TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 5 WaitBetweenSpawns 8 TotalCurrency 0 Where spawnbot HideIcon 1 TFBot { Template T_Zombie_Special_Charger } } WaveSpawn { Name "Wave01" TotalCount 5 MaxActive 4 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 6 TotalCurrency 0 Where spawnbot_right HideIcon 1 TFBot { Template T_Zombie_Special_Grappler } } WaveSpawn { Name "Wave02" WaitForAllDead "Wave01" TotalCount 40 MaxActive 20 SpawnCount 10 WaitBeforeStarting 4 WaitBetweenSpawns 5 TotalCurrency 0 Where spawnbot HideIcon 1 RandomChoice { TFBot { Template T_Zombie_Demo } TFBot { Template T_Zombie_Heavy } TFBot { Template T_Zombie_Medic } TFBot { Template T_Zombie_Soldier } TFBot { Template T_Zombie_Sniper } } } WaveSpawn { Name "Wave02" WaitForAllDead "Wave01" TotalCount 5 MaxActive 4 SpawnCount 2 WaitBeforeStarting 8 WaitBetweenSpawns 7 TotalCurrency 0 Where spawnbot HideIcon 1 TFBot { Template T_Zombie_Special_Spitter } } WaveSpawn { Name "Wave02" WaitForAllDead "Wave01" TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 12 TotalCurrency 0 Where spawnbot_right Where spawnbot_left HideIcon 1 TFBot { Template T_Zombie_Special_Hunter } } WaveSpawn { Name "Wave03" WaitForAllDead "Wave02" TotalCount 75 MaxActive 20 SpawnCount 3 WaitBeforeStarting 5.5 WaitBetweenSpawns 4 TotalCurrency 0 Where spawnbot HideIcon 1 RandomChoice { TFBot { Template T_Zombie_Demo } TFBot { Template T_Zombie_Heavy } TFBot { Template T_Zombie_Medic } TFBot { Template T_Zombie_Soldier } TFBot { Template T_Zombie_Sniper } } } WaveSpawn { Name "Wave03" WaitForAllDead "Wave02" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 16 WaitBetweenSpawns 15 TotalCurrency 0 Where spawnbot_right HideIcon 1 TFBot { Template T_Zombie_Special_Grappler } } WaveSpawn { Name "Wave03" WaitForAllDead "Wave02" TotalCount 3 MaxActive 2 SpawnCount 1 WaitBeforeStarting 14 WaitBetweenSpawns 15 TotalCurrency 0 Where spawnbot HideIcon 1 TFBot { Template T_Zombie_Special_Charger } } WaveSpawn { Name "Wave03" WaitForAllDead "Wave02" TotalCount 6 MaxActive 6 SpawnCount 2 WaitBeforeStarting 16 WaitBetweenSpawns 12 TotalCurrency 0 Where spawnbot_right HideIcon 1 TFBot { Template T_Zombie_Special_Jocky } } WaveSpawn { Name "Wave03" WaitForAllDead "Wave02" TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 24 WaitBetweenSpawns 15 TotalCurrency 0 Where spawnbot_left HideIcon 1 TFBot { Template T_Zombie_Special_Hunter } } WaveSpawn { Name "Wave04" WaitForAllDead "Wave03" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 12.5 WaitBetweenSpawns 20 TotalCurrency 0 Where spawnbot_left HideIcon 1 FirstSpawnWarningSound "trespasser\tank_yell_10.wav" FirstSpawnOutput { Target shakeit2 Action startshake } TFBot { Template T_Zombie_Special_Tank } } WaveSpawn { Name "Wave04" WaitForAllDead "Wave03" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 16 WaitBetweenSpawns 20 TotalCurrency 0 Where spawnbot_left HideIcon 1 FirstSpawnWarningSound "trespasser\tank_yell_10.wav" FirstSpawnOutput { Target shakeit2 Action startshake } TFBot { Template T_Zombie_Special_Tank } } } ///////////////////////////////////////////////////////////////// //Wave 3 // ///////////////////////////////////////////////////////////////// Wave { WaitWhenDone 65 Checkpoint Yes StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } CustomMaxWaveNumber 0 // Display custom max wave number. 0 hides the max wave number Explanation { Line "{Red}Heavy:{fbeccb} Scout, any updates?" Line "{Yellow}Scout:{fbeccb} All bad news, no good news." Line "{Yellow}Scout:{fbeccb} I’ve seen several tanks and no escape." Line "{Blue}Soldier:{fbeccb} Sounds like we got one hell of a fight, maggots!" } RedTeamWipeCausesWaveLoss 1 WaveSpawn { Name "Wave01" TotalCount 50 MaxActive 20 SpawnCount 5 WaitBeforeStarting 0 WaitBetweenSpawns 0.5 TotalCurrency 0 Where spawnbot HideIcon 1 RandomChoice { TFBot { Template T_Zombie_Demo } TFBot { Template T_Zombie_Heavy } TFBot { Template T_Zombie_Medic } TFBot { Template T_Zombie_Soldier } TFBot { Template T_Zombie_Sniper } } } WaveSpawn { Name "Wave01" TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 4 WaitBetweenSpawns 12 TotalCurrency 0 Where spawnbot_right HideIcon 1 TFBot { Template T_Zombie_Special_Jocky } } WaveSpawn { Name "Wave01" TotalCount 4 MaxActive 4 SpawnCount 1 WaitBeforeStarting 2 WaitBetweenSpawns 9 TotalCurrency 0 Where spawnbot_left HideIcon 1 TFBot { Template T_Zombie_Special_Hunter } } WaveSpawn { Name "Wave02" WaitForAllDead "Wave01" TotalCount 5 MaxActive 3 SpawnCount 2 WaitBeforeStarting 10 WaitBetweenSpawns 7 TotalCurrency 0 Where spawnbot HideIcon 1 TFBot { Template T_Zombie_Special_Charger } } WaveSpawn { Name "Wave02" WaitForAllDead "Wave01" TotalCount 4 MaxActive 3 SpawnCount 2 WaitBeforeStarting 8 WaitBetweenSpawns 4 TotalCurrency 0 Where spawnbot_right Where spawnbot_left randomspawn 1 HideIcon 1 TFBot { Template T_Zombie_Special_Grappler } } WaveSpawn { Name "Wave02" WaitForAllDead "Wave01" TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 15 WaitBetweenSpawns 12 TotalCurrency 0 Where spawnbot_right Where spawnbot_left HideIcon 1 TFBot { Template T_Zombie_Special_Jocky } } WaveSpawn { Name "Wave03" WaitForAllDead "Wave02" TotalCount 50 MaxActive 20 SpawnCount 5 WaitBeforeStarting 4 WaitBetweenSpawns 0.5 TotalCurrency 0 Where spawnbot HideIcon 1 RandomChoice { TFBot { Template T_Zombie_Demo } TFBot { Template T_Zombie_Heavy } TFBot { Template T_Zombie_Medic } TFBot { Template T_Zombie_Soldier } TFBot { Template T_Zombie_Sniper } } } WaveSpawn { Name "Wave03" WaitForAllDead "Wave02" TotalCount 8 MaxActive 6 SpawnCount 2 WaitBeforeStarting 12 WaitBetweenSpawns 10 TotalCurrency 0 Where spawnbot_left HideIcon 1 TFBot { Template T_Zombie_Special_Hunter } } WaveSpawn { Name "Wave03" WaitForAllDead "Wave02" TotalCount 2 MaxActive 2 SpawnCount 1 WaitBeforeStarting 16 WaitBetweenSpawns 15 TotalCurrency 0 Where spawnbot_right Where spawnbot HideIcon 1 TFBot { Template T_Zombie_Special_Grappler } } WaveSpawn { Name "Wave04" WaitForAllDead "Wave03" TotalCount 25 MaxActive 20 SpawnCount 2 WaitBeforeStarting 4 WaitBetweenSpawns 3 TotalCurrency 0 Where spawnbot_right HideIcon 1 RandomChoice { TFBot { Template T_Zombie_Demo } TFBot { Template T_Zombie_Heavy } TFBot { Template T_Zombie_Medic } TFBot { Template T_Zombie_Soldier } TFBot { Template T_Zombie_Sniper } } } WaveSpawn { Name "Wave04" WaitForAllDead "Wave03" TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 6 WaitBetweenSpawns 10 TotalCurrency 0 Where spawnbot_right HideIcon 1 TFBot { Template T_Zombie_Special_Jocky } } WaveSpawn { Name "Wave04" WaitForAllDead "Wave03" TotalCount 4 MaxActive 3 SpawnCount 1 WaitBeforeStarting 9 WaitBetweenSpawns 12 TotalCurrency 0 Where spawnbot_right HideIcon 1 TFBot { Template T_Zombie_Special_Charger } } WaveSpawn { Name "Wave05" WaitForAllDead "Wave04" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 12.5 WaitBetweenSpawns 20 TotalCurrency 0 Where spawnbot_left HideIcon 1 FirstSpawnWarningSound "trespasser\tank_yell_10.wav" FirstSpawnOutput { Target shakeit2 Action startshake } TFBot { Template T_Zombie_Special_Tank } } WaveSpawn { Name "Wave05" WaitForAllDead "Wave04" TotalCount 50 MaxActive 20 SpawnCount 5 WaitBeforeStarting 10 WaitBetweenSpawns 0.5 TotalCurrency 0 Where spawnbot HideIcon 1 RandomChoice { TFBot { Template T_Zombie_Demo } TFBot { Template T_Zombie_Heavy } TFBot { Template T_Zombie_Medic } TFBot { Template T_Zombie_Soldier } TFBot { Template T_Zombie_Sniper } } } WaveSpawn { Name "Wave05" WaitForAllDead "Wave04" TotalCount 2 MaxActive 2 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 10 TotalCurrency 0 Where spawnbot_left HideIcon 1 TFBot { Template T_Zombie_Special_Jocky } } WaveSpawn { Name "Wave05" WaitForAllDead "Wave04" TotalCount 3 MaxActive 2 SpawnCount 1 WaitBeforeStarting 12.5 WaitBetweenSpawns 12 TotalCurrency 0 Where spawnbot HideIcon 1 TFBot { Template T_Zombie_Special_Grappler } } } ///////////////////////////////////////////////////////////////// //Wave 4 // ///////////////////////////////////////////////////////////////// Wave { WaitWhenDone 65 Checkpoint Yes StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } CustomMaxWaveNumber 0 // Display custom max wave number. 0 hides the max wave number Explanation { Line "{Yellow}Scout:{fbeccb} We’ve got to go! I’ve counted at least four tanks!" Line "{800080}Sniper:{fbeccb} Damn, four tanks, and no escape options." Line "{Red}Heavy:{fbeccb} Well, we’ve got one." Line "{Green}Engineer:{fbeccb} Better than standing our ground and dying." Line "{800080}Sniper:{fbeccb} Okay, we kill most of the horde, then flee into the mines." } RedTeamWipeCausesWaveLoss 1 WaveSpawn { Name "Wave01" TotalCount 50 MaxActive 20 SpawnCount 5 WaitBeforeStarting 0 WaitBetweenSpawns 0.5 TotalCurrency 0 Where spawnbot HideIcon 1 RandomChoice { TFBot { Template T_Zombie_Demo } TFBot { Template T_Zombie_Heavy } TFBot { Template T_Zombie_Medic } TFBot { Template T_Zombie_Soldier } TFBot { Template T_Zombie_Sniper } } } WaveSpawn { Name "Wave01" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 15 WaitBetweenSpawns 20 TotalCurrency 0 Where spawnbot_left HideIcon 1 FirstSpawnWarningSound "trespasser\tank_yell_10.wav" FirstSpawnOutput { Target shakeit2 Action startshake } TFBot { Template T_Zombie_Special_Tank } } WaveSpawn { Name "Wave01" TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 12 WaitBetweenSpawns 14 TotalCurrency 0 Where spawnbot_right HideIcon 1 TFBot { Template T_Zombie_Special_Jocky } } WaveSpawn { Name "Wave01" TotalCount 4 MaxActive 4 SpawnCount 1 WaitBeforeStarting 4 WaitBetweenSpawns 9 TotalCurrency 0 Where spawnbot HideIcon 1 TFBot { Template T_Zombie_Special_Spitter } } WaveSpawn { Name "Wave02" WaitForAllDead "Wave01" TotalCount 9 MaxActive 7 SpawnCount 3 WaitBeforeStarting 10 WaitBetweenSpawns 9 TotalCurrency 0 Where spawnbot HideIcon 1 TFBot { Template T_Zombie_Special_Charger } } WaveSpawn { Name "Wave02" WaitForAllDead "Wave01" TotalCount 6 MaxActive 5 SpawnCount 2 WaitBeforeStarting 12 WaitBetweenSpawns 8 TotalCurrency 0 Where spawnbot_right Where spawnbot_left randomspawn 1 HideIcon 1 TFBot { Template T_Zombie_Special_Grappler } } WaveSpawn { Name "Wave02" WaitForAllDead "Wave01" TotalCount 4 MaxActive 4 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 12 TotalCurrency 0 Where spawnbot Where spawnbot HideIcon 1 TFBot { Template T_Zombie_Special_Hunter } } WaveSpawn { Name "Wave02" WaitForAllDead "Wave01" TotalCount 20 MaxActive 20 SpawnCount 1 WaitBeforeStarting 8 WaitBetweenSpawns 1 TotalCurrency 0 Where spawnbot HideIcon 1 RandomChoice { TFBot { Template T_Zombie_Demo } TFBot { Template T_Zombie_Heavy } TFBot { Template T_Zombie_Medic } TFBot { Template T_Zombie_Soldier } TFBot { Template T_Zombie_Sniper } } } WaveSpawn { Name "Wave03" WaitForAllSpawned "Wave02" TotalCount 75 MaxActive 20 SpawnCount 2 WaitBeforeStarting 4 WaitBetweenSpawns 3 TotalCurrency 0 Where spawnbot HideIcon 1 RandomChoice { TFBot { Template T_Zombie_Demo } TFBot { Template T_Zombie_Heavy } TFBot { Template T_Zombie_Medic } TFBot { Template T_Zombie_Soldier } TFBot { Template T_Zombie_Sniper } } } WaveSpawn { Name "Wave03" WaitForAllSpawned "Wave02" TotalCount 2 MaxActive 2 SpawnCount 1 WaitBeforeStarting 12.5 WaitBetweenSpawns 15 TotalCurrency 0 Where spawnbot_left HideIcon 1 FirstSpawnWarningSound "trespasser\tank_yell_10.wav" LastSpawnWarningSound "trespasser\tank_yell_10.wav" FirstSpawnOutput { Target shakeit2 Action startshake } LastSpawnOutput { Target shakeit2 Action startshake } TFBot { Template T_Zombie_Special_Tank } } WaveSpawn { Name "Wave03" WaitForAllSpawned "Wave02" TotalCount 4 MaxActive 3 SpawnCount 1 WaitBeforeStarting 12 WaitBetweenSpawns 15 TotalCurrency 0 Where spawnbot HideIcon 1 TFBot { Template T_Zombie_Special_Charger } } WaveSpawn { Name "Wave03" WaitForAllSpawned "Wave02" TotalCount 3 MaxActive 2 SpawnCount 1 WaitBeforeStarting 16 WaitBetweenSpawns 10 TotalCurrency 0 Where spawnbot_right Where spawnbot HideIcon 1 TFBot { Template T_Zombie_Special_Grappler } } WaveSpawn { Name "Wave03" WaitForAllSpawned "Wave02" TotalCount 5 MaxActive 4 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 8 TotalCurrency 0 Where spawnbot_left Where spawnbot HideIcon 1 TFBot { Template T_Zombie_Special_Spitter } } WaveSpawn { Name "Wave04" WaitForAllDead "Wave03" TotalCount 10000 //count as 100 MaxActive 20 SpawnCount 5 WaitBeforeStarting 8 WaitBetweenSpawns 0.5 TotalCurrency 0 Where spawnbot HideIcon 1 RandomChoice { TFBot { Template T_Zombie_Demo } TFBot { Template T_Zombie_Heavy } TFBot { Template T_Zombie_Medic } TFBot { Template T_Zombie_Soldier } TFBot { Template T_Zombie_Sniper } } } WaveSpawn { Name "Wave04" WaitForAllDead "Wave03" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 12.5 WaitBetweenSpawns 15 TotalCurrency 0 Where spawnbot_left HideIcon 1 FirstSpawnWarningSound "trespasser\tank_yell_10.wav" FirstSpawnOutput { Target shakeit2 Action startshake } DoneOutput { Target cave_win_enable_trigger Action Trigger } TFBot { Template T_Zombie_Special_Tank } } WaveSpawn { Name "Wave04" WaitForAllDead "Wave03" TotalCount 100 //count as 10 MaxActive 7 SpawnCount 2 WaitBeforeStarting 9 WaitBetweenSpawns 12 TotalCurrency 0 Where spawnbot HideIcon 1 TFBot { Template T_Zombie_Special_Spitter } } WaveSpawn { Name "Wave04" WaitForAllDead "Wave03" TotalCount 100 //count as 10 MaxActive 4 SpawnCount 1 WaitBeforeStarting 20 WaitBetweenSpawns 16 TotalCurrency 0 Where spawnbot_left HideIcon 1 TFBot { Template T_Zombie_Special_Charger } } WaveSpawn { Name "Wave04" WaitForAllDead "Wave03" TotalCount 100 //count as 10 MaxActive 1 SpawnCount 1 WaitBeforeStarting 9 WaitBetweenSpawnsAfterDeath 2 TotalCurrency 0 Where spawnbot_right HideIcon 1 TFBot { Template T_Zombie_Special_Boomer } } } }