Remove Advertisements

A Call to Arms - Cataclysm Mechanics testing

Warning: Theorycraft inside.

Moderators: Fridmarr, Worldie, Aergis, theckhd

A Call to Arms - Cataclysm Mechanics testing

Postby theckhd » Wed Jul 28, 2010 7:31 am

I'm co-opting this old thread from the Cataclysm Beta forums so that we can keep all of the testing in one thread.

Cataclysm Mechanics Testing

The goal of this thread will be to ask and answer questions about game mechanics through empirical testing, in a very similar vein to the incredibly useful EJ thread. I'll keep a running list of the issues in this post, as well as links to the data relevant to those issues.

When posting data, please include as much information as is relevant to the problem at hand, but more is generally better. As a rule of thumb, include the following information:
  • AP
  • SP
  • Weapon tooltip damage (i.e. x-y)
  • Weapon tooltip speed (i.e. 2.6)
  • Weapon Name (so I can double-check that you haven't given me paper doll values)
  • Talent Spec
  • Glyphs
  • Dummy level

Many of these tests need to be done in very controlled environments to make sure that the analysis is accurate. It's generally good practice to find an isolated dummy and make sure they don't gain any external debuffs during testing (unless we specifically request a particular debuff, of course).

If you have questions about World of Logs, please take a look at the "WoL How-To" section at the bottom of this post. If all else fails, uploading a raw combat log with your post is acceptable as well.

Current Parse Requests:

  1. Souldrinker testing #1:
    • build : Prot-centric, with 3/3 Divinity
    • gear : naked, having equipped a non-enchanted Souldrinker
    • seal : Truth
    • target : any isolated level 60 dummy (no debuffs)
    • attack sequence : only autoattacks
    • goal : at least one hour of autoattacks
    Report : total HP, total AP/SP, upload the Combat Log.

  2. Souldrinker testing #2:
    • build : Prot-centric, with 2/2 Grand Crusader (no Glyph of Focused Shield)
    • gear : anything, having equipped a non-enchanted Souldrinker
    • seal : Insight
    • target : any (packed) group of level 60 dummies (debuffs are irrelevant)
    • attack sequence : autoattacks, CS on cooldown, AS on cooldown/GrCr proc
    • goal : at least 200 AS casts
    Report : nothing, just upload the CL.

  3. Souldrinker testing #3:
    • build : Holy-centric, with 0/2 Enlightened Judgements, 0/3 Divinity, 3/3 Rule of Law (use Glyph of CS)
    • gear : Holy gear (a ton of Intellect; very low crit rating; no hit/expertise), having equipped a non-enchanted Souldrinker
    • seal : Insight
    • target : any isolated boss-level dummy (no debuffs)
    • attack sequence : autoattacks, CS on cooldown, attacking from the front
    • goal : at least 300 CS casts
    Report : total HP, physical/spell crit chance, total hit/exp rating, total AP/SP, upload CL.

  4. Souldrinker testing #4:
    • build : anything Prot-centric
    • gear : anything, having equipped a non-enchanted Souldrinker
    • seal : Insight
    • target : any level 60 dummy (debuffs are irrelevant)
    • attack sequence : HotR as HPG, J, 1-HoPow SotR/Inq as finishers (avoid autoattacks to the best of your ability)
    • goal : at least 50 casts of J/SotR/Inq; stop at the first DL proc and switch to another tracked trigger
    Report : nothing, just upload the Combat Log

    Compiled Results on specific topics

    General PPM mechanics

    General Seal Mechanics
    • SoT/Censure++
    • SoR:
      • Triggers: CS, SotR, HoW (4.0.6p b13596)
      • Confirmed non-triggers: HotR, J, AS (4.0.6p b13596) EExo (4.0.6a live)
    • SoI:
      • Triggers: CS, SotR, J (100%?), HoW (4.0.6p b13596)
      • Confirmed non-triggers:AS, HotR (4.0.6p b13596), Exo (4.0.6a live).
    • SoJ
      • Triggers: CS, SotR, HoW (4.0.6p b13596)
      • Confirmed non-triggers: J, AS, HotR (4.0.6p b13596), Exo (4.0.6a live)

    General Ability Mechanics




    Testing Log: Current and Resolved Issues:


    1. [4.0 beta] general seal mechanics
    2. [4.0 beta] Hammer of the Righteous is not normalized
    3. [4.0 beta] glancing blows are WotLK-identical
    4. [4.0 beta] Grand Crusader / Sacred Duty proc only on trigger connects
    5. [4.0 beta] parryhaste is WotLK-identical
    6. [4.0 beta] Reckoning procs unnormalized, refresh Censure
    7. [4.0 beta] base armor of NPCs
    8. [4.0 beta] critical blocks still exist
    9. [4.0 beta] Judgements of the Just (1/2), (2/2) procs SoR/SoT, base Judgement does not.
    10. [4.0 beta] Judgements of the Wise scales with spell haste
    11. [4.0 beta] Avenger's Shield rolls for hit on a per-target basis
    12. [4.0 beta] PPM enchants proc off of melee, CS
    13. [4.0 beta] Windwalk Mechanics: 1 PPM on melee, No Internal Cooldown, Does not proc off of Censure
    14. [4.0 beta] Avalanche Mechanics: 5 PPM on melee, 20% from spells and Censure, ~10s ICD, Cons behavior on PTR?.
    15. [4.0 beta] Avenging Wrath and Inquisition are independent aura classes.
    16. [4.0 beta] PPM effects proc from AS (per cast), HotR (per cast), SotR
    17. [4.0.3a live] Mongoose Mechanics: 0.5 PPM, no ICD
    18. [4.0.3a live] Dummies are level 88
    19. [4.0.3a live] HotR's physical component cannot miss/dodge/parry, damage still not weapon-speed normalized
    20. [4.0.3a live] Sacred Duty and Grand Crusader cannot proc on misses, reconfirmed
    21. [4.0.3a live] DoT effects aren't affected by environmental auras "on the fly" (i.e. Inq), but on the next aura application/refresh of the respective DoT effect.
    22. [4.0.3a live] Eye for an Eye procs off of spells or spell-like abilities, regardless of damage type
    23. [4.0.3a live] Eternal Shadowspirit Diamond gives a flat 1% block value, additive with Holy Shield and base block (30%->31%, 40%->41%)
    24. [4.0.3a live] Glyph of SoI does not affect SoI or Mending heals, Divinity multiplicative with itself for both
    25. [4.0.3a live] WoG healing is multiplicative in Divinity, GbtL, and (SoI+WoG)..
    26. [4.0.3a live] Glyph of the Long Word ignores talent- and glyph-based modifiers.
    27. [4.0.6 PTR] HoW, Judgement, HotR(phys), Exo proc seals and stack Censure, AS/HoW/Cons do not. No change with Glyph of Focused Shield.
    28. [4.0.3a live] Judgement and JotJ both act as PPM proc triggers
    29. [4.0.3a live] Consecration does not gain extra ticks from haste effects
    30. [4.0.6 PTR b13482] HotR (phys), J, JotJ, Exo, HoW all stack Censure and proc SoT; AW, HW, Cons do not.
    31. [4.0.3a live] HotR (phys) is a standard two-roll attack, but doesn't generate combat log entries on miss/dodge/parry[/url], reconfirmed SD/GC behavior on misses (it doesn't proc).
    32. [4.0.6 PTR b13596] HoW triggers all seals
    33. [4.0.6 PTR b13596] JotJ no longer triggers any seal procs or Censure applications
    34. [4.0.6 PTR b13596] CS and HotR no longer grant Holy Power on miss/dodge/parry, HotR misses still not showing up in combat log.
    35. [4.0.6 PTR b13596] CS base is 135% weapon, as patch notes indicated
    36. [4.0.6 PTR b13596] WotL/Crusade/t11bonus are still additive
    37. [4.0.6 PTR b13596?] HoW triggers all seals, AS/HotR trigger only SoT
    38. [4.0.6 PTR b13596?] Judgement triggers SoI(100%?)/SoT/Censure++, but not SoR/SoJ. JotJ is 4.0.3a identical (SoR/SoT/Cens++).
    39. [4.0.6 PTR b13596?] Consecration ticks do not trigger Avalanche, cast is unconfirmed
    40. [4.0.6a live] Blade Ward is 1 PPM
    41. [4.0.6a live] Exo procs SoT, stacks Censure, erroneously procs an additional Censure tick on targets with <5 Censure stacks
    42. [4.1 live] Grand Crusader munches (new proc just refreshes duration).
    43. [4.1 live] Holy Power cap is 3, there's no temporary HP storage as with 4.0.3-era DivPurp
    44. [4.1 live] Grand Crusader has no ICD



WoL How-To:

I've started a maintankadin guild on World of Logs so that we have one central repository of uploaded logs. Anyone who's running dungeons or doing testing on beta is encouraged to record their combat log and upload. Creating a WoL account is quick and painless, as is the uploading process. In fact, if you prefer, you can just run the Java client in the background and "live log," which will upload as you play.

I'm going to be using this thread to post testing requests as well. And of course, all of the text in the original posting still goes as well - if you're interested in helping maintain the code, help is always appreciated.

To join the guild, register for an account. You'll have to activate the account by clicking a link in the e-mail they send you. At that point, you can log in, and you will be asked if you want to join a guild. The guild is maintankadin on US-Blackrock (your actual region and server are irrelevant). I'll approve everyone who joins and give them upload permissions.

Logging is easy:
WWS wrote:Start World of Warcraft and enter the game. At the beginning of the raid, dungeon or solo testing session you want to create a report for, type /combatlog into the chat box, you should get a response saying "Combat being logged to Logs/WoWCombatlog.txt". When you're done with the raid, dungeon or solo testing session type /combatlog again. You'll get another response saying "Combat logging disabled". Log out of WoW and your combat log should be in the /World of Warcraft/Logs/ folder.


Uploading is simple - first download the client and run it. Put in your username/pass and your logs directory. Click on "Open File" and choose the WoWCombatLog.txt file. It'll take a bit of time to parse the log (the longer the log, the longer it takes), and eventually you'll get a screen with a graph and an "upload" button - just click on Upload and it will send the parse to the server. If you want to send only part of the log, you can use the graph to select the portions you want to upload.

Alternatively, you can upload-as-you-go by running the client before you record and clicking "Start a Live Report Session." This will watch the combat log as you play and upload to the server in small chunks whenever there's a break in the action.
Last edited by theckhd on Thu Sep 23, 2010 7:02 am, edited 2 times in total.
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
User avatar
theckhd
Moderator
 
Posts: 7753
Joined: Thu Jul 31, 2008 3:06 pm
Location: Harrisburg, PA

Re: A call to arms

Postby Rhiannon » Wed Jul 28, 2010 7:36 am

I can help out testing stuff.
Rhiannon
 
Posts: 1061
Joined: Mon Mar 03, 2008 8:17 am

Re: A call to arms

Postby Sabindeus » Wed Jul 28, 2010 8:43 am

http://www.youtube.com/watch?v=ocKbhbotJCk

if this is not the first thing you thought of upon reading this thread title then you are not a true Warcraft fan
Image
Turn In, an NPC interaction automator - http://wow.curse.com/downloads/wow-addo ... rn-in.aspx
User avatar
Sabindeus
Moderator
 
Posts: 10472
Joined: Mon May 14, 2007 9:24 am

Re: A call to arms

Postby Sabindeus » Wed Jul 28, 2010 8:57 am

In all seriousness though, how hard is MATLAB? It didn't look too bad from the few samples I've seen you post. Is there a set of docs I can read anywhere?
Image
Turn In, an NPC interaction automator - http://wow.curse.com/downloads/wow-addo ... rn-in.aspx
User avatar
Sabindeus
Moderator
 
Posts: 10472
Joined: Mon May 14, 2007 9:24 am

Re: A call to arms

Postby Chunes » Wed Jul 28, 2010 9:02 am

Sabindeus wrote:In all seriousness though, how hard is MATLAB? It didn't look too bad from the few samples I've seen you post. Is there a set of docs I can read anywhere?


This.

I'd love to educate myself in the ways of the matlab.
User avatar
Chunes
 
Posts: 2271
Joined: Thu May 08, 2008 3:46 pm

Re: A call to arms

Postby Marblehead » Wed Jul 28, 2010 9:07 am

Count me in. I can help with any aspect of this project.
Image
Life is not difficult, people are.
User avatar
Marblehead
 
Posts: 202
Joined: Sun Aug 02, 2009 9:28 pm
Location: Bloodhoof (EU)

Re: A call to arms

Postby Invisusira » Wed Jul 28, 2010 9:12 am

Sabindeus wrote:http://www.youtube.com/watch?v=ocKbhbotJCk

if this is not the first thing you thought of upon reading this thread title then you are not a true Warcraft fan

:transformers voiceover:
User avatar
Invisusira
Moderator
 
Posts: 9021
Joined: Sat Oct 06, 2007 6:23 pm
Location: alt-tabbed

Re: A call to arms

Postby Modal » Wed Jul 28, 2010 10:13 am

Sabindeus wrote:http://www.youtube.com/watch?v=ocKbhbotJCk

if this is not the first thing you thought of upon reading this thread title then you are not a true Warcraft fan


Is it ok if A Call to Arms: The Plaguelands was the first thing I thought of?
Image
Modal
 
Posts: 557
Joined: Thu Jan 24, 2008 1:36 am

Re: A call to arms

Postby Sabindeus » Wed Jul 28, 2010 10:16 am

no
Image
Turn In, an NPC interaction automator - http://wow.curse.com/downloads/wow-addo ... rn-in.aspx
User avatar
Sabindeus
Moderator
 
Posts: 10472
Joined: Mon May 14, 2007 9:24 am

Re: A call to arms

Postby Grehn|Skipjack » Wed Jul 28, 2010 10:27 am

You've got me for testing and occasional data mining, provided I can read the matlab code properly.
Image
The Seeker.
User avatar
Grehn|Skipjack
Maintankadonor
 
Posts: 4529
Joined: Tue May 27, 2008 8:53 am
Location: Malorne

Re: A call to arms

Postby Gerunna » Wed Jul 28, 2010 11:05 am

I'm by no means an expert, but I did use Matlab a fair bit in some of my MS classes (aero/hydrodynamics mostly). I'd be more than happy to pitch in, just need to make sure I can still find my install disk.
ImageImage
Gerunna
 
Posts: 213
Joined: Mon Jun 09, 2008 11:52 am

Re: A call to arms

Postby theckhd » Wed Jul 28, 2010 1:31 pm

Sabindeus wrote:In all seriousness though, how hard is MATLAB? It didn't look too bad from the few samples I've seen you post. Is there a set of docs I can read anywhere?


It's not really very hard at all, at least for this project. I don't use anything too complicated, so we're mostly talking about loads of additions and multiplications. For example:

Code: Select all
ap=floor((base.ap+gear.ap+2.*(str-10)+extra.ap+buff.example).*(1+0.2.*buff.example));
sp=gear.sp + extra.sp + floor(str.*0.6.*talent.tbtl) + int./int_to_sp + buff.example;


This looks like basically any other programming language. The only difference is that MATLAB is designed to work with matrices (hence MATrix LABoratory), so it has a different operator for element-by-element operations than it does for matrix operations. In the above example, every time you see a ".*", it indicates an element-by-element multiplication.

So dissecting that code snippet, we're calculating our total ap. We take our base ap, add ap from gear, add ap from strength (less the first 10), and any extra ap I want to add (dummy variable for generating scaling plots), plus AP we get from an example buff (not yet implemented). There's also a multiplicative factor and a floor() function.

As for documentation, the entire help system is online. It's the same documentation you get in MATLAB via F1. Most of what I know about MATLAB was learned by reading the help file and messing around.

<edit> Temporary storage

Code: Select all
[list=1][*]Parses of our abilities at several AP/SP values.  At the moment, I primarily need:
[list][*]Exorcism on live (low priority)[*]HoW on PTR (low priority until we're certain the nerfs are intentional)[/list]
Instructions:
[list=1][*] Find an isolated dummy with no debuffs.
[*] Equip a particular gear set, ideally one with no procs to speak of and no set bonuses.
[*] Record and upload a parse containing 50-100+ casts of each ability, the more the better.
[*] Link the parse here or in the MATLAB thread, along with all of the following information (any parses that [i]don't[/i] include this information are effectively useless to me):
[*]Repeat this process for several gear sets with widely varying AP/SP.  Ideally I'd like one with low AP/SP, one with high AP / low SP, and one with low AP / high SP.  Even better if you can equip items such that one of the stats is the same between parses (i.e. equip a bunch of INT gear to raise SP without changing AP at all).[/list]

</edit>
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
User avatar
theckhd
Moderator
 
Posts: 7753
Joined: Thu Jul 31, 2008 3:06 pm
Location: Harrisburg, PA

Re: A call to arms

Postby Sabindeus » Wed Jul 28, 2010 1:54 pm

theckhd wrote:As for documentation, the entire help system is online. It's the same documentation you get in MATLAB via F1. Most of what I know about MATLAB was learned by reading the help file and messing around.


Sure, but if I learn this, it won't be using the commercial MATLAB, but one of the free ones, so having the docs somewhere reachable is a pretty big deal. :)
Image
Turn In, an NPC interaction automator - http://wow.curse.com/downloads/wow-addo ... rn-in.aspx
User avatar
Sabindeus
Moderator
 
Posts: 10472
Joined: Mon May 14, 2007 9:24 am

Re: A call to arms

Postby theckhd » Wed Jul 28, 2010 2:10 pm

The free variants have almost exactly the same syntax, so it should be basically the same. Again, I'm not using many fancy functions in here, just multiplications and additions. The only tricky thing in my mind is getting used to recognizing ".*" as a multiplication operator.

Really, I could just write "A*B" for most of the math and it would work out fine. But for some of the simulations, I want to pass arrays to generate plots. MATLAB by default uses A*B to mean matrix multiplication, whereas I'd want element-by-element multiplication. The operator for that is ".*", and similarly for division ("./").

That example might also be a bit confusing because I'm using structures fairly heavily in the new version. A structure is just an easy way to clump variables together for organizational purposes. So for example, i have a "base" structure that contains all of our base stats: base.str is our base strength, base.agi is our base agility, and so forth. Similarly, I have a "gear" structure that contains our total stats from gear, so gear.ap is our AP contribution from gear, gear.str is our strength from gear, etc.

I could have stuck with the old system of having separate variables for everything: base_str, base_agi, gear_agi, gear_str, gear_ap, and so on. From the code's perspective, there's little difference. But for me, the structures are far more powerful. As an example, if I want to see a rundown of our stats from gear, I can just type "gear" at the command line and it'll spit everything out. If I wanted to do that in the old system, I'd have to type out each one individually.

Even more impressive: There's an "egs" structure, which stands for "Eqiuppied Gear Set." It's a structure array, or an array of ~34 structures, one for each slot of gear and each enchant. Each individual structure contains the stats of the item in that gear slot. In the old system, if I wanted to know the total amount of STR on our gear, I'd have to type something like:

total_str = head_str + neck_str + shoulder_str + ....

In the new structure, it's this:
total_str = sum([egs.str])
"Theck, Bringer of Numbers and Pounding Headaches," courtesy of Grehn|Skipjack.
MATLAB 5.x, Simcraft 6.x, Call to Arms 6.0, Talent Spec & Glyph Guide 5.x, Blog: Sacred Duty
User avatar
theckhd
Moderator
 
Posts: 7753
Joined: Thu Jul 31, 2008 3:06 pm
Location: Harrisburg, PA

Re: A call to arms

Postby Phonic » Wed Jul 28, 2010 3:06 pm

Hey theck, I don't have a huge surplus of time or anything, but I'd be happy to be a tester since I don't want my beta access to be a complete waste. :D
User avatar
Phonic
 
Posts: 206
Joined: Wed Jun 25, 2008 7:52 am

Next

Return to Advanced Theorycraft and Calculations

Who is online

Users browsing this forum: No registered users and 1 guest


Remove Advertisements

Who is online

In total there is 1 user online :: 0 registered, 0 hidden and 1 guest (based on users active over the past 5 minutes)
Most users ever online was 380 on Tue Oct 14, 2008 6:28 pm

Users browsing this forum: No registered users and 1 guest