How to make a swimmable part

Hey everyone! I was wondering if it’s possible to make a part in which the player can swim in.

I think it is pretty self-explenatory, I just want a part that when the player enters he/she can swim.

I have tried to change the humanoid state but it won’t work.

Thank you in advance.

I had this same wish. However, unless there is (I don’t really know if there is or not) some really complex code to make a part simulate water, then I am afraid you cannot really make a swimmable part. Conversely, a scripter told me that some times it’s easier to “fake things.” So, the only I currently know you could try to make swimmable water is by creating some terrain water and surrounding in with a part (can-collide off). Hope this helps!

1 Like

A lot of games have this, maybe they did that approach or maybe they actualy made a swimmable part but i don’t know. I will try this method out though, thank you!

edit: This actualy works pretty well if you don’t mind the player being able to see the actual water when swimming underwater!

1 Like

They do that by bringing the player to the top of the part with BodyGyro/BodyVelocity… I think those 2, anyways, they play an animation over the falling animation to look like swimming. (Most games dont allow free-floating within the part because thats difficult)

Can’t you do something with RunService.Stepped like

local RS = game:GetService("RunService")
local touchingPart = false
local player = game:GetService(“Players”).LocalPlayer


RS.Stepped:Connect(function()
    if touchingPart then
        player.Character.Humanoid:ChangeState(4)
    end
end)

i remembered a forum like this, here you go: