U.S. Pat. No. 8,956,232

SPECIAL REGIONAL ONLINE VIDEO GAME FORUM BASED ON LOCATION

AssigneeSony Computer Entertainment America LLC

Issue DateMay 3, 2011

Illustrative Figure

Abstract

Methods, systems, and devices are presented for automatically creating a special chat or common video game environment forum and inviting online video game players to the forum based on their common demographics. The determination of common demographics can be generated through clustering algorithms. Players in the same city, players with the same playing techniques, and/or players sharing other common attributes can play as teams or against each other. As players drop out of the forum, the criteria for invitations to the forum are expanded to include other online players.

Description

DETAILED DESCRIPTION Computerized, automated methods for determining whether there are enough video game players currently playing a game in a certain city to form a chat room or other forum are described, as well as other variations and embodiments. When a threshold number of players are currently online and playing a video game, they can be sent an invite to join a special forum. The forum can be a chat forum (e.g. using instant messaging or voice) through which players can simply talk about their respective games, or the forum can involve an actual common game environment for the players. Devices and systems for implementing the methods are also described. When the number of players in the forum decreases below the threshold number, the forum can be shut down or the forum can be opened to additional players. Criteria other than whether than players are in a certain city are contemplated. For example, if certain players have a peculiar way of playing the game, then they might be invited to their own forum. Such players might always use a certain weapon in the game, or they may be very new players and characterized by algorithms as wandering novices. A variety of statistical information about each player can be culled and analyzed in order to make these determinations. Online multiplayer games can collect information about a player, such as his or her geographic location derived from an internet protocol (IP) address, or method of gameplay, such as whether the player typically goes out of his or her way to uncover an ultra-secret easter egg in the game. Such statistics can be subject to clustering algorithms in order to find common demographics. For example, a computer may determine from player profiles that certain users that log in to a World War II ...

DETAILED DESCRIPTION

Computerized, automated methods for determining whether there are enough video game players currently playing a game in a certain city to form a chat room or other forum are described, as well as other variations and embodiments. When a threshold number of players are currently online and playing a video game, they can be sent an invite to join a special forum. The forum can be a chat forum (e.g. using instant messaging or voice) through which players can simply talk about their respective games, or the forum can involve an actual common game environment for the players. Devices and systems for implementing the methods are also described. When the number of players in the forum decreases below the threshold number, the forum can be shut down or the forum can be opened to additional players.

Criteria other than whether than players are in a certain city are contemplated. For example, if certain players have a peculiar way of playing the game, then they might be invited to their own forum. Such players might always use a certain weapon in the game, or they may be very new players and characterized by algorithms as wandering novices. A variety of statistical information about each player can be culled and analyzed in order to make these determinations.

Online multiplayer games can collect information about a player, such as his or her geographic location derived from an internet protocol (IP) address, or method of gameplay, such as whether the player typically goes out of his or her way to uncover an ultra-secret easter egg in the game. Such statistics can be subject to clustering algorithms in order to find common demographics. For example, a computer may determine from player profiles that certain users that log in to a World War II simulation game at 2:30 pm on Fridays all like hockey. This common demographic trait may not be apparent through any other of the data. If enough of these players log in to play their games at once, a special forum can be set up for them to play the war game in a common environment. These players can be arrayed against themselves or aligned against another group that logs in at substantially the same time. For example, the war simulation game may team up those who like hockey against a team formed by those who live in Tallahassee, Fla. who happen to log in at the same time.

As the forum progresses over time, additional users may join and other users may drop out. When the number of players in the forum drops below the threshold amount, a notice can be sent to all the players in the forum that it is going to close. In some embodiments, the forum can be expanded to include those who were not invited in the original forum but are closely related to those in the forum. For example, a forum for those who always use a particular bow and arrow weapon in a shoot-'em-up game can be expanded—when bow and arrow players start dropping off—to those who like to play with a crossbow.

FIG. 1illustrates dialog windows in accordance with an embodiment. In window101, a user is prompted to log in to a system using a username and password. After authentication, the user is then prompted with invite102to join a chat forum. Invite102shows the number of other players in the area with which the user could chat. If the user selects “N” for no, then a standard PlayStation® Network (PSN) screen is displayed. If the user selects “Y” for yes, then chat window103is displayed to the user.

In chat window103, user list104displays all the other players who accepted the invitation to chat with other players. Chat screen105allows users to type or otherwise enter messages to other users as well as see what other players have entered. This can include helpful hints on the game, taunts to each other as game play progresses, or collaborative messages on how to handle a foe.

FIG. 2is a flowchart of a process in accordance with an embodiment. In process200, a user logs in at operation201, and then his or her location is determined in operation202from the IP address of the computer from which the user logged in. In operation203, it is determined whether there is a chat room local to the user's location. If there is, then in operation204, the user is alerted to the existence of the local chat room and invited to join. If there is not a local chat room, then a counter is incremented for a potential, future chat room for the locale. If the counter is over a predetermined threshold in operation206, then a chat room for the locale is created in operation207. All users in the local area are alerted to the chat room in operation208.

FIG. 3is a flowchart of a process in accordance with an embodiment. With an existing set of chat rooms, a server computer can track the number of players from each location. In operation301, a user logs out of one of the chat rooms. The server computer determines the location of the user that logged out in operation302. The counter associated with that location is decremented in operation303. In operation304, it is determined whether the chat room is empty (i.e., the user that just logged out was the last user in the chat room) or whether the number of players in the chat room is below a minimum count. The minimum count/threshold may be predetermined by the organizers of the chat room or servers. The owners may not wish to support a chat room for fewer than twenty five players. In operation305, the chat room for the location is removed. Other chat rooms serviced by the server can remain in operation.

FIG. 4illustrates a player count system in accordance with an embodiment. When a chat forum system is initialized, the player count in each location, shown in counter401, is zero. When a user logs in to play the game, a counter for that player's location is incremented as shown by counter402. This occurs before a chat room is created and before any invitations are sent. As more users log in to their respective machines, the counts for the various locations are incremented, as shown in counter403. Still, there are not enough players in each location to trip the threshold. In the exemplary embodiment, the threshold to begin a chat room for each city is 100.

When additional players log in, their location counts rise above the threshold of 100, as shown in counter404. The player counts for two cities (i.e., Dallas and San Diego in the figure) are above 100. Thus, chat rooms are opened in the two cities. All 100 players in Dallas are invited to join the Dallas chat room, and all 141 players in San Diego are invited to join the San Diego chat room. London, however, does not have enough players to justify a chat room.

When the number of players in a chat room falls below 100, the chat room can be removed. Counter405indicates that the number of players in Dallas has fallen to 98; therefore, the Dallas chat room is removed after notice to the chat room participants. The San Diego chat room, with 150 players, is still going strong. London, with only 89 players, still does not have enough players to justify a chat room. As counts rise and fall, chat rooms can be created and deleted.

Geographic criteria can be expanded in some embodiments so as to open up the chat room or other forum instead of shutting it down.

FIG. 5illustrates a larger, expanded geographic area for additional players in accordance with an embodiment. A forum dedicated to video game players within the city limits of Seattle is created for area501. Players in Seattle play an online game against each other in a common world. The players from Seattle may be teamed with each other against those in a different region. For example, the Seattle players may play a pickup football video game as the Seattle Seahawks against a similar group of video game players in Minneapolis/St. Paul playing as the Minnesota Vikings

The number of players can be calculated as a simple number of those playing at any one instant, a rolling average, or other numerical smoothing. The number may account for those who are logged in but have not moved in awhile or whose screens have gone to a screensaver mode.

Thresholds can be set by administrators and/or determined from standard deviations from average. For example, if the current number of players in a city is more than two times the standard deviation of the historical average number of players in the city, then that increase above the mean can be considered a threshold. Alternately, an organizer can simply type in a number of players required; this human intervention may best gauge the best critical mass of players needed to keep the game fun and playable in some instances.

The Seattle forum may lose enough players as they log out that at some point there are not enough players to field a viable team. In this case, instead of immediately shutting down the gameplay forum, players of the football video game in the areas surrounding Seattle can be invited to play. For example, players in Bellevue, Renton, and Shoreline can be invited to play. If enough players from the greater Seattle area elect to play, then the virtual football game can continue against the diehards in Minnesota.

FIG. 6illustrates clustering in accordance with an embodiment. Users of a video game are clustered according to various information gleaned about them from their online user profiles, their modus operandi when playing, and/or their explicit answers to questions. Clusters of users may be identified by a computer, automatically and without human intervention.

For example, it might so happen that several users playing the video game have the first name “David.” Another set of players might typically farm a particular fruit in their virtual garden or have sent in their game registrations on the same day (i.e., December 25). The players can be clustered by these attributes. All players named “David” can have their scores aggregated against strawberry farmers in a virtual world.

In user base600, a cluster of users601has been found. Users601in the cluster all share a same or related trait, such that they are identified as being part of a cluster, cluster602. The number of people in the cluster is over a predefined threshold of ten; therefore, a special forum for game play is opened up for them.

If some of the users602log out of the forum, then the forum can be expanded to invite users in cluster603. These users may share similar traits to users601but not be immediately characterized as in the same cluster. Cluster603may be referred to as a super cluster.

Another cluster of users, cluster604, has been identified in user base600. These users share a common attribute. However, there are less than the requisite ten users in the cluster, so no forum is created for them.

FIG. 7is a flowchart illustrating process700in accordance with an embodiment. In operation701, a common demographic of players playing an online video game is determined, using at least one processor operatively coupled with a memory. The number of players with the common demographic exceeds a threshold number. In this case, the common demographic is the location of the players in a geographic area. In operation702, a special forum is automatically created for game play based on the determination. In operation703, an invite to join the forum is automatically sent to at least some of the players actively playing the game.

In operation704, the number of players in the forum is tracked. In operation705, it is determined that the number of players in the forum has fallen below the threshold number. In operation706, the geographic area is expanded to include a larger, expanded geographic area based on the determination that the number of players in the forum has fallen below the threshold number. In operation707, an invite to join the forum is automatically sent to at least some players in the expanded geographic area.

FIG. 8is a flowchart illustrating process800in accordance with an embodiment. In operation801, whether a number of video game players in a predetermined geographic area is above a threshold is determined. In operation802, a forum for chatting amongst the video game players is automatically created, using at least one processor operatively coupled with a memory, based on the determination. In operation803, an invite is automatically sent to at least some of the players to join the forum.

In operation804, a number of players in the forum is tracked. In operation805, it is determined that the number of players in the forum has fallen below the threshold. In operation806, the players in the forum are notified that the forum will be shut down. In operation807, the forum is shut down.

FIG. 9is a flowchart illustrating process900in accordance with an embodiment. In operation901, it is determined that a statistically significant change in demographics of players playing an online video game has occurred. The determining is computed through statistical clustering of demographic data of the players. In operation902, a special forum is automatically created for game play based on the determination. In operation903, an invite to join the forum is automatically sent to at least some of the players.

The operations may be performed in the sequence given above or in different orders as applicable. They can be automated in a computer or other machine and can be coded in software, firmware, or hard coded as machine-readable instructions and run through one or more processors that can implement the instructions.

FIG. 10illustrates an example of a hardware system suitable for implementing a device in accordance with various embodiments. This block diagram illustrates a computer system1000, such as a personal computer, video game console and associated display, mobile device, personal digital assistant, or other digital device, suitable for practicing embodiments of the invention. Computer system1000includes a central processing unit (CPU)1005for running software applications and optionally an operating system. CPU1005may be made up of one or more homogeneous or heterogeneous processing cores. Memory1010stores applications and data for use by the CPU1005. Storage1015provides non-volatile storage and other computer readable media for applications and data and may include fixed disk drives, removable disk drives, flash memory devices, and CD-ROM, DVD-ROM, Blu-ray, HD-DVD, or other optical storage devices, as well as signal transmission and storage media. User input devices1020communicate user inputs from one or more users to the computer system1000, examples of which may include keyboards, mice, joysticks, touch pads, touch screens, still or video cameras, and/or microphones. Network interface1025allows computer system1000to communicate with other computer systems via an electronic communications network, and may include wired or wireless communication over local area networks and wide area networks such as the Internet. An audio processor1030is adapted to generate analog or digital audio output from instructions and/or data provided by the CPU1005, memory1010, and/or storage1015. The components of computer system1000, including CPU1005, memory1010, data storage1015, user input devices1020, network interface1025, and audio processor1030are connected via one or more data buses1035.

A graphics subsystem1040is further connected with data bus1035and the components of the computer system1000. The graphics subsystem1040includes a graphics processing unit (GPU)1045and graphics memory1050. Graphics memory1050includes a display memory (e.g., a frame buffer) used for storing pixel data for each pixel of an output image. Graphics memory1050can be integrated in the same device as GPU1045, connected as a separate device with GPU1045, and/or implemented within memory1010. Pixel data can be provided to graphics memory1050directly from the CPU1005. Alternatively, CPU1005provides the GPU1045with data and/or instructions defining the desired output images, from which the GPU1045generates the pixel data of one or more output images. The data and/or instructions defining the desired output images can be stored in memory1010and/or graphics memory1050. In an embodiment, the GPU1045includes 3D rendering capabilities for generating pixel data for output images from instructions and data defining the geometry, lighting, shading, texturing, motion, and/or camera parameters for a scene. The GPU1045can further include one or more programmable execution units capable of executing shader programs.

The graphics subsystem1040periodically outputs pixel data for an image from graphics memory1050to be displayed on display device1055. Display device1055can be any device capable of displaying visual information in response to a signal from the computer system1000, including CRT, LCD, plasma, and OLED displays. Computer system1000can provide the display device1055with an analog or digital signal.

In accordance with various embodiments, CPU1005is one or more general-purpose microprocessors having one or more processing cores. Further embodiments can be implemented using one or more CPUs1005with microprocessor architectures specifically adapted for highly parallel and computationally intensive applications, such as media and interactive entertainment applications.

The components of a system may be connected via a network, which may be any combination of the following: the Internet, an IP network, an intranet, a wide-area network (“WAN”), a local-area network (“LAN”), a virtual private network (“VPN”), the Public Switched Telephone Network (“PSTN”), or any other type of network supporting data communication between devices described herein, in different embodiments. A network may include both wired and wireless connections, including optical links. Many other examples are possible and apparent to those skilled in the art in light of this disclosure. In the discussion herein, a network may or may not be noted specifically.

In the foregoing specification, the invention is described with reference to specific embodiments thereof, but those skilled in the art will recognize that the invention is not limited thereto. Various features and aspects of the above-described invention may be used individually or jointly. Further, the invention can be utilized in any number of environments and applications beyond those described herein without departing from the broader spirit and scope of the specification. The specification and drawings are, accordingly, to be regarded as illustrative rather than restrictive.

It should be noted that the methods, systems, and devices discussed above are intended merely to be examples. It must be stressed that various embodiments may omit, substitute, or add various procedures or components as appropriate. For instance, it should be appreciated that, in alternative embodiments, the methods may be performed in an order different from that described, and that various steps may be added, omitted, or combined. Also, features described with respect to certain embodiments may be combined in various other embodiments. Different aspects and elements of the embodiments may be combined in a similar manner. Also, it should be emphasized that technology evolves and, thus, many of the elements are examples and should not be interpreted to limit the scope of the invention.

Specific details are given in the description to provide a thorough understanding of the embodiments. However, it will be understood by one of ordinary skill in the art that the embodiments may be practiced without these specific details. For example, well-known circuits, processes, algorithms, structures, and techniques have been shown without unnecessary detail in order to avoid obscuring the embodiments.

Also, it is noted that the embodiments may be described as a process which is depicted as a flow diagram or block diagram. Although each may describe the operations as a sequential process, many of the operations can be performed in parallel or concurrently. In addition, the order of the operations may be rearranged. A process may have additional steps not included in the figure.

Moreover, as disclosed herein, the term “memory” or “memory unit” may represent one or more devices for storing data, including read-only memory (ROM), random access memory (RAM), magnetic RAM, core memory, magnetic disk storage mediums, optical storage mediums, flash memory devices, or other computer-readable mediums for storing information. The term “computer-readable medium” includes, but is not limited to, portable or fixed storage devices, optical storage devices, wireless channels, a sim card, other smart cards, and various other mediums capable of storing, containing, or carrying instructions or data.

Furthermore, embodiments may be implemented by hardware, software, firmware, middleware, microcode, hardware description languages, or any combination thereof. When implemented in software, firmware, middleware, or microcode, the program code or code segments to perform the necessary tasks may be stored in a computer-readable medium such as a storage medium. Processors may perform the necessary tasks.

Having described several embodiments, it will be recognized by those of skill in the art that various modifications, alternative constructions, and equivalents may be used without departing from the spirit of the invention. For example, the above elements may merely be a component of a larger system, wherein other rules may take precedence over or otherwise modify the application of the invention. Also, a number of steps may be undertaken before, during, or after the above elements are considered. Accordingly, the above description should not be taken as limiting the scope of the invention.

Claims

  1. A method of identifying a special forum in a video game, the method comprising: determining, using at least one processor operatively coupled with a memory, a first common demographic profile of players playing an online video game, the number of the players with the first common demographic profile exceeding a threshold number;automatically creating a first in-game forum to enable game play based on the determination;sending a first invite to join the first in-game forum to at least some of the players matching the first common demographic profile;determining, using the at least one processor operatively coupled with a memory, a second common demographic profile of the players playing the online video game;automatically creating a second in-game forum to enable game play based on the determination of the second common demographic profile;sending a second invite to join the second in-game forum to at least some of the players matching the second common demographic profile;and enabling a first group of the players that join the first in-game forum to compete in the online video game against a second group of players that join the second in-game forum.
  1. The method of claim 1 wherein the determining of the first common demographic profile or the determining of the second common demographic profile is computed through statistical clustering of demographic data of the players.
  2. The method of claim 1 wherein the first common demographic profile includes a statistic on each respective player's game play.
  3. The method of claim 3 wherein the first common demographic profile includes a use of a particular weapon.
  4. The method of claim 1 wherein the first common demographic profile of the players is location in a geographic area.
  5. The method of claim 5 wherein the geographic area is a city.
  6. The method of claim 5 further comprising: tracking a number of players in the first in-game forum;determining that the number of players in the first in-game forum has fallen below the threshold;expanding the geographic area to include a larger, expanded geographic area, based on the determination that the number of players in the first in-game forum has fallen below the threshold number;and automatically sending an invite to join the first in-game forum to at least some players in the expanded geographic area.
  7. The method of claim 1 further comprising: tracking a number of players in the first in-game forum;determining that the number of players in the first in-game forum has fallen below the threshold number;notifying the players that the first in-game forum will be shut down;and shutting down the first in-game forum.
  8. The method of claim 1 wherein the first in-game forum is an in-game chat forum.
  9. The method of claim 1 wherein the first in-game forum is a common game environment for multiplayer game play.
  10. The method of claim 10 wherein the common game environment includes a tournament.
  11. The method of claim 1 wherein the invite includes an email.
  12. The method of claim 1 wherein determining the first common demographic profile, automatically creating the first in-game forum and sending an invite are performed in the order shown.
  13. The method of claim 1 wherein determining the first common demographic profile, automatically creating the first in-game forum and sending an invite are each performed by the at least one processor operatively coupled to the memory.
  14. A method of identifying a regional forum in a video game, the method comprising: determining whether a number of video game players in a first predetermined geographic area is above a first threshold number;automatically creating, using at least one processor operatively coupled with a memory, a first in-game forum for chatting amongst the video game players based on the determination;sending an invite to at least some of the video game players to join the first in-game forum;determining, using the at least one processor operatively coupled with the memory, whether a number of video game players in a second geographic area is above a second threshold number;automatically creating a second in-game forum to enable game play based on the determination of whether a number of video game players in the second geographic area is above the second threshold number;sending a second invite to join the second in-game forum to at least some of the video game players in the second geographic area;and enabling at least a subset of the video game players that join the first in-game forum to form at least a first group to compete against at least a subset of video game players that join the second in-game forum.
  15. The method of claim 15 further comprising: tracking a number of video game players in the first in-game forum;determining that the number of video game players in the first in-game forum has fallen below the first threshold number;notifying the video game players in the first in-game forum that the first in-game forum will be shut down;and shutting down the first in-game forum.
  16. A method of identifying a special forum for a video game, the method comprising: determining a statistically significant change in a first demographic profile of players playing an online video game;automatically creating a first special in-game environment for the first demographic profile to allow game play together of players matching the first demographic profile based on the determination;automatically sending an invite to join the first in-game environment to at least some of the players in the first demographic profile;determining a statistically significant change in a second demographic profile of players playing an online video game;automatically creating a second special in-game environment for the second demographic profile to allow game play together of players matching the second demographic profile based on the determination of the statistically significant change in the second demographic profile;automatically sending an invite to join the second in-game environment to at least some of the players in the second demographic profile;and enabling players in the first in-game environment to play in the online video game against the players in the second in-game environment.
  17. The method of claim 17 wherein the determining of the statistically significant change in the first demographic profile or the determining of the statistically significant change in the second demographic profile is computed through statistical clustering of demographic data of the players.

Disclaimer: Data collected from the USPTO and may be malformed, incomplete, and/or otherwise inaccurate.