I would suggest using the "cheat method".
Hiearchy Cheat method: The How to Tutorial.
Welcome to SYF's tutorial on building a quick cheat Hiearchy. Let me show you how to get a working hiearchy without the hassels of building it 100% from scratch.
Part 1:
First, load Milkshape 3D (in order for this to work, you must have the SOD importer from Assimview).
Next, We are going to import the Fcruise1.SOD file (original A1 or A2 model only). You will have to point the importer to the directory of the SOD files for the game. Now that we have the original fcruise SOD in front of us, now we need to manipulate it to suit our needs. So on the Groups tab, be sure to hit "Clear All". Now with nothing selected, start deleting all the groups. Then click on the Materials tab, and delete all the textures. Now you have a basic hiearchy that you can manipulate. Now you need to save the hiearchy file under "Save As". Put it in the same folder as your MS3D files. Be sure to give it a name like "fcruise1_HP_sample" or something that you will remember.
Part 2:
Now, we are going to start manipulating the hiearchy as wee need. But first, an important warning:
NEVER EVER EVER MOVE THE CENTRAL NODES OF THE HIEARCHY! Sever Distortions WILL be caused by moving these!
Nodes -
h_Scene Root (or h_Root)
h_Lights
h_Hardpoints
h_Geometry (as well as with the h_ file descriptor)
h_Damage
h_Shields
h_Sensors
h_Target
h_Life
h_Engines
h_Crew
h_Borg
m_**** (anything with the "Mesh" node must be centered as best as possible)
Now that we have that clear, After saving this as a sampler file, close completely out of MS3D (this is a precaution to prevent a crash)
Now re-launch MS3D. Now open your model file, And do all your finalization of the model. Make sure all the groups have been regrouped and all the textures match the group names (one group per texture). Also, make sure the model in centered, and scale the model to an appropiate size (Use the Assimview scaler tool). Once you add the hiearchy, you can not move the model, or else you will distort the hiearchy file.
Now under the "File menu", Merge, and choose the fcruise1_hp sample file (whatever you named that fcruise hiearchy to, merge it to your model). Now that you have added the hiearchy, Save the file as the final name you are going to use (same as the name you are going to call the exported SOD file).
Now you can freely move the "child nodes", child nodes are as such - h_hp01, s_crew1, e_streamsml, etc. to adjust where the HPs are going to be. These will come out where you put them. You may also delete any extras that you don't want (but only the child nodes may be removed). Now's a good time to add any more HPs to the list of hardpoints. To delete one, on the joints tab, find the hp, strobe, or stream, and merely selecting it, then delete using the keyboard delete button. To add a new child node, select the appropieate parent node (h_Hardpoints for example), then on the model tab, click joint on, then in one of the 2d viewport windows, click the spot that you want the new node to be made. Then, click the move button (still in the model tab), and move the new child node to the exact place you want it.
Now, make note of the h_fcruise1, m_lod1, and m_lod2. The h_fcruise1 is the SOD descriptor node (for lack of a proper term). This must be the same name as the model file name. The m_ nodes must be renamed to match the groups you have. If you have more groups then the 2 m_lod*(s), you may add joints and rename them with the Mesh marker (m_*group name). Be sure that if you have to add mesh nodes, then select h_Geometry on the joints tab, then on the model tab, click joint, then on the left/right side 2d viewport windows, click the spot as close to the center of the hiearchy as possible. Then just rename that new joint.
Now, when the joints are all there, you are ready to export. save your work one last time before exporting. (Note: Unless you have Alpha channels on your texture, use the Armada 1 sod type in the export window.)
Some last notes:
You can add a sub joint to a parent node (like h_Hardpoints) name it joint00, then add a new child node (h_hp01 or whatever the next HP should be) and then you may rotate that joint in MS3D. However, it's not 100% that you can get a weapon to fire from the backside of a model. Torpedoes only fire forward, regardless of the direction of the hardpoint.
Adding new vents are some of the hardest things to get right. You will probable have to go back and move those several time before getting them right. And to make it worse, if you use ScaleSOD in you ODF file, then you will again throw off the location of vents. I personally don't like to use the vents.
If the model is not a ship, you can remove the h_Engine. If not, then you will find that the model (during game play) actually has a burning engine vent in the middle of it, even if you didn't include engine points in the odf.