传奇单机架设过程中,“列表读取失败”是新手卡得最多的一步。登录器打开后空白无区服、提示“无法获取服务器列表”,服务端窗口明明都开着,就是连不上。这个问题九成以上不是引擎坏了,而是**列表地址配错、文件路径含中文、或者端口对不上**。下面把单机架设中最常遇到的几类问题拆开讲,每一条都对应具体的排查动作。
## 一、列表读取失败的核心原因
列表是登录器获取服务器信息的“桥梁”,里面写着IP、端口、服务器名称。单机环境下,这些参数必须和本机服务端完全一致。
### 列表IP必须用 127.0.0.1
单机架设最容易犯的错误,就是在列表里填了外网IP或者路由器IP。127.0.0.1 是本机回环地址,代表“本机访问本机”,数据不走网卡直接在电脑内部传输。外网IP是给外部玩家连接用的,本机用外网IP去连服务端,服务端反而认不出来。
打开登录器配置器或者列表文件(通常叫 list.txt 或 ServerList.txt),把所有IP字段统一改成 **127.0.0.1**。注意列表文件里可能有两个IP位置,一个对应开区,一个对应微端,两个都要改。
### 列表文件本身要能被读到
登录器读取列表有两种方式:读本地文件,或者读一个远程TXT地址(http://...)。如果你用的是远程列表地址,把那个地址复制到浏览器里打开,看看能不能正常显示文本内容。浏览器打不开,说明列表文件没上传成功,或者本地Web服务没启动。
单机最简单的做法是用服务端自带的“单机登录器”,这类登录器默认读取客户端根目录下的本地列表文件,不需要额外配Web服务。如果自定义登录器选了“读取网络列表”,但本地没有IIS或Nginx来承载那个TXT,列表自然读不到。
### 列表格式不能有中文符号
列表内容的格式是固定的,用英文竖线 `|` 分隔服务器名称、IP和端口:
```
我的单机服|127.0.0.1|7000
```
这里最容易踩的坑是用了**中文的竖线** `|`,或者名称和IP之间用了空格而不是竖线。登录器解析不了这种格式,直接报错。另外列表文件最好保存为 ANSI 编码,部分老登录器不认 UTF-8。
## 二、路径和版本不匹配
### 所有路径必须全英文
服务端和客户端的存放路径里,不能出现中文或特殊符号。比如放在 `D:\我的游戏\传奇单机` 下面,引擎大概率闪退或者读不到文件。标准做法是放在 `D:\MirServer` 或者 `D:\MirSingle\Client` 这种纯英文路径下。桌面路径也不行,因为“桌面”两个字是中文的。
### 服务端和客户端版本要对应
你下的服务端是 1.76 版本,客户端也要用 1.76 的纯净客户端。用 1.85 的客户端去连 1.76 的服务端,会出现地图缺失、装备显示空白、甚至登录器根本读不到列表的情况。网络服之所以随便下个登录器就能玩,是因为登录器会自动补齐版本差异的补丁,单机没有这个自动适配环节,版本对应必须手动保证。
## 三、端口和进程问题
### 端口必须一致
列表文件里写的端口,必须和服务端登录网关的端口一样。GOM 和 GEE 引擎默认是 **7000**,有些版本会改成 7100 或别的数字。去服务端的配置向导或者 LoginGate 配置文件里确认实际端口,再同步改列表文件。
### 服务端启动顺序不能乱
传奇服务端由多个程序组成,启动是有顺序的:先 DBServer,再 LoginSrv,最后 M2Server。顺序乱了或者中间有程序闪退,登录器就算读到了列表,也连不上后面的游戏网关。启动完成后检查一下各个黑色窗口是不是都在正常运行,M2Server 有没有报红色错误。
### 防火墙和杀毒软件拦截
Windows 防火墙有时候会把登录器的联网请求拦掉,杀毒软件也可能误删服务端的关键文件。架设的时候可以先把防火墙和实时防护暂时关掉,跑通了再重新打开。如果用的是 360 或电脑管家,把服务端整个文件夹加入信任区。
## 四、几个快速排查动作
遇到列表读取失败,按这个顺序过一遍,基本能定位到问题:
**第一步**,把列表文件里的IP全部改成 127.0.0.1,保存后重启登录器。
**第二步**,确认服务端和客户端文件夹路径没有任何中文。
**第三步**,检查列表格式:必须是 `名称|127.0.0.1|端口`,竖线是英文的,没有多余空格。
**第四步**,确认服务端全部窗口都正常启动,M2Server 没有闪退。
**第五步**,关掉防火墙和杀毒软件再试一次。
如果还是不行,换服务端自带的那个“单机登录器”试试,自带登录器通常已经配好了本地读取逻辑,比自定义生成的登录器省事。
传奇单机架设列表读取失败?单机架设经常遇到的问题分享
来源:
作者:
点击:

