Sprite rendering order - Multisprite character ?

Situation is this:

I want to build 2D character out of multiple sprites (legs, shirt, heah, helm, weapon, etc.).
I want children obj to be rendered on top of parent (or opposite).

But if every piece has same settings (order, z pos, layer etc.) they are rendered in random order (changes if Unity is restarted or if sprite is changed).

But if I change for example layer settings for different pieces, they are rendered wrongly if multiple characters are close to each other.

How to render single character’s sprites so that they are like one - so that their order is correct when multiple characters are close to each other? Like this:

Sorting Group should help you out.