Creating my own perfectly functional character (skeletal mesh) ?

  1. it prevents you from having issues when you work. Retargeting, different heights, etc. Take the epic skeleton by exporting the mannequin. Keep the same names and bones. Move them to fit your character mesh.
    Or don’t move them at all. The bone placement doesn’t really matter at all. What matters is your weight paint. If you don’t move them you can’t use auto functions and will need to manually weight paint.

  2. in ue4, but the bones have to exist on the skeleton the same or similar to the base mannequin.

  3. shouldn’t be an issue. see point 1.
    The bones don’t have “proportions”, all they matter for is rotations and angles. Consider them a “pivot” point.
    obviously you can use their length to offset pivots at different distances - which helps a lot for good animations. But that doesn’t mean you can have a stubby fat character just use the epic skeleton as is.

  4. yes, if you plan to do ragdolls, hit reactions, anything at all involving physics. That does include hair and cloth.

  5. blender’s rigify or similar.

  6. yes to both. However you should take care not to invalidate animations by deleting bones.
    generally you don’t make mistakes, or you make additions at the end of the skeletal hierarchy so that the changes don’t affect anything already existing.

You may be overthinking this.
Use this
Http://mosthostla.com/gamedev/bonebreaker

Import a mannequin. Delete the base mesh, create your own mesh, weight paint it to the rig.
start with something that visually fits the skeleton. And keep it simple. The goal here is to experiment with the mesh, not to get correct anatomical joint bends. 1 vertex at the bend will probably be enough for the test.

after you do that once, repeat the same process with your custom stubby mesh.
This time take your time on it, after weight painting it, you can export the version to the engine and use retargeting.

You can also try this:
Make a copy, delete the short stubby skeleton, bring in and parent to the ue4 skeleton (make sure you don’t overwrite the weight paint when you parent) then export to the engine and see how it moves on some default animations.
the skeleton being exactly the same won’t require you to go through retargeting. However the motions should still work almost identically - give or take the stray translation position issue.
the reason this isn’t ideal - before you ask - is that the phat assets will all have trouble since your head won’t be where the bone is, for instance. So ragdolls in this fashion aren’t impossibly, but prone to real errors - ei: no one should actually do this if not for experimental purposes.