This is a yielding function. When called, it will pause the Lua thread that called the function until a result is ready to be returned, without interrupting other scripts.
This function returns the
DataModel/JobId|JobId of the server the user with the given
Player/UserId|UserId is in, provided it is in the same game as the current place.
TeleportService/TeleportToPlaceInstance can be called with this information to allow a user to join the target user’s server.
This function returns the following values:
|1||currentInstance||bool||A bool indicating if the user was found in the current instance|
|2||error||string||An error message in the event of the lookup failing|
|3||placeId||int64||The PlaceId of the server the user is in|
|4||instanceId||string||The JobId of the server the user is in|
You should be aware of the following limitations when using this function:
- This function can only be called by the server
- This function may fail to return the correct information if the user is teleporting
- It is possible for this function to throw an error, hence developers should wrap it in a pcall (see example below)
- As this function returns the JobId of the server and not the access code returned by
TeleportService/ReserveServer, the id returned is not appropriate for use with reserved servers
This service does not work during playtesting in Roblox Studio — To test aspects of your game using it, you must publish the game and play it in the Roblox application.
- For the
See the table above
Following Another Player
The code sample below, when placed inside a
ServerScriptService, will teleport a player who’s following another player to the associated place/server. Note that this will not work if the player being followed is in a reserved server.
local TeleportService = game:GetService("TeleportService") local Players = game:GetService("Players") Players.PlayerAdded:Connect(function(player) -- Is this player following anyone? local followId = player.FollowUserId -- If so, find out where they are if followId and followId ~= 0 then local success, errorMessage, placeId, jobId = pcall(function() return TeleportService:GetPlayerPlaceInstanceAsync(followId) end) if success then -- Teleport player TeleportService:TeleportToPlaceInstance(placeId, jobId, player) end else warn("Player " .. player.UserId .. " is not following another player!") end end)