Sunday, December 15, 2013

WoW: PRESS ALL THE BUTTONS! Convergent Design in Class Mechanics

In many MMOs, WoW being a very prominent one, there’s the
idea that classes should be relatively unique. I mean, what’s the point of
playing a Priest if the class feels like playing a Mage, but with white spell
effects rather than blue, right? But at the same time, there are a lot of
factors that create tension with that concept.

One is ensuring all classes have the same base toolkit so
they can solo effectively. Everybody needs an interrupt, some sort of minor
self-healing, a defensive cooldown, an offensive cooldown to be able to burst
DPS, and so on. It still leaves a fair bit of wiggle room as far as design
space is concerned, but giving all of those tools to each class definitely
reduces the disparity across classes.

Another concept is the idea of convergent design. As you
iterate on different designs and pull in concepts that work from other classes,
and discard the ones that don’t work, you’ll approach an ideal set of mechanics
if any such ideal exists. Now, ideal in this case is somewhat subjective, but
at the same time, there’s a few cases where objectively you could say a
mechanic just sucked.

One such example is the Retribution Paladin class from Wrath
of the Lich King. When building a set of player-based mechanics, you need to
introduce some kind of limiter, a resource of sorts, otherwise the player will
just spam the highest damaging (or healing) ability (See: Arcane Mages). In first-person
shooters, often ammunition is the limiter. For Retribution in Wrath, cooldowns
were the limiter. When you use an ability, it goes on “cooldown” such that you
cannot use it again for a period of time. Some abilities may go on cooldown for
a few seconds, while others may be minutes.

The issue with Retribution in Wrath, however, was that there
were not enough abilities to use to fill in the space between cooldowns, such
that the class devolved into “First Come First Serve”: if an ability was off
cooldown, hit it. Otherwise, wait. You could throw every attack you had onto a
single macro and spam that button, and achieve near-max DPS. Hence the nickname
“lolret”. You could pretty much literally
faceroll your way to victory, which is clearly a failure in class design. That’s
not engaging whatsoever. (See: http://korecsguidetoret.blogspot.com/2008/04/how-to-retribution.html for an example of just how... empty the Retribution rotation was in Wrath).

Now, at the same time as “lolret” was occurring, Enhancement
Shamans also got a makeover. Their new mechanics used a “Priority System” as
the primary resource rather than mana/focus/rage, which is to say you’d often
have multiple abilities off cooldown, and each ability has a priority. Higher
priority abilities should be used first, and you’d need to re-evaluate what
abilities are off cooldown each time you used an ability. Now, you could reduce
this to a single button same as Ret, but Enhancement also had a little bit of
extra sauce where multiple abilities were placed on the same cooldown, and you
had to make a judgment call on which ability to use: Flame Shock vs. Earth
Shock (or Frost Shock), Searing Totem vs. Magma Totem, and Lightning Bolt vs.
Chain Lightning. (See: http://wow.joystiq.com/2011/06/04/totem-talk-state-of-the-enhancement-shaman-address/ for a bit of history here).

The difference is subtle, but important. Both classes used
cooldowns, but not having enough buttons made the class too simple, and having
too many buttons (ye olde Feral Druid) would make the class obscure and not fun
except to the most masochistic of players. There was a balance to be had there.
And if you didn’t include branching in your rotation, then you could reduce the
rotation to a single button, regardless of how many buttons you had.

(Simplified) Feral Druid Rotation Diagram from days of yore.

Fast forward to today, where Blizzard has learned these
concepts and applied them. Funnily enough, Enhancement has changed very little
since Wrath, with the exception that damage has been spread to active abilities
rather than in auto-attacks and auto-procs. If anything, Enhancement has become
more complex, with the addition of
Unleash Elements and Lava Lash spreading your Flame Shocks to increase the
amount of interplay between your abilities.

Retribution, however, is looking a lot like Enhancement Shamans these days. Retribution now has a
full-out Priority System, with multiple abilities sharing cooldowns to ensure
you have to make decisions on the fly. They both have a finisher-based resource
system, too.

Quick note, a useful tool in Computer Science, and mechanic
design in general, is abstraction. Basically, divorcing your discussion from
flavor and boiling it down to the base components allows you to more easily
compare your Granny Smith to your Red Delicious: in the end they’re both
apples, and that’s the important part. But of course, you want to make sure
your abstraction is correct for what you’re doing, and not too abstract, or you’ll lose the essence of your conversation. For
example, Ret and Enhance are both Priority System classes, but all classes are
Ability-Based classes. The former is a useful abstraction, whereas saying all
classes use abilities is not a useful abstraction.

So let’s compare the two:

Retribution

Enhancement

Priority System

Multiple abilities off of cooldown simultaneously

Priority System

Multiple abilities off of cooldown simultaneously

Mana-Based

But Mana regenerates so fast as a part of your normal
rotation as to only be a limiter if you’re spamming heals.

Mana-Based

But Mana regenerates so fast as a part of your normal
rotation as to only be a limiter if you’re spamming heals.

Secondary
Resource: Holy Power.

Gained on
ability usage.

Funds finishers
(Divine Storm, Templar’s Verdict).

Also can be
used for Healing (Word of Glory).

Used for DPS
maintenance (Inquisition).

All-or-nothing.
Using partial amounts either not generally beneficial, or not possible.

So looking at the two, they play quite similarly, with the
exception of utility, where a lot of the flavor lives. Paladin Hands versus Shaman Totems. How the different abilities interact is also a major difference. For Retribution, it largely doesn't matter what order you use your abilities in, because they don't interact with each other. You just pick whichever one does the most damage that's not on cooldown and away you go. Enhancement, however, has an amazing amount of synergy between all of their abilities. This does make the Priority System for Enhancement a bit more rigid, however. Use the abilities in the wrong order, and you'll hurt your DPS pretty significantly, whereas Ret doesn't really care too much.

Now, there are subtle
differences between Holy Power and Maelstrom Weapon. For example, Maelstrom
Weapon is technically random, so if you get a particularly bad streak of procs,
you may be stuck waiting for your Lightning Bolt (or heal), whereas Holy Power
is like clockwork. Holy Power also allows you to perform finishers nearly
back-to-back, with only a single GCD in between, whereas Maelstrom Weapon is
technically not needed for Enhancement’s finishers. It just makes them cost no
mana and cast instantly, and even a partial stack helps that out.

In the end,
though, they feel pretty similar when you’re in the thick of things, but overall it just feels like Retribution is a poor man's Enhancement. The skill threshold to get the most out of Ret seems to be way lower than Enhancement's (which may be why I like Enhancement so much more).

If I knew more about Rogues, or Feral Druids, I bet I’d be
able to see a similar comparison. But it does feel like these Priority Systems
with Branching are the natural evolution of MMO rotations, and we are seeing convergent
design in action here.

Blizzard has been talking about paring down the number of
buttons on people’s action bars, and I’ll be interested to see how they manage
this without destroying rotations in such a way that we’re back to the “lolret”
design. Removing too many buttons means you now have a “First Come First Serve”
rotation, and can just make a macro with all your abilities, and removing
branches also has a similar effect, though I suppose one could make the
argument that branches have the greater effect here, but not enough buttons
means you have big gaps in your rotation, and that can often feel “clunky” in
the Ghostcrawler sense, because not hitting buttons for 5 seconds is really,
really not fun, though having the occasional 1.5 second gap allows you to throw
in utility or off-healing.

5 comments:

I've given this idea some thought lately and the classes do tend to fall into relatively similar camps. Your "Priority Systems with Branching" concept is one I'd call "Cooldown-Limited" instead but that's obviously a broader definition than you're looking to hit here.

Thing is, though, I think at best what you're describing is the eventual end-point for a MELEE rotation... casters/ranged play differently and I'd argue the point that I much prefer the WW monk style (rapid collect/spend, kind of like a rogue in a hurry) to the paladin/enh/warrior cooldown-limited style where you have to pay significant attention to timers... so I'm not even sure your conclusion is the correct one. I think the reason there are a number of different types of rotations, even within melee, is because certain players can prefer certain styles and likewise dislike others. I prefer pushing buttons to waiting but I know others prefer the slower, more methodical pace of a cooldown-limited rotation (which also has the benefit of being more lag-friendly).

I do believe there's value in putting particular specs in groups with other specs to help players find synergistic alternate classes to try out... a cooldown-limited spec like a ret pally translates better when moving to a warrior than a late-expansion high-haste rogue button spammer. A DoT-loving warlock will probably find more to like playing a shadow priest than a frost mage. which is more of a filler/proc playstyle.

Might also be interesting to look at the specific rotational elements that different classes have in common, things like rotational cooldowns (Crusader Strike), DoTs to track (Shadow Word: Pain), self-buffs to track (Slice 'n' Dice), debuffs to track (Rising Sun Kick), spammable fillers (Frost Bolt), combo points / finishers (or gather / spend in general since I wouldn't really classify destro warlocks or ww monks as combo point / finisher classes since their finishers don't scale with additional points but I'd probably put them in this category as well), procs (Pyroblast!), priorities, synergy (bank Rage for an Enrage), etc etc. Most rotations are a sum of those individual elements and each works better for a certain type of player, I imagine most players, even experienced ones, would perform a lot better using the stock UI on a frost mage than a shadow priest, for example... personally, I'm okay tracking things but I tend to prefer classes with fewer elements to track.

There are also a few elements unique to classes or specs... spammable resource generator (Steady/Cobra Shot), gimmick resource (Eclipse)... might be others as well.

"Thing is, though, I think at best what you're describing is the eventual end-point for a MELEE rotation... casters/ranged play differently"~Ah, yes, great distinction, thank you.

"I'd argue the point that I much prefer the WW monk style (rapid collect/spend, kind of like a rogue in a hurry) to the paladin/enh/warrior cooldown-limited style where you have to pay significant attention to timers..."~ WW seems to be a Priority system with a secondary resource that funds finishers if the description of the class rotation on Icy Veins is correct: http://www.icy-veins.com/windwalker-monk-wow-pve-dps-rotation-cooldowns-abilities

If you have an abundance of Chi, you use a finisher, which include Tiger Palm (your DPS maintenance), Rising Sun Kick (cooldown), Fists of Fury (cooldown), Chi Wave (cooldown), Blackout Kick (if everything else is on cooldown), and your Chi builders branch depending on if you want to use Expel Harm, Jab, or Chi Brew.

Granted, by flipping the system on it's head and making a bunch of finishers, but really only a couple of abilities to build up that resource, Blizzard did make a class that feels pretty unique despite using all of the same building blocks. And as you point out, there's a lot quicker back and forth between using your primary resource (Energy) and your combo-point secondary resource (chi). So perhaps this shows that even using the same mechanics, by rearranging them and rebalancing them, you can achieve a different feel for a class. But even a difference such as having a spammable base attack (Jab) versus not having one at all (Ret/Enhance) does seem to make a difference. I wonder if that makes the baseline difficulty of a class higher, lower, or just different?

"Might also be interesting to look at the specific rotational elements that different classes have in common,"~ Basically take my table where I broke down those classes, and start breaking down other classes' rotations into their component elements and find common ground? I think that's a fantastic idea. I may have to look into that more myself, though you've got a pretty decent start there. And such a study would be useful, too, because if you wanted to build a new class, or steal a concept that works well, it'd be pretty easy to do so.

Yeah, my WW description was brief, the original comment I wrote and killed before publishing risked being longer than your original post and did go into class-specific breakdowns but a) I had more trouble doing that than I expected and wasn't terribly happy with my conclusions, it's hard writing long-form in these 5-line comment boxes and b) see above about being longer than your post. So I was trying more for basic points in what I eventually published.

You're both right and wrong about WW. There are priorities but those only come into play if you have more than one option available and that doesn't often happen, cooldowns typically determine what button you hit next but even then I wouldn't really classify it as a cooldown class, it doesn't play anything like a paladin or warrior.

It isn't even really a build-spend rotation like a rogue since it's so far... each Jab gives you 2 chi and the rotational spends are 2 chi each (Tiger Palm is 1 but it usually isn't cast rotationally, Combo Breaker procs for it tend to keep the buff up and it isn't worth hitting outside of a CB proc if the buff isn't expiring). If anything, it's more like a faster version of the old paladin 969 rotation... call it a 39363(15) rotation or somesuch. :) Basically, literally, build-finisher more often than not. It's very fast, at 7K+ haste (which I run, although I believe the top monks run a lot less in general, some under 4K) I have almost no wasted GCDs per minute, maybe one or two, even on tank and spank fights. I can't think of any other melee class that has that level of activity and I really enjoy it, it's very engaging.

One of the issues that I had with categorizing classes is that I'd argue that I find the frost mage rotation more similar to a ww monk than I do a combat rogue... which seems nuts on pretty much every level but I have a much similar "always something to do" vibe playing it than I do on a rogue. And I *like* rogues, I played one as a main in Cataclysm and enjoyed it a lot... that isn't a shot at rogues. But the rogue rotation feels a lot slower than the monk rotation does even if it has some surface similarities.

I am a bit surprised that someone hasn't tried to do that already, though... not that I've seen, anyway. I've also never seen a true class 101 post either, for that matter. Most of the content out there is either more general purpose or is aimed at the higher skill players, it seems.

Agreed with R. There might be a few specs which are somewhat similar but most feel very different from each other. Even an Assassination Rogue feels very different from a Combat Rogue...the latter is all about spamming lots of buttons fast and using cooldowns fast and it feels very hectic. Assassination Rogues are far more slow and methodic and care about precise timing to maximize Envenom buff benefits.

Oh, I'm not saying the classes all feel the same. Even with the same tools, utilized in different manners and weightings you can come up with something entirely different in feel, though at the same time there are definitely nuances I'm missing because of my unfamiliarity with other melee classes, no doubts about that. I really ought to level a warrior past 30 one day...