Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Quando junta 100 itens, ele não pega mais o item.

 

Exemplo: coloquei fire stone no auto loot, quando eu pegar 100 fire stone, ele para de coletar fire stone, se eu "separar" 50 e 50, dai ele volta a pegar até juntar 100 denovo.

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

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Para quem não sabe como funciona : É um sistema onde o player pode digitar um comando para adicionar ou remover um item ao auto loot,que no caso é para coletar o item automaticamente.   • Adicionando o script •   Em "data/mods/autoloot.xml" :   • Comandos •         • Configurando •        

Creio que não, o sistema parece estar normal, em mods ainda, não afetará em nada, apenas ajudará no sistema de loot hehe

o sistema é baseado em uma 'gambiarra' de tabelas em storage e é um creaturescript executado a todo momento que alguem mata qualquer monstro; entao pode pesar um pouco sim no servidor, se a máquina nao for boa

Posted Images

@samlecter Adaptou pra Pokémon? me passa ae <3 

​Obstaculo Impossível?

Impossível é existir algo Impossível ;) 

 

 

 

 

Confira os Meus Conteúdos ! 

Te ajudei ? REP + E Ficamos KIT ;)

Link para o post
Compartilhar em outros sites
  • 1 month later...
  Em 28/01/2016 em 17:02, samlecter disse:

Quando junta 100 itens, ele não pega mais o item.

 

Exemplo: coloquei fire stone no auto loot, quando eu pegar 100 fire stone, ele para de coletar fire stone, se eu "separar" 50 e 50, dai ele volta a pegar até juntar 100 denovo.

Mostrar mais  

if getThing(x).type < 100 then
local it = getThing(x)
doTransformItem(it.uid, itemid, it.type+quant)
if it.type+quant > 100 then
doPlayerAddItem(cid, itemid, it.type+quant-100)

Tente mudar para uma quantidade maior os números em vermelho, pois ai está mesmo para catar apenas 100 lots e o restante vai para o chão, e me fale se deu certo.

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

Criador, a procura de mapper e scripter para server de tibia 8.6 DEDICADO

 

| IP: real-world.servegame.com | XP: 650 | Baiak EDITED (PRÓPRIO) | DEDICADO 24horas Online | Aberto 10.12.15 |

logo.png

Link para o post
Compartilhar em outros sites
  Em 11/03/2016 em 03:57, pauliinho157 disse:

if getThing(x).type < 100 then
local it = getThing(x)
doTransformItem(it.uid, itemid, it.type+quant)
if it.type+quant > 100 then
doPlayerAddItem(cid, itemid, it.type+quant-100)

Tente mudar para uma quantidade maior os números em vermelho, pois ai está mesmo para catar apenas 100 lots e o restante vai para o chão, e me fale se deu certo.

 

 

 

Mostrar mais  

O sistema de Auto Loot que uso funciona exatamente igual a esse porém é diferente, não tem esse script na pasta mod, não tem essa parte que vc mencionou, eu consegui concertar, na verdade o @Lucas Barreto que conseguiu, ta funcionando perfeitamente agora :)  segue a solução que ele deu:

 

 

  Citar

Usando da matemática pra corrigir o problema de empilhamento. Adaptei aqui no meu server e funcionou, espero ajudar. Segue a mudança

 

La em creaturescripts no seu aloot.lua 

Como está:

 

if (count > 100) then

			count = count - math.floor(count / 100) * 100

		end

Como deve Ficar:

if (count >= 100) then

			count = count - math.floor(count / 100) * 100

		end

Só mudar a linha na qual verifica a quantidade de items na bag, a atual verifica só ate + que 100, com isso tem que estar 101+. Com o outro ele ja verifica o 100+. Espero ter ajudado.

Mostrar mais  

 

Ele me ajudou, estou repassando aqui pra ajudar mais pessoas, Vlw Lucas ^^

 

 

 

Link para o post
Compartilhar em outros sites
  Em 17/03/2016 em 12:34, samlecter disse:

O sistema de Auto Loot que uso funciona exatamente igual a esse porém é diferente, não tem esse script na pasta mod, não tem essa parte que vc mencionou, eu consegui concertar, na verdade o @Lucas Barreto que conseguiu, ta funcionando perfeitamente agora :)  segue a solução que ele deu:

 

 

 

Ele me ajudou, estou repassando aqui pra ajudar mais pessoas, Vlw Lucas ^^

 

 

 

Expand   Mostrar mais  

Exclui o [MOD] ou pode manter ?

Criador, a procura de mapper e scripter para server de tibia 8.6 DEDICADO

 

| IP: real-world.servegame.com | XP: 650 | Baiak EDITED (PRÓPRIO) | DEDICADO 24horas Online | Aberto 10.12.15 |

logo.png

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 Nextbr
      Boa Tarde Turma, Hoje vou Postar um sistema De Torneio Para Poketibia!
       
      Para que possa funcionar o sistema de Torneio verifique se na (area pvp-zone ) funciona o pvp, caso nao funciona tentem procurar um tutorial de como liberar o pvp-zone e talves tente mudar isso aki no config.lua de voces:
      worldType = "pvp-enforced"
      protectionLevel = 1   Bom Chega de Mimimi e vamos La:   data/lib/Torneio.lua e add isso:

        Depois vai em Globaleevents/Torneio.lua

        <globalevent name="TournamentStart" time="11:35" event="script" value="Torneio.lua"/>   Depois vai em Actions/Torneio.lua: Atençao: Voce faz uma area do Torneio no Map editor e Coloca PVP-Zone no Mapa editor  e coloca uma Alavanca com a uid "18279"

        XML: <action uniqueid="18279" event="script" value="Torneio.lua"/>   Agora o NPC TORNEIO NPCS/NPCS.XML:

       
      NPC/SCRIPTS/Torneio.lua:



       
       
      [*] Bom é so Isso Flw bj ;*
       
         
    • Por Nextbr
      Servidor Testado:
      erondino,pokemon dash v6,tfs  0.3.6
       
      Servidor Nao Testado:
      Pokemon Dash Advanced
       
      Precisa de: Noçoes basica de script pois so irei postar a parte principal dos script, pois eu nao sei oque voces editaram nos seus scripts !
       
      Bom Dia Turma, Hoje Eu Vou Postar:
      Sistema de Gender System "Sexos nos Pokemons":  O Sexo dos pokemons so vai ter em seus Pokemons capturados, Boxs,nao vai ter em pokes das hunts etc..
       
      Sistema Completo de "PokeLevel":  Level nos Seus Pokemons "Porem" a cada Level o Pokemon so Ganha HP Baseado no Servidor:
      Hidden Content
      Give reaction to this post to see the hidden content. . Pois dar força ao Summon Somente adicionando funçoes na Sources. o Sistema completo do Pokelevel vem: Rare candy,Evolution,Pokelevel  
      Intao Vamos La =)
       
      Gender System:
      *Primeiro antes de tudo tem que ver se no seu client tem o icone dos Sexos dos Pokemons, fazendo o comando /attr skull "Numero 1 a  4"
       
      *Eu So vo postar as funçoes eu nao vou mandar o script inteiro pois eu nao sei o que voces editaram no script do catch.lua mais mesmo assim e facil de editar intao Vamos la:
       
      vai em actions/catch.lua :



       
      Vai em actions/goback.lua:
       



       
      Vai em actions/box.lua



      *XML: <action itemid="ID" event="script" value="box.lua"/>
       
      PokeLevel System:
       
       
      * Limite de Pokelevel : 30
      * Para adicionar mais Level Segue esse Mini-Tutorial:



       
       
       
      Cria um Arquivo , creaturescripts/Pokelevel.lua:
       



       
      *XML: <event type="kill" name="kill" event="script" value="PokeLevel.lua"/>
      * registerCreatureEvent(cid, "kill")
       
      Troca seu look.lua creaturescripts/look.lua:
       



       
      Vai em actions/Goback.lua:
       



       
       
       
      *Aki quando voce dar primeiro Goback no Pokemon ele recebe o Level: 1
       
      actions/evolution.lua:



       
      *Exemplo de Evoluçao:
      ["Bulbasaur"] = {level = 40, evolution = "Ivysaur", maxh = 2600, count = 1, Stoneid = 2293, Stoneid2 = 0},
      ["Nome do Pokemon"] ={level = "level que precisa para Evoluir" , evolution = "Nome do Pokemon",maxh ="o Max de Hp que vai ter",count = "quantidade de stone",Stoneid = "Id da Stone", Stoneid2 = "id da stone 2"},
       
      vai em Actions/Rarecandy.lua
       



       
      *XML: <action itemid="ID" allowfaruse="1" event="script" value="Rarecandy.lua"/>
       
       
       
       
       
       
       
       
       
       
       
       
    • Por Naze
      Uns dos problemas das maiorias dos otserv casual que estão online é o autoloot, alguns com erros e defeito na checagem dos containers e sempre consumindo muito por ser em lua fazendo checagens de tile, corpo, itens e etc. Por isso decidi da uma contribuição a essa comunidade que me evoluiu bastante um autoloot diretamente na source na função que insere os itens no corpo, otimizando em 100% na hr da entrega do item, e não tendo problemas ocasionais como corpos sobre corpos ou varias bags.
       
           Esse sistema já é bem comum quando comprado, mas gratuito acredito que ainda não tinha disponível, então fiz esse totalmente do 0 na source tfs 0.4 rev 3999 (do yan).
          
          Atenção na instalação! Qualquer problema pra compilar que envolva as linhas presente no código verifique novamente se instalou corretamente antes de pedir ajuda para evitar flood. Qualquer bug, erro ou mal funcionamento encontrado pode postar que estarei corrigindo, mas não irei customizar a seu agrado, você consegue fazer isso sozinho com atenção e calma, e se precisa de ajuda é só posta as duvidas.
       
      Imagens do Sistema:
       
      Características: 
      -> Otimizado executando apenas funções necessarias -> Comandos simples e praticos -> !autoloot on/off //Autoloot estara sempre ligado, e caso queria desliga use '!autoloot off' -> !autoloot bank/bag //Define para onde ira o dinheiro coletado, direto banco ou no inventario -> !autoloot list //Lista todos itens adicionados para coleta -> !autoloot clear/clean //Remove todos itens da lista -> !autoloot add, name item, name item, ... //Adiciona itens na lista, podendo adicionar quantos quiser de uma vez. Ele retorna um messagem dizendo os itens que foram adicionados e os que deram erro e não foram adicionados, talvez por escrito errado, ja existente na lista, na lista de bloquados, etc. -> !autoloot remove, item name, item name, ... //Remove itens da lista, com a mesma logica do add. -> Opções configuravel pelo Config.lua -> AutoLoot_MoneyIDs //IDs dos Itens Moedas do servidor como gold coins, platinium coins, crystal coins. -> AutoLoot_BlockIDs //IDs dos itens bloqueados para autoloot -> AutoLoot_MaxItem //Quantidade maxima de itens para adicionar a lista -> Sistema livres de bugs ou logs de erros.  
      Instalação:
      Toda instalação será feita na source, exceto por 1 linha em talkactions.xml e 3 variáveis no config.lua
       
      TFS 0.4 :
       
      Link para Otx -> https://tibiaking.com/forums/topic/101086-otimizado-autoloot-in-sources-for-otx2-ou-menor/
       
      Nas versões atual da TFS para servidores 10+ não ira funcionar pois algumas funções são diferente e não irei corrigir agora, em breve passo o mesmo pra tfs 1.x e otx3.
       
      Esse sistema foi totalmente feito por mim, mas dou créditos também ao @Mathias Kenfi por me ajudar muito na evolução em lua/c++ e a tabela sql é a mesma usada no quick autoloot 1.3 postado por Pedriinz
       
      @Edit: 
      Quem usa source de derivados caso ocorra erro aplica as alterações dos comentários abaixo.
      Pequena correção em talkactions.cpp na parte remove na linha if(!player->checkAutoLoot(itemId)), para if(player->checkAutoLoot(itemId))
    • Por Digoshow
      Ola eu instalei um scrip no meu otserv que e o Auto-loot, tudo certinho blz, mais eu queria editar o comando que e usado para diciona um item, o comando que esta e esse /aloot remove:2170 eu queria deixa assim /aloot remove, 2170 tirar os 2 pontos e deixa uma virgula e um espaco depois da virgula, alguem consegue editar pra mim porfavor:
      Scrip que estou usando : http://www.tibiaking.com/forum/topic/8172-sistema-auto-loot/
      Obrigado, REP+ !
    • Por Tricoder
      SCREENSHOT
      http://3.1m.yt/Zwo99Sdx.png
      http://4.1m.yt/oG_cwli8u.png
      ______________________________________________ COMANDOS
      !autoloot add, itemId ou name -- Adicionando um item na lista !autoloot remove, itemId or name -- Remover um item da lista !autoloot show -- Mostrar a lista do autoLoot !autoloot clear -- Limpar a lista do autoLoot ______________________________________________ SCRIPT data/global.lua
      -- AutoLoot config AUTO_LOOT_MAX_ITEMS = 5 -- Reserved storage AUTOLOOT_STORAGE_START = 10000 AUTOLOOT_STORAGE_END = AUTOLOOT_STORAGE_START + AUTO_LOOT_MAX_ITEMS -- AutoLoot config end talkactions/talkactions.xml
      <talkaction words="!autoloot" separator=" " script="autoloot.lua"/> talkactions/scripts/autoloot.lua
      function onSay(player, words, param) local split = param:split(",") local action = split[1] if action == "add" then local item = split[2]:gsub("%s+", "", 1) local itemType = ItemType(item) if itemType:getId() == 0 then itemType = ItemType(tonumber(item)) if itemType:getId() == 0 then player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "There is no item with that id or name.") return false end end local itemName = tonumber(split[2]) and itemType:getName() or item local size = 0 for i = AUTOLOOT_STORAGE_START, AUTOLOOT_STORAGE_END do local storage = player:getStorageValue(i) if size == AUTO_LOOT_MAX_ITEMS then player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "The list is full, please remove from the list to make some room.") break end if storage == itemType:getId() then player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, itemName .." is already in the list.") break end if storage <= 0 then player:setStorageValue(i, itemType:getId()) player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, itemName .." has been added to the list.") break end size = size + 1 end elseif action == "remove" then local item = split[2]:gsub("%s+", "", 1) local itemType = ItemType(item) if itemType:getId() == 0 then itemType = ItemType(tonumber(item)) if itemType:getId() == 0 then player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "There is no item with that id or name.") return false end end local itemName = tonumber(split[2]) and itemType:getName() or item for i = AUTOLOOT_STORAGE_START, AUTOLOOT_STORAGE_END do if player:getStorageValue(i) == itemType:getId() then player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, itemName .." has been removed from the list.") player:setStorageValue(i, 0) return false end end player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, itemName .." was not founded in the list.") elseif action == "show" then local text = "-- Auto Loot List --\n" local count = 1 for i = AUTOLOOT_STORAGE_START, AUTOLOOT_STORAGE_END do local storage = player:getStorageValue(i) if storage > 0 then text = string.format("%s%d. %s\n", text, count, ItemType(storage):getName()) count = count + 1 end end if text == "" then text = "Empty" end player:showTextDialog(1950, text, false) elseif action == "clear" then for i = AUTOLOOT_STORAGE_START, AUTOLOOT_STORAGE_END do player:setStorageValue(i, 0) end player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "The autoloot list has been cleared.") else player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "Use the commands: !autoloot {add, remove, show, clear}") end return false end creaturescripts/creaturescripts.xml
      <event type="kill" name="AutoLoot" script="autoloot.lua" /> creaturescripts/scripts/autoloot.lua
      local function scanContainer(cid, position) local player = Player(cid) if not player then return end local corpse = Tile(position):getTopDownItem() if not corpse then return end if corpse:getType():isCorpse() and corpse:getAttribute(ITEM_ATTRIBUTE_CORPSEOWNER) == cid then for i = corpse:getSize() - 1, 0, -1 do local containerItem = corpse:getItem(i) if containerItem then for i = AUTOLOOT_STORAGE_START, AUTOLOOT_STORAGE_END do if player:getStorageValue(i) == containerItem:getId() then containerItem:moveTo(player) end end end end end end function onKill(player, target) if not target:isMonster() then return true end addEvent(scanContainer, 100, player:getId(), target:getPosition()) return true end creaturescripts/scripts/login.lua
      player:registerEvent("AutoLoot") ______________________________________________ CRÉDITOS
      Printer
  • Estatísticas dos Fóruns

    96847
    Tópicos
    519611
    Posts



×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo