单机传奇注册无反应及登录器列表获取失败的排查指南

来源: 作者: 点击:
注册按钮无反应通常由客户端与LoginSrv通信失败导致。首先确认LoginSrv.exe是否运行,其控制台窗口应显示“等待连接”或类似提示。若程序未启动或闪退,检查LoginSrv目录下是否存在!Setup.txt、!ServerInfo.txt和!AddrTable.txt三个核心配置文件。缺少任一文件将导致服务无法初始化。

第二步:核对登录器指向地址。部分登录器内置固定IP,若自行架设服务端但未修改登录器配置,客户端会尝试连接远程服务器而非本地。使用配套登录器,或通过资源工具解包查看其内部服务器地址是否为127.0.0.1:7000(默认端口)。若地址不符,需替换为匹配版本的登录器。

第三步:检查!ServerInfo.txt格式。该文件位于LoginSrv目录,内容形如:
热血传奇=127.0.0.1:7000
等号左侧为列表显示名称,右侧为M2Server监听地址。IP必须与M2Server的!Setup.txt中[Server]段的IP一致。若M2Server绑定0.0.0.0或局域网IP(如192.168.1.100),此处也需对应修改。文件编码必须为ANSI,UTF-8或带BOM格式会导致解析失败,表现为列表为空。

第四步:验证端口监听状态。默认情况下,LoginSrv监听7000端口,M2Server监听7100(游戏端口)和7200(DB通信端口)。在命令提示符执行:
netstat -ano | findstr :7000
若无LISTENING状态,说明LoginSrv未成功启动。检查是否被防火墙拦截,或端口被其他程序占用。可临时关闭防火墙测试,或更换端口并同步修改所有配置文件。

第五步:注册功能依赖Account.ini或数据库。早期版本使用Account目录下的.ini文件存储账号,新版本多用Access数据库(如ID.DB)。若注册无反应,检查LoginSrv是否有写入权限。右键MirServer文件夹 → 属性 → 安全 → 赋予当前用户“完全控制”权限。无写入权限时,注册请求被静默丢弃,无任何提示。

第六步:客户端补丁缺失导致界面失效。若登录器界面按钮点击无响应,可能是D:Mir200目录缺少关键WIL资源文件,如Login.wil、Button.wil。使用PlugPak工具解包官方补丁,确保界面元素完整。部分修改版登录器需特定版本资源支持,否则事件绑定失效。

第七步:Hosts或代理干扰本地回环。某些系统因Hosts文件重定向或启用代理,导致127.0.0.1请求被转发。执行ping 127.0.0.1,若返回非本机响应或延迟异常,检查网络设置。临时禁用所有虚拟网卡(如VMware、Hyper-V适配器)可排除干扰。

第八步:日志定位问题根源。LoginSrv正常运行时会在Log目录生成Login.log。点击注册后,若日志无新增记录,说明客户端未连上LoginSrv;若有“Recv Register Packet”但无后续写入,检查Account目录是否被锁定或磁盘空间不足。

综合测试方法:在同一台机器上,先用telnet 127.0.0.1 7000测试端口连通性。若连接成功,再用配套登录器尝试注册。若仍失败,替换为原始未修改的服务端与登录器组合,逐步还原自定义内容以定位冲突点。