文明5mod吧 关注:2,330贴子:6,538
  • 11回复贴,共1

从零开始做MOD(二)

只看楼主收藏回复

从零开始做MOD(一):http://tieba.baidu.com/p/3238692015
从上文可知,我们的主要工作是抄代码,然后在此基础上做一些修改。
在有了文明、领袖、UA的定义后,就可以做UB,UU,UI了,我们从最简单的UB做起。


IP属地:浙江1楼2014-08-18 14:23回复
    神子的UB是神灵庙,代替圣殿,因此我们需要先找到圣殿的定义。
    我们先找到一个在线的文明百科,找到圣殿,右键-审查元素:

    复制它的ID

    接着找到这个文件

    以圣殿的ID,BUILDING_GRAND_TEMPLE,为关键字搜索,找到它的相关定义,
    建筑定义,注意这里外层标签是Replace,你需要改成Row

    前置建筑,这里的意思是需要本城有大庙后才能锤圣殿

    建造偏好,可以看到喜欢奇观或者宗教的文明喜欢锤圣殿

    前置建筑,换句话说需要每个城市都有大庙后才能锤圣殿。
    前面也有一个前置建筑定义,不同的是,前者是本城要求,后者是所有城市的要求

    产出设置,可以看到本身是8信仰。

    新建一个文件Building.xml,把以上内容拷进去,并且加载进MOD读取列表里。神子的圣殿不需要前置建筑,所以相关代码就不抄了,只抄建筑定义和产出定义。当然了,NumCityCostMod这一行也得删掉。
    把BUILDING_GRAND_TEMPLE换成BUILDING_DIVINE_SPIRIT_MAUSOLEUM后,我们就得到了神子的圣殿:
    当然我们还得改相关文本,这里过程省略,于是得到以下文本



    IP属地:浙江2楼2014-08-18 14:30
    收起回复
      2025-06-12 08:22:45
      广告
      UB有了以后,我们需要把UB和文明关联起来,我们回到Civilization.xml里,删掉民兵的覆写,

      后边添加一个标签Civilization_BuildingClassOverrides,写法可以参考桑海UB的写法:

      细心的童鞋可能会发现里面有一个BuildingClassType的属性,这是建筑类别定义,比如桑海的大庙、普通大庙、埃及大庙,它们的BuildingClassType都是一样的。这个属性主要就是用在覆写UB的时候用的。类似的,比如我们要求某个建筑的前置建筑是大庙,那么这个前置建筑必然是一“类”建筑,而不是某个特定的建筑,否则桑海就没法锤圣殿了,因为他没有普通大庙。
      当然了,世界奇观也是可以做成UB的,比如你可以把亚述的UB换成代替大图,然后重写相关文本和效果,就可以了。
      神子的大庙效果是送大庙,那什么建筑有这种效果呢?西恩塔。我们找到CN塔相关定义,可以看到它送广播塔的定义:

      因此我们可以在神子的圣殿定义里加入类似的一行。
      另外,我们也可以顺手把圣城的建筑限制<HolyCity>true</HolyCity>这一行删掉。

      接着我们进游戏看看

      可以看到,UB覆写成功

      有了神学科技后,什么前置建筑都不要就可以锤了

      可以看到,我们得到了一个免费的大庙


      IP属地:浙江3楼2014-08-18 14:33
      回复
        2. UI制作
        神子的UI是祭坛,神学解锁,产出为1信仰1文化,要求丘陵地形,建筑设计学,考古学后产出增加。
        那我们抄谁的呢?考虑到丘陵限制,就抄印加的梯田吧,其ID是IMPROVEMENT_TERRACE_FARM。找到它的定义:

        把想要的相关内容抄过来,当然新建一个Improvement.xml文件、加入MOD读取列表里是必须的

        当然最后一行是我自己加的,因为印加的梯田只有科技对淡水和非淡水的加成,我们放一起写比较方便。
        然后把相关定义、文本、产出,特别是文明覆写改写成我们想要的东西:

        当然这事还没完,仅仅有设施,还不能建造它,需要新建一种“行为”,来实现建造此设施的效果。由于相关代码比较散,这里直接自己写了:

        接着删掉B13的覆写,进入游戏,可以看到神子的UI:

        神学科技后可以建造祭坛

        锤好以后的初始产出、建筑构造学后的产出、考古后的产出:




        IP属地:浙江4楼2014-08-18 15:18
        收起回复
          于是我们得到了一个有了3U的新文明。UU的覆写是类似的,单位的定义我会在之后说明。


          IP属地:浙江5楼2014-08-18 15:19
          回复
            UA呢?


            IP属地:江苏6楼2014-08-18 15:44
            收起回复
              补一个简单易懂的建筑教程
              http://forums.civfanatics.com/showthread.php?t=525486


              IP属地:浙江7楼2014-09-22 13:16
              回复