决议模组制作

本页面所适用的版本可能已经过时,最后更新于1.1
拜月神教教首讨论 | 贡献2021年5月17日 (一) 21:12的版本 (修改一些翻译)

决议可以修改进游戏中。他们是伯爵及以上的统治者可以选择的行动。

位置

Decisions belong in .txt files in the mod's common\decisions folder. Each text file may contain multiple decisions.

结构

决议可以这样定义:

my_decision = {

	# 把键值等放在这里

}

Keys/blocks

The table below shows keys and blocks that may be defined. "Boolean" values may be either yes or no.

Key/block Type Description Example
title 覆盖标题,默认值:“ <key>”; 支持事件中的动态描述(first_valid,...); 范围:字符
title = <key> 
title = { ... }
picture String (file name)

字符串(文件名称)

Sets the image of the decision.

设置决议的图像

picture = "image_name.dds"
major 布尔值(yes/no) 重要;默认值为no。当设置为yes时,该决议将视为重要决议
major = yes/no
ai_goal 布尔值 If set, the AI will consider the decision a "goal" and consider it alongside major costs like title creation and holding construction. It will ignore ai_check_interval. Should only be used for things with such major costs that budgeting for it is important, as it is less performant than using a high ai_check_interval

如果设置,则AI将把该决定视为“目标”,并将其与诸如头衔创建和所有权建设之类的主要成本一起考虑。 它将忽略ai_check_interval。 只应用于预算如此重要的主要成本的事务,因为与使用高ai_check_interval相比,其性能较低

ai_goal = yes/no 
ai_check_frequency 整数 How many months to go between each check of this decision. Has to be set, except if ai_goal = yes is set. An interval of 0 means the AI will never check this decision

每次检查这个决定之间要多少个月。必须设置,除非ai_goal=yes已设置。0 的间隔意味着 AI 永远不会检查此决定

ai_check_frequency = 42
selection_tooltip 从决策列表中选择决策时,覆盖工具提示,默认值:“ <key> _tooltip”; 支持事件中的动态描述(first_valid,...); 范围:字符
selection_tooltip = <key> 
selection_tooltip = { .. }
desc 覆盖描述,默认值:“ <key> _desc”; 支持事件中的动态描述(first_valid,...); 范围:字符
desc = <key> 
desc = { ... }
confirm_text 覆盖确认文本,默认值:“ <key> _confirm”; 支持事件中的动态描述(first_valid,...); 范围:字符
confirm_text = <key> 
confirm_text = { ... }
is_shown 角色是否看得见决定; 范围:字符; 默认值:{always = yes}
is_shown = { ... }
is_valid_showing_failures_only 可以执行决定; 如果它们失败,这些将显示在确认按钮工具提示中; 范围:字符; 默认值:{always = yes}
is_valid_showing_failures_only = { ... }
is_valid 可以执行决定; 这些将显示在“需求”下的详细视图中; 范围:字符; 默认值:{always = yes}
is_valid = { ... }
cost Block

区块

Sets the cost of the decision in terms of gold, piety and prestige. The default value for each resource is zero. Not every resource has to be defined.

以黄金、虔诚和威望来设定决策的成本。每个资源的默认值为零。并非每个资源都必须定义。

cost = {
	gold = 42
	piety = 42
	prestige = 42
}
effect 区块 作出决定时执行的效果; 范围:字符
effect = { ... }
ai_potential 触发AI是否应该看见它
ai_potential = { ... }
ai_will_do 返回执行决策的机会百分比。 0将永远不会执行它,100将永远执行它
ai_will_do = { ... }
widget 指定最多一个Custom Widgets以嵌入到决策中。 请参阅下面有关Custom Widgets的部分。

Basic example

custom_decision = {
	picture = "custom_decision.dds"
	
	desc = custom_decision_desc
	selection_tooltip = custom_decision_tooltip

	is_shown = {

		# Put conditions for the decision to show up here.

	}

	effect = {

		# Add effects of the decision here.

	}

	ai_check_frequency = 0 # Change this value if you want the AI to consider this decision.
}

Decision ID

Each decision uses an internal ID for reference within the game's files. The internal name of a decision in the game's files can be found by following these steps:

  • Take the decision's name.
  • Turn all letters into lowercase (A...Z->a...z).
  • Replace spaces ( ) with underscores (_).
  • Add _decision to the end.

Decisions with in-game names that do not match their internal name are included in the table below:

Decision Internal name
Call Hunt start_hunt
Search for Physician hire_physician
Borrow Gold from Holy Order borrow_from_holy_order
Challenge the Ruler tribal_challenge_ruler
Stop Gaining Weight stop_gain_weight
Stop Losing Weight stop_lose_weight
Attempt Suicide commit_suicide
Return Roma return_rome
Determine Bhakti select_personal_deity
Give Your Ancestor a Sky Burial give_sky_burial
Raise a Runestone raise_runestone
Found Holy Order create_holy_order
Revoke Holy Order Lease cancel_holy_order_lease
Go on a Pilgrimage go_on_pilgrimage
Undertake the Hajj go_on_hajj
Restore the Kingdom of Cornwall restore_dumnonia
Reclaim Constantinople set_capital_constantinople
Reclaim Rome set_capital_rome
Restore the Papacy restore_papacy
Form the Swiss Confederation form_switzerland_kingdom
Form Archduchy of Austria form_austria_kingdom
Dismantle the Papacy dismantle_papacy
Restore Carolingian Borders reform_carolingian_empire
Unify the Burgundies unify_burgundy_kingdom
Unify Italy unify_italian_empire
Adopt Feudalism (unused) convert_to_feudalism
Adopt Feudal / Clan Ways through Liege convert_to_feudalism_liege_converted
Adopt Feudal / Clan Ways convert_whole_realm_to_feudalism
Form the Outremer Empire create_outremer_empire
Sell Minor Titles sale_of_titles
Restore the Ash'ari Caliphate restore_sunni_caliphate
Restore Israel create_israel_kingdom
Restore the Faith High Priesthood jewish_restore_high_priesthood
Restore the Faith High Priesthood zoroastrian_restore_high_priesthood
Become the Saoshyant become_saoshyant
Dismantle German Pretenders dismantle_holy_pretender
Dismantle Greek Pretenders dismantle_byz_pretender
Form the Sultanate of Rum form_rum_sultanate
Revive Greater Armenia create_armenian_empire
Consecrate Bloodline declare_bloodline_holy
Build a Grand Church build_grand_church
Faith Cannibalism accept_cannibalism
Request Claim on Ireland england_request_laudabiliter
Inspire Opus Francigenum promote_gothic_innovations
Build a Glass Monument lunatic_building
Promote Christian Settlements promote_hungarian_settlement
Revive Táltosism revive_magyar_paganism
Unite the West Slavs unite_the_western_slavs
Unite the South Slavs unite_the_southern_slavs
Defenders of High God defenders_of_highgod
Found a New Kingdom found_kingdom
Found a New Empire found_empire
Amnesty for False Conversions encourage_confession_of_false_conversions
Restore the Holy Roman Empire restore_holy_roman_empire
Adopt Special Succession Type adopt_special_succession
Found the Kingdom of Aragon form_the_kingdom_of_aragon
Indulge in Drink stress_loss_drunkard
Consume Hashish Cakes stress_loss_hashishiyah
Visit a Brothel stress_loss_rakish
Seclude Yourself stress_loss_reclusive
Lash Out stress_loss_irritable
Flagellate stress_loss_flagellant
Visit the Market stress_loss_profligate
Donate to Charity stress_loss_improvident
Confess stress_loss_contrite
Indulge in Food stress_loss_comfort_eater
Shun Food stress_loss_inappetetic
Write Thoughts Down stress_loss_journaller
Talk to Confidant stress_loss_confider
Work off Some Stress stress_loss_athletic
Accuse the Krstjani of Heresy accuse_krstjani_of_heresy
Prepare to Cross the Carpathians launch_hungarian_migration
Restore the Roman Empire restore_roman_empire (as Byzantine Emperor)
restore_roman_empire_holy (as Holy Roman Emperor)
restore_roman_empire_italian (as Emperor of Italia)
Host Grand Rite host_witch_ritual_decision

Custom Widgets

A custom widget can be embedded into a decision.

GUI files must be placed at the decision_view_widgets path (see paths.settings). The name of the file must match the widget name.

Usually these widgets require a custom controller. This should be documented in the widget's GUI file.

The data context type available in the GUI depends on the controller type.

Available controllers:

Controller Type | Data Context Name   | Notes

-------------------+------------------------------------+-----------------------------------------------------------

default | EventWindowWidget | Default controller, no special behavior

create_holy_order  | DecisionViewWidgetCreateHolyOrder  | Show GUI to customize the new holy order.