Olá venho aqui pedir uma ajuda não tenho muita experiencia em programação mas queria implementar um script
é possivel criar um script onde um npc X nasça apenas em tiles pre determinados?
Exemplo: NPC Xtibia só vai nascer nos tileid 156
assim o npc Xtibia iria "escolher" entre todos os tiles do mapa com id 156 para respawnar
Estou usando a base open source do KPDO
se puderem ajudar eu agradeço ><
[Resolvido] [AJUDA]Respaw npc por tile

Oq exatamente quer fazer? Não é mais fácil spawnar por posição?
A ideia é criar um respaw aleatório de vários npc onde o jogador precise procurar diariamente por eles por todo o mapa...e todo server save todo o processo se repete e novamente procurar pelo npc... etc
o npc que você fala seria um npc agressivo igual o da brotherhood?
Nn seriam npc's normais... de troca, missão, task etc
o que eu queria é que esses npc's fossem respawnados aleatoriamente no mapa e não algo fixo
olha, enquanto você não acha o script ideal você pode usar este aqui
Em movements xml adicione essa tag
<movevent type="StepIn" actionid="19384" event="script" value="npcrandom.lua"/>
agora em creature events > scripts copie um .lua e renomeie para npcrandom.lua, apague tudo que tem dentro e cole isto
function onStepIn(cid, item, position, fromPosition) local positio = {x=1034, y=1039, z=7} local positio2 = {x=1036, y=1039, z=7} local positio3 = {x=1038, y=1039, z=7} local positio4 = {x=1040, y=1039, z=7} local positio5 = {x=1034, y=1039, z=7} local positio6 = {x=1036, y=1039, z=7} local positio7 = {x=1038, y=1039, z=7} local positio8 = {x=1040, y=1039, z=7} local positio9 = {x=1034, y=1039, z=7} local positio10 = {x=1036, y=1039, z=7} local chance = math.random(1,10) if chance == 1 then doTeleportThing(cid, positio) elseif chance == 2 then doTeleportThing(cid, positio2) elseif chance == 3 then doTeleportThing(cid, positio3) elseif chance == 4 then doTeleportThing(cid, positio4) elseif chance == 5 then doTeleportThing(cid, positio5) elseif chance == 6 then doTeleportThing(cid, positio6) elseif chance == 7 then doTeleportThing(cid, positio7) elseif chance == 8 then doTeleportThing(cid, positio8) elseif chance == 9 then doTeleportThing(cid, positio9) elseif chance == 10 then doTeleportThing(cid, positio10) end return true end
Agora crie um teleport em 1 lugar onde os players não tem acesso com o adction id 19384 no seu mapa e faça o npc desejado spawnar em cima dele (lembre de não deixar espaço aberto ao lado do teleport se não o npc ira spawnar no espaço do lado do teleport
então ao iniciar o server o npc sera jogado em 1 dessas 10 localizações editaveis.
para adicionar mais lugares é só ir adicionando os positiosX, mudar a quantidade de lugars no Math.random e adicionar mais elseif chance = X
Nossa... realmente é muito bom o script posso determinar mts coordenadas e usar isso a todos os npc... mt obrigado reputado...
se a staff quiser pode fechar o tópico...
"O fracasso é a oportunidade de se começar de novo inteligentemente"