How do you change the default spawn point using a script?

The title says it all. How do I change the default spawn point WITHOUT inserting a spawn location?


If you don’t want to insert a spawn location, you could teleport the character as soon as it gets added to a certain location using SetPrimaryPartCFrame or MoveTo.

1 Like

Does roblox have a :SetSpawn(vector3()) function for the workspace or something?

No, I’ve never heard of something like this. This would totally eliminate the need for a spawn location object if there was such function.

Could I move my map downward so players spawn above it then?

*Above the ground.

     -- set position

Important to wait for Roblox to set position after the event fires, or position will be overwritten.

If you write to the Position property, players’ characters will be moved up above the set position until they aren’t stuck inside of something, as opposed to writing to CFrame.


I believe there is a spawn location property on the player called “Respawn location”

You could do this, but this may be very challenging if you plan to move the whole workspace. Also please adjust the maximum fall height under workspace to prevent unexpected behaviour.


To move the workspace, you could use workspace:MoveTo(Vector3)

1 Like

The OP is asking for a method that does not involve spawn locations.

@DragRacer31, what’s your use case?

My Anti-Noclip system is catching players who LITTERALY just spawned, because 0, 0, 0 coordinates is occupied by terrain.

So players spawn at 0, 0, 0 the antinoclip catches them before roblox mooves them to the top of the terrain

Could possibly add a wait/delay to your anti noclip system for when they just respawned?

1 Like

How long should I wait then? Can’t I just detect if the player is fully loaded above the terrain then start the system?

What I, personally, would do is a repeat loop until it finds their HumanoidRootPart (or whatever part you’re basing your no clip on)

1 Like

That’s what I do! I use: root = script.Parent:WaitForChild(“HumanoidRootPart”)

I recommend adding a wait of about 1-3 seconds or doing what @Avigant suggested

No thats not what my antinoclip does!

Read this: Any Thoughts on my Anti Noclip Raycast?

1 Like

I am going to accept this post as the solution because i can simply add an if statement, detecting wether or not the player is above the ground, and if they are, then execute. If they are noclipping with the ground then kick them.