Damage Gun Game v9.0.0
603 lines
settings
settings
{
{
	main
	main
	{
	{
		Description: "10K Damage Gun Game. Deal 10000 damage to win & 1000 to swap to the next hero from a list of 8 random DPS + 1 Tank (5th) & + 1 Supp (10th). No turrets. v8.3.0 Join my discord.gg/ZdukXgB Created by Jokaes#2263 -Original FFA by DarwinStreams Updated code & more: jokaes.github.io"
		Description: "Damage Gun Game. v9.0.0     Deal damage to swap to the next hero, complete the list to win. Totally customizable in workshop settings!!     No turrets.     Join my discord.gg/ZdukXgB Created by Jokaes#2263 -Original FFA by DarwinStreams Updated code & more: jokaes.github.io"
	}
	}
	lobby
	lobby
	{
	{
		Allow Players Who Are In Queue: Yes
		Map Rotation: After A Game
		Map Rotation: After A Game
		Max Spectators: 12
		Max Spectators: 12
		Return To Lobby: Never
		Return To Lobby: Never
	}
	}
	modes
	modes
	{
	{
		Deathmatch
		Deathmatch
		{
		{
			disabled maps
			enabled maps
			{
			{
				Black Forest
				Black Forest
				Blizzard World
				Castillo
				Château Guillard
				Château Guillard
				Ecopoint: Antarctica
				Ecopoint: Antarctica
				Eichenwalde
				Necropolis
				Hanamura
				Petra
				Hollywood
				King's Row
				Lijiang Control Center
				Lijiang Garden
				Lijiang Night Market
				Workshop Expanse Night
				Workshop Island Night
			}
			}
		}
		}
		General
		General
		{
		{
			Game Mode Start: Immediately
			Game Mode Start: Immediately
			Kill Feed: Off
			Kill Feed: Off
			Respawn As Random Hero: On
			Respawn As Random Hero: On
		}
		}
	}
	}
	heroes
	heroes
	{
	{
		General
		General
		{
		{
			Ashe
			Ashe
			{
			{
				Ultimate Ability B.O.B.: Off
				Ultimate Ability B.O.B.: Off
			}
			}
			Symmetra
			Symmetra
			{
			{
				Sentry Turret: Off
				Sentry Turret: Off
			}
			}
			Torbjörn
			Torbjörn
			{
			{
				Deploy Turret: Off
				Deploy Turret: Off
			}
			}
		}
		}
	}
	}
}
}
variables
variables
{
{
	global:
	global:
		0: heroList
		0: heroList
		1: timeCounter
		1: timeCounter
		2: gameIsAlmostDone
		2: gameIsAlmostDone
		3: leaderboard
		4: randomSectionOfMap
		4: randomSectionOfMap
		5: arenaMap1
		5: arenaMap1
		6: arenaMap2
		6: arenaMap2
		7: arenaMap3
		7: arenaMap3
		8: arenaMap4
		8: arenaMap4
		9: damageNecessaryForNextHero
		10: numberOfDpsHeroes
		11: numberOfTankHeroes
		12: numberOfSupportHeroes
		13: tankHeroesInTheMiddleOfTheList
		14: supportHeroesAtTheEndOfTheList
		15: heroListIt
		16: tempHeroList
		17: tempHeroListSupport
		18: tempHeroListTanks
		19: heroListIt2
	player:
	player:
		0: damageDone
		0: damageDone
		1: damageDisplayPos
		1: damageDisplayPos
		2: damageDisplayScale
		2: damageDisplayScale
		3: damageDisplayText
		3: damageDisplayText
		4: nextObjective
		4: nextObjective
		5: killYourselfPunishment
		5: killYourselfPunishment
		6: heroIcon
		6: heroIcon
		7: heroSwapEffect
		7: heroSwapEffect
}
}
disabled rule("10K Damage Gun Game v8.3.0")
disabled rule("Damage Gun Game v9.0.0")
{
{
	event
	event
	{
	{
		Ongoing - Global;
		Ongoing - Global;
	}
	}
}
}
rule("Disable bulit-in game mode & start timer variables {Game in progress GLOBAL}")
rule("Disable bulit-in game mode & start timer variables {Game in progress GLOBAL}")
{
{
	event
	event
	{
	{
		Ongoing - Global;
		Ongoing - Global;
	}
	}
	conditions
	conditions
	{
	{
		Is Game In Progress == True;
		Is Game In Progress == True;
	}
	}
	actions
	actions
	{
	{
		Disable Built-In Game Mode Scoring;
		Disable Built-In Game Mode Scoring;
		Disable Built-In Game Mode Completion;
		Disable Built-In Game Mode Completion;
		Disable Built-In Game Mode Announcer;
		Disable Built-In Game Mode Announcer;
		Disable Built-In Game Mode Music;
		Disable Built-In Game Mode Music;
		Pause Match Time;
		Pause Match Time;
		Global.timeCounter = 0.001;
		Global.timeCounter = 0.001;
		Global.gameIsAlmostDone = False;
		Global.gameIsAlmostDone = False;
		disabled Create HUD Text(Filtered Array(Host Player, Custom String("#Jokaes") == String("#{0}", Host Player)), Null, Custom String(
		disabled Create HUD Text(Filtered Array(Host Player, Custom String("#Jokaes") == String("#{0}", Host Player)), Null, Custom String(
			"svr load: {0} | svr avg: {1} | svr peak: {2}", Server Load, Server Load Average, Server Load Peak), Null, Top, -100, White,
			"svr load: {0} | svr avg: {1} | svr peak: {2}", Server Load, Server Load Average, Server Load Peak), Null, Top, -100, White,
			Lime Green, White, Visible To and String, Default Visibility);
			Lime Green, White, Visible To and String, Default Visibility);
		Create HUD Text(Filtered Array(All Players(All Teams), Server Load Peak < 85), Null, Custom String(
		Create HUD Text(Filtered Array(All Players(All Teams), Server Load Peak < 85), Null, Custom String(
			"svr load: {0} | svr avg: {1} | svr peak: {2}", Server Load, Server Load Average, Server Load Peak), Null, Top, -100, White,
			"svr load: {0} | svr avg: {1} | svr peak: {2}", Server Load, Server Load Average, Server Load Peak), Null, Top, -100, White,
			Lime Green, White, Visible To and String, Default Visibility);
			Lime Green, White, Visible To and String, Default Visibility);
		Create HUD Text(Filtered Array(All Players(All Teams), Server Load Peak >= 85 && Server Load Peak <= 170), Null, Custom String(
		Create HUD Text(Filtered Array(All Players(All Teams), Server Load Peak >= 85 && Server Load Peak <= 170), Null, Custom String(
			"svr load: {0} | svr avg: {1} | svr peak: {2}", Server Load, Server Load Average, Server Load Peak), Null, Top, -100, White,
			"svr load: {0} | svr avg: {1} | svr peak: {2}", Server Load, Server Load Average, Server Load Peak), Null, Top, -100, White,
			Orange, White, Visible To and String, Default Visibility);
			Orange, White, Visible To and String, Default Visibility);
		Create HUD Text(Filtered Array(All Players(All Teams), Server Load Peak > 170), Null, Custom String(
		Create HUD Text(Filtered Array(All Players(All Teams), Server Load Peak > 170), Null, Custom String(
			"svr load: {0} | svr avg: {1} | svr peak: {2}", Server Load, Server Load Average, Server Load Peak), Null, Top, -100, White,
			"svr load: {0} | svr avg: {1} | svr peak: {2}", Server Load, Server Load Average, Server Load Peak), Null, Top, -100, White,
			Red, White, Visible To and String, Default Visibility);
			Red, White, Visible To and String, Default Visibility);
	}
	}
}
}
rule("Damage track & display")
rule("Damage track & display")
{
{
	event
	event
	{
	{
		Player Dealt Damage;
		Player Dealt Damage;
		All;
		All;
		All;
		All;
	}
	}
	conditions
	conditions
	{
	{
		Victim != Attacker;
		Victim != Attacker;
		(Round To Integer(Event Damage, To Nearest) >= 1) == True;
		(Round To Integer(Event Damage, To Nearest) >= 1) == True;
	}
	}
	actions
	actions
	{
	{
		Event Player.damageDone += Event Damage;
		Event Player.damageDone += Event Damage;
		Set Player Score(Event Player, Event Player.damageDone);
		Set Player Score(Event Player, Event Player.damageDone);
		Event Player.nextObjective = (Round To Integer(Event Player.damageDone / 1000, Down) + 1) * 1000;
		Event Player.nextObjective = (Round To Integer(Event Player.damageDone / Global.damageNecessaryForNextHero, Down) + 1)
			* Global.damageNecessaryForNextHero;
		Destroy In-World Text(Event Player.damageDisplayText);
		Destroy In-World Text(Event Player.damageDisplayText);
		Wait(0.016, Ignore Condition);
		Wait(0.016, Ignore Condition);
		Event Player.damageDisplayPos = Eye Position(Victim);
		Event Player.damageDisplayPos = Eye Position(Victim);
		Event Player.damageDisplayScale = Event Damage / 50;
		Event Player.damageDisplayScale = Event Damage / 50;
		Skip If(Event Player.damageDisplayScale >= 1, 1);
		Skip If(Event Player.damageDisplayScale >= 1, 1);
		Event Player.damageDisplayScale = 1;
		Event Player.damageDisplayScale = 1;
		Skip If(Event Was Critical Hit, 1);
		Skip If(Event Was Critical Hit, 1);
		Create In-World Text(Event Player, Round To Integer(Event Damage, To Nearest), Event Player.damageDisplayPos,
		Create In-World Text(Event Player, Round To Integer(Event Damage, To Nearest), Event Player.damageDisplayPos,
			Event Player.damageDisplayScale, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
			Event Player.damageDisplayScale, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
		Skip If(!Event Was Critical Hit, 1);
		Skip If(!Event Was Critical Hit, 1);
		Create In-World Text(Event Player, Round To Integer(Event Damage, To Nearest), Event Player.damageDisplayPos,
		Create In-World Text(Event Player, Round To Integer(Event Damage, To Nearest), Event Player.damageDisplayPos,
			Event Player.damageDisplayScale, Clip Against Surfaces, Visible To Position and String, Red, Default Visibility);
			Event Player.damageDisplayScale, Clip Against Surfaces, Visible To Position and String, Red, Default Visibility);
		Event Player.damageDisplayText = Last Text ID;
		Event Player.damageDisplayText = Last Text ID;
	}
	}
}
}
disabled rule("Leaderboard {Reevaluation}")
{
	event
	{
		Ongoing - Global;
	}
	actions
	{
		Global.leaderboard = Sorted Array(All Players(All Teams), Current Array Element.damageDone);
		Wait(1, Ignore Condition);
		Loop;
	}
}
disabled rule("Leaderboard {HUD}")
{
	event
	{
		Ongoing - Global;
	}
	actions
	{
		Create HUD Text(All Players(All Teams), Null, Null, Custom String(" "), Left, -1, White, White, White, Visible To and String,
			Default Visibility);
		Create HUD Text(Filtered Array(All Players(All Teams), Global.leaderboard[0] != Null), Null, Null, String("{0} : {1} : {2}",
			Hero Icon String(Hero Of(Global.leaderboard[0])), Global.leaderboard[0], Round To Integer(Global.leaderboard[0].damageDone,
			To Nearest)), Left, 11, White, White, White, Visible To and String, Default Visibility);
		Create HUD Text(Filtered Array(All Players(All Teams), Global.leaderboard[1] != Null), Null, Null, String("{0} : {1} : {2}",
			Hero Icon String(Hero Of(Global.leaderboard[1])), Global.leaderboard[1], Round To Integer(Global.leaderboard[1].damageDone,
			To Nearest)), Left, 10, White, White, White, Visible To and String, Default Visibility);
		Create HUD Text(Filtered Array(All Players(All Teams), Global.leaderboard[2] != Null), Null, Null, String("{0} : {1} : {2}",
			Hero Icon String(Hero Of(Global.leaderboard[2])), Global.leaderboard[2], Round To Integer(Global.leaderboard[2].damageDone,
			To Nearest)), Left, 9, White, White, White, Visible To and String, Default Visibility);
		Create HUD Text(Filtered Array(All Players(All Teams), Global.leaderboard[3] != Null), Null, Null, String("{0} : {1} : {2}",
			Hero Icon String(Hero Of(Global.leaderboard[3])), Global.leaderboard[3], Round To Integer(Global.leaderboard[3].damageDone,
			To Nearest)), Left, 8, White, White, White, Visible To and String, Default Visibility);
		Create HUD Text(Filtered Array(All Players(All Teams), Global.leaderboard[4] != Null), Null, Null, String("{0} : {1} : {2}",
			Hero Icon String(Hero Of(Global.leaderboard[4])), Global.leaderboard[4], Round To Integer(Global.leaderboard[4].damageDone,
			To Nearest)), Left, 7, White, White, White, Visible To and String, Default Visibility);
		Create HUD Text(Filtered Array(All Players(All Teams), Global.leaderboard[5] != Null), Null, Null, String("{0} : {1} : {2}",
			Hero Icon String(Hero Of(Global.leaderboard[5])), Global.leaderboard[5], Round To Integer(Global.leaderboard[5].damageDone,
			To Nearest)), Left, 6, White, White, White, Visible To and String, Default Visibility);
		Create HUD Text(Filtered Array(All Players(All Teams), Global.leaderboard[6] != Null), Null, Null, String("{0} : {1} : {2}",
			Hero Icon String(Hero Of(Global.leaderboard[6])), Global.leaderboard[6], Round To Integer(Global.leaderboard[6].damageDone,
			To Nearest)), Left, 5, White, White, White, Visible To and String, Default Visibility);
		Create HUD Text(Filtered Array(All Players(All Teams), Global.leaderboard[7] != Null), Null, Null, String("{0} : {1} : {2}",
			Hero Icon String(Hero Of(Global.leaderboard[7])), Global.leaderboard[7], Round To Integer(Global.leaderboard[7].damageDone,
			To Nearest)), Left, 4, White, White, White, Visible To and String, Default Visibility);
		Create HUD Text(Filtered Array(All Players(All Teams), Global.leaderboard[8] != Null), Null, Null, String("{0} : {1} : {2}",
			Hero Icon String(Hero Of(Global.leaderboard[8])), Global.leaderboard[8], Round To Integer(Global.leaderboard[8].damageDone,
			To Nearest)), Left, 3, White, White, White, Visible To and String, Default Visibility);
		Create HUD Text(Filtered Array(All Players(All Teams), Global.leaderboard[9] != Null), Null, Null, String("{0} : {1} : {2}",
			Hero Icon String(Hero Of(Global.leaderboard[9])), Global.leaderboard[9], Round To Integer(Global.leaderboard[9].damageDone,
			To Nearest)), Left, 2, White, White, White, Visible To and String, Default Visibility);
		Create HUD Text(Filtered Array(All Players(All Teams), Global.leaderboard[10] != Null), Null, Null, String("{0} : {1} : {2}",
			Hero Icon String(Hero Of(Global.leaderboard[10])), Global.leaderboard[10], Round To Integer(Global.leaderboard[10].damageDone,
			To Nearest)), Left, 1, White, White, White, Visible To and String, Default Visibility);
		Create HUD Text(Filtered Array(All Players(All Teams), Global.leaderboard[11] != Null), Null, Null, String("{0} : {1} : {2}",
			Hero Icon String(Hero Of(Global.leaderboard[11])), Global.leaderboard[11], Round To Integer(Global.leaderboard[11].damageDone,
			To Nearest)), Left, 0, White, White, White, Visible To and String, Default Visibility);
	}
}
rule("Take away score if kill yourself {Punishment}")
rule("Take away score if kill yourself {Punishment}")
{
{
	event
	event
	{
	{
		Player Died;
		Player Died;
		All;
		All;
		All;
		All;
	}
	}
	conditions
	conditions
	{
	{
		Attacker == Event Player;
		Attacker == Event Player;
	}
	}
	actions
	actions
	{
	{
		Event Player.killYourselfPunishment = True;
		Event Player.killYourselfPunishment = True;
		Small Message(Event Player, String("{0} {1} {2}", String("You Lose"), Round To Integer(Event Damage, To Nearest), Custom String(
		Small Message(Event Player, String("{0} {1} {2}", String("You Lose"), Round To Integer(Event Damage, To Nearest), Custom String(
			"{0} (SUICIDE)", String("Points"))));
			"{0} (SUICIDE)", String("Points"))));
		Event Player.damageDone -= Event Damage;
		Event Player.damageDone -= Event Damage;
		Set Player Score(Event Player, Event Player.damageDone);
		Set Player Score(Event Player, Event Player.damageDone);
		Event Player.nextObjective = (Round To Integer(Event Player.damageDone / 1000, Down) + 1) * 1000;
		Event Player.nextObjective = (Round To Integer(Event Player.damageDone / Global.damageNecessaryForNextHero, Down) + 1)
			* Global.damageNecessaryForNextHero;
		Wait(0.032, Ignore Condition);
		Wait(0.032, Ignore Condition);
		Event Player.killYourselfPunishment = False;
		Event Player.killYourselfPunishment = False;
	}
	}
}
}
rule("Take away score if damage yourself {Punishment}")
rule("Take away score if damage yourself {Punishment}")
{
{
	event
	event
	{
	{
		Player Dealt Damage;
		Player Dealt Damage;
		All;
		All;
		All;
		All;
	}
	}
	conditions
	conditions
	{
	{
		Attacker == Victim;
		Attacker == Victim;
	}
	}
	actions
	actions
	{
	{
		Wait(0.016, Ignore Condition);
		Wait(0.016, Ignore Condition);
		Abort If(Event Player.killYourselfPunishment == True);
		Abort If(Event Player.killYourselfPunishment == True);
		Skip If(Event Damage <= 0.500, 1);
		Skip If(Event Damage <= 0.500, 1);
		Small Message(Event Player, String("{0} {1} {2}", String("You Lose"), Round To Integer(Event Damage, To Nearest), Custom String(
		Small Message(Event Player, String("{0} {1} {2}", String("You Lose"), Round To Integer(Event Damage, To Nearest), Custom String(
			"{0} (SELF-DAMAGE)", String("Points"))));
			"{0} (SELF-DAMAGE)", String("Points"))));
		Event Player.damageDone -= Event Damage;
		Event Player.damageDone -= Event Damage;
		Set Player Score(Event Player, Event Player.damageDone);
		Set Player Score(Event Player, Event Player.damageDone);
		Event Player.nextObjective = (Round To Integer(Event Player.damageDone / 1000, Down) + 1) * 1000;
		Event Player.nextObjective = (Round To Integer(Event Player.damageDone / Global.damageNecessaryForNextHero, Down) + 1)
			* Global.damageNecessaryForNextHero;
	}
	}
}
}
rule("Victory")
rule("Victory")
{
{
	event
	event
	{
	{
		Ongoing - Each Player;
		Ongoing - Each Player;
		All;
		All;
		All;
		All;
	}
	}
	conditions
	conditions
	{
	{
		Event Player.damageDone >= 10000;
		Event Player.damageDone >= Global.damageNecessaryForNextHero * Count Of(Global.heroList);
	}
	}
	actions
	actions
	{
	{
		Big Message(All Players(All Teams), Custom String("GG. Thanks for playing {0}", Icon String(Happy)));
		Big Message(All Players(All Teams), Custom String("GG. Thanks for playing {0}", Icon String(Happy)));
		Create Effect(All Players(All Teams), Sparkles, White, Event Player, 1.500, Visible To Position and Radius);
		Create Effect(All Players(All Teams), Sparkles, White, Event Player, 1.500, Visible To Position and Radius);
		Create Effect(All Players(All Teams), Sparkles, Yellow, Event Player, 1.500, Visible To Position and Radius);
		Create Effect(All Players(All Teams), Sparkles, Yellow, Event Player, 1.500, Visible To Position and Radius);
		Create Effect(All Players(All Teams), Sparkles, Green, Event Player, 1.500, Visible To Position and Radius);
		Create Effect(All Players(All Teams), Sparkles, Green, Event Player, 1.500, Visible To Position and Radius);
		Create Effect(All Players(All Teams), Sparkles, Purple, Event Player, 1.500, Visible To Position and Radius);
		Create Effect(All Players(All Teams), Sparkles, Purple, Event Player, 1.500, Visible To Position and Radius);
		Create Effect(All Players(All Teams), Sparkles, Red, Event Player, 1.500, Visible To Position and Radius);
		Create Effect(All Players(All Teams), Sparkles, Red, Event Player, 1.500, Visible To Position and Radius);
		Create Effect(All Players(All Teams), Sparkles, Blue, Event Player, 1.500, Visible To Position and Radius);
		Create Effect(All Players(All Teams), Sparkles, Blue, Event Player, 1.500, Visible To Position and Radius);
		Create In-World Text(All Players(All Teams), Custom String("{0} {0}!", String("Winner")), Event Player, 2, Clip Against Surfaces,
		Create In-World Text(All Players(All Teams), Custom String("{0} {0}!", String("Winner")), Event Player, 2, Clip Against Surfaces,
			Visible To Position and String, White, Default Visibility);
			Visible To Position and String, White, Default Visibility);
		Set Gravity(All Players(All Teams), 0.100);
		Set Gravity(All Players(All Teams), 0.100);
		Declare Player Victory(Event Player);
		Declare Player Victory(Event Player);
	}
	}
}
}
rule("In assembling {Skip}")
rule("In assembling {Skip}")
{
{
	event
	event
	{
	{
		Ongoing - Global;
		Ongoing - Global;
	}
	}
	conditions
	conditions
	{
	{
		Is Assembling Heroes == True;
		Is Assembling Heroes == True;
	}
	}
	actions
	actions
	{
	{
		Set Match Time(0);
		Set Match Time(0);
	}
	}
}
}
rule("In setup {Reset damageDone}")
rule("In setup {Reset damageDone}")
{
{
	event
	event
	{
	{
		Ongoing - Each Player;
		Ongoing - Each Player;
		All;
		All;
		All;
		All;
	}
	}
	conditions
	conditions
	{
	{
		Is In Setup == True;
		Is In Setup == True;
	}
	}
	actions
	actions
	{
	{
		Event Player.damageDone = 0;
		Event Player.damageDone = 0;
	}
	}
}
}
rule("Hero List - 8 Random DPS + 1 Random Tank (5th) + 1 Random Support (10th) = 29 billons of lists")
rule("Workshop Settings")
{
	event
	{
		Ongoing - Global;
	}
	actions
	{
		Global.heroList = All Damage Heroes;
		Global.heroList = Randomized Array(Global.heroList);
		Global.heroList = Array Slice(Global.heroList, 0, 9);
		Global.heroList[4] = Random Value In Array(All Tank Heroes);
		Modify Global Variable(heroList, Append To Array, Random Value In Array(All Support Heroes));
	}
}
disabled rule("Hero List - 10 Random DPS - Turrets abilities banned")
{
{
	event
	event
	{
	{
		Ongoing - Global;
		Ongoing - Global;
	}
	}
	actions
	actions
	{
	{
		Global.heroList = All Damage Heroes;
		Global.damageNecessaryForNextHero = Workshop Setting Integer(Custom String("Heroes Settings"), Custom String(
		Global.heroList = Randomized Array(Global.heroList);
			"Damage necessary for next hero [1000]"), 1000, 250, 1000);
		Global.heroList = Array Slice(Global.heroList, 0, 10);
		Global.numberOfDpsHeroes = Workshop Setting Integer(Custom String("Heroes Settings"), Custom String(
			"Number of Damage heroes [4]"), 4, 0, 10);
		Global.numberOfTankHeroes = Workshop Setting Integer(Custom String("Heroes Settings"), Custom String(
			"Number of Tank heroes [1]"), 1, 0, 8);
		Global.numberOfSupportHeroes = Workshop Setting Integer(Custom String("Heroes Settings"), Custom String(
			"Number of Support heroes [1]"), 1, 0, 7);
		Global.tankHeroesInTheMiddleOfTheList = Workshop Setting Toggle(Custom String("Heroes Settings"), Custom String(
			"Tanks in the middle of the list [ON]"), True);
		Global.supportHeroesAtTheEndOfTheList = Workshop Setting Toggle(Custom String("Heroes Settings"), Custom String(
			"Supports at the end of the list [ON]"), True);
	}
	}
}
}
disabled rule("Hero List - 10 Random Heroes (ALL HEROES) - Turrets abilities banned")
rule("Hero List Generation")
{
{
	event
	event
	{
	{
		Ongoing - Global;
		Ongoing - Global;
	}
	}
	actions
	actions
	{
	{
		Global.heroList = All Heroes;
		Global.heroList = Empty Array;
		Global.heroList = Randomized Array(Global.heroList);
		Global.tempHeroList = All Damage Heroes;
		Global.heroList = Array Slice(Global.heroList, 0, 10);
		Global.tempHeroList = Randomized Array(Global.tempHeroList);
		For Global Variable(heroListIt, 0, Global.numberOfDpsHeroes, 1);
			Modify Global Variable(heroList, Append To Array, Global.tempHeroList[Global.heroListIt]);
		End;
		Global.tempHeroListSupport = All Support Heroes;
		Global.tempHeroListSupport = Randomized Array(Global.tempHeroListSupport);
		Global.tempHeroListSupport = Array Slice(Global.tempHeroListSupport, 0, Global.numberOfSupportHeroes);
		Global.tempHeroListTanks = All Tank Heroes;
		Global.tempHeroListTanks = Randomized Array(Global.tempHeroListTanks);
		Global.tempHeroListTanks = Array Slice(Global.tempHeroListTanks, 0, Global.numberOfTankHeroes);
		Modify Global Variable(heroList, Append To Array, Global.tempHeroListSupport);
		If(!Global.supportHeroesAtTheEndOfTheList);
			Global.heroList = Randomized Array(Global.heroList);
		End;
		If(!Global.tankHeroesInTheMiddleOfTheList);
			If(!Global.supportHeroesAtTheEndOfTheList);
				Modify Global Variable(heroList, Append To Array, Global.tempHeroListTanks);
				Global.heroList = Randomized Array(Global.heroList);
			Else;
				Global.tempHeroList = Global.heroList;
				Global.heroList = Empty Array;
				Global.heroList = Array Slice(Global.tempHeroList, 0, Global.numberOfDpsHeroes);
				Modify Global Variable(heroList, Append To Array, Global.tempHeroListTanks);
				Global.heroList = Randomized Array(Global.heroList);
				Modify Global Variable(heroList, Append To Array, Global.tempHeroListSupport);
			End;
		Else;
			Global.tempHeroList = Global.heroList;
			Global.heroList = Empty Array;
			For Global Variable(heroListIt, 0, Count Of(All Tank Heroes) + Count Of(All Damage Heroes) + Count Of(All Support Heroes), 1);
				If(Global.heroListIt == Round To Integer((Count Of(Global.tempHeroList) - 1) / 2, Up));
					For Global Variable(heroListIt2, 0, Global.numberOfTankHeroes, 1);
						Modify Global Variable(heroList, Append To Array, Global.tempHeroListTanks[Global.heroListIt2]);
					End;
				End;
				Modify Global Variable(heroList, Append To Array, Global.tempHeroList[Global.heroListIt]);
			End;
		End;
		Global.tempHeroList = Global.heroList;
		Global.heroList = Empty Array;
		For Global Variable(heroListIt, 0, Count Of(All Tank Heroes) + Count Of(All Damage Heroes) + Count Of(All Support Heroes), 1);
			If(Global.tempHeroList[Global.heroListIt] == Null);
				Break;
			End;
			Modify Global Variable(heroList, Append To Array, Global.tempHeroList[Global.heroListIt]);
		End;
	}
	}
}
}
rule("Preload Heroes")
rule("Preload Heroes")
{
{
	event
	event
	{
	{
		Ongoing - Each Player;
		Ongoing - Each Player;
		All;
		All;
		All;
		All;
	}
	}
	actions
	actions
	{
	{
		Preload Hero(Event Player, Global.heroList);
		Preload Hero(Event Player, Global.heroList);
	}
	}
}
}
rule("In Setup -> Starting Hero -> HeroList[0]")
rule("In Setup -> Starting Hero -> HeroList[0]")
{
{
	event
	event
	{
	{
		Ongoing - Each Player;
		Ongoing - Each Player;
		All;
		All;
		All;
		All;
	}
	}
	conditions
	conditions
	{
	{
		Is In Setup == True;
		Is In Setup == True;
	}
	}
	actions
	actions
	{
	{
		Start Forcing Player To Be Hero(Event Player, First Of(Global.heroList));
		Start Forcing Player To Be Hero(Event Player, First Of(Global.heroList));
		Event Player.nextObjective = 1000;
		Event Player.nextObjective = Global.damageNecessaryForNextHero;
	}
	}
}
}
rule("In Game in progress -> Starting Hero -> HeroList[0]")
rule("In Game in progress -> Starting Hero -> HeroList[0]")
{
{
	event
	event
	{
	{
		Ongoing - Each Player;
		Ongoing - Each Player;
		All;
		All;
		All;
		All;
	}
	}
	conditions
	conditions
	{
	{
		Is Game In Progress == True;
		Is Game In Progress == True;
	}
	}
	actions
	actions
	{
	{
		Start Forcing Player To Be Hero(Event Player, First Of(Global.heroList));
		Start Forcing Player To Be Hero(Event Player, First Of(Global.heroList));
		Event Player.nextObjective = 1000;
		Event Player.nextObjective = Global.damageNecessaryForNextHero;
	}
	}
}
}
rule("Start forcing next hero")
rule("Start forcing next hero")
{
{
	event
	event
	{
	{
		Ongoing - Each Player;
		Ongoing - Each Player;
		All;
		All;
		All;
		All;
	}
	}
	conditions
	conditions
	{
	{
		Is Alive(Event Player) == True;
		Is Alive(Event Player) == True;
		Hero Of(Event Player) != Global.heroList[Event Player.nextObjective / 1000 - 1];
		Hero Of(Event Player) != Global.heroList[Event Player.nextObjective / Global.damageNecessaryForNextHero - 1];
		Event Player.damageDone > 0;
		Event Player.damageDone > 0;
	}
	}
	actions
	actions
	{
	{
		Event Player.nextObjective = (Round To Integer(Event Player.damageDone / 1000, Down) + 1) * 1000;
		Event Player.nextObjective = (Round To Integer(Event Player.damageDone / Global.damageNecessaryForNextHero, Down) + 1)
		Start Forcing Player To Be Hero(Event Player, Global.heroList[Event Player.nextObjective / 1000 - 1]);
			* Global.damageNecessaryForNextHero;
		Start Forcing Player To Be Hero(Event Player, Global.heroList[Event Player.nextObjective / Global.damageNecessaryForNextHero - 1]);
		Small Message(Event Player, String("{0}: {1}", String("{0} {1}", String("You"), String("Hero")), Hero Icon String(
		Small Message(Event Player, String("{0}: {1}", String("{0} {1}", String("You"), String("Hero")), Hero Icon String(
			Global.heroList[Event Player.nextObjective / 1000 - 1])));
			Global.heroList[Event Player.nextObjective / Global.damageNecessaryForNextHero - 1])));
		Create In-World Text(All Players(All Teams), Hero Icon String(Global.heroList[Event Player.nextObjective / 1000 - 1]),
		Create In-World Text(All Players(All Teams), Hero Icon String(
			Event Player, 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
			Global.heroList[Event Player.nextObjective / Global.damageNecessaryForNextHero - 1]), Event Player, 1, Clip Against Surfaces,
			Visible To Position and String, White, Default Visibility);
		Event Player.heroIcon = Last Text ID;
		Event Player.heroIcon = Last Text ID;
		Wait(0.125, Ignore Condition);
		Wait(0.125, Ignore Condition);
		Play Effect(All Players(All Teams), Good Pickup Effect, Purple, Event Player, 1);
		Play Effect(All Players(All Teams), Good Pickup Effect, Purple, Event Player, 1);
		Create Effect(All Players(All Teams), Sparkles, Purple, Event Player, 1, Visible To Position and Radius);
		Create Effect(All Players(All Teams), Sparkles, Purple, Event Player, 1, Visible To Position and Radius);
		Event Player.heroSwapEffect = Last Created Entity;
		Event Player.heroSwapEffect = Last Created Entity;
		Wait(1.250, Ignore Condition);
		Wait(1.250, Ignore Condition);
		Destroy In-World Text(Event Player.heroIcon);
		Destroy In-World Text(Event Player.heroIcon);
		Destroy Effect(Event Player.heroSwapEffect);
		Destroy Effect(Event Player.heroSwapEffect);
	}
	}
}
}
rule("in da hood TEXT")
rule("in da hood TEXT")
{
{
	event
	event
	{
	{
		Ongoing - Global;
		Ongoing - Global;
	}
	}
	actions
	conditions
	{
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == First Of(Global.heroList)), Null, Null,
			String("{0} -> {1}", 1, String("{0} {1}", Hero Icon String(First Of(Global.heroList)), Count Of(Players On Hero(First Of(
			Global.heroList), All Teams)))), Right, 1, White, White, Blue, Visible To and String, Visible Never);
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != First Of(Global.heroList)), Null, Null,
			String("{0} -> {1}", 1, String("{0} {1}", Hero Icon String(First Of(Global.heroList)), Count Of(Players On Hero(First Of(
			Global.heroList), All Teams)))), Right, 1, White, White, White, Visible To and String, Visible Always);
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[1]), Null, Null, String(
			"{0} -> {1}", 2, String("{0} {1}", Hero Icon String(Global.heroList[1]), Count Of(Players On Hero(Global.heroList[1],
			All Teams)))), Right, 2, White, White, Blue, Visible To and String, Visible Never);
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[1]), Null, Null, String(
			"{0} -> {1}", 2, String("{0} {1}", Hero Icon String(Global.heroList[1]), Count Of(Players On Hero(Global.heroList[1],
			All Teams)))), Right, 2, White, White, White, Visible To and String, Visible Always);
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[2]), Null, Null, String(
			"{0} -> {1}", 3, String("{0} {1}", Hero Icon String(Global.heroList[2]), Count Of(Players On Hero(Global.heroList[2],
			All Teams)))), Right, 3, White, White, Blue, Visible To and String, Visible Never);
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[2]), Null, Null, String(
			"{0} -> {1}", 3, String("{0} {1}", Hero Icon String(Global.heroList[2]), Count Of(Players On Hero(Global.heroList[2],
			All Teams)))), Right, 3, White, White, White, Visible To and String, Visible Always);
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[3]), Null, Null, String(
			"{0} -> {1}", 4, String("{0} {1}", Hero Icon String(Global.heroList[3]), Count Of(Players On Hero(Global.heroList[3],
			All Teams)))), Right, 4, White, White, Blue, Visible To and String, Visible Never);
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[3]), Null, Null, String(
			"{0} -> {1}", 4, String("{0} {1}", Hero Icon String(Global.heroList[3]), Count Of(Players On Hero(Global.heroList[3],
			All Teams)))), Right, 4, White, White, White, Visible To and String, Visible Always);
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[4]), Null, Null, String(
			"{0} -> {1}", 5, String("{0} {1}", Hero Icon String(Global.heroList[4]), Count Of(Players On Hero(Global.heroList[4],
			All Teams)))), Right, 5, White, White, Turquoise, Visible To and String, Visible Never);
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[4]), Null, Null, String(
			"{0} -> {1}", 5, String("{0} {1}", Hero Icon String(Global.heroList[4]), Count Of(Players On Hero(Global.heroList[4],
			All Teams)))), Right, 5, White, White, Orange, Visible To and String, Visible Always);
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[5]), Null, Null, String(
			"{0} -> {1}", 6, String("{0} {1}", Hero Icon String(Global.heroList[5]), Count Of(Players On Hero(Global.heroList[5],
			All Teams)))), Right, 6, White, White, Blue, Visible To and String, Visible Never);
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[5]), Null, Null, String(
			"{0} -> {1}", 6, String("{0} {1}", Hero Icon String(Global.heroList[5]), Count Of(Players On Hero(Global.heroList[5],
			All Teams)))), Right, 6, White, White, White, Visible To and String, Visible Always);
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[6]), Null, Null, String(
			"{0} -> {1}", 7, String("{0} {1}", Hero Icon String(Global.heroList[6]), Count Of(Players On Hero(Global.heroList[6],
			All Teams)))), Right, 7, White, White, Blue, Visible To and String, Visible Never);
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[6]), Null, Null, String(
			"{0} -> {1}", 7, String("{0} {1}", Hero Icon String(Global.heroList[6]), Count Of(Players On Hero(Global.heroList[6],
			All Teams)))), Right, 7, White, White, White, Visible To and String, Visible Always);
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[7]), Null, Null, String(
			"{0} -> {1}", 8, String("{0} {1}", Hero Icon String(Global.heroList[7]), Count Of(Players On Hero(Global.heroList[7],
			All Teams)))), Right, 8, White, White, Blue, Visible To and String, Visible Never);
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[7]), Null, Null, String(
			"{0} -> {1}", 8, String("{0} {1}", Hero Icon String(Global.heroList[7]), Count Of(Players On Hero(Global.heroList[7],
			All Teams)))), Right, 8, White, White, White, Visible To and String, Visible Always);
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[8]), Null, Null, String(
			"{0} -> {1}", 9, String("{0} {1}", Hero Icon String(Global.heroList[8]), Count Of(Players On Hero(Global.heroList[8],
			All Teams)))), Right, 9, White, White, Blue, Visible To and String, Visible Never);
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[8]), Null, Null, String(
			"{0} -> {1}", 9, String("{0} {1}", Hero Icon String(Global.heroList[8]), Count Of(Players On Hero(Global.heroList[8],
			All Teams)))), Right, 9, White, White, White, Visible To and String, Visible Always);
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[9]), Null, Null, String(
			"{0} -> {1}", 10, String("{0} {1}", Hero Icon String(Global.heroList[9]), Count Of(Players On Hero(Global.heroList[9],
			All Teams)))), Right, 10, White, White, Turquoise, Visible To and String, Visible Never);
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[9]), Null, Null, String(
			"{0} -> {1}", 10, String("{0} {1}", Hero Icon String(Global.heroList[9]), Count Of(Players On Hero(Global.heroList[9],
			All Teams)))), Right, 10, White, White, Orange, Visible To and String, Visible Always);
	}
}
disabled rule("in da hood HEADER")
{
	event
	{
	{
		Ongoing - Global;
		Is Game In Progress == True;
	}
	}
	actions
	actions
	{
	{
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == First Of(Global.heroList)), String(
		If(Global.heroList[0] != Null);
			"{0} -> {1}", 1, String("{0} {1}", Hero Icon String(First Of(Global.heroList)), Count Of(Players On Hero(First Of(
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[0]), Null, Null, String(
			Global.heroList), All Teams)))), Null, Null, Right, 1, Blue, White, White, Visible To and String, Default Visibility);
				"{0} -> {1}", 1, String("{0} {1}", Hero Icon String(Global.heroList[0]), Count Of(Players On Hero(Global.heroList[0],
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != First Of(Global.heroList)), String(
				All Teams)))), Right, 1, White, White, Blue, Visible To and String, Visible Never);
			"{0} -> {1}", 1, String("{0} {1}", Hero Icon String(First Of(Global.heroList)), Count Of(Players On Hero(First Of(
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[0]), Null, Null, String(
			Global.heroList), All Teams)))), Null, Null, Right, 1, White, White, White, Visible To and String, Default Visibility);
				"{0} -> {1}", 1, String("{0} {1}", Hero Icon String(Global.heroList[0]), Count Of(Players On Hero(Global.heroList[0],
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[1]), String("{0} -> {1}",
				All Teams)))), Right, 1, White, White, White, Visible To and String, Visible Always);
			2, String("{0} {1}", Hero Icon String(Global.heroList[1]), Count Of(Players On Hero(Global.heroList[1], All Teams)))), Null,
		End;
			Null, Right, 2, Blue, White, White, Visible To and String, Default Visibility);
		If(Global.heroList[1] != Null);
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[1]), String("{0} -> {1}",
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[1]), Null, Null, String(
			2, String("{0} {1}", Hero Icon String(Global.heroList[1]), Count Of(Players On Hero(Global.heroList[1], All Teams)))), Null,
				"{0} -> {1}", 2, String("{0} {1}", Hero Icon String(Global.heroList[1]), Count Of(Players On Hero(Global.heroList[1],
			Null, Right, 2, White, White, White, Visible To and String, Default Visibility);
				All Teams)))), Right, 2, White, White, Blue, Visible To and String, Visible Never);
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[2]), String("{0} -> {1}",
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[1]), Null, Null, String(
			3, String("{0} {1}", Hero Icon String(Global.heroList[2]), Count Of(Players On Hero(Global.heroList[2], All Teams)))), Null,
				"{0} -> {1}", 2, String("{0} {1}", Hero Icon String(Global.heroList[1]), Count Of(Players On Hero(Global.heroList[1],
			Null, Right, 3, Blue, White, White, Visible To and String, Default Visibility);
				All Teams)))), Right, 2, White, White, White, Visible To and String, Visible Always);
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[2]), String("{0} -> {1}",
		End;
			3, String("{0} {1}", Hero Icon String(Global.heroList[2]), Count Of(Players On Hero(Global.heroList[2], All Teams)))), Null,
		If(Global.heroList[2] != Null);
			Null, Right, 3, White, White, White, Visible To and String, Default Visibility);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[2]), Null, Null, String(
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[3]), String("{0} -> {1}",
				"{0} -> {1}", 3, String("{0} {1}", Hero Icon String(Global.heroList[2]), Count Of(Players On Hero(Global.heroList[2],
			4, String("{0} {1}", Hero Icon String(Global.heroList[3]), Count Of(Players On Hero(Global.heroList[3], All Teams)))), Null,
				All Teams)))), Right, 3, White, White, Blue, Visible To and String, Visible Never);
			Null, Right, 4, Blue, White, White, Visible To and String, Default Visibility);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[2]), Null, Null, String(
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[3]), String("{0} -> {1}",
				"{0} -> {1}", 3, String("{0} {1}", Hero Icon String(Global.heroList[2]), Count Of(Players On Hero(Global.heroList[2],
			4, String("{0} {1}", Hero Icon String(Global.heroList[3]), Count Of(Players On Hero(Global.heroList[3], All Teams)))), Null,
				All Teams)))), Right, 3, White, White, White, Visible To and String, Visible Always);
			Null, Right, 4, White, White, White, Visible To and String, Default Visibility);
		End;
		Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[4]), String("{0} -> {1}",
		If(Global.heroList[3] != Null);
			5, String("{0} {1}", Hero Icon String(Global.heroList[4]), Count Of(Playe
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[3]), Null, Null, String(
				"{0} -> {1}", 4, String("{0} {1}", Hero Icon String(Global.heroList[3]), Count Of(Players On Hero(Global.heroList[3],
				All Teams)))), Right, 4, White, White, Blue, Visible To and String, Visible Never);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[3]), Null, Null, String(
				"{0} -> {1}", 4, String("{0} {1}", Hero Icon String(Global.heroList[3]), Count Of(Players On Hero(Global.heroList[3],
				All Teams)))), Right, 4, White, White, White, Visible To and String, Visible Always);
		End;
		If(Global.heroList[4] != Null);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[4]), Null, Null, String(
				"{0} -> {1}", 5, String("{0} {1}", Hero Icon String(Global.heroList[4]), Count Of(Players On Hero(Global.heroList[4],
				All Teams)))), Right, 5, White, White, Blue, Visible To and String, Visible Never);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[4]), Null, Null, String(
				"{0} -> {1}", 5, String("{0} {1}", Hero Icon String(Global.heroList[4]), Count Of(Players On Hero(Global.heroList[4],
				All Teams)))), Right, 5, White, White, White, Visible To and String, Visible Always);
		End;
		If(Global.heroList[5] != Null);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[5]), Null, Null, String(
				"{0} -> {1}", 6, String("{0} {1}", Hero Icon String(Global.heroList[5]), Count Of(Players On Hero(Global.heroList[5],
				All Teams)))), Right, 6, White, White, Blue, Visible To and String, Visible Never);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[5]), Null, Null, String(
				"{0} -> {1}", 6, String("{0} {1}", Hero Icon String(Global.heroList[5]), Count Of(Players On Hero(Global.heroList[5],
				All Teams)))), Right, 6, White, White, White, Visible To and String, Visible Always);
		End;
		If(Global.heroList[6] != Null);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[6]), Null, Null, String(
				"{0} -> {1}", 7, String("{0} {1}", Hero Icon String(Global.heroList[6]), Count Of(Players On Hero(Global.heroList[6],
				All Teams)))), Right, 7, White, White, Blue, Visible To and String, Visible Never);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[6]), Null, Null, String(
				"{0} -> {1}", 7, String("{0} {1}", Hero Icon String(Global.heroList[6]), Count Of(Players On Hero(Global.heroList[6],
				All Teams)))), Right, 7, White, White, White, Visible To and String, Visible Always);
		End;
		If(Global.heroList[7] != Null);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[7]), Null, Null, String(
				"{0} -> {1}", 8, String("{0} {1}", Hero Icon String(Global.heroList[7]), Count Of(Players On Hero(Global.heroList[7],
				All Teams)))), Right, 8, White, White, Blue, Visible To and String, Visible Never);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[7]), Null, Null, String(
				"{0} -> {1}", 8, String("{0} {1}", Hero Icon String(Global.heroList[7]), Count Of(Players On Hero(Global.heroList[7],
				All Teams)))), Right, 8, White, White, White, Visible To and String, Visible Always);
		End;
		If(Global.heroList[8] != Null);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[8]), Null, Null, String(
				"{0} -> {1}", 9, String("{0} {1}", Hero Icon String(Global.heroList[8]), Count Of(Players On Hero(Global.heroList[8],
				All Teams)))), Right, 9, White, White, Blue, Visible To and String, Visible Never);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[8]), Null, Null, String(
				"{0} -> {1}", 9, String("{0} {1}", Hero Icon String(Global.heroList[8]), Count Of(Players On Hero(Global.heroList[8],
				All Teams)))), Right, 9, White, White, White, Visible To and String, Visible Always);
		End;
		If(Global.heroList[9] != Null);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[9]), Null, Null, String(
				"{0} -> {1}", 10, String("{0} {1}", Hero Icon String(Global.heroList[9]), Count Of(Players On Hero(Global.heroList[9],
				All Teams)))), Right, 10, White, White, Blue, Visible To and String, Visible Never);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[9]), Null, Null, String(
				"{0} -> {1}", 10, String("{0} {1}", Hero Icon String(Global.heroList[9]), Count Of(Players On Hero(Global.heroList[9],
				All Teams)))), Right, 10, White, White, White, Visible To and String, Visible Always);
		End;
		If(Global.heroList[10] != Null);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[10]), Null, Null, String(
				"{0} -> {1}", 11, String("{0} {1}", Hero Icon String(Global.heroList[10]), Count Of(Players On Hero(Global.heroList[10],
				All Teams)))), Right, 11, White, White, Blue, Visible To and String, Visible Never);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[10]), Null, Null, String(
				"{0} -> {1}", 11, String("{0} {1}", Hero Icon String(Global.heroList[10]), Count Of(Players On Hero(Global.heroList[10],
				All Teams)))), Right, 11, White, White, White, Visible To and String, Visible Always);
		End;
		If(Global.heroList[11] != Null);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[11]), Null, Null, String(
				"{0} -> {1}", 12, String("{0} {1}", Hero Icon String(Global.heroList[11]), Count Of(Players On Hero(Global.heroList[11],
				All Teams)))), Right, 12, White, White, Blue, Visible To and String, Visible Never);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[11]), Null, Null, String(
				"{0} -> {1}", 12, String("{0} {1}", Hero Icon String(Global.heroList[11]), Count Of(Players On Hero(Global.heroList[11],
				All Teams)))), Right, 12, White, White, White, Visible To and String, Visible Always);
		End;
		If(Global.heroList[12] != Null);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[12]), Null, Null, String(
				"{0} -> {1}", 13, String("{0} {1}", Hero Icon String(Global.heroList[12]), Count Of(Players On Hero(Global.heroList[12],
				All Teams)))), Right, 13, White, White, Blue, Visible To and String, Visible Never);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[12]), Null, Null, String(
				"{0} -> {1}", 13, String("{0} {1}", Hero Icon String(Global.heroList[12]), Count Of(Players On Hero(Global.heroList[12],
				All Teams)))), Right, 13, White, White, White, Visible To and String, Visible Always);
		End;
		If(Global.heroList[13] != Null);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[13]), Null, Null, String(
				"{0} -> {1}", 14, String("{0} {1}", Hero Icon String(Global.heroList[13]), Count Of(Players On Hero(Global.heroList[13],
				All Teams)))), Right, 14, White, White, Blue, Visible To and String, Visible Never);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[13]), Null, Null, String(
				"{0} -> {1}", 14, String("{0} {1}", Hero Icon String(Global.heroList[13]), Count Of(Players On Hero(Global.heroList[13],
				All Teams)))), Right, 14, White, White, White, Visible To and String, Visible Always);
		End;
		If(Global.heroList[14] != Null);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[14]), Null, Null, String(
				"{0} -> {1}", 15, String("{0} {1}", Hero Icon String(Global.heroList[14]), Count Of(Players On Hero(Global.heroList[14],
				All Teams)))), Right, 15, White, White, Blue, Visible To and String, Visible Never);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) != Global.heroList[14]), Null, Null, String(
				"{0} -> {1}", 15, String("{0} {1}", Hero Icon String(Global.heroList[14]), Count Of(Players On Hero(Global.heroList[14],
				All Teams)))), Right, 15, White, White, White, Visible To and String, Visible Always);
		End;
		If(Global.heroList[15] != Null);
			Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Global.heroList[15]), Null, Null, String(
				"{0} -> {1}", 16, String("{0} {1}", Hero Icon String(Global.heroList[15]), Coun