王国风云2
ParaWikis
最新百科
都市天际线2百科
英雄无敌3百科
维多利亚3百科
奇妙探险队2百科
罪恶帝国百科
英白拉多:罗马百科
热门百科
群星百科
欧陆风云4百科
十字军之王2百科
十字军之王3百科
钢铁雄心4百科
维多利亚2百科
ParaWikis
申请建站
ParaWikis
ParaCommons
最近更改
随机页面
加入QQ群
工具
链入页面
相关更改
特殊页面
页面信息
页面值
帮助
译名手册
字词转换
编辑指南
编辑规范
练手沙盒
资助我们
ParaTranz
资助我们
×
欢迎访问王国风云2百科!
注册一个账号
,一起参与编写吧!这里是
当前的工程
。
全站已采用新UI,任何使用上的问题请点击
这里
。欢迎所有对百科感兴趣的同学加入QQ群:
497888338
。
阅读
查看源代码
查看历史
讨论
查看“特质模组制作”的源代码
←
特质模组制作
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
{{version|2.8}} [[Traits]] are a major part of CKII and thus also for any overhaul mod. This article will explain everything you need to know about trait modding. Notepad++ is strongly recommended for modding traits, but Notepad or other plain text editors can also be used. ==Definition== Traits must be defined in the folder common/traits/. To make the trait, you will first need to tell the game what effects it has. That will be done here. For this tutorial, a 'selfish' trait will be used as an example. To start off, give the trait a name: '''selfish = { }''' ===Type=== After defining the trait itself, you'll want to define its flags. The flags you can use are listed below. The trait icons are grouped by type in-game, from left to right: <code>education</code>, <code>caste_tier</code>, undefined, <code>lifestyle</code>, <code>personality</code>, <code>is_health</code>. Inside a group, the order is based on the order the traits have been added to the character. {| class="wikitable sortable" !代码名称 !Value !描述 !例子 !代码 |- |agnatic |bool |有这种特质的父亲的孩子总是会继承这种特质。 |{{iconify|Sayyid}} |agnatic = yes |- |birth |int |10000个出生的角色中带有这种特质的个数。(例如,100 = 1%) | |birth = 100 |- |blinding |bool |The trait reflects permanent blinding of the character while imprisoned. In some cultures, this disinherits them. |{{iconify|Blinded}} |blinding = yes |- |cached |bool |All characters that have this trait will be cached for more efficient event trigger evaluation (should be a limited number). Then the character [[scope]] <code> <trait_name> = {}</code> can be use to scope to all characters with that trait. | |cached = yes |- |can_hold_titles |bool |此特质禁止角色持有任何头衔。 |{{iconify|Horse}} |can_hold_titles = no |- |cannot_inherit |bool |此特质禁止角色继承任何头衔。 |{{iconify|Monk}} |cannot_inherit = yes |- |cannot_marry |bool |此特质禁止角色结婚。查看词条<code>can_marry</code>。不会禁止[[concubinage|纳妾]]。 |{{iconify|Monk}} |cannot_marry = yes |- |caste_tier |int |此特质是种姓特质,caste_tier定义了种姓的顺序。 |{{iconify|Brahmin}} |caste_tier = 3 |- |customizer |bool |如果为非,该特质不会在[[Ruler Designer|角色设计器]]中可供选择。 | |customizer = no |- |education |bool |此特质是一种教育特质。 |{{iconify|Amateurish plotter}} |education = yes |- |attribute |attribute |主要属性,如教育特质。 |{{iconify|Amateurish plotter}} |attribute = intrigue |- |enatic |bool |有这种特质的母亲的孩子总是会继承这种特质。 | |enatic = yes |- |hidden |bool |隐藏特质不会在角色界面显示。 | |hidden = yes |- |immortal |bool |一旦拥有此特质,角色既不会衰老也不会自然死亡(但会死于处决或效果''死亡'')。参见词条[[immortal|永生]]。 | |immortal = yes |- |in_hiding |bool |此特质会激活“藏匿中”(in_hiding )效果。 |{{iconify|In hiding}} |in_hiding = yes |- |inbred |bool |此特质表明该角色是近亲繁殖的,会影响后代、生育能力及自然死亡原因。 |{{iconify|Inbred}} |inbred = yes |- |incapacitating |bool |这个角色很虚弱且需要[[regent|摄政]] |{{iconify|Incapable}} |incapacitating = yes |- |inherit_chance |int |新生儿可以从父母那里继承这种特质的概率(可选);如果父母双方都有这种特质,则为两次相同概率之和。 | |inherit_chance = 15 |- |both_parent_has_trait_inherit_chance |int | |{{iconify|Dwarf}} |<code>both_parent_has_trait_inherit_chance = 50</code> |- |is_epidemic |bool |The trait is given by an epidemic outbreak. See <code>has_epidemic</code> condition. |{{iconify|Tuberculosis}} |is_epidemic = yes |- |is_health |bool |The trait affects the health of a character, usually restricting certain events that require full health. See <code>health_traits</code> condition. |{{iconify|Stressed}} |is_health = yes |- |is_illness |bool |The trait is a regular disease. See <code>is_ill</code> condition and <code>cure_illness</code> effect. |{{iconify|Ill}} |is_illness = yes |- |leader |bool |The trait is a command/leadership trait. See <code>can_have_more_leadership_traits</code> condition. |{{iconify|Light foot leader}} |leader = yes |- |leadership_traits |int |The character automatically receives X number of leadership traits (army command traits). | |leadership_traits = 1 |- |childhood |bool |The trait is a childhood trait. |{{iconify|Willful}} |childhood = yes |- |lifestyle |bool |The trait is a lifestyle choice. See <code>lifestyle_traits</code> condition. |{{iconify|Scholar}} |lifestyle = yes |- |opposites |List<trait> |List of traits that cannot be held simultaneously with this trait | |opposites = { imbecile quick genius } |- |personality |bool |The trait is a personality trait (see trigger ''personality_traits = <min. count>'') |{{iconify|Lustful}} |personality = yes |- |prevent_decadence |bool |The trait prevents the Muslim character from accumulating decadence | |prevent_decadence = yes |- |priest |bool |The trait implies a theological education. See <code>is_priest</code> condition) |{{iconify|Detached priest}} |priest = yes |- |pilgrimage |bool |The character is temporarily away and will need a [[regent]] but does not lose any wards |{{iconify|On pilgrimage}} |pilgrimage = yes |- |random |bool |With <code>random = no</code>, the trait will not be given to randomly-generated characters (when the game starts or when characters are spawned other than by being born). <code>random = yes</code> is the default. Specific semantics vary with the general trait type. | |random = no |- |rebel_inherited |bool |Used for peasant leader and heresiarch in vanilla. When characters with such traits win the revolt war and die without an heir the successor also gains the peasant leader/heresiarch trait. |{{iconify|Peasant Leader}} |rebel_inherited = yes |- |religious |bool |The trait is religious in nature and should be automatically discarded upon religion change. Note: it will also be discarded upon pagan reformation. |{{iconify|Mutazilite}} |religious = yes |- |religious_branch |religion |The trait identifies a sect of that religion. This will also make the children inherit the trait on birth. |{{iconify|Shaivist hindu}} |religious_branch = jain |- |ruler_designer_cost |int |Sets a custom cost (in years of ruler's age, positive or negative) for this trait in the [[Ruler Designer]]. | |ruler_designer_cost = -20 |- |tolerates_''<religion_group>'' |bool |The character tolerates characters of that religion group and is tolerated by them. <religion_group> is dynamic and may be a group not present in vanilla. |{{iconify|Sympathy Christendom}} |tolerates_christian = yes<br> tolerates_jewish_group = yes<br> tolerates_muslim = yes<br> tolerates_pagan_group = yes<br> tolerates_zoroastrian_group = yes<br> tolerates_indian_group = yes |- |same_trait_visibility |bool |The trait will only be visible on other characters if the player also has it. Handy for things like secret societies, cults, and secret bears. This is a shortcut for: <pre>is_visible = { OR = { character = FROM has_trait = <trait> } } </pre> |''Not used in vanilla'' |same_trait_visibility = yes |- |hidden_from_others |bool |The trait will only be visible to the player who has the trait, even other players with the same trait won't see it. This is a shortcut for <code>is_visible = { character = FROM }</code>. |{{iconify|Secretly Cathar}} |hidden_from_others = yes |- |is_visible |[[conditions]] | Conditions for the trait to be visible: * ROOT the character looking at the trait * FROM is the character with the trait Typically a character should see their own traits, so at least <code>character = FROM</code> is used. |{{iconify|Secretly Catholic}} | <pre> is_visible = { OR = { character = FROM society_member_of = secret_religious_society_catholic AND = { is_close_relative = FROM trait = secretly_catholic } } } </pre> |- |vice |bool | |{{iconify|Lustful}} |<code>vice = yes</code> |- |virtue |bool | |{{iconify|Charitable}} |<code>virtue = yes</code> |- |succession_gfx |bool | |{{iconify|Wounded}} |<code>succession_gfx = yes</code> |- |is_symptom |bool | |{{iconify|Cough}} |<code>is_symptom = yes</code> |- |} In the case of the 'selfish' trait, a personality flag would be used. Do note that it is possible to use multiple flags for a trait. selfish = { '''personality = yes''' } ===Modifiers=== {{main|Modifiers}} After setting the trait's flags, you'll likely want to give it some character [[modifiers]] and/or a [[Modifiers#Command modifiers|command modifier]]. For 'selfish', a stewardship benefit and a diplomacy penalty would be appropriate. selfish = { personality = yes<br> '''stewardship = 2 # The CKII engine doesn't recognize '+', simply write the number when giving positive numbers''' '''diplomacy = -1''' } Regarding [[relations]], no one likes someone who is selfish, so in our case, we would have to add an opposite for charitable and a general_opinion: selfish = { personality = yes<br> stewardship = 2 # The CKII engine doesn't recognize '+', simply write the number when giving positive numbers diplomacy = -1<br> '''opposites = { '''trait = charitable''' '''}'''<br> '''opposite_opinion = -30''' '''general_opinion = -10''' } Regarding AI Weights, which affect how non-player characters will act (most of which primarily affect strategic considerations), for the 'selfish' trait, an ai_rationality would be good. selfish = { personality = yes<br> stewardship = 2 # The CKII engine doesn't recognize '+', simply write the number when giving positive numbers diplomacy = -1<br> opposites = { trait = charitable }<br> opposite_opinion = -30 general_opinion = -10<br> '''ai_rationality = -10''' } ===Potential=== The potential section defines who can randomly start with the trait on campaign start, be randomly generated with the trait (for example via the employment [[decisions]]), or gain it randomly when coming of age. It does however not affect the outcomes of [[events]] giving the trait; even if the character does not meet the potential [[conditions]] he can still get the trait via events. The potential section is simply one or more conditions. It is put immediately after the opening bracket of the trait. We might for example want to prevent the game from generating selfish children. selfish = { '''potential = {''' '''age = 16 #This prevents anyone from under 16 being generated with the trait''' '''}''' personality = yes<br> stewardship = 2 # The CKII engine doesn't recognize '+', simply write the number when giving positive numbers diplomacy = -1<br> opposites = { trait = charitable } opposite_opinion = -30 general_opinion = -10<br> ai_rationality = -10 } == Compliments == Since [[Way of Life]] it is possible to define localisation keys for compliments and insults which will appear in letters from other characters, or in any other localised text via the [GetRootFromCompliment] and [GetRootFromInsult] (etc.) localisation commands. These keys will need to be [[localisation|localised]]. {| class="wikitable sortable" !Flag !Description !Code |- |male_compliment <br/> female_compliment |Compliments in a letter to a man/woman |male_compliment = COMPL_SCHOLAR |- |male_compliment_adj <br/> female_compliment_adj |Positive Adjectives in a letter to a man/woman |male_compliment_adj = COMPL_LEARNED |- |male_insult <br/> female_insult |Insults in a letter to a man/woman |male_insult = INSULT_TORTURER |- |male_insult_adj <br/> female_insult_adj |Negative Adjectives in a letter to a man/woman |male_insult_adj = INSULT_EVIL |- |child_compliment |Compliments in a letter written by a child, used instead of the adult ones |child_compliment = COMPL_SMARTY |- |child_compliment_adj |Positive adjectives in a letter written by a child, used instead of the adult ones |child_compliment_adj = COMPL_CLEVER |- |child_insult |Insults in a letter written by a child, used instead of the adult ones |child_insult = INSULT_PEABRAIN |- |child_insult_adj |Negative Adjectives in a letter written by a child, used instead of the adult ones |child_insult_adj = INSULT_STUPID |- |} selfish = { potential = { age = 16 } personality = yes stewardship = 2 diplomacy = -1 opposites = { trait = charitable } opposite_opinion = -30 general_opinion = -10 ai_rationality = -10 '''male_insult = INSULT_SELFCENTERED''' '''female_insult = INSULT_SELFCENTERED''' '''male_insult_adj = INSULT_SELFISH''' '''female_insult_adj = INSULT_SELFISH''' } == Icon == Icons make traits easily recognizable to the player. An icon can be made in Photoshop or another image editor. It needs to be 24x24 pixels, and saved as a .dds or .tga file. When you have your icon, save it in <yourmodfolder>\gfx\traits. Now create a file at <yourmodofolder>\interface\<yourmod>.gfx. You will use this file to tell the game where the icon is stored. Start by adding this to the file: spriteTypes = { '''spriteType = {''' '''}''' } ''Make sure that you never repeat the <code>spriteTypes</code> block!'' You should instead be adding <code>spriteType</code> (no "s" on the end) items inside its opening and closing { curly brackets/braces }. Now, add a line for the name: spriteType = { '''name = "GFX_trait_<nameofthetrait>"''' } Now you should add a line to tell the game where the icon is stored: spriteType = { name = "GFX_trait_<nameofthetrait>" '''texturefile = "gfx/traits/<nameofthetraiticon>.tga"''' } Add some standard lines at the end: spriteType = { name = "GFX_trait_<nameofthetrait>" texturefile = "gfx/traits/<nameofthetrait>.tga" '''noOfFrames = 1''' '''norefcount = yes''' '''effectFile = "gfx/FX/buttonstate.lua"''' } For our 'selfish' trait, this would look like this: spriteType = { name = "GFX_trait_selfish" texturefile = "gfx/traits/selfish.tga" noOfFrames = 1 norefcount = yes effectFile = "gfx/FX/buttonstate.lua" } Save the file, and your trait should now have an icon. == Localisation == {{main|Localisation}} Traits require the following localization keys: *'''<trait_name>''' : name of the trait *'''<trait_name>_desc''' : description of the trait *'''<trait_name>_death''' : in case the trait reduces heath (<code>health = -1</code>), used to describe the cause for premature "death by trait" (death_reason = death_trait). For instance: ill_death;after a period of illness;d'une grave maladie;nach einer Zeit der Krankheit;;después de un período de enfermedad;;;;;;;;;x If we do this with the selfish trait, we will get this: selfish;Selfish;Égoïste;Selbstsüchtig;;Egoísta;;;;;;;;;x selfish_desc;This character is Selfish and only thinks about himself;Ce personage est Égoïste et ne pense qu'a lui;German;;Spanish;;;;;;;;;x Save the localisation as a .csv file. Once you have done that, you are done and you now have yourself a new trait! == See also == * [[Event modding]], as traits are mostly given out by events. [[Category:模组制作]] {{ModdingNavbox}} [[en:Trait modding]]
本页使用的模板:
Template:Clear
(
查看源代码
)
Template:Hatnote
(
查看源代码
)
Template:Iconify
(
查看源代码
)
Template:Main
(
查看源代码
)
Template:ModdingNavbox
(
查看源代码
)
Template:Navbox
(
查看源代码
)
Template:Navboxgroup
(
查看源代码
)
Template:Version
(
查看源代码
)
返回
特质模组制作
。
×
登录
密码
记住登录
加入王国风云2百科
忘记密码?
其他方式登录