读取列表失败通常由三个环节导致:列表文件缺失、路径配置错误或网络连接异常。首先确认客户端目录下是否存在完整的列表文件,包括Mir200Map!MapInfo.txt、Mir200Envir!Setup.txt和Login!ServerAddr.txt。若使用登录器,还需检查Login.ini或List.txt是否存在。
重点检查!ServerAddr.txt内容格式。该文件位于客户端Login目录,应包含一行有效地址,例如:
127.0.0.1 7100 传奇服务器
IP、端口、区名之间用空格分隔,不可使用逗号或制表符。若IP为公网地址,需确保端口已开放;若为本地测试,IP必须与服务端!AddrTable.txt中设置的一致。
部分版本依赖MapInfo.txt定义地图索引。打开客户端Map目录下的!MapInfo.txt,每行格式为“地图编号 地图文件名 地图名称”,例如:
0 D:MirServerMir200Map001.map 比奇城
若路径含中文或特殊符号,会导致加载中断。建议将路径简化为英文且不含空格,如“C:MirClientMap001.map”。
若使用配套登录器(如HeroLogin.exe),需验证其内置列表是否被覆盖。用资源工具(如eXeScope)打开登录器,查看字符串表中是否硬编码了错误IP。部分登录器会优先读取程序内地址而非外部txt文件,此时必须修改登录器本身。
服务端配置也会影响列表读取。确保LoginSrv正常运行且!AddrTable.txt中的端口与客户端请求端口一致。若M2Server未启动,客户端虽能读取列表但无法进入游戏,易误判为列表失败。
最后检查文件编码。用记事本打开所有.txt列表文件,另存为时选择“ANSI”编码。UTF-8或带BOM的编码会导致引擎解析失败,表现为列表空白或直接报错。
操作后重启客户端,若仍失败,用Process Monitor工具监控文件访问记录,查看是否因权限不足或路径错误导致文件未被加载。

