Well, as far as i've seen on XenoBot (bought yesterday), if two creatures fall in the same sqm, it will only loot the first one.. would be great if the bot move corpses to make sure every creature is looted in a situation like that..
Printable View
Well, as far as i've seen on XenoBot (bought yesterday), if two creatures fall in the same sqm, it will only loot the first one.. would be great if the bot move corpses to make sure every creature is looted in a situation like that..
yeah an option to loot immediately after kill would be cool too + ability to choose a looting mode
+1 good idea!
anyone found a script for this yet?... i've lost a lot of profit because of this. :S
there is no scrip for this and there most likely wont be if you want it to loot befor hand right click in the looter and channge it from last to first and it will loot after it kills the monster
Would be nice if the looter use "Browse Field" option on the Tibia client...
Function?Code:Self.BrowseField()
First the bot needs the ability to read the 8 or so visible items on a square. I know it must be possible to read, because you can see 8 or so items before they start disappearing. Also there should be a way to tell if something is covering the base ground tile. Once you add this ability to the bot you could easily implement this to the looter so that the bot would loot creatures that fall on each other with browse field. It could also loot creature that die on ladder spots, and also creatures that are underneath fire fields etc... All other creatures it could loot the normal way. The reason to do it this way is that it would be strange to loot every single creature using browse field and also inhuman. We should only use browse field where it is needed.
This would help with a lot of missed loots.
@DarkstaR
Or, y'know, you could write a script...
Here's a browse field looter. Really basic, not commented, not going to explain how to set it up. Get inspired.
As for the above post, pffffffffffffffffffffffffffffffffffffffffffff usuckCode:local lootList = {
[1] = {3031}
}
local target, pos;
LootMessageProxy.OnReceive('looting', function(p, m)
if (pos) then
--Cavebot.Stop()
Self.BrowseField(pos.x, pos.y, pos.z)
wait(300, 500)
local cont = Container.GetLast()
for spot, item in cont:iItems() do
if (Item.isCorpse(item.id)) then
cont:UseItem(spot, true)
wait(300, 500)
cont = Container.GetLast()
local offset = 0
for i = 0, cont:ItemCount() - 1 do
local itm = cont:GetItemData(i - offset)
for bp, items in pairs(lootList) do
if table.contains(items, itm.id) then
cont:MoveItemToContainer(i - offset, Container(bp), 0)
wait(300, 500)
offset = offset - 1
break
end
end
end
break
end
end
--Cavebot.Start()
end
end)
Module.New('postracking', function()
if Self.TargetID() > 0 then
target = Creature(Self.TargetID())
if (target:isAlive() and target:isOnScreen()) then
pos = target:Position()
return
end
end
target = nil
end)
Typical sheepish response. This was posted in the suggestions section, not in the request section. How about providing what the customers pay for? Just because I can write a script does not mean I should always have to. There are certain things like these that should simply be built into the bot. Not to mention that your script walks around using browse field every time it loots a creature. Basically saying to CIP..... "Hey LOOK AT ME! I'm a BOTTER!"
I don't understand what you're trying to say.
Code:sheepˇish
adjective
1. (of a person or expression) showing embarrassment from shame or a lack of self-confidence.
You're right. I, having no more influence on the development of the bot, should not provide temporary solutions to people's requests while they wait to hear from the bot developer if he will add their feature.
You're right, every other bot has moved corpses to loot creatures. Why does Xenobot have to be different? Can't believe this hasn't been added yet.
Seriously? I feel like you just post stupid inane shit to make me educate you. If you want to learn something, just ask nicely.
Working as intended then, exactly what they were asking for.
This is the annoying bit. You don't know shit about how CIP's automatic detection tool works. No one does. You may have a theory, but don't criticize others just because they go against your theory of how they are detecting bots. Here's a script for you to run on all your accounts:
Bye!Code:local knowsHowDetectionWorks = false
repeat
Self.Say("Hey LOOK AT ME! I'm a BOTTER!")
until knowsHowDetectionWorks
You broke down my entire post? You take everything far to personally and I'm definitely not going to reward you by continuing this internet fight.
Time for me to work now. Enjoy your internet power. lmao....
To be honest @Spectrus, original post was when browse field didn't exist, so it made sense to "move the corpse" to loot another below. Now, we got browse field and I wonder myself why XenoBot doesn't use it yet. You know, the newest competitor (which works faster than XenoBot while simulating mouse/keyboard, LOL) does that. The main problem of this community is that you guys always have to make scripts to something which should be in-built.
Quote:
local lootList = {
[1] = {3031}
}
local target, pos;
LootMessageProxy.OnReceive('looting', function(p, m)
if (pos) then
--Cavebot.Stop()
Self.BrowseField(pos.x, pos.y, pos.z)
wait(300, 500)
local cont = Container.GetLast()
for spot, item in cont:iItems() do
if (Item.isCorpse(item.id)) then
cont:UseItem(spot, true)
wait(300, 500)
cont = Container.GetLast()
local offset = 0
for i = 0, cont:ItemCount() - 1 do
local itm = cont:GetItemData(i - offset)
for bp, items in pairs(lootList) do
if table.contains(items, itm.id) then
cont:MoveItemToContainer(i - offset, Container(bp), 0)
wait(300, 500)
offset = offset - 1
break
end
end
end
break
end
end
--Cavebot.Start()
end
end)
Module.New('postracking', function()
if Self.TargetID() > 0 then
target = Creature(Self.TargetID())
if (target:isAlive() and target:isOnScreen()) then
pos = target:Position()
return
end
end
target = nil
end)
Not going to try this Spectrus, but the code looks good to me.
Gotta remember there's a lot of people who are scared of using scripts like this, due to a community which is unfortunately not filled with members like yourself, people tend not to trust scripts for important stuff like looting.
If DarkstaR can convert this to CPP and add it to the bot would be naiiiiiiice ;)