传奇单机版自动回收设置方法与脚本修改详细教程

来源: 作者: 点击:
修改自动回收功能开关与基础配置

传奇单机版的自动回收通常由M2引擎内置功能或脚本插件实现,优先检查引擎自带模块是否开启。
• 打开M2Server.exe,依次点击选项、参数设置、功能设置、自动回收(部分版本在游戏管理、物品回收或专用插件页),确认自动回收功能已勾选启用,未勾选则全服无效。

- 在自动回收界面查看回收列表,默认可能空白或仅有少数物品,点击添加物品,输入数据库StdItems.DB内完全一致的物品名(如沃玛号角、祖玛头像、金币、各类药水瓶、低级装备名),设置每组的回收价格(金币或元宝)与每组数量。
- 若支持分类回收,可建分组如“沃玛装备回收”“祖玛装备回收”“材料回收”,分别绑定对应物品列表与单价,保存后点击重载自动回收配置或重启M2使参数生效。
• 部分引擎(GOM、GEE)需在!Setup.txt或GameConfig.ini中确认AutoRecycle=1、RecycleGold=1(金币回收开关)、RecycleYuanBao=1(元宝回收开关),值为0则改为1并保存重启服务端相关进程。

通过QFunction脚本开启与定制回收逻辑

多数单机版自动回收依赖Mir200\Envir\Market_Def\QFunction-0.txt里的触发脚本,需修改循环或上线触发段来挂载回收逻辑。
- 用Notepad++打开QFunction-0.txt,搜索@Login、@PlayTimer、@AutoRun、@HourLoop等周期性触发标签,自动回收常在定时循环(如每秒或每3秒)里调用CheckTakeItem、Take、GiveGold等命令实现。
- 若脚本内有;AutoRecycle或;回收系统字样且前面带英文分号注释,删掉分号取消注释,确保#If #Act段完整生效,例如:
If

CheckItem 沃玛剑 1
Act

Take 沃玛剑 1
GiveGold 10000
Delay 1000
表示检测到背包有沃玛剑就回收1把给1万金币,延时1秒防卡死。
• 在[@PlayTimer]或[@AutoRun]段按格式批量补物品名与对应回馈数值,物品名必须和StdItems.DB内Name字段一字不差,错字会导致不回收。

- 若版本带高级回收变量如<$AutoRecyclePrice>,可在脚本读取自定义文本列表Mir200\Envir\AutoRecycleList.txt,该文件每行写物品名 单价 类型(0金币1元宝),脚本内用LoadList加载并循环比对背包执行回收。
• 改完QFunction-0.txt后在M2控制台点击重新加载脚本使改动即时生效,观察M2日志有无脚本语法报错(如缺#、中文符号)。

配置自动回收列表文件与物品映射

很多引擎将回收物品独立存放在文本列表中方便维护,避免反复改主脚本。
• 进入Mir200\Envir目录,查找AutoRecycle.txt、RecycleItem.txt、回收列表.txt等文件,不存在可按同名单建一个纯文本文件。

• 打开该列表,按“物品名 回收金币数 回收元宝数 是否极品回收”格式逐行填写,例如:

沃玛盔甲 5000 0 0
祖玛头盔 20000 0 0
金币袋 0 1 0
圣战戒指 50000 0 1
数值间用空格或制表符分隔,末尾别留空行,保存编码选ANSI。
• 回到QFunction-0.txt定时触发段,确认有LoadList AutoRecycle.txt到变量或数组的命令,以及循环检测背包物品并比对列表价格的代码段,若缺失可从同版本完整包提取对应段粘贴过来。

• 部分版本在Mir200\Envir\Shop文件夹也有回收NPC脚本(如回收使者),打开对应NPC的.txt脚本,检查#Act内Take与GiveGold逻辑是否完整,自动回收有时是隐藏NPC定时调用该脚本实现。

客户端界面开关与GM指令控制

自动回收常配有游戏内按钮或指令开关,需确保界面与权限打通。
• 进游戏创建或登录有GM权限的角色(在AdminList.txt已添加),输入@OpenAutoRecycle、@回收开关或@AutoSell测试能否弹出回收界面或提示已开启自动回收,不同引擎指令不同,可在M2命令管理查看。

• 检查客户端Data内是否有AutoRecycleBtn.pak界面资源,若补丁缺失会导致点不开开关但后端其实已在跑,需补全对应界面补丁。

• 在M2Server查看、列表信息、管理员命令中搜索回收相关指令,确认GM可用@SetAutoRecycle 1(开启)与@SetAutoRecycle 0(关闭)控制全局或单人,普通角色靠脚本变量如<$AutoRecycleOn>判断是否在界面勾选。

常见设置失效与排查处理

设完自动回收不工作多是列表、脚本、数据库或权限问题。
• 物品不回收:列表内物品名与数据库StdItems.DB内Name不一致(多空格、全角符号、大小写差异),用记事本严格对照改列表;物品设为绑定(Bind=1)且脚本未加允许回收绑定物判断,需在#If前加CheckBind 0或改数据库Bind=0。

- 不给金币元宝:GiveGold、GiveYuanBao命令拼错或引擎不支持该写法(部分用AddGold、AddGameGold),对照同版本脚本修正;全局禁止金币增加(M2参数设置里锁定经济系统),取消锁定。
- 脚本重载报错:QFunction-0.txt内回收段有中文括号、漏#If #Act、Delay写在#If里,逐行检查改英文半角并重载。
• 上线不自动跑:定时触发[@PlayTimer]被删或时间设太长(如60000毫秒才一次),改短为1000至3000毫秒;确认M2游戏速度检测没把循环判定为异常脚本而拦截,适当放宽速度参数。

- 改任何列表与脚本文件前备份原AutoRecycle.txt、QFunction-0.txt,一旦改崩可覆盖回滚,每次改完务必在M加载脚本或重启M2Server让新配置进内存。