Multiplace games: making spawns to teleport to but preventing them from being spawned at

I’m currently making a universal (multi-place) game, and to teleport players between different places, I use Teleport Service’s TeleportToSpawnByName method. Setting this up has proven relatively straight forward, however I have encountered one indirect problem: when players reset or join the game, they sometimes spawn at one of these ‘arrival’ spawns, which I do not want to happen.

For example, instead of spawning here (at a spawn titled ‘SpawnLocation’:

They sometimes end up spawning at one of these ‘arrival spawns’, highlighted in red:

Initially, I thought the best way to solve this would be by setting up two teams - one automatically assigned and one not. Then I set all the ‘SpawnLocations’ to the automatic spawn colour, and the ‘arrival spawns’ to the non-automatically assigned team colour. After making this though, I realised it does not work, as the spawns ‘neutral’ property have to be set to false… and in doing so, this makes the :TeleportToSpawn method ineffective:

My second idea was to simply set the ‘arrival spawns’ Enabled property false; however, this also made the :TeleportToSpawn method ineffective.

Right now I really don’t know how to overcome this problem without making my own ‘TeleportToSpawn’ function.

Any thoughts?

Thanks

2 Likes

Why dont you just make an instant spawn system and set the characters PrimaryPartCFrame to the CFrame of the part(s)? This is what I do for all games.

Once the player has spawned after the teleport you can set this property of the Player object to one of the correct spawn locations and then the player will always spawn at that SpawnLocation.

3 Likes

Awesome, thanks

I was planning on doing that, but ideally I wanted to avoid having to do that as my whole system is designed to use spawns and the TeleportToSpawn method at this point in time.