文明6修改科技树+市政树+蛮族+改良设施教程

更新时间:2022-03-28 20:01:17作者:佚名

文明6修改科技树+市政树+蛮族+改良设施教程

  文明6的很多游戏中设定都是以公式为基础的,而对于那些不想被游戏玩的玩家来说,自己设定规则才是属于自己的游戏。今天小编为大家带来的便是游戏中的科技树+市政树+蛮族+改良设施修改教程,想要自己修改游戏设定的玩家不妨点击进来看看吧。

文明6修改科技树+市政树+蛮族+改良设施教程

  科技树+市政树+蛮族数+改良设施修改教程

  首先陈述一下,我给出的教程都是直接修改原文件,并不涉及任何编写mod的内容(其实原理是一样的,但编写mod需要一些数据库知识,这就触及到我的知识盲区了)那么先简单讲一下科技树/市政树的修改。昨天看到有些玩家抱怨这游戏一点都不历史,“明明连火药都没研发,就可以直接跳机械化步兵,这是什么鬼?!!” 为了满足这部分玩家老爷的愿望,简单梳理一下科技树/市政树的修改方法。

  先讲一点常识。首先,大部分常用修改涉及到的文件内容都存放在Assets/Gameplay/Data文件夹下,以XML格式存放。要修改科技树,主要需要改动的文件为该文件夹下的technologies.xml。市政树的修改则为civics.xml。

  那么我们可以选择用最简单的记事本(notepad++也可以)打开上面提到的xml文件,可以看到如下的代码:

文明6修改科技树+市政树+蛮族+改良设施教程

  是不是看不懂?咳咳 我们简单来讲一下。

  我们以上图出现的 tech_archery 为例,简单说明一下。懂英语的同学应该可以猜得出,这其实就是游戏中通过畜牧解锁的弓箭科技。通过在记事本中使用查找功能搜索 tech_archery, 我们可以把相关的代码都找出来:

  第一处:ROW Kind="KIND_TECH" Type="TECH_ARCHERY" />

  第二处:ROW UITreeRow="1" EraType="ERA_ANCIENT" AdvisorType="ADVISOR_CONQUEST" Cost="50" Name="LOC_TECH_ARCHERY_NAME" TechnologyType="TECH_ARCHERY" />

  第三处:ROW PrereqTech="TECH_ANIMAL_HUSBANDRY" Technology="TECH_ARCHERY" />

  第四处:ROW PrereqTech="TECH_ARCHERY" Technology="TECH_HORSEBACK_RIDING" />

  第五处:

  ROW TechnologyType="TECH_ARCHERY" QuoteAudio="Play_Archery_Quote_1" Quote="LOC_TECH_ARCHERY_QUOTE_1" />

  ROW TechnologyType="TECH_ARCHERY" QuoteAudio="Play_Archery_Quote_2" Quote="LOC_TECH_ARCHERY_QUOTE_2" />

  第六处:ROW TechnologyType="TECH_ARCHERY" Unit1Type="UNIT_SLINGER" BoostClass="BOOST_TRIGGER_KILL_WITH" TriggerLongDescription="LOC_BOOST_TRIGGER_LONGDESC_ARCHERY" TriggerDescription="LOC_BOOST_TRIGGER_ARCHERY" Boost="50" />

  第一处:

  Row Type="TECH_ARCHERY" Kind="KIND_TECH"/>我个人将这句语句称为主键定义,简单的说,通过这句语句,我们就创建了一个名为tech_archery的数据条目。这个条目的属性,则是通过这句语句的后半段Kind="KIND_TECH"来完成定义——这是一项科技。如果要在科技树中加入一项新科技,就必须按照这样的格式先创建一个数据条目。

  第二处:

  Row TechnologyType="TECH_ARCHERY" Name="LOC_TECH_ARCHERY_NAME" Cost="50" AdvisorType="ADVISOR_CONQUEST" EraType="ERA_ANCIENT" UITreeRow="1"/>光定义了我们需要的数据条目是不够的,就好像建了一间空房子,但是里面没有摆任何的家具。我们需要为它添加更多的相关信息。Row TechnologyType="TECH_ARCHERY" 这部分代码,起到的是将之前我们创建的数据条目与此处的数据建立联系的作用(你的身份证上有你的名字和信息,所以别人才知道这张身份证是你的,大概这个意思); Name="LOC_TECH_ARCHERY_NAME" 起到的作用是在游戏里显示对应的文本,简体中文文本文件都存放在Assets/Text/Vanilla_zh_Hans_CN.xml中,如果想要修改某个科技的名称,我们可以使用查找定位法很方便的完成我们的目标。值得注意的是,部分科技,比如tech_banking(文艺复兴的银行业),还有一段语句 Description="LOC_TECH_BANKING_DESCRIPTION"。 这段语句起的作用和上面类似,都是用于显示文本文件的,此处不多赘述,大家可以自己研究。 Cost="50" 则定义了弓箭科技研究完成所需要的科技值为50,可修改为任意数值,但不建议太离谱(99999党请自重)。AdvisorType="ADVISOR_CONQUEST" 这个是游戏顾问的推荐类型,一般用不着修改,我就不啰嗦了,按照自己想要的类型照抄代码就好。EraType="ERA_ANCIENT" 定义了弓箭科技的所属时代为远古时代。值得注意的是,战斗单位的所属时代也是通过这里完成定义,如果将弓箭科技的时代修改为 ERA_RENAISSANCE(文艺复兴),弓箭手同样也会变成文艺复兴时期的单位,并且可以享受文艺复兴大军的加成。

  UITreeRow="1" 此处定义了弓箭科技在游戏科技树中处在哪一行。 制陶所处的行为0;向下依次为1,2,3,4;向上依次为-1,-2,-3。(此处用的是中文百科的老版科技树,弓箭还是在第二行。)更改数字即可改变科技的显示位置。有人可能会问,“这里并没有定义科技在哪一列显示啊?” 嗯,大家不用担心,科技出现在哪一列是根据科技所处的时代和研究所需的科技值自动决定的,我们只要把它放到我们想要的某一行就行了。

  第三和第四处:

  Row Technology="TECH_ARCHERY" PrereqTech="TECH_ANIMAL_HUSBANDRY"/>

  Row Technology="TECH_HORSEBACK_RIDING" PrereqTech="TECH_ARCHERY"/>

  决定了弓箭科技的前置科技,以及由弓箭科技可以研究的科技。第一句定义了弓箭的前置科技为畜牧:

  第二句定义了弓箭的后置科技是骑马。参照格式修改即可。

  第五处:

  Row TechnologyType="TECH_ARCHERY" Quote="LOC_TECH_ARCHERY_QUOTE_1" QuoteAudio="Play_Archery_Quote_1"/>

  Row TechnologyType="TECH_ARCHERY" Quote="LOC_TECH_ARCHERY_QUOTE_2" QuoteAudio="Play_Archery_Quote_2"/>

  就是该科技研究完成时会出现的那些名人名句和其相应的配音(如果天堂里没有苟……),一般没啥修改价值,大概强迫症可以去看看有没有错别字啥的。

  第六处:

  Row TechnologyType="TECH_ARCHERY" Boost="50" TriggerDescription="LOC_BOOST_TRIGGER_ARCHERY" TriggerLongDescription="LOC_BOOST_TRIGGER_LONGDESC_ARCHERY" BoostClass="BOOST_TRIGGER_KILL_WITH" Unit1Type="UNIT_SLINGER"/>

  定义了弓箭科技触发尤里卡的相关条件。下面单独列一层楼讲一讲尤里卡。

  Boost="50" 将50修改为(0,99)的任意整数均可,即可实现调整尤里卡数值的效果。

  TriggerDescription="LOC_BOOST_TRIGGER_ARCHERY"

  TriggerLongDescription="LOC_BOOST_TRIGGER_LONGDESC_ARCHERY"

  就是你在游戏里看到的那些尤里卡描述(用投石兵击杀一个单位),修改方法同上提到的那些文本。

  BoostClass="BOOST_TRIGGER_KILL_WITH" Unit1Type="UNIT_SLINGER"/>

  则为尤里卡的实际条件。在technologies.xml文件中检索 ,可以找到如下代码

  BoostNames>

  Row BoostType="BOOST_TRIGGER_MEET_CIV" BoostValue="0"/>

  Row BoostType="BOOST_TRIGGER_ENCOUNTER_UNIT" BoostValue="1"/>

  Row BoostType="BOOST_TRIGGER_TRAIN_UNIT" BoostValue="2"/>

  Row BoostType="BOOST_TRIGGER_OWN_TWO_UNIT_TYPES" BoostValue="3"/>

  Row BoostType="BOOST_TRIGGER_CONSTRUCT_BUILDING" BoostValue="4"/>

  …………………………

  此处即为游戏中全部的尤里卡类型,大家可以参照相关代码格式自行修改。