Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Na primeira linha estava dando erro

 function onThink not found

 

Então eu troquei o function onTtime(interval, lastExecution) por function onThink(interval, lastExecution)

 

E mesmo assim ganhei o evento sozinho sem erros no console.

m9r2.png

            Acesse já e seja o domine seu póprio destino !

Link para o post
Compartilhar em outros sites
  • Respostas 69
  • Created
  • Última resposta

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Arena War Informações: Todos os Players Falam com o NPC, e vão param em uma sala de espera, após um período todos são teleportados para uma arena, quando todos se matarem e só restar 1 ele ganhara

gabisa00 e pessoal que ta usando o script:   Dei uma olhada no script e achei um bug, quando o evento é fechado (por falta de players) ele só tira o valor da storage global, não mandando os jogadore

Amigo imagine o seguinte, você esta colocando as coordenadas erradas.   veja isso imagine que isso seja a arena.                . <- aqui é a coordenada do canto superior esquerdo            

Posted Images

Fica fora e coloquei o arquivo certinho, arenawar1.lua

 

Aqui meu globalevents/scripts/arenawar

function onThink(interval, lastExecution)
 
local total_players = 0
local storage = 24658 -- ALTERAR storage usado no sistema deixar todos iguais
local item_premio = 7369 -- ALTERAR item dado de premio, caso não queira dar item, coloque 2160
local item_quantidade_premio = 1 -- ALTERAR quantidade do item ganho, caso não queira dar item , coloque 0
local dinheiro_premio = 0 -- ALTERAR dinheiro dado de premio, caso não queira deixe 0
local player_escolhido = 0
local players = getPlayersOnline()
local i = 1
local pos_templo = {x =1258, y =1069 , z =6 }  -- ALTERAR coordenada da sala do seu ot server
 
if getGlobalStorageValue(storage) == 1 then
else
return TRUE
end
 
while i <= #players do
local pos_player = getPlayerPosition(players)
      local pos1_arena = {x =916 , y =973 , z =7 }   -- ALTERAR pos do canto superior esquerdo da arena
      local pos2_arena = {x =929 , y =985 , z =7 } -- ALTERAR pos do canto inferior direito da arena
if pos_player.x >= pos1_arena.x and pos_player.y >= pos1_arena.y and pos_player.x <= pos2_arena.x and pos_player.y <= pos2_arena.y then
total_players = total_players + 1
player_escolhido = players
 
end
i = i + 1
end
 
if total_players == 1 then
setGlobalStorageValue(storage, -1)
doTeleportThing(player_escolhido, pos_templo)
doPlayerAddItem(player_escolhido, item_premio, item_quantidade_premio)
doPlayerAddItem(cid,2160,dinheiro_premio)
doBroadcastMessage(""..(getPlayerName(player_escolhido)).." is the tournament winner!",22) -- ALTERAR frase para todos, do ganhador do premio
return TRUE
else
if total_players <= 0 then
setGlobalStorageValue(storage, -1)
doBroadcastMessage("All players die, is the end of tournament.",22) -- ALTERAR frase para todos, do ganhador do premio
return TRUE
end
end
 
return TRUE
end

 

Aqui meu globalevents/scripts/arenawar1

function onThink(interval, lastExecution)
 
local tempo_espera = 5 * 60 * 1000 -- ALTERAR tempo de espera na sala, 1 minuto
 
doBroadcastMessage("Evento PVP foi Ativado.",22)                 -- ALTERAR frase que aparece para todos quando usar o comando
setGlobalStorageValue(24658, 0)                                  -- ALTERAR storage usado no sistema, deixar todos iguais
addEvent(
function ()
 
 
         local pos_templo = {x =1258, y =1069 , z =6 }             -- ALTERAR coordenada do templo do seu ot server
         doBroadcastMessage("Evento Iniciado.",22)               -- ALTERAR frase quando todos forem para a arena
         setGlobalStorageValue(24658, 1)                         -- ALTERAR storage usado no sistema, deixar todos iguais
         local players = getPlayersOnline()
         local i = 1
         local total_player = 0
         
         while i <= #players do
               local pos_player = getPlayerPosition(players)
               local pos1_espera = {x =955 , y =973 , z =7 }           -- ALTERAR pos do canto superior esquerdo da sala de espera
               local pos2_espera = {x =977 , y =979 , z =7 }           -- ALTERAR pos do canto inferior direito da sala de espera
               if pos_player.x >= pos1_espera.x and pos_player.y >= pos1_espera.y and pos_player.x <= pos2_espera.x and pos_player.y <= pos2_espera.y then
                  total_player = total_player + 1
               end
               
               i = i + 1
         end
         
         i = 1
         if total_player <= 1 then
            doBroadcastMessage("Evento Cancelado, Players Insuficientes.",22) -- ALTERAR Frase de evento cancelado por falta de players 
            setGlobalStorageValue(24658, -1)                      -- ALTERAR storage usado no sistema, deixar todos iguais
 
            while i <= #players do
               local pos_player = getPlayerPosition(players)
               local pos1_espera = {x =955 , y =973 , z =7 }           -- ALTERAR pos do canto superior esquerdo da sala de espera
               local pos2_espera = {x =977 , y =979 , z =7 }           -- ALTERAR pos do canto inferior direito da sala de espera
               if pos_player.x >= pos1_espera.x and pos_player.y >= pos1_espera.y and pos_player.x <= pos2_espera.x and pos_player.y <= pos2_espera.y then
                  doTeleportThing(players, pos_templo)
               end
               
               i = i + 1
            end
 
            return TRUE
         end         
         
         while i <= #players do
               local pos_player = getPlayerPosition(players)
               local pos1_espera = {x =955 , y =973 , z =7 }           -- ALTERAR pos do canto superior esquerdo da sala de espera
               local pos2_espera = {x =977 , y =979 , z =7 }           -- ALTERAR pos do canto inferior direito da sala de espera
               local pos_arena = {x =923 , y =978 , z =7 }            -- ALTERAR do inicio da arena
               if pos_player.x >= pos1_espera.x and pos_player.y >= pos1_espera.y and pos_player.x <= pos2_espera.x and pos_player.y <= pos2_espera.y then
                  doTeleportThing(players, pos_arena)
                  doPlayerSendTextMessage(players, MESSAGE_STATUS_CONSOLE_BLUE, "Batalhe pela sua vida.")   -- ALTERAR frase que vai aparecer para o player quando ele entrar na arena
               end
               
               i = i + 1
         end
 
end
,tempo_espera)
   
return true
end

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

m9r2.png

            Acesse já e seja o domine seu póprio destino !

Link para o post
Compartilhar em outros sites

 

Fica fora e coloquei o arquivo certinho, arenawar1.lua

 

Aqui meu globalevents/scripts/arenawar

function onThink(interval, lastExecution)
 
local total_players = 0
local storage = 24658 -- ALTERAR storage usado no sistema deixar todos iguais
local item_premio = 7369 -- ALTERAR item dado de premio, caso não queira dar item, coloque 2160
local item_quantidade_premio = 1 -- ALTERAR quantidade do item ganho, caso não queira dar item , coloque 0
local dinheiro_premio = 0 -- ALTERAR dinheiro dado de premio, caso não queira deixe 0
local player_escolhido = 0
local players = getPlayersOnline()
local i = 1
local pos_templo = {x =1258, y =1069 , z =6 }  -- ALTERAR coordenada da sala do seu ot server
 
if getGlobalStorageValue(storage) == 1 then
else
return TRUE
end
 
while i <= #players do
local pos_player = getPlayerPosition(players)
      local pos1_arena = {x =916 , y =973 , z =7 }   -- ALTERAR pos do canto superior esquerdo da arena
      local pos2_arena = {x =929 , y =985 , z =7 } -- ALTERAR pos do canto inferior direito da arena
if pos_player.x >= pos1_arena.x and pos_player.y >= pos1_arena.y and pos_player.x <= pos2_arena.x and pos_player.y <= pos2_arena.y then
total_players = total_players + 1
player_escolhido = players
 
end
i = i + 1
end
 
if total_players == 1 then
setGlobalStorageValue(storage, -1)
doTeleportThing(player_escolhido, pos_templo)
doPlayerAddItem(player_escolhido, item_premio, item_quantidade_premio)
doPlayerAddItem(cid,2160,dinheiro_premio)
doBroadcastMessage(""..(getPlayerName(player_escolhido)).." is the tournament winner!",22) -- ALTERAR frase para todos, do ganhador do premio
return TRUE
else
if total_players <= 0 then
setGlobalStorageValue(storage, -1)
doBroadcastMessage("All players die, is the end of tournament.",22) -- ALTERAR frase para todos, do ganhador do premio
return TRUE
end
end
 
return TRUE
end

 

Aqui meu globalevents/scripts/arenawar1

function onThink(interval, lastExecution)
 
local tempo_espera = 5 * 60 * 1000 -- ALTERAR tempo de espera na sala, 1 minuto
 
doBroadcastMessage("Evento PVP foi Ativado.",22)                 -- ALTERAR frase que aparece para todos quando usar o comando
setGlobalStorageValue(24658, 0)                                  -- ALTERAR storage usado no sistema, deixar todos iguais
addEvent(
function ()
 
 
         local pos_templo = {x =1258, y =1069 , z =6 }             -- ALTERAR coordenada do templo do seu ot server
         doBroadcastMessage("Evento Iniciado.",22)               -- ALTERAR frase quando todos forem para a arena
         setGlobalStorageValue(24658, 1)                         -- ALTERAR storage usado no sistema, deixar todos iguais
         local players = getPlayersOnline()
         local i = 1
         local total_player = 0
         
         while i <= #players do
               local pos_player = getPlayerPosition(players)
               local pos1_espera = {x =955 , y =973 , z =7 }           -- ALTERAR pos do canto superior esquerdo da sala de espera
               local pos2_espera = {x =977 , y =979 , z =7 }           -- ALTERAR pos do canto inferior direito da sala de espera
               if pos_player.x >= pos1_espera.x and pos_player.y >= pos1_espera.y and pos_player.x <= pos2_espera.x and pos_player.y <= pos2_espera.y then
                  total_player = total_player + 1
               end
               
               i = i + 1
         end
         
         i = 1
         if total_player <= 1 then
            doBroadcastMessage("Evento Cancelado, Players Insuficientes.",22) -- ALTERAR Frase de evento cancelado por falta de players 
            setGlobalStorageValue(24658, -1)                      -- ALTERAR storage usado no sistema, deixar todos iguais
 
            while i <= #players do
               local pos_player = getPlayerPosition(players)
               local pos1_espera = {x =955 , y =973 , z =7 }           -- ALTERAR pos do canto superior esquerdo da sala de espera
               local pos2_espera = {x =977 , y =979 , z =7 }           -- ALTERAR pos do canto inferior direito da sala de espera
               if pos_player.x >= pos1_espera.x and pos_player.y >= pos1_espera.y and pos_player.x <= pos2_espera.x and pos_player.y <= pos2_espera.y then
                  doTeleportThing(players, pos_templo)
               end
               
               i = i + 1
            end
 
            return TRUE
         end         
         
         while i <= #players do
               local pos_player = getPlayerPosition(players)
               local pos1_espera = {x =955 , y =973 , z =7 }           -- ALTERAR pos do canto superior esquerdo da sala de espera
               local pos2_espera = {x =977 , y =979 , z =7 }           -- ALTERAR pos do canto inferior direito da sala de espera
               local pos_arena = {x =923 , y =978 , z =7 }            -- ALTERAR do inicio da arena
               if pos_player.x >= pos1_espera.x and pos_player.y >= pos1_espera.y and pos_player.x <= pos2_espera.x and pos_player.y <= pos2_espera.y then
                  doTeleportThing(players, pos_arena)
                  doPlayerSendTextMessage(players, MESSAGE_STATUS_CONSOLE_BLUE, "Batalhe pela sua vida.")   -- ALTERAR frase que vai aparecer para o player quando ele entrar na arena
               end
               
               i = i + 1
         end
 
end
,tempo_espera)
   
return true
end

 

 

Vou lhe pedir um grande favor, refaça tudo com os arquivos que eu disponibilizo aqui no inicio do tópico, ou seja, apague tudo e refaça de verdade, teste ele para mim, usando o comando, como foi feito inicialmente, se tudo ocorrer corretamente adicione essas coisas, lembre-se de modificar tudo novamente para evitar que o bug aconteça, aguardando resposta. 

 

isso no globalevents/globalevents.xml

<globalevent name="arenawar1" interval="Mudartempo" event="script" value="arenawar1.lua"/>

 

e isso no globalevents/scripts/arenawar1.lua

function onThink(cid, words, param)
 
local tempo_espera = 60 * 1000 -- ALTERAR tempo de espera na sala, 1 minuto
 
doBroadcastMessage("Evento PVP foi Ativado.",22)                 -- ALTERAR frase que aparece para todos quando usar o comando
setGlobalStorageValue(24658, 0)                                  -- ALTERAR storage usado no sistema, deixar todos iguais
addEvent(
function ()
 
 
         local pos_templo = {x = 156, y = 56, z = 7}             -- ALTERAR coordenada do templo do seu ot server
         doBroadcastMessage("Evento Iniciado.",22)               -- ALTERAR frase quando todos forem para a arena
         setGlobalStorageValue(24658, 1)                         -- ALTERAR storage usado no sistema, deixar todos iguais
         local players = getPlayersOnline()
         local i = 1
         local total_player = 0
         
         while i <= #players do
               local pos_player = getPlayerPosition(players)
               local pos1_espera = {x = 152, y = 47, z = 7}           -- ALTERAR pos do canto superior esquerdo da sala de espera
               local pos2_espera = {x = 155, y = 49, z = 7}           -- ALTERAR pos do canto inferior direito da sala de espera
               if pos_player.x >= pos1_espera.x and pos_player.y >= pos1_espera.y and pos_player.x <= pos2_espera.x and pos_player.y <= pos2_espera.y then
                  total_player = total_player + 1
               end
               
               i = i + 1
         end
         
         i = 1
         if total_player <= 1 then
            doBroadcastMessage("Evento Cancelado, Players Insuficientes.",22) -- ALTERAR Frase de evento cancelado por falta de players 
            setGlobalStorageValue(24658, -1)                      -- ALTERAR storage usado no sistema, deixar todos iguais
 
            while i <= #players do
               local pos_player = getPlayerPosition(players)
               local pos1_espera = {x = 152, y = 47, z = 7}           -- ALTERAR pos do canto superior esquerdo da sala de espera
               local pos2_espera = {x = 155, y = 49, z = 7}           -- ALTERAR pos do canto inferior direito da sala de espera
               if pos_player.x >= pos1_espera.x and pos_player.y >= pos1_espera.y and pos_player.x <= pos2_espera.x and pos_player.y <= pos2_espera.y then
                  doTeleportThing(players, pos_templo)
               end
               
               i = i + 1
            end
 
            return TRUE
         end         
         
         while i <= #players do
               local pos_player = getPlayerPosition(players)
               local pos1_espera = {x = 152, y = 47, z = 7}           -- ALTERAR pos do canto superior esquerdo da sala de espera
               local pos2_espera = {x = 155, y = 49, z = 7}           -- ALTERAR pos do canto inferior direito da sala de espera
               local pos_arena = {x = 160, y = 54, z = 7}             -- ALTERAR do inicio da arena
               if pos_player.x >= pos1_espera.x and pos_player.y >= pos1_espera.y and pos_player.x <= pos2_espera.x and pos_player.y <= pos2_espera.y then
                  doTeleportThing(players, pos_arena)
                  doPlayerSendTextMessage(players, MESSAGE_STATUS_CONSOLE_BLUE, "Batalhe pela sua vida.")   -- ALTERAR frase que vai aparecer para o player quando ele entrar na arena
               end
               
               i = i + 1
         end
 
end
,tempo_espera)
   
return true
end

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

Testei tudo e dessa vez funcionou, acho que o problema era que antes eu ativava o evento com o comando !epvp, usei o tempo do globalevent e deu certo.

Rep+

m9r2.png

            Acesse já e seja o domine seu póprio destino !

Link para o post
Compartilhar em outros sites

Testei tudo e dessa vez funcionou, acho que o problema era que antes eu ativava o evento com o comando !epvp, usei o tempo do globalevent e deu certo.

Rep+

 

Gostaria de lhe agradecer e muito pela paciência que teve comigo, agradeço pelos seus Rep+, e me desculpe grosserias e meus erros de script que lhe atormentaram esses dias.  

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

Ta bugando qnd eu tento colocar automatico, eu entro com 2 chars no evento ai ele fecha dizendo q n teve players suficiente!


function onThink(cid, words, param)
 
local tempo_espera = 60 * 1000 -- ALTERAR tempo de espera na sala, 1 minuto
 
doBroadcastMessage("Evento Arena War foi Ativado.",22)                 -- ALTERAR frase que aparece para todos quando usar o comando
setGlobalStorageValue(24658, 0)                                  -- ALTERAR storage usado no sistema, deixar todos iguais
addEvent(
function ()
 
 
         local pos_templo = {x = 156, y = 56, z = 7}             -- ALTERAR coordenada do templo do seu ot server
         doBroadcastMessage("Evento Arena War Iniciado.",22)               -- ALTERAR frase quando todos forem para a arena
         setGlobalStorageValue(24658, 1)                         -- ALTERAR storage usado no sistema, deixar todos iguais
         local players = getPlayersOnline()
         local i = 1
         local total_player = 0
         
         while i <= #players do
               local pos_player = getPlayerPosition(players)
               local pos1_espera = {x = 772, y = 711, z = 7}           -- ALTERAR pos do canto superior esquerdo da sala de espera
               local pos2_espera = {x = 792, y = 731, z = 7}           -- ALTERAR pos do canto inferior direito da sala de espera
               if pos_player.x >= pos1_espera.x and pos_player.y >= pos1_espera.y and pos_player.x <= pos2_espera.x and pos_player.y <= pos2_espera.y then
                  total_player = total_player + 1
               end
               
               i = i + 1
         end
         
         i = 1
         if total_player <= 1 then
            doBroadcastMessage("Evento Arena War Cancelado, Players Insuficientes.",22) -- ALTERAR Frase de evento cancelado por falta de players 
            setGlobalStorageValue(24658, -1)                      -- ALTERAR storage usado no sistema, deixar todos iguais
 
            while i <= #players do
               local pos_player = getPlayerPosition(players)
               local pos1_espera = {x = 152, y = 47, z = 7}           -- ALTERAR pos do canto superior esquerdo da sala de espera
               local pos2_espera = {x = 155, y = 49, z = 7}           -- ALTERAR pos do canto inferior direito da sala de espera
               if pos_player.x >= pos1_espera.x and pos_player.y >= pos1_espera.y and pos_player.x <= pos2_espera.x and pos_player.y <= pos2_espera.y then
                  doTeleportThing(players, pos_templo)
               end
               
               i = i + 1
            end
 
            return TRUE
         end         
         
         while i <= #players do
               local pos_player = getPlayerPosition(players)
               local pos1_espera = {x = 152, y = 47, z = 7}           -- ALTERAR pos do canto superior esquerdo da sala de espera
               local pos2_espera = {x = 155, y = 49, z = 7}           -- ALTERAR pos do canto inferior direito da sala de espera
               local pos_arena = {x = 160, y = 54, z = 7}             -- ALTERAR do inicio da arena
               if pos_player.x >= pos1_espera.x and pos_player.y >= pos1_espera.y and pos_player.x <= pos2_espera.x and pos_player.y <= pos2_espera.y then
                  doTeleportThing(players, pos_arena)
                  doPlayerSendTextMessage(players, MESSAGE_STATUS_CONSOLE_BLUE, "Batalhe pela sua vida.")   -- ALTERAR frase que vai aparecer para o player quando ele entrar na arena
               end
               
               i = i + 1
         end
 
end
,tempo_espera)
   
return true
end
Link para o post
Compartilhar em outros sites

 gabisa00 e pessoal que ta usando o script:

 

Dei uma olhada no script e achei um bug, quando o evento é fechado (por falta de players) ele só tira o valor da storage global, não mandando os jogadores pro templo, como a sala de espera é uma area NO-LOGOUT, isso pode ter problemas sérios, alem de os players ficarem presos, eles vão dar exit e vão contar como spoof ocasionando um BAN na otservlist (o que leva ao falimento do servidor) se o autor autorizar eu arrumo o script

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

não seria mais facil fazer um teleport tipo com uma placa escrito sair do evento?

Compre seus Scripts Agora totalmente seguro e de forma rápida, aceitamos também encomendas.

discord.gg/phJZeHa2k4

 

Projeto ATS (Naruto)

Informações Abaixo

Facebook

Youtube
Discord

 

Tutoriais / Conteúdos

Clique Aqui

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 xWhiteWolf
      Fala galera, hoje vim trazer o projeto pronto do Magnus Challenger pra vocês instalarem no servidor de vocês!   

      Pra quem não conhece é um sistema de Tasks baseado no Zezenia onde você pode escolher entre tasks de matar monstros ou de coletar certos items para o npc Magnus, um guerreiro famoso da cidade que está atolado de tarefas e precisa da sua ajuda!

      Peguei os aspectos que eu julguei serem os principais do modelo do Zezenia e editei com algumas coisas que eu achei que ficariam melhores.
      Quem quiser pode ver um vídeo comentado de como o sistema funciona:




      Dito isso vou ensinar vocês como instalar isso no server:
      Pra começar vá em data\creaturescripts\scripts e procure login.lua, agora vá até o final do arquivo e antes do último return true coloque essas linhas abaixo

      ainda em creaturescripts procure creaturescripts.xml e adicione essa linha junto com as outras que já estão lá (seguindo o padrão)
      <!-- TASK SYSTEM --> <event type="kill" name="tasksystem" script="tasksystem.lua"/> Agora crie um arquivo em creaturescripts\scripts com o nome de tasksystem.lua e adicione o seguinte à ele:




      Terminada a parte da contagem de kill vamos ao NPC em si.
      Crie um arquivo chamado Magnus.xml em data\npc e coloque isso dentro dele:




      Agora em data\npc\scripts crie um arquivo chamado zezeniaa.lua e adicione esse conteúdo dentro do arquivo:





      ~~~~~~~~~~~~~~~~ FEITO ISSO ESTÁ TERMINADO ~~~~~~~~~~~~~~~~~~

      Agora aprendendo a configurar:
       
      No tasksystem vc pode editar isso daqui:
      Eu fiz um sistema onde se vc estiver em party com alguém e a pessoa matar os bixos conta como se você tivesse matado; Assim incentiva o pessoal a ir numa cave de Dragon e ao invés de matar quem está lá pra ficar sozinho na cave, eles vão chamar party pra fazerem a task juntos.. assim fazer amigos fica mais fácil e com maiores laços é maior a chance do povo não abandonar o seu server.

      Apenas digite "true" ou "false" pra ativar/desativar esse sistema e em baixo temos a distancia máxima pro monstro estar do cara que está fazendo a task pra contar o kill. Se a distancia entre o monstro e a pessoa for maior que 7 não vai contar pra ele a kill.


      No zezeniaa.lua as coisas que dão pra configurar são maiores mas são igualmente simples:
      Toda vez que vc pedir uma task short (curta) vc vai ter de 100 a 400 monstros pra matar, ele gera um número de 0 a 6 e multiplica por 5 e soma com os 100 iniciais.. o mesmo vale pra todos os outros valores.

      levelcollect é o level mínimo pra fazer tasks do tipo collect.
      time é o tempo em segundos que você vai ficar sem poder falar com o npc caso desista de alguma task, o padrão é 8 * 60 * 60 (8 horas)
      bonus é por quanto vai multiplicar caso vc permita que o npc escolha aleatoriamente entre todas as opções.. o padrão é 20% de bonus (1.2)
      multiplicador é uma coisa que eu adicionei pra ficar mais fácil mexer na fórmula sem cometer cagadas, se vc tá ganhando 10% de exp e quer ganhar 80% é só colocar 8 no multiplicador.

       
      Isso daqui é o banco de dados principal do sistema de kill, toda vez que vc escolher uma task do tipo fácil, médio, dificil ele vai acessar essas tabelas contendo o nome das criaturas.. vc pode facilmente adicionar novos nomes, o npc já está programado pra lidar com isso, apenas siga o padrão e mantenha sempre o último sem vírgula!

      Ex: adicionando Morgaroth na tabela de hard
      local hard = { [1] = "Giant Spider", [2] = "Dragon Lord", [3] = "Grim Reaper", [4] = "Demon", [5] = "Crystal Spider", [6] = "Demon Skeleton", [7] = "Juggernaut", [8] = "Destroyer", [9] = "Hand of Cursed Fate", [10] = "Morgaroth" } atente-se também pra não repetir o número no index.. se o anterior era [9] use [10].

      O restante das tabelas são separadas para o banco de dados das tasks de collect:
       
      segue a mesma lógica da de kill só que aqui você tem o id dos itens que serão usados... aquela count não tem nada a ver com o item pois ele vai gerar tanto o item aleatoriamente quanto à count;
      Ex: 
      [1] = {id = 5880, count = 20}, -- iron ore isso não significa que se cair iron ore (id 5880) irá cair sempre 20.. até porque eu poderia escolher uma task long e easy e pegar a task de trazer até 50 iron ores, apenas tente manter os padrões que são os intervalos definidos.
      No easy ele varia de 10 a 20, no medium ele varia de 20 a 35 e no hard de 40 a 50.



      Espero que vocês tenham curtido, é um sistema grande mas bem simples de se mexer... se tiverem quaisquer problemas podem comentar aqui. Deu trabalho fazer isso então se você gostou deixe o seu comentário aí e o seu "Gostei" que vai me incentivar a trazer mais coisas desse tipo pra cá. Abraços do lobo.


      PS: Pra sumonar o npc digite com o GOD: /n Magnus ou coloque ele pelo map editor.



×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo