Ir para conteúdo

WooX

Héroi
  • Registro em

  • Última visita

Tudo que WooX postou

  1. Posta a solução ai pra quem tiver o mesmo problema.
  2. WooX postou uma resposta no tópico em Suporte Tibia OTServer
    Posta os erros ai, minha bola de cristal ta com defeito.
  3. Eu deixei explicito no tópico que não daria suporte relacionado a isso, mas como este é um problema comum e que pode acontecer nas mais variadas versões do Gesior eu posso dar uma olhada. Liga o modo debug em index.php, tenta criar uma guild e manda uma imagem do que for exibido aqui.
  4. Existe uma versão sandbox pra TFS 1.x há um bom tempo já, mas todas tentativas de fazer algo semelhante compatível com TFS 0.x resultava em algo bem limitado como execução de uma função por vez e limite de parâmetros nas funções.
  5. Lua demo in-game Quando me deparei com a necessidade de ter que fazer e registrar uma talkaction sempre quando fosse testar algum algoritmo ou função Lua, eu decidi fazer esse sisteminha. Ele permite executar códigos e instruções Lua in-game sem a necessidade de dar reload ou sequer sair do client do Tibia, também é possivel executar qualquer função Lua existente na engine em execução no servidor. Algumas imagens Instalação Crie um arquivo chamado lua.lua dentro do seguinte diretório e com o conteúdo exibido abaixo: data/talkactions/scripts/ function onSay(cid, words, param) registerCreatureEvent(cid, "luaDemo") doShowTextDialog(cid, 1947, true) return true end Após isso crie um outro arquivo, dessa vez chamado lua_demo.lua dentro do seguinte diretório e com o conteúdo exibido abaixo: data/creaturescripts/scripts/ function onTextEdit(cid, item, newText) if item.itemid == 1947 then _G.cid = cid local lines = {} for line in newText:gmatch("[^\n]+") do table.insert(lines, line) end for i = 1, #lines do local func = loadstring(lines[i]) if func then local ret, err = pcall(func) if not ret then doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, "[Lua error]:\nline "..i..": "..err) end end end unregisterCreatureEvent(cid, "luaDemo") end return true end Depois basta registrar ambos os scripts conforme indicado abaixo: data/talkactions/talkactions.xml <talkaction log="yes" words="/lua" access="5" event="script" value="lua.lua"/> data/creaturescripts/creaturescript.xml <event type="textedit" name="luaDemo" event="script" value="lua_demo.lua"/> É isso... o sistema da grandes possibilidades aos administradores que souberem Lua e praticidade pra quem for desenvolver ou debugar algum código Lua.
  6. Sistema top mano, ta de parabéns.
  7. Tem sim. getSpectators(centerPos, rangex, rangey[, multifloor = false])
  8. O código está certo, isso levando em conta a versão 5.4 em diante do PHP, o XAMPP que está usando deve usar uma versão inferior do PHP. Tenta assim: <?php $monsters = array( 1 => "Warlock", 2 => "Dragon Lord", 3 => "Dawnfire Asura", 4 => "Draken Abomination", 5 => "Behemoth", 6 => "Medusa", 7 => "Frost Dragon", 8 => "Demon", 9 => "Grim Reaper", 10 => "Serpent Spawn", 11 => "Hydra", 12 => "Midnight Asura", 13 => "Ghastly Dragon", 14 => "Hellhound", 15 => "Undead Dragon", 16 => "Skeleton Elite Warrior", 17 => "Draken Elite", 18 => "Fury" ); ?>
  9. WooX postou uma resposta no tópico em Mapas de Tibia
    Cave Exclusiva Cave exclusiva ou também conhecido como Super UP é um sistema que assim como o nome indica proporciona ao jogador acesso a uma cave exclusiva, onde somente ele tem acesso e pode caçar sem ser perturbado. Eu particularmente não gosto da ideia do sistema, mas querendo ou não é bem popular nos servidores Baiak. Escrevi esse sistema a mais ou menos uns 2 anos atrás quando um amigo que era dono de um servidor Baiak na época estava tendo problemas com o sistema que usava, sistema esse que acredito ser o que vem por padrão nas bases de Baiak por ai e o que provavelmente é o mais usado até hoje. Sobre o sistema O sistema foi testado apenas em OTX2, mas provavelmente também funcione em TFS 0.4 Com a intenção de fazer com que fosse de fácil configuração, eu escrevi o sistema mantendo as funções principais e configurações em uma Lib separada dos arquivos, irei citar algumas características do sistema. Reiniciar o servidor ou manter ativo o global save não interfere na funcionalidade do sistema, todas as caves são entregues novamente no momento de abertura do servidor. O sistema funciona através de global storage e devido a isto não é necessário modificação alguma no banco de dados. O jogador tem a liberdade de escolher a cave que quiser, desde que ela esteja livre. O jogador pode verificar o status de cada uma das caves registradas no sistema e ver informações como quem é o dono de determinada cave e o tempo restante para que a cave esteja livre novamente. Algumas imagens Instalação Este sistema utiliza de funções contidas na lib do link abaixo, então antes de mais nada é necessário adicionar esta lib no servidor. Todos os arquivos necessários para instalação do sistema estão anexados no tópico, irei apenas mostrar como deve ser configurado. Como auxilio para saber onde vai cada um, todos os scripts contém a tag XML a ser registrada. Como mencionado anteriormente toda configuração do sistema se encontra na lib do mesmo, segue abaixo explicação de como configurar. caveExclusiva = { config = { rentTime = 4 * 60 * 60, buyItemID = 11758, caveStats = true, buyMessage = "Você comprou a cave de %s por %s.", timeLeftMessageInCave = "Seu tempo na cave de %s acabou e você foi teleportado para o templo.", timeLeftMessage = "Seu tempo na cave de %s acabou.", signs = { useSigns = true, signID = 1815, signLook = "Esta cave pertence a %s, estará livre novamente as %s." } }, caves = { [9851] = { gStor = 7330, caveName = "Cave 1", enterPos = {x=0, y=0, z=7}, signPos = {x=0, y=0, z=7} }, [9852] = { gStor = 7331, caveName = "Cave 2", enterPos = {x=0, y=0, z=7}, signPos = {x=0, y=0, z=7} } }, storages = { cave = 35070, inCave = 35071, time = 35072 } } rentTime: tempo que o jogador vai permanecer como dono de uma cave, o valor deve ser definido em segundos. buyItemID: ID do item em que o jogador deve usar o item definido na action para comprar uma cave. caveStats: pode ser definido como true ou false, se definido como falso não irá permitir o uso da talkaction que exibe informações sobre as caves. buyMessage: esta é a mensagem que irá aparecer quando o jogador comprar uma cave. timeLeftMessageInCave: esta é a mensagem que irá aparecer quando acabar o tempo e o player estiver dentro da cave. timeLeftMessage: esta é a mensagem que irá aparecer quando acabar o tempo e o player estiver fora da cave. useSigns: pode ser definido como true ou false, se definido como verdadeiro irá exibir o dono e o tempo restante em um quadro ou qualquer item configurado na variável abaixo. signID: ID do item em que será exibido as informações da cave. signLook: mensagem a ser exibida ao dar look no item definido na variável acima. As caves devem ser adicionadas e configuradas da seguinte maneira: [9851] = { -- Action ID, um pra cada cave. gStor = 7330, -- Global storage, um valor pra cada cave. caveName = "Cave 1", -- Nome da cave. enterPos = {x=0, y=0, z=7}, -- Posição que o player vai ser teleportado ao entrar na cave. signPos = {x=0, y=0, z=7} -- Posição do item que foi configurado na variavel signID no mapa. }, No mapa é necessário adicionar tudo que foi definido na configuração do sistema, isso inclui action IDs e os items configurado em buyItemID e signID, veja abaixo alguns exemplos. Créditos @Baalszor por testar todo o sistema. cave_action.lua cave_creaturescript.lua cave_enter.lua cave_exit.lua cave_start.lua cave_talkaction.lua lib_exclusivecave.lua
  10. Não sei o que a função leaveArena faz, mas se o script está registrado corretamente deveria funcionar.
  11. Pra funcionar o callback precisa retornar falso.
  12. Utiliza isso com o callback onPrepareDeath que devê funcionar.
  13. WooX postou uma resposta no tópico em Websites
    Gesior 2012 V. Baiak-PvP Como disse no tópico do servidor estou apenas postando o conteúdo e não pretendo dar suporte a eventuais duvidas e problemas, só estou postando pra evitar que paguem por algo que pode ser obtido de graça então nem adianta vir me mandar mensagem privada pedindo ajuda que vai ser ignorado. Se você ainda não viu o tópico sobre o servidor em questão, vale apena conferir, link para acesso abaixo. Conteúdo Assim como com o servidor eu não cheguei a analisar a fundo este conteúdo e vou listar apenas o que me foi dito que contém. Página Boosted creatures: página funcionando em sincronia com o sistema do servidor, atualizando no site o monstro que está com o boost e exibindo lista dos monstros anteriores da mesma semana. Página Anti entrosa: página em que o usuário pode selecionar as opções que deseja para a war e a própria página exibe a talkaction necessária pra enviar um convite com os parâmetros selecionados . Exibição de Pagamentos: tabela com informação de pedidos e status de pagamento na página de gerenciamento de conta (account management), exibe todas as doações realizadas pelo jogador. Seção de Pagamentos: seção de pagamentos na própria página de gerenciamento de conta (account management), com os seguintes meios de pagamento: PagSeguro, PicPay, PayGol, PayPal e Mercado Pago, sendo todos estes com retorno automático de pontos. Imagens Créditos Nada contido aqui é de minha autoria, tudo foi adquirido pelo dono e idealizador do projeto. Créditos ao Maycon por desenvolver alguns sistemas utilizados no site. Link para Download Download - Scan Obs: Link para download de uma database limpa e compatível com o site se encontra no post do servidor.
  14. a função doSendAnimatedText tem limite de 9 caracteres, você não conseguiria exibir essa frase do jeito que ta ai. Como eu disse antes basta usar variantToPosition(var) pra definir a posição, substitui onde está mWall na função por isso que deve funcionar.
  15. Não sei dizer, nunca testei o método. Pode usar variantToPosition(var) pra pegar a posição e exibir a mensagem.
  16. Usa global storage.
  17. Só quem manja de engenharia reversa conseguiria alterar isso no client da cip visto que ninguém tem acesso a source, se você estivesse usando otclient a história seria diferente.
  18. Posso estar enganado, mas a limitação também existe no lado do client, então alterar a informação enviada pelo server iria causar debug no client, isso considerando que você esteja usando o client da cip.
  19. Ela não tem que estar no script do movements, este é exclusivamente para as portas que devem fechar sozinhas mesmo. Manda seu scripts doors.lua, o que fica em actions mesmo.
  20. Acredito que isso não seja um problema do datapack, mas sim algo especifico pra você, nesse caso eu iria recomendar criar um tópico separado, mas como vi que você já te criou, vou tentar te ajudar por lá.

Informação Importante

Confirmação de Termo