在Hero/GOM/GEE引擎的单机传奇里加传送NPC,只需两步:在刷怪配置里注册NPC位置和脚本文件名,再写对应的脚本文件定义传送选项。
一、确定土城地图编号与放NPC坐标
先登入游戏用GM命令查:
@showmapid 或 @mapinfo
大多数版本盟重(土城)地图编号为 3,部分端叫 3 或 M003。确认后在土城安全区找块空地记坐标,例 (330,330)。
二、注册NPC到MerChant.txt
打开 MirServer\Mir200\Envir\MerChants.txt(有的叫 Merchant.txt 或 MerChant.txt),末尾追加一行:
传送使者 3 330 330 传送使者 0 8 0 0
各字段含义(用空格或Tab分隔):
• 传送使者 — 脚本文件名前缀(对应Market_Def下文件名,不含-数字部分)
• 3 — 地图编号(土城/盟重,按你查到的填)
• 330 330 — X Y 坐标
- 传送使者 — 游戏内头顶显示的名字
• 0 — 朝向(0下1左2右3上)
• 8 — 外观代码(NPC形象,可试5/8/45等,0为默认老人)
• 0 0 — 预留位一般填0
保存后NPC已注册,但脚本文件不存在时M2启动会报警告,写了脚本才正常显示。
三、编写传送NPC脚本(Market_Def)
在 MirServer\Mir200\Envir\Market_Def\ 新建文件,命名规则为 NPC名-地图号.txt,即:
传送使者-3.txt
内容示例(常见地点传送):
[@main]
#SAY
欢迎来到盟重传送点!\ \
<传送到比奇城 /@GoBiQi>\
<传送到沃玛寺庙 /@GoWoMa>\
<传送到祖玛寺庙 /@GoZuMa>\
<传送到封魔谷 /@GoFengMo>\
<离开/@exit>
[@GoBiQi]
#IF
#ACT
MAPMOVE 0 330 268
BREAK
[@GoWoMa]
#IF
#ACT
MAPMOVE D721 18 68
BREAK
[@GoZuMa]
#IF
#ACT
MAPMOVE D713 68 88
BREAK
[@GoFengMo]
#IF
#ACT
MAPMOVE 5 330 330
BREAK
说明:
• MAPMOVE 地图编号 X Y 把玩家传到指定地图坐标,地图编号与 MapInfo.txt 一致(比奇通常0,沃玛入口D721,祖玛入口D713,封魔谷通常5或D404看端)
• \ \ 表示换行,<文字/@标签> 是点击链接
- #IF #ACT 最简写法无条件执行,BREAK 终止脚本防止继续执行下方
四、重载与测试
保存两个文件后:
• 回到M2Server点【控制】→【重新加载NPC脚本】(或输 @ReloadNPC)
- 不重载可直接重启M2Server
• 进游戏去土城(330,330)看NPC是否出现,对话测试各传送点
若想加收费传送,在 #ACT 前加 #IF CHECKGOLD > 数值 和 #ACT TAKE GOLD 数量 即可。
五、常见排错
• NPC不显示 — MerChant.txt地图号错或坐标在障碍格(换个空地试);脚本文件名必须是 传送使者-3.txt 且与MerChant第一列完全一致(含大小写);外观码先填0排除贴图问题
- 点NPC没反应/说NPC不存在 — Market_Def下文件名不对或路径错(必须在 Envir\Market_Def\ 下不能直接放 Envir\ )
• 传送到黑屏/落地即死 — MAPMOVE的地图编号或坐标错,对照 MapInfo.txt 第一列和地图实际可走坐标
- M2启动报MerChant格式错 — 某行少了字段或用了中文空格,用Notepad++检查刚加那行
• 想加更多地图 — 先在游戏 @move 地图号 跑到想加的地方记坐标,回头补进脚本即可
如果要加全服多地图传送(比奇、盟重、沃玛、祖玛、赤月、封魔、蚂蚁洞等),照此模板继续往脚本里加 @GoXXX 段和对应 MAPMOVE 坐标就行。
热血传奇单机版添加土城传送NPC教程 MerChant注册坐标与Market_Def脚本写法示例
来源:
作者:
点击:

