Respawn Improvements

Hello Developers,

Recently we made a few small improvements to spawning that we want to let you know about.

Players.RespawnTime

We have added a new property to allow you to control how long it takes for players to respawn in your game without having to implement respawning yourself using Player:LoadCharacter(). If you have a social or casual game, you may want to reduce the amount of time it takes for players to respawn. If you are developing a team shooter or action game, you may want to increase the amount of time it takes to respawn, so that players have to wait a bit longer, as a penalty for being killed, to get back into the action.

New Default SpawnLocation Size

We have changed the default SpawnLocation size from 6x1x6 to 12x1x12 when a spawn location is inserted in Roblox Studio. This allows multiple players to be spawned on the spawn location without them being stacked on top of each other. You may want to consider increasing the sizes of spawn locations in your games to avoid spawn stacking if you have not already.
30%20PM
The default spawn in Studio, endorsed spawn locations in Toolbox, and the spawn points in the Studio templates are all set to the new size.
Spawn Location objects in Toolbox:



Team Spawns:



https://www.roblox.com/library/53320/Yellow-Team-Spawn-Location

If you don’t want the player avatars stacking when they spawn into your game, try using the new size!

Let us know if there are any further improvements you would like to see for character spawning.

120 Likes

This is a great update, however there is one improvement I wish to see that’s I’ve addressed before.

Is there a way to fix the spawn height where it collides instantly if a part is too low so that the character spawns on top. It’s annoying for when characters you want to spawn inside end up on top of a building.

I’ve addressed it here:

The only current way to fix this problem is by utilizing CollisionGroups, however that in itself it a hassle. I wish there was a way to possibly adjust spawn height through the properties of the spawnlocation itself.

Hope to see more improvements!

45 Likes

Is RespawnTime able to be manipulated at run time? As well, is there a way to give different players different RespawnTimes or will custom respawn implementations need to be made (as well as the introduction of a feature request)?

Sometimes it’s necessary to change the respawn time based on what is relevant to the game’s function. For example:

  • Changing respawn times between players in a lobby and those playing a game
  • Assigning different respawn times for fulfilling requirements (respawn time decreases as your points go higher)
6 Likes

Didn’t know the new size was suppose to reduce stacking I always thought the player tried to spawn in the center of the pad and the direction the pad is facing. Repawn time will be a major jump from actually scripting it since :LoadCharacter() isn’t known for new developers.

And to address ebur1n issues that is really annoying for spawn characters in a small room and this bug also happens with the Play Here test button in studio.

:heart:

11 Likes

Spawns were changed to have characters do the current behavior a while ago:

3 Likes

Ahh good to know, not really active but I do lurk alittle.

RespawnTime can be manipulated at run time but is the same for all players so you would need a custom system to get the desired effect.

7 Likes

Cool improvements, even though some of these were mentioned before. RespawnTime is a nice feature to change items quickly without having to manually make a script to do so. Players not building 100 player tall stacks is also a great feature.

1 Like

This is a nice improvement to Respawning. Ty!

Say I want to create a system where the player can decide how long their respawn time is, due to my game being roleplay-centric, where sometimes players want to reset quickly to get to a specific part of the map because of my teleport system in the lobby, VS sometimes players want to reset and have their ragdoll’d dead roblox character being around for a while (and they want to see other player’s reactions to them dying).

If I send a RemoteEvent request if a player dies, and I have a system to store their specific choice for a respawn time, would I be able to Set RespawnTime after the .Died function (to then set it back to default for others), and would that use the updated RespawnTime? Or is the RespawnTime called for with the .Died function and any subsequent update of RespawnTime would only apply for .Died functions called afterward?

1 Like

imo it’d be better if we had a RespawnTimeOverride for each player

1 Like

This, and stacked players “welding” to each other are the 2 big issues with spawning

1 Like

I think the welding/spawn stacking bug has been fixed for nearly two years. I fixed an issue with how network ownership is assigned for characters and I haven’t seen the issue or any reports of it since then.

The fix was a bit speculative but it definitely seemed like a likely cause for spawn stacking issue where players could not move their characters at the time. The issue was that whenever a new part was created the network ownership was assigned to the closest character but the closeness was being calculated in the X and Z planes only. This would normally result in the network ownership for a character being assigned correctly or it would be re-assigned from another player after being assigned to them but occasionally if that players client was not responding you could be stuck above the spawn unable to move.

Now after the fix your client will always be assigned network ownership for your own character.

5 Likes

Great update! Fixed some things that I have been trying to fix for a long time. Thank you!

I was worried as when I spawned a spawn point is seemed to be too big, I was like, WHAT THE HECK but then I see this.

Anyways, wonderful and amazing update,

Thank you Roblox! :heartbeat:


Wonderful conditions for the developer should.

Huuuh. That’s super interesting.
I always assumed that since the characters were “frozen” similar to the way odd welds would look, it had something to do with that.

This will surely help! I remember putting multiple spawn locations just to make it so people would spawn in a different area. I’m also curious how the RespawnTime will make other games improve.

I like the improvements!

However, can this issue be addressed? Player:LoadCharacter(targetCFrame, withholdCharacter)

1 Like

This has been an issue since 2015, why was it not addressed?

You’d have to ask the roblox engineers that question.