//mvm_spacepost_rc1 #base robot_giant.pop #base robot_standard.pop WaveSchedule { StartingCurrency 900 RespawnWaveTime 6 CanBotsAttackWhileInSpawnRoom no EventPopfile Halloween ForceHoliday 2 ZombiesNoWave666 1 TextPrintTime 0 ExtraSpawnPoint { Name "spawnbot_intele" TeamNum 3 X "-353" Y "1754" Z "-430" } FlagResetTime //Overrides default bomb reset time { Name "intel" //Name of flag entity on the map ResetTime 45 } PointTemplates { EngiNodes // Spawns custom engineer spots for the map. { NoFixup 1 // near flank spawn. bot_hint_engineer_nest { "targetname" "engineer_hint1" "origin" "-889 44 -423" "angles" "0 -50 0" } bot_hint_sentrygun { "targetname" "engineer_hint1" "origin" "-725 -205 -415" "angles" "0 -50 0" } bot_hint_teleporter_exit { "targetname" "engineer_hint1" "origin" "-889 44 -423" "angles" "0 -90 0" } // near the gas tanks at front bot_hint_engineer_nest { "targetname" "engineer_hint2" "origin" "459 -697 -479" "angles" "0 65 0" } bot_hint_sentrygun { "targetname" "engineer_hint2" "origin" "580 -401 -481" "angles" "0 65 0" } bot_hint_teleporter_exit { "targetname" "engineer_hint2" "origin" "459 -697 -479" "angles" "0 90 0" } // top path, some kinda observation room. bot_hint_engineer_nest { "targetname" "engineer_hint4" "origin" "1864 -1029 -223" "angles" "0 -40 0" } bot_hint_sentrygun { "targetname" "engineer_hint4" "origin" "1999 -1111 -223" "angles" "0 -40 0" } bot_hint_teleporter_exit { "targetname" "engineer_hint4" "origin" "1864 -1029 -223" "angles" "0 0 0" } // bottom path, below said room. bot_hint_engineer_nest { "targetname" "engineer_hint3" "origin" "1828 -1171 -511" "angles" "0 45 0" } bot_hint_sentrygun { "targetname" "engineer_hint3" "origin" "1975 -1022 -511" "angles" "0 45 0" } bot_hint_teleporter_exit { "targetname" "engineer_hint3" "origin" "1828 -1171 -511" "angles" "0 0 0" } // top path, the lil computer room seen next to hatch. bot_hint_engineer_nest { "targetname" "engineer_hint6" "origin" "4266 -277 -127" "angles" "0 180 0" } bot_hint_sentrygun { "targetname" "engineer_hint6" "origin" "4041 -277 -127" "angles" "0 180 0" } bot_hint_teleporter_exit { "targetname" "engineer_hint6" "origin" "4266 -277 -127" "angles" "0 0 0" } // bottom path, the ramp seen next to hatch. bot_hint_engineer_nest { "targetname" "engineer_hint5" "origin" "3841 -37 -447" "angles" "0 33 0" } bot_hint_sentrygun { "targetname" "engineer_hint5" "origin" "4004 49 -447" "angles" "0 33 0" } bot_hint_teleporter_exit { "targetname" "engineer_hint5" "origin" "3841 -37 -447" "angles" "0 0 0" } // make engineer bots somewhat obey the paths logic_auto { "origin" "0 0 0" "targetname" "engineer_hint_relay_extension" // Top path. "OnMapSpawn" "bombpath_upper_left_relay,AddOutput,OnTrigger engineer_hint5:Disable:0:-1,0,-1" "OnMapSpawn" "bombpath_upper_left_relay,AddOutput,OnTrigger engineer_hint3:Disable:0:-1,0,-1" "OnMapSpawn" "bombpath_upper_right_relay,AddOutput,OnTrigger engineer_hint5:Disable:0:-1,0,-1" "OnMapSpawn" "bombpath_upper_right_relay,AddOutput,OnTrigger engineer_hint3:Disable:0:-1,0,-1" // Bottom path. "OnMapSpawn" "bombpath_lower_left_relay,AddOutput,OnTrigger engineer_hint4:Disable:0:-1,0,-1" "OnMapSpawn" "bombpath_lower_left_relay,AddOutput,OnTrigger engineer_hint6:Disable:0:-1,0,-1" "OnMapSpawn" "bombpath_lower_right_relay,AddOutput,OnTrigger engineer_hint4:Disable:0:-1,0,-1" "OnMapSpawn" "bombpath_lower_right_relay,AddOutput,OnTrigger engineer_hint6:Disable:0:-1,0,-1" // Re-enable hints. "OnMapSpawn" "wave_finished_relay,AddOutput,OnTrigger engineer_hint*:Enable:0:-1,0,-1" } } IntelTele { NoFixup 1 trigger_teleport { "targetname" "inteleporter" "target" "intel" "spawnflags" "1" "mins" "-150 -150 -150" "maxs" "150 150 150" "origin" "-353 1754 -430" } } PhaseActivator // go next phase big guy. { NoFixup 1 KeepAlive 1 logic_relay { "targetname" "activate_split" "OnTrigger" "bye_bye,Enable,,0,-1" "OnTrigger" "open_the_portal,Start,,0,-1" "OnTrigger" "bye_bye,Disable,,0.5,-1" "OnTrigger" "open_the_portal,Stop,,3,-1" "OnTrigger" "open_the_portal,Kill,,4,-1" "OnTrigger" "bye_bye,Kill,,4.5,-1" } info_particle_system // cool portal { "targetname" "open_the_portal" "effect_name" "eyeboss_tp_vortex" "origin" "0 0 60" } trigger_hurt { "targetname" "bye_bye" "filtername" "filter_astrum" "damage" "99999" "damagetype" "1048576" "spawnflags" "1" "nodmgforce" "1" "origin" "0 0 0" "mins" "-512 -512 -512" "maxs" "512 512 512" "StartDisabled" 1 } } PerishAtOnce // kills all bots active on the map, used for the boss clones. { NoFixup 1 logic_relay { "targetname" "Clone_Dead" "OnTrigger" "fuck_this_moon_lmao,Enable,,0,-1" "OnTrigger" "fuck_this_moon_lmao,Disable,,3,-1" } trigger_hurt { "targetname" "fuck_this_moon_lmao" "filtername" "filter_bluteam" "damage" "99999" "damagetype" "1048576" "spawnflags" "1" "nodmgforce" "1" "origin" "0 0 0" "mins" "-9999 -9999 -9999" "maxs" "9999 9999 9999" "StartDisabled" 1 } filter_tf_bot_has_tag { "Negated" "0" "require_all_tags" "1" "tags" "tag_astrum" "targetname" "filter_astrum" } } SuperCoolMusic { OnSpawnOutput { Target boss_music Action PlaySound Delay 3 } ambient_generic { "targetname" "boss_music" "message" "#AstrumDeus.mp3" "health" "10" "radius" "20" "spawnflags" "17" } logic_relay { "targetname" "boss_music_disabler" "OnTrigger" "boss_music,StopSound,,0,-1" "OnTrigger" "boss_music,Kill,,1,-1" } } spooky_madness { color_correction { "fadeInDuration" "0.0" "fadeOutDuration" "0.0" "maxfalloff" "-1" "minfalloff" "-1" "maxweight" "1.0" "filename" "download/lunar_madness_cc.raw" } logic_auto // makes some ufos appear later { "origin" "0 0 0" "OnMapSpawn" "saucer3_skybox_train,SetSpeed,1,85,-1" "OnMapSpawn" "saucer4_skybox_train,SetSpeed,1,125,-1" } // various ufos prop_dynamic // big one in skybox { "model" "models/props_teaser/saucer.mdl" "name" "saucer1_skybox" "disableshadows" "1" "origin" "9816 -9671 -2735" "defaultanim" "idle" "angles" "0 0 0" "modelscale" "3" } prop_dynamic // medium one, flies through the skybox occasionally. { "model" "models/props_teaser/saucer.mdl" "name" "saucer2_skybox" "disableshadows" "1" "origin" "6906 -9881 -2771" "defaultanim" "idle" "angles" "0 0 0" "modelscale" "1.5" "parentname" "saucer2_skybox_train" } func_tracktrain { "targetname" "saucer2_skybox_train" "origin" "6906 -9881 -2771" "mins" "-1 -1 -1" "maxs" "1 1 1" "disableshadows" "1" "rendermode" "10" "velocitytype" "0" "speed" "250" "spawnflags" "536" "target" "saucer2_path1_1" } path_track { "targetname" "saucer2_path1_1" "target" "saucer2_path1_2" "origin" "6906 -9881 -2771" } path_track { "targetname" "saucer2_path1_2" "target" "saucer2_path1_3" "origin" "6906 -9881 -2366" } path_track { "targetname" "saucer2_path1_3" "target" "saucer2_path1_4" "origin" "12500 -6586 -2136" } path_track { "targetname" "saucer2_path1_4" "target" "saucer2_path1_5" "origin" "12500 -6586 -3100" } path_track { "targetname" "saucer2_path1_5" "target" "saucer2_path1_1" "origin" "6906 -9881 -3100" } prop_dynamic // larger one, flying through the skybox too. { "model" "models/props_teaser/saucer.mdl" "name" "saucer3_skybox" "disableshadows" "1" "origin" "8711 -7109 -3017" "defaultanim" "idle" "angles" "0 0 0" "modelscale" "2" "parentname" "saucer3_skybox_train" } func_tracktrain { "targetname" "saucer3_skybox_train" "origin" "8711 -7109 -3017" "mins" "-1 -1 -1" "maxs" "1 1 1" "disableshadows" "1" "rendermode" "10" "velocitytype" "0" "startspeed" "190" "speed" "0" "spawnflags" "536" "target" "saucer3_path1_1" } path_track { "targetname" "saucer3_path1_1" "target" "saucer3_path1_2" "origin" "8711 -7109 -3017" } path_track { "targetname" "saucer3_path1_2" "target" "saucer3_path1_3" "origin" "8711 -7109 -2210" } path_track { "targetname" "saucer3_path1_3" "target" "saucer3_path1_4" "origin" "8906 -8271 -2170" } path_track { "targetname" "saucer3_path1_4" "target" "saucer3_path1_5" "origin" "9881 -9266 -2300" } path_track { "targetname" "saucer3_path1_5" "target" "saucer3_path1_6" "origin" "8312 -10783 -2210" } path_track { "targetname" "saucer3_path1_6" "target" "saucer3_path1_7" "origin" "8003 -11392 -2683" } path_track { "targetname" "saucer3_path1_7" "target" "saucer3_path1_1" "origin" "8003 -11392 -3017" } prop_dynamic // big one, static { "model" "models/props_teaser/saucer.mdl" "name" "saucer1_skybox" "disableshadows" "1" "origin" "8511 -8363 -2529" "defaultanim" "idle" "angles" "0 0 0" "modelscale" "3" } prop_dynamic // big one, stuck in robot spawn. { "model" "models/props_teaser/saucer.mdl" "name" "saucer1_skybox" "origin" "350 1740 -445" "angles" "0 -42 40" "modelscale" "3" "solid" "0" } prop_dynamic // medium one, another flier { "model" "models/props_teaser/saucer.mdl" "name" "saucer4_skybox" "disableshadows" "1" "origin" "11039 -9358 -2603" "defaultanim" "idle" "angles" "0 0 0" "modelscale" "1.5" "parentname" "saucer4_skybox_train" } func_tracktrain { "targetname" "saucer4_skybox_train" "origin" "11039 -9358 -2603" "mins" "-1 -1 -1" "maxs" "1 1 1" "disableshadows" "1" "rendermode" "10" "velocitytype" "0" "startspeed" "300" "speed" "0" "spawnflags" "536" "target" "saucer4_path1_1" } path_track { "targetname" "saucer4_path1_1" "target" "saucer4_path1_2" "origin" "11039 -9358 -2603" } path_track { "targetname" "saucer4_path1_2" "target" "saucer4_path1_3" "origin" "11039 -9358 -2103" } path_track { "targetname" "saucer4_path1_3" "target" "saucer4_path1_4" "origin" "9288 -9231 -2103" } path_track { "targetname" "saucer4_path1_4" "target" "saucer4_path1_5" "origin" "9089 -8788 -2103" } path_track { "targetname" "saucer4_path1_5" "target" "saucer4_path1_6" "origin" "8434 -9214 -2678" } path_track { "targetname" "saucer4_path1_6" "target" "saucer4_path1_7" "origin" "8558 -10946 -2365" } path_track { "targetname" "saucer4_path1_7" "target" "saucer4_path1_8" "origin" "8558 -10946 -3000" } path_track { "targetname" "saucer4_path1_8" "target" "saucer4_path1_1" "origin" "11039 -9358 -3000" } // posters n other stuff prop_dynamic { "model" "models/props_teaser/update_invasion_poster001.mdl" "disableshadows" "1" "origin" "3157 2399 82" "angles" "0 -90 0" "fademaxdist" "1900" "fademindist" "1800" } prop_dynamic { "model" "models/props_teaser/update_invasion_poster002.mdl" "disableshadows" "1" "origin" "5025 2080 82" "angles" "0 90 0" "fademaxdist" "1900" "fademindist" "1800" } prop_dynamic { "model" "models/props_2fort/cow001_reference.mdl" "disableshadows" "1" "origin" "2676 1503 -111" "angles" "0 74 0" "fademaxdist" "1900" "fademindist" "1800" } prop_dynamic { "model" "models/props_teaser/update_invasion_poster002.mdl" "disableshadows" "1" "origin" "-111 -32 -338" "angles" "0 0 0" "fademaxdist" "1700" "fademindist" "1600" } prop_dynamic { "model" "models/props_teaser/update_invasion_poster001.mdl" "disableshadows" "1" "origin" "3103 -907 -360" "angles" "0 180 0" "fademaxdist" "2000" "fademindist" "1900" } prop_dynamic { "model" "models/props_2fort/cow001_reference.mdl" "disableshadows" "1" "origin" "5026 1659 0" "angles" "0 -190 0" "fademaxdist" "1900" "fademindist" "1800" } prop_dynamic { "model" "models/props_2fort/cow001_reference.mdl" "disableshadows" "1" "origin" "5809 324 -127" "angles" "0 -90 0" "fademaxdist" "1900" "fademindist" "1800" } prop_dynamic { "model" "models/props_2fort/cow001_reference.mdl" "disableshadows" "1" "origin" "5809 94 -127" "angles" "0 90 0" "fademaxdist" "1900" "fademindist" "1800" } prop_dynamic { "model" "models/props_teaser/update_invasion_poster001.mdl" "disableshadows" "1" "origin" "3442 -767 -29" "angles" "0 90 0" "fademaxdist" "2300" "fademindist" "2200" } prop_dynamic { "model" "models/props_teaser/update_invasion_poster002.mdl" "disableshadows" "1" "origin" "576 -1152 -257" "angles" "0 -90 0" "fademaxdist" "1200" "fademindist" "1100" } prop_dynamic { "model" "models/props_teaser/update_invasion_poster002.mdl" "disableshadows" "1" "origin" "1696 -433 -131" "angles" "0 0 0" "fademaxdist" "1700" "fademindist" "1600" } prop_dynamic { "model" "models/props_teaser/update_invasion_poster001.mdl" "disableshadows" "1" "origin" "2726 384 17" "angles" "0 90 0" "fademaxdist" "1700" "fademindist" "1600" } prop_dynamic { "model" "models/props_2fort/cow001_reference.mdl" "disableshadows" "1" "origin" "2462 -2435 -447" "angles" "0 90 0" "fademaxdist" "1900" "fademindist" "1800" } prop_dynamic { "model" "models/props_2fort/cow001_reference.mdl" "disableshadows" "1" "origin" "2947 -1686 -447" "angles" "0 46 0" "fademaxdist" "1400" "fademindist" "1300" } } } PrecacheGeneric "lunar_madness_cc.raw" //color correction SpawnTemplate "IntelTele" SpawnTemplate "spooky_madness" SpawnTemplate "EngiNodes" Templates { T_TFBot_Boss_Astrum_Deus_Phase2 { Class Demoman ClassIcon demo_scatter_giant Skill Expert Health "20000" Name "Astrum Deus" Item "Captain Space Mann" Item "pyroland_grenadelauncher_rainbow" Attributes UseBossHealthBar Attributes MiniBoss Attributes HoldFireUntilFullReload ItemAttributes { ItemName "pyroland_grenadelauncher_rainbow" "set_item_texture_wear" 0.2 "killstreak tier" 2 "killstreak idleeffect" 1 "damage bonus" 1.5 "fire rate bonus" -2 "faster reload rate" 0.35 "clip size upgrade atomic" 6 "projectile spread angle penalty" 4 "ragdolls plasma effect" 1 "no self blast dmg" 1 "energy weapon no deflect" 1 } ItemAttributes { ItemName "Captain Space Mann" "attach particle effect" 99 } CharacterAttributes { "boots falling stomp" 1 "increased jump height" 1.5 "cancel falling damage" 1 "move speed penalty" 0.3 "damage force reduction" 0.1 "airblast vulnerability multiplier" 0.01 "override footstep sound set" 4 "airblast vertical vulnerability multiplier" 0.1 "rage giving scale" 0.25 } } } Mission { Objective DestroySentries BeginAtWave 1 RunForThisManyWaves 6 CooldownTime 30 DesiredCount 1 Where spawnbot_mission_sentrybuster TFBot { Template T_TFBot_SentryBuster } } Mission { Objective Sniper BeginAtWave 1 RunForThisManyWaves 2 CooldownTime 30 InitialCooldown 10 DesiredCount 2 Where spawnbot_mission_sniper TFBot { Template T_TFBot_Sniper } } Mission { Objective Sniper BeginAtWave 4 RunForThisManyWaves 1 CooldownTime 30 InitialCooldown 10 DesiredCount 2 Where spawnbot_mission_sniper TFBot { Template T_TFBot_Sniper } } Mission { Objective Sniper BeginAtWave 6 RunForThisManyWaves 1 CooldownTime 30 InitialCooldown 10 DesiredCount 2 Where spawnbot_mission_sniper TFBot { Template T_TFBot_Sniper } } Mission { Objective Spy BeginAtWave 3 RunForThisManyWaves 1 CooldownTime 30 InitialCooldown 10 DesiredCount 2 Where spawnbot_mission_spy TFBot { Class Spy } } Mission { Objective Spy BeginAtWave 5 RunForThisManyWaves 2 CooldownTime 30 InitialCooldown 10 DesiredCount 2 Where spawnbot_mission_spy TFBot { Class Spy } } Wave //700 credits 800 bonus { InitWaveOutput { Target boss_music Action Trigger } StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name wave1a TotalCurrency 100 TotalCount 35 MaxActive 7 SpawnCount 7 WaitBeforeStarting 1 WaitBetweenSpawns 3 Where spawnbot TFBot { Template T_TFBot_Sniper_Huntsman } } WaveSpawn { Name wave1a WaitForAllSpawned wave1a-1 TotalCurrency 100 TotalCount 20 MaxActive 5 SpawnCount 5 WaitBeforeStarting 2 WaitBetweenSpawns 1 Where spawnbot_upper TFBot { Template T_TFBot_Scout_Bonk ClassIcon scout_bonk_nys Name "Bonk Scout" } } WaveSpawn { Name wave1a WaitForAllSpawned wave1a-1 TotalCurrency 100 TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 5 WaitBetweenSpawns 15 Where spawnbot TFBot { Template T_TFBot_Giant_Soldier_Spammer } } WaveSpawn { Name wave1b WaitForAllSpawned wave1a TotalCurrency 50 TotalCount 18 MaxActive 6 SpawnCount 1 WaitBeforeStarting 1 WaitBetweenSpawns 2.25 Where spawnbot_upper Where spawnbot TFBot { Template T_TFBot_Heavyweapons_Fist } } WaveSpawn { Name wave1b WaitForAllSpawned wave1a TotalCurrency 50 TotalCount 27 MaxActive 9 SpawnCount 1 WaitBeforeStarting 3 WaitBetweenSpawns 2.25 Where spawnbot_upper Where spawnbot TFBot { Class Pyro Attributes AlwaysFireWeapon } } WaveSpawn { Name wave1c WaitForAllSpawned wave1b TotalCurrency 200 TotalCount 10 MaxActive 10 SpawnCount 5 WaitBeforeStarting 7 WaitBetweenSpawns 17 Where spawnbot Squad { TFBot { Template T_TFBot_Giant_DemoMan_PrinceTavish } TFBot { Template T_TFBot_Medic_BigHeal } TFBot { Template T_TFBot_Medic_BigHeal } TFBot { Template T_TFBot_Soldier_Extended_Battalion } TFBot { Template T_TFBot_Soldier_Extended_Concheror } } } WaveSpawn { Name wave1c WaitForAllDead wave1b Support 1 TotalCurrency 100 TotalCount 27 MaxActive 9 SpawnCount 3 WaitBeforeStarting 3 WaitBetweenSpawns 2.25 Where spawnbot TFBot { Class Soldier } } } Wave //900 credits 1000 bonus { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name wave2a TotalCurrency 200 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0 Tank { Health 22500 Name "tankboss" Speed 75 StartingPathTrackNode "tank_path_a_1" OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name wave2a-1-1 TotalCurrency 100 TotalCount 3 MaxActive 1 SpawnCount 1 WaitBeforeStarting 3 WaitBetweenSpawns 0 Where spawnbot_upper TFBot { Template T_TFBot_Giant_Heavyweapons_Shotgun ClassIcon heavy_shotgun_giant } } WaveSpawn { Name wave2a-1 TotalCurrency 100 TotalCount 40 MaxActive 10 SpawnCount 10 WaitBeforeStarting 3 WaitBetweenSpawns 2 Where spawnbot TFBot { Class Soldier } } WaveSpawn { Name wave2b WaitForAllDead wave2a-1-1 TotalCurrency 100 TotalCount 5 MaxActive 1 SpawnCount 1 WaitBeforeStarting 7 WaitBetweenSpawns 7 Where spawnbot TFBot { Template T_TFBot_Giant_Scout_Fast } } WaveSpawn { Name wave2b WaitForAllSpawned wave2a-1-1 TotalCurrency 100 TotalCount 32 MaxActive 8 SpawnCount 4 WaitBeforeStarting 8 WaitBetweenSpawns 5 Where spawnbot Where spawnbot_upper TFBot { Class Scout } } WaveSpawn { Name wave2b WaitForAllDead wave2a-1-1 TotalCurrency 100 TotalCount 32 MaxActive 8 SpawnCount 4 WaitBeforeStarting 8 WaitBetweenSpawns 5 Where spawnbot Where spawnbot_upper TFBot { Class Demoman } } WaveSpawn { Name wave2c WaitForAllSpawned wave2b TotalCurrency 100 TotalCount 6 MaxActive 6 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 15 Where spawnbot Squad { TFBot { Template T_TFBot_Giant_Soldier } TFBot { Class Medic Name "Kritz Medic" Item "The Kritzkrieg" ClassIcon medic_kritz Attributes SpawnWithFullCharge ItemAttributes { ItemName "The Kritzkrieg" "ubercharge rate bonus" 50 "uber duration bonus" 300 } CharacterAttributes { "bot medic uber health threshold" 69420 } } } } WaveSpawn { Name wave2c WaitForAllDead wave2b Support 1 TotalCurrency 100 TotalCount 100 MaxActive 15 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 1 Where spawnbot Where spawnbot_upper RandomChoice { TFBot { Template T_TFBot_Heavyweapons_Shotgun } TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ } } } } Wave //1100 credits 1200 bonus { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name wave3a TotalCurrency 100 TotalCount 36 MaxActive 8 SpawnCount 2 WaitBeforeStarting 1 WaitBetweenSpawns 1.5 Where spawnbot Squad { TFBot { Class Heavy Name "Heater Heavy" ClassIcon heavy_heater Item "The Huo Long Heatmaker" } TFBot { Template T_TFBot_Medic_QuickFix Tag bot_squad_member } } } WaveSpawn { Name wave3a TotalCurrency 100 TotalCount 6 MaxActive 2 SpawnCount 2 WaitBeforeStarting 0 WaitBetweenSpawns 3 Where spawnbot TFBot { Template T_TFBot_Giant_Pyro } } WaveSpawn { Name wave3b WaitForAllSpawned wave3a TotalCurrency 250 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 5 WaitBetweenSpawns 0 Tank { Health 25000 Name "tankboss" Speed 75 StartingPathTrackNode "tank_path_a_1" OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } WaveSpawn { Name wave3b WaitForAllSpawned wave3a TotalCurrency 100 TotalCount 35 MaxActive 7 SpawnCount 1 WaitBeforeStarting 5 WaitBetweenSpawns 1 Where spawnbot_upper TFBot { Class Demoman } } WaveSpawn { Name wave3b WaitForAllSpawned wave3a TotalCurrency 100 TotalCount 20 MaxActive 7 SpawnCount 4 WaitBeforeStarting 5 WaitBetweenSpawns 3 Where spawnbot TFBot { Template T_TFBot_Soldier_Extended_Concheror } } WaveSpawn { Name wave3b WaitForAllSpawned wave3a TotalCurrency 150 TotalCount 4 MaxActive 4 SpawnCount 1 WaitBeforeStarting 3 WaitBetweenSpawns 15 Where spawnbot TFBot { Template T_TFBot_Giant_Soldier_Spammer_Reload } } WaveSpawn { Name wave3c WaitForAllSpawned wave3b TotalCurrency 100 TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 7 WaitBetweenSpawns 20 Where spawnbot TFBot { Template T_TFBot_Giant_Scout Attributes AlwaysCrit } } WaveSpawn { Name wave3c WaitForAllSpawned wave3b Support Limited TotalCurrency 100 TotalCount 40 MaxActive 7 SpawnCount 1 WaitBeforeStarting 7 WaitBetweenSpawns 1 Where spawnbot_upper TFBot { Class Soldier } } WaveSpawn { Name wave3c WaitForAllSpawned wave3b Support Limited TotalCurrency 100 TotalCount 40 MaxActive 7 SpawnCount 1 WaitBeforeStarting 7 WaitBetweenSpawns 1 Where spawnbot_upper Where spawnbot TFBot { Class Pyro Skill Easy } } } Wave //1000 credits 1100 bonus { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name wave4a TotalCurrency 100 TotalCount 12 MaxActive 4 SpawnCount 4 WaitBeforeStarting 1 WaitBetweenSpawns 15 Where spawnbot TFBot { Template T_TFBot_Giant_Scout_Fast } } WaveSpawn { Name wave4a TotalCurrency 100 TotalCount 40 MaxActive 12 SpawnCount 1 WaitBeforeStarting 2 WaitBetweenSpawns 1 Where spawnbot RandomChoice { TFBot { Template T_TFBot_Sniper_Huntsman Attributes AlwaysCrit } TFBot { Class Heavy Skill Normal } } } WaveSpawn { Name wave4b WaitForAllSpawned wave4a TotalCurrency 100 TotalCount 21 MaxActive 7 SpawnCount 1 WaitBeforeStarting 1 WaitBetweenSpawns 1 Where spawnbot Where spawnbot_upper TFBot { Class Soldier } } WaveSpawn { Name wave4b WaitForAllSpawned wave4a TotalCurrency 100 TotalCount 21 MaxActive 7 SpawnCount 1 WaitBeforeStarting 1 WaitBetweenSpawns 1 Where spawnbot Where spawnbot_upper TFBot { Class Scout Attributes AlwaysCrit } } WaveSpawn { Name wave4c-1 WaitForAllSpawned wave4b TotalCurrency 50 TotalCount 36 MaxActive 6 SpawnCount 1 WaitBeforeStarting 3 WaitBetweenSpawns 1 Where spawnbot_upper TFBot { Class Demoman Skill Hard } } WaveSpawn { Name wave4c-1 WaitForAllSpawned wave4b TotalCurrency 50 TotalCount 36 MaxActive 6 SpawnCount 1 WaitBeforeStarting 1.5 WaitBetweenSpawns 1 Where spawnbot_upper TFBot { Class Demoman Name "Swashbuckler" ClassIcon demoknight_persian_nys Skill Hard Item "The Tide Turner" Item "The Buccaneer's Bicorne" Item "The Persian Persuader" WeaponRestrictions MeleeOnly ItemAttributes { ItemName "The Persian Persuader" "critboost on kill" 3 "set_item_texture_wear" 0.2 "paintkit_proto_def_index" 285 } } } WaveSpawn { Name wave4c WaitForAllSpawned wave4b TotalCurrency 100 TotalCount 5 MaxActive 5 SpawnCount 1 WaitBeforeStarting 7 WaitBetweenSpawns 10 Where spawnbot TFBot { Template T_TFBot_Giant_Pyro Item "The Dragon's Fury" ClassIcon pyro_dragon_fury_swordstone Name "Giant Dragon fury Pyro" Attributes AlwaysCrit ItemAttributes { ItemName "The Dragon's Fury" "damage bonus" 1.5 } } } WaveSpawn { Name wave4d WaitForAllSpawned wave4c-1 TotalCurrency 100 TotalCount 4 MaxActive 4 SpawnCount 2 WaitBeforeStarting 7 WaitBetweenSpawns 25 Where spawnbot Squad { TFBot { Template T_TFBot_Giant_Soldier_SlowBarrage } TFBot { Template T_TFBot_Giant_Medic_Regen } } } WaveSpawn { Name wave4d WaitForAllSpawned wave4c-1 TotalCurrency 100 TotalCount 36 MaxActive 12 SpawnCount 6 WaitBeforeStarting 5 WaitBetweenSpawns 10 Where spawnbot TFBot { Template T_TFBot_Scout_FAN Attributes AlwaysCrit } } WaveSpawn { Name wave4Boss WaitForAllSpawned wave4d TotalCurrency 200 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 10 Where spawnbot LastSpawnWarningSound "vo\mvm\norm\taunts\scout_mvm_taunts13.mp3" TFBot { Class Scout ClassIcon scout_stun_giant_armored Name "Major Moon Shot" Skill Hard Health "16515" Item "The Sandman" Item "Batter's Helmet" Attributes MiniBoss Attributes UseBossHealthBar WeaponRestrictions MeleeOnly ItemAttributes { ItemName "The Sandman" "effect bar recharge rate increased" 0.001 "dmg bonus vs buildings" 2 "dmg penalty vs players" 2 "maxammo grenades1 increased" 25 } CharacterAttributes { "boots falling stomp" 1 "increased jump height" 1.5 "cancel falling damage" 1 "move speed penalty" 0.4 "damage force reduction" 0.3 "airblast vertical vulnerability multiplier" 0.1 "airblast vulnerability multiplier" 0.1 "override footstep sound set" 5 } } } WaveSpawn { Name wave4boss-sup WaitForAllSpawned wave4d Support 1 TotalCount 1000 MaxActive 15 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 2 Where spawnbot Where spawnbot_upper RandomChoice { TFBot { Template T_TFBot_Soldier_Extended_Buff_Banner } TFBot { Class Pyro Skill Easy } TFBot { Template T_TFBot_Heavyweapons_Heavyweight_Champ_Fast } } } } Wave //1500 credits 1600 bonus { StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name wave5a TotalCurrency 100 TotalCount 19 MaxActive 19 SpawnCount 19 WaitBeforeStarting 1 WaitBetweenSpawns 0 Where spawnbot TFBot { Class Heavy Skill Hard Attributes AlwaysCrit } } WaveSpawn { Name wave5a-1 WaitForAllDead wave5a TotalCurrency 100 TotalCount 5 MaxActive 5 SpawnCount 1 WaitBeforeStarting 1 WaitBetweenSpawns 20 Where spawnbot TFBot { Template T_TFBot_Giant_Soldier_Spammer Attributes AlwaysCrit } } WaveSpawn { Name wave5a-1 WaitForAllDead wave5a TotalCurrency 100 TotalCount 42 MaxActive 12 SpawnCount 2 WaitBeforeStarting 1 WaitBetweenSpawns 2.5 Where spawnbot Squad { TFBot { Class Scout Skill Expert } TFBot { Template T_TFBot_Medic_QuickUber Tag bot_squad_member } } } WaveSpawn { Name wave5b WaitForAllSpawned wave5a-1 TotalCurrency 100 TotalCount 36 MaxActive 12 SpawnCount 3 WaitBeforeStarting 3 WaitBetweenSpawns 5 Where spawnbot Squad { TFBot { Template T_TFBot_Heavyweapons_Shotgun Attributes AlwaysCrit } TFBot { Template T_TFBot_Soldier_Extended_Concheror Tag bot_squad_member ItemAttributes { ItemName "The Concheror" "single wep holster time increased" 1.5 } } TFBot { Template T_TFBot_Soldier_Extended_Battalion Tag bot_squad_member ItemAttributes { ItemName "The Battalion's Backup" "single wep holster time increased" 1.5 } } } } WaveSpawn { Name wave5b WaitForAllSpawned wave5a-1 TotalCurrency 100 TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 7 WaitBetweenSpawns 12 Where spawnbot Where spawnbot_upper TFBot { Template T_TFBot_Giant_Heavyweapons_Deflector } } WaveSpawn { Name wave5c WaitForAllSpawned wave5b TotalCurrency 100 TotalCount 4 MaxActive 4 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 20 Where spawnbot TFBot { Template T_TFBot_Giant_Soldier_Spammer_Reload } } WaveSpawn { Name wave5c WaitForAllSpawned wave5b TotalCurrency 100 TotalCount 3 MaxActive 3 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 10 Where spawnbot_upper TFBot { Template T_TFBot_Giant_Pyro Attributes AlwaysFireWeapon Attributes AlwaysCrit } } WaveSpawn { Name wave5c WaitForAllSpawned wave5b Support Limited TotalCurrency 100 TotalCount 32 MaxActive 8 SpawnCount 2 WaitBeforeStarting 10 WaitBetweenSpawns 10 Where spawnbot_upper TFBot { Template T_TFBot_Sniper_Huntsman_Spammer ClassIcon sniper_bow_multi } } WaveSpawn { Name wave5c-1 WaitForAllSpawned wave5b TotalCurrency 700 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 0 Tank { Health 32000 Name "tankboss" Speed 75 Skin 1 StartingPathTrackNode "tank_path_a_1" OnKilledOutput { Target boss_dead_relay Action Trigger } OnBombDroppedOutput { Target boss_deploy_relay Action Trigger } } } } Wave //1000 credits 1100 bonus { SpawnTemplate PerishAtOnce SpawnTemplate SuperCoolMusic StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name wave6-1 Support Limited TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 99999999 Where spawnbot FirstSpawnOutput { Target wormhole_start_relay Action Trigger } } WaveSpawn { Name wave6-2 WaitForAllSpawned wave6-1 Support Limited TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 0 WaitBetweenSpawns 99999999 Where spawnbot FirstSpawnWarningSound "vo\mvm\norm\taunts\demoman_mvm_taunts13.mp3" } WaveSpawn { Name wave6a WaitForAllSpawned wave6-2 TotalCurrency 100 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 3 WaitBetweenSpawns 0 Where spawnbot_boss FirstSpawnMessage "{Green} Song Name: Pest of The Cosmos by DM DOKURO" TFBot { Class Demoman ClassIcon demo_scatter Skill Expert Health "40000" Name "Astrum Deus" Item "Captain Space Mann" Item "pyroland_grenadelauncher_rainbow" Attributes UseBossHealthBar Attributes MiniBoss Attributes HoldFireUntilFullReload Attributes AlwaysCrit ItemAttributes { ItemName "pyroland_grenadelauncher_rainbow" "set_item_texture_wear" 0.2 "killstreak tier" 2 "killstreak idleeffect" 1 "damage bonus" 1.5 "fire rate bonus" -2 "faster reload rate" 0.35 "clip size upgrade atomic" 6 "projectile spread angle penalty" 4 "ragdolls plasma effect" 1 "no self blast dmg" 1 "energy weapon no deflect" 1 } SpawnTemplate PhaseActivator Tag tag_astrum FireInput { Target "activate_split" Action "Trigger" Delay 0.1 Repeats 1 IfHealthBelow 20001 } ItemAttributes { ItemName "Captain Space Mann" "attach particle effect" 99 } CharacterAttributes { "boots falling stomp" 1 "increased jump height" 1.5 "cancel falling damage" 1 "health regen" 200 "move speed penalty" 0.3 "damage force reduction" 0.1 "airblast vulnerability multiplier" 0.01 "override footstep sound set" 4 "airblast vertical vulnerability multiplier" 0.1 "rage giving scale" 0.25 } } } WaveSpawn { Name wave6a-1 WaitForAllDead wave6a TotalCurrency 50 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 3 WaitBetweenSpawns 0 Where spawnbot_intele HideIcon 1 TFBot { Template T_TFBot_Boss_Astrum_Deus_Phase2 Attributes AlwaysCrit } } WaveSpawn { Name wave6a-1 WaitForAllDead wave6a TotalCurrency 50 TotalCount 1 MaxActive 1 SpawnCount 1 WaitBeforeStarting 3 WaitBetweenSpawns 0 Where spawnbot_intele FirstSpawnWarningSound "vo\mvm\norm\demoman_mvm_laughevil01.mp3" HideIcon 1 TFBot { Template T_TFBot_Boss_Astrum_Deus_Phase2 Attributes AlwaysCrit } } WaveSpawn { Name wave6a-2 WaitForAllDead wave6a-1 FirstSpawnOutput { Target boss_music_disabler Action Trigger } } WaveSpawn { Name wave6-support WaitForAllSpawned wave6a Support 1 TotalCount 100 MaxActive 7 SpawnCount 1 WaitBeforeStarting 10 WaitBetweenSpawns 5 Where spawnbot Where spawnbot_upper TFBot { Class Heavy Skill Hard Attributes IgnoreFlag BehaviorModifiers push } } } } #base judge_restricts.pop