Ver um Único Post
  #1  
Antigo 24-05-2009, 04:18 PM
Avatar de numb
numb numb está offline
Membro Participativo
 
Registrado em: Aug 2008
Posts: 70
MUITO OBRIGADO: 32
Agradecido 96 Vezes em 14 Posts
Reputação: 19
numb possui uma aura espetacular em sua voltanumb possui uma aura espetacular em sua voltanumb possui uma aura espetacular em sua volta
Post [Tutorial]Criando Server TXT

~ Criando um Servidor de Ragnarok em TXT (Guia Completo) ~


( Índice )

1 - Programas Necessários.
2 - Configurando o No-IP.
3 - Configurando map_athena.conf, login_athena.conf e char_athena.conf.
4 - Colocando diretório das GRF's.
5 - Configurando Rates.
5.1 - Configurando Level Máximo.
6 - Configurando sclientinfo.xml
6.1 - Configurando o sclientinfo.xml para 2 servidores
7 - Criando conta de GM/ADM/VIP...
7.1 - Ativando sistema _M e _F.
8 - Erros Comuns
9 - Créditos
10 - Agradecimentos

1 - Programas Necessários:

Cronus TXT
No-IP
7Zip

2 - Configurando o No-IP:

Esta parte é muito simples. Basta entrar no Site e clicar em "Create Account" e preencher os campos. Veja a imagem:

Após preencher os campos, clique em "I Accept, Create my Account". Agora vá até a Caixa de Entrada de seu E-mail para clicar no link de confirmação e pronto!
Depois disso,vá ao Site do No-IP e entre com sua conta. Clique em "Add a Host" e no campo "Hostname" digite qualquer coisa, pode ser o nome do seu servidor ou qualquer outra coisa que você quiser e clique em "Create Host". Veja a imagem abaixo para auxiliá-lo(a):

Abra o No-IP, entre com sua conta normalmente. Irá aparecer o host que você acabou de criar, clique no "quadradinho" para selecioná-lo até a expressão da carinha mudar para uma carinha feliz ou envergonhada. Feche o No-IP, certificando que ele estará minimizado na bandeja do sistema e pronto, No-IP iniciado com sucesso! Veja a imagem abaixo:


3 - Configurando map_athena.conf, login_athena.conf e char_athena.conf

Após baixar o Cronus TXT, e extrair as pastas, abra a pasta conf que vem dentro do emulador, e siga os seguintes passos:

1º Abra o arquivo char_athena.conf, procure e substitua as seguintes linhas:

Procure:

Citação:
// IP do Servidor de Login
// O Servidor de Personagem conecta no Servidor de Login através deste endereço de IP.
// NOTA: Isto é funcional quando você tem um Firewall ou algo do tipo ligado
// na máquina em interfaces múltiplas.
//login_ip: 127.0.0.1
Modifique para:

Citação:
// IP do Servidor de Login
// O Servidor de Personagem conecta no Servidor de Login através deste endereço de IP.
// NOTA: Isto é funcional quando você tem um Firewall ou algo do tipo ligado
// na máquina em interfaces múltiplas.
login_ip: (digite aqui o no-ip do seu serve ex: seuserve-ro.no-ip.info)
OBS: Nunca esqueça de retirar as // de login_ip.
Procure:

Citação:
// O Servidor de Personagens lista em sua interface este endereço de IP.
// NOTA: Aceita rodar múltiplos servidores em múltiplas interfaces
// usando as mesmas portas do servidor principal.
//bind_ip: 127.0.0.1
Modifique para:

Citação:
// O Servidor de Personagens lista em sua interface este endereço de IP.
// NOTA: Aceita rodar múltiplos servidores em múltiplas interfaces
// usando as mesmas portas do servidor principal.
bind_ip: (digite aqui o no-ip do seu serve ex: seuserve-ro.no-ip.info)
OBS: Nunca esqueça de retirar as // de bind_ip.
Procure:

Citação:
// IP do Servidor de Personagens
// O Servidor de Personagens exporta este endereço de IP para entrar no Server.
// NOTA: Você não deve ter nenhum firewall ou algo do tipo rodando em sua máquina
// ou uma máquina ligada em múltiplas conexões.
//char_ip:127.0.0.1
Modifique para:

Citação:
// IP do Servidor de Personagens
// O Servidor de Personagens exporta este endereço de IP para entrar no Server.
// NOTA: Você não deve ter nenhum firewall ou algo do tipo rodando em sua máquina
// ou uma máquina ligada em múltiplas conexões.
char_ip: (digite aqui o no-ip do seu serve ex: seuserve-ro.no-ip.info)
OBS: Nunca esqueça de retirar as // de char_ip.
Procure:

Citação:
// Senha e Nome de Usuário do Servidor de Comunicação.
userid: s1
passwd: p1
Modifique para:

Citação:
// Senha e Nome de Usuário do Servidor de Comunicação.
userid: s2
passwd: p2
2º Abra o arquivo login_athena.conf, procure e substitua as seguintes linhas:

Procure:

Citação:
// O Servidor de Login lista na interface este endereço de IP.
// NOTA: Mesmo com esta opção ativada o servidor está permitido a rodar em servidores múltiplos
// em interfaces múltiplas ao usar as mesmas portas para cada usuário.
//login_ip: 127.0.0.1
Modifique para:

Citação:
// O Servidor de Login lista na interface este endereço de IP.
// NOTA: Mesmo com esta opção ativada o servidor está permitido a rodar em servidores múltiplos
// em interfaces múltiplas ao usar as mesmas portas para cada usuário.
login_ip: (digite aqui o no-ip do seu serve ex: seuserve-ro.no-ip.info)
OBS: Nunca esqueça de retirar as // de login_ip.
Procure:

Citação:
// IP do Servidor de Login
// O Servidor de Login exporta este endereço de IP para que os jogadores entrem no servidor.
// Coloque abaixo seu endereço de IP.
// NOTA: Você deve desligar seu Firewall para que os jogadores possam
// conectar-se ao seu computador.
//bind_ip: 127.0.0.1
Modifique para:

Citação:
// IP do Servidor de Login
// O Servidor de Login exporta este endereço de IP para que os jogadores entrem no servidor.
// Coloque abaixo seu endereço de IP.
// NOTA: Você deve desligar seu Firewall para que os jogadores possam
// conectar-se ao seu computador.
bind_ip: (digite aqui o no-ip do seu serve ex: seuserve-ro.no-ip.info)
OBS: Nunca esqueça de retirar as // de bind_ip.
3º Abra o arquivo map_athena.conf, procure e substitua as seguintes linhas:

Procure:

Citação:
// IP do Character Server
// O "map server" conecta com o "character server" usando este endereço de IP.
// Obs.: Isto é útil quando você está rodando o servidor atrás de uma firewall ou está em
// uma máquina com múltiplas interfaces.
//char_ip: 127.0.0.1
Modifique para:

Citação:
// IP do Character Server
// O "map server" conecta com o "character server" usando este endereço de IP.
// Obs.: Isto é útil quando você está rodando o servidor atrás de uma firewall ou está em
// uma máquina com múltiplas interfaces.
char_ip: (digite aqui o no-ip do seu serve ex: seuserve-ro.no-ip.info)
OBS: Nunca esqueça de retirar as // de char_ip.
Procure:

Citação:
// O "map server" escuta na interface com este endereço de IP.
// Obs.: Isto te permite rodar varios servidores em múltiplas interfaces
// enquanto usando os mesmos ports para cada servidor.
//bind_ip: 127.0.0.1
Modifique para:

Citação:
// O "map server" escuta na interface com este endereço de IP.
// Obs.: Isto te permite rodar varios servidores em múltiplas interfaces
// enquanto usando os mesmos ports para cada servidor.
bind_ip: (digite aqui o no-ip do seu serve ex: seuserve-ro.no-ip.info)
OBS: Nunca esqueça de retirar as // de bind_ip.
Procure:

Citação:
// IP do Map Server
// O "map server" exporta este IP para todo o mundo.
// Obs.: Você só deve precisar colocar isto se está rodando o servidor atrás de uma
// firewall ou se está em uma máquina com múltiplas interfaces.
//map_ip: 127.0.0.1
Modifique para:

Citação:
// IP do Map Server
// O "map server" exporta este IP para todo o mundo.
// Obs.: Você só deve precisar colocar isto se está rodando o servidor atrás de uma
// firewall ou se está em uma máquina com múltiplas interfaces.
map_ip: (digite aqui o no-ip do seu serve ex: seuserve-ro.no-ip.info)
OBS: Nunca esqueça de retirar as // de map_ip.
Procure:

Citação:
// Senhas de comunicação interserver, colocados em account.txt (ou equivalente.)
userid: s1
passwd: p1
Modifique para:

Citação:
// Senhas de comunicação interserver, colocados em account.txt (ou equivalente.)
userid: s2
passwd: p2

4 - Colocando diretório das GRF's.

Novamente abra a pasta conf nos arquivos do emulador e abra o arquivo grf-files.txt. Vai haver um código dessa maneira:

Citação:
// _________
// \_ ___ \_______ ____ ____ __ __ ______
// / \ \/\_ __ \/ _ \ / \| | \/ ___/
// \ \____| | \( <_> ) | \ | /\___ \
// \______ /|__| \____/|___| /____//____ >
// \/ \/ \/
//-----------------------------------------------
// Cronus - Configuração dos GRFs
//-----------------------------------------------

// GRF Original do Ragnarök
// EX: C:\Arquivos de Programas\Gravity\Ragnarok Online\data.grf
grf:

// GRF Personalizado do seu Servidor
grf:

// Diretório Data
//data_dir: C:\Arquivos de Programas\Gravity\Ragnarok Online\

Na primeira grf: coloque o diretório do seu data.grf em seu ragnarok.
Na segunda grf: coloque o seu custom GRF.
Em //data_dir:, retire os // e al invés de C:\Arquivos de Programas\Gravity\Ragnarok Online\ coloque o diretório do seu Ragnarok Online, a não ser que o seu ragnarok esteja instalado no diretório original "C:\Arquivos de Programas\Gravity\Ragnarok Online\".
Salve e feche o arquivo. Pronto o diretório de suas GRFs estão completamente ajustadas!

OBS: Você vai precisar de um Patch e um Hexed para poder completar seu servidor em 100% para isso dê uma lida nos seguintes tutoriais: como fazer um Patch e Diffando seu Hexed com Xray


5 - Configurando Rates.

Mais uma vez abra a pasta conf do emulador e logo após abra a pasta battle, onde vc vai indentificar os seguintes arquivos:
battle.conf
gm.conf
misc.conf
player.conf
client.conf
guild.conf
monster.conf
skill.conf
drops.conf
homunc.conf
party.conf
status.conf
exp.conf
items.conf
pet.conf
OBS: Os arquivos necessários estão marcados com negrito.
Siga os passos a seguir:

1º Abra o arquivo exp.conf (Descrição: Arquivo que cuida da taxa de experiência que o jogador vai ganhar quando matar um monstro)

Quando abri-lo logo vai visualizar o código abaixo:


Citação:
// _________
// \_ ___ \_______ ____ ____ __ __ ______
// / \ \/\_ __ \/ _ \ / \| | \/ ___/
// \ \____| | \( <_> ) | \ | /\___ \
// \______ /|__| \____/|___| /____//____ >
// \/ \/ \/
//-------------------------------------------------------------------
// Cronus - Configuração das Experiências
//-------------------------------------------------------------------
// Originally Translated by Peter Kieser <[email protected]>
// Made in to plainer English by Ancyker
//--------------------------------------------------------------
//Note 1: Directives can be set using on/off, yes/no or 1/0.
//Note 2: All rates are in percents, 100 would mean 100%, 200
// would mean 200%, etc
//Note 3: Value is not limited to 60K (see below)
// Other Information:
// All options are limited to a max of 60K (aprox) which is 600%
// or 60secs as appropiate.
// 1000 miliseconds is 1 second.
// Unless otherwise specified, the minimum value is 0 for all
// features.
//Note 4: The max level of classes is specified in the exp table.
// See files db/exp.txt and db/exp2.txt to change them.
//--------------------------------------------------------------

// Taxa na qual a experiência de base é concedida. (Nota 2) (Nota 3)
base_exp_rate: 1000000

// Taxa em que a experiência de classe é concedida. (Nota 2) (Nota 3)
job_exp_rate: 1000000

// Ponha yes se você quiser que um player possa passar mais de um level de uma só vez. (Note 1)
multi_level_up: yes
Em base_exp_rate coloque o valor de base de experiência que o jogador vai adquirir quando matar um monstro.
Em job_exp_rate coloque o valor de job de experiência que o jogador vai ganhar quando ele matar um monstro.
E em multi_level_up coloque yes, para o jogador poder passar de level mais de uma vez, e no para o personagem não pasar mais de uma vez por monstro.

Bem esse é o básico para configurar o exp.conf.

2º Abra o arquivo drops.conf. (Descrição: Arquivo que se responsabiliza pela chance de drop dos itens.)

Logo após abrir o arquivo procure o código abaixo:


Citação:
// Item drop rates (Note 2)

// The rate the common items are dropped (Items that are in the ETC tab, besides card)
item_rate_common: 100
item_rate_common_boss: 100
item_drop_common_min: 10000
item_drop_common_max: 10000

// The rate healing items are dropped (items that restore HP or SP)
item_rate_heal: 100
item_rate_heal_boss: 100
item_drop_heal_min: 10000
item_drop_heal_max: 10000

// The rate at which usable items (in the item tab) other then healing items are dropped.
item_rate_use: 100
item_rate_use_boss: 100
item_drop_use_min: 10000
item_drop_use_max: 10000

// The rate at which equipment is dropped.
item_rate_equip: 100
item_rate_equip_boss: 100
item_drop_equip_min: 10000
item_drop_equip_max: 10000

// The rate at which cards are dropped
item_rate_card: 100 // Drops de Card (Carta)
item_rate_card_boss: 100 // Drops de Card de Boss
item_drop_card_min: 10000 // Mínimo de Drop de Card
item_drop_card_max: 10000 // Máximo de Drop de Card

// The rate adjustment for the MVP items that the MVP gets directly in their inventory
item_rate_mvp: 100 // Drop de Itens de MVP
item_drop_mvp_min: 10000
item_drop_mvp_max: 10000

// The rate adjustment for card-granted item drops.
item_rate_adddrop: 100
item_drop_add_min: 10000
item_drop_add_max: 10000

// Rate adjustment for Treasure Box drops (these override all other modifiers)
item_rate_treasure: 100
item_drop_treasure_min: 10000
item_drop_treasure_max: 10000

Descrição de Drops: (Faça o seu rate de drop com base nessa descrição)
1 = 0,01%
10 = 0,1%
100 = 1,0%
1000 = 100%
3º Abra o arquivo client.conf (Descrição: Arquivo que se responsabiliza pelo level máximo dos usuários, e outros comandos.)

E procure pelo código:

Citação:
// Level Máximo
// (O normal é 99... NUnca passe de 127)
//
// Isso só funciona se você ajustou seu client
// para ter níveis maiores que 99
max_lv: 99

// Level que precisa pra mostrar a aura.
// NOTA: Isso quer dizer que pondo o level máximo o client mostrara a aura. O nível que começa a aparecer a aura tem que ser menor que o level máximo.
// Exemplo: Se o level máximo for 99, e o nível da aura 150, os chars com level entre 99~149 serão todos como level 98,
// e apenas os de level 150 serão considerados como tendo level 99.
aura_lv: 99
Em max_lv coloque o level de base máximo para seu servidor.
Em aura_lv coloque o level de job máximo para o seu servidor.

OBS: O Level Máximo so vai funcionar se você tiver configurado os arquivo exp.txt e exp3.txt que eu vou ensinar na parte 5 capítulo 1.


5.1 - Configurando Level Máximo

1º Abra a pasta db no diretório do emulador, logo em seguida renomeie o arquivo exp.txt para exp3.txt e o exp2.txt para exp.txt;

2º Abra o arquivo que você renomeou para exp.txt e configure dessa forma:

Citação:
//Base - Normal and Baby Jobs
99,0:1:2:3:4:5:6:7:8:9:10:11:12:13:14:15:16:17:18: 19:20:21:23:24:25:26:4023:4024
:4025:4026:4027:4028:4029:4030:4031:4032:4033:4034 :4035:4036:4037:4038:4039:4040
:
4041:4042:4043:4044:4045:4046:4047:4048:4049,0,9,1 6,25,36,77,112,153,200,253,320
,
385,490,585,700,830,970,1120,1260,1420,1620,1860,1 990,2240,2504,2950,3426,3934,4
4
74,6889,7995,9174,10425,11748,13967,15775,17678,19 677,21773,30543,34212,38065,42
1
02,46323,53026,58419,64041,69892,75973,102468,1152 54,128692,142784,157528,178184
,
196300,215198,234879,255341,330188,365914,403224,4 42116,482590,536948,585191,635
2
78,687211,740988,925400,1473746,1594058,1718928,18 48355,1982340,2230113,2386162,
2
547417,2713878,3206160,3681024,4022472,4377024,474 4680,5125440,5767272,6204000,6
6
55464,7121664,7602600,9738720,11649960,13643520,18 339300,23836800,35658000,48687
0
00,58135000,99999999
Modifique o 99 para o level máximo do servidor, e assim por diante, so preste atenção no // em cima dos levels, ele indica pra você se é base ou job, então quando tiver base nos // é porque é o level de base e se tiver job é por que é o level do job. Feche e salve o arquivo, e pronto! Seu level máximo está 100% configurado.


6 - Configurando sclientinfo.xml

Bem para configurar o sclientinfo.xml é muito fácil, se completar os passos a seguir é claro:
1º Crie um arquivo chamado sclientinfo.
2º Abra ele e coloque o seguinte código:

Citação:
<?xml version="1.0" encoding="euc-kr" ?>
<clientinfo>
<servicetype>brazil</servicetype>
<connection>
<display>Coloque o nome do seu servidor aqui</display>
<desc>None</desc>
<address>Seu No-IP</address>
<port>6900</port>
<version>22</version>
<langtype>10</langtype>
<registrationweb>Seu endereço de registro.</registrationweb>
<balloon>Rates do Servidor</balloon>
<aid>
<admin>ID da Conta do GM/ADM</admin>
</aid>
<loading>
<image>loading00.jpg</image>
<image>loading01.jpg</image>
<image>load... e assim por diante</image>
</loading>
</connection>
</clientinfo>
3º Clique em Arquivo > Salvar Como... e salve com o nome sclientinfo.xml, logo após coloque na psata data do seu ragnarok, se ela não existir crie uma. E pronto seu sclientinfo.xml está criado com sucesso!


6.1 - Configurando o sclientinfo.xml para 2 servidores

Faça o mesmo procedimento do capítulo 6 do tutorial, so que ao invés de você adicionar o código mandado, adicione o código abaixo:


Citação:
<?xml version="1.0" encoding="euc-kr" ?>
<clientinfo>
<servicetype>brazil</servicetype>
<connection>
<display>Coloque o nome do seu servidor aqui</display>
<desc>None</desc>
<address>Seu No-IP</address>
<port>6900</port>
<version>22</version>
<langtype>10</langtype>
<registrationweb>Seu endereço de registro.</registrationweb>
<balloon>Rates do Servidor</balloon>
<aid>
<admin>ID da Conta do GM/ADM</admin>
</aid>
<loading>
<image>loading00.jpg</image>
<image>loading01.jpg</image>
<image>load... e assim por diante</image>
</loading>
</connection>
<connection>
<display>Coloque o nome do seu servidor aqui</display>
<desc>None</desc>
<address>74.63.215.41</address>
<port>6900</port>
<version>20</version>
<langtype>8</langtype>
<registrationweb>Seu No-IP</registrationweb>
<aid>
<admin>ID da Conta do GM/ADM</admin>
</aid>
</connection>
</clientinfo>
7 - Criando conta de GM/ADM/VIP

1º Abra a pasta save do seu emulador cronus e abra o arquivo account.txt.
2º Perceba que vai haver vários codigos dessa forma, dependendo da quantidade de contas no seu servidor:

Citação:
2000002 victor senh M [email protected] 0 0 0 0 2 2008-12-15 20:46:51 127.0.0.1
Que significa isso:
Citação:
2000002 = ID da Conta
admin = login da conta
senh = senha da conta
M = M/F (M = Masculino | F = Feminino)
[email protected] = E-mail do Usuário
0 = Level da Conta.
É no Level da Conta que você vai escolher se a conta vai ser de Player/VIP/Mega VIP/GM/ADM, que se decide dessa forma.

Citação:
0 = Player Normal [Player]
1 = VIP [VIP]
10 = Mega VIP [VIP+]
20 = Mediador [MD]
40 = Sub-GM [S-GM]
50 = Sub-GM+ [S-GM+]
60 = GM [GM]
80 = GM Chefe [GM-C]
99 = Administrador [ADM]
Então você modifica o 0 para o level acima que deseja dar a essa conta... E pronto! Sua conta de GM está pronta.


7.1 - Ativando sistema _M e _F.

1º Abra a pasta conf e logo após abra o arquivo login_athena.conf.
2º Localize o código abaixo:

Citação:
// Can you use _M/_F to make new accounts on the server?
new_account: yes
Esse sistema serve para quem não tem um Cp(Control Panel), e é usado da seguinte forma:
A primeira vez que o usuário for fazer uma nova conta tem que digitar _M para conta masculina ou _F para conta feminina no login, mais isso somente a primeira vez que ele for fazer a conta.

OBS: se quiserem saber como obter um Painel de Controle = CP deem uma olhada neste tutorial By Numb

Use yes para ativar e no para desativar o sistema.


8 - Erros comuns!

Bem estou fazendo esta parte do tutorial para ajudar a alguns que tem erros comuns, e espero ajudar.

Ninguem consegue se conectar ao meu servidor.
Bem, va em Painel de Controle > Central de Segurança > Firewall do Windows > Exeções > Adicionar Porta.
OBS: O Firewall tem que estar ativado e a opção Não permitir exceções desativada. Ou tente liberar as portas de seu roteador.

Está havendo um erro em meu servidor "bind failed".
Bem, quando você iniciar o servidor tenha certeza que o no-ip está ligado e logado, e também que marcou o host criado.

Não consigo abrir a extensão .conf.
A maioria dos arquivos da pasta battle são em .conf, então você cliqua duas vezes em cima do arquivo clique em Selecionar Programa e selecione o Bloco de Notas ou outro editor de texto qualquer, então vai conseguir editar os arquivos normalmente.


9 - Créditos:
Numb pelo tutorial
Nosyel® pelo edit das imagens e adicionar algumas informções


10 - Agradecimentos:

Ao Motomodd por disponibilizar esta área inteiramente para aprendizado


Se gostou agradeça

Última edição por Nosyel; 30-06-2009 às 12:22 AM.
O Seguinte 11 Usuário(s) disseram "MUITO OBRIGADO" para numb Por terem gostado deste post :
biaiki (28-02-2010), bululo (12-08-2009), cowboy furioso (26-05-2009), debss (12-12-2009), ESSEEMUITOLEGAL (28-12-2009), guinho w.a (25-05-2009), Haohmaru22 (28-06-2009), IceBot (15-06-2009), Leandro559 (15-08-2009), lekter (04-04-2011), Nosyel (24-05-2009)