Lifebloom - A Restoration Druid Analysis Tool
For descriptions of each variable in the dataset and a definition of Rotation, please see the Data Dictionary section below.
A "rotation" is the sequence of spells that the Druid casts, either while maintaining Lifebloom on the tank(s) or not. For an introductory overview on rotations, I'd refer you to SixPacKyx's WowHead guide under the "Rolling Lifebloom: Advanced Restoration Druid Healing Rotation" section, and additionally giansm's Elitist Jerks guide under the "Healing Strategies" section.
To help discuss rotations more easily, I've created a standard notation for rotations: xLB yI zRG
- x: The number of tanks you are rolling Lifebloom on during a rotation.
- y: The number of instant cast spells used during a rotation (Rejuv, Swiftmend, Lifebloom on non-tanks, etc.)
- z: The number of Regrowth casts used during the rotation.
To illustrate, here are a few examples:
- 1LB 1I 1RG - A typical unhasted 1 tank rotation. The Druid refreshes Lifebloom on the tank, uses an instant cast spell (perhaps refreshing Rejuv on the tank), and casts 1 Regrowth.
- 2LB 2I 0RG - A typical unhasted 2 tank rotation. The Druid refreshes Lifebloom on two tanks and uses two instant cast spells, but does not cast any Regrowths.
- 0LB 0I 5RG - The Druid does not cast Lifebloom on any tank, but instead casts Regrowth five times in a row.
| Adjusted Rank |
Name | Server | Region | Duration | HPS | Haste | Spirit | Total Healers |
Innervates | Shadow Priest |
Rotating on Tank |
Primary Rotation |
Report Link |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Loading data... | |||||||||||||
Report Analyzer
Community Theorycrafting
Rotation Theory & Haste Breakpoints
As a Restoration Druid maintaining Lifebloom on a tank, your healing follows a rotation cycle - the sequence of spells you cast between Lifebloom refreshes. Since Lifebloom has a 7-second duration, you have a limited window to weave in additional heals before needing to refresh it.
This write-up provides a deep dive on rotations and haste breakpoints. The intent with this post is to explain what rotations are possible at different breakpoints. Which rotations are optimal in any given situation is outside the scope of this post.
Rotation Mechanics
For an introductory overview on rotations, I'd refer you to SixPacKyx's WowHead guide under the "Rolling Lifebloom: Advanced Restoration Druid Healing Rotation" section, and additionally giansm's Elitist Jerks guide under the "Healing Strategies" section.
To help discuss rotations more easily, I've created a standard notation for rotations: xLB yI zRG
- x: The number of tanks you are rolling Lifebloom on during a rotation.
- y: The number of instant cast spells used during a rotation (Rejuv, Swiftmend, Lifebloom on non-tanks, etc.)
- z: The number of Regrowth casts used during the rotation.
To illustrate, here are a few examples:
- 1LB 1I 1RG - A typical unhasted 1 tank rotation. The Druid refreshes Lifebloom on the tank, uses an instant cast spell (perhaps refreshing Rejuv on the tank), and casts 1 Regrowth.
- 2LB 2I 0RG - A typical unhasted 2 tank rotation. The Druid refreshes Lifebloom on two tanks and uses two instant cast spells, but does not cast any Regrowths.
- 0LB 0I 5RG - The Druid does not cast Lifebloom on any tank, but instead casts Regrowth five times in a row.
In the following sections, I'll only be tabulating single-tank rotations (1LB yI zRG), but equivalent 2-tank and 3-tank rotations can be done by exchanging an instant cast with a tank lifebloom,
- [1LB 3I 0RG] = [2LB 2I 0RG] = [3LB 1I 0RG]
0 Spell Haste Rating
For most of the expansion (all of t4, t5, and some of t6) you'll have no haste. These rotations will be your bread-and-butter for most of your time in TBC, so get familiar with them!
| Rotation | Instants | Regrowths | Time Used | Buffer |
|---|---|---|---|---|
| [1LB 1I 1RG] | 1 | 1 | 5.0s | 2.0s |
| [1LB 0I 2RG] | 0 | 2 | 5.5s | 1.5s |
| [1LB 3I 0RG] | 3 | 0 | 6.0s | 1.0s |
| [1LB 2I 1RG] | 2 | 1 | 6.5s | 0.5s |
| [1LB 1I 2RG] | 1 | 2 | 7.0s | 0.0s |
However... Experienced players will raise an eyebrow at the above list. Why? Because we're missing an extremely important part of the conversation...
Latency
In theory, the above 5 rotations are possible at 0 haste. In practice, latency (ping) limits your options. When you cast a spell, you must wait for the server to register it before your next cast. This creates an effective "Server GCD":
Effective GCD by Ping
| Normal GCD | Ping | Effective GCD |
|---|---|---|
| 1.50s | 0ms | 1.50s |
| 1.50s | 50ms | ~1.55s |
| 1.50s | 100ms | ~1.60s |
| 1.50s | 150ms | ~1.65s |
Rotation Viability by Ping
| Rotation | 0ms | 50ms | 100ms | 150ms |
|---|---|---|---|---|
| [1LB 1I 1RG] | ✓ | ✓ | ✓ | ✓ |
| [1LB 0I 2RG] | ✓ | ✓ | ✓ | ✓ |
| [1LB 3I 0RG] | ✓ | ✓ | ✓ | ✓ |
| [1LB 2I 1RG] | ✓ | ✓ | ✓ | ✗ |
| [1LB 1I 2RG] | ✓ | ✗ | ✗ | ✗ |
Hyjal / BT / Zul'Aman Haste Breakpoints
Haste Formulas
GCD = 1.5 / (1 + Haste Rating / 1577) Regrowth Cast Time = 2.0 / (1 + Haste Rating / 1577)
As you begin to acquire haste from gear, new rotations become possible. With one or two items you'll quickly be able to cast [1LB 1I 2RG].
With Hyjal / BT you can expect to collect at most around 230 Haste (good luck getting those rings and cloak 🙂). With just a few items you'll unlock the often mentioned "5-GCD" rotation, [1LB 4I 0RG], which can be a fun rotation to do on Illidari Council.
Less often mentioned, you'll unlock [1LB 0I 3RG] at about the same haste level. Though Hjal/BT offers a lot of haste options, there's not much point going beyond the 113 Haste breakpoint, as the next breakpoint isn't realistically reachable until Zul'Aman releases.
With the release of Zul'Aman, you can get up to about 300 Haste rating, allowing you to comfortably cast [1LB 3I 1RG], though you'd be very lucky to collect that much Haste gear before the release of Sunwell!
Minimum Haste Required by Latency
| Rotation | 0ms | 50ms | 100ms | 150ms |
|---|---|---|---|---|
| [1LB 1I 2RG] | 0 | 11 | 23 | 35 |
| [1LB 4I 0RG] | 113 | 125 | 137 | 150 |
| [1LB 0I 3RG] | 113 | 125 | 137 | 150 |
| [1LB 3I 1RG] | 225 | 238 | 251 | 265 |
Sunwell Plateau Haste Breakpoints
With Sunwell gear, significantly higher haste values become achievable, unlocking additional rotations. From gear alone you can expect to get around 400 Haste rating, giving you access to [1LB 2I 2RG].
However, with Sunwell we also get access to the Quick Lionseye gem (+10 Spell Haste), allowing you to reach a little over 500 Haste and access to [1LB 5I 0RG] and [1LB 1I 3RG].
Minimum Haste Required by Latency
| Rotation | 0ms | 50ms | 100ms | 150ms |
|---|---|---|---|---|
| [1LB 2I 2RG] | 338 | 352 | 366 | 380 |
| [1LB 5I 0RG] | 451 | 465 | 480 | 495 |
| [1LB 1I 3RG] | 451 | 465 | 480 | 495 |
| [1LB 4I 1RG] | 563 | 579 | 594 | 610 |
To go... Even further beyond...
With Bloodlust/Heroism active (30% haste buff), you'll have access to rotations that would otherwise not be possible from gear alone. At higher haste values, the GCD becomes capped at 1.0s, creating a 6.0s rotation window:
Below are a set of minimum haste ratings needed to do these set of rotations while under Bloodlust. The last example, [1LB 0I 6RG], is not possible even with max Haste and Bloodlust.
Minimum Haste Required by Latency (with Bloodlust)
| Rotation | 0ms | 50ms | 100ms | 150ms |
|---|---|---|---|---|
| [1LB 4I 1RG] | 70 | 82 | 93 | 106 |
| [1LB 3I 2RG] | 156 | 169 | 181 | 194 |
| [1LB 6I 0RG] | 243 | 339 | 445 | 565 |
| [1LB 2I 3RG] | 243 | 265 | 289 | 314 |
| [1LB 1I 4RG] | 364 | 383 | 404 | 424 |
| [1LB 0I 5RG] | 445 | 462 | 479 | 497 |
| [1LB 0I 6RG] | 849 | 869 | 890 | 911 |
Rotation Unlock by Haste
The following chart visualizes when each rotation becomes available as you acquire more haste:
Wrapping Up
Hopefully this gives you some impression about the amount of complexity in Resto Druid. But don't worry, it gets worse! Here's a couple points to consider:
First, just because you can reach the breakpoint for a new rotation, it doesn't mean that you should. This write-up only covers what is possible, not what is good. What is possible and what is optimal are two completely different questions. I say that because a very important constraint has been left out of this conversation entirely: mana. Just because you've unlocked a new Regrowth-heavy rotation doesn't mean that you have the mana to do it. The complexity of Resto Druid does not come from knowing what rotations there are, but which one to do given the specifics of the encounter and your situation.
Second, layered on top of that, the same kind of rotation can actually serve different purposes. As a simple example, consider [1LB 1I 1RG]. You put Lifebloom on the tank, but what do you do with your instant and Regrowth cast? Should they also go onto the tank, or elsewhere?
You'll meet some purists in the community who will tell you that all GCDs go on the tank. "That's your job." You'll meet other healers that just neglect the tank and put their GCDs onto the raid instead. What will you do?
Here's my opinion: what you choose to do with your GCDs is up to you, every seven seconds. No other healer in TBC has the level of flexibility combined with direct throughput that a Resto Druid has, and that becomes a superpower once you learn how to use it. Thanks for reading!
- Mercy
About
About Lifebloom
Lifebloom is an application that collects and structures TBC Resto Druid data from WarcraftLogs in order to help facilitate retrospective data analyses by and for the community. This app is still in development in preparation for the next iteration of TBC Classic.
Motivation
The Burning Crusade is almost 20 years old! 🎉
Despite so much time passing, I don't believe our collective understanding of Resto Druid has progressed significantly since 2007 - and not because the spec has been solved. With TBC Classic, I had hoped that the community would build upon existing knowledge from 2007 and the private server era, but instead what I observed was largely "re-discovery" and recycled guides, and very little theorycrafting or knowledge sharing.
To illustrate this, consider the following fundamental questions that I believe remain unanswered:
- For a given encounter, is there an optimal spell haste breakpoint?
- For a given encounter, is there an optimal healing rotation?
These questions appear straightforward, yet after 20 years neither has a definitive answer. Here's my hot take: traditional theorycrafting alone will never solve them.
The reason is multifaceted.
First, healer theorycrafting is inherently difficult. Raid encounters are complex environments with numerous confounding variables: healer count and composition, fight duration, access to Shadow Priest, etc. The optimal rotation for a 3-minute encounter may differ significantly from a 6-minute encounter due to mana constraints alone.
Second, the community is still split on whether HPS is a valid performance metric because of the confounding effects mentioned above. This has left us in a bit of a theorycrafting “quagmire” - without an objective measure of performance, players instead rely on intuition and subjective arguments about what is good or not. Intuition and experience can get you very far, but different players have different intuitions about what is "best". Layered on top of this is an uncomfortable dogma surrounding the topic of HPS, and just mentioning the word gets you harassed and dogpiled on. I think the community is wrong about HPS.
By analyzing large datasets while controlling for confounding variables we can isolate factors that you do have control over - rotation, playstyle, gearing choices, haste breakpoints, etc. across different encounters and conditions. I don't believe these fundamental questions are unanswerable, but we need a new approach. That is the motivation for this tool: combining traditional theorycrafting with data-driven analyses to address fundamental questions and to advance our understanding of the spec.