Results 1 to 5 of 5

Thread: Video Guide to Using kAuction Wishlist

  1. #1

    Default Video Guide to Using kAuction Wishlist

    As mentioned, I made a video guide to walk people through how to use the new kAuction Wishlist feature. Since Youtube has time limits, it is split into two parts. Any questions let me know in-game or reply here please.

    Part 1:


    Part 2:

  2. #2
    VI Member
    Join Date
    Apr 2006
    Location
    Orange County, Southern California
    Posts
    149

    Default

    I don't know when you put this whole thing together, but I can almost guarantee that while you were doing it I was doing something far less valuable. Probably pron.


    So....with this wishlist set up, will it be eating up memory like Recount does? My guess is yes because of just how complicated this whole thing is, but wtf do I know.
    Aquemini: "...Now I know!"

    G.I. Joe: "And knowing is half the battle!"

  3. #3

    Default

    Quote Originally Posted by Huggeybear View Post
    I don't know when you put this whole thing together, but I can almost guarantee that while you were doing it I was doing something far less valuable. Probably pron.
    Who's to say I didn't have my Wow running windowed with one hand off the mic? Amirite?!


    Quote Originally Posted by Huggeybear View Post
    So....with this wishlist set up, will it be eating up memory like Recount does? My guess is yes because of just how complicated this whole thing is, but wtf do I know.
    Actually no, it shouldn't at all. To explain a bit, the way memory usage works for addons in WoW is any data that is stored by an addon usually gets added to a table that looks something like this:

    myTable = {id = 1, name = 'Huggeybear', dps = 'MONSTROUS'}

    The memory usage of an addon is basically equal to whatever amount of memory the tables it is using take up, as if you'd copied them into a text file and saved it on your hard drive.

    Most addons take advantage of garbage collection, which just means reusing previously created tables for a new task so new tables aren't required, which obviously saved memory.

    Recount, however, takes a ton of memory because obviously as time goes on, it adds more and more information to it's tables and unless you reset the data, it grows and grows. At the end of some long raids, Recount is taking 80-90 megs (which even then is really not much with 2 or 4 gigs of ram these days, but still).

    As for your question about kAuction, it does use garbage collection whenever possible. The biggest memory hog will be when you are indexing your search item list, since kAuction takes however many thousands of items and adds them to a table. However, even setting the /ka ui > Wishlist > Minimum Item Level to 0 and Minimum Rarity to Poor, which will return every item in your local cache to the table, which is some 20,000ish items for me, my memory usage for kAuction temporarily shoots up to 8.9 megs. If I change the wishlist settings back to default of 200 item level and Epic quality, indexing brings the memory increase up to about 4.5 megs.

    That said, the important thing to keep in mind is these numbers are temporary. Again, because kAuction uses garbage collection, while you are searching a lot and adding wishlist items, you may see 4-10 megs of memory usage, but once you stop searching for a while and collection kicks in, memory drops back down to normal usage, which for me standing in Dalaran kAuction uses about 1.2 megs.

    Compare that to Pitbull4 at 2.18 megs, Aloft at 3.87 megs, and Grid 1.33 megs, all stationary values just standing in Dalaran.

    When you are not searching, such as in raids, and using kAuction normally, it hovers around 2-3 megs. Again, it's all really just the amount of information being used at any given time, so if a list of 20,000 items takes 7.5 megs of memory, accessing your wishlists of maybe 50 - 100 items will obviously be very small indeed.

    For the TLDR; answer: No, kAuction will not use any noticeable amount of memory at any time.

  4. #4

    Default

    Excellent job Kull. I am really looking forward to playing around with it. Can you recommend any good sites for beginners interested in creating an addon? Thanks.

  5. #5

    Default

    Quote Originally Posted by Kilwenn View Post
    Excellent job Kull. I am really looking forward to playing around with it. Can you recommend any good sites for beginners interested in creating an addon? Thanks.
    Thanks Kil!

    The best place to start is probably the Wowwiki HOWTO section: http://www.wowwiki.com/HOWTOs . http://www.wowwiki.com/Getting_start...writing_addons will show you the basic setup to get the proper files in place and test your addon in-game.

    You'll also want an Lua editor. Wow Addon Studio is a free editor similar to Visual Studio (I wouldn't use the Frame/XML editor as it's very outdated, but it's a nice program to keep a single project maintained and easily access all your files). You can also get something like Textpad and google for an 'lua syntax' file for it.

    Also check out the wowwiki API pages (http://www.wowwiki.com/World_of_Warcraft_API), which shows all the existing functions in-game Blizzard has implemented. Basically, if you wonder if you can get XYZ info about the game, this is the place to check. Also look on the top-right of that page for the Widget API (like the above, but shows functions that affect UI elements), and the LUA Functions (wow-converted functions that Lua uses for utility, like string, math, and table editing.

    Also check out some of the libraries offered, as there are many that will do most of the menial tasks for you. Ace3 is the best one I've found and has been very reliable (http://www.wowace.com/addons/ace3/pages/).

    The biggest hurdle when I first started messing with addons was by far the in-game interface, which requires tons of different XML elements set up very precisely (you can see some XML Gui files by looking in the kAuction folder or most any addon you have). However, nowadays there are some very strong libraries that can handle most GUI creation and management. In fact, the Wishlist part of kAuction is built without any XML files at all, using AceGUI-3.0 (http://www.wowace.com/addons/ace3/pa...-3-0-tutorial/). If you try out AceGUI, one tip it took me quite a while to figure out, is the objects you create are tables, not actual frames. To access the frame itself from any object you created, it is the .frame subtable, e.g.:

    Code:
    local myAceFrame = AceGUI:Create("Frame");
    myAceFrame("Example Frame");
    myAceFrame.frame:SetBackdrop({bgFile = "Interface/Tooltips/UI-Tooltip-Background"});
    SetBackdrop is a Widget API call (http://www.wowwiki.com/Widget_API). Many of the things you'd want to do with GUI elements, AceGUI has functions for, but as mentioned, use the .frame subtable to access the frame itself, for use with any Widget API functions.

    That should do it, hope that gets you started. ><

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •