Get an Epic Experience with Premium


Professions Login to Add Favorites
  • World of Warcraft
  • 19,353 Monthly Downloads
  • Supports: 6.2.2
  • 1,142,166 Total Downloads
  • Updated 09/05/2015
  • Created 08/27/2008
  • 1,946 Favorites
  • Project Site
  • Comments
  • Release Type: Release
  • License: GNU General Public License version 3 (GPLv3)
  • Newest File: 2.86
Support development! **

About Skillet

Skillet: A trade skill window replacement

Skillet is a replacement for the default tradeskill and craft UI.

To report bugs and request new features check:
To help with Localization see:


  • Larger the the standard tradeskill window
  • Built-in queue for creating multiple, different items
  • Queued items are saved when you log out and are restored on log in
  • Automatically buy reagents for queued recipes when visiting a vendor
  • If you can craft a reagent needed by a recipe, then clicking on that reagent will take you to its recipe (same features as Reverse Engineering.
  • If the item to be crafted requires a minimum level to use, that level can be displayed along with the recipe (disabled by default)
  • The shopping list of items needed for all queued recipes for all alts can be displayed at banks, auction houses, or from the command line
  • Items needed for crafting queued items can be automatically retrieved from your bank or guild bank (by using the shopping list)
  • User editable list of notes attached to reagents and crafted items.
  • Recipes can be filtered by name, whether or not you could level when creating the item, and whether or not you have the mats available.
  • Sorting of recipes (name, difficulty, level, and quality of crafted item)
  • Tracking inventory on alternate characters
  • Item tooltips can be set to display the list of alternate characters that can craft the item.
  • Custom grouping
  • User managed Ignored Materials List
  • Complete or mostly complete localizations for deDE, esES, frFR, ruRU, koKR, zhCN, zhTW.


  • 2.86
    • Fix ticket 347 and Curse comment reported bug
    • Rework craftable counts, add recursive craftable count (ticket 348)
    • Update Inscription Ink from vendor list
  • 2.85
    • Fix overlap of required tools and cooldowns (ticket 345)
  • 2.84
    • Add description to recipe detail frame
    • Add wordwrap to unavailable (cooldown) text
    • Get version from TOC metadata
  • 2.83
    • Update TOC to 60200
    • Add SVN build number to frame title
    • Cleanup unused code in Mainframe.lua
    • Change NPC crafting to check GUID if necessary
    • Fix NPC crafting to properly close NPC
  • 2.82
    • Remove distinction between bags and bank (reagents are used from both)
    • Fixes for tickets 336, 337, 338, 340, 341, 342, 343
    • InitializeDatabase optimizations
    • Prevent guild tradeskills from polluting savedvariables
    • Remove global API table
    • Add shift-click on crafting NPCs to open Blizzard Tradeskill frame
  • 2.81
    • Add Draenor transmutes to the ignore list
    • Cosmetic and debug changes
  • 2.80
    • Update TOC to 60100
  • 2.78
    • Fix errors in custom grouping (ticket 333)
  • 2.77
    • Fix GetTradeSkillLevels to always return numbers (ticket 331)
  • 2.76
    • Use TradeskillInfo for skill difficulty data if available (LibPeriodicTable is not up to date)
    • Disable tooltip and dropdown for selecting other character's tradeskills (ticket 330)
  • 2.75
    • Fix Thermal Anvil (ticket 327)
    • Fix last item fetched from guild bank remaining on cursor
    • Minimize the use of the Blizzard frame for followers (ticket 328, requires localization)
  • 2.74
    • Add option to choose which frame to use for followers (that can use both)
  • 2.73
    • Curse didn't properly release 2.72
  • 2.72
    • Always use bags + bank when counting reagents (ticket 322)
    • Use IsNPCCrafting() for garrison follower crafting (ticket 321)
  • 2.71
    • Add user managed Ignored Materials table (thanks to Tarkumi)
    • Add cooldown check to queue processing
    • Add support for Enchanting Scrolls (thanks to Tarkumi)
    • Some code cleanup and minor bug fixes
  • 2.70
    • Add FlushRecipeData function
    • Fix flushalldata command
    • Add flushrecipedata command (and localization)
    • Add the WoW build number to
    • Flush recipe data when the WoW build number changes.
    • Move the dataVersion to (from db.realm)
  • 2.69
    • Add option to shopping list to include items in the bank (ticket 313)
  • 2.68
    • Another TradeSkillInfo plugin fix
  • 2.67
    • Fix TradeSkillInfo plugin (Ticket 312)
  • 2.66
    • Disable Skillet for crafting illusions, because it is allowed only from Blizz UI (Ticket 309)
    • Change "Using Bank" message to a warning (DA.WARN)
    • Locale independent fix for Blizzard's Engineering bug
    • Remove Altoholic dependent code (we do it ourselves now)
    • Fix unavailable skills in garrison
  • 2.65
    • Localize Blizzard's Engineering bug (Ticket 308)
  • 2.64
    • Add count of Auction House items independent of Altoholic (Ticket 304)
    • Increase maximum queue item count to 9999, (Ticket 305)
    • Change 1/0 to true/false for Blizzard API calls (Ticket 306)
  • 2.63
    • Bump Skillet database version.
    • Add slash command to reinitialize Skillet database.
    • Add persistent bank storage.
    • Reagent Bank added (treat it as just another bank bag).
    • Use bank reagents when processing queue.
    • Bug fixes.
  • 2.62 - Partial Reagent Bank functionality added (treat it as just another bank bag). Bug fixes.
  • 2.61 - Performance issues.
  • 2.60 - Update for WoW 6.02. Add workaround for Blizzard GetTradeSkillInfo bug in Engineering.
  • 2.57 - Fix bug reported on WoWInterface. Clicking on reagents would crash if the tradeskill for the reagent had not been displayed.
  • 2.51 - 2.56 - Bugfixes.
  • 2.50 - new shopping window with guild bank support
  • 2.45 - update for 5.4 - since patch tradeskills of alts not showing, waiting solution from Blizzard


  • What are the numbers in the middle and how to hide them? - It's the number of craftable items using reagents in your bag, bank, alts. Right+Click on the bag icon to turn them off
  • How to search in the item name only? - Start your search phrase with exclamation mark: !ink
  • How to search in Auction House? - Alt+Click on shopping list
  • How to retrieve items from bank? - Turn on "Display shopping list at banks"
  • How to turn off Skillet temporarily? - Shift+Click your profession button/link. It also works for View All in your Guild Tab.
  • How to use Enchanting Vellum? - Right Click on Process/Create/Create All button. You create only 1 enchanted vellum, repeat to create more
  • How to paste a recipe in the chat? - double click on the recipe list

- nogudnik - creator of Skillet, left WoW
- lilsparky - creator of Gnome Works and LilSparky's Workshop

r477 | bsmorgan | 2015-09-05 16:31:22 +0000 (Sat, 05 Sep 2015) | 1 line
Changed paths:
   A /tags/2.86 (from /trunk:476)

Tagging as 2.86
r476 | bsmorgan | 2015-09-05 15:11:36 +0000 (Sat, 05 Sep 2015) | 2 lines
Changed paths:
   M /trunk/Inventory.lua
   M /trunk/RecipeGroups.lua
   M /trunk/Skillet.lua
   M /trunk/SkilletData.lua
   M /trunk/UI/MainFrame.xml
   M /trunk/UI/Sorting.lua

- Tweaks for ticket 348
r475 | bsmorgan | 2015-09-04 23:32:54 +0000 (Fri, 04 Sep 2015) | 2 lines
Changed paths:
   M /trunk/Inventory.lua
   M /trunk/Skillet.lua
   M /trunk/SkilletData.lua
   M /trunk/UI/MainFrame.lua

- Fix for ticket 348, show craftable counts
r474 | bsmorgan | 2015-09-04 03:28:04 +0000 (Fri, 04 Sep 2015) | 2 lines
Changed paths:
   A /trunk/Icons/crafted.tga
   M /trunk/Inventory.lua
   M /trunk/SkilletData.lua
   M /trunk/UI/MainFrame.lua
   M /trunk/UI/MainFrame.xml

- More changes to fix ticket 348
r473 | bsmorgan | 2015-08-30 19:29:54 +0000 (Sun, 30 Aug 2015) | 4 lines
Changed paths:
   M /trunk/Inventory.lua
   M /trunk/RecipeGroups.lua
   M /trunk/Skillet.lua
   M /trunk/Skillet.toc
   M /trunk/SkilletData.lua
   M /trunk/SkilletQueue.lua
   M /trunk/TradeskillInfo.lua
   M /trunk/UI/MainFrame.lua

- Remove explicit garbage collection (ticket 347)
- Changes needed to fix ticket 348
- Remove references to obsolete variable (fix Curse comment bug)
r471 | bsmorgan | 2015-08-06 15:17:20 +0000 (Thu, 06 Aug 2015) | 2 lines
Changed paths:
   M /trunk/Skillet.lua
   M /trunk/Skillet.toc
   M /trunk/UI/MainFrame.xml

- Fix Cooldown and Requires text overlap (ticket 345)


First Previous Page 30 of 69 Next Last
  • #625

    I enjoyed this update thoroughly for a couple weeks, but once I downloaded the Oct 16th update, I lost the utility, and re-downloading it hasn't helped. Any suggestions?

  • #603

    You should install the newest version. All there.

  • #599

    I have a problem with queueing stuff up to make.  Enchanting wise. It wants to make my essences into dusts, then those dusts back into essences. until i run out of materials to make anything, since conversion is not equal anymore.

    Any way to turn off specific materialcrafts when calculating queues?  Shatters and such. 

  • #600

    there is a way. SkilletDAta.lua contains a list of ignored mats - TradeSKillIgnoredMats. I will add mop enchanting items there

  • #604

    thank you

    To make things more complicated for you:   :)  I think when ppl leveling up, early and middle content, they would want skillet to upgrade their materials. make the higher quality from the lower ones. And when they reach high end content and reach a turning point, they will all get only high end materials, and they would want break them into lower quality ones while crafting as necessary. 

    I am imagining something like a toggle option, but it is your choice, your addon, your work and we are thankful for anything you do with it.

    Keep up the good work *thumbs up*

  • #597
    Pandaria Cooking


    how can I get Skillet to show the skill for all the Ways of Pandaria cooking instead of overall cooking skill? Barring that, can I turn Skillet off only for cooking? (If yes, how?)


  • #598

    For now it's not possible. I will add this feature ASAP. Probably today - I already changed soruces, just have to test it and release when I get home.

    Last edited by yossa on 9/27/2012 3:34:27 AM
  • #601

    Cool, seems to work. Thanks, yossa.

  • #595
    Debug Error since last update

    Date: 2012-09-18 21:22:23
    ID: 1
    Error occured in: Global
    Count: 1
    Message: ..\AddOns\Skillet\SkilletQueue.lua line 201:
    attempt to perform arithmetic on field 'count' (a nil value)
    Skillet\SkilletQueue.lua:201: RemoveFromQueue()
    Skillet\SkilletQueue.lua:469: RemoveQueuedCommand()
    [string "*:OnClick"]:2:
    [string "*:OnClick"]:1
    self = <table> {
    VendorItemAvailable = <function> defined @Interface\AddOns\Skillet\SkilletData.lua:435
    SkillButton_NewGroup = <function> defined @Interface\AddOns\Skillet\UI\MainFrame.lua:2460
    modules = <table> {
    CustomizeCountsColumn = <function> defined @Interface\AddOns\Skillet\ThirdPartyHooks.lua:492
    ClearQueue = <function> defined @Interface\AddOns\Skillet\SkilletQueue.lua:218
    RecipeGroupAddSubGroup = <function> defined @Interface\AddOns\Skillet\RecipeGroups.lua:210
    GetRecipeNamePrefix = <function> defined @Interface\AddOns\Skillet\ThirdPartyHooks.lua:212
    TradeButtonAdditional_OnEnter = <function> defined @Interface\AddOns\Skillet\UI\MainFrame.lua:614
    RecipeGroupConstructDBString = <function> defined @Interface\AddOns\Skillet\RecipeGroups.lua:576
    QueueAppendCommand = <function> defined @Interface\AddOns\Skillet\SkilletQueue.lua:87
    DeleteQueue = <function> defined @Interface\AddOns\Skillet\SkilletQueue.lua:586
    QueueChanged = <function> defined @Interface\AddOns\Skillet\Skillet.lua:1232
    DisplayShoppingList = <function> defined @Interface\AddOns\Skillet\ThirdPartyHooks.lua:455
    ShowQueueView = <function> defined @Interface\AddOns\Skillet\UI\MainFrame.lua:3465
    QueueAllItems = <function> defined @Interface\AddOns\Skillet\SkilletQueue.lua:357
    visited = <table> {
    ScheduleTimer = <function> defined @Interface\AddOns\DataStore\libs\AceTimer-3.0\AceTimer-3.0.lua:276
    AddToQueue = <function> defined @Interface\AddOns\Skillet\SkilletQueue.lua:152
    hideTrivialRecipes = false
    RecipeDifficultyButton_OnShow = <function> defined @Interface\AddOns\Skillet\UI\MainFrame.lua:563
    UpdateAutoTradeButtons = <function> defined @Interface\AddOns\Skillet\UI\MainFrame.lua:805
    RecipeGroupSort = <function> defined @Interface\AddOns\Skillet\RecipeGroups.lua:427
    EnableResize = <function> defined @Interface\AddOns\Skillet\UI\Utils.lua:122
    ConfigureRecipeControls = <function> defined @Interface\AddOns\Skillet\UI\MainFrame.lua:504
    UpdateNotesWindow = <function> defined @Interface\AddOns\Skillet\UI\RecipeNotes.lua:135
    GetTradeSkillIcon = <function> defined @Interface\AddOns\Skillet\TradeskillInfo.lua:280
    GetItemIDFromLink = <function> defined @Interface\AddOns\Skillet\TradeskillInfo.lua:36
    SkilletQueueMenu_Show = <function> defined @Interface\AddOns\Skillet\UI\MainFrame.lua:3229
    FreeCaches = <function> defined @Interface\AddOns\Skillet\Skillet.lua:904
    GetTradeSkillRecipeLink = <function> defined @Interface\AddOns\Skillet\TradeskillInfo.lua:211
    RescanBags = <function> defined @Interface\AddOns\Skillet\Skillet.lua:929
    internal_SortAndFilterRecipes = <function> defined @Interface\AddOns\Skillet\UI\Sorting.lua:497
    RecipeGroupNew = <function> defined @Interface\AddOns\Skillet\RecipeGroups.lua:87
    internal_AddPreButtonShowCallback = <function> defined @Interface\AddOns\Skillet\UI\MainFrame.lua:68
    GetReagentLabel = <function> defined @Interface\AddOns\Skillet\ThirdPartyHooks.lua:176
    ScanCompleted = <function> defined @Interface\AddOns\Skillet\Skillet.lua:795
    RecipeGroupRenameEntry = <function> defined @Interface\AddOns\Skillet\RecipeGroups.lua:397
    UnregisterAllEvents = <function> defined @Interface\AddOns\DataStore\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:202
    RecipeGroupFlatten = <function> defined @Interface\AddOns\Skillet\RecipeGroups.lua:466
    recipeDB = <table> {
    RecipeGroupMoveEntry = <function> defined @Interface\AddOns\Skillet\RecipeGroups.lua:293
    GetTradeSkillReagentItemLink = <function> defined @Interface\AddOns\Skillet\TradeskillInfo.lua:195
    linkedSkill = false
    ReagentButtonSkillSelect = <function> defined @Interface\AddOns\Skillet\UI\MainFrame.lua:2779
    fullView = true
    ShowReagentDetails = <function> defined @Interface\AddOns\Skillet\UI\MainFrame.lua:3356
    GetTradeSkillTools = <function> defined @Interface\AddOns\Skillet\TradeskillInfo.lua:225
    GetName = <function> defined @Interface\AddOns\DataStore\libs\AceAddon-3.0\AceAddon-3.0.lua:300
    name = "Skillet"
    Tooltip_ShowCompareItem = <function> defined @Interface\AddOns\Skillet\UI\Utils.lua:203
    internal_ShowTradeSkillWindow = <function> defi
    (Available Upon Request)


  • #594


    Great addon, love lilsparkies workshop too!

    I have a problem with skillet on some characters, the frame level of all of their profession buttons in the open skillet window is too low so i cannot click to change profession or summon cooking fires. It seems to be limited to that character until i delete the saved information, then it will change the problem to another character!

    Using the easy workaround of having proffesions on a dominoes bar *gasp!*

    Thanks for making WoW more enjoyable!

  • #593

    BugGrabberDB = {
                ["message"] = "Skillet-2.34\\UI\\MainFrame.lua:2829: attempt to index local \"newSkill\" (a nil value)",
                ["time"] = "2012/09/15 23:03:59",
                ["locals"] = "self = SkilletReagent1 {\n 0 = <userdata>\n}\nbutton = \"LeftButton\"\ndown = false\nlink = \"|cffffffff|Hitem:65365:0:0:0:0:0:0:0:85:0:0|h[Folded Obsidium]|h|r\"\n",
                ["stack"] = "Skillet-2.34\\UI\\MainFrame.lua:2829: in function \"ReagentButtonOnClick\"\n<string>:\"*:OnClick\":11: in function <string>:\"*:OnClick\":1",
                ["session"] = 4,
                ["counter"] = 1,
            }, -- [3]

  • #592

    I received this error when clicking on the Reforging skill on my DK.

    Date: 2012-09-14 15:02:13
    ID: 1
    Error occured in: Global
    Count: 1
    Message: ..\AddOns\Skillet\UI\MainFrame.lua line 748:
       attempt to index field '?' (a nil value)
       Skillet\UI\MainFrame.lua:748: UpdateTradeButtons()
       (tail call): ?
       Skillet\SkilletQueue.lua:450: StopCast()
       (tail call): ?
       (tail call): ?
       Skillet\Skillet.lua:871: ?()
       [string "safecall Dispatcher[1]"]:4:
          [string "safecall Dispatcher[1]"]:4
       [C]: ?
       [string "safecall Dispatcher[1]"]:13: ?()
       ...ibDataBroker\CallbackHandler\CallbackHandler-1.0.lua:92: Fire()
       [C]: ?
       [C]: UseAction()
       ..\FrameXML\SecureTemplates.lua:275: handler()
       [C]: ?
       [C]: ?
       (tail call): ?
      Withheld to keep post small, but available upon request.

  • #591

    Get this error, only when Skillet is active. Will also be posting on Ion page:

    You have to learn the rules of the game. And then you have to play better than anyone else. - Albert Einstein

  • #590

    In the latest version my blacksmithing char got 8 recipes that just show up as "unknown" with no further information.

    Not sure what that is about?

  • #589

    LibDialog-1.0 is missing in Libs folder

  • To post a comment, please login or register a new account.
Login to Curse

Don't have an account? Create One.

Get an epic experience with Curse Premium
  • Faster addon downloads
  • Premium-Only Beta Giveaways
  • Ad-Free Curse experience
  • Premium Curse Client
  • and many More Features
  • Learn More »

Gamepedia Free-shirt Giveaway