文化模组制作

咯咯炀讨论 | 贡献2020年11月11日 (三) 19:09的版本 (咯咯炀移动页面Culture modding文化模组制作

得益于游戏的高度模块化设计,可以轻松地将新文化,革新和时代添加到游戏中。 本文涵盖common/culture路径下的每个子文件夹。

文化

文化组

每个文化都隶属于一个文化组。

name_of_culture_group = {
	graphical_cultures = {
		first_culture_group_coa_gfx
		second_culture_group_coa_gfx
		culture_group_building_gfx
		culture_group_clothing_gfx
		culture_group_unit_gfx
	}
	mercenary_names = {
		{ name = "mercenary_company_name1" coat_of_arms = "mercenary_company_coa1" }
		{ name = "mercenary_company_name2" coat_of_arms = "mercenary_company_coa2" }
		...
	}
	first_culture = {
		...
	}
	second_culture = {
		...
	}
}

以下就是文化组可以设置的所有参数。

属性 类型 说明 举例
name List<culturegfx> List of graphical cultures used for coat of arms, buildings, clothings and units. It's possible to give more than one from each type, then all of them will be used. graphical_cultures = { steppe_coa_gfx }
mercenary_names List<complex> List of names and CoAs that can be used by mercenaries of this culture group.
Parameter Type Description
name localization key Localization key for the name of the mercenary.
coat_of_arms coat of arm Optional. Coat of Arm for the name of the mercenary.
mercenary_names = {
	{ name = "mercenary_company_ghilman" coat_of_arms = "mc_ghilman" }
}

Cultures

Each culture belongs to a culture group.

name_of_culture_group = {
		...

	first_culture = {
		# graphical_cultures = { ... }
		
		mercenary_names = {			# Names and CoAs that can be used by mercenaries of this culture
			{ name = "mercenary_company_name1" coat_of_arms = "mercenary_company_coa1" }
			{ name = "mercenary_company_name2" coat_of_arms = "mercenary_company_coa2" }
			...
		}
		
		color = { 1 0.5 0.2 }	# The color of the culture, used e.g. on the map

		character_modifier = {	# Modifier effects on all characters of the culture
			diplomacy = 1
		}

		male_names = {
			10 = {	// The weight for this group of names, the higher, the more common the name is
				commonNameA commonNameB_baseA commonNameC commonNameD_baseA	// A list of names, nameX_baseY means that nameX is a variant of a base name baseY (e.g. John_John Jan_John Ian_John)
			}
			1 = {
				rareNameA rareNameB
			}
		}
		
		female_names = {	// Names can also be defined as a single list with no weights
			nameA_baseB nameB nameC_baseB
		}

		dynasty_names = {	// Dynasty name list, similar to male_names/female_names, just without weights
			{ dynnp_von dynn_Pommern }	// but it supports defining prefixes in addition to base names. The {} are required then
			{			dynn_Orsini }	// prefixes are optional
						dynn_Fournier	// and so are the {} when not using a prefix
		}
		dynasty_of_location_prefix = "dynnp_von" // when generating a dynasty name based on a title, add this prefix

		# Chance of male children being named after their paternal or maternal grandfather, or their father. Sum must not exceed 100.
		pat_grf_name_chance = 50
		mat_grf_name_chance = 5
		father_name_chance = 10
		
		# Chance of female children being named after their paternal or maternal grandmother, or their mother. Sum must not exceed 100.
		pat_grm_name_chance = 10
		mat_grm_name_chance = 50
		mother_name_chance = 5
		
		# Patronyms. Names after the primary parent. Can use both prefix and suffix together ("McDavidson"). _vowel is used for when the parent's name starts with a vowel.
		patronym_prefix_male = "dynnpat_pre_mac"
		patronym_prefix_male_vowel = "dynnpat_pre_vow_mag"
		patronym_prefix_female = "dynnpat_pre_nic"
		patronym_prefix_female_vowel = "dynnpat_pre_vow_nig"
		
		patronym_suffix_male = "dynnpat_suf_son"
		patronym_suffix_female = "dynnpat_suf_sdaughter"
		
		# Patronyms will display in names if:
		# - the Character's culture has "always_use_patronym = yes", or
		# - the Character's government has "always_use_patronym = yes", or
		# - the Character's Liege's government has "always_use_patronym = yes"
		# Default is no.
		always_use_patronym = yes	
		
		ethnicities = {
			10 = german		// The weight says how common the ethnicity is within the culture
			10 = caucasian
		}
	}
	
	second_culture = {
		...
	}
}

Below is a list of all parameters that can be set for cultures.

Attribute Type Description Example
mercenary_names List<complex> List of names and CoAs that can be used by mercenaries of this culture.
Parameter Type Description
name localization key Localization key for the name of the mercenary.
coat_of_arms coat of arm Optional. Coat of Arm for the name of the mercenary.
mercenary_names = {
	{ name = "mercenary_company_1" coat_of_arms = "coa_1" }
}
graphical_cultures List<culturegfx> List of graphical cultures used for coat of arms, buildings, clothings and units. It's possible to give more than one from each type, then all of them will be used. graphical_cultures = { english_coa_gfx }
Color Decimal RGB Values Color of the culture. color = { 0.1 0.75 0.1 }
character_modifier List<character_modifiers> Modifier effects on all characters of the culture.
character_modifier = {
     diplomacy = 1
}
cadet_dynasty_names List<localization> List of names for cadet dynasties.
cadet_dynasty_names = {
     "dynasty_loc"
     "dynasty2_loc"
}
dynasty_names List<localization> List of names for dynasties.
dynasty_names = {
     "dynasty_loc"
     "dynasty2_loc"
}
male_names List<localization> List of cultural names for male characters. Names with spaces need enclosing quotation marks. ("Name name2")
Parameter Type Description
# name group weight The weight for this group of names, the higher, the more common the name is.
male_names = {
     male_name_1 male-name-2 maleName3 "Male Name 4"
}
female_names List<localization> List of cultural names for male characters. Names with spaces need enclosing quotation marks. ("Name name2")
Parameter Type Description
# name group weight The weight for this group of names, the higher, the more common the name is.
female_names = {
     female_name_1 female-name-2 femaleName3 "Female Name 4"
}
dynasty_of_location_prefix Localization Cultural equivalent of 'of', e.g - Joan of Arc/Joan D'Arc dynasty_of_location_prefix = "prefix"
bastard_dynasty_prefix Localization Optional, Prefix for bastard dynasties bastard_dynasty_prefix = "snow"
Male Ancestor Name Chance Integer Chance of male children being named after their paternal or maternal grandfather, or their father. Sum must not exceed 100.
Parameter Type Description
pat_grf_name_chance integer Chance of male being named after Paternal Grandfather.
mat_grf_name_chance integer Chance of male being named after Maternal Grandfather.
father_name_chance integer Chance of male being named after their father.
pat_grf_name_chance = 50 #50% chance of being named after Paternal Grandfather
mat_grf_name_chance = 5  #5% chance of being named after Maternal Grandfather
father_name_chance = 10  #10% chance of being named after Father
Female Ancestor Name Chance Integer Chance of female children being named after their paternal or maternal grandmother, or their mother. Sum must not exceed 100.
Parameter Type Description
pat_grm_name_chance integer Chance of male being named after Paternal Grandmother.
mat_grm_name_chance integer Chance of male being named after Maternal Grandmother.
mother_name_chance integer Chance of female being named after their mother.
pat_grm_name_chance = 10 #10% chance of being named after Paternal Grandmother
mat_grm_name_chance = 50 #50% chance of being named after Maternal Grandmother
mother_name_chance = 5   #5% chance of being named after Mother
patronym_prefix_male Localization Names after the primary male parent patronym_prefix_male= "patronym"
patronym_prefix_male_vowel Localization Names after the primary male parent whose name starts with a vowel patronym_prefix_male_vowel = "v_patronym"
patronym_suffix_male Localization Names after the primary male parent but adds a suffix, e.g- Erikson patronym_suffix_male = "patronym_s"
patronym_prefix_female Localization Names after the primary female parent patronym_prefix_female = "f_patronym"
patronym_prefix_female_vowel Localization Names after the primary female parent whose name starts with a vowel patronym_prefix_female_vowel = "fv_patronym"
patronym_suffix_female Localization Names after the primary female parent but adds a suffix, e.g- Aylasdaughter patronym_suffix_female = "f_patronym_s"
always_use_patronym Boolean Optional (default is no), whether or not a culture always displays Patronyms. (Patronyms can also be turned on from government/liege's government) always_use_patronym = yes
ethnicities List<ethnicities> List of ethnicities common within the culture
Parameter Type Description
# ethnicity weight The weight says how common the ethnicity is within the culture.
ethnicities = {
     10 = ethnicity_1
      5 = ethnicity_2 #Half as common as ethnicity 1
}
dynasty_title_names Boolean Optional (default is no), uses dynasty name rather than title name when appropriate dynasty_title_names = yes
founder_named_dynasties Boolean Optional (default is no), uses dynasty name rather than title name when appropriate founder_named_dynasties = yes
dynasty_name_first Boolean Optional (default is no), dynasty name comes before given name (Far-East Style) founder_named_dynasties = yes