Go to Page... |
Updated: | 02-20-07 07:12 PM |
Created: | unknown |
Downloads: | 93,362 |
Favorites: | 236 |
MD5: |
Unsupported
This addon is no longer supported by me, Saeris. It grew too large and bloated to continue maintaining, so instead, I created separate, smaller addons to handle each portion of the functionality this addon provided. Doing this allows each of those parts to be written more efficiently and be given the individual attention they need. They are all independent of one another, so you only need to install the components you want. They are:
LinksList
This is the successor to the graphical portion of LootLink. It provides the scrollable, searchable lists of links. It is a plugin-based system, with plugins to handle all four current link types: items, tradeskills, quests, and abilities. Download the "LinksList + All Plugins" compilation, linked in the Overview of LinksList's page, to get all of this functionality.
LinkBot
This is the successor to the AutoLinkBot portion of LootLink. It provides the ability to automatically respond to specially formatted chat-based requests for links. This, too, is a plugin-based system, with plugins to handle all four current link types. Download the "LinkBot + All Plugins" compilation, linked in the Overview of LinkBot's page, to get all of this functionality.
QuickChatlink
This is the successor to the QuickChatlink portion of LootLink. It provides the ability to automatically replace bracketed text that you type with the real link to whatever is indicated between the brackets. As with the others, this is a plugin-based system, with plugins to handle all four current link types. Download the "QuickChatlink + All Plugins" compilation, linked in the Overview of QuickChatlink's page, to get all of this functionality.
VendorValues
This is the successor to LootLink's ability to add vendor prices to tooltips. It provides that functionality with the options for much more customization than LootLink's version.
ItemTooltipIcons
This is the successor to LootLink's ability to display item icons next to tooltips. It provides that functionality with the options for much more customization than LootLink's version.
Other Notes
If you load LootLink and either LinksList_ItemDB_Links, LinkBot_ItemDB_Links, or QuickChatlink_ItemDB_Links (any one of the three), the new libraries will attempt to import your LootLink database. Note, however, that only base items (not suffixes) will be imported. LootLink counts suffixes as individual items, so your total item database size may appear to go down, but really the only thing not being imported are the suffixes.
Additionally, some pieces of LootLink's functionality do not yet have successors, either because they have not been written yet or because I do not plan to write them. They are:
- The ability to store and view item suffixes ("of the Eagle" et al). These are very easy to fake, very hard to verify programmatically, a pain to program around, and provide almost no useful functionality. LinksList has the ability to display them, but currently (and for the foreseeable future) there is no library to track and maintain them.
- The ability to see information about a given tooltip's IDs (base ID, enchant ID, etcetera for items, ID for tradeskills and abilities, ID and level for quests). This is not a priority to create an addon for, but may be implemented eventually.
Overview
This addon is a versatile item database which stores a grand amount of information about any item you've ever seen from any source. Included in this information is the item's name, full tooltip data, vendor price, and the date when it was last truly seen on the current server. Once added to your database, the item can be linked or tried on in the dressing room as if it was present in your bags. The database can be browsed by inputting to the search window any combination of name, full text, rarity, bind type, equip slot, type (armor, weapon, recipe, etcetera), subtype (cloth, one-handed sword, Alchemy, etcetera), minimum and maximum equip level and internal level, and whether it is unique. The database can then be sorted (in ascending or descending order) by any of those attributes by clicking the dropdown menu at the top of the results window.
Prominent features include:
- The conversion of typed item names into real item links (typing "[iron ore]" will replace the text with the real link for Iron Ore, and typing "[scout's blade {28}]" will replace the text with the level 28 version of the Warsong Gulch reward) with optional auto-completion suggestions (simply press Tab to fill in the rest of the suggested completion text, or press Shift-Tab to see other possible auto-completions).
- The ability to perform a full reparse of one's own database, refreshing all search and full-text data to the newest available from the server, and fixing any incorrect or invalid item names.
- The optional display of a great amount of extra item tooltip information (including vendor price, basic IDs, socket IDs, time last parsed, and the item's internal level as the game views it).
- The automatic combing of your itemcache.wdb file for any items which may have eluded parsing through normal means.
- The ability to automatically scan all pages of the auction house for new item data ("/lootlink auctionscan").
- A multitude of extra tooltip item data lines, including the vendor value for the item, the internal level of the item as the game sees it, the item's basic IDs (base, enchant, suffix, and instance), the item's socket IDs (gem 1, gem 2, gem 3, and the gem socket bonus), the time the item was last truly seen on the current server, and the maximum number of the item which can be in a single stack. There are also options to change the text color from the default teal to a plain white, and to include a separator line between the normal tooltip and this data.
- A QuickSearch edit box to quickly perform a search by name instead of opening the Search window (press Enter), or to sort through current search results to find an item matching the text you've input (press Tab), with the ability to quickly clear its contents by pressing Alt + Enter.
- The ability to manually add items to one's database from information available on sites like Wowhead, Allakhazam, or Thottbot, via a simple slash command method ("/lootlink addbybasicdetails" to provide the details yourself, or "/lootlink addbyrequestlink" to attempt to request the data from the server).
- The ability for others to use your database with specially prefixed chat messages. They can type "!item [text]" to have the first 9 results of searching your database by name for [text], or they can type ">item [text]" to have a single result sent to whatever form of chat they used to place the request.
- A small, mobile minimap-style button which can be clicked to toggle the results window, and dragged by holding Shift, Ctrl, or Alt. Also, its text will turn yellow whenever a new item enters your database, and displays a list of the last twenty items to have been added, just as the results window's title text does.
- The ability to perform a quick command line database search by name with either "/lootlink search [item name]" or "/ll s [item name]", the first ten results from which will be printed to the chat frame.
Many more features are available, but those are the most prominent ones. Most of these features are configurable, either by slash command ("/lootlink help") or by clicking the "Options" button in the browse window. You may also choose to bind a key to toggle LootLink's results window in the game's Key Bindings menu.
Additionally, there is one important thing to remember about this addon: To prevent data mining of items which are not supposed to be seen by the public yet, Blizzard has programmed their item server to disconnect clients which request a link to an item which the server has not yet seen. This list of "seen" items resets every time the server goes down for maintenance, which means you may be disconnected if you attempt to link a particularly rare item right after maintenance, even if you had seen the item just the day before. To help avoid this problem, LootLink can display the time an item was last seen in its tooltip (if enabled), including the exact day and time relevant to the current server. If this date is earlier than the last maintenance, the item might not be safe to link, but trying anyway can not do anything more than cause you a very minor inconvenience of logging back in.
Lastly, it is recommended that you perform a full database reparse (via the "Reparse" button on the options screen, or with "/lootlink fullreparse") once a week, preferably a day or two before maintenance, to keep your database up to date.
Note: A premade database of around 34,000 items is available to merge with your own database. The database comes in the form of an addon called LootLink PremadeDatabase, designed specifically for use with this version of LootLink. Once installed and enabled, just type "/lootlink mergedb" to perform the merger.
Coming eventually:
- A set of static data which is loaded, and stored, by LootLink instead of by the game's saved variables loader. This has the potential to greatly decrease the memory requirement of the saved database, as well as the initial login time.
- A right-click dropdown menu for every item in the results list, allowing you to manually alter stored data.
Feedback and Inquiries
I welcome feedback for any of my addons, including this one. However, if the feedback is a bug report or feature request, please use the methods on this page (the "Bugs" and "Features" buttons below the "Download" button in the top right) to alert me, instead of posting in the "Comments" section of this page, as it will take me longer to reply to you if you post there. For feedback or inquiries not related to bugs or features, such as information about translating this addon to another language or a request for a detailed explanation of a certain bit of code, please contact me directly via one of the methods listed in the "Preamble" section of my author portal's introduction text. Following these guidelines will ensure that I read and reply to your message.
History of Changes
See the readme file in this addon's folder, or my author portal, for an explanation of the versioning system.
8.2.9 (2/20/07):
- The base ID of each item is no longer added as part of the hash during reparsing, since it is logically impossible for it to be changed during that process.
- The tooltip hooks now include the GameTooltip methods :SetInboxItem() and :SetSendMailItem().
- All of the tooltip hooks have been changed to call self:GetItem() to get the link for which the additional data must be added, instead of using a unique, context-specific function for each method. This increases efficiency by preventing global lookups for those functions. Also, because of this, the algorithm now checks for the existence of that item link before attempting to call LootLink:Tooltips_AddAllApplicableInfo(), increasing efficiency for scenarios in which the tooltip method is called on an empty item slot, like when hovering the cursor over an empty bag slot.
8.2.8 (2/16/07):
- The login algorithm which finds and stores all possible suffixes now simply iterates over all possible item base IDs until it finds one which is cached, instead of looking for an item in your bags, since at initial login only items in the (potentially empty) backpack are checkable.
8.2.7 (2/16/07):
- The login algorithm which finds and stores all possible suffixes now searches your bags for a valid item to use for this parsing, instead of assuming you have a Hearthstone.
8.2.6 (2/12/07):
- Added a warning popup that will appear at login when the Hearthstone is not cached (which prevents suffixes from being parsed). This is in addition to the chat frame warning which has always been displayed in these cases, and is simply meant to draw attention to that message. The popup also includes a "Reload UI" button which can be clicked to reload the UI, which, as the chat frame warning states, fixes the problem.
- Added additional checks to the algorithm which creates the results list, to prevent it from erroring when a negative suffix ID does not have a list of instance IDs attached to it for some reason.
- Fixed an issue with reparsing where suffix items could be removed if they were expansion suffixes with no stored instance IDs.
- Changed French localization's First Aid display from "Secourisme" to "Premiers soins".
- Changed German localization's Gem Bag parse string from "Edelsteinbeutel" to "Edelsteintasche" and the Mining Bag parse string from "Bergbausack" to "Bergbautasche".
8.2.5 (2/4/07):
- Fixed a bug where items whose tooltips had no fulltext data to store in the database were still having an empty table created for that data anyway. Perform a full reparse ("/lootlink fullreparse") of your database to fix this issue for existing items. On a 43036 item database, this appears to have reduced the total memory requirement by about 11%.
- Possibly fixed an issue with the German localization not recognizing Gem Bags or Mining Bags.
8.2.4 (2/2/07):
- Added some additional checks to the database loading algorithm to ensure that there are no invalid entries in the database which could cause errors elsewhere.
8.2.3 (2/2/07):
- Fixed a bug where data from the hidden chat channel might not be blocked if the AutoLinkBot plugin was loaded before the DataSharing plugin.
8.2.2 (2/1/07):
- Now forcibly hooks ChatFrame_MessageEventHandler to ensure that no data from the hidden channel is displayed. This is inefficient, but as of 2.0.6 it is the only way to block the channel with certainty.
8.2.1 (1/31/07):
- Fixed an issue in the French localization which caused Gem Bags to not be recognized.
- Fixed an error that occasionally occurred when searching via fulltext, relating to a suffix's data being a boolean instead of a table.
- The results window item tooltip is now anchored to the top right corner of the window, rather than relative to the current item slot.
8.2.0 (1/29/07):
- The PremadeDatabase is no longer a plugin, due to it requiring 4MB of memory just to define the function which is called to load the premade database itself, and then another 7MB once loaded. It has been moved to a separate addon, as it once was, called LootLink_PremadeDatabase. The usage is still the same: just type "/lootlink mergedb" once it is loaded. But this way, the addon does not take up that memory prior to actually being used.
8.1.2 (1/29/07):
- Possibly fixed an issue with the PremadeDatabase's merging code that caused errors when used with Light Mode enabled.
- Fixed an error that occurred when enabling Light Mode from the checkbox on the Options screen.
- Updated French localization (thanks to Soligne).
8.1.1 (1/26/07):
- Fixed an error in the compatibility code for AtlasLoot / AtlasLootEnhanced.
- Moved the item icon on the results tooltip to be anchored to the top right corner of the tooltip and extend upward, instead of to the right, to prevent interference with comparison tooltips from other addons. To prevent the icons from extending off of the screen, the tooltip is also now shifted down by 45 pixels from its previous location relative to each item slot.
- Fixed a bug where the hidden data sharing chat channel, if enabled, was not remaining hidden after relogging or reloading the UI.
8.1.0 (1/24/07):
- Added a new tooltip option: the maximum number of the item which can be in a single stack.
- Fixed a bug in the PremadeDatabase plugin that caused it to always assume you had already performed a merger.
8.0.1 (1/23/07):
- Fixed a bug wherein expansion suffixes added to the database at runtime were not properly increasing the database count by plus one.
- Added a warning message to indicate that the UI must be reloaded if a Hearthstone is not in your cache when you first log in.
- Fixed compatibility code referencing an old function, Matching_GetItemTableAndSuffixByName.
See the readme file in this addon's folder for earlier changes.
Developer Notes
The format for one entry in LootLink's database table, LootLink_Database, is organized thusly:
[integer; item's base ID] = {
[1] = string; base portion of the name, the whole thing if there are no subitems
[2] = integer from 0 to 7; item's color in ITEM_QUALITY_COLORS
[3] = { table; item's suffixes, if it has any
[suffixID, positive integer indicating classic suffix] = table OR boolean; fulltext data if applicable or a placeholder
[suffixID, negative integer indicating expansion suffix] = {
[instanceID, integer] = table OR boolean; fulltext data if applicable, or a placeholder
};
};
[4] = integer from 1 to 4; item's bind type in LootLink.BIND_TYPES, or a nil value indicating no binding
[5] = integer-key table; base item's portion of the full text, or the whole thing if there are no suffixes
[6] = integer; item's vendor price in copper
[7] = integer from 1 to 24; item's equip location number from LootLink.EQUIP_LOCATIONS
[8] = integer from 1 to 11; item's type number from LootLink.TYPES_AND_SUBTYPES
[9] = integer from 1 to n; item's subtype number from LootLink.TYPES_AND_SUBTYPES[itemType]
[10] = integer from 1 to 70; item's minimum equip level
[11] = nil or true; item's unique status
[12] = integer from 1 to 999; item's internal level
[13] = string; the item's texture path, if storing these is enabled
};
Each entry in this table has a metatable allowing access to its numeric indices through a more recognizable tag, for use by other addon authors who do not have the above format memorized. None of these are case specific. It should be noted that these access methods are slower and, as such, should not be used in large loops.
itemTable[1] -> itemTable.name or itemTable.na
itemTable[2] -> itemTable.color or itemTable.co
itemTable[3] -> itemTable.suffixes or itemTable.su
itemTable[4] -> itemTable.bind or itemTable.bi
itemTable[5] -> itemTable.text or itemTable.te
itemTable[6] -> itemTable.price or itemTable.pr
itemTable[7] -> itemTable.location itemTable.lo
itemTable[8] -> itemTable.type or itemTable.ty
itemTable[9] -> itemTable.subtype or itemTable.su
itemTable[10] -> itemTable.equiplevel or itemTable.eq
itemTable[11] -> itemTable.unique or itemTable.un
itemTable[12] -> itemTable.itemlevel or itemTable.lv
itemTable[13] -> itemTable.texture or itemTable.tx
The format for one entry in LootLink's results table, LootLink.ResultsList, is different:
[integer; non-skipping real number incrementing] = itemTable
...where itemTable is a direct pointer to an entry in the database. Data about the entry is
stored in temporary negative integer keys in the itemTable, to be removed at PLAYER_LOGOUT. With that in mind, the negative keys are as follows:
[-1] = integer; recursive copy of the item's base ID, for the item button OnFoo functions
[-2] = nil or 0 or 1; the suffix flag, where nil means none, 0 means collapsed, and 1 means expanded
[-3] = integer; the number of suffix items in the itemTable which match the search criteria
Additionally, if there are suffix items, any of those which match the search criteria will have their table's [0] integer key set to true to indicate that they should be added/removed from the list dynamically, as their base item is expanded and collapsed. If they do not have a table, then their boolean will be changed from false to true.
![]() |
Comment Options |
Kruelty |
View Public Profile |
Send a private message to Kruelty |
Find More Posts by Kruelty |
Add Kruelty to Your Buddy List |
![]() |
|
|
Lootlink is dead, long live Linkslist.
Much of the previous functionality has been divided up in to separate addons. For those looking for the auto-linking function that used to be part of Lootlink, download Linkbot. For the part that would auto-complete links typed out in the chat box, download QuickChatlink. Make sure to get the DB addons listed in each page's Patches & Add-ons section. Without them, there's no data for the addons to use.
__________________
![]() |
![]() |
![]() |
Makershot |
View Public Profile |
Send a private message to Makershot |
Find More Posts by Makershot |
Add Makershot to Your Buddy List |
Nathanyel |
View Public Profile |
Send a private message to Nathanyel |
Find More Posts by Nathanyel |
Add Nathanyel to Your Buddy List |
![]() |
||
A Kobold Labourer
Forum posts: 0
File comments: 19
Uploads: 0
|
I've been parked outside ZA for 2 weeks, I guess I could gate back to Shat and actually LOOK or something ![]()
Last edited by Hellfire_ : 11-05-07 at 04:05 PM.
|
|
![]() |
![]() |
Hellfire_ |
View Public Profile |
Send a private message to Hellfire_ |
Find More Posts by Hellfire_ |
Add Hellfire_ to Your Buddy List |
![]() |
|
|
Seems they want to categorize food consumables in 2.3, at least Crescent-Tail Skullfish (and afaik only this one of the new foods) is categorized in the cooking panel as (in German) "Fleisch" (in English probably "Meat") and LL told me it found an unknown item cat "Fleisch" as well.
|
![]() |
![]() |
Nathanyel |
View Public Profile |
Send a private message to Nathanyel |
Find More Posts by Nathanyel |
Add Nathanyel to Your Buddy List |
![]() |
|
A Defias Bandit
Forum posts: 2
File comments: 8
Uploads: 0
|
Is anything going on with this mod? An update would be sweet.
|
![]() |
![]() |
Quinten_OOBL |
View Public Profile |
Send a private message to Quinten_OOBL |
Visit Quinten_OOBL's homepage! |
Find More Posts by Quinten_OOBL |
Add Quinten_OOBL to Your Buddy List |
Corlaran |
View Public Profile |
Send a private message to Corlaran |
Visit Corlaran's homepage! |
Find More Posts by Corlaran |
Add Corlaran to Your Buddy List |
Buio |
View Public Profile |
Send a private message to Buio |
Visit Buio's homepage! |
Find More Posts by Buio |
Add Buio to Your Buddy List |
![]() |
|
|
Probably referring to Saeris's LootLink 9.0.0 which he stated would be a complete rewrite.
|
![]() |
![]() |
Siz |
View Public Profile |
Send a private message to Siz |
Visit Siz's homepage! |
Find More Posts by Siz |
Add Siz to Your Buddy List |
![]() |
|
|
hmm.. I wonder if that actually implies a new addon or "just" LootLink but completely rewritten. =o Can't wait either way.
__________________
Grab your sword and fight the Horde! |
![]() |
![]() |
Lombra |
View Public Profile |
Send a private message to Lombra |
Visit Lombra's homepage! |
Find More Posts by Lombra |
Add Lombra to Your Buddy List |
yoshimo |
View Public Profile |
Send a private message to yoshimo |
Visit yoshimo's homepage! |
Find More Posts by yoshimo |
Add yoshimo to Your Buddy List |
![]() |
|
A Kobold Labourer
Forum posts: 0
File comments: 150
Uploads: 0
|
Tried the fixed version?
http://www.wowinterface.com/download...fo.php?id=7233 This one isn't updated, and contains lots of bugs. The fixed one takes care of most of them, but dont add any new features. |
![]() |
![]() |
Buio |
View Public Profile |
Send a private message to Buio |
Visit Buio's homepage! |
Find More Posts by Buio |
Add Buio to Your Buddy List |
![]() |
|
|
Error
After installing I get this error...
828\LootLink_ItemTables.lua:106: bad argument #2 to 'format' (number expected, got string) LootLink-828\LootLink_ItemTables.lua:106: in function `ItemTables_Populate' LootLink-828\LootLink_ItemTables.lua:500: in function `addBaseItem' LootLink-828\LootLink_Parsing.lua:73: in function `Parsing_ParseFromTable' LootLink-828\LootLink_Parsing.lua:103: in function `Parsing_ParseFromString' LootLink-828\LootLink_Main.lua:64: in function `Main_OnEvent' LootLink-828\LootLink_Main.lua:185: in function <Interface\AddOns\LootLink\LootLink_Main.lua:185> --- Any suggestions ?
__________________
Erm, yes, I would like to get mana back before you start tanking again... No healer mana = dead tank |
![]() |
![]() |
Wowgamer233 |
View Public Profile |
Send a private message to Wowgamer233 |
Visit Wowgamer233's homepage! |
Find More Posts by Wowgamer233 |
Add Wowgamer233 to Your Buddy List |
![]() |
|
A Kobold Labourer
Forum posts: 0
File comments: 1
Uploads: 0
|
Hi,
I am getting the following text from swatter every time I try to do a reparse with lootlink... Date: 2007-07-11 05:15:51 ID: 51 Error occured in: Global Count: 1 Message: ..\AddOns\LootLink\LootLink_ItemTables.lua line 106: bad argument #2 to 'format' (number expected, got string) Debug: [C]: ? [C]: format() LootLink\LootLink_ItemTables.lua:106: populate() LootLink\LootLink_Parsing.lua:514: Parsing_FullReparse() LootLink\LootLink_Main.lua:304: Main_SlashCommandHandler() ...ns\LootLink\Plugins\Options\LootLink_Options_XML.lua:91: ...ns\LootLink\Plugins\Options\LootLink_Options_XML.lua:91 AddOns: Atlas, v1.9.1 AtlasBattlegrounds, v1.9.1 AtlasDungeonLocs, v1.9.1 AtlasFlightPaths, v1.9.1 AtlasOutdoorRaids, v1.9.1 AtlasLoot, vAtlasLoot Enhanced v3.01.04 AtlasMajorCities, vv1.1.0 AtlasQuest, vAtlasQuest Version: 3.20.55 Auctioneer, v4.0.2 BankItems Merchantbags, v2.0.0 CTBarMod, v2.002 (CTMod 2.0) CTBuffMod, v2.01 (CTMod 2.0) CTCore, v2.001 (CTMod 2.0) CTExpenseHistory, v2.001 (CTMod 2.0) CTMailMod, v2.0 (CTMod 2.0) CTMapMod, v2.001 (CTMod 2.0) CTPartyBuffs, v2.0 (CTMod 2.0) CTRABossMods, v1.3 (CTMod 2) CTRaidAssist, v2.001 (CTMod 2.0) CTTimer, v2.01 (CTMod 2.0) Enchantrix, v4.0.3.2003 EnchantrixBarker, v3.9.0.1560 (Wallaby) EnhTooltip, v4.0.2 FishingBuddy, v0.9g Informant, v4.0.2 KLHThreatMeter, v19.18 LootLink, v828 StatStain, v1.0 Stubby, v1508 Swatter, v4.0.2 TankBuddy, v2.1 It doesn't give me the message that a reparse has been completed. I have tried deleting and reisntalling the mod though I didn't really think that would work since it seems to be a problem with the lua datafile. I'm not knowledgeable to try editing the file but I could paste that test if that might help you figure out how to help me. Thanks |
![]() |
![]() |
Woodhead |
View Public Profile |
Send a private message to Woodhead |
Visit Woodhead's homepage! |
Find More Posts by Woodhead |
Add Woodhead to Your Buddy List |
![]() |
|
A Murloc Raider
Forum posts: 5
File comments: 106
Uploads: 0
|
No updates on this?
|
![]() |
![]() |
Knaledge |
View Public Profile |
Send a private message to Knaledge |
Visit Knaledge's homepage! |
Find More Posts by Knaledge |
Add Knaledge to Your Buddy List |
![]() |