Tudo que Kyle Bellini postou
-
Event onTimer
"Evento onTimer não encontrado", tua source tá procurando 'onTimer' no script mas não está encontrando, troca de onTime(interval) pra onTimer(interval) que já deve resolver.
-
[Open Source] Tibia Server C# .NET 5
Parabéns, está muito show! Boa sorte, irei acompanhar. ?
-
[Resolvido] Todos os comandos de adm de poketibia.
Só utilizar /owner 0 Que aí a house fica livre e sem dono.
-
Item que Cria um portal - Item de teleport
Mas aí o que seria flexível nesse caso?
-
Item que Cria um portal - Item de teleport
Consegue explicar um pouco mais ? Não entendi se o portal seria removido, ou se mais pessoas iriam entrar nesse portal.. Não seria melhor apenas teleportar o jogador ? (caso ninguém fosse entrar no portal) Explica um pouquinho o que pretende fazer.
-
(Resolvido)Dar 10% a mais de exp + skills para quem está dominando o castle.
Editei a lib do Vodkart, testa assim:
-
(Resolvido)Teleport aparecer Em X Local somente ao matar 2 ''boss'' Gerador.
Estou sem internet, por isso só consegui olhar hoje auhauha Caso não tenha conseguido ainda, eu fiz uma Action (acredito que seja melhor). O jogador irá dar USE no item que tiver a actionid, se não tiver bosses vivos um portal será aberto, senão, uma mensagem aparecerá informando que ainda estão vivos. Eu coloquei alguns comentários no script, pra facilitar o entendimento. As posições você vai pegar uma da ponta superior esquerda, e uma da ponta inferior direita. Utilizando sua imagem de exemplo: https://i.imgur.com/OT8wbks.png Crie um arquivo .lua dentro da pasta (Data > Actions > Scripts) , copie todo o código e cole no arquivo criado. Agora em actions.xml, adicione esta tag: <action actionid="2683" event="script" value="nome do arquivo criado.lua"/> -- Em actionid="2683" coloque um valor que não esteja sendo utilizado Após adicionar, este deve ser o resultado (RIP qualidade): Portal.mp4
-
(Resolvido)Teleport aparecer Em X Local somente ao matar 2 ''boss'' Gerador.
Olá, Eu fiz de modo bem simples, como tu não pediu nada de mais ^-^ <globalevent name="BossKing" interval="600" event="script" value="bossking.lua"/> -- interval="aqui é o tempo em segundos(600seg = 10 min)"-->
-
(Resolvido)End expected to close"If" near <eof>
era só adicionar um end pro if indicado no erro: local balls = getItemsInContainerById(bp.uid, 11829) ------ Ultraball if #balls >= 1 then for _, ball in pairs (balls) do local x = icons[getItemAttribute(ball, "poke")] doTransformItem(ball, x.on) doItemSetAttribute(ball, "ball", "Icone") doItemSetAttribute(ball, "morta", "no") doItemSetAttribute(ball, "Icone", "yes") end end local balls = getItemsInContainerById(bp.uid, 11831) --- Ultraball morta if #balls >= 1 then for _, ball in pairs (balls) do local x = icons[getItemAttribute(ball, "poke")] doTransformItem(ball, x.off) doItemSetAttribute(ball, "ball", "Icone") doItemSetAttribute(ball, "morta", "yes") doItemSetAttribute(ball, "Icone", "yes") end end ------------------------------ local balls = getItemsInContainerById(bp.uid, 11835) ------ Superball if #balls >= 1 then for _, ball in pairs (balls) do local x = icons[getItemAttribute(ball, "poke")] doTransformItem(ball, x.on) doItemSetAttribute(ball, "ball", "Icone") doItemSetAttribute(ball, "morta", "no") doItemSetAttribute(ball, "Icone", "yes") end end local balls = getItemsInContainerById(bp.uid, 11837) --- Superball morta if #balls >= 1 then for _, ball in pairs (balls) do local x = icons[getItemAttribute(ball, "poke")] doTransformItem(ball, x.off) doItemSetAttribute(ball, "ball", "Icone") doItemSetAttribute(ball, "morta", "yes") doItemSetAttribute(ball, "Icone", "yes") end end
-
(AJUDA) EGG System
Testa desse modo, então.. Aproveitei e dei uma organizada também: local box = { [1] ={msg = "You Open a Box +3",np = "Contains a Ivysaur.",nm= 'Ivysaur'}, [2] ={msg = "You Open a Box +3",np = "Contains a Charmeleon.",nm= 'Charmeleon'}, [3] ={msg = "You Open a Box +3",np = 'Contains a Wartortle.',nm= 'Wartortle'}, [4] ={msg = "You Open a Box +3",np = 'Contains a Raichu.',nm= 'Raichu'}, [5] ={msg = "You Open a Box +3",np = 'Contains a Fearow.',nm= 'Fearow'}, [6] ={msg = "You Open a Box +3",np = 'Contains a Vileplume.',nm= 'Vileplume'}, [7] ={msg = "You Open a Box +3",np = 'Contains a Venomoth.',nm= 'Venomoth'}, [8] ={msg = "You Open a Box +3",np = 'Contains a Parasect.',nm= 'Parasect'}, [9] ={msg = "You Open a Box +3",np = 'Contains a Clefable.',nm= 'Clefable'}, [10] ={msg = "You Open a Box +3",np = 'Contains a Wigglytuff.',nm= 'Wigglytuff'}, [11] ={msg = "You Open a Box +3",np = 'Contains a Sandslash.',nm= 'Sandslash'}, [12] ={msg = "You Open a Box +3",np = 'Contains a Dugtrio.',nm= 'Dugtrio'}, [13] ={msg = "You Open a Box +3",np = 'Contains a Golduck.',nm= 'Golduck'}, [14] ={msg = "You Open a Box +3",np = 'Contains a Rapidash.',nm= 'Rapidash'}, [15] ={msg = "You Open a Box +3",np = 'Contains a Magneton.',nm= 'Magneton'}, [16] ={msg = "You Open a Box +3",np = 'Contains a Hypno.',nm= 'Hypno'}, [17] ={msg = "You Open a Box +3",np = 'Contains a Kingler.',nm= 'Kingler'}, [18] ={msg = "You Open a Box +3",np = 'Contains a Exeggutor.',nm= 'Exeggutor'}, [19] ={msg = "You Open a Box +3",np = 'Contains a Hitmonlee.',nm= 'Hitmonlee'}, [20] ={msg = "You Open a Box +3",np = 'Contains a Hitmonchan.',nm= 'Hitmonchan'}, [21] ={msg = "You Open a Box +3",np = 'Contains a Tangela.',nm= 'Tangela'}, [22] ={msg = "You Open a Box +3",np = 'Contains a Starmie.',nm= 'Starmie'}, [23] ={msg = "You Open a Box +3",np = 'Contains a Mr.Mime.',nm= 'Mr.Mime'}, [24] ={msg = "You Open a Box +3",np = 'Contains a Jolteon.',nm= 'Jolteon'}, [25] ={msg = "You Open a Box +3",np = 'Contains a Porygon.',nm= 'Porygon'} } function onUse(cid, item, fromPosition, itemEx, toPosition) function getTime(s) local n = math.floor(s / 60) s = s - (60 * n) return n, s end local e = box[math.random(1,25)] local incubadora = 7877 -- ID da incubadora local time = 4 -- tempo usado if itemEx.itemid == incubadora then if os.time()-getPlayerStorageValue(cid, 64231) <= 1296*60 then setPlayerStorageValue(cid, 49514, 4) minutes,seconds = getTime(1296*60-(os.time()-getPlayerStorageValue(cid, 64231))) return doPlayerSendCancel(cid, "Você precisa aguardar " .. minutes .. " minutos e " .. seconds .. " segundos.") elseif itemEx.itemid == incubadora and getPlayerStorageValue(cid, 49514) == 4 and os.time()-getPlayerStorageValue(cid, 64231) then setPlayerStorageValue(cid, 46574, 4) setPlayerStorageValue(cid, 64231, -1) setPlayerStorageValue(cid, 49514, -1) doPlayerSendTextMessage(cid, 27, "Este Egg está pronto para ser chocado.") elseif itemEx.itemid == incubadora and getPlayerStorageValue(cid, 46574) == 4 then doPlayerSendTextMessage(cid, 27, "Seu Egg acaba de chocar. Aqui está, cuide muito bem dele!") doRemoveItem(itemEx.uid,1) doPlayerSendTextMessage(cid,22,"Você abriu a incubadora, e recebeu um "..e.nm.."!") addPokeToPlayer(cid, e.nm, 0, nil, "poke") end end end
-
(Resolvido)NPC de task
oie, consegue enviar o script do NPC sem as modificações ?
-
(Resolvido)[C]: in function 'doSendMagicEffect'
Caso o do amigo acima não funcione, teste com esse: local voc = {716, 717, 718, 719, 720, 721, 722, 723, 724, 725} -- ID das vocações que poderão usar o Pergaminho. local corpse = {3058} local id = 26684 -- Id do edo pergaminho local edo = { ["[EDO TENSEI] Anbu"] = {hp = 50000, maxhp = 50000, corpse = 3058, chance = 100}, -- Nome do Edo, HP do Edo quando summoned, max hp do edo , corpo do edo, chance de falhar. } function onUse(cid, item, frompos, item2, topos) if(not(isInArray(voc, getPlayerVocation(cid)))) then return doPlayerSendTextMessage(cid, 25, "Voce nao tem a vocacao nescessaria") end if(not(isInArray(corpse, item2.itemid))) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, "voce precisa usar o pergaminho em um corpse") doSendMagicEffect(getThingPos(cid), 21) return true end local perga = doPlayerAddItem(cid, id, 1) for edo_tensei, v in pairs(edo) do if item2.itemid == v.corpse then if math.random(0,100) <= v.chance then doSendMagicEffect(getThingPos(cid), 21) doPlayerSendTextMessage(cid, 27, "".. edo_tensei .. " foi selado nesse pergaminho.") doRemoveItem(item.uid, 1) doRemoveItem(item2.uid, 1) doItemSetAttribute(perga, "namepet", edo_tensei) doItemSetAttribute(perga, "description", "Neste pergaminho foi selado um ".. edo_tensei ..".") doItemSetAttribute(perga, "lifepet", v.hp) doItemSetAttribute(perga, "maxlifepet", v.maxhp) else doPlayerSendTextMessage(cid, 27, "O pergaminho falhou") end end end return true end
-
Ajuda com script da inquisition
oie, testa assim e me fala se deu certo: local config = { tilepos5 = {x=33115, y=31702, z=12}. tilepos3 = {x=33114, y=31700, z=12}. tilepos4 = {x=33115, y=31700, z=12}. tilepos6 = {x=33116, y=31700, z=12}. tilepos7 = {x=33114, y=31701, z=12}. tilepos8 = {x=33115, y=31701, z=12}. tilepos9 = {x=33116, y=31701, z=12} } function onUse(cid, item, fromPosition, itemEx, toPosition) if(itemEx.uid == 6669) and (itemEx.itemid == 8759) then if getPlayerStorageValue(cid, 39000) <= 0 then doPlayerRemoveItem(cid, 7494, 1) doSendMagicEffect(config.tilepos5, 15) doSendMagicEffect(config.tilepos3, 5) doSendMagicEffect(config.tilepos4, 5) doSendMagicEffect(config.tilepos6, 5) doSendMagicEffect(config.tilepos7, 5) doSendMagicEffect(config.tilepos8, 5) doSendMagicEffect(config.tilepos9, 5) setPlayerStorageValue(cid, 39000, 1) doCreatureSay(cid, 'Você destruiu com sucesso o Shadow Nexus!', TALKTYPE_ORANGE_1) doPlayerSendTextMessage(cid, 22, "Seu Questlog foi atualizado!") else doPlayerSendCancel(cid, MESSAGE_INFO_DESCR, "You arent a inquisition member") end return TRUE end end
-
Nome Subindo No Player
Deixei alguns comentários no script, mas se sentir dúvida só avisar. Primeiro, crie um arquivo chamado groupEffect.lua e cole isso dentro: function onThink(interval) for _, cid in ipairs(getPlayersOnline()) do if getPlayerGroupId(cid) == 6 then -- Aqui você coloca o GroupID do Cargo (o mesmo nas outras linhas). doSendAnimatedText(getThingPos(cid), "Administrador", 174) -- Nesse número, você escolhe a cor da letra (o mesmo nas outras linhas). elseif getPlayerGroupId(cid) == 5 then doSendAnimatedText(getThingPos(cid), "Community Manager", 155) elseif getPlayerGroupId(cid) == 4 then doSendAnimatedText(getThingPos(cid), "Gamemaster", 181) end end return true end Feito isso, agora no seu globalevents.xml, adicione essa TAG: <globalevent name="GroupEffect" interval="1" event="script" value="groupEffect.lua"/> Caso queira modificar a frequência com que a mensagem aparece, só alterar o valor em 'interval'
-
(AJUDA) EGG System
Seu servidor tem gender system? Testa assim:
-
Pokemons não dão dano
Provavelmente você está modificando e/ou apagando algo de maneira errada.
-
Nao dar fly ou ride com fight
Posta o script em um spoiler, porque aí o pessoal não precisa baixar o arquivo.
-
npc storage
Pelos sistemas de tasks diárias que eu vi, sempre são ligados à alguma lib (no início fala sobre task_func, tente procurar algo parecido). Este script não indica qual o valor da storage, ele está puxando de outro arquivo. Aqui ele usou task_sys[task], como um valor pra verificar se o jogador pode iniciar a diária. if getPlayerStorageValue(cid, task_sys[task].start) <= 0 Aqui ele já atribuiu o valor, para que o jogador consiga executar se tivesse o valor = 1. setPlayerStorageValue(cid, task_sys[task].start, 1) Mais no finalzinho, vemos que ele usou essas daqui (que ficaram zeradas) : setPlayerStorageValue(cid, task_sys_storages[4], 0) setPlayerStorageValue(cid, task_sys_storages[5], 0) setPlayerStorageValue(cid, task_sys_storages[7], 0) Pra acompanhar, é só você ir lendo as frases (se deu recompensa, se iniciou, se não pôde iniciar, se terminou), e em seguida, conferir qual foi a storage responsável por aquela ação. Recomendo que você procure o outro arquivo que esteja relacionado à este script para descobrir os valores das storages, creio que não seja apenas ele em execução. Geralmente isso é usado pra 'facilitar' a vida de quem está montando o script, porque aí não precisa ir lá no meio modificar o número ou algo do tipo, é só modificar o 'local'. Exemplo: O daily_storage se tornou o valor '167943' local daily_storage = 167943 setPlayerStorageValue (cid, daily_storage, 1)
-
npc storage
Não entendi muito bem, você quer que seja possível concluir apenas uma única vez ? Ele entrega o prêmio, e fim da task ? Aliás, existe algum outro arquivo relacionado à este ?
-
[Retirado](Action Autoloot System) 2020
Olá, No seu servidor está funcionando normal ? Eu fiz alguns testes aqui e ele coleta apenas 1 tipo de item por vez, sendo no máximo até 2 tipos de itens, mais que isso ele não coleta. Aqui se fez necessário clicar cada vez que desejasse recolher algum item (se o monstro possui 5 itens diferentes no loot, você precisaria clicar 5 vezes) Irei tentar fazer algumas coisas aqui, pra ver no que dá.. Obrigado pela sua contribuição : D