Create
Return to post

Comparing difference between and

View raw
  • variables
  • {
  • global:
  • 0: Map_Progression
  • 1: GateUnlockProgression
  • 2: DifficultyLevelSwitch
  • 3: ExpertChallengeSwitch
  • 26: StarPoints
  • 27: CrucibleOfSouls
  • 28: IronHeartMode
  • 29: IronHeart
  • 30: CrucicbleOfSoulsMode
  • 31: CursedClock
  • 32: CursedClockMode
  • 33: OmegaSigil
  • 34: OmegaMode
  • 35: OmegaRNG
  • player:
  • 25: Adrenaline
  • 26: Corruption
  • }
  • rule("-==SPAWN POINTS==-")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • }
  • rule("Rule 97")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • Sombra;
  • }
  • conditions
  • {
  • Is Using Ability 1(Event Player) == True;
  • }
  • actions
  • {
  • Wait(10, Abort When False);
  • Press Button(Event Player, Ability 1);
  • }
  • }
  • rule("Team 1 // Spawn Point")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Is In Spawn Room(Event Player) == True;
  • Global Variable(Map_Progression) == 0;
  • }
  • actions
  • {
  • Teleport(Event Player, Vector(3.095, -0.802, -6.535));
  • }
  • }
  • rule("Team 2 // Respawn timer = 3.5")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 2;
  • All;
  • }
  • actions
  • {
  • Set Respawn Max Time(Event Player, 3.500);
  • }
  • }
  • rule("Team 1 // Die permanently")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • actions
  • {
  • Disable Built-In Game Mode Respawning(Event Player);
  • }
  • }
  • rule("-==VARIABLES==-")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • }
  • rule("Map_Progression // Default = 0")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • actions
  • {
  • Set Global Variable(Map_Progression, 0);
  • }
  • }
  • rule("Gate Unlock Progression = 0% // Initialize [GV]")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Set Global Variable(GateUnlockProgression, 0);
  • }
  • }
  • rule("Map Progression = 0 // Initialize [GV]")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Has Spawned(All Players(All Teams)) == True;
  • Number of Living Players(Team 1) >= 1;
  • }
  • actions
  • {
  • disabled Set Status(Event Player, Null, Frozen, 9999);
  • disabled Big Message(Event Player, Custom String("Heroes, capture the objectives without dying to win.", Null, Null, Null));
  • disabled Wait(2.500, Ignore Condition);
  • disabled Big Message(Event Player, Custom String("Zombies, stop the heroes from capturing the objectives by killing them.", Null, Null,
  • Null));
  • disabled Wait(3, Ignore Condition);
  • disabled Small Message(Event Player, Custom String("3...", Null, Null, Null));
  • disabled Wait(1, Ignore Condition);
  • disabled Small Message(Event Player, Custom String("2...", Null, Null, Null));
  • disabled Wait(1, Ignore Condition);
  • disabled Small Message(Event Player, Custom String("1...", Null, Null, Null));
  • disabled Wait(1, Ignore Condition);
  • disabled Clear Status(Event Player, Frozen);
  • disabled Big Message(Event Player, Custom String("RUN!", Null, Null, Null));
  • }
  • }
  • rule("-==GAME START==-")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • }
  • rule("Team 2 // Spawn point")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 2;
  • All;
  • }
  • conditions
  • {
  • Is In Spawn Room(Event Player) == True;
  • Global Variable(Map_Progression) == 0;
  • }
  • actions
  • {
  • Teleport(Event Player, Vector(-12.555, -3.102, -27.234));
  • }
  • }
  • rule("-==OBJECTIVES==-")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • }
  • rule("Objective 1 // Attack")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Global Variable(Map_Progression) == 0;
  • }
  • actions
  • {
  • Create Icon(All Players(Team 1), Vector(-10.041, 7.366, 51.350), Arrow: Down, Visible To and Position, Blue, True);
  • Create Icon(All Players(Team 2), Vector(-10.041, 7.366, 51.350), Arrow: Down, Visible To and Position, Red, True);
  • }
  • }
  • rule("Objective 1 // Visuals")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create Effect(All Players(Team 1), Ring, Blue, Vector(-10.041, 7.366, 51.350), 4, Visible To Position and Radius);
  • Create Effect(All Players(Team 2), Ring, Red, Vector(-10.041, 7.366, 51.350), 4, Visible To Position and Radius);
  • }
  • }
  • rule("Objective 2 // Visuals")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create Effect(All Players(Team 1), Ring, Blue, Vector(35.974, 3.053, 78.767), 3, Visible To Position and Radius);
  • Create Effect(All Players(Team 2), Ring, Red, Vector(35.974, 3.052, 78.767), 3, Visible To Position and Radius);
  • }
  • }
  • rule("Objective 3 // Visuals")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • actions
  • {
  • Create Effect(All Players(Team 1), Ring, Blue, Vector(-25.684, 1.916, 109.478), 3.450, Visible To Position and Radius);
  • Create Effect(All Players(Team 2), Ring, Red, Vector(-25.684, 1.916, 109.478), 3.450, Visible To Position and Radius);
  • }
  • }
  • rule("Transition // Destroy all effects, bring in new effects 2")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Global Variable(Map_Progression) == 2;
  • }
  • actions
  • {
  • Destroy All Icons;
  • Wait(0.250, Ignore Condition);
  • Create Icon(All Players(Team 1), Vector(-25.684, 1.916, 109.478), Arrow: Down, Visible To and Position, Blue, True);
  • Create Icon(All Players(Team 2), Vector(-25.684, 1.916, 109.478), Arrow: Down, Visible To and Position, Red, True);
  • }
  • }
  • rule("-==ESCAPE==-")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • }
  • rule("Objective 1 // When on objective 1, add 1 point for every 4 seconds.")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Players Within Radius(Vector(-10.041, 7.366, 51.350), 4, Team 1, Surfaces) == True;
  • Global Variable(Map_Progression) == 0;
  • Is Alive(Event Player) == True;
  • }
  • actions
  • {
  • Set Global Variable(GateUnlockProgression, Add(Global Variable(GateUnlockProgression), 1));
  • Wait(4, Ignore Condition);
  • Abort If(Compare(Global Variable(GateUnlockProgression), ==, 10));
  • Loop If Condition Is True;
  • }
  • }
  • rule("Objective 2 // When on objective 2, add 1 point for every 4.5 seconds.")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Players Within Radius(Vector(35.974, 3.053, 78.767), 3, Team 1, Surfaces) == True;
  • Global Variable(Map_Progression) == 1;
  • Is Alive(Event Player) == True;
  • }
  • actions
  • {
  • Set Global Variable(GateUnlockProgression, Add(Global Variable(GateUnlockProgression), 1));
  • Wait(4.500, Ignore Condition);
  • Abort If(Compare(Global Variable(GateUnlockProgression), ==, 20));
  • Loop If Condition Is True;
  • }
  • }
  • rule("Objective 3 // When on objective 3, add 1 point for every 5 seconds.")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Players Within Radius(Vector(-25.684, 1.916, 109.478), 3.450, Team 1, Surfaces) == True;
  • Global Variable(Map_Progression) == 2;
  • Is Alive(Event Player) == True;
  • }
  • actions
  • {
  • Set Global Variable(GateUnlockProgression, Add(Global Variable(GateUnlockProgression), 1));
  • Wait(5, Ignore Condition);
  • Abort If(Compare(Global Variable(GateUnlockProgression), ==, 30));
  • Loop If Condition Is True;
  • }
  • }
  • rule("Objective 4 // When on objective 4, add 1 point for every 5.5 seconds.")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Players Within Radius(Vector(-77.250, 6.424, 66.230), 4, Team 1, Surfaces) == True;
  • Global Variable(Map_Progression) == 3;
  • Is Alive(Event Player) == True;
  • }
  • actions
  • {
  • Set Global Variable(GateUnlockProgression, Add(Global Variable(GateUnlockProgression), 1));
  • Wait(5.500, Ignore Condition);
  • Abort If(Compare(Global Variable(GateUnlockProgression), ==, 40));
  • Loop If Condition Is True;
  • }
  • }
  • rule("Objective 4 // When on objective 5, add 1 point for every 6 seconds.")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Players Within Radius(Vector(-71.933, 8.125, 104.853), 2.500, Team 1, Surfaces) == True;
  • Global Variable(Map_Progression) == 4;
  • Is Alive(Event Player) == True;
  • }
  • actions
  • {
  • Set Global Variable(GateUnlockProgression, Add(Global Variable(GateUnlockProgression), 1));
  • Wait(6, Ignore Condition);
  • Abort If(Compare(Global Variable(GateUnlockProgression), ==, 40));
  • Loop If Condition Is True;
  • }
  • }
  • rule("HUD // Escape percentage")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • actions
  • {
  • Create HUD Text(Event Player, Null, Custom String("Gate Unlock Percentage (50% = Unlock)", Null, Null, Null), String("{0} / {1}",
  • Global Variable(GateUnlockProgression), 50, Null), Top, 7, Yellow, Yellow, White, Visible To and String, Default Visibility);
  • }
  • }
  • rule("-==PHASES==-")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • }
  • rule("Transition // Destroy all effects, bring in new effects for ob 2")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Global Variable(Map_Progression) == 1;
  • }
  • actions
  • {
  • Destroy All Icons;
  • Wait(0.250, Ignore Condition);
  • Create Icon(All Players(Team 1), Vector(35.974, 3.053, 78.767), Arrow: Down, Visible To and Position, Blue, True);
  • Create Icon(All Players(Team 2), Vector(35.974, 3.052, 78.767), Arrow: Down, Visible To and Position, Red, True);
  • }
  • }
  • rule("Transition // Destroy all effects, bring in new effects for ob 3")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Global Variable(Map_Progression) == 2;
  • }
  • actions
  • {
  • Destroy All Icons;
  • Wait(0.250, Ignore Condition);
  • Create Icon(All Players(Team 1), Vector(-25.684, 1.916, 109.478), Arrow: Down, Visible To and Position, Blue, True);
  • Create Icon(All Players(Team 2), Vector(-25.684, 1.916, 109.478), Arrow: Down, Visible To and Position, Red, True);
  • }
  • }
  • rule("Transition // Destroy all effects, bring in new effects for ob 4")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Global Variable(Map_Progression) == 3;
  • }
  • actions
  • {
  • Destroy All Icons;
  • Wait(0.250, Ignore Condition);
  • Create Icon(All Players(Team 1), Vector(-77.250, 6.423, 66.229), Arrow: Down, Visible To and Position, Blue, True);
  • Create Icon(All Players(Team 2), Vector(-77.250, 6.423, 66.229), Arrow: Down, Visible To and Position, Red, True);
  • }
  • }
  • rule("Transition // Destroy all effects, bring in new effects for ob 5")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Global Variable(Map_Progression) == 4;
  • }
  • actions
  • {
  • Destroy All Icons;
  • Wait(0.250, Ignore Condition);
  • Create Icon(All Players(Team 1), Vector(-71.932, 8.125, 104.853), Arrow: Down, Visible To and Position, Blue, True);
  • Create Icon(All Players(Team 2), Vector(-71.933, 8.125, 104.853), Arrow: Down, Visible To and Position, Red, True);
  • }
  • }
  • rule("-==UNORGANIZED AT THE MOMENT==-")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • }
  • rule("Objective 4 // Visuals")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create Effect(All Players(Team 1), Ring, Blue, Vector(-77.250, 6.422, 66.229), 4, Visible To Position and Radius);
  • Create Effect(All Players(Team 2), Ring, Red, Vector(-77.250, 6.422, 66.229), 4, Visible To Position and Radius);
  • }
  • }
  • rule("Objective 1 // 10% -> Objective 2")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Global Variable(GateUnlockProgression) == 10;
  • }
  • actions
  • {
  • Big Message(All Players(All Teams), Custom String("10% unlocked. A new objective has opened, attack!", Null, Null, Null));
  • Set Global Variable(Map_Progression, 1);
  • }
  • }
  • rule("Objective 3 // 20% -> Objective 3")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Global Variable(GateUnlockProgression) == 20;
  • }
  • actions
  • {
  • Big Message(All Players(All Teams), Custom String("20% unlocked. A new objective has opened, attack!", Null, Null, Null));
  • Set Global Variable(Map_Progression, 2);
  • }
  • }
  • rule("Objective 3 // 30% -> Objective 4")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Global Variable(GateUnlockProgression) == 30;
  • }
  • actions
  • {
  • Big Message(All Players(All Teams), Custom String("30% unlocked. A new objective has opened, attack!", Null, Null, Null));
  • Set Global Variable(Map_Progression, 3);
  • }
  • }
  • rule("Zombie // Blitz Rush (Speed boost when dead)")
  • {
  • event
  • {
  • Player Died;
  • Team 2;
  • All;
  • }
  • actions
  • {
  • Set Move Speed(Event Player, 265);
  • Wait(7, Ignore Condition);
  • Set Move Speed(Event Player, 200);
  • Wait(8, Ignore Condition);
  • Set Move Speed(Event Player, 100);
  • }
  • }
  • rule("Objective 3 // 40% -> Objective 5")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Global Variable(GateUnlockProgression) == 40;
  • }
  • actions
  • {
  • Big Message(All Players(All Teams), Custom String("40% unlocked. A new objective has opened, attack!", Null, Null, Null));
  • Set Global Variable(Map_Progression, 4);
  • }
  • }
  • rule("Objective 5 // Visuals")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • actions
  • {
  • Create Effect(All Players(Team 1), Ring, Blue, Vector(-71.932, 8.125, 104.853), 2.500, Visible To Position and Radius);
  • Create Effect(All Players(Team 2), Ring, Red, Vector(-71.932, 8.125, 104.853), 2.500, Visible To Position and Radius);
  • }
  • }
  • rule("Rule 50")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Global Variable(GateUnlockProgression) > 50;
  • }
  • actions
  • {
  • Set Global Variable(GateUnlockProgression, 50);
  • }
  • }
  • rule("Rule 50")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Global Variable(GateUnlockProgression) == 50;
  • }
  • actions
  • {
  • Set Global Variable(Map_Progression, 9);
  • }
  • }
  • rule("Rule 50")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Global Variable(Map_Progression) == 9;
  • }
  • actions
  • {
  • Big Message(Event Player, Custom String("Exit key granted... Please collect at the Black King's Throne.", Null, Null, Null));
  • Destroy All Icons;
  • Wait(0.250, Ignore Condition);
  • Create Effect(All Players(All Teams), Sphere, White, Vector(-130.010, 2.535, 108.320), 1, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Exit Key", Null, Null, Null), Vector(-130.010, 2.535, 108.320), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • }
  • }
  • rule("bug fix")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Has Spawned(Event Player) == True;
  • }
  • actions
  • {
  • Wait(0.250, Ignore Condition);
  • Clear Status(Event Player, Frozen);
  • }
  • }
  • rule("Rule 61")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Players Within Radius(Vector(-130.010, 2.535, 108.320), 1, Team 1, Surfaces) == True;
  • Global Variable(Map_Progression) == 9;
  • }
  • actions
  • {
  • Set Global Variable(Map_Progression, 125);
  • Big Message(All Players(All Teams), Custom String("YOU HAVE THE KEY! RUN TO THE EXIT NOW!", Null, Null, Null));
  • Destroy All Icons;
  • Wait(0.250, Ignore Condition);
  • Create Icon(All Players(Team 1), Event Player, Arrow: Down, Visible To and Position, Blue, True);
  • Create Icon(All Players(Team 2), Event Player, Arrow: Down, Visible To and Position, Red, True);
  • }
  • }
  • rule("Rule 62")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Players Within Radius(Vector(-12.423, -3.645, -31.413), 5, Team 1, Surfaces) == True;
  • Global Variable(Map_Progression) == 125;
  • }
  • actions
  • {
  • Big Message(All Players(All Teams), Custom String("Congratulations! You have escaped the infected Blizzard World!", Null, Null,
  • Null));
  • Set Status(Event Player, Null, Phased Out, 9999);
  • Wait(4, Ignore Condition);
  • Declare Team Victory(Team 1);
  • }
  • }
  • rule("Rule 63")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 2;
  • All;
  • }
  • conditions
  • {
  • Has Spawned(Event Player) == True;
  • }
  • actions
  • {
  • Set Status(All Players(Team 2), Null, Frozen, 16);
  • Set Damage Received(Event Player, 0);
  • Wait(16, Ignore Condition);
  • Set Damage Received(All Players(Team 2), 100);
  • }
  • }
  • rule("-==CHAMPION'S ROAD HALL OF FAME==-")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • }
  • rule("Hall of Fame // HUD")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • actions
  • {
  • Create In-World Text(All Players(Team 1), Custom String("-==Hall of Fame==-", Null, Null, Null), Vector(3.021, 1.505, 28.575), 1,
  • Clip Against Surfaces, Visible To Position and String, Yellow, Default Visibility);
  • Create In-World Text(All Players(Team 1), Custom String(
  • "The Hall of Fame shows all users that have completed vanilla Zombie Rush difficulties 1-7. Congratulations!", Null, Null,
  • Null), Vector(3.265, 0.361, 27.420), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • "Congratulations ActualTrash!"
  • Create In-World Text(All Players(All Teams), Custom String("ActuallyTrash", Null, Null, Null), Vector(2.853, 1.080, 23.590), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • "Congratulations BadPlayer0!"
  • Create In-World Text(All Players(All Teams), Custom String("BadPlayer0", Null, Null, Null), Vector(2.883, 1.079, 19.476), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • }
  • }
  • rule("-==RES==-")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • }
  • rule("Location // Save location upon death")
  • {
  • event
  • {
  • Player Died;
  • Team 1;
  • All;
  • }
  • actions
  • {
  • Abort If(Compare(Global Variable(CrucicbleOfSoulsMode), ==, True));
  • Set Global Variable At Index(S, Slot Of(Event Player), Nearest Walkable Position(Event Player));
  • Big Message(All Players(Team 1), String("{0} {1}", Event Player, String("{0}!", String("Down", Null, Null, Null), Null, Null),
  • Null));
  • Set Global Variable At Index(E, Slot Of(Event Player), True);
  • Abort If(Compare(Global Variable(CrucicbleOfSoulsMode), ==, True));
  • }
  • }
  • rule("Revive // Player 1 revive")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • "Made by CrimsonRend"
  • Distance Between(Event Player, Value In Array(Global Variable(S), 0)) <= 4;
  • "Made by CrimsonRend"
  • Event Player != Players In Slot(0, Team 1);
  • "Made by CrimsonRend"
  • Is Alive(Event Player) == True;
  • }
  • actions
  • {
  • Abort If(Compare(Global Variable(CrucicbleOfSoulsMode), ==, True));
  • "Made by CrimsonRend"
  • Set Player Variable(Event Player, C, Players In Slot(0, Team 1));
  • "Made by CrimsonRend"
  • Chase Player Variable Over Time(Players In Slot(0, Team 1), C, 4, Add(2, Multiply(Global Variable(P), 2)),
  • Destination and Duration);
  • "Made by CrimsonRend"
  • Wait(Add(2, Multiply(Global Variable(P), 2)), Abort When False);
  • "Made by CrimsonRend"
  • Teleport(Players In Slot(0, Team 1), Event Player);
  • "Made by CrimsonRend"
  • Resurrect(Players In Slot(0, Team 1));
  • "Made by CrimsonRend"
  • Modify Global Variable(P, Add, 1);
  • disabled Wait(0.250, Ignore Condition);
  • "Made by CrimsonRend"
  • Play Effect(All Players(All Teams), Buff Explosion Sound, Yellow, Value In Array(Global Variable(S), 0), 4);
  • "Made by CrimsonRend"
  • Play Effect(All Players(All Teams), Good Pickup Effect, White, Players In Slot(0, Team 1), 100);
  • "Made by CrimsonRend"
  • Set Global Variable At Index(S, 0, Vector(500, 0, 500));
  • "Made by CrimsonRend"
  • Modify Player Variable(Event Player, A, Add, Multiply(100, Player Variable(Event Player, H)));
  • "Made by CrimsonRend"
  • Skip If(Compare(Player Variable(Event Player, H), !=, 1), 1);
  • "Made by CrimsonRend"
  • Skip If(Compare(Player Variable(Event Player, H), ==, 1), 1);
  • "Made by CrimsonRend"
  • Small Message(Event Player, String("{0} + {1}", String("", Null, Null, Null), String("{0} {1}", 300, String("Points", Null, Null,
  • Null), Null), Null));
  • "Made by CrimsonRend"
  • Set Player Variable(All Players(Team 1), O, 0);
  • "Made by CrimsonRend"
  • Modify Global Variable(R, Add, Multiply(100, Player Variable(Event Player, H)));
  • }
  • }
  • rule("Player 1 // Cancel revive")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • "Made by CrimsonRend"
  • Distance Between(Event Player, Value In Array(Global Variable(S), 0)) > 4;
  • "Made by CrimsonRend"
  • Event Player != Players In Slot(0, Team 1);
  • }
  • actions
  • {
  • Abort If(Compare(Global Variable(CrucicbleOfSoulsMode), ==, True));
  • "Made by CrimsonRend"
  • Set Player Variable(Players In Slot(0, Team 1), C, 0);
  • "Made by CrimsonRend"
  • Stop Chasing Player Variable(Players In Slot(0, Team 1), C);
  • }
  • }
  • rule("Revive // Player 2 revive")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • "Made by CrimsonRend"
  • Distance Between(Event Player, Value In Array(Global Variable(S), 1)) <= 4;
  • "Made by CrimsonRend"
  • Event Player != Players In Slot(1, Team 1);
  • "Made by CrimsonRend"
  • Is Alive(Event Player) == True;
  • }
  • actions
  • {
  • Abort If(Compare(Global Variable(CrucicbleOfSoulsMode), ==, True));
  • "Made by CrimsonRend"
  • Set Player Variable(Event Player, C, Players In Slot(1, Team 1));
  • "Made by CrimsonRend"
  • Chase Player Variable Over Time(Players In Slot(1, Team 1), C, 4, Add(2, Multiply(Global Variable(P), 2)),
  • Destination and Duration);
  • "Made by CrimsonRend"
  • Wait(Add(2, Multiply(Global Variable(P), 2)), Abort When False);
  • "Made by CrimsonRend"
  • Teleport(Players In Slot(1, Team 1), Event Player);
  • "Made by CrimsonRend"
  • Resurrect(Players In Slot(1, Team 1));
  • "Made by CrimsonRend"
  • Modify Global Variable(P, Add, 1);
  • "Made by CrimsonRend"
  • Play Effect(All Players(All Teams), Good Explosion, Yellow, Value In Array(Global Variable(S), 1), 4);
  • "Made by CrimsonRend"
  • Play Effect(All Players(All Teams), Buff Explosion Sound, White, Players In Slot(1, Team 1), 100);
  • "Made by CrimsonRend"
  • Set Global Variable At Index(S, 1, Vector(500, 0, 500));
  • "Made by CrimsonRend"
  • Modify Player Variable(Event Player, A, Add, Multiply(100, Player Variable(Event Player, H)));
  • "Made by CrimsonRend"
  • Skip If(Compare(Player Variable(Event Player, H), !=, 1), 1);
  • "Made by CrimsonRend"
  • Skip If(Compare(Player Variable(Event Player, H), ==, 1), 1);
  • "Made by CrimsonRend"
  • Small Message(Event Player, String("{0} + {1}", String("", Null, Null, Null), String("{0} {1}", 300, String("Points", Null, Null,
  • Null), Null), Null));
  • "Made by CrimsonRend"
  • Set Player Variable(All Players(Team 1), P, 0);
  • "Made by CrimsonRend"
  • Modify Global Variable(R, Add, Multiply(100, Player Variable(Event Player, H)));
  • }
  • }
  • rule("Player 2 // Cancel revive")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • "Made by CrimsonRend"
  • Distance Between(Event Player, Value In Array(Global Variable(S), 1)) > 4;
  • "Made by CrimsonRend"
  • Event Player != Players In Slot(1, Team 1);
  • }
  • actions
  • {
  • Abort If(Compare(Global Variable(CrucicbleOfSoulsMode), ==, True));
  • "Made by CrimsonRend"
  • Set Player Variable(Players In Slot(1, Team 1), C, 0);
  • "Made by CrimsonRend"
  • Stop Chasing Player Variable(Players In Slot(1, Team 1), C);
  • }
  • }
  • rule("Revive // Player 3 revive")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • "Made by CrimsonRend"
  • Distance Between(Event Player, Value In Array(Global Variable(S), 2)) <= 4;
  • "Made by CrimsonRend"
  • Event Player != Players In Slot(2, Team 1);
  • "Made by CrimsonRend"
  • Is Alive(Event Player) == True;
  • }
  • actions
  • {
  • Abort If(Compare(Global Variable(CrucicbleOfSoulsMode), ==, True));
  • "Made by CrimsonRend"
  • Set Player Variable(Event Player, C, Players In Slot(2, Team 1));
  • "Made by CrimsonRend"
  • Chase Player Variable Over Time(Players In Slot(2, Team 1), C, 4, Add(2, Multiply(Global Variable(P), 2)),
  • Destination and Duration);
  • "Made by CrimsonRend"
  • Wait(Add(2, Multiply(Global Variable(P), 2)), Abort When False);
  • "Made by CrimsonRend"
  • Teleport(Players In Slot(2, Team 1), Event Player);
  • "Made by CrimsonRend"
  • Resurrect(Players In Slot(2, Team 1));
  • "Made by CrimsonRend"
  • Modify Global Variable(P, Add, 1);
  • "Made by CrimsonRend"
  • Play Effect(All Players(All Teams), Good Explosion, Yellow, Value In Array(Global Variable(S), 2), 4);
  • "Made by CrimsonRend"
  • Play Effect(All Players(All Teams), Buff Explosion Sound, White, Players In Slot(2, Team 1), 100);
  • "Made by CrimsonRend"
  • Set Global Variable At Index(S, 2, Vector(500, 0, 500));
  • "Made by CrimsonRend"
  • Modify Player Variable(Event Player, A, Add, Multiply(100, Player Variable(Event Player, H)));
  • "Made by CrimsonRend"
  • Skip If(Compare(Player Variable(Event Player, H), !=, 1), 1);
  • "Made by CrimsonRend"
  • Skip If(Compare(Player Variable(Event Player, H), ==, 1), 1);
  • "Made by CrimsonRend"
  • Small Message(Event Player, String("{0} + {1}", String("", Null, Null, Null), String("{0} {1}", 300, String("Points", Null, Null,
  • Null), Null), Null));
  • "Made by CrimsonRend"
  • Set Player Variable(All Players(Team 1), Q, 0);
  • "Made by CrimsonRend"
  • Modify Global Variable(R, Add, Multiply(100, Player Variable(Event Player, H)));
  • }
  • }
  • rule("Player 3 // Cancel revive")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • "Made by CrimsonRend"
  • Distance Between(Event Player, Value In Array(Global Variable(S), 2)) > 4;
  • "Made by CrimsonRend"
  • Event Player != Players In Slot(2, Team 1);
  • }
  • actions
  • {
  • Abort If(Compare(Global Variable(CrucicbleOfSoulsMode), ==, True));
  • "Made by CrimsonRend"
  • Set Player Variable(Players In Slot(2, Team 1), C, 0);
  • "Made by CrimsonRend"
  • Stop Chasing Player Variable(Players In Slot(2, Team 1), C);
  • }
  • }
  • rule("Revive // Player 4 revive")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • "Made by CrimsonRend"
  • Distance Between(Event Player, Value In Array(Global Variable(S), 3)) <= 4;
  • "Made by CrimsonRend"
  • Event Player != Players In Slot(3, Team 1);
  • "Made by CrimsonRend"
  • Is Alive(Event Player) == True;
  • }
  • actions
  • {
  • Abort If(Compare(Global Variable(CrucicbleOfSoulsMode), ==, True));
  • "Made by CrimsonRend"
  • Set Player Variable(Event Player, C, Players In Slot(3, Team 1));
  • "Made by CrimsonRend"
  • Chase Player Variable Over Time(Players In Slot(3, Team 1), C, 4, Add(2, Multiply(Global Variable(P), 2)),
  • Destination and Duration);
  • "Made by CrimsonRend"
  • Wait(Add(2, Multiply(Global Variable(P), 2)), Abort When False);
  • "Made by CrimsonRend"
  • Teleport(Players In Slot(3, Team 1), Event Player);
  • "Made by CrimsonRend"
  • Resurrect(Players In Slot(3, Team 1));
  • "Made by CrimsonRend"
  • Modify Global Variable(P, Add, 1);
  • "Made by CrimsonRend"
  • Play Effect(All Players(All Teams), Good Explosion, Yellow, Value In Array(Global Variable(S), 3), 4);
  • "Made by CrimsonRend"
  • Play Effect(All Players(All Teams), Buff Explosion Sound, White, Players In Slot(3, Team 1), 100);
  • "Made by CrimsonRend"
  • Set Global Variable At Index(S, 3, Vector(500, 0, 500));
  • "Made by CrimsonRend"
  • Modify Player Variable(Event Player, A, Add, Multiply(100, Player Variable(Event Player, H)));
  • "Made by CrimsonRend"
  • Skip If(Compare(Player Variable(Event Player, H), !=, 1), 1);
  • "Made by CrimsonRend"
  • Skip If(Compare(Player Variable(Event Player, H), ==, 1), 1);
  • "Made by CrimsonRend"
  • Small Message(Event Player, String("{0} + {1}", String("", Null, Null, Null), String("{0} {1}", 300, String("Points", Null, Null,
  • Null), Null), Null));
  • "Made by CrimsonRend"
  • Set Player Variable(All Players(Team 1), R, 0);
  • "Made by CrimsonRend"
  • Modify Global Variable(R, Add, Multiply(100, Player Variable(Event Player, H)));
  • }
  • }
  • rule("Player 4 // Cancel revive")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • "Made by CrimsonRend"
  • Distance Between(Event Player, Value In Array(Global Variable(S), 3)) > 4;
  • "Made by CrimsonRend"
  • Event Player != Players In Slot(3, Team 1);
  • }
  • actions
  • {
  • Abort If(Compare(Global Variable(CrucicbleOfSoulsMode), ==, True));
  • "Made by CrimsonRend"
  • Set Player Variable(Players In Slot(3, Team 1), C, 0);
  • "Made by CrimsonRend"
  • Stop Chasing Player Variable(Players In Slot(3, Team 1), C);
  • }
  • }
  • rule("Revive // After revive effects")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Abort If(Compare(Global Variable(CrucicbleOfSoulsMode), ==, True));
  • "Made by CrimsonRend"
  • Create Effect(All Players(All Teams), Ring, Yellow, Value In Array(Global Variable(S), 0), 4, Visible To Position and Radius);
  • "Made by CrimsonRend"
  • Create Effect(All Players(All Teams), Ring, White, Value In Array(Global Variable(S), 0), Player Variable(Players In Slot(0,
  • Team 1), C), Visible To Position and Radius);
  • "Made by CrimsonRend"
  • Create Effect(All Players(All Teams), Ring, Yellow, Value In Array(Global Variable(S), 1), 4, Visible To Position and Radius);
  • "Made by CrimsonRend"
  • Create Effect(All Players(All Teams), Ring, White, Value In Array(Global Variable(S), 1), Player Variable(Players In Slot(1,
  • Team 1), C), Visible To Position and Radius);
  • "Made by CrimsonRend"
  • Create Effect(All Players(All Teams), Ring, Yellow, Value In Array(Global Variable(S), 2), 4, Visible To Position and Radius);
  • "Made by CrimsonRend"
  • Create Effect(All Players(All Teams), Ring, White, Value In Array(Global Variable(S), 2), Player Variable(Players In Slot(2,
  • Team 1), C), Visible To Position and Radius);
  • "Made by CrimsonRend"
  • Create Effect(All Players(All Teams), Ring, Yellow, Value In Array(Global Variable(S), 3), 4, Visible To Position and Radius);
  • "Made by CrimsonRend"
  • Create Effect(All Players(All Teams), Ring, White, Value In Array(Global Variable(S), 3), Player Variable(Players In Slot(3,
  • Team 1), C), Visible To Position and Radius);
  • }
  • }
  • rule("-==STARS RECEIVED==-")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • }
  • rule("Stars // Damage = 0.7 - 3")
  • {
  • event
  • {
  • Player Dealt Damage;
  • Team 1;
  • All;
  • }
  • actions
  • {
  • Set Global Variable(StarPoints, Add(Global Variable(StarPoints), Random Real(0.700, 3)));
  • Wait(0.250, Ignore Condition);
  • }
  • }
  • rule("Stars // Healing 1 - 6")
  • {
  • event
  • {
  • Player Dealt Healing;
  • Team 1;
  • All;
  • }
  • actions
  • {
  • Set Global Variable(StarPoints, Add(Global Variable(StarPoints), Random Real(1, 6)));
  • Wait(0.350, Ignore Condition);
  • }
  • }
  • rule("Stars // Healing")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • actions
  • {
  • Create HUD Text(Event Player, Custom String("TEAM SCORE", Null, Null, Null), Null, Null, Left, 0, White, White, White,
  • Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, String("{0} {1}", Global Variable(StarPoints), Custom String("points earned", Null, Null, Null),
  • Null), Null, Null, Left, 0.500, Sky Blue, Yellow, Yellow, Visible To and String, Default Visibility);
  • }
  • }
  • rule("Stars // Score goes up when dealing damage")
  • {
  • event
  • {
  • Player Dealt Damage;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Event Was Critical Hit == True;
  • }
  • actions
  • {
  • Set Global Variable(StarPoints, Add(Global Variable(StarPoints), 4));
  • Wait(0.250, Ignore Condition);
  • }
  • }
  • rule("Star // Star 1 earned at 150")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(StarPoints) >= 250;
  • }
  • actions
  • {
  • Create HUD Text(Event Player, Custom String("☆", Null, Null, Null), Null, Null, Left, 1, Yellow, Yellow, Yellow,
  • Visible To and String, Default Visibility);
  • }
  • }
  • rule("375")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(StarPoints) >= 475;
  • }
  • actions
  • {
  • Create HUD Text(Event Player, Custom String("☆", Null, Null, Null), Null, Null, Left, 2, Yellow, White, Yellow,
  • Visible To and String, Default Visibility);
  • }
  • }
  • rule("Star // Star 3 earned at 500")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(StarPoints) >= 700;
  • }
  • actions
  • {
  • Create HUD Text(Event Player, Custom String("☆", Null, Null, Null), Null, Null, Left, 3, Yellow, White, Yellow,
  • Visible To and String, Default Visibility);
  • }
  • }
  • rule("Star // Star 4 earned at 700")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(StarPoints) >= 900;
  • }
  • actions
  • {
  • Create HUD Text(Event Player, Custom String("☆", Null, Null, Null), Null, Null, Left, 4, Yellow, White, Yellow,
  • Visible To and String, Default Visibility);
  • }
  • }
  • rule("Star // Star 5 earned at 900")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(StarPoints) >= 1500;
  • }
  • actions
  • {
  • Create HUD Text(Event Player, Custom String("☆", Null, Null, Null), Null, Null, Left, 4, Yellow, White, Yellow,
  • Visible To and String, Default Visibility);
  • }
  • }
  • rule("Stars // Elimination 8 - 13.5")
  • {
  • event
  • {
  • Player Dealt Final Blow;
  • Team 1;
  • All;
  • }
  • actions
  • {
  • Set Global Variable(StarPoints, Add(Global Variable(StarPoints), Random Real(8, 13.500)));
  • }
  • }
  • rule("-==IRON HEART MODE==-")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • }
  • rule("Iron Heart // Create Iron Heart")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Orb, White, Global Variable(IronHeart), 1, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("IRON HEART", Null, Null, Null), Global Variable(IronHeart), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • }
  • }
  • rule("Iron Heart // Variable")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Set Global Variable(IronHeart, Vector(3.036, 1.458, 37.528));
  • Set Global Variable(IronHeartMode, False);
  • }
  • }
  • rule("Iron Heart // Collect Iron Heart")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Players Within Radius(Global Variable(IronHeart), 1, Team 1, Off) == True;
  • Global Variable(ExpertChallengeSwitch) == True;
  • }
  • actions
  • {
  • Destroy Effect(Global Variable(IronHeart));
  • Big Message(Event Player, Custom String("THE IRON HEART MELTS.. ALL THE HEROES' HEARTS ARE FILLED WITH FRAGILE METAL.", Null, Null,
  • Null));
  • Wait(0.250, Ignore Condition);
  • Set Global Variable(F, True);
  • }
  • }
  • rule("Iron Heart // Disable if not in expert")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Players Within Radius(Global Variable(IronHeart), 1, Team 1, Off) == True;
  • Global Variable(ExpertChallengeSwitch) == False;
  • }
  • actions
  • {
  • Big Message(Event Player, Custom String("expert mode must be enabled to activate the iron heart.", Null, Null, Null));
  • Wait(3, Ignore Condition);
  • }
  • }
  • rule("Iron Heart Mode // If health is not 100%, set damage received 200%")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(IronHeartMode) == True;
  • Health(Event Player) < Max Health(Event Player);
  • }
  • actions
  • {
  • Set Damage Received(Event Player, 200);
  • }
  • }
  • rule("Iron Heart Mode // If health is 100%, set damage received to 100%")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(IronHeartMode) == True;
  • Health(Event Player) == Max Health(Event Player);
  • }
  • actions
  • {
  • Set Damage Received(Event Player, 100);
  • }
  • }
  • rule("Rule 116")
  • {
  • event
  • {
  • Player Died;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(F) == True;
  • }
  • actions
  • {
  • Play Effect(All Players(All Teams), Bad Explosion, Red, Event Player, 6);
  • Play Effect(All Players(All Teams), Bad Explosion, Orange, Event Player, 4);
  • Play Effect(All Players(All Teams), Bad Explosion, Yellow, Event Player, 3);
  • Play Effect(All Players(All Teams), Ring Explosion, Red, Event Player, 6);
  • Damage(Players Within Radius(Event Player, 6, All Teams, Surfaces And Enemy Barriers), Event Player, Random Integer(50, 149));
  • }
  • }
  • rule("-==CRUCIBLE OF SOULS MODE==-")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • }
  • rule("Crucible of Souls // Create CoS")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • }
  • rule("CoS // Variable")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Set Global Variable(CrucibleOfSouls, Vector(8.022, 1.459, 41.679));
  • Set Global Variable(CrucicbleOfSoulsMode, False);
  • }
  • }
  • rule("CoS // Create CoS")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Orb, Red, Global Variable(CrucibleOfSouls), 1, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("CRUCIBLE OF SOULS", Null, Null, Null), Global Variable(
  • CrucibleOfSouls), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • }
  • }
  • rule("Cos // Collect CoS")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Players Within Radius(Global Variable(CrucibleOfSouls), 1, Team 1, Off) == True;
  • Global Variable(ExpertChallengeSwitch) == True;
  • }
  • actions
  • {
  • Destroy Effect(Global Variable(IronHeart));
  • Big Message(Event Player, Custom String("THE CRUCIBLE AWAKES.. DEATH IS NOW PERMANENT. NO EXCEPTIONS.", Null, Null, Null));
  • Wait(0.250, Ignore Condition);
  • Set Global Variable(CrucicbleOfSoulsMode, True);
  • }
  • }
  • rule("CoS // Disable if not in expert")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Players Within Radius(Global Variable(IronHeart), 1, Team 1, Off) == True;
  • Global Variable(ExpertChallengeSwitch) == False;
  • }
  • actions
  • {
  • Big Message(Event Player, Custom String("expert mode must be enabled to activate the iron heart.", Null, Null, Null));
  • Wait(3, Ignore Condition);
  • }
  • }
  • rule("CoS Mode // If dead, all teammates are damaged + weakened")
  • {
  • event
  • {
  • Player Died;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(CrucicbleOfSoulsMode) == True;
  • }
  • actions
  • {
  • Start Damage Over Time(All Living Players(Team 1), Null, 6, 25);
  • Set Move Speed(All Living Players(Team 1), 50);
  • Wait(6, Ignore Condition);
  • Set Move Speed(All Living Players(Team 1), 100);
  • }
  • }
  • rule("Cos // If mercy is in the game, stop her res")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • Mercy;
  • }
  • conditions
  • {
  • Global Variable(CrucicbleOfSoulsMode) == True;
  • }
  • actions
  • {
  • Set Ability 2 Enabled(Event Player, False);
  • }
  • }
  • rule("-==CURSED CLOCK==-")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • }
  • rule("Cursed Crown // Create CC")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • }
  • rule("CC // Variables")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Set Global Variable(CursedClock, Vector(-2.650, 1.457, 41.396));
  • Set Global Variable(CursedClockMode, False);
  • }
  • }
  • rule("CC // Create CC")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Orb, Purple, Global Variable(CursedClock), 1, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("CURSED CLOCK", Null, Null, Null), Global Variable(CursedClock), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • }
  • }
  • rule("CC // Collect CC")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Players Within Radius(Global Variable(CursedClock), 1, Team 1, Off) == True;
  • Global Variable(ExpertChallengeSwitch) == True;
  • }
  • actions
  • {
  • Destroy Effect(Global Variable(IronHeart));
  • Big Message(Event Player, Custom String("THE CURSED CLOCK STARTS TICKING.... DEATH WILL SPEED UP THE TIMER.", Null, Null, Null));
  • Wait(0.250, Ignore Condition);
  • Set Global Variable(CursedClockMode, True);
  • }
  • }
  • rule("CC // Disable if not in Expert")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Players Within Radius(Global Variable(IronHeart), 1, Team 1, Off) == True;
  • Global Variable(ExpertChallengeSwitch) == False;
  • }
  • actions
  • {
  • Big Message(Event Player, Custom String("expert mode must be enabled to activate the iron heart.", Null, Null, Null));
  • Wait(3, Ignore Condition);
  • }
  • }
  • rule("CC Mode // Set timer to 10 minutes")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Global Variable(CursedClockMode) == True;
  • }
  • actions
  • {
  • Wait(0.250, Abort When False);
  • Set Match Time(600);
  • }
  • }
  • rule("CC Mode // If a player dies, -30 seconds on the timer")
  • {
  • event
  • {
  • Player Died;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(CursedClockMode) == True;
  • }
  • actions
  • {
  • Set Match Time(Subtract(Match Time, 30));
  • }
  • }
  • rule("-==DIFFICULTY==-")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • }
  • rule("Difficulty Switch // Go into this rule and select numbers (-1)-7 depending on desired difficulty level.")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • actions
  • {
  • "Set the value to numbers (-1)-7. "
  • Set Global Variable(DifficultyLevelSwitch, 1);
  • "Disabled by default; If on, randomly chooses the difficulty. (TURN OFF ABOVE RULE AND ENABLE THIS ONE FOR EFFECTS)"
  • disabled Set Global Variable(DifficultyLevelSwitch, Random Integer(-1, 7));
  • }
  • }
  • rule("-1) April Fools (350% Damage/270% Total HP/55% Movement Speed/All zombies heal 40 over time/Taking 75 damage in 1 hit stuns)")
  • rule("-1) April Fools (OmegaLuL)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(DifficultyLevelSwitch) == -1;
  • }
  • actions
  • {
  • Set Move Speed(All Players(Team 2), 600);
  • Set Max Health(All Players(Team 2), 400);
  • Set Damage Dealt(All Players(Team 2), 400);
  • Create HUD Text(Event Player, Null, Null, Custom String("Difficulty: April Fools", Null, Null, Null), Left, 0, White, White,
  • Lime Green, Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Null, Custom String("''Yeah u ded lolololololololololololol'' - CrimsonRend", Null, Null,
  • Null), Left, 1, White, White, White, Visible To and String, Default Visibility);
  • Start Heal Over Time(All Players(Team 2), Null, 9999, 65);
  • Create HUD Text(Event Player, Null, Null, Custom String("''Yeah u ded omegalul' - CrimsonRend", Null, Null, Null), Left, 1, White,
  • White, White, Visible To and String, Default Visibility);
  • }
  • }
  • rule("1) Easy (75% damage/90% speed)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(DifficultyLevelSwitch) == 1;
  • }
  • actions
  • {
  • Set Damage Dealt(All Players(Team 2), 75);
  • Create HUD Text(Event Player, Null, Null, Custom String("Difficulty: Easy", Null, Null, Null), Right, 0, White, Red, Green,
  • Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Null, Custom String("- All units have -25% damage", Null, Null, Null), Right, 1, White, White,
  • White, Visible To and String, Default Visibility);
  • Set Move Speed(All Players(Team 2), 90);
  • Create HUD Text(Event Player, Null, Null, Custom String("- All units have -10% damage", Null, Null, Null), Right, 2, White, White,
  • White, Visible To and String, Default Visibility);
  • }
  • }
  • rule("2) Normal (Default everything)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(DifficultyLevelSwitch) == 2;
  • }
  • actions
  • {
  • Create HUD Text(Event Player, Null, Null, Custom String("Difficulty: NORMAL", Null, Null, Null), Right, 0, White, Yellow, White,
  • Visible To and String, Default Visibility);
  • }
  • }
  • rule("3) Hard (+15% Damage)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(DifficultyLevelSwitch) == 3;
  • }
  • actions
  • {
  • Set Damage Dealt(All Players(Team 2), 115);
  • Create HUD Text(Event Player, Null, Null, Custom String("Difficulty: HARD", Null, Null, Null), Right, 0, White, Red, Red,
  • Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Null, Custom String("- All units have +15% damage", Null, Null, Null), Right, 1, White, White,
  • White, Visible To and String, Default Visibility);
  • }
  • }
  • rule("4) Expert (+25% Damage/-10% Damage Received)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(DifficultyLevelSwitch) == 4;
  • }
  • actions
  • {
  • Set Damage Dealt(All Players(Team 2), 125);
  • Set Damage Received(All Players(Team 2), 90);
  • Create HUD Text(Event Player, Null, Null, Custom String("Difficulty: EXPERT", Null, Null, Null), Right, 0, White, White, Purple,
  • Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Null, Custom String("- All units have +25% damage", Null, Null, Null), Right, 1, White, White,
  • White, Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Null, Custom String("- All units have -10% damage reduction", Null, Null, Null), Right, 2,
  • White, White, White, Visible To and String, Default Visibility);
  • }
  • }
  • rule("5) Legendary (+30% Damage/25% Total HP/-20% Damage Recieved)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(DifficultyLevelSwitch) == 5;
  • }
  • actions
  • {
  • Set Max Health(All Players(Team 2), 125);
  • Set Damage Dealt(All Players(Team 2), 130);
  • Set Damage Received(All Players(Team 2), 80);
  • Create HUD Text(Event Player, Null, Null, Custom String("Difficulty: LEGENDARY", Null, Null, Null), Right, 0, White, White,
  • Sky Blue, Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Null, Custom String("- All units have +30% damage", Null, Null, Null), Right, 1, White, White,
  • White, Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Null, Custom String("- All units have -20% damage reduction", Null, Null, Null), Right, 2,
  • White, White, White, Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Null, Custom String("- All units have +25% maximum health.", Null, Null, Null), Right, 3,
  • White, White, White, Visible To and String, Default Visibility);
  • }
  • }
  • rule("6) Soul Melting (45% Damage/35%Total HP/20%/Movement Speed/30% damage reduction)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(DifficultyLevelSwitch) == 6;
  • }
  • actions
  • {
  • Set Move Speed(All Players(Team 2), 120);
  • Set Max Health(All Players(Team 2), 135);
  • Set Damage Dealt(All Players(Team 2), 145);
  • Set Damage Received(All Players(Team 2), 70);
  • Create HUD Text(Event Player, Null, Null, Custom String("Difficulty: S O U L M E L T I N G", Null, Null, Null), Right, 0, White,
  • White, Yellow, Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Null, Custom String("- All units have +45% damage", Null, Null, Null), Right, 1, White, White,
  • White, Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Null, Custom String("- All units have +35% the normal health.", Null, Null, Null), Right, 2,
  • White, White, White, Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Null, Custom String("- All units have -30% damage reduction.", Null, Null, Null), Right, 3,
  • White, White, White, Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Null, Custom String("- All units have +20% movement speed.", Null, Null, Null), Right, 5,
  • White, White, White, Visible To and String, Default Visibility);
  • }
  • }
  • rule("7) Path to Champions (55% Damage/50% Total HP/35% Movement Speed/-45% damage reduction)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(DifficultyLevelSwitch) == 7;
  • }
  • actions
  • {
  • Set Move Speed(All Players(Team 2), 135);
  • Set Max Health(All Players(Team 2), 150);
  • Set Damage Dealt(All Players(Team 2), 155);
  • Set Damage Received(All Players(Team 2), 55);
  • Create HUD Text(Event Player, Null, Null, Custom String("Difficulty: Path to Champions", Null, Null, Null), Right, 0, White, White,
  • Orange, Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Null, Custom String("- All units have +55% damage", Null, Null, Null), Right, 1, White, White,
  • White, Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Null, Custom String("- All units have 150% the normal health.", Null, Null, Null), Right, 2,
  • White, White, White, Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Null, Custom String("- All units have -45% damage reduction.", Null, Null, Null), Right, 3,
  • White, White, White, Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Null, Custom String("- All units have +35% movement speed.", Null, Null, Null), Right, 5,
  • White, White, White, Visible To and String, Default Visibility);
  • }
  • }
  • rule("8) Champion's Road (180% Damage/100% Total HP/55% Movement Speed/200% Projectile Speed)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(DifficultyLevelSwitch) == 8;
  • }
  • actions
  • {
  • Set Move Speed(All Players(Team 2), 155);
  • Set Max Health(All Players(Team 2), 200);
  • Set Damage Dealt(All Players(Team 2), 180);
  • Create HUD Text(Event Player, Null, Null, Custom String("Difficulty: Champion's Road", Null, Null, Null), Right, 0, White, White,
  • Lime Green, Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Null, Custom String("- All units have 180% the normal damage.", Null, Null, Null), Right, 1,
  • White, White, White, Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Null, Custom String("- All units have double the normal health.", Null, Null, Null), Right, 2,
  • White, White, White, Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Null, Custom String("- All units have NO damage reduction.", Null, Null, Null), Right, 3,
  • White, White, White, Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Null, Custom String("- All units have +55% movement speed.", Null, Null, Null), Right, 5,
  • White, White, White, Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Null, Custom String(
  • "- Completing Champion's Road will put you and your team in the Hall of Fame", Null, Null, Null), Right, 7, White, White,
  • Yellow, Visible To and String, Default Visibility);
  • }
  • }
  • rule("O====CHALLENGES (Can pick any assortment of challenges, every challenge has difficulty stars out of 5 being the hardest)=======O")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • }
  • disabled rule("GLASS CANNON CHALLENGE [Difficulty: ***] (Very low health but very high damage)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • actions
  • {
  • Set Max Health(Event Player, 35);
  • Set Damage Dealt(Event Player, 150);
  • }
  • }
  • disabled rule("THE SCORCH CHALLENGE [Difficulty: **] (Take extra burn damage from all enemy attacks)")
  • {
  • event
  • {
  • Player Dealt Damage;
  • Team 2;
  • All;
  • }
  • actions
  • {
  • Set Status(Victim, Event Player, Burning, 3);
  • Start Damage Over Time(Victim, Null, 3, 5);
  • Start Damage Over Time(Victim, Null, 3, 10);
  • }
  • }
  • disabled rule("BLOODBATH CHALLENGE [Difficulty: *] (Killing an enemy damages the player)")
  • {
  • event
  • {
  • Player Earned Elimination;
  • Team 1;
  • All;
  • }
  • actions
  • {
  • Damage(Event Player, Randomized Array(All Living Players(Team 2)), 125);
  • }
  • }
  • disabled rule("ULT SPAWN CHALLENGE [Difficulty: **] (All enemies spawn with their ultimates)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 2;
  • All;
  • }
  • conditions
  • {
  • Has Spawned(Event Player) == True;
  • }
  • actions
  • {
  • Set Ultimate Charge(Event Player, 100);
  • }
  • }
  • disabled rule("THE WITHERING CHALLENGE [Difficulty: **] (All players take 10 damage per second throughout the entire match)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Has Spawned(Event Player) == True;
  • }
  • actions
  • {
  • Start Damage Over Time(Event Player, Null, 9999, 10);
  • }
  • }
  • disabled rule("NO HEALING CHALLENGE [Difficulty: ***] (No healing..... What else did you expect?)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • actions
  • {
  • Set Healing Dealt(Event Player, 0);
  • }
  • }
  • disabled rule("HEADSHOT ONLY CHALLENGE [Difficulty: ***] (Only headshots can damage enemies, however body shots can kill and built ult charge)")
  • {
  • event
  • {
  • Player Dealt Damage;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Event Was Critical Hit == False;
  • }
  • actions
  • {
  • Heal(Victim, Null, Event Damage);
  • Set Damage Received(Victim, 0);
  • Wait(0.500, Ignore Condition);
  • Set Damage Received(Victim, 100);
  • }
  • }
  • disabled rule("THE FINALE CHALLENGE [Difficulty: ****] (If 1 person dies, the game is over)")
  • {
  • event
  • {
  • Player Died;
  • Team 1;
  • All;
  • }
  • actions
  • {
  • Wait(3, Ignore Condition);
  • Declare Team Victory(Team 2);
  • }
  • }
  • disabled rule("TIME TRIAL CHALLENGE [Difficulty: **] (Only 3 minutes instead of an hour)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • actions
  • {
  • Set Match Time(180);
  • }
  • }
  • disabled rule("SUDDEN DEATH CHALLENGE [Difficulty: *****] (BOTH enemies and players are one shot by any sort of damage)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • actions
  • {
  • Set Max Health(Event Player, Subtract(0.800, 0.100));
  • Set Status(Event Player, Null, Burning, 9999);
  • }
  • }
  • disabled rule("THE PERFECTIONISTS [Difficulty: ****] (Players can only enter the escape door if the team has 5 stars)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Players Within Radius(Vector(-12.715, -2.902, -24.945), 5, Team 1, Off) == True;
  • Global Variable(Map_Progression) < 1500;
  • }
  • actions
  • {
  • Kill(Event Player, Null);
  • }
  • }
  • rule("-==EXPERT MODE==-")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • }
  • rule("Expert Mode Switch // Go into the rule and select 'true' if you want expert, if not select 'false'")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • actions
  • {
  • "Leaving this rule turns Expert Mode ON"
  • disabled Set Global Variable(ExpertChallengeSwitch, True);
  • "Leaving this rule on turns the rule OFF."
  • Set Global Variable(ExpertChallengeSwitch, False);
  • }
  • }
  • rule("Adrenaline // Adrenaline HUD")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(ExpertChallengeSwitch) == True;
  • }
  • actions
  • {
  • Create HUD Text(Event Player, Null, Custom String("Adrenaline Meter (Press F at 10 to unleash your adrenaline!)", Null, Null,
  • Null), String("{0} / {1}", Player Variable(Event Player, Adrenaline), 10, Null), Top, 2, White, Blue, Sky Blue,
  • Create HUD Text(Event Player, Null, Custom String("Adrenaline (Press interact key [F by default] to unleash your Adrenaline!)",
  • Null, Null, Null), String("{0} / {1}", Player Variable(Event Player, Adrenaline), 10, Null), Top, 2, White, Blue, Sky Blue,
  • Visible To and String, Default Visibility);
  • }
  • }
  • rule("Adrenaline // Add 1 every 3 seconds")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Is Alive(Event Player) == True;
  • Has Status(Event Player, Burning) == False;
  • Has Spawned(Event Player) == True;
  • Global Variable(ExpertChallengeSwitch) == True;
  • }
  • actions
  • {
  • Abort If(Compare(Player Variable(Event Player, Adrenaline), ==, 10));
  • Wait(3, Abort When False);
  • Set Player Variable(Event Player, Adrenaline, Add(Player Variable(Event Player, Adrenaline), 1));
  • Loop If Condition Is True;
  • }
  • }
  • rule("Adrenaline // Took damage = Adrenaline goes 0")
  • {
  • event
  • {
  • Player Took Damage;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(ExpertChallengeSwitch) == True;
  • }
  • actions
  • {
  • Abort If(Compare(Player Variable(Event Player, Adrenaline), ==, 10));
  • Set Player Variable(Event Player, Adrenaline, 0);
  • }
  • }
  • rule("Adrenaline // Unleash the Adrenaline!")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Is Button Held(Event Player, Melee) == True;
  • Is Button Held(Event Player, Interact) == True;
  • Player Variable(Event Player, Adrenaline) == 10;
  • Is Alive(Event Player) == True;
  • Global Variable(ExpertChallengeSwitch) == True;
  • }
  • actions
  • {
  • Play Effect(All Players(All Teams), Ring Explosion, Sky Blue, Event Player, 12);
  • Kill(Players Within Radius(Event Player, 12, Team 2, Surfaces), Event Player);
  • Set Player Variable(Event Player, Adrenaline, 0);
  • Set Damage Dealt(Event Player, 200);
  • Set Move Speed(Event Player, 140);
  • Set Player Variable(Event Player, Corruption, Subtract(Player Variable(Event Player, Corruption), 10));
  • Set Player Variable(Event Player, Corruption, Subtract(Player Variable(Event Player, Corruption), 6));
  • Set Status(Event Player, Null, Burning, 8);
  • Wait(8, Ignore Condition);
  • Set Damage Dealt(Event Player, 100);
  • Set Move Speed(Event Player, 100);
  • }
  • }
  • rule("The Corrupted // Explode when dead")
  • {
  • event
  • {
  • Player Died;
  • Team 2;
  • All;
  • }
  • conditions
  • {
  • Global Variable(ExpertChallengeSwitch) == True;
  • }
  • actions
  • {
  • Play Effect(All Players(All Teams), Bad Explosion, Red, Event Player, 9);
  • Play Effect(All Players(All Teams), Bad Explosion, Orange, Event Player, 8);
  • Play Effect(All Players(All Teams), Bad Explosion, Yellow, Event Player, 7);
  • Play Effect(All Players(All Teams), Ring Explosion, Red, Event Player, 10);
  • Damage(Players Within Radius(Event Player, 5, Team 1, Surfaces And Enemy Barriers), Event Player, Random Integer(50, 149));
  • }
  • }
  • rule("Corruption // Corruption HUD")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(ExpertChallengeSwitch) == True;
  • }
  • actions
  • {
  • Create HUD Text(Event Player, Null, Custom String("Corruption Meter (If at 20 bad things will happen!", Null, Null, Null), String(
  • "{0} / {1}", Player Variable(Event Player, Corruption), 20, Null), Top, 5, White, Purple, White, Visible To and String,
  • Default Visibility);
  • }
  • }
  • rule("Corruption // Add 1 every 4.5 seconds")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Is Alive(Event Player) == True;
  • Has Status(Event Player, Burning) == False;
  • Has Spawned(Event Player) == True;
  • Global Variable(ExpertChallengeSwitch) == True;
  • }
  • actions
  • {
  • Wait(4.500, Abort When False);
  • Set Player Variable(Event Player, Corruption, Add(Player Variable(Event Player, Corruption), 1));
  • Loop If Condition Is True;
  • }
  • }
  • rule("Corruption // Don't go under 0")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Player Variable(Event Player, Corruption) < 0;
  • Global Variable(ExpertChallengeSwitch) == True;
  • }
  • actions
  • {
  • Set Player Variable(Event Player, Corruption, 0);
  • Wait(0.250, Ignore Condition);
  • Loop If Condition Is True;
  • }
  • }
  • rule("Corruption // Don't go over 20")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Player Variable(Event Player, Corruption) > 20;
  • Global Variable(ExpertChallengeSwitch) == True;
  • }
  • actions
  • {
  • Set Player Variable(Event Player, Corruption, 20);
  • }
  • }
  • rule("Corruption // If at 20, kill over time")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Player Variable(Event Player, Corruption) == 20;
  • Global Variable(ExpertChallengeSwitch) == True;
  • }
  • actions
  • {
  • Start Damage Over Time(Event Player, Null, 9999, 30);
  • Set Status(Event Player, Null, Hacked, 9999);
  • Big Message(All Players(Team 1), String("{0} {1}", Event Player, Custom String("IS BEING EATEN BY THE CORRUPTION!", Null, Null,
  • Null), Null));
  • }
  • }
  • rule("Corruption // Undo effects if corruption is under 20")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Player Variable(Event Player, Corruption) < 20;
  • Global Variable(ExpertChallengeSwitch) == True;
  • }
  • actions
  • {
  • Stop All Damage Over Time(Event Player);
  • Clear Status(Event Player, Hacked);
  • }
  • }
  • rule("Corruption // 1 kill = -3 corruption")
  • {
  • event
  • {
  • Player Earned Elimination;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Is Alive(Event Player) == True;
  • Global Variable(ExpertChallengeSwitch) == True;
  • }
  • actions
  • {
  • Set Player Variable(Event Player, Corruption, Subtract(Player Variable(Event Player, Corruption), 3));
  • }
  • }
  • rule("-==TOP HUD==-")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • }
  • rule("Rule 94")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Set Match Time(3600);
  • }
  • }
  • rule("Defeat")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Is True For All(All Players(Team 1), Is Dead(Current Array Element)) == True;
  • Has Spawned(All Players(Team 1)) == True;
  • }
  • actions
  • {
  • Destroy All Effects;
  • Destroy All In-World Text;
  • Wait(3, Ignore Condition);
  • Wait(4, Ignore Condition);
  • Declare Team Victory(Team 2);
  • }
  • }
  • rule("-==IRON HEART MODE==-")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • }
  • rule("Iron Heart // Create Iron Heart")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Orb, White, Global Variable(IronHeart), 1, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("IRON HEART", Null, Null, Null), Global Variable(IronHeart), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • }
  • }
  • rule("Iron Heart // Variable")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Set Global Variable(IronHeart, Vector(-3.241, 1.423, 21.575));
  • Set Global Variable(IronHeartMode, False);
  • }
  • }
  • rule("Iron Heart // Collect Iron Heart")
  • rule("Corruption // Don't go under 0")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Players Within Radius(Global Variable(IronHeart), 1, Team 1, Off) == True;
  • Player Variable(Event Player, Adrenaline) < 0;
  • Global Variable(ExpertChallengeSwitch) == True;
  • }
  • actions
  • {
  • Destroy Effect(Global Variable(IronHeart));
  • Big Message(Event Player, Custom String("THE IRON HEART MELTS.. ALL THE HEROES' HEARTS ARE FILLED WITH FRAGILE METAL.", Null, Null,
  • Null));
  • Set Player Variable(Event Player, Corruption, 0);
  • Wait(0.250, Ignore Condition);
  • Set Global Variable(F, True);
  • Loop If Condition Is True;
  • }
  • }
  • rule("Iron Heart // Disable if not in expert")
  • rule("Corruption // Don't go over 20")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Players Within Radius(Global Variable(IronHeart), 1, Team 1, Off) == True;
  • Global Variable(ExpertChallengeSwitch) == False;
  • Player Variable(Event Player, Adrenaline) > 10;
  • Global Variable(ExpertChallengeSwitch) == True;
  • }
  • actions
  • {
  • Big Message(Event Player, Custom String("expert mode must be enabled to activate the iron heart.", Null, Null, Null));
  • Wait(3, Ignore Condition);
  • Set Player Variable(Event Player, Corruption, 20);
  • }
  • }
  • rule("Iron Heart Mode // If health is not 100%, set damage received 200%")
  • rule("-==TOP HUD==-")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(IronHeartMode) == True;
  • Health(Event Player) < Max Health(Event Player);
  • }
  • actions
  • {
  • Set Damage Received(Event Player, 200);
  • Ongoing - Global;
  • }
  • }
  • rule("Iron Heart Mode // If health is 100%, set damage received to 100%")
  • rule("Rule 94")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(IronHeartMode) == True;
  • Health(Event Player) == Max Health(Event Player);
  • Ongoing - Global;
  • }
  • actions
  • {
  • Set Damage Received(Event Player, 100);
  • Set Match Time(3600);
  • }
  • }
  • rule("Rule 116")
  • rule("Defeat")
  • {
  • event
  • {
  • Player Died;
  • Team 1;
  • All;
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Global Variable(F) == True;
  • Is True For All(All Players(Team 1), Is Dead(Current Array Element)) == True;
  • Has Spawned(All Players(Team 1)) == True;
  • }
  • actions
  • {
  • Play Effect(All Players(All Teams), Bad Explosion, Red, Event Player, 6);
  • Play Effect(All Players(All Teams), Bad Explosion, Orange, Event Player, 4);
  • Play Effect(All Players(All Teams), Bad Explosion, Yellow, Event Player, 3);
  • Play Effect(All Players(All Teams), Ring Explosion, Red, Event Player, 6);
  • Damage(Players Within Radius(Event Player, 6, All Teams, Surfaces And Enemy Barriers), Event Player, Random Integer(50, 149));
  • Destroy All Effects;
  • Destroy All In-World Text;
  • Wait(3, Ignore Condition);
  • Wait(4, Ignore Condition);
  • Declare Team Victory(Team 2);
  • }
  • }
  • rule("-==CRUCIBLE OF SOULS MODE==-")
  • rule("-== Ω Sigil==-")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • }
  • rule("Crucible of Souls // Create CoS")
  • rule("Ω Sigil // Create Ω Sigil")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • }
  • rule("CoS // Variable")
  • rule("Ω Sigil // Variables")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Set Global Variable(CrucibleOfSouls, Vector(-6.428, 1.426, 21.646));
  • Set Global Variable(CrucicbleOfSoulsMode, False);
  • Set Global Variable(OmegaSigil, Vector(-27.475, -0.450, 21.867));
  • Set Global Variable(OmegaMode, False);
  • Set Global Variable(OmegaRNG, 1000);
  • }
  • }
  • rule("CoS // Create CoS")
  • rule("Ω Sigil // Create Ω Sigil")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Orb, Red, Global Variable(CrucibleOfSouls), 1, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("CRUCIBLE OF SOULS", Null, Null, Null), Global Variable(
  • CrucibleOfSouls), 1, Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Create Effect(All Players(All Teams), Orb, Sky Blue, Global Variable(OmegaSigil), 1, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("Ω", Null, Null, Null), Global Variable(OmegaSigil), 3,
  • Clip Against Surfaces, Visible To Position and String, Sky Blue, Default Visibility);
  • }
  • }
  • rule("Cos // Collect CoS")
  • rule("Ω Sigil // Collect Ω Sigil")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Players Within Radius(Global Variable(CrucibleOfSouls), 1, Team 1, Off) == True;
  • Players Within Radius(Global Variable(OmegaSigil), 1, Team 1, Off) == True;
  • Global Variable(ExpertChallengeSwitch) == True;
  • }
  • actions
  • {
  • Destroy Effect(Global Variable(IronHeart));
  • Big Message(Event Player, Custom String("THE CRUCIBLE AWAKES.. DEATH IS NOW PERMANENT. NO EXCEPTIONS.", Null, Null, Null));
  • Big Message(Event Player, Custom String("THE Ω HAS AWOKEN. . .", Null, Null, Null));
  • Wait(0.250, Ignore Condition);
  • Set Global Variable(CrucicbleOfSoulsMode, True);
  • Set Global Variable(OmegaMode, True);
  • Set Global Variable(OmegaRNG, 0);
  • }
  • }
  • rule("CoS // Disable if not in expert")
  • rule("Ω Sigil // Cancel if not in expert")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Players Within Radius(Global Variable(IronHeart), 1, Team 1, Off) == True;
  • Players Within Radius(Global Variable(OmegaSigil), 1, Team 1, Off) == True;
  • Global Variable(ExpertChallengeSwitch) == False;
  • }
  • actions
  • {
  • Big Message(Event Player, Custom String("expert mode must be enabled to activate the iron heart.", Null, Null, Null));
  • Big Message(Event Player, Custom String("expert mode must be enabled to activate the Ω sigil.", Null, Null, Null));
  • Wait(3, Ignore Condition);
  • }
  • }
  • rule("CoS Mode // If dead, all teammates are damaged + weakened")
  • rule("Ω Mode // Randomly choose from 8 events")
  • {
  • event
  • {
  • Player Died;
  • Team 1;
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Global Variable(CrucicbleOfSoulsMode) == True;
  • Global Variable(OmegaRNG) == 0;
  • Global Variable(OmegaMode) == True;
  • }
  • actions
  • {
  • Start Damage Over Time(All Living Players(Team 1), Null, 6, 25);
  • Set Move Speed(All Living Players(Team 1), 50);
  • Wait(6, Ignore Condition);
  • Set Move Speed(All Living Players(Team 1), 100);
  • Small Message(Event Player, Custom String("Ω A BEING OF IMMENSE POWER IS WATCHING YOU... Ω", Null, Null, Null));
  • Wait(8, Abort When False);
  • Set Global Variable(OmegaRNG, Random Integer(1, 8));
  • }
  • }
  • rule("Cos // If mercy is in the game, stop her res")
  • rule("Ω Mode // Adrenaline Rush [1]")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • Mercy;
  • All;
  • }
  • conditions
  • {
  • Global Variable(CrucicbleOfSoulsMode) == True;
  • Global Variable(OmegaRNG) == 1;
  • Global Variable(OmegaMode) == True;
  • }
  • actions
  • {
  • Set Ability 2 Enabled(Event Player, False);
  • Small Message(Event Player, Custom String("Ω ADRENALINE RUSHES INTO YOUR VEINS Ω", Null, Null, Null));
  • Set Player Variable(Event Player, Adrenaline, 10);
  • Press Button(Event Player, Interact);
  • Wait(8, Ignore Condition);
  • Set Global Variable(OmegaRNG, 0);
  • }
  • }
  • rule("-==CURSED CLOCK==-")
  • rule("Ω Mode // Corruption reduction [2]")
  • {
  • event
  • {
  • Ongoing - Global;
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • }
  • rule("Cursed Crown // Create CC")
  • {
  • event
  • conditions
  • {
  • Ongoing - Global;
  • Global Variable(OmegaRNG) == 2;
  • Global Variable(OmegaMode) == True;
  • }
  • actions
  • {
  • Small Message(Event Player, Custom String("Ω YOU FEEL CLEANSED... Ω", Null, Null, Null));
  • Set Player Variable(Event Player, Corruption, 0);
  • Wait(4, Ignore Condition);
  • Set Global Variable(OmegaRNG, 0);
  • }
  • }
  • rule("CC // Variables")
  • rule("Ω Mode // Damage reduction [3]")
  • {
  • event
  • {
  • Ongoing - Global;
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(OmegaRNG) == 3;
  • Global Variable(OmegaMode) == True;
  • }
  • actions
  • {
  • Set Global Variable(CursedClock, Vector(-8.479, 1.173, 21.693));
  • Set Global Variable(CursedClockMode, False);
  • Small Message(Event Player, Custom String("Ω YOU FEEL PROTECTED... Ω", Null, Null, Null));
  • Set Damage Received(Event Player, 50);
  • Wait(10, Ignore Condition);
  • Set Global Variable(OmegaRNG, 0);
  • Set Damage Received(Event Player, 100);
  • }
  • }
  • rule("CC // Create CC")
  • rule("Ω Mode // Healing [4]")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(OmegaRNG) == 4;
  • Global Variable(OmegaMode) == True;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Orb, Purple, Global Variable(CursedClock), 1, Visible To Position and Radius);
  • Create In-World Text(All Players(All Teams), Custom String("CURSED CROWN", Null, Null, Null), Global Variable(CursedClock), 1,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Small Message(Event Player, Custom String("Ω YOU FEEL RESTORED.. Ω", Null, Null, Null));
  • Heal(Event Player, Null, 100000);
  • Set Status(Event Player, Event Player, Invincible, 4);
  • Wait(4, Ignore Condition);
  • Set Global Variable(OmegaRNG, 0);
  • }
  • }
  • rule("CC // Collect CC")
  • rule("Ω Mode // Cosmic Power [5]")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Players Within Radius(Global Variable(CursedClock), 1, Team 1, Off) == True;
  • Global Variable(ExpertChallengeSwitch) == True;
  • Global Variable(OmegaRNG) == 5;
  • Global Variable(OmegaMode) == True;
  • }
  • actions
  • {
  • Destroy Effect(Global Variable(IronHeart));
  • Big Message(Event Player, Custom String("THE CURSED CLOCK STARTS TICKING.... DEATH WILL SPEED UP THE TIMER.", Null, Null, Null));
  • Wait(0.250, Ignore Condition);
  • Set Global Variable(CursedClockMode, True);
  • Set Status(Event Player, Null, Rooted, 4);
  • Small Message(Event Player, Custom String("Ω THE SIGILS CELESTIAL POWER BLEEDS ONTO YOU... Ω", Null, Null, Null));
  • Set Gravity(Event Player, 0);
  • Apply Impulse(Event Player, Up, 6, To World, Cancel Contrary Motion);
  • Start Damage Over Time(Event Player, Null, 4, 30);
  • Wait(4, Ignore Condition);
  • Set Gravity(Event Player, 500);
  • Damage(Event Player, Null, 30);
  • Wait(2, Ignore Condition);
  • Set Gravity(Event Player, 100);
  • Set Global Variable(OmegaRNG, 0);
  • }
  • }
  • rule("CC // Disable if not in Expert")
  • rule("Ω Mode // Add Corruption [6]")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Players Within Radius(Global Variable(IronHeart), 1, Team 1, Off) == True;
  • Global Variable(ExpertChallengeSwitch) == False;
  • Global Variable(OmegaRNG) == 6;
  • Global Variable(OmegaMode) == True;
  • }
  • actions
  • {
  • Big Message(Event Player, Custom String("expert mode must be enabled to activate the iron heart.", Null, Null, Null));
  • Wait(3, Ignore Condition);
  • Small Message(Event Player, Custom String("Ω Corruption spills through your veins... Ω", Null, Null, Null));
  • Set Player Variable(Event Player, Corruption, Add(Player Variable(Event Player, Corruption), 5));
  • Wait(4, Ignore Condition);
  • Set Global Variable(OmegaRNG, 0);
  • }
  • }
  • rule("CC Mode // Set timer to 10 minutes")
  • rule("Ω Mode // enemy boost [7]")
  • {
  • event
  • {
  • Ongoing - Global;
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(CursedClockMode) == True;
  • Global Variable(OmegaRNG) == 7;
  • Global Variable(OmegaMode) == True;
  • }
  • actions
  • {
  • Wait(0.250, Abort When False);
  • Set Match Time(600);
  • Small Message(Event Player, Custom String("Ω You feel sick... Ω", Null, Null, Null));
  • Set Damage Dealt(Event Player, 50);
  • Set Healing Dealt(Event Player, 50);
  • Wait(12, Ignore Condition);
  • Set Damage Dealt(Event Player, 100);
  • Set Healing Dealt(Event Player, 100);
  • Set Global Variable(OmegaRNG, 0);
  • }
  • }
  • rule("CC Mode // If a player dies, -30 seconds on the timer")
  • rule("Ω Mode // Sacrifice [8]")
  • {
  • event
  • {
  • Player Died;
  • Ongoing - Each Player;
  • Team 1;
  • All;
  • }
  • conditions
  • {
  • Global Variable(CursedClockMode) == True;
  • Global Variable(OmegaRNG) == 8;
  • }
  • actions
  • {
  • Set Match Time(Subtract(Match Time, 30));
  • Small Message(Event Player, Custom String("Ω The Sigil demands sacrifice...Ω", Null, Null, Null));
  • Kill(Randomized Array(Closest Player To(Global Variable(OmegaSigil), Team 1)), Null);
  • Kill(All Players(Team 2), Null);
  • Wait(4, Ignore Condition);
  • Set Global Variable(OmegaRNG, 0);
  • }
  • }
Join the Workshop.codes Discord