PDA

View Full Version : Configurando MapServerInfo.dat para Subservers



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)