You can't set the Humanoid RootPart of a Player Character anymore

Since the change that added physics controllers for characters (I think), the behaviour of humanoids has changed. The dev hub states that the RootPart of a player’s Humanoid is the same as the PrimaryPart of the players character. Humanoid | Documentation - Roblox Creator Hub

This is no longer the case. You can’t set the RootPart anymore, and the humanoid can just decide to pick another rootpart if something about the rootpart changes (ie you change the name of the rootpart.) I relied on being able to set the character’s rootpart but now I no longer can, which causes issues in my game.

3 Likes

This is working fine, you’re likely doing something weird, or you have a different setup than the obvious one (raw humanoid). Note that bug reports require a repro file for a reason. As a workaround you could try setting the root priority of your characters’ rootparts higher and see if that affects the issue.

2 Likes

Hello, could you share a file or set of steps to reproduce this? Otherwise we may need to close this if we can’t find a way to trigger it ourselves. Thank you!

I’m currently having this issue. The RootPart property of the humanoid only seems to be initialized when the the desired part is named “HumanoidRootPart”. Renaming it to anything else results in the property being set to nil even if the model’s primary part is set. Did you find a fix?

I’m not sure what you mean about it working fine, it isn’t working at all.

To reproduce: simply open a baseplate and change the PrimaryPart of your character model. The RootPart of your humanoid will not change. Also, try changing the name of your HumanoidRootPart. Watch how the humanoid will swap its RootPart to UpperTorso and you start walking weird, and you are unable to fix it by changing the character’s PrimaryPart. This used to work.

1 Like