U.S. Pat. No. 10,052,560
Social Network Data Analysis to Generate Incentives for Online Gaming
AssigneeZynga Inc.
Issue DateJanuary 20, 2017
Illustrative Figure
Abstract
Systems and methods for processing recommendations of online games to friends of social network are described. A method for processing recommendations includes identifying a gaming session of a user on an online game provider network, accessing a use profile of the user for the online games of the online game provider network, and accessing a social graph of the user to identify friends of the user and respective friend profiles from the social network. The method further includes producing a recommendation of an online game. The recommendation includes an identification of a target friend of the user and is being provided by examination of the use profile of the user and friend profiles in the social graph. The method includes providing the recommendation to the user. The recommendation also includes an offer incentive to the user to share the recommendation with the target friend.
Description
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. 1is a diagram of an embodiment of an architecture100for offering incentives to users for sharing game information. 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 module131collects data regarding one or more games. For example, the data services module131collects 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 module131collects 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, has different data than that in the second game, or a combination thereof. A game is identified using a name ...
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. 1is a diagram of an embodiment of an architecture100for offering incentives to users for sharing game information. 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 module131collects data regarding one or more games. For example, the data services module131collects 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 module131collects 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, has different data than that in the second game, or a combination thereof.
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 module131further obtains a portion of group data135, which includes information about a group of friends, e.g., friend1, friend2, friend3, etc., of a user4, who is a friend4. For example, the data services module131accesses, e.g., reads, group attribute data133from 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.
In a number of embodiments, the friends of the user4are social network friends of the user4. For example, the user4uses the client device1504to send a request via a web account of the user4within a social network134to add other users, e.g., user1, user2, user3, etc., as social network friends1,2, and3of the user4. The web account is assigned to the user4within the social network134. When the other users accept the request, the other users become social network friends of the user4. Similarly, the user4becomes a network friend of the other users when the user4accepts requests sent via web accounts of the other users within the social network134to become social network friends of the other users. In several embodiments, when the other users become social network friends of the user4, the other users can access via their web accounts, multimedia and/or data, e.g., text, image, video, audio, that is posted by the user4in his/her web account and that is restricted from access by anyone other than social network friends of the user4.
In a number of embodiments, a friend is an example of a user. For example, the user1is friend1, the user2is friend2, and the user3is friend3.
In various embodiments, the other users are acquaintances, friends, or family members of the user4for whom the user4has email addresses. In some embodiments, the other users are acquaintances, friends, or family members of the user4for whom the user4has user information that allows the user4to use a game service to contact the other users.
In several embodiments, the group attribute data133includes a social graph106, which includes relationships between the friends and the user4within a social network. For example, a social graph indicates whether a user is a social network friend of another user. As another example, a social graph includes a user profile1of friend1, a user profile2of friend2, and a user profile3of friend3, and further includes associations of the profiles with a user profile of the user4.
In a number of embodiments, a user profile of a user includes information identifying the user, e.g., a name of the user, a gender of the user, an age of the user, a relationship status of the user, interests of the user, hobbies of the user, likes of the user, dislikes of the user, or a combination thereof.
The group data135includes the group attribute data133, such as, for example demographic data. The group attribute data133is associated with one or more of the friends of the user4. Examples of group attribute data133include an age of a friend, a gender of a friend, a relationship status of a friend, interests of a friend, hobbies of a friend, likes of a friend, dislikes of a friend, or a combination thereof.
In several embodiments, the group attribute data133is unrelated to a game that friends play. For example, the group attribute data133includes movies that are liked or disliked by a friend, geographical locations that are liked or disliked by the friend, real world sports that are liked or disliked by the friend, etc.
The group data135also includes group behavior data137, which is associated with a game that is played by the group of friends. The group behavior data137includes a use profile104of the user4and use profiles130of the friends of the user4. To illustrate, a use profile of a user for a game includes data regarding use of the game by the user. Examples of data regarding use of a game include a number of gaming sessions the game is played by the user during a time period, an amount of time during each gaming session the game is played by the user for a number of gaming sessions during the time period, a number of downloads of the game by the user during the time period after the user logs into his/her user account, a number of times a preview of the game is viewed by the user during the time period after the user logs into the user account, a number of times the game is indicated as being liked by the user within the user account during the time period, a number of times the game is indicated as being disliked by the user within the user account during the time period, a number of times a mention of the game is posted within the user account, and/or whether the user paid to play the game after the user logged into user account. In a number of embodiments, a use profile is created when a user uses, e.g., plays, indicates like, indicates dislike, downloads, watches a preview of, etc. of a game via a user 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. 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 some embodiments, a game is previewed when after accessing a portion a game at a client device, a GPU of a 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 a service, such as a social network service, a gaming service, or an email service.
In several embodiments, a gaming 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 gaming 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. A social network service is provided via the social network133and a game service is provided via the game provider network102.
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.
To log into a user 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 network interface controller (NIC) of the client device sends the user information to a server system via a network136. Examples of a NIC include a network interface card and a network adapter. Examples of the network136include a wide area network (WAN), a local area network (LAN), or a combination thereof. To illustrate, the network136is 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.
An authentication server of a server system authenticates the user information based on information that is pre-stored within the authentication server. For example, the authentication server 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 determines that the user information is unauthentic. When the authentication server determines that the user information is authentic, a user who provided the user information logs into a user account that is assigned to the user.
In several embodiments, a user 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. In various embodiments, the server system includes the game provider network102and/or the social network134. In some embodiments, the game provider network102includes one or more servers that are coupled with each other. Similarly, in a number of embodiments, the social network134includes one or more servers that are coupled with each other. As used herein, a server includes a virtual machine or a physical machine that includes one or more processors, one or more memory devices, and one or more NICs. 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).
A logic engine139receives the group data135and game data, such as, for example, the first game data, the second game data, and the third game data, and processes the group data135and the game data to generate recommendation data141. As an example, the logic engine139uses the group data135to determine the first game, e.g., game1, a game145, etc., among the first, second, and third games for recommendation by the user4to a target friend, e.g., friend1. To illustrate, the logic engine139determines that the first game is played less frequently by the target friend of the user4than each of the second and third games, the first game is played for a shorter time by the target friend 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 less often by the target friend than previews of each of the second and third games, the first game is downloaded for a lower number of times by the target friend than a number of times each of the second and third games are downloaded by the target friend, or a combination thereof. In this example, the logic engine139determines that the user4recommend the first game to the target friend instead of the second and third games.
As another example, the logic engine139determines 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 the target friend. In this example, the logic engine139determines 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 the target friend to whom the first game is to be recommended for play. In this example, the logic engine139determines that the user4recommend the first game to the target friend compared to the second and third games.
As still another example, the logic engine139determines 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 the target friend to whom the first game is to be suggested for play. In this example, the logic engine139further 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 engine139determines that the user4recommend the first game to the target friend compared 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. Other examples of a parameter include gender, relationship status, interest, like, and dislike.
In several embodiments, the logic engine139is part of the game provider network102. The game provider network102includes a user account132of the user4, the use profiles130of friends of the user4, user accounts148of the friends, the first game data, the second game data, the third game data, and the use profile104of the user4. The use profiles104and130are parts of group behavior data137.
In several embodiments, the user accounts148and132are web accounts within the social network134rather than accounts within the game provider network102. In a number of embodiments, the user accounts132and148are located within one network, e.g., the game provider network102or the social network134.
The recommendation data141is sent via a network136to a client device1504that is operated by the user4. A processor, e.g., a graphical processing unit (GPU), of the client device1504processes the recommendation data141to display a recommendation108of the game145on a display screen of the client device1504to recommend to the target friend. 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.
In several embodiments, the recommendation108includes social contexts of users based on whom the game145is identified within the recommendation108. Examples of a social context include an identification of an entity that offers a social network service to one or more users. Examples of identification of an entity include a name of the entity, a logo of the entity, or a combination thereof. Examples of an entity include a corporation and a partnership.
In various embodiments, the recommendation108includes an offer incentive110for the user4. The offer incentive110provides an incentive to the user4to recommend the game145to the target friend. For example, the offer incentive110includes a message that a reward mentioned, e.g., described, identified, etc. within the offer incentive110will be provided to the user4when the user4shares the game145with the target friend. In a number of embodiments, the user4shares a game with another user when the user4selects a share button that is displayed on the client device1504via a web account of the user4. In several embodiments, the user4shares a game with another user when the user4sends an email recommending the game145to the target friend.
Examples of a reward include virtual items that are related to a game, e.g., a game152that the user4plays, any other game, etc. In various embodiments, virtual items include collectibles and virtual currencies, such as, for example, virtual coins. A virtual item that is not a virtual currency is a collectible. For example, virtual wood, virtual stars, game level, energy level, points, credits, virtual food, and virtual crops are collectibles. In a number of embodiments, a reward includes virtual items, a discount for playing a game, a discount for obtaining items during play of a game, free play of a game, free items during play of a game, or a combination thereof. In various embodiments, the game145is the same as the game152.
The recommendation108indicates to the user4that the user4will receive a reward mentioned in the offer incentive110after the user4recommends the game145to the target friend. The recommendation108also includes the user information identifying the target friend. For example, the recommendation108includes a user name of the target friend, an image of the target friend, or a combination thereof. In various embodiments, the recommendation108includes a message to the user4that the user4should suggest the game145to the target friend. In these embodiments, the recommendation108excludes the offer incentive110. In a number of embodiments, the recommendation108includes a social context of the target friend. For example, the recommendation108includes a social network service that is accessed by the target friend to play a game that is provided by the game provider network108.
The user4uses an input device of the client device1504to select a button, e.g., a send recommendation button, displayed on the display screen of the client device1504. Examples of an input device include a keyboard, a mouse, a stylus, and a touchscreen. The send recommendation button is selected to recommend the game145to the target friend. In various embodiments, instead of a button selection, an interface selection, a menu selection, etc. is provided. Upon receiving an indication of a selection of the send recommendation button, a NIC of the client device1504sends the indication via the network136to the game provider network102. Upon receiving the indication of the selection of the send recommendation button and upon determining that the target friend is logged on to his/her user account, the game provider network102generates and sends offer promotion data151via the network136to a client device1501that is operated by the target friend. The offer promotion data151includes an identity of the game145within a suggestion of the game145for play by the target friend. Other two client devices1502and1502are operated by the friends2and3.
A GPU of the client device1501processes the offer promotion data151to display an offer promotion140on a display screen of the client device1501. The offer promotion140includes a suggestion of the game145for the target friend. The offer promotion data151is stored within a user account of the target friend.
In various embodiments, the offer promotion140includes an incentive for the target friend to play the game145. For example, the offer promotion140indicates to the target friend that the target friend will receive a discount for playing the game145, will play the game145for free for a number of times, will receive a discount for play another game for playing the game145, will play the other game for free for a number of times for playing the game145, will receive virtual items for free during play of the game145, will receive virtual items for free during play of the other game for playing the game145, or a combination thereof. In a number of embodiments, the offer promotion140includes social contexts of users based on whom the game145is identified within the offer promotion140.
When the target friend accesses the game145from the game provider network102via the network136, a NIC of the client device1501sends an indication of the access via the network136to the game provider network136. Upon receiving the indication of the access, the game provider network136generates and sends discount data, virtual item data, or any other data as reward data to fulfill the offer promotion140to the client device1501via the network136. The reward data is rendered by the GPU of the client device1501to display a reward for the target friend for accessing the game145via an input device of the client device1501. The target friend can access the reward, e.g., a virtual item, a discounted game play, free game play, by selecting or hovering over the reward.
In a number of embodiments, when the target friend accesses the game145from the game provider network102, the game provider network102generates and sends a reward to the client device1504via the network136. The game provider network102generates and sends the reward to the client device1504when the user4accesses the user account132.
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.
Moreover, it should be noted that although three user profiles and use profiles of three friends of the user4are described, in a number of embodiments, a number of user profiles and use profiles of any number of users can be used. Also, it should be noted that in various embodiments, the operations, e.g., generation, etc., other than communication operations, described above as being performed by a network, e.g., the game provider network102, the social network134, etc., are performed by one or more processors of one or more servers of the network. In these embodiments, the communication operations, e.g., sending, receiving, etc., are performed by one or more NICs of one or more servers of the network.
In several embodiments, each user account is within a different network and each network is of a different type. For example, a network that includes the user account130is a social network, a network that includes a user account of the target friend is a game provider network, and a network that includes a user account of the friend2is an email network.
In various embodiments, two or more of the networks in which the user accounts132and148are located are of the same type and are networks that are controlled by different entities. For example, a network that includes the user account132is a social network that is controlled by a first entity and a network that includes a user account of the target friend is a social network that is controlled by a second entity, which is other than the first entity.
In some embodiments, a user account of a user is located within a network that is controlled by a different entity than that controlling a user account of another user. Moreover, in these embodiments, the user accounts are of the same type. For example, a network that includes the user account132of the user4is a game provider network that is controlled by an entity that develops games and a network that includes a user account of the target friend is a game provider network that is controlled by another entity that develops games.
In several embodiments, the game provider network102and the social network134are controlled by the same entity. For example, all servers of the game provider network102and the social network134are controlled by an entity that develops games. In a number of embodiments, servers of the game provider network102are controlled by an entity that is other than an entity that controls the servers of the social network134. For example, a server of the game provider network102is controlled by an entity that develops games and a server of the social network134is controlled by an entity that develops a social network 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 some embodiments, a user account of a user is located within a network that is controlled by a different entity than that controlling a user account of another user. Moreover, in these embodiments, the user accounts are of different types. For example, a network that includes the user account132is a social network and a network that includes a user account of the target friend is a game provider network and the social network is controlled by a different entity than that controlling the game provider network. In these embodiments, the entity controlling the social network develops the social network and the entity controlling the game provider network develops games.
In a number of embodiments, a game provider 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 a user account, e.g., a game service account, to play a game.
In a number of embodiments, a user profile, a user account, or a use profile is stored within one or more memory devices of a network. For example, the user profiles of the users1,2,3, and4are stored in one or more memory devices of the social network134. As another example, the use profiles130and104of the users1thru4are stored in one or more memory devices of the game provider network102. As yet another example, the user accounts148and132are stored in one or more memory devices of the game provider network102.
The group data135is stored in one or more memory devices. For example, the group attribute data133is stored in one or more memory devices and the group behavior data137is stored in one or more memory devices.
FIG. 2is a flowchart of an embodiment of a method120for determining a game to suggest to the user4for recommending to the target friend based on the group data135(FIG. 1). The method120is executed by one or more processors of one or more servers of a server system, e.g., the game provider network102, the social network134, or a combination thereof.
In an operation122, a gaming session of the user4(FIG. 1) on the game provider network102(FIG. 2) is identified. For example, a processor of the game provider network102determines that the user4is engaged in a gaming session. As another example, a processor of the game provider network102determines that the user4logged into the user account132(FIG. 1) and is playing a game, e.g., game152(FIG. 1). In several embodiments, the game152is played by accessing game data from the game provider network102.
In an operation124, the use profile104of the user4regarding play of one or more games is accessed, e.g., read, from a memory device of the game provider network102. For example, data regarding usage of the online first, second, and third games by the user4via the user account132is read. In this example, the user account132logged into by the user4to access the online games. In a number of embodiments, the game152is an example of the second game.
Moreover, in an operation126, the social graph106of the user4that is received from the social network134via the network136by the game provider network102is accessed from a memory device of the game provider network102. A NIC of the social network134sends the social graph106via the network136to a NIC of the game provider network102. The user profile of the user4is accessed to determine the user profiles1,2, and3of the friends. For example, from the user profile of the user4, friends of the user4are determined and user profiles1,2, and3of the friends1,2, and3are accessed from a memory device of the game provider network102.
In an operation128, the recommendation data141is generated from the user profile and use profile of the user4and the user profiles and use profiles of the friends1,2, and3. For example, the recommendation data141is generated from the group data135(FIG. 1). The recommendation data141includes an identification of the game145(FIG. 1) and/or data regarding the offer incentive110(FIG. 1) for the user4.
The recommendation data141is generated based on data regarding the friends of the user4, data regarding the user4, data regarding use of the game145by the target friend, data regarding use of the game145by the friends2,3and4, data regarding use of games other than game145by the target friend, data regarding use of games other than game145by the friends2,3and4, or a combination thereof. To illustrate, if the target friend has 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, as that of the friends2,3and4, the game145, which is played by the friends2,3and4, is identified to the user4at the client device1504.
As another illustration, if each user2,3, or4:(a) plays the game145for 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 devices150, or(b) plays the game145for 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 game145more often than previews of the other games are watched by the user, or(d) has indicated the game145as 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 game145as 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 accessed the game145to a corresponding one of the client devices150operated by the user for a higher number of times than a number of times the other games are accessed to the client device, or(g) has mentioned the game145within a corresponding web account of the user for a higher number of times than mentioning the other games within the web account, or(h) paid to play the game145after the user logs into his/her corresponding web account, or(i) paid a higher amount to play the game145compared to the other games, or(j) a combination thereof,the game145is identified to the user4within the recommendation108at the client device1504. 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 user2,3, or4:(a) plays the game145for a higher number of gaming sessions than a number of gaming sessions for which the game145is played by the target friend at the client device1501, or(b) plays the game145for a longer time than an amount of time for which the game145is played by the target friend at the client device1501during each gaming session for a pre-determined number of gaming sessions, or(c) watches previews of the game145more often than previews of the game145are watched by the target friend, or(d) has indicated the game145as being liked for a higher number of times than a number of times for which the game145is indicated as being liked by the target friend, or(e) has indicated the game145as being disliked for a lower number of times than a number of times for which the game145is indicated as being disliked by the target friend, or(f) has downloaded the game145to a corresponding one of the client devices1502,1503, and1504for a higher number of times than a number of times the game145is downloaded to the client device1501by the target friend, or(g) has mentioned the game145within their web accounts for a higher number of times than a number of times for which the game145is mentioned within the web account of the target friend, or(h) a combination thereof,the game145is identified within the recommendation108to the user4at the client device1504.
As another illustration, if each user2,3, or4:(a) has the same or similar age as that of the target friend, or(b) has the same or similar gender as that of the target friend, or(c) has the same or similar relationship status as that of the target friend, or(d) has the same or similar interests as that of the target friend, or(e) has the same or similar hobbies as that of the target friend, or(f) has the same or similar likes as that of the target friend, or(g) has the same or similar dislikes as that of the target friend, or(h) plays the game145for a higher number of gaming sessions than a number of gaming sessions for which other games are played by the corresponding user2,3, or4at a corresponding one of the client devices1502,1503, and1504, or(i) plays the game145for a longer time than an amount of time for which the other games are played by the corresponding user2,3, or4during each gaming session for a pre-determined number of gaming sessions, or(j) watches previews of the game145more often than previews of the other games are watched by the corresponding user2,3, or4, or(k) has indicated the game145as 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 corresponding user2,3, or4, or(l) has indicated the game145as 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 corresponding user2,3, or4, or(m) has downloaded the game145to a corresponding one of the client devices1502,1503, and1504for a higher number of times than a number of times the other games are downloaded to the corresponding one of the client devices1502,1503, and1504, or(n) has mentioned the game145within a corresponding web account for a higher number of times than mentioning the other games within the corresponding web account, or(o) paid to play the game145after logging into a corresponding web account, or(p) paid a higher amount to play the game145compared to the other games, or(q) plays the game145for a higher number of gaming sessions than a number of gaming sessions for which the game145is played by the target friend at the client device1501, or(r) plays the game145for a longer time than an amount of time for which the game145is played by the target friend at the client device1501during each gaming session for a pre-determined number of gaming sessions, or(s) watches previews of the game145more often than previews of the game145are watched by the target friend, or(t) has indicated the game145as being liked for a higher number of times than a number of times for which the game145is indicated as being liked by the target friend, or(u) has indicated the game145as being disliked for a lower number of times than a number of times for which the game145is indicated as being disliked by the target friend, or(v) has downloaded the game145to the corresponding one of the client devices1502,1503, and1504for a higher number of times than a number of times the game145is downloaded to the client device1501by the target friend, or(w) has mentioned the game145within the corresponding web account for a higher number of times than a number of times for which the game145is mentioned within a web account of the user1by the user1, or(x) a combination thereof,the game145is identified within the recommendation108to the user4at the client device1504.
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 game145is played for a longer time than an amount of time for which the other games are played by each user2,3, and4during each gaming session for a pre-determined number of gaming sessions, it is determined whether an average amount of time for which each user2,3, and4plays the game145for the pre-determined number of gaming sessions is longer than an average amount of time for which the other games are played by the user for the pre-determined number of gaming sessions. As another example, instead of determining whether each user2,3, and4has indicated the game145as 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 user2,3, and4has indicated the game145as being liked is averaged over a period of time to generate a first average and the number of times for which each user2,3, and4has indicated the other games as being liked is averaged over the time period 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 user2,3, and4paid to play the game145after the user logged into a corresponding web account of the user is assigned a higher weight than a weight assigned to whether each user2,3, and4has mentioned the game145within 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 user2,3, and4has indicated the game145as 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 game145for a longer time than an amount of time for which the game145is played by the target friend at the client device1501during 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 user2,3, and4plays the game145for 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 a virtual item within the game145has a higher magnitude than a virtual within each of the other games. For example, it is determined whether an energy level within the game145is higher than an energy level within each of the second and third games. As another example, it is determined whether a number of virtual coins or virtual points accumulated during a play of the game145is greater than a number of virtual points or virtual coins within a play of each of the second and third games.
When the user4uses the client device1504to log into his/her web account to play a game, such as, for example, the game152, in an operation129, a NIC of the game provider network102sends the recommendation data141to the NIC of the client device1504. The GPU of the client device1504renders the recommendation data141to display the recommendation108that indicates to the user4that the user4recommend the game145to the target friend. For example, the recommendation108includes information identifying the target friend and the game145. The user4sees the recommendation108and a message indicating that the user145recommend the game145to the target friend. In various embodiments, the recommendation includes the offer incentive110(FIG. 1) that mentions a reward and the reward is provided to the user4by the game provider network102when the user4recommends the game145to the target friend. The user4decides to recommend the game145to the target friend.
FIG. 3is a flowchart of the method120. In an operation142, it is determined whether a suggestion of the game145is shared with the target friend. For example, it is determined whether an indication of a selection of a button, e.g., a share button, a like button, etc., is received from the client device1504to share an identity of the game145with the target friend. In this example, the user4is logged into the user account132. In response to receiving the indication of the selection of the button, it is determined that the user4wishes to share the identity of the game145with the target friend. On the other hand, in response to determining that the indication of the selection is not received, it is determined that the user4does not wish to share the identity of the game145with the target friend.
As another example, it is determined whether an indication that a suggestion of the game145is sent to a user account of the target friend is received. For example, when an indication of a selection of a button, e.g., a share button, a like button, etc., is received from the client device1504, an identity of the game145is sent to a user account of the target friend. In this example, the user4is logged into the user account132. Also, in this example, it is determined that a suggestion of the game145is sent to the user account of the target friend.
As another example, it is determined whether an indication of a selection of a button, e.g., a share button, a like button, etc., that allows the user4to share an identity of the game145is received from the client device1504via the network136. In this example, the user4is logged into the user account132. In response to determining that the indication of the selection of the button is received, menu data is generated and sent to the client device1504. The menu data is processed to render a menu on the display screen of the client device1504. The menu prompts the user4whether the user4wishes to share the identity with the target friend or also with other friends2and3of the user4. The user4identifies via the input device of the client device1504friends with whom the user4wishes to share the identity of the game145. In response to receiving an indication of the selection of the button, it is determined that the user4wishes to share the identity of the game145with the friends that the user4has identified. On the other hand, in response to determining that the identification of any friends is not received, it is determined that the user4does not wish to share the identity of the game145with any friends of the user4.
Upon determining that the user4does not wish to share a suggestion of the game145with the target friend, the method120ends. On the other hand, in response to determining that the user4wishes to share a suggestion of the game145with the target friend, in an operation143, a reward mentioned within the offer incentive110is provided to the user4. For example, when it is determined that an indication of a selection of a button, e.g., a share button, a like button, etc., is received from the user4via the input device of the client device1504to indicate that the user4wishes to suggest the game145to the target friend, the user4is awarded virtual items for a game. The game for which the user4is awarded virtual items may be a game that the user4plays most frequently than the other games, a game that the logic engine139(FIG. 1) determines be recommended to the user4for play by the user4based on the use profile104and/or user profile of the user4, or any other game that is offered by the game provider network102. An example of a manner in which a game is recommended to the user4for play by the user4based on a use profile and/or a user profile of the user4is described in U.S. patent application Ser. No. 13/537,846. As another example, when it is determined that an indication of a selection of a button, e.g., a share button, a like button, etc., and identities of friends of the user4with whom the user4wishes to share the identity of the game145is received, a reward mentioned within the offer incentive110is provided to the user4.
In an operation144, it is determined whether the target friend accessed the game145that is shared by the user4. For example, it is determined whether an indication of a selection of a button, e.g., a download button, a play button, to download one or more portions of the game145is received via an input device of the client device1501. In this example, the target friend is logged into his/her user account. In response to determining that the indication of the selection of a button to access the game145is not received, the method120ends. On the other hand, in response to determining that the indication of the selection of a button to access the game145is received, in an operation146, reward data, e.g., discount data, virtual item data, or any other data, to fulfill the offer promotion140is sent to the client device1501via the network136. For example, the target friend receives a discount towards another game that may be accessed via the game provider network102, receives a virtual item during play of the game145, receives a virtual item during another game that is accessed from the game provider network102, or a combination thereof. The method120ends after the operation146.
In several embodiments, in response to determining that the indication of the selection of a button to access the game145is received, the game provider network102generates and sends incentive data via the network136to the client device1504. The incentive data is sent when the user4accesses the user account132. The GPU of the client device1504processes the incentive data to provide incentives to the user4for a game, e.g., game145, game152, etc. Examples of the incentives include virtual items, discount offer to play a game, free game play, game level during a game, energy level during a game, points during a game, etc.
FIG. 4is a diagram of an embodiment of a compare logic module205that compares data received from one or more databases to determine an identity of the game145(FIG. 1) that is to be suggested to the target friend. In several embodiments, the compare logic module205is executed by a processor of the game provider network102(FIG. 1).
The compare logic module205receives data173regarding the users2thru4, who are friends of the target friend (FIG. 1), data175regarding the target friend (FIG. 1), data177regarding use of the game145by the users2thru4, data179regarding use of the game145by the target friend, and/or data181regarding use of the other games by the users2thru4. In some embodiments, the compare logic module205compares the data173regarding the users2thru4with data175regarding the target friend to determine whether a value of a parameter of the target friend and one or more values of the parameter of the users2thru4are the same or similar. For example, the compare logic module205determines whether an age of the target friend is the same or similar to that of ages of the users2thru4. As another example, the compare logic module205determines whether likes of the target friend are the same or similar to likes of the users2thru4.
Moreover, in various embodiments, the compare logic module205compares the data177regarding use of the game145by the users2thru4with data179regarding use of the game145by the target friend. For example, a number of gaming sessions for which the game145is played by the users2thru4is compared with a number of gaming sessions for which the game145is played by the target friend. As another example, a number of times for which the game145is indicated as being liked by the users2thru4is compared with a number of times for which the game145is indicated as being liked by the target friend.
In some embodiments, the compare logic205compares the data177regarding use of the game145by the users2thru4with data181regarding use of the other games by the users2thru4. For example, a number of gaming sessions for which the game145is played by the users2thru4is compared with a number of gaming sessions for which each of the other games are played by the users2thru4. As another example, an amount of time for which the game145is played by the users2thru4for 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 users2thru4for the pre-determined number of gaming sessions.
The data177includes data183regarding receipt of payment from the users2thru4to play the game145and the data180includes data185regarding receipt of payment from the users2thru4to play the other games. For example, a processor of the gaming provider network102(FIG. 1) determines whether the users2thru4have paid to play the game145and have not paid to play 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 users2thru4have not paid to play the other games and have paid to play the game145, the processor determines to send an identification of the game145to send to the client device1504. On the other hand, in response to determining that the users2thru4have paid to play the other games and have not paid to play the game145, the processor determines to send an identification of one of the other games instead of the identification of the game145.
FIG. 5is a diagram of an embodiment of a recommendation156that is displayed besides a game159played by the user4(FIG. 1). The game159is an example of the game152(FIG. 1). The game159is played on a display screen154, which is an example of the display screen of the client device1504(FIG. 1).
The user4logs into the user account132(FIG. 1) to play the game159. For example, the user4accesses a web page of a game developer from a server of the game provider network102(FIG. 1). In this example, when the user4selects an identification of the game159on the web page via the input device of the client device1504, the GPU of the client device1504displays a prompt on the display screen154to prompt the user4to provide the user information. When the user4provides the user information via the input device of the client device1504, an authentication server determines whether the user information is authentic. Upon receiving a determination from the authentication server that the user information is authentic, a server of the game provider network102provides access to the game159to the user4. Examples of a game developer include an entity that develops games, described herein and an entity that owns legal rights to the games.
In several embodiments, the authentication server is separate from the game provider network102and the social network134. In various embodiments, the authentication server is part of the game provider network102and the social network134.
In various embodiments, instead of accessing a web page of the game developer first and then providing the use information, the user4first provides the user information and then accesses the web page of the game developer. For example, the user4requests a web page of a service provider, provides the user information to the authentication server via the web page to log into the user account132, requests another web page of the game developer, and then selects an identification of the game159. Upon receiving the indication of the identification of the game159, a server of the game provider network102provides access to the game159to the user4.
Examples of a service provider include an entity that develops a game service, a social network service, and/or an email service. Other examples of a service provider include an entity that owns legal rights to a service.
As shown inFIG. 5, upon logging into the user account132and accessing a webpage having a uniform resource location (URL) “www.gamedeveloper.com/#/play/game2”, the user4plays the game159. In several embodiments, the web page shown inFIG. 5is one of many web pages of the game developer's website.
The game159has one or more objectives that the user4can achieve. For example, an objective of the game159is to build a happy virtual kingdom. As another example, an objective of the game159is to collect virtual coins, collect virtual crowns, collect other items, chop virtual trees, feed virtual chickens, gain virtual energy, progress through levels of the second game, or a combination thereof.
In several embodiments, when an objective of the game159is achieved, the user4is rewarded with one or more virtual items, virtual energy, a game level, or a combination thereof. Also, in some embodiments, when an objective of the game159is achieved, the user4is provided with another objective to pursue.
In various embodiments, during the play of the game159, the user4may invite social network friends of the user4to play the game159. For example, when the user4selects an image164within the game159via the input device of the client device1504, the GPU of the client device1504displays a window that includes names of social network friends of the user4. The user4can select one or more of the names of the social network friends to invite the one or more social network friends to play the game159.
In various embodiments, during the play of the game159, the user4selects, via the input device of the client device1504, an image162to access a virtual gaming environment that is owned by a virtual user. For example, when the user4selects the image162of a virtual user named “John”, the NIC of the game provider network102sends virtual kingdom data via the network136to the NIC of the client device1504. The virtual user named “John” does not represent any real world user, such as, for example, a user named “Mary”. Upon receiving the virtual kingdom data, the GPU of the client device1504displays a virtual kingdom that is owned by the virtual user “John”. The user4can achieve various objectives within the virtual kingdom of John.
In some embodiments, the user4is represented by a virtual user166during the play of the game159. For example, the user4can direct movement of the virtual user166to a location on the display screen154by selecting, via the input device of the client device1504, the location on the display screen154.
In various embodiments, during the play of the game159, the GPU of the client device1504receives the recommendation data141(FIG. 1) via the network136(FIG. 1) from the game provider network102and executes a rendering program to apply the rendering program to the recommendation data141to display recommendations156and157on the display screen154.
The recommendation156indicates that Mary recommend game1, e.g., the game145, to the target friend, who is associated with a network identifier (NI)158. A network identifier identifies a social context, e.g., a social network, which is accessed by a user. For example, the target friend accesses a social network identified with the NI158to play a game. In a number of embodiments, the recommendation156includes the user information, e.g., name of the target friend, image of the target friend, etc., regarding the target friend to identify the target friend. The recommendation157indicates to the user4that the user4will receive additional rewards when the target user plays game1.
When the user4selects the recommendation156via the input device of the client device1504, the NIC of the game provider network102receives the indication of the selection. Upon receiving the indication of the selection, a processor of the game provider network102generates the offer promotion data151and the NIC of the game provider network102sends the offer promotion data to the client device1501(FIG. 1). The offer promotion data151is sent when the target friend accesses his/her user account via the network136.
Moreover, upon receiving the indication of the selection of the recommendation156, a processor of the game provider network102generates reward data and sends the reward data via the network136to the client device1504. The reward data is sent when the user4accesses the user account132(FIG. 1) via the network136. The GPU of the client device1504accesses the reward data from the NIC of the client device1504and processes the reward data to display a reward, which is provided to the user4.
In various embodiments, the recommendation156includes an invite button. When the invite button is selected by the user4via the input device of the client device4, a list of social network friends of the user4is displayed on the display screen154and the user4may select friends from the list to suggest the game1.
In a number of embodiments, the recommendation156excludes any incentive for the user4to recommend the game1to the target friend and/or to other friends. For example, the recommendation156indicates to the user4that the user4recommend the game1to the target friend and/or to other friends.
In various embodiments, the recommendation156includes an NI of a social context of social network friends of the target friend and a number of the social network friends. For example, the recommendation156indicates to the user4that z number of social network friends of the target friend access a social network to play the game145, where z is an integer greater than or equal to zero. In various embodiments, the recommendation156includes identities of more than one social context. For example, the recommendation156includes that z social network friends of the user4play the game145by using a first social network service and v number of social network friends of the user4play the game145by using a second social network service, where v is an integer greater than zero. 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.
In various embodiments, a multimedia1601of a member of a social network service and a status of the member with respect to the game159and with respect to the user4are displayed with the recommendation156. An example of a status includes that “James sent help 1 time”. The help is help to the user4in the game159. In these embodiments, the social network service is the same as that accessed by the user4by logging into a web account and that is used to play the game159. Also, another multimedia1602of another member of the social network service and a status of the member with respect to the game159and with respect to the user4are displayed. An example of a status includes that “Dana has desire for cooling salve”.
In several embodiments, any number of multimedia of any number of members of the social network service is displayed on a display screen. In various embodiments, the members1601and1602are examples of two of the users1thru3.
In several embodiments, any word within the recommendation156is programmed to receive a selection from the user4via the input device of the client device1504. Upon receiving an indication of the selection, the NIC of the client device1504sends the indication via the network136to the game provider network102(FIG. 1). Upon receiving the indication of the selection, the game provider network102generates the offer promotion data151(FIG. 1).
It should be noted that in various embodiments, at a time the recommendations156and/or157are displayed on the display screen154, the user4is not playing or is about to play a game.
FIG. 6is a diagram of an embodiment of a display screen169that displays symbols171for accessing multiple mobile applications for playing multiple games. The display screen169is a display screen of a mobile device, e.g., a cell phone, tablet, a smart phone, etc., and is an example of the display screen of a client device, e.g., any of the client devices150(FIG. 1).
One of the symbols171is accessed on the mobile device to access a mobile game application to play a game that is offered by the game developer. For example, a user selects the symbol1711to access game1or selects the symbol1712to access game2. In various embodiments, the mobile game applications are stored within one or more memory devices of one of the client devices151.
In a number of embodiments, a mobile application has a different layout than a web application. For example, the mobile application is developed for a smaller display screen than a display screen on which the web application is displayed. As another example, the mobile application is developed for a limited amount of controls and inputs from a user compared to the web application. In several embodiments, a mobile application is not being rendered within a browser. In these embodiments, users visit device-specific portals, e.g., Apple's™ App store, Android™ Market, or Blackberry App World™ to find and download a mobile application for a given operating system. In a number of embodiments, a mobile application is not cross-compatible as all mobile devices run proprietary operating systems. In these embodiments, a web application is cross-compatible across desktop computers or laptop computers. In various embodiments, a mobile application has less functionality than a web application. The lesser function is a result of lesser computing power in a mobile device compared to a desktop computer or a laptop computer in which a web application is executed. In a number of embodiments, a web application is executed within a mobile device. For example, a web browser is executed by a processor of a gaming device to access a web gaming application on the World Wide Web.
FIG. 7is a diagram of an embodiment of a display screen168that displays a recommendation170within a web gaming application. The display screen168is a display screen of a mobile device. The display screen168is an example of the display screen of the client device1504(FIG. 1).
The display screen168displays the game159. Upon logging into the user account132and accessing a webpage having a URL “https://mobile.gamedeveloper.com/#/play/game2”, the user4plays the game159on the mobile device. A GPU of the mobile device renders the recommendation data141(FIG. 1), which is stored within a real-time messaging file, to display the recommendation170. Examples of a real-time messaging file include a Flash file. Other examples of a real-time messaging file include an instant message file. For example, when the user4is playing the game159, the recommendation data141is received in the form of Flash file data, instant message file data, or a combination thereof, by a NIC of the mobile device. The GPU of the mobile device renders the Flash file data, the instant message file data, or the combination of Flash file data and instant message file data to display the recommendation170. In various embodiments, instead of being displayed at the bottom of the display screen168, the recommendation170is displayed at the top of the screen168.
The recommendation170has similar subject matter as that of recommendations156and157(FIG. 5). For example, the recommendation170includes a social context of the target friend.
In several embodiments, any word within the recommendation170is programmed to receive a selection from the user4via the input device of the client device1504. Upon receiving an indication of the selection, the NIC of the client device1504sends the indication via the network136to the game provider network102(FIG. 1). Upon receiving the indication of the selection, the game provider network102generates the offer promotion data151(FIG. 1).
It should be noted that in various embodiments, at a time the recommendation170is displayed on the display screen168, the user4is not playing or is about to play a game.
FIG. 8is a diagram of an embodiment of a display screen173that displays the recommendation170within a mobile gaming application. The display screen173is a display screen of a mobile device. The display screen173is an example of the display screen of the client device1504(FIG. 1). In several embodiments, the game159is accessed on the display screen179when the user4selects the game2on the display screen169(FIG. 6). A GPU of the mobile device renders the recommendation data141(FIG. 1), which is stored within a real-time messaging file, to display the recommendation170.
FIG. 9is a diagram of an embodiment of a suggestion of the game1that is recommended to the target friend by the user4. The target friend plays a game161on a display screen172. The display screen172is an example of the display screen of the client device1501(FIG. 1). The target friend accesses the game161when the user information regarding the target friend is authenticated by the authentication server and the target friend logs into his/her user account. The game161is accessed from the game provider network102(FIG. 1).
In the game161, the target friend controls a virtual monkey via the input device of the client device1501to shoot bubbles from a virtual jar towards other virtual bubbles. When a color of the shot virtual bubble matches that of a pre-determined number of other virtual bubbles, all the bubbles of the matched color burst. The bursting may results in an increase in game score, an energy level, and/or a game level of the game161.
An example of a name of the target friend is John. The display screen172displays a chat button that allows John to chat with his/her social network friends and further displays an invite button that allows John to invite his/her social network friends and/or other users to play the game161. In a number of embodiments, the display screen172lacks display of the chat botton and/or the invite button.
The display screen172displays an offer promotion174, which is an example of the offer promotion140(FIG. 1). The offer promotion174indicates to the target friend that the user4recommends game1to the target friend. Moreover, the offer promotion174includes an NI176, which identifies a social context accessed by the user4who recommended game1. For example, the user4accesses a social network identified with the NI176to access game1or other games from the game network provider102(FIG. 1).
The display screen172further displays a prompt178that indicates to the target friend to select the prompt178to access and play game1. For example, the prompt178includes a select button180. When a selection of the select button180is received from the target friend via the input device of the client device1501, a request for accessing game1is sent by the NIC of the client device1501via the network136to the game provider network102.
In several embodiments, instead of the selection of the select button180, any portion of the prompt178is selected. When an indication of selection of the portion of the prompt178is received, a request for accessing game1is sent by the NIC of the client device1501via the network136to the game provider network102.
The NIC of the game provider network102sends one or more portions of game data of game1via the network136to the client device1501. In response to receiving the one or more portions of game1, the GPU of the client device1renders the one or more portions to display information regarding game1, e.g., an image of game1, a play button of game1, etc., on the display screen of the client device1501.
The target friend plays game1. For example, the target friend selects a play button displayed on the display screen172to play game1. As another example, the target friend selects an image of game1to play the game. As another example, the target friend interacts via the input device of the client device1501with features, e.g., virtual items, animations, etc., of game1to play game1.
In a number of embodiments, an indication of the play of game1by the target friend is sent by the NIC of the client device1501via the network136to the NIC of the game provider network102. Upon receiving the indication of the play of game1, a processor of the game provider network102generates additional reward data and the NIC of the game provider network102sends the additional reward data via the network136to the client device1504. The additional reward data is sent to the client device1504when the user1504accesses the user account132via the network136. The GPU of the client device1504processes the additional reward data to display additional rewards on the display screen of the client device1504and the additional rewards are provided to the user4.
The additional rewards are provided in addition to providing rewards to the user4for recommending game1to the target friend and/or the target friend accessing game1. The additional rewards are provided when the target friend plays game1.
In several embodiments, the prompt178is a part of the offer promotion174. It should be noted that in various embodiments, at a time the offer promotion174and prompt178are displayed on the display screen172, the target friend is not playing or is about to play a game.
FIG. 10is a diagram of an embodiment of a display screen182that displays an offer promotion184and the game161on a mobile device upon execution of a web gaming application. The display screen182is an example of the display screen of the client device1501(FIG. 1). A GPU of the mobile device renders the offer promotion data151(FIG. 1), which is stored within a real-time messaging file, to display the offer promotion184, which is an example of the offer promotion140. For example, when target friend is playing the game161, the offer promotion data151is received in the form of Flash file data, instant message file data, or a combination thereof, by a NIC of the mobile device. Upon logging into his/her user account and accessing a webpage having a URL “https://mobile.gamedeveloper.com/#/play/game1”, the target friend plays the game161on the mobile device. The GPU of the mobile device renders the Flash file data, the instant message file data, or the combination of Flash file data and instant message file data to display the offer promotion184. In various embodiments, instead of being displayed at the bottom of the display screen182, the offer promotion184is displayed at the top of the screen182.
The offer promotion184has similar subject matter as that of offer promotion174and the prompt178(FIG. 9). For example, the offer promotion184includes a social context of the user4that recommended game1to the target friend.
It should be noted that in various embodiments, at a time the offer promotion184is displayed on the display screen182, the target friend is not playing or is about to play a game.
FIG. 11is a diagram of an embodiment of a display screen203that displays the offer promotion184and the game161within a mobile gaming application on a mobile device. The display screen203is a display screen of a mobile device. The display screen203is an example of the display screen of the client device1501(FIG. 1). In several embodiments, the game161is accessed on the display screen203when the user1selects the game1on the display screen169(FIG. 6). A GPU of the mobile device renders the offer promotion data151(FIG. 1), which is stored within a real-time messaging file, to display the offer promotion184.
FIG. 12is a diagram of an embodiment of the display screen207that displays a pattern209of circles, which are used to illustrate a suggestion of the game145. The display screen207is an example of the display screen of the client device1501(FIG. 1). The GPU of the client device1501displays the pattern209after the target friend has logged into his/her user account and has not used the client device1501(FIG. 1) for a preset period of time. When the pattern209is displayed, the NIC of the game provider network102(FIG. 1) sends the offer promotion data151(FIG. 1) via the network136to the NIC of the client device1501.
Upon receiving the offer promotion data151via the NIC of the client device1501, the GPU of the client device1501renders the offer promotion data151to display a message211at the top of the display screen193. The message211invokes curiosity of the target friend to find out what the user4has to recommend. When the target friend unlocks the pattern209via the input device of the client device1501and selects the message211via the input device, a web page213is displayed on the display screen207by the GPU of the client device1501. The web page213has a URL “https://mobile.message.com”. The web page213includes a message that conveys that the user4has recommended game1and provides a select button that can be selected by the target friend to access and play game1.
In several embodiments, instead of displaying the pattern209, 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. 13is a diagram of an embodiment of multiple graphs184,186, and188used to illustrate a dynamic change in use of the game145(FIG. 1). The graph184plots a use of the game145by the users2thru4(FIG. 1) versus time t. The use of the game145is dynamically changing over time. For example, the use of the game145at a time t1is below a use limit and the use of the game145at a time t2is above the use limit. A processor of the game provider network102(FIG. 1) determines at the time t1that the use is below the use limit and avoids generating the recommendation data141(FIG. 1) regarding the game145. Moreover, a processor of the game provider network102determines at the time t2that the use is above the use limit, generates the recommendation data141, and sends the recommendation data141to the client device1504(FIG. 1).
As shown in the graph186, the use of the game145by the users2thru4increases linearly after a time t3. A processor of the game provider network102determines after the time t3that the use increased linearly after the time t3and increases, after the time t3, a frequency with which the recommendation data141is sent by the NIC of the game provider network102to the client device1504. The GPU of the client device1504renders the recommendation data141to display the recommendation108each time the recommendation data141is received by the NIC of the client device1504. The frequency is increased compared to a frequency of sending the recommendation data141before the time t3.
Also, as shown in the graph188, the use of the game145decreases linearly after a time t4. A processor of the game provider network102determines after the time t4that the use decreased linearly after the time t4and decreases, after the time t4, a frequency with which the recommendation data141is sent by the NIC of the game provider network102to the client device1504. The frequency is decreased compared to a frequency of sending the recommendation data141before the time t4.
In several embodiments, instead of the linear change in the frequency shown in the graphs186and188, an exponential or a step function change in the frequency can be used.
In some embodiments, the change in use of the game145by the users2thru4after the times t3and t4is a result of an application by a processor of the game provider network102of different factors to determine the use compared to before the times t3and t4. For example, a processor of the game provider network102applies a first combination of factors to determine use of the game145before the time t3or t4and applies a second combination of factors to determine use of the game145after the time t3or t4. To illustrate, the second combination of factors includes whether the users2thru4paid to play the game145and whether each of the users2thru4played the game145for 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 users2thru4mentioned the game145for a higher number of times than mentioning the other games and whether each of the users2thru4accessed the game145for a higher number of times than accessing games other than the game145.
It should be noted that in several embodiments, any comparison of portions of the group data135(FIG. 1) is a factor. For example, if the users2thru4and the target user have the same or similar age is a factor. As another example, whether the users2thru4paid to play the game145is another factor.
FIG. 14is a block diagram of an embodiment of a client device190, which is an example of any of the client devices150(FIG. 1). The client device190includes a display device208that is coupled with a bus196via an input/output interface (I/O)1981. Examples of the display device208include an LED display device, an LCD display device, a plasma display device, and a CRT display device. The display device208includes a display screen206. The display screen154ofFIG. 5, the display screen168ofFIG. 8, the display screen172ofFIG. 9, the display screen182ofFIG. 10, or the display screen207ofFIG. 12is an example of the display screen206.
An input device204of the client device190is coupled with the bus196via an I/O1982. An I/O interface that is coupled with two devices provides compatibility between the two devices. For example, the I/O interface1981matches a rate of transfer of data to/from the display device208with a rate of transfer of data over the bus196. As another example, the I/O device1982converts analog signals received from the input device204into digital signals that are compatible with the bus196. Moreover, a processor202, a memory device194, and a NIC192are coupled with the bus196.
FIG. 15is a block diagram of an embodiment of a server210. The server210may be a part of the game provider network210or the social network134(FIG. 1). In several embodiments, the server210is the authentication server. The server210includes a processor212, a memory device214, and a NIC216. The processor212, the memory device214, and the NIC216are coupled with each other via a bus218. In several embodiments, the server210includes any number of processors and memory devices.
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 inFIGS. 2 and 3, 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
- A method comprising: determining whether a first game is being accessed by a user;accessing a user profile of the user when the user is accessing the first game;accessing a social graph associated with the user profile of the user, the social graph providing user profiles of social network friends of the user, the social network friends and the user being members of a social network;determining a use profile of a second game that is accessed by the social network friends of the user;generating a notification regarding a recommendation of the second game for the user based on the use profile of the second game;and sending via a computer network the recommendation of the second game with an identity of the social network to the user in response to receiving an indication that the recommendation is to be sent from one of the social network friends to the user, wherein the social network is different from a game network that allows a play of the first and second games.
- The method of claim 1 , wherein the first game is being accessed by the user via a social network account of the user, wherein the social network account is one of a plurality of social network accounts of the social network.
- The method of claim 1 , wherein sending the recommendation comprises sending the recommendation to display the recommendation on a screen of a mobile device for access after a password is unlocked.
- The method of claim 1 , wherein the recommendation is a textual sentence that includes the identity of the social network.
- The method of claim 1 , further comprising sending a link for accessing the second game for display of the link with the recommendation on a mobile device.
- The method of claim 5 , wherein the link and the recommendation are to be displayed when a password on the mobile device is unlocked.
- The method of claim 1 , wherein sending the recommendation comprises sending the recommendation for display of the recommendation on the same display screen of a mobile device on which the first game is displayed.
- The method of claim 7 , wherein the recommendation includes a link for accessing the second game on the mobile device.
- A system comprising: a memory device for storing a first game and a second game;a processor coupled to the memory device, the processor for: determining whether the first game is being accessed by a user;accessing a user profile of the user when the user is accessing the first game;accessing a social graph associated with the user profile of the user, the social graph providing user profiles of social network friends of the user, the social network friends and the user being members of a social network;determining a use profile of the second game that is accessed by the social network friends of the user;generating a notification regarding a recommendation of the second game for the user based on the use profile of the second game;and sending via a computer network the recommendation of the second game with an identity of the social network to the user in response to receiving an indication that the recommendation is to be sent from one of the social network friends to the user, wherein the social network is different from a game network that allows a play of the first and second games.
- The system of claim 9 , wherein the first game is being accessed by the user via a social network account of the user, wherein the social network account is one of a plurality of social network accounts of the social network.
- The system of claim 9 , wherein the processor is configured to send the recommendation to display the recommendation on a screen of a mobile device for access after a password is unlocked.
- The system of claim 9 , wherein the recommendation is a textual sentence that includes the identity of the social network.
- The system of claim 9 , wherein the processor is configured to send a link for accessing the second game for display of the link with the recommendation on a mobile device.
- The system of claim 13 , wherein the link and the recommendation are to be displayed when a password on the mobile device is unlocked.
- The system of claim 9 , wherein the processor is configured to send the recommendation for display of the recommendation on the same display screen of a mobile device on which the first game is displayed.
- The system of claim 15 , wherein the recommendation includes a link for accessing the second game on the mobile device.
- A non-transitory computer-readable medium storing a program causing a computer to execute instructions, the instructions comprising: determining whether a first game is being accessed by a user;accessing a user profile of the user when the user is accessing the first game;accessing a social graph associated with the user profile of the user, the social graph providing user profiles of social network friends of the user, the social network friends and the user being members of a social network;determining a use profile of a second game that is accessed by the social network friends of the user;generating a notification regarding a recommendation of the second game for the user based on the use profile of the second game;and sending via a computer network the recommendation of the second game with an identity of the social network to the user in response to receiving an indication that the recommendation is to be sent from one of the social network friends to the user, wherein the social network is different from a game network that allows a play of the first and second games.
- The non-transitory computer-readable medium of claim 17 , wherein the first game is being accessed by the user via a social network account of the user, wherein the social network account is one of a plurality of social network accounts of the social network.
- The non-transitory computer-readable medium of claim 17 , wherein sending the recommendation comprises sending the recommendation to display the recommendation on a screen of a mobile device for access after a password is unlocked.
- The non-transitory computer-readable medium of claim 17 , wherein the recommendation is a textual sentence that includes the identity of the social network.
- The method of claim 1 , wherein the recommendation includes the identity of the social network.
Disclaimer: Data collected from the USPTO and may be malformed, incomplete, and/or otherwise inaccurate.