Player Spawning off-centered and above the spawner

I don’t know what category would be this topic… Sorry!
So… Some days ago, I noticed something of strange… The player is Spawning above the spawner and is also out of the center!
Spawner
The SpawLocation of this Spawner is in the Spawner, on the ground…
To fix the problem, I made this LocalScript that set (Spawner’s Top’s) CanCollide to true then (1 second later) false

game.Workspace.Hobby.Spawner.Top.CanCollide = false
wait(1)
game.Workspace.Hobby.Spawner.Top.CanCollide = true

Since the Script is in StarterCharacterScripts, it works :slight_smile: but I have always the off-centered glitch and when you die in the game, we can see that the player is falling :confused:
So I’d like to find a way to have the player spawning IN the spawner and in the center.
I took a picture of my spawner by making front parts transparent and made the SpawnLocation red…


The player should spawn just above the (red) SpawnLocation and in the center of it without being above the to of the spawner! If anyone can tell-me anything about please reply! :slightly_smiling_face:

1 Like

This is expected behaviour using Spawn Locations.

Why does the player spawn off center?

Spawn locations will try to spread characters as much as possible if it is bigger than a certain size, to reduce this, make the spawn location as small as possible (Size 1x1x1)

Why does the player spawn above the spawner?

Spawn locations probably use Model:MoveTo(Vector3) to position the characters on the spawn location (the downside of vector 3), you either need to make the spawner bigger or taller or wider to prevent the characters from spawning above the spawner, or you could create a custom spawn script that will teleport players inside the spawner.

Example of a custom spawn script

Player.CharacterAdded:Connect(function()
    Character:SetPrimaryPartCFrame(CFrame)
end)
5 Likes

Yeah, I agree but before that I noticed the glitch, it was working fine!
And also I’d like to keep the spawner at the same size, I made that to hide afk/waiting players…

1 Like

Well, there’s not much you can do about it. You can’t modify the behaviour of the spawn location other than the forcefield duration and team settings. If you will place AFK/waiting players inside, you can just teleport the players in the spawner since spawning the player in the spawner is not working as expected.

I will try to do some littles changes…

1 Like

I made the spawn location size to be (1,1,1) and added a bottom plate to have a custom ground aspect and now it works and nothing seems to be changed!
The player is :

  • Centered
  • In the spawner
  • Not above the spawner

Thanks for supporting me :slight_smile:

2 Likes

wut.

Vector3 is a data type, has nothing to do with the behaviour of SpawnLocations. The backend sets the position of characters, not their CFrames. Setting position will always increment the target upwards until it is in unobstructed space.

2 Likes

I meant to say Model:MoveTo(Vector3) :sweat_smile:

Vector3 still isn’t a downside though, the applied method is. You know you can construct CFrames with a Vector3, right?

1 Like