Bone Heat Weighting Error So I have tried multiple solutions around this page and nothing so far has worked. I am at the end of a blocked off tunnel with nowhere to go. I beseech help.

https://www.dropbox.com/s/8kg70lk9asmg39n/The%20Fallen.zip?dl=0

I am using Riggify and Automatic Weighting.
I have tried to remove double vertices and get rid of overlapping faces with no luck. The bones for the armature are positioned correctly to the best of my knowledge and I made sure to reset their axes so the movement would be correct.

The only thing that I havn't tried is doing it manually, mainly due to how complex it seems.

I simply want to get it rigged for animation. I just need simple movement of the body and limbs.
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