Lord Glacier's Chill DUNGEON ESCAPE n' GATE - UO OUTLANDS RAZOR SCRIPT - v1.0.1 by danstock._98439

Created: 01/04/2026
Last Updated: 2 days ago
Description from the author:

# I have taken a relatively basic process and over-complicated it once again... but I think it turned out well! Nice to work on a short script for a change.

# This will work as a hotkey to automatically click the nearest dungeon gate and exit to last visited town (if run when next to a gate)

# Otherwise, it will also buff you, heal you, cure you and generally just keep you alive while you travel to the nearest dungeon exit gate

# Can also be used as a general dungeon traversing script, as long as you do not come within 2 tiles of a dungeon gate!

# As such, it will also optionally carve corpses, pickup gold, pickup dungeon junk and anything else along the way...

# You can also opt to launch your own Razor recall script after gating (I have one you can download) or else the script will complete upon dungeon exit

# I hope you enjoy these QOL scripts as much as I do! If there are any issues or questions, I can be contacted at dan@danstockman.com

# Thanks for trying out my scripts and good luck out there!

///////// //////// Lord Glaciers Chill DUNGEON ESCAPE n GATE - UO OUTLANDS RAZOR SCRIPT - version 1.0.1 /////// ////// UO Outlands Razor script - Released January4, 2026 ///// Compiled by DanStock. (aka. Lord Glacier) //// /// /////////////////////// // CHANGE LOG: // /////////////////////// # Jan 5 2026 - version 1.0.1: Adjustments to the order of things # Jan 4 2026 - version 1.0.0: Public script release! ///////////////// // TIPS: // ///////////////// // Disclaimer: I AM NOT AN EXPERT! I have only played Outlands for 2 years now (with 90% of the first year spent harvesting - main PVM account is only at 16 links) // This is also the first and only MMO I have played since I last logged out of my OSI accounts on Great Lakes shard back in 2003. // So take any of my advice with that in mind - I am still a noob. If you have 30+ links and millions of gold, there is probably a better way to do things, but this works for me at my stage! // I have zero prior experience scripting and I have made these primarily for my own benefit!! I am learning as I go... // Mostly, I make these scripts in order to play on my Asus ROG Ally handheld - but I have come to enjoy the challenge of making them work for as many builds as possible. // I do not really use Discord (I only installed it to join Outlands - then discovered I had an older account already). Lots of people message me there, but I rarely check it (sorry). // That being said, I do my best to fix reported bugs (dan@danstockman.com) but usually do not have time to respond to requests for custom stuff (but appreciate any ideas, for sure!) // Since I do not personally use all aspects of the script (and do all my editing in Notepad on my PC at work lol) some bugs take longer for me to find - but I am always adjusting and updating! Thanks for being patient! // If you see me out in Avadon, my apologies if I dont respond (its a pain to type on the ROG Ally), but to do enjoy hearing that people use my scripts. Appreciate the support! GOOD LUCK OUT THERE :) # I have taken a relatively basic process and over-complicated it once again... but I think it turned out well! Nice to work on a short script for a change. # This will work as a hotkey to automatically click the nearest dungeon gate and exit to last visited town (if run when next to a gate) # Otherwise, it will also buff you, heal you, cure you and generally just keep you alive while you travel to the nearest dungeon exit gate # Can also be used as a general dungeon traversing script, as long as you do not come within 2 tiles of a dungeon gate! # As such, it will also optionally carve corpses, pickup gold, pickup dungeon junk and anything else along the way... # You can also opt to launch your own Razor recall script after gating (I have one you can download) or else the script will complete upon dungeon exit # I hope you enjoy these QOL scripts as much as I do! If there are any issues or questions, I can be contacted at dan@danstockman.com # Thanks for trying out my scripts and good luck out there! ############################### ### USER VARIABLES: ### ############################### ////////////////////////// // AFTER GATE: // ////////////////////////// @setvar! LaunchRecallScriptAfterGating 0 # Option to launch a Razor Recall script after gating # Otherwise script will stop after dungeon exit // Type the name of your Recall Razor script here: if LaunchRecallScriptAfterGating = 1 createlist DIYRecallScriptList pushlist DIYRecallScriptList "YOUR RAZOR SCRIPT NAME HERE" endif ////////////////////////// // DEFENSIVE: // ////////////////////////// @setvar! EnableAutoParalyzePouch 1 @setvar! EnableCastHeal 0 @setvar! EnableCastGreaterHeal 0 @setvar! CastGreaterHealHPdiff 40 @setvar! CastHealHPdiff 60 @setvar! CastEmergencyHealHPdiff 80 @setvar! EnableCastCure 0 @setvar! MinimumManaToApplyBuffs 40 @setvar! EnableMagicReflection 0 @setvar! EnableBless 0 @setvar! EnableReactiveArmour 0 @setvar! EnableProtection 0 @setvar! EnableArchProtection 0 ////////////////////////// // POTIONS: // ////////////////////////// @setvar! EnableHealPotion 1 @setvar! EnableCurePotion 1 @setvar! EnableRefreshPotion 0 @setvar! HealPotionHPdiff 30 @setvar! RefreshPotionSPdiff 10 # Adjust HP diff set points for Heal and Refresh potion # Cure pots will be used as needed (if enabled) @setvar! EnableStrengthPotion 0 @setvar! EnableAgilityPotion 0 @setvar! EnableMagicResistPotion 0 # Strength, Agility and Resist potions will auto-buff when effects wear off (if enabled) * // * If Alchemy skill is greater than 0.0 but less than or equal to 1.0 the script will take your next STRENGTH potion BEFORE the effect wears off! // For example, with an Alchemy skill of 1.0 your buff duration will be 2m 05s and a new strength potion is available after 2 mins // Taking your next potion during the extra 5 second buffer will keep your HP at 120 (instead of a temporary drop and HP of 100/120) if skill 'Alchemy' >= 80 @setvar! HealingPotionCooldown 7000 else @setvar! HealingPotionCooldown 10000 endif # This only affects your optional cooldown bars (script uses other checks to verify heal pots are available) @setvar! EnablePanaceaAbility 0 @setvar! EnableUsePotionKegs 0 # Will auto fill empty bottles from potion kegs if counts drop below set amount if EnableUsePotionKegs = 1 @setvar! HealingPotionAmount 5 @setvar! CurePotionAmount 5 @setvar! RefreshPotionAmount 5 @setvar! StrengthPotionAmount 1 @setvar! AgilityPotionAmount 1 @setvar! ResistPotionAmount 1 @setvar! ExplosionPotionAmount 5 @setvar! PoisonPotionAmount 0 endif @setvar! EnableEatMagicMushrooms 0 @setvar! EatMushroomManadiff 30 @setvar! MagicMushroomCooldown 60000 @setvar! EnableMagicMushroomMaker 0 @setvar! MakeMushroomAmount 5 # Will automatically make mushrooms when you run out (to set amount) ////////////////////////// // UTILITY: // ////////////////////////// @setvar! EnableOverheadMessages 1 # Overhead messages can be turned off @setvar! EnableAutoCarving 0 # Will automatically carve nearby corpses when found (requires SKINNING KNIFE) @setvar! EnableEatingFood 0 # Will eat food if not buffed (requires delecatable FOOD TRAYS) @setvar! EnableGoldVacuum 0 # Will automatically pickup discarded GOLD COINS nearby (2 tiles) # WARNING: This can cause you to grab large stacks of gold (and weigh you down) if you are not careful! @setvar! EnableDungeonCleanup 0 # Will automatically pickup discarded resources (regs, ingots, boards, etc.) nearby (2 tiles) @setvar! EnableDropGoldWhenOverweight 0 @setvar! DropGoldAmount 250 # Will drop set amount of gold repeatedly when overweight until no longer impeded @setvar! EnableWeightWarningMessage 0 @setvar! GreenWarningDiffWeight 50 @setvar! YellowWarningDiffWeight 25 @setvar! RedWeightLimitDiffWeight 10 # Will display overhead warnings that change colour as they approach your carry weight limit (Green, Yellow and Red) ///////////////////////// // END OF VARIABLES! // ///////////////////////// ################ 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! ################ /////////////////////// // TIMER SETUPS: // /////////////////////// if not timerexists "PotionKegTimer" createtimer "PotionKegTimer" settimer "PotionKegTimer" 2000 endif if not timerexists "GoldRadar" createtimer "GoldRadar" settimer "GoldRadar" 3500 endif if not timerexists "OverheadManaMessageTimer" createtimer "OverheadManaMessageTimer" settimer "OverheadManaMessageTimer" 3500 endif if not timerexists "DungeonEscape" createtimer "DungeonEscape" settimer "DungeonEscape" 15000 endif if not timerexists "aidsMessageTimer" createtimer "aidsMessageTimer" settimer "aidsMessageTimer" 5000 endif if not timerexists "GETCLOSER" createtimer "GETCLOSER" settimer "GETCLOSER" 4500 endif if not timerexists "GATEHERE" createtimer "GATEHERE" settimer "GATEHERE" 4500 endif if not timerexists "RUNAWAY" createtimer "RUNAWAY" settimer "RUNAWAY" 4500 endif if not timerexists 'MissingRegsTimer' createtimer 'MissingRegsTimer' settimer 'MissingRegsTimer' 4500 endif if not timerexists 'EatFoodMessageTimer' createtimer 'EatFoodMessageTimer' settimer 'EatFoodMessageTimer' 4500 endif if not timerexists 'PopPouchMessageTimer' createtimer 'PopPouchMessageTimer' settimer 'PopPouchMessageTimer' 4500 endif if not timerexists 'PotionKegTimer' createtimer 'PotionKegTimer' settimer 'PotionKegTimer' 3500 endif if not timerexists 'WhitePotionMessageTimer' createtimer 'WhitePotionMessageTimer' settimer 'WhitePotionMessageTimer' 4500 endif if not timerexists 'BluePotionMessageTimer' createtimer 'BluePotionMessageTimer' settimer 'BluePotionMessageTimer' 4500 endif if not timerexists 'BlackPotionMessageTimer' createtimer 'BlackPotionMessageTimer' settimer 'BlackPotionMessageTimer' 4500 endif if not timerexists 'PurplePotionMessageTimer' createtimer 'PurplePotionMessageTimer' settimer 'PurplePotionMessageTimer' 15000 endif if not timerexists 'OrangePotionMessageTimer' createtimer 'OrangePotionMessageTimer' settimer 'OrangePotionMessageTimer' 4500 endif if not timerexists 'YellowPotionMessageTimer' createtimer 'YellowPotionMessageTimer' settimer 'YellowPotionMessageTimer' 11000 endif if not timerexists 'RedPotionMessageTimer' createtimer 'RedPotionMessageTimer' settimer 'RedPotionMessageTimer' 4500 endif if not timerexists 'HealPotionTimer' createtimer 'HealPotionTimer' settimer 'HealPotionTimer' 4500 endif if not timerexists 'spellTimer' createtimer 'spellTimer' settimer 'spellTimer' 4500 endif if not timerexists 'MagicReflectTimer' createtimer 'MagicReflectTimer' settimer 'MagicReflectTimer' 4500 endif if not timerexists 'ReactiveArmorTimer' createtimer 'ReactiveArmorTimer' settimer 'ReactiveArmorTimer' 4500 endif if not timerexists 'OverweightMessageTimer' createtimer 'OverweightMessageTimer' settimer 'OverweightMessageTimer' 4500 endif if not timerexists 'WeightTimer' createtimer 'WeightTimer' settimer 'WeightTimer' 4500 endif if not timerexists 'MushroomTimer' createtimer 'MushroomTimer' settimer 'MushroomTimer' 4500 endif if not timerexists 'DungeonCleanupRadar' createtimer 'DungeonCleanupRadar' settimer 'DungeonCleanupRadar' 4500 endif if not timerexists 'SkinningTimer' createtimer 'SkinningTimer' settimer 'SkinningTimer' 4500 endif clearignore //////////////////////// // SCRIPT START: // //////////////////////// while not dead clearsysmsg while not gumpexists 3899019871 and findtype "blue moongate" ground 0 1 2 as EscapeGate dclick EscapeGate wait 500 endwhile if gumpexists 3899019871 and findtype "blue moongate" ground 0 1 2 as EscapeGate while gumpexists 3899019871 and findtype "blue moongate" ground 0 1 2 as EscapeGate gumpresponse 2 3899019871 wait 250 endwhile wait 1500 if LaunchRecallScriptAfterGating = 1 foreach RecallScript in DIYRecallScriptList script RecallScript endfor else stop endif endif while not gumpexists 3899019871 and findtype 30528 ground 2091 1 1 as EscapeGate dclick EscapeGate wait 500 endwhile if gumpexists 3899019871 and findtype 30528 ground 2091 1 1 as EscapeGate while gumpexists 3899019871 and findtype 30528 ground 2091 1 1 as EscapeGate gumpresponse 2 3899019871 wait 250 endwhile wait 1500 if LaunchRecallScriptAfterGating = 1 foreach RecallScript in DIYRecallScriptList script RecallScript endfor else stop endif endif while not gumpexists 3773199800 and findtype "blue moongate" ground -1 1 2 as EscapeGate dclick EscapeGate wait 500 endwhile if gumpexists 3773199800 and findtype "blue moongate" ground -1 1 2 as EscapeGate while gumpexists 3773199800 and findtype "blue moongate" ground -1 1 2 as EscapeGate gumpresponse 2 3773199800 wait 250 endwhile wait 1500 if LaunchRecallScriptAfterGating = 1 foreach RecallScript in DIYRecallScriptList script RecallScript endfor else stop endif endif while not gumpexists 3899019871 and findtype "moongate" ground -1 -1 2 as EscapeGate dclick EscapeGate wait 500 endwhile if gumpexists 3899019871 and findtype "moongate" ground -1 -1 2 as EscapeGate while gumpexists 3899019871 and findtype "moongate" ground -1 -1 2 as EscapeGate gumpresponse 2 3899019871 wait 250 endwhile wait 1500 if LaunchRecallScriptAfterGating = 1 foreach RecallScript in DIYRecallScriptList script RecallScript endfor else stop endif endif if findtype "moongate" ground -1 1 12 or findtype "blue moongate" ground -1 1 12 as EscapeGate if timer "GETCLOSER" > 4500 if EnableOverheadMessages = 1 overhead "[ GET CLOSER! ]" 253 else overhead " ● " 253 endif settimer "GETCLOSER" 0 endif if timer "GATEHERE" > 500 overhead " ▼ " 253 EscapeGate settimer "GATEHERE" 0 endif else if timer "RUNAWAY" > 4500 if EnableOverheadMessages = 1 overhead "[ GET TO A GATE... ]" 2118 else overhead " ● " 2118 endif settimer "RUNAWAY" 0 endif endif if followers > 0 and timer "DungeonEscape" > 15000 say "All follow me" 2234 settimer "DungeonEscape" 0 endif if targetexists hotkey 'cancel current target' endif if insysmsg "world is saving" settimer "WorldSaveTimer" 0 if EnableOverheadMessages = 1 overhead "[ WORLD SAVING... ]" 253 endif while timer "WorldSaveTimer" < 4500 if insysmsg "save complete" break endif wait 100 endwhile if EnableOverheadMessages = 1 overhead "[ SAVE COMPLETE! ]" 253 endif endif if dead break endif if EnableAutoParalyzePouch = 1 if paralyzed if findtype "pouch" self yell "[pouch" else if EnableOverheadMessages = 1 overhead "[ NO MORE POUCHES! ]" 337 endif endif endif endif if EnableDropGoldWhenOverweight = 1 if weight > maxweight if timer OverweightMessageTimer > 4500 overhead "[ OVERWEIGHT! ]" 34 settimer OverweightMessageTimer 0 endif if DropGoldAmount != 0 clearignore wait 250 if findtype "wooden box" self as lockbox if findtype "copper key" self as key clearignore getlabel lockbox lockboxlabel wait 100 if "items" in lockboxlabel // Do nothing else dclick key wft 1500 target lockbox if EnableOverheadMessages = 1 overhead "[loot box unlocked]" 84 endif wait 500 if insysmsg "It appears to be locked." dclick key wft 1500 target lockbox wait 250 endif endif elseif EnableOverheadMessages = 1 overhead "[ NO LOCKBOX KEY! ]" 337 endif endif while weight > maxweight if findtype "gold coin" self as easycomeeasygo lift easycomeeasygo DropGoldAmount droprelloc 0 0 getlabel backpack packdesc if EnableOverheadMessages = 1 overhead "[ DROPPING GOLD... ]" 149 endif wait 250 if insysmsg "cannot drop anything" drop backpack -1 -1 -1 break endif wait 250 else break endif if diffhits > 15 break endif endwhile endif endif endif if diffhits > 0 and not bandaging if skill 'healing' > 0 if findtype 'clean bandage%s%' self if targetexists hotkey 'cancel current target' endif hotkey 'Bandage Self' if EnableOverheadMessages = 1 if timer aidsMessageTimer > 5000 overhead "[ BANDAGING... ]" 88 settimer aidsMessageTimer 0 endif endif wait 500 else if timer aidsMessageTimer > 5000 and EnableOverheadMessages = 1 overhead "[ OUT OF BANDAGES! ]" 337 settimer aidsMessageTimer 0 endif endif endif endif if EnableStrengthPotion = 1 if not findbuff "Strength Potion Usage Cooldown" if findtype "White Potion" self dclicktype "White Potion" if EnableOverheadMessages = 1 and timer WhitePotionMessageTimer > 4500 overhead "[ STRENGTH POTION ]" 956 settimer WhitePotionMessageTimer 0 endif wait 250 else if timer WhitePotionMessageTimer > 4500 overhead "[ NO STRENGTH POTS! ]" 337 settimer WhitePotionMessageTimer 0 endif endif endif endif if EnableHealPotion = 1 and diffhits >= 20 if findtype "Yellow Potion" self as HealPot getlabel HealPot HealPotlabel if "next" in HealPotlabel // Do nothing else @setvar! HealPotionCheck 0 if counttype 3852 self as HealPotCount @setvar! HealPotionCheck HealPotCount endif clearsysmsg dclicktype 3852 getlabel backpack backpackdesc wait 250 if HealPotionCheck != counttype 3852 self or insysmsg "potion satchel used" settimer 'HealPotionTimer' 0 cooldown "Healing Potion" HealingPotionCooldown if EnableOverheadMessages = 1 and timer 'YellowPotionMessageTimer' > 4500 if insysmsg "potion satchel used" overhead '[ FREE HEAL POTION ]' 253 else overhead "[ HEAL POTION ]" 253 endif settimer 'YellowPotionMessageTimer' 0 endif clearsysmsg endif endif else if timer 'YellowPotionMessageTimer' > 4500 overhead "[ NO HEAL POTS! ]" 337 settimer 'YellowPotionMessageTimer' 0 endif endif endif if not findtype 3972 self or not findtype 3973 self or not findtype 3974 self or not findtype 3981 self @setvar! missingGreaterHealRegs 1 else @setvar! missingGreaterHealRegs 0 endif if not findtype 3972 self or not findtype 3973 self or not findtype 3974 self @setvar! missingHealRegs 1 else @setvar! missingHealRegs 0 endif if skill 'magery' >= 40 and diffhits >= CastHealHPdiff and mana >= 4 and EnableCastHeal = 1 and not casting and missingHealRegs != 1 cast 'heal' while not casting if targetexists hotkey 'cancel current target' endif cast 'heal' endwhile while not targetexists if insysmsg "Your concentration is disturbed" interrupt @setvar! SpellInterrupted 1 break endif endwhile if SpellInterrupted = 0 target 'self' endif elseif skill 'magery' >= 40 and diffhits >= CastEmergencyHealHPdiff and mana >= 4 and EnableCastHeal = 1 and not casting and missingHealRegs != 1 cast 'heal' while not casting if targetexists hotkey 'cancel current target' endif cast 'heal' endwhile while not targetexists if insysmsg "Your concentration is disturbed" interrupt @setvar! SpellInterrupted 1 break endif endwhile if SpellInterrupted = 0 target 'self' endif elseif skill 'magery' >= 60 and diffhits >= CastGreaterHealHPdiff and mana >= 11 and EnableCastGreaterHeal = 1 and not casting and missingGreaterHealRegs != 1 cast 'greater heal' while not casting cast 'greater heal' endwhile @settimer! spellTimer 0 @setvar! spellCD 800 while not targetexists if insysmsg "Your concentration is disturbed" interrupt @setvar! SpellInterrupted 1 break endif if timer spellTimer < spellCD if EnableCurePotion = 1 while poisoned and casting and not targetexists if findtype "Orange Potion" self dclicktype "Orange Potion" if EnableOverheadMessages = 1 and timer 'orangeMessageTimer' > 3500 overhead "[ CURE POTION ]" 44 settimer 'orangeMessageTimer' 0 endif wait 500 else if timer 'orangeMessageTimer' > 5000 and EnableOverheadMessages = 1 overhead "[ NO CURE POTS! ]" 337 settimer 'orangeMessageTimer' 0 endif break endif endwhile endif if diffhits >= HealPotionHPdiff and EnableHealPotion = 1 and casting and not targetexists if findtype "Yellow Potion" self as hPot getlabel hPot potLabel if "next" in potLabel #do nothing else @setvar! ch 0 if counttype 3852 self as c @setvar! ch c endif if insysmsg "potion satchel used" endif dclicktype 3852 getlabel backpack packdesc wait 250 if ch != counttype 3852 self or insysmsg "potion satchel used" settimer 'HealPotionTimer' 0 cooldown "Healing Potion" 11000 if EnableOverheadMessages = 1 overhead "[ HEAL POTION ]" 253 endif if diffhits < ActivateAutoHealHPdiff interrupt endif endif endif else if timer 'yellowMessageTimer' > 5000 and EnableOverheadMessages = 1 overhead "[ NO HEAL POTS! ]" 337 settimer 'yellowMessageTimer' 0 endif endif endif endif endwhile if SpellInterrupted = 0 target 'self' endif endif if EnableRefreshPotion = 1 and diffstam > RefreshPotionSPdiff if findtype "Red Potion" self dclicktype "Red Potion" if EnableOverheadMessages = 1 and timer RedPotionMessageTimer > 4500 overhead "[ REFRESH POTION ]" 37 settimer RedPotionMessageTimer 0 endif wait 250 else if timer RedPotionMessageTimer > 4500 overhead "[ NO REFRESH POTS! ]" 337 settimer RedPotionMessageTimer 0 endif endif endif if EnableCurePotion = 1 while poisoned if findtype "Orange Potion" self dclicktype "Orange Potion" if EnableOverheadMessages = 1 and timer 'OrangePotionMessageTimer' > 3500 overhead "[ CURE POTION ]" 44 settimer 'OrangePotionMessageTimer' 0 endif wait 250 else if timer 'OrangePotionMessageTimer' > 5000 overhead "[ NO CURE POTS! ]" 337 settimer 'OrangePotionMessageTimer' 0 endif if diffhits >= 30 or not findtype 3972 self or not findtype 3973 self break endif endif endwhile endif if EnableAgilityPotion = 1 and not findbuff "Agility" if findtype "Blue Potion" self dclicktype "Blue Potion" if EnableOverheadMessages = 1 and timer BluePotionMessageTimer > 4500 overhead "[ AGILITY POTION ]" 93 settimer BluePotionMessageTimer 0 endif wait 250 else if timer BluePotionMessageTimer > 4500 overhead "[ NO AGILITY POTS! ]" 337 settimer BluePotionMessageTimer 0 endif endif endif if EnableMagicResistPotion = 1 and not findbuff "Magic Resist" if findtype "Black Potion" self dclicktype "Black Potion" if EnableOverheadMessages = 1 and timer BlackPotionMessageTimer > 4500 overhead "[ RESIST POTION ]" 1109 settimer BlackPotionMessageTimer 0 endif wait 250 else if timer BlackPotionMessageTimer > 4500 overhead "[ NO RESIST POTS! ]" 337 settimer BlackPotionMessageTimer 0 endif endif endif if EnableUsePotionKegs = 1 and findtype 'empty bottle%s%' self and findtype 'keg' self if not timerexists PotionKegTimer createtimer PotionKegTimer settimer PotionKegTimer 5000 endif @setvar! PotionStockCheck 0 while PotionStockCheck < 8 and findtype 'empty bottle%s%' self if PotionStockCheck = 0 and ExplosionPotionAmount != 0 @setvar! PotionType 3853 @setvar! KegColour 419 @setvar! PotionAmounttoFill ExplosionPotionAmount @setvar! PotionStockCheck 1 elseif PotionStockCheck = 1 and HealingPotionAmount != 0 @setvar! PotionType 3852 @setvar! KegColour 253 @setvar! PotionAmounttoFill HealingPotionAmount @setvar! PotionStockCheck 2 elseif PotionStockCheck = 2 and CurePotionAmount != 0 @setvar! PotionType 3847 @setvar! KegColour 44 @setvar! PotionAmounttoFill CurePotionAmount @setvar! PotionStockCheck 3 elseif PotionStockCheck = 3 and RefreshPotionAmount != 0 @setvar! PotionType 3851 @setvar! KegColour 37 @setvar! PotionAmounttoFill RefreshPotionAmount @setvar! PotionStockCheck 4 elseif PotionStockCheck = 4 and StrengthPotionAmount != 0 @setvar! PotionType 3849 @setvar! KegColour 956 @setvar! PotionAmounttoFill StrengthPotionAmount @setvar! PotionStockCheck 5 elseif PotionStockCheck = 5 and AgilityPotionAmount != 0 @setvar! PotionType 3848 @setvar! KegColour 93 @setvar! PotionAmounttoFill AgilityPotionAmount @setvar! PotionStockCheck 6 elseif PotionStockCheck = 6 and ResistPotionAmount != 0 @setvar! PotionType 3846 @setvar! KegColour 1109 @setvar! PotionAmounttoFill ResistPotionAmount @setvar! PotionStockCheck 7 elseif PotionStockCheck = 7 and PoisonPotionAmount != 0 @setvar! PotionType 3850 @setvar! KegColour 363 @setvar! PotionAmounttoFill PoisonPotionAmount @setvar! PotionStockCheck 8 else break endif while counttype PotionType self < PotionAmounttoFill if not findtype 'empty bottle%s%' self if EnableOverheadMessages = 1 and timer 'PotionKegTimer' > 5000 overhead "[ NO EMPTY BOTTLES... ]" 337 settimer 'PotionKegTimer' 0 endif break endif if findtype 'keg' self KegColour as myKeg dclick myKeg wait 250 if EnableOverheadMessages = 1 if timer 'PotionKegTimer' > 2000 overhead '[ FILLING POTS... ]' KegColour settimer 'PotionKegTimer' 0 endif endif else if EnableOverheadMessages = 1 and timer 'PotionKegTimer' > 5000 overhead "[ NO KEG TO USE... ]" KegColour settimer 'PotionKegTimer' 0 endif break endif endwhile if counttype PotionType self < PotionAmounttoFill and not findtype 'empty bottle%s%' self if EnableOverheadMessages = 1 and timer 'PotionKegTimer' > 5000 overhead "[ NO EMPTY BOTTLES... ]" 337 settimer 'PotionKegTimer' 0 endif break endif endwhile endif if EnablePanaceaAbility = 1 if findbuff "bleed" or findbuff "diseased" if not findbuff "panacea potion cooldown" if findtype "Orange Potion" self dclicktype "Orange Potion" wait 500 if findbuff "panacea potion cooldown" and EnableOverheadMessages = 1 overhead "[ PANACEA ACTIVATED ]" 55 endif endif endif endif endif if EnableSpellbookCheck = 1 and not findtype "spellbook" hand if findtype "spellbook" self as mySpellbook for 5 if findtype "spellbook" self as mySpellbook getlabel mySpellbook mySpellbooklabel if "Aspect" in mySpellbooklabel break elseif "unidentified" in mySpellbooklabel ignore mySpellbook elseif "[blessed" in mySpellbooklabel ignore mySpellbook elseif "spells" in mySpellbooklabel ignore mySpellbook else break endif endif endfor dclick mySpellbook clearignore wait 500 else if timer "SpellbookCheck" > 5000 and EnableOverheadMessages = 1 overhead "[ NO SPELLBOOK! ]" 337 settimer "SpellbookCheck" 0 endif endif endif if EnableEatMagicMushrooms = 1 if diffmana > EatMushroomManadiff and MakeMushroomAmount > 0 and timer MushroomTimer > MagicMushroomCooldown if counttype 29012 backpack dclicktype 29012 backpack getlabel backpack packdesc wait 250 if insysmsg "You consume a magic mushroom" settimer MushroomTimer 0 cooldown "Mushroom" MagicMushroomCooldown if EnableOverheadMessages = 1 overhead "[ EATING SHROOMS... ]" 13 endif endif elseif EnableOverheadMessages = 1 overhead "[ OUT OF SHROOMS! ]" 337 endif endif endif if EnableMagicReflection = 1 and skill 'magery' >= 70 and not findbuff "Magic Reflection" and mana >= MinimumManaToApplyBuffs and timer MagicReflectTimer > 15000 and findtype 3972 self and findtype 3974 self and findtype 3981 self cast 'Magic Reflection' while not casting getlabel backpack packdesc wait 250 if insysmsg "that spell will not" or insysmsg "that spell is already" settimer MagicReflectTimer 0 break endif if targetexists hotkey 'cancel current target' endif cast 'Magic Reflection' endwhile while casting if diffhits >= 50 interrupt @setvar! CastingWasInterrupted 1 break endif if EnableCurePotion = 1 while poisoned and casting and not targetexists if findtype "Orange Potion" self dclicktype "Orange Potion" if EnableOverheadMessages = 1 and timer 'OrangePotionMessageTimer' > 3500 overhead "[ CURE POTION ]" 44 settimer 'OrangePotionMessageTimer' 0 endif wait 500 else if timer 'OrangePotionMessageTimer' > 5000 and EnableOverheadMessages = 1 overhead "[ NO CURE POTS! ]" 337 settimer 'OrangePotionMessageTimer' 0 endif break endif endwhile endif if diffhits >= HealPotionHPdiff and EnableHealPotion = 1 and casting and not targetexists if findtype "Yellow Potion" self as hPot getlabel hPot potLabel if "next" in potLabel #do nothing else @setvar! ch 0 if counttype 3852 self as c @setvar! ch c endif if insysmsg "potion satchel used" endif dclicktype 3852 getlabel backpack packdesc wait 250 if ch != counttype 3852 self or insysmsg "potion satchel used" settimer 'YellowPotionMessageTimer' 0 cooldown "Healing Potion" 11000 if EnableOverheadMessages = 1 and timer 'YellowPotionMessageTimer' > 4500 if insysmsg "potion satchel used" overhead '[ FREE HEAL POTION ]' 253 else overhead "[ HEAL POTION ]" 253 endif settimer 'YellowPotionMessageTimer' 0 endif endif endif else if timer 'YellowPotionMessageTimer' > 4500 and EnableOverheadMessages = 1 overhead "[ NO HEAL POTS! ]" 337 settimer 'YellowPotionMessageTimer' 0 endif endif endif endwhile wait 500 endif if EnableReactiveArmour = 1 and skill 'magery' >= 30 and not findbuff "Reactive Armor" and mana >= MinimumManaToApplyBuffs and timer ReactiveArmorTimer > 15000 and findtype 3980 self and findtype 3972 self and findtype 3981 self cast 'Reactive Armor' while not casting getlabel backpack packdesc wait 250 if insysmsg "that spell will not" or insysmsg "that spell is already" settimer ReactiveArmorTimer 0 break endif if targetexists hotkey 'cancel current target' endif cast 'Reactive Armor' endwhile while casting endwhile getlabel backpack packdesc wait 250 endif if EnableProtection = 1 and skill 'magery' >= 40 and not findbuff "Protection" and mana >= MinimumManaToApplyBuffs and findtype 3980 self and findtype 3972 self and findtype 3973 self cast 'Protection' while not casting if targetexists hotkey 'cancel current target' endif cast 'Protection' endwhile while casting endwhile wait 250 endif if EnableArchProtection = 1 and skill 'magery' >= 60 and not findbuff "Protection" and mana >= MinimumManaToApplyBuffs and findtype 3980 self and findtype 3972 self and findtype 3973 self and findtype 3974 self cast 'Arch Protection' while not casting if targetexists hotkey 'cancel current target' endif cast 'Arch Protection' wait 50 endwhile while not targetexists and casting endwhile wft 550 target 'self' wait 250 endif if EnableBless = 1 and skill 'magery' >= 50 and not findbuff "Cunning" and mana >= MinimumManaToApplyBuffs and findtype 3972 self and findtype 3974 self cast 'Bless' while not casting if targetexists hotkey 'cancel current target' endif cast 'Bless' wait 50 endwhile while not targetexists wait 100 endwhile wft 1000 target 'self' wait 250 endif if not findbuff 'food satisfaction' and findtype "tray" self and EnableEatingFood = 1 if findtype "tray" self as Food if EnableOverheadMessages = 1 overhead "[ EATING FOOD... ]" 88 endif dclick Food wait 500 else if timer EatFoodMessageTimer > 4000 if EnableOverheadMessages = 1 overhead "[ NO FOOD FOUND ]" 337 settimer EatFoodMessageTimer 0 endif endif endif endif if EnableGoldVacuum = 1 if findtype "gold coin" ground -1 -1 12 as droppedmoney and timer "GoldRadar" > 3500 overhead " ▼ " 149 droppedmoney settimer "GoldRadar" 0 endif while findtype "gold coin" ground -1 -1 2 as droppedmoney overhead " ▲ " 149 hotkey "Grab Item" wft 2500 target droppedmoney wait 250 if dead replay endif if insysmsg "Invalid or inaccessible item" wait 500 @ignore droppedmoney endif wait 250 endwhile endif if EnableDungeonCleanup = 1 while findtype "iron ingot%s|board%s|cut up leather|3972|3962|3963|3980|3976|3973|3974|3981" ground -1 -1 2 as item if EnableOverheadMessages = 1 if timer "DungeonCleanup" > 1500 overhead '[ CLEANUP... ]' 420 settimer "DungeonCleanup" 0 endif else if timer "DungeonCleanup" > 1500 overhead ' ▲ ' 420 settimer "DungeonCleanup" 0 endif endif hotkey "Grab Item" wft 1000 target item wait 500 if dead replay endif endwhile if findtype "iron ingot%s|board%s|cut up leather|3972|3962|3963|3980|3976|3973|3974|3981" ground -1 -1 15 as dungeonjunk and timer "DungeonCleanupRadar" > 3500 overhead "▼" 420 dungeonjunk settimer "DungeonCleanupRadar" 0 endif endif if diffhits >= HealPotionHPdiff and EnableHealPotion = 1 if findtype "Yellow Potion" self as hPot getlabel hPot potLabel if "next" in potLabel #do nothing else @setvar! ch 0 if counttype 3852 self as c @setvar! ch c endif if insysmsg "potion satchel used" endif dclicktype 3852 getlabel backpack packdesc wait 250 if ch != counttype 3852 self or insysmsg "potion satchel used" settimer 'HealPotionTimer' 0 cooldown "Healing Potion" 11000 if EnableOverheadMessages = 1 and timer 'YellowPotionMessageTimer' > 4500 if insysmsg "potion satchel used" overhead '[ FREE HEAL POTION ]' 253 else overhead "[ HEAL POTION ]" 253 endif settimer 'YellowPotionMessageTimer' 0 endif endif endif else if timer 'YellowPotionMessageTimer' > 4500 and EnableOverheadMessages = 1 overhead "[ NO HEAL POTS! ]" 337 settimer 'YellowPotionMessageTimer' 0 endif endif endif if EnableAutoCarving = 1 while findtype "corpse" ground -1 -1 2 as deadbody if findtype 11552 self if targetexists hotkey 'cancel current target' endif while not targetexists skill 'forensicevaluation' endwhile if targetexists and find deadbody ground -1 -1 2 target 'self' @ignore deadbody wait 500 endif if insysmsg "You dont see anything nearby" clearsysmsg break else if EnableOverheadMessages = 1 and timer SkinningTimer > 3000 overhead "[ SKINNING... ]" 333 settimer SkinningTimer 0 endif break endif else if EnableOverheadMessages = 1 and timer SkinningTimer > 15000 overhead "[ NO SKINNING KNIFE ]" 337 settimer SkinningTimer 0 endif break endif endwhile endif if counttype 29012 self = 0 and EnableMagicMushroomMaker = 1 while counttype 29012 self < MakeMushroomAmount and mana > 3 if timer 'MushroomMakerTimer' > 4500 overhead "[ MAKING SHROOMS... ]" 419 settimer 'MushroomMakerTimer' 0 endif if not casting cast 'create food' endif if diffhits > 15 break endif endwhile endif if EnableWeightWarningMessage = 1 if diffweight < GreenWarningDiffWeight and diffweight > YellowWarningDiffWeight and timer "WeightTimer" > 6000 if EnableOverheadMessages = 1 overhead "[ WEIGHT WARNING... ]" 77 settimer "WeightTimer" 0 else overhead " ▄ " 77 settimer "WeightTimer" 0 endif elseif diffweight < YellowWarningDiffWeight and diffweight > RedWeightLimitDiffWeight and timer "WeightTimer" > 6000 if EnableOverheadMessages = 1 overhead "[ WEIGHT WARNING! ]" 153 settimer "WeightTimer" 0 else overhead " ▄ " 153 settimer "WeightTimer" 0 endif elseif diffweight < RedWeightLimitDiffWeight and timer "WeightTimer" > 3500 if EnableOverheadMessages = 1 overhead "[ WEIGHT LIMIT REACHED! ]" 37 settimer "WeightTimer" 0 else overhead " ● " 37 settimer "WeightTimer" 0 endif endif endif if dead break endif if dead stop endif endwhile //////////////////////// // SCRIPT FINISH // //////////////////////// // Thank you for using my scripts! I can be contacted via email here: dan@danstockman.com // Good luck out there and say hello if you see me in Avadon (Lord Glacier) - please don't PK me lol

Quick Filters

Bard Quick SearchCrafter Quick SearchDexxer Quick SearchHarvester Quick SearchMage Quick SearchPVM Quick SearchPVP Quick SearchStealth Quick SearchTamer Quick Search