# 八、创建基础的Modifier数据

## 终于！

你可以做游戏的功能了，这里我们先只讲领袖的功能是怎么做出来的，我们会用频繁大佬工具，来实现一些效果。

## 设计你的效果

### 契合原版特性

首先，你要知道，有些特性是无法在游戏中实现的，比如英雄特性，因为游戏的Dll并不支持这个特性，除非像文明5一样，有Dll扩展出现，我们才能够完成这一部分。

那么，还有一部分特性是需要通过Lua脚本语言实现的，比如政哥哥每次触发尤里卡或者鼓舞时所有城市的建造进度推进20%。

而剩下的，只需要通过游戏中的Modifier组合就可以实现，或者可以直接套用原版游戏中存在的特性。

这里我们为了简单，我们先来给卫宫设计几个比较容易的特性：

领土扩张速度+100%。

单位射程+4，战斗力-8，拥有工业化科技后抵消该效果。

拥有粮仓的城市人口成长速度+50%。

这三个特性还是比较好做的，我们先开始做：

### 认识大佬工具

![第二个功能](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVa4ig6h-6H0Sm2t3G%2F-LnVdqBIEQj1MH1TbRI3%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=315a6e85-9048-4e08-9db5-2c40e1b7d455)

![现在我们来解释一下](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVa4ig6h-6H0Sm2t3G%2F-LnVdsJ91dk6Gioar4bw%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=a07048a7-0354-441a-a6aa-5302c8348638)

* 先选择列表：意思是这个Modifier绑定给谁，比如图中的Belief，是信仰，如果我们给领袖绑定，则是选择Trait
* 所有者：这个意思是指属于谁，比如哪个建筑？哪个单位？哪个信仰？等等，我们根据第四章写的信息填写。
* ModifierId：你做的每个Modifier都是有ID的，你必须给每个Modifier起个ID，并且保证与其他不重复。
* ModifierType：这是指主要的效果类型，比如修改XXX城市的增长度啊等等。
* EffectType：这是特效类型，目前我们不需要使用他，这个特效类型影响ModifierType，属于\<DynamicModifiers>部分。
* CollectionType：所属集合类型，这是指被赋予者相关的信息，也是\<DynamicModifiers>，当前不需要使用。
* OwnerRequirementSet：这是指所有者的条件集合，其中添加的Requirement会被当做条件进行判断，比如，这个特性所有者是不是拥有某个建筑或者某个区域。
* SubjectRequirementSet：目标对象的条件集合，比如修改城市中区域的建造速度，那么城市就是OwnerRequirementSet，区域就是SubjectRequirementSet?
* ModifierArguments：Modifier是需要值的，比如建造速度加快多少，单位射程加多少，都是在这里填写。

总而言之，我们首先需要找到ModifierType，然后为其加上条件（RequirementSet），最终我们就做成了。

## 领土扩张速度

![我们通过ModifierType旁边的放大镜来搜索ModifierType](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVa4ig6h-6H0Sm2t3G%2F-LnVhM5wQTrPAHvuNIpE%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=d031947d-d44f-475c-87df-82d05470dc61)

![当我们选中之后，ModifierArguments提示我们输入值，也就是写一个加成率](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVa4ig6h-6H0Sm2t3G%2F-LnVigeDWS0cmzK94hNO%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=3b8ef5b0-6e70-4503-842b-b6bc0a9b430d)

MODIFIER\_ALL\_CITIES\_CULTURE\_BORDER\_EXPANSION，字面意思非常完美，修改所有城市文化边境成长速度，但你需要注意的是，这个ALL\_CITIES是指所有城市，没错，就是包括那些都不属于我们这位领袖的城市，这时候该怎么办呢？

{% hint style="info" %}
下面二选一
{% endhint %}

### (高级)手动创建DynamicModifiers

我们需要手动创建\<DynamicModifiers>，现在，我们在ModBuddy中单独建立一个Xml：

![我起了这个名字，因为在游戏中使用，所以放到了InGame中](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVa4ig6h-6H0Sm2t3G%2F-LnViSI3kF5ro57zAp2r%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=25b86f8f-aa84-49cf-b713-17796a1e0b36)

然后我们来到游戏目录中：

![找到这个Modifiers.xml](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVa4ig6h-6H0Sm2t3G%2F-LnViuROC87Uju7stdd0%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=94779e59-e85b-4d9a-b57f-5dfff1adccdf)

我们用Notepad打开，这里我用Notepad++打开的，我们搜索MODIFIER\_ALL\_CITIES\_CULTURE\_BORDER\_EXPANSION

![这是Types中的](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVa4ig6h-6H0Sm2t3G%2F-LnVj7zaPJ_UGTCosGV7%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=725227f1-36ef-4019-ad35-f24c6d8c20bf)

![这是DynamicModifiers中的](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVa4ig6h-6H0Sm2t3G%2F-LnVjBLEAXASQBPEELc8%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=757a8f4c-e267-4f0d-922e-789df21ad722)

我们把这两个条目连同结构复制下来，粘贴到我们的XML中。

![这个样子](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVa4ig6h-6H0Sm2t3G%2F-LnVjMkqzJvrzBD-cyuy%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=cf217dca-a6ce-4386-bf14-339678219e1b)

```markup
<GameData>
	<Types>
		<Row Type="MODIFIER_ALL_CITIES_CULTURE_BORDER_EXPANSION" Kind="KIND_MODIFIER"/>
	</Types>
	<DynamicModifiers>
		<Row>
			<ModifierType>MODIFIER_ALL_CITIES_CULTURE_BORDER_EXPANSION</ModifierType>
			<CollectionType>COLLECTION_ALL_CITIES</CollectionType>
			<EffectType>EFFECT_ADJUST_CITY_CULTURE_BORDER_EXPANSION</EffectType>
		</Row>
	</DynamicModifiers>
</GameData>

```

我们分析一下代码:

\<Types>在第四章已经讲过了，如果你想要添加新的东西，大部分都需要通过\<Types>来注册声明，这里声明MODIFIER\_ALL\_CITIES\_CULTURE\_BORDER\_EXPANSION，为一个Modifier。

\<DynamicModifiers>，很多人可能不理解，为什么是动态(Dynamic)的？事实上这是说在游戏进行时，根据游戏变动和其中的参数而产生不同的效果（类似这种行为），所以称之为动态，而不是写死的(Static)。

\<ModifierType>就是我们所声明的Type。

\<CollectionType>是指所有者，比如这里的所有者就是所有城市。

\<EffectType>是实际上的效果，大家可以看到这个效果是修改城市边境增长。

那么我们该怎么修改？当然是把所有城市改成玩家城市了，如下：

```markup

<GameData>
	<Types>
		<Row Type="MODIFIER_FATE_EMIYA_PLAYER_CITIES_CULTURE_BORDER_EXPANSION" Kind="KIND_MODIFIER"/>
	</Types>
	<DynamicModifiers>
		<Row>
			<ModifierType>MODIFIER_FATE_EMIYA_PLAYER_CITIES_CULTURE_BORDER_EXPANSION</ModifierType>
			<CollectionType>COLLECTION_PLAYER_CITIES</CollectionType>
			<EffectType>EFFECT_ADJUST_CITY_CULTURE_BORDER_EXPANSION</EffectType>
		</Row>
	</DynamicModifiers>
	
</GameData>

```

我们看这个代码，我们起了个新的Id，并加上了唯一的一段特殊标记FATE\_EMIYA(因为其他Mod也可能会复写这个效果，为了防止冲突，我们自己加一段自己的‘识别码’)

然后，我们把CollectionType改成了COLLECTION\_PLAYER\_CITIES。

这样所有城市就会变成所属玩家城市了。

你可能会说，我把CollectionType改成COLLECTION\_PLAYER\_UNITS，会不会所属单位存在的城市就有这个效果了？

并不，因为你需要保证EffectType中的对象和CollectionType中的是同一类，比如目前的这两者，它们都是城市，所以可以这么修改。

### (简单)大佬工具一键式生成

现在，我们回到大佬工具1.5，把ModifierId修改成我们自己的Id，把CollectionType选择为我们刚刚改过的样子(不选择也可以)：

在所有者写上我们的\<LeaderTraits>中的特性Id：TRAIT\_LEADER\_FSN\_ARCHER\_EMIYA\_UBW,并为这个效果起了个新Id:MODIFIER\_FATE\_EMIYA\_CITIES\_CULTURE\_BORDER\_EXPANSION。

在ModifierArguments的值中填写100，即为该效果会增长100。

{% hint style="danger" %}
负数可能无效
{% endhint %}

![最终是这个样子](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVa4ig6h-6H0Sm2t3G%2F-LnVlPhcnD9EjFVgu_p5%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=d6f4fc04-53eb-49d1-9380-aec44f2b4f8b)

现在，我们点击生成。

![啊哦，大佬工具已经帮我们做好Dynamic了……](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVa4ig6h-6H0Sm2t3G%2F-LnVlrzA4aoQ3_lGc404%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=bbe81116-1a5e-4644-9736-6ef154b80074)

![我们在ModBuddy中新建一个SQL文件](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVa4ig6h-6H0Sm2t3G%2F-LnVmNKqJi_teymI-8bb%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=fe0c7a2e-8e3c-42a6-a0af-d9a0dbd20873)

![复制粘贴后，写上正确的注释](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVmZYeHR2PlfnkwrLT%2F-LnVmqQW2kXlcCI_1W0i%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=d0fe0a09-70f1-4d89-9299-b2ca16715733)

就像这样，一个Modifiers被添加进去了！<br>

## Modifiers解释

实际上我在大佬工具1.5（上面）我已经讲解过了，这一部分和Xml没有多大区别。

我们在\<TraitModifiers>中绑定TraitType(天赋类型)和ModifierId。

然后在\<Modifiers>中协商ModiferId和和ModifierType。

在\<ModifierArguments>中写上ModifierId和对应的键值（Name:Value）

这就是Xml的实现步骤，我贴一段查理曼的实现代码：

```markup
	<TraitModifiers>

		<Row TraitType="TRAIT_CHARLEMAGNE_SABER_JOYEUSE_ORDRE" ModifierId="TRAIT_CHARLEMAGNE_SABER_JOYEUSE_ORDRE_GREAT"/>
		
	</TraitModifiers>
	
	<Modifiers>

		<!-- GREAT PEOPLE -->

		<Row>
			<ModifierId>TRAIT_CHARLEMAGNE_SABER_JOYEUSE_ORDRE_GREAT</ModifierId>
			<ModifierType>MODIFIER_PLAYER_GOVERNMENT_FLAT_BONUS</ModifierType>
		</Row>
		
	</Modifiers>
	
	<ModifierArguments>

		<!-- Great People -->

		<Row>
			<ModifierId>TRAIT_CHARLEMAGNE_SABER_JOYEUSE_ORDRE_GREAT</ModifierId>
			<Name>BonusType</Name>
			<Value>GOVERNMENTBONUS_GREAT_PEOPLE</Value>
		</Row>
		<Row>
			<ModifierId>TRAIT_CHARLEMAGNE_SABER_JOYEUSE_ORDRE_GREAT</ModifierId>
			<Name>Amount</Name>
			<Value>100</Value>
		</Row>
		
	</ModifierArguments>
	
	<!-- 该效果为伟人点数增长+100% -->
```

就是这样，如果你喜欢大佬工具1.5，你可以使用大佬工具1.5来做，如果你喜欢Xml，你就可以写Xml。

## 粮仓城市加人口成长速度

![我们搜索后发现有一个非常完美的ModifierType](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVmZYeHR2PlfnkwrLT%2F-LnVoKxb12CGL9wOdfII%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=6f296927-7ff8-4aad-a85e-2ee358f849f5)

字面意思，修改玩家城市增长率，但是，我们需要的是有粮仓的城市，那么粮仓该怎么实现呢？

![我们刚刚提到过](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVmZYeHR2PlfnkwrLT%2F-LnVovZ01wS4TdQ_kzCr%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=d4c77398-0466-4029-93cf-43c55db91333)

这时候，我们就需要使用RequirementSet，我们需要判断的是需要增长人口的城市有没有建筑，而不是玩家的城市们有没有建筑，所以们选择SubjectRequirementSet。

![点击加号后，会出现一个条目](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVmZYeHR2PlfnkwrLT%2F-LnVp9TlcidtxXg8tolB%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=37b9fbd8-6aa5-493b-93cb-d74ed1e3eb41)

![Requirement的详细信息](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVmZYeHR2PlfnkwrLT%2F-LnVpCr9OjAdkpqeihAq%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=79493f98-1460-490b-b62d-238b84a2a0bb)

Requirement和Modifier一样，一个Id一个Type，但没有Collection和Effect，所以相对来说会简单一些。

![点击下拉后，会有大量的REQUIREMENT](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVmZYeHR2PlfnkwrLT%2F-LnVpPmVBA02XfV4Ba-h%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=4252ff08-255e-40a2-803c-2759a61b838e)

大佬工具1.5中，提示R\&F的是迭起兴衰的特性，带叹号的特性可能没有效果。

![这一行是指这个条件的特点](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVmZYeHR2PlfnkwrLT%2F-LnVpaWRl9z1rWoplygV%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=3356d133-46a2-4fec-9df3-5e0837a89f4b)

字面意思分别是：相似性、影响、颠倒、逆向、持续、进度、触发。

总而言之，你可以查查官方代码和论坛，因为我用的也很少……而且我也没有找到一些比较相似的说明。

所以我们把这几个勾都去掉。

![我们简单选择了这些](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVmZYeHR2PlfnkwrLT%2F-LnVq_JGhRaeeRVhUKaU%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=143567bd-a16f-4e32-aed7-673ab805ccfc)

BuildingType中的BUILDING\_GRANARY是指粮仓这个建筑，你可以查阅官方wiki或者论坛来获取，或者查游戏文件，或者查游戏生成的数据库。

我们给ID附上一个比较易读的ID，然后点击OK。

在外层，我们给RequirementSet赋予一个ID：REQUIREMENT\_SET\_EMIYA\_CITY\_HAS\_GRANARY，你可能会问，这不是多此一举吗？里一层外一层的。

![这是关键](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVqtK5BXptrij3E7KZ%2F-LnVrCzfJsM7TCFsGCQ8%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=a904f7c8-c424-4eef-aec9-e04dbb9b4889)

实际上，被称之为Set，即为一个集合，一个集合中可以有多条条件，这些条件，你可以选择满足其1即可生效，也可以选择满足所有才能生效，而Set中的功能就是这个意思。

比如我想要粮仓和军营同时存在的城市有这个效果，我就可以选择All，如果是其中一个存在，我就可以选择Any。

这里我们选择All和Any都一样，因为我们只有一条特性。

![点击生成后](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVqtK5BXptrij3E7KZ%2F-LnVs4oy8hz10bl19vKx%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=da1f7359-0374-4eeb-a944-ecdd8345631f)

![然后成了这个样子](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVqtK5BXptrij3E7KZ%2F-LnVsCyfqwOJHDkRwwDM%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=a745aa4e-c4e9-4223-9499-3f06e7c906f6)

我也给想用Xml的大佬们一段例子，这是村正的：

```markup
<GameData>


	<RequirementSets>

		<Row>
			<RequirementSetId>SENJI_MURAMASA_REQUIRES_UNIT_IS_MELEE</RequirementSetId>
			<RequirementSetType>REQUIREMENTSET_TEST_ALL</RequirementSetType>
		</Row>


		
	</RequirementSets>


	<RequirementSetRequirements>

		<Row>
			<RequirementSetId>SENJI_MURAMASA_REQUIRES_UNIT_IS_MELEE</RequirementSetId>
			<RequirementId>SENJI_MURAMASA_REQUIRES_UNIT_IS_MELEE</RequirementId>
		</Row>



		
		
	</RequirementSetRequirements>

		<Requirements>
		<Row>
			<RequirementId>SENJI_MURAMASA_REQUIRES_UNIT_IS_MELEE</RequirementId>
			<RequirementType>REQUIREMENT_UNIT_TAG_MATCHES</RequirementType>
		</Row>




	</Requirements>		
	
		<RequirementArguments>
			<Row>
				<RequirementId>SENJI_MURAMASA_REQUIRES_UNIT_IS_MELEE</RequirementId>
				<Name>Tag</Name>
				<Value>CLASS_MELEE</Value>
			</Row>


			
		</RequirementArguments>
	
</GameData>

<!-- 判断单位是不是近战 -->
```

## 远程单位射程+，战斗力-

这个需要两个Modifier来组合成一个效果，因为同一个Modifier不可能实现+射程和-战斗力。

我们先做加射程，因为ModifierType已经很明确的描述是远程单位了，所以我们不需要加一个Requirement，直接修改:

![这是射程+4](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVqtK5BXptrij3E7KZ%2F-LnVuD9nO5cSzEw47Ooq%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=2319f024-f9bf-47be-860d-56b806f2a22d)

而战斗力-8，拥有工业化后抵消该效果，就需要我们使用:MODIFIER\_PLAYER\_UNITS\_ATTACH\_MODIFIER，为玩家的单位赋予特性。

![拥有X科技反转后即为未拥有X科技，通过这个实现，我们可以在满足该条件下战斗力-8](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVqtK5BXptrij3E7KZ%2F-LnVyQNr8ywOeCzzOISL%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=b6e78088-c291-48ff-ab75-4c26118cb511)

![先生成，参数中的ModifierId不去管](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVqtK5BXptrij3E7KZ%2F-LnVyYZjXm_PQ5rAO-0d%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=9bf0dc1b-87e4-4383-8c01-4f55ecdab3b3)

![复制粘贴到SQL中](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVqtK5BXptrij3E7KZ%2F-LnVyazy0uHOAwW5rd_9%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=6e14ecac-ab7b-4cfa-af89-bf9f25991726)

现在我们来做单位-攻击力的效果

![](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVqtK5BXptrij3E7KZ%2F-LnVz2o1erIw9D8Ip9_c%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=c756bf3d-ee10-49e5-8b64-f8803c5505ee)

你可能会想，我们要修改的是玩家的所有单位，而不是单独的单位，为什么要这么做？

结合MODIFIER\_FATE\_EMIYA\_UNITS\_ATTACH\_MODIFIER，我们可以为玩家的每个单位附上这个效果，这样，我们可以即判断玩家是否拥有科技，又可以给每个单位添加效果。

![我们不需要上面这一部分](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVqtK5BXptrij3E7KZ%2F-LnVzS56i3CBNGhL81Gi%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=9b6f2d4d-554c-4db7-a9b7-f16f183b80e7)

因为我们绑定给Modifier，就不需要把这个特性的TraitModifiers部分复制下来。

![应该是这个样子](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVqtK5BXptrij3E7KZ%2F-LnVzZZXJlUAwwC7M8b1%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=8bf10d48-655e-4097-a1bb-308401228a6a)

![现在我们填上刚才没有写的值](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVqtK5BXptrij3E7KZ%2F-LnVzdeRBZgX0WmADjyK%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=97639bd3-f5ca-4a2e-9d7d-0c2fded8420e)

![填上之后](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnVqtK5BXptrij3E7KZ%2F-LnVzk06hsiD51yxYxu1%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=8abafbce-66f1-4525-932f-1a14206c122e)

然而，攻击力部分我们还需要一个文本专门在战斗力缩略图那个地方显示：

```markup
	<ModifierStrings>
		<Row ModifierId="MODIFIER_FATE_EMIYA_UNIT_COMBAT_STRENGTH" Context="Preview" Text="LOC_ABILITY_EMIYA_COMBAT_STRENGTH"/>
	</ModifierStrings>
```

把这一部分复制到Leader\_Data中，而相同的，我还需要添加ingame的文本：

```markup
		<Row Tag="LOC_ABILITY_EMIYA_COMBAT_STRENGTH" Language="zh_Hans_CN">

			<Text>-8 赝品</Text>
		</Row>

		<Row Tag="LOC_ABILITY_EMIYA_COMBAT_STRENGTH" Language="zh_Hant_HK">

			<Text>-8 贋品</Text>
		</Row>

		<Row Tag="LOC_ABILITY_EMIYA_COMBAT_STRENGTH" Language="en_US">

			<Text>-8 Fake</Text>
		</Row>
```

## 最终数据

```sql
-- FSN_Emiya_Arhcer_Leader_Modifiers
-- Author: HaoJun0823
-- DateCreated: 8/30/2019 12:29:54 PM
--------------------------------------------------------------

-- 领土扩张速度+100%

INSERT INTO TraitModifiers (TraitType, ModifierId) VALUES 
("TRAIT_LEADER_FSN_ARCHER_EMIYA_UBW", "MODIFIER_FATE_EMIYA_CITIES_CULTURE_BORDER_EXPANSION");

INSERT INTO Modifiers (ModifierId, ModifierType, RunOnce, Permanent, NewOnly, OwnerRequirementSetId, SubjectRequirementSetId) VALUES 
("MODIFIER_FATE_EMIYA_CITIES_CULTURE_BORDER_EXPANSION", "MODIFIER_FATE_EMIYA_PLAYER_CITIES_CULTURE_BORDER_EXPANSION", 0, 0, 0, NULL, NULL);

INSERT INTO ModifierArguments (ModifierId, Name, Value) VALUES 
("MODIFIER_FATE_EMIYA_CITIES_CULTURE_BORDER_EXPANSION", "Amount", 100);

-- Custom ModifierType

INSERT INTO Types (Type, Kind) VALUES 
("MODIFIER_FATE_EMIYA_PLAYER_CITIES_CULTURE_BORDER_EXPANSION", "KIND_MODIFIER");

INSERT INTO DynamicModifiers (ModifierType, CollectionType, EffectType) VALUES 
("MODIFIER_FATE_EMIYA_PLAYER_CITIES_CULTURE_BORDER_EXPANSION", "COLLECTION_PLAYER_CITIES", "EFFECT_ADJUST_CITY_CULTURE_BORDER_EXPANSION");

-- 拥有粮仓的城市人口增长+50%

INSERT INTO TraitModifiers (TraitType, ModifierId) VALUES 
("TRAIT_LEADER_FSN_ARCHER_EMIYA_UBW", "MODIFIER_FATE_EMIYA_CITIES_GROWTH_REQUIREMENT_GRANARY");

INSERT INTO Modifiers (ModifierId, ModifierType, RunOnce, Permanent, NewOnly, OwnerRequirementSetId, SubjectRequirementSetId) VALUES 
("MODIFIER_FATE_EMIYA_CITIES_GROWTH_REQUIREMENT_GRANARY", "MODIFIER_PLAYER_CITIES_ADJUST_CITY_GROWTH", 0, 0, 0, NULL, "REQUIREMENT_SET_EMIYA_CITY_HAS_GRANARY");

INSERT INTO ModifierArguments (ModifierId, Name, Value) VALUES 
("MODIFIER_FATE_EMIYA_CITIES_GROWTH_REQUIREMENT_GRANARY", "Amount", 50);

-- Single Conditions

INSERT INTO Requirements (RequirementId, RequirementType, ProgressWeight) VALUES 
("REQUIREMENT_EMIYA_CITY_HAS_GRANARY", "REQUIREMENT_CITY_HAS_BUILDING", 0);

INSERT INTO RequirementArguments (RequirementId, Name, Value) VALUES 
("REQUIREMENT_EMIYA_CITY_HAS_GRANARY", "BuildingType", "BUILDING_GRANARY");

-- Conditions Group

INSERT INTO RequirementSets (RequirementSetId, RequirementSetType) VALUES 
("REQUIREMENT_SET_EMIYA_CITY_HAS_GRANARY", "REQUIREMENTSET_TEST_ALL");

INSERT INTO RequirementSetRequirements (RequirementSetId, RequirementId) VALUES 
("REQUIREMENT_SET_EMIYA_CITY_HAS_GRANARY", "REQUIREMENT_EMIYA_CITY_HAS_GRANARY");

-- 单位射程+4

INSERT INTO TraitModifiers (TraitType, ModifierId) VALUES 
("TRAIT_LEADER_FSN_ARCHER_EMIYA_UBW", "MODIFIER_FATE_EMIYA_UNITS_ATTACK_RANGE");

INSERT INTO Modifiers (ModifierId, ModifierType, RunOnce, Permanent, NewOnly, OwnerRequirementSetId, SubjectRequirementSetId) VALUES 
("MODIFIER_FATE_EMIYA_UNITS_ATTACK_RANGE", "MODIFIER_PLAYER_UNITS_ADJUST_ATTACK_RANGE", 0, 0, 0, NULL, NULL);

INSERT INTO ModifierArguments (ModifierId, Name, Value) VALUES 
("MODIFIER_FATE_EMIYA_UNITS_ATTACK_RANGE", "Amount", 4);



-- 未拥有工业化单位攻击力-8

INSERT INTO TraitModifiers (TraitType, ModifierId) VALUES 
("TRAIT_LEADER_FSN_ARCHER_EMIYA_UBW", "MODIFIER_FATE_EMIYA_UNITS_ATTACH_MODIFIER");

INSERT INTO Modifiers (ModifierId, ModifierType, RunOnce, Permanent, NewOnly, OwnerRequirementSetId, SubjectRequirementSetId) VALUES 
("MODIFIER_FATE_EMIYA_UNITS_ATTACH_MODIFIER", "MODIFIER_PLAYER_UNITS_ATTACH_MODIFIER", 0, 0, 0, "REQUIREMENT_SET_EMIYA_NOT_HAVE_INDUSTRIALIZATION", NULL);

INSERT INTO ModifierArguments (ModifierId, Name, Value) VALUES 
("MODIFIER_FATE_EMIYA_UNITS_ATTACH_MODIFIER", "ModifierId", "MODIFIER_FATE_EMIYA_UNIT_COMBAT_STRENGTH");

-- Single Conditions

INSERT INTO Requirements (RequirementId, RequirementType, Inverse) VALUES 
("REQUIREMENT_EMIYA_NOT_HAVE_INDUSTRIALIZATION", "REQUIREMENT_PLAYER_HAS_TECHNOLOGY", 1);

INSERT INTO RequirementArguments (RequirementId, Name, Value) VALUES 
("REQUIREMENT_EMIYA_NOT_HAVE_INDUSTRIALIZATION", "TechnologyType", "TECH_INDUSTRIALIZATION");

-- Conditions Group

INSERT INTO RequirementSets (RequirementSetId, RequirementSetType) VALUES 
("REQUIREMENT_SET_EMIYA_NOT_HAVE_INDUSTRIALIZATION", "REQUIREMENTSET_TEST_ALL");

INSERT INTO RequirementSetRequirements (RequirementSetId, RequirementId) VALUES 
("REQUIREMENT_SET_EMIYA_NOT_HAVE_INDUSTRIALIZATION", "REQUIREMENT_EMIYA_NOT_HAVE_INDUSTRIALIZATION");


-- 未拥有工业化单位攻击力-8 特性

INSERT INTO Modifiers (ModifierId, ModifierType, RunOnce, Permanent, NewOnly, OwnerRequirementSetId, SubjectRequirementSetId) VALUES 
("MODIFIER_FATE_EMIYA_UNIT_COMBAT_STRENGTH", "MODIFIER_UNIT_ADJUST_COMBAT_STRENGTH", 0, 0, 0, NULL, NULL);

INSERT INTO ModifierArguments (ModifierId, Name, Value) VALUES 
("MODIFIER_FATE_EMIYA_UNIT_COMBAT_STRENGTH", "Amount", -8);

```

这是全部代码，你可以参考，并且从中获取灵感，这些差不多大概也许是所有比较有特性的组合了，当然，还有更多，我们将在文明章节讲解。

## 议程\<Agenda>

议程也是用TraitModifier实现的，然而里面包括了几个参数：

首先我们找到第四章中\<AgendaTraits>写下的Id:TRAIT\_AGENDA\_FSN\_ARCHER\_EMIYA

![就是这个](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnW1zADM6dzo8Sm6mqH%2F-LnW2CNOIW-nEnrNLrax%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=d1eb507d-6f2b-4575-b1d8-42459feea2e6)

然后我们手动创建两个TraitModifiers：

![一个是宣布友好，一个是宣布谴责](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnW1zADM6dzo8Sm6mqH%2F-LnW2TuC1y8BhXkyKxf_%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=c7d8988e-c5fd-4fcc-850e-7e4173821501)

然后创建Modifiers

![分别是宣布友好和宣布谴责的特性](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnW1zADM6dzo8Sm6mqH%2F-LnW2iMXAvT8HeYvVmmA%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=67491071-53af-46de-9dde-25ad5bf8c37a)

接下来创建是什么？没错，就是ModifierArguments

![乱七八糟](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnW1zADM6dzo8Sm6mqH%2F-LnW3Kbp31L1gzswS8oE%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=e9066803-a82c-4192-aae3-05ec38fcf6c0)

然后还需要两个玄学ModifierStrings

![就是这些](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnW1zADM6dzo8Sm6mqH%2F-LnW3ViA6wkQgL3IAUZ5%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=af46f85b-887b-4299-b62c-2785b0326606)

终于，添加完了！我会讲一讲比较特殊的地方：

```markup
	<Modifiers>
		<Row>
			<ModifierId>AGENDA_CHARLEMAGNE_SABER_HOLY_KNIGHT_EMPEROR_EX_FRIEND</ModifierId>
			<ModifierType>MODIFIER_PLAYER_DIPLOMACY_SIMPLE_MODIFIER</ModifierType>
			<SubjectRequirementSetId>PLAYER_DECLARED_FRIEND</SubjectRequirementSetId>
		</Row>
		<Row>
			<ModifierId>AGENDA_CHARLEMAGNE_SABER_HOLY_KNIGHT_EMPEROR_EX_DENOUNCED_FRIEND</ModifierId>
			<ModifierType>MODIFIER_PLAYER_DIPLOMACY_SIMPLE_MODIFIER</ModifierType>
			<SubjectRequirementSetId>PLAYER_FRIEND_DENOUNCED</SubjectRequirementSetId>
		</Row>
	</Modifiers>
```

这里的ModifierType是固定的，只能使用这个，意思是修改外交。

而SubjectRequirement指的是目标领袖的行为，现在是只目标领袖谴责/宣布友好时触发这两个Modifier，当然，你可以添加更多的Modifier。

```markup
	<ModifierArguments>
		<Row>
			<ModifierId>AGENDA_CHARLEMAGNE_SABER_HOLY_KNIGHT_EMPEROR_EX_FRIEND</ModifierId>
			<Name>InitialValue</Name>
			<Value>18</Value>
		</Row>
		<Row>
			<ModifierId>AGENDA_CHARLEMAGNE_SABER_HOLY_KNIGHT_EMPEROR_EX_FRIEND</ModifierId>
			<Name>ReductionTurns</Name>
			<Value>10</Value>
		</Row>
		<Row>
			<ModifierId>AGENDA_CHARLEMAGNE_SABER_HOLY_KNIGHT_EMPEROR_EX_FRIEND</ModifierId>
			<Name>ReductionValue</Name>
			<Value>1</Value>
		</Row>
		<Row>
			<ModifierId>AGENDA_CHARLEMAGNE_SABER_HOLY_KNIGHT_EMPEROR_EX_FRIEND</ModifierId>
			<Name>MessageThrottle</Name>
			<Value>20</Value>
		</Row>
		<Row>
			<ModifierId>AGENDA_CHARLEMAGNE_SABER_HOLY_KNIGHT_EMPEROR_EX_FRIEND</ModifierId>
			<Name>StatementKey</Name>
			<Value>LOC_DIPLO_KUDO_LEADER_CHARLEMAGNE_SABER_REASON_ANY</Value>
		</Row>
		<Row>
			<ModifierId>AGENDA_CHARLEMAGNE_SABER_HOLY_KNIGHT_EMPEROR_EX_FRIEND</ModifierId>
			<Name>SimpleModifierDescription</Name>
			<Value>LOC_DIPLO_MODIFIER_CHARLEMAGNE_SABER_HOLY_KNIGHT_EMPEROR_EX_DECLARED_FRIEND</Value>
		</Row>
		
		<Row>
			<ModifierId>AGENDA_CHARLEMAGNE_SABER_HOLY_KNIGHT_EMPEROR_EX_DENOUNCED_FRIEND</ModifierId>
			<Name>InitialValue</Name>
			<Value>-18</Value>
		</Row>
		<Row>
			<ModifierId>AGENDA_CHARLEMAGNE_SABER_HOLY_KNIGHT_EMPEROR_EX_DENOUNCED_FRIEND</ModifierId>
			<Name>ReductionTurns</Name>
			<Value>10</Value>
		</Row>
		<Row>
			<ModifierId>AGENDA_CHARLEMAGNE_SABER_HOLY_KNIGHT_EMPEROR_EX_DENOUNCED_FRIEND</ModifierId>
			<Name>ReductionValue</Name>
			<Value>-1</Value>
		</Row>
		<Row>
			<ModifierId>AGENDA_CHARLEMAGNE_SABER_HOLY_KNIGHT_EMPEROR_EX_DENOUNCED_FRIEND</ModifierId>
			<Name>MessageThrottle</Name>
			<Value>20</Value>
		</Row>
		<Row>
			<ModifierId>AGENDA_CHARLEMAGNE_SABER_HOLY_KNIGHT_EMPEROR_EX_DENOUNCED_FRIEND</ModifierId>
			<Name>StatementKey</Name>
			<Value>LOC_DIPLO_WARNING_LEADER_CHARLEMAGNE_SABER_REASON_ANY</Value>
		</Row>
		<Row>
			<ModifierId>AGENDA_CHARLEMAGNE_SABER_HOLY_KNIGHT_EMPEROR_EX_DENOUNCED_FRIEND</ModifierId>
			<Name>SimpleModifierDescription</Name>
			<Value>LOC_DIPLO_MODIFIER_CHARLEMAGNE_SABER_HOLY_KNIGHT_EMPEROR_EX_DENOUNCED_FRIEND</Value>
		</Row>		
	</ModifierArguments>
```

这一部分是MODIFIER\_PLAYER\_DIPLOMACY\_SIMPLE\_MODIFIER的参数。

{% hint style="warning" %}
我太难了，这一部分，我也没找到什么比较好的解释，先听我胡说吧。
{% endhint %}

* InitialValue：初始值，意思应该是最初的预设值，友好是正数，不友好是负数。（也许是指第一次触发时直接减少/增加的数据）
* ReductionTurns：大概是判断回合，每10回合检查一次条件？
* ReductionValue：检查后条件满足时的变化？
* MessageThrottle：这个完全不知道。
* StatementKey：友好/谴责你
* SimpleModifierDescription：当你查看对方领袖的外交界面时，下面有一行小字会写着这句话，是因为什么和你变化了好感。

{% hint style="danger" %}
保证能使用，但是上面这几个除了文本之外我是真的迷，有知道的请告诉我，感激不尽。
{% endhint %}

```markup
	<ModifierStrings>
		<Row ModifierId="AGENDA_FSN_ARCHER_EMIYA_FRIEND" Context="Sample" Text="LOC_TOOLTIP_SAMPLE_DIPLOMACY_ALL"/>
		<Row ModifierId="AGENDA_FSN_ARCHER_EMIYA_DENOUNCED_FRIEND" Context="Sample" Text="LOC_TOOLTIP_SAMPLE_DIPLOMACY_ALL"/>
	</ModifierStrings>
```

这两个不解释，必须要添加，你的每一个MODIFIER\_PLAYER\_DIPLOMACY\_SIMPLE\_MODIFIER都需要一条ModifierStrings来显示消息，并且你需要注意Context的类型。

全部代码如下：

```markup

	<TraitModifiers>
		<Row TraitType="TRAIT_AGENDA_FSN_ARCHER_EMIYA" ModifierId="AGENDA_FSN_ARCHER_EMIYA_FRIEND"/>
		<Row TraitType="TRAIT_AGENDA_FSN_ARCHER_EMIYA" ModifierId="AGENDA_FSN_ARCHER_EMIYA_DENOUNCED_FRIEND"/>
	</TraitModifiers>

	<Modifiers>
		<Row>
			<ModifierId>AGENDA_FSN_ARCHER_EMIYA_FRIEND</ModifierId>
			<ModifierType>MODIFIER_PLAYER_DIPLOMACY_SIMPLE_MODIFIER</ModifierType>
			<SubjectRequirementSetId>PLAYER_DECLARED_FRIEND</SubjectRequirementSetId>
		</Row>
		<Row>
			<ModifierId>AGENDA_FSN_ARCHER_EMIYA_DENOUNCED_FRIEND</ModifierId>
			<ModifierType>MODIFIER_PLAYER_DIPLOMACY_SIMPLE_MODIFIER</ModifierType>
			<SubjectRequirementSetId>PLAYER_FRIEND_DENOUNCED</SubjectRequirementSetId>
		</Row>
	</Modifiers>

	<ModifierArguments>
		<Row>
			<ModifierId>AGENDA_FSN_ARCHER_EMIYA_FRIEND</ModifierId>
			<Name>InitialValue</Name>
			<Value>10</Value>
		</Row>
		<Row>
			<ModifierId>AGENDA_FSN_ARCHER_EMIYA_FRIEND</ModifierId>
			<Name>ReductionTurns</Name>
			<Value>10</Value>
		</Row>
		<Row>
			<ModifierId>AGENDA_FSN_ARCHER_EMIYA_FRIEND</ModifierId>
			<Name>ReductionValue</Name>
			<Value>1</Value>
		</Row>
		<Row>
			<ModifierId>AGENDA_FSN_ARCHER_EMIYA_FRIEND</ModifierId>
			<Name>MessageThrottle</Name>
			<Value>20</Value>
		</Row>
		<Row>
			<ModifierId>AGENDA_FSN_ARCHER_EMIYA_FRIEND</ModifierId>
			<Name>StatementKey</Name>
			<Value>LOC_DIPLO_KUDO_LEADER_FSN_ARCHER_EMIYA_REASON_ANY</Value>
		</Row>
		<Row>
			<ModifierId>AGENDA_FSN_ARCHER_EMIYA_FRIEND</ModifierId>
			<Name>SimpleModifierDescription</Name>
			<Value>LOC_DIPLO_KUDO_EXIT_LEADER_FSN_ARCHER_EMIYA_ANY</Value>
		</Row>

		<Row>
			<ModifierId>AGENDA_FSN_ARCHER_EMIYA_DENOUNCED_FRIEND</ModifierId>
			<Name>InitialValue</Name>
			<Value>-10</Value>
		</Row>
		<Row>
			<ModifierId>AGENDA_FSN_ARCHER_EMIYA_DENOUNCED_FRIEND</ModifierId>
			<Name>ReductionTurns</Name>
			<Value>10</Value>
		</Row>
		<Row>
			<ModifierId>AGENDA_FSN_ARCHER_EMIYA_DENOUNCED_FRIEND</ModifierId>
			<Name>ReductionValue</Name>
			<Value>-1</Value>
		</Row>
		<Row>
			<ModifierId>AGENDA_FSN_ARCHER_EMIYA_DENOUNCED_FRIEND</ModifierId>
			<Name>MessageThrottle</Name>
			<Value>20</Value>
		</Row>
		<Row>
			<ModifierId>AGENDA_FSN_ARCHER_EMIYA_DENOUNCED_FRIEND</ModifierId>
			<Name>StatementKey</Name>
			<Value>LOC_DIPLO_WARNING_LEADER_FSN_ARCHER_EMIYA_REASON_ANY</Value>
		</Row>
		<Row>
			<ModifierId>AGENDA_FSN_ARCHER_EMIYA_DENOUNCED_FRIEND</ModifierId>
			<Name>SimpleModifierDescription</Name>
			<Value>LOC_DIPLO_WARNING_EXIT_LEADER_FSN_ARCHER_EMIYA_ANY</Value>
		</Row>
	</ModifierArguments>

	<ModifierStrings>
		<Row ModifierId="AGENDA_FSN_ARCHER_EMIYA_FRIEND" Context="Sample" Text="LOC_TOOLTIP_SAMPLE_DIPLOMACY_ALL"/>
		<Row ModifierId="AGENDA_FSN_ARCHER_EMIYA_DENOUNCED_FRIEND" Context="Sample" Text="LOC_TOOLTIP_SAMPLE_DIPLOMACY_ALL"/>
	</ModifierStrings>
```

慢慢看吧，重点在于\<SubjectRequirementSetId>和ReductionValue和InitialValue和ReductionTurns，还有两个文本。

举个例子：判断同性？REQUIREMENT\_PLAYER\_IS\_SAME\_SEX。

就是这样，这个功能如此实现的。

## 扫尾

我们刚刚做了新的特性，现在来给刚才没有添加的领袖特性说明添加新的说明。

![新说明，用大佬工具1.5生成的](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnW1zADM6dzo8Sm6mqH%2F-LnW742bJRPd-EXwJKjG%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=88186d52-eb3b-4850-9ef0-a65a901a781e)

![很好用，感谢大佬](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnW1zADM6dzo8Sm6mqH%2F-LnW78j63_2cRlY7xEI6%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=75a728c5-daff-4a06-b661-dd9a22af0ff4)

![InGame附加刚才的SQL](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnW1zADM6dzo8Sm6mqH%2F-LnW7E_YmmQbmDvcmx-H%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=d76b2c89-12fb-49f3-9418-8f61e11a4f7c)

现在！运行游戏！

![特性已经被显示出来了](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnW84Ul9QbLqZKKE5YA%2F-LnW85ybNi3JDgoCUVfQ%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=c2fb64d6-f32f-40e0-b693-ef8714e09903)

![最终的加载界面](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnW84Ul9QbLqZKKE5YA%2F-LnW8Mafew6x2zWDUmjd%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=9f953eb0-eb59-48c4-9b25-85e27d2a32b9)

![效果是有效的](https://2575398366-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LPHazWMdt09K0hcQq5O%2F-LnW84Ul9QbLqZKKE5YA%2F-LnW8rB91Hlp6pBnwda6%2F%E5%9B%BE%E7%89%87.png?alt=media\&token=97ccfb11-bfb4-4ec4-8996-21d02acdffe8)

完成！接下来我们来讲如何上传！


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://haojun0823.gitbook.io/randerion-civ-mod-guide/qi-chuang-jian-ji-chu-de-modifier-shu-ju.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
