当前位置 : 145z游戏站 | 热血传奇 | 技术教程 | 

传奇世界单机架设服务器与游戏网关反复失败重试根因排查修复全流程

热度:
“服务器和游戏网关总是失败重试”本质是服务端内部通信链路没打通:DBServer/LoginSrv/GameSrv(M2)/Gate之间握手失败,网关连不上主服务,就一直重试。单机环境按下面顺序逐项查,不用换端也能修好。

一、启动顺序错(最高频)
传奇世界服务端有严格依赖关系,顺序颠倒必然重试。正确顺序:
DBServer(数据库服务)→LoginSrv(登录认证)→LoginGate(登录网关)→GameSrv/M2Server(游戏主服务,等窗口显示“初始化完成/等待连接”)→GameGate/RunGate(游戏网关,最后起)
先开网关后开主服务,网关因找不到GameSrv会一直“连接超时/失败重试”。全部关掉,任务管理器结束残留的LoginGate.exe、GameGate.exe、RunGate.exe、M2Server.exe、DBServer.exe、LoginSrv.exe,再按上面顺序重起。

二、IP绑定不是127.0.0.1(单机架设致命点)
单机必须全链路用回环地址,混用公网IP、192.168.x.x会直接断链。改这几个地方:
•Mir200\!Setup.txt→ServerAddr/IP/BindIP=127.0.0.1

-LoginSrv\!addrtable.txt→格式:服务器名127.0.0.1127.0.0.1127.0.0.1:7100
•LoginGate/SelGate/GameGate/RunGate目录下的Gate.ini、MirGate.ini、Config.ini→ServerAddr/MapAddr/BindIP=127.0.0.1,端口和主服务对应(LoginSrv通常7000、GameSrv7100、Gate7200,以你引擎为准)

-游戏控制器(GameCenter)配置向导里“外网IP”填127.0.0.1,别留空也别填本机真实IP
改完保存,重启全部组件。

三、端口被占用(7000/7100/7200/5500等)
cmd执行:
netstat-ano|findstr"7000"
netstat-ano|findstr"7200"
看到LISTENING且PID不是服务端进程,就去任务管理器结束它。常见占用:迅雷、酷狗、QQ、Skype、IIS、SQLServer、虚拟机网卡。实在避不开就在!Setup.txt和对应Gate.ini里把端口改成7001/7201等未占用端口,登录器列表同步改。
注意:三合一网关(Login/Sel/Run合一)端口段不能重叠,重叠也会重试。

四、DBC2000/数据库没配好(传世端必查)
单机架设大多依赖DBC2000(BDEAdministrator):
-控制面板→BDEAdministrator→左侧必须有HeroDB(部分传世版叫Mir2DB/MudDB)
•右键HeroDB→Path指向服务端目录\Mud2\DB或Mir200\DB,路径纯英文无中文无空格(如D:\WolServer\Mud2\DB)

-DB文件夹取消“只读”,当前系统账户给完全控制权限
•StdItems.DB里不能有空行、物品编号不能断号

•若用SQLServer版:DBConfig.ini里IP=127.0.0.1、用户名sa、密码与安装时一致

DBServer窗口没显示“数据库服务已启动/等待连接”就是这里错。

五、防火墙/杀软拦截(假活真断)
Windows防火墙和360、电脑管家、Defender实时防护会静默删M2Server.exe、GameGate.exe或拦本地回环通信。处理:
-整个服务端目录加杀软白名单,或临时关实时防护
•防火墙高级设置→入站规则→允许DBServer.exe、LoginSrv.exe、M2Server.exe、LoginGate.exe、GameGate.exe、RunGate.exe通过专用+公用网络

-关掉测一次,能起就是墙的问题

六、路径、权限、运行库、文件损坏
•服务端放纯英文路径,如D:\WolServer,禁止“D:\传奇世界服务端”“D:\Mir(2)\”这种带中文/括号/空格的路径

-右键M2Server.exe、LoginSrv.exe、DBServer.exe→属性→兼容性→勾“以管理员身份运行”+“Windows7兼容模式”
•装VC++2015-2022x86/x64运行库合集、DirectX修复工具,缺MSVCR100.dll、MSVCP140.dll会闪退假活

-原始压缩包重新解压覆盖,确认LoginGate.exe、GameGate.exe、M2Server.exe、Mir200\Map、Mir200\Data都在且非空

七、网关配置参数和主服务对不上
打开GameGate.ini/RunGate.ini:
[Server]
MapAddr=127.0.0.1
MapPort=5100(必须和GameSrv的GatePort一致)
GroupID、ServerName和LoginSrv!addrtable.txt、!ServerInfo.txt里的标识完全一致。版本不匹配(如GSP主服务配Blue网关)也会无限重试。

八、日志定位(还不行就查这个)
•LoginGate\Log、RunGate\Log看“连接失败”“无法绑定端口”“拒绝访问”

•Mir200\Log\M2Server日志看是脚本错、地图缺失还是DB连接失败

-DBServer窗口看是否“LoginSrv已连接”,没连上先修LoginSrv→DB链路

单机回环环境照着这八步走:结束残留进程→纯英文路径+管理员兼容运行→DBC2000指向Mud2\DB→全配置改127.0.0.1→释放7000/7100/7200端口→关墙加白名单→按DBSrv→LoginSrv→LoginGate→GameSrv→GameGate顺序起→看日志收尾,失败重试必定消掉。
[顶部]