[repro] OnTeleport does not report Failed and other states correctly

Note the enum values of TeleportState:

When the TeleportState of a player changes, Player.OnTeleport fires with that information. As such, when a player teleports, you’d expect it to fire with the following values in the following order:

  • RequestedFromServer
  • WaitingForServer
  • Started / Failed
  • InProgress / Failed

When you teleport a player though, only the first one is fired. To repro:

  • Create a place that allows teleporting to another place and prints out OnTeleport data, such as this uncopylocked place
  • Join on a test account and an account that has access to the developer console
  • Open the dev console to the server tab
  • Teleport the test account away
  • Notice that only RequestedFromServer is printed, and none of the others
  • Failed is also not returned/printed at all. Using the repro steps in this thread, teleporting to a ReservedServer does not generate Failed. Also, if regularly teleporting fails, Failed is not returned either (repro by re-publishing this place to your account, pressing 4, and noticing that Failed is not printed in the dev console)

I want to bump this because roblox recently updated their wiki page on this, but when I repro this, the exact same thing happens to me. Does anyone have any answers on this?


Can confirm. The same thing was happening to me, found this thread because I was searching for a solution.

Wow… Was also searching to see if anyone else had this issue. Didn’t realize it dated all the way back to 2016. Wondering if Roblox can look at this?


If I remember correctly, it ended up being that all of the “missing” states just only fire on the client being teleported, which was/isn’t documented.


Oh thats… quite disappointing :confused:

Thanks for the info

1 Like

Issues like this make me wish I took the initiative to start developing on other platforms. 4 years later and this is still undocumented. Even if it was documented, I would consider this to be a bug. The server should always know if a teleport was failed, no matter the reason.