文化模组制作:修订间差异

本页面所适用的版本可能已经过时,最后更新于1.1
(15:22, 28 October 2020‎ WeirdMatter)
(21:09, 13 February 2021‎ DankeyKang1071)
第390行: 第390行:
|苏格兰
|苏格兰
|scottish
|scottish
|-
|卡夫
|gaw
|-
|-
|波美拉尼亚
|波美拉尼亚
第396行: 第399行:
|乌古斯
|乌古斯
|turkish
|turkish
|-
|马什里克
|levantine
|}
|}
{{Modding navbox}}
{{Modding navbox}}
[[Category:模组制作]]
[[Category:模组制作]]
[[en:Culture modding]]
[[en:Culture modding]]

2021年2月16日 (二) 18:10的版本

得益于游戏的高度模块化设计,可以轻松地将新文化,革新和时代添加到游戏中。 本文涵盖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> 用于文化的盾徽、建筑、服饰和单位图像列表。每种类型可以给出不止一个图像,所有图像都将被使用。 graphical_cultures = { steppe_coa_gfx }
mercenary_names List<complex> 此文化组的雇佣兵可以使用的名称和盾徽列表。
参数 类型 描述
name localization key 雇佣兵名称的本地化键值。
coat_of_arms coat of arm 可选。此名称的雇佣兵的盾徽。
mercenary_names = {
	{ name = "mercenary_company_ghilman" coat_of_arms = "mc_ghilman" }
}

文化

每种文化属于一个文化组。

name_of_culture_group = {
		...

	first_culture = {
		# graphical_cultures = { ... }
		
		mercenary_names = {			# 此文化的雇佣兵可以使用的名称和盾徽
			{ 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 }	# 文化的颜色,例如在地图上使用

		character_modifier = {	# 作用于此文化所有角色的修正
			diplomacy = 1
		}

		male_names = {
			10 = {	// 此组名字的权重。权重越高,名字越常见。 
				commonNameA commonNameB_baseA commonNameC commonNameD_baseA	// 名字列表,nameX_baseY是指nameX是基础名称baseY的变体(例如 John_John Jan_John Ian_John)
			}
			1 = {
				rareNameA rareNameB
			}
		}
		
		female_names = {	// 名字也可以定义为没有权重的单一列表
			nameA_baseB nameB nameC_baseB
		}

		dynasty_names = {	// 宗族名(姓)列表,类似于male_names/female_names,只是没有权重
			{ dynnp_von dynn_Pommern }	// 但它支持在基础名前定义前缀。因此需要{}
			{			dynn_Orsini }	// 前缀是可选的
						dynn_Fournier	// 不使用前缀的{}也是如此
		}
		dynasty_of_location_prefix = "dynnp_von" // 基于头衔生成宗族名时,添加此前缀

		# 男孩以(外)祖父或父亲的名字命名的概率。总和不得超过100。
		pat_grf_name_chance = 50
		mat_grf_name_chance = 5
		father_name_chance = 10
		
		# 女孩以(外)祖母或母亲的名字命名的概率。总和不得超过100。
		pat_grm_name_chance = 10
		mat_grm_name_chance = 50
		mother_name_chance = 5
		
		# 父名(Patronyms)。因父亲/母亲的名字得名。可以同时使用前缀和后缀(“McDavidson”麦克大卫逊)。 _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)会在名字中显示,如果:
		# - 角色的文化有“always_use_patronym = yes”,或
		# - 角色的政体有“always_use_patronym = yes”,或
		# - 角色领主的政体有“always_use_patronym = yes”
		# 默认是否(no)
		always_use_patronym = yes	
		
		ethnicities = {
			10 = german		// 此权重表明该文化内此种族(ethnicity)有多常见
			10 = caucasian
		}
	}
	
	second_culture = {
		...
	}
}

下表列出了可用于设置文化的所有参数。

属性 类型 描述 举例
mercenary_names List<complex> 此文化的雇佣兵可以使用的名称和盾徽列表
参数 类型 描述
name localization key 雇佣兵名称的本地化键值。
coat_of_arms coat of arm 可选。此名称的雇佣兵的盾徽。
mercenary_names = {
	{ name = "mercenary_company_1" coat_of_arms = "coa_1" }
}
graphical_cultures List<culturegfx> 用于文化的盾徽、建筑、服饰和单位图像列表。每种类型可以给出不止一个图像,所有图像都将被使用。 graphical_cultures = { english_coa_gfx }
Color Decimal RGB Values 文化的颜色。 color = { 0.1 0.75 0.1 }
character_modifier List<character_modifiers> 作用于此文化所有角色的修正。
character_modifier = {
     diplomacy = 1
}
cadet_dynasty_names List<localization> 宗族支系的名称列表。
cadet_dynasty_names = {
     "dynasty_loc"
     "dynasty2_loc"
}
dynasty_names List<localization> 宗族名称列表。
dynasty_names = {
     "dynasty_loc"
     "dynasty2_loc"
}
male_names List<localization> 男性角色的文化名称列表。带空格的名称需要用引号括起来。("名称 名称2")
参数 类型 描述
# name group weight 此组名称的权重,越高,名称越常见。
male_names = {
     male_name_1 male-name-2 maleName3 "Male Name 4"
}
female_names List<localization> 女性角色的文化名称列表。带空格的名称需要用引号括起来。("名称 名称2")
参数 类型 描述
# name group weight 此组名称的权重,越高,名称越常见。
female_names = {
     female_name_1 female-name-2 femaleName3 "Female Name 4"
}
dynasty_of_location_prefix Localization 等同于'of'('的')的文化变体,例如 Joan of Arc 和 Joan D'Arc dynasty_of_location_prefix = "prefix"
bastard_dynasty_prefix Localization 可选,私生子宗族的前缀 bastard_dynasty_prefix = "snow"
Male Ancestor Name Chance Integer 男孩以(外)祖父或父亲的名字命名的概率。总和不得超过100。
参数 类型 描述
pat_grf_name_chance integer 男孩以祖父的名字命名的概率。
mat_grf_name_chance integer 男孩以外祖父的名字命名的概率。
father_name_chance integer 男孩以父亲的名字命名的概率。
pat_grf_name_chance = 50 #50%概率以祖父的名字命名
mat_grf_name_chance = 5  #5%概率以外祖父的名字命名
father_name_chance = 10  #10%概率以父亲的名字命名
Female Ancestor Name Chance Integer 女孩以(外)祖母或母亲的名字命名的概率。总和不得超过100。
Parameter Type Description
pat_grm_name_chance integer 女孩以祖母的名字命名的概率。
mat_grm_name_chance integer 女孩以外祖母的名字命名的概率。
mother_name_chance integer 女孩以母亲的名字命名的概率。
pat_grm_name_chance = 10 #10%概率以祖母的名字命名
mat_grm_name_chance = 50 #50%概率以外祖母的名字命名
mother_name_chance = 5   #5%概率以母亲的名字命名
patronym_prefix_male Localization 来自父亲名字的父名(Patronym) patronym_prefix_male= "patronym"
patronym_prefix_male_vowel Localization 来自父亲名字的父名(Patronym),父亲的名字以元音开头 patronym_prefix_male_vowel = "v_patronym"
patronym_suffix_male Localization 来自父亲名字的父名(Patronym),增加后缀,例如Erikson(埃里克 patronym_suffix_male = "patronym_s"
patronym_prefix_female Localization 来自母亲的母名(matronym) patronym_prefix_female = "f_patronym"
patronym_prefix_female_vowel Localization 来自母亲名字的母名(matronym),母亲的名字以元音开头 patronym_prefix_female_vowel = "fv_patronym"
patronym_suffix_female Localization 来自母亲名字的母名(matronym),增加后缀,例如 Aylasdaughter(艾拉斯多特 patronym_suffix_female = "f_patronym_s"
always_use_patronym Boolean 可选(默认为no),该文化是否总是显示父/母名。(父/母名还可以通过政体/领主的政体来控制是否显示。) always_use_patronym = yes
ethnicities List<ethnicities> 文化中常见的种族(ethnicities)列表
参数 类型 描述
# ethnicity weight 此权重表明该文化内此种族(ethnicity)有多常见
ethnicities = {
     10 = ethnicity_1
      5 = ethnicity_2 #是ethnicity_1的一半
}
dynasty_title_names Boolean 可选(默认为no),在适当的时候使用宗族名称而不是头衔名称 dynasty_title_names = yes
founder_named_dynasties Boolean 可选(默认为no),在适当的时候使用宗族名称而不是头衔名称 founder_named_dynasties = yes
dynasty_name_first Boolean 可选(默认为no),宗族名称显示在名字前(远东习俗) founder_named_dynasties = yes

文化组ID

文化组在游戏文件中有一个内部ID。通过文化组在游戏内的名称来获得其ID:

  1. 所有字母转变为小写(A...Z->a...z)。
  2. 将空格( )和连接符(-)替换为下划线(_)。
  3. 在末尾添加_group
  4. 不遵循上述模式的文化组列于下表:
文化组 内部 ID
非洲之角 somalian_group
几内亚高地 west_african_group

文化ID

类似于上文的文化组,每个文化拥有一个内部ID。通过文化在游戏内的名称来获得其ID:

  1. 所有字母转变为小写(A...Z->a...z)。
  2. 移除所有变音符,包括重音(á->a)和元音变音/分音符(ü->u)。

不遵循上述模式的文化列于下表:

文化 内部 ID
彼尔姆 komi
奥斯恰克 khanty
比亚尔米亚 samoyed
苏格兰 scottish
卡夫 gaw
波美拉尼亚 pommeranian
乌古斯 turkish
马什里克 levantine