Mentor
16/02/2015, 11:27 PM
Este tutorial foi elaborado pelo SHEIK ensinando como você deve configurar a ligação entre os GameServers separando por mapas. Resumindo, configuração de subservers (diversas quantidades) e trabalhar essa conexão com o GameServer Castle siege (que pode haver somente 1).
Dessa forma que configurei a idéia é ter vários Gameservers, pode ser vips, supervips, dentre outros e conectando somente com 1 GameServer Castle Siege.
Primeira coisa é ter os servercodes de cada GameServer, no meu exemplo irá ser:
ConnectServer WEBZEN / Serverlist
[Atualizado 01/09/2014]
0 "GS01" 192.168.1.200 55901 "SHOW"
1 "GS02" 192.168.1.200 55910 "SHOW"
19 "GS_CS" 192.168.1.200 55919 "HIDE"
ConnectServer zTEAM / Serverlist
[Atualizado 01/09/2014]
0 "GS01" 192.168.1.200 55901 "SHOW"
1 "GS02" 192.168.1.200 55910 "SHOW"
//19 "GS_CS" 192.168.1.200 55919 "HIDE"
OBS: Connectserver da zTeam você comenta // ou remove a linha do GameServer_cs para não aparecer a sala no Jogo.
Temos acima os 3 servercodes 0, 1 e 19. O 19 é o meu GS_CS ele vai receber a conexão de todos os GS.
Com os servercodes anotados, iremos configurar o mapserverinfo do servercode 0 e 19.
OBS: porque o 0 e 19? porque ambos Gameserver usam o mesmo mapserverinfo por padrão.
Mas, a configuração mais importante é para o gameserver cs 19, pois teremos que informar todos os servercodes existentes no servidor para fazer a ligação de retorno, saiba mais abaixo:
mapServerInfo.dat servercode 0 e 19 (data/mapserverinfo.dat)
//=====================================// Main
//=====================================
0
// ----------------------------------------------------------------------------------
// ServerCode Group InitValue IP Port
// ----------------------------------------------------------------------------------
0 0 1 S192.168.1.200 55901
1 0 1 S192.168.1.200 55910
19 0 0 S192.168.1.200 55919
end
//=====================================
// Destination
//=====================================
1
// ----------------------------------------------------------------------------------
// ServerCode MoveOption Map DestServerCode
// ----------------------------------------------------------------------------------
0 0 30 19
0 0 31 19
1 0 30 19
1 0 31 19
19 1 30 -1
19 1 31 -1
end
Iniciando a configuração:
0// ----------------------------------------------------------------------------------
// ServerCode Group InitValue IP Port
// ----------------------------------------------------------------------------------
0 0 1 S192.168.1.200 55901
1 0 1 S192.168.1.200 55910
19 0 0 S192.168.1.200 55919
end
Acima informamos os Servercode (0,1 e 19), Group( zero, iremos ter somente 1 grupo), InitValue, IP e Port.
Na coluna InitValue informamos os servidores principais com o valor 1, importante informar.
O IP sempre informar o ip de conexão externo (Ip Global ou no-ip sem hifen, ex: gx.sytes.net), no meu caso informei ip de rede para teste local (não é possível usar Localhost ou 127.0.0.1).
E as portas que foram configuradas no ConnectServer.
//=====================================// Destination
//=====================================
1
// ----------------------------------------------------------------------------------
// ServerCode MoveOption Map DestServerCode
// ----------------------------------------------------------------------------------
0 0 30 19
0 0 31 19
1 0 30 19
1 0 31 19
19 1 30 -1
19 1 31 -1
end
Destino
Essa parte iremos informar ao GS o destino que queremos dar ao mover um personagem ou entrar em um determinado gate.
Temos que informar ServerCode, MoveOption, Map e DestServerCode.
0 0 30 19
Primeira coluna informamos o servercode 0.
MoveOption funciona da seguinte forma, no valor 0 (zero) informa que o Gameserver 0 não quer receber nenhuma conexão no MAP 30 e enviar essa conexão para o destino 19, ou seja, vai pegar o personagem ao mover para o mapa 30 do gs0 fazer a mudança para o gs19.
Nesse momento ele (personagem) está no servercode 19, e se por exemplo mover para Lorencia MAP 0 o que vai acontecer?
19 1 30 -1
Nesta linha acima temos o servercode 19 com o MoveOption 1, neste caso irá informar para o GS19 que irá receber somente a conexão se for MAP 30, no nosso exemplo acima é MAP 0 (lorencia), como deu falso na ultima coluna -1, ele vai retornar a ultima conexão e foi o GS0.
OBS: Se você for adicionar mais um GS em seu servidor, terá que continuar informar os Servercodes como o 0 e 1 no arquivo acima.
MapServerInfo Servercode 1 (esse já é o subserver)
// Main//=====================================
0
// ----------------------------------------------------------------------------------
// ServerCode Group InitValue IP Port
// ----------------------------------------------------------------------------------
1 0 1 S192.168.1.200 55910
19 0 0 S192.168.1.200 55919
end
//=====================================
// Destination
//=====================================
1
// ----------------------------------------------------------------------------------
// ServerCode MoveOption Map DestServerCode
// ----------------------------------------------------------------------------------
1 0 30 19
1 0 31 19
19 1 30 -1
19 1 31 -1
end
Neste Mapserverinfo informaremos somente que o servercode 1 não tem nenhuma conexão com os MAP 30 e 31 e enviar o personagem para o Servercode 19.
E informei somente os dados do servercode 1 e o 19, pois o 0 não irá fazer nenhuma conexão com o 1.
Créditos:
SHEIK(globalextreme)
Dessa forma que configurei a idéia é ter vários Gameservers, pode ser vips, supervips, dentre outros e conectando somente com 1 GameServer Castle Siege.
Primeira coisa é ter os servercodes de cada GameServer, no meu exemplo irá ser:
ConnectServer WEBZEN / Serverlist
[Atualizado 01/09/2014]
0 "GS01" 192.168.1.200 55901 "SHOW"
1 "GS02" 192.168.1.200 55910 "SHOW"
19 "GS_CS" 192.168.1.200 55919 "HIDE"
ConnectServer zTEAM / Serverlist
[Atualizado 01/09/2014]
0 "GS01" 192.168.1.200 55901 "SHOW"
1 "GS02" 192.168.1.200 55910 "SHOW"
//19 "GS_CS" 192.168.1.200 55919 "HIDE"
OBS: Connectserver da zTeam você comenta // ou remove a linha do GameServer_cs para não aparecer a sala no Jogo.
Temos acima os 3 servercodes 0, 1 e 19. O 19 é o meu GS_CS ele vai receber a conexão de todos os GS.
Com os servercodes anotados, iremos configurar o mapserverinfo do servercode 0 e 19.
OBS: porque o 0 e 19? porque ambos Gameserver usam o mesmo mapserverinfo por padrão.
Mas, a configuração mais importante é para o gameserver cs 19, pois teremos que informar todos os servercodes existentes no servidor para fazer a ligação de retorno, saiba mais abaixo:
mapServerInfo.dat servercode 0 e 19 (data/mapserverinfo.dat)
//=====================================// Main
//=====================================
0
// ----------------------------------------------------------------------------------
// ServerCode Group InitValue IP Port
// ----------------------------------------------------------------------------------
0 0 1 S192.168.1.200 55901
1 0 1 S192.168.1.200 55910
19 0 0 S192.168.1.200 55919
end
//=====================================
// Destination
//=====================================
1
// ----------------------------------------------------------------------------------
// ServerCode MoveOption Map DestServerCode
// ----------------------------------------------------------------------------------
0 0 30 19
0 0 31 19
1 0 30 19
1 0 31 19
19 1 30 -1
19 1 31 -1
end
Iniciando a configuração:
0// ----------------------------------------------------------------------------------
// ServerCode Group InitValue IP Port
// ----------------------------------------------------------------------------------
0 0 1 S192.168.1.200 55901
1 0 1 S192.168.1.200 55910
19 0 0 S192.168.1.200 55919
end
Acima informamos os Servercode (0,1 e 19), Group( zero, iremos ter somente 1 grupo), InitValue, IP e Port.
Na coluna InitValue informamos os servidores principais com o valor 1, importante informar.
O IP sempre informar o ip de conexão externo (Ip Global ou no-ip sem hifen, ex: gx.sytes.net), no meu caso informei ip de rede para teste local (não é possível usar Localhost ou 127.0.0.1).
E as portas que foram configuradas no ConnectServer.
//=====================================// Destination
//=====================================
1
// ----------------------------------------------------------------------------------
// ServerCode MoveOption Map DestServerCode
// ----------------------------------------------------------------------------------
0 0 30 19
0 0 31 19
1 0 30 19
1 0 31 19
19 1 30 -1
19 1 31 -1
end
Destino
Essa parte iremos informar ao GS o destino que queremos dar ao mover um personagem ou entrar em um determinado gate.
Temos que informar ServerCode, MoveOption, Map e DestServerCode.
0 0 30 19
Primeira coluna informamos o servercode 0.
MoveOption funciona da seguinte forma, no valor 0 (zero) informa que o Gameserver 0 não quer receber nenhuma conexão no MAP 30 e enviar essa conexão para o destino 19, ou seja, vai pegar o personagem ao mover para o mapa 30 do gs0 fazer a mudança para o gs19.
Nesse momento ele (personagem) está no servercode 19, e se por exemplo mover para Lorencia MAP 0 o que vai acontecer?
19 1 30 -1
Nesta linha acima temos o servercode 19 com o MoveOption 1, neste caso irá informar para o GS19 que irá receber somente a conexão se for MAP 30, no nosso exemplo acima é MAP 0 (lorencia), como deu falso na ultima coluna -1, ele vai retornar a ultima conexão e foi o GS0.
OBS: Se você for adicionar mais um GS em seu servidor, terá que continuar informar os Servercodes como o 0 e 1 no arquivo acima.
MapServerInfo Servercode 1 (esse já é o subserver)
// Main//=====================================
0
// ----------------------------------------------------------------------------------
// ServerCode Group InitValue IP Port
// ----------------------------------------------------------------------------------
1 0 1 S192.168.1.200 55910
19 0 0 S192.168.1.200 55919
end
//=====================================
// Destination
//=====================================
1
// ----------------------------------------------------------------------------------
// ServerCode MoveOption Map DestServerCode
// ----------------------------------------------------------------------------------
1 0 30 19
1 0 31 19
19 1 30 -1
19 1 31 -1
end
Neste Mapserverinfo informaremos somente que o servercode 1 não tem nenhuma conexão com os MAP 30 e 31 e enviar o personagem para o Servercode 19.
E informei somente os dados do servercode 1 e o 19, pois o 0 não irá fazer nenhuma conexão com o 1.
Créditos:
SHEIK(globalextreme)