i have a custom fish character, whenever it reaches the top of the water it just freezes, plays no animation, being unable to move around
Hello, do you still need help with this?
If so, we need more context. The script would be pretty helpful, aswell as the children of the character.
What did you use to create the character? Did you place it inside StarterPlayer? Does it contain a Humanoid Instance? Is it named StarterCharacter?
there is no separate character controller, the animations are from editing the roblox default Animate script
What errors, if any, are in the output?
Looking at your video and screenshot, the issue is tied to how the Humanoid handles state changes when leaving the water.
-
The Upright Snap
In your video, the moment the fish leaves the water, it snaps vertically. That is theHumanoidexiting theSwimmingstate and enteringFreefallorGettingUp, where it automatically tries to force the character to stand upright. -
The Missing Head
Looking at your Explorer screenshot, your character doesn’t have a part named exactlyHead. When a custom rig ‘trips’ or falls down without aHeadpart, the Roblox physics engine breaks and the character gets permanently frozen because it doesn’t know how to recover.
FIX:
Add an invisible block into your StarterCharacter, name it Head, and weld it to your HumanoidRootPart.
In a LocalScript inside the character, disable the states that cause it to trip when leaving water:
local character = script.Parent
local humanoid = character:WaitForChild("Humanoid")
humanoid:SetStateEnabled(Enum.HumanoidStateType.FallingDown, false)
humanoid:SetStateEnabled(Enum.HumanoidStateType.Ragdoll, false)
humanoid:SetStateEnabled(Enum.HumanoidStateType.GettingUp, false)
If there are still issues, press F9 when it freezes to see if your custom Animate script is throwing an error.
wow thank you the head not being there was the problem thank you so much
This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.
