AnimalCrossbreedExtension - Vanilla-Expanded/VanillaExpandedFramework GitHub Wiki
AnimalCrossbreedExtension lets you modify the way animal crossbreed. By default, crossbreeding ALWAYS produces offspring of the same PawnKindDef as the mother. With this extension you can make the offspring be always the father's PawnKindDef, random, or even another different PawnKindDef than both prgenitors
public class AnimalCrossbreedExtension : DefModExtension
{        
    public FatherOrMother crossBreedKindDef;
    // If crossBreedKindDef is set to OtherPawnKind, one of those needs to be set too, or it will default to mother.
    // otherPawnKindsByWeight, if specified, is used first. It allows for a list of outcomes with different probability.
    public List<PawnKindDefWeight> otherPawnKindsByWeight;
    // otherPawnKind will be used if otherPawnKindsByWeight is unspecified (or fails for whatever reason)
    public PawnKindDef otherPawnKind;
}
public enum FatherOrMother
{
    AlwaysMother,  //The default, vanilla behaviour
    AlwaysFather,
    Random,
    OtherPawnKind
}As an example, cats and dogs in VE Animals now have:
<modExtensions>
	<li Class="VEF.AnimalBehaviours.AnimalCrossbreedExtension">
		<crossBreedKindDef>Random</crossBreedKindDef>
	</li>
</modExtensions>As for an example of OtherPawnKind, let's look into one that could potentially be applied to Thrumbo and Alpha Thrumbo:
<modExtensions>
	<li Class="VEF.AnimalBehaviours.AnimalCrossbreedExtension">
		<crossBreedKindDef>OtherPawnKind</crossBreedKindDef>
		
		<!-- A single option. If you don't specify the list then this will be the PawnKindDef that will be used. -->
		<otherPawnKind>Thrumbo</otherPawnKind>
		
		<!-- List of all possible outcomes. Using this list takes priority over otherPawnKind. -->
		<otherPawnKindsByWeight>
			<!-- The PawnKindDef. It will have the default weight of 1. -->
			<Thrumbo />
			<!-- The PawnKindDef with a specified weight. -->
			<!-- By making this weight much smaller we make alpha thrumbo less likely to be picked. Useful for having rare outcomes. -->
			<AlphaThrumbo>0.1</AlphaThrumbo>
		</otherPawnKindsByWeight>
	</li>
</modExtensions>Bear in mind you will still have to a <canCrossBreedWith> tag in the animals <race> or the whole thing will do nothing at all.