当前位置 : 145z游戏站 | 热血传奇 | 传奇游戏 | 

传奇NPC卖物品混乱?手把手教你修改售卖列表

热度:
自己开传奇准备发布时,常遇到NPC售卖物品错乱问题:药店混杂布衣、回城卷,首饰店同时卖武器和终极装备,严重影响玩家体验。其实这类问题只需修改服务端的NPC脚本文件即可解决,核心是找到对应NPC的售卖配置,删除多余物品或补充合理商品,以下是分引擎的详细操作指南。
一、前期准备:2件事避免操作失误
修改前先做好基础准备,防止文件改错导致NPC失效:
备份核心文件:找到服务端根目录下的Mir200\Envir文件夹,复制Merchant.txt和Market_Def文件夹到桌面(出错可直接替换恢复);
确认引擎类型:打开Mir200文件夹,查看核心程序名称(如M2Server_GOM.exe为GOM引擎,M2Server_HERO.exe为HERO引擎),不同引擎修改路径一致,但脚本格式略有差异。
二、核心步骤:分3步定位并修改NPC售卖列表
所有NPC的售卖规则都存放在2个文件中:Merchant.txt记录NPC基本信息(位置、名称),Market_Def文件夹下的脚本文件记录具体售卖物品。以“修改药店只卖药水”为例,操作如下:
1.第一步:找到目标NPC的“身份标识”
先在Merchant.txt中定位药店、首饰店等NPC的关键信息:
打开Mir200\Envir\Merchant.txt(用记事本或Notepad++打开,推荐后者方便搜索);
按“Ctrl+F”搜索NPC名称,比如输入“药店”,找到类似条目:
药店老板3320330药店老板010000
解读:依次为【脚本名称地图编号X坐标Y坐标NPC显示名标志形象...】,核心记住“脚本名称”(此处为“药店老板”)和“地图编号”(此处为“3”,代表盟重土城)。
2.第二步:找到对应NPC的售卖脚本文件
根据第一步的“脚本名称+地图编号”找具体售卖配置:
进入Mir200\Envir\Market_Def文件夹,找到以“脚本名称-地图编号.txt”命名的文件,比如“药店老板-3.txt”(若没有地图编号,直接找“药店老板.txt”);
双击打开文件,重点看(@buy)标签下的内容——这部分就是NPC的售卖列表,混乱问题都出在这里。
错误示例(药店老板的混乱配置):
(@buy)
请选择需要购买的物品:
金疮药(小)100110010@Main
布衣(男)10025001@Main//多余物品,需删除
回城卷10152001@Main//非药品,需删除
魔法药(小)100310010@Main

3.第三步:修改售卖列表(删除/添加/调整)
按NPC类型清理售卖物品,遵循“各司其职”原则(药店卖药水、回城卷;首饰店卖项链、戒指等):
(1)删除多余物品
直接删除不需要的物品行即可,以上面的药店为例,删除“布衣”和“回城卷”对应的两行,修改后:
(@buy)
请选择需要购买的物品:
金疮药(小)100110010@Main
魔法药(小)100310010@Main

(2)添加缺失物品
若药店缺少“太阳水”,可按格式补充一行(需知道物品ID,查询方法见下文):
太阳水10205001@Main
格式解读:物品名称物品ID售价单次最大购买量@返回主菜单
(3)调整价格或数量
直接修改“售价”和“单次最大购买量”数字,比如将金疮药价格从100改为80,单次购买量从10改为20:
金疮药(小)10018020@Main
(4)不同引擎的特殊注意
HERO引擎:部分脚本会用#ACT标签控制售卖条件,删除物品时仅删(@buy)下的物品行即可,不要动#ACT相关代码;
GOM引擎:支持批量添加同类物品,用//标注注释(如//基础药水类),方便后续维护。
三、关键工具:3种方法查物品ID(必学)
修改时必须用“物品ID”替代名称(引擎只识别ID),以下是快速查询方法:
1.服务端数据库查询(最准确)
打开服务端Mir200\DB文件夹,找到Item.DB文件;
用“DBCommander”或“传奇物品数据库编辑器”打开(网上可直接下载);
搜索物品名称(如“金疮药”),对应的“物品编号”就是ID(如1001)。
2.游戏内指令查询(最快捷)
启动游戏,用GM账号登录;
在聊天框输入指令/itemid物品名称(部分引擎为@itemid物品名称),系统会直接返回ID,比如输入/itemid太阳水,显示“太阳水ID:1020”。
3.在线查询工具(应急用)
搜索“传奇物品ID查询”,找到专用网站,输入物品名称即可获取ID,注意选择与自己版本匹配的数据库(如复古版、合击版)。
四、收尾操作:测试生效与问题排查
修改后需确认NPC售卖列表已更新,避免白做无用功:
1.生效步骤
保存修改的脚本文件(编码选ANSI,避免乱码);
重启服务端(必须重启M2Server核心程序,否则修改不生效);
登录游戏,找到目标NPC(如药店老板),点击“购买”,查看物品列表是否已清理。
2.常见问题解决
修改后NPC消失:检查Merchant.txt是否误删条目,用备份文件替换恢复;
物品不显示:确认物品ID正确,或该物品未在Item.DB中添加(需先在数据库添加物品);
脚本报错:检查(@buy)下的格式是否正确,每行末尾必须带@Main,物品ID、价格不能留空。
五、进阶优化:让NPC售卖更合理(可选)
清理混乱物品后,可按NPC类型优化售卖列表,提升玩家体验:
药店:只放各类药水(小/中/大金疮药、魔法药)、回城卷、随机传送卷;
首饰店:分“普通首饰”(铜戒指、铁项链)和“进阶首饰”(珊瑚戒指、生命项链),按等级排序;
武器店:对应职业分类(武士武器:青铜剑、斩马刀;法师武器:木剑、魔杖),不混入首饰或装备;
特殊NPC:如“新手向导”只卖布衣、木剑等新手物品,“高级商人”才卖稀有装备(需在脚本加GM权限限制)。
六、补充注意:避免后期出问题
定期备份脚本:每次更新NPC后,将Market_Def文件夹压缩保存,防止误操作后无法恢复;
统一物品分类:用表格记录所有NPC的售卖清单(如“药店:1001金疮药、1003魔法药”),方便后续批量修改;
版本匹配:更新版本后,先检查Market_Def文件夹是否被覆盖,若覆盖需重新调整售卖列表。
[顶部]