Posts: 22
Threads: 5
Joined: Jul 2022
Reputation:
0
Im having trouble with your script that makes the bot dropping loot in the lootbp. Few items is the bot dropping but after it has moved few items the bot stops and just standing there. And somehow im also having problem with making the bot go down hole, any suggestion/tip on what im doing wrong?
Posts: 2,919
Threads: 483
Joined: Jul 2018
Reputation:
83
Hello.
1. Dropping loot: That depends on settings and/or script you are using. You need to post it, so we can try to help you. It would be great if you also share your backpack organization like a screenshot of your backpacks.
2. Go down hole: Just create a STAND waypoint on hole location. You may ask me, how can I do that if I can't step on hole? Simple... When you create a waypoint on Cavebot, it's created based on your characters location, but there's an option that you can change on which direction you wanna create. The default option is "C" (Center), which is the same position your character stands.
You just need to stand at hole's south then select "N" and create the stand waypoint... So the waypoint will be created at your north, where the hole will be. |Only Registered members can see download links. | Click here to buy subscription or here to register.|Only Registered members can see download links. | Click here to buy subscription or here to register.alt="Smile" title="Smile" class="smilie smilie_1" />
You can also use HUDs -> Show waypoints option to help you to "see" that.
Posts: 22
Threads: 5
Joined: Jul 2022
Reputation:
0
|Only Registered members can see download links. | Click here to buy subscription or here to register.
The script is from your thread "Usefull scripts" and this is the list of items i've changed to it does loot it but like i said not moving it to the lootbackpack
local ItemsDrop = { 'dwarven shield', 'battle axe', 'gold coin', 'crossbow' } -- Items that you wanna drop inside the container.
local BackpackLoot = 'Blue Backpack' -- Backpack that you are carrying to keep loots, it will drop FROM this backpack.
And this is pretty much my backpack setup
|Only Registered members can see download links. | Click here to buy subscription or here to register.
Thanks for your fast reply =)
Posts: 2,919
Threads: 483
Joined: Jul 2018
Reputation:
83
09-07-2022, 03:54 PM
(This post was last modified: 09-07-2022, 04:26 PM by Arkilys.)
Hello.
What's the backpack or bag that you are using on floor? That script opens it and move items from your blue backpack to that container.
I also recommend you to close all your containers and reopen it then try to use the script.
Try using the following version of the script:
local ItemsDrop = { 'fish', 'battle shield', 'wooden shield' } -- Items that you wanna drop inside the container.
local BackpackLoot = 'Red Backpack' -- Name or index. Index is recommended. It will drop loots FROM this backpack. If you choose to use name then you MUST NOT have the same kind backpack (even if inside another) on floor.
local DropBagPosition = { X = 12345, Y = 54321, Z = 7 } -- Container's location that you wanna open and drop items inside.
--[[ DON'T EDIT BELOW THIS LINE --]]
--[[ DON'T EDIT BELOW THIS LINE --]]
--[[ CREDITS TO ARKILYS --]]
--[[ DON'T EDIT BELOW THIS LINE --]]
--[[ DON'T EDIT BELOW THIS LINE --]]
if findopenedcontainer == nil then
function findopenedcontainer(lastContainers, currentContainers, openedContainerId)
if currentContainers == nil then
currentContainers = getcontainers()
end
if openedContainerId == nil then
openedContainerId = -1
end
for _, current in ipairs(currentContainers) do
local found = false
for __, last in ipairs(lastContainers) do
if last.index == current.index then
found = true
break
end
end
if found == false and (openedContainerId <= 0 or openedContainerId == current.id) then
return current
end
end
return nil
end
end
if opencontainer == nil then
function opencontainer(id, from, newWindow, tries)
if newWindow == nil then
newWindow = false
end
if tries == nil then
tries = 3
end
local containersBefore = getcontainers()
local openedContainer = nil
for j = 1, tries do
openitem(id, from, newWindow)
wait(800, 1200)
local containersCurrent = getcontainers()
openedContainer = findopenedcontainer(containersBefore, containersCurrent, id)
if openedContainer ~= nil and openedContainer.index >= 0 then
break
end
containersBefore = containersCurrent
end
return openedContainer
end
end
if tempOpenNextContainer == nil then
function tempOpenNextContainer(cont)
local emptyLeft = cont.maxslots - cont.usedslots
while emptyLeft == 0 do
for _, bagItem in ipairs(cont.items) do
if itemhasflags(bagItem.id, 4) then
openitem(bagItem.id, cont.index)
wait(1000)
cont = getcontainer(cont.index)
if cont ~= nil and cont.maxslots ~= nil then
emptyLeft = cont.maxslots - cont.usedslots
break
else
return
end
end
emptyLeft = -1
end
end
if emptyLeft > 0 then
return cont
end
return nil
end
end
local bagContainer = opencontainer(0, ground(DropBagPosition.X, DropBagPosition.Y, DropBagPosition.Z), true)
if bagContainer ~= nil then
bagContainer = tempOpenNextContainer(bagContainer)
if bagContainer ~= nil then
emptyLeft = bagContainer.maxslots - bagContainer.usedslots
if emptyLeft > 0 then
table.id(ItemsDrop)
for i,j in ipairs(ItemsDrop) do
local failCount = 0
while itemcount(j, BackpackLoot) > 0 do
if emptyLeft == 0 then
bagContainer = tempOpenNextContainer(bagContainer)
if bagContainer ~= nil and bagContainer.maxslots ~= nil then
emptyLeft = bagContainer.maxslots - bagContainer.usedslots
end
end
if moveitems(j, bagContainer.index, BackpackLoot, 100) then
wait(300)
emptyLeft = emptyLeft - 1
else
wait(300)
failCount = failCount + 1
if failCount > 3 then
break
end
end
end
end
end
end
end
Posts: 22
Threads: 5
Joined: Jul 2022
Reputation:
0
|Only Registered members can see download links. | Click here to buy subscription or here to register.
Im using blue backpack on floor with several other backpacks inside
Posts: 2,919
Threads: 483
Joined: Jul 2018
Reputation:
83
09-07-2022, 04:24 PM
(This post was last modified: 09-07-2022, 04:29 PM by Arkilys.)
Hello.
So your setup is not correct, since your main backpack is also a blue backpack. As you are using backpack name in "BackpackLoot" variable then you must not have the same backpack kind on floor, so you need to change it to INDEX instead of backpack name OR make sure that you are not using the same backpack kind on floor (or any backpack inside the bp on floor).
I also made some changes on script (i've posted it on my post above!).
Container index is the number given by the game-client when you open a container.
You can use the following code to print each container index and name, so it may be easier for you to find the container index.
local containers = getcontainers()
for _, cont in ipairs(containers) do
print(cont.index .. ': ' .. cont.name)
end
Posts: 22
Threads: 5
Joined: Jul 2022
Reputation:
0
|Only Registered members can see download links. | Click here to buy subscription or here to register.Works perfectly now and great thanks for fast help! =)
|