Monday, October 3, 2011

Does Matchmaking Work?


Have you ever fired up the latest competitive multiplayer game and been stuck in "that" game? You know the one with the team of players barely starting their online career against the party of elite tier seven juggernauts that only live and breathe this single title and ponder the reason for putting campaign in a game.

These games always end in disappointment as one team destroys the other, and always leave me asking: Is this really matchmaking?

We rarely think about the process once we hit the button to join a game, but there are numbers crunching behind that spinning wheel you stare at so obsessively. Much like a dating site, there are criteria that you are compared with to find your perfect gaming match...which usually ends up in tears and frustration...again, much like a dating site.

The System

Besides choosing from a playlist to fit your desired play style, the majority of the time you will be matched based on the biggest factor of them all: Your connection. Your latency is key in providing an enjoyable and fluid online experience, and as such becomes the biggest item that is looked at first for criteria. It is a factor that is first to be cried "wolf" if everything goes south in a match, and as such becomes top priority with little complaint. Coupled with your existing level on the system used and the playlist chosen (casual vs ranked), you are tossed into a game and ready to go.

So what about the matchmaking systems designed to keep it interesting? In most Xbox Live games these days, Microsoft Research has established the TrueSkill system to even things out.  Gears of War 2 and Halo 3 are perfect examples of games utilizing this technology. Your True Skill ranking remains hidden under that lovely experience number you grind for in various modes, and becomes the deciding factor in how you progress.


Let's use this handy chart to get specific, shall we? Trueskill is characterized by two numbers
  • Your actual skill (μ in the picture).
  • Your uncertainty value (σ ).
Uncertainty is how the game accounts for luck, like the time you killed four people with a random rocket. Playing consistently will lower this, but playing inconsistently will raise it. Your actual skill is measured by wins and losses. Trueskill DOES NOT take evaluation performances inside the game into account. The only statistics that Trueskill takes from a game are the Mu and Sigma values of all the players, and how you placed. This means your kill/death ratio, your headshot count, or your ability to teabag a player have no say in matchmaking.

Your team is set up against an opposing team with roughly the same skill level. The game predicts the winner and loser of each match. If you are projected to lose and you win, you get experience. If you are projected to win and you lose, you lose experience. If you are projected to win and win or lose and lose you loose/win a small amount of experience.

This is simply a basic overview and there are many technical items at work here. For the big scheme of it all, you can head here.

As for PC, well that is where dedicated servers come into play. Sifting through the lists of available venues, there are subtly named "noob servers" and a general community on each server. Finding the right fit is what remains key here, and having a sort of "hove" that you can return to with people that take the game in the manner you approve of; be it running around like children or playing more professionally. In the days of Counterstrike and Unreal Tournament, favorite servers were quickly chosen and players returned to those that provided the most enjoyable experience.

The Problem

In a perfect world, every match would be an edge of your seat experience in which both teams felt the game was just. Unfortunately, this is just not possible. There are far too many variables to weigh in determining a perfect match. When matchmaking offers filters such as language barriers or mic behavior, this is when you bottleneck your options and limit getting into a match at all.


Trueskill does a decent job in at least providing some favorable match ups, but could be tweaked. The system matches wins and losses, but not by how much that win was achieved. Complete blowouts are simply factored as a mark in the win column, ignoring the fact that the winner killed you and tied you to his gun to act as a bulletshield.

Trueskill has the ability to be "manipulated". Rage quitting can ensure your win/loss ratio remains untarnished. Players can only play with their fellow professional team members and end up wiping the floor with their communication and team play, but when out on their own become mismatched.

Matching by latency is great, but matching a group of lone sharks with a pack of wolves is hardly very enjoyable (especially if this scenario is on land). Packs of tightly linked players will stick together on most squad based games, performing well due to communication and existing knowledge. Some developers have split this option up and shuffle teams accordingly, but the "party grouping" feature is heavily used and rarely kept separate from the desired playlists.

The Solution

The biggest and best solution lies with the developer. TrueSkill is a step in the right direction, but nothing beats what a developer can put in place. Steps have already been taken in a number of games to help with matchmaking's faults. Punishing early quitters, rewarding those who fight through it, and other various incentives that keep gamers going through the motions are present in a number of titles. There are a number of other games that have showcased some interesting ways to tackle matchmaking dilemmas.

Uncharted 3 has a great system in place to prevent total blowouts. Simply dubbed "Power Plays", events will occur that hinder the winning team and give a boost to the losing team. These range from marking the best player for all to see and doubling his worth per kill, to causing all players to appear as skeletons and turning on friendly fire for the winning team. Whatever the occurrence, this actually made each game I played during the beta a close one.

Assassin's Creed: Brotherhood's multiplayer is even tailored to punish the victor. Each assassin has a contract to hunt one person, and the person in the lead can have up to three contracts on them at a single time. In turn, the person with the least score can have only one or no contracts on them, giving them a chance to catch up. It's an interesting system that prevents any one person from blowing way ahead of the pack without consequence.



The prime example of them all? Starcraft 2. No other game developer has truly attempted to provide an even and exact match of players than Blizzard Entertainment did with Battle.net. Each player goes through a series of qualifying matches before being placed in a league ranging from Bronze to Platinum. When a player gains points, they increase their rank and can shift leagues. A player that loses points will, in turn, lose rank and can fall to a lower league. The more games played, the better your matchups. It is a system that keeps you in your element without putting you into games that are too simplistic or too difficult for your liking.

Overall

Matchmaking will take some time to refine for making those games we all walk away from ultimately satisfied at the results.With so many variables in the air, it will be in the hands of the developers to truly even out the online gaming experience. Until that time, we must suffer through the unfortunate match ups and hope the next round shuffles the odds in a more desirable favor. Or there is always one item we could implement that makes even the best players shudder in fear...

No comments:

Post a Comment