传奇个人变量清零指南:文档放置与命令执行问题解答

来源: 作者: 点击:
一、先明确:QManage.txt 与 RobotManage.txt 的核心功能差异
在传奇私人服务器脚本体系中,两个文档的定位完全不同,直接决定变量清零的可行性:
QManage.txt:主要负责 “任务触发型逻辑”,如玩家接取 / 完成任务、NPC 对话触发事件、地图进入判定等,支持全局变量(如 [100] 类)和任务关联变量的操作,不默认支持机器人脚本专属的局部变量(如 I90 类)。
RobotManage.txt:核心管控 “机器人定时 / 循环脚本”,如定时刷怪、自动发放奖励、全局定时变量清零等,既支持全局变量,也原生支持机器人局部变量(I 开头、N 开头等),是定时任务的主要配置文档。
二、4 个核心问题的针对性解答
1. set [100] 0 必须放在 QManage.txt 里清零吗?
结论:不是必须,关键看清零触发场景
若清零需求与 “任务相关”(如玩家完成某任务后,清空 [100] 变量记录的任务进度),则需放在 QManage.txt,搭配任务触发命令(如 “@TaskFinish” 后执行 set [100] 0);
若清零需求是 “定时全局清零”(如每天凌晨 3 点清空全服玩家的 [100] 变量),则更适合放在 RobotManage.txt,通过机器人定时脚本触发,无需依赖 QManage.txt。
核心逻辑:[100] 属于 “全局变量”,两个文档均支持其赋值操作,放置位置由 “触发条件” 决定,而非变量本身强制绑定。
2. mov I90 0 必须放在 RobotManage.txt 里清零吗?
结论:默认建议放 RobotManage.txt,QManage.txt 多数情况不支持
I90 属于 “机器人局部变量”(私人服务器脚本中 I/N/X 开头常为机器人专属变量),RobotManage.txt 是其原生支持文档,直接写 “mov I90 0” 即可被机器人脚本识别,定时执行无压力;
若强行放在 QManage.txt,多数私人服务器引擎(如 HERO)会因 “变量类型不匹配” 导致脚本报错,I90 变量无法被识别,清零命令不执行(少数定制引擎可能支持,但属于非通用情况)。
实操建议:I90 类机器人变量清零,优先放在 RobotManage.txt,避免因文档不兼容导致失效。
3. set [100] 0 放 RobotManage.txt,或 mov I90 0 放 QManage.txt,行吗?会执行吗?
分情况判断,执行结果差异明显:
情况 1:set [100] 0 放在 RobotManage.txt
可行,会执行:[100] 是全局变量,RobotManage.txt 支持其赋值操作,需搭配定时触发条件(如机器人脚本中添加 “Time = 03:00”,表示每天凌晨 3 点执行 “set [100] 0”),保存后重启机器人服务即可生效;
示例脚本格式(RobotManage.txt 中):
[Robot定时清零]
Time = 03:00
Action = set [100] 0
Remark = 每天凌晨3点清空全服[100]变量

情况 2:mov I90 0 放在 QManage.txt
多数情况不可行,不会执行:QManage.txt 不默认加载机器人局部变量解析模块,写入 “mov I90 0” 后,脚本会判定为 “无效命令”,既不报错也不执行;
特殊例外:若私人服务器已安装 “QManage - 机器人变量互通插件”,则可能执行,但这类插件属于小众定制,非私人服务器标配,不建议依赖。
4. set [100] 0 在 RobotManage.txt 清零,用 “GMEXECUTE StartQuest set [100] 0” 命令行吗?
结论:命令格式冗余,无需用 GMEXECUTE,直接写 set 命令更可靠
先明确命令作用:“GMEXECUTE StartQuest” 是 “调用 GM 权限启动某个任务” 的命令,通常用于触发 QManage.txt 中的任务脚本(如 “GMEXECUTE StartQuest 101” 启动 ID 为 101 的任务);
错误原因:在 RobotManage.txt 中,无需通过 “启动任务” 的方式执行全局变量清零,直接写 “set [100] 0” 即可被机器人脚本识别,添加 “GMEXECUTE StartQuest” 反而会让脚本判定为 “命令格式错误”,导致清零失败;
正确写法(RobotManage.txt 中定时清零):
[全局变量定时清零]
Time = 00:00
Action = set [100] 0
Enable = 1 // 开启该定时任务

三、实操注意事项(避免清零失效)
引擎兼容性验证:不同私人服务器引擎(HERO、GOM、BLUE)对变量命令的支持有差异,写完脚本后,需在 “私人服务器后台 - 脚本测试” 功能中执行命令(如手动触发 RobotManage.txt 的定时任务),观察变量是否归零(可通过 “@checkvar [100]”“@checkvar I90” 命令在游戏内查看变量值);
定时任务启用状态:在 RobotManage.txt 中,所有定时脚本需添加 “Enable = 1”(启用),若写成 “Enable = 0”,即使命令正确也不会执行;
变量冲突规避:若 [100] 变量同时被 QManage.txt 的任务和 RobotManage.txt 的定时脚本操作,需确保清零时间避开任务执行高峰(如任务多在白天,定时清零放在凌晨),避免变量值被反复覆盖;
命令格式简化:全局变量清零无需复杂前缀,“set [变量名] 0”“mov [变量名] 0”(部分引擎支持)是通用格式,无需额外添加 GM 命令(如 GMEXECUTE),冗余命令反而易触发脚本错误。