Ir para conteúdo

Líderes

Conteúdo Popular

Exibindo conteúdo com a maior reputação em 04/07/16 em %

  1. Skulls

    [BETA] Basic Attack System

    Boa noite galera, Trago hoje um gifzinho rápido do sistema de basic attack que estou desenvolvendo. Ele consiste em uma customização completa do ataque básico do jogador sem precisar de armas. A customização abrange desde efeitos, dano base, tipo de dano, distância e skill base até critical, dodge, rajadas, cleave e outros. O inicio desse sistema foi postado aqui no fórum por mim, mostro pra vocês agora a evolução dele e o leque de possibilidades que aquele sisteminha que postei abre quando alterado. Espero que gostem. Abraços,
    8 pontos
  2. Skulls

    [TFS 1.2] Criando novos CombatTypes

    Bom dia galera, tudo bem? Hoje vou ensinar uma coisinha simples, porém bem útil: criar um novo tipo de combate. Tipos de combate representam o tipo do dano que você está causando naquele momento. Basicamente, eles são os responsáveis pelo efeito básico daquele tipo de combate (além do efeito e o efeito de distância que você pode adicionar) e também pela cor do texto de dano. Bom, vamos lá. 1. Criação do novo tipo no Enum O primeiro passo para a criação do novo tipo de combate é adicionar o referencial ao seu combate novo no enumerador (enum) de tipos de combate (CombatType_t). Para isso, vá até o arquivo de cabeçalho enums.h, procure por "enum CombatType_t" e, após o último enum, coloque o nome que quer dar ao seu tipo de combate. Eu escolhi chamar o meu de COMBAT_CRITICAL, para fazer um dano diferente quando o acerto for crítico. Ficou assim: enum CombatType_t { COMBAT_NONE = 0, COMBAT_PHYSICALDAMAGE = 1 << 0, COMBAT_ENERGYDAMAGE = 1 << 1, COMBAT_EARTHDAMAGE = 1 << 2, COMBAT_FIREDAMAGE = 1 << 3, COMBAT_UNDEFINEDDAMAGE = 1 << 4, COMBAT_LIFEDRAIN = 1 << 5, COMBAT_MANADRAIN = 1 << 6, COMBAT_HEALING = 1 << 7, COMBAT_DROWNDAMAGE = 1 << 8, COMBAT_ICEDAMAGE = 1 << 9, COMBAT_HOLYDAMAGE = 1 << 10, COMBAT_DEATHDAMAGE = 1 << 11, COMBAT_CRITICAL = 1 << 12, COMBAT_COUNT = 13}; 2. Adicionar "referências" Esse passo consiste em criar facilidades para acessar seu tipo de combate em alguns casos. Para isso, vamos até tools.cpp e vamos alterar o vetor combatTypeNames (que cria uma string que referencia o nosso combate) e a função combatTypeToIndex (indexa os combates), adicionando o nosso novo combate ao final de cada um deles de forma coerente. O meu ficou assim: CombatTypeNames combatTypeNames[] = { {"physical", COMBAT_PHYSICALDAMAGE}, {"energy", COMBAT_ENERGYDAMAGE}, {"earth", COMBAT_EARTHDAMAGE}, {"fire", COMBAT_FIREDAMAGE}, {"undefined", COMBAT_UNDEFINEDDAMAGE}, {"lifedrain", COMBAT_LIFEDRAIN}, {"manadrain", COMBAT_MANADRAIN}, {"healing", COMBAT_HEALING}, {"drown", COMBAT_DROWNDAMAGE}, {"ice", COMBAT_ICEDAMAGE}, {"holy", COMBAT_HOLYDAMAGE}, {"death", COMBAT_DEATHDAMAGE}, { "critical", COMBAT_CRITICAL },}; size_t combatTypeToIndex(CombatType_t combatType){ switch (combatType) { case COMBAT_PHYSICALDAMAGE: return 0; case COMBAT_ENERGYDAMAGE: return 1; case COMBAT_EARTHDAMAGE: return 2; case COMBAT_FIREDAMAGE: return 3; case COMBAT_UNDEFINEDDAMAGE: return 4; case COMBAT_LIFEDRAIN: return 5; case COMBAT_MANADRAIN: return 6; case COMBAT_HEALING: return 7; case COMBAT_DROWNDAMAGE: return 8; case COMBAT_ICEDAMAGE: return 9; case COMBAT_HOLYDAMAGE: return 10; case COMBAT_DEATHDAMAGE: return 11; case COMBAT_CRITICAL: return 12; default: return 0; }} 3. Definir o efeito e o dano do nosso combate Agora devemos definir como o nosso combate vai se comportar dizendo a cor do dano gerado e qual efeito associado a ele. Para isso, vamos até a função combatGetTypeInfo dentro de game.cpp. Dentro de switch (combatType), após o último combate e antes do default, vamos adicionar as características do nosso combate. O meu ficou assim: case COMBAT_CRITICAL: { color = TEXTCOLOR_MAYABLUE; effect = CONST_ME_NONE; break;} Isto é, meu tipo de combate crítico tem a cor azul maia e nenhum efeito. 4. Informar ao LUA seu novo tipo de combate O último passo é simplesmente enviar para o lua o novo tipo de combate. Para isso, vá até luascript.cpp e, logo abaixo de: registerEnum(COMBAT_DEATHDAMAGE) adicione: registerEnum(COMBAT_CRITICAL) Pronto, após seguir esses passos o seu novo tipo combate foi criado, referenciado, caracterizado e definido em lua. Para utilizá-lo basta chamá-lo no lugar certo COMBAT_CRITICAL. Bom, por hoje é só pessoal, espero que gostem. Abraços
    5 pontos
  3. Global Full [CLIENTS COMPATÍVEIS] 10 e 11.5. [BUGS E DOWNLOAD] BAIXEM E REPORTEM EM: OTXGlobal Full [FEATURES] NEW DEPOT, NEW SPAWN, NEW CAST SYSTEM, NEW NPC SYSTEM VIA BANK BALANCE, NEW CRITICAL BOOST SYSTEM, NEW POTIONS, REWARD SYSTEM, PREY ... [MAPA] FULL GLOBAL MAP WITH FEYRIST TODAS CIDADES E NOVAS AREAS TODAS QUESTS FUNCIONANDO! [EVENTS] WAR-ANTIENTROSA [CONTATO] SKYPE: onjogos WHATSAPP: (66) 998427-4493 [Créditos]Tfs 1.2 Developers -Zbizu - Pitis91 - MatheusMkalo - Gesior - Lundrial - M4G0 - Fish04k - Printer - Djarek - Ninjalulz - Slavidodo - Thexamx - Socket2810 - Ciroc -Absolute - Gordonbay - Mitsuig - Alissonfgp - Gunz - Bruno Minervino - Comedinha -Hirako - Maya - Mattyx14 – Darkjav - Viking Tibia
    2 pontos
  4. LipeMihawk

    Mapa : world naruto shippuden

    REMOVIDO.
    2 pontos
  5. já faz um tempo venho percebendo vários usuários novos aqui no fórum em busca de ajuda achei isso muito bom já que o fórum voltou depois de anos dormindo hehe, bom porém venho percebendo que o pessoal está diferente quanto os de antigamente. Por exemplo eu quando era leigo fazia cada pedido aqui no fórum absurdo e muitas das vezes esquecia e ia mecher procurar uma maneira de entender e assim arrumar o problema sozinho porém a turma de hoje quer tudo de mão beijada mastigado e que a gente ainda ajude a engolir o pessoal não quer correr mas atraz de nada aprender com os erros e assim melhorar e pode vir a ser um novo colaborador ao fórum eles vem aqui pedem o que precisa e foda-se certo que tem muitas pessoas de boa fé que querem ajudar mas percebo que eles pedem coisas que basta prestar atenção ler direito que o próprio erro está falando onde o problema se localiza e em qual linha mas parece que eles tem preguiça de ler apenas posta o erro e espera alguém de boa fé vir ajudar e ainda quer ter um bom servidor com uma atitude dessa depois se pergunta porque tem tão poucos players no servidor isso é facil responder o cara só copia não aprende então por consequência ele não consegue inovar o servidor dele para atrair novos players. Bom acho que isso foi mais um desabafo que um assunto kkk mas é isso ai espero que compreendam o que eu acho sobre essas pessoas hehe
    2 pontos
  6. Marco Oliveira

    Pips Membros

    Acredito que seja um problema, então venho reporta-lo............ As pips dos membros aparecem muito pequenas, as vezes torna até impossível de ler para quem tem problemas de vista hahaha.. Era pra isso está acontecendo ou é só um problema mal resolvido ?
    2 pontos
  7. Avuenja

    Pips Membros

    Isto mesmo @Marco Oliveira, os de equipe estão corretas, pois são pips de Grupo, e não são ranks de post. O método de upload de imagem é diferente em ambos os casos. E esta limitação de resolução acontece apenas nos ranks de posts. Como disse estamos vendo esta questão, e logo creio que chegaremos a uma solução. Abraços
    2 pontos
  8. Boa tarde galera. Hoje trago um pequeno fix de compatibilidade na troca de informação básica do player entre tfs 1.2 e OTC. O que acontece é que o TFS envia uma coisa e o OTC está preparado para receber outras. A solução prevista aqui não foi testada em cipclients, portanto, não me responsabilizo. Envios que o ptc não utilizava e recebimentos que o tfs não enviava foram deletados. Chega de falar, mãos a obras. Primeiro passo: vá na source do OTC, no arquivo protocolgameparse.cpp, e altere a função void ProtocolGame::parsePlayerInfo(constInputMessagePtr& msg) pela mostrada abaixo: void ProtocolGame::parsePlayerInfo(const InputMessagePtr& msg){bool premium = msg->getU8(); // premiumint vocation = msg->getU8(); // vocationm_localPlayer->setPremium(premium);m_localPlayer->setVocation(vocation);} Segundo passo: agora no servidor, va em ProtocolGame.cpp, procure por void ProtocolGame::sendBasicData() e substitua por: void ProtocolGame::sendBasicData(){NetworkMessage msg;msg.addByte(0x9F);msg.addByte(player->isPremium() ? 0x01 : 0x00);msg.addByte(player->getVocation()->getClientId());writeToOutputBuffer(msg);} Bom galera, por hoje é só. Espero que ajude. Abraços
    2 pontos
  9. Caronte

    [aula 1] lógica de programação

    Aula - Lógica de programação fala pessoal, essa aula é a primeira do conjunto que estarei criando para ensinar programação através da linguagem LUA, e depois, aprender como aplicar no tibia. as informações apresentadas a seguir são fundamentais para o apropriado entendimento da logica de programação, porém... Caso você esteja buscando a parte mais prática, pule para: Criando Algoritmos Sem mais delongas, precisamos entender o que é o conceito de lógica de programação, Lógica está contida em um conjunto de atitudes/eventos que tem um sentido por trás, lógica pode tomar várias formas e definições, porém, a que vamos aprender é Lógica de Computador, ela é EXTREMAMENTE necessária para você poder criar scripts, e programar códigos de qualquer tipo e linguagem. A lógica de computador não pode ser argumentada, essa lógica tudo é ou não é, não existe o meio termo ou argumento, ela pode ser entendida na Lógica de Aristóteles com a lei da não contradição, ou é verdadeiro, ou falso. Nós somos quase totalmente diferentes de máquinas, apesar do nosso cérebro funcionar também por eletricidade, a voltagem é fraca e ele não depende só de eletricidade, mas isso não vem ao caso, o que interessa é a nossa maneira de pensar e agir, aí sim, é totalmente diferente de um computador, Porque Será? Ao pensarmos, nosso cérebro trabalha no consciente e inconsciente, alguns cientistas acreditam que a decisão acontece já no inconsciente, através de experiências já vividas e considerações, ou seja, você não sabe que seu cérebro já tomou a decisão, até ficar consciente dela (não acredito 100% nisso, essa informação não tem muita base, tem deduções), mas o que temos que entender é que a gente avalia de acordo com o nosso conhecimento já adquirido, e por meio disso, a decisão é tomada através do nosso conhecimento de certo ou errado, e a decisão não precisa ser exata. Já o computador trabalha através de instruções de linguagens não sofisticadas (códigos de máquina, exemplo: código binário, 0 ou 1), algo que é praticamente incompreensível para os humanos (se não fosse compreensível, não existiria computador), por causa da dificuldade de programar em código de máquina foi criada uma linguagem chamada Assembly que torna muito mais fácil programar, e depois dessa linguagem, foram criadas outras mais sofisticadas. Criando Algoritmos. Agora o que precisamos entender é que a nossa maneira de pensar na resolução de problemas é diferente de como devemos escrever para um computador entender, o computador é muito mais burro na hora de interpretar as ideias, pois ele não tem quase nada para se basear além das suas instruções. Para explicar, vou criar um algoritmo simples para mandar um humano fazer uma determinada tarefa, comprar pão, e depois, vou explicar porque um computador não pode usar o mesmo algoritmo. Vou usar os seguintes substantivos: Pão Dinheiro Troco Casa Padaria Compra Vou usar os seguintes verbos: Pegar Ir / Voltar Fazer Dar Essas são as palavras chaves. Os verbos numa linguagem normal são geralmente chamados de Sintaxe (ou parte dela), ela é quem dirige a logica, e que faz o script ter sentido. Já os substantivos são dados valiosos, são variáveis! , variável é uma incógnita sobre o qual você tem controle, e sabe o valor , ela serve para você resumir dados e guardar, vão ser muito usadas se você quiser programar bastante, ela ajuda a identificar dados, e tornar o programa mais legível. • Vamos ao algoritmo: Bom, uma tarefa com instruções tão gerais não poderia ser seguida por um computador. A menos que sejam funções, porém isso não é assunto para agora. O fato é que essas instruções são bem mais do que a quantidade necessária para um humano, você pode falar: “Vá à padaria comprar pão”, e ele irá executar perfeitamente. Porém, se você quer dar um algoritmo de como ir para a padaria para um computador executar terá que ser bem mais específico e falar todas as tarefas que ficam subentendidas para um humano, mas que não são nem um pouco claras para um computador. Para o computador entender algo parecido do que o humano entende, seria necessária muita inteligência artificial, o que não contamos quando vamos programar em LUA, novamente falo, o computador é burro. Agora vamos ao algoritmo mais próximo do que um computador precisa, vamos precisar adicionar mais termos ao nosso vocabulário: Expressões condicionais: E alguns verbos e termos a mais. Vamos ao algoritmo: As expressões condicionais servem para verificar antes de fazer alguma tarefa, assim, evitamos possíveis erros, por exemplo, caso não tenha dinheiro! Se você mandar o computador pegar o dinheiro e o valor dinheiro não existe, irá gerar erros no seu script. Expressões condicionais não servem somente para verificar, servem para selecionar também, por exemplo, uma Quest que precise de level 20 para entrar. Esse algoritmo acima já dá uma parte de script, se escrito como LUA. A expressão condicional que acabei de passar é considerada fácil, mas para uma Quest é simplesmente isso e mais algumas coisas simples. Bom, esse é o final da aula de algoritmos, gostaria de saber se fui claro em relação ao tutorial e se alguma coisa passou despercebida que merece alguma atenção a mais, assim posso editar o tópico para ficar melhor. Exercício: Resposta: [Aula 2] Booleanos e Operadores ---->>
    1 ponto
  10. Global Full com Cast e Eventos Servidor recomendado para ser utilizado em Linux (Debian 6) IMPORTANTE VOCÊ LER AQUI Há um tempo atrás negociei um servidor com Neto Sanches, também conhecido como otrackerrr, em um outro fórum que tem o perfil de NTRemondini. O mesmo me roubou R$450 reais, e eu estou postando o servidor que recebi para vocês, pois para quem monta servidores, tem scripts utilizáveis, mas não recomendo utilizar o server antes de uma revisão, pois foi passado por um ladrão. Felizmente consegui meu dinheiro de volta, e alerto vocês do XTibia para tomarem cuidado com o mesmo, caso tenha algum problema com este tópico me avisem e eu posto provas do mesmo. O skype do ladrão é netosremondini. Agora vamos ao servidor: Eventos e Features War of Emperium Trainers Offline Capture the Flag Battlefield Event Lottery System Itens VIPs já configurados Raids Automáticas Thais Editada Dota Event Guild Points Global Server Versão: 8.60 Mapa: 100% Scripts: 100% Sistemas:. 100% Items: 100% Monstros: 100% Npcs: 100% O Distro é TFS e aparentemente só roda sem bugs no Debian 6 Cidades Algumas cidades VIPs Ankrahmun Ab'Dendriel Carlin Darashia Edron Yalahar Kazordoon Liberty Bay Port Hope Svargrond Thais Venore Farmine Zao Cormaya OTServ Completo http://www.mediafire.com/download/rgx46b9220nsjy7/Global_by_Neto_Remondini.zip Scan https://www.virustotal.com/en/file/f09a547368897dcc857eddc11d82f7084b3bf7ecf25e41bee57aceb224cf36fc/analysis/1459977122/ Recomendo utilizarem os arquivos do servidor, como eventos, scripts... Tem coisa que é difícil encontrar na net de graça.
    1 ponto
  11. 1 ponto
  12. Bom dia, postarei uma Lista de Servidores Derivados encontrados aqui na comunidade xT. Não colocarei todos, e sim, aqueles que serão úteis para algumas pessoas. Então vamos lá! Derivado Poketibia Derivado Dragon Ball, Naruto, Biohazard Peço à quem postar servidor novo, para que me mande uma MP ou comentar até mesmo aqui no tópico para que eu possa fixar o tópico aqui. Obrigado!
    1 ponto
  13. Skulls

    [TFS 1.2] Rework sendAnimatedText

    Fala galera, tudo bem? Hoje, para estrear a cara nova do fórum, trago pra vocês uma função bem simples, porém muito legal e útil. Nos TFS 1.X a função sendAnimatedText foi retirada. O motivo aparente, pelo que procurei saber, é que a função não mais é suportada em cipclients. Porém, o suporte a função continua funcionando no OTC e, por isso, decidi refazê-la e trazer para vocês. O tfs 1.2 possui a opção de enviar número animados pela sendTextMessage, porém só funciona para números. sendAnimatedText -> Envia um texto animado na posição escolhida. Ex: "critical" animation, damage animation, etc. Sem mais delongas, vamos ao que interessa. Em luascript.h, abaixo de "// Game", cole: static int luaGameSendAnimatedText(lua_State* L); Em luascript.cpp, abaixo de "// Game", coloque a nova função: int LuaScriptInterface::luaGameSendAnimatedText(lua_State* L) { // Game.sendAnimatedText(position, text, color) TextMessage message; message.position = getPosition(L, 1); message.text = getString(L, 2); message.primary.color = getNumber<TextColor_t>(L, 3); if (message.position.x && message.position.y && message.position.z) { SpectatorVec list; g_game.map.getSpectators(list, message.position, false, true); for (Creature* spectator : list) { spectator->getPlayer()->sendAnimatedText(message); } pushBoolean(L, true); } else { lua_pushnil(L); } return 1;} Feito isso agora vá até player.h, procure por void sendTextMessage e logo após a segunda função sendText message cole: void sendAnimatedText (TextMessage& message) const { if (client) { client->sendAnimatedMessage(message); } } Para finalizar vamos criar o protocolo de envio das informações do nosso efeito de texto para o cliente. Vamos criar a chamada da função em protocolgame.h. Logo após "void sendTextMessage(const TextMessage& message);" coloque: void sendAnimatedMessage(const TextMessage& message); Vá em protocolgame.cpp, procure pela função "void ProtocolGame::sendTextMessage(const TextMessage& message)" e cole logo após seu fim: void ProtocolGame::sendAnimatedMessage(const TextMessage& message){ NetworkMessage msg; msg.addByte(0x84); msg.addPosition(message.position); msg.addByte(message.primary.color); msg.addString(message.text); writeToOutputBuffer(msg);} É isso galerinha, após seguir esses passos você terá a função sendAnimatedText funcionando certinho. Para usá-la basta, no lua, usar a função como no exemplo abaixo: Game.sendAnimatedText(Creature(attacker):getPosition(), "ATACOU", TEXTCOLOR_SKYBLUE) Abraços,
    1 ponto
  14. Show Wild Pokemons Caught Fala galera, beleza? Então, hoje tou aqui pra mostrar pra vocês o sistema de mostrar os pokemons selvagens que capturei. Bom, o sistema é bem simples e legal, ele marca todos os pokemons selvagens que capturei com um ícone de pokebola abaixo do nome, somente quem capturou tal pokemon consegue ver o ícone. Tem como ativar e desativar essa função utilizando o comando (!wildcaught) Sistema compatível com OLDClient (Na versão que estou usando agora) e no OTClient.
    1 ponto
  15. Olá pessoal, Esse é meu primeiro tutorial e venha aqui deixar um pouco da minha experiência montando meu primeiro servidor de tibia Linux.Sou formado em engenharia da computação porém na hora de montar o servidor tive várias dificuldades e encontrei pouca informação então deixarei aqui o passo a passo que utilizei. *** UTILIZAREI O DISTRO DEBIAN 8.4**** *** É importe usar essa destribuição do debian pois já vem com a biblioteca libboost-system-dev 1.55 necessária para os servidores OT novos**** Programas para instalar PuTTY para conectar via SSH. (aqui) WINSCP para ter acesso aos arquivos da máquina. (aqui) Server do tibia OTSERV SOURCES COM CAST WEBSITE COMPATÍVEL DATABASE Usarei nesse exemplo o server desenvolvido pelo pessoal (OTLAND - TFS TEAM) e Bruno Minervino e algum outro contribuidor) para ver o tópico oficial clique aqui . ETAPA 1: Instale e execute o programa WinSCP. Em HOST(1) coloque o IP do seu servidor linux EM PORT NUMBER (2) coloque a porta do serviço ssh (porta default é a 22) EM User Name (3) o usuário que irá logar (recomendou usar o root por questões de permissões) Em Password (4) colocar a senha do usuário Clique em Login. 2. Crie uma pasta no Desktop com o nome "otserv" dentro da pasta deverá conter os arquivos OTSERV,SOURCES COM CAST e DATABASE ficando as pastas e arquivos iguais a imagem abaixo: 3. Volte ao WinSCP e copiei a pasta otserver criado no seu desktop para o diretório / do linux : 4. Logue no putty e digite o seguinte comando no servidor: apt-get update Logo depois: apt-get install cmake build-essential liblua5.2-dev libgmp3-dev libmysqlclient-dev libboost-system-dev apache2 php5 libapache2-mod-php5 php5-mysql mysql-server phpmyadmin ** Selecione S para instalar os pacotes ** Vai abrir duas telas com caixas de seleção, a primeira você marque "apache2" e dê enter, na segunda você seleciona "yes" ** Irá pedir para definir uma senha para o MySQL defina uma senha e não esqueça da mesma. ** Irá pedir para definir uma senha para o phpMyAdmin defina uma senha e não esqueça da mesma. Etapa 2 (compilação): Digite: cd /otserv/sources e aperte o enter. 2.Digite: mkdir build e aperte o enter. 3. Digite: cd build e aperte o enter. 4. Digite: cmake .. e aperte o enter 5. Digite: make e aperte o enter. ***** Após compilar a tela deverá ser como essa na imagem abaixo : 6. Digite: mv tfs /otserv e aperte o enter. ***O SERVER JÁ ESTÁ COMPILADO!!!! Etapa 3 (Importando banco de dados): Digite no browser http://seuip/phpmyadmin/ na tela de login digite: Utilizador : root Palavra-Passe : **senha que você colocou na primeira etapa** 2. Clique em "BASE DE DADOS"(1) -> Digite "global" no nome do banco (2) -> Clique em "CRIAR"(3) **deverá aparecer uma mensagem em amarelo escrito: "A base de dados global foi criada." 3. Clique em "global"(1) -> "Importar" (2) -> "Escolher arquivo" (3) -> Selecione o arquivo .sql (4) dentro da pasta OTSERV criada no desktop -> clique em "EXECUTAR" (5) **deverá aparecer uma mensagem em amarelo escrito: "Import terminou com sucesso, 159 queries executados. (servidornovo.sql) " Etapa 4 (adicionando e configurando o site): 1. Passe via WinSCP (conforme explicado na etapa 1) os arquivos WEBSITE COMPATÍVEL que já deve ter sido baixado e extraido do zip para "/var/www/html/" 2. Digite no putty : vim /var/www/html/config/config.php **iremos modificar apenas as configurações chaves para o servidor funcionar, caso queira mudar xp do server,loot etc deverá modificar depois esse arquivo: # Account Maker Config$config['site']['serverPath'] = "/otserv/"; #Aqui deve ficar o caminho até o config.lua da pasta do seu servidor OT **Não se esqueça de salvar as edições** 3. Siga para a Etapa 5 abaixo. **** ATENÇÃO: PARA O SITE FUNCIONAR A ETAPA 5 (ABAIXO) DEVERÁ TER SIDO EXECUTADA. ******** Etapa 5 (configurando arquivo config.lua): 1. Digite no putty: vim /otserv/config.lua Aperte o enter **iremos modificar apenas as configurações chaves para o servidor funcionar, caso queira mudar xp do server,loot etc deverá modificar depois esse arquivo: -- Connection Config-- NOTE: maxPlayers set to 0 means no limitip = "167.114.111.25" -- altere esse ip para o ip do seu servidor **Não se esqueça de salvar as edições** 2. Digite no putty: /etc/init.d/apache2 restart Aperte o enter Etapa 6 (Testando o servidor e o site): 1. Para testar o site digite no browser o ip do seu servidor, se tudo estiver certo irá entrar no site. **** ATENÇÃO: PARA GARANTIR QUE TODAS AS FUNÇÕES ESTÃO FUNCIONANDO TESTE O SITE TODO ******** 2. Para testar o servidor digite : cd /otserv Aperte o enter 3. Digite: ./tfs Aperte o enter **** SE APARECER IGUAL A IMAGEM ABAIXO SEU SITE ESTÁ ONLINE. ******** DICA: ** Caso na hora de subir o server depois de MAP ele aparecer Kill ou Morto seu servidor não possui memória suficiente para tal será necessário aumenta-la. CRÉDITOS: @Anuudek Tutorial que usei como base aqui @MitSuig Tutorial que peguei o server tibia aqui Qualquer dúvida podem me enviar um email: murilosm@hotmail.com Obrigado.
    1 ponto
  16. Este valor é basicamente a chance, em porcentagem, do pokémon shiny nascer. Há dois possíveis valores, um para a tabela raros e um para a tabela shinys. Se você estabelecer o valor como 5, há 5% de chance de um pokémon shiny nascer. 10, 10% de chance. 70, 70% seria a chance. O mesmo vale para valores decimais acima ou iguais a 0.1. Ou seja, você pode configurar valores como 0.5 (0.5% chance de respaw), 0.75 (0.75% a chance), etc. No caso do exemplo postado no tópico, há 6% de chance dos pokémons da tabela shinys nascerem e 3% de chance do pokémon da tabela raros nascer.
    1 ponto
  17. LipeMihawk

    Mapa : world naruto shippuden

    Sim, disponibilizei o mapa exatamente para que vocês possam usar e fazer o melhor proveito dele.
    1 ponto
  18. Tonynh

    Novo site do xtibia

    QUE EMBED ROXXXXXX
    1 ponto
  19. Poccnn

    Ajuda Script aura

    Reporta o topico como resolvido.
    1 ponto
  20. Cara otimo tutorial parabens, mais isso funciona para sqlite ? tenho um server sem site por acc manager 8.54 (0.3.6) com soucer , e os codigos para copilar sao os mesmos ou nao ? me ajuda por favor + REP
    1 ponto
  21. luizmachado1

    ajuda com script

    Tentar Fazer 1 Tabela +/- assim local config = { remove = 2160, quantidade = 100, } if doPlayerRemoveItem(cid,config.remove, config.quantidade) == TRUE then ou poder tentar assim
    1 ponto
  22. Poccnn

    Ajuda Script aura

    Não tenho skype.
    1 ponto
  23. Poccnn

    Ajuda Script aura

    Na função playerlearninstantspell muda o cid por char que no caso seria o player em questão. Descreve melhor o ocorrido, se gera error no console, derruba o servidor, apenas laga mas funciona etc. Qual servidor você usa?
    1 ponto
  24. Poccnn

    Ajuda Script aura

    Descreva o ocorrido.
    1 ponto
  25. Poccnn

    Ajuda Script aura

    em spell.xml nessa tag da magia, mude o valor de learnspell para 1. Adicione no script de talkactions/aura.lua, dentro do escopo para God essa função: Somente a quem o God favorecer, poderá dispor dessa magia.
    1 ponto
  26. Poccnn

    Atual crise política Brasileira

    Então em sua concepção seria melhor fazer uma reforma geral da política governamental; constituição e leis. Essa é à hegemonia do capitalismo que doi criada para dar certo apenas para os ricos. Eu acho que o Brasil tem solução. Educação muda o mundo.
    1 ponto
  27. Poccnn

    Ajuda Script aura

    Vai em speels.xml e na tag dessa magia verifica se existe algo como learnspell isso faz com que o player só possa usar se aprender essa magia, então você pode adiciona-la pelo god.
    1 ponto
  28. Detectei que algumas vezes o spawn dos enemys estão saindo no lugar errado, vou resolver isso o mais rápido possível.
    1 ponto
  29. Olá pessoas, eu serei seu anfitrião essa noite :cool: Não sei se alguns de vocês me conhecem mas já trouxe bastante servidor de WoDBO e PokeTibia antigamente, meu nome era "CrazzyMaster". Juntamente com "Bianco" nós faremos história. Enfim, eu sempre curti jogos de sobrevivência apocalipse, então resolvi voltar depois de tanto tempo e abrir um servidor totalmente sério e dedicado. "O que terá no servidor?" Um servidor de sobrevivência na plataforma tfs é bem complexo, você pode fazer várias coisas, no momento estamos colocando: |Sistema de vasculhar - Lixo, entulhos, e mega drops de alguns monstros| |Sistema de tiros - os tiros serão por Target como sempre forão| |Sistema de montarias e veiculos - as montarias serão cavalos, e os veiculos serão carros, motos, caminhões, etc| |Sistema de fome e sede - estou tentando ao maximo adaptar esse sistema ao servidor| |Sistema de machucados/ferimentos - se você for atacado e se machucara terá que ter bandagens nas mãos, caso contrario irá sangrar| "Qual a previsão para ficar online?" Ainda é um mistério, mas o quanto antes possível. "Será um servidor pay to win?" Certamente não, o servidor contara sim com sua loja de itens e sistema vip, mas, a diferença vai ser variada, armas pouco mais fortes, vips terão acesso há area vip através de comando, vips poderão viajar pelo mapa com veiculos aquáticos ou através dos NPC's de viagem em cada final de mapa. Vips terão acesso a carros modificados. Deixem dúvidas e sujestões, abaixo deixarei um tópico de cada sprite nova que eu fizer. - SPRITES MODIFICADAS - ANTIGA - NOVA -
    1 ponto
  30. Avuenja

    Pips Membros

    Olá @Marco Oliveira, então por padrão é para isto estar acontecendo sim. A nova versão da plataforma da Invision que é a que usamos, deixa as imagens deste tamanho... Estamos trabalhando para que possamos ter as imagens no tamanho real novamente.
    1 ponto
  31. Caronte

    Maquina Difusora de helds

    @Pokemonultimatetwo, ele quis dizer se o atributo tem alguma relação com o item, pois para tirar o atributo e dar o item você precisa de um referencial, seria por exemplo uma tabela com itemids e atributos correspondentes aos ids. Vamos dar um exemplo: X Attack - id:2195 Então o atributo é attack, e o id é 2195, para isso, precisamos saber como funciona o seu sistema. Acho que o @zipter98 é melhor para te ajudar, por ele ser mais competente e ter experiência com poketibias...
    1 ponto
  32. Caronte

    Haha, querendo eliminar a fonte de lucro do fórum? O lucro é usado bem para o fórum, eu acho... Ou ele compra umas 100g
    1 ponto
  33. Caktchup

    O Novo Xtibia #02/3

    Nossa fiquei muito impressionado com essa interface do Xtibia. 1 vez quando entrei nesse novo estilo de fórum fiquei perdido kk, só que dps fui vendo fico lindo. Parabéns Xtibia
    1 ponto
  34. E quanto ao sistema de held item que você usa? O valor armazenado no atributo heldx por caso é um ID de item?
    1 ponto
  35. Poderíamos saber como é a estrutura da máquina? Para fazer um código adequado e com configuração simples, precisamos saber se há alguma relação entre a posição do slot e do botão. Por exemplo, como acontece no caso da máquina de boost, em que o container da pokebola se localiza sempre à direita do botão que ativa o processo. Sabendo isso, evitaríamos ter que configurar várias posições para cada máquina.
    1 ponto
  36. Yan Liima

    O Novo Xtibia #02/3

    Parabéns a equipe do XT realmente ficou muito bom, parabéns também aos novos membros da equipe vocês realmente merece ^^ Só falta arruma uns bug do fórum e tals mais isso irá ser arrumado em breve certo? Woow e pelo o que eu vi não só em computadores mais também em mobile ficou muito bom mesmo, Parabéns Daniel e aos de mais...
    1 ponto
  37. Caronte

    Maquina Difusora de helds

    Você está selecionando o item através do outro item? ou você só clica no item? Do jeito que está configurado, o item necessita que clique nele e depois clicar na pokebola desejada. Ou seja, seu item tem que ter use with.
    1 ponto
Líderes está configurado para São Paulo/GMT-03:00
×
×
  • Criar Novo...