Loading...

» You are not logged in (log in)

You are here: Home » Inventory/Item » ItemDataCache
ItemDataCache
Virus/spyware scanned on upload
WARNING: Not been updated since the last patch
Compatible with WotLK ()
Author: twobits
Download size: 116.09 kB
Updated 23/01/2009 (553 days ago)
12,305 total downloads / downloads this week: 3,101 / downloads today: 949
Send PM to Twobits
 

Please log in to vote! Current rating: +8

This addon is both a static database and active scanner for item data. Note, this addon does not display gathered data by itself - it supplies data to other addons. For example if you want to see 'sell to vendor' prices you've gathered, you have to install Informant from Auctioneer package.

Features:
- Static 'sell to vendor' prices database for ~30900 items.
- Active 'sell to vendor' scanner that will save unknown or new prices for all items in your bags every time you visit a merchant.

Notes:
- Since this addon is currently in active development, there's no interface option yet to turn off messages, however ItemDataCache should report every item only once, so that shouldn't be much of a problem.
- *** WARNING! *** If you get repeated messages about same item on every visit to the vendor, that most likely means you've found some error in the scanner. Please report to me name of affected item and what properties (soulbound/quest/charges/etc) it has.
- If you really want to disable those messages, even considering that with current size of database you'll probably will not even see one in a week, you can use '/script ItemDataCacheLocal.Settings.noNewDataMessages=true' and '/script ItemDataCacheLocal.Settings.noUpdatedDataMessages=true' commands to do that. Note, however, that bug reports without information from those messages are much less useful to me and it will take more time to find and fix them, unless you'll be able to turn messages on again and reproduce the bug.
- This addon does nothing with collected data by itself, so you will most likely want to install one of addons that can display data collected by ItemDataCache or use it in its calculations:
* Informant from Auctioneer package: Informant's own database is updated periodically, but there are always some new unknown items or price changes. ItemDataCache hooks Informant.GetItem and inserts its own 'sell to vendor' values. This allows Informant to display correct updated and previously unknown prices.
* BottomScanner from Auctioneer package: just like with Informant, BottomScanner's database sometimes do not have most recent prices. ItemDataCache will provide BottomScanner with prices it knows.
* Titan Panel - Itemized Deductions (ReBorn): this addon, created to help you free space in your bags by selling junk, dropping cheap items or combining incomplete stacks, uses ItemDataCache as primary source of prices. In fact ItemDataCache was written specifically to replace Itemized Deductions' old database and everything else is just a nice side effect. :)
* MobInfo-2 and 3: tracks information about monsters you fight, like their HP or what items they drop. ItemDataCache is one of alternative sources for item prices data displayed in tooltips and used in calculating total monster value for this addon.
* Greyprice: minimal solution to track your looting progress. This addon displays a small window with total cost of all the junk loot in your bags.
* SwitchRod: uses ItemDataCache class data to find fishing pole in bags and equip it on command or switches your equipment back.
* Additionally, any addon that uses either Informant (for example: GarbageFu) or GetSellValue API (for example: VendorBait) for item prices will work with ItemDataCache too.

Patch notes for ItemDataCache
v.1.303
- updated many items prices for 3.0.8
- add 133 new items
- added code to try and protect against itemized deduction calling into internal
s
- tried to fix parsing issue for zhCH
- made tooltip scanner mode robust against a case it would stop seeing items had durability


v.1.302a
- reduce load order dependencies

v.1.302
- 300 more item prices
- reenabled hooking into Informant so it can benefit from our WotLK item prices

v1.301
- fixes for Woltk
- add many more items

v1.12
- Added 870 items to 'sell to vendor' DB, item count is now 16276. 34 old entries were updated.
- Added direct hooking of BottomScanner from Auctioneer package. BottomScanner gets prices from Informant only if they are not available in its own internal database and previously would only benefit from Informant hooking only on unknown prices. Now it gets price updates for known but old prices too.
- Both Informant and BtmScan now can be hooked both if they're loaded before or after ItemDataCache. This will stop ItemDataCache from forcing Informant to load even if user prefers it to load on demand.
- GetSellValue API now returns 0 instead of nil when item can't be sold to vendor according to clarification in specification. Only unknown prices will yield nil. After this change GetSellValue returns exactly same values as ItemDataCache.Get.ByID_selltovendor.
- Added two settings without UI that you can set manually to disable 'new data' and 'updated data' messages. You are advised not to use them, though, as bug reports without information of scanner activity will be much less useful.
ItemDataCache, archived on 01/01/09
ItemDataCache, archived on 07/01/09
ItemDataCache, archived on 08/01/09
ItemDataCache, archived on 23/01/09


Comments

228 days ago
I get this error since the 3.3 patch :

Date: 2009-12-13 15:47:51
ID: 1
Error occured in: Global
Count: 1
Message: ...ItemDataCache\ItemDataCache_ByID_class_Functions.lua line 27:
attempt to call method 'GetFrameType' (a nil value)
Debug:
(tail call): ?
[C]: GetFrameType()
...ItemDataCache\ItemDataCache_ByID_class_Functions.lua:27: RefreshItem()
...ItemDataCache\ItemDataCache_ByID_class_Functions.lua:43: RefreshClass()
...ItemDataCache\ItemDataCache_ByID_class_Functions.lua:130: InitLocalClassName()
...\AddOns\ItemDataCache\ItemDataCache_Scan_Tooltip.lua:203:
...\AddOns\ItemDataCache\ItemDataCache_Scan_Tooltip.lua:202
...\AddOns\ItemDataCache\ItemDataCache_Scan_Tooltip.lua:210: PurgeLocalDataByID_maxcharges()
ItemDataCache\IDC.lua:71: Init()
ItemDataCache\IDC.lua:22: OnEvent()
[string "*:OnEvent"]:1:
[string "*:OnEvent"]:1
AddOns:
Swatter, v5.7.4568 (KillerKoala)
Achieved, v0.3
AdvancedTradeSkillWindow, v
ArkInventory, v3.02
AtlasLoot, vv5.09.01
Babylonian, v5.1.DEV.130
Bartender4, v4.4.2
BigWigs, v3.15
Capping, v3.1.03
Carbonite, v3.3
CarboniteTransfer, v1.01
Click2Cast, v3.0
Configator, v5.1.DEV.190
Decursive, v2.4.5.1
ElkBuffBars, v2.2.5-150
EnsidiaFails, v
FeralbyNight, v3.244
FishingBuddy, v0.9.8b
ForteCasting, v
ForteCooldown, v
ForteCore, v1.94
ForteDruid, v
ForteTalent, v
ForteTimer, v
ForteVehicle, v
Gatherer, v3.1.14
GemHelper, v1.8.1
Grid, v1.30200.2009120101
HealBot, v3.3.0.2
ItemDataCache, v1.303
JudgeHype, vVersion 3.3.1
LibRareSpawns, v1.0.30100
LibRockConfig10, v
LoggerHead, v3.3.0.104
MobHealth, v3.3
MobInfo3, v0.801
Omen, v3.0.8
oRA2, v2.0.$Revision: 666 $
oUF, v1.3.24
Parrot, vv1.10.5
PitBull, vv3.2.14
Prat30, v3.3
Prat30HighCPUUsageModules, v
Prat30Libraries, v
QualityID, v3.10.25
Quartz, v1.0
RaidTracker, v2.2.52
RantTooltip, v
RareSpawnOverlay, v4.0.30100
RatingBuster, v
Recount, v
RollTracker, v0.3.1
Talented, vv2.4.4-release
WowLink, v0.9.8
BlizRuntimeLib_frFR v3.3.0.30300 <eu>
(ck=4b3)
315 days ago
i get this error each time i login

Date: 2009-09-17 19:57:42
ID: 1
Error occured in: Global
Count: 1
Message: ...aCache\ItemDataCache_ByID_selltovendor_Functions.lua line 28:
attempt to index global 'ItemDataCacheLocal_ByID_selltovendor' (a nil value)
Debug:
[C]: ?
...aCache\ItemDataCache_ByID_selltovendor_Functions.lua:28:
...aCache\ItemDataCache_ByID_selltovendor_Functions.lua:26
...Ons\ItemDataCache\ItemDataCache_API_GetSellValue.lua:40: GetSellValue()
...rkysWorkshop\pricingSupport\getSellValue_support.lua:14: vendorCost()
...ace\AddOns\LilSparkysWorkshop\lilsparkysworkshop.lua:735:
...ace\AddOns\LilSparkysWorkshop\lilsparkysworkshop.lua:729
...ace\AddOns\LilSparkysWorkshop\lilsparkysworkshop.lua:820: AddRecipe()
...ilSparkysWorkshop\pricingSupport\milling_support.lua:282:
...ilSparkysWorkshop\pricingSupport\milling_support.lua:275
...ilSparkysWorkshop\pricingSupport\milling_support.lua:318: Init()
...ace\AddOns\LilSparkysWorkshop\lilsparkysworkshop.lua:2054:
...ace\AddOns\LilSparkysWorkshop\lilsparkysworkshop.lua:2048
...ace\AddOns\LilSparkysWorkshop\lilsparkysworkshop.lua:2070:
...ace\AddOns\LilSparkysWorkshop\lilsparkysworkshop.lua:2062
...ace\AddOns\LilSparkysWorkshop\lilsparkysworkshop.lua:2118:
...ace\AddOns\LilSparkysWorkshop\lilsparkysworkshop.lua:2115
463 days ago
Please make sure the most recent version of the AddOn is always available here.

Thank you.
553 days ago
Sounds good. I'm on curse and wowInterface as well. Please let me know if there's anything I need to do with TP-ID to help out.

Thanks,
kernighan
553 days ago
Yeah, it seems to be some combo of load ordering, and ItemizedDeductions calling into more then just the public api. I think I patched around it for now... but we should probably figure out a way to either move some IDC code to ID and/or expand the public API some. There is a ticket on this issue on curse also btw, I prefer using tickets to track things myself. http://wow.curseforge.com/projects/item-data-cache/tickets/2-error-on-login/

554 days ago
I'm the author of TP-Itemized Deductions, and I didn't start getting the error until after upgrading Auctioneer to 5.2.
562 days ago
I've been doing a little investigating and as luck would have it, I narrowed it down to a single plugin for Titan. Titan [Itemized Deductions] and ItemDataCache are not playing well together. Titan [Itemized Deductions] is available on this site at http://wowui.worldofwar.net/?p=mod&m=6671 I'm alerting both authors.
565 days ago
No idea then why it is different on your system.. I am not getting those errors at all... hmmm... thought maybe it was a different mod load order. Did you delete the directory before updating ? you got the error with just those two mods enabled then? I will try doing that tommorrow and see if that replicates it for me. So far you are the only one to report it so no other systems to consider for a pattern either.

Your toc file lists the files to load in the following order right?

## Dependencies:
ItemDataCache_ByID_selltovendor_Data.lua
ItemDataCache_ByID_selltovendor_Functions.lua
ItemDataCache_Addon_Informant.lua
IDC.lua
ItemDataCache.xml

565 days ago
I downloaded the latest version. I'm receiving the same error with different line numbers now:

Date: 2009-01-10 20:48:08
ID: 1
Error occured in: Global
Count: 1
Message: ..\AddOns\ItemDataCache\IDC.lua line 78:
attempt to call field 'OverrideInformant' (a nil value)
Debug:
[C]: OverrideInformant()
ItemDataCache\IDC.lua:78: Init()
ItemDataCache\IDC.lua:22: OnEvent()
[string "*:OnEvent"]:1:
[string "*:OnEvent"]:1
AddOns:
Informant, v5.1.3715 (SnaggleTooth)
ItemDataCache, v1.302

565 days ago
Yeah, both will show 1.302 in game, 1.302a went up right after your first report, and has some changes to be less dependent on load ordering... both will show as 1.302 in the game though. Which zip did you unpack? 1.302a then? you updated to the a version after the initial report then?
566 days ago
Evidently the version that is causing this problem is v1.302a. It identifies itself in WoW as v1.302 (to Swatter) so that's why I stated that version but the filename is 1302a so I'm assuming it's the "a" version.
567 days ago
I just downloaded the new version and I'm receiving the following error currently on each character login:

Date: 2009-01-08 02:33:44
ID: 1
Error occured in: Global
Count: 1
Message: ..\AddOns\ItemDataCache\IDC.lua line 82:
attempt to call field 'OverrideInformant' (a nil value)
Debug:
[C]: OverrideInformant()
ItemDataCache\IDC.lua:82: Init()
ItemDataCache\IDC.lua:25: OnEvent()
[string "*:OnEvent"]:1:
[string "*:OnEvent"]:1

768 days ago
A fixed version of the problem file is available at:

http://www.curse.com/downloads/details/13062/

Sorry about posting a link to That Other Site, but it's such a pain creating new projects these days that I don't want to go through it twice for a temporary fix...
771 days ago
Thanks for the fix, brykrys - works like a charm!
773 days ago
The fix HonorGoG posted is only a partial fix, as Blizzard changed ITEM_SPELL_CHARGES too... also there's no need to use gsub on constant strings.

Try replacing lines 59-60 of ItemDataCache_Scan_Tooltip.lua with these two lines:

local patternItemSpellChargesP1="(%d+) Charges"

local patternItemSpellCharges="(%d+) Charge"

Note this is only a partial fix, as it only affects English clients. Also it doesn't handle the case of 0 Charges properly... working on that now :)

edit: make sure you keep the capitalisation and punctuation correct in the patterns - I just noticed that HG missed the capital C in Charges in his post
778 days ago
Hey guys, here is a fix. Not sure where I saw it but I recreated it from memory when I saw these messages:

Within ItemDataCache_Scan_Tooltip.lua, replace:

local patternItemSpellChargesP1=gsub(ITEM_SPELL_CHARGES_P1, "%%.-d", "(%%d+)")

with:

local patternItemSpellChargesP1=gsub("%d charges", "%%.-d", "(%%d+)")

This will fix the problem. Blizzard removed the "ITEM_SPELL_CHARGES_P1" global.
1024 days ago
IDC is self learning and updates items you have in your bags as you visit vendors
1048 days ago
The question is... how "up to date" are the sell values?