您当前的位置:首页 > 奇迹技术

奇迹1.03H服务器架设全教程

本文出处:网游动力作者:本站发布时间:2011-08-22阅读次数:

一、基础知识篇
要架设奇迹,首先我们需要知道一个完整的系统组成,搭好结构才能造房子不是

1、网络基础

2 网游分为服务端和客户端两大部分

两者通过IP地址互相访问,而且一般情况下我们关注的都是服务端的IP

客户端通过IP连接到服务端进行游戏,而服务端通过某种手段将客户端的账号与IP联系在一起,大致就是这么回事* X
在不同的情况下服务端使用的IP地址是不同的

比如单机情况,就是服务端和客户端在一台电脑上,那么显然两者的IP地址是相同的,所以之后在设置中需要填IP地址的地方都要相同并且是你自己本机的IP地址

如果不知道自己的IP,很简单在单机情况下IP地址只要填127.0.0.1或者127.0.0.2就行了,这两个IP是默认用来表示本机IP地址的4 
第二种情况,比如你和你的朋友在一个局域网内进行游戏,需要一台机器运行服务端,另外一台机器运行客户端,那么这时两者IP地址会不同,一般为192.168.1.X之类的,
第三种情况,外网,这个基本与第二种情况相同,但是要注意的是外网架设一般面临一个路由器的障碍,因为一般在家里有路由器的话,一台电脑将会同时拥有内网IP和外网IP,内网IP即为路由器分配给你的IP地址,就像以上第二种情况中192.168.1.X之类的,外网IP的话即为你对外访问网络时拥有的标示,想知道的话,直接百度“IP地址”就可以咯,所以当外网的计算机通过外网IP访问你的服务端时,面临着路由器能不能准确把数据传达到你这台内网的计算机上,这个问题比较复杂我也说不太清,想了解的话可以百度“端口映射”,当然如果不存在内外网IP的转换即大概等同于没有路由器直接访问外网的情况时,外网架设等同于局域网架设4 |+ U"

7 除了IP地址外,还有一个需要了解的就是“端口”的概念了,可以大致这样理解:一台电脑拥有一个IP地址,不过可以具备很多端口,每个端口对应一个应用程序,程序直接通过端口实现准确访问,比如奇迹的服务端里包含了“连接服务”、“战盟服务”等不同的程序,那么他们在同一台电脑上运行时,他们之间就是通过端口号来交流数据的


8 这部分就说说一个能正常运行的奇迹一共包含了哪些东西

挑简单的吧,先说客户端,比如我们玩宝湾奇迹,需要先下载一个官方的客户端,再下载一个宝湾专用的登录器,官方客户端自不必多说,包含了在本机运行奇迹需要使用的图像,声音等数据,而所谓的登录器,就是一个包含了服务端IP地址和端口的引导启动客户端的程序罢了,而SF一般使用的登录器,还包含了检测辅助工具,记录网卡地址等功能,要实现这些功能,当然也需要配合服务端的登录器服务端使用了

而在服务端的计算机方面,包含的东西就多了
首先是操作系统,就拿现在的1.03奇迹来说吧,据我所知目前只有win2000、winXP、win7 32位旗舰版能正常架设
第二是系统组件,包括C++环境支持组件啊,Net FrameWork啊,等等,具体哪些我也不清楚,只能说有时候碰到情况了也许往这上面找原因可能有收获& 
第三是数据库,简单的说玩家的账号啊,账号里的角色资料、装备等等都是储存在服务器的数据库里的,提取,储存数据的过程都是在数据库与奇迹服务端之间实现的,使用最多的数据库是SQL2000,而我个人一直都是用的绿色数据库的,关于数据库我想大家只要大概了解数据库的使用需要用户名和密码,一般用户名为sa,密码可以自行修改,具体教程可以自己网上搜,我们架设的时候只要正确安装数据库,导入奇迹使用的几个数据库模板,设置好密码就可以了

最后就是关键的奇迹服务端了,服务端包含了几个不同的应用程序:聊天服务、连接服务、积分服务等等,还有就是我们常说的游戏线,一线二线三线,这种叫GameServer简称GS吧就,其他的附加服务端比如前面所说的登录器服务端等等, 
除了这些把剩下的统统归为辅助工具吧,比如账号建立工具,GM工具,网站系统等,其实这些都是简易地把数据库的操作转化为间接的界面罢了,还有的就是方便更改游戏设置的工具,比如怪物代码啦,物品代码啦,这些一一对应起来都是比较庞大的数据。


二、实际架设篇

大致了解以后,我就以架设一个局域网的奇迹为例,一步一步讲一下需要做的事情
架设成功以后,将实现以下情况:

看到右下角的“修改密码”了么?恩,自己改了什么要记住啊,数据库用户名和密码,后面要用到的

第二步,导入奇迹服务端的空数据库
首先点击图01界面中的“新建库”,添加如下几个名字的数据库
MMuOnline
Ranking
MU2003_EVENT_DATA
Me_muonline
MuLog
LMuConnectLog
然后分别右键名字选择“恢复数据库”,如图02显示,给每个数据库导入他们的原始文件

 我自己这里的貌似也不是很原始,下面把我用的绿色数据库和原始文件放上来,绿色数据库记得运行那个ODBC.reg,初始用户名sa密码111111
我一般都放在D:MuOnline 下面

由于服务端程序存放在电脑中的路径盘符也有讲究,为作统一规定我放上的压缩文件包,只包含一个文件夹,就是直接拖出来就能用的,然后所有服务端文件夹都放在D:MuOnline 下面,大致的结构如图03所示:

 

我想大概都能理解吧?不要再有神马文件夹放错路径的问题啦

5 第三步就是服务端主文件了,主要结构就如上图03所示!

基本上每个文件夹就是作为一个服务程序出现的)

1下面按顺序大致说下每个的作用和一些可以修改的基本设置:

1、DataServer与DataServer1是两个数据服务程序,他们负责服务端与数据库的连接与共享数据,不需要设置文件,但注意在运行的时候要加上参数
http://u.115.com/file/aq7ng5ji

所谓参数,我也说不清楚,还是放图比较好理解吧,如图04,55960 0表示该数据服务器使用55960端口作为0号数据服务器,DataServer1的参数就是使用55962端口作为1号数据服务器

2、ConnectServer:关键的一个,服务列表,就是说我们登录奇迹以后看到的几个区几条线啊,每条线的连接信息都是这个控制的,这个程序不需要参数. 
http://u.115.com/file/bhde7y0t3

看一下其中的KGCsConfig.ini的如下内容:

[KGSETTING]
对外服务端口
KGLISTenPort=44405
5
[KGSERVER0]
KGLIST0=0,127.0.0.2,55901
KGLIST1=1,127.0.0.2,55903
- C, D8 t4 E* s8 T9 t. PKGLIST2=2,127.0.0.2,559054
KGLIST3=3,127.0.0.2,55919

对外服务端口可以理解为客户端要访问的服务端端口
7 k# z9 l* @2 Z1 {重要的地方在这里
KGLIST0=0,127.0.0.2,55901
KGLIST1=1,127.0.0.2,55903
KGLIST2=2,127.0.0.2,55905
KGLIST3=3,127.0.0.2,55919

翻译过来就是1个区,4条线,4条线的IP均为127.0.0.2,使用的端口为55901-55919:

如果作为局域网使用的话,把4条线的IP都改为192.168.1.2即可

3、JoinServer:登录服务
4 http://u.115.com/file/e6k76fxk! ?* B) G/ j' Q

X玩家的登录验证等在这里进行,同时它也会记录玩家登录的IP与账号对应关系

设置文件vip.ini:
3 [DBServerInfo]
ODB_SERVER                = 127.0.0.1                ; SQL服务器地址(local)
UDB_Name                        = MuOnline                ; 数据库名
DB_user                        = sa                        ; 用户
DB_Password                = 111111                ; 密码

第一个IP地主无论单机外网都不用改,除非你这个程序单独放出来,别的不多做解释,这个程序的参数为/p55970 /ca127.0.0.1 /cp55557,也与端口IP有关,不特意的话都不需要改动

4、EventServer:事件服务,只有该文件夹下的DATA内的svconfig.ini可供修改:
hhttp://u.115.com/file/e6k7npah

[odbc_connection]
mu2003_dbname = MU2003_EVENT_DATA
mu2003_dsn = MU2003_EVENT_DB
mu2003_uid = MuOnlineAdmin
mu2003_pass = 1111115

我这里是这样的,问题不算很大,用处不多,这个程序无参数

6广场服务,估计是负责恶魔广场的记分?
http://u.115.com/file/e6k76bi

设置不需要多做改动,无参数
[odbc_setting]
dbname=Ranking: h4 
odbc_dsn=DEVILSQURE_RANKING
Jodbc_uid=MuOnlineAdmin& U6
odbc_pass=111111
odbc_con_count=40

ExDB:战盟服务,参数为127.0.0.1,没有设置
http://u.115.com/file/bhde7g5q2

聊天服务,参数为127.0.0.1,没有设置
http://u.115.com/file/clq2hjbx

8、WZItemShopServer:游戏内积分商店程序,参数为/p55821
http://u.115.com/file/aq7nn7w4
设置1为CashShopOption.ini,填IP数据库账号密码等
设置2为CashShopList.txt,设置积分商店的物品、价格、种类等等,后面会讲到

总结一下以上8条,在我们架设奇迹的过程中,运行数据库以后就要按以下顺序加上参数运行程序:
DataServerDataserver.exe 55960 0
GDataServer1Dataserver.exe 55962 1
ConnectServerConnect.exe
JoinServerJoinServer.exe
EventServerEventServer.exe
RankingServerRANKING.EXE
ExdbExdb.exe 127.0.0.1
WChatServerChatServer.exe 127.0.0.1
WZItemShopServerItemShop.exe /p55821

其中的参数相关IP无论单机外网都不需要改动,端口无特殊也不要随便更改%

有用的文件
1、KGCsConfig.ini用来设置主服务端IP,单机局域网外网设置其实就在这里$
2、CashShopList.txt用来设置积分商店出售的物品

Data文件夹里的内容我们不需要作改动,里面的文件可以理解为一条标准线的原始文件,放在那里即可,只要记住如果涉及到全服的设置就在里面相应的文件改一下就好了,下面也会提到的
http://u.115.com/file/dnhpzrpt

有人说这么多程序一个个启动过来不是很麻烦,那么下面这个压缩包里的程序就是所谓的“一键启动”啦,两个文件放在D:MuOnline下就行了,启动完数据库直接点这个就好
http://u.115.com/file/bhdee5uo