I’m having some trouble finding out why my character is going crazy while holding something with a decent amount of mass.
It may be hard to see, but the character moves differently because another character with mass is welded to it.
I tried to set all parts of the character that’s being held to Massless, but that didn’t work.
This doesn’t have to do with mass. You’re welding another model with a humanoid to a character. Both characters are fighting for physics control because they’re both attempting to simulate ground forces.
You should change the welded character’s state to physics with ChangeState. This will prevent the humanoid from calculating physics.
Setting the state of humanoid of the character that’s being held to None seems to work for 5 seconds before it starts having the same issue again.
What HumanoidStateType could be fitting for what I want to achieve?
Ah, okay. But it still looks like it’s going back to weird movement after a few seconds.
Is doing a ChangeState every 5 seconds a watertight way to fix this?
Turn on platform stand of the held character. If that doesn’t work, make every part of the person being held have a network owner of the person who is holding them.
I find that particularly curious. Are you able to take another video repro of what’s happening right now when you use the Physics state? You shouldn’t have to call it every 5 seconds because the Physics state needs to be explicitly exited with ChangeState again, it does not have any natural transitions.
Physics is an unending PlatformStand so if PlatformStand resolved it for you then that should be more than enough. Plus, you get the benefit of toggling it from a property.