Ir para conteúdo

Líderes

Conteúdo Popular

Mostrando conteúdo com a maior reputação desde 03/29/23 em todas áreas

  1. MixLort

    Base PokeNumb (Open-Source)

    ---------------------------------------------------------------------------------------------------------------------------------------- Um pouco da minha história na comunidade e a história da base: Anos atrás, eu comprei uma base chamada Poke-VKS, de um cara chamado Viktor. Paguei, na época, R$1000 e fiz um projeto com ela chamado PokeNumb. Trabalhei dois anos em cima desse projeto, editei muitas coisas nela, mexi muito, adicionei sistemas, removi diversos bugs e refiz o balanceamento geral várias e várias vezes. Depois de meses e meses editando, consegui uma base ao meu ver completamente balanceada e estável, diferente de todas com as quais já tinha trabalhado. Era uma base realmente muito boa, gastei muito tempo e esforço nela, mas, no final, gostei muito do resultado. Bom, com o projeto online, eu acabei seguindo outro ramo na vida e não tinha tempo para ficar editando e lançando atualizações. Abri uma loja de estofados e meu tempo ia todo para a loja. Então, resolvi encerrar o projeto e vender algumas cópias da base PokeNumb, para que as pessoas que gostassem da base pudessem continuar o projeto. A minha ideia era vender poucas cópias dessa base, para que a chance dela vazar fosse mínima. Mas, como essa comunidade é excelente e claramente não existe nenhum ladrão nela, eu suspeito que os compradores tiveram dificuldades para editar, estavam querendo ajuda e, assim, passaram a base para algum programador fulera, que roubou a base e começou a espalhá-la por aí. Para todos que compraram, sempre falei que daria suporte vitalício e qualquer sistema ou serviço podia me chamar que eu mesmo faria, porque não confio em quase ninguém dessa comunidade e acho que a maioria que quer "ajudar" só tem interesse em roubar bases dos outros e usá-las para benefício próprio. Eu não tenho o mínimo interesse em saber quem foi o comprador da base que confiou em outra pessoa com ela, e essa pessoa começou a distribuir. Isso já é passado e não tenho tempo para perder com isso. Mas, estou aqui nesse fórum para falar a vocês o seguinte: não confiem em ninguém da comunidade. A maioria aqui só quer saber de falsidade, furto para benefício próprio e tem más intenções. Eu mesmo já passei anos trabalhando junto com um membro da comunidade, ouvindo sobre seus problemas pessoais, ajudando em tudo que dava e o mesmo me apunhalou pelas costas, inventando inúmeras mentiras e manipulando outras pessoas. Enfim, não vou citar nomes nem prolongar mais esse assunto. Só estou falando que pela minha experiência, 90% da comunidade hoje é tóxica e não ajuda sem segundas intenções. Claro que existem grandes nomes confiáveis e pessoas incríveis, como o mapper Quinn, o designer Gabriel Pedro, o Italo, Ryuk, que tenho certeza que fazem um ótimo trabalho. ---------------------------------------------------------------------------------------------------------------------------------------- O motivo pelo qual estou divulgando: Bom, como já falei, vendi poucas unidades da base e, mesmo assim, algum programador com segundas intenções acabou pondo as mãos na base e começou a vendê-la. Até que a base chegou em um tal de "zeon" do Discord. Ele é famoso por fazer trocas de bases. O cara parece que quer um estoque infinito de bases de Poketibia e faz trocas com outras pessoas. Acabou que a base PokeNumb virou a principal moeda de troca dele, então ele passou para diversas pessoas. Até então, eu já estava ciente disso e não é algo que possamos evitar, e até então não dei muita bola. Até que um dia, um cara que não tinha comprado a base comigo chegou pra mim perguntando se eu faria um serviço pra ele na base vazada. Eu, obviamente, falei que não faria nada, pois o cara não comprou a base comigo. Ele conseguiu ela por terceiros. Então, mesmo que pagasse, não iria editar algo meu fornecido por terceiros. Uns dias depois, meu privado começou a lotar de mensagens de pessoas que viram a mesma base sendo vendida por um dos membros da comunidade. O membro em questão se chamava Whiss, ou Thalisson, e tinha entrado em contato com outro membro chamado Thalles para os dois juntos anunciarem a base. Assim que o povo me avisou, já entrei em contato com os dois. O Thalles mesmo já tirou o anúncio da base do ar e me falou que não sabia que era minha, que esse tal Whiss só chegou nele e queria vender. O Thalles me pediu desculpas e por aí ficou, já o outro cara persistiu que isso não tinha nada a ver com ele, que a partir do momento que ele teve acesso à base, ele podia vendê-la pra quem quisesse e não tinha nada de errado nisso. Falei pra ele que realmente ele tinha um ponto, mas ia do código moral e ético de cada um saber o que é certo e o que não é. Estou divulgando essa base, pois sei que ele não é o único vendendo-a, os vendedores lucrando em cima do suor e trabalho dos outros. Então, deixo aqui minha última contribuição para a comunidade. Essa é minha base favorita e eu considero ela perfeita e pronta para um projeto! ---------------------------------------------------------------------------------------------------------------------------------------- Sobre atualizações futuras: A base em si já tem uma atualização que traz compatibilidade em Windows e correções de algumas coisas, como bug visual do fly e remoção de alguns sistemas inúteis que pesavam na base. Essa e possíveis atualizações futuras da base serão liberadas somente para compradores passados e para pessoas que tenham interesse em comprar as atualizações e suporte vitalício da base. Deixarei minhas redes sociais abaixo. Podem entrar em contato comigo. ---------------------------------------------------------------------------------------------------------------------------------------- Bugs e outros: ---------------------------------------------------------------------------------------------------------------------------------------- Sistemas: ---------------------------------------------------------------------------------------------------------------------------------------- Fotos: ---------------------------------------------------------------------------------------------------------------------------------------- Vídeos: ---------------------------------------------------------------------------------------------------------------------------------------- Créditos: ---------------------------------------------------------------------------------------------------------------------------------------- Download e Scam: ---------------------------------------------------------------------------------------------------------------------------------------- By: Mixlort Espero que gostem!! CONTATO DISCORD: Mixlort#2111
    14 pontos
  2. Tungs

    [SOURCE DO PDA]

    Olá a todos, Recentemente, trabalhei em um projeto de desenvolvimento de uma source para PDA e fiquei muito satisfeito com os resultados. Depois de muito esforço e testes, consegui atingir cerca de 90% de sucesso na implementação da source em diversos PDAs. Agora, gostaria de compartilhar meu trabalho com vocês. A source é escrita em C++ e possui diversas funções, incluindo getDamageMapPercent, isPokeball e Order System (getDirectionToWalk). Adicionado raças (Crystal, Steel, Dark), função OnSpawn, Pokemon Passivos e agressivos. Além disso, é altamente compatível com a maioria dos PDAs, embora possa haver algumas adaptações necessárias dependendo do dispositivo específico. Para quem estiver interessado em testar a source, deixo aqui o link para todas as funções: https://pastebin.com/ewKUt9dH Ficarei muito grato por qualquer feedback que vocês possam me dar sobre a minha source. Compartilhar conhecimento e ajudar a comunidade é sempre muito gratificante e espero que minha source possa ajudá-los em seus projetos. Obrigado pela atenção e apoio! Atenciosamente, Tungs (kevick) a source se encontra anexada nesse tópico + link do mediafire para quem não conseguir baixar aqui. Download: https://www.mediafire.com/file/8irkqnrgxtuw1b9/Source.rar/file Download Atualização 052023: https://www.mediafire.com/file/nbf3ypdv8yaf903/Source_PDA_atualiza%C3%A7%C3%A3o_052023.rar/file PS. QUALQUER ERRO EU AJUDAREI, BASTA COMENTAR AQUI NO TÓPICO ATUALIZAÇÃO 052023 ADIÇÃO DA FUNÇÃO getDirectionToWalk (C++) após baixar e compilar a nova source que se encontra logo abaixo, adicione em 032-position.lua que se encontra na pasta lib a função abaixo: function getDirectionToWalk(p1, pos2) local dir = NORTH local pos1 = getCreaturePosition(p1) if(pos1.x > pos2.x) then dir = WEST if(pos1.y > pos2.y) then dir = NORTHWEST elseif(pos1.y < pos2.y) then dir = SOUTHWEST end elseif(pos1.x < pos2.x) then dir = EAST if(pos1.y > pos2.y) then dir = NORTHEAST elseif(pos1.y < pos2.y) then dir = SOUTHEAST end else if(pos1.y > pos2.y) then dir = NORTH elseif(pos1.y < pos2.y) then dir = SOUTH end end return dir end function getNextStepDelay(cid, dir) return tonumber(398) end DOWNLOAD DA SOURCE ATUALIZADA: https://www.mediafire.com/file/nbf3ypdv8yaf903/Source_PDA_atualiza%C3%A7%C3%A3o_052023.rar/file Source PDA atualização 052023.rar
    8 pontos
  3. Após anos contribuindo pro desenvolver do DB.D, venho com muita dor no coração, disponibilizar para todos essa base(2018) que por anos fez a felicidade de muitos players e que com certeza trás nostalgia só de citar o nome. Infelizmente tem algumas pessoas usando o nome do Moz# e o meu (Abreu) e o nome D.UD em outros servidores, oportunismo e coisa de retardado (sinceramente). O servidor tem bastante gambiarras e coisas a ser arrumada, mas é um bom ponto de partida pra quem quer um bom servidor. Espero que façam bom proveito.
    3 pontos
  4. Desenvolvi por muito tempo uma base Pokémon do 0 (parti do TFS 1.2 e fui implementando tudo até chegar nessa versão que estou disponibilizando). O resultado é um servidor extremamente leve e estável (já testado com 100+ players e por mais de 1 mês sem cair). Basicamente, ele suporta tranquilamente 1k+ players e não tem nenhum bug conhecido que faça com que ele caia. Esse servidor ficou no ar por muito tempo (mais de 2 anos) e era conhecido como PokeDash. Acabei ficando sem tempo para administrar o servidor, o que fez com que a maioria dos players parassem de jogar e com que eu fechasse de vez. Pensei por muito tempo sobre o que fazer com ele, e decidi disponibilizar para a comunidade. Trata-se de algo único (eu ao menos nunca vi um servidor de Pokémon construído a partir do TFS 1.2)! Como desenvolvi todos os sistemas do 0, tomei cuidado para fazer tudo da melhor maneira possível e para que possa ser facilmente modificado e atualizado. Basicamente, os Pokémons podem ser criados a partir de um único arquivo XML (como monstros do Tibia), e nesse arquivo você pode especificar tudo, desde level máximo e mínimo de spawn, loots, tipos (fogo, agua, etc), se ele pode usar habilidades (surf, fly, etc), moves (quando alguém captura), ataques (quando selvagem), evoluções, chance de catch, etc. Exemplo de Pokemon Resumo de alguns sistemas (tem muita coisa, então coloquei os principais) ✅ Pokemons com level, status e boost. O level do player/boost também influencia no status dos pokes. ✅ Sistema de Love (seu poke fica mais forte que os demais quando upa de level matando pokemons mais fortes que ele). ✅ Base propria com Shinys e Ancients. ✅ Cada player pode conseguir ancient stone para evoluir 1 shiny para ancient através de quest. ✅ Moves bar e pokemon bar (troca de pokemon com 1 click). ✅ Autoloot agrupando em bags. ✅ Ganho de exp ao capturar/dar dex em pokes com um bonus adicional para o primeiro catch de cada poke. ✅ Mapa original com mais de 40 quests, incluindo outland com Ancients. ✅ Eventos diários automáticos: Futebol todo dia 19:30, arena PVP todo dia 20:00, golden arena aos sabados 17:00, bag premiada aos domingos/feriados 17:00. ✅ Profissões (facilmente customizáveis): Catcher: 3.5% mais chance de capturar um Pokemon. Hunter: 10% mais status de dano para o seu Pokemon (tanto magico quanto fisico). Blocker: 25% mais vida para seus Pokemons. Healer: 100% mais cura que aplica tanto em potions quando moves dos seus Pokemons. Explorer: 15% mais experiencia para seu personagem durante a caça. ✅ Task diária de catch/loot dando Tokens. Os tokens podem ser trocados por itens raros (dentre eles premier ball e bags personalizadas) além de pagar seu curso com o NPC Job Manager para aprender uma das profissões acima. Uma das maneiras de conseguir tokens é fazendo tasks diárias. ✅ Muito mais! Screenshots Download Baixe o pack contendo o servidor, cliente, site, editor de mapa e editor de itens clique aqui!. Caso considere minha contribuição interessante para a comunidade, considere realizar uma doação para a chave pix: server.pokedash@gmail.com GM account: gm/gmgmgm O projeto será atualizado em sua homepage: https://pokedashpota.vercel.app/ SCAN Sources Download sources SCAN ----- Edit Problemas e soluções GroupID não existe ao tentar logar no server. Erros ao importar o schema.sql. Comando /cb não funcionando.
    3 pontos
  5. SwayaDzN

    PokeGhost Project

    ##Change Log## Foram feita muitas modificações na base PokeImperium que foi feita pelo Lord Baxx. (Todos os devidos créditos da base vão para ele.) A principal ídeia era fazer um servidor BASEADO na PokeXGames, eu criei muito conteúdo assim como estava adicionando novos pokemons, então vou deixar esse changelog de várias coisas que eu adicionei/fui mechendo * Foram Feitas várias modificações no mapa, adicionando novas hunts da "cosmic world" como se fosse a nightmare world do pokexgames. * Adicionado todos os pokemons do TIER 1 de todos os clans, "os t1h da pokexgames" Zoroark, Shiny Pachirisu, Shiny Gardevoir, Shiny Rampardos, Shiny Hariyama, Shiny Heatmor, Shiny Mawile, Mega Pidgeot, Mega Glalie. * Foram CRIADOS novos MOVES para TODOS os pokémons de TIER 1. * Adicionado alguns novos pokemons de cada clan (não está nem um pouco completo, falta adicionar/balancear diversos pokemons de seus diversos clans * Adicionado mais de 3k+ de newtypes(outfit) e items novos no servidor. * Todos os pokémons novos tem seus proprios portraits/corpse. INCLUINDO os pokémons megas. * Eu criei uma base pra "clones quest" que séria uma quest que resetava a cada semana. * Sistema de travel estava sendo feito, porém não terminei (sistema de travel séria o "teleport" para a cosmic world. * Alteração no Task System. * Alterado Client/Modules/Ui/Interface. Principal Bug do servidor, este bug já tinha na propria base do lord baxx que é o auto loot, basicamente se você separa vários items iguais na sua mochila, e coletar algum loot de pokémon que tenha esse mesmo item, basicamente duplica, triplica, etc. esse item na sua mochila. Meu foco era deixar primeralmente o servidor "divertido" então não corri atrás de arrumar bugs. Não tenho mais tempo/vontade de mecher no servidor, então estou disponibilizando. Imagens/Vídeos DOWNLOAD Créditos: Lordbaxx, Alexandre Lorenzon *mapa, Guilherme *thumbs e ideias.
    3 pontos
  6. Olá galera do xTibia ! Venho por meio deste tópico, publicar a ultima versão do meu servidor derivado de Tibia NTO Battle. deixei para brincarem e verem sistemas, as sources não disponibilizarei nem o site. afinal é um projeto que fiz com carinho e está a venda as sources. Thogo#9713 O que tem de diferente no NTO Battle ? Aura System e Wings Healthbar Monster Bar Healthbar vocation Sistema Raridade Shaders Dungeons e Tasks Game Shop Entre outros Veja algumas Imagens ! O que tem nesse Pacote de Arquivos NTO Battle? Datapack mais recente e completa do servidor. ( compilada pra windows Client Compilado SQL ACC GOD - god/god QUALQUER MSG NO DISCORD Thogo#9713 -source client e otserv e site. DOWNLOAD & SCAN Client: https://mega.nz/file/hbgnSDRJ#xQT-qQHWLUV2Dn8jalwMGblCWnmL0_s3rZfqbxO7znw Server: https://mega.nz/file/sSZXlZ6a#gow-Db6diNVrnnPIH7qyBqP8WmVLFxWy85-yub_f32Y Scan https://www.virustotal.com/gui/file/86da72135d75d826c2665bb572084c30288eea843c2cfe2f7a405cfe1ea2f59c/detection https://www.virustotal.com/gui/file/cfa4d83c8b6c12fa0daf28cefd6762a053aee7245e6be8f5c02594825a2e2c1e?nocache=1
    3 pontos
  7. Poke Hero

    [OPEN-SOURCE] ONE PIECE 2023

    rapaziada tem gente vendendo a base então tô postando aqui para vocês Link: https://www.mediafire.com/file/h0q7ll4ugdkpp87/ONE_PIECE.rar/file
    3 pontos
  8. Provavelmente funciona com os outros jogos do quilante, basta substituir a pasta data na pasta do servidor e substituir os arquivos do cliente na pasta otclient/data/things/860 Eu não tenho créditos sobre o projeto, estou apenas postando aqui porque ja é de dominio público porém em todos os tópicos na internet o projeto está muito desatualizado Este aqui está configurado pra por online no pc. Download: (TFS 04 860 + OTCLIENT "Ultima versão x64", Htdocs "O site" e o Banco de dados Compativel. https://www.mediafire.com/file/bmponjci62txbxd/TIBIA+GTA+ARRUMADO.rar/file Scan: https://www.virustotal.com/gui/file/b6236579ad11201f3c01899a218f6ca8ef8e645cf3881f5de2af46a04837085d?nocache=1
    3 pontos
  9. Neste tutorial, irei ensinar configurar o Docker no windows e rodar seu otserver - Diferença entre Docker x Máquina virtual: Docker e Máquinas Virtuais (VMs) ambas são fundamentais usadas para isolar recursos em um sistema de computação, mas funcionam de maneiras muito diferentes. VMs são ambientes de computação completos, incluindo um sistema operacional (SO) completo, que simulam o hardware de um computador físico. Isso significa que cada VM é um sistema autônomo e independente. Já o Docker, usa a tecnologia de contêineres. Os contêineres compartilham o mesmo sistema operacional do host, mas mantêm seu próprio espaço de processo, arquivos e rede. Isso significa que eles são muito mais leves do que as VMs, pois não precisam de um SO completo, e podem ser iniciados e parados muito mais rapidamente. - Vantagens em utilizar o Docker O Docker oferece várias vantagens significativas: Eficiência de recursos: Como os contêineres Docker compartilham o SO do host, eles são mais leves e usam menos recursos do que as VMs. Portabilidade: O Docker permite que você "construa uma vez, execute em qualquer lugar". Uma vez criado um contêiner Docker, ele pode ser executado em qualquer sistema que suporte o Docker, independentemente das configurações subjacentes. Isolamento: Cada contêiner Docker é isolado do resto do sistema, o que ajuda a evitar conflitos entre diferentes aplicações e versões de software. Integração e entrega contínua: O Docker se integra bem com ferramentas de CI/CD (Integração Contínua / Entrega Contínua), permitindo a automatização de testes e implantação de aplicações. Escalabilidade e Orquestração: O Docker facilita a escalabilidade de aplicações, permitindo que múltiplos contêineres sejam implantados facilmente. Além disso, com ferramentas como Docker Swarm e Kubernetes, a orquestração de contêineres se torna eficiente e gerenciável Colocando a mão na massa Este tutorial será dividido nas seguintes etapas: Preparação do Windows Instalando o Docker Instalando imagens mariadb e phpmyadmin Realizando a build da imagem TFS 1º PASSO: Preparando o Windows com o subsistema Linux. AVISO: Essa Etapa será necessária somente caso ainda não possua o subsistema Linux ativado em seu windows Os comandos a seguir, serão todos utilizando o POWERSHELL do windows, na barra de pesquisa digite POWERSHELL e execute como administrador. Com o POWERSHELL aberto, execute os seguintes comandos: Habilitando subsistema Linux: dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart Habilitando recurso de máquina virtual: dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart Baixe e instale Kernel do Linux: https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi Após essa etapa, será necessário reiniciar o computador para atualização, após reiniciar, abra novamente o PowerShell Definindo o WSL 2 como padrão: wsl --set-default-version 2 Após esses passos, basta entrar na Microsoft Store e instalar o sistema Ubuntu: Após a instalação, abra o Ubuntu, como será a primeira vez, irá solicitar para que digite um nome de usuário e uma senha. Etapa 1 concluída. Fonte: https://learn.microsoft.com/pt-br/windows/wsl/install-manual 2º PASSO: Instalando Docker. este é um passo simples, apenas entre no site oficial do Docker, baixe e instale o Docker Desktop https://www.docker.com/ Etapa 2 concluída. 3º PASSO: Instalando imagens MariaDB e phpMyAdmin Assim como no passo 1, execute novamente o PowerShell como administrador e siga os seguintes passos: Primeiro vamos baixar as imagens necessárias, execute os seguintes comandos: docker pull mariadb docker pull phpmyadmin/phpmyadmin Agora iremos criar uma "Rede" para que o docker se comunique entre os containers que iremos utilizar. Execute o seguinte comando: docker network create mynetwork mynetwork é o nome que defini neste caso, você pode utilizar o nome que achar melhor, porém lembre-se desse nome que iremos utilizar nos próximos passos. Agora iremos iniciar essas imagens, utilizando os seguintes comandos: docker run --name mariadb --network=mynetwork -e MYSQL_ROOT_PASSWORD=your_password -d mariadb your_password = altere pela senha que deseja utilizar no mysql mynetwork = é o nome que criamos no passo anterior docker run --name myadmin --network=mynetwork --link mariadb:db -d -p 8080:80 phpmyadmin/phpmyadmin Lembrando novamente, mynetwork é o nome criado anteriormente Após esses passos, será possível ver seu container rodando no Docker Desktop: Etapa 3 concluída. 4º PASSO: Gerando Imagem do TFS e configurações necessárias: Baixe a TFS, nesse exemplo será o repositório oficial https://github.com/otland/forgottenserver Extraia os arquivos após baixar com o container mariadb e phpmyadmin rodando, acesse http://localhost:8080/ com o login root, e a senha que criou no passo 3, crie uma nova base de dados e importe o arquivo schema.sql do servidor edite o arquivo config.lua.dist -- MySQL mysqlHost = "mariadb" mysqlUser = "root" mysqlPass = "SUA SENHA CRIADO NO PASSO 3" mysqlDatabase = "NOME DA DATABASE" mysqlPort = 3306 mysqlSock = "" mariadb é o nome do container que estamos rodando o mysql ** Caso queira utilizar todo potencial do seu computador na hora de buildar a TFS, no arquivo Dockerfile, edite a linha 18: RUN cmake --preset default && cmake --build --config RelWithDebInfo --preset default para RUN cmake --preset default && cmake --build --config RelWithDebInfo --preset default -- -j 16 onde 16 é o numero de processadores lógicos que deseja ser utilizados, não é necessário utilizar 100% porém quanto mais melhor, porém caso utilize mais do que está disponível poderá travar, então utilize a quantidade mostrada pra menos. no gerenciador de tarefas aba desempenho, é possível visualizar a quantidade de núcleos e processadores lógicos do seu CPU Após isso, entre no Power Shell e execute o comando: docker build -t server . onde "server" é o nome da imagem que será gerada Após isso, é só iniciar o servidor com o seguinte comando docker run --name server --network=mynetwork -p 7171:7171 -p 7172:7172 -d server lembrando que mynetwork é o nome que geramos no passo 3, e o ultimo parametro é nome da imagem que geramos anteriormente. Você poderá ver seu sevidor ronando no Docker Desktop: caso queira parar algum servidor ou iniciar novamente, é só clicar no botão de ação: Caso precise fazer alguma alteração no server, basta utilizar os comandos de build e run citados anteriormente. Para ver os logs, basta clicar em "server" ou o nome que escolheu: Lembrando que isso é um tutorial básico para rodar o servidor na máquina local, qualquer dúvida ou sugestão, deixe comentário.
    3 pontos
  10. rafersiq

    Duvida Roleta

    bom a chance e o msm estilo de chance de loot dos monster
    2 pontos
  11. Bom dia turma do Xtibia. Venho trazer um script que fiz para um usuário de outro fórum, abaixo seguem maiores informações sobre. Introdução: Bom, este script simula a máquina de Cassino conhecida como Cassino Slots, pra quem não conhece é a máquina que se encontra no spoiler abaixo: Como funciona? O jogador precisa escolher 1 (um) dos 10 (dez) itens disponíveis (da para configurar a quantidade de itens) como seu Item da Sorte, e após feito isso, terá que girar a alavanca e torcer para que a máquina sorteie 3 itens repetidos igual ao que o jogador em questão escolheu. Para tornar um pouco mais fácil de vencer, criei para que a máquina dê pequenos brindes à quem acertar 1 ou 2 itens dos sorteados (configurável). Como jogar? Para jogar é simples, como desenvolvi todo script em apenas um arquivo, para facilitar na criação, na instalação e até mesmo na jogabilidade, o jogo se baseia na posição em que o jogador está para identificar qual ação executar. Selecionar Item da Sorte: com seu personagem virado para baixo (sul), clique na alavanca e automaticamente o item da sorte aparecerá na mesa configurada no script, caso queira outro item, basta ir usando a alavanca até encontrar o item desejado. Como Jogar: Após ter selecionado seu item da sorte, que deve estar à mostra em cima da mesa própria, basta virar seu personagem para cima (norte) e clicar novamente na alavanca. E se virar esquerda ou direita?: Nada acontecerá, apenas uma mensagem ensinando como jogar será enviada para que o jogador se oriente. Dicas de instalação! Sugiro que quando for criar o mapa para o evento, não faça como do vídeo, pois os itens criados nas mesas não estão com atributos para que não possam ser movidos, sendo assim é provável que jogadores de má fé venham a roubar itens... Faça como a imagem abaixo: Instalando: Basta criar um arquivo na pasta “data/actions/scripts” chamado “cassino_slots.lua” e adicionar o código abaixo dentro: Agora em “actions.xml” adicione a tag abaixo: Agora basta configurar de acordo com as informações disponíveis no início do script. Vejam o vídeo demonstrativo do Sistema em funcionamento. Criado por: Adriano Swatt'
    1 ponto
  12. Estou afim de fazer um poketibia do 0 (sem pegar nada de PDA / DXP) Tenho conhecimento mediano em C++, C#, Lua e PHP Não sei qual versão vou fazer ainda, será discutido com a equipe Em pauta: TFS 1.4 10.98 / 1.5 8.60 No momento preciso de alguém que me ajude com adição de itens de poketibia no tibia cru para fazer e ficar testando os sistemas. Envie os seguintes dados: Nome: Idade: Contato (Discord ou Whatsapp): Experiência: (Fale sobre algum conhecimento que voce tem)
    1 ponto
  13. MercadoPago Retorno automatico (PIX) Abaixo Segue código PHP de pagamento via pix pelo mercado pago com retorno para quem quiser adaptar em seus sites ter uma direção de onde ir. testado em Znote e MyAcc. Below is the PHP payment code via pix for the paid market with return for those who want to adapt it on their websites to have a direction of where to go. tested on Znote and MyAcc. pix.zip
    1 ponto
  14. JulianoZN

    ERRO AO ABRIR RME

    Na mesma pasta onde ta as spr.zip > Tibia.otfi para o signature
    1 ponto
  15. Que eu saiba a última versão só suporta até 10.56, não sei pq ainda não atualizaram isso kkkkk edit: acabei de ver aqui que um cara atualizou o OB, tenta dar uma olhada: https://github.com/punkice3407/ObjectBuilder
    1 ponto
  16. DexShaadary

    Base PokeNumb (Open-Source)

    você tem que se dar permissões de equipe, vá para data/lib/configuration.lua e adicione seu nome na linha 8 staffAcess = {"TeuNome"}
    1 ponto
  17. rafersiq

    Base PokeNumb (Open-Source)

    se for o client mobile vc presisa de um app pra isso
    1 ponto
  18. MixLort

    Base PokeNumb (Open-Source)

    Olá sem nome, o site utilizado na numb não necessitava de account sample, mas caso no site do masterx precise, é só renomear um dos characters de test para "Pokemon Trainer Sample"!
    1 ponto
  19. Fala, pessoal! Então, tenho esse "sonho" de montar um Pokétibia com os gráficos de "GBA" a muito tempo, então uns meses pra cá venho botado em prática esse projeto. Venho usando a base da PSoul para o projeto pois acho que é a mais próxima que temos do jogo feito pela Nintendo, e já que queria um "pokétibia + gba" essa seria a melhor opção. Eu estou atrás de uma equipe séria pois infelizmente não da pra fazer tudo sozinho, seja o mapa ou a aprimorar a própria base disponibilizada na comunidade que contém alguns bugs. Então quem tiver interesse em participar do projeto, deixa os dados abaixo por exemplo: Nome, idade, a quanto tempo mexe com poketibia/tibia, qual área seja spriter, c++ etc..... Aqui vou mostrar algumas fotos de como está o mapa que estou refazendo do zero e alguns prints do map editor: Minimap Pallet Town Route 1 Viridian City
    1 ponto
  20. Olá galerinha do XTibia! Estava fuçando no Fórum e percebi que existem alguns tópicos deste gênero e várias reclamações de usuários que não conseguem liberar acesso aos players. Mas a questão é que são tópicos antigos ou então que ensinam os players meio por cima como deixar o servidor on-line, nada muito explicativo, então decidi criar este tópico para ajudar o máximo de pessoas possíveis. O tópico está dividido por partes para a maior compreensão possível. 1 - Detalhamento de sua rede 2 - Liberando portas no Firewall 3 - Liberando portas no Roteador 4 - Criando um DNS para seu OT (1) Detalhamento de sua rede (2) Liberando portas no Firewall (3) Liberando portas no Roteador (4) Criando um DNS para seu OT Pronto, agora as portas estão liberadas e seu servidor está com 'Ip Fixo'! É so chamar a galerinha e se divertir! GOSTOU DO CONTEÚDO? Clique em GOSTEI!!!
    1 ponto
  21. Mobile Modificado sem arquivos data/modules etc >> o mesmo ja conta com o sistema de rotação de tela scan// https://www.virustotal.com/gui/file/596ea29e221af84af5771c94b6160531f681975f8727410060e2d474cd0ab679/detection --> Com extensão de tela sem bordas preta requer extensão de tela para mobile >http:// https://www.mediafire.com/file/jumo15q39gc9n4d/liberado+extendido.apk/file 29/2 > 14 17/2 > 8 Possui cor nos nome procurando as tag \/ no nick do player 0 [ADM], [GOD], [GM], [CM], [Tutor], [Help], [YT], [Youtuber] Cor nos nome dos monstro que possuir genero Male > Azul Female > Rosa Indefinido > Amarelo --> Sem Extenção de tela Bordas Preta > https://www.mediafire.com/file/fnzhwciwws1om26/liberado.apk/file padrao do tibia 8 6 Possui cor nos nome procurando as tag \/ no nick do player 0 [ADM], [GOD], [GM], [CM], [Tutor], [Help], [YT], [Youtuber] Cor nos nome dos monstro que possuir genero Male > Azul Female > Rosa Indefinido > Amarelo
    1 ponto
  22. Hirxzsxop

    [Base] Pokémon Mythology [2023]

    Ótima base, comunidade agradece por essa contribuição!
    1 ponto
  23. rafersiq

    Base PokeNumb (Open-Source)

    qual bug visual do fly? vou ver o local que vc aruma o shiny cham aqui
    1 ponto
  24. GamerGoiano

    Vault

    Não sei quanto é 200kkk, vou supor que o valor é 2 000 000 000 Experimenta ai o código pra ver se funciona function onUse(cid, item, fromPosition, itemEx, toPosition) local cidMoney = getPlayerMoney(cid) local vaultmoney = getItemAttribute(itemEx.uid, "money") if (getItemAttribute(itemEx.uid, "money") == 0) then doSetItemAttribute(itemEx.uid, "money", math.min(cidMoney, 2000000000)) doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Voce depositou "..math.min(cidMoney, 2000000000).." dolares!") if getPlayerMoney(cid) >= 1000000 and getPlayerMoney(cid) < 10000000 then item = doPlayerAddItem(cid, 7896, 1) doItemSetAttribute(item, "money", math.min(cidMoney, 2000000000)) doPlayerRemoveItem(cid, itemEx, 1) doRemoveItem(itemEx.uid, 1) end if getPlayerMoney(cid) >= 10000000 and getPlayerMoney(cid) < 100000000 then item = doPlayerAddItem(cid, 7897, 1) doItemSetAttribute(item, "money", math.min(cidMoney, 2000000000)) doPlayerRemoveItem(cid, itemEx, 1) doRemoveItem(itemEx.uid, 1) end if getPlayerMoney(cid) >= 100000000 and getPlayerMoney(cid) <= 2000000000 then item2 = doPlayerAddItem(cid, 7898, 1) doItemSetAttribute(item2, "money", math.min(cidMoney, 2000000000)) doPlayerRemoveItem(cid, itemEx, 1) doRemoveItem(itemEx.uid, 1) end doPlayerRemoveMoney(cid, math.min(cidMoney, 2000000000)) else item2 = doPlayerAddItem(cid, 7895, 1) doItemSetAttribute(item2, "money", 0) doPlayerRemoveItem(cid, itemEx, 1) doRemoveItem(itemEx.uid, 1) doPlayerAddMoney(cid, math.min(vaultmoney, 2000000000)) end return true end
    1 ponto
  25. Hirxzsxop

    Base PokeNumb (Open-Source)

    sobre a questão do " grátis Premium account " você consegue retirar-lo em creaturescripts/Scripts/login.lua e retirar a mensagem O ditto é por module, e o meu está funcionando 100%, procure erros dando ctrl + t ou na distro do otserver.
    1 ponto
  26. Yan Oliveira

    Vault

    Substitua o código por: function onUse(cid, item, fromPosition, itemEx, toPosition) local cidMoney = getPlayerMoney(cid) local vaultmoney = getItemAttribute(itemEx.uid, "money") if (getItemAttribute(itemEx.uid, "money") == 0) then doSetItemAttribute(itemEx.uid, "money", cidMoney) if getPlayerMoney(cid) >= 1000000 and getPlayerMoney(cid) < 10000000 then item = doPlayerAddItem(cid, 7896, 1) doItemSetAttribute(item, "money", cidMoney) elseif getPlayerMoney(cid) >= 10000000 and getPlayerMoney(cid) < 100000000 then item = doPlayerAddItem(cid, 7897, 1) doItemSetAttribute(item, "money", cidMoney) elseif getPlayerMoney(cid) >= 100000000 and getPlayerMoney(cid) <= 2000000000 then item2 = doPlayerAddItem(cid, 7898, 1) doItemSetAttribute(item2, "money", cidMoney) end doPlayerRemoveMoney(cid, cidMoney) doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Voce depositou "..cidMoney.." dolares!") else item2 = doPlayerAddItem(cid, 7895, 1) doItemSetAttribute(item2, "money", 0) doPlayerAddMoney(cid, vaultmoney) end doPlayerRemoveItem(cid, itemEx, 1) doRemoveItem(itemEx.uid, 1) return true end Otimizei o código, porque tinha muita repetição nos blocos condicionais
    1 ponto
  27. JulianoZN

    Base PokeNumb (Open-Source)

    Infelizmente a comunidade foi de mal a pior eu mesmo tenho meu servidor que peguei la da epoca do pokegold e ate hoje mexo nele mais somente eu e um adm que mora do lado da minha casa tem acesso aos arquivos total
    1 ponto
  28. Conversei por DM para não spammar o tópico e acabou que o TFS era 0.3.6 e não 1.0, por isso os scripts anteriores não funcionaram. Para quem busca a solução: local config = { item1 = { id = 18759, pos = {x = 1200, y = 830, z = 9, stackpos = 255} }, item2 = { id = 18758, pos = {x = 1216, y = 829, z = 9, stackpos = 255} }, item3 = { id = 18760, pos = {x = 1210, y = 817, z = 9, stackpos = 255} }, teleportTo = {x = 1000, y = 1000, z = 7} } function onUse(cid, item, frompos, item2, topos) local tileItem1 = getTileItemById(config.item1.pos, config.item1.id).uid local tileItem2 = getTileItemById(config.item2.pos, config.item2.id).uid local tileItem3 = getTileItemById(config.item3.pos, config.item3.id).uid if tileItem1 > 0 and tileItem2 > 0 and tileItem3 > 0 then doRemoveItem(tileItem1, 1) doSendMagicEffect(config.item1.pos, CONST_ME_POFF) doRemoveItem(tileItem2, 1) doSendMagicEffect(config.item2.pos, CONST_ME_POFF) doRemoveItem(tileItem3, 1) doSendMagicEffect(config.item3.pos, CONST_ME_POFF) doTeleportThing(cid, config.teleportTo) doSendMagicEffect(getCreaturePosition, CONST_ME_TELEPORT) return true end doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Coloque os itens nos altares.") return true end
    1 ponto
  29. https://xtibia.com/forum/topic/209121-urgente-dúvida-em-alavancaitem-teleport/ Se precisar de ajuda pra modificar só falar
    1 ponto
  30. GamerGoiano

    (Bug) AutoLoot

    @raulcdj Deve resolver o problema de vcs local toloot = {11441, 11442, 11443, 11444, 11445, 11446, 11447, 11448, 11449,11450, 11451, 11452, 11453, 11454, 12618, 12232, 12244} -- PREFERENCIAL - SE QUISER APENAS COM ALGUNS ITENS local useSpecific = false --True para lotear somente os itens que estiverem na tabela toloot, false para todos os itens do corpse function onUse(cid, item, frompos, item2, topos) local corpseOwner = getItemAttribute(item.uid, "corpseowner") if corpseOwner and corpseOwner ~= cid then doPlayerSendCancel(cid, "Você não é o proprietário.") return true end local items = {} for x = (getContainerSize(item.uid) - 1), 0, -1 do local k = getContainerItem(item.uid, x) table.insert(items, {i=k.itemid, q=k.type}) doRemoveItem(k.uid) end if #items == nil then return false end for y=1, #items do -- Verifica se o item está na tabela toloot ou se useSpecific é false if useSpecific == false or table.contains(toloot, items[y].i) then doPlayerAddItemStacking(cid, items[y].i, items[y].q) doPlayerSendTextMessage(cid, 20, "Looted "..items[y].q.."x "..getItemNameById(items[y].i)..".") end end return true end
    1 ponto
  31. GamerGoiano

    (BUG) Revive

    @BrunooMaciell revivendo o tópico pq um amigo meu está com o mesmo problema -- Verifica se a pokebola é ultraball, masterball ou superball if item2.itemid == ULTRABALL_ID or item2.itemid == MASTERBALL_ID or item2.itemid == SUPERBALL_ID then -- Se for, mantém o mesmo tipo de pokebola após o uso do item Revive doTransformItem(item2.uid, item2.itemid) else -- Se não for, transforma em uma pokebola simples doTransformItem(item2.uid, POKEBALL_ID) end
    1 ponto
  32. rafersiq

    Base PokeNumb (Open-Source)

    Ótima base Parabéns Mixlort pelo projeto
    1 ponto
  33. red X

    Pokemon nao segue o player

    Você precisará adicionar lógica para lidar com a distância entre o jogador e o Pokémon, como parar de seguir quando estiver muito longe ou ajustar a velocidade de movimento do Pokémon com base na distância. E mais facil voce copia um mostro na pasta do seu servidor e colar dps muda o nome do pokemon copiado pra sceptile e muda o id do pokemon pra evitar bug
    1 ponto
  34. Hirxzsxop

    DOWNLOAD BASE ALASKA + SOURCE V1

    Então pessoal, achei essa base alaska aqui V1, e vim aqui disponibilizar já que muitos estão querendo ela muito, ela é um pouco mais desatualizada não são da atual, mas vim aqui disponibilizar para ajudar, já que tem gente vendendo ela e trocando Base: https://www.mediafire.com/file/naie71zfj3htcj3/Base+AlaskaOTP+Hirxzsx.rar/file Client está na base Src: https://mega.nz/file/bddilLiA#G_5DgS8fJGR5UCuk3lkJuNUxd_YPbNvJ-Y-QbHTFcts Estava perdida aqui no meu media e eu procurando uma base quase comprando ela kkkkk Caso alguem poder postar scan!! Por favor se poderem dar rep, estou postando algumas bases e só recebi 2, iria ficar muito feliz!!!
    1 ponto
  35. Opa eae galera, blz? deixarei logo a baixo algumas informações, de como compilar o tfs 0.3.6 pelo codeblocks. Veja o vídeo para entender melhor! 1º path para substituir o leaf 2º Download do projeto do CODEBLOCKS: TheForgottenServer.zip 3º Download do codeblocks já configurado 4º Caso sua source for dxp é necessário alterar o arquivo definitiuns.h
    1 ponto
  36. Tibia Server Mapa Global Eae pessoal, venho trazer a vocês um servidor de Tibia com mapa igualzissimo ao do Tibia Original. Com Rookgard e muito mais, claro não fui eu quem fiz este servidor magnifico. Mais venho traze-lo para vocês fazerem dele sua base e ter um servidor muito melhor de Tibia. Como nós sabemos nenhum servidor vem sem bugs, então é issu vo postar algumas imagems e espero que gostem. Muitas coisas ainda vocês terão de configurar como onde o player ínicial irá nascer e etc.. Este servidor estava sendo utilizado com site então você terá de fazer suas auterações. Cidades Newbie Island (Rookgaard) + Island of Destiny Ankrahmun Ab'Dendriel Carlin Darashia Edron Yalahar Kazordoon Liberty Bay Port Hope Svargrond Thais Venore Farmine Zao Cormaya Algumas imagems: Como eu ja disse este servidor não foi eu em que fui, mais venho pelo o menos trazer a vocês. Créditos Dener Diegoli Team e ao Membro Shekys do xtibia por contribuições enorme no projeto. Kurobisu (Por Trazer aqui pro Xtibia) Downloads OTServer Completo: >>( Kurobisu Download Otserv )<< Download Client Normal de Tibia 8.6: >>( Kurobisu Download Client )<< Download do SqliteStudio para quem for usar via account manager: >>(Kurobisu Download SqliteStudio)<< O 4Shared ja tem seu proprio ( Scanner ) então pelo visto não precisa. Estou também abrindo este tópico para caso alguém tenha alguma dúvida ou ache algum bug possa reporta-lo para mim, e eu concerteza tentarei ajuda-lo. Então como muitos sabem o tópico deve ter regras, e aqui não será diferente. Regras Poste suas dúvida aqui caso tenha alguma, caso acho algum bug poste aqui também. Tentarei ajudar o maximo possivel. Gosto do tópico? Lhe ajudei?Rep+ Não ajudei? Tentarei melhorar
    1 ponto
  37. Luga03

    Ditto e Shiny Ditto System 100%

    Eae pessoal blz?? eu peguei o ditto system postado pelo Wend e feito pelo Gabrielbsales(Featzen), então só mudei algumas tags e modifiquei um pouco e dei umas melhorias, bem pequenas só que vão ajudar, creio eu Então vamos parar de blábláblá em começar o tutorial! Primeiramente vá em Data/actions/scripts/order.lua e Procure por: -------- TRANSFORM ---------- Apague tudo aqui dentro, até o: -------- LIGHT ------------ Ai dentro ditto coloque isto: Pronto Agora esta transformando e copiando as habilidades e tudo! Agora Para o ditto e shiny ditto reverter a transformação . Crie um arquivo chamado dittorevert.lua em data/talkactions e coloque isto dentro: e em talkactions.xml coloque isto: <talkaction words="!revert" event="script" value="dittorevert.lua"/> Pronto sistema 100% só que ele está com nome, poder, força tudo igual! para resolver isto vamos em lib/level system.lua abra e procure por isto: e substitua por isto: Pronto Agora o Shiny ditto ta com 75% de força do poke transformado e o ditto com 50% de força do pokemon transformado Agora para identificar que é um ditto/shiny ditto vamos em creaturescript/scripts/look.lua, abra e procure por: table.insert(str, "\nIt contains "..getArticle(pokename).." "..pokename..".\n") substitua por: if getItemAttribute(thing.uid, "ehditto") == 1 then table.insert(str, "\nIt contains "..getArticle(pokename).." "..pokename.." (Ditto).\n") elseif getItemAttribute(thing.uid, "ehshinyditto") == 1 then table.insert(str, "\nIt contains "..getArticle(pokename).." "..pokename.." (Shiny Ditto).\n") else table.insert(str, "\nIt contains "..getArticle(pokename).." "..pokename..".\n") end Em actions/scripts/goback.lua procure por: e apague! em lib/Some Functions.lua procure por: e substitua por: function doAppear(cid) --Faz um poke q tava invisivel voltar a ser visivel... if not isCreature(cid) then return true end doRemoveCondition(cid, CONDITION_INVISIBLE) doRemoveCondition(cid, CONDITION_OUTFIT) doCreatureSetHideHealth(cid, false) end Ainda em Some functions procure por: if getCreatureName(pokemon) == "Ditto" then if isTransformed(pokemon) then local left = getItemAttribute(pokeball.uid, "transLeft") - (os.clock() - getItemAttribute(pokeball.uid, "transBegin")) doItemSetAttribute(pokeball.uid, "transLeft", left) end end e apague e para finalizar procure por: if getCreatureName(pokemon) == "Shiny Ditto" then if isTransformed(pokemon) then local left = getItemAttribute(pokeball.uid, "transLeft") - (os.clock() - getItemAttribute(pokeball.uid, "transBegin")) doItemSetAttribute(pokeball.uid, "transLeft", left) end end e Apague!!!!!!! Pronto Agora sim Sistema 100% Esta Copiando Habilidades, força diminuida do pokemon normal e identificação do Ditto e Shiny Ditto! Acredito que vai ajudar a muitos! Créditos Gabrielbsales Por criar o Script Wend por fazer um tutorial mais completo Zet0N0Murmurou (Summer Slyer) por adaptar e melhorar o script para o Shiny Ditto! UP
    1 ponto
  38. Troque o código por este: local storage_buff_catch = 3133586 -- STORAGE DO BONUS DE CATCH local minutes_buff = 5 -- MINUTOS PARA TER O BUFF DO CATCH local ballcatch = { --id normal, id da ball shiy [2394] = {cr = 1, on = 193, off = 192, ball = {11826}, send = 86, typeee = "poke", boost = "0"}, --alterado v1.9 \/ [2391] = {cr = 2, on = 198, off = 197, ball = {11832}, send = 87, typeee = "great", boost = "0"}, [2393] = {cr = 3, on = 202, off = 201, ball = {11835}, send = 88, typeee = "super", boost = "0"}, [2392] = {cr = 4, on = 200, off = 199, ball = {11829}, send = 89, typeee = "ultra", boost = "0"}, [12617] = {cr = 4, on = 204, off = 203, ball = {12621}, send = 84, typeee = "saffari", boost = "0"}, [12832] = {cr = 100000, on = 23, off = 24, ball = {12826}, send = 85, typeee = "master", boost = "50"}, [15677] = {cr = 6, on = 313, off = 314, ball = {16204}, send = 72, typeee = "magu", boost = "0", type = {"fire", "ground"}}, [15676] = {cr = 6, on = 316, off = 317, ball = {16205}, send = 73, typeee = "sora", boost = "0", type = {"water", "ice"}}, [15678] = {cr = 6, on = 319, off = 320, ball = {16206}, send = 74, typeee = "yume", boost = "0", type = {"fairy", "psychic"}}, [15680] = {cr = 6, on = 322, off = 323, ball = {16207}, send = 75, typeee = "dusk", boost = "0", type = {"ghost", "dark"}}, [15673] = {cr = 6, on = 331, off = 332, ball = {16210}, send = 78, typeee = "tale", boost = "0", type = {"dragon", "flying"}}, [15674] = {cr = 6, on = 334, off = 335, ball = {16211}, send = 79, typeee = "moon", boost = "0", type = {"fighting", "normal"}}, [15675] = {cr = 6, on = 337, off = 338, ball = {16212}, send = 80, typeee = "net", boost = "0", type = {"bug", "poison"}}, [15681] = {cr = 6, on = 346, off = 347, ball = {16215}, send = 83, typeee = "tinker", boost = "0", type = {"electric", "steel"}}, [15679] = {cr = 1, on = 343, off = 344, ball = {16214}, send = 82, typeee = "premier", boost = "0"}, [15682] = {cr = 6, on = 325, off = 326, ball = {16208}, send = 76, typeee = "fast", boost = "0", pokes = {"Pidgeot", "Kadabra", "Rapidash", "Scyther", "Electabuzz", "Manectric", "Persian", "Starmie", "Sneasel", "Dugtrio", "Alakazam", "Sceptile", "Swellow", "Jolteon", "Crobat", "Electrode", "Ninjask", "Raichu", "Dodrio", "Gengar", "Tauros", "Jumpluff", "Espeon", "Shiny Raichu", "Shiny Dodrio", "Shiny Tauros", "Shiny Gengar", "Shiny Espeon"}}, [15672] = {cr = 6, on = 328, off = 329, ball = {16209}, send = 77, typeee = "heavy", boost = "0", pokes = {"Golem", "Gyarados", "Snorlax", "Onix", "Tyranitar", "Metang", "Steelix", "Camerupt", "Lapras", "Mantine", "Hariyama", "Aggron", " Wailord", "Glalie", "Metagross", "Rhyperior", "Shiny Golem", "Shiny Gyarados", "Shiny Snorlax", "Shiny Onix", "Shiny Tyranitar", "Shiny Metang", "Shiny Steelix", "Shiny Camerupt", "Shiny Lapras", "Shiny Mantine", "Shiny Hariyama", "Shiny Aggron", "Shiny Wailord", "Shiny Glalie", "Shiny Metagross", "Shiny Rhyperior"}}, } function onUse(cid, item, frompos, item3, topos) local item2 = getTopCorpse(topos) if item2 == null then return true end if getPlayerStorageValue(cid, 55006) >= 1 then doPlayerSendCancel(cid, "Você não pode capturar nenhum pokémon enquanto está em duel.") return true end if getItemAttribute(item2.uid, "catching") == 1 then return true end local name = string.lower(getItemAttribute(item2.uid, "pokeName")) name = string.gsub(name, "fainted ", "") name = string.gsub(name, "defeated ", "") name = doCorrectPokemonName(name) local storage = newpokedex[name].stoCatch if type(getPlayerStorageValue(cid, storage)) ~= "string" or not string.find(getPlayerStorageValue(cid, storage), "magu") then --alterado v1.9 setPlayerStorageValue(cid, storage, "normal = 0, great = 0, super = 0, ultra = 0, saffari = 0, dark = 0, magu = 0, sora = 0, yume = 0, dusk = 0, tale = 0, moon = 0, net = 0, premier = 0, tinker = 0, fast = 0, heavy = 0;") --alterado v1.9 end local owner = getItemAttribute(item2.uid, "corpseowner") local pOwner = getPlayerByName(owner) local isInParyWithPlayer = false if isInParty(cid) and isInParty(pOwner) then isInParyWithPlayer = isPartyEquals(pOwner, cid) end if owner and isCreature(pOwner) and isPlayer(pOwner) and cid ~= pOwner and not isInParyWithPlayer then doPlayerSendCancel(cid, "Desculpa. Isso não é possivel.") return true end local newidd = isShinyName(name) and ballcatch[item.itemid].ball[2] or ballcatch[item.itemid].ball[1] or false --alterado v1.9 local typeee = ballcatch[item.itemid].typeee local boost = ballcatch[item.itemid].boost local catchBlocks = {"Kabuto", "Kabutops", "Omanyte", "Omastar","Shiny Vileplume", "Shiny Marowak", "Shiny Umbreon", "Shiny Fearow", "Shiny Espeon", "Shiny Flareon", "Shiny Jolteon", "Shiny Vaporeon", "Shiny Salamence", "Shiny Magmortar", "Shiny Electivire", "Shiny Scizor", "Moltres", "Articuno", "Zapdos", "Aerodactyl", "Hitmonlee", "Hitmonchan", "Hitmontop", "Raikou", "Entei", "Suicune", "Lugia", "Ho-oh"} if isInArray(catchBlocks, name) then doSendMsg(cid, "Você não pode capturar este pokemon.") return true end local catchCyber = {"Shiny Dodrio", "Shiny Magneton", "Shiny Espeon", "Shiny Umbreon", "Shiny Rhydon", "Shiny Ninetales", "Shiny Onix", "Shiny Ariados", "Shiny Stantler", "Shiny Politoed"} if isInArray(catchCyber, name) and getPlayerStorageValue(cid, 50926) ~= 1 then doSendMsg(cid, "Você não concluiu a Cyber Quest!") return true end if getPlayerStorageValue(cid, 1654987) >= 1 then doSendMsg(cid, "Você não pode capturar pokémons nesse local.") return true end if typeee == "master" and isShinyName(name) then doSendMsg(cid, "Você não pode capturar pokemon shiny com a master ball.") return true end -- // New's Bag \\ -- if typeee == "poke" then local valor = getPlayerStorageValue(cid, 233200) <= 0 and 1 or getPlayerStorageValue(cid, 233200) setPlayerStorageValue(cid, 233200, valor + 1) elseif typeee == "great" then local valor1 = getPlayerStorageValue(cid, 233201) <= 0 and 1 or getPlayerStorageValue(cid, 233201) setPlayerStorageValue(cid, 233201, valor1 + 1) elseif typeee == "super" then local valor2 = getPlayerStorageValue(cid, 233202) <= 0 and 1 or getPlayerStorageValue(cid, 233202) setPlayerStorageValue(cid, 233202, valor2 + 1) elseif typeee == "ultra" then local valor3= getPlayerStorageValue(cid, 233203) <= 0 and 1 or getPlayerStorageValue(cid, 233203) setPlayerStorageValue(cid, 233203, valor3 + 1) end if getPlayerStorageValue(cid, 233200) >= 100 and getPlayerStorageValue(cid, 232200) ~= 1 then doPlayerAddItem(cid, 12683, 1) setPlayerStorageValue(cid, 233200, 0) elseif getPlayerStorageValue(cid, 233201) >= 250 and getPlayerStorageValue(cid, 232201) ~= 1 then doPlayerAddItem(cid, 12682, 1) setPlayerStorageValue(cid, 233201, 0) elseif getPlayerStorageValue(cid, 233202) >= 500 and getPlayerStorageValue(cid, 232202) ~= 1 then doPlayerAddItem(cid, 12684, 1) setPlayerStorageValue(cid, 233202, 0) elseif getPlayerStorageValue(cid, 233203) >= 1000 and getPlayerStorageValue(cid, 232203) ~= 1 then doPlayerAddItem(cid, 12685, 1) setPlayerStorageValue(cid, 233203, 0) end if getPlayerStorageValue(cid, 244787) >= 1 and typeee ~= "saffari" then doPlayerSendCancel(cid, "Você não pode capturar esse pokémon com essa Pokébola.") return true end if getPlayerStorageValue(cid, 244787) >= 1 and getPlayerItemCount(cid, 12617) <= 1 then --alterado v1.9 setPlayerStorageValue(cid, 244787, -1) doTeleportThing(cid, {x = 925, y = 1535, z = 6}, false) doSendMagicEffect(getThingPos(cid), 21) doPlayerSendTextMessage(cid, 27, "Você não tem mais Saffari Ball!") end --[[ if getPlayerStorageValue(cid, 141416) >= 1 then return true end]]-- local catchinfo = {} if isShinyName(name) then catchinfo.rate = ballcatch[item.itemid].cr + getPlayerSorte() else catchinfo.rate = ballcatch[item.itemid].cr + getPlayerSorteInNormal() end catchinfo.catch = ballcatch[item.itemid].on catchinfo.fail = ballcatch[item.itemid].off catchinfo.newid = newidd catchinfo.name = doCorrectPokemonName(name) catchinfo.topos = topos --catchinfo.chance = x.chance doBrokesCount(cid, newpokedex[doCorrectPokemonName(name)].stoCatch , typeee) doSendDistanceShoot(getThingPos(cid), topos, ballcatch[item.itemid].send) doRemoveItem(item.uid, 1) ---- newsBalls if (ballcatch[item.itemid].type ~= nil or ballcatch[item.itemid].pokes ~= nil) then catchinfo.rate = getBallsRate(catchinfo.name, item.itemid) + getPlayerSorte() end if isGod(cid) or getPlayerStorageValue(cid, 394672) >= 1 then catchinfo.rate = 100000 end if getPlayerStorageValue(cid, storage_buff_catch) <= os.time() then if getPlayerStorageValue(cid, 121212) >= 1 then catchinfo.rate = 1000 setPlayerStorageValue(cid, storage_buff_catch, os.time() + (60 * minutes_buff)) end end local d = getDistanceBetween(getThingPos(cid), topos) setPlayerStorageValue(cid, 141416, 1) addEvent(setPlayerStorageValue, 725, cid, 141416, -1) doItemSetAttribute(item2.uid, "catching", 1) addEvent(doSendPokeBall, d * 70 + 100 - (d * 14) , cid, catchinfo, false, false, typeee, 1.5) addEvent(doSendMagicEffect, (d * 70 + 100 - (d * 14)) - 100, topos, 3) return true end function getPlayerSorte() if math.random(1, 200) >= 199 then ballS = math.random(250, 450) else ballS = math.random(1, 35) end return ballS end function getPlayerSorteInNormal() if math.random(1, 100) >= 95 then ballS = math.random(250, 450) else ballS = math.random(1, 35) end return ballS end function getBallsRate(name, id) if pokes[name] then if isInArray(ballcatch[id].type, pokes[name].type) or isInArray(ballcatch[id].type, pokes[name].type2) or isInArray(ballcatch[id].pokes, name) then return 6 end end return 4 end Nas duas primeiras linhas do código tem uma variável que armazena o valor da storage que irá guardar o tempo para usar o buff novamente e embaixo tem a variável que contém o tempo em minutos para usar o buff, só alterar o tempo, pois eu deixei 5 apenas como valor fictício. Teste e se der algum problema, me avise.
    1 ponto
  39. WorstZoe

    O Tibia Faliu!

    Eu criei um grande texto e apaguei tudo pois era um desabafo desnecessário do quão triste eu fico vendo o estado atual do Xtibia. Muitas pessoas incríveis não só aprenderam aqui, como deixaram inúmeros ensinamentos nas páginas desse fórum. Todos esses tutoriais / ensinamentos AINDA ESTÃO nesse fórum, mas a maioria das pessoas aqui só vai ler se os tópicos forem movidos pra área de downloads. (Eu tinha uma conta lá de 2010 que perdi, mas felizmente pude ver esse fórum em seu auge.) --------------------------------------- É isso. Atenciosamente, Zoe.
    1 ponto
  40. LeoTK

    O Tibia Faliu!

    Realmente o problema é que muitos desses que estão esperando a base do momento são preguiçosos que não tem coragem nem de usar a barra de pesquisa do fórum para pesquisar prefere criar um tópico e esperar alguém mandar o link do tópico com a solução do problema etc... enfim é preciso mudar as atitudes também as pessoas querem então precisa aprender a estudar também não só depender do fórum para tudo claro que não sejamos hipócritas os fóruns são essenciais juntos com todos os seus conteúdos porém falta a vontade de aprender da comunidade também
    1 ponto
  41. Link da base: https://www.mediafire.com/file/9qg0632j133mdtz/XYZ_server.rar/file SRC: https://www.mediafire.com/file/os8byvo9i8yfq7o/Servidor_Sources_(Atual).rar/file CLIENT: https://www.mediafire.com/file/pf4dt8w4a94lt7w/pkxroclient.rar/file
    1 ponto
  42. Satou

    Nto Panzer V3

    Salve Salve Pessoal do Xtibia hj vim postar o servidor do NTO PANZER V3 com o client E o Servidor Nao Contem o Mapa Algumas Vocaçoes que o servidor possui Servidor - http://adf.ly/1OfRLs Client - http://adf.ly/1OfOvU Scan : https://www.virustotal.com/pl/file/a62f73e607aec299d1fe772727c44298e82809cf412c65e08e70a1dec1d06909/analysis/1442861532/ Creditos : Kazuya , Sirius(Satou)
    1 ponto
  43. Bom Dia xTibianos.. O titulo já diz tudo, estou precisando de um script(quest) que dê items aleatorio (configuravel), se alguem puder me ajudar.. Grato desde já !
    1 ponto
  44. zipter98

    Efeito no Chao Que Tira HP

    Globalevent: local config = { effect = xxx, --Efeito. hp = xxx, --HP tirada. pos = { {x = x, y = y, z = z}, {x = x, y = y, z = z}, {x = x, y = y, z = z}, --etc }, } function onThink() for _, pos in pairs(config.pos) do local c = getTopCreature(pos).uid doSendMagicEffect(pos, config.effect) if c > 0 and isPlayer(c) then doCreatureAddHealth(c, -config.hp) end end return true end
    1 ponto
  45. Administrador

    Daniel Sprites (free)

    Resultados dos meus treinos hihi Fiquem a vontade para usar!
    1 ponto
  46. faltou usar o 'return' nas mensagens function onUse(cid, item, fromPosition, itemEx, toPosition) local config = { s = 11128, -- storage level = 50, -- level minimo time = 60, -- tempo em minutos para voltar a abrir a chest item = {{2160, 1},{2152, 25},{2148, 50} } -- items sortiados(pode adicionar mais) } if getPlayerLevel(cid) < config.level then return doPlayerSendCancel(cid, "Você deve ter pelo menos level ".. config.level .." para abrir a Chest.") elseif getPlayerStorageValue(cid, config.s) >= os.time() then local minutos = math.floor((getPlayerStorageValue(cid, config.s) - os.time())/(60)) return doPlayerSendCancel(cid, "Você deve esperar ".. (minutos < 0 and 0 or minutos) .." minutos para voltar a abrir o Bau.") end local r = math.random(1, #config.item) doPlayerAddItem(cid, config.item[r][1], config.item[r][2]) setPlayerStorageValue(cid, config.s, os.time()+config.time*60) return true end
    1 ponto
  47. pelo que eu entendi sua config.lua não ta configurada entra na config.lua da CTRL + F procura pro worldType deixa assim worldType = "pvp"
    1 ponto
  48. eduardo190696

    Auto Loot

    CRIADOR : JANO Retirado: Outro forum Script: Auto Loot *-* creaturescripts.xml <event type="login" name="aloot_reg" event="script" value="aloot.lua"/> <event type="kill" name="aloot_kill" event="script" value="aloot.lua"/> creaturescripts/scritps aloot.lua function onLogin(cid) registerCreatureEvent(cid, "aloot_kill") return true end local stor = 7575 function autoloot(cid, target, pos) local function doStack(cid, itemid, new) local count = getPlayerItemCount(cid, itemid) if (count > 100) then count = count - math.floor(count / 100) * 100 end local newCount = count + new if (count ~= 0) then local find = getPlayerItemById(cid, true, itemid, count).uid if (find > 0) then doRemoveItem(find) else newCount = new end end local item = doCreateItemEx(itemid, newCount) doPlayerAddItemEx(cid, item, true) end local function scanContainer(cid, uid, list) for k = (getContainerSize(uid) - 1), 0, -1 do local tmp = getContainerItem(uid, k) if (isInArray(list, tmp.itemid)) then if isItemStackable(tmp.itemid) and (getPlayerItemCount(cid, tmp.itemid) > 0) then doStack(cid, tmp.itemid, tmp.type) else local item = doCreateItemEx(tmp.itemid, tmp.type) doPlayerAddItemEx(cid, item, true) end doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Looted ' .. tmp.type .. ' ' .. getItemNameById(tmp.itemid) .. '.') doRemoveItem(tmp.uid) elseif isContainer(tmp.uid) then scanContainer(cid, tmp.uid, list) end end end local items = {} for i = getTileInfo(pos).items, 1, -1 do pos.stackpos = i table.insert(items, getThingFromPos(pos)) end if (#items == 0) then return end local corpse = -1 for _, item in ipairs(items) do local name = getItemName(item.uid):lower() if name:find(target:lower()) then corpse = item.uid break end end if (corpse ~= -1) and isContainer(corpse) then scanContainer(cid, corpse, tostring(getPlayerStorageValue(cid, stor)):gsub('_', ''):explode(',')) end end function onKill(cid, target, lastHit) if not isPlayer(target) then local infos = getPlayerStorageValue(cid, stor) if (infos == -1) then return true end local list = tostring(infos):explode(',') if (#list == 0) then return true end addEvent(autoloot, 150, cid, getCreatureName(target), getCreaturePosition(target)) end return true end talkactios.xml <talkaction words="/aloot" hide="yes" event="script" value="aloot.lua"/> Talkaction/scrips local stor, limit = 7575, 5 --storage, limit to add. local allow_container = false --empty! not looted with items, atleast for now. function onSay(cid, words, param) local expl = param:explode(':') local action, rst = expl[1], expl[2] if (action:lower() == 'check') then local infos, list = getPlayerStorageValue(cid, stor), {} if (infos ~= -1) then list = tostring(infos):explode(',') end local txt = 'Autoloot List:\n' if (#list > 0) then for k, id in ipairs(list) do id = id:gsub('_', '') if tonumber(id) then txt = txt .. getItemNameById(tonumber(id)) .. ((k < #list) and '\n' or '') end end else txt = 'Empty' end doPlayerPopupFYI(cid, txt) elseif (action:lower() == 'add') then local infos, list = getPlayerStorageValue(cid, stor), {} if (infos ~= -1) then list = tostring(infos):gsub('_', ''):explode(',') end if (#list >= limit) then return doPlayerSendCancel(cid, 'You already have ' .. limit .. ' autolooting items.') end local item = tonumber(rst) if not item then item = getItemIdByName(rst, false) if not item then return doPlayerSendCancel(cid, 'not valid item.') end end if not allow_container and isItemContainer(item) then return doPlayerSendCancel(cid, 'this item can not be autolooted.') end local attrs = getItemInfo(item) if not attrs then return doPlayerSendCancel(cid, 'not valid item.') elseif not attrs.movable or not attrs.pickupable then return doPlayerSendCancel(cid, 'this item can not be autolooted.') end if isInArray(list, item) then return doPlayerSendCancel(cid, 'already added.') end table.insert(list, tostring(item)) local new = '' for v, id in ipairs(list) do new = new .. '_' .. id:gsub('_' ,'') .. ((v < #list) and ',' or '') end doPlayerSetStorageValue(cid, stor, tostring(new)) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Item >>' .. getItemNameById(item) .. '<< has been added to the autoloot list.') elseif (action:lower() == 'remove') then local infos, list = getPlayerStorageValue(cid, stor), {} if (infos ~= -1) then list = tostring(infos):gsub('_', ''):explode(',') end if (#list == 0) then return doPlayerSendCancel(cid, 'You dont have any item added.') end if (#list >= limit) then return doPlayerSendCancel(cid, 'You already have ' .. limit .. ' autolooting items.') end local item = tonumber(rst) if not item then item = getItemIdByName(rst, false) if not item then return doPlayerSendCancel(cid, 'not valid item.') end end if not isInArray(list, item) then return doPlayerSendCancel(cid, 'This item is not in the list.') end local new = '' for v, id in ipairs(list) do if (tonumber(id) ~= item) then new = new .. '_' .. id:gsub('_' ,'') .. ((v < #list) and ',' or '') end end doPlayerSetStorageValue(cid, stor, tostring(new)) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Item >>' .. getItemNameById(item) .. '<< removed from the autoloot list.') end return true end Usando /aloot check Cheka a Lista dos Loots /aloot add:itemid ou nome do item Exemplo /aloot add:worm /aloot add:2170 16:42 Item >>worm<< has been added to the autoloot list. Para remover /aloot remove:worm /aloot remove:2170 Exemplo Testado: 16:41 Looted 2 gold coin. 16:41 Looted 1 cheese. é isso pessoal gosto da + Rep
    1 ponto
  49. Nao precisa apagar o <script> <event name="inquisitionPortals"/> </script> é simple arrumar, no meu server pelomenos deu certo! Faz o seguinte: Vai na pasta do seu OT data\actions\scripts\inq Procura la o arquivo inquisitionPortals.lua agora vc copia esse arquivo (NAO RECORTE! SOMENTE COPIE!!) e cola ele na pasta: data\creaturescripts\scripts volta na pasta creaturescripts e abra o creaturescripts.xml e adicione a seguinte linha: <event type="death" name="inquisitionPortals" script="inquisitionPortals.lua"/> Ajudei?? REP + ae
    1 ponto
Líderes está configurado para São Paulo/GMT-03:00
×
×
  • Criar Novo...