Edgy/Raffy's Official Catus Thread

Face-rippin fun.
Posts: 769
Joined: Tue Oct 23, 2012 7:15 am

Re: Edgy/Raffy's Official Catus Thread

Postby raffy » Thu Feb 20, 2014 4:45 pm

Warning: the latest armory data is old. Make sure you login and logout or check that your gear matches in-game before doing any work in Catus. I just loaded my armory data and it's 4+ weeks old.

Also, I bumped up the Item API version number during my tweaks the other day, so the next Catus launch needs to redownload a bunch of stuff.

Posts: 769
Joined: Tue Oct 23, 2012 7:15 am

Re: Edgy/Raffy's Official Catus Thread

Postby raffy » Sat Feb 22, 2014 7:34 pm

I've had to update the item cache again. Next Catus launch will need to redownload stuff. I've also added S14 and S15 gear to CatusGear.txt.

Upcoming Catus v32:
In addition to some new PvP features, I've made it easy to swap between seasons (similar to how you can swap between raid difficulties for PvE gear)

I've also added PvP support to the Maximize Stat reforger:
This allows you to find the best possible PvP reforging w/ additional weights for PvP Power and Resil.

Code: Select all
- if you hold [alt] while hitting red-X when clearing out an equipment slot, will restore it from armory
- additionally, the cleared slot gear menu contains "Restore from Armory"
- edit recent import window height is fixed (was wacko after too many druids were imported)
- passive stats was being wrongly parsed by my item API and is now fixed
- pvp trinkets have tooltips and can be sim'd (550 ilvl in gear list)
- guardian AMR export properly uses spec 104
- added yellow (no agi) option, which forcibly gives you maximum secondaries
- updated resilience equation for 5.4.7
- maximize stat reforger minimizes gems
- shopping list while scaled uses unscaled gear
- faction swap (for horde/alliance) now relies on my API instead of client-side wowhead parsing
- faction/race text is dark blue
- added stamina/armor meta gem
- added more tooltips
- added pvp power/pvp resil/stamina differences to maximize stat reforge menu summary
- simulator has pvp mode (battle fatigue and pvp power)
(more coming)

Posts: 20
Joined: Sun Jan 13, 2013 12:11 pm

Re: Edgy/Raffy's Official Catus Thread

Postby Spanja » Sun Feb 23, 2014 4:05 pm

It looks like the Shopping list is not working when using with challenge mode downscaling.
I'm trying to maximize reforge for challenge mode, but when I click on reforge & shopping list, it doesn't compare to my current gear, and asks me to shop everything (gear/gems/enchants...), even if almost everything is gemmed/enchanted/upgraded :


BTW, does the minimize cost on roro tab is working for maximize stats tab results ?

Posts: 769
Joined: Tue Oct 23, 2012 7:15 am

Re: Edgy/Raffy's Official Catus Thread

Postby raffy » Mon Feb 24, 2014 12:37 am

Haha, that's kind of funny. I can fix that for v32.

Rune minimize cost is only for Rune reforger. I never figured out an efficient way to do the minimize cost for the Maximize reforger. It does basic minimization, like gem swaps, but it won't do complex stuff like exchange like 4 reforges to keep two gems and one enchant the same. I'll give it a shot for v32 as well.

Edit 1: looks like it wasn't minimize gems, I'll enable that instead. The full minimization is too difficult.

Edit 2: I'm still having a lot of issues with my Item API. Somehow my servers IP (range?) got banned from when they were recently under DDOS attack. I fixed it yesterday using a public proxy, but I just capped out the quota on that service :X A bunch of items in my API are fucked up because it can't pull the necessary information. I'm going to try to manually fix what I can but I'll probably have to flush the cache again to fix the import issues. I'm sure it's caused random import failures since gear is returning empty from my API like:
Code: Select all
{"id":101842, "baseArmor":0, "armor":0, "inventoryType":0, "itemClass":0, "itemSubClass":0, "raffy_vers":43, "icon":"", "requiredLevel":0, "requiredSkill":0, "requiredSkillRank":0, "upgradable":false, "bonusStats":[{"type":32, "amount":9}], "name":" of the Decimator", "nameDescription":"", "itemLevel":0, "quality":null, "sellPrice":0, "suffixGroupId":631, "budget":23, "name0":null, "itemLevel0":0}

Edit 3: I moved to another public proxy and fixed the busted items but I haven't forced an update. If you're having import issues, quit Catus, go into your Catus folder, and open Cache/ and find "version.json" and delete it, and then restart Catus.

Edit 4: @Spanja ...
That will fix your Shopping List issue: just swap it with your current Catus.jar and you're good to go.

Edit 5:
You'll probably want to follow the above (Edit 3) instructions and delete "version.json" if you use the fixed Catus update. This will make it into v32 later this week.

Just for clarity, the reason why Catus wanted you to regem everything in that Shopping List is that even though the gear is identical, the item-levels are not inside the upgradeable range, so Catus assumes its a different piece of armor, so you'd need to repurchase those gems/enchants/etc. However, it was incorrect to assume that scaled gear (where the original item-level is preserved) actually had it's item-level changed. Thanks again for the bug report.

Posts: 1
Joined: Mon Feb 24, 2014 9:19 am

Re: Edgy/Raffy's Official Catus Thread

Postby Brocules » Mon Feb 24, 2014 9:21 am

hi Raff,

wonderful tool for RoR reforging. I was wondering. Is there any way to make Catus work on a Mac computer? I don't seem to be able to do it. I use zephyrus fine on my PC but i can't for the life of me get Catus to work on my Mac.

Please help!

Thanks again for all your hard work sir.



Posts: 20
Joined: Sun Jan 13, 2013 12:11 pm

Re: Edgy/Raffy's Official Catus Thread

Postby Spanja » Mon Feb 24, 2014 2:14 pm

Yes it's working very well now :


Thanks a lot for your work :)

Posts: 769
Joined: Tue Oct 23, 2012 7:15 am

Re: Edgy/Raffy's Official Catus Thread

Postby raffy » Mon Feb 24, 2014 2:56 pm

I use Catus on a Mac primarily, so it definitely works! You'll need to take some extra steps to give me some information so I can help diagnose the issue:
1. launch
2. type "cd " (with a trailing space) and then drag your Catus folder to the terminal window
(should end up with something like "cd /Users/raffy/Desktop/Catus")
3. hit return
4. type "java -jar Catus.jar"
Send me any barf it prints out into the terminal when it fails to launch. It's surprising that Zephyrus works but Catus doesn't. Zephyrus is actually exactly the same application as Catus, which different launch arguments.

Posts: 769
Joined: Tue Oct 23, 2012 7:15 am

Re: Edgy/Raffy's Official Catus Thread

Postby raffy » Mon Feb 24, 2014 6:08 pm

(posting this for reference)
Proving Ground: Wave 30
Prior work: viewtopic.php?f=3&t=4574&start=700#p19956

BiS Gear: viewtopic.php?f=3&t=4701&p=19601#p19601
Code: Select all
?Worgen, Engineering, Blacksmithing
101953 /433 >cm :76884 :76670                               # Head: [535] Cranefeather Hood
96815 >he :76670                                            # Neck: [541] Quadra-Head Brooch
105801 :76692 :76680 "Greater Tiger Claw Inscription"       # Shoulder: [559] Spaulders of Dominating Dreams
96833 :76680 "Goblin Glider" "Superior Critical Strike"     # Back: [541] Pinionfeather Greatcloak
99326 :76692 :76692 :76692 "Glorious Stats"                 # Chest: [566] Raiment of the Shattered Vale
96912 /339 :76670 :76692 Socket "Greater Agility"           # Wrist: [541] Bracers of the Midnight Comet
99327 :76692 :76692 :76692 Socket "Synapse Springs" "Superior Mastery"# Hands: [566] Grips of the Shattered Vale
98613 >he :76692 :76692 :76692 Socket "Nitro Boosts"        # Waist: [553] Snow Lily Belt
95028 >ec :76692 :76670 :76670 "Shadowleather Leg Armor"    # Legs: [541] Cosmicfire Legwraps
94269 >hm :76692 :76692 "Blurred Speed"                     # Feet: [522] Quilen Hide Boots
105558 :76692                                               # Finger 1: [572] Ring of Restless Energy
104628 >te :76692                                           # Finger 2: [566] Kil'ruk's Band of Ascendancy
94511 >hm                                                   # Trinket 1: [522] Vicious Talisman of the Shado-Pan Assault
96741 >em                                                   # Trinket 2: [541] Renataki's Soul Charm
96978 :76670 :76692 Socket "Dancing Steel"                  # Main Hand: [541] Darkwood Spiritstaff


Talents: SotF/DoC
Glyphs: SR
Fixed Boss Health: 7,632,398 +30% (1% per wave) = 9.92m
Potion: optional, but no pre-pot
Cooldown Delay: 40sec
Encounter Script: (source)
Code: Select all
@0 suffer mod:-50% dur:40s
@35 pool dur:5
@40 suffer mod:300% dur:20s
@40 potion  # optional, see below

Results w/o Potion:
Spoiler: show
Code: Select all
[DPS] = 143.1K
    Mean:   144247 +/- 93.90 (20998)
  Median:   143070
 25%/75%:   128.3K - 162.7K
 10%/90%:   116.9K - 172.5K
 Min/Max:   88.82K - 201.5K

    Mean:   1.2m
  Median:   1.2m
 25%/75%:   1.0m - 1.3m
 10%/90%:    58s - 1.4m
 Min/Max:    52s - 1.9m

[Time Distribution] (every 5.0s)
Interval     Occ#     DPS    PMF%    CDF%
00:50-00:54   223  185.8K   0.45%   0.45% #
00:55-00:59 10762  172.7K  21.52%  21.97% ############################################################
01:00-01:04  6658  159.3K  13.32%  35.29% #####################################
01:05-01:09  7578  148.1K  15.16%  50.44% ##########################################
01:10-01:14  8183  137.6K  16.37%  66.81% #############################################
01:15-01:19  7000  128.9K  14.00%  80.81% #######################################
01:20-01:24  4332  121.3K   8.66%  89.47% ########################
01:25-01:29  2592  114.4K   5.18%  94.66% ##############
01:30-01:34  1442  108.0K   2.88%  97.54% ########
01:35-01:39   860  102.5K   1.72%  99.26% ####
01:40-01:44   289  97.87K   0.58%  99.84% #
01:45-01:49    73  93.30K   0.15%  99.98%
01:50-01:54     8  90.01K   0.02% 100.00%

Speed: 50000 iterations in 33s

[Damage Distribution]
Name                Hit#     Avg     Min     Max   Crit% Crit#     Avg     Min     Max     #     Avg    All%
.Rip`5              21.4   64912   13952  329099  31.77%  10.0  122719   27903  658198  31.4   83280  26.18%
.Rake               15.0   63904   12027  291748  32.79%   7.3  119345   24055  583497  22.4   82086  18.42%
Melee               55.0   17012    2237   76627  30.40%  24.0   35260    6841  149019  79.1   22560  17.89%
Shred                5.0  116286   13815  256620  28.54%   2.0  229567   29177  511559   7.1  148612  10.53%
Rake                 9.2   58231   12027  253694  31.55%   4.2  109883   24055  479293  13.4   74525  10.03%
.Thrash/Cat         10.1   31081    5051  127075  29.97%   4.3   59720   10102  254150  14.4   39664   5.72%
Ferocious Bite`5     0.8  210333   35309  657943  53.37%   0.9  421181   63458 1356986   1.6  322868   5.26%
Mangle               5.4   36676    9515  197115  29.90%   2.3   70820   20869  383179   7.7   46887   3.62%
Thrash/Cat           2.3   50678    7097  171481  29.91%   1.0   97089   14194  351696   3.3   64561   2.12%
Ferocious Bite`4     0.0  134904   28317  490028  54.82%   0.0  266541   56452  987261   0.1  207069   0.12%
Ferocious Bite`3     0.0   84782   21435  287407  54.47%   0.0  160101   42722  531969   0.1  125810   0.07%
Ferocious Bite`2     0.0   96390   14442  222455  53.41%   0.0  181507   28910  473205   0.0  141855   0.03%
Ferocious Bite`1     0.0   52120    7555   96176  55.58%   0.0  102361   14806  246370   0.0   80044   0.01%

[Dense Damage Distribution]
Name                                    #      Avg    Crit%     All%
Rake                                 35.8    79250   32.33%   28.45%
Rip                                  31.4    83279   31.77%   26.18%
Melee                                79.1    22559   30.40%   17.89%
Shred                                 7.1   148612   28.54%   10.53%
Thrash/Cat                           17.7    44281   29.96%    7.84%
Ferocious Bite                        1.8   308776   53.48%    5.49%
Mangle                                7.7    46886   29.90%    3.62%

Results w/Potion:
Spoiler: show
Code: Select all
[DPS] = 172.2K
    Mean:   167728 +/- 72.55 (16223)
  Median:   172156
 25%/75%:   162.2K - 178.0K
 10%/90%:   142.8K - 183.1K
 Min/Max:   92.61K - 211.7K

    Mean:   1.0m
  Median:    58s
 25%/75%:    56s - 1.0m
 10%/90%:    55s - 1.2m
 Min/Max:    50s - 1.8m

[Time Distribution] (every 5.0s)
Interval     Occ#     DPS    PMF%    CDF%
00:50-00:54  2908  187.2K   5.82%   5.82% #####
00:55-00:59 32227  175.3K  64.45%  70.27% ############################################################
01:00-01:04  6417  160.1K  12.83%  83.10% ###########
01:05-01:09  3499  148.5K   7.00%  90.10% ######
01:10-01:14  2293  138.0K   4.59%  94.69% ####
01:15-01:19  1485  128.9K   2.97%  97.66% ##
01:20-01:24   598  121.3K   1.20%  98.85% #
01:25-01:29   368  114.6K   0.74%  99.59%
01:30-01:34   144  108.2K   0.29%  99.88%
01:35-01:39    51  102.5K   0.10%  99.98%
01:40-01:44     7  98.41K   0.01%  99.99%
01:45-01:49     3  93.26K   0.01% 100.00%

Speed: 50000 iterations in 29s

[Damage Distribution]
Name                Hit#     Avg     Min     Max   Crit% Crit#     Avg     Min     Max     #     Avg    All%
.Rip`5              17.6   74474   13952  333364  33.22%   8.8  143376   27903  666729  26.4   97366  25.58%
.Rake               12.5   75433   12027  315854  34.39%   6.6  144456   24055  631708  19.1   99168  18.85%
Melee               46.3   18356    2238   77628  31.78%  21.5   40682    6583  157205  67.8   25451  17.18%
Rake                 8.6   68656   12027  315854  32.89%   4.2  136623   24055  565028  12.8   91010  11.58%
Shred                4.2  136556   13623  294461  31.52%   1.9  275469   24182  561567   6.1  180348  10.99%
.Thrash/Cat          7.7   38083    4576  140933  31.91%   3.6   75483    9152  281865  11.3   50017   5.62%
Ferocious Bite`5     0.4  356768   35309  785709  56.25%   0.5  727415   69020 1572678   0.9  565268   5.28%
Mangle               3.8   34751    9842  214015  31.30%   1.7   70360   24309  427703   5.5   45895   2.51%
Thrash/Cat           1.9   60934    6454  195176  32.04%   0.9  121434   12907  390352   2.9   80317   2.29%
Ferocious Bite`4     0.0  159832   28311  548189  55.55%   0.0  351535   62661 1008564   0.0  266315   0.06%
Ferocious Bite`3     0.0  114792   21421  354463  55.17%   0.0  219865   42846  761423   0.0  172763   0.04%
Ferocious Bite`2     0.0  112333   14956  238352  54.82%   0.0  232024   28932  540014   0.0  177945   0.02%
Ferocious Bite`1     0.0   64083    7543  136236  54.03%   0.0  127187   16631  267110   0.0   98179   0.01%

[Dense Damage Distribution]
Name                                    #      Avg    Crit%     All%
Rake                                 31.9    95897   33.79%   30.43%
Rip                                  26.4    97366   33.22%   25.58%
Melee                                67.8    25450   31.78%   17.18%
Shred                                 6.1   180347   31.52%   10.99%
Thrash/Cat                           14.2    56158   31.94%    7.91%
Ferocious Bite                        1.0   543109   56.18%    5.40%
Mangle                                5.5    45895   31.30%    2.51%

Success Rate: ~20% w/o Potion, 70% w/Potion (ideal circumstances, ignores Slayer and Banshee DPS requirement)

Billion Edits: fixed bugs, fixed weapon enchant, fixed trinkets, fixed race, fixed item levels, fixed mob health.

Note: something strange is happening with Faerie Fire -- when it's user-applied, it's somehow promoting better alignment and/or increasing proc chance somehow and actually outperforms the situation where Weakened Armor is permanently active. I'm still looking into this...

Posts: 769
Joined: Tue Oct 23, 2012 7:15 am

Re: Edgy/Raffy's Official Catus Thread

Postby raffy » Mon Feb 24, 2014 7:16 pm

Trinket Simulator Tutorial
I posted this on official forums, but figured I should repost here for reference.

Relative to Druid: ... elf/simple

How to use Trinket Simulator
1. Download and launch Catus
2. Import your cat
-- type "Crypticnelf" in import field and hit return
3. Under "Encounter Configuration", click "Use Recommended Settings" or setup manually
-- this will raid buff you, food, flask, and potions.
4. Under "Simulator: Trinkets", click "Select Trinkets", and pick the trinkets you own.
-- in your case: [502] Rune, [528] Ebon, [528] AoC
5. Make sure it's using (Smart Reforge), (Max Upgrade), and (Pairwise)
6. Click "Generate Trinkets"

Simulation, Results, and Analysis
Catus will then generate 3 sets of gear, each with 2 of the 3 trinkets you selected, regem/reforge them optimally, and sim them using the settings described elsewhere in Catus (default is standard Patchwerk for ~7.5 minutes from behind.)

After it finishes, you get a nice report:

-- If you select [x] Textual Report, you'll get some additional statistics and damage breakdowns.
-- If you select [x] CSV File, you'll get some data that you can load into Excel and make some fancy plots.

According to the above results, [536] AoC + [536] Ebon is the best. For this arrangement (neither are Rune), you'll want to reforge for Maximum Mastery, with Agi > Mastery.

How to Reforge for Maximum Agility/Mastery
You can do this using Catus as well:
1. Under "Reforger", click "Maximize Stats" tab
2. Settings should be: 7.5% Hit/Exp, Range = 100, Weights = (click Default), [x] Change Gems, [x] Break Bonuses, Enchant: [x] Hands, [x] Back.
3. Click "Reforge"

How to Export your Reforge
1. Click "Reforgerade" to get some code that can be copy/pasted into Reforgerade WoW addon (in-game)
2. Click "Shopping List" to get a detailed list of what things you need to buy, and where to apply them.
-- or --
If you have the AMR addon installed, you can click AskMrRobot to get a compatible import string.

After reforging, under "Gear Compare", you can click "Armory" to generate a report to see all of the differences Catus is making relative to your current armory.

How to Reforge for Rune
However, if you like the Rune, the DPS difference is so small you could also go with [510] Rune + [536] Ebon. Reforging for Rune is just as easy:
1. Under "Reforger", click "Rune of Re-origination" tab
2. Settings should be: (At Least) 7.5% Hit/Exp, Range = 250, Overflow = 100, Gaps = 0, [x] Change Gems, [x] Break Bonuses, Gem Options: (Red), Enchants: [x] Hands, [x] Back.
3. Click "Reforge"
4. Then, click "Minimize Cost"
5. Follow the instructions above to apply the reforging in-game.


Note: As an oversight, "Smart Reforge" uses Red gem mode for 1:1:1 reforger. v32 will trust the gem color setting currently selected in the reforger (but ignore other settings.) Currently, you can use "Use Reforger Settings" to force it use Yellow (but both reforgers need to be setup appropriately.)
Edit: This issue has been fixed.

Posts: 769
Joined: Tue Oct 23, 2012 7:15 am

Re: Edgy/Raffy's Official Catus Thread

Postby raffy » Thu Feb 27, 2014 8:30 pm

(posted for reference)
Research: Reforging and Stat Weights (non-Rune)

I often see "Agility > Master > Crit > etc..." posted, but there rarely is an explanation concerning it's origin. It's actually like this for many classes/specs, for PvP or PvE, low or high item-level, somewhere someone established what the relative priority was and converted it into "A > B > C". However, a good rule of thumb for gaming (or competition in general):
-- don't assume the common answer as correct;
-- in addition to reading others' research -- do your own;
-- and understand the origins and methodology.

The Foundation
Imagine you have the choice of two different flasks: +1000 Agility and +1000 Mastery -- which is better? Well let's pick one flask (Agility) and beat on a target dummy for a while, then swap to other flask (Mastery) and beat on the target dummy again. Depending on which flask gave more DPS, we'll know (for our gear/skill/etc) if Agility > Mastery.

In-game experimentation is limited to the customization available to you -- if you wanted to try a +2000 Agility vs +2000 Mastery, this might not be possible because no flask/potion/gear option(s) exist. Additionally, if you scale back/change gear, your other stats change as well: your hit/exp might change, you might lose a set bonus or a trinket proc. Conveniently, simulation makes this trivial, we can add any amount of extra stat we want, we can maintain hit/exp, and we can always have the necessary bonuses and procs.

Let's generalize our flask example above: imagine we have any flask we want, from -1000 to +1000 Agility and -1000 to +1000 Mastery. No longer is it sufficient to ask: which is better, because the answer is conditional. 10 Mastery might beat 2 Agility, but 666 Agility might beat 900 Mastery.

One Dimension
So let's just consider one flask at a time. Try each flask from -1000 to +1000 Agility and record our DPS. The hope is that we get some kind of linear-ish function. Let's fit a line to our data and see if it's reasonable (see plot.) I've indicated that a +1000 gain (going from the -500 to +500 flask) results in a 100K dps increase, since the results are linear, this implies that each stat is worth about 100 DPS.

Two Dimensions
Returning to the scenario with two flasks, we can consume one flask of each (like +300 Agility and -200 Mastery) and then record our DPS. Note: we no longer have data that can be plotted in one-dimension, instead we have two dimensions of input (Agility, Mastery) which map to a certain amount of DPS. Similar to how we can fit a line to the one-dimensional example, we can fit a "plane" to the two-dimensional example.
Note: if you look at this plot straight-on from either delta (where you can't see the depth caused by the other delta), it appears exactly like the one-dimensional case.

Assumption: Local Linearity
The fact that we can model the one-dimensional case as a line and the two dimensional case as plane (and higher dimensional cases as a hyperplane) is important because it greatly simplifies the implications. For example, if the one-dimensional data wasn't linear, then going from 10000 to 11000 Agility (gain of +1000) might result in 2000 DPS, but going from 9000 to 10000 Agility (also a gain of +1000) is only 1500 DPS. This would mean that in addition to your stat weights, you need an additional piece of information.

It's definitely true that a [450] Cat has completely different stat weights than a [580] Cat, but a [582] Cat (+1000) or a [572] Cat (-1000) is probably very comparable to a [580] Cat. In a topological sense, the stats are "locally" smooth even if they have higher-order scaling. This is similar to how the Earth feels flat to us (humans) even though the Earth is a sphere -- locally, the surface is approximately a flat plane. The same feeling is true regardless of us standing on a large planet (580) or a small moon (450).

Assumption: Local Independence
When we were only testing a single stat with flasks ranging from -1000 to +1000 Agility, there were only 2001 possible situations (including 0 Agility). However, when we moved to testing two flasks, there become far more than 4002 situations -- there are actually more 4M (2001^2) permutations! If we were testing 4 different stats, 16 trillion (2001^4) permutations! So to make the problem a bit more tractable, we can assume that stats don't effect each other. This allows us to test Agility by itself and then test Mastery by itself.

Since we have local linearity, local-independence is a reasonable assumption, however it's clear from the damage equations, many stats (Agility and Mastery specifically) have synergistic value. For example, if we know 1 Agility = 2 Mastery, even though 1000 Agility = 2000 Mastery, it would probably be better to have 500 Agility and 1000 Mastery.

Stat Weight Simulation
Catus (and Simc) compute stat weights using the "delta" method. For each stat we want to test, we drink a small flask of that test and then record our DPS. Since we already know that even if our stats are fixed, our DPS follows a distribution and can't be represented properly by a single value, we repeat this process a bunch of times. Some stats have breakpoints when you change them. Hit has no value beyond 7.5% and Expertise is less valuable beyond 7.5% and has no value beyond 15%. For these stats, instead of drinking a flask that increases our Hit or Expertise, we can drink a flask that reduces it.

Basic Instructions
1. import your kitty
2. setup your buffs/debuffs/etc
3. find "Simulator: Stat Weights"
4. check the stats you want to simulate
5. recommended: force cap of 7.5% for both Hit/Exp (the Hit/Exp stats don't have to be enabled for their caps to be applied)
6. recommended: [x] Agility, [x] Weapon Damage, [x] Mastery, [x] Haste, [x] Crit
7. click "Generate Weights"

Iterations = # of simulations to perform per stat.
Delta = amount of stat increase (ie. the size of the "flask" as described above)
Inert = some stats require specific values, Rune for example requires 1:1:1 reforge with Mastery as the highest. Using "Inert Deltas" prevents the new stats from influencing the 1:1:1 breakpoint. Inert stats are similar to the Mastery buff (+3000 Mastery) which is invisible to the Rune proc equation.
Force Cap = ignore your current Hit/Exp, set Hit/Exp equal to the provided cap.
Group = Mastery/Haste/Crit are grouped into one (if delta = 900, +300 of each)

Report Example
Code: Select all
[Weights] (DPS/Stat)
Name                    DPS   Stdev    Gain   Error  Weight   Error  Delta
Baseline             452.5K  23.02K       0     728    0.00    0.81 
Agility              463.8K  23.82K  11.23K    1048   12.48    1.16  +900 Agility
Weapon Damage        458.0K  23.96K    5493    1051    6.10    1.17  +900 Weapon Damage
Critical Strike      456.9K  24.84K    4369    1071    4.85    1.19  +900 Crit
Haste                455.3K  23.49K    2726    1040    3.03    1.16  +900 Haste
Mastery              455.2K  22.95K    2643    1028    2.94    1.14  +900 Mastery

Note: there is a section called [Import String] which contains the stat weight information in a format that is accepted by the (Import Weights) button in the "Maximize Stats" reforger in Catus. You can copy/paste this text to quickly import the new weights.

Iteration and Stability
Since we've made a bunch of locality assumptions, the biggest problem with stats weights is that they only are valid if they don't cause your gear to change much. If you're currently reforged with (Agility = 6, Mastery = 3, etc...) and the simulator suggests similar weights, and when you reforge with the new weights nothing changes, then you're locally optimized! However, if your results suggest (Mastery = 10, Agility = 3, ...), when you apply this reforge, your stats will shift by thousands of stat points, much much larger than the simulated delta (typically about 1000.) If this happens, you need to recompute your stat weights (using the same process) and try again. It's possible to get stuck in a loop: start with Agility as best, sim say Mastery is best, reforge to Mastery, sim says Agility is the best, ... This means your delta is not sized correctly.

Stat Weight Simulation: Heroic
As I hinted at above, there's a better way to calculate the stat weights. The delta simulation (except when Group is enabled) does not record DPS information for combinations of stats. Even though we have a linear and independence assumption, we still might be poorly approximating the gain achieved when more than one stat is increased at a time.

The (Sample Space) button does the following: it randomly picks a flask [-Delta, +Delta] for each of the selected stats, drinks them all, and records the DPS. It then gives you a CSV file with the simulated results and unique stat deltas.
Code: Select all

Similar to the two-dimensional example above, you can think of these as 4-dimensional points (Agility,Mastery,Haste,Crit.) It's difficult to plot this properly (4+1 = 5 dimensional data), but you can make multiple two-dimensional plots to help visualize the data: Agility & Mastery, Agility and Haste, Agility and Crit, etc...

Least Squares (source)
Least Squares is an algorithm for finding the "best fit linear hyperplane". You can perform this analysis in Excel, Matlab, Mathematica, etc. Essentially, we're trying to solve the equation DeltaDPS(a,m,h,c), where a = Agility, m = Mastery, h = Haste, c = Crit, such that given some permutation of (a,m,h,c), it can produce an estimate of the expected DPS.
Code: Select all
DeltaDPS(a,m,h,c) = Wa * a +  Wm * m + Wh * h + Wc * c

The equation is linear with regard to 4 weights: Wa, Wm, Wh, and Wc. Since the data won't fit perfectly (and simulation results have randomness), we try to minimize the difference across all examples between the predicted DPS and the observed DPS.

Comparison: Least Squared Fit vs Observed DPS
Pretty good fit across 40K DPS range using [-900,+900] deltas.

Earlier discussion: viewtopic.php?f=3&t=4574&start=725#p20119

Posts: 769
Joined: Tue Oct 23, 2012 7:15 am

Re: Edgy/Raffy's Official Catus Thread

Postby raffy » Thu Feb 27, 2014 8:56 pm

Buffs, Debuffs, Temporary Effects, Consumables, and Combat Preparation
There's 6 major components of Catus, I'd like to talk about #3 (and #5.)
1. equipment, weapons swap, talents, glyphs
2. reforger
3. primary settings: buffs, debuffs, temporary effects, consumables, and combat preparation
4. encounter
5. secondary settings: rotation, internal features, hotfixes
6. simulators, calculators


The Basics
Starting from a blank Catus configuration ([ctrl]+N or [alt]+<green arrow>), there's only two things you need to do before you can simulate. Import a Druid (which loads the stuff covered under component #1) and setup the primary settings (which puts the stuff covered under component #2 to their defaults.)

- Hover over most Catus interface elements for tooltip information!
- Self buffs do not include Crit because Crit is provided by Leader of the Pack. For example, if you have Crit selected, even if you exit Cat form to cast Wrath or Hurricane (and lose LotP) you'll still have Crit. This is probably wrong if you raid 10s and you're the only Crit provider.
- "Always Bleeding" means all targets always have a bleed on them. This is probably true in 25s, but less in 10s. When disabled, a target is bleeding only if your bleeds are active.
- "Always Weakened" means someone else is supplying Weakened Armor.
- The icon for Heroism can be clicked to toggle it to Drums of Rage, clicking again toggles it back.
- "Proc Reset" determines the state of your trinkets before combat. Random is appropriate for simulating a segment of a fight mid-combat.
- "Default Finisher" applies to your first finisher used. Forcing FB tries to FB before applying Rip; forcing SR puts up a long SR. This is interesting when you have 4pc bonus.
- Opener: "Advanced" does the Aggixx opener, but requires 4pc and SR glyph.
- If you don't use a pre-pot, don't have a potion selected in Combat Prep!
- Most Temporary Effects are autocast on cooldown. Some are automatically aligned to a nearby Heroism or major cooldown.
- Lifeblood (Herbalism) gives you haste which can screw with your 1:1:1 reforge.
- When in doubt, use Simulator: Combat Log to see what it's doing.
- If you feel you screwed something up, "Reset Preferences" under "Internal Features" will reset Catus to the original settings.
- Click the "Heroic", "Normal", "Raid Finder", "Season X" item difficultly label to get a secret menu for similar items.
- Holding down [alt] for lots of things does something different (see tooltips)
- Easiest way to load/save/exchange gear is click (Edit) in the Equipment panel and copy/paste

Shortcuts (ctrl = command key on Mac)
[ctrl+I] = import from armory
[ctrl+N] = new config (appended at end)
[ctrl+T] = clone config (inserted beside selected config)
[ctrl+W] = delete config (also closes most dialogs now)
[ctrl+D] = sim: distribution
[ctrl+L] = sim: combat log
[ctrl+G] = compare gear vs. armory (v32+)
[ctrl+E] = sim gear vs. armory (v32+)

Noob Mode
Under "Internal Features" you'll find a toggle for Noob Mode. This locks all your settings as the recommended defaults and hides the corresponding interfaces. This is recommended if you don't give a fuck and just want some numbers! RAWR

Custom Set Bonuses
Another lesser known feature under "Internal Features" is the toggle for "Override Set Bonuses". This replaces the standard "Set Bonuses" panel with a new interface that has checkboxes for all bonuses that exist in the CatusGear.txt file. When this feature is enabled, the set bonuses provided by your gear are ignored and only those bonuses selected are utilized.

Posts: 769
Joined: Tue Oct 23, 2012 7:15 am

Re: Edgy/Raffy's Official Catus Thread

Postby raffy » Thu Feb 27, 2014 10:03 pm

Rune of Re-Origination Reforge Tutorial

0. download Catus
1. import your druid (you can just enter your druids name or paste an armory url)
2. show "Reforger", and click "Rune of Re-Origination" tab
3. make sure it says "Rune of Re-Origination Detected!", if it doesn't, you don't have a Rune equipped :)
4. setup the reforger (see screenshot)
5. click "Reforge"
6. results show up in a menu after reforging, best one is automatically selected
7. click "Minimize Cost", to allow Catus to shuffle your gems/enchants/reforges around to reduce the number of changes required

OK, I like my reforge -- now what?
1. show "Gear Compare", click "Armory" to diff your gear relative to your armory
2. click "Reforgerade" to export the reforging (requires Reforgerade addon)
3. click "Shopping List" to export the gear changes
If you use AskMrRobot addon, click "AskMrRobot" to get the import string.

You can use "Copy Stats" to export your latest reforging to a nice human-readable string.

Additional Information
You can enter Hit/Exp as percentage: "7.5%", "15%", or w/e.
You can click the Hit/Exp value on the stat line above the reforger to toggle it between rating and effective-%.

- if you're [560+], "Yellow" is probably better (you can simulate it)
- otherwise go with "Red"
- if you're low item-level and Red is giving you issues, try "Orange"
- "Yellow (No Agi)" forcibly avoids Agility (but gives you maximum secondaries, not recommended)

WTF do these other settings do?
- Range: the amount of "play" that can exist between your Hit and Exp
- Mastery Overflow: the amount of "play" that can exist between Mastery/Haste/Crit
- Haste/Crit Gaps: if you have a proc that provides secondaries (Lifeblood, Windsong, etc..) you can enter that in as the Gap, such that it finds a 1:1:1 reforge, where the difference between Mastery and the stat you gapped is at least the size of the gap.
- Keep Colors: matches your existing gem colors (if they exist)
- Leave Empty: no gems will be placed into empty sockets (like if you changed to Blacksmith but aren't high enough yet to socket your Wrist/Hands)
- Crit > Haste: additionally forces that your Rune procs Crit when in Bear form.

The bar of checkboxes at the top of the reforger indicates if the slot is mutable. When unchecked, the gems/enchants/reforge of the slot are untouched. A green label means the slot is currently reforged. A disabled checkbox indicates the slot is unreforgable (no secondaries or no item equipped.)

I'm having problems!
As mentioned above, if you're low item-level the Orange gem option will help (if you're currently using Red.)
There are two reforging errors:
1. "Found zero solutions. Try relaxing hit/exp constraints" => make the "Range" bigger, like 250.
2. "None of the hit/exp solutions met your criteria" => make the "Overflow" bigger, like 1000.

You can use "Find Bounds" to resolve more complex issues. For example, there are certain combinations of gear where it is not possible to reduce your Crit or Haste below the highest achievable Mastery. Find Bounds will show the minimum and maximum values for each stat. A minimum of 3000 Hit (w/o Gems and Enchants) means that there is physically no way to get your Hit any lower than 3000.

Posts: 769
Joined: Tue Oct 23, 2012 7:15 am

Re: Edgy/Raffy's Official Catus Thread

Postby raffy » Fri Feb 28, 2014 5:07 am

Catus v32 almost ready!
(earlier post)
- minor simulator features: disable mastery, disable critical strikes, disable armor specialization, disable berserk
(working towards an attempt to emulate guardian cat form)
- stat weight reforger won't include int/sp if hotw isn't enabled
- simulator: distribution time distribution segments (typically 5sec) can be manually specified
- added more quick compare benchmarks, like: "Red vs Yellow"
- spam FF mode
- item-level scale simulator has more options
- various bug fixes

I've been working on a bunch of Catus tutorial/guides to address reoccurring questions. Links can be found in the first post.

I updated my PG Wave 30 research. I found something odd with Faerie Fire. I did my original sims with "Always Weakened" by mistake, so I switched it over to "Use Faerie Fire". Expecting an even worse result, the damage went up! My guess is that there's some alignment issue with 1minute fight at [463] and/or FF (when we're so energy deprived) is actually an OK filler (even though the sim only casts it when there's almost nothing else to do, average of ~3 FF's per wave of 1-minute.) I'm going to experiment with a "Spam Faerie Fire" option, to see if using it more frequently helps.
Code: Select all

Some v32 Screenshots:
You can test different 1:1:1 reforging modes inline:

A lesser known feature: Quick Compare Benchmarks. I'm working on this feature now:

If you click PvP Resilience under "Cat Stats", you get a DR table:

PvP Trinkets now work:

Customizable Time Dist Segments:

Quick Restore Slot from Armory:

Documented Smart Reforge:

Inline Documentation for Encounter Script. I expect to add some more features too:

More Faerie Fire Options:

More Feature Toggles, including MoP Racials (grain of salt):

Header Colors:

- for shits, I added Dodge (wi/DR, works for Guardian too), Base Movement Speed (w/forms), and Total Base Crit Dmg Multiplier to Cat Stats
- implemented movement speed stat, added/fixed boot enchants, MoP NE Racial, etc..
- I noticed Sejta uses two Amp trinkets, so I fixed this. This resulted in finding a few bugs in my stat calculations due to stats scaling modifiers incorrectly applying to base stats (doesn't effect 99.99% of Catus results.) I think I've fixed the issue relative to what I can test. I will revisit all of this stuff in Catus2 once more MoP stuff comes out.
- agile meta was fucked in v31, and is now properly fixed

Catus2 will be open-source and I'll keep the project on github once the basic framework is established. Possibly I'll use Catus2 as a teaching example for programming or at least provide some more technical analysis and breakdowns. I have a bunch of experimental simulators (from earlier frustrations with current codebase) but I'm going to start fresh again for WoD. As stated earlier, the primary goal of Catus2 will be an extremely advanced simulator and moving beyond the action list.

Posts: 769
Joined: Tue Oct 23, 2012 7:15 am

Re: Edgy/Raffy's Official Catus Thread

Postby raffy » Mon Mar 03, 2014 6:43 am

Updated to Catus v32
I didn't get as far as I wanted: the PvP simulation stuff didn't make it, along with the scaling item-level simulator. I'll try again later this week.

If I broke something:

I updated the mega-screenshot: (huge version)

User avatar
Posts: 1066
Joined: Fri Nov 25, 2011 7:49 pm

Re: Edgy/Raffy's Official Catus Thread

Postby aggixx » Mon Mar 03, 2014 11:52 am

Thanks for taking the time to assemble those guides raffy, I'm sure they'll be helpful to link to if I can remember they're here! ;)

Posts: 769
Joined: Tue Oct 23, 2012 7:15 am

Re: Edgy/Raffy's Official Catus Thread

Postby raffy » Mon Mar 03, 2014 4:11 pm

@aggixx, they're a little late but a good framework for the future.

Proving Grounds: Wave 30 (research)
I never quite figured out what's up with FF. It's not a bug, the armor and stuff is correctly applying/fading. I added a bunch of FF options to help diagnose it. The more aggressive FF options are progressively worse (so it's not a trigger/proc thing.)
- No Faerie Fire: never cast, assume no one else did
- After Fading: cast FF with high priority after it has faded
- Before Fading: refresh FF right before it fades with low priority smartly, or cast with high priority afterwards
- Use Faerie Fire: original option, very low priority half way through duration, or cast with high priority afterwards
- More Faerie Fire: refresh whenever, low priority
- When Available: refresh always
- Always Weekend: never cast FF, assume someone else did

So it's something with alignment (pushing the opener back 1-sec) and/or slightly distorts the value of bleeds/direct for the better. I need to look at more combat logs to figure out what's really going on.

I slightly improved the [x] Cooldown Delay option. As a quick hack, if the duration is less than 1min, it will delay Springs; if less than 30sec, it will delay TF. By using 40sec cooldown delay for Wave 30, Springs is aligned with Berserk/TF at the ~43sec mark. This is worth a decent bit of DPS. To do this in practice, you'd need to decouple Springs from TF (which is how I do it at least) so you don't accidentally burn it on the first TF when the -50% aura is active. In the future, this feature will be more intelligent, and just block all cooldown use within their recharge window of the specified cooldown delay expiration.

I also added "@40 potion" to the [x] Encounter Script to promptly use a potion right as the damage multiplier kicks in. Catus has difficulty automatically using a potion for such a short fight. It can't properly estimate the expected time of death with such non-linear DPS. Since the fight is only 1-minute, you can only use 1-potion. The pre-pot works as expected, but is wasted. The combat-pot is auto-casted around the 55sec mark which is way too late. A potion at 00:40 makes a kill much more likely. Edit: I guess this should actually be @35 to maximize the potion value.

Other Stuff
I'd encourage use of the inline-Quick Compare in the Rune reforger (I'll add one to the Maximize reforger in v33.) The way it works is: instead of hitting Reforge to apply the reforge, you can hit (Quick Compare) to do the reforge in the background and then simulate against it. This way, you can load your Cat in, either keep it the same or reforge it to whatever, and then try another reforge and compare the two easily. The simplest use case: being Red reforged, setting the gem mode to Yellow, and then doing a quick Compare.

Under "Simulator: Quick Compare", I added a few more special benchmarks: "Rune: Red vs Yellow", "Meta: Capac vs Agile" (no reforge though), and some Racials ones. I fixed a bug with these tests too. In the past "Troll vs Worgen" was properly setting up the simulator with two different races, but I forgot to forcibly enable Berserking. So it was actually running Worgen w/1% crit vs Troll w/nothing. Troll comes out ahead now in this matchup. You could of always just run two simulations and changed the race manually to avoid this bug.

User avatar
Posts: 1066
Joined: Fri Nov 25, 2011 7:49 pm

Re: Edgy/Raffy's Official Catus Thread

Postby aggixx » Tue Mar 04, 2014 11:36 am

raffy wrote:@aggixx, they're a little late but a good framework for the future.

But, "is A > B?" is timeless!

Posts: 769
Joined: Tue Oct 23, 2012 7:15 am

Re: Edgy/Raffy's Official Catus Thread

Postby raffy » Tue Mar 04, 2014 4:45 pm

Sun Apr 21, 2013 10:26 pm
raffy wrote:Edit: yeah, I need some instructions for stuff. I'll add that soon.
aggixx wrote:Silly Raffy didn't include install instructions :lol:

re: A vs B
Wed May 08, 2013 11:55 am
raffy wrote:Next update will finally have the one-click "Gear DPS: A vs B" feature

However, I think the first (but terrible) implementation of AvsB was in v14:
And only really got implemented in v29:

Posts: 2
Joined: Mon Feb 10, 2014 6:24 pm

Re: Edgy/Raffy's Official Catus Thread

Postby bordino » Sun Mar 16, 2014 11:19 am

hi can you please help me? im trying make good dps but i dont know what is wrong. when i check combatlogs top dps they have avg ticks 200k+- and avg critc 400k+-. my dot tick abou 100+- and crit 200+-k. i know my equip is not best but i think is posibble make more dmg with. ... 703&e=3048 ... ino/simple

thx for all tips

Posts: 769
Joined: Tue Oct 23, 2012 7:15 am

Re: Edgy/Raffy's Official Catus Thread

Postby raffy » Sun Mar 16, 2014 8:17 pm

Gear: you look solid. I'd swap those +480 Mastery gems with +320 Agility.

Raid Makeup: you have 2 Shamans and 1 Warrior. You have full raid buff and debuff coverage. You didn't use potions(s). However, I don't see Skull Banner in your buffs and you only got 3 (of 4) possible Stormlashes (not that it matters though.)

Cooldowns: the fight is 5:54, so that's 12 TFs and 2 Berserks, you used 8 and 2. You should definitely use TF more.

Uptimes: your Rune (12%) and Haromm (14%) percentages are low, you got shafted by rngesus and there's not much you can do about this. SR (99%+), Rip (84% could be higher), Rake (92% decent but could be higher), and Thrash (71%, too high.)

Catus: I use mostly defaults (disabled potion) and then setup the "Encounter" like this:

Catus damage breakdown:
Spoiler: show
Code: Select all
[Damage Distribution]
Name                Hit#     Avg     Min     Max   Crit% Crit#     Avg     Min     Max     #     Avg    All%
.Rip`5              80.8  141078   64065  299045  49.87%  80.3  261162  128130  598089 161.1  200959  22.42%
.Rake               58.0  138687   60480  291114  49.14%  56.0  256918  120959  582228 114.1  196787  15.54%
Melee              229.3   24436   10455   40201  51.59% 244.3   56549   31604   80402 473.6   41002  13.44%
.Thrash/Cat         76.2   49466   21591  142453  51.48%  80.9   92489   43182  284906 157.1   71616   7.79%
Swipe               27.3   90983   37975  187573  55.63%  34.3  185983  106639  375809  61.6  143830   6.14%
Multistrike        253.9   30411    2305  221102   0.00%   0.0       0       0       0 253.9   30411   5.35%
Rake                20.4  128404   60480  291114  49.10%  19.7  237688  120959  582228  40.1  182061   5.05%
Flurry of Xuen     132.9   15802    6914   25565  51.87% 143.2   32709   19277   51130 276.1   24571   4.70%
Thrash/Cat          31.2   74110   29260  195633  50.73%  32.1  136419   58519  391266  63.3  105722   4.63%
Mangle              23.3   89246   56308  195999  52.15%  25.4  180302  110993  393453  48.6  136735   4.60%
Lightning Strike    25.9   61754   56373   86844  51.72%  27.7  127548  112745  173688  53.6   95783   3.56%
Shred               12.2  118506   69509  235665  51.87%  13.2  240509  139025  472153  25.4  181788   3.19%
Ferocious Bite`5     1.9  177187  140353  331484  78.01%   6.8  367704  268741  663451   8.7  325815   1.95%
.Rip`4               4.2  165516  107252  239473  39.92%   2.8  348518  214503  478947   7.0  238573   1.16%
Stormlash           20.0   26613   14080   53083  14.91%   3.5   52205   28161  106165  23.5   30430   0.50%

[Dense Damage Distribution]
Name                                    #      Avg    Crit%     All%
Rip                                 168.2   202530   49.45%   23.58%
Rake                                154.1   192959   49.13%   20.59%
Melee                               473.6    41001   51.59%   13.44%
Thrash/Cat                          220.4    81415   51.27%   12.42%
Swipe                                61.6   143829   55.63%    6.14%
Multistrike                         253.9    30410    0.00%    5.35%
Flurry of Xuen                      276.1    24570   51.87%    4.70%
Mangle                               48.6   136734   52.15%    4.60%
Lightning Strike                     53.6    95783   51.72%    3.56%
Shred                                25.4   181788   51.87%    3.19%
Ferocious Bite                        8.7   325814   78.01%    1.95%
Stormlash                            23.5    30429   14.91%    0.50%
These match your numbers pretty closely.

Catus Rip damage table:
Spoiler: show
Code: Select all
 Power Average    Tick    Crit     AP  Crit% Bleed  #
 4.58x  445486  299045  598089 109905  49.0% 4.04x  5  DoC  TF  DS  RoR<530>  HT<574>
 4.38x  426075  288814  577628 105903  47.5% 4.04x  4  DoC  TF      RoR<530>  HT<574>
 3.98x  387379  260039  520078 109905  49.0% 4.04x  4  DoC      DS  RoR<530>  HT<574>
 3.81x  370500  251143  502286 105903  47.5% 4.04x  3  DoC          RoR<530>  HT<574>
 3.52x  342682  230034  460069 109905  49.0% 4.04x  4       TF  DS  RoR<530>  HT<574>
 3.37x  327750  222165  444330 105903  47.5% 4.04x  3       TF      RoR<530>  HT<574>
 3.06x  297984  200030  400060 109905  49.0% 4.04x  3           DS  RoR<530>  HT<574>
 2.95x  287036  210360  420720  75213  36.4% 4.04x  4  DoC  TF  DS  RoR<530>         
 2.93x  285000  193187  386373 105903  47.5% 4.04x  2               RoR<530>  HT<574>
 2.78x  270186  200130  400259  71211  35.0% 4.04x  3  DoC  TF      RoR<530>         
 2.57x  249597  182922  365844  75213  36.4% 4.04x  3  DoC      DS  RoR<530>         
 2.44x  237331  143116  286231 109905  65.8% 1.94x  4  DoC  TF  DS            HT<574>
 2.41x  234945  174026  348051  71211  35.0% 4.04x  2  DoC          RoR<530>         
 2.34x  227215  138220  276439 105903  64.4% 1.94x  3  DoC  TF                HT<574>
 2.27x  220797  161815  323631  75213  36.4% 4.04x  3       TF  DS  RoR<530>         
 2.14x  207836  153946  307892  71211  35.0% 4.04x  2       TF      RoR<530>         
 2.12x  206375  124448  248897 109905  65.8% 1.94x  3  DoC      DS            HT<574>
 2.03x  197579  120191  240382 105903  64.4% 1.94x  2  DoC                    HT<574>
 1.97x  191997  140709  281418  75213  36.4% 4.04x  2           DS  RoR<530>         
 1.88x  182562  110089  220178 109905  65.8% 1.94x  3       TF  DS            HT<574>
 1.86x  180727  133866  267732  71211  35.0% 4.04x  1               RoR<530>         
 1.80x  174781  106323  212645 105903  64.4% 1.94x  2       TF                HT<574>
 1.63x  158750   95730  191459 109905  65.8% 1.94x  2           DS            HT<574>
 1.59x  154344  100673  201347  75213  53.3% 1.94x  3  DoC  TF  DS                   
 1.56x  151984   92455  184909 105903  64.4% 1.94x  1                         HT<574>
 1.50x  145454   95777  191554  71211  51.9% 1.94x  2  DoC  TF                       
 1.38x  134212   87542  175084  75213  53.3% 1.94x  2  DoC      DS                   
 1.30x  126482   83285  166569  71211  51.9% 1.94x  1  DoC                           
 1.22x  118726   77441  154882  75213  53.3% 1.94x  2       TF  DS                   
 1.15x  111888   73675  147350  71211  51.9% 1.94x  1       TF                       
 1.06x  103240   67340  134680  75213  53.3% 1.94x  1           DS                   
 1.00x   97294   64065  128130  71211  51.9% 1.94x  0                               

 1. SR          +40% Damage
 2. Debuffs     +4% Damage

 1. DoC         +30% Damage
 2. TF          +15% Damage
 3. DS          +1650 Agility
 4. RoR<530>    +40422 Mastery, -10094 Haste, -10117 Crit
 5. HT<574>     +14303 Agility

- Your Rip ticks are 104K non-crit (77) and 208K crit (66) for 152K average.
Code: Select all
Name                Hit#     Avg     Min     Max   Crit% Crit#     Avg     Min     Max     #     Avg    All%
.Rip`5              80.8  141078   64065  299045  49.87%  80.3  261162  128130  598089 161.1  200959  22.42%
- Catus Rip ticks are 141K non-crit (80) and 264K crit (80) for 202K average.

According to the Catus Rip table:
Code: Select all
 Power Average    Tick    Crit     AP  Crit% Bleed  #
 1.59x  154344  100673  201347  75213  53.3% 1.94x  3  DoC  TF  DS                   
 1.56x  151984   92455  184909 105903  64.4% 1.94x  1                         HT<574>
 1.50x  145454   95777  191554  71211  51.9% 1.94x  2  DoC  TF         
- Your average snapshot is something like DoC+TF or a single-trinket proc (without DoC or other buffs)
Code: Select all
 Power Average    Tick    Crit     AP  Crit% Bleed  #
 2.12x  206375  124448  248897 109905  65.8% 1.94x  3  DoC      DS            HT<574>
 2.03x  197579  120191  240382 105903  64.4% 1.94x  2  DoC                    HT<574>
 1.97x  191997  140709  281418  75213  36.4% 4.04x  2           DS  RoR<530>         
- Catus average snapshot is something like DoC+Trinket

Your Actions: ... 703&e=3048
using: [{"eventTypes": [6], "actorNames": ["Bordino"]}]

- maximize your TF usage
- since you're killing Sha under 6 minutes, I would delay your 2nd Berserk until you get good proc alignment.
- reduce your Thrash use
- increase your Rip and Rake uptimes
- it is rare that you want to Mangle, Shred, Swipe, or FB when Rune proc is active

You're consuming PS too fast. I see countless examples in your combat log where you apply a finisher, and then immediately cast Healing Touch. You want to use your PS proc as late as possible, something like this:
(1) use a combo-point generator until you have 5 combo points
(2) sit at 5 combos and pool energy for a bit
(3) use your finisher at high energy
(4) generate combo points again. Note: you're on a clock, you have ~7 seconds.
(5) ideally at 4 or 5 combos, cast Healing Touch
(6) if at 4cp, Rake and then do a finisher
(7) if at 5cp, do a finisher and then Rake
In either case, you need to be aware of your bleed damage; don't clip a bleed thats significantly stronger than your new bleed.

You aren't getting a lot of value from snapshotting, which implies you aren't getting a lot of value from DoC.
(1) make sure you have an addon that can show bleed strength -- I'd suggest Stenhaldi's Weak Auras
(2) play HotW instead of DoC, so you can focus on maximizing the bleeds you snapshot. The nicest thing about HotW is that whenever a new Rake would out-damage your existing Rake, you can clip it, whereas DoC depends on your remaining DoC charges + time-horizon of PS+HT.
(3) take a look at the Catus Mangle vs Rake table. For example, on your opener you cast Ravage, then all your stuff procs, and you cast Rake, but then you Mangle spam. RoR Rake destroys Mangle in damage + plus it refreshes the snapshotted value.
Code: Select all
 Spell  Power Average     Hit    Crit     AP  Crit%  #
  Rake  3.47x  333594  223934  447868 109905  49.0%  4               TF      DS  HT<574>  RoR<530>
Mangle  1.36x  130788   87795  175590 109905  49.0%  4               TF      DS  HT<574>  RoR<530>

Posts: 2
Joined: Mon Feb 10, 2014 6:24 pm

Re: Edgy/Raffy's Official Catus Thread

Postby bordino » Mon Mar 17, 2014 1:46 pm

thx for help

User avatar
Posts: 1066
Joined: Fri Nov 25, 2011 7:49 pm

Re: Edgy/Raffy's Official Catus Thread

Postby aggixx » Fri Mar 21, 2014 8:38 pm

Here's an off the wall idea for you raffy: Have you ever thought of being able to "import RNG" from a log into a simulation. I know that probably makes no sense but let me explain: you would point Catus towards a log somehow (Warcraft Logs I suppose) and it would take the length of the fight, as well as the timestamps for all of the procs (Trinkets, Dancing Steel, maaaybe Omen too?) and apply them to the simulation. In addition, you could also import the timestamps and uptimes of raid buffs and debuffs that are outside of the druid's control (Physical Vulnerability, Skull Banners, Storm Lashes, etc). With this, you could almost directly compare your performance with the simulators in an almost identical situation.

Example: You think you played poorly on a fight, but you had almost 40% uptime on your Ticking Ebon Detonator, putting your parse far above the mean DPS for your gear. You want to know how much DPS the simulator would have done in the same situation, so you import the log into Catus and it simulates a couple hundred or thousand iterations with the exact same trinket uptimes at the exact same parts of the fight as you, theoretically giving you a direct comparison to the actual parse.

I believe using the information available in Warcraft Logs you could also have identical boss HP descension which means that BitW trinket alignment would be the same between the parse and sim. You would have to do fixed fight duration, of course though, otherwise you'd end up with a rubberbanding effect where low DPS iterations would spend a significantly higher proportion of the fight in BitW compared to the parse.

Posts: 769
Joined: Tue Oct 23, 2012 7:15 am

Re: Edgy/Raffy's Official Catus Thread

Postby raffy » Fri Mar 21, 2014 10:25 pm

Yeah, I can add this. I'll experiment first with Warcraft Logs. It all depends on how easily I can parse out the data from their site.

For example, if you gave me dump with something like this, I could have this working in a few minutes.
Code: Select all
00:00 HP 409901203
00:01 Proc 139116 // rune or whatever
00:03 Proc 135700 // omen
00:04 Proc 118334 // dancing
00:05 HP 409901199 // boss hp sampled every few sec
05:43 HP 0

I plan on having something like this in Catus2. Edit: this as in better tools to compare to in-game performance.

Check back later tonight.

Posts: 769
Joined: Tue Oct 23, 2012 7:15 am

Re: Edgy/Raffy's Official Catus Thread

Postby raffy » Sat Mar 22, 2014 3:10 am

I added it as another Encounter option:

You currently just need to enter the report Id and you have access to all of the druids in the report. By default, it will use the Patchwerk action list, and sync up boss health, Heroism, Potion, and procs.

It's a mess to parse the data. I expected more data to be visible via JSON but I'm currently stuck parsing the HTML.

User avatar
Posts: 1066
Joined: Fri Nov 25, 2011 7:49 pm

Re: Edgy/Raffy's Official Catus Thread

Postby aggixx » Sat Mar 22, 2014 2:21 pm

Wow, impressively fast implementation :D I look forward to trying it out.

Probably an important thing to add would be to stop the actor when they die and start again if they receive a resurrection, although I'm sure that could prove challenging depending on how you have your code structured.


Return to Kitty DPS

Who is online

Users browsing this forum: Google Adsense [Bot], scorpio0920, Yahoo [Bot] and 3 guests