hmm weird. That version isn’t listed on the releases page (as far as I can tell.) Do you remember where you downloaded it from?
Anyway, this isn’t about the version of mGear. It’s some combination of the angle of your limbs, and the fact that the IK controls are oriented to world by default.
There are “ikCtl_ref” and “fk_ref” nodes that are used to match the position when doing IK/FK switching. You can use that to grab the correct orientation and fix it in a script.
Here is a Python script I adapted for your rig. It basically just rotates the IK control to match that ref node. And unparents things or stores the orientation so it can set everything else back, so the hand doesn’t rotate when you fix the IK control.
This script is not 100% what you need. It breaks the FK hand orientation. So it needs a way to offset that back into place, by rotating “arm_R0_fk_ref”.
That’s the best I can offer for the moment. My rigs are different because I have an additional hand control that makes it much easier to offset once the IK controls are adjusted. Since you don’t have a single hand control, there are multiple elements that are directly connected to the arm that need to be juggled.
import pymel.core as pm
from mgear.core import attribute, transform
from mgear import rigbits
def fix_ik_hand_orientation(side):
### Orient the IK hands properly
handRef = pm.PyNode('arm_{}0_ikCtl_ref'.format(side))
ikCns = pm.PyNode('arm_{}0_ikcns_ctl'.format(side))
ikCtrl = pm.PyNode('arm_{}0_ik_ctl'.format(side))
armEff = pm.PyNode('arm_{}0_eff_loc'.format(side))
# Store any old values, or unparent things so they don't rotate with the fix.
metaRoot = pm.PyNode('meta_{}0_0_lvl'.format(side)).getParent()
metaRootOri = metaRoot.getRotation(space='world')
handChildren = ikCtrl.getChildren(type='transform')
effChildren = armEff.getChildren(type='transform')
pm.parent(handChildren, None)
pm.parent(effChildren, None)
transform.matchWorldTransform(handRef, ikCns)
transform.matchWorldTransform(handRef, ikCtrl)
metaRoot.setRotation(metaRootOri, space='world')
# Zero out the ikcns_ctl
rigbits.addNPO(ikCns)
# reparent everything
pm.parent(handChildren, ikCns)
pm.parent(effChildren, armEff)
for side in 'LR':
fix_ik_hand_orientation(side)
pm.select(None)