US20130084969A1 - Asynchronous gameplay with rival display - Google Patents
Asynchronous gameplay with rival display Download PDFInfo
- Publication number
- US20130084969A1 US20130084969A1 US13/280,194 US201113280194A US2013084969A1 US 20130084969 A1 US20130084969 A1 US 20130084969A1 US 201113280194 A US201113280194 A US 201113280194A US 2013084969 A1 US2013084969 A1 US 2013084969A1
- Authority
- US
- United States
- Prior art keywords
- rival
- user
- event
- game
- users
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
- 230000004044 response Effects 0.000 claims abstract description 27
- 238000000034 method Methods 0.000 claims description 41
- 230000008859 change Effects 0.000 abstract description 6
- 230000008569 process Effects 0.000 description 21
- 230000015654 memory Effects 0.000 description 11
- 230000009471 action Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 10
- 230000033001 locomotion Effects 0.000 description 7
- 230000006855 networking Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000010009 beating Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000001815 facial effect Effects 0.000 description 2
- 230000009191 jumping Effects 0.000 description 2
- 239000003973 paint Substances 0.000 description 2
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/45—Controlling the progress of the video game
- A63F13/49—Saving the game status; Pausing or ending the game
- A63F13/497—Partially or entirely replaying previous game actions
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
- A63F13/79—Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
- A63F13/795—Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories for finding other players; for building a team; for providing a buddy list
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
- A63F13/79—Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
- A63F13/798—Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories for assessing skills or for ranking players, e.g. for generating a hall of fame
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/80—Special adaptations for executing a specific game genre or game mode
- A63F13/803—Driving vehicles or craft, e.g. cars, airplanes, ships, robots or tanks
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/50—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
- A63F2300/55—Details of game data or player data management
- A63F2300/5546—Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/50—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
- A63F2300/55—Details of game data or player data management
- A63F2300/5546—Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history
- A63F2300/5566—Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history by matching opponents or finding partners to build a team, e.g. by skill level, geographical area, background, play style
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/50—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
- A63F2300/55—Details of game data or player data management
- A63F2300/5546—Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history
- A63F2300/558—Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history by assessing the players' skills or ranking
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/50—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
- A63F2300/55—Details of game data or player data management
- A63F2300/5593—Details of game data or player data management involving scheduling aspects
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/50—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
- A63F2300/57—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of game services offered to the player
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/60—Methods for processing data by generating or executing the game program
- A63F2300/63—Methods for processing data by generating or executing the game program for controlling the execution of the game in time
- A63F2300/634—Methods for processing data by generating or executing the game program for controlling the execution of the game in time for replaying partially or entirely the game actions since the beginning of the game
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/60—Methods for processing data by generating or executing the game program
- A63F2300/63—Methods for processing data by generating or executing the game program for controlling the execution of the game in time
- A63F2300/636—Methods for processing data by generating or executing the game program for controlling the execution of the game in time involving process of starting or resuming a game
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/80—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
- A63F2300/8017—Driving on land or water; Flying
Definitions
- Online gaming services allow users to play games by themselves, or to play games together with one or more other users.
- the online gaming services typically maintain a leader board that ranks the various users of a game based on the users' scores obtained while playing a game.
- leader boards are useful to know how a user ranks against other users in a game, they are not without their problems.
- One such problem is that if a user desires to try to beat another user by obtaining a higher score for a game, the user is typically presented with simply the score to beat. This creates an impersonal situation for the user, providing an experience for the user that is more of individual gameplay rather than playing the game with another user.
- a user request to select a rival to play against asynchronously for an event is received.
- a rival selector user interface is displayed.
- the rival selector user interface includes an identification of one or more users that can be selected. A user selection of one of the one or more users is received, and the selected user is used as the rival to play against asynchronously for the event.
- a user request to play against a rival asynchronously for an event is received.
- Game data for the rival for the event is obtained, the game data including both a performance of the rival in the event and data indicating a manner in which an object of the rival is customized by the rival.
- the object as customized by the rival is played back based on the performance data.
- FIG. 1 illustrates an example system implementing the asynchronous gameplay with rival display in accordance with one or more embodiments.
- FIG. 2 illustrates an example gaming device and display in additional detail in accordance with one or more embodiments.
- FIG. 3 illustrates an example system implementing the asynchronous gameplay with rival display in accordance with one or more embodiments.
- FIGS. 4 and 5 illustrate example user interfaces allowing a user to select a rival to play an event against asynchronously in accordance with one or more embodiments.
- FIGS. 6 and 7 illustrate an example of the changing of transparency of an object representing a rival in accordance with one or more embodiments.
- FIG. 8 is a flowchart illustrating an example process for implementing the asynchronous gameplay with rival display in accordance with one or more embodiments.
- FIG. 9 is a flowchart illustrating another example process for implementing the asynchronous gameplay with rival display in accordance with one or more embodiments.
- FIG. 10 is a flowchart illustrating an example process for using notifications in accordance with one or more embodiments.
- FIG. 11 illustrates an example computing device that can be configured to implement the asynchronous gameplay with rival display in accordance with one or more embodiments.
- Asynchronous gameplay with rival display is discussed herein.
- a user plays an event in a game
- data regarding the user's performance in that event is stored.
- a particular user can select another user (a rival) to play against asynchronously in the event.
- a list identifying various other users that have played the event can be displayed to the particular user, and the list can be filtered in various manners (e.g., based on friends of the particular user, scores of the users, and so forth).
- the particular user selects another user in the list as a rival, and an object representing the rival (e.g., the rival's vehicle) is displayed while the particular user plays the event.
- an object representing the rival e.g., the rival's vehicle
- the object representing the rival is displayed with the rival's performance in the event, providing the particular user with the experience of playing the event with the rival even though the rival actually played the event at an earlier time.
- the object representing the rival is displayed with customizations made by the rival (e.g., particular paint colors or designs for a vehicle, particular stickers added to a vehicle, and so forth).
- a currency or other credit is awarded to the particular user.
- the currency or credit awarded is based on the particular user's performance and the score of the rival in the event.
- a notification can be provided to the rival notifying him or her that he or she has been beaten in the event by the particular user.
- the notification includes a link that can be selected by the rival to jump to the event, and to play the event again in an attempt to obtain a better score than the particular user.
- FIG. 1 illustrates an example system 100 implementing the asynchronous gameplay with rival display in accordance with one or more embodiments.
- System 100 includes multiple (x) gaming devices 102 and an online gaming service 104 that can communicate with one another via a network 106 .
- Network 106 can be a variety of different networks, including the Internet, a local area network (LAN), a wide area network (WAN), a personal area network (PAN), a phone network, an intranet, other public and/or proprietary networks, combinations thereof, and so forth.
- LAN local area network
- WAN wide area network
- PAN personal area network
- phone network an intranet, other public and/or proprietary networks, combinations thereof, and so forth.
- Each gaming device 102 can be a variety of different types of devices that allow users to play games (such as racing games, sports games, strategy games, adventure games, simulation games, and so forth). Different ones of gaming devices 102 can be the same or different types of devices.
- a gaming device 102 can be a game console, a cellular or other wireless phone, a television or other display device, a set-top box communicatively coupled to a display device, a desktop computer, a laptop or netbook computer, a tablet or notepad computer, a mobile station, an entertainment appliance, an automotive computer, and so forth.
- Online gaming service 104 facilitates playing of one or more different games by users of gaming devices 102 .
- Gaming service 104 is referred to as being an online service due to gaming devices 102 accessing service 104 (and/or other gaming devices 102 ) via network 106 .
- Online gaming service 104 includes an account access service 110 , a gameplay service 112 , and optionally a matchmaking service 114 , each of which can communicate with one another. Services 110 , 112 , and 114 can communicate with one another within online gaming service 104 and/or via gaming devices 102 .
- Account access service 110 provides various functionality supporting user accounts of online gaming service 104 . Different users and/or gaming devices 102 typically have different accounts with online gaming service 104 , and can log into their accounts via account access service 110 . A user or gaming device 102 logs into an account providing credential information, such as an id (e.g., user name, email address, gamer tag, etc.) and password, a digital certificate or other data from a smartcard, and so forth. Account access service 110 verifies or authenticates the credential information, allowing a user or gaming device 102 to access the account if the credential information is verified or authenticated, and prohibiting the user or gaming device 102 from accessing the account if the credential information is not verified or is not authenticated.
- credential information such as an id (e.g., user name, email address, gamer tag, etc.) and password, a digital certificate or other data from a smartcard, and so forth.
- Account access service 110 verifies or authenticates the credential information, allowing a
- Account access service 110 can also provide various additional account management functionality, such as permitting changes to the credential information, establishing new accounts, removing accounts, and so forth.
- Gameplay service 112 provides various functionality supporting playing of one or more different games by users of gaming devices 102 .
- Different game titles can be supported by gameplay service 112 (e.g., one or more different racing game titles, one or more different sports game titles, one or more different strategy game titles, and so forth).
- a game title refers to a particular set of instructions that implement a game when executed (e.g., a set of instructions for a racing game from a particular vendor, a set of instructions for a particular tennis game from a particular vendor, etc.).
- a particular running of a game title is also referred to as a game. Multiple games of the same game title can be played concurrently by different users, each game being a separate running of the game title.
- Games can be run and played as single-player games in which a single user of a gaming device 102 is playing the game and controlling one or more characters or other objects in the game, with other characters or objects in the game being controlled by the game itself. Games can also be run and played as multi-player games in which multiple users of one or more gaming devices 102 are playing the same game and each user is controlling one or more characters or other objects in the game. In multi-player games one or more additional characters or other objects can also be controlled by the game itself.
- a game is typically run by executing one or more programs.
- the programs that are executed to run these games can be run on gaming devices 102 and/or gameplay service 112 .
- Gaming devices 102 can execute one or more programs for the game, communicating with gameplay service 112 to facilitate communication between users of gaming devices 102 while playing games and/or to provide or obtain additional data (and/or programs) for playing the game.
- gameplay service 112 can execute one or more programs for the game, receiving inputs from users of gaming devices 102 and returning data indicating outputs to be generated for display or other presentation to the users of gaming devices 102 .
- games are programs executed on gaming devices 102 and gameplay service 112 manages communication between different gaming devices 102 .
- games are programs executed on gaming devices 102 and gameplay service 112 facilitates establishing communication between different gaming devices 102 . After communication between two gaming devices 102 is established, communication can be made between those two gaming devices 102 without involving gameplay service 112 .
- Gameplay service 112 includes an asynchronous gameplay coordination module 120 . While playing a game, there is an object in the game that represents the user. This object can vary based on the type of game, such as being a vehicle (e.g., a car, plane, boat, spaceship, etc.) in a racing game, being a graphical representation of a character (e.g., a human, alien, monster, etc.) in a shooting game, and so forth.
- Asynchronous gameplay coordination module 120 facilitates allowing users to play events of games against one another asynchronously. Users playing events of games against one another asynchronously refers to the users playing the events of the games at different times.
- One user plays an event in a game and user A's performance in the event is recorded.
- the other user e.g., user B
- both users play the same event, but do so at different times.
- the users can be both logged in to online gaming service 110 but play an event of a game at different times and/or one user can play an event of a game when the other user is not logged into online gaming service 110 .
- asynchronous gameplay coordination module 120 can alternatively be implemented at least in part in gaming devices 102 .
- Matchmaking service 114 when included in online gaming service 104 , provides various functionality facilitating the finding of other users with which a user of gaming device 102 can play a game.
- Matchmaking service 114 identifies other users with which a particular user can play a game in a variety of different manners, such as based on physical locations of the gaming devices 102 , skill levels of the users of gaming devices 102 , and/or other characteristics of gaming devices 102 and/or the users of gaming devices 102 .
- Matchmaking service 114 can identify other users based on user accounts that account access service 110 is aware of, based on users logged into their accounts at a particular time (e.g., as indicated by account access service 110 ), based on accounts from other services (e.g., social networking services that matchmaking service 114 can communicate with), and so forth.
- Matchmaking service 114 can identify other users with which a user of gaming device 102 can play a game across the same and/or different types of gaming devices 102 (e.g., one or more users of a desktop computer and one or more users of a game console, one or more users of a phone and one or more users of a game console, etc.).
- matchmaking service 114 can identify other users with which a user of gaming device 102 can play a game across the same and/or different services (e.g., one or more users of gameplay service 112 and one or more users of another service of online gaming service 104 ).
- Asynchronous gameplay coordination module 120 can also facilitate the finding of other users with which a user of gaming device 102 can play an event of a game asynchronously as discussed in more detail below. Any finding of other users by matchmaking service 114 is in addition to asynchronous gameplay coordination module 120 finding other users.
- Each of services 110 , 112 , and 114 can be implemented using one or more computing devices. Typically these computing devices are server computers, but any of a variety of different types of computing devices can alternatively be used (e.g., any of the types of devices discussed above with reference to gaming device 102 ). Each of services 110 , 112 , and 114 can be implemented using different computing devices, or alternatively one or more of services 110 , 112 , and 114 can be implemented using the same computing device.
- services 110 , 112 , and 114 are illustrated as separate services, alternatively one or more of these services can be implemented as a single service.
- gameplay service 112 and matchmaking service 114 can be implemented as a single service.
- functionality of one or more of services 110 , 112 , and 114 can be separated into multiple services.
- functionality of online gaming service 104 can be separated into multiple services.
- online gaming service 104 may include account access service 110 and gameplay service 112 , and a different service (e.g., a social networking service) can include matchmaking service 114 .
- FIG. 2 illustrates an example gaming device and display in additional detail in accordance with one or more embodiments.
- FIG. 2 illustrates a gaming device 202 , which can be a gaming device 102 of FIG. 1 , coupled to a display device 204 (e.g., a television). Gaming device 202 and display device 204 can communicate via a wired and/or wireless connection.
- Gaming device 202 includes an asynchronous gameplay coordination module 212 and an input/output (I/O) module 214 .
- Asynchronous gameplay coordination module 212 is analogous to asynchronous gameplay coordination module 120 of FIG. 1 , although is illustrated as implemented in gaming device 202 rather than in an online gaming service.
- Input/output module 214 provides functionality relating to recognition of inputs and/or provision of (e.g., display or other presentation of) outputs by gaming device 202 .
- input/output module 214 can be configured to receive inputs from a keyboard or mouse, to identify gestures and cause operations to be performed that correspond to the gestures, and so forth. The inputs can be detected by input/output module 214 in a variety of different ways.
- Input/output module 214 can be configured to receive one or more inputs via touch interaction with a hardware device, such as a controller 216 as illustrated. Touch interaction may involve pressing a button, moving a joystick, movement across a track pad, use of a touch screen of display device 204 or controller 216 (e.g., detection of a finger of a user's hand or a stylus), other physical inputs recognized by a motion detection component (e.g., shaking a device, rotating a device, etc.), and so forth. Recognition of the touch inputs can be leveraged by input/output module 214 to interact with a user interface output by gaming device 202 , such as to interact with a game, change one or more settings of gaming device 202 , and so forth.
- a hardware device such as a controller 216 as illustrated. Touch interaction may involve pressing a button, moving a joystick, movement across a track pad, use of a touch screen of display device 204 or controller 216 (e.g., detection of a finger
- a variety of other hardware devices are also contemplated that involve touch interaction with the device.
- Examples of such hardware devices include a cursor control device (e.g., a mouse), a remote control (e.g., a television remote control), a mobile communication device (e.g., a wireless phone configured to control one or more operations of gaming device 202 ), and other devices that involve touch on the part of a user or object.
- a cursor control device e.g., a mouse
- a remote control e.g., a television remote control
- a mobile communication device e.g., a wireless phone configured to control one or more operations of gaming device 202
- other devices that involve touch on the part of a user or object.
- Input/output module 214 can also be configured to receive one or more inputs in other manners that do not involve touch or physical contact.
- input/output module 214 can be configured to receive audio inputs through use of a microphone (e.g., included as part of or coupled to gaming device 202 ).
- input/output module 214 can be configured to recognize gestures, presented objects, images, and so forth through the use of a camera 218 .
- the images can also be leveraged by gaming device 202 to provide a variety of other functionality, such as techniques to identify particular users (e.g., through facial recognition), objects, and so on.
- Gaming device 202 can also leverage camera 218 to perform skeletal mapping along with feature extraction of particular points of a human body (e.g., 48 skeletal points) to track one or more users (e.g., four users simultaneously) to perform motion analysis.
- camera 218 can capture images that are analyzed by input/output module 214 or a game running on gaming device 202 to recognize one or more motions made by a user, including what body part is used to make the motion as well as which user made the motion.
- the motions can be identified as gestures by input/output module 214 or the running game to initiate a corresponding operation.
- FIG. 3 illustrates an example system 300 implementing the asynchronous gameplay with rival display in accordance with one or more embodiments.
- System 300 includes an asynchronous gameplay coordination module 302 (which can be an asynchronous gameplay coordination module 120 of FIG. 1 or an asynchronous gameplay coordination module 212 of FIG. 2 ), a game 304 and a game 306 .
- System 300 can be implemented in a variety of different devices. For example, system 300 can be implemented in gaming devices 102 of FIG. 1 , in online gaming service 104 of FIG. 1 , or partly in gaming devices 102 and partly in online gaming service 104 .
- Game 304 includes one or more game modules 308
- game 306 includes one or more game modules 310 .
- Games 304 and 306 are different games of the same game title (e.g., different games of the same car racing game title).
- the game modules 308 and 310 perform various functionality for the games 304 and 306 , respectively, and the specific functionality performed by game modules 308 and 310 varies based at least in part on the particular game title.
- asynchronous gameplay coordination module 302 is implemented separately from, and as part of a service made available to, games 304 and 306 .
- asynchronous gameplay coordination module 302 can be implemented (at least in part) in games 304 and 306 .
- modules 308 and/or 310 can include one or more modules of asynchronous gameplay coordination module 302 , or can implement at least part of the functionality discussed herein as performed by asynchronous gameplay coordination module 302 .
- Game 304 stores various game data in game data store 314
- game 306 stores various game data in game data store 316 .
- various information regarding a user can be stored as game data, such as the user's performance in various events of the game, items or points accumulated by the user during gameplay, and so forth.
- game data store 314 and game data store 316 can be the same game data store (e.g., implemented by online gaming service 104 ).
- Games 304 and 306 have one or more events that a user can play.
- An event is a particular part of a game that is played by a user. The nature of a particular event depends on the particular game. For example, an event of a racing game can be a particular track or course that is raced. By way of another example, an event of a shooting game can be a particular target shooting course. It should be noted that a game can have a single event,
- data regarding the performance of the user playing the event is recorded and stored as game data in game data store 314 .
- data regarding the performance of the user playing the event is recorded and stored in game data store 316 .
- the data regarding the performance of the user playing an event refers to data indicating how the user played the event, and can vary based on the particular game.
- the data regarding the performance of the user playing an event is sufficient to allow the playing of the event by the user to be played back (replayed) at a later time.
- the performance of the user playing the event can include information regarding the speed of the user's vehicle at various locations on the track, the direction the user's vehicle is pointing at various locations on the track, the position of the user's vehicle at various locations on the track, any obstacles hit by the user's vehicle, and so forth.
- data regarding performance of a user playing an event is recorded, and data regarding one performance of the user playing the event is maintained in game data store 314 or 316 . If the user plays the event multiple times, the performance of the user that is deemed best by the game (or alternatively by the user) is the performance that is maintained. Which performance is deemed best can be determined in different manners, such as being the performance that resulted in the shortest time for the user for the event, the performance that resulted in the highest score for the user for the event, and so forth. Alternatively, data regarding any number of performances of the user playing the event can be maintained in game data store 314 or 316 .
- a user playing a game 304 or 306 there is an object in the game that represents the user.
- a user can optionally have multiple objects that represent the user, and can select one or more of the multiple objects when playing a particular event of a game.
- This object can be, for example, a vehicle (e.g., a car, boat, tank, motorcycle, spaceship, etc.), a character (e.g., a human, alien, monster, etc.), an orb or other symbol, and so forth.
- a user can customize the object that represents the user in various manners.
- the customization of the object typically alters the appearance of the object, although various features or capabilities of the rival can also be altered by the customization (e.g., performance of a vehicle or character can be altered, weaponry or defensive characteristics of a vehicle or character can be altered, etc.).
- a vehicle can be customized to have a particular paint job (e.g., colors, patterns, etc.), to have particular stickers or words written on the vehicle, to include particular components (e.g., chrome door handles, twin exhausts, particular wheels, etc.), and so forth.
- a character can be customized to have particular clothing, to have particular facial features (e.g., a beard, eyeglasses, etc.), to have particular items (e.g., a particular type of gun or other weapon), and so forth.
- Data indicating the manner in which the object representing a user is customized is stored as game data in game data store 314 or 316 . This data can be subsequently retrieved, allowing the customized object that represents the user to be displayed at a later time.
- Games 304 and 306 also support a currency (e.g., in-game currency) or credit that is awarded to users for various actions.
- This currency or credit can be used in different manners, such as to acquire additional customization options for the object representing the user (e.g., different components that can be added to a vehicle, different weapons), acquire additional objects representing the user (e.g., different vehicles), and so forth.
- games 304 and 306 can also support an experience point system that is awarded to users for playing the game. These experience points can be awarded based on an amount of time the user plays the game, the manner in which the user plays the game (e.g., which events the user plays), a distance covered in the game (e.g., how many miles of track the user has raced), and so forth.
- Games 304 and 306 can also support various groups or clubs to which a user can belong. Which groups or clubs a user can join can be determined in different manners. For example, a user may be allowed to join any group or club that he or she desires, a particular user that creates a group or club may determine which other users can join that group or club, users that are already a member of a group or club can vote to determine whether another user can join the group or club, and so forth.
- the groups or clubs that a user is a member of can be stored in game data store 314 or 316 .
- various lists of users can be maintained by asynchronous gameplay coordination module 302 or other systems (e.g., gameplay service 112 of FIG. 1 or other services of or accessible to online gaming service 104 of FIG. 1 ). These lists can be maintained in game data store 314 or 316 , or alternatively other data stores (e.g., implemented as part of or accessible to asynchronous gameplay coordination module 302 ). These lists of users can include, for example, for each particular user a list of other users that the particular user is a friend with. The particular user can provide various inputs identifying another user as a friend, and that other user can optionally confirm that he or she is a friend of the particular user before being added to the list of friends of the particular user.
- Friends of the particular user can also be identified in other manners, such as from a social networking service (e.g., accessible to online gaming service 104 of FIG. 1 ). These lists can also include, for example, for each particular user a list of favorites of the particular user.
- a favorite of a particular user refers to another user that the particular user has identified as a favorite (e.g., another users that the particular user has indicated he or she enjoys playing against or watching play games).
- the other user can optionally confirm that he or she can be a favorite of the particular user before being added to the list of favorites of the particular user.
- Asynchronous gameplay coordination module 302 includes a game data sharing module 322 , a rival selection module 324 , and a notification module 326 .
- asynchronous gameplay coordination module 302 allows a user to asynchronously play an event against another user.
- System 300 is discussed with reference to a user of game 304 playing an event asynchronously against a user of game 306 .
- a user of game 306 can similarly play an event asynchronously against a user of game 304
- a user of game 304 can similarly play an event asynchronously against another user of game 304
- a user of game 306 can similarly play an event asynchronously against another user of game 306 .
- Game data sharing module 322 facilitates sharing of game data for different users, allowing one user to play an event against a previously recorded playing of the event by another user.
- Rival selection module 324 facilitates allowing a user to select another user to play an event against asynchronously.
- Notification module 326 facilitates notifying a user when he or she has been beaten by another user from an asynchronously played event, and facilitates allowing the notified user to play the event again to respond to the challenge.
- Asynchronous gameplay coordination module 302 maintains, for each event of a game, a list of users that have played the event as well as a score for the user playing the event. Module 302 can also maintain various additional information associated with the user, such as a date and/or time the user played the event, a location or position at which the object representing the user started and/or finished when playing the event, and so forth. This list of users can also include (explicitly or inherently) an indicator of the ranking of each user (e.g., a user with a higher score having a higher ranking than a user with a lower score) for the event.
- the score for a user can take various forms, such as a particular time taken to complete the event by the user, a number of points accumulated by the user when playing the event.
- rival selection module 324 accesses a list of identifiers of users that have played the event and their scores for the event.
- rival selection module 324 in response to the user input requesting to select a rival for an event, rival selection module 324 automatically selects a rival for the user to play against asynchronously.
- Rival selection module 324 can use various criteria to automatically select a rival. For example, another user that has the next higher score (e.g., the next faster time) than the requesting user can be automatically selected as the rival.
- another user that has a score a threshold amount higher than the requesting user e.g., a time 2 seconds faster than the requesting user, a time that is 97% of the requesting user's time, etc. is automatically selected as the rival.
- rival selection module 324 in response to the user input requesting to select a rival for an event, displays or otherwise presents at least a portion of the list of identifiers of users that have played the event (and optionally the scores of those users for the event).
- the full list of identifiers can be displayed, or the list of identifiers can be filtered based on various filter criteria so that the identifiers of users that satisfy the filter criteria are displayed. Any manner of grouping users supported by the game 304 or 306 can be used as a filter criteria.
- the requesting user can input a request to have the list of identifiers filtered based on different filter criteria.
- the filter criteria can be users that are friends of the requesting user (e.g., identified to system 300 by the requesting user as a friend of the user, identified as friends by another service (e.g., a social networking service), and so forth), users that are members of a particular group (e.g., a particular car club, a particular fan club), users that the requesting user has identified as favorites, the users with the top scores for the event (e.g., the users with the top 10 or top 50 scores), the users with scores for the event that are at least a threshold amount higher than the requesting user (e.g., a time 2 seconds faster than the requesting user, a time that is 97% of the requesting user's time, etc.), the users with scores for the event that are near the score of the requesting user (e.g., the ten closest in score higher and/or lower than the requesting user, the users with scores that are within a threshold amount higher than the requesting user, etc.), and so forth.
- friends of the requesting user
- the requesting user can input a request to have the list of identifiers filtered based on different filter criteria in different manners, such as by selecting a button or other identifier of filter criteria displayed as part of a user interface, selecting one of multiple buttons on a controller with each button being associated with different filter criteria, selecting a button on a controller that cycles through different filter criteria, and so forth.
- FIGS. 4 and 5 illustrate example user interfaces allowing a user to select a rival to play an event against asynchronously in accordance with one or more embodiments.
- FIG. 4 illustrates an example rival selection user interface (UI) 402 in which a rival has been automatically selected for the requesting user.
- the user having the next higher score is identified as “User G”, and the score (a time of 2:08:47, which refers to 2 minutes, 8 and 47/100 seconds (or alternatively other times, such as 2 hours, 8 minutes, and 47 seconds)) of that user is displayed.
- the identifier of that user can be displayed without the score of that user and/or displayed with various additional information associated with the user (e.g., the date and/or time the user played the event, a location or position at which the object representing the user started and/or finished when playing the event, etc.).
- the user can provide various user inputs to select User G, and begin playing the event against User G asynchronously.
- Rival selection UI 402 can also optionally display an identifier of the requesting user (e.g., identified as “User A”) and/or the score of the requesting user.
- a change rival button 404 is also displayed as part of rival selection UI 402 .
- the requesting user can select change rival button 404 to select a different rival (e.g., based on different filter criteria as discussed above).
- a button 404 it should be noted that a user input requesting to select a different rival can be provided in a variety of different manners (e.g., pressing a particular button on a controller, providing a particular hand gesture, and so forth).
- rival selection UI 502 of FIG. 5 is displayed.
- Rival selection UI 502 lists various users and their associated scores for the event. Alternatively, identifiers of the users can be displayed without the scores of those users and/or displayed with various additional information associated with the users (e.g., for each user the date and/or time the user played the event, a location or position at which the object representing the user started and/or finished when playing the event, etc.). The user can provide various user inputs to select one of the identified users, and begin playing the event against the identified user asynchronously. Rival selection UI 502 can also optionally display an identifier of the requesting user (e.g., identified as “User A”) and/or the score of the requesting user.
- an identifier of the requesting user e.g., identified as “User A”
- rival selection module 324 of FIG. 3 defaults to displaying the users that satisfy the friends filter criteria, although other rival selection module 324 can alternatively default to displaying the users that satisfy other filter criteria.
- Rival selection UI 502 also displays a friends button 504 , a top 10 button 506 , a club 1 button 508 , a near me button 510 , a favorites button 512 , and an automated button 514 .
- Friends button 504 corresponds to friends filter criteria, and in response to user selection of button 504 rival selection UI 502 displays the users that are identified as friends of the requesting user. Friends button 504 is illustrated with cross-hatching to indicate that the friends filter criteria is currently selected.
- Top 10 button 506 corresponds to filter criteria identifying the users with the top 10 scores for the event, and in response to user selection of button 510 rival selection UI 502 displays the users having the top 10 scores for the event.
- Club 1 button 508 corresponds to filter criteria identifying the users in a club or group identified as “Club 1”, and in response to user selection of button 508 rival selection UI 502 displays the users in the club or group identified as “Club 1”.
- Near me button 510 corresponds to filter criteria identifying the users with scores for the event that are near the score of the requesting user, and in response to user selection of button 510 rival selection UI 502 displays the users with scores for the event that are near the score of the requesting user.
- Favorites button 512 corresponds to filter criteria identifying favorites of the requesting user, and in response to user selection of button 512 rival selection UI 502 displays the users that are identified as favorites of the requesting user.
- Automated button 514 corresponds to automatic selection of a rival.
- rival selection UI 502 displays rival selector UI 402 of FIG. 4 .
- filter criteria can be selected in various other manners. For example, in response to repeated user selection of a button on a controller, UI 502 can cycle through displaying users based on different filter criteria (e.g., displaying the users having the top 10 scores for the event in response to a first selection of the button, displaying the users in the club or group identified as “Club 1” in response to the next selection of the button, and so forth).
- filter criteria e.g., displaying the users having the top 10 scores for the event in response to a first selection of the button, displaying the users in the club or group identified as “Club 1” in response to the next selection of the button, and so forth.
- various hand gestures can be used to select a particular filter criteria, cycle through different filter criteria, and so forth.
- game data sharing module 322 facilitates sharing of game data for different users, allowing one user to play an event against a previously recorded playing of the event by another user.
- rival selection module 324 communicates an indication of the rival to game data sharing module 322 .
- Game data sharing module 322 obtains the game data for the rival for the event (e.g., from game data store 316 ), and provides the game data for the rival for the event to game 304 .
- the game data for the rival includes the performance of the rival for the event as well as data indicating the manner in which the object representing the rival is customized.
- Game 304 proceeds to allow the user to play the event, controlling his or her object in the event as if he or she were playing by himself or herself (or in real time against another user). Game 304 also plays back, while the user is playing the event, the object representing the rival based on the performance data that is part of the obtained game data for the rival. Thus, the object representing the rival is displayed while the user is playing the game, providing an experience to the user that is as if the user were playing against the rival in real time even though a recording of the rival's performance is being played back (and the event is thus being played asynchronously). It should be noted that the behavior of the object representing the rival is based on the performance data that is part of the obtained game data for the rival, not a generic or other artificial intelligence (AI) generated behavior.
- AI artificial intelligence
- the object representing the rival played back by game 304 for the event is the object as customized by the rival.
- the object as customized by the rival is displayed as representing the rival.
- the user is provided with an experience of playing against the rival-specific object rather than some common or generic object.
- the event may be a particular track of a car racing game, and the user plays that event by racing his or her car on that particular track.
- the user can select a rival and have the car as customized by the rival displayed as another car that he or she races against on that track.
- the performance of the rival's customized car on the track is the performance of the car on the track when the rival previously raced on that track.
- one or more additional objects that are game-controlled or are based on AI generated behavior can also be displayed.
- one or more additional cars can also be displayed, with the user racing against these one or more additional cars as well as against the rival's customized car.
- the object representing the rival changes appearance based on a proximity in the game between the object representing the rival and an object representing the user. As the objects are closer to one another the object representing the rival becomes more transparent, and as the objects are further away from one another the object representing the rival becomes less transparent (more opaque).
- Various different criteria or algorithms can be used to determine the transparency of the object representing the rival.
- the object representing the rival is at least a threshold distance away from the object representing the user in the game (e.g., 50 feet on a racing track in the game, the length or size of some dimension of the object representing the user in the game, etc.)
- the object representing the rival is opaque.
- the object representing the rival is less than the threshold distance away from the object representing the user in the game, then the object representing the rival is transparent.
- the amount of transparency can be determined linearly (e.g., the transparency increases by 2% for each foot closer than 50 feet the object representing the rival is to the object representing the user in the game), or alternatively using other formulas.
- the object representing the rival comes closer to the object representing the user, the object representing the rival becomes more transparent, and as the object representing the rival moves further from the object representing the user, the object representing the rival becomes less transparent (until the threshold distance is met at which point the object representing the rival becomes opaque).
- a single transparency setting e.g., 80% transparent
- the object representing the rival being opaque if the object is at least a threshold distance away from the object representing the user in the game
- the object representing the rival being transparent (whatever the single transparency setting is) if the object is not at least the threshold distance away from the object representing the user in the game.
- the event may be a particular track of a car racing game, and the user plays that event by racing his or her car on that particular track.
- the rival's car While playing the game asynchronously against a rival, as the rival's car gets closer to the user's car, the rival's car becomes more transparent, thus helping avoid confusion for the user on where his or her car is.
- the rival's car gets further from the user's car, the rival's car becomes less transparent until a point where the rival's car becomes opaque.
- the rival's car is opaque, it appears to the user that he or she is racing against the rival in real time.
- two threshold distances can be used, such as a close threshold distance (e.g., 20 feet on a racing track in the game), and a far threshold distance (e.g., 50 feet on a racking track game). If the object representing the rival is at least the far threshold distance away from the object representing the user in the game, then the object representing the rival is opaque. If the object representing the rival is less than the close threshold distance away from the object representing the user in the game, then the object representing the rival is at a particular transparency level (e.g., 90% transparent). And the transparency level varies between the far and close threshold distances (e.g., increasing linearly or according to some other calculation as the distance changes from being at the far threshold distance towards the close threshold distance).
- a close threshold distance e.g. 20 feet on a racing track in the game
- a far threshold distance e.g. 50 feet on a racking track game.
- the object representing the rival can overlap at times.
- a car representing the user can be at a same location on a racing track as a car representing the rival, or the car representing the user can be close enough to the car representing the rival that the two cars overlap (e.g., the front end of one car is at the same location on the racing track as the back end of the other car).
- the rival's car gets closer to the user's car the rival's car becomes more transparent as discussed above, thus helping avoid confusion for the user on where his or her car is.
- a user can play an event asynchronously against multiple rivals concurrently.
- a user can select multiple rivals, analogous to the selection of a rival as discussed above.
- Game data for each of the multiple rivals is obtained, and while the user is playing the event, for each of the multiple rivals the object representing the rival is played back based on the performance data that is part of the obtained game data for the rival.
- the event may be a particular track of a car racing game, and the user plays that event by racing his or her car on that particular track.
- the user can select multiple rivals and have the cars as customized by the rivals displayed as other cars that he or she races against on that track.
- the performance of the rival's customized car on the track is the performance of the car on the track when the rival previously raced on that track.
- additional information identifying the rival can be displayed to the user while playing the event asynchronously against the rival.
- This additional information can be provided to game 304 along with the game data for the rival.
- an identifier of the rival e.g., a gamer tag or other identifier
- This identifier can be displayed to the user. This identifier can be displayed on or in close proximity to the object representing the rival (e.g., on or above the rival's vehicle), or alternatively elsewhere.
- FIGS. 6 and 7 illustrate an example of the changing of transparency of an object representing a rival in accordance with one or more embodiments.
- FIG. 6 illustrates an example game UI 600 for a racing game including a car 602 representing the user of the game and a car 604 representing the rival.
- game UI 600 the distance between cars 602 and 604 is at least a threshold amount, so car 604 is displayed as opaque.
- FIG. 7 illustrates an example game UI 700 for the race game including cars 602 and 604 in which the distance between cars 602 and 604 is not at least the threshold amount. Accordingly, car 604 is displayed as transparent.
- a user receives a bounty or reward based on his or her performance in playing the event and/or a rating of how difficult the rival is to beat.
- the bounty or reward is provided using the currency or other credit supported by the game.
- the user's performance in playing the event can be measured in different manners, such as based on simply whether the user beat the rival (e.g., finished an event in a shorter amount of time than the rival or otherwise obtained a higher score than the rival) against which the user is playing the event asynchronously.
- the user's performance can also be measured in other manners, such as based on by how much the user beat the rival (e.g., the difference in times or scores for the user and rival for the event), how close the user came to beating the rival (e.g., how close the user's time or score was to the rival's time or score for the event), based on particular actions during performance of the game (e.g., obstacles avoided), and so forth.
- the rating of how difficult the rival is to beat can be measured in different manners, such as a ranking of the rival, a difference in ranking between the user and the rival, and so forth.
- a user may be given a bounty or reward of 50 credits if the user does not beat the rival, but finished the event in an amount of time or with a score that is within a threshold amount of the amount of time or score with which the rival finished the event.
- the user regardless of whether the user receives a bounty or reward for playing an event, the user is still awarded experience points for playing the event.
- the experience points can be awarded in different manners as discussed above, such as based on an amount of time the user played the event, a distance covered in playing the event, and so forth.
- asynchronous gameplay coordination module 302 includes notification module 326 .
- notification module 326 sends a notification to the rival that he or has been beaten.
- Notification module 326 can determine when a rival has been beaten in various manners, such as receiving an indication from a game 304 or 306 that the user beat the rival, receiving an indication from a module of gameplay service 112 of FIG. 1 that the user beat the rival, and so forth.
- the notification sent by notification module 326 can be sent in various manners, such as using a messaging system provided by gameplay service 112 , using a messaging system provided by game 304 or 306 , using a messaging system provided by another service (e.g., a social networking service), and so forth.
- An indication of how to notify a particular user using a particular messaging system can be obtained in various manners, such as being provided by the user and maintained by account access service 110 of FIG. 1 .
- the notification sent by notification module 326 includes a user-selectable link (e.g., a hyperlink) to the event that the rival was beaten in, and the user (the rival) can provide various inputs to select the link.
- the link identifies a location or functionality of gameplay service 112 of FIG. 1 (e.g., of asynchronous gameplay coordination module 120 ), and an identifier of the event that the rival was beaten in is embedded in the link or otherwise associated with the linked-to location or functionality.
- gameplay service 112 In response to user selection of the link, gameplay service 112 notifies a game 304 or 306 to jump to the event that the rival was beaten in, beginning running the game 304 or 306 (or notifying a gaming device 102 of FIG.
- the rival can then play the event, attempting to better his or her score (e.g., obtain a higher score).
- the rival can play the event individually, or alternatively against one or more other users in real time or asynchronously (e.g., the rival can select another user as a rival with which to play the event asynchronously, another user (e.g., the user that beat the rival resulting in the notification being sent by notification module 326 ) that is to be a rival with which to play the event asynchronously can be automatically selected, and so forth).
- the notification can optionally include various additional information in addition to the user-selectable link.
- the notification can include an identifier of the user that beat the rival, an identifier of the event in which the user beat the rival, an indication of the score in the event obtained by the user that beat the rival, an indication of the score in the event obtained by the rival, and so forth.
- the event may be a particular track of a car racing game, and a user plays that event by racing his or her car on that particular track.
- a notification is sent to the rival.
- the rival receives, at his or her gaming device, the notification that he or she has been beaten in the event.
- the notification includes a button or other link that the rival can select, in response to which his or her gaming device begins running the racing game and jumps to the event in which the rival was beaten.
- the rival can then begin playing the event himself or herself in an attempt to complete the track in a shorter amount of time.
- the notification can be displayed to the rival, and with simple selection of the button or link in the notification the rival can begin playing the event in which he or she was beaten.
- a notification can be sent to the rival notifying the rival that he or she was almost beaten in the event and including a user-selectable link (e.g., a hyperlink) to the event that the rival was almost beaten in.
- a user-selectable link e.g., a hyperlink
- FIG. 8 is a flowchart illustrating an example process 800 for implementing the asynchronous gameplay with rival display in accordance with one or more embodiments.
- Process 800 is carried out by a system, such as system 300 of FIG. 3 , and can be implemented in software, firmware, hardware, or combinations thereof.
- Process 800 is shown as a set of acts and is not limited to the order shown for performing the operations of the various acts.
- Process 800 is an example process for implementing the asynchronous gameplay with rival display; additional discussions of implementing the asynchronous gameplay with rival display are included herein with reference to different figures.
- process 800 a user request to select a rival to play against asynchronously for an event is received (act 802 ).
- the event can be an event of a variety of different types of games as discussed above.
- a rival selector user interface is displayed (act 804 ).
- the rival selector user interface includes an identification of one or more users that can be selected, and optionally one or more filter criteria that can be selected as discussed above.
- the rival selector user interface can display a user that has been automatically selected as a rival or alternatively one or more users that satisfy particular filter criteria as discussed above.
- a user selection of one of the one or more users is received (act 806 ).
- the user selection is a selection of one of the users identified in the rival selector user interface as discussed above.
- the selected user is used as the rival to play against asynchronously for the event (act 808 ).
- the user from which the user request is received in act 802 can play against the rival asynchronously for the event, with the previously recorded performance of the rival being played back as the user plays the event as discussed above.
- FIG. 9 is a flowchart illustrating an example process 900 for implementing the asynchronous gameplay with rival display in accordance with one or more embodiments.
- Process 900 is carried out by a system, such as system 300 of FIG. 3 , and can be implemented in software, firmware, hardware, or combinations thereof.
- Process 900 is shown as a set of acts and is not limited to the order shown for performing the operations of the various acts.
- Process 900 is an example process for implementing the asynchronous gameplay with rival display; additional discussions of implementing the asynchronous gameplay with rival display are included herein with reference to different figures.
- a user request to play against a rival asynchronously for an event is received (act 902 ).
- This user request can be, for example, user selection of a rival as discussed above.
- Game data for the rival for the event is obtained (act 904 ).
- the game data can include both a performance of the rival in the event and data indicating a manner in which an object of the rival is customized by the rival as discussed above.
- an object representing the rival is played back based on the obtained game data (act 906 ).
- the object representing the rival is played back as customized by the rival, and based on the performance of the rival in the event as discussed above.
- FIG. 10 is a flowchart illustrating an example process 1000 for using notifications in accordance with one or more embodiments.
- Process 1000 is carried out by a system, such as system 300 of FIG. 3 , and can be implemented in software, firmware, hardware, or combinations thereof.
- Process 1000 is shown as a set of acts and is not limited to the order shown for performing the operations of the various acts.
- Process 1000 is an example process for using notifications; additional discussions of using notifications are included herein with reference to different figures.
- the determination can be made in various manners as discussed above.
- a notification is sent to the rival including a link to the event (act 1004 ).
- the notification can be sent using various messaging systems as discussed above.
- An indication that the link has been selected by the rival is received (act 1006 ).
- the indication can be received, for example, by a gaming device, by an asynchronous gameplay coordination module (or other module of a gameplay service) from a gaming device used by the rival, and so forth.
- the event in which the rival was beaten is jumped to so that the rival can play the event (act 1008 ).
- Jumping to the event includes running the game (if not already running), and the game jumping to the event in which the rival was beaten as discussed above.
- a particular module discussed herein as performing an action includes that particular module itself performing the action, or alternatively that particular module invoking or otherwise accessing another component or module that performs the action (or performs the action in conjunction with that particular module).
- a particular module performing an action includes that particular module itself performing the action and/or another module invoked or otherwise accessed by that particular module performing the action.
- FIG. 11 illustrates an example computing device 1100 that can be configured to implement the asynchronous gameplay with rival display in accordance with one or more embodiments.
- Computing device 1100 can, for example, be a gaming device 102 of FIG. 1 , implement at least part of online gaming service 104 of FIG. 1 , be a gaming device 202 of FIG. 2 , or implement at least part of system 300 of FIG. 3 .
- Computing device 1100 includes one or more processors or processing units 1102 , one or more computer readable media 1104 which can include one or more memory and/or storage components 1106 , one or more input/output (I/O) devices 1108 , and a bus 1110 that allows the various components and devices to communicate with one another.
- Computer readable media 1104 and/or one or more I/O devices 1108 can be included as part of, or alternatively may be coupled to, computing device 1100 .
- Processor 1102 , computer readable media 1104 , one or more of devices 1108 , and/or bus 1110 can optionally be implemented as a single component or chip (e.g., a system on a chip).
- Bus 1110 represents one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, a processor or local bus, and so forth using a variety of different bus architectures.
- Bus 1110 can include wired and/or wireless buses.
- Memory/storage component 1106 represents one or more computer storage media.
- Component 1106 can include volatile media (such as random access memory (RAM)) and/or nonvolatile media (such as read only memory (ROM), Flash memory, optical disks, magnetic disks, and so forth).
- Component 1106 can include fixed media (e.g., RAM, ROM, a fixed hard drive, etc.) as well as removable media (e.g., a Flash memory drive, a removable hard drive, an optical disk, and so forth).
- the techniques discussed herein can be implemented in software, with instructions being executed by one or more processing units 1102 . It is to be appreciated that different instructions can be stored in different components of computing device 1100 , such as in a processing unit 1102 , in various cache memories of a processing unit 1102 , in other cache memories of device 1100 (not shown), on other computer readable media, and so forth. Additionally, it is to be appreciated that the location where instructions are stored in computing device 1100 can change over time.
- One or more input/output devices 1108 allow a user to enter commands and information to computing device 1100 , and also allows information to be presented to the user and/or other components or devices.
- Examples of input devices include a keyboard, a cursor control device (e.g., a mouse), a microphone, a scanner, and so forth.
- Examples of output devices include a display device (e.g., a monitor or projector), speakers, a printer, a network card, and so forth.
- Computer readable media can be any available medium or media that can be accessed by a computing device.
- Computer readable media may comprise “computer storage media” and “communication media.”
- Computer storage media include volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules, or other data.
- Computer storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by a computer.
- Computer storage media refer to media for storage of information in contrast to mere signal transmission, carrier waves, or signals per se. Thus, computer storage media refers to non-signal bearing media, and is not communication media.
- Communication media typically embody computer readable instructions, data structures, program modules, or other data in a modulated data signal, such as carrier wave or other transport mechanism. Communication media also include any information delivery media.
- modulated data signal means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal.
- communication media include wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared, and other wireless media. Combinations of any of the above are also included within the scope of computer readable media.
- any of the functions or techniques described herein can be implemented using software, firmware, hardware (e.g., fixed logic circuitry), manual processing, or a combination of these implementations.
- the terms “module” and “component” as used herein generally represent software, firmware, hardware, or combinations thereof.
- the module or component represents program code that performs specified tasks when executed on a processor (e.g., CPU or CPUs).
- the program code can be stored in one or more computer readable memory devices, further description of which may be found with reference to FIG. 11 .
- the module or component represents a functional block or other hardware that performs specified tasks.
- the module or component can be an application-specific integrated circuit (ASIC), field-programmable gate array (FPGA), complex programmable logic device (CPLD), and so forth.
- ASIC application-specific integrated circuit
- FPGA field-programmable gate array
- CPLD complex programmable logic device
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- General Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
A user request to select a rival to play against asynchronously for an event is received. In response to the user request, a rival selector user interface is displayed. The rival selector UI includes an identification of one or more users that can be selected and one or more filter criteria that can be selected to change which users are identified in the rival selector UI. The user selects one of the identified users that is used as the rival to play against asynchronously for the event. Game data for the rival for the event is obtained, the game data including both a performance of the rival in the event and data indicating a manner in which an object of the rival is customized by the rival. While the user is playing the event, the object as customized by the rival is played back based on the performance data.
Description
- This application claims priority to U.S. Provisional Application Ser. No. 61/542,256, filed Oct. 2, 2011, entitled “Asynchronous Gameplay with Rival Display”, to Jonathan P. Knoles, et al., the disclosure of which is hereby incorporated by reference herein in its entirety.
- Online gaming services allow users to play games by themselves, or to play games together with one or more other users. The online gaming services typically maintain a leader board that ranks the various users of a game based on the users' scores obtained while playing a game. Although such leader boards are useful to know how a user ranks against other users in a game, they are not without their problems. One such problem is that if a user desires to try to beat another user by obtaining a higher score for a game, the user is typically presented with simply the score to beat. This creates an impersonal situation for the user, providing an experience for the user that is more of individual gameplay rather than playing the game with another user.
- This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.
- In accordance with one or more aspects, a user request to select a rival to play against asynchronously for an event is received. In response to the user request, a rival selector user interface is displayed. The rival selector user interface includes an identification of one or more users that can be selected. A user selection of one of the one or more users is received, and the selected user is used as the rival to play against asynchronously for the event.
- In accordance with one or more aspects, a user request to play against a rival asynchronously for an event is received. Game data for the rival for the event is obtained, the game data including both a performance of the rival in the event and data indicating a manner in which an object of the rival is customized by the rival. While the user is playing the event, the object as customized by the rival is played back based on the performance data.
- The same numbers are used throughout the drawings to reference like features.
-
FIG. 1 illustrates an example system implementing the asynchronous gameplay with rival display in accordance with one or more embodiments. -
FIG. 2 illustrates an example gaming device and display in additional detail in accordance with one or more embodiments. -
FIG. 3 illustrates an example system implementing the asynchronous gameplay with rival display in accordance with one or more embodiments. -
FIGS. 4 and 5 illustrate example user interfaces allowing a user to select a rival to play an event against asynchronously in accordance with one or more embodiments. -
FIGS. 6 and 7 illustrate an example of the changing of transparency of an object representing a rival in accordance with one or more embodiments. -
FIG. 8 is a flowchart illustrating an example process for implementing the asynchronous gameplay with rival display in accordance with one or more embodiments. -
FIG. 9 is a flowchart illustrating another example process for implementing the asynchronous gameplay with rival display in accordance with one or more embodiments. -
FIG. 10 is a flowchart illustrating an example process for using notifications in accordance with one or more embodiments. -
FIG. 11 illustrates an example computing device that can be configured to implement the asynchronous gameplay with rival display in accordance with one or more embodiments. - Asynchronous gameplay with rival display is discussed herein. When a user plays an event in a game, data regarding the user's performance in that event is stored. A particular user can select another user (a rival) to play against asynchronously in the event. A list identifying various other users that have played the event can be displayed to the particular user, and the list can be filtered in various manners (e.g., based on friends of the particular user, scores of the users, and so forth). The particular user selects another user in the list as a rival, and an object representing the rival (e.g., the rival's vehicle) is displayed while the particular user plays the event. The object representing the rival is displayed with the rival's performance in the event, providing the particular user with the experience of playing the event with the rival even though the rival actually played the event at an earlier time. The object representing the rival is displayed with customizations made by the rival (e.g., particular paint colors or designs for a vehicle, particular stickers added to a vehicle, and so forth). If the particular user beats the score of the rival in the event, then a currency or other credit is awarded to the particular user. The currency or credit awarded is based on the particular user's performance and the score of the rival in the event. Additionally, if the particular user beats the score of the rival in the event, then a notification can be provided to the rival notifying him or her that he or she has been beaten in the event by the particular user. The notification includes a link that can be selected by the rival to jump to the event, and to play the event again in an attempt to obtain a better score than the particular user.
-
FIG. 1 illustrates anexample system 100 implementing the asynchronous gameplay with rival display in accordance with one or more embodiments.System 100 includes multiple (x)gaming devices 102 and anonline gaming service 104 that can communicate with one another via anetwork 106. Network 106 can be a variety of different networks, including the Internet, a local area network (LAN), a wide area network (WAN), a personal area network (PAN), a phone network, an intranet, other public and/or proprietary networks, combinations thereof, and so forth. - Each
gaming device 102 can be a variety of different types of devices that allow users to play games (such as racing games, sports games, strategy games, adventure games, simulation games, and so forth). Different ones ofgaming devices 102 can be the same or different types of devices. For example, agaming device 102 can be a game console, a cellular or other wireless phone, a television or other display device, a set-top box communicatively coupled to a display device, a desktop computer, a laptop or netbook computer, a tablet or notepad computer, a mobile station, an entertainment appliance, an automotive computer, and so forth. -
Online gaming service 104 facilitates playing of one or more different games by users ofgaming devices 102.Gaming service 104 is referred to as being an online service due togaming devices 102 accessing service 104 (and/or other gaming devices 102) vianetwork 106.Online gaming service 104 includes anaccount access service 110, agameplay service 112, and optionally amatchmaking service 114, each of which can communicate with one another.Services online gaming service 104 and/or viagaming devices 102. -
Account access service 110 provides various functionality supporting user accounts ofonline gaming service 104. Different users and/orgaming devices 102 typically have different accounts withonline gaming service 104, and can log into their accounts viaaccount access service 110. A user orgaming device 102 logs into an account providing credential information, such as an id (e.g., user name, email address, gamer tag, etc.) and password, a digital certificate or other data from a smartcard, and so forth.Account access service 110 verifies or authenticates the credential information, allowing a user orgaming device 102 to access the account if the credential information is verified or authenticated, and prohibiting the user orgaming device 102 from accessing the account if the credential information is not verified or is not authenticated. Once a user's credential information is authenticated, the user can use the other services provided byonline gamine service 104.Account access service 110 can also provide various additional account management functionality, such as permitting changes to the credential information, establishing new accounts, removing accounts, and so forth. -
Gameplay service 112 provides various functionality supporting playing of one or more different games by users ofgaming devices 102. Different game titles can be supported by gameplay service 112 (e.g., one or more different racing game titles, one or more different sports game titles, one or more different strategy game titles, and so forth). A game title refers to a particular set of instructions that implement a game when executed (e.g., a set of instructions for a racing game from a particular vendor, a set of instructions for a particular tennis game from a particular vendor, etc.). A particular running of a game title is also referred to as a game. Multiple games of the same game title can be played concurrently by different users, each game being a separate running of the game title. Games can be run and played as single-player games in which a single user of agaming device 102 is playing the game and controlling one or more characters or other objects in the game, with other characters or objects in the game being controlled by the game itself. Games can also be run and played as multi-player games in which multiple users of one ormore gaming devices 102 are playing the same game and each user is controlling one or more characters or other objects in the game. In multi-player games one or more additional characters or other objects can also be controlled by the game itself. - A game is typically run by executing one or more programs. The programs that are executed to run these games can be run on
gaming devices 102 and/orgameplay service 112.Gaming devices 102 can execute one or more programs for the game, communicating withgameplay service 112 to facilitate communication between users ofgaming devices 102 while playing games and/or to provide or obtain additional data (and/or programs) for playing the game. Alternatively (or additionally),gameplay service 112 can execute one or more programs for the game, receiving inputs from users ofgaming devices 102 and returning data indicating outputs to be generated for display or other presentation to the users ofgaming devices 102. - In one or more embodiments, games are programs executed on
gaming devices 102 andgameplay service 112 manages communication betweendifferent gaming devices 102. In other embodiments, games are programs executed ongaming devices 102 andgameplay service 112 facilitates establishing communication betweendifferent gaming devices 102. After communication between twogaming devices 102 is established, communication can be made between those twogaming devices 102 without involvinggameplay service 112. -
Gameplay service 112 includes an asynchronousgameplay coordination module 120. While playing a game, there is an object in the game that represents the user. This object can vary based on the type of game, such as being a vehicle (e.g., a car, plane, boat, spaceship, etc.) in a racing game, being a graphical representation of a character (e.g., a human, alien, monster, etc.) in a shooting game, and so forth. Asynchronousgameplay coordination module 120 facilitates allowing users to play events of games against one another asynchronously. Users playing events of games against one another asynchronously refers to the users playing the events of the games at different times. One user (e.g., user A) plays an event in a game and user A's performance in the event is recorded. The other user (e.g., user B) can play that same event at a later time, playing against the recording of user A's performance. Thus, both users play the same event, but do so at different times. The users can be both logged in toonline gaming service 110 but play an event of a game at different times and/or one user can play an event of a game when the other user is not logged intoonline gaming service 110. Although illustrated as being included as part ofgameplay service 112, asynchronousgameplay coordination module 120 can alternatively be implemented at least in part ingaming devices 102. -
Matchmaking service 114, when included inonline gaming service 104, provides various functionality facilitating the finding of other users with which a user ofgaming device 102 can play a game.Matchmaking service 114 identifies other users with which a particular user can play a game in a variety of different manners, such as based on physical locations of thegaming devices 102, skill levels of the users ofgaming devices 102, and/or other characteristics ofgaming devices 102 and/or the users ofgaming devices 102.Matchmaking service 114 can identify other users based on user accounts that accountaccess service 110 is aware of, based on users logged into their accounts at a particular time (e.g., as indicated by account access service 110), based on accounts from other services (e.g., social networking services thatmatchmaking service 114 can communicate with), and so forth.Matchmaking service 114 can identify other users with which a user ofgaming device 102 can play a game across the same and/or different types of gaming devices 102 (e.g., one or more users of a desktop computer and one or more users of a game console, one or more users of a phone and one or more users of a game console, etc.). Similarly,matchmaking service 114 can identify other users with which a user ofgaming device 102 can play a game across the same and/or different services (e.g., one or more users ofgameplay service 112 and one or more users of another service of online gaming service 104). Asynchronousgameplay coordination module 120 can also facilitate the finding of other users with which a user ofgaming device 102 can play an event of a game asynchronously as discussed in more detail below. Any finding of other users bymatchmaking service 114 is in addition to asynchronousgameplay coordination module 120 finding other users. - Each of
services services services - Additionally, although
services gameplay service 112 andmatchmaking service 114 can be implemented as a single service. Furthermore, the functionality of one or more ofservices online gaming service 104 can be separated into multiple services. For example,online gaming service 104 may includeaccount access service 110 andgameplay service 112, and a different service (e.g., a social networking service) can includematchmaking service 114. -
FIG. 2 illustrates an example gaming device and display in additional detail in accordance with one or more embodiments.FIG. 2 illustrates agaming device 202, which can be agaming device 102 ofFIG. 1 , coupled to a display device 204 (e.g., a television).Gaming device 202 anddisplay device 204 can communicate via a wired and/or wireless connection.Gaming device 202 includes an asynchronousgameplay coordination module 212 and an input/output (I/O)module 214. Asynchronousgameplay coordination module 212 is analogous to asynchronousgameplay coordination module 120 ofFIG. 1 , although is illustrated as implemented ingaming device 202 rather than in an online gaming service. - Input/
output module 214 provides functionality relating to recognition of inputs and/or provision of (e.g., display or other presentation of) outputs bygaming device 202. For example, input/output module 214 can be configured to receive inputs from a keyboard or mouse, to identify gestures and cause operations to be performed that correspond to the gestures, and so forth. The inputs can be detected by input/output module 214 in a variety of different ways. - Input/
output module 214 can be configured to receive one or more inputs via touch interaction with a hardware device, such as acontroller 216 as illustrated. Touch interaction may involve pressing a button, moving a joystick, movement across a track pad, use of a touch screen ofdisplay device 204 or controller 216 (e.g., detection of a finger of a user's hand or a stylus), other physical inputs recognized by a motion detection component (e.g., shaking a device, rotating a device, etc.), and so forth. Recognition of the touch inputs can be leveraged by input/output module 214 to interact with a user interface output bygaming device 202, such as to interact with a game, change one or more settings ofgaming device 202, and so forth. A variety of other hardware devices are also contemplated that involve touch interaction with the device. Examples of such hardware devices include a cursor control device (e.g., a mouse), a remote control (e.g., a television remote control), a mobile communication device (e.g., a wireless phone configured to control one or more operations of gaming device 202), and other devices that involve touch on the part of a user or object. - Input/
output module 214 can also be configured to receive one or more inputs in other manners that do not involve touch or physical contact. For example, input/output module 214 can be configured to receive audio inputs through use of a microphone (e.g., included as part of or coupled to gaming device 202). By way of another example, input/output module 214 can be configured to recognize gestures, presented objects, images, and so forth through the use of acamera 218. The images can also be leveraged bygaming device 202 to provide a variety of other functionality, such as techniques to identify particular users (e.g., through facial recognition), objects, and so on. -
Gaming device 202 can also leveragecamera 218 to perform skeletal mapping along with feature extraction of particular points of a human body (e.g., 48 skeletal points) to track one or more users (e.g., four users simultaneously) to perform motion analysis. For instance,camera 218 can capture images that are analyzed by input/output module 214 or a game running ongaming device 202 to recognize one or more motions made by a user, including what body part is used to make the motion as well as which user made the motion. The motions can be identified as gestures by input/output module 214 or the running game to initiate a corresponding operation. -
FIG. 3 illustrates anexample system 300 implementing the asynchronous gameplay with rival display in accordance with one or more embodiments.System 300 includes an asynchronous gameplay coordination module 302 (which can be an asynchronousgameplay coordination module 120 ofFIG. 1 or an asynchronousgameplay coordination module 212 ofFIG. 2 ), agame 304 and agame 306.System 300 can be implemented in a variety of different devices. For example,system 300 can be implemented ingaming devices 102 ofFIG. 1 , inonline gaming service 104 ofFIG. 1 , or partly ingaming devices 102 and partly inonline gaming service 104. -
Game 304 includes one ormore game modules 308, andgame 306 includes one ormore game modules 310.Games game modules games game modules - In one or more embodiments asynchronous
gameplay coordination module 302 is implemented separately from, and as part of a service made available to,games gameplay coordination module 302 can be implemented (at least in part) ingames modules 308 and/or 310 can include one or more modules of asynchronousgameplay coordination module 302, or can implement at least part of the functionality discussed herein as performed by asynchronousgameplay coordination module 302. -
Game 304 stores various game data ingame data store 314, andgame 306 stores various game data ingame data store 316. During operation, various information regarding a user can be stored as game data, such as the user's performance in various events of the game, items or points accumulated by the user during gameplay, and so forth. Although illustrated as separate game data stores, it should be noted thatgame data store 314 andgame data store 316 can be the same game data store (e.g., implemented by online gaming service 104). -
Games - As a user plays an event of a
game 304, data regarding the performance of the user playing the event is recorded and stored as game data ingame data store 314. Similarly, as a user plays an event of agame 306, data regarding the performance of the user playing the event is recorded and stored ingame data store 316. The data regarding the performance of the user playing an event refers to data indicating how the user played the event, and can vary based on the particular game. The data regarding the performance of the user playing an event is sufficient to allow the playing of the event by the user to be played back (replayed) at a later time. For example, if the event is a track in a racing game, then the performance of the user playing the event can include information regarding the speed of the user's vehicle at various locations on the track, the direction the user's vehicle is pointing at various locations on the track, the position of the user's vehicle at various locations on the track, any obstacles hit by the user's vehicle, and so forth. - In one or more embodiments, data regarding performance of a user playing an event is recorded, and data regarding one performance of the user playing the event is maintained in
game data store game data store - As discussed above, for a user playing a
game game data store -
Games - In addition to a currency or credit,
games -
Games game data store - It should be noted that various lists of users can be maintained by asynchronous
gameplay coordination module 302 or other systems (e.g.,gameplay service 112 ofFIG. 1 or other services of or accessible toonline gaming service 104 ofFIG. 1 ). These lists can be maintained ingame data store online gaming service 104 ofFIG. 1 ). These lists can also include, for example, for each particular user a list of favorites of the particular user. A favorite of a particular user refers to another user that the particular user has identified as a favorite (e.g., another users that the particular user has indicated he or she enjoys playing against or watching play games). The other user can optionally confirm that he or she can be a favorite of the particular user before being added to the list of favorites of the particular user. - Asynchronous
gameplay coordination module 302 includes a gamedata sharing module 322, arival selection module 324, and anotification module 326. Generally, asynchronousgameplay coordination module 302 allows a user to asynchronously play an event against another user.System 300 is discussed with reference to a user ofgame 304 playing an event asynchronously against a user ofgame 306. However, it should be noted that a user ofgame 306 can similarly play an event asynchronously against a user ofgame 304, that a user ofgame 304 can similarly play an event asynchronously against another user ofgame 304, or that a user ofgame 306 can similarly play an event asynchronously against another user ofgame 306. - Game
data sharing module 322 facilitates sharing of game data for different users, allowing one user to play an event against a previously recorded playing of the event by another user.Rival selection module 324 facilitates allowing a user to select another user to play an event against asynchronously.Notification module 326 facilitates notifying a user when he or she has been beaten by another user from an asynchronously played event, and facilitates allowing the notified user to play the event again to respond to the challenge. - When a user desires to asynchronously play an event against another user (also referred to as a rival), the user provides an input requesting to select a rival. Asynchronous
gameplay coordination module 302 maintains, for each event of a game, a list of users that have played the event as well as a score for the user playing the event.Module 302 can also maintain various additional information associated with the user, such as a date and/or time the user played the event, a location or position at which the object representing the user started and/or finished when playing the event, and so forth. This list of users can also include (explicitly or inherently) an indicator of the ranking of each user (e.g., a user with a higher score having a higher ranking than a user with a lower score) for the event. The score for a user can take various forms, such as a particular time taken to complete the event by the user, a number of points accumulated by the user when playing the event. In response to the user input requesting to select a rival for an event,rival selection module 324 accesses a list of identifiers of users that have played the event and their scores for the event. - In one or more embodiments, in response to the user input requesting to select a rival for an event,
rival selection module 324 automatically selects a rival for the user to play against asynchronously.Rival selection module 324 can use various criteria to automatically select a rival. For example, another user that has the next higher score (e.g., the next faster time) than the requesting user can be automatically selected as the rival. By way of another example, another user that has a score a threshold amount higher than the requesting user (e.g., a time 2 seconds faster than the requesting user, a time that is 97% of the requesting user's time, etc.) is automatically selected as the rival. - In other embodiments, in response to the user input requesting to select a rival for an event,
rival selection module 324 displays or otherwise presents at least a portion of the list of identifiers of users that have played the event (and optionally the scores of those users for the event). The full list of identifiers can be displayed, or the list of identifiers can be filtered based on various filter criteria so that the identifiers of users that satisfy the filter criteria are displayed. Any manner of grouping users supported by thegame system 300 by the requesting user as a friend of the user, identified as friends by another service (e.g., a social networking service), and so forth), users that are members of a particular group (e.g., a particular car club, a particular fan club), users that the requesting user has identified as favorites, the users with the top scores for the event (e.g., the users with the top 10 or top 50 scores), the users with scores for the event that are at least a threshold amount higher than the requesting user (e.g., a time 2 seconds faster than the requesting user, a time that is 97% of the requesting user's time, etc.), the users with scores for the event that are near the score of the requesting user (e.g., the ten closest in score higher and/or lower than the requesting user, the users with scores that are within a threshold amount higher than the requesting user, etc.), and so forth. The requesting user can input a request to have the list of identifiers filtered based on different filter criteria in different manners, such as by selecting a button or other identifier of filter criteria displayed as part of a user interface, selecting one of multiple buttons on a controller with each button being associated with different filter criteria, selecting a button on a controller that cycles through different filter criteria, and so forth. -
FIGS. 4 and 5 illustrate example user interfaces allowing a user to select a rival to play an event against asynchronously in accordance with one or more embodiments.FIG. 4 illustrates an example rival selection user interface (UI) 402 in which a rival has been automatically selected for the requesting user. The user having the next higher score is identified as “User G”, and the score (a time of 2:08:47, which refers to 2 minutes, 8 and 47/100 seconds (or alternatively other times, such as 2 hours, 8 minutes, and 47 seconds)) of that user is displayed. Alternatively, the identifier of that user can be displayed without the score of that user and/or displayed with various additional information associated with the user (e.g., the date and/or time the user played the event, a location or position at which the object representing the user started and/or finished when playing the event, etc.). The user can provide various user inputs to select User G, and begin playing the event against User G asynchronously.Rival selection UI 402 can also optionally display an identifier of the requesting user (e.g., identified as “User A”) and/or the score of the requesting user. - A
change rival button 404 is also displayed as part ofrival selection UI 402. The requesting user can select changerival button 404 to select a different rival (e.g., based on different filter criteria as discussed above). Although illustrated as abutton 404, it should be noted that a user input requesting to select a different rival can be provided in a variety of different manners (e.g., pressing a particular button on a controller, providing a particular hand gesture, and so forth). In response to selection of thechange rival button 404,rival selection UI 502 ofFIG. 5 is displayed. -
Rival selection UI 502 lists various users and their associated scores for the event. Alternatively, identifiers of the users can be displayed without the scores of those users and/or displayed with various additional information associated with the users (e.g., for each user the date and/or time the user played the event, a location or position at which the object representing the user started and/or finished when playing the event, etc.). The user can provide various user inputs to select one of the identified users, and begin playing the event against the identified user asynchronously.Rival selection UI 502 can also optionally display an identifier of the requesting user (e.g., identified as “User A”) and/or the score of the requesting user. The users inrival selection UI 502 satisfy one or more filter criteria, which is the friends filter criteria in the illustrated example. In one or more embodimentsrival selection module 324 ofFIG. 3 defaults to displaying the users that satisfy the friends filter criteria, although otherrival selection module 324 can alternatively default to displaying the users that satisfy other filter criteria. -
Rival selection UI 502 also displays afriends button 504, a top 10button 506, aclub 1button 508, a near mebutton 510, afavorites button 512, and anautomated button 514.Friends button 504 corresponds to friends filter criteria, and in response to user selection ofbutton 504rival selection UI 502 displays the users that are identified as friends of the requesting user.Friends button 504 is illustrated with cross-hatching to indicate that the friends filter criteria is currently selected. -
Top 10button 506 corresponds to filter criteria identifying the users with the top 10 scores for the event, and in response to user selection ofbutton 510rival selection UI 502 displays the users having the top 10 scores for the event.Club 1button 508 corresponds to filter criteria identifying the users in a club or group identified as “Club 1”, and in response to user selection ofbutton 508rival selection UI 502 displays the users in the club or group identified as “Club 1”. Near mebutton 510 corresponds to filter criteria identifying the users with scores for the event that are near the score of the requesting user, and in response to user selection ofbutton 510rival selection UI 502 displays the users with scores for the event that are near the score of the requesting user.Favorites button 512 corresponds to filter criteria identifying favorites of the requesting user, and in response to user selection ofbutton 512rival selection UI 502 displays the users that are identified as favorites of the requesting user. -
Automated button 514 corresponds to automatic selection of a rival. In response to user selection ofbutton 514rival selection UI 502 displaysrival selector UI 402 ofFIG. 4 . - Although illustrated as separate buttons in the user interface that can be selected by a user, filter criteria can be selected in various other manners. For example, in response to repeated user selection of a button on a controller,
UI 502 can cycle through displaying users based on different filter criteria (e.g., displaying the users having the top 10 scores for the event in response to a first selection of the button, displaying the users in the club or group identified as “Club 1” in response to the next selection of the button, and so forth). By way of another example, various hand gestures can be used to select a particular filter criteria, cycle through different filter criteria, and so forth. - Returning to
FIG. 3 , gamedata sharing module 322 facilitates sharing of game data for different users, allowing one user to play an event against a previously recorded playing of the event by another user. In response to a user ofgame 304 selecting a rival,rival selection module 324 communicates an indication of the rival to gamedata sharing module 322. Gamedata sharing module 322 in turn obtains the game data for the rival for the event (e.g., from game data store 316), and provides the game data for the rival for the event togame 304. The game data for the rival includes the performance of the rival for the event as well as data indicating the manner in which the object representing the rival is customized. -
Game 304 proceeds to allow the user to play the event, controlling his or her object in the event as if he or she were playing by himself or herself (or in real time against another user).Game 304 also plays back, while the user is playing the event, the object representing the rival based on the performance data that is part of the obtained game data for the rival. Thus, the object representing the rival is displayed while the user is playing the game, providing an experience to the user that is as if the user were playing against the rival in real time even though a recording of the rival's performance is being played back (and the event is thus being played asynchronously). It should be noted that the behavior of the object representing the rival is based on the performance data that is part of the obtained game data for the rival, not a generic or other artificial intelligence (AI) generated behavior. - Additionally, the object representing the rival played back by
game 304 for the event is the object as customized by the rival. Thus, rather than displaying a generic object as representing the rival, the object as customized by the rival is displayed as representing the rival. Thus, the user is provided with an experience of playing against the rival-specific object rather than some common or generic object. - For example, the event may be a particular track of a car racing game, and the user plays that event by racing his or her car on that particular track. The user can select a rival and have the car as customized by the rival displayed as another car that he or she races against on that track. The performance of the rival's customized car on the track is the performance of the car on the track when the rival previously raced on that track.
- Furthermore, in addition to the object representing the rival, one or more additional objects that are game-controlled or are based on AI generated behavior can also be displayed. Continuing with the previous example, in addition to the rival's customized car, one or more additional cars can also be displayed, with the user racing against these one or more additional cars as well as against the rival's customized car.
- In one or more embodiments, the object representing the rival changes appearance based on a proximity in the game between the object representing the rival and an object representing the user. As the objects are closer to one another the object representing the rival becomes more transparent, and as the objects are further away from one another the object representing the rival becomes less transparent (more opaque).
- Various different criteria or algorithms can be used to determine the transparency of the object representing the rival. In one or more embodiments, if the object representing the rival is at least a threshold distance away from the object representing the user in the game (e.g., 50 feet on a racing track in the game, the length or size of some dimension of the object representing the user in the game, etc.), then the object representing the rival is opaque. If the object representing the rival is less than the threshold distance away from the object representing the user in the game, then the object representing the rival is transparent. The amount of transparency can be determined linearly (e.g., the transparency increases by 2% for each foot closer than 50 feet the object representing the rival is to the object representing the user in the game), or alternatively using other formulas. Thus, as the object representing the rival comes closer to the object representing the user, the object representing the rival becomes more transparent, and as the object representing the rival moves further from the object representing the user, the object representing the rival becomes less transparent (until the threshold distance is met at which point the object representing the rival becomes opaque). Alternatively, a single transparency setting (e.g., 80% transparent) may be used, with the object representing the rival being opaque if the object is at least a threshold distance away from the object representing the user in the game, and the object representing the rival being transparent (whatever the single transparency setting is) if the object is not at least the threshold distance away from the object representing the user in the game.
- For example, the event may be a particular track of a car racing game, and the user plays that event by racing his or her car on that particular track. While playing the game asynchronously against a rival, as the rival's car gets closer to the user's car, the rival's car becomes more transparent, thus helping avoid confusion for the user on where his or her car is. However, as the rival's car gets further from the user's car, the rival's car becomes less transparent until a point where the rival's car becomes opaque. Thus, when the rival's car is opaque, it appears to the user that he or she is racing against the rival in real time.
- Alternatively, other criteria or algorithms can be used to determine the transparency of the object representing the rival. For example, two threshold distances can be used, such as a close threshold distance (e.g., 20 feet on a racing track in the game), and a far threshold distance (e.g., 50 feet on a racking track game). If the object representing the rival is at least the far threshold distance away from the object representing the user in the game, then the object representing the rival is opaque. If the object representing the rival is less than the close threshold distance away from the object representing the user in the game, then the object representing the rival is at a particular transparency level (e.g., 90% transparent). And the transparency level varies between the far and close threshold distances (e.g., increasing linearly or according to some other calculation as the distance changes from being at the far threshold distance towards the close threshold distance).
- It should be noted that, because
game 304 plays back, while the user is playing the event, the object representing the rival based on the performance data that is part of the obtained game data for the rival, the object representing the user and the object representing the rival can overlap at times. For example, a car representing the user can be at a same location on a racing track as a car representing the rival, or the car representing the user can be close enough to the car representing the rival that the two cars overlap (e.g., the front end of one car is at the same location on the racing track as the back end of the other car). However, as the rival's car gets closer to the user's car the rival's car becomes more transparent as discussed above, thus helping avoid confusion for the user on where his or her car is. - It should also be noted that a user can play an event asynchronously against multiple rivals concurrently. A user can select multiple rivals, analogous to the selection of a rival as discussed above. Game data for each of the multiple rivals is obtained, and while the user is playing the event, for each of the multiple rivals the object representing the rival is played back based on the performance data that is part of the obtained game data for the rival. Thus, for example, the event may be a particular track of a car racing game, and the user plays that event by racing his or her car on that particular track. The user can select multiple rivals and have the cars as customized by the rivals displayed as other cars that he or she races against on that track. For each of the multiple rivals, the performance of the rival's customized car on the track is the performance of the car on the track when the rival previously raced on that track.
- In one or more embodiments, additional information identifying the rival can be displayed to the user while playing the event asynchronously against the rival. This additional information can be provided to
game 304 along with the game data for the rival. For example, an identifier of the rival (e.g., a gamer tag or other identifier) can be displayed to the user. This identifier can be displayed on or in close proximity to the object representing the rival (e.g., on or above the rival's vehicle), or alternatively elsewhere. -
FIGS. 6 and 7 illustrate an example of the changing of transparency of an object representing a rival in accordance with one or more embodiments.FIG. 6 illustrates anexample game UI 600 for a racing game including acar 602 representing the user of the game and acar 604 representing the rival. Ingame UI 600, the distance betweencars car 604 is displayed as opaque. However,FIG. 7 illustrates anexample game UI 700 for the racegame including cars cars car 604 is displayed as transparent. - Returning to
FIG. 3 , in one or more embodiments a user receives a bounty or reward based on his or her performance in playing the event and/or a rating of how difficult the rival is to beat. The bounty or reward is provided using the currency or other credit supported by the game. The user's performance in playing the event can be measured in different manners, such as based on simply whether the user beat the rival (e.g., finished an event in a shorter amount of time than the rival or otherwise obtained a higher score than the rival) against which the user is playing the event asynchronously. The user's performance can also be measured in other manners, such as based on by how much the user beat the rival (e.g., the difference in times or scores for the user and rival for the event), how close the user came to beating the rival (e.g., how close the user's time or score was to the rival's time or score for the event), based on particular actions during performance of the game (e.g., obstacles avoided), and so forth. The rating of how difficult the rival is to beat can be measured in different manners, such as a ranking of the rival, a difference in ranking between the user and the rival, and so forth. - The amount of the bounty or reward can vary, being based at least in part on the user's performance in playing the event and/or a rating of how difficult the rival is to beat. For example, a user may be given a bounty or reward of 50,000 credits if the rival had a ranking of 1, but a reward of only 1,000 credits if the rival had a ranking of 100. By way of another example, a user may be given a bounty or reward equal to the difference in rankings multiplied by 10 (e.g., if the user has a ranking of 900 and the rival has a ranking of 850, then the bounty or reward would be 500 credits (900−850=50, multiplied by 10 to get 500 credits)). By way of yet another example, a user may be given a bounty or reward of 50 credits if the user does not beat the rival, but finished the event in an amount of time or with a score that is within a threshold amount of the amount of time or score with which the rival finished the event.
- In one or more embodiments, regardless of whether the user receives a bounty or reward for playing an event, the user is still awarded experience points for playing the event. The experience points can be awarded in different manners as discussed above, such as based on an amount of time the user played the event, a distance covered in playing the event, and so forth.
- Additionally, asynchronous
gameplay coordination module 302 includesnotification module 326. When a user beats a rival in an event,notification module 326 sends a notification to the rival that he or has been beaten.Notification module 326 can determine when a rival has been beaten in various manners, such as receiving an indication from agame gameplay service 112 ofFIG. 1 that the user beat the rival, and so forth. The notification sent bynotification module 326 can be sent in various manners, such as using a messaging system provided bygameplay service 112, using a messaging system provided bygame account access service 110 ofFIG. 1 . - The notification sent by
notification module 326 includes a user-selectable link (e.g., a hyperlink) to the event that the rival was beaten in, and the user (the rival) can provide various inputs to select the link. The link identifies a location or functionality ofgameplay service 112 ofFIG. 1 (e.g., of asynchronous gameplay coordination module 120), and an identifier of the event that the rival was beaten in is embedded in the link or otherwise associated with the linked-to location or functionality. In response to user selection of the link,gameplay service 112 notifies agame game 304 or 306 (or notifying agaming device 102 ofFIG. 1 to begin running thegame 304 or 306) if the game is not already running. The rival can then play the event, attempting to better his or her score (e.g., obtain a higher score). The rival can play the event individually, or alternatively against one or more other users in real time or asynchronously (e.g., the rival can select another user as a rival with which to play the event asynchronously, another user (e.g., the user that beat the rival resulting in the notification being sent by notification module 326) that is to be a rival with which to play the event asynchronously can be automatically selected, and so forth). - The notification can optionally include various additional information in addition to the user-selectable link. For example, the notification can include an identifier of the user that beat the rival, an identifier of the event in which the user beat the rival, an indication of the score in the event obtained by the user that beat the rival, an indication of the score in the event obtained by the rival, and so forth.
- For example, the event may be a particular track of a car racing game, and a user plays that event by racing his or her car on that particular track. In response to the user beating the rival (e.g., completing the track in a shorter amount of time than the rival), a notification is sent to the rival. The rival receives, at his or her gaming device, the notification that he or she has been beaten in the event. The notification includes a button or other link that the rival can select, in response to which his or her gaming device begins running the racing game and jumps to the event in which the rival was beaten. The rival can then begin playing the event himself or herself in an attempt to complete the track in a shorter amount of time. Thus, the notification can be displayed to the rival, and with simple selection of the button or link in the notification the rival can begin playing the event in which he or she was beaten.
- Although the above discussions refer to sending a notification to the rival that the rival has been beaten, similar notifications can be sent at other times. For example, if a rival is almost beaten (e.g., the user comes within a threshold amount of time, score, etc. of beating the rival in the event), then a notification can be sent to the rival notifying the rival that he or she was almost beaten in the event and including a user-selectable link (e.g., a hyperlink) to the event that the rival was almost beaten in.
-
FIG. 8 is a flowchart illustrating anexample process 800 for implementing the asynchronous gameplay with rival display in accordance with one or more embodiments.Process 800 is carried out by a system, such assystem 300 ofFIG. 3 , and can be implemented in software, firmware, hardware, or combinations thereof.Process 800 is shown as a set of acts and is not limited to the order shown for performing the operations of the various acts.Process 800 is an example process for implementing the asynchronous gameplay with rival display; additional discussions of implementing the asynchronous gameplay with rival display are included herein with reference to different figures. - In
process 800, a user request to select a rival to play against asynchronously for an event is received (act 802). The event can be an event of a variety of different types of games as discussed above. - In response to the user request, a rival selector user interface is displayed (act 804). The rival selector user interface includes an identification of one or more users that can be selected, and optionally one or more filter criteria that can be selected as discussed above. The rival selector user interface can display a user that has been automatically selected as a rival or alternatively one or more users that satisfy particular filter criteria as discussed above.
- A user selection of one of the one or more users is received (act 806). The user selection is a selection of one of the users identified in the rival selector user interface as discussed above.
- The selected user is used as the rival to play against asynchronously for the event (act 808). The user from which the user request is received in
act 802 can play against the rival asynchronously for the event, with the previously recorded performance of the rival being played back as the user plays the event as discussed above. -
FIG. 9 is a flowchart illustrating anexample process 900 for implementing the asynchronous gameplay with rival display in accordance with one or more embodiments.Process 900 is carried out by a system, such assystem 300 ofFIG. 3 , and can be implemented in software, firmware, hardware, or combinations thereof.Process 900 is shown as a set of acts and is not limited to the order shown for performing the operations of the various acts.Process 900 is an example process for implementing the asynchronous gameplay with rival display; additional discussions of implementing the asynchronous gameplay with rival display are included herein with reference to different figures. - In
process 900, a user request to play against a rival asynchronously for an event is received (act 902). This user request can be, for example, user selection of a rival as discussed above. - Game data for the rival for the event is obtained (act 904). The game data can include both a performance of the rival in the event and data indicating a manner in which an object of the rival is customized by the rival as discussed above.
- While the user is playing the event, an object representing the rival is played back based on the obtained game data (act 906). The object representing the rival is played back as customized by the rival, and based on the performance of the rival in the event as discussed above.
-
FIG. 10 is a flowchart illustrating anexample process 1000 for using notifications in accordance with one or more embodiments.Process 1000 is carried out by a system, such assystem 300 ofFIG. 3 , and can be implemented in software, firmware, hardware, or combinations thereof.Process 1000 is shown as a set of acts and is not limited to the order shown for performing the operations of the various acts.Process 1000 is an example process for using notifications; additional discussions of using notifications are included herein with reference to different figures. - In
process 1000, a determination is made that a rival has been beaten in an event (act 1002). The determination can be made in various manners as discussed above. - In response to the determination being made in
act 1002, a notification is sent to the rival including a link to the event (act 1004). The notification can be sent using various messaging systems as discussed above. - An indication that the link has been selected by the rival is received (act 1006). The indication can be received, for example, by a gaming device, by an asynchronous gameplay coordination module (or other module of a gameplay service) from a gaming device used by the rival, and so forth.
- The event in which the rival was beaten is jumped to so that the rival can play the event (act 1008). Jumping to the event includes running the game (if not already running), and the game jumping to the event in which the rival was beaten as discussed above.
- Various actions such as communicating, receiving, sending, recording, storing, generating, obtaining, and so forth performed by various modules are discussed herein. A particular module discussed herein as performing an action includes that particular module itself performing the action, or alternatively that particular module invoking or otherwise accessing another component or module that performs the action (or performs the action in conjunction with that particular module). Thus, a particular module performing an action includes that particular module itself performing the action and/or another module invoked or otherwise accessed by that particular module performing the action.
-
FIG. 11 illustrates anexample computing device 1100 that can be configured to implement the asynchronous gameplay with rival display in accordance with one or more embodiments.Computing device 1100 can, for example, be agaming device 102 ofFIG. 1 , implement at least part ofonline gaming service 104 ofFIG. 1 , be agaming device 202 ofFIG. 2 , or implement at least part ofsystem 300 ofFIG. 3 . -
Computing device 1100 includes one or more processors orprocessing units 1102, one or more computerreadable media 1104 which can include one or more memory and/orstorage components 1106, one or more input/output (I/O)devices 1108, and abus 1110 that allows the various components and devices to communicate with one another. Computerreadable media 1104 and/or one or more I/O devices 1108 can be included as part of, or alternatively may be coupled to,computing device 1100.Processor 1102, computerreadable media 1104, one or more ofdevices 1108, and/orbus 1110 can optionally be implemented as a single component or chip (e.g., a system on a chip).Bus 1110 represents one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, a processor or local bus, and so forth using a variety of different bus architectures.Bus 1110 can include wired and/or wireless buses. - Memory/
storage component 1106 represents one or more computer storage media.Component 1106 can include volatile media (such as random access memory (RAM)) and/or nonvolatile media (such as read only memory (ROM), Flash memory, optical disks, magnetic disks, and so forth).Component 1106 can include fixed media (e.g., RAM, ROM, a fixed hard drive, etc.) as well as removable media (e.g., a Flash memory drive, a removable hard drive, an optical disk, and so forth). - The techniques discussed herein can be implemented in software, with instructions being executed by one or
more processing units 1102. It is to be appreciated that different instructions can be stored in different components ofcomputing device 1100, such as in aprocessing unit 1102, in various cache memories of aprocessing unit 1102, in other cache memories of device 1100 (not shown), on other computer readable media, and so forth. Additionally, it is to be appreciated that the location where instructions are stored incomputing device 1100 can change over time. - One or more input/
output devices 1108 allow a user to enter commands and information tocomputing device 1100, and also allows information to be presented to the user and/or other components or devices. Examples of input devices include a keyboard, a cursor control device (e.g., a mouse), a microphone, a scanner, and so forth. Examples of output devices include a display device (e.g., a monitor or projector), speakers, a printer, a network card, and so forth. - Various techniques may be described herein in the general context of software or program modules. Generally, software includes routines, programs, applications, objects, components, data structures, and so forth that perform particular tasks or implement particular abstract data types. An implementation of these modules and techniques may be stored on or transmitted across some form of computer readable media. Computer readable media can be any available medium or media that can be accessed by a computing device. By way of example, and not limitation, computer readable media may comprise “computer storage media” and “communication media.”
- “Computer storage media” include volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules, or other data. Computer storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by a computer. Computer storage media refer to media for storage of information in contrast to mere signal transmission, carrier waves, or signals per se. Thus, computer storage media refers to non-signal bearing media, and is not communication media.
- “Communication media” typically embody computer readable instructions, data structures, program modules, or other data in a modulated data signal, such as carrier wave or other transport mechanism. Communication media also include any information delivery media. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media include wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared, and other wireless media. Combinations of any of the above are also included within the scope of computer readable media.
- Generally, any of the functions or techniques described herein can be implemented using software, firmware, hardware (e.g., fixed logic circuitry), manual processing, or a combination of these implementations. The terms “module” and “component” as used herein generally represent software, firmware, hardware, or combinations thereof. In the case of a software implementation, the module or component represents program code that performs specified tasks when executed on a processor (e.g., CPU or CPUs). The program code can be stored in one or more computer readable memory devices, further description of which may be found with reference to
FIG. 11 . In the case of hardware implementation, the module or component represents a functional block or other hardware that performs specified tasks. For example, in a hardware implementation the module or component can be an application-specific integrated circuit (ASIC), field-programmable gate array (FPGA), complex programmable logic device (CPLD), and so forth. The features of the asynchronous gameplay with rival display techniques described herein are platform-independent, meaning that the techniques can be implemented on a variety of commercial computing platforms having a variety of processors. - Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.
Claims (20)
1. A method comprising:
receiving a user request to select a rival to play against asynchronously for an event of a game;
displaying, in response to the user request, a rival selector user interface that includes an identification of one or more users that can be selected;
receiving, a user selection of one of the one or more users; and
using the selected user as the rival to play against asynchronously for the event.
2. A method as recited in claim 1 , the displaying comprising displaying a first rival selection user interface in which an identifier of an automatically selected rival is displayed, and in response to a user input displaying a second rival selection user interface in which identifiers of multiple users that have played the event are displayed.
3. A method as recited in claim 2 , the identifiers of the multiple users that have played the event being identifiers of users that have played the event filtered based on one or more filter criteria.
4. A method as recited in claim 3 , the one or more filter criteria comprising friends of the user from which the user request is received, the multiple users comprising users that have been identified as friends of the user.
5. A method as recited in claim 1 , further comprising providing the user from which the user request is received a reward in credit supported by the game based on a performance of the user in playing the event against the rival asynchronously.
6. A method as recited in claim 5 , an amount of the reward being based on a ranking of the rival for the event.
7. A method as recited in claim 1 , further comprising sending, if the user from which the user request is received beats the rival when playing against the rival asynchronously, a notification to the rival informing the rival that the rival has been beaten by the user in the event.
8. A method as recited in claim 7 , further comprising including in the notification a user-selectable link, and notifying the game of the rival to jump to the event in response to a selection of the user-selectable link.
9. A method as recited in claim 1 , the game comprising a racing game, and the event comprising a track of the racing game.
10. A method as recited in claim 1 , the using further comprising, in response to user selection of one of the one or more users:
obtaining game data for the rival for the event, the game data including both a previously recorded performance of the rival in the event and data indicating a manner in which an object of the rival is customized by the rival; and
playing back, while the user is playing the event and based on the performance data, the object as customized by the rival.
11. A method as recited in claim 10 , further comprising increasing, as the object as customized by the rival and an object representing the user become closer, a transparency of the object as customized by the rival.
12. One or more computer storage media having stored thereon multiple instructions that, when executed by one or more processors of a gaming device, cause the one or more processors to:
receive a user request to play against a rival asynchronously for an event of a game;
obtain game data for the rival for the event, the game data including both a previously recorded performance of the rival in the event and data indicating a manner in which an object of the rival is customized by the rival; and
play back, while the user is playing the event and based on the performance data, the object as customized by the rival.
13. One or more computer storage media as recited in claim 12 , the multiple instructions further causing the one or more processors to increase, as the object as customized by the rival and an object representing the user become closer, a transparency of the object as customized by the rival.
14. One or more computer storage media as recited in claim 12 , the game comprising a racing game, the object as customized by the rival comprising a vehicle, and the customization comprising an appearance of the vehicle as altered by the rival.
15. One or more computer storage media as recited in claim 12 , the multiple instructions further causing the one or more processors to provide to the user a reward in credit supported by the game based on a performance of the user in playing the event.
16. One or more computer storage media as recited in claim 15 , an amount of the reward being based on a ranking of the rival for the event.
17. One or more computer storage media as recited in claim 12 , the multiple instructions further causing the one or more processors to send, if the user beats the rival when playing the event, a notification to the rival informing the rival that the rival has been beaten by the user in the event.
18. One or more computer storage media as recited in claim 17 , the notification including a user-selectable link, and the multiple instructions further causing the one or more processors to notify a game of the rival to jump to the event in response to a selection of the user-selectable link.
19. One or more computer storage media as recited in claim 12 , the user request including a user-selected rival from a set of identifiers of other users that have previously played the event.
20. A method comprising:
receiving a user request to select a rival to play against asynchronously for an event of a game, the game comprising a racing game and the event comprising a track of the racing game;
displaying, in response to the user request, a rival selector user interface that includes an identification of one or more users that can be selected and one or more filter criteria that can be selected;
receiving, a user selection of one of the one or more users to be the rival;
obtain game data for the rival for the event, the game data including both a previously recorded performance of the rival in the event and data indicating a manner in which an object of the rival is customized by the rival; and
play back, while the user is playing the event and based on the performance data, the object as customized by the rival, including increasing, as the object as customized by the rival and an object representing the user become closer in the game, a transparency of the object as customized by the rival.
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/280,194 US20130084969A1 (en) | 2011-10-02 | 2011-10-24 | Asynchronous gameplay with rival display |
CN201210367760.7A CN102940968B (en) | 2011-10-02 | 2012-09-28 | Show with opponent and play game asynchronously |
EP12839106.7A EP2761576A4 (en) | 2011-10-02 | 2012-09-30 | Asynchronous gameplay with rival display |
PCT/US2012/058171 WO2013052388A1 (en) | 2011-10-02 | 2012-09-30 | Asynchronous gameplay with rival display |
JP2014534618A JP6182147B2 (en) | 2011-10-02 | 2012-09-30 | Asynchronous game play with rival display |
KR1020147011836A KR20140069339A (en) | 2011-10-02 | 2012-09-30 | Asynchronous gameplay with rival display |
HK13106570.0A HK1179561B (en) | 2011-10-02 | 2013-06-04 | Asynchronous gameplay with rival display |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161542256P | 2011-10-02 | 2011-10-02 | |
US13/280,194 US20130084969A1 (en) | 2011-10-02 | 2011-10-24 | Asynchronous gameplay with rival display |
Publications (1)
Publication Number | Publication Date |
---|---|
US20130084969A1 true US20130084969A1 (en) | 2013-04-04 |
Family
ID=47993103
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/280,194 Abandoned US20130084969A1 (en) | 2011-10-02 | 2011-10-24 | Asynchronous gameplay with rival display |
Country Status (5)
Country | Link |
---|---|
US (1) | US20130084969A1 (en) |
EP (1) | EP2761576A4 (en) |
JP (1) | JP6182147B2 (en) |
KR (1) | KR20140069339A (en) |
WO (1) | WO2013052388A1 (en) |
Cited By (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130017872A1 (en) * | 2011-07-12 | 2013-01-17 | Sony Computer Entertainment Inc. | Method and system for tag-based grouping of online communities |
US8672765B2 (en) | 2012-03-13 | 2014-03-18 | Sony Computer Entertainment America Llc | System and method for capturing and sharing console gaming data |
US20140256447A1 (en) * | 2013-03-06 | 2014-09-11 | Electronic Arts, Inc. | Time-Shifted Multiplayer Game |
CN104598461A (en) * | 2013-10-30 | 2015-05-06 | 腾讯科技(深圳)有限公司 | Method and device for recording network interaction protocol data |
US20150224409A1 (en) * | 2014-02-13 | 2015-08-13 | Nintendo Co., Ltd. | Information sharing system, information-processing device, storage medium, and information sharing method |
US20150224408A1 (en) * | 2014-02-13 | 2015-08-13 | Nintendo Co., Ltd. | Information sharing system, information-processing device, storage medium, and information sharing method |
US20150375103A1 (en) * | 2014-06-27 | 2015-12-31 | Amazon Technologies, Inc. | Game session sharing |
US9242176B2 (en) | 2012-12-21 | 2016-01-26 | Sony Computer Entertainment America Llc | Remote control of a first user's gameplay by a second user |
US9364743B2 (en) | 2012-12-21 | 2016-06-14 | Sony Interactive Entertainment America Llc | Generation of a multi-part mini-game for cloud-gaming based on recorded gameplay |
EP3117882A1 (en) * | 2014-08-12 | 2017-01-18 | Sony Computer Entertainment Europe Ltd. | Apparatus and method of user interaction |
US9576434B2 (en) | 2011-07-25 | 2017-02-21 | Sony Interactive Entertainment Inc. | Implementing computer activity-based challenges |
US10065121B2 (en) | 2013-10-30 | 2018-09-04 | Tencent Technology (Shenzhen) Company Limited | Method and apparatus for recording data of network interaction protocol |
KR20190002456A (en) * | 2016-04-28 | 2019-01-08 | 가부시키가이샤 코나미 데지타루 엔타테인멘토 | An information processing apparatus, a server apparatus, and a program |
US10486064B2 (en) | 2011-11-23 | 2019-11-26 | Sony Interactive Entertainment America Llc | Sharing buffered gameplay in response to an input request |
US10525347B2 (en) * | 2012-03-13 | 2020-01-07 | Sony Interactive Entertainment America Llc | System and method for capturing and sharing console gaming data |
US10532290B2 (en) | 2012-03-13 | 2020-01-14 | Sony Interactive Entertainment America Llc | Sharing recorded gameplay to a social graph |
US10610778B2 (en) | 2011-11-23 | 2020-04-07 | Sony Interactive Entertainment America Llc | Gaming controller |
US10913003B2 (en) | 2012-03-13 | 2021-02-09 | Sony Interactive Entertainment LLC | Mini-games accessed through a sharing interface |
US10960300B2 (en) | 2011-11-23 | 2021-03-30 | Sony Interactive Entertainment LLC | Sharing user-initiated recorded gameplay with buffered gameplay |
US20210370176A1 (en) * | 2019-09-05 | 2021-12-02 | Tencent Technology (Shenzhen) Company Limited | Method and apparatus for controlling movement of virtual object, terminal, and storage medium |
US20220143516A1 (en) * | 2020-11-09 | 2022-05-12 | Sony Interactive Entertainment Inc. | Replayable activities for interactive content titles |
US11406906B2 (en) | 2012-03-13 | 2022-08-09 | Sony Interactive Entertainment LLC | Network connected controller for direct to cloud gaming |
US11517826B2 (en) * | 2020-06-10 | 2022-12-06 | Snap Inc. | Game result overlay system |
US11517824B2 (en) * | 2020-04-07 | 2022-12-06 | Riot Games, Inc. | Dynamic event-based ranking methods and systems |
US11602687B2 (en) | 2020-05-28 | 2023-03-14 | Sony Interactive Entertainment Inc. | Media-object binding for predicting performance in a media |
US11697067B2 (en) | 2019-11-01 | 2023-07-11 | Sony Interactive Entertainment Inc. | Content streaming with gameplay launch |
US20230222465A1 (en) * | 2021-10-11 | 2023-07-13 | Social Venture Partners, LLC | Competition Management |
US11896909B2 (en) | 2018-12-14 | 2024-02-13 | Sony Interactive Entertainment LLC | Experience-based peer recommendations |
US11951405B2 (en) | 2020-05-28 | 2024-04-09 | Sony Interactive Entertainment Inc. | Media-object binding for dynamic generation and displaying of play data associated with media |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6389345B2 (en) * | 2018-02-14 | 2018-09-12 | 株式会社セガゲームス | Information processing apparatus and program |
JP7196459B2 (en) * | 2018-08-14 | 2022-12-27 | 株式会社セガ | game program |
JP7164649B2 (en) * | 2021-03-11 | 2022-11-01 | グリー株式会社 | Game control method, computer and control program |
JP7315640B2 (en) * | 2021-11-08 | 2023-07-26 | 任天堂株式会社 | Information processing system, information processing device, information processing program, and information processing method |
KR20230159208A (en) | 2022-05-13 | 2023-11-21 | 라이징윙스 주식회사 | Method and apparatus for providing identical game play environment |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020022521A1 (en) * | 2000-05-15 | 2002-02-21 | Konami Corporation | Game machine and network system for setting up game environment thereof |
US8090618B1 (en) * | 2002-12-12 | 2012-01-03 | Massive Incorporated | Online game commerce system |
US20120009997A1 (en) * | 2008-12-15 | 2012-01-12 | Eui-Joon Youm | Interactive asynchronous game offline play architecture |
US20120021823A1 (en) * | 2008-12-15 | 2012-01-26 | Eui-Joon Youm | Interactive hybrid asynchronous computer game infrastructure |
US9061211B1 (en) * | 2011-09-07 | 2015-06-23 | Zynga Inc. | Notifying users of actions in cross-platform environments |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3942278B2 (en) * | 1998-08-06 | 2007-07-11 | 株式会社バンダイナムコゲームス | Communication game system |
JP2001058087A (en) * | 1999-06-14 | 2001-03-06 | Sony Corp | Game controller, entertainment system and game execution method as well as method for downloading game software program |
JP2003320164A (en) * | 2002-05-07 | 2003-11-11 | Taito Corp | Racing game system |
US20060030407A1 (en) * | 2004-07-16 | 2006-02-09 | Dixon Thayer | Multiple player real-time on-line sports competition system |
JP2008510525A (en) * | 2004-08-20 | 2008-04-10 | アイジーティー | Interactive game apparatus and method for determining a function of a betting game |
WO2006105592A1 (en) * | 2005-04-06 | 2006-10-12 | Dynamite Games Pty Ltd | Networked gaming apparatus with competitive feature game |
US8696464B2 (en) * | 2005-08-19 | 2014-04-15 | Nintendo Co., Ltd. | Enhanced method and apparatus for selecting and rendering performance data |
JP5068080B2 (en) * | 2007-01-09 | 2012-11-07 | 株式会社バンダイナムコゲームス | GAME DEVICE, PROGRAM, AND INFORMATION STORAGE MEDIUM |
JP5122824B2 (en) | 2007-01-09 | 2013-01-16 | 株式会社バンダイナムコゲームス | GAME DEVICE, SERVER DEVICE, AND PROGRAM |
JP2009045350A (en) * | 2007-08-22 | 2009-03-05 | Aruze Corp | GAME DEVICE AND GAME CONTROL METHOD FOR EXECUTING A RACE BY MULTIPLE COMPETITION OBJECTS |
JP2009018199A (en) * | 2008-10-27 | 2009-01-29 | Sega Corp | GAME INFORMATION PROCESSING DEVICE AND COMPUTER PROGRAM THEREOF |
JP5500572B2 (en) * | 2008-12-27 | 2014-05-21 | 株式会社カプコン | GAME PROGRAM, RECORDING MEDIUM CONTAINING THE GAME PROGRAM, AND GAME SYSTEM |
-
2011
- 2011-10-24 US US13/280,194 patent/US20130084969A1/en not_active Abandoned
-
2012
- 2012-09-30 WO PCT/US2012/058171 patent/WO2013052388A1/en active Application Filing
- 2012-09-30 EP EP12839106.7A patent/EP2761576A4/en not_active Withdrawn
- 2012-09-30 KR KR1020147011836A patent/KR20140069339A/en not_active Withdrawn
- 2012-09-30 JP JP2014534618A patent/JP6182147B2/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020022521A1 (en) * | 2000-05-15 | 2002-02-21 | Konami Corporation | Game machine and network system for setting up game environment thereof |
US8090618B1 (en) * | 2002-12-12 | 2012-01-03 | Massive Incorporated | Online game commerce system |
US20120009997A1 (en) * | 2008-12-15 | 2012-01-12 | Eui-Joon Youm | Interactive asynchronous game offline play architecture |
US20120021823A1 (en) * | 2008-12-15 | 2012-01-26 | Eui-Joon Youm | Interactive hybrid asynchronous computer game infrastructure |
US9061211B1 (en) * | 2011-09-07 | 2015-06-23 | Zynga Inc. | Notifying users of actions in cross-platform environments |
Cited By (51)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130017872A1 (en) * | 2011-07-12 | 2013-01-17 | Sony Computer Entertainment Inc. | Method and system for tag-based grouping of online communities |
US9576434B2 (en) | 2011-07-25 | 2017-02-21 | Sony Interactive Entertainment Inc. | Implementing computer activity-based challenges |
US10960300B2 (en) | 2011-11-23 | 2021-03-30 | Sony Interactive Entertainment LLC | Sharing user-initiated recorded gameplay with buffered gameplay |
US11065533B2 (en) | 2011-11-23 | 2021-07-20 | Sony Interactive Entertainment LLC | Sharing buffered gameplay in response to an input request |
US10486064B2 (en) | 2011-11-23 | 2019-11-26 | Sony Interactive Entertainment America Llc | Sharing buffered gameplay in response to an input request |
US10610778B2 (en) | 2011-11-23 | 2020-04-07 | Sony Interactive Entertainment America Llc | Gaming controller |
US20230136977A1 (en) * | 2012-03-13 | 2023-05-04 | Sony Interactive Entertainment LLC | Method for sharing a portion of gameplay of a video game |
US11565187B2 (en) | 2012-03-13 | 2023-01-31 | Sony Interactive Entertainment LLC | Method for sharing a portion of gameplay of a video game |
US11406906B2 (en) | 2012-03-13 | 2022-08-09 | Sony Interactive Entertainment LLC | Network connected controller for direct to cloud gaming |
US11014012B2 (en) | 2012-03-13 | 2021-05-25 | Sony Interactive Entertainment LLC | Sharing gameplay in cloud gaming environments |
US10525347B2 (en) * | 2012-03-13 | 2020-01-07 | Sony Interactive Entertainment America Llc | System and method for capturing and sharing console gaming data |
US12064699B2 (en) * | 2012-03-13 | 2024-08-20 | Sony Interactive Entertainment LLC | Method for sharing a portion of gameplay of a video game |
US10532290B2 (en) | 2012-03-13 | 2020-01-14 | Sony Interactive Entertainment America Llc | Sharing recorded gameplay to a social graph |
US10913003B2 (en) | 2012-03-13 | 2021-02-09 | Sony Interactive Entertainment LLC | Mini-games accessed through a sharing interface |
US8672765B2 (en) | 2012-03-13 | 2014-03-18 | Sony Computer Entertainment America Llc | System and method for capturing and sharing console gaming data |
US9242176B2 (en) | 2012-12-21 | 2016-01-26 | Sony Computer Entertainment America Llc | Remote control of a first user's gameplay by a second user |
US9364743B2 (en) | 2012-12-21 | 2016-06-14 | Sony Interactive Entertainment America Llc | Generation of a multi-part mini-game for cloud-gaming based on recorded gameplay |
US9352226B2 (en) | 2012-12-21 | 2016-05-31 | Sony Interactive Entertainment America Llc | Automatic generation of suggested mini-games for cloud-gaming based on recorded gameplay |
US10188945B2 (en) | 2012-12-21 | 2019-01-29 | Sony Interactive Entertainment America Llc | Generation of gameplay video based on social network sharing |
US20160151712A1 (en) * | 2013-03-06 | 2016-06-02 | Electronic Arts Inc. | Time-shifted multiplayer game |
US20140256447A1 (en) * | 2013-03-06 | 2014-09-11 | Electronic Arts, Inc. | Time-Shifted Multiplayer Game |
US10286321B2 (en) * | 2013-03-06 | 2019-05-14 | Electronic Arts Inc. | Time-shifted multiplayer game |
US9259652B2 (en) * | 2013-03-06 | 2016-02-16 | Electronic Arts Inc. | Time-shifted multiplayer game |
US10065121B2 (en) | 2013-10-30 | 2018-09-04 | Tencent Technology (Shenzhen) Company Limited | Method and apparatus for recording data of network interaction protocol |
CN104598461A (en) * | 2013-10-30 | 2015-05-06 | 腾讯科技(深圳)有限公司 | Method and device for recording network interaction protocol data |
WO2015062263A1 (en) * | 2013-10-30 | 2015-05-07 | Tencent Technology (Shenzhen) Company Limited | Method and apparatus for recording data of network interaction protocol |
US20150224409A1 (en) * | 2014-02-13 | 2015-08-13 | Nintendo Co., Ltd. | Information sharing system, information-processing device, storage medium, and information sharing method |
US10398975B2 (en) * | 2014-02-13 | 2019-09-03 | Nintendo Co., Ltd. | Information sharing system, information-processing device, storage medium, and information sharing method |
US10252172B2 (en) * | 2014-02-13 | 2019-04-09 | Nintendo Co., Ltd. | Game system with shared replays |
US20150224408A1 (en) * | 2014-02-13 | 2015-08-13 | Nintendo Co., Ltd. | Information sharing system, information-processing device, storage medium, and information sharing method |
US10092833B2 (en) * | 2014-06-27 | 2018-10-09 | Amazon Technologies, Inc. | Game session sharing |
US20150375103A1 (en) * | 2014-06-27 | 2015-12-31 | Amazon Technologies, Inc. | Game session sharing |
EP3117882A1 (en) * | 2014-08-12 | 2017-01-18 | Sony Computer Entertainment Europe Ltd. | Apparatus and method of user interaction |
US10765942B2 (en) * | 2016-04-28 | 2020-09-08 | Konami Digital Entertainment Co., Ltd. | Information processing apparatus, server device, and program |
KR20190002456A (en) * | 2016-04-28 | 2019-01-08 | 가부시키가이샤 코나미 데지타루 엔타테인멘토 | An information processing apparatus, a server apparatus, and a program |
KR102332705B1 (en) * | 2016-04-28 | 2021-11-30 | 가부시키가이샤 코나미 데지타루 엔타테인멘토 | Information processing devices, server devices, and programs |
US11896909B2 (en) | 2018-12-14 | 2024-02-13 | Sony Interactive Entertainment LLC | Experience-based peer recommendations |
US20210370176A1 (en) * | 2019-09-05 | 2021-12-02 | Tencent Technology (Shenzhen) Company Limited | Method and apparatus for controlling movement of virtual object, terminal, and storage medium |
US12285685B2 (en) | 2019-09-05 | 2025-04-29 | Tencent Technology (Shenzhen) Company Limited | Method and apparatus for controlling movement of virtual object, terminal, and storage medium |
US11839816B2 (en) * | 2019-09-05 | 2023-12-12 | Tencent Technology (Shenzhen) Company Limited | Method and apparatus for controlling movement of virtual object, terminal, and storage medium |
US11697067B2 (en) | 2019-11-01 | 2023-07-11 | Sony Interactive Entertainment Inc. | Content streaming with gameplay launch |
US12005354B2 (en) | 2019-11-01 | 2024-06-11 | Sony Interactive Entertainment Inc. | Content streaming with gameplay launch |
US20230116322A1 (en) * | 2020-04-07 | 2023-04-13 | Riot Games, Inc. | Dynamic Event-Based Ranking Methods and Systems |
US11517824B2 (en) * | 2020-04-07 | 2022-12-06 | Riot Games, Inc. | Dynamic event-based ranking methods and systems |
US11602687B2 (en) | 2020-05-28 | 2023-03-14 | Sony Interactive Entertainment Inc. | Media-object binding for predicting performance in a media |
US11951405B2 (en) | 2020-05-28 | 2024-04-09 | Sony Interactive Entertainment Inc. | Media-object binding for dynamic generation and displaying of play data associated with media |
US12239909B2 (en) | 2020-05-28 | 2025-03-04 | Sony Interactive Entertainment Inc. | Media-object binding for predicting performance in a media |
US11517826B2 (en) * | 2020-06-10 | 2022-12-06 | Snap Inc. | Game result overlay system |
US20220143516A1 (en) * | 2020-11-09 | 2022-05-12 | Sony Interactive Entertainment Inc. | Replayable activities for interactive content titles |
US12070696B2 (en) * | 2020-11-09 | 2024-08-27 | Sony Interactive Entertainment Inc. | Replayable activities for interactive content titles |
US20230222465A1 (en) * | 2021-10-11 | 2023-07-13 | Social Venture Partners, LLC | Competition Management |
Also Published As
Publication number | Publication date |
---|---|
JP6182147B2 (en) | 2017-08-16 |
HK1179561A1 (en) | 2013-10-04 |
EP2761576A1 (en) | 2014-08-06 |
JP2014531945A (en) | 2014-12-04 |
KR20140069339A (en) | 2014-06-09 |
EP2761576A4 (en) | 2014-11-26 |
WO2013052388A1 (en) | 2013-04-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20130084969A1 (en) | Asynchronous gameplay with rival display | |
US10421019B2 (en) | System and method for enabling players to participate in asynchronous, competitive challenges | |
KR102602398B1 (en) | Stats-based tournaments | |
KR101903821B1 (en) | Avatars of friends as non-player-characters | |
US9369543B2 (en) | Communication between avatars in different games | |
US10449457B2 (en) | System and method for dynamic matchmaking population herding | |
KR20110004888A (en) | Game system, game program, game device using network, and game control method using network | |
CN102940968B (en) | Show with opponent and play game asynchronously | |
US20230001300A1 (en) | Computer system, game system, and control method of computer system | |
US20170216725A1 (en) | Modifying gameplay parameters | |
JP7136715B2 (en) | Game program, method, and information processing device | |
JP2013215375A (en) | Game control apparatus, game control method, program, and game control system | |
JP2020116178A (en) | Game program, method and information processor | |
JP2019111348A (en) | Game program, method, and information processor | |
JP7409912B2 (en) | computer systems and gaming systems | |
JP2023118201A (en) | Program, game device and game system | |
JP6513173B1 (en) | Game program, method, and information processing apparatus | |
US11666826B2 (en) | Modifying gameplay parameters | |
HK1179561B (en) | Asynchronous gameplay with rival display | |
JP2023118202A (en) | Program, game device, game management device and game system | |
JP2022121770A (en) | Program, method, and information processor | |
CN119488711A (en) | Game control method, device, electronic device and storage medium | |
JP2025109493A (en) | PROGRAM, GAME MANAGEMENT DEVICE, AND GAME DEVICE | |
JP2024158538A (en) | SERVER DEVICE, GAME SYSTEM AND GAME METHOD | |
JP2025109306A (en) | PROGRAM, GAME MANAGEMENT DEVICE, AND GAME DEVICE |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MICROSOFT CORPORATION, WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:KNOLES, JONATHAN P.;MONSON, MATTHEW J.;WRIGHT, MICHAEL PAUL;AND OTHERS;SIGNING DATES FROM 20111014 TO 20111019;REEL/FRAME:027111/0644 |
|
AS | Assignment |
Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICROSOFT CORPORATION;REEL/FRAME:034544/0001 Effective date: 20141014 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |