WP: How would you approach class design?

Battle for Azeroth Items and Classes
Three main things.

First, define what the class/spec fantasy is, and the strengths and weaknesses that go with it. So rogue as a class might be high dps and high mobility but the tradeoff is weak on the defensive side. DK as a whole might be low mobility but strong in defensive and offensive power. From there you can design specs to follow that class design and introduce spec specific spells.

Secondly, have 3-4 core spells that make up your main rotation, and 3-4 excess spells that synergize with the core spells, either by buffing a core spell, needing a core spell to be active to use, or providing a tradeoff to using a core spell. More synergy provides more player choice into thinking about what spell to use when, and separates the good players from the bad.

Finally, design the talent trees around core spells, so each tier would provide a buff/ choice to an individual spell. So the tier at level 15 would all impact the same spell. Example - rdruid level 15 talents impact rejuvenation, a staple spell. You have the choice between being able to cast two rejuvs on a target, rejuvenation adding a buff that increases your next HoT, or rejuvenation providing cultivation when the target is below 60 percent. Then the tier 30 talents would buff/change regrowth, tier 45 would buff swift mend, tier 60 would buff lifebloom, tier 75 buffs wild growth, tier 90 buffs cenarion ward (assuming its baseline for this example) and tier 110 buffs tranquility.
11/12/2018 12:12 PMPosted by Alockxander
There is a major disconnect between the structure of encounters vs class design that I would see them correct.

Let's use mobility as the example: All classes should have strong mobility because of raid encounters being high movement fights and because of PvP. Mobility is not (or should not be) a class-defining mechanic.

If you want to keep the mobility as is, then reduce the number of high mobility mechanics in all aspects of the game. Trade off survivability if you must.

I think one major problem with the current design is classes with mobility weakness is in a "wheel chair" while classes with mobility strength are "jet fighters". The Gap is absolutely absurd. They took strengths and weaknesses way too far.
I'd set every class except disc priest back to MoP, and bring back old talent trees.

It's an mmo. I don't care if I have to pick 120+ talents for something, atleast every level I feel like im gaining something! Also, garrison gold wouldn't be nearly as big of an issue if we still had to buy our new spells/had class quests. That was fun :(
So there is at least two distinct topics here I think we need to separate first, and I'll define them for clarity: Class Design, and Class Balance.

Class Design is about fulfilling the class fantasy, the abilities and powers you give them, the lore behind them, how they feel to play, what their strengths and weaknesses are.

Class Balance is how you balance those classes against one another, it's relative to each other, and is largely achieved purely through numbers tuning.

For example, the planned changes to Shadow & Enhancement in 8.1 are both mostly examples of Class Balance. Nothing about how they feel to play is really changing, but some abilities will hit harder or buffs will last a little longer. These are Class Balance changes (and weak ones at that), not really Design changes.

Now to your Writing Prompt. Let's talk about Class Balance first.

1. Duplicate all damage modifier columns, for all player abilities, to have separate PvE and PvP values. PvP values mirror PvE values unless manually changed. This allows you to balance classes independently for PvE and PvP for each specific ability. Update tooltips to display either PvE/PvP based on location.

2. Community Feedback - Create a system where community balance feedback is sorted by Class, Specialization, Topic/Ability: so that all available community feedback about say, Enhancement Shaman Lightning Bolt is instantly accessible to me in a single place. Including a Reddit-esque upvote/downvote system, so I can see how the community feels about each idea.

3. Design & Implement a proper development cycle for Class Balance changes, off the top of my head, this would be a decent start (hire me and I'll do better):

a) Plan - Set aside a rotating cycle to review each specialization on a consistent basis. Ex. 1 Spec per week, continuously cycling.

b) Define The Problem - Use the available community feedback to determine what problems the spec faces, and use my design knowledge to improve and clarify their feedback as specifically as possible. State the problem in your own words to the community, so they know you are looking into it, and know that you understand what the problem is.

c) Design A Solution - The community is often over-zealous to provide you possible solutions, which is great. Review them, pick the best, apply a dash of my class balance knowledge and creativity where necessary to improve it.

d) Build The Design - Modify some values, slap on a bit of new code.

e) Test It - Post it immediately to the PTR for public testing, stick a big fat feedback button on everyones screen - specifically for any new abilities/mechanics being tested for anyone who makes a class in active testing (links back to Stage 2). Modify it as needed until ready for live.

f) Deployment - Push the change to live. Link the original community feedback thread that brought the issue to your attention. Link your definition of the problem. Provide a brief explanation of how the finished/deployed version addresses the defined problem.

g) Return to A: Planning.

A workflow system should be established to track all major changes and their Stage (A-F). New abilities in A-Planning could sit their for awhile, but it would be clear to see they have not been forgotten. If any ability is removed part-way through the cycle, an explanation must be given about why the problem is either no longer relevant or addressed by another change/circumstance.

The Class Balance Life Cycle & Workflow can also be mirrored to create a similar-but-separate Class Design Life Cycle & Workflow.

A workflow system should be established to track all major changes and their Stage (A-F). New abilities in A-Planning could sit their for awhile, but it would be clear to see they have not been forgotten. If any ability is removed part-way through the cycle, an explanation must be given about why the problem is either no longer relevant or addressed by another change/circumstance.

The Class Balance Life Cycle & Workflow can also be mirrored to create a similar-but-separate Class Design Life Cycle & Workflow.

Part 2 of a 2 part rant.

4) Hire the WarcraftLogs & Recount/Skada developers and integrate them into the WoW Dev team as a new Metrics Team. Combine and build an even better DPS meter directly into the game, and have that system web-accessible through the official Blizzard site (like the Armory).

This allows you to make informed development decisions based on mountains of empirical data collected from live gameplay. It integrates a necessary value add to the player experience into the product (WoW), which virtually every player today uses: your product requires a third-party product to function properly = it's not whole.

An even better version of WarcraftLogs pulling live data from all encounters would create the big data needed to make informed design decisions. Today, part of the frustration in dealing with the Blizzard development team, is that the community has far better data than the dev team. The devs always ask for more data, while the community has millions of encounters in a visual system to base their community feedback on.

Consider this: I have 2 years of /played time on my main Shadowpriest (Yva) alone, not including alts (I have 5 Spriests) and other classes (I have one of every class). If any developer has more than 30 days /played on a Spriest I would be shocked. When I make Spriest recommendations, I am doing so with likely more experience than the entire dev team combined AND better data (WarcraftLogs & a masters in economics makes me a super-user of big data sets). Your experts are not your employees, they are your customers.

5. This is a quickie, but create a competitive WoW PvP server which gives you access to fully geared, max level toons right at character creation. Which can only queue for Arenas/RBGs/Skirmishes/Battlegrounds. All enchants are vendor-sold for free, etc. If people only want to PvP, now they can, on any class they want, like Champion Select in a MOBA.

When anyone from another realm enters any PvP instance, their gear gets mirrored to the PvP full-standard set. This is what WoW used to do, and it's what Guild Wars 2 does, because it's the right answer to make PvP a level playing field. Gear progression and azerite traits in PvP are dumb: stop being dumb.

If you really want to make WoW an eSport, this is necessary to achieve that goal.

6. Class Design. Take all your writers and developers into the woods, without internet or laptops or technology, for 2 weeks. Give them all some paper and pens. Make them write out their personal class fantasies for each spec of each class.

What is a Shadowpriest, really?
What makes them fun?
What are they good at?
What are they bad at?
What are they the best at?
Who are they in lore?
What does the community think of them?

Go back to brass tacks on class design, and Delphi Technique it internally. Then when you come back, take a long bath, and compare what answers you all came up with. Now consolidate your answers and post them publicly (yes, this requires Ghostcrawler-sized balls). Ask your customers what they think. Let them upvote/downvote answers from each dev. Let them submit their own answer and upvote/downvote that.
Use those upvotes/downvotes to understand your customers needs and wants.
Give your customers what they need.

So ultimately, great class design isn't about being some creative genius who can do everything yourself - the only skills you need to be good at is listening and communicating. Your job is not to re-invent the wheel every expansion, it's to harvest community feedback and follow a good development cycle to create incremental continuous improvements.

7. Blizzard, hire me. I will literally quit my job (which is almost certainly a pay-cut to join you) just to make you the company you were born to be. I'm passionate about this. I care. I want this to work. You need help. Just ask me. I will say yes.

I would do away with specializations and instead focus in on the classes themselves. Obviously the DPS, Healer, Archetype remains. But, I am more interested in defining lets say a Warlock. What should they be good at? What can they do in X situation better than Y spec and worse in Z situation than B spec? I would spend a long discussion period to create classes that are kings in their own right. Talents exist only to make players feel like they can mold play styles while the base toolkit has obvious strengths and weaknesses. In my world of warcraft there will always be a weakness an area where each player thinks "wow I wish I was that class right now" but at other moments says to themselves "damn this class I chose is a monster". There should never be a spec that is the worst in every situation compared to the other classes.
I wouldn't actually revert classes to MOP but I would go back to that design philosophy where classes had a full kit to deal with almost every situation as part of the class and the talents would enhance one style or another, but no spec should be incompetent at single target and/or AOE without those talents.

Then I would set a class design cycle that guarantees every class gets a class-design pass every year, to do this I would make 3 class design teams and split the year into four 3-month periods.

The class-design pass for each class go through 3 stages to complete (a total of 9 months) this stages would be:
1) Feedback, data analysis and design goals.
2) Class changes and updates.
3) Testing and tuning.

So at a given time each of the teams would have one class at each stage, for example: Hunter in stage1 (so just getting started with the feedback, data analysis and design goals), Druid in stage2 (so in the middle of class changes and updates), and Mage in stage3 (testing, and tuning).

This way we have 3 month cycles, at the end of each we have 3 classes being updated while 6 more are in the middle of their design process.

On top of that there should be one extra team that focuses on global class balance for Raids, Dungeons, and PvP. This team should have all sorts of charts and metrics to compare what tools each spec has and where does it fit in the meta, how it competes with other classes, etc. All the class design teams would need to work closely with them. This team should also be able to make hotfixes and tuning changes to the live game to quickly react to glaring issues that a spec might be having, even if the fix is just a band-aid covering a larger issue, that can be handle latter in the design process but make sure the spec is at least viable (or not brokenly OP) in the mean time.

Edit: Some of the main theory-crafters, top players, and important community members of each class should also be invited to participate in the design process.
I'd try to break out of the "tank, heal, DPS" paradigm as much as possible, giving more classes other important ways to benefit the group. Some would retain raw throughput as their main selling point, but most others would have throughput alone be secondary to the other things they provide.

Not every damage dealer needs to be on par with the numbers they throw out if they contribute in other ways, providing buffs, control, debuffs, utilities, etc. You could have a damage dealer which is fairly low in terms of throughput, but makes up for it with the buffs they can provide their allies, or the ways they can weaken the enemy.

I would also get rid of the philosophy of specs being pretty much their own classes. A class should have all the abilities to do what the class was intended to do regardless of spec, with specs being a way to shift the playstyle/role of the class one way or another. It used to be this way with the pre-cata talent trees, some may even say pre-wrath, where most of your class was simply learned from the trainer as you leveled up. Talents provided only a couple of abilities themselves, being mostly passives to augment your class's pre-existing abilities to favor doing more damage, taking less damage, or doing more healing. In a way, healing, tanking, and DPS were "secondary roles" and the class itself was the "primary role."

At this point, I really do believe that it was "playing the meters game" which ultimately eroded WoW over time. More and more demanded all DPS, Healing, and Tanking specs be more numerically equal to one another, and now we're at a point where we're so close that the only way to truly make them entirely balanced in such a manner is to just get rid of classes entirely. Classes just don't feel unique or meaningful anymore.

I do hope Blizzard learns something during their development of Classic WoW, perhaps finding keys to the future in the past. Vanilla WoW had issues, but a good deal of these issues were made by player expectations, preferring competition over an actual RPG. Yeah you could always min-max, shoot you can min-max in DnD, but does that not defeat the purpose of...well...role playing in the mechanical sense?

It's more than just a class design issue, but also a content design issue as well which reflects class design.
Talents trees in which you picked your abilities and were able to modify each spell to your situation. Similar to Diablo. No reason I shouldn't have poisons as an outlaw rogue if I want to spec into them.
Actually play the classes and see how they feel, make classes feel fluid and fun, then focus on numbers tuning, give back utility to some classes that are lacking some or any. Develop pve and pvp separately (get rid of world pvp completely) instead of trying to find a balance because it's basically impossible to balance the two together.

Join the Conversation

Return to Forum