Hello friends,
I had the following working yesterday - but now it is broken. It's probably an obvious user error.
I have an IK Override point. I then also have a "Follow" bone which has some hit-boxes attached. Initially, both are children of the Spine SkeletonAnimation. Then I detach the "missile" so it can embed into the world without having its position modified by the hierarchy above it. Then I fling the missile around.

Yesterday, this worked and the blue line stretched, following the IK / Override bone. Today, it no longer works.
I am using the same code:
Detach:
GrappleMissile = the IK override bone.
if ( GrappleMissile.GetComponent<Spine.Unity.SkeletonUtilityBone> ().parentReference == null )
GrappleMissile.GetComponent<Spine.Unity.SkeletonUtilityBone> ().parentReference = GrappleMissile.transform.parent;
//GrappleMissile.gameObject.SetActive (true);
GrappleMissile.transform.position = MissileReleasePoint.position;
GrappleMissile.transform.Rotate(new Vector3(0f, 0f, ReleaseAngle * Creator.GetForwardDirection() ));
GrappleMissile.gameObject.GetComponent<Spine.Unity.SkeletonUtilityBone>().overrideAlpha = 1.0f;
... some stuff involving SetParent(true).
Then to put back on afterwards:
GrappleMissile.transform.position = MissileReleasePoint.transform.position;
GrappleMissile.gameObject.GetComponent<Spine.Unity.SkeletonUtilityBone>().overrideAlpha = 1.0f;
GrappleMissile.gameObject.GetComponent<Spine.Unity.SkeletonUtilityBone>().DoUpdate ();
var anchor = GrappleSpine.transform.Search (SpineBoneNameDummyAnchor);
GrappleMissile.transform.SetParent (anchor.transform, true);
GrappleMissile.gameObject.GetComponent<Spine.Unity.SkeletonUtilityBone> ().parentReference = null;
I am really confused why this setup worked this morning, but not now - unfortunately, there were no check-in points to diff against.
29 Jun 2016, 09:35
Solution Discovered:
The "boneRoot" value inside of SkeletonUtility had been nulled out (probably due to bad Unity serialization).
To fix it, I had to rebuild my Spine hierarchy, even though the child object (SkeletonUtility-Root) was still there and named the same thing.