Maybe I am just overlooking something but rotation works with the angles however trying to update the position doesnt seem to do anything.
local mesh = script.Parent.mesh
--inputs
local pos = mesh.Position
local goal = Vector3.new(10,0,0)
--outputs
local walkSpeed = {script.Parent.WalkSpeed.Value, 5} --max 5
local turnSpeed = {script.Parent.TurnSpeed.Value, 2} -- max 2
--actuate outputs
game:GetService("RunService").Heartbeat:Connect(function()
print(walkSpeed[1], mesh.CFrame.LookVector)
mesh.CFrame *= CFrame.new(Vector3.new(mesh.CFrame.LookVector * walkSpeed[1])) * CFrame.Angles(0,math.rad(turnSpeed[1]),0)
end)
bug.rbxl (22.6 KB)