Skip to content

Characters ‐ XML specification

Luis edited this page Dec 19, 2025 · 3 revisions
Tag Description Type Notes
<portraitPath> A path to an image showing the character in the profile window (exoversal tab / characterpedia). Ideal resolution: 256×384. Resource path. Cosmetic only.
<universe> The universe the character comes from. Def reference. Required for this framework.
<archetypes> Character archetypes (1–4 recommended).
Example
<archetypes>
  <li>LMGG_Archetype_ActionHero</li>
  <li>LMGG_Archetype_Soldier</li>
</archetypes>
List of def references. Recommended for intended use.
<displayName> The character’s name when displayed by this mod. String. Defaults to RimWorld’s NameTriple if omitted.
<firstName>
<nickName>
<lastName>
The three usual parts of a pawn's name in RimWorld, using the NameTriple class. String.
<singleName> If present, the character will use the NameSingle class instead of NameTriple. Previous name fields are ignored, then. String. Useful for characters with mononyms.
<title> A short string describing job/role. It is the text shown in the colonist bar under the name. String.
<age> Character age in years (decimals allowed). Float.
<sex> Character sex: None, Male, or Female. Enum.
<headTypeDef> Head shape. The usual pattern is: (Male/Female)_(Average/Narrow)(Normal/Pointy/Wide). Custom defs allowed. Def reference.
<bodyTypeDef> Body shape. Usual values: Thin, Male, Female, Fat, Hulk. Custom defs allowed. Def reference.
<skinColor> Skin color as an RGB vector. The closest matching skin color gene will be assigned in-game during creation. Color. Format: (R, G, B) — e.g. (255, 223, 191)
<hairs> Valid hairstyles the character may have. First valid entry is used.
Example
<hairs>
  <li>
    <defname>freemanodz</defname>
    <color>(95, 63, 39)</color>
    <onlyIfModLoaded>odz.male.hairstyles</onlyIfModLoaded>
  </li>
  <li>
    <defname>Bravo</defname>
    <color>(95, 63, 39)</color>
  </li>
</hairs>
List of items. If none valid → character shows up bald.
<beards> Valid beard styles. First valid entry is used.
Example
<beards>
  <li>
    <defname>HT_Warden</defname>
    <onlyIfModLoaded>botchjob.hthair</onlyIfModLoaded>
  </li>
  <li>
    <defname>Full</defname>
  </li>
</beards>
List of items No valid beard → no facial hair.
<profile> Lightweight set of physical / personal data. Shown in exoversal tab and characterpedia.
Example
<profile>
  <height>1.85</height>
  <weight>77.1</weight>
  <hairColor>Blond</hairColor>
  <eyesColor>Blue</eyesColor>
  <originalHomeland>California, contemporary USA</originalHomeland>
</profile>
Object. Weight actually affects projection cost, but gets a default value by body type if absent.
<abilities> Abilities the character should have. List of def references.
<skills> Skill definitions for the character.
Example
<skills>
  <li> <def>Shooting</def>     <level>12</level> <passion>Minor</passion> </li>
  <li> <def>Melee</def>        <level>16</level> <passion>Major</passion> </li>
  <li> <def>Construction</def> <level>8</level>                         </li>
</skills>
List of items. Undefined skills will get random values.
<hediffs> Hediffs the character begins with.
Example
<hediffs>
  <li>
    <def>GutWorms</def>
    <bodyPartDef>Stomach</bodyPartDef>
    <severity>0.25</severity>
  </li>
</hediffs>
List of items. Applied on creation.
<childBackStories>
<adultBackStories>
Backstories the character may have. Randomly chosen if multiple. List of def references. Defaults to a random RimWorld stories if none defined.
<traits> The RimWorld traits the character has.
Example
<traits>
  <li>
    <defName>Kind</defName>
  </li>
  <li>
    <defName>VTE_Brave</defName>
    <onlyIfModLoaded>vanillaexpanded.vanillatraitsexpanded</onlyIfModLoaded>
  </li>
</traits>
List of objects.
<favoriteColor> The character’s favorite color as an RGB vector. Used by Ideology, albeit by a pretty unknown feature. Color. Format: (R, G, B) — e.g. (255, 223, 191)
<relations> The relation this character has with another character. These will be added if both characters are added to the world.
Example
<relations>
  <li>
    <characterDefName>LMGG_Character_AlbertWesker</characterDefName>
    <relationDefName>LMGG_PawnRelation_OldEnemy</relationDefName>
  </li>
</relations>
List of objects.
<forcedApparel > The apparel this character will spawn with.
Example
<forcedApparel>
  <li>
    <defName>Apparel_BasicShirt</defName>
    <quality>Good</quality>
    <stuffDefs><li>Cloth</li></stuffDefs>
    <desiredColor>(191, 183, 183)</desiredColor>
  </li>
  <li>
    <defName>Apparel_FlakPants</defName>
    <quality>Good</quality>
    <desiredColor>(111, 111, 111)</desiredColor>
  </li>
</forcedApparel>
List of objects. The stuffDefs field is a list. If more than one stuff is defined, a random one will be chosen. It has no effect on non-stuffable items.

Clone this wiki locally