@riccetts
If you're using the latest version of FPSC (v1.20 unofficial), then this is the code at (around) line 8559 to do with limbs:
rem calculate player activity distance (of the attached weapon point)
rem FPGC - 100710 - if ragdollified, use entity last location for gun pickup (real OBJ at 0,0,0)
tdropobj=entityelement(e).attachmentobj
if tdropobj>0
x1#=object position x(tdropobj) `limb position x(obj,entityprofile(entid).firespotlimb)
y1#=object position y(tdropobj)`limb position y(obj,entityprofile(entid).firespotlimb)
z1#=object position z(tdropobj)`limb position z(obj,entityprofile(entid).firespotlimb)
else
x1#=limb position x(obj,entityprofile(entid).firespotlimb)`entityelement(e).x
y1#=limb position y(obj,entityprofile(entid).firespotlimb)`entityelement(e).y
z1#=limb position z(obj,entityprofile(entid).firespotlimb)`entityelement(e).z
endif
My guess would be that your firespot limb isn't set up properly.
-TZK