Managing video game provisioning during game preview
The process operation addresses the friction between content discovery and execution in video games by managing provisioning during previews with contextual analysis and real-time status indicators, enhancing user experience and resource efficiency.
Patent Information
- Application Number
- JP2022551390
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2020-06-02
- Filing Date
- 2021-01-20
- Publication Date
- 2025-05-20
- Estimated Expiration
- 2041-01-20
AI Technical Summary
Traditional video games experience friction between content discovery and execution due to long loading times and inefficient resource allocation, which negatively impact user experience and engagement.
A process operation that manages video game content provisioning during a preview, allowing automatic or manual initiation based on contextual analysis, with real-time status indicators displayed within the preview interface.
Reduces waiting times, improves user engagement, and optimizes resource management by initiating provisioning during the preview phase, providing a seamless transition to gameplay.
Smart Images

Figure 0007680116000001 
Figure 0007680116000002 
Figure 0007680116000003
Abstract
Description
[Background technology]
[0001] Video games are an emerging and evolving technology field. In today's era of on-demand content, users desire instant access to content. However, video game users often experience friction between the time they discover a video game and the time they actually begin playing the video game. This, among other technical issues, negatively impacts the user experience over the gaming platform, reduces the likelihood that a user will engage with a particular video game content, and reduces the efficiency of computing resources used to launch a video game. For example, traditional video games typically fail to preload gaming content to streamline video game launch. Additionally, traditional video games keep users on loading screens for extended periods of time while the video game loads. This is due to the large amount of content that needs to be downloaded to begin gameplay and the large amount of computing resources that need to be configured to run the video game, especially when the user is utilizing a gaming server in an online scenario.
[0002] Moreover, with the advent of on-demand content, another technical issue that arises is the ability to engage users with particular content. Software services and / or software platforms may allocate resources based on the viewership / engagement of particular content. This is important in the video game market, where a particular game may integrate multiple services after the initial launch of a version of the video game. Such integration of services may further affect how the content is presented to the user (e.g., through a graphical user interface), how distributed / online resources are allocated for gaming integration, and what applications / services are tied to such content, among other technical decisions. Summary of the Invention
[0003] To address the aforementioned technical challenges, the present disclosure aims to remove the friction between content discovery and content execution (e.g., initiating gameplay of a video game). For ease of explanation, the content described herein is video game content. However, it should be understood that the present disclosure can be configured to work with any type of content, such as through an on-demand content experience, without departing from the spirit of the present disclosure.
[0004] In view of the foregoing technical problems, the present disclosure relates to a process operation configured to manage the provisioning of video game content during the presentation of a video game preview (e.g., a video game trailer). The video game preview may be presented via a graphical user interface of an online gaming distribution service or other type of application / service. A decision for managing the provisioning of the video game is made while the video game preview is presented to a user. For example, a provisioning decision is made regarding whether to start the provisioning of the video game automatically (e.g., in the background of the video game preview) or wait for a user to manually start the provisioning of the video game. This technical decision may depend on a contextual analysis of signal data collected in association with a context of access by a user (e.g., a user account of an online gaming distribution service) accessing the video game preview. Status information related to a status of the provisioning of the video game may be determined, where a graphical indicator of that status information may be generated and then presented to a user while the video game preview is presented through a graphical user interface (GUI). For example, a status indicator for the video game provisioning may be rendered and displayed within the video game preview. Further examples describe processes related to contextual customization of the game preview as well as GUI menus used to present the game preview.
[0005] 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. Additional aspects, features and / or advantages of the examples will be set forth in part in the description that follows, and in part will be obvious from the description, or may be learned by practice of the disclosure. [Brief description of the drawings]
[0006] Non-limiting and non-exhaustive examples are described with reference to the following drawings:
[0007] [Figure 1] FIG. 1 illustrates an example system diagram of components interfacing to enable management of the state of provisioning of a video game during display of a video game preview, in which aspects of the present disclosure may be implemented.
[0008] [Diagram 2] FIG. 1 illustrates an example method for managing the state of provisioning of a video game during display of a video game preview, in which aspects of the present disclosure may be implemented.
[0009] [Figure 3A] A diagram showing a non-limiting example of a processing device view of a device that allows a user to access content through a graphical user interface of an online gaming distribution service, in which aspects of the present disclosure may be implemented. [Figure 3B] A diagram showing a non-limiting example of a processing device view of a device that allows a user to access content through a graphical user interface of an online gaming distribution service, in which aspects of the present disclosure may be implemented. [Figure 3C] A diagram showing a non-limiting example of a processing device view of a device that allows a user to access content through a graphical user interface of an online gaming distribution service, in which aspects of the present disclosure may be implemented. [Figure 3D] A diagram showing a non-limiting example of a processing device view of a device that allows a user to access content through a graphical user interface of an online gaming distribution service, in which aspects of the present disclosure may be implemented. [Figure 3E]A diagram showing a non-limiting example of a processing device view of a device that allows a user to access content through a graphical user interface of an online gaming distribution service, in which aspects of the present disclosure may be implemented.
[0010] [Figure 4] FIG. 1 illustrates a computing system suitable for implementing the processing operations described herein in connection with content provisioning management, in which aspects of the present disclosure may be practiced. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0011] The present disclosure aims to remove the friction between content discovery and content execution (e.g., initiating gameplay of a video game). For ease of explanation, the content described herein is video game content. However, it will be recognized that the present disclosure may be configured to work with any type of content, for example, through an on-demand content experience, without departing from the spirit of the present disclosure.
[0012] The present disclosure relates to process operations configured to manage the provisioning of video game content during the presentation of a video game preview (e.g., including a video game trailer). The video game preview may be presented through a graphical user interface of an online gaming distribution service or other type of application / service. A decision for managing the provisioning of the video game is made while the video game preview is presented to a user. For example, a provisioning decision is made regarding whether to start the provisioning of the video game automatically (e.g., in the background of the video game preview) or wait for a user to manually start the provisioning of the video game. This technical decision may depend on a contextual analysis of signal data collected in association with a context of access by a user (e.g., a user account of an online gaming distribution service) accessing the video game preview. Status information related to a status of the provisioning of the video game may be determined, in which case a graphical indicator of that status information may be generated and then presented to the user while the video game preview is presented through a GUI. For example, a status indicator for the video game provisioning may be rendered and displayed within the video game preview. Further examples describe processes related to contextual customization of the game preview as well as GUI menus used to present the game preview.
[0013] The application / service may be configured to provide a user with streaming access to video game content including a GUI menu of video game previews, access to a particular video game preview, access to a video game, etc. For example, the GUI menu may provide a user access to multiple video game previews in a presentation format. Although the presentation format may vary in various examples to include any known type of presentation format, one exemplary format is a tiled representation of the video game title. By selecting a particular tile for a video game preview, game content may automatically begin playing for that title (e.g., trailer, user generated content). The GUI menu is further configured to allow a user to interact with the displayed content. Functionality may be provided that allows a user to easily scroll through the displayed content through any type of known input type (e.g., touch, device, audio). For example, a user may provide touch input, where the user can discover additional game titles / content by swiping a particular GUI menu displaying game titles.
[0014] A video game preview may be provided through the GUI when the user selects a select game title from the GUI menu. While the user is viewing the video game preview, background processing may occur that manages the state of the provisioning of the video game, where provisioning occurs simultaneously with the display of the video game preview. In one example, the exemplary application / service may be configured to automatically initiate provisioning of the video game after a predefined time (e.g., immediately after the start of the video game preview or n seconds after the start of the video game preview). The exemplary GUI is configured to provide an indication of the state of the provisioning of the video game through the video game preview. By way of example, the indication of the provisioning state is a user interface element (e.g., a GUI button) that allows the user to automatically engage the video game upon selection of the user interface element. For example, the user interface element is a play button that is surfaced within the video game preview. The play button may include a visual element (e.g., a spinner indication) that represents loading of content to explain to the user that the video game is in the process of provisioning. When the user is ready to engage the video game, the user interface element (e.g., the play button) may change color and hide the visual element (e.g., the spinner indication) to indicate that the video game is ready to stream immediately on behalf of the user. This provides great value to online gaming distribution services not only by allowing users to discover new content, but also by increasing the overall engagement between users and the content (e.g., by reducing wait times).
[0015] Further, the present disclosure helps blur the provisioning time so that the user is immersed in the game content rather than simply waiting for the video game to load. Thus, the novelty of the present disclosure overcomes a significant barrier for content engagement, where the provisioning process can be initiated while the user is watching the video game trailer presented in the video game preview. In this way, the user does not feel like they are waiting to play the video game and is more likely to engage with the provisioned content. The provisioning process typically takes 25-30 seconds. If this process is pre-initiated on the user's behalf, the wait time will appear significantly less to the user. Additionally, computing resources can be better managed during the provisioning process, which, among other technical advantages, can improve processing efficiency for video game provisioning by reducing latency during the provisioning process and conserving resources / bandwidth for the computing device, including, in some examples, not requiring the user to manually initiate the provisioning process.
[0016] Further examples range from dynamically determining whether to enable automatic provisioning of the video game or to require the user to manually initiate server provisioning. In some cases, this may include determining when to automatically initiate the provisioning process (e.g., delayed after launching the video game preview). For example, a decision may be made to correlate user access to the video game preview with the likelihood that the user will choose to play the video game. A threshold may be determined for user engagement with the video game preview, which may be utilized to provide an indication as to whether the provisioning process should be initiated. For example, a user who remains viewing the video game preview for more than five seconds is likely to play the game. In this manner, provisioning decisions may be made to avoid increasing efficiency with respect to managing computing resources.
[0017] Additionally, user interface elements relating to the status of the provisioning of the video game may be dynamically updated during the presentation of the video game preview. This provides real-time status updates to the user throughout the presentation of the video game preview. For example, a user interface element (e.g., a Play button) that enables access to the video game content may have multiple provisioning states (e.g., Ready To Provision, Loading Expanded, Loading Minimized, Ready To Play, Initiate Manual Provisioning). This allows the system to show the user the current state of the server in its provisioning process. Once the server is ready to play the video game, the user interface element may be updated to provide a status indication that the video game is "Ready To Play". The user interface elements are selectable, and when the user selects a user interface element that reflects a "Ready To Play" state, the user is immediately taken to the video game and the user may immediately begin playing. In some alternative examples, the video game may be automatically launched (without requiring user interaction) directly from the video game preview based on the completion of the provisioning of the video game.
[0018] Exemplary technical advantages provided by the processes described in this disclosure include, but are not limited to: generating and rendering novel video game previews, including integrated GUI features, such as user interface elements configured to reflect the state of the provisioning of a video game; automating the video game provisioning process and correlating the provisioning process with the concurrency of video game previews; improving the processing efficiency of the computing device performing the provisioning of a video game (e.g., reduced processing cycles, resource / bandwidth savings); better management of computing resources for managing the video game provisioning process, e.g., in the example of a distributed service; reducing latency during the provisioning process and in all cases improving the user experience of the provisioned video game; improving the processing efficiency of a computing device that provides a video game preview by conserving resources / bandwidth of the computing device by not requiring the user to manually initiate the logging process; provisioning of an improved GUI experience that presents novel GUI menus and features to achieve the technical advantages described herein; novel configurations of artificial intelligence (AI) processing for generating customized video game previews (e.g., user-specific video game previews); and integration of customized video game previews in online gaming distribution services, as well as interoperability to enable interfacing with multiple different applications / services (e.g., of a software application platform) to enhance functionality and improve the user experience.
[0019] FIG. 1 illustrates an exemplary system diagram 100 of components interfacing to enable management of the state of a video game provisioning during the display of a video game preview, in which aspects of the disclosure may be implemented. By way of example, the components illustrated in the system diagram 100 may be executed by an exemplary computing system 401 (or multiple computing systems) as described in the description of FIG. 4. The system diagram 100 describes components that may be utilized to execute the processing operations described in the method 200 (FIG. 2), the processing associated with the visual diagrams of FIGS. 3A-3E, and the accompanying description. Additionally, the interactions between the components of the system diagram 100 may be modified without departing from the spirit of the disclosure. The exemplary components described in the system diagram 100 may be hardware and / or software components that are programmed to execute the processing operations described herein. In some examples, the components of the system diagram 100 may each be one or more computing devices associated with the execution of a particular service. The exemplary services may be managed by a software application platform that provides the components with access to and knowledge of other components associated with the application / service. In one example, the processing operations described in system diagram 100 may be implemented by one or more components connected over a distributed network. System diagram 100 includes one or more computing devices 102, one or more content provisioning management components 104, a distributed gaming server 106 (e.g., a distributed gaming platform), and a GUI for an online gaming distribution service 108.
[0020] The one or more computing devices 102 may be one or more computing devices configured for the execution of applications / services either through software components, hardware components, or a combination thereof. A user may utilize the one or more computing devices 102 to play video games through a gaming application / service (e.g., a video game application / service) or gaming software platform that provides an online gaming distribution service that allows access to a plurality of video games and related gaming content such as video game previews. In some examples, the video game content may be accessed through a computing device such as a PC, laptop, tablet, etc. In some other examples, the video games may be accessed through a game console. An exemplary game console may be configured to execute video games stored locally on a hard drive of the game console (or via a computer readable medium executing thereon), or may access video game content (e.g., content stored and accessed on a distributed data storage) via a network connection, or a combination thereof. The one or more computing devices 102 of the system 100 are also intended to cover examples in which a user is executing video games on a computing device that integrates components for the output of gaming data (e.g., a display, a display component, an audio component, a processor). Gaming data, such as video game content, may be executed locally via a computing device or may be accessed via a network connection.
[0021] The content provisioning management component 104 is configured to perform process management of the presentation of content through the online gaming distribution service, including rendering and presenting associated content such as GUIs and video game previews (e.g., video game trailers), and provisioning of video games in tandem with previewing the video game previews. The content provisioning management component 104 is further configured to customize the video game previews, including the content presented therein. Examples of processes performed by the content provisioning management component 104 include any of the process operations described herein, including the detailed description above, the process operation descriptions described in method 200 (FIG. 2), and the accompanying description of FIGS. 3A-3E.
[0022] As indicated above, the content provisioning management component 104 may be configured to customize the video game preview, including the content presented therein. In so doing, the content provisioning management component 104 may be configured to execute as a programmed software module, an AI process, or a combination thereof. This allows for contextual analysis to be performed so that the video game preview may be most contextually relevant to the user. The implementation of the AI process is known to those skilled in the art. The exemplary AI process may be applicable to aid in any type of deterministic or predictive processing described herein, but may be any of supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, among other examples. Non-limiting examples of supervised learning that may be applied include, but are not limited to: nearest neighbor processing; naive Bayes classification processing; decision trees; linear regression; support vector machines (SVM); and neural networks, among other examples. Non-limiting unsupervised learning that may be applied includes, but is not limited to, among other examples: application of clustering processes including k-means, hierarchical clustering, mixture modeling, etc. for clustering problems; application of associated rule learning; application of latent variable modeling; anomaly detection; and neural network processing. Non-limiting semi-supervised learning that may be applied includes, but is not limited to, among other examples: assumption determination processing; generative modeling; low-density separation processing and graph-based method processing. Non-limiting reinforcement learning that may be applied includes, but is not limited to, among other examples: value-based processing; policy-based processing; and model-based processing.In any example, the artificial intelligence process may be configured to apply a ranker to determine a best possible outcome based on the ranking / scoring process to output decisions related to the management of content (e.g., GUI menus or game previews) and / or the status of the provisioning of the content. Implementation of ranking / scoring processes is known to those skilled in the art. Beyond what is traditionally known regarding the operation of ranking processes for AI modeling, the highest ranked / scored output (or outputs) of the AI process may be utilized to determine the status of the provisioning of the video game and what status indicators should be provided in the generated user interface elements to reflect the provisioning status of the content, as well as specific content to be included in the customized video game preview.
[0023] Additionally, beyond what is known in the art, the AI process may be configured to correlate certain data (e.g., data for context evaluation) for purposes related to managing content within GUI menus, as well as generating content for video game previews and real-time (or near real-time) updating of video game previews. The exemplary AI process may further leverage data from other resources of the software application platform to improve accuracy for any of the identified technical purposes. For example, the content provisioning management component 104 may be configured to train and publish one or more trained AI models (e.g., machine learning models) that may be tailored to perform processes related to, among other examples: generating GUI menus for content / video game previews; generating customized video game previews; managing the provisioning state of video games, including determining and rendering status indicator icons that reflect the real-time status of the provisioning of content (e.g., video games); and determining whether to automatically initiate provisioning or request manual confirmation.
[0024] System diagram 100 further includes one or more distributed gaming servers 106. Distributed gaming servers 106 are configured to manage the processing of gaming data and enable the generation, rendering, and execution of content (including video games) associated with a video game application / service and / or integrated within an online gaming distribution service. In one example, one or more distributed gaming servers 106 may be a group of server devices configured to generate and render representations of video games and process data to enable the execution of video games, including processing to obtain video game data (e.g., user-specific). However, distributed gaming servers 106 may be any type of computing system that includes a data storage system, as described in the description of FIG. 4.
[0025] One or more distributed gaming servers 106 may be configured to effectively process gaming instances locally, online, or a combination thereof via a network connection. In doing so, one or more distributed gaming servers 106 may store data that, when executed by one or more processing components, enables an instance of a video game to be rendered. The configuration of a distributed gaming server 106 may change at any time based on bandwidth and available resources.
[0026] The distributed gaming server 106 may also be associated with a software platform that enables the online execution of video games, including processes for generating, rendering, and / or executing the GUI of the online gaming delivery service (e.g., XBOX Live®). In such an example, the distributed gaming server 106 may be further configured to manage data (e.g., game data) for the generation and rendering of the gaming platform, which may, for example, provide users with access to their own user accounts associated with the gaming platform. Additionally, one or more of the distributed gaming servers 106 may be connected with other network-accessible computing resources, including data repositories that store data to enable the execution of the processing operations described herein. For example, the gaming platform may be provided by an organization that manages a software platform that provides access to a number of different applications / services, and may interface with those applications / services to extend the functionality provided to users during operation of the online gaming delivery service.
[0027] In the system 100, the content provisioning management component 104 is configured to interface with one or more computing devices 102 and distributed gaming servers 106 to enable the execution of the processing operations described herein. As indicated in the preceding description, the content provisioning management component 104 interfaces with one or more computing devices 102 to enable the presentation of a GUI of the online gaming distribution service 108 via the one or more computing devices 102. In doing so, the content provisioning management component 104 may provide data to the one or more computing devices 102 including, but not limited to, data for providing GUI menus; data for rendering customized video game previews (including the particular type of content to be included in the preview); and status updates for the provisioning of video games that may be utilized to update the video game previews. In a further example, the content provisioning management component 104 interfaces with the distributed gaming servers 106 to identify the current processing state of one or more of those servers and to measure realistic provisioning times for video game provisioning at the present time or during the time required to provision video game content. The content provisioning management component 104 can select the most efficient server allocation / configuration to perform the video game provisioning, taking into account server resource availability and bandwidth during the time period required for provisioning. In such a case, the content provisioning management component 104 may include a scheduling component that manages the scheduling state to allocate distributed gaming servers for the provisioning process. Additionally, the content provisioning management component 104 interfaces with the distributed gaming servers 106 to enable launch of the video game once the video game is provisioned.
[0028] The online gaming delivery service 108 GUI is utilized to provide a GUI that allows a user to interface with game content including GUI menus that provide access to video game previews. The operation and rendering of online gaming delivery service GUIs are known to those skilled in the art, for example services (e.g., XBOX Live®) that allow users to access video games and related content. Beyond what is conventionally known, the online gaming delivery service 108 GUI is adapted to integrate with content provisioning management component 104 processing to provide users with an improved GUI experience that provides GUI menus of video game content as well as example video game previews that include a reflection of the provisioning status of the video games, among other technical advantages. Non-limiting examples of example video game previews provided through the online gaming delivery service 108 GUI are illustrated in FIGS. 3A-3E and further described in the accompanying description. In some alternative examples, the example video game previews may be provided through the GUIs of different applications / services executing on one or more computing devices 102. For example, the video game preview may be distributed through different notification services, messaging services (e.g., email services, SMS messaging services), or social networking services, among other examples. In a further example, the video game preview may be presented through a GUI in a form factor appropriate manner depending on the type of computing device being used to view the video game preview.
[0029] FIG. 2 illustrates an example method 200 for managing a state of provisioning of a video game during display of a video game preview, in which aspects of the disclosure may be implemented. As an example, method 200 may be executed across an example computing system 401 (or multiple computing systems) as described in the description of FIG. 4. The example components described in method 200 may be hardware and / or software components that are programmed to perform the processing operations described herein. The operations performed in method 200 may correspond to operations performed by systems and / or services that perform computer programs, software agents, application programming interfaces (APIs), plug-ins, AI processing including application of trained data models, intelligent bots, neural networks, and / or machine learning processing, among other examples. In an example, the processing operations described in method 200 may be implemented by one or more components connected over a distributed network. For example, the components may be executed on one or more network-enabled computing devices connected over a distributed network that enable the generation and / or execution of content for an online gaming distribution service and / or a particular video game. Although the examples described herein refer to video games and content associated with online gaming distribution services, it should be appreciated that the present disclosure may be configured to work with any type of content accessed through any type of application / service without departing from the spirit of the present disclosure.
[0030] Method 200 begins at process operation 202, where a menu of video game previews is presented through a GUI. A non-limiting example of a GUI is the GUI of an online gaming distribution service (108 in FIG. 1). However, as mentioned in the preceding description, in some alternative examples, the exemplary video game previews may be provided through the GUI of a different application / service running on a computing device. The GUI menu of video game previews may be presented through the GUI in a form factor appropriate manner depending on the type of computing device being used to view the GUI. Furthermore, the GUI menu provides a user access to multiple video game previews in a presentation format. While the presentation format may vary in various examples to include any known type of presentation format, one exemplary format is a tiled representation of the video game title. A non-limiting example of an exemplary tiled representation of the video game title is shown in FIG. 3A. By selecting a particular tile for the video game preview, the video game preview may automatically begin playing (e.g., trailer, user generated content) for the selected title.
[0031] In some examples, the presentation of the GUI menu (processing operation 202) may be customized for a user. That is, one version of the GUI menu may be presented differently for one user compared to another. This determination may be made based on an analysis of the signal data. As mentioned in the preceding description, this analysis may be performed by a programmed software module, a trained AI processor, or a combination thereof. Non-limiting examples of signal data include any of the following, individually or collectively, among other examples: user signal data regarding usage of the online gaming distribution service, including historical gameplay access and access to / type of content for a particular video game preview; signal data regarding the user's user account associated with any application / service associated with the user account; signal data regarding one or more devices associated with the user account (e.g., devices that access the online gaming distribution service); signal data from other users of the online gaming distribution service (e.g., friends or groups associated with the user account); signal data regarding user settings, including stylistic / layout preferences; and signal data regarding time requirements for provisioning of video games. For example, signal data may be collected from a user's prior usage of the online gaming distribution service regarding content preferences (e.g., activity on content including selected content, accessed content, and ignored content), which may be utilized to filter content for presentation in a menu to present a GUI menu tailored to one or more users. In some cases, programmed rules may be applied that are used to determine how to prioritize prior user activity related to video game content. For example, a rule may be applied that prioritizes newer video game content before determining how to filter other remaining video game content for presentation.However, it should be appreciated that rules for evaluating and filtering content in any possible manner may be set by a developer, thereby creating a customized list of content. It should further be noted that the AI processing may be adaptive, in which case the trained learning modeling may learn from past experiences, including interactions with the user, to provide the most attractive list of video game content for user viewing.
[0032] The flow of method 200 may proceed to process operation 204. At process operation 204, a selection of a particular video game preview is received through a GUI menu of video game previews. Based on the selection, a video game preview (e.g., a video game trailer) may be launched through the displayed GUI.
[0033] Selection of the video game preview may trigger (processing operation 206) to analyze time requirements for provisioning of the video game associated with the video game preview. In some alternative examples, other types of actions, such as hovering over (e.g., for a predetermined period of time) before the selection actually occurs may trigger initiating the analysis of time requirements for provisioning of the video game. For example, a user hovering over the preview for a predetermined period of time longer than a threshold time period (i.e., determined to be longer compared to browsing other content titles) may be an indication that the user may be interested in the video game content. This may trigger initiating processing operations to expedite provisioning during presentation of the video game preview. That is, preloading for provisioning (soft provisioning) may occur where processing is preemptively initiated to expedite provisioning when a user is likely to select a particular video game preview. Initiating soft provisioning of the video game is another technical advantage in that it further reduces latency associated with the provisioning process, resulting in less time for a user to wait for a video game to load, for example, during presentation of the video game preview. Signal data may be collected and analyzed in real time (or near real time) to determine whether to perform soft provisioning. The trained AI process can generate a decision regarding whether to initiate soft provisioning of a video game based on an analysis of the signal data. Non-limiting examples of such signal data include, but are not limited to, user input actions, user speech detected while a user is browsing a GUI menu, and device activity data (e.g., whether a gaming accessory, controller, etc. is connected), among other examples. Historical usage signal data may also be utilized to improve the accuracy of the predictive analysis.
[0034] In either case, the processing operations 206 may include identifying a provisioning time for launching a video game on one or more distributed gaming servers. This may occur through an interface between one or more distributed gaming servers that may be configured to run a video game and a content provisioning management component, in which case data related to the particular processing operations for provisioning the video game as well as data related to the configuration of the distributed gaming servers that will be provisioned with the video game may be obtained and analyzed. In some examples, the provisioning time may be predetermined if it may routinely take a set amount of time to provision a game. In other cases, the bandwidth of the server may be affected by network traffic, in which case the provisioning time may vary based on the availability of the server due to network utilization. The content provisioning management component may be configured to instantaneously determine the provisioning time through real-time (or near real-time) interactions with the distributed gaming servers. For example, identifying a provisioning time for launching a video game may include retrieving data associated with the configuration of one or more distributed gaming servers and analyzing the data associated with the configuration of one or more distributed gaming servers to determine the provisioning time and one or more temporal points of reference for the provisioning process. The provisioning time to load a video game may vary based on factors such as: whether a user account is signed in to the online gaming distribution service; the type of video game being provisioned (e.g., how much content needs to be provisioned); and the current available bandwidth / capacity of the distributed gaming server; and how long it will take to transfer / install the necessary game content in relation to the current configuration of the distributed gaming server; among other examples.Thus, monitoring of the provisioning time can occur continuously until the video game content is properly provisioned for game play.
[0035] In some examples, a version of (or updates to) the video game preview may be dynamically generated based on a determination of the time requirements for provisioning of the video game. If provisioning is determined to take a particular time (i.e., 30 seconds), the video game trailer may be customized to align with that provisioning time based on an evaluation of the time requirements for provisioning the game. Processing operation 206 may include determining one or more temporal reference points within the provisioning time that reflect a state of the provisioning of the video game that may be used to identify the state of the provisioning of the video game. Examples of temporal reference points include, but are not limited to, among other examples: the time required to authenticate / verify a user account to access the video game; the time required to download gaming content required to launch the video game; the time required to install content required to run the video game; the time required to launch the video game, including loading timings. Indicators that correlate with the temporal reference points may be generated, where the indicators are then presented in the generated version of the video game preview to provide the user with real-time (or near real-time) status updates on the video game provisioning without distracting the user from other content of the video game preview. For example, a user interface element (e.g., a play button) is included within the video game preview that allows the user to identify the provisioning state, where the video game preview is updated to provide one of a number of provisioning states (e.g., ready for provisioning, extended loading, minimal loading, ready to play, manual provisioning started) that are displayed within the customized video game preview. This allows the system to show the user the current state of the server in its provisioning process.Although specific examples are provided for criteria for identifying temporal reference points, it will be appreciated that any other type of data related to the provisioning of video games in a distributed manner may be used to generate the temporal reference points, as known to one of ordinary skill in the art, without departing from the spirit of the present disclosure. The real-time status of the provisioning of the video games changes based on the detection of one or more temporal reference points associated with the provisioning process.
[0036] The flow of the method 200 may proceed to process operation 208, where a customized video game preview (e.g., a video game trailer) may be created / generated. As indicated in the preceding description, different versions of the video game preview may be generated for different context scenarios, in which case the content of the generated video game preview may also vary on a case-by-case basis. In some examples, a developer may decide to provide a video game preview that presents a predefined content trailer along with one or more GUI elements that indicate the status of the provisioning of the video game content. In further examples, the context analysis may result in a decision to include additional types of supplemental content to further customize the video game preview. For example, programmed software modules, trained AI processes, and / or combinations thereof may be applied to generate the video game preview to determine the types of content to include in the version of the video game preview, including determining whether the video game preview can be customized or enhanced to create a more contextually relevant video game preview. This may occur when contextually relevant content is identified and available for inclusion in the video game preview. A ranking process may be performed to build a particular version of the video game preview based on the context analysis, as described herein. The AI process can be trained, adapted, and continually updated to provide the most relevant contextual ranking analysis, thereby providing the user with the video game preview that is most contextually relevant and appropriate for the manner in which the video game preview is being accessed / displayed. For example, signal data related to the device configuration for viewing the video game preview can be collected and analyzed to select the format (e.g., layout, size dimensions) of the video game content and the particular type of content to include for the selected format.The generation of the video game preview can customize the video game preview in a form factor appropriate manner, thereby maximizing the impact of the video game preview on the user.
[0037] The processing operations 208 may include processing operations performed by a content provisioning management component, which may analyze programmed rules to determine how to construct the video game preview and what content should be included therein. A developer may set rules for content generation that may be followed to determine priorities of content to be included in the video game preview. The programmed developer rules may determine the form of content that needs to be included in the generated video game preview, as well as a curated selection of optional content that may be utilized to further customize the video game preview (e.g., a user-specific video game preview). This may occur based on an analysis of one or more of, for example, specific developer rules prioritizing the type of content to be included in the video game preview; developer rules related to the form factor generation of the video game preview; and developer rules related to the evaluation of signal data (e.g., including user preferences for the type of content to be included in the video game preview); among other examples. Non-limiting examples of content that may be included in a video game preview include, but are not limited to: video game play trailers / clips for a particular video game; narration / audio for the video game preview; GUI elements for navigational control of the video game preview; one or more GUI elements for managing the provisioning state of the video game while the video game preview is running; and supplemental contextual content that may be utilized to further customize the video game preview at a user-specific level (e.g., for a user or group of users).Non-limiting examples of supplemental content that may optionally be included in a video game preview include, among other examples, but are not limited to: user-specific (or another user-specific) video game clips that reflect previous instances of the user's gameplay; video game-specific in-game add-ons / purchases (which may, for example, be contextually relevant to the user and their gameplay within the video game); user-specific gaming data that reflects a particular user's gameplay for a particular video game (e.g., milestones, specific gameplay events, gameplay records, XP and levels that reflect past, present and / or future states of gameplay), and identification of communication data including messages from the user and / or other users (e.g., social networking posts), video game reviews, etc. Supplemental content may be collected, stored and parsed for contextual evaluation such that such content is readily available for dynamic generation of customized video game previews.
[0038] In some examples, the video game preview may be generated in real-time (or near real-time) while the user is accessing the online gaming broadcast service, while in other cases a version of the video game preview may be pre-generated and loaded for use at a later time (e.g., while the user is accessing the online gaming broadcast service). In examples where a version of the video game preview is pre-generated, a selection process may occur at the time the video game preview is launched (processing action 210) to select a particular version of the video game preview to surface at the online gaming broadcast service. The determination of the version of the video game preview to surface may be made based on a contextual analysis of any type of signal data obtained and analyzed, as described in the preceding discussion. This may further include signal data related to time requirements for the provisioning of the video game. Non-limiting examples of signal data include, among other examples, any of the following, individually or collectively: user signal data regarding usage of the online gaming distribution service, including past game play access and access to specific video game previews / type of content; signal data regarding the user's user account associated with any applications / services associated with the user account; signal data regarding one or more devices associated with the user account (e.g., devices accessing the online gaming distribution service); signal data from other users of the online gaming distribution service (e.g., friends or groups associated with the user account); signal data regarding user settings, including style / layout preferences; and signal data regarding time requirements for provisioning of video games. For example, signal data may be collected from a user's previous usage of the online gaming distribution service regarding content preferences (e.g., activity to content, including selected content, accessed content, ignored content), which may be utilized to filter content for presentation in a menu.In some cases, programmed rules may be applied that are used to determine how to prioritize previous user activity related to video game content. In at least one example, a ranking process may be performed to select a particular version of a video game preview based on a contextual analysis of signal data about application / service usage. The AI process may be trained, adapted, and continually updated to provide relevant contextual ranking analysis, thereby providing the user with the most contextually relevant video game previews.
[0039] In process operation 210, a video game preview (e.g., a video game trailer) is launched through the GUI of the online gaming distribution service. The launching (process operation 210) renders and displays the video game preview within the GUI. As noted in the preceding description, the video game preview may be launched based on receiving a selection of a particular game tile from a GUI menu that provides a representation of the video game preview (process operation 210). In some alternative examples, the online gaming distribution service may be configured to automatically launch a trailer for a particular video game, for example, to allow a user to interact with new and / or recommended content. For example, the video game content may be a feature within a particular GUI window, which may allow a user to engage with the particular video game content without requiring a user action to select the particular video game preview. In another example, a particular version of the video game preview may be sent for launching for display in other modalities other than the GUI of the online gaming distribution service. As referenced in the preceding description, the video game preview may be surfaced through other modalities. Contextual analysis of the signal data may result in a determination that the user may prefer to receive content through another modality (e.g., email, text message, social networking account, collaborative interaction application / service). This type of analysis is possible through telemetric analysis of user activity across multiple applications / services (e.g., software applications / platforms).
[0040] After the video game preview is launched for display, a status indicator for the status of the provisioning of the video game may be provided within the video game preview. In processing operation 212, one or more provisioning decisions are generated. An exemplary provisioning decision refers to determining how / when provisioning of the video game associated with the running video game preview occurs. Such provisioning decisions may include, among other examples: determining whether to automatically initiate provisioning of the video game while displaying the video game preview; determining when to automatically initiate provisioning of the video game (e.g., on delay from the start of the video game preview based on user preferences and / or context evaluation); or requesting that the user manually initiate provisioning of the video game through the video game trailer. The provisioning decision may be pre-programmed to occur in various specific technical scenarios or may be based on context evaluation of signal data, as discussed above. In one example, the provisioning decision is made to automatically initiate provisioning of the video game contemporaneous with the execution of the video game preview. A trigger for initiating provisioning of the video game may be detecting the launch of the video game preview.
[0041] In another example, processing operation 212 includes determining a time delay to apply to the provisioning of the video game based on an analysis of user signal data associated with the user account. For example, a contextual analysis may result in a determination that a user is likely to play a video game after viewing a certain amount of video game previews. This may be a threshold determination based on a contextual evaluation, where, for example, watching a 5 second video game preview may not be an indicator of user engagement versus watching a 15 second video game preview, which may mean that the user is more likely to play the video game. In an example technique where a time delay is determined to be applicable, automatically initiating the provisioning of the video game may include applying a time delay after launching a trailer of the video game before automatically initiating the provisioning of the video game.
[0042] In yet another example, the contextual evaluation may result in a decision to request the user to manually initiate provisioning, which may be reflected through a user interface element that provides a real-time status of the provisioning (e.g., an initial representation before a status indicator icon is updated based on the progress of the provisioning). That is, the contextual analysis may determine that the user prefers to manually initiate the provisioning of the video game, or that the prediction regarding whether it would be efficient to initiate provisioning is inconclusive based on the contextual analysis of the signal data (e.g., user-specific signal data). In some cases, the decision regarding whether to initiate automatic provisioning or request manual provisioning may be a threshold decision based on the results of the contextual analysis of the exemplary signal data. The threshold may be set at any interval by the developer without departing from the spirit of the present disclosure. If the manual provisioning option is determined to be best, a GUI indicator may still be provided through the video game preview, allowing the user to manually initiate provisioning while the video game trailer is presented.
[0043] As indicated in the preceding description, the status of the provisioning of the video game may be updated, for example, in real time (near real time) during the presentation of the video game preview. The flow of method 200 may proceed to process operation 214, where the status of the provisioning of the video game may be detected during the execution of the video game preview (e.g., while the video game trailer is displayed within the GUI of the online gaming distribution service). The status of the provisioning may reflect the results of an analysis of the time requirements for the provisioning of the video game (e.g., associated with a distributed gaming server).
[0044] At process operation 216, one or more status indicators may be generated reflecting the provisioning of the video game for execution. Status indicator icons may be generated based on the above determinations for provisioning of the video game. Process operation 216 may include generating or invoking the display of user interface elements for display in the video game preview or concurrent GUI window that present status indicator icons reflecting real-time status of the provisioning. Non-limiting examples include, but are not limited to, an indicator indicating that the video game is ready for provisioning; an indicator indicating that gaming data for the video game is being loaded; and an indicator indicating that the video game is ready to play; and an indicator for initiating manual provisioning of the video game, among other examples.
[0045] The method 200 may then proceed to process operation 218, where the video game preview is updated to present GUI elements that provide status indicators reflecting the real-time status of the provisioning of the video game. In one example, the user interface elements include a visual effect that indicates that the video game is ready to play (e.g., properly provisioned) and draws attention to the real-time updated status. It will be appreciated that any type of indication that draws attention to the real-time status of the provisioning may be provided through or simultaneously with the video game preview. Non-limiting examples of such indications include, but are not limited to, visual / graphical changes, including changes in color, font, size, etc.; audio indications, including sound generation or incorporation of speech; and vibrations provided to the user device / accessory (e.g., provided through a game controller or other input device), among other examples.
[0046] The flow of the method 200 may proceed to decision operation 220, where it is determined whether an update to the provisioning status of the video game is detected. If the provisioning of the video game is still beginning, the real-time status of the provisioning may be updated multiple times during the time that the video game preview is presented to the user. In examples where the provisioning of the video game is still beginning, the flow of decision operation 220 may branch YES and processing of the method 200 may return to processing operation 214 to detect the status of the provisioning of the video game. In examples where the provisioning status is not updated, the flow of decision operation 220 may branch NO and processing of the method 200 may proceed to decision operation 222.
[0047] At decision operation 222, it is determined whether a selection of a user interface element is made to launch a video game from the video game preview. In instances where a selection is not made, the flow of decision operation 222 branches NO and processing of method 200 remains idle until further user action is taken. For example, this may include continuing to present the video game preview or terminating the video game preview if the user chooses to leave without playing the video game. In instances where a selection of a user interface element is made to trigger the launch of a video game from the video game preview, the flow of decision operation 222 branches YES and processing of method 200 proceeds to operation 224.
[0048] In process action 224, based on receiving the selection, the provisioned video game is launched directly from the video game preview.
[0049] 3A-3E illustrate non-limiting examples of processing device views of a device that allows a user to access content through a graphical user interface of an online gaming distribution service in which aspects of the present disclosure may be implemented. Figures 3A-3E provide non-limiting examples of the front end of the processing described above, including system diagram 100 (FIG. 1) and method 200 (FIG. 2).
[0050] 3A presents a processing device view 300 illustrating the presentation of content through a GUI 306 of an online gaming distribution service. A user may sign into an online gaming distribution service accessed through a client computing device 302. Examples of client computing devices 302 include, but are not limited to, a game console or any other type of computing device (e.g., cell phone, laptop, PC, mobile gaming device). Non-limiting examples of computing devices are described elsewhere herein, including in the description of FIG. 4 (e.g., computing system 401). The online gaming distribution service GUI 306 may further display application command controls 304 that provide user interface elements related to managing various aspects of the online gaming distribution service. Non-limiting examples of such aspects include, but are not limited to: pages of content accessible through the online gaming delivery service (e.g., a home page, a specific content page for a video game); user messaging controls, including messaging between users of the online gaming delivery service and feedback to developers of the online gaming delivery service; user sign-in / login to the online gaming delivery service; content management, including content purchased or otherwise accessible via the online gaming delivery service; access to an online store to purchase content through the online gaming delivery service; access to user profile data, including administrative information, achievements, game play records, etc. The online gaming delivery service GUI 306 shown in the processing device view 300 shows that a user account ("Austin Telmen") is signed into the online gaming delivery service and is accessing game content.
[0051] In the example shown in the processing device view 300, the content available for accessing video game previews is presented in a tiled format through the online gaming broadcast service's GUI 306. That is, a contextual GUI menu for previewing the game content may be displayed through the online gaming broadcast service's GUI 306. The exemplary GUI menu may be customized for a user to view in the manner previously described in the preceding description. It will be further appreciated that other types of content and GUI menus may also be presented through the online gaming broadcast service as known to those skilled in the art.
[0052] The content for accessing the video game previews (e.g., a GUI menu providing access to the video game previews) is configured to allow a user to select a particular tile, each of tiles 308-312, associated with a video game, which can navigate the user to a video game preview (e.g., a video game trailer) of the particular video game. The processing device view 300 illustrates an action 314 in which a user is selecting (e.g., through any type of input recognition, including touch input or device input) a gaming tile 312 (e.g., a fictional game called "OUTERWORLD"). Selection of the gaming tile 312 can automatically navigate the online gaming distribution service GUI 306 to a video game trailer associated with the video game ("OUTERWORLD").
[0053] FIG. 3B presents a processing device view 320 illustrating an example of a GUI of an online gaming distribution service continuing from that shown in the processing device view 300 (FIG. 3A). In the example shown in the processing device view 320, a user is directed to a video game preview 322 through the GUI based on receiving an action 314 of selecting a gaming tile 312 (of FIG. 3A). The video game preview 322 may be configured to launch automatically, or alternatively, a user may utilize user interface controls to manage the state of execution of the video game preview 322. While the video game preview 322 is executing and displaying its content, an example content provisioning management component may be configured to perform processing operations related to managing the provisioning of a video game (e.g., “OUTERWORLD”) associated with the video game preview 322. A user interface element may be presented within the video game preview 322 that indicates a real-time status of the provisioning of the video game. The user interface element provides a real-time status indicator of the provisioning of the video game. As described in several examples herein, the provisioning of the video game may be automatically initiated upon launch of the video game preview 322. In other technical examples, the provisioning of the video game may be delayed or may require manual approval from the user, for example, based on a context evaluation associated with the user accessing the video game preview 322. In any example, a status indicator 324 of the real-time status of the provisioning of the video game may be displayed in the video game preview 322. In the example shown in the processing device view 320, the status indicator 324 is a visual indication that the video game provisioning has begun (e.g., the video game is being loaded for execution via a distributed gaming server). The status indicator 324 reflects a point in the provisioning, and such a point may also correspond to a time point associated with the execution of the content of the video game preview 322 (e.g., 1 second into the video game trailer at 2 minutes and 30 seconds).The status indicators 324 may be formed in any visual form / format without departing from the spirit of the present disclosure. Additionally, the status indicators 324 may change based on real-time detected conditions related to the provisioning of the video game.
[0054] FIG. 3C presents a processing device view 340 showing an example of an online gaming distribution service GUI continuing from that shown in processing device view 320 (FIG. 3B). As shown in processing device view 340, video game preview 322 has begun at a later time when the real-time status of the provisioning of the video game has changed. Status indicator 342 shows the update to the real-time status of the provisioning of the video game reflected in video game preview 322. The user interface element shown in status indicator 342 is intended to convey to the user that the link to initiate gameplay for the video is still being provisioned / loaded, but once the video game is properly provisioned, the user can select that icon to launch the video game from video game preview 322. In some cases, the status indicator may allow the user to access the video game once a threshold amount of video game content has been provisioned (e.g., downloaded), in which case completion of provisioning may begin after selection of the user interface element for the status indicator without affecting the presentation of the video game to the user.
[0055] FIG. 3D presents a processing device view 360 showing an example of an online gaming distribution service GUI continuing from that shown in processing device view 340 (FIG. 3C). As shown in processing device view 360, video game preview 322 has begun at a later time when the real-time status of the provisioning of the video game has changed. Status indicator 362 shows an update to the real-time status of the provisioning of the video game reflected within video game preview 322. Status indicator 362 provides a visual update indicating that the video game has been properly provisioned such that a user may begin playing the video game through selection of status indicator 362. In comparison to status indicator 342 displayed in FIG. 3C, status indicator 362 includes bold (or other type of visual effect) that draws the user's attention to the fact that the video game has been provisioned and is accessible through video game preview 322.
[0056] 3E presents a processing device view 380 showing an example of an online gaming distribution service GUI continuing from that shown in processing device view 360 (FIG. 3D). Processing device view 380 shows an example of how the video game trailer can be further customized for a user ("Austin Telmen") who is signed into the online gaming distribution service. This may include presenting supplemental content to contextually customize the video game preview on behalf of the user.
[0057] As shown in the processing device view 380, the user interface elements reflecting the status indicator 362 do not change even as the video game trailer moves to a later time because the video game is properly provisioned for gaming access at the previous point in the video game trailer (shown in FIG. 3D). However, the video game preview 322 may be updated with other types of content portions customized for the user. For example, a user-specific (or another user-specific) video game clip 382 may be surfaced within the video game preview 322. In some cases, the content shown in the video game preview 322 may be sufficiently specific to the user's previous gameplay experience. Additionally, other types of supplemental content that may be used to contextually tailor the video game preview 322 may include, but are not limited to: in-game add-ons / purchases 384 specific to the video game shown within the video game preview 322; and identification of user-specific gaming data 386 reflecting a particular user's gameplay for a particular video game, among other examples. Such types of supplemental content may be determined from a contextual analysis of signal data (e.g., user-specific signal data collected through online gaming distribution services and / or other types of applications / services associated with a user account. Other non-limiting examples of supplemental content are described in the preceding discussion and may be incorporated into the generated video game preview without departing from the spirit of this disclosure.
[0058] FIG. 4 illustrates a computing system 401 suitable for implementing the processing operations described herein in connection with content provisioning management, in which aspects of the present invention may be implemented. The computing system 401 may be implemented as a single apparatus, system, or device, or may be implemented in a distributed manner as multiple apparatus, systems, or devices. For example, the computing system 401 may include one or more computing devices that perform processing for applications and / or services across a distributed network to enable the execution of processing operations described herein across one or more applications or services. The computing system 401 may include a collection of devices that perform processing for front-end applications / services, back-end applications / services, or a combination thereof. The computing system 401 includes, but is not limited to, a processing system 402, a storage system 403, software 405, a communication interface system 407, and a user interface system 409. The processing system 402 is operatively coupled to the storage system 403, the communication interface system 407, and the user interface system 409. Non-limiting examples of computing system 401 include, but are not limited to, smart computing devices including smartphones, laptops, tablets, PDAs, desktop computers, servers, television devices and wearable computing devices, e-reader devices, game consoles and conferencing systems, among other non-limiting examples.
[0059] The processing system 402 loads and executes the software 405 from the storage system 403. The software 405 includes one or more software components (e.g., 406a and 406b) configured to enable the functionality described herein. In some examples, the computing system 401 may be a game console or other type of computing device that allows a user to access video games and / or online gaming distribution services that may or may not be accessed via a network connection. For example, the computing system 401 may be a device utilized to perform processing operations related to accessing video game previews and managing video game previews, including generating and presenting video game previews that provide notification of the status of the provisioning of the video game during the presentation of the video game preview. When executed by the processing system 402, the software 405 directs the processing system 402 to operate as described herein with respect to at least the various processes, operational scenarios, and sequences discussed in the implementations above. The computing system 401 may optionally include additional devices, features, or functionality not described for purposes of brevity. Computing system 401 may further be utilized to perform the processing operations described in system diagram 100 (FIG. 1), method 200 (FIG. 2), or the accompanying description of FIGS. 3A-3E.
[0060] 4, the processing system 402 may include processors, microprocessors, and other circuitry that retrieves and executes the software 405 from the storage system 403. The processing system 402 may be implemented in a single processing device, or may be distributed across multiple processing devices or subsystems that cooperate in executing program instructions. Examples of processing systems 402 include general purpose central processing units, microprocessors, graphical processing units, application specific processors, sound cards, speakers and logic devices, gaming devices, and any other type of processing device, combination or variation thereof.
[0061] Storage system 403 may include any computer readable storage medium that is readable by processing system 402 and capable of storing software 405. Storage system 403 may 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, cache memory, or other data. Examples of storage media include random access memory, read-only memory, magnetic disks, optical disks, flash memory, virtual and non-virtual memory, magnetic cassettes, magnetic tapes, magnetic disk storage or other magnetic storage devices, or other suitable storage media except for propagating signals. In no case is a computer readable storage medium a propagating signal.
[0062] In addition to computer-readable storage media, in some implementations storage system 403 may also include computer-readable communication media over which at least a portion of software 405 may be communicated internally or externally. Storage system 403 may be implemented as a single storage device, but may also be implemented across multiple storage devices or subsystems that are co-located or distributed with respect to each other. Storage system 403 may include additional elements, such as a controller, that may be in communication with processing system 402 or possibly other systems.
[0063] The software 405 may be implemented in program instructions that, among other functions, when executed by the processing system 402, may cause the processing system 402 to operate as described with respect to various operational scenarios, sequences, and processes illustrated herein. For example, the software 405 may include program instructions for executing one or more content provisioning management components 406a as described herein. The software 405 may further include application / services components 406b that provide applications / services as described in the preceding description, such as gaming applications / services or online gaming distribution services (e.g., provided by a gaming platform).
[0064] In particular, the program instructions may include various components or modules that cooperate or otherwise interact to perform the various processes and operational scenarios described herein. The various components or modules may be embodied in compiled or interpreted instructions, or other variations or combinations of instructions. The various components or modules may be executed in a synchronous or asynchronous manner, serially or in parallel, in a single-threaded environment or multi-threaded, or according to any other suitable execution paradigm, variation, or combination thereof. Software 405 may include additional processes, programs, or components, such as operating system software, virtual machine software, or other application software. Software 405 may also include firmware or some other form of machine-readable processing instructions executable by processing system 402.
[0065] In general, the software 405, when loaded and executed on the processing system 402, may transform an entire suitable apparatus, system, or device (of which the computing system 401 is representative) from a general-purpose computing system to a specialized computing system customized to process data and respond to queries. In effect, the encoding software 405 on the storage system 403 may transform the physical structure of the storage system 403. The particular transformation of the physical structure may depend on various factors in different implementations of this description. Examples of such factors may include, but are not limited to, the technology used to implement the storage media of the storage system 403, whether the computer storage media is characterized as a primary or secondary storage medium, as well as other factors.
[0066] For example, if the computer-readable storage medium is implemented as a semiconductor-based memory, the software 405 may transform the physical state of the semiconductor memory when the program instructions are encoded therein, such as by transforming the state of transistors, capacitors, or other discrete circuit elements that make up the semiconductor memory. Similar transformations may occur with respect to magnetic or optical media. Other transformations of physical media are possible without departing from the scope of this description, and the foregoing examples are provided only to facilitate this discussion.
[0067] The communication interface system 407 may include communication connections and devices that enable communication with other computer systems (not shown) over a communication network (not shown). The communication interface system 407 may also be utilized to cover interfaces between the processing components described herein. Examples of connections and devices that together enable inter-system communication may include network interface cards or devices, antennas, satellites, power amplifiers, RF circuits, transceivers, and other communication circuits. The connections and devices may communicate over a communication medium to exchange communications with other computer systems or networks of systems, such as metal, glass, air, or any other suitable communication medium. The aforementioned media, connections, and devices are well known and need not be discussed at length here.
[0068] The user interface system 409 is optional and may include a keyboard, a mouse, a voice input device, a touch input device for receiving touch gestures from a user, a motion input device for detecting non-touch gestures and other movements by the user, gaming accessories (e.g., controllers and / or headsets) and other equivalent input devices and associated processing elements capable of receiving user input from a user. Output devices such as displays, speakers, haptic devices and other types of output devices may also be included in the user interface system 409. In some cases, input and output devices may be combined into a single device, such as a display capable of displaying images and receiving touch gestures. The aforementioned user input and output devices are well known in the art and need not be discussed at length here.
[0069] The user interface system 409 may also include associated user interface software executable by the processing system 402 to support the various user input and output devices discussed above. Separately or in cooperation with each other and other hardware and software elements, the user interface software and user interface devices may support a graphical user interface, a natural user interface, or any other type of user interface that enables, for example, front-end processing of the example applications / services described herein, including rendering a GUI (e.g., providing one or more indications of the status of the provisioning of a video game) for an online gaming distribution service, including video game previews and contextual GUI menus for providing customized video game previews, rendering GUIs and content for other interface applications / services, or any combination thereof. The user interface system 409 includes a graphical user interface that presents graphical user interface elements that represent any point in the processing described in the preceding description, including the processing operations described in the front-end representations associated with the description of the system diagram 100 (FIG. 1), the method 200 (FIG. 2), and FIGS. 3A-3E. The graphical user interface of user interface system 409 may be further configured to display graphical user interface elements (e.g., data fields, menus, links, graphs, charts, data correlation representations and identifiers, etc.) that are representations generated from the processes described in the preceding description. The example applications / services may be further configured to interface with processing components of computing system 401 that enable the output of other types of signals (e.g., audio output) along with operation of the example applications / services (e.g., gaming applications / services) described herein.
[0070] Communications between computing system 401 and other computing systems (not shown) may occur over a communications network or networks according to various communications protocols, combinations of protocols, or variations thereof. Examples include an intranet, the Internet, a local area network, a wide area network, a wireless network, a wired network, a virtual network, a software-defined network, a data center bus, a computing backplane, or any other type of network, combination of networks, or variations thereof. The aforementioned communications networks and protocols are well known and need not be discussed at length here. However, some communications protocols that may be used include, but are not limited to, the Internet Protocol (IP, IPv4, IPv6, etc.), Transmission Control Protocol (TCP), and User Datagram Protocol (UDP), as well as any other suitable communications protocol, variation, or combination thereof.
[0071] In any of the foregoing examples in which data, content, or any other type of information is exchanged, the exchange of information may occur according to any of a variety of protocols, including FTP (File Transfer Protocol), HTTP (Hypertext Transfer Protocol), REST (representational state transfer), WebSocket, DOM (Document Object Model), HTML (Hypertext Markup Language), CSS (Cascading Style Sheets), HTML5, XML (Extensible Markup Language), Java® Script, JSON (JavaScript Object Notation) and AJAX (Asynchronous JavaScript and XML), Bluetooth®, infrared, RF, cellular networks, satellite networks, Global Positioning System, and any other suitable communications protocols, variations, or combinations thereof.
[0072] The functional block diagrams, operational scenarios and sequences, and flow diagrams provided in the drawings represent exemplary systems, environments, and methodologies for implementing novel aspects of the present disclosure. For ease of explanation, the methods included herein may be in the form of functional diagrams, operational scenarios or sequences, or flow diagrams, and may be described as a series of operations, but it will be understood and appreciated that the methods are not limited by the order of operations, since some operations may occur in different orders and / or simultaneously with other operations as shown and described herein accordingly. For example, those skilled in the art will understand and appreciate that a method may alternatively be represented as a series of interrelated states or events, such as in a state diagram. Furthermore, not all operations illustrated in a methodology may be required for a novel implementation.
[0073] The description and drawings contained herein show specific implementations to teach those skilled in the art how to make and use the best options. For the purpose of teaching the principles of the invention, some conventional aspects have been simplified or omitted. Those skilled in the art will recognize variations from these implementations that fall within the scope of the invention. Those skilled in the art will also understand that the features described above can be combined in various ways to form multiple implementations. As a result, the present invention is not limited to the specific implementations described above, but only by the claims and their equivalents.
[0074] Throughout this specification, references to "one example" or "an example" mean that a particular described feature, structure, or characteristic is included in at least one example. Thus, use of such a phrase may refer to one or more examples. Furthermore, the described features, structures, or characteristics may be combined in any suitable manner in one or more examples.
[0075] However, one skilled in the art may recognize that the embodiments may be practiced without one or more of the specific details, or with other methods, resources, materials, etc. In other instances, well-known structures, resources, or operations have not been shown or described in detail merely to discourage obscure aspects of the embodiments.
[0076] Although sample embodiments and applications have been illustrated and described, it will be understood that the embodiments are not limited to the precise configuration and resources described above. Various modifications, changes and variations apparent to those skilled in the art may be made in the configuration, operation and details of the methods and systems disclosed herein without departing from the scope of the embodiments as claimed.
Claims
1. presenting a menu of video game previews within a graphical user interface of the online gaming distribution service; receiving, through the graphical user interface, a selection of a video game preview from the menu of video game previews; launching the video game preview through the graphical user interface based on receiving the selection, the launching displaying the video game preview within the graphical user interface; automatically initiating provisioning of a video game presented within the video game preview based on detecting the activation of the video game preview; detecting a state of provisioning of the video game while the video game preview is displayed within the graphical user interface; presenting, within the video game preview, a user interface element indicating a real-time status of the provisioning of the video game based on detecting the state of the provisioning of the video game, the real-time status of the provisioning of the video game changing based on detecting one or more time reference points within a provisioning time for launching the video game; A method comprising:
2. identifying the provisioning time for launching the video game on one or more distributed gaming servers, the one or more temporal reference points within the provisioning time reflecting various states of provisioning of the video game that can be used to identify the state of provisioning of the video game. The method of claim 1.
3. identifying the provisioning time for launching the video game includes retrieving data associated with a configuration of the one or more distributed gaming servers; and analyzing the data associated with the configuration of the one or more distributed gaming servers to determine the provisioning time and the one or more temporal reference points. The method of claim 2.
4. The state of the provisioning of the video game is determined based on detection of a temporal reference point among the one or more temporal reference points, and the real-time status of the provisioning of the video game is one or more selected from the group including an indicator indicating that the video game is ready for provisioning, an indicator indicating that gaming data of the video game is loading, and an indicator indicating that the video game is ready to play. The method of claim 2.
5. detecting a state of the provisioning of the video game includes detecting that the video game is loaded and ready to play, and the user interface element indicating a real-time status of the provisioning of the video game includes a visual effect indicating that the video game is ready to play and drawing attention to the real-time status, the method further including automatically launching the video game through the graphical user interface based on receiving a selection of the user interface element. The method of claim 1.
6. detecting an updated state of the provisioning of the video game while the video game preview is running; and modifying, in the graphical user interface, the user interface element indicating the real-time status of the provisioning of the video game based on the updated state of provisioning; The method of claim 1 further comprising:
7. detecting a user account associated with the online gaming distribution service viewing the menu of a video game preview; and determining a time delay to apply to the provisioning of the video game based on an analysis of user signal data associated with the user account, wherein automatically initiating the provisioning of the video game includes applying the time delay after launching the video game preview and before automatically initiating the provisioning of the video game. The method of claim 1.
8. detecting a user account associated with the online gaming distribution service viewing the menu of video game previews; and analyzing user-specific usage data for the user account from the online gaming distribution service, wherein presenting the menu of video game previews includes customizing the listing of video game previews in the menu for the user account based on results of the analysis of the user-specific usage data. The method of claim 1.
9. detecting a user account associated with the online gaming distribution service viewing the menu of a video game preview; identifying user gaming data associated with the user account specific to the video game associated with the video game preview; and selecting one or more portions from the user gaming data for incorporation into the video game preview to create a user-specific version of the video game preview, wherein presenting the video game preview includes including the one or more portions from the user gaming data within the video game preview. The method of claim 1.
10. The one or more portions from the user gaming data include one or more selected from the group including: video clips showing previous gameplay of the video game by the user account; a state of gameplay within the video game by the user account; and in-game purchases for the video game available to the user account.
10. The method of claim 9.
11. At least one processor; operatively connected to the at least one processor and, when executed by the at least one processor, causing the at least one processor to: presenting a menu of video game previews within a graphical user interface of the online gaming distribution service; receiving, through the graphical user interface, a selection of a video game preview from the menu of video game previews; launching the video game preview through the graphical user interface based on receiving the selection, the launching displaying the video game preview within the graphical user interface; automatically initiating provisioning of a video game presented within the video game preview based on detecting the activation of the video game preview; detecting a state of provisioning of the video game while the video game preview is displayed within the graphical user interface; presenting, within the video game preview, a user interface element indicating a real-time status of the provisioning of the video game based on detecting the state of the provisioning of the video game, the real-time status of the provisioning of the video game changing based on detecting one or more time reference points within a provisioning time for launching the video game; A memory storing computer executable instructions for performing a method including: Including, the system.
12. The method performed by the at least one processor comprises: identifying the provisioning time for launching the video game on one or more distributed gaming servers, the one or more temporal reference points within the provisioning time reflecting various states of provisioning of the video game that can be used to identify the state of provisioning of the video game. The system of claim 11.
13. The state of the provisioning of the video game is determined based on detection of a temporal reference point among the one or more temporal reference points, and the real-time status of the provisioning of the video game is one or more selected from the group including an indicator indicating that the video game is ready for provisioning, an indicator indicating that gaming data for the video game is loading, and an indicator indicating that the video game is ready to play. The system of claim 12.
14. detecting a state of the provisioning of the video game includes detecting that the video game is loaded and ready to play, and the user interface element indicating a real-time status of the provisioning of the video game includes a visual effect indicating that the video game is ready to play and drawing attention to the real-time status, and the method performed by the at least one processor further includes automatically launching the video game through the graphical user interface based on receiving a selection of the user interface element. The system of claim 11.
15. presenting a menu of video game previews within a graphical user interface of the online gaming distribution service; detecting a user account associated with the online gaming distribution service viewing the menu of video game previews; analyzing user-specific usage data for said user account from said online gaming distribution service; receiving, through the graphical user interface, a selection of a video game preview from the menu of video game previews; launching the video game preview through the graphical user interface based on receiving the selection, the launching displaying the video game preview within the graphical user interface; generating a decision based on a result of the analysis of the user-specific usage data for the user account whether to automatically initiate provisioning of a video game while displaying the video game preview or to request that a user manually initiate provisioning of the video game through the video game preview; generating a status indicator of the provisioning of the video game based on the generated determination; presenting a user interface element within the video game preview that provides a status indicator of the provisioning of the video game, the status indicator of the provisioning of the video game changing based on detection of one or more time reference points within a provisioning time for launching the video game; A method comprising:
Citation Information
Patent Citations
Terminal device and method for downloading and installing application
JP2017004552A
Information processing apparatus and download progress display method
JP2017037482A
Predictive Instant Play Technology for Applications on the Cloud
JP2018512907A
Information processor and game program
JP2019017530A
User data management method for cloud gaming
JP2019509078A