Currently we don't replicate UMilitaryUnit.Name since it's expensive on large maps. But we can derive the name on the client:
[x] Mark USoldierMilitaryUnit.Role Replicated and add it to GetLifetimeReplicatedProps
[x] Migrate BP_MilitaryUnitTreeEntryWidget GetUnitDisplayName function to be a C++ function on UMilitaryUnit. Instead of it reading the UMilitaryUnit.Name property it should derive the name. You can see how we generate the name for units, soldiers, medics, and commanders in RecursivelyCreateUnits.
[x] To verify open map in multiplayer and confirm names now show in the tree on left side.
Currently we don't replicate UMilitaryUnit.Name since it's expensive on large maps. But we can derive the name on the client: