来源:夜神 | 更新时间:2025-12-16 17:08
增加npc的核心流程是同时修改npc位置表和npc脚本文件:先在服务端的merchant.txt中登记地图、坐标、名称和外观,再到对应地图目录创建同名脚本,否则即使坐标记录正确,也可能出现npc不显示或无法对话的情况。修改前先复制整个d:\mirserver\mir200\envir文件夹,关闭m2及相关服务端程序,避免文件被占用或保存失败。常见单机传奇端的npc数据位于envir\merchant.txt,脚本则放在envir\market_def下的地图文件夹内。

添加位置时,先确定地图代码和可站立坐标,再在merchant.txt末尾新增一行。例如在盟重省安全区放置回收npc,可以写成:盟重土城/装备回收员 3 326 325 装备回收员 0 8 0 0 0。其中盟重土城/装备回收员对应脚本目录和npc名称,3是盟重省地图代码,326 325是地图坐标,装备回收员必须与脚本文件名称保持一致,8是外观代码,后面的数字属于附加参数。坐标应选择没有障碍物、靠近安全区通行位置的格子;若npc生成后看不见,优先检查地图代码、坐标和外观代码,而不是反复修改脚本内容。
创建脚本时,文件名必须写成装备回收员-3.txt,并放入d:\mirserver\mir200\envir\market_def\盟重土城目录;装备回收员对应npc名称,-3对应地图代码,任何一项写错都会导致点击无反应。脚本至少需要[@main]入口,例如先显示请选择要回收的装备,再设置<绿色项链/@lsxl>、<骑士手镯/@qssz>和<退出/@exit>等按钮。按钮名称是玩家看到的文字,后面的标签是脚本跳转目标,标签拼写必须完全一致;换行符使用反斜杠,不能随意删除,否则对话框排版可能连成一行。

npc功能的关键在于用条件判断控制物品扣除和奖励发放,建议先用单件物品、固定金币测试。以回收一条绿色项链为例,可在[@lsxl]中使用checkitem 绿色项链 1检查数量,满足条件后执行take 绿色项链 1扣除一件,再执行give 金币 5000发放5000金币,最后用goto @hs返回选择界面;没有物品时使用提示命令并返回原菜单。若希望限制高级玩家才能使用,可在对应if条件中加入等级判断,例如设置30级门槛,低于30级只显示提示,不执行扣物品和奖励命令。
完成文件修改后,重新启动m2或整套单机服务端,再进入对应地图验证npc是否出现、名称是否正确、对话按钮是否能跳转、物品不足时是否不会误扣道具。最常见的错误是把盟重省脚本写成装备回收员-0.txt、merchant中的npc名称与脚本文件名不一致、坐标落在墙体或不可行走格上,以及把take和give顺序写反导致奖励逻辑异常。确认基础npc正常后,再逐项增加装备种类、等级条件、元宝奖励或传送功能,每次只改一处,便于定位脚本错误。

关于我们 | 友情链接 | 游戏合集 | 广告服务 | 联系我们 | 举报中心 | 网站地图 | 网站招聘 | 全部游戏 | 全部平台 | 家长监护
特别注意:本站所有信息均为程序自动采集自互联网搜索引擎,信息真实性无从验证,请自行判断,谨防受骗上当,所引发的一切法律后果本站概不负责!
Copyright 2015-2026 ahrmjs.com All Rights Reserved. 睿明新服网 版权所有 鄂ICP备2020019279号-30