根本原因:传奇引擎登录脚本中缺失了"重新加载封号"的命令!每次小退重登,系统不会自动恢复转生封号,导致显示为空。
⚙️ 解决方案(三步永久修复)
第一步:添加封号保存变量(关键)
在转生脚本成功触发位置添加变量保存封号数据(以 GEE引擎 为例):
[@转生成功]
IF
检查转生条件...
ACT
记录转生等级到U变量(如:U99)
MOV U99 <$TURNLEVEL>
保存封号内容到S变量(如:S99)
MOV S99 【<$USERNAME>】★九转天尊★
设置封号并保存数据
SETRANKLEVELNAME <$STR(S99)>
SAVE ; ⚠️ 必须保存数据到数据库
✅ 作用:将封号内容永久存储在人物数据库字段中。
第二步:修改登录触发脚本(核心)
打开 QManage.txt(位于服务端路径:\Mir200\Envir\MapQuest_def)
添加以下代码:
[@Login] ; 角色登录触发
IF
CHECKVAR U99 > 0 ; 检查是否有转生等级
ACT
重新加载封号
SETRANKLEVELNAME <$STR(S99)>
SENDMSG 6 [系统]您的转生封号「<$STR(S99)>」已自动恢复!
📌 引擎差异:
- GOM引擎:使用全局变量读取
MOV S99 <$GLOBAL(封号变量)>
- V8引擎:使用自定义属性
SETRANKLEVELNAME <$CUSTOM(封号)>
第三步:配置变量保存(防丢关键)
在 Envir\Market_Def 文件夹中创建 SaveVar.txt,添加:
转生数据自动保存清单
U99
S99
💡 作用:系统自动持久化这些变量到数据库,小退/大退都不丢失。
🛠️ 完整转生脚本示例
[@Main]
<转生需5000元宝/@开始转生>
[@开始转生]
IF
CHECKGOLD 5000
CHECKLEVELEX > 80
ACT
TAKE 金币 5000
CALCVAR U99 + 1 ; 转生等级+1
SAVEVAR U99 转生等级 ; 保存变量
根据转生等级设置封号
IF
EQUAL U99 1
ACT
MOV S99 【<$USERNAME>】★一转修罗★
IF
EQUAL U99 2
ACT
MOV S99 【<$USERNAME>】★二转魔神★
统一设置封号并提示
ACT
SETRANKLEVELNAME <$STR(S99)>
SAVE
SENDMSG 0 【<USERNAME>】成功晋升<STR(S99)>!
⚡ 修复效果验证:
角色转生 → 显示金色封号
小退重登 → 自动恢复封号
服务器重启 → 封号永久保留
💎 注意事项:
变量选择建议
低占用变量:U10~U49(推荐)
字符变量:S0~S99
引擎路径差异
GEE/V8:Mir200\Envir\MapQuest_def\QManage.txt
GOM:MirServer\Mir200\Envir\MapQuest_def\QManage.txt
调试技巧
在脚本中添加调试命令:
SENDMSG 6 "当前封号:<$RANKLEVELNAME>"
---
按照以上步骤操作后,转生封号永久生效问题可彻底解决!如遇引擎兼容问题,可提供脚本引擎类型(如GEE/V8/GOM)进一步定制方案。
⚙️ 解决方案(三步永久修复)
第一步:添加封号保存变量(关键)
在转生脚本成功触发位置添加变量保存封号数据(以 GEE引擎 为例):
[@转生成功]
IF
检查转生条件...
ACT
记录转生等级到U变量(如:U99)
MOV U99 <$TURNLEVEL>
保存封号内容到S变量(如:S99)
MOV S99 【<$USERNAME>】★九转天尊★
设置封号并保存数据
SETRANKLEVELNAME <$STR(S99)>
SAVE ; ⚠️ 必须保存数据到数据库
✅ 作用:将封号内容永久存储在人物数据库字段中。
第二步:修改登录触发脚本(核心)
打开 QManage.txt(位于服务端路径:\Mir200\Envir\MapQuest_def)
添加以下代码:
[@Login] ; 角色登录触发
IF
CHECKVAR U99 > 0 ; 检查是否有转生等级
ACT
重新加载封号
SETRANKLEVELNAME <$STR(S99)>
SENDMSG 6 [系统]您的转生封号「<$STR(S99)>」已自动恢复!
📌 引擎差异:
- GOM引擎:使用全局变量读取
MOV S99 <$GLOBAL(封号变量)>
- V8引擎:使用自定义属性
SETRANKLEVELNAME <$CUSTOM(封号)>
第三步:配置变量保存(防丢关键)
在 Envir\Market_Def 文件夹中创建 SaveVar.txt,添加:
转生数据自动保存清单
U99
S99
💡 作用:系统自动持久化这些变量到数据库,小退/大退都不丢失。
🛠️ 完整转生脚本示例
[@Main]
<转生需5000元宝/@开始转生>
[@开始转生]
IF
CHECKGOLD 5000
CHECKLEVELEX > 80
ACT
TAKE 金币 5000
CALCVAR U99 + 1 ; 转生等级+1
SAVEVAR U99 转生等级 ; 保存变量
根据转生等级设置封号
IF
EQUAL U99 1
ACT
MOV S99 【<$USERNAME>】★一转修罗★
IF
EQUAL U99 2
ACT
MOV S99 【<$USERNAME>】★二转魔神★
统一设置封号并提示
ACT
SETRANKLEVELNAME <$STR(S99)>
SAVE
SENDMSG 0 【<USERNAME>】成功晋升<STR(S99)>!
⚡ 修复效果验证:
角色转生 → 显示金色封号
小退重登 → 自动恢复封号
服务器重启 → 封号永久保留
💎 注意事项:
变量选择建议
低占用变量:U10~U49(推荐)
字符变量:S0~S99
引擎路径差异
GEE/V8:Mir200\Envir\MapQuest_def\QManage.txt
GOM:MirServer\Mir200\Envir\MapQuest_def\QManage.txt
调试技巧
在脚本中添加调试命令:
SENDMSG 6 "当前封号:<$RANKLEVELNAME>"
---
按照以上步骤操作后,转生封号永久生效问题可彻底解决!如遇引擎兼容问题,可提供脚本引擎类型(如GEE/V8/GOM)进一步定制方案。

