How to keep Team 2 in spawn room longer

Looking for a script thing that would allow Team 1 time to setup. and Team 2 to remain in spawn room for X amount of time. This is for an elimination type game and would want the same rule to be in effect every round.

Simple way: you can for example use status Sleep or other status that does not allow to move.

1 Like

This sounds pretty easy and effective… :sweat_smile:

1 Like

yeah but how do i set it up in workshop? i thought i can make Team 2 is at spawn room for a certain amount of time

event : ongoing - each players
----------team 2

condition :

in spawn room (event player) = True
Player variable (X) != True

Actions :

Status (event player) = sleep
wait (time to wait)
cear status (event player)
player variable (X) = True

There is a command “Start forcing spawn room”, but it only works in assault, hybrid and escort maps.

any way to keep the doors closed instead of forcing them to sleep? would feel less annoying to wait asleep.

No, you cannot keep a door closed. You can check if team 2 player left spawn and teleport him back or even kill.

If team 2 is on attack then you can set

time to team setup
rule("setup time")
{
	event
	{
		Ongoing - Global;
	}

	conditions
	{
		Is In Setup == True;
	}

	actions
	{
		Set Match Time(60);
	}
}

So team 1 as defense team can go longer before team 2 is allowed to leave its spawn.

2 Likes

You could set something up to when “Game In Progress” ticks to true, set Global Variable A to 1, wait 15, and set to 0; and if Team 2 = Out of Spawn & G. Variable A = 1 then Apply Impulse back towards the spawn or respawn them.

Not sure how to make that. I think ill just keep Team 2 Rooted for 60sec so they can at least do things while waiting for team 1 to setup.

EDIT: How come this is working in testing solo but when opening it live for people to join, they arent being rooted? some workshop Rules are working just not this one.

If I had to guess, the condition is only ticking for you while already in game, and players joining are unphased.
You may need to set a “Player Joined Match” rule to root the others for 60 - Total Time Elapsed

The rule is have is:
Ongoing-Each Player Team 2 All
Conditions:
Is in spawn room (Event Player)== True
Player Variable (Event Player, X)!= True

Actions:
Set Status (Event Player, Null, Rooted, 60)
Wait (60, Ignore Condition)
Clear Status (Event Player, Rooted)
Set Player Variable (Event Player, X, 60)

I found that without the Player Variable condition and actions if you return to spawn room you get rooted again for 60sec. so this avoids that.

EDIT:
Actually nvm, i decided to make my game a Control mode which then solves the issue easily with what Rany said. Ill make another thread with another issue im working on fixing. Thx for the help.

EDIT2: There is an issue with these 2 rules I made:

rule(“Spawn Room Delay Control Team 1”)
{
event
{
Ongoing - Each Player;
Team 1;
Symmetra;
}

conditions
{
	Is In Setup == True;
	Event Player == True;
}

actions
{
	Set Match Time(0);
	Wait(60, Ignore Condition);
	Big Message(Event Player, String("Incoming", Null, Null, Null));
}

}

and

rule(“Spawn Room Delay Control Team 2”)
{
event
{
Ongoing - Each Player;
Team 2;
All;
}

conditions
{
	Is In Setup == True;
	Event Player == True;
}

actions
{
	Set Match Time(60);
	Wait(60, Ignore Condition);
	Big Message(Event Player, String("Capture", Null, Null, Null));
}

}

What they do is they kind of cancel each other… either both teams are Set Match time 60sec or 0sec. I cant have one work without the other.