传奇单机添加土城直通尸王殿传送NPC教程

来源: 作者: 点击:
在自己架设的传奇单机服务端中,为土城增加一个直通尸王殿的传送NPC,需修改服务端 MerChant.txt 配置文件并编写对应的NPC脚本。以下为通用引擎(HERO/GOM/GEEM2)的详细操作流程。

一、 确认尸王殿地图编号与坐标

在添加NPC前,需先确认尸王殿的地图编号及落地坐标。
1. 查找地图编号:打开服务端 MirServer\Mir200\Envir\MapInfo.txt 文件,搜索“尸王殿”。通常尸王殿地图编号为 SGW、Q004 或 D717 等(具体以你的版本为准)。
2. 确认坐标:若不确定坐标,可先设置为 30 30(地图中心附近),进入游戏测试后再调整。

二、 修改MerChant.txt添加NPC配置

此文件用于定义NPC在地图中的显示位置。
1. 打开文件:进入 MirServer\Mir200\Envir\MerChant.txt。
2. 添加配置行:在文件末尾新增一行,格式如下:

尸王传送员 3 330 340 尸王殿传送员 0 8 0 0 0

◦ 尸王传送员:NPC脚本文件名(核心参数,后面需对应创建文件)。

* 3:地图编号(3代表盟重土城)。
◦ 330 340:NPC在土城的坐标(X Y)。

* 尸王殿传送员:游戏中显示的NPC名称。
◦ 0:是否为沙城NPC(0否,1是)。

* 8:NPC外观代码(8通常为老兵,可替换为其他代码)。
◦ 0 0 0:移动间隔、变色模式等参数(单机默认0即可)。

三、 创建NPC脚本文件

脚本文件决定了NPC的对话内容和传送功能。
1. 进入目录:打开 MirServer\Mir200\Envir\Market_Def 文件夹。
2. 新建文件:创建一个名为 尸王传送员-3.txt 的文本文件(注意:文件名必须与 MerChant.txt 中定义的名称一致,-3 代表该NPC位于3号地图)。
3. 编写脚本内容:用记事本打开文件,复制粘贴以下标准传送脚本:

[@main]
你好,我可以直接送你前往尸王殿练级。\ \
<直接传送/@go> <关闭/@exit>

[@go]
#IF
; 此处可添加条件,如 CHECKLEVEL > 30 (等级大于30级)
#ACT
mapmove SGW 30 30
SendMsg 6 已传送至尸王殿!
#ELSESAY
你的实力尚未达到要求,无法进入。\

◦ mapmove SGW 30 30:核心传送指令。SGW 需替换为你的尸王殿实际地图编号,30 30 为落地坐标。

* SendMsg 6:传送后发送的提示信息(黄色字体)。
◦ 条件判断:#IF 段可用于设置进入条件(如等级、金币消耗),若无需条件可删除 #IF 和 #ELSESAY 段,直接保留 #ACT。

四、 重载NPC与测试

1. 重启服务端:保存所有文件后,重启服务端(关闭M2Server等程序再重新启动),这是最稳妥的方式。
2. 或重载NPC:若服务端正在运行,可在M2Server菜单栏点击“查看”->“列表信息”->“NPC列表”,找到“尸王殿传送员”并点击“重新读取”,但部分引擎需重启才能生效。
3. 进入游戏:登录游戏,前往土城坐标 330 340 附近,点击新出现的NPC测试传送功能。

五、 常见问题与排查

• NPC不显示:检查 MerChant.txt 中的地图编号和坐标是否正确;确认文件名 尸王传送员-3.txt 是否放在 Market_Def 目录下,且中间是英文短横线 -。

* 传送后黑屏/掉线:说明地图编号错误。请再次核对 MapInfo.txt 中尸王殿的正确编号,并确保客户端补丁中包含该地图文件。
* 脚本报错:检查脚本中的括号是否为英文半角符号(如 []),切勿使用中文全角符号。

通过以上步骤,即可在单机土城成功添加一个功能完整的尸王殿直通NPC。