MapQuest_def

QManage.txt

登录与全局管理脚本文件,常用于登录触发、人物定时器、在线命令入口和全局管理逻辑。

文件作用

QManage.txt 是全局管理脚本文件。

当前项目中,这个文件位于:

Mir200\Envir\MapQuest_def\QManage.txt

这个文件常见承担下面几类职责:

  • 人物登录时执行初始化逻辑
  • 处理人物定时器标签
  • 提供部分在线命令或功能入口标签
  • 配合其他脚本文件做全局管理和状态初始化

如果玩家登录后初始化没有执行、定时器不触发、某些全局入口失效,通常都要先检查这里。

核心回调

当前已整理出的 QManage 核心回调包括下面这些:

标签常见用途
[@OnStart]服务器启动触发
[@OnStop]服务器停止触发
[@OnInit]服务器初始化触发,执行时机通常早于 [@Login]
[@Login]登录触发
[@Resume]离线登录触发

其他常见入口

除核心回调外,QManage.txt 里也常见下面这类入口:

  • [@OnTimer0] 到 [@OnTimer20]
  • [@Member]

这些标签不是每个项目都会全部使用,但它们也是 QManage.txt 中很常见的一组全局入口。

[@Login]

[@Login] 是登录触发入口,通常用于人物登录后的初始化处理。

这一段常见的处理内容包括:

  • 设置或清理标记
  • 加载硬盘变量
  • 调用其他脚本文件
  • 设置人物定时器
  • 处理登录提示和初始化消息

可以直接这样理解:

  • 玩家每次登录时,需要统一处理的逻辑,通常都会集中放在这里
  • 如果登录后某个系统没有初始化,优先先查 [@Login]

[@OnStart]

[@OnStart] 是服务器启动触发入口,常用于脚本启动后的初始化逻辑。

这一段常被用来做全局系统启动时的准备动作,也常见对其他脚本的 #CALL 调用。

如果某套全局系统启动后就应该立即准备好,但没有进入正确状态,可以先检查这里。

[@OnStop]

[@OnStop] 是服务器停止触发入口,通常用于服务器停止前的收尾处理。

如果某些全局状态、统计信息或清理逻辑需要在停服前执行,通常会放在这里。

[@OnInit]

[@OnInit] 是服务器初始化触发入口,通常用于服务器初始化阶段的触发逻辑。

这个入口的执行时机通常早于 [@Login],更适合放启动后就要准备好的全局初始化内容。

[@Resume]

[@Resume] 是离线登录触发入口,通常用于离线登录后的处理逻辑。

如果项目里区分正常登录和离线恢复登录,这类差异处理通常会放在这里。

[@OnTimerX]

人物定时器脚本位于 QManage.txt,对应标签格式为:

[@OnTimer0]
[@OnTimer1]
...
[@OnTimer20]

常见用法是先在脚本中启动定时器,再由 QManage.txt 中的对应标签接收触发。

例如:

#ACT
SetScTimer 0 20

如果定时器已经设置,但后续没有执行,优先检查两件事:

  1. 是否真的调用了 SetScTimer
  2. QManage.txt 中是否存在对应编号的 [@OnTimerX] 标签

[@Member]

QManage.txt 还可以提供 [@Member] 这类入口标签,用于承接部分在线命令弹出的对话或入口逻辑。

这类标签通常不是地图坐标触发,也不是 NPC 商人脚本,而是更接近“全局入口”。

与其他脚本文件的区别

这几个文件很容易混淆,可以直接这样理解:

  • QManage.txt:登录、定时器、全局入口
  • QFunction-0.txt:常规功能脚本入口
  • QMapEvent-0.txt:地图事件相关脚本入口
  • QChatMission-0.txt:聊天栏和任务导航相关脚本入口

如果问题出现在人物登录后、人物在线时或定时器周期内,优先看 QManage.txt;如果问题出现在地图事件或普通功能逻辑,再看对应脚本文件。

常见排查思路

如果 QManage.txt 相关逻辑不生效,可优先按下面顺序检查:

  1. 当前项目是否把 QManage.txt 放在 MapQuest_def 目录下
  2. 入口标签名是否写对,例如 [@Login]、[@OnTimer0]
  3. 是否有脚本通过 SetScTimer 等命令真正触发了对应入口
  4. #CALL 指向的外部脚本文件是否真实存在
  5. 登录初始化逻辑是否被前面的 BREAK、条件判断或地图判断提前截断

如果问题同时涉及地图任务或其他全局脚本联动,通常还要一起检查这些位置:

  • MapQuest_def
  • QFunction-0.txt
  • QMapEvent-0.txt

相关阅读