剑侠情缘贰编辑器使用指南

Author: GARY Date: 2000年 第45期

  西山居最近推出的《剑侠情缘贰》白金版中有一个重要组成部分:《剑侠情缘贰》地图编辑器。在《剑侠情缘贰》白金版的第二张CD上有一个Setup.exe,运行,就可以开始安装地图编辑器了。如果觉得安装会在注册表里留下一些垃圾的话,可以直接将光盘上的mapedit目录整个拷贝到硬盘上就可以了。不过要注意,直接从光盘上拷贝文件可能会造成有些文件是只读属性的,有可能会影响编辑器的运行,要好好留意一下。有一点比较重要的是,《剑侠情缘贰》的地图编辑器只能运行在16位色的windows环境下,要注意修改自己电脑的显示模式。
  关于界面什么的我就不罗嗦了,编辑器做得很直接。修改的同好都知道,对一个RPG游戏来说,可以分为三个主要部分:地图、人物和事件,其他的界面、道具等是属于点缀性质的东西。为了节约篇幅,以下我只就这三个部分简单讲一下《剑侠情缘贰》地图编辑器的使用中的重点问题,如要了解具体操作,可参考白金版的说明书。
  使用编辑器的顺序是:使用图素拼接成自己的地图;设定NPC;设定事件和其他最后测试和调整,前后经过四个步骤就可以看到自己的作品了。
  首先应该注意的是,MPC文件是《剑侠情缘贰》地图编辑器统一使用的文件格式,所有的地图图素、人物动作等图片都是使用这种格式。在制作MPC文件的时候,只能使用256色的BMP位图或者是GIF动画,否则的话,编辑器是不认图片格式的。《剑侠情缘贰》地图编辑器的所有脚本都是文本格式的,记住要准备一个纯文本编辑器,我用的是UltraEdit7.1。在制作完成自己的小故事后,通过改写Script目录中的Newgame.txt的脚本,并使用编辑器附带的sword2.exe执行文件,选择其中的新游戏选项,就可以脱离编辑器运行自己的游戏了。
  地图制作方面要注意的地方有:地图图素的存放目录要和地图文件的名字一样,否则地图图素会无法载入。如果设定不同的目录的话,注意要使用Ctrl+G重新设定地图图素的目录。这一点一定要牢牢记住。《剑侠情缘贰》使用的是类似Diablo的图像引擎,地图上的所有图像分三层:A.第三层永远遮挡第一、二层。第二层遮挡第一层。B.同一层里有的图素有高度的概念,NPC固定在第二层,这个是制作地图所要掌握的最重要的概念,不然的话就走到墙上去了。裁图的时候要注意,一些有高度的东西,例如墙,或者是大树,需要使用键盘上的w/s键来控制图素的高度,在裁图的时候就裁一个带高度的图素,否则的话游戏中是体现不出高度感的。在裁图的时候,要注意BMP图最左上角的一点是透明色,地图编辑器在裁图的时候会把那个颜色给去掉,因此要求所有调进来的图最左上角的颜色是图素中没有用到的。需要的话可以自己制作新的图素,但要使用没有边缘反锯齿的256色BMP图片,具体格式可以参考编辑器目录中带的那几张图片。在地图编辑器的光盘上有一个MPC目录,经过我好一番研究,发现那是《剑侠情缘贰》中用到的所有图素!赶快把这些好东西COPY进来,作为地图的补充。西山居对玩家还真是不错,不过要是同时提供《剑侠情缘贰》中所有的地图文件就好了,那就不用自己做,直接改就行了……还有一点要注意,地图上所有的人物行走路线都是由通过在地图格子上设定障碍来实现的,共有障、跳障、透、跳透四种障碍模式,它们可以通过空格键来切换,要取消障碍的话点鼠标右键就可以了。
  地图制作完成后就到了NPC,也就是人物的部分了,《剑侠情缘贰》的NPC的设定相对来说有点复杂,笔者可是花了好几天的功夫才搞明白。首先,所有的NPC是由NPC、NPCRES、OBJ、OBJRES四个目录下面的*.ini定义的,要修改一个NPC便要同时修改这几个目录下对应的INI文件,其中的相互关系是:NPC目录下的INI文件是定义NPC的具体属性的;NPCRES目录下的INI文件是定义NPC的资源文件的;由于战斗类NPC死亡后尸体会变成物品,所以要在OBJ目录里定义NPC尸体的属性;而OBJRES目录下是所有物品和尸体的资源定义。每个人物至少有站立、行走两个动作,每个动作是一个单独的MPC文件,战斗类NPC同时还有攻击、被攻击、死亡等几个动作,需要对每个动作都定义一个MPC文件,这些都可以在NPCRES目录下的INI文件中定义。设定好NPC后就可以在地图上放置需要的NPC了,具体的属性也可以在编辑器内通过工具来设定。每个地图上的NPC设定好后,要存为一个NPC后缀的文件,然后在脚本中再加以调用。
  现在地图、NPC都准备好了,跟着的就是最重要的事件的安排部分了。《剑侠情缘贰》中的事件都是通过脚本触发的,而这些脚本都是定义好的TXT文件,可以很简单地加以修改和调试。需要特别提示的是,每个地图上发生的事件,在编写好脚本后,需要存放在Script/MAP目录下跟地图文件同名的目录内。每个脚本目录内都有一个Talk.txt,里面存放的是该地图上所有对话的文本,通过标号来区别,可以简单地在脚本中实现调用。触发脚本可以通过地图脚本和人物脚本两种方式来实现。也就是说,你可以设定游戏中的人物走到地图上的某个地方触发事件,或者是与游戏中的人物对话后触发事件,实际上与游戏中的人物对话也是一个简单的事件脚本来的。具体的脚本是由一系列的脚本函数通过一定的格式编写完成的,这些具体的函数和格式说明在\script\help.txt里可以找到。
    《剑侠情缘贰》地图编辑器内同样可以实现对主角的武功、物品、道具等的修改,这里我就不多说了,大家可以自己尝试看看。
  不过,从一定角度上来看这个编辑器也存在着一些问题。首先是游戏中的图素都是256色的,自己做的一些图在从真彩转为256色后会有相当的颜色损失。此外在这个编辑器中没有提供合适的图素管理工具,没有使用组件的概念,以至用起来看着一大票MPC文件都搞不清楚什么是什么。最后是自己手工裁剪图素非常繁复,如果能编辑器自己来做这件事就好了,不过这似乎有点不可能。(^45060401a^)