What's new

Knight [PACC] [40] Port Hope Banuta Apes

Status
Not open for further replies.

Xinum

Never Give Up!
Joined
Dec 23, 2009
Messages
578
Reaction score
66
[EK][40] Port Hope Banuta Apes

Code:
<Settings>
  <Alerts>
    <Player>
      <OnScreen>
        <PlaySound>no</PlaySound>
        <FlashClient>no</FlashClient>
        <PauseBot>no</PauseBot>
        <Disconnect>no</Disconnect>
        <SafeList>null</SafeList>
      </OnScreen>
      <Attacking>
        <PlaySound>yes</PlaySound>
        <FlashClient>yes</FlashClient>
        <PauseBot>no</PauseBot>
        <Disconnect>no</Disconnect>
        <SafeList>null</SafeList>
      </Attacking>
    </Player>
    <Creature />
    <Item />
    <Message>
      <PrivateMessage>
        <PlaySound>no</PlaySound>
        <FlashClient>no</FlashClient>
        <PauseBot>no</PauseBot>
        <Disconnect>no</Disconnect>
        <SafeList>null</SafeList>
      </PrivateMessage>
      <Advanced>
        <PlaySound>no</PlaySound>
        <FlashClient>no</FlashClient>
        <PauseBot>no</PauseBot>
        <Disconnect>no</Disconnect>
        <Screenshot>no</Screenshot>
      </Advanced>
      <Raid>
        <PlaySound>no</PlaySound>
        <FlashClient>no</FlashClient>
        <PauseBot>no</PauseBot>
        <Disconnect>no</Disconnect>
        <Warnings>All</Warnings>
      </Raid>
    </Message>
    <Capacity>
      <Value>100</Value>
      <PlaySound>no</PlaySound>
      <FlashClient>no</FlashClient>
      <PauseBot>no</PauseBot>
      <Disconnect>no</Disconnect>
    </Capacity>
    <StandTime>
      <Value>30000</Value>
      <PlaySound>no</PlaySound>
      <FlashClient>no</FlashClient>
      <PauseBot>no</PauseBot>
      <Disconnect>no</Disconnect>
    </StandTime>
    <Disconnect>
      <PlaySound>no</PlaySound>
      <FlashClient>no</FlashClient>
      <PauseBot>no</PauseBot>
    </Disconnect>
    <Enabled>yes</Enabled>
  </Alerts>
  <Healer>
    <Rules>
      <Exori-Ico>
        <HealRange>0 to 75 %</HealRange>
        <ManaRange>40 to all</ManaRange>
        <HealMethod>Wound Cleansing</HealMethod>
        <ExtraCondition>No condition</ExtraCondition>
        <CooldownControl>yes</CooldownControl>
        <CheckItem>no</CheckItem>
        <SpamRate>200 to 400</SpamRate>
        <Enabled>yes</Enabled>
      </Exori-Ico>
      <HP-Potion>
        <HealRange>0 to 40 %</HealRange>
        <ManaRange>0 to 100 %</ManaRange>
        <HealMethod>Great Health Potion</HealMethod>
        <ExtraCondition>No condition</ExtraCondition>
        <CooldownControl>yes</CooldownControl>
        <CheckItem>no</CheckItem>
        <SpamRate>200 to 400</SpamRate>
        <Enabled>yes</Enabled>
      </HP-Potion>
      <MP-Potion>
        <HealRange>0 to 100 %</HealRange>
        <ManaRange>0 to 50 %</ManaRange>
        <HealMethod>Mana Potion</HealMethod>
        <ExtraCondition>No condition</ExtraCondition>
        <CooldownControl>yes</CooldownControl>
        <CheckItem>yes</CheckItem>
        <SpamRate>200 to 400</SpamRate>
        <Enabled>yes</Enabled>
      </MP-Potion>
      <Paralyze>
        <HealRange>0 to 100 %</HealRange>
        <ManaRange>40 to all</ManaRange>
        <HealMethod>Wound Cleansing</HealMethod>
        <ExtraCondition>If paralyzed</ExtraCondition>
        <CooldownControl>yes</CooldownControl>
        <CheckItem>no</CheckItem>
        <SpamRate>200 to 400</SpamRate>
        <Enabled>yes</Enabled>
      </Paralyze>
      <Mana-Burn>
        <HealRange>0 to 100 %</HealRange>
        <ManaRange>95 to 100 %</ManaRange>
        <HealMethod>Wound Cleansing</HealMethod>
        <ExtraCondition>No condition</ExtraCondition>
        <CooldownControl>yes</CooldownControl>
        <CheckItem>no</CheckItem>
        <SpamRate>200 to 400</SpamRate>
        <Enabled>yes</Enabled>
      </Mana-Burn>
    </Rules>
    <PingCompensation>10</PingCompensation>
    <Enabled>yes</Enabled>
  </Healer>
  <FriendHealer>
    <Rules />
    <Enabled>no</Enabled>
  </FriendHealer>
  <Refiller>
    <Rules />
    <Enabled>no</Enabled>
  </Refiller>
  <HotKeys>
    <List>
      <ShowBot>
        <Script>showbot()</Script>
        <MainKey>66</MainKey>
        <ComboKey>Alt</ComboKey>
        <Enabled>yes</Enabled>
      </ShowBot>
      <PauseBot>
        <Script>local cavebot = getsettings("Settings/CaveBot/Enabled")
local targeting = getsettings("Settings/Targeting/Enabled")

if cavebot == 'no' or targeting == 'no' then
   setcavebot('on')
   settargeting('on')
   setlooting('on')
else
   setcavebot('off')
   settargeting('off')
   setlooting('off')
end
wait(500)</Script>
        <MainKey>19</MainKey>
        <ComboKey>None</ComboKey>
        <Enabled>yes</Enabled>
      </PauseBot>
      <ShowClient>
        <Script>focusclient()</Script>
        <MainKey>84</MainKey>
        <ComboKey>Alt</ComboKey>
        <Enabled>yes</Enabled>
      </ShowClient>
      <ShowSettings>
        <Script>showsettings()</Script>
        <MainKey>83</MainKey>
        <ComboKey>Alt</ComboKey>
        <Enabled>yes</Enabled>
      </ShowSettings>
    </List>
    <Condition>Client focus required</Condition>
    <Enabled>no</Enabled>
  </HotKeys>
  <Actions>
    <List>
      <WTP-changer>
        <Script>----<< CODE, DONT EDIT >>----
if ((pzone) or (isPvp == 2)) then
  setsettings("Settings\\Cavebot\\Pathfinding\\WalkThroughPlayers", "yes")
else
    setsettings("Settings\\Cavebot\\Pathfinding\\WalkThroughPlayers", "no")
end</Script>
        <SpamRate>100 to 200</SpamRate>
        <Enabled>no</Enabled>
      </WTP-changer>
      <Auto-Mount>
        <Script>----<< CODE, DONT EDIT >>----
if autoMount then
  setsettings("Settings\\Cavebot\\Settings\\AutoMount", "yes")
else
  setsettings("Settings\\Cavebot\\Settings\\AutoMount", "no")
end</Script>
        <SpamRate>800 to 1000</SpamRate>
        <Enabled>yes</Enabled>
      </Auto-Mount>
      <Loot-Small-Stones>
        <Script>----<< CODE, DONT EDIT >>----
if lootSmallStone then
  setsettings("Settings\\Looting\\List\\small stone\\Id", "1781")
else
  setsettings("Settings\\Looting\\List\\small stone\\Id", "0")
end</Script>
        <SpamRate>800 to 1000</SpamRate>
        <Enabled>yes</Enabled>
      </Loot-Small-Stones>
      <Auto-Haste>
        <Script>----<< CODE, DONT EDIT >>----
if ((not hasted) and (not pzone)) then
  cast("utani hur")
end</Script>
        <SpamRate>800 to 1000</SpamRate>
        <Enabled>no</Enabled>
      </Auto-Haste>
      <Drop-Vials>
        <Script>--[[
Action Name: Soft Boots Changer
Author: Y4rR0 from IMBAscripts
Version: 1.0
]]--
----<< CODE, DONT EDIT >>----
local flaskCount = (itemcount(285)+itemcount(284)+itemcount(283))
local vials = {283, 284, 285}
if ((flaskCount >= flasksToDrop) and dropFlask) then
  for i=1, 3 do
    dropitems(vials[i])
  end
end</Script>
        <SpamRate>800 to 1000</SpamRate>
        <Enabled>yes</Enabled>
      </Drop-Vials>
      <Player-On-Resp-Alarm>
        <Script>----< Player on Resp Alarm >----
----<< CODE, DONT EDIT >>----
if playerOnRespAlarm then
  setsettings("Settings\\Alerts\\Enabled", "yes")
  setsettings("Settings\\Alerts\\Player\\OnScreen\\PlaySound", "yes")
  setsettings("Settings\\Alerts\\Player\\OnScreen\\FlashClient", "yes")
else
  setsettings("Settings\\Alerts\\Player\\OnScreen\\PlaySound", "no")
  setsettings("Settings\\Alerts\\Player\\OnScreen\\FlashClient", "no")
end</Script>
        <SpamRate>800 to 1000</SpamRate>
        <Enabled>no</Enabled>
      </Player-On-Resp-Alarm>
      <Player-Attack-alarm>
        <Script>----< Player Attack Alarm >----
----<< CODE, DONT EDIT >>----
if playerAttackAlarm then
  setsettings("Settings\\Alerts\\Enabled", "yes")
  setsettings("Settings\\Alerts\\Player\\Attacking\\PlaySound", "yes")
  setsettings("Settings\\Alerts\\Player\\Attacking\\FlashClient", "yes")
else
  setsettings("Settings\\Alerts\\Player\\Attacking\\PlaySound", "no")
  setsettings("Settings\\Alerts\\Player\\Attacking\\FlashClient", "no")
end</Script>
        <SpamRate>800 to 1000</SpamRate>
        <Enabled>yes</Enabled>
      </Player-Attack-alarm>
      <Loot-changer>
        <Script>----< Loot Destination Changer >----
----<< CODE, DONT EDIT >>----
local itemList1 = {"carrot on a stick", "banana staff", "wand of decay", "feather headdress", "ape fur", "honeycomb", "small amethyst", "seeds", "colourful feather", "kongras shoulderpad", "terrorbird beak", "banana sash", "carniphila seeds", "spider fangs", "small stone", "striped fur"}
local itemList2 = {"health potion", "mana potion"}
for i=1, 16 do
  setsettings("Settings\\Looting\\List\\"..itemList1[i].."\\Destination", lootBp:lower())
end
for i=1, 2 do
  setsettings("Settings\\Looting\\List\\"..itemList2[i].."\\Destination", mainBp:lower())
end
setsettings("Settings\\Looting\\List\\gold coin\\Destination", goldBp:lower())</Script>
        <SpamRate>10000 to 20000</SpamRate>
        <Enabled>yes</Enabled>
      </Loot-changer>
      <Targeting-PK>
        <Script>----<< CODE, DONT EDIT >>----
local monsters = {"Kongra", "Merlkin", "Sibang", "Carniphila", "Terror Bird", "Tiger", "Bat", "Wasp"}
if (underattack("p")) then
  for i=1, 8 do
    setsettings("Settings\\Targeting\\Monsters\\"..monsters[i].."\\OnlyIfTrapped", "yes")
  end
else
  for i=1, 8 do
    setsettings("Settings\\Targeting\\Monsters\\"..monsters[i].."\\OnlyIfTrapped", "no")
  end
end</Script>
        <SpamRate>8000 to 10000</SpamRate>
        <Enabled>yes</Enabled>
      </Targeting-PK>
      <SS-on-low-HP>
        <Script>--[[
Action Name: Screenshoot on Low Hp
Author: Y4rR0 from IMBAscripts
Version: 1.0
]]--
----<< CODE, DONT EDIT >>----
if ((hppc <= 15) and connected) then
  screenshot(""..name.."'s hp lower than 15percentage at "..tosec(time()))
end</Script>
        <SpamRate>800 to 1000</SpamRate>
        <Enabled>yes</Enabled>
      </SS-on-low-HP>
      <Soft-Boots-Changer>
        <Script>--[[
Action Name: Soft Boots Changer
Author: Y4rR0 from IMBAscripts
Version: 1.0
]]--
local minReqVal = {61, 70}
local maxReqVal = {95, 98}
local softInUseId = 3549
local softId = 6529
local softWornId = 6530
local otherBootsId = itemid(otherBoots)
local otherBootsCount = itemcount(otherBootsId)
local minRandom = math.random(minReqVal[1], minReqVal[2])
local maxRandom = math.random(maxReqVal[1], maxReqVal[2])
----<< CODE, DONT EDIT >>----
if ((mppc <= minRandom) and (not pzone) and (boots ~= softInUseId) and (itemcount(softId) > 0)) then
  moveitems(softId, "all", "boots", 1)
  wait(1000, 1100)
elseif ((mppc >= maxRandom) or (pzone) or (boots == softWornId)) then
  if ((otherBootsCount > 0) and ((boots == softInUseId) or (boots == softWornId))) then
    moveitems(otherBootsId, "all", "boots", 1)
    wait(1000, 1100)
  elseif ((otherBootsCount == 0) and (boots == softInUseId)) then
    moveitems(softInUseId, "boots", mainBp, 1)
	wait(1000, 1100)
  elseif ((otherBootsCount == 0) and (boots == softWornId)) then
    moveitems(softWornId, "boots", mainBp, 1)
	wait(1000, 1100)
  end
end</Script>
        <SpamRate>800 to 1000</SpamRate>
        <Enabled>yes</Enabled>
      </Soft-Boots-Changer>
      <Potions-Changer>
        <Script>--[[
Action Name: Potions Changer
Author: Y4rR0 from IMBAscripts
Version: 1.0
]]--
----<< CODE, DONT EDIT >>----
if (hpName:lower() == "health potion") then
  setsettings("Settings\\Healer\\Rules\\HP Potion\\HealMethod", "Health Potion")
elseif (hpName:lower() == "strong health potion") then
  setsettings("Settings\\Healer\\Rules\\HP Potion\\HealMethod", "Strong Health Potion")
elseif (hpName:lower() == "great health potion") then
  setsettings("Settings\\Healer\\Rules\\HP Potion\\HealMethod", "Great Health Potion")
elseif (hpName:lower() == "ultimate health potion") then
  setsettings("Settings\\Healer\\Rules\\HP Potion\\HealMethod", "Ultimate Health Potion")
end
if (mpName:lower() == "mana potion") then
  setsettings("Settings\\Healer\\Rules\\MP Potion\\HealMethod", "Mana Potion")
elseif (mpName:lower() == "strong mana potion") then
  setsettings("Settings\\Healer\\Rules\\MP Potion\\HealMethod", "Strong Mana Potion")
elseif (mpName:lower() == "great mana potion") then
  setsettings("Settings\\Healer\\Rules\\MP Potion\\HealMethod", "Great Mana Potion")
end</Script>
        <SpamRate>8000 to 10000</SpamRate>
        <Enabled>yes</Enabled>
      </Potions-Changer>
      <HUD-borders>
        <Script>--[[ CODE, DONT EDIT ]]--
if (IMBAhudBorders) then
  setsettings("Settings\\Hud\\List\\IMBA HUD Borders\\Enabled", "yes")
else
  setsettings("Settings\\Hud\\List\\IMBA HUD Borders\\Enabled", "no")
end</Script>
        <SpamRate>8000 to 10000</SpamRate>
        <Enabled>yes</Enabled>
      </HUD-borders>
      <Safe-Exori>
        <Script>--[[
Action Name: Safe Exori
Author: Y4rR0
Version: 1.0
]]--

local exoriMonsters = {"Kongra"}
local monstersCount = 4
local exoriSpell = "exori"

--[[ CODE, DONT EDIT ]]--
if ((useExori) and (maround(1, unpack(exoriMonsters)) >= monstersCount) and (cancast(exoriSpell)) and (((lasttimeplayeronscreen > 3000) and (paround() == 0) and (paround(3,true) == 0)) or (isPvp == 2))) then
  cast(exoriSpell)
end</Script>
        <SpamRate>800 to 1000</SpamRate>
        <Enabled>yes</Enabled>
      </Safe-Exori>
      <Standtime-Error>
        <Script>--[[
Action Name: Standtime Error
Author: Y4rR0
Version: 1.0
]]--
--[[ CODE, DONT EDIT ]]--

if ((standtime > 30000) and (System.isCaveBotEnabled()) and ((System.HuntingTime() > 30000) and (not pzone))) then
  print("Standing on "..posx..", "..posy..", "..posz..". Waypoint ID: "..wpt.id..". Script version: "..scriptVersion..".")
  screenshot("Standing Error"..tosec(time()))
  setsettings("Settings\\Actions\\List\\Standtime Error\\Enabled", "no")
end</Script>
        <SpamRate>800 to 1000</SpamRate>
        <Enabled>yes</Enabled>
      </Standtime-Error>
    </List>
    <Setup>--[[
Script Name: IMBA Banuta Apes
Author: Y4rR0 from IMBAscripts
]]--
scriptVersion = 1.1 -- DONT CHANGE

----< Backpacks Settings >----
-- Main backpack on yourself
mainBp = "expedition Backpack"

-- Loot backpack on yourself
lootBp = "dragon Backpack"

-- Gold backpack on yourself
goldBp = "blue Backpack"

-- Main backpack in depot
mainDpBp = "Backpack"

-- Stackables backpack in depot main backpack
stackableBp = "yellow Backpack"

-- Nonstackables backpack in depot main backpack
nonStackableBp = "fur Backpack"

-- Potions backpack in depot ((if potionsFromDepot = true))
potionDpBp = "camouflage Backpack"

---< Potions Settings >----
-- Name of mana potion
mpName = "mana potion"

-- Name of health potion
hpName = "great health potion"

-- How many mana potions to buy
mpBuy = 100

-- How many health potions to buy
hpBuy = 30

-- Minimum mana potions to refill
mpMin = 50

-- Minimum health potions to refill
hpMin = 20

-- Minimum cap to refill
capMin = 100

-- Take potions from potionBp?
potionsFromDepot = true

-- Take health potions from potionBp?
hpPotionsFromDp = true

-- Take mana potions from potionBp?
mpPotionsFromDp = true


----< Spawn Settings >----
-- Use shortcut? ((10+ task points))
isShortcut = false

-- Hunt surface?
huntSurface = true

-- Hunt towers? (( only with huntSurface = true))
huntTowers = false

-- Hunt -1?
huntBasement1 = false

-- Hunt -2?
huntBasement2 = false

----< Script Settings >----
-- Pvp or Opt-Pvp ((Pvp = 1, Opt-Pvp = 2))
isPvp = 1

-- Use exori? ((Settings in Actions/List/Safe Exori))
useExori = true

-- Name of your boots
otherBoots = "boots of haste"

-- Auto mount?
autoMount = true

-- Auto haste on the way to spawn?
autoHaste = true

-- Loot Small Stones?
lootSmallStone = false

-- Drop Vials?
dropFlask = false

-- How many vials to drop
flasksToDrop = 5

-- Player on resp Alarm?
playerOnRespAlarm = false

-- Player attack Alarm?
playerAttackAlarm = true

-- IMBA HUD borders? ((bigger CPU usage))
IMBAhudBorders = false</Setup>
    <Enabled>yes</Enabled>
  </Actions>
  <CaveBot>
    <Waypoints>
      <whereIam>Action 32621 32750 7 setsettings("Settings\\CaveBot\\Pathfinding\\WalkingMethod", "Map Clicks");setsettings("Settings\\Actions\\List\\Standtime Error\\Enabled", "yes");if (posz == 7) then;  if pzone and (posy >= 32737) and (posy <= 32748) then;    if (posx >= 32620) and (posx <= 32625) then;      gotolabel('depo1');    elseif (posx >= 32629) and (posx <= 32634) then;      gotolabel('depo2');	end;  elseif not pzone and (posx >= 32568) and (posy >= 32733) and (posy <= 32777) then;    gotolabel("dp"..random(1,3));  elseif (posx >= 32697) and (posy <= 32727) then;	gotolabel("whereToGo");  else;    print("Go to north side of Port Hope");    logout();  end;elseif (posz == 8) then;  gotolabel("keepBasement1");elseif (posz == 9) then;  gotolabel("keepBasement2");end</whereIam>
      <depo1>Stand 32622 32742 7</depo1>
      <w002>Action 32632 32742 7 if (stamina <= 850) then;  while(battlesigned) do;    wait(60000, 61000);  end;  logout();  print("Logged out due to low stamina");  System.CaveBotEnabled(false);else;  gotolabel("Depositing");end</w002>
      <depo2>Stand 32632 32742 7</depo2>
      <w004>Action 32632 32742 7 if (stamina <= 850) then;  while(battlesigned) do;    wait(60000, 61000);  end;  logout();  print("Logged out due to low stamina");  System.CaveBotEnabled(false);else;  gotolabel("Depositing");end</w004>
      <Depositing>Action 32623 32742 7 ----< Depositer >----;;setsettings("Settings\\Actions\\List\\WTP changer\\Enabled", "no");setsettings("Settings\\Cavebot\\Pathfinding\\WalkThroughPlayers", "no");setsettings("Settings\\CaveBot\\Pathfinding\\WalkingMethod", 'Map Clicks');setsettings("Settings\\Actions\\List\\keep haste\\Enabled", 'no');setsettings("Settings\\Alerts\\Player\\OnScreen\\FlashClient", "no");setsettings("Settings\\Alerts\\Player\\OnScreen\\PlaySound", "no");setsettings("Settings\\Cavebot\\Settings\\OpenNextBp", "no");;----< Opening Backpacks >----;while  (windowcount(mainBp) ~= 1) or (windowcount(lootBp) ~= 1) or (windowcount(lootBp) ~= 1) or (windowcount() ~= 2) do;  closewindows();  wait(400, 600);  openitem(mainBp, 'back');  wait(400, 600);  resizewindow(mainBp, 0);  wait(400, 600);  openitem(lootBp, mainBp, true);  wait(400, 600);  resizewindow(lootBp, 0);  wait(400, 600);end;;----< Reaching Depot >----;reachgrounditem("depot");wait(500, 900);openitem("depot");wait(600, 1100);openitem(3502, "locker");wait(600, 1100);openitem(mainDpBp, 'Depot Chest');wait(600, 1100);;----< Depositing >----;local CONFIG = {;    LOOT_BACKPACK = lootBp,;    ;    STACKABLE_BACKPACK = stackableBp,;    STACKABLE_BACKPACK_AMOUNT = 4,;    ;    NOT_STACKABLE_BACKPACK = nonStackableBp,;    NOT_STACKABLE_BACKPACK_AMOUNT = 16,;    ;    DEPOSIT_ITEMS = {"carrot on a stick", "wand of decay", "banana staff", "feather headdress", "ape fur", "small amethyst", "honeycomb", "seeds", "colourful feather", "kongra's shoulderpad", "terrorbird beak", "banana sash", "carniphila seeds", "spider fangs", "small stone", "striped fur"},;};;local NOT_STACKABLE_LAST_ON_TO, ITEM_INDEX = 0, 1;;while (#CONFIG.DEPOSIT_ITEMS >= ITEM_INDEX) do;    if (type(CONFIG.DEPOSIT_ITEMS[ITEM_INDEX]) == "string") then;        local ITEM_ID = itemid(CONFIG.DEPOSIT_ITEMS[ITEM_INDEX]);        ;        if (ITEM_ID > 0) then;            CONFIG.DEPOSIT_ITEMS[ITEM_INDEX], ITEM_INDEX = ITEM_ID, ITEM_INDEX + 1;        else;            table.remove(CONFIG.DEPOSIT_ITEMS, ITEM_INDEX);        end;    elseif (type(CONFIG.DEPOSIT_ITEMS[ITEM_INDEX]) == "number") then;        if (CONFIG.DEPOSIT_ITEMS[ITEM_INDEX] > 0) then;            ITEM_INDEX = ITEM_INDEX + 1;        else;            table.remove(CONFIG.DEPOSIT_ITEMS, ITEM_INDEX);        end;    else;        table.remove(CONFIG.DEPOSIT_ITEMS, ITEM_INDEX);    end;end;;while (true) do;    for _, DEPOSIT_ITEM in ipairs(CONFIG.DEPOSIT_ITEMS) do;        if (itemcount(DEPOSIT_ITEM, CONFIG.LOOT_BACKPACK) > 0) then;            if (itemproperty(DEPOSIT_ITEM).isCumulative) then;                local STACKABLE_LAST_ON_TO = 0;                ;                while (CONFIG.STACKABLE_BACKPACK_AMOUNT > STACKABLE_LAST_ON_TO) do;                    local ITEM_COUNT_BEFORE = itemcount(DEPOSIT_ITEM, CONFIG.LOOT_BACKPACK);                    ;                    moveitemsonto(DEPOSIT_ITEM, "all", CONFIG.STACKABLE_BACKPACK, 100, STACKABLE_LAST_ON_TO) wait(500, 1000);                    ;                    local ITEM_COUNT_AFTER = itemcount(DEPOSIT_ITEM, CONFIG.LOOT_BACKPACK);                    ;                    if (ITEM_COUNT_BEFORE == ITEM_COUNT_AFTER and ITEM_COUNT_AFTER > 0) then;                        STACKABLE_LAST_ON_TO = STACKABLE_LAST_ON_TO + 1;                    elseif (ITEM_COUNT_AFTER == 0) then;                        break;                    end;                end;            else;                while (CONFIG.NOT_STACKABLE_BACKPACK_AMOUNT > NOT_STACKABLE_LAST_ON_TO) do;                    local ITEM_COUNT_BEFORE = itemcount(DEPOSIT_ITEM, CONFIG.LOOT_BACKPACK);                    ;                    moveitemsonto(DEPOSIT_ITEM, "all", CONFIG.NOT_STACKABLE_BACKPACK, 100, NOT_STACKABLE_LAST_ON_TO) wait(500, 1000);                    ;                    local ITEM_COUNT_AFTER = itemcount(DEPOSIT_ITEM, CONFIG.LOOT_BACKPACK);                    ;                    if (ITEM_COUNT_BEFORE == ITEM_COUNT_AFTER and ITEM_COUNT_AFTER > 0) then;                        NOT_STACKABLE_LAST_ON_TO = NOT_STACKABLE_LAST_ON_TO + 1;                    elseif (ITEM_COUNT_AFTER == 0) then;                        break;                    end;                end;            end;        end;    end;    ;    if (itemcount(CONFIG.LOOT_BACKPACK, CONFIG.LOOT_BACKPACK) > 0) then;        openitem(CONFIG.LOOT_BACKPACK, CONFIG.LOOT_BACKPACK, false) wait(2000, 3000);    else;        break;    end;    ;    wait(100);end;setsettings("Settings\\Cavebot\\Settings\\OpenNextBp", "yes");setsettings("Settings\\Actions\\List\\WTP changer\\Enabled", "yes")</Depositing>
      <Withdraw_Potions>Action 32623 32743 7 if potionsFromDepot then;  setsettings("Settings\\Cavebot\\Settings\\OpenNextBp", "no");  ;----< Opening Backpacks >----;  while  (windowcount(mainBp) ~= 1) or (windowcount() ~= 1) do;    closewindows();    wait(400, 600);    openitem(mainBp, 'back');    wait(400, 600);    resizewindow(mainBp, 0);  end;----< Reaching Depot >----;  openitem("depot");  wait(600, 1100);  openitem(3502, "locker");  wait(600, 1100);  openitem(potionDpBp, 'Depot Chest');  wait(600, 1100);;----< Withdrawing Potions >----;  if hpPotionsFromDp then;    Self.MoveItemsUpTo(hpName, hpBuy, mainBp, potionDpBp);  end;  if mpPotionsFromDp then;    Self.MoveItemsUpTo(mpName, mpBuy, mainBp, potionDpBp);  end;  setsettings("Settings\\Cavebot\\Settings\\OpenNextBp", "yes");end</Withdraw_Potions>
      <w005>Action 32632 32747 7 if (posx >= 32620) and (posx <= 32625) then;  gotolabel('aDepo1');elseif (posx >= 32629) and (posx <= 32634) then;  gotolabel('aDepo2');end;</w005>
      <aDepo1>Stand 32623 32746 7</aDepo1>
      <w012>Action 32623 32748 7 gotolabel("checkerTown1")</w012>
      <aDepo2>Stand 32631 32746 7</aDepo2>
      <checkerTown1>Action 32623 32745 7 ----< Checker >----;local flaskCount = (itemcount(285)+itemcount(284)+itemcount(283));if ((itemcount(mpName) < mpBuy) or (itemcount(hpName) < hpBuy) or (itemcount("worn soft boots") ~= 0) or (flaskCount ~=0)) then;  gotolabel("toBank");else;  gotolabel("autoHaste1");end</checkerTown1>
      <toBank>Stand 32629 32749 7</toBank>
      <inBank>Stand 32632 32739 6</inBank>
      <Banking>Action 32632 32739 6 if islocation() then;local flaskCount = (itemcount(285)+itemcount(284)+itemcount(283));local mpMoney = positive(mpBuy - itemcount(mpName)) * itemcost(mpName);local hpMoney = positive(hpBuy - itemcount(hpName)) * itemcost(hpName);local softMoney = (itemcount("worn soft boots") * 11000);local totalMoney = (mpMoney + hpMoney + softMoney) - (flaskCount*5);----< Opening Backpacks >----;while  (windowcount(mainBp) ~= 1) or (windowcount() ~= 1) do;  closewindows();  wait(400, 600);  openitem(mainBp, 'back');  wait(400, 600);  resizewindow(mainBp, 0);end;----< Talks >----;depositall();wait(100, 200);if (totalMoney > 0) then;  npcsay('withdraw '..totalMoney);  wait(100, 200);  npcsay('yes');  wait(100, 200);end;npcsay('balance');wait(100, 200);else;  gotolabel("toBank");end</Banking>
      <checkerTown2>Action 32632 32739 6 ----< Checker >----;local flaskCount = (itemcount(285)+itemcount(284)+itemcount(283));if ((itemcount(mpName) < mpBuy) or (itemcount(hpName) < hpBuy) or (flaskCount ~=0)) then;  gotolabel("upToMagic");else;  gotolabel("downToSurface");end</checkerTown2>
      <upToMagic>Ladder 32626 32742 6</upToMagic>
      <inMagic>Stand 32624 32741 5</inMagic>
      <magicShopping>Action 32624 32741 5 ----< Mana Shop >----;local flaskCount = (itemcount(285)+itemcount(284)+itemcount(283));----< Checking Pos >----;if not islocation() then;  gotolabel('upToMagic');end;----< Opening Backpacks >----;while  (windowcount(mainBp) ~= 1) or (windowcount() ~= 1) do;  closewindows();  wait(400, 600);  openitem(mainBp, 'back');  wait(400, 600);  resizewindow(mainBp, 0);end;----< Talks >----;say("hi");wait(1000, 1100);if flaskCount > 0 then;  npcsay('flasks');  wait(50, 100);  for i=1, math.floor(flaskCount/100)+1 do;    npcsay('yes');	wait(50, 100);  end;end;npcsay("trade");wait(1000, 1100);buyitemsupto(hpName, hpBuy);wait(50,100);buyitemsupto(mpName, mpBuy)</magicShopping>
      <w003>Stand 32626 32742 5</w003>
      <downToSurface>Stand 32625 32749 6</downToSurface>
      <checkerTown3>Action 32625 32750 7 ----< Checker >----;if (itemcount(mpName) < mpBuy) or (itemcount(hpName) < hpBuy) then;  gotolabel("toBank");elseif (itemcount("worn soft boots") ~= 0) then;  gotolabel("goFood");else;  gotolabel("autoHaste1");end;</checkerTown3>
      <goFood>Walk 32611 32761 7</goFood>
      <w006>Stand 32578 32760 7</w006>
      <foodOrSofts>Action 32578 32760 7 ----< Go to label >----;gotolabel("toPhBoat")</foodOrSofts>
      <inFood>Stand 32575 32754 7</inFood>
      <foodShopping>Action 32575 32754 7 --[[ ;TODO;food shopping for other scripts;]]--</foodShopping>
      <toPhBoat>Ladder 32568 32766 7</toPhBoat>
      <w008>Walk 32556 32772 6</w008>
      <w009>Walk 32545 32786 6</w009>
      <onPhBoat>Stand 32530 32784 6</onPhBoat>
      <goToVenore>Action 32529 32784 6 ----< Travel to Venore >----;local npcName = "Charles";reachcreature(npcName);----< Talks >----;say('hi');wait(1000, 1100);npcsay('venore');wait(50, 100);npcsay('yes')</goToVenore>
      <isloc1>Action 32954 32023 6 if not islocation() then;gotolabel("onPhBoat");end</isloc1>
      <w007>Walk 32953 32038 6</w007>
      <w010>Walk 32953 32052 6</w010>
      <w011>Walk 32949 32096 6</w011>
      <randomSoft>Action 32951 32106 6 ----< Go to random soft waypoint >----;gotolabel("soft"..random(1,4))</randomSoft>
      <soft1>Stand 32952 32108 6</soft1>
      <goTo>Action 32954 32108 6 gotolabel("softRefilling")</goTo>
      <soft2>Stand 32953 32108 6</soft2>
      <goTo>Action 32954 32108 6 gotolabel("softRefilling")</goTo>
      <soft3>Stand 32954 32108 6</soft3>
      <softRefilling>Action 32954 32108 6 ----< Soft refilling >----;local npcDist = getcreature("Aldo").dist;local wornSofts = itemcount("worn soft boots");if ((posx >= 32952) and (posx <= 32954)) then;----< Talks >----;  say('hi');  wait(1000, 1100);  if ((wornSofts ~= 0) and (gold() >= (wornSofts*10000))) then;    for i=1, wornSofts do;      npcsay('repair');      wait(50, 100);      npcsay('yes');      wait(50, 100);    end;  end;else;  gotolabel("soft2");end</softRefilling>
      <softCheck>Action 32952 32107 6 ----< Soft checker >----;local wornSofts = itemcount("worn soft boots");if ((wornSofts > 0) and (gold() >= (wornSofts*10000))) then;  gotolabel("randomSoft");end</softCheck>
      <toVenoBoat>Walk 32954 32090 6</toVenoBoat>
      <w014>Walk 32954 32067 6</w014>
      <w015>Walk 32954 32050 6</w015>
      <w016>Walk 32954 32035 6</w016>
      <onVenoBoat>Stand 32954 32023 6</onVenoBoat>
      <goToPh>Action 32954 32023 6 ----< Travel to Port Hope >----;local npcName = "Captain Fearless";reachcreature(npcName);----< Talks >----;say('hi');wait(1000, 1100);npcsay('port hope');wait(50, 100);npcsay('yes')</goToPh>
      <isloc2>Action 32530 32784 6 if not islocation() then;gotolabel("onVenoBoat");end</isloc2>
      <w013>Walk 32555 32784 6</w013>
      <w017>Walk 32558 32767 6</w017>
      <w018>Stand 32568 32766 6</w018>
      <w019>Walk 32586 32762 7</w019>
      <w020>Walk 32610 32761 7</w020>
      <w021>Stand 32629 32761 7</w021>
      <autoHaste1>Action 32787 32575 7 ----< Auto haste >----;if autoHaste then;  setsettings("Settings\\Actions\\List\\Auto Haste\\Enabled", "yes");else;  setsettings("Settings\\Actions\\List\\Auto Haste\\Enabled", "no");end</autoHaste1>
      <isShortcut>Action 32629 32761 7 ----< Choosing way >----;if isShortcut then;  gotolabel("goShortcut");else;  gotolabel("noShortcut");end</isShortcut>
      <goShortcut>Stand 32629 32771 7</goShortcut>
      <goToEastPh>Action 32629 32771 7 local npcName = "Old Adall";if islocation() then;  reachcreature(npcName);----< Talks >----;  say('hi');  wait(1000, 1100);  npcsay('east');  wait(50, 100);  npcsay('yes');else;  gotolabel("goShortcut");end</goToEastPh>
      <goToBanutaShortcut>Action 32679 32777 7 local npcName = "Lorek";if islocation() then;  reachcreature("npcName");----< Talks >----;  say('hi');  wait(1000, 1100);  npcsay('banuta');  wait(50, 100);  npcsay('yes');  gotolabel("doneShortcut");else;  gotolabel("goShortcut");end</goToBanutaShortcut>
      <noShortcut>Stand 32632 32753 7</noShortcut>
      <Opening_bps_czeking__sup>Action 32632 32752 7 ----< Opening Backpacks >----;while  (windowcount(mainBp) ~= 1) or (windowcount(lootBp) ~= 1) or (windowcount(goldBp) ~= 1) or (windowcount() ~= 3) do;  closewindows();  wait(400, 600);  openitem(mainBp, 'back');  wait(400, 600);  resizewindow(mainBp, 0);  wait(400, 600);  openitem(lootBp, mainBp, true);  wait(400, 600);  resizewindow(lootBp, 0);  wait(400, 600);  openitem(goldBp, mainBp, true);  wait(400, 600);  resizewindow(goldBp, 0);end</Opening_bps_czeking__sup>
      <w023>Walk 32664 32745 7</w023>
      <w024>Node 32695 32714 7</w024>
      <w025>Node 32705 32704 7</w025>
      <w026>Node 32717 32688 7</w026>
      <w027>Node 32722 32672 7</w027>
      <w028>Node 32730 32654 7</w028>
      <w029>Node 32741 32642 7</w029>
      <w030>Node 32750 32626 7</w030>
      <w031>Node 32774 32593 7</w031>
      <w032>Node 32785 32583 7</w032>
      <w001>Action 32623 32745 7 if (playerOnRespAlarm) then;  setsettings("Settings\\Actions\\List\\Player On Resp Alarm\\Enabled", "yes");else;  setsettings("Settings\\Actions\\List\\Player On Resp Alarm\\Enabled", "no");end</w001>
      <whereToGo>Action 32787 32581 7 setsettings("Settings\\Actions\\List\\Auto Haste\\Enabled", "no");setsettings("Settings\\CaveBot\\Settings\\OpenNextBp", "yes");----< Spawn chooser >----;if huntSurface then;  gotolabel("huntSurface");elseif huntBasement1 or huntBasement2 then;  setsettings("Settings\\Targeting\\Monsters\\Kongra\\OnlyIfTrapped", "yes");  setsettings("Settings\\Targeting\\Monsters\\Merlkin\\OnlyIfTrapped", "yes");  setsettings("Settings\\Targeting\\Monsters\\Sibang\\OnlyIfTrapped", "yes");  gotolabel("withoutSurface");end</whereToGo>
      <huntSurface>Stand 32787 32575 7</huntSurface>
      <w034>Action 32775 32574 7 if (huntTowers) then;  gotolabel("t1");else;  gotolabel("at1");end</w034>
      <t1>Stand 32775 32572 7</t1>
      <w036>Node 32773 32566 6</w036>
      <w037>Stand 32775 32569 6</w037>
      <w038>Stand 32775 32569 5</w038>
      <w039>Stand 32770 32572 6</w039>
      <w033>Action 32826 32631 7 if (posz ~= wpt.z) then;  gotolabel("t1");end</w033>
      <at1>Node 32772 32563 7</at1>
      <w040>Node 32773 32539 7</w040>
      <w041>Action 32773 32539 7 if (huntTowers) then;  gotolabel("t2");else;  gotolabel("at2");end;</w041>
      <t2>Stand 32773 32537 7</t2>
      <w043>Stand 32773 32533 6</w043>
      <w035>Action 32826 32631 7 if (posz ~= wpt.z) then;  gotolabel("t2");end</w035>
      <at2>Stand 32778 32528 7</at2>
      <w044>Action 32778 32528 7 if (huntTowers) then;  gotolabel("t3");else;  gotolabel("at3");end;</w044>
      <t3>Stand 32779 32526 7</t3>
      <w046>Stand 32781 32519 6</w046>
      <w047>Stand 32781 32519 5</w047>
      <w048>Stand 32782 32526 6</w048>
      <w042>Action 32826 32631 7 if (posz ~= wpt.z) then;  gotolabel("t3");end</w042>
      <at3>Node 32785 32519 7</at3>
      <w050>Node 32802 32524 7</w050>
      <w051>Action 32802 32524 7 if (huntTowers) then;  gotolabel("t4");else;  gotolabel("at4");end;</w051>
      <t4>Stand 32800 32528 7</t4>
      <w052>Stand 32804 32528 6</w052>
      <w045>Action 32826 32632 7 if (posz ~= wpt.z) then;  gotolabel("t4");end</w045>
      <at4>Node 32816 32517 7</at4>
      <w053>Node 32815 32511 7</w053>
      <w054>Action 32815 32511 7 if (huntTowers) then;  gotolabel("t5");else;  gotolabel("at5");end;</w054>
      <t5>Stand 32815 32509 7</t5>
      <w056>Stand 32816 32509 6</w056>
      <w049>Action 32826 32632 7 if (posz ~= wpt.z) then;  gotolabel("t5");end</w049>
      <at5>Stand 32836 32509 7</at5>
      <w057>Action 32836 32510 7 if (huntTowers) then;  gotolabel("t6");else;  gotolabel("at6");end;</w057>
      <t6>Stand 32835 32513 7</t6>
      <w059>Stand 32835 32513 6</w059>
      <w055>Action 32826 32632 7 if (posz ~= wpt.z) then;  gotolabel("t6");end</w055>
      <at6>Stand 32842 32528 7</at6>
      <w173>Stand 32840 32535 7</w173>
      <w060>Action 32845 32534 7 if (huntTowers) then;  gotolabel("t7");else;  gotolabel("at7");end;</w060>
      <t7>Stand 32840 32533 7</t7>
      <w062>Node 32841 32527 6</w062>
      <w063>Stand 32843 32531 6</w063>
      <w064>Stand 32843 32529 5</w064>
      <w065>Stand 32843 32529 4</w065>
      <w066>Stand 32843 32531 5</w066>
      <w067>Stand 32843 32533 6</w067>
      <w058>Action 32826 32632 7 if (posz ~= wpt.z) then;  gotolabel("t7");end</w058>
      <at7>Node 32860 32538 7</at7>
      <w068>Action 32860 32548 7 if (huntTowers) then;  gotolabel("t8");else;  gotolabel("at8");end;</w068>
      <t8>Stand 32858 32547 7</t8>
      <w070>Stand 32858 32547 6</w070>
      <w061>Action 32826 32632 7 if (posz ~= wpt.z) then;  gotolabel("t8");end</w061>
      <at8>Node 32839 32547 7</at8>
      <w071>Action 32837 32547 7 if (huntTowers) then;  gotolabel("t9");else;  gotolabel("at9");end;</w071>
      <t9>Stand 32839 32551 7</t9>
      <w073>Stand 32838 32549 6</w073>
      <w074>Stand 32836 32549 5</w074>
      <w075>Stand 32835 32551 6</w075>
      <w069>Action 32826 32632 7 if (posz ~= wpt.z) then;  gotolabel("t9");end</w069>
      <at9>Node 32823 32535 7</at9>
      <w076>Node 32811 32537 7</w076>
      <w077>Node 32812 32557 7</w077>
      <w078>Action 32812 32557 7 if (huntTowers) then;  gotolabel("t10");else;  gotolabel("at10");end;</w078>
      <t10>Stand 32811 32556 7</t10>
      <w080>Node 32813 32547 6</w080>
      <w081>Stand 32814 32553 6</w081>
      <w082>Node 32815 32550 5</w082>
      <w083>Stand 32814 32551 5</w083>
      <w084>Stand 32814 32551 4</w084>
      <w085>Stand 32815 32553 5</w085>
      <w086>Stand 32816 32556 6</w086>
      <w072>Action 32826 32632 7 if (posz ~= wpt.z) then;  gotolabel("t10");end</w072>
      <at10>Node 32823 32559 7</at10>
      <w087>Node 32847 32568 7</w087>
      <w088>Action 32847 32568 7 if (huntTowers) then;  gotolabel("t11");else;  gotolabel("at11");end;</w088>
      <t11>Stand 32846 32572 7</t11>
      <w090>Stand 32846 32569 6</w090>
      <w091>Stand 32849 32569 5</w091>
      <w092>Stand 32849 32572 6</w092>
      <w079>Action 32826 32632 7 if (posz ~= wpt.z) then;  gotolabel("t11");end</w079>
      <at11>Node 32849 32582 7</at11>
      <w093>Action 32848 32582 7 if (huntTowers) then;  gotolabel("t12");else;  gotolabel("at12");end;;</w093>
      <t12>Stand 32847 32586 7</t12>
      <w095>Stand 32847 32586 6</w095>
      <w089>Action 32826 32632 7 if (posz ~= wpt.z) then;  gotolabel("t12");end</w089>
      <at12>Stand 32837 32596 7</at12>
      <w097>Action 32837 32596 7 if (huntTowers) then;  gotolabel("t13");else;  gotolabel("at13");end;;</w097>
      <t13>Stand 32833 32595 7</t13>
      <w098>Stand 32831 32597 6</w098>
      <w099>Stand 32831 32597 5</w099>
      <w100>Stand 32833 32595 6</w100>
      <w094>Action 32826 32632 7 if (posz ~= wpt.z) then;  gotolabel("t13");end</w094>
      <at13>Node 32830 32584 7</at13>
      <w101>Action 32830 32584 7 if (huntTowers) then;  gotolabel("t14");else;  gotolabel("at14");end;;</w101>
      <t14>Stand 32829 32579 7</t14>
      <w103>Stand 32828 32577 6</w103>
      <w104>Stand 32828 32577 5</w104>
      <w105>Stand 32828 32579 6</w105>
      <w096>Action 32826 32632 7 if (posz ~= wpt.z) then;  gotolabel("t14");end</w096>
      <at14>Stand 32828 32580 7</at14>
      <surfaceOrBasement>Action 32828 32580 7 if (huntBasement1 or huntBasement2) then;  gotolabel("goBasement1");else;  gotolabel("keepSurface");end</surfaceOrBasement>
      <goBasement1>Stand 32827 32575 7</goBasement1>
      <w022>Action 32827 32576 8 if (posz ~= wpt.z) then;  gotolabel("goBasement1");else;  setsettings("Settings\\Targeting\\Monsters\\Kongra\\OnlyIfTrapped", "no");  setsettings("Settings\\Targeting\\Monsters\\Merlkin\\OnlyIfTrapped", "no");  setsettings("Settings\\Targeting\\Monsters\\Sibang\\OnlyIfTrapped", "no");end</w022>
      <isOnlyBasement2>Action 32828 32575 8 if (huntBasement2 and not huntBasement1) then;  gotolabel("goOnlyBasement2");elseif (huntBasement1) then;  gotolabel("contBasement1");end</isOnlyBasement2>
      <contBasement1>Node 32817 32575 8</contBasement1>
      <w109>Node 32789 32570 8</w109>
      <w110>Node 32772 32568 8</w110>
      <checkBasement11>Action 32772 32568 8 setsettings("Settings\\CaveBot\\Settings\\OpenNextBp", "yes");local mpHave = itemcount(mpName);local hpHave = itemcount(hpName);if ((mpHave <= mpMin) or (hpHave <= hpMin) or (cap <= capMin) or (itemcount("worn soft boots") ~= 0) or underattack("p") or (stamina <= 850)) then;  gotolabel("exit1");end</checkBasement11>
      <w111>Node 32769 32551 8</w111>
      <w112>Node 32756 32568 8</w112>
      <w113>Node 32778 32535 8</w113>
      <w114>Node 32788 32549 8</w114>
      <w115>Node 32779 32521 8</w115>
      <checkBasement12>Action 32780 32521 8 local mpHave = itemcount(mpName);local hpHave = itemcount(hpName);if ((hpHave <= hpMin) or (mpHave <= mpMin) or (cap <= capMin) or (itemcount("worn soft boots") ~= 0) or underattack("p") or (stamina <= 850)) then;  gotolabel("exit1");end</checkBasement12>
      <w116>Node 32759 32518 8</w116>
      <w117>Node 32792 32517 8</w117>
      <w118>Node 32787 32496 8</w118>
      <w119>Node 32805 32519 8</w119>
      <w120>Node 32820 32511 8</w120>
      <w121>Stand 32816 32546 8</w121>
      <Basement1or2>Action 32816 32546 8 if huntBasement2 then;  gotolabel("goBasement2");else;  gotolabel("keepBasement1");end</Basement1or2>
      <keepBasement1>Stand 32835 32545 8</keepBasement1>
      <w124>Node 32847 32533 8</w124>
      <w125>Stand 32842 32525 8</w125>
      <checkBasement13>Action 32842 32525 8 local hpHave = itemcount(hpName);local mpHave = itemcount(mpName);if ((hpHave <= hpMin) or (mpHave <= mpMin) or (cap <= capMin) or (itemcount("worn soft boots") ~= 0) or underattack("p") or (stamina <= 850)) then;  gotolabel("exit3");end</checkBasement13>
      <w126>Stand 32845 32510 8</w126>
      <w127>Node 32848 32538 8</w127>
      <w128>Stand 32848 32547 8</w128>
      <w129>Node 32845 32569 8</w129>
      <w130>Stand 32828 32574 8</w130>
      <basementOrSurface>Action 32828 32574 8 local hpHave = itemcount(hpName);local mpHave = itemcount(mpName);if ((hpHave <= hpMin) or (mpHave <= mpMin) or (cap <= capMin) or (itemcount("worn soft boots") ~= 0) or underattack("p") or huntSurface or (stamina <= 850)) then;  gotolabel("upToSurface");else;  gotolabel("contBasement1");end</basementOrSurface>
      <upToSurface>Stand 32827 32575 8</upToSurface>
      <w133>Action 32827 32574 7 gotolabel("keepSurface")</w133>
      <goOnlyBasement2>Node 32826 32565 8</goOnlyBasement2>
      <w107>Node 32817 32556 8</w107>
      <goBasement2>Stand 32808 32546 8</goBasement2>
      <w108>Stand 32802 32546 8</w108>
      <w134>Action 32769 32499 9 setsettings("Settings\\CaveBot\\Settings\\OpenNextBp", "yes");setsettings("CaveBot\\Settings\\NodeRange", 10)</w134>
      <keepBasement2>Stand 32768 32497 9</keepBasement2>
      <w136>Node 32778 32517 9</w136>
      <w137>Node 32781 32537 9</w137>
      <w138>Node 32752 32534 9</w138>
      <w139>Node 32776 32541 9</w139>
      <w131>Node 32791 32547 9</w131>
      <w132>Node 32775 32516 9</w132>
      <w140>Node 32785 32562 9</w140>
      <w141>Node 32774 32569 9</w141>
      <w142>Node 32751 32564 9</w142>
      <w143>Node 32751 32578 9</w143>
      <w144>Node 32785 32570 9</w144>
      <w167>Stand 32799 32550 9</w167>
      <w168>Action 32799 32550 9 local hpHave = itemcount(hpName);local mpHave = itemcount(mpName);if ((hpHave <= hpMin) or (mpHave <= mpMin) or (cap <= capMin) or (itemcount("worn soft boots") ~= 0) or underattack("p") or (stamina <= 850)) then;  gotolabel("upToBasement1");end</w168>
      <w145>Node 32803 32554 9</w145>
      <w146>Node 32809 32587 9</w146>
      <w147>Node 32802 32578 9</w147>
      <w148>Node 32817 32550 9</w148>
      <w150>Node 32827 32569 9</w150>
      <w149>Node 32850 32575 9</w149>
      <w151>Stand 32844 32567 9</w151>
      <w152>Node 32822 32555 9</w152>
      <w153>Node 32823 32532 9</w153>
      <w154>Stand 32842 32539 9</w154>
      <w155>Node 32838 32529 9</w155>
      <w156>Node 32821 32516 9</w156>
      <w157>Node 32837 32504 9</w157>
      <w158>Stand 32855 32508 9</w158>
      <w159>Node 32850 32497 9</w159>
      <w160>Node 32819 32508 9</w160>
      <w161>Node 32803 32504 9</w161>
      <w162>Node 32806 32492 9</w162>
      <w163>Node 32802 32519 9</w163>
      <w164>Node 32817 32543 9</w164>
      <w165>Stand 32803 32547 9</w165>
      <w166>Action 32803 32547 9 local hpHave = itemcount(hpName);local mpHave = itemcount(mpName);if ((hpHave <= hpMin) or (mpHave <= mpMin) or (cap <= capMin) or (itemcount("worn soft boots") ~= 0) or underattack("p") or huntBasement1 or huntSurface or (stamina <= 850)) then;  gotolabel("upToBasement1");else;  gotolabel("keepBasement2");end</w166>
      <upToBasement1>Stand 32802 32546 9</upToBasement1>
      <w122>Action 32803 32546 8 setsettings("CaveBot\\Settings\\NodeRange", 4);local hpHave = itemcount(hpName);local mpHave = itemcount(mpName);if ((hpHave <= hpMin) or (mpHave <= mpMin) or (cap <= capMin) or (itemcount("worn soft boots") ~= 0) or underattack("p") or (huntSurface and not huntBasement1) or (stamina <= 850)) then;  gotolabel("upToSurface");else;  gotolabel("keepBasement1");end</w122>
      <w123>Stand 32816 32555 8</w123>
      <w135>Node 32823 32565 8</w135>
      <w169>Stand 32827 32575 8</w169>
      <w170>Action 32827 32574 7 gotolabel("keepSurface");</w170>
      <keepSurface>Node 32820 32580 7</keepSurface>
      <w172>Action 32820 32580 7 if (huntTowers) then;  gotolabel("t15");else;  gotolabel("at15");end;;;</w172>
      <t15>Stand 32816 32581 7</t15>
      <w174>Node 32811 32583 6</w174>
      <w175>Stand 32812 32582 6</w175>
      <w176>Stand 32812 32585 5</w176>
      <w177>Stand 32816 32586 6</w177>
      <w102>Action 32826 32632 7 if (posz ~= wpt.z) then;  gotolabel("t15");end</w102>
      <at15>Stand 32805 32584 7</at15>
      <w178>Action 32799 32585 7 if (huntTowers) then;  gotolabel("t16");else;  gotolabel("at16");end;;;</w178>
      <w179>Stand 32793 32585 7</w179>
      <w180>Stand 32790 32581 6</w180>
      <w181>Stand 32790 32585 5</w181>
      <w182>Stand 32793 32585 6</w182>
      <w171>Action 32826 32632 7 if (posz ~= wpt.z) then;  gotolabel("t16");end</w171>
      <at16>Stand 32785 32582 7</at16>
      <lastCheck>Action 32785 32582 7 local hpHave = itemcount(hpName);local mpHave = itemcount(mpName);if ((hpHave <= hpMin) or (mpHave <= mpMin) or (cap <= capMin) or (itemcount("worn soft boots") ~= 0) or (stamina <= 850))then;  setsettings("Settings\\Actions\\List\\Player On Resp Alarm\\Enabled", "no");----< Auto haste >----;  if autoHaste then;    setsettings("Settings\\Actions\\List\\Auto Haste\\Enabled", "yes");  else;  setsettings("Settings\\Actions\\List\\Auto Haste\\Enabled", "no");    end;  gotolabel("goTown");elseif underattack("p") then;  setsettings("Settings\\Actions\\List\\Player On Resp Alarm\\Enabled", "no");----< Auto haste >----;  if autoHaste then;    setsettings("Settings\\Actions\\List\\Auto Haste\\Enabled", "yes");  else;    setsettings("Settings\\Actions\\List\\Auto Haste\\Enabled", "no");  end;  gotolabel("goPz");else;  gotolabel("huntSurface");end</lastCheck>
      <withoutSurface>Stand 32788 32583 7</withoutSurface>
      <w184>Node 32812 32582 7</w184>
      <w185>Action 32826 32580 7 gotolabel("goBasement1")</w185>
      <doneShortcut>Action 32825 32631 7 if not islocation(3) then;  gotolabel("goToBanutaShortcut");end</doneShortcut>
      <openbps>Action 32825 32631 7 ----< Opening Backpacks >----;while  (windowcount(mainBp) ~= 1) or (windowcount(lootBp) ~= 1) or (windowcount(goldBp) ~= 1) or (windowcount() ~= 3) do;  closewindows();  wait(400, 600);  openitem(mainBp, 'back');  wait(400, 600);  resizewindow(mainBp, 0);  wait(400, 600);  openitem(lootBp, mainBp, true);  wait(400, 600);  resizewindow(lootBp, 0);  wait(400, 600);  openitem(goldBp, mainBp, true);  wait(400, 600);  resizewindow(goldBp, 0);end</openbps>
      <w186>Stand 32829 32610 7</w186>
      <w187>Stand 32829 32593 7</w187>
      <w188>Action 32829 32588 7 gotolabel("surfaceOrBasement")</w188>
      <goTown>Stand 32765 32588 7</goTown>
      <w106>Walk 32756 32602 7</w106>
      <w189>Walk 32748 32620 7</w189>
      <w190>Walk 32731 32633 7</w190>
      <w191>Walk 32718 32648 7</w191>
      <w192>Walk 32710 32668 7</w192>
      <w193>Walk 32699 32691 7</w193>
      <w194>Walk 32686 32713 7</w194>
      <w195>Walk 32661 32720 7</w195>
      <w196>Stand 32651 32733 7</w196>
      <w197>Stand 32638 32739 7</w197>
      <again>Action 32631 32751 7 setsettings("Settings\\Actions\\List\\Auto Haste\\Enabled", "no");gotolabel("whereIam")</again>
      <exit1>Stand 32772 32565 8</exit1>
      <w000>Action 32772 32562 8 gotolabel("lastCheck")</w000>
      <exit2>Stand 32780 32519 8</exit2>
      <w183>Stand 32772 32544 7</w183>
      <w198>Action 32772 32544 7 gotolabel("lastCheck")</w198>
      <exit3>Stand 32841 32526 8</exit3>
      <w199>Stand 32836 32547 7</w199>
      <w200>Stand 32830 32566 7</w200>
      <w203>Stand 32783 32581 7</w203>
      <w201>Stand 32806 32576 7</w201>
      <w202>Stand 32784 32582 7</w202>
      <w204>Action 32784 32582 7 gotolabel("lastCheck")</w204>
      <goPz>Walk 32780 32593 7</goPz>
      <autoHaste3>Action 32809 32518 9 ----< Auto haste >----;if autoHaste then;  setsettings("Settings\\Actions\\List\\Auto Haste\\Enabled", "yes");else;  setsettings("Settings\\Actions\\List\\Auto Haste\\Enabled", "no");end</autoHaste3>
      <w206>Walk 32789 32611 7</w206>
      <w207>Walk 32795 32625 7</w207>
      <w208>Walk 32803 32633 7</w208>
      <w209>Walk 32818 32633 7</w209>
      <w210>Stand 32825 32632 7</w210>
      <w211>Action 32825 32632 7 setsettings("Settings\\Actions\\List\\Auto Haste\\Enabled", "no");if pzone then;  closetibia();  print("Logged out due to pk attack");end</w211>
    </Waypoints>
    <Pathfinding>
      <SpecialAreas>
        <NewArea0>
          <Coordinates>32851 32572 6</Coordinates>
          <Dimensions>1 7</Dimensions>
          <ConsideredBy>All</ConsideredBy>
        </NewArea0>
      </SpecialAreas>
      <WalkThroughPlayers>no</WalkThroughPlayers>
      <WalkingMethod>Map Clicks</WalkingMethod>
      <MapWalkDistance>20 to 50</MapWalkDistance>
      <WalkableIds>140;404;831;832;833;834;883;2118;2119;2120;2121;2122;2123;2124;2125;2126;2127;2131;2132;2133;2134;2135;2314;2315;2316;2319;2346;2347;2348;2349;2350;2351;2352;2353;2354;2355;2356;2357;2358;2359;2360;2361;2362;2363;2364;2365;2366;2367;2368;2369;2370;2371;2372;2373;2374;2375;2376;2377;2378;2379;2380;2381;2382;2383;2384;2385;2418;2419;2420;2421;2422;2423;2424;2425;2426;2431;2432;2433;2434;2441;2442;2443;2444;2469;2471;2472;2473;2478;2480;2481;2482;2483;2484;2485;2486;2519;2523;2775;2776;2777;2778;2779;2780;2781;2782;2783;2784;2785;2786;2787;2788;2789;2790;2791;2792;2793;2794;2795;2796;2797;2798;2799;2800;2801;2802;2803;2804;2805;2806;2807;2808;2809;2810;2811;2812;2981;2983;2982;2984;2985;2987;2988;3503;3504;3514;3807;5086;5087;5088;6114;6115;6355;6356;6357;6358;6359;6360;6361;6362;6371;6372;7864;8455;8763;9061;9062;10207;10209;10216;10286;10287;10288;11009;11800;11801;11802;11803;11804;11805;11806;11807;11808;11809;11810</WalkableIds>
    </Pathfinding>
    <Settings>
      <Rope>3003</Rope>
      <Shovel>3457</Shovel>
      <Pick>3456</Pick>
      <Machete>3308</Machete>
      <NodeRange>4</NodeRange>
      <Priority>Target</Priority>
      <OpenNextBp>no</OpenNextBp>
      <AutoMount>yes</AutoMount>
      <Anti-idle>no</Anti-idle>
      <EatFood>yes</EatFood>
      <FoodToEat>3725;3587;3600;3595;3589;3598;8014;3583;3606;3578;3592;3582;3577;3593;3586;3585;3581;3723</FoodToEat>
      <PauseOnDeath>yes</PauseOnDeath>
    </Settings>
    <Enabled>no</Enabled>
  </CaveBot>
  <Looting>
    <List>
      <carrot-on-a-stick>
        <Id>12311</Id>
        <Destination>dragon backpack</Destination>
        <AlarmOn>No Alarm</AlarmOn>
      </carrot-on-a-stick>
      <banana-staff>
        <Id>3348</Id>
        <Destination>dragon backpack</Destination>
        <AlarmOn>No Alarm</AlarmOn>
      </banana-staff>
      <wand-of-decay>
        <Id>3072</Id>
        <Destination>dragon backpack</Destination>
        <AlarmOn>No Alarm</AlarmOn>
      </wand-of-decay>
      <feather-headdress>
        <Id>3406</Id>
        <Destination>dragon backpack</Destination>
        <AlarmOn>No Alarm</AlarmOn>
      </feather-headdress>
      <ape-fur>
        <Id>5883</Id>
        <Destination>dragon backpack</Destination>
        <AlarmOn>No Alarm</AlarmOn>
      </ape-fur>
      <honeycomb>
        <Id>5902</Id>
        <Destination>dragon backpack</Destination>
        <AlarmOn>No Alarm</AlarmOn>
      </honeycomb>
      <small-amethyst>
        <Id>3033</Id>
        <Destination>dragon backpack</Destination>
        <AlarmOn>No Alarm</AlarmOn>
      </small-amethyst>
      <seeds>
        <Id>647</Id>
        <Destination>dragon backpack</Destination>
        <AlarmOn>No Alarm</AlarmOn>
      </seeds>
      <colourful-feather>
        <Id>11514</Id>
        <Destination>dragon backpack</Destination>
        <AlarmOn>No Alarm</AlarmOn>
      </colourful-feather>
      <kongras-shoulderpad>
        <Id>11471</Id>
        <Destination>dragon backpack</Destination>
        <AlarmOn>No Alarm</AlarmOn>
      </kongras-shoulderpad>
      <terrorbird-beak>
        <Id>10273</Id>
        <Destination>dragon backpack</Destination>
        <AlarmOn>No Alarm</AlarmOn>
      </terrorbird-beak>
      <banana-sash>
        <Id>11511</Id>
        <Destination>dragon backpack</Destination>
        <AlarmOn>No Alarm</AlarmOn>
      </banana-sash>
      <mana-potion>
        <Id>268</Id>
        <Destination>expedition backpack</Destination>
        <AlarmOn>No Alarm</AlarmOn>
      </mana-potion>
      <carniphila-seeds>
        <Id>10300</Id>
        <Destination>dragon backpack</Destination>
        <AlarmOn>No Alarm</AlarmOn>
      </carniphila-seeds>
      <health-potion>
        <Id>266</Id>
        <Destination>expedition backpack</Destination>
        <AlarmOn>No Alarm</AlarmOn>
      </health-potion>
      <spider-fangs>
        <Id>8031</Id>
        <Destination>dragon backpack</Destination>
        <AlarmOn>No Alarm</AlarmOn>
      </spider-fangs>
      <gold-coin>
        <Id>3031</Id>
        <Destination>blue backpack</Destination>
        <AlarmOn>No Alarm</AlarmOn>
      </gold-coin>
      <small-stone>
        <Id>0</Id>
        <Destination>dragon backpack</Destination>
        <AlarmOn>No Alarm</AlarmOn>
      </small-stone>
      <striped-fur>
        <Id>10293</Id>
        <Destination>dragon backpack</Destination>
        <AlarmOn>No Alarm</AlarmOn>
      </striped-fur>
    </List>
    <Condition>Corpses with listed items</Condition>
    <Style>After melee kill</Style>
    <OpenBodyTime>40</OpenBodyTime>
    <Range>20</Range>
    <EatFood>yes</EatFood>
    <Enabled>no</Enabled>
  </Looting>
  <Targeting>
    <Monsters>
      <Kongra>
        <Categories>-</Categories>
        <Danger>3</Danger>
        <ListSettings>
          <Setting0>
            <Count>Any</Count>
            <HpRange>0 to 100 %</HpRange>
            <Stance>Reach</Stance>
            <Avoid>None</Avoid>
            <Distance>0</Distance>
            <Attack>Attack</Attack>
            <ListSpell />
            <SpellRate>500 to 1000</SpellRate>
            <AttackMode>No Change</AttackMode>
          </Setting0>
        </ListSettings>
        <Looting>yes</Looting>
        <MustAttackMe>no</MustAttackMe>
        <OnlyIfTrapped>no</OnlyIfTrapped>
      </Kongra>
      <Merlkin>
        <Categories>-</Categories>
        <Danger>10</Danger>
        <ListSettings>
          <Setting0>
            <Count>Any</Count>
            <HpRange>0 to 100 %</HpRange>
            <Stance>No movement</Stance>
            <Avoid>None</Avoid>
            <Distance>0</Distance>
            <Attack>Attack</Attack>
            <ListSpell />
            <SpellRate>500 to 1000</SpellRate>
            <AttackMode>Chase/Offensive</AttackMode>
          </Setting0>
        </ListSettings>
        <Looting>yes</Looting>
        <MustAttackMe>no</MustAttackMe>
        <OnlyIfTrapped>no</OnlyIfTrapped>
      </Merlkin>
      <Sibang>
        <Categories>-</Categories>
        <Danger>3</Danger>
        <ListSettings>
          <Setting0>
            <Count>Any</Count>
            <HpRange>0 to 100 %</HpRange>
            <Stance>No movement</Stance>
            <Avoid>None</Avoid>
            <Distance>0</Distance>
            <Attack>Attack</Attack>
            <ListSpell />
            <SpellRate>500 to 1000</SpellRate>
            <AttackMode>Chase/Offensive</AttackMode>
          </Setting0>
        </ListSettings>
        <Looting>yes</Looting>
        <MustAttackMe>no</MustAttackMe>
        <OnlyIfTrapped>no</OnlyIfTrapped>
      </Sibang>
      <Carniphila>
        <Categories>-</Categories>
        <Danger>10</Danger>
        <ListSettings>
          <Setting0>
            <Count>Any</Count>
            <HpRange>0 to 100 %</HpRange>
            <Stance>Reach</Stance>
            <Avoid>None</Avoid>
            <Distance>0</Distance>
            <Attack>Attack</Attack>
            <ListSpell />
            <SpellRate>500 to 1000</SpellRate>
            <AttackMode>Stand/Offensive</AttackMode>
          </Setting0>
        </ListSettings>
        <Looting>yes</Looting>
        <MustAttackMe>no</MustAttackMe>
        <OnlyIfTrapped>no</OnlyIfTrapped>
      </Carniphila>
      <Terror-Bird>
        <Categories>-</Categories>
        <Danger>2</Danger>
        <ListSettings>
          <Setting0>
            <Count>Any</Count>
            <HpRange>0 to 100 %</HpRange>
            <Stance>Reach</Stance>
            <Avoid>None</Avoid>
            <Distance>0</Distance>
            <Attack>Attack</Attack>
            <ListSpell />
            <SpellRate>500 to 1000</SpellRate>
            <AttackMode>Stand/Offensive</AttackMode>
          </Setting0>
        </ListSettings>
        <Looting>yes</Looting>
        <MustAttackMe>no</MustAttackMe>
        <OnlyIfTrapped>no</OnlyIfTrapped>
      </Terror-Bird>
      <Tiger>
        <Categories>-</Categories>
        <Danger>0</Danger>
        <ListSettings>
          <Setting0>
            <Count>Any</Count>
            <HpRange>0 to 100 %</HpRange>
            <Stance>Reach</Stance>
            <Avoid>None</Avoid>
            <Distance>0</Distance>
            <Attack>Attack</Attack>
            <ListSpell />
            <SpellRate>500 to 1000</SpellRate>
            <AttackMode>Stand/Offensive</AttackMode>
          </Setting0>
        </ListSettings>
        <Looting>yes</Looting>
        <MustAttackMe>no</MustAttackMe>
        <OnlyIfTrapped>no</OnlyIfTrapped>
      </Tiger>
      <Bat>
        <Categories>-</Categories>
        <Danger>0</Danger>
        <ListSettings>
          <Setting0>
            <Count>Any</Count>
            <HpRange>0 to 100 %</HpRange>
            <Stance>Reach</Stance>
            <Avoid>None</Avoid>
            <Distance>0</Distance>
            <Attack>Attack</Attack>
            <ListSpell />
            <SpellRate>500 to 1000</SpellRate>
            <AttackMode>Stand/Offensive</AttackMode>
          </Setting0>
        </ListSettings>
        <Looting>yes</Looting>
        <MustAttackMe>no</MustAttackMe>
        <OnlyIfTrapped>no</OnlyIfTrapped>
      </Bat>
      <Wasp>
        <Categories>-</Categories>
        <Danger>0</Danger>
        <ListSettings>
          <Setting0>
            <Count>Any</Count>
            <HpRange>0 to 100 %</HpRange>
            <Stance>Reach</Stance>
            <Avoid>None</Avoid>
            <Distance>0</Distance>
            <Attack>Attack</Attack>
            <ListSpell />
            <SpellRate>500 to 1000</SpellRate>
            <AttackMode>Stand/Offensive</AttackMode>
          </Setting0>
        </ListSettings>
        <Looting>yes</Looting>
        <MustAttackMe>no</MustAttackMe>
        <OnlyIfTrapped>no</OnlyIfTrapped>
      </Wasp>
      <Tarantula>
        <Categories>-</Categories>
        <Danger>0</Danger>
        <ListSettings>
          <Setting0>
            <Count>Any</Count>
            <HpRange>0 to 100 %</HpRange>
            <Stance>Reach</Stance>
            <Avoid>None</Avoid>
            <Distance>0</Distance>
            <Attack>Attack</Attack>
            <ListSpell>
            </ListSpell>
            <SpellRate>500 to 1000</SpellRate>
            <AttackMode>No Change</AttackMode>
          </Setting0>
        </ListSettings>
        <Looting>no</Looting>
        <MustAttackMe>no</MustAttackMe>
        <OnlyIfTrapped>yes</OnlyIfTrapped>
      </Tarantula>
      <Centipede>
        <Categories>-</Categories>
        <Danger>0</Danger>
        <ListSettings>
          <Setting0>
            <Count>Any</Count>
            <HpRange>0 to 100 %</HpRange>
            <Stance>Reach</Stance>
            <Avoid>None</Avoid>
            <Distance>0</Distance>
            <Attack>Attack</Attack>
            <ListSpell>
            </ListSpell>
            <SpellRate>500 to 1000</SpellRate>
            <AttackMode>No Change</AttackMode>
          </Setting0>
        </ListSettings>
        <Looting>no</Looting>
        <MustAttackMe>no</MustAttackMe>
        <OnlyIfTrapped>yes</OnlyIfTrapped>
      </Centipede>
    </Monsters>
    <Settings>
      <ListOrder>0</ListOrder>
      <Health>6</Health>
      <Proximity>8</Proximity>
      <Danger>9</Danger>
      <PlayerOnScreenSecurity>If cavebotting</PlayerOnScreenSecurity>
      <CooldownControl>yes</CooldownControl>
      <CheckItem>no</CheckItem>
      <MustBeReachable>yes</MustBeReachable>
      <MustBeShootable>no</MustBeShootable>
    </Settings>
    <Enabled>no</Enabled>
  </Targeting>
  <Hud>
    <List>
      <GeneralInfo>
        <Script>local a = getsettings("Settings/Cavebot/Pathfinding/WalkThroughPlayers")
local b = getsettings("Settings\Healer\Healer\Enabled")
local c = itemid("concentrated demonic blood")
setsize(100,100)
setfontcolor("white")

addtext(name,10,30)
addtext("Pos X : ", 10,45)
addtext(posx, 54,45)
addtext("Pos Y : ", 10,60)
addtext(posy, 54,60)
addtext("Pos Z : ", 10,75)
addtext(posz, 54,75)
addtext("Cursor ID", 10, 90)
addtext('- '..cursorinfo().id, 65, 90)
addtext("WalkThroughPlayers", 10, 105)
if System.isWalkThroughPlayersEnabled() then
  setfontcolor(rgbcolor(124,252,0))
  addtext("Enabled", 130, 105)
else
  setfontcolor("red")
  addtext("Disabled", 130, 105)
end
addtext('Boots ID : '..c, 10, 120)</Script>
        <RefreshRate>1000</RefreshRate>
        <Enabled>no</Enabled>
      </GeneralInfo>
      <MMH>
        <Script>-- [[ INIT START ]] --
	--
	--                       88                                                                
	--                       ""                                                ,d              
	--                                                                         88              
	--            ,adPPYba,  88  8b,dPPYba,  88,dPYba,,adPYba,   ,adPPYYba,  MM88MMM  ,adPPYba,
	--            I8[    ""  88  88P'   "Y8  88P'   "88"    "8a  ""     `Y8    88    a8P_____88
	--             `"Y8ba,   88  88          88      88      88  ,adPPPPP88    88    8PP"""""""
	--            aa    ]8I  88  88          88      88      88  88,    ,88    88,   "8b,   ,aa
	--   Author:  `"YbbdP"'  88  88          88      88      88  `"8bbdP"Y8    "Y888  `"Ybbd8"'
	--   
	--   Monitor My Hunting!
	--
	--   Version: 1.0
	--   Created: 7.09.2012
	--   Last update: 18.09.2012
	--
	
	MONITOR_MY_HUNTING = MONITOR_MY_HUNTING or {
		SCRIPT_NAME = "Monitor My Hunting",
		SCRIPT_VERSION = "1.0",
		
		CLEARED_STATS = false,
		INITIALIZED = false,
	}

	MONITOR_MY_HUNTING.SHOW_ALL_ITEMS = false
	MONITOR_MY_HUNTING.ITEMS_LIST = {
		{NAME = "carrot on a stick", VALUE = 50000},
		{NAME = "banana staff", VALUE = 2000},
		{NAME = "wand of decay", VALUE = 2000},
		{NAME = "feather headdress", VALUE = 850},
		{NAME = "ape fur", VALUE = 120},
		{NAME = "honeycomb", VALUE = 40},
		{NAME = "small amethyst", VALUE = 200},
		{NAME = "seeds", VALUE = 150},
		{NAME = "colourful feather", VALUE = 110},
		{NAME = "kongra's shoulderpad", VALUE = 100},
		{NAME = "terrorbird beak", VALUE = 95},
		{NAME = "banana sash", VALUE = 55},
		{NAME = "carniphila seeds", VALUE = 50},
		{NAME = "spider fangs", VALUE = 10},
		{NAME = "striped fur", VALUE = 50},
		{NAME = "gold coin", VALUE = 1},
		{NAME = "mana potion", VALUE = 0},
		{NAME = "health potion", VALUE = 0},
		
		
		
		
	}
 
	MONITOR_MY_HUNTING.SHOW_ALL_SUPPLIES = false
	MONITOR_MY_HUNTING.SUPPLIES_LIST = {
		{NAME = "mana potion", PRICE = 50},
		{NAME = "health potion", PRICE = 45},
		{NAME = "strong health potion", PRICE = 100},
		{NAME = "great health potion", PRICE = 190},
	}
	
	-- [[ DO NOT CHANGE ANYTHING BELOW THIS LINE. ]] --
	
	MONITOR_MY_HUNTING.TEMP_ITEMS_LIST = MONITOR_MY_HUNTING.TEMP_ITEMS_LIST or {}
	MONITOR_MY_HUNTING.TEMP_SUPPLIES_LIST = MONITOR_MY_HUNTING.TEMP_SUPPLIES_LIST or {}
	MONITOR_MY_HUNTING.COLORS = MONITOR_MY_HUNTING.COLORS or {
		BLACK = rgbcolor(1, 1, 1),
		ORANGE = rgbcolor(255, 165, 0),
		BLUE = rgbcolor(30, 144, 255),
		CORNSILK = rgbcolor(205, 200, 177),
		WHITE = rgbcolor(255, 255, 255),
		GREEN = rgbcolor(107, 142, 35),
		RED = rgbcolor(178, 34, 34),
	}
	
	local function CreateMessageObject(MESSAGE_DATA)
		if (type(MESSAGE_DATA) ~= "userdata") then
			return setmetatable({__data = {TYPE = -1, TIME_STAMP = -1, SENDER_NAME = "", SENDER_LEVEL = -1, CONTENT = ""}}, MessageMetaTable)
		else
			return setmetatable({__data = {TYPE = MESSAGE_DATA.type, TIME_STAMP = Misc.ConvertToSeconds(string.sub(MESSAGE_DATA.text, 1, 5)), SENDER_NAME = MESSAGE_DATA.sender, SENDER_LEVEL = tonumber((tostring(string.match(MESSAGE_DATA.text, ".+ (%b[]): .+")):gsub("[^%d]", ""))) or 0, CONTENT = string.sub(MESSAGE_DATA.text, 7)}}, MessageMetaTable)
		end
	end
	
	local function addtextshadow(DISPLAY_TEXT, X_OFFSET, Y_OFFSET, FONT_COLOR)
		setfontcolor(MONITOR_MY_HUNTING.COLORS.BLACK)
		addtext(DISPLAY_TEXT, X_OFFSET + 1, Y_OFFSET + 1)
		setfontcolor(FONT_COLOR)
		addtext(DISPLAY_TEXT, X_OFFSET, Y_OFFSET)
	end
-- [[ INIT END ]] --

if (not Stats.Update()) then
	local SERVER_LOG_MESSAGES = getnewmessages("Server Log")
	local SERVER_LOG_MESSAGES_COUNT = SERVER_LOG_MESSAGES.count - 1
	
	for INDEX = 0, SERVER_LOG_MESSAGES_COUNT do
		local MESSAGE_OBJECT = CreateMessageObject(SERVER_LOG_MESSAGES[SERVER_LOG_MESSAGES_COUNT - INDEX])
		
		if (MESSAGE_OBJECT:Type() == 19 and MESSAGE_OBJECT:Content():lower():match("^loot of")) then
			local LOOT_INFO = Message.ParseLootMessage(MESSAGE_OBJECT, true)

			if (#LOOT_INFO.NAME > 0) then
				Stats.__data.MONSTERS_KILLED[LOOT_INFO.NAME] = (Stats.__data.MONSTERS_KILLED[LOOT_INFO.NAME] or 0) + 1
				
				for _, LOOT_ITEM in ipairs(LOOT_INFO.ITEMS) do
					if (Stats.__data.ITEMS_LOOTED[LOOT_ITEM.ID]) then
						Stats.__data.ITEMS_LOOTED[LOOT_ITEM.ID].QUANTITY = Stats.__data.ITEMS_LOOTED[LOOT_ITEM.ID].QUANTITY + LOOT_ITEM.QUANTITY
					else
						Stats.__data.ITEMS_LOOTED[LOOT_ITEM.ID] = {ID = LOOT_ITEM.ID, NAME = LOOT_ITEM.NAME, QUANTITY = LOOT_ITEM.QUANTITY, VALUE = Item.GetValue(LOOT_ITEM.ID)}
					end
				end
			end
		end
	end
end

local RESET_ITEMS_AND_SUPPLIES = #MONITOR_MY_HUNTING.ITEMS_LIST ~= #MONITOR_MY_HUNTING.TEMP_ITEMS_LIST or #MONITOR_MY_HUNTING.SUPPLIES_LIST ~= #MONITOR_MY_HUNTING.TEMP_SUPPLIES_LIST

if (not RESET_ITEMS_AND_SUPPLIES) then
	for INDEX, LOOT_ITEM in ipairs(MONITOR_MY_HUNTING.ITEMS_LIST) do
		if (LOOT_ITEM.NAME ~= MONITOR_MY_HUNTING.TEMP_ITEMS_LIST[INDEX].NAME or LOOT_ITEM.VALUE ~= MONITOR_MY_HUNTING.TEMP_ITEMS_LIST[INDEX].VALUE) then
			RESET_ITEMS_AND_SUPPLIES = true
			break
		end
	end
end

if (not RESET_ITEMS_AND_SUPPLIES) then
	for INDEX, SUPPLY_ITEM in ipairs(MONITOR_MY_HUNTING.SUPPLIES_LIST) do
		if (SUPPLY_ITEM.NAME ~= MONITOR_MY_HUNTING.TEMP_SUPPLIES_LIST[INDEX].NAME or SUPPLY_ITEM.PRICE ~= MONITOR_MY_HUNTING.TEMP_SUPPLIES_LIST[INDEX].PRICE) then
			RESET_ITEMS_AND_SUPPLIES = true
			break
		end
	end
end

if (not MONITOR_MY_HUNTING.INITIALIZED or RESET_ITEMS_AND_SUPPLIES) then
	if (not MONITOR_MY_HUNTING.CLEARED_STATS) then
		Stats.Clear(CLEAR_STATS_ALL)
		Stats.Update()
		
		MONITOR_MY_HUNTING.CLEARED_STATS = true
	end
	
	MONITOR_MY_HUNTING.TEMP_ITEMS_LIST, MONITOR_MY_HUNTING.TEMP_SUPPLIES_LIST = {}, {}
		
	for _, LOOT_ITEM in ipairs(MONITOR_MY_HUNTING.ITEMS_LIST) do
		local LOOT_ITEM_ID = Item.GetID(type(LOOT_ITEM.NAME) ~= "table" and LOOT_ITEM.NAME or unpack(LOOT_ITEM.NAME))
		
		Stats.AddItemsLooted(LOOT_ITEM_ID, 0, LOOT_ITEM.VALUE)
		table.insert(MONITOR_MY_HUNTING.TEMP_ITEMS_LIST, {ID = LOOT_ITEM_ID, NAME = LOOT_ITEM.NAME, VALUE = LOOT_ITEM.VALUE})
	end
	 
	for _, SUPPLY_ITEM in ipairs(MONITOR_MY_HUNTING.SUPPLIES_LIST) do
		local SUPPLY_ITEM_ID = Item.GetID(type(SUPPLY_ITEM.NAME) ~= "table" and SUPPLY_ITEM.NAME or unpack(SUPPLY_ITEM.NAME))
		
		Stats.AddSuppliesUsed(SUPPLY_ITEM_ID, 0, SUPPLY_ITEM.PRICE)
		table.insert(MONITOR_MY_HUNTING.TEMP_SUPPLIES_LIST, {ID = SUPPLY_ITEM_ID, NAME = SUPPLY_ITEM.NAME, PRICE = SUPPLY_ITEM.PRICE})
	end
	
	MONITOR_MY_HUNTING.INITIALIZED = true
end

setposition(Client.ClientWindow().right - 434, Client.WorldWindow().top + 5)

local Y_POSITION, INDEX, ITEMS_LOOTED_WORTH, SUPPLIES_USED_WORTH = 30, 0, 0, 0

addtextshadow(sprintf("%s v%s", MONITOR_MY_HUNTING.SCRIPT_NAME:upper(), MONITOR_MY_HUNTING.SCRIPT_VERSION), 10, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.ORANGE)

Y_POSITION = Y_POSITION + 20

addtextshadow("ITEMS LOOTED", 10, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.BLUE)

Y_POSITION = Y_POSITION + 20

for _, LOOT_ITEM in pairs(Stats.GetItemsLooted()) do
    if ((MONITOR_MY_HUNTING.SHOW_ALL_ITEMS or table.find(MONITOR_MY_HUNTING.TEMP_ITEMS_LIST, LOOT_ITEM.ID, "ID")) and LOOT_ITEM.QUANTITY > 0) then
	addtextshadow(((#LOOT_ITEM.NAME > 17 and sprintf("%s...", string.match(string.sub(LOOT_ITEM.NAME, 1, 17), "(.-)%s?$"))) or LOOT_ITEM.NAME):ucwords(), 10, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.CORNSILK)
	addtextshadow(sprintf("%s (%sK)", Misc.FormatNumber(LOOT_ITEM.QUANTITY), tostring(math.floor(LOOT_ITEM.VALUE * LOOT_ITEM.QUANTITY / 100) / 10)), 140, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.WHITE)

	INDEX, ITEMS_LOOTED_WORTH = INDEX + 1, ITEMS_LOOTED_WORTH + (LOOT_ITEM.VALUE * LOOT_ITEM.QUANTITY)
    end
end

addtextshadow("Total:", 10, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.WHITE)
addtextshadow(sprintf("%s GPs", Misc.FormatNumber(ITEMS_LOOTED_WORTH)), 10 + 35, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.ORANGE)

Y_POSITION = Y_POSITION + 20

addtextshadow("SUPPLIES USED", 10, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.BLUE)

Y_POSITION = Y_POSITION + 20

for _, SUPPLY_ITEM in pairs(Stats.GetSuppliesUsed()) do
    if ((MONITOR_MY_HUNTING.SHOW_ALL_SUPPLIES or table.find(MONITOR_MY_HUNTING.TEMP_SUPPLIES_LIST, SUPPLY_ITEM.ID, "ID")) and SUPPLY_ITEM.QUANTITY > 0) then
        addtextshadow(((#SUPPLY_ITEM.NAME > 17 and sprintf("%s...", string.match(string.sub(SUPPLY_ITEM.NAME, 1, 17), "(.-)%s?$"))) or SUPPLY_ITEM.NAME):ucwords(), 10, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.CORNSILK)
        addtextshadow(sprintf("%s (%sK)", Misc.FormatNumber(SUPPLY_ITEM.QUANTITY), tostring(math.floor(SUPPLY_ITEM.PRICE * SUPPLY_ITEM.QUANTITY / 100) / 10)), 140, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.WHITE)

        INDEX, SUPPLIES_USED_WORTH = INDEX + 1, SUPPLIES_USED_WORTH + (SUPPLY_ITEM.PRICE * SUPPLY_ITEM.QUANTITY)
    end
end

addtextshadow("Total:", 10, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.WHITE)
addtextshadow(sprintf("%s GPs", Misc.FormatNumber(SUPPLIES_USED_WORTH)), 10 + 35, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.ORANGE)

Y_POSITION = Y_POSITION + 20

addtextshadow(sprintf("%s: %s GPs (%s K/H)", ((ITEMS_LOOTED_WORTH >= SUPPLIES_USED_WORTH and ("PROFIT")) or ("WASTE")), Misc.FormatNumber(ITEMS_LOOTED_WORTH - SUPPLIES_USED_WORTH), tostring(math.floor(((ITEMS_LOOTED_WORTH - SUPPLIES_USED_WORTH) * 3600) / (System.HuntingTime() / 1000) / 100) / 10)), 10, Y_POSITION + (INDEX * 16), ITEMS_LOOTED_WORTH >= SUPPLIES_USED_WORTH and MONITOR_MY_HUNTING.COLORS.GREEN or MONITOR_MY_HUNTING.COLORS.RED)</Script>
        <RefreshRate>1000</RefreshRate>
        <Enabled>yes</Enabled>
      </MMH>
      <IMBA-HUD>
        <Script>--[[
HUD Name: IMBAhud
Author: Y4rR0 from IMBAscripts
Version: 1.0
]]--
-- X Position of text
local textX = 11
-- Y Position of text
----<< CODE, DONT EDIT >>----
local textY = worldwin.top+50
local blue1 = rgbcolor(42, 187, 255)
local blue2 = rgbcolor(2, 79, 135)
local blue3 = rgbcolor(1, 14, 33)
local blue4 = rgbcolor(128, 201, 255)
local red1 = rgbcolor(255, 65, 48)
local orange1 = rgbcolor(255, 139, 50)
local green1 = rgbcolor(111, 255, 22)
local gap = 15
setfontcolor(blue4)
addtext(Self.Name(), textX, textY)
addtext("Level: "..Self.Level(), textX, textY+1*gap)
addtext("Exp Gained: "..Misc.FormatNumber(System.ExperienceGained()), textX, textY+2*gap)
addtext("Exp to Level: "..Misc.FormatNumber(exptolevel()), textX, textY+3*gap)
addtext("Exp per Hour: "..Misc.FormatNumber(System.ExperiencePerHour()), textX, textY+4*gap)
addtext("Time to Level: "..timetolevel, textX, textY+5*gap)
addtext("Time hunting: "..Misc.FormatTime(System.HuntingTime()/1000), textX, textY+6*gap)
addtext("Stamina: ",11, textY+7*gap)
addtext("Bank Balance: "..Misc.FormatNumber(balance).." gps", textX, textY+8*gap)
addtext("Healer: ", textX, textY+9*gap)
addtext("Cavebot: ", textX, textY+10*gap)
addtext("Looting: ", textX, textY+11*gap)
addtext("Targeting: ", textX, textY+12*gap)
addtext("Cursor ID: "..cursorinfo().id, textX, textY+13*gap)
----< Healer  ON/OFF >----
if (System.isHealerEnabled()) then
  setfontcolor(green1)
  addtext("ON", textX+42, textY+9*gap)
else
  setfontcolor(red1)
  addtext("OFF", textX+42, textY+9*gap)
end
----< CaveBot  ON/OFF >----
if (System.isCaveBotEnabled()) then
  setfontcolor(green1)
  addtext("ON", textX+52, textY+10*gap)
else
  setfontcolor(red1)
  addtext("OFF", textX+52, textY+10*gap)
end
----< Looting  ON/OFF >----
if (System.isLootingEnabled()) then
  setfontcolor(green1)
  addtext("ON", textX+47, textY+11*gap)
else
  setfontcolor(red1)
  addtext("OFF", textX+47, textY+11*gap)
end
----< Targeting  ON/OFF >----
if (System.isTargetingEnabled()) then
  setfontcolor(green1)
  addtext("ON", textX+60, textY+12*gap)
else
  setfontcolor(red1)
  addtext("OFF", textX+60, textY+12*gap)
end
----< Stamina colours >----
if stamina >= 2400 then
 setfontcolor(green1)
elseif stamina < 2400 and (stamina > 840) then
  setfontcolor(orange1)
elseif stamina <= 840 then
  setfontcolor(red1)
end
addtext(Misc.FormatTime(Self.Stamina()), textX+53, textY+7*gap)</Script>
        <RefreshRate>1000</RefreshRate>
        <Enabled>yes</Enabled>
      </IMBA-HUD>
      <IMBA-HUD-Borders>
        <Script>--[[
HUD Name: Borders to IMBAhud
Author: Y4rR0 from IMBAscripts
Version: 1.0
]]--
-- X Position of border
local horX = 3
-- Y Position of border
local horY = worldwin.top + 34
----<< CODE, DONT EDIT >>----
local blue1 = rgbcolor(42, 187, 255)
local blue2 = rgbcolor(2, 79, 135)
local blue3 = rgbcolor(1, 14, 33)
local blue4 = rgbcolor(128, 201, 255)

local function addhorizontalborder(Xpos, Ypos, fontColor)
  setfontcolor(fontColor)
  addtext("_________________________", Xpos, Ypos)
  addtext("_________________________", Xpos, Ypos+1)
  addtext("_________________________", Xpos, Ypos+2)
end
local function addverticalborder(Xpos, Ypos, fontColor)
  setfontcolor(fontColor)
  addtext("|", Xpos, Ypos)
  addtext("|", Xpos+1, Ypos)
  addtext("|", Xpos+2, Ypos)
end
local verLX = horX-2
local verRX = horX+169
local verY = horY+(13)
local verBlockLength = 11
local verBorderLength = 18
--kolejna pozioma horY+(verBlockLength+1)*11+3
--[[=======================================]]--
addhorizontalborder(horX, horY, blue3)
for i=0, verBorderLength do
  addverticalborder(verLX, verY+(i*verBlockLength), blue3)
end
for i=0, verBorderLength do
  addverticalborder(verRX, verY+(i*verBlockLength), blue3)
end
addhorizontalborder(3, horY+(verBorderLength+1)*verBlockLength+3
, blue3)</Script>
        <RefreshRate>10000</RefreshRate>
        <Enabled>no</Enabled>
      </IMBA-HUD-Borders>
    </List>
    <Show>If focused</Show>
    <Enabled>yes</Enabled>
  </Hud>
  <Input>
    <Keyboard>
      <Mode>Simulate</Mode>
      <StuckCtrlShift>If cavebot on, release after 1 sec</StuckCtrlShift>
      <TypingStyle>Keyboard keys</TypingStyle>
      <PressWaitTime>45 to 65</PressWaitTime>
    </Keyboard>
    <Mouse>
      <Mode>Simulate</Mode>
      <Scroll>Use mouse wheel</Scroll>
      <MoveSpeed>Instantaneous</MoveSpeed>
      <ClickWaitTime>30 to 50</ClickWaitTime>
    </Mouse>
    <OpenMenuPolicy>Confirm if cavebotting</OpenMenuPolicy>
    <Enabled>yes</Enabled>
  </Input>
</Settings>
 
Status
Not open for further replies.
Top