Download
(137Kb)
Download
Updated: 09-24-12 05:37 AM
Pictures
File Info
Updated:09-24-12 05:37 AM
Created:12-29-09 11:31 AM
Downloads:18,447
Favorites:186
MD5:
Categories:Data Broker, Auction House & Vendors, Bags, Bank, Inventory

Broker Garbage  Popular! (More than 5000 hits)

Version: 5.0v2
by: ckaotik [More]

Have you ever been in a situation where you just can't turn in a quest because your inventory is full? Trying to figure out an item to delete that's cheap and won't make you loose much gold?
This is one of the many situations where Broker_Garbage makes your life easier.

What is it?

Broker_Garbage shows your cheapest item(s) for easily freeing bag space. It uses your auction addon of choice for pricing, including disenchant prices if available. And if you don't want to throw away that [Broken I.W.I.N. Button], put it on your Exclude List and Broker_Garbage will keep it. Forever. Really! And those [Shiny Fish Scales]? Just put them on your Include List.

This addon works as-is but you will only see the text and tooltip if you use an LDB display addon. Some are Bagnon, DockingStation, Bazooka.

Basic Features - all features can be disabled if you don't want to use them

  • sells junk & chosen items to vendors
  • repairs your items if possible
  • sells equipment you can't use nor trade/mail
  • sells equipment you're not interested in (e.g. cloth on a warrior)
  • supports auction values from: Auctionator, Auctioneer+Enchantrix (Auc-Advandced), AuctionLite, WoWecon
  • auto-detect disenchantable items
  • disenchant items directly from the LDB tooltip!
  • manage your items - Never drop, always drop, use vendor price, auto sell - using easily configurable lists (shared or character specific)
  • lists support single items or categories (LibPeriodicTable support)
  • limit items such as Light Feather
  • keeps statistics of gains & losses
  • show cheap items in LDB tooltip & customize the display text
  • temporarily disable the whole addon with a single button
  • localized in English, German and Simple Chinese (partially), works in any language

Loot Manager Features
  • entirely optional plugin
  • uses your Broker_Garbage lists
  • intelligent autoloot - ignore cheap items if you have no bag space
  • clear skinnable mobs, loot when pickpocketing and/or fishing
  • option to autodestroy items to loot more valuable ones
  • option to destroy items over their limit
  • restack your inventory if needed
  • warn for unopened clams & containers
  • localized in Englis, German and Simple Chinese (partially), some features might not work in other locales

Support
Do you enjoy Broker_Garbage? So do I! But keeping it up to date and supporting it takes quite a bit of time. If you feel like treating me to a steaming hot chocolate (YUM!), have a loot at the donations page

As with any addon: I provide no warranty but it should do The Right Thing(tm).
If it does not do The Right Thing(tm) or something doesn't feel right, leave me a note containing as much information on your problem as possible, so I can try to fix it.

If you have any suggestions for new features, just write a comment and I'll think about it.
Likewise, if you speak a language currently not supported please feel free to help me localize Broker_Garbage - either send a PM or simply use Curse.com.

For cutting edge updates, find Broker_Garbage on github.com. Files released there are considered 'beta' status but might yield new features or bugfixes.
Broker_Garbage @github Broker_Garbage-LootManager @github


Hints

If you temporarily want to disable Broker_Garbage, just hold down the disable key (SHIFT by default) when adressing the merchant/opening the loot window! If you never want to, just uncheck the options in the options frame.
If you don't ever want to use the Loot Manager, you can disable it in the Addon List.

If you want to quickly add an item to the "Force Vendor Price" list, simply ALT-click on it in the tooltip.
To add a category to your lists, right-click on the corresponding 'plus' icon and choose the one you want.
To set a limit for an item, put it on your Include List and use your mousewheel to set the number.

If you see a question mark icon on any of your lists, it is probably a seasonal item the server hasn't seen yet. There's nothing I can do about that.

Feel free to try /garbage (or /garb). You'll find a few (useful?) goodies in there.

For more detailed information on how things work, have a look at the readme.txt files in the addon folders.

5.0v2
- fixed 'Reset statistics' button not working
- Fixed auto repair using guild funds. The config panel read and changed the wrong variable. You might have to re-check auto repair setting on any character. Guild repair now defaults to "off".
- fixed statistics getting bloated by vendoring high-auction items
- fixed lua error caused by invalid sorting function
- fixed restack lua error on combining e.g. leather scraps
- This commit will include most recent localization data
- removed unnecessary change to LDB
- fixed list options 'add' button to actually respond to OnDrag
- fixed loads and loads of global variables
- removed unset translations from generated localizations
- removed hard embedding of LibPeriodicTable - you might want to grab LibPeriodicTable (http://www.wowace.com/addons/libperiodictable-3-1/)
- lots of toying around with curse.com's packager script
- re-introduced curse.com's localization feature

5.0v1
* Many major and minor changes, rewrites, new options and more!
* A full change log is available on Curse.com

4.0v11
* Fixed lua error in constants.lua. This was caused by Blizzard removing the old totem/sigil/libram/relic item categories. About time, aye?
* This version contains a big remake of the Loot Manager: It will now look at all the loot in the loot window, not just one at a time. So it *should* make smarter decisions.
* added hard coded check to not try to sell to "Rusty Anvil" NPC (as it messes up your statistics)
* added TopFit outdated equipment as an option (works similar to unusable gear). You will need the most recent GitHub version of TopFit for it to work
* the current config UI __still needs to be cleaned up__ so sorry for the overlapping, just bear with it

4.0v8
* Fixed auto repair setting not being saved properly
* Let's see if Curse understands what I mean ...
* added (currently hidden) option to show which item was sold. Enable with /run BG_GlobalDB.showSellLog = true
* added check for BoP items, as they can't be auctioned (no matter what your AH addon may say ;) )
* fixed bug when using "Minimum free slots" slider
* fixed error thrown when deleting (some more testing needed)
* maybe fixed "attempt to compare with nil value" error thrown when looting (some more testing needed)
* fixed Ctrl/Alt-Clicks on LDB tooltip lines not working
* updated tooltip to be a little prettier
* added option to use icons in tooltip lines
* reverted tekKonfig back to normal. Forgot to do that previously ;)

4.0v7
Caution! It is best to remove any previous version of Broker_Garbage & Broker_Garbage-LootManager before updating! (your saved variables will be safe!)
* split off all options into Broker_Garbage-Config, a load on demand addon (this saves you ~400kb of memory if you don't need the options)
* fixed Archaeology problems
* Added [itemicon] to LDB display variables
* Repairing via guild funds as guild master now works as intended
* Added Blizzard's Equipment Manager sets for list management
* Added armor classes (cloth, leather, ...) as sets for list management. Use it e.g. to automatically sell cloth on your warrior. CAUTION! This does not check if the item is soulbound or not, unlike Sell Unusable Gear!)

4.0v6
* fixed 'compare with nil' error when using Enchantrix
* fixed LPT not being properly recognized

4.0v5
* changed the way Auctioneer & Enchantrix values get retrieved. It was a whole mess before and apparently didn't even work correctly!
* changed the way auction values get treated. BG is now aware if there is more than one auction addon loaded and chooses the highest available price it can find.
* updated disenchant levels, now includes cataclysm data (all based on Wowhead.com)
* updated item caching: The new GetItemInfo() made quite a fuss
* unknown list items will now get updated when hovering
* slightly widened the right column in the statistics view
* added AddonLoader support. Default is now: delayed
* BG's tooltip will now work in NinjaPanel! It required a OnLeave() hook to be used

4.0v4
* adjust width/column count in list view automatically fixed (?)
* adjusted unusable gear table. added new "relic" class (librams, totems, sigils all count as relic as of 4.0)
* fixed error when scanning professions
* minor fix for the sell icon not updating properly when auto selling (wherever that came from)
* did some localization tweaks: typos and caution messages ;)
* once again updated LPT version
* did some localization fixes
* added some slash commands:
/garbage tooltiplines <num>
/garbage tooltipheight <num>
/garbage freeslots <number>
* adjusted GetBagSlots() to only consider general bags
* added new tags for use in LDB display text:
[basicfree], [basicslots], [specialfree], [specialslots] to split bag data
[basicbagcolor], [specialbagcolor] to colorize only data for those types of bags
* updated readme.txt on these changes

LootManager changes:
* several minor documentation / localization changes
* added panel:Update() function
* added fix for FishingBuddy not working. This is an issue caused by the LootManager's auto close feature. If you encounter other addons not working properly and you think they might rely on the LOOT_CLOSED event, try disabling this option in the LootManager's options tab. For Fishing Buddy, it is now disabled by default - when fishing only.
* hopefully fixed BoP confirmation not working: yet again, I referenced the wrong variable.
* the same goes for closing the loot window.

4.0v3
* improper column count in list options panel (most likely) fixed
* error on loading options (most likely) fixed
* removed WotLK compatibility layer as 4.0 is live
* updated TOC to proper reflect that this is a 4.0 version
* removed soul shards from default lists, as they changed completely
* removed hunter ammo from default lists (obsolete)
* included most recent LibPeriodicTable data. I hope it gets a real update soon, it's just so horribly off in some categories ...

4.0v2
* fixed promote/demote and delete on lists not working
* fixed error that occured when removing the limit of a junk item
* fixed loot window closing when it's not meant to
* fixed tooltip display for options: money format, drop treshold, sell treshold
* added global tag to "clear all" and "auto confirm bop" tooltips (it was missing before)
* added option to not automatically close the loot window
* provided option to change the Junk List's behavior: toggle between 0c value (default) and actual value (new)
* cleaned up the help panel. Texts are the same but the code is now much neater
* fishing addons not working? try FishingBuddy!

Loot Manager:
* fixed loot master messages: they should now only showing up once
* fixed permanent autoloot
* rearranged autoloot action priorities - this should fix the "loot window closes too quickly" issue in 4.0 v1

4.0v1
* fixed live compatibility (wrong variable name slipped in ...)
* fixed "attempt to compare with nil value" error: referred to the wrong saved variable

4.0v0
* restructured options:
* combined basic options, category test & loot manager into one panel, using tabs
* basic options grouped by their purpose, e.g. all the tooltip settings in one place
* loot manager grouped by their purpose
* shortened & restructured functions to show LibPeriodicTable contents, e.g. when adding a category or using category test (much in favor of my sanity)

* Basic Options changes:
* changed the way "Use in Combat" works. It will now only effect LootSlot() and CloseLoot() functions (which cause addon blocked issues), rather than disable the whole addon if it's unchecked
* clearified label texts for "Drop Treshold" and "Sell treshold". Also, these now use dropdown menus instead of a slider.
* renamed delete "instantly" to "enforce". When checked, Broker_Garbage will try its best to keep your free slots at or above your specified "Minimum free slots".
* renamed "Pickpocket" to "Stealing" in order to use progressive forms on all of these options (call it a knack of mine, if you like).
* added option "Auto-Confirm BoP". When checked, Broker_Garbage will take BoP items without showing the popup.

* Loot Manager options changes:
* removed "Enable" checkbox. Simply use Blizzard's addon manager to disable the Loot Manager
* removed "Selective Looting" checkbox. Looting will take place if any of the "Looting" checkboxes are checked. The only option that went missing without this checkbox is coloring/highlighting loot when *not* autolooting. If you don't like it, you probably don't want the Loot Manager as a whole.
* renamed "Enchanter" to "Have Enchanter" to clearify its meaning. Note please, that if you are an enchanter yourself, this checkbox is meaningless. Use it to 'tell' your Alts to not vendor disenchantable items.
* changed "Money Format" from a slider to a dropdown menu. It just makes more sense that way.

* revised former "Delete instant", see explanation above
* fixed junk items being treated incorrectly
* fixed price inflation for included items (auction prices were used, even though vendor prices should have been)

--> This release is the same as posted in the Cataclysm category. The above are all the changes that occured on that version ;) So, just to make things clear: This version of BG and the one in the Cataclysm category are *identical*

3.3v29 It took quite a while, but I hope it's worth it! Lots of file changes in here, I suggest you remove your Broker_Garbage and Broker_Garbage-LootManager folders and do a clean install (just extract, as usual)
* libraries updated
* hunters cannot use thrown weapons (fixed)
* rogues can use 1h axes (fixed)
* items with forced vendor prices will no longer be sold automatically (fixed)
* items won't inflate your statistics: fixed wrong values getting assigned to forced/listed items
* rebuilt list options
* Updated localizations to mirror these changes, e.g. lists renamed, explanation texts etc.
* Updated (re-wrote) sell icon function. No more missing icons, I hope!
* improved sell icon (texture, size ...)
* Updated default lists
* LootManager: auto-destroy settings are now local (so you can auto-destroy items on your level 15 rogue, but not on your 80 mage)
* LootManager: combat setting now also applies to looting money and closing the loot window (as it always should have)
* LootManager: simple implementation of "private loot": when opening containers in your bag, group loot rules should be ignored
* LootManager: completely re-structured selective looting procedure. The LM should now only delete items and warn of such actions if you're allowed to take that item (no more auto-deleting items for ones that are being rolled for)
* LootManager: updated quest items to always be looted
* LootManager: removed libraries, as those should already be loaded by Broker_Garbage (which is a dependency, anyway!)
* LootManager: now warns if a "Inventory is full" UI error occured
Minor changes:
* removed unnessessary event hook as well as comments
* fixed error created by slash-adding limited items that the server does not know
* fixed list manipulations that were broken because of tooltip/attribute changes (in between versions)

3.3v28
* hopefully the sell icon will now show when it is supposed to
* fixed various minor bugs
* fixed Loot Manager priorities, they got somewhat mixed up. The messages should be more fitting now.
* adjusted some localization strings
* re-inserted "use in combat" checkbox
* fixed default list creation - note that on login, BG cannot scan your tradeskills, but you can use the "default lists" button anytime to have him re-scan
* updated included LPT files
* LDB tooltip and text should now refer to the same item again
* fixed Loot Manager saved variables bug. some settings were requested before they were initialized

3.3v27
* deathknights cannot wear shields. fixed
* fixed items on sell list not selling
* added option to use include list as sell list
* inventory scanning rewritten - will now only scan updated bags, and item info is cached <-- this is worth about 10 minor features and 100kB memory per scan saved
* Broker_Garbage-LootManager: Changed the way 'Warn Clams' and 'Warn Containers' work - they will now show a line in the tooltip
* refined security checks when deleting items
* changed the license from GPLv2 to BSD, mainly because it does all I really need and is much less painful to read ;)
* fixed the bug where BG would go nuts after visiting a merchant once
* many thanks to Zidomo and Cidrei for elaborate testing!

3.3v26
* scanning will now work properly again (I deleted 2 lines that shouldn't have been deleted)
* finally found why Sell Gear would not work - fixed! Gear would only get sold if the global threshold was greater than the Sell Gear treshold, which was not intended.
* BG_LootManager: removed unnessessary saved variables
* Notice: BG_LootManager won't be able to work with the CTRL disable key as CTRL+Click is already connected to the dressup functionality

3.3v25
* made Auto Repair more intelligent: It will tell you if you don't have enough money to repair
* removed /garbage stats slash command - the options panel provides the same information and more (and prettier)
* fixed BG trying to get item values before auction addons are loaded
* fixed the error that was caused by a debug message if you didn't have any junk on you
* changed the format of localization files to support partial translations
* fixed /garbage format reset that would still reset to the old display format

3.3v24
* fixed Sell Gear not selling items (at all)
* fixed tabards not being sold by Sell Gear
* fixed (manual) selling via the tooltip when at a vendor: items without a value will be deleted instead of trying to sell them (which would result in 'The vendor is not interested in this item' error)
* Create Default Lists button fixed. Left-click it to create character specific list entries
* loot window will not be automatically closed if you can't loot something because of missing bagspace (which made it really hard to actually loot the item manually)
* changed plugin handling
* added supported auction addons to .toc file
* updated LibQTip library

3.3v23 Hopefully fixed the 'Addon blocked' issue.
Added an options panel to test category strings. Updated some of the libraries.
Renamed 'Drop Quality' to 'Quality Treshold', 'Positive lists' to 'Whitelist' and 'Negative lists' to 'Blacklist'.
Added button to load default list options.

3.3v22 (Patch 3.3.3) Things fixed:
When 'Never repair guildbank' is checked, Broker_Garbage will now not touch your guild funds any more.
The tooltip may now show more than one stack of any item.
Solved Autosell list priority conflicts: ItemIDs have higher priority than LPT strings.
LootManager turned more talkative. Now uses proper localization strings.
New feature: Sell unusable equipment. This will for example sell plate if you're a clothie, the item is soulbound and you yourself can't disenchant.

3.3v21 several bug fixes, including: Missing enchanting values für > epic items, included tekKonfigDropdown, statistical data gathering cleaned up, Autosell bug when having excluded items in the inventory, display of over-treshold Autosell items ...
New features: Changed the way you may edit the LDB display text, the question mark will help you with (re)configuration. (to lessen lua errors caused by wrong input)
Added possibility to colorize the LDb display text according to your bag situation ([bagspacecolor] ... [endcolor]
You can now use [junkvalue] in the LDB display text, which will show what your junk/Autosell stuff is worth.
SHIFT-Click on the tooltip/the LDB when at a merchant will now sell the item, rather than destroy it.

3.3v20 Split Broker_Garbage basic addon and Broker_Garbage-LootManager into two addons. Fixed some bugs and auction value calculation.
Update: Stupid debug...

3.3v19 Non-limited but included items will be handled properly once again. Same goes for Auto Sell List items.

3.3v18 Autodestroy fixed, fixed promoting limited items

3.3v17 Added the Loot Manager! It uses your Include (never loot) and Exclude List (always loot). to disable it, read the description or the readme.txt.
Added item limits! Want to keep no more than 5 Soulshards? Simply use your mousewheel on the corresponding icon on your include list. Items within that limit will not be shown on the tooltip.
Finally 'fixed' the Sell Icon - it will now properly show if there's something to sell - or not.
Also added some default list settings.
Fixed quite a hand full of bugs, too. Simplified code.

3.3v16 LDB display text option added to interface options panel. Statistics panel added. Fixed a bug where dragging items to the plus icons didn't work. Fixed a bug that caused too many items to appear in the tooltip. Finally found & fixed the bug that made you open positive lists before negative lists ;)

3.3v15 /garbage commands added, LDB text made more customizable, 'pre' errors fixed. Birthday-to-be edition.

3.3v14 Added compatibility to Broker2FuBar. Category list menu reduced to interesting parts. Auto Sell Icon will now do its job.

3.3v13 Addid items to lists possible - once again. No more "LeftButton" added to any list. Fixed icons not updating if GetItemInfo was missing

3.3v12 Auto sell settings will now, once again, be properly saved. This fixed the checksound-error as well. Or is it the other way around? :P

3.3v11 Added LPT support - you can add categories to your lists by right clicking on the 'plus' icons. For more info, have a look at the readme.txt . There might still be bugs in there, but I didn't find any ;) Therefore tagging as beta (to keep the files consistent to curse.com's version).
Update: Told you, there would be bugs! Fixed desaturating icons. Fixed missing items crashing the addon (GetItemInfo on seasonal items sucks).

3.3v10 Bugfixes, once again. And no, an itemLink is NOT the same as an itemID ~.~ New lists should work properly now. Reset money earned/lost will now properly reset the local value, rather than the global one.

3.3v9 list management clarified, more lists added (have a look at the options or the readme file): Force Vendor Price & Auto-Sell. New: ALT-Click on an item in the tooltip and it will be added to your Vendor Price List.

3.3v8 no new features, just a bunch of bugfixes ... stupid stupid Macs ... hate them!

3.3v7 LDB plugin clicks should work for all displays, added "money earned" to tooltip info, shows "no items" instead of empty tooltip, show (or hide) icon to manually sell grays at a vendor

3.3v6 LDB plugin will now properly react to clicks. List Options should display properly

3.3v5 stupid me -.- left debug mode on ... should probably write a pre-release checklist or something. Indeed, I should. Missed something on the include list management.

3.3v4 Tooltip! Corrected auto-hide time, should(tm) work.
Interface! Added options menu to handle include/exclude lists. No more guessing what might be on there!

3.3v3 another try at fixing sticky tooltips (by having the LDB display having the work of hiding the tooltip, not the plugin)

3.3v2 deDE localisation fix, money chat message changed

3.3v1 first upload
Optional Files (0)


Post A Reply Comment Options
Unread 12-03-10, 01:29 AM  
ckaotik
A Fallenroot Satyr
 
ckaotik's Avatar
AddOn Author - Click to view AddOns

Forum posts: 29
File comments: 168
Uploads: 5
Originally posted by Zidomo
Well, I made a dreadful mistake in suggesting changes be made to accommodate AddonLoader. [...] But then went on another server to another test character to properly test loading if AddonLoader was not active, etc.. BIG BIG mistake.
Nah, that's not true. You just made the mistake of asking someone such as me of doing so I do know that I get way too many bugs produced, just by not thinking things through properly Sorry ... Unfortunately, good bug testers are hard to find and you're doing an awesome job!
This time, it was bound to turn out as a stack overflow, I just didn't notice it in time... CanDisenchant() relied on getting cached data which was just being created - creating a recursion that should not have happened at all.

Originally posted by Zidomo
NinjaPanel does not show anything in the tooltip for it except "LDB Type data source".
Broker_Garbage's type is indeed "data source". If it still doesn't work on Ninja Panel, please tell me.

Originally posted by Zidomo
Finally, that other-server test character is what I do most of my CPU testing on. That alpha version of Broker_Garbage: 0.300-0.350 CPU/second on idle (nothing through the disembedded libs), which is somewhat high. Seem to remember in the distant past this using 0 CPU at idle. Are you now (unnecessarily) continually scanning/doing BAG_UPDATES?
What do you use to measure these CPU values? Then I could look at that myself. BG can't influence Blizzard's BAG_UPDATES, also it's already re-scanning only the bag that event was fired on, instead of the whole inventory (as it did before introducing BG's cache)
__________________
It all starts to make a creepy kind of sense. Avatar
Report comment to moderator  
Reply With Quote
Unread 12-02-10, 09:21 PM  
Zidomo
A Cliff Giant
 
Zidomo's Avatar

Forum posts: 76
File comments: 1046
Uploads: 0
Well, I made a dreadful mistake in suggesting changes be made to accommodate AddonLoader.

First tried 6a757cdf51e on an old test/played character that had always used Broker_Garbage & AddonLoader. It loaded delayed through AddonLoader & functioned properly.

One thing though: the debug text seems to be permanently set on. Get a bunch of Broker_Garbage GetSingleItemValue... lines for every item in bags at logon. And it repeats every time a new item enters your bags: "Broker_Garbage GetSingleItemValue(4540), Tough Hunk of Bread", etc. "/run BG_GlobalDB.debug = false" does not appear to disable it.

But then went on another server to another test character to properly test loading if AddonLoader was not active, etc.. BIG BIG mistake.

Enabled Garbage at the character screen (along with disembedded libs) and turned off AddonLoader. Also have NinjaPanel active on him (good for testing LDB displays as the limited libraries it requires use no CPU). Had my display set (unfortunately) to Fullscreen.

Tried to log on and...and the worst thing that could possibly happen in WoW mod testing happened.

The blue bar stopped moving when it got to the right side and I never got into the world. I waited for a good 20 minutes with nothing happening. Then, WoW did not respond to ALT-F4, CTRL-ESC, ALT-TAB or any other shortcut that could be used to kill WoW or access other applications. Heck, it didn't even respond to CTRL-ALT-DELETE pressed several times, as often works in such a situation. So had to hard-kill my entire PC by turning off the power.

When that happens--its happened rarely, but has in the past with a few mods--I generally stop testing the mod forever after. But since AddonLoader was my suggestion, will give it a break...lol.

After manually entering the recovery console on reboot, doing a CHKDSK then rebooting again, got back into WoW on that other-server test character. But this time, adjusted the video to Windowed mode before entering the character screen so could actually access things if WoW locked up again.

Made sure NinjaPanel, Broker_Garbage (& its disembedded libs) and (this time) AddonLoader were active. No other mods. Logged on and actually got into the world this time, thanks to AddonLoader delaying the load of Garbage. But it looked again like it was going to lock up. After about 4 minutes of waiting, got a LUA error popup. Wasn't running BugSack/BugGrabber on this go so copying it from the default LUA error box:

Code:
Message: stack overflow
Time: 12/02/10 21:10:42
Count: 2
Stack: [C]: in function `SetOwner'
Interface\AddOns\Broker_Garbage\helper.lua:506: in function `IsItemSoulbound'
Interface\AddOns\Broker_Garbage\helper.lua:579: in function `UpdateCache'
Interface\AddOns\Broker_Garbage\helper.lua:686: in function `GetCached'
Interface\AddOns\Broker_Garbage\helper.lua:433: in function `CanDisenchant'
Interface\AddOns\Broker_Garbage\core.lua:402: in function `GetSingleItemValue'
Interface\AddOns\Broker_Garbage\helper.lua:645: in function `UpdateCache'
Interface\AddOns\Broker_Garbage\helper.lua:686: in function `GetCached'
Interface\AddOns\Broker_Garbage\helper.lua:433: in function `CanDisenchant'
Interface\AddOns\Broker_Garbage\core.lua:402: in function `GetSingleItemValue'
Interface\AddOns\Broker_Garbage\helper.lua:645: in function `UpdateCache'
Interface\AddOns\Broker_Garbage\helper.lua:686: in function `GetCached'
...
Interface\AddOns\Broker_Garbage\core.lua:402: in function `GetSingleItemValue'
Interface\AddOns\Broker_Garbage\helper.lua:645: in function `UpdateCache'
Interface\AddOns\Broker_Garbage\helper.lua:686: in function `GetCached'
Interface\AddOns\Broker_Garbage\core.lua:597: in function `ScanInventoryContainer'
Interface\AddOns\Broker_Garbage\core.lua:580: in function `ScanInventory'
Interface\AddOns\Broker_Garbage\core.lua:63: in function <Interface\AddOns\Broker_Garbage\core.lua:47>
[C]: in function `LoadAddOn'
Interface\AddOns\AddonLoader\AddonLoader.lua:109: in function `LoadAddOn'
Interface\AddOns\AddonLoader\Conditions.lua:128: in function <Interface\AddOns\AddonLoader\Conditions.lua:118>
Interface\AddOns\AddonLoader\Conditions.lua:143: in function <Interface\AddOns\AddonLoader\Conditions.lua:133>

Locals: (*temporary) = BGItemScanTooltip {
 0 = <userdata>
 comparing = false
 updateTooltip = 0.2
}
(*temporary) = UIParent {
 0 = <userdata>
 firstTimeLoaded = 1
}
(*temporary) = "ANCHOR_NONE"
(*temporary) = <function> defined =[C]:-1
(*temporary) = <function> defined *:OnTooltipCleared:1
(*temporary) = BGItemScanTooltip {
 0 = <userdata>
 comparing = false
 updateTooltip = 0.2
}
Left-clicking the Garbage LDB feed from NinjaPanel after the above happened brings up the previously reported Message: Interface\AddOns\Broker_Garbage\core.lua:30: attempt to index field 'cheapestItems' (a nil value) error.

And finally, right-click the Garbage LDB feed after that...another stack overflow...lol. Without AddonLoader active, I found out the hard way that those stack overflows lock up WoW/your PC permanently.

Two more things. I then retested with the LDB display I normally use on played characters: StatBlockCore. The same problems as the above happened at logon and otherwise. But one thing: StatBlockCore actually shows a proper tooltip. "SHIFT-click to destroy" and so on are listed. NinjaPanel does not show anything in the tooltip for it except "LDB Type data source". I normally see that problem with LDB mods that haven't defined their type properly. So looks like more work needs to be done to have it show up properly on all LDB displays.

Finally, that other-server test character is what I do most of my CPU testing on. That alpha version of Broker_Garbage: 0.300-0.350 CPU/second on idle (nothing through the disembedded libs), which is somewhat high. Seem to remember in the distant past this using 0 CPU at idle. Are you now (unnecessarily) continually scanning/doing BAG_UPDATES?

I would say forget about AddonLoader and revert what you did to accommodate it. Not running/testing this again on my played character server if there is a potential for stack overflow permanent lockups. Better bet would be to look instead into cleaning up the mess this does at logon, as well as why its using CPU all the time when it didn't use to.
Report comment to moderator  
Reply With Quote
Unread 12-02-10, 06:48 AM  
ckaotik
A Fallenroot Satyr
 
ckaotik's Avatar
AddOn Author - Click to view AddOns

Forum posts: 29
File comments: 168
Uploads: 5
Originally posted by Zidomo
With the latest 53a8f21a0b, no further errors with the Mug of Doom (the crowd buys a round of unthrown beer for everyone)!
I had a go at AddonLoader today, it seemed creepy when I looked at it before. Will you once again test this?

The debug spam on login is because Blizzard sends tons of BAG_UPDATES at that point, but BG only handles half of them (or less), e.g. -2, -4 and so on get ignored etc. Still, it is some annoying overhead, that's true. So here you go, utilizing AddonLoader The problem with BG not working with it was simply, that BG's initializing did not happen when ADDON_LOADED fired but instead listened for PLAYER_LOGIN.
Usually, Blizzard only sends one "usable" BAG_UPDATE (the others get filtered right away from BG) so during play that shouldn't be an issue.
Regarding those "800 cycles" - I kind of hacked into Auctioneer when I wrote that code because I couldn't find proper API functions to get disenchant values. I did look again, and guess what? There are some! Just not where I expected to find them ... Anyhow, the "800" was used as a hard cap for me when I was trying to find out to which category the item belongs (Enchantrix only has entries for the highest level). But now it's gone! POOF!
__________________
It all starts to make a creepy kind of sense. Avatar
Report comment to moderator  
Reply With Quote
Unread 12-01-10, 07:43 PM  
Zidomo
A Cliff Giant
 
Zidomo's Avatar

Forum posts: 76
File comments: 1046
Uploads: 0
With the latest 53a8f21a0b, no further errors with the Mug of Doom (the crowd buys a round of unthrown beer for everyone)!

Sent the Mug to someone in the mail and had it returned after enabling the debug. 1st item retrieved out of mail:

19:36:39| You receive item: [Tanzanite Pendant of the Bandit].
19:36:39| Broker_Garbage ! EVENT, BAG_UPDATE, 4
19:36:39| Broker_Garbage ! GetSingleItemValue(25071), Tanzanite Pendant
19:36:39| Broker_Garbage ! Item Type?, INVTYPE_NECK
19:36:39| Broker_Garbage ! Enchantrix Item Type?, 4
19:36:39| Broker_Garbage ! Auc-Advanced: Available data?, [Tanzanite Pendant], 2, 120, 4, EIQ, EIQ[type], EIQ[type][level]
19:36:39| Broker_Garbage ! EIQ[type][level] found at level 120
19:36:39| Broker_Garbage ! EVENT, BAG_UPDATE, 4


No errors thrown. Then the Mug of Doom:

19:36:55| You receive item: [Tankard O' Terror].
19:36:56| Broker_Garbage ! EVENT, BAG_UPDATE, 4
19:36:56| Broker_Garbage ! GetSingleItemValue(48663), Tankard O' Terror
19:36:56| Broker_Garbage ! Item Type?, INVTYPE_WEAPON
19:36:56| Broker_Garbage ! Enchantrix Item Type?, 2
19:36:56| Broker_Garbage ! Auc-Advanced: Available data?, [Tankard O' Terror], 4, 226, 2, EIQ, no EIQ[type], no EIQ[type][level]
19:36:56| Broker_Garbage ! no EIQ[type][level] found after 800 cycles!
19:36:56| Broker_Garbage ! Tried to get Enchantrix value of [Tankard O' Terror] but failed.
19:36:56| Broker_Garbage ! EVENT, BAG_UPDATE, 4


And (drum roll)....finally no errors when that thing enters your packs! Relog with that in packs, no logon errors either.

A couple of things, though. Relogging with debug on, after Broker_Garbage ! EVENT, PLAYER_ENTERING_WORLD, nil fires, there are a boatload of "Broker_Garbage ! GetSingleItemValue" calls made for every single item in your packs. Including the same one as the above one for the Tankard.

After that, another boatload of various Broker_Garbage ! EVENT, BAG_UPDATE (number) calls.

So....to mitigate the possible logon delay impact of all that work, slapped on an AddonLoader call in the TOC:
Code:
## LoadManagers: AddonLoader
## X-LoadOn-Always: Delayed
Many Ace3, etc. addons can function with AddonLoader conditionals without a problem. But some need further work.

Unfortunately, Broker_Garbage needs further work to be compatible with AddonLoader. It appears to load properly with AddonLoader, but click on the LDB display and:

Code:
["message"] = "Broker_Garbage-4.0v4\\core.lua:295: attempt to index field 'cheapestItems' (a nil value)\nBroker_Garbage-4.0v4\\core.lua:23: in function `OnClick'\nStatBlockCore-2.67\\StatBlockCore.lua:598: in function <Interface\\AddOns\\StatBlockCore\\StatBlockCore.lua:596>\n\nLocals:|r\n\n  ---",
            ["type"] = "error",
            ["session"] = 780,
            ["counter"] = 4,
        }, -- [1000]
The debug chat output: 19:59:31| Broker_Garbage ! Click on LDB. Not a giant issue, but would be nicer than not to have this AddonLoader compatible.

Finally was wondering: is Garbage now doing 2 BAG_UPDATES for every item? And..."800 cycles"?
Report comment to moderator  
Reply With Quote
Unread 12-01-10, 01:46 PM  
ckaotik
A Fallenroot Satyr
 
ckaotik's Avatar
AddOn Author - Click to view AddOns

Forum posts: 29
File comments: 168
Uploads: 5
Originally posted by Zidomo
13:31:08| You receive item: [Tankard O' Terror].
13:31:08| Broker_Garbage ! EVENT, BAG_UPDATE, 4
13:31:08| Broker_Garbage ! GetSingleItemValue(48663), Tankard O' Terror
13:31:08| Broker_Garbage ! Auc-Advanced: Available data?, [Tankard O' Terror], 4, 226, 2, EIQ, no EIQ[type], no EIQ[type][level]
13:31:08| BugSack: There's a bug in your soup!
That is totally weird! Apparently, GetItemInfo() works fine, as the 2 is the itemType (in Enchantrix constats that means a weapon) - and is obviously available. At the same time, Enchantrix disenchant tables are also available BUT he can't find the Tankard's itemType in that table. Mysterious, very, very mysterious...

Update: Yet another change up on GitHub, some further error handling and a change in retrieving data (who would have guessed? Apparently, the Enchantrix value was off quite a bit ...). Also, some more debug messages added. Mind testing again?
__________________
It all starts to make a creepy kind of sense. Avatar
Last edited by ckaotik : 12-01-10 at 02:04 PM.
Report comment to moderator  
Reply With Quote
Unread 12-01-10, 12:41 PM  
Zidomo
A Cliff Giant
 
Zidomo's Avatar

Forum posts: 76
File comments: 1046
Uploads: 0
Fast reply; perfect timing . Will give you the whole debug flow (including the BAG_UPDATEs) so you can see the process.

Installed build 6fa6acd061. Enabled the debug. Then I returned the Tankard to the original character and took several things out of his mailbox, including that. The time on the left is put there by the chat mod am using (Chatter).

13:30:59| You receive item: [Four of Portals].
13:30:59| Broker_Garbage ! EVENT, BAG_UPDATE, 4
13:30:59| Broker_Garbage ! GetSingleItemValue(19280), Four of Portals


The above repeated for a few different items retrieved from the mailbox. No errors during that. But then the final item retrieved was the mug of doom:

13:31:08| You receive item: [Tankard O' Terror].
13:31:08| Broker_Garbage ! EVENT, BAG_UPDATE, 4
13:31:08| Broker_Garbage ! GetSingleItemValue(48663), Tankard O' Terror
13:31:08| Broker_Garbage ! Auc-Advanced: Available data?, [Tankard O' Terror], 4, 226, 2, EIQ, no EIQ[type], no EIQ[type][level]
13:31:08| BugSack: There's a bug in your soup!
13:31:08| Broker_Garbage ! EVENT, BAG_UPDATE, 4
13:31:08| Broker_Garbage ! GetSingleItemValue(48663), Tankard O' Terror
13:31:08| Broker_Garbage ! Auc-Advanced: Available data?, [Tankard O' Terror], 4, 226, 2, EIQ, no EIQ[type], no EIQ[type][level]


After the bug occurred (same error as below), it did a second bag update with the same feedback.
Last edited by Zidomo : 12-01-10 at 12:45 PM.
Report comment to moderator  
Reply With Quote
Unread 12-01-10, 11:59 AM  
ckaotik
A Fallenroot Satyr
 
ckaotik's Avatar
AddOn Author - Click to view AddOns

Forum posts: 29
File comments: 168
Uploads: 5
Re: FrameXML error

Originally posted by gizmogeek
I keep getting the following FrameXML error: Error loading Interface\AddOns\Broker_Garbage\libs\tekKonfig\LibStub.lua
Hrm, I don't get that error, but deleted the reference in the tekKonfig.xml anyhow as LibStub is already being included beforehand.

@Zidomo: I once again did a few things here and there and especially added some further debug output. Can you tell me what it prints? To activate debug mode, use /run BG_GlobalDB.debug = true , to disable it, set it to false again. I don't need BAG_UPDATE notices or the likes, just the "Auc-Advanced: Available data?" part plus the following line(s)
__________________
It all starts to make a creepy kind of sense. Avatar
Report comment to moderator  
Reply With Quote
Unread 12-01-10, 06:47 AM  
gizmogeek
A Kobold Labourer

Forum posts: 0
File comments: 36
Uploads: 0
FrameXML error

I keep getting the following FrameXML error: Error loading Interface\AddOns\Broker_Garbage\libs\tekKonfig\LibStub.lua

The checking into the error, I found that the LibStub.lua file is located in the "Broker_Garbage\libs" folder not the "Broker_Garbage\libs\tekKonfig" folder. I'm not sure if this is a Broker_Garbage error or a tekKonfig error, but it is causing extended load times for toons that I log into the game.
Report comment to moderator  
Reply With Quote
Unread 12-01-10, 04:32 AM  
Zidomo
A Cliff Giant
 
Zidomo's Avatar

Forum posts: 76
File comments: 1046
Uploads: 0
Further testing: seems yee olde Tankard is the single trigger for the latest Garbage errors (so far at least). The logon error is consistent and repeatable when that item is in a character's bags...but not when it isn't.

Sent it through the mail to another character. Later logons on the original character: no further errors so far.

Took it out of the mailbox of the new character. As soon as it entered his backpack, 2 of Broker_Garbage-4.0v4\\core.lua:455: attempt to index field '?' errors occurred, same as before. With a notable exception. At the end of each, instead of the previous "hasData = \"Tankard O' Terror\", there is "itemID = 48663" (which is its itemID):

Code:
["message"] = {
                "Broker_Garbage-4.0v4\\core.lua:455: attempt to index field '?' (a nil value)\nBroker_Garbage-4.0v4\\helper.lua:581: in function `UpdateCache'\nBroker_Garbage-4.0v4\\helper.lua:617: in function `GetCached'\nBroker_Garbage-4.0v4\\core.lua:639: in function `ScanInventoryContainer'\nBroker_Garbage-4.0v4\\core.lua:69: in function <Interface\\AddOns\\Broker_Garbage\\core.lua:47>\n\nLocals:|r\nself = <table> {\n specialSlots = 0\n UpdateRepairButton = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:141\n VENDOR = 5\n AutoRepair = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:882\n VENDORLIST = 6\n ResetAll = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:290\n FormatMoney = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:644\n Warning = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:20\n auctionAddon = \"Auc-Advanced\"\n JoinSimpleTables = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:53\n GetProfessionSkill =", -- [1]
                " <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:347\n totalFreeSlots = 33\n AutoSell = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:805\n usableByClass = <table> {\n }\n PT = <table> {\n }\n CreateOptionsTab = <function> defined @Interface\\AddOns\\Broker_Garbage\\options.lua:154\n EXCLUDE = 0\n DISENCHANT = 7\n enchanting = \"Enchanting\"\n UnLocalize = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:177\n PTSets = <table> {\n }\n ScanInventory = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:620\n CreateOptionsPanel = <function> defined @Interface\\AddOns\\Broker_Garbage\\options.lua:680\n Count = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:70\n ScanInventoryContainer = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:630\n defaultGlobalSettings = <table> {\n }\n Colorize = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:254\n GetCached = <function> defined @Interface\\AddOns\\Broker_Garba", -- [2]
                "ge\\helper.lua:615\n GetBagSlots = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:623\n clams = <table> {\n }\n usableByAll = <table> {\n }\n OnClick = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:290\n GetItemValue = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:361\n UpdateCache = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:468\n tradeSkills = <table> {\n }\n IsItemSoulbound = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:441\n freeSpecialSlots = 0\n disableKey = <table> {\n }\n listOptions = BG_ListOptions {\n }\n GetItemID = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:170\n playerClass = \"( (holy class, Batman)\"\n isAtVendor = false\n options = BG_Options {\n }\n itemsCache = <table> {\n }\n GetOption = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:157\n CheckSettings = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:78\n totalBagSpace = 102\n RegisterPlugin = <function> de", -- [3]
                "fined @Interface\\AddOns\\Broker_Garbage\\options.lua:140\n Tooltip = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:212\n cheapestItems = <table> {\n }\n Print = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:8\n toSellValue = <table> {\n }\n locale = <table> {\n }\n clamInInventory = false\n defaultLocalSettings = <table> {\n }\n GetCheapest = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:677\n quality = <table> {\n }\n Delete = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:555\n FindSlotToDelete = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:507\n CanDisenchant = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:368\n UNUSABLE = 3\n GetSingleItemValue = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:384\n Debug = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:13\n optionsModules = <table> {\n }\n containerInInventory = true\n LIMITED = 2\n Find = <function> defined @Interfa", -- [4]
                "ce\\AddOns\\Broker_Garbage\\helper.lua:28\n LPTDropDown = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:302\n ResetMoney = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:273\n AUCTION = 4\n tabs = <table> {\n }\n CreateDefaultLists = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:110\n FormatString = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:211\n JoinTables = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:36\n INCLUDE = 1\n tag = <table> {\n }\n}\nitemID = 48663\nclass = nil\n\n  ---", -- [5]
            },
            ["type"] = "error",
            ["time"] = "2010/12/01 05:13:30",
            ["session"] = 769,
            ["counter"] = 57,
        }, -- [999]
        {
            ["message"] = {
                "Broker_Garbage-4.0v4\\core.lua:455: attempt to index field '?' (a nil value)\nBroker_Garbage-4.0v4\\helper.lua:581: in function `UpdateCache'\nBroker_Garbage-4.0v4\\helper.lua:617: in function `GetCached'\nBroker_Garbage-4.0v4\\core.lua:693: in function `GetCheapest'\nBroker_Garbage-4.0v4\\core.lua:653: in function `ScanInventoryContainer'\nBroker_Garbage-4.0v4\\core.lua:69: in function <Interface\\AddOns\\Broker_Garbage\\core.lua:47>\n\nLocals:|r\nself = <table> {\n specialSlots = 0\n UpdateRepairButton = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:141\n VENDOR = 5\n AutoRepair = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:882\n VENDORLIST = 6\n ResetAll = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:290\n FormatMoney = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:644\n Warning = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:20\n auctionAddon = \"Auc-Advanced\"\n JoinSimpleTables = <function> defined @Interf", -- [1]
                "ace\\AddOns\\Broker_Garbage\\helper.lua:53\n GetProfessionSkill = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:347\n totalFreeSlots = 33\n AutoSell = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:805\n usableByClass = <table> {\n }\n PT = <table> {\n }\n CreateOptionsTab = <function> defined @Interface\\AddOns\\Broker_Garbage\\options.lua:154\n EXCLUDE = 0\n DISENCHANT = 7\n enchanting = \"Enchanting\"\n UnLocalize = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:177\n PTSets = <table> {\n }\n ScanInventory = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:620\n CreateOptionsPanel = <function> defined @Interface\\AddOns\\Broker_Garbage\\options.lua:680\n Count = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:70\n ScanInventoryContainer = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:630\n defaultGlobalSettings = <table> {\n }\n Colorize = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:254\n ", -- [2]
                "GetCached = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:615\n GetBagSlots = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:623\n clams = <table> {\n }\n usableByAll = <table> {\n }\n OnClick = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:290\n GetItemValue = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:361\n UpdateCache = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:468\n tradeSkills = <table> {\n }\n IsItemSoulbound = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:441\n freeSpecialSlots = 0\n disableKey = <table> {\n }\n listOptions = BG_ListOptions {\n }\n GetItemID = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:170\n playerClass = \"(wow, its another class)\"\n isAtVendor = false\n options = BG_Options {\n }\n itemsCache = <table> {\n }\n GetOption = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:157\n CheckSettings = <function> defined @Interface\\AddOns\\Broker_Garbage\\helpe", -- [3]
                "r.lua:78\n totalBagSpace = 102\n RegisterPlugin = <function> defined @Interface\\AddOns\\Broker_Garbage\\options.lua:140\n Tooltip = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:212\n cheapestItems = <table> {\n }\n Print = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:8\n toSellValue = <table> {\n }\n locale = <table> {\n }\n clamInInventory = false\n defaultLocalSettings = <table> {\n }\n GetCheapest = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:677\n quality = <table> {\n }\n Delete = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:555\n FindSlotToDelete = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:507\n CanDisenchant = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:368\n UNUSABLE = 3\n GetSingleItemValue = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:384\n Debug = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:13\n optionsModules = <table> {\n }\n containerInInve", -- [4]
                "ntory = true\n LIMITED = 2\n Find = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:28\n LPTDropDown = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:302\n ResetMoney = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:273\n AUCTION = 4\n tabs = <table> {\n }\n CreateDefaultLists = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:110\n FormatString = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:211\n JoinTables = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:36\n INCLUDE = 1\n tag = <table> {\n }\n}\nitemID = 48663\nclass = nil\n\n  ---", -- [5]
            },
            ["type"] = "error",
            ["time"] = "2010/12/01 05:13:30",
            ["session"] = 769,
            ["counter"] = 49,
        }, -- [1000]
And the errors repeated again at logon as long as that item was in his packs. That item was not put on or taken off of any of the set Lists.
Report comment to moderator  
Reply With Quote
Unread 11-30-10, 08:55 PM  
Zidomo
A Cliff Giant
 
Zidomo's Avatar

Forum posts: 76
File comments: 1046
Uploads: 0
Well, 630115c4363 was looking good. Until I logged on my bank alt.

At logon and/or opening the mailbox and waiting until Auctioneer's BeanCounter was "recording mails", the exact same errors that hapened with the 4.0v4 release version occurred once again: 3 instances of "attempt to index field '?'" in core.lua. But on a different line number.

Will list the first two complete errors (the last almost identical monster error puts it over the post character limit):

Code:
["message"] = {
                "Broker_Garbage-4.0v4\\core.lua:455: attempt to index field '?' (a nil value)\nBroker_Garbage-4.0v4\\helper.lua:577: in function `UpdateCache'\nBroker_Garbage-4.0v4\\helper.lua:613: in function `GetCached'\nBroker_Garbage-4.0v4\\core.lua:639: in function `ScanInventoryContainer'\nBroker_Garbage-4.0v4\\core.lua:622: in function `ScanInventory'\nBroker_Garbage-4.0v4\\core.lua:63: in function <Interface\\AddOns\\Broker_Garbage\\core.lua:47>\n\nLocals:|r\nself = <table> {\n UpdateRepairButton = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:141\n VENDOR = 5\n AutoRepair = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:882\n VENDORLIST = 6\n ResetAll = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:286\n FormatMoney = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:640\n Warning = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:20\n auctionAddon = \"Auc-Advanced\"\n JoinSimpleTables = <function> defined @Interface\\AddOns\\Broke", -- [1]
                "r_Garbage\\helper.lua:53\n GetProfessionSkill = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:343\n totalFreeSlots = 0\n AutoSell = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:805\n usableByClass = <table> {\n }\n PT = <table> {\n }\n CreateOptionsTab = <function> defined @Interface\\AddOns\\Broker_Garbage\\options.lua:146\n EXCLUDE = 0\n DISENCHANT = 7\n enchanting = \"Enchanting\"\n UnLocalize = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:176\n PTSets = <table> {\n }\n ScanInventory = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:620\n CreateOptionsPanel = <function> defined @Interface\\AddOns\\Broker_Garbage\\options.lua:672\n Count = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:70\n ScanInventoryContainer = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:630\n defaultGlobalSettings = <table> {\n }\n Colorize = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:250\n GetCached = <func", -- [2]
                "tion> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:611\n GetBagSlots = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:619\n clams = <table> {\n }\n usableByAll = <table> {\n }\n OnClick = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:290\n GetItemValue = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:361\n UpdateCache = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:464\n tradeSkills = <table> {\n }\n IsItemSoulbound = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:437\n listOptions = BG_ListOptions {\n }\n GetItemID = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:169\n playerClass = \"(nurfo class)\"\n isAtVendor = false\n options = BG_Options {\n }\n itemsCache = <table> {\n }\n GetOption = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:156\n CheckSettings = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:78\n totalBagSpace = 0\n RegisterPlugin = <function> defined @I", -- [3]
                "nterface\\AddOns\\Broker_Garbage\\options.lua:132\n Tooltip = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:212\n disableKey = <table> {\n }\n Print = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:8\n toSellValue = <table> {\n }\n locale = <table> {\n }\n clamInInventory = false\n defaultLocalSettings = <table> {\n }\n GetCheapest = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:677\n quality = <table> {\n }\n Delete = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:555\n FindSlotToDelete = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:507\n CanDisenchant = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:364\n UNUSABLE = 3\n GetSingleItemValue = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:384\n Debug = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:13\n optionsModules = <table> {\n }\n containerInInventory = false\n LIMITED = 2\n Find = <function> defined @Interface\\AddOns\\", -- [4]
                "Broker_Garbage\\helper.lua:28\n LPTDropDown = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:298\n ResetMoney = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:269\n AUCTION = 4\n tabs = <table> {\n }\n CreateDefaultLists = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:110\n FormatString = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:207\n JoinTables = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:36\n INCLUDE = 1\n tag = <table> {\n }\n}\nitemID = 48663\nclass = nil\ntemp = nil\nlimit = nil\nhasData = \"Tankard O' Terror\"\nitemLink = \"|cffa335\n  ---", -- [5]
            },
            ["type"] = "error",
            ["time"] = "2010/11/30 21:38:08",
            ["session"] = 760,
            ["counter"] = 1,
        }, -- [998]
        {
            ["message"] = {
                "Broker_Garbage-4.0v4\\core.lua:455: attempt to index field '?' (a nil value)\nBroker_Garbage-4.0v4\\helper.lua:577: in function `UpdateCache'\nBroker_Garbage-4.0v4\\helper.lua:613: in function `GetCached'\nBroker_Garbage-4.0v4\\core.lua:693: in function `GetCheapest'\nBroker_Garbage-4.0v4\\core.lua:653: in function `ScanInventoryContainer'\nBroker_Garbage-4.0v4\\core.lua:69: in function <Interface\\AddOns\\Broker_Garbage\\core.lua:47>\n\nLocals:|r\nself = <table> {\n UpdateRepairButton = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:141\n VENDOR = 5\n AutoRepair = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:882\n VENDORLIST = 6\n ResetAll = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:286\n FormatMoney = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:640\n Warning = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:20\n auctionAddon = \"Auc-Advanced\"\n JoinSimpleTables = <function> defined @Interface\\AddOns\\Broker_", -- [1]
                "Garbage\\helper.lua:53\n GetProfessionSkill = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:343\n totalFreeSlots = 0\n AutoSell = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:805\n usableByClass = <table> {\n }\n PT = <table> {\n }\n CreateOptionsTab = <function> defined @Interface\\AddOns\\Broker_Garbage\\options.lua:146\n EXCLUDE = 0\n DISENCHANT = 7\n enchanting = \"Enchanting\"\n UnLocalize = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:176\n PTSets = <table> {\n }\n ScanInventory = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:620\n CreateOptionsPanel = <function> defined @Interface\\AddOns\\Broker_Garbage\\options.lua:672\n Count = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:70\n ScanInventoryContainer = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:630\n defaultGlobalSettings = <table> {\n }\n Colorize = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:250\n GetCached = <functi", -- [2]
                "on> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:611\n GetBagSlots = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:619\n clams = <table> {\n }\n usableByAll = <table> {\n }\n OnClick = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:290\n GetItemValue = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:361\n UpdateCache = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:464\n tradeSkills = <table> {\n }\n IsItemSoulbound = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:437\n listOptions = BG_ListOptions {\n }\n GetItemID = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:169\n playerClass = \"ROGUE\"\n isAtVendor = false\n options = BG_Options {\n }\n itemsCache = <table> {\n }\n GetOption = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:156\n CheckSettings = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:78\n totalBagSpace = 0\n RegisterPlugin = <function> defined @Int", -- [3]
                "erface\\AddOns\\Broker_Garbage\\options.lua:132\n Tooltip = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:212\n disableKey = <table> {\n }\n Print = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:8\n toSellValue = <table> {\n }\n locale = <table> {\n }\n clamInInventory = false\n defaultLocalSettings = <table> {\n }\n GetCheapest = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:677\n quality = <table> {\n }\n Delete = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:555\n FindSlotToDelete = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:507\n CanDisenchant = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:364\n UNUSABLE = 3\n GetSingleItemValue = <function> defined @Interface\\AddOns\\Broker_Garbage\\core.lua:384\n Debug = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:13\n optionsModules = <table> {\n }\n containerInInventory = false\n LIMITED = 2\n Find = <function> defined @Interface\\AddOns\\Br", -- [4]
                "oker_Garbage\\helper.lua:28\n LPTDropDown = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:298\n ResetMoney = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:269\n AUCTION = 4\n tabs = <table> {\n }\n CreateDefaultLists = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:110\n FormatString = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:207\n JoinTables = <function> defined @Interface\\AddOns\\Broker_Garbage\\helper.lua:36\n INCLUDE = 1\n tag = <table> {\n }\n}\nitemID = 48663\nclass = nil\ntemp = nil\nlimit = nil\nhasData = \"Tankard O' Terror\"\nitemLink = \"|cffa335\n  ---", -- [5]
            },
            ["type"] = "error",
            ["time"] = "2010/11/30 21:38:08",
            ["session"] = 760,
            ["counter"] = 83,
        }, -- [999]
Yee olde Tankard O' Terror yet again at the bottom of the errors. Its also at the bottom of the last very similar Broker_Garbage-4.0v4\\core.lua:455: attempt to index field '?' error that happened at the same time (not posted).

Will give 4d8f62bb6250 a go. But looks like the dreaded GetItemInfo() handling still needs some work.
Last edited by Zidomo : 11-30-10 at 09:11 PM.
Report comment to moderator  
Reply With Quote
Unread 11-30-10, 06:54 PM  
ckaotik
A Fallenroot Satyr
 
ckaotik's Avatar
AddOn Author - Click to view AddOns

Forum posts: 29
File comments: 168
Uploads: 5
Originally posted by stencil
Perhaps a new option could be added to set what should happen when you right click. Maybe a dropdown listing all the various tabs - that way I could change it to Sell tab now that I'm set up. Of course the default would still be Basic Options as that's where new users will probably want to go.
Of course, this would be nice to remember your last tab that was opened. But apparently Blizzard's options panel has some restrictions that are hard to avoid. Also, I think it would cause more harm than good, without proper testing, with a lack of time and of course some integrity issues. So, sorry, but that's not going to happen

About the meanings of the lists ... I had hoped that those short explanations, or maybe even the long one in the help tab would clear things up.
You can SHIFT-click drop/sell (if you're at a vendor and the item is sellable) any item that shows up on the tooltip. Also, there is an option to use the junk list as the sell list (then the original sell list turns useless, but it's one less list that needs to be managed).
Those messages when fishing probably came up because you have "auto loot when fishing" active? There are three buttons right below the auto loot checkbox, because some people just need the loot manager for fishing, skinning or when trying to pickpocket. If you disable those three checkbuttons, the checkbox and don't have Blizzard's auto loot on, either, it should not print anything of that kind.

@Zidomo:
The GitHub comment was not meant against any of your feedback! Without it I would have a horrible time even figuring out that something is amiss. What I wanted to say is that uploading all those early versions on WoWI/Curse would result in lots and lots and lots of bugs and new versions
Anyhow, I couldn't really reproduce the "keep list" problem (probably due to me using a test account *cough* and therefore not having any old data). I didn't change anything on the saved variables, so that is definitely strange. One positive thing though: Hover-updating should work on the most recent GitHub version!
__________________
It all starts to make a creepy kind of sense. Avatar
Last edited by ckaotik : 11-30-10 at 06:56 PM.
Report comment to moderator  
Reply With Quote
Unread 11-30-10, 04:56 PM  
stencil
A Kobold Labourer

Forum posts: 0
File comments: 4
Uploads: 0
Originally posted by Kerecha I have them on the junklist to make them available to drop by shift-clicking the LDB feed (i have extremely full inventory all the time so easy dropping of items i dun really need is a vital function to me. By adding stuff like low lvl fish to "junk" list they become droppable using the LDB shift-click
I was getting the same message spam from fishing with the in game Auto Loot option turned on. I tried turning off all of Broker_Garbages Auto Loot settings but I'd still get the message. From my point of view, if B_G's autoloot is turned off, it shouldn't be outputting messages ...

Anyway, I was using the junk list for basically the same reason as Kerecha. I was sure that items on the junk list would get sold; I wasn't sure that items on the sell list could be junked. Also, maybe I was influenced slightly by Junk being the active tab when you go to Lists? Anyway, I've since seen that items added to the Sell tab's list show up in the tooltip and that shift click will drop them so I'll just start moving everything over to there.

Now that I have the basic options set up, everytime I right click the LDB icon to go to options its because I want to add something to the sell tab list. Perhaps a new option could be added to set what should happen when you right click. Maybe a dropdown listing all the various tabs - that way I could change it to Sell tab now that I'm set up. Of course the default would still be Basic Options as that's where new users will probably want to go.

Thanks for the good work,
stencil
Report comment to moderator  
Reply With Quote
Unread 11-29-10, 07:28 PM  
Zidomo
A Cliff Giant
 
Zidomo's Avatar

Forum posts: 76
File comments: 1046
Uploads: 0
Commit 630115c4363has reached...almost 100%! (the crowd picks up its earlier thrown beer and drinks it). One thing seen though, yet again with the Lists.

Items previously put in the Keep list in earlier builds/releases don't register as being wanted to keep. Instead, they show up as junk in the LDB feed and can be sold to the vendor.The only way to really have Garbage ignore them is to delete them off the existing Keep list and then add them again.

Another thing...

Originally posted by ckaotik
That's why those versions go up on GitHub instead of right here
Would you prefer feedback on those builds as asked for...or no feedback?

And finally, I know you don't apparently have an account now, so its minor. But the ability to show the "unknown" items you have set in your lists that currently only show the itemID would be useful.

They reappear after opening the Lists frame and then relogging, but not before that. In (4.0.3-compatible) AtlasLoot, for example, "unknown" items become known by simply mousing over them.
Report comment to moderator  
Reply With Quote
Unread 11-29-10, 08:17 AM  
Kerecha
A Deviate Faerie Dragon
 
Kerecha's Avatar

Forum posts: 10
File comments: 196
Uploads: 0
Originally posted by ckaotik
Hrm, are you using a fishing addon? Many of those automatically loot items then. Also, junk list items will not get looted (if everything works correctly). Do they have high auction prices or why do you need them on that list? If that's the case, as those items don't usually have high vendor prices, put them on your vendor price list instead Unless you have heaps of included items (alternatively using "actual value" even solves this), they will show up on the tooltip quite early then.
Ah, didn't think about that (i use fishermansfriend).

I have them on the junklist to make them available to drop by shift-clicking the LDB feed (i have extremely full inventory all the time so easy dropping of items i dun really need is a vital function to me. By adding stuff like low lvl fish to "junk" list they become droppable using the LDB shift-click

I personally don't use auto delete either :P Only on low level characters that got no bag space either and whose items are generally worthless anyway. It can be useful in some cases, or people wouldn't have requested it If you set the "drop treshold" to gray/white items, you should be quite safe. Also, keep list items will always be spared! [/b]
Yep, just makes me nervous
Report comment to moderator  
Reply With Quote
Unread 11-29-10, 04:04 AM  
ckaotik
A Fallenroot Satyr
 
ckaotik's Avatar
AddOn Author - Click to view AddOns

Forum posts: 29
File comments: 168
Uploads: 5
Originally posted by Zidomo
At logon, a giant pile of multi-line chat/debug spam stating the following: Broker_Garbage AuctionAddon: Auc-Advanced. It repeats every time a new item enters your packs.
Forgot to remove that one. That's why those versions go up on GitHub instead of right here Does the new GitHub version work?
__________________
It all starts to make a creepy kind of sense. Avatar
Last edited by ckaotik : 11-29-10 at 04:05 AM.
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: