Ir para conteúdo

[tfs] Auto Ip! Detecta O Ip Sozinho! Testado!


eletross

Posts Recomendados

Tudo bem pessoal?

 

Venho trazer este code do BlackKnight para o XTibia, ele é muito util e simples!

Testei no meu TFS Mystic Spirit Patch 22 e funciono perfeitamente!

Toda vez que vc abrir o executavel de seu servidor, ele muda o ip no config.lua automaticamente, para isso ele usa o arquivo getip.js, que funciona como um detector que diz qual ip da maquina!

 

Ao trabalho...

 

Em otserv.cpp

 

----------------------------

 

Abaixo de:

ip = g_config.getString(ConfigManager::IP);

 

Adicione:

    if(ip == ""){  
       system("cscript getip.js >ip.txt");
       char buffer[256];
       std::string buffer2;
       std::ifstream myfile ("ip.txt");
       if(myfile.is_open()){
           myfile.seekg (0, std::ios::end);
           int length = myfile.tellg();      
           myfile.seekg (length-17, std::ios::beg);        
           while (!myfile.eof()){               
               myfile.getline (buffer,256); 
               if(atoi(buffer) > 0 && atoi(buffer) <= 255)
                   buffer2 = buffer2 + buffer;
           }     
           ip = buffer2; 
       }
       else
           ip = "127.0.0.1";       
   }

 

Ficando assim:

	ip = g_config.getString(ConfigManager::IP);
    if(ip == ""){  
       system("cscript getip.js >ip.txt");
       char buffer[256];
       std::string buffer2;
       std::ifstream myfile ("ip.txt");
       if(myfile.is_open()){
           myfile.seekg (0, std::ios::end);
           int length = myfile.tellg();      
           myfile.seekg (length-17, std::ios::beg);        
           while (!myfile.eof()){               
               myfile.getline (buffer,256); 
               if(atoi(buffer) > 0 && atoi(buffer) <= 255)
                   buffer2 = buffer2 + buffer;
           }     
           ip = buffer2; 
       }
       else
           ip = "127.0.0.1";       
   }

 

----------------------------

 

Abaixo de:

#include <string>
#include <iostream>
#include <iomanip>

 

Adicione (se é que ja num esta adicionado)

#include <fstream>

 

Ficando assim:

#include <string>
#include <iostream>
#include <iomanip>
#include <fstream>

 

----------------------------

 

Compila!

 

----------------------------

 

Coloque seu novo executavel na pasta de seu ot, junto com ele coloque o arquivo getip.js que esta anexado ao tópico!

 

----------------------------

 

No arquivo Config.lua de seu servidor, deixe desde modo:

ip = ""

 

----------------------------

 

PRONTO, AGORA TODA VEZ QUE VOCÊ ABRIR SEU OTSERV, NUM VAI TER QUE FICAR FAZENDO AQUELA TAREFA CHATA DE TROCAR IP NO CONFIG.LUA! Quero alguns comentarios! Teh proxima pessoal!

getip.rar

Editado por Eletross
Link para o comentário
Compartilhar em outros sites

Nun intendi! O que eu faço com esse arquivo? getip.js. Vc poderia colocar um link para download do Executavel já com essa função ae né?

 

Desculpem a burrisse é que eu sou maper entendo 0,1% de Programção

Link para o comentário
Compartilhar em outros sites

Gostei, com ip automatico não precisa mexer no config.lua, bom para os preguiçosos.

 

aonde eu acho otserv.cpp ? '-'

 

Nas souces do OT, veja os tutoriais de compilação q vc vai entender.

Link para o comentário
Compartilhar em outros sites

Gostei, com ip automatico não precisa mexer no config.lua, bom para os preguiçosos.

 

 

 

Nas souces do OT, veja os tutoriais de compilação q vc vai entender.

Aonde tem esses tutoriais ? o.O

 

ainda não achei o otserv.cpp

Link para o comentário
Compartilhar em outros sites

OTServ > Tutoriais - OTserv > Tutoriais de Programação

 

Vc ñ achou pq, provavelmente, o ot q vc baixou é editado e o pessoal nunca quer liberar as sources quando eles editam.

 

nun intendi como faz mais isso nen adianta muito ainda tem que mudar o IP fixo :(

 

A única função disso é para quando vc tiver testando o ot, e quer q outras pessoas entrem, sem q vc precise ativar o ip fixo

Link para o comentário
Compartilhar em outros sites

  • 4 years later...
  • 2 weeks later...

DrakyLucas , desculpa... mas estou com um problema parecido. E não foi esse script que me salvou.

 

O problema é o seguinte:

 

Aqui em casa a internet cai o server continua aberto mas os players não conectam. Queria um que já mudasse isso automaticamente sem eu precisar reiniciar o servidor.

Link para o comentário
Compartilhar em outros sites

  • 2 years later...
  • 3 years later...
×
×
  • Criar Novo...