The popularity of multiplayer online games on the Internet has exploded in recent years. Unlike conventional single-player electronic games, multiplayer online games enable a player to participate in games with other players, either as an individual or as a team member. The multiplayer aspect of these games adds to the players' gaming experience by offering new gaming considerations, including strategy, teamwork, and rivalries.
In order to enable playing of a multiplayer online game, host services must be provided by either an individual or a third-party host. Host services are typically performed on a host computer or server running a copy of the game, and generally concern controlling overall aspects of the game, such as keeping track of the score and updating the game environment. In addition, the host determines who the game participants are, and whether new players may be added.
Examples of multiplayer online games that are hosted by third-party providers can be found at many gaming web sites, including Microsoft Corporation's Internet Game Zone, which provides a myriad of single player and multiplayer online games that are played by over a half-million users daily. In order to play most of the games on a gaming site, it is necessary for users to download (or procure separately) a copy of the game the user wishes to play. Typically, some of these games may be downloaded for free, while others must be purchased, either online, or at a retail outlet. In addition, many gaming sites offer “premium” games that can only be accessed if the user has paid a membership fee to play such games, or has agreed to pay a usage fee (e.g., an hourly fee, daily fee, etc.).
In addition to Internet gaming site hosts, individuals may also provide hosting services by using their own computer for such purposes. Such a player is referred to as a “host player.” A significant advantage of this configuration is that it generally provides increased performance over games hosted by third-party sites, since the host services for these sites are usually provided by a limited number of servers, each of which is used to simultaneously host a large number of games. In addition, by using one of the game players as the host for the game, the players do not have to pay an access charge to play the game.
In order to facilitate online game playing, it is necessary to enable players to join games already in progress, or enable players to initiate a new game in a manner that allows other players to join in. Oftentimes, players prefer to play games against (or with) players they already know. In general, many of the third-party gaming sites provide host services that make it relatively easy to join games, schedule future games, establish teams, etc. However, there is presently no way to easily initiate game play between players for games that are hosted by individual players.
In order to host a game, the host needs to be able to identify and communicate with all of the game participants. A common scheme for performing this task involves the use of Internet Protocol (IP) addressing. In order to communicate over a communications network, such as the Internet, each device (e.g., a player's computer) connected to the network must be assigned to a unique network address. Under the Internet's present TCP/IP (Transmission Control Protocol/Internet Protocol) scheme (which is also used for other networks), each device connected to the Internet is identified by a 32-bit IP address comprising four 8-bit segments separated by dots, e.g., 207.21.32.212. Each IP address comprises a unique network ID, and a unique host ID, the latter of which identifies a workstation, server, router, or other TCP/IP device on the network. Accordingly, each of the individual computers used by the game players is assigned to its own IP address. As a result, a game host can enable new players to join a game by telling the other players the IP address of the host's machine.
Initiating a game in this matter is burdensome and prone to error. First, all of the players must be apprised of the host's IP address. In general, the host must inform each player of the host's IP address, unless the host uses a computer that is assigned to a static (i.e., permanent) IP address. For example, most game players connect to the Internet via a dial-up online Internet Service Provider (ISP), such as AMERICA ONLINE™, MSN™, COMPUSERVE™, EARTHLINK™, MINDSCAPE™, etc. Each of these ISPs has a fixed number of connections it can use simultaneously, with each connection being assigned to a unique, static IP address. In general, the number of connections (and thus IP addresses) is only a fraction of the number of customers to whom the ISP provides service. Accordingly, the ISPs use dynamic IP addressing schemes, whereby users are dynamically assigned to a connection (and the connection's corresponding IP address) upon logging onto the ISP, and the IP address of the connection is released for use by a subsequent user when the initial user logs off of the ISP. As a result, there is no way to assign a static IP address to users of ISPs of this type. Accordingly, the only way the players can be apprised of the host's IP address is for the host to let them know what the IP address is after it has been assigned, which is typically done through e-mail or via a phone call.
An improvement over the foregoing manual method is provided by online lookup services. In this instance, each member of the online lookup service is assigned a unique alias (i.e., user name) upon signing up for the service, wherein that user is always identified by the alias whenever the user logs onto the lookup service. In addition, upon logging on, the IP address for the user is matched to the user's alias so that the user's IP address can be accessed by application programs running on other computers through use of the alias. As a result, players can then search the online lookup service for the aliases of a host or hosts the players know are or will be hosting a game, wherein the IP addresses of those hosts is passed to the players (generally behind the scenes to an application program running on the player's computer). At this point, the players may still need to manually enter the IP address of the host in order to join the game.
Although the online lookup service scheme is an improvement over the manual method, it is still deficient in many respects. Notably, this scheme doesn't provide a convenient way to invite players to join games, wherein the invited players can decide whether they want to join the game. Additionally, the host must access multiple application programs and perform many steps in order to initiate a multiplayer game. Accordingly, it is desired to provide an improved scheme for enabling individuals to host multiplayer computer games and other players to join such games that overcomes the many limitations of the foregoing manual and online lookup service schemes.