在传奇私服服务端中,设置管理员(GM)上线自动传送至专用地图,主要通过修改登录脚本实现。核心思路是检测登录角色身份,若符合条件则执行传送命令。具体操作涉及QF脚本与GM名单文件的修改。
核心脚本指令解析
实现该功能的核心脚本命令如下:
#IF
ISADMIN
#ACT
SETRANKLEVELNAME %s
CHANGEMODE 1 1
CHANGEMODE 2 1
CHANGEMODE 3 1
mapmove runmang
Break
• #IF:条件判断开始。
• ISADMIN:检测当前角色是否为管理员。此命令是关键,它依据服务端名单文件进行判定。
• #ACT:满足上方条件后,执行以下动作。
• SETRANKLEVELNAME %s:设置人物称号,%s通常为占位符,可自定义或保留。
• CHANGEMODE 1 1、CHANGEMODE 2 1、CHANGEMODE 3 1:开启角色模式。通常对应开启GM隐身模式、管理模式、无敌模式。数字“1”表示开启,具体模式顺序需根据引擎说明书确认。
• mapmove runmang:传送命令。runmang是目标地图的代码,需替换为服务端中实际的GM专用地图代码,例如“GM地图”、“G001”等。
• Break:中断脚本后续执行,防止与其他脚本冲突。
修改步骤与位置
1. 确认GM名单:首先,确保角色已正确添加至服务端的GM权限文件。通常位于 MirServer\Mir200\Envir\AdminList.txt 中,格式为“* 角色名”。必须确保角色名准确无误,区分大小写。
2. 修改登录脚本:登录脚本通常指 QManage.txt,路径为 MirServer\Mir200\Envir\MapQuest_def\QManage.txt。在脚本中找到角色登录触发的段落,通常以 [@Login] 或类似标签开头。
3. 写入脚本命令:在 [@Login] 段落下,添加上述完整脚本块。放置位置建议在设置基础属性(如等级、金币)之后。示例如下:
[@Login]
#IF
#ACT
... (其他登录初始化命令)
#IF
ISADMIN
#ACT
SETRANKLEVELNAME %s
CHANGEMODE 1 1
CHANGEMODE 2 1
CHANGEMODE 3 1
mapmove G001 // 此处“G001”需替换为你的GM地图实际代码
Break
#ELSEACT
... (非GM玩家的其他逻辑)
关键配置与注意事项
• 地图代码核对:mapmove 后的参数是核心,必须与 MirServer\Mir200\Envir\MapInfo.txt 中定义的GM专用地图代码完全一致。例如,地图定义行可能为 [G001 王者禁地],则代码为“G001”。传送坐标可省略,默认传送到该地图安全区。
• 引擎命令差异:不同引擎版本(如GOM、GEE、翎风等)的命令或参数可能有细微差别。CHANGEMODE 的具体效果应以所用引擎的说明书为准。ISADMIN 是通用命令,但部分引擎可能使用 CHECKPERMISSION 等。
• 脚本加载:修改并保存脚本文件后,必须在M2控制台上重新加载登录脚本(或重读所有NPC)方可生效,仅重启游戏无效。
• 权限生效验证:修改后,使用对应GM角色登录游戏,若设置正确,角色将立即被传送至指定地图,并通常获得特殊模式状态(如人物名字变色)。
通过以上步骤,管理员角色上线即可自动获得权限并进入专属地图,便于进行游戏管理。

