奇迹服务端连接原理

发布时间:2023年12月19日

首先让我们来分析一下MU服务器组的构造:MU服务端 一共包括8个启动文件 其中有2个数据服务器(DS),一个连接服务器(CS),一个登录服务器(JS),一个事件服务器,一个恶魔广场服务器,一个战盟服务器和一个游戏服务器(GS),一共是7种类型(2个DS算一种),包括我们必须要安装的核心部分(SQLSERVER) 一共是8个类型。

1.SQLserver
首先让我们看一下SQLserver,这个是服务器的核心部分,独立这一部分是很简单的工作,只要把相应的数据源指向你实际的SQL服务器。

2.DATESERVER(DS)
我们看一下启动1的快捷方式:D:\MuServer\DataServer1\Dataserver.exe 55960这个最后的55960就是DS所占用的端口用来和GS想连接至于如何连接的在后面的GS里面会有详细的说明。

3.CS
启动3的快捷方式里面没有什么,CS的对外端口,使用UE可以改这个大家都应该知道,CS的对内端口是55557,后面会有提及这个端口的用处。现在我们来分析一下CS目录里面的文件:Connectserverlist.dat,
DATA/Connectserverlist.dat,DATA/ServerList.dat这3个文件决定了 什么样的GS可以连接到你的CS里面 以及玩家通过你的CS连接到什么样的GS上,我们看一下格式。//Server List
0 "奇迹1-1" "192.168.0.1" 55901 "SHOW"
1 "奇迹1-2" "192.168.0.2" 55901 "SHOW"
20 "奇迹2-1" "192.168.0.3" 55901 "SHOW"
21 "奇迹2-1" "192.168.0.3" 55901 "SHOW"

这样的信息代表了
GS编号0 代号 奇迹1-1 可以连接到此CS中 连接后 此服务器显示为1服1线 玩家点选1-1后 进入游戏服务器192.168.0.1的55901端口
GS编号1 代号 奇迹1-2 可以连接到此CS中 连接后 此服务器显示为1服2线 玩家点选1-2后 进入游戏服务器192.168.0.2的55901端口
GS编号20 代号 奇迹2-1 可以连接到此CS中 连接后 此服务器显示为2服1线 玩家点选2-1后 进入游戏服务器192.168.0.3的55901端口
GS编号21 代号 奇迹2-2 可以连接到此CS中 连接后 此服务器显示为2服2线 玩家点选2-2后 进入游戏服务器192.168.0.4的55901端口
注意 2服的编号为20开始 同样 3服为40开始 而代号则表示了GS的身份区分 只有代号符合的GS 才能连接入指定的CS中 此时CS上会显示相应的

服务器出现 而后面一部分的IP和端口 为指定GS的IP 和所占端口 (此处可用域名 但是不能超过15位 否则不能正常识别),这里有个好笑的现象就是当你的奇迹1-2的GS连接上CS后 CS虽然会显示出GS的存在(显示服务器1-1) 但是并不能直接识别GS的IP和端口。如果你指定的GSIP和端口有误则可能出现无法连接或者指向了其他的GS的情况 (这也就是为什么有的私发服一点服务器1-1就断开的原因 同样也是双线共享地图的原因)。

4.JS
我们看一下JS的启动快捷方式(快捷方式4)
D:\MuServer\JoinServer\JoinServer.exe /p55970 /ca127.0.0.1 /cp55557我们看到了/p55970 代表了 JS所占用的端口,/ca127.0.0.1 代表JS所指向的CS的IP/cp55557 代表了JS所指向的CS的端口(前文提及CS的对内端口55557,后面还有一处会用到),这样 JS和CS之间的连接 我们就一目了然了,我们继续下面的分析。

5.最关键的GS说明
GS的快捷方式为D:\MuServer\GameServer\GameServer.exe 127.0.0.1 55970 127.0.0.1 55960 55901这里我们看到了127.0.0.1 55970 代表了此GS所指向的JS的IP和端口 (与JS的连接在此处设定)127.0.0.1 55960 代表了此GS所指向的DS的IP和端口 (与DS的连接在此处设定)最后一个55901 是GS所占用的端口 (前文CS中有所说明)。

文章来源:https://blog.csdn.net/zhengyang2001/article/details/135084602
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。