How to make an animation move the player character

No, afaik animating the root part won’t trigger collisions

Your best bet is :ApplyImpulse or any other physics object will abide by collisions. If you want the force to be constant, use smth like VectorForce, otherwise just use :ApplyImpulse. Create an animation like usual, (dont animate the root part) and then when you play the animation, just do smth like:

local Force = 100
HRP:ApplyImpulse(HRP.CFrame.LookVector * HRP.AssemblyMass * Force)

Which will push the character forwards in the direction they are facing

2 Likes

Why do you multiply by AssemblyMass?

AssemblyMass is the mass of the whole assembly i.e. the character model in this case. Different parts with different AssemblyMass require different magnitude of force to push them x distance away. So we multiply the force to be applied with AssemblyMass, since more the assembly mass larger the needed force.

Question: Does :ApplyImpulse ignore friction?