MrPlow
Regain that wasted space!
MrPlow is a fast and simple inventory sorter. Designed generally for Onebag style setups where it treats all bags as a single one, it will sort all the items in your inventory, bank or guild bank into item groups and types.
Could those who are having looping issues with the inventory sorting, and are willing to do a bit of debugging to help find the cause, post a ticket here with all the items that are being swapped around with? It's important to list all the items in that group, because the sorting algorithm has a few levels, and the reason it's looping is that the items are matching to the same comparison at different levels, so there ends up being conflicts in the order, depending on which gets compared first. I'll take those items, and give you a line to insert into the code so it'll output exactly how each of the items are being compared/sorted to one another, and from there we can debug where it's making the mistake.
To post a support ticket, please click here
So... uh. Yeah.
A year after the latest release, MrPlow is back. I went through the effort to kinda pimp him up a bit. He will work a lot faster (and without AceTimer/Event). I'd like some feedback on how it deals with special bags, currently it won't group them up well if you have multiple of the same bag, but it will sort within those bags (and consolidate to them all). Also, any suggestions as to the UI would be appreciated.
The commands are as follows:
/mrplow [[g]bank] [stack|defrag|sort|consolidate|theworks]
stack
- Restack all items to fit in the smallest number of slotsdefrag
- Move items to leave all available space at one end of the bagssort
- Sort all inventory items in placeconsolidate
- Move items from the normal bags to special bags if they fittheworks
- Runs Stack->Consolidate->Defrag->Sort->Stack
this comes out to:
Normal bags
/mrplow stack
/mrplow defrag
/mrplow sort
/mrplow consolidate
/mrplow theworks
Your bank:
/mrplow bank stack
/mrplow bank defrag
/mrplow bank sort
/mrplow bank consolidate
/mrplow bank theworks
Guild bank (No special bags to consolidate with):
/mrplow gbank stack
/mrplow gbank defrag
/mrplow gbank sort
/mrplow gbank theworks
And, if anything goes wrong, and MrPlow appears to be swapping items forever:
/mrplow stop
will apply the emergency brakes.
(/mp
is also a shortcut)
10.2.10 Darkmoon decks are now sorted within each other
10.2.9 - Adjusted guildbank sorting to not fail so much at the end. Changed special bag detection and consolidation forthwith.
10.2.6 - Added a fix for the Spring Flowers (which don't actually have an official equipslot location... damn them..) and one for those who were getting the null reference.
10.2.5 - Er, this bugfix fixes the sorting issue between chests and robes. Also included are some debug switches to make it a little easier to submit a ticket. Check out the bug ticket if you're having issues and follow the prompts there.
10.2.4 - This bugfix fixes the sorting issue between chests and robes. Temporarily, if you want, use /script MrPlow:Ignore(bag, slot)
to ignore a specific slot. I'll have it shoved into a config ui soon. Personal bags are 0,1,2,3,4 from the backpack, bank is -1,5,6,7,8,9,10,11. Remove the reference to the slot if you want to ignore a bag (MrPlow:Ignore(bag)
). Guildbank stuff is a little more involved for setting the ignore settings. I'll have this all in a ui at some point soon.
10.2.3 - This version fixes the issue in regards to equipment not sorting correctly, along with tradeskill items. This will also fix some of the infinite sort loops that occur in regards to Simple Grinding Stones and others.
10.2.2 - This is a embeds fix for people who want a clean install to actually work. Apologies for the messup on that.
10.2.1 - If you want reversed functionality, hit
/script MrPlow.db.profile.EmptySpace = "Top"
for the moment, until I can get a UI config going. This will set a toggle to affect the normal direction of flow of the addon. Set
/script MrPlow.db.profile.EmptySpace = ""
to undo it.
10.1 has guildbank functionality, please be aware however, that this is not perfect (and I very much doubt it will ever be). The problem with guild banking, is that due to it's shared functionality with other players, the response time for any action is far longer than your personal inventory/bank.
Thus, applying the normal speeds to the operation results in a hozillion spammed attempts at moving items. It all sounds very pretty, but is less than effective, as it attempts to move stuff, checks the order, tries to move it again, checks the order, etc etc repeat til you hear a ringing sound in your ears.
Hm, I'll have to check if the BOEP is in the checklist
Thank you! It's awesome as is, can't wait until the bugs are sorted out.
sometimes it sort at end 3 items around x-times
I wish you can also include that I can select at which bag it gives something. Also thing the addon should left the 1.st bag empty not the last.
items to wear should be at the second last, because the last is by me always aspecific bag. Maybe you can make options to set it.
sry for my poor english, I hope you will understand it
1x LibPeriodicTable-3.1-90006:282: Invalid arg2: set must be a string
LibPeriodicTable-3.1-90006:282: in function `ItemInSet'
MrPlow-10.1\PlowEngine.lua:265: in function `?'
MrPlow-10.1\PlowEngine.lua:825: in function <MrPlow\PlowEngine.lua:813>
Locals:
self =
ItemSearch = <function> @ LibPeriodicTable-3.1\LibPeriodicTable-3.1\LibPeriodicTable-3.1.lua:344:
GetSetString = <function> @ LibPeriodicTable-3.1\LibPeriodicTable-3.1\LibPeriodicTable-3.1.lua:244:
IsSetMulti = <function> @ LibPeriodicTable-3.1\LibPeriodicTable-3.1\LibPeriodicTable-3.1.lua:249:
ItemInSet = <function> @ LibPeriodicTable-3.1\LibPeriodicTable-3.1\LibPeriodicTable-3.1.lua:280:
AddData = <function> @ LibPeriodicTable-3.1\LibPeriodicTable-3.1\LibPeriodicTable-3.1.lua:304:
embedversions =
IterateSet = <function> @ LibPeriodicTable-3.1\LibPeriodicTable-3.1\LibPeriodicTable-3.1.lua:264:
sets =
GetSetTable = <function> @ LibPeriodicTable-3.1\LibPeriodicTable-3.1\LibPeriodicTable-3.1.lua:239:
}
item = "40826"
set = nil
assert = <function> defined =[C]:-1
type = <function> defined =[C]:-1
getItemID = <function> @ LibPeriodicTable-3.1\LibPeriodicTable-3.1\LibPeriodicTable-3.1.lua:50:
cache =
Misc.Bag.Special.Mining =
TradeskillLevels.Engineering =
Misc.Bag.Special.Enchanting =
Tradeskill.Crafted.Engineering.Gnomish =
Tradeskill.Tool.Fishing.Lure =
Misc.Bag.Special.Ammo =
Tradeskill.Crafted.Engineering.Goblin =
TradeskillLevels.Engineering.Basic =
Misc.Usable.Permanent =
Tradeskill.Tool.Fishing.Other =
Tradeskill.Tool.Fishing.Gear =
Misc.Bag.Special.Jewelcrafting =
Misc.Bag.Special.Quiver =
Tradeskill.Crafted.Engineering.Basic =
Misc.Bag.Special.Leatherworking =
Misc.Bag.Special.Soul Shard =
Tradeskill.Tool.Fishing =
Misc.Bag.Special.Engineering =
Tradeskill.Tool.Fishing.Tool =
Misc.Bag.Special.Herb =
Misc.Usable.Fun =
TradeskillLevels.Engineering.Goblin =
Misc.Bag.Special =
Tradeskill.Crafted.First Aid =
Misc.Bag.Special.Inscription =
TradeskillLevels.Engineering.Gnomish =
Tradeskill.Crafted.Engineering =
Tradeskill.Tool.Mining =
}
next = <function> defined =[C]:-1
ipairs = <function> defined =[C]:-1
---
Hello, I wanted to beta test but the lack of menu on the LDB Data broker was stoping me. I added a some code to get a menu to my local version. It's not very polished and doesn't have any localization code but it does the job for me and might allow others to beta test the MrPlow more.
Here's the code
Note that I put Defrag instead of The Works as the default. It's my personal preference, feel free to change that. The menu also allow to hide or show the minimap icon.
BTW, for those who just want to hide the minimap icon and don't want to modify their local copy of the addon, use the following script:
You only need to do it once since MrPlow will remember not to show the button the next time you log in.
To get the icon back, you run the following script:
Anyways, I'm very glad you started working again on the addon. So far, it appears to be working way better then it used to.
Best
Date: 2009-12-13 00:09:24
ID: 4
Error occured in: Global
Count: 1
Message: ..\AddOns\MrPlow\PlowEngine.lua line 944:
table index is nil
Debug:
(tail call): ?
[C]: ?
MrPlow\PlowEngine.lua:944: AddWatchList()
MrPlow\MrPlow.lua:159: ?()
...\ButtonFacade\Libs\AceConsole-3.0\AceConsole-3.0.lua:94: value()
..\FrameXML\ChatFrame.lua:3565:
..\FrameXML\ChatFrame.lua:3497
[C]: ChatEdit_ParseText()
..\FrameXML\ChatFrame.lua:3213: ChatEdit_SendText()
..\FrameXML\ChatFrame.lua:3237: ChatEdit_OnEnterPressed()
[string "*:OnEnterPressed"]:1:
[string "*:OnEnterPressed"]:1
Also, wasn't there a drop down menu on the minimap button in a previous version?
MrPlow.lua
line 95:
icon:Register("MrPlowLDB", myldb, db)
comment that one out
Error when I tried to sort my bank:
1x attempt to compare nil with table: <in C code>: in function `sort' MrPlow-10.1\PlowEngine.lua:736: in function `?' MrPlow-10.1\PlowEngine.lua:827: in function <MrPlow\PlowEngine.lua:813>
Locals: (*temporary) = <table> { 37 = <table> {} 160 = <table> {} } (*temporary) = nil (*temporary) = <table> { itemName = "Glacial Salmon" itemRanking = 8 itemEquipLoc = "" itemLevel = 70 slot = 13 Set = "" itemStackCount = 20 bag = 7 itemSubType = "Meat" itemRarity = 1 itemMinLevel = 0 itemID = "41809" itemType = "Trade Goods" itemTexture = "Interface\Icons\INV_Misc_Fish_51" itemArmWepRanking = 27 itemLink = "|Hitem:41809:0:0:0:0:0:0:0:71[Glacial Salmon]" pos = 80 } (*temporary) = nil
-I'd like to get rid of that minimap button. What code do I need to comment out? Thanks!
Date: 2009-12-11 09:07:56
ID: 4
Error occured in: Global
Count: 1
Message: ..\AddOns\MrPlow\PlowEngine.lua line 724:
attempt to call field 'new' (a nil value)
Debug:
[C]: new()
MrPlow\PlowEngine.lua:724: ?()
MrPlow\PlowEngine.lua:823:
MrPlow\PlowEngine.lua:809
Head to line 652 and put local before the Item = getTable()
local Item = getTable()
and see if that helps