Portraits Step by Step

From Princes of Darkness Mod Wiki
Jump to navigation Jump to search

Let's take as an example that you create Lamia's portrait and wants to integrate it in the mod.

1. First, you need to locate your character's ID number in the mod: Go to your mod installation, in history/characters. Open a file. Use the "search" button in the menu bar, use the "search in folder" file. Type the character in the search bar, open the result. You will find that the character's ID number is a specific string of numbers. Keep that number close, it's useful for several steps later on.

2. Now, right click on the file you created with your portrait (the one with the DNA of the portrait), use the "rename" option. Rename your file into POD_character_???????_DNA (obviously, change the name and ID depending on the character).

3. Open this file. In the menu bar, you have an "Encoding" option. Click on it. Choose "convert to UTF 8 BOM". This will take care of any future encoding issues.

4. Still in the file, the start will probably look close to :

ruler_designer_644333785={
	type=gender
	id=0
	genes={ 		hair_color={ 72 133 184 238 }

With probably different numbers obviously, but the structure is the same.

Replace "ruler_designer_644333785" with ??????_character (once again, obviously adapt this name and ID depending on the character).

Remove "type=female" (or male if male character).

Replace "id=0" by portrait_info = { (don't forget the = { )

5. Now, go to the very bottom of the file. You will have something close to :

	override={
		portrait_modifier_overrides={
			custom_beards=female_empty
			custom_hair=female_hair_western_02
		}
	}

	entity={ 0 0 }

You will have to keep the information in the "override" close by, it will be needed elsewhere later on. An exception though : if the information is saying "female_empty" or "male_empty" (or everything + empty really) you can safely ignore it. Now that you have located the relevant information (in our case that the hair uses female_hair_western_02), you can remove everything above (the override block and the entity one). With all of this removed, your end file will look like :

 }

}

You need to add a third one, which results in :

 }
}
} 

6. You are done with this file. Save it. You now need to place it in the mod itself. It should be located in common/dna_data. Simply drag or copy it to there.

7. Last thing to do, going back to character's history entry (where you got the ID, in history/characters). Here is what it looks like (using Lamia as an example) :

790537 = {
	name = "character"
	dynasty_house = house_character
	culture = "persian"
	religion = "derechlilit"
	trait = "education_learning_4"
	intrigue = 7
	diplomacy = 1
	learning = 5
	trait = "vampire"
	trait = "cappadocian"
	trait = "deceitful"	
	trait = "patient"	
	trait = "zealous"	
	prowess = 10
	trait = "fortitudeadvanced"
	trait = "potenceadvanced"
	trait = "oblivionadvanced"
	trait = "celerityadvanced"
	trait = "presenceadvanced"
	father = 710501
	female = yes
	give_nickname = nick_dark_priestess
	disallow_random_traits = yes
	
	80.1.1 = {
		birth = yes
		effect = {
			add_character_flag = {
				flag = immune_to_disease
			}

			add_secret = { 
				type = secret_vampgeneration5
			}
	
			#add_sanguine_lifestyle_xp = 10000
			
			set_immortal_age = 30
		}				
	}
	
	799.1.1 = {	
		effect = {
			set_relation_rival = character:710501
			}
	}

	1229.1.1 = {
		effect = {
			learn_language = language_latin
			learn_language = language_enochian
		} 		
	}

	1447.12.4 = {
		death = {
			death_reason = death_diablerie
			killer = 505018
			}
	}		
}

Below name = "Lamia" you will add a new line : dna = 790537_lamia (which was the first thing you replaced in the portrait files if you remember)

790537 = {
	name = "Lamia"
	dna = 790537_lamia
	dynasty_house = house_lamia
	culture = "persian"
	religion = "derechlilit"

Now, let's go below. You will always see a date with the birth = yes. The rest of the entry has a bunch of effects and flags in it most of the time, so it can look different depending on characters. For Lamia :

	80.1.1 = {
		birth = yes
		effect = {
			add_character_flag = {
				flag = immune_to_disease
			}

			add_secret = { 
				type = secret_vampgeneration5
			}
	
			#add_sanguine_lifestyle_xp = 10000
			
			set_immortal_age = 30
		}				
	}

Just before the last } you will need to add several things :

		
		effect = {
			add_character_flag = {
			    flag = has_scripted_appearance
			}
			add_character_flag = {
			    flag = POD_portrait_female_hair_western_02_flag
			}
		}

The

		
			add_character_flag = {
			    flag = has_scripted_appearance
			}

is always needed and always the same no matter what.

Then the rest depends on the information you gathered in step 5. In Lamia's case, we gathered that her hair uses female_hair_western_02. So we need to add :

			add_character_flag = {
			    flag = POD_portrait_female_hair_western_02_flag
			}

Which is basically flag = POD_portrait_XXXXXXX_flag XXXXX being the information you gathered in step 5. If your character is a male and has a beard, you will have to add another entry for it, like :

			add_character_flag = {
			    flag = POD_portrait_male_beard_western_02_flag
			}

In Lamia's case, here is how it looks in the end :

790537 = {
	name = "Lamia"
	dna = 790537_lamia
	dynasty_house = house_lamia
	culture = "persian"
	religion = "derechlilit"
	trait = "education_learning_4"
	intrigue = 7
	diplomacy = 1
	learning = 5
	trait = "vampire"
	trait = "cappadocian"
	trait = "deceitful"	
	trait = "patient"	
	trait = "zealous"	
	prowess = 10
	trait = "fortitudeadvanced"
	trait = "potenceadvanced"
	trait = "oblivionadvanced"
	trait = "celerityadvanced"
	trait = "presenceadvanced"
	father = 710501
	female = yes
	give_nickname = nick_dark_priestess
	disallow_random_traits = yes
	
	80.1.1 = {
		birth = yes
		effect = {
			add_character_flag = {
				flag = immune_to_disease
			}

			add_secret = { 
				type = secret_vampgeneration5
			}
	
			#add_sanguine_lifestyle_xp = 10000
			
			set_immortal_age = 30
		}
		effect = {
			add_character_flag = {
			    flag = has_scripted_appearance
			}
			add_character_flag = {
			    flag = POD_portrait_female_hair_western_02_flag
			}
		}		
	}
	
	799.1.1 = {	
		effect = {
			set_relation_rival = character:710501
			}
	}

	1229.1.1 = {
		effect = {
			learn_language = language_latin
			learn_language = language_enochian
		} 		
	}

	1447.12.4 = {
		death = {
			death_reason = death_diablerie
			killer = 505018
			}
	}		
}

8. Save and you are done!