It's.. so-so
The XMLs reference everything by file name or values. If you wanted to change eye texture, for example, there's an entry for that but you have to go into the game folder that contains the images, find one you like, and give the XML the file name of that texture. It's not quite as easy as just picking an eye like on Sovereign creation, but everything can do with that Sov creation tool you can do with the XML.
Here's an example NPC (this one isn't recruitable, but to give you an idea):
<
UnitType InternalName="NPC_RamisBlackstone">
<DisplayName>Ramis Blackstone</DisplayName>
<Quote>'We will dig deep and tap into the world's hidden riches.'</Quote>
<ModelPath>Gfx\HKB\Units\K_Male_Mesh_01.hkb</ModelPath>
<SkeletonPath>Gfx\HKB\Units\K_Male_Skeleton_01.hkb</SkeletonPath>
<EyeTexture>gfx\Eyes\blinks\eyeblink_m1_brwn.png</EyeTexture>
<AnimationPack>NoblemanAnimationPack</AnimationPack>
<MovementType>land</MovementType>
<BobbingFrequency>0.0000</BobbingFrequency>
<ClothPoseIndex>6</ClothPoseIndex>
<InfoCardBackground>BG4_Dark</InfoCardBackground>
<InfoCardBackgroundFlipped>0</InfoCardBackgroundFlipped>
<CanBeDesigned>0</CanBeDesigned>
<MovingSFX>TEMP_KnightMarching1</MovingSFX>
- <LevelMilestone InternalName="">
<UnitStat_Essence>15.0000</UnitStat_Essence>
<UnitStat_ExpToNextLevel>20.0000</UnitStat_ExpToNextLevel>
<UnitStat_Experience>50.0000</UnitStat_Experience>
<UnitStat_HitPoints>0</UnitStat_HitPoints>
<UnitStat_Sight>2.0000</UnitStat_Sight>
<UnitStat_ManaRegen>1.0</UnitStat_ManaRegen>
<UnitStat_Strength>16.0000</UnitStat_Strength>
<UnitStat_Wisdom>11.0000</UnitStat_Wisdom>
<UnitStat_Dexterity>14.0000</UnitStat_Dexterity>
<UnitStat_Intelligence>12.0000</UnitStat_Intelligence>
<UnitStat_Charisma>12.0000</UnitStat_Charisma>
<UnitStat_Constitution>11.0000</UnitStat_Constitution>
</LevelMilestone>
<Equipment>Sovereign_Padded_Vest</Equipment>
<Equipment>Muchant_Cloak_ID1</Equipment>
<Equipment>Sovereign_Yoren_Forearms</Equipment>
<Equipment>Noblemans_Pants_ID2</Equipment>
<Equipment>Yoren_Boots</Equipment>
<Equipment>Sovereign_Short_Hair_04</Equipment>
<Equipment>Sovereign_Warrior_Shirt_Pleated_White</Equipment>
<Equipment>WoodSpear1</Equipment>
<Equipment>K_Male_Head_01</Equipment>
<Color_Skin>176,122,74,255</Color_Skin>
<Color_Hair>79,48,20,255</Color_Hair>
<Color_Clothing1>95,54,50,255</Color_Clothing1>
<Color_Clothing2>50,50,50,255</Color_Clothing2>
<Texture_Skin>K_Male_Balding_Texture_01.png</Texture_Skin>
<UnitModelType>KingdomMale</UnitModelType>
<SelectedAbilityBonusOption>History_Miner</SelectedAbilityBonusOption>
<SelectedAbilityBonusOption>Sovereign_Ability_Logistics_Organized</SelectedAbilityBonusOption>
<SelectedAbilityBonusOption>Sovereign_Ability_Ally_Morale_Leader</SelectedAbilityBonusOption>
<SelectedAbilityBonusOption>Sovereign_Ability_Health_Hardy</SelectedAbilityBonusOption>
<SelectedAbilityBonusOption>Sovereign_Ability_Enemy_Morale_Intimidating</SelectedAbilityBonusOption>
<SelectedAbilityBonusOption>Sovereign_Ability_Battle_Retreat_Stubborn</SelectedAbilityBonusOption>
<SelectedAbilityBonusOption>Sovereign_Ability_Construction_Inefficient</SelectedAbilityBonusOption>
<SelectedAbilityBonusOption>Sovereign_Ability_Recruitment_Blunt</SelectedAbilityBonusOption>
<IsSovereign>0</IsSovereign>
</UnitType>