// ADVANCED MISSION FOR MVM_HOOVYDAM_B8
// MADE BY PEALOVER
// V9

#base robot_giant.pop
#base robot_standard.pop
#base robot_custom_weapons.pop
#base robot_gatebot.pop

WaveSchedule
{
	StartingCurrency 1000
	CanBotsAttackWhileInSpawnRoom No
	RespawnWaveTime 5
	FixedRespawnWaveTime Yes
	NoRomevisionCosmetics 1  
	SendBotsToSpectatorImmediately 1  
	Advanced 1
	
	PointTemplates   //jaka's dumb fix for a dumb bug
	{
		Unstuck_System //teleport bots stuck in the wrong spawn door
		{
			NoFixup 1
			trigger_multiple //door a check
			{
				"targetname" "door_a_stuck_check"
				"mins" "-40 -144 -144"
				"maxs" "40 144 144"
				"origin" "392 -2128 528"
				"spawnflags" "1"
				"OnStartTouchAll" "door_a_stuck_timer,Enable,,0,-1"
				"OnEndTouchAll" "door_a_stuck_timer,Disable,,0,-1"
				"OnEndTouchAll" "door_a_stuck_timer,ResetTimer,,0.1,-1"
				"OnEndTouchAll" "door_a_stuck_tele,Disable,,0,-1"
			}
			logic_timer //door a timer
			{
				"RefireTime" "10"
				"spawnflags" "0"
				"StartDisabled" "1"
				"targetname" "door_a_stuck_timer"
				"UseRandomTime" "0"
				"OnTimer" "door_a_stuck_tele,Enable,,0,-1"
				"OnTimer" "door_a_stuck_tele,Disable,,0.1,-1"
			}
			trigger_teleport //door a tele
			{
				"targetname" "door_a_stuck_check"
				"mins" "-48 -144 -144"
				"maxs" "48 144 144"
				"origin" "368 -2128 528"
				"spawnflags" "1"
				"StartDisabled" "1"
				"target" "door_a_stuck_target"
				"targetname" "door_a_stuck_tele"
			}
			info_teleport_destination //door a tele dest
			{
				"targetname" "door_a_stuck_target"
				"origin" "432 -1744 437.007"
			}
			trigger_multiple //door b check
			{
				"targetname" "door_b_stuck_check"
				"mins" "-24 -144 -144"
				"maxs" "24 144 144"
				"origin" "376 -1744 528"
				"spawnflags" "1"
				"OnStartTouchAll" "door_b_stuck_timer,Enable,,0,-1"
				"OnEndTouchAll" "door_b_stuck_timer,Disable,,0,-1"
				"OnEndTouchAll" "door_b_stuck_timer,ResetTimer,,0.1,-1"
				"OnEndTouchAll" "door_b_stuck_tele,Disable,,0,-1"
			}
			logic_timer //door b timer
			{
				"RefireTime" "10"
				"spawnflags" "0"
				"StartDisabled" "1"
				"targetname" "door_b_stuck_timer"
				"UseRandomTime" "0"
				"OnTimer" "door_b_stuck_tele,Enable,,0,-1"
				"OnTimer" "door_b_stuck_tele,Disable,,0.1,-1"
			}
			trigger_teleport //door b tele
			{
				"targetname" "door_b_stuck_check"
				"mins" "-16 -144 -144"
				"maxs" "16 144 144"
				"origin" "368 -1744 528"
				"spawnflags" "1"
				"StartDisabled" "1"
				"target" "door_b_stuck_target"
				"targetname" "door_b_stuck_tele"
			}
			info_teleport_destination //door b tele dest
			{
				"targetname" "door_b_stuck_target"
				"origin" "465.334 -2129.2 432"
			}
			trigger_multiple //gate a check
			{
				"targetname" "gate_a_stuck_check"
				"mins" "-169 -100 -144"
				"maxs" "169 100 144"
				"origin" "-3405 -1464 609"
				"spawnflags" "1"
				"OnStartTouchAll" "gate_a_stuck_timer,Enable,,0,-1"
				"OnEndTouchAll" "gate_a_stuck_timer,Disable,,0,-1"
				"OnEndTouchAll" "gate_a_stuck_timer,ResetTimer,,0.1,-1"
				"OnEndTouchAll" "gate_a_stuck_tele,Disable,,0,-1"
			}
			logic_timer //gate a timer
			{
				"RefireTime" "11"
				"spawnflags" "0"
				"StartDisabled" "1"
				"targetname" "gate_a_stuck_timer"
				"UseRandomTime" "0"
				"OnTimer" "gate_a_stuck_tele,Enable,,0,-1"
				"OnTimer" "gate_a_stuck_tele,Disable,,0.1,-1"
			}
			trigger_teleport //gate a tele
			{
				"targetname" "gate_a_stuck_check"
				"mins" "-169 -100 -144"
				"maxs" "169 100 144"
				"origin" "-3405 -1454 609"
				"spawnflags" "1"
				"StartDisabled" "1"
				"target" "gate_a_stuck_target"
				"targetname" "gate_a_stuck_tele"
			}
			info_teleport_destination //gate a tele dest
			{
				"targetname" "gate_a_stuck_target"
				"origin" "-3021 -1489 607"
			}
			trigger_multiple //gate b check
			{
				"targetname" "gate_b_stuck_check"
				"mins" "-266 -233 -144"
				"maxs" "266 233 144"
				"origin" "-700 2546 369"
				"spawnflags" "1"
				"OnStartTouchAll" "gate_b_stuck_timer,Enable,,0,-1"
				"OnEndTouchAll" "gate_b_stuck_timer,Disable,,0,-1"
				"OnEndTouchAll" "gate_b_stuck_timer,ResetTimer,,0.1,-1"
				"OnEndTouchAll" "gate_b_stuck_tele,Disable,,0,-1"
			}
			logic_timer //gate b timer
			{
				"RefireTime" "10"
				"spawnflags" "0"
				"StartDisabled" "1"
				"targetname" "gate_b_stuck_timer"
				"UseRandomTime" "0"
				"OnTimer" "gate_b_stuck_tele,Enable,,0,-1"
				"OnTimer" "gate_b_stuck_tele,Disable,,0.1,-1"
			}
			trigger_teleport //gate b tele
			{
				"targetname" "gate_b_stuck_check"
				"mins" "-266 -233 -144"
				"maxs" "266 233 144"
				"origin" "-700 2546 369"
				"spawnflags" "1"
				"StartDisabled" "1"
				"target" "gate_b_stuck_target"
				"targetname" "gate_b_stuck_tele"
			}
			info_teleport_destination //gate b tele dest
			{
				"targetname" "gate_b_stuck_target"
				"origin" "-1291 2533 370"
			}
		}
		Tank_Unstuck_System //blade plz.
		{
			NoFixup 1
			logic_relay //boss dead relay. There's actually no boss_dead_relay so I don't need to do this, but if I have to fix this I'm making the name of it stupid then.
			{
				"targetname" "boss_dead_please_fix_your_maps_blade_thank_you_relay"
				"OnTrigger" "shutter_trigger,Enable,,0,-1"
			}
			trigger_multiple //tank touch test to force open door if it closes. I did the math for the brush in my head, so it probably is wrong.
			{
				"targetname" "tank_touch_test"
				"mins" "-40 -24 -42"
				"maxs" "40 24 42"
				"origin" "-1432 760 342"
				"spawnflags" "1"
				"OnTrigger" "shutter_trigger,Enable,,0,-1"
			}
			filter_activator_name //tank filter. Does this exist already? Mabey. I saw filter_tank somewhere, but I'm too busy to check if it works.
			{
				"targetname" "filter_tank_fix"
				"filtername" "tankboss"
				"Negated" "Allow entities that match criteria"
			}
		}
	}
	
	Templates
	{
		T_TFGateBot_Giant_Scout_Fast
		{
			Class Scout
			Name "Super Scout"
			ClassIcon scout_giant_fast
			Health 1200
			EventChangeAttributes
			{
				Default
				{
					BehaviorModifiers push			// having these will cause bots to run towards gates
					Attributes IgnoreFlag			// having these will cause bots to run towards gates
					Tag nav_prefer_gate1_flank 		// having these will cause bots to run towards gates
					Tag bot_gatebot 				// having these will cause bots to run towards gates

					Item "MvM GateBot Light Scout"
					Tag bot_giant
					Skill Easy
					Item "The Holy Mackerel"
					WeaponRestrictions MeleeOnly
					Attributes MiniBoss
					CharacterAttributes
					{
						"move speed bonus"	2
						"damage force reduction" 0.7
						"airblast vulnerability multiplier" 0.7
						"override footstep sound set" 5
					}
				}
				RevertGateBotsBehavior
				{
					Item "MvM GateBot Light Scout"
					ItemAttributes               // turn off light hat
					{
						ItemName "MvM GateBot Light Scout"
						"item style override" 1
					}
					Tag bot_giant
					Item "MvM GateBot Light Scout"
					Tag bot_giant
					Skill Easy
					Item "The Holy Mackerel"
					WeaponRestrictions MeleeOnly
					Attributes MiniBoss
					CharacterAttributes
					{
						"move speed bonus"	2
						"damage force reduction" 0.7
						"airblast vulnerability multiplier" 0.7
						"override footstep sound set" 5
					}
				}
			}
		}
		T_TFGateBot_Giant_Soldier_Spammer_Reload_Crit
		{
			Class Soldier
			Name "Giant Burst Fire Soldier"
			ClassIcon soldier_burstfire
			Health 4000

			EventChangeAttributes
			{
				Default
				{
					Tag bot_gatebot 				// having these will cause bots to run towards gates
					Tag nav_prefer_gate1_flank		// having these will cause bots to run towards gates
					BehaviorModifiers push			// having these will cause bots to run towards gates
					Attributes IgnoreFlag 			// having these will cause bots to run towards gates

					Item "MvM GateBot Light Soldier"
					Skill Expert
					WeaponRestrictions PrimaryOnly
					Attributes MiniBoss
					Attributes HoldFireUntilFullReload
					Attributes AlwaysCrit
					Tag bot_giant
					ItemAttributes
					{
						ItemName "TF_WEAPON_ROCKETLAUNCHER"
						"move speed bonus"	0.5
						"faster reload rate" 0.6
						"fire rate bonus" 0.1
						"clip size upgrade atomic" 5.0
						"Projectile speed increased" 0.65
					}
					CharacterAttributes
					{
						"damage force reduction" 0.4
						"airblast vulnerability multiplier" 0.4
						"override footstep sound set" 3
					}
				}
				RevertGateBotsBehavior
				{
					Item "MvM GateBot Light Soldier"
					ItemAttributes               // turn off light hat
					{
						ItemName "MvM GateBot Light Soldier"
						"item style override" 1
					}
										Skill Expert
					WeaponRestrictions PrimaryOnly
					Attributes MiniBoss
					Attributes HoldFireUntilFullReload
					Attributes AlwaysCrit
					Tag bot_giant
					ItemAttributes
					{
						ItemName "TF_WEAPON_ROCKETLAUNCHER"
						"move speed bonus"	0.5
						"faster reload rate" 0.6
						"fire rate bonus" 0.1
						"clip size upgrade atomic" 5.0
						"Projectile speed increased" 0.65
					}
					CharacterAttributes
					{
						"damage force reduction" 0.4
						"airblast vulnerability multiplier" 0.4
						"override footstep sound set" 3
					}
				}
			}
		}
		T_TFBot_Chief_Soldier_RocketPush_RocketShotgun_Spammer
		{
			Class Soldier
			Skill Expert
			WeaponRestrictions PrimaryOnly
			ClassIcon soldier_libertylauncher_upsidedown
			Attributes MiniBoss
			Attributes UseBossHealthBar
			Attributes HoldFireUntilFullReload
			Attributes Parachute
			Health 50000
			Scale 1.8
			Name "Blast Perfect"
			Item "The Marxman"
			Item "The B.A.S.E. Jumper"
			Item "The Liberty Launcher"
			ItemAttributes
			{
				ItemName "The Liberty Launcher"
				"damage causes airblast" 1
				"damage bonus" 1
				"fire rate bonus" 0.001
				"clip size upgrade atomic" -2
				"faster reload rate" 0.2
				"Blast radius decreased" 1.2
				"projectile spread angle penalty" 2
				"Projectile speed increased" 1.4
				"apply z velocity on damage" -520
				"apply look velocity on damage" -520
			}
			CharacterAttributes
			{
				"move speed bonus"	0.5
				"override footstep sound set" 3
				"damage force reduction" 0
				"airblast vulnerability multiplier" 0
				"airblast vertical vulnerability multiplier" 0
				"rage giving scale"	0.15
				"cancel falling damage" 1
			}
		}
		T_TFGateBot_Pyro_AlwaysFireWeapon_Parachute
		{
			Class Pyro
			EventChangeAttributes
			{
				Default
				{
					Tag bot_gatebot 				// having these will cause bots to run towards gates
					Tag nav_prefer_gate1_flank		// having these will cause bots to run towards gates
					BehaviorModifiers push			// having these will cause bots to run towards gates
					Attributes IgnoreFlag 			// having these will cause bots to run towards gates

					Item "MvM GateBot Light Pyro"
					Skill Easy
					Attributes AlwaysFireWeapon
					Attributes Parachute
					Item "The B.A.S.E. Jumper"
				}
				RevertGateBotsBehavior
				{
					Item "MvM GateBot Light Pyro"
					ItemAttributes               // turn off light hat
					{
						ItemName "MvM GateBot Light Pyro"
						"item style override" 1
					}
					Skill Easy
					Attributes AlwaysFireWeapon
					Attributes Parachute
					Item "The B.A.S.E. Jumper"
				}
			}
		}
		T_TFBot_Giant_Pyro_Flare_Spammer_FlareGun
		{
			Class Pyro
			Name "Giant Flare Pyro"
			ClassIcon pyro_flare_giant
			Skill Expert
			Health 3000
			Item "The Flare Gun"
			Item "Brigade Helm"
			WeaponRestrictions SecondaryOnly
			Attributes MiniBoss
			ItemAttributes
			{
				ItemName "The Flare Gun"
				"fire rate bonus" 0.3
			}
			CharacterAttributes
			{
				"move speed bonus" 0.5
				"damage force reduction" 0.6
				"airblast vulnerability multiplier" 0.6
				"override footstep sound set" 6
			}
		}
		T_TFGateBot_Giant_Pyro
		{

			Class Pyro
			Name "Giant Pyro"
			ClassIcon pyro_giant
			Health 3000
			EventChangeAttributes
			{
				Default
				{
					Tag nav_prefer_gate1_flank	// having these will cause bots to run towards gates
					Tag bot_gatebot				// having these will cause bots to run towards gates
					BehaviorModifiers push		// having these will cause bots to run towards gates
					Attributes IgnoreFlag		// having these will cause bots to run towards gates

					Item "MvM GateBot Light Pyro"
					Skill Expert
					WeaponRestrictions PrimaryOnly
					Attributes MiniBoss
					Tag bot_giant
					CharacterAttributes
					{
						"move speed bonus"	0.5
						"damage force reduction" 0.6
						"airblast vulnerability multiplier" 0.6
						"override footstep sound set" 6
					}
				}
				RevertGateBotsBehavior
				{
					Item "MvM GateBot Light Pyro"
					ItemAttributes               // turn off light hat
					{
						ItemName "MvM GateBot Light Pyro"
						"item style override" 1
					}
					Skill Expert
					WeaponRestrictions PrimaryOnly
					Attributes MiniBoss
					Tag bot_giant
					CharacterAttributes
					{
						"move speed bonus"	0.5
						"damage force reduction" 0.6
						"airblast vulnerability multiplier" 0.6
						"override footstep sound set" 6
					}
				}
			}
		}
		T_TFGateBot_Giant_Pyro_Flare_Spammer_Crit
		{
			Class Pyro
			Name "Giant Flare Pyro"
			ClassIcon pyro_flare_giant
			Health 3000
			
			EventChangeAttributes
			{
				Default
				{
					Tag nav_prefer_gate1_flank	// having these will cause bots to run towards gates
					Tag bot_gatebot				// having these will cause bots to run towards gates
					BehaviorModifiers push		// having these will cause bots to run towards gates
					Attributes IgnoreFlag		// having these will cause bots to run towards gates

					Item "MvM GateBot Light Pyro"
					Tag bot_giant
					Skill Expert
					Item "The detonator"
					WeaponRestrictions SecondaryOnly
					Attributes MiniBoss
					Attributes AlwaysCrit
					ItemAttributes
					{
						ItemName "The detonator"
						"fire rate bonus" 0.3
					}
					CharacterAttributes
					{
						"move speed bonus"	0.5
						"damage force reduction" 0.6
						"airblast vulnerability multiplier" 0.6
						"override footstep sound set" 6
					}
				}
				RevertGateBotsBehavior
				{
					Item "MvM GateBot Light Pyro"
					ItemAttributes               // turn off light hat
					{
						ItemName "MvM GateBot Light Pyro"
						"item style override" 1
					}
					Tag bot_giant
					Skill Expert
					Item "The detonator"
					WeaponRestrictions SecondaryOnly
					Attributes MiniBoss
					Attributes AlwaysCrit
					ItemAttributes
					{
						ItemName "The detonator"
						"fire rate bonus" 0.3
					}
					CharacterAttributes
					{
						"move speed bonus"	0.5
						"damage force reduction" 0.6
						"airblast vulnerability multiplier" 0.6
						"override footstep sound set" 6
					}
				}
			}
		}
		T_TFBot_Demoman_Knight_Persian
		{
			Class Demoman
			ClassIcon demoknight
			Name "Persian Demoknight"
			Skill Hard
			Item "Sultan's Ceremonial"	
			Item "Ali Baba's Wee Booties"
			Item "The Persian Persuader"
			Item "The Splendid Screen"	
			ItemAttributes
			{
				ItemName "The Splendid Screen"
				"Attack not cancel charge" 1
			}		
			WeaponRestrictions MeleeOnly
			CharacterAttributes
			{
				"critboost on kill" 3
			}
		}
		T_TFGateBot_Demoman_Expert
		{
			Class Demoman
			EventChangeAttributes
			{
				Default
				{
					BehaviorModifiers push			// having these will cause bots to run towards gates
					Attributes IgnoreFlag			// having these will cause bots to run towards gates
					Tag nav_prefer_gate1_flank 		// having these will cause bots to run towards gates
					Tag bot_gatebot 				// having these will cause bots to run towards gates

					Item "MvM GateBot Light Demoman"
					Skill Expert
				}
				RevertGateBotsBehavior
				{
					Item "MvM GateBot Light Demoman"
					ItemAttributes               // turn off light hat
					{
						ItemName "MvM GateBot Light Demoman"
						"item style override" 1
					}
					Skill Expert
				}
			}
		}
		T_TFGateBot_Giant_Demoman_Crit
		{
			Class Demoman
			Name "Giant Rapid Fire Demoman"
			ClassIcon demo_giant
			Health 3300
			
			EventChangeAttributes
			{
				Default
				{
					BehaviorModifiers push			// having these will cause bots to run towards gates
					Attributes IgnoreFlag			// having these will cause bots to run towards gates
					Tag nav_prefer_gate1_flank 		// having these will cause bots to run towards gates
					Tag bot_gatebot 				// having these will cause bots to run towards gates

					Item "MvM GateBot Light Demoman"
					Tag bot_giant
					Skill Expert
					Attributes MiniBoss
					Attributes AlwaysCrit
					ItemAttributes
					{
						ItemName "TF_WEAPON_GRENADELAUNCHER"
						"faster reload rate" -0.4
						"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
					}
				}
				RevertGateBotsBehavior
				{
					Item "MvM GateBot Light Demoman"
					ItemAttributes               // turn off light hat
					{
						ItemName "MvM GateBot Light Demoman"
						"item style override" 1
					}
					Tag bot_giant
					Skill Expert
					Attributes MiniBoss
					Attributes AlwaysCrit
					ItemAttributes
					{
						ItemName "TF_WEAPON_GRENADELAUNCHER"
						"faster reload rate" -0.4
						"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
					}
				}
			}
		}
		T_TFBot_Heavyweapons_Deflector
		{
			Class Heavyweapons
			Name "Deflector Heavy"
			Skill Normal
			ClassIcon heavy_deflector
			Item "The U-clank-a"
			Item "Deflector"
			ItemAttributes
			{
				ItemName "Deflector"
				"attack projectiles" 1
			}
		}
		T_TFGateBot_Giant_Heavyweapons
		{
			Class Heavyweapons
			Name "Giant Heavy"
			Health 5000
			ClassIcon heavy_giant
			EventChangeAttributes
			{
				Default
				{
					BehaviorModifiers push			// having these will cause bots to run towards gates
					Attributes IgnoreFlag			// having these will cause bots to run towards gates
					Tag nav_prefer_gate1_flank 		// having these will cause bots to run towards gates
					Tag bot_gatebot 				// having these will cause bots to run towards gates

					Item "MvM GateBot Light Heavy"
					Skill Expert
					Attributes MiniBoss
					Tag bot_giant
					ItemAttributes
					{
						ItemName "TF_WEAPON_MINIGUN"
						"damage bonus" 1.5
					}
					CharacterAttributes
					{
						"move speed bonus"	0.5
						"damage force reduction" 0.3
						"airblast vulnerability multiplier" 0.3
						"override footstep sound set" 2
					}
				}
				RevertGateBotsBehavior
				{
					Item "MvM GateBot Light Heavy"
					ItemAttributes               // turn off light hat
					{
						ItemName "MvM GateBot Light Heavy"
						"item style override" 1
					}
					Skill Expert
					Attributes MiniBoss
					Tag bot_giant
					ItemAttributes
					{
						ItemName "TF_WEAPON_MINIGUN"
						"damage bonus" 1.5
					}
					CharacterAttributes
					{
						"move speed bonus"	0.5
						"damage force reduction" 0.3
						"airblast vulnerability multiplier" 0.3
						"override footstep sound set" 2
					}
				}
			}
		}
		T_TFGateBot_Chief_Heavyweapons_GRU
		{
			Class heavyweapons
			Name "Flaming Fist"
			ClassIcon heavy_gru
			Health 40000
			Scale 1.9
			EventChangeAttributes
			{
				Default
				{
					BehaviorModifiers push			// having these will cause bots to run towards gates
					Attributes IgnoreFlag			// having these will cause bots to run towards gates
					Tag nav_prefer_gate1_flank 		// having these will cause bots to run towards gates
					Tag bot_gatebot 				// having these will cause bots to run towards gates

					Item "MvM GateBot Light Heavy"
					Skill expert
					Tag bot_giant
					Item "Gloves of Running Urgently MvM"
					WeaponRestrictions MeleeOnly
					Attributes MiniBoss
					Attributes UseBossHealthBar
					ItemAttributes
					{
						ItemName "Gloves of Running Urgently MvM"
						"fire rate bonus" 0.6
					}
					CharacterAttributes
					{
						"move speed bonus" 0.5
						"damage force reduction" 0
						"airblast vulnerability multiplier" 0
						"airblast vertical vulnerability multiplier" 0
						"override footstep sound set" 2
						"rage giving scale" 0.1
					}
				}
				RevertGateBotsBehavior
				{
					Item "MvM GateBot Light Heavy"
					ItemAttributes
					{
						ItemName "MvM GateBot Light Heavy"
						"item style override" 1
					}
					Skill expert
					Tag bot_giant
					Item "Gloves of Running Urgently MvM"
					WeaponRestrictions MeleeOnly
					Attributes MiniBoss
					Attributes UseBossHealthBar
					ItemAttributes
					{
						ItemName "Gloves of Running Urgently MvM"
						"fire rate bonus" 0.6
					}
					CharacterAttributes
					{
						"move speed bonus"	0.5
						"damage force reduction" 0
						"airblast vulnerability multiplier" 0
						"airblast vertical vulnerability multiplier" 0
						"override footstep sound set" 2
						"rage giving scale" 0.1
					}
				}
			}
		}
	}
	Mission
	{
		Objective DestroySentries
		Where spawnbot_a
		Where spawnbot_b
		Where spawnbot_c
		CooldownTime 30
		TFBot
		{
			Template T_TFBot_SentryBuster
			Tag bot_sentrybuster
		}
	}
	Mission
	{
		Objective Sniper
		InitialCooldown 120
		Where spawnbot_a
		Where spawnbot_b
		Where spawnbot_c
		BeginAtWave 1
		RunForThisManyWaves 3
		CooldownTime 90
		DesiredCount 2
		TFBot
		{
			Class Sniper
			Skill Hard
			Name Sniper
			MaxVisionRange 4000
			Tag bot_sniper
		}
	}	
	Mission
	{
		Objective Spy
		InitialCooldown 90
		Where spawnbot_a
		Where spawnbot_b
		Where spawnbot_c
		BeginAtWave 1
		RunForThisManyWaves 3
		CooldownTime 90
		DesiredCount 2
		TFBot
		{
			Class Spy
			Skill Expert
			Name Spy
		}
	}	
	Mission
	{
		Objective Engineer
		InitialCooldown 60
		Where spawnbot_a
		Where spawnbot_b
		Where spawnbot_c
		BeginAtWave 1
		RunForThisManyWaves 3
		CooldownTime 120
		DesiredCount 1
		TFBot
		{
			Template T_TFBot_Engineer_Sentry_Battle
		}
	}
	
	SpawnTemplate "Unstuck_System"  
	SpawnTemplate "Tank_Unstuck_System"  
	
	Wave // WAVE 1
	{
		WaitWhenDone 60
		Sound "Announcer.IncomingMob"
		Checkpoint Yes
		Explanation  
		{
			Line "{blue}Waves in endurance mode are much longer than usual, but also offer much greater credit payouts. Don't forget to visit the Upgrade Station at any point in time, even during waves!"
		}
		StartWaveOutput
		{
			Target wave_start_relay
			Action Trigger
		}
		InitWaveOutput
		{
			Target initMain_roadside
			Action Trigger
		}	
		DoneOutput					
		{
			Target pickfast
			Action PickRandomShuffle
		}
		WaveSpawn
		{
			TotalCount 0
			SpawnCount 0
			FirstSpawnOutput
			{
				Target changeMain_setAB
				Action Trigger
			}		
		}
		WaveSpawn
		{
			TotalCount 0
			SpawnCount 0
			FirstSpawnOutput
			{
				Target initA_setRandomMix
				Action Trigger
			}		
		}
		WaveSpawn
		{
			Where spawnbot_b
			SpawnCount 1
			MaxActive 1
			TotalCount 1
			WaitBeforeStarting 1
			WaitBetweenSpawns 0
			TotalCurrency 0
			Support Limited
			RandomChoice
			{
				Squad
				{
					TFBot
					{
						Template T_TFBot_Soldier_RocketPush
						ClassIcon special_blimp
						CharacterAttributes
						{
							"move speed bonus" 2
						}
					}
				}
				Squad
				{
					TFBot
					{
						Template T_TFBot_Soldier_RocketPush
						ClassIcon special_blimp
						CharacterAttributes
						{
							"move speed bonus" 2
						}
					}
				}
			}
		}
		WaveSpawn
		{
			Name "W1A-Blast"
			TotalCurrency 100
			Where spawnbot_b
			SpawnCount 5
			MaxActive 20
			TotalCount 20
			WaitBeforeStarting 2
			WaitBetweenSpawns 4
			TFBot
			{
				Template T_TFBot_Soldier_RocketPush
			}
		}
		WaveSpawn
		{
			Name "W1A"
			TotalCurrency 200
			Where spawnbot_a
			SpawnCount 3
			MaxActive 6
			TotalCount 6
			WaitForAllSpawned "W1A-Blast"
			WaitBeforeStarting 8
			WaitBetweenSpawns 30
			Squad
			{
				TFBot
				{
					Template T_TFGateBot_Giant_Heavyweapons
				}
				TFBot
				{
					Template T_TFBot_Medic
					Tag bot_squad_member
				}
				TFBot
				{
					Template T_TFBot_Medic
					Tag bot_squad_member
				}
			}
		}
		WaveSpawn
		{
			Name "W1A"
			TotalCurrency 150
			Where spawnbot_a
			SpawnCount 3
			MaxActive 9
			TotalCount 27
			WaitForAllSpawned "W1A-Blast"
			WaitBeforeStarting 8
			WaitBetweenSpawns 7
			TFBot
			{
				Class Scout
				Skill Normal
			}
		}
		WaveSpawn
		{
			Name "W1-Support"
			TotalCurrency 0
			Where spawnbot_c
			SpawnCount 1
			MaxActive 1
			TotalCount 1
			WaitBeforeStarting 20
			WaitBetweenSpawns 0
			Support 1
			TFBot
			{
				Template T_TFBot_Scout_Melee
				Attributes Parachute
				Item "The B.A.S.E. Jumper"
				ClassIcon scout_support
			}
		}
		WaveSpawn
		{
			TotalCount 0
			SpawnCount 0
			WaitForAllDead "W1A"
			FirstSpawnOutput
			{
				Target changeMain_cliffside
				Action Trigger
			}		
		}
		WaveSpawn
		{
			Name "W1B"
			TotalCurrency 100
			Where spawnbot_c
			SpawnCount 18
			MaxActive 18
			TotalCount 18
			WaitForAllDead "W1A"
			WaitBeforeStarting 8
			WaitBetweenSpawns 1
			TFBot
			{
				Template T_TFBot_Sniper_Huntsman
				Attributes Parachute
				Item "The B.A.S.E. Jumper"
			}
		}
		WaveSpawn
		{
			Name "W1B"
			TotalCurrency 100
			Where spawnbot_a
			SpawnCount 5
			MaxActive 10
			TotalCount 22
			WaitForAllDead "W1A"
			WaitBeforeStarting 25
			WaitBetweenSpawns 8
			TFBot
			{
				Class Demoman
				Skill Normal
			}
		}
		WaveSpawn
		{
			Name "W1B"
			TotalCurrency 150
			Where spawnbot_b
			SpawnCount 1
			MaxActive 1
			TotalCount 3
			WaitForAllDead "W1A"
			WaitBeforeStarting 8
			WaitBetweenSpawns 30
			TFBot
			{
				Template T_TFGateBot_Giant_Scout_FAN
			}
		}
		WaveSpawn
		{
			Name "W1B"
			TotalCurrency 150
			Where spawnbot_b
			SpawnCount 2
			MaxActive 4
			TotalCount 4
			WaitForAllDead "W1A"
			WaitBeforeStarting 25
			WaitBetweenSpawns 25
			Squad
			{
				TFBot
				{
					Template T_TFGateBot_Giant_Soldier
				}
				TFBot
				{
					Template T_TFGateBot_Giant_Soldier
				}
			}
		}
		WaveSpawn
		{
			TotalCount 0
			SpawnCount 0
			WaitForAllDead "W1B"
			FirstSpawnOutput
			{
				Target changeMain_sides
				Action Trigger
			}		
		}
		WaveSpawn
		{
			Name "W1D-1"
			TotalCurrency 100
			Where spawnbot_a
			SpawnCount 3
			MaxActive 6
			TotalCount 18
			WaitForAllDead "W1B"
			WaitBeforeStarting 12
			WaitBetweenSpawns 10
			TFBot
			{
				Template T_TFGateBot_Soldier_Extended_Concheror_Normal
			}
		}
		WaveSpawn
		{
			Name "W1D-1"
			TotalCurrency 100
			Where spawnbot_b
			SpawnCount 4
			MaxActive 8
			TotalCount 20
			WaitForAllDead "W1B"
			WaitBeforeStarting 12
			WaitBetweenSpawns 12
			TFBot
			{
				Class Demoman
				Skill Normal
			}
		}
		WaveSpawn
		{
			Name "W1D-2"
			TotalCurrency 100
			Where spawnbot_b
			SpawnCount 5
			MaxActive 5
			TotalCount 20
			WaitForAllDead "W1B"
			WaitBeforeStarting 8
			WaitBetweenSpawns 0
			TFBot
			{
				Class Heavyweapons
				Skill Normal
			}
		}
		WaveSpawn
		{
			Name "W1E"
			TotalCurrency 150
			Where spawnbot_a
			SpawnCount 1
			MaxActive 2
			TotalCount 3
			WaitForAllSpawned "W1D-1"
			WaitBeforeStarting 0
			WaitBetweenSpawns 20
			TFBot
			{
				Template T_TFBot_Giant_Pyro_Flare_Spammer
				Tag bot_giant
				Attributes AlwaysCrit
			}
		}
		WaveSpawn
		{
			Name "W1E"
			TotalCurrency 150
			Where spawnbot_b
			SpawnCount 1
			MaxActive 2
			TotalCount 3
			WaitForAllSpawned "W1D-1"
			WaitBeforeStarting 0
			WaitBetweenSpawns 20
			TFBot
			{
				Template T_TFGateBot_Giant_Pyro_Flare_Spammer_Crit
			}
		}
		WaveSpawn
		{
			TotalCount 0
			SpawnCount 0
			WaitForAllDead "W1E"
			FirstSpawnOutput
			{
				Target changeMain_pit
				Action Trigger
			}		
		}
		WaveSpawn
		{
			Name "W1G"
			TotalCurrency 200
			Where spawnbot_c
			SpawnCount 4
			MaxActive 12
			TotalCount 16
			WaitForAllDead "W1E"
			WaitBeforeStarting 8
			WaitBetweenSpawns 15
			Squad
			{
				TFBot
				{
					Template T_TFBot_Giant_Pyro
					Tag bot_giant
					Attributes AlwaysCrit
					Attributes Parachute
					Item "The B.A.S.E. Jumper"
				}
				TFBot
				{
					Template T_TFBot_Medic
					Tag bot_squad_member
					Attributes Parachute
					Item "The B.A.S.E. Jumper"
				}
				TFBot
				{
					Template T_TFBot_Medic
					Tag bot_squad_member
					Attributes Parachute
					Item "The B.A.S.E. Jumper"
				}
				TFBot
				{
					Template T_TFBot_Medic
					Tag bot_squad_member
					Attributes Parachute
					Item "The B.A.S.E. Jumper"
				}
			}
		}
		WaveSpawn
		{
			Name "W1G"
			TotalCurrency 150
			Where spawnbot_a
			SpawnCount 5
			MaxActive 8
			TotalCount 24
			WaitForAllDead "W1E"
			WaitBeforeStarting 8
			WaitBetweenSpawns 10
			TFBot
			{
				Template T_TFBot_Sniper_Huntsman
			}
		}
	}		
	Wave // WAVE 2
	{
		WaitWhenDone 60
		Sound "Announcer.IncomingMob"
		Checkpoint Yes
		StartWaveOutput
		{
			Target wave_start_relay
			Action Trigger
		}
		InitWaveOutput
		{
			Target initMain_sides
			Action Trigger
		}	
		DoneOutput					
		{
			Target pickfast
			Action PickRandomShuffle
		}
		WaveSpawn
		{
			TotalCount 0
			SpawnCount 0
			FirstSpawnOutput
			{
				Target changeMain_setAB
				Action Trigger
			}		
		}
		WaveSpawn
		{
			TotalCount 0
			SpawnCount 0
			FirstSpawnOutput
			{
				Target initA_setRandomMix
				Action Trigger
			}		
		}
		WaveSpawn
		{
			Name "W2A"
			TotalCurrency 100
			Where spawnbot_a
			SpawnCount 4
			MaxActive 4
			TotalCount 4
			WaitBeforeStarting 1
			WaitBetweenSpawns 0
			Squad
			{
				TFBot
				{
					Template T_TFBot_Giant_Soldier_Spammer
					Tag bot_giant
				}
				TFBot
				{
					Template T_TFBot_Medic
					Tag bot_squad_member
				}
				TFBot
				{
					Template T_TFBot_Medic
					Tag bot_squad_member
				}
				TFBot
				{
					Template T_TFBot_Medic
					Tag bot_squad_member
				}
			}
		}
		WaveSpawn
		{
			Name "W2A"
			TotalCurrency 100
			Where spawnbot_b
			SpawnCount 4
			MaxActive 4
			TotalCount 4
			WaitBeforeStarting 1
			WaitBetweenSpawns 0
			Squad
			{
				TFBot
				{
					Template T_TFBot_Giant_Soldier_Spammer
					Tag bot_giant
				}
				TFBot
				{
					Template T_TFBot_Medic
					Tag bot_squad_member
				}
				TFBot
				{
					Template T_TFBot_Medic
					Tag bot_squad_member
				}
				TFBot
				{
					Template T_TFBot_Medic
					Tag bot_squad_member
				}
			}
		}
		WaveSpawn
		{
			Name "W2A"
			TotalCurrency 100
			Where spawnbot_a
			SpawnCount 4
			MaxActive 4
			TotalCount 4
			WaitBeforeStarting 50
			WaitBetweenSpawns 0
			Squad
			{
				TFBot
				{
					Template T_TFGateBot_Giant_Soldier_Spammer
				}
				TFBot
				{
					Template T_TFBot_Medic
					Tag bot_squad_member
				}
				TFBot
				{
					Template T_TFBot_Medic
					Tag bot_squad_member
				}
				TFBot
				{
					Template T_TFBot_Medic
					Tag bot_squad_member
				}
			}
		}
		WaveSpawn
		{
			Name "W2A"
			TotalCurrency 100
			Where spawnbot_b
			SpawnCount 4
			MaxActive 4
			TotalCount 4
			WaitBeforeStarting 50
			WaitBetweenSpawns 0
			Squad
			{
				TFBot
				{
					Template T_TFGateBot_Giant_Soldier_Spammer
				}
				TFBot
				{
					Template T_TFBot_Medic
					Tag bot_squad_member
				}
				TFBot
				{
					Template T_TFBot_Medic
					Tag bot_squad_member
				}
				TFBot
				{
					Template T_TFBot_Medic
					Tag bot_squad_member
				}
			}
		}
		WaveSpawn
		{
			Name "W2A"
			TotalCurrency 100
			Where spawnbot_c
			SpawnCount 3
			MaxActive 6
			TotalCount 12
			WaitBeforeStarting 2
			WaitBetweenSpawns 12
			TFBot
			{
				Template T_TFGateBot_Pyro_AlwaysFireWeapon_Parachute
			}
		}
		WaveSpawn
		{
			Name "W2A"
			TotalCurrency 100
			Where spawnbot_c
			SpawnCount 2
			MaxActive 12
			TotalCount 16
			WaitBeforeStarting 50
			WaitBetweenSpawns 1
			Squad
			{
				TFBot
				{
					Class Pyro
					Skill Normal
					Attributes AlwaysFireWeapon
					Attributes Parachute
					Item "The B.A.S.E. Jumper"
				}
				TFBot
				{
					Template T_TFBot_Pyro_Flaregun
					Attributes Parachute
					Item "The B.A.S.E. Jumper"
					Tag bot_squad_member
				}
			}
		}
		WaveSpawn
		{
			Name "W2-Support"
			TotalCurrency 0
			Where spawnbot_c
			SpawnCount 1
			MaxActive 1
			TotalCount 1
			WaitBeforeStarting 20
			WaitBetweenSpawns 0
			Support 1
			TFBot
			{
				Template T_TFBot_Scout_Melee
				Attributes Parachute
				Item "The B.A.S.E. Jumper"
				ClassIcon scout_support
			}
		}
		WaveSpawn
		{
			TotalCount 0
			SpawnCount 0
			WaitForAllDead "W2A"
			FirstSpawnOutput
			{
				Target changeMain_roadside
				Action Trigger
			}		
		}
		WaveSpawn
		{
			Name "W2B-1"
			TotalCurrency 100
			Where spawnbot_b
			SpawnCount 3
			MaxActive 12
			TotalCount 32
			WaitForAllDead "W2A"
			WaitBeforeStarting 8
			WaitBetweenSpawns 4
			TFBot
			{
				Template T_TFBot_Demoman_Knight
			}
		}
		WaveSpawn
		{
			Name "W2B-2"
			TotalCurrency 100
			Where spawnbot_a
			SpawnCount 1
			MaxActive 1
			TotalCount 2
			WaitForAllDead "W2A"
			WaitBeforeStarting 15
			WaitBetweenSpawns 30
			TFBot
			{
				Template T_TFGateBot_Giant_Heavyweapons_Shotgun_Crit
			}
		}
		WaveSpawn
		{
			Name "W2C"
			TotalCurrency 100
			Where spawnbot_c
			SpawnCount 3
			MaxActive 3
			TotalCount 3
			WaitForAllSpawned "W2B-2"
			WaitBeforeStarting 20
			WaitBetweenSpawns 0
			Squad
			{
				TFBot
				{
					Template T_TFBot_Giant_Soldier_Extended_Concheror
					Tag bot_giant
				}
				TFBot
				{
					Template T_TFBot_Giant_Soldier_Extended_Concheror
					Tag bot_giant
				}
				TFBot
				{
					Template T_TFBot_Giant_Soldier_Extended_Concheror
					Tag bot_giant
				}
			}
		}
		WaveSpawn
		{
			Name "W2C"
			TotalCurrency 100
			Where spawnbot_a
			SpawnCount 1
			MaxActive 6
			TotalCount 20
			WaitForAllSpawned "W2B-2"
			WaitBeforeStarting 0
			WaitBetweenSpawns 0
			TFBot
			{
				Template T_TFGateBot_Scout_FAN
			}
		}
		WaveSpawn
		{
			Name "W2C"
			TotalCurrency 100
			Where spawnbot_b
			SpawnCount 3
			MaxActive 9
			TotalCount 22
			WaitForAllSpawned "W2B-2"
			WaitBeforeStarting 0
			WaitBetweenSpawns 6
			TFBot
			{
				Class Demoman
				Skill Normal
			}
		}
		WaveSpawn
		{
			TotalCount 0
			SpawnCount 0
			WaitForAllDead "W2C"
			FirstSpawnOutput
			{
				Target changeMain_sides
				Action Trigger
			}		
		}
		WaveSpawn
		{
			Name "W2D"
			TotalCurrency 100
			Where spawnbot_c
			SpawnCount 5
			MaxActive 8
			TotalCount 15
			WaitForAllDead "W2C"
			WaitBeforeStarting 8
			WaitBetweenSpawns 8
			TFBot
			{
				Template T_TFBot_Soldier_Extended_Battalion
			}
		}
		WaveSpawn
		{
			Name "W2D"
			TotalCurrency 100
			Where spawnbot_c
			SpawnCount 4
			MaxActive 10
			TotalCount 40
			WaitForAllDead "W2C"
			WaitBeforeStarting 12
			WaitBetweenSpawns 5
			TFBot
			{
				Template T_TFBot_Sniper_Huntsman
				Attributes Parachute
				Item "The B.A.S.E. Jumper"
			}
		}
		WaveSpawn
		{
			Name "W2D-SupScout"
			TotalCurrency 100
			Where spawnbot_a
			Where spawnbot_b
			SpawnCount 2
			MaxActive 4
			TotalCount 10
			WaitForAllDead "W2C"
			WaitBeforeStarting 12
			WaitBetweenSpawns 12
			TFBot
			{
				Template T_TFGateBot_Giant_Scout_Fast
			}
		}
		WaveSpawn
		{
			Name "W2D"
			TotalCurrency 100
			Where spawnbot_c
			SpawnCount 2
			MaxActive 2
			TotalCount 2
			WaitForAllSpawned "W2D-SupScout"
			WaitBeforeStarting 12
			WaitBetweenSpawns 0
			TFBot
			{
				Template T_TFBot_Giant_Heavyweapons
				Attributes Parachute
				Item "The B.A.S.E. Jumper"
				Tag bot_giant
			}
		}
		WaveSpawn
		{
			TotalCount 0
			SpawnCount 0
			WaitForAllDead "W2D"
			FirstSpawnOutput
			{
				Target changeMain_roadside
				Action Trigger
			}		
		}
		WaveSpawn
		{
			Name "W2G"
			TotalCurrency 100
			Where spawnbot_a
			SpawnCount 10
			MaxActive 10
			TotalCount 10
			WaitForAllDead "W2D"
			WaitBeforeStarting 8
			WaitBetweenSpawns 0
			TFBot
			{
				Template T_TFGateBot_Pyro_Expert
			}
		}
		WaveSpawn
		{
			Name "W2G"
			TotalCurrency 100
			Where spawnbot_a
			SpawnCount 10
			MaxActive 10
			TotalCount 10
			WaitForAllDead "W2D"
			WaitBeforeStarting 14
			WaitBetweenSpawns 0
			TFBot
			{
				Template T_TFGateBot_Demoman_Expert
			}
		}
		WaveSpawn
		{
			Name "W2G"
			TotalCurrency 100
			Where spawnbot_b
			SpawnCount 3
			MaxActive 6
			TotalCount 9
			WaitForAllDead "W2D"
			WaitBeforeStarting 25
			WaitBetweenSpawns 20
			Squad
			{
				TFBot
				{
					Template T_TFBot_Giant_Demoman
					Tag bot_giant
				}
				TFBot
				{
					Template T_TFBot_Medic
					Tag bot_squad_member
				}
				TFBot
				{
					Template T_TFBot_Medic
					Tag bot_squad_member
				}
			}
		}
		WaveSpawn
		{
			Name "W2G"
			TotalCurrency 100
			Where spawnbot_a
			SpawnCount 3
			MaxActive 6
			TotalCount 9
			WaitForAllDead "W2D"
			WaitBeforeStarting 30
			WaitBetweenSpawns 15
			Squad
			{
				TFBot
				{
					Template T_TFBot_Giant_Pyro
					Tag bot_giant
				}
				TFBot
				{
					Template T_TFBot_Medic
					Tag bot_squad_member
				}
				TFBot
				{
					Template T_TFBot_Medic
					Tag bot_squad_member
				}
			}
		}
		WaveSpawn
		{
			Name "W2G"
			TotalCurrency 100
			Where spawnbot_b
			SpawnCount 4
			MaxActive 8
			TotalCount 24
			WaitForAllDead "W2D"
			WaitBeforeStarting 25
			WaitBetweenSpawns 9
			TFBot
			{
				Template T_TFBot_Soldier_RocketPush
			}
		}
		WaveSpawn
		{
			TotalCount 0
			SpawnCount 0
			WaitForAllDead "W2G"
			FirstSpawnOutput
			{
				Target changeMain_sides
				Action Trigger
			}		
		}
		WaveSpawn
		{
			Name "W2H-1"
			TotalCurrency 100
			Where spawnbot_a
			SpawnCount 8
			MaxActive 16
			TotalCount 24
			WaitForAllDead "W2G"
			WaitBeforeStarting 8
			WaitBetweenSpawns 10
			TFBot
			{
				Template T_TFBot_Heavyweapons_Deflector
			}
		}
		WaveSpawn
		{
			Name "W2H-2"
			TotalCurrency 100
			Where spawnbot_c
			SpawnCount 2
			MaxActive 6
			TotalCount 6
			WaitForAllDead "W2G"
			WaitBeforeStarting 20
			WaitBetweenSpawns 30
			Squad
			{
				TFBot
				{
					Template T_TFBot_Giant_Soldier_SlowBarrage
					Attributes AlwaysCrit
					Attributes Parachute
					Item "The B.A.S.E. Jumper"
					Tag bot_giant
					//ClassIcon soldier_barrage_crit
				}
				TFBot
				{
					Template T_TFBot_Giant_Soldier_SlowBarrage
					Attributes AlwaysCrit
					Attributes Parachute
					Item "The B.A.S.E. Jumper"
					Tag bot_giant
					//ClassIcon soldier_barrage_crit
				}
			}
		}
		WaveSpawn
		{
			Name "W2I"
			TotalCurrency 100
			Where spawnbot_b
			SpawnCount 3
			MaxActive 8
			TotalCount 24
			WaitForAllSpawned "W2H-1"
			WaitBeforeStarting 15
			WaitBetweenSpawns 8
			TFBot
			{
				Template T_TFBot_Demoman_Knight_Persian
			}
		}
		WaveSpawn
		{
			Name "W2I"
			TotalCurrency 100
			Where spawnbot_b
			SpawnCount 9
			MaxActive 9
			TotalCount 27
			WaitForAllSpawned "W2H-1"
			WaitBeforeStarting 20
			WaitBetweenSpawns 0
			TFBot
			{
				Template T_TFBot_ScorchShot_FastShot
			}
		}
	}
	Wave // WAVE 3
	{
		WaitWhenDone 60
		Sound "Announcer.IncomingMob"
		Checkpoint Yes
		StartWaveOutput
		{
			Target wave_start_relay
			Action Trigger
		}
		InitWaveOutput
		{
			Target initMain_sides
			Action Trigger
		}	
		DoneOutput					
		{
			Target pickfast
			Action PickRandomShuffle
		}
		WaveSpawn
		{
			TotalCount 0
			SpawnCount 0
			FirstSpawnOutput
			{
				Target changeMain_setAB
				Action Trigger
			}		
		}
		WaveSpawn
		{
			TotalCount 0
			SpawnCount 0
			FirstSpawnOutput
			{
				Target initA_setRandomMix
				Action Trigger
			}		
		}
		WaveSpawn
		{
			Name "W3A"
			TotalCurrency 100
			Where spawnbot_a
			SpawnCount 2
			MaxActive 8
			TotalCount 24
			WaitBeforeStarting 1
			WaitBetweenSpawns 4
			TFBot
			{
				Class Pyro
				Skill Easy
				Attributes AlwaysFireWeapon
				Attributes AlwaysCrit
			}
		}
		WaveSpawn
		{
			Name "W3A"
			TotalCurrency 200
			Where spawnbot_a
			SpawnCount 1
			MaxActive 1
			TotalCount 1
			WaitBeforeStarting 6
			WaitBetweenSpawns 0
			TFBot
			{
				Template T_TFGateBot_Chief_Heavyweapons_GRU
			}
		}
		WaveSpawn
		{
			Name "W3A"
			TotalCurrency 100
			Where spawnbot_b
			SpawnCount 4
			MaxActive 8
			TotalCount 24
			WaitBeforeStarting 8
			WaitBetweenSpawns 8
			TFBot
			{
				Template T_TFGateBot_Scout_Normal
			}
		}
		WaveSpawn
		{
			Name "W3-Support"
			TotalCurrency 0
			Where spawnbot_c
			SpawnCount 1
			MaxActive 1
			TotalCount 1
			WaitBeforeStarting 20
			WaitBetweenSpawns 0
			Support 1
			TFBot
			{
				Template T_TFBot_Scout_Melee
				Attributes Parachute
				Item "The B.A.S.E. Jumper"
				ClassIcon scout_support
			}
		}
		WaveSpawn
		{
			TotalCount 0
			SpawnCount 0
			WaitForAllDead "W3A"
			FirstSpawnOutput
			{
				Target changeMain_roadside
				Action Trigger
			}		
		}
		WaveSpawn
		{
			Name "W3B"
			TotalCount 1
			WaitForAllDead "W3A"
			WaitBeforeStarting 8
			WaitBetweenSpawns 0
			TotalCurrency 150
			FirstSpawnOutput
			{
				Target boss_spawn_relay
				Action Trigger
			}
			Tank
			{
				Health 40000
				Speed 75
				Name "tankboss"
				Skin 1
				StartingPathTrackNode "tank_path_a_10"
				OnKilledOutput                        
				{
					Target boss_dead_please_fix_your_maps_blade_thank_you_relay
					Action Trigger
				}
				OnBombDroppedOutput
				{
					Target boss_deploy_relay
					Action Trigger
				}
			}
		}
		WaveSpawn
		{
			Name "W3B"
			TotalCurrency 200
			Where spawnbot_b
			SpawnCount 2
			MaxActive 2
			TotalCount 4
			WaitForAllDead "W3A"
			WaitBeforeStarting 15
			WaitBetweenSpawns 0
			Squad
			{
				TFBot
				{
					Template T_TFBot_Giant_Pyro
					Attributes AlwaysFireWeapon
					Tag bot_giant
				}
				TFBot
				{
					Template T_TFBot_Giant_Medic_Regen
					Tag bot_giant
					Tag bot_squad_member
				}
			}
		}
		WaveSpawn
		{
			Name "W3B"
			TotalCurrency 200
			Where spawnbot_a
			SpawnCount 2
			MaxActive 4
			TotalCount 4
			WaitForAllDead "W3A"
			WaitBeforeStarting 20
			WaitBetweenSpawns 40
			Squad
			{
				TFBot
				{
					Template T_TFGateBot_Giant_Soldier_Spammer_Reload_Crit
				}
				TFBot
				{
					Template T_TFGateBot_Giant_Soldier_Spammer_Reload_Crit
				}
			}
		}
		WaveSpawn
		{
			Name "W3B"
			TotalCurrency 150
			Where spawnbot_b
			SpawnCount 6
			MaxActive 10
			TotalCount 30
			WaitForAllDead "W3A"
			WaitBeforeStarting 15
			WaitBetweenSpawns 10
			TFBot
			{
				Template T_TFBot_Heavyweapons_Shotgun
			}
		}
		WaveSpawn
		{
			TotalCount 0
			SpawnCount 0
			WaitForAllDead "W3B"
			FirstSpawnOutput
			{
				Target changeMain_cliffside
				Action Trigger
			}		
		}
		WaveSpawn
		{
			Name "W3C-Sandman"
			TotalCurrency 200
			Where spawnbot_c
			SpawnCount 2
			MaxActive 2
			TotalCount 4
			WaitForAllDead "W3B"
			WaitBeforeStarting 8
			WaitBetweenSpawns 30
			TFBot
			{
				Template T_TFBot_Giant_Scout_Baseball_Armored
			}
		}
		WaveSpawn
		{
			Name "W3C"
			TotalCurrency 100
			Where spawnbot_a
			SpawnCount 1
			MaxActive 3
			TotalCount 9
			WaitForAllDead "W3B"
			WaitBeforeStarting 12
			WaitBetweenSpawns 6
			TFBot
			{
				Template T_TFBot_Scout_Shortstop
				Skill Expert
				Attributes AlwaysCrit
				Tag bot_giant
			}
		}
		WaveSpawn
		{
			Name "W3C"
			TotalCurrency 100
			Where spawnbot_b
			SpawnCount 3
			MaxActive 9
			TotalCount 27
			WaitForAllDead "W3B"
			WaitBeforeStarting 8
			WaitBetweenSpawns 4
			TFBot
			{
				Template T_TFGateBot_Soldier_RocketPush
			}
		}
		WaveSpawn
		{
			Name "W3C"
			TotalCurrency 100
			Where spawnbot_a
			SpawnCount 2
			MaxActive 2
			TotalCount 2
			WaitForAllSpawned "W3C-Sandman"
			WaitBeforeStarting 6
			WaitBetweenSpawns 0
			Squad
			{
				TFBot
				{
					Template T_TFBot_Giant_Heavyweapons_Deflector
					Attributes AlwaysCrit
					Tag bot_giant
				}
				TFBot
				{
					Template T_TFBot_Giant_Medic
					Tag bot_giant
					Tag bot_squad_member
				}
			}
		}
		WaveSpawn
		{
			TotalCount 0
			SpawnCount 0
			WaitForAllDead "W3C"
			FirstSpawnOutput
			{
				Target changeMain_sides
				Action Trigger
			}		
		}
		WaveSpawn
		{
			Name "W3G"
			TotalCurrency 100
			Where spawnbot_b
			SpawnCount 3
			MaxActive 3
			TotalCount 6
			WaitForAllDead "W3C"
			WaitBeforeStarting 8
			WaitBetweenSpawns 60
			Squad
			{
				TFBot
				{
					Template T_TFGateBot_Giant_Demoman_Crit
				}
				TFBot
				{
					Template T_TFGateBot_Giant_Soldier_RocketShotgun
					Tag bot_squad_member
				}
				TFBot
				{
					Template T_TFGateBot_Giant_Soldier_RocketShotgun
					Tag bot_squad_member
				}
			}
		}
		WaveSpawn
		{
			Name "W3G"
			TotalCurrency 100
			Where spawnbot_b
			SpawnCount 3
			MaxActive 3
			TotalCount 6
			WaitForAllDead "W3C"
			WaitBeforeStarting 25
			WaitBetweenSpawns 60
			Squad
			{
				TFBot
				{
					Template T_TFGateBot_Giant_Pyro
				}
				TFBot
				{
					Template T_TFGateBot_Giant_Soldier_RocketShotgun
					Tag bot_squad_member
				}
				TFBot
				{
					Template T_TFGateBot_Giant_Soldier_RocketShotgun
					Tag bot_squad_member
				}
			}
		}
		WaveSpawn
		{
			Name "W3G"
			TotalCurrency 100
			Where spawnbot_b
			SpawnCount 3
			MaxActive 3
			TotalCount 6
			WaitForAllDead "W3C"
			WaitBeforeStarting 45
			WaitBetweenSpawns 60
			Squad
			{
				TFBot
				{
					Template T_TFGateBot_Giant_Heavyweapons_Deflector
				}
				TFBot
				{
					Template T_TFGateBot_Giant_Soldier_RocketShotgun
					Tag bot_squad_member
				}
				TFBot
				{
					Template T_TFGateBot_Giant_Soldier_RocketShotgun
					Tag bot_squad_member
				}
			}
		}
		WaveSpawn
		{
			Name "W3G"
			TotalCurrency 150
			Where spawnbot_c
			SpawnCount 1
			MaxActive 4
			TotalCount 10
			WaitForAllDead "W3C"
			WaitBeforeStarting 8
			WaitBetweenSpawns 10
			TFBot
			{
				Template T_TFBot_Giant_Pyro_Flare_Spammer_FlareGun
				Attributes Parachute
				Item "The B.A.S.E. Jumper"
				Tag bot_giant
			}
		}
		WaveSpawn
		{
			Name "W3G"
			TotalCurrency 200
			Where spawnbot_c
			SpawnCount 3
			MaxActive 6
			TotalCount 30
			WaitForAllDead "W3C"
			WaitBeforeStarting 8
			WaitBetweenSpawns 8
			TFBot
			{
				Template T_TFBot_Scout_Bonk
				Name "Bonk Scout"
			}
		}
		WaveSpawn
		{
			TotalCount 0
			SpawnCount 0
			WaitForAllDead "W3G"
			FirstSpawnOutput
			{
				Target changeMain_pit
				Action Trigger
			}		
		}
		WaveSpawn
		{
			TotalCount 0
			SpawnCount 0
			WaitForAllDead "W3G"
			FirstSpawnOutput
			{
				Target intel
				Action ForceResetSilent
			}		
		}
		WaveSpawn
		{
			TotalCount 0
			SpawnCount 0
			WaitForAllDead "W3G"
			FirstSpawnOutput
			{
				Target intel2
				Action ForceResetSilent
			}		
		}
		WaveSpawn
		{
			TotalCount 0
			SpawnCount 0
			WaitForAllDead "W3G"
			FirstSpawnOutput
			{
				Target intel3
				Action ForceResetSilent
			}		
		}
		WaveSpawn
		{
			WaitForAllDead "W3G"
			WaitBeforeStarting 5
			FirstSpawnWarningSound "music\carousel_of_curses.wav"
		}
		WaveSpawn
		{
			Name "W3H"
			TotalCurrency 0
			Where spawnbot_c
			SpawnCount 1
			MaxActive 1
			TotalCount 1
			WaitForAllDead "W3G"
			WaitBeforeStarting 10
			WaitBetweenSpawns 0
			FirstSpawnWarningSound "soldier_mvm_m_paincrticialdeath03_reversed.mp3"
			TFBot
			{
				Template T_TFBot_Chief_Soldier_RocketPush_RocketShotgun_Spammer
			}
		}
		WaveSpawn
		{
			Name "W3H"
			TotalCurrency 150
			Where spawnbot_c
			SpawnCount 3
			MaxActive 15
			TotalCount 24
			WaitForAllDead "W3G"
			WaitBeforeStarting 20
			WaitBetweenSpawns 4
			TFBot
			{
				Class Pyro
				Skill Expert
				Attributes AlwaysCrit
				Attributes Parachute
				Item "The B.A.S.E. Jumper"
			}
		}
	}
}