Driver won't work?

Hello! I have encountered an issue with shape key drivers attached to a bone. I’ve successfully made a driver on one leg, but when I copy the driver to the other it won’t work even after making the proper changes to the driver curve and/or expression. I’ve included a video of how it’s not working (the leg on the left is how I want it to work on the right).
Video
Working Driver


Broken Driver

Driver curves for both

It looks like it’s working. It’s showing that it’s evaluating the driver value as -0.033. Which might not be what you expect-- what is the actual local Y rotation of Bone.005 when evaluated as an XYZ Euler? If it’s a quaternion, you can find out by changing it to an XYZ Euler in properties/bone/transform for a second.

Also, all bones with drivers are XYZ eulers.

Nvm, still broken.

It works when I don’t rotate the IK control (An empty), but not when I rotate it.

Feel like providing a file?

Sorry for the late reply, I went to sleep as it was 11 PM. Sure! I managed to get it to work inside the angles I need (For a very limited range of empty rotation).
https://www.mediafire.com/file/kg5iiv6ekqwls9a/Mare_Body_Experimental_Blender_3.0.blend/file

It’s most definitely working.

You have some issues (you don’t have any vertex groups on the mesh, so your vertex groups to limit the shapekeys aren’t working, so all shapekeys are acting on both sides; and I’m worried about the fact that your Basis is named “Neck”.)

Using the Y axis of an XYZ Euler value is pretty dangerous, because the Y angle is dependent on the X angle, so the Y rotation is not always going to be what you expect (consider that XYZ 180/0/0 is the same orientation as 0/180/180-- Blender has to pick between multiple potential values for a given orientation, and you might not get the Y rotation you expected.) This issue gets worse the more that the bone is bent, and your default is already bending it about 60 degrees off via the use of the IK on a bone in different true rest pose.

Ah, I forgot to tell you that I’m using Blender 3.0, so all vertex groups are lost in earlier versions. (As to the neck thing, I have a shape key plugin that allows for multiple shape key folders, so)

As for the other things, I’m going to change to quaternion and see if that fixes it.

It works! Thank you for your help!

Changing to quaternion will change nothing. The bone rotation mode does not affect the driver (it will still read it as an XYZ Euler, since that’s what you told it to do.) And the Y component of a quaternion is even more dependent on the X and Z values of the quaternion than an Euler is.

If you want to get a consistent Y rotation value, I would duplicate Bone.005, have the duplicated damped track Y the tail of Bone.005, and then measure the rotational difference between the two:

I mean I changed EVERYTHING to quaternion. The driver and the bone.

The bone rotation mode doesn’t matter for purposes of the driver; and the Y component of the quaternion doesn’t really measure the roll of the bone, which is what you’re after.

Yeah, I figured that out just now. I’m now trying what you told me to do.