PDA

View Full Version : WWS -> TPS converter



Roana
04-07-2008, 06:43 PM
Since the online WWS -> TPS converter seems to have gone MIA, I've put together a quick offline script to calculate the same information.

It's attached to this post. Caveats:

(1) It's a quick hack. Consider it a reference implementation that can be improved upon. :) Seriously, though, any programmer with more time than I should be able to take the basic logic and go from there pretty easily.
(2) It's run from the command line and doesn't have a pretty GUI interface (I'm using a Mac, and any GUI I wrote would be useless for most people, anyway). Supply the URL of a tank's WWS page as the argument, or provide the contents of that webpage in a file and supply the file name. Alternatively, feeding the webpage to standard input works also.
(3) It's written in Ruby and requires that Ruby is installed on your computer. That said, Ruby comes pre-installed on Macs and most UNIXes.
(4) I've done some testing to see that the numbers look right, but there are no guarantees. In particular, I'm pretty sure that I missed a few non-standard abilities that generate threat (such as a tank using Stratholme Holy Water on undead bosses), and I'm not sure that I've accounted for all paladin abilities (all common seals should be supported, though).

Silthias
04-08-2008, 02:02 PM
Thanks for taking the time to put this together, but I can't get it to seem to work, i have installed ruby and when i run the file i just get a cmd window up with no prompt for an input. Is there a special way I need to activate it? Would very much like to start calculating my TPS properly as want to work out whats improving of hampering my performance.

Regards,

Silthias

duvar
04-08-2008, 02:10 PM
took me a while to figure out, but run it like this:

ruby wws-tps.rb <url>

where <url> is the full URL to the WWS of your specific character over the fights you want to analyze. Also, a slight caveat but it barfs on the URLs sometimes unless you put quotation marks around the URL.

Also, I've still seen a few WWS parses where it seems to give you total threat over the entire fight instead of TPS.

Roana
04-08-2008, 04:11 PM
took me a while to figure out, but run it like this:

ruby wws-tps.rb <url>

where <url> is the full URL to the WWS of your specific character over the fights you want to analyze. Also, a slight caveat but it barfs on the URLs sometimes unless you put quotation marks around the URL.

That's an issue with command line interpreters in general -- they all have a few magic characters that they tend to get excited about if you don't quote them. :) I'm used to dealing with UNIX shells myself, so I forgot to mention it.


Also, I've still seen a few WWS parses where it seems to give you total threat over the entire fight instead of TPS.

Quite possible. If the script can't extract the duration from the HTML, then it'll just give you the total threat. So, a minor format change in WWS output or other reasons can throw it for a loop. Even if it gives you TPS, it will also give you total threat, too. If you can point me to such URLs, I'll see what I can do

The main idea for this, to be honest, is to give somebody else the basic framework to run with it and provide a "pretty" or online version with more bells and whistles. This may be a bit lazy, but I don't use WWS for my own purposes, so I can only spare so much time for a tool I don't really use.

Silthias
04-09-2008, 12:58 AM
Got it to work now, thanks for the great little tool :) And for teh help getting it working.

Regards,

Silthias

Malignus
04-09-2008, 09:15 AM
Entered this in from a command prompt (DOS box) and tried using the "Run" command line window, and neither approach worked. Both prompted the window to confirm what kind of file it was.

duvar
04-09-2008, 09:29 AM
did you install ruby?

Signu
04-09-2008, 12:29 PM
EDIT:

I think it was related to the firewall. I used the file method and it worked fine.

gardek
04-09-2008, 12:32 PM
Good stuffs!

Any chance to add more detailed ability break downs?
Right now it basically just says
C:\tps>ruby wws-tps.rb "http://wowwebstats.com/glilaatlynpmm?s=5329-5573&a=3"

Devastate | 32363 ( 11.9&#37;)

etc.

Any chance to see how many Devasates there were, how many crit, how many missed and so on?

Thanks!

gardek
04-09-2008, 12:36 PM
@Signu
1.8.6 is the version I'm using, and it works fine. Maybe you set it up incorrectly? Did you try the one step windows installer?
http://rubyforge.org/frs/download.php/29263/ruby186-26.exe

For your input, I get this output:

C:\tps>ruby wws-tps.rb "http://wowwebstats.com/bstrj2bmep2bw?s=1490-2115&a=12"
Devastate | 63734 ( 22.5&#37;)
Shield Slam | 60943 ( 21.5%)
Revenge | 720 ( 0.3%)
Thunder Clap | 3848 ( 1.4%)
Heroic Strike | 69051 ( 24.4%)
Shoot | 354 ( 0.1%)
Swing | 43157 ( 15.2%)
Earth Shield | 25595 ( 9.0%)
Lifebloom | 16137 ( 5.7%)
-----------------------------------------
ABILITIES | 241810
HEALS | 41732
TOTAL | 283543
-----------------------------------------
ABILITY TPS | 386
HEAL TPS | 66
TPS | 452

Roana
04-09-2008, 12:50 PM
Signu, that error would indicate that for some reason you can't connect to the website -- I should probably catch these errors and produce a legible error message in that case. :) I'll see if I can update it later today.

Gardek, hit/crit/miss information is already available by clicking on the ability in WWS? Or do you mean something different.

gardek
04-09-2008, 01:03 PM
No I do mean that. I just remember the online parse used to show a breakdown per ability, so it was easy to tell how many time you used it -> how much threat caused, without bouncing between the TPS parse, and the WWS report. So just figured it would be a "nice to have" feature here as well.

Roana
04-09-2008, 01:04 PM
No I do mean that. I just remember the online parse used to show a breakdown per ability, so it was easy to tell how many time you used it -> how much threat caused, without bouncing between the TPS parse, and the WWS report. So just figured it would be a "nice to have" feature here as well.

Gotcha. I'll see if I can put it in without formatting becoming too tight.

Darksider
04-10-2008, 02:13 PM
i cannot seem to get it to print out the report.

I ran C:\ruby\wws-tps.rb "http://wowwebstats.com/opzwsgpyqquva?s=4321-4570&a=17" with the run command and it comes up with the ruby exe but nothing shows up.

Sorry if this is a noob question but i do not have any experience with ruby.

Danach
04-10-2008, 03:39 PM
Hope this is what you were looking for. Added Hit, Crit, Miss, Parry, and Dodge numbers to the table.

gardek
04-10-2008, 03:48 PM
Err. Stopped working for me altogether.
I get an "Error: No threat data found" on a report which worked before.
:confused:

Danach
04-10-2008, 03:49 PM
The site is currently busy, and has a queue. I didn't touch any of the error handling(It was my first time even looking at ruby code).

gardek
04-10-2008, 04:07 PM
Could be that! I was 95th in queue when i tried the address manually. Will try again later :)

Edit: Working now. Exactly what I meant. Thanks a lot!

chengt
04-11-2008, 05:53 PM
Roana I hope you don't mind but I edited the script to show avg threat per use of a skill.
The file is attached below but since I can't upload a rar it's zipped using Windows Vista :P
Can you plz check my logic on it because threat per use (hit + crit no miss although I added miss to be used in something else possibly (like missed out potential threat?)).

Sample output is


Devastate | 38215 | Landed 58 times | ( 658.9 ATPU) | ( 17.0%)
Shield Slam | 43076 | Landed 28 times | (1538.5 ATPU) | ( 19.2%)
Revenge | 19509 | Landed 23 times | ( 848.3 ATPU) | ( 8.7%)
Heroic Strike | 80607 | Landed 93 times | ( 866.7 ATPU) | ( 35.8%)
Swing | 20798 | Landed 43 times | ( 483.7 ATPU) | ( 9.2%)
Thorns | 1947 | Landed 55 times | ( 35.4 ATPU) | ( 0.9%)
Lifebloom | 20722 | Landed 1 times | (20722.2 ATPU) | ( 9.2%)


That's from a real WWS for a Prince in KZ fight btw.
I'm not sure why but Lifebloom shows up as 0 hit and crit even though it shows 22 hit on WWS.
Is there any associated threat when ILOTP procs for you?

byechee
04-14-2008, 10:31 AM
ilotp heals cause no threat.

Caulle
04-14-2008, 11:13 AM
The original threat parser's back online. Coolyo[dot]org (http://www.coolyo.org/?area=threat)

gardek
04-14-2008, 04:45 PM
The original threat parser's back online. Coolyo[dot]org (http://www.coolyo.org/?area=threat)

I think there might be a bug with the healing threat calculations in this, unless I'm missing something.

I ran this report through it,
Gardek - WWS (http://wowwebstats.com/v6ktmxrtjh4pk?s=13346-13551&a=4)
And got


Lifebloom: Amount: 23761 Overheal: 36% Threat: 15207.04
Earthshield: Amount: 4989 Overheal: 0% Threat: 4989
Prayer of Mending: Amount: 28351 Overheal: 20% Threat: 22680.8

Total amount of dmg threat: 129434.11
Total amount of skill threat: 56945.2975
Total amount of healing threat: 29041.94

Unless I'm missing something
15207.04 + 4989 + 22680.8 = 42876.4
But it lists total healing threat at 29041.94

So it's either bugged, or I'm dumb ;)

byechee
04-15-2008, 03:18 PM
I think there might be a bug with the healing threat calculations in this, unless I'm missing something.

I ran this report through it,
Gardek - WWS (http://wowwebstats.com/v6ktmxrtjh4pk?s=13346-13551&a=4)
And got


Unless I'm missing something
15207.04 + 4989 + 22680.8 = 42876.4
But it lists total healing threat at 29041.94

So it's either bugged, or I'm dumb ;)

You have to take out the overheal (no threat) and remember that healing threat is 50% of the effective heal before BoS.

gardek
04-15-2008, 07:17 PM
You have to take out the overheal (no threat) and remember that healing threat is 50% of the effective heal before BoS.

I don't think that's right.

It lists

Lifebloom: Amount: 23761 Overheal: 36% Threat: 15207.04
23761 * 64% = 15207.04
So it already accounts for overheal.

Adding up and dividing by 2, for half healing threat doesn't quite add up either

(15207.04 + 4989 + 22680.8)/2 = 21438.42
Which is still not the number listed for healing threat of 29041.94

For blessing of salvation
21483.42 * 0.7 = 15006.89
Still not it.

With blessing of salvation, without dividing by 2 for half threat:
(15207.04 + 4989 + 22680.8)*(0.7) = 30013.788
Close, but still not quite there.

:confused:

Caulle
04-16-2008, 05:21 AM
Trying to get this running for a druid friend as the web based threat parser only works for warriors at the moment... am I missing something? I installed ruby, and ran the file that Roana uploaded. I get a dos box and I just put "ruby wws-tps.rb <url>" where url is a link to the WWS report, hit enter, nothing happens. The instructions were vague.

Caulle
04-16-2008, 05:22 AM
I think there might be a bug with the healing threat calculations in this, unless I'm missing something.


I honestly have no idea. Never looked at the actual numbers, just my TPS output.

yellowmoon
04-17-2008, 11:07 PM
I cant get this to work either =/ did the command line and the quotation marks, too, except that in my cast it didn't show any error message, just doesn't show any result from the command.
Here is my wws : Yellowmoon - WWS (http://wowwebstats.com/fpeem426slbqc?a=15&s=3126-3397)

Silthias
04-18-2008, 03:01 AM
You run a cmd window and call teh program, dont click on the program to try and run it.

Regards,

Silthias

Ghreystar
08-25-2008, 12:38 PM
anybody else having problems with the coolyo not working now that wws has gone to the new renderer?

TravelToAiur
12-29-2008, 04:54 AM
WWS warrior tps parser | WotLK 3.0 (http://tps.ueguild.com/index.php)