适用场景:定时删除指定玩家(如奖励名单内)的特定装备(如“城主之刃”),适用于GM管理或活动重置。
📝脚本实现步骤(基于传奇引擎环境)
🔧第一步:创建机器人定时任务
在MirServer\Mir200\Envir\Robot_def\AutoRunRobot.txt中添加定时触发指令:
AutoRunNPCRUNONDAY22:00@删除装备//每天22:00执行
📂第二步:编写执行脚本
在RobotManage.txt中新增以下内容:
[@删除装备]
IF
ACT
读取奖励名单中的玩家名(需提前将名单存入P0-P9变量或文本文件)
LoadVar奖励名单.txt..\QuestDiary\奖励名单.txt//假设名单存储路径
MovA00//初始化计数器
循环删除装备
[@@Loop]
GetListString..\QuestDiary\奖励名单.txt<$STR(A0)>S1//按行读取玩家名
EqualS1""//检测是否读完
Break//读完则跳出循环
Take<$STR(S1)>城主之刃1//删除该玩家的装备
SendMsg6[系统]玩家“<$STR(S1)>”的【城主之刃】已被系统回收!//提示信息
IncA01//计数器+1
Goto@@Loop//继续循环
⚠️关键配置说明(必看!)
玩家名单格式:
在MirServer\Mir200\Envir\QuestDiary\下创建奖励名单.txt,每行一个玩家名,例如:
战神吕布
法师诸葛亮
删除指令详解:
Take<玩家名><物品名><数量>:核心删除命令,需确保物品名与数据库一致(如“城主之刃”)。
若需检测装备改名,添加参数1(例如Take<$STR(S1)>城主之刃11)。
错误排查:
若删除失败,检查:
玩家是否在线(离线玩家无法操作)
物品名是否含空格或特殊符号
脚本路径是否正确(尤其注意大小写)
💡扩展优化建议
增加日志记录:在脚本末尾添加LogWrite..\logs\装备删除.log[<DATETIME>]已清理玩家:<STR(S1)>,便于追溯操作记录。
多装备支持:修改Take命令为循环删除多个装备(如城主之刃|荣耀战甲)。
安全验证:添加CheckOnline<$STR(S1)>检测玩家在线状态,避免误删。
✅实际效果演示
每天22:00,系统自动执行:
读取奖励名单.txt中的玩家名;
依次删除这些玩家的“城主之刃”;
全服提示:“玩家XXX的【城主之刃】已被系统回收!”。
提示:测试前务必在本地环境备份数据!完整脚本代码可参考[传奇脚本命令详解]和[机器人定时配置]。
如需动态名单(如从SQL读取),需结合#CALL调用外部子程序。
📝脚本实现步骤(基于传奇引擎环境)
🔧第一步:创建机器人定时任务
在MirServer\Mir200\Envir\Robot_def\AutoRunRobot.txt中添加定时触发指令:
AutoRunNPCRUNONDAY22:00@删除装备//每天22:00执行
📂第二步:编写执行脚本
在RobotManage.txt中新增以下内容:
[@删除装备]
IF
ACT
读取奖励名单中的玩家名(需提前将名单存入P0-P9变量或文本文件)
LoadVar奖励名单.txt..\QuestDiary\奖励名单.txt//假设名单存储路径
MovA00//初始化计数器
循环删除装备
[@@Loop]
GetListString..\QuestDiary\奖励名单.txt<$STR(A0)>S1//按行读取玩家名
EqualS1""//检测是否读完
Break//读完则跳出循环
Take<$STR(S1)>城主之刃1//删除该玩家的装备
SendMsg6[系统]玩家“<$STR(S1)>”的【城主之刃】已被系统回收!//提示信息
IncA01//计数器+1
Goto@@Loop//继续循环
⚠️关键配置说明(必看!)
玩家名单格式:
在MirServer\Mir200\Envir\QuestDiary\下创建奖励名单.txt,每行一个玩家名,例如:
战神吕布
法师诸葛亮
删除指令详解:
Take<玩家名><物品名><数量>:核心删除命令,需确保物品名与数据库一致(如“城主之刃”)。
若需检测装备改名,添加参数1(例如Take<$STR(S1)>城主之刃11)。
错误排查:
若删除失败,检查:
玩家是否在线(离线玩家无法操作)
物品名是否含空格或特殊符号
脚本路径是否正确(尤其注意大小写)
💡扩展优化建议
增加日志记录:在脚本末尾添加LogWrite..\logs\装备删除.log[<DATETIME>]已清理玩家:<STR(S1)>,便于追溯操作记录。
多装备支持:修改Take命令为循环删除多个装备(如城主之刃|荣耀战甲)。
安全验证:添加CheckOnline<$STR(S1)>检测玩家在线状态,避免误删。
✅实际效果演示
每天22:00,系统自动执行:
读取奖励名单.txt中的玩家名;
依次删除这些玩家的“城主之刃”;
全服提示:“玩家XXX的【城主之刃】已被系统回收!”。
提示:测试前务必在本地环境备份数据!完整脚本代码可参考[传奇脚本命令详解]和[机器人定时配置]。
如需动态名单(如从SQL读取),需结合#CALL调用外部子程序。

