科技修改

Cheng Ze讨论 | 贡献2024年12月23日 (一) 22:08的版本 (创建页面,内容为“= 科技 = 内容来自Paradox wiki - Victoria 3 wiki 模组制作-科技,基于微软翻译和个人校对 科技代表着物质、社会和政治发明。每种科技都可以解锁各种其他机制,提供直接的修正效果,或两者兼而有之。 == 科技示例 == 科技定义始终包括时代、类型、图片和AI权重。大多数科技还包括一个先决条件,并且可能包括一个或多个修正。 nitro…”)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)

科技

内容来自Paradox wiki - Victoria 3 wiki 模组制作-科技,基于微软翻译和个人校对

科技代表着物质、社会和政治发明。每种科技都可以解锁各种其他机制,提供直接的修正效果,或两者兼而有之。

科技示例

科技定义始终包括时代、类型、图片和AI权重。大多数科技还包括一个先决条件,并且可能包括一个或多个修正。

nitroglycerin = {
	era = era_2                                                             #时代
	texture = "gfx/interface/icons/invention_icons/nitroglycerin.dds"       #图片地址
	category = production                                                   #类型
	modifier = {                                                            #修正效果
		country_resource_discovery_chance_mult = 0.25                   #+25%发现新资源几率
	}
	unlocking_technologies = {	                                        #先决条件
		intensive_agriculture
		prospecting
	}
	ai_weight = {                                                           #AI权重
		value = 1
	}
}

科技(的)时代

科技的时代定义了每种技术的基本成本。时代在/Victoria 3/game/common/technology/eras中定义。每个era都是一个简单的定义,其中唯一的代码内容是研究该时代科技需要多少成本(创新点),而成本不会变化。

era_1 = {
	technology_cost = 7500  #事件或其他效果带来的科技进度奖励为成本的1/3,即第1时代为2500
}
era_2 = {
	technology_cost = 10000
}
era_3 = {
	technology_cost = 12500
}
era_4 = {
	technology_cost = 15000
}
era_5 = {
	technology_cost = 17500
}

时代代码名称也用于解锁该时代的所有科技。add_era_researched

科技项

科技在/Victoria 3/game/common/technology/technologies中定义。每个科技都被定义为一个具有唯一名称的模块,该名称也充当本地化的引用对象,在该模块中,该科技必须具有定义的时代、图片、类型和AI权重。科技也可能有修正和先决条件。研究完成科技解锁的建筑、法律或其他科技并不包括在该科技代码中,而是写在这些建筑、法律、科技的代码中。科技也可以通过使用can_research = no使其在科技界面中隐藏,这使得该科技只能通过(事件、决议等的)效果获得,并且只有在获得后才会显示。

代码 内容 是否必填
era 时代
texture 图片的路径
category production(生产)或military(军事)或society(社会)
ai_weight = { } 数字
modifier = { } 修正效果
unlocking_technologies = { } 先决科技
can_research yes或no

制作流程案例

创建时代(era)

在/<mod>/common/technology/eras文件夹中创建一个任意名称的.txt文件,例如“01_my_eras.txt”

在“01_my_eras.txt”中,创建一个新的era:

cool_era = {
	technology_cost = 20000
}

游戏根据era的顺序和包含文件的顺序读取era。所以01_my_eras.txt会出现在原版00_eras.txt之后,因此新era在原版era之后被添加为游戏中的“era 6”或“VI”。technology_cost可以设置为任何数字。

如果您坚持使用原版era,您可以忽略此步骤,但请记住为您添加的任何科技添加正确的era。

创建科技(technology)

在/<mod>/common/technology/technologies文件夹中,创建一个任意名称的.txt文件,例如“40_my_techs.txt” 如果您想修改任何原版科技,请将其内容复制到您的新文件中并进行任何更改。如果您的文件在排序中位于原版文件之后,则修改后的内容将覆盖原版内容。这使得与其他Mod的兼容更容易,并且更容易更新新补丁,因为您的更改仅限于您修改的科技。

要创建新科技,只需在文件中添加一个新条目,请记住,解锁其他功能(例如生产方法)的科技必须写入被解锁的功能的代码中。请记住,科技的时代应等于或晚于所有先决条件中的科技,否则可能会导致研究成本问题。

technicolor = {
	era = cool_era
	texture = "gfx/interface/icons/invention_icons/<new icon>.dds"
	category = society
        modifier = {
		country_prestige_mult = 0.1
	}
	unlocking_technologies = {	
		mass_propaganda
	}
	ai_weight = {
		value = 1
	}
}

模组制作指引