Mortal Ken Add-Ons

ReagentData [Download]


Reagent Data is a comprehensive library of all reagents used in tradeskills in World of Warcraft. It also contains a variety of common item classes to provide a rich reagent library for other mod developers. In addition, it provides an access API to give developers flexibility when dealing with the data as well as direct access to its data arrays so authors can get exactly what they want from it.

Please note that this is a base mod used by several other addons. There is no need for most users to directly interact with this addon, and you should not delete or otherwise alter it unless you're certain it's not currently in use.

Installation

Reagent Data will normally be packaged along with another addon. If you have downloaded a standalone copy, virus check the .zip file and unzip it into your World of Warcraft directory. Files are installed into the AddOns directory (World of Warcraft\Interface\AddOns\ReagentData). Aside from that, it doesn't do anything unless another mod interacts with it.

API

Mod Authors: Reagent Data was designed with you in mind. It provides you a massive reagent library and API that will automatically translate to other languages, giving your mod additional flexibility at no coding cost. It is as comprehensive as possible and designed to be flexible and lightweight so you don't have to worry about coding or storing the reagent data yourself.

The recipe data is stored in the ReagentData['crafted'] table. A fully populated data record might look like:

ReagentData['crafted']['blacksmithing']['Sword of a Thousand Truths'] = {
	specialty = "weapon",
	skill = 375,
	description = "[BoE] (2H Sword) DPS: 150.0, Dmg: 275-325, Spd: 2.0, MinLvl: 70",
	sockets = {
		["Red"] = 1,
		["Yellow"] = 1,
		["Blue"] = 1,
		["Bonus"] = "+8 Stamina",
	},
	type = "Two-Hand",
	subtype = "Sword",
	source = "Drop",
	sourcerarity = "Epic",
	resultrarity = "Epic",
	result = 1,
	stacksize = 1,
	itemLvl = 115,
	reagents = {
		["Adamantite Bar"] = 40,
		["Primal Mana"] = 6,
		["Primal Nether"] = 1,
	},
}
Note that some fields are not supplied (entry is nil) for default values:
  • result - default value is 1
  • stacksize - default value is 1
  • sourcerarity - default value is "Common"
  • resultrarity - default value is "Common"
  • resultname - default value is the same as the recipe name
This is done to save a little space by leaving out the most common values for these fields.

There are two primary ways of accessing data in Reagent Data: By accessing the ReagentData table itself or by using the various API functions.

ReagentData Table

The ReagentData table is a collection of subtables that hold various base item and profession information. The following indices are available:

Base Item Classes

  • alchemyfish - Alchemy Fish
  • bandage - Bandages
  • bar - Metal Bars
  • cloth - Cloth
  • cookingfish - Cooking Fish
  • element - Elements (such as Elemental Earth)
  • gem - Gems
  • herb - Herbs
  • hide - Hides (including the cured versions)
  • leather - Leather
  • ore - Metal ores
  • poison - Rogue poisons
  • potion - Various potions (primarily those used in other recipes)
  • reagent - Spell reagents (not associated with any class)
  • stone - Stone

Item Classes Produced by Tradeskills

  • armor - Only those used in tradeskills
  • bolt - Cloth bolts
  • grinding - Grinding stones
  • jcpart - Jewelcrafted parts
  • oil - Various oils such as Blackmouth Oil and Frost Oil
  • other - Items that don't fir in other categories
  • power - Blasting powders
  • part - Engineering parts (including the vendor purchased ones)
  • rod - Metal rods
  • weapon - Only those used in Tradeskills

Enchanting Reagents

  • dust - Enchanting dusts
  • essence - Enchanting essences
  • shard - Enchanting shards

Vendor Items

  • drink - Drinks used in tradeskills
  • dye - Dyes
  • flux - Fluxes
  • food - Food used in tradeskills
  • salt - Salts (including refined deeprock)
  • spice - Cooking spices
  • thread - Threads
  • vendorother - Other vendor items
  • vial - Vials
  • wood - Enchanting woods

Other Item Classes

  • monster - Items primarily obtained from monsters
  • feather - Feathers (not light feather)
  • scale - Scales (not naga scale)
  • spidersilk - Spider silks

Professions (Tradeskills that produce a finished product)

  • alchemy - Alchemy
  • blacksmithing - Blacksmithing
  • cooking - Cooking
  • enchanting - Enchanting
  • engineering - Engineering
  • jewelcrafting - Jewelcrafting
  • firstaid - First Aid
  • leatherworking - Leatherworking
  • tailoring - Tailoring

Gather Skills (Tradeskills that create raw materials)

  • fishing - Fishing
  • herbalism - Herbalism
  • mining - Mining
  • skinning - Skinning

Helper Tables

  • faction - Contains a list of factions and the reputation required for faction-based recipes
  • professions - Contains the localized text version of profession names
  • gathering - Contains the localized text version of the gather skills
  • reverseprofessions - This allows you to easily get the index for a profession from the localized text name.
  • reversegathering - This allows you to easily get the index for a gather skill from the localized text name.
  • spellreagents - A multidimensional table of all classes and the spell reagents they use.
  • vendor - A collection of all item clases that come from vendors
  • monsterdrops - A collection of all item classes that come from monster drops

ReagentData Design Principles

The ReagentData table holds the complete reagent information for this addon. It was created with two principles in mind.

First, each reagent will only appear by name once. That means that there will only be one place that says "Light Leather". Any other references to the item will call the table reference to that base name. This cuts down on potential typos, makes translations easier, and cuts down on memory usage by using LUA's table reference mechanisms instead of flinging multiple copies of the strings into memory.

Second, reagents will be broken down into logical base groups based on a common attribute. For example, all leathers appear in a ReagentData['leather'] category because they're all leathers. After the base groups, other logical groups such as professions and vendor items are built by referencing the base groups as mentioned earlier.

One benefit of this mechanism is that only the base groups need to be altered for a translation. By creating a new GetLocale() if block that contains translations for the base groups, all references to those items are automatically translated into the new language based on the client's settings. For example, if your code references ReagentData['leather']['light'], it will resolve to "Light Leather" on English clients. However, if a German client runs your mod, it will automatically resolve to "Leichtes Leder" without any special effort on your part.

API Functions

ReagentData provides a few functions to make developing your addon a little easier.

ReagentData_ClassSpellReagent(item)

This function takes an item name (such as "Fish Oil") and returns an array of classes that use the reagent {"Shaman"}. It returns the translated text version of the name.

ReagentData_GatheredBy(item)

This function takes an item name (such as "Light Leather") and returns an array of gather skills that are used to gather the item. For example, calling ReagentData_GatheredBy("Light Leather") on an English client will return {"Skinning"}. Results are not sorted, so be sure to run them through table.sort if you want them in alphabetical order.

I can't think of any items that are gathered by more than one skill, but this way the function behaves the same as other API calls and is flexible in case we can one day skin herbs or something.

ReagentData_GetItemClass(class)

Returns the data array for the requested item class. This is the Reagent Data name for the item, NOT the translated name. This means you'll need to run it through ReagentData['reverseprofessions'] or ReagentData['reversegatherskills'] first. This function does NOT flatten the returned function either, so keep that in mind when loading professions; it doesn't apply to base classes such as ReagentData['bar'].

Most authors will simply want to access the ReagentData tables directly instead of using this function, but it's provided anyway.

ReagentData_GetProfessions(item)

Returns a table that contains a translated list of all professions that use the specified item. For example, calling ReagentData_GetProfessions("Light Leather") on an English client will return {"Blacksmithing", "Engineering", "Leatherworking", "Tailoring"}. Results are not sorted, so be sure to run them through table.sort if you want them in alphabetical order.

ReagentData_GetSpellReagents(class)

Returns a table that contains all spell reagents used by the specified class. For example, calling ReagentData_GetSpellReagents("shaman"} will return {"Ankh", "Fish Oil", "Shiny Fish Scales"}. If class is omitted or specified as "all", all classes and spell reagents will be returned in a multi-dimensional array.

ReagentData_GetFaction(recipe)

Returns a table that contains entries of the form:

{
	faction = "faction name",
	standing = standing required,
		-- where standing =
		-- 1 - Friendly
		-- 2 - Honored
		-- 3 - Revered
		-- 4 - Exalted
}
or nil if the recipe doesn't require faction.

Boolean Functions

ReagentData_IsMonsterDrop(item)

A Boolean function that indicates if the specified item is primarily obtained from monster drops. Item is expected to be a localized string such as "Tiger Meat".

ReagentData_IsUsedByProfession(item, profession)

A Boolean function that indicates if the specified profession uses the specified item. Both profession and item are expected to be the localized text version of the name (such as "Copper Bar" and "Blacksmithing").

ReagentData_IsVendorItem(item)

A Boolean function that indicates if the specified item is primarily obtained from vendors. Item is expected to be a localized string such as "Heavy Stock".

Credits

Original Author: Jerigord (GDI)
German translation: Xadros
French translation: Zindjorl
Chinese translation: SonicXP
Translation updates: Allakhazam
Ongoing maintenance: Mshell, Guild of Mortal Ken

Release Notes

------------------
-- Known Issues --
------------------

   - Need tool requirements for new spells (engineering, enchanting)
   - Localization

-------------
-- Changes --
-------------
-------------------
-- Version 2.5.1 --
-------------------

     * Added recipes to L450 (as available)
     * Corrected older recipes for reduced reagents
       - most items using thorium bars had the number of bars reduced
       - blacksmithing Thorium set no longer requires Un'goro crystals

-------------------
-- Version 2.5.0 --
-------------------

    * Updated for Patch 3.0.2/3 (Echoes of Doom)
       - Wrath of the Lich King compatible
       - Does not include recipes above L375 yet
     * Added new Inscription profession
       - added new reagents
         ReagentData["pigment"] (produced from herbs by milling)
         ReagentData["ink"] (produced from pigments by inscription)
     * All items which previously had +healing or +damage now just show +spellpower

-------------------
-- Version 2.4.8 --
-------------------

    * Added new recipes from Patch 2.4.3 and 2.4.4
      - Jewelcrafting
        (350) Forceful Talasite
        (350) Quick Dawnstone
        (350) Reckless Noble Topaz
        (375) Purified Shadowsong Amethyst
      - Tailoring
        (245) Haliscan Pantaloons
        (250) Haliscan Jacket
        (375) Mycah's Botanical Bag
    * Item changes:
      - Alchemy
        Philospher's Stone is now 200 skill, down from 225

-------------------
-- Version 2.4.7 --
-------------------
        
        * Added new recipes from Patch 2.4, The Fury of the Sunwell
        * Reagents
          - Added ['element']['sunmote'] (can be argued that this, like
            Primal Nether, is really a mob drop and should be ['monster'])
          - Added ['armor'] entries for the upgradable engineer head pieces

-------------------
-- Version 2.4.6 --
-------------------

    * Reagents
      - Added ['drink']['sparklingcider'] (used in Cooking/Hot Apple Cider)
        * Recipes
          - General: Updated all recipes with a healing equipped effect to
            adjust for the new policy that all healing gear also provide
            approx 1/3 the bonus to damage as well.
          - Alchemy
            Added (335) Mad Alchemist's Potion
          - Blacksmithing
            Added (35) Heavy Copper Longsword
            Added (335) Adamantite Weapon Chain
          - Cooking
            Added (1) Delicious Chocolate Cake
            Added (300) Broiled Bloodfin
            Added (300) Kibler's Bits
            Added (300) Stormchops
            Added (325) Spicy Hot Talbuk
            Added (325) Skullfish Soup
            Added (325) Hot Apple Cider
          - Enchanting
            Added (330) Enchant Shield - Resilience
          - Engineering
            Added (275) Steam Tonk Controller
            Added (335) Adamantite Arrow Maker
            Removed (335) Adamantite Shells
            Added (335) Adamantite Shell Machine
            Added (350) Flying Machine Control
            Added (360) Field Repair Bot 110G
            Added (375) Turbo-Charged Flying Machine Control
          - Jewelcrafting
            Added (360) Crimson Sun (Consortium Revered)
            Added (360) Don Julio's Heart (Consortium Revered)
            Added (360) Facet of Eternity (Keepers of Time Honored)
            Added (360) Stone of Blades (Keepers of Time Revered)
            Added (365) Chaotic Skyfire Diamond
          - Leatherworking
            Added (285) Winter Boots
            Added (300) Leatherworker's Satchel
            Added (315) Knothide Quiver and Ammo Pouch
            Added (350) Glove Reinforcements
            Added (350) Heavy Knothide Armor Kit
            Added (350) Netherscale Ammo Pouch (Honor Hold/Thrallmar Revered)
            Added (350) Quiver of a Thousand Feathers (Lower City Revered)
            Added (360) Bag of Many Hides
          - Tailoring
            Added (250) Green Winter Clothes and (250) Red Winter Clothes

-------------------
-- Version 2.4.5 --
-------------------

	Updates for Patch 2.2 and bugs since RD 2.4.4
	* Recipes
	  - Alchemy
	    Added (375) Flask of Chromatic Wonder (Violet Eye Honored)
	    Replaced (375) Flask of Shadow Fortification with Flask of Pure Death
	    Replaced (375) Flask of Arcane Fortification with Flask of Blinding Light
	  - Blacksmithing
	    Added (350) Ragesteel Shoulders, which required adding
	    ReagentData['other']['scrollofstrengthv'] (Scroll of Strength V)
	    needed by the recipe
	    Changed description for Lesser and Greater Runes of Warding
	  - Enchanting
	    Added (300) Nexus Transformation, (335) Small Prismatic Shard (Trained)
	    Added (350) Enchant Weapon - Greater Agility (Violet Eye Exalted)
	    (300) Enchant Cloak - Dodge now vendored (Lower City Exalted)
	    (300) Enchant Cloak - Stealth now vendored (Cenarion Expedition Exalted)
		(300) Enchant Cloak - Subtlety now vendored (HH/Thrallmar Exalted)
		(300) Enchant Gloves - Superior Agility now vendored
		(Keepers of Time Exalted)
	    (300) Enchant Gloves - Threat now vendored (Sha'tar Exalated)
	    All newly faction-vendored recipes have upgraded reagents
	    Updated reagents for (300) Enchant Cloak - Greater Fire and Nature
	    Resistance
	    Recipes have standardized on using "Bracers" in the name
	    Enchanting no longer uses Black Diamonds
	  - Engineering
	  	Reduced Engineering requirement for potion injectors to 305
	  - Jewelcrafting
	  	Added (350) Steady Talasite (sold at Halaa)
	    Added (360) Kailee's Rose (Sha'tar Honored)
	    Added (360) Blood of Amber (Sha'tar Revered)
	    Added (360) Falling Star (Lower City Revered)
	    Added AC: 127 value for (365) Crown of the Sea Witch (now trained)
	    Changed levels for (325) Purified Jaggal Pearl, (340) Necklace of the
	    Deep, (350) Purified Shadow Pearl
	    Fixed stack size for Mercurial Adamantite (now 20)
	    Fixed description for Mystical Skyfire Diamond
	  - Leatherworking
	    Added (360) Cloak of Darkness (Violet Eye Exalted)
	    Added (365) Shadowprowler's Chestguard (Violet Eye Revered)
	    Fixed descriptions for BoP items
	  - Tailoring
	  	Fixed spell damage/healing increases for older recipes (several were
	  	increased in the last item rebalance)
	* Reagents
	  - Added ['other']['scrollofstrengthv']

-------------------
-- Version 2.4.4 --
-------------------

   Catch up for additional recipes added post PTR, primarily Black Temple
   recipes.
   * Recipes
     - Alchemy
       Added Cauldron recipes
     - Blacksmithing
       Added "Red" epic set, Boots of the Protector, Belt of the Guardian,
       Swiftsteel Shoulders, Dawnsteel Bracers
     - Cooking
       Added Stewed Trout, Fisherman's Feast, and Hot Buttered Trout
       (Added in 2.1.2)
     - Engineering
       Added Fused Wiring, Frost Grenade, Icy Blasting Primers,
       Elemental Seaforium Charge, new goggles
       Increased DPS for Adamantite Shells
       Reduced skill requirement for Felsteel Stabilizer,
       Hardened Adamantite Tube
     - Jewelcrafting
       Added Scale of the Sands cuts
     - Leatherworking
       Added new epic boot/belt/bracer/shoulder recipes,
       added new resistance armor kits
     - Tailoring
       Added belt and boots of Blasting and the Long Road, Mantle of Nimble
       Thought, Swiftheal patterns
       Renamed Festival Suit to Festive Red Pant Suit
   * Reagents
     - Fixed typo in spelling of "holidy spirits" [sic]
     - Added ['cookingfish']['enormousbarbedgilltrout']
     - Added ['cookingfish']['hugespottedfeltail']
     - Added ['pearl']['jaggal']
     - Added ['pearl']['shadow']
     - Added ['drink']['purifieddraenicwater']
     - Added ['drink']['flaskofport']
     - Added ['food']['goldenbarkapple']
     - Added ['tool']['manaloom']

-------------------
-- Version 2.4.3 --
-------------------

   * General
     - Updated toc for patch 2.1
   * API
     - Added RDsubtype function which can be called to return the
       subtype field of a recipe.
   * Recipes
     - Added recipes for patch 2.1
     - Alchemy
       Now use the subtype field for consumables to indicate whether
       the item is 1 - potion, 2 - guardian elixir, 3 - battle elixir
   * Reagents
     - Added ['monster']['heartofdarkness']

-------------------
-- Version 2.4.2 --
-------------------

   * Recipes
     - Alchemy
       Added (345) Fel Regeneration Potion
     - Jewelcrafting
       Added (300) Figurine - Black Diamond Crab
       Added (350) Khorium Band of Shadows
     - Leatherworking
       Added (340) Flame Armor Kit
     - Tailoring
       Added (365) Soulcloth Shoulders, (375) Soulcloth Vest
   * Factions
     - Updated rewards for BC factions
   * General
     - Completed French localization

-------------------
-- Version 2.4.1 --
-------------------

   * API
     - Added ReagentData['faction'] table which tracks the reputation
       required for recipes
   * Reagents
     - Moved naga scale back to ['monster']['nagascale'] as this is the
       only scale which isn't used by Leatherworking
   * General
     - Updated more recipes for changes since expansion launch
     - Completed German localization

-------------------
-- Version 2.4.0 --
-------------------

   ** Updates for the Burning Crusade expansion **
   
   * API
     - Added a 'tools' entry to recipes which require tools (set to true/1 if
       the tool is needed). Localized tool names may be found in
       ReagentData['tool']; this is most useful for enchant-based addons to
       check what rod the enchant requires.
     - Added a 'sockets' entry to crafted items with sockets; this is a table
       with a list of how many of each socket: e.g.,
       ...['item']['sockets']['Red'] = 1;
       The table entry is only non-nil if a socket exists. The bonus, if
       any, is a text string accessible from:
       ...['item']['sockets']['bonus']
     - Added an 'itemLvl' entry to crafted item recipes to store the item
       level, since Blizzard has now made this available. This is of some
       importance to (Dis)enchanters.
     - Added a "stacksize" entry
     - 'potions' table is listing only those which are required as reagents.
     - new 'weapon' table lists the weapons required as reagents (primarily
       the new blacksmithing specialty weapons)
   * Reagents
     - moved smallobsidianshard and largeobsidianshard to 'ore' from 'monster'
       to reflect the fact that they're gained by mining; this is to stay in
       sync with the new "skinned" herbs
     - moved Naga Scale, Brilliant Chromatic Scale, Scale of Onyxia, Slimy
       Murloc Scale, Thick Murloc Scale, and Dreamscale to the 'scale'
       category from 'monster'. New locations:
       ['scale']
           ['naga']
           ['brilliantchromatic']
           ['onyxia']
           ['slimymurloc']
           ['thickmurloc']
           ['dream']
     - added new BC reagents
   * Jewelcrafting
     - Added jewelcrafting.lua (and updated all tables everywhere accordingly)
       Note that jewelcrafting is not yet fully localized, pending the world
       release of the expansion.
     - Added 'jcpart' table to hold Jewelcrafting parts
   * General
     - Updated various recipes with slightly changed reagents (in most cases,
       reducing the number of reagents required)
     - Recipes which result from quests now have the quest name listed in the
       "source" tag.

-------------------
-- Version 2.3.8 --
-------------------

   * As of Patch 1.12, Argent Shoulders no longer requires a Righteous Orb
   * Changed Shadoweave Mask from Vendor to Quest (results from the quest
     "The Undermarket" given by Nilith Lokrav in Searing Gorge)

-------------------
-- Version 2.3.7 --
-------------------

   * Updated TOC for patch 1.12

-------------------
-- Version 2.3.6 --
-------------------

   * Added Chinese translation by SonicXP
   * Merged in AQ20 and Naxxramas quest item data from ahkren

-------------------
-- Version 2.3.5 --
-------------------

   * Typo fixes
       - minor updates to Icebane Breastplate, Runed Stygian Boots, Dreamscale
         Breastplate, Stormshroud set pieces, Powerful Anti-Venom, Gloves of
         Spell Mastery, Gordok Ogre Suit, Tranquil Mechanical Yeti
   * Updated info
      - updated equip effects of Robe of the Void and Robe of the Archmage
      - updated stats for Stormshroud Shoulders
      - changed source for Darkrune recipes to "Quest:True Believers"; they're
        a random reward from the Twilight Text turn-ins to Hermit Ortell,
        Silithus
   * Reagents
      - Arcane Powder - ReagentData['reagent']['arcanepowder'] (mage spell)
      - Blood of Heroes - ReagentData['other']['bloodofheroes']
      - Symbol of Kings - ReagentData['reagent']['symbolofkings'] (paladin spell)
      - moved Frozen Rune to 'other' from 'monster'
   * New Formulae
      - Alchemy: Gurubashi Mojo Madness
      - Poisons: Deadly Poison V
   * API Changes
       * Enchanting
       - Type field for enchants now lists the type of item affected by the
         enchant
       - Added a new field "enchant" for the stat affected by the enchant or
         the CoH enchant (e.g., "CoH Crusader") and a new field "bonus" for the
         amount of bonus to the affected stat. Useful for mod authors who want
         to search for "Wrist" item enchants which boost "Agility" (for instance).

-------------------
-- Version 2.3.4 --
-------------------

   * Updates for Patch 1.11
       - Reagents
             Chimaerok Tenderloin - ReagentData['monster']['chimaeroktenderloin']
             Frozen Rune - ReagentData['monster']['frozenrune']
       - Blacksmithing
             Icebane Bracers
             Icebane Gauntlets
             Icebane Breastplate
             Updated reagents for several recipes requiring MC drops
       - Leatherworking
             Polar Bracers
             Polar Gloves
             Polar Tunic
             Icy Scale Bracers
             Icy Scale Gauntlets
             Icy Scale Breastplate
       - Tailoring
             Glacial Cloak
             Glacial Gloves
             Glacial Vest
             Glacial Wrists
             Updated Dreamweave Circlet (now Rare)

-------------------
-- Version 2.3.3 --
-------------------

   * Minor recipe fixes
   * Updates for Patch 1.10
       - Reagents
              Morrowgrain - ReagentData['herb']['morrowgrain']
                  Not a new item, but only used in recipes as of 1.10
              Large Obsidian Shard - ReagentData['monster']['largeobsidianshard']
              Small Obsidian Shard - ReagentData['monster']['smallobsidianshard']
       - Alchemy
              Elixir of Greater Firepower
       - Blacksmithing
              Black Grasp of the Destroyer
              Heavy Obsidian Belt
              Ironvine Belt (1.11)
              Ironvine Breastplate (1.11)
              Ironvine Gloves (1.11)
              Jagged Obsidian Shield
              Light Obsidian Belt
              Obsidian Mail Tunic
              Persuader
              Sageblade
              Thick Obsidian Breastplate
              Titanic Leggings
       - Enchanting
              Enchant 2H Weapon - Agility
       - Engineering
              Small Red/Blue/Green Rocket
              Large Red/Blue/Green Rocket
              Red/Blue/Green Rocket Cluster
              Large Red/Blue/Green Rocket Cluster
              Firework Launcher
              Firework Cluster Launcher
       - Leatherworking
              Bramblewood Belt (1.11)
              Bramblewood Boots (1.11)
              Bramblewood Helm (1.11)
              Stormshroud Gloves
       - Tailoring
              Cenarion Herb Bag
              Satchel of Cenarius
              Enchanted Magewave Pouch
              Enchanted Runecloth Bag
              Big Bag of Enchantment
              Festive Red Dress
              Festive Red Pant Suit
              Gaea's Embrace (1.11)
              Sylvan Crown (1.11)
              Sylvan Shoulders (1.11)
              Sylvan Vest (1.11)
   * API Changes
       - Added a "Seasonal:" to the source field for items provided by
         quests or drops during seasonal content only:
                Alchemy/Elixir of Frost Power
                Blacksmithing/Edge of Winter
                Enchanting/Enchant Weapon: Winter's Might
                Engineering/Snowmaster 9000
                Engineering/Small Red/Green/Blue Rocket
                Engineering/Large Red/Green/Blue Rocket
                Engineering/Red/Green/Blue Rocket Cluster
                Engineering/Firework Launcher
                Engineering/Large Red/Green/Blue Rocket Cluster
                Engineering/Firework Cluster Launcher
                Leatherworking/Gloves of the Greatfather
                Tailoring/Green Holiday Shirt
                Tailoring/Festive Red Dress
                Tailoring/Festive Red Pant Suit

-------------------
-- Version 2.3.2 --
-------------------

   * Updates for Patch 1.9
       - Reagents
               Nexus Crystal - ReagentData['shard']['nexuscrystal']
               Raw Sagefish - ReagentData['cookingfish']['rawsagefish']
               Raw Greater Sagefish - ReagentData['cookingfish']['rawgreatersagefish']
       - Alchemy
               Transmute: Elemental Fire
       - Blacksmithing
               Heavy Timbermaw Belt
       - Cooking
               Smoked Sagefish
               Sagefish Delight
               Smoked Desert Dumplings
       - Enchanting
               Minor Wizard Oil
               Lesser Wizard Oil
               Wizard Oil
               Brilliant Wizard Oil
               Minor Mana Oil
               Lesser Mana Oil
               Brilliant Mana Oil
               Enchant Cloak - Greater Fire Resistance
               Enchant Cloak - Greater Nature Resistance
               Enchant Cloak - Dodge
               Enchant Cloak - Stealth
               Enchant Cloak - Subtlety
               Enchant Gloves - Fire Power
               Enchant Gloves - Frost Power
               Enchant Gloves - Healing Power
               Enchant Gloves - Shadow Power
               Enchant Gloves - Superior Agility
               Enchant Gloves - Threat
               Updated description for all wands
       - Tailoring
               Soul Pouch
               Felcloth Bag
               Core Felcloth Bag

-------------------
-- Version 2.3.1 --
-------------------

  * Fixed a few more typos in several tradeskill files.
  * Fixed several recipes.
  * Added:
      - Engineering: The Mortar: Reloaded
      - Engineering: Goblin Jumper Cables XL
      - Blacksmithing: Dark Iron Boots
  * API/Table Changes
      Added a new field, "specialty" to keep track of which recipes require
      specialty engineering - values:
      Blacksmithing: weapon, armor, sword, axe, hammer
      Engineering: goblin, gnomish
      Leatherworking: dragonscale, elemental, tribal

-------------------
-- Version 2.3.0 --
-------------------

 * This version has been graciously provided by Zindjorl.  All new information and bug fixes are his credit.
   Thanks for the help while I was moving!
 
 * General 
   - File structure changed to more easily accommodate localization.  Each language now appears in its own file.
   - I have the Darkmoon Faire items (including localized strings), but I haven't gotten a chance to add them yet.
     I hope to have them out once things calm down here a bit.

 * API/Table Changes
   - Anh'Qiraj data has been added for the English localization.
   - Zul'Gurub enchant information has been added.

-------------------
-- Version 2.2.4 --
-------------------

 * Localization
    - Corrected some encoding errors in the German Zul'Gurub strings.  Thanks to Maischter.
    - Received a complete new French translation, including Zul'Gurub items, thanks to Zindjorl.

--------------------
-- Version 2.2.3b --
--------------------

 * Localization
    - Received a complete new German translation thanks to Maischter

-------------------
-- Version 2.2.3 --
-------------------

 * General
   - Corrected typos in several tradeskill files
   - Added missing some identified missing entries in the German and French translations to remove some nil errors.
     These entries are not localized, however.  If you find more missing entries or translations, please email them
     to me.  I no longer check the comments on the mod sites.
   - Attempted to add German translation of Zul'Gurub items, though there may be an encoding error in what I received.
     Thanks to Sunny.
   - Updated for the 1.9 patch

-------------------
-- Version 2.2.2 --
-------------------

-----------------------
-- API/Table Changes --
-----------------------

 Alchemy:
   Corrected a typo in the Living Action Potion ingredients.  Thanks to Vladimir.

-------------------
-- Version 2.2.1 --
-------------------

 * Updated for the 1.8 (1800) patch

-----------------------
-- API/Table Changes --
-----------------------

 * General
   - Added Dark Rune: ReagentData['monster']['darkrune']
   - Added Dreamscale: ReagentData['monster']['dreamscale']
   - Added Heavy Silithid Carapace: ReagentData['monster']['heavysilithidcarapace']
   - Added Light Silithid Carapace: ReagentData['monster']['lightsilithidcarapace']
   - Added Sandworm Meat: ReagentData['monster']['sandwormmeat']
   - Added Silithid Chitin: ReagentData['monster']['silithidchitin']
   - Changed ReagentData['monster']['bloodvine'] to ReagentData['herb']['bloodvine']

 * Blacksmithing
   - Added Darkrune Gauntlets, Darkrune Helm, and Darkrune Breastplate recipes

 * Cooking
   - Added Sandworm Meat to ReagentData['cooking']

 * Leatherworking
   - Added Dreamscale to ReagentData['leatherworking']
   - Added Heavy Silithid Carapace to ReagentData['leatherworking']
   - Added Light Silithid Carapace to ReagentData['leatherworking']
   - Added Silithid Chitin to ReagentData['leatherworking']
   - Added Green Dragonscale Gauntlets, Blue Dragonscale Leggings, Dreamscale Breastplate,
     Sandstalker Bracers, Sandstalker Breastplate, Sandstalker Gauntlets, Spitfire Gauntlets,
     Spitfire Breastplate, Spitfire Bracers, and Black Whelp Tunic recipes

 * Tailoring 
   - Added Dark Rune to ReagentData['tailoring']
   - Added Runed Stygian Leggings and Runed Stygian Belt recipes

-------------------
-- Version 2.2.0 --
-------------------

--------------------
-- New Tables/API --
--------------------

 Reagent Data now contains a ReagentData['quest'] table for important quest items.  This was done
 due to the addition of new quests that have a complicated number of tradeable items that are
 desired by multiple classes.  The table was designed to be zone-centric.  That is to say, the subtables 
 of ReagentData['quest'] are the names of the zones in which the quests appear.  Currently, only
 Zul'Gurub quests are supported.  Due to the dynamic nature of the quest system, the individual table
 design and format will vary from zone table to zone table.  This is by design.

-----------------------
-- API/Table Changes --
-----------------------

 * All profession tables have been tweaked or revamped thanks to Fara and Andreas.

 * General:
   - Added Massive Mojo: ReagentData['monster']['massiveomojo']
   - Added Bloodvine: ReagentData['monster']['bloodvine']
   - Added Primal Bat Leather: ReagentData['leather']['primalbat']
   - Added Primal Tiger Leather: ReagentData['leather']['primaltiger']
   - Added Elementium Ore: ReagentData['ore']['elementium']
   - Added Elemental Flux: ReagentData['flux']['elementium']
   - Added Souldarite: ReagentData['gem']['souldarite']
   - Added Huge Venom Sac: ReagentData['monster']['hugevenomsac']
   - Added ReagentData['bandage']['powerfulantivenom']
   - Changed ReagentData['monster']['coreleather'] to ReagentData['leather']['core']

 * Alchemy
   - Corrected Major Rejuvenation Potion (spelling error)
   - Corrected Restorative Potion (name change)
   - Added Elemental Air to ReagentData['alchemy']
   - Added Large Fang to ReagentData['alchemy']
   - Added Heart of the Wild to ReagentData['alchemy']
   - Removed Oil of Immolation from ReagentData['alchemy'] since it's not used in any recipes
   - Removed Goblin Rocket Fuel from ReagentData['alchemy'] since it's not used in any recipes
   - Added Mageblood Potion, Greater Dreamless Sleep Potion, Living Action Potion, and 
     Major Troll's Blood Potion recipes

 * Blacksmithing
   - Too many recipe changes to list individually.  The recipe list should be far, far more accurate now.
   - Added Elemental Air to ReagentData['blacksmithing']
   - Added Essence of Undeath to ReagentData['blacksmithing']
   - Added Core Leather to ReagentData['blacksmithing']
   - Added Sulfuron Ingot to ReagentData['blacksmithing']
   - Added Bloodvine to ReagentData['blacksmithing']
   - Added Souldarite to ReagentData['blacksmithing']
   - Corrected Elixir of Ogre's Strength in ReagentData['blacksmithing'] (spelling error)
   - Corrected Lesser Invisibility Potion in ReagentData['blacksmithing'] (spelling error)

 * Enchanting
   - Corrected skill level on Lesser Magic, Greater Magic, and Lesser Mystic wands
   - Added in all enchanting effects thanks to data from Fara!

 * Engineering: 
   - Removed several Unknown Items
   - Removed Strong Flux and Elemental Flux from ReagentData['flux']
   - Added Truesilver Transformer to ReagentData['part'] and ReagentData['engineering']
   - Added The Big One to ReagentData['part'] and ReagentData['engineering']
   - Added Essence of Water to ReagentData['engineering']
   - Added Elemental Air to ReagentData['engineering'].  Man this stuff is popualr.
   - Added Essence of Undeath to ReagentData['engineering']
   - Added Icecap to ReagentData['engineering']
   - Added Deeprock Salt to ReagentData['engineering']
   - Added Bloodvine to ReagentData['engineering']
   - Added Souldarite to ReagentData['engineering']
   - Added Powerful Mojo to ReagentData['engineering']
   - Added Hyper-Radiant Flame Reflector, Dimensional Ripper - Everlook, Green Firework, EZ-Thro Dynamite II,
     Red Firework, Blue Firework, Powerful Seaforium Charge, Gyrofreeze Ice Deflector, World Enlarger,
     Alarm-O-Bot, Ultrasafe Transporter - Gadgetzan, Ultra-Flash Shadow Reflector, Dense Dynamite,
     Snake Burst Firework, Bloodvine Goggles, and Bloodvine Lens recipes.

 * First Aid
   - Added ReagentData['monster']['hugevenomsac']

 * Leatherworking
   - Removed Mageweave Bolt from ReagentData['leatherworking']
   - Added Righteous Orb to ReagentData['leatherworking']
   - Added Ironweb Spider Silk to ReagentData['leatherworking']
   - Added Powerful Mojo to ReagentData['leatherworking']
   - Added Runecloth Bolt to ReagentData['leatherworking']
   - Added Felcloth to ReagentData['leatherworking']
   - Added Mooncloth to ReagentData['leatherworking']
   - Added Jet Black Feather to ReagentData['leatherworking']
   - Added Bloodvine to ReagentData['leatherworking']
   - Added Golden Mantle of the Dawn, Heavy Leather Ball, Lava Belt, Barbaric Bracers, Dawn Treaders,
     Molten Belt, Might of the Timbermaw, Timbermaw Brawlers, Chromatic Gauntlets, Corehound Belt,
     Primal Batskin Jerkin, Primal Batskin Gloves, Primal Batskin Bracers, Blood Tiger Breastplate,
     Blood Tiger Shoulders, recipes.

 * Mining
   - Added Smelt Elementium

 * Tailoring
   - Removed several Unknown Items
   - Added Enchanted Leather to ReagentData['tailoring']
   - Added Living Essence to ReagentData['tailoring']
   - Added Essence of Earth to ReagentData['tailoring']
   - Added Arcanite Bar to ReagentData['tailoring']
   - Added Bloodvine to ReagentData['tailoring']
   - Added Argent Boots, Flarecore Leggings, Wisdom of the Timbermaw, Mantle of the Timbermaw, Argent Shoulders
     Flarecore Robe, Bloodvine Vest, Bloodvine Leggings, and Bloodvine Boots recipes.

---------------
-- Bug Fixes --
---------------

 * More German translation corrections.  You crazy kids and your umlautes.

-------------------
-- Version 2.1.3 --
-------------------

---------------
-- Bug Fixes --
---------------

 * Corrected some errors with the German and French localizations.  Thanks to Jens and Elkano.

-------------------
-- Version 2.1.2 --
-------------------

-----------------------
-- API/Table Changes --
-----------------------

 * Updated for the 1600 patch
 * Reintegrated German and French translations.

-------------------
-- Version 2.1.1 --
-------------------

-----------------------
-- API/Table Changes --
-----------------------

 * Added ReagentData['monster']['righteousorb'] to ReagentData['enchanting']. - Credit to DaemoN

-------------------
-- Version 2.1.0 --
-------------------

---------------
-- Bug Fixes --
---------------

 * Due to insurmountable problems, the item link system Reagent Data 2.0.0 has been removed.  It was
   causing a disconnect problem for too many clients due to factors beyond my control.  It will still 
   be used to create the old, static version of Reagent Data and can be used to quickly localize new
   language versions of the mod.  If you are interested in helping with this localization process,
   please email Jerigord at reagentwatch -at- tarys -dot- com.

 * As of this version, only the English version of Reagent Data will be distributed in this zip file.
   This is done to keep file sizes down and due to the new translation mechanism.  Localized versions
   of Reagent Data will be distributed separately as reagentdata-x.y.z-lang.zip where lang refers to 
   the language of the translation.  Due to its design, other language versions can be dropped in over
   top of the English version without affecting the mods that use Reagent Data.

-----------------------
-- API/Table Changes --
-----------------------

 * Corrected ReagentData['reagent']['ironwoodseed'] - Credit to Rassilon
 * Added ReagentData['reagent']['wildthornroot'].  Also added to ReagentData['spellreagents']['druid']. - Credit to Rassilon
 * Added ReagentData['reagent']['sacredcandle'].  Also added to ReagentData['spellreagents']['priest']. - Credit to Jexx

-------------------
-- Version 2.0.0 --
-------------------

------------------
-- New Features --
------------------

 * Reagent Data now uses an item link based system developed by
   Tuatara.  Instead of storing text strings for the item
   names, it stores the item link used by the WoW database.  On
   load, your client automatically converts those item links
   into the localized string names for your client.  Item links
   were provided courtesy of the Cosmos team with contributions from GDI.
 * If the localization fails or breaks for any reason, issuing
   a "/reagentdata" command will re-localize the data on demand. 
 * Added in a comprehensive recipe database compiled by
   Bima. All tradeskill recipes should be represented within
   Reagent Data now with all relevant information.  See the
   recipe section below for more information.

-----------------------
-- API/Table Changes --
-----------------------

General:

 * Changed ReagentData['monster']['bighearmeat'] to ReagentData['monster']['bigbearmeat']
 * Changed ReagentData['cookingfish']['rawnightfish'] to ReagentData['cookingfish']['rawmightfish']
 * Changed ReagentData['blacksmithing']['gem']['shadowgem'] to ReagentData['blacksmithing']['gem']['shadow'] - Credit to Fudge
 * Changed ReagentData['scale']['slimymurloc'] to ReagentData['monster']['slimymurlocscale']
 * Changed ReagentData['scale']['thickmurloc'] to ReagentData['monster']['thickmurlocscale']
 * Added ReagentData['armor']['cinderclothcloak'].  Also added to ReagentData['leatherworking']
 * Added ReagentData['monster']['sulfuroningot'].  Also added to ReagentData['blacksmithing']
 * Added ReagentData['monster']['coreleather'].  Also added to ReagentData['leatherworking'] and ReagentData['tailoring']
 * Added ReagentData['monster']['skinofshadow'].  Also added to ReagentData['leatherworking']
 * Added ReagentData['monster']['ogretannin'].  Also added to ReagentData['leatherworking'] and ReagentData['tailoring']
 * Added ReagentData['monster']['scaleofonyxia'].  Also added to ReagentData['leatherworking'] and ReagentData['alchemy']
 * Added ReagentData['monster']['softfrenzyflesh'].  Also added to ReagentData['cooking']
 * Added ReagentData['vendorother']['coal'].
 * Corrected scale listing in ReagentData['skinning']
 * Removed ReagentData['poison']['cripplingiii']
 * Removed ReagentData['element']['wildessence']

Alchemy:
 * Added ReagentData['element']['earth'] to ReagentData['alchemy']
 * Added ReagentData['element']['water'] to ReagentData['alchemy']
 * Added ReagentData['element']['ichorofundeath'] to ReagentData['alchemy']
 * Added ReagentData['dye']['purple'] to ReagentData['alchemy']
 * Added ReagentData['element']['essenceofair'] to ReagentData['alchemy']
 * Added ReagentData['element']['essenceofearth'] to ReagentData['alchemy']
 * Added ReagentData['element']['essenceoffire'] to ReagentData['alchemy']
 * Added ReagentData['element']['essenceofwater'] to ReagentData['alchemy']
 * Added ReagentData['element']['essenceofundeath'] to ReagentData['alchemy']
 * Added ReagentData['element']['heartofthewild'] to ReagentData['alchemy']
 * Added ReagentData['dust']['dream'] to ReagentData['alchemy']
 * Removed ReagentData['oil']['frost'] from ReagentData['alchemy']

Blacksmithing:
 * Corrected ReagentData['potion']['lesserinvisibility'] in ReagentData['blacksmithing']
 * Added ReagentData['element']['essenceofearth'] to ReagentData['blacksmithing']
 * Added ReagentData['element']['essenceoffire'] to ReagentData['blacksmithing']
 * Added ReagentData['element']['essenceofwater'] to ReagentData['blacksmithing']

Enchanting:
 * Added ReagentData['oil']['frost'] to ReagentData['enchanting']
 * Corrected ReagentData['oil']['fire'] in ReagentData['enchanting']

Engineering:
 * Added ReagentData['gem']['bluesapphire'] to ReagentData['engineering']
 * Added ReagentData['gem']['largeopal'] to ReagentData['engineering']
 * Added ReagentData['gem']['hugeemerald'] to ReagentData['engineering']
 * Added ReagentData['gem']['azerothiandiamond'] to ReagentData['engineering']
 * Added ReagentData['element']['essenceofearth'] to ReagentData['engineering']
 * Added ReagentData['element']['essenceoffire'] to ReagentData['engineering']
 * Added ReagentData['element']['essenceofair'] to ReagentData['engineering']	

Leatherworking:
 * Added ReagentData['gem']['shadow'] to ReagentData['leatherworking']
 * Removed ReagentData['cloth']['linen'] from ReagentData['leatherworking']
 * Removed ReagentData['cloth']['wool'] from ReagentData['leatherworking']
 * Removed ReagentData['cloth']['silk'] from ReagentData['leatherworking']

Tailoring:
 * Corrected ReagentData['pearl']['golden'] in ReagentData['tailoring'] - Credit to Bruce Walter
 * Corrected ReagentData['potion']['shadowprotection'] in ReagentData['tailoring']
 * Corrected ReagentData['herb']['wildvine'] in ReagentData['tailoring']
 * Added ReagentData['element']['essenceoffire'] to ReagentData['tailoring']
 * Added ReagentData['element']['essenceofair'] to ReagentData['tailoring']
 * Added ReagentData['element']['essenceofundeath'] to ReagentData['tailoring']
 * Added ReagentData['gem']['hugeemerald'] to ReagentData['tailoring']
 * Added ReagentData['gem']['azerothiandiamond'] to ReagentData['tailoring']
 * Added ReagentData['pearl']['black'] to ReagentData['tailoring']
 * Added ReagentData['pearl']['golden'] to ReagentData['tailoring']
 * Added ReagentData['monster']['righteousorb'] to ReagentData['tailoring']

------------------------
-- Recipe Information --
------------------------

Thanks to Bima, Reagent Data now includes a complete set of
recipe information for all tradeskills in the game.  This data
was compiled from several online resources and fits into the
Reagent Data schema in a way that should be intuitive for addon
developers.

All recipe information appears in the ReagentData['crafted']
table.  The professions are broken into subtables based on their
Reagent Data names.  Recipes are included for alchemy,
blacksmithing, cooking, enchanting, engineering, firstaid,
leatherworking, mining, poisons, and tailoring.  Here's an
example entry:

ReagentData['crafted']['alchemy'] = {
    ['Elixir of Lion\'s Strength'] = {
        skill = 1,
        description = 'Use: Increases Strength by 4 for 1 hour.',
        source = 'Trainer',
        result = 1,
        reagents = {
            [ReagentData['vial']['empty']] = 1,
            [ReagentData['herb']['earthroot']] = 1,
            [ReagentData['herb']['silverleaf']] = 1,
        }
    },
};

Currently all recipe data is in English.  The index into each
table is the name of the recipe.  This points to an information
table about the recipe that contains things like skill level ,
description, source, result, and a reagent list.  The description
contains either usage information about the item, item
statistics, or both.  Standard abbreviations are used for item
statistics to make parsing easier.  The reagents table is keyed
off of ReagentData items with a value of the number required by
the recipe.

-------------------
-- Version 1.2.3 --
-------------------

-----------------------
-- API/Table Changes --
-----------------------

 All API changes in this version are credit to Tuatara unless otherwise noted

 * Changed ReagentData['alchemyfish']['rawstonescaleeel'] to ReagentData['alchemyfish']['stonescaleeel']
 * Changed ReagentData['reagent']['demonicfigure'] to ReagentData['reagent']['demonicfigurine']
 * Added ReagentData['dye']['black']
 * Added ReagentData['monster']['giantclammeat'].  Also added to ReagentData['cooking']
 * Added ReagentData['armor']['fineleathertunic'].  Also added to ReagentData['leatherworking']
 * Added ReagentData['bar']['steel']
 * Added ReagentData['armor']['greentintedgoggles'].  Also added to ReagentData['engineering']
 * Added ReagentData['part']['mithrilmechanicaldragonling']
 * Added ReagentData['part']['woodenstock']
 * Added ReagentData['other']['snowball'].  Also added to ReagentData['engineering']
 * Corrected German translation for Enchanting.  - Credit to Lunox

-------------------
-- Version 1.2.2 --
-------------------

-----------------------
-- API/Table Changes --
-----------------------

 * Added ReagentData['monster']['buzzardwing'].  Also added to ReagentData['cooking']
 * Added ReagentData['monster']['softfrenzyflesh'].  Also added to ReagentData['cooking']

-------------------
-- Version 1.2.1 --
-------------------

-----------------------
-- API/Table Changes --
-----------------------

 * Added ReagentData['monster']['whitespidermeat'].  Also added to ReagentData['cooking'] - Credit to swanee52
 * Added ReagentData['monster']['tenderwolfmeat'].  Also added to ReagentData['cooking']
 * Added ReagentData['element']['livingessence'].  Also added to ReagentData['alchemy'].  It was omitted during
   original build by mistake.  - Credit to Cadex.
 * Corrected leatherworking entries for Essence of Earth/Air/Water.  The table structure was not built
   properly.  - Credit to Cadex.

-------------------
-- Version 1.2.0 --
-------------------

-----------------------
-- API/Table Changes --
-----------------------
 * Moved pearls to their own category, ReagentData['pearl'] and marked it as monster dropped.
   Previously, pearls were listed as gems, which caused problems with Reagent Info.
 * Added/Confirmed German translation for Bronze Bar, Dreamfoil, Major Mana Potion, Arthas' Tears,
   Mountain Silversage, Black Lotus, Fishing, Herbalism, Black Diamond, Dreamless Sleep, Elixir of
   Greater Intellect, Elixir of Greater Agility, Elixir of Detect Demon, Bolt of Mageweave, Iridescent
   Pearl, Black Vitriol, Claw Meat, Zesty Clam Meat, and all new poison ingredients.  
   Thanks to Xadros and jth for these!

-------------------
-- Version 1.1.0 --
-------------------

------------------
-- New Features --
------------------

* Added the rogue poison ingredient table: ReagentData['poisoningredient']
  This table contains the vendor ingredients used in poisons
* Added the rogue poison reagent table: ReagentData['poisonreagent']
  This table contains everything needed for creating rogue poisons and is the preferred method
  for accessing rogue poison reagent information.

---------------
-- Bug Fixes --
---------------

* Fixed two typos in ReagentData['alchemy'] - Credit to Myrathi

-----------------------
-- API/Table Changes --
-----------------------

* Removed ReagentData['alchemyfish']['deviate'], moved to ReagentData['cookingfish']['deviate']
* Updated ReagentData['cooking'] to reflect the deviate fish change
* Added ReagentData['alchemyfish'] to ReagentData['alchemy'].  Yes, I totally forgot it.
* Added ReagentData['vial']['imbued']
* Added ReagentData['herb']['blacklotus']
* Added ReagentData['part']['delicatearcaniteconverter']
* Added ReagentData['gem']['blackdiamond'].  Also added to ReagentData['leatherworking']
* Added ReagentData['monster']['brilliantchromaticscale'].  Also added to ReagentData['leatherworking']
* Added ReagentData['monster']['fierycore'].  Also added to ReagentData['blacksmithing'], 
  ReagentData['engineering'], ReagentData['leatherworking'], ReagentData['tailoring']
* Added ReagentData['monster']['lavacore'].  Also added to ReagentData['blacksmithing'], 
  ReagentData['engineering'], ReagentData['leatherworking'], ReagentData['tailoring']
* Added ReagentData['monster']['guardianstone'].  Also added to ReagentData['blacksmithing'],
  ReagentData['leatherworking'], ReagentData['tailoring']
* Added ReagentData['shard']['largebrilliant'] to ReagentData['tailoring']

Change Information

Here are the standards for version numbering for this mod. I will adhere to these as best I can. The mod will use a three dot notation for version numbering: X.Y.Z. In the event that the third dot is omitted, it is understood to be a zero.

The X portion of the number refers to the version "family" of the mod. New versions of the mod will remain in the same family provided there are no significant changes to the API that break functionality. This means that any mod that is compatible with the X family should be compatible with all versions of the X family. The mod may not full use of features introduced later in the family, but it should still run. X level upgrades will, therefore, be rare and only occur when a significant change to the mod is made that will break previous addons.

The Y portion of the version number refers to the revision level of the mod. New revisions may include new data tables (such as the introduction of rogue poison reagents in 1.1.0), new API calls that provide significant new functionality, and structure changes to Reagent Data tables. No Y change should break a previous mod, however. The only exception to this would be mods that directly access base data tables. If the Y change includes a table change, some mods may experience a nil error. This will be documented in the change log.

The Z portion of the version number refers to the current patch level of the mod. This will be the most frequently changing number of the mod. The Z number will be updated for Blizzard TOC changes, minor typographical errors (spelling, grammar, etc), or minor bug fixes to the API. Z changes do not indicate a major change in functionality.

As a final note, the three numbers are not on a fixed scale. This means that any of the three numbers does not have a fixed upper; they will increment as much as necessary. If there are not a huge number of changes, the version number could conceivably reach things like 1.2.14 as the UI TOC changes, though this is not likely.

Final Notes

As I mentioned, this library was created with addon authors in mind. Until now, authors who wanted to use reagent data either had to compile their own list (which is VERY time consuming) or rely on Sea (which provides a lot of unnecessary extras, is incomplete, and has a negative stigma). With the release of Reagent Data, these problems should now be solved. If you find a problem with Reagent Data or would like something added to it, please contact me at [email protected] This is your mod, so why not try and make it the best it can be? :-)

I'm definitely not stopping here. With the release of Reagent Data, I'm also releasing Reagent Info as a demonstration addon. This mod is essentially a replacement for Reagent Helper and took a single afternoon to develop from start to finish due in part to the flexibility of the Reagent Data library. In the future, tradeskill information can also be included as is done via the Reagent Tips addon. Reagent Watch 3.0 and above will also utilize Reagent Data and I'm considering a few other things to create a Reagent Suite. The sky's the limit! (No Cosmos pun intended.)

Thanks To:

  • My wife for putting up with my bizarre coding desires and having some good data structure sense.
  • Celdor for assisting with some design concepts and suggesting some API features...even if your suggestions suck. ;-)
  • Xadros for your German translation. You originally provided it for little ol' Reagent Watch and now look at what it's become.
  • Tuatara and Alexander for the design and prototype of the item link version. This allowed Reagent Data to expand to a whole new level of usefulness.
  • Bima for the recipe information. How cool is this stuff anyway?