本教程教大家如何制作文明特性。主要针对动手能力负值但又拥有一颗DIY的心的手残党,门槛较低,不需要英语水平和编程能力什么的,只要细心,认字,且会复制粘贴即可做到,通俗易懂。
修改针对的文件:
一:Sid Meier’s Civilization VIBaseAssetsGameplayDataCivilizations.xml
二:Sid Meier’s Civilization VIBaseAssetsTextVanilla_zh_Hans_CN.xml
前者是文明特性的定义文件,后者是汉化文件。
需要用到的软件:任何种类的文本编辑器(我用的UE,其实记事本也可以)
注:因为是针对Data文件的修改,即针对游戏本体的修改,如果出现问题请在steam库内进行“检查游戏完整性”,即可恢复纯净状态。
附图一张(我自己修改的秦皇) 要什么平衡,爽就完事了
打开Civilizations.xml文件以后是这样子的,别被吓到。
首先注意那一大段类似的长代码
取最前面的一个为例
<Row Type=”CIVILIZATION_AMERICA” Kind=”KIND_CIVILIZATION”/>
……………….
这一串代码被<Types>和</Types>包含在中间
Type=”XXXX”定义的是文明和文明特性的代码代号
Kind=”XXXX”定义的是种类(KIND_CIVILIZATION指的是文明,KIND_TRAIT指的是文明特性)
所以我们要添加一个新的文明特性,只需要在结尾</Types>的前面(放在这容易找到)加上这样一条代码:
<Row Type=”TRAIT_CIVILIZATION_VTAR” Kind=”KIND_TRAIT”/>
(或者复制上边的文明特性,改个名字即可)
这就定义了一个新的文明特性VTAR,效果如图(最下边,我自己加了两个,其中给一个是VTAR,另一个是DBSK)
这样第一步就完成了。记住你自己起的名字。
名称不用解释,说明是用在加载界面的
选择一个文明特性的代码(你添加的上边就是)
搜索以后可以找到以下内容(大概在整个文档的60%的位置)
这部分内容包含在<Traits>和</Traits>之间,定义的是文明特性的名字和说明,那么我们只需要添加这么一串代码(复制上边的改下名字即可):
<Row TraitType=”TRAIT_CIVILIZATION_VTAR” Name=”LOC_CIVILIZATION_VTAR_NAME” Description=”LOC_CIVILIZATION_VTAR_DESCRIPTION”/>
TraitType=”TRAIT_CIVILIZATION_VTAR” 指的是文明特性VTAR
Name=”LOC_CIVILIZATION_VTAR_NAME” 和Description=”LOC_CIVILIZATION_VTAR_DESCRIPTION”/>分别定义了名字和说明,汉化就是针对这两串代码。
(三)添加归属
既然定义了一个新的文明特性,那么自然需要一个文明拥有这个特性才可以。
以中国为例(可以在文档中搜索“CHINA”找到这一段内容)
我选中的一段
<Row CivilizationType=”CIVILIZATION_CHINA”
TraitType=”TRAIT_CIVILIZATION_DYNASTIC_CYCLE”/>
意味中国文明拥有文明特性DYNASTIC_CYCLE(朝代更替)
那么我们仿照即可,在下边增加一段
<Row CivilizationType=”CIVILIZATION_CHINA” TraitType=”TRAIT_CIVILIZATION_VTAR”/>
那么中国就多了VTAR这个文明特性
这一部分比较重要
我们可以搜索中国的文明特性朝代更替,即TRAIT_CIVILIZATION_DYNASTIC_CYCLE,找到以下内容:
<Row>
<TraitType>TRAIT_CIVILIZATION_DYNASTIC_CYCLE</TraitType>
<ModifierId>TRAIT_CIVIC_BOOST</ModifierId>
</Row>
这个定义了拥有效果TRAIT_CIVIC_BOOST(鼓舞加强)
<Row>
<TraitType>TRAIT_CIVILIZATION_DYNASTIC_CYCLE</TraitType>
<ModifierId>TRAIT_TECHNOLOGY_BOOST</ModifierId>
</Row>
这个定义了拥有效果TRAIT_TECHNOLOGY_BOOST(尤里卡加强)
那么我们就需要仿照这个添加一段代码即可
<Row>
<TraitType>TRAIT_CIVILIZATION_VTAR</TraitType>
<ModifierId>TRAIT_01</ModifierId>
</Row>
那么文明特性VTAR就拥有了一个能力TRAIT_01(可以设置多个),但是我们还需要定义这个能力是干什么的。
搜索TRAIT_CIVIC_BOOST(鼓舞增强)发现以下内容
<Row>
<ModifierId>TRAIT_CIVIC_BOOST</ModifierId>
<ModifierType>MODIFIER_PLAYER_ADJUST_CIVIC_BOOST</ModifierType>
</Row>
TRAIT_CIVIC_BOOST效果是MODIFIER_PLAYER_ADJUST_CIVIC_BOOST即提升鼓舞百分比
在这里我们加上
<Row>
<ModifierId>TRAIT_01</ModifierId>
<ModifierType>XXXXXXXXXXXX</ModifierType>
</Row>
就给特性VTAR的第一个能力TRAIT_01定义了效果,而XXXXXXXXXX部分使用的代码不同产生的效果也不同。具体代码稍后再讲。
这里我使用的是MODIFIER_PLAYER_ADJUST_CITY_TILES(获得额外单元格)
定义了文明能力的效果,还需要给出具体的数值
再次搜索TRAIT_CIVIC_BOOST(鼓舞增强)发现另外一部分内容(一共就两部分)
这个定义的是数值
<Row>
<ModifierId>TRAIT_CIVIC_BOOST</ModifierId>
<Name>Amount</Name>
<Value>20</Value>
<Extra>-1</Extra>
</Row>
游戏原本是10.我改成了20,那么新版本中一般国家拥有40%的尤里卡和鼓舞效果,中国就是60%
加上
<Row>
<ModifierId>TRAIT_01</ModifierId>
<Name>Amount</Name>
<Value>12</Value>
</Row>
那么TRAIT_01的效果MODIFIER_PLAYER_ADJUST_CITY_TILES的数值就是12,也就是说坐城时获得12个额外单元格,那么直接拥有二环内全部土地。
文明特性的定义到此基本完成,接下来就要进行汉化。
完成了对文明特性的定义后要记得保存,然后打开Vanilla_zh_Hans_CN.xml,这个是中文的汉化文件。同文件夹下其他的是其他语言。
在前面定义名字和说明时我们加上了这样的代码
<Row TraitType=”TRAIT_CIVILIZATION_VTAR”
Name=”LOC_CIVILIZATION_VTAR_NAME” Description=”LOC_CIVILIZATION_VTAR_DESCRIPTION”/>
重点是Name和Description
这个用不上搜索功能,在最前面添加即可。
如图,增加了这样的代码
<Replace Tag=”LOC_CIVILIZATION_VTAR_NAME” Language=”zh_Hans_CN”>
<text>地大物博</text>
</Replace>
<Replace Tag=”LOC_CIVILIZATION_VTAR_DESCRIPTION” Language=”zh_Hans_CN”>
<text>新建城市拥有更广阔的疆域。 </text>
</Replace>
注意好格式,Tag后跟着你要汉化的语句,Language后面是语言,下面text里的是你要替换成的语句,
完成这些,整个修改就完成了,就可以进入游戏了,如果有问题,请检查自己用的名字是否对应,格式是否正确,是否漏掉了步骤等等。如果严格按照这个方法,应该不会出问题才对。
总结一下:
一,定义新的文明特性
二,给新的文明特性增加名字和说明
三,给一个文明添加这个特性
四,给这个文明特性添加一个能力
五,定义这个能力的效果
六,定义效果的具体数值
七,对特性进行汉化
上面说的七个步骤,其中四,五,六可以多次重复,即可给同一个文明特性增加多个能力。
比如中国的“朝代更替”实际上是两个能力,分别是“尤里卡加强”和“鼓舞加强”。
如图:
<Row>
<TraitType>TRAIT_CIVILIZATION_VTAR</TraitType>
<ModifierId>TRAIT_01</ModifierId>
</Row>
<Row>
<TraitType>TRAIT_CIVILIZATION_VTAR</TraitType>
<ModifierId>TRAIT_02</ModifierId>
</Row>
<Row>
<TraitType>TRAIT_CIVILIZATION_VTAR</TraitType>
<ModifierId>TRAIT_03</ModifierId>
</Row>
<Row>
<TraitType>TRAIT_CIVILIZATION_VTAR</TraitType>
<ModifierId>TRAIT_04</ModifierId>
</Row>
<Row>
<TraitType>TRAIT_CIVILIZATION_VTAR</TraitType>
<ModifierId>TRAIT_05</ModifierId>
</Row>
就意味着我们定义的文明特性VTAR拥有5个能力,分别是TRAIT_01到05
前文编写的能力是额外单元格,用的效果代码是
<Row>
<ModifierId>TRAIT_01</ModifierId>
<ModifierType>MODIFIER_PLAYER_ADJUST_CITY_TILES</ModifierType>
</Row>
数值代码是
<Row>
<ModifierId>TRAIT_01</ModifierId>
<Name>Amount</Name>
<Value>12</Value>
</Row>
一定要放在对应的位置,两串代码的位置不一样!!!
值得一提的是,如果在效果代码后边加一串
<OwnerRequirementSetId>PLAYER_IS_HUMAN</OwnerRequirementSetId>
变成这个样子
<Row>
<ModifierId>TRAIT_01</ModifierId>
<ModifierType>MODIFIER_PLAYER_ADJUST_CITY_TILES</ModifierType>
<OwnerRequirementSetId>PLAYER_IS_HUMAN</OwnerRequirementSetId>
</Row>
那么这个文明特性的效果将只能由玩家触发,AL即使选择了这个文明也是无法触发效果的,就不用担心随机开局被Al用修改后的文明吊打了
接下来说一些比较好用的效果(游戏里文明已经拥有的效果可以对照汉化文件找出),所有的能力名称用TRAIT 数字表示,复制时记得修改。
1.拥有的所有单元格生产力产出 1(这个的效果代码有两串,数值代码有三串):
效果代码:
<Row>
<ModifierId>TRAIT_02</ModifierId>
<ModifierType>MODIFIER_PLAYER_CITIES_ATTACH_MODIFIER</ModifierType>
</Row>
<Row>
<ModifierId>TRAIT_02_MODIFIER</ModifierId>
<ModifierType>MODIFIER_CITY_PLOT_YIELDS_ADJUST_PLOT_YIELD</ModifierType>
</Row>
数值代码:
<Row>
<ModifierId>TRAIT_02</ModifierId>
<Name>ModifierId</Name>
<Value>TRAIT_02_MODIFIER</Value>
</Row>
<Row>
<ModifierId>TRAIT_02_MODIFIER</ModifierId>
<Name>YieldType</Name>
<Value>YIELD_PRODUCTION</Value>
</Row>
<Row>
<ModifierId>TRAIT_02</ModifierId>
<Name>Amount</Name>
<Value>1</Value> (“1”代表了修正值,即产出 1)
</Row>
上面加粗了的PRODUCTION代表了修正的是生产力,可更改为SCIENCE(科技值),CULTURE(文化值),FOOD(食物),GOLD(金币),FAITH(信仰值)
2.城市住房 1:
效果代码:
<Row>
<ModifierId>TRAIT_03</ModifierId>
<ModifierType>MODIFIER_PLAYER_CITIES_ADJUST_POLICY_HOUSING</ModifierType>
</Row>
数值代码:
<Row>
<ModifierId>TRAIT_03</ModifierId>
<Name>Amount</Name>
<Value>1</Value>
</Row>
3.城市宜居度 1:
效果代码:
<Row>
<ModifierId>TRAIT_04</ModifierId>
<ModifierType>MODIFIER_PLAYER_CITIES_ADJUST_POLICY_AMENITY</ModifierType>
</Row>
数值代码:
<Row>
<ModifierId>TRAIT_04</ModifierId>
<Name>Amount</Name>
<Value>1</Value>
</Row>
4.初始人口 1:
效果代码:
<Row>
<ModifierId>TRAIT_05</ModifierId>
<ModifierType>MODIFIER_PLAYER_CITIES_ADD_POPULATION</ModifierType>
</Row>
数值代码:
<Row>
<ModifierId>TRAIT_05</ModifierId>
<Name>Amount</Name>
<Value>1</Value>
</Row>
5.全单位攻击力 5(包括宗教单位和战斗单位):
效果代码:
<Row>
<ModifierId>TRAIT_06</ModifierId>
<ModifierType>MODIFIER_PLAYER_UNITS_ADJUST_COMBAT_STRENGTH</ModifierType>
</Row>
数值代码:
<Row>
<ModifierId>TRAIT_06</ModifierId>
<Name>Amount</Name>
<Value>5</Value>
</Row>
6.全单位移动力 1:
效果代码:
<Row>
<ModifierId>TRAIT_07</ModifierId>
<ModifierType>MODIFIER_PLAYER_UNITS_ADJUST_MOVEMENT</ModifierType>
</Row>
数值代码:
<Row>
<ModifierId>TRAIT_07</ModifierId>
<Name>Amount</Name>
<Value>1</Value>
</Row>
7.全单位视野 1:
效果代码:
<Row>
<ModifierId>TRAIT_08</ModifierId>
<ModifierType>MODIFIER_PLAYER_UNITS_ADJUST_SIGHT</ModifierType>
</Row>
数值代码:
<Row>
<ModifierId>TRAIT_08</ModifierId>
<Name>Amount</Name>
<Value>1</Value>
</Row>
8.全单位经验 10%(据说最大100%,未检测):
效果代码:
<Row>
<ModifierId>TRAIT_09</ModifierId>
<ModifierType>MODIFIER_PLAYER_UNITS_ADJUST_UNIT_EXPERIENCE_MODIFIER
</ModifierType>
</Row>
数值代码:
<Row>
<ModifierId>TRAIT_09</ModifierId>
<Name>Amount</Name>
<Value>10</Value>
</Row>
9.每回合城邦影响力点数 5:
效果代码:
<Row>
<ModifierId>TRAIT_10</ModifierId>
<ModifierType>MODIFIER_PLAYER_ADJUST_INFLUENCE_POINTS_PER_TURN
</ModifierType>
</Row>
数值代码:
<Row>
<ModifierId>TRAIT_10</ModifierId>
<Name>Amount</Name>
<Value>5</Value>
</Row>