文明6mod制作图文教程 文明6mod怎么制作 mod制作方法 工具准备( 二 )


textures文件夹是用来存放贴图文件的,一般是.dds和.tex 。
xlps文件夹是用来存放xlp文件的,这组文件和上面的两组文件我们放到后面再讲 。
下面的一票xml文件就是整个mod的代码载体 。(GettingStarted.html?就是这个白色的欢迎界面,删掉就是了)
有些时候,你可能光靠xml的功能库实现不了某些功能,这个时候就要使用sql或lua文件,这方面我不做涉及 。
关于xml的命名 。理论上可以随意命名,但是为了你自己和其他有需要的人着想,请按一定的规范进行命名 。
这个模板里的xml一般来说可以全部删掉 。我也推荐全部删除后自己创建一遍 。但是注意要保留mod.art.xml这个文件,它的作用会在后面和上面的三组文件夹一起讲 。
一般来说,xml命名最好按照领袖名称+功能来命名 。比如Anzu_Civilization 。这样的好处在于有效区分不同对象和功能的代码 。方便自己编写和debug 。
一般需要的xml有:Civilization 文明 Leader 领袖 District 区域 Building 建筑 Unit 单位 Config 加载设置 Icons 图标配置 Text 基础文本 Text_XXX对应语言翻译文本这些 。按照内容可在结尾+s 。
按照我的角色设计 。我的文件结构应该如下:

文明6mod制作图文教程 文明6mod怎么制作 mod制作方法 工具准备

文章插图
在整理好文件结构后,我们来编写xml的内容 。xml相关的语法吧里已经有相关介绍,我就不再赘述了 。
想学会xml的编写有个小诀窍,抄!抄原版游戏、抄各个作者的mod,从你想得到地方,直接抄个格式下来,然后再自己修改,这样的好处是能把犯错的可能降到最低,坏处是无脑抄抄抄会让你的能力设计被框住,没法实现一些独特的功能 。

文明和领袖的xml
为了方便讲解,我们先从文明和领袖的xml讲起 。
文明6mod制作图文教程 文明6mod怎么制作 mod制作方法 工具准备

文章插图

文明6mod制作图文教程 文明6mod怎么制作 mod制作方法 工具准备

文章插图
这是作为mod的时候,一个领袖和文明xml的格式,这部分的基础格式主要参考各个已发布的mod和官方的dlc文件,每个设定的type都是环环嵌套的,遵从着一个逻辑:先row(设定)再读取 。
新手起步,我建议你主要参考官方dlc的文档,先把所有的主项目(Types、Leaders、LeaderQuotes等)复制进你的xml,然后根据你的需要删减主项目 。
然后我们再逐个编辑各个主项目 。
首先是types,这个项目负责申明你设定的项的名称和类型,例如
<Row Type="CIVILIZATION_CINDY" Kind="KIND_CIVILIZATION"/>
他的意思就是设定一个项,名称叫“CINDY”(Type="CIVILIZATION_CINDY"),他的类别是“文明”(Kind="KIND_CIVILIZATION"),在你mod里,所有的项都要先row(设定)再读取(使用) 。所有变量都有一个设定,如果不设定直接使用一个全新的变量,游戏就会报错 。
文明6mod制作图文教程 文明6mod怎么制作 mod制作方法 工具准备

文章插图

文明6mod制作图文教程 文明6mod怎么制作 mod制作方法 工具准备

文章插图


文明6mod制作图文教程 文明6mod怎么制作 mod制作方法 工具准备

文章插图

文明6mod制作图文教程 文明6mod怎么制作 mod制作方法 工具准备

文章插图
节选了部分常用变量,这些变量都在Sid Meier's Civilization VI\Base\Assets\Gameplay\Data文件夹下的xml里 。
设定玩type后,我们就要接着设定各类分支子项了,这个子项根据你的xml用途不同也是不同的,需要的子项数也是不同的,具体需要多少要参考官方给的文本,以一个文明的xml为例,他的分支子项就是
文明6mod制作图文教程 文明6mod怎么制作 mod制作方法 工具准备

文章插图
这些子项根据主类的不同有不同的功能,但第一个子项一半是以主类命名,设定了基本信息,以文明为例
文明6mod制作图文教程 文明6mod怎么制作 mod制作方法 工具准备

文章插图
这里就设定了文明的程序内部代码,文明名称,文明介绍,国民称呼,文明等级,城市名称池深度,所属人种 。
每个子项的定义内容和具体格式都必须按照原版游戏给定的范围,不能随意增加,但可有限删除 。

我们再讲如何实现你设定的能力
各种能力,比如文明能力,领袖能力,单位能力,城区能力,建筑能力,都需要通过设定“trait”来申明 。申明后,文明和领袖能力需要把trait和modifier绑定,其余能力需要把这个单位和modifier进行绑定,才能生效 。

推荐阅读