Before I go further, I should disambiguate that Empty in TeleportToEmptyPlace is referring to a server instance with no other players in it.
With TeleportService, it’s become more possible to control which players are in which servers which have numerous implementations. This feature would provide even more control.
Example usage:
I am working on a game in which players will start in a lobby-like place, will join quests, and may depart on these quests by themselves or with whoever decides to join them. They are then teleported to a place within the game that corresponds to whatever map the quest takes place on.
In order to sandbox a group of questers such that they have their own server, the host will have to first be teleported to an empty instance of the map, then using :GetPlayerPlaceInstanceAsync() the players who join them will follow using :TeleportToPlaceInstance().
The problem is that using the currently available API, the host can only be teleported using :Teleport() which is likely to place him in the middle of another player’s quest who is questing at the same map. The solution:
TeleportService:TeleportToEmptyPlace(int placeId, Instance player = nil)
where, just like similar API, player is only required when calling from a server Script.
This will allow me to give the host a unique server to begin questing in.