特質模組製作

本頁面所適用的版本可能已經過時,最後更新於1.0
(重新導向自Trait modding

特質被遊戲內的角色持有,可以修正他們的屬性、好感、性格和其他參數。

創建一個特質[編輯 | 編輯原始碼]

特質在common/traits中的txt文件中定義。

舉例:

my_new_trait = {
	index = 0 # 特质的唯一数字标识符
	education = yes #yes或no,定义这个特质是否是教育特质
	# 旗标和修正
        ... # 旗标和修正
        ... # 旗标和修正
        
}

特殊特質旗標[編輯 | 編輯原始碼]

名稱 描述 用法
index 用於保存文件的數字標識符(索引值)。最多可以是65535。 index = X
health 改變實際健康值。 health = X.X
fertility 生育力百分比修改器。 fertility = X.X
inherit_chance 遺傳給子女的機率。 inherit_chance = X
birth 100個角色中,有多少個角色天生就有這個特質(不遺傳時)。可以有小數。 birth = X
random_creation 在100個角色中,有多少角色是帶著這個特質被創造出來的?(相對於實際出生而言,這是對生成角色、劇本角色等而言的。) random_creation = X
triggered_opinion 如果相關條件得到滿足,則適用
triggered_opinion = {
	opinion_modifier = opinion_modifier_key	

	# 以下所有参数是可选的
	parameter = doctrine_parameter_key 	
	check_missing = yes			
	
	same_faith = yes			
	same_dynasty = yes			
	ignore_opinion_value_if_same_trait = yes	
	male_only = yes	
	female_only = yes
}
compatibility 這不是一個好感修正,但可以被'compatibility_modifier'和'trait_compatibility'觸發使用。Compatibility是檢查特質持有者與所列(另一個角色的)特質的相性。
compatibility = {
	gluttonous = 20
	drunkard = @pos_compat_low
}
parent_inheritance_sex 指定該特質是否可以從男性/女性/所有父母那裡繼承(默認為全部)。 parent_inheritance_sex = male/female/all
child_inheritance_sex 指定該特質是否可以由男性/女性/所有子代繼承(默認為全部)。 child_inheritance_sex = male/female/all
genetic 如果設置為「yes」(默認為「no」),繼承將遵循以下規則。特質可以是隱性的。子女可以從顯性和隱性的父母特質中繼承該特質。

顯性有100%的機會被繼承,隱性的特質有50%的機會被繼承。如果該特質從父母雙方成功繼承,它就會變成顯性的。 如果只從父母一方繼承,則為隱性特質。

genetic = yes/no
inherit_from_real_father 該特質是否應該從親生(生)父親那裡繼承?(默認為「yes」)。 inherit_from_real_father = yes/no
enables_inbred 這個特質可以讓角色的子女被考慮為近親繁殖(默認為「no」)。

只有在父母有共同祖先的情況下,它才會啟用近親繁殖概率,所以如果父母沒有關係,就不會有'近親繁殖'的風險。 如果近親繁殖沒有被父母的特質啟用,但是他們有共同的祖先,那麼有機會(和近親繁殖特質啟用時一樣),孩子會得到一個隨機的特質,該特質enabling_inbred = yes。

enables_inbred = yes/no
good 標記該特質為 好的good(默認為no)。 good = yes/no
genetic_constraint_all 當獲得特質時,將採用這種遺傳約束(genetic constraint)。為了添加新的遺傳約束,在common\ethnicities中設置範圍前,需要在gfx\portraits\trait_portrait_modifiers中進一步修改。 genetic_constraint_all = beauty
forced_portrait_age_index 角色將使用這個肖像年齡 索引值index,而不是標記為「 通用generic」的某個年齡子基因。如果你想在它們之間隨機化,你可以指定多個這樣的 索引值index。如果多個特徵被強制索引,則會在所有的 索引值index之間隨機化。 forced_portrait_age_index = 1
forced_portrait_age_index 顯示你可以定義不止一個 索引值index的例子。 forced_portrait_age_index = 2
portrait_extremity_shift 獲得該特質時,每個 形態基因morph gene將以這個百分比向0或1(中最近的一個)移動;例如,0.4將向0移動25%,結果為0.3。 portrait_extremity_shift = 0.25
immortal 將阻止視覺上的衰老,並使角色免疫自然死亡。仍可被腳本殺死。生育力將與視覺上的年齡相匹配。你可以使用set_immortal_age來改變視覺上的年齡。 immortal = yes
physical 將該特質標記為身體特質 physical = yes
health_trait 將該特質標記為與健康有關 health_trait = yes
fame 標記該特質為名譽相關 fame = yes
trait_exclusive_if_realm_contains 將領特質隨機分配給將領時考慮的地形類型列表。只有當將領的文化中包含一個具有列表中指定地形類型之一的省份時,才會分配/考慮這些特質。 trait_exclusive_if_realm_contains = {}

創建永生特質[編輯 | 編輯原始碼]

如同上一代遊戲,授予永生屬性的特質在遊戲發布時未出現,但已經編寫好了程序,可以輕易被創建。只需要在特質中加入以下參數:immortal = yes

為了讓你的永生者看起來永遠年輕,你可以設置永生年齡。例如,set_immortal_age = 30

本地化[編輯 | 編輯原始碼]

默認情況下,名稱鍵值是trait_<key>,描述鍵值是trait_<key>_desc。

圖標[編輯 | 編輯原始碼]

默認的圖標路徑位於gfx/interface/icons/traits/<trait>.dds

這些可以用動態描述進行覆蓋。 例如:

name = some_loc_key

或者

name = {
	first_valid = { ... }
}

參數是:name,desc,icon

Root作用域是該角色。注意,某些情況下可能沒有Root,所以如果你在添加動態名稱、描述和圖標,確保你的第一個檢查是「NOT = { exists = this }」作為 fallback回退。 舉例:

icon = {
	first_valid = {
		triggered_desc = {
			trigger = { NOT = { exists = this } }
			desc = "gfx/interface/icons/traits/diligent.dds"
		}
		
		triggered_desc = {
			trigger = { gold > 1000 }
			desc = "gfx/interface/icons/traits/diligent.dds"
		}
		
		desc = "gfx/interface/icons/traits/deceitful.dds"
	}
}