传奇单机增加npc
增加npc的核心步骤是同时完成地图登记和对话脚本两项配置,然后在m2引擎中重新加载npc或重启服务端。先关闭正在运行的编辑程序并备份`mirserver\mir200\envir`目录,打开`merchant.txt`,新增一行登记信息。以盟重省地图编号3、坐标330,330为例,可写成:`测试npc 3 330 330 测试npc 0 8 0 0 0`。其中第一个测试npc是脚本名称,`3`是地图编号,两个330是坐标,第二个测试npc是游戏中显示的名称,`8`是外观编号,其余参数控制归属、移动和显示效果。不同引擎的字段数量可能不同,最好复制同版本中一个能正常显示的npc整行,只修改名称、地图和坐标,避免参数错位。

创建对话功能时,必须在`mirserver\mir200\envir\market_def`目录建立与登记名称对应的脚本文件。地图编号为3时,文件名应为`测试npc-3.txt`,不要误写成`测试npc.txt`或使用中文全角短横线;文件内至少加入一个主入口,`[@main]`、换行后写npc台词,再加入`<关闭/@exit>`作为退出按钮。若需要传送、领取物品、打开商店或检测任务状态,应在主入口下面继续添加对应按钮和脚本段,并确认命令属于当前m2引擎支持的语法。脚本文件名、`merchant.txt`首列名称和地图后缀必须一致,否则角色能够出现在地图上,却可能无法打开对话,或者加载时提示脚本不存在。

首次添加时应优先复用客户端已有的npc外观,确认位置和脚本正常后再处理自定义素材。`merchant.txt`中的外观参数可以先使用已经存在的编号,例如常见示例中的8或15;如果只显示npc名字而看不到人物,先检查外观编号、空格分隔和客户端资源是否匹配,不要立即修改脚本。坐标应选择地图内可行走、没有被建筑或障碍物占用的格子,并让npc与玩家常用路线保持至少1至2格距离,避免角色刷新后被卡在npc旁边。地图编号改动后,脚本文件后缀也要同步修改,例如从盟重省3改到比奇省0,就应使用对应的`测试npc-0.txt`文件。
完成文件修改后,保存文本并在m2管理界面执行重新加载npc设置;若当前引擎没有该选项,则完整重启m2或服务端,再进入目标地图验证。检查顺序应为:npc是否出现在正确坐标、名称是否正确、点击后是否弹出主菜单、按钮是否能跳转、奖励或传送是否只执行一次。新手适合先制作只有一句对话和关闭按钮的测试npc,确认登记与脚本链路无误后再加入复杂功能;已有版本的进阶玩家可以直接复制功能相近的商人或传送员脚本,逐项替换条件、物品和坐标。需要加入全新人物形象时,还要同步准备客户端npc资源和资源编号,否则服务端配置成功也只能显示名称或错误外观。
