Ir para conteúdo
  • Cadastre-se

O que achou desse Script ?  

21 votos

  1. 1. O que achou desse Script ?



Posts Recomendados

[GlobalEvents] Npc por tempo

Olá galera do Tibia King , venho trazer um novo script para vocês que pode ajudar muito em seu OTserver.

Como funciona o script ? : Esse script é assim , você escolhe um NPC de sua escolha e o NPC aparecerá no certo tempo que você escolher e na coordenada que você escolher .

Vamos para o Script então :

Vá em data/GlobalEvents/GlobalEvents.xml e adicione a tag abaixo :

<globalevent name="npc" interval="3600" event="script" value="npc.lua"/>

Vermelho - o tempo que o npc aparecerá 3600 = 1 Hora

Vá em data/globalevents/Scripts , copie e cole um arquivo .lua , renomeie-o para npc.lua e adicione o script abaixo :

function onThink(interval, lastExecution, thinkInterval)

local pos = {x=1054,y=913,z=7} -- Local onde aparece o npc

local npc = doCreateNpc("dalk", pos ) -- Altere o (dalk) pelo nome do seu npc.

local nMin = 20 -- tempo em minuto para o npc sumir.

addEvent(doRemoveCreature, nMin*60*1000, npc)

return true

end

A explicação de como editar o script está dentro do script mesmo

Créditos :

Lailton 80 % (Por fazer o script)

MatheusVidaLoka 20 % (Por arrumar erros e por disponibilizar o Script aqui no Tibia King)

Autorização para postar o Script Concedida !

Editado por MatheusVidaLoka (veja o histórico de edições)

Ajudei? Reputar Cai o dedo? Acho que não

fdrule_SEPARADOR_DE_TEXTO.gif

Mapper : 80%

Scripter : 40%

Client Maker : 100%

Spriter : 100%

Web Designer : Aprendendo

fdrule_SEPARADOR_DE_TEXTO.gif

Meus Mapas :

sign3zb.jpg

Link para o post
Compartilhar em outros sites

Oh man vai ajuda mt gente

vlwww

"ℱoco, ℱorçα, ℱé, ℱelicidαde & ℱodα-se os ℱilhos dα Putα."

Premiações:

tYBgy.png

Link para o post
Compartilhar em outros sites

Oh man vai ajuda mt gente

vlwww

Nads , lembrando se ver algum erro manda ai .

Ajudei? Reputar Cai o dedo? Acho que não

fdrule_SEPARADOR_DE_TEXTO.gif

Mapper : 80%

Scripter : 40%

Client Maker : 100%

Spriter : 100%

Web Designer : Aprendendo

fdrule_SEPARADOR_DE_TEXTO.gif

Meus Mapas :

sign3zb.jpg

Link para o post
Compartilhar em outros sites
  • 1 month later...

LAMENTO MAIS HOUVE UM ERRO

imagemwnrq.jpg

SCRIPT:

function onTime(interval, lastExecution, thinkInterval)

local pos = {x=368,y=142,z=7} -- Local onde aparece o npc

local npc = doCreateNpc(Capitan Buck, pos ) -- Altere o (dalk) pelo nome do seu npc.

local nMin = 20 -- tempo em minuto para o npc sumir.

addEvent(doRemoveCreature, nMin601000, npc)

return true

end

Editado por ricardo3 (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

o nome do NPC se eu não me engano deve estar entre aspas " "

ficando assim o script



function onTime(interval, lastExecution, thinkInterval)

local pos = {x=368,y=142,z=7} -- Local onde aparece o npc

local npc = doCreateNpc("Capitan Buck", pos ) -- Altere o (dalk) pelo nome do seu npc.

local nMin = 20 -- tempo em minuto para o npc sumir.

addEvent(doRemoveCreature, nMin601000, npc)

return true

end

# Regras Gerais - TibiaKing.com #
Contato: [email protected]
Não respondo dúvidas via MP.


1C2tu.png4Tlqo.png1C2tu.png


 

Link para o post
Compartilhar em outros sites

obrigado funcionoiu perfeitamente.

eu uso como onTime então.


function onTime()

local pos = {x=368,y=142,z=7} -- Local onde aparece o npc

local npc = doCreateNpc("Capitan Buck", pos ) -- Altere o (dalk) pelo nome do seu npc.

local nMin = 20 -- tempo em minuto para o npc sumir.

addEvent(doRemoveCreature, nMin601000, npc)

return true

end

@EDIT

o Evento não esta funcionando. o NPC não fica no lugar pelo tempo estimado. ele só pisca na tela. e some.

Editado por ricardo3 (veja o histórico de edições)
Link para o post
Compartilhar em outros sites


function onTime()

local pos = {x=368,y=142,z=7} -- Local onde aparece o npc

local npc = doCreateNpc("Capitan Buck", pos ) -- Altere o (dalk) pelo nome do seu npc.

local nMin = 20 -- tempo em minuto para o npc sumir.

addEvent(doRemoveCreature, nMin*60*1000, npc)

return true

end

tente esse, vc tinha copiado errado, e eu copiei errado de você, no tópico la encima esta com as fórmulas exatas!

# Regras Gerais - TibiaKing.com #
Contato: [email protected]
Não respondo dúvidas via MP.


1C2tu.png4Tlqo.png1C2tu.png


 

Link para o post
Compartilhar em outros sites

Boa Madruga,

e eu volto aqui com más noicias =/

esta dando este erro:

imagemfhs.jpg

GlobalEvents/Script/NPC.lua

function onThink(interval, lastExecution, thinkInterval)

doBroadcastMessage("Captain Buck reached the city of Thais to take them on an adventure. RUN!")

local pos = {x=368,y=142,z=7} -- Local onde aparece o npc

local npc = doCreateNpc("Capitan Buck", pos ) -- Altere o (dalk) pelo nome do seu npc.

local nMin = 20 -- tempo em minuto para o npc sumir.

addEvent(doRemoveCreature, nMin60*1000, npc)

return true

end

GlobalEvents.xml

	<globalevent name="npc" interval="120" event="script" value="npc.lua"/>

o Tempo do interval nao interfere em nada, pois estou testando.

Editado por ricardo3 (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

amigo, preste mais atenção, olha como esta declarada a variável nMin

vc tirou o *

é pra ficar assim

addEvent(doRemoveCreature, nMin*60*1000, npc)

# Regras Gerais - TibiaKing.com #
Contato: [email protected]
Não respondo dúvidas via MP.


1C2tu.png4Tlqo.png1C2tu.png


 

Link para o post
Compartilhar em outros sites

Desculpe, pois passou despercebido. Estou testando. e ja respondo

Link para o post
Compartilhar em outros sites

Bom voltei hoje,

então

@Ricardo3: Bom vejo que seu problema foi solucionado.

@Augusto: Obrigado por ajudar o tópico enquanto estava sem entrar, Reputado

@Subyth: Obrigado ^^

Ajudei? Reputar Cai o dedo? Acho que não

fdrule_SEPARADOR_DE_TEXTO.gif

Mapper : 80%

Scripter : 40%

Client Maker : 100%

Spriter : 100%

Web Designer : Aprendendo

fdrule_SEPARADOR_DE_TEXTO.gif

Meus Mapas :

sign3zb.jpg

Link para o post
Compartilhar em outros sites

nao intendi o script, ele aparece de 1 em 1 hr mais q hr que ele some?

MSN: [email protected]

Skype: Daniel-041

logo.png

Link para o post
Compartilhar em outros sites

nao intendi o script, ele aparece de 1 em 1 hr mais q hr que ele some?

ele aparece a cada 1 hora e some em 20 minutos(configurável) depois de aparecer.

vodkart_logo.png

[*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*]

 

DISCORDvodkart#6090

 

Link para o post
Compartilhar em outros sites
  • 4 weeks later...

Bem.

Sou Scripter Intermediario , Consegui entender bem o seu sistema.

Porém estou com uma pequena dúvida a questão de tempo em que o NPC aparecerá.

<globalevent name="npc" interval="3600" event="script" value="npc.lua"/>

Vermelho - o tempo que o npc aparecerá 3600 = 1 Hora

Caso eu troque o 3600 que é 1 Horas.

Agora eu coloco : 2332800 , Que é em 27 em 27 dias ira funcionar?.

Grato pela Atenção.

Link para o post
Compartilhar em outros sites
  • 1 month later...

Nunca Pode ter '' '' Em Scripts

Em lua pode sim, são ASPAS para determinar um string

pode se usar tanto "" como ''

var = 'world'

ou

var = "world"

vodkart_logo.png

[*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*]

 

DISCORDvodkart#6090

 

Link para o post
Compartilhar em outros sites

Em lua pode sim, são ASPAS para determinar um string

pode se usar tanto "" como ''

var = 'world'

ou

var = "world"

Depende Onde ela ou ele Vai Por !

13978461.png
Link para o post
Compartilhar em outros sites

Mais neste funcionou!

xiu então :P

Gostei do script vou testar depois que arrumar meus npc aqui '-'

Editado por danieuu (veja o histórico de edições)

Se viu o GOSTEI aqui em cima?

Então clica =D

Música:

http://www.youtube.com/watch?v=wzqdVJK5rCY&feature=player_detailpage

:D

Aposto que você gostou da que tá tocando guitarra

----------------------------------------------------------------------

Mapper: 80% -aprendendo-

Scripter: 50% -aprendendo-

Spriter: 70% -aprendendo-

Notepad ++: 90% -enceramento-

Hex Editor: 85% -aprendendo-

----------------------------------------------------------------------

Pokemon Friend

pikachu.gif

Link para o post
Compartilhar em outros sites
  • 3 months later...

Não consegui colocar,não da nenhum erro,só que o npc não aparece o/, eu coloquei exatamente assim,

o script ta com nome : npc.lua

e está assim

function onTime()

local pos = {x=368,y=142,z=7} -- Local onde aparece o npc

local npc = doCreateNpc("Dark Rodo", pos ) -- Altere o (dalk) pelo nome do seu npc.

local nMin = 20 -- tempo em minuto para o npc sumir.

addEvent(doRemoveCreature, nMin*60*1000, npc)

return true

end

e meu globalevenets

<?xml version="1.0" encoding="UTF-8"?>

<globalevents>

<globalevent name="save" interval="4000" event="script" value="save.lua"/>

<globalevent name="clean" interval="3000" event="script" value="clean.lua"/>

<globalevent name="serverstart" type="start" event="script" value="start.lua"/>

<globalevent name="playersrecord" type="record" event="script" value="record.lua"/>

<globalevent name="incendio" interval="5000" script="incendio.lua"/>

<globalevent name="info" interval="900" script="info.lua"/>

<globalevent name="npc" interval="300" event="script" value="npc.lua"/>

<globalevent name="animatedtext" interval="1" script="texto.lua"/>

<globalevent name="magiceffect" interval="1" script="placa.lua"/>

<globalevent name="magiceffect1" interval="1" script="placa2.lua"/>

<globalevent name="magiceffect2" interval="1" script="placa3.lua"/>

<globalevent name="magiceffect3" interval="1" script="placa4.lua"/>

</globalevents>

Em verde é o que o matheus mandou colocar,só alterei o tempo.

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Conteúdo Similar

    • Por ambrozii0
      Gostaria de fazer um pedido de um NPC de Task progressiva,

      Ele iniciaria dando missões para level 8 para caçar Troll, Rotworm e Ghoul.
       
      No level 30 liberaria: Cyclops, Dragon e Wyrm... e assim em diante se puder deixar comentado eu faço as criaturas na sequencia dos leveis seguintes.
       
      O jogador pode fazer as tasks dos leveis anteriores mesmo que já tenha ultrapassado o level do próximo nível de task.
       
      E o jogador ao terminar a missão poderia escolher a recompensa em gold ou experiência. As tasks podem se repetir sem problema, mas apenas pode pegar uma de cada vez.
       
      Ao finalizar todas as tasks o jogador ganha uma montaria.
       
      Minha versão de cliente é 12.91
      Versão da Canary 2.6.1
      Não sei qual o TFS do meu servidor.
    • Por willian646
      O evento é totalmente baseado no Foxy Quiz proveniente do GLA, no entanto é apenas uma base para vocês alterarem como acharem melhor.
      Para começar será necessario que você crie um arquivo em talkactions>scripts para entrar no evento, como por exemplo : participar.lua
      e entao colocar sua tag em talkactions.xml, como por exemplo: 
      <talkaction words="!participar;/participar" script="!participar.lua"/> Tendo feito isso você irá colar esse codigo dentro desse arquivo: 
      function onSay(cid, words, param)pos = {x=1236, y=1125, z=15} --POSIÇAO QUE O PLAYER IRÁ COM O COMANDO if getGlobalStorageValue(88788) == 1 then doSendMagicEffect(getPlayerPosition(cid),19) doTeleportThing(cid,pos) else doPlayerSendCancel(cid, "Desculpe mas o evento esta fechado !") end return true end Agora iremos para o script principal, vá em global events>scripts e crie o arquivo pokequiz.lua em seguida coloque sua tag em globalevents.xml como por exemplo: 
      <globalevent name="Pokequiz" interval="10" event="script" value="pokequiz.lua"/> Lembrando que o intervalo de inicio do evento é com vcs, Tendo feito isso abra o arquivo e cole o  seguinte código dentro : 
      quizstrg = 88788 local wave = 0 local CPpos = {x=1051, y=1047, z=7} --POSIÇAO QUE O PLAYER IRÁ SE ERRAR function wave_acresc() wave = wave + 1 addEvent(Quiz, 5000) end function Quiz() if wave == 1 then doBroadcastMessage("Na serie pokemon RAYQUAZA possui mega evolucao ?", RED) addEvent(Resposta, 10000) elseif wave == 2 then doBroadcastMessage("Na serie pokemon ARCEUS e considerado um pokemon RARO ?", RED) addEvent(Resposta, 10000) elseif wave == 3 then doBroadcastMessage("Na serie pokemon MEW criou os 3 caes lendarios ?", RED) addEvent(Resposta, 10000) elseif wave == 4 then doBroadcastMessage("Na serie pokemon ARCEUS tem o poder de mudar de tipo livremente ?", RED) addEvent(Resposta, 10000) elseif wave == 5 then doBroadcastMessage("Na serie pokemon GIRATINA possui 2 formas sendo elas alterada e fantasma ?", RED) addEvent(Resposta, 10000) elseif wave == 6 then doBroadcastMessage("Na serie pokemon DIALGA e PALKIA sao rivais ?", RED) addEvent(Resposta, 10000) elseif wave == 7 then doBroadcastMessage("Na serie pokemon CELEBI possui a habilidade de viajar entre dimensoes ?", RED) addEvent(Resposta, 10000) elseif wave == 8 then doBroadcastMessage("Na serie pokemon SOLGALEO e a primeira evolucao de cosmog ?", RED) addEvent(Resposta, 10000) elseif wave == 9 then doBroadcastMessage("Na serie pokemon MAGEARNA e uma das ultra beasts ?", RED) addEvent(Resposta, 10000) elseif wave == 10 then doBroadcastMessage("Na serie pokemon a cor original de MAGEARNA e laranja ?", RED) addEvent(Resposta, 10000) elseif wave == 11 then doBroadcastMessage("O evento Quiz terminou !", RED) addEvent(winPlayers, 5000) end end function Resposta() if wave == 1 then addEvent(TPFalso, 5000) elseif wave == 2 then addEvent(TPVerdadeiro, 5000) elseif wave == 3 then addEvent(TPVerdadeiro, 5000) elseif wave == 4 then addEvent(TPFalso, 5000) elseif wave == 5 then addEvent(TPVerdadeiro, 5000) elseif wave == 6 then addEvent(TPFalso, 5000) elseif wave == 7 then addEvent(TPVerdadeiro, 5000) elseif wave == 8 then addEvent(TPVerdadeiro, 5000) elseif wave == 9 then addEvent(TPVerdadeiro, 5000) elseif wave == 10 then addEvent(TPFalso, 5000) end end function TPFalso() for _, sid in ipairs(getPlayersOnline()) do local posi = {x=1236, y=1122, z=15} local posf = {x=1243, y=1128, z=15} local pos = getPlayerPosition(sid) if isInArea(pos, posi, posf) then doTeleportThing(sid,CPpos) end addEvent(wave_acresc, 5000) end end function TPVerdadeiro() for _, sid in ipairs(getPlayersOnline()) do local posi = {x=1228, y=1122, z=15} local posf = {x=1235, y=1128, z=15} local pos = getPlayerPosition(sid) if isInArea(pos, posi, posf) then doTeleportThing(sid,CPpos) end addEvent(wave_acresc, 5000) end end function winPlayers() for _, sid in ipairs(getPlayersOnline()) do local posi = {x=1228, y=1122, z=15} local posf = {x=1243, y=1128, z=15} local pos = getPlayerPosition(sid) if isInArea(pos, posi, posf) then doTeleportThing(sid,CPpos) doPlayerAddItem(sid,2159, 10) end wave = 0 setGlobalStorageValue(88788, 0) end end --AVISOS DE INICIO function finalEventWarning() if getGlobalStorageValue(quizstrg) == 1 then setGlobalStorageValue(88788, 2) doBroadcastMessage("O evento Quiz fechou, a primeira pergunta surgira em 30 segundos.", RED) addEvent(wave_acresc, 30000) end end function secondEventWarning() if getGlobalStorageValue(quizstrg) == 1 then doBroadcastMessage("O evento Quiz ira iniciar em 1 minuto, usem o comando !participar ou /participar.", RED) addEvent(finalEventWarning, 60000) end end function firstEventWarning() if getGlobalStorageValue(quizstrg) == 1 then doBroadcastMessage("O evento Quiz ira iniciar em 3 minutos, usem o comando !participar ou /participar.", RED) addEvent(secondEventWarning, 120000) end end function onThink(interval, lastExecution) if getGlobalStorageValue(quizstrg) == 0 then setGlobalStorageValue(88788, 1) doBroadcastMessage("O evento Quiz ira iniciar em 5 minutos, usem o comando !participar ou /participar.", RED) addEvent(firstEventWarning, 120000) end return true end Já ia me esquecendo, a unica coisa ao qual vocês devem mudar de acordo com as coordenadas do seu mapa e área do evento são as funções TPVerdadeiro , TPFalso, winPlayers , elas servem para indicar qual área é a errada e teleportar quem tiver nessa área pro cp, caso o lado errado seja o esquerdo então será usado a função  TPVerdadeiro, e é a msm coisa para o outro lado, no caso da winPlayers é toda a área do evento.
       
      Aqui vai um exemplo: 
       
      E é isso rapaziada, não sei se já possui algum evento parecido por essas bandas, mas eu não encontrei ,então fiz  e resolvi contribuir com a comunidade, peço que se for repostar em algum outro lugar dê os devidos créditos, obg e até a próxima.
    • Por Maniaco
      Salve TibiaKing!!! TFS 0.4 . 8.60
       
      Estou implementando o Sistema do @WooX de Cave Exlusiva

      Link:
       
      Porem estou com um problema seguindo o tutorial completo dele acabo tendo um retorno de erro na Distro! E ja que o mesmo nao entra no forum deis de 14/01! Venho solicitar ajuda de vocês!
      Caso alguem tenha o Discord Dele Favor me Passe  
      Vamos lá!
      Erro:
       
      Script :
       
      Lib
       
       
      Print Rme:
       
       
      Lembrando que nao esta funcionando em geral, Acrédito que eu tenha pulado algo ou deixado passar despercebido!
      Espero que alguem consiga me ajudar vlw!
    • Por Maniaco
      Boa Tarde TibiaKing!!!
       
      Bom estou precisando arrumar um script, não deve ser muito difícil !! (pra quem sabe  !)
      Quem poder ajudar já agradeço.
       
      Resumindo apartir do momento que falo Travel, Yes para o npc ele me teleporta para posicao inicial me transformando(LookType) e precisa me levar até o destino final. (posFinal)
      até ai tudo bem problema que ele comeca a funcionar e me leva para lugar aleatorio e fica parado lá imovel. ( não da erro na Distro ) Apenas fico parado na LookType de barco.
       
      Uso tfs 0.4 8.60
       
      local posis = {
      --[pos do npc] = {pos inicial, pos final},
      [{x = 115, y = 143, z = 10}] = {posIni = {x = 114, y = 134, z = 10}, posFinal = {x = 76, y = 134, z = 10}},
      [{x = 74, y = 132, z = 10}] = {posIni = {x = 76, y = 134, z = 10}, posFinal = {x = 95, y = 147, z = 10}},
      }
       
       é um NPC
       
       
      .LUA DO NPC
       
      LIB - TRAVEL.LUA
       
       
       
      ,XML
       
    • Por MatteusDeli
      Nesse tópico você irá aprender a diferença entre ItemID, ActionID e UniqueID na criação de scripts.
       
      Primeiramente vamos começar com o ItemID, imagine que você está criando um simples script que o player pode ter acesso a uma área VIP, só que para ele entrar, primeiro precisará passar por um tile especial que possui o ID 471, até aqui tudo bem, só que qualquer player do servidor irá ter acesso também, já que não possui nenhuma restrição.
       
      Como poderíamos resolver isso?
       
      É aqui que entra a função da ActionID, com ela podemos dizer que os tiles que tiverem o valor 1000 no atributo ActionID, serão os tiles referentes a área VIP. Agora temos uma maneira de diferenciar os tiles comuns dos que são VIPs, veja como ficaria:
       

      (tiles sem as ActionIDs no valor de 1000)
       
      Repare que os 3 tiles tem apenas o atributo ItemID: [471]. Todos os players poderiam passar sem problemas… Caso você use apenas esse tipo de tile para as suas áreas VIPs então não tem problema, agora se você usa esses mesmos tiles para outras finalidades, então você precisará recorrer a ActionID, para que assim consiga diferenciá-los.
       
      Vamos adicionar as ActionIDs então:
       

      (tiles com as ActionIDs adicionados no valor de 1000)
       
      Pronto, agora apenas esse tiles terão a função de controlar a entrada para a área VIP!
       
      Bom, então você deve estar se perguntando, aonde que o UniqueID entra nessa história?
       
      O UniqueID é parecido com a ActionID com apenas uma diferença. O valor que você define para ele deve ser único para o servidor inteiro, caso ele se repita aparecerá um aviso na sua distro, mais ou menos como este…
       

       
      Repare quantos UniqueIDs duplicados existem, isso é ruim porque quanto mais tiver mais tempo demorará para o servidor iniciar, entre outras coisas como conflitos de scripts.
       
      Concluindo…
       
      O ItemID é usado quando você quer que todos os itens com esse ID façam uma ação, por exemplo a fishing rod, qualquer player pode comprar uma no NPC e começar a pescar.
       
      A ActionID é usado geralmente quando você quer diferenciar os mesmos itens um dos outros. Eu tenho 2 crystal rings só que apenas um deles vai me curar 500 de vida quando usá-lo.
       
      O UniqueID é quando você quer definir um ID único para um determinado item e só terá apenas um dele no servidor, um exemplo seria uma estátua que vai dar ao player um determinado item e só existirá somente uma dela no jogo.
       
      Tentei ser o mais breve e direto sobre esse assunto, espero que tenha ficado claro… Agora é só praticar!
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo