增加npc的核心步骤是同时完成位置登记和对话脚本两部分:先在服务端的 `mir200\envir\merchant.txt` 中登记地图、坐标、名称和外观,再在 `market_def` 目录创建对应脚本,最后使用引擎的npc重载功能或重启服务端测试。采用常见 mirserver 目录结构的传奇服务端中,`merchant.txt`负责npc入口信息,点击后由引擎调用脚本并从 `[@main]` 字段开始执行,因此只添加坐标而不配脚本,npc通常只能显示,无法正常对话。

添加前先备份 `envir` 目录,并确定目标地图编号、可站立坐标和npc外观编号。地图编号必须与服务端地图配置一致,x、y坐标应选择安全区或空闲格,避免放在障碍物、传送点和刷怪点上;新手npc建议放在出生点附近5至8格内,功能型npc可放在主城安全区,活动npc则应与活动入口保持10至20格距离。随后打开 `merchant.txt`,按现有行的字段顺序新增一行,至少填写脚本名、地图、x坐标、y坐标、npc名称、标志和外观,字段之间使用空格或制表符分隔。不同引擎的后续字段可能控制沙巴克归属、移动、变色和移动间隔,不能直接照搬其他版本的完整行格式。
脚本文件必须与入口行的脚本地址完全对应,并在 `market_def` 下建立可读取的文本文件。基础脚本至少保留 `[@main]` 入口,例如先写npc欢迎语,再配置跳转按钮或功能标签;如果只需要展示说明,完成对话文本即可,如果要实现传送、兑换、任务或商店,则需要继续添加对应引擎命令。默认新增npc没有等级、金币或道具门槛,门槛完全由脚本条件决定,例如可设置等级达到40级、背包拥有指定物品1个、金币不少于10000时才显示功能。脚本编码应沿用原版本可正常读取的格式,文件名、扩展名、地图后缀规则也要以当前引擎已有npc为准。

测试时应按显示—点击—执行—权限四步检查:先进入目标地图确认npc是否出现在指定坐标,再点击确认是否能打开对话,随后用满足条件和不满足条件的账号分别测试功能,最后检查普通玩家是否拥有不应具备的gm权限。npc不显示,优先检查地图编号、坐标是否可用、配置行是否有多余空格或字段错位;能显示但点不开,重点检查脚本路径、文件命名和 `[@main]` 是否存在;对话正常但传送或扣除物品无效,则检查命令拼写、地图名称、目标坐标以及条件判断。确认无误后,建议让新手npc只承担引导和基础传送,中期npc负责装备、任务或材料兑换,后期npc再开放高价值功能,并为每项兑换设置明确的等级、货币和每日次数限制,以免影响服务器经济平衡。