How would I go about making a loading-in spawn system?

What I mean about a spawn system is that, I am trying to make a loading GUI, but I also want to make it so that the player cannot die unless they have actually clicked play on the loading GUI. I have thought of making a spawn area safe zone, but I figured players would easily abuse the safe zone, [E.G, they’re being attacked and they could just run into the safe zone to not die.] So I gave up on that idea. I don’t know how else I would go about implementing this into my game. Any thoughts or ideas to help me with this?

It’s really easy! just turn off CharacterAutoLoad under game.Players, and then use a server script to spawn the character by using Player: LoadCharacter() and boom! the player has spawned into the map!

So technically, talking about the implementation, when the player clicks on the gui, you will have to fire a remote and use LoadCharacter() on server on the specific player, so in a nutshell, turning off CharacterAutoLoads() will not automatically spawn characters.

This has a draw back tho, once the player dies, the player won’t respawn back, so you will have to use a script that will check when the player dies, and use LoadCharacter() to spawn him back!

Hope that helps!

3 Likes

So would I do something like?

humanoid.Died:Connect(function()
wait(10)
LoadCharacter()
end)

or would it not work?

Another way you could do it is so when they first join teleport them to a spawn box and then when they click through the loading screen just teleport them to the actual spawn. Then they will spawn there every time.

You need to Player:LoadCharacter()

Yes, your implementation would work.