[Suggestion] AskPrice Data Option
  • KanegasiKanegasi January 2012
    Donator
    Would there be a chance in the future to change where the AskPrice module pulls data from? Right now, it's hardcoded to pull current market data so if the queried item is not in the current AH image, AskPrice incorrectly states it never seen it before. I would suggest adding a mean value option instead of market price, or even allow AskPrice to pull from one of the enabled stat utilities.
  • HirsuteHirsute January 2012
    Developer
    You're not correct. Market Price is a conglomerate value of multiple statistics, and exists for items you've seen enough before, regardless of whether or not they're currently in the image.

    I verified this both by checking AskPrice for a price when I had an empty AH image (cleared it, had not done a scan since) and by scanning, then checking AskPrice for an item I had seen in the past (though rarely, the item was the schematic for Lifelike Mechanical Toad) but was not currently on the AH, and thus not in my image.

    In both cases, AskPrice returned a price just fine. If AskPrice is telling you it hasn't seen the item, it's because you have not seen the item enough for your stat modules to provide enough data to Auctioneer for it to form a reasonable estimate of Market Value.

    It's possible your suggestion could be implemented anyway, though I'd be interested in more discussion on whether or not it would truly be useful, but your assessment of how it currently functions is inaccurate, so if there's something specifically giving you problems, more details may help us more accurately assess what's going on.
  • KanegasiKanegasi January 2012
    Donator
    I use just one module. The Undermine Journal. The tooltip has data, but AskPrice is not reporting it.
  • HirsuteHirsute January 2012
    Developer
    Then the Undermine Journal module likely does not contribute to Market Price. As I said, Market Price is a conglomerate of multiple statistical modules, and a stats module has to designate that it should be included in the Market Price calculation AND provide specific information about it's pricing data to the addon for it to be part of that conglomeration.

    It's possible AskPrice could be retooled to allow designation of what stat module it should draw its information from, but I don't currently know exactly how much work that would involve.
  • HirsuteHirsute January 2012
    Developer
    After some quick perusal of the code, it looks like it might be feasible to make this configurable, though I know it will be some time before I have much time to work on this. For anyone reading this interested in poking at it, it looks like creating a configuration option that lists as possible sources all the stat modules that provide pricing information, plus Market, and then in Auc-Util-AskPrice in the getData function adding a check for what that setting is, and using GetAlgorithmValue (see CoreAPI.lua, GetAlgorithmValue function) instead of GetMarketValue would do the trick, but like I said, I won't have time to do this properly for at least two months (I'm on Internal Medicine Inpatient Wards right now, 80+ hour weeks with only 4 days off a month, still trying to actually see my wife and kids while they're awake, etc), so I'm just noting this here for anyone who might want to poke around at it.

    Go ahead and create a JIRA ticket for this if you'd like.
  • HirsuteHirsute January 2012
    Developer
    If you're interested in a quick hack, you could try the following, but I haven't tested this, so make a copy of the file first for easy undoing of unsuccessful changes.

    1. Make sure you're not logged into the game.
    2. Go to Addons\Auc-Advanced\Modules\Auc-Util-AskPrice\AskPrice.lua and open it in your favorite text editor
    3. Locate the line "function private.getData(itemLink)"
    4. Change the line after that one from
      local marketValue, seenCount = AucAdvanced.API.GetMarketValue(itemLink, AucAdvanced.GetFaction())


      to

      local marketValue, seenCount = AucAdvanced.API.GetAlgorithmValue("The Undermine Journal", itemLink, AucAdvanced.GetFaction())
    5. Save, log-in and test AskPrice


    If that works (you start returning values) then awesome, if not, copy the backup file you made back over the top of the one above, and I'll try to take a look at this in a couple of months.
  • KanegasiKanegasi January 2012
    Donator
    I really appreciate the help especially with your hours. I know how that is, but in a different field of work. I didn't get a chance last night to look at it, but I'll report if that works.
  • KanegasiKanegasi January 2012
    Donator
    Also, something I found out when setting up automatic downloads for Undermine Journal, editing an addon works while the game is running. If it's a file that was already there when the game loaded, simply using /reload refreshes the addons from the files. This is how the addon "Addon Control Panel" works. If the addon was installed when the game loaded, it can be disabled, enabled, or edited and a /reload shows the changes. It's when you install something new that requires a client restart.

    For example, when I see a downloaded update to Undermine Journal, I just /reload and I see the new prices in the tooltips.
  • AnrDaemonAnrDaemon January 2012
    It only works when addon structure do not change with update.
    Which is not necessarily the case.
  • NechcknNechckn January 2012
    Administrator — “Administrator”
    Kanegasi,

    The only problem with specifying one Statistic Module over another in AskPrice, is that many folks only run some of them. If you only request input from one, then you could end up not seeing any returns, even if there are many folks running Auctioneer in the channel. All of the Statistic Modules we produce input to MarketPrice, so specifying it ends up with the greatest number of inputs possible. Those inputs are 'swarmed' and distilled to one value when you make a pricing request.

    What you may want to do is ask that Nerien follow the example of the other modules and provide an input to MarketPrice, if they are not already. The following is more of a case for it, too.

    One thing to remember with using only TUJ data, at last look, anyway, is that it does not change too often, so you really want to keep that in mind. You could well end up under/overpricing, which is why we recommend keeping one, or more, of the other Statistic Modules active. That is especially true if only using the 'general' version of TUJ AddOn, since that is only an average of prices across all servers and pricing deviates, often by a lot, from server to server. If Nerien were to provide that value to MarketPrice, it would make it a bit easier for folks to keep up with the price changes between TUJ pricing updates, while still using them as part of the recommended price. The http://wiki.norganna.org/Market_Price page provides details, should the data requirements not be clear after they look at the other Statistic Modules.

    As to reload/relogging - changes in TOC files, such as adding/modifying declarations, et al, are not reflected unless you actually reload the game, the same goes for changes to XML files, and, as you note, when adding a new AddOn. Simple modifications to existing Lua files will be shown after the /console reloadui command.

    Happy Sales,

    Nikk B-)

    *Nechckn Edit: fixed grammatical 'splosion!
  • KanegasiKanegasi January 2012
    Donator
    Yea, I understand the possibility of inaccurate prices, but I use the server specific update which I have a windows task set up to update that several times a day. Then, I do an item scan in the Appraiser window to have undercut adjust the price in conjunction with beancounter. My goal is basically to do away with regular full scans using UMJ's data unless I want to mess with bottom feeding in the search tab.

    I think what Hirsute may be thinking of for a future option is have a checkbox list in the AskPrice options, or a separate "market price" option page, for selecting which data sources are figured into the market price, which can simply change AskPrice's output or ultimately personalize the market price value overall in the addon.

    As for /console reloadui, /reload or even /rl works as well. Just something to think about to streamline typing.
  • NechcknNechckn January 2012
    Administrator — “Administrator”
    Kanegasi,

    You can already customize which values affect Market Price, by enabling or disabling the different Statistic Modules. That was my point about passing along the request/suggestion to Nerien - if the module is not providing a PDF value, then it is not included in the Market Price calculation/recommendation. If it were, then even as-is, you would arrive at providing that information via AskPrice and all of the other places where Market Price is used by default.

    For Askprice, itself, a selection box would be fine, just as long as there are the appropriate notices so that folks realize what they are/are not getting by changing the source. Be sure to create a ticket under the AskPrice subproject in http://Jira.Norganna.Org , using your forums login information to access.

    Happy Sales,

    Nikk B-)
  • HirsuteHirsute January 2012
    Developer
    I had actually completely forgotten about the swarming when I made that suggestion, and that is the proverbial wrench in the gears for a relatively easy change. If someone has anything *other* than Market selected, their data should probably not be included in a swarm. So, if you get an AskPrice request and you have anything other than Market selected, your addon should check for a swarm, if there's a swarm, and the swarm returns pricing information, that should be what the addon returns, without including your non-market information. If there's no swarm, it should return your non-market information as that's all that is available. If someone else receives a request, all non-market nodes should opt-out of swarming in.

    As such, this gets significantly more complex, and is further beyond my own ability to do in any reasonable time frame, but perhaps another dev will be interested in picking it up.
  • KanegasiKanegasi January 2012
    Donator
    I have altered the .lua file as you directed, Hirsute, and it works. AskPrice is now reporting what the Undermine Journal addon is showing as the mean price for any sellable item. As a side note about the market swarm, every single instance in the options that has a dropdown menu of stat utilities are all set to UMJ. The default pricing model in the Appraiser tab is also UMJ.
  • NerienNerien March 2012
    I'm chiming in late here, but I was wondering if the Auc-Stat-TheUndermineJournal addon I wrote wasn't working as intended? It does provide a GetItemPDF() function, which seems to be all that's needed to be a valid input for MarketPrice.
  • KanegasiKanegasi March 2012
    Donator
    Nerien, it works just fine, but there is an issue between it and AskPrice. As I mentioned earlier in the thread, AskPrice wasn't reporting the data from your module. I don't know if it's an issue with the market swarm and AskPrice, your module has issues donating its info to the swarm, or AskPrice was blindly reporting only scanned market data, which I had none when I first started using TheUndermineJournal.

    Either way, the alterations Hirsute suggested to force AskPrice to pull info directly from your module are currently working.
  • NechcknNechckn March 2012
    Administrator — “Administrator”
    Nerien,

    Without being able to look at it or others, currently - if the only Stat active is ASTUJ, then that is the value that should be reported as the MarketPrice and passed along by AskPrice, without the need to change anything. If it does not work, then, perhaps, something is amiss with it.

    Please check if you only have ASTUJ active, that there is a MarketPrice entry in the tooltip - if not, then there is likely something amiss. Let us know of your findings, and we can then go from there.

    Kanegasi,

    Did you add a Jira ticket to have the ability to select a module within AskPrice? If not, please do.

    Happy Sales,

    Nikk B-)
  • NerienNerien March 2012
    I've looked through the implementation of GetMarketValue() in CoreAPI.lua, and it checks for the following things in statistics modules:

    1. It has libtype == "Stat".
    2. It implements GetItemPDF(), expected to return .
    3. It optionally implements GetPriceArray() to get array.seen value.

    All three things are done in ASTUJ, which was modeled after the Auc-Stat-Example2. I will test tonight whether with only ASTUJ active whether or not there is a MarketPrice entry in the tooltip.
  • brykrysbrykrys March 2012
    Core Developer
    The ASTUJ GetItemPDF looks fine to me - it should work as long as TUJ itself has a mean and stddev for the item.
    ASTUJ should display mean and stddev in the tooltip, so you can easily check if either is missing.
Privacy · Advertising
Norganna's AddOns Network · World Of Minecraft · WoM Realms · Auctioneer Addon · Gatherer Addon · Addon Forums · RDRCT