DanStock's ULTIMATE HARVESTING AUTO PILOT Script v2.0 (DEXXER, MAGE AND/OR SUMMONER w/ AUTO RECALL & MORE!) by danstock._98439
Related: Lumberjacking mininglumberjackinglumberjackminerauto pilotautoauto smeltingsmeltingingotsorganizerauto recallrecallharvestingharvestultimatebestall in onechoppingwoodauto
Description: A big enough update it was worth a full re-release of the script I have been working on since starting Outlands about 10 months ago. This has evolved into a harvesting script that truly does it all!
Just move around and supervise. Mining OR lumberjacking - ALL IN ONE!
Read beginning of script for important setup information and be aware that there are LOTs of optional variables to toggle and play around with. It has become a LARGE script. Have fun! I am :)
Warning: This is potentially a huge script, skipping formatting.
You can still click [Copy Script] but you may want use [Download Script] as a file instead.
//////// DanStock's ULTIMATE HARVESTING AUTO PILOT UO OUTLANDS RAZOR SCRIPT - version 2.0.02 - Last Updated October 18, 2024
///////
////// MINING AND/OR LUMBER AUTOBOT (DEXXER, MAGE AND/OR SUMMONER w/ AUTO RECALL & MORE!)
/////
//// Compiled by DanStock. - Email any bug reports/tips to dan@danstockman.com
/// Inspired by & learned from many scripts found on https://outlands.uorazorscripts.com/
//
##########################################################################################################
#### PLEASE READ SCRIPT DETAILS BELOW FOR IMPORTANT COOLDOWN, FILTER AND VARIABLE INSTRUCTIONS! ####
#### Most features are turned OFF by default and can be enabled below. ####
##########################################################################################################
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
///// ANYTIME YOU NEED TO RESET OR CHANGE PERMANENT VARIABLES (ie. ESCAPE RUNEBOOKS, TREASURE CHEST, INGOT AND BOARD BAGS) /////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// //
// //
// Run script once with this SCRIPTRESET set to 1 to clear ALL variables. //
// Then reset SCRIPTRESET back to 0 and restart script to prompt for new targets! //
// //
@setvar! SCRIPTRESET 0
// //
// This will reset the script to it's "first run" status if something goes wrong in the initial setup! //
// //
// - DanStock. //
// (aka. Pax Augustus of Terran) //
// //
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
#########################################################################################################################
#### YOU CAN ENABLE AND/OR DISABLE EACH HALF OF THE SCRIPT (if using both harvest skills on the same character): ####
#########################################################################################################################
@setvar! EnableMining 1
@setvar! EnableLumberjacking 1
# Required (or suggested *) inventory items:
# Hatchet or Pickaxe
# A blessed escape runebook (charged w/ recall scrolls if no Magery skill)
# Trapped pouches
# Healing, Cure and Refresh potions (Resist, Strength and Agility pots too *)
# Skinning knife *
# Bandages *
# Adventurer's rope *
# Tool Kit *
# Potion Satchel *
# Wizard's Satchel (w/ regs) *
# Magic Mushrooms *
# Harvest Aspect weapon of choice (Swords, Macing or Spellbook) *
# Harvest Aspect armour of choice *
# IMPORTANT: Please add the following COOLDOWNS (case sensitive) in UO client under Options -> Cooldowns:
// Healing Potion
// Cure Potion
// Refresh Potion
// Travel
// Target Timer
// Move Timer
// Weight Timer
// Inventory Timer
// Satchel Timer
// Forge Radar
// Ore Radar
// Gold Radar
// Ore Vacuum
// Gold Vacuum
// HarmCD
// WeakenCD
// CurseCD
// MindblastCD
// MagicArrowCD
// FireballCD
// LightningCD
// ExplosionCD
// EnergyBoltCD
// FlamestrikeCD
// MeteorSwarmCD
// ChainLightningCD
// Spirit Speak
// Mushroom
// Magic Shield
// Spell Fail (w/ overhead text trigger of "The spell fizzles" and a 2 second default cooldown)
# Use the following optional organizer agents (or swap for your own):
# Organizer Agent-01 hotbag (for boards, logs, seeds, etc.)
# Organizer Agent-02 hotbag (for main LUMBER inventory items)
# Organizer Agent-03 hotbag (for ingots, seeds, etc.)
# Organizer Agent-04 hotbag (for main MINING inventory items)
# Organizer Agent-05 hotbag * (optional - for unloading at HOME or INN ROOM - Turn on EnableOrganizerAgents below)
// See Shared Variables section below to turn on or off the use of Resource Stockpile, Storage Shelf, Bank Safe and Magic Item Recycler in lieu of Organizer Agent-05!
// Use the following optional agents to unload non-stockpile or shelf items (Turn on EnableTreasureChest below):
# Organizer Agent-06 hotbag * (optional - I use for unloading Tmaps, SS, orbs, RM, etc.)
# Organizer Agent-07 hotbag * (optional - I use for unloading Runes)
# Organizer Agent-08 hotbag * (optional - I use for unloading Black Goods, etc.)
# Organizer Agent-09 hotbag * (optional - I use for unloading seeds, soil, grain, etc.)
# Optional system messages to TEXT FILTER in Razor for cleaner UI:
// "What do you want to use this item on?"
// "You do not see any harvestable resources nearby"
// "You cannot produce any wood from that"
// "You hack at the tree"
// "You chop some"
// "You dig some"
// "You loosen some"
// "You smelt the ore"
// "You must wait"
// "You shape the logs into boards"
// "You do not see any"
// "You do not have any"
// "Mining skillgain"
// "Lumberjacking skillgain"
// "No one matching that"
// "You will now hunt"
// "Organize Agent"
// "queue"
// "Macro"
// "Achievement"
// "You have worn out your tool"
// "You carve materials from the corpse"
// "Target item to grab"
// "There are no nearby corpses"
// "item to satchel"
// "You begin hunting"
// "Container not set"
// "Invalid or inaccessible item"
#################################################
// Shared Variables: //
#################################################
@setvar! EnableRedAlertRecall 1
@setvar! EnableParalyzePouch 1
@setvar! EnableAutoAttackGreyMOB 1
@setvar! EnableHealPotion 1
@setvar! HealPotHP 45
@setvar! EnableCurePotion 1
@setvar! CurePotHP 85
@setvar! EnableRefreshPotion 1
@setvar! RefreshPotSPdiff 11
// Enable for auto buff check and consumption during combat:
@setvar! EnableMagicResistPotion 0
@setvar! EnableStrengthPotion 0
@setvar! EnableAgilityPotion 0
@setvar! AllInventoryMessage 1
// or
@setvar! YellowInventoryMessage 1
@setvar! OrangeInventoryMessage 1
@setvar! RedInventoryMessage 1
@setvar! WhiteInventoryMessage 0
@setvar! BlueInventoryMessage 0
@setvar! BlackInventoryMessage 0
@setvar! RopeInventoryMessage 0
@setvar! EnableAutoCarving 0
@setvar! EnableGoldVacuum 0
@setvar! EnableCheeseTimer 0
@setvar! EnableToolCountdown 0
@setvar! EnableRecycleTool 0
@setvar! EnableSatchels 0
@setvar! EnableWeaponWarning 0
// Choose only one (or none) for AUTO RECALL destination:
@setvar! OwnerInnRecall 0
@setvar! CoOwnerInnRecall 0
@setvar! HouseRecall 0
# Use ">info" to ID your own house door:
@setvar! MyDoor 0x50F70A17
@setvar! HideAtHomeorInn 1
# Script can use Razor Organizer Agents to organize or you can use Resource Stockpile, Storage Shelf, etc. instead:
@setvar! EnableOrganizerAgents 0
// or
@setvar! EnableBankSafe 0
@setvar! EnableStockpile 0
@setvar! EnableStorageShelf 0
@setvar! EnableMagicRecycler 0
@setvar! EnableRepairBench 0
@setvar! EnableTreasureChest 0
#################################################
// Mining Specific Variables: //
#################################################
if skill "Mining" >= 50 and EnableMining = 1
@setvar! EnableOreVacuum 1
@setvar! EnablePlayerForgeRadar 1
@setvar! EnableAutoSmeltPlayerForge 1
@setvar! EnableAutoSmeltNaturalForge 1
@setvar! EnableIngotAutoRecall 1
@setvar! IngotRecallAmount 3000
@setvar! EnableIngotBag 1
@setvar! OpenIngotBag 0
@setvar! EnableWeightWarningMessage 1
@setvar! GreenWarningWeight 400
@setvar! YellowWarningWeight 430
@setvar! RedWeightLimit 445
endif
#################################################
// Lumber Specific Variables: //
#################################################
if skill "Lumberjacking" >= 50 and EnableLumberjacking = 1
@setvar! LogsToBoards 1
@setvar! EnableBoardAutoRecall 1
@setvar! BoardRecallAmount 3000
@setvar! EnableBoardBag 1
@setvar! OpenBoardBag 0
@setvar! EnableWeightWarningMessage 1
@setvar! GreenWarningWeight 400
@setvar! YellowWarningWeight 430
@setvar! RedWeightLimit 449
endif
#################################################
// Magery Specific Variables: //
#################################################
if skill "Magery" >= 50
# Defensive:
@setvar! EnableCastRecall 1
@setvar! EnableMagicReflection 1
@setvar! EnableReactiveArmour 1
@setvar! EnableProtection 0
@setvar! EnableCastHeal 1
@setvar! EnableCastCure 1
@setvar! CastHealHPlowdiff 5
@setvar! CastHealHPmeddiff 25
@setvar! CastHealHPhighdiff 50
@setvar! EnableReagentSplitter 0
# Offensive:
@setvar! EnableCastHarm 0
@setvar! HarmCooldown 30000
@setvar! EnableCastWeaken 0
@setvar! WeakenCooldown 30000
@setvar! EnableCastCurse 0
@setvar! CurseCooldown 30000
@setvar! EnableCastMindBlast 0
@setvar! MindblastCooldown 30000
@setvar! EnableCastMagicArrow 0
@setvar! MagicArrowCooldown 30000
@setvar! EnableCastFireball 0
@setvar! FireballCooldown 30000
@setvar! EnableCastLightning 1
@setvar! LightningCooldown 30000
@setvar! EnableCastExplosion 1
@setvar! ExplosionCooldown 10000
@setvar! EnableCastEnergyBolt 1
@setvar! EnergyBoltCooldown 10000
@setvar! EnableCastFlamestrike 1
@setvar! FlamestrikeCooldown 10000
@setvar! EnableCastMeteorSwarm 0
@setvar! MeteorSwarmCooldown 30000
@setvar! EnableCastChainLightning 0
@setvar! ChainLightningCooldown 30000
@setvar! EnableMagicMushroom 0
@setvar! MushroomCooldown 60000
@setvar! EnableMushroomMaker 0
@setvar! MakeMushroomAmount 5
# Summons:
@setvar! EnableSummons 0
@setvar! NameSummonedPets 0
@setvar! TotalSummonCount 0
// Number of summoned pets (0, 1 or 2 each - up to 4 total):
@setvar! SummonFireElemental 0
@setvar! SummonEarthElemental 0
@setvar! SummonAirElemental 0
@setvar! SummonWaterElemental 0
@setvar! SummonDemon 0
// Add pet names to list below (must be unique):
if NameSummonedPets = 1
if not listexists petNameList
createlist petNameList
endif
if list petNameList = 0
pushlist petNameList "ExamplePetName1"
pushlist petNameList "ExamplePetName2"
pushlist petNameList "ExamplePetName3"
pushlist petNameList "ExamplePetName4"
pushlist petNameList "ExamplePetName5"
pushlist petNameList "ExamplePetName6"
pushlist petNameList "ExamplePetName7"
pushlist petNameList "ExamplePetName8"
pushlist petNameList "ExamplePetName9"
pushlist petNameList "ExamplePetName10"
endif
else
clearlist petNameList
endif
#### EDIT BELOW THIS LINE AT YOUR OWN RISK! #### EDIT BELOW THIS LINE AT YOUR OWN RISK! #### EDIT BELOW THIS LINE AT YOUR OWN RISK! #### EDIT BELOW THIS LINE AT YOUR OWN RISK! ####
/////////////////////////////////////////////
///////// SCRIPT STARTS HERE: /////////
/////////////////////////////////////////////
if SCRIPTRESET = 1
unsetvar lumber_runebook
unsetvar boardbag
unsetvar mining_runebook
unsetvar ingotbag
unsetvar TreasureChest
unsetvar DanStock.
unsetvar FIRSTRUN
unsetvar EASTEREGG
clearlist petNameList
overhead "All permanent script variables reset!" 84
wait 500
overhead "Reset SCRIPTRESET back to 0 and restart script to prompt for new targets..." 0
sysmsg "Make sure to set SCRIPTRESET back to 0" 253
wait 500
sysmsg "Stopping script..." 0
stop
endif
if not varexist DanStock.
sysmsg "DanStock's Ultimate Harvest Auto Pilot Script" 77
wait 500
sysmsg "Version: 2.0.03"
wait 500
sysmsg "Last updated: Oct 18, 2024" 69
wait 1000
overhead "Thank you for trying my script! It appears this may be your first time running it..." 0
wait 4000
overhead "IMPT: Please make sure to setup all the required COOLDOWNS and VARIABLES!" 153
wait 4500
overhead "There is a LOT this script can do with the right configuration!" 0
wait 3500
overhead "Email any questions/bugs to: dan@danstockman.com" 0
wait 2500
overhead "[ HAPPY HARVESTING! ]" 2086
wait 500
setvar DanStock. 1
sysmsg "Beginning initial Harvest Auto Pilot script setup...... " 0
wait 1500
sysmsg "Best done from inside your Home or Inn Room!" 253
wait 500
hotkey 'Cancel Current Target'
endif
if skill "Mining" >= 50 and EnableRedAlertRecall = 1
if not varexist mining_runebook
wait 1000
overhead "First off, please select your Escape Runebook..." 88
wait 1500
overhead "[ SELECT RUNEBOOK... ]" 253
setvar mining_runebook
wft 500
while targetexists
wait 100
endwhile
overhead "[ RUNEBOOOK SELECTED! ]" 93
wait 1500
overhead "Script will use recall SCROLL (to first rune) or CAST recall (to 'default' rune)" 0
wait 2500
endif
endif
if skill "Mining" >= 50 and EnableIngotBag = 1
if not varexist ingotbag
wait 1000
overhead "Next, we'll set your ingot storage bag..." 88
wait 1500
overhead "[ SELECT INGOT BAG... ]" 253
setvar ingotbag
wft 500
while targetexists
wait 100
endwhile
overhead "[ INGOT BAG SELECTED! ]" 93
wait 1500
overhead "Also set this bag as 'Organizer Agent-03' in Razor!" 0
wait 3000
endif
endif
if skill "Lumberjacking" >= 50 and EnableRedAlertRecall = 1
if not varexist lumber_runebook
wait 1000
overhead "First off, please select your Escape Runebook..." 88
wait 1500
overhead "[ SELECT RUNEBOOK... ]" 253
setvar lumber_runebook
wft 500
while targetexists
wait 100
endwhile
overhead "[ RUNEBOOOK SELECTED! ]" 93
wait 1500
overhead "Script will use recall SCROLL (to first rune) or CAST recall (to 'default' rune)" 0
wait 2500
endif
endif
if skill "Lumberjacking" >= 50 and EnableBoardBag = 1
if not varexist boardbag
wait 1000
overhead "Next, we'll set your lumber storage bag..." 88
wait 1500
overhead "[ SELECT BOARD BAG... ]" 253
setvar boardbag
wft 500
while targetexists
wait 100
endwhile
overhead "[ BOARD BAG SELECTED! ]" 93
wait 1500
overhead "Also set this bag as 'Organizer Agent-01'in Razor!" 0
wait 3000
endif
endif
if EnableTreasureChest = 1
if not varexist TreasureChest
wait 1000
sysmsg "Disable 'EnableTreasureChest' in script variables to turn off this feature!" 0
overhead "Now, select a container (in your Home or Inn) to store your loot..." 88
wait 1500
overhead "[ SELECT LOOT CHEST... ]" 253
setvar TreasureChest
wft 500
while targetexists
wait 100
endwhile
overhead "[ LOOT CHEST SELECTED! ]" 93
wait 1500
overhead "Setup additional Organizer Agents (06-09) within this container!" 0
wait 3500
endif
endif
if not varexist FIRSTRUN
sysmsg "Verifying initial setup is complete.......... " 0
wait 2500
overhead "Ok, looks like you're good to go!" 0
wait 3000
overhead "Good luck out there and thanks again for trying my script!" 0
setvar FIRSTRUN 1
wait 3000
sysmsg "DANSTOCK'S ULTIMATE HARVEST AUTO PILIOT SCRIPT SETUP COMPLETE!" 84
wait 1500
overhead "[ STARTING HARVEST SCRIPT.... ]" 2086
wait 1500
endif
if hidden
overhead "[ HIDDEN... ]" 6
wait 1000
sysmsg "You cannot use this script while hidden! Please unhide and try again..." 0
stop
endif
if EnableRedAlertRecall = 1
if insysmsg "Now tracking" or insysmsg "Distance to destination"
@setvar! TimeToGo 1
endif
endif
if insysmsg "Captcha successful"
overhead "I guess you got the magic numbers correct??" 2086
wait 1500
if EnableSummons = 1 and followers > 1
overhead "Umm... who are you speaking to, Master?" 44 myMainTankPet
menu myMainTankPet 3
clearsysmsg
wait 1500
overhead "Nevermind that... let's get to work..." 2086
else
overhead "Alright, let's get to work..." 2086
endif
endif
if insysmsg "You have unlocked a codex upgrade point"
overhead "[ CODEX POINT UNLOCKED! ]" 2114
if EnableSummons = 1 and followers > 1
wait 1000
overhead "Well done, Master..." 44 myMainTankPet
menu myMainTankPet 3
endif
endif
if insysmsg "unlocked a point for your wizard's grimoire"
overhead "[ GRIMOIRE POINT UNLOCKED! ]" 7
if EnableSummons = 1 and followers > 1
wait 1000
overhead "You seem stronger, Master..." 44 myMainTankPet
menu myMainTankPet 3
endif
endif
if insysmsg "enough experience to upgrade"
overhead "[ ASPECT TIER UNLOCKED! ]" 2086
if EnableSummons = 1 and followers > 1
wait 500
overhead "Time to spend some more gold, it would seem..." 44 myMainTankPet
menu myMainTankPet 3
wait 500
endif
endif
if insysmsg "upgrade point for Fire Elemental" or insysmsg "upgrade point for Air Elemental" or insysmsg "upgrade point for Water Elemental" or insysmsg "upgrade point for Earth Elemental"and EnableSummons = 1 and followers > 1
overhead "Hmm.. I suddenly feel stronger!" 44 myMainTankPet
menu myMainTankPet 3
wait 500
overhead "* cracks knuckles... *" 0 myMainTankPet
endif
if insysmsg "something invisible out of the way"
overhead "[ ▼ SOMEONE HIDDEN! ▼ ]" 6
if EnableSummons = 1 and followers > 1
wait 500
overhead "There is a foul stench upon the air..." 44 myMainTankPet
menu myMainTankPet 3
wait 500
endif
endif
if paralyzed and EnableParalyzePouch = 1
overhead "[[[[ POP ]]]]" 2117
say "[pouch"
@setvar! TimeToGo 1
if EnableSummons = 1 and followers > 1
overhead "That was unwise, criminal..." 44 myMainTankPet
menu myMainTankPet 3
clearsysmsg
endif
endif
if EnableRedAlertRecall = 1 and TimeToGo = 1
overhead "[[[[ RED ALERT ]]]]" 37
overhead "Looks like trouble coming!" 2086
if paralyzed
overhead "[[[[ POP ]]]]" 2117
say "[pouch"
wait 250
endif
if skill 'Healing' > 50 and not bandaging and hits < maxhits
hotkey "Bandage self"
overhead '* applying bandages... *' 88
wait 250
endif
if diffhits > 25 and not cooldown "Healing Potion"
if findtype "Yellow Potion" self as healpot
overhead '* drinking heal potion... *' 253
dclick healpot
cooldown "Healing Potion" 10500
wait 250
else
overhead '[ NO HEAL POTS! ]' 337
endif
endif
if poisoned and not cooldown "Cure Potion"
if findtype "Orange Potion" self as curepot
overhead '* drinking cure potion... *' 44
dclick curepot
cooldown "Cure Potion" 10500
wait 250
else
overhead [ NO CURE POTS! ]" 337
endif
endif
if stam < maxstam and not cooldown "Refresh Potion"
if findtype "Red Potion" self as refreshpot
overhead '* drinking refresh potion... *' 34
dclick refreshpot
cooldown "Refresh Potion" 10500
wait 250
else
overhead '[ NO REFRESH POTS! ]' 337
endif
endif
if skill "Mining" >= 50
if skill "Magery" >= 60 and CastRecall = 1
cast "Recall"
wft 2500
target mining_runebook
for 5
wait 500
if insysmsg 'Your concentration is disturbed'
overhead 'Shit! Trying that again...' 2086
cast "Recall"
wft 2500
target mining_runebook
clearsysmsg
endif
endfor
else
dclick mining_runebook
waitforgump 1551740969
gumpresponse 2
wait 500
for 5
wait 500
if insysmsg 'Your concentration is disturbed'
overhead 'Shit! Trying that again...' 2086
dclick mining_runebook
waitforgump 1551740969
gumpresponse 2
wait 500
clearsysmsg
endif
endfor
endif
endif
if skill "Lumberjacking" >= 50
if skill "Magery" >= 60 and CastRecall = 1
cast "Recall"
wft 2500
target mining_runebook
for 5
wait 500
if insysmsg 'Your concentration is disturbed'
overhead 'Shit! Trying that again...' 2086
cast "Recall"
wft 2500
target mining_runebook
clearsysmsg
endif
endfor
else
dclick lumber_runebook
waitforgump 1551740969
gumpresponse 2
wait 500
for 5
wait 500
if insysmsg 'Your concentration is disturbed'
overhead 'Shit! Trying that again...' 2086
dclick lumber_runebook
waitforgump 1551740969
gumpresponse 2
wait 500
clearsysmsg
endif
endfor
endif
endif
wait 1000
overhead "Whew. I think we got away!" 2086
if not varexist GuardComment
@setvar! GuardComment 1
endif
if EnableSummons = 1 and GuardComment = 1 and followers > 1
wait 1500
overhead "Yes Master, that was a close one..." 44 myMainTankPet
menu myMainTankPet 3
clearsysmsg
@setvar! GuardComment 2
wait 500
elseif EnableSummons = 1 and GuardComment = 2 and followers > 1
wait 1500
overhead "Yes Master, your script is truly God-like..." 44 myMainTankPet
menu myMainTankPet 3
clearsysmsg
@setvar! GuardComment 3
wait 500
elseif EnableSummons = 1 and GuardComment = 3 and followers > 1
wait 1500
overhead "Yes Master, these red humans are quite annoying..." 44 myMainTankPet
menu myMainTankPet 3
clearsysmsg
@setvar! GuardComment 4
wait 500
elseif EnableSummons = 1 and GuardComment = 4 and followers > 1
wait 1500
overhead "I think we could have taken them..." 44 myMainTankPet
menu myMainTankPet 3
clearsysmsg
@setvar! GuardComment 5
wait 500
elseif EnableSummons = 1 and GuardComment = 5 and followers > 1
wait 1500
overhead "I've worked for that human before... total prick..." 44 myMainTankPet
menu myMainTankPet 3
clearsysmsg
@setvar! GuardComment 6
wait 500
elseif EnableSummons = 1 and GuardComment = 6 and followers > 1
wait 1500
overhead "I don't think tonight is our night, Master.." 44 myMainTankPet
menu myMainTankPet 3
clearsysmsg
@setvar! GuardComment 1
wait 500
endif
@setvar! TimeToGo 0
sysmsg "Auto Recall trigger condition reset!" 0
if skill "Mace Fighting" > 50 and not findtype "sledgehammer|giant club|flail|cudgel|quarter staff|war mace|maul|war axe|mace|hammer pick" hand and findtype "sledgehammer|giant club|flail|cudgel|quarter staff|war mace|maul|war axe|mace|hammer pick" backpack as weapon
getlabel weapon WeaponLabel
for 5
if "unidentified" in WeaponLabel
ignore weapon
if not findtype "sledgehammer|giant club|flail|cudgel|quarter staff|war mace|maul|war axe|mace|hammer pick" hand and findtype "sledgehammer|giant club|flail|cudgel|quarter staff|war mace|maul|war axe|mace|hammer pick" self as weapon
getlabel weapon WeaponLabel
else
overhead "[ NO WEAPON! ]" 337
break
endif
endif
endfor
dclick weapon
endif
if skill "Swordsmanship" > 50 and not findtype "double axe|two handed axe|battle axe|halberd|katana|bardiche|cutlass|broadsword|scimitar|viking sword|longsword" hand and findtype "double axe|two handed axe|battle axe|halberd|katana|bardiche|cutlass|broadsword|scimitar|viking sword|longsword" backpack as weapon
getlabel weapon WeaponLabel
for 5
if "unidentified" in WeaponLabel
ignore weapon
if not findtype "double axe|two handed axe|battle axe|halberd|katana|bardiche|cutlass|broadsword|scimitar|viking sword|longsword" hand and findtype "double axe|two handed axe|battle axe|halberd|katana|bardiche|cutlass|broadsword|scimitar|viking sword|longsword" self as weapon
getlabel weapon WeaponLabel
else
overhead "[ NO WEAPON! ]" 337
break
endif
endif
endfor
dclick weapon
endif
if skill "Magery" >= 80 and not findtype "spellbook" hand and findtype "spellbook" backpack as myspellbook
getlabel myspellbook SpellbookLabel
for 5
wait 100
if "unidentified" in SpellbookLabel or "[blessed" in SpellbookLabel
ignore myspellbook
if not findtype "spellbook" hand and findtype "spellbook" self as myspellbook
getlabel myspellbook SpellbookLabel
else
overhead "[ NO SPELLBOOK! ]" 337
break
endif
endif
endfor
dclick myspellbook
endif
wait 1000
if HouseRecall = 1
wait 1500
if find MyDoor ground -1 -1 2
dclick MyDoor
overhead "* door slams! *" 0 MyDoor
wait 500
endif
endif
if OwnerInnRecall = 1
wait 2000
say "Innkeeper, I need a room!"
waitforgump 2393832411
gumpresponse 4
wait 3000
endif
if CoOwnerInnRecall = 1
wait 2000
say "Innkeeper, I need a room!"
waitforgump 2393832411
gumpresponse 5
wait 2000
gumpresponse 100
wait 2000
endif
if HideAtHomeorInn = 1
useskill "Hiding"
wait 250
endif
if OpenIngotBag = 1
dclick ingotbag
wait 250
endif
if OpenBoardBag = 1
dclick boardbag
wait 250
endif
for 11
if findtype "iron ore" backpack as ore
if findtype "forge" ground -1 -1 2 as forge or findtype 0x0FB1 ground -1 -1 2 as forge
overhead "* smelting ore... *" 2114 forge
dclick ore
overhead "* forging ingots... *" 2117
wait 1000
hotkey 'Organizer Agent-03'
wait 250
endif
endif
endfor
for 11
if findtype 'log%s' backpack and LogsToBoards = 1
wait 500
overhead '* making boards... *' 0
dclicktype 'log%s'
wait 250
hotkey 'Organizer Agent-01'
wait 1500
endif
endfor
if EnableOrganizerAgents = 1
if findtype "cut up leather|iron ingot%s|board%s|feather%s|seed of renewal|shaft%s|blank scroll%s%|gold coin" backpack
overhead "* storing ingots... *" 37
hotkey "Organizer Agent-05"
wait 3500
if findtype "cut up leather|iron ingot%s|board%s|feather%s|seed of renewal|shaft%s|blank scroll%s%|gold coin" backpack
hotkey "Organizer Agent-05"
wait 3500
endif
if findtype "cut up leather|iron ingot%s|board%s|feather%s|seed of renewal|shaft%s|blank scroll%s%|gold coin" backpack
hotkey "Organizer Agent-05"
wait 500
endif
endif
endif
if EnableBankSafe = 1
if findtype "bank deposit safe" ground -1 -1 2 as safe
while findtype "gold coin" self as gold
lift gold 60000
overhead "* depositing gold... *" 149
drop safe -1 -1 -1
wait 1000
endwhile
while findtype 2539 self as dubs
lift dubs 60000
drop safe -1 -1 -1
overhead "* depositing doubloons... *" 149
wait 1000
endwhile
else
overhead "[ NO BANK SAFE FOUND ]" 337
sysmsg "Disable 'EnableBankSafe' in script variables to turn off this feature!" 0
endif
endif
if EnableStockpile = 1
if findtype "resource container" ground -1 -1 2 as resource
menu resource 0
wft 500
target self
overhead "* unloading resources... *" 84
wait 1000
else
overhead "[ NO RESOURCE STOCKPILE FOUND ]" 337
sysmsg "Disable 'EnableStockpile' in script variables to turn off this feature!" 0
endif
endif
if EnableStorageShelf = 1
if findtype "storage shelf" ground -1 -1 2 as shelf
menu shelf 0
wft 500
target self
overhead "* restocking... *" 37
wait 1000
gumpclose 3232825965
else
overhead "[ NO STORAGE SHELF FOUND ]" 337
sysmsg "Disable 'EnableStorageShelf' in script variables to turn off this feature!" 0
endif
if findtype "storage shelf" ground -1 -1 2 as shelf
menu shelf 1
wft 500
target self
overhead "* resupplying... *" 93
wait 1000
endif
endif
if EnableRepairBench = 1
if findtype "repair bench" ground -1 -1 2 as RepairBench
clearsysmsg
dclick RepairBench
wait 1000
if insysmsg "You do not have any items equipped or in your backpack in need of repairs."
overhead "* nothing to repair! *" 0
else
settimer RepairTimer 0
while timer RepairTimer <= 5000
if insysmsg "Repair"
break
endif
endwhile
overhead "* all items repaired! *" 0
overhead "Repair took: {{RepairTimer}}ms" 149
removetimer RepairTimer
endif
wait 500
else
overhead "[ NO REPAIR BENCH FOUND ]" 337
sysmsg "Disable 'EnableRepairBench' in script variables to turn off this feature!" 0
endif
endif
if EnableMagicRecycler = 1
if findtype "ornate elven chest|magic item recycler" ground -1 -1 2 as recycler
menu recycler 1
wait 1000
if insysmsg "0 recyclable"
overhead "* nothing to recycle! *" 6
else
overhead "* recycling magic items... *" 6
wait 500
endif
else
overhead "[ NO MAGIC ITEM RECYCLER FOUND ]" 337
sysmsg "Disable 'EnableMagicRecycler' in script variables to turn off this feature!" 0
endif
endif
if EnableTreasureChest = 1
if findtype "black market goods|seed of renewal|dirt patch|bag of seeds|void orb|rune|scroll of calling|bottle|dye bottle|map" self
dclick TreasureChest
overhead "* storing loot... *" 69
wait 250
hotkey "Organizer Agent-06"
wait 250
hotkey "Organizer Agent-07"
wait 250
hotkey "Organizer Agent-08"
wait 250
hotkey "Organizer Agent-09"
wait 1000
if findtype "black market goods|seed of renewal|dirt patch|bag of seeds|void orb|rune|scroll of calling|bottle|dye bottle|map" self
wait 1000
hotkey "Organizer Agent-06"
wait 250
hotkey "Organizer Agent-07"
wait 250
hotkey "Organizer Agent-08"
wait 250
hotkey "Organizer Agent-09"
endif
endif
endif
if EnableReagentSplitter = 1
// This section uses a Reg Splitter script I adapted from dennozz' script found here: https://outlands.uorazorscripts.com/script/d8f50c97-3d9c-468b-9114-0a0623003e19 //
if findtype "reagent satchel" self as MyWizardBag
sysmsg "Disable 'EnableReagentSplitter' in script variables to turn off this feature!" 0
dclick MyWizardBag
overhead "* splitting reagents... *" 112
@setvar! amount 0
@setvar! regsID 3981
@setvar! myCounter 0
while findtype regsID self as r
@setvar! myCounter index
@ignore r
endwhile
@clearignore
if counttype regsID self <= 15
@setvar! amount 2
elseif counttype regsID self <= 30
@setvar! amount 4
elseif counttype regsID self <= 50
@setvar! amount 10
elseif counttype regsID self <= 100
@setvar! amount 20
elseif counttype regsID self <= 150
@setvar! amount 30
elseif counttype regsID self <= 200
@setvar! amount 40
else
@setvar! amount 50
endif
while findtype regsID self as regs
@setvar! moveRegs 0
if myCounter = 0
@setvar! moveRegs 1
elseif myCounter != 0 and not find regs MyWizardBag
@setvar! moveRegs 1
endif
# Spider Silk
if moveRegs = 1
if index = 0
lift regs amount
drop MyWizardBag 44 65 0
wait 150
elseif index = 1
lift regs amount
drop MyWizardBag 68 65 0
wait 150
elseif index = 2
lift regs amount
drop MyWizardBag 96 65 0
wait 150
elseif index = 3
lift regs amount
drop MyWizardBag 121 65 0
wait 150
else
lift regs amount
drop MyWizardBag 142 65 0
wait 150
endif
endif
@ignore regs
if moveRegs = 1
wait 500
endif
endwhile
@setvar! regsID 3962
@setvar! myCounter 0
while findtype regsID self as r
@setvar! myCounter index
@ignore r
endwhile
@clearignore
if counttype regsID self <= 10
@setvar! amount 2
elseif counttype regsID self <= 20
@setvar! amount 4
elseif counttype regsID self <= 50
@setvar! amount 10
elseif counttype regsID self <= 100
@setvar! amount 20
elseif counttype regsID self <= 150
@setvar! amount 30
elseif counttype regsID self <= 200
@setvar! amount 40
else
@setvar! amount 50
endif
while findtype regsID self as regs
@setvar! moveRegs 0
if myCounter = 0
@setvar! moveRegs 1
elseif myCounter != 0 and not find regs MyWizardBag
@setvar! moveRegs 1
endif
# Black Pearl
if moveRegs = 1
if index = 0
lift regs amount
drop MyWizardBag 44 76 0
wait 150
elseif index = 1
lift regs amount
drop MyWizardBag 68 76 0
wait 150
elseif index = 2
lift regs amount
drop MyWizardBag 96 76 0
wait 150
elseif index = 3
lift regs amount
drop MyWizardBag 121 76 0
wait 150
else
lift regs amount
drop MyWizardBag 142 76 0
wait 150
endif
endif
@ignore regs
if moveRegs = 1
wait 500
endif
endwhile
@setvar! regsID 3976
@setvar! myCounter 0
while findtype regsID self as r
@setvar! myCounter index
@ignore r
endwhile
@clearignore
if counttype regsID self <= 10
@setvar! amount 2
elseif counttype regsID self <= 20
@setvar! amount 4
elseif counttype regsID self <= 50
@setvar! amount 10
elseif counttype regsID self <= 100
@setvar! amount 20
elseif counttype regsID self <= 150
@setvar! amount 30
elseif counttype regsID self <= 200
@setvar! amount 40
else
@setvar! amount 50
endif
while findtype regsID self as regs
@setvar! moveRegs 0
if myCounter = 0
@setvar! moveRegs 1
elseif myCounter != 0 and not find regs MyWizardBag
@setvar! moveRegs 1
endif
# Nightshade
if moveRegs = 1
if index = 0
lift regs amount
drop MyWizardBag 44 88 0
wait 150
elseif index = 1
lift regs amount
drop MyWizardBag 68 88 0
wait 150
elseif index = 2
lift regs amount
drop MyWizardBag 96 88 0
wait 150
elseif index = 3
lift regs amount
drop MyWizardBag 121 88 0
wait 150
else
lift regs amount
drop MyWizardBag 142 88 0
wait 150
endif
endif
@ignore regs
if moveRegs = 1
wait 500
endif
endwhile
@setvar! regsID 3974
@setvar! myCounter 0
while findtype regsID self as r
@setvar! myCounter index
@ignore r
endwhile
@clearignore
if counttype regsID self <= 10
@setvar! amount 2
elseif counttype regsID self <= 20
@setvar! amount 4
elseif counttype regsID self <= 50
@setvar! amount 10
elseif counttype regsID self <= 100
@setvar! amount 20
elseif counttype regsID self <= 150
@setvar! amount 30
elseif counttype regsID self <= 200
@setvar! amount 40
else
@setvar! amount 50
endif
while findtype regsID self as regs
@setvar! moveRegs 0
if myCounter = 0
@setvar! moveRegs 1
elseif myCounter != 0 and not find regs MyWizardBag
@setvar! moveRegs 1
endif
# Mandrake root
if moveRegs = 1
if index = 0
lift regs amount
drop MyWizardBag 44 100 0
wait 150
elseif index = 1
lift regs amount
drop MyWizardBag 68 100 0
wait 150
elseif index = 2
lift regs amount
drop MyWizardBag 96 100 0
wait 150
elseif index = 3
lift regs amount
drop MyWizardBag 121 100 0
wait 150
else
lift regs amount
drop MyWizardBag 142 100 0
wait 150
endif
endif
@ignore regs
if moveRegs = 1
wait 500
endif
endwhile
@setvar! regsID 3980
@setvar! myCounter 0
while findtype regsID self as r
@setvar! myCounter index
@ignore r
endwhile
@clearignore
if counttype regsID self <= 10
@setvar! amount 2
elseif counttype regsID self <= 20
@setvar! amount 4
elseif counttype regsID self <= 50
@setvar! amount 10
elseif counttype regsID self <= 100
@setvar! amount 20
elseif counttype regsID self <= 150
@setvar! amount 30
elseif counttype regsID self <= 200
@setvar! amount 40
else
@setvar! amount 50
endif
while findtype regsID self as regs
@setvar! moveRegs 0
if myCounter = 0
@setvar! moveRegs 1
elseif myCounter != 0 and not find regs MyWizardBag
@setvar! moveRegs 1
endif
# Sulphurous Ash
if moveRegs = 1
if index = 0
lift regs amount
drop MyWizardBag 44 112 0
wait 150
elseif index = 1
lift regs amount
drop MyWizardBag 68 112 0
wait 150
elseif index = 2
lift regs amount
drop MyWizardBag 96 112 0
wait 150
elseif index = 3
lift regs amount
drop MyWizardBag 121 112 0
wait 150
else
lift regs amount
drop MyWizardBag 142 112 0
wait 150
endif
endif
@ignore regs
if moveRegs = 1
wait 500
endif
endwhile
@setvar! regsID 3973
@setvar! myCounter 0
while findtype regsID self as r
@setvar! myCounter index
@ignore r
endwhile
@clearignore
if counttype regsID self <= 10
@setvar! amount 2
elseif counttype regsID self <= 20
@setvar! amount 4
elseif counttype regsID self <= 50
@setvar! amount 10
elseif counttype regsID self <= 100
@setvar! amount 20
elseif counttype regsID self <= 150
@setvar! amount 30
elseif counttype regsID self <= 200
@setvar! amount 40
else
@setvar! amount 50
endif
while findtype regsID self as regs
@setvar! moveRegs 0
if myCounter = 0
@setvar! moveRegs 1
elseif myCounter != 0 and not find regs MyWizardBag
@setvar! moveRegs 1
endif
# Ginseng
if moveRegs = 1
if index = 0
lift regs amount
drop MyWizardBag 44 124 0
wait 150
elseif index = 1
lift regs amount
drop MyWizardBag 68 124 0
wait 150
elseif index = 2
lift regs amount
drop MyWizardBag 96 124 0
wait 150
elseif index = 3
lift regs amount
drop MyWizardBag 121 124 0
wait 150
else
lift regs amount
drop MyWizardBag 142 124 0
wait 150
endif
endif
@ignore regs
if moveRegs = 1
wait 500
endif
endwhile
@setvar! regsID 3963
@setvar! myCounter 0
while findtype regsID self as r
@setvar! myCounter index
@ignore r
endwhile
@clearignore
if counttype regsID self <= 10
@setvar! amount 2
elseif counttype regsID self <= 20
@setvar! amount 4
elseif counttype regsID self <= 50
@setvar! amount 10
elseif counttype regsID self <= 100
@setvar! amount 20
elseif counttype regsID self <= 150
@setvar! amount 30
elseif counttype regsID self <= 200
@setvar! amount 40
else
@setvar! amount 50
endif
while findtype regsID self as regs
@setvar! moveRegs 0
# Bloodmoss
if myCounter = 0
@setvar! moveRegs 1
elseif myCounter != 0 and not find regs MyWizardBag
@setvar! moveRegs 1
endif
if moveRegs = 1
if index = 0
lift regs amount
drop MyWizardBag 44 136 0
wait 150
elseif index = 1
lift regs amount
drop MyWizardBag 68 136 0
wait 150
elseif index = 2
lift regs amount
drop MyWizardBag 96 136 0
wait 150
elseif index = 3
lift regs amount
drop MyWizardBag 121 136 0
wait 150
else
lift regs amount
drop MyWizardBag 142 136 0
wait 150
endif
endif
@ignore regs
if moveRegs = 1
wait 500
endif
endwhile
@setvar! regsID 3972
@setvar! myCounter 0
while findtype regsID self as r
@setvar! myCounter index
@ignore r
endwhile
@clearignore
if counttype regsID self <= 10
@setvar! amount 2
elseif counttype regsID self <= 20
@setvar! amount 4
elseif counttype regsID self <= 50
@setvar! amount 10
elseif counttype regsID self <= 100
@setvar! amount 20
elseif counttype regsID self <= 150
@setvar! amount 30
elseif counttype regsID self <= 200
@setvar! amount 40
else
@setvar! amount 50
endif
while findtype regsID self as regs
@setvar! moveRegs 0
if myCounter = 0
@setvar! moveRegs 1
elseif myCounter != 0 and not find regs MyWizardBag
@setvar! moveRegs 1
endif
# Garlic
if moveRegs = 1
if index = 0
lift regs amount
drop MyWizardBag 44 148 0
wait 150
elseif index = 1
lift regs amount
drop MyWizardBag 68 148 0
wait 150
elseif index = 2
lift regs amount
drop MyWizardBag 96 148 0
wait 150
elseif index = 3
lift regs amount
drop MyWizardBag 121 148 0
wait 150
else
lift regs amount
drop MyWizardBag 142 148 0
wait 150
endif
endif
@ignore regs
if moveRegs = 1
wait 500
endif
endwhile
@setvar! regsID 8012
@setvar! myCounter 0
while findtype regsID self as r
@setvar! myCounter index
@ignore r
endwhile
@clearignore
if counttype regsID self <= 5
@setvar! amount 1
elseif counttype regsID self <= 10
@setvar! amount 2
elseif counttype regsID self <= 20
@setvar! amount 4
elseif counttype regsID self <= 40
@setvar! amount 8
else
@setvar! amount 15
endif
while findtype regsID self as regs
@setvar! moveRegs 0
if myCounter = 0
@setvar! moveRegs 1
elseif myCounter != 0 and not find regs MyWizardBag
@setvar! moveRegs 1
endif
#Scrolls
if moveRegs = 1
if index = 0
lift regs amount
drop MyWizardBag 44 160 0
wait 150
elseif index = 1
lift regs amount
drop MyWizardBag 68 160 0
wait 150
elseif index = 2
lift regs amount
drop MyWizardBag 96 160 0
wait 150
elseif index = 3
lift regs amount
drop MyWizardBag 121 160 0
wait 150
else
lift regs amount
drop MyWizardBag 142 160 0
wait 150
endif
endif
@ignore regs
if moveRegs = 1
wait 500
endif
endwhile
wait 1500
overhead "Fuck thieves!" 2086
wait 500
else
overhead "[ NO WIZARD BAG! ]" 337
endif
endif
hotkey "Organizer Agent-04"
wait 100
hotkey "Organizer Agent-02"
wait 1000
overhead "[ SCRIPT COMPLETE! ]" 37
stop
endif
if EnableRedAlertRecall = 1
if skill 'Tracking' > 50 and not findbuff 'tracking'
overhead 'I should keep an eye out for trouble...' 2086
while not gumpexists 4267467659
useskill 'tracking'
wait 250
endwhile
if gumpexists 4267467659
while not insysmsg "You will now hunt all hostile players."
gumpresponse 8 4267467659
waitforgump 4267467659 5000
endwhile
gumpresponse 6 4267467659
wait 1000
clearsysmsg
endif
gumpclose 4267467659
overhead "[ AUTO RECALL ACTIVATED! ]" 334
endif
endif
if skill 'Healing' > 50
if not bandaging and hits < maxhits
overhead '* applying bandages... *' 88
hotkey "Bandage Self"
endif
if counttype 'clean bandage%s%' < 5 and not cooldown "Inventory Timer"
overhead "[ RESTOCK BANDAGES! ]" 337
cooldown "Inventory Timer" 15000
endif
endif
if EnableCastHeal = 1
if skill 'Magery' >= 40 and diffhits > CastHealHPmeddiff and diffhits < CastHealHPhighdiff and mana >= 4
if not findtype "spellbook" hand and findtype "spellbook" backpack as myspellbook
getlabel myspellbook SpellbookLabel
for 5
wait 100
if "unidentified" in SpellbookLabel or "[blessed" in SpellbookLabel
ignore myspellbook
if not findtype "spellbook" hand and findtype "spellbook" self as myspellbook
getlabel myspellbook SpellbookLabel
else
overhead "[ NO SPELLBOOK! ]" 337
break
endif
endif
endfor
dclick myspellbook
wait 250
endif
cast 'Heal'
wait 100
while not casting
if targetexists
hotkey 'cancel current target'
endif
cast 'Heal'
wait 100
endwhile
wft 1500
target 'self'
wait 250
elseif skill 'Magery' >= 60 and diffhits > CastHealHPhighdiff and mana >= 11
if not findtype "spellbook" hand and findtype "spellbook" backpack as myspellbook
getlabel myspellbook SpellbookLabel
for 5
wait 100
if "unidentified" in SpellbookLabel or "[blessed" in SpellbookLabel
ignore myspellbook
if not findtype "spellbook" hand and findtype "spellbook" self as myspellbook
getlabel myspellbook SpellbookLabel
else
overhead "[ NO SPELLBOOK! ]" 337
break
endif
endif
endfor
dclick myspellbook
wait 250
endif
cast 'Greater Heal'
wait 100
while not casting
if targetexists
hotkey 'cancel current target'
endif
cast 'Greater Heal'
wait 100
endwhile
wft 1500
target 'self'
wait 250
elseif skill 'Magery' >= 40 and diffhits > CastHealHPhighdiff and mana >= 4 and mana < 11
if not findtype "spellbook" hand and findtype "spellbook" backpack as myspellbook
getlabel myspellbook SpellbookLabel
for 5
wait 100
if "unidentified" in SpellbookLabel or "[blessed" in SpellbookLabel
ignore myspellbook
if not findtype "spellbook" hand and findtype "spellbook" self as myspellbook
getlabel myspellbook SpellbookLabel
else
overhead "[ NO SPELLBOOK! ]" 337
break
endif
endif
endfor
dclick myspellbook
wait 250
endif
cast 'Heal'
wait 100
while not casting
if targetexists
hotkey 'cancel current target'
endif
cast 'Heal'
wait 100
endwhile
wft 1500
target 'self'
wait 250
endif
endif
if EnableCastCure = 1
if poisoned and skill 'Magery' >= 40 and mana >= 6
if not findtype "spellbook" hand and findtype "spellbook" backpack as myspellbook
getlabel myspellbook SpellbookLabel
for 5
wait 100
if "unidentified" in SpellbookLabel or "[blessed" in SpellbookLabel
ignore myspellbook
if not findtype "spellbook" hand and findtype "spellbook" self as myspellbook
getlabel myspellbook SpellbookLabel
else
overhead "[ NO SPELLBOOK! ]" 337
break
endif
endif
endfor
dclick myspellbook
wait 250
endif
cast 'Cure'
wait 100
while not casting
if targetexists
hotkey 'cancel current target'
endif
cast 'Cure'
wait 100
endwhile
wft 1500
target 'self'
wait 250
endif
endif
if EnableCurePotion = 1
if poisoned and not cooldown "Cure Potion" and hits < CurePotHP
if findtype "Orange Potion" self as curepot
overhead '* drinking cure potion... *' 44
dclick curepot
cooldown "Cure Potion" 10500
else
overhead "[ NO CURE POTS! ]" 337
endif
endif
endif
if EnableHealPotion = 1
if hits < HealPotHP and not cooldown "Healing Potion"
if findtype "Yellow Potion" self as healpot
overhead '* drinking heal potion... *' 253
dclick healpot
cooldown "Healing Potion" 10500
else
overhead '[ NO HEAL POTS! ]' 337
endif
endif
endif
if EnableRefreshPotion = 1
if diffstam >= RefreshPotSPdiff and not cooldown "Refresh Potion"
if findtype "Red Potion" self as refreshpot
overhead '* drinking refresh potion... *' 34
dclick refreshpot
cooldown "Refresh Potion" 10500
else
overhead '[ NO REFRESH POTS! ]' 337
endif
endif
endif
if EnableMagicReflection = 1
if skill 'Magery' >= 60 and not findbuff 'Magic Reflection' and not cooldown "Magic Shield" and mana > 14 and TimeToGo = 0
if not findtype "spellbook" hand and findtype "spellbook" backpack as myspellbook
getlabel myspellbook SpellbookLabel
for 5
wait 100
if "unidentified" in SpellbookLabel or "[blessed" in SpellbookLabel
ignore myspellbook
if not findtype "spellbook" hand and findtype "spellbook" self as myspellbook
getlabel myspellbook SpellbookLabel
else
overhead "[ NO SPELLBOOK! ]" 337
break
endif
endif
endfor
dclick myspellbook
wait 250
endif
for 10
cast 'Magic Reflection'
waitfortarget 1500
hotkey 'Target Self'
wait 1000
if insysmsg "That spell will not adhere"
cooldown "Magic Shield" 30000
overhead "Too soon for a new shield. Give me a sec..." 2086
replay
endif
if cooldown "Spell Fail"
wait 1000
overhead "Let me try that again..." 2086
wait 1000
else
break
endif
endfor
wait 500
overhead "[ MAGIC REFLECT ACTIVE! ]" 10
wait 1500
replay
endif
endif
if EnableReactiveArmour = 1
if skill 'Magery' >= 30 and not findbuff 'Reactive Armor' and mana >= 4 and TimeToGo = 0
if not findtype "spellbook" hand and findtype "spellbook" backpack as myspellbook
getlabel myspellbook SpellbookLabel
for 5
wait 100
if "unidentified" in SpellbookLabel or "[blessed" in SpellbookLabel
ignore myspellbook
if not findtype "spellbook" hand and findtype "spellbook" self as myspellbook
getlabel myspellbook SpellbookLabel
else
overhead "[ NO SPELLBOOK! ]" 337
break
endif
endif
endfor
dclick myspellbook
wait 250
endif
for 10
cast 'Reactive Armor'
waitfortarget 1500
hotkey 'Target Self'
wait 1000
if insysmsg "That spell will not adhere"
cooldown "Magic Armor" 30000
overhead "Too soon for a new magic armor. Give me a sec..." 2086
replay
endif
if cooldown "Spell Fail"
wait 500
overhead "Let me try that again..." 2086
wait 500
else
break
endif
endfor
wait 500
overhead "[ REACTIVE ARMOR ACTIVE! ]" 77
wait 1000
replay
endif
endif
if EnableGoldVacuum = 1
if findtype "gold coin" ground -1 -1 15 as droppedmoney and not cooldown "Gold Radar"
overhead "[ $ ]" 149 droppedmoney
overhead "▼" 149 droppedmoney
cooldown "Gold Radar" 3500
endif
if findtype "gold coin" ground -1 -1 2 as droppedmoney and not cooldown "Gold Vacuum"
overhead "[ CLEANUP... ]" 149
hotkey "Grab Item"
wft 2500
target droppedmoney
wait 250
if insysmsg "Invalid or inaccessible item"
overhead "I can't get to that!" 2086
wait 500
@ignore droppedmoney
endif
cooldown "Gold Vacuum" 500
endif
endif
if skill "Spirit Speak" >= 80 and not cooldown "Spirit Speak"
if findtype "corpse" ground -1 -1 12 as batteries
useskill "spiritspeak"
@ignore batteries
cooldown "Spirit Speak" 11000
wait 1000
endif
endif
if EnableAutoCarving = 1
if findtype 'Elven SpellBlade' self
if findtype "corpse" ground -1 -1 2 as deadbody
dclicktype "Elven Spellblade"
waitfortarget 1500
target 'self'
wait 750
if insysmsg "You don't see anything"
@ignore deadbody
replay
else
overhead "* skinning corpse... *" 337
@ignore deadbody
endif
endif
else
if not cooldown "Inventory Timer"
overhead "[ NO SKINNING KNIFE! ]" 337
sysmsg "Disable EnableAutoCarving in script variables to turn off this overhead message!" 0
cooldown "Inventory Timer" 15000
endif
wait 500
endif
endif
if skill 'Magery' >= 80 and skill 'Spirit Speak' >= 80 and EnableSummons = 1 and TotalSummonCount > 0
if followers = 0
@setvar! NeedtoSummon 1
elseif followers = 1 and TotalSummonCount > 0
@setvar! NeedtoSummon 1
elseif followers = 2 and TotalSummonCount = 1
@setvar! NeedtoSummon 0
elseif followers = 2 and TotalSummonCount = 2
@setvar! NeedtoSummon 1
elseif followers = 2 and TotalSummonCount = 3
@setvar! NeedtoSummon 1
elseif followers = 2 and TotalSummonCount = 4
@setvar! NeedtoSummon 1
elseif followers = 3 and TotalSummonCount = 1
@setvar! NeedtoSummon 0
elseif followers = 3 and TotalSummonCount = 2
@setvar! NeedtoSummon 0
elseif followers = 3 and TotalSummonCount = 3
@setvar! NeedtoSummon 1
elseif followers = 3 and TotalSummonCount = 4
@setvar! NeedtoSummon 1
elseif followers = 4 and TotalSummonCount = 1
@setvar! NeedtoSummon 0
elseif followers = 4 and TotalSummonCount = 2
@setvar! NeedtoSummon 0
elseif followers = 4 and TotalSummonCount = 3
@setvar! NeedtoSummon 0
elseif followers = 4 and TotalSummonCount = 4
@setvar! NeedtoSummon 1
elseif followers = 5
@setvar! NeedtoSummon 0
endif
if NeedtoSummon = 1
removelist summonList
createlist summonList
if not varexist myMainTankPet
@setvar! myMainTankPet 0
endif
if not varexist fireOne
@setvar! fireOne 0
endif
if not varexist fireTwo
@setvar! fireTwo 0
endif
if not varexist earthOne
@setvar! earthOne 0
endif
if not varexist earthTwo
@setvar! earthTwo 0
endif
if not varexist demonOne
@setvar! demonOne 0
endif
if not varexist demonTwo
@setvar! demonTwo 0
endif
if not varexist airOne
@setvar! airOne 0
endif
if not varexist airTwo
@setvar! airTwo 0
endif
if not varexist waterOne
@setvar! waterOne 0
endif
if not varexist waterTwo
@setvar! waterTwo 0
endif
overhead "* summoning a bodyguard... *" 12
wait 1000
overhead "I call upon the power of the elements..." 2086
if SummonEarthElemental > 0
if dead earthOne or not find earthOne ground -1 -1 18
pushlist summonList "Earth Elemental"
@setvar! earthOne 1
endif
if SummonEarthElemental > 1
if dead earthTwo or not find earthTwo ground -1 -1 18
pushlist summonList "Earth Elemental"
@setvar! earthTwo 1
endif
endif
endif
if SummonFireElemental > 0
if dead fireOne or not find fireOne ground -1 -1 18
pushlist summonList "Fire Elemental"
@setvar! fireOne 1
endif
if SummonFireElemental > 1
if dead fireTwo or not find fireTwo ground -1 -1 18
pushlist summonList "Fire Elemental"
@setvar! fireTwo 1
endif
endif
endif
if SummonDemon > 0
if dead demonOne or not find demonOne ground -1 -1 18
pushlist summonList "Earth Elemental"
@setvar! demonOne 1
endif
if SummonDemon > 1
if dead demonTwo or not find demonTwo ground -1 -1 18
pushlist summonList "Earth Elemental"
@setvar! demonTwo 1
endif
endif
endif
if SummonAirElemental > 0
if dead airOne or not find airOne ground -1 -1 18
pushlist summonList "Air Elemental"
@setvar! airOne 1
endif
if SummonAirElemental > 1
if dead airTwo or not find airTwo ground -1 -1 18
pushlist summonList "Air Elemental"
@setvar! airTwo 1
endif
endif
endif
if SummonWaterElemental > 0
if dead waterOne or not find waterOne ground -1 -1 18
pushlist summonList "Water Elemental"
@setvar! waterOne 1
endif
if SummonWaterElemental > 1
if dead waterTwo or not find waterTwo ground -1 -1 18
pushlist summonList "Water Elemental"
@setvar! waterTwo 1
endif
endif
endif
if not findtype "spellbook" hand and findtype "spellbook" backpack as myspellbook
getlabel myspellbook SpellbookLabel
wait 250
for 5
wait 250
if "unidentified" in SpellbookLabel or "[blessed" in SpellbookLabel
ignore myspellbook
if not findtype "spellbook" hand and findtype "spellbook" self as myspellbook
getlabel myspellbook SpellbookLabel
wait 250
else
overhead "[ NO SPELLBOOK! ]" 337
break
endif
endif
endfor
dclick myspellbook
endif
foreach summon in summonList
while mana < 50
if diffhits >= 50
replay
endif
wait 500
if not findbuff "Actively Meditating"
useskill "meditation"
overhead "* meditating... *" 10
endif
wait 1000
endwhile
cast summon
wft 500
if targetexists
hotkey "Target Self"
wait 200
endif
wait 500
if SummonName = 2
overhead "I summon thee, Protector of Harvesters!" 2086
elseif SummonName = 3
overhead "I require another protector!" 2086
elseif SummonName = 4
overhead "There's still room in the back!" 2086
else
overhead "Send me a worthy protector!" 2086
endif
while casting
wait 50
endwhile
if diffhits >= 40
overhead "Hang on, I need a heal!" 2086
hotkey '> Interrupt'
replay
endif
wait 250
@setvar! myFreshlySummonedPet 0
if summon = "Earth Elemental" and findtype 14 ground -1 -1 2 as myPet
@setvar! myFreshlySummonedPet myPet
if earthOne = 1
@setvar! earthOne myPet
elseif earthTwo = 1
@setvar! earthTwo myPet
endif
elseif summon = "Fire Elemental" and findtype 15 ground -1 -1 2 as myPet
@setvar! myFreshlySummonedPet myPet
if fireOne = 1
@setvar! fireOne myPet
elseif fireTwo = 1
@setvar! fireTwo myPet
endif
elseif summon = "Summon Daemon" and findtype 9 ground -1 -1 2 as myPet
@setvar! myFreshlySummonedPet myPet
if demonOne = 1
@setvar! demonOne myPet
elseif demonTwo = 1
@setvar! demonTwo myPet
endif
elseif summon = "Water Elemental" and findtype 16 ground -1 -1 2 as myPet
@setvar! myFreshlySummonedPet myPet
if waterOne = 1
@setvar! waterOne myPet
elseif waterTwo = 1
@setvar! waterTwo myPet
endif
elseif summon = "Air Elemental" and findtype 13 ground -1 -1 2 as myPet
@setvar! myFreshlySummonedPet myPet
if airOne = 1
@setvar! airOne myPet
elseif airTwo = 1
@setvar! airTwo myPet
endif
endif
if myFreshlySummonedPet = 0
overhead "I don't see my elemental..." 2086
wait 500
break
endif
if NameSummonedPets = 0
wait 2000
overhead "{{summon}} will protect you now...." 1909 myFreshlySummonedPet
menu myFreshlySummonedPet 3
@ignore myFreshlySummonedPet
wait 500
poplist summonList "front"
cooldown "Guard Timer" 60000
break
endif
if NameSummonedPets = 1 and list petNameList > 0
for 2
if SummonName = 1
wait 2000
overhead "What is your name, minion?" 2086
wait 250
foreach petName in petNameList
rename myFreshlySummonedPet petName
wait 250
if insysmsg "That name is unacceptable"
sysmsg "Unable to name summon: {{petName}}" 34
clearsysmsg
poplist petNameList "front"
wait 500
else
break
endif
endfor
wait 1000
overhead "You may call me {{petName}}, Master." 1909 myFreshlySummonedPet
wait 2500
overhead "{{petName}} will protect you now...." 1909 myFreshlySummonedPet
@setvar! NameOne petName
menu myFreshlySummonedPet 3
@ignore myFreshlySummonedPet
cooldown "Guard Timer" 60000
if followers = 0
@setvar! NeedtoSummon 1
elseif followers = 1 and TotalSummonCount > 0
@setvar! NeedtoSummon 1
elseif followers = 2 and TotalSummonCount = 1
@setvar! NeedtoSummon 0
@setvar! SummonName 1
elseif followers = 2 and TotalSummonCount = 2
@setvar! NeedtoSummon 1
elseif followers = 2 and TotalSummonCount = 3
@setvar! NeedtoSummon 1
elseif followers = 2 and TotalSummonCount = 4
@setvar! NeedtoSummon 1
elseif followers = 3 and TotalSummonCount = 1
@setvar! NeedtoSummon 0
@setvar! SummonName 1
elseif followers = 3 and TotalSummonCount = 2
@setvar! NeedtoSummon 0
@setvar! SummonName 1
elseif followers = 3 and TotalSummonCount = 3
@setvar! NeedtoSummon 1
elseif followers = 3 and TotalSummonCount = 4
@setvar! NeedtoSummon 1
elseif followers = 4 and TotalSummonCount = 1
@setvar! NeedtoSummon 0
@setvar! SummonName 1
elseif followers = 4 and TotalSummonCount = 2
@setvar! NeedtoSummon 0
@setvar! SummonName 1
elseif followers = 4 and TotalSummonCount = 3
@setvar! NeedtoSummon 0
@setvar! SummonName 1
elseif followers = 4 and TotalSummonCount = 4
@setvar! NeedtoSummon 1
elseif followers = 5
@setvar! NeedtoSummon 0
@setvar! SummonName 1
endif
if NeedtoSummon = 0
@setvar! SummonName 1
wait 500
overhead "It's harvesting time!" 2086
wait 500
elseif NeedtoSummon = 1
wait 500
overhead "Thank you, {{petName}}, but you'll need some help..." 2086
wait 1000
@setvar! SummonName 2
poplist petNameList front
else
poplist petNameList front
break
endif
poplist petNameList front
break
elseif SummonName = 2
wait 1500
overhead "Welcome aboard! Name and rank?" 2086
wait 250
foreach petName in petNameList
rename myFreshlySummonedPet petName
wait 250
if insysmsg "That name is unacceptable"
sysmsg "Unable to name summon: {{petName}}" 34
clearsysmsg
poplist petNameList "front"
wait 500
else
break
endif
endfor
wait 2000
overhead "I am {{petName}}, Master." 1909 myFreshlySummonedPet
wait 2500
overhead "{{petName}} is yours to command..." 1909 myFreshlySummonedPet
@setvar! NameTwo petName
menu myFreshlySummonedPet 3
@ignore myFreshlySummonedPet
poplist petNameList front
cooldown "Guard Timer" 60000
if followers = 0
@setvar! NeedtoSummon 1
elseif followers = 1 and TotalSummonCount > 0
@setvar! NeedtoSummon 1
elseif followers = 2 and TotalSummonCount = 1
@setvar! NeedtoSummon 0
@setvar! SummonName 1
elseif followers = 2 and TotalSummonCount = 2
@setvar! NeedtoSummon 1
elseif followers = 2 and TotalSummonCount = 3
@setvar! NeedtoSummon 1
elseif followers = 2 and TotalSummonCount = 4
@setvar! NeedtoSummon 1
elseif followers = 3 and TotalSummonCount = 1
@setvar! NeedtoSummon 0
@setvar! SummonName 1
elseif followers = 3 and TotalSummonCount = 2
@setvar! NeedtoSummon 0
@setvar! SummonName 1
elseif followers = 3 and TotalSummonCount = 3
@setvar! NeedtoSummon 1
elseif followers = 3 and TotalSummonCount = 4
@setvar! NeedtoSummon 1
elseif followers = 4 and TotalSummonCount = 1
@setvar! NeedtoSummon 0
@setvar! SummonName 1
elseif followers = 4 and TotalSummonCount = 2
@setvar! NeedtoSummon 0
@setvar! SummonName 1
elseif followers = 4 and TotalSummonCount = 3
@setvar! NeedtoSummon 0
@setvar! SummonName 1
elseif followers = 4 and TotalSummonCount = 4
@setvar! NeedtoSummon 1
elseif followers = 5
@setvar! NeedtoSummon 0
@setvar! SummonName 1
endif
if NeedtoSummon = 0
@setvar! SummonName 1
wait 1500
overhead "Alright team, let's do this!" 2086
elseif NeedtoSummon = 1
wait 500
overhead "Hmm... I think we should bring even more..."
wait 500
@setvar! SummonName 3
poplist petNameList front
else
poplist petNameList front
break
endif
poplist petNameList front
break
elseif SummonName = 3
wait 1500
overhead "Introduce yourself to the team..." 2086
wait 250
foreach petName in petNameList
rename myFreshlySummonedPet petName
wait 250
if insysmsg "That name is unacceptable"
sysmsg "Unable to name summon: {{petName}}" 34
clearsysmsg
poplist petNameList "front"
wait 500
else
break
endif
endfor
wait 1000
overhead "{{petName}} is what they call me..." 1909 myFreshlySummonedPet
wait 2000
overhead "{{petName}} will kill for you." 1909 myFreshlySummonedPet
@setvar! NameThree petName
menu myFreshlySummonedPet 3
@ignore myFreshlySummonedPet
poplist petNameList front
cooldown "Guard Timer" 60000
if followers = 0
@setvar! NeedtoSummon 1
elseif followers = 1 and TotalSummonCount > 0
@setvar! NeedtoSummon 1
elseif followers = 2 and TotalSummonCount = 1
@setvar! NeedtoSummon 0
@setvar! SummonName 1
elseif followers = 2 and TotalSummonCount = 2
@setvar! NeedtoSummon 1
elseif followers = 2 and TotalSummonCount = 3
@setvar! NeedtoSummon 1
elseif followers = 2 and TotalSummonCount = 4
@setvar! NeedtoSummon 1
elseif followers = 3 and TotalSummonCount = 1
@setvar! NeedtoSummon 0
@setvar! SummonName 1
elseif followers = 3 and TotalSummonCount = 2
@setvar! NeedtoSummon 0
@setvar! SummonName 1
elseif followers = 3 and TotalSummonCount = 3
@setvar! NeedtoSummon 1
elseif followers = 3 and TotalSummonCount = 4
@setvar! NeedtoSummon 1
elseif followers = 4 and TotalSummonCount = 1
@setvar! NeedtoSummon 0
@setvar! SummonName 1
elseif followers = 4 and TotalSummonCount = 2
@setvar! NeedtoSummon 0
@setvar! SummonName 1
elseif followers = 4 and TotalSummonCount = 3
@setvar! NeedtoSummon 0
@setvar! SummonName 1
elseif followers = 4 and TotalSummonCount = 4
@setvar! NeedtoSummon 1
elseif followers = 5
@setvar! NeedtoSummon 0
@setvar! SummonName 1
endif
if NeedtoSummon = 0
@setvar! SummonName 1
wait 1500
overhead "That's what I like to hear! Time to work..." 2086
elseif NeedtoSummon = 1
@setvar! SummonName 4
wait 500
overhead "Hmm.. I think see room for one more...." 2086
wait 500
poplist petNameList front
else
poplist petNameList front
break
endif
poplist petNameList front
break
elseif SummonName = 4
wait 1500
overhead "Do you have a name?" 2086
wait 250
foreach petName in petNameList
rename myFreshlySummonedPet petName
wait 250
if insysmsg "That name is unacceptable"
sysmsg "Unable to name summon: {{petName}}" 34
clearsysmsg
poplist petNameList "front"
wait 500
else
break
endif
endfor
wait 1000
overhead "Yes, I am {{petName}}, Master." 1909 myFreshlySummonedPet
wait 2000
overhead "{{petName}} will protect you now...." 1909 myFreshlySummonedPet
@setvar! NameFour petName
menu myFreshlySummonedPet 3
@ignore myFreshlySummonedPet
poplist petNameList front
cooldown "Guard Timer" 60000
@setvar! SummonName 1
wait 1500
overhead "Alright team, let's do this!" 2086
break
else
@setvar! SummonName 1
endif
endfor
endif
if followers = 0
@setvar! NeedtoSummon 1
elseif followers = 1 and TotalSummonCount > 0
@setvar! NeedtoSummon 1
elseif followers = 2 and TotalSummonCount = 1
@setvar! NeedtoSummon 0
@setvar! SummonName 1
break
elseif followers = 2 and TotalSummonCount = 2
@setvar! NeedtoSummon 1
elseif followers = 2 and TotalSummonCount = 3
@setvar! NeedtoSummon 1
elseif followers = 2 and TotalSummonCount = 4
@setvar! NeedtoSummon 1
elseif followers = 3 and TotalSummonCount = 1
@setvar! NeedtoSummon 0
@setvar! SummonName 1
break
elseif followers = 3 and TotalSummonCount = 2
@setvar! NeedtoSummon 0
@setvar! SummonName 1
break
elseif followers = 3 and TotalSummonCount = 3
@setvar! NeedtoSummon 1
elseif followers = 3 and TotalSummonCount = 4
@setvar! NeedtoSummon 1
elseif followers = 4 and TotalSummonCount = 1
@setvar! NeedtoSummon 0
@setvar! SummonName 1
break
elseif followers = 4 and TotalSummonCount = 2
@setvar! NeedtoSummon 0
@setvar! SummonName 1
break
elseif followers = 4 and TotalSummonCount = 3
@setvar! NeedtoSummon 0
@setvar! SummonName 1
break
elseif followers = 4 and TotalSummonCount = 4
@setvar! NeedtoSummon 1
elseif followers = 5
@setvar! NeedtoSummon 0
@setvar! SummonName 1
break
endif
endfor
replay
endif
endif
if EnableSummons = 1
if dead myMainTankPet
if not dead earthOne
@setvar! myMainTankPet earthOne
elseif not dead earthTwo
@setvar! myMainTankPet earthTwo
elseif not dead waterOne
@setvar! myMainTankPet waterOne
elseif not dead waterTwo
@setvar! myMainTankPet waterTwo
elseif not dead demonOne
@setvar! myMainTankPet demonOne
elseif not dead demonTwo
@setvar! myMainTankPet demonTwo
elseif not dead fireOne
@setvar! myMainTankPet fireOne
elseif not dead fireTwo
@setvar! myMainTankPet fireTwo
elseif not dead airOne
@setvar! myMainTankPet airOne
elseif not dead airTwo
@setvar! myMainTankPet airTwo
endif
else
if not cooldown "Guard Timer"
if GuardComment = 1
overhead "* guarding... *" 2114 myMainTankPet
menu myMainTankPet 3
@setvar! GuardComment 2
wait 500
cooldown "Guard Timer" 120000
elseif GuardComment = 2
overhead "* looks around menacingly... *" 2114 myMainTankPet
menu myMainTankPet 3
@setvar! GuardComment 3
wait 500
cooldown "Guard Timer" 120000
elseif GuardComment = 3
overhead "* cracks knuckles... *" 2114 myMainTankPet
menu myMainTankPet 3
@setvar! GuardComment 4
wait 500
cooldown "Guard Timer" 120000
elseif GuardComment = 4
overhead "* scanning for threats... *" 2114 myMainTankPet
menu myMainTankPet 3
wait 500
@setvar! GuardComment 5
cooldown "Guard Timer" 120000
elseif GuardComment = 5
overhead "* growls... *" 2114 myMainTankPet
menu myMainTankPet 3
@setvar! GuardComment 6
wait 500
cooldown "Guard Timer" 120000
elseif GuardComment = 6
overhead "This isn't very exciting, is it?" 44 myMainTankPet
menu myMainTankPet 3
@setvar! GuardComment 1
wait 500
cooldown "Guard Timer" 120000
else
overhead "I think we've already passed that tree today..." 44 myMainTankPet
menu myMainTankPet 3
@setvar! GuardComment 1
wait 500
cooldown "Guard Timer" 120000
endif
endif
endif
if EnableWeaponWarning = 1
if skill "Mace Fighting" > 50 and not findtype "sledgehammer|giant club|flail|cudgel|quarter staff|war mace|maul|war axe|mace|hammer pick" self and not cooldown "Inventory Timer"
overhead "[ NO WEAPON! ]" 337
cooldown "Inventory Timer" 10000
sysmsg "Disable 'EnableWeaponWarning' in script variables to turn off this feature!" 0
endif
if skill "Swordsmanship" > 50 and not findtype "double axe|two handed axe|battle axe|halberd|katana|bardiche|cutlass|broadsword|scimitar|viking sword|longsword" self and not cooldown "Inventory Timer"
overhead "[ NO WEAPON! ]" 337
cooldown "Inventory Timer" 10000
sysmsg "Disable 'EnableWeaponWarning' in script variables to turn off this feature!" 0
endif
if skill "Magery" > 80 and findtype "spellbook" self as myspellbook and not cooldown "Inventory Timer"
getlabel myspellbook SpellbookLabel
wait 250
for 5
if "unidentified" in SpellbookLabel or "[blessed" in SpellbookLabel
ignore myspellbook
if findtype "spellbook" self as myspellbook
getlabel myspellbook SpellbookLabel
elseif not cooldown "Inventory Timer"
overhead "[ NO SPELLBOOK! ]" 337
cooldown "Inventory Timer" 10000
sysmsg "Disable 'EnableWeaponWarning' in script variables to turn off this feature!" 0
break
endif
endif
endfor
endif
endif
if AllInventoryMessage = 1 and not cooldown "Inventory Timer"
if counttype "Yellow Potion" self = 0 and YellowInventoryMessage = 1
overhead "[ RESTOCK HEAL POTS! ]" 253
cooldown "Inventory Timer" 10000
sysmsg "Disable YellowInventoryMessage in script variables to turn off this overhead message!" 0
endif
if counttype "Orange Potion" self = 0 and OrangeInventoryMessage = 1
overhead "[ RESTOCK CURE POTS! ]" 44
cooldown "Inventory Timer" 10000
sysmsg "Disable OrangeInventoryMessage in script variables to turn off this overhead message!" 0
endif
if counttype "Red Potion" self = 0 and RedInventoryMessage = 1
overhead "[ RESTOCK REFRESH POTS! ]" 37
cooldown "Inventory Timer" 10000
sysmsg "Disable RedInventoryMessage in script variables to turn off this overhead message!" 0
endif
if counttype "White Potion" self = 0 and WhiteInventoryMessage = 1
overhead "[ RESTOCK STRENGTH POTS! ]" 956
cooldown "Inventory Timer" 10000
sysmsg "Disable WhiteInventoryMessage in script variables to turn off this overhead message!" 0
endif
if counttype "Blue Potion" self = 0 and BlueInventoryMessage = 1
overhead "[ RESTOCK AGILITY POTS! ]" 93
cooldown "Inventory Timer" 10000
sysmsg "Disable BlueInventoryMessage in script variables to turn off this overhead message!" 0
endif
if counttype "Black Potion" self = 0 and BlackInventoryMessage = 1
overhead "[ RESTOCK MAGIC RESIST POTS! ]" 0
cooldown "Inventory Timer" 10000
sysmsg "Disable BlackInventoryMessage in script variables to turn off this overhead message!" 0
endif
if counttype "rope" self = 0 and RopeInventoryMessage = 1
overhead "[ RESTOCK ROPE! ]" 2799
cooldown "Inventory Timer" 10000
sysmsg "Disable RopeInventoryMessage in script variables to turn off this overhead message!" 0
endif
endif
@setvar! PaytheMan 1
if PaytheMan = 1 and not cooldown "Inventory Timer"
if find '0x6C0A02' 'ground' -1 -1 10 as VENDOR and not varexist EASTEREGG
overhead "Hey! I loooove your Harvest script!" 253
wait 1000
overhead "It makes me so much money, I should spend it all here!" 253
wait 2000
overhead ":)" 2086 VENDOR
wait 500
overhead "Well, thank you!" 2086 VENDOR
wait 2000
overhead "I'd be happy to take any donations! The chest beside me is public (shhh!) and master loves gifts!" 2086 VENDOR
wait 4500
overhead "Sign the guestbook!" 2086 VENDOR
wait 500
if find '0x4A38A441' 'ground' -1 -1 15 as DONATIONS
wait 500
overhead "(in this chest!)" 0 DONATIONS
endif
wait 2500
overhead "Good luck out there! Fuck PKs & thieves! :)" 2086 VENDOR
setvar EASTEREGG 1
else
cooldown "Inventory Timer" 4000
if find '0x4A38A441' 'ground' -1 -1 15 as DONATIONS
overhead "DONATIONS!" 253 DONATIONS
overhead "▼" 253 DONATIONS
endif
endif
endif
if EnableMushroomMaker = 1
if skill "Magery" >= 80 and counttype "mushroom" self = 0
if skill "Magery" >= 80 and not findtype "spellbook" hand and findtype "spellbook" backpack as myspellbook
getlabel myspellbook SpellbookLabel
for 5
wait 250
if "unidentified" in SpellbookLabel or "[blessed" in SpellbookLabel
ignore myspellbook
if skill "Magery" > 80 and not findtype "spellbook" hand and findtype "spellbook" backpack as myspellbook
getlabel myspellbook SpellbookLabel
endif
endif
endfor
dclick myspellbook
wait 250
endif
overhead "Hang on, I need to make some shrooms..." 2086
wait 1000
for 100
if counttype "Ginseng" self > 0 and counttype "Garlic" self > 0 and counttype "Mandrake Root%s%" self > 0 and mana >= 4
cast "create food"
wait 100
while casting
wait 50
endwhile
if counttype "mushroom" self >= MakeMushroomAmount
break
endif
else
overhead "...I'm out of regs!" 2086
@setvar! TimeToGo 1
replay
endif
endfor
overhead "There, that's better!" 2086
wait 500
endif
else
if not cooldown "Inventory Timer"
overhead "Disable EnableMushroomMaker in script variables to turn off this feature!" 0
cooldown "Inventory Timer" 10000
endif
endif
endif
if EnableCheeseTimer = 1
if not findbuff 'food satisfaction' and findtype "wedge%s% of cheese|fish steak%s%" self
overhead "Hold on, I shouldn't do this on an empty stomach..." 2086
wait 500
if findtype "wedge%s% of cheese|fish steak%s%" backpack as food
overhead "* eating food... *" 0
dclick food
wait 1500
overhead "Ok, I'm ready to get to work!" 2086
endif
endif
endif
if EnableEatFood = 1
if not findbuff 'food satisfaction' and findtype "tray" self
overhead "Hold on, I'm hungry..." 2086
wait 1000
if findtype "tray" backpack as food
overhead "* eating food... *" 0
dclick food
wait 1500
overhead "Ok, I'm ready to get to work!" 2086
endif
endif
endif
if EnableToolCountdown = 1
if findtype 'pickaxe|hatchet' hand as MyAxe
getlabel MyAxe AxeLabel
if '(5 uses' in AxeLabel or '(4 uses' in AxeLabel or '(3 uses' in AxeLabel or '(2 uses' in AxeLabel or '(1 use' in AxeLabel
if EnableRecycleTool = 0
sysmsg "YOUR TOOL IS ABOUT TO BREAK....." 153
endif
if EnableRecycleTool = 1
sysmsg "YOUR TOOL IS ABOUT TO BE RECYCLED....." 93
endif
endif
endif
endif
if EnableRecycleTool = 1
if findtype 'tool kit' self as ToolKit
if findtype 'pickaxe|hatchet' hand as MyAxe
getlabel MyAxe AxeLabel
if '(2 use' in AxeLabel
overhead "[ RECYCLING TOOL! ]" 93
clearhands both
wait 250
if not gumpexists 949095101
dclick ToolKit
waitforgump 949095101 2000
endif
for 5
gumpresponse 3 949095101
wait 250
if insysmsg "Target an individual item"
target MyAxe
wait 250
gumpclose 949095101
wait 1000
overhead "Every little bit counts..." 2086
hotkey 'Organizer Agent-03'
replay
else
gumpresponse 2
wait 250
endfor
endif
endif
endif
endif
if not findtype 'tool kit' self and not cooldown "Inventory Timer"
overhead "[ NO TOOL KIT! ]" 337
cooldown "Inventory Timer" 15000
sysmsg "Disable 'EnableRecycleTool' in script variables to turn off this overhead message!" 0
endif
endif
if insysmsg "As the owner" or insysmsg "Your house and its contents"
wait 1000
if find MyDoor ground -1 -1 2
overhead "* door slams! *" 0 MyDoor
dclick MyDoor
wait 500
endif
endif
clearsysmsg
hotkey 'Cancel Current Target'
if EnableAutoAttackGreyMOB = 1
if warmode
overhead "* cracks knuckles... *" 2128
if skill "Mace Fighting" > 50 and not findtype "sledgehammer|giant club|flail|cudgel|quarter staff|war mace|maul|war axe|mace|hammer pick" hand and findtype "sledgehammer|giant club|flail|cudgel|quarter staff|war mace|maul|war axe|mace|hammer pick" backpack as weapon
getlabel weapon WeaponLabel
for 5
wait 100
if "unidentified" in WeaponLabel
ignore weapon
if skill "Mace Fighting" > 50 and not findtype "sledgehammer|giant club|flail|cudgel|quarter staff|war mace|maul|war axe|mace|hammer pick" hand and findtype "sledgehammer|giant club|flail|cudgel|quarter staff|war mace|maul|war axe|mace|hammer pick" backpack as weapon
getlabel weapon WeaponLabel
endif
endif
endfor
dclick weapon
wait 100
endif
if skill "Swordsmanship" > 50 and not findtype "double axe|two handed axe|battle axe|halberd|katana|bardiche|cutlass|broadsword|scimitar|viking sword|longsword" hand and findtype "double axe|two handed axe|battle axe|halberd|katana|bardiche|cutlass|broadsword|scimitar|viking sword|longsword" backpack as weapon
getlabel weapon WeaponLabel
for 5
wait 100
if "unidentified" in WeaponLabel
ignore weapon
if skill "Swordsmanship" > 50 and not findtype "double axe|two handed axe|battle axe|halberd|katana|bardiche|cutlass|broadsword|scimitar|viking sword|longsword" hand and findtype "double axe|two handed axe|battle axe|halberd|katana|bardiche|cutlass|broadsword|scimitar|viking sword|longsword" backpack as weapon
getlabel weapon WeaponLabel
endif
endif
endfor
dclick weapon
wait 100
endif
if skill "Magery" >= 80 and not findtype "spellbook" hand and findtype "spellbook" backpack as spellbook
getlabel spellbook SpellbookLabel
for 5
wait 100
if "unidentified" in SpellbookLabel or "[blessed" in SpellbookLabel
ignore spellbook
if skill "Magery" > 80 and not findtype "spellbook" hand and findtype "spellbook" backpack as spellbook
getlabel spellbook SpellbookLabel
endif
endif
endfor
dclick spellbook
wait 100
endif
clearsysmsg
for 1000
hotkey 'Target Closest Non-Friendly Monster'
wait 500
if insysmsg "No one matching that was found"
hotkey 'Cancel Current Target'
@setvar CurrentTarget 0
wait 750
overhead "Is there no one else??" 2086
wait 2000
overhead "Alright then, I guess it's back to work..." 2086
hotkey 'Toggle Peace Only'
hotkey 'Clear Target Queue'
clearsysmsg
replay
endif
@setvar CurrentTarget lasttarget
getlabel CurrentTarget TargetDesc
while not dead CurrentTarget
if EnableRedAlertRecall = 1
if insysmsg "Now tracking" or insysmsg "Distance to destination"
@setvar! TimeToGo 1
hotkey 'Toggle Peace Only'
hotkey 'Clear Target Queue'
clearsysmsg
replay
endif
endif
if not cooldown "Target Timer"
if "Paragon" in TargetDesc
overhead " ▼ PARAGON! ▼ " 12 CurrentTarget
cooldown "Target Timer" 4000
else
overhead " ▼ TARGET ▼ " 253 CurrentTarget
cooldown "Target Timer" 4000
endif
endif
if not warmode
overhead "I don't have time for this shit..." 2086
wait 1000
replay
endif
// DEFENSIVE LOOP:
if skill 'Healing' > 50 and not bandaging and hits < maxhits
overhead '* applying bandages... *' 88
hotkey "Bandage Self"
wait 250
endif
if EnableCurePotion = 1
if poisoned and not cooldown "Cure Potion" and hits < CurePotHP
if findtype "Orange Potion" self as curepot
overhead '* drinking cure potion... *' 44
dclick curepot
cooldown "Cure Potion" 10500
wait 250
else
overhead "[ NO CURE POTS! ]" 337
endif
endif
endif
if EnableHealPotion = 1
if hits < HealPotHP and not cooldown "Healing Potion"
if findtype "Yellow Potion" self as healpot
overhead '* drinking heal potion... *' 253
dclick healpot
cooldown "Healing Potion" 10500
wait 250
else
overhead '[ NO HEAL POTS! ]' 337
endif
endif
endif
if EnableRefreshPotion = 1
if diffstam >= RefreshPotSPdiff and not cooldown "Refresh Potion"
if findtype "Red Potion" self as refreshpot
overhead '* drinking refresh potion... *' 34
dclick refreshpot
cooldown "Refresh Potion" 10500
wait 250
else
overhead '[ NO REFRESH POTS! ]' 337
endif
endif
endif
if EnableMagicResistPotion = 1
if not findbuff "Magic Resist Potion"
if findtype "Black Potion" self as magicresistpot
overhead '* drinking resist potion... *' 0
dclick magicresistpot
wait 250
else
overhead '[ NO RESIST POTS! ]' 337
wait 500
endif
wait 1000
endif
endif
if EnableStrengthPotion = 1
if not findbuff "Strength"
if findtype "White Potion" self as strengthpot
overhead '* drinking strength potion... *' 956
dclick strengthpot
wait 250
else
overhead '[ NO STRENGTH POTS! ]' 337
wait 500
endif
wait 1000
endif
endif
if EnableAgilityPotion = 1
if not findbuff "Agility"
if findtype "Blue Potion" self as agilitypot
overhead '* drinking agility potion... *' 93
dclick agilitypot
wait 250
else
overhead '[ NO AGILITY POTS! ]' 337
wait 500
endif
wait 1000
endif
endif
if EnableCastHeal = 1
if not findtype "spellbook" hand and findtype "spellbook" backpack as myspellbook
getlabel myspellbook SpellbookLabel
for 5
wait 100
if "unidentified" in SpellbookLabel or "[blessed" in SpellbookLabel
ignore myspellbook
if not findtype "spellbook" hand and findtype "spellbook" self as myspellbook
getlabel myspellbook SpellbookLabel
else
overhead "[ NO SPELLBOOK! ]" 337
break
endif
endif
endfor
dclick myspellbook
wait 250
endif
if skill 'Magery' >= 40 and diffhits > CastHealHPmeddiff and diffhits < CastHealHPhighdiff and mana >= 4
cast 'Heal'
wait 100
while not casting
if targetexists
hotkey 'cancel current target'
endif
cast 'Heal'
wait 100
endwhile
wft 1500
target 'self'
wait 250
elseif skill 'Magery' >= 60 and diffhits > CastHealHPhighdiff and mana >= 11
cast 'Greater Heal'
wait 100
while not casting
if targetexists
hotkey 'cancel current target'
endif
cast 'Greater Heal'
wait 100
endwhile
wft 1500
target 'self'
wait 250
elseif skill 'Magery' >= 40 and diffhits > CastHealHPhighdiff and mana >= 4 and mana < 11
cast 'Heal'
wait 100
while not casting
if targetexists
hotkey 'cancel current target'
endif
cast 'Heal'
wait 100
endwhile
wft 1500
target 'self'
wait 250
endif
endif
if EnableCastCure = 1
if poisoned and skill 'Magery' >= 40 and mana >= 6
if not findtype "spellbook" hand and findtype "spellbook" backpack as myspellbook
getlabel myspellbook SpellbookLabel
for 5
wait 100
if "unidentified" in SpellbookLabel or "[blessed" in SpellbookLabel
ignore myspellbook
if not findtype "spellbook" hand and findtype "spellbook" self as myspellbook
getlabel myspellbook SpellbookLabel
else
overhead "[ NO SPELLBOOK! ]" 337
break
endif
endif
endfor
dclick myspellbook
wait 250
endif
cast 'Cure'
wait 100
while not casting
if targetexists
hotkey 'cancel current target'
endif
cast 'Cure'
wait 100
endwhile
wft 1500
target 'self'
wait 100
endif
endif
if paralyzed and EnableParalyzePouch = 1
overhead "[[[[ POP ]]]]" 2117
say "[pouch"
@setvar! TimeToGo 1
replay
endif
if EnableProtection = 1
if skill 'Magery' >= 40 and not findbuff 'Protection' and mana >= 90
for 3
cast 'Protection'
wait 100
while casting
wait 50
endwhile
if cooldown "Spell Fail"
overhead "Shit, let me try that again..." 2086
wait 500
else
break
endif
endfor
overhead "[ PROTECTION ACTIVE! ]" 77
wait 250
endif
endif
// OFFENSIVE LOOP:
if skill "Mace Fighting" or skill "Swordsmanship" > 50
attack CurrentTarget
wait 500
endif
if skill "Magery" >= 70
if EnableMagicMushroom = 1
if not timerexists MushroomTimer
settimer MushroomTimer MushroomCooldown
endif
if mana < 50 and timer MushroomTimer >= MushroomCooldown and findtype "mushroom" backpack as magicmushroom
overhead "* eating shrooms... *" 31
dclick magicmushroom
wait 500
if insysmsg "You consume a magic mushroom and restore some mana."
settimer MushroomTimer 0
elseif insysmsg "before you may consume another magic mushroom" or insysmsg "been in combat with another"
settimer MushroomTimer 30000
endif
cooldown "Mushroom" MushroomCooldown
endif
endif
if not findtype "spellbook" hand and findtype "spellbook" backpack as myspellbook
getlabel myspellbook SpellbookLabel
for 5
wait 100
if "unidentified" in SpellbookLabel or "[blessed" in SpellbookLabel
ignore myspellbook
if not findtype "spellbook" hand and findtype "spellbook" self as myspellbook
getlabel myspellbook SpellbookLabel
else
overhead "[ NO SPELLBOOK! ]" 337
break
endif
endif
endfor
dclick myspellbook
wait 250
endif
wait 500
if not find CurrentTarget ground -1 -1 15
if not cooldown "Move Timer"
overhead "Did we get it??" 2086
wait 500
if EnableSummons = 1 and followers > 1
wait 1000
overhead "I believe that was MY kill, Master..." 1909 myMainTankPet
wait 500
endif
cooldown "Move Timer" 5000
endif
else
if mana >= 4 and EnableCastWeaken = 1 and not cooldown "WeakenCD"
if not find CurrentTarget ground -1 -1 15 or diffhits >= 30
hotkey '> Interrupt'
break
else
cast 'weaken'
wait 100
while casting
wait 50
endwhile
endif
wft 2500
target CurrentTarget
wait 250
if insysmsg "cannot be seen"
overhead "I can't see that!" 2086
wait 500
else
cooldown WeakenCD WeakenCooldown
endif
elseif mana >= 4 and EnableCastMagicArrow = 1 and not cooldown "MagicArrowCD"
if not find CurrentTarget ground -1 -1 15 or diffhits >= 30
hotkey '> Interrupt'
break
else
cast 'magic arrow'
wait 100
while casting
wait 50
endwhile
endif
wft 2500
target CurrentTarget
wait 250
if insysmsg "cannot be seen"
overhead "I can't see that!" 2086
wait 500
else
cooldown MagicArrowCD MagicArrowCooldown
endif
elseif mana >= 6 and EnableCastHarm = 1 and not cooldown "HarmCD"
if not find CurrentTarget ground -1 -1 15 or diffhits >= 30
hotkey '> Interrupt'
break
else
cast 'harm'
wait 100
while casting
wait 50
endwhile
endif
wft 2500
target CurrentTarget
wait 250
if insysmsg "cannot be seen"
overhead "I can't see that!" 2086
wait 500
else
cooldown HarmCD HarmCooldown
endif
elseif mana >= 11 and EnableCastCurse = 1 and not cooldown "CurseCD"
if not find CurrentTarget ground -1 -1 15 or diffhits >= 30
hotkey '> Interrupt'
break
else
cast 'curse'
wait 100
while casting
wait 50
endwhile
endif
wft 2500
target CurrentTarget
wait 250
if insysmsg "cannot be seen"
overhead "I can't see that!" 2086
wait 500
else
cooldown CurseCD CurseCooldown
endif
elseif mana >= 20 and EnableCastExplosion = 1 and not cooldown "ExplosionCD"
if not find CurrentTarget ground -1 -1 15 or diffhits >= 30
hotkey '> Interrupt'
break
else
cast 'Explosion'
wait 100
while casting
wait 50
endwhile
endif
wft 2500
target CurrentTarget
wait 250
if insysmsg "cannot be seen"
overhead "I can't see that!" 2086
wait 500
else
cooldown ExplosionCD ExplosionCooldown
endif
elseif mana >= 20 and EnableCastEnergyBolt = 1 and not cooldown "EnergyBoltCD"
if not find CurrentTarget ground -1 -1 15 or diffhits >= 30
hotkey '> Interrupt'
break
else
cast 'Energy Bolt'
wait 100
while casting
wait 50
endwhile
endif
wft 2500
target CurrentTarget
wait 250
if insysmsg "cannot be seen"
overhead "I can't see that!" 2086
wait 500
else
cooldown EnergyBoltCD EnergyBoltCooldown
endif
elseif mana >= 14 and EnableCastMindblast = 1 and not cooldown "MindblastCD"
if not find CurrentTarget ground -1 -1 15 or diffhits >= 30
hotkey '> Interrupt'
break
else
cast 'mindblast'
wait 100
while casting
wait 50
endwhile
endif
wft 2500
target CurrentTarget
wait 250
if insysmsg "cannot be seen"
overhead "I can't see that!" 2086
wait 500
else
cooldown MindblastCD MindblastCooldown
endif
elseif mana >= 11 and EnableCastLightning = 1 and not cooldown "LightningCD"
if not find CurrentTarget ground -1 -1 15 or diffhits >= 30
hotkey '> Interrupt'
break
else
cast 'Lightning'
wait 100
while casting
wait 50
endwhile
endif
wft 2500
target CurrentTarget
wait 250
if insysmsg "cannot be seen"
overhead "I can't see that!" 2086
wait 500
else
cooldown LightningCD LightningCooldown
endif
elseif mana >= 40 and EnableCastFlamestrike = 1 and not cooldown "FlamestrikeCD"
if not find CurrentTarget ground -1 -1 15 or diffhits >= 30
hotkey '> Interrupt'
break
else
cast 'flamestrike'
wait 100
while casting
wait 50
endwhile
endif
wft 2500
target CurrentTarget
wait 250
if insysmsg "cannot be seen"
overhead "I can't see that!" 2086
wait 500
else
cooldown FlamestrikeCD FlamestrikeCooldown
endif
elseif mana >= 9 and EnableCastFireball = 1 and not cooldown "FireballCD"
if not find CurrentTarget ground -1 -1 15 or diffhits >= 30
hotkey '> Interrupt'
break
else
cast 'fireball'
wait 100
while casting
wait 50
endwhile
endif
wft 2500
target CurrentTarget
wait 250
if insysmsg "cannot be seen"
overhead "I can't see that!" 2086
wait 500
else
cooldown FireballCD FireballCooldown
endif
elseif mana >= 40 and EnableCastMeteorSwarm = 1 and not cooldown "MeteorSwarmCD"
if not find CurrentTarget ground -1 -1 15 or diffhits >= 30
hotkey '> Interrupt'
break
else
cast 'meteor swarm'
wait 100
while casting
wait 50
endwhile
endif
wft 2500
target CurrentTarget
wait 250
if insysmsg "cannot be seen"
overhead "I can't see that!" 2086
wait 500
else
cooldown MeteorSwarmCD MeteorSwarmCooldown
endif
elseif mana >= 40 and EnableCastChainLightning = 1 and not cooldown "ChainLightningCD"
if not find CurrentTarget ground -1 -1 15 or diffhits >= 30
hotkey '> Interrupt'
break
else
cast 'chain lightning'
wait 100
while casting
wait 50
endwhile
endif
wft 2500
target CurrentTarget
wait 250
if insysmsg "cannot be seen"
overhead "I can't see that!" 2086
wait 500
else
cooldown ChainLightningCD ChainLightningCooldown
endif
endif
wait 500
endif
endif
endwhile
wait 500
if insysmsg "You have gained"
overhead "Did you see that?? I just killed {{TargetDesc}}!" 2086
hotkey 'Cancel Current Target'
@setvar CurrentTarget 0
wait 500
if skill "Spirit Speak" >= 80 and not cooldown "Spirit Speak"
useskill "spiritspeak"
cooldown "Spirit Speak" 10500
wait 500
endif
endif
if findtype 'Elven SpellBlade' backpack and EnableAutoCarving = 1
if findtype "corpse" ground -1 -1 2 as corpse
hotkey 'Cancel Current Target'
dclicktype "Elven Spellblade"
wft 1500
target self
overhead "* skinning {{TargetDesc}}... *" 339
@ignore corpse
endif
endif
if insysmsg "You have unlocked a codex upgrade point"
overhead "[ CODEX POINT UNLOCKED! ]" 2114
if EnableSummons = 1 and followers > 1
wait 1000
overhead "Well done, Master..." 44 myMainTankPet
menu myMainTankPet 3
endif
endif
if insysmsg "unlocked a point for your wizard's grimoire"
overhead "[ GRIMOIRE POINT UNLOCKED! ]" 7
if EnableSummons = 1 and followers > 1
wait 1000
overhead "You seem stronger, Master..." 44 myMainTankPet
menu myMainTankPet 3
endif
endif
if insysmsg "enough experience to upgrade"
overhead "[ ASPECT TIER UNLOCKED! ]" 2086
if EnableSummons = 1 and followers > 1
wait 500
overhead "Time to spend some more gold, it would seem..." 44 myMainTankPet
menu myMainTankPet 3
wait 500
endif
endif
if insysmsg "upgrade point for Fire Elemental" or insysmsg "upgrade point for Air Elemental" or insysmsg "upgrade point for Water Elemental" or insysmsg "upgrade point for Earth Elemental" and EnableSummons = 1 and followers > 1
overhead "Hmm.. I suddenly feel stronger!" 44 myMainTankPet
menu myMainTankPet 3
wait 500
overhead "* cracks knuckles... *" 0 myMainTankPet
endif
if insysmsg "something invisible out of the way"
overhead "[ ▼ SOMEONE HIDDEN! ▼ ]" 6
if EnableSummons = 1 and followers > 1
wait 500
overhead "There is a foul stench upon the air..." 44 myMainTankPet
menu myMainTankPet 3
wait 500
endif
endif
if paralyzed and EnableParalyzePouch = 1
overhead "[[[[ POP ]]]]" 2117
say "[pouch"
@setvar! TimeToGo 1
if EnableSummons = 1 and followers > 1
overhead "That was unwise, criminal..." 44 myMainTankPet
menu myMainTankPet 3
clearsysmsg
endif
endif
if skill "Spirit Speak" >= 80 and not cooldown "Spirit Speak"
useskill "spiritspeak"
cooldown "Spirit Speak" 10500
wait 500
endif
if not findbuff "Actively Meditating" and mana < 30 and diffhits < 30
clearhands both
hotkey "Meditation"
wait 100
while mana < 50
if EnableRedAlertRecall = 1
if insysmsg "Now tracking" or insysmsg "Distance to destination"
@setvar! TimeToGo 1
hotkey 'Toggle Peace Only'
hotkey 'Clear Target Queue'
clearsysmsg
replay
endif
endif
if diffhits > 30
break
elseif not cooldown "Move Timer"
overhead "* meditating... *" 12
cooldown "Move Timer" 4000
endif
if not warmode
overhead "I need to get back to work..." 2086
wait 1000
replay
endif
endwhile
endif
endfor
hotkey 'Cancel Current Target'
@setvar! TimeToGo 1
replay
if skill "Mace Fighting" > 50 and not findtype "sledgehammer|giant club|flail|cudgel|quarter staff|war mace|maul|war axe|mace|hammer pick" self or skill "Swordsmanship" > 50 and not findtype "double axe|two handed axe|battle axe|halberd|katana|bardiche|cutlass|broadsword|scimitar|viking sword|longsword" self
overhead "I can't fight without a weapon!" 2086
hotkey 'Toggle Peace Only'
hotkey 'Cancel Current Target'
@setvar! TimeToGo 1
replay
endif
hotkey 'Cancel Current Target'
hotkey 'Toggle Peace Only'
replay
endif
endif
////////////////////////////////
// MINING SCRIPT STARTS HERE: //
////////////////////////////////
if not dead and skill "Mining" > 49.9 and EnableMining = 1 and not cooldown "Travel"
if EnablePlayerForgeRadar = 1
if findtype "4017|6526|6538|6550|6562" ground -1 -1 15 as forge or findtype 0x0FB1 ground -1 -1 15 as forge and findtype "iron ore" backpack and not cooldown "Forge Radar"
overhead "[ FORGE HERE! ]" 44 forge
overhead "▼" 44 forge
cooldown "Forge Radar" 3500
endif
endif
if EnableOreVacuum = 1
if findtype "iron ore" ground -1 -1 15 as droppedore and not cooldown "Ore Radar"
overhead "[ ORE ]" 93 droppedore
overhead "▼" 93 droppedore
cooldown "Ore Radar" 3500
endif
if findtype "iron ingot%s" ground -1 -1 15 as droppedingots and not cooldown "Ore Radar"
overhead "[ INGOTS ]" 69 droppedingots
overhead "▼" 69 droppedingots
cooldown "Ore Radar" 3500
endif
if findtype "iron ore|iron ingot%s" ground -1 -1 2 as droppedmetal and not cooldown "Ore Vacuum"
overhead "[ CLEANUP... ]" 93
hotkey "Grab Item"
wft 2500
target droppedmetal
wait 250
if insysmsg "Invalid or inaccessible item"
overhead "I can't get to that!" 2086
wait 250
@ignore droppedmetal
endif
hotkey 'Organizer Agent-03'
cooldown "Ore Vacuum" 500
endif
endif
if counttype "iron ingot%s" > IngotRecallAmount and EnableIngotAutoRecall = 1
overhead "I'd hate to lose all this hard work..." 2086
wait 2500
overhead "I'm going to go unload before it's too late!" 2086
sysmsg "Disable 'EnableIngotAutoRecall' in script variables to turn off this feature!" 0
wait 2000
@setvar! TimeToGo 1
replay
endif
if EnableAutoSmeltNaturalForge = 1
if findtype "iron ore" backpack as ore and Working = 0
@setvar! ForgeFound 0
if not timerexists AutoSmeltNaturalForgeTimer
settimer AutoSmeltNaturalForgeTimer 8500
endif
if timer AutoSmeltNaturalForgeTimer >= 8500
dclick ore
wait 250
if insysmsg "You do not see any nearby forges"
settimer AutoSmeltNaturalForgeTimer 0
clearsysmsg
else
@setvar! ForgeFound 1
wait 250
clearsysmsg
endif
endif
for 11
if ForgeFound = 1 and findtype "iron ore" backpack as ore
dclick ore
wait 500
if insysmsg "You do not see any nearby forges"
settimer AutoSmeltNaturalForgeTimer 0
@setvar! ForgeFound 0
clearsysmsg
replay
endif
hotkey 'Organizer Agent-03'
wait 500
endif
endfor
endif
endif
if EnableAutoSmeltPlayerForge = 1
for 10
if findtype "forge" ground -1 -1 2 as forge or findtype 0x0FB1 ground -1 -1 2 as forge and findtype "iron ore" backpack as ore
overhead "* smelting ore... *" 2114 forge
dclick ore
overhead "* forging ingots... *" 2117
wait 1000
if insysmsg "You do not see any nearby forges"
settimer AutoSmeltNaturalForgeTimer 0
@setvar! ForgeFound 0
replay
endif
hotkey 'Organizer Agent-03'
wait 500
endif
endfor
endif
if EnableWeightWarningMessage = 1 and not cooldown "Weight Timer"
if weight > GreenWarningWeight and weight < YellowWarningWeight
overhead "[ WEIGHT WARNING! ]" 77
cooldown "Weight Timer" 3500
endif
if weight > YellowWarningWeight and weight < RedWeightLimit
overhead "[ TIME TO FORGE! ]" 149
cooldown "Weight Timer" 3500
endif
if weight > RedWeightLimit
@setvar! Working 0
overhead "[ WEIGHT LIMIT REACHED!!! ]" 337
wait 2000
overhead "Find a forge in order to continue..." 0
wait 1000
replay
endif
endif
if not findtype 'pickaxe' hand and findtype 'pickaxe' backpack
dclicktype 'pickaxe' backpack
wait 250
endif
hotkey 'Use item in hand'
wft 500
hotkey 'Target Self'
if insysmsg "Now tracking" or insysmsg "Distance to destination"
@setvar! TimeToGo 1
replay
elseif insysmsg 'world is saving'
for 40
wait 100
if insysmsg 'world save complete'
overhead '[ SAVE COMPLETE! ]' 253
clearsysmsg
replay
endif
endfor
clearsysmsg
replay
elseif insysmsg 'Harvesting is not allowed'
overhead 'You need to leave town...' 84
clearsysmsg
wait 5000
replay
elseif insysmsg 'You have worn out your tool'
overhead "My pickaxe broke!" 2086
wait 1500
clearsysmsg
replay
elseif insysmsg "You must wait"
clearsysmsg
replay
elseif insysmsg "must wait 59"
cooldown "Travel" 59000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 58"
cooldown "Travel" 58000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 57"
cooldown "Travel" 57000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 56"
cooldown "Travel" 56000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 55"
cooldown "Travel" 55000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 54"
cooldown "Travel" 54000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 53"
cooldown "Travel" 53000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 52"
cooldown "Travel" 52000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 51"
cooldown "Travel" 51000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 50"
cooldown "Travel" 50000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 49"
cooldown "Travel" 49000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 48"
cooldown "Travel" 48000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 47"
cooldown "Travel" 47000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 46"
cooldown "Travel" 46000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 45"
cooldown "Travel" 45000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 44"
cooldown "Travel" 44000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 43"
cooldown "Travel" 43000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 42"
cooldown "Travel" 42000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 41"
cooldown "Travel" 41000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 40"
cooldown "Travel" 40000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 39"
cooldown "Travel" 39000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 38"
cooldown "Travel" 38000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 37"
cooldown "Travel" 37000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 36"
cooldown "Travel" 36000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 35"
cooldown "Travel" 35000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 34"
cooldown "Travel" 34000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 33"
cooldown "Travel" 33000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 32"
cooldown "Travel" 32000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 31"
cooldown "Travel" 31000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 30"
cooldown "Travel" 30000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 29"
cooldown "Travel" 29000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 28"
cooldown "Travel" 28000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 27"
cooldown "Travel" 27000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 26"
cooldown "Travel" 26000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 25"
cooldown "Travel" 25000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 24"
cooldown "Travel" 24000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 23"
cooldown "Travel" 23000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 22"
cooldown "Travel" 22000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 21"
cooldown "Travel" 21000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 20"
cooldown "Travel" 20000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 19"
cooldown "Travel" 19000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 18"
cooldown "Travel" 18000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 17"
cooldown "Travel" 17000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 16"
cooldown "Travel" 16000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 15"
cooldown "Travel" 15000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a little bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 14"
cooldown "Travel" 14000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a little bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 13"
cooldown "Travel" 13000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a little bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 12"
cooldown "Travel" 12000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a little bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 11"
cooldown "Travel" 11000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a little bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 10"
cooldown "Travel" 10000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a few more seconds to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 9"
cooldown "Travel" 9000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a few more seconds to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 8"
cooldown "Travel" 8000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a few more seconds to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 7"
cooldown "Travel" 7000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a few more seconds to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 6"
cooldown "Travel" 6000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a few more seconds to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 5"
cooldown "Travel" 5000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a few more seconds to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 4"
cooldown "Travel" 4000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a few more seconds to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 3"
cooldown "Travel" 3000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a few more seconds to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 2"
cooldown "Travel" 2000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a couple more seconds to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 1"
cooldown "Travel" 1000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a second to recover!" 2086
clearsysmsg
replay
elseif insysmsg 'You do not see any' or insysmsg 'You cannot produce any'
@setvar! Working 0
if MOVE = 1
if not cooldown "Move Timer"
@setvar! MOVE 0
overhead "[ KEEP MOVING... ]" 153
cooldown "Move Timer" 2500
endif
if EnableSatchels = 1
if findtype "Ginseng|Garlic|Blood Moss|Sulfurous Ash|Mandrake Root%s%|Nightshade|Black Pearl%s%|Spider's Silk" backpack and findtype "reagent satchel" self as MyWizardBag
if not cooldown "Satchel Timer"
menu MyWizardBag 0
wait 250
cooldown "Satchel Timer" 60000
endif
endif
if findtype "Yellow Potion|Orange Potion|Red Potion|White Potion|Blue Potion|Black Potion|" backpack and findtype 31262 self as MyPotBag
if not cooldown "Satchel Timer"
menu MyPotBag 0
wait 250
cooldown "Satchel Timer" 60000
endif
endif
endif
if insysmsg "Being perfectly rested"
overhead "Outta my way! I've got a pickaxe and know how to use it..." 2086
if EnableSummons = 1 and followers > 1
wait 1500
overhead "Shall we incinerate them, master?" 44 myMainTankPet
menu myMainTankPet 3
endif
endif
if insysmsg "Now tracking" or insysmsg "Distance to destination" and EnableRedAlertRecall = 1
@setvar! TimeToGo 1
replay
endif
if paralyzed and EnableParalyzePouch = 1
overhead "[[[[ POP ]]]]" 2117
say "[pouch"
@setvar! TimeToGo 1
replay
endif
if findtype 'iron ore|iron ingots' backpack
hotkey 'Organizer Agent-03'
endif
hotkey 'Organizer Agent-04'
replay
endif
if MOVE = 0
if not cooldown "Move Timer"
overhead "[ KEEP MOVING... ]" 44
cooldown "Move Timer" 2500
@setvar! MOVE 1
endif
if EnableSatchels = 1
if findtype "Ginseng|Garlic|Blood Moss|Sulfurous Ash|Mandrake Root%s%|Nightshade|Black Pearl%s%|Spider's Silk" backpack and findtype "reagent satchel" self as MyWizardBag
if not cooldown "Satchel Timer"
menu MyWizardBag 0
wait 250
cooldown "Satchel Timer" 60000
endif
endif
if findtype "Yellow Potion|Orange Potion|Red Potion|White Potion|Blue Potion|Black Potion|" backpack and findtype 31262 self as MyPotBag
if not cooldown "Satchel Timer"
menu MyPotBag 0
wait 250
cooldown "Satchel Timer" 60000
endif
endif
endif
if insysmsg "Being perfectly rested"
overhead "Move it! I've got work to do" 2086
if EnableSummons = 1 and followers > 1
wait 1000
overhead "* growls... *" 44 myMainTankPet
menu myMainTankPet 3
endif
endif
if insysmsg "Now tracking" or insysmsg "Distance to destination" and EnableRedAlertRecall = 1
@setvar! TimeToGo 1
replay
endif
if paralyzed and EnableParalyzePouch = 1
overhead "[[[[ POP ]]]]" 2117
say "[pouch"
@setvar! TimeToGo 1
replay
endif
if findtype 'iron ore|iron ingots' backpack
hotkey 'Organizer Agent-03'
endif
hotkey 'Organizer Agent-04'
replay
endif
clearsysmsg
@setvar! MOVE 1
wait 500
replay
endif
@setvar! Working 1
wait 250
while Working = 1
if warmode
replay
endif
if insysmsg "Mining skillgain"
if skill 'Mining' > 100.0 and skill 'Mining' < 119.9
sysmsg "Hmm... these stones are tricky to work with..." 84
elseif skill 'Mining' = 119.9
overhead "THIS COULD BE IT......" 2086
sysmsg "Hmm... there is something special about these stones..." 84
elseif skill 'Mining' = 120.0
overhead "FINALLY!!!" 2086
wait 2000
overhead "We made it!" 2086
wait 1500
clearsysmsg
overhead "[ TIME FOR A WELL DESERVED BREAK! ]" 337
stop
endif
endif
if EnableWeightWarningMessage = 1 and not cooldown "Weight Timer"
if weight > GreenWarningWeight and weight < YellowWarningWeight
overhead "[ WEIGHT WARNING! ]" 77
cooldown "Weight Timer" 3500
endif
if weight > YellowWarningWeight and weight < RedWeightLimit
overhead "[ TIME TO FORGE! ]" 149
cooldown "Weight Timer" 3500
endif
if weight > RedWeightLimit
@setvar! Working 0
overhead "[ WEIGHT LIMIT REACHED!!! ]" 337
wait 2000
overhead "Find a forge in order to continue..." 0
wait 1000
replay
endif
endif
if EnablePlayerForgeRadar = 1
if findtype "4017|6526|6538|6550|6562" ground -1 -1 15 as forge or findtype 0x0FB1 ground -1 -1 15 as forge and findtype "iron ore" backpack and not cooldown "Forge Radar"
overhead "[ FORGE HERE! ]" 44 forge
overhead "▼" 44 forge
cooldown "Forge Radar" 3500
endif
endif
if EnableSummons = 1
if dead myMainTankPet
if not dead earthOne
@setvar! myMainTankPet earthOne
elseif not dead earthTwo
@setvar! myMainTankPet earthTwo
elseif not dead waterOne
@setvar! myMainTankPet waterOne
elseif not dead waterTwo
@setvar! myMainTankPet waterTwo
elseif not dead demonOne
@setvar! myMainTankPet demonOne
elseif not dead demonTwo
@setvar! myMainTankPet demonTwo
elseif not dead fireOne
@setvar! myMainTankPet fireOne
elseif not dead fireTwo
@setvar! myMainTankPet fireTwo
elseif not dead airOne
@setvar! myMainTankPet airOne
elseif not dead airTwo
@setvar! myMainTankPet airTwo
endif
overhead "Hold on..." 2086
wait 500
replay
else
if not cooldown "Guard Timer"
if EnableSummons = 1 and GuardComment = 1 and followers > 1
overhead "I'll keep watch while you work, Master..." 44 myMainTankPet
menu myMainTankPet 3
@setvar! GuardComment 2
wait 500
cooldown "Guard Timer" 120000
elseif EnableSummons = 1 and GuardComment = 2 and followers > 1
overhead "* looks around menacingly... *" 2117 myMainTankPet
menu myMainTankPet 3
@setvar! GuardComment 3
wait 500
cooldown "Guard Timer" 120000
elseif EnableSummons = 1 and GuardComment = 3 and followers > 1
overhead "I see a red, Master! Oh wait.. nevermind... " 44 myMainTankPet
menu myMainTankPet 3
@setvar! GuardComment 4
wait 500
cooldown "Guard Timer" 120000
elseif EnableSummons = 1 and GuardComment = 4 and followers > 1
overhead "I don't like the look of that bird over there..." 44 myMainTankPet
menu myMainTankPet 3
wait 500
overhead "* growls... *" 0 myMainTankPet
@setvar! GuardComment 5
cooldown "Guard Timer" 120000
elseif EnableSummons = 1 and GuardComment = 5 and followers > 1
overhead "What time is lunch break?" 44 myMainTankPet
menu myMainTankPet 3
@setvar! GuardComment 6
wait 500
cooldown "Guard Timer" 120000
elseif EnableSummons = 1 and GuardComment = 6 and followers > 1
overhead "We should go fight something soon!" 44 myMainTankPet
menu myMainTankPet 3
@setvar! GuardComment 1
wait 500
cooldown "Guard Timer" 120000
endif
endif
endif
endif
if insysmsg "Now tracking" or insysmsg "Distance to destination"
@setvar! TimeToGo 1
clearsysmsg
replay
elseif insysmsg 'world is saving'
for 40
wait 100
if insysmsg 'world save complete'
wait 100
overhead '[ SAVE COMPLETE! ]' 253
clearsysmsg
break
endif
endfor
clearsysmsg
elseif insysmsg "You loosen some rocks"
overhead '* fail! *' 337
clearsysmsg
elseif insysmsg "You dig some iron ore"
overhead '* you harvest iron ore *' 1900
clearsysmsg
elseif insysmsg "You dig some dull copper ore"
overhead '* you harvest dull copper ore *' 2419
clearsysmsg
elseif insysmsg "You dig some shadowiron ore"
overhead '* you harvest shadow iron ore *' 2406
clearsysmsg
elseif insysmsg "You dig some copper ore"
overhead '* you harvest copper ore *' 2413
clearsysmsg
elseif insysmsg "You dig some bronze ore"
overhead '* you harvest bronze ore *' 2418
clearsysmsg
elseif insysmsg "You dig some golden ore"
overhead '* you harvest golden ore! *' 2213
clearsysmsg
elseif insysmsg "You dig some agapite ore"
overhead '* you harvest agapite ore! *' 2425
clearsysmsg
elseif insysmsg "You dig some verite ore"
overhead '* you harvest verite ore!! *' 2207
clearsysmsg
elseif insysmsg "You dig some valorite ore"
overhead '* you harvest valorite ore!! *' 2219
clearsysmsg
elseif insysmsg "You dig some avarite ore"
overhead '* you harvest avarite ore!!! *' 1763
clearsysmsg
elseif insysmsg 'You have worn out your tool'
overhead "They don't make em like they used too..." 2086
wait 500
clearsysmsg
replay
elseif insysmsg "travel"
replay
elseif insysmsg 'You do not see any' or insysmsg 'You cannot produce any'
overhead "[ TIME T0 MOVE! ]" 69
@setvar! Working 0
clearsysmsg
replay
endif
if not findtype 'pickaxe' hand and findtype 'pickaxe' backpack
dclicktype 'pickaxe' backpack
wait 250
endif
hotkey 'Use item in hand'
wft 500
hotkey 'Target Self'
wait 100
endwhile
replay
endif
////////////////////////////////
// LUMBER SCRIPT STARTS HERE: //
////////////////////////////////
if not dead and skill "Lumberjacking" > 49.9 and EnableLumberjacking = 1 and not cooldown "Travel"
if counttype "board%s" > BoardRecallAmount and EnableBoardAutoRecall = 1
overhead "I'd hate to lose all this hard work..." 2086
wait 2500
overhead "I'm going to go unload before it's too late!" 2086
sysmsg "Disable 'EnableBoardAutoRecall' in script variables to turn off this feature!" 0
wait 2000
@setvar! TimeToGo 1
replay
endif
if not findtype 'hatchet' self
overhead "I can't work with no hatchet!" 2086
wait 1500
@setvar! TimeToGo 1
replay
endif
if not findtype 'hatchet' hand and findtype 'hatchet' backpack
dclicktype 'hatchet' backpack
wait 250
endif
if EnableWeightWarningMessage = 1 and not cooldown "Weight Timer"
if weight > GreenWarningWeight and weight < YellowWarningWeight
overhead "[ WEIGHT WARNING! ]" 77
cooldown "Weight Timer" 3500
endif
if weight > YellowWarningWeight and weight < RedWeightLimit
overhead "[ TIME TO UNLOAD! ]" 149
cooldown "Weight Timer" 3500
endif
if weight > RedWeightLimit
overhead "[ WEIGHT LIMIT REACHED!!! ]" 337
wait 2000
overhead "Please reduce weight in order to continue..." 0
cooldown "Weight Timer" 3000
replay
endif
endif
hotkey 'Use item in hand'
waitfortarget 1500
hotkey 'Target Self'
wait 550
if insysmsg "Now tracking" or insysmsg "Distance to destination" and EnableRedAlertRecall = 1
@setvar! TimeToGo 1
replay
elseif insysmsg 'world is saving'
for 40
wait 100
if insysmsg 'world save complete'
wait 100
overhead '[ SAVE COMPLETE! ]' 253
clearsysmsg
endif
endfor
clearsysmsg
elseif insysmsg 'Harvesting is not allowed'
overhead 'You need to leave town...' 0
wait 5000
replay
elseif insysmsg 'You broke your axe'
overhead "My axe broke!" 2086
wait 1500
replay
elseif insysmsg "must wait 59"
cooldown "Travel" 59000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 58"
cooldown "Travel" 58000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 57"
cooldown "Travel" 57000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 56"
cooldown "Travel" 56000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 55"
cooldown "Travel" 55000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 54"
cooldown "Travel" 54000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 53"
cooldown "Travel" 53000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 52"
cooldown "Travel" 52000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 51"
cooldown "Travel" 51000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 50"
cooldown "Travel" 50000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 49"
cooldown "Travel" 49000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 48"
cooldown "Travel" 48000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 47"
cooldown "Travel" 47000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 46"
cooldown "Travel" 46000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 45"
cooldown "Travel" 45000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 44"
cooldown "Travel" 44000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 43"
cooldown "Travel" 43000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 42"
cooldown "Travel" 42000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 41"
cooldown "Travel" 41000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 40"
cooldown "Travel" 40000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 39"
cooldown "Travel" 39000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 38"
cooldown "Travel" 38000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 37"
cooldown "Travel" 37000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 36"
cooldown "Travel" 36000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 35"
cooldown "Travel" 35000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 34"
cooldown "Travel" 34000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 33"
cooldown "Travel" 33000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 32"
cooldown "Travel" 32000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 31"
cooldown "Travel" 31000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 30"
cooldown "Travel" 30000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 29"
cooldown "Travel" 29000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 28"
cooldown "Travel" 28000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 27"
cooldown "Travel" 27000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 26"
cooldown "Travel" 26000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 25"
cooldown "Travel" 25000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 24"
cooldown "Travel" 24000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 23"
cooldown "Travel" 23000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 22"
cooldown "Travel" 22000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 21"
cooldown "Travel" 21000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 20"
cooldown "Travel" 20000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 19"
cooldown "Travel" 19000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 18"
cooldown "Travel" 18000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 17"
cooldown "Travel" 17000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a minute to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 16"
cooldown "Travel" 16000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 15"
cooldown "Travel" 15000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a little bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 14"
cooldown "Travel" 14000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a little bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 13"
cooldown "Travel" 13000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a little bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 12"
cooldown "Travel" 12000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a little bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 11"
cooldown "Travel" 11000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a little bit longer to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 10"
cooldown "Travel" 10000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a few more seconds to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 9"
cooldown "Travel" 9000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a few more seconds to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 8"
cooldown "Travel" 8000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a few more seconds to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 7"
cooldown "Travel" 7000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a few more seconds to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 6"
cooldown "Travel" 6000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a few more seconds to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 5"
cooldown "Travel" 5000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a few more seconds to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 4"
cooldown "Travel" 4000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a few more seconds to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 3"
cooldown "Travel" 3000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a few more seconds to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 2"
cooldown "Travel" 2000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a couple more seconds to recover!" 2086
clearsysmsg
replay
elseif insysmsg "must wait 1"
cooldown "Travel" 1000
overhead "I'm tired from travelling..." 2086
wait 1500
overhead "Just give me a second to recover!" 2086
clearsysmsg
replay
elseif insysmsg "You must wait"
clearsysmsg
replay
elseif insysmsg 'You do not see any' or insysmsg 'You cannot produce any'
if MOVE = 1
if not cooldown "Move Timer"
overhead "[ KEEP MOVING... ]" 2128
cooldown "Move Timer" 2500
@setvar! MOVE 0
endif
if insysmsg "Now tracking" or insysmsg "Distance to destination" and EnableRedAlertRecall = 1
@setvar! TimeToGo 1
replay
endif
if paralyzed and EnableParalyzePouch = 1
overhead "[[[[ POP ]]]]" 2117
say "[pouch"
@setvar! TimeToGo 1
replay
endif
if EnableSatchels = 1
if findtype "Ginseng|Garlic|Blood Moss|Sulfurous Ash|Mandrake Root%s%|Nightshade|Black Pearl%s%|Spider's Silk" backpack and findtype "reagent satchel" self as MyWizardBag
if not cooldown "Satchel Timer"
menu MyWizardBag 0
wait 250
cooldown "Satchel Timer" 30000
endif
endif
if findtype "Yellow Potion|Orange Potion|Red Potion|White Potion|Blue Potion|Black Potion|" backpack and findtype 31262 self as MyPotBag
if not cooldown "Satchel Timer"
menu MyPotBag 0
wait 250
cooldown "Satchel Timer" 30000
endif
endif
endif
if insysmsg "As the owner" or insysmsg "Your house and its contents"
wait 1500
if find MyDoor ground -1 -1 2
overhead "* door slams! *" 0 MyDoor
dclick MyDoor
wait 500
endif
endif
for 10
if findtype 'log%s' backpack and LogsToBoards = 1
overhead '* making boards... *' 0
dclicktype 'log%s'
wait 500
endif
endfor
hotkey 'Organizer Agent-01'
wait 250
hotkey 'Organizer Agent-02'
replay
endif
if MOVE = 1
if not cooldown "Move Timer"
@setvar! MOVE 0
overhead "[ KEEP MOVING... ]" 153
cooldown "Move Timer" 2500
endif
if EnableSatchels = 1
if findtype "Ginseng|Garlic|Blood Moss|Sulfurous Ash|Mandrake Root%s%|Nightshade|Black Pearl%s%|Spider's Silk" backpack and findtype "reagent satchel" self as MyWizardBag
if not cooldown "Satchel Timer"
menu MyWizardBag 0
wait 250
cooldown "Satchel Timer" 60000
endif
endif
if findtype "Yellow Potion|Orange Potion|Red Potion|White Potion|Blue Potion|Black Potion|" backpack and findtype 31262 self as MyPotBag
if not cooldown "Satchel Timer"
menu MyPotBag 0
wait 250
cooldown "Satchel Timer" 60000
endif
endif
endif
if insysmsg "Being perfectly rested"
overhead "Outta my way! I've got a hatchet and know how to use it..." 2086
if EnableSummons = 1 and followers > 1
wait 1500
overhead "Shall we incinerate them, master?" 44 myMainTankPet
menu myMainTankPet 3
endif
endif
if insysmsg "Now tracking" or insysmsg "Distance to destination" and EnableRedAlertRecall = 1
@setvar! TimeToGo 1
replay
endif
if paralyzed and EnableParalyzePouch = 1
overhead "[[[[ POP ]]]]" 2117
say "[pouch"
@setvar! TimeToGo 1
replay
endif
for 10
if findtype 'log%s' backpack and LogsToBoards = 1
overhead '* making boards... *' 0
dclicktype 'log%s'
wait 500
endif
endfor
hotkey 'Organizer Agent-01'
wait 250
hotkey 'Organizer Agent-02'
replay
endif
if MOVE = 0
if not cooldown "Move Timer"
overhead "[ KEEP MOVING... ]" 44
cooldown "Move Timer" 2500
@setvar! MOVE 1
endif
if EnableSatchels = 1
if findtype "Ginseng|Garlic|Blood Moss|Sulfurous Ash|Mandrake Root%s%|Nightshade|Black Pearl%s%|Spider's Silk" backpack and findtype "reagent satchel" self as MyWizardBag
if not cooldown "Satchel Timer"
menu MyWizardBag 0
wait 250
cooldown "Satchel Timer" 60000
endif
endif
if findtype "Yellow Potion|Orange Potion|Red Potion|White Potion|Blue Potion|Black Potion|" backpack and findtype 31262 self as MyPotBag
if not cooldown "Satchel Timer"
menu MyPotBag 0
wait 250
cooldown "Satchel Timer" 60000
endif
endif
endif
if insysmsg "Being perfectly rested"
overhead "Move it! I've got work to do" 2086
if EnableSummons = 1 and followers > 1
wait 1000
overhead "* growls... *" 44 myMainTankPet
menu myMainTankPet 3
endif
endif
if insysmsg "Now tracking" or insysmsg "Distance to destination" and EnableRedAlertRecall = 1
@setvar! TimeToGo 1
replay
endif
if paralyzed and EnableParalyzePouch = 1
overhead "[[[[ POP ]]]]" 2117
say "[pouch"
@setvar! TimeToGo 1
replay
endif
for 10
if findtype 'log%s' backpack and LogsToBoards = 1
overhead '* making boards... *' 0
dclicktype 'log%s'
wait 500
endif
endfor
hotkey 'Organizer Agent-01'
wait 250
hotkey 'Organizer Agent-02'
replay
endif
clearsysmsg
@setvar! MOVE 1
replay
endif
overhead '* chopping wood... *' 2128
if insysmsg "Lumberjacking skillgain"
if skill 'Lumberjacking' > 100.0 and skill 'Lumberjacking' < 119.9
sysmsg "Hmm... this tree will really test my skills..." 84
elseif skill 'Lumberjacking' = 119.9
overhead "THIS COULD BE IT......" 2086
sysmsg "Hmm... there is something special about this tree..." 84
elseif skill 'Lumberjacking' = 120.0
overhead "FINALLY!!!" 2086
wait 2000
overhead "We made it!" 2086
wait 1500
clearsysmsg
overhead "[ TIME FOR A WELL DESERVED BREAK! ]" 337
stop
endif
endif
wait 3800
if insysmsg "Now tracking" or insysmsg "Distance to destination" and EnableRedAlertRecall = 1
@setvar! TimeToGo 1
replay
elseif insysmsg 'world is saving'
for 40
wait 100
if insysmsg 'world save complete'
wait 100
overhead '[ SAVE COMPLETE! ]' 253
clearsysmsg
endif
endfor
clearsysmsg
elseif insysmsg "You hack"
overhead '* fail... *' 337
replay
elseif insysmsg "You chop some logs"
overhead '* you harvest logs *' 349
replay
elseif insysmsg "You chop some dullwood logs"
overhead '* you harvest dullwood *' 2419
replay
elseif insysmsg "You chop some shadowwood logs"
overhead '* you harvest shadowwood *' 2406
replay
elseif insysmsg "You chop some copperwood logs"
overhead '* you harvest copperwood *' 2413
replay
elseif insysmsg "You chop some bronzewood logs"
overhead '* you harvest bronzewood *' 2418
replay
elseif insysmsg "You chop some goldenwood logs"
overhead '* you harvest goldenwood! *' 2213
replay
elseif insysmsg "You chop some rosewood logs"
overhead '* you harvest rosewood! *' 2425
replay
elseif insysmsg "You chop some verewood logs"
overhead '* you harvest verewood!! *' 2207
replay
elseif insysmsg "You chop some valewood logs"
overhead '* you harvest valewood!! *' 2219
replay
elseif insysmsg "You chop some avarwood logs"
overhead '* you harvest avarwood!!! *' 1763
replay
elseif insysmsg "travel"
replay
endif
replay
endif
////////////////////////////////
// REST/SKILL/DEATH LOOP: //
////////////////////////////////
if dead
wait 2500
overhead "Well... shit..." 2086
wait 1500
overhead '[ STOPPING SCRIPT... ]' 337
stop
endif
if not cooldown "Travel"
wait 500
overhead "Train skill to 50.0 at NPC and then restart script!" 0
wait 2500
overhead '[ STOPPING SCRIPT... ]' 337
stop
else
if not cooldown "Move Timer"
overhead "* resting... *" 0
cooldown "Move Timer" 6000
if EnableSummons = 1 and not cooldown "Guard Timer" and followers > 1
wait 2500
overhead "* yawns... *" 2117 myMainTankPet
menu myMainTankPet 3
cooldown "Guard Timer" 30000
endif
endif
if EnableSatchels = 1
if findtype "Ginseng|Garlic|Blood Moss|Sulfurous Ash|Mandrake Root%s%|Nightshade|Black Pearl%s%|Spider's Silk" backpack and findtype "reagent satchel" self as MyWizardBag
if not cooldown "Satchel Timer"
menu MyWizardBag 0
wait 250
cooldown "Satchel Timer" 60000
endif
endif
if findtype "Yellow Potion|Orange Potion|Red Potion|White Potion|Blue Potion|Black Potion|" backpack and findtype 31262 self as MyPotBag
if not cooldown "Satchel Timer"
menu MyWizardBag 0
wait 250
cooldown "Satchel Timer" 60000
endif
endif
endif
if insysmsg "Being perfectly rested"
overhead "Leave me alone, I'm tryin to rest here..." 2086
wait 500
if EnableSummons = 1 and not cooldown "Guard Timer" and followers > 1
wait 2500
overhead "* growls... *" 2117 myMainTankPet
menu myMainTankPet 3
cooldown "Guard Timer" 60000
endif
clearsysmsg
endif
if insysmsg "Now tracking" or insysmsg "Distance to destination" and EnableRedAlertRecall = 1
@setvar! TimeToGo 1
replay
endif
if paralyzed and EnableParalyzePouch = 1
overhead "[[[[ POP ]]]]" 2117
say "[pouch"
@setvar! TimeToGo 1
replay
endif
if insysmsg "As the owner" or insysmsg "Your house and its contents"
wait 1500
if find MyDoor ground -1 -1 2
overhead "* door slams! *" 0 MyDoor
dclick MyDoor
wait 500
endif
endif
if findtype 'iron ore|iron ingots' backpack
hotkey 'Organizer Agent-03'
endif
for 10
if findtype 'log%s' backpack and LogsToBoards = 1
overhead '* making boards... *' 0
dclicktype 'log%s'
wait 500
endif
endfor
if skill "Lumberjacking" >= 50
hotkey 'Organizer Agent-01'
wait 250
hotkey 'Organizer Agent-02'
wait 250
elseif skill "Mining" >= 50
hotkey 'Organizer Agent-03'
wait 250
hotkey 'Organizer Agent-04'
endif
replay
endif
replay
//////////////
// THE END! //
//////////////
# This script took me 300+ days of harvesting while I tweaked the code to get it to this point! Enjoy!! #