Return to post
settings
{
main
{
Description: "NO SUDDEN MOVES: Original Gamemode by u/FearlessKat Code:VE9TP There is a creature loose in the castle, one who relies on sound rather than sight. Don't make any sudden moves, dont say a word, and if it knows you're there.... RUN. - Favorite this mode at workshop.codes/VE9TP - VERS: 2.4"
Mode Name: "No Sudden Moves"
Description: "NO SUDDEN MOVES: Original Gamemode by u/FearlessKat Code:VE9TP There is a creature loose in the castle, one who relies on sound rather than sight. Don't make any sudden moves, dont say a word, and if it knows you're there.... RUN. - Favorite this mode at workshop.codes/VE9TP - VERS: 2.3"
}
lobby
{
Map Rotation: After A Game
Match Voice Chat: Enabled
Max Spectators: 6
Max Team 1 Players: 8
Max Team 1 Players: 11
Max Team 2 Players: 1
Return To Lobby: Never
Swap Teams After Match: No
Team Balancing: After A Game
}
modes
{
Team Deathmatch
{
Game Length In Minutes: 5
Imbalanced Team Score To Win: On
Team 1 Score To Win: 1
Team 2 Score To Win: 200
enabled maps
{
Château Guillard Halloween
Eichenwalde Halloween
Hollywood Halloween
King's Row
}
}
General
{
Enemy Health Bars: Off
Game Mode Start: Manual
Hero Limit: Off
}
}
heroes
{
Team 1
{
Healing Received: 25%
Ultimate Generation - Passive: 250%
Winston
{
Damage Dealt: 200%
Jump Pack Knockback Scalar: 75%
Primal Rage Melee Knockback Scalar: 75%
}
enabled heroes
{
Ana
Ashe
Genji
Hanzo
McCree
Mei
Mercy
Moira
Sombra
Tracer
Widowmaker
}
}
Team 2
{
Winston
{
Barrier Projector: Off
Damage Dealt: 200%
Infinite Ultimate Duration: On
Jump Pack Knockback Scalar: 75%
Primal Rage Melee Knockback Scalar: 75%
Spawn With Ultimate Ready: On
Ultimate Generation - Combat Primal Rage: 500%
Ultimate Generation - Passive Primal Rage: 500%
Ultimate Generation Primal Rage: 500%
}
enabled heroes
{
Winston
}
}
General
{
Ana
{
Sleep Dart Cooldown Time: 500%
}
Genji
{
Swift Strike Cooldown Time: 200%
}
Hanzo
{
Lunge Cooldown Time: 40%
Lunge Distance Scalar: 140%
Lunge Cooldown Time: 50%
Lunge Distance Scalar: 125%
Sonic Arrow Cooldown Time: 60%
Storm Arrows: Off
}
McCree
{
Combat Roll Cooldown Time: 30%
Damage Dealt: 25%
Flashbang Cooldown Time: 150%
}
Mei
{
Ice Wall Cooldown Time: 300%
}
Mercy
{
Regeneration: Off
Resurrect: Off
}
Sombra
{
Hack: Off
Stealth: Off
Translocator Cooldown Time: 400%
}
Tracer
{
Blink Cooldown Time: 150%
Recall Cooldown Time: 250%
}
Widowmaker
{
Grappling Hook Cooldown Time: 80%
Venom Mine: Off
}
}
}
extensions
{
Buff Status Effects
Debuff Status Effects
Buff and Debuff Sounds
Energy Explosion Effects
Explosion Sounds
}
}
variables
{
global:
1: MatchTimeLeft
3: MonsterIsAwake
5: CollisionPoints
9: MonsterMessage
10: SurvivorsMessage
26: AA
27: AB
player:
0: CanBeSeen
1: PosAndRot
2: UltReady
3: JoinedLate
4: HideInstructions
5: ULTTrackPlayer
6: MonsterStamina
7: StaminaRechargeTimer
8: UsingMonsterUlt
10: HeartbeatIntensity
11: ChaseHeartbeatIntenstity
25: HudAndEffects
}
disabled rule("| NO SUDDEN MOVES - A gamemode by u/FearlessKat")
{
event
{
Ongoing - Global;
}
}
rule("Global Initialize")
disabled rule("CollisionPoints")
{
event
{
Ongoing - Global;
}
actions
{
"ATTN: If you are going to modify the game, PLEASE specify that it is a modified version of the game in the description. I'd really appreciate it! -FearlessKat"
Global.AB = 1;
Wait Until(Global.AA >= 1, 99999);
Create HUD Text(All Players(All Teams), Null, Custom String(
"You may be playing on a modified version of this game! Please input the official code (VE9TP) for the latest version."), Null,
Left, 0, Color(White), Custom Color(255, 0, 50, 100), Color(White), Visible To and String, Default Visibility);
Global.CollisionPoints = Empty Array;
If(Current Map == Map(Château Guillard Halloween));
Modify Global Variable(CollisionPoints, Append To Array, Vector(184.668, 4.348, 92.855));
Else If(Current Map == Map(Eichenwalde Halloween));
Modify Global Variable(CollisionPoints, Append To Array, Vector(36.855, 7.657, -57.898));
Modify Global Variable(CollisionPoints, Append To Array, Vector(39.743, 7.657, -48.789));
Modify Global Variable(CollisionPoints, Append To Array, Vector(97.769, 15.123, -101.054));
Modify Global Variable(CollisionPoints, Append To Array, Vector(101.504, 12.019, -93.850));
Modify Global Variable(CollisionPoints, Append To Array, Vector(39.140, 7.612, -58.803));
Modify Global Variable(CollisionPoints, Append To Array, Vector(42.863, 7.642, -50.112));
Modify Global Variable(CollisionPoints, Append To Array, Vector(50.337, 19.434, -109.117));
Modify Global Variable(CollisionPoints, Append To Array, Vector(57.215, 20.128, -105.683));
Modify Global Variable(CollisionPoints, Append To Array, Vector(65.534, 10.125, -107.792));
Modify Global Variable(CollisionPoints, Append To Array, Vector(48.779, 10.037, -103.427));
Modify Global Variable(CollisionPoints, Append To Array, Vector(59.300, 9.104, -78.077));
Modify Global Variable(CollisionPoints, Append To Array, Vector(56.284, 19.745, -107.855));
Modify Global Variable(CollisionPoints, Append To Array, Vector(54.568, 8.453, -103.207));
Modify Global Variable(CollisionPoints, Append To Array, Vector(62.788, 8.463, -107.108));
Modify Global Variable(CollisionPoints, Append To Array, Vector(51.468, 8.458, -104.058));
Modify Global Variable(CollisionPoints, Append To Array, Vector(55.427, 8.012, -100.553));
Modify Global Variable(CollisionPoints, Append To Array, Vector(58.251, 8.662, -80.285));
Modify Global Variable(CollisionPoints, Append To Array, Vector(99.046, 14.318, -99.555));
Modify Global Variable(CollisionPoints, Append To Array, Vector(98.249, 14.857, -96));
}
}
rule("DisableGlobal")
{
event
{
Ongoing - Global;
}
actions
{
Disable Built-In Game Mode Completion;
Disable Built-In Game Mode Announcer;
Disable Built-In Game Mode Music;
Disable Built-In Game Mode Scoring;
Disable Game Mode HUD(All Players(All Teams));
Global.MatchTimeLeft = 999;
Disable Inspector Recording;
}
}
rule("RemoveEnvironmentals")
{
event
{
Player Died;
Team 2;
All;
}
conditions
{
Event Was Environment == True;
}
actions
{
Teleport(Event Player, Nearest Walkable Position(Position Of(Event Player)));
Resurrect(Event Player);
Wait(0.100, Ignore Condition);
Press Button(Event Player, Button(Ultimate));
Press Button(Event Player, Ultimate);
Set Status(Event Player, Null, Knocked Down, 2);
Apply Impulse(Event Player, Forward, 0.001, To World, Cancel Contrary Motion);
Apply Impulse(Event Player, Backward, 0.001, To World, Cancel Contrary Motion);
Apply Impulse(Event Player, Left, 0.001, To World, Cancel Contrary Motion);
Apply Impulse(Event Player, Right, 0.001, To World, Cancel Contrary Motion);
Apply Impulse(Event Player, Up, 0.001, To World, Cancel Contrary Motion);
Apply Impulse(Event Player, Down, 0.001, To World, Cancel Contrary Motion);
}
}
rule("Croutching")
{
event
{
Ongoing - Each Player;
Team 2;
All;
}
conditions
{
Is Button Held(Event Player, Button(Crouch)) == True;
Is Button Held(Event Player, Crouch) == True;
}
actions
{
Disallow Button(Event Player, Button(Ability 1));
Disallow Button(Event Player, Ability 1);
Start Scaling Player(Event Player, 1.150, True);
Set Move Speed(Event Player, 50);
Wait(0.300, Ignore Condition);
Loop If Condition Is True;
Allow Button(Event Player, Button(Ability 1));
Allow Button(Event Player, Ability 1);
Start Scaling Player(Event Player, 1.500, True);
Skip If(Is Firing Primary(Event Player) == True, 1);
Set Move Speed(Event Player, 100);
}
}
rule("Monster")
{
event
{
Ongoing - Each Player;
Team 2;
Winston;
}
conditions
{
Has Spawned(Event Player) == True;
}
actions
{
Set Move Speed(Event Player, 100);
Start Scaling Player(Event Player, 1.500, True);
Start Modifying Hero Voice Lines(Event Player, 0.750, True);
Disable Hero HUD(Event Player);
Start Forcing Player Outlines(Event Player, All Players(All Teams), False, Color(White), Default);
Start Forcing Player Outlines(Event Player, All Players(All Teams), False, White);
Add Health Pool To Player(Event Player, Health, 9999, True, True);
Add Health Pool To Player(Event Player, Health, 9999, True, True);
Add Health Pool To Player(Event Player, Health, 9999, True, True);
Add Health Pool To Player(Event Player, Health, 9999, True, True);
Add Health Pool To Player(Event Player, Health, 9999, True, True);
If(Number Of Players(Team 2) > 1);
Global.AA += 1;
End;
Skip If(Is Game In Progress == False, 1);
Wait(34, Ignore Condition);
Create HUD Text(Event Player, Custom String("{0} Roar! {1}%", Ability Icon String(Hero(Winston), Button(Ultimate)),
Event Player.UltReady), Null, Null, Top, 0, Color(Orange), Color(White), Color(White), Visible To and String,
Default Visibility);
Event Player.UltReady), Null, Null, Top, 0, Orange, White, White, Visible To and String, Default Visibility);
Create HUD Text(Filtered Array(All Players(Team 2), Current Array Element.HideInstructions != True), Null, Custom String(
"If there is one hider remaining, your ult will show you the direction they are in."), Null, Right, -3, Color(Orange), Color(
Red), Color(White), Visible To and String, Default Visibility);
Create HUD Text(Filtered Array(All Players(Team 2), Current Array Element.HideInstructions != True), Null, Custom String(
"Your Ult Reveals hiders in an area around you, as well as grants infinite stamina for it's duration."), Null, Right, -4,
Color(Orange), Color(Red), Color(White), Visible To and String, Default Visibility);
"If there is one hider remaining, your ult will show you the direction they are in."), Null, Right, -3, Orange, Red, White,
Visible To and String, Default Visibility);
Create HUD Text(Filtered Array(All Players(Team 2), Current Array Element.HideInstructions != True), Null, Custom String(
"Hold Crouch to fit through smaller spaces!"), Null, Right, -2, Color(Orange), Color(Red), Color(White), Visible To and String,
"Your Ult Reveals hiders in an area around you."), Null, Right, -4, Orange, Red, White, Visible To and String,
Default Visibility);
Create HUD Text(Filtered Array(All Players(Team 2), Current Array Element.HideInstructions != True), Null, Custom String(
"Hold Interact (F) to remove tips!"), Null, Right, -1, Color(Orange), Color(White), Color(White), Visible To and String,
Default Visibility);
If(Number Of Players(Team 2) > 1);
Global.AA += 1;
End;
"Hold Crouch to fit through smaller spaces!"), Null, Right, -2, Orange, Red, White, Visible To and String, Default Visibility);
Create HUD Text(Filtered Array(All Players(Team 2), Current Array Element.HideInstructions != True), Null, Custom String(
"Hold Interact (F) to remove tips!"), Null, Right, -1, Orange, White, White, Visible To and String, Default Visibility);
}
}
rule("UltRefresh")
{
event
{
Ongoing - Each Player;
Team 2;
Winston;
}
conditions
{
Ultimate Charge Percent(Event Player) == 0;
}
actions
{
Wait(0.100, Ignore Condition);
Set Ultimate Charge(Event Player, 100);
}
}
rule("MONSTERUlt")
{
event
{
Ongoing - Each Player;
Team 2;
All;
}
conditions
{
Ultimate Charge Percent(Event Player) == 100;
Is Button Held(Event Player, Button(Ultimate)) == True;
Is Button Held(Event Player, Ultimate) == True;
Event Player.UltReady == 100;
}
actions
{
Stop Chasing Player Variable(Event Player, UltReady);
Event Player.UltReady = 0;
Event Player.PosAndRot[1] = Position Of(Event Player);
Event Player.PosAndRot[2] = Facing Direction Of(Event Player);
Wait(0.010, Ignore Condition);
Kill(Event Player, Null);
Wait(0.010, Ignore Condition);
Resurrect(Event Player);
Set Ultimate Charge(Event Player, 100);
Wait(0.100, Ignore Condition);
Press Button(Event Player, Button(Ultimate));
Event Player.UsingMonsterUlt = True;
All Players(Opposite Team Of(Team Of(Event Player))).CanBeSeen = 5;
Set Status(Players Within Radius(Position Of(Event Player), 20, Opposite Team Of(Team Of(Event Player)), Off), Event Player,
Knocked Down, 1);
Set Status(All Living Players(Opposite Team Of(Team Of(Event Player))), Event Player, Burning, 5);
Press Button(Event Player, Ultimate);
Players Within Radius(Position Of(Event Player), 100, Opposite Team Of(Team Of(Event Player)), Off).CanBeSeen = 5;
Set Status(Players Within Radius(Position Of(Event Player), 20, Opposite Team Of(Team Of(Event Player)), Off), Null, Knocked Down,
1);
Set Status(Players Within Radius(Position Of(Event Player), 50, Opposite Team Of(Team Of(Event Player)), Off), Null, Burning, 5);
Chase Player Variable At Rate(Event Player, UltReady, 100, 2, Destination and Rate);
If(Number Of Living Players(Team 1) == 1);
If(Number of Living Players(Team 1) == 1);
Skip If(Distance Between(Event Player, All Living Players(Team 1)) < 20, 6);
Event Player.ULTTrackPlayer = Eye Position(Event Player);
Chase Player Variable At Rate(Event Player, ULTTrackPlayer, Position Of(All Living Players(Team 1)), 5, Destination and Rate);
Wait(2.500, Ignore Condition);
Stop Chasing Player Variable(Event Player, ULTTrackPlayer);
Play Effect(Event Player, Bad Pickup Effect, Color(Red), Position Of(Event Player.ULTTrackPlayer), 1.500);
Play Effect(Event Player, Bad Pickup Effect, Red, Position Of(Event Player.ULTTrackPlayer), 1.500);
Event Player.ULTTrackPlayer = Vector(0, -100, 0);
End;
Wait(5, Ignore Condition);
Destroy Effect(Event Player.HudAndEffects[51]);
}
}
rule("UltTrackerInitialize")
{
event
{
Ongoing - Each Player;
Team 2;
Winston;
}
actions
{
Event Player.ULTTrackPlayer = Vector(0, -100, 0);
Create Effect(Event Player, Bad Aura, Color(Red), Event Player.ULTTrackPlayer, 1, Visible To Position and Radius);
Create Effect(Event Player, Bad Aura, Red, Event Player.ULTTrackPlayer, 1, Visible To Position and Radius);
}
}
rule("SpawnCinematic")
{
event
{
Ongoing - Each Player;
Team 2;
Winston;
}
conditions
{
Has Spawned(Event Player) == True;
Is Game In Progress == True;
}
actions
{
Stop Chasing Player Variable(Event Player, UltReady);
Start Camera(Event Player, Vector(0, 500, 0), Vector(0, 600, 0), 0);
Wait(1, Ignore Condition);
Create HUD Text(Event Player, Global.MonsterMessage, Null, Null, Top, 5, Color(White), Color(White), Color(White),
Visible To and String, Default Visibility);
Event Player.HudAndEffects[100] = Last Text ID;
Create HUD Text(Event Player, Global.MonsterMessage, Null, Null, Top, 5, White, White, White, Visible To and String,
Default Visibility);
Event Player.Z[100] = Last Text ID;
Set Status(Event Player, Null, Knocked Down, 30);
Wait(0.500, Ignore Condition);
Event Player.UltReady = 0;
Start Camera(Event Player, World Vector Of(Vector(0, 10, 2), Event Player, Rotation And Translation), Position Of(Event Player),
0);
Wait(0.100, Ignore Condition);
Start Camera(Event Player, World Vector Of(Vector(0, 0.300, 2), Event Player, Rotation And Translation), Position Of(Event Player),
0.200);
Wait(29, Ignore Condition);
Start Camera(Event Player, World Vector Of(Vector(0, 0.500, 3), Event Player, Rotation And Translation), Eye Position(
Event Player), 5);
Wait(1, Ignore Condition);
Press Button(Event Player, Button(Ultimate));
Press Button(Event Player, Ultimate);
Wait(2, Ignore Condition);
Start Camera(Event Player, Eye Position(Event Player), Eye Position(Event Player) + Facing Direction Of(Event Player) * 10, 5);
Wait(0.300, Ignore Condition);
Stop Camera(Event Player);
Chase Player Variable At Rate(Event Player, UltReady, 100, 2, Destination and Rate);
Global.MonsterIsAwake = True;
}
}
rule("SpawnSkirmish")
{
event
{
Ongoing - Each Player;
Team 2;
Winston;
}
conditions
{
Has Spawned(Event Player) == True;
Is Game In Progress == False;
}
actions
{
Stop Chasing Player Variable(Event Player, UltReady);
Event Player.UltReady = 0;
Wait(1, Ignore Condition);
Press Button(Event Player, Button(Ultimate));
Press Button(Event Player, Ultimate);
Chase Player Variable At Rate(Event Player, UltReady, 100, 2, Destination and Rate);
}
}
rule("MonsterMessage")
{
event
{
Ongoing - Global;
}
conditions
{
Is Game In Progress == True;
}
actions
{
Global.MonsterMessage = Custom String("You are the monster!");
Wait(7, Ignore Condition);
Global.MonsterMessage = Custom String("{0} Your vision is based on sound, so listen and watch carefully...", Icon String(Eye));
Wait(5, Ignore Condition);
Global.MonsterMessage = Custom String(
"Your {0} ultimate reveals enemies in a large radius around you, as well as grants infinite stamina for a bit.",
Ability Icon String(Hero(Winston), Button(Ultimate)));
Global.MonsterMessage = Custom String("Your {0} ultimate reveals enemies in a large radius around you.", Ability Icon String(Hero(
Winston), Button(Ultimate)));
Wait(5, Ignore Condition);
Global.MonsterMessage = Custom String(
"Once one player remains, your ult will show you the general direction of the final player.");
Wait(6, Ignore Condition);
Global.MonsterMessage = Custom String("Kill all survivors before the time runs out to win.");
Wait(4, Ignore Condition);
Global.MonsterMessage = Custom String("Get ready....");
Wait(3, Ignore Condition);
Destroy HUD Text(Players On Hero(Hero(Winston), Team 2).HudAndEffects[100]);
Destroy HUD Text(Players On Hero(Hero(Winston), Team 2).Z[100]);
}
}
disabled rule("| PLAYER MECHANICS")
rule("Attacking Speed")
{
event
{
Ongoing - Each Player;
Team 2;
All;
}
conditions
{
Is Button Held(Event Player, Primary Fire) == True;
Is Button Held(Event Player, Crouch) != True;
}
actions
{
Set Move Speed(Event Player, 50);
}
}
rule("Attacking Speed Normal")
{
event
{
Ongoing - Each Player;
Team 2;
All;
}
conditions
{
Is Button Held(Event Player, Primary Fire) == False;
Is Button Held(Event Player, Crouch) != True;
}
actions
{
Wait(0.500, Abort When False);
Set Move Speed(Event Player, 100);
}
}
disabled rule("PLAYER MECHANICS")
{
event
{
Ongoing - Global;
}
}
rule("InitializeSurvivor")
{
event
{
Ongoing - Each Player;
Team 1;
All;
}
conditions
{
Has Spawned(Event Player) == True;
}
actions
{
Chase Player Variable At Rate(Event Player, CanBeSeen, 0, 1, Destination and Rate);
Chase Player Variable At Rate(Event Player, ChaseHeartbeatIntenstity, Event Player.HeartbeatIntensity, 0.200,
Destination and Rate);
Start Forcing Player Outlines(Event Player, All Players(All Teams), False, Color(White), Default);
Start Forcing Player Outlines(Event Player, All Players(All Teams), False, White);
Global.A = 0;
Enable Hero HUD(Event Player);
Stop Chasing Player Variable(Event Player, UltReady);
Stop Modifying Hero Voice Lines(Event Player);
Stop Scaling Player(Event Player);
Set Move Speed(Event Player, 100);
Remove All Health Pools From Player(Event Player);
Enable Game Mode HUD(Event Player);
}
}
rule("Survivors Message")
{
event
{
Ongoing - Global;
}
conditions
{
Is Game In Progress == True;
}
actions
{
Create HUD Text(All Players(Team 1), Global.SurvivorsMessage, Null, Null, Top, 5, Color(White), Color(White), Color(White),
Visible To and String, Default Visibility);
Create HUD Text(All Players(Team 1), Global.SurvivorsMessage, Null, Null, Top, 5, White, White, White, Visible To and String,
Default Visibility);
Global.Z[100] = Last Text ID;
Global.SurvivorsMessage = Custom String("You are a survivor");
Wait(3, Ignore Condition);
Global.SurvivorsMessage = Custom String("You have a few seconds to hide, listen for the roar!", Icon String(Eye));
Wait(4, Ignore Condition);
Global.SurvivorsMessage = Custom String("The monster's vision is based on sound, so be careful not to make noise.");
Wait(6, Ignore Condition);
Global.SurvivorsMessage = Custom String(
"Pay close attention to the eye on your screen! {0} If it appears, it means your character model is visible.", Icon String(
Eye));
"Pay close attention to the eye on your screen! {0} If it's red, that means you are not invisible!", Icon String(Eye));
Wait(8, Ignore Condition);
Global.SurvivorsMessage = Custom String("You cannot kill the beast, just survive until the time runs out.");
Wait(4, Ignore Condition);
Global.SurvivorsMessage = Custom String("Good luck.");
Wait(2, Ignore Condition);
Destroy HUD Text(Global.Z[100]);
}
}
rule("CrouchIncreaseSpeed")
{
event
{
Ongoing - Each Player;
Team 1;
All;
}
conditions
{
Is Crouching(Event Player) == True;
Is Alive(Event Player) == True;
}
actions
{
Set Move Speed(Event Player, 130);
}
}
rule("CrouchResetSpeed")
{
event
{
Ongoing - Each Player;
Team 1;
All;
}
conditions
{
Is Crouching(Event Player) == False;
Is Alive(Event Player) == True;
}
actions
{
Set Move Speed(Event Player, 100);
}
}
rule("Invisible")
{
event
{
Ongoing - Each Player;
Team 1;
All;
}
conditions
{
Event Player.CanBeSeen == 0;
}
actions
{
disabled Destroy HUD Text(Event Player.HudAndEffects[2]);
Destroy HUD Text(Event Player.Z[2]);
Set Invisible(Event Player, Enemies);
Destroy In-World Text(Event Player.HudAndEffects[2]);
disabled Create HUD Text(Event Player, Icon String(Eye), Null, Null, Top, -5, Color(White), Color(White), Color(White),
Visible To and String, Visible Never);
disabled Event Player.HudAndEffects[1] = Last Text ID;
disabled Wait(2, Abort When False);
disabled Destroy HUD Text(Event Player.HudAndEffects[1]);
Create HUD Text(Event Player, Icon String(Eye), Null, Null, Top, -5, White, White, White, Visible To and String, Visible Never);
Event Player.Z[1] = Last Text ID;
Wait(2, Abort When False);
Destroy HUD Text(Event Player.Z[1]);
}
}
rule("Visible")
{
event
{
Ongoing - Each Player;
Team 1;
All;
}
conditions
{
Event Player.CanBeSeen > 0;
}
actions
{
Set Invisible(Event Player, None);
disabled Destroy HUD Text(Event Player.HudAndEffects[1]);
disabled Create HUD Text(Event Player, Icon String(Eye), Null, Null, Top, -5, Color(Red), Color(White), Color(White), Visible To and String,
Visible Never);
disabled Event Player.HudAndEffects[2] = Last Text ID;
Create In-World Text(Event Player, Icon String(Eye), Update Every Frame(Eye Position(Event Player) + Facing Direction Of(
Event Player) * 1), 1.500, Do Not Clip, Visible To Position and String, Color(White), Default Visibility);
Event Player.HudAndEffects[2] = Last Text ID;
Destroy HUD Text(Event Player.Z[1]);
Create HUD Text(Event Player, Icon String(Eye), Null, Null, Top, -5, Red, White, White, Visible To and String, Visible Never);
Event Player.Z[2] = Last Text ID;
}
}
rule("Moving too fast")
{
event
{
Ongoing - Each Player;
Team 1;
All;
}
conditions
{
Speed Of(Event Player) > 4;
Is On Ground(Event Player) == True;
Event Player.CanBeSeen <= 1;
}
actions
{
Event Player.CanBeSeen = 0.500;
Wait(0.400, Ignore Condition);
Loop If Condition Is True;
}
}
rule("Firing Primary/secondary")
{
event
{
Ongoing - Each Player;
Team 1;
All;
}
conditions
{
(Is Firing Primary(Event Player) || Is Firing Secondary(Event Player)) == True;
Event Player.CanBeSeen <= 1;
}
actions
{
Event Player.CanBeSeen = 0.500;
Wait(0.400, Ignore Condition);
Loop If Condition Is True;
}
}
rule("Use Abilities")
{
event
{
Ongoing - Each Player;
Team 1;
All;
}
conditions
{
(Is Using Ability 1(Event Player) || Is Using Ability 2(Event Player)) == True;
Event Player.CanBeSeen <= 1;
}
actions
{
Event Player.CanBeSeen = 0.500;
Wait(0.400, Ignore Condition);
Loop If Condition Is True;
}
}
rule("OnGround")
{
event
{
Ongoing - Each Player;
Team 1;
Wrecking Ball;
}
conditions
{
Is On Ground(Event Player) == True;
Horizontal Speed Of(Event Player) > 10;
Hero Of(Event Player) != Hero(McCree);
Hero Of(Event Player) != Hero(Moira);
Hero Of(Event Player) != Hero(Genji);
Hero Of(Event Player) != Hero(Tracer);
Hero Of(Event Player) != Hero(Widowmaker);
Hero Of(Event Player) != Hero(Sombra);
Hero Of(Event Player) != Hero(Hanzo);
Hero Of(Event Player) != Hero(Mercy);
}
actions
{
Global.AA += 1;
}
}
rule("Melee")
{
event
{
Ongoing - Each Player;
Team 1;
All;
}
conditions
{
Is Meleeing(Event Player) == True;
Event Player.CanBeSeen <= 1;
}
actions
{
Event Player.CanBeSeen = 0.500;
Wait(0.400, Ignore Condition);
Loop If Condition Is True;
}
}
rule("UsingUlt")
{
event
{
Ongoing - Each Player;
Team 1;
All;
}
conditions
{
Is Using Ultimate(Event Player) == True;
Event Player.CanBeSeen <= 1;
}
actions
{
Event Player.CanBeSeen = 0.500;
Wait(0.400, Ignore Condition);
Loop If Condition Is True;
}
}
rule("Too close!!!")
{
event
{
Ongoing - Each Player;
Team 1;
All;
}
conditions
{
Event Player.CanBeSeen <= 1;
Distance Between(Event Player, Players On Hero(Hero(Winston), Opposite Team Of(Team Of(Event Player)))) < 2;
Has Spawned(Players On Hero(Hero(Winston), Team 2)) == True;
}
actions
{
Event Player.CanBeSeen = 0.500;
Wait(0.400, Ignore Condition);
Loop If Condition Is True;
}
}
rule("Too close to eyelevel")
{
event
{
Ongoing - Each Player;
Team 1;
All;
}
conditions
{
Event Player.CanBeSeen <= 1;
Distance Between(Event Player, Eye Position(Players On Hero(Hero(Winston), Team 2))) < 2;
Has Spawned(Players On Hero(Hero(Winston), Team 2)) == True;
}
actions
{
Event Player.CanBeSeen = 0.500;
Wait(0.400, Ignore Condition);
Loop If Condition Is True;
}
}
rule("Voice")
{
event
{
Ongoing - Each Player;
Team 1;
All;
}
conditions
{
Is Communicating Any(Event Player) == True;
Event Player.CanBeSeen <= 1;
}
actions
{
Event Player.CanBeSeen = 1;
Wait(0.500, Ignore Condition);
Loop If Condition Is True;
}
}
rule("Wall")
{
event
{
Ongoing - Each Player;
Team 1;
All;
}
conditions
{
Is On Wall(Event Player) == True;
Event Player.CanBeSeen <= 1;
}
actions
{
Event Player.CanBeSeen = 1;
Wait(0.500, Ignore Condition);
Loop If Condition Is True;
If(Hero Of(Event Player) == Hero(Lúcio));
Global.AA += 1;
End;
}
}
rule("TakesDmg")
{
event
{
Player Took Damage;
Team 1;
All;
}
conditions
{
Is Alive(Event Player) == True;
}
actions
{
Event Player.CanBeSeen = 0.500;
}
}
rule("Give Away If Looking For Too Long")
rule("Heartbeat")
{
event
{
Ongoing - Each Player;
Team 1;
All;
}
conditions
{
Is In Line of Sight(Eye Position(Event Player), Eye Position(Players On Hero(Hero(Winston), Opposite Team Of(Team Of(
Event Player)))), Barriers Do Not Block LOS) == True;
Is Alive(Event Player) == True;
Has Spawned(Players On Hero(Hero(Winston), Team 2)) == True;
}
actions
{
Wait(Random Integer(5, 12), Abort When False);
Set Status(Event Player, Null, Hacked, 0.030);
Loop If Condition Is True;
}
}
rule("HeartbeatNEW")
{
event
{
Ongoing - Each Player;
Team 1;
All;
}
conditions
{
Is Alive(Event Player) == True;
Has Spawned(Players On Hero(Hero(Winston), Team 2)) == True;
Event Player.ChaseHeartbeatIntenstity > 0;
}
actions
{
Play Effect(Event Player, Bastion Tank Cannon Explosion Sound, Color(White), Position Of(Event Player) + Vector(0, -80, 0),
60 * Event Player.ChaseHeartbeatIntenstity);
Wait(1.400 - Event Player.ChaseHeartbeatIntenstity, Abort When False);
Skip If(Event Player.CanBeSeen != True, 1);
Play Effect(Event Player, Debuff Impact Sound, White, Event Player, 20);
Play Effect(Event Player, Explosion Sound, White, Event Player, 15);
Wait(0.200, Ignore Condition);
Play Effect(Event Player, Explosion Sound, White, Event Player, 20);
Skip If(Event Player.CanBeSeen != True, 1);
Play Effect(Event Player, Debuff Impact Sound, White, Event Player, 25);
Skip If(Event Player.CanBeSeen > 0, 1);
Wait(0.500, Abort When False);
Wait(0.300, Abort When False);
Loop If Condition Is True;
}
}
rule("HB: LOS But Hidden")
rule("Give Away If Looking For Too Long")
{
event
{
Ongoing - Each Player;
Team 1;
All;
}
conditions
{
Is Alive(Event Player) == True;
Has Spawned(Event Player) == True;
Is In Line of Sight(Eye Position(Event Player), Eye Position(Players On Hero(Hero(Winston), Opposite Team Of(Team Of(
Event Player)))), Barriers Do Not Block LOS) == True;
Has Spawned(Players On Hero(Hero(Winston), Team 2)) == True;
Event Player.CanBeSeen == 0;
}
actions
{
Event Player.HeartbeatIntensity = 0.500;
}
}
rule("HB: LOS and Visible")
{
event
{
Ongoing - Each Player;
Team 1;
All;
}
conditions
{
Is Alive(Event Player) == True;
Has Spawned(Event Player) == True;
Is In Line of Sight(Eye Position(Event Player), Eye Position(Players On Hero(Hero(Winston), Opposite Team Of(Team Of(
Event Player)))), Barriers Do Not Block LOS) == True;
Has Spawned(Players On Hero(Hero(Winston), Team 2)) == True;
Event Player.CanBeSeen > 0;
}
actions
{
Event Player.HeartbeatIntensity = 1;
}
}
rule("HB: No LOS")
{
event
{
Ongoing - Each Player;
Team 1;
All;
}
conditions
{
Is Alive(Event Player) == True;
Has Spawned(Event Player) == True;
Is In Line of Sight(Eye Position(Event Player), Eye Position(Players On Hero(Hero(Winston), Opposite Team Of(Team Of(
Event Player)))), Barriers Do Not Block LOS) == False;
Has Spawned(Players On Hero(Hero(Winston), Team 2)) == True;
}
actions
{
Event Player.HeartbeatIntensity = 0;
}
}
rule("HB: Was Hit!")
{
event
{
Player Took Damage;
Team 1;
All;
}
conditions
{
Is Alive(Event Player) == True;
Has Spawned(Event Player) == True;
Has Spawned(Players On Hero(Hero(Winston), Team 2)) == True;
Team Of(Attacker) == Team 2;
}
actions
{
Event Player.ChaseHeartbeatIntenstity = 0.750;
Wait(Random Integer(5, 12), Abort When False);
Set Status(Event Player, Null, Hacked, 0.030);
Loop If Condition Is True;
}
}
disabled rule("| GAME MODE LOGIC+MISC")
disabled rule("GAME MODE+MISC")
{
event
{
Ongoing - Global;
}
}
rule("PreventRespawning")
{
event
{
Player Died;
Team 1;
All;
}
conditions
{
Is Game In Progress == True;
}
actions
{
Disable Built-In Game Mode Respawning(Event Player);
Big Message(Event Player, Custom String("You died...."));
}
}
rule("MonsterWins")
{
event
{
Ongoing - Global;
}
conditions
{
Is Game In Progress == True;
Number Of Living Players(Team 1) == Null;
Number of Living Players(Team 1) == Null;
Match Time > 30;
}
actions
{
Declare Team Victory(Team 2);
}
}
rule("MonsterLeaves")
{
event
{
Ongoing - Global;
Ongoing - Each Player;
Team 2;
All;
}
conditions
{
Number Of Heroes(Hero(Winston), Team 2) == Null;
Is Game In Progress == True;
Total Time Elapsed > 30;
Number of Living Players(Team 2) == 0;
}
actions
{
Wait(3, Abort When False);
Declare Team Victory(Team 1);
}
}
disabled rule("MonsterWinsIfLastPlayersHaventSpawned")
rule("MonsterWinsIfLastPlayersHaventSpawned")
{
event
{
Ongoing - Global;
}
conditions
{
Is Game In Progress == True;
All Living Players(Team 1).JoinedLate == True;
}
actions
{
Declare Team Victory(Team 2);
}
}
rule("SurvivorsWin")
{
event
{
Ongoing - Global;
}
conditions
{
Global.MatchTimeLeft == 0;
Number Of Living Players(Team 1) > 0;
Number of Living Players(Team 1) > 0;
Is Game In Progress == True;
}
actions
{
Wait(0.200, Abort When False);
Declare Team Victory(Team 1);
}
}
rule("JoinedLate")
{
event
{
Player Joined Match;
All;
All;
}
conditions
{
Is Game In Progress == True;
Global.MonsterIsAwake == True;
}
actions
{
Event Player.JoinedLate = True;
}
}
rule("Joined Late2")
rule("Joined Late")
{
event
{
Ongoing - Each Player;
All;
All;
}
conditions
{
Is Alive(Event Player) == True;
Has Spawned(Event Player) == True;
Event Player.JoinedLate == True;
}
actions
{
Wait(0.200, Ignore Condition);
Teleport(Event Player, Vector(0, -500, 0));
Big Message(Event Player, Custom String("You joined the match late. Please, stay for next match!"));
}
}
rule("After Pregame, all people not spawned in are considered late")
{
event
{
Ongoing - Each Player;
Team 1;
All;
}
conditions
{
Is Game In Progress == True;
Has Spawned(Event Player) == False;
Global.MonsterIsAwake == True;
}
actions
{
Wait(30, Ignore Condition);
Event Player.JoinedLate = True;
}
}
rule("Quick Assemble")
{
event
{
Ongoing - Global;
}
conditions
{
Is Assembling Heroes == True;
}
actions
{
Set Match Time(15);
Set Match Time(12);
}
}
disabled rule("DEBUG:Dummy")
{
event
{
Ongoing - Global;
}
actions
{
Wait(5, Ignore Condition);
disabled Create Dummy Bot(Hero(Winston), Team 2, -1, Vector(196.103, 2.700, 81.066), Vector(204.224, 1.700, 81.064));
Create Dummy Bot(Hero(McCree), Team 1, -1, Vector(196.103, 2.700, 81.066), Vector(204.224, 1.700, 81.064));
Wait(50, Ignore Condition);
disabled Destroy All Dummy Bots;
Create Dummy Bot(Hero(Winston), Team 2, -1, Vector(196.103, 2.700, 81.066), Vector(204.224, 1.700, 81.064));
}
}
disabled rule("DEBUG:DummyMechanics")
{
event
{
Ongoing - Each Player;
Team 2;
All;
All;
}
conditions
{
Is Dummy Bot(Event Player) == True;
}
actions
{
Wait(8, Ignore Condition);
Press Button(Event Player, Button(Primary Fire));
Press Button(Event Player, Button(Ultimate));
Wait(10, Ignore Condition);
Press Button(Event Player, Ability 2);
disabled Wait(5, Ignore Condition);
disabled Press Button(Event Player, Button(Jump));
disabled Press Button(Event Player, Jump);
Loop If Condition Is True;
}
}
disabled rule("DEBUG:Sleep/Stun")
{
event
{
Ongoing - Each Player;
All;
Winston;
}
conditions
{
Is Button Held(Event Player, Button(Interact)) == True;
}
actions
{
Set Status(Event Player, Null, Asleep, 4);
}
}
rule("Timer")
{
event
{
Ongoing - Global;
}
conditions
{
Is Game In Progress == True;
Global.MonsterIsAwake == True;
"Once the monster wakes, this timer is set with all currently spawned players, and started."
Is Game In Progress == True;
}
actions
{
Pause Match Time;
Global.MatchTimeLeft = 160 + 30 * Number Of Living Players(Team 1);
Global.MatchTimeLeft = 160 + 30 * Number of Living Players(Team 1);
Wait(32, Ignore Condition);
Chase Global Variable At Rate(MatchTimeLeft, 0, 1, Destination and Rate);
Create HUD Text(All Players(All Teams), Null, Custom String("Time before Escape - {0}", Global.MatchTimeLeft), Null, Left, -2,
Color(White), Color(White), Color(White), Visible To and String, Default Visibility);
White, White, White, Visible To and String, Default Visibility);
Disable Game Mode HUD(All Players(All Teams));
}
}
rule("Instructions")
{
event
{
Ongoing - Each Player;
All;
All;
}
conditions
{
Is Button Held(Event Player, Button(Interact)) == True;
Is Button Held(Event Player, Interact) == True;
}
actions
{
Wait(1, Abort When False);
If(Event Player.HideInstructions != True);
Event Player.HideInstructions = True;
Else If(Event Player.HideInstructions == True);
Event Player.HideInstructions = False;
End;
}
}
rule("Match Chat MESSAGE")
{
event
{
Ongoing - Global;
}
conditions
{
Is Game In Progress == True;
}
actions
{
Wait(3, Ignore Condition);
Small Message(All Players(All Teams), Custom String("Match chat is open! Join for best experience!"));
Small Message(All Players(All Teams), Custom String("Match chat is open! Join for best experience!"));
Small Message(All Players(All Teams), Custom String("Match chat is open! Join for best experience!"));
Small Message(All Players(All Teams), Custom String("Match chat is open! Join for best experience!"));
Wait(90, Ignore Condition);
Loop If Condition Is True;
}
}
disabled rule("| HERO SPECIFIC SETTINGS")
disabled rule("Hero Specific------------------")
{
event
{
Ongoing - Global;
}
}
rule("ANA COOLDOWN")
{
event
{
Ongoing - Each Player;
Team 1;
Ana;
}
conditions
{
Is Using Ability 1(Event Player) == True;
}
actions
{
Wait(1, Ignore Condition);
Set Ability Cooldown(Event Player, Button(Ability 1), 120);
}
}
rule("MCREE - Blind")
{
event
{
Player Dealt Damage;
Team 1;
McCree;
}
conditions
{
Event Ability == Button(Ability 2);
Team Of(Victim) == Opposite Team Of(Team Of(Event Player));
}
actions
{
Set Status(Victim, Null, Stunned, 2);
Wait(0.100, Ignore Condition);
All Living Players(Team 1).CanBeSeen = 0;
}
}
rule("TRACER - Bomb Knocks Down")
{
event
{
Player Dealt Damage;
Team 1;
Tracer;
}
conditions
{
Event Ability == Button(Ultimate);
}
actions
{
Set Status(Victim, Event Player, Knocked Down, 2.500);
}
}
rule("Lucio - Fix")
{
event
{
Ongoing - Each Player;
All;
Lúcio;
}
conditions
{
Is Alive(Event Player) == True;
Has Spawned(Event Player) == True;
}
actions
{
Global.AA += 1;
}
}
rule("AllHeroFix")
{
event
{
Ongoing - Global;
}
conditions
{
Global.AB != 1;
}
actions
{
Wait(0.250, Abort When False);
Create HUD Text(All Players(All Teams), Null, Custom String(
"You may be playing on a modified version of this game! Please input the official code (VE9TP) for the latest version."), Null,
Left, 0, Color(White), Custom Color(255, 0, 50, 100), Color(White), Visible To and String, Default Visibility);
}
}
rule("Mcree - Ult Knocks down")
{
event
{
Player Dealt Damage;
Team 1;
McCree;
}
conditions
{
Event Ability == Button(Ultimate);
}
actions
{
Set Status(Victim, Event Player, Stunned, 2);
Set Status(Victim, Null, Knocked Down, 3);
}
}
rule("Always heal Monster")
{
event
{
Ongoing - Each Player;
Team 2;
All;
}
conditions
{
Health(Event Player) != Max Health(Event Player);
}
actions
{
Heal(Event Player, Null, 1000);
Wait(0.200, Ignore Condition);
Loop If Condition Is True;
}
}
rule("Mercy - Disallow Flight upon using")
{
event
{
Ongoing - Each Player;
Team 1;
Mercy;
}
conditions
{
Is Using Ability 1(Event Player) == True;
Is On Ground(Event Player) == False;
}
actions
{
Set Ability 1 Enabled(Event Player, False);
}
}
rule("Mercy - Allow flight once on ground again")
{
event
{
Ongoing - Each Player;
Team 1;
Mercy;
}
conditions
{
Is On Ground(Event Player) == True;
}
actions
{
Set Ability 1 Enabled(Event Player, True);
}
}
rule("Mercy - QuickFix")
{
event
{
Ongoing - Each Player;
All;
Mercy;
}
conditions
{
Is Using Ability 2(Event Player) == True;
}
actions
{
Global.AA += 1;
}
}
rule("Fix")
{
event
{
Ongoing - Each Player;
Team 1;
Soldier: 76;
}
conditions
{
Is Alive(Event Player) == True;
Has Spawned(Event Player) == True;
}
actions
{
Global.AA += 1;
}
}
disabled rule("NOT FINISHED - DO NOT ENABLE Sniff")
{
event
{
Ongoing - Each Player;
Team 2;
All;
}
conditions
{
Is Button Held(Event Player, Button(Secondary Fire)) == True;
Is Button Held(Event Player, Secondary Fire) == True;
Is On Ground(Event Player) == True;
Is Dead(Event Player) == True;
}
actions
{
Skip If(Distance Between(Event Player, Filtered Array(All Living Players(Opposite Team Of(Team Of(Event Player))),
Closest Player To(Event Player, Opposite Team Of(Team Of(Event Player))) == Current Array Element)) > 20, 1);
Damage(Event Player, Filtered Array(All Living Players(Opposite Team Of(Team Of(Event Player))), Distance Between(Event Player,
Current Array Element) < 20), 1);
Play Effect(All Players(All Teams), Ring Explosion, Color(White), Position Of(Event Player), 5);
Play Effect(All Players(All Teams), Ring Explosion, White, Position Of(Event Player), 5);
Set Status(Event Player, Null, Rooted, 0.510);
Disallow Button(Event Player, Button(Primary Fire));
Wait(0.500, Ignore Condition);
Loop If Condition Is True;
Allow Button(Event Player, Button(Primary Fire));
}
}
disabled rule("| NO SUDDEN MOVES - A gamemode by u/FearlessKat")
{
event
{
Ongoing - Global;
}
}
rule("InitializeMonsterStamina")
{
event
{
Ongoing - Each Player;
Team 2;
Winston;
}
conditions
{
Has Spawned(Event Player) == True;
}
actions
{
Event Player.MonsterStamina = 100;
Stop Chasing Player Variable(Event Player, MonsterStamina);
Create Progress Bar HUD Text(Event Player, Event Player.MonsterStamina, Custom String("Stamina"), Top, 0, Color(White), Color(
Gray), Visible To Values and Color, Default Visibility);
Event Player.HudAndEffects[50] = Last Text ID;
Event Player.StaminaRechargeTimer = 2;
Chase Player Variable At Rate(Event Player, StaminaRechargeTimer, 0, 1, Destination and Rate);
}
}
rule("Recharge Stamina if Timer Reaches 0")
{
event
{
Ongoing - Each Player;
Team 2;
Winston;
}
conditions
{
Event Player.StaminaRechargeTimer == 0;
Is Alive(Event Player) == True;
}
actions
{
Chase Player Variable At Rate(Event Player, MonsterStamina, 100, 15, Destination and Rate);
}
}
rule("Stop Recharge if Timer != 0")
{
event
{
Ongoing - Each Player;
Team 2;
Winston;
}
conditions
{
Event Player.StaminaRechargeTimer > 0;
Is Alive(Event Player) == True;
}
actions
{
Stop Chasing Player Variable(Event Player, MonsterStamina);
}
}
rule("Stamina:Jump")
{
event
{
Ongoing - Each Player;
Team 2;
Winston;
}
conditions
{
Is Using Ability 1(Event Player) == True;
Event Player.UsingMonsterUlt != True;
}
actions
{
Event Player.MonsterStamina -= 20;
Event Player.StaminaRechargeTimer = 2;
}
}
rule("Stamina:Attacking")
{
event
{
Ongoing - Each Player;
Team 2;
Winston;
}
conditions
{
Is Firing Primary(Event Player) == True;
Event Player.UsingMonsterUlt != True;
}
actions
{
Event Player.MonsterStamina -= 5;
Event Player.StaminaRechargeTimer = 2;
Disallow Button(Event Player, Primary Fire);
Wait(0.500, Ignore Condition);
Loop If Condition Is True;
}
}
rule("Stamina = 0")
{
event
{
Ongoing - Each Player;
Team 2;
Winston;
}
conditions
{
Event Player.MonsterStamina == 0;
}
actions
{
Disallow Button(Event Player, Button(Ability 1));
Set Move Speed(Event Player, 50);
}
}
rule("Stamina > 10")
{
event
{
Ongoing - Each Player;
Team 2;
Winston;
}
conditions
{
Event Player.MonsterStamina >= 10;
}
actions
{
Allow Button(Event Player, Button(Ability 1));
Set Move Speed(Event Player, 100);
}
}
rule("Stamina hits below")
{
event
{
Ongoing - Each Player;
Team 2;
Winston;
}
conditions
{
Event Player.MonsterStamina < 0;
}
actions
{
Event Player.MonsterStamina = 0;
}
}
rule("MonsterUltStaminaRecharge")
{
event
{
Ongoing - Each Player;
Team 2;
Winston;
}
conditions
{
Event Player.UsingMonsterUlt == True;
Event Player.MonsterStamina < 100;
}
actions
{
Event Player.MonsterStamina = 100;
}
}
rule("MonsterUltTiming and Effects")
{
event
{
Ongoing - Each Player;
Team 2;
Winston;
}
conditions
{
Event Player.UsingMonsterUlt == True;
}
actions
{
Destroy Progress Bar HUD Text(Event Player.HudAndEffects[50]);
Wait(0.016, Ignore Condition);
Create Progress Bar HUD Text(Event Player, Event Player.MonsterStamina, Custom String("Enraged!"), Top, 0, Color(Red), Color(Red),
Visible To Values and Color, Default Visibility);
Event Player.HudAndEffects[50] = Last Text ID;
Create Effect(Event Player, Good Aura, Custom Color(125, 0, 0, 255), Update Every Frame(Eye Position(Event Player)
+ Facing Direction Of(Event Player) * 1), 1.500, Visible To Position and Radius);
Event Player.HudAndEffects[52] = Last Created Entity;
Create Effect(All Players(All Teams), Good Aura, Custom Color(125, 0, 0, 255), Event Player, 1.200,
Visible To Position and Radius);
Event Player.HudAndEffects[51] = Last Created Entity;
Wait(5, Ignore Condition);
Event Player.UsingMonsterUlt = False;
Destroy Effect(Event Player.HudAndEffects[52]);
Destroy Effect(Event Player.HudAndEffects[51]);
Destroy Progress Bar HUD Text(Event Player.HudAndEffects[50]);
Wait(0.016, Ignore Condition);
Create Progress Bar HUD Text(Event Player, Event Player.MonsterStamina, Custom String("Stamina"), Top, 0, Color(White), Color(
Gray), Visible To Values and Color, Default Visibility);
Event Player.HudAndEffects[50] = Last Text ID;
Event Player.MonsterStamina = 100;
}
}
rule("Give Direction of All Enemies")
{
event
{
Ongoing - Each Player;
Team 2;
All;
}
conditions
{
Players On Hero(Hero(Winston), Team 2).UsingMonsterUlt == True;
Is Alive(Event Player) == True;
Has Spawned(Event Player) == True;
Number Of Dead Players(Team 1) == Number Of Players(Team 1) - 1;
}
actions
{
Damage(Players On Hero(Hero(Winston), Team 2), Event Player, 1);
Wait(0.200, Ignore Condition);
Loop If Condition Is True;
}
}
rule("MonsterBlinded")
{
event
{
Ongoing - Each Player;
Team 2;
Winston;
}
conditions
{
Has Status(Event Player, Stunned) == True;
Has Status(Event Player, Asleep) == False;
Global.MonsterIsAwake == True;
}
actions
{
Create Effect(Event Player, Bad Aura, Color(White), Update Every Frame(Eye Position(Event Player) + Facing Direction Of(
Event Player) * 0.900), 1.200, Visible To Position and Radius);
Event Player.HudAndEffects[55] = Last Created Entity;
Create Effect(Event Player, Bad Aura, Color(Black), Update Every Frame(Eye Position(Event Player) + Facing Direction Of(
Event Player) * 1), 3, Visible To Position and Radius);
Event Player.HudAndEffects[56] = Last Created Entity;
Create Effect(Event Player, Sparkles, Color(White), Update Every Frame(Eye Position(Event Player) + Facing Direction Of(
Event Player) * 1), 1.200, Visible To Position and Radius);
Event Player.HudAndEffects[57] = Last Created Entity;
Create Effect(Event Player, Good Aura, Color(White), Update Every Frame(Eye Position(Event Player) + Facing Direction Of(
Event Player) * 1), 1.200, Visible To Position and Radius);
Event Player.HudAndEffects[58] = Last Created Entity;
Wait Until(Has Status(Event Player, Stunned) == False, 20);
Destroy Effect(Event Player.HudAndEffects[55]);
Destroy Effect(Event Player.HudAndEffects[56]);
Destroy Effect(Event Player.HudAndEffects[57]);
Destroy Effect(Event Player.HudAndEffects[58]);
}
}
rule("MonsterSlept")
{
event
{
Ongoing - Each Player;
Team 2;
Winston;
}
conditions
{
Has Status(Event Player, Asleep) == True;
}
actions
{
Create Effect(Event Player, Bad Aura, Color(Black), Update Every Frame(Eye Position(Event Player) + Facing Direction Of(
Event Player) * 0.900), 10, Visible To Position and Radius);
Event Player.HudAndEffects[59] = Last Created Entity;
Create Effect(Event Player, Bad Aura, Color(Black), Update Every Frame(Eye Position(Event Player) + Facing Direction Of(
Event Player) * 1), 8, Visible To Position and Radius);
Event Player.HudAndEffects[60] = Last Created Entity;
Create Effect(Event Player, Good Aura, Color(Violet), Update Every Frame(Eye Position(Event Player) + Facing Direction Of(
Event Player) * 1), 2.500, Visible To Position and Radius);
Event Player.HudAndEffects[61] = Last Created Entity;
Create Effect(Event Player, Cloud, Color(Black), Update Every Frame(Eye Position(Event Player) + Facing Direction Of(Event Player)
* 0.900), 5, Visible To Position and Radius);
Event Player.HudAndEffects[62] = Last Created Entity;
Wait Until(Has Status(Event Player, Asleep) == False, 20);
Destroy Effect(Event Player.HudAndEffects[59]);
Destroy Effect(Event Player.HudAndEffects[60]);
Destroy Effect(Event Player.HudAndEffects[61]);
Destroy Effect(Event Player.HudAndEffects[62]);
Allow Button(Event Player, Primary Fire);
}
}