Girls.girlsx schema
Every named girl is a <Girl> block inside a <Girls> root. One file can hold many girls. Random-girl templates use the same schema but with .rgirlsx extension.
Minimal girl
Section titled “Minimal girl”<?xml version="1.0" encoding="UTF-8"?><Girls> <Girl Name="Jane" Desc="A quiet baker's daughter with a sharp tongue." Status="Slave"> <Stats> <Stat Name="Charisma" Value="50" /> <Stat Name="Beauty" Value="55" /> </Stats> </Girl></Girls>That’s enough for the game to load her. Everything else has defaults.
Top-level attributes
Section titled “Top-level attributes”| Attribute | Required | Purpose |
|---|---|---|
Name | Yes | Display name. Must match the Characters/<Name>/ folder exactly. |
Desc | No | Short description shown in girl details. |
Status | No | Slave, Free, or Normal. Controls who can buy/hire her. |
Status="Slave" matters for the slave market. The caravan only shows girls flagged as slaves. If you want your girl to appear for sale, set it. Default is Normal, which means she won’t show up.
<Stats> block
Section titled “<Stats> block”List of stat name + value pairs. Missing stats default to a middle value (usually 50).
Recognised stat names (22 total):
Charisma, Happiness, Libido, Constitution, Intelligence, Confidence,Mana, Agility, Fame, Level, AskPrice, House, Exp, Age, Obedience,Spirit, Beauty, Tiredness, Health, PCFear, PCLove, PCHate<Stats> <Stat Name="Charisma" Value="70" /> <Stat Name="Beauty" Value="65" /> <Stat Name="Confidence" Value="40" /></Stats><Skills> block
Section titled “<Skills> block”Skills default to 0 or a small starting value. Only list the ones you want to set.
Recognised skill names (10 total):
Anal, Magic, BDSM, NormalSex, Beastiality, Group, Lesbian,Service, Strip, Combat<Skills> <Skill Name="Service" Value="60" /> <Skill Name="NormalSex" Value="30" /></Skills><Traits> block
Section titled “<Traits> block”List of trait names. The core trait list is in Resources/Data/Traits/ (one .traitsx file per category). Pack-defined traits work too (from .traitsx files in any loaded pack).
<Traits> <Trait Name="Pretty" /> <Trait Name="Cheerful" /> <Trait Name="Night Owl" /></Traits>Trait names are case-sensitive and must match the Name attribute in the .traitsx definition exactly.
<Inventory> block
Section titled “<Inventory> block”Items she starts with. Item names must match the Name attribute of an item in any loaded .itemsx file (including Resources/Data/Items.itemsx).
<Inventory> <Item Name="Simple Dress" /> <Item Name="Lucky Charm" /></Inventory>Each item is added to the girl’s inventory and equipped automatically when she loads, so this is how you give a girl a default outfit or an item she wears from the start (for example a stat-granting accessory). Items that cannot be worn — Food and Makeup — are added to her inventory but left unequipped. An unknown item name is skipped, with a note in the game log. The inventory holds 40 slots; any items past that are dropped.
The <Inventory> wrapper is optional: bare <Item> elements placed directly inside <Girl> are read the same way. The same applies to <Trait> and the <Traits> wrapper — both layouts are accepted.
Random girls (.rgirlsx)
Section titled “Random girls (.rgirlsx)”Same schema, plus an optional <Default> block with image folder fallback. See Sample_Full/RandomGirls.rgirlsx.
Image folder
Section titled “Image folder”The images for a girl go in Characters/<Name>/. The folder name must match the Name attribute of the <Girl> exactly (case-sensitive). If the folder is missing or empty, the Content Manager flags the girl as “Missing Images” and the game falls back to placeholder art.
Multiple girls per file
Section titled “Multiple girls per file”One .girlsx file can hold any number of <Girl> blocks. Split them across files however you like: one per girl, one per theme, or all in one. The loader doesn’t care.
See also
Section titled “See also”snippets/Girls.girlsx: paste-and-edit skeletonResources/Packages/Sample_Full/Girls.girlsx: worked example with every block