I never asked for the damn code mods so don't even try closing this. Just need some help with IK kinematics (aka dynamic movement) the problem is I don't know how the hell to make it and I get errors in the process of the code.
Code:
wait(1) User = game.Players.LocalPlayer Humanoid = User.Character.Humanoid Torso = User.Character.LowerTorso L_Hip = Torso["Left Hip"] R_Hip = Torso["Right Hip"] local step = game:GetService('RunService').RenderStepped; function ArcTan(x, y) r = math.atan(y / x) if x < 0 then r = r + math.pi end return r end vel = Vector3.new() while true do step:wait() local velVector = Vector3.new(Torso.Velocity.X,0,Torso.Velocity.Z); if velVector.magnitude > 0 then m = (vel - Torso.Velocity).magnitude / Humanoid.WalkSpeed vel = (Torso.Velocity * m + vel * 2) / (m + 2) v = Torso.CFrame:pointToObjectSpace(vel + Torso.Position) L_a = ArcTan(v.x, -v.z) R_a = 3.1416 - ArcTan(v.x, v.z) L_Hip.C1 = CFrame.new(0, 1, 0)*CFrame.Angles(0, L_a+math.pi, 0) R_Hip.C1 = CFrame.new(0, 1, 0)*CFrame.Angles(0, R_a+math.pi, 0) L_Hip.C0 = CFrame.new(-0.5, -1, 0)*CFrame.Angles(0, L_a-math.pi, 0) R_Hip.C0 = CFrame.new(0.5, -1, 0)*CFrame.Angles(0, R_a-math.pi, 0) L_Hip.MaxVelocity = Torso.Velocity.magnitude / 100 R_Hip.MaxVelocity = Torso.Velocity.magnitude / 100 else L_Hip.C1 = CFrame.new(0, 1, 0)*CFrame.Angles(0, -1.57, 0) R_Hip.C1 = CFrame.new(0, 1, 0)*CFrame.Angles(0, 1.57, 0) L_Hip.C0 = CFrame.new(-0.5, -1, 0)*CFrame.Angles(0, -1.57, 0) R_Hip.C0 = CFrame.new(0.5, -1, 0)*CFrame.Angles(0, 1.57, 0) end end
Quick Lil' Update, I think the motor6d's are just wrong and I think I may have named the whole thing wrong, sorry!