Results 1 to 6 of 6
  1. #1
    Buddy
    Join Date
    26.12.2010
    Posts
    8

    Idee [PB] [Alliance] Alchemy (and semi-generic) material gatherer proof of concept

    One of the biggest issues with ProfessionBuddy right now is just the lack of profiles for professions. Unattended mining/herbing is great, but those two weren't really that much of a pain to level up using Gatherbuddy/Honorbuddy to begin with.

    So my idea was to make a ProfessionBuddy profile that, with a little modification, could work for different professions. At the very least it could serve as a good skeleton for professions that require gathered materials (inscription, alchemy, blacksmithing, etc).

    The general premise is that you put a list of item IDs and quantities into the xml file, associate them with the correct gathering profile, and the bot will gather until it has all of the necessary items.

    ex:

    Code:
    			/* First profile (index 0) */
    			temp.Add( new int[]{ 2447, 59 } );	/* Peacebloom */
    			temp.Add( new int[]{ 765, 59 } );	/* Silverleaf */
    			((ArrayList)var2).Add(temp.ToArray( typeof(int[]) ));
    			temp.Clear();
    This profile has a few of the items necessary to start alchemy and will gather until it has enough and then move to a new area. I have tested this so far as the first eight items on the WoW Profession alchemy guide and it correctly goes to each new area. The complete item list is in the xml file, and just commented out. Enabling the other items is just a matter of copy/pasting and associating them with the correct gathering profile.

    This profile is meant to be opened in a text editor. There are comments and formatting that will be lost if you open it in ProfessionBuddy and save it to the same file. Without the formatting the logic will be very hard to follow.

    This is not a complete profile. This profile is geared more towards profile makers and people who have a basic understanding of programming.

    Improvements that could be made:

    • Selling / mailing extra items
    • Loading a profession buddy profile when the gathering phase is complete (There are none currently, which is why it doesn't do this)
    • Gather only the items in the profile (use the GB2 blacklist options)
    • Needs Horde profiles / item associations
    Attached Files Attached Files
    Last edited by suremail; 14.04.2011 at 02:44. Reason: Tweaked title a bit

  2. #2
    Lifetimer
    Join Date
    24.02.2010
    Posts
    24

    Default

    Nice work! Where is blacklist node? I didnt find it in ur code and when I run it, it gathered all herbs and when have enough of selected herbs, changed profile. Thx m8
    Last edited by NizaJakub2; 19.04.2011 at 19:25.

  3. #3
    Buddy
    Join Date
    26.12.2010
    Posts
    8

    Default

    I don't quite follow what you're asking.

    If you're asking, "How do I stop it from gathering certain herbs?" then the answer is you can't with the code the way it is. You could configure Gatherbuddy2 to only gather the types of herbs you need (while ignoring others) if it is a big issue for you.

    If you're asking, "How does it know to change gathering profiles after it collects the herbs?" then the answer is in the part of the profession profile where the herbs are listed.

    Code:
    temp.Add( new int[]{ 765, 59 } );	/* Silverleaf */
    765 is the item id of the gathered Silverleaf plant, and 59 is the number of Silverleaf to gather.

    Code:
    ((ArrayList)var2).Add(temp.ToArray( typeof(int[]) ));
    That creates a new set of herbs to look for, so any of the temp.Add lines above it are included. In the case of the first set it is Peacebloom and Silverleaf. The bot will stay on the first gathering profile until it has at least 59 Peacebloom and at least 59 Silverleaf. It will stay on the second profile until it has at least 93 Briarthorn, 33 Bruiseweed, etc.

    The gathering profiles are listed near the bottom and look like this:

    Code:
    				<If Condition="0 == (int)var1" IgnoreCanRun="True" ChildrenCount="2">
    					<CustomAction Code="Log(&quot;Loading 1-75 profile&quot;);" />
    					<LoadProfileAction Path="HBProfiles\(GB2 1-300)Herb&amp;Mining\Alliance\(GB2 1-75)(Elwynn.Alliance)Herb&amp;Mining.xml" ProfileType="Honorbuddy" />
    				</If>
    All old-world gathering profiles are set up for Alliance, but not all herbs are currently configured. To get the profession profile to do all old-world gathering would require someone taking the time to just see what herbs can be found in each gathering profile. It's not hard. It's just tedious and I haven't been playing WoW that much lately.

  4. #4
    Lifetimer
    Join Date
    24.02.2010
    Posts
    24

    Default

    ok thx, the first was correct

  5. #5
    Lifetimer
    Join Date
    15.01.2010
    Posts
    407

    Default

    This just dont work..

    Code:
    Err: If (!GatherbuddySettings.Instance.GatherHerbs)Compile Error : Navnet GatherbuddySettings finnes ikke i gjeldende kontekst
    
    
    Objektreferanse er ikke satt til en objektforekomst.

  6. #6
    Lifetimer
    Join Date
    07.02.2010
    Posts
    2,224

    Default

    I already made a profile like this, but just for mining. It's fully functional. You can see more info in the link in my sig.
    My projects (sorry for url shortener, sig lengths are limited. All point to HB):

    Completed:
    Salesman - an AH bot
    Ultimate Herbalism Farmer
    Ultimate Mining Farmer
    AntiCap - buy honor gear and more
    AuctionWrapper - API for AH
    Embersilk Cloth Farming - Uldum
    Mobile Farmer FREE BETA (use Mobile Banking, vendor mount, portable mailbox etc) - link not allowed.
    Professionbuddy Install Video Guide
    Professionbuddy Basic GUI Video Guide

    In progress:
    Updates to my website
    Salesman 3 beta

 

 

Tags for this Thread

Bookmarks

Posting Permissions

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