//March of the undead, By HelpitHellbladeEvilSeelpit //Advanced difficulty //For Silent Sky - "event" variation, aka Night Sky //A spooky advanced that utilizes a little bit of sigmod for some funky bots! //Main gimmicks: //- RED Bots //- FireWeapon //- Portals //- Teleporter Tank //Themed waves: //- Nautical Nightmares (FireWeapon) //- Demonic Demolition //- Pestilence Panic //- Bloodstained Bashing (blood botkiller bots!) //- Void Virulence //- Honeycoated Horrors (the obligatory bee wave) // spawnbot - spawn bots in carrier // spawnbot_mission_sentrybuster - main carrier // spawnbot_mission_spy - main carrier // spawnbot_mission_engineer - side thing // spawnbot_mission_sniper - one spawn near carrier and another on side thing. // spawnbot_side - spawns bots in side thing // spawnbot_alt - spawn bots on main spawn, closer to the drop. mostly a relic from alpha which is still used for some reason. // spawnbot_airdrop0 // spawnbot_airdrop1 // spawnbot_airdrop2 // spawnbot_invasion - uses every available land spawn // infinite limited spawns - controlled by relays! // spawnbot_alt_limited_a // spawnbot_alt_limited_b // spawnbot_alt_limited_c // spawnbot_alt_limited_d // spawnbot_side_limited_a // spawnbot_side_limited_b // spawnbot_side_limited_c // spawnbot_side_limited_d // spawnbot_airdrop0_limited_a // spawnbot_airdrop0_limited_b // spawnbot_airdrop0_limited_c // spawnbot_airdrop0_limited_d // spawnbot_airdrop1_limited_a // spawnbot_airdrop1_limited_b // spawnbot_airdrop1_limited_c // spawnbot_airdrop1_limited_d // spawnbot_airdrop2_limited_a // spawnbot_airdrop2_limited_b // spawnbot_airdrop2_limited_c // spawnbot_airdrop2_limited_d // suggested tank name: "tank" - otherwise they won't blow up on bomb deployment. ("droptank0" for tank_path_drop0_a / tank_path_drop0_b and "droptank1" for tank_path_drop1) // vac tanks: "tank_blast" (blast resistance) "tank_fire" (fire resistance) "tank_bullet" (bullet resistance) - only 1 vac tank of given type can exist. (so like, can't have 2 bullet vacs. but you can have all 3 different things out at once.) // tank pathes: tank_path_a (left side, past scaffold); tank_path_b (right side, through blu building); // tank_path_air_bombrandom - must be used AFTER dropbomb_coords_stop_relay or else game might crash because those thing don't exist unless spawned by their respective relay. // tank_path_drop0_a; tank_path_drop0_b; - spawns parachuting tanks that go down on ground, land after ~18 seconds and go on a/b path for usual tanks. // tank_path_drop1; - spawns parachuting tank close to hatch, that lands in ~16 seconds and proceeds to go towards the hatch. // It's best to have only 1 tank parachuting at the same time on drop0 or drop1. For reference, check the mission. // tank_path_bullet_start_a tank_path_fire_start_a tank_path_blast_start_a - tank path a but used for vac tank spawns. please spawn tanks with names that match the path // tank_path_bullet_start_b tank_path_fire_start_b tank_path_blast_start_b - tank path b but used for vac tank spawns. please spawn tanks with names that match the path //"portal thing is wof_plane2.mdl and the sky aura is vortex_lakeside.mdl" //cool rising ghosts: "models/props_viaduct_event/ghost_cards01.mdl" //Spooky eyes in tunnel of tank //Map properties: //skybox sky_triage_01 | NEW: sky_harvest_night_01 //light_environment stats: //brightness or light 248 197 139 400 | NEW: 133 101 159 275 //ambient 153 159 187 200 | NEW: 114 100 151 57 //sunSpreadAngle 5 | NEW: 3 //pitch yaw roll 0 317 0 //pitch -32 //skybox_camera stats: //fogcolor 155 114 92 | NEW: 96 66 94 // fogcolor2 91 71 79 | ditto // fogdir 1 0 0 | ditto // scale 16 | ditto // fogblend 0 | ditto // use_angles 0 | ditto // WHAT?! SEELPIT WHAT LANGUAGE ARE U SPEAKING //brightnessHdr -1 -1 -1 1 //brightnessScaleHdr 1 //ambientHdr -1 -1 -1 1 //ambientScaleHdr 1 #base robot_standard.pop #base robot_giant.pop popuwashyon { StartingCurrency 1200 //A solid amount, really. Ha now more RespawnWaveTime 3 FixedRespawnWaveTime 1 //Feels better...probably ForceHoliday 2 EventPopfile Halloween //Disable halloween mode ZombiesNoWave666 1 Advanced 1 //I blatantly took these from Ground Zero, gotem ExtraSpawnPoint //Adds spawn points on specified location { Name "spawnbot_reprogrammed" // Spawns just outside of RED door on a fancy hatch. the jackpot TeamNum 3 X "-1315" Y "-3074.0" Z "770.0" } ExtraTankPath // Blimp spawn { Name "tank_path_blimp" Node "-5268 569 1000" Node "-5723 522 1000" Node "-5982 121 1000" Node "-5982 -3173 1000" Node "-5214 -3908 1000" Node "-3298 -3908 1000" Node "-2450 -3120 1000" } PointTemplates { Vortex { NoFixUp 1 hightower_teleport_vortex { targetname "vortex" StartDisabled 1 Lifetime 10 } } UnuVortex { info_particle_system { "effect_name" "unusual_universe_swirl" "start_active" "1" "origin" "0 0 0" "angles" "0 0 0" } } SwirlyFull { NoFixUp 1 info_particle_system { "targetname" "swirly" "effect_name" "utaunt_portalswirl_purple_parent" "start_active" "1" "lifetime" "6" "origin" "0 0 0" "angles" "0 0 0" } } SwirlyPortal { info_particle_system { "effect_name" "utaunt_portalswirl_purple_vortex" "start_active" "1" "lifetime" "6" "origin" "0 0 0" "angles" "0 0 0" } } SwirlyAlt { info_particle_system { "effect_name" "utaunt_hellswirl" "start_active" "1" "origin" "0 0 0" "angles" "0 0 0" } } VortexSky { prop_dynamic { "model" "models/props_lakeside_event/vortex_lakeside.mdl" "solid" "0" "disableshadows" "1" "modelscale" "5" "rendercolor" "134 80 172" //Unusual | color! R G B A, and Alpha defaults to 255 :> } } GhostsSky { prop_dynamic { "model" "models/props_viaduct_event/ghost_cards01.mdl" "solid" "0" "disableshadows" "1" "modelscale" "5" "rendercolor" "134 80 172" //Unusual | color! R G B A, and Alpha defaults to 255 :> } } VortexSkyPortal { prop_dynamic { "model" "models/props_lakeside_event/wof_plane2.mdl" "solid" "0" "disableshadows" "1" } } tanktp //teleporting tank { NoFixup 1 point_teleport { "targetname" "teleporty" "origin" "-3936 -1792 328" //locate where to teleport to; this is node 43 "angles" "0 -90 0" "spawnflags" "0" "target" "tank" //What entity to teleport } } VortexBloodStart //red vortex for teleporting tank - start location { prop_dynamic { "targetname" "bloodvortexStartA" "model" "models/props_lakeside_event/wof_plane2.mdl" "angles" "0 0 90" "solid" "0" "disableshadows" "1" "modelscale" "0.65" "rendercolor" "170 0 0" //Collector's } prop_dynamic { "targetname" "bloodvortexStartB" "model" "models/props_lakeside_event/wof_plane2.mdl" "angles" "0 0 270" "solid" "0" "disableshadows" "1" "modelscale" "0.65" "rendercolor" "170 0 0" //Collector's } } VortexBloodEnd //red vortex for teleporting tank - target location { prop_dynamic { "targetname" "bloodvortexEndA" "model" "models/props_lakeside_event/wof_plane2.mdl" "angles" "0 0 90" "solid" "0" "disableshadows" "1" "modelscale" "0.65" "rendercolor" "170 0 0" //Collector's } prop_dynamic { "targetname" "bloodvortexEndB" "model" "models/props_lakeside_event/wof_plane2.mdl" "angles" "0 0 270" "solid" "0" "disableshadows" "1" "modelscale" "0.65" "rendercolor" "170 0 0" //Collector's } } //Props 'n stuff spookeyes { prop_dynamic { "model" "models/props_manor/spooky_eyes_01.mdl" "DefaultAnim" "look" "maxanimtime" "10" "minanimtime" "5" "renderamt" "255" "solid" "0" "disableshadows" "1" } } pumpkin1 { prop_dynamic { "origin" "0 0 -15" "disablereceiveshadows" "0" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "0" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mixdxlevel" "0" "model" "models\props_halloween\pumpkin_01.mdl" "modelscale" "1" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "255" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "0" "SetBodyGroup" "0" "skin" "0" "solid" "6" "spawnflags" "0" "StartDisabled" "0" } } pumpkin2 { prop_dynamic { "origin" "0 0 -15" "disablereceiveshadows" "0" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "0" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mixdxlevel" "0" "model" "models\props_halloween\pumpkin_02.mdl" "modelscale" "1" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "255" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "0" "SetBodyGroup" "0" "skin" "0" "solid" "6" "spawnflags" "0" "StartDisabled" "0" } } pumpkin3 { prop_dynamic { "origin" "0 0 -20" "disablereceiveshadows" "0" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "0" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mixdxlevel" "0" "model" "models\props_halloween\pumpkin_03.mdl" "modelscale" "1" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "255" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "0" "SetBodyGroup" "0" "skin" "0" "solid" "6" "spawnflags" "0" "StartDisabled" "0" } } //Pumpkin w light jackolantern { prop_dynamic { "disablereceiveshadows" "0" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "0" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mixdxlevel" "0" "model" "models\props_halloween\jackolantern_01.mdl" "modelscale" "1" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "255" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "0" "SetBodyGroup" "0" "skin" "0" "solid" "6" "spawnflags" "0" "StartDisabled" "0" } } jackolantern2 { prop_dynamic { "disablereceiveshadows" "0" "disableshadows" "1" "ExplodeDamage" "0" "ExplodeRadius" "0" "fademaxdist" "0" "fademindist" "0" "MaxAnimTime" "10" "maxdxlevel" "0" "MinAnimTime" "5" "mixdxlevel" "0" "model" "models\props_halloween\jackolantern_02.mdl" "PerformanceMode" "0" "pressuredelay" "0" "RandomAnimation" "0" "renderamt" "255" "rendercolor" "255 255 255" "renderfx" "0" "rendermode" "0" "SetBodyGroup" "0" "skin" "0" "solid" "6" "spawnflags" "0" "StartDisabled" "0" } } //Candles halloween_candle { prop_dynamic { "model" "models/props_halloween/candle.mdl" "fadescale" "1" "lightmapresolutionx" "32" "lightmapresolutiony" "32" "maxdxlevel" "0" "mindxlevel" "0" "solid" "0" "disableshadows" "1" } } halloween_candle2 { prop_dynamic { "model" "models/props_halloween/candle_cluster.mdl" "fadescale" "1" "lightmapresolutionx" "32" "lightmapresolutiony" "32" "maxdxlevel" "0" "mindxlevel" "0" "solid" "0" "disableshadows" "1" } } //Coffin coffin { prop_dynamic { "model" "models/props_viaduct_event/coffin_simple_closed.mdl" "fadescale" "1" "lightmapresolutionx" "32" "lightmapresolutiony" "32" "maxdxlevel" "0" "mindxlevel" "0" "solid" "6" "disableshadows" "0" } } //Easter egg EngineerProp { prop_dynamic { "model" "models/props_training/target_engineer.mdl" "solid" "0" "disableshadows" "1" } } DemoEyeHat { prop_dynamic { "model" "models/player/items/all_class/haunted_eyeball_hat_demo.mdl" "solid" 0 "disableshadows" 1 } } } // SpawnTemplate // { // Name "Cow" // Origin "-1619 -2757 769" // Angles "0 45 0" // } //Vortex SpawnTemplate { Name "VortexSky" Origin "2020 3880 2200" } // SpawnTemplate // { // Name "VortexSkyPortal" // Origin "2020 3880 2270" // Angles "0 0 90" // } ////// Props ////// //Angle: Z+ = clockwise, when towards 0 0 0!! //Eyes SpawnTemplate { Name "spookeyes" Origin "-5646 -271 -34" Angles "0 -90 0" } SpawnTemplate { Name "spookeyes" Origin "-5191 -1777 -26" Angles "0 90 0" } //Pumpkin SpawnTemplate { Name "pumpkin1" Origin "-4952 -1100 148" Angles "0 -150 0" } //Pumpkin w light SpawnTemplate { Name "jackolantern" Origin "-2054 -3960 666" Angles "0 60 0" } SpawnTemplate //outside house, left of hatch { Name "jackolantern" Origin "-3302 -4045 512" Angles "0 45 0" } SpawnTemplate //under rising platform { Name "jackolantern" Origin "-4458 -1900 148" Angles "0 -134 0" } SpawnTemplate { Name "jackolantern2" //upper stairwell, right house Origin "-3610 -1374 544" Angles "0 -125 0" } //Candles SpawnTemplate //grate out of spawn { Name "halloween_candle" Origin "-1940 -3975 670" } SpawnTemplate //spawnroom { Name "halloween_candle2" Origin "-1322 -2768 746" Angles "0 0 0" } SpawnTemplate //middle triple kit room { Name "halloween_candle2" Origin "-4174 -3216 485" Angles "0 0 0" } SpawnTemplate //room left of hatch { Name "halloween_candle" Origin "-3375 -4047 612" } SpawnTemplate //scaffold { Name "halloween_candle" Origin "-4125 -3800 342" Angles "0 0 15" } SpawnTemplate //door @ entrance left building { Name "halloween_candle" Origin "-4580 -3723 135" Angles "0 0 -15" } SpawnTemplate //roof @ exit left path { Name "halloween_candle2" Origin "-3742 -4468 367" Angles "-28 0 0" } SpawnTemplate //right house kits { Name "halloween_candle" Origin "-4208 -2240 320" Angles "0 0 0" } SpawnTemplate //right house entrance { Name "halloween_candle2" Origin "-4234 -1377 320" Angles "0 0 0" } //Coffin SpawnTemplate //spawnroom { Name "coffin" Origin "-1695 -2016 678" Angles "-28 -5 0" } //eng-ineer SpawnTemplate { Name "EngineerProp" Origin "-5075 -4450 410" Angles "0 103 -22" } //eye see SpawnTemplate { Name "DemoEyeHat" Origin "-6784 -1151 204" Angles "-1 0 0" } //W1 busters Mission { Objective DestroySentries Where spawnbot DesiredCount 1 InitialCooldown 15 CooldownTime 75 BeginAtWave 1 RunForThisManyWaves 1 TFBot { Template T_TFBot_SentryBuster Attributes IgnoreEnemies Attributes DisableDodge Name "Walking Naval Mine" CharacterAttributes { "damage force reduction" 0 } } } Mission { Objective Spy Where spawnbot_mission_spy DesiredCount 2 InitialCooldown 25 CooldownTime 45 BeginAtWave 2 RunForThisManyWaves 1 TFBot { Template T_TFBot_Spy } } // Wave 1 // from: Doom at dusk and Ancestral Assault // Subwave 1: Tank, Gru scouts and G Demoman // Subwave 1.5: G scouts when tank dies // Subwave 2: Soldiers, G Pentashot and Buff Banner Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name "wave1_ATankTank" WaitBeforeStarting 0 TotalCount 1 TotalCurrency 200 Tank { Name "tank" Health 15000 Speed 75 StartingPathTrackNode "tank_path_a" OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name "wave1_Atank" TotalCurrency 50 TotalCount 16 MaxActive 6 SpawnCount 2 Where spawnbot WaitBetweenSpawns 4 WaitBeforeStarting 10 TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ_Fast } } WaveSpawn { Name "wave1_Atank" TotalCurrency 50 TotalCount 8 MaxActive 3 SpawnCount 1 Where spawnbot WaitBetweenSpawns 4 WaitBeforeStarting 10 TFBot { Class Scout } } WaveSpawn { Name "wave1_ADemoTank" TotalCurrency 100 TotalCount 15 MaxActive 10 SpawnCount 5 Where spawnbot WaitBeforeStarting 5 WaitBetweenSpawns 15 Squad { TFBot { Class Demoman Name "Giant Demoman" ClassIcon demo_giant Skill Expert Health 3300 WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload Attributes MiniBoss ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "faster reload rate" 0.75 "fire rate bonus" 0.75 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.5 "airblast vulnerability multiplier" 0.5 "override footstep sound set" 4 } } TFBot { Class Pyro ItemAttributes { ItemName "TF_WEAPON_FLAMETHROWER" "damage bonus" 0.5 } } TFBot { Class Pyro ItemAttributes { ItemName "TF_WEAPON_FLAMETHROWER" "damage bonus" 0.5 } } TFBot { Class Pyro ItemAttributes { ItemName "TF_WEAPON_FLAMETHROWER" "airblast disabled" 1 "damage bonus" 0.5 } } TFBot { Class Pyro ItemAttributes { ItemName "TF_WEAPON_FLAMETHROWER" "airblast disabled" 1 "damage bonus" 0.5 } } } } WaveSpawn { Name wave1_BGscout Waitforalldead "wave1_ATankTank" TotalCurrency 100 TotalCount 2 MaxActive 2 SpawnCount 1 Where spawnbot WaitBeforeStarting 0 WaitBetweenSpawns 10 TFBot { Template T_TFBot_Giant_Scout } } WaveSpawn { Name wave1_BSoldier Waitforalldead "wave1_ADemoTank" TotalCurrency 50 TotalCount 10 MaxActive 4 SpawnCount 2 Where spawnbot_alt WaitBeforeStarting 5 WaitBetweenSpawns 8 TFBot { Class Soldier } } WaveSpawn { Name wave1_BSoldier Waitforalldead "wave1_ADemoTank" TotalCurrency 50 TotalCount 10 MaxActive 3 SpawnCount 1 Where spawnbot WaitBeforeStarting 5 WaitBetweenSpawns 4 TFBot { Class Soldier } } WaveSpawn { Name wave1_BSoldier Waitforalldead "wave1_ADemoTank" TotalCurrency 100 TotalCount 9 MaxActive 9 SpawnCount 3 Where spawnbot WaitBeforeStarting 0 WaitBetweenSpawns 20 Squad { TFBot { Class Soldier ClassIcon soldier_rocketrain Item "The Beggar's Bazooka" Name "Penta-Rocket Beggar Soldier" Skill Expert Health 3800 Attributes MiniBoss WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload ItemAttributes { ItemName "The Beggar's Bazooka" "fire rate bonus" 0.3 "clip size upgrade atomic" 2 "faster reload rate" 0.9 "blast radius increased" 1.25 "blast radius decreased" 1 "projectile spread angle penalty" 6 "can overload" 0 "auto fires full clip" 0 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 } } TFBot { Class Scout } TFBot { Class Scout } } } WaveSpawn { Name wave1_BSoldier Waitforalldead "wave1_ADemoTank" TotalCurrency 100 TotalCount 8 MaxActive 8 SpawnCount 8 Where spawnbot WaitBeforeStarting 10 WaitBetweenSpawns 20 Squad { TFBot { Class Soldier Skill Hard } TFBot { Class Soldier Skill Hard } TFBot { Class Soldier Skill Hard } TFBot { Class Soldier Skill Hard } } } } // Wave 2 // Subwave 1: Ancestral Assault // // // // // // Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name "wave2_AWaves" TotalCurrency 100 TotalCount 18 MaxActive 9 SpawnCount 3 Where spawnbot WaitBetweenSpawns 0 WaitBeforeStarting 8 TFBot { Class Sniper ClassIcon sniper_smg WeaponRestrictions SecondaryOnly ItemAttributes { ItemName "TF_WEAPON_SMG" "clip size penalty" 0.5 "faster reload rate" 2 "projectile spread angle penalty" 1 } } } WaveSpawn { Name "wave2_AWaves" TotalCurrency 100 TotalCount 18 MaxActive 9 SpawnCount 3 Where spawnbot WaitBetweenSpawns 3 WaitBeforeStarting 8 TFBot { Class Scout } } WaveSpawn { Name "wave2_AWaves" TotalCurrency 100 TotalCount 12 MaxActive 6 SpawnCount 3 Where spawnbot WaitBetweenSpawns 5 WaitBeforeStarting 15 TFBot { Template T_TFBot_Heavyweapons_Fist } } WaveSpawn { Name "wave2_AWaveGiant" TotalCurrency 100 TotalCount 3 MaxActive 3 SpawnCount 1 Where spawnbot WaitBetweenSpawns 8 WaitBeforeStarting 15 TFBot { Template T_TFBot_Giant_Soldier_Extended_Buff_Banner } } WaveSpawn { Name "wave2_BKnight" Waitforalldead "wave2_AWaveGiant" TotalCurrency 200 TotalCount 14 MaxActive 14 SpawnCount 7 Where spawnbot WaitBetweenSpawns 0 WaitBeforeStarting 8 Squad { TFBot { Template T_TFBot_Giant_DemoMan_PrinceTavish } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } } } WaveSpawn { Name "wave2_CSoldiers" Waitforalldead "wave2_AWaveGiant" TotalCurrency 50 TotalCount 24 MaxActive 12 SpawnCount 4 Where spawnbot WaitBetweenSpawns 12 WaitBeforeStarting 5 Squad { TFBot { Class Soldier } TFBot { Class Soldier } } } WaveSpawn { Name "wave2_CPyro1" Waitforalldead "wave2_AWaveGiant" TotalCurrency 50 TotalCount 3 MaxActive 3 SpawnCount 1 Where spawnbot WaitBetweenSpawns 20 WaitBeforeStarting 10 TFBot { Template T_TFBot_Giant_Pyro } } WaveSpawn { Name "wave2_CPyro2" Waitforallspawned "wave2_CPyro1" TotalCurrency 50 TotalCount 2 MaxActive 2 SpawnCount 1 Where spawnbot WaitBetweenSpawns 10 WaitBeforeStarting 3 TFBot { Template T_TFBot_Giant_Pyro } } WaveSpawn { Name "wave2_CPyro2" Waitforalldead "wave2_CPyro1" TotalCurrency 50 TotalCount 12 MaxActive 12 SpawnCount 6 Where spawnbot WaitBetweenSpawns 10 WaitBeforeStarting 0 TFBot { Class Soldier } } } Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name "wave3_AGiants" TotalCurrency 50 TotalCount 9 MaxActive 9 SpawnCount 3 Where spawnbot WaitBetweenSpawns 0 WaitBeforeStarting 3 Squad { TFBot { Name "Giant Rocket Storm" Class Soldier ClassIcon soldier_rocketshotgun_lite Scale 1.5 Health 4000 Attributes MiniBoss Attributes HoldFireUntilFullReload Skill Expert MaxVisionRange 2100 WeaponRestrictions PrimaryOnly Tag bot_giant Item "TF_WEAPON_ROCKETLAUNCHER" ItemAttributes { ItemName "TF_WEAPON_ROCKETLAUNCHER" "fire rate bonus" 0.001 "projectile spread angle penalty" 3 "damage bonus" 1.15 "Reload time increased" 1.1 "clip size bonus" 1.5 "projectile speed decreased" 0.6 "blast radius decreased" 0.35 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.6 "airblast vulnerability multiplier" 0.6 "override footstep sound set" 3 // 5=Scout,3=Soldier,6=Pyro,4=Demoman,2=Heavy,7=Buster } } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } } } WaveSpawn { Name "wave3_AGiants" TotalCurrency 100 TotalCount 20 MaxActive 12 SpawnCount 4 Where spawnbot WaitBetweenSpawns 6 WaitBeforeStarting 5 TFBot { Class Soldiers Skill Hard } } WaveSpawn { Name "wave3_AGiants" TotalCurrency 50 TotalCount 10 MaxActive 10 SpawnCount 5 Where spawnbot WaitBetweenSpawns 20 WaitBeforeStarting 3 Squad { TFBot { Class Soldier Name "Giant Charged Soldier" ClassIcon soldier_crit Skill Normal Health 3800 Item "The Original" Attributes AlwaysCrit WeaponRestrictions PrimaryOnly Attributes MiniBoss ItemAttributes { ItemName "The Original" "faster reload rate" 0.2 "fire rate bonus" 2 "Projectile speed increased" 0.5 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 } } TFBot { Class Heavy } TFBot { Class Heavy } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } } } WaveSpawn { Name "wave3_BTank" Waitforalldead "wave3_AGiants" WaitBeforeStarting 0 TotalCount 1 TotalCurrency 200 Tank { Name "tank" Health 20000 Speed 75 StartingPathTrackNode "tank_path_a" OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name "wave3_BKnights" Waitforalldead "wave3_AGiants" TotalCurrency 200 TotalCount 24 MaxActive 12 SpawnCount 3 Where spawnbot WaitBetweenSpawns 0 WaitBeforeStarting 5 TFBot { Template T_TFBot_Demoman_Knight } } WaveSpawn { Name "wave3_BTank" Waitforalldead "wave3_AGiants" TotalCurrency 200 TotalCount 16 MaxActive 16 SpawnCount 4 Where spawnbot WaitBetweenSpawns 0 WaitBeforeStarting 15 Squad { TFBot { Template T_TFBot_Giant_Demo_Burst } TFBot { Class Heavy } TFBot { Class Heavy } TFBot { Class Heavy } } } WaveSpawn { Name "wave3_Cscouts" Waitforallspawned "wave3_BTank" TotalCurrency 300 TotalCount 16 MaxActive 16 SpawnCount 4 Where spawnbot WaitBetweenSpawns 0 WaitBeforeStarting 20 Squad { TFBot { Class Soldier Name "Giant Charged Burst Soldier" ClassIcon soldier_crit_burst_fire Health 3800 Skill Expert WeaponRestrictions PrimaryOnly Attributes MiniBoss Attributes HoldFireUntilFullReload Item "The Original" Attributes AlwaysCrit ItemAttributes { Itemname "The Original" "Projectile speed increased" 0.5 "faster reload rate" 0.6 "fire rate bonus" 0.1 "clip size upgrade atomic" 5.0 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.4 "airblast vulnerability multiplier" 0.4 "override footstep sound set" 3 } } TFBot { Class Pyro Skill Hard } TFBot { Class Pyro Skill Hard } TFBot { Class Pyro Skill Hard } } } WaveSpawn { Name "wave3_Cscouts" Waitforalldead "wave3_BTank" TotalCurrency 100 TotalCount 24 MaxActive 12 SpawnCount 4 Where spawnbot WaitBetweenSpawns 0 WaitBeforeStarting 5 TFBot { Class Scout Name "Bonk! Scout" Item "Bonk! Atomic Punch" Item "Bonk Helm" Item "The Atomizer" ClassIcon scout_bonk StripItemSlot 3 //Remove bat } } } Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name wave4_Ascout TotalCurrency 200 TotalCount 6 MaxActive 4 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 8 Where spawnbot TFBot { Template T_TFBot_Giant_Scout_FAN } } WaveSpawn { Name wave4_Ascout TotalCurrency 100 TotalCount 30 MaxActive 10 SpawnCount 10 WaitBeforeStarting 3 WaitBetweenSpawns 5 Where spawnbot TFBot { Template T_TFBot_Scout_Melee Attributes AlwaysCrit Attributes AlwaysFireWeapon ClassIcon scout_bat_nys Health 150 } } WaveSpawn { Name wave4_Ascout TotalCurrency 100 TotalCount 12 MaxActive 8 SpawnCount 4 WaitBeforeStarting 5 WaitBetweenSpawns 10 Where spawnbot TFBot { Template T_TFBot_Heavy_IronFist_Airblast } } WaveSpawn { Name wave4_BHeavy Waitforallspawned wave4_Ascout TotalCurrency 400 TotalCount 6 MaxActive 6 SpawnCount 2 WaitBeforeStarting 5 WaitBetweenSpawns 20 Where spawnbot Squad { TFBot { Template T_TFBot_Giant_Heavyweapons_Deflector } TFBot { Class Medic Name "Giant Quick Uber Medic" ClassIcon medic_uber_giant Item "Medic Mask" Skill Expert Health 4500 Attributes SpawnWithFullCharge WeaponRestrictions SecondaryOnly Attributes MiniBoss ItemAttributes { ItemName "TF_WEAPON_SYRINGEGUN_MEDIC" "damage penalty" 0.1 } ItemAttributes { ItemName "TF_WEAPON_MEDIGUN" "ubercharge rate bonus" 1 "uber duration bonus" -2 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.6 "airblast vulnerability multiplier" 0.6 "heal rate bonus" 200 // only works on mediguns that have this attribute ie quickfix "bot medic uber health threshold" 100 } } } } WaveSpawn { Name wave4_BPyro Waitforallspawned wave4_Ascout TotalCurrency 100 TotalCount 30 MaxActive 30 SpawnCount 6 WaitBeforeStarting 15 WaitBetweenSpawns 20 Where spawnbot TFBot { Class Pyro ClassIcon pyro_dragon_fury_swordstone Skill Hard WeaponRestrictions PrimaryOnly Item "The Dragon's Fury" } } WaveSpawn { Name wave4_CDemo Waitforalldead wave4_BHeavy TotalCurrency 200 TotalCount 30 MaxActive 30 SpawnCount 3 WaitBeforeStarting 5 WaitBetweenSpawns 5 Where spawnbot TFBot { Class Sniper ClassIcon sniper_smg Skill Hard WeaponRestrictions SecondaryOnly ItemAttributes { ItemName "TF_WEAPON_SMG" "clip size penalty" 0.5 "faster reload rate" 2 "projectile spread angle penalty" 1 } } } WaveSpawn { Name wave4_CDemo Waitforalldead wave4_BHeavy TotalCurrency 200 TotalCount 15 MaxActive 15 SpawnCount 3 WaitBeforeStarting 5 WaitBetweenSpawns 15 Where spawnbot Squad { TFBot { Class Demoman Name "Giant Rapid Burst Demoman" ClassIcon demo_burst_giant Item "Glengarry Bonnet" Skill Expert Health 4000 WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload Attributes MiniBoss ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "faster reload rate" 0.5 "fire rate bonus" 0.01 } CharacterAttributes { "move speed bonus" 0.5 "damage force reduction" 0.5 "airblast vulnerability multiplier" 0.5 "override footstep sound set" 4 } } TFBot { ClassIcon medic_kritz Name "Quick-Kritz Medic" Class Medic Skill Expert Attributes SpawnWithFullCharge Tag bot_squad_member ItemAttributes { ItemName "The Kritzkrieg" "uber duration bonus" -3 } CharacterAttributes { "bot medic uber health threshold" 200 } Item "The Kritzkrieg" Item "Vintage Tyrolean" } TFBot { ClassIcon medic_kritz Name "Quick-Kritz Medic" Class Medic Skill Expert Attributes SpawnWithFullCharge Tag bot_squad_member ItemAttributes { ItemName "The Kritzkrieg" "uber duration bonus" -3 } CharacterAttributes { "bot medic uber health threshold" 200 } Item "The Kritzkrieg" Item "Vintage Tyrolean" } } } } Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name wave5_Asoldier TotalCurrency 200 TotalCount 16 MaxActive 16 SpawnCount 4 WaitBeforeStarting 0 WaitBetweenSpawns 10 Where spawnbot Squad { TFBot { Template T_TFBot_Giant_Soldier_SlowBarrage } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } TFBot { Template T_TFBot_Medic } } } WaveSpawn { Name wave5_Asoldier TotalCurrency 100 TotalCount 24 MaxActive 24 SpawnCount 4 WaitBeforeStarting 0 WaitBetweenSpawns 5 Where spawnbot TFBot { Class Demoman Skill Expert Classicon demo_sticky_daan // Custom icon WeaponRestrictions SecondaryOnly ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "is_passive_weapon" 1 "override projectile type" 27 // Fires nothing } ItemAttributes { ItemName "TF_WEAPON_PIPEBOMBLAUNCHER" "stickybomb charge rate" 0.001 //Demo-bot will fire Stickybomb immediately "max pipebombs decreased" -7 // 1 Stickybomb on ground allowed, will explode when another is fired "projectile range increased" 0.35 // Prevents overshooting target } } } WaveSpawn { Name wave5_Asoldier WaitBeforeStarting 0 TotalCount 1 TotalCurrency 200 Tank { Name "tank" Health 25000 Speed 75 StartingPathTrackNode "tank_path_a" OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name wave5_BBullet Waitforalldead "wave5_Asoldier" TotalCurrency 200 TotalCount 12 MaxActive 12 SpawnCount 4 WaitBeforeStarting 0 WaitBetweenSpawns 15 Where spawnbot Squad { TFBot { Template T_TFBot_Giant_Heavyweapons_Deflector } TFBot { Template T_TFBot_Medic_BigHeal } TFBot { Template T_TFBot_Medic_BigHeal } TFBot { Template T_TFBot_Medic_BigHeal } } } WaveSpawn { Name wave5_BBullet Waitforalldead "wave5_Asoldier" TotalCurrency 200 TotalCount 7 MaxActive 7 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 8 Where spawnbot TFBot { Template T_TFBot_Giant_Scout_Fast } } WaveSpawn { Name wave5_BBullet Waitforalldead "wave5_Asoldier" TotalCurrency 0 TotalCount 10 MaxActive 10 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 8 Where spawnbot TFBot { Class Demoman Name "Sentry Buster" Skill Expert Health 500 Item "The Ullapool Caber" WeaponRestrictions MeleeOnly ClassIcon sentry_buster Attributes DisableDodge Action SuicideBomber UseBusterModel 1 ClassIcon sentry_buster CharacterAttributes { "move speed bonus" 1.5 "damage force reduction" 0.5 "airblast vulnerability multiplier" 0.5 "override footstep sound set" 7 "cannot be backstabbed" 1 } } } WaveSpawn { Name wave5_CTank Waitforallspawned "wave5_BBullet" WaitBeforeStarting 0 TotalCount 1 TotalCurrency 200 Tank { Name "tank" Health 25000 Speed 75 StartingPathTrackNode "tank_path_a" OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name wave5_CTank Waitforallspawned "wave5_BBullet" TotalCurrency 100 TotalCount 12 MaxActive 12 SpawnCount 6 WaitBeforeStarting 3 WaitBetweenSpawns 6 Where spawnbot TFBot { Class Soldier Skill Expert Item "The Direct Hit" } } WaveSpawn { Name wave5_CTank Waitforallspawned "wave5_BBullet" TotalCurrency 100 TotalCount 12 MaxActive 12 SpawnCount 6 WaitBeforeStarting 0 WaitBetweenSpawns 6 Where spawnbot TFBot { Template T_TFBot_Soldier_Extended_Concheror Skill Expert } } } Wave { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name wave6_boss TotalCurrency 600 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 20 WaitBetweenSpawns 0 Where spawnbot TFBot { Class Soldier Skill Expert WeaponRestrictions PrimaryOnly Name "Doom Machine Mk2" Item "Armored Authority" Item "The Cow Mangler 5000" ClassIcon soldier_bison Health 45000 Attributes UseBossHealthBar Attributes MiniBoss Attributes HoldFireUntilFullReload Attributes AlwaysCrit ItemAttributes { ItemName "The Cow Mangler 5000" "Projectile speed increased" 3 "fire rate penalty" 2 "slow enemy on hit major" 3 } ItemAttributes { ItemName "TF_WEAPON_SHOTGUN_SOLDIER" "auto fires full clip" 1 "auto fires when full" 1 "dmg bonus vs buildings" 2 "override projectile type" 13 "energy weapon penetration" 1 "clip size upgrade atomic" 14 "fire rate bonus" 0.1 "Reload time decreased" 0.5 "slow enemy on hit major" 2 "Projectile speed increased" 1 "damage bonus" 8 "Set DamageType Ignite" 1 "mod projectile heat seek power" 30 "is_passive_weapon" 1 } CharacterAttributes { "health regen" 100 "move speed bonus" 0.25 "damage bonus" 1.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.1 } } } WaveSpawn { Name wave6_giant TotalCurrency 200 TotalCount 4 MaxActive 2 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 20 Where spawnbot TFBot { Template T_TFBot_Giant_Demoman ClassIcon demo_spammer ItemAttributes { ItemName "TF_WEAPON_GRENADELAUNCHER" "faster reload rate" 0 } } } WaveSpawn { Name wave6_giant TotalCurrency 200 TotalCount 4 MaxActive 2 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 20 Where spawnbot TFBot { Template T_TFBot_Giant_Soldier_Spammer } } WaveSpawn { Name wave6_spawn TotalCurrency 100 TotalCount 20 MaxActive 8 SpawnCount 2 WaitBeforeStarting 10 WaitBetweenSpawns 5 Where spawnbot TFBot { Class Scout Skill Hard Attributes AlwaysCrit } } WaveSpawn { Name wave6_giant2 WaitForAllDead "wave6_giant" TotalCurrency 200 TotalCount 2 MaxActive 2 SpawnCount 1 WaitBeforeStarting 1 WaitBetweenSpawns 20 Where spawnbot TFBot { Template T_TFBot_Giant_Heavyweapons } } WaveSpawn { Name wave6_giant2 WaitForAllDead "wave6_giant" TotalCurrency 200 TotalCount 2 MaxActive 2 SpawnCount 1 WaitBeforeStarting 1 WaitBetweenSpawns 20 Where spawnbot TFBot { Template T_TFBot_Giant_Heavyweapons } } WaveSpawn { Name wave6_finaletank WaitForAllSpawned "wave6_giant2" TotalCurrency 200 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaveSpawn { Name "wave6_tank" WaitBeforeStarting 0 TotalCount 1 TotalCurrency 200 Tank { Name "tank" Health 50000 Speed 75 StartingPathTrackNode "tank_path_a" OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } } WaveSpawn { Name wave6_support WaitForAllDead "wave6_giant" Where spawnbot TotalCount 3 MaxActive 3 SpawnCount 3 TotalCurrency 0 support 1 WaitBeforeStarting 0 WaitBetweenSpawns 0 Randomchoice { TFBot { Class Heavy Skill Hard } TFBot { Class Heavy Skill Hard } TFBot { Class Demoman Name "Iron Burst Fire Demo" ClassIcon demo_clusterbomb Item "The Iron Bomber" Item "Scotch Bonnet" Skill Hard WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload ItemAttributes { ItemName "The Iron Bomber" "damage bonus" 0.7 "faster reload rate" 1.75 "fire rate bonus" 0.05 "clip size penalty" 0.75 "projectile spread angle penalty" 3 "auto fires full clip" 1 "auto fires when full" 1 //"Projectile speed increased" 1.1 } } TFBot { Class Demoman Name "Iron Burst Fire Demo" ClassIcon demo_clusterbomb Item "The Iron Bomber" Item "Scotch Bonnet" Skill Hard WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload ItemAttributes { ItemName "The Iron Bomber" "damage bonus" 0.7 "faster reload rate" 1.75 "fire rate bonus" 0.05 "clip size penalty" 0.75 "projectile spread angle penalty" 3 "auto fires full clip" 1 "auto fires when full" 1 //"Projectile speed increased" 1.1 } } TFBot { Class Pyro Skill Expert ItemAttributes { ItemName "TF_WEAPON_FLAMETHROWER" "airblast disabled" 1 } } } } WaveSpawn { Name wave6_support WaitForAllDead "wave6_giant" Where spawnbot TotalCount 3 MaxActive 3 SpawnCount 3 TotalCurrency 0 support 1 WaitBeforeStarting 20 WaitBetweenSpawns 0 Randomchoice { TFBot { Class Heavy Skill Hard } TFBot { Class Heavy Skill Hard } TFBot { Class Demoman Name "Iron Burst Fire Demo" ClassIcon demo_clusterbomb Item "The Iron Bomber" Item "Scotch Bonnet" Skill Hard WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload ItemAttributes { ItemName "The Iron Bomber" "damage bonus" 0.7 "faster reload rate" 1.75 "fire rate bonus" 0.05 "clip size penalty" 0.75 "projectile spread angle penalty" 3 "auto fires full clip" 1 "auto fires when full" 1 //"Projectile speed increased" 1.1 } } TFBot { Class Demoman Name "Iron Burst Fire Demo" ClassIcon demo_clusterbomb Item "The Iron Bomber" Item "Scotch Bonnet" Skill Hard WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload ItemAttributes { ItemName "The Iron Bomber" "damage bonus" 0.7 "faster reload rate" 1.75 "fire rate bonus" 0.05 "clip size penalty" 0.75 "projectile spread angle penalty" 3 "auto fires full clip" 1 "auto fires when full" 1 //"Projectile speed increased" 1.1 } } TFBot { Class Pyro Skill Expert ItemAttributes { ItemName "TF_WEAPON_FLAMETHROWER" "airblast disabled" 1 } } } } WaveSpawn { Name wave6_support WaitForAllDead "wave6_giant" Where spawnbot TotalCount 3 MaxActive 3 SpawnCount 3 TotalCurrency 0 support 1 WaitBeforeStarting 40 WaitBetweenSpawns 0 Randomchoice { TFBot { Class Heavy Skill Hard } TFBot { Class Heavy Skill Hard } TFBot { Class Demoman Name "Iron Burst Fire Demo" ClassIcon demo_clusterbomb Item "The Iron Bomber" Item "Scotch Bonnet" Skill Hard WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload ItemAttributes { ItemName "The Iron Bomber" "damage bonus" 0.7 "faster reload rate" 1.75 "fire rate bonus" 0.05 "clip size penalty" 0.75 "projectile spread angle penalty" 3 "auto fires full clip" 1 "auto fires when full" 1 //"Projectile speed increased" 1.1 } } TFBot { Class Demoman Name "Iron Burst Fire Demo" ClassIcon demo_clusterbomb Item "The Iron Bomber" Item "Scotch Bonnet" Skill Hard WeaponRestrictions PrimaryOnly Attributes HoldFireUntilFullReload ItemAttributes { ItemName "The Iron Bomber" "damage bonus" 0.7 "faster reload rate" 1.75 "fire rate bonus" 0.05 "clip size penalty" 0.75 "projectile spread angle penalty" 3 "auto fires full clip" 1 "auto fires when full" 1 //"Projectile speed increased" 1.1 } } TFBot { Class Pyro Skill Expert ItemAttributes { ItemName "TF_WEAPON_FLAMETHROWER" "airblast disabled" 1 } } } } } }