Create
Return to post

Comparing difference between and

View raw
  • rule("||DEBUG|| Host sees SL SLA and SLP")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Host Player, Custom String("Server load: {0} {1} {2}", Server Load, Server Load Average, Server Load Peak), Null,
  • Null, Right, 0, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • }
  • }
  • disabled rule("||DEBUG|| host has all heroes unlocked")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player == Host Player;
  • }
  • actions
  • {
  • Set Player Allowed Heroes(Event Player, All Heroes);
  • }
  • }
  • disabled rule("||DEBUG|| spawn ana bots")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Button Held(Event Player, Button(Interact)) == True;
  • }
  • actions
  • {
  • Create Dummy Bot(Hero(Ana), Team Of(Event Player), -1, Position Of(Event Player), Facing Direction Of(Event Player));
  • Create Dummy Bot(Hero(Ana), Opposite Team Of(Team Of(Event Player)), -1, Position Of(Event Player), Facing Direction Of(
  • Event Player));
  • }
  • }
  • disabled rule("||DEBUG|| infinite ult")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • disabled Is Game In Progress == False;
  • }
  • actions
  • {
  • If(Ultimate Charge Percent(Event Player) >= 1);
  • Set Ultimate Charge(Event Player, 100);
  • End;
  • Wait(0.250, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
  • rule("Ana tea bag kill")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Ana;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Ana);
  • Is Crouching(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Ana"), Custom String("Ana ability 1"), True, 0) == True);
  • Damage(Filtered Array(Players Within Radius(Position Of(Event Player), 5, Opposite Team Of(Team Of(Event Player)), Off),
  • Has Status(Current Array Element, Asleep) == True), Event Player, 50);
  • Set Status(Filtered Array(Players Within Radius(Position Of(Event Player), 5, Opposite Team Of(Team Of(Event Player)), Off),
  • Has Status(Current Array Element, Asleep) == True), Event Player, Asleep, 1);
  • End;
  • }
  • }
  • rule("Ana nade hacking")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Ana;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Ana);
  • Event Ability == Button(Ability 2);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Ana"), Custom String("Ana ability 2 hack"), True, 3) == True);
  • Set Status(Victim, Event Player, Hacked, 4);
  • }
  • }
  • rule("Ana nade unkillable")
  • {
  • event
  • {
  • Player Dealt Healing;
  • All;
  • Ana;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Ana);
  • Event Ability == Button(Ability 2);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Ana"), Custom String("Ana ability 2 immortality"), True, 4) == True);
  • Set Status(Healee, Event Player, Unkillable, 4);
  • }
  • }
  • rule("Ana ultimate")
  • {
  • event
  • {
  • Player Received Healing;
  • All;
  • All;
  • }
  • conditions
  • {
  • Hero Of(Healer) == Hero(Ana);
  • Event Ability == Button(Ultimate);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Ana"), Custom String("Ana ultimate"), True, 99) == True);
  • Start Heal Over Time(Event Player, Healer, 8, 9999);
  • Set Damage Dealt(Event Player, 400);
  • Set Max Health(Event Player, 400);
  • Start Scaling Player(Event Player, 1.800, True);
  • Start Scaling Barriers(Event Player, 1.800, True);
  • Wait Until(Is Dead(Event Player) == True, 8);
  • Small Message(Event Player, Custom String("You have a heart attack."));
  • Start Damage Over Time(Event Player, Healer, 9999, 400);
  • Set Status(Event Player, Healer, Knocked Down, 9999);
  • }
  • }
  • rule("Ana HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Ana)), Custom String("Ability 1 {0}",
  • Ability Icon String(Hero(Ana), Button(Ability 1))), Null, Custom String("Repeatedly crouch on sleeping enemies to kill them."),
  • Left, 0, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Ana)), Custom String("Ability 2 {0}",
  • Ability Icon String(Hero(Ana), Button(Ability 2))), Null, Custom String(
  • "Hacks enemies and makes allies unkillable if they weren't full health."), Left, 1, Color(White), Color(White), Color(White),
  • Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Ana)), Custom String("Ultimate {0}",
  • Ability Icon String(Hero(Ana), Button(Ultimate))), Null, Custom String("Some good medicine..."), Left, 2, Color(White), Color(
  • White), Color(White), Visible To and String, Default Visibility);
  • }
  • }
  • rule("Ashe coach gun")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Ashe;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Ashe);
  • Event Ability == Button(Ability 1);
  • }
  • actions
  • {
  • Apply Impulse(Victim, Up, 5, To World, Cancel Contrary Motion);
  • Apply Impulse(Victim, Facing Direction Of(Event Player), -1 * Workshop Setting Real(Custom String("Ashe"), Custom String(
  • "Ashe ability 1"), 50, 0, 100, 0), To World, Incorporate Contrary Motion);
  • }
  • }
  • rule("Ashe dynamite freeze")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Ashe;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Ashe);
  • Event Ability == Button(Ability 2);
  • Event Damage > 5;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Ashe"), Custom String("Ashe ability 2"), True, 1) == True);
  • Set Status(Victim, Event Player, Frozen, 4);
  • Damage(Victim, Event Player, 30.001);
  • Wait(0.250, Ignore Condition);
  • Clear Status(Victim, Burning);
  • Stop All Damage Over Time(Victim);
  • End;
  • }
  • }
  • rule("Ashe HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Ashe)), Custom String(
  • "Ability 1 {0}", Ability Icon String(Hero(Ashe), Button(Ability 1))), Null, Custom String("Pulls enemies towards you."), Left,
  • 0, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Ashe)), Custom String(
  • "Ability 2 {0}", Ability Icon String(Hero(Ashe), Button(Ability 2))), Null, Custom String("Freezes enemies."), Left, 1, Color(
  • White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Ashe)), Custom String("Ultimate {0}",
  • Ability Icon String(Hero(Ashe), Button(Ultimate))), Null, Custom String("B.O.B. never leaves your side. Unless he dies."),
  • Left, 2, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • }
  • }
  • rule("Baptiste primary fire")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Baptiste;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Baptiste);
  • Is Button Held(Event Player, Button(Primary Fire)) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Baptiste"), Custom String("Baptiste primary fire"), True, 98) == True);
  • Set Projectile Speed(Event Player, 100);
  • Wait(0.016, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
  • rule("Baptiste ultimate")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Baptiste;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Baptiste);
  • Ultimate Charge Percent(Event Player) == 100;
  • Is Button Held(Event Player, Button(Ultimate)) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Baptiste"), Custom String("Baptiste ultimate"), True, 0) == True);
  • Press Button(Event Player, Button(Ultimate));
  • End;
  • Wait(0.016, Ignore Condition);
  • Loop If(Ultimate Charge Percent(Event Player) == 100);
  • }
  • }
  • rule("Baptiste shift start")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Baptiste;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Baptiste);
  • Is Using Ability 1(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Baptiste"), Custom String("Baptiste ability 1"), True, 1) == True);
  • Start Damage Over Time(Players Within Radius(Position Of(Event Player), 10, Opposite Team Of(Team Of(Event Player)), Off),
  • Event Player, 4, 35);
  • Damage(Filtered Array(Players Within Radius(Position Of(Event Player), 10, All Teams, Off), Current Array Element != Event Player),
  • Event Player, 0.111);
  • }
  • }
  • rule("Baptiste shift impulse")
  • {
  • event
  • {
  • Player Took Damage;
  • All;
  • All;
  • }
  • conditions
  • {
  • Hero Of(Attacker) == Hero(Baptiste);
  • Event Ability == Null;
  • Event Damage <= 0.111;
  • }
  • actions
  • {
  • Apply Impulse(Event Player, Up, 10, To World, Cancel Contrary Motion);
  • Set Environment Credit Player(Players Within Radius(Position Of(Event Player), 10, All Teams, Off), Event Player);
  • Wait(0.250, Ignore Condition);
  • Apply Impulse(Event Player, Direction Towards(Eye Position(Attacker), Eye Position(Event Player)), 60, To World,
  • Cancel Contrary Motion);
  • }
  • }
  • rule("Baptiste HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Baptiste)), Custom String(
  • "Primary fire {0}", Ability Icon String(Hero(Baptiste), Button(Primary Fire))), Null, Custom String(
  • "Rapid fire, lots of recoil."), Left, 0, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Baptiste)), Custom String(
  • "Ability 1 {0}", Ability Icon String(Hero(Baptiste), Button(Ability 1))), Null, Custom String(
  • "DoT on enemies, HoT on allies, pushes everyone away."), Left, 1, Color(White), Color(White), Color(White),
  • Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Baptiste)), Custom String(
  • "Ultimate {0}", Ability Icon String(Hero(Baptiste), Button(Ultimate))), Null, Custom String(
  • "Spinnin~! also faster ult charge."), Left, 2, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • }
  • }
  • rule("Bastion flying sentry")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Bastion;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Bastion);
  • Is In Alternate Form(Event Player) == True;
  • Is Firing Primary(Event Player) == True;
  • Is Using Ultimate(Event Player) == False;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Bastion"), Custom String("Bastion ability 1"), True, 0) == True);
  • Set Gravity(Event Player, 0);
  • Apply Impulse(Event Player, Facing Direction Of(Event Player), 0.600, To World, Incorporate Contrary Motion);
  • Wait(0.016, Ignore Condition);
  • Loop If Condition Is True;
  • Set Gravity(Event Player, 100);
  • }
  • }
  • rule("Bastion tank self kill")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Bastion;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Bastion);
  • Is Using Ultimate(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Bastion"), Custom String("Bastion ultimate"), True, 1) == True);
  • Kill(Victim, Event Player);
  • }
  • }
  • rule("Bastion self-repair")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Bastion;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Bastion);
  • Is Firing Secondary(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Bastion"), Custom String("Bastion secondary fire"), True, 99) == True);
  • If(Max Health(Event Player) == Health(Event Player) && Ability Resource(Event Player, Button(Secondary Fire)) >= 18);
  • Set Max Health(Event Player, Max Health(Event Player) / 3 + 2);
  • Wait(0.016, Ignore Condition);
  • Heal(Event Player, Null, 3);
  • Set Ability Resource(Event Player, Button(Secondary Fire), Ability Resource(Event Player, Button(Secondary Fire)) - 20);
  • End;
  • Wait(0.400, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
  • rule("Bastion HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Bastion)), Custom String(
  • "Ability 1 {0}", Ability Icon String(Hero(Bastion), Button(Ability 1))), Null, Custom String(
  • "You fly when shooting in sentry mode."), Left, 1, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Bastion)), Custom String(
  • "Secondary Fire {0}", Ability Icon String(Hero(Bastion), Button(Secondary Fire))), Null, Custom String(
  • "Temporarely increases max health when used at full health."), Left, 0, Color(White), Color(White), Color(White),
  • Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Bastion)), Custom String(
  • "Ultimate {0}", Ability Icon String(Hero(Bastion), Button(Ultimate))), Null, Custom String("Instakills. Everything."), Left, 2,
  • Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • }
  • }
  • rule("Brigitte ultimate force")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Brigitte;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Brigitte);
  • Is Using Ultimate(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Brigitte"), Custom String("Brigitte ultimate"), True, 0) == True);
  • Teleport(Filtered Array(All Players(Team Of(Event Player)), Distance Between(Eye Position(Event Player), Eye Position(
  • Current Array Element)) >= 15), Eye Position(Event Player));
  • Apply Impulse(Filtered Array(All Players(Team Of(Event Player)), Distance Between(Position Of(Event Player), Position Of(
  • Current Array Element)) >= 8.500), Direction Towards(Last Of(Sorted Array(Players Within Radius(Position Of(Event Player), 10,
  • Team Of(Event Player), Off), Distance Between(Position Of(Current Array Element), Position Of(Event Player)))), Position Of(
  • Event Player)), 15, To World, Cancel Contrary Motion);
  • Wait(0.016, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
  • rule("Brigitte shield bash")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • All;
  • Brigitte;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Brigitte);
  • Event Ability == Button(Primary Fire);
  • Is Firing Secondary(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Brigitte"), Custom String("Brigitte secondary fire"), True, 99) == True);
  • If(Has Status(Victim, Stunned) == False);
  • Set Status(Victim, Event Player, Stunned, 1.506 ^ Random Real(2.683, 10));
  • Set Status(Victim, Event Player, Stunned, 1.506 ^ Random Real(2.683, 10));
  • }
  • }
  • rule("Brigitte flail random knockback")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Brigitte;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Brigitte);
  • Event Ability == Button(Ability 1);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Brigitte"), Custom String("Brigitte ability 1"), True, 2) == True);
  • Apply Impulse(Victim, Vector(Random Integer(-1, 1), Random Integer(-1, 1), Random Integer(-1, 1)), 30, To Player,
  • Cancel Contrary Motion XYZ);
  • }
  • }
  • rule("Brigitte pack")
  • {
  • event
  • {
  • Player Dealt Healing;
  • All;
  • Brigitte;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Brigitte);
  • Event Ability == Button(Ability 2);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Brigitte"), Custom String("Brigitte ability 2"), True, 4) == True);
  • Set Facing(Healee, Vector(Random Integer(-360, 360), Random Integer(-360, 360), Random Integer(-360, 360)), To Player);
  • Heal(Healee, Event Player, 25);
  • }
  • }
  • rule("Brigitte HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Brigitte)), Custom String(
  • "Secondary fire {0}", Ability Icon String(Hero(Brigitte), Button(Secondary Fire))), Null, Custom String(
  • "Random stun duration."), Left, -1, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Brigitte)), Custom String(
  • "Ability 1 {0}", Ability Icon String(Hero(Brigitte), Button(Ability 1))), Null, Custom String(
  • "Knockback in a random direction. Powerful knockback."), Left, 0, Color(White), Color(White), Color(White),
  • Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Brigitte)), Custom String(
  • "Ability 2 {0}", Ability Icon String(Hero(Brigitte), Button(Ability 2))), Null, Custom String(
  • "Stronger heal. Renders the healee useless for a little bit."), Left, 1, Color(White), Color(White), Color(White),
  • Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Brigitte)), Custom String(
  • "Ultimate {0}", Ability Icon String(Hero(Brigitte), Button(Ultimate))), Null, Custom String(
  • "Forces your teammates to rally with you."), Left, 2, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • }
  • }
  • rule("D'va eat")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • D.Va;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(D.Va);
  • Is Firing Secondary(Event Player) == True;
  • Ability Cooldown(Event Player, Button(Secondary Fire)) <= 0;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("D.va"), Custom String("D.va secondary fire"), True, 0) == True);
  • Disallow Button(Event Player, Button(Secondary Fire));
  • Start Holding Button(Event Player, Button(Secondary Fire));
  • Respawn(Filtered Array(Filtered Array(Players in View Angle(Event Player, All Teams, 65), Distance Between(Eye Position(
  • Current Array Element), Eye Position(Event Player)) <= 10), Is In Line of Sight(Eye Position(Current Array Element),
  • Eye Position(Event Player), Barriers Do Not Block LOS) == True));
  • Wait(0.250, Ignore Condition);
  • Respawn(Filtered Array(Filtered Array(Players in View Angle(Event Player, Opposite Team Of(All Teams), 65), Distance Between(
  • Eye Position(Current Array Element), Eye Position(Event Player)) <= 10), Is In Line of Sight(Eye Position(
  • Current Array Element), Eye Position(Event Player), Barriers Do Not Block LOS) == True));
  • Wait(0.250, Ignore Condition);
  • Respawn(Filtered Array(Filtered Array(Players in View Angle(Event Player, All Teams, 65), Distance Between(Eye Position(
  • Current Array Element), Eye Position(Event Player)) <= 10), Is In Line of Sight(Eye Position(Current Array Element),
  • Eye Position(Event Player), Barriers Do Not Block LOS) == True));
  • Wait(0.250, Ignore Condition);
  • Respawn(Filtered Array(Filtered Array(Players in View Angle(Event Player, All Teams, 65), Distance Between(Eye Position(
  • Current Array Element), Eye Position(Event Player)) <= 10), Is In Line of Sight(Eye Position(Current Array Element),
  • Eye Position(Event Player), Barriers Do Not Block LOS) == True));
  • Wait(0.250, Ignore Condition);
  • Allow Button(Event Player, Button(Secondary Fire));
  • Stop Holding Button(Event Player, Button(Secondary Fire));
  • Set Ability Cooldown(Event Player, Button(Secondary Fire), 30);
  • }
  • }
  • rule("Dva boosters")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • D.Va;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(D.Va);
  • Is Using Ability 1(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("D.va"), Custom String("D.va ability 1"), True, 5) == True);
  • Set Move Speed(Event Player, 250);
  • Wait Until(!Is Using Ability 1(Event Player), 99999);
  • Set Move Speed(Event Player, 100);
  • disabled Detach Players(Players Within Radius(Event Player, 5, Opposite Team Of(Team Of(Event Player)), Off));
  • }
  • }
  • rule("Dva bump")
  • {
  • event
  • {
  • Player Took Damage;
  • All;
  • All;
  • }
  • conditions
  • {
  • Hero Of(Attacker) == Hero(D.Va);
  • Event Ability == Button(Ability 1);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("D.va"), Custom String("D.va ability 1 attachment"), True, 6) == True);
  • Attach Players(Victim, Attacker, Vector(0, 0, 1.500));
  • Wait Until(!Is Using Ability 1(Attacker), 99999);
  • Detach Players(Victim);
  • }
  • }
  • rule("Dva ultimate stun")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • D.Va;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(D.Va);
  • Event Ability == Button(Ultimate);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("D.va"), Custom String("D.va ultimate"), True, 7) == True);
  • Set Status(Victim, Event Player, Stunned, 5);
  • }
  • }
  • rule("Dva HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(D.Va)), Custom String(
  • "Ability 1 {0}", Ability Icon String(Hero(D.Va), Button(Ability 1))), Null, Custom String(
  • "Super speed, hitting enemies attaches them to you"), Left, 0, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(D.Va)), Custom String(
  • "Secondary Fire {0}", Ability Icon String(Hero(D.Va), Button(Secondary Fire))), Null, Custom String(
  • "Eat people and send them back to spawn."), Left, -1, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(D.Va)), Custom String("Ultimate {0}",
  • Ability Icon String(Hero(D.Va), Button(Ultimate))), Null, Custom String("If anyone somehow survived, they get stunned."), Left,
  • 2, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(D.Va)), Custom String(
  • "Ability 2 {0}", Ability Icon String(Hero(D.Va), Button(Ability 2))), Null, Custom String(
  • "Apply a random effect on the victim."), Left, 0, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • }
  • }
  • rule("Doomfist HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Doomfist)), Custom String(
  • "Ability 1 {0}", Ability Icon String(Hero(Doomfist), Button(Ability 1))), Null, Custom String("Same but on drugs."), Left, 1,
  • Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Doomfist)), Custom String(
  • "Ability 2 {0}", Ability Icon String(Hero(Doomfist), Button(Ability 2))), Null, Custom String("Same but on drugs."), Left, 2,
  • Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Doomfist)), Custom String(
  • "Secondary Fire {0}", Ability Icon String(Hero(Doomfist), Button(Ultimate))), Null, Custom String("Same but on drugs."), Left,
  • 0, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Doomfist)), Custom String(
  • "Ultimate {0}", Ability Icon String(Hero(Doomfist), Button(Ultimate))), Null, Custom String("Kills a random enemy."), Left, 3,
  • Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • }
  • }
  • rule("Doomfist uppercut")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Doomfist;
  • }
  • conditions
  • {
  • Is Using Ability 1(Event Player) == True;
  • Hero Of(Event Player) == Hero(Doomfist);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Doomfist"), Custom String("Doomfist ability 1"), True, 0) == True);
  • Apply Impulse(Event Player, Up, 60, To World, Cancel Contrary Motion);
  • }
  • }
  • rule("Doomfist slam")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Doomfist;
  • }
  • conditions
  • {
  • Event Ability == Button(Ability 2);
  • Hero Of(Event Player) == Hero(Doomfist);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Doomfist"), Custom String("Doomfist ability 2"), True, 2) == True);
  • Apply Impulse(Victim, Direction Towards(Position Of(Victim), Eye Position(Event Player)), 35, To World, Cancel Contrary Motion);
  • }
  • }
  • rule("Echo ultimate")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Echo;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Echo);
  • Is Duplicating(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Echo"), Custom String("Echo ultimate"), True, 0) == True);
  • Start Forcing Player To Be Hero(Event Player, Hero Being Duplicated(Event Player));
  • Stop Forcing Player To Be Hero(Event Player);
  • Wait(0.250, Ignore Condition);
  • If(Current Game Mode != Game Mode(Deathmatch));
  • If(Current Game Mode != Game Mode(Bounty Hunter));
  • Start Forcing Player To Be Hero(Players On Hero(Hero Of(Event Player), Opposite Team Of(Team Of(Event Player))), Hero(Echo));
  • Stop Forcing Player To Be Hero(All Players(Opposite Team Of(Team Of(Event Player))));
  • End;
  • End;
  • Wait(0.250, Ignore Condition);
  • Set Ultimate Charge(Event Player, 100);
  • }
  • }
  • rule("Echo passive")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Echo;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Echo);
  • Is In Air(Event Player) == True;
  • Is Button Held(Event Player, Button(Jump)) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Echo"), Custom String("Echo passive"), True, 1) == True);
  • Apply Impulse(Event Player, Up, 0.500, To World, Incorporate Contrary Motion);
  • Wait(0.016, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
  • rule("Echo dash")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Echo;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Echo);
  • Is Using Ability 1(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Echo"), Custom String("Echo ability 1"), True, 2) == True);
  • Wait(0.250, Ignore Condition);
  • Set Status(Event Player, Null, Stunned, 1);
  • Apply Impulse(Event Player, Facing Direction Of(Event Player), 60, To World, Cancel Contrary Motion);
  • Wait(0.250, Ignore Condition);
  • Set Ability Cooldown(Event Player, Button(Ability 1), 5);
  • }
  • }
  • rule("Echo beam")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Echo;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Echo);
  • Is Using Ability 2(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Echo"), Custom String("Echo ability 2"), True, 3) == True);
  • Set Facing(Event Player, Vector(Random Integer(-360, 360), Random Integer(-360, 360), Random Integer(-360, 360)), To Player);
  • Wait(0.016, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
  • rule("Echo beam damage")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Echo;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Echo);
  • Event Ability == Button(Ability 2);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Echo"), Custom String("Echo ability 2 instakill"), True, 4) == True);
  • Kill(Victim, Event Player);
  • }
  • }
  • rule("Echo HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Echo)), Custom String("Passive {0}",
  • Ability Icon String(Hero(Echo), Button(Jump))), Null, Custom String("Basically better pharah flight."), Left, 0, Color(White),
  • Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Echo)), Custom String(
  • "Ability 1 {0}", Ability Icon String(Hero(Echo), Button(Ability 1))), Null, Custom String("Interstellar jump."), Left, 1,
  • Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Echo)), Custom String(
  • "Ability 2 {0}", Ability Icon String(Hero(Echo), Button(Ability 2))), Null, Custom String("Instakilling disco."), Left, 2,
  • Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Echo)), Custom String("Ultimate {0}",
  • Ability Icon String(Hero(Echo), Button(Ultimate))), Null, Custom String("Steal someone's hero."), Left, 3, Color(White), Color(
  • White), Color(White), Visible To and String, Default Visibility);
  • }
  • }
  • rule("Genji primary fire")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Genji;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Genji);
  • Is Button Held(Event Player, Button(Primary Fire)) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Genji"), Custom String("Genji primary fire"), True, -5) == True);
  • Set Projectile Speed(Event Player, 100);
  • Wait(0.016, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
  • rule("Genji deflect")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Genji;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Genji);
  • Is Using Ability 2(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Genji"), Custom String("Genji ability 2"), True, 0) == True);
  • Wait(0.500, Ignore Condition);
  • Set Ability 2 Enabled(Event Player, False);
  • Wait(0.250, Ignore Condition);
  • Set Ability Cooldown(Event Player, Button(Ability 2), Workshop Setting Integer(Custom String("Genji"), Custom String(
  • "Deflect cooldown"), 1, 0, 99, 1));
  • Set Ability 2 Enabled(Event Player, True);
  • }
  • }
  • rule("Genji ultimate")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Genji;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Genji);
  • Is Using Ultimate(Event Player) == True;
  • Event Ability == Button(Ultimate);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Genji"), Custom String("Genji ultimate"), True, 2) == True);
  • Apply Impulse(Victim, Facing Direction Of(Event Player), Event Damage, To World, Cancel Contrary Motion);
  • Apply Impulse(Victim, Up, 5, To World, Cancel Contrary Motion);
  • Set Environment Credit Player(Victim, Event Player);
  • }
  • }
  • rule("Genji super climb")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Genji;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Genji);
  • Is On Wall(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Genji"), Custom String("Genji passive"), True, 3) == True);
  • Set Move Speed(Event Player, 300);
  • Wait Until(Is On Wall(Event Player) == False, 99999);
  • Set Move Speed(Event Player, 100);
  • }
  • }
  • rule("Genji dash knockback")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Genji;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Genji);
  • Event Ability == Button(Ability 1);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Genji"), Custom String("Genji ability 1"), True, 3) == True);
  • Apply Impulse(Victim, Facing Direction Of(Event Player), Event Damage, To World, Cancel Contrary Motion);
  • Apply Impulse(Victim, Up, 5, To World, Cancel Contrary Motion);
  • Set Environment Credit Player(Victim, Event Player);
  • Wait Until(Is Using Ability 1(Event Player) == False, 99999);
  • Set Ability Cooldown(Event Player, Button(Ability 1), 1);
  • }
  • }
  • rule("Genji HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Genji)), Custom String(
  • "Primary fire {0}", Ability Icon String(Hero(Genji), Button(Primary Fire))), Null, Custom String("Shurikens fire rapidly."),
  • Left, -1, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Genji)), Custom String("Passive {0}",
  • Ability Icon String(Hero(Genji), Button(Jump))), Null, Custom String("Very very very fast climbing."), Left, 0, Color(White),
  • Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Genji)), Custom String(
  • "Ability 1 {0}", Ability Icon String(Hero(Genji), Button(Ability 1))), Null, Custom String(
  • "Big knockback. Lower cooldown when hit."), Left, 1, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Genji)), Custom String(
  • "Ability 2 {0}", Ability Icon String(Hero(Genji), Button(Ability 2))), Null, Custom String("Short deflect on short cooldown."),
  • Left, 2, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Genji)), Custom String(
  • "Ultimate {0}", Ability Icon String(Hero(Genji), Button(Ultimate))), Null, Custom String("Big knockback."), Left, 3, Color(
  • White), Color(White), Color(White), Visible To and String, Default Visibility);
  • }
  • }
  • rule("Hanzo HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Hanzo)), Custom String("Passive {0}",
  • Ability Icon String(Hero(Hanzo), Button(Jump))), Null, Custom String("Very very very fast climbing."), Left, 0, Color(White),
  • Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Hanzo)), Custom String(
  • "Ability 1 {0}", Ability Icon String(Hero(Hanzo), Button(Ability 1))), Null, Custom String(
  • "Teleport hit enemy to a random enemy."), Left, 1, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Hanzo)), Custom String(
  • "Ability 2 {0}", Ability Icon String(Hero(Hanzo), Button(Ability 2))), Null, Custom String("Sleep darts."), Left, 2, Color(
  • White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Hanzo)), Custom String(
  • "Ultimate {0}", Ability Icon String(Hero(Hanzo), Button(Ultimate))), Null, Custom String("Very hard to get out of."), Left, 3,
  • Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • }
  • }
  • rule("Hanzo teleport")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Hanzo;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Hanzo);
  • Event Ability == Button(Ability 1);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Hanzo"), Custom String("Hanzo ability 1"), True, 0) == True);
  • Teleport(Victim, Position Of(Random Value In Array(All Living Players(Opposite Team Of(Team Of(Event Player))))));
  • }
  • }
  • rule("Hanzo sleep dart")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Hanzo;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Hanzo);
  • Event Ability == Button(Ability 2);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Hanzo"), Custom String("Hanzo ability 2"), True, 1) == True);
  • Set Status(Victim, Event Player, Asleep, 3);
  • }
  • }
  • rule("Hanzo super climb")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Hanzo;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Hanzo);
  • Is On Wall(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Hanzo"), Custom String("Hanzo passive"), True, 3) == True);
  • Set Move Speed(Event Player, 300);
  • Wait Until(Is On Wall(Event Player) == False, 99999);
  • Set Move Speed(Event Player, 100);
  • }
  • }
  • rule("Hanzo ultimate")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Hanzo;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Hanzo);
  • Event Ability == Button(Ultimate);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Hanzo"), Custom String("Hanzo ultimate"), True, 2) == True);
  • Set Facing(Victim, Vector(Random Integer(-360, 360), Random Integer(-360, 360), Random Integer(-360, 360)), To World);
  • }
  • }
  • rule("Junkrat random damage")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Junkrat;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Junkrat);
  • Event Ability != Null;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Junkrat"), Custom String("Junkrat passive"), True, 0) == True);
  • Heal(Victim, Null, Event Damage);
  • Damage(Victim, Event Player, 10 * Random Integer(Workshop Setting Real(Custom String("Junkrat"), Custom String(
  • "Junkrat passive min damage"), 0, 0, 500, 1), Workshop Setting Real(Custom String("Junkrat"), Custom String(
  • "Junkrat passive max damage"), 350, 0, 500, 2)));
  • }
  • }
  • rule("Junkrat HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Junkrat)), Custom String(
  • "Passive {0}", Ability Icon String(Hero(Junkrat), Button(Primary Fire))), Null, Custom String(
  • "All damage you deal is random."), Left, 0, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • }
  • }
  • rule("Mccree HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(McCree)), Custom String(
  • "Ability 1 {0}", Ability Icon String(Hero(McCree), Button(Ability 1))), Null, Custom String("Adds more ammo to your gun."),
  • Left, 1, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(McCree)), Custom String(
  • "Ability 2 {0}", Ability Icon String(Hero(McCree), Button(Ability 2))), Null, Custom String(
  • "Changes the hit enemy into a random hero."), Left, 2, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(McCree)), Custom String(
  • "Ultimate {0}", Ability Icon String(Hero(McCree), Button(Ultimate))), Null, Custom String("Slow motioooonnnnnnn."), Left, 3,
  • Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • }
  • }
  • rule("Mccree roll")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • McCree;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(McCree);
  • Is Using Ability 1(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Mccree"), Custom String("Mccree ability 1"), True, 0) == True);
  • Set Max Ammo(Event Player, 0, Max Ammo(Event Player, 0) + 6);
  • }
  • }
  • rule("Mccree dies")
  • {
  • event
  • {
  • Player Died;
  • All;
  • McCree;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(McCree);
  • }
  • actions
  • {
  • Set Max Ammo(Event Player, 0, 6);
  • }
  • }
  • rule("Mccree flashbang")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • McCree;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(McCree);
  • Event Ability == Button(Ability 2);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Mccree"), Custom String("Mccree ability 2"), True, 1) == True);
  • Start Forcing Player To Be Hero(Victim, Random Value In Array(All Heroes));
  • disabled Start Forcing Player To Be Hero(Victim, Hero(Reinhardt));
  • Wait(0.500, Ignore Condition);
  • Stop Forcing Player To Be Hero(Victim);
  • Resurrect(Victim);
  • Stop Scaling Barriers(Victim);
  • Stop Scaling Player(Victim);
  • Remove All Health Pools From Player(Victim);
  • Stop All Heal Over Time(Victim);
  • Stop All Damage Over Time(Victim);
  • Clear Status(Victim, Burning);
  • Set Max Health(Victim, 100);
  • Set Damage Dealt(Victim, 100);
  • Clear Status(Victim, Phased Out);
  • Clear Status(Victim, Unkillable);
  • Clear Status(Victim, Invincible);
  • Set Move Speed(Victim, 100);
  • Enable Movement Collision With Environment(Victim);
  • Enable Movement Collision With Players(Victim);
  • Set Damage Received(Victim, 100);
  • }
  • }
  • rule("Mccree ultimate")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • McCree;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(McCree);
  • Is Using Ultimate(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Mccree"), Custom String("Mccree ultimate"), True, 2) == True);
  • Set Slow Motion(35);
  • Set Move Speed(Event Player, 500);
  • Wait Until(Is Using Ultimate(Event Player) == False || Entity Exists(Event Player) == False, 8);
  • Set Slow Motion(100);
  • Set Move Speed(Event Player, 100);
  • }
  • }
  • rule("Lucio HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Lúcio)), Custom String("Passive {0}",
  • Ability Icon String(Hero(Lúcio), Button(Jump))), Null, Custom String("You get healed and deal bonus damage during wall ride."),
  • Left, 0, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Lúcio)), Custom String(
  • "Secondary Fire {0}", Ability Icon String(Hero(Lúcio), Button(Secondary Fire))), Null, Custom String("Yeet!"), Left, 1, Color(
  • White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Lúcio)), Custom String(
  • "Ability 1 {0}", Ability Icon String(Hero(Lúcio), Button(Ability 1))), Null, Custom String("Healing song damages enemies."),
  • Left, 2, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Lúcio)), Custom String(
  • "Ability 2 {0}", Ability Icon String(Hero(Lúcio), Button(Ability 2))), Null, Custom String(
  • "Boosts the effect of the healing song damage."), Left, 3, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Lúcio)), Custom String(
  • "Ultimate {0}", Ability Icon String(Hero(Lúcio), Button(Ultimate))), Null, Custom String(
  • "Get knocked into the air and slam down, killing everyone."), Left, 4, Color(White), Color(White), Color(White),
  • Visible To and String, Default Visibility);
  • }
  • }
  • rule("Lucio wall heal")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Lúcio;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Lúcio);
  • Is On Wall(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Lucio"), Custom String("Lucio passive healing"), True, 0) == True);
  • Heal(Event Player, Event Player, 3);
  • Wait(0.250, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
  • rule("Lucio wall damage")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Lúcio;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Lúcio);
  • Is On Wall(Event Player) == True;
  • Event Ability != Null;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Lucio"), Custom String("Lucio passive damage boost"), True, 1) == True);
  • Damage(Event Player, Victim, Event Damage);
  • }
  • }
  • rule("Lucio heal song damage")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Lúcio;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Lúcio);
  • Is In Alternate Form(Event Player) == False;
  • Is Alive(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Lucio"), Custom String("Lucio ability 1 healing song"), True, 2) == True);
  • Damage(Filtered Array(Players Within Radius(Position Of(Event Player), 12, Opposite Team Of(Team Of(Event Player)), Surfaces),
  • Current Array Element != Event Player), Event Player, 4);
  • If(Is Using Ability 2(Event Player) == True);
  • Damage(Filtered Array(Players Within Radius(Position Of(Event Player), 12, Opposite Team Of(Team Of(Event Player)), Surfaces),
  • Current Array Element != Event Player), Event Player, 7);
  • End;
  • Wait(0.250, Ignore Condition);
  • Loop If Condition Is True;
  • Damage(Filtered Array(Players Within Radius(Position Of(Event Player), 12, Opposite Team Of(Team Of(Event Player)), Surfaces),
  • Current Array Element != Event Player), Event Player, 3);
  • }
  • }
  • rule("Lucio YEET!")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Lúcio;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Lúcio);
  • Event Ability == Button(Secondary Fire);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Lucio"), Custom String("Lucio secondary fire"), True, 3) == True);
  • Apply Impulse(Victim, Facing Direction Of(Event Player), 60, To World, Cancel Contrary Motion);
  • Wait Until(Is Firing Secondary(Event Player) == False, 99999);
  • Set Ability Cooldown(Event Player, Button(Secondary Fire), 8);
  • }
  • }
  • rule("Lucio self YEET!")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Lúcio;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Lúcio);
  • Is Firing Secondary(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Lucio"), Custom String("Lucio secondary fire self"), True, 5) == True);
  • Apply Impulse(Event Player, Facing Direction Of(Event Player), -30, To World, Cancel Contrary Motion);
  • }
  • }
  • rule("Lucio ultimate")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Lúcio;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Lúcio);
  • Is Using Ultimate(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Lucio"), Custom String("Lucio ultimate"), True, 6) == True);
  • Apply Impulse(Event Player, Up, 45, To World, Cancel Contrary Motion);
  • End;
  • Wait(1, Ignore Condition);
  • Wait Until(Is On Ground(Event Player) == True, 99999);
  • If(Workshop Setting Toggle(Custom String("Lucio"), Custom String("Lucio ultimate instakills"), True, 7) == True);
  • If(Is Alive(Event Player) == True);
  • Kill(Players Within Radius(Position Of(Event Player), 30, All Teams, Surfaces), Event Player);
  • End;
  • }
  • }
  • rule("Mei fire")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Mei;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Mei);
  • Event Ability != Null;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Mei"), Custom String("Mei passive"), True, 0) == True);
  • Start Damage Over Time(Victim, Event Player, 3, Event Damage);
  • Set Status(Victim, Event Player, Burning, 4);
  • If(Event Ability == Button(Ultimate));
  • Damage(Victim, Event Player, 10);
  • End;
  • }
  • }
  • rule("Mei HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Mei)), Custom String("Passive {0}",
  • Ability Icon String(Hero(Mei), Button(Primary Fire))), Null, Custom String("All damage you deal sets the enemy on fire."),
  • Left, 0, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • }
  • }
  • rule("Mercy HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Mercy)), Custom String("Melee {0}",
  • Ability Icon String(Hero(Mercy), Button(Melee))), Null, Custom String("Knocks down enemies."), Left, 0, Color(White), Color(
  • White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Mercy)), Custom String(
  • "Ability 1 {0}", Ability Icon String(Hero(Mercy), Button(Ability 1))), Null, Custom String(
  • "Dashing through enemies knocks them down."), Left, 1, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Mercy)), Custom String(
  • "Ability 2 {0}", Ability Icon String(Hero(Mercy), Button(Ability 2))), Null, Custom String(
  • "Resurrecting allies increases your max HP."), Left, 2, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Mercy)), Custom String(
  • "Ultimate {0}", Ability Icon String(Hero(Mercy), Button(Ultimate))), Null, Custom String(
  • "Battle mercy mode. All your hits stun."), Left, 3, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • }
  • }
  • rule("Mercy Melee")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Mercy;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Mercy);
  • Event Ability == Button(Melee);
  • }
  • actions
  • {
  • Set Status(Victim, Event Player, Knocked Down, Workshop Setting Real(Custom String("Mercy"), Custom String("Mercy melee"), 0.500,
  • 0, 3, 0));
  • Damage(Victim, Event Player, 20);
  • }
  • }
  • rule("Mercy Dash")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Mercy;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Mercy);
  • Is Using Ability 1(Event Player) == True;
  • }
  • actions
  • {
  • Set Status(Players Within Radius(Position Of(Event Player), 5, Opposite Team Of(Team Of(Event Player)), Off), Event Player,
  • Knocked Down, Workshop Setting Real(Custom String("Mercy"), Custom String("Mercy ability 1 knockdown duration"), 3, 0, 10, 1));
  • Wait(0.100, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
  • rule("Mercy resurrect HP")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Mercy;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Mercy);
  • Is Using Ability 2(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Mercy"), Custom String("Mercy ability 2 bonus health"), True, -50) == True);
  • Wait Until(Is Using Ability 2(Event Player) == False, 99999);
  • If(Is Alive(Event Player) == True);
  • Add Health Pool To Player(Event Player, Health, 100, True, True);
  • }
  • }
  • rule("Mercy ultimate")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Mercy;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Mercy);
  • Is Using Ultimate(Event Player) == True;
  • }
  • actions
  • {
  • Set Status(Victim, Event Player, Stunned, Workshop Setting Real(Custom String("Mercy"), Custom String(
  • "Mercy ultimate stun duration"), 0.750, 0, 5, 2));
  • }
  • }
  • rule("Moira HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Moira)), Custom String(
  • "Ability 1 {0}", Ability Icon String(Hero(Moira), Button(Ability 1))), Null, Custom String(
  • "If used while crouching teleport to a random ally."), Left, 1, Color(White), Color(White), Color(White),
  • Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Moira)), Custom String(
  • "Ability 2 {0}", Ability Icon String(Hero(Moira), Button(Ability 2))), Null, Custom String(
  • "Damage orbs make the victim go crazy, healing orbs give bonus shield."), Left, 2, Color(White), Color(White), Color(White),
  • Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Moira)), Custom String(
  • "Ultimate {0}", Ability Icon String(Hero(Moira), Button(Ultimate))), Null, Custom String("Beyblade beyblade let it rip."),
  • Left, 3, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • }
  • }
  • rule("Moira Fade")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Moira;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Moira);
  • Is Using Ability 1(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Moira"), Custom String("Moira ability 1"), True, 0) == True);
  • Small Message(Event Player, Custom String("Crouch to teleport!"));
  • Wait(0.400, Ignore Condition);
  • If(Is Crouching(Event Player) == True);
  • Teleport(Event Player, Random Value In Array(Filtered Array(All Living Players(Team Of(Event Player)),
  • Event Player != Current Array Element)));
  • }
  • }
  • rule("Moira damage orb")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Moira;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Moira);
  • Event Ability == Button(Ability 2);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Moira"), Custom String("Moira ability 2 damage orb"), True, 1) == True);
  • Apply Impulse(Victim, Vector(Random Integer(-360, 360), Random Integer(-360, 360), Random Integer(-360, 360)), 10, To World,
  • Cancel Contrary Motion);
  • Set Facing(Victim, Vector(Random Integer(-360, 360), Random Integer(-360, 360), Random Integer(-360, 360)), To World);
  • }
  • }
  • rule("Moira healing orb")
  • {
  • event
  • {
  • Player Dealt Healing;
  • All;
  • Moira;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Moira);
  • Event Ability == Button(Ability 2);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Moira"), Custom String("Moira ability 2 healing orb"), True, 3) == True);
  • Add Health Pool To Player(Healee, Shields, Event Healing, False, True);
  • }
  • }
  • rule("Moira ultimate")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Moira;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Moira);
  • Is Using Ultimate(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Moira"), Custom String("Moira ultimate"), True, 5) == True);
  • Start Facing(Event Player, Vector(X Component Of(Facing Direction Of(Event Player)) + 100, Y Component Of(Facing Direction Of(
  • Event Player)), Z Component Of(Facing Direction Of(Event Player))), 350, To Player, Direction and Turn Rate);
  • Wait Until(Is Using Ultimate(Event Player) == False, 99999);
  • Stop Facing(Event Player);
  • }
  • }
  • rule("Moira ultimate instakill")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Moira;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Moira);
  • Is Using Ultimate(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Moira"), Custom String("Moira ultimate instakill"), True, 6) == True);
  • Kill(Victim, Event Player);
  • }
  • }
  • rule("Orisa HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Orisa)), Custom String("Passive {0}",
  • Ability Icon String(Hero(Orisa), Button(Primary Fire))), Null, Custom String("Hitting enemies makes them randomly reload."),
  • Left, 0, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Orisa)), Custom String(
  • "Ability 1 {0}", Ability Icon String(Hero(Orisa), Button(Ability 1))), Null, Custom String("Ram into enemies to deal damage."),
  • Left, 1, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Orisa)), Custom String(
  • "Ability 2 {0}", Ability Icon String(Hero(Orisa), Button(Ability 2))), Null, Custom String("\"No changes.\" ;)"), Left, 2,
  • Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Orisa)), Custom String(
  • "Ultimate {0}", Ability Icon String(Hero(Orisa), Button(Ultimate))), Null, Custom String(
  • "Turn stationary and drain ammo of everyone nearby/"), Left, 3, Color(White), Color(White), Color(White),
  • Visible To and String, Default Visibility);
  • }
  • }
  • rule("Orisa ram")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Orisa;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Orisa);
  • Is Using Ability 1(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Orisa"), Custom String("Orisa ability 1"), True, 0) == True);
  • Set Move Speed(Event Player, 400);
  • Wait Until(Filtered Array(Players Within Radius(Position Of(Event Player), 3, Opposite Team Of(Team Of(Event Player)), Off),
  • Is Alive(Current Array Element) == True && Current Array Element != Event Player) != Empty Array || Is Using Ability 1(
  • Event Player) == False, 99999);
  • Set Move Speed(Event Player, 100);
  • If(Is Alive(Event Player) == True);
  • Damage(Filtered Array(Players Within Radius(Position Of(Event Player), 3, Opposite Team Of(Team Of(Event Player)), Off),
  • Current Array Element != Event Player), Event Player, 400);
  • Set Status(Filtered Array(Players Within Radius(Position Of(Event Player), 3, Opposite Team Of(Team Of(Event Player)), Off),
  • Current Array Element != Event Player), Event Player, Knocked Down, 5);
  • Apply Impulse(Filtered Array(Players Within Radius(Position Of(Event Player), 3, Opposite Team Of(Team Of(Event Player)), Off),
  • Current Array Element != Event Player), Up, 5, To World, Cancel Contrary Motion);
  • Apply Impulse(Event Player, Up, 3, To World, Cancel Contrary Motion);
  • Apply Impulse(Event Player, Facing Direction Of(Event Player), -5, To World, Cancel Contrary Motion);
  • }
  • }
  • rule("pharah ultimate")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Pharah;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Pharah);
  • Is Using Ultimate(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Pharah"), Custom String("Pharah ultimate"), True, 0) == True);
  • Teleport(Event Player, Position Of(Event Player) + Up * 50);
  • Set Status(Event Player, Null, Phased Out, 2.500);
  • Set Projectile Speed(Event Player, 250);
  • Set Damage Dealt(Event Player, 800);
  • Wait Until(Is Using Ultimate(Event Player) == False, 99999);
  • Set Projectile Speed(Event Player, 100);
  • Set Damage Dealt(Event Player, 100);
  • Teleport(Event Player, Nearest Walkable Position(Position Of(Event Player)));
  • }
  • }
  • rule("Pharah HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Pharah)), Custom String(
  • "Ability 1 {0}", Ability Icon String(Hero(Pharah), Button(Ability 1))), Null, Custom String(
  • "Boost just a little bit more upwards."), Left, 1, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Pharah)), Custom String(
  • "Ability 2 {0}", Ability Icon String(Hero(Pharah), Button(Ability 2))), Null, Custom String(
  • "Throw affected enemies towards you."), Left, 2, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Pharah)), Custom String(
  • "Ultimate {0}", Ability Icon String(Hero(Pharah), Button(Ultimate))), Null, Custom String(
  • "Teleport into the air and fire a deadly barrage."), Left, 3, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • }
  • }
  • rule("Pharah jet booster")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Pharah;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Pharah);
  • Is Using Ability 1(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Pharah"), Custom String("Pharah ability 1"), True, 2) == True);
  • Apply Impulse(Event Player, Up, 20, To World, Incorporate Contrary Motion);
  • }
  • }
  • rule("Pharah blast change")
  • {
  • event
  • {
  • Player Dealt Knockback;
  • All;
  • Pharah;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Pharah);
  • Event Ability == Button(Ability 2);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Pharah"), Custom String("Pharah ability 2"), True, 3) == True);
  • Apply Impulse(Victim, Direction Towards(Eye Position(Victim), Eye Position(Event Player)), Distance Between(Eye Position(Victim),
  • Eye Position(Event Player)), To World, Cancel Contrary Motion);
  • }
  • }
  • rule("Reaper HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Reaper)), Custom String(
  • "Ability 1 {0}", Ability Icon String(Hero(Reaper), Button(Ability 1))), Null, Custom String("No collision. (Be careful!)"),
  • Left, 1, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Reaper)), Custom String(
  • "Ability 2 {0}", Ability Icon String(Hero(Reaper), Button(Ability 2))), Null, Custom String("No changes."), Left, 2, Color(
  • White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Reaper)), Custom String(
  • "Ultimate {0}", Ability Icon String(Hero(Reaper), Button(Ultimate))), Null, Custom String("You fly towards nearby enemies."),
  • Left, 3, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • }
  • }
  • rule("Reaper wraith form")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Reaper;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Reaper);
  • Is Using Ability 1(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Reaper"), Custom String("Reaper ability 1"), True, 0) == True);
  • Disable Movement Collision With Environment(Event Player, False);
  • Disable Movement Collision With Players(Event Player);
  • Set Move Speed(Event Player, 200);
  • Wait Until(Is Using Ability 1(Event Player) == False, 99999);
  • Enable Movement Collision With Environment(Event Player);
  • Enable Movement Collision With Players(Event Player);
  • Set Move Speed(Event Player, 100);
  • }
  • }
  • rule("Reaper ultimate")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Reaper;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Reaper);
  • Is Using Ultimate(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Reaper"), Custom String("Reaper ultimate"), True, 1) == True);
  • Apply Impulse(Event Player, Direction Towards(Position Of(Event Player), Position Of(First Of(Sorted Array(Filtered Array(
  • All Living Players(Opposite Team Of(Team Of(Event Player))), Is Alive(Current Array Element)
  • == True && Current Array Element != Event Player), Distance Between(Position Of(Event Player), Position Of(
  • Current Array Element)))))), 50, To World, Incorporate Contrary Motion);
  • Wait(0.100, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
  • rule("Reaper fix")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Reaper;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Reaper);
  • Is Using Ability 1(Event Player) == True;
  • }
  • actions
  • {
  • Wait Until(Is Using Ability 1(Event Player) == False && Is On Objective(Event Player) == True, 99999);
  • Teleport(Event Player, Nearest Walkable Position(Event Player));
  • }
  • }
  • rule("Reaper ult damage")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Reaper;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Reaper);
  • Is Using Ultimate(Event Player) == True;
  • Event Ability != Null;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Reaper"), Custom String("Reaper ultimate double damage"), True, 3) == True);
  • Damage(Victim, Event Player, Event Damage);
  • }
  • }
  • rule("Reinhardt HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Reinhardt)), Custom String(
  • "Ability 1 {0}", Ability Icon String(Hero(Reinhardt), Button(Ability 1))), Null, Custom String(
  • "Charges up and does a \"hitscan\" afterwards."), Left, 1, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Reinhardt)), Custom String(
  • "Ability 2 {0}", Ability Icon String(Hero(Reinhardt), Button(Ability 2))), Null, Custom String("Sets enemies on fire."), Left,
  • 2, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Reinhardt)), Custom String(
  • "Ultimate {0}", Ability Icon String(Hero(Reinhardt), Button(Ultimate))), Null, Custom String(
  • "Makes enemies sink into the ground."), Left, 3, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • }
  • }
  • rule("Reinhardt charge")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Reinhardt;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Reinhardt);
  • Is Using Ability 1(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Reinhardt"), Custom String("Reinhardt ability 1"), True, 0) == True);
  • Set Move Speed(Event Player, 0);
  • Wait(0.500, Ignore Condition);
  • Small Message(Event Player, Custom String("3"));
  • Play Effect(All Players(All Teams), Good Explosion, Color(Red), Event Player, 3);
  • Wait(0.500, Ignore Condition);
  • Small Message(Event Player, Custom String("2"));
  • Play Effect(All Players(All Teams), Good Explosion, Color(Orange), Event Player, 3);
  • Wait(0.500, Ignore Condition);
  • Small Message(Event Player, Custom String("1"));
  • Play Effect(All Players(All Teams), Good Explosion, Color(Green), Event Player, 3);
  • Wait(0.500, Ignore Condition);
  • Small Message(Event Player, Custom String("Go!!!"));
  • Play Effect(All Players(All Teams), Good Explosion, Color(Green), Event Player, 3);
  • Set Move Speed(Event Player, 1000);
  • Wait Until(Is Using Ability 1(Event Player) == False, 99999);
  • Set Move Speed(Event Player, 100);
  • }
  • }
  • rule("Reinhardt fire strike")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Reinhardt;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Reinhardt);
  • Event Ability == Button(Ability 2);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Reinhardt"), Custom String("Reinhardt ability 2"), True, 1) == True);
  • Set Status(Victim, Event Player, Burning, 5);
  • Start Damage Over Time(Victim, Event Player, 2, 40);
  • }
  • }
  • rule("Reinhardt ultimate")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Reinhardt;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Reinhardt);
  • Event Ability == Button(Ultimate);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Reinhardt"), Custom String("Reinhardt ultimate"), True, 2) == True);
  • Teleport(Victim, Vector(X Component Of(Position Of(Victim)), Y Component Of(Position Of(Event Player)) - 5, Z Component Of(
  • Position Of(Victim))));
  • }
  • }
  • rule("Roadhog ultimate")
  • {
  • event
  • {
  • Player Took Damage;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Ability == Button(Ultimate);
  • Hero Of(Attacker) == Hero(Roadhog);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Roadhog"), Custom String("Roadhog ultimate"), True, 0) == True);
  • Attach Players(Event Player, Attacker, Vector(0, 0, 1));
  • Wait Until(Is Using Ultimate(Attacker) == False || Is Dead(Event Player) == True, 99999);
  • Detach Players(Event Player);
  • }
  • }
  • rule("Roadhog hook")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Roadhog;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Roadhog);
  • Event Ability == Button(Ability 1);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Roadhog"), Custom String("Roadhog ability 1"), True, 1) == True);
  • Teleport(Event Player, Nearest Walkable Position(Position Of(Event Player) + Vector(Random Integer(0, 1) == 1 ? Random Real(100,
  • 200) : Random Real(-100, -200), Random Real(-20, 20), Random Integer(0, 1) == 1 ? Random Real(150, 250) : Random Real(-150,
  • -250))));
  • Wait(0.500, Ignore Condition);
  • Teleport(Victim, Event Player);
  • }
  • }
  • rule("Roadhog breather")
  • {
  • event
  • {
  • Player Dealt Healing;
  • All;
  • Roadhog;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Roadhog);
  • Event Ability == Button(Ability 2);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Roadhog"), Custom String("Roadhog ability 2"), True, 2) == True);
  • Add Health Pool To Player(Event Player, Shields, Event Healing / 2, False, True);
  • }
  • }
  • rule("Roadhog HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Roadhog)), Custom String(
  • "Ability 1 {0}", Ability Icon String(Hero(Roadhog), Button(Ability 1))), Null, Custom String(
  • "Teleport yourself and the hooked person to a random position."), Left, 1, Color(White), Color(White), Color(White),
  • Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Roadhog)), Custom String(
  • "Ability 2 {0}", Ability Icon String(Hero(Roadhog), Button(Ability 2))), Null, Custom String(
  • "Gain shield equal to half of the healing."), Left, 2, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Roadhog)), Custom String(
  • "Ultimate {0}", Ability Icon String(Hero(Roadhog), Button(Ultimate))), Null, Custom String("Death, death everywhere."), Left,
  • 3, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • }
  • }
  • rule("Sigma pull")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Sigma;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Sigma);
  • Is Using Ability 1(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Sigma"), Custom String("Sigma ability 1"), True, 0) == True);
  • Apply Impulse(Filtered Array(Players in View Angle(Event Player, Opposite Team Of(Team Of(Event Player)), 45), Is In Line of Sight(
  • Eye Position(Current Array Element), Eye Position(Event Player), Barriers Do Not Block LOS) == True), Facing Direction Of(
  • Event Player), -20, To World, Cancel Contrary Motion);
  • Wait(0.050, Ignore Condition);
  • If(Filtered Array(Players Within Radius(Position Of(Event Player), 5, Opposite Team Of(Team Of(Event Player)), Off), Is Alive(
  • Current Array Element) == True) != Empty Array);
  • Damage(Filtered Array(Players Within Radius(Position Of(Event Player), 5, Opposite Team Of(Team Of(Event Player)), Off),
  • Current Array Element != Event Player), Event Player, 7.500);
  • If(Max Health(Event Player) == Health(Event Player));
  • Add Health Pool To Player(Event Player, Shields, 7.500, False, True);
  • Else;
  • Heal(Event Player, Event Player, 7.500);
  • End;
  • End;
  • Loop If Condition Is True;
  • }
  • }
  • rule("Sigma ultimate")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Sigma;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Sigma);
  • Is Using Ultimate(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Sigma"), Custom String("Sigma ultimate"), True, 1) == True);
  • Damage(Filtered Array(Players Within Radius(Eye Position(Event Player), 30, Opposite Team Of(Team Of(Event Player)), Surfaces),
  • Current Array Element != Event Player), Event Player, 10);
  • Wait(0.050, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
  • rule("Sigma HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Sigma)), Custom String("Passive {0}",
  • Ability Icon String(Hero(Sigma), Button(Primary Fire))), Null, Custom String("Damage people that look at your feet."), Left, 0,
  • Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Sigma)), Custom String(
  • "Ability 1 {0}", Ability Icon String(Hero(Sigma), Button(Ability 1))), Null, Custom String(
  • "Pull in enemies and absorb their health. Excess healing goes to shields."), Left, 1, Color(White), Color(White), Color(White),
  • Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Sigma)), Custom String(
  • "Ability 2 {0}", Ability Icon String(Hero(Sigma), Button(Ability 2))), Null, Custom String(
  • "Excludes victim from existance for 10s."), Left, 2, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Sigma)), Custom String(
  • "Ultimate {0}", Ability Icon String(Hero(Sigma), Button(Ultimate))), Null, Custom String(
  • "Pull people in, dealing massive damage."), Left, 3, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • }
  • }
  • rule("76 sprint")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Soldier: 76;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Soldier: 76);
  • Is Using Ability 1(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("76"), Custom String("76 ability 1"), True, 0) == True);
  • Set Move Speed(Event Player, 75);
  • Set Damage Dealt(Event Player, 1000);
  • Disallow Button(Event Player, Button(Primary Fire));
  • Wait Until(Is Using Ability 1(Event Player) == False, 99999);
  • Set Move Speed(Event Player, 100);
  • Set Damage Dealt(Event Player, 100);
  • Allow Button(Event Player, Button(Primary Fire));
  • }
  • }
  • rule("76 rockets")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Soldier: 76;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Soldier: 76);
  • Event Ability == Button(Secondary Fire);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("76"), Custom String("76 secondary fire"), True, 1) == True);
  • Kill(Victim, Event Player);
  • }
  • }
  • rule("76 ultimate")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Soldier: 76;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Soldier: 76);
  • Is Using Ultimate(Event Player) == True;
  • Is Button Held(Event Player, Button(Primary Fire)) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("76"), Custom String("76 ultimate"), True, 0) == True);
  • Start Facing(Event Player, Direction Towards(Event Player, Player Closest To Reticle(Event Player, Opposite Team Of(Team Of(
  • Event Player)))), 10000, To World, Direction and Turn Rate);
  • Set Damage Dealt(Event Player, 200);
  • Wait Until(Is Button Held(Event Player, Button(Primary Fire)) == False || Is Using Ultimate(Event Player) == False, 99999);
  • Stop Facing(Event Player);
  • Set Damage Dealt(Event Player, 100);
  • }
  • }
  • rule("76 HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Soldier: 76)), Custom String(
  • "Ability 1 {0}", Ability Icon String(Hero(Soldier: 76), Button(Ability 1))), Null, Custom String(
  • "You sprint slower. Deal 1000% damage while sprinting but have your left click disabled."), Left, 1, Color(White), Color(
  • White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Soldier: 76)), Custom String(
  • "Ability 2 {0}", Ability Icon String(Hero(Soldier: 76), Button(Ability 2))), Null, Custom String("No changes."), Left, 2,
  • Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Soldier: 76)), Custom String(
  • "Ultimate {0}", Ability Icon String(Hero(Soldier: 76), Button(Ultimate))), Null, Custom String("Actual aimbot. 200% damage."),
  • Left, 3, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • }
  • }
  • rule("Sombra translocator")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Sombra;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Sombra);
  • Is Using Ability 2(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Sombra"), Custom String("Sombra ability 2"), True, 0) == True);
  • Wait Until(Is Using Ability 2(Event Player) == False || Health(Event Player) == 1, 99999);
  • Press Button(Event Player, Button(Ability 2));
  • Set Ability Cooldown(Event Player, Button(Ability 2), 12);
  • Wait(1, Ignore Condition);
  • Clear Status(Event Player, Unkillable);
  • If(Is Using Ability 2(Event Player) == True);
  • Teleport(Event Player, Vector(0, -9999, 0));
  • }
  • }
  • rule("Sombra ultimate")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Sombra;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Sombra);
  • Is Using Ultimate(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Sombra"), Custom String("Sombra ultimate"), True, 2) == True);
  • Teleport(All Living Players(All Teams), Nearest Walkable Position(Position Of(Event Player)));
  • Set Environment Credit Player(All Players(All Teams), Event Player);
  • }
  • }
  • rule("Sombra translocator fix")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Sombra;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Sombra);
  • Is Using Ability 2(Event Player) == True;
  • Has Status(Event Player, Unkillable) == False;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Sombra"), Custom String("Sombra translocator unkillable"), True, 1) == True);
  • Set Status(Event Player, Event Player, Unkillable, 1);
  • Wait(0.500, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
  • rule("Sombra HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Sombra)), Custom String(
  • "Ability 1 {0}", Ability Icon String(Hero(Sombra), Button(Ability 1))), Null, Custom String(
  • "Faster movement speed. You're phased out."), Left, 1, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Sombra)), Custom String(
  • "Ability 2 {0}", Ability Icon String(Hero(Sombra), Button(Ability 2))), Null, Custom String(
  • "Unkillable when being used. Automatically TP to it when at 1 hp(you die if impossible to do so)."), Left, 2, Color(White),
  • Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Sombra)), Custom String(
  • "Ultimate {0}", Ability Icon String(Hero(Sombra), Button(Ultimate))), Null, Custom String("Teleport everyone to yourself."),
  • Left, 3, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • }
  • }
  • rule("Symmetra 1")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Symmetra;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Symmetra);
  • Event Ability != Null;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Symmetra"), Custom String("Symmetra passive deal bonus damage"), True, 0) == True);
  • Damage(Victim, Event Player, Max Health(Victim) / 10);
  • }
  • }
  • rule("Symmetra 2")
  • {
  • event
  • {
  • Player Took Damage;
  • All;
  • Symmetra;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Symmetra);
  • Event Ability != Null;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Symmetra"), Custom String("Symmetra passive take bonus damage"), True, 0) == True);
  • Damage(Event Player, Attacker, Max Health(Event Player) / 10);
  • }
  • }
  • rule("Symmetra HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Symmetra)), Custom String(
  • "Passive {0}", Ability Icon String(Hero(Symmetra), Button(Primary Fire))), Null, Custom String(
  • "You deal and take 10% of max HP as damage."), Left, 1, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • }
  • }
  • rule("Torbjorn ultimate freeze")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Torbjörn;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Torbjörn);
  • Event Ability == Button(Ultimate);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Torbjorn"), Custom String("Torbjorn ultimate"), True, 0) == True);
  • Set Status(Victim, Event Player, Frozen, 1);
  • }
  • }
  • rule("Torbjorn E freeze")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Torbjörn;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Torbjörn);
  • Is Using Ability 2(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Torbjorn"), Custom String("Torbjorn ability 2"), True, 1) == True);
  • Set Status(Victim, Event Player, Frozen, Workshop Setting Integer(Custom String("Torbjorn"), Custom String(
  • "Overload freeze duration"), 1, 0, 100, 2));
  • }
  • }
  • rule("Torbjorn HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Torbjörn)), Custom String(
  • "Ability 1 {0}", Ability Icon String(Hero(Torbjörn), Button(Ability 1))), Null, Custom String("No changes."), Left, 1, Color(
  • White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Torbjörn)), Custom String(
  • "Ability 2 {0}", Ability Icon String(Hero(Torbjörn), Button(Ability 2))), Null, Custom String(
  • "All damage you deal freezes others."), Left, 2, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Torbjörn)), Custom String(
  • "Ultimate {0}", Ability Icon String(Hero(Torbjörn), Button(Ultimate))), Null, Custom String("Freezes enemies."), Left, 3,
  • Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • }
  • }
  • rule("Tracer recall")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Tracer;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Tracer);
  • Is Using Ability 2(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Tracer"), Custom String("Tracer ability 2"), True, 0) == True);
  • Set Slow Motion(50);
  • Wait Until(Is Using Ability 2(Event Player) == False || Entity Exists(Event Player) == False, 1.250);
  • Set Slow Motion(100);
  • }
  • }
  • rule("Tracer ult")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Tracer;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Tracer);
  • Event Ability == Button(Ultimate);
  • Event Damage <= 50;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Tracer"), Custom String("Tracer ultimate"), True, 0) == True);
  • Teleport(All Living Players(Opposite Team Of(Team Of(Event Player))), Victim);
  • }
  • }
  • rule("Tracer HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Tracer)), Custom String(
  • "Ability 1 {0}", Ability Icon String(Hero(Tracer), Button(Ability 1))), Null, Custom String(
  • "Knock yourself and people around you forward."), Left, 1, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Tracer)), Custom String(
  • "Ability 2 {0}", Ability Icon String(Hero(Tracer), Button(Ability 2))), Null, Custom String("Slows down the game."), Left, 2,
  • Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Tracer)), Custom String(
  • "Ultimate {0}", Ability Icon String(Hero(Tracer), Button(Ultimate))), Null, Custom String(
  • "If stuck to a target teleports their entire team there."), Left, 3, Color(White), Color(White), Color(White),
  • Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Tracer)), Custom String("Melee {0}",
  • Ability Icon String(Hero(Tracer), Button(Melee))), Null, Custom String("Deals knockback."), Left, -1, Color(White), Color(
  • White), Color(White), Visible To and String, Default Visibility);
  • }
  • }
  • rule("Widowmaker freeze")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Widowmaker;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Widowmaker);
  • Is Firing Secondary(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Widowmaker"), Custom String("Widowmaker passive"), True, 98) == True);
  • Set Status(Ray Cast Hit Player(Eye Position(Event Player), Eye Position(Event Player) + Facing Direction Of(Event Player) * 100,
  • All Players(Opposite Team Of(Team Of(Event Player))), Event Player, True), Event Player, Rooted, 0.200);
  • Wait(0.050, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
  • rule("Widowmaker venom shrink")
  • {
  • event
  • {
  • Player Took Damage;
  • All;
  • All;
  • }
  • conditions
  • {
  • Hero Of(Attacker) == Hero(Widowmaker);
  • Event Ability == Button(Ability 2);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Widowmaker"), Custom String("Widowmaker ability 2"), True, 0) == True);
  • Start Scaling Player(Event Player, 0.250, True);
  • Set Damage Dealt(Event Player, 10);
  • Set Move Speed(Event Player, 25);
  • Set Damage Received(Event Player, 200);
  • Wait Until(Health(Event Player) == Max Health(Event Player), 99999);
  • Set Damage Dealt(Event Player, 100);
  • Set Move Speed(Event Player, 100);
  • Stop Scaling Player(Event Player);
  • Set Damage Received(Event Player, 100);
  • }
  • }
  • rule("Widowmaker ult")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Widowmaker);
  • Is Using Ultimate(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Widowmaker"), Custom String("Widowmaker ultimate"), True, 1) == True);
  • Set Damage Dealt(Event Player, 1000);
  • Set Invisible(All Players(All Teams), All);
  • Wait Until(Is Using Ultimate(Event Player) == False || Entity Exists(Event Player) == False, 15);
  • Set Damage Dealt(Event Player, 100);
  • Set Invisible(All Players(All Teams), None);
  • }
  • }
  • rule("Widow ult buff")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Count Of(Filtered Array(Players On Hero(Hero(Widowmaker), All Teams), Is Using Ultimate(Current Array Element) == True)) >= 1;
  • Is Standing(Event Player) == False;
  • Is On Ground(Event Player) == True;
  • }
  • actions
  • {
  • Play Effect(Players On Hero(Hero(Widowmaker), All Teams), Ring Explosion, Color(Blue), Position Of(Event Player), 1);
  • Wait(0.500, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
  • rule("Winston ultimate")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Winston;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Winston);
  • Ultimate Charge Percent(Event Player) == 100;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Winston"), Custom String("Winston ultimate"), True, 0) == True);
  • Clear Status(Event Player, Asleep);
  • Clear Status(Event Player, Stunned);
  • Clear Status(Event Player, Knocked Down);
  • Clear Status(Event Player, Hacked);
  • Press Button(Event Player, Button(Ultimate));
  • Wait(0.100, Ignore Condition);
  • Loop If(Is Using Ultimate(Event Player) == False && Ultimate Charge Percent(Event Player) == 100);
  • Set Damage Dealt(Event Player, 200);
  • Set Move Speed(Event Player, 150);
  • Wait Until(Is Using Ultimate(Event Player) == False, 99999);
  • Set Damage Dealt(Event Player, 100);
  • Set Move Speed(Event Player, 100);
  • }
  • }
  • rule("Winston jump pack")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Winston;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Winston);
  • Is Using Ability 1(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Winston"), Custom String("Winston ability 1"), True, 1) == True);
  • Attach Players(First Of(Sorted Array(Filtered Array(Players Within Radius(Event Player, 5, Team Of(Event Player), Surfaces),
  • Is Alive(Current Array Element) == True && Current Array Element != Event Player), Distance Between(Event Player,
  • Current Array Element))), Event Player, Vector(0, 2, -0.500));
  • Wait(0.250, Ignore Condition);
  • Wait Until(Is On Ground(Event Player) == True, 5);
  • Detach Players(Players Within Radius(Event Player, 3, Team Of(Event Player), Off));
  • }
  • }
  • rule("Winston bubble")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Winston;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Winston);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Winston"), Custom String("Winston ability 2"), True, 2) == True);
  • Start Scaling Barriers(Event Player, 0.500, True);
  • Wait Until(Hero Of(Event Player) != Hero(Winston), 99999);
  • Stop Scaling Barriers(Event Player);
  • }
  • }
  • rule("Winston HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Winston)), Custom String(
  • "Ability 1 {0}", Ability Icon String(Hero(Winston), Button(Ability 1))), Null, Custom String(
  • "Carry a nearby teammate with you."), Left, 0, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Winston)), Custom String(
  • "Ability 2 {0}", Ability Icon String(Hero(Winston), Button(Ability 2))), Null, Custom String(
  • "Smaller shield with shorter cooldown."), Left, 1, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Winston)), Custom String(
  • "Ultimate {0}", Ability Icon String(Hero(Winston), Button(Ultimate))), Null, Custom String("monke angry, monke press q for u"),
  • Left, 2, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • }
  • }
  • rule("Widowmaker HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Widowmaker)), Custom String(
  • "Passive {0}", Ability Icon String(Hero(Widowmaker), Button(Primary Fire))), Null, Custom String(
  • "Scoping in on enemies makes them unable to move."), Left, 0, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Widowmaker)), Custom String(
  • "Ability 2 {0}", Ability Icon String(Hero(Widowmaker), Button(Ability 2))), Null, Custom String(
  • "Shrinks enemies and lowers their damage until fully healed."), Left, 1, Color(White), Color(White), Color(White),
  • Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Widowmaker)), Custom String(
  • "Ultimate {0}", Ability Icon String(Hero(Widowmaker), Button(Ultimate))), Null, Custom String(
  • "Make everyone invisible. You deal way more damage."), Left, 2, Color(White), Color(White), Color(White),
  • Visible To and String, Default Visibility);
  • }
  • }
  • rule("Wrecking ball piledriver")
  • {
  • event
  • {
  • Player Took Damage;
  • All;
  • All;
  • }
  • conditions
  • {
  • Hero Of(Attacker) == Hero(Wrecking Ball);
  • Event Ability == Button(Crouch);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Wrecking ball"), Custom String("Wrecking ball crouch"), True, 0) == True);
  • Apply Impulse(Event Player, Up, 20, To World, Cancel Contrary Motion);
  • Wait(0.500, Ignore Condition);
  • Wait Until(Is On Ground(Event Player) == True, 99999);
  • Set Status(Event Player, Attacker, Knocked Down, 2);
  • Damage(Event Player, Attacker, 40);
  • }
  • }
  • rule("Wrecking ball smacc")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Wrecking Ball;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Wrecking Ball);
  • Event Ability == Button(Secondary Fire);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Wrecking ball"), Custom String("Wrecking ball ability 1"), True, 4) == True);
  • Set Status(Victim, Event Player, Knocked Down, 3);
  • }
  • }
  • rule("Wrecking ball ultimate")
  • {
  • event
  • {
  • Player Took Damage;
  • All;
  • All;
  • }
  • conditions
  • {
  • Hero Of(Attacker) == Hero(Wrecking Ball);
  • Event Ability == Button(Ultimate);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Wrecking ball"), Custom String("Wrecking ball ultimate"), True, 6) == True);
  • Play Effect(All Players(All Teams), Bad Explosion, Color(Red), Event Player, 8);
  • Play Effect(All Players(All Teams), Explosion Sound, Color(White), Event Player, 8);
  • Kill(Players Within Radius(Position Of(Event Player), 8, Team Of(Event Player), Surfaces And All Barriers), Attacker);
  • }
  • }
  • rule("Wrecking ball HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Wrecking Ball)), Custom String(
  • "Crouch {0}", Ability Icon String(Hero(Wrecking Ball), Button(Crouch))), Null, Custom String(
  • "Knocks enemies upwards. They take fall damage."), Left, 0, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Wrecking Ball)), Custom String(
  • "Ability 1 {0}", Ability Icon String(Hero(Wrecking Ball), Button(Ability 1))), Null, Custom String(
  • "Hitting enemies knocks them down."), Left, 1, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Wrecking Ball)), Custom String(
  • "Ultimate {0}", Ability Icon String(Hero(Wrecking Ball), Button(Ultimate))), Null, Custom String(
  • "Your mines are mini nukes. Anyone touching them kills everyone nearby."), Left, 2, Color(White), Color(White), Color(White),
  • Visible To and String, Default Visibility);
  • }
  • }
  • rule("Zarya personal barrier")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Zarya;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Zarya);
  • Is Using Ability 1(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Zarya"), Custom String("Zarya ability 1"), True, 0) == True);
  • Start Scaling Player(Event Player, 2, False);
  • If(Is Using Ability 2(Event Player) == False);
  • Start Scaling Barriers(Event Player, 0.100, False);
  • End;
  • Set Damage Dealt(Event Player, 300);
  • Set Move Speed(Event Player, 150);
  • Set Ammo(Event Player, 0, Max Ammo(Event Player, 0));
  • Wait Until(Is Using Ability 1(Event Player) == False, 99999);
  • Stop Scaling Player(Event Player);
  • Set Move Speed(Event Player, 100);
  • Set Damage Dealt(Event Player, 100);
  • If(Is Using Ability 2(Event Player) == False);
  • Stop Scaling Barriers(Event Player);
  • }
  • }
  • rule("Zarya projected barrier")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Zarya;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Zarya);
  • Is Using Ability 2(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Zarya"), Custom String("Zarya ability 2"), True, 1) == True);
  • Start Scaling Barriers(Event Player, 4, False);
  • Wait Until(Is Using Ability 2(Event Player) == False, 99999);
  • If(Is Using Ability 1(Event Player) == True);
  • Start Scaling Barriers(Event Player, 1.500, False);
  • Else;
  • Stop Scaling Barriers(Event Player);
  • }
  • }
  • rule("Zarya ult")
  • {
  • event
  • {
  • Player Took Damage;
  • All;
  • All;
  • }
  • conditions
  • {
  • Hero Of(Attacker) == Hero(Zarya);
  • Event Ability == Button(Ultimate);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Zarya"), Custom String("Zarya ultimate"), True, 2) == True);
  • Start Camera(Event Player, Ray Cast Hit Position(Eye Position(Event Player), Eye Position(Event Player) + Facing Direction Of(
  • Event Player) * 40, Null, All Players(All Teams), True), Eye Position(Event Player), 3);
  • Disable Hero HUD(Event Player);
  • Wait(45, Ignore Condition);
  • Wait(60, Ignore Condition);
  • Stop Camera(Event Player);
  • Enable Hero HUD(Event Player);
  • }
  • }
  • rule("Zarya HUD")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Zarya)), Custom String(
  • "Ability 1{0}", Ability Icon String(Hero(Zarya), Button(Ability 1))), Null, Custom String(
  • "Boosts all your stats as long as it's active."), Left, 0, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Zarya)), Custom String(
  • "Ability 2 {0}", Ability Icon String(Hero(Zarya), Button(Ability 2))), Null, Custom String("It's damn huge."), Left, 1, Color(
  • White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Zarya)), Custom String(
  • "Ultimate {0}", Ability Icon String(Hero(Zarya), Button(Ultimate))), Null, Custom String(
  • "Don't even bring this torture upon enemies... Please..."), Left, 2, Color(White), Color(White), Color(White),
  • Visible To and String, Default Visibility);
  • }
  • }
  • rule("Zenyatta ultimate damage")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Zenyatta;
  • }
  • conditions
  • {
  • Is Using Ultimate(Event Player) == True;
  • Hero Of(Event Player) == Hero(Zenyatta);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Zenyatta"), Custom String("Zanyatta ultimate"), True, 0) == True);
  • Damage(Players Within Radius(Position Of(Event Player), 10, All Teams, Off), Event Player, 30);
  • Wait(0.100, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
  • rule("Zenyatta ultimate use")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Zenyatta;
  • }
  • conditions
  • {
  • Is Using Ultimate(Event Player) == True;
  • Hero Of(Event Player) == Hero(Zenyatta);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Zenyatta"), Custom String("Zenyatta ultimate no healing"), True, 1) == True);
  • Set Healing Dealt(Event Player, 0);
  • Wait Until(Is Using Ultimate(Event Player) == False, 99999);
  • Set Healing Dealt(Event Player, 100);
  • }
  • }
  • rule("Zenyatta headshot")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Zenyatta;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Zenyatta);
  • Event Was Critical Hit == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Zenyatta"), Custom String("Zenyatta passive"), True, 2) == True);
  • Set Status(Victim, Event Player, Stunned, 3);
  • }
  • }
  • rule("Zenyatta hud")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Zenyatta)), Custom String(
  • "Passive {0}", Ability Icon String(Hero(Zenyatta), Button(Primary Fire))), Null, Custom String("Headshots stun the target."),
  • Left, 0, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Zenyatta)), Custom String(
  • "Ultimate {0}", Ability Icon String(Hero(Zenyatta), Button(Ultimate))), Null, Custom String(
  • "Brings death upon the world of mortals."), Left, 2, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Hero Of(Current Array Element) == Hero(Zenyatta)), Custom String(
  • "Ability 1{0}", Ability Icon String(Hero(Zenyatta), Button(Ability 1))), Null, Custom String(
  • "Applies shields to the healed person."), Left, 1, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • }
  • }
  • rule("Shameless self credit")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(All Players(All Teams), Null, Custom String("Made by TMGR313 & Jorin33"), Null, Right, 0, Color(White), Color(
  • White), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(All Players(All Teams), Null, Custom String("Overwatch but unfair v1.1.4 code: 6KAGSA"), Null, Right, 1, Color(
  • Create HUD Text(All Players(All Teams), Null, Custom String("Overwatch but unfair v1.1.5 code: 6KAGSA"), Null, Right, 1, Color(
  • White), Color(White), Color(White), Visible To and String, Default Visibility);
  • }
  • }
  • rule("Assemble hero phase short uwu")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Is Assembling Heroes == True;
  • }
  • actions
  • {
  • Set Match Time(0);
  • }
  • }
  • rule("Doomfist ultimate")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Doomfist;
  • }
  • conditions
  • {
  • Is Using Ultimate(Event Player) == True;
  • Hero Of(Event Player) == Hero(Doomfist);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Doomfist"), Custom String("Doomfist ultimate"), True, 99) == True);
  • Wait(0.500, Ignore Condition);
  • Teleport(Event Player, Position Of(Random Value In Array(All Living Players(Opposite Team Of(Team Of(Event Player))))));
  • Set Status(Closest Player To(Position Of(Event Player), Opposite Team Of(Team Of(Event Player))), Event Player, Frozen, 3);
  • Wait(0.750, Ignore Condition);
  • Press Button(Event Player, Button(Primary Fire));
  • }
  • }
  • rule("Sombra invis")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Sombra;
  • }
  • conditions
  • {
  • Is Using Ability 1(Event Player) == True;
  • Hero Of(Event Player) == Hero(Sombra);
  • Is Using Ability 1(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Sombra"), Custom String("Sombra ability 1"), True, -149) == True);
  • Set Move Speed(Event Player, 200);
  • Set Status(Event Player, Event Player, Phased Out, 9999);
  • Wait Until(Is Using Ability 1(Event Player) == False, 99999);
  • Set Move Speed(Event Player, 100);
  • Clear Status(Event Player, Phased Out);
  • }
  • }
  • rule("Zen shield")
  • {
  • event
  • {
  • Player Dealt Healing;
  • All;
  • Zenyatta;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Zenyatta);
  • Event Ability == Button(Ability 1);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Zenyatta"), Custom String("Zenyatta ability 1"), True, 98) == True);
  • Add Health Pool To Player(Healee, Shields, Event Healing, False, True);
  • }
  • }
  • rule("Tracer melee")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Tracer;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Tracer);
  • Event Ability == Button(Melee);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Tracer"), Custom String("Tracer melee"), True, 98) == True);
  • Apply Impulse(Victim, Up, 10, To World, Cancel Contrary Motion);
  • Wait(0.050, Ignore Condition);
  • Apply Impulse(Victim, Facing Direction Of(Event Player), 25, To World, Cancel Contrary Motion);
  • }
  • }
  • rule("Tracer blink")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Tracer;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Tracer);
  • Is Using Ability 1(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Tracer"), Custom String("Tracer ability 1"), True, 99) == True);
  • Apply Impulse(Players Within Radius(Event Player, 5, All Teams, Surfaces), Up, 10, To World, Cancel Contrary Motion);
  • Wait(0.050, Ignore Condition);
  • Apply Impulse(Players Within Radius(Event Player, 5, All Teams, Surfaces), Facing Direction Of(Event Player), 45, To World,
  • Cancel Contrary Motion);
  • }
  • }
  • rule("Doomfist ultimate instakill")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Doomfist;
  • }
  • conditions
  • {
  • Hero Of(Event Player) == Hero(Doomfist);
  • Event Ability == Button(Ultimate);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Doomfist"), Custom String("Doomfist ultimate instakill"), True, 100) == True);
  • Kill(Victim, Event Player);
  • }
  • }
  • rule("Hero hud")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • actions
  • {
  • Create HUD Text(Event Player, Custom String("{0} {1}:", Hero Of(Event Player), Hero Icon String(Hero Of(Event Player))), Null,
  • Null, Left, -99, Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
  • }
  • }
  • rule("Player died")
  • {
  • event
  • {
  • Player Died;
  • All;
  • All;
  • }
  • actions
  • {
  • Wait Until(Is Alive(Event Player), 99999);
  • Stop Scaling Barriers(Event Player);
  • Stop Scaling Player(Event Player);
  • Remove All Health Pools From Player(Event Player);
  • Stop All Heal Over Time(Event Player);
  • Stop All Damage Over Time(Event Player);
  • Clear Status(Event Player, Burning);
  • Set Max Health(Event Player, 100);
  • Set Damage Dealt(Event Player, 100);
  • }
  • }
  • rule("\"On Fire!\" damage")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Portrait On Fire(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Overall"), Custom String("Portrait on-fire damage"), True, 0) == True);
  • If(Health(Event Player) > Max Health(Event Player) / 3);
  • Start Damage Over Time(Event Player, Null, 1, 10);
  • Set Status(Event Player, Event Player, Burning, 1);
  • Small Message(Event Player, Custom String("\"You're on fire!\""));
  • Wait(1, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
  • rule("Dva rockets")
  • {
  • event
  • {
  • Player Took Damage;
  • All;
  • All;
  • }
  • conditions
  • {
  • Hero Of(Attacker) == Hero(D.Va);
  • Event Ability == Button(Ability 2);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("D.va"), Custom String("D.va ability 2"), True, 98) == True);
  • If(Random Integer(0, 1) == 0);
  • If(Random Integer(0, 1) == 0);
  • If(Random Integer(0, 1) == 0);
  • If(Random Integer(0, 1) == 0);
  • Set Status(Event Player, Attacker, Hacked, 3);
  • Else;
  • Set Status(Event Player, Attacker, Knocked Down, 1);
  • End;
  • Else If(Random Integer(0, 1) == 0);
  • Set Status(Event Player, Attacker, Asleep, 6);
  • Else;
  • Set Status(Event Player, Attacker, Frozen, 1);
  • End;
  • Else If(Random Integer(0, 1) == 0);
  • If(Random Integer(0, 1) == 0);
  • If(Random Integer(0, 1) == 0);
  • Set Status(Event Player, Attacker, Rooted, 1.500);
  • Else;
  • Set Status(Event Player, Attacker, Stunned, 1);
  • End;
  • Else;
  • Set Status(Event Player, Attacker, Burning, 3);
  • Start Damage Over Time(Event Player, Attacker, 3, 20);
  • }
  • }
  • rule("Sigma rock")
  • {
  • event
  • {
  • Player Took Damage;
  • All;
  • All;
  • }
  • conditions
  • {
  • Hero Of(Attacker) == Hero(Sigma);
  • Event Ability == Button(Ability 2);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Sigma"), Custom String("Sigma ability 2"), True, 10) == True);
  • Wait(0.250, Ignore Condition);
  • Small Message(Event Player, Custom String("You no longer exist."));
  • If(Is Dead(Event Player) == False);
  • Resurrect(Event Player);
  • End;
  • If(Attacker == Event Player);
  • Wait(0.500, Ignore Condition);
  • Set Ability Cooldown(Event Player, Button(Ability 2), 20);
  • End;
  • Disallow Button(Event Player, Button(Primary Fire));
  • Disallow Button(Event Player, Button(Secondary Fire));
  • Disallow Button(Event Player, Button(Ability 1));
  • Disallow Button(Event Player, Button(Ability 2));
  • Disallow Button(Event Player, Button(Ultimate));
  • Set Status(Event Player, Null, Phased Out, 10);
  • Set Damage Dealt(Event Player, 0);
  • Set Invisible(Event Player, All);
  • Wait(10, Ignore Condition);
  • Set Damage Dealt(Event Player, 100);
  • Set Invisible(Event Player, None);
  • Clear Status(Event Player, Phased Out);
  • Allow Button(Event Player, Button(Primary Fire));
  • Allow Button(Event Player, Button(Secondary Fire));
  • Allow Button(Event Player, Button(Ability 1));
  • Allow Button(Event Player, Button(Ability 2));
  • Allow Button(Event Player, Button(Ultimate));
  • Small Message(Event Player, Custom String("You exist."));
  • }
  • }
  • rule("Sigma pull")
  • {
  • event
  • {
  • Player Took Damage;
  • All;
  • All;
  • }
  • conditions
  • {
  • Hero Of(Attacker) == Hero(Sigma);
  • Event Ability == Null;
  • Is Using Ultimate(Attacker) == True;
  • Attacker != Event Player;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Sigma"), Custom String("Ultimate pulling people in"), True, 98) == True);
  • Apply Impulse(Event Player, Direction Towards(Eye Position(Event Player), Eye Position(Attacker)), 20, To World,
  • Cancel Contrary Motion);
  • }
  • }
  • rule("Ultimate pitch change")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • actions
  • {
  • If(Is Using Ultimate(Event Player) == True);
  • Start Modifying Hero Voice Lines(Event Player, Random Real(0.500, 1.500), False);
  • End;
  • If(Is Using Ultimate(Event Player) == False);
  • Stop Modifying Hero Voice Lines(Event Player);
  • End;
  • Wait(0.016, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
  • rule("Orisa barrier")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Orisa;
  • }
  • conditions
  • {
  • Is Alive(Event Player) == True;
  • Is Using Ability 2(Event Player) == True;
  • Hero Of(Event Player) == Hero(Orisa);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Orisa"), Custom String("Orisa ability 2"), True, 3) == True);
  • Start Scaling Barriers(Event Player, 100, False);
  • If(Hero Of(Event Player) != Hero(Orisa));
  • Stop Scaling Barriers(Event Player);
  • End;
  • Wait(0.250, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
  • rule("Rule 155")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Reinhardt;
  • }
  • actions
  • {
  • Start Scaling Barriers(Event Player, 1, False);
  • }
  • }
  • rule("Rule 156")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Sigma;
  • }
  • actions
  • {
  • Start Scaling Barriers(Event Player, 1, False);
  • }
  • }
  • rule("Rule 157")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Brigitte;
  • }
  • actions
  • {
  • Start Scaling Barriers(Event Player, 1, False);
  • }
  • }
  • rule("Sigma damage people looking at feet B)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Sigma;
  • }
  • conditions
  • {
  • Is Alive(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Sigma"), Custom String("Sigma passive"), True, 97) == True);
  • disabled Damage(First Of(Filtered Array(Sorted Array(Filtered Array(All Living Players(Opposite Team Of(Team Of(Event Player))),
  • Current Array Element != Event Player), Distance Between(Position Of(Event Player), Position Of(Current Array Element))),
  • Is In View Angle(Current Array Element, Vector(X Component Of(Position Of(Event Player)), Y Component Of(Position Of(
  • Event Player)) - 1.850, Z Component Of(Position Of(Event Player))), 8) == True && Distance Between(Eye Position(Event Player),
  • Eye Position(Current Array Element)) <= 10 && Is In Line of Sight(Eye Position(Current Array Element), Position Of(
  • Event Player), Enemy Barriers Block LOS) == True)), Event Player, 1.500);
  • Damage(Filtered Array(Sorted Array(Filtered Array(All Living Players(Opposite Team Of(Team Of(Event Player))),
  • Current Array Element != Event Player), Distance Between(Position Of(Event Player), Position Of(Current Array Element))),
  • Is In View Angle(Current Array Element, Vector(X Component Of(Position Of(Event Player)), Y Component Of(Position Of(
  • Event Player)) - 1.850, Z Component Of(Position Of(Event Player))), 6) == True && Distance Between(Eye Position(Event Player),
  • Eye Position(Current Array Element)) <= 25 && Is In Line of Sight(Eye Position(Current Array Element), Position Of(
  • Event Player), Enemy Barriers Block LOS) == True), Event Player, 10);
  • Wait(0.016, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
  • rule("Orisa random reload")
  • {
  • event
  • {
  • Player Dealt Damage;
  • All;
  • Orisa;
  • }
  • conditions
  • {
  • Event Ability == Button(Primary Fire);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Orisa"), Custom String("Orisa passive"), True, -10) == True);
  • If(Random Integer(1, 5) == 5);
  • Set Ammo(Victim, 0, 0);
  • }
  • }
  • rule("Orisa ultimate 1")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Orisa;
  • }
  • conditions
  • {
  • Is Using Ultimate(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Orisa"), Custom String("Orisa ultimate stand still"), True, -9) == True);
  • Set Damage Dealt(Event Player, 200);
  • Set Status(Event Player, Null, Hacked, 20);
  • Set Status(Event Player, Event Player, Invincible, 20);
  • Set Move Speed(Event Player, 0);
  • Wait Until(Is Using Ultimate(Event Player) == False, 20);
  • Set Move Speed(Event Player, 100);
  • Clear Status(Event Player, Invincible);
  • Clear Status(Event Player, Hacked);
  • Set Damage Dealt(Event Player, 100);
  • }
  • }
  • rule("Orisa ultimate 2")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Orisa;
  • }
  • conditions
  • {
  • Is Using Ultimate(Event Player) == True;
  • Is Alive(Event Player) == True;
  • Entity Exists(Event Player) == True;
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Orisa"), Custom String("Orisa ultimate ammo drain"), True, -9) == True);
  • Set Ammo(Filtered Array(Players Within Radius(Eye Position(Event Player), 25, Opposite Team Of(Team Of(Event Player)), Surfaces),
  • Current Array Element != Event Player), 0, 0);
  • Wait(0.100, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
  • rule("Fixes n stuff")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is In Spawn Room(Event Player) == True;
  • Is Alive(Event Player) == True;
  • Current Game Mode != Game Mode(Elimination);
  • Current Game Mode != Game Mode(Bounty Hunter);
  • Current Game Mode != Game Mode(Skirmish);
  • Current Game Mode != Game Mode(Deathmatch);
  • Current Game Mode != Game Mode(Team Deathmatch);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Overall"), Custom String("Disable abilities in spawn rooms"), True, 1) == True);
  • Set Status(Event Player, Null, Hacked, 3);
  • Small Message(Event Player, Custom String("Abilities disabled inside of spawn rooms."));
  • Wait(2.800, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
  • rule("More fixes n stuff")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is In Spawn Room(Event Player) == True;
  • Is Alive(Event Player) == True;
  • Current Game Mode != Game Mode(Elimination);
  • Current Game Mode != Game Mode(Bounty Hunter);
  • Current Game Mode != Game Mode(Skirmish);
  • Current Game Mode != Game Mode(Deathmatch);
  • Current Game Mode != Game Mode(Team Deathmatch);
  • }
  • actions
  • {
  • If(Workshop Setting Toggle(Custom String("Overall"), Custom String("Restart stats upon entering the spawn room"), True, 2)
  • == True);
  • Resurrect(Event Player);
  • Wait Until(Is Alive(Event Player), 99999);
  • Stop Scaling Barriers(Event Player);
  • Stop Scaling Player(Event Player);
  • Remove All Health Pools From Player(Event Player);
  • Stop All Heal Over Time(Event Player);
  • Stop All Damage Over Time(Event Player);
  • Clear Status(Event Player, Burning);
  • Set Max Health(Event Player, 100);
  • Set Damage Dealt(Event Player, 100);
  • Clear Status(Event Player, Phased Out);
  • Clear Status(Event Player, Unkillable);
  • Clear Status(Event Player, Invincible);
  • Set Move Speed(Event Player, 100);
  • Enable Movement Collision With Environment(Event Player);
  • Enable Movement Collision With Players(Event Player);
  • Set Damage Received(Event Player, 100);
  • }
  • }
Join the Workshop.codes Discord