找回密码
 注册
X系列官方授权正版
搜索
查看: 41716|回复: 48

[原创] x3mod 制作教程----摘译----连载

[复制链接]
发表于 2007-9-1 03:00:00 | 显示全部楼层 |阅读模式
译者的话:

本论坛好像还没有一个详细的mod制作教程,我从外网下了一篇,读了一遍,觉得还算周全,现在试着翻译出来,给对制作mod有兴趣的朋友当参考。

译者恳请:如果图片要求网易用户,麻烦大家到http://photo.163.com/去注册一下,我是刚刚知道有朋友因为不是网易用户看不了图的。贴图花了我4个小时的时间,实在不想再改过了。谢谢!我在网易注册的电子相册是http://frankwq1981.photo.163.com


请朋友们到http://frankwq1981.photo.163.com 浏览一下我在“x3 reunion说明图片”里的50张图,每张都打开一次,注意是打开,不是浏览缩略图。然后回到论坛,重新打开本帖,应该就能显示了。



北极星mod制作指南   v1.6(一)
Northstar’s X3 Modding for Beginners V1.6


如需进一步帮助,请访问www.xperiment.co.uk/phpbb2/index.php

作者:northstar ( 北极星 )      摘译:frankwq1981

本教程所需的mod工具:


Doubleshadow兄编写了许多相当棒的mod制作和编辑工具,大家可以到http://www.doubleshadow.wz.cz/x3e/下载。其中最主要的工具是X3 Editor,它包括了文本编辑器(TXT Editor),文档资料编辑器(Text Resource Editor)以及星系编辑器(Galaxy Editor)。此外,诸位还需下载X3 mod 管理器(X3 Mod Manager)。这个管理器可以用来生成.cat文件。大家可以到http://www.doubleshadow.wz.cz/x3e/下载。

注意:想要安装并使用上述的所有编辑工具,诸位还需安装Visual C Runtime Library (msvcr71.dll) 以及 zlib (zlib1.dll) library。这两部分也请到Doubleshadow兄的网站下载。至于安装,简单至极,Doubleshadow兄已经把它们做成了自解压的安装程序,把诸位的麻烦减少到了最低限度。

Mod工具概说


X3 mod 管理器(X3 Mod Manager):


----打开并浏览.cat压缩文件
----把.cat里压缩的文件解出来(可以选择解出所有被压缩的文件,也可以选择解出部分文件)
----在.cat压缩文件里添加或删除文件
----生成并命名一个新的.cat压缩文件


X3游戏所有的参数都包含在.dat文件里,而.cat压缩文件则包含了.dat文件内部结构方面的信息。

一般情况下,诸位安装了X3游戏到C:\Program Files\DeepSilver\X3 Reunion\,就能够在X3的根目录下面找到编号01-07的.cat文件。当然,这只限于诸位的X3版本为1.4.02或1.6的情形。(译注:安装更新的升级档后,会生成新的.cat文件,而编号则依次递增。在目前的2.02版,大约可以找到.cat01-11。)每一个.cat文件都和一个.dat文件成对,每对里的两个文件的编号也相同。例如,.dat01和.cat01是一组。这些.dat和.cat压缩文件里面就包含了游戏里将要调用的绝大多数的数据文件,比如星系地图,显示设置讯息,3d模型,文本,声音效果文件等等。

上述的数据文件以各种形式存放,比如.wav, .jpg, .xml, .pck, .bod, .pbb。每种格式的文件都有专门的编辑工具和操作方法,但是在本教程里,我们不能面面俱到。然而,诸位依然可以参照本教程编写出属于自己的完美的mod来。

在Mod Manager安装完成后,会在最后的界面让诸位选择把.cat文件默认由Mod Manager打开,建议诸位一定选上,省却以后每次都指定一遍的麻烦。完成这一步后,.cat文件的图标会变成Mod Manager的黑猫图样,只要双击即可打开。

[ 本帖最后由 frankwq1981 于 2007-9-5 14:08 编辑 ]

评分

参与人数 3UCC +200 好评 +1 贡献 +2 收起 理由
SPY + 1 good!great!perfect!wonderful!very well!
roy986 + 100 + 1 非常有价值信息
HammerSun + 100 + 1 精品文章

查看全部评分

 楼主| 发表于 2007-9-1 03:05:22 | 显示全部楼层
在沙发上插一句话,为了保持摘译内容的完整性和方便查阅,看过本贴而有话说的朋友请尽量开新帖讨论,小弟先把3-200楼给预定了。多谢支持
回复

使用道具 举报

 楼主| 发表于 2007-9-1 13:19:17 | 显示全部楼层

连载 二

文本编辑器(TXT Editor)


我们可以用这个工具修改数据文件里的各种参数,而且修改器的界面简洁易懂。本来数据文件解压缩后都是以文本文档的形式存放的,所以任何文本文档编辑器都能用来修改,比如notepad(记事本)或wordpad(写字板)。但是用这些编辑器打开文件后,有个数据编排的问题,换句话说,得花不少功夫梳理出数据的编排规律,然后才能修改。如果有人喜欢自己研究数据,那么花点时间也能够达到目的。本教程后面也会涉及到这方面的内容。但是现在,有个更方便的TXT Editor,它已经把数据文件里记录的游戏参数“解读”出来了,并且分门别类梳理的很清楚,总之,是个初学者也很容易上手的编辑器。

我们可以举个例子,比如编辑在types文件夹下的tships文件(译注:关于types文件夹及其内容,后面还有详细的讲解)。用TXT Editor打开这个文件后,会在左面的分栏找到所有游戏里飞船的数据。而且栏目是按照飞船名称和所属势力的英文首字母排序的,所以查找比较方便。我们也可以选择通过飞船的名称、所属势力或类型来调整排序。如果在左边的分栏点选某一艘具体的飞船,会在编辑器右边的分栏里显示出该飞船的详细参数。比如护盾(shield)的种类,武器(laser)的类型,船的速度(speed),货舱(cargo)的类型和容量等等。通过这个编辑工具,我们可以非常轻松的设计出个性化的飞船来。在大家放开手脚去造船以前,请花点耐心阅读一下本手册,后面马上就要讲到造船的一般流程。



文档资料编辑器(Text Resource Editor)


我们可以用这个编辑器来编辑游戏里各种物品的说明,也包括任务剧情里面的内容。比如,可以给新建的飞船,新编辑的星系,设计的bbs任务起名字并添加说明。打开这个编辑器后,我们能够在左面的分栏里查到游戏中所有对白和说明,并能够看到这些说明的编号(id)。点选某一个条目以后,会把该说明的具体内容显示在右面的分栏里,从而可以进行编辑。需要强调的是,每一个说明档都有自己独一无二的编号。这个编号非常重要,简单说就是绝对不能重复。具体情况后面我们在示范中会加以说明。我们可以改编现有的说明档,也可以新建一个说明档然后在里面添加个性化的说明,但是注意新建档的id号一定不能和其他任何一个已有的id重复。




星系编辑器(Galaxy Editor)


我们可以用这个星系编辑器来改变X3宇宙的结构。不过也得承认,虽然这个编辑器功能很强大,但还是有所局限。另外游戏本身就内置了一套星系编辑工具,所以如果想更好的编辑X3的宇宙,最好同时使用上面的两个工具,互相补充。下面会讲到怎样在游戏过程中激活内置的星系编辑工具。那么大家用Doubleshadow兄X3 Editor里附带的星系编辑器(Galaxy Editor)能做什么呢?举例来说,可以添加新的星系,删除已有的星系,还可以在既有的星系里做背景处理(设置太阳,星云,行星,空间站,星门等元素)。此外,还能决定某一星系及内部所有元素(主要是空间站等设施)的势力归属。



怎样激活游戏内置的编辑工具


脚本(scripts)对于mod制作者的重要性:

我们进入游戏以后,可以分别激活内置的脚本编辑器(script editor)和星系编辑器(galaxy editor)。想创制自己的mod,我们也必须对脚本(Scripts)有所认识,了解它们是怎样起作用的。这两个内置的编辑器非常有用,因为想要在实际游戏过程中测试自己编写的mod,没有其它的捷径了。不然为了测试一个新编写的小mod,谁会每次都从头打一遍游戏呢?

简单的做法是在游戏里打开内置编辑工具,给自己添点现金,直接得到新添加的飞船,带上energy cell,装上jump drive然后飞到新添加的星系去看看方方面面有没有什么问题,也看看它们在实际游戏里的效果是否如我们所想。为了简化程序,我们建议大家去找些现成的作弊脚本。我个人推荐官方论坛上LV大大编辑的作弊脚本合集。(译注:我们深度时空有roy986大大编辑的作弊脚本合集与教程,功能强大。涵盖lv的几乎所有功能。见精华区的索引)其中我最常用到的功能是加钱(add money),调整引擎出力(engine tuning,实际就是给飞船加速),改善转向灵活度(rudder tuning),添加物品(add ware),开全星图(explore all sectors),增加声望(change notoriety),和改善敌我关系(set to friend)。Doubleshadow兄的外置星系编辑器对于实际游戏效果的测试就鞭长莫及了。比如,我们新设计了一种超级武器,想打个海盗来看看效果,不进入游戏是怎么样都不行的。

激活内置script editor的方法:

在游戏里激活编辑器,我们需要把飞船随便开到宇宙里某个地方停好,按键盘p键打开飞行员信息菜单,选择rename选项,把自己的名字改成Thereshallbewings。注意开头的T一定要大写。常有朋友抱怨说他们没法激活编辑器,他们不是t没大写,就是拼写错误了。花点功夫耐心输入,完成后按回车键,游戏会暂停几秒钟,而玩家的姓名也不会真的改变。如果姓名改变了,那么抱歉,你肯定是输入有误,请重新来过。

现在我们已经激活了内置script editor。想打开它,按shift+c,再按c,再按s。第一次进入这个script editor会有一些说明信息,不想看按回车跳过,以后不再显示。找到某条脚本以后,按r键可以执行该脚本,按回车键进入对该脚本的编辑。对于脚本的编辑,其实有很多教程可以参考。我见到的最好的教程是MSCI programmer’s handbook,可以从http://www.xai-corp.net/msci-handbook/(by Xai Corporations)下载。另外LV大大在官方网站论坛上也有不少script指南,值得参考。


激活内置galaxy editor的方法


激活方法与上面的script editor一模一样,只不过在rename时,我们需要输入Makeanapplepiefromscratch,注意了,拼写和大小写一定要到位。完成后,下次开始新游戏,就能打开galaxy editor的界面。我们在后面会讲到怎样使用这个内置的galaxy editor。



[ 本帖最后由 frankwq1981 于 2007-9-5 14:03 编辑 ]

评分

参与人数 1贡献 +1 收起 理由
roy986 + 1 精品文章

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2007-9-1 16:35:14 | 显示全部楼层

连载 三 ----总算有点可实践的东西了

Mod制作示范


现在我们来示范制作一个简单的小mod,虽然简单,但是能展示制作mod的一般流程。掌握了方法后,大家就可以制作自己的自娱自乐mod或共享mod了。

强烈建议大家先安装好必备的mod工具,然后对照教程加以实践,这样学起来快些。

前期准备:


1.        为了让我们制作的Mod更方便打理,先在桌面上建一个文件夹。在示范教程里我就建立一个northstar文件夹了,虽然没什么创意,但是简单易懂呀。在northar文件夹里再建一个cats文件夹。我们需要把X3根目录下面所有的.cat文件都解压到\northstar\cats里来。

2.        找到X3游戏安装目录,一般是在c:\Program Files\DeepSilver\X3 Reunion。如果没安装到这里,就找到自己的安装目录。在X3根目录下,我们能找到编号从0到n的一系列.cat文件。(如果安装好了x3 mod manager,它们应该都已经变成了一个黑猫的图标。如果当初没有把mod manager作为打开.cat文件的默认工具,那么这时候需要先打开mod manager,再选择.cat文件的路径。如果想把mod manager设定成打开.cat文件的默认工具,可以先运行mod manager,然后在Options\Settings\File Associations里面设定。)用mod manager打开.cat 01后,点选菜单栏的extract,然后指定目标路径为先前建立的\northstar\cats(点有"..."的按键。)默认的解压缩选项是Decompress Compressed Files和Preserve file paths。注意一定把这两个选项选上。



然后点击ok就开始解压缩了。根据大家电脑配置的不同,这个过程可能会花点时间。在我的机器上用了2-3分钟的样子。(译注:编号越靠后的.cat文件大小越小,解压越快。)接下来按照02,03…的顺序解压,(注意一定要按编号的顺序,不能跳着解)直到全部解压完毕。在解压过程中,会遇到程序询问重复文件怎样处理,一律选择全部覆盖“overwrite all”。

3.        译注:X3游戏在读取数据时按照根目下.cat---x3 reunion\mods\.cat的顺序读取。后读到的文件对于先读到的文件有优先权。.cat压缩档里面的文件在安装补丁后会更新,新的文件存在序列号大的.cat里。因此在解压时必须按照编号顺序解,这样最后才能保留一套最新的数据。如果跳跃解压,让老数据覆盖了新数据,最后达不到修改的效果。


检查解压后的文件:

现在.cat文件已经全部解压完毕,并且已经进行了归类。我们可以打开northstar\cats文件夹,大致浏览一下里面的内容。在我们的指南里,特别要说明的两个重要的文件夹是“types”和“t”。也就是northstar\cats\types和northstar\cats\t。浏览一下这两个文件夹,我们会发现里面囊括了游戏里大部分重要的数据,比如飞船ships,工厂factories,武器laser,导弹missle等等。所有这些文件现在都是文本文档.txt文件。如果感兴趣,可以直接打开这些.txt文件,看看里面的参数长啥样。不过别被它们给吓倒,虽然看起来一头雾水,但是如果知道规律以后,就能对游戏做全面的改动了。接下来我会示范怎样建一艘新船。诸位如果浏览了其他文件夹的内容,大概也就发现游戏里许多东西比如音频音效,环境要素等等都能修改了。

northstar\cats\t文件夹里面收录了游戏里所有的说明文档。在这个文件夹里至少应该有4个.xml文件。每一个都代表了一种语言。英文版本的是440001.xml


如果需要更多资讯,请访问www.xperiment.co.uk/phpbb2/index.php

创造一艘新船!!!!(说了一堆废话,终于进入正题了。)


1.        启动x3 editor。双击settings图标,在“Directory with data files”栏填上游戏的安装路径。一般的是c:\Program Files\DeepSilver\X3 Reunion。另外,在“Path to X3 executable”栏填上c:\Program Files\DeepSilver\X3 Reunion\x3.exe。这是让我们指定x3游戏执行文件的地址。如果x3安装在别的盘上,请填写相应的路径。



2.        现在大家能看到我先前提到的一系列编辑工具。最先用到的就是TXT Editor。运行TXT Editor,点“Open”,打开desktop\northstar\cats\types\Tships.txt文件。



3.        花点时间浏览一下左面的分栏。所有x3的飞船都已经按照a-z的顺序在这里排好了。同时也看看右边的分栏,里面的选项卡组涵盖了飞船性能参数的方方面面。(我大概翻译一下,列在下面,不是所有的都翻译了,只挑我能理解的部分)



右面选项卡组的项目翻译,按照从上往下从左往右的顺序:raw data 原始数据(没分类的,不选)ship info(已分类,选这个)三个小黄方块带着body,model,cockpit的地方必须安装3dviewer后才有作用,这个插件以后另外再介绍,不是必须的。

接下来,info----船的基本信息 :(只写我看得懂的了。里面所有的数据都可以双击后任意调整。)
比较重要的有
id----飞船编号
class----飞船级别
race----所属势力
cargo type----货舱种类
cargo min\max----最大最小货舱容量  
docking slots----容纳舱位
description+class description----指定的该飞船说明文档编号
price modifier1/2----玩家和npc购买该船的花费(哪个是哪个我还没有区别开)
min notoriety----玩家购买该船的最低种族声望

Performance----船的基本性能参数 包括:
Yaw----偏航灵活度(应该是指左右摆动)
Pitch----起降灵活度(应该是指上下摆动)
Roll----翻转灵活度(飞船翻转)
Speed----最大最小速度m/s
Acceleration----加速度m/s
Max # engine tuning----最大引擎出力改造数
Max # rudder tuning----最大专向灵活度改造数
Reactor output power-----反应炉能量kw
Hull strength----船体完整度
Average reaction delay----平均反应时间,估计是只加减速,偏转度,护盾充能的最小时间间隔----1就是1s为单位
Max recharge time----护盾从0到最大完全充能的时间 公式:飞船装备护盾数x护盾种类=x秒(s)

Model----3d模型信息  (这部分我基本没有编辑过)包括:
Ship scene----船体3d模型参数文件路径及编号
Cockpit scene----武器3d模型参数文件编号
Engine effect color----喷射引擎颜色效果编号
Engine glow effect----引擎反光效果编号
Engine sound----引擎音效编号
Sound volumn min/max----引擎效果音量大小值(想开太空拖拉机的可以尝试编辑)
Explosion effect/Body explosion effect----飞船爆炸效果编号
Particle emmiter----粒子效果(部分飞船的引擎喷射物有这个效果,比如pirates reaver的左右引擎,还有eclipse的三个副引擎)
Picture id----图像编号
Body id----船体编号

Weapons----武器信息 包括:
Shield type----护盾种类
Max shield count----最大装备护盾数
Weapons energy----最大飞船武器能量 (w)
Weapons recharge rate----武器充能速度 (w/s)
Number of missles(npc)----npc购买该船时默认装备的导弹数,与玩家无关
Gun count----飞船总炮数
Turret count-----飞船炮塔数(炮数和炮塔数千万不要轻易修改,因为与飞船3d模型有关联,很容易造成游戏崩溃)
Gun group count----主炮组数
Possible laser----主炮能装备的武器种数
Possible missles----飞船可装备导弹种数(这两个种数也没有必要修改,因为可以在后面直接添加具体的种类)

Cockpits(turrets)----主炮(炮塔)3d模型类别和文件路径信息

Guns----主炮(炮塔)3d模型类别和文件路径信息

Front lasers----该飞船前方主炮可以装备的武器的种类  包括:
左栏compatible lasers----该船可前方主炮可装备武器类型
右栏available lasers----游戏所有的武器类型
选择后按<<  >>可以给该船主炮增加或减少可装备武器种类。]

Missles----该船可装备的导弹种类  操作方法同上

Wares----购买该船时内置的软件。比如购买ts时一般内置trade command software,购买fighters一般内置fight command software。需要了解软件的物品id后方可添加。

下面继续教程。

4.        在TXT Editor左分栏进行拖动,找到Teladi Falcon Hauler。右键点击它,选“copy”,再右击,选“paste”,然后程序会提问是否粘贴到目录的最后,选择是,因为查找比较方便。

5.        现在拖动到左栏目录的最后,选中我们刚刚粘贴上来的这艘船。这时右分栏里应该会显示它的描述,如果没有,那么开始时指定的说明档路径肯定有问题,请重新订正。所有的描述信息都来自t文件夹的440001.xml文件。请将描述信息的路径指定到你保存这个文件的地址。

[ 本帖最后由 frankwq1981 于 2007-9-5 14:03 编辑 ]

评分

参与人数 1贡献 +1 收起 理由
roy986 + 1 精品文章

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2007-9-1 16:36:47 | 显示全部楼层

连载4

6.        选择右分栏选项卡组第一项“info”,然后选择当前飞船的编号id:SS_SH_T_M3_1。双击这个数值,然后改成SS_SH_NS_01。只要和已有的id不重复,这里可以改成任何值。因为工厂啊武器啊物品啊等等都有自己的id,所以一定要避免冲突。我用ns代表northstar, 这样比较保险。



7.        在id下面接近中间的部分,双击description,把数值改成3995。点击TXT Editor上方菜单栏里的Text Res图标,这样可以打开Text Resource Editor。刚运行的时候,Text Resource Editor的路径不正确,我们需要手动把路径设定到desktop\northstar\cats\t\440001.xml,然后打开。请在编辑前到desktop\northstar\cats\t\进行确认,以免t文件夹放在别的地方。

8.        在Text Resource Editor里的左面分栏开头往下第7行的Boardcomp.Objects,它的编号应该是17。另外在目录下面还有一个编号为300017的Boardcomp.Objects文件。它们的区别是编号17的文件里包含有x2游戏里的说明,而开发者新建了一个文件来存放x3游戏里的说明档。点击两个Boardcomp.Objects文件,并在右栏浏览一下内容,我们刚刚设定的第3995号说明应该还没有添加进来。现在大家也就能理解为什么刚才要设定description的值为3995,因为这个数值和已有的说明条目的编号不冲突。



9.        回过头来选中编号为17的Boardcomp.Objects,在右栏显示的所有说明条目中右击,选“add”。然后在“ID”栏填上3995,在文本栏给自己的新船起个名字。我就起Northstar Special号。再次右击,在“ID”输入3996,然后给自己的飞船添加些描述背景。至于写什么就随个人喜好了。大家可能会问我为什么新建一个3996号说明条目,因为在游戏里,电脑读取玩3995条的飞船名称后,必定要读取3996的描述。这个其它物品的名称和描述也遵循这个规律。当然,如果你不想让对自己的飞船作任何说明,那么3996不建也罢。

10.        点击Text Resource Editor菜单栏的“save”,然后关闭Text Resource Editor并回到TXT Editor。现在我们复制了一艘Teladi Falcon Hauler,然后给它改了个名字。如果你现在没看到它的名字改变,别担心,完成mod进入游戏后就都有了。有的时候名字的显示不是一下子能改过来,下次运行编辑器的时候可能就好了。

11.        现在继续在“info”选项卡里编辑飞船的一些基本参数。比如,飞船的cargo type(货舱类别),包括s,m,l,和xl。这艘hauler本身已经是xl级的货舱,那么我们可以选择调整货舱的容量。对于我来说,600应该足够了。请记住一点,如果你把一艘船改的太夸张,那么游戏里的npc买到这艘船以后,你的日子就不好过了。大家也可以试着调整其他参数比如price modifier。这里的price modifier1/2分别定义了玩家和npc购买该船的花费,但是没有直接显示钱数。大家可以先修改,然后去游戏里实地观察。另外也可以改变万家购买该船时,在该船所属势力内的声望要求。我想忠告大家一句,如果不清楚某一项参数的意义,最好不要修改。随意改动会增加自己mod出错的几率。千疮百孔的mod肯定没发推广,自己玩起来也不会开心。

12.        选择performance选项卡,然后双击想要改动的数值并加以编辑。我的改动是:max engine tunings 40, max rudder tunings 20, reactor output 880 mw。剩下的也就是acceleration和hull strength值得改动。

13.        选择model选项卡。我们可以在这里调整飞船和炮塔的3d模型。换句话说,我们可以调用已有的其他飞船的造型。比如,我个人比较喜欢Mamba,那么我可以把Mamba---model---ship scene的路径拷贝过来,这样我们的新船出场时外形与内部模型结构就完全是Mamba了。大家可以尝试不同的飞船与炮塔的组合,然后保留最满意的作品。(译注:改飞船模型,最好把改动后的飞船的炮塔模型也一块改过来。我自己试了几十次,新的炮塔的位置总是不对。这个需要慢慢研究。不过一块换没什么问题。)需要注意的是,替代的模型和原模型最好属于同一个飞船等级,如果哪位高人把argon clossus 改到Mamba上,那个游戏效果可就变得诡异了。当然,越诡异,越是有朋友愿意尝试就是了。



14.        现在选择weapon选项卡。我们可以在这里调整shield和laser的参数。可以看到,falcon hauler已经装备了1x125mw的盾,如果喜欢,你可以让它装备2个。同时,我们也能调整laser能量和恢复的速度。武器能量越多,恢复越快,我们的飞船火力就越强,这个显然不用多说。注意不要改变turret count和missle count的数据,不然飞船模型参数就会出错了。

15.        现在选择front lasers,然后随意调整吧。有的朋友想装备bhept,有的朋友想装备mass driver,这都不是问题。需要注意的是,在这里改好后,有时还不能够在游戏里直接看出效果。有时需要更复杂的改动,这点在后面我们会讲到。

16.        点击菜单栏的“save”,然后选覆盖overwrite原来的tships.txt。

好啦,现在我们已经改变了tships.txt文件,设定了一艘新的飞船,同时也给它添加了说明条目(t\440001.xml)。基本的编辑过程就是这样,用同样的方法,大家可以尝试创造一种全新的飞船。当然,这里的创造是调用了已有的3d素材,如果哪位朋友想从3d模型开始创造一艘船,那么主要的操作工具就是3dmax一类的绘图工具了。而3d方面的制作,显然不能作为本教程的内容了。至于怎样把制作好的3d模型导入游戏里,我们的网站有专门的转换工具以及相关的介绍。

在types文件夹里的其他.txt文件也可以用同样的方法修改,大家可以尝试创造一种新式的工厂,或者改变已有的工厂的产品结构。同理,武器和导弹的参数当然也能够随意调整。需要说明的是,如果你把自己改得越厉害,那么游戏的乐趣就越少了。

另外还有2个特殊的.txt文件需要编辑。现在我们先把它们改成别的名字。请找到\northstar\cats\types\jobwings.txt,然后改成\northstar\cats\types\jobwings.northstar.txt;以及\northstar\cats\types\jobs.txt,改成\northstar\cats\types\jobs.northstar.txt。这两个文件里定义了游戏中发生的各种事件,包括npc的行动和玩家能够接到的任务。如果不添加一点这方面的元素,那么我们制作的mod就显得没有生气了。至于为什么要重命名这两个文件,是因为需要把新的事件和新的星系地图加以匹配。这一点在后面会有专门的介绍。

创建自己的.cat文件

我们已经编辑好了自己的游戏参数,那么怎么让它们在游戏里生效呢?同时最好还能避免改动原来游戏的参数,以便日后恢复。在这一点上,游戏的开发者egosoft可以说是相当大度。他们让玩家们有机会能够参与到游戏的调整里来。

在x3 editor界面里运行x3 mod manager。这样程序会打开x3游戏根目录下mods文件夹,并显示里面的内容。(译注:安装过cycrow 的installer的朋友会在这里看到一个plugmanager的mod,这是installer把通过它安装的所有mod全综合起来了的缘故。)我在前面提到了,x3游戏在读取文件时最后一步读到的.cat文件的数据,拥有最高优先权。所以只要把我们在x3\mods下建立一个.cat文件,把我们编辑好的.txt添加到里面,再激活这个.cat,就能在游戏里体验到修改后的效果了。这样做的好处是,玩家可以在进入游戏前自主选择使用哪个mod,而且这样的修改完全没有改动游戏的原始数据,如果想恢复,不要选择这个mod就会进入原版游戏,可以说是十分方便。现在我们用modmanager建立一个新的mod,点击modmanager菜单栏的“new”按钮,输入northstar,然后会在manager左分栏里看到northstar的mod。选中它,点击“open”,再点击“add”,然后把路径指向desktop\northstar\cats\types\Tships.txt,点击“open”。现在程序会提问,是否把desktop\northstar\cats\types\Tships.txt压缩到northstar.cat里面时还保留types这个目录,选ok。然后用同样的方法添加\northstar\cats\types\jobwings.northstar.txt和\northstar\cats\types\jobs.northstar.txt。注意在添加的时候要保留原来文件的目录结构,也就是types目录,如果加在别的地方,游戏程序就找不到他们了。现在添加440001.xml文件,注意它的路径应该是desktop\northstar\cats\t\440001.xml。现在不需要特别保存northstar.cat,只要关闭就可以了。这个mod以后在运行x3时的界面可以加以选择。如果想现在把它设定成主mod,右击northstar.cat,选activate,就可以了。下次直接进入游戏,读取的就是northstar的mod。



[ 本帖最后由 frankwq1981 于 2007-9-4 17:49 编辑 ]

评分

参与人数 1贡献 +1 收起 理由
roy986 + 1 精品文章

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2007-9-1 18:56:01 | 显示全部楼层
使用游戏内置的galaxy editor


首先我们要找一张地图来操作。相关的信息都存放在\northstar\cats\maps里。找到地方后,我们需要把x3_universe.xmlx3_universe_v13_patch.xml文件拷贝到c:\Program Files\Deepsilver\X3 Reunion\maps文件夹去。(译注:细心的读者肯定已经发现,后一个文件是1.3版补丁中的新地图,所以对于我们2.0.02的用户来说,还有v131,v200等文件需要拷贝。请依照自己的游戏升级历程确定目标文件。在本教程里,我们只探讨1.3版本的操作。)把两个文件同时拷贝过去是因为我要教大家把原版游戏和1.3版游戏的地图合并起来。这样我们制作的mod里面就会保留那些大量的空间陨石了。虽然不少一心向钱看的朋友觉得空间里飘满陨石会妨碍他们发财,但我个人还是喜欢保留陨石,这样游戏更真实一些。当然,如果是自娱自乐,那么怎么设定都没关系,但是想让大家分享,改动还是要合理。

译注:用galaxy editor开始新游戏后默认读取的地图就是custom game里的地图,存放在\x3 reunion\maps下面。而且是用高版本覆盖低版本。所以把上面说的两个文件拷贝到这里后,就可以在galaxy editor 中选择。

现在选择northstar mod为主mod,然后进入游戏。

如果还没有激活游戏内置的galaxy editor,请参照前面所说的,把玩家的名字改成Makeanapplepiefromscratch然后回车。成功后,退出,然后重新进入,选择“new game”我们会在菜单最后一栏看到galaxy editor的选项。它在“custom game”的下面。选择galaxy editor, 然后选择northstar map。一开始请不要选择“new map”,不然玩家会出现在一个空空如也的宇宙里。虽然有朋友喜欢从0开始慢慢建立宇宙,但是对于初学者我们还是建议大家先从编辑已有的星系开始上手。后面会详细讲到星系编辑,现在先来试试我们在前面做好的飞船。


利用galaxy editor作弊


大家会发现进入游戏后,玩家开着一艘nova,出生在argon prime的中心。运行游戏内置的galaxy editor的过程其实和游戏过程一样,我们可以飞行,买卖,停靠等等,这些和普通游戏没有区别。只不过现在我们多了很多选择,可以改变x3宇宙的既有规则。通过galaxy editor,我们可以作弊,得到游戏里所有的道具。如果没有安装作别脚本,那么用这个galaxy editor也可以很方便的测试我们制作的mod。为了完成测试,可能要不停进出游戏,希望大家不要失去耐心。

这里有个重要的声明:在游戏里使用galaxy editor 菜单,需要用小键盘的enter键。而在菜单界面的一般操作,我们使用主键盘上的大enter键。所以我用enter1---小键盘和enter2---主键盘来代替。



按enter1,按y(your current ship),把下面的菜单拉到最底下,直到看到“galaxy editor mode”组(在best buy locator下面),里面有“cheat”,“add ware”,“install ware”三个选项。在星系图中选中任何一个对象(station,factory,ship,asteroid)后,打开菜单,在最下面都有“galaxy editor mode”组,可以进行各种操作。


译注:具体用法我在下面说明,有关作弊部分的操作和深度时空论坛里roy大大作弊教程里的内容十分相像,可以参考。

Nova飞船的“cheat”菜单包括:

Installed ship extensions----在上面按enter2给当前的飞船添加默认的装备
Cargo bay extensions----在上面按enter2会增加当前飞船的货舱,效果等于在空间站购买,达到当前船最大值后,即(xxx max)中的xxx数值,(如果是开始时的nova,显示为236 max)此时再按enter2无效果。
Engine tunings----在上面按enter2增加当前飞船引擎出力,达到(max)后可以继续添加
Rudder optimization----在上面按enter2提升当前飞船转向灵活度,达到(max)后可以继续添加
Single upgrades----在上面按enter2后出现所有飞船可用软件菜单,里面软件前面有“+”,表示已经安装,有“-”,表示没有安装,通过enter2修改。
Set player as owner----让该物品变成归玩家所有,需要先在星系图中选择一个物品
Kill----杀死该对象(直接按enter2等于自杀)



Nova飞船的“add ware”和“install ware”选项的功能,请参照roy大大作弊教程里的说明。区别是,add ware可以向当前船添加任何物品,前提是不超出飞船的货舱容量,而install ware则直接把飞船能够装备的物品装备到位。

在星系图点选satation或factory后,把菜单拉到最下面,可以找到galaxy editor mode组。里面的功能简介如下:



Dock at this station----让玩家所在的飞船马上停靠到这个station或factory。
Show source factories----字面意思是显示源工厂,功能不明
Add ware----向该对象添加特定物品
Install ware----向对象安装特定物品(这两个选项貌似对station不起作用)
Add product----向对象添加产品,具体说来,如果选null,不添加,选ware,添加物品,选ships,添加出售的飞船。一般trading station和factory用ware,shipyard用ships。
Remove product----和上面正相反
Add primary resource----为工厂添加首要原料
Remove primare resource----从工厂移除首要原料
Add secondary resource----为工厂添加次级原料
Remove secondary resource----从工厂移除次级原料
Add default wares from template----按照游戏事先规定好的模板向对象添加物品
Remove all wares----移除对象所有物品
Set player as owner----设定该对象为玩家所有
Destroy this station----马上摧毁这个station

为了方便操作,大家可以把光标移到选项上,按enter2。

继续教程:

为了空间跳跃,先把nova的cargo bay升到最大,然用install ware给nova安上jump drive,再用add ware 给nova 添加260个energy cell。现在我们可以到达宇宙中任意一个地方了,不过每次只能跳跃3个星区。

[ 本帖最后由 frankwq1981 于 2007-9-4 17:58 编辑 ]

评分

参与人数 1贡献 +1 收起 理由
roy986 + 1 精品文章

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2007-9-1 20:13:32 | 显示全部楼层
enter1=数字小键盘enter  enter2=主键盘enter
利用编辑器空降一艘飞船


我们可以通过galaxy editor直接空降先前编辑好的飞船,也可以把它添加到某个船厂。当然,也可以生成一些npc的飞船。

在宇宙空间里,按enter1,然后选择“debug”,大家能看到许多命令。



译注:我把命令的名称翻译一下,但是具体功能还没测试,感兴趣的朋友可以自己试试。

Debug菜单galaxy editor mode 命令组:

Set galaxy file name----给当前的地图其名字
Export galaxy----导出当前地图
Export galaxy with ship commands----连同飞船命令导出当前地图

Add sector----添加星系
Import sector----导入星系
Remove sector----删除星系
Connect sectors with gates----将地图中的星系与星门联系起来
Gate system validation----验证当前星系中星门系统是否正常(如果有类似wormhole的效果会报错,比如从argon prime 北门进却从argon prime南门又飞回来了。)

译注:下面的命令执行后会分三次向大家要求对象的坐标,依次输入x,y,z的坐标值就好了。

Create ship----在指定坐标空降一艘飞船
Create landed ships----在指定坐标向shipyard添加飞船或在某个station创造靠港的飞船
Create station----在指定坐标创造station
Create gate----在指定坐标创造星门
Create asteroid----在指定坐标创造陨石
Create nebula----在指定坐标添加星云(背景效果,下同,但具体的效果没有梳理出来)
Create planet----在指定坐标创造行星
Create sun----在指定坐标创造太阳
Create water container----在指定坐标创造水罐
Create special----在指定坐标创造特别物品
Create space debris----在指定坐标创造太空残骸

Highlight patch objects(可设置on/off)----以高亮显示补丁中的物体开关(效果不明)
Export patch objects to xxxx----把补丁中的物体导出到叫xxxx的地图
Import patch objects…----从xxxx地图导入补丁物品,按enter2后会要求xxxx地图的路径
Reset patch state----补丁状态复位(大概是恢复当前地图的初始状态)

Create objects from cut----从剪辑中创造物品(enter2后会要求输入字符串,功能不明)
Sector type edit mode (可设置on/off)----设定星系类别编辑状态开关(功能不明)

Import default wares----导入当前地图所有默认的物品(应该包括背景等等一系列东西)
Export default wares----导出当前地图所有默认的物品

继续教程:

在debug菜单中找到create ship命令,运行后在飞船清单里找到我们先前编辑的超级战机。然后程序会分3次要求我们输入x,y,z的坐标。我们的nova出生在argon prime的中心,也就是0,0,0的位置。空降的飞船坐标随意即可,比如我们输入20,20,20。然后转移到新的飞船里。(如果有transporter device,就飞过去直接转移,如果没有,九eject,再进入。)别忘了给新船也升升级,然后就可以到处逛逛,试试它的性能怎样。



如果这个mod里的新船想让别人使用应该怎么办呢???
1.        可以把它添加到某类或某个shipyard出售。这样就使量产的。
2.        可以把它偷偷放在某个角落,当作寻宝游戏的标的,这样就使宇宙里独一无二的。
3.        也可以编写一个脚本,让玩家开始游戏的时候就直接开着这艘船。

到目前为止,上面3种方式大家应该都能实现的了。

[ 本帖最后由 frankwq1981 于 2007-9-4 18:03 编辑 ]
回复

使用道具 举报

 楼主| 发表于 2007-9-1 21:19:25 | 显示全部楼层
enter1=数字小键盘enter  enter2=主键盘enter

保存编辑好的地图

在编辑过程中我们应当经常保存,因为mod正在测试,有什么错误还不知道,万一游戏突然崩溃,再重头来过可就郁闷了。

enter1,选择debug,现在我们可以在“set galaxy file name”这一栏给我们编辑的地图起个名字。在本教程里的情况下,这幅地图已经默认是我们的maps\northstar.xml了,如果我们想保留原始地图来做更多的mod,那么把当前的地图改名为northstar2也可以。还可以直接到\maps下改名,非常方便。接下来选择“export galaxy”,在上面enter2。好了,保存完毕,可以回到游戏了。



浏览星系全图


和游戏里一样,按默认的“,”和“.”键可以分别打开星系图和星系全图,我们可以和在游戏里一样随意浏览每个星系。并且也可以通过这个界面定位到某个星系,然后对里面的元素进行全面修改。比如,我们可以向一个星系添加新的空间站或飞船。需要注意的是,玩家本人必须在这个正在编辑的星系里。所以如果想编辑某个星系,先用jump drive跳跃过去好了。我们可以隔着几个星系拷贝和粘贴物品,这点会在后面介绍。

导入补丁中的物品(合并不同版本的星图)


大家肯定还记得在进入galaxy editor前我们拷贝了2个map文件到x3 reunion\maps文件夹。其中一个是原版的地图,也就是我们现在加载的当前地图,另一个v13是1.3版本的升级地图,它添加了许多复杂的空间陨石和效果。我们可以直接调用里面的物品,这样就不用自己动手在星系里到处放陨石了。(译注:如果安装了2.0版本,还会有其他v系列的地图文件。它们都分别在之前版本的基础上添加了不少东西。)下面说说怎样做。

让飞船跳到cloudbase south west,然后飞到goner temple附近,让飞船背对着goner temple,我们可以发现,原本这一带空间充斥这大大小小的陨石asteroid,而现在看来似乎少了许多。不要紧,按enter1,选debug,找到“import patch objects…”,在上面enter2,然后填上1.3版本地图的名字:x3_universe_v13_patch,再enter2



(译注:如果已经是2.0版,请查阅maps\目录下的情形,然后按照以前升级的经历逐个导入覆盖。不要跳过升级档覆盖,比如,在原版的地图上直接导入v200档地图,这样显示效果会变得非常奇怪,因为跳过了许多中间升级文件的效果。而一旦升到最后的版本,以前的效果就不能再添加进来,只能退出重新进入了)好了,一眨眼的工夫,消失的陨石回来了。这个“import patch objects…”的选项会比较目标地图和当前地图,然后在当前地图添加没有的元素。所以想合并地图的话,就用这个命令了。合并地图有时候也会造成麻烦,就是导入的物品位置和现有的某个物品重叠了,这样两个物品就会叠加在一起,如果是不会动的陨石还好,但要是npc或自己的飞船或空间站,那么在他们尝试活动的时候,有很大几率会撞毁。有的时候编完地图一看,在许多星系都多出了这样的孪生陨石,这就是事先没有仔细了解不同版本地图的结果。不过孪生陨石不会影响游戏进行。如果想消除这个状况,enter1,debug,找到“sector type edit mode”并设置成on,然后退出菜单,按“,”打开星系图,在列表里找那些id重复的陨石,然后移除任意一个重复的Id就好了。


[ 本帖最后由 frankwq1981 于 2007-9-4 18:09 编辑 ]
回复

使用道具 举报

 楼主| 发表于 2007-9-1 22:18:38 | 显示全部楼层
在星系里添加或移除物品,调整空间站的货物



enter1,选debug,找到“Sector type edit mode (可设置on/off)”,设定成on。

按“,”打开星系图,右边信息栏最上面的菜单部分应该多出了一个“Editor”的选项。所有选项从左到右的顺序是“Ships”,“All”, “Station”和“Editor”。打开“Editor”栏目,下面具体的选项有:



(Sector type edit mode off的状态):

Set name id----改变选中对象在游戏里的id
Copy to clipboard----剪切到剪贴板
Destroy object----摧毁选中物体(慎用,点了以后一下就没了,万一删错了就郁闷了)

Sector background type----星系背景种类(可以左右调整当前星系的背景,很有意思)
Star background body----星系背景中的行星元素(只在某些星系背景中可调)
Nebula background body----星系背景中的星云元素(只在某些星系背景中可调)
Sector radius----当前星系预设的大小 radius 是半径,后面括号里的百分比是预设的值,可以在此基础上放大或缩小。
Change sector radius and object positions----改变当前星系的大小与内部物品的位置(功能不明)
Sector owner----当前星系势力归属
Sector music track id----当前星系默认音轨,用左右键调整。
Set sector population----设定当前星系的人口数
Is sector in race’s core area----(on/off)设定当前星系是否属于该星系所属势力的核心地位,换句话说,让我们选择这个星系是某一势力的首都还是边境。边境治安显然不太好了。
Proposed factories----是否启用默认的工厂/空间站设置

(Sector type edit mode off的状态,只列出新增加的项目了):

Nebula body family name----背景星云种类名称
Num star background bodies----背景行星数量(译注:我修改了,可是看不到效果???)
Num nebula background bodies----背景星云数量
Num nebula outer bodies----背景星云外部模型数量

Sector ambient red---星系背景色调 红色
Sector ambient blue----星系背景色调 蓝色
Sector ambient green----星系背景色调 绿色
Hue modifier----背景色调调节器

Fog distance near(xxkm)----星系迷雾辐射范围距中心近距
Fog distance far(xxkm)----星系迷雾辐射范围距中心远距(xx是具体数值)

Num nebula dust distances---星云微粒间距(大概是星云背景的浓度)
Nebula #1 dust body----星云效果层次第一层

这一栏一直到第八层。

Create new background subtypes(copy these values)----在当前星系创造新的次级背景效果(复制这些数据)
Export values to types/Tbackgrounds.txt----把新生成的效果添加到types\Tbackgrounds.txt的原始定义里

继续教程:



在当前星系里添加物品:enter1---debug---add,然后选stations。过程和空降飞船一样。选好station,按p,可以调整属性。比如,产品售价,原料等等。也可以用这个命令往既有的station里添加新产品和原料,或者干脆重新设定一种station或factory。万家可以停靠在新设定的station,看看一开始编辑的产品售价是否已经在使用了。

如果大家往一个海盗基地pirate base添加了一种新的物品,比如missle或laser,那么这个基地原来销售的所有产品都会消失不见。如果遇到这种情况,大家选择给这个基地add default wares就好了,我第一次遇见的时候可是吓了一跳。

[ 本帖最后由 frankwq1981 于 2007-9-4 18:16 编辑 ]
回复

使用道具 举报

 楼主| 发表于 2007-9-2 13:41:34 | 显示全部楼层
复制,粘贴,翻转对象(copy,paste,rotate)


enter1=数字小键盘enter  enter2=主键盘enter

应用galaxy editor, 我们能复制粘贴星系里的所有物品。打开星系图,选中一个对象,然后按“shift+c”,就把这个对象复制到剪贴板里了,然后可以把它paste到星系里任何一个地方。在星系图里对一个对象shift+c后,sector map右面的信息栏里,我们能看到这个对象前面多了一个黄色的c,这就表示它已经在剪贴板里了。



Paste 的命令是“shift+v”。完成一次copy-paste后,我们需要清空剪贴板,不然下次paste的时候最早copy的那个对象也会被paste上来。但是想copy-paste多个对象时,就不用清空。清空的方法是:选择原对象(就是你copy它的那个对象,有黄色的c的那个),按p键打开属性,找到“remove from clipboard”,在上面enter2,或者直接用热键c。这样就把这个对象从剪贴板里移除了。如果copy-paste了错误的对象,选中它,按d键,就能删除。选中一个对象后,用数字小键盘的“2,4,6,8”键可以移动它的位置。而用数字小键盘的“/,*,-,+,0,.”键可以向各个方向翻转这个对象。这就让我们能够精确的给一个对象定位。

处理陨石asteroids和背景行星planets


Galaxy editor还有许多选项,我们不一一介绍了,大家可以自己尝试研究。我只挑几个功能说一说。我们可以往星系里添加陨石,并调整它的矿产产量。方法是:enter1---debug---create asteroid。在create asteroid上enter2,然后会让我们输入该陨石的次级分类subtype,这个填1就好了,1类是可以开采的minable。然后会让输入矿产种类resource type,这时,0=ore,1=silicon,2=nividium,随便选择,然后会让输入产量yield,随便输入。之后会分3次让输入陨石产生出来的x,y,z坐标。另外,还可以通过enter1---debug---create planet给当前星系添加行星背景。我们会有一个表格,把所有行星背景分类给整理出来。需要注意的是,请先按前面合并地图的教程,把当前星系的地图升级到最高版本,不然有些添加的行星背景会无法正常显示。

[ 本帖最后由 frankwq1981 于 2007-9-4 18:20 编辑 ]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

Archiver|手机版|小黑屋|DeepTimes.NET 太空游戏站