Multiplayer Game Models

The term, multiplayer games, includes a range of back-end game server (defined below) complexities.  This post outlines the different types of multiplayer game models.

For purposes of this document:

  • Multiplayer game means any game where more than one player is involved in some form of competitive play, or non-competitive, interactive play (such as in Second Life).
  • A client is the software that runs or displays on a player’s computer, handheld device, smart phone, or similar device.
  • A server (back-end game server) is a computer (or set of computing related devices), accessed over the Internet, whether by landline or wireless connection, that either runs a game for multiple users or tracks game play and related information for multiple users.
  • A synchronous game is one where play between players is organized around a schedule requiring play at the same time.  An asynchronous game is one where play is independent of when other players play.
  • A sequential game is one where the game is based on turns following a set of rules governing the interactions.  A player may only act within the game when it is that player’s turn.  A non-sequential game is one where the game does not require interaction between players in any defined order.  The difference here is between “turn-based games” and games where players’ actions are not limited by turns.

A game on a client may run as an application.  This is a downloaded software application that must be installed on the client device.  A game on a client may also be presented to the player in a web browser, most commonly using Flash technology from Adobe.  There are other client presentation models such as Shockwave and as on iPhones.

There also is a different server model, as is commonly found on game consoles such as PlayStation and X-Box.  These systems support multiplayer games using the “host” console as the server.  That is, multiple players are able to interact over the Internet, using each player’s console as the clients, and using the console of the player who hosts the specific game instance as the server.  Even in this model, a central server is required to advertise and communicate game instance availability.

In general, multiplayer games require coordination by a server amongst the various participating players.  A prerequisite for such interaction of players using a central server is that the players have all registered an account.  The different models will be described, referencing games that are generally known as examples.

Asynchronous, Non-sequential Games
A game that can be played by one player, independent of other participants, both in terms of when the game is played, and where play does not require or depend on the play of others, is termed an asynchronous, non-sequential game.

A very simple multiplayer model leverages a stand-alone type of game such as Bejeweled.  Bejeweled is a game that may be played by one player in stand-alone mode.  The game becomes a multiplayer game when a central server tracks and communicates scores amongst the players.

The simplest form of this tracking is the leader board.   Players compete to have the top scores for a given period of time.  This might be daily, weekly, monthly, annually, and even lifetime.  The leader board is software that receives scores from players and updates the top scorers based on the rules for that leader board instance.  In this model, the most common client solution is a Flash implementation that communicates with a server using a player’s registration.

A variant on the leader board concept is possible where the server can take advantage of player relationships.  For example, games that run on Facebook can use friend information to display scores only to players who are friends of the player.  To clarify, this friend-model does not require Facebook or another general social network.  The software running on the server (a game platform) can permit registrants to befriend one another, creating sets of players who may compete amongst themselves in what can be described as private leader boards.

Synchronous, Non-sequential Games
A game that can be played multiple players, but where play is independent during the course of the game and there are no game related interactions between players is termed a synchronous, non-sequential game.

An example of this form of multiplayer game is one of the numerous Boggle derivatives.  Scramble, from Zynga, available on Facebook, is one such game.  In this model, the game rounds start on a set schedule, and players may participate in any round of the game.  Typically, each player gets the same starting point.  In Scramble, each player gets the same letters in the same layout.  In Bejeweled, each player would get the same jewel layout.  The game runs for a defined period of time.  At the end, each client sends its score to the server and in turn, the server posts the finishing order of the game to all participants.  This can be viewed as an instant leader board, which is reset at the start of the next round, although high scores may also be kept on longer-term leader boards.

Any game that can be configured to run on a schedule, where each player gets the same starting configuration, fits into this model.

Private, Timed, Non-sequential Games
A variant of the non-sequential game is where the game is private to a defined set of friends.   Typically, one player may invite or challenge one or more other players (friends) to a game round.  There can be more than one type of challenge round (e.g. best of 3, best of 5, etc.).  In some configurations, there is a time limit in which to complete the round, or the next turn.

These private non-sequential games may be completely asynchronous or partially synchronous.  For example, in a set of the best of three, the rounds may be played completely independently (one player might complete all three rounds before another starts).  Another configuration could require alternating the rounds so that each player in the challenge must complete one round before the next round can begin.

Scramble has an option where players challenge one or more friends to a defined number of rounds where the best total score wins.

Asynchronous, Sequential Games
There are a variety of multiplayer games that are not time sensitive but that do require players take turns.  Some examples are: Scrabble, checkers, Chinese checkers, and backgammon.  Some of these are limited to two players; others can support more than two players.  In general, turn-based games, especially those that are asynchronous, are limited in the number of players to prevent the time lag between turns from making the game too boring.

The game server for such games tracks whose turn it is, notifies the next player, and presents the updated state of the game to all participants.

Synchronous, Sequential Games
Poker is perhaps the quintessential synchronous, sequential game.  Every player has a turn, following well defined game rules, and each turn or action must be completed within a specified period of time.  Any card game for more than one person falls into this category. Games such as Scrabble and Backgammon could also be configured to set a time-to-act per turn.

Sequential games follow a set of turn-based rules that are implemented on the central server.  The central server is responsible for communicating game state changes, as well as tracking any time limits.  Clients for such games are often simply graphics rendering machines.  That is, the client listens for updates and instructions from the server, and then displays those changes.  When the server instructs the client to ask its player for an action, the client prompts the player with a set of choices appropriate for that point in the game.

Real-time, Synchronous Games
First person shooter type games, typical of the MMOG (massive multiplayer online game) genre, have numerous players (often huge numbers) interacting with one another in real time. These are graphically rich games and they are in the non-sequential category – each player acts independently, and not on a turn-based set of rules.  The graphics development for such games is often more complex than other types of games.

The complexity at the game level for this category stems from the need to track the movements, actions, and interactions of each of the many players without the benefit of a clear, ordered sequence of events.  From a programming perspective, this is more complex a synchronous, sequential game.

Other Forms of Complexity
Multiplayer games can take on other forms of complexity.  Virtually any multiplayer game can support a tournament model.

Tournaments may operate using the last player standing paradigm, where player interact with one another, using a set of rules, until only one player remains.  Tournaments may also use the NCAA and tennis style single-elimination bracket model.  Another form of a tournament is the ladder model, where competition is open-ended, and players move up and down a ladder by challenging or being challenged by another player who is within a defined range (bracket) of the other player.  And a commonly used tournament model involved sets of tournaments where one or more winners from a set of feeder tournaments move up to the next level tournament.  This last model is often called a feeder model or a satellite model.

Scalability is the capacity of the system to sustain significant numbers of players.  This can be a major undertaking in the development of large multiplayer games.  Software architects with appropriate experience in the design and implementation of scalable systems can command significant salaries.

Depending on the type of game and how scoring is managed; multiplayer games can create high transaction volumes – interactions with the database.  They can also generate huge volumes of data where there is reason to store game play history.  Such considerations are also important in the process of selecting a game play model.

Summary
In general, the more players a game must support, and the higher the degree of interaction between the players, the more complex the game server software must be.  The simplest form of multiplayer game is the asynchronous, non-sequential game. Synchronous, sequential games and MMOG’s are typically the most complex to implement and to build for scalability.

When selecting multiplayer games, it is important to match the business objective to a suitable multiplayer game model.  Selection of a game platform, and the functions it provides is an important component of the decision process when the business plan calls for games to be a part of the media mix.

Comments are currently closed.