科技修改

本页面所适用的版本可能已经过时,最后更新于1.23
(重定向自Technology modding

科技是你可以在科技界面上用君主点数购买的进步。

科技表

虽然基础游戏只包含三个技术(行政,军事,外交),但是你可以添加自己的。

/Europa Universalis IV/common/technology.txt,技术表定义于tables = { } 部分。 例如,增加 example_tech, 你要修改technology.txt 像这样:

tables = {
	adm_tech = "technologies/adm.txt"
	dip_tech = "technologies/dip.txt"
	mil_tech = "technologies/mil.txt"
        example_tech = "technologies/example.txt"
}

你可以添加科技到/Europa Universalis IV/common/technologies/example.txt.

example_tech_cost_modifier是动态生成的,并可用作国家范围修饰符。

注意:目前AI不会从自定义表中购买技术,然后 add_x_tech 效果不是动态生成的,这意味着功能自定义表只适用于玩家。

界面

要正确整合您的新技术表,您必须编辑/Europa Universalis IV/interface/countrytechnologyview.gui.

重要的是,您需要创建一个与您的技术表名称相对应的新窗口类型。例如:

windowType = {
    name = "countrytechnologyview_table_example_tech"
    # ....
}

注意:AI与非原版科技表的交互不正确。因为没有add_<name>_tech的正确工作,不建议您添加新表格。

科技类型

每一类科技的代码都存放在/Europa Universalis IV/common/technologies/ 文件夹中。文件当中即是玩家和AI 都能使用的科技。

科技分为三种类型:ADM, DIP, MIL 。 每种科技都有自身独特的科技命令。

将以下代码放置于某种科技文件的最顶部可以当前科技文件所属的科技类型:

monarch_power = <type>  # 行政(ADM),外交(DIP)或者军事(MIL)

科技领先奖励

当某个国家的科技处于全球领先时会触发科技领先奖励。奖励可分为三种,分别对应行政、外交、军事。(原版只有两种科技有奖励)

以行政科技为例,当行政科技领先时可以获得的奖励:

ahead_of_time = {
    production_efficiency = 0.2 #生产效率提高20%
}

历史科技

每种科技的代码都写在各自单独的文件中。每项科技都需要设定一个出现的历史时间(year),以及触发该项科技会产生的科技指令(<technology commands>)。格式如下:

technology = {
    year = <year>

    <technology commands>
}

某项科技提前于历史时间会导致科技超前的惩罚,增加提升科技所需的君主力量点数的花费。

游戏中科技的顺序与科技文件中每项科技代码顺序的相对应。从远及近对应由上到下。

科技指令

代码 科技类型 示例 备注
<building>=yes 行政(ADM)/外交(DIP)/军事(MIL) temple = yes /Europa Universalis IV/common/buildings/中的任何建筑类型均适用;

启用建造的建筑

enable = <unit> 外交(DIP)/军事(MIL) enable = barque /Europa Universalis IV/common/units/ 中的任何海陆军类型均适用;

启用单位(兵种、船只)的使用

<government> =yes 行政(ADM) tribal_despotism = yes /Europa Universalis IV/common/governments/中的任何政府类型均适用;

启用政体

production_efficiency = < > 行政(ADM) production_efficiency = 0.05 增加生产效率;最大值为2.0(即200%)。
可累加。
may_support_rebels 行政(ADM) may_support_rebels = yes 启用外交行为:支持叛军
allowed_idea_groups 行政(ADM) allowed_idea_groups = 1 数值是设定值,代表启用的理念槽
max_states 行政(ADM) max_states = 5 增加直辖数量;
数值可累加
may_force_march 行政(ADM) may_force_march = yes 启用强行军
administrative_efficiency 行政(ADM) administrative_efficiency = 0.1 增加行政效率;最大值为1.0(即100%)。
可累加。
development_efficiency 行政(ADM) development_efficiency = 0.1 提升发展度效率;最大值为1.0(即100%)。
可累加。
naval_morale 外交(DIP) morale = 2.0 海军士气;
可累加。
naval_maintenance 外交(DIP) naval_maintenance = 0.1 海军维护费;
可累加。
range 外交(DIP) range = 50 可殖民距离;
可累加。
global_colonial_growth 外交(DIP) global_colonial_growth = 10 全国殖民地人口;
可累加。
trade_range 外交(DIP) trade_range = 100 贸易距离;
可累加。
trade_efficiency 外交(DIP) trade_efficiency = 0.1 贸易效率;最大值为2.0(即200%)。
可累加。
num_accepted_cultures 外交(DIP) num_accepted_cultures = 1 可接受文化数量
may_fabricate_claims 外交(DIP) may_fabricate_claims = yes 启用外交行为:制造省份宣称
merchants 外交(DIP) merchants = yes 启用贸易行为:派遣商人
reduced_naval_attrition 外交(DIP) reduced_naval_attrition = yes 启用机制:降低海军远洋损耗
allow_client_states 外交(DIP) allow_client_states = yes 启用机制:释放仆从国国
may_steal_maps 外交(DIP) may_steal_maps = yes 启用外交行为:窃取地图
may_study_technology 外交(DIP) may_study_technology = yes 启用外交行为:窃取科技
may_slander_merchants 外交(DIP) may_slander_merchants = yes 启用外交行为:诋毁商人
may_sabotage_recruitment 外交(DIP) may_sabotage_recruitment = yes 启用外交行为:破坏征召
may_sow_discontent 外交(DIP) may_sow_discontent = yes 启用外交行为:散播不满
may_sabotage_reputation 外交(DIP) may_sabotage_reputation = yes 启用外交行为:破坏声誉
may_corrupt_officials 外交(DIP) may_corrupt_officials = yes 启用外交行为:腐化官员
may_agitate_for_liberty 外交(DIP) may_agitate_for_liberty = yes 启用外交行为:挑动附庸国不满
may_infiltrate_administration 外交(DIP) may_infiltrate_administration = yes 启用外交行为:渗透政府
sprite_level 军事(MIL) sprite_level = 3 兵模等级;最大等级为5。
infantry_fire 军事(MIL) infantry_fire = 0.1 步兵火力值;可累加。
infantry_shock 军事(MIL) infantry_shock = 0.1 步兵冲击值;可累加。
cavalry_fire 军事(MIL) cavalry_fire = 0.1 骑兵火力值;可累加。
cavalry_shock 军事(MIL) cavalry_shock = 0.1 骑兵冲击值;可累加。
artillery_shock 军事(MIL) artillery_shock = 0.1 炮兵冲击值;可累加。
artillery_fire 军事(MIL) artillery_fire = 0.1 炮兵火力值;可累加。
land_morale 军事(MIL) land_morale = 0.1 陆军士气;可累加。
military_tactics 军事(MIL) military_tactics = 0.1 军事战术;可累加。
supply_limit 军事(MIL) supply_limit = 0.25 最大补给限制;可累加。
maneuver_value 军事(MIL) maneuver_value = 0.1 机动能力;可以加强骑兵侧翼攻击能力。
combat_width 军事(MIL) combat_width = 1 战斗宽度;限定整数;
可累加。

一点经验:建议使用原版数值,不建议变更为太大数值,可能会导致跳出

本地化

默认情况下,科技本地文件在 /Europa Universalis IV/localisation/technology_l_english.yml.

他的格式是这样的:

 <type>_tech_cs_<num>_name: "这里是科技名"
 <type>_tech_cs_<num>_desc: "这里是科技描述"

数字是其各自文件中技术的索引。第一项技术为0,第二项为1等。