一、先想清楚服务器放哪
你单机已经会做,说明MirServer目录、DBC/引擎、网关启动、登录器生成这套链路没问题。上服务器只多三件事:
1.机器环境:云主机(有固定公网IP)最省事;家里电脑当机子要处理公网IP+端口映射。
2.网络出口:云厂商安全组/路由器虚拟服务器,把游戏端口放出去。
3.配置口径:所有127.0.0.1换成服务器公网IP或0.0.0.0,列表走http地址。
云服务器配置参考:4核8G、SSD、Win2016/2019,5M带宽卸围联机够用,人多了再升带宽。
二、服务器系统初始化
买好WindowsServer后先干这几件:
1.远程桌面连进去,关掉自动更新重启打扰。
2.装VC++运行库合集(2005-2019),缺库会网关闪退。
3.杀毒把D:\MirServer加白名单,引擎驱动常被误删。
4.防火墙高级设置里先放开端口,别等起完服务再排错。
5.把单机那套MirServer整体打包传上去,解压到D:\MirServer,路径依旧纯英文无空格。
HERO端重配DBC2000:
BDEAdministrator建HeroDB,PATH指向D:\MirServer\Mud2\DB,保存后重启机器。GOM/GEE自带环境可跳过这步。
三、端口规划与放行
默认端口这组必须记住,改一个地方就要全链路改:
7000登录网关LoginGate
7100角色网关SelGate
7200游戏网关RunGate
8000微端(GOM用,不开微端可关)
云服务器控制台安全组(入方向):
协议TCP+UDP,端口7000-7300,来源0.0.0.0/0。
本机防火墙同样建入站规则放行7000-7300。
家里宽带方案:
路由器找“端口映射/虚拟服务器”,外部端口=内部端口,内部填本机内网IP(192.168.x.x),协议选ALL。公网IP用ipip.net查,动态IP接花生壳做域名解析。
四、服务端配置从127.0.0.1改成公网
先备份Mir200、LoginSrv、各网关ini。
1.Mir200\!Setup.txt
ServerIP=公网IP
GateAddr=0.0.0.0或内网IP
DBAddr=localhost不动
2.Mir200\!ServerTable.txt
格式:1内网IP7200公网IP7200
例:1192.168.1.107200123.123.123.1237200
这文件决定“选完角色进地图连哪”,只填内网IP必黑屏。
3.LoginSrv\!addrtable.txt
原:127.0.0.1127.0.0.1127.0.0.1:7100
改:内网IP公网IP公网IP:7100
4.LoginGate\Config.ini
监听地址0.0.0.0,对外IP填公网
5.SelGate/RunGate的ini
ServerAddr改公网IP,端口不变
6.DBServer、M2配置向导里
外网IP填公网,内网IP自动识别,动态IP模式一般不勾(有固定IP时)
注意:网关不能bind127.0.0.1,否则外网握手完马上断。
五、启动顺序别乱
GameCenter或手动起:
1.DBServer
2.LoginSrv
3.LoginGate(看7000监听)
4.SelGate(7100)
5.RunGate(7200)
6.M2Server
起完用cmd验证:
netstat-ano|findstr"700071007200"
看到0.0.0.0:7000LISTENING就行。
外网机telnet公网IP7200能通说明网络层OK。
六、远程列表与登录器重打
单机那个list.txt放本地不行了,外网要做“在线列表”。
列表文件内容(ANSI编码,别带BOM):
我的区名123.123.123.1237000
把list.txt传到一个能访问的地址,二选一:
•服务器上装IIS,绑http://公网IP/list.txt
•或用第三方列表空间/对象存储
浏览器直接打开这个地址,必须纯文本、无HTML、无空行。
登录器配置器:
主列表填http://公网IP/list.txt
微端关掉(没起UpdateServer就别勾)
PAK密码、资源顺序跟服务端补丁一致
引擎版本必须同款,GOM端不能套GEE登录器
生成login.exe,发给朋友,放在完整客户端根目录。
以后换IP只改线上list.txt,不用重新发登录器。
七、客户端补对齐
服务器上的补丁包(Data/Map/Resource/PAK)和登录器里配的资源要一一对应:
-PAK密码错:进游戏黑屏、装备白名
•地图缺:能选角色但进图卡加载
•补丁版本混用:NPC变“?”、界面缺图
本机测试时,先拿一台外地机器或手机热点电脑进,别只用服务器本机测。
八、数据与安全习惯
1.玩家数据在Mud2\DB或ACC/SQL里,每天冷备一次MirServer。
2.数据库端口(3306/1433)别放公网,只留游戏端口。
3.M2管理员列表只加你自己的角色名,等级10。
4.云主机改默认远程桌面端口,装个云锁或安全狗,防简单扫端口。
5.引擎控制台里关掉允许建多个角色外挂、开简单封包校验。
6.别挂收费、别发公开广告,个人怀旧联机,商用有侵权风险。
九、常见外网故障对照
能开登录器但区服空白
列表地址错/列表编码非ANSI/浏览器能开但登录器读不到(HTTPS要挂插件)
选区后卡“正在连接”
ServerTable或RunGate还写内网IP,全改公网
能登录黑屏能走路
微端没起,或PAK密码不对
角色进图直接断线
7200没放行UDP、RunGate没监听0.0.0.0
本地能进朋友进不去
安全组没配/路由器没映射/防火墙拦了
网关闪退
VC库缺、路径有中文、杀软删了dll
改完所有配置必须全停重起,改一半热加载不生效。
十、迁移最小闭环
本机单机端打包→传云服务器D盘→配DBC/运行库→改!Setup和ServerTable为公网IP→安全组放7000-7300→顺序起网关→挂http列表→同引擎登录器填公网列表→异地客户端进游戏。
这套跑通一次,后面加区只要复制MirServer改端口、加列表行就行。单机架设的能力平移到服务器上,难点不在引擎,而在IP口径统一和端口放行,哪一层还写127.0.0.1哪一层就不开门。
你单机已经会做,说明MirServer目录、DBC/引擎、网关启动、登录器生成这套链路没问题。上服务器只多三件事:
1.机器环境:云主机(有固定公网IP)最省事;家里电脑当机子要处理公网IP+端口映射。
2.网络出口:云厂商安全组/路由器虚拟服务器,把游戏端口放出去。
3.配置口径:所有127.0.0.1换成服务器公网IP或0.0.0.0,列表走http地址。
云服务器配置参考:4核8G、SSD、Win2016/2019,5M带宽卸围联机够用,人多了再升带宽。
二、服务器系统初始化
买好WindowsServer后先干这几件:
1.远程桌面连进去,关掉自动更新重启打扰。
2.装VC++运行库合集(2005-2019),缺库会网关闪退。
3.杀毒把D:\MirServer加白名单,引擎驱动常被误删。
4.防火墙高级设置里先放开端口,别等起完服务再排错。
5.把单机那套MirServer整体打包传上去,解压到D:\MirServer,路径依旧纯英文无空格。
HERO端重配DBC2000:
BDEAdministrator建HeroDB,PATH指向D:\MirServer\Mud2\DB,保存后重启机器。GOM/GEE自带环境可跳过这步。
三、端口规划与放行
默认端口这组必须记住,改一个地方就要全链路改:
7000登录网关LoginGate
7100角色网关SelGate
7200游戏网关RunGate
8000微端(GOM用,不开微端可关)
云服务器控制台安全组(入方向):
协议TCP+UDP,端口7000-7300,来源0.0.0.0/0。
本机防火墙同样建入站规则放行7000-7300。
家里宽带方案:
路由器找“端口映射/虚拟服务器”,外部端口=内部端口,内部填本机内网IP(192.168.x.x),协议选ALL。公网IP用ipip.net查,动态IP接花生壳做域名解析。
四、服务端配置从127.0.0.1改成公网
先备份Mir200、LoginSrv、各网关ini。
1.Mir200\!Setup.txt
ServerIP=公网IP
GateAddr=0.0.0.0或内网IP
DBAddr=localhost不动
2.Mir200\!ServerTable.txt
格式:1内网IP7200公网IP7200
例:1192.168.1.107200123.123.123.1237200
这文件决定“选完角色进地图连哪”,只填内网IP必黑屏。
3.LoginSrv\!addrtable.txt
原:127.0.0.1127.0.0.1127.0.0.1:7100
改:内网IP公网IP公网IP:7100
4.LoginGate\Config.ini
监听地址0.0.0.0,对外IP填公网
5.SelGate/RunGate的ini
ServerAddr改公网IP,端口不变
6.DBServer、M2配置向导里
外网IP填公网,内网IP自动识别,动态IP模式一般不勾(有固定IP时)
注意:网关不能bind127.0.0.1,否则外网握手完马上断。
五、启动顺序别乱
GameCenter或手动起:
1.DBServer
2.LoginSrv
3.LoginGate(看7000监听)
4.SelGate(7100)
5.RunGate(7200)
6.M2Server
起完用cmd验证:
netstat-ano|findstr"700071007200"
看到0.0.0.0:7000LISTENING就行。
外网机telnet公网IP7200能通说明网络层OK。
六、远程列表与登录器重打
单机那个list.txt放本地不行了,外网要做“在线列表”。
列表文件内容(ANSI编码,别带BOM):
我的区名123.123.123.1237000
把list.txt传到一个能访问的地址,二选一:
•服务器上装IIS,绑http://公网IP/list.txt
•或用第三方列表空间/对象存储
浏览器直接打开这个地址,必须纯文本、无HTML、无空行。
登录器配置器:
主列表填http://公网IP/list.txt
微端关掉(没起UpdateServer就别勾)
PAK密码、资源顺序跟服务端补丁一致
引擎版本必须同款,GOM端不能套GEE登录器
生成login.exe,发给朋友,放在完整客户端根目录。
以后换IP只改线上list.txt,不用重新发登录器。
七、客户端补对齐
服务器上的补丁包(Data/Map/Resource/PAK)和登录器里配的资源要一一对应:
-PAK密码错:进游戏黑屏、装备白名
•地图缺:能选角色但进图卡加载
•补丁版本混用:NPC变“?”、界面缺图
本机测试时,先拿一台外地机器或手机热点电脑进,别只用服务器本机测。
八、数据与安全习惯
1.玩家数据在Mud2\DB或ACC/SQL里,每天冷备一次MirServer。
2.数据库端口(3306/1433)别放公网,只留游戏端口。
3.M2管理员列表只加你自己的角色名,等级10。
4.云主机改默认远程桌面端口,装个云锁或安全狗,防简单扫端口。
5.引擎控制台里关掉允许建多个角色外挂、开简单封包校验。
6.别挂收费、别发公开广告,个人怀旧联机,商用有侵权风险。
九、常见外网故障对照
能开登录器但区服空白
列表地址错/列表编码非ANSI/浏览器能开但登录器读不到(HTTPS要挂插件)
选区后卡“正在连接”
ServerTable或RunGate还写内网IP,全改公网
能登录黑屏能走路
微端没起,或PAK密码不对
角色进图直接断线
7200没放行UDP、RunGate没监听0.0.0.0
本地能进朋友进不去
安全组没配/路由器没映射/防火墙拦了
网关闪退
VC库缺、路径有中文、杀软删了dll
改完所有配置必须全停重起,改一半热加载不生效。
十、迁移最小闭环
本机单机端打包→传云服务器D盘→配DBC/运行库→改!Setup和ServerTable为公网IP→安全组放7000-7300→顺序起网关→挂http列表→同引擎登录器填公网列表→异地客户端进游戏。
这套跑通一次,后面加区只要复制MirServer改端口、加列表行就行。单机架设的能力平移到服务器上,难点不在引擎,而在IP口径统一和端口放行,哪一层还写127.0.0.1哪一层就不开门。

