Anim Rigging Override Transform only works for rotation on Humanoid Character [Trying to make Weapon Recoil]

My setup:
I am working on a third-person shooter project. I use mixamo animations for movement (lower body parts) and have the upper body animated separately using avatar mask, with custom animation for each weapon. I was also trying to use IK for attaching the weapon, but both, unity’s built-in IK and anim rigging IK didn’t give satisfying results.

The problem:
For Recoil, I am trying to move the gun and the hands a bit backwards and rotating it slightly in a random direction(Gun is child of the hand bone). For this I am using the override transform constraint of the animation rigging package, but for some reason it only applies rotation and to position to the hand.

Position weight and rotation weight are both set to 1, space is set to pivot. The Constrained object is the right hand bone and the override source is the recoil transform. I also tried using a two-bone IK constraint instead, but that messes up the hand and weapon position, since the object that the recoil is applied to would need to be a child of the hand, in order to get moved correctly when the character is aiming up and down. Up and down aiming is achieved with a blend tree, blending between a 'Face upwards, ‘face forward’ and a ‘face downwards’ pose.

Hello! I was having the same issue on my character and figured it out, so I wanted to leave an answer here for anyone’s future struggles.

Humanoid avatars normally discard translation animation as part of their retargeting, so normally, you have nothing for the constraint to attach to.

In your avatar, you need to enable “Translation DoF” so that your humanoid animation clips will have translation animation available to override.

^Check this box, and your constraint should work as expected!