• Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • [PLUGIN] Pokebuddy - Gotto kill em all!

    Discussion in 'Uncataloged' started by maybe, Oct 26, 2012.

    1. TreeK

      TreeK New Member

      Joined:
      Jul 10, 2012
      Messages:
      170
      Likes Received:
      1
      Trophy Points:
      0
      Hey maybe - Added yet another modification to your plugin :)

      This version will switch to Combat Bot once a pet battle has begun, and switch back to what you were using before combat started. This prevents the 'mount spam' that previously happened during combat. There is one drawback to this method however. Plugins that use a timer to change profiles - Battle Pet Collector for example - no longer work correctly. Each time the bot is switched, HB stops/starts which causes the plugins to reset their timers. I don't think it would be difficult to modify the plugins to correct this, though I have not looked into it yet.

      The attached file also contains my previous modification adding the ability to select non-default battle pet abilities via the pet xml file.

      And just to annoy you, I cleaned up a lot of white space in the file...

      View attachment Pokehbuddy.cs
       
      Last edited: Mar 18, 2013
    2. UnholyMedic

      UnholyMedic New Member

      Joined:
      Mar 17, 2013
      Messages:
      4
      Likes Received:
      0
      Trophy Points:
      0
      So I see to have managed a strategy that's working decent, i just use the pokehbuddy defaults for settings. I set to pet swapper to ringer 2 then made the pet range really small (21-24) so the bot takes 2 lvl 24 pets and 1 lvl 21ish. I was never particularly concerned with lvling any specific pet; just wanted get my lvl 20+ blues up to 25 without having to hand grind hundreds of battles. The most frustrating problem i was having before was that the bot would always switch out the 25 instead of letting it fight till the death and the result would usually be my lowbie dying; at least this way as long as one of the pets lives, he gets pet xp. I also i use a lvl 85 toon so as not to waste the 100k xp per win. Basically with the battle swap settings I'm using you get 1-2 pets dying per battle (in pandaria); then the last one standing will get the xp.

      The bot still occasionally does the ridiculous swap suicides (like when the other pet only has 49hp and the bot decides it should do a bunch of swaps so that you end up losing). I pretty much just play these by hand; I'm just studying in frond of my laptop so i can usually stop the thing in time to win. Also if there are rares involved i just stop the bot immediately and play myself.

      Clearly the problem was that the bot spoiled me all the way through northerend, outland and cata; so now I'm a bit spoiled.

      For the pets I actually like, I'll probably just be hand lvling, but at least this way I have a variety of 25s to use in the process :).
       
    3. sharkie

      sharkie New Member

      Joined:
      Apr 7, 2010
      Messages:
      15
      Likes Received:
      0
      Trophy Points:
      0
      Guys, I need a little help. I have Battle Pet Swapper & Battle Pet Collector + this Plug-In. Is there a way to have it setup where the pets swap during combat so they all get XP? I'm just trying to level up all the pets I have, which isn't many and if I'm lucky grab a few Rares along the way. Also, I'm a Druid, and I have it set to Swift Flight Form for Mount, but it always mounts a Blue Wind Rider instead... what am I doing wrong?

      What are the best settings for the 3 Plug-Ins I mentioned? I'm using them with Guadah's Profiles.
       
    4. toliman

      toliman Member

      Joined:
      Jun 20, 2012
      Messages:
      625
      Likes Received:
      10
      Trophy Points:
      18
      once you get around 430+ pets, its not trivial to put profiles onto each one, especially if you start to buy them from the AH too. sigh.

      it is the new fishing. but, it works out okay.

      as for sharkie,

      1. the blue wind rider is the non-random mount that HB chooses. if you can, find the mount ID of a flying/ground mount you like, or, choose random. or, 3rd option, look it up on wowhead Flying Mounts - Spells - World of Warcraft check the URL for the spell ID to summon the mount. some flying mounts won't summon pre-60, so you may need a backup ground mount Spell ID too. stop the bot, put in the spell ID or number for the mount, press start, check the log and the game. it should summon appropriately. e.g 48025 is headless horseman mount, 98727 is winged guardian, rusted protodrake is 63963, etc. unrelated to battle pets really, but, you get the idea.

      2. if you use the default settings, the pets will swap when they get injured,

      the plugin has no current ability to swap after 2 or 3 turns taken in combat. so, if you use the ringer setting, in BPS. the pets should swap when near dead and get about 500 to 900xp each.. pokeh will also trigger the healing/rez when it comes off CD, so there's no real problem. you can also intervene and swap manually, but it can be problematic, pokeh works for straight 1 to 1 combat, not tactics, swaps or crazy multi-pet buffs, etc.

      Pokeh will choose a pet to battle, and will move the lowest level pet to be first to battle. (default settings), so if you have 3 at the same level, it will choose the one that's strongest or least weak first. each pet, then has to decide if it wants to be swapped out, or what ability to use, based on logic files for each pet, individually. PB looks at the current stats of the enemy pet and chooses a better one when the swapout is called, or when the enemy pet dies.

      BPS and BPC do very different things, read a few pages back for how to use BPS /&\ BPC <&> Pokehbuddy, it should become clearer once you start to change settings.
       
      Last edited: Mar 19, 2013
    5. Timmyapa

      Timmyapa New Member

      Joined:
      Oct 20, 2012
      Messages:
      3
      Likes Received:
      0
      Trophy Points:
      0
      [BB] No swap needed
      Mounting: Black Drake
      [BB] Doing Logic
      Mounting: Swift Purple Wind Rider
      Mounting: Tawny Wind Rider
      [BB] Doing Logic
      Mounting: Volcanic Stone Drake
      Mounting: Volcanic Stone Drake

      Why is the bot trying to mount while in pet battle??
      And it seem to have problems flying, and just run around on ground?
       
      Last edited: Mar 19, 2013
    6. UnholyMedic

      UnholyMedic New Member

      Joined:
      Mar 17, 2013
      Messages:
      4
      Likes Received:
      0
      Trophy Points:
      0
      Keep in mind the XP gets divided between the pets alive at the end of the battle; that is if one pet lives he get all the xp, if two pets live each gets half, etc.

      I find the default built (settings on the first post) already does the sort of swapping you want; it tries to keep all the pets alive; in my experience the pets only start to die when your last pet gets down to a certain health and the bot starts spending all its turns doing suicide swaps (basically it continues to swap pets while the opponent hits you).

      If you are trying to level lowish pets this almost never comes up, just use ringer in pet swapper and set the level range to one that reasonable for the zone (eg. in outland use a lvl 25 ringer and min lvl 10-12+ lvling pets); the bot will swap out the low ones before they die and the lvl 25 should not take enough dmg for the bot to want to swap them back in. The lvl 25 pets don't affect xp distribution, so the xp gained from the won battle gets split between the two lower pets.

      The only time the above will fail (at least for me) is in pandaria, since the pets in those zones can sometimes cause ur ringer to drop below the bots health cut off and trigger the suicide swaps. Here I've resorted to using a lvl 24 ringer to level my lvl 21+ pets, since at least one usually lives and gets all the xp.

      Finally if you want to level "all your pets" you'll have to change the setting in swapper to wild pets: true and set the Blue setting to false. But honestly i wouldnt bother lvling anything below rare (with the ood uncommon exception) because any of the trainers you'll encounter in higher lvl quests will have rare or even epic quality.

      hope that helps
       
    7. sharkie

      sharkie New Member

      Joined:
      Apr 7, 2010
      Messages:
      15
      Likes Received:
      0
      Trophy Points:
      0
      Excellent guys and that helps a LOT. I thought the pets only got XP if they actually were IN the battle at some point, thanks for clearing that up. I had 'Swift Flight Form' typed in, not a Spell ID, thank you BIG TIME for the resource to look up the ID #s.

      **Edit: I got everything working great, except the mounting... I put in the spell IDs into the bot for Settings for both Ground Mount and Flying, but it keeps grabbing the Brown Bear for ground and Blue Wind Rider for flying anyway. :-(
       
      Last edited: Mar 19, 2013
    8. toliman

      toliman Member

      Joined:
      Jun 20, 2012
      Messages:
      625
      Likes Received:
      10
      Trophy Points:
      18
      Oh, the ground / flying spell ID can sometimes change for one single mount, which is why testing helps. AFAIK, only a small number of flying mounts have 2 id's, 1 for ground, 1 for flying.

      Switch logging to diagnostic mode if you want to see what it tries first. Or, tick random and see what the RNG brings up. Then untick to keep that mount. .simple.
       
    9. UnholyMedic

      UnholyMedic New Member

      Joined:
      Mar 17, 2013
      Messages:
      4
      Likes Received:
      0
      Trophy Points:
      0
      They do have to be in the battle at some point, but they don't have to fight every enemy. Ringer automatically sets the lowest pets to go first; then auto switches them out at a certain health (so if the pets are really low it will just switch them out after 1 hit); because a lvl 25 pet doesn't soak XP the lowbies will share the battle xp from all the enemies.
       
    10. Uraku

      Uraku New Member

      Joined:
      Feb 18, 2012
      Messages:
      120
      Likes Received:
      0
      Trophy Points:
      0
      Hey maybe, this is a great plugin, running pretty good for me so far. My one issue is that it is not catching pets that I don't own, the only setting is "higher quality than my own" but this seems to exclude ones I dont own. How can I fix this?
       
    11. maybe

      maybe Community Developer

      Joined:
      May 15, 2010
      Messages:
      488
      Likes Received:
      18
      Trophy Points:
      0
      it *should* catch the ones you dont own as well (except greys, it wont catch those..)
       
    12. WarlockDrake

      WarlockDrake New Member

      Joined:
      Dec 10, 2011
      Messages:
      8
      Likes Received:
      0
      Trophy Points:
      1
      I am wondering if its better to have the pugin instead of just having pet profiles for the pet ablitys? After starting to level my pets for the first time since release, Its making me think that Pok?buddy wouldn't need an individual profile for each pet. Not sure how hard it be to implement though, I haven't looked at the code:p
       
    13. toliman

      toliman Member

      Joined:
      Jun 20, 2012
      Messages:
      625
      Likes Received:
      10
      Trophy Points:
      18
      it occurred to me, only once though.
      it should be obvious why, but i'll cover it.

      TLDR -- knowing what a pet has, is generally not helpful. you could prime a new pet, just as you can copy from another pet's logic, but you'd still have to work out the logic for each pet and the order to cast each ability, every time, even with a pre-sorted list of abilities and pets.

      using the "big-ass lookup table", would be a non-ideal option. it would be hands-free pet selection, but, it's a huge undertaking with little reward or result.

      Given the example, you'd create a few entries in a large relational table, abilities, pet ID's, as indexes, slot order per petID, logic(s) per ability, strong/weak ability per petID, strong/weak class per PetID, strong/weak ability vs class, some kind of metric to make the strong/weak ability/class choosable over another, a metric to choose one of the 8 slot choices/rotations vs a pet type.

      then comes the fun of trying to test what order to use for abilities for 500+ pets. maybe 300 uniques, give or take.
      and you need to find a way to get the game to somehow check your results, and make changes if a new patch changes things around.

      then, there's 750+ enemy pet types, including wild pets, trainers, unknown's, legendary pets, fabled, future pets, etc. that number may be lower in the game, so let's say 600 pets. and then you need to test the logic for player 3 slot choices, 8 kinds of arrangement per pet. ie aaa, aab, aba, baa, bba, bab, abb, bbb. then, creating 1 to 8 logic settings or ability order's for 500 pets, would be like writing ~4000 pet logic files.

      ahem.

      The easiest part is perhaps someone generating a "cheat sheet" ability list for pet types/classes.
      ie aquatic types, critter abilities, beast abilities, etc. having a line ready for that ability if a new pet has "scorched earth" or "fwubwubfub" (sic)

      it would reduce the workload of priming the initial logic entry on a new pet, or checking a pet logic matches the pet.
      you'd also want to take out some of the boss abilities from that big list, the debuffs in an all-purpose table of counters if needed, i.e. reflection/dispel magic, etc.

      e.g. for an ability like Scorched Earth : let's have a look on the DB's already present out there.

      http://www.warcraftpets.com/abilities/dragonkin/scorched-earth/
      http://www.petbattlearena.com/ab.php?ab=172
      Scorched Earth - Battle Pet Abilities - WowDB

      so, we know there's 12 pets with scorched earth, 3 can use SE in the current pokehbuddy logic settings, deathy, fire beetle, lava beetle, 8 have it in slots 5, one in slot 6.
      now, scorched earth has a cooldown, it leaves a weather buff, its strong against magic.

      if you want this "omniscient" pet DB to work, a table needs to have A. the pet ID's for each ability to link that one ability to a pet, B. the order to cast it in a rotation, C. when it should/shouldn't cast it i.e. when it's already active. D. where scorched earth actually is on that pet's ability slot.

      with a cheat sheet, all you need is the weather debuff or if the pet type is magic. so you load up the logic for deathy, and copy that over to the lava beetle and change the castspell's around.

      i should add something relevant here as well, i haven't seen anyone mention the new debuff, (926) Soothe, can last for 2 rounds. i have not tested 174/734/498/822 (polymorph-kiss), i assume they still work. i now kinda wish i'd written down what the others related to, with combat bot it works a lot quicker when it doesn't think it's stuck.

      edit :
      Should work for farming in dread wastes/jade forest/vale of eternal blossoms against striders.
      the 50% hp swapout can still trigger a suicide swap event if your ringer pet dies, but it protects low level pets against poison/whirlwind when using ringer settings. it should keep lvl 10 pets alive longer while grinding pet XP in pandaria. if you use a group healer, it might work well.
       
      Last edited: Mar 25, 2013
    14. Shinehearts

      Shinehearts New Member

      Joined:
      Dec 1, 2012
      Messages:
      20
      Likes Received:
      0
      Trophy Points:
      0
      Got IT~;)
       
      Last edited: Mar 29, 2013
    15. TricksAnthem

      TricksAnthem New Member

      Joined:
      Jan 28, 2011
      Messages:
      93
      Likes Received:
      0
      Trophy Points:
      0
      Hello, great addon btw. But i was experiencing a problem. I'm running pokebuddy with battle pet swapper on Ringer mode. I have all 3 set as favorites (Lvl 25 Strand Crawler, level 9 Terrible Turnip, level 14 Corefire Imp) and it just swaps between my imp and turnip only. I've tried working the settings a little but I'm at a loss right now. Here is a log of some pet battles i did.I currently cannot upload a log because it's telling me I am missing a security token. IDK how else i should show you my problem.
       
    16. tumbum

      tumbum Active Member

      Joined:
      Mar 17, 2011
      Messages:
      3,341
      Likes Received:
      13
      Trophy Points:
      38
      Possible to Blacklist the new "Legendary" Pets? They directly respawn at this Place and Pokebuddy doesnt move on if loss or win, always restart this Fight.
       
    17. toliman

      toliman Member

      Joined:
      Jun 20, 2012
      Messages:
      625
      Likes Received:
      10
      Trophy Points:
      18
      Not unusual. You need to get their health down to initiate a swap to the high level pet. The reason for the odd behavior with swaps is that pokebuddy chooses the next pet, based on rating points, weighted for low level pets by default.

      So you need to change the sliders or face less challenging fights ie. Lvl 18 or 20's to get their HP up to surviving 500hp initial hits. You'd still have to get their HP down to 1/4 or so, but they survive more often, ringer x2 is generally helpful for lvl 1 to 10 pets, it guarantees nothing, expect 5/6 pets to be dead in a 10 min window.

      Even if you change the swap out value to 90 for each pet (not useful), you also need to change the ranking sliders on the first tab in the settings UI, or you'll get stuck like this. You could increase health, or increase level difference.
       
    18. rogurogu

      rogurogu New Member

      Joined:
      Jul 10, 2011
      Messages:
      113
      Likes Received:
      0
      Trophy Points:
      0
      Yeah, blacklisting legendary pets would be awesome! I'm currently leveling my char doing petbattles and I would love to park my toon in the valley of the four winds using lazyrader and a small radius.
      But since there is this legendary pet I can't do so.

      edit:
      Seems like I was able to edit it myself, even though I'm yet very bad at programming :D
      I simply added && ret.Name != "Lucky Yi" to the if-statement at line 1483.
      This probably isn't a very clean way, but I don't care, it seems to work hehe
       
      Last edited: Apr 8, 2013
    19. dmbardal

      dmbardal New Member

      Joined:
      Mar 27, 2012
      Messages:
      34
      Likes Received:
      0
      Trophy Points:
      0
      Code:
      [BB] System.Xml.XmlException: '.', hexadecimal value 0x00, is an invalid character. Line 1, position 1.
         at System.Xml.XmlTextReaderImpl.Throw(Exception e)
         at System.Xml.XmlTextReaderImpl.Throw(String res, String[] args)
         at System.Xml.XmlTextReaderImpl.ThrowInvalidChar(Char[] data, Int32 length, Int32 invCharPos)
         at System.Xml.XmlTextReaderImpl.ParseRootLevelWhitespace()
         at System.Xml.XmlTextReaderImpl.ParseDocumentContent()
         at System.Xml.XmlTextReaderImpl.Read()
         at System.Xml.XmlReader.MoveToContent()
         at System.Xml.Linq.XElement.Load(XmlReader reader, LoadOptions options)
         at System.Xml.Linq.XElement.Load(String uri, LoadOptions options)
         at Styx.Helpers.Settings..ctor(String settingsPath)
         at Pokehbuddyplug.PetBattleSettings..ctor(String settingsPath) in c:\Users\DagMagnus\Downloads\Compressed\Honorbuddy 2.5.6929.555\Plugins\Pokehbuddy\Pokehbuddy.cs:line 1684
         at Pokehbuddyplug.Pokehbuddy.LoadPetSettings(String petID, String speciesID) in c:\Users\DagMagnus\Downloads\Compressed\Honorbuddy 2.5.6929.555\Plugins\Pokehbuddy\Pokehbuddy.cs:line 439
      Moving to Type: QuestPickUp
      [BB] Battle Preparation
      [BB] Pet Ratings - Slot 1 : 1264 Slot 2 : 72 Slot 3 : 72
      [BB] No swap needed
      ONLY when trying to use Pokebuddy in Pandaria. Using questbot and Kick's profiles.
      No special settings set.

      Scenario: Standing in Kun-Lai Summit. Trying to quest. Got "forfeit if no intresting pets in battle" enabled.
      Starts fighting a pet. Gets error. Forfeits. Tries to fight the same pet. Over and over again.
       
    20. rocambole

      rocambole New Member

      Joined:
      Aug 18, 2012
      Messages:
      32
      Likes Received:
      0
      Trophy Points:
      0
      hi there. need some assistance to write couple pet profiles for a healing team.

      the idea is have pet one:
      spell 2 (heal)
      spell 3 (aoe damage)
      spell 1 (damage)
      then swat to pet two:
      spell 2 (heal)
      spell 3 (aoe heal, its gonna heal pet one)
      then swap to pet one and keep it going this way.
      I barelly use pet 3 with this combo, but I have his profile done already which is simpler since its a pure dps pet.

      Any help on this matter would be greatly appreciated. Thanks.
       

    Share This Page