diff --git a/NifExport/Coll.cpp b/NifExport/Coll.cpp
index 709d8ba686c5ca32c1d38d83f250d0177218a919..1498b0b4e4e19781fe398c699a8265e3a7a127c4 100755
--- a/NifExport/Coll.cpp
+++ b/NifExport/Coll.cpp
@@ -589,6 +589,9 @@ bhkShapeRef Exporter::makebhkBoxShape(INode *node, Object *obj, Matrix3& tm)
 
 		Vector3 dim(width * scale[0], length * scale[1], height * scale[2]);
 
+		float radius = max( max(dim.x, dim.y), dim.z );
+		box->SetRadius(radius);
+
 		// Adjust translation for center of z axis in box
 		tm.Translate(Point3(0.0, 0.0, dim.z / 2.0));
 		box->SetDimensions(dim);
diff --git a/NifExport/Util.cpp b/NifExport/Util.cpp
index f5a0a2459b09b4857be89f8c2fcd479dc783e8c6..ce72984bb79544cac0f737cbb2eaea060194a43d 100755
--- a/NifExport/Util.cpp
+++ b/NifExport/Util.cpp
@@ -452,6 +452,7 @@ void Exporter::getChildNodes(INode *node, vector<NiNodeRef>& list)
       ObjectState os = node->EvalWorldState(0); 
       bool addBone = false;
       bool local = !mFlattenHierarchy;
+	  bool meshGroup = isMeshGroup(node);
 
       if (node->IsBoneShowing()) 
       {
@@ -459,14 +460,17 @@ void Exporter::getChildNodes(INode *node, vector<NiNodeRef>& list)
       }
       else if (os.obj && os.obj->SuperClassID()==GEOMOBJECT_CLASS_ID)
       {
+         Class_ID clsid = os.obj->ClassID();
          if (  os.obj 
-            && (  os.obj->ClassID() == BONE_OBJ_CLASSID 
-            || os.obj->ClassID() == Class_ID(BONE_CLASS_ID,0)
-            || os.obj->ClassID() == Class_ID(0x00009125,0) /* Biped Twist Helpers */
+            && (  clsid == BONE_OBJ_CLASSID 
+            || clsid == Class_ID(BONE_CLASS_ID,0)
+            || clsid == Class_ID(0x00009125,0) /* Biped Twist Helpers */
             )
             ) 
          {
-            addBone = true;
+			 // skip mesh groups in skeleton only situations
+			 if (!meshGroup || !local || !mSkeletonOnly)
+				addBone = true;
          } 
          else if (!mSkeletonOnly)
          {
@@ -480,7 +484,7 @@ void Exporter::getChildNodes(INode *node, vector<NiNodeRef>& list)
          {
             addBone = true;
          }
-         else if (isMeshGroup(node) && local) // only create node if local
+         else if (meshGroup && local && !mSkeletonOnly) // only create node if local
          {
             addBone = true;
          }