关于mod存放路径:
官方mod存在于dlc目录:F:\steam\steamapps\common\Sid Meier's Civilization VI\DLC
新手教程mod存在于场景目录:F:\steam\steamapps\common\Sid Meier's Civilization VI\Base\Assets\Scenarios\Tutorial
玩家mod存在于我的文档My Games:C:\Users\lh\Documents\My Games\Sid Meier's Civilization VI\Mods
订阅的mod:F:\steam\steamapps\workshop\content\289070
关于基础游戏相关信息存放在:F:\steam\steamapps\common\Sid Meier's Civilization VI\Base\Assets\Gameplay\Data
mod的组成:
以阿兹特克为例:
----Aztec_Montezuma
|
|-----Aztec_Montezuma.modinfo
|-----data
|
|----Aztec_Montezuma_ConfigData
|----Aztec_Montezuma_Expansion1.xml
|----Aztec_Montezuma_GameplayData.xml
|----Building_Huey_Teocalli.xml
一个modinfo、4个xml文件
在F:\steam\steamapps\common\Sid Meier's Civilization VI\Base\Assets\Gameplay\Data\Schema\01_GameplaySchema.sql。
文件中定义 了游戏的数据库的各种表,包括有建筑、文明、科技等等,这张表在制作Mod的时 候需要经常查询。
sql的insert用row标签来实现:
或者
小结
以resouces.xml为例,结合01_GameplaySchema.sql进行分析
开始是Types标签,对应sql文件中创建Types这张表,这张表中其中hash字段Integer类型、唯一性字段、默认值为0、并且不能为空
由此可知,一个大标签就是一个建表语句,比如Types。
修改update操作:
以小麦为例,小麦资源的值是
那么接下来我们查看sql建表语句:
得知我们需要类似这样where ResourceType = “RESOURCE_WHEAT” set YieldChange = "1"的语法
于是我们最好有个例子来借鉴,于是找到阿兹特克文明的Aztec_Montezuma_Expansion1.xml文件,里面有官方的where语句
由于可能一种资源对应两种YieldChange,例如下面,皮毛资源对应了食物和金钱,那么我们在where的时候最好加上YieldType
于是就有了
也可以这样写
删除:
或者
今天就记到这边