当前位置:首页 > 实操教程 > HGE引擎 > 正文内容

HGE引擎登录脚本命令详解 - QManage登录触发配置教程

M2GM2026-10-03HGE引擎50
摘要:HGE引擎登录脚本落点为Envir\MapQuest_def\QManage.txt,人物上线跑[@Login]、英雄上线跑[@HeroLogin]。本文对照帮助文档拆解段名、IsAdmin判断与SENDMSG参数,给出欢迎提示、新手礼包、英雄补状态三阶案例,说明@ReloadManage重载与不生效排查。…
[TOCM]

登录脚本是HGE引擎里人物一进游戏就自动跑一遍的专属脚本,写在Envir\MapQuest_def\QManage.txt里,专门在玩家登录瞬间执行欢迎提示、模式设置、新手礼包发放这类动作。

很多人以为欢迎语得靠每个NPC单独写一段,其实不对。把发消息、改攻击模式这类动作统一堆进登录段,玩家上线自动执行一次,不用挨个NPC点,这正是登录触发脚本存在的意义。

我最早搭本地测试版本时,把欢迎提示写进了普通NPC脚本,玩家点NPC才弹,小退重登后又得重新点,折腾半天才发现人物登录有专属文件和专属段名。下面把命令格式、参数、重载方法和踩过的坑逐个捋清楚。

登录脚本配置配图 - M2GM

命令格式详解

帮助文档给的功能说明很直接:即在人物进入游戏时自动执行的脚本,通过此脚本可对人物进行大量的功能控制。落点是Envir\MapQuest_def\目录下的QManage.txt文件,人物登录段用[@Login]标记,英雄登录段用[@HeroLogin]标记。

;脚本例子
[@Login]
#IF
 IsAdmin
#ACT
 CHANGEMODE 2 1
 CHANGEMODE 3 1
 SENDMSG 5 %s,欢迎进入游戏,当前模式为GM管理模式。

这段例子里,#IF后面跟IsAdmin判断是否为管理员,命中后#ACT依次执行CHANGEMODE开两种模式,再用SENDMSG 5在屏幕上弹出一句欢迎语。英雄进入游戏时另有一段:

[@HeroLogin]
#IF
#ACT
 SENDMSG 5 %s,欢迎你的英雄进入游戏。

命令名不区分大小写,写成@login也能识别,排查时重点看段名拼写和#IF、#ACT前后是否对齐,不要把大小写当成不触发的原因。

登录脚本命令内容示意图 - M2GM

参数拆解

登录脚本本身没有复杂的数值参数,核心是两个触发段名和段内调用的子命令。段名决定这一段在什么时机跑,段内的#IF条件决定动作是否执行,普通玩家通不过管理员判断时这段动作就自动跳过。

段名或命令 内容 释义 实操用法
[@Login] 人物登录触发段 人物进入游戏自动执行 放欢迎提示、状态设置、新手礼包
[@HeroLogin] 英雄登录触发段 英雄进入游戏自动执行 给英雄单独发欢迎语或补状态
IsAdmin 管理员判断 检测当前人物是否为GM 命中才开GM模式,普通玩家跳过
CHANGEMODE 2 1 切换人物模式 开启某种人物模式 2和3为模式编号,末尾1为开启
SENDMSG 5 发送系统消息 数字5指定消息类型 %s代表当前登录人物名

这里的%s是人物名字占位符,SENDMSG 5后面跟的文本里写%s,引擎会自动替换成当前玩家的名字,不用手动去查玩家昵称再拼句子。

避坑要点

第一个坑是把登录脚本写错文件。很多人把[@Login]段写进QFunction-0.txt或者某个NPC脚本里,结果上线完全不触发。人物登录段固定认Envir\MapQuest_def\QManage.txt这个文件,放错位置引擎根本读不到。

第二个坑是改完不重载。帮助文档明确写了:该脚本更改后不须重启M2,可用@ReloadManage命令重新加载该脚本。改完直接进游戏测,没生效多半是没敲这条重载命令,脚本重载这一步不能省。

第三个坑是[@Login]和[@HeroLogin]混着写。主体人物的动作必须放[@Login],英雄的动作必须放[@HeroLogin],把英雄欢迎语写进[@Login],英雄召唤出来时不会再跑一遍主体那段。

登录脚本实战配置示意图 - M2GM

实战配置

第一步:从零搭一个登录欢迎脚本,打开Envir\MapQuest_def\目录,确认里面已经有QManage.txt;

第二步在文件末尾另起一段,写上[@Login],下面跟#IF条件和#ACT动作;

第三步保存后在游戏里以GM身份敲@ReloadManage重载;

第四步小退再上线,看欢迎语和模式是否自动生效。

[@Login]
#IF
 IsAdmin
#ACT
 CHANGEMODE 2 1
 CHANGEMODE 3 1
 SENDMSG 5 %s,欢迎进入游戏,当前模式为GM管理模式。
#SAY
欢迎你回来,今天也要加油练级哦。

普通玩家的新手欢迎提示可以不加IsAdmin判断,把#IF那一行删掉,#ACT直接写SENDMSG 5 %s,欢迎来到新手乐园,这样所有玩家上线都能收到一句问候,不用跑任何NPC。

三阶拓展案例

初级案例:对照帮助文档的[@Login]骨架,只保留SENDMSG 5 %s,欢迎进入游戏,让每个玩家上线都弹一句问候。新手把这段复制过去把文本改改就能用,这是登录脚本最基础的用法。

中级案例:在[@Login]里加一段新手礼包发放。用变量判断玩家是不是首次登录,首次登录就GIVE一本技能书和一瓶金创药,再MOV一个标记变量防重复发。这样玩家第一次进游戏自动拿新手装备,不用专门跑NPC领取。

高阶案例:把[@HeroLogin]用起来做英雄上线补状态。玩家带着英雄上线时,[@HeroLogin]自动跑一段,给英雄补满血量魔法,再SENDMSG提示英雄已就位。再配合转生判断,转生玩家上线自动叠加攻魔道临时属性,把登录段做成一个上线状态初始化的总入口。

报错排查

登录脚本改了游戏里没反应

进游戏小退再上线仍然不触发,先检查QManage.txt的路径是不是Envir\MapQuest_def\下,文件名是不是QManage.txt一个字都不能差;再敲一次@ReloadManage确认重载成功。最常见原因就是改完忘了重载,或者把段名写到了别的脚本文件里。

登录段脚本报错红字提示

M2启动时如果QManage.txt里有语法错误,会在日志里报脚本错误行号。打开QManage.txt按行号定位,多半是#IF和#ACT没对齐、段名[@Login]后面少了中括号,或者SENDMSG文本里多了个特殊符号。改完再@ReloadManage重新加载。

英雄欢迎语不弹

英雄的动作必须写在[@HeroLogin]段里。如果只在[@Login]写了SENDMSG,英雄召唤上线时不会重复执行主体那段。把英雄欢迎语单独搬到[@HeroLogin]段,重载后再召唤英雄验证。

常见问题

1. QManage登录脚本改完要重启M2才生效吗?

不用重启M2。帮助文档明确说明该脚本更改后不须重启M2,在游戏里以GM身份输入@ReloadManage命令就能重新加载QManage.txt,脚本重载后小退再上线即可看到新效果,省掉反复重启本地服务端的时间。(本条问题整理自百度知道真实提问:服务端脚本改了游戏里面没变化2022-11)

2. 玩家上线自动发欢迎提示怎么写?

在Envir\MapQuest_def\QManage.txt里写[@Login]段,#ACT后加SENDMSG 5 %s,欢迎进入游戏。%s会自动替换成玩家名字,数字5是消息类型。不需要任何条件判断就去掉#IF行,这样所有玩家上线都收到新手欢迎提示。(本条问题整理自百度知道真实提问:QQ礼包脚本错误QManage2024-12)

3. 登录脚本和QFunction-0脚本有什么区别?

登录脚本QManage.txt管的是人物进入游戏那一刻自动执行的动作,上线跑一次;QFunction-0.txt管的是穿戴、拾取、喝药这类触发事件,是玩家在游戏过程中反复触发的。欢迎语、上线补状态放QManage,穿装备触发放QFunction,两段各司其职别放反。(本条问题整理自百度知道真实提问:QManage登录脚本报错2024-12)

4. 怎么让转生玩家上线自动加血加蓝?

在[@Login]段里先用CheckRenewLevel判断转生次数,命中转生等级后用ChangeModeEx之类的状态命令按转生重数叠加HP和MP临时属性。登录段每次上线都会重跑一遍,正好把这种需要持续生效的上线加成放在这里初始化,小退重登也不会丢。(本条问题整理自百度知道真实提问:登录脚本设置转生后血量蓝增加2009-08)

5. 英雄进游戏也要自动跑一段脚本怎么办?

用[@HeroLogin]段。帮助文档给出的标准写法是[@HeroLogin]下#IF留空、#ACT后写SENDMSG 5 %s,欢迎你的英雄进入游戏。主体人物登录跑[@Login],英雄登录跑[@HeroLogin],两段互不干扰,英雄相关的补状态、发提示都写在[@HeroLogin]里。

6. IsAdmin判断管理员模式怎么配合登录脚本用?

帮助文档的例子就是在[@Login]里#IF加IsAdmin,命中后#ACT执行CHANGEMODE 2 1和CHANGEMODE 3 1,再SENDMSG提示当前为GM管理模式。普通玩家通不过IsAdmin判断,这段GM模式动作只会对管理员生效,正好用来区分GM和普通玩家的上线待遇。

写在最后

登录脚本QManage.txt是玩家上线的第一个入口,把欢迎提示、GM模式、新手礼包、英雄初始化都收拢到[@Login]和[@HeroLogin]两段里,玩家一进游戏就自动跑完,不用再逐个NPC点。改完一定记得@ReloadManage重载,别动不动就重启本地服务端。

QManage.txt登录段相关案例已在本地HGE引擎环境逐项跑通;命令仅适配HGE引擎,部分其他引擎存在兼容可能性,跨引擎使用需要自行测试修改。本内容仅供单机本地学习调试、用于版本技术研究与功能测试。

扫描二维码推送至手机访问。

本文章M2GM发布,如需转载请注明出处。如有侵权请联系站长删除。

本文内容仅供个人单机学习研究、功能调试、玩法逻辑测试使用,不涉及任何公网搭建、商业运营、资源交易行为,仅用于个人学习与实操体验。

本文链接:https://www.m2gm.com/tech/hge/qmanage-login/

分享给朋友:

相关文章

HGE引擎多级脚本使用教程 - 英雄主体目标区分与参数配置方法

HGE引擎多级脚本使用教程 - 英雄主体目标区分与参数配置方法

本文针对多级脚本展开详细实操讲解,依托HGE引擎拆解H、M、N三类核心对象标识的用法,搭配入门、优化、定制三阶实操案例,附带完整避坑指南与报错修复方案,帮助零基础学习者快速掌握脚本目标精准判定技巧,轻松完成本地版本脚本调试与玩法定制。…

翎风引擎StopWeaponCurse脚本教程 - 武器诅咒提前中止设置方法

翎风引擎StopWeaponCurse脚本教程 - 武器诅咒提前中止设置方法

这是一篇翎风引擎StopWeaponCurse脚本实操教程,介绍该脚本中止武器诅咒的核心功能,讲解命令格式、参数含义,提供初高阶差异化案例,手把手教新手部署调试,修复常见报错问题。…

翎风引擎ShowCustomButton自定义UI按钮显示控制教程

翎风引擎ShowCustomButton自定义UI按钮显示控制教程

本文详解翎风引擎自定义UI按钮显示控制命令ShowCustomButton,覆盖命令格式、两个参数的状态值与编号含义、主界面背包新行会等24个界面段预留编号对照,以及QF中CustomButtonClick配合$CustomButtonID实现按钮点击触发的方法,并给出按钮不显示、QF不触发等问题的排查思路。…

物品双击触发脚本不生效?BLUE引擎双击触发配置

物品双击触发脚本不生效?BLUE引擎双击触发配置

物品双击触发脚本是BLUE引擎里让道具双击后自动执行脚本的配置,核心是物品数据库STDMODE填31、ANICOUNT填触发编号,再在QFUNCTION-0.TXT里写[@STDMODEFUNCX]段。本文按官方CHM文档整理参数对照与字段取位,给出绑定双击脚本的四步实操、开宝箱示例段和双击无反应的排查顺序。…

不允许宝石升级详解 - GOM引擎升级失败拦截配置

不允许宝石升级详解 - GOM引擎升级失败拦截配置

本文详解GOM引擎不允许宝石升级的脚本实现,引用帮助文档SetUpgradeFail命令格式与@ItemUpgrade执行说明,梳理宝石升级系统的触发顺序与失败后续段,给出官方示例、实战案例与脚本配置步骤,并整理设置误区与FAQ问答,实现金币门槛与指定装备禁升宝石,全文仅限本地环境学习调试。…

个人定时器命令详解 - GOM引擎定时脚本教程

个人定时器命令详解 - GOM引擎定时脚本教程

本文详解GOM引擎个人定时器用法,引用帮助文档命令格式行与SetOnTimer 0 20、QManage.txt里OnTimer段示例,说明定时器索引与定时间隔参数含义,给出定时脚本配置五步、故障排查与机器人定时对比,并整理FAQ问答,实现按索引循环定时触发喊话、扣资源与加经验,全文仅限本地环境学习调试。…

我调试996引擎杀怪名字检测踩过的3个坑

我调试996引擎杀怪名字检测踩过的3个坑

本文复盘996引擎检查人物杀死怪物名字的调试过程,包括CheckKillMonName命令格式、清除参数防重复机制,ONKILLMON地图参数与[@OnKillMob]段配置,一次奖励与任务统计案例,以及不触发、重复触发等报错排查,帮助新手完成杀怪检测与怪物名字判断配置。…

996引擎npc脚本跳转GOTO命令详解 - 标签段分支跳转配置教程

996引擎npc脚本跳转GOTO命令详解 - 标签段分支跳转配置教程

996引擎npc脚本跳转用GOTO、GOTOLABEL、RandomGoto、DELAYGOTO一组命令实现。GOTOLABEL按0到8模式触发小组行会地图范围人物并可带四个传递变量,RandomGoto按几率跳转且百分百字段要写在后面避免短路,DELAYGOTO按毫秒延时跳转并控制换地图是否删除。…