How to stop characters "flying" when teleporting on the client?

Hey there. In the project I’m working on, I have a mechanic where the player can teleport to a separate “dimension.” This is done by creating a copy of the map 1000 studs away and translating the HRP’s X position by 1000 studs. It looks and works great on the client’s screen, but to other players, you can see them flying across the map.

Setting the character’s position through the server seemingly fixes the visual bug, but it makes the teleport for the client very choppy. Another thing I tried doing is changing the player’s transparency for all other players when teleporting - this didn’t work either though since the “flying” visual takes a long time to complete. I’m aware I could scrap the idea of having two separate maps and set up a system with character collisions and transparency, but I think it would prove to be a pain as I add more features. Any ideas are appreciated

You can use Character:PivotTo(CFrame) where CFrame would be the CFrame of the part you are telepoting the player to.

Unfortunately that still causes the same issue.

Ah, this is most likely caused by ping. I suggest you switch over to the server, you have said that it makes it very choppy so in that case the last option is probably the best one