General Settings - erdelf/AlienRaces GitHub Wiki

All of the settings specified in this page go inside the <generalSettings> tag of your race Def's <alienRace> properties.

<AlienRace.ThingDef_AlienRace>
  <alienRace>
    <generalSettings>
      <!-- General settings go here. -->
    </generalSettings>
  </alienRace>
</AlienRace.ThingDef_AlienRace>

Unless explicitly specified, all settings are OPTIONAL. It is strongly recommended that you omit any setting you do not actually need, especially if you are inheriting your race Def from HumanRace.

Basic Settings

Some basic settings for your race will be set here.

Setting Default Description
<maleGenderProbability>0.3</maleGenderProbability>
0.5 Sets the gender balance of your race. (For example, a maleGenderProbability of 0.3 means that 30% of your randomly generated race members will be male and 70% will be female.)
<growthAges>
  <li>7</li>
  <li>10</li>
  <li>13</li>
</growthAges>
7, 10, 13 Ages when a child will experience a growth moment.
The lifeStageWorkSettings ages need to match one of these ages, or growth will be reset at these ages too.
<forcedRaceTraitEntries>
  <!-- 25% chance to apply Sanguine to males, 10% chance to apply to females -->
  <li>
    <defName Degree="2">NaturalMood</defName>
    <chance>50</chance>
    <commonalityMale>50</commonalityMale>
    <commonalityFemale>20</commonalityFemale>
  </li>
  <!-- 50% chance to apply Hard Worker or Industrious -->
  <li>
    <options>
      <li>
        <defName Degree="1">Industriousness</defName>
      </li>
      <li>
        <defName Degree="2">Industriousness</defName>
      </li>
    </options>
    <count>1</count>
    <chance>50</chance>
  </li>
  <!-- flat 50% chance to apply Beautiful -->
  <li>
    <defName Degree="2">Beauty</defName>
    <chance>50</chance>
  </li>
  <!-- flat 50% chance to apply Gay (not a spectrum trait) -->
  <li>
    <defName>Gay</defName>
    <chance>50</chance>
  </li>
  <!-- always apply Psychopath -->
  <li>
    <defName>Psychopath</defName>
  </li>
</forcedRaceTraitEntries>
(None) RimWorld 1.5+:

Adds forced traits to your race, optionally with a specified chance and/or gender commonality. Note that gender commonality acts as a "second roll" during generation; if you have chance set to 50 and maleCommonality set to 50, then there will be a 25% chance that male members of your race get the specified trait.

Forced traits do not count towards the regular trait limit for your race.

Multiple entries belonging to the same spectrum trait will be rolled sequentially, with later entries being ignored if an earlier roll succeeds.
<forcedRaceTraitEntries>
  <li>
    <defName>NaturalMood</defName>
    <degree>2</degree>
    <chance>50</chance>
    <commonalityMale>50</commonalityMale>
    <commonalityFemale>20</commonalityFemale>
  </li>
  <li>
    <defName>Nerves</defName>
    <degree>2</degree>
    <chance>50</chance>
    <commonalityMale>50</commonalityMale>
  </li>
  <li>
    <defName>Beauty</defName>
    <degree>2</degree>
    <chance>50</chance>
  </li>
  <li>
    <defName>Gay</defName>
    <chance>50</chance>
  </li>
  <li>
    <defName>Psychopath</defName>
  </li>
</forcedRaceTraitEntries>
(None) RimWorld 1.4 and earlier:

HAR for RimWorld 1.4 and earlier have a more explicit notation for trait degrees and do not support count-selection.
<disallowedTraits>
  <!-- 50% chance to disallow Staggeringly Ugly -->
  <li>
    <defName Degree="-2">Beauty</defName>
    <chance>50</chance>
  </li>
  <!-- disallow Pyromaniac -->
  <li>
    <defName>Pyromaniac</defName>
  </li>
</disallowedTraits>
(None) Disallows traits from generating on your race. Uses the same syntax as forcedRaceTraitEntries.

By default, completely disallows the specified trait; if a chance is specified, then it will effectively reduce the commonality of that trait for your race. For example, if you specify a chance of 10 for a trait, then it will only generate 1/10th as often as it would on humans.
<traitCount>2~3</traitCount>
<additionalTraits>1~5</additionalTraits>
2~3
0
Changes the number of traits that members of your race will generate with.

Note that additionalTraits is effectively redundant as the two ranges are simply added together to determine the number of traits your race generates with.
<immuneToAge>true</immuneToAge>
false Disables age-related ailments from affecting your race, such as Bad Back, Frail, and Dementia. Specifically, this disables HediffGiver_Birthday subclasses from running against your race.
<chemicalSettings>
  <li>
    <chemical>Smokeleaf</chemical>
    <reactions>
      <li Class="IngestionOutcomeDoer_GiveHediff">
        <hediffDef>LungFailure</hediffDef>
        <severity>0.75</severity>
      </li>
    </reactions>
  </li>
  <li>
    <chemical>Luciferium</chemical>
    <ingestible>false</ingestible>
  </li>
</chemicalSettings>
(None) Lets you alter the way your race members react to certain drugs by adding IngestionOutcomeDoer nodes or disable certain drugs from being taken by your race at all. Note that refers to ChemicalDef defNames such as Psychite or Alcohol and not ingestible ThingDefs such as Yayo or Beer.
<validBeds>
  <li>AlienRaceDefName</li>
</validBeds>
(None) If set, makes it so that members of your race can only sleep on the specified beds. By default (or if left empty), your race members can sleep on any bed that is also valid for humans.
<maxDamageForSocialfight>6</maxDamageForSocialfight>
INTMAX Allows you to limit the amount of melee damage a member of your race can inflict with a single attack in a social fight. Useful for races with powerful unarmed attacks, as ones significantly more powerful than human attacks might inflict serious damage in a social fight.
<allowHumanBios>true</allowHumanBios>
false Allows you to enable human PawnBio entries to be used for your race. These are the "preset" or "backer" pawns that are included in the vanilla game that represent specific characters created by Ludeon staff and early backers. May not work well if your race uses all custom backstories.
<immuneToXenophobia>true</immuneToXenophobia>
false If set to true, then humans will not have xenophobic or xenophilic thoughts towards members of your race (from the Xenophobia and Xenophilia traits, respectively).
<notXenophobistTowards>
  <li>OtherAlien</li>
  <li>AnotherAlien</li>
</notXenophobistTowards>
(None) Allows you to specify races that your race will not consider a different race for Xenophobia or Xenophilia.

Generally used to designate genetically similar subraces.
<minAgeForAdulthood>315</minAgeForAdulthood>
20 Sets the minimum age for members of your race to be eligible for an adulthood backstory.
<humanRecipeImport>true</humanRecipeImport>
false If set to true, copies all human surgery recipes to your race.

Note that if you inherited your race Def from HumanRace, then your race will already inherit the recipes specifically listed in the Human ThingDef unless you specifically set Inherit="False" on your race's recipe list; enabling this setting will also copy indirectly added recipes such as those for adding bionics and implants.
<ageSkillFactorCurve>
  <points>
    <li>(3, 0.2)</li>
    <li>(18, 1)</li>
    <li>(35, 1)</li>
    <li>(60, 1.6)</li>
  </points>
</ageSkillFactorCurve>
As shown The factor curve for skills on pawn generation by age.
<lovinIntervalHoursFromAge>
  <points>
    <li>(16, 1.5)</li>
    <li>(22, 1.5)</li>
    <li>(30, 4)</li>
    <li>(50, 12)</li>
    <li>(75, 36)</li>
  </points>
</lovinIntervalHoursFromAge>
As Shown RimWorld 1.4 Only:

Allows you to customize the value curve for how often members of your race will engage in romantic interactions, where the left side value is the age in years and the right side is the mean time between interactions in hours. For example, using the default human curve as shown, a pawn with an age of 26 will have a midpoint value between 1.5 and 4.0 of approximately 3.25.
<canLayDown>false</canLayDown>
true Determines whether your race sleeps on beds at all. If set to false, then your race members will sleep upright instead.
<factionRelations>
  <li>
    <factions>
      <li>FactionExample</li>
    </factions>
    <goodwill>
      <min>-100</min>
      <max>100</max>
    </goodwill>
  </li>
</factionRelations>
(None) Allows you to set a custom starting goodwill for a faction using a member of your race as a basemember. The default behavior for factions without permanentEnemy or naturalEnemy set will be set to a random starting goodwill.
<corpseCategory>CategoryDef</corpseCategory>
alienCorpseCategory Sets the ThingCategoryDef that corpses of your race should be stored under. Defaults to the HAR-added alienCorpseCategory.

Abilities

RimWorld 1.4+ only - You can add vanilla-compatible AbilityDef entries to your race by using the following syntax:

<AlienRace.ThingDef_AlienRace>
  <alienRace>
    <generalSettings>
      <abilities>
    
        <!-- always added -->
        <li>FireSpew</li>
    
        <!-- 50% chance of being added to any given pawn -->
        <li>
          <defName>FoamSpray</defName>
          <chance>50</chance>
        </li>
    
        <!-- randomly select 2 distinct options -->
        <li>
          <options>
            <li>AcidSpray</li>
            <li>FireBurst</li>
            <li>AnimalWarcall</li>
          </options>
          <count>2</count>
        </li>
    
        <!-- always added for male pawns -->
        <li>
          <defName>MyRace_CustomMaleAbility</defName>
          <commonalityFemale>0</commonalityFemale>
        </li>
    
        <!-- 75% chance of adding both for female pawns -->
        <li>
          <options>
            <li>MyRace_CustomFemaleAbilityA</li>
            <li>MyRace_CustomFemaleAbilityB</li>
          </options>
          <commonalityFemale>75</commonalityFemale>
          <commonalityMale>0</commonalityMale>
        </li>
    
      </abilities>
    </generalSettings>
  </alienRace>
</AlienRace.ThingDef_AlienRace>

Similar to Extension Graphics, entries can also be nested for complex logic:

<AlienRace.ThingDef_AlienRace>
  <alienRace>
    <generalSettings>
      <abilities>
  
        <li>
          <!-- always added -->
          <defName>FoamSpray</defName>
          <chance>100</chance>
          <options>
            <li>
              <!-- 50% chance that two of the following are added -->
              <chance>50</chance>
              <options>
                <li>AcidSpray</li>
                <li>FireBurst</li>
                <li>AnimalWarcall</li>
              </options>
              <count>2</count>
            </li>
            <!-- always added -->
            <li>FireSpew</li>
          </options>
          <count>2</count>
        </li>
  
      </abilities>
    </generalSettings>
  </alienRace>
</AlienRace.ThingDef_AlienRace>

Alien Part Generator

These settings let you customize various graphical aspects of your race.

All tags in this section go into the alienPartGenerator tag, which itself is inside the generalSettings tag.

<AlienRace.ThingDef_AlienRace>
  <alienRace>
    <generalSettings>
      <alienPartGenerator>
        <!-- Alien part generator settings go here -->
      </alienPartGenerator>
    </generalSettings>
  </alienRace>
</AlienRace.ThingDef_AlienRace>

Color Channels

Sets the color color channels for your race. Color values for each channel are chosen upon pawn generation, so they will be consistent for that pawn throughout its existence.

NOTE: As of RimWorld v1.4, skin and hair color genes take precedence over color channels. As such, if you want to use color channels for skin and hair, you need to disable those genes for your race. See Race Restrictions for more details.

<colorChannels>
  <li>
    <name>skin</name>
    <first Class="AlienRace.ColorGenerator_SkinColorMelanin">
      <minMelanin>0</minMelanin>
      <maxMelanin>1</maxMelanin>
    </first>
    <second Class="AlienRace.ColorGenerator_CustomAlienChannel">
      <colorChannel>skin_1</colorChannel>
    </second>
  </li>
  <li>
    <name>hair</name>
    <first Class="ColorGenerator_Options">
      <options>
        <li>
          <weight>10</weight>
          <only>RGBA(0.000, 1.000, 0.000, 1.000)</only>
        </li>
        <li>
          <weight>10</weight>
          <only>RGBA(0, 128, 255, 255)</only>
        </li>
        <li>
          <weight>10</weight>
          <only>RGBA(0.000, 0.000, 1.000, 1.000)</only>
        </li>
      </options>
    </first>
    <second Class="ColorGenerator_Single">
      <color>RGBA(128, 255, 0, 255)</color>
    </second>
  </li>
</colorChannels>

The second part of each channel is not used by default, but is still required. Setting it to white is recommended if you don't intend to use it.

By default, the four color channels are automatically created for vanilla compatibility:

Channel Value
base No color application (white)
skin Skin color (melanin-based)
hair Hair color (vanilla palette)
tattoo Tattoo color (vanilla palette)
favorite RimWorld v1.4 and later:
Favorite color (vanilla palette)
The second channel contains the original color if the favorite color is changed by mods.
ideo RimWorld v1.5 and later:
Ideoligion colors
The second channel contains the ideoligion apparel color.
mech RimWorld v1.5 and later:
Faction Mech colors

Adding a list entry using one of the above names will override it. Note that if you inherited your race from HumanRace, it will inherit a list entry for skin already; if you want to specify your own, then you should add Inherit="False" to the colorChannels tag.

Custom ColorGenerators

If using any of the default ColorGenerators, the framework will use either all specific options or a limited number of range samples between and to populate Ideology's styling station as color options. If you want to add additional options, you can create a custom ColorGenerator in C# using the following interface:

public interface IAlienChannelColorGenerator
{
  public List<Color> AvailableColors(Pawn pawn);

  public List<ColorGenerator> AvailableGenerators(Pawn pawn);
}

You can see an example of the interface in use here.

Additional Settings

Setting Default Description
<borderScale>2.0</borderScale>
1.0 RimWorld v1.3 and later

Sets the physical dimensions of the pawn atlas (render cache) for your race. Increasing this is only necessary if you have very large drawSizes or BodyAddons that get clipped off.

Note that if you are using HD Pawn Rendering, Vanilla Expanded Framework, or similar mods to disable the pawn render cache, then this setting will have no effect (but also won't be necessary).
<atlasScale>2</atlasScale>
1 RimWorld v1.3 and later

Sets the resolution scale of the pawn atlas (render cache). Increasing this value will reduce the blurriness of pawns, especially when you are using mods such as Camera+ to zoom in further than vanilla would normally allow. However, this will also result in an exponential increase in the amount of memory taken up by your pawns.

Note that if you are using HD Pawn Rendering, Vanilla Expanded Framework, or similar mods to disable the pawn render cache, then this setting will have no effect (but also won't be necessary).
<headTypes>
  <li>Male_AverageNormal</li>
  <li>Male_AverageWide</li>
  <li>Male_AveragePointy</li>
  <li>Male_NarrowNormal</li>
  <li>Male_NarrowPointy</li>
  <li>Male_NarrowWide</li>
  <li>Female_AverageNormal</li>
  <li>Female_AverageWide</li>
  <li>Female_AveragePointy</li>
  <li>Female_NarrowNormal</li>
  <li>Female_NarrowPointy</li>
  <li>Female_NarrowWide</li>
</headTypes>
(See Desc.) RimWorld v1.4 and later

headTypes determines the HeadTypeDefs that are allowed for your race.

If you inherit your race from BasePawn, then you must provide this list or your race will spawn without heads. If you inherit from HumanRace, your race will inherit the default values shown; if you do not want all of these values, then you can set the Inherit attribute to false:
<headTypes Inherit="False">
  <li>MyCustomHeadTypeDef</li>
</headTypes>
<aliencrowntypes>
  <li>Average_Normal</li>
  <li>Average_Wide</li>
  <li>Average_Pointy</li>
  <li>Narrow_Normal</li>
  <li>Narrow_Pointy</li>
  <li>Narrow_Wide</li>
</aliencrowntypes>
(See Desc.) RimWorld v1.3 and earlier only - this has been replaced by headTypes after 1.4

Crown types are the head shapes that are used by your race. You can use any of the six vanilla head shapes or define your own custom types. Crown types are arbitrary strings, not references to any Def. However, if a texture matching the specified type is not found, it will cause errors and crash the pawn renderer.

If you inherit your race from BasePawn, then aliencrowntypes will default to Average_Normal only. If you inherit from HumanRace, your race will inherit the six vanilla crown types; if you do not want all of these values, then you can set the Inherit attribute to false:
<aliencrowntypes Inherit="False">
  <li>MyCustomCrownType</li>
</aliencrowntypes>
<alienbodytypes>
  <li>Male</li>
  <li>Female</li>
  <li>Thin</li>
  <li>Hulk</li>
  <li>Fat</li>
</alienbodytypes>
(As Shown) RimWorld v1.3 and earlier only - this has been renamed bodyTypes after 1.4

Specifies the body shapes that can be used by your race. These values are the defNames of BodyTypeDefs. Vanilla body types can be seen in Core/Defs/Misc/BodyTypeDefs.

You can create custom body shapes by defining your own BodyTypeDefs and listing them here.

As with crown types, if you inherited your race from HumanRace, then you will also inherit all five vanilla body types (as well as any modded body types that are patched into humans). In order to prevent this, you need to use Inherit="False" (see above).
<useGenderedHeads>false</useGenderedHeads>
true RimWorld 1.3 and earlier only - This has been removed in 1.4. To use non-gendered heads, you can either use Extension Graphics to override gendered textures or create custom HeadTypeDefs with no gender lock.

If set to false, uses the same textures for male and female pawn heads. Vanilla humans use gendered heads; if you disable this, then you will need to provide custom head textures as all vanilla head textures are gendered.

<useGenderedBodies>true</useGenderedBodies>
false RimWorld 1.3 and earlier only - This has been removed in 1.4. To use gendered bodies, you can use Extension Graphics to specify gendered textures.

If set to true, will use male and female texture variants for the pawn body. Vanilla humans do not use gendered bodies; if you enable this, then you will need to provide custom body textures as all vanilla body textures are non-gendered.

<customDrawSize>(1.5, 1.5)</customDrawSize>
<customHeadDrawSize>
(1.25, 1.25)
</customHeadDrawSize>
<customPortraitDrawSize>
(0.8, 0.8)
</customPortraitDrawSize>
<customPortraitHeadDrawSize>
(0.7, 0.7)
</customPortraitHeadDrawSize>
(1.0, 1.0) Allow you to scale the size of your race's pawn heads and bodies smaller or larger. Headwear and apparel will always match the drawSize of the head and body, respectively.

Note that changing the drawSize of heads or bodies may cause rendering misalignment due to the fact that the scale is done with the center of the texture as the anchor point. See headOffset below.
<customFemaleDrawSize />
<customFemaleHeadDrawSize />
<customFemalePortraitDrawSize />
<customFemalePortraitHeadDrawSize />
(1.0, 1.0) Rimworld v1.4 and later only

Same as the above values, but specifically for female pawns of your race.
<headOffset>(0.25, 0.15)</headOffset>
(0.0, 0.0) Changes the draw position of the head relative to the body, usually used to correct alignment issues caused by changing head or body drawSize.
<headFemaleOffset>(0.15, 0.25)</headFemaleOffset>
(0.0, 0.0) Rimworld v1.4 and later only

Changes the draw position of the head for female pawns.
<headOffsetDirectional>
  <north>
    <layerOffset>0.1</layerOffset>
    <offset>(0.0, 0.1)</offset>
    <bodyTypes>
      <Hulk>(0.0, 0.3)</Hulk>
      <Fat>(0.0, -0.1)</Hulk>
    </bodyTypes>
    <portraitBodyTypes>
      <Hulk>(0.0, 0.3)</Hulk>
      <Fat>(0.0, -0.1)</Hulk>
    </portraitBodyTypes>
    <headTypes>
      <Male_AverageNormal>(0.0, -0.1)</Male_AverageNormal>
      <Female_AverageNormal>(0.0, 0.2)</Female_AverageNormal>
    </headTypes>
    <portraitHeadTypes>
      <Male_AverageNormal>(0.0, -0.1)</Male_AverageNormal>
      <Female_AverageNormal>(0.0, 0.2)</Female_AverageNormal>
    </portraitHeadTypes>
  </north>
  <south>
    <!-- same options as above -->
  </south>
  <east>
    <!-- same options as above -->
  </east>
  <west>
    <!-- same options as above -->
  </west>
</headOffsetDirectional>
(None) RimWorld 1.5+ - This tag was named headOffsetSpecific in 1.4, it must be renamed in 1.4

Changes the draw position of the head relative to the body. These offsets are added to the base headOffset when determining the final render offset.

All tags are optional and omitted values will default to 0.0, 0.0. If values for <west> are not provided, they will automatically be copied from <east>.
<headOffsetDirectional>
  <north>(0.0, 0.1)</north>
  <south>(0.0, 0.1)</south>
  <east>(-0.1, 0.1)</east>
  <west>(0.1, 0.1)</west>
</headOffsetDirectional>
(0.0, 0.0) RimWorld 1.4 and earlier

Changes the relative position of the head relative to the body, adjusting each direction individually. Omitting a direction will cause it to default to 0.0, 0.0.
<headFemaleOffsetDirectional>
  <!-- see example above -->
</headFemaleOffsetDirectional>
(None) Rimworld v1.5+ - This tag was named headFemaleOffsetSpecific in RimWorld 1.4

Changes the draw position of the head for female pawns. Works identically to <headOffsetSpecific>.
<headBodyPartDef>AlienHead</headBodyPartDef>
Head Determines the BodyPartDef that should be used to determine whether your race's pawns have been visually decapitated.
<getsGreyAt>50</getsGreyAt>
40 RimWorld 1.3 and earlier - Please use the oldHair options below for RimWorld v1.4 and later.

Determines the age at which members of your race have their hair turn gray.
<oldHairAgeRange>65.0~85.0</oldHairAgeRange>
(None) RimWorld v1.4 and later

Sets an age range in which members of your race will have their hair turn color due to age. Ages within the range will have an increasing chance of turning color; at or above the maximum value, hair will always turn color.

Overrides getGreyAt if both are set.
<oldHairAgeCurve>
  <points>
    <li>(0, 0)</li>
    <li>(65, 0)</li>
    <li>(75, 0.7)</li>
    <li>(85, 1)</li>
  </points>
</oldHairAgeCurve>
(None) RimWorld v1.4 and later

Sets a SimpleCurve for determining the age at which members of your race will have their hair turn color due to age. Overrides both getGreyAt and oldHairAgeRange.
<oldHairColorGen Class="ColorGenerator_Options">
  <options>
    <li>
      <min>(0.65,0.65,0.65)</min>
      <max>(0.85,0.85,0.85)</max>
    </li>
  </options>
</oldHairColorGen>
(As Shown) RimWorld v1.4 and later

Sets a ColorGenerator that should be used to set the hair color of members of your race when the above options determine that their hair color should change due to old age.

The shown grey values are used as the human default.
<offsetDefaults>
  <li>
    <name>NewOffset</name>
    <offsets>
      <!-- offsets here -->
    </offsets>
  </li>
</offsetDefaults>
(None) Sets a common, named set of BodyAddon offsets that can be used by multiple BodyAddons. Please see the BodyAddons page for more details about options and syntax.
<anchorReplacements>
  <li>
    <originalTag>LeftEye</originalTag>
    <originalGroup>Torso</originalGroup>
    <replacement>
      <rotation>West</rotation>
      <tag>LeftEye</tag>
      <canMirror>false</canMirror>
      <crownType>Narrow</crownType>
      <offset>(-0.12, 0, 0.26)</offset>
      <range>0</range>
      <layer>Head</layer>
      <debugColor>(0,0,0,1)</debugColor>
    </replacement>
    <offsets>
      <!-- Same offset syntax as body addons -->
    </offsets>
  </li>
</anchorReplacements>
(None) Allows race-specific replacements of wound anchors. Offsets use BodyAddon options and syntax.

BodyAddons

(For more information, see the BodyAddons page.)

BodyAddons are used to render additional visible body parts on members of your race, such as distinctive ears, tails, horns, or other distinguishing features. This feature is an extension of the tail drawer in early versions of this framework.

BodyAddons are listed in the bodyAddons tag inside of alienPartGenerator.

<AlienRace.ThingDef_AlienRace>
  <alienRace>
    <generalSettings>
      <alienPartGenerator>
        <bodyAddons>
          <!-- Body addons are listed here -->
        </bodyAddons>
      </alienPartGenerator>
    </generalSettings>
  </alienRace>
</AlienRace.ThingDef_AlienRace>

Reproduction & Children (Biotech DLC Only)

The following settings are used for Biotech compatibility and only apply if the Biotech DLC is active.

Gene Settings

The following settings are listed directly in the generalSettings tag:

<AlienRace.ThingDef_AlienRace>
  <alienRace>
    <generalSettings>
      <!-- Gene settings are listed here -->
    </generalSettings>
  </alienRace>
</AlienRace.ThingDef_AlienRace>

Unless otherwise specified, all of the following settings are optional.

Setting Description
<raceGenes>
  <li>
    <defName>Hair_LightTeal</defName>
    <femaleCommonality>0</femaleCommonality>
  </li>
  <li>
    <defName>Hair_Pink</defName>
    <maleCommonality>0</maleCommonality>
  </li>
  <li>
    <defName>WoundHealing_Fast</defName>
    <chance>100</chance>
  </li>
  <li>
    <defName>ViolenceDisabled</defName>
    <chance>50</chance>
  </li>
</raceGenes>
Sets genes that your race should have regardless of their xenotype.

These are applied even on Baseliners.
<growthFactorByAge>
  <points>
    <li>(0,1)</li>
    <li>(6,1)</li>
    <li>(7,0.75)</li>
    <li>(13,0.75)</li>
  </points>
</growthFactorByAge>
Sets the rate at which your race's children accumulates growth points by age. The curve shown approximates the human defaults.

Children Settings

The following settings are listed directly in the generalSettings tag:

<AlienRace.ThingDef_AlienRace>
  <alienRace>
    <generalSettings>
      <!-- Reproduction settings are listed here -->
    </generalSettings>
  </alienRace>
</AlienRace.ThingDef_AlienRace>

Unless otherwise specified, all of the following settings are optional.

Setting Description
<growthAges>
  <li>7</li>
  <li>10</li>
  <li>13</li>
</growthAges>
Sets the ages at which children of your race will have growth moments.

The human default is as shown.
<newbornBackstoryFilter>
  <li>
    <categories>
      <li>CommonAlienCategory</li>
    </categories>
    <commonality>0.75</commonality>
  </li>
  <li>
    <categories>
      <li>UncommonAlienCategory</li>
    </categories>
    <commonality>0.25</commonality>
  </li>
</newbornBackstoryFilter>
Overrides the backstory filter used for newborn babies of your race.
<childBackstoryFilter>
  <li>
    <categories>
      <li>CommonAlienCategory</li>
    </categories>
    <commonality>0.75</commonality>
  </li>
  <li>
    <categories>
      <li>UncommonAlienCategory</li>
    </categories>
    <commonality>0.25</commonality>
  </li>
</childBackstoryFilter>
Overrides the backstory filter used when a Baby of your race grows into a Child.

Only applies if you are using the vanilla LifeStageWorker_HumanlikeChild used by HumanlikeChild.
<adultBackstoryFilter>
  <li>
    <categories>
      <li>CommonAlienCategory</li>
    </categories>
    <commonality>0.75</commonality>
  </li>
  <li>
    <categories>
      <li>UncommonAlienCategory</li>
    </categories>
    <commonality>0.25</commonality>
  </li>
</adultBackstoryFilter>
Overrides the backstory filter used when a Child of your race grows into a Teenager.

Only applies if you are using the vanilla LifeStageWorker_HumanlikeAdult used by HumanlikeTeenager.
<adultVatBackstoryFilter>
  <li>
    <categories>
      <li>CommonAlienCategory</li>
    </categories>
    <commonality>0.75</commonality>
  </li>
  <li>
    <categories>
      <li>UncommonAlienCategory</li>
    </categories>
    <commonality>0.25</commonality>
  </li>
</adultVatBackstoryFilter>
Overrides the backstory filter used when a member of your race is produced from a Growth Vat.

StatPart_Age Overrides

You can override age curves used in StatPart_Age nodes used in StatDefs via the ageStatoverrides node, which goes directly inside generalSettings as follows:

<AlienRace.ThingDef_AlienRace>
  <generalSettings>
    <ageStatOverrides>

      <!-- Individual StatDef overrides here -->

    </ageStatOverrides>
  </generalSettings>
</AlienRace.ThingDef_AlienRace>

Any StatDef with a StatPart_Age component can be overridden in this way, including those from mods. The following are all vanilla StatDefs with such a node, with the human default curves shown:

Setting Description
<WorkSpeedGlobal>
  <useBiologicalYears>true</useBiologicalYears>
  <curve>
    <points>
      <li>(4,0.2)</li>
      <li>(12,0.8)</li>
      <li>(18,1)</li>
    </points>
  </curve>
</WorkSpeedGlobal>
Children usually perform work much slower than adults.
<ShootingAccuracyChildFactor MayRequire="Ludeon.RimWorld.Biotech">
  <useBiologicalYears>true</useBiologicalYears>
  <curve>
    <points>
      <li>(4,0.95)</li>
      <li>(12,0.98)</li>
      <li>(13,1)</li>
    </points>
  </curve>
</ShootingAccuracyChildFactor>
Children have slightly reduced shooting accuracy. Note that this StatDef is unique to Biotech, thus it should have a MayRequire attribute or it will generate errors without Biotech loaded.
<MarketValue>
  <useBiologicalYears>true</useBiologicalYears>
  <curve>
    <points>
      <li>(3,0.5)</li>
      <li>(13,0.9)</li>
      <li>(18,1)</li>
    </points>
  </curve>
</MarketValue>
Children are usually worth less in terms of colony wealth and to slavers.
<MeleeHitChance>
  <useBiologicalYears>true</useBiologicalYears>
  <curve>
    <points>
      <li>(4,0.05)</li>
      <li>(12,0.8)</li>
      <li>(13,1)</li>
    </points>
  </curve>
</MeleeHitChance>
Children have a significant penalty to melee accuracy.
<AimingDelayFactor>
  <useBiologicalYears>true</useBiologicalYears>
  <curve>
    <points>
      <li>(4,1.8)</li>
      <li>(12,1.1)</li>
      <li>(13,1)</li>
    </points>
  </curve>
</AimingDelayFactor>
Children fire ranged weapons significantly slower than adults.
<ImmunityGainSpeed>
  <curve>
    <points>
      <li>(0.65,1)</li>
      <li>(0.8,0.95)</li>
      <li>(1.0,0.9)</li>
      <li>(1.2,0.8)</li>
      <li>(1.5,0.5)</li>
    </points>
  </curve>
</ImmunityGainSpeed>
Elderly pawns have significantly reduced immunity gain speed, making them more vulnerable to diseases. Note that this is the only vanilla StatDef that does not use biologicalYears as it's used by animals in addition to humanlikes; the left side value is a factor of the race's life expectancy.
<ArrestSuccessChance>
  <useBiologicalYears>true</useBiologicalYears>
  <curve>
    <points>
      <li>(3, 0.05)</li>
      <li>(13, 0.8)</li>
      <li>(18, 1)</li>
    </points>
  </curve>
</ArrestSuccessChance>
Children have a significantly lower chance of arresting individuals.

Reproduction Settings

The following settings are listed in the reproduction tag inside of generalSettings:

<AlienRace.ThingDef_AlienRace>
  <alienRace>
    <generalSettings>
      <reproduction>
        <!-- Reproduction settings are listed here -->
      </reproduction>
    </generalSettings>
  </alienRace>
</AlienRace.ThingDef_AlienRace>

Unless otherwise specified, all of the following settings are optional.

Setting Description
<childKindDef>AlienColonist</childKindDef>
Overrides the PawnKindDef that newborn children of your race should use.

By default, Biotech uses the PawnKindDef of the mother at birth.
<maleFertilityAgeFactor>
  <points>
    <li>(14, 0)</li>
    <li>(18, 1)</li>
    <li>(50, 1)</li>
    <li>(90, 0)</li>
  </points>
</maleFertilityAgeFactor>
Sets the fertility of male members of your race.

The human default is as shown.
<femaleFertilityAgeFactor>
  <points>
    <li>(14, 0)</li>
    <li>(20, 1)</li>
    <li>(28, 1)</li>
    <li>(35, 0.5)</li>
    <li>(40, 0.1)</li>
    <li>(45, 0.02)</li>
    <li>(50, 0)</li>
  </points>
</femaleFertilityAgeFactor>
Sets the fertility of female members of your race.

The human default is as shown.
<hybridSpecific>

  <!-- single outcome -->
  <li>
    <partnerRace>BlueAlien</partnerRace>
    <childKindDef>BlueHybrid</childKindDef>
  </li>

  <!-- multiple outcomes -->
  <li>
    <partnerRace>GreenAlien</partnerRace>
    <probability>100</probability>
    <childKindDef>GreenHybrid</childKindDef>
  </li>
  <li>
    <partnerRace>GreenAlien</partnerRace>
    <probability>50</probability>
    <childKindDef>YellowHybrid</childKindDef>
  </li>

</hybridSpecific>
Specifies the PawnKindDef that should be used if a mother of your race has a baby with a father of the specified race.

probability is an optional weight value that can be used to adjust the chance of any one particular outcome if more than one childKindDef is possible for a given father race.
⚠️ **GitHub.com Fallback** ⚠️