Theck's MATLAB TPS analysis - WotLK/3.x
Moderators: Fridmarr, Worldie, Aergis, theckhd
Re: Theck's MATLAB TPS analysis
What about the tankadin tps addon?
- Dantriges
- Posts: 1250
- Joined: Wed Jan 30, 2008 12:39 am
Re: Theck's MATLAB TPS analysis
Also helps to wait untill you have 5 stacks up and no tricks running before you use AW. Doesn't stack with tricks.
-

Awyndel - Posts: 672
- Joined: Sat Feb 14, 2009 8:49 am
- Location: The Netherlands
Re: Theck's MATLAB TPS analysis
Awyndel wrote:Also helps to wait untill you have 5 stacks up and no tricks running before you use AW. Doesn't stack with tricks.
For that matter, kicking on wings will cancel tricks. I <3 Power Auras
- Iselian
- Posts: 116
- Joined: Fri Jan 23, 2009 11:12 pm
Re: Theck's MATLAB TPS analysis
Oddly that doesn't interfere with the threat transfer effect. The target of Tricks gets a single buff that only increases your damage done, while the caster of Tricks is the one that has the threat transfer buff. Because of that if the caster only wants to give the damage increase but not the threat transfer to another dps, they can just cancel the threat transfer buff on themselves and you get a 20% damage buff on the target.Iselian wrote:Awyndel wrote:Also helps to wait untill you have 5 stacks up and no tricks running before you use AW. Doesn't stack with tricks.
For that matter, kicking on wings will cancel tricks. I <3 Power Auras
So even if you end up overwriting tricks you're only cheating yourself out of a few seconds of 15% extra damage, and not the threat transfer. Still a waste of course.

-

Chicken - Posts: 1597
- Joined: Fri Jun 26, 2009 2:19 pm
Re: Theck's MATLAB TPS analysis
Huh, news to me! Doesn't make the loss as big (though there's still a loss). Learn somethin' new every day.
- Iselian
- Posts: 116
- Joined: Fri Jan 23, 2009 11:12 pm
Re: Theck's MATLAB TPS analysis
Isn't what you're planning to do what Rawr has been doing all along ?
-

culhag - Maintankadonor
- Posts: 1663
- Joined: Wed Aug 06, 2008 7:50 am
- Location: France
Re: Theck's MATLAB TPS analysis
culhag wrote:Isn't what you're planning to do what Rawr has been doing all along ?
Not sure I follow you here. Are you're referring to the code work for Cataclysm? There's a pretty big difference between what Rawr does and what my code does, not to mention that I literally can't use Rawr to do some of the calculations I do.
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Call to Arms 5.x, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
MATLAB 5.x, Call to Arms 5.x, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
-

theckhd - Moderator
- Posts: 7465
- Joined: Thu Jul 31, 2008 3:06 pm
- Location: Harrisburg, PA
Re: Theck's MATLAB TPS analysis
theckhd wrote:culhag wrote:Isn't what you're planning to do what Rawr has been doing all along ?
Not sure I follow you here. Are you're referring to the code work for Cataclysm? There's a pretty big difference between what Rawr does and what my code does, not to mention that I literally can't use Rawr to do some of the calculations I do.
It calculates your theorical TPS based on the gear, spec, and glyph you feed it.
I have only tested that for Ret, but it can even calculate stat value graphs.
What I mean is, maybe you should consider writing a module for Rawr or contributing to the existing one, that way you'd benefit from their framework to handle gear, spec, and glyphs...
Disclaimer: I have no idea how all this works internally, so maybe it's not as simple as it sounds.
-

culhag - Maintankadonor
- Posts: 1663
- Joined: Wed Aug 06, 2008 7:50 am
- Location: France
Re: Theck's MATLAB TPS analysis
That's an interesting point about leveraging Rawr's gear/etc handling.
-

Kelaan - Posts: 4036
- Joined: Thu Jan 03, 2008 12:01 pm
Re: Theck's MATLAB TPS analysis
culhag wrote:It calculates your theorical TPS based on the gear, spec, and glyph you feed it.
I have only tested that for Ret, but it can even calculate stat value graphs.
What I mean is, maybe you should consider writing a module for Rawr or contributing to the existing one, that way you'd benefit from their framework to handle gear, spec, and glyphs...
Disclaimer: I have no idea how all this works internally, so maybe it's not as simple as it sounds.
Interesting, I didn't know they implemented that for ret.
That said, I'm still not convinced moving to Rawr's framework is the way to go. I'm not sure the framework is flexible enough for the variety of simulations I run. Some of them would be pretty straightforward - stats, weapons, and enchants all fit nicely in the native interface, even though it's not particularly easy to read. Talent, rotation, and seal comparisons would be a little trickier, though obviously possible.
It also doesn't help that I'm far more comfortable with MATLAB than with C#. I can whip things up very quickly in MATLAB because I use the language almost daily, while it would take quite a while for me to reach that level of C# ability. And I don't have any sort of C development environment set up to test things in.
On the other hand, the Rawr ProtPaladin module is really in bad shape, at least as far as threat goes. Try looking at weapons and sorting by Damage Output. For me, it's listing Mithrios (284) as equal or better to Gutbuster (264), despite the fact that Gutbuster should be around 250 DPS higher. A quick perusal of their Attack Model shows why:
- Code: Select all
switch (Options.SealChoice) {
// Seal of Righteousness
case "Seal of Righteousness":
modelThreat += Abilities[Ability.SealOfRighteousness].Threat * weaponHits;
modelDamage += Abilities[Ability.SealOfRighteousness].Damage * weaponHits;
modelCrits += Abilities[Ability.SealOfRighteousness].CritPercentage * weaponHits;
break;
//Seal of Vengeance Mode
case "Seal of Vengeance":
modelThreat += Abilities[Ability.SealOfVengeance].Threat * weaponHits;
modelDamage += Abilities[Ability.SealOfVengeance].Damage * weaponHits;
modelCrits += Abilities[Ability.SealOfVengeance].CritPercentage * weaponHits;
//Holy Vengeance (Seal of Vengeance DOT)
modelThreat += Abilities[Ability.HolyVengeance].Threat;
modelDamage += Abilities[Ability.HolyVengeance].Damage;
break;
}
They're only accounting for seal procs off of weapon hits, and ignoring any seal procs from Judgement, HotR, or ShoR. Hence, Rawr isn't properly reflecting the weapon speed dependence that we see in practice. This sort of bug should have been noticed a long time ago had anyone bothered to look, which tells me that nobody's actively developing the ProtPaladin module.
To be honest, the question probably comes down to "What would be faster - learning C# and dissecting their code until I understand it, or just update the MATLAB code I already have." I'd have to think about that a bit, but it would certainly be more convenient for me to work in MATLAB in the short term.
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Call to Arms 5.x, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
MATLAB 5.x, Call to Arms 5.x, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
-

theckhd - Moderator
- Posts: 7465
- Joined: Thu Jul 31, 2008 3:06 pm
- Location: Harrisburg, PA
Re: Theck's MATLAB TPS analysis
Rawr would be a good front-end option. Dropping MATLAB altogether wouldn't be an equally inspired move, due to a. lack of flexibility, b. extremely "clunky"/awkward/inefficient handling of dynamic effects (procs, to use the generic term).
Rawr is for the newbie/lazy person that fires up an application and expects meaningful output with minimal input (sic
), MATLAB is for the tinkering-oriented developers/users.
Rawr is for the newbie/lazy person that fires up an application and expects meaningful output with minimal input (sic
-

tlitp - Posts: 554
- Joined: Mon Jul 27, 2009 3:25 pm
Re: Theck's MATLAB TPS analysis
Another, perhaps preferable option would be to do our thing in MATLAB here and find a collaborator who knows C# who's willing to participate in both projects. Even if it didn't model everything to the degree of accuracy we do in the MATLAB, having the Rawr code updated regularly to keep it relevant might be nice.
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Call to Arms 5.x, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
MATLAB 5.x, Call to Arms 5.x, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
-

theckhd - Moderator
- Posts: 7465
- Joined: Thu Jul 31, 2008 3:06 pm
- Location: Harrisburg, PA
Re: Theck's MATLAB TPS analysis
Yeah, if you don't have much knowledge of C# it wouldn't be very efficient to have to start over and learn at the same time; especially considering the huge amount of code you already have in Matlab. But it will never be user friendly as long as it stays there.
-

culhag - Maintankadonor
- Posts: 1663
- Joined: Wed Aug 06, 2008 7:50 am
- Location: France
Re: Theck's MATLAB TPS analysis
culhag wrote:Yeah, if you don't have much knowledge of C# it wouldn't be very efficient to have to start over and learn at the same time; especially considering the huge amount of code you already have in Matlab. But it will never be user friendly as long as it stays there.
Well, it's not necessarily meant to be user friendly in the "anyone can pick this up and use it to optimize their character" sense. I mostly just want it to be easier to use than it is now, both for me and for any other theorycrafters around here that choose to help out on the project.
I could write a very pretty UI for the whole thing in MATLAB, but that would sort of be a waste of time. The subset of the population using this code (people who know MATLAB and have it or one of its free variants installed) is pretty small, and I suspect they're all familiar enough with the command line interface and m-files to make that work for them.
Plus, in the end, the deliverables I give are the plots (easy to make pretty in MATLAB, but not native to C) and the commentary. I doubt very much that people would actually fire up Rawr to answer most of these questions themselves. They'd be coming here to see the plots and my analysis of them. As far as the regular player is concerned, it doesn't matter how those plots are generated.
If using the Rawr framework was a big time saver, it would be an option. But as you said, if it means learning C# and then having to clunk around for a while getting it to do what I want it to, it's probably not worth the time. It would be easier to maintain my MATLAB code base and just learn enough C# to audit the ProtPaladin codebase and make suggestions.
I'd like to see Rawr turn into a useful utility for prot in the long run though. I should probably get in contact with whomever maintains the ProtPaladin module and see if he has any interest in collaborating.
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Call to Arms 5.x, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
MATLAB 5.x, Call to Arms 5.x, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
-

theckhd - Moderator
- Posts: 7465
- Joined: Thu Jul 31, 2008 3:06 pm
- Location: Harrisburg, PA
Re: Theck's MATLAB TPS analysis
Rawr puts number on gear, threat, survival and mitigation. It would be better if it used some of our more common used numbers, like EH ( including NEH, and including non EH survival calculations ( healing extension to armor/resistance ) ) Avoidance, DTPS, etc.
The numbers it uses for tps are completely wrong. It has no idea whatsoever, of the mathlab code.
The only usefull thing a tank can use rawr for nowadays is defense minimum or attack table calculations, and gear simulation.
So you could do 2 things ( if you're even inclined to do anything at all ) . One could improve rawr, or make something better.
I think the current mathlab code IS something better. It's just not as accessable. Wether or not that is a problem at all, is up for debate.
The numbers it uses for tps are completely wrong. It has no idea whatsoever, of the mathlab code.
The only usefull thing a tank can use rawr for nowadays is defense minimum or attack table calculations, and gear simulation.
So you could do 2 things ( if you're even inclined to do anything at all ) . One could improve rawr, or make something better.
I think the current mathlab code IS something better. It's just not as accessable. Wether or not that is a problem at all, is up for debate.
-

Awyndel - Posts: 672
- Joined: Sat Feb 14, 2009 8:49 am
- Location: The Netherlands
Return to Advanced Theorycraft and Calculations
Who is online
Users browsing this forum: No registered users and 0 guests
