// Cliffside: click_expert1 // spawnbot // spawnbot_giant // spawnbot_flank_left // spawnbot_flank_right // spawnbot_all // spawnbot_mission_sentry_buster // spawnbot_mission_sniper // spawnbot_mission_spy // boss_path_1 // boss_path_1_left // boss_path_wbomb // boss_path_abomb #base robot_standard.pop #base robot_giant.pop #base robot_click.pop #base robot_click_giant.pop #base robot_click_sig.pop #base ex_upgrade_click.pop WaveSchedule { StartingCurrency 1000 RespawnWaveTime 5 CanBotsAttackWhileInSpawnRoom no PrecacheModel "models/bots/boss_bot/boss_blimp_damage1.mdl" PrecacheModel "models/bots/boss_bot/boss_blimp_damage2.mdl" PrecacheModel "models/bots/boss_bot/boss_blimp_damage3.mdl" PrecacheModel "models/bots/boss_bot/boss_blimp_damage_explode.mdl" PrecacheModel "models/bots/boss_bot/boss_blimp_explode.mdl" PrecacheModel "models/bots/boss_bot/boss_blimp.mdl" // Blimp Path ExtraTankPath { Name blimp_path Node "-798 7753 1450" Node "-798 4230 1450" Node "-1216 3659 1450" Node "-1598 688 1500" Node "-119 699 1500" } PointTemplates { TankStickyHellmet { logic_relay { "id" "2" "classname" "logic_relay" "spawnflags" "0" "targetname" "ST_kill_relay" "OnTrigger" "ST_mimic,Kill,,0,-1" "OnTrigger" "ST_mimic_crit,Kill,,0,-1" "OnTrigger" "ST_shoot_sound,Kill,,0,-1" "OnTrigger" "ST_shoot_sound_crit,Kill,,0,-1" "OnTrigger" "ST_model,Kill,,0,-1" "OnTrigger" "ST_timer,Disable,,0,-1" "OnTrigger" "ST_shooter_relay,CancelPending,,0,-1" "OnTrigger" "tf_projectile_pipe,Kill,,0,-1" "origin" "-16 480 0" } logic_relay { "id" "4" "classname" "logic_relay" "spawnflags" "0" "targetname" "ST_shooter_relay" "OnTrigger" "ST_mimic_crit,DetonateStickies,,7,-1" "OnTrigger" "ST_mimic,DetonateStickies,,7,-1" "OnTrigger" "ST_shoot_sound,PlaySound,,0.5,-1" "OnTrigger" "ST_mimic,FireMultiple,4,0.5,-1" "OnTrigger" "ST_shoot_sound,PlaySound,,0.3,-1" "OnTrigger" "ST_mimic,FireOnce,,0.3,-1" "OnTrigger" "ST_shoot_sound,PlaySound,,0.2,-1" "OnTrigger" "ST_mimic,FireOnce,,0.2,-1" "OnTrigger" "ST_shoot_sound,PlaySound,,0.1,-1" "OnTrigger" "ST_mimic,FireOnce,,0.1,-1" "OnTrigger" "ST_shoot_sound,PlaySound,,0,-1" "OnTrigger" "ST_mimic,FireOnce,,0,-1" "OnTrigger" "ST_mimic,FireOnce,,0.4,-1" "OnTrigger" "ST_shoot_sound,PlaySound,,0.4,-1" "OnTrigger" "ST_mimic,FireOnce,,0.6,-1" "OnTrigger" "ST_shoot_sound,PlaySound,,0.6,-1" "OnTrigger" "ST_shoot_sound,PlaySound,,0.7,-1" "OnTrigger" "ST_mimic,FireOnce,,0.7,-1" "OnTrigger" "ST_shoot_sound,PlaySound,,0.8,-1" "OnTrigger" "ST_mimic,FireOnce,,0.8,-1" "OnTrigger" "ST_shoot_sound,PlaySound,,0.9,-1" "OnTrigger" "ST_mimic,FireOnce,,0.9,-1" "OnTrigger" "ST_mimic,FireMultiple,4,1,-1" "OnTrigger" "ST_shoot_sound,PlaySound,,1,-1" "OnTrigger" "ST_mimic_crit,FireOnce,,1.5,-1" "OnTrigger" "ST_shoot_sound_crit,PlaySound,,1.5,-1" "OnTrigger" "ST_shoot_sound_crit,PlaySound,,2,-1" "OnTrigger" "ST_mimic_crit,FireMultiple,2,2,-1" "OnTrigger" "ST_shoot_sound_crit,PlaySound,,2.5,-1" "OnTrigger" "ST_mimic_crit,FireMultiple,3,2.5,-1" "OnTrigger" "ST_shoot_sound_crit,PlaySound,,3,-1" "OnTrigger" "ST_mimic_crit,FireMultiple,6,3,-1" "origin" "-16 496 0" } logic_timer { "id" "8" "classname" "logic_timer" "LowerRandomBound" "5" "spawnflags" "0" "StartDisabled" "0" "targetname" "ST_timer" "UpperRandomBound" "5" "UseRandomTime" "0" "OnTimer" "ST_shooter_relay,Trigger,,0,-1" "origin" "0 496 0" } tf_point_weapon_mimic { "id" "18" "classname" "tf_point_weapon_mimic" "angles" "-56.5 0 0" "Crits" "1" "Damage" "138" "FireSound" "weapons/stickybomblauncher_shoot_crit.wav" "ModelScale" "1" "SpeedMax" "525" "SpeedMin" "525" "SplashRadius" "189" "SpreadAngle" "25" "targetname" "ST_mimic_crit" "WeaponType" "3" "origin" "33.948 59 167.289" } tf_point_weapon_mimic { "id" "20" "classname" "tf_point_weapon_mimic" "angles" "-58.5 0 180" "Crits" "1" "Damage" "138" "FireSound" "weapons/stickybomblauncher_shoot_crit.wav" "ModelScale" "1" "SpeedMax" "525" "SpeedMin" "525" "SplashRadius" "189" "SpreadAngle" "25" "targetname" "ST_mimic_crit" "WeaponType" "3" "origin" "34.16 -59 167.121" } tf_point_weapon_mimic { "id" "22" "classname" "tf_point_weapon_mimic" "angles" "-58.5 0 180" "Crits" "0" "Damage" "138" "FireSound" "weapons/stickybomblauncher_shoot.wav" "ModelScale" "1" "SpeedMax" "525" "SpeedMin" "525" "SplashRadius" "189" "SpreadAngle" "25" "targetname" "ST_mimic" "WeaponType" "3" "origin" "34.16 -59 167.121" } tf_point_weapon_mimic { "id" "24" "classname" "tf_point_weapon_mimic" "angles" "-56.5 0 0" "Crits" "0" "Damage" "138" "FireSound" "weapons/stickybomblauncher_shoot.wav" "ModelScale" "1" "SpeedMax" "525" "SpeedMin" "525" "SplashRadius" "189" "SpreadAngle" "25" "targetname" "ST_mimic" "WeaponType" "3" "origin" "33.948 59 167.289" } prop_dynamic { "id" "30" "classname" "prop_dynamic" "angles" "-58.5 0 90" "DisableBoneFollowers" "0" "disablereceiveshadows" "1" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "model" "models/props_frontline/tank_turret.mdl" "modelscale" "1" "PerformanceMode" "0" "physdamagescale" "1.0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "255" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "0" "SetBodyGroup" "0" "skin" "2" "solid" "0" "spawnflags" "0" "StartDisabled" "0" "targetname" "ST_model" "origin" "-32.851 64 57.912" } prop_dynamic { "id" "32" "classname" "prop_dynamic" "angles" "-56.5 0 -90" "DisableBoneFollowers" "0" "disablereceiveshadows" "1" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "-1" "fadescale" "1" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mindxlevel" "0" "model" "models/props_frontline/tank_turret.mdl" "modelscale" "1" "PerformanceMode" "0" "physdamagescale" "1.0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "255" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "0" "SetBodyGroup" "0" "skin" "2" "solid" "0" "spawnflags" "0" "StartDisabled" "0" "targetname" "ST_model" "origin" "-36.709 -64 60.403" } ambient_generic { "id" "34" "classname" "ambient_generic" "angles" "0 0 0" "cspinup" "0" "fadeinsecs" "0" "fadeoutsecs" "0" "health" "10" "lfomodpitch" "0" "lfomodvol" "0" "lforate" "0" "lfotype" "0" "message" "weapons/stickybomblauncher_shoot_crit.wav" "pitch" "100" "pitchstart" "100" "preset" "0" "radius" "5000" "spawnflags" "48" "spindown" "0" "spinup" "0" "targetname" "ST_shoot_sound_crit" "volstart" "0" "origin" "36 -9.53674e-07 168" } ambient_generic { "id" "37" "classname" "ambient_generic" "angles" "0 0 0" "cspinup" "0" "fadeinsecs" "0" "fadeoutsecs" "0" "health" "10" "lfomodpitch" "0" "lfomodvol" "0" "lforate" "0" "lfotype" "0" "message" "weapons/stickybomblauncher_shoot.wav" "pitch" "100" "pitchstart" "100" "preset" "0" "radius" "5000" "spawnflags" "48" "spindown" "0" "spinup" "0" "targetname" "ST_shoot_sound" "volstart" "0" "origin" "36 -9.53674e-07 168" } } SmallTankTurretCrit { OnSpawnOutput { Target "!activator" Action "addoutput" Param "rendermode 1" Delay 0.0 } OnSpawnOutput { Target "!activator" Action "alpha" Param "0" Delay 0.0 } OnSpawnOutput { Target "tank_turret_shoot_relay" Action "trigger" Param "" Delay 5 } OnSpawnOutput { Target "spawntr" Action "trigger" Param "" Delay 1 } OnSpawnOutput { Target "!activator" Action "addoutput" Param "OnHealthBelow60Percent tank_turret_shoot_relay_super:trigger::0:-1" Delay 1 } OnSpawnOutput { Target "!activator" Action "addoutput" Param "OnHealthBelow20Percent tank_turret_shoot_relay_super:trigger::0:-1" Delay 1 } OnSpawnOutput { Target "tank_turret_particle" Action "SetParentAttachment" Param "light" Delay 1 } OnSpawnOutput { Target "!activator" Action "addoutput" Param "OnUser4 tank_turret_prop_bomb:enable::0:-1" Delay 1 } OnSpawnOutput { Target "!activator" Action "addoutput" Param "OnUser4 tank_turret_prop_bomb:SetAnimation:deploy:0.01:-1" Delay 1 } prop_dynamic { "targetname" "tank_turret_prop" "model" "models/props_frontline/tank_cart.mdl" "solid" "0" "skin" "2" "angles" "0 180 0" "DefaultAnim" "idle" } prop_dynamic { "targetname" "tank_turret_prop_bomb" "model" "models/bots/boss_bot/bomb_mechanism.mdl" "startdisabled" "1" "solid" "0" "DefaultAnim" "idle" "modelscale" "0.5" "angles" "0 0 0" "origin" "-8 0 -16" } info_particle_system { "targetname" "tank_turret_particle" "effect_name" "cart_flashinglight" "parentname" "tank_turret_prop" } tf_point_weapon_mimic { "targetname" "tank_turret_shooter_grenade" "angles" "3 0 0" "origin" "68 0 76" "Damage" "110" "SpeedMax" "170" "SpeedMin" "170" "SplashRadius" "250" "SpreadAngle" "2" "WeaponType" "3" "ModelScale" "1" "ModelOverride" "models/weapons/w_models/w_grenade_grenadelauncher.mdl" "Crits" "1" "onuser1" "tank_turret_prop,setanimation,shoot_N,0,-1" "onuser1" "tank_turret_prop,SetPlaybackRate,0.66,0.01,-1" "onuser1" "!self,fireuser2,,0.8,-1" "onuser2" "tank_turret_shoot_effect_relay,trigger,,0,-1" "onuser2" "tank_turret_particle,$PlaySound,=120|mvm/giant_demoman/giant_demoman_grenade_shoot.wav,0,-1" "onuser2" "!self,fireonce,,0.02,-1" "onuser2" "!self,DetonateStickies,,3.1,-1" "onuser3" "tank_turret_prop,setanimation,shoot_N,0,-1" "onuser3" "!self,fireuser2,,0.5,-1" } tf_point_weapon_mimic { "targetname" "tank_turret_shooter_n" "angles" "3 0 0" "origin" "68 0 76" "Damage" "90" "SpeedMax" "1800" "SpeedMin" "1800" "SplashRadius" "180" "SpreadAngle" "2" "WeaponType" "0" "Crits" "1" "onuser1" "tank_turret_prop,setanimation,shoot_N,0,-1" "onuser1" "tank_turret_prop,SetPlaybackRate,0.66,0.01,-1" "onuser1" "!self,fireuser2,,0.8,-1" "onuser2" "tank_turret_shoot_effect_relay,trigger,,0,-1" "onuser2" "!self,fireonce,,0.02,-1" "onuser3" "tank_turret_prop,setanimation,shoot_N,0,-1" "onuser3" "!self,fireuser2,,0.5,-1" } tf_point_weapon_mimic { "targetname" "tank_turret_shooter_w" "angles" "3 90 0" "origin" "-16 62 76" "Damage" "90" "SpeedMax" "1800" "SpeedMin" "1800" "SplashRadius" "180" "SpreadAngle" "2" "WeaponType" "0" "Crits" "1" "onuser1" "tank_turret_prop,setanimation,shoot_W,0,-1" "onuser1" "tank_turret_prop,SetPlaybackRate,0.66,0.01,-1" "onuser1" "!self,fireuser2,,0.8,-1" "onuser2" "tank_turret_shoot_effect_relay,trigger,,0,-1" "onuser2" "!self,fireonce,,0.02,-1" "onuser3" "tank_turret_prop,setanimation,shoot_W,0,-1" "onuser3" "!self,fireuser2,,0.5,-1" } tf_point_weapon_mimic { "targetname" "tank_turret_shooter_nw" "angles" "3 45 0" "origin" "40 62 76" "Damage" "90" "SpeedMax" "1800" "SpeedMin" "1800" "SplashRadius" "180" "SpreadAngle" "2" "WeaponType" "0" "Crits" "1" "onuser1" "tank_turret_prop,setanimation,shoot_NW,0,-1" "onuser1" "tank_turret_prop,SetPlaybackRate,0.66,0.01,-1" "onuser1" "!self,fireuser2,,0.8,-1" "onuser2" "tank_turret_shoot_effect_relay,trigger,,0,-1" "onuser2" "!self,fireonce,,0.02,-1" "onuser3" "tank_turret_prop,setanimation,shoot_NW,0,-1" "onuser3" "!self,fireuser2,,0.5,-1" } tf_point_weapon_mimic { "targetname" "tank_turret_shooter_e" "angles" "3 -90 0" "origin" "-16 -62 76" "Damage" "90" "SpeedMax" "1800" "SpeedMin" "1800" "SplashRadius" "180" "SpreadAngle" "2" "WeaponType" "0" "Crits" "1" "onuser1" "tank_turret_prop,setanimation,shoot_E,0,-1" "onuser1" "tank_turret_prop,SetPlaybackRate,0.66,0.01,-1" "onuser1" "!self,fireuser2,,0.8,-1" "onuser2" "tank_turret_shoot_effect_relay,trigger,,0,-1" "onuser2" "!self,fireonce,,0.02,-1" "onuser3" "tank_turret_prop,setanimation,shoot_E,0,-1" "onuser3" "!self,fireuser2,,0.5,-1" } tf_point_weapon_mimic { "targetname" "tank_turret_shooter_ne" "angles" "3 -45 0" "origin" "40 -62 76" "Damage" "90" "SpeedMax" "1800" "SpeedMin" "1800" "SplashRadius" "180" "SpreadAngle" "2" "WeaponType" "0" "Crits" "1" "onuser1" "tank_turret_prop,setanimation,shoot_NE,0,-1" "onuser1" "tank_turret_prop,SetPlaybackRate,0.66,0.01,-1" "onuser1" "!self,fireuser2,,0.8,-1" "onuser2" "tank_turret_shoot_effect_relay,trigger,,0,-1" "onuser2" "!self,fireonce,,0.02,-1" "onuser3" "tank_turret_prop,setanimation,shoot_NE,0,-1" "onuser3" "!self,fireuser2,,0.5,-1" } logic_relay { "targetname" "tank_turret_shoot_effect_relay" "ontrigger" "!parent,addoutput,solid 1,0.0,-1" "ontrigger" "!parent,addoutput,solid 2,0.12,-1" "ontrigger" "!parent,$playsound,MVM.GiantSoldierRocketShootCrit,0,-1" "spawnflags" "2" } logic_relay { "targetname" "tank_turret_shoot_relay" "ontrigger" "tank_turret_shooter_n,fireuser1,,0,-1" "ontrigger" "tank_turret_shooter_e,fireuser1,,2,-1" "ontrigger" "tank_turret_shooter_ne,fireuser1,,4,-1" "ontrigger" "tank_turret_shooter_nw,fireuser1,,6,-1" "ontrigger" "tank_turret_shooter_w,fireuser1,,8,-1" "ontrigger" "tank_turret_shooter_grenade,fireuser1,,10,-1" "ontrigger" "!self,trigger,,12,-1" "spawnflags" "2" } logic_relay { "targetname" "tank_turret_shoot_relay_super" "ontrigger" "tank_turret_particle,Start,,0,-1" "ontrigger" "tank_turret_prop,$playsound,MVM.GiantHeavyGunWindUp,0,-1" "ontrigger" "tank_turret_shoot_relay,cancelpending,,1,-1" "ontrigger" "tank_turret_shooter_n,fireuser3,,1,-1" "ontrigger" "tank_turret_shooter_n,fireuser3,,1.5,-1" "ontrigger" "tank_turret_shooter_n,fireuser3,,2,-1" "ontrigger" "tank_turret_shooter_e,fireuser3,,3,-1" "ontrigger" "tank_turret_shooter_e,fireuser3,,3.5,-1" "ontrigger" "tank_turret_shooter_e,fireuser3,,4,-1" "ontrigger" "tank_turret_shooter_ne,fireuser3,,5,-1" "ontrigger" "tank_turret_shooter_ne,fireuser3,,5.5,-1" "ontrigger" "tank_turret_shooter_ne,fireuser3,,6,-1" "ontrigger" "tank_turret_shooter_nw,fireuser3,,7,-1" "ontrigger" "tank_turret_shooter_nw,fireuser3,,7.5,-1" "ontrigger" "tank_turret_shooter_nw,fireuser3,,8,-1" "ontrigger" "tank_turret_shooter_w,fireuser3,,9,-1" "ontrigger" "tank_turret_shooter_w,fireuser3,,9.5,-1" "ontrigger" "tank_turret_shooter_w,fireuser3,,10,-1" "ontrigger" "tank_turret_shooter_grenade,fireuser3,,11,-1" "ontrigger" "tank_turret_shooter_grenade,fireuser3,,11.5,-1" "ontrigger" "tank_turret_shooter_grenade,fireuser3,,12,-1" "ontrigger" "tank_turret_particle,Stop,,12,-1" "ontrigger" "tank_turret_shoot_relay,trigger,,13,-1" "spawnflags" "2" } } prop_block_front { prop_dynamic { "model" "models/props_coalmines/wood_fence_short_256.mdl" "disableshadows" "1" "solid" "6" "origin" "-444 4197 772" "angles" "0 90 0" } prop_dynamic { "model" "models/props_coalmines/wood_fence_short_256.mdl" "disableshadows" "1" "solid" "6" "origin" "-402 4449 772" "angles" "0 78 0" } } prop_block_mid { prop_dynamic { "model" "models/props_coalmines/wood_fence_256.mdl" "disableshadows" "1" "solid" "6" "origin" "-634 3557 1000" "angles" "0 90 0" } } prop_block_hatch { prop_dynamic { "model" "models/props_medieval/wallwood002_256.mdl" "disableshadows" "1" "solid" "6" "origin" "-964 1471 820" "angles" "0 173 0" } prop_dynamic { "model" "models/props_medieval/wallwood002_256.mdl" "disableshadows" "1" "solid" "6" "origin" "-995 1221 820" "angles" "0 172 0" } prop_dynamic { "model" "models/props_medieval/wallwood002_256.mdl" "disableshadows" "1" "solid" "6" "origin" "-1031 969 820" "angles" "0 177 0" } prop_dynamic { "model" "models/props_medieval/wallwood002_256.mdl" "disableshadows" "1" "solid" "6" "origin" "-1045 715 820" "angles" "0 179.5 0" } prop_dynamic { "model" "models/props_medieval/wallwood002_256.mdl" "disableshadows" "1" "solid" "6" "origin" "-1047 460 820" "angles" "0 182.5 0" } prop_dynamic { "model" "models/props_medieval/wallwood002_256.mdl" "disableshadows" "1" "solid" "6" "origin" "-1036 205 820" "angles" "0 183 0" } prop_dynamic { "model" "models/props_medieval/wallwood002_256.mdl" "disableshadows" "1" "solid" "6" "origin" "-1028 10 820" "angles" "0 179.5 0" } } } // Sentry Buster Mission { Objective DestroySentries InitialCooldown 30 Where spawnbot_mission_sentry_buster BeginAtWave 1 RunForThisManyWaves 8 CooldownTime 60 TFBot { Template T_TFBot_SentryBuster } } // Wave 1/8 // Total $ in this wave : 1000$ // Total $ when wave starts : 1000$ (Starting money) // Total $ when wave ends : 1000$ (Starting money) + 1000$ (Collected money) + 100$ (Bonus) = 2100$ Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaveSpawn { Where spawnbot Name "stage01" TotalCount 24 MaxActive 10 SpawnCount 2 WaitBetweenSpawns 2 WaitBeforeStarting 0 TotalCurrency 100 TFBot { Class Pyro Skill Normal Attributes AlwaysCrit } } WaveSpawn { Where spawnbot Name "stage01" TotalCount 24 MaxActive 8 SpawnCount 4 WaitBetweenSpawns 2 WaitBeforeStarting 10 TotalCurrency 40 TFBot { Template T_TFBot_ScorchShot } } WaveSpawn { Where spawnbot Name "stage02" WaitForAllSpawned "stage01" TotalCount 24 MaxActive 12 SpawnCount 4 WaitBetweenSpawns 5 WaitBeforeStarting 5 TotalCurrency 160 Squad { TFBot { Template T_TFBot_Heavy_Tomislav } TFBot { Template T_TFBot_Medic_Shield_Quickfix } TFBot { Template T_TFBot_Heavy_Tomislav } TFBot { Template T_TFBot_Heavy_Tomislav } } } WaveSpawn { Where spawnbot_all Name "stage02_engi" WaitForAllSpawned "stage01" Support Limited TotalCount 20 MaxActive 6 SpawnCount 2 WaitBetweenSpawns 20 WaitBeforeStarting 20 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Engineer_Sentry_Tele_Battle TeleportWhere spawnbot TeleportWhere spawnbot_flank_left TeleportWhere spawnbot_flank_right TeleportWhere spawnbot_all TeleportWhere spawnbot_mission_sniper TeleportWhere spawnbot_mission_sentry_buster } TFBot { Template T_TFBot_Medic } } } WaveSpawn { Where spawnbot Name "stage03_giant" WaitForAllSpawned "stage02" TotalCount 6 MaxActive 2 SpawnCount 2 WaitBetweenSpawns 20 WaitBeforeStarting 20 TotalCurrency 120 Squad { TFBot { Template T_TFBot_Giant_Demo_Sticky } TFBot { Template T_TFBot_Medic_Kritzkrieg_Armored } } } WaveSpawn { Where spawnbot Name "stage03" WaitForAllSpawned "stage02" TotalCount 36 MaxActive 6 SpawnCount 3 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 50 TFBot { Template T_TFBot_Scout_FAN } } WaveSpawn { Where spawnbot Name "stage03" WaitForAllSpawned "stage02" TotalCount 24 MaxActive 4 SpawnCount 4 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 50 TFBot { Template T_TFBot_Soldier_DirectHit } } WaveSpawn { Where spawnbot Name "stage04_giant" WaitForAllSpawned "stage03" TotalCount 3 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 15 WaitBeforeStarting 20 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Pyro Attributes AlwaysCrit } } WaveSpawn { Where spawnbot Name "stage04" WaitForAllSpawned "stage03" TotalCount 40 MaxActive 12 SpawnCount 4 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 100 RandomChoice { TFBot { Template T_TFBot_Soldier_DirectHit_Buff } TFBot { Template T_TFBot_Soldier_DirectHit_Buff } TFBot { Template T_TFBot_Heavy_Tomislav } TFBot { Template T_TFBot_Heavy_Tomislav } TFBot { Template T_TFBot_Heavy_Tomislav } } } WaveSpawn { Where spawnbot_flank_left Name "support" Support 1 TotalCount 24 MaxActive 4 SpawnCount 4 WaitBetweenSpawns 15 WaitBeforeStarting 15 TotalCurrency 80 TFBot { Template T_TFBot_Pyro_Fireball } } WaveSpawn { Where spawnbot_flank_left Name "support_engi" WaitForAllDead "stage02_engi" Support 1 TotalCount 10 MaxActive 4 SpawnCount 2 WaitBetweenSpawns 30 WaitBeforeStarting 30 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Engineer_Sentry_Tele_Battle TeleportWhere spawnbot TeleportWhere spawnbot_flank_left TeleportWhere spawnbot_flank_right TeleportWhere spawnbot_all TeleportWhere spawnbot_mission_sniper TeleportWhere spawnbot_mission_sentry_buster } TFBot { Template T_TFBot_Medic } } } } // Wave 2/8 // Total $ in this wave : 1200$ // Total $ when wave starts : 1000$ (Starting money) + 1000$ (Collected money) + 2100$ (Bonus) = 2100$ // Total $ when wave ends : 1000$ (Starting money) + 2200$ (Collected money) + 200$ (Bonus) = 3400$ Mission { Objective Spy Where spawnbot_mission_spy BeginAtWave 2 RunForThisManyWaves 1 InitialCooldown 75 CooldownTime 50 DesiredCount 2 TFBot { Template T_TFBot_Spy } } Mission { Objective Engineer BeginAtWave 2 RunForThisManyWaves 1 InitialCooldown 60 CooldownTime 60 DesiredCount 1 Where spawnbot TFBot { Template T_TFBot_Engineer_Sentry_Teleporter TeleportWhere spawnbot TeleportWhere spawnbot_flank_left TeleportWhere spawnbot_flank_right TeleportWhere spawnbot_all TeleportWhere spawnbot_mission_sniper TeleportWhere spawnbot_mission_sentry_buster } } Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaveSpawn { Where spawnbot Name "main" TotalCount 6 MaxActive 2 SpawnCount 2 WaitBetweenSpawns 60 WaitBeforeStarting 0 TotalCurrency 120 Squad { TFBot { Template T_TFBot_Giant_Soldier_Crit } TFBot { Template T_TFBot_Giant_Medic_Vaccinator_Fire } } } WaveSpawn { Where spawnbot Name "main" TotalCount 6 MaxActive 2 SpawnCount 2 WaitBetweenSpawns 60 WaitBeforeStarting 30 TotalCurrency 120 Squad { TFBot { Template T_TFBot_Giant_Heavyweapons } TFBot { Template T_TFBot_Giant_Medic_Vaccinator_Fire } } } WaveSpawn { Name "stage01_tank" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 100 Tank { Health 25000 Name TankBoss Speed 75 StartingPathTrackNode "boss_path_1" OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Where spawnbot Name "stage01" TotalCount 50 MaxActive 10 SpawnCount 2 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 100 TFBot { Template T_TFBot_Scout_Fast } } WaveSpawn { Where spawnbot Name "stage01_armored" TotalCount 18 MaxActive 6 SpawnCount 6 WaitBetweenSpawns 0 WaitBeforeStarting 10 TotalCurrency 60 TFBot { Template T_TFBot_Scout_Sandman_Bonk Attributes AlwaysCrit } } WaveSpawn { Where spawnbot_flank_left Where spawnbot_flank_right RandomSpawn 1 Name "stage02_armored" WaitForAllSpawned "stage01_armored" TotalCount 24 MaxActive 6 SpawnCount 3 WaitBetweenSpawns 7 WaitBeforeStarting 7 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Heavyweapons_Fist } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } } } WaveSpawn { Where spawnbot Name "stage02" WaitForAllSpawned "stage01" TotalCount 40 MaxActive 10 SpawnCount 2 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 80 TFBot { Class Pyro Attributes AlwaysFireWeapon Skill Expert } } WaveSpawn { Where spawnbot_all Name "stage03_armored" WaitForAllSpawned "stage02_armored" TotalCount 16 MaxActive 4 SpawnCount 4 WaitBetweenSpawns 0 WaitBeforeStarting 20 TotalCurrency 80 TFBot { Template T_TFBot_Heavyweapons_Fist } } WaveSpawn { Where spawnbot Name "stage03" WaitForAllSpawned "stage02" TotalCount 30 MaxActive 6 SpawnCount 6 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 120 TFBot { Template T_TFBot_Soldier_Charged } } WaveSpawn { Where spawnbot Name "stage03" WaitForAllSpawned "stage02" TotalCount 30 MaxActive 6 SpawnCount 6 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 120 TFBot { Template T_TFBot_Heavy_Natascha } } WaveSpawn { Where spawnbot_flank_left Name "stage04" WaitForAllSpawned "stage03" TotalCount 2 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 20 WaitBeforeStarting 20 TotalCurrency 100 TFBot { Template T_TFBot_Giant_DemoKnight_Samurai } } WaveSpawn { Where spawnbot Name "stage04" WaitForAllSpawned "stage03" TotalCount 12 MaxActive 12 SpawnCount 4 WaitBetweenSpawns 5 WaitBeforeStarting 5 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Soldier_Charged } TFBot { Template T_TFBot_Medic } } } } // Wave 3/8 // Total $ in this wave : 1300$ // Total $ when wave starts : 1000$ (Starting money) + 2200$ (Collected money) + 200$ (Bonus) = 3400$ // Total $ when wave ends : 1000$ (Starting money) + 3500$ (Collected money) + 300$ (Bonus) = 4800$ Mission { Objective Sniper Where spawnbot_mission_sniper BeginAtWave 3 RunForThisManyWaves 1 InitialCooldown 10 CooldownTime 30 DesiredCount 3 TFBot { Template T_TFBot_Sniper_Machina Attributes AlwaysCrit } } Mission { Objective Engineer BeginAtWave 3 RunForThisManyWaves 1 InitialCooldown 30 CooldownTime 60 DesiredCount 1 Where spawnbot TFBot { Template T_TFBot_Engineer_Sentry_Teleporter TeleportWhere spawnbot TeleportWhere spawnbot_flank_left TeleportWhere spawnbot_flank_right TeleportWhere spawnbot_all TeleportWhere spawnbot_mission_sniper TeleportWhere spawnbot_mission_sentry_buster } } Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaveSpawn { Name "stage01_blimp" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 30 TotalCurrency 50 Tank { Health 8000 Speed 75 Classicon blimp2_lite Skin 1 Name BlimpBoss StartingPathTrackNode blimp_path_1 MaxTurnRate 10 Model "models/bots/boss_bot/boss_blimp.mdl" Gravity 0 DisableTracks 1 DisableSmokestack 1 DisableChildModels 1 ReplaceModelCollisions 1 EngineLoopSound "npc/combine_gunship/dropship_engine_distant_loop1.wav" PingSound ambient/alarms/warningbell1.wav OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Where spawnbot Name "stage01_superscout" TotalCount 6 MaxActive 4 SpawnCount 2 WaitBetweenSpawns 15 WaitBeforeStarting 0 TotalCurrency 120 TFBot { Template T_TFBot_Giant_Scout_Blaster_Pusher } } WaveSpawn { Where spawnbot Name "stage01" TotalCount 32 MaxActive 10 SpawnCount 2 WaitBetweenSpawns 0 WaitBeforeStarting 10 TotalCurrency 100 RandomChoice { TFBot { Template T_TFBot_Pyro_Pusher } TFBot { Template T_TFBot_Pyro_Pusher } TFBot { Template T_TFBot_Pyro_Pusher_Airblast } } } WaveSpawn { Where spawnbot_flank_left Name "stage01" TotalCount 16 MaxActive 4 SpawnCount 4 WaitBetweenSpawns 0 WaitBeforeStarting 15 TotalCurrency 80 TFBot { Template T_TFBot_Pyro_Future_Flaregun Attributes AlwaysCrit } } WaveSpawn { Name "stage02_blimp" WaitForAllSpawned "stage01" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 10 TotalCurrency 50 Tank { Health 8000 Speed 75 Classicon blimp2_lite Skin 1 Name BlimpBoss StartingPathTrackNode blimp_path_1 MaxTurnRate 10 Model "models/bots/boss_bot/boss_blimp.mdl" Gravity 0 DisableTracks 1 DisableSmokestack 1 DisableChildModels 1 ReplaceModelCollisions 1 EngineLoopSound "npc/combine_gunship/dropship_engine_distant_loop1.wav" PingSound ambient/alarms/warningbell1.wav OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Where spawnbot Name "stage02_superscout" WaitForAllSpawned "stage01" TotalCount 6 MaxActive 4 SpawnCount 2 WaitBetweenSpawns 15 WaitBeforeStarting 0 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Scout_Delivery } } WaveSpawn { Where spawnbot_all Name "stage02" WaitForAllSpawned "stage01" TotalCount 40 MaxActive 14 SpawnCount 2 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 100 RandomChoice { TFBot { Template T_TFBot_Heavy_Deflector_Penetration } TFBot { Template T_TFBot_Heavy_Deflector_Penetration } TFBot { Template T_TFBot_Heavy_Deflector_Penetration } TFBot { Template T_TFBot_Heavy_Shotgun_FastFire } TFBot { Template T_TFBot_Heavy_Shotgun_FastFire } } } WaveSpawn { Name "stage03_blimp" WaitForAllSpawned "stage02" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 10 TotalCurrency 50 Tank { Health 8000 Speed 75 Classicon blimp2_lite Skin 1 Name BlimpBoss StartingPathTrackNode blimp_path_1 MaxTurnRate 10 Model "models/bots/boss_bot/boss_blimp.mdl" Gravity 0 DisableTracks 1 DisableSmokestack 1 DisableChildModels 1 ReplaceModelCollisions 1 EngineLoopSound "npc/combine_gunship/dropship_engine_distant_loop1.wav" PingSound ambient/alarms/warningbell1.wav OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Where spawnbot Name "stage03_pyromedic" WaitForAllSpawned "stage02" TotalCount 10 MaxActive 8 SpawnCount 2 WaitBetweenSpawns 5 WaitBeforeStarting 12 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Pyro_Future_Taunt } TFBot { Template T_TFBot_Medic_Shield } } } WaveSpawn { Where spawnbot Name "stage03" WaitForAllSpawned "stage02" TotalCount 10 MaxActive 10 SpawnCount 10 WaitBetweenSpawns 0 WaitBeforeStarting 10 TotalCurrency 100 TFBot { Template T_TFBot_Soldier_Extended_Battalion Skill Expert Attributes AlwaysCrit } } WaveSpawn { Where spawnbot_flank_left Name "stage04_superscout" WaitForAllSpawned "stage03" TotalCount 6 MaxActive 4 SpawnCount 1 WaitBetweenSpawns 10 WaitBeforeStarting 45 TotalCurrency 150 TFBot { Template T_TFBot_Giant_Scout_Backscatter_Hard } } WaveSpawn { Where spawnbot Name "stage04" WaitForAllSpawned "stage03" TotalCount 10 MaxActive 10 SpawnCount 2 WaitBetweenSpawns 5 WaitBeforeStarting 15 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Engineer_Ranger_Electric } TFBot { Template T_TFBot_Giant_Engineer_Widowmaker Attributes AlwaysCrit } } } WaveSpawn { Where spawnbot_flank_right Name "stage04_support" WaitForAllDead "stage03" Support 1 TotalCount 24 MaxActive 4 SpawnCount 4 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 100 TFBot { Template T_TFBot_Sniper_SMG_Spammer } } } // Wave 4/8 // Total $ in this wave : 1500$ // Total $ when wave starts : 1000$ (Starting money) + 3500$ (Collected money) + 300$ (Bonus) = 4800$ // Total $ when wave ends : 1000$ (Starting money) + 5000$ (Collected money) + 400$ (Bonus) = 6400$ Mission { Objective Spy Where spawnbot_mission_spy BeginAtWave 4 RunForThisManyWaves 1 InitialCooldown 10 CooldownTime 20 DesiredCount 6 TFBot { Template T_TFBot_Spy_Ninja } } Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaveSpawn { Where spawnbot Name "stage01" TotalCount 4 MaxActive 4 SpawnCount 4 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 200 TFBot { Template T_TFBot_Giant_Sniper_Rifleman_Fastfire Attributes AlwaysCrit } } WaveSpawn { Where spawnbot Name "stage01_giant" TotalCount 2 MaxActive 2 SpawnCount 2 WaitBetweenSpawns 0 WaitBeforeStarting 15 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Pyro_Fireball } TFBot { Template T_TFBot_Giant_Medic_Vaccinator_Fire_Armored } } } WaveSpawn { Where spawnbot_flank_left Name "stage01" TotalCount 16 MaxActive 5 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 10 TotalCurrency 100 TFBot { Template T_TFBot_Scout_FAN_Pusher Attributes AlwaysCrit } } WaveSpawn { Where spawnbot_flank_right Name "stage01" TotalCount 16 MaxActive 5 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 10 TotalCurrency 100 TFBot { Template T_TFBot_Soldier_Blast_Spammer Attributes AlwaysCrit } } WaveSpawn { Where spawnbot Name "stage02" WaitForAllSpawned "stage01" TotalCount 2 MaxActive 2 SpawnCount 2 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Pyro_Fireball } TFBot { Template T_TFBot_Giant_Medic_Vaccinator_Fire_Armored } } } WaveSpawn { Where spawnbot Name "stage02" WaitForAllSpawned "stage01" TotalCount 40 MaxActive 12 SpawnCount 2 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 200 TFBot { Template T_TFBot_Sniper_Huntsman_Hyper } } WaveSpawn { Where spawnbot Name "stage03" WaitForAllDead "stage02" TotalCount 4 MaxActive 4 SpawnCount 2 WaitBetweenSpawns 50 WaitBeforeStarting 0 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Heavy_Deflector_Hyper } TFBot { Template T_TFBot_Giant_Medic_Vaccinator_Bullet_Armored } } } WaveSpawn { Where spawnbot Name "stage03" WaitForAllDead "stage02" TotalCount 4 MaxActive 4 SpawnCount 2 WaitBetweenSpawns 50 WaitBeforeStarting 25 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Soldier_Burst_Homing_Hyper } TFBot { Template T_TFBot_Giant_Medic_Vaccinator_Blast_Armored } } } WaveSpawn { Where spawnbot Name "stage03_support" WaitForAllDead "stage02" TotalCount 50 MaxActive 10 SpawnCount 10 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 100 TFBot { Template T_TFBot_Scout_Bonk Attributes AlwaysCrit } } WaveSpawn { Where spawnbot_giant Name "stage04" WaitForAllSpawned "stage03" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 30 TotalCurrency 100 TFBot { Class Demoman Name "Sir Nukesalot in West" ClassIcon demo_giant Health 40000 Scale 1.9 Skill Expert WeaponRestrictions PrimaryOnly Item "The Loose Cannon" Item "the splendid screen" Item "The Hat With No Name" Item "The Demo's Dustcatcher" Attributes MiniBoss Attributes UseBossHealthBar Attributes HoldFireUntilFullReload Attributes AlwaysFireWeapon Attributes AlwaysCrit ItemAttributes { ItemName "The Loose Cannon" "grenade launcher mortar mode" 0 "faster reload rate" 1.8 "fire rate bonus" 2 "clip size penalty" 0.5 "Projectile speed increased" 0.8 "projectile spread angle penalty" 5 "damage bonus" 7 "damage causes airblast" 1 "blast radius increased" 1.2 "use large smoke explosion" 1 } ItemAttributes { ItemName "the splendid screen" "Attack not cancel charge" 1 "charge impact damage increased" 4 } CharacterAttributes { "charge time increased" 3 "charge recharge rate increased" 3 "move speed bonus" 0.35 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 4 } } } } // Wave 5/8 // Total $ in this wave : 1800$ // Total $ when wave starts : 1000$ (Starting money) + 5000$ (Collected money) + 400$ (Bonus) = 6400$ // Total $ when wave ends : 1000$ (Starting money) + 6800$ (Collected money) + 500$ (Bonus) = 8300$ Mission { Objective Sniper Where spawnbot_mission_sniper BeginAtWave 5 RunForThisManyWaves 1 InitialCooldown 30 CooldownTime 30 DesiredCount 3 TFBot { Template T_TFBot_Sniper_Deathray } } Mission { Objective Spy Where spawnbot_mission_spy BeginAtWave 5 RunForThisManyWaves 1 InitialCooldown 30 CooldownTime 30 DesiredCount 3 TFBot { Template T_TFBot_Spy_Business_Support Attributes AlwaysCrit } } Mission { Objective Engineer BeginAtWave 5 RunForThisManyWaves 1 InitialCooldown 30 CooldownTime 30 DesiredCount 1 Where spawnbot TFBot { Template T_TFBot_Engineer_Sentry_Teleporter_FastBuild TeleportWhere spawnbot TeleportWhere spawnbot_flank_left TeleportWhere spawnbot_flank_right TeleportWhere spawnbot_all TeleportWhere spawnbot_mission_sniper TeleportWhere spawnbot_mission_sentry_buster } } Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaveSpawn { Name "main_tank" TotalCount 12 MaxActive 4 SpawnCount 1 WaitBetweenSpawns 20 WaitBeforeStarting 10 TotalCurrency 400 Tank { Health 5000 Name TankBoss Speed 100 SpawnTemplate "SmallTankTurretCrit" ClassIcon tank_small_turret_crit DisableSmokestack 1 DisableBomb 1 Scale 0.5 IsCrit 1 StartingPathTrackNode boss_path_wbomb OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Where spawnbot_giant Name "main" TotalCount 8 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 10 TotalCurrency 100 TFBot { Template T_TFBot_Giant_Sniper_Huntsman_Milk_Penetration Attributes AlwaysCrit } } WaveSpawn { Where spawnbot Name "stage01" TotalCount 28 MaxActive 14 SpawnCount 7 WaitBetweenSpawns 2 WaitBeforeStarting 0 TotalCurrency 140 TFBot { Template T_TFBot_Heavy_Dragon } } WaveSpawn { Where spawnbot_flank_right Name "stage02_squad" WaitForAllSpawned "stage01" TotalCount 24 MaxActive 6 SpawnCount 3 WaitBetweenSpawns 5 WaitBeforeStarting 0 TotalCurrency 240 Squad { TFBot { Template T_TFBot_Heavy_Juggernaut_Minigun } TFBot { Template T_TFBot_Medic_Armored } TFBot { Template T_TFBot_Medic_Armored } } } WaveSpawn { Where spawnbot Name "stage02" WaitForAllSpawned "stage01" TotalCount 48 MaxActive 8 SpawnCount 4 WaitBetweenSpawns 0 WaitBeforeStarting 10 TotalCurrency 150 TFBot { Template T_TFBot_Demo_Conch Skill Expert Attributes AlwaysCrit } } WaveSpawn { Where spawnbot_flank_left Name "stage03_giant" WaitForAllSpawned "stage02_squad" TotalCount 16 MaxActive 6 SpawnCount 2 WaitBetweenSpawns 15 WaitBeforeStarting 15 TotalCurrency 160 TFBot { Template T_TFBot_Giant_Pyro_Dragon Attributes AlwaysCrit } } WaveSpawn { Where spawnbot_all Name "stage03a" WaitForAllSpawned "stage02" TotalCount 60 MaxActive 8 SpawnCount 4 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 300 RandomChoice { TFBot { Template T_TFBot_Scout_FastFire Attributes AlwaysCrit } TFBot { Template T_TFBot_Scout_FastFire Attributes AlwaysCrit } TFBot { Template T_TFBot_Scout_FastFire Attributes AlwaysCrit } TFBot { Template T_TFBot_Pyro_Crit } TFBot { Template T_TFBot_Pyro_Crit } } } WaveSpawn { Where spawnbot Name "stage03b" WaitForAllSpawned "stage03a" TotalCount 32 MaxActive 8 SpawnCount 4 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 160 Squad { TFBot { Template T_TFBot_Soldier_Burst_Homing_Hyper } TFBot { Template T_TFBot_Medic_Armored } TFBot { Template T_TFBot_Sniper_Huntsman_Hyper_Homing } TFBot { Template T_TFBot_Sniper_Huntsman_Hyper_Homing } } } WaveSpawn { Where spawnbot Name "stage03_support" WaitForAllSpawned "stage03_giant" Support 1 TotalCount 30 MaxActive 6 SpawnCount 6 WaitBetweenSpawns 0 WaitBeforeStarting 10 TotalCurrency 150 TFBot { Template T_TFBot_Pyro_Dragon_Armored Attributes AlwaysCrit } } } // Wave 6/8 // Total $ in this wave : 1500$ // Total $ when wave starts : 1000$ (Starting money) + 6800$ (Collected money) + 500$ (Bonus) = 8300$ // Total $ when wave ends : 1000$ (Starting money) + 8300$ (Collected money) + 600$ (Bonus) = 9900$ Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaveSpawn { Where spawnbot Name "stage01" TotalCount 50 MaxActive 20 SpawnCount 4 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 100 RandomChoice { TFBot { Template T_TFBot_Demo_Burst_Hyper } TFBot { Template T_TFBot_Demo_Sticky_Burst_Hyper } } } WaveSpawn { Name "stage02_tank" WaitForAllSpawned "stage01" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 100 Tank { Health 50000 Name TankBoss Speed 75 StartingPathTrackNode "boss_path_1_left" OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } SpawnTemplate "TankStickyHellmet" ClassIcon tank_sticky_hellmet } } WaveSpawn { Where spawnbot Name "stage02" WaitForAllSpawned "stage01" TotalCount 18 MaxActive 9 SpawnCount 9 WaitBetweenSpawns 0 WaitBeforeStarting 10 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Giant_Demo_Nuker } TFBot { Template T_TFBot_Medic_Hyper_Armored } TFBot { Template T_TFBot_Medic_Hyper_Armored } TFBot { Template T_TFBot_Medic_Hyper_Armored } TFBot { Template T_TFBot_Medic_Hyper_Armored } TFBot { Template T_TFBot_Medic_Hyper_Armored } TFBot { Template T_TFBot_Medic_Hyper_Armored } TFBot { Template T_TFBot_Medic_Hyper_Armored } TFBot { Template T_TFBot_Medic_Hyper_Armored } } } WaveSpawn { Where spawnbot Name "stage02" WaitForAllSpawned "stage01" TotalCount 25 MaxActive 5 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 10 TotalCurrency 100 TFBot { Template T_TFBot_Demo_Kamikaze } } WaveSpawn { Where spawnbot_all Name "stage02_engi" WaitForAllSpawned "stage01" Support Limited TotalCount 20 MaxActive 6 SpawnCount 2 WaitBetweenSpawns 10 WaitBeforeStarting 10 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Engineer_Sentry_Tele_Battle_Armored Attributes AlwaysCrit } TFBot { Template T_TFBot_Medic_Quickheal_Armored } } } WaveSpawn { Where spawnbot Name "stage03" WaitForAllSpawned "stage02" TotalCount 12 MaxActive 4 SpawnCount 4 WaitBetweenSpawns 0 WaitBeforeStarting 15 TotalCurrency 120 Squad { TFBot { Template T_TFBot_Giant_Demo_Scatter_Hyper } TFBot { Template T_TFBot_Medic_QuickUber_Armored } TFBot { Template T_TFBot_Medic_QuickUber_Armored } TFBot { Template T_TFBot_Medic_QuickUber_Armored } } } WaveSpawn { Where spawnbot Name "stage03" WaitForAllSpawned "stage02" TotalCount 6 MaxActive 2 SpawnCount 2 WaitBetweenSpawns 0 WaitBeforeStarting 20 TotalCurrency 120 Squad { TFBot { Template T_TFBot_Giant_Demo_Sticky_Spammer_Hyper } TFBot { Template T_TFBot_Medic_QuickUber_Armored } } } WaveSpawn { Where spawnbot Name "stage03" WaitForAllSpawned "stage02" TotalCount 6 MaxActive 2 SpawnCount 2 WaitBetweenSpawns 0 WaitBeforeStarting 25 TotalCurrency 120 TFBot { Template T_TFBot_Giant_Demoknight_Hyper } } WaveSpawn { Where spawnbot_flank_left Name "stage03_support" WaitForAllSpawned "stage02" Support 1 TotalCount 20 MaxActive 4 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 10 TotalCurrency 50 TFBot { Template T_TFBot_Demoknight_Hyper } } WaveSpawn { Where spawnbot_flank_right Name "stage03_support" WaitForAllSpawned "stage02" Support 1 TotalCount 20 MaxActive 4 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 10 TotalCurrency 50 TFBot { Template T_TFBot_Demo_Crit } } WaveSpawn { Where spawnbot_all Name "stage03_engi" WaitForAllDead "stage02_engi" Support 1 TotalCount 4 MaxActive 4 SpawnCount 2 WaitBetweenSpawns 30 WaitBeforeStarting 30 TotalCurrency 40 Squad { TFBot { Template T_TFBot_Engineer_Sentry_Tele_Battle_Armored Attributes AlwaysCrit } TFBot { Template T_TFBot_Medic_Quickheal_Armored } } } WaveSpawn { Name "stage04_tank" WaitForAllSpawned "stage03" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 100 Tank { Health 40000 Name TankBoss Speed 75 StartingPathTrackNode "boss_path_1" OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } SpawnTemplate "TankStickyHellmet" ClassIcon tank_sticky_hellmet } } WaveSpawn { Where spawnbot Name "stage04" WaitForAllSpawned "stage03" TotalCount 8 MaxActive 4 SpawnCount 4 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Demo_Sticky_Infinite_Hyper } TFBot { Template T_TFBot_Medic_QuickUber_Armored } TFBot { Template T_TFBot_Demo_Sticky_Burst_Hyper } TFBot { Template T_TFBot_Demo_Sticky_Burst_Hyper } } } WaveSpawn { Where spawnbot Name "stage04" WaitForAllSpawned "stage03" TotalCount 8 MaxActive 4 SpawnCount 4 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 200 Squad { TFBot { Template T_TFBot_Giant_Demo_Spammer_Burst_Hyper } TFBot { Template T_TFBot_Medic_QuickUber_Armored } TFBot { Template T_TFBot_Demo_Burst_Hyper } TFBot { Template T_TFBot_Demo_Burst_Hyper } } } } // Wave 7/8 // Total $ in this wave : 1400$ // Total $ when wave starts : 1000$ (Starting money) + 8300$ (Collected money) + 600$ (Bonus) = 9900$ // Total $ when wave ends : 1000$ (Starting money) + 9700$ (Collected money) + 700$ (Bonus) = 11400$ Mission { Objective Sniper Where spawnbot_mission_sniper BeginAtWave 7 RunForThisManyWaves 1 InitialCooldown 60 CooldownTime 120 DesiredCount 2 TFBot { Template T_TFBot_Sniper_Charged_Hyper } } Mission { Objective Spy Where spawnbot_mission_spy BeginAtWave 7 RunForThisManyWaves 1 InitialCooldown 30 CooldownTime 30 DesiredCount 2 TFBot { Template T_TFBot_Spy_Hyper } } Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } WaveSpawn { Name "stage01_tank" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 100 Tank { Health 30000 Name TankBoss Speed 75 StartingPathTrackNode "boss_path_abomb" OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name "stage01_blimp" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 100 Tank { Health 30000 Speed 75 Classicon blimp2_lite Skin 1 Name BlimpBoss StartingPathTrackNode blimp_path_1 MaxTurnRate 10 Model "models/bots/boss_bot/boss_blimp.mdl" Gravity 0 DisableTracks 1 DisableSmokestack 1 DisableChildModels 1 ReplaceModelCollisions 1 EngineLoopSound "npc/combine_gunship/dropship_engine_distant_loop1.wav" PingSound ambient/alarms/warningbell1.wav OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Where spawnbot_flank_left Name "stage01_superscout" TotalCount 10 MaxActive 4 SpawnCount 1 WaitBetweenSpawns 10 WaitBeforeStarting 30 TotalCurrency 50 TFBot { Template T_TFBot_Giant_Scout_Hyper_Bonk } } WaveSpawn { Where spawnbot Name "stage01" TotalCount 10 MaxActive 4 SpawnCount 4 WaitBetweenSpawns 0 WaitBeforeStarting 10 TotalCurrency 50 Squad { TFBot { Template T_TFBot_Sniper_Huntsman_Hyper_Spammer_Penetration } TFBot { Template T_TFBot_Medic_Long_Uber_Nopop } } } WaveSpawn { Where spawnbot Name "stage01" TotalCount 50 MaxActive 8 SpawnCount 2 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 100 TFBot { Template T_TFBot_Scout_Backscatter_Hyper Attributes AlwaysCrit } } WaveSpawn { Where spawnbot Name "stage02" WaitForAllSpawned "stage01" TotalCount 4 MaxActive 4 SpawnCount 2 WaitBetweenSpawns 15 WaitBeforeStarting 10 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Giant_Heavy_Deflector_Penetration_Hyper } TFBot { Template T_TFBot_Giant_Medic_Shield_Extended_QuickHeal } } } WaveSpawn { Where spawnbot Name "stage02" WaitForAllSpawned "stage01" TotalCount 16 MaxActive 8 SpawnCount 4 WaitBetweenSpawns 10 WaitBeforeStarting 20 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Soldier_Scatter_Hyper } TFBot { Template T_TFBot_Medic_Long_Uber_Nopop } } } WaveSpawn { Where spawnbot_flank_left Name "stage02" WaitForAllSpawned "stage01_superscout" TotalCount 12 MaxActive 4 SpawnCount 2 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 100 TFBot { Template T_TFBot_Soldier_Scatter_Hyper } } WaveSpawn { Name "stage03_tank" WaitForAllSpawned "stage02" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 40 TotalCurrency 100 Tank { Health 25000 Name TankBoss Speed 75 Skin 1 StartingPathTrackNode "boss_path_wbomb" OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Where spawnbot_flank_left Name "stage03_superscout" WaitForAllSpawned "stage02" TotalCount 10 MaxActive 4 SpawnCount 1 WaitBetweenSpawns 10 WaitBeforeStarting 10 TotalCurrency 50 TFBot { Template T_TFBot_Giant_Scout_Hyper } } WaveSpawn { Where spawnbot Name "stage03" WaitForAllSpawned "stage02" TotalCount 6 MaxActive 6 SpawnCount 2 WaitBetweenSpawns 20 WaitBeforeStarting 20 TotalCurrency 150 Squad { TFBot { Template T_TFBot_Giant_Heavy_Deflector_Penetration_Hyper } TFBot { Template T_TFBot_Giant_Medic_Shield_Extended_QuickHeal } } } WaveSpawn { Where spawnbot Name "stage03_squad" WaitForAllSpawned "stage02" TotalCount 24 MaxActive 6 SpawnCount 6 WaitBetweenSpawns 0 WaitBeforeStarting 10 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Demo_Scatter_Hyper } TFBot { Template T_TFBot_Medic_Long_Uber_Nopop } } } WaveSpawn { Name "stage04_blimp" WaitForAllSpawned "stage03" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 40 TotalCurrency 100 Tank { Health 25000 Speed 75 Classicon blimp2_lite Skin 4 Name BlimpBoss StartingPathTrackNode blimp_path_1 MaxTurnRate 10 Model "models/bots/boss_bot/boss_blimp.mdl" Gravity 0 DisableTracks 1 DisableSmokestack 1 DisableChildModels 1 ReplaceModelCollisions 1 EngineLoopSound "npc/combine_gunship/dropship_engine_distant_loop1.wav" PingSound ambient/alarms/warningbell1.wav OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Where spawnbot Name "stage04" WaitForAllSpawned "stage03" TotalCount 10 MaxActive 6 SpawnCount 2 WaitBetweenSpawns 10 WaitBeforeStarting 20 TotalCurrency 100 Squad { TFBot { Template T_TFBot_Giant_Soldier_Spammer_Crit } TFBot { Template T_TFBot_Medic_Long_Uber_Nopop } } } WaveSpawn { Where spawnbot_all Name "stage04_support" WaitForAllDead "stage03" Support 1 TotalCount 24 MaxActive 4 SpawnCount 4 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 50 TFBot { Template T_TFBot_Scout_Hyper_Bonk Attributes AlwaysCrit } } WaveSpawn { Where spawnbot_all Name "stage04_support" WaitForAllDead "stage03_squad" Support 1 TotalCount 24 MaxActive 6 SpawnCount 3 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 50 TFBot { Template T_TFBot_Soldier_Crit Attributes AlwaysCrit } } WaveSpawn { Where spawnbot_all Name "engineer" Support 1 TotalCount 20 MaxActive 2 SpawnCount 1 WaitBetweenSpawns 60 WaitBeforeStarting 60 TotalCurrency 0 TFBot { Template T_TFBot_Engineer_Sentry_Teleporter_Hyper } } } // Wave 8/8 // Total $ in this wave : 300$ // Total $ when wave starts : 1000$ (Starting money) + 9700$ (Collected money) + 700$ (Bonus) = 11400$ // Total $ when wave ends : 1000$ (Starting money) + 10000$ (Collected money) + 700$ (Bonus) = 11700$ Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action trigger } SpawnTemplate { Name "prop_block_front" Origin "0 0 0" Angles "0 0 0" } SpawnTemplate { Name "prop_block_mid" Origin "0 0 0" Angles "0 0 0" } SpawnTemplate { Name "prop_block_hatch" Origin "0 0 0" Angles "0 0 0" } WaveSpawn { Where spawnbot_giant Name "finalboss01" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 100 TFBot { Name "The Man of Honor" Class Spy ClassIcon spy_enforcer_nys Skill Expert Health 60000 Scale 1.9 Attributes MiniBoss Attributes UseBossHealthBar WeaponRestrictions PrimaryOnly Action FetchFlag AimTrackingInterval 0 Item "the enforcer" Item "the big earner" Item "cosa nostra cap" Item "the made man" ItemAttributes { ItemName "the enforcer" "damage bonus" 2.0 "weapon spread bonus" 0 "sniper fires tracer" 1 "projectile penetration" 1 "minicrits become crits" 1 } CharacterAttributes { "health regen" 250 "move speed bonus" 0.6 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "airblast vertical vulnerability multiplier" 0.1 "override footstep sound set" 6 "cannot disguise" 1 "rage giving scale" 0.1 } } } WaveSpawn { Where spawnbot_giant Name "finalboss02" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 100 TFBot { Name "The Saharan Spy" Class Spy ClassIcon spy_letranger_nys Skill Expert Health 60000 Scale 1.9 Attributes MiniBoss Attributes UseBossHealthBar WeaponRestrictions PrimaryOnly Action FetchFlag AimTrackingInterval 0 Item "l'etranger" Item "your eternal reward" Item "the familiar fez" ItemAttributes { ItemName "l'etranger" "damage penalty" 4.0 "mark for death" 1 "slow enemy on hit major" 10 "bleeding duration" 10 "minicrits become crits" 1 } CharacterAttributes { "health regen" 250 "move speed bonus" 0.6 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "airblast vertical vulnerability multiplier" 0.1 "override footstep sound set" 6 "cannot disguise" 1 "rage giving scale" 0.1 } } } WaveSpawn { Where spawnbot_giant Name "finalboss03" TotalCount 1 MaxActive 1 SpawnCount 1 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 100 TFBot { Name "Fanning Master" Class Spy ClassIcon spy_revolver_lite Skill Expert Health 60000 Scale 1.9 Attributes MiniBoss Attributes UseBossHealthBar WeaponRestrictions PrimaryOnly Action FetchFlag Item "Upgradeable TF_WEAPON_REVOLVER" ItemAttributes { ItemName "Upgradeable TF_WEAPON_REVOLVER" "damage bonus" 4.0 "fire rate bonus" 0.2 "weapon spread bonus" 1.25 "explosive bullets" 150 "minicrits become crits" 1 } CharacterAttributes { "health regen" 250 "move speed bonus" 0.6 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "airblast vertical vulnerability multiplier" 0.1 "override footstep sound set" 6 "cannot disguise" 1 "rage giving scale" 0.1 } } } WaveSpawn { Where spawnbot_all Name "support01" WaitForAllDead "finalboss01" Support 1 TotalCount 24 MaxActive 6 SpawnCount 3 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 0 TFBot { Template T_TFBot_Sniper_Huntsman_Penetration Attributes AlwaysCrit } } WaveSpawn { Where spawnbot_all Name "support02" WaitForAllDead "finalboss02" Support 1 TotalCount 24 MaxActive 6 SpawnCount 3 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 0 TFBot { Template T_TFBot_Soldier_Spammer_Buff Attributes AlwaysCrit } } WaveSpawn { Where spawnbot_all Name "support03" WaitForAllDead "finalboss03" Support 1 TotalCount 24 MaxActive 6 SpawnCount 3 WaitBetweenSpawns 0 WaitBeforeStarting 0 TotalCurrency 0 TFBot { Template T_TFBot_Heavy_Shotgun_Burst Attributes AlwaysCrit } } } }