Breakables
Description
Displays a bar on screen that allows quick access to enchanting, jewelcrafting, and inscription professions by presenting a Disenchant/Prospect/Mill button and all of the breakable items you have for that profession next to it. Also displays a bar for any locked junkboxes in your inventory if you're a Rogue. This allows one-click access for breaking down items instead of finding the item in your bag, clicking the appropriate profession/skill button, and clicking the item for each and every item you want to break. For prospecting and milling, you will see the number of items you have alongside the number of times you can break it. In the prospecting screenshot next to the addon name on this page, the player has 169 total Saronite Ore in his bags which will allow for 33 total prospects.
Note
In 10.0, Blizzard completely changed how Prospecting and Milling works, so this addon can only help with Lockpicking and Disenchanting. If a method is added for addons to once again programmatically Prospect or Mill, Breakables will be updated to support it.
Usage
By default, if you have the appropriate profession and items in your inventory, a bar will appear with the profession ability followed by any items that are eligible for breaking. You can hold shift to drag the bar around if you want to move it. Clicking the profession button will activate that ability (disenchant/prospect/mill) and clicking an item will break it. You don't have to click the profession button first as simply clicking the item will automatically break it down. Right-clicking a breakable button will add that item to the ignore list so it won't show up again. The ignore list can be managed from the configuration panel.
Configuration
Typing /brk will open the configuration settings (or you can get to it from Blizzard's Interface options) which consist of:
- Hide if no breakables: this will control whether you see the profession button or not when nothing breakable is detected
- Max number to display: this controls the highest number of items that you will see next to your profession button. If this is 5 but you have 10 breakable items in your bags, you will only see 5 at a time.
- Show soulbound items: aimed at enchanters, this controls whether or not you will see items that are soulbound as breakable items or not.
Known issues
- If you have more than 5 of a breakable item but split into stacks all smaller than 5, the game will say you do not have enough items to break. The default UI now has a built-in button to compress stacks that should solve this issue.
- If you know Mass Milling for a specific type of herb, the current alpha will try to use this ability and fail. I am in the process of leveling a scribe up high enough to debug this problem.
This just means FGI was using the version of a library, AceGUI, that was loaded first by Breakables. It's neither a bug in nor taint by Breakables.
In reply to Regulators:
HideAlways command isnt working
Current retail error Breakables v1.9.4:
Message: Interface/AddOns/Breakables/Breakables.lua:1525: 'for' limit must be a number
Time: Wed Nov 16 06:13:36 2022
Count: 1
Stack: Interface/AddOns/Breakables/Breakables.lua:1525: 'for' limit must be a number
[string "@Interface/AddOns/Breakables/Breakables.lua"]:1100: in function `FindBreakables'
[string "@Interface/AddOns/Breakables/Breakables.lua"]:507: in function `CheckShouldFindBreakables'
[string "@Interface/AddOns/Breakables/Breakables.lua"]:426: in function <Interface/AddOns/Breakables/Breakables.lua:426>
Locals: self = <table> {
SetDefaultModuleLibraries = <function> defined @Interface/AddOns/Breakables/libs/AceAddon-3.0/AceAddon-3.0.lua:363
CheckShouldFindBreakables = <function> defined @Interface/AddOns/Breakables/Breakables.lua:498
OnLeaveCombat = <function> defined @Interface/AddOns/Breakables/Breakables.lua:521
modules = <table> {
}
baseName = "Breakables"
IterateEmbeds = <function> defined @Interface/AddOns/Breakables/libs/AceAddon-3.0/AceAddon-3.0.lua:438
OnEnterProfessionButton = <function> defined @Interface/AddOns/Breakables/Breakables.lua:1269
myTooltip = BreakablesTooltip {
}
CreateButtonFrame = <function> defined @Interface/AddOns/Breakables/Breakables.lua:939
Printf = <function> defined @Interface/AddOns/Breakables/libs/AceConsole-3.0/AceConsole-3.0.lua:65
SetDefaultModulePrototype = <function> defined @Interface/AddOns/Breakables/libs/AceAddon-3.0/AceAddon-3.0.lua:405
OnSpellCastSucceeded = <function> defined @Interface/AddOns/Breakables/Breakables.lua:539
ToggleButtonFrameVisibility = <function> defined @Interface/AddOns/Breakables/Breakables.lua:434
defaultModuleState = true
ApplyScale = <function> defined @Interface/AddOns/Breakables/Breakables.lua:1034
OnItemReceived = <function> defined @Interface/AddOns/Breakables/Breakables.lua:488
FindBreakables = <function> defined @Interface/AddOns/Breakables/Breakables.lua:1078
DisableModule = <function> defined @Interface/AddOns/Breakables/libs/AceAddon-3.0/AceAddon-3.0.lua:346
OnModifierChanged = <function> defined @Interface/AddOns/Breakables/Breakables.lua:473
RegisterMessage = <function> defined @Interface/AddOns/Breakables/libs/CallbackHandler-1.0/CallbackHandler-1.0.lua:85
UnregisterMessage = <function> defined @Interface/AddOns/Breakables/libs/CallbackHandler-1.0/CallbackHandler-1.0.lua:148
OnMouseUp = <function> defined @Interface/AddOns/Breakables/Breakables.lua:1055
PetBattleStarted = <function> defined @Interface/AddOns/Breakables/Breakables.lua:551
PostClickedBreakableButton = <function> defined @Interface/AddOns/Breakables/Breakables.lua:1306
IsInEquipmentSet = <function> defined @Interface/AddOns/Breakables/Breakables.lua:1508
SetEnabledState = <function> defined @Interface/AddOns/Breakables/libs/AceAddon-3.0/AceAddon-3.0.lua:420
ItemIsPickable = <function> defined @Interface/AddOns/Breakables/Breakables.lua:1465
enabledState = true
RegisterEvent = <function> defined @Interface/AddOns/Breakables/libs/CallbackHandler-1.0/CallbackHandler-1.0.lua:85
justClickedSlot = -1
FindBreakablesInBag = <function> defined @Interface/AddOns/Breakables/Breakables.lua:1315
ItemIsLocked = <function> defined @Interface/AddOns/Breakables/Breakables.lua:1487
IterateModules = <function> defined @Interface/AddOns/Breakables/libs/AceAddon-3.0/AceAddon-3.0.lua:433
PetBattleEnded = <function> defined @Interface/AddOns/Breakables/Breakables.lua:557
justPickedSlot = -1
OnLeaveBreakableButton = <function> defined @Interface/AddOns/Breakables/Breakables.lua:1299
OnSlashCommand = <function> defined @Interface/AddOns/Breakables/Breakables.lua:484
OnInitialize = <function> defined @Interface/AddOns/Breakables/Breakables.lua:285
UnregisterAllEvents = <function> defined @Interface/AddOns/Breakables/libs/CallbackHandler-1.0/CallbackHandler-1.0.lua:169
GetModule = <function> defined @Interface/AddOns/Breakables/libs/AceAddon-3.0/AceAddon-3.0.lua:206
SetCapabilities = <function> defined @Interface/AddOns/Breakables/Breakables.lua:357
Thanks, fixed in the next version.
hi mt8, any news on the next update to wolk
Honestly I didn't think many people were using this. I'll get it updated.
In reply to Parnic:
Hello Parnic, need to report a bug.
But first, thank you. This addon has made aspects of playing much more enjoyable.
I am using version 1.8.5-Wrath
Things work great for my scribe and jewelcrafter but the bar will not appear for my enchanter, even with a bag full of BoE greens.
I have tried all available options in the menu with no change.
If I force the bar to appear, the DE button appears but none of the items.
I have also attempted disabling all other addons and reloading, with no change.
Let me know if you need any further information from me.
In reply to Parnic:
Using it!! favorite addon for my alt with jc and enchanting, i have an issue tho it does'nt detect cobalt / saronite i guess wotlk ores for prospecting, any chance of an update to that? :)
Thanks for a great addon and and your time <3
Sorry, curse/wowace didn't email me about this comment. I'll look into it.
In reply to Parnic:
I had problems getting to post on curse for some reason might have needed to clear cache or something, in anyways it wasn't a bigger issue that if reinstalling the addon i would see the breakables again "saronite" in this case.
Thanks again for your time! <3
In reply to Parnic:
Yes, this addon is still being used!
Hi, please hide it when on pet battle
Thanks for the suggestion.
Would it be possible to suppress the tooltip on items in the breakables bar? When I hover over the button, the button is obscured by the tooltip, and I can't see what I'm doing.
Sure - that could be added. You could locally edit Breakables:OnEnterBreakableButton() / Breakables:OnLeaveBreakableButton() to suppress the GameTooltip stuff if you wanted. I'll see about adding a toggle.
In reply to Parnic:
That's awesome! Thank you. I will try your code. :)
In reply to Parnic:
Please, hide it when pet battle happens.
I think there's a function to identify this, like other addons
Thanks
The bar isn't visible when there are items to be disenchanted, but it is there. I mouse over the area where I had last placed it and there are items on the bar. I just can't see the bar. All of the functions work, like Hide Bar, Hide during combat, Not sure about Hide if no Breakables, and I can click on the items and disenchant them. I've tried several of the alpha files and I've deleted the WTF files. Still the same result. Could a tooltip addon or another addon that affects tooltips or action bars affect this?
I don't know, I've never seen this behavior. You could try temporarily disabling all addons and seeing if the problem persists, then turn them back on a few at a time to identify if there's a conflict.
Might there be any chance of making this compatible with classic? Would love to use it for disenchanting. (TSM destroy window is buggy.)