Dynamic social community construction based on scenario in real-time game of player

文档序号:213522 发布日期:2021-11-05 浏览:13次 中文

阅读说明:本技术 基于玩家的实时游戏中情景构建动态社交社区 (Dynamic social community construction based on scenario in real-time game of player ) 是由 W.贝内德托 L.诺斯 于 2020-02-06 设计创作,主要内容包括:一种游戏方法,其包括接收进行游戏应用的玩家的游戏进行的游戏状态。所述方法包括基于游戏状态跟踪所述游戏进行中的每一个的游戏进行进程,其中游戏进行进程由对应一组关系特性定义。第一玩家的第一游戏进行与第一组关系特性相关联。所述方法包括为所述第一玩家识别具有对应游戏进行的玩家,每个游戏进行包括来自所述第一组关系特性的一个或多个关系特性。所述方法包括使识别的玩家出现以显示给所述第一玩家。每个出现的玩家具有与第一游戏进行进程相关的对应游戏进行进程。每个出现的玩家与对应通信警告指示符相关联,所述对应通信警告指示符提供对应出现的玩家和所述第一玩家的游戏进行之间的相对游戏进行进程。(A gaming method includes receiving a game state of a game play of a player playing a gaming application. The method includes tracking a game play progress for each of the game plays based on a game state, wherein a game play progress is defined by a corresponding set of relationship characteristics. A first game play of a first player is associated with a first set of relationship characteristics. The method includes identifying, for the first player, a player having a corresponding game play, each game play including one or more relationship characteristics from the first set of relationship characteristics. The method includes causing the identified player to appear for display to the first player. Each player present has a corresponding game play session associated with the first game play session. Each emerging player is associated with a corresponding communication alert indicator that provides a relative game play progression between game plays of the corresponding emerging player and the first player.)

1. A method of gaming, comprising:

receiving a plurality of game states of a plurality of game plays of a plurality of players playing a game application;

tracking a game play progress for each of the plurality of game plays based on the plurality of game states, wherein a game play progress is defined by a corresponding set of relationship characteristics, wherein a first game play of a first player is associated with a first set of relationship characteristics;

identifying one or more players for the first player having corresponding game plays, each game play including one or more relationship characteristics from the first set of relationship characteristics for the first player;

causing one or more identified players to appear for display to the first player,

wherein each of the players present has a corresponding game play session associated with a first game play session of the first player,

wherein each of the emerging players is associated with a corresponding communication alert indicator that provides a relative game play progression between game plays of the corresponding emerging player and the first player.

2. The method of claim 1, wherein the first and second light sources are selected from the group consisting of a red light source, a green light source, and a blue light source,

wherein the relational characteristics comprise Quantized Gaming Activities (QGAs), wherein each corresponding QGA comprises a corresponding set of quantifiable actions;

wherein the corresponding game play process includes the corresponding one or more implemented QGAs.

3. The method of claim 1, further comprising:

causing a spectator to appear for display to the first player, wherein the spectator is viewing game play of the appearing players.

4. The method of claim 1, further comprising:

contacting the first player with the at least one selected player present to effect communication.

5. A method of gaming, comprising:

receiving a plurality of game states of a plurality of game plays of a plurality of players playing a game application;

tracking a Quantified Game Activity (QGA) progress for each of the plurality of game plays based on the plurality of game states;

at a first point in time, determining a first QGA process for a first game play of a first player playing the game application;

determining a player social community at the first point in time, wherein corresponding players in the player social community have corresponding QGA processes that share one or more implemented QGAs with a first set of implemented QGAs of the first QGA process;

providing a corresponding progress warning indicator for the corresponding player in the player social community, displaying the relative progress of the QGA processes of the corresponding player and the first player; and

generating a Graphical User Interface (GUI) including a list of players in the player social community having corresponding progress warning indicators for selection to enable communication between the first player and one or more players in the social community.

6. The method of claim 5, wherein the tracking QGA progress of each of the plurality of game plays comprises:

determining a plurality of actions from respective game states of respective game play; and

determining one or more implemented QGAs for the corresponding game play, wherein each corresponding implemented QGA includes a corresponding set of quantifiable actions to implement.

7. The method of claim 5, wherein the determining a social community of players comprises:

determining, at a second point in time, a second gaming activity session for the first game play of the first player playing the gaming application, wherein the second point in time is subsequent to the first point in time; and

dynamically update the player social community at the second point in time based on implemented gaming activity of the second gaming activity session of the first player.

8. The method of claim 5, wherein the corresponding QGA process of the corresponding player comprises a corresponding set of implemented QGAs that are the same as the first set of implemented QGAs of the first QGA process.

9. The method of claim 5, further comprising:

sending the GUI to the first player's device, the GUI including the list of players in the player social community for selection to enable direct one-to-one communication;

for a respective player in the list, providing a respective symbol indicating progress of a respective game play of the respective player relative to progress of the first game play of the first player; and

the first player is contacted with a selected player in the player social community to enable communication.

10. The method of claim 9, further comprising:

categorizing players in the list of player social communities as friends, or collections, or recently encountered, or one of all players.

11. The method of claim 5, further comprising:

providing a plurality of group channels, wherein each group channel has a corresponding discussion topic;

the first player is contacted with a first group of channels to enable communication between the contacted players.

12. The method of claim 11, wherein the first group of channels are official channels sponsored by a game developer of the game application.

13. The method of claim 5, wherein the corresponding progress warning indicator is at least one of:

a red progress warning indicator representing that a corresponding gaming activity course of the corresponding player precedes a first gaming activity course of the first player;

a yellow progress warning indicator that indicates that the corresponding gaming activity progress of the corresponding player lags behind the first gaming activity progress of the first player; or

A green progress warning indicator indicating that the corresponding gaming activity progress of the corresponding player is within an acceptable range for the first gaming activity progress of the first player.

14. A method of gaming, comprising:

receiving a plurality of game states of a plurality of game plays of a plurality of players playing a game application;

tracking a plurality of interaction zones in a game world associated with the plurality of game plays, wherein each game play is currently participating in a corresponding interaction zone;

determining a first interaction zone in the game world associated with a first game play by a first player playing the game application;

filtering the plurality of players to construct a player social community, wherein players in the player social community have corresponding interaction regions in the game world that are within a predefined offset of the first interaction region associated with the first game play of the first player; and

contacting the first player with at least one player in the player social community to enable communication between the contacted players.

15. The method of claim 14, wherein the screening the plurality of players to construct a player social community comprises:

determining a task currently in progress in the first game play of the first player,

wherein the players in the player social community have corresponding game plays that are currently playing the mission.

16. The method of claim 14, wherein the screening the plurality of players to construct a player social community comprises:

determining a first map region as the first interaction zone associated with the first game play of the first player,

wherein the players in the player social community have corresponding game plays that are currently participating in the first map region.

17. The method of claim 14, wherein the screening the plurality of players to construct a player social community comprises:

determining a first field of view associated with the first game play of the first player,

wherein the players in the player social community have corresponding game plays that display corresponding views within a predefined angular offset of the first view.

18. The method of claim 17, further comprising:

determining that a depth buffer for a second field of view associated with a second game play of a second player prevents viewing of objects visible in the first field of view; and

removing the second player from the player social community.

19. The method of claim 14, wherein the screening the plurality of players to construct a player social community comprises:

determining first map coordinates of the first game play of the first player, the first map coordinates being within the first interaction zone,

wherein the players in the player social community have corresponding map coordinates associated with corresponding game plays within a predefined distance of the first map coordinate.

20. A non-transitory computer-readable medium storing a computer program for upgrading a data storage system, the computer-readable medium comprising:

program instructions for receiving a plurality of game states of a plurality of game plays by a plurality of players playing a game application;

program instructions for tracking a Quantified Game Activity (QGA) progress for each of the plurality of game plays based on the plurality of game states;

program instructions for determining, at a first point in time, a first QGA process for a first game play of a first player playing the game application;

program instructions for determining a player social community at the first point in time, wherein corresponding players in the player social community have corresponding QGA processes that share one or more implemented QGAs with a first set of implemented QGAs of the first QGA process;

program instructions for providing, for the corresponding player in the player social community, a corresponding progress warning indicator to display relative progress of QGA processes of the corresponding player and the first player; and

program instructions for generating a Graphical User Interface (GUI) including a list of players in the player social community having corresponding progress warning indicators for selection to enable communication between the first player and one or more players in the social community.

21. The non-transitory computer readable medium of claim 20, wherein the program instructions for tracking QGA progress for each of the plurality of game plays comprise:

program instructions for determining a plurality of actions from respective game states of respective game play; and

program instructions for determining one or more implemented QGAs for the corresponding game play, wherein each corresponding implemented QGA includes a corresponding set of quantifiable actions to implement.

22. The non-transitory computer readable medium of claim 20, wherein the program instructions for determining a social community of players comprise:

program instructions for determining, at a second point in time, a second course of gaming activity for the first game play by the first player playing the gaming application, wherein the second point in time is subsequent to the first point in time; and

program instructions for dynamically updating the player social community at the second point in time based on implemented gaming activity of the second gaming activity session of the first player.

23. The non-transitory computer-readable medium of claim 20, wherein the corresponding progress-warning indicator is at least one of:

a red progress warning indicator representing that a corresponding gaming activity course of the corresponding player precedes a first gaming activity course of the first player; or

A yellow progress warning indicator that indicates that the corresponding gaming activity progress of the corresponding player lags behind the first gaming activity progress of the first player; or

A green progress warning indicator indicating that the corresponding gaming activity progress of the corresponding player is within an acceptable range for the first gaming activity progress of the first player.

24. The non-transitory computer-readable medium of claim 20, further comprising:

program instructions for sending the GUI to the first player's device, the GUI including the list of players in the player social community to select for direct one-to-one communication;

program instructions for providing, for respective players in the list, respective symbols indicating progress of respective game play of the respective players relative to progress of the first game play of the first player; and

program instructions for causing the first player to contact a selected player in the player social community to effect a communication.

25. The non-transitory computer-readable medium of claim 20, further comprising:

program instructions for providing a plurality of group channels, wherein each group channel has a corresponding discussion topic; and

program instructions for contacting the first player with a first group of channels to enable communication between the contacted players.

Technical Field

The present disclosure relates to video games and social networking, and more particularly, to establishing a social community for players playing a gaming application based on in-game processes and locations of game play, wherein the social community includes players playing the same game in the same in-game processes or locations.

Background

As computing systems become more capable of higher processing power, video games become more complex and widespread. For example, open world video games allow players to move throughout the gaming environment without any predetermined patterns. That is, the player is free to explore the gaming environment without following any ordered approach. In addition, a forum may be established that allows players of the video game to obtain information. These forums may provide step-by-step instructions on how to complete the task or how to reach the next level. These forums provide important social connections for players of video games, such as by allowing players with the same interests for a particular video game to interact with each other.

However, players joining the forum may risk revealing sensitive and redundant information without any warning. Sensitive information may affect the enjoyment of playing the video game. For example, sensitive information may include a series that describes how a video game ends, or may include a series that reveals a plot break, etc. Upon learning such information, the player may be affected such that the video game may no longer be so interesting and soon the player may stop playing that video game-even if not finished.

Participants in the forum may not even know that they are revealing sensitive information. For example, a participant asking questions in a forum may unknowingly reveal an upcoming obstacle or a large heading to other players at the end of a certain portion of the game. In another case, the information-providing player may take great care to avoid revealing potentially sensitive information by pre-alerting the player before communicating that potentially sensitive information may be revealed soon. In each of these situations, whether the participant seeks information or provides information, extensive measures need to be taken to avoid disrupting the video game of some participants in the forum. Unfortunately, even if all of these precautions are taken, the participants may still be informed of sensitive information. Thus, some players may choose to avoid all forums for fear of learning sensitive information, even if they really want to join a forum to know only enough information about their game play (e.g., how to complete a difficult task, etc.), or even just interact at will with others who also like to play a video game-such as talking about a video game while a bar is drinking beer.

It is in this context that embodiments of the present disclosure are presented.

Disclosure of Invention

Embodiments of the present disclosure relate to systems and methods for building instant social connections and newborns based on in-game processes and locations of particular players. The player may participate in a real-time mobile social experience by contacting other players playing the same game at similar points (physically or procedurally) in the video game. This helps to reduce the risk of a cut-through, since all players are essentially in the same part of the game and know about the same information. That is, players in a particular newborn community may not know any sensitive information that could disrupt the games of others in the newborn community. In this way, the players can contact and communicate with each other without the need to take care to avoid revealing sensitive information.

In one embodiment, a method of gaming is disclosed. The method includes receiving a plurality of game states of a plurality of game plays of a plurality of players playing a gaming application. The method includes tracking a game play progress for each of a plurality of game plays based on a plurality of game states, wherein the game play progress is defined by a corresponding set of relationship characteristics, wherein a first game play of a first player is associated with a first set of relationship characteristics. The method includes identifying, for a first player, one or more players having corresponding game plays, each game play including one or more relationship characteristics from a first set of relationship characteristics of the first player. The method includes causing one or more identified players to appear for display to the first player. Each of the players present has a corresponding game play session associated with the first game play session of the first player. Each of the emerging players is associated with a corresponding communication alert indicator that provides a relative game play progression between game plays of the corresponding emerging player and the first player.

In one embodiment, a method of gaming is disclosed. The method includes receiving a plurality of game states of a plurality of game plays of a plurality of players playing a gaming application. The method includes tracking a Quantified Game Activity (QGA) progress for each of a plurality of game plays based on a plurality of game states. The method includes determining, at a first point in time, a first QGA process for a first game play of a first player playing a gaming application. The method includes determining a player social community at a first point in time, wherein corresponding players in the player social community have corresponding QGA processes that share one or more implemented QGAs with a first set of implemented QGAs of a first QGA process. The method includes providing a respective progress warning indicator for a respective player in the player's social community, displaying a relative progress of the QGA processes of the respective player and the first player. The method includes generating a Graphical User Interface (GUI) including a list of players in a player social community having corresponding progress warning indicators for selection to enable communication between a first player and one or more players in the social community.

In another embodiment, another method of gaming is disclosed. The method includes receiving a plurality of game states of a plurality of game plays of a plurality of players playing a gaming application. The method includes tracking a plurality of interaction zones associated with a plurality of game plays in a game world, wherein each game play is currently participating in a corresponding interaction zone. The method includes determining a first interaction zone in a game world associated with a first game play by a first player playing a gaming application. The method includes screening a plurality of players to construct a player social community, wherein players in the player social community have corresponding interaction regions in the game world that are within a predefined offset of a first interaction region associated with a first game play of a first player. The method includes contacting a first player with at least one player in a social community of players to enable communication between the contacted players.

In another embodiment, a non-transitory computer readable medium storing a gaming computer program is disclosed. The computer readable medium includes program instructions for: a plurality of game states of a plurality of game plays of a plurality of players playing a game application are received. The computer readable medium includes program instructions for: a Quantified Game Activity (QGA) progress for each of a plurality of game plays is tracked based on a plurality of game states. The computer readable medium includes program instructions for: a first QGA process for a first game play of a first player playing a gaming application is determined at a first point in time. The computer readable medium includes program instructions for: determining a player social community at a first point in time, wherein corresponding players in the player social community have corresponding QGA processes that share one or more implemented QGAs with a first set of implemented QGAs of a first QGA process. The computer readable medium includes program instructions for: a respective progress warning indicator is provided for a respective player in the player's social community, displaying the relative progress of the QGA process for the respective player and the first player. The computer readable medium includes program instructions for: a Graphical User Interface (GUI) is generated that includes a list of players in a social community of players having corresponding progress-warning indicators for selection to enable communication between the first player and one or more players in the social community.

In yet another embodiment, a computer system is disclosed, wherein the computer system comprises a processor and a memory coupled to the processor and having stored therein instructions that, if executed by the computer system, cause the computer system to perform a method of gaming. The method, when executed by a computer system, includes receiving a plurality of game states for a plurality of game plays of a plurality of players playing a gaming application. The method includes tracking a Quantified Game Activity (QGA) progress for each of a plurality of game plays based on a plurality of game states. The method includes determining, at a first point in time, a first QGA process for a first game play of a first player playing a gaming application. The method includes determining a player social community at a first point in time, wherein corresponding players in the player social community have corresponding QGA processes that share one or more implemented QGAs with a first set of implemented QGAs of a first QGA process. The method includes providing a respective progress warning indicator for a respective player in the player's social community, displaying a relative progress of the QGA processes of the respective player and the first player. The method includes generating a Graphical User Interface (GUI) including a list of players in a player social community having corresponding progress warning indicators for selection to enable communication between a first player and one or more players in the social community.

Other aspects of the disclosure will become apparent from the following detailed description, taken in conjunction with the accompanying drawings, illustrating by way of example the principles of the disclosure.

Drawings

The disclosure may best be understood by reference to the following description taken in conjunction with the accompanying drawings, in which:

fig. 1A illustrates a system for providing a game to players through a local device or through a cloud gaming network, wherein the system dynamically builds social connections through a nascent social community based on in-game processes and/or map locations in a gaming environment associated with a particular player playing a gaming application, according to one embodiment of the present disclosure.

FIG. 1B illustrates a back-end gaming server configured to dynamically build social connections through a nascent social community based on in-game processes and/or map locations in a gaming environment associated with a particular player playing a gaming application, according to one embodiment of the present disclosure.

Fig. 2 illustrates a system diagram 200 for providing a game over a cloud gaming network, wherein the cloud gaming network is configured to dynamically build social connections through a nascent social community based on in-game progress and location associated with a particular player, according to one embodiment of the present disclosure.

FIG. 3A is a block diagram of a social network construction engine at a central server configured to dynamically construct social connections through a nascent social community based on in-game progress and location associated with a particular player, according to one embodiment of the present disclosure.

FIG. 3B illustrates the interrelationship between actions and quantified game activities according to one embodiment of the present disclosure.

4A-4B are flow diagrams illustrating a gaming method that connects a particular player of a gaming application to other players that are part of a nascent social community constructed based on in-game processes and/or map locations associated with the particular player according to one embodiment of the present disclosure.

FIG. 5A illustrates a set of Quantified Game Activity (QGA) processes created at various points in time, where the QGA processes of one or more players in a nascent social community are shown as being related to the QGA processes of a particular player, where the nascent social community is constructed based on in-game processes and locations associated with the particular player, according to one embodiment of the present disclosure.

FIG. 5B illustrates selecting one or more players to include within a nascent social community constructed based on in-game progress and location associated with the particular player, according to one embodiment of the present disclosure.

FIG. 6 is a flow diagram illustrating a gaming method that connects a particular player of a gaming application to other players that are part of a nascent social community that is constructed based on a game play location associated with the particular player, according to one embodiment of the present disclosure.

FIG. 7A illustrates players within a nascent social community constructed based on game play locations associated with the particular player according to one embodiment of the present disclosure.

FIG. 7B illustrates players within a nascent social community constructed based on game play locations associated with the particular player and further screened through a public view according to one embodiment of the present disclosure.

FIG. 7C illustrates players within a nascent social community that are built based on game play locations associated with the particular player and further screened using a depth buffer to ensure that players share a view, according to one embodiment of the present disclosure.

FIG. 8 illustrates a display showing game play of a particular player and a list of players within a newborn social community constructed based on in-game progress and/or location associated with the particular player, wherein players within the newborn social community can communicate with each other without fear of revealing or learning sensitive information, according to one embodiment of the present disclosure.

FIG. 9A illustrates a graphical user interface providing communication in a group channel between players within a nascent social community built based on in-game progress and/or location associated with a particular player according to one embodiment of the present disclosure.

FIG. 9B illustrates a graphical user interface that provides direct one-to-one communication between two players within a nascent social community built based on in-game progress and/or location associated with one of the communicating players, according to one embodiment of the present disclosure.

10A-10B illustrate direct one-to-one communication between two players within a nascent social community constructed based on in-game progress and/or location associated with one of the players in the communication, according to one embodiment of the present disclosure.

Fig. 11 illustrates components of an example apparatus that may be used to perform aspects of various embodiments of the present disclosure.

Detailed Description

Although the following detailed description contains many specific details for the purposes of illustration, one of ordinary skill in the art will appreciate that many variations and alterations to the following details are within the scope of the disclosure. Accordingly, the generality of the claims appended hereto are described without any loss of generality in setting forth the aspects of the disclosure described below, and without imposing limitations upon such claims.

In general, various embodiments of the present disclosure describe a system and method for building social connections through a nascent social community based on in-game activity, location, metadata, and other attributes including, but not limited to, in-game progress, map location in a game environment associated with a particular player playing a gaming application, character attributes, and the like, according to one embodiment of the present disclosure. For example, social connections between players may be established between players having characters of the same race, the same level, the same configuration, similar character equipment, similar game play experiences (e.g., players who have defeated some type of enemy in their respective game play in the past), and so forth. The player establishing the social connection may be connected to other players in the newborn social community, such as socially communicating with each of their game plays for the gaming application. Because the players are typically at the same progress through the gaming application and/or at the same map location in the gaming environment of the gaming application, the contacted players can communicate freely without undue concern for revealing sensitive information about the gaming application that another player may not want to hear. In particular, each player may know the same amount and type of information about the gaming application, and therefore may not know any information that may be sensitive to any player in the community. Further, because the player is in the same course throughout the gaming application and/or in the same map location in the gaming environment of the gaming application, the player has a similar overall gaming scenario. In this way, each player does not need to quickly understand the situation in which a particular question is posed, and can therefore easily answer the question, even if the task is about some ambiguous object or enemy, for example.

With the above general understanding of various embodiments, example details of the embodiments will now be described with reference to the figures.

Fig. 1A illustrates a system 100A for providing a game to players through a local device or through a cloud gaming network, wherein the system dynamically builds social connections through a nascent social community based on in-game processes and/or map locations in a gaming environment associated with a particular player playing a gaming application, according to one embodiment of the present disclosure. A player for whom a nascent social community is constructed may be linked to other players within the nascent community through a channel that facilitates social interaction around a gaming application without undue attention to avoid revealing too much sensitive information about the gaming application to the other players and may join the community that is in line with the player's game play. Thus, everyone in the social community is on the "same page" with respect to the overall game scenario. For example, the player does not have to provide excessive background information to other players in the community before entering a discussion where all can adequately participate.

As shown in fig. 1A, the game application may be executed locally at the client device 100 of player 5 (e.g., by game name execution engine 111 and game logic 126), or may be executed at a backend game name execution engine (e.g., game engine) 211 running on a backend game server 205 of a cloud gaming network or Game Cloud System (GCS) 201. In either case, the GCS201 is configured to provide a dynamic social network builder and communication engine 310 that is configured to build social connections by a nascent social community based on in-game processes and/or map locations in a gaming environment associated with a particular player playing a gaming application, and to connect the player with other players within the nascent social community for social interaction around the gaming application. Further, the gaming application may be executed in a single-player mode or a multi-player mode.

In particular, the client device 100 may include a game name execution engine 111 (also referred to as a game engine) configured for locally executing a game application. The game logic 126 of the game application runs on top of the game name execution engine 111 and/or in association with the game name execution engine 111. For example, executing game logic 126 (of the game application) makes a function call to game name execution engine 111, such as for physical information, texture information, and so forth. More specifically, the game name execution engine 111 performs basic processor-based functions for executing the game application (e.g., via the game logic 126) and services associated with the game application. For example, processor-based functions include 2D or 3D rendering, physics simulation, scripting, audio, animation, graphics processing, lighting, shading, rasterization, ray tracing, shadow making, culling, transformation, and so forth. In addition, services for gaming applications include streaming, encoding, memory management, multi-thread management, quality of service (QoS), bandwidth testing, social networking, social friend management, communicating with friends, establishing and managing communication channels, texting, instant messaging, chat support, and the like.

In another embodiment, the game application may be executed at a back-end game name execution engine 211 (also referred to as a game engine) of the back-end game server 205 running on the GCS 201. The game name execution engine 211 executes similarly to the previously described game name execution engine 111. More specifically, game name execution engine 211 may run within one of many physical and/or virtual game processors of game server 205. The game logic 126 may execute on top of the game name execution engine 211 and/or in association with the game name execution engine 211, similar to how the game logic 126 executes on top of the game name execution engine 111 and/or in association with the game name execution engine 111. For example, the executing game logic 126 makes a function call to the game name execution engine 211, such as for physical information, texture information, and so forth. The game name execution engine 211 and the game logic 126 in combination form an instance of a game application 175, which will be described further below. The game server 205 is configured to manage and control the execution of multiple instances of one or more game applications for one or more players.

The client device 100 may receive input from various types of input devices such as the game controller 6, the tablet computer 11, a keyboard and gestures captured by a camera, a mouse, a touch pad, and so on. The client device 100 may be any type of computing device having at least memory and processor modules capable of connecting to the game server 205 over the network 150. Some examples of client devices 100 include Personal Computers (PCs), game consoles, home theater devices, general purpose computers, mobile computing devices, tablets, telephones, or any other type of computing device that can interact with game server 205 to execute instances of game applications.

The client device 100 is configured to receive the rendered image and to display the rendered image on the display 12. For example, through local game processing, the rendered image may be delivered by the local game execution engine 111 in response to an input command for driving game play of the player 5. As another example, through a cloud-based service, rendered images may be delivered by an instance 175 of a game application executing on game execution engine 211 of game server 205 in response to input commands for driving game play by player 5. That is, through the remote game process, the rendering image may be delivered by the remote game name execution engine 211. In either case, client device 100 is configured to interact with execution engine 211 or 111 in association with the game play of player 5, such as through input commands for driving the game play.

Further, client device 100 is configured to interact with game server 205 to capture and store metadata and/or information of a game play of player 5 as the player progresses through the gaming application. The metadata includes information related to game play (e.g., game state, etc.). For example, the metadata may include location-based information corresponding to the character's location within the game world in which player 5's game play occurred. In one embodiment, the metadata may include snapshot information related to the point in the gaming application at which the snapshot was captured. The relevant information may be stored in one or more of the databases 140.

In one embodiment, the metadata may include snapshot information, where a snapshot provides information that enables execution of an instance of the gaming application from a point in the gaming application associated with capturing the corresponding snapshot. A complete discussion Of The creation And use Of snapshots is provided in U.S. application Ser. No. 15/411,421 entitled "Method And System for Saving a Snapshot Of Game Play And Used To Later execute Game Play By Any User As Executed On a Game Cloud System" (which was previously incorporated By reference in its entirety).

The captured metadata and/or information may provide and/or be analyzed to provide additional information related to the game play of player 5. For example, the metadata and/or information may help determine where a user (e.g., a character of the user) has been in the gaming application, where the user is in the gaming application, what the user has done, what assets and skills the user has accumulated, and where the user will go in the gaming application. This additional information may be used to generate context-related content for display to the user in interface 110. In particular, the metadata and/or information of player 5 may be used to build a newborst community corresponding to player 5, where players in the newborst community are aware of the general game scenario in which user 5's game is played, as each player is at a similar point (e.g., physically or procedurally) in the game application. For example, the user interface 110 may be used to provide social networking information, establish and manage communications between players of a social network, or may be used to generate content (e.g., messages, etc.) configured for interaction with other users.

More specifically, the captured metadata and/or information may include game state data defining a game play state of the point. For example, game state data may include game characters, game objects, game object attributes, game object states, graphic overlays, and the like. In this manner, the game state data allows for the generation of a game environment in which corresponding points in game play of the game application exist. The game state data may also include the state of each device used to render game play, such as the state of the CPU, GPU, memory; a register value; a program counter value; a programmable DMA status; DMA buffers data; an audio chip state; CD-ROM state; and the like. The game state data may also identify which portions of executable code need to be loaded to execute the game application from that point. The game state data may be stored locally or in the game state database 145 of the GCS 201.

The captured metadata and/or information also includes user-saved data. Typically, the data maintained by the user includes information that personalizes the video game to the corresponding user. This includes information associated with the user's character such that the video game is rendered in a character (e.g., shape, appearance, clothing, weapon, etc.) that may be unique to the user. In this manner, the user-saved data can generate a character for playing the game corresponding to the user, where the character has a state corresponding to a point in the video game associated with the snapshot. For example, the data saved by the user may include game difficulty, game level, character attributes, character position, number of remaining lives, possible total number of available lives, armor, trophy, time counter value, and other asset information selected by the user 5 while playing the game. The data saved by the user may also include, for example, user profile data identifying the user 5. The data maintained by the user may be stored locally or in the database 141 of the GCS 201.

Further, the captured metadata and/or information may include random seed data that may be generated by an Artificial Intelligence (AI) module (not shown). The random seed data may not be part of the original game code, but may be added to the overlay to make the game environment more realistic to look at and/or more attractive to the user. That is, the random seed data provides an additional feature of the gaming environment that exists at the corresponding point in the user's game play. For example, AI characters can be randomly generated and provided in an overlay. The AI characters are not associated with any user playing the game, but are placed in the game environment to enhance the user experience. For example, these AI characters may walk randomly across streets in a city scene. In addition, other objects may be generated and presented in the overlay. For example, clouds and birds flying through the sky in the background may be generated and presented in an overlay. The random seed data may be stored locally or in the random seed database 143 of the GCS 201.

In particular, client device 100 connects to dynamic social network builder and communication engine 310, enabling player 5 to connect with other players in the corresponding nascent social community, where all players are playing the same game application and at similar points (physical or procedural aspects) in the game application. As previously described, metadata and/or information is passed by the local game name execution engine 111 or the remote game name execution engine 211 at the back-end GCS 210 to the dynamic social network builder and communication engine 310 to build the corresponding social community and establish communication with other players in the nascent social community built based on in-game progress and/or map location of player 5 within the gaming environment of the gaming application. Services provided by the dynamic social network builder and communication engine 310 are accessed using the user interface 110 of the client device 100.

FIG. 1B illustrates a system 100B including a back-end engine 310 configured to dynamically build social connections through a nascent social community based on in-game progress and/or map location in a gaming environment associated with a particular player playing a gaming application, according to one embodiment of the present disclosure. A particular player from which a new community is built may be connected to other players in the community to obtain a real-time mobile social experience involved in similar game play around players in the community. Because players in the community are at similar points (either physically or procedurally) in the gaming application.

As shown, according to one embodiment of the present disclosure, system 100B provides game control to a plurality of players 115 (e.g., players 5a.... 5N) playing a game application executing on a cloud gaming network. In some embodiments, the cloud gaming network may be a game cloud system 201 that includes a plurality of Virtual Machines (VMs) running on a hypervisor of a host, where one or more virtual machines are configured to execute game processor modules utilizing hardware resources available to the hypervisor of the host.

In other embodiments, the GCS201 includes a distributed game engine system and/or architecture that executes game logic, as configured as a corresponding instance of a game application. Typically, a distributed game engine employs each of the functions of the game engine and distributes these functions for execution by numerous processing entities on one or more servers of the GCS 201. The individual functions may further be distributed over one or more processing entities. In particular, a distributed game engine executing game logic is configured as a corresponding instance of a game application. Typically, a distributed game engine employs each of the functions of the game engine and distributes these functions for execution by numerous processing entities. The individual functions may further be distributed over one or more processing entities. The processing entity may be configured in different configurations, including as metal or physical hardware, and/or as a virtual component or virtual machine, and/or as a virtual container, where the container is different from the virtual machine in that it virtualizes an instance of a gaming application running on a virtualized operating system. The processing entities may utilize and/or rely on servers on one or more servers (computing nodes) of the GCS201, which servers may be located on one or more racks, and their underlying hardware. Coordination, distribution, and management of the execution of these functions to the various processing entities is performed by a distributed synchronization layer. In this manner, the execution of these functions is controlled by the distributed synchronization layer, enabling the generation of media (e.g., video frames, audio, etc.) for the gaming application in response to the player's controller input. The distributed synchronization layer is able to efficiently perform (e.g., by load balancing) those functions across distributed processing entities, such that key game engine components/functions are distributed and reassembled for more efficient processing.

These various functions performed by the game engine include basic processor-based functions for executing game applications and services associated with game applications. For example, processor-based functions include 2D or 3D rendering, physics simulation, scripting, audio, animation, graphics processing, lighting, shading, rasterization, ray tracing, shadowing, culling, transformation, artificial intelligence, and so forth. In addition, services for gaming applications include streaming, encoding, memory management, multithreading management, quality of service (QoS), bandwidth testing, social networking, social friend management, social network communication with friends, communication channels, messaging, instant messaging, chat support, and so forth.

Furthermore, the distributed synchronization layer can be easily expanded (on a separate distributed game engine) to handle increased processing requirements or processing complexity by adding more processing entities. That is, the processing capacity can be flexibly increased or decreased according to the demand. Further, the distributed game engine system may be extended across many users, each supported by a corresponding distributed game engine, such as in a multiplayer gaming session of a gaming application. Thus, the multiplayer gaming session is not constrained by hardware limitations that limit the maximum number of players in the session due to performance issues (e.g., latency). In contrast, the scalable distributed game engine system can increase or decrease the number of distributed game engines based on the number of players participating in a multiplayer gaming session without any hardware limitations. Thus, thousands of players may participate in a single multiplayer gaming session.

As shown, the GCS201 includes a game server 205 that provides access to a plurality of interactive video games or game applications. The game server 205 may be any type of server computing device available in the cloud and may be configured as one or more virtual machines executing on one or more host machines. For example, the game server 205 may manage virtual machines that support game processors that instantiate instances of game applications for users. More specifically, the game server 205 may manage one or more streaming media servers 170 (e.g., servers 170a through 170n) executing multiple instances of multiple game applications (e.g., instances 175a through 175 n). Thus, the plurality of game processors of the game server 205 associated with the plurality of virtual machines are configured to execute the plurality of instances 175 of the game application associated with the game play of the plurality of users 115 as controlled by the corresponding client device. In particular, the plurality of streaming media servers 170 (e.g., as virtual machines) are configured to execute a plurality of instances 175 of a game application. For example, streaming server 170a is configured to execute instance of the game application 175a, streaming server 170b is configured to execute instances of the game application 175b, … …, and streaming server 170n is configured to execute instance of the game application 175 n. In this manner, the back-end server supports streaming of media (e.g., video, audio, etc.) for game play of multiple game applications to multiple corresponding users.

Each streaming media server 170 may be configured with at least a memory and a processor module capable of executing a game application, such as through a corresponding instance of the game application, to support corresponding game play. For example, each streaming media server 170 may be a server console, a game console, a computer, and so on. More specifically, an instance of the game application is executed by a corresponding game name execution engine (e.g., game engine) that runs game logic corresponding to the game application, as previously described. Each server 205 is configured to stream data 105 (e.g., rendered images and/or frames of a corresponding game play) back to a corresponding client device over the network 150, either directly or through the game server 205. In this manner, a computationally complex gaming application may be executed at a back-end server in response to controller input received and forwarded by a corresponding client device. Each server is capable of rendering images and/or frames, which are then encoded (e.g., compressed) and streamed to a corresponding client device for display.

The plurality of players 115 access the GCS201 via the network 150, wherein players (e.g., players 5L, 5M, …, 5Z) access the network 150 via corresponding client devices 100a … 100N. Each of the client devices 100A to 100N may be configured similarly to the client device 100 of fig. 1A, or may be configured as a thin client (e.g., client device 100B) providing an interface with a backend server providing a computing function. The corresponding client device 100 may be any type of computing device having at least memory and processor modules capable of connecting to the game server 205 over the network 150. Further, the corresponding client device 100 is configured to generate a rendered image executed by the locally executed game name execution engine 111 or by the remotely executed game name execution engine 211, and display the rendered image on a display, the display including a Head Mounted Display (HMD) (not shown). As previously described, each client device 100 may receive input from various types of input devices 11, such as game controllers, tablet computers, keyboards, camera-captured gestures, mouse touch pads, and so forth. For example, the client device 100A of the respective player 5A is configured for requesting access to a game application over the network 150 (such as the internet), and for rendering data of a particular game application (e.g., a video game) executed by the respective streaming server 170A-170 n, the data being managed by the game server 205 and communicated to a display device associated with the respective player 5A. Accordingly, player 5A may interact with an instance of a game application executing on a corresponding streaming server managed by game server 205 through client device 100A.

As introduced previously, the dynamic social network builder and communication engine 310 may use game state and/or information of game play of multiple users 115 playing the same game application to build social connections through a nascent social community based on in-game progress and/or map locations in a game environment associated with a particular player playing the game application. As previously described, in this manner, players in the community may contact each other to obtain a real-time mobile social experience involved around their similar game play to the same game application. In this way, a particular player may be connected to other players in a community that is built specifically for the particular player to create a real-time mobile social experience between players that are simultaneously playing the same gaming application. The connections may be established directly between players or may be established through a group channel. A particular player may seek help, talk about the gaming application, get official news, or talk about anything interesting, for example, around the gaming application, all without worrying about revealing sensitive information about the gaming application. Corresponding user interfaces on corresponding client devices 100 or through separate devices 11 may help to tie a particular player to other players in the newborns community.

FIG. 2 illustrates a system 200 that supports building instant social connections and newborns based on in-game processes and/or map locations of particular players, and establishing and managing communications between players in the newborns, according to one embodiment of the present disclosure. In particular, the system diagram 200 enables access and play of a gaming application stored in a Game Cloud System (GCS) 201. In general, the game cloud system GCS201 may be a cloud computing system operating over the network 220 to support multiple players playing game applications over corresponding game plays. Data relating to those game plays may be provided to build a newborn community for establishing social connections, where the newborn community is built based on a particular player's in-game progress and/or map location. In particular, the system 200 includes a GCS201, one or more social media providers 240, and a client device 230, all connected via a network 150 (e.g., the internet). One or more user devices may connect to the network 150 to access services provided by the GCS201 and social media providers 240.

In one embodiment, game cloud system 201 includes game server 205, video recorder 271, tag processor 273, and account manager 274 including a user profile manager, game selection engine 275, game session manager 285, user access logic 280, network interface 290, and social media manager 295. The GCS201 may also include a plurality of game storage systems, such as a game state store, a random seed store, a user-saved data store, a snapshot store, which may generally be stored in the data store 260. Other game storage systems may include a game code store 261, a recorded game store 262, a tag data store 263, a video game data store 264, and a game network user store 265. In one embodiment, the GCS201 is a system that can provide game applications, services, game-related digital content, and interconnectivity between systems, applications, users, and social networks. The GCS201 may communicate with the user devices 230 and social media providers 240 through the social media manager 295 via the network interface 290. The social media manager 295 may be configured to associate one or more friends. In one embodiment, each social media provider 240 includes at least one social graph 245 that shows the user's social network connections.

Player/user 5 can access services provided by the GCS201 via the game session manager 285. For example, the account manager 274 allows player 5 to authenticate and access the GCS 201. The account manager 274 stores information about the member users/players. For example, a user profile for each member user may be managed by the account manager 274. In this manner, the account manager 274 may use the member information for authentication purposes. For example, the account manager 274 may be used to update and manage user information associated with member users. In addition, game names owned by member users may be managed by the account manager 274. In this manner, the video games stored in the data store 264 are available to any member user who owns the video games.

In one embodiment, a user, such as player 5, may access services provided by the GCS201 and social media providers 240 via a connection over the network 150 via the client device 100. Client device 100 may include any type of device having a processor and memory, whether wired or wireless, portable or non-portable. In one embodiment, the client device 100 may be in the form of: a smart phone, a tablet computer, or a hybrid device that provides touch screen functionality in a portable form factor. One exemplary device may include a portable telephone device running an operating system and having the ability to access various applications (apps) that may be obtained over the network 150 and executed on a local portable device (e.g., a smartphone, tablet, laptop, desktop computer, etc.).

The client device 100 includes a display 12 that acts as an interface for the player 5 to send input commands 236 and display data and/or information 235 received from the GCS201 and social media providers 240. The display 12 may be configured as a touch screen, or a display typically provided by a flat panel display, Cathode Ray Tube (CRT), or other device capable of providing a display. Alternatively, the client device 100 may have its display 12 separate from the device, similar to a desktop or laptop computer.

In one embodiment, the client device 100 is configured to communicate with the GCS201 to enable the player 5 to play a video game or gaming application. For example, player 5 may select (e.g., by game name, etc.) a game application available in video game data store 264 via game selection engine 275. In this manner, the selected game application is enabled and loaded for execution by the game server 205 on the GCS 201. In one implementation, game play is primarily performed in the GCS201 such that the client device 100 will receive a stream of game video frames 235 from the GCS201 and user input commands 236 for driving game play are transmitted back to the GCS 201. Received video frames 235 from the streaming game play are displayed in the display 12 of the client device 100.

In one embodiment, after player 5 selects an available game name to play, a game session for the selected game name may be initiated by player 5 through game session manager 285. Game session manager 285 first accesses the game state store in data store 140 to retrieve the saved game state (if any) of the last session (for the selected game) played by player 5 so that player 5 can resume game play from the point where the previous game play stopped. Once the recovery or start point is identified, game session manager 285 may notify a game name execution engine in game server 205 (e.g., managing instances of game applications executed by the game engine and game logic on the virtual machine) to execute the game code for the selected game name from game code store 261. Upon initiation of a game session, game session manager 285 may communicate game video frames 235 (i.e., streaming video data) to a client device (e.g., client device 100) through network interface 290.

During game play, game session manager 285 may communicate with game server 205, recording engine 271, and tag processor 273 to generate or save a record (e.g., video) of game play or game play session. In one embodiment, a video recording of game play may include tag content entered or provided during game play as well as other game related metadata. The tag content may also be saved via a snapshot. A video recording of the game play and any game metrics corresponding to the game play may be stored in recorded game store 262. Any tag content may be stored in tag data store 263.

During game play, game session manager 285 may communicate with game server 205 to communicate and obtain user input commands 236 for affecting the outcome of a corresponding game play of a video game. Input commands 236 input by player 5 may be transmitted from the client device 100 to the game session manager 285 of the GCS 201. Input commands (e.g., controller inputs) 236, including input commands for driving game play, may include user-interactive inputs, such as including tag content (e.g., text, images, video recording clips, etc.). Game input commands and any user play metrics (how long the user plays the game, etc.) may be stored in the gaming network user repository. Selection information related to game play of a video game may be used to implement a number of features that may be available to a user.

FIG. 3A is a block diagram of a system 300 including a social network construction and communication engine 310 at a central server configured to dynamically construct social connections through a nascent social community based on in-game processes and locations associated with a particular player (e.g., player P3), according to one embodiment of the present disclosure. In an embodiment, fig. 3A may be implemented within the systems 100A and 100B of fig. 1A-1B and the system 200 of fig. 2.

As shown, players P1 through Pn each play the same game application simultaneously, with game play supported by a back-end server that includes a social network building and communication engine 310. Each of players P1 through Pn has a corresponding game play of the game application. In addition, game state data for each game play is captured and passed to social network building and communication engine 310 for the purpose of dynamically building a newborn community based on the in-game progress of the particular player's game play and/or the current map location shown in the particular player's game play. For illustrative purposes only, the newborn community is based on the in-game progress and/or location of player P3. Specifically, game play by player P1, who is playing the game application, continues to generate game state 305 a. Further, the game play of the player P2 who plays the same game application continues to generate the game state 305b, the game play of the player P3 (shown in bold) who plays the game application continues to generate the game states 305c, …, and the game play of the player Pn who plays the game application continues to generate the game state 305 n. For example, the game states 305a through 305n of players P1 through Pn are transferred over the network 150 and stored in the data storage 260 of the GCS201 previously described in FIG. 2.

Using the game states 305a through 305n of players P1 through Pn playing the same game application, a social connection is constructed for player P3 through the corresponding nascent community of in-game processes and/or map locations based on the game play of player P3. In particular, the game states 305a to 305n are passed to a game action identifier configured to identify quantified actions performed during game play of players P1 to Pn playing the same game application. For example, the action may include walking, jumping, entering a room, closing a door, picking up an object, and the like. Actions may be quantified by recognizing input controls that, for example, generate corresponding actions. Certain actions may be important to the gaming application (e.g., entering a particular room). Performing an important action may be considered an achievement. Other actions may be less important to the gaming application, such as general walking in a gaming environment. Accordingly, the game action identifier 320 can identify each action taken during each game play of the players P1 through Pn. The game action may be predefined by the game logic of the corresponding application (e.g., selected from among the game logic 126a-126 n). For example, players P1 through Pn may be playing a gaming application having game logic 126 c. Further, actions may be assigned to the respective game plays of players P1 through Pn.

Further, one or more actions of the combination performed in a particular game play for the corresponding player may generate a corresponding Quantified Game Activity (QGA). The QGA may be predefined by the gaming logic of the corresponding application. For example, players P1 through Pn may be playing a gaming application having game logic 126c that defines a QGA based on actions performed during game play. In another embodiment, the QGA may be learned by applying artificial intelligence. FIG. 3B illustrates the interrelationship between actions and quantified game activities according to one embodiment of the present disclosure. For example, a limited set of actions 1-7 is provided that, when used alone or in combination, define one or more QGAs 1-3. Specifically, QGA #1 is defined by actions 4-7; QGA #2 is defined by actions 1-3, and QGA #3 is defined by actions 4-5.

Specifically, the activity quantizer 330 can identify the QGA from the actions previously identified by the identifier 320. That is, activity quantifier 330, which uses one or more game logic, is configured to output a QGA for each of players P1 through Pn, and thus the QGA is assigned to the corresponding game play of the corresponding players P1 through Pn. In this manner, the QGA for each game play is identified and collected. For example, as shown in FIG. 3A, the QGA of game player P3 is identified and collected. Other QGAs for other players' game plays are also identified and collected.

In this way, the game play of players P1 through Pn can be tracked based on the QGA collected for each game play of the corresponding player. For example, by tracking game play, embodiments of the present disclosure are able to determine in real time where each player is currently interacting in the gaming environment. In particular, the current map location of a character played by a player in the course of their game may be determined and tracked. These locations may be over a general area, such as by village, town, territory, region, etc. These locations may be defined to have a higher resolution to include map coordinates (e.g., x, y, z) in the game environment. In addition, a current mission for each player may be determined and tracked, including tracking progress of a corresponding mission for a corresponding player. The overall in-game progress for the gaming application through the course of the game can be determined and tracked for each player.

As shown, the QGA play for each of players P1 through Pn is passed to a QGA progress comparator/filter 340, which is configured to filter players P1 through Pn to construct a newborn community created for the benefit of player P3. Specifically, the QGA progress comparator/filter 340 determines which players P1 through Pn have corresponding in-game progresses and/or map locations for their game progresses that are similar to the in-game progress and/or map locations for the game progress of player P3. In this way, the community built specifically for the benefit of player P3 appears dynamically and includes other players who may play the same gaming application simultaneously with the game play of player P3 and have similar experiences in their game play as player P3 (e.g., in-game progress, map location, etc.). A list of players 347 with associated QGAs may be created and defined as players within the newborn community built for player P3.

In one embodiment, the filtering performed by QGA progress comparator/filter 340 may be based on similar tasks performed by players in the newborn community, as performed by task filter 345. For example, player P3 may be currently participating in "mission BB" and may want to discuss the mission with other players in a social environment (e.g., for pleasure, to seek help, etc.). Other players P1 through Pn that are also currently in the mission may be included in the nascent community constructed for player P3. The task filters may be independent filters or provide additional filters for in-game progress and/or map location filters previously described. The screening performed groups players with similar experience and knowledge of the mission (when applying the mission screener) so that player P3 can communicate with other players in the newborns community with limited risk that sensitive information may be revealed, as previously described. A player list 347 with an associated QGA may be created and/or updated based on the results from the QGA progress comparator/filter 340.

Additional filtering based on the map location of the corresponding game play may be performed, such as by the game play location filter 350. In particular, the screening may select game plays that are currently participating within a particular area or region or point in the gaming environment of a gaming application similar to player P3. For example, player P3 may be located in a region (e.g., a venon in a wizard 3 game application) and more specifically in a town of the region (e.g., in the bleekburg of venon). Game play location filter 350 may select other players in the area or region for inclusion in the newborn community constructed for player P3. A player list 347 with an associated QGA may be created and/or updated based on the results from the game play location filter 350.

According to one embodiment of the present disclosure, game play location filter 350 may include a proximity filter 351 configured to provide filtering based on proximity to a map location in the game environment of game play by player P3 (e.g., a map location of a character controlled by player P3). Determining proximity may be based on a predefined distance such that map locations of game plays of other players within the game environment (e.g., map locations of characters controlled by those other players in their game plays) are within the predefined distance. For example, within a measurement system of a gaming environment, the predefined distance may be 50 meters. The predefined distance may be less than the aforementioned 50 meters, or greater than the aforementioned 50 meters. FIG. 7A provides an illustration of players (e.g., P1, P2, P4, P7, and P8) within proximity of player P3 within a gaming environment 700 of a corresponding gaming application. A player list 347 with an associated QGA may be created and/or updated based on the results from the proximity filter 351.

According to one embodiment of the present disclosure, game play position filter 350 may include a depth buffer filter 352 configured to provide filtering based on a field of view (FOV) and/or depth buffer within the game environment. In particular, depth buffer filter 352 may apply FOV filtering such that FOVs in game play of other players (from the perspective of those other player-controlled characters) similar to FOVs in game play of player P3 are selected for inclusion within the nascent community constructed for player P3. FIG. 7B provides an illustration of the FOV of player P3 and the FOV of another player similar to player P3, where the other player was selected for inclusion in the newborn community. Specifically, the FOV of the other player is slightly offset from the FOV of player P3 within game environment 700 for the gaming application. In one embodiment, the FOV screening may not include depth buffering to determine whether full visibility is possible. A player list 347 with an associated QGA may be created and/or updated based on the results from the depth buffer filter 352.

The depth buffer filter 352 may also perform an additional depth buffer (e.g., a Z buffer) that determines whether it is likely to be fully visible within a particular FOV in the gaming environment, or whether there are intervening objects that block the FOV. FIG. 7C illustrates the use of depth buffering to eliminate players from the newborn community built for player P3. For example, player P3 and another player P2 may have similar FOVs within gaming environment 700. Player P3 may be able to view a particular point in the game environment (e.g., a point that is hidden with treasure). However, the player P2's view to the point is blocked by an object (e.g., a wall). As such, player P2 is unable to view points where treasures are hidden, and player P2 is not included in the newborn community, and player P3 may want to ask other people in the community for treasures. A player list 347 with an associated QGA may be created and/or updated based on the results from the depth buffer filter 352.

Players that are screened and included in the newborn community built for player P3 may still have some sensitive information that P3 may not wish to know. In addition, player P3 may have some sensitive information that other players in the community may not wish to know. This may be because the game play of these players is not exactly the same, and although the in-game progress and/or map location may be similar, it is not exactly the same. Thus, game play for all players in the newborn community may have similar game play experience and knowledge, but the similarity still allows for differences in experience and knowledge such that some players may have additional experience and knowledge. In one embodiment, player status indicator generator 360 is configured to display the relative game play progress of players within the newborn community with respect to player P3. This relative progress may indicate whether the other player is ahead of, at approximately the same point as, or behind player P3 in terms of progress in the corresponding game. Thus, player P3 is able to determine whether to join a communication with another player or to take care when joining a communication based on the relative progress indicators, such as in a one-to-one direct chat over a direct channel, or in a group chat on a group channel. For example, an indicator may show that another player's in-game progress leads player P3, so that player P3 may be particularly careful (pay attention to the extreme |) when communicating with the player to avoid knowing about sensitive information. In addition, the indicator may show that another player's in-game progress lags behind Player P3, so Player P3 may be careful (not to drama anything for them!) not to reveal sensitive information to the player. FIG. 5A illustrates the use of progress indicators for players in a newborn community built for player P3.

The dynamic social network building and communication engine 310 includes a GUI generator 370 configured to create a GUI 371 for communicating a list of players included in the newborn community built for player P3 and providing additional information about the players in the list (e.g., progress indicators, tasks, map locations, etc.). The GUI may also be used to access one or more channels established to enable communication between players in the nascent community built for player P3. Players in the newborn community are in approximately the same place (physically or procedurally) in the game. This helps to reduce the risk of revealing breakouts in communications between community players. For example, communication manager 380 is configured to establish and manage one or more channels, including direct channels that each enable communication between a pair of players, and including group channels configured to enable communication between players in a group. The GUI may allow player P3 to select the type of channel requested to enable communication, wherein upon selection, the communication player and channel manager control communication through those selected channels.

In one embodiment, players in the newborn community play the same game application at the same time. That is, player P3 is playing the gaming application simultaneously with other players in the community. In this way, communication between players in the community corresponds to real-time game play as if everyone were playing a gaming application in a pseudo-multiplayer gaming session, where everyone knows what is happening with other players' game play. In another embodiment, player P3 may not be currently playing a gaming application. However, player P3 may still use the newborn community for communication purposes based on the location at which game play was paused. This allows player P3 to still chat with other players in a similar portion of the game and to associate player P3 with other players based on an in-game sharing experience that is driven by in-game progress and/or map location of player P3's game play. This builds social connections and communities around single-player games that do not typically exist.

With detailed descriptions of the various modules of the systems 100A, 100B, and 200, the flow diagram 400A of fig. 4A discloses a gaming method that includes building a newborn community for a particular player (e.g., a first player) based on in-game progress and/or map location of the player's game play in accordance with one embodiment of the present disclosure. Flowchart 400A may be implemented within a backend server (e.g., within game cloud system 201 in conjunction with dynamic social network builder and communication engine 310), as previously described.

Specifically, at 401, the method includes receiving a plurality of game states of a plurality of game plays of a plurality of players playing a game application. In one implementation, the gaming application may be a single-player gaming application. One or more of the gaming applications may execute on a local client device that includes a game name execution engine and game logic, as previously described. In another implementation, one or more of the game applications may execute on a remote streaming server configured to perform the functions of the game name execution engine and game logic, as previously described. The game state defines the state of the corresponding game play at the point, and the game state of the corresponding game play at one or more points may be collected. The game state data allows for the generation of a game environment that exists at a corresponding point in the game play of the game application. For example, the game state may include a game character, a game object, game object attributes, game object states, a graphic overlay, a state of each device used to render game play, and the like.

At 402, the method includes tracking a game play progress for each of a plurality of game plays based on a plurality of game states. The game play process is defined by a corresponding set of relational characteristics. A first game play of a first player is associated with a first set of relationship characteristics.

In one embodiment, the relational characteristics include Quantitative Gaming Activities (QGA). Further, each corresponding QGA includes a corresponding set of quantifiable actions. Accordingly, the corresponding game play process includes the corresponding one or more implemented QGAs.

At 403, the method includes identifying one or more players for the first player, where each identified player has a corresponding game play that includes one or more relationship characteristics from a set of relationship characteristics of the first player. That is, the identified player and the first player's game play share a relationship characteristic such that their game plays are related.

For example, in embodiments, social connections may be established between players in a nascent social community based on in-game activity, location, metadata, and other attributes, including but not limited to in-game progress, map location in a game environment associated with a game application (e.g., in game play for a particular player), character attributes, and the like. In particular, social connections may be established between players of characters having the same race, same level, same configuration, similar character equipment, and/or similar game play experiences (e.g., players who defeat some type of enemy in their respective game play for a particular game application).

At 404, the method includes causing one or more identified players to appear for display to the first player, wherein each appearing player has a corresponding game play session associated with a first game play session of the first player. For example, a Graphical User Interface (GUI) is generated for display to the first player. The GUI includes a list of identified players. In one embodiment, the method includes causing a spectator to appear for display to the first player, where the spectator is viewing the game play of the appearing player. In this case, the viewer is also included in the list provided in the GUI. The players in the list may be selected for communication purposes through the GUI. In particular, the first player may contact at least one selected player (e.g., from a list) that is present to enable communication. In addition, the first player may be contacted by the presence audience.

Further, each identified correspondent player is associated with a corresponding communication alert indicator. The indicator provides a relative game play progression between game plays of the corresponding player and the first player. In this manner, the first player knows whether the corresponding player is in, behind, or ahead of the first player's game play in the game play of their gaming application.

With detailed descriptions of the various modules of the systems 100A, 100B, and 200, the flow diagram 400B of fig. 4B discloses a gaming method that includes building a newborn community for a particular player (e.g., a first player) based on in-game progress and/or map location of the player's game play in accordance with one embodiment of the present disclosure. Flowchart 400B may be implemented within a backend server (e.g., within game cloud system 201 in conjunction with dynamic social network builder and communication engine 310), as previously described.

Specifically, at 410, the method includes receiving a plurality of game states of a plurality of game plays of a plurality of players playing a game application. In one implementation, the gaming application may be a single-player gaming application. One or more of the gaming applications may execute on a local client device that includes a game name execution engine and game logic, as previously described. In another implementation, one or more of the game applications may execute on a remote streaming server configured to perform the functions of the game name execution engine and game logic, as previously described. The game state defines the state of the corresponding game play at the point, and the game state of the corresponding game play at one or more points may be collected. The game state data allows for the generation of a game environment that exists at a corresponding point in the game play of the game application. For example, the game state may include a game character, a game object, game object attributes, game object states, a graphic overlay, a state of each device used to render game play, and the like.

At 420, the method includes tracking a Quantified Game Activity (QGA) progress for each of a plurality of game plays based on a plurality of game states. In particular, as previously described, the game state data may provide or may be analyzed to determine actions performed during the corresponding game state. These actions are also tracked from the corresponding game state for the corresponding game play. The action may include some action performed by the character during game play, such as walking, running, entering an area, opening a door, defeating a goal, finding an object, and so forth. Other actions may be defined at more fine granularity as providing input control for execution of the game application instance (including game logic and game engine). Further, one or more actions may define a QGA, where each QGA includes a corresponding set of quantifiable actions.

In this manner, by identifying the QGA that is played for a particular game, the implemented QGA may be used to determine the progress of the corresponding game application through the course. In particular, one or more implemented QGAs may be determined and/or tracked for corresponding game play. Accordingly, the games of players who play the same game application may be compared with each other based on the implemented QGA for each game play. For example, fig. 5B illustrates the selection of one or more players to include within a nascent social community built based on in-game processes associated with a particular player (e.g., player P3) according to one embodiment of the present disclosure. The gaming application may include one or more QGAs (e.g., QGA-a through QGA-n). In one embodiment, progress through the gaming application may be measured by having a QGA implemented. The gaming application may be accomplished through a linear or non-linear implementation of the QGA. For example, in some gaming applications, the QGA needs to be processed in a linear fashion, while in other gaming applications, the QGA may be processed in a non-linear fashion.

At 430, the method includes determining, at a first point in time, a first QGA process for a first game play of a first player (e.g., player P3) playing a gaming application. As shown in fig. 5B, the QGA may be listed horizontally purely for illustration, where the implementation of the QGA may be illustrated in terms of the player's marker position. Implementations of the QGA may be used to define in-game processes for a corresponding player. For a given player, the QGA on the left side of the player has been implemented, while the QGA on the right side of the player has not. Specifically, player P3 is shown to have implemented QGA-a and QGA-b. These QGA implementations may define the in-game processes of player P3. Other players are shown in fig. 5B. The QGA for game play for those players may also be determined. For example, player P4 only implements QGA-a; player P2 has implemented QGA-a and QGA-b; player 1 has implemented QGA a-c; player 7 has implemented QGA a-d; player 8 has implemented QGA a-e; and player 9 has implemented QGA a-f.

At 440, the method includes determining a player social community at a first point in time, wherein corresponding players in the player social community have corresponding QGA processes that share one or more implemented QGA with a first set of implemented QGA processes of a first QGA process. That is, players in the player social community have similar in-game processes. More specifically, the social community of players is built for the benefit of the first player (e.g., player P3), and more specifically, based on the in-game progress and/or map location of the first player's game play, P3.

In one embodiment, the QGA's similar in-game progression is strict, such that a set of implemented QGAs are the same between game plays of different players. For example, the second player's QGA processes include the same corresponding set of implemented QGAs as the first set of implemented QGAs of the first player's (e.g., player P3) QGA processes.

In another embodiment, the QGA's similar in-game progression is less stringent, where the QGA may be secondary in nature and/or may be linked together so that one or more QGAs implemented by a player in the group may indicate similar in-game progression. For example, QGA a-e in FIG. 5B may occur at a particular stage of a gaming application, where players within that stage typically have a similar game playing experience. For example, QGAs a-e may all be located at a level in a gaming application such that implementing these QGAs brings the corresponding player to the large head of the level. QGA a-e can be grouped within outline 555. Thus, players in the area (e.g., level) of the gaming application, as evidenced by the implementation of one or more of QGA a-e, may be interested in communicating with each other to discuss the gaming application, as they may be in a similar portion of the gaming application. For example, as will be described further below, players P1-P4 and P6-P8 may be grouped together within a newborn community based on player P3's in-game progress and/or map location.

At 450, the method includes providing a corresponding progress warning indicator for a corresponding player in the player's social community, displaying a relative progress of the QGA process for the corresponding player and the first player. Different types of warning indicators may be used to indicate the relative progress of a player's game play in the newborn social community with respect to the QGA progress of the first player (e.g., player P3). These examples are provided for illustration only. While three indicators are shown, there may be more indicators providing additional solutions to relative progress or there may be fewer indicators providing fewer solutions to relative progress. For example, a red progress warning indicator indicates that the corresponding gaming activity course of the corresponding player leads the first gaming activity course of the first player (e.g., player P3). As another example, a yellow progress warning indicator indicates that the corresponding gaming activity progress of the corresponding player lags behind the first gaming activity progress of the first player (e.g., player P3). Additionally, the green progress warning indicator indicates that the corresponding gaming activity progress for the corresponding player is within an acceptable range for the first gaming activity progress for the first player (e.g., player P3).

At 460, the method includes generating a Graphical User Interface (GUI) including a list of players in the social community of players with corresponding progress warning indicators for selection to enable communication between the first player and one or more players in the social community. In particular, the GUI is communicated to a first player's device, where the GUI includes a list of players in the newborn social community, where each player in the list has a corresponding progress warning indicator. When the first player selects one or more players in the list via the GUI, communication is established between the first player and the selected players.

Fig. 5A illustrates a set of QGA processes created at various points in time, where the QGA processes of one or more players in the nascent social community are shown to be related to the QGA process of a particular player (e.g., player P3), according to one embodiment of the present disclosure. FIG. 5A illustrates the dynamic nature of the nascent social community built for player P3. In particular, the nascent social community is constructed based on in-game processes and/or map locations associated with the particular player (e.g., player P3-Warren Benedetto).

Along timeline 501 are shown a plurality of states 510 of the nascent social community built in the interest of player P3. Game play may occur simultaneously or may be in a paused state (e.g., not currently in play). For example, at time t-0, the status 510a of the newborn social community is based on the in-game progress and/or map location of player P3-Warren. Specifically, the QGA process of player P3 is shown. At this time t-0, other players with corresponding QGA processes similar to that of player P3 are included in the nascent social community. For example, Player P1(River Hsu), Player P2(Landon Noss), and Player P7(Meredith Blake) all have similar QGA processes. Further, the point within slider 520a has a QGA process that is almost the same as that of player P3. That is, all players within the slider 520a play at exactly the same point in the gaming application (e.g., in-game progress, map location, etc.). As shown, player P2(Landon) may have the same QGA process as player P3 and may be at the same point (e.g., physically or in terms of process) in the game. Thus, player P2 has a progress indicator or symbol (e.g., "G") indicating that the relative progress of the QGA process of player P2 is the same as the QGA process of player P3 (e.g., indicating a green flag with no warning). In this manner, players P3 and P2 may not reveal sensitive information to each other during the communication, because they are unaware of any sensitive information. The status 510a of the newborn social community also includes that player P7(Meredith) has an "R" progress indicator or symbol indicating that the relative progress of the QGA progress of player P7 precedes the QGA progress of player P3 (e.g., a red flag indicating a warning). Thus, player P3 is alerted that any communication with player P7 risks revealing sensitive information to player P3. Additionally, status 510a of the newborn social community also includes player P1(River) having a "Y" progress indicator or symbol indicating that the relative progress of the QGA progress of player P1 lags the QGA progress of player P3 (e.g., a yellow flag indicating a warning). Thus, player P3 is alerted that it may leak sensitive information to player P1 in any communication.

FIG. 5A shows different states of a nascent social community built for player P3 (Warren). Each state has no specific relationship with each other, and thus the QGA process for each state is not necessarily the same. More specifically, for each state, the player's QGA process is determined relative to the QGA process of player P3 (at the corresponding time) to determine the members of the nascent social community. Specifically, at each point in time, a corresponding gaming activity course of game play by player P3 is determined. In addition, the social community of players is dynamically updated based on the gaming activity progress (e.g., implemented gaming activity of the first player's corresponding gaming activity progress).

For example, the newborn social community in state 510b is based on the in-game progress and/or map location of player P3(Warren) at time t-1. At this second point in time t-1, a second course of gaming activity for player P3's game play is determined, where time t-1 is after t-0. The nascent social community is updated based on the second gaming activity session. At this point, player P3 has moved in front of player P2(Landon), but still lags behind player P7 (Meredith). The point within slider 520a has a QGA process that is nearly identical to the QGA process of player P3, with no other players having the same QGA process. As shown, player P7(Meredith) has an "R" progress indicator or symbol indicating that the relative progress of player P7's QGA progress leads player P3's QGA progress (e.g., a red flag indicating a warning). Additionally, player P1(River) has a "Y" progress indicator or symbol indicating that the relative progress of player P1's QGA progress lags behind player P3's QGA progress (e.g., a yellow flag indicating a warning).

The newborn social community in state 510c is based on the in-game progress and/or map location of player P3(Warren) at time t-2. At this point, player P3 has moved behind players P2(Landon) and P7 (Meredith). Likewise, no player has the same QGA process as player P3 (e.g., within slider 520 c). The QGA process of three players precedes the QGA process of player P3. For example, each of player P4, P2(Landon), and player P7(Meredith) has a corresponding "R" progress indicator or symbol indicating that the relative progress of the corresponding QGA process precedes that of player P3 (e.g., a red flag indicating a warning-caution to zoom through!.).

The newborn social community in state 510d is based on the in-game progress and/or map location of player P3(Warren) at time t-3. At this point, player P3 has moved ahead of most, if not all, of the players in the newborn community. As shown, player P7(Meredith) has the same QGA process and has a "G" process indicator or symbol, indicating that the relative progress of the QGA process of player P7 is the same as the QGA process of player P3 (e.g., indicating a green flag with no warning). Furthermore, the QGA process for the four players lags behind that of player P3. For example, each of players P4, P1(River), P2(Landon), and P8 has a corresponding "Y" progress indicator or symbol indicating that the relative progress of the corresponding QGA process lags behind the QGA process of player P3 (e.g., a yellow flag indicating a warning-not to destroy anything for them!.).

In one embodiment, player P3 may be connected to other players in the social newborns community. In particular, a list of players in the social community of players, built in the interest of player P3, is created and passed to player P3 for selection. Players in the list may be further categorized, such as by friend, by favorite, by recently encountered, or by all players. Players in the list may be associated with corresponding symbols indicating the progress of the corresponding game play of the corresponding player relative to the progress of the game play of player P3. Player P3 may contact the selected player for communication. For example, player P3 may contact another player directly for one-to-one communication (e.g., via a direct channel). In addition, Player P3 may contact multiple players through the group channel. In one embodiment, each group channel has a corresponding discussion topic.

With detailed descriptions of the various modules of the systems 100A, 100B, and 200, the flow diagram 600 discloses a gaming method according to one embodiment of the present disclosure that includes building a newborst community for a particular player (e.g., a first player) based on a map location of the game play of the player. Flowchart 600 may be implemented within a back-end server (e.g., within game cloud system 201 in conjunction with dynamic social network builder and communication engine 310), as previously described. In particular, fig. 6 is a flow diagram illustrating a gaming method that connects a particular player of a gaming application to other players that are part of a nascent social community that is constructed based on a game play location associated with the particular player, according to one embodiment of the present disclosure.

At 610, the method includes receiving a plurality of game states of a plurality of game plays of a plurality of players playing a game application. In one implementation, the gaming application may be a single-player gaming application. One or more of the gaming applications may execute on a local client device that includes a game name execution engine and game logic, as previously described. In another implementation, one or more of the game applications may execute on a remote streaming server configured to perform the functions of the game name execution engine and game logic, as previously described. The game state defines the state of the corresponding game play at the point, and the game state of the corresponding game play at one or more points may be collected. The game state data allows for the generation of a game environment that exists at a corresponding point in the game play of the game application. For example, the game state may include a game character, a game object, game object attributes, game object states, a graphic overlay, a state of each device used to render game play, and the like.

At 620, the method includes tracking a plurality of interaction zones associated with a plurality of game plays in a game world, wherein each game play is currently participating in a corresponding interaction zone. The game state for each game play may be provided and/or analyzed to determine a corresponding location of the corresponding game play within a gaming environment of the gaming application. For example, a character in game play controlled by player P3 may be within a particular interaction zone (e.g., area, region, town, house, map coordinates, etc.). In one embodiment, the interactive zone is a map region corresponding to the gaming environment. A map region typically includes a large area and may include one or more towns or areas (e.g., woods, open spaces, parks, etc.). In other embodiments, the interaction zone is smaller than a region, such as a region, or town, or map coordinates. In another embodiment, the interaction zone is a task. Each game play has a corresponding interaction zone that can be determined by the corresponding game state.

At 630, the method includes determining a first interaction zone in the game world associated with a first game play by a first player (e.g., player P3) playing a gaming application. For example, the position of the character controlled by player P3 may determine the first interaction zone. That is, the location of the character (e.g., region, area, town, map coordinates, etc.) determines the interaction zone. For illustrative purposes only, the first interaction region may be a map region, such as the area of a verian in the gaming application wizard 3, where the bleekberg town is located in a verian.

At 640, the method includes screening the plurality of players based on the first interaction zone of the first player (e.g., player P3) to build a social community of players. In particular, players in the player social community have corresponding interaction zones in the game environment/world that are within a predefined offset of a first interaction zone associated with a first game play of a first player. For example, a player selected for inclusion in the social community may also have game play that participates in the first interaction zone (e.g., the map area of Venen). That is, a first player (e.g., player P3) is participating in the map area of vilan. In this way, all players in the social community also have game plays that participate in the map area of the Venen.

The interaction zone may be more refined and/or defined. For example, the interactive zone may be the bleekburg town of the verun area. Thus, all players in the social community have game plays that participate in or are within a certain distance of the bleekburg town. The interaction zone can be further refined. For example, the interaction zone may be a map coordinate (e.g., x, y, z coordinates). That is, the method includes determining first map coordinates for a first game play of a first player (e.g., player P3). That is, the first map coordinates define or are within the first interaction zone. Thus, all players in the social community have game play in the game environment near (e.g., within a predefined distance of) the map coordinates of participating player P3. FIG. 7A illustrates players within a nascent social community constructed based on game play locations associated with the particular player (e.g., first player P3) according to one embodiment of the present disclosure. Specifically, the interactive zone 710 of player P3 is shown and may be defined as a map region, or area, or town, etc., as previously described. The interactive zone 710 is located within the gaming environment 700 for a particular gaming application. As shown, player P3 is located at center 713 of interaction zone 710, but may be located anywhere within interaction zone 710. Other players are located within the interaction zone and may be included within a social community constructed based on player P3's in-game processes and/or map locations. For example, player P1(River Hsu) at point 711, player P2(Landon Noss) at point 712, player P4 at point 714, player P7(Meredith Black) at point 717, and player P8 at point 718, where each of these players P1, P2, P4, P7, and P8 has a game play located within and/or participating in interaction zone 710.

In another embodiment, the interaction zone may be defined by a field of view associated with a first game play of a first player (e.g., player P3). As such, all players in the social community have corresponding game plays that show a corresponding view within a predefined angular offset of the first player's view of the first game play. FIG. 7B illustrates players within the nascent social community as constructed based on game play locations associated with a particular player (e.g., first player P3) and further screened through a public view, according to one embodiment of the present disclosure. Specifically, player P3 has a corresponding field of view (e.g., FOV P3) taken from a particular point 713 in the gaming environment 700 of the gaming application. Additionally, player P2(Landon) has a corresponding field of view (e.g., FOV P2) obtained from point 712 in the gaming environment. FOV P2 is similar to FOV P3 in that both have overlapping fields of view into game environment 700. More specifically, FOV P2 is within the predefined offset angle of FOV P3, and thus, player P2 is included within the nascent social community based on the in-game progress and/or map location of the game play of the first player (e.g., player P3).

In another embodiment, the interaction zone may be defined by a depth buffer value. In particular, the interaction zone may be defined by a field of view associated with a first game play of a first player (e.g., player P3). The object is visible within the field of view. The method may determine that a depth buffer for a second field of view associated with a second game play of a second player prevents viewing of objects visible in a first field of view of a first game play of a first player (e.g., player P3). In this way, the second player is removed or is not part of the nascent social community built in the interest of player P3. For example, fig. 7B illustrates players within a nascent social community that are built based on game play locations associated with a particular player (e.g., first player P3) and further screened using a depth buffer to ensure that players within the social community built for the benefit of the first player (e.g., player P3) share an unobstructed view, according to one embodiment of the present disclosure. Specifically, player P3 has a corresponding field of view (e.g., FOV P3) taken from a particular point 713 in the gaming environment 700 of the gaming application. As shown, player P3 is able to view objects 730 within FOV P3. That is, player P3's depth buffer does not restrict viewing object 730. Additionally, player P2(Landon) has a corresponding field of view (e.g., FOV' P2) obtained from point 712 in the gaming environment. However, depth buffer analysis limits the field of view of player P2 due to object 750. That is, FOV' P2 includes large object 750 (e.g., walls, rock walls, buildings, etc.). Thus, in FOV' P2, player P2 cannot view object 730 (e.g., along ray trace or line 720). Thus, player P2 is not included in the social community that is constructed based on in-game progress and/or map location of the first player's (e.g., player P3) game play.

In yet another embodiment, the interactive zones may be less defined. For example, an interactive zone may be a task. In that case, the method includes determining a task currently being played in a first game play of a first player (e.g., player P3). Thus, all players in the social community play the same task. That is, players in the player social community have corresponding game plays that are currently playing a mission (e.g., actively or in a paused state because the mission may not be critical to progress within the gaming application).

At 650, the method includes contacting a first player (e.g., player P3) to at least one player in the player social community to enable communication between the contacted players. For example, a first player may contact another player directly through a direct channel. In another implementation, a first player may contact a group of players through a group channel. In particular, a list of players in the social community of players, built in the interest of player P3, is created and passed to player P3 for selection. For example, FIG. 8 shows display 12 displaying a screenshot 810 of game play for a particular player (e.g., player P3). As shown, screenshot 810 shows a frontal view of a battle between kredons 891 and an enemy 896. In the case of the Ares game application, Kredodes is a Ciba warrior in Greek myth, and the task is to kill Ares. During game play, the player may control the kredons 391. Display 12 also shows GUI 900 displaying a list of players within window 815, where the players are included in a nascent social community that is constructed based on an in-game process and/or location associated with a first player (e.g., player P3), as previously described. For example, players in the social community include player P1(River Hsu), player P2(Landon Noss), player P4, player P7(Meredith blade), and player P8. As previously described, players in the newborn social community may communicate with each other without fear of revealing or knowing sensitive information.

Fig. 9A and 9B provide Graphical User Interfaces (GUIs) 900A and 900B that provide for communication between players within a nascent social community based on an in-game process and/or location associated with a first player (e.g., player P3), as previously described. Player P3 may be associated with a group of players or directly with a single player. For example, GUIs 900A and 900B have a channel field 901 that, when selected, allows player P3 to contact multiple players via a group channel, and have a player field 902 that, when selected, allows player P3 to contact a single player via a direct channel, as described below. Further, the list of group channels and/or direct channels may be further filtered by one or more of progress 911, task 912, location 913, and/or nearby (e.g., proximity) 914. That is, when progress 911 is selected, a new social community is constructed based on in-game progress of game play by player P3. In addition, when task 912 is selected, a new social community is built based on the current task of player P3's game play. Further, when location (e.g., map location) 913 is selected, a nascent social community is constructed based on the map location (e.g., region, area, town, map coordinates, etc.) of the game play of player P3. Further, when neighborhood (e.g., proximity) 914 is selected, a nascent social community is established based on the map coordinates of the game play of player P3, and includes players having map coordinates within a predefined distance of the map coordinates of the game play of player P3. In both GUIs 900A and 900B, the current task of player P3, such as the BLOODY Baron task, is displayed. For example, field 940 allows player P3 to enter text for communicating over the channel.

In particular, fig. 9A illustrates a graphical user interface 900A that provides communication in a group channel between players within a newborn social community that is built based on in-game progress and/or location associated with a particular player, according to one embodiment of the present disclosure. As shown, field 901 is selected to provide access to one or more group channels. Each channel is configured such that each of the channels is in the same portion of the same game as the first player (e.g., player P3), so that someone in the channel has knowledge to answer any questions posed within the channel. Furthermore, because the channel is populated with players having similar in-game scenarios that correspond to similar in-game processes, as previously described, the player who posed the question need not provide a large amount of context or context for the question, as each player in the channel is located at the same location in the gaming application. For example, the player who presented the question does not have to provide information about what game is being played, what level the player is involved in (because all players are at the same level), the walry that the player mentioned in the question, etc. Even fuzzy problems such as a sentence "where the dead metal is spending without any other information? "instant, relevant answers are also available due to the context-aware nature of the players within the nascent social community built in the interest of the first player (e.g., player P3).

Each group channel has a corresponding discussion topic. The group channel is selected to join player P3 to the channel. For example, the theme of group # story channel 932 is centered on the story of the gaming application and has 14 participants. Group # general channel 934 is labeled as a general topic that allows all types of discussion and has 99 participants.

Further, the group # help channel 931 invites the reception and provision of help for game play of the game application, and has 93 participants. For example, first player P3 may be engaged in the "Ares". Player P3 knows and found two of the three crows belonging to the olympic in the current level of the gaming application. However, player P3 has difficulty finding the last crow. In this case, player P3 could go to the # Help channel 931 and ask "he, do someone know where the last crow was? I find one at each of the wal chi and the entrance. The other one? "the player in this # help channel 931 may have the necessary information to find the last crow.

In addition, group channel 933 has a theme focused on official communications from the channel's sponsor. For example, the sponsor may be a game developer or producer of the gaming application. In this way, the official news channel 933 provides a unique way for game publishers and developers to contact their customers. For example, # official news channel 933 allows publishers to push messages to users based on their users' progress, tasks, location, etc. in the game. These messages are completely context specific and only relevant in the context. For example, an imperial digital (bastard night game publisher) might push a message to cover only bastard night players currently located in an area or game platform called the small town of the leaning tower. The official message may let the customer know that a particular in-game event will occur in the next few minutes or even the next day or week in the future. In another illustration, the santa moly card studio may push a message containing a link to a sole interview of a game designer who has designed the exact level that the corresponding player is taking. The # official news channel 933 provides the publisher with a unique way to facilitate re-participation and to communicate with players in a more personalized, targeted manner, rather than as advertisements. For example, when a player is about to complete a game (e.g., based on a map location), # official news channel 933 may provide a link that allows the player to access downloadable content (DLC) of an extension game, allowing the player to continue playing the game without completion.

FIG. 9B illustrates a graphical user interface 900B that provides direct one-to-one communication between two players within a nascent social community that was constructed based on in-game progress and/or location associated with a first player (e.g., player P3) also included in the communication, according to one embodiment of the present disclosure. Player P3 may contact a selected player (e.g., selected by player P3 via the list described below) for communication. For example, player P3 may contact another player directly for one-to-one communication (e.g., via a direct channel).

GUI 900B provides a list of players within the newborn social community. In this manner, a first player (e.g., player P3) may contact another player in the list. Players in the list may be further categorized, such as by friend category 950, by collection category 960, by recently encountered category 970, or by all players category 980. As shown, the friends category 950 includes three friends: player P2(Landon Noss), player P1(River Hsu), and player P7(Meredith blade). The recently encountered category includes 5 players and the "all players" category includes 486 players.

In addition, the collection category 970 includes 4 players. For example, if someone in # help channel 931 is helpful, a first player (e.g., player P3) may collect them as one who may trust seeking help in the future. The favorite player may not have enough relationship with the first player (e.g., Player P3) to make them a social network friend (e.g., a PSN friend), but the favorites mechanism allows the first player to remember the favorite player to seek help later in the first player's game play. Further, a first player (e.g., player P3) may only want to chat directly with a friend. In another embodiment, a player may be awarded a "reputation" or "strength" system as a reward for becoming a positive member of the community.

Players in the list may be associated with corresponding symbols indicating the progress of the corresponding game play of the corresponding player relative to the progress of the game play of player P3. For example, the symbol may indicate that the QGA process of the corresponding player leads the QGA process of the first player (e.g., warning — red flag to watch through the alert cautiously), or the symbol may indicate that the QGA process of the corresponding player lags the QGA process of the first player (e.g., warning — yellow flag to take care not to reveal the storyline alert), or the symbol may indicate that the QGA process of the corresponding player is in the QGA process of the first player (e.g., green flag to indicate no watch through alert).

10A-10B illustrate direct one-to-one communication between two players within a nascent social community constructed based on an in-game progress and/or location associated with one of the players in the communication (e.g., first player-player P3 Warren), according to one embodiment of the present disclosure. For example, Player P3 is communicating with Player P2(Landon NOSS) through a direct channel, as shown in title bar 1001.

Further, player P2 has a progress indicator 1020 that indicates that the relative QGA process of player P2 is the same as the QGA process of player P3, and therefore the risk that sensitive information will leak in any communication between these players is likely to be minimal. As shown in information section 1005, player P3(Warren) started a new task, "The Nilfgardian Connection". Because Player 2(Landon) is included in the newborn social community built for Player P3 and has a QGA progress indicator showing secure communications, Player 2 may also be currently in the same mission. That is, Player 2(Landon) may be included in the list that displays the players in the corresponding newborn social community (e.g., shown in GUI 900B). Even though player P3(Warren) is a friend of player P2(Landon), player P3 may not be willing to find help at first because player P3(Warren) may not know whether player P2(Landon) can answer the questions posed about the corresponding level (e.g., mission) in the gaming application. Player P3(Warren) may not even contact player P2(Landon) because of concerns that it may reveal sensitive information and damage player P2's game. However, because player P2(Landon) is included in the social community built for player P3, two players may be in the same battle, so player 2(Landon) may be able to help player P3, and player P3 may communicate with player P2(Landon) without providing too many settings or scenarios, or without worrying about revealing sensitive information. For example, player P3(Warren) may send a direct message to friends and player P2(Landon) asking for suggestions on how to beat "evil baby (evil baby that)", as shown in message section 1010. Player 2(Landon) may know "evil treasure" because both players P3 and P2 are in the same part of the gaming application. If player P2(Landon) is unable to provide help, at least two players may communicate and support each other through strategies in finding out how to defeat "evil-bad" baby. It has been demonstrated that player P2(Landon) can provide help and provide information in message section 1010 about how to defeat the "evil treasure" (e.g., dodging and rolling over).

In The information section 1015, information that The player P3(Warren) has completed a task, "The niflgardian Connection" is given. In this way, player P2(Landon) may now be removed from the social community built in the interest of player P3 because the two players are performing different tasks. Since the newborn social community is dynamically constructed and updated, Player 2(Landon) may again be included in the social community. For example, in FIG. 10B, direct communication between player P3(Warren) and player P2(Landon) can continue because both players started a new task, "The blood Baron". For example, the information given in message section 1020 indicates that player P2(Landon) has started a new task, BLOody Baron. In addition, the information presented in message section 1025 indicates that player P3(Warren) also started the same task. Thus, direct communication can continue without fear that sensitive information may be revealed to any player. For example, in message section 1030, player P3(Warren) again seeks assistance directly to player P2(Landon) to override the guard. Player P2 has made clear how to cross the guard and provided a prompt (e.g., walk to the well) in the response provided in message section 1030.

In another embodiment, player P3(Warren) may have another player show how to complete a task. For example, player P3 may have difficulty finding collectibles in gaming applications. Based on the members of the social newborns community built in the interest of player P3, both players P3(Warren) and P2(Landon) are located at the same map location. Thus, player P3(Warren) and player P2(Landon) may have direct one-to-one communication. Rather than player P2(Landon) attempting to explain to player P3(Warren) where the collection is by way of a landmark or other description, player P2 may show player P3(Warren) how to actually go to the location of the collection in my own game copy. This may be accomplished, for example, by the split screen of player P3(Warren) having a window showing game play of player P2 (Landon). Player P2(Landon) may also narrate instructions by telling player P3(Warren) when they are nearby (e.g., based on proximity or map location). Relative positions (e.g., cardinal directions) may also be given. In this way, both players P2(Landon) and P3(Warren) know when they are in exactly the same x/y/z position. Thus, player P2 is able to show and/or guide player P3(Warren) to find collectibles.

In another embodiment, information may be easily shared among players of the newborn community as game states are collected for players in the newborn community that are built in the interest of the player (e.g., player P3). For example, player P3(Warren) can share a corresponding load of characters (e.g., controlled by player P3 during game play) with player P2(Landon) in real time. In this way, player P2(Landon) can see how player P3(Warren) arms the corresponding character (e.g., controlled by player P3). In another embodiment, player P2(Landon) may activate a button or icon that enables a corresponding instance of a gaming application (e.g., supporting player P2) to mirror the load used in game play of player P3 (Warren). This assumes that player P2 can gain access to the weapons and skills used in the loading. Similarly, player P3(Warren) may view the load of player P2(Landon) and suggest (e.g., by direct communication) how to better arm the corresponding character (e.g., controlled by player P2) for a particular battle. Furthermore, as player P2(Landon) experimented with different configurations, the viewing player (P3-Warren) could see dynamic updates of inventory and loading in real time.

Fig. 11 illustrates components of an example apparatus 1100 that may be used to perform aspects of various embodiments of the present disclosure. For example, fig. 11 illustrates an exemplary hardware system suitable for building instant social connections and newborns based on in-game progress and/or location of a particular player playing a gaming application, according to one embodiment of the present disclosure. This block diagram illustrates an apparatus 1100 that may incorporate or be a personal computer, server computer, game console, mobile device, or other digital device, each of which is suitable for practicing embodiments of the present invention. The apparatus 1100 includes a Central Processing Unit (CPU)1102 for running software applications and optionally an operating system. CPU 1102 may be comprised of one or more homogeneous or heterogeneous processing cores.

According to various embodiments, CPU 1102 is one or more general-purpose microprocessors having one or more processing cores. Further embodiments may be implemented using one or more CPUs having a microprocessor architecture that is particularly well suited for highly parallel and computationally intensive applications configuring applications for deep learning, content classification, and user classification, such as media and interactive entertainment applications. For example, CPU 1102 may be configured to include a dynamic social network builder and communication engine 310 configured to build instant social connections and newborns based on in-game progress and/or location (e.g., map location) of a particular player playing a gaming application. In this manner, players in the newborn community may be related to each other through a direct one-to-one or player-to-player channel or through a group channel supporting multiple players. Players in these channels know about the same amount of information because each of them has similarly progressed through the gaming application and/or are currently in the same map location of the corresponding game world of the gaming application. In addition, each player has detailed knowledge of the game scenario associated with the shared in-game process and/or map location. In this manner, players within the communication channel need not be highly vigilant in communicating because of fear of revealing sensitive information about the gaming application.

Memory 1104 stores applications and data for use by CPU 1102. Storage 1106 provides 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 disc, HD-DVD, or other optical storage devices, as well as signal transmission and storage media. User input devices 1108, examples of which may include a keyboard, mouse, joystick, touchpad, touch screen, still or video recorder/camera, and/or microphone, communicate user input from one or more users to the device 1100. Network interface 1114 allows device 1100 to communicate with other computer systems via an electronic communications network, and may include wired or wireless communications over local area networks and wide area networks such as the internet. The audio processor 1112 is adapted to generate analog or digital audio output from instructions and/or data provided by the CPU 1102, memory 1104 and/or storage 1106. The components of device 1100, including CPU 1102, memory 1104, data storage 1106, user input device 1108, network interface 1110, and audio processor 1112, are connected via one or more data buses 1122.

Graphics subsystem 1114 is also connected to data bus 1122 and to the components of device 1100. Graphics subsystem 1114 includes a Graphics Processing Unit (GPU)1116 and a graphics memory 1118. Graphics memory 1118 includes display memory (e.g., a frame buffer) for storing pixel data for each pixel of the output image. Graphics memory 1118 may be integrated in the same device as GPU 1116, connected as a separate device with GPU 1116, and/or implemented within memory 1104. Pixel data may be provided to graphics memory 1118 directly from CPU 1102. Alternatively, CPU 1102 provides data and/or instructions to GPU 1116 defining the desired output images, from which GPU 1116 generates pixel data for one or more output images. Data and/or instructions defining the desired output image may be stored in memory 1104 and/or graphics memory 1118. In an embodiment, GPU 1116 includes 3D rendering capabilities for generating pixel data for an output image from instructions and data defining the geometry, lighting, shading, texturing, motion, and/or camera parameters of a scene. GPU 1116 may also include one or more programmable execution units capable of executing shader programs.

Graphics subsystem 1114 periodically outputs pixel data for images from graphics memory 1118 to be displayed on display device 12 or projected by projection system 1140. Display device 12 may be any device capable of displaying visual information in response to signals from device 1100, including CRT, LCD, plasma, and OLED displays. The device 1100 may provide, for example, analog or digital signals to the display device 12.

Accordingly, the present disclosure describes systems and methods for building instant social connections and newborns based on in-game progress and location of a particular player playing a gaming application. In this way, the player may contact other players in the community through a direct channel to one other player or a group channel connecting multiple players for social communication with the gaming application. Since all players in the newborn community have approximately the same knowledge of the gaming application, there is a limited risk of revealing sensitive information when communicating.

It is to be understood that the various embodiments defined herein may be combined or assembled into specific implementations using the various features disclosed herein. Thus, the examples provided are only a few of the possible examples, and are not limiting of the various implementations possible by combining various elements to define further implementations. In some examples, some implementations may include fewer elements without departing from the spirit of the disclosed or equivalent implementations.

Embodiments of the present disclosure may be practiced with various computer system configurations, including hand-held devices, microprocessor systems, microprocessor-based or programmable consumer electronics, minicomputers, mainframe computers, and the like. Embodiments of the present disclosure may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a wire-based or wireless network.

In view of the above embodiments, it should be appreciated that embodiments of the present disclosure may employ various computer-implemented operations involving data stored in computer systems. The operations are those requiring physical manipulations of physical quantities. Any of the operations described herein that form part of the embodiments of the present disclosure are useful machine operations. Embodiments of the present disclosure also relate to an apparatus or device for performing these operations. The apparatus may be specially constructed for the required purposes, or it may be a general-purpose computer selectively activated or configured by a computer program stored in the computer. In particular, various general-purpose machines may be used with computer programs written in accordance with the teachings herein, or it may be more convenient to construct a more specialized apparatus to perform the required operations.

The present disclosure may also be embodied as computer readable code on a computer readable medium. The computer readable medium is any data storage device that can store data which can thereafter be read by a computer system. Examples of the computer readable medium include hard disk drives, Network Attached Storage (NAS), read-only memory, random-access memory, CD-ROMs, CD-R, CD-RWs, magnetic tapes, and other optical and non-optical data storage devices. The computer readable medium may include a computer readable tangible medium distributed over a network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.

Although the method operations are described in a particular order, it should be understood that other housekeeping operations may be performed between the operations, or the operations may be adjusted so that they occur at slightly different times, or the operations may be distributed in a system that allows processing operations to occur at various intervals associated with the processing, as long as the processing of the overlay operation is performed in a desired manner.

Although the foregoing disclosure has been described in some detail for purposes of clarity of understanding, it will be apparent that certain changes and modifications may be practiced within the scope of the appended claims. Accordingly, the present embodiments are to be considered as illustrative and not restrictive, and the embodiments of the disclosure are not to be limited to the details given herein, but may be modified within the scope and equivalents of the appended claims.

49页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:装载转台系统和方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类