What is causing the HumanoidRootPart to detach from the character?

I have found out that the HumanoidRootPart is detaching from the rest of the character on the server but not on the client. As a result of this, players are seeing other players in an irregular position when this happens.

The game makes use of a MoveTo event when clicking on the enemy, then play an animation when MoveToFinished. There is also the option to CFrame one’s HumanoidRootPart to teleport from one map to another. (All of these are being executed on the server)

Client
image

Server

Any ideas of what may be causing the HumanoidRootPart to detach?

3 Likes

Are there any errors on the output?

No because this is probably a logic error.

The HumanoidRootPart has to be unanchored otherwise the character can’t move, whilst the CanCollide is true by default as intended.

1 Like

Wouldn’t the server see the same thing as the client, considering that the server executed the function(s) in the first place? Idk if you were meant to type ‘other clients’ instead of ‘server’.

Try recreating this scene in a new file (baseplate), and see if there are any issues then. If there are no issues in the world, then perhaps there is another script(s) altering the character’s position.

I am looking into this. Thanks.

To clarify, no I did not mean to type that.

I have been thinking about this and I have come to the conclusion that this indeed is the HumanoidRootPart detaching from the Character somehow. What confirms this is because other players see other players in irregular positions as they are seeing them on the server. Yet, the local player sees himself still attached to the HumanoidRootPart. Moreover, what confirms that I am executing the code on the server is that the HumanoidRootPart is walking to the right position set by the MoveTo event. :exploding_head:

This really is a bizarre scenario… Have you tried re-coding this scene in a new template file? This is just to make sure that there isn’t a foreign script on the game that can hamper with the results.

Are you setting the CFrame of the player’s RootPart using SetPrimaryPartCFrame?

5 Likes

When teleporting the character, yes.

Found out I had a case where I was using HumanoidRootPart.Position for some reason I don’t remember anymore. Anyways, changed it to SetPrimaryPartCFrame.

2 Likes