Step 2: BFM editting
Duplicate Codename_Adult_F.bfm and Codename_Adult_M.bfm two times. (If the Adult_M.bfm is not present, you only have to copy the Adult_F.bfm)
Name the copies: Codename_Adult_F_1.bfm, Codename_Adult_F_2.bfm, Codename_Adult_M_1.bfm and Codename_Adult_M_2.bfm.
In the bfms you've to change the this (example from Adult_F_1.bfm)
<BFM modelname="entities\units\animals\Codename\Codename_Adult_F.nif">
to
<BFM modelname="entities\units\animals\Codename\Codename_Adult_F_1.nif">
And <Graph name="Codename_Adult_F" version="1">
to
<Graph name="Codename_Adult_F_1" version="1">
Step 3: TSK editting
Paste the following tasks in the .tsk
<BFAITaskTemplate Name="ModelVariants" TaskDelayMin="0" TaskDelayMax="0" UniqueID="Codename:ModelVariants">
<BFAICreateData>
<Subjects>
<Codename_Base/>
<Qualifiers_AND inWater_OR_onLand="true" lifespan="GE 0.000000000000000000000000000000001"/>
</Subjects>
<Targets>
<self/>
</Targets>
<Objects/>
</BFAICreateData>
<BFAIEvalData fixedScore="2000"/>
<BFBehExecTask>
<BFBehSendToken>
<BFAITokenList>
<BFAIToken Name="t_Agemodel" GiveTo="subject" Timeout="59" Chance="100" Reconsider="true"/>
</BFAITokenList>
</BFBehSendToken>
</BFBehExecTask>
<BFAICompletionData/>
</BFAITaskTemplate>
<BFAITaskTemplate Name="Age_FMod1" UniqueID="Codename:Age_FMod1">
<BFAICreateData>
<Subjects>
<Codename_Base_F/>
<Qualifiers inWater_OR_onLand="true"/>
</Subjects>
<Targets>
<self/>
</Targets>
<Objects>
<t_Agemodel/>
</Objects>
</BFAICreateData>
<BFAIEvalData fixedScore="2000"/>
<BFBehExecTask>
<BFBehPlaySet behSet="Age_BaseF"/>
</BFBehExecTask>
<BFAICompletionData/>
</BFAITaskTemplate>
<BFAITaskTemplate Name="Age_MMod1" UniqueID="Codename:Age_MMod1">
<BFAICreateData>
<Subjects>
<Codename_Base_M/>
<Qualifiers inWater_OR_onLand="true"/>
</Subjects>
<Targets>
<self/>
</Targets>
<Objects>
<t_Agemodel/>
</Objects>
</BFAICreateData>
<BFAIEvalData fixedScore="2000"/>
<BFBehExecTask>
<BFBehPlaySet behSet="Age_BaseM"/>
</BFBehExecTask>
<BFAICompletionData/>
</BFAITaskTemplate>
Paste them underneath a </BFAITaskTemplate>, so they don't mess up another task.
Now you have to find the tasks that makes youngs grow into adults. These are usually located underneath the Puberty task and called Age_F and Age_M.
The BFBehExecTask of the male growing up task usually looks like this:
<BFBehExecTask>
<ZTBehMorph morphTargetEntityType="Codename_Adult_F" morphScale="true" morphPeriod="10" initScale="0.4"/>
</BFBehExecTask>
and should be replaced with this:
<BFBehExecTask>
<BFBehPlaySet behSet="GrowAdult_M"/>
</BFBehExecTask>
Similarly, the female BFBehExec task usually looks like this:
<BFBehExecTask>
<ZTBehMorph morphTargetEntityType="Codename_Adult_F" morphScale="true" morphPeriod="10" initScale="0.4"/>
</BFBehExecTask>
and should be replaced with:
<BFBehExecTask>
<BFBehPlaySet behSet="GrowAdult_F"/>
</BFBehExecTask>
Step 4: BEH editting
Paste the following code in the .beh, directly underneath <BehaviorSets>.
<Age_BaseM>
<subjects>
<Codename_Base_M/>
</subjects>
<behaviors>
<BFBehRandomSet>
<randomSets>
<BaseM weight="34"/>
<BaseM1 weight="33"/>
<BaseM2 weight="33"/>
</randomSets>
</BFBehRandomSet>
</behaviors>
</Age_BaseM>
<BaseM>
<subjects>
<Codename_Base_M/>
</subjects>
<behaviors>
<ZTBehMorph morphTargetEntityType="Codename_Adult_M" morphScale="false" morphPeriod="0.00000000001" initScale="0.4"/>
</behaviors>
</BaseM>
<BaseM1>
<subjects>
<Codename_Base_M/>
</subjects>
<behaviors>
<ZTBehMorph morphTargetEntityType="Codename_Adult_M_1" morphScale="false" morphPeriod="0.00000000001" initScale="0.4"/>
</behaviors>
</BaseM1>
<BaseM2>
<subjects>
<Codename_Base_M/>
</subjects>
<behaviors>
<ZTBehMorph morphTargetEntityType="Codename_Adult_M_2" morphScale="false" morphPeriod="0.00000000001" initScale="0.4"/>
</behaviors>
</BaseM2>
<Age_BaseF>
<subjects>
<Codename_Base_F/>
</subjects>
<behaviors>
<BFBehRandomSet>
<randomSets>
<BaseF weight="34"/>
<BaseF1 weight="33"/>
<BaseF2 weight="33"/>
</randomSets>
</BFBehRandomSet>
</behaviors>
</Age_BaseF>
<BaseF>
<subjects>
<Codename_Base_F/>
</subjects>
<behaviors>
<ZTBehMorph morphTargetEntityType="Codename_Adult_F" morphScale="false" morphPeriod="0.00000000001" initScale="0.4"/>
</behaviors>
</BaseF>
<BaseF1>
<subjects>
<Codename_Base_F/>
</subjects>
<behaviors>
<ZTBehMorph morphTargetEntityType="Codename_Adult_F_1" morphScale="false" morphPeriod="0.00000000001" initScale="0.4"/>
</behaviors>
</BaseF1>
<BaseF2>
<subjects>
<Codename_Base_F/>
</subjects>
<behaviors>
<ZTBehMorph morphTargetEntityType="Codename_Adult_F_2" morphScale="false" morphPeriod="0.00000000001" initScale="0.4"/>
</behaviors>
</BaseF2>
Now we're gonna add the coding that makes babies grow into one of the model variants.
Paste this code in the beh file:
<GrowAdult_F>
<subjects>
<Codename_Young_F/>
</subjects>
<behaviors>
<BFBehRandomSet>
<randomSets>
<Grow_F0 weight="34"/>
<Grow_F1 weight="33"/>
<Grow_F2 weight="33"/>
</randomSets>
</BFBehRandomSet>
</behaviors>
</GrowAdult_F>
<Grow_F0>
<subjects>
<Codename_Young_F/>
</subjects>
<behaviors>
<ZTBehMorph morphTargetEntityType="Codename_Adult_F" morphScale="true" morphPeriod="3600" initScale="0.442"/>
</behaviors>
</Grow_F0>
<Grow_F1>
<subjects>
<Codename_Young_F/>
</subjects>
<behaviors>
<ZTBehMorph morphTargetEntityType="Codename_Adult_F_1" morphScale="true" morphPeriod="3600" initScale="0.442"/>
</behaviors>
</Grow_F1>
<Grow_F2>
<subjects>
<Codename_Young_F/>
</subjects>
<behaviors>
<ZTBehMorph morphTargetEntityType="Codename_Adult_F_2" morphScale="true" morphPeriod="3600" initScale="0.442"/>
</behaviors>
</Grow_F2>
<GrowAdult_M>
<subjects>
<Codename_Young_M/>
</subjects>
<behaviors>
<BFBehRandomSet>
<randomSets>
<Grow_M0 weight="34"/>
<Grow_M1 weight="33"/>
<Grow_M2 weight="33"/>
</randomSets>
</BFBehRandomSet>
</behaviors>
</GrowAdult_M>
<Grow_M0>
<subjects>
<Codename_Young_M/>
</subjects>
<behaviors>
<ZTBehMorph morphTargetEntityType="Codename_Adult_M" morphScale="true" morphPeriod="3600" initScale="0.442"/>
</behaviors>
</Grow_M0>
<Grow_M1>
<subjects>
<Codename_Young_M/>
</subjects>
<behaviors>
<ZTBehMorph morphTargetEntityType="Codename_Adult_M_1" morphScale="true" morphPeriod="3600" initScale="0.442"/>
</behaviors>
</Grow_M1>
<Grow_M2>
<subjects>
<Codename_Young_M/>
</subjects>
<behaviors>
<ZTBehMorph morphTargetEntityType="Codename_Adult_M_2" morphScale="true" morphPeriod="3600" initScale="0.442"/>
</behaviors>
</Grow_M2>
Now you're done. Let me know if you don't understand something!