一、先确认:服务端是不是真的 “启动成功” 了?
很多时候列表为空,是服务端没启动或启动失败,先按版本检查:
1. 复古端(1.70-1.76,用 DBC2000)
看两个关键窗口:必须同时开启 “RunGate.exe(网关)” 和 “M2Server.exe(核心服务)”
网关窗口:需显示 “网关已启动”“监听端口 7000”(无红字报错);
M2 窗口:下方状态栏需有 “DBC 连接成功”“游戏服务运行中”,若显示 “DBC 连接失败” 或黑窗口一闪就没,先解决启动问题(后面会讲),别着急点登录器。
2. 新版端(1.80 及以上,用 SQL)
看两个黑窗口:“LoginSrv.exe(登录服务)” 和 “GameSrv.exe(游戏服务)”
登录服务窗口:需出现 “Login Server Start Success”;
游戏服务窗口:需出现 “Game Server Start Success”,且无 “端口占用”“数据库连接错误” 等红字,少一个窗口或有报错,列表都不会显示。
关键提醒:服务端程序最小化即可,别关闭!关闭任何一个,登录器都搜不到服务器。
二、核心排查:配置文件没改对,登录器读不到列表
配置文件是登录器与服务端的 “桥梁”,这步错了必出问题,按顺序查:
1. 先查服务端 “ServerList.ini”(决定列表是否生成)
打开路径:服务端文件夹→“Config” 文件夹→找到 “ServerList.ini”,用 Notepad++ 打开;
必改 3 个点:
① “ServerIP=xxx.xxx.xxx.xxx” 必须改成 “127.0.0.1”(本地单机 IP,填外网 IP 会导致列表空);
② “ServerName” 别留空,比如填 “我的传奇服”(没名字列表也不显示);
③ “Port=7000”(默认端口)别乱改,若改了,后续客户端也要同步改。
保存后重启服务端:改完配置必须关闭服务端所有程序,重新按 “网关 / 登录服务→核心服务” 顺序启动,否则配置不生效。
2. 再查客户端 “Login.ini”(决定登录器能否读到列表)
打开路径:传奇客户端文件夹→找到 “Login.ini”,用记事本打开;
重点核对 2 处:
① “LoginIP=xxx.xxx.xxx.xxx” 必须和服务端 “ServerList.ini” 的 “ServerIP” 一致,也就是 “127.0.0.1”;
② “LoginPort=7000” 必须和服务端 “Port” 一致,若服务端改了端口(比如 7001),这里也要改成 7001。
避坑:别用 “客户端自动更新”!很多新手点 “更新.exe” 后,“Login.ini” 会被重置回默认 IP,导致列表空,改完配置直接双击 “Mir.exe” 启动。
三、容易漏查:数据库没连好,服务端读不到服务器数据
服务端要靠数据库读取服务器列表信息,数据库没连对,列表也会空:
1. 复古端(DBC2000)
查 DBC 配置:打开 “BDE Administrator.exe”→选中之前建的 “Mir2” 数据库→看 “PATH” 参数是不是指向服务端 “DB” 文件夹(比如 “E:\Legend\Server\DB”);
若路径错:重新选服务端 “DB” 文件夹,点 “Object→Apply” 保存,再重启 M2 服务端;
若没建 “Mir2” 数据库:按之前架设步骤新建,关联 “DB” 文件夹,否则服务端没数据来源。
2. 新版端(SQL Server)
查 SQL 数据库:打开 “SQL Server Management Studio”→看 “数据库” 列表里有没有 “Mir200”(服务端对应的数据库);
若没有:重新附加服务端 “DB” 文件夹里的 “.mdf” 文件;
若有但显示 “置疑”:右键数据库→“任务→分离”,再重新附加,避免数据库损坏导致服务端读不到数据。
四、隐藏问题:客户端不匹配或登录器用错
别忽略 “客户端 / 登录器” 的问题,这也是列表空的常见诱因:
1. 客户端版本和服务端不匹配
比如:服务端是 1.76 复古端,却用了 1.80 客户端;或服务端是合击版,用了纯净复古客户端;
解决:重新下载和服务端同版本的纯净客户端(比如服务端 1.76,就下 “1.76 传奇纯净客户端”),再改 “Login.ini”,别混用版本。
2. 用了 “外网登录器” 而非 “单机登录器”
有些新手下载的登录器是 “外网专用”(需填外网 IP),单机用会搜不到列表;
解决:用客户端自带的 “Mir.exe” 登录(最稳妥),或下载 “单机通用登录器”,不用额外设置,直接读本地列表。
五、冷门原因:端口被占用或程序冲突
端口被其他软件占了,服务端没法 “发信号”,登录器也搜不到列表:
1. 查默认端口(7000、7100)是否被占用
打开 “任务管理器”→切到 “性能” 标签→点 “资源监视器”→切到 “网络”→“侦听端口”;
在 “本地端口” 里找 7000、7100:若显示 “已占用”,右键占用程序→“结束进程”;
若没法结束:打开服务端 “ServerList.ini”,把 “Port=7000” 改成 “7001”,同步改客户端 “Login.ini” 的 “LoginPort=7001”,再重启服务端。
2. 关闭杀毒软件或防火墙
有些杀毒软件会误判服务端程序为 “风险程序”,拦截端口或文件,导致列表空;
解决:临时关闭杀毒软件(或把服务端、客户端文件夹添加到 “信任区”),再重启服务端和登录器。
六、紧急排查小技巧:30 秒试出问题所在
若服务端启动后,登录器仍空:打开 “记事本”,输入 “telnet 127.0.0.1 7000”,保存为 “test.bat”,双击运行;
若弹出黑窗口:说明端口通,问题在配置文件或客户端;
若提示 “无法连接”:说明服务端没启动或端口被占,先解决服务端启动问题。
换个简单的 “一键端” 测试:若自己的服务端一直排查不出问题,可下载一个 “传奇单机一键端”(自带配置好的服务端和客户端),启动后看登录器有没有列表;
若一键端有列表:说明之前的服务端文件损坏或配置错,重新下载服务端;
若一键端也没列表:检查电脑是否缺 “VC++ 运行库”,安装后再试。
七、总结
自己架设传奇服务端后登录器列表为空,排查顺序要 “从简单到复杂”:先确认服务端是否启动成功→再查服务端和客户端的配置文件(IP、端口必须一致)→接着检查数据库连接(复古端 DBC、新版 SQL)→最后看客户端匹配和端口占用。多数时候问题出在 “配置文件没改对” 或 “服务端没启动”,按步骤查,10 分钟内基本能解决,不用急着重新架设。

