Wednesday, August 3, 2011

Design Philosophy at Riot Games: PvP

I'm gathering my thoughts on a more comprehensive list of design principles but as a fun experiment, I thought I'd combine some anti-patterns into broader and more easily understood principles.

What I've discovered is that principles tend to be contradictory. You can be devoted to honesty and compassion, for example, but there are always instances where the honest thing to do isn't the compassionate thing to do, and vice versa.

1. Self-Actualization and Responsibility

"I have a large degree of control over my personal success and my failure."
"I am not overtly punished for other people's mistakes."
"My victory or success is determined primarily by things I can control." 

Things that violate this principle:

- Chaos Bolt / Dodge Procs - Excessive random chance in abilities.
- Allied Forced Movement / Friendly Fire - Moves that primarily punish allies on your failure.
- Stat Donations / Self Sacrifice - Moves that make characters excessively dependent on others.

2. Actions are what are important, rather than encyclopedic knowledge

"The majority of my time should not be spent figuring out what just happened, but how I should respond to it."
"What I know about my enemy is less important than how I adapt to my enemy."
 "I should not be punished for things that are impossible to understand while playing."

Things that violate this principle:

- Lack of Natural Counters - Moves that need excessive preparation beforehand to counter.
- Skills that demand a single counter-response - Moves that specifically specify what the opponent needs to do to counter it.
Highly Abstracted Skills - Moves that don't communicate properly what they do. A wall communicates 'don't move.' A debuff that punishes you for moving does not.
- Skills that scale on non-controllable factors - Moves that target numerical statistics or level count.

3. Interaction

"I win the game by interacting with my opponent."
"My character should not be placed in a position where I am shut-out for the rest of the game."
"In a clash between me and my opponent, the one with higher skill should win."

Things that violate this principle:

- Lack of Counters - Skills with no natural responses.
- Hard Lock/Counter Abilities - Skills or abilities primarily designed to excessively punish one character type or class.
- "Shut out" Specialization - Characters that are designed to be unable to lose in specific scenarios.

...Still thinking on ways to encapsulate all the UI principles.. I mean 'Keep it Simple Stupid' pretty much does all of that.

2 comments:

Rezyk said...

Given principle #1, I find it strange that Riot doesn't choose to do away with the 0cs support meta.

Isaiah Everin said...

I like this post, is a pretty succinct explanation of anti-patterns that don't work.

Been playing some DotA 2 -- my friend and I feel like there are some more fun/rewarding things you can do in that game, but at a pretty enormous cost a lot of the time. I probably spend more time frustrated by the absurd options my opponents have than I do feeling good about the one broken thing I can do.