Saturday, August 10, 2013

Fighting Chance: Randomness in Competitive Gaming (and Sports)

If you're reading this, you probably play video games.  In fact, you probably enjoy competing, or attempting to compete in video games.  And if you're like me, you really hate arbitrary systems that limit your ability to outplay your opponents.  Often, people will talk about how "random shit" screwed them out of a win, or a kill, or whatever.

So...what is randomness?

The dictionary has a few different definitions both formal (from statistics) and informal regarding the word "random" - but for the sake of this blog, I will be using a bit of a fusion of the definitions.  In the context of competition, the word random means...

"Unable to be accurately predicted or controlled based off the knowledge any participating player has available to them at a given time."

To clarify, this means any action within the rules of a game taken by a player cannot, by definition, be random.  Being unable to predict an opposing player's actions is not an act of randomness, but rather an act of them out-playing you.  Sirlin covers the concept of reading and predicting an opponent's actions quite well in his article about "Yomi Layer 3."

In competitive gaming, many of the anti-randomness camp tend to cling to the argument, "There is no randomness in real sports."  But, let's take a closer look at that.

Say you're playing baseball.  A ground ball is hit toward third base.  On its way there, it hits a rock in the ground and bounces toward second base instead.

It is highly unlikely and completely unrealistic to expect that any player participating in the game has an intimate enough level of knowledge of the field's terrain to know that there was a rock there likely to cause such an awkward bounce.  This is an act of randomness.

Say you're playing basketball.  You go to participate in the tip off.  The referee (not a player participating in the game) throws the ball up, but the referee's hand is not level, sending the ball closer to you than your opponent.  Neither you nor your opponent had any idea or say in this occuring.  This is an act of randomness.

Football, wind during field goals.  A sudden gust or cessation of gusting can completely change the outcome of a kick.  Unless the wind is completely consistent, the wind's effects are random.  Nature is random.

Granted, many of these random factors are limited and often will only occur in edge cases.  Most random factors are able to be reacted to in a way that does not overall affect the outcome of a game.  And in most cases, the random factor is not enough to outweigh the differentiation in skill.

Of course, I emphasize my use of the phrase "in most cases" and point back in recent history to the "Inaccurate Reception" -- a play in the 2012 Packers/Seahawks game in which Seahawks QB Russell Wilson threw an interception to Packers' defender M.D. Jennings, which was ruled by the officiating staff as a completion to Seahawks receiver Golden Tate.  Even after video review that showed overwhelming evidence this was an incorrect call, the call stood, giving the Seahawks a win in an otherwise lost game.  This outcome, completely unpredictable and uncontrollable by the players (and wRONG by the actual rules of the game) was a random factor (by the above definition) that determined the outcome of the game.

This randomness extends into various video games, even those of a competitive nature.  Often, random factors are met with a certain level of disdain from the players.  Critical hits and status effects are referred to as "Hax" by the players of Pokémon -- and in niche competitive communities, moves and items that increase the randomness (lowering accuracy, raising evasion, increasing crit chance) are forbidden.

In many shooter series, the gun's bullet trajectory can be random through mechanics such as bloom or bullet spread.  This sort of mechanic proves especially problematic in games of higher kill times, as the longer an engagement lasts, the more opportunity there is for the randomness to affect the outcome of a battle between individuals.

Throughout League of Legends' development, various random factors such as "chances" to stun, critical chance being available at level 1 through masteries, the ability to dodge basic attacks (and at one point, towers), and Gangplank's ultimate have all been either stripped or reworked in a manner that makes them more consistent and predictable.

So, clearly with the fact that randomness can affect the outcome of a game, or greatly influence it without the player being able to predict it, randomness is bad, right?

I won't use my catchphrase (No, shut up, you're wrong.) here, but I will offer further insight on why a certain degree of randomness can be useful.

First, I'm going to bring up the game Connect Four.  This game has no true randomness.  Each player has full control over the actions he or she takes.  There are no arbitrary influences on the game except for the selection of who goes first.  So, this game is a perfect example of determining who is better at the game, yes?

No, shut up, you're wrong (there, I got to use it.)  Connect Four is a SOLVED GAME.  If played correctly, it is impossible for the first player to lose.  He or she can force a win regardless of any action taken by the opposition.  Checkers is a solved game.  Played perfectly by both sides, the game ends in a draw.  Chess is, with our current level of technology, too complex for an absolute solution, but has been solved for all 7-piece end game situations.

Solved games mean there is an ultimate barrier on the level at which a player can out-play another.  Ultimately, the game's rule set already has determined the winner, and the interactions of the players are completely meaningless.  This is poor.

If we were, however, to remove all randomness from the games I mentioned above, only one of those could eventually become a solved game (Pokémon.)  The others all have one distinct difference from board games that makes the implementation of randomness completely unnecessary.

They each require mechanical skill.  Players can out-position, out-maneuever, out-shoot, out-itemize, or out-skill their opponents in various ways through methods of both strategic and mechanical play.  Inconsistencies in gameplay more often come from the player's failure to properly control rather than the game determining they have failed through arbitrary rulesets, dice rolls, et cetera.

Let's take a closer look at Halo.  In Halo Reach, for example, Bungie implemented a mechanic known as Bloom.  As a player fired faster than the arbitrarily determined ideal rate of fire, the gun's accuracy would drop, leading to missed shots regardless of the player aiming properly.  This was counterintuitive given the game's comparatively long kill times (compared to not only other Halo titles, but more specifically to other shooters which included Bloom, which often have instant kills for headshots).  In any individual engagement, players' primary goals are to kill the opposition prior to being killed themselves, which means firing at the fastest rate of fire is often optimal, even if it becomes a gamble.

In this system, players were not punished for missing (as they would be in the case of an instant kill headshot game) -- but rather, punished for engaging.  Scoring a kill merely meant you had to immediately disengage (which was not often possible) or else start out at a huge disadvantage in any ensuing engagements.  This drastically reduced the power of an individual in games.

This implementation of randomness is completely unnecessary, as it only serves to limit the individual's capability for outplaying, rather than to facilitate the potentially intended goal of assisting less skilled players in scoring kills.  If the designers wished to include a cadence to assist newer players, the "bloom" should've been replaced by a sort of on-board aim assistance for the gun.  As the rate of fire increases, the computer's "processing speed" decreases, reducing the aim assistance and bullet magnetism of the gun and making the bullet actually fire more accurately in regards to the player's reticule.  In the case of high levels of player skill, the players can shoot at the max rate of fire without being punished for their level of skill.  In the case of lower levels of player skills, players can fire at cadence with moderate accuracy and still be able to score kills in a consistent number of shots.

In Halo 4, a new form of randomness was implemented in the game's Ordnance system.  Personally, I like ordnance.  I even don't mind some degree of randomness in the ordnance.  However, the implementation in the release version of Halo 4 was entirely out of whack.  Players could get anything from a set of extra grenades to the most powerful weapons in the game, just for earning enough points to call down a weapon.

Players could press any of three directional pad buttons to call down a randomly generated weapon, item, or power-up upon acquiring Ordnance.  Interestingly, there were three "classes" of weapons in the game -- Human, Covenant, or Promethean.  I found it odd that the Orndance choices were not first tied to selecting one of these three classes to further specify what kind of weapon ordnance the player could then get.  After selecting a class of weapon, the three directional options could've then been reduced to something along the lines of "Close Range" (Shotgun, Scattershot, Energy Sword, Gravity Hammer), "Explosive" (Sticky Detonator, Concussion Rifle, or any of the grenade choices), and "Powerup" (available to all 3 class choices, randomly selects Speed Boost, Overshield, or Damage Boost).  The "up" button could be used to return a menu and investigate the other options.  It would reduce the randomness and improve a player's ability to quickly determine what they want.

Alternatively, they could've been organized in a manner that focused on primarily what they improved -- Left = Mobility.  Speed Boost, Jetpack, Thruster Pack.  Down = Defense.  Overshield, Hardlight Shield, Regenerator.  Right = Offense.  Damage Boost, various mid-tier weapons like the Railgun or Concussion rifle.  The main reason I defend the possibility of randomness in the Ordnance system is that regardless of the choice, they are all better than whatever the CURRENT state of the player is.  There's no chance that the randomness will yield a worse outcome.

In League of Legends, there are very few random factors remaining.  Currently Twisted Fate's passive and Critical Chance are the two most notable.  Twisted Fate's passive is mostly a non-factor as it averages out to the same effect over the course of a game.

Critical Chance, however, is a factor that has had to be limited and hammered by design into a form that was made acceptable due to various abuse cases due to its random nature.  Once again, this is an ability that doesn't have to be random.  Rather than critical hits being left to the whims of a calculator, they could instead occur on a pattern.

For example, the Brawler's Gloves grant an 8% chance to critically strike.  On average, this means a player will critically strike once every 12.5 attacks.  Instead of this system, it could generate a range (for example, 10-15) of "focus" per attack.  Once the amount of focus reaches 100, a critical hit occurs.  (Yes, this is still random.  It does keep the element of randomness, but takes away the most important element that makes randomness bad -- unpredictability.)  This would also serve to eliminate problematic edge cases of double critical hits or long strings without critical hits.  And since the next "critical hit" would be a trackable occurrence, it would encourage interactivity between players in the case of a laning phase in which one player has generated enough focus to crit.  It brings about more options for outplaying and counterplaying situations while reducing the randomness tied to one of the last bastion of offenders of RNG fuckery remaining in League of Legends.

Now, to return to Pokémon.  I mentioned randomness is necessary to prevent it from being a solved game.  Do this mean I believe that, on a given attack, a player should suddenly be able to deal double damage and disregard any defensive bonuses of the target (how crits work in Pokemon)?  No.

The primary issue with the randomness in Pokémon, as a competitive game, is that it is ABRUPT.  There is no chance to react to the issue.  A crit will always come without prior warning, and will often completely screw you over.  This is a huge negative.  However, crits do serve a positive purpose in some occasions.  They can prevent guaranteed stalls, or help break a wall attempt in an otherwise hopeless case.

So, how do you eliminate the abruptness?  It's really quite easy.  You delay the effect of the crit until one turn after the game has determined a crit occurs.  This could be done by replacing "Critical Hit" with "has been knocked off-balance!"  -- where an off-balance character is treated as +0 on defense upgrades, and takes double damage from the next attack to occur.  This status effect always only lasts one turn.

A method like this proves more interactive for both the person getting the critical hit as well as the person who was hit, as once you are knocked off-balance, there are a number of choices you can make.  The player who has knocked the opponent off-balance will likely want to use their current Pokémon's most powerful move in order to inflict as much damage as possible.  The person who has been knocked off-balance has a few options they can select: 1) Leave in the current creature, hoping the damage is not enough and the wall can continue.  2) Use a faster move in order to attempt to knock-out the opposing Pokémon.  3) Attempt to swap out their Pokémon to avoid the critical hit taking effect.

If the attacking player guesses that the defending player will likely use #3, the mind games begin.  "Do I stick with my strongest move, or do I try to guess what Pokémon they will swap to, and instead swap my own Pokémon to something that will be strong against their likely switch?"  The level of Yomi (again, go read the Sirlin article I linked earlier.  He's a great design mind.) that occurs just from this one mechanic change greatly increases the amount of fun and interactivity between the two players while drastically reducing the amount of frustration from a random moment in the game, while still in essence keeping that randomness which can reduce or prevent the game from ultimately devolving into a "solved" game.

Randomness in gaming is not all bad.  It creates a certain level of chaos that can, in many circumstances, improve the interactivity between players.  However, randomness that exists as an unpredictable factor, or solely to limit the level to which a player can outplay another has no place in a game of skill, and wherever possible should be removed.

Audley Enough, very few games since the most popular early game, Pong, has seemed to grasp this concept and we are left with the artifact of 80s and 90s dungeon crawlers keeping random factors in our games.  As the competitive gaming envelope continues to get pushed, hopefully we can stamp out any remaining randomness that limits player skill and replace them with mechanics that instead reward skillful interaction over dumb luck.

No comments:

Post a Comment