I just copied the code from the split dlc files to the mod files:
In characters.xml I added this:
Code: Select all
<add sel="/characters">
<!--<character id="TEMP_manager_split_random" group="split.manager">
<category tags="[npc, crew, officer, trader, commander, fighterpilot, manager, marine, masstraffic, watchdog, pilot, traderpilot]" faction="[split, freesplit, faction.player]" race="split"/>
<owner list="[split, freesplit]"/>
</character>-->
<character id="trader_split_random" group="split.trader">
<category tags="[crew, pilot, aipilot, traderpilot, masstraffic]" faction="[split, freesplit, fallensplit, court, faction.player]" race="split"/>
<skills>
<skill type="piloting" min="5" max="12"/>
<skill type="morale" max="12"/>
<skill type="engineering" min="5" max="6"/>
<skill type="management" exact="0"/>
<skill type="boarding" exact="0"/>
</skills>
<owner list="[split, freesplit, fallensplit, court]"/>
</character>
<character id="fighter_split_random" group="split.pilot">
<category tags="[crew, officer, pilot, aipilot, fighterpilot, commander, masstraffic, watchdog, regular]" faction="[split, freesplit, fallensplit, court, faction.player]" race="split"/>
<skills>
<skill type="piloting" min="4" max="15"/>
<skill type="morale" max="12"/>
<skill type="engineering" exact="0"/>
<skill type="management" exact="0"/>
<skill type="boarding" min="5" max="6"/>
</skills>
<owner list="[split, freesplit, fallensplit, court]"/>
</character>
<character id="manager_split_random" group="split.manager">
<category tags="[crew, officer, manager]" faction="[split, freesplit, fallensplit, court, faction.player]" race="split"/>
<skills>
<skill type="management" min="5" max="9"/>
<skill type="morale" max="12"/>
<skill type="piloting" max="3"/>
<skill type="engineering" min="2" max="6"/>
<skill type="boarding" exact="0"/>
</skills>
<owner list="[split, freesplit, fallensplit, court]"/>
</character>
<character id="factionrepresentative_split" group="split.factionrepresentative.male">
<category tags="[factionrepresentative]" faction="split" race="split"/>
<skills>
<skill type="management" min="10" max="15"/>
<skill type="morale" max="15"/>
<skill type="boarding" min="6" max="15"/>
<skill type="engineering" min="5" max="15"/>
<skill type="piloting" min="11" max="15"/>
</skills>
<!--TODO @Owen page-->
<page exact="10405"/>
<owner exact="split"/>
</character>
<character id="factionrepresentative_freesplit" group="split.factionrepresentative.female">
<category tags="[factionrepresentative]" faction="freesplit" race="split"/>
<skills>
<skill type="management" min="10" max="15"/>
<skill type="morale" max="15"/>
<skill type="boarding" min="6" max="15"/>
<skill type="engineering" min="5" max="15"/>
<skill type="piloting" min="11" max="15"/>
</skills>
<!--TODO @Owen page-->
<page exact="10403"/>
<owner exact="freesplit"/>
</character>
<character id="factionrepresentative_court" group="split.factionrepresentative.female">
<category tags="[factionrepresentative]" faction="court" race="split"/>
<skills>
<skill type="management" min="10" max="15"/>
<skill type="morale" max="15"/>
<skill type="boarding" min="6" max="15"/>
<skill type="engineering" min="5" max="15"/>
<skill type="piloting" min="11" max="15"/>
</skills>
<!--TODO @Owen page-->
<page exact="10403"/>
<owner exact="court"/>
</character>
<!-- additional character definitions with correct factions set since we can't use xml patching to insert data into an attribute, only replace which is not good enough when multiple extensions may be involved -->
<!-- regular -->
<character id="service_split_random_dlc_split" group="split.service">
<category tags="[crew, service, regular, recruitable]" faction="[split, freesplit, fallensplit, court]" race="split"/>
<skills>
<skill type="engineering" min="5" max="6"/>
<skill type="morale" max="5"/>
<skill type="piloting" max="3"/>
<skill type="management" exact="0"/>
<skill type="boarding" min="2" max="3"/>
</skills>
<owner list="[split, freesplit, fallensplit, court]"/>
</character>
<character id="marine_split_random_dlc_split" group="split.marine">
<category tags="[crew, marine, regular, recruitable]" faction="[split, freesplit, fallensplit, court]" race="split"/>
<skills>
<skill type="boarding" min="7" max="8"/>
<skill type="morale" min="3" max="8"/>
<skill type="engineering" exact="0"/>
<skill type="piloting" max="3"/>
<skill type="management" exact="0"/>
</skills>
<owner list="[split, freesplit, fallensplit, court]"/>
</character>
<character id="fighter_split_regular_random" group="split.pilot">
<category tags="[crew, officer, pilot, aipilot, fighterpilot, commander, masstraffic, watchdog, regular, recruitable]" faction="[split, freesplit, fallensplit, court, faction.player]" race="split"/>
<skills>
<skill type="piloting" min="5" max="7"/>
<skill type="morale" exact="7"/>
<skill type="engineering" exact="0"/>
<skill type="management" exact="0"/>
<skill type="boarding" min="1" max="3"/>
</skills>
<owner list="[split, freesplit, fallensplit, court]"/>
</character>
<character id="manager_split_regular_random" group="split.manager">
<category tags="[crew, officer, manager, regular, recruitable]" faction="[split, freesplit, fallensplit, court, faction.player]" race="split"/>
<skills>
<skill type="management" min="5" max="6"/>
<skill type="morale" max="5"/>
<skill type="piloting" max="3"/>
<skill type="engineering" exact="0"/>
<skill type="boarding" min="2" max="3"/>
</skills>
<owner list="[split, freesplit, fallensplit, court]"/>
</character>
<!-- passenger -->
<character id="passenger_split_random_dlc_split" group="split.passenger">
<category tags="[crew, passenger]" faction="[split, freesplit, fallensplit, court]" race="split"/>
<skills>
<skill type="boarding" exact="0"/>
<skill type="engineering" exact="0"/>
<skill type="management" max="6"/>
<skill type="morale" max="12"/>
<skill type="piloting" max="3"/>
</skills>
<owner list="[split, freesplit, fallensplit, court]"/>
</character>
<character id="prisoner_split_random_dlc_split" group="split.prisoner">
<category tags="[crew, prisoner]" faction="[split, freesplit, fallensplit, court]" race="split"/>
<skills>
<skill type="boarding" exact="0"/>
<skill type="engineering" exact="0"/>
<skill type="management" max="6"/>
<skill type="morale" max="12"/>
<skill type="piloting" max="3"/>
</skills>
<owner list="[split, freesplit, fallensplit, court]"/>
</character>
<!-- Rookies -->
<character id="service_split_random_rookie_dlc_split" group="split.service">
<category tags="[crew, service, rookie, recruitable]" faction="[split, freesplit, fallensplit, court]" race="split"/>
<skills>
<skill type="engineering" exact="1"/>
<skill type="morale" max="3"/>
<skill type="piloting" exact="0"/>
<skill type="management" exact="0"/>
<skill type="boarding" min="1" max="3"/>
</skills>
<owner list="[split, freesplit, fallensplit, court]"/>
</character>
<character id="marine_split_random_rookie_dlc_split" group="split.marine">
<category tags="[crew, marine, rookie, recruitable]" faction="[split, freesplit, fallensplit, court]" race="split"/>
<skills>
<skill type="boarding" min="2" max="4"/>
<skill type="morale" min="3" max="6"/>
<skill type="engineering" exact="0"/>
<skill type="piloting" exact="0"/>
<skill type="management" exact="0"/>
</skills>
<owner list="[split, freesplit, fallensplit, court]"/>
</character>
<character id="fighter_split_random_rookie" group="split.pilot">
<category tags="[crew, officer, pilot, aipilot, fighterpilot, commander, masstraffic, watchdog, rookie, recruitable]" faction="[split, freesplit, fallensplit, court, faction.player]" race="split"/>
<skills>
<skill type="piloting" min="1" max="5"/>
<skill type="morale" min="4" max="5"/>
<skill type="engineering" exact="0"/>
<skill type="management" exact="0"/>
<skill type="boarding" min="1" max="3"/>
</skills>
<owner list="[split, freesplit, fallensplit, court]"/>
</character>
<!-- Veteran -->
<character id="service_split_random_veteran_dlc_split" group="split.service">
<category tags="[crew, service, veteran]" faction="[split, freesplit, fallensplit, court]" race="split"/>
<skills>
<skill type="engineering" min="6" max="12"/>
<skill type="morale" min="6" max="12"/>
<skill type="piloting" min="3" max="9"/>
<skill type="management" exact="0"/>
<skill type="boarding" exact="0"/>
</skills>
<owner list="[split, freesplit, fallensplit, court]"/>
</character>
<character id="marine_split_random_veteran_dlc_split" group="split.marine">
<category tags="[crew, marine, veteran]" faction="[split, freesplit, fallensplit, court]" race="split"/>
<skills>
<skill type="boarding" min="6" max="12"/>
<skill type="morale" min="6" max="12"/>
<skill type="engineering" exact="0"/>
<skill type="piloting" min="3" max="9"/>
<skill type="management" exact="0"/>
</skills>
<owner list="[split, freesplit, fallensplit, court]"/>
</character>
<!-- Elite -->
<character id="service_split_random_elite_dlc_split" group="split.service">
<category tags="[crew, service, elite]" faction="[split, freesplit, fallensplit, court]" race="split"/>
<skills>
<skill type="engineering" min="12"/>
<skill type="morale" min="12"/>
<skill type="piloting" min="6" max="12"/>
<skill type="management" exact="0"/>
<skill type="boarding" exact="0"/>
</skills>
<owner list="[split, freesplit, fallensplit, court]"/>
</character>
<character id="marine_split_random_elite_dlc_split" group="split.marine">
<category tags="[crew, marine, elite]" faction="[split, freesplit, fallensplit, court]" race="split"/>
<skills>
<skill type="boarding" min="12"/>
<skill type="morale" min="12"/>
<skill type="engineering" exact="0"/>
<skill type="piloting" min="3" max="9"/>
<skill type="management" exact="0"/>
</skills>
<owner list="[split, freesplit, fallensplit, court]"/>
</character>
<character id="platform_trader_split_random_dlc_split" group="split.trader">
<category tags="[trader, licencetrader]" faction="[split, freesplit, fallensplit, court]" race="split"/>
<skills>
<skill type="management" min="9" max="12"/>
<skill type="morale" max="12"/>
<skill type="piloting" max="3"/>
<skill type="engineering" max="1"/>
<skill type="boarding" exact="0"/>
</skills>
<owner list="[split, freesplit, fallensplit, court]"/>
<stock ref="'default_trader'" />
</character>
<character id="ship_trader_split_random_dlc_split" group="split.shiptrader">
<category tags="[trader, shiptrader]" faction="[split, freesplit, fallensplit, court]" race="split" />
<skills>
<skill type="management" min="9" max="12"/>
<skill type="morale" max="12"/>
<skill type="piloting" max="3"/>
<skill type="engineering" max="1"/>
<skill type="boarding" exact="0"/>
</skills>
<owner list="[split, freesplit, fallensplit, court]"/>
<stock ref="'default_trader'" />
</character>
<character id="shadyguy_split_random_dlc_split" group="split.shadyguy">
<category tags="[shadyguy]" faction="[split, freesplit, fallensplit, court]" race="split" />
<skills>
<skill type="piloting" min="5" max="12"/>
<skill type="morale" max="12"/>
<skill type="engineering" exact="0"/>
<skill type="management" min="1" max="6"/>
<skill type="boarding" exact="0"/>
</skills>
<owner list="[split, freesplit, fallensplit, court]" />
<stock ref="'default_shadyguy'" />
</character>
<!-- Casually clothed platform NPCs -->
<character id="split_casual_dlc_split" group="split.civilian">
<category tags="[casual]" faction="[split, freesplit, fallensplit, court]" race="split"/>
<skills>
<skill type="morale" max="1"/>
<skill type="piloting" max="3"/>
<skill type="engineering" exact="0"/>
<skill type="management" exact="0"/>
<skill type="boarding" min="1" max="2"/>
</skills>
<owner list="[split, freesplit, fallensplit, court]"/>
</character>
</add>
<!--
#############
Patching of Split character definitions to reference the mixed gender groups as the base game references the female groups
#############-->
<!-- regular -->
<replace sel="/characters/character[@id='service_split_random']/@group">split.service</replace>
<replace sel="/characters/character[@id='marine_split_random']/@group">split.marine</replace>
<replace sel="/characters/character[@id='passenger_split_random']/@group">split.passenger</replace>
<replace sel="/characters/character[@id='prisoner_split_random']/@group">split.prisoner</replace>
<!-- Rookies -->
<replace sel="/characters/character[@id='service_split_random_rookie']/@group">split.service</replace>
<replace sel="/characters/character[@id='marine_split_random_rookie']/@group">split.marine</replace>
<!-- Veteran -->
<replace sel="/characters/character[@id='service_split_random_veteran']/@group">split.service</replace>
<replace sel="/characters/character[@id='marine_split_random_veteran']/@group">split.marine</replace>
<!-- Elite -->
<replace sel="/characters/character[@id='service_split_random_elite']/@group">split.service</replace>
<replace sel="/characters/character[@id='marine_split_random_elite']/@group">split.marine</replace>
<!-- Traders -->
<replace sel="/characters/character[@id='ship_trader_split_random']/@group">split.shiptrader</replace>
<replace sel="/characters/character[@id='shadyguy_split_random']/@group">split.shadyguy</replace>
And in charactergroups.xml I replaced
Code: Select all
<character name="split.generic.male">
<!--<select macro="character_split_male_generic_01_macro" />-->
<!--TODO @Owen better handle the basegame male split case-->
<select macro="character_split_female_generic_01_macro" />
</character>
Code: Select all
<character name="split.generic.male">
<select macro="character_split_male_generic_01_macro" />
<!--TODO @Owen better handle the basegame male split case-->
<!-- <select macro="character_split_female_generic_01_macro" /> -->
</character>
Code: Select all
<add sel="/characters">
<!--<character name="split.trader">
<select macro="character_split_male_generic_02_macro" />
</character>
<character name="split.pilot">
<select macro="character_split_male_generic_02_macro" />
</character>
<character name="split.manager">
<select macro="character_split_male_generic_02_macro" />
</character>-->
<character name="split.factionrepresentative">
<select character="split.factionrepresentative.male" />
<select character="split.factionrepresentative.female" />
</character>
<character name="split.factionrepresentative.male">
<select character="split.manager.male"/>
</character>
<character name="split.factionrepresentative.female">
<select character="split.manager.female"/>
</character>
</add>
<remove sel="/characters/character[@name='split.generic.male']/select[@macro='character_split_female_generic_01_macro']"/>
<add sel="/characters/character[@name='split.generic.male']">
<select macro="character_split_male_generic_02_macro" />
<select macro="character_split_male_generic_03_macro" />
<select macro="character_split_male_generic_04_macro" />
<select macro="character_split_male_generic_05_macro" />
<select macro="character_split_male_generic_06_macro" />
<select macro="character_split_male_generic_07_macro" />
</add>
<replace sel="/characters/character[@name='split.generic.female']/select/@macro">character_split_female_generic_02_macro</replace>
<add sel="/characters/character[@name='split.generic.female']">
<select macro="character_split_female_generic_03_macro" />
<select macro="character_split_female_generic_04_macro" />
<select macro="character_split_female_generic_05_macro" />
</add>