U.S. Pat. No. 9,721,428

DELAYED, GAME-TRIGGERED ONLINE GAME PLATFORM REGISTRATION

AssigneeAftershock Services, Inc.

Issue DateDecember 6, 2013

Illustrative Figure

Abstract

This disclosure relates to enabling a user to access a game hosted on a game platform without registering a platform account. In implementations, a game provider may set a game trigger based on an instance of a game. In response to a determination that the game trigger is met, instructions effectuating presentation of a platform registration request to a user may be transmitted to a platform provider.

Description

DETAILED DESCRIPTION FIG. 1illustrates a system100configured to provide a virtual space to users. Providing the virtual space may include hosting the virtual space over a network. In some implementations, system100may include a game provider102, platform provider104, and one or more client computing platforms106. The game provider102and the platform provider104may be configured to communicate with each other and/or with one or more client computing platforms106according to a client/server architecture. Users may access system100, game provider102, platform provider104and/or the virtual space via client computing platforms106. System100is only one example of a suitable computing environment and is not intended to suggest any limitation as to the scope of use or functionality of the features described herein. Providing the virtual space may include hosting the virtual space over a network. In this disclosure, a game provider102may be configured to provide access to a game and create game accounts for users that are not registered to a platform account with the platform provider104. Responsive to a determination that a game trigger is met, game provider102may transmit instructions effectuating presentation of a platform registration request for an unregistered user to register a platform account. Accordingly, implementations may be configured to enable users to access a game without the user first registering a platform account. The game provider102may be an online game provider configured to execute one or more computer program modules. In implementations, game provider102may be configured to receive user requests to provide access to online games to users from the platform provider104. The computer program modules may include one or more of a platform request reception module108, a game module110, a communication module112, a game trigger module114, and a platform account registration initiation module116. As noted, the client computing platform(s)106or platform provider104may include one or more computer program modules that are the same as or ...

DETAILED DESCRIPTION

FIG. 1illustrates a system100configured to provide a virtual space to users. Providing the virtual space may include hosting the virtual space over a network. In some implementations, system100may include a game provider102, platform provider104, and one or more client computing platforms106. The game provider102and the platform provider104may be configured to communicate with each other and/or with one or more client computing platforms106according to a client/server architecture. Users may access system100, game provider102, platform provider104and/or the virtual space via client computing platforms106.

System100is only one example of a suitable computing environment and is not intended to suggest any limitation as to the scope of use or functionality of the features described herein. Providing the virtual space may include hosting the virtual space over a network. In this disclosure, a game provider102may be configured to provide access to a game and create game accounts for users that are not registered to a platform account with the platform provider104. Responsive to a determination that a game trigger is met, game provider102may transmit instructions effectuating presentation of a platform registration request for an unregistered user to register a platform account. Accordingly, implementations may be configured to enable users to access a game without the user first registering a platform account.

The game provider102may be an online game provider configured to execute one or more computer program modules. In implementations, game provider102may be configured to receive user requests to provide access to online games to users from the platform provider104. The computer program modules may include one or more of a platform request reception module108, a game module110, a communication module112, a game trigger module114, and a platform account registration initiation module116. As noted, the client computing platform(s)106or platform provider104may include one or more computer program modules that are the same as or similar to the computer program modules of the game provider102to facilitate registering a user to a gaming platform.

The platform request reception module108may be configured to receive platform requests to provide users with access to an online game associated with game provider102. The received platform requests may include a request to provide access to an online game hosted by game provider102. In implementations, the received platform request may include data indicating that the user is registered to a platform account or that the user is not registered to a platform account, where the platform account may be associated with platform provider104hosting a plurality of games from a plurality of game providers102. A user registered to a platform account for the platform provider104may utilize the platform account to access games provided by game provider102. A user not registered to a platform account may still access the games provided by game provider102. Whether a user has registered to a platform account or not, the user may have an associated platform identifier. In implementations, the user's platform identifier may be the same identifier used in a game account for the user.

The game module110may be configured to execute an instance of the game. In response to receiving the platform request for the game, game module110may implement the instance of the game to provide access to the game to the user, and may also create the game account for the user. The game account may include the platform identifier associated with the user. In implementations, game provider102may include a plurality a plurality of game modules110, where each game module is associated with a different game. In response to receiving action requests for in-game actions input by users, game module110may be configured to implement the in-game actions in the instance of the game. Game module110may be configured to implement the instance of the game in virtual space executed by the computer modules. The instance of the virtual space may reflect the state of the virtual space. The instance of the virtual space may be used to push state information to clients for implementation on the clients, may be used to verify state information generated on clients executing expressions of the instance locally, and/or for other purposes. State information may include information about the state of the virtual space such as, without limitation, position information of one or more objects, topography information, object status/shape information, battle information, score information, user or character progress information, user inventory information, progress information for one or more activities or actions, view information describing a view of the virtual space, and/or other information that describes the state of the virtual space. Expressions of the instance executed on the clients facilitate presentation of views on the clients of the virtual space. Expressions of the instance executed on the clients may be configured to simply present views of the virtual space based on the state information (e.g., via streaming view information, object/position information, and/or other state information) received from game module110. Expressions of the instance executed on the clients may include space logic that effectively provides for execution of a limited version of the instance on a client that is synchronized and/or verified with state information received from game module110. The view presented on a given client may correspond to a location in the virtual space (e.g., the location from which the view is taken, the location the view depicts, and/or other locations), a zoom ratio, a dimensionality of objects, a point-of-view, and/or view parameters. One or more of the view parameters may be selectable by the user.

The instance of the virtual space may comprise a simulated space that is accessible by users via clients (e.g., client computing platforms106) that present the views of the virtual space to a user. The simulated space may have a topography, express ongoing real-time interaction by one or more users, and/or include one or more objects positioned within the topography that are capable of locomotion within the topography. In some instances, the topography may be a 2-dimensional topography. In other instances, the topography may be a 3-dimensional topography. The topography may include dimensions of the space, and/or surface features of a surface or objects that are “native” to the space. In some instances, the topography may describe a surface (e.g., a ground surface) that runs through at least a substantial portion of the space. In some instances, the topography may describe a volume with one or more bodies positioned therein (e.g., a simulation of gravity-deprived space with one or more celestial bodies positioned therein). The instance executed by the computer modules may be synchronous, asynchronous, and/or semi-synchronous.

The above description of the views of the virtual space determined from the instance executed by game module110is not intended to be limiting. The virtual space may be presented in a more limited, or more rich, manner. For example, views of the virtual space may be selected from a limited set of graphics depicting an event in a given place within the virtual space. The views may include additional content (e.g., text, audio, pre-stored video content, and/or other content) that describes particulars of the current state of the place, beyond the relatively generic graphics. For example, a view may include a generic battle graphic with a textual description of the opponents to be confronted. Other representations of individual places within the virtual space are contemplated.

Within the instance of the virtual space executed by game module110, users may control characters, objects, simulated physical phenomena (e.g., wind, rain, earthquakes, and/or other phenomena), and/or other elements within the virtual space to interact with the virtual space and/or each other. The user characters may include avatars. As used herein, the term “user character” may refer to an object (or group of objects) present in the virtual space that represents an individual user. The user character may be controlled by the user with which it is associated. The user controlled element(s) may move through and interact with the virtual space (e.g., non-user characters in the virtual space, other objects in the virtual space). The user controlled elements controlled by and/or associated with a given user may be created and/or customized by the given user. The user may have an “inventory” of virtual goods and/or currency that the user can use (e.g., by manipulation of a user character or other user controlled element, and/or other items) within the virtual space.

The communications module112may be configured to obtain action requests input by users. The actions requests may specify execution of in-game actions performed by game module110. The in-game actions may be associated with moving or controlling a user controlled element, changing a view of the virtual space, a purchase request, or any other action interacting with the virtual space, such as managing an inventory of virtual goods or currency.

The game trigger module114may be configured to determine if a game trigger for the user is met based on the instance of the game. In implementations, the game trigger may be determined by the game provider102of the game, and may vary from game to game. Accordingly, a first game may have a game trigger that is different than the game trigger of a second game. The game trigger may be associated with an amount of time that the instance of the game is presented to the user (e.g. one minute, ten minutes, one hour, or any length of time), in-game actions performed by the user (e.g. a user reaching a certain level in-game, completing a tutorial in-game, etc.), the user's progress towards an in-game achievement (e.g. unlocking a trophy, badge, award, stamp medal, challenge, etc.) and/or an receiving a request to perform an in-game purchase by the user (e.g. receiving a request to purchase a game, receiving a request to purchase in-game currency, receiving a request to purchase an in-game item, etc.). Accordingly, the game provider102may set the game trigger based on the instance of the game.

The platform account registration initiation module116may be configured to transmit instructions to platform provider104in response to a determination that the game trigger is met. The instructions may effectuate presentation of a platform registration request in a graphical user interface to the user by platform provider104. The platform registration request may include fields where the user may enter stated information, such as a username and/or password, for the user. In implementations, in response to the presentation of the platform registration request to the user, platform account registration initiation module116may be configured to receive from the platform provider104an indication as to whether stated information was received from the user.

In response to an indication that the platform provider104did not receive the stated information from the user, game trigger module114may be configured to set a new game trigger based on the instance of the game and/or game module110may be configured to discontinue the instance of the game presented to the user. In response to an indication that the platform provider104did receive the stated information from the user, game trigger module114may be configured to continue the user's access to the game and may also receive information associated with a platform account for the user. The platform account for the user may include the same identifier as the game account for the user.

The platform provider104may be a server configured to host a plurality of games from game provider(s)102. In implementations, platform provider104may be configured to register users to platform accounts which may be used to access the games from game provider102hosted by platform provider104and to execute one or more computer program modules.

In some implementations, the game provider102, platform provider104, client computing platforms106, and/or external resources124may be operatively linked via one or more electronic communication links. For example, such electronic communication links may be established, at least in part, via a network such as the Internet and/or other networks. It will be appreciated that this is not intended to be limiting, and that the scope of this disclosure includes implementations in which game provider102, platform provider104client computing platforms106, and/or external resources124may be operatively linked via some other communication media.

A given client computing platform106may include one or more processors configured to execute computer program modules. The computer program modules may be configured to enable an expert or user associated with the given client computing platform106to interface with system100and/or external resources124, and/or provide other functionality attributed herein to client computing platforms106. By way of non-limiting example, the given client computing platform may include one or more of a desktop computer, a laptop computer, a handheld computer, a tablet computing platform, a NetBook, a Smartphone, a gaming console, and/or other computing platforms.

External resources124may include sources of information, hosts and/or providers of virtual environments outside of system100, external entities participating with system100, and/or other resources. In some implementations, some or all of the functionality attributed herein to external resources124may be provided by resources included in system100.

Game provider102may include electronic storage128, one or more processors130, and/or other components. Game provider102may include communication lines, or ports to enable the exchange of information with a network and/or other computing platforms. Illustration of game provider102inFIG. 1is not intended to be limiting. Game provider102may include a plurality of hardware, software, and/or firmware components operating together to provide the functionality attributed herein to game provider102. For example, game provider102may be implemented by a cloud of computing platforms operating together as game provider102.

Electronic storage128may comprise non-transitory storage media that electronically stores information. The electronic storage media of electronic storage128may include one or both of system storage that is provided integrally (i.e., substantially non-removable) with game provider102and/or removable storage that is removably connectable to game provider102via, for example, a port (e.g., a USB port, a firewire port, etc.) or a drive (e.g., a disk drive, etc.). Electronic storage124may include one or more of optically readable storage media (e.g., optical disks, etc.), magnetically readable storage media (e.g., magnetic tape, magnetic hard drive, floppy drive, etc.), electrical charge-based storage media (e.g., EEPROM, RAM, etc.), solid-state storage media (e.g., flash drive, etc.), and/or other electronically readable storage media. Electronic storage128may include one or more virtual storage resources (e.g., cloud storage, a virtual private network, and/or other virtual storage resources). Electronic storage102may store software algorithms, information determined by processor130, information received from game provider102, information received from client computing platforms106, and/or other information that enables game provider102to function as described herein.

Processor(s)130is configured to provide information processing capabilities in game provider102. As such, processor130may include one or more of a digital processor, an analog processor, a digital circuit designed to process information, an analog circuit designed to process information, a state machine, and/or other mechanisms for electronically processing information. Although processor130is shown inFIG. 1as a single entity, this is for illustrative purposes only. In some implementations, processor130may include a plurality of processing units. These processing units may be physically located within the same device, or processor130may represent processing functionality of a plurality of devices operating in coordination. The processor130may be configured to execute modules108,110,112,114, and116. Processor130may be configured to execute modules108,110,112,114, and116by software; hardware; firmware; some combination of software, hardware, and/or firmware; and/or other mechanisms for configuring processing capabilities on processor130. As used herein, the term “module” may refer to any component or set of components that perform the functionality attributed to the module. This may include one or more physical processors during execution of processor readable instructions, the processor readable instructions, circuitry, hardware, storage media, or any other components.

It should be appreciated that although modules108,110,112,114, and116are illustrated inFIG. 1as being implemented within a single processing unit, in implementations in which processor130includes multiple processing units, one or more of modules108,110,112,114, and116may be implemented remotely from the other modules. The description of the functionality provided by the different modules108,110,112,114, and116described below is for illustrative purposes, and is not intended to be limiting, as any of modules108,110,112,114, and116may provide more or less functionality than is described. For example, one or more of modules108,110,112,114, and116may be eliminated, and some or all of its functionality may be provided by other ones of modules108,110,112,114, and116. As another example, processor130may be configured to execute one or more additional modules that may perform some or all of the functionality attributed below to one of modules108,110,112,114, and116

FIG. 2illustrates a method of registering a user to a platform account for a platform provider hosting a game provider, in response to a game trigger being met. The operations of method200presented below are intended to be illustrative. In some embodiments, method200may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. Additionally, the order in which the operations of method200are illustrated inFIG. 2and described below is not intended to be limiting.

In some embodiments, method200may be implemented in one or more processing devices (e.g., a digital processor, an analog processor, a digital circuit designed to process information, an analog circuit designed to process information, a state machine, and/or other mechanisms for electronically processing information). The one or more processing devices may include one or more devices executing some or all of the operations of method200in response to instructions stored electronically on an electronic storage medium. The one or more processing devices may include one or more devices configured through hardware, firmware, and/or software to be specifically designed for execution of one or more of the operations of method200.

At an operation202, a platform request may be received by a game provider to provide access for a user to a game. The platform request may include data indicating that the user is not registered to a platform account for a platform provider. Operation202may be performed by a platform request reception module that is the same as or similar to platform request reception module108, in accordance with one or more implementations.

At an operation204, a game account may be created for the user. The game account may be associated with an identifier associated with the platform request. In some implementations, this operation may be skipped. Operation204may be performed by a game module that is the same as or similar to game module110, in accordance with one or more implementations.

At an operation206, an instance of the game may be executed to provide access to the game for the user in response to receiving the platform request. Responsive to providing the user access to the game, the user may input action request to specify executions of in-game actions. The in-game actions may then be implemented in the instance of the game. Operation206may be performed by a game module that is the same as or similar to game module110, in accordance with one or more implementations.

At an operation208, it may be determined if a game trigger for the user is met based on the instance of the game. The game trigger may be determined by the game provider of the game, and may vary from game to game and/or game provider to game provider. The game trigger may be associated with an amount of time that the instance of the game is presented to the user (e.g. one minute, ten minutes, one hour, or any length of time), in-game actions performed by the user (e.g. a user reaching a certain level in-game, completing a tutorial in-game, etc.), the user's progress towards an in-game achievement (e.g. unlocking a trophy, badge, award, stamp medal, challenge, etc.) and/or an receiving a request to perform an in-game purchase by the user (e.g. receiving a request to purchase a game, receiving a request to purchase in-game currency, receiving a request to purchase an in-game item, etc.). Operation208may be performed by a game trigger module that is the same as or similar to game trigger module114, in accordance with one or more implementations.

At an operation210, instructions may be transmitted to a platform provider in response to a determination that the game trigger is met. The instructions may effectuate presentation of a platform registration request to the first user by the platform provider. In implementations, the platform registration request may be presented in a graphical user interface with fields where the user may enter stated information. In response to receiving the platform registration request, the user may enter stated information within the fields of the graphical user interface and a platform account may be registered for the user. The registered platform account for the user may be utilized to provide the user access to the games from game providers hosted on by the platform provider. Operation210may be performed by a platform account registration initiation module that is the same as or similar to platform account registration initiation module116, in accordance with one or more implementations.

FIG. 3illustrates a method of registering a user to a platform account for a platform provider responsive to a game trigger being met. The operations of method300presented below are intended to be illustrative. In some embodiments, method300may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. Additionally, the order in which the operations of method300are illustrated inFIG. 3and described below is not intended to be limiting.

In some embodiments, method300may be implemented in one or more processing devices (e.g., a digital processor, an analog processor, a digital circuit designed to process information, an analog circuit designed to process information, a state machine, and/or other mechanisms for electronically processing information). The one or more processing devices may include one or more devices executing some or all of the operations of method300in response to instructions stored electronically on an electronic storage medium. The one or more processing devices may include one or more devices configured through hardware, firmware, and/or software to be specifically designed for execution of one or more of the operations of method300.

At an operation302, a game trigger may be determined by the game provider for the game. The game trigger may be utilized to effectuate presentation of a platform registration request to a user that is not registered to a platform account. The game trigger may be associated with an instance of the game, and may vary from game to game and/or game provider to game provider. In implementations, the game trigger determined based on an amount of time that the instance of the game is presented to a user (e.g. one minute, ten minutes, one hour, or any length of time), in-game actions performed by a user (e.g. a user reaching a certain level in-game, completing a tutorial in-game, etc.), the user's progress towards an in-game achievement (e.g. unlocking a trophy, badge, award, stamp medal, challenge, etc.) and/or an receiving a request to perform an in-game purchase by the user (e.g. receiving a request to purchase a game, receiving a request to purchase in-game currency, receiving a request to purchase an in-game item, etc.). Operation302may be performed by a game trigger module that is the same as or similar to game trigger module114, in accordance with one or more implementations.

At an operation304, it may be determined that the game trigger for the user without a registered platform account is met based on the instance of the game. Operation304may be performed by a game trigger module that is the same as or similar to game trigger module114, in accordance with one or more implementations.

At an operation306, instructions may be transmitted to a platform provider in response to a determination that the game trigger is met. The instructions may effectuate presentation of a platform registration request to the first user by the platform provider. In implementations, the platform registration request may be presented in a graphical user interface with fields where the user may enter stated information. Operation306may be performed by a platform account registration initiation module that is the same as or similar to platform account registration initiation module116, in accordance with one or more implementations.

At an operation308, a determination may be made if an indication as to whether stated information was received from the user in response to the presentation of the platform registration request to the first user by the platform provider. Operation308may be performed by a platform account registration initiation module that is the same as or similar to platform account registration initiation module116, in accordance with one or more implementations.

At an operation310, responsive to a determination at operation308that stated information was not received from the user, the game provider may discontinue the instance of the game and/or set a new game trigger. Operation310may be performed by a game module that is the same as or similar to platform account game module110and/or a game trigger module that is the same as or similar to game trigger module114, in accordance with one or more implementations.

At an operation312, responsive to a determination at operation308that stated information was received from the user, the user may continue to have access to the game without resetting of the game trigger. Further, the stated information may be received by the game provider. Operation204may be performed by a game module that is the same as or similar to game module110, in accordance with one or more implementations.

Although the present technology has been described in detail for the purpose of illustration based on what is currently considered to be the most practical and preferred implementations, it is to be understood that such detail is solely for that purpose and that the technology is not limited to the disclosed implementations, but, on the contrary, is intended to cover modifications and equivalent arrangements that are within the spirit and scope of the appended claims. For example, it is to be understood that the present technology contemplates that, to the extent possible, one or more features of any implementation can be combined with one or more features of any other implementation.

Claims

  1. A system for triggering registration to an online game platform by a game provider of an online game, the system comprising: one or more processors configured by machine-readable instructions to: receive platform requests to provide access for the users to the online game, the platform requests including a first platform request to provide access for a first user to the online game, the first platform request indicating that the first user is not registered to a platform account;execute an instance of the online game and to use the instance of the online game to generate game state information that is transmitted to the client computing platforms over the network, and to provide access to the online game for the first user in response to the first platform request, and wherein execution of the instance of the game includes performing in-game actions in the instance of the online game in response to action requests for the in-game actions received over the network from the client computing platforms including the first client computing platform associated with the first user;obtain the action requests input by users, wherein the action requests includes first action requests that specify execution of the in-game actions by the first user;determine if a game trigger for the first user is met based on the instance of the online game;and transmit instructions over the network to a platform provider in response to a determination that the game trigger is met, the instructions effectuating presentation of a platform registration request to the first user by the platform provider;receive from the platform provider an indication as to whether stated information was received from the first user in response to the presentation of the platform registration request to the first user by the platform provider;and setting a new game trigger for triggering the platform registration request in response to an indication that the stated information was not received from the first user.
  1. The system of claim 1 , wherein the platform requests include associated identifiers, and wherein the one or more processors are further configured by machine-readable instructions to create a game account for the first user associated with the first platform request's associated identifier.
  2. The system of claim 1 , wherein the one or more processors are further configured by machine-readable instructions to discontinue the instance of the online game in response to an indication that the stated information was not received from the first user.
  3. The system of claim 1 , wherein the game trigger is associated with an amount of time that the instance of the game is presented to the first user.
  4. The system of claim 1 , wherein the game trigger is associated with in-game actions performed by the first user.
  5. The system of claim 1 , wherein the game trigger is associated with the first user's progress towards an in-game achievement.
  6. The system of claim 1 , wherein the game trigger is associated with an in-game purchase by the first user.
  7. A computer-implemented method for registering users, the method being implemented in a computer system that includes one or more processors executing machine-readable instructions, the method comprising: receiving platform requests to provide access for users to an online game, the platform requests including a first platform request to provide access for a first user to the online game, the first platform request indicating that the first user is not registered to a platform account;executing an instance of the online game and using the instance of the online game to generate game state information that is transmitted to the client computing platforms over the network, and to provide access to the online game for the first user in response to the first platform request;implementing in-game actions in the instance of the online game in response to action requests for the in-game actions received over the network from the client computing platforms including the first client computing platform associated with the first user;obtaining action requests input by users, wherein the action requests specify execution of the in-game actions by the user;determining if a game trigger for the first user is met based on the instance of the online game;and transmitting instructions, over the network, to a platform provider in response to a determination that the game trigger is met, the instructions effectuating presentation of a platform registration request to the first user by the platform provider;receiving from the platform provider an indication as to whether stated information was received from the first user in response to the presentation of the platform registration request to the first user by the platform provider;and setting a new game trigger for triggering the platform registration request in response to an indication that the stated information was not received from the first user.
  8. The method of claim 8 , wherein the platform requests include associated identifiers, further comprising creating a game account for the first user associated with the first platform request's associated identifier.
  9. The method of claim 8 , further comprising: discontinuing the instance of the online game in response to an indication that the stated information was not received from the first user.
  10. The method of claim 8 , wherein the game trigger is associated with an amount of time that the instance of the online game is presented to the first user.
  11. The method of claim 8 , wherein the game trigger is associated with in-game actions performed by the first user.
  12. The method of claim 8 , wherein the game trigger is associated with the first user's progress towards an in-game achievement.
  13. The method of claim 8 , wherein the game trigger is associated with an in-game purchase by the first user.

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