TeleportPartyAsync doesn't give players their own server?

In my game, players create a party in the lobby and then they go off into their own match as a party. Before, this was my code:

local placeId = 000 --// my place id obviously
local reservedServer = TeleportService:ReserveServer(placeId)
TeleportService:TeleportToPrivateServer(placeId, reservedServer, toTeleport, 'spawn')

Now my code is:

TeleportService:TeleportPartyAsync(placeId, realParty)

I just experienced something weird. The max size in the place we’re teleporting to is 4 (party sizes are limited to 4). My party size was 2 when I teleported, and I teleported into the place, but I teleported into another party’s (of 2) server! I understood there was a guarantee that with TeleportPartyAsync, the whole party would get into a server together but I guess there wasn’t a guarantee that they’d make it there together…I don’t want to stick with my original code because I need to use the GetJoinData function to determine on the server how many players are supposed to arrive, and you can only use that with TeleportPartyAsync. Can I use reserved servers TeleportPartyAsync? Any advice or solutions?

Sorry if I missed anything - this post isn’t well structured, I typed it up in a hurry as I have to leave now. Any help or advice is appreciated.

If you want to isolate your party so they don’t end up playing with other players, you should use reserved servers. Party teleports are for when you want to benefit from Roblox’s automatic matchmaking.

4 Likes