一、服务端未完全启动:先看进程再进游戏
单机传奇必须启动全套服务进程,仅双击“M2Server.exe”是不够的。登录器读取列表依赖“登录网关(LoginGate/LoginSrv)”与“游戏网关(RunGate)”。
1. 检查任务管理器:按 Ctrl+Shift+Esc 打开任务管理器,查看是否存在 LoginGate.exe、RunGate.exe、M2Server.exe 三个核心进程。若缺少任一进程,登录器将无法获取列表。
2. 按顺序启动:关闭所有服务端窗口,重新运行启动脚本(如 启动游戏控制器.exe 或 Start.bat)。观察窗口是否全部正常打开,无闪退现象。若 DBServer(数据库)闪退,通常是路径含中文或DBC2000未正确配置。
3. 确认监听状态:等待 LoginGate 窗口显示“网关已启动,端口7000”类似提示,M2Server 显示“游戏初始化完成”后,再打开登录器。
二、IP与端口配置错误:单机必须用127.0.0.1
服务端配置了外网IP或域名,而单机环境无法解析,导致登录器找不到服务器。
1. 修改服务端配置:打开服务端 MirServer 目录下的配置文件:
◦ LoginSrv.ini:找到 ServerList= 或 ListAddr= 参数,将其值改为 127.0.0.1(本地回环地址)。
- !Setup.txt:检查 GameServerIP 和 LoginServerIP,确保均为 127.0.0.1。
2. 修正登录器列表:在登录器所在目录,找到 ServerList.txt 或 Login.ini 文件。用记事本打开,将服务器地址修改为 127.0.0.1,格式示例:单机测试服|127.0.0.1|7000。保存后重启登录器。
三、列表文件缺失与读取失败
部分登录器需要本地列表文件才能显示服务器名称,若文件丢失或格式错误,列表即为空白。
1. 创建列表文件:在登录器同目录下新建文本文档,重命名为 ServerList.txt。内容填写如下(注意使用英文竖线分隔):
单机传奇|127.0.0.1|7000
2. 编码格式修正:若列表文件含中文,保存时编码需选择 ANSI,而非 UTF-8,否则登录器可能无法识别中文服务器名。
3. 远程列表屏蔽:若登录器配置了远程列表地址(URL),而你的单机环境无法联网,它会一直显示“正在获取列表...”。需用配置器重新生成登录器,将“列表地址”改为读取本地文件(.\ServerList.txt)或直接填写 127.0.0.1。
四、系统环境拦截与兼容性
Windows防火墙或杀毒软件可能拦截了服务端的通信端口。
1. 关闭防火墙测试:临时关闭Windows防火墙及第三方杀毒软件,排除拦截可能性。若关闭后能获取列表,需在防火墙设置中允许 LoginGate.exe 和 M2Server.exe 通过。
2. 兼容模式运行:右键点击登录器,选择“属性” → “兼容性”,勾选“以兼容模式运行这个程序”(如Windows XP SP3),并勾选“以管理员身份运行”。部分老版本登录器在新系统下需要此设置。
3. 端口占用检查:若提示“端口被占用”,检查是否有其他传奇服务端正在运行,或修改 LoginGate.ini 中的 ListenPort 为其他未占用端口(如7001),并同步修改 ServerList.txt 中的端口号。
五、快速自测流程
1. 确认 LoginGate、M2Server 窗口已打开且无报错。
2. 检查 ServerList.txt 内容为 127.0.0.1,端口与服务端监听端口一致。
3. 关闭杀毒软件,以管理员身份运行登录器。
若仍无法解决,检查服务端 Mir200 目录下的 Log 日志文件,查看具体报错信息。

