# Assistance with the math of a Head Rotation system for an entirely custom rig

Greetings!
I’m looking to create a head rotation system using C0 manipulation for one of my entirely custom rigs, which I’ll post an image below of.

The problem here seems to be the actual math of the rotating head, which is… to be quite honest, wonky. My goal here is to make it so that the head rotates to face the direction of the camera. I tried several pre-made scripts for the sake of learning how it exactly works, and I somewhat understand what’s going on in terms of basics, however I’ve run into a few issues.

Pre-existing head rotation scripts assume that you are using the R15 or R6 rig, which have pre-defined C0 values. They seem to be similar to clean values close to 0. With the image shown below, this is not the case for my rig. This is very difficult to manipulate the C0 of.

So I quite likely have 2 options here;

1. Somehow find a way to equalize the C0 of the neck joint to 0,0,0 (unless there’s a way to do so without affecting the physical look of the rig, it’s not really doable.)

This is what a CFrame of 0,0,0 along with a rotation of 0,0,0 looks like. As you can see, it’s not feasible.

2. Figure out a way to do the math assuming the C0 is what it is. I have no clue how I would get started on this.

Any help and tips would be greatly appreciated!