Magnitudes not updating

I have a custom character and I’ve made script to move it’s legs individually.

local Mright = (Body.Position - right.Position).Magnitude
local Mleft = (Body.Position - left.Position).Magnitude
local Mback = (Body.Position - back.Position).Magnitude

I have this in a runService.Heartbeat function, But when the character moves (body) the magnitudes do not update

Where do these variables live? Can you send us the full script? These variables need to be inside that heartbeat function if not already

runService.Heartbeat:Connect(function()
	local Direction = hum.MoveDirection
	local Body = script.Parent["Strider_Reference"].T["Combine_Strider.Body_Bone"]
	
	if hum.MoveDirection.Magnitude ~= 0 and not stepping then
		local Mright = (Body.Position - right.Position).Magnitude
		local Mleft = (Body.Position - left.Position).Magnitude
		local Mback = (Body.Position - back.Position).Magnitude
-- Rest of code

Client-side or Server-Side?
Also I’m not sure if part positions update with animations…

Found the issue, turns out bones’ vector 3 values don’t change if the character moves