首页 游戏攻略 正文

星际殖民 MOD制作教程 制作自己的飞船组件

首先大家不要看到MOD制作就开始联想到编程,算法,计算机语言。

ZERO发布的教程关于给飞船制作新的组件其实并不需要C#之类的计算机语言和编程基础,更不需要什么算法 。 你只需要了解基础的XML知识就可以了,我想很多网友经常修改XML文件,对XML已经轻车熟路了,不输给一个程序员。那么开始正题。

这次教程我们以给游戏中添加一个新的增强版的导弹发射器为例子,进行逐步讲解。

首先既然我们要制作一个新组件,那么必然是先定义一个新组件的XML文件,以让游戏识别。

SD关于所有飞船组件的定义在游戏目录ContentShipModules文件夹中,一个新的组件涉及到很多属性,比如组件类型(武器,护甲,护 盾),组件名字,组件耗电量等,这么多的属性,在没有开发文档之前,我们是不可能凭空创建的。所以我们直接在旧有的组件XML里面改然后在另存为就可以 了。

步骤:

1.打开ContentShipModules文件夹,找到RocketLauncher.xml文件(游戏默认的导弹发射器组件定义XML文件)

2.在同一目录下创建一个空白的xml文件,取名为RocketLauncherEnchanced.xml

3.将游戏默认的RocketLauncher.xml文件里面的内容全数复制到新建的RocketLauncherEnchanced.xml文件里,保存

我们创建的RocketLauncherEnchanced.xml文件内容如下(内容和原文件完全相同)

rl.jpg

接着介绍其中对于我们这次制作MOD极为重要/需要改动的字段.

A. UID是每个组件的唯一标示符,通俗的说就像是每个人的名字一样,如果游戏要识别你制作的组件,你必须得给它取个独一无二的新名字,不能与其他旧有的组件,或是其他MOD里定义的新组件名字相同,既然是增强版的导弹发射器,我们就取名为RocketLauncherEnchanced吧(XML文件名必须与UID一致)

B. IconTexturePath是定义游戏里面组件要用到的图像资源.xnb文件,一 般都是Modules/资源名.xnb.这是一个相对路径,它的绝对路径是 游戏目录ContentTexturesModules。 关于给自己添加的组件定义及制作新的图像 我会在2L讲解。这里使用默认属性不修改,即游戏会显示会原版火箭发射器一样的图标。

C. NameIndex,DescriptionIndex 这两个字段对应游戏里面组件的名字和详细介绍2个文本的引用。引用的定义在游戏目录ContentLocalizationEnglish文件夹的 GameText_EN.xml文件里面。这个地方我自己在对着zero的教程制作的时候出了一个问题,导致添加组件之后游戏老是弹错。。。。调试半天才 发现,对于1.08版本来说,那个教程在这个地方已经过时。由于1.08版本游戏添加了对德语的支持,所以zero放弃使用老的 ContentLocalization里面的English.xml文件放游戏里面的所有文本,而是使用这个目录下新的ENGLISH目录的文件而产 生错误,对于德语文本时使用这个目下的GERMEN目录下的XML文件,所以1.08里面对游戏文本新加,修改,翻译等操作应该全部在新的ENGLISH 目录下的XML文件里进行。

那么我们为了给自己添加的组件在游戏里取个显示的名字和组件详细介绍,打开ContentLocalizationEnglish文件夹下的GameText_EN.xml文件,然后在最下面添加2个新的节点

如下图:

nd.jpg

Index节点给这个token定义一个唯一标识符,数字最好是4000以上,不能与原作者 zero已经定义过的标识符冲突,你可以使用编辑器的搜索功能进行测试,比方说我用的windows文本编辑器打开的这个XML文件,你可以使用快捷键 ctrl+f打开搜索功能,然后搜索3888看上面ZERO有没有定义这个数字,如果没有 那么我们就可以使用了。好了现在我们定义了3888,3889两个字段,一个是新组件的名字 一个是介绍。 现在我们回到自己创建的RocketLauncherEnchanced.xml,找到NameIndex节点把属性改成3888,然后找到DescriptionIndex 把属性改成3889.

然后我们在修改这个增强版火箭发射器的详细游戏属性,比方说Mass对应他的质量是多少 我们可以把10改成8 ,Health字段它的生命值是多少我们可以改成120等等,最后我们自己定义的RocketLauncherEnchanced.xml文件

如图示 rke.jpg

好了,现在我们的新组件增强版火箭发射器算是完成了一大半,现在还剩下一个问题,这个武器在什么科技研究完了之后才会解锁呢?

很明显,我们并没有告诉游戏,这个组件的定位。

打开ContentTechnology目录,火箭发射器对应的是missli theory科技,所以我们打开MissileTheory.xml文件,添加如下图所示

t.jpg

ModuleUID这个字段对应组件定义文件里面的UID字段,这样告诉游戏新的火箭发射器在玩家研究了MissileTheory科技之后会解锁。好了,需要改动的地方我们都该完了,

赶紧进游戏去看看吧?

相关信息

万智牌2015 存档位置 万智牌2015存档位置在哪
跨越我的尸体2 主线流程简单图文攻略 流程心得
看门狗 作死向流程实况娱乐解说视频 手残超神
狙击精英3 丘吉尔DLC解锁补丁使用方法 附下载
机械风暴 无法进入游戏解决方法 进不去游戏怎么办
机械风暴 无限生命能量跳跃无敌秘籍 修改器合集
机械风暴 妹子无节操试玩解说视频 智商感觉不够用了
万智牌2015 推荐套牌搭配方法一览 怎么搭配套牌
万智牌2015 更换牌组方法 万智牌2015怎么更换牌组
万智牌2015 系统界面全解析 界面是什么意思
万智牌2015 按键操作方法指南 万智牌2015怎么操作
万智牌2015 画面分辨率设置方法 怎么设置分辨率
新剑侠传奇 打BOSS方法经验总结 新剑侠BOSS怎么打
真三国无双7 with 猛将传 孙尚香乱舞玩法详解及视频
真三国无双7 with 猛将传 司马师简易玩法心得
新剑侠传奇 天忍教地宫过法图文心得 天忍地宫怎么过
新剑侠传奇 天忍教总坛潜入图文心得 天忍教坛怎么过
新剑侠传奇 紫英阵迷宫拼图及过法心得 紫英阵怎么过
新剑侠传奇 游戏没声音的解决方法 没声音怎么解决
《深渊奥德赛》全流程一命通关