Pet Battle Recorder Addon
I want an addon. I'm even willing to write it myself.
I've even started to hack a kludge together, that kind of works well enough for myself, if I squint a bit and look to one side.
But I'm not yet sure where I want to take it. Here's the story.
Back in Warlords, trying to distract myself from the awfulness of the second 500 battles for Trainer, I started recording what teams I faced, and the result, by the high-tech mechanism of a pen and a pad of paper beside me. I transcribed these into a spreadsheet and turned them into a set of counts that I posted for information.
I got the idea from Discodoggy, who had already recorded and published stats for teams he had faced.
I now wish I had recorded which teams I used.
1. So I would like an addon that records this. What I used. What I faced. Result.
2. I would also like to record the log of the battle. None of us do this at the moment, AFAIK, and while I don't imagine I'd analyse every battle, I wouldn't mind having them all available just in case. Not only for PvP, but possibly for analysing PvE strats, 'cos I'm the kind of compulsive who could get caught up in that occasionally.
So those are two possible functions.
1. Recording Teams
I started by hacking an abandoned addon BattleDex, to see how feasible it looked. The battle recording is at least possible. There are a few corners I'd have to work around - for example, I can't directly ask the game for breeds; I'd have to label the breeds myself from the stats, if I want to do it. Stuff like that,
Storing the information in a Lua database is one thing; displaying it in a useful form is another. I thought I would just want to grab it into a spreadsheet. But then I started wondering: is there any value in having the information available in game? If I don't have a use for that, would somebody else think of one?
2. Recording battles
I don't know how to do this at the moment, but if I do find a way, how to format it in such a way that it would be useful (for what?)
I'm just throwing this out there in case anyone else ever wanted something like this and has ideas about what a final version should look like. I'm used to making do with half-kludged code for myself, and if nobody else is interested, that's what I'll probably do in this case.
But if there's someone who can bring this into focus, I'd love to hear your ideas.
I've even started to hack a kludge together, that kind of works well enough for myself, if I squint a bit and look to one side.
But I'm not yet sure where I want to take it. Here's the story.
Back in Warlords, trying to distract myself from the awfulness of the second 500 battles for Trainer, I started recording what teams I faced, and the result, by the high-tech mechanism of a pen and a pad of paper beside me. I transcribed these into a spreadsheet and turned them into a set of counts that I posted for information.
I got the idea from Discodoggy, who had already recorded and published stats for teams he had faced.
I now wish I had recorded which teams I used.
1. So I would like an addon that records this. What I used. What I faced. Result.
2. I would also like to record the log of the battle. None of us do this at the moment, AFAIK, and while I don't imagine I'd analyse every battle, I wouldn't mind having them all available just in case. Not only for PvP, but possibly for analysing PvE strats, 'cos I'm the kind of compulsive who could get caught up in that occasionally.
So those are two possible functions.
1. Recording Teams
I started by hacking an abandoned addon BattleDex, to see how feasible it looked. The battle recording is at least possible. There are a few corners I'd have to work around - for example, I can't directly ask the game for breeds; I'd have to label the breeds myself from the stats, if I want to do it. Stuff like that,
Storing the information in a Lua database is one thing; displaying it in a useful form is another. I thought I would just want to grab it into a spreadsheet. But then I started wondering: is there any value in having the information available in game? If I don't have a use for that, would somebody else think of one?
2. Recording battles
I don't know how to do this at the moment, but if I do find a way, how to format it in such a way that it would be useful (for what?)
I'm just throwing this out there in case anyone else ever wanted something like this and has ideas about what a final version should look like. I'm used to making do with half-kludged code for myself, and if nobody else is interested, that's what I'll probably do in this case.
But if there's someone who can bring this into focus, I'd love to hear your ideas.
Re: Pet Battle Recorder Addon
I made a similar suggestion in the Rematch thread, you might want to check it. Gello is considering the possibility of creating an API for Rematch 5.0 that will allow us to write a plugin like that within the Rematch framework, so we would be able to focus on the important parts.
Rather than collecting team data, i'd like "pets i played against" data. Something like "I played against teams containing Bone Serpent X times. Y% of all teams contain Bone Serpent. I won against teams containing Bone Serpent Z times and lost A times, for a win percentage of B%." And then have that as a sheet so you can get a meta snapshot and also see how well you do against the meta, and which pets you do bad against.
Rather than collecting team data, i'd like "pets i played against" data. Something like "I played against teams containing Bone Serpent X times. Y% of all teams contain Bone Serpent. I won against teams containing Bone Serpent Z times and lost A times, for a win percentage of B%." And then have that as a sheet so you can get a meta snapshot and also see how well you do against the meta, and which pets you do bad against.
CloseToZero - Watch me lose on youtube with bad pets!
Re: Pet Battle Recorder Addon
PetTracker has a simplified history of teams, and as far as I've noticed, if the pet involved is missing in the journal, it can't refer to it anymore, even if you have duplicates -- so I guess it's quite thorough about this.
I have compiled community knowledge & data about pet battle abilities!
https://www.warcraftpets.com/community/forum/viewtopic.php?f=3&t=19507
Re: Pet Battle Recorder Addon
Yeah PetTracker has something like this though I haven't played around with it. You should check it out Gráinne if you haven't yet.
To temper expectations on the rematch extra tabs, the extent of the API would be to provide a space within the addon for other addons to do their thing. Register a tab and a frame to display in the tab and then the separate addon would handle everything in its own frame on its own; integrated into rematch via its tabbed view but operating independently.
If you need help getting your addon going, Gráinne, let me know. I suspect the hard part will be detailing exactly how it'd work/behave. For my own distant plans (as in, I'd be relieved if someone else did it to save me the effort!), I had envisioned having a list of teams with their total wins/losses/draws/battles in a spreadsheet view probably like what you have, and a +/- button to expand each row. When expanded, beneath the team it'd list all the opponent teams it fought and the wins/losses/draws/battles for that specific matchup. I had not planned this far, but with you wanting to include logs somehow, maybe an option to save specific battle logs for a fight you just finished. I maybe wouldn't try to record all battles; that'd be an insane amount of data to record unless you trimmed it down to a very basic outline of what happened. But it can't hurt to experiment.
A gotcha you will want to be careful of (and you maybe already considered with the reference to breeds) is the petID is not a reliable reference to a specific pet. Those petIDs can change without warning between sessions. It's even more annoying than the lack of a breed API in game. (I'm so jealous of the web API's breed support!) Keeping tabs on them with a speciesID+breed may be good enough. If a user doesn't use a breed addon, then it's probably likely they don't have many duplicates where breed is a huge issue.
To temper expectations on the rematch extra tabs, the extent of the API would be to provide a space within the addon for other addons to do their thing. Register a tab and a frame to display in the tab and then the separate addon would handle everything in its own frame on its own; integrated into rematch via its tabbed view but operating independently.
If you need help getting your addon going, Gráinne, let me know. I suspect the hard part will be detailing exactly how it'd work/behave. For my own distant plans (as in, I'd be relieved if someone else did it to save me the effort!), I had envisioned having a list of teams with their total wins/losses/draws/battles in a spreadsheet view probably like what you have, and a +/- button to expand each row. When expanded, beneath the team it'd list all the opponent teams it fought and the wins/losses/draws/battles for that specific matchup. I had not planned this far, but with you wanting to include logs somehow, maybe an option to save specific battle logs for a fight you just finished. I maybe wouldn't try to record all battles; that'd be an insane amount of data to record unless you trimmed it down to a very basic outline of what happened. But it can't hurt to experiment.
A gotcha you will want to be careful of (and you maybe already considered with the reference to breeds) is the petID is not a reliable reference to a specific pet. Those petIDs can change without warning between sessions. It's even more annoying than the lack of a breed API in game. (I'm so jealous of the web API's breed support!) Keeping tabs on them with a speciesID+breed may be good enough. If a user doesn't use a breed addon, then it's probably likely they don't have many duplicates where breed is a huge issue.
Re: Pet Battle Recorder Addon
Thanks for your comments!
Some thoughts:
Drlambda, I find that the stats on the raw number of Bone Serpents I faced in 500 battles is of very limited interest. I did that on the forum, and it has some statistical interest, but when I look at my spreadsheet and see a whole team, I get a much more satisfying view. For example, one of my observations during WoD was that my win ratio was highly dependent on how many Undead I was facing. So I did the thing of looking at pet numbers individually, and I definitely want more than that. (I really wish I had always used the same order for pets when jotting down teams, so that I could easily see all Graves, BS, Weeb teams together. And I really, really wish I had recorded what I was running when I faced each.)
Paladance and Gello, thank you for the suggestion to look at PetTracker. I really hadn't noticed. I may be able to use some ideas from its code at some point.
Gello, you are spot on in saying "the hard part will be detailing exactly how it'd work/behave". So I've got something that records teams, clunkily. And all I can think of wanting for myself is capturing that in a spreadsheet. And that's probably where it will stay unless I get some other idea.
I don't see myself ever dealing with pet IDs. A lot of that is because of my own habits. I'm not at all disciplined about teams. I will pull up a team, say "meh, what if I dropped in an Idol instead of the Crab", just do that and go without ever saving the changed team, so I tend not to pay attention to specific pets or teams.
I do like the idea of asking, after a battle, "do you want to keep that record?" but I'm nowhere on logging yet.
In Chess, or Go, or Bridge, people learn by recording and replaying existing games. We have none of that with pets. Of course, we have no mechanism to replay a game and try variations, so maybe that's why.
Some thoughts:
Drlambda, I find that the stats on the raw number of Bone Serpents I faced in 500 battles is of very limited interest. I did that on the forum, and it has some statistical interest, but when I look at my spreadsheet and see a whole team, I get a much more satisfying view. For example, one of my observations during WoD was that my win ratio was highly dependent on how many Undead I was facing. So I did the thing of looking at pet numbers individually, and I definitely want more than that. (I really wish I had always used the same order for pets when jotting down teams, so that I could easily see all Graves, BS, Weeb teams together. And I really, really wish I had recorded what I was running when I faced each.)
Paladance and Gello, thank you for the suggestion to look at PetTracker. I really hadn't noticed. I may be able to use some ideas from its code at some point.
Gello, you are spot on in saying "the hard part will be detailing exactly how it'd work/behave". So I've got something that records teams, clunkily. And all I can think of wanting for myself is capturing that in a spreadsheet. And that's probably where it will stay unless I get some other idea.
I don't see myself ever dealing with pet IDs. A lot of that is because of my own habits. I'm not at all disciplined about teams. I will pull up a team, say "meh, what if I dropped in an Idol instead of the Crab", just do that and go without ever saving the changed team, so I tend not to pay attention to specific pets or teams.
I do like the idea of asking, after a battle, "do you want to keep that record?" but I'm nowhere on logging yet.
In Chess, or Go, or Bridge, people learn by recording and replaying existing games. We have none of that with pets. Of course, we have no mechanism to replay a game and try variations, so maybe that's why.
Re: Pet Battle Recorder Addon
Gráinne if you're interested, PM me an email address and I can send you the code for this:
When you leave a battle, you can summon this window and click Save Battle and its log gets inserted to the top of the list. You can modify the code all you want, even post it as your own unchanged, or maybe use the code as a reference for the work on your own addon.
When you leave a battle, you can summon this window and click Save Battle and its log gets inserted to the top of the list. You can modify the code all you want, even post it as your own unchanged, or maybe use the code as a reference for the work on your own addon.
Re: Pet Battle Recorder Addon
For anyone interested, Gello has sent me his awesome addon - thank you so much again, Gello - and I've passed it on to Drlambda, who was also interested. No doubt we'll both be looking at it, trying variations, and screwing up Gello's competent code with our noob Lua.
Anyone else who is interested, please feel free to post here. I'll be trying out ideas, and if enough people are interested may add enough to the addon to make it useful to others.
Anyone else who is interested, please feel free to post here. I'll be trying out ideas, and if enough people are interested may add enough to the addon to make it useful to others.
Re: Pet Battle Recorder Addon
I'll be interested in this Gráinne I'm recording the teams I face with Closetozero to get an idea of the meta pets and their occurrence.
Re: Pet Battle Recorder Addon
Hi Gello!
I've got your addon, but I can't use it because the frame is too big for my low res (x768) and the buttons are cropped away. Could you tell me what to edit out to shorten it?
EDIT: Nevermind, after reading all adnotations thoroughly I figured out I missed a certain thing. I adjusted it myself! Thanks for documentation.
EDIT2: The options as presented in Interface don't seem to save at all. I need to save options via editing related .lua file in SavedVariables and/or relocating them to the character directories. But that copy deletes itself after logging out. :S
EDIT3: And the global SV keeps self-modifying too, I don't know why. Maybe I've broken something but I was changing only size numbers.
I've got your addon, but I can't use it because the frame is too big for my low res (x768) and the buttons are cropped away. Could you tell me what to edit out to shorten it?
EDIT: Nevermind, after reading all adnotations thoroughly I figured out I missed a certain thing. I adjusted it myself! Thanks for documentation.
EDIT2: The options as presented in Interface don't seem to save at all. I need to save options via editing related .lua file in SavedVariables and/or relocating them to the character directories. But that copy deletes itself after logging out. :S
EDIT3: And the global SV keeps self-modifying too, I don't know why. Maybe I've broken something but I was changing only size numbers.
I have compiled community knowledge & data about pet battle abilities!
https://www.warcraftpets.com/community/forum/viewtopic.php?f=3&t=19507
Re: Pet Battle Recorder Addon
Hi guys, i uploaded the current version on Curse. You can find it here:
https://mods.curse.com/addons/wow/27725 ... elogkeeper
The majority of the code at this stage was done by Gello, but i added a few features. There will be more features in the future, like:
Let me know if everything works as expected.
https://mods.curse.com/addons/wow/27725 ... elogkeeper
The majority of the code at this stage was done by Gello, but i added a few features. There will be more features in the future, like:
- Deleting all logs
- Filtering by week, month, type of battle etc
Let me know if everything works as expected.
CloseToZero - Watch me lose on youtube with bad pets!
Re: Pet Battle Recorder Addon
@Gello: THANKS for coding this in the first place, I always dreamed of something like this!
@Drlambda: Thanks for putting it on curse for everyone!
@Drlambda: Thanks for putting it on curse for everyone!