Ragdoll Character Point At a Part help

Its a 2d fight game like stick fighbhjdfkbjl ANYWAYS
I want to make the ragdoll character point at a Part.
and i also want this to work on r15 too
heres’s the code i have currently

local Players = game:GetService("Players")
local RunService = game:GetService("RunService")

local plr = Players.LocalPlayer
local char = plr.Character
local mouse = plr:GetMouse()

local rightArm = char["Right Arm"]
local armOffset = char.Torso.CFrame:Inverse() * char["Right Arm"].CFrame

local armGyro = Instance.new("BodyGyro")
armGyro.MaxTorque = Vector3.new(4000, 4000, 4000)
armGyro.Parent = rightArm


RunService.Heartbeat:Connect(function()
	local cframe = CFrame.new(char.Torso.Position, workspace.particletester.Position) * CFrame.Angles(math.pi/2, 0, 0)
	armGyro.CFrame = char.Torso.CFrame:toObjectSpace(cframe)
end)

It Kinda works but it points random
plz help