ragjr

Membro
  • Total de itens

    113
  • Registro em

  • Última visita

Reputação

11 Contribuidor

2 Seguidores

Sobre ragjr

Últimos Visitantes

419 visualizações
  1. OT suga muito o tempo e para que haja diversão, é preciso um grupinho de amigos que animem a jogar (o que é dificil hoje em dia). Eu ficaria com bastante dúvida entre OT com vários amigos e Pre_RE pra ir woe. Resumindo, OT é bacana a cooperação, upar juntos, matar mvp, ir em mapas dificil com amigos e coisa do tipo. Pre-re é melhor pra woe ( na minha opinião claro )
  2. Você encontra isso facilmente aqui no fórum, basta pesquisar. Vou postar o código a ser alterado, mas na próxima pesquise antes por favor! O arquivo que deve ser modificado não é o 1ed_controlador.txt, e sim /gde/1ed/1ed_principal.txt: Procure pela linha: OnAgitBreak: Tudo que estiver no escopo deste OnAgitBreak (até o próximo end provavelmente) é a função executada quando alguém quebra o Emperium. Aqui está meu agitbreak (anunciando quem quebrou): OnAgitBreak: [email protected] = getcharid(2); set [email protected]$, strcharinfo(0); // Exibi��o do log de erro caso um personagem sem Cl� quebra um Emperium (Isso nunca deve ocorrer em padr�es oficiais - kRO/bRO). if ([email protected] <= 0) { @notice$ = "O personagem "+strcharinfo(0)+" ("+getcharid(0)+") quebrou o Emperium do Castelo:: "+strnpcinfo(2)+" sem um Cl�. Nenhum dado ser� salvo e o Emperium retornar�."; logmes [email protected]$; debugmes [email protected]$; donpcevent "Agit#"+strnpcinfo(2)+"::OnStartArena"; end; } // Ajustes dos Leveis de Ec�nomia e Investimento para o Castelo. [email protected] = getcastledata(strnpcinfo(2),2) - 5; if ([email protected] < 0) [email protected] = 0; setcastledata strnpcinfo(2), 2, [email protected]; // Ajustes dos Leveis de Defesa do Investimento para o Castelo. [email protected] = getcastledata(strnpcinfo(2),3) - 5; if ([email protected] < 0) [email protected] = 0; setcastledata strnpcinfo(2), 3, [email protected]; // Adiciona uma nova Cl� ao Castelo. setcastledata strnpcinfo(2),1, [email protected]; // An�ncio de Destrui��o do Emperium e sua nova Cl� ocupante. mapannounce strnpcinfo(2),"O Emperium foi destru�do.",bc_map|bc_woe,"0x00CCFF",FW_NORMAL,12; maprespawnguildid strnpcinfo(2),[email protected],6; // Repara os dados do Castelo, Desabilita a Kafra e Investimentos do Castelo. donpcevent strnpcinfo(0)+"::OnRecvCastle"; disablenpc "Funcion�ria Kafra#"+strnpcinfo(2); for ([email protected] = 4; [email protected] <= 9; [email protected]) { setcastledata strnpcinfo(2), [email protected], 0; } // Limpa os dados dos Guardi�es, caso a nova Cl� n�o tenha habilidades para usar Guardi�es if( getgdskilllv([email protected],10002) == 0 ) { for ([email protected] = 10; [email protected] <= 17; [email protected]) { setcastledata strnpcinfo(2), [email protected], 0; } } announce "O jogador ["[email protected]$+"] do cl� [" + getguildname([email protected]) + "] consquistou o castelo [" + getcastlename(strnpcinfo(2)) + "].",bc_all|bc_woe; // Readiciona o Emperium e mostra a nova Cl� ocupante. sleep 500; // Slow down script execution slightly. if( agitcheck() ) donpcevent "Agit#"+strnpcinfo(2)+"::OnStartArena"; sleep 7000; end; Além de exibir o nome de quem quebrou, também retirei o tempo pro anúncio ser enviado. Originalmente, tem uns 3 segundos após a emperium cair antes da mensagem ser lançada, neste meu código vai lançar assim que a emperium cair. OBS: Alguns caracteres estão bugados pois copiei o código pela linha de comando do linux, e isso provavelmente bugou a codificação. Edite os caracteres bugados (estão como ?) para o desejado. Recomendo fazer um backup do seu 1ed_principal.txt antes de editar, pois se ele bugar sua woe vai parar de funcionar.
  3. Olá. Vou dar uma olhada. Obrigado pela sugestão. Sabe me dizer qual é o post que você encontrou isso? Vlw
  4. Atualmente estou envolvido em outro projeto grande de desenvolvimento, e está sugando meu tempo. O escopo do projeto termina em novembro. Após essa data poderei ajudar com scripts. Penso também em fazer um editor de texto próprio para o brathena usando analise léxica e sintática, pois isso facilitaria a vida de todos os scripters do bra. Atualmente só conheço plugin do notepad++, mas lembrando que ele só faz a analise léxica (se os tokens do código existem), mas não verifica a analise sintática (se os tokens fazem sentido de ordem). Após o término do meu projeto, irei tentar contribuir com isso! Boa sorte na retomada.
  5. A principio eu rodei com saida para log.txt, mas como eu uso o brathena-start, os logs ficaram tudo juntos com os do map e char server, e ñ deu de ver nada. Depois rodei o login separado em uma screen para conseguir recuperar a saida quando o processo morreu. Mas por coincidência, veio a morrer o processo no meio da woe, e eu tive que reiniciar as pressas, perdendo a screen kkk Mas vou rodar o login separado apontando a saida pra um login.log.
  6. Entendi. Suspeitava que o char/map pegava a informação do player e enviava pro login eles mesmos, pois já vi que eles se conectam no login por conta própria. Nesse caso que você diz, então provável que eles se conectem no login e o login repassa quando a autenticação é aceita. Tem alguma ideia do que pode estar causando isso? Não fiz nenhuma modificação na SRC tão profunda assim. A mais profunda que fiz foi o gepard, que imagino que não cause problemas. Em ultimo caso vou fazer uma tarefa cron para rodar o login novamente sempre que ele morrer, verificando se está ativo a cada 1 minuto. Isso é até tranquilo de fazer, e daria certo, visto que quando o login morre e volta o char e o map conectam nele novamente sem precisar serem reiniciados. O que acha HD?
  7. Olá. Meu login-server está parando sozinho pelo menos uma vez por semana. O login-server para, mas o map-server e o char-server continuam operando normalmente. Alguém sabe se tem algum crash comum do login-server que faz ele parar, ou algum problema parecido? Não consegui buscar a saida para ver se tem algum erro. Minha suspeita: Meu login-server está aberto para todos. Talvez ele esteja recebendo ataques, muitos telnets na porta dele e por segurança ele se fecha sozinho após erros no login. É possível eu fechar o login-server para que somente meu servidor se conecte? (Eu sei fazer isso, digo... o login-server precisa ficar aberto para os jogadores ou somente para o char/map-server conseguirem se conectar nele? Caso o login-server tenha realmente que ficar aberto, aceito outras sugestões também.
  8. Verdade, por isso os servidores profissionais optam por pagar 700 reais em um gepard. Só pra ter a inicialização com splash bonitinha mesmo.
  9. BR eu recomendo a luminushost. No exterior tem a paglia e a luminus também.
  10. KAO. Não comprem na virtushost. Só dou essa dica. Basta verem no reclameaqui da virtus: https://www.reclameaqui.com.br/empresa/virtushost/ O serviço é bom só até te lançarem um ddos. Em 10 dias com o servidor, pagando a proteção extra de 100 reais (100 reais a mais de anti-ddos... cem reais), o servidor caiu em todos os 10 dias. E ainda trollaram em uma migração que eu perdi meu ip fixo e fiquei umas 4 horas offline por conta disso. Sério, jamais comprem nessa empresa fuleira, a não ser que queiram dor de cabeça ou seja um servidor pequeno com menos de 15 jogadores (nesse caso vc ñ deve receber ddos. mais de 15 players alguem já vai te atacar, garanto, e ai o servidor vai cair, porque a proteção de 100 reais dele é um lixo... imagina sem os 100 reais). @Edit Atualmente estou utilizando a luminus, gostei do serviço deles, 10x melhor que a virtuslixohost. 10 dias já com eles e não caiu ainda. O ping é o mesmo, e o atendente sabe conversar sem ser mentiroso. O mesmo me disse que o melhor caminho era um host no exterior, que teria proteção e etc. Para a empresa isso seria deslucro, pois o host la é muito mais barato, e ele ainda sim me recomendou. Entretanto não quis e continuo no br, e ainda sim está aguentando 100x mais q o virtus.
  11. Off-tópic, não sábia que era realmente possível exibir sprites de equipamentos que não fossem topo/médio/baixo. Interessante, sempre me perguntei isso mas nunca parei pra testar. O procedimento é o mesmo? É possível fazer em botas, acessórios e armaduras também? Uso uma data de 2014, naquela época era possível ou é mais recente isso? Gostei bastante, talvez eu utilize se não tiver nenhum risco de bugs em datas 2014 :@
  12. Então solicite suporte no eathena. São dois emuladores diferentes. Aqui ninguém vai saber qual o erro mesmo. E se o emulador tem um erro tão grave destes, acho que é melhor você baixar outra versão... porque se até isso ta bugado capaz de ter várias outras coisas bugadas.
  13. Colocasse na descrição. Tenta baixar um emulador zerado para ver se isso ocorre. Você está usando a ultima versão?
  14. Veja: Este era meu erro. Não sei se é igual ou não. Se não for isso, provavelmente seu acc_algumacoisaquenaolembro está incorreto e apontando o caminho errado, então você vai ter que baixar novamente. Uma coisa importante... Se o erro estiver ocorrendo quando você vê o item no alt+e ou clica nele, o erro está na verdade no itemInfo.lub (pasta system). Então faz oq eu disse de salvar como utf-8 nesse arquivo. Se o erro estiver ocorrendo quando equipa o equipamento ou entra na tela de alguém equipado, então o erro é onde eu disse mesmo.
  15. Você usa o brathena né? 1 - Abra seu banco de dados (provavelmente você utiliza pelo phpmyadmin). 2 - Selecione o banco de dados bra_db 3 - Clique em SQL (para utilizar um comando) 4 - Use o seguinte comando REPLACE INTO item_db VALUES(607,'Yggdrasilberry','Fruto de Yggdrasil',0,5000,NULL,300,NULL,NULL,NULL,NULL,NULL,4294967295,NULL,2,NULL,NULL,NULL,NULL,1,NULL,NULL,NULL,1,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,' percentheal 100,100; ','',''); 5 - Execute 6 - Reinicie o servidor e veja se o problema foi consertado. (Esse é o código da ygg pre-re. Se utiliza sistema RE e isso funcionar depois te mando o código dela RE) Explicação: com isso você vai voltar a ygg para o original do brathena. Se não funcionar, é bem provável que você tenha feito alguma modificação na src ou algo do tipo, ai já sugiro desfazer ou baixar o emulador do 0 e ir caçando onde está o problema.