I have two AI characters that share the same model and pathfinding. However, one of them is about 1/5 the size of its normal counterpart. I have a BodyGyro in each character's torso that turns them to face points they're walking towards. This works fine in the normal-sized character with MaxTorque set to Vector3.new(0, 10000, 0). However, in the smaller one any values less than Vector3.new(0, 10685, 0) will leave it facing the same direction, and any values higher than that will leave it randomly spinning.

What am I doing wrong?

Just for reference, here's where I set the CFrame in both scripts. points is a list of points returned by PathfindingService

gyro.CFrame = CFrame.new(script.Parent.Torso.Position, points[3])
humanoid:MoveTo(points[3])