建筑修改

Eyesedge讨论 | 贡献2023年2月26日 (日) 12:30的版本

建筑是维多利亚3中提供生产、行政、军事单位等的主体,不同的建筑有着不同的产出与消耗,本页面旨在为各模组制作者提供指引。

结构组成

首先,我们要了解一个建筑由哪些部分组成,不同的建筑其实内部的结构都是一样,只是相关的代码不同其消耗与产出也不同。

建筑组

common-building_groups,此为建筑组所在文件的文件夹,建筑组是建筑模组的基础,建筑没有对应的建筑组便不会在游戏中正确的出现。不同类型的建筑有其所属的建筑组,不同的建筑组对应着制造业、农业、基础设施等,而不同的建筑组其所拥有的效果也不同,在官方的建筑组文件里也有相关代码的说明,下面我们以一个简单的建筑组来说明。

首先,我们要在common-building_groups里创建一个带BOM的UTF-8格式的txt文件,名称为new_building_groups(new_bg等也可以)

bg_new = {   #这是建筑组的名称,格式必须为bg_xxxxxx
	category = urban    #这是建筑组所属的类别,urban(城市)、rural(乡村)、development(开发)
	always_possible = yes    #这是建筑组所属建筑是否能无限制修建,no即为有限制的修建(资源、等级限制等)
	economy_of_scale = yes    #这是建筑每级是否能获得吞吐量修正(自给建筑除外)
	cash_reserves_max = 25000    #建筑最高的储备金
	should_auto_expand = { 
		default_auto_expand_rule = yes    #自动扩建的条件
	}
	economy_of_scale_ai_factor = 2.0    #这是ai考虑吞吐量影响的因素数值
}

此为主组的示例,建筑组分为拥有完整条件的主建筑组与附属主建筑组的次建筑组,以下为次组的示例:

bg_new_industry = {
	parent_group = bg_new    #附属于哪一个主建筑组
	lens = light_industry    #该建筑组内的建筑分属什么类型的建筑,此外还有重工业(heavy_industry)、农业(agriculture)等,如写在主建筑里则为一个大类(比如农业就包括了所有的农田)
	urbanization = 20    #每级城市化率
	infrastructure_usage_per_level = 2    #建筑每级所使用的基础设施值
}