单机版和服务器版的最大区别在于网络可达性。单机版用127.0.0.1,只有你自己的电脑能连。服务器版需要暴露公网IP,让外部设备能通过这个IP访问你的服务器。你有服务器在手,说明硬件和带宽已经有了,下面从头捋一遍外网架设的完整步骤。
###第一步:服务端和数据库环境准备
先把服务端程序包准备好。市面上常见的引擎有GOM、GEE、HeroM2等,不同引擎的配置方式略有差异,但整体流程类似。把下载好的服务端解压到服务器硬盘的根目录下,路径不要带中文和空格,建议直接放在D:\MirServer这个目录。
接下来安装DBC2000数据库软件。这是老牌传奇引擎的标配,用于存储角色、物品、怪物等数据。安装完成后打开控制面板里的BDEAdministrator,在Databases下面新建一个数据库,重命名为HeroDB,右侧PATH路径指向服务端里的DB文件夹,也就是D:\MirServer\Mud2\DB。HeroDB这个名字是绝大多数引擎默认读取的数据库别名,不要改。
###第二步:引擎配置向导的IP设置
打开服务端根目录下的引擎控制器,通常是GameCenter.exe或者直接叫引擎控制器.exe。右键以管理员身份运行,避免权限问题导致配置保存失败。
点击配置向导,核心参数有这么几个:
-游戏服务端所在目录:自动识别,不用改
-游戏数据库名称:填HeroDB
-游戏服务器名称:随便写你想要的区名
-游戏服务器外网IP地址:填你服务器的公网IP
如果是云服务器,把动态IP那个勾取消掉,直接写死公网IP。如果是家用宽带做服务器,得先确认自己有公网IP,大部分家庭宽带已经拿不到独立公网IP了,这种场景需要配合内网穿透工具才能开外网。
###第三步:端口开放与防火墙配置
这是最容易卡住的一步。服务器外网能访问的前提是端口是开的。
默认需要开放的端口有这几个:登录端口7000、游戏端口7100、网关端口27015。如果你用的是云服务器,登录云服务商的后台控制台,找到安全组或防火墙设置,添加入方向规则放行这些端口。如果是自己托管物理服务器,就在服务器系统自带的防火墙里添加入站规则。
开放完之后可以用telnet命令测试一下端口通不通,比如在本地电脑上敲telnet你的公网IP7000,能通就说明端口放开了。
###第四步:启动服务端
配置好引擎和端口之后,回到引擎控制器,点击启动游戏服务器。正常启动后,你会看到好几个命令行窗口同时跑着,包括LoginSrv、DBServer、RunGate、M2Server这些。这些窗口一个都不能关,关了对应的服务就停了。
建议按顺序逐个启动,先看LoginSrv和DBServer有没有报错,再启动网关,最后启动M2Server。这样出了问题能快速定位是哪个模块没起来。
###第五步:登录器配置与客户端修改
服务端跑起来了,还得让客户端能找到你的服务器。
客户端里需要修改的IP地址是你的公网IP,端口是7000。修改方式取决于你用的登录器类型。如果是自带配置器的登录器,在生成登录器的时候把主列表和备用列表里的IP地址改成你的公网IP。列表文件的格式一般是:
[Server]
GroupCount=1
[Group1]
GroupName=网通区
ServerCount=1
[Group1.Server1]
ServerName=你的区名
ServerIP=你的公网IP
ServerPort=7000
如果是硬改客户端的传统方式,需要修改客户端根目录下的配置文件,把里面的IP地址替换成你的公网IP。
###补充:几个容易忽视的细节
服务端所在的文件夹路径不能有中文,包括盘符名和各级文件夹名,不然引擎启动会报错。服务器系统推荐WindowsServer2012或2016,安装好VisualC++运行库和.NETFramework4.5以上的版本。服务端和客户端的版本必须匹配,不然登录器连上去会提示版本不对。
###第一步:服务端和数据库环境准备
先把服务端程序包准备好。市面上常见的引擎有GOM、GEE、HeroM2等,不同引擎的配置方式略有差异,但整体流程类似。把下载好的服务端解压到服务器硬盘的根目录下,路径不要带中文和空格,建议直接放在D:\MirServer这个目录。
接下来安装DBC2000数据库软件。这是老牌传奇引擎的标配,用于存储角色、物品、怪物等数据。安装完成后打开控制面板里的BDEAdministrator,在Databases下面新建一个数据库,重命名为HeroDB,右侧PATH路径指向服务端里的DB文件夹,也就是D:\MirServer\Mud2\DB。HeroDB这个名字是绝大多数引擎默认读取的数据库别名,不要改。
###第二步:引擎配置向导的IP设置
打开服务端根目录下的引擎控制器,通常是GameCenter.exe或者直接叫引擎控制器.exe。右键以管理员身份运行,避免权限问题导致配置保存失败。
点击配置向导,核心参数有这么几个:
-游戏服务端所在目录:自动识别,不用改
-游戏数据库名称:填HeroDB
-游戏服务器名称:随便写你想要的区名
-游戏服务器外网IP地址:填你服务器的公网IP
如果是云服务器,把动态IP那个勾取消掉,直接写死公网IP。如果是家用宽带做服务器,得先确认自己有公网IP,大部分家庭宽带已经拿不到独立公网IP了,这种场景需要配合内网穿透工具才能开外网。
###第三步:端口开放与防火墙配置
这是最容易卡住的一步。服务器外网能访问的前提是端口是开的。
默认需要开放的端口有这几个:登录端口7000、游戏端口7100、网关端口27015。如果你用的是云服务器,登录云服务商的后台控制台,找到安全组或防火墙设置,添加入方向规则放行这些端口。如果是自己托管物理服务器,就在服务器系统自带的防火墙里添加入站规则。
开放完之后可以用telnet命令测试一下端口通不通,比如在本地电脑上敲telnet你的公网IP7000,能通就说明端口放开了。
###第四步:启动服务端
配置好引擎和端口之后,回到引擎控制器,点击启动游戏服务器。正常启动后,你会看到好几个命令行窗口同时跑着,包括LoginSrv、DBServer、RunGate、M2Server这些。这些窗口一个都不能关,关了对应的服务就停了。
建议按顺序逐个启动,先看LoginSrv和DBServer有没有报错,再启动网关,最后启动M2Server。这样出了问题能快速定位是哪个模块没起来。
###第五步:登录器配置与客户端修改
服务端跑起来了,还得让客户端能找到你的服务器。
客户端里需要修改的IP地址是你的公网IP,端口是7000。修改方式取决于你用的登录器类型。如果是自带配置器的登录器,在生成登录器的时候把主列表和备用列表里的IP地址改成你的公网IP。列表文件的格式一般是:
[Server]
GroupCount=1
[Group1]
GroupName=网通区
ServerCount=1
[Group1.Server1]
ServerName=你的区名
ServerIP=你的公网IP
ServerPort=7000
如果是硬改客户端的传统方式,需要修改客户端根目录下的配置文件,把里面的IP地址替换成你的公网IP。
###补充:几个容易忽视的细节
服务端所在的文件夹路径不能有中文,包括盘符名和各级文件夹名,不然引擎启动会报错。服务器系统推荐WindowsServer2012或2016,安装好VisualC++运行库和.NETFramework4.5以上的版本。服务端和客户端的版本必须匹配,不然登录器连上去会提示版本不对。

