tdBattlePetScript

Discuss your favorite pet addons and macros.
Post Reply
User avatar
Seira_wcp_eu
Posts: 17
Joined: November 30th, 2012
Pet Score: 5716
Realm: Emerald Dream-EU
Contact:

tdBattlePetScript

Post by Seira_wcp_eu » December 17th, 2016, 11:33 pm

I just found this addon named "tdbattlepetscript" (and tdbattlepetscript-rematch) on curse,
and it looks mighty useful paired with Rematch "in theory".
Anyone feeling brave enough make some quick review, judge its worth if it's trash or gold? :shock:
Anyone using it already? does it even work?
(Sorry can't post links yet)

User avatar
Flohsakk
Posts: 194
Joined: July 19th, 2012
Pet Score: 9572
Realm: Blackhand-EU
Contact:

Re: tdBattlePetScript

Post by Flohsakk » May 20th, 2017, 6:11 pm

I've seen it in the past and was interested, but besides google translations and the screenshots on curse it looked like no one is "brave" enough (thinking of translation, not of Blizzard's ToS) to touch it or report about, could not find example scripts or something helpful.

So today I finally installed both addons and tried to convert my strat for the garrison birdies into the script language to see what will happen...
Rematch String:
Archimedes:85676:87:421:440:595:557:421:277:595:1167:525:597:612:
Script:

if [ self(87).active ]
ability(595) [ !weather(596) ]
ability(421)
change(557) [ self(87).dead ]
endif

if [ self(557).active ]
ability(277) [ enemy.hp.full & self.hpp < 50 ]
ability(595) [ !weather(596) ]
ability(421)
change(1167) [ self(557).dead ]
endif

if [ self(1167).active ]
ability(597) [ !self.aura(823).exists ]
ability(525)
endif
What the addon does is adding a "Auto" button next to the "Pass" button. With each click on this button (when active, it's greyed out as long as you can't do anything) it will go through the steps of this script and use abilites under certain conditions and if they are ready.

In my special case I have three parts, each one for one of my three pets active.

Having my first dragonkin active a click on the button will check for Moonlight weather and cast it, if it's not active and the ability is ready. It also checks if my pet has died and switches to my 2nd dragonkin then. If the pet is not dead and weather is still Moonfire, it will cast Arcane Blast.

If my 2nd pet is active the middle part of the script will be used. Both dragonkins use Arcane Blast and Moonfire so the only difference in this section is checking if the enemies pet has full hitpoints and my dragon is below 50% hp and then use Life Exchange. Of course the last line checks if my second pet died and would switch to my 3rd pet...

The last section in my script is fo the Emerald Proto-Whelp so it checks for an active Emerald Presence aura and will cast it if it's mising. All other clicks on the Auto-button will result in Emerald Bites until Smaragd Presence fades.

****

So yes, this addon works and looks extremely powerful and could be the next step for people who already found websites like XuFu and ways to import teams but are struggling with the guides even if they are step-by-step. You can define so much conditons to make the usage of abilities more precise even with crits, deaths and pet swaps, but including all these things that maybe happen in a pet fight will be much work for the people converting strats into scripts. I haven't tested the import/export feature yet but if it's working and there are people willing to spend their time on something like this I expect these scripts to be found next to future pet team import strings.
Last edited by Flohsakk on May 21st, 2017, 10:16 am, edited 1 time in total.

User avatar
Quintessence
Site Admin
Posts: 2581
Joined: June 4th, 2008
Pet Score: 10056
Realm: Proudmoore-US
Contact:

Re: tdBattlePetScript

Post by Quintessence » May 20th, 2017, 7:04 pm

I'm not quite sure I understand what this addon does. Could someone please clarify?

Does this addon auto-perform actions for you during a Pet Battle encounter?

Or does this addon allow you to input a custom script so you receive alerts/notices of when to use abilities as part of a premade strategy?

If it's the first, this could be violating the WoW/Blizzard Terms of Service. Blizzard has made it clear in the past that they do not want players using scripts, addons, or bots to auto-perform actions.

If it's the second one, this could indeed be a very powerful tool. If scripts are made available for popular strategies, anyone could easily import it and complete a battle (if they have the pets, that is) without having much prior knowledge about the pets, strategy or Pet Battles. All they would have to do is pay attention to any alerts; "Use X ability now!" "Swap to X pet now!" I'm not sure how I feel about it, if this is the case.

Obligatory warning (until there's some clarification on what exactly this addon does): I'd like to remind everyone to be wary of using addons that might breach Blizzard ToS. Also, per the [url=https://www.warcraftpets.com/community/guidelines/]WarcraftPets User Guidelines[/url], we not condone any cheats, hacks, or any advertisement of such.
Image
Feel free to browse through my pet collecting blog: http://wowpetaddiction.blogspot.com

User avatar
Toliman
Posts: 3
Joined: July 24th, 2012
Pet Score: 5237
BattleTag®: toliman#1768
Realm: Jubei'Thos-US
Contact:

Re: tdBattlePetScript

Post by Toliman » May 21st, 2017, 11:35 pm

Quintessence wrote:I'm not quite sure I understand what this addon does. Could someone please clarify?

Does this addon auto-perform actions for you during a Pet Battle encounter?
It works similar to the way Combat Rotation Guides and One-Button-Macros using GnomeSequencer / GSSE work since people use and made macros using /castsequence,

i.e. /castsequence reset=20/target Tiger Palm, Jab, Jab, Jab, Jab, Jab, Jab

There's 2 parts. The script editor, and the parser.

You press a button called "Auto" in the Pet Combat UI during a battle that chooses the 'optimistic' best option to press at that time. The Parser will examine the fight conditions, and the parser decides what it thinks "auto" should do. Each time you press the button, it evaluates the current fight, and maps to the button it should be pressing. So if a fight has 16 rounds, you would end up pressing auto, 16 times.

There's a bit of a hitch when it chooses a new pet to swap to, since this is running a command instead, all of the functionality is done by existing addons already (and arguably better), the difference is in the script that is putting it all together.

You can stop or interrupt the process at any time, or continue by pressing the "Auto" button, which will remap "auto" to whatever command or ability it should be casting. By default, this maps to A. But, you can change this.
Quintessence wrote:does this addon allow you to input a custom script so you receive alerts/notices of when to use abilities as part of a premade strategy?
It's not a 'rotation helper', in the sense that it's predicting/reading an optimal strategy or simcraft rotation guide, and showing you what to choose.

A script parser could be built for people to get a sense of what comes next, i.e. "training wheels" / "GPS", but, the script works with conditions, not steps. if the script looks at enemy health, there's a divide where it won't show you the next option, it will have 3 or 4 different options (out of 7) it decides when it comes to it. if something goes sideways, it only has the script to tell you what happens next.

This would be basically, a visual debugger. it would show what makes the decisions based on the script and the current pet state. For most players, it would be just as confusing as coding the script, as it would show what the script, and the game is looking at during a pet battle.

Making a "flashing button" "pet rotation helper would be obscure, it would have to simulate the fight based on the enemy trainer's scripts and logic that the developers would have implemented. Which is going a bit more "next level" ... but would make for a handheld pet battle app instead of an addon.

But, with a "flashing button" to show what you could press next ...

I suppose the difference, in a metaphorical sense is the difference between GPS and auto-steering as what Markio Kart 8 does. there's plenty of chances for random things to happen (in a pet battle...). It has very limited use out of non-repeatable events like trainers,

i.e. you could probably work out a PvP team to fight other players, or capture pets in the wild. you'd lose a lot though. There's more going on in a PvP battle that the script can't anticipate, that a player can. It's also highly dependent on the team, which is why it's tied to rematch.

in a technical sense, rematch is more automated than the scripts are, but functionally, the scripts are doing the 'end work'
Quintessence wrote:If it's the first, this could be violating the WoW/Blizzard Terms of Service. Blizzard has made it clear in the past that they do not want players using scripts, addons, or bots to auto-perform actions.
it's hard to say. the ToU is intended to be broad so they have discretion on changes. The addon has been around for nearly 6+ months, in china, so the discretion has been around for long enough that Blizzard could crack down now, or later, or at any time. The difficulty is, IMO, that the addon does not reduce the competitive nature, nor does it break existing systems. it is difficult to get it to work on non-trainer battles, it is built to automate repetitive team builds.

If the enemy team does not repeat the sequences, then the script usually does not work. Of all of the pet battles available, this is somewhat of a grey area since it's automating the parts of WoW that often repeat. Like World Quests.

I'm the last person to know where "the line" exists. Truly. I have no idea where the ToS extends because the wording excludes all addons, not just those it permits. ToU also prohibits using game information, i.e. APIs and forums discussing game strategies, etc. It is done so that it has the later discretion to act and not be held liable for the interim period where it did not choose to act.

Unfortunately, it also has the backwards aim, that it forges a "ask for forgiveness rather than permission" attitude when it comes to developing APIs or addons for WoW because they can't give permission, Blizzard have to see how it affects the game.

Blizzard often disables addons silently, so they break,or removes/hobbles an API function entirely, affecting large numbers of addons or causing others to malfunction. Some make sense, some don't.

The most recent "exploit" last year, was addons that use location and map data in instances, raids and scenarios, breaking most maps for instances entirely, like atlas maps and guides, but also any DBM style arrows, group range indicators, or area/mechanic warnings based on damage or locations where damage will spawn, ie operator thogar where you dodge trains on train tracks, etc.

Exorsus, recently built a weakaura script to bring back the range/arrow function indicator, that caused blizzard to disable friendly nameplates in instances so you can't tag people in instances anymore with the skull/cross, etc. like you used to. only enemy mobs.

Hellfire Citadel and Siege of Orgrimmar raid indicators often used location data to point out where damage was incoming for Siege or Blackrock Foundry, etc.

i.e. Case in Point, World Quest Group Finder, also was recently hobbled so that it didn't globally spam the Group Finder with hundreds of group requests/second on each server as you crossed the hidden quest boundaries. It had a spiral-on effect for the servers because they were not built to cache or reduce repeated requests or handle multiple searches/second from simultaneous requests, i.e. people walking into the same zone at server reset, when people leave a quest group on collective completes, etc. It was an unintended consequence of the design.

Similar problems were also found with Very Old addons like GearScore, which used a chat channel to broadcast data about cached character lookups to people in the area that had the option open. It would flood through the servers as a very fast text channel and led to people who weren't running GearScore, to experience FPS drops as their computers were also receiving the hidden chat channel text. In areas like Dalaran (old Dalaran) and capital cities, it was sending thousands of requests for updates, and all the GS clients would listen and send random updates every few minutes.
Quintessence wrote:If it's the second one, this could indeed be a very powerful tool. If scripts are made available for popular strategies, anyone could easily import it and complete a battle (if they have the pets, that is) without having much prior knowledge about the pets, strategy or Pet Battles. All they would have to do is pay attention to any alerts; "Use X ability now!" "Swap to X pet now!" I'm not sure how I feel about it, if this is the case.

Obligatory warning (until there's some clarification on what exactly this addon does): I'd like to remind everyone to be wary of using addons that might breach Blizzard ToS. Also, per the [url=https://www.warcraftpets.com/community/guidelines/]WarcraftPets User Guidelines[/url], we not condone any cheats, hacks, or any advertisement of such.
Understood. I think it comes down to a trust in Blizzard to act on their best interests.

Preferably within a shorter period of time so people get a sense of what Blizzard's best interests actually are.

User avatar
Gráinne
Posts: 843
Joined: July 7th, 2015
Pet Score: 9552
Realm: Magtheridon-EU
Contact:

Re: tdBattlePetScript

Post by Gráinne » June 4th, 2017, 9:55 pm

I just tried it. It works fine.

For sure, it's on the wrong side of the "botting" line morally, even if Blizzard eventually decide they're not going to break it.

The difference between this and something like GSE based on a /castsequence is the context: pet battling tamers doesn't have variance or external movement requirements or conditions that need to be reacted to in the same way as combat has. I'd say this is a direct analogue to Combat Routine/Rotation-bots.

Just download a script, and never press anything but "A" again in a battle.

However, technically, it abides by the "one action per keystroke" guideline, so it may slither through under that rule.

You are right that this would not do well in PvP, though with a decent script and the right team you would surely win some, and without any effort. I now wonder whether some of the PvPbots I've seen were using this, or some variant, perhaps along with some mechanism for automated keypress simulation.

Incidentally, in the example you posted on Reddit in your explanation, you need to add
if [ enemy(Rover).active & self(Mechanical Pandaren Dragonling).active ]
ability(Breath)
endif
between the Imply and Seduction paragraphs, or perhaps replace it entirely with the version you have further down the page in the Broken Shore post.

I have already deleted the addon. Whatever Blizzard decides, I want nothing to do with it.

User avatar
Paladance
Posts: 999
Joined: July 18th, 2015
Pet Score: 8720
Realm: Burning Legion-EU
Contact:

Re: tdBattlePetScript

Post by Paladance » July 6th, 2017, 5:54 am

There are several reports that some scripts aren't executed properly. Some mistakes of the scriptmakers or does this utility or I/O management start to change/break down?

I wouldn't like a situation when someone's instruction is altered by third party means despite the best efforts of a human translator.
Image

User avatar
Flohsakk
Posts: 194
Joined: July 19th, 2012
Pet Score: 9572
Realm: Blackhand-EU
Contact:

Re: tdBattlePetScript

Post by Flohsakk » July 6th, 2017, 10:29 pm

Examples please... there was no update of tdBPS lately.

Seen a person on XuFu reporting a script to frequently Forfeit but there was no quit command in it and it worked without problems for me. So I think there are conflicts with other addons or people did rename teams or saved teams with scripts for other fights.

Post Reply