religious_clothing_head: index of the frame to use for the religious head.
Look for character religion definition and read the frame index directly there (portrait_properties.txt is not used):.
The rendering is the same as feudal characters, except for headgear and clothing layers:
#Playing a female in agot ck2 mod skin#
Define a skin tone for the ethnicity in common/graphicalculturetypes/graphicalculturetype.txt, so that it can "manage" mixed-race children.
The choice is made based on a weighted random, but the first factor that evaluates to >= 100 will be automatically chosen.
If letter is p, resolve the property for value INDEX, defined in /interface/portrait_properties.txt.
If letter is d, look for the letter in character DNA at INDEX position, and convert the letter to a number (modulo N).
Look for GFX_TYPE in spriteTypes ( /interface/portraits/portrait_sprites.gfx or any other spriteType under /interface/*) and read the number of frames N.
For each layer defined as GFX_TYPE:INDEX:
If a portraitType entry matches, apply the layers in order.
In case no portraitType entry matches, try some defaulting: no date, no age, fallback ethnicities in the graphical_cultures list, ethnicity from parent culture group, or westerngfx in last resort.
is either _early if year is before 950, _late if year is after 1250, or empty otherwise (note: actual dates are defines EARLY_PORTRAIT_AND_UNIT_BEFORE_YEAR and LATE_PORTRAIT_AND_UNIT_AFTER_YEAR).
is the graphical_culture defined for the character culture or culture group ( common/cultures/00_cultures.txt).
Look for a portraitType entry in /interface/portraits/portrait.gfx (or any other portraitType under /interface/*) with name PORTRAIT_, where:.
The game renders feudal adult portraits as follows:
is the graphical_culture defined for the character culture or culture group.
Look directly for a spriteType entry in /interface/portraits/* with name PORTRAIT_child_, where:.
Note that part of the logic has also been re-implemented in Portrait Builder tool, for an out-of-game rendering.
Add a layer in portraits.gfx: "GFX_custom:p18"īased on player's experimentations, here is a description of how the rendering of portraits works in-game.
Configure p18 in portrait_properties.txt (the number of properties is determined dynamically from there):.
It is possible to add new properties with the following:
p33: Frankish culture female underlayer and hair.
Only hair (p1) and beards (p4) can be changed in-game via the Customization Pack, the other property values are derived from portrait_properties.txt file. If the string is shorter, zeros will be added at the end. Properties are a string of up to 14 letters (in vanilla). For instance, for chins there are usually 4 frames, so a = 1st frame and e = 1st frame as well. In case there are less frames than the index of the letter in alphabet, it wraps around.
Frame m for the nose (13th frame in mongol_male_nose_1.dds).
Frame i for the mouth (9th frame in mongol_male_mouth_1.dds).
Frame f for the chin (6th frame in mongol_male_chin_1.dds).
Frame b for the neck (2nd frame in mongol_male_neck_1.dds).
So Genghis Khan's dna = "bfimkolbecc" means: Otherwise randomly generated characters will get random DNA strings, which are persisted in the game saves. They can be seen in-game by using console command charinfo.ĭNA is a string of 11 letters inherited from the parents and doesn't change after birth.įor historical characters, their DNA string can be set in character history: Both are strings of letters (and possibly zeros for properties). There are two kind of characteristics: DNA and properties.