Create
Return to post

Comparing difference between and

View raw
  • settings
  • {
  • main
  • {
  • Description: "v1.10: Game mode for Lucios to race to the finish line with a little bit of wallriding skill! - Initially created by waycoolway - Heavily updated by Giacomand - Additional maps by Fahzix - https://workshop.elohell.gg/uOi5fgHDI/"
  • Description: "v1.11: Game mode for Lucios to race to the finish line with a little bit of wallriding skill! - Initially created by waycoolway - Heavily updated by Giacomand - Additional maps by Fahzix - https://workshop.elohell.gg/uOi5fgHDI/"
  • }
  • lobby
  • {
  • Allow Players Who Are In Queue: Yes
  • Match Voice Chat: Enabled
  • Return To Lobby: Never
  • }
  • modes
  • {
  • disabled Deathmatch
  • {
  • Self Initiated Respawn: Off
  • }
  • disabled Hybrid
  • {
  • Capture Speed Modifier: 10%
  • Payload Speed Modifier: 10%
  • }
  • Skirmish
  • {
  • enabled maps
  • {
  • Eichenwalde
  • Havana
  • Hollywood
  • King's Row
  • Lijiang Tower
  • Nepal
  • Numbani
  • Temple of Anubis
  • }
  • }
  • General
  • {
  • Allow Hero Switching: Off
  • Game Mode Start: Manual
  • Hero Limit: Off
  • Respawn Time Scalar: 0%
  • }
  • }
  • heroes
  • {
  • General
  • {
  • Lúcio
  • {
  • Healing Received: 500%
  • Health: 500%
  • Primary Fire: Off
  • Soundwave: Off
  • Ultimate Ability Sound Barrier: Off
  • }
  • enabled heroes
  • {
  • Lúcio
  • }
  • }
  • }
  • }
  • variables
  • {
  • global:
  • 2: StartingPosition
  • 4: CheckpointList
  • 6: CheckpointRadius
  • 8: DebugEnabled
  • 9: MapVoteTimeStart
  • 10: MapVoteDuration
  • 11: LoopIndex
  • 13: MapEditorCheckpointList
  • 15: BestRecordsNameList
  • 19: TeleportEntranceList
  • 20: TeleportExitList
  • 21: VotingForNewMap
  • 22: StartingPositionRadius
  • 25: BestRecordsTimeList
  • player:
  • 2: NewCheckpointLocation
  • 5: CurrentCheckpointID
  • 7: RaceTime
  • 11: PlayerLoopIndex
  • 12: LastCreatedSpeedometerID
  • 17: RespawningSelf
  • 18: Spawning
  • 21: VotedForNewMap
  • 23: InSavingMode
  • 25: BestTime
  • }
  • disabled rule("DEBUG: Enable Debug? (Enable this rule to enable debug mode)")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Global.DebugEnabled = True;
  • }
  • }
  • rule("DEBUG: Setup Global Debug")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Global.DebugEnabled == True;
  • }
  • actions
  • {
  • Create HUD Text(All Players(All Teams), String("{0}: {1}", Custom String("No. Checkpoints In Play"), Count Of(
  • Global.CheckpointList)), Null, Null, Right, 0, White, White, White, Visible To and String, Default Visibility);
  • Global.CheckpointList)), Null, Null, Right, 0, Color(White), Color(White), Color(White), Visible To and String,
  • Default Visibility);
  • Create HUD Text(All Players(All Teams), String("{0}: {1}", Custom String("No. Checkpoints In Planning Mode"), Count Of(
  • Global.MapEditorCheckpointList)), Null, Null, Right, 0, White, White, White, Visible To and String, Default Visibility);
  • Global.MapEditorCheckpointList)), Null, 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(
  • "Primary Fire: Select new checkpoint location - Secondary Fire: Save selected checkpoint location"), Custom String(
  • "Soundwave: Undo last save - Ultimate: Put saved checkpoints into play - Ult Status: Toggle save mode"), Right, 0, White,
  • White, White, Visible To and String, Default Visibility);
  • "Soundwave: Undo last save - Ultimate: Put saved checkpoints into play - Ult Status: Toggle save mode"), Right, 0, Color(
  • White), Color(White), Color(White), Visible To and String, Default Visibility);
  • Set Match Time(3599);
  • }
  • }
  • rule("DEBUG: Label Rings")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Global.DebugEnabled == True;
  • }
  • actions
  • {
  • Create In-World Text(Event Player, String("#{0}", Event Player.CurrentCheckpointID + -2),
  • Global.CheckpointList[Event Player.CurrentCheckpointID + -3], 2, Clip Against Surfaces, Visible To Position and String, White,
  • Default Visibility);
  • Global.CheckpointList[Event Player.CurrentCheckpointID + -3], 2, Clip Against Surfaces, Visible To Position and String, Color(
  • White), Default Visibility);
  • Create In-World Text(Event Player, String("#{0}", Event Player.CurrentCheckpointID + -1),
  • Global.CheckpointList[Event Player.CurrentCheckpointID + -2], 2, Clip Against Surfaces, Visible To Position and String, White,
  • Default Visibility);
  • Global.CheckpointList[Event Player.CurrentCheckpointID + -2], 2, Clip Against Surfaces, Visible To Position and String, Color(
  • White), Default Visibility);
  • Create In-World Text(Event Player, String("#{0}", Event Player.CurrentCheckpointID + 0),
  • Global.CheckpointList[Event Player.CurrentCheckpointID + -1], 2, Clip Against Surfaces, Visible To Position and String, White,
  • Default Visibility);
  • Global.CheckpointList[Event Player.CurrentCheckpointID + -1], 2, Clip Against Surfaces, Visible To Position and String, Color(
  • White), Default Visibility);
  • Create In-World Text(Event Player, String("#{0}", Event Player.CurrentCheckpointID + 1),
  • Global.CheckpointList[Event Player.CurrentCheckpointID + 0], 2, Clip Against Surfaces, Visible To Position and String, White,
  • Default Visibility);
  • Global.CheckpointList[Event Player.CurrentCheckpointID + 0], 2, Clip Against Surfaces, Visible To Position and String, Color(
  • White), Default Visibility);
  • Create In-World Text(Event Player, String("#{0}", Event Player.CurrentCheckpointID + 2),
  • Global.CheckpointList[Event Player.CurrentCheckpointID + 1], 2, Clip Against Surfaces, Visible To Position and String, White,
  • Default Visibility);
  • Global.CheckpointList[Event Player.CurrentCheckpointID + 1], 2, Clip Against Surfaces, Visible To Position and String, Color(
  • White), Default Visibility);
  • Create In-World Text(Event Player, String("#{0}", Event Player.CurrentCheckpointID + 3),
  • Global.CheckpointList[Event Player.CurrentCheckpointID + 2], 2, Clip Against Surfaces, Visible To Position and String, White,
  • Default Visibility);
  • Global.CheckpointList[Event Player.CurrentCheckpointID + 2], 2, Clip Against Surfaces, Visible To Position and String, Color(
  • White), Default Visibility);
  • }
  • }
  • rule("DEBUG: Display Coordinates")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Global.DebugEnabled == True;
  • }
  • actions
  • {
  • Create HUD Text(All Players(All Teams), Null, Event Player, Event Player.NewCheckpointLocation, Left, 0, White, Blue, White,
  • Visible To and String, Default Visibility);
  • Create HUD Text(All Players(All Teams), Null, Event Player, Event Player.NewCheckpointLocation, Left, 0, Color(White), Color(Blue),
  • Color(White), Visible To and String, Default Visibility);
  • Global.MapEditorCheckpointList = Empty Array;
  • Create HUD Text(Event Player, Null, Custom String("Saving Mode:"), Event Player.InSavingMode, Right, 10, Red, Red, White,
  • Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Custom String("Saving Mode:"), Event Player.InSavingMode, Right, 10, Color(Red), Color(Red),
  • Color(White), Visible To and String, Default Visibility);
  • Event Player.InSavingMode = False;
  • Event Player.NewCheckpointLocation = Vector(0, 0, 0);
  • Event Player.D = Vector(0, 0, 0);
  • Event Player.E = Vector(0, 0, 0);
  • }
  • }
  • rule("DEBUG - CREATE MODE: Coordinate Finding (Primary Fire)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Button Held(Event Player, Primary Fire) == True;
  • Is Button Held(Event Player, Button(Primary Fire)) == True;
  • Global.DebugEnabled == True;
  • Event Player.InSavingMode == False;
  • }
  • actions
  • {
  • Event Player.D = Ray Cast Hit Position(Eye Position(Event Player), Facing Direction Of(Event Player) * 1000 + Position Of(
  • Event Player), Empty Array, Event Player, True);
  • Event Player.D = Vector(Round To Integer(X Component Of(Event Player.D), To Nearest), Round To Integer(Y Component Of(
  • Event Player.D), To Nearest), Round To Integer(Z Component Of(Event Player.D), To Nearest));
  • Event Player.G = Ray Cast Hit Normal(Eye Position(Event Player), Facing Direction Of(Event Player) * 1000 + Position Of(
  • Event Player), Empty Array, Event Player, True);
  • Skip If(Event Player.D == Event Player.E, 3);
  • Event Player.NewCheckpointLocation = Event Player.D;
  • Event Player.E = Event Player.D;
  • Skip(1);
  • Event Player.NewCheckpointLocation += Event Player.G * 0.500;
  • Play Effect(All Players(All Teams), Good Explosion, White, Event Player.NewCheckpointLocation, 0.200);
  • Play Effect(All Players(All Teams), Good Explosion, Color(White), Event Player.NewCheckpointLocation, 0.200);
  • Event Player.G = Vector(Round To Integer(0, Up), 0, 0);
  • }
  • }
  • rule("DEBUG - CREATE MODE: Save Ring (Secondary Fire)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Global.DebugEnabled == True;
  • Is Button Held(Event Player, Secondary Fire) == True;
  • Is Button Held(Event Player, Button(Secondary Fire)) == True;
  • Array Contains(Global.MapEditorCheckpointList, Event Player.NewCheckpointLocation) == False;
  • Event Player.InSavingMode == False;
  • }
  • actions
  • {
  • Modify Global Variable(MapEditorCheckpointList, Append To Array, Event Player.NewCheckpointLocation);
  • Play Effect(All Players(All Teams), Ring Explosion Sound, Green, Event Player, 75);
  • Play Effect(All Players(All Teams), Ring Explosion Sound, Color(Green), Event Player, 75);
  • Big Message(Event Player, String("Saved"));
  • Wait(0.250, Ignore Condition);
  • }
  • }
  • rule("DEBUG - CREATE MODE: Undo Ring (Interact)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Global.DebugEnabled == True;
  • Is Button Held(Event Player, Interact) == True;
  • Is Button Held(Event Player, Button(Interact)) == True;
  • Event Player.InSavingMode == False;
  • }
  • actions
  • {
  • Modify Global Variable(MapEditorCheckpointList, Remove From Array By Index, Count Of(Global.MapEditorCheckpointList) - 1);
  • Play Effect(All Players(All Teams), Explosion Sound, Green, Event Player, 75);
  • Play Effect(All Players(All Teams), Explosion Sound, Color(Green), Event Player, 75);
  • Wait(0.250, Ignore Condition);
  • Big Message(Event Player, String("Backward"));
  • }
  • }
  • rule("DEBUG - CREATE MODE: Play Rings (Ultimate)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Global.DebugEnabled == True;
  • Is Button Held(Event Player, Ultimate) == True;
  • Is Button Held(Event Player, Button(Ultimate)) == True;
  • Event Player.InSavingMode == False;
  • }
  • actions
  • {
  • Play Effect(All Players(All Teams), Buff Explosion Sound, Green, Event Player, 75);
  • Play Effect(All Players(All Teams), Buff Explosion Sound, Color(Green), Event Player, 75);
  • Global.CheckpointList = Global.MapEditorCheckpointList;
  • Big Message(Event Player, String("Ready"));
  • }
  • }
  • rule("DEBUG: Toggle Save Mode - Teleport to the rings so you can save them in the editor easily")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Global.DebugEnabled == True;
  • Is Communicating(Event Player, Ultimate Status) == True;
  • }
  • actions
  • {
  • Event Player.InSavingMode = !Event Player.InSavingMode;
  • Event Player.Y = 0;
  • Event Player.CurrentCheckpointID = 0;
  • Skip If(Event Player.InSavingMode == False, 3);
  • Big Message(All Players(All Teams), String("{0} {1}", String("Save"), String("Status", Distance Between(Vector(0, 0, 0), Vector(0,
  • 0, 0)))));
  • Start Camera(Event Player, Global.CheckpointList[Event Player.Y], Global.CheckpointList[Event Player.Y + 1], 0);
  • Skip(1);
  • Stop Camera(Event Player);
  • }
  • }
  • rule("DEBUG - SAVE MODE: Go to next ring")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Button Held(Event Player, Secondary Fire) == True;
  • Is Button Held(Event Player, Button(Secondary Fire)) == True;
  • Global.DebugEnabled == True;
  • Event Player.InSavingMode == True;
  • (Event Player.Y < Count Of(Global.CheckpointList) - 1) == True;
  • }
  • actions
  • {
  • Event Player.Y += 1;
  • Big Message(All Players(All Teams), String("{0} {1}", String("Checkpoint"), Event Player.Y + 1));
  • Event Player.CurrentCheckpointID = Event Player.Y;
  • }
  • }
  • rule("DEBUG - SAVE MODE: Go to previous ring")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Is Button Held(Event Player, Primary Fire) == True;
  • Is Button Held(Event Player, Button(Primary Fire)) == True;
  • Global.DebugEnabled == True;
  • Event Player.InSavingMode == True;
  • (Event Player.Y > 0) == True;
  • }
  • actions
  • {
  • Event Player.Y -= 1;
  • Big Message(All Players(All Teams), String("{0} {1}", String("Checkpoint"), Event Player.Y + 1));
  • Event Player.CurrentCheckpointID = Event Player.Y;
  • }
  • }
  • rule("ON: Assembling Heroes")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Is Assembling Heroes == True;
  • }
  • actions
  • {
  • Set Match Time(0);
  • Disable Built-In Game Mode Completion;
  • }
  • }
  • rule("ON: Setup")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Is In Setup == True;
  • }
  • actions
  • {
  • Set Match Time(0);
  • }
  • }
  • rule("MAP: Echeinwalde Rings by waycoolway")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • disabled Distance Between(Nearest Walkable Position(Vector(0, 0, 0)), Vector(1.880, 0.350, -2.380)) < 0.010;
  • Current Map == Map(Eichenwalde);
  • }
  • actions
  • {
  • Global.StartingPosition = Vector(127.090, 15.939, -13.110);
  • Global.TeleportEntranceList = Empty Array;
  • Global.TeleportExitList = Empty Array;
  • Global.CheckpointList = Empty Array;
  • Modify Global Variable(CheckpointList, Append To Array, Vector(125, 18, -25));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(125, 16, -40));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(127, 12.500, -55));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(115, 14, -60));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(108, 16, -31));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(90.500, 17.500, -19));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(89.500, 18.500, -53));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(89.390, 21, -63.500));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(92.500, 14.500, -79));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(89.399, 10, -94));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(96, 8, -84.500));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(83.500, 4.500, -86.500));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(67, 6, -83.500));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(59, 7.500, -79));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(52, 7.500, -67));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(46.500, 9.500, -56));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(42.500, 11, -44));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(46.399, 13, -38));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(43, 15.500, -30));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(26, 3, -6.500));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(18, 5, -9));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(7, 9, -11));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-4, 9.500, -15));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-17, 10, -19));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-29.500, 14, -19));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-30, 15, -24));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-31, 19, -35.500));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-13, 19, -35));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(5.500, 16, -31.500));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(11.500, 14, -26));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(32, 21, -35));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(30, 23, -41));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(33, 25, -56));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(30, 26, -67));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(30, 24, -82.500));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(42, 21.500, -103));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(56, 24, -105.500));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(83, 20, -105));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(94.500, 22, -90.500));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(97.500, 16, -77));
  • }
  • }
  • rule("MAP: Lijiang Tower Rings by Giacomand")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • disabled Distance Between(Nearest Walkable Position(Vector(0, 0, 0)), Vector(5.880, 0, -10.130)) < 0.010;
  • Current Map == Map(Lijiang Tower);
  • }
  • actions
  • {
  • Global.StartingPosition = Vector(-65.501, 4.839, -32.011);
  • Global.StartingPosition = Vector(-55.359, 266.173, 326.081);
  • Global.StartingPosition = Vector(-64.012, 99.177, 162.586);
  • Global.TeleportEntranceList = Empty Array;
  • Global.TeleportExitList = Empty Array;
  • Modify Global Variable(TeleportEntranceList, Append To Array, Vector(53, 95, 149));
  • Modify Global Variable(TeleportExitList, Append To Array, Vector(-65.500, 5, -32));
  • Modify Global Variable(TeleportEntranceList, Append To Array, Vector(61, 21, -14));
  • Modify Global Variable(TeleportExitList, Append To Array, Vector(-54.338, 266.176, 325.986));
  • Global.CheckpointList = Empty Array;
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-60, 100, 148));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-51, 102, 142));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-15, 97, 148));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-4, 99, 160));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(15, 97, 147));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(10, 97, 115));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-6, 97, 108));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-18, 96, 124));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-7, 99, 157));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-9, 104, 189));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-25, 98, 186));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-60, 99, 170));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-50, 102, 142));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-14, 99, 133));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(15, 98, 134));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(36, 97, 150));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(49, 96, 149));
  • Skip If(True == False, 10000);
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-53, 4, -34));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-39, 3, -42));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-12, 5, -54));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-8, 10, -70));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(10, 10, -70));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(13, 5, -44));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(21, 9, -24));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(15, 15, -10));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(22, 19, -50));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(34, 11, -68));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(44, 10, -48));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(46, 22, -15));
  • Skip If(True == False, 10000);
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-33, 269, 311));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-8, 270, 277));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(14, 277, 274));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(0, 283, 294));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(5, 275, 264));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(26, 274, 278));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(45, 271, 305));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(35, 270, 338));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(24, 272, 341));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(9, 272, 319));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-5, 274, 293));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(0, 274, 280));
  • Skip If(True == True, 10000);
  • Modify Global Variable(CheckpointList, Append To Array, Vector(0, 0, 0));
  • }
  • }
  • rule("MAP: Temple of Anubis Rings by Giacomand")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • disabled Distance Between(Nearest Walkable Position(Vector(0, 0, 0)), Vector(1.880, -2.440, 2.130)) < 0.010;
  • Current Map == Map(Temple of Anubis);
  • }
  • actions
  • {
  • Global.StartingPosition = Vector(-0.123, 1.217, -20.343);
  • Global.TeleportEntranceList = Empty Array;
  • Global.TeleportExitList = Empty Array;
  • Global.CheckpointList = Empty Array;
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-9, 1, -11));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-12, 2, 8));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-6.500, 2.500, 19));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(5, 6, 39));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-7, 11, 35));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-20, 12, 32));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-22, 12.500, 42));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-12, 13, 48));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-6, 13, 38));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-21, 13, 21));
  • Skip If(False == True, 0);
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-42, 12, 14));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-53, 13, 48));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-36, 13, 64));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-26, 14, 67));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-15, 15, 72));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-5, 12, 91));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-2, 11, 104));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(4, 15, 116));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-8, 14, 114));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-24, 13, 120));
  • Skip If(False == True, 0);
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-18, 8, 127));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-27, 7, 121));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-23, 8, 91));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-38, 7, 63));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-53, 3, 43));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-47, 11, 33));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-36, 11, 51));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-15, 14, 72));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(3.050, 13, 78));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(11, 16, 67));
  • Skip If(False == True, 0);
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-4, 18, 62));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-32, 2.500, 74));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-42, 6, 70));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-38, 10, 70));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-39, 20.500, 75));
  • }
  • }
  • rule("MAP: Kings Row Rings by Giacomand")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • disabled Distance Between(Nearest Walkable Position(Vector(0, 100, 0)), Vector(2.630, 6.300, 0.380)) < 0.010;
  • Current Map == Map(King's Row);
  • }
  • actions
  • {
  • Global.StartingPosition = Vector(16.858, 7.173, 16.918);
  • Global.TeleportEntranceList = Empty Array;
  • Global.TeleportExitList = Empty Array;
  • Global.CheckpointList = Empty Array;
  • Modify Global Variable(CheckpointList, Append To Array, Vector(8, 8, 14));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(3, 7, 5));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-5, 2, -13));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-15, 2, -25));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-32, 2, -27));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-58, 1, -30));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-71, 2, -24));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-85, 2, -20));
  • Skip If(False == True, 0);
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-94, 2, -16));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-116, 0, -1));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-127, 0, 14));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-139, -2, 31));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-149, 2, 42));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-158, 6, 40));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-147, 0, 34));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-138, 0, 29));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-127, 1, 14));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-115, 1, -1));
  • Skip If(False == True, 0);
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-102, 2, -13));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-94, 3, -17));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-90, 3, -34));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-82, 2, -45));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-73, 4, -46));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-62, 2, -46));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-53, 2, -39));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-49, 1, -28));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-38, 2, -22));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-19, 2, -26));
  • Skip If(False == True, 0);
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-6, 3, -25));
  • }
  • }
  • rule("MAP: Numbani Rings by Giacomand")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • disabled Distance Between(Nearest Walkable Position(Vector(0, 0, 0)), Vector(-2.130, 0.350, 3.130)) < 0.010;
  • Current Map == Map(Numbani);
  • }
  • actions
  • {
  • Global.StartingPosition = Vector(6.079, 1.002, -0.311);
  • Global.TeleportEntranceList = Empty Array;
  • Global.TeleportExitList = Empty Array;
  • Global.CheckpointList = Empty Array;
  • Modify Global Variable(CheckpointList, Append To Array, Vector(19, 1.500, 12));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(55.003, 3.500, 15.991));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(70, 4, 4));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(85.646, 6.001, -20.354));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(97.832, 8, -32.471));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(113.830, 9.010, -22.558));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(128, 10, 1));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(141.764, 11.047, 13.438));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(143.500, 8.999, 30.981));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(134.796, 10.016, 38.979));
  • Skip If(False == True, 0);
  • Modify Global Variable(CheckpointList, Append To Array, Vector(112.446, 11.171, 24.814));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(89.354, 1, 24.646));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(83.354, 10.008, 19.646));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(80, 2, -7));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(99, 1.500, -9));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(117, -1.500, 2));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(139, -2.500, 4));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(178, 0.500, -4));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(204, 2, 3));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(191.999, 2.140, 28.520));
  • Skip If(False == True, 0);
  • Modify Global Variable(CheckpointList, Append To Array, Vector(177, 7, 16));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(177, -1, 4.999));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(161.876, 0, 6.516));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(157.021, 2, 12.968));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(150.221, 4.992, 24.373));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(137.354, 9.007, 22.646));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(143.242, 9.049, 13.435));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(163, 6, -3));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(178, 5.500, 13));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(184, 1.500, 37));
  • Skip If(False == True, 0);
  • Modify Global Variable(CheckpointList, Append To Array, Vector(219, 1, 38));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(219, 1, 8));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(187.699, 2.022, 2.047));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(142.072, 0.000, 11.495));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(101, -0.500, 21));
  • Skip If(True == False, 0);
  • }
  • }
  • rule("MAP: Havana Rings by Giacomand")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • disabled Distance Between(Nearest Walkable Position(Vector(0, 0, 0)), Vector(-10.130, 8.050, -30.130)) < 0.010;
  • Current Map == Map(Havana);
  • }
  • actions
  • {
  • Global.StartingPosition = Vector(-4.271, 7.174, -93.840);
  • Global.TeleportEntranceList = Empty Array;
  • Global.TeleportExitList = Empty Array;
  • Global.CheckpointList = Empty Array;
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-7, 11, -73));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-20, 15, -65));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-42, 16, -55.500));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-62, 14, -44));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-78.449, 10.627, -55.551));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-68, 14, -72.500));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-64, 21, -57));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-44, 22, -55.500));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-29.981, 20, -47.195));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-34, 6.500, -27));
  • Skip If(False == True, 0);
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-37, 14, -41));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-29.040, 14.999, -54.979));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-25, 7.500, -87));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-19.109, 8.200, -90.249));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-23.874, 15.505, -62));
  • Skip If(False == True, 0);
  • }
  • }
  • rule("MAP: Nepal Rings by Fahzix")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • disabled Distance Between(Nearest Walkable Position(Vector(0, 0, 0)), Vector(-18.130, 13.300, -1.880)) < 0.010;
  • Current Map == Map(Nepal);
  • }
  • actions
  • {
  • Global.StartingPosition = Vector(-37.771, 15.973, -61.176);
  • Global.TeleportEntranceList = Empty Array;
  • Global.TeleportExitList = Empty Array;
  • Global.CheckpointList = Empty Array;
  • Modify Global Variable(TeleportEntranceList, Append To Array, Vector(-23, 17, -21));
  • Modify Global Variable(TeleportExitList, Append To Array, Vector(76, 130, -70));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-40, 16, -53));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-44, 14, -29));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-44, 16, -20));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-42, 18, 4));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-44, 17, 20));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-48, 21, 29));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-57, 25, 29));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-60, 29, 30));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-52, 30, 32));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-42, 32, 30));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-30, 28, 48));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-30, 28, 57));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-20, 30, 70));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-28, 31, 79));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-44, 30, 83));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-67, 2, 70));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-67, 8, 69));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-68, 13, 69));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-71, 17, 58));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-82, 22, 53));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-81, 15, 42));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-78, 4, 25));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-87, 5, 9));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-87, 6, -8));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-81, 11, -40));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-81, 17, -54));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-59, 16, -60));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-54, 21, -48));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-28, 22, -51));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-24, 22, -45));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-23, 16, -31));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(74, 132, -64));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(79, 132, -52));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(84, 134, -30));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(89, 135, -11));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(88, 135, 12));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(81, 137, 17));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(69, 136, 7));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(57, 133, -3));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(59, 140, -28));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(59, 148, -28));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(59, 148, -18));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(51, 151, -4));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(47, 150, 0));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(52, 150, 4));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(58, 154, -18));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(55, 155, -29));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-161, -97, -56));
  • Modify Global Variable(TeleportEntranceList, Append To Array, Vector(75, 147, -36));
  • Modify Global Variable(TeleportExitList, Append To Array, Vector(-170, -99, -68));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-165, -93, -41));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-184, -92, -26));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-204, -92, -12));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-210, -86, 10));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-209, -83, 23));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-197, -88, 33));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-185, -83, 41));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-175, -87, 55));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-168, -99, 68));
  • Skip If(False == True, 0);
  • }
  • }
  • rule("MAP: Hollywood Rings by Giacomand")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Current Map == Map(Hollywood);
  • }
  • actions
  • {
  • Global.StartingPosition = Vector(12.292, 7.179, 49.685);
  • Global.TeleportEntranceList = Empty Array;
  • Global.TeleportExitList = Empty Array;
  • Global.CheckpointList = Empty Array;
  • Modify Global Variable(CheckpointList, Append To Array, Vector(5.135, 10.807, 27.654));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-10.292, 13.958, 15.678));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-4.289, 13, -2.767));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(2.620, 13.003, -17.451));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-5.227, 9.883, -48.082));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-12.080, 10, -61.560));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-15.550, 4, -83.384));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-30.036, 10.069, -97.255));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-35.031, 4, -119.246));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-27.905, 7.002, -131.574));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-18, 11, -103));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(18, 3, -92));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(39.039, 5, -77.724));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(26.754, 9, -64.969));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-1, 8, -33));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-3.632, 12.698, -4.971));
  • Modify Global Variable(CheckpointList, Append To Array, Vector(-25, 3, 31));
  • }
  • }
  • rule("SETUP: Global Vars")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Global.A = False;
  • Global.B = 5;
  • Global.H = 0;
  • Global.Y = Empty Array;
  • Global.StartingPositionRadius = 4;
  • Create In-World Text(Filtered Array(All Players(All Teams), Current Array Element.RespawningSelf != True), String("{0}: {1}",
  • String("Try Again"), String("Crouching")), Direction Towards(Global.StartingPosition, Global.CheckpointList[0])
  • * Global.StartingPositionRadius + Global.StartingPosition, 2, Clip Against Surfaces, Visible To Position and String, White,
  • Default Visibility);
  • * Global.StartingPositionRadius + Global.StartingPosition, 2, Clip Against Surfaces, Visible To Position and String, Color(
  • White), Default Visibility);
  • Global.MapVoteTimeStart = 900;
  • Global.MapVoteDuration = 45;
  • }
  • }
  • rule("SETUP: Player Vars")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Has Spawned(Event Player) == True;
  • }
  • actions
  • {
  • Event Player.CurrentCheckpointID = 0;
  • Event Player.RaceTime = 0;
  • Event Player.BestTime = 999.990;
  • Create In-World Text(All Players(All Teams), String("{0}: {1}", String("Time"), Event Player.RaceTime), Event Player, 2,
  • Clip Against Surfaces, Visible To Position and String, White, Default Visibility);
  • Clip Against Surfaces, Visible To Position and String, Color(White), Default Visibility);
  • Create HUD Text(Event Player, Null, Null, String("{0}: {1}", String("Time"), String("{0} sec", Event Player.RaceTime)), Left, -10,
  • White, Red, White, Visible To and String, Default Visibility);
  • Color(White), Color(Red), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Null, String("{0}: {1}", String("{0} {1}", String("Best"), String("Record")), String("{0} sec",
  • Event Player.BestTime)), Left, -9, White, Red, White, Visible To and String, Default Visibility);
  • Event Player.BestTime)), Left, -9, Color(White), Color(Red), Color(White), Visible To and String, Default Visibility);
  • Event Player.Spawning = True;
  • Create Icon(Filtered Array(Event Player, !Is In View Angle(Current Array Element,
  • Global.CheckpointList[Current Array Element.CurrentCheckpointID], 103) || !Is In Line of Sight(Eye Position(
  • Current Array Element), Global.CheckpointList[Current Array Element.CurrentCheckpointID], Barriers Do Not Block LOS)),
  • Global.CheckpointList[Event Player.CurrentCheckpointID], Ring Thick, Visible To and Position, Green, True);
  • Global.CheckpointList[Event Player.CurrentCheckpointID], Ring Thick, Visible To and Position, Color(Green), True);
  • Disable Movement Collision With Players(Event Player);
  • }
  • }
  • rule("SETUP: Checkpoint Vars")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Global.F = 2;
  • Global.CheckpointRadius = 3;
  • }
  • }
  • rule("SETUP: Time Records")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(All Players(All Teams), Null, String("{0} {1}", String("Best"), String("Times")), Null, Right, -5, White, Red,
  • White, Visible To and String, Default Visibility);
  • Create HUD Text(All Players(All Teams), Null, String("{0} {1}", String("Best"), String("Times")), Null, Right, -5, Color(White),
  • Color(Red), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(All Players(All Teams), Null, Null, String("{0} {1}", String("#{0}", 1), String("{0} - {1}",
  • Global.BestRecordsNameList[0], String("{0} sec", Global.BestRecordsTimeList[0]))), Right, -4, White, White, White,
  • Visible To and String, Default Visibility);
  • Global.BestRecordsNameList[0], String("{0} sec", Global.BestRecordsTimeList[0]))), Right, -4, Color(White), Color(White),
  • Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(All Players(All Teams), Null, Null, String("{0} {1}", String("#{0}", 2), String("{0} - {1}",
  • Global.BestRecordsNameList[1], String("{0} sec", Global.BestRecordsTimeList[1]))), Right, -3, White, White, White,
  • Visible To and String, Default Visibility);
  • Global.BestRecordsNameList[1], String("{0} sec", Global.BestRecordsTimeList[1]))), Right, -3, Color(White), Color(White),
  • Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(All Players(All Teams), Null, Null, String("{0} {1}", String("#{0}", 3), String("{0} - {1}",
  • Global.BestRecordsNameList[2], String("{0} sec", Global.BestRecordsTimeList[2]))), Right, -2, White, White, White,
  • Visible To and String, Default Visibility);
  • Global.BestRecordsNameList[2], String("{0} sec", Global.BestRecordsTimeList[2]))), Right, -2, Color(White), Color(White),
  • Color(White), Visible To and String, Default Visibility);
  • }
  • }
  • rule("SETUP: Create Rings")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • actions
  • {
  • Create Effect(Event Player, Good Aura, Green, Global.CheckpointList[Event Player.CurrentCheckpointID], Global.F,
  • Create Effect(Event Player, Good Aura, Color(Green), Global.CheckpointList[Event Player.CurrentCheckpointID], Global.F,
  • Visible To Position and Radius);
  • Create Effect(Event Player, Good Aura, Yellow, Global.CheckpointList[1 + Event Player.CurrentCheckpointID], Global.F,
  • Create Effect(Event Player, Good Aura, Color(Yellow), Global.CheckpointList[1 + Event Player.CurrentCheckpointID], Global.F,
  • Visible To Position and Radius);
  • Create Effect(Event Player, Good Aura, Red, Global.CheckpointList[2 + Event Player.CurrentCheckpointID], Global.F,
  • Create Effect(Event Player, Good Aura, Color(Red), Global.CheckpointList[2 + Event Player.CurrentCheckpointID], Global.F,
  • Visible To Position and Radius);
  • }
  • }
  • rule("SETUP: Create Teleporters")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Count Of(Global.TeleportEntranceList) > 0;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Light Shaft, Purple, Global.TeleportEntranceList[Global.LoopIndex] + Vector(0, -1, 0),
  • Create Effect(All Players(All Teams), Light Shaft, Color(Purple), Global.TeleportEntranceList[Global.LoopIndex] + Vector(0, -1, 0),
  • Global.CheckpointRadius, Visible To);
  • Create Effect(All Players(All Teams), Light Shaft, Blue, Global.TeleportExitList[Global.LoopIndex] + Vector(0, -1, 0),
  • Create Effect(All Players(All Teams), Light Shaft, Color(Blue), Global.TeleportExitList[Global.LoopIndex] + Vector(0, -1, 0),
  • Global.CheckpointRadius, Visible To);
  • Global.LoopIndex += 1;
  • Wait(0.016, Ignore Condition);
  • Loop If(Global.LoopIndex < Count Of(Global.TeleportEntranceList));
  • }
  • }
  • rule("SETUP: Create Spawn Ring")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create Effect(All Players(All Teams), Ring, Blue, Global.StartingPosition, Global.StartingPositionRadius,
  • Create Effect(All Players(All Teams), Ring, Color(Blue), Global.StartingPosition, Global.StartingPositionRadius,
  • Visible To Position and Radius);
  • }
  • }
  • rule("SETUP: Match Timer")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Global.A == True;
  • }
  • actions
  • {
  • Chase Global Variable Over Time(H, 500, 500.001, Destination and Duration);
  • }
  • }
  • rule("ON: Player Spawning (Disable to stop forced spawns)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • (Event Player.Spawning || Is Button Held(Event Player, Crouch)) == True;
  • (Event Player.Spawning || Is Button Held(Event Player, Button(Crouch))) == True;
  • }
  • actions
  • {
  • Skip If(!Is Button Held(Event Player, Crouch), 1);
  • Skip If(!Is Button Held(Event Player, Button(Crouch)), 1);
  • Event Player.RespawningSelf = True;
  • Resurrect(Event Player);
  • Skip If(Global.StartingPosition == 0, 1);
  • Teleport(Event Player, Global.StartingPosition);
  • Set Facing(Event Player, Direction Towards(Global.StartingPosition, Vector(X Component Of(First Of(Global.CheckpointList)),
  • Y Component Of(Position Of(Event Player)), Z Component Of(First Of(Global.CheckpointList)))), To World);
  • Event Player.CurrentCheckpointID = 0;
  • Event Player.RaceTime = 0;
  • Set Status(Event Player, Null, Phased Out, 9999);
  • disabled Set Status(Event Player, Null, Phased Out, 9999);
  • Event Player.Spawning = False;
  • Wait(0.100, Ignore Condition);
  • Set Ability Cooldown(Event Player, Button(Ability 2), 0);
  • Set Status(Event Player, Null, Stunned, 0.050);
  • }
  • }
  • rule("ON: Player Death")
  • {
  • event
  • {
  • Player Died;
  • All;
  • All;
  • }
  • actions
  • {
  • Wait(1, Ignore Condition);
  • Event Player.Spawning = True;
  • }
  • }
  • rule("ON: Collision of Rings")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Array Contains(Players Within Radius(Global.CheckpointList[Event Player.CurrentCheckpointID], Global.CheckpointRadius + 0.500,
  • All Teams, Off), Event Player) == True;
  • }
  • actions
  • {
  • Event Player.CurrentCheckpointID += 1;
  • Small Message(Event Player, String("{0} / {1}", Event Player.CurrentCheckpointID, Count Of(Global.CheckpointList)));
  • Play Effect(Event Player, Ring Explosion Sound, White, Event Player, 75);
  • Play Effect(Event Player, Ring Explosion Sound, Color(White), Event Player, 75);
  • }
  • }
  • rule("ON: Collision with Teleporter")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Count Of(Global.TeleportEntranceList) > 0;
  • Is True For Any(Global.TeleportEntranceList, Array Contains(Players Within Radius(Current Array Element,
  • Global.CheckpointRadius + 0.500, All Teams, Off), Event Player) == True) == True;
  • }
  • actions
  • {
  • Skip If(Event Player.PlayerLoopIndex > 0, 1);
  • Event Player.PlayerLoopIndex = Count Of(Global.TeleportEntranceList) - 1;
  • Event Player.T = Global.TeleportEntranceList[Event Player.PlayerLoopIndex];
  • Skip If(Distance Between(Event Player.T, Event Player) < Global.CheckpointRadius + 0.500, 3);
  • Event Player.PlayerLoopIndex -= 1;
  • Wait(0.016, Ignore Condition);
  • Loop If(Event Player.PlayerLoopIndex > 0);
  • Big Message(Event Player, String("{0} sec", Event Player.RaceTime));
  • Teleport(Event Player, Global.TeleportExitList[Event Player.PlayerLoopIndex]);
  • Event Player.PlayerLoopIndex = 0;
  • }
  • }
  • rule("ON: Finished Race - Announcement & Respawn")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Count Of(Global.CheckpointList) != 0;
  • Event Player.CurrentCheckpointID == Count Of(Global.CheckpointList);
  • Global.DebugEnabled != True;
  • }
  • actions
  • {
  • Big Message(Event Player, String("{0}: {1}", String("Finished"), Event Player.RaceTime));
  • Event Player.Spawning = True;
  • }
  • }
  • rule("ON: Finished Race - Update Personal Record")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Event Player.CurrentCheckpointID == Count Of(Global.CheckpointList);
  • }
  • actions
  • {
  • Event Player.BestTime = Min(Event Player.RaceTime, Event Player.BestTime);
  • }
  • }
  • rule("ON: Player Leaves Spawn")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Global.StartingPosition, Position Of(Event Player)) >= Global.StartingPositionRadius;
  • Event Player.CurrentCheckpointID <= 0;
  • }
  • actions
  • {
  • Chase Player Variable Over Time(Event Player, RaceTime, 9999, 9999, Destination and Duration);
  • }
  • }
  • rule("ON: Player In Spawn")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Distance Between(Global.StartingPosition, Position Of(Event Player)) < Global.StartingPositionRadius;
  • Event Player.CurrentCheckpointID <= 0;
  • }
  • actions
  • {
  • Stop Chasing Player Variable(Event Player, RaceTime);
  • Event Player.RaceTime = 0;
  • }
  • }
  • rule("ON: Speedometer (Slow)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Horizontal Speed Of(Event Player) <= 12;
  • }
  • actions
  • {
  • Destroy HUD Text(Event Player.LastCreatedSpeedometerID);
  • Create HUD Text(Event Player, Null, Null, String("{0} m/s", Horizontal Speed Of(Event Player)), Left, -101, White, White, Yellow,
  • Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Null, String("{0} m/s", Horizontal Speed Of(Event Player)), Left, -101, Color(White), Color(
  • White), Color(Yellow), Visible To and String, Default Visibility);
  • Event Player.LastCreatedSpeedometerID = Last Text ID;
  • }
  • }
  • rule("ON: Speedometer (Fast)")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Horizontal Speed Of(Event Player) > 12;
  • }
  • actions
  • {
  • Destroy HUD Text(Event Player.LastCreatedSpeedometerID);
  • Create HUD Text(Event Player, Null, Null, String("{0} m/s", Horizontal Speed Of(Event Player)), Left, -101, White, White, Green,
  • Visible To and String, Default Visibility);
  • Create HUD Text(Event Player, Null, Null, String("{0} m/s", Horizontal Speed Of(Event Player)), Left, -101, Color(White), Color(
  • White), Color(Green), Visible To and String, Default Visibility);
  • Event Player.LastCreatedSpeedometerID = Last Text ID;
  • }
  • }
  • rule("LOOP: Update Records")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Skip If(Count Of(All Players(All Teams)) <= 0, 5);
  • Global.BestRecordsNameList = Array Slice(Sorted Array(Filtered Array(Filtered Array(All Players(All Teams), Has Spawned(
  • Current Array Element)), Current Array Element.BestTime < 999.990), Current Array Element.BestTime), 0, 3);
  • Skip If(Count Of(Global.BestRecordsNameList) >= 3, 1);
  • Modify Global Variable(BestRecordsNameList, Append To Array, Hero(Lúcio));
  • Skip If(Count Of(Global.BestRecordsNameList) >= 3, 1);
  • Modify Global Variable(BestRecordsNameList, Append To Array, Hero(Lúcio));
  • Skip If(Count Of(Global.BestRecordsNameList) >= 3, 1);
  • Modify Global Variable(BestRecordsNameList, Append To Array, Hero(Lúcio));
  • Global.BestRecordsTimeList = Empty Array;
  • Modify Global Variable(BestRecordsTimeList, Append To Array, Global.BestRecordsNameList[0].BestTime);
  • Modify Global Variable(BestRecordsTimeList, Append To Array, Global.BestRecordsNameList[1].BestTime);
  • Modify Global Variable(BestRecordsTimeList, Append To Array, Global.BestRecordsNameList[2].BestTime);
  • Wait(10, Ignore Condition);
  • Loop;
  • }
  • }
  • disabled rule("SETUP: Voting UI")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • actions
  • {
  • Create HUD Text(Filtered Array(All Players(All Teams), Global.VotingForNewMap == True), Null, Custom String("Map Vote"),
  • Custom String("Use 'Interact' (F) to toggle your vote"), Left, 20, White, Red, White, Visible To and String,
  • Default Visibility);
  • Custom String("Use 'Interact' (F) to toggle your vote"), Left, 20, Color(White), Color(Red), Color(White),
  • Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Global.VotingForNewMap == True), Null, Null, Custom String(
  • "Total Votes: {0} / {1}", Count Of(Filtered Array(All Players(All Teams), Current Array Element.VotedForNewMap == True)),
  • Round To Integer(Count Of(All Players(All Teams)) * 0.500, Up)), Left, 21, White, Red, White, Visible To and String,
  • Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Global.VotingForNewMap == True), Null, Null, Custom String(
  • "Time Remaining: {0} sec", Match Time - (Global.MapVoteTimeStart - Global.MapVoteDuration)), Left, 22, White, Red, White,
  • Round To Integer(Count Of(All Players(All Teams)) * 0.500, Up)), Left, 21, Color(White), Color(Red), Color(White),
  • Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams), Global.VotingForNewMap == True), Null, Null, Custom String(
  • "Time Remaining: {0} sec", Match Time - (Global.MapVoteTimeStart - Global.MapVoteDuration)), Left, 22, Color(White), Color(
  • Red), Color(White), Visible To and String, Default Visibility);
  • Create HUD Text(Filtered Array(All Players(All Teams),
  • Global.VotingForNewMap == True && Current Array Element.VotedForNewMap == True), Null, Null, Custom String(
  • "You have voted 'Yes'"), Left, 23, White, Red, White, Visible To and String, Default Visibility);
  • "You have voted 'Yes'"), Left, 23, Color(White), Color(Red), Color(White), Visible To and String, Default Visibility);
  • }
  • }
  • disabled rule("ON: Voting Started")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Match Time <= Global.MapVoteTimeStart;
  • Global.DebugEnabled != True;
  • All Players(All Teams) != Host Player;
  • }
  • actions
  • {
  • Big Message(All Players(All Teams), Custom String("NEW MAP VOTE STARTED"));
  • Global.VotingForNewMap = True;
  • Wait(6, Ignore Condition);
  • Big Message(All Players(All Teams), Custom String("Use 'Interact' (F) to vote!"));
  • }
  • }
  • disabled rule("ON: Voted For New Map")
  • {
  • event
  • {
  • Ongoing - Each Player;
  • All;
  • All;
  • }
  • conditions
  • {
  • Global.VotingForNewMap == True;
  • Is Button Held(Event Player, Interact) == True;
  • Is Button Held(Event Player, Button(Interact)) == True;
  • }
  • actions
  • {
  • Event Player.VotedForNewMap = !Event Player.VotedForNewMap;
  • Big Message(Event Player, Custom String("Vote Toggled"));
  • }
  • }
  • disabled rule("ON: Voting Finished")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Match Time <= Global.MapVoteTimeStart - Global.MapVoteDuration;
  • }
  • actions
  • {
  • Global.VotingForNewMap = False;
  • Skip If(Count Of(Filtered Array(All Players(All Teams), Current Array Element.VotedForNewMap == True)) >= Count Of(All Players(
  • All Teams)) * 0.500, 2);
  • Big Message(All Players(All Teams), Custom String("Vote Failed"));
  • Abort;
  • Big Message(All Players(All Teams), Custom String("Vote Successful - 60 seconds remain"));
  • Set Match Time(60);
  • }
  • }
  • rule("ENABLE FOR FAST ROUNDS")
  • {
  • event
  • {
  • Ongoing - Global;
  • }
  • conditions
  • {
  • Is Game In Progress == True;
  • }
  • actions
  • {
  • Set Match Time(420);
  • }
  • }
Join the Workshop.codes Discord