Ah was a bug in the plugin itself.
Basically there was this line:
CRunObject* pTarget = params[0].GetObjectParamFirstInstance(pRuntime);
which should have been this line
CRunObject* pTarget = params[0].GetPairedObjectParam(pRuntime, this);
Having a search through the file I found that ZBehindOf, ZInfrontOf also have the old code and so will have the instance pairing problem. Other than that the pairing system should work.