Compatibility unverified
This community Razor script has not been tested in game by the Hub. Read its setup and client requirements before use.
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