故障现象与核心原因
照着视频架设传奇,登录器能打开、列表能读取,但点击“注册账号”无反应,或提示“创建账号失败”“请确认账号”。这并非账号格式错误,而是服务端注册功能未开启、登录器与网关不配套、或数据库无写入权限导致的通信阻断。
第一步:检查服务端注册开关(最高频)
多数单机版本为防止恶意注册,默认关闭了自动注册功能,需手动开启。
开启M2Server注册权限
1. 打开 M2Server 窗口(服务端主控)。
2. 点击菜单栏【选项】→【参数设置】→【环境设置】。
3. 找到 “禁止注册” 选项,确保勾选框为未勾选状态(即允许注册)。
4. 检查 “账号最小长度”(通常为4)和 “单IP注册数量”(改为0表示不限制)。
5. 点击【保存】,重启M2Server 使配置生效。
检查LoginSrv配置文件
进入服务端 LoginSrv 文件夹,打开 Logsrv.ini 或 !serverinfo.txt,查找 EnableRegister 或 AllowRegister 字段。若值为 0,修改为 1(允许注册),保存后重启 LoginSrv.exe。
第二步:登录器与网关配套性修复(最关键)
这是新手最易出错环节。登录器与LoginGate(登录网关)必须来自同一套引擎包,否则协议不匹配,点击注册会无任何反应。
覆盖配套网关文件
1. 找到你生成登录器时使用的登录器配置器文件夹。
2. 将该文件夹内生成的 LoginGate.exe 及配套DLL文件(如 LoginGate.dll)。
3. 复制并完整覆盖到服务端的 LoginGate 目录。
4. 重启服务端所有程序(先关LoginGate,再重新启动)。
验证网关通信状态
启动服务端后,确认 LoginGate.exe 窗口无报错,且显示监听端口(默认7000)。在登录器界面,服务器状态应显示为“良好”。若状态异常,说明IP或端口配置错误。
第三步:账号规则与输入格式
服务端对注册字符有严格校验,输入内容不符规则会被拦截。
修正账号密码格式
• 字符集:仅支持英文和数字。严禁使用中文、空格、特殊符号(如 @、#)。
- 长度限制:账号长度通常为 4-12位,密码为 6-16位。
• 保留词:避免使用 GM、Admin、Test 等可能被保留的词汇。
- 测试用例:使用纯英文新账号(如 test001)进行测试,排除“账号已存在”的干扰。
第四步:数据库连接与写入权限
注册的本质是将数据写入数据库(DBC2000/SQL),若连接失败或文件只读,会导致创建失败。
检查DBC2000路径(HERO/LEGEND引擎)
1. 打开 BDE Administrator(32位)。
2. 查看 HeroDB 的 Path 路径,必须指向服务端的 Mud2\DB 文件夹。
3. 路径中严禁包含中文(如 D:\传奇服务端\DB 是错误的,应改为 D:\MirServer\Mud2\DB)。
赋予文件夹写入权限
右键服务端根目录下的 DB 文件夹 → 属性 → 安全,确保当前用户拥有 “完全控制” 权限。若文件夹属性为“只读”,需取消勾选并应用到所有子文件夹。
第五步:端口占用与防火墙拦截
7000、7100等默认端口被占用,或杀毒软件拦截了注册请求。
端口占用排查
1. 打开CMD,输入命令 netstat -ano | findstr "7000"。
2. 若显示被占用(如酷狗、迅雷占用),需修改 LoginGate\Config.ini 中的端口号,或关闭占用软件。
3. 修改端口后,需同步修改登录器列表文件(ServerList.txt)中的端口号。
关闭安全软件拦截
360等杀毒软件极易误删 LoginSrv.exe 或 Account.db 文件。架设前临时关闭杀毒软件,并将服务端目录添加到信任列表。
快速自检流程
若仍无法解决,按此顺序逐一核对:
1. 换号测试:使用 test123(纯英文)尝试注册。
2. 覆盖网关:用配置器自带的LoginGate覆盖服务端文件。
3. 检查M2限制:确认M2参数中未开启“禁止注册”。
4. 查看日志:查看 LoginSrv 目录下的日志文件,根据具体报错定位问题。
按照“注册开关→网关配套→账号规则→数据库”的顺序排查,可解决90%的创建账号失败问题。

