Need Some Clarification on :TeleportPartyAsync()

I’ve been creating a hub place for my game in recent days, so players could hop on, and be teleported as a group to the actual game. When the hub does teleport the players, it’s using:

game:GetService("TeleportService"):TeleportPartyAsync(somePlaceID, players)

Simply put, when calling on :TeleportPartyAsync(), does it create its own place instance/server all the time?

1 Like

TeleportPartyAsync pushes the players as a group into Roblox’s matchmaking system. It first attempts to find an active server instance with enough unreserved slots that all players from the party teleport can fit into. If no such server exists, a new server instance is created to fit the players in.

Matchmaking respects developer settings on a place. There are three options to select from: let Roblox handle server placement, fill every server to the fullest and reserve X amount of slots for manual teleports and friend matchmaking. In each scenario, TeleportPartyAsync searches for servers which can fit all players in without overstepping the requirements.

For example, say you’re teleporting a party of 9 players to a game with a 12 player count maximum per server. There are two servers: one with 2 players and one with 4. The players will not be sent to the server of 4 because the server size will come to 13. The other server will come down to 11 post-teleport.

Now suppose in the same scenario, you have player counts of 12, 11, 11 and 10. Each of these servers is near the maximum, therefore the party of 9 cannot fit into any of these servers. Roblox matchmaking thus issues a new instance and sends the party to that server.

tl;dr No, TeleportPartyAsync does not create a place/server all the time.

9 Likes