Social Network Data Analysis to Generate Suggestion Metrics for Online Gaming

- Zynga

Systems and methods for cross suggesting games are described. One of the methods includes obtaining group data associated with a first web account group. The group data is associated with a first game and a first user group playing the first game. The method further includes identifying the first game to suggest to a second user based on the group data. The group data includes data regarding use of the first game by the first user group. The first user group includes network friends of the first user. The method also includes sending data identifying of the first game to a client device that is operated to access a second web account of the second user.

Skip to: Description  ·  Claims  · Patent History  ·  Patent History
Description
FIELD

The present disclosure relates to methods and systems for cross suggesting games.

BACKGROUND

Social networks have created a type of Internet website that has gained in popularity. They help different types of people in relationships stay connected such as family, friends, business associates, or people with similar interests. These connections are created through a variety of tools and applications, including profiles, groups, photos, music, videos, messaging, instant messaging, internal system communications and the like.

Through social network websites, one can create online representations of real-world relationships that allow users to interact with each other. Users generally create a profile that will include personal information about the user, including displaying their interests, friends, photos, and background information. Users can also leave comments on their profile and other user profiles to share with others.

To join these websites, a new user can usually simply visit the website and create an account or an existing user can invite other people to join. Once a new user joins, whether through directly signing up for the site or by accepting a request to join from their friend or acquaintance, they typically create a profile of their own. After a user has joined, that user can link other users as friends (or connections) by searching for them using various parameters and then having an automated or personalized message sent to that user via the social network website.

Some social networking websites allow for third-party developers to create games that can run within the website. These games are developed, owned and hosted by game developers. Users add identities of these games to their profiles, and then can share the identities with other users.

The games are played online via the Internet. The games are played via a web browser on a mobile device or a computer with the ability to input. These games are connected to a server that can apply complex rules and computations while allowing for player interactions over the Internet. Some of these Internet games are played by accessing the social networking websites and there are some games that are played without accessing the social networking websites.

However, a player may play a game and may be losing out on opportunities to play other games.

It is within this context that embodiments described in the present disclosure arise.

SUMMARY

Embodiments described in the present disclosure provide methods and systems for cross suggesting games.

In some embodiments, a game is cross suggested to a player based on a variety of data, such as, for example, data regarding the player, data regarding other users, such as, for example, network friends, of the player, data regarding use of a game by the player, and data regarding use of the game by the other users, and data regarding use of other games by the players.

In a number of embodiments, a method for cross suggesting games is described. The method includes obtaining group data associated with a first web account group. The group data is associated with a first game and a first user group playing the first game. The method further includes identifying the first game to suggest to a second user based on the group data. The group data includes data regarding use of the first game by the first user group. The first user group includes network friends of the first user. The method also includes sending data identifying the first game to a client device that is operated to access a second web account of the second user.

In several embodiments, a method for cross suggesting games is described. The method includes obtaining group data associated with a first web account group. The group data is associated with a first game and a first user group playing the first game. The first game is played using the first web account group. The method further includes generating rank data to rank the first game within a set of games based on the group data, associating the rank data with a second web account of a second user, and sending the rank data to a client device that is operated to access the second web account. The first user group includes network friends of the second user.

In various embodiments, a server system for cross suggesting games is described. The server system includes a processor, which is configured to identify a first game that is used by a first user group based on group data. The group data is associated with a first web account group of the first user group. The group data includes data regarding use of the first game by the first user group. The first game is identified to suggest to a second user. Also, the first user group includes network friends of the first user. The server system further includes a network interface controller configured to send data identifying the first game to a client device, which is operated to access a second web account of the second user. The server system includes a memory device configured to store the identification of the first game.

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

BRIEF DESCRIPTION OF THE DRAWINGS

Various embodiments described in the present disclosure may best be understood by reference to the following description taken in conjunction with the accompanying drawings in which:

FIG. 1 is a diagram of an architecture for illustrating a manner of cross-suggesting games from one user group of one or more users to another user group that includes one or more users, in accordance with one embodiment described in the present disclosure.

FIG. 2 is a flowchart of a method for determining a game to suggest to a user based on group data, in accordance with another embodiment described in the present disclosure.

FIG. 3A is a block diagram of a server system that is coupled with a network to illustrate a manner of cross suggesting games, in accordance with one embodiment described in the present disclosure.

FIG. 3B is a block diagram of an architecture that is coupled with the server system via the network to illustrate a manner of cross suggesting games, in accordance with one embodiment described in the present disclosure.

FIG. 4 is a diagram of a network architecture that illustrates use of different web accounts that are associated with different networks, in accordance with one embodiment described in the present disclosure.

FIG. 5 is a diagram of a compare logic module that compares data received from one or more databases to determine a rank of a game, in accordance with one embodiment described in the present disclosure.

FIG. 6 is a flowchart of an embodiment of a method for generating rank data that is used to rank games, in accordance with one embodiment described in the present disclosure.

FIG. 7 is a diagram of a display screen of client device to illustrate ranking of games when a social network service is used to play the games, in accordance with one embodiment described in the present disclosure.

FIG. 8 is a diagram of the display screen to provide another illustration of ranking of games when a social network service is used to play the games, in accordance with one embodiment described in the present disclosure.

FIG. 9 is a diagram of the display screen to provide an illustration of ranking of games when a game service is used to play the games, in accordance with one embodiment described in the present disclosure.

FIG. 10 is a diagram of the display screen to provide another illustration of ranking of games when a game service is used to play the games, in accordance with one embodiment described in the present disclosure.

FIG. 11 is a diagram of the display screen that displays multiple game web pages to illustrate ranking of a game with respect to the other games, in accordance with one embodiment described in the present disclosure.

FIG. 12 is a diagram of the display screen that displays multiple game web pages to provide another illustration of ranking of a game with respect to the other games, in accordance with one embodiment described in the present disclosure.

FIG. 13 is a diagram of the display screen that displays a pattern of circles to illustrate a suggestion of a game, in accordance with one embodiment described in the present disclosure.

FIG. 14 is a diagram of the display screen that displays the pattern of circles to provide another illustration of a suggestion of a game, in accordance with one embodiment described in the present disclosure.

FIG. 15 is a diagram of multiple graphs used to illustrate a dynamic change in use of a game, in accordance with one embodiment described in the present disclosure.

FIG. 16 is a block diagram of a client device, in accordance with one embodiment described in the present disclosure.

DETAILED DESCRIPTION

It should be noted that various embodiments described in the present disclosure may be practiced without some or all of these specific details. In other instances, well known process operations have not been described in detail in order not to unnecessarily obscure various embodiments described in the present disclosure.

FIG. 1 is a diagram of an embodiment of an architecture 290 for illustrating a manner of cross-suggesting games from one user group of one or more users to another user group that includes one or more users. The term “game”, as used herein, means a virtual game. For example, the term “game” excludes real world sports that are played on a real landscape, such as grass, field, etc. As another example, a “game” is played on virtual grass or in a virtual field. As another example, a “game” is played via the Internet or the World Wide Web.

A data services module 292 collects data regarding one or more games. For example, the data services module 292 collects first game data that is rendered at a client device to identify or play a first game, collects second game data that is rendered at a client device to identify or play a second game, and collects third game data that is rendered at a client device to identify or play a third game. In several embodiments, the data services module 292 collects game data for any number of games. Also, the first game is different than the second game and the third game, and the second game is different than the third game. For example, the first game has different rules than that of the second game, has different prizes than that in the second game, has different virtual characters than that in the second game, has different multimedia than that in the second game, or a combination thereof. Examples of multimedia include an image, an animation, an audio, and a video.

A game is identified using a name the game, a logo of the game, a brand of the game, or a combination thereof. For example, a poker game that is developed by Zynga™ Corporation of San Francisco, Calif. is named Zyngapoker™. As another example, a crossword puzzle game that is developed by Zynga Corporation is named “WORDS with Friends™”

Examples of a client device include a mobile device and a desktop computer. Examples of a mobile device include a laptop, a smart phone, a cell phone, a personal digital assistant, and a tablet.

Examples of a game include a game that is used to collect virtual coins, a game that is used to collect virtual items, a game that is played with virtual friends, a game that is played with social network friends, a game that is played to fight with virtual enemies, a Poker game, a game that is played to build a virtual city, a game that is played to build a virtual farm, a game that is played to follow virtual clues to solve a virtual puzzle and to achieve a virtual goal, and a game in which players take turns building words crossword puzzle style with an opponent.

The data services module 292 further obtains a portion of group data 154, which includes information about a first user group, which is described below. For example, the data services module 292 accesses, such as, for example, reads, the group attribute data 306 from one or more memory devices. In several embodiments, the group attribute data 306 includes a social graph, which includes relationships between various users of a social network. For example, a social graph indicates whether a user is a social network friend of another user. A user group includes one or more users, such as, for example, players of games.

The group data 154 includes group attribute data 306, such as, for example demographic data. The group attribute data 306 is associated with one or more users of a group. Examples of group attribute data 306 include an age of a user, a gender of a user, a relationship status of a user, interests of a user, hobbies of a user, likes of a user, dislikes of a user, or a combination thereof. It should be noted that each of age, gender, relationship status, interest, hobby, like, and dislike is a parameter.

In several embodiments, the group attribute data 306 is unrelated to a game that users of a group play. For example, the group attribute data 306 includes movies that are liked or disliked by a user, geographical locations that are liked or disliked by the user, real world sports that are liked or disliked by the user, etc.

The group data 154 also includes group behavior data 308, which is associated with a game that is played by a group. Examples of the group behavior data 308 include a number of game sessions during a time period, an amount of time a game is played during a game session, a number of times a preview of a game is watched during the time period, a number of indications of a like of a game, a number of indications of a dislike of a game, a number of times a game is downloaded from a server to a client device, or a combination thereof.

The group data 154 is stored in one or more memory devices. For example, the group attribute data 306 is stored in a memory device and the group behavior data 308 is stored in a memory device.

In several embodiments, a game session starts when a user starts playing, such as, for example, interacting with, a game after logging into a service, such as, for example, a game service, an email service, or a social network service. As an example, a user starts playing a game when the user starts to interact with the game. Also, the game session ends when a user stops playing a game or when the user logs out of a service. A user stops playing a game when the user stops interacting with the game.

In several embodiments, a game service is displayed at a client device when one or more servers execute a game application. A server may be a physical server or a virtual machine. An application includes a computer program. One or more servers execute a game application to generate game data. In various embodiments, a social network service is displayed at a client device when one or more servers execute a social network application. Users use a social network service to chat online with other users, to share posts with web accounts of other users, to post multimedia to one or more web accounts, or a combination thereof. In some embodiments, an email service is displayed at a client device that is operated by a user to send and receive emails from other users.

A logic engine 294 receives the group data 154 and game data, such as, for example, the first game data, the second game data, and the third game data, and processes the group data 154 and the game data to generate rank data 163, which is suggestion metrics. For example, the logic engine 294 ranks the first, second, and third games based on the group data 154. For example, the logic engine 294 determines that the first game is played more frequently by the first user group than each of the second and third games, the first game is played for a longer time than each of the second and third games during each gaming session for a pre-determined number of gaming sessions, a preview of the first game is watched more often than previews of each of the second and third games, the first game is liked by a higher number of users of the first user group than a number of users of the first user group that like each of the second and third games, the first game is disliked by a lesser number of users of the first user group than a number of users of the first user group that dislike each of the second and third games, the first game is downloaded for a higher number of times by the users of the first user group than a number of times each of the second and third games are downloaded by the users, or a combination thereof. In this example, the logic engine 294 assigns a higher rank to the first game compared to the second and third games.

As another example, the logic engine 294 determines that the first game is played by a group of users that are of a same or similar age, same or similar relationship status, same or similar interests, same or similar hobbies, same or similar likes, same or similar dislikes, or a combination thereof, as that of a user to whom the first game is suggested for play. In this example, the logic engine 294 determines that each of the second and third games is played by a group of users that are of a different age, different relationship status, different interests, different hobbies, different likes, different dislikes, or a combination thereof, compared to that of a user to whom the first game is recommended for play. In this example, the logic engine 294 assigns a higher rank to the first game than to the second and third games.

As yet another example, the logic engine 294 determines that the first game is played by a group of users that are of a same or similar age, same or similar relationship status, same or similar interests, same or similar hobbies, same or similar likes, same or similar dislikes, or a combination thereof, as that of a user to whom the first game is suggested for play. In this example, the logic engine 294 further determines that the each of the second and third game is played less frequently, previewed for a lesser number of times, downloaded for a lower number of times, played for a lesser amount of time during each gaming session, indicated as liked for a lower number of times, indicated as disliked for a higher number of times, or a combination thereof, by the group of users compared to the first game. In this example, the logic engine 294 assigns a higher rank to the first game than to the second and third games.

As an example, two users have a similar parameter when values of the parameter are within a threshold. To illustrate, two users have a similar age when a first of the two users has an age between 12 and 24 and a second of the two users has an age between 12 and 24. As another example, two users have a similar parameter when sub-categories of the parameter are different and the sub-categories fall within one category. To illustrate, two users have a similar hobby when a first of the two users lists golf as a hobby and a second of the two users lists cricket as a sport in their web accounts that are used to access a social network service. Both cricket and golf are outdoor real world sports. As another illustration, two users have a similar like when a first of the two users lists Jackie Chan as his/her favorite actor and a second of the two users lists Jet Li as his/her favorite actor. Both Jackie Chan and Jet Li act in martial arts movies.

The rank data 163 is sent via a network 198 to a client device 171 that is operated by a user 1602. Examples of the network 198 include a wide area network (WAN), a local area network (LAN), or a combination thereof. To illustrate, the network 198 is the Internet, an Intranet, or a combination thereof. A WAN includes a wireless WAN, a wired WAN, or a combination thereof. Similarly, a LAN includes a wireless LAN, a wired LAN, or a combination thereof.

A processor of the client device 171 processes the rank data 163 and renders game data of a game 158 to display an identity of the game 158 on a display screen of the client device 171 according to an order of display. A processor, as used herein, includes a central processing unit (CPU), a microprocessor, an application specific integrated circuit (ASIC), or a programmable logic device (PLD). Examples of a display screen include a liquid crystal display (LCD) display screen, a light emitting diode (LED) display screen, a cathode ray tube (CRT) display screen, and a plasma display screen.

The game 158 is displayed in a position that corresponds to a rank of the game 158. For example, when the game 158 is an example of the first game that is described above, the processor of the client device 171 applies the rank data 163 and communicates with a graphical processing unit (GPU) of the client device 171 regarding the application. In this example, the processor communicates with the GPU to control the GPU to render the first game data and to render a portion of or to avoid rendering the second and third game data on the display screen of the client device. As another example, the processor communicates with the GPU to instruct the GPU to display the game 158 as ranked number 1 and the second and third games as ranked lower than the game 158. As yet another example, the processor communicates with the GPU to instruct the GPU to render the first game data to display the game 158 as ranked number 1 and to render a portion of or to avoid rendering the second and third game data on the display screen of the client device.

Game data is rendered to display an identity of a game. For example, the first game data is rendered to display an identity of the game 158.

It should be noted that each of a module and an engine, as used herein, includes a hardware, a software, or a combination thereof. For example, a module or an engine includes a computer program that is executed by one or more processors. As another example, a module or an engine includes an ASIC or a PLD that performs the operations described herein as performed by the module. As yet another example, a module or an engine includes one or more processors and one or more memory devices that store a computer program that is executed by the one or more processors.

FIG. 2 is a flowchart of an embodiment of a method 150 for determining a game to suggest to a user based on group data 154 (FIG. 1). The method 150 is executed by one or more processors of one or more servers of a server system 298 of FIG. 3A. For example, the method 150 is executed by a server 3041 of FIG. 3A. FIG. 3A is a block diagram of an embodiment of the server system 298 that is coupled with the network 198. FIG. 3B is a block diagram of an embodiment of an architecture 300 that is coupled with the server system 298 of FIG. 3A via the network 198.

With reference to FIGS. 2, 3A, and 3B, in an operation 152, the group data 154 associated with a first web account group is obtained. For example, a network interface controller (NIC) 2021 of the server 3041 requests the group attribute data 306 from a server 3042 of the server system 298. The servers 3041 and 3042 are parts of the World Wide Web. For example, the server 3041 stores web pages that are requested by a client device to play a game, the server 3042 stores web pages that are requested by a client device to use a social network service. Examples of a NIC include a network interface card and a network adapter.

A NIC 2022 of the server 3042 accesses the group attribute data 306 from a memory system 2042 of the server 3042 and sends the group attribute data 306 via the network 198 to the NIC 2021. As another example, in several embodiments in which the web accounts 1 thru N and the group attribute data 306 are stored within a memory system 2041 of the server 3041 instead of the memory system 2042, a processor 1701 of the server 3041 accesses the group attribute data 306 from the memory system 2041 instead of requesting the group attribute data from the server 3042. The processor 1701, the NIC 2021, and the memory system 2041 are coupled with each other via a bus 1711. Similarly, a processor 1702 of the server 3042, the NIC 2022, and the memory system 2042 are coupled with each other via a bus 1712.

As used herein, a memory system includes one or more memory devices. Examples of a memory device include a read-only memory (ROM), a random access memory (RAM), or a combination thereof. To illustrate, examples of a memory device include a flash memory, a disk array, and a hard disk.

As shown in FIG. 3A, the first web account group includes web accounts 1 thru N, where N is an integer greater than zero. Each web account is a web account that a user logs into to access a game. As an example, a web account is an email account, a social network service account, a game service account, or a combination thereof. A user logs into an email account to access emails and/or to play a game. Moreover, a user logs into a social network service account to chat with other users of a social network, to share posts with the other users, to post multimedia, to access multimedia posted by the other users, to play a game, or a combination thereof. Also, a user logs into a game service account to play a game.

To log into a web account, a user provides user information, such as, for example a user name, a password, a telephone number, an answer to a security question, user identifying information, or a combination thereof, to a client device that is operated by the user and a NIC of the client device sends the user information to the server system 298 via the network 198. An authentication server 302 of the server system 298 authenticates the user information based on information that is pre-stored within the authentication server 302. For example, the authentication server 302 determines that the user information is authentic when there is a match between the user information and the pre-stored information. Otherwise, the authentication server 302 determines that the user information is unauthentic. When the authentication server 302 determines that the user information is authentic, a user who provided the user information logs into a web account that is assigned to the user.

In several embodiments, a web account is assigned to a user when the pre-stored information is received from the user with an indication that the user is not a bot.

The group data 154 is associated with the first web account group. For example, the processor 1702 of the server 3042 receives the group attribute data 306 from a user and stores the group attribute data 306 within a web account that is assigned to the user. To illustrate, a user provides his/her attributes, e.g., relationship status, age, likes, dislikes, hobbies, interests, or a combination thereof, to a web account that is used to access a social network service and the processor 1702 stores the attribute data within a web account of the user. In this illustration, the web account is logged into by the user to access a service. As another illustration, a user provides his/her attributes to a web account that is used to access a game service and the processor 1702 stores the attribute data within a web account of the user. In this example, the web account is logged into to access the game service without a need to access the social network service.

As another example of the association of the group data 154 with the first web account group, the processor 1701 determines the group behavior data 308 from usage of game data by users U1 thru UN of a first user group 1601 (shown in FIG. 3B). The users U1 thru UN use game data after logging into the web accounts 1 thru N. To illustrate, the processor 1701 determines a number of gaming sessions the game 158 is played by each user U1 thru UN during a time period, an amount of time during each gaming session the first game is played by each user of the first user group 1601 for a number of gaming sessions during the time period, a number of downloads of the first game by each user of the first user group 1602 during the time period after the user logs into a corresponding one of the web accounts 1 thru N, a number of times a preview of the first game is viewed by each user of the first user group 1601 during the time period after the user logs into the corresponding web account of the user, a number of times the first game is indicated as being liked by each user of the first user group 1601 within the corresponding web account of the user during the time period, a number of times the first game is indicated as being disliked by each user of the first user group 1601 within the corresponding web account of the user during the time period, a number of times a mention of the first game is posted within the corresponding web account, and/or whether each user of the first user group 1601 paid to play the game 158 after the user logged into the corresponding web account of the user.

It should be noted that a mention of a game is a positive mention of the game. For example, a mention of a game includes a statement in which advantages of the game are stated. It should further be noted that a web account corresponds to a user when the web account is assigned to the user. In various embodiments, a user mentions a game within a post, during a chat, or a combination thereof. A chat, as used herein, refers to an online chat.

In several embodiments, the users U1 thru UN are social network friends of the user 1602. For example, the user 1602 uses the client device 171 to send a request via a web account 157 to add the users U1 thru UN as social network friends of the user 1602. The web account 157 is a web account that is assigned to the user 1602. When the users U1 thru UN accept the request, the users U1 thru UN become social network friends of the user 1601. Similarly, the user 1602 becomes a network friend of the users U1 thru UN when the user 1601 accepts requests sent via the web accounts 1 thru N to become a social network friend of the users U1 thru UN. In several embodiments, when the users U1 thru UN become social network friends of the user 1602, the users U1 thru UN can access via the web accounts 1 thru N, multimedia that is posted by the user 1602 in his/her web account 171 and that is restricted from access by anyone other than social network friends of the user 1602.

In various embodiments, the users U1 thru UN are acquaintances, friends, or family members of the user 1602 for whom the user 1602 has email addresses. In some embodiments, the users U1 thru UN are acquaintances, friends, or family members of the user 1602 for whom the user 1602 has user information that allows the user 1602 to use a game service to contact the users U1 thru UN.

In a number of embodiments, a user downloads a game at a client device via a network from a server, such as the server 3041. A NIC of the client device requests game data from the server 3041. The NIC 2021 sends the game data to a NIC of the client device to allow the NIC to download the game. The GPU of the client device renders the game data to display a game. In some embodiments, a game is previewed when after downloading a portion the game at a client device, a GPU of the client device renders a portion of game data to display the portion of the game. In several embodiments, a user indicates a game as being liked or disliked by logging into a web account of the user and selecting an icon that is displayed within selecting an icon within a service, such as the social network service, the gaming service, or the email service.

Referring to FIG. 2, in an operation 162, the game 158 is identified within a group of multiple games to suggest to the user 1602 (FIG. 1). The game 158 is identified based on the group data 154 (FIG. 1). For example, the game 158 is identified based on data regarding the users U1 thru UN, data regarding the user 1602, data regarding use of the game 158 by the user 1602, data regarding use of the game 158 by the users U1 thru UN, data regarding use of games other than game 158 by the users U1 thru UN, or a combination thereof. To illustrate, if the users U1 thru UN and the user 1602 have the same or similar age, the same or similar gender, the same or similar relationship status, the same or similar interests, the same or similar hobbies, the same or similar likes, the same or similar dislikes, or a combination thereof, the game 158, which is played by the users U1 thru UN, is identified to the user 1602 at the client device 171.

As another illustration, if each user U1 thru UN:

(a) plays the game 158 for a higher number of gaming sessions than a number of gaming sessions for which the other games are played by the user at a corresponding one of the client devices 168, or
(b) plays the game 158 for a longer time than an amount of time for which the other games are played by the user during each gaming session for a pre-determined number of gaming sessions, or
(c) watches previews of the game 158 more often than previews of the other games are watched by the user, or
(d) has indicated the game 158 as being liked for a higher number of times than a number of times for which the other games are indicated as being liked by the user,
(e) has indicated the game 158 as being disliked for a lower number of times than a number of times for which the other games are indicated as being disliked by the user, or
(f) has downloaded the game 158 to a corresponding one of the client devices 168 operated by the user for a higher number of times than a number of times the other games are downloaded to the client device, or
(g) has mentioned the game 158 within a corresponding one of the web accounts 1 thru N of the user for a higher number of times than mentioning the other games within the web account, or
(h) paid to play the game 158 after the user logs into the corresponding web account, or
(i) paid a higher amount to play the game 158 compared to the other games, or
(j) a combination thereof,
the game 158 is identified to the user 1602 at the client device 171. It should be noted that a client device corresponds to a user when the user operates the client device to access a web account of the user.

As yet another illustration, if each user U1 thru UN:

(a) plays the game 158 for a higher number of gaming sessions than a number of gaming sessions for which the game 158 is played by the user 1602 at the client device 171, or
(b) plays the game 158 for a longer time than an amount of time for which the game 158 is played by the user 1602 at the client device 171 during each gaming session for a pre-determined number of gaming sessions, or
(c) watches previews of the game 158 more often than previews of the game 158 are watched by the user 1602, or
(d) has indicated the game 158 as being liked for a higher number of times than a number of times for which the game 158 is indicated as being liked by the user 1602, or
(e) has indicated the game 158 as being disliked for a lower number of times than a number of times for which the game 158 is indicated as being disliked by the user 1602, or
(f) has downloaded the game 158 to a corresponding one of the client devices 168 for a higher number of times than a number of times the game 158 is downloaded to the client device 171 by the user 1602, or
(g) has mentioned the game 158 within the web accounts 1 thru N for a higher number of times than a number of times for which the game 158 is mentioned within the web account 157 by the user 1602, or
(h) a combination thereof,
the game 158 is identified to the user 1602 at the client device 171.

As another illustration, if each user U1 thru UN:

(a) has the same or similar age as that of the user 1602, or
(b) has the same or similar gender as that of the user 1602, or
(c) has the same or similar relationship status as that of the user 1602, or
(d) has the same or similar interests as that of the user 1602, or
(e) has the same or similar hobbies as that of the user 1602, or
(f) has the same or similar likes as that of the user 1602, or
(g) has the same or similar dislikes as that of the user 1602, or
(h) plays the game 158 for a higher number of gaming sessions than a number of gaming sessions for which other games are played by the one of the users U1 thru UN at a corresponding one of the client devices 168, or
(i) plays the game 158 for a longer time than an amount of time for which the other games are played by the one of the users U1 thru UN during each gaming session for a pre-determined number of gaming sessions, or
(j) watches previews of the game 158 more often than previews of the other games are watched by the one of the users U1 thru UN, or
(k) has indicated the game 158 as being liked for a higher number of times than a number of times for which the other games are indicated as being liked by the one of the users U1 thru UN, or
(l) has indicated the game 158 as being disliked for a lower number of times than a number of times for which the other games are indicated as being disliked by the one of the users U1 thru UN, or
(m) has downloaded the game 158 to a corresponding one of the client devices 168 for a higher number of times than a number of times the other games are downloaded to the corresponding one of the client devices 168, or
(n) has mentioned the game 158 within a corresponding one of the web accounts 1 thru N for a higher number of times than mentioning the other games within the corresponding one of the web accounts 1 thru N, or
(o) paid to play the game 158 after logging into the corresponding one of the web accounts 1 thru N, or
(p) paid a higher amount to play the game 158 compared to the other games, or
(q) plays the game 158 for a higher number of gaming sessions than a number of gaming sessions for which the game 158 is played by the user 1602 at the client device 171, or
(r) plays the game 158 for a longer time than an amount of time for which the game 158 is played by the user 1602 at the client device 171 during each gaming session for a pre-determined number of gaming sessions, or
(s) watches previews of the game 158 more often than previews of the game 158 are watched by the user 1602, or
(t) has indicated the game 158 as being liked for a higher number of times than a number of times for which the game 158 is indicated as being liked by the user 1602, or
(u) has indicated the game 158 as being disliked for a lower number of times than a number of times for which the game 158 is indicated as being disliked by the user 1602, or
(v) has downloaded the game 158 to the corresponding one of the client devices 168 for a higher number of times than a number of times the game 158 is downloaded to the client device 171 by the user 1602, or
(w) has mentioned the game 158 within the corresponding one of the web accounts 1 thru N for a higher number of times than a number of times for which the game 158 is mentioned within the web account 157 by the user 1602, or
(x) a combination thereof,
the game 158 is identified to the user 1602 at the client device 171.

In various embodiments, in the preceding illustration, instead of a number of times, an average of a number of times is used. For example, instead of determining whether the game 158 is played for a longer time than an amount of time for which the other games are played by each user U1 thru UN during each gaming session for a pre-determined number of gaming sessions, it is determined whether an average amount of time for which each user U1 thru UN plays the game 158 is longer than an average amount of time for which the other games are played by the user during each gaming session for a pre-determined number of gaming sessions. As another example, instead of determining whether each user U1 thru UN has indicated the game 158 as being liked for a higher number of times than a number of times for which the other games are indicated as being liked by the user, the number of times for which each user U1 thru UN has indicated the game 158 as being liked is averaged to generate a first average and the number of times for which each user U1 thru UN has indicated the other games as being liked is averaged to generate a second average, and it is determined whether the first average is greater than the second average.

Also, in some embodiments, in the preceding illustration, instead of the combination, a weighted combination is used. For example, whether each user U1 thru UN paid to play the game 158 after the user U1 thru UN logged into a corresponding one of the web accounts 1 thru N of the user is assigned a higher weight than a weight assigned to whether each user U1 thru UN has mentioned the game 158 within the corresponding web account of the user for a higher number of times than mentioning the other games within the corresponding web account. As another example, a factor of whether each user U1 thru UN has indicated the game 158 as being disliked for a lower number of times than a number of times for which the other games are indicated as being disliked by the user is assigned a higher weight than a weight assigned to a factor of whether the user plays the game 158 for a longer time than an amount of time for which the game 158 is played by the user 1602 at the client device 171 during each gaming session for a pre-determined number of gaming sessions.

In various embodiments, in the preceding illustration, instead of or in addition to the determination that each user U1 thru UN plays the game 158 for a longer time than an amount of time for which the other games are played by the user during each gaming session for a pre-determined number of gaming sessions, it is determined that an item within the game 158 has a higher magnitude than an item within each of the other games. For example, an energy level within a play of the game 158 is higher than an energy level within a play of each of the second and third games. As another example, a number of virtual coins or points accumulated within a play of the game 158 is greater than a number of virtual points or coins within a play of each of the second and third games. Other examples of an item include virtual wood, virtual stars, game level, virtual food, virtual crops, etc.

In various embodiments, items include collectibles and virtual currencies, such as, for example, virtual coins. An item that is not a virtual currency is a collectible. For example, virtual wood, virtual stars, game level, virtual food, and virtual crops are collectibles.

In several embodiments, a use of a game includes watching a preview of the game, playing the game, downloading the game, paying to play the game, indicating the game as liked, indicating the game as disliked, mentioning the game, or a combination thereof.

Referring to FIG. 3A, the game 158 is identified when the processor 1701 selects data that is rendered to display a name of the game and/or a logo of the game 158. Any data identifying of the game 158, such as, for example data that is rendered to display a name of the game 158 and/or logo of the game 158, is stored by the processor 1701 in the web account 157 of the user 1602.

Referring to FIGS. 2, 3A, and 3B, in an operation 166, the data identifying the game 158 is sent by the NIC 2021 via the network 198 to the client device 171. For example, when the user 1602 logs into the web account 157 to play a game, the NIC of the client device 171 obtains the data identifying the game 158 from the server 3041. Upon receiving the data identifying the game 158, the GPU of the client device 171 renders the data identifying the game 158 to display an identity of the game 158 on a display screen 193 of the client device 171. For example, a name and/or a logo of the game 158 is displayed.

In several embodiments, a message that includes an identity of the game 158 is displayed. As an example, the GPU of the client device 171 renders data conveying a message to display the message on the display screen 193. An example of the message includes a statement indicating that a number of the users U1 thru UN are playing the game 158. Another example of the message includes a statement indicating that a number of the users U1 thru UN are playing the game 158 and there is a discount offered to the user 1602 for playing the game 158. Yet another example of the message includes a statement indicating that a number of the users U1 thru UN are playing the game, that there is a discount offered to the user 1602 for playing the game 158, and social contexts of the social network friends of the user 1602. Examples of a social context include an identification of an entity that offers a social network service to one or more of the users U1 thru UN. Examples of an identification of an entity that develops and/or provides a social network service includes a name of the entity, a logo of the entity, or a combination thereof. Examples of an entity include a corporation and a partnership.

With reference to FIGS. 3A and 3B, one or more users U1 thru UN of the first user group 1601 play the game 158. The game 158 is played by the one or more users U1 thru UN after logging in the web accounts 1 thru N, which may be email accounts, social network service accounts, or game service accounts. The web accounts 1 thru N and 157 are parts of a social network 1821, which is created when a social network application is executed by the processor 1702 to provide a social network service at the client devices 1 thru N and 171. The social network 1821 is controlled by one entity.

A game is played at a client device when game data that is sent by the NIC 2021 via the network 198 to the client device is rendered by a GPU of the client device. In several embodiments, a NIC of a client device requests game data from the NIC 2021 to allow a user to play a game. Upon receiving the request, game data is sent by the NIC 2021 via the network 198 to a client device to allow a user that operates the client device to play a game.

Based on the group behavior data 308 and/or the group attribute data 306, the processor 1702 generates the rank data 163, which is stored in the memory system 2041. The rank data 163 ranks the game 158 within a group of games, such as the first, second, and third games.

When the user 1602 uses the client device 171 to log into the web account 157 to play a game, such as, for example, a game that is different than the game 158, the NIC 2021 sends the rank data 1631 to the NIC of the client device 171. The GPU of the client device 171 renders the rank data 1631 to display a rank of the game 158 and to display ranks of the other games, such as, for example the second and third games. For example, the game 158 is displayed as ranked first compared to ranks of the other games. As another example, the GPU of the client device 171 displays an identity of the game 158 and displays portions of identities, such as, for example, portions of logos or portions of names, of the other games to indicate to the user 158 that the game 158 is ranked higher than the other games. The user 1602 sees the ranks of the other games and the game 158 and may be tempted to play the game 158. The method 150 ends after the operation 196.

In various embodiments, instead of the processor 1702, the processor 1701 determines the group attribute data 306 when the web accounts 1 thru N and 157 are game service accounts and when the web accounts 1 thru N and 157 are stored within one or more servers that are controlled by the same entity that controls the server 3041.

In several embodiments, the servers 3041 and 3042 are controlled by the same entity. For example, both servers 3041 and 3042 are controlled by an entity that develops games. In a number of embodiments, the server 3041 is controlled by an entity that is other than an entity that controls the server 3042. For example, the server 3041 is controlled by an entity that develops games and the server 3042 is controlled by an entity that develops a social network service. As another example, the server 3041 is controlled by an entity that develops games and the server 3042 is controlled by an entity that develops an email service.

In various embodiments, an entity controls a server when the entity leases or owns server to use the server for executing a computer program. In these embodiments, the first web account group, the web account 158, and the group attribute data 306 are stored within the memory system 2041 instead of the memory system 2042.

In several embodiments, one or more of the web accounts 1 thru N is a different type of web account than the remaining of the web accounts 1 thru N. For example, the web account 1 is an email account and the web account N is a game service account. As another example, the web account 1 is a social network service account and the web account 2 is an email account.

FIG. 4 is a diagram of an embodiment of a network architecture that illustrates use of different web accounts that are associated with different networks 1821 thru 182N and 183. For example, each web account 1 thru N and 157 is generated within a different network. In this example, the web account 157 is generated within the network 183, the web account 1 is generated within the network 1821, the web account 2 is generated within the network 1822, and so on until the web account N is generated within the network 182N.

In several embodiments, each network 1821 thru 182N and 183 is of a different type. For example, the network 1821 is a social network, the network 1822 is a game network, and the network 183 is an email network.

In various embodiments, two or more of the networks 182 and 183 are of the same type and are networks that are controlled by different entities. For example, the network 1821 is a social network that is controlled by a first entity and the network 183 is a social network that is controlled by a second entity, which is other than the first entity.

In some embodiments, two or more of the networks 182 and 183 are of different types and are networks that are controlled by different entities. For example, the network 1821 is a social network that is controlled by an entity that develops the social network and the network 183 is a game network that is controlled by an entity that develops games.

In several embodiments, two or more of the networks 182 and 183 are of different types and are networks that are controlled by the same entity. For example, the network 1821 is a social network and the network 183 is a game network and both the networks are controlled by the same entity.

A game network is formed when one or more processors of one or more servers execute a game application to provide a game service at one or more client devices. The game service is accessed by a user via an account, such as a game service account, to play a game.

FIG. 5 is a diagram of an embodiment of a compare logic module 205 that compares data received from one or more databases to determine a rank of a game. In several embodiments, the compare logic module 205 is executed by the processor 1701 (FIG. 3A).

The compare logic module 205 receives data 172 regarding the first user group 1601 (FIG. 3B), data 174 regarding the user 1602 (FIG. 3B), data 176 regarding use of the game 158 by the first user group 1601, data 178 regarding use of the game 158 by the user 1602, and/or data 180 regarding use of the other games by the first user group 1601. In some embodiments, the compare logic module 205 compares the data 172 regarding the users U1 thru UN of the first user group 1601 with data 174 regarding the user 1602 to determine whether a value of parameter of the user 1602 and one or more values of the parameter of the first user group 1601 are the same or similar. For example, the compare logic module 205 determines whether an age of the user 1602 is the same or similar to that of ages of the users U1 thru UN. As another example, the compare logic module 205 determines whether likes of the user 1602 are the same or similar to likes of the users U1 thru UN.

Moreover, in various embodiments, the compare logic module 205 compares the data 176 regarding use of the game 158 by the first user group 1601 with data 178 regarding use of the game 158 by the user 1602. For example, a number of gaming sessions for which the game 158 is played by the first user group 1601 is compared with a number of gaming sessions for which the game 158 is played by the user 1602. As another example, a number of times for which the game 158 is indicated as being liked by the users U1 thru UN is compared with a number of times for which the game 158 is indicated as being liked by the user 1602.

In some embodiments, the compare logic 205 compares the data 176 regarding use of the game 158 by the first user group 1601 with data 180 regarding use of the other games by the first user group 1601. For example, a number of gaming sessions for which the game 158 is played by the first user group 1601 is compared with a number of gaming sessions for which each of the other games are played by the first user group 1601. As another example, an amount of time for which the game 158 is played by the first user group 1601 for a pre-determined number of gaming sessions is compared with an amount of time for which each of the other games is played by the first user group 1601 for the pre-determined number of gaming sessions.

The data 176 includes data 181 regarding receipt of payment from the first user group 1601 to play the game 158 and the data 180 includes data 183 regarding receipt of payment from the first user group 1601 to play the other games. For example, the processor 1701 (FIG. 3A) determines whether the users U1 thru UN have paid to play the game 158 and have not paid to play the other games. In various embodiments, a payment to play a game is received in the form of fiat money, credit, virtual currency, or a combination thereof. In response to determining that the users U1 thru UN have not paid to play the other games and have paid to play the game 158, the processor 1701 determines to rank the game 158 higher than the other games. On the other hand, in response to determining that the users U1 thru UN have paid to play the other games and have not paid to play the game 158, the processors 1701 determines to rank the game 158 lower than the other games.

FIG. 6 is a flowchart of an embodiment of a method 190 for generating the rank data 163 (FIG. 1). The method 190 is executed by one or more processors of one or more servers. For example, the method 190 is executed by the processors 1701 and 1702 (FIG. 3A). As another example, the method 190 is executed by the processor 1701 when the web accounts 1 thru N and 157 and the group attribute data 306 are stored within the memory system 2041 (FIG. 3A).

The operation 152 is performed. In an operation 192, the rank data 163 is generated based on the group data 154 (FIG. 1). The rank data 163 is generated to rank the game 158 with respect to the other games.

Moreover, in an operation 194, the rank data 163 is associated with the web account 157 of the user 1602. For example, the rank data 163 is designated, such as, for example tagged, by the processor 1701 to be sent by the NIC 2021 to a client device that is used to access the web account 157 of the user 1602. In an operation 196, the rank data 193 is sent by the NIC 2021 via the network 198 (FIG. 3A) to the client device 171 when the client device 171 is used by the user 1602 to access the web account 157. The method 190 ends after the operation 196.

FIG. 7 is a diagram of an embodiment of the display screen 193 of the client device 171 (FIG. 3B) to illustrate ranking of games when a social network service is used to play the games. The user 1602 accesses a website of a game developer that develops the game 158 (FIG. 3B). For example, the user 1602 provides, via an input device, of the client device 171, an address of a webpage of the game developer. Examples of an input device include a keyboard, a mouse, a stylus, and a touchscreen.

The NIC of the client device 171 sends the address via the network 198 to the NIC 2021 of the server system 298 (FIG. 3A). Upon receiving the address from the NIC 2021, the processor 1701 instructs the NIC 2021 to send web page data to the client device 171 via the network 198.

Upon receiving the web page data via the NIC of the client device 171, the GPU of the client device 171 renders the web page data to display a web page on the display screen 193. The web page prompts the user 1602 to provide the user information. Upon receiving the user information from the user 1602 via the input device of the client device 171, the NIC of the client device 171 sends the user information via the network 198 to the authentication server 302 (FIG. 3A).

Upon receiving the user information, the authentication server 302 authenticates the user information and the user 1602 logs into the web account 157 (FIG. 3A). When the user information is authenticated, a NIC of the authentication server 302 sends an indication of the authentication to the client device 171 via the network 198. Also, when the user information is authenticated, the NIC 2021 sends the rank data 163, message data, the first game data (FIG. 3A), a portion of the second game data, and a portion of the third game data to the client device 171. Moreover, when the user information is authenticated, the NIC 2022 of the server 3042 sends social network data via the network 198 to the client device 171.

Upon receiving the indication of the authentication via the NIC of the client device 171, the GPU of the client device 171 renders a portion of the social network data to display a social network interface 210, and renders the rank data 163, the message data, the first game data, the portion of the second game data, and the portion of the third game data to display a rank interface portion 212, and renders another portion of the social network data to display a social network interface portion 214. In several embodiments, the service network window 210 is an example of a display of the web account 157 (FIG. 3A).

The social network interface 210 includes images of social network friends of the user 1602 who recently played the game 158. The social network interface 210 further includes a button that allows the user 1602 to invite the social network friends to play the game 158. Also, the social network interface 210 includes an image of the user 1602.

In several embodiments, the social network interface 210 includes multimedia, other than images, to represent social network friends of the user 1602 and the user 1602. Moreover, in some embodiments, the social network interface 210 includes a different number of images of a different number of social network friends than that shown in FIG. 7.

The rank interface portion 212 displays a rank of the game 158 compared to ranks of the second and third games. For example, the rank interface portion 212 displays an identity of the game 158 and avoids displaying an identity of the second and third games. The identity of the game 158 is displayed within an interface portion 218 and interface portions 220 and 216 that lack any identity of the second and third games indicate to the user 1602 that the second and third games are ranked below the game 158. Also, the rank interface portion 212 displays a message that a number z of social network friends of the user 1602 played the game 158. Moreover, the message within the rank interface portion 212 includes a social context of the social network friends. For example, a network identifier (NI) portion 214 includes an identity of a social context of the social network friends of the user 1602. Examples of an identity of a social context include a name of an entity that provides a social network service and a logo of the entity.

The social network interface portion 214 includes images of social network users who are not social network friends of the user 1602. The social network portion 214 also includes an identity of the game 158 that is played by the social network users.

In various embodiments, the message of the rank interface portion 212 includes identities of more than one social context. For example, the message includes that z social network friends of the user 1602 played the game 158 and v social network friends of the user 1602 played the game 158. The number v represents a number of social network friends that use a social network service that is controlled by a first entity. The first entity is different than a second entity that controls a social network service that is used by the z number of friends to play the game 158.

In several embodiments, the number z is displayed when the user 1602 is logged into a web account that allows access to a first service, which is used by the z number of users to play the game 158. In these embodiments, the number v is displayed when the user 1602 is logged into a web account that allows access to a second service, which is used by the v number of users to play the game 158. In these embodiments, the web account that allows access to the first service or the web account that allows access to the second service is an example of the web account 157. In various embodiments, the numbers v and z are displayed when the user 1602 logs into the same web account 157 (FIG. 3A).

FIG. 8 is a diagram of an embodiment of the display screen 193 of the client device 171 (FIG. 3B) to provide another illustration of ranking of games when a social network service is used to play the games. The display screen 193 displays interface portions 210 and 214. In addition, the display screen 193 displays a rank interface portion 222. The rank interface portion 222 is generated in a manner similar to that of generation of rank interface portion 212 of FIG. 7. The rank interface portion 222 includes a numeric ranking, such as 1, 2, and 3, of the first, second, and third games. The rank interface portion 222 includes an identity of the game 158, an identity of the second game, and an identity of the third game. Also, a message within the rank interface portion 222 includes a social context of the social network friends of the user 1602.

In various embodiments, the message of the rank interface portion 222 includes identities of more than one social context. For example, the message within the rank interface portion 222 includes that z social network friends of the user 1602 played the game 158 by using a social network that is controlled by a first entity and v social network friends of the user 1602 played the game 158 by using a second social network that is controlled by a second entity.

In several embodiments, instead of the numeric ranking, an alphanumeric ranking is used. For example, an alphanumeric ranking, such as, for example, A, B, C is used.

FIG. 9 is a diagram of an embodiment of the display screen 193 of the client device 171 (FIG. 3B) to provide an illustration of ranking of games when a game service is used to play the games. The user 1602 accesses a website of the game developer. The NIC of the client device 171 sends an address of the website via the network 198 to the NIC 2021 of the server system 298 (FIG. 3A). Upon receiving the address from the NIC 2021, the processor 1701 instructs the NIC 2021 to send web page data to the client device 171 via the network 198.

Upon receiving the web page data via the NIC of the client device 171, the GPU of the client device 171 renders the web page data to display a web page on the display screen 193. The web page prompts the user 1602 to provide the user information, which is authenticated by the authentication server 302.

When the user information is authenticated, the user 1602 logs into the web account 157 (FIG. 3A). Also, when the user information is authenticated, a NIC of the authentication server 302 sends an indication of the authentication to the client device 171 via the network 198. Moreover, when the user information is authenticated, the NIC 2021 of the server 3041 sends the rank data 163, message data, the first game data (FIG. 3A), a portion of the second game data, and a portion of the third game data to the client device 171.

Upon receiving the indication of the authentication via the NIC of the client device 171, the GPU of the client device 171 renders the rank data 163, the message data, the first game data, the portion of the second game data, and the portion of the third game data to display a rank interface portion 224.

The rank interface portion 224 displays a rank of the game 158 compared to ranks of the second and third games. Also, the rank interface portion 224 displays a message that the number z of social network friends of the user 1602 are playing the game 158. Moreover, the message within the rank interface portion 224 includes the network identifier portion 214 that includes an identity of a social context of the social network friends of the user 1602.

In various embodiments, the message of the rank interface portion 224 includes identities of more than one social context. For example, the message includes that z social network friends of the user 1602 played the game 158 by using a first social network service and v social network friends of the user 1602 played the game 158 by using a second social network service. In several embodiments, the first social network service is controlled and/or developed by an entity that is different than another entity. The other entity controls and/or develops the second social network service.

It should be noted that in the embodiment illustrated in FIG. 9, there is no need for the user 1602 to access a social network account to play a game. For example, in this embodiment, the web account 157 is not a social network account. Rather, in the embodiment of FIG. 9, a game service account is accessed. A game service account is controlled and maintained by the game developer.

FIG. 10 is a diagram of an embodiment of the display screen 193 of the client device 171 (FIG. 3B) to provide another illustration of ranking of games when a game service is used to play the games. The display screen 193 displays a rank interface portion 226. The rank interface portion 226 is generated in a manner similar to that of generation of rank interface portion 224 (FIG. 9). The rank interface portion 226 includes a numeric ranking, such as 1, 2, and 3, of the first, second, and third games. The rank interface portion 226 also includes an identity of the game 158, an identity of the second game, and an identity of the third game. Also, a message within the rank interface portion 226 includes a social context of the social network friends of the user 1602.

In various embodiments, the message of the rank interface portion 226 includes identities of more than one social context. For example, the message includes that z social network friends of the user 1602 played the game 158 by using the first social network service and v social network friends of the user 1602 played the game 158 by using the second social network service.

It should be noted that in various embodiments, at a time the rank interface portions 212, 222, 224, and 226 are displayed on the display screen 193, the user 1602 is not playing or is about to play a game, such as, for example one of the other games, on the display screen 193. In some embodiments, at a time the rank interface portions 212, 222, 224, and 226 are displayed on the display screen 193, the user 1602 is playing a game, other than the game 158, on the display screen 193.

FIG. 11 is a diagram of an embodiment of the display screen 193 that displays multiple game web pages 254, 256, 258, and 260 to illustrate ranking of the game 158 with respect to the other games. When the user 1602 logs into the web account 157 (FIG. 3A), the NIC 2021 of the server 3041 sends data identifying the game 158 and social context data that is associated with the game 158 via the network 198 to the client device 171.

The GPU of the client device 171 renders the data identifying the game 158 to display an identity of the game 158 and renders the social context data to display a number of social network friends of the user 1602 using the first social network service to play the game 158 and a number of social network friends of the user 1602 using the second social network service to play the game 158. The identity of the game 158, the number v, and the number z are displayed within the game web page 254. In several embodiments, instead of the first social network service, a game service or an email service is identified and/or instead of the second network service, a game service or an email service is identified.

When the GPU of the client device 171 is displaying the game web page 254, the user 1602 selects via the input device of the client device 171, a multimedia 252 that is displayed on the game web page 254. When the multimedia 252 is selected, the NIC of the client device 171 sends an indication of the selection via the network 198 to the server 3041 (FIG. 3A). In response to receiving the indication, the NIC 2021 sends data identifying the game 158 and data identifying the other games via the network 198 to the client device 171. The GPU of the client device 171 renders the data identifying the game 158 to display an identity of the game 158 within the game web page 256 on the display screen 193 and renders the data identifying the other games to display identities of the other games within the game web page 256.

The identities of the game 158 and the other games are displayed in an order to illustrate a ranking of the game 158 with respect to the other games. For example, a game 1 identifier that is the identity of the game 158 is displayed above a game 2 identifier, a game 3 identifier, and a game 4 identifier. The game 2 identifier identifies the second game, the game 3 identifier identifies the third game, and the game 4 identifier identifies a fourth game. The fourth game is one of the other games.

The user 160 can select the identity of the game 158 to download and play the game 158, can select the identity of one of the other games to download and play the other game.

Similarly, in some embodiments, after logging into the web account 157, the user 1602 is playing the second game as indicated by the game 2 identifier within the game web page 258 in FIG. 11 or is playing the third game as indicated by the game 3 identifier within the game web page 260 in FIG. 11. When the user 1602 selects the multimedia 252, the game web page 256 that includes the identity of the game 158 and identities of the other games is displayed on the display screen 193.

It should be noted that although an order of display of the game 158 and the other games is shown in FIG. 11, in some embodiments, another order is used. For example, although the game 1 identifier is display at the top within the game web page 256 of the display screen 193, game 2 and game 3 identifiers are displayed in the middle within the game web page 256 of the display screen 193, and a game 4 identifier is displayed at the bottom within the game web page 256 of the display screen 193, in some embodiments, the game 1 identifier is displayed at the left within the game web page 256 and game 2, 3, and 4 identifiers are displayed within the game web page 256 at the right of the display screen 193.

Also, as visible in FIG. 11, the game 1 identifier is larger in size than the game 2, 3, and 4 identifiers within the game web page 256. A size of display of a game identifier is based on a ranking of a game that is identified using the game identifier. For example, the game identifier 1 is the largest in size among the games identifiers 1 thru 4 when the first game is ranked the highest among the first thru fourth games.

In a number of embodiments, the display screen 193 displays any number of games, other than four, when the multimedia 252 is selected by the user 1602.

FIG. 12 is a diagram of an embodiment of the display screen 193 that displays multiple game web pages 258, 260, and 262 to provide another illustration of ranking of the game 158 with respect to the other games. When the user 1602 selects the multimedia 252 on the web page 258, the GPU of the client device 171 renders the game web page 262 that displays the identities of the first, second, third, and fourth games in an order different than that shown in FIG. 11. The game 1 identifier is displayed at the left of the display screen 193, the game 2 identifier and the game 3 identifier are displayed at the right of the display screen 193, and the game 4 identifier are shown at the bottom of the display screen 193. The game 4 identifier is displayed below the game 1, 2, and 3 identifiers. The size of the game 1 identifier compared to the game 2, 3, and 4 identifies indicates that the first game is ranked higher than the games 2, 3, and 4.

FIG. 13 is a diagram of an embodiment of the display screen 193 that displays a pattern 270 of circles to illustrate a suggestion of the game 158. The GPU of the client device 171 displays the pattern 270 after the user 1602 has logged into the web account 157 and has not used the client device 171 for a preset period of time (FIG. 3B). When the pattern 270 is displayed, the NIC 2021 (FIG. 3A) sends message data via the network 198 to the NIC of the client device 171.

Upon receiving the message data via the NIC of the client device 171, the GPU of the client device 171 renders the message data to display a message 272 at the top of the display screen 193. The message 272 invokes curiosity of the user 1602 to find out an identity of a game that gamers, such as, for example, the users U1 thru UN, are playing. When the user 1602 unlocks the pattern 270 via the input device of the client device 171 and selects the message 272 via the input device, a web page 274 is displayed on the display screen 193 by the GPU of the client device 171. The web page 274 includes a message that conveys that the gamers are playing the first game and provides a Uniform Resource Locator (URL) that can be selected by the user 1602 to play the first game.

FIG. 14 is a diagram of an embodiment of the display screen 193 that displays the pattern 270 of circles to provide another illustration of a suggestion of the game 158. When the pattern 270 is displayed, the NIC 2021 (FIG. 3A) sends message data via the network 198 to the NIC of the client device 171.

Upon receiving the message data via the NIC of the client device 171, the GPU of the client device 171 renders the message data to display a message 276 at the top of the display screen 193. The message 276 indicates to the user 1602 that his/her social network friends are playing the game 158. When the user 1602 unlocks the pattern 270 via the input device of the client device 171 and selects the message 272 via the input device, a web page 278 is displayed on the display screen by the GPU of the client device 171. The web page 278 includes a message that provides a Uniform Resource Locator (URL) that can be selected by the user 1602 to play the first game.

In several embodiments, instead of displaying the pattern 270 in FIGS. 13 and 14, a news web page that shows news, a shopping web page that shows shopping items, a search results web page that shows results of a web search, a search query web page that shows a search engine, or any other web page available on the World Wide Web, is displayed.

FIG. 15 is a diagram of an embodiment of multiple graphs 302, 304, and 306 used to illustrate a dynamic change in use of the game 158. The graph 302 plots a use of the game 158 by the users U1 thru UN of the first user group 1601 (FIG. 3B) versus time t. The use of the game 158 is dynamically changing over time. For example, the use of the game 158 at a time t1 is below a use limit and the use of the game 158 at a time t2 is above the use limit. The processor 1701 (FIG. 3A) determines at the time t1 that the use is below the use limit and avoids generating the rank data 163 to rank the game 158 with respect to the other games. Moreover, the processor 1701 determines at the time t2 that the use is above the use limit, generates the rank data 163, and sends the rank data 163 to the client device 171 (FIG. 3B).

As shown in the graph 304, the use of the game 158 by the users U1 thru UN increases linearly after a time t3. The processor 1701 determines after the time t3 that the use increased linearly after the time t3 and increases, after the time t3, a frequency with which the rank data 163 is sent by the NIC 2021 to the client device 171. The GPU of the client device 171 renders the rank data 163 to display a rank of the game 158 with respect to the other games each time the rank data 163 is received by the NIC of the client device 171. The frequency is increased compared to a frequency of sending the rank data 163 before the time t3.

Also, as shown in the graph 306, the use of the game 158 decreases linearly after a time t4. The processor 1701 determines after the time t4 that the use decreased linearly after the time t4 and decreases, after the time t4, a frequency with which the rank data 163 is sent by the NIC 2021 to the client device 171. The frequency is decreased compared to a frequency of sending the rank data 163 before the time t4.

In several embodiments, instead of the linear change in the frequency shown in the graphs 304 and 306, there is an exponential or a step function change in the frequency.

In some embodiments, the change in use after the times t3 and t4 is a result of an application by the processor 1701 of different factors to determine the use compared to before the times t3 and t4. For example, the processor 1701 applies a first combination of factors to determine use of the game 158 before the time t3 or t4 and applies a second combination of factors to determine use of the game after the time t3 or t4. To illustrate, the second combination of factors includes whether the users U1 thru UN paid to play the game 158 and whether each of the users U1 thru UN played the game 158 for a higher number of gaming sessions during a time period than that used to play the other games during the time period. In this illustration, the first combination of factors includes whether each of the users U1 thru UN mentioned the game 158 for a higher number of times than mentioning the other games and whether each of the users U1 thru UN downloaded the game 158 for a higher number of times than downloading the other games.

It should be noted that in several embodiments, any comparison of portions of the group data 154 (FIG. 1) is a factor. For example, if the users U1 thru UN and the user 1602 have the same or similar age is a factor. As another example, whether the users U1 thru UN paid to play the game 158 is another factor.

FIG. 16 is a block diagram of an embodiments of a client device 280, which is an example of the client device 171 or any of the client devices 168 (FIG. 3B). The client device 280 includes a display device 282 that is coupled with a bus 286 via an input/output interface (I/O) 2881. Examples of the display device 282 include an LED display device, an LCD display device, a plasma display device, and a CRT display device. The display device 282 includes a display screen 284, which is an example of the display screen 193 or one of the display screens 169 (FIG. 3B).

An input device 290 of the client device 280 is coupled with the bus 286 via an I/O 2882. An I/O interface that is coupled with two devices provides compatibility between the two devices. For example, the I/O interface 2881 matches a rate of transfer of data to/from the display device 282 with a rate of transfer of data over the bus 286. As another example, the I/O device 2882 converts analog signals received from the input device 290 into digital signals that are compatible with the bus 286. Moreover, a processor 292, a memory device 294, and a NIC 296 are coupled with the bus 286.

Embodiments described in 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. The embodiments can 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.

With the above embodiments in mind, it should be understood that the embodiments can employ various computer-implemented operations involving data stored in computer systems. These operations are those requiring physical manipulation of physical quantities. Any of the operations described herein are useful machine operations. The present disclosure also relates to a device or an apparatus for performing these operations. The apparatus can be specially constructed for a specific purpose. The apparatus is selectively activated or configured by a computer program stored in the computer.

In one embodiment, a module or an engine, as used herein, is 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 be thereafter be read by a computer. Examples of the computer-readable medium include hard drives, network attached storage (NAS), ROM, RAM, compact disc-ROMs (CD-ROMs), CD-recordables (CD-Rs), CD-rewritables (RWs), magnetic tapes and other optical and non-optical data storage devices. The computer-readable medium can include computer-readable tangible medium distributed over a network-coupled computer system so that the computer-readable code is stored and executed in a distributed fashion.

Although the method operations were described in a specific order in FIGS. 2 and 6, it should be understood that other housekeeping operations may be performed in between operations, or operations may be adjusted so that they occur at slightly different times, or may be distributed in a system which allows the occurrence of the processing operations at various intervals associated with the processing, as long as the processing of the overlay operations are performed in the desired way.

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 can be practiced within the scope of the appended claims. Accordingly, the present embodiments are to be considered as illustrative and not restrictive, and the disclosure is not to be limited to the details given herein, but may be modified within the scope and equivalents of the appended claims.

Claims

1. A method for cross suggesting games, the method comprising:

obtaining group data associated with a first web account group, the group data associated with a first game and a first user group playing the first game;
identifying the first game to suggest to a second user based on the group data, wherein the group data includes data regarding use of the first game by the first user group, the first user group including network friends of the first user; and
sending data identifying of the first game to a client device that is operated to access a second web account of the second user,
wherein the method is executed by one or more processors.

2. The method of claim 1, wherein obtaining the group data comprises obtaining data regarding the network friends, data regarding the second user, data regarding use of the first game by the second user, data regarding use of games other than the first game by the network friends, or a combination thereof.

3. The method of claim 2, wherein the data regarding the network friends comprises genders of the network friends, ages of the network friends, likes of the network friends, dislikes of the network friends, interests of the network friends, hobbies of the network friends, or a combination thereof.

4. The method of claim 2, wherein the data regarding the second user comprises an age of the second user, a gender of the second user, likes of the second user, dislikes of the second user, interests of the second user, hobbies of the second user, or a combination thereof.

5. The method of claim 2, wherein the data regarding the use of the first game by the second user includes a number of times the first game is played by the second user during a time period, an amount of time the first game is played by the second user during the time period, a number of downloads of the first game by the second user during the time period, a number of times preview of the first game is viewed by the second user during the time period, a number of times the first game is indicated as being liked by the second user during the time period, a number of times a mention of the first game is posted within the second web account of the second user, or a combination thereof.

6. The method of claim 2, wherein the data regarding use of the first game by the network friends includes a number of times the first game is played by each of the network friends during a time period, an amount of time the first game is played by each of the network friends during the time period, a number of downloads of the first game by each of the network friends during the time period, a number of times preview of the first game is viewed by each of the network friends during the time period, a number of times the first game is indicated as being liked by each of the network friends during that time period, a number of times a mention of the first game is posted within web accounts of each of the network friends, whether each of the network friends paid for the first game, or a combination thereof.

7. The method of claim 2, wherein the data regarding use of the other games by the network friends includes a number of times the other games are played by each of the network friends during a time period, an amount of time the other games are played by each of the network friends during the time period, a number of downloads of the other games by each of the network friends during the time period, a number of times previews of the other games are viewed by each of the network friends during the time period, a number of times the other games are indicated as being liked by each of the network friends during that time period, a number of times a mention of the other games are posted within web accounts of each of the network friends, whether each of the network friends paid for the other games, or a combination thereof.

8. The method of claim 1, wherein the first web account group and the second web account are maintained within a social network, wherein each of the first web account group and the second web account is maintained on the World Wide Web.

9. The method of claim 1, wherein the first web account group is maintained within a first social network and the second web account is maintained within a second social network, wherein the first social network is controlled by a first entity, wherein the second social network is controlled by a second entity.

10. The method of claim 1, wherein this first web account group is maintained within a social network and the second web account is maintained within a gaming network, wherein each of the first web account group and the second web account is maintained on the World Wide Web.

11. The method of claim 1, wherein identifying the first game to suggest to the second user comprises determining data associated with a name of the first game or data associated with a symbol of the first game.

12. The method of claim 1, wherein identifying the first game to suggest to the second user based on the group data comprises identifying the first game based on data regarding the network friends, data regarding the second user, data regarding use of the first game by the second user, the data regarding use of the first game by the first user group, data regarding use of games other than the first game by the network friends, or a combination thereof.

13. The method of claim 1, wherein identifying the first game to suggest to the second user based on the group data comprises identifying the first game to suggest to the second user based on a comparison of data regarding the network friends with data regarding the second user, a comparison of the data regarding use of the first game by the first user group with use of the first game by the second user and with use of other games by the network friends, or a combination thereof.

14. The method of claim 1, wherein the first game is suggested within the second web account by storing the identification of the first game within the second web account.

15. The method of claim 1, wherein the client device includes a mobile device, the mobile device including a tablet or cell phone.

16. The method of claim 1, wherein sending the data identifying the first game comprises sending a name of the first game or a symbol of the first game, wherein sending the data identifying the first game comprises sending the data identifying the first game to the client device, the client device operates to play a second game, the second game different than the first game.

17. The method of claim 1, wherein the group data includes whether the network friends paid to play the first game, wherein identifying the first game comprises identifying the first game based on a determination that the network friends paid to play the first game.

18. The method of claim 1, further comprising receiving one or more social contexts of the network friends.

19. A method for cross suggesting games, the method comprising:

obtaining group data associated with a first web account group, the group data associated with a first game and a first user group playing the first game, the first game played using the first web account group;
generating rank data to rank the first game within a set of games based on the group data;
associating the rank data with a second web account of a second user, the first user group including network friends of the second user; and
sending the rank data to a client device that is operated to access the second web account,
wherein the method is executed by one or more processors.

20. The method of claim 19, wherein sending the rank data to the client device is performed to facilitate a display of the rank of the first game before any game is played by the second user.

21. The method of claim 19, wherein generating the rank data comprises generating data that represents an order of display of the first game within the set of games.

22. The method of claim 19, wherein generating the rank data comprises generating alphanumeric data that indicates the rank of the first game within the set of games.

23. The method of claim 19, wherein associating the rank data with the second web account comprises associating the rank data to display the rank data with a display the second web account.

24. The method of claim 19, wherein sending the rank data comprises sending the rank data via a network to the client device.

25. A server system for cross suggesting games, the server system comprising:

a processor configured to identify a first game that is used by a first user group based on group data, the group data associated with a first web account group of the first user group, the group data includes data regarding use of the first game by the first user group, the first game identified to suggest to a second user, the first user group including network friends of the first user;
a network interface controller configured to send data identifying the first game to a client device, the client device that is operated to access a second web account of the second user; and
a memory device configured to store the identification of the first game.
Patent History
Publication number: 20140004953
Type: Application
Filed: Jun 29, 2012
Publication Date: Jan 2, 2014
Applicant: ZYNGA INC. (San Francisco, CA)
Inventors: Sudhir Kumar Rama Rao (San Jose, CA), Ara Nicholas Yessayan, JR. (San Francisco, CA), Paul David Bettner (McKinney, TX), David Bettner (McKinney, TX), Paolo Malabuyo (San Francisco, CA), Benjamin F. Gregorski (Mountain View, CA), Michael Chow (Allen, TX), Yie Lyn Choo (San Fransisco, CA)
Application Number: 13/537,846
Classifications
Current U.S. Class: Network Type (e.g., Computer Network, Etc.) (463/42)
International Classification: A63F 9/24 (20060101);