dunno if this will help
but when i use something like this:

quaternize(45,pan_rel_to_me,rot_offset);
quat_to_unit(rot_offset);
quat_multiply(my_rotation,rot_offset,my_rotation);

ang_for_quat(tempang,my_rotation);
vec_set(my.[an,tempang);

.pan of entity is set to something like 45.012 instead of just 45, while tilt and roll stay unchanged