政府修改

在《欧陆风云4》中,政府决定了一个国家如何被统治,以及与该国政府相关联的各种机制。

政府

政府被划分为多种政府类型,它们定义于/Europa Universalis IV/common/governments/。

每种政府类型都可以任意命名,也就是说,你可以写 my_gov_type = { } 而不必写 monarchy = { }。

触发条件 government = 检查的正是这个名称。

以下是一个政府类型条目的概览:

<name> = {
    basic_reform = <reform>

    color = { <red> <green> <blue> }

    reform_levels = {
        <name> = {
            reforms = {
                <reform>
            }
        }
    }

    exclusive_reforms = {
        <reform>
    }
}

basic_reform 定义与该政府类型相关联的基础改革,它们在/Europa Universalis IV/common/government_reforms/中指定。

color 定义此类型政府在地图模式中使用的颜色。数值应为 RGB 值(0 至 255)。

reform_levels 定义每一个改革层级以及属于该层级的改革。层级可以任意命名。如果你的政府类型没有改革,则无需添加此项。

exclusive_reforms 用于使一组改革互相排斥。请在其中列出彼此互斥的改革。你可以拥有多个这样的作用域。

政府改革

基础改革

基础改革是具有以下属性的改革:basic_reform = yes。政府类型中引用的就是这类改革。

请注意,defaults_reform 条目是必需的,并且必须位于所有其他改革之前。它会先于任何其他改革被应用。

一般改革

以下是一个政府改革条目的概览:

<name> = {
    icon = <icon name>
    potential = {
        <triggers>
    }

    trigger = {
        <trigger>
    }

    <attribute> = <value>
    conditional = {
        allow = {
            <triggers>
        }
        <attribute> = <value>
    }

    modifiers = {
        <modifiers>
    }

    effect = {
        <effect>
    }

    removed_effect = {
        <effect>
    }

    custom_attributes = {
        <attribute> = <bool>
    }
}

政府改革各条目的说明如下:

  • 名称(Name):每个政府改革都必须有唯一的名称。
  • 图标(Icon):你可以为改革创建自己的图标(见下文的图标一节),也可以重用其他改革的图标。
  • 可见条件(Potential):决定一项改革是否在改革列表中可见。这并不意味着它可以被点击,只是可以被看到。
  • 触发条件(Trigger):决定一项改革是否可以被点击。与 potential 不同,带有 trigger 的改革仍然可见,但只有在条件满足时才能被选择。
  • 属性(Attribute):你可以将属性直接加入改革中,也可以使用 conditional 作用域(通常用于限制那些需要特定 DLC 的属性)。conditional 作用域不会被调用,这意味着 ROOT、FROM、PREV 和 THIS 无法用于将其限定到拥有该改革的国家。
    • 可用属性的列表见下表。
  • 修正(Modifiers):在此处可以添加在你选择该改革后作用于你国家的修正。
  • 效果(Effect):在此处可以添加选择该改革时执行的效果。
  • 移除效果(Removed Effect):在此处可以添加失去该改革时执行的效果。
  • 自定义属性(Custom Attributes):此部分允许你定义任意字符串,这些字符串可以在其他地方被检查并妥善地本地化,用于检查多项改革中是否有任何一项处于生效状态。

注意:改革所属的层级是在/Europa Universalis IV/common/governments/中定义的,而不是在改革文件中。添加你的改革之后,你需要前往相应的政府文件,把你的新改革加入到那里的列表中。

属性

以下是政府改革中可以使用的所有属性的列表:

名称 效果 用法 备注
basic_reform basic_reform = yes 决定一项改革是否被视为基础政府类型。 用于政府类型的改革,不应用于普通改革。
monarchy monarchy = yes 将该政府定义为君主制规则集,使正统性成为统治者的正统性类型,并应用君主制专属机制。 用于政府类型的改革,不应用于普通改革。
republic republic = yes 将该政府定义为共和制规则集,使共和传统成为统治者的正统性类型,并应用共和制专属机制。 用于政府类型的改革,不应用于普通改革。
religion religion = yes 将该政府定义为宗教规则集,使正统性成为统治者的正统性类型,并应用宗教专属机制。 用于政府类型的改革,不应用于普通改革。
tribal tribal = yes 将该改革定义为部落规则集,使正统性成为统治者的正统性类型,并应用部落专属机制。 用于政府类型的改革,不应用于普通改革。
monastic monastic = yes 将该改革定义为修道院规则集,使正统性成为统治者的正统性类型,并应用修道院专属机制。 这与/Europa Universalis IV/common/governments/中定义的政府类型无关。
dictatorship dictatorship = yes 将该改革定义为独裁规则集,使正统性成为统治者的正统性类型,并应用独裁专属机制。 这与/Europa Universalis IV/common/governments/中定义的政府类型无关。
nomad nomad = yes 将该改革定义为游牧规则集,使部落团结度成为统治者的正统性类型,并应用游牧专属机制。 这与/Europa Universalis IV/common/governments/中定义的政府类型无关。
papacy papacy = yes 将该改革定义为教廷规则集,使正统性成为统治者的正统性类型,并应用教廷专属机制。 这与/Europa Universalis IV/common/governments/中定义的政府类型无关。
has_meritocracy has_meritocracy = yes 决定该政府是否使用贤能值作为统治者的正统性类型。
has_devotion has_devotion = yes 决定该政府是否使用奉献度作为统治者的正统性类型。
raze_province raze_province = yes 决定该国是否可以夷平省份。
has_term_election has_term_election = yes 决定该政府是否使用选举周期系统。
is_elective is_elective = yes 决定该政府是否使用选举君主制机制。
free_city free_city = yes 决定该政府是否使用自由市机制。
is_trading_city is_trading_city = yes 决定该政府是否使用贸易城市机制。
icon icon = "shogunate" 指定该政府改革所使用的图标。 图标必须先在 GFX 文件中定义后才能使用。
valid_for_new_country valid_for_new_country = yes 决定新建国家(例如被释放的国家)是否可以继承该政府改革。
allow_convert allow_convert = yes 决定是否可以从该政府改革转换为其他改革,例如通过“更改政府”和约条款。
allow_normal_conversion allow_normal_conversion = yes 决定该政府改革是否可以在改革菜单中被选择。 在 1.33.2 中似乎无效。若要禁用手动选择,请改在 trigger 中使用 "has_reform = <this reform>"。
lock_level_when_selected lock_level_when_selected = yes 决定是否可以通过在改革菜单中选择同一层级的新改革来更换掉该政府改革。
locked_government_type locked_government_type = yes 禁止国家滑入其他政府类型(例如共和传统过低的海盗共和国变为君主制)。
fixed_rank fixed_rank = <rank> 定义该改革将国家锁定到的固定政府等级。
queen queen = yes 决定该政府是否可以拥有配偶。
heir heir = yes 决定该政府是否可以拥有继承人。
royal_marriage royal_marriage = yes 决定该政府是否可以进行王室联姻。
nation_designer_trigger nation_designer_trigger = { <triggers> } 决定允许在国家设计器中选择该改革的条件。
valid_for_nation_designer valid_for_nation_designer = yes 决定该改革是否应出现在国家设计器中。
nation_designer_cost nation_designer_cost = <value> 决定选择该改革所需的点数花费。
republican_name republican_name = yes 决定该政府是否以共和制的方式显示统治者的名字(不带王朝)。
duration duration = <value> 决定共和国的选举周期时长。 在共和制政府之外没有效果。
maintain_dynasty maintain_dynasty = yes 决定无论统治者如何生成,其王朝是否保证保持不变。 用于脚本生成的统治者和继承人,使其继承原有王朝(例如奥斯曼)。
militarised_society militarised_society = yes 决定该政府是否赋予军事化社会机制。
has_parliament has_parliament = yes 决定该政府是否赋予议会机制。
has_harem has_harem = yes 决定该政府是否赋予后宫机制。
has_pashas has_pashas = yes 决定该政府是否赋予帕夏机制,并启用耶尼切里特殊单位。
foreign_slave_rulers foreign_slave_rulers = yes 决定该政府是否赋予奴隶统治者机制。
allow_vassal_war allow_vassal_war = yes 决定该政府是否赋予幕府机制,允许附庸之间发生战争。
allow_vassal_alliance allow_vassal_alliance = yes 决定该政府是否赋予幕府机制,允许附庸之间结盟。
allow_force_tributary allow_force_tributary = yes 决定拥有该政府改革的国家能否在和平条约中被迫成为朝贡国。
claim_states claim_states = yes 决定该政府是否可以一次性宣称整个邦。
different_religion_acceptance different_religion_acceptance = <value> 对不同宗教的国家应用指定的好感修正。
different_religion_group_acceptance different_religion_group_acceptance = <value> 对不同宗教组的国家应用指定的好感修正。
boost_income boost_income = yes 决定该政府是否会提升邻国(及自身)的商品产出。
can_use_trade_post can_use_trade_post = yes 决定该政府是否可以设立贸易站。
can_form_trade_league can_form_trade_league = yes 决定该政府是否可以组建贸易同盟。
trade_city_reform trade_city_reform = <reform> 决定拥有该政府改革的国家所建立的贸易城市获得的政府改革。
native_mechanic native_mechanic = yes 决定该政府是否使用原住民联邦与进步机制。
allow_migration allow_migration = yes 决定该政府是否可以使用迁徙机制。
rulers_can_be_generals rulers_can_be_generals = yes 决定该政府是否可以让统治者成为将领。
heirs_can_be_generals heirs_can_be_generals = yes 决定该政府是否可以让继承人成为将领。
min_autonomy min_autonomy = <value> 决定国家拥有该政府改革时允许的最低自治度。
start_territory_to_estates start_territory_to_estates = <value> 决定国家拥有该政府改革时,阶层初始拥有的领土占比。
factions factions = { <faction> } 对拥有该政府改革的国家应用指定的派系。
assimilation_cultures
assimilation_cultures = {
    <culture group> = {
        <modifiers>
    }
}
对拥有该政府改革的国家应用同化机制,并赋予指定的加成。
states_general_mechanic
states_general_mechanic = {
    <group> = {
        <modifiers>
    }
    <group> = {
        <modifiers>
    }
}
对拥有该政府改革的国家应用联省议会机制,使用指定的群体。 该机制所使用的群体可以任意定义。
government_abilities government_abilities = { <mechanic> } 对拥有该政府改革的国家应用指定的政府能力。 能力,又称政府互动,可在 common/government_mechanics 中完全通过脚本定义。此部分使用的是政府互动的名称。

在游戏版本 1.35 之前,这些机制是硬编码的。当时存在以下机制:

  • iqta_mechanic
  • russian_mechanic
  • mamluk_mechanic
  • feudal_theocracy_mechanic
  • tribal_federation_mechanic
  • cossacks_mechanic

政府改革图标

你必须为每个改革图标(如果你打算使用自定义图标)在 .gfx 文件中添加一个 spriteType 条目。GFX 文件位于 interface 文件夹中,spriteType 条目可以放在新文件中,也可以放在已有文件里。

定义如下:

spriteType = {
     name = "government_reform_<icon_name>"
     texturefile = "gfx/interface/governemnt_reform_icons/<icon_name>.dds"
}

添加之后,在改革定义中使用的图标名称即为 <icon_name>。

政府设置

要正确设置政府,你需要确保在国家的历史文件中包含正确的政府形式。例如,FRA - France.txt 包含以下内容:

government = monarchy
add_government_reform = feudalism_reform

government = monarchy 告诉游戏法国应使用君主制政府类型。如果只包含这一行,则只有与君主制类型相关联的基础改革会应用到法国。

这一行:add_government_reform = feudalism_reform 告诉游戏将 feudalism_reform 应用到法国。

原住民联邦与进步机制

联邦进步位于 common/federation_advancements/00_default.txt。

添加进步

以下是联邦进步的模板:

<advancement_name> = {
		gfx = <spriteType> # 所使用的图标

		# 该进步是否可以被选择
		can_pick = {
			<triggers>
		}

		# 选择该进步的效果
		effect = {
			<effects>
		}

		# 控制 AI 何时会或不会选择该进步
		ai_chance = {
			factor = <int>
			# 可选,数量不限
			modifier = {
				factor = <int>
				<triggers>
			}
		}
}

在不修改 GUI 的情况下,你最多可以拥有八个进步,排列成 2x4 的网格。进步按它们在文件中定义的顺序,从左到右、从上到下依次添加。若要增加可显示的进步数量,你必须编辑 interface/countrynativesview.gui 中的 federation_advancement 窗口,按需调整其 gridbox 元素。根据你对进步网格的排布方式,你可能还需要编辑它的背景图片 gfx/interface/country_natives_view_bg.dds。

进步图标

你必须为每个联邦进步图标(如果你要添加自定义图标)在 .gfx 文件中添加一个 spriteType 条目。GFX 文件位于 interface 文件夹中,spriteType 条目可以放在新文件中,也可以放在已有文件里。

定义如下:

spriteType = {
     name = "GFX_<advancement_name>"
     texturefile = "gfx/interface/federal_advancement_icons/<advancement_name>.dds"
}

进步图标是 60x60 的图像,以 DDS 格式保存。

政府等级

政府等级不再专属于某种政府,它们位于/Europa Universalis IV/common/government_ranks/。

添加新的等级很简单,只需添加新的等级编号以及你希望应用的修正即可。

例如:

4 = {
    diplomats = 1
}

不过,你需要先修改 defines 中的 MAX_GOVERNMENT_RANK,这样才能生效。

本地化

政府类型、改革和改革层级的本地化遵循以下格式:

 <string>: ""
 <string>_desc: ""

政府名称本身由/Europa Universalis IV/common/government_names/处理。这里的文件包含了为统治者、配偶和继承人的称谓指定本地化字符串的条目,以及按政府等级划分的政府名称。

以下是政府命名条目所使用的格式:

<string> = {
    rank = {
        <rank> = <string>
    }

    ruler_male = {
        <rank> = <string>
    }

    ruler_female = {
        <rank> = <string>
    }

    consort_male = {
        <rank> = <string>
    }

    consort_female = {
        <rank> = <string>
    }

    heir_male = {
        <rank> = <string>
    }

    heir_female = {
        <rank> = <string>
    }

    trigger = {
        <triggers>
    }
}

默认情况下,你只需要为一到三级添加条目,但该系统最多支持一到十级。

请注意,游戏会使用国家所匹配的最靠前的条目,因此如果把过于笼统的条目放在更具体的条目之前,更具体的条目就不会被使用。

遗留内容

在 Dharma 引入政府改革之后、政府改革成为基础游戏的一部分之前,政府改革与一个“遗留”基础政府相关联。该遗留政府包含了拥有对应政府改革的国家通常应具有的所有修正。遗留政府无法

对于未拥有 Dharma 的玩家,其政府设置了 legacy_government = yes,以便将它们与“普通”政府区分开来。

政府改革通过 legacy_equivalent = <government> 与遗留政府相关联。对于未拥有 Dharma 的玩家,每当该改革被添加到某个国家时,政府就会变为对应的遗留政府。

既然政府改革现在已是基础游戏内容,遗留政府已经没有意义,可以移除。

文档 效果 • 触发条件 • 修正列表 • 作用域 • 变量 • 本地化 • 可自定义本地化 • 运行文件 • 事件图片列表
脚本 脚本函数 • 顾问 • 时代 • 开局设定 • 建筑 • 宣战理由 • 殖民区域 • 国家创建 • 文化 • 决议 • Defines • 外交行动 • 灾难 • 中华帝国 • 阶层 • 事件 • 派系 • 政府 • 政府互动 • 伟大工程 • 历史 • 神圣罗马帝国 • 理念组 • 思潮 • 佣兵 • 任务树 • 修正 • On Actions • 议会 • 和约 • 君主性格 • 政策 • 叛军类型 • 宗教 • 附属国类型 • 科技 • 贸易公司 • 商品 • 单位
地图 地图 • 地图修改速查 • 随机新世界 • 贸易节点
图形 模型 • 界面 • 贴图库 • 字体 • 单位模型
音频 音乐 • 音效
其他 控制台命令 • 校验和 • 模组结构 • 故障排查 • 运行文件
工具 克劳塞维茨开局编辑器 • EU4模组编辑工具 • JoroDox模组制作工具 • The Validator
指南 省份 • 地图修改速查 • 存档编辑 • 脚本教程