No matter what values I try in the CFrame.Angles(x,y,z), the part ends up being rotated the completely wrong way. So what values should I be using for the part to appear infront of the player, rotated correctly?
The CFrame of the player includes the rotation of the player. If you want the rotation to be the same relative to the world, try using the postion property instead of CFrame, or set the rotation of the part after the CFrame to the correct value