内网正常、外网能选人物但点开始黑屏,说明登录验证环节已经通了,问题出在进入游戏地图时的数据传输或资源加载环节。下面按影响优先级从高到低拆解排查步骤。
先查角色网关的IP和端口配置。能选人物说明登录网关正常,但角色网关负责人物进入游戏和地图数据传输,若它还绑着127.0.0.1或内网IP,外网用户点开始就会断连黑屏。找到服务端目录下的RunGate文件夹,打开Config.ini配置文件,把IP地址改成你的公网IP(百度搜IP就能看到)。同时检查登录网关LoginGate的Config.ini,确保IP也改成同一个公网IP。另外确认路由器或云服务器安全组里映射了角色网关端口,默认一般是7201,很多教程只映射了登录端口7200,漏掉了7201,这就是黑屏的直接原因之一。协议要同时开TCP和UDP。
再检查服务端核心配置文件的IP残留。单机时服务端默认填127.0.0.1或内网IP,切外网后需要把所有配置文件里的IP替换成公网IP。重点查LoginSrv文件夹里的!addrtable.txt,格式通常是“游戏名称公网IP公网IP公网IP:端口”。还有Mir200文件夹里的!Setup.txt,把ServerIP字段改成公网IP。改完所有配置后重启服务端所有网关程序。
接下来排查地图补丁和客户端文件问题。外网玩家用的客户端可能缺少你服务端里的地图文件,导致加载场景时黑屏。把服务端MirServer\Mir200\Map目录下的所有.map文件复制出来,发给外网玩家覆盖到他们客户端根目录的Map文件夹里。同时把服务端登录器文件夹里的NewopUI.Pak复制到客户端Data目录下,这个是游戏界面UI的基础补丁,缺了必黑屏。如果服务端版本有额外补丁文件夹,整个复制到客户端根目录覆盖。
还要看一下登录器配置是否适配外网。外网登录器列表文件里的IP必须指向公网IP和正确的端口号。如果是微端模式,确认微端服务程序正常运行,8000端口已映射。如果外网玩家用的是你内网测试时的旧登录器,直接重新生成一个登录器发给他们用。
最后扫一遍防火墙和端口占用。服务器Windows防火墙或云服务器安全组把游戏端口拦了也会出现这种情况,临时关闭防火墙或把LoginGate.exe、RunGate.exe、M2Server.exe加入允许列表测试一下。用netstat-ano命令检查映射的端口是否被其他程序占用了。如果公网IP是动态的且每次重启都变,可以用动态DNS绑个域名,避免反复改IP导致配置断裂。
先查角色网关的IP和端口配置。能选人物说明登录网关正常,但角色网关负责人物进入游戏和地图数据传输,若它还绑着127.0.0.1或内网IP,外网用户点开始就会断连黑屏。找到服务端目录下的RunGate文件夹,打开Config.ini配置文件,把IP地址改成你的公网IP(百度搜IP就能看到)。同时检查登录网关LoginGate的Config.ini,确保IP也改成同一个公网IP。另外确认路由器或云服务器安全组里映射了角色网关端口,默认一般是7201,很多教程只映射了登录端口7200,漏掉了7201,这就是黑屏的直接原因之一。协议要同时开TCP和UDP。
再检查服务端核心配置文件的IP残留。单机时服务端默认填127.0.0.1或内网IP,切外网后需要把所有配置文件里的IP替换成公网IP。重点查LoginSrv文件夹里的!addrtable.txt,格式通常是“游戏名称公网IP公网IP公网IP:端口”。还有Mir200文件夹里的!Setup.txt,把ServerIP字段改成公网IP。改完所有配置后重启服务端所有网关程序。
接下来排查地图补丁和客户端文件问题。外网玩家用的客户端可能缺少你服务端里的地图文件,导致加载场景时黑屏。把服务端MirServer\Mir200\Map目录下的所有.map文件复制出来,发给外网玩家覆盖到他们客户端根目录的Map文件夹里。同时把服务端登录器文件夹里的NewopUI.Pak复制到客户端Data目录下,这个是游戏界面UI的基础补丁,缺了必黑屏。如果服务端版本有额外补丁文件夹,整个复制到客户端根目录覆盖。
还要看一下登录器配置是否适配外网。外网登录器列表文件里的IP必须指向公网IP和正确的端口号。如果是微端模式,确认微端服务程序正常运行,8000端口已映射。如果外网玩家用的是你内网测试时的旧登录器,直接重新生成一个登录器发给他们用。
最后扫一遍防火墙和端口占用。服务器Windows防火墙或云服务器安全组把游戏端口拦了也会出现这种情况,临时关闭防火墙或把LoginGate.exe、RunGate.exe、M2Server.exe加入允许列表测试一下。用netstat-ano命令检查映射的端口是否被其他程序占用了。如果公网IP是动态的且每次重启都变,可以用动态DNS绑个域名,避免反复改IP导致配置断裂。

