具体配置:
mw!F{pw
3台PC,(以下简称0号机、1号机、2号机)
mw!F{pw
0号机 上安装 1、Logsrv(ID登录管理)2、LoginGate (客户端和Logsrv对接口) 3、SelChrGate (Logsrv通往DBSrv200的接口)4、RunGate(DBSrv200通往 M2server的接口)
mw!F{pw
为什么要在0号机上放这么多呢??因为第一 这样可以免掉 端口映射了啊!7000 7100 7200 全在公网IP的机器上了!第二 减轻2台分机的负担!呵呵!
mw!F{pw
1-2号机 上分别同时安装DBSrv200(角色录入管理)和 M2Server(M2主程序)
基本思路:
mw!F{pw
在做服务器前!我们先了解M2的整体运行流程。首先,玩家登入到LoginGate 7000(ID录入端口)并从LoginGate 的 5500端口 进入Logsrv , 确认ID后,通过 SelChrGate 7100 进入DBSrv200 进行 角色确认,确认完毕,又通过 RUNGATE 的7200 进入主程序 M2server , M2server 将所有角色及ID信息 通过DBSrv200 的 6000 端口 以及Logsrv的 5600 端口 反还给DBSrv200 和 Logsrv.。看到这里,你因该知道整个运行的规律了吧??不懂??我也没办法了啊?我的语文也不是很好!呵呵!!
好了!开是动手吧!
mw!F{pw
首先我们来配置主服务器(0号机-双网卡,分别设置公网IP 比如是 61.153.197.XXX,和局端IP比如是 192.168.0.1):
mw!F{pw
我们打算开1区 2个服务,那么在0号机器就必须有LOGSRV和LOGINGATE,我们先看看如何设置LOGINGATE吧!太简单了!和单机设置一样,废话好多啊!
mw!F{pw
D:\mirserver\Gate_Server\LoginGate\Mirgate.ini
mw!F{pw
[server]
mw!F{pw
Color=LTGRAY 版面颜色
mw!F{pw
Title='账号登录管理器' 窗口名称
mw!F{pw
ServerPort=5500 LoginGate接入Logsrv的端口
mw!F{pw
GatePort=7000 客户端与 LoginGate的交接端口
mw!F{pw
index=0 默认先使用下面的 ServerX
mw!F{pw
Server1=192.168.0.1 LogSrv所在的主机IP(可以是127.0.0.1、或192.168.0.1、或公网IP)
mw!F{pw
Server2=
mw!F{pw
Server3=
mw!F{pw
Server4=
mw!F{pw
Server5=
mw!F{pw
再来看LogSrv的配置:
mw!F{pw
D:\mirserver\Mud2\LogsrvLogsrv.ini
mw!F{pw
[server]
mw!F{pw
DBServer=192.168.0.1 本来是因该设置分机的IP!但是有两台分机啊?那给谁?呵呵!不用给谁!0号机器自己用吧!
mw!F{pw
DBSPort=16300
mw!F{pw
FeePort=16301
mw!F{pw
LogPort=16302 这3个端口懂的人一看就知道了!不是很重要!不要改就OK
mw!F{pw
ReadyServers=2 2个服务器 设2(几个服务器!就设置几个好了)
mw!F{pw
EnableMakingID=TRUE 以下都无须改动!
mw!F{pw
EnableTrial=FALSE
CountLogDir=D:\MirServer\Mud2\Logsrv\CountLogWebLogDir=D:\MirServer\Share\GameWFolderFeedIDList=D:\MirServer\Share\Feed\FeedIDList.txt
mw!F{pw
FeedIPList=D:\MirServer\Share\Feed\FeedIPList.txt
mw!F{pw
[DB]
mw!F{pw
IDDir='.\IDDB\'
二、!addrtable.txt
mw!F{pw
;请按标准格式配置
mw!F{pw
;服务器名称 标识 本机IP 主机IP 网络IP..
mw!F{pw
某某传奇 某某传奇 192.168.0.1 61.153.197.XXX 61.153.197.XXX:7100
mw!F{pw
传奇某某 传奇某某 192.168.0.1 61.153.197.XXX 61.153.197.XXX:8100
分服2的端口要改哦!8100 可以随便你改 和 RunGate (改8200)保持统一 或 没已被使用 就好。分服1 不要改就行
mw!F{pw
三、!serveraddr.txt
mw!F{pw
192.168.0.2
mw!F{pw
192.168.0.2
mw!F{pw
192.168.0.3
mw!F{pw
192.168.0.3
mw!F{pw
61.153.197.XXX
192.168.0.2 定为 1号服务器 的IP 192.168.0.3 定为2号服务器的IP!为什么这样设置呢?不清楚!我是试出来的!
mw!F{pw
D:\mirserver\Gate_Server\LoginGate\Mirgate.ini 的配置说完了,接下我来说说
mw!F{pw
SelChrGate和RunGate 的设置,
mw!F{pw
因为我们有2个分服 1号 和2号 机,所以 SelChrGate和RunGate 也要双份,
mw!F{pw
SelChrGate × 2
mw!F{pw
把D:\mirserver\Gate_Server\下SelChrGate 目录再复制一个 取名为 SelChrGate8100
mw!F{pw
原来的SelChrGate 改名为 SelChrGate7100
mw!F{pw
SelChrGate7100 SelChrGate8100
mw!F{pw
mw!F{pw
D:\mirserver\Gate_Server\SelChrGate7100\ MirGate.ini D:\mirserver\Gate_Server\SelChrGate8100\ MirGate.ini
mw!F{pw
[server]
mw!F{pw
Color=Green
mw!F{pw
Title='某某传奇选择角色管理器'
mw!F{pw
ServerPort=5100
mw!F{pw
GatePort=7100
mw!F{pw
index=0
mw!F{pw
Server1=192.168.0.2
mw!F{pw
Server2=
mw!F{pw
Server3=
mw!F{pw
Server4=
mw!F{pw
Server5= [server]
mw!F{pw
Color=Green
mw!F{pw
Title='传奇某某选择角色管理器'
mw!F{pw
ServerPort=5100
mw!F{pw
GatePort=8100
mw!F{pw
index=0
mw!F{pw
Server1=192.168.0.3
mw!F{pw
Server2=
mw!F{pw
Server3=
mw!F{pw
Server4=
mw!F{pw
Server5=
RunGate × 2
mw!F{pw
把D:\mirserver\Gate_Server\下RunGate 目录再复制一个 取名为 RunGate 8100
mw!F{pw
原来的RunGate 改名为 RunGate 7100
mw!F{pw
RunGate 7100 RunGate 8100
mw!F{pw
mw!F{pw
D:\mirserver\Gate_Server\RunGate7100\ MirGate.ini D:\mirserver\Gate_Server\RunGate8100\ MirGate.ini
mw!F{pw
[server]
mw!F{pw
Color=GREEN
mw!F{pw
Title='某某传奇角色在线管理器'
mw!F{pw
ServerPort=5000
mw!F{pw
GatePort=7200
mw!F{pw
index=0
mw!F{pw
Server1=192.168.0.2
mw!F{pw
Server2=
mw!F{pw
Server3=
mw!F{pw
Server4=
mw!F{pw
Server5= [server]
mw!F{pw
Color=GREEN
mw!F{pw
Title='传奇某某角色在线管理器'
mw!F{pw
ServerPort=5000
mw!F{pw
GatePort=8200
mw!F{pw
index=0
mw!F{pw
Server1=192.168.0.3
mw!F{pw
Server2=
mw!F{pw
Server3=
mw!F{pw
Server4=
mw!F{pw
Server5=
0号机 配置好了!简单了吧!接下来看看 1-2号的配置!2个除IP不同外!其他设置一个样。
1-2号机 都 装了 DRSV200 和 M2SERVER
mw!F{pw
先来说M2SERVER吧!
mw!F{pw
mw!F{pw
D:\mirserver\Mir200\!SetUp.txt D:\mirserver\Mir200\!SetUp.txt
mw!F{pw
[Server]
mw!F{pw
;(服务器群中的编号,默认为 0)
mw!F{pw
ServerIndex=0
mw!F{pw
;(服务器名称,可改为自己设定的名字,英文中文都可以)
mw!F{pw
ServerName=某某传奇
mw!F{pw
;(服务器组编号,默认为 0)
mw!F{pw
ServerNumber=0
mw!F{pw
;(冒险形式服务器,FALSE为否,TRUE为是)
mw!F{pw
VentureServer=FALSE
mw!F{pw
;(测试形式服务器,FALSE为否,TRUE为是)
mw!F{pw
TestServer=TRUE
mw!F{pw
;(注册用户初始化等级,调整范围0-50)
mw!F{pw
TestLevel=22
mw!F{pw
;(注册用户初始化金币,调整范围0-5000000)
mw!F{pw
TestGold=0
mw!F{pw
;(允许最大参加测试人数)
mw!F{pw
TestServerUserLimit=1000
mw!F{pw
;(服务性模式,FALSE为否,TRUE为是,如果在收费模式下选择了冒险形式服务器这里必须改为TRUE)
mw!F{pw
ServiceMode=FALSE
mw!F{pw
;(不允许PK服务器,FALSE为否,TRUE为是,只有在付费服务器生效)
mw!F{pw
NonPKServer=FALSE
DBAddr=127.0.0.1
mw!F{pw
DBPort=6000
mw!F{pw
IDSAddr=192.168.0.1
mw!F{pw
IDSPort=5600
mw!F{pw
MsgSrvAddr=127.0.0.1
mw!F{pw
MsgSrvPort=4900
HumLimit=0
mw!F{pw
MonLimit=30
mw!F{pw
ZenLimit=30
mw!F{pw
NpcLimit=5
mw!F{pw
SocLimit=30
mw!F{pw
DecLimit=10
mw!F{pw
UserFull=200
mw!F{pw
ZenFastStep=300
mw!F{pw
SendBlock=1000
mw!F{pw
CheckBlock=8000
mw!F{pw
AvailableBlock=200
mw!F{pw
GateLoad=0
mw!F{pw
LogServerAddr=127.0.0.1
mw!F{pw
LogServerPort=10000
mw!F{pw
ViewHackMessage=TRUE
mw!F{pw
ViewAdmissionFailure=TRUE
mw!F{pw
;HalfFeeStart=2
mw!F{pw
;HalfFeeEnd=10
[Share]
mw!F{pw
;(用户付费记录文件夹,初始化为空)
mw!F{pw
BaseDir=d:\mirserver\Mir200\Share;(行会文件夹,保存了所有行会登记记录,一个文件代表一个行会,初始化为空)
mw!F{pw
GuildDir=d:\mirserver\Mir200\GuildBase\Guilds;(总行会记录,每一行代表一个行会名字,初始化为空)
mw!F{pw
GuildFile=d:\mirserver\Mir200\GuildBase\Guildlist.txt
mw!F{pw
;(临时记录用户信息的文件夹。只有在服务模式才有文件存在,初始化空)
'C)^
hj.
VentureDir=d:\mirserver\Mir200\ShareV;(记录用户每次登录时间的文件夹,初始化为空,可以每天清空一次)
'C)^
hj.
ConLogDir=d:\mirserver\Mir200\ConLog;(沙巴克城资料及攻城日期、信息)
'C)^
hj.
CastleDir=d:\mirserver\Mir200\Envir\Castle;(服务端核心文件夹)
'C)^
hj.
EnvirDir=d:\mirserver\Mir200\Envir;(地图文件夹)
'C)^
hj.
MapDir=d:\mirserver\Mir200\Map\
[Setup]
'C)^
hj.
ClientFile1=mir.dat
'C)^
hj.
ClientFile2=
'C)^
hj.
ClientFile3=
'C)^
hj.
ItemNumber=2624216
'C)^
hj.
HomeMap=0
'C)^
hj.
HomeX=289
'C)^
hj.
HomeY=618
'C)^
hj.
[Names]
'C)^
hj.
ClothsMan=布衣(男)
'C)^
hj.
ClothsWoman=布衣(女)
'C)^
hj.
WoodenSword=乌木剑
'C)^
hj.
Candle=超级金创药
'C)^
hj.
BasicDrug=超级魔法药
GoldStone='金矿'
'C)^
hj.
SilverStone='银矿'
'C)^
hj.
SteelStone='铁矿'
'C)^
hj.
CopperStone='铜矿'
'C)^
hj.
BlackStone='黑铁矿石'
Zuma1='祖玛卫士'
'C)^
hj.
Zuma2='祖玛雕像'
'C)^
hj.
Zuma3='祖玛弓箭手'
'C)^
hj.
Zuma4='楔蛾'
Bee='蝙蝠'
'C)^
hj.
Spider='爆裂蜘蛛'
WomaHorn='沃玛号角'
'C)^
hj.
ZumaRelic='祖玛头像'
Necklace='祈祷项链'
'C)^
hj.
Ring='祈祷戒指'
'C)^
hj.
Bracelet='祈祷手镯'
'C)^
hj.
Arms='祈祷之刃'
'C)^
hj.
Helmet='祈祷头盔'
'C)^
hj.
WEAPON='祈祷之刃'
'C)^
hj.
ARMRING='祈祷手镯'
Archer='弓箭手'
'C)^
hj.
Guard='护卫' [Server]
'C)^
hj.
;(服务器群中的编号,默认为 0)
'C)^
hj.
ServerIndex=0
'C)^
hj.
;(服务器名称,可改为自己设定的名字,英文中文都可以)
'C)^
hj.
ServerName=传奇某某
'C)^
hj.
;(服务器组编号,默认为 0)
'C)^
hj.
ServerNumber=0
'C)^
hj.
;(冒险形式服务器,FALSE为否,TRUE为是)
'C)^
hj.
VentureServer=FALSE
'C)^
hj.
;(测试形式服务器,FALSE为否,TRUE为是)
'C)^
hj.
TestServer=TRUE
'C)^
hj.
;(注册用户初始化等级,调整范围0-50)
'C)^
hj.
TestLevel=22
'C)^
hj.
;(注册用户初始化金币,调整范围0-5000000)
'C)^
hj.
TestGold=0
'C)^
hj.
;(允许最大参加测试人数)
'C)^
hj.
TestServerUserLimit=1000
'C)^
hj.
;(服务性模式,FALSE为否,TRUE为是,如果在收费模式下选择了冒险形式服务器这里必须改为TRUE)
'C)^
hj.
ServiceMode=FALSE
'C)^
hj.
;(不允许PK服务器,FALSE为否,TRUE为是,只有在付费服务器生效)
'C)^
hj.
NonPKServer=FALSE
DBAddr=127.0.0.1
'C)^
hj.
DBPort=6000
'C)^
hj.
IDSAddr=192.168.0.1
'C)^
hj.
IDSPort=5600
'C)^
hj.
MsgSrvAddr=127.0.0.1
'C)^
hj.
MsgSrvPort=4900
HumLimit=0
'C)^
hj.
MonLimit=30
'C)^
hj.
ZenLimit=30
'C)^
hj.
NpcLimit=5
'C)^
hj.
SocLimit=30
'C)^
hj.
DecLimit=10
'C)^
hj.
UserFull=200
'C)^
hj.
ZenFastStep=300
'C)^
hj.
SendBlock=1000
'C)^
hj.
CheckBlock=8000
'C)^
hj.
AvailableBlock=200
'C)^
hj.
GateLoad=0
'C)^
hj.
LogServerAddr=127.0.0.1
'C)^
hj.
LogServerPort=10000
'C)^
hj.
ViewHackMessage=TRUE
'C)^
hj.
ViewAdmissionFailure=TRUE
'C)^
hj.
;HalfFeeStart=2
'C)^
hj.
;HalfFeeEnd=10
[Share]
'C)^
hj.
;(用户付费记录文件夹,初始化为空)
'C)^
hj.
BaseDir=d:\mirserver\Mir200\Share;(行会文件夹,保存了所有行会登记记录,一个文件代表一个行会,初始化为空)
'C)^
hj.
GuildDir=d:\mirserver\Mir200\GuildBase\Guilds;(总行会记录,每一行代表一个行会名字,初始化为空)
'C)^
hj.
GuildFile=d:\mirserver\Mir200\GuildBase\Guildlist.txt
'C)^
hj.
;(临时记录用户信息的文件夹。只有在服务模式才有文件存在,初始化空)
'C)^
hj.
VentureDir=d:\mirserver\Mir200\ShareV;(记录用户每次登录时间的文件夹,初始化为空,可以每天清空一次)
'C)^
hj.
ConLogDir=d:\mirserver\Mir200\ConLog;(沙巴克城资料及攻城日期、信息)
'C)^
hj.
CastleDir=d:\mirserver\Mir200\Envir\Castle;(服务端核心文件夹)
'C)^
hj.
EnvirDir=d:\mirserver\Mir200\Envir;(地图文件夹)
'C)^
hj.
MapDir=d:\mirserver\Mir200\Map\
[Setup]
'C)^
hj.
ClientFile1=mir.dat
'C)^
hj.
ClientFile2=
'C)^
hj.
ClientFile3=
'C)^
hj.
ItemNumber=2624216
'C)^
hj.
HomeMap=0
'C)^
hj.
HomeX=289
'C)^
hj.
HomeY=618
'C)^
hj.
[Names]
'C)^
hj.
ClothsMan=布衣(男)
'C)^
hj.
ClothsWoman=布衣(女)
'C)^
hj.
WoodenSword=乌木剑
'C)^
hj.
Candle=超级金创药
'C)^
hj.
BasicDrug=超级魔法药
GoldStone='金矿'
'C)^
hj.
SilverStone='银矿'
'C)^
hj.
SteelStone='铁矿'
'C)^
hj.
CopperStone='铜矿'
'C)^
hj.
BlackStone='黑铁矿石'
Zuma1='祖玛卫士'
'C)^
hj.
Zuma2='祖玛雕像'
'C)^
hj.
Zuma3='祖玛弓箭手'
'C)^
hj.
Zuma4='楔蛾'
Bee='蝙蝠'
'C)^
hj.
Spider='爆裂蜘蛛'
WomaHorn='沃玛号角'
'C)^
hj.
ZumaRelic='祖玛头像'
Necklace='祈祷项链'
'C)^
hj.
Ring='祈祷戒指'
'C)^
hj.
Bracelet='祈祷手镯'
'C)^
hj.
Arms='祈祷之刃'
'C)^
hj.
Helmet='祈祷头盔'
'C)^
hj.
WEAPON='祈祷之刃'
'C)^
hj.
ARMRING='祈祷手镯'
Archer='弓箭手'
'C)^
hj.
Guard='护卫'
'C)^
hj.
M2SERVER 没什么东西可以设置的就改IDSAddr=192.168.0.1,因为Logsrv在0号机啊?
最后 改说DBSR200了!
'C)^
hj.
D:\mirserver\Mud2\DBSrv200\ DBSrc.ini
'C)^
hj.
'C)^
hj.
'C)^
hj.
[Setup]
'C)^
hj.
ServerName=某某传奇
'C)^
hj.
Port=6000
'C)^
hj.
MapFile=D:\MirServer\Mir200\Envir\MapInfo.txt
'C)^
hj.
ViewHackMsg=0
'C)^
hj.
[Server]
'C)^
hj.
;游戏数据库管理配置
'C)^
hj.
IDSAddr=192.168.0.1
'C)^
hj.
IDSPort=5600
'C)^
hj.
[DB]
'C)^
hj.
Dir=D:\MirServer\Mud2\DBsrv200\FDBIDDir=D:\MirServer\Mud2\DBsrv200\FDBHumDir=D:\MirServer\Mud2\DBsrv200\FDBFeeDir=D:\MirServer\Mud2\DBsrv200\FDBBackup=D:\MirServer\Mud2\DBsrv200\BackupConnectDir=D:\MirServer\Mud2\DBsrv200\ConnectionLogDir=D:\MirServer\Mud2\DBsrv200\Log\ [Setup]
'C)^
hj.
ServerName=传奇某某
'C)^
hj.
Port=6000
'C)^
hj.
MapFile=D:\MirServer\Mir200\Envir\MapInfo.txt
'C)^
hj.
ViewHackMsg=0
'C)^
hj.
[Server]
'C)^
hj.
;游戏数据库管理配置
'C)^
hj.
IDSAddr=192.168.0.1
'C)^
hj.
IDSPort=5600
'C)^
hj.
[DB]
'C)^
hj.
Dir=D:\MirServer\Mud2\DBsrv200\FDBIDDir=D:\MirServer\Mud2\DBsrv200\FDBHumDir=D:\MirServer\Mud2\DBsrv200\FDBFeeDir=D:\MirServer\Mud2\DBsrv200\FDBBackup=D:\MirServer\Mud2\DBsrv200\BackupConnectDir=D:\MirServer\Mud2\DBsrv200\ConnectionLogDir=D:\MirServer\Mud2\DBsrv200\Log\
'C)^
hj.
二、D:\mirserver\Mud2\DBSrv200\!AddrTable.txt
'C)^
hj.
(1号机) 192.168.0.2 61.153.197.XXX
'C)^
hj.
(2号机) 192.168.0.3 61.153.197.XXX
'C)^
hj.
三、D:\mirserver\Mud2\DBSrv200\!ServerInfo.txt
'C)^
hj.
(1号机) 192.168.0.1 61.153.197.XXX 7200
'C)^
hj.
(2号机) 192.168.0.1 61.153.197.XXX 8200
'C)^
hj.
全部设置完成!注意,不能有一点点错,否则,嘿嘿!开不了门进不了游戏,别说我的文章没用啊?因昨天有人问我,所以我可是搞了一个下午才弄明白的!我完全测试通过!绝对可以用!免掉端口映射!我讨厌端口影射!人多了主机负担不起!
还有问题??有路由怎么办啊???靠!端口映射到0号机就OK!7000,7100,8100,7200,8200
当然这个也可以多到4台8 台!随便你加
我也不会这个是别人转来的没测试过你有兴趣你去搞个试试看