I am wondering if its better to have the plugin 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
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 :
SWAPOUT Health(THISPET) ISLESSTHAN 50 $ EnemyPetLevel ISGREATERTHAN MyPetLevel + 5
@SWAPOUT Health(THISPET) ISLESSTHAN 30
@PASSTURN HASBUFF(926) EQUALS true
@PASSTURN HASBUFF(822) EQUALS true
@PASSTURN HASBUFF(498) EQUALS true
@PASSTURN HASBUFF(734) EQUALS true
@PASSTURN HASBUFF(174) EQUALS true
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.