How to Make Character Stop Floating in Water

I’m trying to make the character not float upwards in water, as such:

and instead, I want the character to just stay in one place underwater.

I have looked over the DevForm and Roblox’s documentation and I cannot find how to do this.
If you could help, that would be great!

This might not be the answer you are looking for but you could loop through every part in the character’s body and change it’s density to a lower value?

1 Like

I could, but I’m wondering if there is a simpler way.

You could get rid of the Terrain water and use a CanCollide false Part or Mesh so it doesn’t have buoyancy.

If you wanted to use Terrain Water and walk on the bottom you’d need to cancel out the ‘swimming’ animations as well. You may be able to weld a CanCollide false Part with increased Density to help out, but this may affect how the player moves since I know that Tools that aren’t Massless can cause issues.

I don’t really want the players to be able to walk on the bottom, I just want them to not float up, something like this:

I can deal with animations, but is there an easy way to replicate something like this? If not, what would work best? Thanks!

Best case is as @PrismaticShadows recommended, make all Player Parts Density = 1.

1 Like

How would I do this? I have just looked around a bit on the DevForm and on the Roblox documentation and found nothing. I also can’t find the property “Density” under any of the character’s body parts. Could you perhaps link a tutorial/article on density? Sorry for the inconvenience, and thanks for the help.

You won’t find it because it’s a part of CustomPhysicalProperties, and that needs to be turned on.

1 Like

Check out this information BasePart | Roblox Creator Documentation, but in the Part’s Properties when you select it you should see a checkbox with CustomPhysicalProperties already in it.

1 Like

Ohhhhh, I see it now, Thanks for the help! @Scottifly @A_thruZ


And I’m not sure if it gets reset every frame like other Properties like Transparency or CanCollide (I think).

The marked solution will not work unless you are in R6