I have a lerp for rotating the arm (up/down only) to face the mouse, but its way too sensitive, and dividing the number didn't fix it.
local ShldrOrgnC0 = char.Torso["Right Shoulder"].C0 game:GetService("RunService").RenderStepped:connect(function() char.Torso["Right Shoulder"].C0 = char.Torso["Right Shoulder"].C0:lerp(ShldrOrgnC0*CFrame.fromEulerAnglesXYZ(0,0,(mouse.Hit.p.Z-char.Head.Position.Z)), 0.25) end)
basically what happens is this: https://gyazo.com/a3e1e237761c86ffbf870c1f475d81d8