Skip to content
Outlands Hub

Razor script

Lord Glacier's Chill DUNGEON ESCAPE n' GATE - UO OUTLANDS RAZOR SCRIPT - v1.0.3

by danstock._98439 · 1356 lines
Download

Compatibility unverified

This community Razor script has not been tested in game by the Hub. Read its setup and client requirements before use.

Lord Glaciers Chill DUNGEON ESCAPE n GATE - UO OUTLANDS RAZOR SCRIPT - version 1.0.3 UO Outlands Razor script - Released January 26, 2026 - Last updated September 9, 2026 Compiled by DanStock. (aka. Lord Glacier)

Lord Glaciers Chill DUNGEON ESCAPE n GATE - UO OUTLANDS RAZOR SCRIPT - v103.razor
1# This is an automated backup - check out https://outlands.uorazorscripts.com/script/17f39257-46e6-4f86-8e39-26cf0107c9e7 for latest2# Automation by Jaseowns3## Script: Lord Glacier's Chill DUNGEON ESCAPE n' GATE - UO OUTLANDS RAZOR SCRIPT - v1.0.34## Created by: danstock._98439#05#############################################6 7/////////8////////                                          Lord Glaciers Chill DUNGEON ESCAPE n GATE - UO OUTLANDS RAZOR SCRIPT - version 1.0.39///////10//////                                                 UO Outlands Razor script - Released January 26, 2026 - Last updated September 9, 202611/////                                                     Compiled by DanStock. (aka. Lord Glacier)12////13///14 15 16 17 18 19    ///////////////////////20    //    CHANGE LOG:    //21    ///////////////////////22 23    #         Sep 09 2026 - version 1.0.3:  Lots of minor bug fixes and updates - works much better now!24    #         Jan 26 2026 - version 1.0.2:  Added magery skill checks to spellbook equip and mushroom maker sections25    #         Jan 05 2026 - version 1.0.1:  Adjustments to the order of things26    #         Jan 04 2026 - version 1.0.0:  Public script release!27 28 29 30 31    /////////////////32    //    TIPS:    //33    /////////////////34      35#     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.36#     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)37#     Otherwise, it will also buff you, heal you, cure you and generally just keep you alive while you travel to the nearest dungeon exit gate38#     Can also be used as a general dungeon traversing script, as long as you do not come within 2 tiles of a dungeon gate!39#     As such, it will also optionally carve corpses, pickup gold, pickup dungeon junk and anything else along the way...40#     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 exit41#     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.com42#     Thanks for trying out my scripts and good luck out there!43 44        45 46     ###############################47    ###      USER VARIABLES:      ###48     ###############################49     50//////////////////////////51//     AFTER GATE:      //52//////////////////////////53     54@setvar! LaunchRecallScriptAfterGating 055    # Option to launch a Razor Recall script after gating56    # Otherwise script will stop after dungeon exit57 58    //  Type the name of your Recall Razor script here:59    if LaunchRecallScriptAfterGating = 160        createlist DIYRecallScriptList61        pushlist DIYRecallScriptList "YOUR RECALL SCRIPT NAME HERE"62    endif63                    64                    65//////////////////////////66//      DEFENSIVE:      //67//////////////////////////68    69@setvar! EnableAutoParalyzePouch 070 71@setvar! EnableCastHeal 072@setvar! EnableCastGreaterHeal 073    @setvar! CastGreaterHealHPdiff 4074    @setvar! CastHealHPdiff 6075    @setvar! CastEmergencyHealHPdiff 8076    77@setvar! EnableCastCure 078 79@setvar! MinimumManaToApplyBuffs 4080    @setvar! EnableMagicReflection 081    @setvar! EnableBless 082    @setvar! EnableReactiveArmour 083    @setvar! EnableProtection 084    @setvar! EnableArchProtection 085 86        87//////////////////////////88//       POTIONS:       //89//////////////////////////90 91@setvar! EnableHealPotion 192@setvar! EnableCurePotion 193@setvar! EnableRefreshPotion 094 95    @setvar! HealPotionHPdiff 3096    @setvar! RefreshPotionSPdiff 1097        # Adjust HP diff set points for Heal and Refresh potion 98        # Cure pots will be used as needed (if enabled)99 100    @setvar! EnableStrengthPotion 0101    @setvar! EnableAgilityPotion 0102    @setvar! EnableMagicResistPotion 0103        # Strength, Agility and Resist potions will auto-buff when effects wear off (if enabled) *104        //    * 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!105        //      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 mins106        //      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)107 108    if skill 'Alchemy' >= 80109        @setvar! HealingPotionCooldown 7000110    else111        @setvar! HealingPotionCooldown 10000112    endif113    # This only affects your optional cooldown bars (script uses other checks to verify heal pots are available)114 115@setvar! EnablePanaceaAbility 0116 117@setvar! EnableUsePotionKegs 0118    # Will auto fill empty bottles from potion kegs if counts drop below set amount119    if EnableUsePotionKegs = 1120        @setvar! HealingPotionAmount 5121        @setvar! CurePotionAmount 5122        @setvar! RefreshPotionAmount 5123        @setvar! StrengthPotionAmount 1124        @setvar! AgilityPotionAmount 1125        @setvar! ResistPotionAmount 1126        @setvar! ExplosionPotionAmount 1127        @setvar! PoisonPotionAmount 0128    endif129    130    @setvar! EnableEatMagicMushrooms 0131    @setvar! EatMushroomManadiff 30132    @setvar! MagicMushroomCooldown 60000133 134    @setvar! EnableMagicMushroomMaker 0135    @setvar! MakeMushroomAmount 5136        # Will automatically make mushrooms when you run out (to set amount)137 138        139//////////////////////////140//       UTILITY:       //141//////////////////////////142 143@setvar! EnableOverheadMessages 1144    # Overhead messages can be turned off145 146@setvar! EnableAutoCarving 0147    # Will automatically carve nearby corpses when found (requires SKINNING KNIFE)148 149@setvar! EnableEatingFood 0150    # Will eat food if not buffed (requires delecatable FOOD TRAYS)151 152@setvar! EnableGoldVacuum 0153    # Will automatically pickup discarded GOLD COINS nearby (2 tiles)154    # WARNING: This can cause you to grab large stacks of gold (and weigh you down) if you are not careful!155 156@setvar! EnableDungeonCleanup 0157    # Will automatically pickup discarded resources (regs, ingots, boards, etc.) nearby (2 tiles)158    159@setvar! EnableDropGoldWhenOverweight 0160    @setvar! DropGoldAmount 250161        # Will drop set amount of gold repeatedly when overweight until no longer impeded 162 163@setvar! EnableWeightWarningMessage 1164    @setvar! GreenWarningDiffWeight 50165    @setvar! YellowWarningDiffWeight 25166    @setvar! RedWeightLimitDiffWeight 10167    # Will display overhead warnings that change colour as they approach your carry weight limit (Green, Yellow and Red)168    169            170/////////////////////////171//  END OF VARIABLES!  //172/////////////////////////173 174 175 176 177 178 179################  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!  ################180 181 182 183 184 185 186///////////////////////187//   TIMER SETUPS:   //188///////////////////////189 190 191if not timerexists "PotionKegTimer"192    createtimer "PotionKegTimer"193    settimer "PotionKegTimer" 3500194endif195 196if not timerexists "GoldRadar"197    createtimer "GoldRadar"198    settimer "GoldRadar" 3500199endif200 201if not timerexists "OverheadManaMessageTimer"202    createtimer "OverheadManaMessageTimer"203    settimer "OverheadManaMessageTimer" 3500204endif205 206if not timerexists "DungeonEscape"207    createtimer "DungeonEscape"208    settimer "DungeonEscape" 15000209endif210 211if not timerexists "aidsMessageTimer"212    createtimer "aidsMessageTimer"213    settimer "aidsMessageTimer" 5000214endif215 216if not timerexists "GETCLOSER"217    createtimer "GETCLOSER"218    settimer "GETCLOSER" 4500219endif220 221if not timerexists "GATEHERE"222    createtimer "GATEHERE"223    settimer "GATEHERE" 4500224endif225 226if not timerexists "RUNAWAY"227    createtimer "RUNAWAY"228    settimer "RUNAWAY" 4500229endif230 231if not timerexists 'MissingRegsTimer'232    createtimer 'MissingRegsTimer'233    settimer 'MissingRegsTimer' 4500234endif235 236if not timerexists 'EatFoodMessageTimer'237    createtimer 'EatFoodMessageTimer'238    settimer 'EatFoodMessageTimer' 4500239endif240 241if not timerexists 'PopPouchMessageTimer'242    createtimer 'PopPouchMessageTimer'243    settimer 'PopPouchMessageTimer' 4500244endif245 246if not timerexists 'WhitePotionMessageTimer'247    createtimer 'WhitePotionMessageTimer'248    settimer 'WhitePotionMessageTimer' 4500249endif250 251if not timerexists 'BluePotionMessageTimer'252    createtimer 'BluePotionMessageTimer'253    settimer 'BluePotionMessageTimer' 4500254endif255 256if not timerexists 'BlackPotionMessageTimer'257    createtimer 'BlackPotionMessageTimer'258    settimer 'BlackPotionMessageTimer' 4500259endif260 261if not timerexists 'PurplePotionMessageTimer'262    createtimer 'PurplePotionMessageTimer'263    settimer 'PurplePotionMessageTimer' 15000264endif265 266if not timerexists 'OrangePotionMessageTimer'267    createtimer 'OrangePotionMessageTimer'268    settimer 'OrangePotionMessageTimer' 4500269endif270 271if not timerexists 'YellowPotionMessageTimer'272    createtimer 'YellowPotionMessageTimer'273    settimer 'YellowPotionMessageTimer' 11000274endif275 276if not timerexists 'RedPotionMessageTimer'277    createtimer 'RedPotionMessageTimer'278    settimer 'RedPotionMessageTimer' 4500279endif280 281if not timerexists 'HealPotionTimer'282    createtimer 'HealPotionTimer'283    settimer 'HealPotionTimer' 4500284endif285 286if not timerexists 'spellTimer'287    createtimer 'spellTimer'288    settimer 'spellTimer' 4500289endif290 291if not timerexists 'MagicReflectTimer'292    createtimer 'MagicReflectTimer'293    settimer 'MagicReflectTimer' 4500294endif295 296if not timerexists 'ReactiveArmorTimer'297    createtimer 'ReactiveArmorTimer'298    settimer 'ReactiveArmorTimer' 4500299endif300 301if not timerexists 'OverweightMessageTimer'302    createtimer 'OverweightMessageTimer'303    settimer 'OverweightMessageTimer' 4500304endif305 306if not timerexists 'WeightTimer'307    createtimer 'WeightTimer'308    settimer 'WeightTimer' 4500309endif310 311if not timerexists 'MushroomTimer'312    createtimer 'MushroomTimer'313    settimer 'MushroomTimer' 4500314endif315 316if not timerexists 'DungeonCleanupRadar'317    createtimer 'DungeonCleanupRadar'318    settimer 'DungeonCleanupRadar' 4500319endif320 321if not timerexists 'DungeonCleanup'322    createtimer 'DungeonCleanup'323    settimer 'DungeonCleanup' 4500324endif325 326if not timerexists 'SkinningTimer'327    createtimer 'SkinningTimer'328    settimer 'SkinningTimer' 4500329endif330 331if not timerexists 'SpellbookCheck'332    createtimer 'SpellbookCheck'333    settimer 'SpellbookCheck' 5000334endif335 336if not timerexists 'PotionKegPVPCooldown'337    createtimer 'PotionKegPVPCooldown'338    settimer 'PotionKegPVPCooldown' 30000339endif340 341if not timerexists 'NoHealRegsTimer'342    createtimer 'NoHealRegsTimer'343    settimer 'NoHealRegsTimer' 30000344endif345 346if not timerexists 'AntiStallTimer'347    createtimer 'AntiStallTimer'348    settimer 'AntiStallTimer' 30000349endif350 351if not timerexists 'MushroomMakerTimer' 352    createtimer 'MushroomMakerTimer'353    settimer 'MushroomMakerTimer' 5000354endif355 356clearignore357clearsysmsg358 359 360 361////////////////////////362//   SCRIPT START:    //363////////////////////////364 365while not dead 366    hotkey 'Toggle Peace Only'367 368    while not gumpexists 3899019871 and findtype "blue moongate" ground 0 1 2 as EscapeGate369        dclick EscapeGate370        wait 500371    endwhile372 373    if gumpexists 3899019871 and findtype "blue moongate" ground 0 1 2 as EscapeGate374        while gumpexists 3899019871 and findtype "blue moongate" ground 0 1 2 as EscapeGate375            gumpresponse 2 3899019871376            wait 250377        endwhile378        wait 1500379        if LaunchRecallScriptAfterGating = 1380            foreach RecallScript in DIYRecallScriptList381                script RecallScript382            endfor383        else 384            overhead "[ SCRIPT COMPLETE! ]" 88385            stop386        endif387    endif388 389    while not gumpexists 3899019871 and findtype 30528 ground 2091 1 1 as EscapeGate390        dclick EscapeGate391        wait 500392    endwhile393 394    if gumpexists 3899019871 and findtype 30528 ground 2091 1 1 as EscapeGate395        while gumpexists 3899019871 and findtype 30528 ground 2091 1 1 as EscapeGate396            gumpresponse 2 3899019871397            wait 250398        endwhile399        wait 1500400        if LaunchRecallScriptAfterGating = 1401            foreach RecallScript in DIYRecallScriptList402                script RecallScript403            endfor404        else 405            overhead "[ SCRIPT COMPLETE! ]" 88406            stop407        endif408    endif409 410    while not gumpexists 3773199800 and findtype "blue moongate" ground -1 1 2 as EscapeGate411        dclick EscapeGate412        wait 500413    endwhile414 415    if gumpexists 3773199800 and findtype "blue moongate" ground -1 1 2 as EscapeGate416        while gumpexists 3773199800 and findtype "blue moongate" ground -1 1 2 as EscapeGate417            gumpresponse 2 3773199800418            wait 250419        endwhile420        wait 1500421        if LaunchRecallScriptAfterGating = 1422            foreach RecallScript in DIYRecallScriptList423                script RecallScript424            endfor425        else 426            overhead "[ SCRIPT COMPLETE! ]" 88427            stop428        endif429    endif430 431    while not gumpexists 3899019871 and findtype "moongate" ground -1 -1 2 as EscapeGate432        dclick EscapeGate433        wait 500434    endwhile435 436    if gumpexists 3899019871 and findtype "moongate" ground -1 -1 2 as EscapeGate437        while gumpexists 3899019871 and findtype "moongate" ground -1 -1 2 as EscapeGate438            gumpresponse 2 3899019871439            wait 250440        endwhile441        wait 1500442        if LaunchRecallScriptAfterGating = 1443            foreach RecallScript in DIYRecallScriptList444                script RecallScript445            endfor446        else 447            overhead "[ SCRIPT COMPLETE! ]" 88448            stop449        endif450    endif451     452    if findtype "moongate" ground -1 1 12 as EscapeGate or findtype "blue moongate" ground -1 1 12 as EscapeGate453        if timer "GETCLOSER" > 4500454            if EnableOverheadMessages = 1455                overhead "[ GET CLOSER! ]" 253456            else457                overhead " � " 253458            endif459            settimer "GETCLOSER" 0460        endif461        if timer "GATEHERE" > 500462            overhead " � " 253 EscapeGate463            settimer "GATEHERE" 0464        endif465    else466        if timer "RUNAWAY" > 4500467            if EnableOverheadMessages = 1468                overhead "[ GET TO A GATE... ]" 69469            else470                overhead " � " 2118471            endif472            settimer "RUNAWAY" 0473        endif474    endif475    476    if followers > 0 and timer "DungeonEscape" > 15000477        say "All follow me" 2234478        settimer "DungeonEscape" 0479    endif480    481    if targetexists 482        hotkey 'cancel current target'483    endif484 485    if dead486        break487    endif 488 489    if EnableAutoParalyzePouch = 1490        if paralyzed491            if findtype "pouch" self492                yell "[pouch"493            else494                if EnableOverheadMessages = 1495                    overhead "[ NO MORE POUCHES! ]" 337496                endif497            endif498        endif499    endif500    501    if EnableDropGoldWhenOverweight = 1502        if weight > maxweight503            if timer OverweightMessageTimer > 4500504                overhead "[ OVERWEIGHT! ]" 34505                settimer OverweightMessageTimer 0506            endif507 508            if DropGoldAmount != 0509                clearignore510                wait 250511 512                if findtype "wooden box" self as lockbox513                    if findtype "copper key" self as key514                        clearignore515                        getlabel lockbox lockboxlabel516                        wait 100517                        if "items" in lockboxlabel518                            // Do nothing519                        else520                            dclick key521                            wft 1500522                            target lockbox523                            if EnableOverheadMessages = 1524                                overhead "[loot box unlocked]" 84525                            endif526                            wait 500527                            if insysmsg "It appears to be locked."528                                dclick key529                                wft 1500530                                target lockbox531                                wait 250532                            endif533                        endif534                    elseif EnableOverheadMessages = 1535                        overhead "[ NO LOCKBOX KEY! ]" 337536                    endif537                endif538 539                while weight > maxweight540                    if findtype "gold coin" self as easycomeeasygo541                        lift easycomeeasygo DropGoldAmount542                        droprelloc 0 0543                        getlabel backpack packdesc544                        if EnableOverheadMessages = 1545                            overhead "[ DROPPING GOLD... ]" 149546                        endif547                        wait 250548                        if insysmsg "cannot drop anything"549                            drop backpack -1 -1 -1550                            break551                        endif552                        wait 250553                    else554                        break555                    endif556                    if diffhits > 15557                        break558                    endif559                endwhile560            endif561        endif562    endif563 564    if diffhits > 0 and not bandaging565        if skill 'healing' > 0566            if findtype 'clean bandage%s%' self567                if targetexists568                    hotkey 'cancel current target'569                endif570                hotkey 'Bandage Self'571                if EnableOverheadMessages = 1 572                    if timer aidsMessageTimer > 5000573                        overhead "[ BANDAGING... ]" 88574                        settimer aidsMessageTimer 0575                    endif576                endif577                wait 500578            else579                if timer aidsMessageTimer > 5000 and EnableOverheadMessages = 1580                    overhead "[ OUT OF BANDAGES! ]" 337581                    settimer aidsMessageTimer 0582                endif583            endif584        endif585    endif586    587    if EnableHealPotion = 1 and diffhits >= HealPotionHPdiff588        if findtype "Yellow Potion" self as HealPot589            getlabel HealPot HealPotlabel590            if "next" in HealPotlabel591                // Do nothing592            else593                @setvar! HealPotionCheck 0594 595                if counttype 3852 self as HealPotCount596                    @setvar! HealPotionCheck HealPotCount597                endif598 599                clearsysmsg600                dclicktype 3852601                getlabel backpack backpackdesc602                wait 250603 604                if HealPotionCheck != counttype 3852 self or insysmsg "potion satchel used"605                    settimer 'HealPotionTimer' 0606                    cooldown "Healing Potion" HealingPotionCooldown607                    if EnableOverheadMessages = 1 and timer 'YellowPotionMessageTimer' > 4500608                        if insysmsg "potion satchel used"609                            overhead '[ FREE HEAL POTION ]' 253610                        else611                            overhead "[ HEAL POTION ]" 253612                        endif613                        settimer 'YellowPotionMessageTimer' 0614                    endif615                    clearsysmsg616                endif617            endif618        else619            if timer 'YellowPotionMessageTimer' > 4500620                overhead "[ NO HEAL POTS! ]" 337621                settimer 'YellowPotionMessageTimer' 0622            endif623        endif624    endif625 626    if not findtype 3972 self or not findtype 3973 self or not findtype 3974 self or not findtype 3981 self627        @setvar! missingGreaterHealRegs 1628        getlabel backpack backpacklabel629    else630        @setvar! missingGreaterHealRegs 0631    endif632 633    if not findtype 3972 self or not findtype 3973 self or not findtype 3974 self634        @setvar! missingHealRegs 1635        getlabel backpack backpacklabel636    else637        @setvar! missingHealRegs 0638    endif639 640    if missingGreaterHealRegs = 1 or missingHealRegs = 1641        if timer NoHealRegsTimer > 4000 and skill 'Magery' > 0642            overhead '[ MISSING HEALING REGS! ]' 337643            settimer NoHealRegsTimer 0644        endif645    endif646 647    @setvar! SpellInterrupted 0648    clearsysmsg 649 650    if skill 'magery' >= 40 and diffhits >= CastEmergencyHealHPdiff and mana >= 4 and EnableCastHeal = 1 and not casting and missingHealRegs != 1651    652        @setvar! SpellInterrupted 0653        cast 'heal'654        getlabel backpack backpacklabel655        settimer AntiStallTimer 0656 657        while not targetexists and timer AntiStallTimer < 1500658            if insysmsg "Your concentration is disturbed"659                interrupt660                @setvar! SpellInterrupted 1661                break662            endif663 664            if timer AntiStallTimer > 1500665                settimer AntiStallTimer 0666                break667            endif668        endwhile669 670        if SpellInterrupted = 0671            target 'self'672        endif673    elseif skill 'magery' >= 40 and diffhits >= CastGreaterHealHPdiff and diffhits <= CastHealHPdiff and mana >= 4 and EnableCastHeal = 1 and not casting and missingHealRegs != 1674        @setvar! SpellInterrupted 0675        cast 'heal'676        getlabel backpack backpacklabel677        settimer AntiStallTimer 0678 679        while not targetexists and timer AntiStallTimer < 1500680            if insysmsg "Your concentration is disturbed"681                interrupt682                @setvar! SpellInterrupted 1683                break684            endif685 686            if timer AntiStallTimer > 1500687                settimer AntiStallTimer 0688                break689            endif690        endwhile691 692        if SpellInterrupted = 0693            target 'self'694        endif695    elseif skill 'magery' >= 60 and diffhits >= CastGreaterHealHPdiff and mana >= 11 and EnableCastGreaterHeal = 1 and not casting and missingGreaterHealRegs != 1696        @setvar! SpellInterrupted 0697        cast 'greater heal'698        getlabel backpack backpacklabel699        settimer spellTimer 0700        @setvar! spellCD 2500701 702        while not targetexists and timer spellTimer < spellCD703            if insysmsg "Your concentration is disturbed"704                interrupt705                @setvar! SpellInterrupted 1706                break707            endif708 709            if timer spellTimer > spellCD710                break711            endif712        endwhile713 714        if SpellInterrupted = 0715            target 'self'716        elseif targetexists 717            target 'self'718        endif719    elseif skill 'magery' >= 40 and diffhits > CastHealHPdiff and mana >= 4 and EnableCastHeal = 1 and not casting and missingHealRegs != 1720        while diffhits > CastHealHPdiff721            if targetexists722                hotkey 'Cancel current target'723            endif724            @setvar! SpellInterrupted 0725            cast 'heal'726            getlabel backpack backpacklabel727            settimer AntiStallTimer 0728 729            while not targetexists and timer AntiStallTimer < 1500730                if insysmsg "Your concentration is disturbed"731                    interrupt732                    @setvar! SpellInterrupted 1733                    break734                endif735 736                if timer AntiStallTimer > 1500737                    settimer AntiStallTimer 0738                    break739                endif740            endwhile741 742            if SpellInterrupted = 0743                target 'self'744                getlabel backpack backpacklabel745            endif746        endwhile 747    endif748 749    if EnableRefreshPotion = 1 and diffstam > RefreshPotionSPdiff750        if findtype "Red Potion" self751            dclicktype "Red Potion"752            if EnableOverheadMessages = 1 and timer RedPotionMessageTimer > 4500753                overhead "[ REFRESH POTION ]" 37754                settimer RedPotionMessageTimer 0755            endif756            wait 250757        else758            if timer RedPotionMessageTimer > 4500759                overhead "[ NO REFRESH POTS! ]" 337760                settimer RedPotionMessageTimer 0761            endif762        endif763    endif764 765    if EnableCurePotion = 1 or EnableCastCure = 1766        while poisoned767            if findtype "Orange Potion" self and EnableCurePotion = 1768                dclicktype "Orange Potion"769                if EnableOverheadMessages = 1 and timer 'OrangePotionMessageTimer' > 3500770                    if insysmsg "potion satchel used"771                        overhead '[ FREE CURE POTION ]' 44772                    else773                        overhead '[ CURE POTION ]' 44774                    endif775                    clearsysmsg776                    settimer 'OrangePotionMessageTimer' 0777                endif778                wait 500779            else780                if timer 'OrangePotionMessageTimer' > 5000 and EnableOverheadMessages = 1 and EnableCurePotion = 1781                    overhead '[ NO CURE POTS! ]' 337782                    settimer 'OrangePotionMessageTimer' 0783                endif784 785                if diffhits >= 50 or not findtype 3972 self or not findtype 3973 self786                    break787                endif788 789                if skill 'magery' >= 40 and mana >= 6 and EnableCastCure = 1 and not casting790                    cast 'cure'791                    getlabel backpack backpacklabel792                    settimer AntiStallTimer 0793 794                    while not targetexists and timer AntiStallTimer < 1500795                        if timer AntiStallTimer > 1500796                            settimer AntiStallTimer 0797                            break798                        endif799                        wait 100800                    endwhile801                    wft 1000802                    target 'self'803                    wait 500804                else805                    break806                endif807            endif808        endwhile809    endif810    811    if EnableStrengthPotion = 1812        if not findbuff "Strength Potion Usage Cooldown"813            if findtype "White Potion" self814                dclicktype "White Potion"815                if EnableOverheadMessages = 1 and timer WhitePotionMessageTimer > 4500816                    overhead "[ STRENGTH POTION ]" 956817                    settimer WhitePotionMessageTimer 0818                endif819                wait 250820            else821                if timer WhitePotionMessageTimer > 4500822                    overhead "[ NO STRENGTH POTS! ]" 337823                    settimer WhitePotionMessageTimer 0824                endif825            endif826        endif827    endif828 829    if EnableAgilityPotion = 1 and not findbuff "Agility"830        if findtype "Blue Potion" self831            dclicktype "Blue Potion"832            if EnableOverheadMessages = 1 and timer BluePotionMessageTimer > 4500833                overhead "[ AGILITY POTION ]" 93834                settimer BluePotionMessageTimer 0835            endif836            wait 250837        else838            if timer BluePotionMessageTimer > 4500839                overhead "[ NO AGILITY POTS! ]" 337840                settimer BluePotionMessageTimer 0841            endif842        endif843    endif844 845    if EnableMagicResistPotion = 1 and not findbuff "Magic Resist"846        if findtype "Black Potion" self847            dclicktype "Black Potion"848            if EnableOverheadMessages = 1 and timer BlackPotionMessageTimer > 4500849                overhead "[ RESIST POTION ]" 1109850                settimer BlackPotionMessageTimer 0851            endif852            wait 250853        else854            if timer BlackPotionMessageTimer > 4500855                overhead "[ NO RESIST POTS! ]" 337856                settimer BlackPotionMessageTimer 0857            endif858        endif859    endif860  861    if EnableUsePotionKegs = 1 and findtype 'empty bottle%s%' self and findtype 'keg' self and timer 'PotionKegPVPCooldown' > 30000862        if not timerexists PotionKegTimer863            createtimer PotionKegTimer864            settimer PotionKegTimer 5000865        endif866 867        @setvar! PotionStockCheck 0868 869        while PotionStockCheck < 8 and findtype 'empty bottle%s%' self870            @setvar! PotionAmounttoFill 0871            if PotionStockCheck = 0872                if ExplosionPotionAmount != 0873                    @setvar! PotionType 3853874                    @setvar! KegColour 419875                    @setvar! PotionAmounttoFill ExplosionPotionAmount876                endif877                @setvar! PotionStockCheck 1878            elseif PotionStockCheck = 1879                if HealingPotionAmount != 0880                    @setvar! PotionType 3852881                    @setvar! KegColour 253882                    @setvar! PotionAmounttoFill HealingPotionAmount883                endif884                @setvar! PotionStockCheck 2885            elseif PotionStockCheck = 2886                if CurePotionAmount != 0887                    @setvar! PotionType 3847888                    @setvar! KegColour 44889                    @setvar! PotionAmounttoFill CurePotionAmount890                endif891                @setvar! PotionStockCheck 3892            elseif PotionStockCheck = 3893                if RefreshPotionAmount != 0894                    @setvar! PotionType 3851895                    @setvar! KegColour 37896                    @setvar! PotionAmounttoFill RefreshPotionAmount897                endif898                @setvar! PotionStockCheck 4899            elseif PotionStockCheck = 4900                if StrengthPotionAmount != 0901                    @setvar! PotionType 3849902                    @setvar! KegColour 956903                    @setvar! PotionAmounttoFill StrengthPotionAmount904                endif905                @setvar! PotionStockCheck 5906            elseif PotionStockCheck = 5907                if AgilityPotionAmount != 0908                    @setvar! PotionType 3848909                    @setvar! KegColour 93910                    @setvar! PotionAmounttoFill AgilityPotionAmount911                endif912                @setvar! PotionStockCheck 6913            elseif PotionStockCheck = 6914                if ResistPotionAmount != 0915                    @setvar! PotionType 3846916                    @setvar! KegColour 1109917                    @setvar! PotionAmounttoFill ResistPotionAmount918                endif919                @setvar! PotionStockCheck 7920            elseif PotionStockCheck = 7921                if PoisonPotionAmount != 0922                    @setvar! PotionType 3850923                    @setvar! KegColour 363924                    @setvar! PotionAmounttoFill PoisonPotionAmount925                endif926                @setvar! PotionStockCheck 8927            endif928 929            if PotionAmounttoFill != 0930                while counttype PotionType self < PotionAmounttoFill931                    if not findtype 'empty bottle%s%' self932                        if EnableOverheadMessages = 1 and timer 'PotionKegTimer' > 5000933                            overhead "[ NO EMPTY BOTTLES... ]" 337934                            settimer 'PotionKegTimer' 0935                        endif936                        break937                    endif938 939                    if diffhits > 10940                        break941                    endif942 943                    if findtype 'keg' self KegColour as myKeg944                        dclick myKeg945                        wait 250946                        if EnableOverheadMessages = 1947                            if timer 'PotionKegTimer' > 2000948                                overhead '[ FILLING POTS... ]' KegColour949                                settimer 'PotionKegTimer' 0950                            endif951                        endif952                    else953                        if EnableOverheadMessages = 1 and timer 'PotionKegTimer' > 5000954                            overhead "[ NO KEG TO USE... ]" KegColour955                            settimer 'PotionKegTimer' 0956                        endif957                        break958                    endif959                    if insysmsg "You have been in combat with another player"960                        settimer "PotionKegPVPCooldown" 0961                        break962                    endif963                endwhile964 965                if counttype PotionType self < PotionAmounttoFill and not findtype 'empty bottle%s%' self966                    if EnableOverheadMessages = 1 and timer 'PotionKegTimer' > 5000967                        overhead "[ NO EMPTY BOTTLES... ]" 337968                        settimer 'PotionKegTimer' 0969                    endif970                    break971                endif972            endif973        endwhile974    endif975 976    if EnablePanaceaAbility = 1977        if findbuff "bleed" or findbuff "diseased"978            if not findbuff "panacea potion cooldown"979                if findtype "Orange Potion" self980                    dclicktype "Orange Potion"981                    wait 500982                    if findbuff "panacea potion cooldown" and EnableOverheadMessages = 1983                        overhead "[ PANACEA ACTIVATED ]" 55984                    endif985                endif986            endif987        endif988    endif989 990    if not findtype "spellbook" hand and skill 'Magery' > 0 991        if findtype "spellbook" self as mySpellbook992            for 5993            if findtype "spellbook" self as mySpellbook994                getlabel mySpellbook mySpellbooklabel995                if "Aspect" in mySpellbooklabel996                    break997                elseif "unidentified" in mySpellbooklabel998                    ignore mySpellbook999                elseif "[blessed" in mySpellbooklabel1000                    ignore mySpellbook1001                elseif "spells" in mySpellbooklabel1002                    ignore mySpellbook1003                else1004                    break1005                endif1006            endif1007            endfor1008            dclick mySpellbook1009            clearignore1010            wait 5001011        else1012            if timer "SpellbookCheck" > 5000 and EnableOverheadMessages = 11013                overhead "[ NO SPELLBOOK! ]" 3371014                settimer "SpellbookCheck" 01015            endif1016        endif1017    endif1018 1019    if EnableEatMagicMushrooms = 11020        if diffmana > EatMushroomManadiff and timer MushroomTimer > MagicMushroomCooldown1021            if counttype 29012 backpack1022 1023                dclicktype 29012 backpack1024                getlabel backpack packdesc1025                wait 2501026 1027                if insysmsg "You consume a magic mushroom"1028                    settimer MushroomTimer 01029                    cooldown "Mushroom" MagicMushroomCooldown1030                    if EnableOverheadMessages = 11031                        overhead "[ EATING SHROOMS... ]" 131032                    endif1033                endif1034            elseif EnableOverheadMessages = 11035                overhead "[ OUT OF SHROOMS! ]" 3371036            endif1037        endif1038    endif1039    1040    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 self1041        cast 'Magic Reflection'1042        while not casting1043            getlabel backpack packdesc1044            wait 2501045            if insysmsg "that spell will not" or insysmsg "that spell is already"1046                settimer MagicReflectTimer 01047                break1048            endif1049            if targetexists1050                hotkey 'cancel current target'1051            endif1052            cast 'Magic Reflection'1053        endwhile1054 1055        while casting1056            if diffhits >= 501057                interrupt1058                break1059            endif1060 1061            if EnableCurePotion = 11062                while poisoned and casting and not targetexists1063                    if findtype "Orange Potion" self1064                        dclicktype "Orange Potion"1065                        if EnableOverheadMessages = 1 and timer 'OrangePotionMessageTimer' > 35001066                            overhead "[ CURE POTION ]" 441067                            settimer 'OrangePotionMessageTimer' 01068                        endif1069                        wait 5001070                    else1071                        if timer 'OrangePotionMessageTimer' > 5000 and EnableOverheadMessages = 11072                            overhead "[ NO CURE POTS! ]" 3371073                            settimer 'OrangePotionMessageTimer' 01074                        endif1075                        break1076                    endif1077                endwhile1078            endif1079 1080            if diffhits >= HealPotionHPdiff and EnableHealPotion = 1 and casting and not targetexists1081                if findtype "Yellow Potion" self as HealPotion1082                    getlabel HealPotion HealPotionlabel1083                    if "next" in HealPotionlabel1084                        // Do nothing1085                    else1086                        @setvar! HealPotionCheck 01087                        if counttype 3852 self as HealPotionAmount1088                            @setvar! HealPotionCheck HealPotionAmount1089                        endif1090                        clearsysmsg1091                        dclicktype 38521092                        getlabel backpack backpacklabel1093                        wait 2501094                        if HealPotionCheck != counttype 3852 self                                1095                            if EnableOverheadMessages = 11096                                if insysmsg "potion satchel used"1097                                    overhead "[ FREE HEAL POTION ]" 2531098                                else 1099                                    overhead "[ HEAL POTION ]" 2531100                                endif1101                            endif 1102                            cooldown "Healing Potion" HealingPotionCooldown1103                        endif1104                    endif1105                else1106                    if EnableOverheadMessages = 11107                        overhead "[ NO HEAL POTS! ]" 3371108                    endif1109                endif1110            endif1111        endwhile1112        wait 5001113    endif1114 1115    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 self1116        cast 'Reactive Armor'1117        while not casting1118            getlabel backpack packdesc1119            wait 2501120            if insysmsg "that spell will not" or insysmsg "that spell is already"1121                settimer ReactiveArmorTimer 01122                break1123            endif1124            if targetexists1125                hotkey 'cancel current target'1126            endif1127            cast 'Reactive Armor'1128        endwhile1129 1130        while casting1131        endwhile1132        getlabel backpack packdesc1133        wait 2501134    endif1135 1136    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 self1137        cast 'Protection'1138        while not casting1139            if targetexists1140                hotkey 'cancel current target'1141            endif1142            cast 'Protection'1143        endwhile1144        while casting1145        endwhile1146        wait 2501147    endif1148 1149    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 self1150        cast 'Arch Protection'1151        while not casting1152            if targetexists1153                hotkey 'cancel current target'1154            endif1155            cast 'Arch Protection'1156            wait 501157        endwhile1158 1159        while not targetexists and casting1160        endwhile1161 1162        wft 5501163        target 'self'1164        wait 2501165    endif1166 1167    if EnableBless = 1 and skill 'magery' >= 50 and not findbuff "Cunning" and mana >= MinimumManaToApplyBuffs and findtype 3972 self and findtype 3974 self1168        cast 'Bless'1169        while not casting1170            if targetexists1171                hotkey 'cancel current target'1172            endif1173            cast 'Bless'1174            wait 501175        endwhile1176 1177        while not targetexists1178            wait 1001179        endwhile1180 1181        wft 10001182        target 'self'1183        wait 2501184    endif1185 1186    if not findbuff 'food satisfaction' and EnableEatingFood = 11187        if findtype "tray" self as Food1188            if EnableOverheadMessages = 11189                overhead "[ EATING FOOD... ]" 881190            endif1191            dclick Food1192            wait 5001193        else1194            if timer EatFoodMessageTimer > 40001195                if EnableOverheadMessages = 11196                    overhead "[ NO FOOD FOUND ]" 3371197                    settimer EatFoodMessageTimer 01198                endif1199                settimer EatFoodMessageTimer 0 1200            endif1201        endif1202    endif1203    1204    if EnableGoldVacuum = 11205        if findtype "gold coin" ground -1 -1 12 as droppedmoney and timer "GoldRadar" > 35001206            overhead " � " 149 droppedmoney1207            settimer "GoldRadar" 01208        endif1209        while findtype "gold coin" ground -1 -1 2 as droppedmoney1210            overhead " � " 1491211            hotkey "Grab Item"1212            wft 25001213            target droppedmoney1214            wait 2501215            if dead1216                replay1217            endif1218            if insysmsg "Invalid or inaccessible item"1219                wait 5001220                @ignore droppedmoney1221            endif1222            wait 2501223        endwhile1224    endif1225 1226    if EnableDungeonCleanup = 11227        while findtype "iron ingot%s|board%s|cut up leather|3972|3962|3963|3980|3976|3973|3974|3981" ground -1 -1 2 as item1228            if EnableOverheadMessages = 11229                if timer "DungeonCleanup" > 15001230                    overhead '[ CLEANUP... ]' 4201231                    settimer "DungeonCleanup" 01232                endif1233            else1234                if timer "DungeonCleanup" > 15001235                    overhead ' � ' 4201236                    settimer "DungeonCleanup" 01237                endif1238            endif1239            hotkey "Grab Item"1240            wft 10001241            target item1242            wait 5001243            if dead1244                replay1245            endif1246        endwhile1247 1248        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" > 35001249            overhead "�" 420 dungeonjunk1250            settimer "DungeonCleanupRadar" 01251        endif1252    endif1253 1254    if EnableAutoCarving = 11255        while findtype "corpse" ground -1 -1 2 as deadbody 1256            if findtype 11552 self1257                if targetexists1258                    hotkey 'cancel current target'1259                endif1260                while not targetexists1261                    skill 'forensicevaluation'1262                endwhile1263                if targetexists and find deadbody ground -1 -1 21264                    target 'self'1265                    @ignore deadbody1266                    wait 5001267                endif1268                if insysmsg "You dont see anything nearby"1269                    clearsysmsg1270                    break1271                else1272                    if EnableOverheadMessages = 1 and timer SkinningTimer > 30001273                        overhead "[ SKINNING... ]" 3331274                        settimer SkinningTimer 01275                    endif1276                    break1277                endif1278            else1279                if EnableOverheadMessages = 1 and timer SkinningTimer > 15000 and skill 'forensicevaluation' > 01280                    overhead "[ NO SKINNING KNIFE ]" 3371281                    settimer SkinningTimer 01282                endif1283                break1284            endif1285        endwhile1286    endif1287 1288    if skill 'magery' > 01289        if counttype 29012 self = 0 and EnableMagicMushroomMaker = 11290            while counttype 29012 self < MakeMushroomAmount and mana > 31291                if timer 'MushroomMakerTimer' > 45001292                    overhead "[ MAKING SHROOMS... ]" 4191293                    settimer 'MushroomMakerTimer' 01294                endif1295                if not casting1296                    cast 'create food'1297                endif1298                if diffhits > 151299                    break1300                endif1301            endwhile1302        endif1303    endif1304 1305    if EnableWeightWarningMessage = 11306        if diffweight < GreenWarningDiffWeight and diffweight > YellowWarningDiffWeight and timer "WeightTimer" > 60001307            if EnableOverheadMessages = 11308                overhead "[ WEIGHT WARNING... ]" 771309                settimer "WeightTimer" 01310            else1311                overhead " � " 771312                settimer "WeightTimer" 01313            endif1314        elseif diffweight < YellowWarningDiffWeight and diffweight > RedWeightLimitDiffWeight and timer "WeightTimer" > 60001315            if EnableOverheadMessages = 11316                overhead "[ WEIGHT WARNING! ]" 1531317                settimer "WeightTimer" 01318            else1319                overhead " � " 1531320                settimer "WeightTimer" 01321            endif1322            elseif diffweight < RedWeightLimitDiffWeight and timer "WeightTimer" > 35001323            if EnableOverheadMessages = 11324                overhead "[ WEIGHT LIMIT REACHED! ]" 371325                settimer "WeightTimer" 01326            else1327                overhead " � " 371328                settimer "WeightTimer" 01329            endif1330        endif1331    endif1332 1333    if dead1334        break1335    endif1336    1337    if dead 1338        stop1339    endif1340endwhile1341 1342////////////////////////1343//   SCRIPT FINISH    //1344////////////////////////1345 1346 1347 1348 1349 1350    // Thank you for using my scripts!  I can be contacted via email here: dan@danstockman.com 1351    // Good luck out there and say hello if you see me in Avadon (Lord Glacier) - please don't PK me lol1352    1353    1354 1355 1356