Skip to content
Outlands Hub

Razor script

Inn Butler Chest/Map

by nulreth · 386 lines
Download

Chest & Map Butler Script By Nulreth Inspirted by Bapeths but built for Inn room use for friends to come in and use So far i put 50 maps in a chest then turned the bot on it did them all no issues What it does: - Paragon Chest Opener: Drop…

Inn Butler ChestMap.razor
1# This is an automated backup - check out https://outlands.uorazorscripts.com/script/a5d097d8-7e86-4fe3-9420-ad7920d8ea37 for latest2# Automation by Jaseowns3## Script: Inn Butler Chest/Map4## Created by: nulreth#05#############################################6 7# Chest & Map Butler8# Script By Nulreth9# Inspirted by Bapeths but built for Inn room use for friends to come in and use10#11# So far i put 50 maps in a chest then turned the bot on it did them all no issues12#13#14# What it does:15# - Paragon Chest Opener: Drop paragon chests into the selected container, they will be16#   auto-picked up, opened, and loot sorted back into the same container17# - Map Decoder: Drop any map type into the selected container, it will be18#   auto-decoded and placed back in the container, then the next map is grabbed19#20# REQUIRED SKILLS:21# 120 Lockpicking   - For opening paragon chest locks22# 120 Detect Hidden - For removing paragon chest traps23# 120 Cartography   - For decoding maps24#25# REQUIRED ITEMS (in backpack):26# "Lockpicks" x227# "Trap Removal Tools" x228# "Avarite Spyglass or higher" x329# A Storage Shelf within 2 tiles (for tool restocking)30#31# IN GAME PARAGON CHEST MENU:32# "Continuous Lockpicking" and "Continuous Remove Trap" must be checked33#34# FULL VARIABLE RESET:35# Enter WARMODE + Open Party Menu, then run the script to wipe all memory36#37#########################################################################38 39# Variable Reset40if warmode and gumpexists 352748958641    gumpclose 352748958642    overhead "VARIABLE RESET..." 3843    if varexist lootcontainer44        @unsetvar "lootcontainer"45    endif46    if varexist myshelf47        @unsetvar "myshelf"48    endif49    if varexist pushcontainer50        @unsetvar "pushcontainer"51    endif52    overhead "MEMORY WIPED..." 3853    pause 200054endif55 56if not timerexists Nulbutler57    createtimer Nulbutler58    settimer Nulbutler 4750059    elseif timer Nulbutler >= 4750060    say "Daddy exist to serve thee..." 8861    settimer Nulbutler 062endif63 64 65if not timerexists Nulbutler266    createtimer Nulbutler267    settimer Nulbutler2 9750068    elseif timer Nulbutler2 >= 9750069        say "Daddy give me something to play with" 8870    settimer Nulbutler2 071endif72 73# Container Setup - Select the container to pull paragon chests and maps from74if not varexist lootcontainer75    hotkey "Cancel Current Target"76    hotkey "Set Last Target"77    wft 100078    while targetexists79        if not timerexists lootcontainerselect80            createtimer lootcontainerselect81            settimer lootcontainerselect 450082        elseif timer lootcontainerselect >= 450083            settimer lootcontainerselect 084            overhead "Select Loot Container" 3885        endif86    endwhile87    @setvar "lootcontainer" lasttarget88    overhead "Loot Container Set!" 6989    pause 60090    if timerexists lootcontainerselect91        removetimer lootcontainerselect92    endif93endif94 95# Push Container Setup - Completed maps and picked chests get moved here96if not varexist pushcontainer97    hotkey "Cancel Current Target"98    hotkey "Set Last Target"99    wft 1000100    while targetexists101        if not timerexists pushcontainerselect102            createtimer pushcontainerselect103            settimer pushcontainerselect 4500104        elseif timer pushcontainerselect >= 4500105            settimer pushcontainerselect 0106            overhead "Select Push Container" 38107        endif108    endwhile109    @setvar "pushcontainer" lasttarget110    overhead "Push Container Set!" 69111    pause 600112    if timerexists pushcontainerselect113        removetimer pushcontainerselect114    endif115endif116 117# Storage Shelf Setup - Used to restock lockpicks, drills, and spyglass118if not varexist myshelf119    if findtype "storage shelf|gothic storage shelf|spring storage shelf|winter storage shelf" ground -1 -1 2 as shelf120        @setvar "myshelf" shelf121    else122        hotkey "Cancel Current Target"123        overhead "Storage Shelf not Found" 38124        overhead "Manual Select..." 45125        overhead "Select Backpack if none..." 45126        hotkey "Set Last Target"127        wft 500128        while targetexists129            if not timerexists lootcontainerselect130                createtimer lootcontainerselect131                settimer lootcontainerselect 4500132            elseif timer lootcontainerselect >= 4500133                settimer lootcontainerselect 0134                overhead "Set Storage Shelf" 38135                overhead "Select Backpack if none..." 45136            endif137        endwhile138        getlabel lasttarget desc139        if "backpack" in desc140            @setvar "myshelf" lasttarget141        else142            @setvar "myshelf" lasttarget143            overhead "Storage Shelf Set!" 69144            if timerexists lootcontainerselect145                settimer lootcontainerselect 4500146            endif147            pause 600148        endif149    endif150endif151 152# Keep container open if it is on the ground153if not timerexists lcd1 and find "lootcontainer" ground -1 -1 2154    while queued155        //donothing156    endwhile157    dclick "lootcontainer"158    createtimer lcd1159endif160if timerexists lcd1 and not find "lootcontainer" ground -1 -1 2161    removetimer lcd1162endif163 164#########################################################################165# Map Decoder166# Pulls maps one at a time from the container, fully decodes them,167# drops the decoded map back into the container, then grabs the next one168#########################################################################169if skill "Cartography" >= 120 and findtype "spyglass" backpack170    if not timerexists mapdecodetimer171        createtimer mapdecodetimer172        settimer mapdecodetimer 5000173    endif174    if timer mapdecodetimer >= 5000175        clearsysmsg176        settimer mapdecodetimer 0177        getlabel backpack ping178        if findtype "spyglass" backpack as spygls179            while queued180                //donothing181            endwhile182            gumpclose 1520869851183            gumpclose 3367641484184            gumpclose 3473029237185            gumpclose 1332805401186            gumpclose 2589357942187            getlabel backpack ping188            // Grab map from container if not already in backpack189            if findtype "Map" backpack as map190                //donothing191            elseif findtype "Map" "lootcontainer" as map192                drop backpack193                lift map194                drop backpack195                while queued196                    //donothing197                endwhile198                getlabel backpack ping199            endif200            // Decode the map201            if findtype "Map" backpack as map202                dclick spygls203                wft 1000204                target map205                getlabel backpack ping206                for 5000207                    gumpresponse 4208                    getlabel backpack ping209                    pause 200210                    if insysmsg "You have reached the maximum accuracy possible"211                        break212                    endif213                    if not findtype "spyglass" backpack214                        menu myshelf 1215                        getlabel backpack ping216                        dclick map217                        getlabel backpack ping218                        if not findtype "spyglass" backpack219                            overhead "I have no Spyglass..." 38220                            replay221                        endif222                    endif223                endfor224                // Close any open map gumps225                gumpclose 1520869851226                gumpclose 3367641484227                gumpclose 3473029237228                gumpclose 1332805401229                gumpclose 2589357942230                // Drop decoded map into the push container231                if findtype "Map" backpack as decodedmap232                    drop backpack233                    lift decodedmap234                    drop pushcontainer -1 -1 0235                    while queued236                        //donothing237                    endwhile238                    getlabel backpack ping239                endif240            endif241        endif242    endif243endif244 245#########################################################################246# Paragon Chest Opener247# Pulls paragon chests one at a time from the container, disarms the trap,248# picks the lock, dumps loot back into the container, then grabs the next one249#########################################################################250if skill "Lockpicking" = 120 and skill "Detect" = 120 and findtype "lockpicks" backpack and findtype "drill" backpack251    if not timerexists paragontimer252        createtimer paragontimer253        settimer paragontimer 5000254    endif255    if timer paragontimer >= 5000256        settimer paragontimer 0257        gumpclose 736038070258        clearsysmsg259        @clearignore260        while queued261            //donothing262        endwhile263        getlabel backpack ping264        // Grab chest from container if not already in backpack265        if findtype 3712|3648|3650|3708|3648|2475|3649|29833|29832 backpack as ParagonChest266            //donothing267        elseif findtype 3712|3648|3650|3708|3648|2475|3649|29833|29832 "lootcontainer" as ParagonChest268            drop backpack269            lift ParagonChest270            drop backpack271            while queued272                //donothing273            endwhile274            getlabel backpack ping275            if insysmsg "You cannot pick that up."276                @ignore ParagonChest277            endif278        endif279        if findtype 3712|3648|3650|3708|3648|2475|3649|29833|29832 backpack as ParagonChest280            dclick ParagonChest281            getlabel backpack ping282            // Equip shield for trap protection if available283            if not casting and findtype "Heater Shield|Chaos shield|Order shield" backpack as ParagonBlastProtection284                if not findlayer self lefthand285                    while queued286                        //donothing287                    endwhile288                    dclick ParagonBlastProtection289                    getlabel backpack ping290                endif291            endif292            // Disarm trap293            if gumpexists 736038070 and not ingump "Cleared Of Traps" 736038070294                while gumpexists 736038070295                    gumpresponse 7296                    waitforgump 736038070 1000297                    if insysmsg "You attempt to remove traps"298                        clearsysmsg299                        break300                    endif301                    if insysmsg "That appears to be devoid"302                        clearsysmsg303                        break304                    endif305                endwhile306                overhead "*disarming*" 1060 ParagonChest307                while not dead308                    if not findtype "drill" backpack309                        menu myshelf 1310                        getlabel backpack ping311                        dclick ParagonChest312                        waitforgump 736038070 1000313                        gumpresponse 7314                        getlabel backpack ping315                        if not findtype "drill" backpack316                            overhead "I have no Trap Tools..." 38317                            replay318                        endif319                    endif320                    if insysmsg "You make some progress towards clearing it of traps"321                        overhead "*clink*" 810 ParagonChest322                    endif323                    if insysmsg "You have successfully cleared it of traps"324                        overhead "*tick*" 2091 ParagonChest325                        break326                    endif327                    if ingump "Cleared Of Traps" 736038070328                        overhead "*tick*" 2091 ParagonChest329                        break330                    endif331                endwhile332                waitforgump 736038070 1000333            endif334            // Pick lock335            if gumpexists 736038070 and ingump "Cleared Of Traps" 736038070336                while gumpexists 736038070337                    gumpresponse 4338                    waitforgump 736038070 1000339                    if insysmsg "You attempt to pick the lock"340                        clearsysmsg341                        break342                    endif343                    if insysmsg "It appears to be unlocked"344                        clearsysmsg345                        break346                    endif347                endwhile348                overhead "*picking*" 1060 ParagonChest349                while not dead350                    if not findtype "lockpicks" backpack351                        menu myshelf 1352                        getlabel backpack ping353                        dclick ParagonChest354                        waitforgump 736038070 1000355                        gumpresponse 7356                        getlabel backpack ping357                        if not findtype "lockpicks" backpack358                            overhead "I have no Lockpicks..." 38359                            replay360                        endif361                    endif362                    if insysmsg "You make some progress on the lock"363                        overhead "*click*" 810 ParagonChest364                    endif365                    if insysmsg "You successfully pick the lock"366                        overhead "*pop*" 2091 ParagonChest367                        break368                    endif369                endwhile370                gumpclose 736038070371            endif372            // Drop the finished chest into the push container373            drop backpack374            lift ParagonChest375            drop pushcontainer -1 -1 0376            while queued377                //donothing378            endwhile379            getlabel backpack ping380            @ignore ParagonChest381            gumpclose 736038070382        endif383    endif384endif385 386loop