// Map and mission by Conga Dispenser #base robot_giant.pop #base robot_standard.pop #base robot_gatebot.pop population { StartingCurrency 000 RespawnWaveTime 6 CanBotsAttackWhileInSpawnRoom no AddSentryBusterWhenDamageDealtExceeds 10000 AddSentryBusterWhenKillCountExceeds 10 FixedRespawnWaveTime 6 PlayerAttributes { "min respawn time" 9999 Scout { "move speed bonus" 0.58 "maxammo primary reduced" 0.15 "clip size penalty" 0.16 } } ClassLimit //Limits the number of specified classes { Soldier 0 Pyro 0 Demoman 0 Heavyweapons 0 Engineer 0 Medic 0 Sniper 0 Spy 0 } ItemBlacklist //Disallows using specified weapons below { Name "The Force-a-Nature" ItemSlot "secondary" Name "Baby Face's Blaster" Name "The Soda Popper" Name "The Atomizer" } PointTemplates { textualtimer { OnSpawnOutput { Param 1 // change the value for minutes Target minutehand Action SetValue } OnSpawnOutput { Param 30 // change the value for seconds Target secondhand Action SetValue } logic_relay { "targetname" "loserelay" "startdisabled" "1" "ontrigger" "realtimer,cancelpending,,2,-1" "onspawn" "wave_finish*,addoutput,ontrigger realtimer:cancelpending::0:-1,0,-1" "onspawn" "wave_finish*,addoutput,ontrigger loserelay:cancelpending::0:-1,0,-1" } NoFixup 1 math_counter { "targetname" "minutehand" "max" "9999" "outvalue" "timerformat,$setkey$case01,,0,-1" "onhitmin" "loserelay,enable,,1,-1" } math_counter { "targetname" "secondhand" "max" "60" "outvalue" "timerformat,$setkey$case02,,0,-1" "outvalue" "zerocompare,setvaluecompare,,0,-1" "onhitmin" "loserelay,trigger,,0,-1" "onhitmin" "!self,setvalue,60,1,-1" "onhitmin" "minutehand,subtract,1,1,-1" } logic_compare { "targetname" "zerocompare" "comparevalue" "9" "onequalto" "timerformat,$setkey$case16,%:0%,0,-1" "ongreaterthan" "timerformat,$setkey$case16,%:%,0,-1" } logic_case { "targetname" "timerformat" "case16" "%:%" "ondefault" "timertext,$setkey$message,,0,-1" "ondefault" "timertext,display,0,0,-1" } game_text { "targetname" "timertext" "color" "65 155 255" "holdtime" "2" "spawnflags" "1" "x" "0.5" "y" "0.35" } logic_relay { "targetname" "realtimer" "spawnflags" "2" "ontrigger" "timerformat,$format,,0.01,-1" "ontrigger" "secondhand,subtract,1,0,-1" "ontrigger" "!self,trigger,,1,-1" } } } SpawnTemplate textualtimer Templates { Demo_Enemy { Class Demoman Health 35 Skill Normal WeaponRestrictions PrimaryOnly CharacterAttributes { "move speed bonus" 0.01 "damage penalty" 0.25 "clip size penalty" 0.25 "fire rate penalty" 3 } } Soldier_Enemy { Class Soldier Health 50 Skill Normal WeaponRestrictions PrimaryOnly CharacterAttributes { "move speed bonus" 0.01 "damage penalty" 0.5 "clip size penalty" 0.25 "fire rate penalty" 4 "Blast radius decreased" 0.4 } } Swim_Sniper { Class Sniper Health 105 Skill Normal WeaponRestrictions MeleeOnly CharacterAttributes { "move speed bonus" 0.3 "damage penalty" 0.001 "fire rate penalty" 2 } DamageAppliesCond { Index 86 Duration 999 } } } Wave { WaitWhenDone 65 Checkpoint Yes RedTeamWipeCausesWaveLoss 1 Explanation { Line "{red}If you haven't played any of these maps before, please go to the mvm_toppingtower without '_lvl' after the name." } StartWaveOutput { Target wave_start_relay Action Trigger } DoneOutput { Target wave_finished_relay Action Trigger } WaveSpawn { Name Demo TotalCurrency 0 TotalCount 11 MaxActive 11 SpawnCount 1 Where Demo WaitBeforeStarting 0 WaitBetweenSpawns 0.1 Support limited TFBot { Template Demo_Enemy } } WaveSpawn { Name Soldier TotalCurrency 0 TotalCount 10 MaxActive 10 SpawnCount 1 Where Soldier WaitBeforeStarting 0 WaitBetweenSpawns 0.1 Support limited TFBot { Template Soldier_Enemy } } WaveSpawn { Name Demo TotalCurrency 0 TotalCount 1 MaxActive 1 SpawnCount 1 Where Enter1 WaitBeforeStarting 9999999 WaitBetweenSpawns 1 TFBot { Template Demo_Enemy ClassIcon mystery } } } }