传奇单机架设列表读取失败从文件配置到网络排查全解

来源: 作者: 点击:
列表读取失败是单机架设过程中出现频率最高的问题,表现为登录器打开后提示“列表读取失败”“无法连接列表服务器”或列表空白,点击登录无响应。本质是登录器无法正常读取list.txt文件中的服务器信息,问题集中在列表文件本身、登录器配置、服务端状态和系统环境四大类。按以下顺序逐项排查即可解决。

### 列表文件本身的问题

列表文件的格式、命名、编码和内容任何一个环节出错都会导致读取失败。

格式要求。 不同引擎的列表格式不通用。GOM引擎的列表需要包含[Server]段标识,下面用0=测试一区|127.0.0.1|7000的格式。GEE引擎的格式是测试一区|127.0.0.1|7000|0|0,必须严格按“名称、IP、端口、微端端口、状态”的顺序填写,字段数不能缺。HERO引擎早期版本常用空格分隔而非竖线符号。务必参照服务端自带的列表示例来写,随意修改格式参数顺序会导致登录器无法识别。

命名要求。 列表文件必须命名为list.txt或GameList.txt,后缀必须是.txt。部分新手新建文本文档后系统自动隐藏了扩展名,实际文件变成了list.txt.txt,导致登录器找不到文件。在文件夹选项中打开“显示已知文件类型的扩展名”,确认后缀正确。

编码要求。 列表文件保存时必须使用ANSI编码,不能用UTF-8带BOM格式。用记事本打开列表文件后选择“另存为”,在编码选项中切换为ANSI。推荐用Notepad++编辑,通过“显示所有字符”功能检查文件末尾有无隐藏空格、表情符号或特殊字符。

内容要求。 单机架设的IP固定填127.0.0.1,不可填外网IP或局域网IP。端口必须与服务端网关端口一致,默认7000。游戏名称需与服务端引擎设置的游戏名称完全一致,名称不一致同样会导致读取失败。服务器名称中不能包含星号、&、<等特殊符号。每一行对应一个服务器,末尾不可留空行。

### 登录器配置与列表地址问题

确认列表文件无误后,检查登录器端的配置。

验证列表地址实际可访问性。 打开登录器配置器,复制填写的“主列表地址”,粘贴到浏览器地址栏访问。如果浏览器直接显示纯文本格式的列表内容,说明地址有效。如果显示404或无法访问,说明文件路径错误或服务器端有限制。部分服务器商要求域名必须备案才允许建站,不支持未备案域名或IP加端口的访问方式,这种情况需要把列表文件挪到另外的网站服务器,原服务器只保留游戏服务。

单机推荐使用本地列表。 单机架设不需要远程空间,把列表地址改为读取本地列表是最稳定的方案。在登录器配置器中清空“远程列表”和“备用列表”地址,勾选“本地列表”选项,或者直接将列表地址设置为本地文件的完整路径,例如“D:\LegendClient\list.txt”。部分登录器配置器支持将“列表读取方式”改为“读取本地列表”,重新生成登录器即可。

核对列表格式与引擎是否匹配。 不同引擎的登录器生成工具不通用,GOM引擎需选择GOM列表格式,GEE引擎需选择GEE列表格式。格式不匹配的表现是弹出提示后闪退或一直卡在读取界面。如果登录器生成工具没有格式选择项,可直接使用服务端自带的列表文件,打开服务端根目录下的登录器文件夹,找到list.txt复制到客户端根目录,再将登录器配置器中的列表地址指向该文件。

检查登录器配置器中的端口设置。 端口必须与服务端引擎配置向导中的登录网关端口一致。如果之前修改过服务端端口但未同步修改列表文件中的端口,端口不匹配会导致网关连接失败,间接引发列表读取失败。

### 服务端状态与启动顺序

列表读取的前提是服务端核心进程正常运行。DBServer、LoginSrv网关和M2Server引擎三个核心程序必须全部正常启动且无报错。如果LoginSrv网关未运行,登录器即使有列表也无法连接。

按正确顺序启动。 先启动DBServer和LoginSrv,确认网关显示正常运行,再启动M2Server引擎,查看状态栏是否显示启动成功、网关连接成功,无红色报错才算正常启动。

检查端口占用。 服务端默认使用7000端口作为登录网关端口,7200端口作为游戏网关端口。如果端口被其他程序占用,网关无法正常启动。在命令提示符中执行`netstat -ano | findstr "7000 7200"`,查看返回结果最后一列的PID,在任务管理器中结束对应进程。迅雷、酷狗、QQ等软件常占用7000附近的端口。

检查!setup.txt中的列表路径。 如果修改过服务端文件夹路径或更换过磁盘盘符,配置文件中的路径会失效。进入服务端Mir200目录,打开!setup.txt文件,查找CastleFile=一行,将其修改为`CastleFile=.\Castle\List.txt`,使用相对路径避免因盘符或文件夹名称变化导致路径失效。

### 引擎与登录器配套性

登录器与引擎版本不配套是列表读取失败的常见原因。不同引擎需搭配专属登录器,GOM引擎的登录器不能用于GEE引擎的服务端。

检查Key授权文件。 GOM引擎要求服务端Mir200目录和登录器配置器目录中必须存在匹配的Key.lic文件,缺失或版本不符会导致M2Server启动时报错,登录器无法读取列表。GEE引擎需使用密钥生成器生成ServerKey.dat,分别放入服务端Mir200和客户端根目录。

使用服务端自带的配套工具。 始终使用服务端压缩包内自带的登录器配置器,不要单独从网上下载其他版本的登录器生成工具。如果提示“登录器版本太老”,需复制登录器文件夹内的KEY授权文件覆盖到服务端Mir200目录下,重新配置登录器。

如果引擎版本较旧且列表文件中的服务器数量超过3个,可更换为GOM或GEE引擎的最新稳定版本,覆盖原有引擎文件后重新配置。

### 系统环境与网络拦截

即使列表地址在浏览器中可以正常访问,登录器仍然可能因为系统层面的拦截而读取失败。

关闭防火墙和杀毒软件。 Windows Defender或第三方杀毒软件可能拦截登录器的网络请求。临时关闭所有防护软件测试,把整个服务端目录加入杀毒软件白名单。同时关闭Windows防火墙的专用网络和公用网络防护。

清理登录器缓存。 删除客户端目录下的Cache文件夹、Config文件夹以及所有.ini配置文件,重新生成登录器。旧的缓存文件可能强制读取失效的历史列表路径。

检查系统时间。 部分老版本登录器有内置时间验证机制,系统时间不正确时会导致列表读取失败。把系统时区改为北京时区,关闭自动时间同步功能。

检查IE代理设置。 部分登录器通过IE代理设置读取网络配置,如果系统误开启了代理,会导致列表地址无法访问。打开Internet选项,在连接选项卡中检查局域网设置,取消所有代理勾选。

路径中不能有中文和空格。 服务端和客户端都统一放在根目录下的纯英文文件夹中,例如D:\MirServer和D:\LegendClient。超过六成的登录器生成失败案例与文件路径有关,路径中带有中文或特殊符号会导致生成器无法正确读取列表文件。

### 极速排查顺序

按以下顺序操作可以在最短时间内定位问题。第一步,用浏览器打开列表地址,确认能否正常访问。第二步,用Notepad++打开列表文件,确认格式与引擎匹配、编码为ANSI、内容无多余空格和隐藏字符。第三步,关闭杀毒软件和防火墙。第四步,确认服务端三个核心进程正常启动且无报错。第五步,核对登录器配置器中的引擎版本、端口、IP是否与服务端一致。第六步,删除客户端缓存文件夹,重新生成登录器。按此顺序排查,九成以上的列表读取失败问题可以在十分钟内解决。