Bone Heat Weighting Error
You should definitely go toward manual weighting, which is not as complicated as it seems: automatic weighting is a fast shortcut for simple models that don't require fine tuned movements: it's not wortking on your model because it needs a manifold, joined, closed unique mesh, while your model is broken into multiple pieces and is far too complex to be manageable by automatic weighting. When you parent the mesh to the armature choose the option "With empty groups": this will create an empty vertex group associated with every bone marked as "deforming" in the armature, then select the relevant vertices and assign weight. Here are some useful weighting tricks: Rigify : skin overlapping clothes