首页所有页面

奇观模组制作

伟大的作品,在剧本中常被称为奇迹,在文件中被定义为 /common/wonders/ 文件夹。这些特性,也称为奇迹升级,定义在文件中 /common/wonder_upgrades/.有许多相关的位置用于图片、3D模型和gfx关键点,这些将在各自章节中介绍。

Great works

这是一个优秀作品定义的通用模板。这些变量将在下文有更详细的解释。

wonder_example_name = {

	picture = GFX_something

	model = GFX_something

	default_picture_stage = 3

	allow_construction = yes

	is_in_water = no

	allow_coastal = no

	show_model = yes

	background_overrides = {

		jungle = fields

		forest = jungle

	}

	potential = {

	}

	active = {

	}

	available_upgrades = {

	}

	flags = {

	}

	stage = { # First stage

		allow = {

			#triggers (eg. wealth)

		}

		build_time = 600

		restore_time = 90

		loot_time = 10

		gold_cost_flat = 1000

		gold_cost_ticking = 2

		restore_cost_flat = 427

		restore_cost_ticking = 3

		upgrade_slots = 2

		local_modifier = {

			# Province modifiers of this stage in itself, such as "local_tax_modifier = 0.25".

		}

		owner_modifier = {

			# Character effects of this stage in itself, such as "monthly_character_prestige = 0.25"

		}

	}

	stage = { # Second stage

		allow = {

		}

		build_time = 400

		restore_time = 70

		loot_time = 12

		gold_cost_flat = 1200

		gold_cost_ticking = 3

		restore_cost_flat = 524

		restore_cost_ticking = 4

		upgrade_slots = 2

		local_modifier = {

		}

		owner_modifier = {

		}

        }

}

注意,在奇迹定义中,作用域的根是字符,FROM为空,FROMFROM奇迹,FROMFROM为省。

Variables

Name Value type Description Example
<name of wonder> string/clause wonder_cathedral_01 = { ...
picture gfx 文件里有_size后缀,但这里应该排除,因为代码会根据图片显示的位置有条件地添加后缀。 wonder_image = GFX_wonder_strip_temple
model model name 在地图上展示奇迹时使用的模型名称。名称定义在wonder_mesh.gfx中 model = big_wonder_thing
default_picture_stage boolean 决定奇迹图像条框的哪个帧应该显示在没有奇迹的图形界面(比如施工和施工确认视图)时。可以设置为0以获得损坏状态。

Defaults to 3.

default_picture_stage = 1
allow_construction boolean 指示是否应允许新建此类奇迹实例。默认是可以。 allow_construction = no
is_in_water boolean 表示奇迹是否放置在水中。用来决定是否应该以海洋为背景,而不是省份地形。

Defaults to no.

is_in_water = yes
allow_coastal boolean 指示是否应允许该奇迹放置在海岸。如果设置为真,海洋背景将用于放置在沿海省份的奇观

Defaults to no.

allow_coastal = yes
show_model boolean 提示是否应该显示奇迹3D地图模型。默认是可以。 show_model = yes
background_overrides clause 定义了如果省份地形类型符合左边论证,应该使用哪种地形。左手参数可以设置为“全部”,以强制背景设置为右参数。

如果左手参数为“All”,则右手参数必须是格式“GFX_wonder_background_”上的GFX条目(注意,代码<name>中推导出的大小已被省略)

background_overrides = {

         desert = jungle

         snow = fields

}

potential conditions 这些条件决定了奇迹是否应出现在建筑清单中。 potential = { religion = catholic }
active conditions 这些条件决定了奇迹效果是否适用,以及是否可以继续施工。 active = { religion = catholic }
available_upgrades clause 这是完成此阶段后解锁的升级列表。从common/wonder_upgrades文件夹中选择升级。 available_upgrades = { upgrade_stained_glass_window upgrade_church_bells }
flags clause Used for categorizing wonders. Similar to bloodlines and artifacts. flags = { religious_building }

Stages

一部伟大的作品可以拥有任意多的关卡,但超过十五个的关卡不会显示罗马数字图标,除非这些关卡的图形被扩展。本地和所有者修饰符都是加法的。也就是说,如果第一阶段给予+5地方税和+10附庸好感,第二阶段给予-3地方税,那么完成两个阶段的奇观(除非任何已完成的特征)将有+2地方税和+10附庸好感作为修正值。

Name Type Description Example
allow conditions 这些条件决定了玩家是否应该被允许建造奇观。 allow = { religion = catholic }
build_time int 定义了基地建造时间(以月份计)的长度。 build_time = 12
loot_time int 它定义了搜刮关卡需要多少个月。 loot_time = 6
restore_time int 定义了修复此阶段受损奇观需要多少个月时间。 restore_time = 9
gold_cost_flat fixedpoint 定义在舞台建设启动时将扣除多少黄金。 gold_cost_flat = 500
gold_cost_ticking fixedpoint 定义了每个月结束时将扣除多少黄金。 gold_cost_ticking = 10
restore_cost_flat fixedpoint 定义修复开始时将扣除多少黄金。 restore_cost_flat = 298
restore_cost_ticking fixedpoint 定义了每个月末修复期间将扣除多少黄金。 restore_cost_ticking = 3
upgrade_slots int 定义了该关卡能提供多少新的升级槽。 upgrade_slots = 2
local_modifier clause Applies to the province.
local_modifier = {

    local_tax_modifier = 0.25

}

owner_modifier clause Applies to the owner.
owner_modifier = {

    monthly_character_prestige = 0.01

}

Features

Features, also called wonder upgrades, are defined thusly:

upgrade_example_name = {

	picture = GFX_upgrade_icon_crates

	show_in_history = yes

	allow = { }

	potential = { }

	active = { }

	flags = { }

	build_time = 20

	gold_cost_flat = 450

	gold_cost_ticking = 1

	local_modifier = { }

	owner_modifier = { }

}

在特征定义中,ROOT是角色,FROM是升级,FROMFROM是奇迹,FROMFROM是省份。

Variables

Name Type Description Example
<name of upgrade> string/clause wonder_cathedral_01 = { ...
picture gfx picture = GFX_wonder_cathedral_bells
show_in_history boolean 决定奇迹升级是否应该在奇迹历史中显示,默认是 show_in_history = no
potential conditions 决定该功能是否应出现在可用功能列表中的条件。 potential = { religion = catholic }
allow conditions 这些条件决定了玩家是否应该被允许建造奇观。 allow = { religion = catholic }
active conditions 决定该特征效果是否生效以及是否能继续施工的条件。 active = { religion = catholic }
custom_modifier_text 一个字符串出现在图形界面中,作为升级效果(列表底部)列出,但由脚本手工编写,而非代码生成。对于那些不是明确修正因素,而是影响事件结果或其他事件的事情。 custom_modifier_text = bells_upgrade_tt
flags clause 用于分类升级,也与 custom_modifier_text 结合使用。类似于血脉和神器。 flags = { special_effect_bells metal_upgrade }
build_time int 定义了基础建造时间(以天计)的长度。 build_time = 365
gold_cost_flat fixedpoint 定义升级建设启动时扣除多少金币。 gold_cost_flat = 500
gold_cost_ticking fixedpoint 定义每个月末将扣除多少黄金 gold_cost_ticking = 10
local_modifier clause 这些修正值是升级在完全建造后对奇观的贡献。这部分将应用于当地省份。
local_modifier = {

     revolt_risk = -0.02

}
owner_modifier clause 这些修正值是升级在完全建造后对奇观的贡献。这部分将应用于顶级领主角色。
owner_modifier = {

     church_opinion = 5

}

Graphics

如果你想给你的伟大作品自定义精灵,就像特质图标一样,你需要多次创建不同大小的图片。小版为92×96像素,中等版为132×132像素,大型版为150×150像素。每个图片文件实际上是一条图片条带:每个关卡一张,第一张留给被损坏或被掠夺的关卡。因此,原版条带在小尺寸下宽度为460像素,中等宽度为660像素,大尺寸版本宽度为750像素。所有这些都集中在文件夹里 /gfx/interface/wonder_interface/wonder_strips/.所有图片均为DDS格式。为了和原版保持一致,按照图案命名它们: wonder_stages_<wonder name>_<size>.dds.

All images are defined (given gfx keys) in /interface/wonder.gfx.在添加所有要求大小的自定义图片后,使用这个模板,在同一文件夹中添加你自己的条目到(新的)gfx 文件中:

spriteType = {

	name = "GFX_wonder_strip_<wonder name>_<size>"

	texturefile = "gfx\\interface\\wonder_interface\\wonder_strips\\wonder_stages_<wonder name>_<size>.dds"

	noOfFrames = 5

}

如果你的条带有更多或更少的阶段,可以调整noOfFrames变量。你需要创建三个这样的条目,分别为小、中和大。

之后,你可以用简单的 GFX_wonder_strip_<wonder_name> 钥匙。不要附加尺寸后缀:游戏在需要时会自动添加。

Features

功能更容易获得自定义图片,因为图片只需在文件夹中制作单一尺寸(50×50像素) /gfx/interface/wonder_interface/wonder_upgrades/. They are typically named wonder_upgrade_<upgrade name>.dds.

创建好你的图片后,在 /interface/ 文件夹(磁条也位于此),遵循这个简单的模板:

spriteType = {

	name = "GFX_upgrade_icon_<upgrade name>"

	texturefile = "gfx\\interface\\wonder_interface\\wonder_upgrades\\wonder_upgrade_<upgrade name>.dds"

}

Background images

你可以添加自己的图片,作为奇观的背景。如果你希望巴拉杜尔坚硬的塔楼能拥有那种火山般的地形,而这种糟糕的建筑无疑会给周围带来火山地形,你就应该定义一个新的背景图像。这也必须在三种尺寸下实现(小、中、大分别为92×96、132×132和150×150像素),在 /gfx/interface/wonder_interface/wonder_backgrounds/ 文件夹。另外,提供三个GFX条目,分别对应每个尺寸,且在熟悉的环境中 /interface/ folder, following the familiar template:

spriteType = {

	name = "GFX_wonder_background_<my background>_<size>"

	texturefile = "gfx\\interface\\wonder_interface\\wonder_backgrounds\\wonder_background_<my background>_<size>.dds"

	noOfFrames = 1

}

其中一个特别之处是,这些照片有时是条条形式,有时则是纯色。如果你想要多个可能的火山荒原,可以在图片文件中把你想要的变体数量排在后面,并相应增加 noOfFrames 变量。游戏会根据省份ID随机为你的奇迹选出一个(这意味着伦敦的伟大作品即使不同战役,背景也总是相同)。

然后,你可以用奇迹定义中的以下语法,让你的奇迹始终选择这张背景图像:

background_overrides = {

         All = GFX_wonder_background_<my background>

}

你也可以用特定的地形类型替换“全部”,并在条款中添加多个条目。而且,尺寸后缀是游戏添加的,所以应该省略。

原版背景图片是根据地形类型自动选择的。该代码仅考虑原版地形类型。如果你补充了 your own terrain types它们不会被自动关联到对应的背景图像。因此,你必须在每个奇观定义的背景覆盖中引用它,以确保放置在新地形上的奇观背景正确:

background_overrides = {

         <my terrain type> = GFX_wonder_background_<my background>

}

3D models

The 3D models for each wonder are defined in /interface/wonder_mesh.gfx以及网格文件本身位于(其中一个子文件夹) /gfx/models/Mapitems/great_works/.关于如何创建网格本身的教程不在本页面的讨论范围内,但 Clausewitz Maya Exporter tool is a good place to get started.

History

历史或已有的伟大著作可以添加到省历史文件中。你首先添加一个日期键(例如: 867.1.1 = {),这会打开一个子句,你可以输入任何你想要的命令。以下历史命令可用:

Command Value type Description
build_wonder wonder_type Starts building the first stage of a wonder.
destroy_wonder boolean 无论当前阶段如何,都会移除该省的奇观。
build_wonder_upgrade upgrade type 开始建造特定类型的奇迹升级。
destroy_wonder_upgrade upgrade type Removes the specified upgrade type from the wonder.
set_wonder_stage number Force a wonders stage to be set to <number>.
set_wonder_name localization key string 设置用于定位奇观名称的密钥。
set_wonder_description localization key string 设置用于本地化奇观描述的键。
set_wonder_damaged boolean Sets the damage state of a wonder.
add_custom_history localization key string 在历史视图中添加包含loc键指定文本的条目。

注意,该命令在3.1版本中不可用。

See also

References

相关页面 (55)

EU4转档器模组制作Map moddingProvince moddingSteam创意工坊事件模组制作作用域修正内阁成员模组制作决议模组制作剧本模组制作单位模组制作历史模组制作另类开局模组制作图形模组制作地图外政权模组制作地图模组制作头衔模组制作宗教模组制作定义宝物模组制作宣战理由模组制作家族模组制作小地图模组制作建筑模组制作指令控制台指令政体模组制作故障排除文化模组制作朝贡国类型模组制作本地化条件模组制作死亡模组制作法律模组制作游戏规则模组制作特质模组制作界面模组制作疾病模组制作目标模组制作盾徽模组制作省份模组制作社团模组制作科技模组制作称号模组制作继承模组制作编辑游戏存档肖像模组制作脚本荣誉头衔模组制作血脉模组制作角色模组制作贸易路线模组制作音乐模组制作验证器