Magic Recycler like Sorter v3 (Wildlands update) by special_sy

Created: 11/14/2023
Last Updated: about 1 year ago
Description from the author:

This script scans all the items first and THEN sorts them, so be patient once it's started :)

# Script by [DoS] Chumbeer # It basicly works like the item recycler trimmed down to upper options # !! Items have to be identified unless you got 120 item id !! # It will sort trash to your backpack to recycle # It will auto recycle with a sewing kit on full # Set source and good item container and let it run # Settings are configured to how i run it aka what is sellable ;) # >info your container and set the IDs! @setvar container_magicSorter_source 0x405C38C2 @setvar container_magicSorter_keep 0x53ABC5F0 # Settings @setvar verbose_recycle 1 @setvar verbose_keep 1 @setvar auto_recycle 1 # Set to 1 what to keep @setvar weapons_slayer_lesser 0 @setvar weapons_slayer_regular 0 @setvar weapons_slayer_greater 1 @setvar weapons_damage_force 0 @setvar weapons_damage_power 0 @setvar weapons_damage_vanq 1 @setvar weapons_accuracy_eminently 0 @setvar weapons_accuracy_exceedingly 0 @setvar weapons_accuracy_supremely 1 @setvar armor_protection_hardening 0 @setvar armor_protection_fortification 0 @setvar armor_protection_invul 1 @setvar book_potency_eminently 0 @setvar book_potency_exceedingly 1 @setvar book_potency_supremely 1 @setvar book_damage_force 0 @setvar book_damage_power 0 @setvar book_damage_vanq 1 @setvar instrument_slayer_lesser 0 @setvar instrument_slayer_regular 1 @setvar instrument_slayer_greater 1 @setvar instrument_artistry_eminently 0 @setvar instrument_artistry_exceedginly 0 @setvar instrument_artistry_supremely 1 dclick container_magicSorter_source wait 500 # --- CONFIG END --- if not listexists goodItems createlist goodItems else clearlist goodItems endif if not listexists recycleItems createlist recycleItems else clearlist recycleItems endif @clearignore @clearsysmsg @setvar container_magicSorter_recycle 'backpack' if skill 'Item Identification' = 120 overhead "Item Id on container..." 88 useskill 'itemid' wft 1000 target container_magicSorter_source wait 1000 endif #weapons overhead "Checking Weapons" 88 while findtype 30999|31169|3568|3570|3571|3572|3573|3713|3719|3721|3740|3742|3762|3763|3834|3909|3911|3913|3915|3917|3920|3922|3932|3934|3937|3938|5040|5042|5044|5046|5049|5112|5115|5117|5119|5121|5123|5125|5127|5177|5179|5181|5182|5185|5187|7026|7027|7029|7031|7033|7034|7035|7107|7109|9917|10245|22187|30988|30989|30990|30992|30993|30994|30995|30996|30997|30998|31128|31141|31142|31176|31184|31186|31188|31190 container_magicSorter_source as item getlabel item itemLabel if 'unidentified' in itemLabel overhead "Skipping {{itemLabel}}" @ignore item continue endif @setvar keepItem 0 # Decide what to keep if 'lesser slaying' in itemLabel and weapons_slayer_lesser = 1 pushlist goodItems item elseif 'greater slaying' in itemLabel and weapons_slayer_greater = 1 pushlist goodItems item elseif 'slaying' in itemLabel and weapons_slayer_regular = 1 pushlist goodItems item elseif 'force' in itemLabel and weapons_damage_force = 1 pushlist goodItems item elseif 'power' in itemLabel and weapons_damage_power = 1 pushlist goodItems item elseif 'vanquishing' in itemLabel and weapons_damage_vanq = 1 pushlist goodItems item elseif 'eminently accurate' in itemLabel and weapons_accuracy_eminently = 1 pushlist goodItems item elseif 'exceedingly accurate' in itemLabel and weapons_accuracy_exceedingly = 1 pushlist goodItems item elseif 'supremely accurate' in itemLabel and weapons_accuracy_supremely = 1 pushlist goodItems item else pushlist recycleItems item endif @ignore item endwhile #armor overhead "Checking Armor" 88 while findtype 7026|7027|7029|7031|7033|7034|7035|7107|7109|31002|31130|5056|5059|5060|5061|5063|5070|5074|5075|5076|5078|5085|5089|5090|5101|5103|5105|5106|5129|5131|5132|5135|5138|5139|5142|5143|5144|5146|5201|5203|5204|5205|5207|7169|7170|7173|7175|7177|7179|7181|7610|7947|31003|31004|31005|31006|31007|31008|31009|31010|31011|31012|31015|31191 container_magicSorter_source as item getlabel item itemLabel if 'unidentified' in itemLabel overhead "Skipping {{itemLabel}}" @ignore item continue endif @setvar keepItem 0 # Decide what to keep if 'hardening' in itemLabel and armor_protection_hardening = 1 pushlist goodItems item elseif 'fortification' in itemLabel and armor_protection_fortification = 1 pushlist goodItems item elseif 'invulnerability' in itemLabel and armor_protection_invul = 1 pushlist goodItems item else pushlist recycleItems item endif @ignore item endwhile #book overhead "Checking spellbooks" 88 while findtype 'spellbook' container_magicSorter_source 2606 as item getlabel item itemLabel @setvar keepItem 0 if 'unidentified' in itemLabel overhead "Skipping {{itemLabel}}" @ignore item continue endif # Decide what to keep if 'eminently potent' in itemLabel and book_potency_eminently = 1 pushlist goodItems item elseif 'exceedingly potent' in itemLabel and book_potency_exceedingly = 1 pushlist goodItems item elseif 'supremely potent' in itemLabel and book_potency_supremely = 1 pushlist goodItems item elseif 'force' in itemLabel and book_damage_force = 1 pushlist goodItems item elseif 'power' in itemLabel and book_damage_power = 1 pushlist goodItems item elseif 'vanquishing' in itemLabel and book_damage_vanq = 1 pushlist goodItems item else pushlist recycleItems item endif @ignore item endwhile #instruments overhead "Checking instruments" 88 while findtype 3740|3742|3762|3763|10245|20006|20008|20010|20012|20014|20016 container_magicSorter_source as item getlabel item itemLabel @setvar keepItem 0 if 'unidentified' in itemLabel overhead "Unidentified {{itemLabel}}" @ignore item continue endif # Decide what to keep if 'lesser slaying' in itemLabel and instrument_slayer_lesser = 1 pushlist goodItems item elseif 'greater slaying' in itemLabel and instrument_slayer_greater = 1 pushlist goodItems item elseif 'slaying' in itemLabel and instrument_slayer_regular = 1 pushlist goodItems item elseif 'eminently' in itemLabel and instrument_artistry_eminently = 1 pushlist goodItems item elseif 'exceedingly' in itemLabel and instrument_artistry_exceedingly = 1 pushlist goodItems item elseif 'supremely' in itemLabel and instrument_artistry_supremely = 1 pushlist goodItems item else pushlist recycleItems item endif @ignore item endwhile overhead "Storing good items..." foreach item in goodItems getlabel item itemLabel overhead "Keeping {{itemLabel}}" 88 lift item wait 250 drop container_magicSorter_keep -1 -1 -1 wait 250 endfor overhead "Taking the junk..." foreach item in recycleItems getlabel item itemLabel overhead "Trashing {{itemLabel}}" 243 lift item wait 250 drop backpack -1 -1 -1 wait 250 while diffweight < 10 or insysmsg 'That container cannot hold' if auto_recycle = 1 if findtype "sewing kit" 'backpack' as tool overhead "Recycling via sewing kit!" 88 dclick tool waitforgump 949095101 while not ingump 'Recycle All Magical' gumpresponse 2 waitforgump 949095101 endwhile gumpresponse 3 wft 500 target self wait 500 else overhead "Cannot find any sewing kits, stopping!" 32 stop endif else overhead "Please recycle, you are full" 88 wait 5000 endif endwhile endfor # recycle at the end if auto_recycle = 1 if findtype "sewing kit" 'backpack' as tool overhead "Recycling via sewing kit!" 88 dclick tool waitforgump 949095101 while not ingump 'Recycle All Magical' gumpresponse 2 waitforgump 949095101 endwhile gumpresponse 3 wft 500 target self wait 500 waitforgump 949095101 gumpclose endif endif overhead "All done, thanks for using!" 88

Quick Filters

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