Weird behaviour with BodyGyro object

I have been trying to make an R6 dummy face the same direction as the player character is via adding a BodyGyro object contained within the dummy’s torso. In order to try achieving this, I had set the BodyGyro’s CFrame to the player character’s upper torso’s CFrame (which was contained in a .stepped event).

Weirdly however, the dummy seems to spin about an imaginary point rather than its torso (which is where the BodyGyro object is located in):

At first, I suspected that the power/max torque may have been the issue. I had played around with the two values in hopes of fixing the issue, however, the dummy still did not spin about the torso. This was what it had looked like with 40 max torque on the Y axis:

Something I also found strange was that the intensity of this issue varied between different R6 dummies. Here is what the explorer structure looked like for the dummy I had used displayed in the previous few GIFs:

Does anyone know why this might be the case?

Maybe because you’re in R15 while the dummy is in R6?

I don’t know your setup but I tested it with this and it works as intended

local RootPart = script.Parent
local BodyGyro = RootPart.BodyGyro
local BodyPosition = RootPart.BodyPosition

	local TargetRoot = game:GetService'Players':GetPlayers()[1].Character.HumanoidRootPart
	BodyGyro.CFrame = TargetRoot.CFrame
	BodyPosition.Position = (TargetRoot.CFrame *, 1, -3)).p


The BodyGyro is keeping the Rotation of the dummy correct, but there is some force acting upon it when your player’s body rotates.
The dummy is being flung around centrifugally around the player, but the BodyGyro in the dummy is keeping it facing the correct direction in the first video.
Imagine having something attached to your torso when you spun, it’d get flung outward like your dummy is.
The intensity probably depends on the Mass/Density of the dummy.