Wednesday, June 22, 2011

Sinestra opinions

I`ve been neglecting this page for a while so here I am back. Last week we manage to finish off Sinestra, thus acomplishing our goal of clearing all 3 endbosses before Firelands.
This tier was incredibly grindy and tiresome, however Sinestra was an enjoyable fight, and this helped quite a lot with morale.

We have a video of the kill:


 

We had about 115 wipes before getting it down, not a bad number! (Conclave of Wind and Nefarian took us more) Our logs are public, can be seen on our WoL page.

Overall, this encounter was pretty good. It`s also my favourite style of encounter, in terms of tuning. By having multiple DPS checks throughout the fight, it`s made quite challenging without adding over 9000 one-shot mechanics. The DPS checks become easier with gear, thus providing adequate scaling of the encounter (without making it an insanely long grind, like Nefarian). The orbs are also pretty cool, because they aren`t trackable via combat log, thus no addons, which in turn makes them a cool awareness check.
Sinestra was a good ending of this tier, "redeeming" it quite a bit. I hope more fights in Firelands are tuned similar to her.

Sinestra strategy tips

The purpose below isn`t to write a strategy guide as those can be found easy via the web. Instead, I will detail a bit about a few of our "highlights" and way of thought.

1. Wrack dispelling

Dispelling Wrack is a stressful and difficult part of the encounter. I worked together with Posix (our dispeller, who did an exemplary job, /bow) and in the end we had a pretty good plan for it.
What we did was to make sure that the first victim lives past 20 seconds (by using Hand of Sacrifice in a rotation, and Guardian Spirit when available), and then let it tick for around 14-16 seconds on the next two victims. This was pretty well-established and we sticked to it pretty much every try. It`s a safe plan, because for these timings, breaths won`t come at dangerous times.
After Wrack was on 4+ people, we just did single-target dispels, letting Wrack about 10 seconds on each target (GCDs taken into account, so some lasted more, some less, but around 10). It went a lot better with single-target dispels instead of Mass Dispel, simply because it was far more controlled. This was very helpful in P3.
The scary moment comes at the third breath, because at that point Wrack ticks are high due to timing. We used raid cooldowns (more on this below).
In my opinion, the most important thing about Wrack isn`t the exact tactic itself, but having a very clear plan which involves as little decision making as possible from the dispeller. He/she has orbs to dodge too! There are some addon settings to be done as well, we used Sinestra Wrack Helper for monitoring wracks.

2. Raid cooldowns

The biggest part here (for us) was having 3 warriors rotating Rallying Cry for every 3rd breath after a Wrack, because at that point Wrack ticks + breath was a very risky combo. Like this, Phase 3 was incredibly safe for us, and we never lost people to "just damage" - it was either orbs or dispel problems.
We also had a DG ready for the first breath in P3 (when we just get in position from P2), and after the buff was gone we thrown everything else: Aura Mastery, Tranqs, etc. That part wasn`t as scary as it first seemed (in terms of raid damage), but that was mainly because we had Wrack completely under control.

3. DPS benchmarks

From the start, we aimed to push P2 before a second wrack and P3 within one egg phase. This was doable for us with 6 healers, but at first we used 5 simply to get the hang of the fight and have an easier time with P1. However, it helps in P3 to have 6 healers.
For the eggs, it helped to have 4 of the 6 healers helping with DPS too, and we assigned all mages on one side because they have incredible burst. This way, that side could get away with 1 less DPS and melee got some extra help on the Spitecallers.

When it comes to orbs, each raid will have it`s own tactic. The key is to play safe, if everything is executed properly, the DPS benchmarks aren`t hard to beat at this point (due to gear), so there is no need for risks.


If you are currently working on Sinestra now, good luck before Firelands!

Friday, June 3, 2011

Guide: World of Logs analysing

More and more raid leaders these days start using some form of log analysing tool in order to check their raid`s performance. I`m going to explain below some simple steps about how this is done, and also provide some insight about how to use this tool to find out as much information as possible, beyond the simple DPS and HPS values.
If you are already comfortable with World of Logs, I`d recommend skipping to sections 4 and 5.

1. Introduction 

The main element here is the WoW combat log. To put it shortly, every combat event is being stored in the combat log, with all the info relevant to it (timestamp, source, target, event details). This can be saved into a .txt file - namely WoWCombatLog.txt in the WoW\Logs\ folder - in order to be parsed by log analysing tools (such as World of Logs). It`s important to note that the file doesn`t get cleared by itself, so if you want to clear the contents of the log file, you`ll have to manually delete it.
In order to start logging, the only thing that needs to be done is to type /combatlog in WoW. From that point, all combat log data is being saved into the .txt file. If you type /combatlog again, the saving is disabled. Sounds simple enough, right? Not really. You will have to remember to do /combatlog every time you start the raid, turn it off after each raid, and if by any chance you relog or disconnect, you`ll have to remember to start the log again. This last point especially is a pain, because there are multiple other things you need to worry about when coming back from a disconnect.
Fortunately, the addon makers have something very useful here - LoggerHead. This addon is amazing for the job. What does it do? It keeps track of your preferences of in-game areas in which you want to start the log. These will be the raid areas (and of course any other zones if you are interested in them). If you enter one of those said zones, it starts the logging automatically, and if you exit, it stops it. It also turns it on after a relog/disconnect, so the problems above are gone.
You can download LoggerHead from Curse: here is the link. It`s pretty straight forward to use, when entering a new zone, it will prompt you whether you want to toggle combat logging on for that zone or not, and then it saves your preference.

2. Getting started with World of Logs

World of Logs is an excellent site which provides high quality log analysis. In order to use it, you will need to create an account there. No worries, it`s free! Once you`ve sorted your account, add your guild in there as well. There is a help page if you encounter any difficulties with that.
Now let`s get started with the real business. Start the WoL Client from the Client button on the upper right. Once you started, you`ll have three options:
  • Open file - use when you want to upload a specific file (see more on log splitting in section 3)
  • Open WoW log - use when you want to upload the whole WoWCombatLog.txt
  • Live report session - use when you want to create a live report raid 
Of the three, I would recommend the live report feature. It has multiple advantages and no real disadvantage. In order to use it, just start it when the raid is about to get started. If your combat log is enabled, then you`re good to go. The report will auto-update itself periodically, and you will be able to check what happens after each wipe. There is no micro-management needed, the live report takes care of everything.
In case you forgot to start the live report, you can also upload after a raid. The process can be a bit more complicated, however. World of Logs currently supports a file which covers a timespan of at most 12 hours. Seeing as the WoWCombatLog.txt file doesn`t get cleared by itself, you may end up with multiple raids (which span across multiple days) in the same file, and you won`t be able to upload that to WoL.
Fortunately, there is a fix for that as well! The WoWMeterOnline client is able to do log splitting. WoW Meter Online is another website for log analysis, but for this guide I will focus on World of Logs. The reason I`m mentioning the WMO client is that we can use it in order to split the WoWCombatLog.txt file into smaller .txt files, which are each corresponding to a day. In order to do that, just open the WMO client, open your WoWCombatLog.txt file, and press Split Log. Once completed, in the same WoW\Logs\ folder you will notice several other files named WoWCombatLog_MM_DD_HH.txt, where MM stands for month, DD stands for day and HH stands for hour. For example, WoWCombatLog_05_25_20.txt stands for the part of the combat log which started at 20:00 on the 25th of May. Basically, this tool splits the combat log file into each individual raid.
Going back to the WoL client, you can use the Open file option in order to select the particular raid you wish to upload. This way you won`t have any problem with the 12 hour limit, because each log is less than 12 hours long... you don`t raid more than 12h at once, do you? :D
The WoL client help page can be useful if you encounter any difficulties.

3. Overview of the report interface

Once you`ve opened the report, you`ll be taken to the main report page. From there, you can navigate to find the things you are interested in. I will use one of my guild`s reports as an example from now on.
Click here for our raid on the 29th of May.
Below the WoL logo, there is a bar showing the name of the guild, date and time of the report, Dashboard, Full Report, Players, Creatures.
The last four are used for navigation. From the menu dropping down from Dashboard, you can select the feature you want to analyse. The Full Report menu allows you to select which fight you want to check (it breaks down per each wipe/kill). The Players and Creatures menus are quick navigations to players/creatures pages, which display their damage/healing done/taken, buff/debuff details, and death reports.

Example 1:
Let`s see the damage meters for our Magmaw kill. All that needs to be done is to select Damage Done from the Dashboard menu, and Magmaw 25H from the Full Report menu.

Example 2:
Let`s check why we wiped on Cho`Gall try 6. We can use the Damage Done board still, because it shows a graph of the encounter, and we can toggle raid member deaths on that graph. After selecting Cho`Gall try 6, make sure that the Show Player Deaths is toggled on (it`s one of the 5 buttons at the right of the graph).
You`ll notice a thick red bar towards the end, mouse-overing that will display who died and the last 3 damaging events. We can see from there that we took a lot of damage from Spraying Corruption, this is what happens if you don`t kill the Corrupting Adherents in time (before the black blob summon). Basically, that is a wipe.

Example 3:
Let`s check the raid member deaths on the embarassing Omnotron try 3. Select Death Overview instead of Damage Done. This will display all the raid member deaths, for each death displaying the last 3 damaging events. We can see some Flamethrower lack of heals, but mainly a lot of missed interrupts on Arcane Annihilator.
This page is very useful in determining cause of deaths, as sometimes in the middle of a try it can be difficult to see what exactly happened. We had a lot of situations in which we would assume something happened, and after checking the logs we realised it was something completely different.

The WoL report help page can provide some useful information as well.

4. The Expression Editor (XE)

The biggest strength of the WoL report, in my opinion, is the Expression Editor. It operates as a log query, in which you specify which parameters you are looking for. It is a bit code-ish, but the syntax is simple and the usefulness is huge.
Let`s use our Cho`Gall try 5 as an example here. Open up Expression Editor instead of Death Overview. You will notice a white textbox labeled as Query, that`s where you input what you are looking for.
Let`s start with something easy: seeing who got hit by the shadow crashes.
For that, type the following in the box and press Run.
spell = "Corrupting Crash" 
You will notice a list of results, which show when the Adherents would cast the spell, and who took damage from it. We aren`t really interested to see when they cast it, so you want to filter out those results so it only displays damaging events. For this, we are going to add another condition: the type must be a damage type. The query turns into:
spell = "Corrupting Crash" and type = TYPE_DAMAGE
After running the query, we can notice that only the actual shadow crash hits remained; success! Our tactic involved mages getting to 100 corruption, so they took them on purpose. Except mages, they were bad play mistakes.

Let`s further analyse to see if we let any Depravity casts go through. For that, we modify the query as follows:
( spell = "Corrupting Crash" or spell = "Depravity" ) and type = TYPE_DAMAGE
The brackets are added to match the logical sense of the expression. We are looking for damaging events which are either Corrupting Crash or Depravity. After running the query, we can see that one cast of Depravity was missed, leading to another big damage spike on the raid.

The WoL XE guide explains the syntax in more detail, so it`s a very good read. Such an analysis is very accurate in terms of what happened, this is why it`s very valuable. One of the downsides is that building the queries is time consuming, so it`s not really easy to do this during a raid. Another downside is that not everything can be tracked in the combat log (like spells which do not have a targeting or debuff component, for example Sinestra`s orbs).


5. Conclusion (with example)

When analysing wipes, the most important thing is to know what you are looking for. Let`s take an example with Omnotron wipes. Taking one wipe at a time, the first thing to do is to see the deaths. I prefer using the Damage Done tab for this, simply because the graph looks nice and shows a relative time in the encounter when the deaths occured. However, the Death Overview tab works good as well (as long as you are careful with timestamps). There is no "golden rule" to determine the main reason of wipes, you`ll have to use intuition and check each individual death.
There are many causes of death in this encounter. From the last 3 damaging sources, look for any of these (which are "critical", so to speak).
  • Arcane Annihilator - this is an interrupt failure; you need to look into interrupts
  • Arcane Blowback - the player stood in the exploding pool, their own fault
  • Static Shock - someone attacked Electron`s shield, finding out who did this is very difficult even in XE; just tell people to be careful and watch their pets too
  • Backdraft - Magmatron`s barrier was blown up, tell people to mind their dots and swap faster.
  • Flamethrower - the main cause of death was the flamethrower; this needs to be looked more carefully to determine whether it was a healing failure, lack of an external cooldown, or some additional damage in between.
  • Poison Bomb - this means a poison bomb blew up near the person; it`s important to note that it wasn`t necesarly his fault, so you`ll have to analyse in detail to see who actually blown up the bomb.
Based on the above, the issues that need additional analysis are interrupts, flamethrower and poison bombs.

Interrupts:
This part is pretty messy, the best thing to do here is just to make sure that the interrupters actually have a proper rotation and they know what is going on. Tracking it through log is quite difficult, this is my best idea of a query:
spell = "Arcane Annihilator" or fulltype = SPELL_INTERRUPT
This way you will see all the casts, all the interrupts and all the hits from the spell. Based on that, with a bit of patience, you can see who missed their interrupt. Don`t forget to take latency into account, the spell may show as interrupted, even if it hit some people afterwards; this is because of client-server lag, the spell will register as interrupted and still go off. It`s not a bug, it just means that the interrupter was slow with it.

Flamethrower:
My opinion on this one is to check Deaths Overview tab, because it shows everything (it is a bit clumped up though). By going to Death Overview, and checking the more button next to the death report, you can see everything that happened in the last few seconds. Toggle buffs and debuffs from the button which looks similar to PW:Fortitude, and check for the following points of interest:
  • whether the target was standing in a Chemical Cloud (thus, 50% increased damage taken)
  • whether the target took an external cooldown (like Pain Sup, Guardian Spirit, etc)
  • whether the target took enough heals by the healers assigned to that job
Poison Bombs:
This one is easier. The thing to note here is that the poison bomb blows up when it melees it`s target (including dodge/parry/miss/immune); in order to dig this from the combat log, we use spellId = 0 condition. Another thing is to check if an original bomb target died or used Vanish/Feign Death, because this will cause the bombs to go by threat and behave weird - someone who isn`t a bomb target won`t expect that he suddenly became a bomb target without having any debuff indicator to show that.
So we are going to look for who the bombs target (the spell name is Fixate), if anyone died, used Vanish or Feign death, and if the bombs actually did hit a melee target.
The final query is a bit complicated:

  ( spell = "Vanish" or spell = "Feign Death" ) 
  or 
  ( fulltype = UNIT_DIED and targetType = "Player" ) 
)
or
( spell = "Fixate" and fulltype = SPELL_CAST_SUCCESS )
or
( sourceName = "Poison Bomb" and spellId = 0 )

This is going to show the results we are after. From here, we can conclude the following. If the bomb hit a player they targeted, then that player should pay more attention to the Fixate debuff. If the bomb hit a player that wasn`t targeted, then either the original target died (in which case we look into that death), or the original target used Vanish or Feign Death (in which case we ask the rogue/hunter in question not to use that skill when the bombs are around).

As you can see, such an analysis takes time even for one wipe, so analysing 20 wipes is going to take a long time. As such, you will have to find a good balance of which tries you analyse, and at what time you do it. What decision you take is entirely up to you, but with an analysis like the above you can be nearly certain that you are providing the correct facts to your raiders, and there is no room for speculation. This is, in my opinion, very important when raid leading. People may react badly to naming and shaming when they don`t feel they are particularly guilty.


I hope this guide was useful to you. If you want to add something, or if you want to ask help regarding a particular encounter and query, use the comments below.