如何在HERO引擎单机传奇服务端中添加一个新的NPC?

来源: 作者: 点击:
1. **准备工作**
- 确保你已经正确架设了HERO引擎单机传奇服务端,并且熟悉服务端文件的基本结构。你需要知道主要的游戏文件存储位置,如`D:\mirserver`是HERO引擎服务端常见的安装目录。
2. **通过Merchant.txt文件添加NPC基本信息**
- 找到`D:\mirserver\Mir200\Envir\Merchant.txt`文件。这个文件用于记录NPC的位置、外观等基本信息。
- 按照一定的格式添加NPC信息。格式为:【脚本名称 地图名称X坐标Y坐标NPC名称 标志 形象 是否属于沙 是否移动 移动间隔 是否允许变色 变色速度(秒)】。中间可以用空格或制表符(tab)分隔。
- 例如,假设要在3号地图(土城)的坐标(300,300)添加一个名为“神秘商人”的NPC,形象为15(这个数字可以根据已有的NPC形象来参考设定),不移动,不属于沙城,不允许变色等。可以这样写:【神秘商人3 300 300神秘商人0 15 0 0 0 0】。
3. **创建NPC脚本文件(在Market_Def文件夹中)**
- 打开`D:\mirserver\Mir200\Envir\Market_Def`文件夹。
- 在这个文件夹中创建一个新的文本文件,文件名应该是“NPC名称 - 地图编号.txt”。按照上面的例子,文件名就是“神秘商人 - 3.txt”。
- 在这个脚本文件中编写NPC的功能和对话等内容。例如:
```
#IF
#ACT
#SAY欢迎来到我的商店,我这里有各种珍稀物品。
```
- 这里`#IF`是条件判断的开头,`#ACT`是动作执行部分的开头,`#SAY`用于让NPC说话,引号中的内容就是NPC要说的话。
4. **添加NPC素材(如果需要新的外观)**
- 如果想给新添加的NPC一个新的外观,需要添加NPC素材。
- 对于HERO引擎,有不同的NPC素材文件,如npc.wil、npc1.wil、npc2.wil。
- NPC.wil代码算法为NPC首张数字÷60 = NPC代码。例如0÷60 = 0,60÷60 = 1。npc1.wil代码算法以60张图为一组,第一个NPC代码为500,第二组为501等。NPC2.wil中代码算法也是以60张图为一组,第一个NPC代码为300支持到309。
- 把新的NPC素材放到合适的wil文件中,并根据上述算法确定其代码,然后在Merchant.txt文件中的“形象”参数部分填写正确的代码,使NPC显示新的外观。
5. **使NPC生效**
- 完成上述步骤后,需要重新启动M2服务器(在`D:\mirserver`文件夹中找到`GameCenter.exe`,先点击“停止”,再点击“启动”)或者重新加载NPC(在M2服务器控制台中查找NPC相关的重新加载选项)。
- 这样,新添加的NPC就会在游戏中生效,玩家在游戏中走到指定的坐标位置,就可以看到并与这个NPC进行互动了。