FIELDThe disclosure relates to dynamically inserting tutorials in a mobile application.
BACKGROUNDMobile devices often run mobile apps that are downloaded from a mobile application marketplace. The mobile apps typically include compiled code that configures one or more processors on a mobile device to perform the tasks associated with the mobile app. From time to time, app providers update their mobile apps. One of the functions of a mobile application marketplace provider is to curate mobile apps provided to mobile devices. Typically, an app provider may be required to submit an app update to the mobile application marketplace provider for review. Once the update is approved, it may be made available to users through the mobile application marketplace. As such, it may be difficult to dynamically insert tutorials into a mobile application for a game.
Conventional systems may fail to dynamically insert tutorials into a mobile application for a game. For example, conventional systems may fail to facilitate the generation of disparate tutorials for dynamic insertion into the mobile application at a same location in game play in the game. Further, conventional systems may fail to facilitate the generation of customized tutorials for insertion into the mobile application for a particular user.
SUMMARYOne aspect of the disclosure relates to dynamically inserting tutorials in a mobile application for a game. Tutorial assets may be dynamically integrated into a mobile application at different locations in game play in a staged manner such that individual tutorial assets can be integrated into the mobile application without requiring a wholesale update of the mobile application. The staged updating may be effected without requiring users to access an updated version of the application from an “app store” or other similar online marketplace for mobile applications. This may be accomplished by implementing the mobile application as an “app” including compiled code that implements game assets and tutorial assets to provide a view of the game to the user. The game assets and tutorial assets may be non-compiled information objects, such as images, scripts, and/or other non-compiled information.
A system configured to dynamically insert tutorials in a mobile application for a game may include a wireless client device, a tutorial server, a game server, a mobile application marketplace module, and/or other components.
A wireless client device of the system may be configured to communicate via wireless and/or wired communication media with one or more of the other components (e.g., the servers). The wireless client device may be configured to execute one or more of a game module, a tutorial reception module, a tutorial integration module, and/or other modules.
The game module may be configured to assemble a view of the game for presentation to a user such that the user plays the game by providing control inputs that are reflected in view of the game assembled by the game module. The game module may be implemented as compiled code executed by the one or more processors. The game module may be configured to use game assets to assemble the view of the game. The game assets may be stored locally on the device and may be non-compiled information objects.
The tutorial reception module may be configured to receive tutorial information related to a tutorial asset over network. The tutorial information related to a tutorial asset may comprise a tutorial asset and a location in game play at which to integrate the tutorial asset.
The tutorial integration module may be configured to integrate the tutorial asset into operation of the game module such that, responsive to reception of the tutorial asset, the tutorial asset is used by the game module to assemble the view of the game and the tutorial asset is presented to the user at the location in game play specified in the tutorial information.
A tutorial server of the system may be configured to effect the updating of tutorial assets on the wireless client device independent from any updating of the compiled code of the game module. The tutorial server may be configured to execute one or more of a tutorial development module, a tutorial transmission module, and/or other modules.
The tutorial development module may be configured to facilitate generation of a tutorial asset for a predetermined location in game play. The tutorial asset may be used to assemble a view of a game for presentation to the user on the wireless client device, wherein the game module is implemented in compiled code executed on the wireless client device.
The tutorial transmission module may be configured to initiate transmissions of tutorial assets to the wireless client device. Responsive to a determination that a first tutorial asset is available for the game on the wireless client device, the tutorial transmission module may initiate transmission of the first tutorial asset. Subsequent to the transmission, the first tutorial asset may be used by the game module to assemble the view of the game at a location.
A computer-implemented method of dynamically inserting tutorials in a mobile application for a game may be implemented in the wireless client device which includes one or more physical processors configured to execute computer program modules. The method may comprise: executing a game module implemented in compiled code to assemble a view of the game for presentation to a user such that the user plays the game by providing control inputs that are reflected in the assembled view of the game, wherein the game module uses game assets to assemble the view of the game, wherein the game assets are stored locally on the device and are non-compiled information objects; receiving, from a tutorial server, tutorial information at the wireless client device over the network, the tutorial information comprising a tutorial asset and a location in game play; and responsive to reception of the tutorial asset, integrating the tutorial asset into the operation of the game module such that the tutorial asset is used by the game module at the location in the tutorial information to assemble the view of the game.
These and other objects, features, and characteristics of the system and/or method disclosed herein, as well as the methods of operation and functions of the related elements of structure and the combination of parts and economies of manufacture, will become more apparent upon consideration of the following description and the appended claims with reference to the accompanying drawings, all of which form a part of this specification, wherein like reference numerals designate corresponding parts in the various figures. It is to be expressly understood, however, that the drawings are for the purpose of illustration and description only and are not intended as a definition of the limits of the invention. As used in the specification and in the claims, the singular form of “a”, “an”, and “the” include plural referents unless the context clearly dictates otherwise.
BRIEF DESCRIPTION OF THE DRAWINGSFIG. 1 illustrates an exemplary system configured to dynamically insert tutorials in a mobile application for a game, according to various aspects of the invention.
FIG. 2 illustrates an exemplary system configured to dynamically insert tutorials in a mobile application for a game, according to various aspects of the invention.
FIG. 3 illustrates an exemplary method of dynamically inserting tutorials in a mobile application for a game, according to various aspects of the invention.
DETAILED DESCRIPTIONFIG. 1 provides an exemplary illustration of asystem10 configured to dynamically insert tutorials in a mobile application for a game, according to various aspects of the invention. The game may be played by the users via a mobile application.System10 may be configured to dynamically integrate a tutorial into a mobile application for a game in a staged manner such that individual game assets can be updated without requiring a wholesale update of the mobile application. The description herein of a mobile game application is not intended to be limiting. It will be appreciated that other types of mobile applications (e.g., other than games) may be updated without using the principles described herein without departing from the scope of this disclosure.System10 may provide for the tutorial assets to be updated separately (and in some cases individually) from the compiled code in the app. In some implementations,system10 may include one or more of awireless client device12, atutorial server14, agame server16, a mobileapplication marketplace server18, and/or other components.
Wireless client device12 may be a mobile device configured to provide an interface for the user to the game and/or other applications or information.Wireless client device12 may include, for example, a smartphone, a tablet computing platform, and/or other mobile devices.Wireless client device12 may be configured to communicate with one or more oftutorial server14,game server16, mobileapplication marketplace server18, and/or other components ofsystem10 in a client/server configuration. Such communications may be accomplished at least in part via one or more wireless communication media. Such communication may be transmitted through a network, such as the Internet and/or other networks.Wireless client device12 may include one ormore processors20,electronic storage22, auser interface24, and/or other components.
Processor20 may be configured to execute computer program modules. The computer program modules may include one or more of agame module26, atutorial reception module28, atutorial integration module30, agame update module32, and/or other modules.
Game module26 may be configured to assemble a view of the game for presentation to the user onwireless client device12. The game may include various tasks, levels, quests, and/or other challenges or activities for users to participate in. The game may include activities in which users (or their entities) are adversaries, and/or activities in which users (or their entities) are allies. The game may include activities in which users (or their entities) are adversaries of non-player characters, and/or activities in which users (or their entities) are allies of non-player characters. In the game, entities controlled by the user may obtain points, virtual currency or other virtual items, experience points, levels, and/or other demarcations indicating experience and/or success. The game may be implemented in a virtual space, or may be implemented without a virtual space. The game (and/or a virtual space in which it may be implemented) may be synchronous, asynchronous, and/or semi-synchronous.
An instance of a virtual space may comprise a simulated space that is accessible by users via clients (e.g., wireless client device12) 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 above description of the manner in which views of the virtual space are determined is not intended to be limiting. The virtual space may be expressed in a more limited, or more rich, manner. For example, views determined for 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 expressions of individual places within the virtual space are contemplated.
Within the instance(s) of the virtual space, users may control entities to interact with the virtual space and/or each other. The entities may include one or more of characters, objects, simulated physical phenomena (e.g., wind, rain, earthquakes, and/or other phenomena), and/or other elements within the virtual space. The user characters may include avatars. As used herein, an entity may refer to an object (or group of objects) present in the virtual space that represents an individual user. The entity 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.
Control over the entities may be exercised by the users through control inputs and/or commands input throughwireless client device12. The users may interact with each other through communications exchanged within the virtual space. Such communications may include one or more of textual chat, instant messages, private messages, voice communications, and/or other communications. Communications may be received and entered by the users via their respective client devices (e.g., wireless client device12). Communications may be routed to and from the appropriate users throughgame server16.
To assemble the view of the game,game module26 may execute an instance of the game, and may use the instance to determine view information that defines the view. To assemble the view of the game,game module26 may obtain view information fromgame server16, which may execute an instance of the game to determine the view information. The view information may include one or more of game state information, map information, object or entity location information, manifestation information (defining how objects or entities are manifested in the virtual space), and/or other information related to the view and/or the game.
Game module26 may be implemented in compiled code to be executed byprocessor20.Game module26 may be obtained bywireless client device12 from a mobile application marketplace provided by mobileapplication marketplace server18. In some implementations,game module26 may comprise non-compiled information objects hosted by the wireless client. In assembling the view,game module26 may be configured to implement one or more game assets. As used herein, the game assets may refer to non-compiled information objects stored locally on wireless client device12 (e.g., via electronic storage22). Such information objects may include, for example, scripts, images (e.g., image information, texture information, and/or other information related to images), and/or other information.
Thetutorial reception module28 may be configured to receive tutorial information related to a tutorial asset over a network. The tutorial information related to a tutorial asset may comprise a tutorial asset and a location in game play at which to integrate the tutorial asset. This communication may be accomplished via one or more wireless communication media, via one or more wired communication media, over a network, and/or through other communication media. Over time, the game may be refined and/or further developed. Such activities may result in one or more of the tutorial assets being replaced, augmented, and/or otherwise changed.
Tutorial reception module28 may be configured to receive tutorial assets that are to be implemented bygame module26. The tutorial assets may be provided to tutorial reception module28 (e.g., by tutorial asset server14) responsive to a determination that the tutorial asset is available for the mobile application on the particularwireless client device12.Tutorial reception module28 may be configured to store tutorial assets onwireless client device12.
For example,tutorial reception module28 may be configured to receive first tutorial information for a mobile application for the firstwireless client device12. The first tutorial information may comprise a first tutorial asset and a first location in game play at which to integrate the first tutorial asset. At a same time (or at a later time),tutorial reception module28 may be configured to receive second tutorial information for the mobile application for the firstwireless client device12. The second tutorial information may comprise a second tutorial asset and a second location in game play at which to integrate the second tutorial asset.
In some implementations, thetutorial reception module28 may be configured to receive tutorial deletion information. The tutorial deletion information may comprise a tutorial asset and an indication to delete the tutorial asset. In some examples, the tutorial deletion information may comprise the tutorial asset, the indication to delete the tutorial asset, and a location in game play at which the tutorial asset has been integrated. Responsive to a determination that thetutorial reception module28 has received tutorial deletion information, thetutorial reception module28 may delete the tutorial asset fromelectronic storage22. Thegame module26 may no longer user the tutorial asset to assemble the game view. For example, thegame module26 may assemble the view of the game such that the tutorial asset is no longer presented to the user at the location in game play.
Thetutorial integration module30 may be configured to integrate the tutorial asset into operation of the game module such that, responsive to reception of the tutorial asset, the tutorial asset is used by thegame module26 to assemble the view of the game and the tutorial asset is presented to the user at the location in game play specified in the tutorial information. For example, thetutorial integration module30 may determine a game asset of the game which comprises data related to the location in game play at which the tutorial asset is to be integrated. Thetutorial integration module30 may augment the game asset with the tutorial asset at the location in game play at which the tutorial asset is to be integrated. For example, thetutorial integration module30 may append the tutorial asset to the game asset such that, responsive to the game module using the game assets to assemble the view of the game, thegame module26 may also use the appended tutorial assets to assemble the view of the game.
Accordingly, tutorial assets that are integrated into the operation ofgame module26 may be used bygame module26 at the corresponding locations in game play noted in the tutorial information with which the tutorial asset was received. For example, responsive to the first tutorial asset being integrated bytutorial integration module30, the first tutorial asset may be implemented bygame module26 at a predetermined first location in the tutorial information.
In an example in which thetutorial reception module28 receives first tutorial information and second tutorial information at a same or later time, thetutorial integration module30 may be configured to integrate the first tutorial asset and the second tutorial asset into operation of the game module. Responsive to a determination that the first tutorial information and the second tutorial information are received at a same time, the first tutorial asset and the second tutorial asset may be used by the game module to assemble the view of the game such that the first tutorial asset is presented to the user at the first location in game play and the second tutorial asset is presented to the user at the second location in game play. Responsive to a determination that the second tutorial information is received after the first tutorial information, the second tutorial asset may be used by the game module to assemble the view of the game (which includes the first tutorial asset) such that the second tutorial asset is presented to the user at the second location in game play.
Game update module32 may be configured to updategame module26. This may include obtaining an updated version ofgame module26. The updated version ofgame module26 may include compiled code with changes from the previous version ofgame module26. Obtaining the updated version ofgame module26 may include downloading the updated version from mobileapplication marketplace server18. In some implementations, the updated version of thegame module26 may also comprise tutorial information for one or more tutorial assets which may be integrated into the operation of thegame module26.
Obtaining the updated version ofgame module26 may include receiving a network address of another server (not shown) from mobileapplication marketplace server18, and then requesting the updated version from this server. Techniques for updating compiled mobile apps from a mobile application marketplace are known, and any of these techniques (or any similar techniques) may be implanted for this purpose without departing from the scope of this disclosure. In some implementations,game update module32 may update game assets of the game without obtaining an updated version ofgame module26. For example, game assets of the game may be updated in a manner similar to that set forth in pending U.S. patent application Ser. No. 13/593,465, filed on Aug. 23, 2012, incorporated herein by reference in its entirety.
Mobile application marketplaces may exert some limitations and/or control over the release of updated versions of mobile apps. While this control may encourage users to obtain mobile apps from a marketplace due to curating performed by the marketplace, providers of the mobile apps may experience inconveniences, inefficiencies, and/or other drawbacks associated with seeking and obtaining approval for app updates from the marketplace provider. The ability ofsystem10 to provide tutorial assets for integration into the separate from the compiled code ofgame module26 may enable a functional update of the overall mobile app that does not require communication through mobileapplication marketplace server18. This may enhance one or more aspects of the application updating process. The provision and integration of tutorial assets separate from the compiled code may enable the game provider to update the game piecemeal, and without requiring the users to pull down an updated application version each time a tutorial is provided for the game. Instead, the individual tutorial asset (or sets of tutorial assets) may be pushed to the installed mobile application with little or no user interaction.
Accordingly, tutorial assets may be customized for individual mobile applications. For example, a tutorial asset may be provided for a mobile application for a particular user, for a particular cohort of users, and/or may otherwise be customized based on the user of the mobile application. Tutorial assets may also differ based on other characteristics associated with the mobile application including, for example, operation system of the device on which the mobile application is played, one or more components of hardware available on the device on which the mobile application is played, preferences of the user of the mobile application, previous usage history of the mobile application, and/or other characteristics.
Processor20 is configured to provide information processing capabilities inwireless client device12. As such,processor20 may 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. Althoughprocessor20 is shown inFIG. 1 as a single entity, this is for illustrative purposes only. In some implementations,processor20 may include a plurality of processing units. Theprocessor20 may be configured to executemodules26,28,30,32 and/or other modules by software; hardware; firmware; some combination of software, hardware, and/or firmware; and/or other mechanisms for configuring processing capabilities onprocessor20.
It should be appreciated that althoughmodules26,28,30,32 and/or other modules are illustrated inFIG. 1 as being co-located within a single processing unit, in implementations in whichprocessor20 includes multiple processing units, one or more ofmodules26,28,30, and/or32 may be located remotely from the other modules. The description of the functionality provided by thedifferent modules26,28,30, and/or32 described herein is for illustrative purposes, and is not intended to be limiting, as any ofmodules26,28,30,30, and/or32 may provide more or less functionality than is described. For example, one or more ofmodules26,28,30, and/or32 may be eliminated, and some or all of its functionality may be provided by other ones ofmodules26,28,30, and/or32. As another example,processor20 may be configured to execute one or more additional modules that may perform some or all of the functionality attributed below to one ofmodules26,28,30, and/or32.
Electronic storage22 may comprise electronic storage media that electronically stores information. The electronic storage media ofelectronic storage22 may include one or both of system storage that is provided integrally (i.e., substantially non-removable) withwireless client device12 and/or removable storage that is removably connectable towireless client device12 via, for example, a port (e.g., a USB port, a firewire port, etc.) or a drive (e.g., a disk drive, etc.).Electronic storage22 may 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 storage22 may include one or more virtual storage resources (e.g., cloud storage, a virtual private network, and/or other virtual storage resources).Electronic storage22 may store software algorithms, information determined byprocessor20, information received from one or more oftutorial asset server14,game server16, and/or mobileapplication marketplace server18, and/or other information that enableswireless client device12 to function as described herein.
User interface24 may be configured to communicate information between the user andwireless client device12. Such information may include visual information (e.g., the view of the game, and/or other visual information), audio information, tactile information, and/or other information. Information received from the user may include control inputs used to participate in the game and/or other information. By way of non-limiting example,user interface24 may include one or more of a keyboard, a keypad, a button, a touch sensitive surface, a touchscreen, a knob, a dial, a microphone, a switch, a position or motion sensor, and/or other interface devices.
FIG. 2 provides an exemplary illustration ofsystem10, according to various aspects of the invention. As can be seen inFIG. 2,tutorial asset server14 may include one ormore processors36,electronic storage38, and/or other components.Processor36 may be configured to execute atutorial development module40, atutorial transmission module42, and/or other modules.
Tutorial development module40 may be configured to facilitate generation of a first tutorial asset for a predetermined location in game play for a mobile application onwireless client device12. A tutorial asset may comprise instructions for how to play a particular portion of the game. The tutorial asset may include non-compiled information objects, such as images, scripts, and/or other non-compiled information.
Thetutorial development module40 may be configured to receive information for the tutorial asset from one or more game developers, game administrators, and/or other users. The information for the tutorial asset may comprise, text, one or more images, one or more templates, an order in which to combine the text, one or more images, and one or more templates, and/or other information for providing instructions to a user.
In some implementations, thetutorial development module40 may be configured to enable a game developer, game administrator, and/or other user to develop a template to be used in a tutorial asset. The template may comprise one or more input components, where an individual input component may receive text, an image, a link, a multimedia component, and/or other input. Thetutorial development module40 may store a developed template at theelectronic storage38 of thetutorial server14.
Thetutorial development module40 may develop the tutorial asset by combining the text, one or more images, one or more templates, and/or other information for providing instructions in the order set forth in the information received for the tutorial asset.
Thetutorial development module40 may also receive criteria relating to which users and/or whichwireless client devices12 associated with respective users to which to transmit the developed tutorial asset. The criteria relating to whichwireless client devices12 to transmit the tutorial asset may include, for example,wireless client devices12 associated with a particular user, with all users of the game, with one or more cohorts of users, with one or more particular operating systems, with one or more particular hardware components, with one or more versions of the game, and/or other criteria.
Thetutorial development module40 may store the information related to the tutorial asset, the tutorial asset, the criteria, and/or other information related to the development of the tutorial as tutorial development information in theelectronic storage38 of thetutorial server14.
Tutorial transmission module42 may be configured to initiate transmission of tutorial information towireless client device12. Tutorial information may comprise, for example, a tutorial asset developed viatutorial development module40, a location in game play at which the tutorial is to be integrated, and/or other information relating to the tutorial asset. In some implementations, responsive to a determination that the first tutorial asset is available for the game on the wireless client device,tutorial transmission module42 may initiate transmission of the first tutorial asset. In some implementations,tutorial transmission module42 may be configured to initiate a transmission of tutorial information to one or morewireless client devices12 that meet the criteria set forth in the tutorial development information responsive to the tutorial development information being stored inelectronic storage38.
Game server16 may be configured to host the game in a networked manner.Game server16 may include one ormore processors44,electronic storage46, and/or other components.Processor44 may be configured to execute agame server module48.Game server module48 may be configured to communicate game information with a game module being executed onwireless client device12 and/or one or more otherwireless client devices50 in order to provide an online multi-player experience to the users ofwireless client devices12,50. This may include executing an instance of the game and providing game information, including view information, game state information, and/or other game information, towireless client devices12,50 to facilitate participation of the users ofwireless client devices12,50 in a shared game experience.Game server module48 may be configured to facilitate communication between the users, as well as gameplay.Game server16 may be physically and/or logically separate and discrete fromasset server14 and/or mobileapplication marketplace server18.
Processors36 and/or44 may be implemented in one or more of the manners described with respect to processor20 (shown inFIG. 1 and described above). This includes implementations in whichprocessor36 and/orprocessor44 include a plurality of separate processing units, and/or implementations in whichprocessor36 and/or44 are virtualized in the cloud.Electronic storage38 and/or46 may be implemented in one or more of the manners described with respect to electronic storage22 (shown inFIG. 1 and described above).
FIG. 3 illustrates amethod50 of updating a game provided to a user on a wireless client device. The operations ofmethod50 presented below are intended to be illustrative. In some embodiments,method50 may 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 ofmethod50 are illustrated inFIG. 3 and described below is not intended to be limiting.
In some embodiments,method50 may 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 ofmethod50 in 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 ofmethod50.
At anoperation52, the game module may be executed. For example, the game module may be executed the wireless client device to assemble a view of the game for presentation to the user. The game module may be implemented in compiled codes stored on the wireless client device. The game module may communicate with a game server to receive information related to the game that facilitates assembly of the view. In assembling the view of the game, the game module may use game assets stored on the wireless client device. The game assets may be non-compiled information objects. The wireless client device may be the same as or similar to wireless client device12 (shown inFIGS. 1-2 and described herein). The game module may be the same as or similar to game module26 (shown inFIG. 1 and described herein). The game server may be the same as or similar to game server16 (shown inFIGS. 1-2 and described herein). In some implementations,operation52 may be performed by a game module the same as or similar to game module26 (shown inFIG. 1 and described herein).
At anoperation54, a tutorial asset may be developed at a tutorial asset server. In some implementations,operation54 may be performed by a tutorial development module the same as or similar to tutorial development module40 (shown inFIG. 2 and described herein).
At anoperation56, tutorial information including the developed tutorial asset and a location in game play at which the tutorial asset is to be integrated is sent from the tutorial server to the wireless client device. In some implementations,operation56 may be performed by a tutorial transmission module the same as or similar to tutorial transmission module42 (shown inFIG. 2 and described herein).
Atoperation58, tutorial information including the developed tutorial asset and a location in game play at which the tutorial asset is to be integrated may be received at the wireless client device. In some implementations,operation56 may be performed by a tutorial reception module the same as or similar to tutorial reception module28 (shown inFIG. 1 and described herein).
At anoperation60, the tutorial asset may be integrated into the operation of the game module on the wireless client device. Integration of the tutorial asset into the operation of the game module may result in the game module implementing the tutorial. In some implementations,operation60 may be performed by a tutorial integration module the same as or similar to tutorial integration module32 (shown inFIG. 1 and described herein).
Although the system(s) and/or method(s) of this disclosure have 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 disclosure 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 disclosure 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.