Otimo script, facil de instalar e bem facil de utilizar, Aprovado !
- Fórum
- OTServ
- Recursos
- Scripting
- Mods, funções e outros
- Auto Loot System.
info
Grupo: Herói
Registrado: 12/03/11
Posts: 1.9k
Reputação: +284
Gênero: Masculino
Char no Tibia: Nokte

info
Grupo: Marquês
Registrado: 24/10/06
Posts: 1k
Reputação: +14
Char no Tibia: Lord Night Rider

Muito legal, um bot ingame.
Achei até interessante, serio mesmo, mas como ficariam os players q caçam em party e depois rola aquela disputa pra pegar o loot q dropo?
info
Grupo: Conde
Registrado: 09/09/09
Posts: 528
Reputação: +424
Char no Tibia: Emekalo Makalo

Quem da o ultimo hit pega os loots, e em party o outro player poderia ver os itens dropados ou seja, se ele ver que dropou algo e nao esta no corpo ele pode reclamar com o amigo... como todos fariam normalmente neh '-'
info
Grupo: Campones
Registrado: 25/11/11
Posts: 23
Reputação: +4
Char no Tibia: Dras ekos

poxa matheus sempre inovando
parabens kra voce na minha parte e o melhor script que tem aki no xtibia .. e o sky tbm
parabens voces 2 e grande script
quero ver mais e melhores !
Não da pra pré-definir o item que vai ser usado? tipo usar apenas pra money (sem permitir que o player escolha)?
info
Grupo: Conde
Registrado: 09/09/09
Posts: 528
Reputação: +424
Char no Tibia: Emekalo Makalo

info
Grupo: Lorde
Registrado: 17/01/09
Posts: 2.1k
Reputação: +395
Char no Tibia: Adra Sata

Wow.
Simplesmente perfeito ;D
Parabéns !
info
Grupo: Cavaleiro
Registrado: 30/06/08
Posts: 173
Reputação: +31
Char no Tibia: Lady Stars Walker

Interesante mais na minha opniao para um otserver hard não serviria mais muito util para a maioria dos otserver ganho meu rep++
como eu faço para so players vip usar esse mod?
tem como por para so jogares premium poder usar esse sistema ? e por tbm se fala so /autoloot aparecer uma msg dizendo um exemplo
e tbm se usar /autoloot all
pegar tudo q é item q dropa.?
kra, eu tava usando ele no meu ot e eu percebi uma coisa, n sei se é só no meu mas é mais ou menos assim:
eu no meu personagem de testes usei ele pra testar se ele tava funcionando, mas depois eu percebi uma coisa, quando eu mato o monstro, é como se ele "criasse" o item na minha bp, pois, abrindo o loot do bixo, os itens ainda estão lá
eu achei esse sistema muito bom mesmo (ate pq com isso caiu o numero de bots no ot) mas eu so estou avisando, caso tenha passado despercebido por vcs =D
info
Grupo: Campones
Registrado: 25/12/11
Posts: 16
Reputação: +1
Char no Tibia: Brasil Paladino

kra, eu tava usando ele no meu ot e eu percebi uma coisa, n sei se é só no meu mas é mais ou menos assim:eu no meu personagem de testes usei ele pra testar se ele tava funcionando, mas depois eu percebi uma coisa, quando eu mato o monstro, é como se ele "criasse" o item na minha bp, pois, abrindo o loot do bixo, os itens ainda estão lá
eu achei esse sistema muito bom mesmo (ate pq com isso caiu o numero de bots no ot) mas eu so estou avisando, caso tenha passado despercebido por vcs =D
É verdade eu fiz isso em meu ot eu ia um demo shield para a minha bp ai ficava o demon shield no mostro ele criava na bp esta bugado esse comando a ruma ai em
info
Grupo: Campones
Registrado: 25/07/11
Posts: 86
Reputação: +12

Absolutamente incrivel,muito bom pra qualquer tipo de servidor,estou usando no meu servidor^^ so nao dou rep pq ja usei o meu hje...










info
Grupo: Conde
Registrado: 09/09/09
Posts: 528
Reputação: +424
Char no Tibia: Emekalo Makalo
Video demonstrando o que faz o script:
Para usar a talkaction eh simples:
!autoloot itens (itens separados por virgula)
Exemplo: !autoloot mastermind shield, gold coin
Na pasta mods, bote esse xml, e pronto estara funcionando direitinho.
autoLoot.xml:
<?xml version="1.0" encoding="UTF-8"?> <mod name="autoLoot" enabled="yes" author="MatheusMkalo" forum="XTibia.com"> <config name="autoLootLib"><![CDATA[ function setPlayerStorageTable(cid, storage, tab) local tabstr = "&" for i,x in pairs(tab) do tabstr = tabstr .. i .. "," .. x .. ";" end setPlayerStorageValue(cid, storage, tabstr:sub(1, #tabstr-1)) end function getPlayerStorageTable(cid, storage) local tabstr = getPlayerStorageValue(cid, storage) local tab = {} if type(tabstr) ~= "string" then return {} end if tabstr:sub(1,1) ~= "&" then return {} end local tabstr = tabstr:sub(2, #tabstr) local a = string.explode(tabstr, ";") for i,x in pairs(a) do local b = string.explode(x, ",") tab[tonumber(b[1]) or b[1]] = tonumber(b[2]) or b[2] end return tab end function getContainerItems(containeruid) local items = {} local containers = {} if type(getContainerSize(containeruid)) ~= "number" then return false end for slot = 0, getContainerSize(containeruid)-1 do local item = getContainerItem(containeruid, slot) if item.itemid == 0 then break end if isContainer(item.uid) then table.insert(containers, item.uid) end table.insert(items, item) end if #containers > 0 then for i,x in ipairs(getContainerItems(containers[1])) do table.insert(items, x) end table.remove(containers, 1) end return items end function getItemsInContainerById(container, itemid) -- Function By Kydrai local items = {} if isContainer(container) and getContainerSize(container) > 0 then for slot=0, (getContainerSize(container)-1) do local item = getContainerItem(container, slot) if isContainer(item.uid) then local itemsbag = getItemsInContainerById(item.uid, itemid) for i=0, #itemsbag do table.insert(items, itemsbag[i]) end else if itemid == item.itemid then table.insert(items, item.uid) end end end end return items end function doPlayerAddItemStacking(cid, itemid, quant) local item = getItemsInContainerById(getPlayerSlotItem(cid, 3).uid, itemid) local piles = 0 if #item > 0 then for i,x in pairs(item) do 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) end else piles = piles+1 end end else return doPlayerAddItem(cid, itemid, quant) end if piles == #item then doPlayerAddItem(cid, itemid, quant) end end function corpseRetireItems(corpsepos, killer, itemsarray) local corpse = nil for i = 1, 254 do corpsepos.stackpos = i corpse = getThingFromPos(corpsepos) if corpse.uid > 0 and isCorpse(corpse.uid) then break end end local items = getContainerItems(corpse.uid) for i,x in pairs(items) do if isInArray(itemsarray, tonumber(x.itemid)) then if isItemStackable(x.itemid) then doPlayerAddItemStacking(killer, x.itemid, x.type) else doPlayerAddItem(killer, x.itemid) end doRemoveItem(x.uid, x.type) end end end ]]></config> <creaturescript type="kill" name="autoLootKill" event="script"><![CDATA[ domodlib("autoLootLib") local loots = getPlayerStorageTable(cid, 6616) if lastHit and #loots >= 1 then addEvent(corpseRetireItems, 100, getCreaturePosition(target), cid, loots) end return true ]]></creaturescript> <talkaction words="!autoloot;/autoloot" event="script"><![CDATA[ domodlib("autoLootLib") local t = string.explode(param, ",") for i,x in pairs(t) do if not getItemIdByName(x, false) then return doPlayerSendCancel(cid, "Some of these items don't exist.") end t[i] = getItemIdByName(x, false) end setPlayerStorageTable(cid, 6616, t) doPlayerSendTextMessage(cid, 25, "Auto Looting: " .. param) return true ]]></talkaction> <creaturescript type="login" name="autoLootRegister" event="script"><![CDATA[ registerCreatureEvent(cid, "autoLootKill") return true ]]></creaturescript> </mod>autoLoot.xml