Deathmatch Swap&Fun by Chortowod

Q9S9K

Deathmatch where every 10-50 sec:

  • 2 random players swap position;
  • random player becomes random hero;
  • random player becomes invisible for 5 se;
  • apply random impulses to random player;
  • all players emote;
  • gravity changes;
  • random player get 500% speed for 5 sec;
  • slow mo changes;
  • appear bots with ultimates or abilities (15 different types - d.va's, roadhogs, reapers, ana's, rein's etc);

Only two maps working as intended - Workshop Island and Workshop Chamber.
You can play on other maps but bots will be spawned... not where supposed to be. Just turn off rule "Dummies" for other maps I guess.

It pretty balanced and seems fair due to unpredictable events.
With more than 4 players, bot events will be cutted a little but works fine.

Initially mod was created for playing with my friends but who knows - maybe someone like it too.

Have fun! :3

Code Snippet

settings { main { Description: "Deathmatch where every 10-50 sec: - 2 random players swap position; - random player becomes random hero; - random player becomes invisible for 5 se; - apply random impulses to random player; - all players emote; - gravity changes; - random player get 500% speed for 5 sec; - slow mo changes; - appear bots with ultimates or abilities." } modes { Deathmatch { Game Length In Minutes: 15 Score To Win: 50 enabled maps { Workshop Chamber Workshop Island } } General { Allow Hero Switching: Off Game Mode Start: Immediately Hero Limit: Off Respawn As Random Hero: On Respawn Time Scalar: 50% } } heroes { General { Ultimate Generation: 150% Ultimate Generation - Combat: 175% Ultimate Generation - Passive: 200% Ashe { Ultimate Generation - Combat B.O.B.: 0% Ultimate Generation - Passive B.O.B.: 0% Ultimate Generation B.O.B.: 10% } Baptiste { Immortality Field Cooldown Time: 250% } D.Va { Boosters Cooldown Time: 150% Defense Matrix Maximum Time: 75% Defense Matrix Recharge Rate: 125% Ultimate Generation - Combat Self-Destruct: 50% Ultimate Generation - Passive Self-Destruct: 50% Ultimate Generation Self-Destruct: 50% } Echo { Flight Cooldown Time: 200% } Lúcio { Amp It Up Cooldown Time: 125% Healing Received: 50% } McCree { Flashbang Cooldown Time: 125% } Mei { Cryo-Freeze Cooldown Time: 500% } Mercy { Healing Received: 40% } Moira { Healing Received: 75% } Orisa { Fortify Cooldown Time: 200% } Pharah { Healing Received: 10% } Roadhog { Take a Breather Cooldown Time: 500% } Soldier: 76 { Biotic Field Cooldown Time: 350% } Symmetra { Sentry Turret Cooldown Time: 300% } Torbjörn { Deploy Turret: Off } Wrecking Ball { Adaptive Shield Cooldown Time: 200% Grappling Claw Cooldown Time: 200% Healing Received: 25% } } } } variables { global: 0: SwapTimer 1: SwapInterval 2: SwapPlayer1 3: SwapPlayer2 4: SwapPositionPlayer1 5: SwapPositionPlayer2 6: SwapFacingPlayer1 7: SwapFacingPlayer2 8: ArrayWithDirections 9: RandomTimer 10: RandomInterval 11: InvisibleTimer 12: InvisibleInterval 13: InvisiblePlayer 14: ImpulseTimer 15: ImpulseInterval 16: ImpulsePlayer 17: EmoteTimer 18: EmoteInterval 20: MoveTimer 21: MoveInterval 22: MovePlayer 23: RandomPlayer 24: botsClickMouse 26: DummiesTimer 27: DummiesInterval 28: ArrayWithPlayers 29: RandomNumbersFrom1toX 30: ValueForRandomNumber 31: slowMoTimer 32: slowMoInterval 33: gravityTimer 34: gravityInterval player: 0: damageDone 2: nextObjective 5: damageDisplay 6: damageDisplayPos 7: damageDisplayScale 25: accideathCount } rule("Settings") { event { Ongoing - Global; } actions { Set Global Variable(gravityInterval, 37); Set Global Variable(gravityTimer, Global Variable(gravityInterval)); Set Global Variable(SwapInterval, 10); Set Global Variable(SwapTimer, Global Variable(SwapInterval)); Set Global Variable(RandomInterval, 15); Set Global Variable(RandomTimer, Global Variable(RandomInterval)); Set Global Variable(InvisibleInterval, 19); Set Global Variable(InvisibleTimer, Global Variable(InvisibleInterval)); Set Global Variable(ImpulseInterval, 26); Set Global Variable(ImpulseTimer, Global Variable(ImpulseInterval)); Set Global Variable(EmoteInterval, 41); Set Global Variable(EmoteTimer, Global Variable(EmoteInterval)); Set Global Variable(MoveInterval, 43); Set Global Variable(MoveTimer, Global Variable(MoveInterval)); Set Global Variable(DummiesInterval, 33); Set Global Variable(DummiesTimer, Global Variable(DummiesInterval)); Set Global Variable(slowMoInterval, 31); Set Global Variable(slowMoTimer, Global Variable(slowMoInterval)); Set Global Variable(ArrayWithDirections, Empty Array); Set Global Variable(ArrayWithDirections, Append To Array(Global Variable(ArrayWithDirections), Up)); Set Global Variable(ArrayWithDirections, Append To Array(Global Variable(ArrayWithDirections), Down)); Set Global Variable(ArrayWithDirections, Append To Array(Global Variable(ArrayWithDirections), Left)); Set Global Variable(ArrayWithDirections, Append To Array(Global Variable(ArrayWithDirections), Right)); Set Global Variable(ArrayWithDirections, Append To Array(Global Variable(ArrayWithDirections), Backward)); Set Global Variable(ArrayWithDirections, Append To Array(Global Variable(ArrayWithDirections), Forward)); Set Global Variable(RandomNumbersFrom1toX, Empty Array); Set Global Variable(RandomNumbersFrom1toX, Append To Array(Global Variable(RandomNumbersFrom1toX), 1)); Set Global Variable(RandomNumbersFrom1toX, Append To Array(Global Variable(RandomNumbersFrom1toX), 2)); Set Global Variable(RandomNumbersFrom1toX, Append To Array(Global Variable(RandomNumbersFrom1toX), 3)); Set Global Variable(RandomNumbersFrom1toX, Append To Array(Global Variable(RandomNumbersFrom1toX), 4)); Set Global Variable(RandomNumbersFrom1toX, Append To Array(Global Variable(RandomNumbersFrom1toX), 5)); Set Global Variable(RandomNumbersFrom1toX, Append To Array(Global Variable(RandomNumbersFrom1toX), 6)); Set Global Variable(RandomNumbersFrom1toX, Append To Array(Global Variable(RandomNumbersFrom1toX), 7)); Set Global Variable(RandomNumbersFrom1toX, Append To Array(Global Variable(RandomNumbersFrom1toX), 8)); Set Global Variable(RandomNumbersFrom1toX, Append To Array(Global Variable(RandomNumbersFrom1toX), 9)); Set Global Variable(RandomNumbersFrom1toX, Append To Array(Global Variable(RandomNumbersFrom1toX), 10)); Set Global Variable(RandomNumbersFrom1toX, Append To Array(Global Variable(RandomNumbersFrom1toX), 11)); Set Global Variable(RandomNumbersFrom1toX, Append To Array(Global Variable(RandomNumbersFrom1toX), 12)); Set Global Variable(RandomNumbersFrom1toX, Append To Array(Global Variable(RandomNumbersFrom1toX), 13)); Set Global Variable(RandomNumbersFrom1toX, Append To Array(Global Variable(RandomNumbersFrom1toX), 14)); Set Global Variable(RandomNumbersFrom1toX, Append To Array(Global Variable(RandomNumbersFrom1toX), 15)); } } rule("Setting 2") { event { Ongoing - Global; } actions { Wait(4, Ignore Condition); Set Global Variable(SwapPlayer1, Random Value In Array(All Players(All Teams))); Set Global Variable(SwapPlayer2, Random Value In Array(Remove From Array(All Players(All Teams), Global Variable(SwapPlayer1)))); Set Global Variable(RandomPlayer, Random Value In Array(All Players(All Teams))); Set Global Variable(InvisiblePlayer, Random Value In Array(All Players(All Teams))); Set Global Variable(ImpulsePlayer, Random Value In Array(All Players(All Teams))); Set Global Variable(MovePlayer, Random Value In Array(All Players(All Teams))); } } rule("HudInfo") { event { Ongoing - Global; } actions { Create HUD Text(All Players(All Teams), Null, Null, Custom String("Position change in: {0} [{1} и {2}]", Round To Integer( Global Variable(SwapTimer), Down), Global Variable(SwapPlayer1), Global Variable(SwapPlayer2)), Left, 0, White, White, Green, Visible To and String, Default Visibility); Create HUD Text(All Players(All Teams), Null, Null, Custom String("Random hero in: {0} [{1}]", Round To Integer(Global Variable( RandomTimer), Down), Global Variable(RandomPlayer), Null), Left, 1, White, White, Orange, Visible To and String, Default Visibility); disabled Create HUD Text(All Players(All Teams), Null, Null, Custom String("Невидимость через: {0} [{1}]", Round To Integer(Global Variable( InvisibleTimer), Down), Global Variable(InvisiblePlayer), Null), Left, 2, White, White, Aqua, Visible To and String, Default Visibility); disabled Create HUD Text(All Players(All Teams), Null, Null, Custom String("Импульс через: {0} [{1}]", Round To Integer(Global Variable( ImpulseTimer), Up), Global Variable(ImpulsePlayer), Null), Left, 3, White, White, Red, Visible To and String, Default Visibility); disabled Create HUD Text(All Players(All Teams), Null, Null, Custom String("Скорость через: {0} [{1}]", Round To Integer(Global Variable( MoveTimer), Down), Global Variable(MovePlayer), Null), Left, 4, White, White, Green, Visible To and String, Default Visibility); Create HUD Text(All Players(All Teams), Null, Null, Custom String(" Deathmatch Swap&Fun by Chortowod", Null, Null, Null), Left, 2, White, White, White, Visible To and String, Default Visibility); } } rule("HudScore (by Jokaes#2263)") { event { Ongoing - Each Player; All; All; } conditions { Is Dummy Bot(Event Player) == False; } actions { Create HUD Text(All Players(All Teams), Null, Null, Custom String("{0} {1} : {2}", Hero Icon String(Hero Of(Event Player)), Event Player, Custom String("{0} | Suicides: {1}", Round To Integer(Player Variable(Event Player, damageDone), To Nearest), Player Variable(Event Player, accideathCount), Null)), Right, Divide(Multiply(Player Variable(Event Player, damageDone), -1), 1000), White, White, White, Visible To Sort Order and String, Visible Always); } } rule("PlayerJoined") { event { Player Joined Match; All; All; } conditions { Is Dummy Bot(Event Player) == False; } actions { Set Global Variable(ArrayWithPlayers, Append To Array(Global Variable(ArrayWithPlayers), Event Player)); If(Array Contains(Global Variable(ArrayWithPlayers), Null)); Set Global Variable(ArrayWithPlayers, Remove From Array(Global Variable(ArrayWithPlayers), Null)); } } rule("PlayerLeft") { event { Player Left Match; All; All; } conditions { Is Dummy Bot(Event Player) == False; } actions { Set Global Variable(ArrayWithPlayers, Remove From Array(Global Variable(ArrayWithPlayers), Event Player)); } } rule("Damage track (by Jokaes#2263)") { event { Player Dealt Damage; All; All; } conditions { Victim != Attacker; } actions { Modify Player Variable(Event Player, damageDone, Add, Event Damage); End; Set Player Variable(Event Player, nextObjective, Multiply(Add(Round To Integer(Divide(Player Variable(Event Player, damageDone), 1000), Down), 1), 1000)); Destroy In-World Text(Player Variable(Event Player, damageDisplay)); Set Player Variable(Event Player, damageDisplayPos, Eye Position(Victim)); Set Player Variable(Event Player, damageDisplayScale, Add(0.700, Divide(Event Damage, 20))); "Creates a WHITE damage display if event wasn't critical else creates a RED one" If(Not(Event Was Critical Hit)); Create In-World Text(Event Player, Round To Integer(Event Damage, To Nearest), Player Variable(Event Player, damageDisplayPos), Player Variable(Event Player, damageDisplayScale), Clip Against Surfaces, Visible To Position and String, White, Default Visibility); Else; Create In-World Text(Event Player, Round To Integer(Event Damage, To Nearest), Player Variable(Event Player, damageDisplayPos), Player Variable(Event Player, damageDisplayScale), Clip Against Surfaces, Visible To Position and String, Red, Default Visibility); End; Set Player Variable(Event Player, damageDisplay, Last Text ID); } } rule("Don't kill dummies, ok") { event { Player Dealt Final Blow; All; All; } conditions { Is Dummy Bot(Victim) == True; Is Dummy Bot(Event Player) == False; } actions { Modify Player Score(Event Player, -1); } } rule("Accideath++") { event { Player Died; All; All; } conditions { Attacker == Event Player; } actions { Set Player Variable(Event Player, accideathCount, Add(Player Variable(Event Player, accideathCount), 1)); } } rule("TimerGravity") { event { Ongoing - Global; } conditions { Global Variable(gravityTimer) == Global Variable(gravityInterval); } actions { Chase Global Variable At Rate(gravityTimer, 0, 1, Destination and Rate); } } rule("TimerSlowMo") { event { Ongoing - Global; } conditions { Global Variable(slowMoTimer) == Global Variable(slowMoInterval); } actions { Chase Global Variable At Rate(slowMoTimer, 0, 1, Destination and Rate); } } rule("TimerMove") { event { Ongoing - Global; } conditions { Global Variable(MoveTimer) == Global Variable(MoveInterval); } actions { Chase Global Variable At Rate(MoveTimer, 0, 1, Destination and Rate); } } rule("TimerSwap") { event { Ongoing - Global; } conditions { Global Variable(SwapTimer) == Global Variable(SwapInterval); } actions { Chase Global Variable At Rate(SwapTimer, 0, 1, Destination and Rate); } } rule("TimerDummies") { event { Ongoing - Global; } conditions { Global Variable(DummiesTimer) == Global Variable(DummiesInterval); } actions { Chase Global Variable At Rate(DummiesTimer, 0, 1, Destination and Rate); } } rule("TimerImpulse") { event { Ongoing - Global; } conditions { Global Variable(ImpulseTimer) == Global Variable(ImpulseInterval); } actions { Chase Global Variable At Rate(ImpulseTimer, 0, 1, Destination and Rate); } } rule("TimerRandom") { event { Ongoing - Global; } conditions { Global Variable(RandomTimer) == Global Variable(RandomInterval); } actions { Chase Global Variable At Rate(RandomTimer, 0, 1, Destination and Rate); } } rule("TimerInvisible") { event { Ongoing - Global; } conditions { Global Variable(InvisibleTimer) == Global Variable(InvisibleInterval); } actions { Chase Global Variable At Rate(InvisibleTimer, 0, 1, Destination and Rate); } } rule("TimerImpulse") { event { Ongoing - Global; } conditions { Global Variable(ImpulseTimer) == Global Variable(ImpulseInterval); } actions { Chase Global Variable At Rate(ImpulseTimer, 0, 1, Destination and Rate); } } rule("TimerEmote") { event { Ongoing - Global; } conditions { Global Variable(EmoteTimer) == Global Variable(EmoteInterval); } actions { Chase Global Variable At Rate(EmoteTimer, 0, 1, Destination and Rate); } } rule("Swap 2 random players (by mitsiee)") { event { Ongoing - Global; } conditions { Global Variable(SwapTimer) <= 0; } actions { If(Or(Compare(Is Dead(Global Variable(SwapPlayer1)), ==, True), Compare(Is Dead(Global Variable(SwapPlayer2)), ==, True))); Set Global Variable(SwapTimer, 2); Set Global Variable(SwapPlayer1, Random Value In Array(Global Variable(ArrayWithPlayers))); Set Global Variable(SwapPlayer2, Random Value In Array(Remove From Array(Global Variable(ArrayWithPlayers), Global Variable( SwapPlayer1)))); Big Message(All Players(All Teams), Custom String("----SWAP FAILED----", Null, Null, Null)); Else; Set Global Variable(SwapPositionPlayer1, Position Of(Global Variable(SwapPlayer1))); Set Global Variable(SwapPositionPlayer2, Position Of(Global Variable(SwapPlayer2))); Set Global Variable(SwapFacingPlayer1, Facing Direction Of(Global Variable(SwapPlayer1))); Set Global Variable(SwapFacingPlayer2, Facing Direction Of(Global Variable(SwapPlayer2))); Skip If(Or(Compare(Global Variable(SwapPositionPlayer1), ==, 0), Compare(Global Variable(SwapPositionPlayer2), ==, 0)), 11); Big Message(All Players(All Teams), Custom String("SWAP!", Null, Null, Null)); Teleport(Global Variable(SwapPlayer1), Global Variable(SwapPositionPlayer2)); Set Facing(Global Variable(SwapPlayer1), Global Variable(SwapFacingPlayer2), To World); Teleport(Global Variable(SwapPlayer2), Global Variable(SwapPositionPlayer1)); Set Facing(Global Variable(SwapPlayer2), Global Variable(SwapFacingPlayer1), To World); Play Effect(All Players(All Teams), Good Pickup Effect, Yellow, Global Variable(SwapPlayer1), 1); Play Effect(All Players(All Teams), Ring Explosion, Yellow, Global Variable(SwapPlayer1), 2); Play Effect(All Players(All Teams), Buff Explosion Sound, Yellow, Global Variable(SwapPlayer1), 50); Play Effect(All Players(All Teams), Good Pickup Effect, Yellow, Global Variable(SwapPlayer2), 1); Play Effect(All Players(All Teams), Ring Explosion, Yellow, Global Variable(SwapPlayer2), 2); Play Effect(All Players(All Teams), Buff Explosion Sound, Yellow, Global Variable(SwapPlayer2), 50); Set Global Variable(SwapTimer, Global Variable(SwapInterval)); Set Global Variable(SwapPlayer1, Random Value In Array(Global Variable(ArrayWithPlayers))); Set Global Variable(SwapPlayer2, Random Value In Array(Remove From Array(Global Variable(ArrayWithPlayers), Global Variable( SwapPlayer1)))); } } rule("RandomHero") { event { Ongoing - Global; } conditions { Global Variable(RandomTimer) <= 0; } actions { If(Or(Compare(Is Dead(Global Variable(RandomPlayer)), ==, True), Compare(Is Using Ultimate(Global Variable(RandomPlayer)), ==, True))); Set Global Variable(RandomTimer, 2); Set Global Variable(RandomPlayer, Random Value In Array(Global Variable(ArrayWithPlayers))); Else; Start Forcing Player To Be Hero(Global Variable(RandomPlayer), Random Value In Array(All Heroes)); Set Global Variable(RandomTimer, Global Variable(RandomInterval)); Set Global Variable(RandomPlayer, Random Value In Array(Global Variable(ArrayWithPlayers))); } } rule("Invisibility") { event { Ongoing - Global; } conditions { Global Variable(InvisibleTimer) <= 0; } actions { If(Compare(Is Dead(Global Variable(InvisiblePlayer)), ==, True)); Set Global Variable(InvisiblePlayer, Random Value In Array(Global Variable(ArrayWithPlayers))); Set Global Variable(InvisibleTimer, 2); Else; Big Message(Global Variable(InvisiblePlayer), Custom String("Shadow covers you...", Null, Null, Null)); Set Invisible(Global Variable(InvisiblePlayer), Enemies); Wait(5, Ignore Condition); Set Invisible(Global Variable(InvisiblePlayer), None); Set Global Variable(InvisibleTimer, Global Variable(InvisibleInterval)); Set Global Variable(InvisiblePlayer, Random Value In Array(Global Variable(ArrayWithPlayers))); } } rule("Impulse") { event { Ongoing - Global; } conditions { Global Variable(ImpulseTimer) <= 0; } actions { If(Compare(Is Dead(Global Variable(ImpulsePlayer)), ==, True)); Set Global Variable(ImpulsePlayer, Random Value In Array(Global Variable(ArrayWithPlayers))); Set Global Variable(ImpulseTimer, 2); Else; Big Message(Global Variable(ImpulsePlayer), Custom String("Get ready to be crinckled!", Null, Null, Null)); Wait(2, Ignore Condition); Set Global Variable(ImpulseTimer, Global Variable(ImpulseInterval)); Apply Impulse(Global Variable(ImpulsePlayer), Random Value In Array(Global Variable(ArrayWithDirections)), 10000, To Player, Cancel Contrary Motion); Wait(0.100, Ignore Condition); Apply Impulse(Global Variable(ImpulsePlayer), Random Value In Array(Global Variable(ArrayWithDirections)), 10000, To Player, Cancel Contrary Motion); Wait(0.100, Ignore Condition); Apply Impulse(Global Variable(ImpulsePlayer), Random Value In Array(Global Variable(ArrayWithDirections)), 10000, To Player, Cancel Contrary Motion); Wait(0.100, Ignore Condition); Apply Impulse(Global Variable(ImpulsePlayer), Random Value In Array(Global Variable(ArrayWithDirections)), 10000, To Player, Cancel Contrary Motion); Wait(0.100, Ignore Condition); Apply Impulse(Global Variable(ImpulsePlayer), Random Value In Array(Global Variable(ArrayWithDirections)), 10000, To Player, Cancel Contrary Motion); Wait(0.100, Ignore Condition); Apply Impulse(Global Variable(ImpulsePlayer), Random Value In Array(Global Variable(ArrayWithDirections)), 10000, To Player, Cancel Contrary Motion); Wait(0.100, Ignore Condition); Apply Impulse(Global Variable(ImpulsePlayer), Random Value In Array(Global Variable(ArrayWithDirections)), 10000, To Player, Cancel Contrary Motion); Wait(0.100, Ignore Condition); Apply Impulse(Global Variable(ImpulsePlayer), Random Value In Array(Global Variable(ArrayWithDirections)), 10000, To Player, Cancel Contrary Motion); Wait(0.100, Ignore Condition); Apply Impulse(Global Variable(ImpulsePlayer), Random Value In Array(Global Variable(ArrayWithDirections)), 10000, To Player, Cancel Contrary Motion); Wait(0.100, Ignore Condition); Apply Impulse(Global Variable(ImpulsePlayer), Random Value In Array(Global Variable(ArrayWithDirections)), 10000, To Player, Cancel Contrary Motion); Set Global Variable(ImpulsePlayer, Random Value In Array(Global Variable(ArrayWithPlayers))); } } rule("Emote") { event { Ongoing - Global; } conditions { Global Variable(EmoteTimer) <= 0; } actions { Communicate(All Players(All Teams), Emote Up); Set Global Variable(EmoteTimer, Global Variable(EmoteInterval)); } } rule("MoveSpeed") { event { Ongoing - Global; } conditions { Global Variable(MoveTimer) <= 0; } actions { If(Compare(Is Dead(Global Variable(MovePlayer)), ==, True)); Set Global Variable(MovePlayer, Random Value In Array(Global Variable(ArrayWithPlayers))); Set Global Variable(MoveTimer, 2); Else; Big Message(Global Variable(MovePlayer), Custom String("Super-Sonic mode activated!", Null, Null, Null)); Wait(1, Ignore Condition); Set Move Speed(Global Variable(MovePlayer), 500); Wait(5, Ignore Condition); Set Global Variable(MoveTimer, Global Variable(MoveInterval)); Set Move Speed(Global Variable(MovePlayer), 100); Set Global Variable(MovePlayer, Random Value In Array(Global Variable(ArrayWithPlayers))); } } rule("SlowMo") { event { Ongoing - Global; } conditions { Global Variable(slowMoTimer) <= 0; } actions { If(Compare(Is Dead(Global Variable(ArrayWithPlayers)), ==, True)); Set Global Variable(slowMoTimer, 5); Else; Big Message(All Players(All Teams), Custom String("DIO invades THE WORLD!", Null, Null, Null)); Wait(2, Ignore Condition); Set Slow Motion(90); Set Aim Speed(Global Variable(ArrayWithPlayers), 90); Wait(0.300, Ignore Condition); Set Slow Motion(80); Set Aim Speed(Global Variable(ArrayWithPlayers), 80); Wait(0.300, Ignore Condition); Set Slow Motion(70); Set Aim Speed(Global Variable(ArrayWithPlayers), 70); Wait(0.300, Ignore Condition); Set Slow Motion(60); Set Aim Speed(Global Variable(ArrayWithPlayers), 60); Wait(0.300, Ignore Condition); Set Slow Motion(50); Set Aim Speed(Global Variable(ArrayWithPlayers), 50); Wait(0.300, Ignore Condition); Set Slow Motion(40); Set Aim Speed(Global Variable(ArrayWithPlayers), 40); Wait(0.300, Ignore Condition); Set Slow Motion(30); Set Aim Speed(Global Variable(ArrayWithPlayers), 30); Wait(0.300, Ignore Condition); Set Slow Motion(20); Set Aim Speed(Global Variable(ArrayWithPlayers), 20); Wait(0.300, Ignore Condition); Set Slow Motion(10); Set Aim Speed(Global Variable(ArrayWithPlayers), 10); Wait(0.300, Ignore Condition); Set Global Variable(slowMoTimer, Global Variable(slowMoInterval)); Set Slow Motion(100); Set Aim Speed(Global Variable(ArrayWithPlayers), 100); } } rule("Gravity") { event { Ongoing - Global; } conditions { Global Variable(gravityTimer) <= 0; } actions { If(Compare(Is Dead(Global Variable(ArrayWithPlayers)), ==, True)); Set Global Variable(gravityTimer, 5); Else; Big Message(All Players(All Teams), Custom String("Warning! Gravity Fluctuation is coming!", Null, Null, Null)); Wait(2, Ignore Condition); Set Gravity(Global Variable(ArrayWithPlayers), 25); Wait(5, Ignore Condition); Set Global Variable(gravityTimer, Global Variable(gravityInterval)); Set Gravity(Global Variable(ArrayWithPlayers), 100); } } rule("Dummies") { event { Ongoing - Global; } conditions { Global Variable(DummiesTimer) <= 0; disabled Is Button Held(Global Variable(InvisiblePlayer), Interact) == True; } actions { Set Global Variable(DummiesTimer, Global Variable(DummiesInterval)); Set Global Variable(ValueForRandomNumber, Random Value In Array(Global Variable(RandomNumbersFrom1toX))); disabled Set Global Variable(ValueForRandomNumber, 15); If(Compare(Global Variable(ValueForRandomNumber), ==, 1)); Create Dummy Bot(Hero(Reinhardt), All Teams, -1, Vector(19, 0, 19), Vector(-19, 0, -19)); Create Dummy Bot(Hero(Reinhardt), All Teams, -1, Vector(-19, 0, -19), Vector(19, 0, 19)); Create Dummy Bot(Hero(Reinhardt), All Teams, -1, Vector(-19, 0, 19), Vector(19, 0, -19)); Create Dummy Bot(Hero(Reinhardt), All Teams, -1, Vector(19, 0, -19), Vector(-19, 0, 19)); Create Dummy Bot(Hero(Reinhardt), All Teams, -1, Vector(0, 0, -19), Vector(0, 0, 19)); Create Dummy Bot(Hero(Reinhardt), All Teams, -1, Vector(0, 0, 19), Vector(0, 0, -19)); Create Dummy Bot(Hero(Reinhardt), All Teams, -1, Vector(19, 0, 0), Vector(-19, 0, 0)); Create Dummy Bot(Hero(Reinhardt), All Teams, -1, Vector(-19, 0, 0), Vector(19, 0, 0)); Wait(1.500, Ignore Condition); Set Ultimate Charge(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), 100); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Ultimate); Wait(1, Ignore Condition); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Ability 2); Wait(1, Ignore Condition); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Ability 1); Wait(3, Ignore Condition); Destroy All Dummy Bots; Else If(Compare(Global Variable(ValueForRandomNumber), ==, 2)); Create Dummy Bot(Hero(D.Va), All Teams, -1, Vector(10, 99, 10), Vector(0, 0, 0)); Create Dummy Bot(Hero(D.Va), All Teams, -1, Vector(10, 99, -10), Vector(0, 0, 0)); Create Dummy Bot(Hero(D.Va), All Teams, -1, Vector(-10, 99, 10), Vector(0, 0, 0)); Create Dummy Bot(Hero(D.Va), All Teams, -1, Vector(-10, 99, -10), Vector(0, 0, 0)); Wait(1.500, Ignore Condition); Set Ultimate Charge(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), 100); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Ultimate); Wait(4, Ignore Condition); Destroy All Dummy Bots; Else If(Compare(Global Variable(ValueForRandomNumber), ==, 3)); Create Dummy Bot(Hero(McCree), All Teams, -1, Vector(19, 0, 19), Vector(-19, 0, -19)); Create Dummy Bot(Hero(McCree), All Teams, -1, Vector(-19, 0, -19), Vector(19, 0, 19)); Create Dummy Bot(Hero(McCree), All Teams, -1, Vector(-19, 0, 19), Vector(19, 0, -19)); Create Dummy Bot(Hero(McCree), All Teams, -1, Vector(19, 0, -19), Vector(-19, 0, 19)); Wait(1.500, Ignore Condition); Set Ultimate Charge(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), 100); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Ultimate); Wait(2.500, Ignore Condition); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Primary Fire); Wait(1.500, Ignore Condition); Destroy All Dummy Bots; Else If(Compare(Global Variable(ValueForRandomNumber), ==, 4)); Create Dummy Bot(Hero(Ashe), All Teams, -1, Vector(-19, 0, -19), Vector(0, 0, 0)); Create Dummy Bot(Hero(Ashe), All Teams, -1, Vector(-19, 0, -14), Vector(0, 0, 0)); Create Dummy Bot(Hero(Ashe), All Teams, -1, Vector(-19, 0, -6), Vector(0, 0, 0)); Create Dummy Bot(Hero(Ashe), All Teams, -1, Vector(-19, 0, -1), Vector(0, 0, 0)); Create Dummy Bot(Hero(Ashe), All Teams, -1, Vector(-19, 0, 3), Vector(0, 0, 0)); Create Dummy Bot(Hero(Ashe), All Teams, -1, Vector(-19, 0, 8), Vector(0, 0, 0)); Create Dummy Bot(Hero(Ashe), All Teams, -1, Vector(-19, 0, 14), Vector(0, 0, 0)); Create Dummy Bot(Hero(Ashe), All Teams, -1, Vector(-19, 0, 19), Vector(0, 0, 0)); Wait(1.500, Ignore Condition); Set Ultimate Charge(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), 100); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Ultimate); Wait(6, Ignore Condition); Destroy All Dummy Bots; Else If(Compare(Global Variable(ValueForRandomNumber), ==, 5)); Create Dummy Bot(Hero(Doomfist), All Teams, -1, Vector(10, 25, 10), Vector(0, 0, 0)); Create Dummy Bot(Hero(Doomfist), All Teams, -1, Vector(10, 25, -10), Vector(0, 0, 0)); Create Dummy Bot(Hero(Doomfist), All Teams, -1, Vector(0, 25, 0), Vector(0, 0, 0)); Create Dummy Bot(Hero(Doomfist), All Teams, -1, Vector(-10, 25, 10), Vector(0, 0, 0)); Create Dummy Bot(Hero(Doomfist), All Teams, -1, Vector(-10, 25, -10), Vector(0, 0, 0)); Wait(1.500, Ignore Condition); Set Ultimate Charge(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), 100); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Ultimate); Wait(1, Ignore Condition); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Primary Fire); Wait(1.250, Ignore Condition); Destroy All Dummy Bots; Else If(Compare(Global Variable(ValueForRandomNumber), ==, 6)); Create Dummy Bot(Hero(Hanzo), All Teams, -1, Vector(29, 40, 29), Vector(-29, 40, -29)); Create Dummy Bot(Hero(Hanzo), All Teams, -1, Vector(-29, 40, -29), Vector(29, 40, 29)); Create Dummy Bot(Hero(Hanzo), All Teams, -1, Vector(-29, 40, 29), Vector(29, 40, -29)); Create Dummy Bot(Hero(Hanzo), All Teams, -1, Vector(29, 40, -29), Vector(-29, 40, 29)); Wait(1.500, Ignore Condition); Set Ultimate Charge(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), 100); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Ultimate); Wait(7, Ignore Condition); Destroy All Dummy Bots; Else If(Compare(Global Variable(ValueForRandomNumber), ==, 7)); Create Dummy Bot(Hero(Pharah), All Teams, -1, Vector(19, 0, 19), Vector(-19, 0, -19)); Create Dummy Bot(Hero(Pharah), All Teams, -1, Vector(-19, 0, -19), Vector(19, 0, 19)); Create Dummy Bot(Hero(Pharah), All Teams, -1, Vector(-19, 0, 19), Vector(19, 0, -19)); Create Dummy Bot(Hero(Pharah), All Teams, -1, Vector(19, 0, -19), Vector(-19, 0, 19)); Create Dummy Bot(Hero(Pharah), All Teams, -1, Vector(0, 0, -19), Vector(0, 0, 19)); Create Dummy Bot(Hero(Pharah), All Teams, -1, Vector(0, 0, 19), Vector(0, 0, -19)); Create Dummy Bot(Hero(Pharah), All Teams, -1, Vector(19, 0, 0), Vector(-19, 0, 0)); Create Dummy Bot(Hero(Pharah), All Teams, -1, Vector(-19, 0, 0), Vector(19, 0, 0)); Wait(1.500, Ignore Condition); Set Ultimate Charge(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), 100); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Ultimate); Wait(3, Ignore Condition); Destroy All Dummy Bots; Else If(Compare(Global Variable(ValueForRandomNumber), ==, 8)); Create Dummy Bot(Hero(Reaper), All Teams, -1, Vector(10, 25, 10), Vector(0, 0, 0)); Create Dummy Bot(Hero(Reaper), All Teams, -1, Vector(10, 25, -10), Vector(0, 0, 0)); Create Dummy Bot(Hero(Reaper), All Teams, -1, Vector(0, 25, 0), Vector(0, 0, 0)); Create Dummy Bot(Hero(Reaper), All Teams, -1, Vector(-10, 25, 10), Vector(0, 0, 0)); Create Dummy Bot(Hero(Reaper), All Teams, -1, Vector(-10, 25, -10), Vector(0, 0, 0)); Wait(1.500, Ignore Condition); Set Ultimate Charge(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), 100); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Ultimate); Wait(3, Ignore Condition); Destroy All Dummy Bots; Else If(Compare(Global Variable(ValueForRandomNumber), ==, 9)); Create Dummy Bot(Hero(Wrecking Ball), All Teams, -1, Vector(10, 35, 10), Vector(0, 0, 0)); Create Dummy Bot(Hero(Wrecking Ball), All Teams, -1, Vector(10, 35, -10), Vector(0, 0, 0)); Create Dummy Bot(Hero(Wrecking Ball), All Teams, -1, Vector(-10, 35, 10), Vector(0, 0, 0)); Create Dummy Bot(Hero(Wrecking Ball), All Teams, -1, Vector(-10, 35, -10), Vector(0, 0, 0)); Wait(1.500, Ignore Condition); Set Ultimate Charge(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), 100); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Ultimate); Wait(4, Ignore Condition); Destroy All Dummy Bots; Else If(Compare(Global Variable(ValueForRandomNumber), ==, 10)); Create Dummy Bot(Hero(Roadhog), All Teams, -1, Vector(-19, 0, -13), Vector(0, 0, 0)); Create Dummy Bot(Hero(Roadhog), All Teams, -1, Vector(-19, 0, -6), Vector(0, 0, 0)); Create Dummy Bot(Hero(Roadhog), All Teams, -1, Vector(-19, 0, 0), Vector(0, 0, 0)); Create Dummy Bot(Hero(Roadhog), All Teams, -1, Vector(-19, 0, 6), Vector(0, 0, 0)); Create Dummy Bot(Hero(Roadhog), All Teams, -1, Vector(-19, 0, 13), Vector(0, 0, 0)); Wait(1.500, Ignore Condition); Set Ultimate Charge(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), 100); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Ultimate); Wait(2.500, Ignore Condition); Destroy All Dummy Bots; Else If(Compare(Global Variable(ValueForRandomNumber), ==, 11)); Create Dummy Bot(Hero(Ana), All Teams, -1, Vector(-19, 0, -19), Vector(0, 0, 0)); Create Dummy Bot(Hero(Ana), All Teams, -1, Vector(-19, 0, -14), Vector(0, 0, 0)); Create Dummy Bot(Hero(Ana), All Teams, -1, Vector(-19, 0, -6), Vector(0, 0, 0)); Create Dummy Bot(Hero(Ana), All Teams, -1, Vector(-19, 0, -1), Vector(0, 0, 0)); Create Dummy Bot(Hero(Ana), All Teams, -1, Vector(-19, 0, 3), Vector(0, 0, 0)); Create Dummy Bot(Hero(Ana), All Teams, -1, Vector(-19, 0, 8), Vector(0, 0, 0)); Create Dummy Bot(Hero(Ana), All Teams, -1, Vector(-19, 0, 14), Vector(0, 0, 0)); Create Dummy Bot(Hero(Ana), All Teams, -1, Vector(-19, 0, 19), Vector(0, 0, 0)); Wait(1.500, Ignore Condition); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Ability 1); Wait(1.500, Ignore Condition); Destroy All Dummy Bots; Else If(Compare(Global Variable(ValueForRandomNumber), ==, 12)); Create Dummy Bot(Hero(Echo), All Teams, -1, Vector(-19, 0, -19), Vector(0, 0, 0)); Create Dummy Bot(Hero(Echo), All Teams, -1, Vector(-19, 0, -14), Vector(0, 0, 0)); Create Dummy Bot(Hero(Echo), All Teams, -1, Vector(-19, 0, -6), Vector(0, 0, 0)); Create Dummy Bot(Hero(Echo), All Teams, -1, Vector(-19, 0, -1), Vector(0, 0, 0)); Create Dummy Bot(Hero(Echo), All Teams, -1, Vector(-19, 0, 3), Vector(0, 0, 0)); Create Dummy Bot(Hero(Echo), All Teams, -1, Vector(-19, 0, 8), Vector(0, 0, 0)); Create Dummy Bot(Hero(Echo), All Teams, -1, Vector(-19, 0, 14), Vector(0, 0, 0)); Create Dummy Bot(Hero(Echo), All Teams, -1, Vector(-19, 0, 19), Vector(0, 0, 0)); Wait(1.500, Ignore Condition); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Primary Fire); Wait(0.300, Ignore Condition); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Primary Fire); Wait(0.300, Ignore Condition); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Secondary Fire); Wait(1, Ignore Condition); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Primary Fire); Wait(0.300, Ignore Condition); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Primary Fire); Wait(3, Ignore Condition); Destroy All Dummy Bots; Else If(Compare(Global Variable(ValueForRandomNumber), ==, 13)); Create Dummy Bot(Hero(Moira), All Teams, -1, Vector(-19, 0, -19), Vector(0, 0, 0)); Create Dummy Bot(Hero(Moira), All Teams, -1, Vector(-19, 0, -14), Vector(0, 0, 0)); Create Dummy Bot(Hero(Moira), All Teams, -1, Vector(-19, 0, -6), Vector(0, 0, 0)); Create Dummy Bot(Hero(Moira), All Teams, -1, Vector(-19, 0, -1), Vector(0, 0, 0)); Create Dummy Bot(Hero(Moira), All Teams, -1, Vector(-19, 0, 3), Vector(0, 0, 0)); Create Dummy Bot(Hero(Moira), All Teams, -1, Vector(-19, 0, 8), Vector(0, 0, 0)); Create Dummy Bot(Hero(Moira), All Teams, -1, Vector(-19, 0, 14), Vector(0, 0, 0)); Create Dummy Bot(Hero(Moira), All Teams, -1, Vector(-19, 0, 19), Vector(0, 0, 0)); Wait(1.500, Ignore Condition); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Ability 2); Wait(0.500, Ignore Condition); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Secondary Fire); Wait(4, Ignore Condition); Destroy All Dummy Bots; Else If(Compare(Global Variable(ValueForRandomNumber), ==, 14)); Create Dummy Bot(Hero(Torbjörn), All Teams, -1, Vector(19, 0, 19), Vector(-19, 0, -19)); Create Dummy Bot(Hero(Torbjörn), All Teams, -1, Vector(-19, 0, -19), Vector(19, 0, 19)); Create Dummy Bot(Hero(Torbjörn), All Teams, -1, Vector(-19, 0, 19), Vector(19, 0, -19)); Create Dummy Bot(Hero(Torbjörn), All Teams, -1, Vector(19, 0, -19), Vector(-19, 0, 19)); Create Dummy Bot(Hero(Torbjörn), All Teams, -1, Vector(0, 0, -19), Vector(0, 0, 19)); Create Dummy Bot(Hero(Torbjörn), All Teams, -1, Vector(0, 0, 19), Vector(0, 0, -19)); Create Dummy Bot(Hero(Torbjörn), All Teams, -1, Vector(19, 0, 0), Vector(-19, 0, 0)); Create Dummy Bot(Hero(Torbjörn), All Teams, -1, Vector(-19, 0, 0), Vector(19, 0, 0)); Wait(1.500, Ignore Condition); Set Ultimate Charge(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), 100); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Ultimate); Wait(0.500, Ignore Condition); Set Global Variable(botsClickMouse, 10); While(Compare(Global Variable(botsClickMouse), >, 0)); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Primary Fire); Wait(0.100, Ignore Condition); Set Global Variable(botsClickMouse, Subtract(Global Variable(botsClickMouse), 1)); End; Wait(6, Ignore Condition); Destroy All Dummy Bots; Else If(Compare(Global Variable(ValueForRandomNumber), ==, 15)); Create Dummy Bot(Hero(Winston), All Teams, -1, Vector(-19, 0, -19), Vector(0, 0, 0)); Create Dummy Bot(Hero(Winston), All Teams, -1, Vector(-19, 0, -14), Vector(0, 0, 0)); Create Dummy Bot(Hero(Winston), All Teams, -1, Vector(-19, 0, -6), Vector(0, 0, 0)); Create Dummy Bot(Hero(Winston), All Teams, -1, Vector(-19, 0, -1), Vector(0, 0, 0)); Create Dummy Bot(Hero(Winston), All Teams, -1, Vector(-19, 0, 3), Vector(0, 0, 0)); Create Dummy Bot(Hero(Winston), All Teams, -1, Vector(-19, 0, 8), Vector(0, 0, 0)); Create Dummy Bot(Hero(Winston), All Teams, -1, Vector(-19, 0, 14), Vector(0, 0, 0)); Create Dummy Bot(Hero(Winston), All Teams, -1, Vector(-19, 0, 19), Vector(0, 0, 0)); Wait(1.500, Ignore Condition); Set Global Variable(botsClickMouse, 11); While(Compare(Global Variable(botsClickMouse), >, 0)); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Primary Fire); Wait(0.200, Ignore Condition); Set Global Variable(botsClickMouse, Subtract(Global Variable(botsClickMouse), 1)); End; Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Ability 1); Set Global Variable(botsClickMouse, 11); While(Compare(Global Variable(botsClickMouse), >, 0)); Press Button(Filtered Array(All Players(All Teams), Is Dummy Bot(Current Array Element)), Primary Fire); Wait(0.200, Ignore Condition); Set Global Variable(botsClickMouse, Subtract(Global Variable(botsClickMouse), 1)); End; Destroy All Dummy Bots; } }
View Fullscreen
Copy to clipboard
Categories | Free for all, Elimination
Heroes | All
Created at |
Last updated |
Current version | 1.2

Update Log

  • balanced Bastion and Briggite;
  • changed slow mo;
  • changed HUD-events;
  • impulse now fully randomized
  • fully translated to English;
  • added HUD with damage count and accidential deaths;
  • added gravity 25% event;
  • added Echo, Winston, Torbjorn bots event;
  • small fixes.

0 Comments

Log in or Sign up to place a comment.
Websites are expensive, support Workshop.codes
Workshop.codes - Background image