• Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • Plugin concept GatherAssist - Gather multiple items with one command

    Discussion in 'Plugins' started by ZaneMcFate, Nov 18, 2014.

    1. ZaneMcFate

      ZaneMcFate Member

      Joined:
      Nov 17, 2014
      Messages:
      137
      Likes Received:
      2
      Trophy Points:
      18
      Alpha 0.3.5 posted; two known bugs:
      - gear set update triggering oddly and saving incomplete gear set records
      - Unknown items are never gathered

      Assuming no major bugs are found, there are still a few features to add, then the item survey, and we'll be in beta.
       
    2. ZaneMcFate

      ZaneMcFate Member

      Joined:
      Nov 17, 2014
      Messages:
      137
      Likes Received:
      2
      Trophy Points:
      18
      Alpha 0.3.6 posted:
      - No bug fixes
      - added HQ flag for gathering only High Quality items
      - added AutoSkip logic for testing and possibly production: skips over items which are taking too long to complete
      - added shard-based spell selection logic (uses shard-doubling spells where appropriate)
       
    3. Yasuko

      Yasuko Member

      Joined:
      Oct 28, 2010
      Messages:
      314
      Likes Received:
      6
      Trophy Points:
      18
      Zane, I had an idea.. instead of harvesting via name, what if you selected the slot number instead? .. I'm not sure if that still works for Unknowns but worth a try. Then just add a column to your list for slot number and reference it via the name column?

      Edit: also I'm thinking of going ahead and scraping items from xivdb and putting them into an sqlite db, would that be of interest to you for this project?
       
    4. ZaneMcFate

      ZaneMcFate Member

      Joined:
      Nov 17, 2014
      Messages:
      137
      Likes Received:
      2
      Trophy Points:
      18
      Yes, that does work, and that's how I'm going to have to get around it. Unfortunately, that sort of information is not readily available on a database anywhere, so I'll need to survey it myself.

      That would be immensely helpful, not only for this items issue, but for things like crafting materials, required skill levels, etc.; to be able to pull those from a database when populating what will ultimately be massive data tables, will save a lot of time and avoid a lot of manual error.
       
    5. Yasuko

      Yasuko Member

      Joined:
      Oct 28, 2010
      Messages:
      314
      Likes Received:
      6
      Trophy Points:
      18
      I've used html agility pack to scrape voip call data from our call center website at work, but the div containers are named properly for it lol.. xivdb doesnt have a great naming convention that i've seen.. but I figured it would be worth a try tonight while I'm bored at work lol.. I'll see what I can do, and get back to you at some point tomorrow.
       
    6. Dgame

      Dgame Member

      Joined:
      Aug 19, 2014
      Messages:
      320
      Likes Received:
      0
      Trophy Points:
      16
      Am I doing something wrong? I see you have update 3.6 but in plugins it still shows me with Ver. 3.4.
       
    7. ZaneMcFate

      ZaneMcFate Member

      Joined:
      Nov 17, 2014
      Messages:
      137
      Likes Received:
      2
      Trophy Points:
      18
      Alpha 0.3.7 posted:
      - Added level-based gathering spell logic
      - Fixed that nasty gear set switching bug
      - Added the ability to define slot numbers in item records so that Unknown items can still be gathered

      And with that, NO BUGS! ...until more are found, but I'm optimistic! Time to begin surveying items to populate the engine, and once I have a couple regions, I will push this to Beta.
       
    8. ZaneMcFate

      ZaneMcFate Member

      Joined:
      Nov 17, 2014
      Messages:
      137
      Likes Received:
      2
      Trophy Points:
      18
      Must be; throw the GatherAssist.cs into a text editor and search for "Version"; it should say 0.3.7 in the latest release... or are you using SVN? It's possible I messed something up on that feed, I'll check that too.

      Update: I confirmed the SVN download accesses the master branch.
       
      Dgame likes this.
    9. Dgame

      Dgame Member

      Joined:
      Aug 19, 2014
      Messages:
      320
      Likes Received:
      0
      Trophy Points:
      16
      I re-downloaded it and now I have the correct version. The odd thing is, is that it's still in its own "Plugins" folder. I also don't get the green little check mark on the folder to show it's working with SVN.
       
    10. Dgame

      Dgame Member

      Joined:
      Aug 19, 2014
      Messages:
      320
      Likes Received:
      0
      Trophy Points:
      16
      I just pulled GatherAssist out of the plugin folder, but still doesn't show the green check mark. I have other SVN's working, so I'm not sure what I'm doing wrong
       
    11. ZaneMcFate

      ZaneMcFate Member

      Joined:
      Nov 17, 2014
      Messages:
      137
      Likes Received:
      2
      Trophy Points:
      18
      I wish I could see what it's doing; the SVN link posted on this thread points directly to the plugin itself, so GA SVN Folder => RebornBuddy\Plugins\GatherAssist
       
    12. Yasuko

      Yasuko Member

      Joined:
      Oct 28, 2010
      Messages:
      314
      Likes Received:
      6
      Trophy Points:
      18
      I noticed you mentioned that there wasn't really a DB source that had items per slot, per location. I went riding around La Noscea tonight using the below code, and gathered these location/slots/itemsid/items.. I'll update this post with each area once i get them done. The Code I used, if anyone else is curious about mapping out some places is:

      Code:
        Log("ZoneID: {0} \nLocation: {1} \nNode: {2}",WorldManager.ZoneId,Core.Me.Location,Core.Me.CurrentTarget);
        foreach (GatheringItem item in ff14bot.Managers.GatheringWindow.GatheringWindowItems)
            {
                Log("Slot {0} ItemID: {1} Name: {2}",item.SlotIndex,item.ItemId, item.ItemData.EnglishName);
            }
          foreach (var teleID in WorldManager.AetheryteIdsForZone(WorldManager.ZoneId))
             {
                 Log("\nAetheryteId: {0}",teleID.Item1);
               }
      I just used the closest AetheryteID to the location the nodes were at. Also, on some of these I replaced the Location to a more central location evenly between the cluster of nodes.. I did this on my second account since my primary account was busy, and unfortunately botany on second account is only in the 20s.. i'll get botany locations once my primary account is finished.

      La Noscea (Mining):
      You need to register and have one post to see spoilers!
       
      Last edited: Nov 26, 2014
    13. ZaneMcFate

      ZaneMcFate Member

      Joined:
      Nov 17, 2014
      Messages:
      137
      Likes Received:
      2
      Trophy Points:
      18
      Awesome, this will be quite useful! I just completed surveying AetheryteIDs 2 through 10, and I realize I need to upgrade the engine to handle multiple item sources and choose Aetherytes that the user already has available, so I will push that through and start testing yours and mine tomorrow if I can manage it. Excellent stuff!
       
      Last edited: Nov 26, 2014
    14. Yasuko

      Yasuko Member

      Joined:
      Oct 28, 2010
      Messages:
      314
      Likes Received:
      6
      Trophy Points:
      18
      Well things like shards and crystals are the same level no matter which node you are at.. I would just set their max mining/botany level to whichever it is when you are cycling through the gear sets.. if they are 50, wouldnt really matter which lvl node they went to for shards.. but if they are below 50, send them to the lowest node available that has that shard to prevent aggro and what not.
       
    15. ZaneMcFate

      ZaneMcFate Member

      Joined:
      Nov 17, 2014
      Messages:
      137
      Likes Received:
      2
      Trophy Points:
      18
      Update: The profile validation has revealed several minor issues that I have been fixing as I go; in the end, it looks what I've wound up building is a mass profile validator :) I'm letting it run through piles of auto-generated items, and I'll update the plugin when I've given the green flag to most of them and flagged the ones that need fixing. It looks like the QA portion of this project will be more complex than I thought.
       
    16. ZaneMcFate

      ZaneMcFate Member

      Joined:
      Nov 17, 2014
      Messages:
      137
      Likes Received:
      2
      Trophy Points:
      18
      Posted Alpha 0.3.9; a few minor changes, and most of the first survey is validated. Still need to add Yasuko's profiles and continue the survey, but this will likely be it for the holiday.
       
    17. Sodimm

      Sodimm Member

      Joined:
      Nov 8, 2014
      Messages:
      383
      Likes Received:
      7
      Trophy Points:
      18
      This is working great, I've just completed a request for 10 HQ of all the raw gemstone. No trouble. Although it doesn't seem to move on until it's @ +1 or 2 above intended target. Otherwise, perfect. The only adjustment i'd ask for is simply quality of life, Raw Peridot, and Raw Amethyst are from the same node, yet the profile does amethyst, then goes off to do another item, then returns for peridot. Making an un-needed teleport. Again, it's not neccesary, but in the aim of perfection. You're on your way. Thanks.

      On a note of website data in regards to crafting, ffxiv.com own backend has all the required info that Libra Eorzea uses. Also consider Crafting as a Service | Final Fantasy XIV ARR Crafting Information which is what i generally use to generate crafting raw ingredient lists. I'd try and scrape them myself, but I've no idea how. Thanks for a promising plugin that i'll keep testing.
       
      Last edited: Nov 27, 2014
    18. ZaneMcFate

      ZaneMcFate Member

      Joined:
      Nov 17, 2014
      Messages:
      137
      Likes Received:
      2
      Trophy Points:
      18
      Yes, that's an important piece, to do nearby items together, or at the very least, do the same map together. I'll look into this; thanks for the feedback!
       
    19. Dgame

      Dgame Member

      Joined:
      Aug 19, 2014
      Messages:
      320
      Likes Received:
      0
      Trophy Points:
      16
      Not sure if it was intentional but some items have been removed. Like Button Mushrooms and Ruby Tomato.
       
    20. ZaneMcFate

      ZaneMcFate Member

      Joined:
      Nov 17, 2014
      Messages:
      137
      Likes Received:
      2
      Trophy Points:
      18
      I did remove some of the original items temporarily, as I brought in about 100 in a new style with additional fields. I need to add a few new fields to those entries and turn them back on.
       

    Share This Page