一、紧急处理:3 步终止权限异常
1. 临时冻结异常权限
立即通过 M2 引擎操作:依次打开 “查看→列表信息→管理员列表”,删除所有非官方添加的角色名。同时在服务器后台执行 “ Legendserv clearadmin ” 指令,强制清空临时管理员缓存。
2. 批量重置玩家权限
进入 SQL Server 数据库,打开 “legend” 数据库中的 “Account” 表,找到 “AdminLevel” 字段,将所有玩家账号对应的数值修改为 “0”(普通玩家权限)。操作后执行 “update Account set AdminLevel=0 where AdminLevel=10” 语句确认批量修改结果。
3. 关闭非法命令通道
在服务端文件中搜索 “CHANGEPERMISSION”“CHANGEMODE” 两个命令关键词,删除或注释掉所有允许普通玩家调用的代码段。检查 “AdminList.txt” 文件,移除 “AddTextListEx .\AdminList.txt” 等自动写入管理员的代码。
二、根源排查:4 大常见错误成因
1. 版本文件自带漏洞
部分公开版本为方便测试,默认开启 “新建账号自动赋予 GM 权限” 功能。需重点检查 “config” 文件夹下的 “GameConfig.ini” 文件,查看是否存在 “AutoAdmin=1” 的异常配置项。
2. 数据库初始配置失误
导入 “database.sql” 文件时未修改默认参数,导致管理员权限字段初始值为 10。正常配置应在导入前将 “Account” 表的 “AdminLevel” 字段默认值设为 0。
3. 管理命令权限失控
在 M2 引擎的 “游戏命令→管理命令” 设置中,部分核心命令所需权限被设为 0(所有人可执行)。需逐一检查命令权限,将 “添加管理员”“修改权限” 等命令的所需权限改为 10。
4. 引擎与版本不兼容
使用的 M2 引擎版本与 1.76 核心文件不匹配,导致权限校验模块失效。建议选用标注 “支持 1.76 复古版” 的引擎,启动时确认显示 “Permission Module Loaded”。
三、长效预防:开服前必做 5 项检查
1. 版本预处理
解压服务端后先执行 3 项操作:删除 “Tools” 文件夹下的 “AutoGM.exe” 工具;搜索并替换所有 “AdminLevel=10” 为 “AdminLevel=0”;在 “M2Server.exe” 属性中设置 “以管理员身份运行”。
2. 权限阶梯设置
建立分级权限体系:GM 账号设为 10 级,运维账号设为 5 级(仅可执行维护指令),普通玩家设为 0 级。在 M2 引擎中配置 “管理命令” 权限门槛,确保关键操作需 10 级权限方可执行。
3. 开服前压力测试
创建 10 个测试账号,分别测试注册、登录、创建角色流程,检查数据库中 “AdminLevel” 字段是否保持 0 值。使用测试账号尝试输入 “@添加管理员” 等命令,确认系统返回 “权限不足” 提示。
4. 文件权限锁死
将 “AdminList.txt”“GameConfig.ini” 等核心配置文件设为 “只读” 属性,防止服务端自动修改。在服务器防火墙中设置规则,禁止外部 IP 访问数据库的 1433 端口。
5. 备用权限修复包
提前准备权限修复脚本:包含数据库字段重置语句、非法命令屏蔽代码、管理员列表清理工具,一旦出现异常可 3 分钟内完成修复。

