要实现人物上线全服提示并显示转生次数,需修改服务端的登录脚本。该功能通过 QManage.txt 文件中的 [@Login] 段实现,利用 CHECKRENEWLEVEL 检测转生数据,配合 SENDMSG 发送公告。
一、 添加上线提示脚本
脚本路径通常为:MirServer\Mir200\Envir\MapQuest_def\QManage.txt
基础脚本示例(GOM/GEE引擎):
[@Login]
#IF
; 检测是否为真实玩家(排除假人)
CHECKLEVELEX > 0
#ACT
; 发送全服公告(参数1为广播范围,6代表全服)
SENDMSG 6 玩家【%s】踏破虚空降临本服,大家欢迎!
参数说明:
• %s:自动替换为上线玩家的角色名。
• SENDMSG 6:数字6通常代表全服广播(具体数值视引擎说明书而定,1为全服,7为当前地图等)。
- 修改后需在M2控制器使用 @ReloadManage 重载脚本,无需重启服务端。
二、 显示转生次数(XX转)的方法
要让提示显示“XX转”,需读取玩家的转生等级变量。转生数据通常存储在 <$REBORNNUM> 或通过 CHECKRENEWLEVEL 命令检测。
方法1:直接读取变量(推荐)
[@Login]
#IF
CHECKLEVELEX > 0
#ACT
; 假设转生次数存储在P变量或特定系统变量中
SENDMSG 6 大神【%s】·<$REBORNNUM>转·霸气上线,战力飙升!
注:若 <$REBORNNUM> 无效,需查看转生脚本中实际存储的变量名(如 P1)。
方法2:条件检测判断(兼容性强)
若无法直接读取变量,可用 #IF 分段检测转生等级:
[@Login]
; 检测0转玩家
#IF
CHECKRENEWLEVEL = 0
#ACT
SENDMSG 6 萌新【%s】初入玛法,请多关照!
BREAK
; 检测1转玩家
#IF
CHECKRENEWLEVEL = 1
#ACT
SENDMSG 6 一重天·【%s】完成一转轮回,重返战场!
BREAK
; 检测2转及以上
#IF
CHECKRENEWLEVEL > 1
#ACT
SENDMSG 6 至尊【%s】·<$REBORNNUM>转·君临天下!
BREAK
三、 常见问题排查
1. 提示不显示:检查 QManage.txt 路径是否正确,以及 [@Login] 段是否被其他脚本覆盖(如版本自带的功能冲突)。
2. 转生显示为0:确认你的版本转生系统使用的变量名。部分版本转生次数存储在自定义变量(如 P10),需先用 MOV 命令赋值,或修改为 SENDMSG 6 ...<$STR(P10)>...。
3. 刷屏太频繁:可在脚本开头加入延迟或条件限制,例如 #IF CHECKONLINE > 10(在线人数大于10才提示),避免新手村人满时刷屏。
四、 不同引擎差异
• GOM / GEE引擎:支持上述脚本语法,变量灵活。
• HERO / LEGEND引擎:转生检测命令可能为 CHECKRENEWLEVEL 或 CHECKREBORN,SENDMSG 参数略有不同(如 SENDMSG 1 为全服)。
- 3K引擎:部分老版本需在 !Setup.txt 中开启登录触发。
修改前务必备份原文件,测试时建议先用小号上线观察提示,确认无误后再应用至正式服。

