I believe you are struggling to link up the soldiers’ death events because you’re trying to call DetachFromActor in the parent blueprint, rather than the children. From the tooltip:
“Detaches the RootComponent of this Actor from any SceneComponent it is currently attached to.”
Below I have created a character blueprint since I assume that’s what you’re using for your individual soldiers:
Soldier BP
I call DetachFromActor from my OnDeath custom event, which you would replace with whatever you are using to manage your death system.
Gravity is faked by tracing down from above the spawn location, and setting the soldier’s relative location accordingly. I use a sphere trace with a radius equal to that of the character’s collision. When setting the relative offset I use
hit location + capsule half height - capsule radius
in order to account for the radius included in the sphere trace.
The variable SpawnPoint is a Scene Component Object Reference, with Instance Editable and Expose on Spawn both checked - this is so that I can pass in a reference to the appropriate scene component when I spawn the soldier actor from within the parent blueprint, as shown below:
Spawner BP
I hope this helps.
ADDENDUM
Upon further testing I discovered that detaching a soldier from the spawner caused it to teleport into the floor.
Adding a branch to prevent the soldier from performing the line trace, and setting the detachment rules to Keep World prevents any untoward behaviour, although I must admit the idea of the soldiers going literally six feet under upon death is rather amusing.