I have 4 bots running rookguard script IB - [N] RookAFK 1.4. No errors yet all around level 5.
Still waiting for preview patch ;P
I have 4 bots running rookguard script IB - [N] RookAFK 1.4. No errors yet all around level 5.
Still waiting for preview patch ;P
you are so slow with update.. soon 3 days lost that i paid .. i dont think i will buy anymore xenobot, i dont want to wait allways 3-4 days for your update.
Alarms not able to open when I have this running.
----------Barbarian Script-----------
--------By Hypn0tic Ki11er---------
--------------Enjoy!!--------------
HuntInTower = true
SoftBoots = true --Whether you are using Soft Boots.
---------Checker Settings---------
LeaveNoSofts = false --Whether you want to leave if you don't have any soft boots left.
LeaveUponGoldAmount = true --Whether you want to leave upon reaching a certain gold amount (determined below).
GoldToLeave = 8000 --Amount of gold before you leave the cave.
MinCap = 50 --At what capacity do you want to leave the cave?
ManasToLeave = 85 --How many Mana Potions to leave the cave?
HealthsToLeave = 20 --How many Health Potions to leave the cave?
GoldID = 3031 --Gold ID
---Support---
WantedHPS = 30 --How many Health Potions do you want in your BP?
WantedMPS = 500 --How many Mana Potions do you want in your BP?
HealthCost = 100 --How much each Health Potion costs.
ManaCost = 50 --How much each Mana Potion costs.
HealthPotID = 236 --Health Potion ID.
ManaPotID = 268 --Mana Potion ID.
-----------------------------------------------
registerEventListener(WALKER_SELECTLABEL, "onWalkerSelectLabel")
function onWalkerSelectLabel(labelName)
if (labelName == "ItitialCheck") then
setWalkerEnabled(false)
if ((Self.ItemCount(3549) == 0)) and ((Self.ItemCount(6529) == 0)) and ((SoftBoots == true)) or ((Self.ItemCount(ManaPotID) < WantedMPS)) or ((Self.ItemCount(HealthPotID) < WantedHPS)) or (LeaveUponGoldAmount == true) and ((Self.ItemCount(GoldID) <= 3000)) then
gotoLabel("ToDepot")
setWalkerEnabled(true)
else
gotoLabel("ToCamp")
setWalkerEnabled(true)
end
elseif (labelName == "ResetBP") then
resetBackpacks()
elseif (labelName == "Bank") then
setWalkerEnabled(false)
delayWalker(7000) --Stops walker so that the character doesn't move away from the NPC.
Self.SayToNpc("hi")
sleep(math.random(700, 1400)) --Sleep between everything the character says to avoid suspicion.
Self.SayToNpc("deposit all")
sleep(math.random(300, 1000)) --Sleep between everything the character says to avoid suspicion.
Self.SayToNpc("yes")
sleep(math.random(700, 1400)) --Sleep between everything the character says to avoid suspicion.
Self.WithdrawMoney((ManaCost*(WantedMPS-Self.ItemCount(ManaPotID))))
Self.WithdrawMoney((HealthCost*(WantedHPS-Self.ItemCount(HealthPotID))))
Self.WithdrawMoney(2000)
if (SoftBoots == true) then
Self.WithdrawMoney((10000*(Self.ItemCount(6530))))
wait(500)
else
wait(500)
end
sleep(math.random(800, 1500)) --Sleep between everything the character says to avoid suspicion.
setWalkerEnabled(true)
elseif (labelName == "Deposit") then
setWalkerEnabled(false)
Self.ReachDepot()
Self.DepositItems({5913, 0}, {7449, 0}, {7457, 0}, {7462, 0}, {3052, 0}, {7461, 0}, {7379, 0}, {7464, 0}, {7463, 0}, {3344, 0}, {5911, 0}, {7290, 0}, {819, 0}, {3574, 0}, {7387, 0}, {823, 0}, {7459, 0}, {3067, 0})
wait(1500,1900)
setWalkerEnabled(true)
elseif (labelName == "BuyPotions") then
setWalkerEnabled(false)
delayWalker(10000) --Stops walker so that the character doesn't move away from the NPC.
Self.SayToNpc("hi")
sleep(math.random(800, 1700)) --Sleep between everything the character says to avoid suspicion.
Self.SayToNpc({"Hi", "flasks", "yes", "yes", "yes", "Trade"}, 100)
sleep(math.random(800, 1700)) --Sleep between everything the character says to avoid suspicion.
Self.SayToNpc("trade")
sleep(math.random(2000, 2400)) --Sleep between everything the character says to avoid suspicion.
buyitems(ManaPotID, (WantedMPS-Self.ItemCount(ManaPotID)))
buyitems(HealthPotID, (WantedHPS-Self.ItemCount(HealthPotID)))
sleep(math.random(800, 1700)) --Sleep between everything the character says to avoid suspicion.
setWalkerEnabled(true)
elseif (labelName == "TowerCheck") then
if (HuntInTower == false) then
gotoLabel("KeepHunting2")
wait(500)
else
wait(500)
end
elseif (labelName == "TowerCheck2") then
if (HuntInTower == false) then
gotoLabel("KeepHunting")
wait(500)
else
wait(500)
end
elseif (labelName == "CheckSofts") then
delayWalker(1000)
setWalkerEnabled(false)
if ((Self.ItemCount(3549) == 0)) and ((Self.ItemCount(6529) == 0)) and ((SoftBoots == true)) then
gotoLabel("ToVenore")
setWalkerEnabled(true)
else
gotoLabel("ToCamp")
setWalkerEnabled(true)
end
elseif (labelName == "Checker") then
if ((Self.ItemCount(3549) == 0)) and ((Self.ItemCount(6529) == 0)) and ((LeaveNoSofts == true)) and (SoftBoots == true) or (Self.Cap() <= MinCap) or ((Self.ItemCount(ManaPotID) < ManasToLeave)) or ((Self.ItemCount(HealthPotID) < HealthsToLeave)) or (LeaveUponGoldAmount == true) and ((Self.ItemCount(GoldID) >= GoldToLeave)) then
wait(500)
gotoLabel("Leave")
else
wait(500)
end
elseif (labelName == "EndChecker") then
if ((Self.ItemCount(3549) == 0)) and ((Self.ItemCount(6529) == 0)) and ((LeaveNoSofts == true)) and((SoftBoots == true)) or (Self.Cap() <= MinCap) or ((Self.ItemCount(ManaPotID) < ManasToLeave)) or ((Self.ItemCount(HealthPotID) < HealthsToLeave)) or (LeaveUponGoldAmount == true) and ((Self.ItemCount(GoldID) >= GoldToLeave)) then
wait(500)
gotoLabel("Leave")
else
wait(500)
gotoLabel("KeepHunting")
end
elseif (labelName == "KeepHunting") then
if (Self.Feet().id ~= 3549) and (Self.Feet().id ~= 6529) and ((SoftBoots == true)) then
if ((Self.ItemCount(3549) == 0)) then
Self.Equip(6529, "feet")
else
Self.Equip(3549, "feet")
end
end
elseif (labelName == "KeepHunting2") then
if (Self.Feet().id ~= 3549) and (Self.Feet().id ~= 6529) and ((SoftBoots == true)) then
if ((Self.ItemCount(3549) == 0)) then
Self.Equip(6529, "feet")
else
Self.Equip(3549, "feet")
end
end
elseif (labelName == "Leave") then
Self.Equip(3079, "feet")
end
end
------------------------------------
----------OTHER FUNCTIONS-----------
----------DON'T MESS HERE-----------
------------------------------------
function buyitems(item, count)
count = tonumber(count) or 1
repeat
local amnt = math.min(count, 100)
if(Self.ShopBuyItem(item, amnt) == 0)then
return printf("ERROR: failed to buy item: %s", tostring(item))
end
wait(200,500)
count = (count - amnt)
until count <= 0
end
Map.GetUseItems = function (id)
if type(id) == "string" then
id = Item.GetID(id)
end
local pos = Self.Position()
local store = {}
for x = -7, 7 do
for y = -5, 5 do
if Map.GetTopUseItem(pos.x + x, pos.y + y, pos.z).id == id then
itemPos = {x = pos.x + x, y = pos.y + y, z = pos.z}
table.insert(store, itemPos)
end
end
end
return store
end
function closeBackpacks()
local displayName = "CloseBackpacks"
local tmpBP = Container.GetFirst()
local cascaded = {}
while tmpBP:isOpen() do
for spot = 0, tmpBP:ItemCount() do
local item = tmpBP:GetItemData(spot)
if item.id == tmpBP:ID() then
table.insert(cascaded, tmpBP:ID())
tmpBP = tmpBP:GetNext()
end
end
tmpBP = Container.GetFirst()
if not table.contains(cascaded, tmpBP:ID()) or tmpBP:ItemCount() == 0 then -- Backpack is main or last cascaded. Closing...
Self.UseItem(tmpBP:ID())
wait(500, 900)
end
if #cascaded > 0 then -- Any cascaded backpacks?
for i = 1, #cascaded do
if tmpBP:ID() == cascaded[i] then -- Found cascaded backpack.
if tmpBP:ItemCount() > 0 then -- Backpack contains atleast one item, check for another bp.
for spot = 0, tmpBP:ItemCount() do
local item = tmpBP:GetItemData(spot)
if item.id == tmpBP:ID() then -- Found anoter cascade bp, opening...
tmpBP:UseItem(spot, true)
break
end
end
end
end
end
end
wait(500, 900)
tmpBP = Container.GetFirst() -- Get a new bp to check.
if tmpBP:ID() == 0 then -- No more open backpacks.
print("All backpacks were successfully closed.")
end
end
return true
end
Self.ReachDepot = function (tries)
local tries = tries or 3
setWalkerEnabled(false)
local DepotIDs = {3497, 3498, 3499, 3500}
local DepotPos = {}
for i = 1, #DepotIDs do
local dps = Map.GetUseItems(DepotIDs[i])
for j = 1, #dps do
table.insert(DepotPos, dps[j])
end
end
local function gotoDepot()
local pos = Self.Position()
print("Depots found: " .. tostring(#DepotPos))
for i = 1, #DepotPos do
location = DepotPos[i]
Self.UseItemFromGround(location.x, location.y, location.z)
wait(1000, 2000)
if Self.DistanceFromPosition(pos.x, pos.y, pos.z) >= 1 then
wait(5000, 6000)
if Self.DistanceFromPosition(location.x, location.y, location.z) == 1 then
setWalkerEnabled(true)
return true
end
else
print("Something is blocking the path. Trying next depot.")
end
end
return false
end
repeat
reachedDP = gotoDepot()
if reachedDP then
return true
end
tries = tries - 1
sleep(100)
print("Attempt to reach depot was unsuccessfull. " .. tries .. " tries left.")
until tries <= 0
return false
end
function openBackpacks(...)
local displayName = "OpenBackpacks"
local backpacks = {...}
Self.UseItem(Self.Backpack().id) -- Open main backpack.
print("Opening main backpack.")
wait(500, 900)
main = Container.GetFirst()
if #backpacks > 0 then
for i = 1, #backpacks do
if type(backpacks[i]) == 'table' then -- Is parent container specified?
tmpBP = Container.GetByName(backpacks[i][1])
for spot = 0, tmpBP:ItemCount() do
item = tmpBP:GetItemData(spot)
if item.id == backpacks[i][2] then
tmpBP:UseItem(spot)
print("Opening backpack from list. " .. backpacks[i][1] .. ", " .. backpacks[i][2])
wait(500, 800)
end
end
else -- If there is no parent specified we will use the main bp.
for spot = 0, main:ItemCount() do
item = main:GetItemData(spot)
if item.id == backpacks[i] then
main:UseItem(spot)
print("Opening backpack from list, " .. backpacks[i])
wait(500, 800)
end
end
end
end
local indexes = Container.GetIndexes()
for i = 1, #indexes do
if type(backpacks[i]) == "table" then
if Container.GetFromIndex(indexes[i]):ID() ~= backpacks[i][1] then
return false
end
else
if Container.GetFromIndex(indexes[i]):ID() ~= backpacks[i] then
return false
end
end
end
return true
end
end
function getOpenBackpacks()
local indexes = Container.GetIndexes() -- Find index for all open backpacks
local open = {} -- Create a place to store our open backpacks
for i = 1, #indexes do -- Search all open backpacks
tmpBP = Container.GetFromIndex(indexes[i])
table.insert(open, tmpBP:ID()) -- Store this backpack
end
return open -- Return found backpacks
end
function resetBackpacks(tries)
setWalkerEnabled(false)
local open = getOpenBackpacks() -- Save a list of open backpacks
local tries = 3 -- Give the script 3 tries to achieve a successful reset.
repeat
closeBackpacks() -- Close all backpacks
wait(600, 800) -- wait a little bit
local reopen = openBackpacks(unpack(open)) -- I store the return from openBackpacks, true if successfull, false otherwise
if tries == 0 then -- Check how many tries function has left
print("BackpackReset failed!") -- Tell the user reset has failed
return false
end
tries = tries - 1 -- One try has been spent
until reopen -- If reopen is true it means all backpacks were opened successfully and function is done
print("BackpackReset was successfull!") -- Tell user reset was successful
setWalkerEnabled(true)
return true
end
Awesome! Thank you!
client is crashing while having two tibia open, and only the first client that I opened crashedanyone else getting it too?
hey yo, im crashing pretty often, but only on brimstone bugs surface. botting on 2 servers same time and it just happens randomly every 10 minutes orso, i also crashed in farmine depot though, cant really give more details since ive got no clu whats up and need to go out, is there any log i could check whats wrong?
forgot, i bot 6 clients atm, only those 2 i mentioned crash
Fuck yah Darkstar, good job g, fastest update out of all the other bots, shows who really knows there shit.
Can't wait til you release the preview version, I'm in dire need of it..!