不少人架设单机传奇时会碰到这样的问题:自己配置的登录器点开后,界面显示 “服务器列表为空” 或 “未检测到可用服务器”,明明在客户端里放了 ServerList.txt,却怎么都读不到。其实这类问题多和列表文件缺失、格式错误、登录器配置不当有关,本文就拆解开讲每步该怎么查、怎么改,全是实测能解决问题的方法,新手跟着做也能搞定。
一、最直接原因:列表文件缺失或放错路径,登录器找不到
登录器显示列表为空,80% 是因为客户端目录里没有 ServerList.txt(或 LoginList.txt),或文件放错了文件夹(比如放到 Data、Patch 子目录里),登录器按默认路径找不到文件。
(一)常见场景
打开登录器后,服务器列表区域空白,底部提示 “未找到服务器列表文件”;去客户端根目录(如 D:\LegendClient)翻找,没看到 ServerList.txt;或误把文件放到了 “D:\LegendClient\Data” 文件夹里,登录器根本没去这里找。
(二)解决步骤
确认列表文件的正确位置:
单机传奇登录器默认读取 “客户端根目录” 的列表文件,比如客户端装在 D:\LegendClient,ServerList.txt 就必须放在这个根目录里,不能放子文件夹(Data、Login、Patch 都不行);
若不知道客户端根目录在哪:右键登录器→“属性”→“打开文件所在位置”,弹出的文件夹就是根目录,所有配置文件都要放这里。
新建或找回列表文件:
若根目录里没有 ServerList.txt:右键根目录空白处→“新建”→“文本文档”→重命名为 “ServerList.txt”(注意:要删掉默认的 “.txt” 后缀,确保最终文件名是 “ServerList.txt”,不是 “ServerList.txt.txt”;若看不到后缀,打开文件夹顶部 “查看”→勾选 “文件扩展名”,就能看到并修改);
若之前有文件但弄丢了:去服务端 “Client” 或 “工具” 文件夹里找,多数单机服务端会自带示例列表文件(比如 “ServerList 示例.txt”),复制到客户端根目录,重命名为 “ServerList.txt” 即可。
验证文件是否被隐藏:
有些时候文件存在,但被系统设为 “隐藏”,肉眼看不到:打开客户端根目录→点击顶部 “查看”→勾选 “隐藏的项目”,若看到灰色的 ServerList.txt,右键该文件→“属性”→取消 “隐藏” 勾选→“确定”,再打开登录器看列表是否显示。
二、易忽略原因:列表文件格式错误,登录器读不出数据
列表文件存在且路径对,但格式错了(比如分隔符用错、缺参数、多空格),登录器解析时识别不出服务器信息,也会显示列表为空,尤其新手手动改文件时容易犯这个错。
(一)常见场景
客户端根目录有 ServerList.txt,打开文件看到 “我的单机服 127.0.0.1 7000”(用空格分隔),或 “我的单机服 | 127.0.0.1”(缺端口);登录器点开后仍显示列表为空,用 Notepad++ 打开文件,没看到标准的服务器配置格式。
(二)解决步骤
按标准格式写列表内容:
单机传奇列表文件的正确格式是 “服务器名称 | IP | 端口”,三者必须用英文半角 “|” 分隔,缺一不可,且不能有多余空格;
正确示例(单机专用):我的单机传奇|127.0.0.1|7000(IP 必须是 127.0.0.1,单机不用公网 IP;端口默认 7000,要和服务端 LoginSrv.cfg 里的 “ListenPort” 一致);
错误示例要避免:
用中文 “|” 分隔:我的单机传奇|127.0.0.1|7000(登录器不识别中文符号);
缺端口:我的单机传奇|127.0.0.1(登录器不知道连哪个端口);
多空格:我的单机传奇 | 127.0.0.1 | 7000(空格会被当成参数的一部分,解析失败)。
清理文件里的多余内容:
打开 ServerList.txt(用 Notepad++,别用系统记事本),删除所有空行、注释(比如 “# 这是我的服务器”“// 单机测试用”),只保留一行标准配置;
若想加多个测试服务器,每行写一个,格式一致,比如:
我的单机服1|127.0.0.1|7000
我的单机服2|127.0.0.1|7001
保存时注意:Notepad++ 顶部 “文件”→“保存”,别勾选 “添加 BOM”(部分老登录器会把 BOM 头当成错误内容,导致读空)。
用 “显所有字符” 查隐藏问题:
打开 Notepad++→点击顶部 “视图”→勾选 “显示所有字符”,查看文件里是否有 “・”(不可见空格)、“↵”(多余换行);
若看到行末尾有多个 “・”,用 Delete 键删干净,确保只有 “服务器名称 | IP | 端口” 和正常的换行符(每行末尾一个 “↵”),保存后重启登录器。
三、常踩坑原因:登录器没指向本地列表,读错来源
自己配置的登录器若没设置 “读取本地列表文件”,反而默认 “读取网络列表”(比如外网服的配置),单机环境下没网络列表可读,自然显示列表为空,这是新手配置登录器时的高频错误。
(一)常见场景
用登录器生成工具配置时,没改 “列表来源”;打开登录器后,底部提示 “正在获取网络列表…”,转圈后显示 “列表为空”;但客户端根目录的 ServerList.txt 格式完全正确。
(二)解决步骤
重新配置登录器:选 “本地列表”:
打开登录器生成工具(如 “传奇通用登录器生成器”“单机登录器制作工具”),找到 “列表设置” 或 “服务器设置” 选项;
把 “列表来源” 从 “网络列表”“HTTP 列表” 改成 “本地列表文件”,并指定列表文件路径为 “客户端根目录 \ServerList.txt”(或直接选 “自动查找本地列表”,工具会默认找根目录的 ServerList.txt);
其他配置保持默认(比如 “列表编码” 选 ANSI,单机登录器多兼容这个编码),点击 “生成登录器”,把新生成的登录器放到客户端根目录,覆盖旧登录器。
用服务端自带登录器测试(排除配置问题):
若自己配置的登录器仍有问题,先换服务端自带的登录器:去服务端 “Login” 或 “工具” 文件夹里,找带 “单机登录器”“默认登录器” 标识的 exe 文件(如 LegendLogin.exe);
把这个登录器复制到客户端根目录,双击打开 —— 服务端自带登录器默认读本地 ServerList.txt,若能显示服务器列表,说明是自己配置的登录器设置错了,按步骤 1 重新调整;
若自带登录器也显示列表为空,说明不是登录器问题,回到 “列表文件缺失 / 格式错” 步骤重新排查。
清除登录器缓存(避免旧配置干扰):
之前配置过其他列表(比如外网列表),登录器会缓存旧设置:右键登录器→“打开文件所在位置”,找到 “Cache” 或 “缓存” 文件夹,删除里面所有文件;
重启电脑(部分登录器缓存会存在系统临时文件夹),再打开新配置的登录器,看列表是否正常显示。
四、隐藏原因:服务端没启动或端口不匹配,列表无法关联
就算列表文件和登录器都对,若服务端没启动(尤其 LoginSrv 没开),或列表里的端口和服务端不一致,登录器会判定 “无可用服务器”,显示列表为空,这是容易被忽略的连锁问题。
(一)常见场景
列表文件格式对、登录器配置也对,但打开登录器仍显示列表为空;去服务端目录看,LoginSrv.exe 没启动,或 LoginSrv.cfg 里的 “ListenPort” 是 7001,列表里写的是 7000。
(二)解决步骤
按顺序启动服务端关键程序:
单机传奇服务端必须按 “数据库→DBServer→LoginSrv→GameSrv” 的顺序启动,少一步都不行,尤其 LoginSrv(登录服务)没启动,登录器找不到服务器:
① 启动数据库:打开 SQL Server Management Studio,确认能连接 sa 账号;
② 启动 DBServer:双击服务端目录里的 DBServer.exe,黑窗口显示 “数据库连接成功”;
③ 启动 LoginSrv:双击 LoginSrv.exe,窗口显示 “监听 7000 端口成功”(7000 是默认端口,若改了要记牢);
启动后别关这些黑窗口(最小化即可),再打开登录器,看列表是否显示服务器名称。
核对列表端口与服务端一致:
打开服务端 “Config” 文件夹→用 Notepad++ 打开 LoginSrv.cfg,找到 “ListenPort”(登录端口),比如 “ListenPort=7000”;
打开客户端 ServerList.txt,确认端口和 ListenPort 一致(比如列表里是 “|7000”,别写成 7001、7100);
若端口不一致,改列表文件:把列表里的端口改成 LoginSrv.cfg 里的 ListenPort,保存后重启登录器;或改服务端端口(新手建议改列表,更简单)。
检查端口是否被占用(避免服务端启动失败):
若 LoginSrv 启动时提示 “端口被占用”,登录器自然读不到列表:打开 TCPView 工具(服务端工具里一般有),搜索 “7000”(默认端口),找到占用端口的程序,右键 “结束进程”;
重启 LoginSrv,确保窗口显示 “监听端口成功”,再打开登录器测试列表。
五、预防列表为空的 4 个实用技巧
固定列表文件位置与格式:每次架设时,都把 ServerList.txt 放在客户端根目录,按 “服务器名 | 127.0.0.1|7000” 的格式写,别随意改路径、换分隔符;
先用自带登录器测试:配置自己的登录器前,先拿服务端自带的登录器试,能显示列表再用工具配置,避免白忙一场;
启动服务端再开登录器:养成 “先开服务端(尤其 LoginSrv)、再开登录器” 的习惯,避免服务端没启动导致列表为空;
备份正常的列表文件:当列表能正常显示时,复制 ServerList.txt 重命名为 “ServerList_bak.txt”,下次出问题直接替换,不用重新写。
六、总结:排查列表为空的核心逻辑
碰到登录器显示 “服务器列表为空”,按 “查列表文件(有没有、在不在根目录)→验文件格式(符号对不对、参数全不全)→看登录器配置(是不是读本地列表)→核服务端状态(登录取没启动、端口对不对) ” 的顺序来。单机传奇的列表问题多是基础配置错,不用慌,按步骤一步步查,基本都能解决,重点是别漏了 “文件路径” 和 “服务端启动” 这两个关键点。
架设单机传奇登录器列表为空解决攻略:实操技巧与排查方法
来源:
作者:
点击:

