#base robot_giant.pop #base robot_standard.pop #base robot_D_I_L.pop #base robot_deathmatch_base.pop #base robot_deathmatch_commonspawns.pop #base robot_deathmatch_giant_spawns.pop #base robot_deathmatch_hyperspawns.pop //Updated Admin Version WaveSchedule { StartingCurrency 0 CanBotsAttackWhileInSpawnRoom No RespawnWaveTime 1 AllowBotExtraSlots 1 MaxRedPlayers 40 ExtraBotSlotsNoDeathcam 1 RobotLimit 66 SniperAllowHeadshots 1 NoReanimators 1 UpgradeStationKeepWeapons 1 ExtendedUpgradesOnly 1 BluPlayersAreRobots 1 RedPlayersAreRobots 1 BodyPartScaleSpeed 99 NoRedBotsRandomCrit 1 MaxSpeedLimit 2000 PrecacheModel "models/bots/scout_boss/bot_scout_gray_boss.mdl" PrecacheModel "models/bots/soldier_boss/bot_soldier_gray_boss.mdl" PrecacheModel "models/bots/pyro_boss/bot_pyro_gray_boss.mdl" PrecacheModel "models/bots/demo_boss/bot_demo_gray_boss.mdl" PrecacheModel "models/bots/heavy_boss/bot_heavy_gray_boss.mdl" PrecacheModel "models/bots/scout/bot_scout_gray.mdl" PrecacheModel "models/bots/soldier/bot_soldier_gray.mdl" PrecacheModel "models/bots/pyro/bot_pyro_gray.mdl" PrecacheModel "models/bots/demo/bot_demo_gray.mdl" PrecacheModel "models/bots/heavy/bot_heavy_gray.mdl" PrecacheModel "models/bots/engineer/bot_engineer_gray.mdl" PrecacheModel "models/bots/medic/bot_medic_gray.mdl" PrecacheModel "models/bots/sniper/bot_sniper_gray.mdl" PrecacheModel "models/bots/spy/bot_spy_gray.mdl" PrecacheSound "platypus1ostarmalyte.wav" PointTemplates { corelogic { NoFixup 1 logic_auto { "origin" "0 0 0" "targetname" "mainrelay" "OnMapSpawn" "spawnbot_lower,Kill,,0,-1" "OnMapSpawn" "spawnbot_invasion,Kill,,0,-1" "OnMapSpawn" "spawnbot_mission_sniper,Kill,,0,-1" "OnMapSpawn" "spawnbot_mission_spy,Kill,,0,-1" } } music { NoFixup 1 ambient_generic { "targetname" "w4_music" "message" "platypus1ostarmalyte.wav" "health" "10" "radius" "69420" "spawnflags" "17" } NoFixup 1 logic_relay { "targetname" "jug" "OnTrigger" "w4_music,PlaySound,,0,-1" } NoFixup 1 ambient_generic { "targetname" "w4_music" "message" "platypus1ostarmalyte.wav" "health" "10" "radius" "69420" "spawnflags" "17" } NoFixup 1 logic_relay { "targetname" "jug" "OnTrigger" "w4_music,PlaySound,,0,-1" } } music2 { NoFixup 1 ambient_generic { "targetname" "w5_music" "message" "platypus1ostarmalyte.wav" "health" "10" "radius" "69420" "spawnflags" "17" } NoFixup 1 logic_relay { "targetname" "jug2" "OnTrigger" "w4_music,StopSound,,0,-1" "OnTrigger" "w5_music,PlaySound,,0,-1" } NoFixup 1 ambient_generic { "targetname" "w5_music" "message" "platypus1ostarmalyte.wav" "health" "10" "radius" "69420" "spawnflags" "17" } NoFixup 1 logic_relay { "targetname" "jug2" "OnTrigger" "w4_music,StopSound,,0,-1" "OnTrigger" "w5_music,PlaySound,,0,-1" } } music3 { NoFixup 1 ambient_generic { "targetname" "w6_music" "message" "platypus1ostarmalyte.wav" "health" "10" "radius" "69420" "spawnflags" "17" } NoFixup 1 logic_relay { "targetname" "jug3" "OnTrigger" "w5_music,StopSound,,0,-1" "OnTrigger" "w6_music,PlaySound,,0,-1" } NoFixup 1 ambient_generic { "targetname" "w6_music" "message" "platypus1ostarmalyte.wav" "health" "10" "radius" "69420" "spawnflags" "17" } NoFixup 1 logic_relay { "targetname" "jug3" "OnTrigger" "w5_music,StopSound,,0,-1" "OnTrigger" "w6_music,PlaySound,,0,-1" } } NoFixup 1 finaltele { trigger_teleport //teleport timer to box { "targetname" "timertele" "origin" "-333 -2759 420" "spawnflags" "1" "solid" "0" "StartDisabled" "0" "maxs" "30 30 30" "mins" "-30 -30 -30" "target" "timerbox" } info_target { "targetname" "timerbox" "origin" "65 -3137 450" } } NoFixup 1 blueman { trigger_add_tf_player_condition { "condition" "43" "origin" "110 -2950 450" "maxs" "30 30 30" "mins" "-30 -30 -30" "spawnflags" "1" "duration" "999" } trigger_teleport //teleport timer to box { "targetname" "timertele" "origin" "110 -2950 450" "spawnflags" "1" "solid" "0" "StartDisabled" "0" "maxs" "20 20 30" "mins" "-20 -20 -30" "target" "timeregg" } info_target { "targetname" "timeregg" "origin" "2163 2687 544" } trigger_add_tf_player_condition { "condition" "43" "origin" "-50 -2950 450" "maxs" "30 30 30" "mins" "-30 -30 -30" "spawnflags" "1" "duration" "999" } trigger_teleport //teleport timer to box { "targetname" "timertele" "origin" "-50 -2950 450" "spawnflags" "1" "solid" "0" "StartDisabled" "0" "maxs" "20 20 30" "mins" "-20 -20 -30" "target" "timeregg2" } info_target { "targetname" "timeregg2" "origin" "-520 3130 512" } } NoFixup 1 unstucktele { trigger_teleport //teleport timer to box { "targetname" "unstucktele" "origin" "-65 -2845 420" "spawnflags" "1" "solid" "0" "StartDisabled" "0" "maxs" "150 3 30" "mins" "-150 -3 -30" "target" "unstuckbox" } info_target { "targetname" "unstuckbox" "origin" "-65 -2623 450" } } spawnIndicators { NoFixup 1 entity { "id" "6" "classname" "prop_dynamic" "angles" "0 90 0" "DefaultAnim" "idle" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "MinAnimTime" "5" "model" "models/props_mvm/robot_spawnpoint.mdl" "modelscale" "0.6" "renderamt" "255" "rendercolor" "255 255 255" "skin" "0" "solid" "6" "targetname" "2ndLeftG" "origin" "-333 -2759 386" editor { "color" "30 220 220" "visgroupshown" "1" "visgroupautoshown" "1" "logicalpos" "[0 0]" } } NoFixup 1 entity { "id" "6" "classname" "prop_dynamic" "angles" "0 0 0" "DefaultAnim" "idle" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "MinAnimTime" "5" "model" "models/props_mvm/robot_spawnpoint.mdl" "modelscale" "0.6" "renderamt" "255" "rendercolor" "255 255 255" "skin" "0" "solid" "6" "targetname" "2ndLeftG" "origin" "110 -2950 424" editor { "color" "30 220 220" "visgroupshown" "1" "visgroupautoshown" "1" "logicalpos" "[0 0]" } } NoFixup 1 entity { "id" "6" "classname" "prop_dynamic" "angles" "0 180 0" "DefaultAnim" "idle" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "MinAnimTime" "5" "model" "models/props_mvm/robot_spawnpoint.mdl" "modelscale" "0.6" "renderamt" "255" "rendercolor" "255 255 255" "skin" "0" "solid" "6" "targetname" "2ndLeftG" "origin" "-50 -2950 424" editor { "color" "30 220 220" "visgroupshown" "1" "visgroupautoshown" "1" "logicalpos" "[0 0]" } } } } Spawntemplate "corelogic" Spawntemplate "finaltele" Spawntemplate "unstucktele" Spawntemplate "blueman" Spawntemplate "spawnIndicators" Spawntemplate "music" Spawntemplate "music2" Spawntemplate "music3" ExtraSpawnPoint { Name "red" TeamNum 2 X "900" Y "-2000" Z "510" } ExtraSpawnPoint { Name "red" TeamNum 2 X "-115" Y "-890" Z "580" } ExtraSpawnPoint { Name "red" TeamNum 2 X "-1100" Y "-190" Z "580" } ExtraSpawnPoint { Name "red" TeamNum 2 X "-465" Y "-1495" Z "530" } ExtraSpawnPoint { Name "red" TeamNum 2 X "-60" Y "-2064" Z "547" } ExtraSpawnPoint { Name "gray" TeamNum 2 X "449" Y "539" Z "384" } ExtraSpawnPoint { Name "gray" TeamNum 2 X "447" Y "780" Z "384" } ExtraSpawnPoint { Name "gray" TeamNum 2 X "-450" Y "108" Z "56" } Templates { } Mission // sentry buster { Objective DestroySentries InitialCooldown 5 Where spawnbot BeginAtWave 1 RunForThisManyWaves 6 CooldownTime 35 TFBot { Template T_TFBot_SentryBuster } } Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaitWhenDone 65 Checkpoint Yes Explanation //Dispayed once the wave is initialized { Line "{green}Standard X 2" } WaveSpawn // 1 Heavyweight champ spawnbot ignore flag push (10) { Where spawnbot TotalCount 2 SpawnCount 2 WaitBeforeStarting 999 WaitBetweenSpawns 1 TotalCurrency 0 Template T_Wavespawn_Blu_Boss } WaveSpawn // blu light { Where spawnbot MaxActive 14 SpawnCount 1 WaitBetweenSpawns 0.5 TotalCount 999 Template T_Wavespawn_Blu_Light } WaveSpawn // blu Med { Where spawnbot TotalCount 100 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 0.5 Template T_Wavespawn_Blu_Medium } WaveSpawn // blu Heavy { Where spawnbot TotalCount 200 MaxActive 6 SpawnCount 1 WaitBetweenSpawns 12.5 Template T_Wavespawn_Blu_Heavy Support 1 } WaveSpawn // blu event { Where spawnbot TotalCount 8 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 180 WaitBeforeStarting 300 RandomSpawn 1 Support 1 RandomChoice { TFBot { Template MrBomber Action Mobber Attributes IgnoreFlag ClassIcon Random_lite } TFBot { Template HomingStar Action Mobber Attributes IgnoreFlag ClassIcon Random_lite } TFBot { Template WeeBeastie Action Mobber Attributes IgnoreFlag ClassIcon Random_lite } TFBot { Template SoldierSupreme Action Mobber Attributes IgnoreFlag ClassIcon Random_lite } TFBot { Template PipePirate Action Mobber Attributes IgnoreFlag ClassIcon Random_lite } } } WaveSpawn // red light { Where red TotalCount 900 MaxActive 14 SpawnCount 1 WaitBetweenSpawns 0.5 Template T_Wavespawn_Red_Light } WaveSpawn // red Med { Where red TotalCount 100 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 0.5 Template T_Wavespawn_Red_Medium } WaveSpawn // red heavy { Where red TotalCount 900 MaxActive 6 SpawnCount 1 WaitBetweenSpawns 12.5 Template T_Wavespawn_Red_Heavy Support 1 } WaveSpawn // red event { Where red TotalCount 900 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 180 WaitBeforeStarting 390 RandomSpawn 1 Support 1 RandomChoice { TFBot { Template MrBomber Action Mobber Attributes IgnoreFlag ClassIcon red2_lite AddCond { Name "TF_COND_REPROGRAMMED" } } TFBot { Template HomingStar Action Mobber Attributes IgnoreFlag ClassIcon red2_lite AddCond { Name "TF_COND_REPROGRAMMED" } } TFBot { Template WeeBeastie Action Mobber Attributes IgnoreFlag ClassIcon red2_lite AddCond { Name "TF_COND_REPROGRAMMED" } } TFBot { Template SoldierSupreme Action Mobber Attributes IgnoreFlag ClassIcon red2_lite AddCond { Name "TF_COND_REPROGRAMMED" } } TFBot { Template PipePirate Action Mobber Attributes IgnoreFlag ClassIcon red2_lite AddCond { Name "TF_COND_REPROGRAMMED" } } } } } Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaitWhenDone 65 Checkpoint Yes Explanation //Dispayed once the wave is initialized { Line "{green}Standard X 3" } WaveSpawn // 1 Heavyweight champ spawnbot ignore flag push (10) { Where spawnbot TotalCount 3 SpawnCount 1 WaitBeforeStarting 999 WaitBetweenSpawns 1 TotalCurrency 0 Template T_Wavespawn_Blu_Boss } WaveSpawn // blu light { Where spawnbot MaxActive 21 SpawnCount 1 TotalCount 999 WaitBetweenSpawns 0.3 Template T_Wavespawn_Blu_Light } WaveSpawn // blu Med { Where spawnbot TotalCount 100 MaxActive 3 SpawnCount 1 WaitBetweenSpawns 0.3 Template T_Wavespawn_Blu_Medium } WaveSpawn // blu Heavy { Where spawnbot TotalCount 200 MaxActive 6 SpawnCount 1 WaitBetweenSpawns 12.5 Template T_Wavespawn_Blu_Heavy Support 1 } WaveSpawn // blu event { Where spawnbot TotalCount 8 MaxActive 3 SpawnCount 1 WaitBetweenSpawns 120 WaitBeforeStarting 300 RandomSpawn 1 Support 1 RandomChoice { TFBot { Template MrBomber Action Mobber Attributes IgnoreFlag ClassIcon Random_lite } TFBot { Template HomingStar Action Mobber Attributes IgnoreFlag ClassIcon Random_lite } TFBot { Template WeeBeastie Action Mobber Attributes IgnoreFlag ClassIcon Random_lite } TFBot { Template SoldierSupreme Action Mobber Attributes IgnoreFlag ClassIcon Random_lite } TFBot { Template PipePirate Action Mobber Attributes IgnoreFlag ClassIcon Random_lite } } } WaveSpawn // red light { Where red TotalCount 900 MaxActive 21 SpawnCount 1 WaitBetweenSpawns 0.3 Template T_Wavespawn_Red_Light } WaveSpawn // red Med { Where red TotalCount 100 MaxActive 3 SpawnCount 1 WaitBetweenSpawns 0.3 Template T_Wavespawn_Red_Medium } WaveSpawn // red heavy { Where red TotalCount 900 MaxActive 9 SpawnCount 1 WaitBetweenSpawns 8.2 Template T_Wavespawn_Red_Heavy Support 1 } WaveSpawn // red event { Where red TotalCount 900 MaxActive 3 SpawnCount 1 WaitBetweenSpawns 120 WaitBeforeStarting 360 RandomSpawn 1 Support 1 RandomChoice { TFBot { Template MrBomber Action Mobber Attributes IgnoreFlag ClassIcon red2_lite AddCond { Name "TF_COND_REPROGRAMMED" } } TFBot { Template HomingStar Action Mobber Attributes IgnoreFlag ClassIcon red2_lite AddCond { Name "TF_COND_REPROGRAMMED" } } TFBot { Template WeeBeastie Action Mobber Attributes IgnoreFlag ClassIcon red2_lite AddCond { Name "TF_COND_REPROGRAMMED" } } TFBot { Template SoldierSupreme Action Mobber Attributes IgnoreFlag ClassIcon red2_lite AddCond { Name "TF_COND_REPROGRAMMED" } } TFBot { Template PipePirate Action Mobber Attributes IgnoreFlag ClassIcon red2_lite AddCond { Name "TF_COND_REPROGRAMMED" } } } } } Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaitWhenDone 65 Checkpoint Yes Explanation //Dispayed once the wave is initialized { Line "{green}Common Only X 2" } WaveSpawn // 1 Heavyweight champ spawnbot ignore flag push (10) { Where spawnbot TotalCount 2 SpawnCount 1 WaitBeforeStarting 999 WaitBetweenSpawns 1 TotalCurrency 0 Template T_Wavespawn_Blu_Boss } WaveSpawn // blu light { Where spawnbot MaxActive 24 SpawnCount 1 WaitBetweenSpawns 0.1 TotalCount 999 Template T_Wavespawn_Blu_Light } WaveSpawn // red light { Where red TotalCount 900 MaxActive 24 SpawnCount 1 WaitBetweenSpawns 0.1 Template T_Wavespawn_Red_Light } } Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaitWhenDone 65 Checkpoint Yes Explanation //Dispayed once the wave is initialized { Line "{green}Common Only X 3" } WaveSpawn // 1 Heavyweight champ spawnbot ignore flag push (10) { Where spawnbot TotalCount 3 SpawnCount 1 WaitBeforeStarting 999 WaitBetweenSpawns 1 TotalCurrency 0 Template T_Wavespawn_Blu_Boss } WaveSpawn // blu light { Where spawnbot MaxActive 36 SpawnCount 1 WaitBetweenSpawns 0.05 TotalCount 999 Template T_Wavespawn_Blu_Light } WaveSpawn // red light { Where red TotalCount 900 MaxActive 36 SpawnCount 1 WaitBetweenSpawns 0.05 Template T_Wavespawn_Red_Light } } Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaitWhenDone 65 Checkpoint Yes Explanation //Dispayed once the wave is initialized { Line "{green}Gray X 1" } WaveSpawn // 1 Heavyweight champ spawnbot ignore flag push (10) { Where spawnbot TotalCount 1 SpawnCount 1 WaitBeforeStarting 999 WaitBetweenSpawns 0 TotalCurrency 0 Template T_Wavespawn_Blu_Boss } WaveSpawn // blu light { Where spawnbot MaxActive 4 SpawnCount 1 WaitBetweenSpawns 1 TotalCount 999 Template T_Wavespawn_Blu_Light } WaveSpawn // blu Med { Where spawnbot TotalCount 100 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 0.5 Template T_Wavespawn_Blu_Medium } WaveSpawn // blu Heavy { Where spawnbot TotalCount 200 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 25 Template T_Wavespawn_Blu_Heavy Support 1 } WaveSpawn // blu event { Where spawnbot TotalCount 8 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 360 WaitBeforeStarting 300 RandomSpawn 1 Support 1 RandomChoice { TFBot { Template MrBomber Action Mobber Attributes IgnoreFlag ClassIcon Random_lite } TFBot { Template HomingStar Action Mobber Attributes IgnoreFlag ClassIcon Random_lite } TFBot { Template WeeBeastie Action Mobber Attributes IgnoreFlag ClassIcon Random_lite } TFBot { Template SoldierSupreme Action Mobber Attributes IgnoreFlag ClassIcon Random_lite } TFBot { Template PipePirate Action Mobber Attributes IgnoreFlag ClassIcon Random_lite } } } WaveSpawn // red light { Where red TotalCount 900 MaxActive 4 SpawnCount 1 WaitBetweenSpawns 1 Template T_Wavespawn_Red_Light } WaveSpawn // red Med { Where red TotalCount 100 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 1 Template T_Wavespawn_Red_Medium } WaveSpawn // red heavy { Where red TotalCount 900 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 25 Template T_Wavespawn_Red_Heavy Support 1 } WaveSpawn // red event { Where red TotalCount 900 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 360 WaitBeforeStarting 480 RandomSpawn 1 Support 1 RandomChoice { TFBot { Template MrBomber Action Mobber Attributes IgnoreFlag ClassIcon red2_lite AddCond { Name "TF_COND_REPROGRAMMED" } } TFBot { Template HomingStar Action Mobber Attributes IgnoreFlag ClassIcon red2_lite AddCond { Name "TF_COND_REPROGRAMMED" } } TFBot { Template WeeBeastie Action Mobber Attributes IgnoreFlag ClassIcon red2_lite AddCond { Name "TF_COND_REPROGRAMMED" } } TFBot { Template SoldierSupreme Action Mobber Attributes IgnoreFlag ClassIcon red2_lite AddCond { Name "TF_COND_REPROGRAMMED" } } TFBot { Template PipePirate Action Mobber Attributes IgnoreFlag ClassIcon red2_lite AddCond { Name "TF_COND_REPROGRAMMED" } } } } WaveSpawn // gray light { Where gray TotalCount 900 MaxActive 4 SpawnCount 1 WaitBetweenSpawns 1 RandomSpawn 1 Support 1 RandomChoice { TFBot { Class Scout UseCustomModel models/bots/scout/bot_scout_gray.mdl AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } Action Mobber ClassIcon gry_lite } TFBot { Class Soldier UseCustomModel models/bots/soldier/bot_soldier_gray.mdl AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } Action Mobber ClassIcon gry_lite } TFBot { Class Pyro UseCustomModel models/bots/pyro/bot_pyro_gray.mdl AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } Action Mobber ClassIcon gry_lite } TFBot { Class Demoman UseCustomModel models/bots/demo/bot_demo_gray.mdl AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } Action Mobber ClassIcon gry_lite } TFBot { Class Heavyweapons UseCustomModel models/bots/heavy/bot_heavy_gray.mdl AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } Action Mobber ClassIcon gry_lite } TFBot { Template T_TFBot_Medic_BigHeal UseCustomModel models/bots/medic/bot_medic_gray.mdl AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } ClassIcon gry_lite } TFBot { Template T_TFBot_Sniper_Huntsman UseCustomModel models/bots/sniper/bot_sniper_gray.mdl AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } Action Mobber Skill Easy ClassIcon gry_lite } TFBot { Template T_TFBot_Spy UseCustomModel models/bots/spy/bot_spy_gray.mdl AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } Action spy ClassIcon gry_lite } TFBot { Template T_TFBot_Demoman_Knight UseCustomModel models/bots/demo/bot_demo_gray.mdl AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } Action Mobber Skill Easy ClassIcon gry_lite } } } WaveSpawn // gray Heavy { Where gray TotalCount 900 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 25 RandomSpawn 1 Support 1 RandomChoice { TFBot { Template T_TFBot_Giant_Scout UseCustomModel models/bots/scout_boss/bot_scout_gray_boss.mdl AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } Action Mobber ClassIcon gry_lite } TFBot { Template T_TFBot_Giant_Soldier UseCustomModel models/bots/soldier_boss/bot_soldier_gray_boss.mdl AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } Action Mobber ClassIcon gry_lite } TFBot { Template T_TFBot_Giant_Pyro UseCustomModel models/bots/pyro_boss/bot_pyro_gray_boss.mdl AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } Action Mobber ClassIcon gry_lite } TFBot { Template T_TFBot_Giant_Demoman UseCustomModel models/bots/demo_boss/bot_demo_gray_boss.mdl AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } Action Mobber ClassIcon gry_lite } TFBot { Template T_TFBot_Giant_Heavyweapons UseCustomModel models/bots/heavy_boss/bot_heavy_gray_boss.mdl AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } Action Mobber ClassIcon gry_lite } } } WaveSpawn // gray Med { Where gray TotalCount 900 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 1 RandomSpawn 1 Support 1 RandomChoice { TFBot { Template T_TFBot_Large_Scout_Rapidfire UseCustomModel models/bots/scout/bot_scout_gray.mdl AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } Action Mobber ClassIcon gry_lite } TFBot { Template T_TFBot_Large_Soldier_Spammer UseCustomModel models/bots/soldier/bot_soldier_gray.mdl AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } Action Mobber ClassIcon gry_lite } TFBot { Template T_TFBot_Large_Pyro UseCustomModel models/bots/pyro/bot_pyro_gray.mdl AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } Action Mobber ClassIcon gry_lite } TFBot { Template T_TFBot_Large_Demo_Burst UseCustomModel models/bots/demo/bot_demo_gray.mdl AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } Action Mobber ClassIcon gry_lite } TFBot { Template T_TFBot_Large_Heavyweapons_Brass UseCustomModel models/bots/heavy/bot_heavy_gray.mdl AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } Action Mobber ClassIcon gry_lite } TFBot { Template T_TFBot_Large_Medic_BigHeal UseCustomModel models/bots/medic/bot_medic_gray.mdl AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } ClassIcon gry_lite } TFBot { Template T_TFBot_Sniper_Huntsman_Spammer UseCustomModel models/bots/sniper/bot_sniper_gray.mdl AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } Action Mobber Skill Easy ClassIcon gry_lite } TFBot { Template T_TFBot_Demoman_Samurai UseCustomModel models/bots/demo/bot_demo_gray.mdl AddCond { Name TF_COND_REPROGRAMMED_NEUTRAL } Action Mobber Skill Easy ClassIcon gry_lite } } } } Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaitWhenDone 65 Checkpoint Yes Explanation //Dispayed once the wave is initialized { Line "{green}Hyper X 2" Line "{red}Enjoy dying." } WaveSpawn { WaitBeforeStarting 993 FirstSpawnOutput { Target jug Action Trigger } } WaveSpawn // 1 Heavyweight champ spawnbot ignore flag push (10) { Where spawnbot_right TotalCount 1 SpawnCount 1 WaitBeforeStarting 999 WaitBetweenSpawns 2 TotalCurrency 0 TFBot { Class Soldier Skill Expert WeaponRestrictions PrimaryOnly Name "Direct Disaster" ClassIcon soldier_directhit_lite_giant Health 45000 Scale 1.9 Item "The Tank Top" Attributes MiniBoss Attributes UseBossHealthBar Item "The Direct Hit" //ExtAttr JumpStomp Tag bot_giant UseMeleeThreatPrioritization 1 CustomEyeGlowColor "255 0 0" ItemAttributes { ItemName "The Tank Top" "set item tint rgb" 5801378 } ChangeAttributes //Periodically changes bot attributes, defined in EventChangeAttributes { Delay 0.1 //Time before the first bot attribute change (Default: 10) Repeats 0 //How many times should bot change attributes in total (Default: 0 - Infinite) Cooldown 16.8 //Time between each bot attribute change (Default: 10) Name "A" // Name of the bot attributes listed in EventChangeAttributes } ChangeAttributes //Periodically changes bot attributes, defined in EventChangeAttributes { Delay 4.6 //Time before the first bot attribute change (Default: 10) Repeats 0 //How many times should bot change attributes in total (Default: 0 - Infinite) Cooldown 16.8 //Time between each bot attribute change (Default: 10) Name "B" // Name of the bot attributes listed in EventChangeAttributes } ChangeAttributes //Periodically changes bot attributes, defined in EventChangeAttributes { Delay 9.1 //Time before the first bot attribute change (Default: 10) Repeats 0 //How many times should bot change attributes in total (Default: 0 - Infinite) Cooldown 16.8 //Time between each bot attribute change (Default: 10) Name "C" // Name of the bot attributes listed in EventChangeAttributes } ChangeAttributes //Periodically changes bot attributes, defined in EventChangeAttributes { Delay 9.8 //Time before the first bot attribute change (Default: 10) Repeats 0 //How many times should bot change attributes in total (Default: 0 - Infinite) Cooldown 16.8 //Time between each bot attribute change (Default: 10) Name "D" // Name of the bot attributes listed in EventChangeAttributes } EventChangeAttributes //Do not attempt to put any of custom keys here. ExtAttr is the only exception { A { ItemAttributes { ItemName "The Direct Hit" "reload time decreased" -0.1 "fire rate bonus" 0.3 "blast radius decreased" 0.2 "projectile speed decreased" 0.7 "mult projectile count" 1 "damage bonus" 1.5 "fire rate bonus with reduced health" 0.55 "projectile spread angle penalty" 0 "projectile no deflect" 1 "dmg bonus vs buildings" 0.9 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 "airblast vertical vulnerability multiplier" 0.1 "rage giving scale" 0.15 "increased jump height" 1.65 "mult debuff duration" 0.5 } WeaponRestrictions PrimaryOnly } B { WeaponRestrictions PrimaryOnly ItemAttributes { ItemName "The Direct Hit" "reload time decreased" -0.1 "fire rate penalty" 0.65 "dmg bonus vs buildings" 0.9 "blast radius decreased" 0.2 "projectile speed decreased" 0.05 "projectile spread angle penalty" 20 "mult projectile count" 5 "damage bonus" 1.35 "fire rate bonus with reduced health" 0.75 "projectile acceleration start time" 1.2 "projectile acceleration time" 4 "projectile lifetime" 5 "projectile acceleration" 4000 "custom projectile size" 0.5 "projectile no deflect" 1 "mult debuff duration" 0.5 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 "airblast vertical vulnerability multiplier" 0.1 "rage giving scale" 0.15 "increased jump height" 1.65 "mult debuff duration" 0.5 } } C { WeaponRestrictions SecondaryOnly ItemAttributes { ItemName "TF_WEAPON_Shotgun_Soldier" "reload time decreased" -0.1 "fire rate bonus" 0.4 "override projectile type" 2 "damage causes airblast" 1 "fire rate bonus with reduced health" 0.65 "dmg bonus vs buildings" 7 "provide on active" 1 "move speed bonus" 1.5 "damage penalty" 0.1 "projectile spread angle penalty" 1.5 "mult projectile count" 6 "projectile speed increased" 1.65 "custom item model" "models/workshop/weapons/c_models/c_liberty_launcher/c_liberty_launcher.mdl" "custom weapon fire sound" "Weapon_Liberty_Launcher.Single" } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 "airblast vertical vulnerability multiplier" 0.1 "rage giving scale" 0.15 "increased jump height" 1.65 "mult debuff duration" 0.5 } } D { ItemAttributes { ItemName "The Direct Hit" "mult projectile count" 1 "clip size upgrade atomic" -3 "dmg bonus vs buildings" 1.4 "reload time decreased" 0.65 "fire rate bonus" 0.65 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 "airblast vertical vulnerability multiplier" 0.1 "rage giving scale" 0.7 "increased jump height" 1.65 "mult debuff duration" 0.5 } WeaponRestrictions PrimaryOnly } } } } WaveSpawn // blu light { Where spawnbot MaxActive 14 SpawnCount 1 WaitBetweenSpawns 0.5 TotalCount 999 Template T_Wavespawn_Blu_Light_H } WaveSpawn // blu Med { Where spawnbot TotalCount 100 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 0.5 Template T_Wavespawn_Blu_Medium_H } WaveSpawn // blu Heavy { Where spawnbot TotalCount 200 MaxActive 6 SpawnCount 1 WaitBetweenSpawns 12.5 Template T_Wavespawn_Blu_Heavy_H Support 1 } WaveSpawn // blu event { Where spawnbot TotalCount 8 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 180 WaitBeforeStarting 300 RandomSpawn 1 Support 1 RandomChoice { TFBot { Template MrBomber Action Mobber Attributes IgnoreFlag ClassIcon Random_lite } TFBot { Template HomingStar Action Mobber Attributes IgnoreFlag ClassIcon Random_lite } TFBot { Template WeeBeastie Action Mobber Attributes IgnoreFlag ClassIcon Random_lite } TFBot { Template SoldierSupreme Action Mobber Attributes IgnoreFlag ClassIcon Random_lite } TFBot { Template PipePirate Action Mobber Attributes IgnoreFlag ClassIcon Random_lite } } } WaveSpawn // red light { Where red TotalCount 900 MaxActive 14 SpawnCount 1 WaitBetweenSpawns 0.5 Template T_Wavespawn_Red_Light_H } WaveSpawn // red Med { Where red TotalCount 100 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 0.5 Template T_Wavespawn_Red_Medium_H } WaveSpawn // red heavy { Where red TotalCount 900 MaxActive 6 SpawnCount 1 WaitBetweenSpawns 12.5 Template T_Wavespawn_Red_Heavy_H Support 1 } WaveSpawn // red event { Where red TotalCount 900 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 180 WaitBeforeStarting 390 RandomSpawn 1 Support 1 RandomChoice { TFBot { Template MrBomber Action Mobber Attributes IgnoreFlag ClassIcon red2_lite AddCond { Name "TF_COND_REPROGRAMMED" } } TFBot { Template HomingStar Action Mobber Attributes IgnoreFlag ClassIcon red2_lite AddCond { Name "TF_COND_REPROGRAMMED" } } TFBot { Template WeeBeastie Action Mobber Attributes IgnoreFlag ClassIcon red2_lite AddCond { Name "TF_COND_REPROGRAMMED" } } TFBot { Template SoldierSupreme Action Mobber Attributes IgnoreFlag ClassIcon red2_lite AddCond { Name "TF_COND_REPROGRAMMED" } } TFBot { Template PipePirate Action Mobber Attributes IgnoreFlag ClassIcon red2_lite AddCond { Name "TF_COND_REPROGRAMMED" } } } } WaveSpawn // red Med { Where red Support 1 TotalCount 1 Spawncount 1 WaitBeforeStarting 9999 TFBot { ClassIcon hyper Class Scout } } } Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaitWhenDone 65 Checkpoint Yes Explanation //Dispayed once the wave is initialized { Line "{green}Giant X 2" } WaveSpawn // 1 Heavyweight champ spawnbot ignore flag push (10) { Where spawnbot TotalCount 2 SpawnCount 1 WaitBeforeStarting 999 WaitBetweenSpawns 1 TotalCurrency 0 Template T_Wavespawn_Blu_Boss } WaveSpawn // blu Heavy { Where spawnbot TotalCount 200 MaxActive 10 SpawnCount 1 WaitBetweenSpawns 8 Template T_Wavespawn_Blu_Heavy Support 1 } WaveSpawn // blu event { Where spawnbot TotalCount 8 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 180 WaitBeforeStarting 300 RandomSpawn 1 Support 1 RandomChoice { TFBot { Template MrBomber Action Mobber Attributes IgnoreFlag ClassIcon Random_lite } TFBot { Template HomingStar Action Mobber Attributes IgnoreFlag ClassIcon Random_lite } TFBot { Template WeeBeastie Action Mobber Attributes IgnoreFlag ClassIcon Random_lite } TFBot { Template SoldierSupreme Action Mobber Attributes IgnoreFlag ClassIcon Random_lite } TFBot { Template PipePirate Action Mobber Attributes IgnoreFlag ClassIcon Random_lite } } } WaveSpawn // red heavy { Where red TotalCount 900 MaxActive 10 SpawnCount 1 WaitBetweenSpawns 8 Template T_Wavespawn_Red_Heavy Support 1 } WaveSpawn // red event { Where red TotalCount 900 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 180 WaitBeforeStarting 390 RandomSpawn 1 Support 1 RandomChoice { TFBot { Template MrBomber Action Mobber Attributes IgnoreFlag ClassIcon red2_lite AddCond { Name "TF_COND_REPROGRAMMED" } } TFBot { Template HomingStar Action Mobber Attributes IgnoreFlag ClassIcon red2_lite AddCond { Name "TF_COND_REPROGRAMMED" } } TFBot { Template WeeBeastie Action Mobber Attributes IgnoreFlag ClassIcon red2_lite AddCond { Name "TF_COND_REPROGRAMMED" } } TFBot { Template SoldierSupreme Action Mobber Attributes IgnoreFlag ClassIcon red2_lite AddCond { Name "TF_COND_REPROGRAMMED" } } TFBot { Template PipePirate Action Mobber Attributes IgnoreFlag ClassIcon red2_lite AddCond { Name "TF_COND_REPROGRAMMED" } } } } } }