Societies are part of the free patch 2.7 and do not require the Monks and Mystics expansion, although most societies and their content are part of the expansion.
Societies are best used to model a profession or lifestyle, since a character may only be a member of one society at a time.
| Variable | Type | Description | Example | ||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| primary_attribute | attribute | primary_attribute = intrigue
| |||||||||||||||||||||||||||||||||||||
| is_secret | bool | Whether the society can be joined openly or not, society clothing is visible to non-members, etc. | is_secret = yes
| ||||||||||||||||||||||||||||||||||||
| criminal | bool | Used for the is_criminal trigger
|
is_criminal = yes
| ||||||||||||||||||||||||||||||||||||
| is_religious | bool | Whether the society is religion-based or not, used for opinion value | |||||||||||||||||||||||||||||||||||||
| devil_worshipper | bool | Used for the is_devil_worshipper trigger. Also suppresses the "religious differences" opinion modifiers with other members of the same society
|
|||||||||||||||||||||||||||||||||||||
| opinion_to_other_members | int | Opinion modifier applied when both characters are members | opinion_to_other_members = +10
| ||||||||||||||||||||||||||||||||||||
| opinion_to_pretenders | int | Opinion modifier from a member towards someone who is perceived to be a member but is not | opinion_to_pretenders = -40
| ||||||||||||||||||||||||||||||||||||
| opinion_to_perceived_members | int | Opinion modifier from a non-member toward someone who is perceived to be a member | opinion_to_perceived_members = -40
| ||||||||||||||||||||||||||||||||||||
| opinion_per_rank_above | int | Opinion bonus characters in the society get for how much they're outranked by another member. For instance if the bonus is +5, someone at rank 1 will get a +15 bonus with someone at rank 4. | opinion_per_rank_above = +5
| ||||||||||||||||||||||||||||||||||||
| society_rank_up_decision | decision | Decision that ranks up a member in the society | society_rank_up_decision = request_to_rank_up_within_society
| ||||||||||||||||||||||||||||||||||||
| sound | sfx | Sound effect to play while the society is selected in the societies tab. The sound key is defined in interface/sound.sfx | sound = monastic_orders_interface
| ||||||||||||||||||||||||||||||||||||
| society_ranks_gfx | gfx | society_ranks_gfx = generic_ranks
| |||||||||||||||||||||||||||||||||||||
| non_interference | conditions | Non-interfering AI characters will not take any hostile action towards the character. Only characters within the society will be non-interfering. ROOT is the target of diplomatic actions. FROM is the character taking the action | |||||||||||||||||||||||||||||||||||||
| non_interference_tooltip | localization | Localisation key to be shown under "influence", explaining what characters are non-interfering | |||||||||||||||||||||||||||||||||||||
| active | conditions | Determine if the society is active. If not met, it will be impossible to see or join the society, and no members will be generated for it at game start, and all existing members will be booted out of it within a month. Note that events and the like that reference the society will continue to act as if the society existed normally. Note that the conditions for this trigger are not shown in the UI anywhere, so you may want a global event or similar if this is something that can happen *during* a campaign. ROOT is the society | |||||||||||||||||||||||||||||||||||||
| indestructible | bool | Used to determine whether a society is "indestructible". Indestructible societies will use the startup_populate trigger to find an existing character to lead the society. It will choose the character in the world who would get the highest society membership score, with landed characters having their score reduced to 1/100th of what they'd otherwise get, since affecting a landed character is much more disruptive than affecting a courtier. If there's no eligible character, the on_society_failed_to_find_new_leader on-action will fire
|
indestructible = yes
| ||||||||||||||||||||||||||||||||||||
| can_join_society | conditions | Determine which characters can join the society. The condition themselves are often externalized as a scripted trigger. | can_join_society = {
hidden_trigger = {
NAND = {
ai = yes
is_society_rank_full = {
society = the_assassins
rank = 1
}
}
}
has_assassins_prerequisites = yes
}
| ||||||||||||||||||||||||||||||||||||
| show_society | conditions | show_society = {
religion = catholic
}
| |||||||||||||||||||||||||||||||||||||
| potential | conditions | [Rules that must be true for a character to remain in the society]. This is normally a subset of the rules of can_join_society.
|
potential = {
religion = catholic
}
| ||||||||||||||||||||||||||||||||||||
| society_rank | clause | Definition of ranks
|
society_rank = {
level = 1
limit = 100
startup_limit = 10
decisions = {
prisoner_dark_sacrifice
}
}
| ||||||||||||||||||||||||||||||||||||
| plots | [{{{1}}}] | ||||||||||||||||||||||||||||||||||||||
| ambitions | [{{{1}}}] | ||||||||||||||||||||||||||||||||||||||
| monthly_currency_gain | Defines how much power the member gains every month. The "currency" varies depending on the society. Can also be set one-time via events via change_society_currency. See below for more info
|
||||||||||||||||||||||||||||||||||||||
| member_score_per_attribute | float | How much member score a character recieves for every point of society attribute | member_score_per_attribute = 3
| ||||||||||||||||||||||||||||||||||||
| member_score_per_rank | float | How much member score a character recieves for every rank | member_score_per_rank = 100
| ||||||||||||||||||||||||||||||||||||
| member_score | MTTH | Bonus member score based on triggers, ROOT is the member. | member_score = {
value = 10
modifier = {
factor = 2
trait = diligent
}
}
| ||||||||||||||||||||||||||||||||||||
| startup_populate | clause | Used at game start to find character to lead and join the society. | |||||||||||||||||||||||||||||||||||||
| associated_religion | religion | Saves a religion scope to be accessible from script in the same way as character or province religion is. | |||||||||||||||||||||||||||||||||||||
| society_influence | bool | If set to no, turns off the display of society influence. Defaults to yes. | society_influence = no
|
Localization:
Localization commands need to be updated as well: GetSocietyCurrency, GetSocietyRank, GetSocietyName and GetSocietyNameCap.
The monthly_currency_gain is a block that can take several parameters:
monthly_currency_gain = { # Used for defining how members passively gain currency
name = loc_key # What the currency is named
per_attribute = {
name = stewardship # Takes one of the five attributes
value = 1 # How much to give per point
}
has_trait = {
trait = monk # Takes any trait
value = 5 # How much to give if the character has the trait
}
society_rank = {
rank = 4 # Takes a level of rank
value = 10 # How much to give if the character has the given rank
}
triggered_gain = {
desc = loc_key # What to show in the score gain breakdown. Passed through custom loc with the character as ROOT. The gain is provided as $GAIN$
trigger = { # When to give the gain. The character is ROOT
some triggers
}
value = 10 # How much to give
}
}
Quests are created dynamically via scripting. Quests holders must be member of a society and quest targets may be characters, titles or provinces (or none).
set_quest = <quest_id>
set_quest_target = {
id = <quest_id>
holder = ROOT
}
This can also be used to set or update the quest target.
The result of a quest can be set to:
clr_quest = <quest_id>clr_quest = { id = <quest_id> failure = yes }Their reward has to be managed via event scripting as well, typically by rewarding the holder some more power within the society, via change_society_currency command.
Localization:
Graphics for societies are by default stored under \gfx\interface\societies.
Do not forget to add a reference to any added graphics in \interface. See Interface modding for more.
You can use society icon backgrounds (society_symbol_bg_stone.dds and society_symbol_bg_wood.dds) in gfx\inventory\societies to make societies that follow the style of the vanilla societies.
If you would like to manually place characters in societies when the game starts, you can do so with the following code in the character's definition:
12345 = {
name = "Sample"
...
# Date on which the character should join.
1066.1.1 = {
effect = {
join_society = monastic_order_benedictine
# Make character the grandmaster of the society.
set_society_grandmaster = yes
}
}
# Date on which the character should leave.
1096.1.1 = {
effect = {
# Unnecessary to specify which society. Characters can only belong to one at once.
leave_society = yes
}
}
}
For more information on what can be placed in the effect section to influence societies, look at \common\societies\societies.info in the base game.
| 历史 | 角色 • 家族 • 省份 • 头衔 • 剧本 |
| 脚本 | 指令 • 条件 • 作用域 • 修正 • 事件 • 决议 |
| 常规 | 定义 • 游戏规则 • 另类开局 • 宗教 • 文化 • 政体 • 特质 • 血脉 • 科技 • 法律 • 建筑 • 宣战理由 • 朝贡国 • 单位 • 目标 • 疾病 • 死亡 • 荣誉头衔 • 社团 • 宝物 • 地图外政权 • 内阁成员 • 贸易路线 • 继承 • 奇观 • 称号 |
| 图像/音效/本地化 | 地图 • 图形 • 盾徽 • 肖像 • 界面 • 小地图 • 音乐 • 本地化 |
| 其他 | 故障排除 • 验证器 • 控制台指令 • 编辑游戏存档 • Steam创意工坊 • EU4转档器模组制作 |
ConditionsEU4转档器模组制作Interface moddingLocalizationMTTHMonks and MysticsPatch 2.7Scripted triggerSocietiesSociety moddingSteam创意工坊事件模组制作作用域修正内阁成员模组制作决议模组制作剧本模组制作单位模组制作历史模组制作另类开局模组制作图形模组制作地图外政权模组制作地图模组制作头衔模组制作奇观模组制作宗教模组制作定义宝物模组制作宣战理由模组制作家族模组制作小地图模组制作建筑模组制作指令控制台指令政体模组制作故障排除文化模组制作朝贡国类型模组制作本地化条件模组制作死亡模组制作法律模组制作游戏规则模组制作特质模组制作界面模组制作疾病模组制作目标模组制作盾徽模组制作省份模组制作科技模组制作称号模组制作继承模组制作编辑游戏存档肖像模组制作脚本荣誉头衔模组制作血脉模组制作角色模组制作贸易路线模组制作