Provisioning management for video games during game previews
By managing the provisioning status of video games during video game preview, and automatically or manually starting the provisioning process of video games with signal data analysis, the problem of long loading time of traditional video games is solved, and user experience and resource management efficiency is improved.
Patent Information
- Application Number
- CN202180017285.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-06-02
- Filing Date
- 2021-01-20
- Publication Date
- 2025-08-29
- Estimated Expiration
- 2041-01-20
AI Technical Summary
Traditional video games require long-term download of content and configure computing resources when loading, resulting in poor user experience and inefficient resource allocation, which affects the possibility of users participating in specific content.
By managing the provisioning status of a video game during video game preview, using signal data for context analysis, automatically or manually initiate the provisioning process of a video game, and providing real-time status updates through the GUI, reducing waiting time.
It improves the efficiency of video game loading, reduces user waiting time, enhances user participation, and optimizes the management of computing resources.
Smart Images

Figure CN115209965B_ABST
Abstract
Description
Background Art
[0001] Video games are an emerging and evolving technology field. In today's era of on-demand content, users expect immediate access to content. However, video game users often experience friction between the time they discover a video game and the time they actually start playing it. This negatively impacts the user experience on gaming platforms, reducing user engagement with specific video game content and reducing the efficiency of computing resources used to launch video games, among other technical issues. For example, traditional video games often fail to preload game content to simplify game launch. Furthermore, traditional video games often leave users stuck on loading screens for extended periods of time while the game is loading. This is due to the large amount of content required to start playing and the significant computing resources required to execute the game, especially when users utilize game servers in online scenarios.
[0002] Furthermore, with the advent of on-demand content, another technical issue that arises is the ability to engage users with specific content. Software services and / or software platforms can allocate resources based on the viewership / engagement of specific content. This is important in the video game market, where a particular game may integrate numerous services after the initial release of a video game version. The integration of such services may further influence how content is presented to users (e.g., through a graphical user interface), how distributed / online resources are allocated for game integration, and which applications / services may be associated with such content, among other technical decisions. Summary of the Invention
[0003] To address the aforementioned technical challenges, the present disclosure aims to remove friction between content discovery and content execution (e.g., launching a video game). For ease of explanation, the content described herein is video game content. However, it will 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 light of the aforementioned technical challenges, the present disclosure relates to processing operations 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 (GUI) of an online game delivery service or other type of application / service. When presenting the video game preview to a user, a determination is made to manage the video game provisioning. For example, a provisioning determination may be made as to whether to automatically initiate the video game provisioning (e.g., in the background of the video game preview) or to wait for the user to manually initiate the video game provisioning. This technical decision may depend on contextual analysis of collected signal data related to the access context of the user accessing the video game preview (e.g., a user account of an online game delivery service). Status information related to the provisioning status of the video game may be determined, wherein a graphical indicator of this status information may be generated and then presented to the user when presenting the video game preview via 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. Additional examples describe processes related to contextual customization of the game preview and the GUI menu used to present the game preview.
[0005] This summary is provided to introduce a selection of concepts that are also described below in the detailed description in a simplified form. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to limit the scope of the claimed subject matter. Additional aspects, features, and / or advantages of various examples will be set forth in the following description and will in part be apparent from the description or may be learned through practice of the invention. BRIEF DESCRIPTION OF THE DRAWINGS
[0007] Non-limiting and non-exhaustive examples are described with reference to the following figures.
[0008] Figure 1 An exemplary system diagram is shown of components that may be used to practice aspects of the present disclosure, which interfaces to enable management of a video game's provisioning state during display of a video game preview.
[0009] Figure 2 An exemplary method for managing the provisioning state of a video game during display of a video game preview that can be used to practice aspects of the present disclosure is shown.
[0010] Figures 3A-3E A non-limiting example of a processing device view of a device that enables a user to access content through a graphical user interface of an online game delivery service is shown that can be used to practice aspects of the present disclosure.
[0011] Figure 4 A computing system suitable for implementing the processing operations described herein related to content provisioning management is shown that can be used to practice aspects of the present disclosure. DETAILED DESCRIPTION
[0012] The goal of the present disclosure is to remove the friction between content discovery and content execution (e.g., launching a video game). For ease of explanation, the content described herein is video game content. However, it will 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.
[0013] The present disclosure relates to processing operations configured to manage content provisioning for a video game during the presentation of a preview of the video game (e.g., including a video game trailer). The video game preview may be presented via a graphical user interface (GUI) of an online game delivery service or other type of application / service. When presenting the video game preview to a user, a determination is made to manage the video game provisioning. For example, a provisioning determination may be made as to whether to automatically initiate the video game provisioning (e.g., in the background of the video game preview) or to wait for the user to manually initiate the video game provisioning. This technical decision may depend on contextual analysis of collected signal data relating to the access context of the user accessing the video game preview (e.g., a user account of an online game delivery service). Status information related to the provisioning status of the video game may be determined, wherein a graphical indicator of this status information may be generated and then presented to the user when the video game preview is presented via a GUI. For example, a status indicator for the video game provisioning may be rendered and displayed within the video game preview. Additional examples describe processes related to contextual customization of game previews and GUI menus used to present the game previews.
[0014] The application / service can be configured to provide users with streaming access to video game content including a GUI menu of video game previews (e.g., on demand), access to specific video game previews, access to video games, and the like. For example, a GUI menu can provide users with access to multiple video game previews in a presentation format. Although the presentation format can vary in different examples to include any known type of presentation format, one exemplary format is a tile representation of a video game title. By selecting a specific tile of a video game preview, game content can automatically begin playing for that title (e.g., trailer, user-generated content). The GUI menu is further configured to enable users to interact with the displayed content. A function that enables users to easily scroll through the displayed content by any type of known input type (e.g., touch, device, audio) can be provided. For example, a user can provide touch input, wherein they can discover additional game titles / content by swiping through a specific GUI menu displaying game titles.
[0015] Once the user selects a selected game title from the GUI menu, a video game preview may be provided via the GUI. While the user is viewing the video game preview, background processing may occur to manage the video game's provisioning status, with provisioning occurring concurrently with the display of the video game preview. In one example, the exemplary application / service may be configured to automatically initiate video game provisioning after a predetermined amount of time (e.g., immediately upon launching the video game preview or after n seconds have elapsed since the video game preview began). The exemplary GUI is configured to provide an indication of the video game's provisioning status via the video game preview. As an example, the indication of the provisioning status may be a user interface element (e.g., a GUI element) that automatically enables the user to participate in the video game upon selecting the user interface element. For example, the user interface element may be a play button that appears within the video game preview. The play button may include a visual element (e.g., a spinning circle indicator) indicating that content is loading to indicate to the user that the video game is in the provisioning process. When the user is ready to participate in the video game, the user interface element (e.g., the play button) may change color and hide visual elements (e.g., the spinning circle indicator) to indicate that the video game is immediately ready to be streamed on behalf of the user. This provides significant value to online game delivery services by increasing overall engagement between users and content (e.g., by reducing wait times) and enabling users to discover new content.
[0016] Furthermore, the present disclosure helps blur the setup time so that users are 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 to content engagement, wherein the setup process can be initiated while the user is watching a video game trailer presented in a video game preview. As a result, users do not feel like they are waiting to play the video game and are more likely to engage with the provisioned content. The setup process typically takes a period of 25-30 seconds. If the process is pre-started on behalf of the user, this wait time will appear significantly reduced to the user. In addition, computing resources can be better managed during the setup process, wherein processing efficiency for provisioning video games can be improved by reducing wait time during the setup process and saving resources / bandwidth for computing devices (including in some cases not requiring the user to manually start the setup process), as well as other technical advantages.
[0017] Additional examples extend to dynamically determining whether to enable automatic provisioning of a video game or requesting that a user manually initiate server provisioning. In some cases, this may include determining a point in time to automatically initiate the provisioning process (e.g., a delay after launching a video game preview). For example, a determination may be made that correlates a user's access to a 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 that can be used to provide an indication of whether the provisioning process should be initiated. For example, a user who remains viewing a video game preview for more than five seconds has a high probability of playing the game. Thus, a provisioning determination may be made to avoid increasing efficiency with respect to computing resource management.
[0018] Furthermore, user interface elements regarding the provisioning status of a video game can be dynamically updated during the presentation of a 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 video game content can have multiple provisioning states (e.g., ready for provisioning, extended loading, minimized loading, ready for play, start manual provisioning). This allows the system to display to the user the current state of the server during its provisioning process. When the server is ready to play the video game, the user interface element can be updated to provide a status indication that the video game is "ready to play." The user interface element can be selectable, wherein once the user selects the user interface element reflecting the "ready to play" state, the user will be immediately taken to the video game and can then begin playing the game. In some alternative examples, the video game can be launched directly from the video game preview (without requiring user interaction) upon completion of provisioning of the video game.
[0019] Example 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 provisioning state of the video game; automating the provisioning process of the video game and correlating the provisioning process with the concurrent execution of the video game preview; improving the processing efficiency of a computing device performing the provisioning of the video game (e.g., reduced processing cycles, resource / bandwidth savings); better management of computing resources used to manage the provisioning process of the video game, such as in a distributed service example; improving the processing efficiency of a computing device providing a video game preview by reducing latency during the provisioning process and saving resources / bandwidth for the computing device by not requiring a user to manually initiate the provisioning process in all situations;
[0020] An improved GUI experience is provided that presents novel GUI menus and features to achieve the technical advantages described herein; a novel configuration of artificial intelligence (AI) processing to generate customized video game previews (e.g., user-specific video game previews); and interoperability to enable the integration of customized video game previews in online game delivery services and docking with multiple different applications / services (e.g., of a software application platform) to expand functionality and improve the user experience, among other technical advantages.
[0021] Figure 1 An exemplary system diagram 100 is shown of components that can be used to practice various aspects of the present disclosure, these components interfacing to enable management of the provisioning state of a video game during display of a video game preview. As an example, the components shown in system diagram 100 can be implemented as described in Figure 4 The exemplary computing system 401 (or multiple computing systems) described in the description of FIG. 100 illustrates an exemplary computing system 401 (or multiple computing systems) that can be used to perform the method 200 ( Figure 2 ) and the processing operations described in Figures 3A-3E 100 and the components of the associated processing are shown in a visual diagram and accompanying descriptions. In addition, the interactions between the components of system diagram 100 may be modified without departing from the spirit of the present disclosure. The exemplary components described in system diagram 100 may be hardware and / or software components programmed to perform the processing operations described herein. In some examples, each component of system diagram 100 may be one or more computing devices associated with performing a specific service. The exemplary services may be managed by a software application platform that also provides the components with access to and knowledge of other components associated with the application / service. In one instance, the processing operations described in system diagram 100 may be implemented by one or more components connected via a distributed network. System diagram 100 includes one or more computing devices 102; one or more content provisioning management components 104; a distributed game server 106 (e.g., of a distributed gaming platform); and a GUI for an online gaming delivery service 108.
[0022] The one or more computing devices 102 can be one or more computing devices configured to execute applications / services via software components, hardware components, or a combination thereof. A user can 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 a gaming software platform that provides an online gaming delivery service, which enables access to multiple video games and associated gaming content, such as video game previews. In some examples, video game content can be accessed via computing devices such as a PC, laptop, or tablet. In some other examples, video games can be accessed via a gaming console. An exemplary gaming console can be configured to execute video games stored locally on the gaming console's hard drive (or via a computer-readable medium executed thereon), or can access video game content (e.g., content stored and accessed on a distributed data store) via a network connection, or a combination thereof. The one or more computing devices 100 of the system 100 are also intended to encompass examples in which a user is executing a video game on a computing device having integrated components (e.g., a display, a display component, an audio component, a processor) for outputting gaming data. Game data, such as video game content, may be accessed via the computing device running locally or through a network connection.
[0023] The content provisioning management component 104 is configured to perform processing for content presentation management by an online game delivery service, including rendering and presentation of a GUI and associated content, such as a video game preview (e.g., a video game trailer), and provisioning of the video game in parallel with the presentation of the video game preview. The content provisioning management component 104 is further configured to customize the video game preview including the content presented therein. Specific examples of processing performed by the content provisioning management component 104 include those described herein (including the previous detailed description, the description of the method 200 ( Figure 2 A description of the processing operations described in ) and Figures 3A-3E any processing operation with accompanying description).
[0024] As shown above, the content provisioning management component 104 can be configured to customize the video game preview including the content presented therein. To this end, the content provisioning management component 104 can be configured to execute as a programmed software module, AI processing, or a combination thereof. This enables contextual analysis to be performed so that the video game preview can be most contextually relevant to the user. The implementation of AI processing is known to those skilled in the art. Exemplary AI processing that can be used to assist in any type of determination or prediction processing described herein can be any of the following: supervised learning; unsupervised learning; semi-supervised learning; or reinforcement learning, etc. Non-limiting examples of applicable supervised learning include, but are not limited to: nearest neighbor processing; naive Bayes classification processing; decision trees; linear regression; support vector machines (SVM); and neural networks, etc. Non-limiting examples of applicable unsupervised learning include, but are not limited to: application of clustering processing, including k-means, hierarchical clustering, mixture modeling, etc. for clustering problems; application of association rule learning; application of latent variable modeling; anomaly detection; and neural network processing, etc. Non-limiting examples of applicable semi-supervised learning include, but are not limited to: hypothesis determination processing; generative modeling; low-density separation processing and graph-based method processing, etc. Non-limiting examples of applicable reinforcement learning include, but are not limited to, value-based processing; policy-based processing; and model-based processing, among others. In any example, the artificial intelligence processing can be configured to apply a ranker to determine the best possible outcome to output a determination related to the management of content (e.g., a GUI menu or game preview) and / or content provisioning status based on a ranking / scoring process. The implementation of the ranking / scoring process is known to those skilled in the art. In addition to conventionally known content regarding the ranking process operation of AI modeling, the highest ranking / scoring output (or outputs) of the AI process can be used to determine the video game provisioning status and what status indicator to provide in the generated user interface element to reflect the content provisioning status, as well as specific content to be included in the customized video game preview.
[0025] Furthermore, over and above what is known in the art, the AI processing can be configured to associate specific data (e.g., data for contextual evaluation) for purposes related to content management in GUI menus and the generation of video game content and real-time (or near real-time) updating of video game previews. The exemplary AI processing can also utilize data from other resources of the software application platform to improve accuracy for any of those technical purposes identified. For example, the content provisioning management component 104 can be configured to train and display one or more trained AI models (e.g., machine learning models) that can be customized to perform processing related to: generation of GUI menus for content / video game previews; generation of customized video game previews; management of the provisioning state of a video game, including determining and rendering a status indicator icon reflecting the real-time state of content (e.g., video game) provisioning; and determining whether to automatically initiate provisioning or request manual confirmation, among other examples.
[0026] The system diagram 100 further includes one or more distributed game servers 106. The distributed game servers 106 are configured to manage the processing of game data to enable the generation, rendering, and execution of content (including video games) associated with the video game application / service and / or integrated within the online game delivery service. In one example, the one or more distributed game servers 106 can be a cluster of server devices that are configured to process data to enable the execution of the video game, including processing to generate and render video game representations and to obtain (e.g., user-specific) video game data. However, the distributed game servers 106 can be any type of computing system, including data storage systems, such as those in Figure 4 Described in the description.
[0027] The one or more distributed game servers 106 may be configured to process and enable game instances locally, online via a network connection, or a combination thereof. To this end, the one or more distributed game servers 106 may store data that, when executed by one or more processing components, enables the rendering of an instance of a video game. The configuration of the distributed game servers 106 may vary at any point in time based on bandwidth and available resources.
[0028] The distributed game server 106 may also be connected to a server that enables online execution of video games (including servers that generate, render and / or execute online game delivery services such as XBOX ) is associated with a software platform that is used to generate and render the game platform (e.g., a GUI). In such an example, the distributed game server 106 can also be configured to manage data (e.g., game data) used to generate and render the game platform, such as data that can provide users with access to their own user accounts associated with the game platform. In addition, the one or more distributed game servers 106 can be connected to other network-accessible computing resources (including data repositories that store data that enables the execution of the processing operations described herein). For example, the game platform can be provided by an organization that manages a software platform that provides access to multiple different applications / services, thereby interfacing with these applications / services to expand the functionality provided to users during operation of the online game delivery service.
[0029] In the system 100, a content provisioning management component 104 is configured to interface with one or more computing devices 102 and distributed game servers 106 to enable the execution of the processing operations described herein. As indicated in the above description, the content provisioning management component 104 interfaces with the one or more computing devices 102 to enable the presentation of a GUI of an online game delivery service 108 via the one or more computing devices 102. To this end, the content provisioning management component 104 can provide data to the one or more computing devices 102, including, but not limited to, data for providing a GUI menu; data for rendering a customized video game preview (including specific types of content to be included in the preview); and status updates for provisioning a video game that can be used to update the video game preview, among other examples. In an additional example, the content provisioning management component 104 can interface with the distributed game servers 106 to identify the current processing state of one or more servers to measure the actual provisioning time for video game provisioning at the current point in time and / or during the time required to provision video game content. The content provisioning management component 104 can select the server to most efficiently perform the allocation / configuration of the video game provisioning given the availability and bandwidth of server resources within the time period required for provisioning. In such a case, the content provisioning management component 104 can include a scheduling component that manages the scheduling state to allocate distributed game servers for provisioning processing. In addition, the content provisioning management component 104 interfaces with the distributed game servers 106 to enable the video game to be launched once the video game is provisioned.
[0030] The GUI of the online game delivery service 108 is used to provide a GUI that enables users to interface with game content, including a GUI menu that provides access to video game previews. The operation and rendering of the GUI of the online game delivery service are known to those skilled in the art, such as those of the services (e.g., XBOX ) enables users to access video games and associated content. Over and above conventionally known content, the GUI of the online game delivery service 108 is adapted to provide an improved GUI experience, among other technical benefits, that is integrated with the content provisioning management component 104 to provide users with a GUI menu of video game content and an exemplary video game preview that reflects the provisioning status of the video game. The exemplary video game preview provided by the GUI of the online game delivery service 108 is shown in FIG. Figures 3A-3E , and further described in the accompanying description. In some alternative examples, the exemplary video game preview may be provided via a GUI of a different application / service executing on one or more computing devices 102. For example, the video game preview may be delivered via a different notification service, messaging service (e.g., an email service, an SMS messaging service), or social networking service, etc. In additional examples, the video game preview may be presented via the GUI in a form factor appropriate manner depending on the type of computing device being used to view the video game preview.
[0031] Figure 2 An exemplary method 200 for managing the provisioning state of a video game during display of a video game preview that can be used to practice aspects of the present disclosure is shown. As an example, the method 200 can be implemented across Figure 4 The exemplary computing system 401 (or multiple computing systems) described in the description of the method 200 is executed. The exemplary components described in the method 200 can be hardware and / or software components that are programmed to perform the processing operations described herein. The operations performed in the method 200 may correspond to operations performed by a system and / or service that executes a computer program, a software agent, an application programming interface (API), a plug-in, an AI process including applying a trained data model, an intelligent robot, a neural network and / or a machine learning process, etc. In one example, the processing operations described in the method 200 can be implemented by one or more components connected via a distributed network. For example, the components can be executed on one or more network-enabled computing devices connected via a distributed network, and the one or more network-enabled computing devices enable the generation and / or execution of content for an online game delivery service and / or a specific video game. Although the examples described herein relate to video games and content associated with an online game delivery service, it should be recognized that the present disclosure can 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.
[0032] Method 200 begins at process operation 202, where a menu of video game previews is presented via a GUI. A non-limiting example of a GUI is an online game delivery service ( Figure 1108). However, as mentioned in the description above, in some alternative examples, the exemplary video game previews may be provided via the GUIs of different applications / services executing on the computing device. The GUI menu of video game previews may be presented via 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 the user with access to multiple video game previews in a presentation format. While the presentation format may vary in different examples to include any known type of presentation format, one exemplary format is a tile representation of the video game title. A non-limiting example of an exemplary tile representation of the video game title is provided in Figure 3A By selecting a particular tile for a video game preview, a preview of the video game may automatically begin playing for the selected title (e.g., trailer, user-generated content).
[0033] In some examples, the presentation of the GUI menu (processing operation 202) can be customized for the user. That is, one version of the GUI menu may be presented differently for one user than for another user. This determination may be made based on an analysis of signal data. As mentioned in the above description, the analysis may be performed by a programmed software module, a trained AI processor, or a combination thereof. Non-limiting examples of signal data (individually or in clusters) include any of the following: user signal data related to use of the online game delivery service, including historical game play access and access to specific video game previews / specific types of content; signal data related to the user's user account, the signal data being related to any application / service associated with the user account; signal data related to one or more devices associated with the user account (e.g., a device currently accessing the online game delivery service); signal data from other users of the online game delivery service (e.g., friends or groups associated with the user account); signal data related to user settings including style / layout preferences; and signal data related to time requirements for provisioning video games, etc. For example, signal data can be collected from a user's previous use of an online game delivery service (relating to content preferences (e.g., activity on content, including content selected, content accessed, content ignored)), which can be used to filter content for presentation in a menu to present a GUI menu customized for one or more users. In some cases, programmatic rules can be applied that are used to determine how to prioritize previous user activity relative to video game content. For example, a rule can be applied that prioritizes newer video game content before determining how to filter other remaining video game content for presentation. However, it should be recognized that rules can be set by the developer to evaluate and filter content in any possible manner to create a customized content list. Furthermore, it is noted that the artificial intelligence processing may be adaptive, where the trained learning model can learn from past experience, including interactions with users, to provide the most attractive video game content list for the user to view.
[0034] Flow of method 200 may continue to process operation 204. A selection of a particular video game preview may be received via the GUI menu of video game previews at process operation 204. Based on the selection, a video game preview (e.g., a video game trailer) may be launched via the displayed GUI.
[0035] Selection of a video game preview can trigger an analysis of the time requirements for provisioning the video game associated with the video game preview (processing operation 206). In some alternative examples, other types of actions, such as hovering (e.g., for a predetermined period of time), can trigger the initiation of analysis of the time requirements for provisioning the video game before selection actually occurs. For example, a user hovering over a preview for a predetermined period longer than a threshold period (i.e., determined to be longer than browsing other content titles) can indicate that the user may be interested in the video game content. This can trigger the initiation of processing operations to expedite provisioning during the presentation of the video game preview. In other words, pre-loading for provisioning (soft provisioning) can occur, where processing is preemptively initiated to expedite provisioning when there is a high probability that the user may select a particular video game preview. Initiating soft provisioning of the video game offers another technical advantage: it further reduces latency relative to the provisioning process, allowing the user to, for example, spend less time waiting for the video game to load during the presentation of the video game preview. Signal data can be collected and analyzed in real time (or near real time) to determine whether soft provisioning should be performed. The trained AI process can generate a soft-provisioned determination about whether to launch a video game based on analysis of signal data. Non-limiting examples of such signal data include, but are not limited to, user input actions, user voice detected while the user is navigating a GUI menu, and device activity data (e.g., whether a gaming accessory, controller, etc. is connected), etc. Historical usage signal data can also be used to improve the accuracy of predictive analysis.
[0036] In any case, processing operation 206 may include identifying a provisioning time for launching a video game on one or more distributed game servers. This may be performed by interfacing a content provisioning management component with one or more distributed game servers that may be configured to execute the video game, wherein data related to the specific processing operations for provisioning the video game and data related to the configuration of the distributed game servers that will provision the video game may be acquired and analyzed. In some cases, the provisioning time may be predetermined, wherein a set amount of time may be routinely spent to provision the game. In other cases, server bandwidth may be affected by network traffic, wherein the provisioning time may vary based on the availability of the server due to network usage. The content provisioning management component may be configured to instantly determine the provisioning time through real-time (or near real-time) interaction with the distributed game servers. For example, identifying the provisioning time for launching the video game may include retrieving data associated with the configuration of one or more distributed game servers; and analyzing the data associated with the configuration of the one or more distributed game servers to determine the provisioning time and one or more reference time points associated with the provisioning process. The provisioning time for loading a video game may vary based on factors such as: whether a user account is logged into the online game delivery service; the type of video game being provisioned (e.g., how much content needs to be provisioned); the currently available bandwidth / capacity of the distributed game servers; and how long it will take to transfer / install the necessary game content relative to the current configuration of the distributed game servers, etc. Thus, monitoring of the provisioning time may continue until the video game content is fully provisioned for game play.
[0037] In some examples, a version of a video game preview (or an update thereto) may be dynamically generated based on a determination of a time requirement for provisioning the video game. If provisioning is determined to take a specific amount of time (e.g., 30 seconds), the video game trailer may be customized to align with the provisioning time based on the time requirement for provisioning the game. Processing operation 206 may include determining one or more reference time points within the provisioning time that reflect the provisioning state of the video game, which may be used to identify the provisioning state of the video game. Examples of reference time points include, but are not limited to, the time it takes to authenticate / confirm a user account for accessing the video game; the time it takes to download game content necessary to launch the video game; the time it takes to install the necessary content for executing the video game; and the time it takes to launch the video game, including loading time, among others. An indicator associated with the reference time point may be generated, which may then be 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 in the video game preview. For example, a user interface element (e.g., a play button) is included within a video game preview that enables a user to identify a provisioning state, wherein the video game preview is updated to provide any of a plurality of provisioning states (e.g., ready for provisioning, loading extended, loading minimized, ready for play, manual provisioning initiated) displayed within the customized video game preview. This allows the system to display to the user the current state of the server in its provisioning process. While specific examples have been provided for criteria for identifying reference time points, it will be understood that any other type of data related to provisioning a video game in a distributed manner, as known to those skilled in the art, may be used to generate reference time points without departing from the spirit of the present disclosure. The real-time state of the video game provisioning changes based on the detection of one or more reference time points relative to the provisioning process.
[0038] The flow of method 200 may continue to processing operation 208, where a customized video game preview (e.g., a video game trailer) may be created / generated. As indicated in the above description, different versions of the video game preview may be generated for different contextual scenarios, wherein the content of the generated video game preview may also vary depending on the scenario. In some cases, the developer may determine to provide a video game preview that presents a trailer for predetermined content and one or more GUI elements indicating the provisioning status of the video game content. In other cases, contextual analysis may result in a determination to include additional types of supplemental content to further customize the video game preview. For example, a programmed software module, a trained AI process, and / or a combination thereof may be applied to generate a video game preview and determine the type of content to include in a 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 construct a specific version of the video game preview based on the contextual analysis, as described herein. The AI processing can be trained, adapted, and continuously updated to provide a more contextual ranking analysis, thereby providing users with the most contextually relevant and appropriate video game previews for the manner in which the video game previews are being accessed / viewed. For example, signal data regarding the configuration of the device used to view the video game previews can be collected and analyzed to select the format (e.g., layout, size) of the video game content and the specific content types to include for the selected format. The generation of the video game previews can customize the video game previews in a form factor-appropriate manner to minimize the impact of the video game previews on the user.
[0039] Processing operation 208 may include processing operations performed by a content provisioning management component that may analyze programmatic rules for determining how to construct a video game preview and what content to include in the video game preview. Developers may set rules for content generation that may be followed to prioritize content to be included in the video game preview. Programmatic developer rules may determine the form of content that must be included in the generated video game preview and curate the selection of optional content that may be used to further customize the video game preview (e.g., a video game preview that varies depending on the user). This may be based on an analysis of one or more of: specific developer rules that prioritize the type of content to be included in the video game preview; developer rules related to form factor generation of the video game preview; and developer rules related to signal data evaluation (e.g., including user preferences for the type of content to be included in the video game preview), etc. Non-limiting examples of content that may be included in a video game preview include, but are not limited to: a video game trailer / clip for a particular video game; narration / audio for the video game preview; GUI elements for navigational controls of the video game preview; one or more GUI elements for managing the provisioning state of the video game during execution of the video game preview; and supplemental contextual content that may be used to further customize the video game preview on a user-specific level (e.g., by user or group of users). Non-limiting examples of supplemental content that may optionally be included in a video game preview include, but are not limited to: video game clips that are specific to the user (or specific to another user) and reflect previous instances of the user's game play; in-game add-ons / purchases that are specific to the video game (e.g., that may be contextually relevant to the user and their game play within the video game); identification of user-specific game data (e.g., milestones, specific game play events, game play records, XP, and levels reflecting past, current, and / or future game play states) that reflect a particular user's game play of a particular video game; and communication data, including messages from the user and / or other users (e.g., social network posts), video game reviews, etc., among other examples. Supplemental content may be collected, stored, parsed for contextual evaluation so that such content may be readily used in the dynamic generation of customized video game previews.
[0040] In some cases, the video game preview can be generated in real time (or near real time) while the user is accessing the online game delivery service (processing operation 208), while in other cases, versions of the video game preview can be pre-generated and loaded for use at a later point in time (e.g., while the user is accessing the online game delivery service). In the case where versions of the video game preview are pre-generated, a selection process can be performed at the time when the video game preview is to be launched (processing operation 210) to select a specific version of the video game preview for display in the online game delivery service. The determination of the video game preview version to display can be made based on contextual analysis of any type of signal data that is acquired and analyzed, as described in the description above. This can further include signal data related to the time requirement for provisioning the video game. Non-limiting examples of signal data (individually or in aggregate) include any of the following: user signal data related to use of the online game delivery service, including historical gameplay access and access to specific video game previews / specific types of content; signal data related to the user's user account, which is associated with any application / service associated with the user account; signal data related to one or more devices associated with the user account (e.g., devices currently accessing the online game delivery service); signal data from other users of the online game delivery service (e.g., friends or groups associated with the user account); signal data related to user settings, including stylistic / layout preferences; and signal data related to time requirements for provisioning video games, among others. For example, signal data can be collected from a user's previous use of the online game delivery service (related to content preferences (e.g., activity with content, including selected content, accessed content, ignored content)), which can be used to filter content presented in a menu. In some cases, application rules can be applied that determine how to prioritize previous user activity relative to video game content. In at least one example, ranking processing can be performed to select a specific version of a video game preview based on contextual analysis of signal data regarding use of the application / service. The AI processing can be trained, adapted, and continuously updated to provide contextually relevant ranking analysis, thereby providing the most contextually relevant video game previews to users.
[0041] At AI processing operation 210, a video game preview (e.g., a video game trailer) is launched via the GUI of the online game delivery service. This launch (processing operation 210) renders and displays the video game preview in the GUI. As indicated in the above description, the video game preview may be launched (processing operation 210) based on receiving a selection of a specific game title from a GUI menu that provides a representation of the video game preview. In some alternative examples, the online game delivery service may be configured to automatically launch a specific video game trailer, for example, to entice the user to interact with new and / or recommended content. For example, the video game content may be featured in a specific GUI window, which may entice the user to engage with the specific video game content without requiring a user action to select a specific video game preview. In an alternative example, a specific version of the video game preview may be transmitted for launch for display in a modality other than the GUI of the online game delivery service. As mentioned in the above description, the video game preview may be displayed via other modalities. Contextual analysis of the signal data may result in a determination that the user may prefer to receive content via another modality (e.g., email, text message, social network account, collaborative interaction application / service). This type of analysis is possible through telemetry analysis of user activity across multiple applications / services (eg, of software applications / platforms).
[0042] After launching a video game preview for display, a status indicator of the video game's provisioning status can be provided within the video game preview. At process operation 212, one or more provisioning determinations are generated. An exemplary provisioning determination involves determining how / when provisioning of the video game associated with the executing video game preview will proceed. Such provisioning determinations may include determining whether to automatically initiate video game provisioning upon display of the video game preview; determining when to automatically initiate video game provisioning (e.g., based on user preferences and / or contextual evaluation of a delay from the start of the video game preview); or requesting the user to manually initiate video game provisioning via a video game trailer, among other things. Provisioning determinations may be preprogrammed to occur in various specific technical scenarios or may be based on a contextual evaluation of signal data as previously mentioned. In one example, a provisioning determination is made to automatically initiate video game provisioning concurrently with the execution of the video game preview. The trigger for initiating video game provisioning may be detecting the launch of the video game preview.
[0043] In another example, processing operation 212 includes determining a time delay to apply to video game provisioning based on analysis of user signal data associated with the user account. For example, contextual analysis may result in a determination that a user is likely to play a video game after viewing a certain amount of a video game preview. This may be based on a threshold determination based on, for example, a contextual assessment, where viewing a 5-second video game preview may not be an indicator that the user will engage, while viewing a 15-second video game preview may mean that the user is more likely to play the video game. In technical examples where a time delay is determined to be applicable, automatically launching video game provisioning may include applying a time delay before automatically launching video game provisioning after launching a video game trailer.
[0044] In yet another example, the contextual evaluation may result in a determination to request the user to manually initiate provisioning, which may be reflected by a user interface element that provides real-time provisioning status (e.g., a first representation preceding a status indicator icon that updates based on the progress of provisioning). That is, the contextual analysis may determine that the user prefers to manually initiate video game provisioning, or that the prediction of whether initiating provisioning is efficient is inconclusive based on the contextual analysis of signal data (e.g., signal data that varies from user to user). In some cases, the determination of whether to initiate automated provisioning or request manual provisioning may be a threshold determination based on the results of the contextual analysis of the exemplary signal data. The threshold may be set by the developer at any interval without departing from the spirit of the present disclosure. In situations where the manual provisioning option is determined to be optimal, a GUI indicator may still be provided with the video game preview to enable the user to manually initiate provisioning while the video game trailer is being presented.
[0045] As indicated in the above description, the provisioning state of the video game can be updated, for example, in real time (near real time) during the presentation of the video game preview. Flow of method 200 can continue to process operation 214, where the provisioning state of the video game can be detected during the execution of the video game preview (e.g., while the video game trailer is being displayed in the GUI of the online game delivery service). The provisioning state can reflect the results of an analysis of the time requirements for video game provisioning (e.g., relative to the distributed game server).
[0046] At processing operation 216, one or more status indicators reflecting the provisioning of the video game for execution may be generated. The status indicator icons may be generated based on the determination of the video game provisioning. Processing operation 216 may include generating or invoking the display of a user interface element for display in a video game preview or concurrent GUI window, the user interface element presenting status indicator icons reflecting the real-time provisioning status. Non-limiting examples include, but are not limited to: an indicator that the video game is ready for provisioning; an indicator that game data for the video game is loading; an indicator that the video game is ready to play; and an indication that manual provisioning of the video game is to be initiated, among others.
[0047] Method 200 may then continue to process operation 218, where the video game preview is updated to present a GUI element that provides a status indicator reflecting the real-time provisioning status of the video game. In one example, the user interface element indicates that the video game is ready to play (e.g., fully provisioned) and includes a visual effect that draws attention to the real-time updated status. It will be understood that any type of indication that draws attention to the real-time provisioning status may be provided through the video game preview or concurrently with the video game preview. Non-limiting examples of such indications include, but are not limited to: visual / graphic changes including modifications to color, font, size, etc.; audio indications including sounds or incorporating speech; and vibrations provided to the user device / accessory (e.g., provided through a game controller or other input device), etc., among other examples.
[0048] Flow of method 200 may continue to decision operation 220, where it is determined whether an update to the video game's provisioning state has been detected. If provisioning of the video game is still in progress, the real-time provisioning state may be updated more than once during the time the video game preview is presented to the user. In examples where provisioning of the video game is still in progress, flow of decision operation 220 may branch to yes and processing of method 200 may return to value processing operation 214 to detect the video game's provisioning state. In examples where the provisioning state will not be updated, flow of decision operation 220 branches to no and processing of method 200 continues to decision operation 222.
[0049] At decision operation 222, a determination is made as to whether a user interface element has been selected to launch a video game from the video game preview. In instances where no selection has been made, flow at decision operation 222 branches to no, and processing of method 200 remains idle until additional user action is taken. For example, this may include continuing to present the video game preview or exiting the video game preview if the user chooses to leave without playing the video game. In instances where a user interface element has been selected to trigger the launch of a video game from the video game preview, flow at decision operation 222 branches to yes, and processing of method 200 continues to processing operation 224.
[0050] At process operation 224, the provisioned video game is launched directly from the video game preview based on receiving the selection.
[0051] Figures 3A-3E A non-limiting example of a processing device view of a device that enables a user to access content through a graphical user interface of an online game delivery service is shown that can be used to practice aspects of the present disclosure. Figures 3A-3E Provided is a diagram including a system diagram 100 ( Figure 1 ) and Method 200( Figure 2 ) is a non-limiting front-end example of the processing described above.
[0052] Figure 3A A processing device view 300 is presented that shows content being presented through a GUI 306 of an online game delivery service. A user may log into an online game delivery 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., a mobile phone, laptop, PC, mobile gaming device). Non-limiting examples of computing devices in this specification include: Figure 4The GUI 306 of the online game delivery service may further display an application command control 304 that provides user interface elements related to the management of various aspects of the online game delivery service. Non-limiting examples of these aspects include, but are not limited to: content pages accessible through the online game delivery service (e.g., a homepage, a specific content page for a video game); user messaging controls, including messaging between users of the online game delivery service and feedback to the developer of the online game delivery service; user login / login to the online game delivery service; content management, including content purchased through the online game delivery service or otherwise accessible through the online game delivery service, access to an online store for purchasing content through the online game delivery service; access to user profile data, including administrative information, achievements, game play history, and the like. The GUI 306 of the online game delivery service shown in the processing device view 300 shows a user account ("Austin Telmen") logged into the online game delivery service and accessing game content.
[0053] In the example shown in processing device view 300, content that can be used to access video game previews is presented in a tile format via the online game delivery service's GUI 306. That is, a contextual GUI menu for previewing game content can be displayed via the online game delivery service's GUI 306. The exemplary GUI menu can be customized for the user viewing it in the manner previously described above. It will also be understood that other types of content and GUI menus can be further presented via the online game delivery service, as known to those skilled in the art.
[0054] The content for accessing video game previews (e.g., a GUI menu providing access to video game previews) is configured to enable a user to select specific tiles related to video games, namely tiles 308-312, which can direct the user to a video game preview (e.g., a video game trailer) for a specific video game. Processing device view 300 shows action 314, in which a user is selecting (e.g., through any type of input recognition, including touch input or device input) game tile 312 (e.g., a fictional game called "OUTERWORLD"). Selection of game tile 312 can automatically direct the GUI 306 of the online game delivery service to the video game trailer associated with the video game ("OUTERWORLD").
[0055] Figure 3B A processing device view 320 is presented showing the GUI of the online game delivery service being viewed from the processing device view 300 ( Figure 3A) shown in the example of the continued example. In the example shown in the processing device view 320, based on receiving the selection game tile 312 ( Figure 3A ) action 314 to direct the user to the video game preview 322 via the GUI. The video game preview 322 can be configured to launch automatically, or alternatively, the user can utilize user interface controls to manage the execution state of the video game preview 322. While the video game preview 322 is executing and displaying its content, the exemplary content provisioning management component can be configured to perform processing operations related to provisioning management of the video game (e.g., "OUTERWORLD") associated with the video game preview 322. A user interface element indicating the real-time provisioning status of the video game can be presented within the video game preview 322. The user interface element provides a real-time status indicator of the provisioning of the video game. As described in some examples herein, provisioning of the video game can be automatically initiated upon launching the video game preview 322. In other technical examples, provisioning of the video game can be delayed or require manual approval from the user, for example, based on a contextual assessment of the user accessing the video game preview 322. In either example, a status indicator 324 of the real-time provisioning status of the video game can be displayed within the video game preview 322. In the example shown in processing device view 320, status indicator 324 is a visual indication that video game provisioning has begun (e.g., the video game is being loaded for execution via the distributed game server). Status indicator 324 reflects a point in the provisioning process, which may also correspond to a point in time associated with the execution of content related to video game preview 322 (e.g., one second out of two thirty-second video game trailers). Status indicator 324 may be formed in any visual form / format without departing from the spirit of the present disclosure. Furthermore, status indicator 324 may change based on real-time detected status related to the provisioning of the video game.
[0056] Figure 3C A processing device view 340 is presented, which shows the GUI of the online game delivery service being accessed from the processing device view 320 ( Figure 3B). As shown in processing device view 340, video game preview 322 has begun to a later point in time, wherein the real-time provisioning state of the video game has changed. Status indicator 342 indicates an update to the real-time provisioning state of the video game reflected within video game preview 322. The user interface element shown as status indicator 342 is intended to convey to the user that the play link to launch the video game is still being provisioned / loaded, but once the video game has been fully provisioned, the user can select the icon to launch the video game from video game preview 322. In some cases, the status indicator can enable the user to access the video game once a threshold amount of video game content has been provisioned (e.g., downloaded), wherein completion of provisioning can begin upon selection of the user interface element for the status indicator without affecting the presentation of the video game to the user.
[0057] Figure 3D A processing device view 360 is presented, which shows the GUI of the online game delivery service being accessed from the processing device view 340 ( Figure 3A ) is shown as a continuation of the example started as shown in FIG. As shown in the processing device view 360, the video game preview 322 has been started to a later point in time, wherein the real-time provisioning state of the video game has changed. The status indicator 362 indicates an update to the real-time provisioning state of the video game reflected within the video game preview 322. The status indicator 362 provides a visual update indicating that the video game has been sufficiently provisioned so that the user can begin playing the video game by selecting the status indicator 362. Compared to Figure 3C , status indicator 362 includes blackout (or any other type of visual effect) that draws the user's attention to the fact that the video game has been provisioned and is accessible via video game preview 322.
[0058] Figure 3E A processing device view 380 is presented showing the GUI of the online game delivery service being viewed from the processing device view 360 ( Figure 3D ). Processing device view 380 shows an example of how a video game trailer can be further customized for a user ("Austin Telmen") logged into an online game delivery service. This can include presenting supplemental content to contextually customize the video game preview on behalf of the user.
[0059] As shown in processing device view 380, even though the video game trailer has been moved to a later point in time, the user interface element reflecting status indicator 362 has not changed because the video game was already fully provisioned for game access at the previous point in the video game trailer ( Figure 3D). However, the video game preview 322 may be updated with other types of customized content portions for the user. For example, a video game clip 382 specific to the user (or specific to another user) may be displayed in the video game preview 322. In some cases, the content shown in the video game preview 322 may be entirely specific to the user's previous game play experience. Furthermore, other types of supplemental content that may be used to contextually customize the video game preview 322 may include, but are not limited to: in-game add-ons / purchases 384 specific to the video game shown in the video game preview 322; and identification of user-specific game data 386 reflecting a specific user's play of a specific video game, etc. Such types of supplemental content may be determined from contextual analysis of signal data (e.g., user-specific signal data collected by an online game delivery service and / or other types of applications / services associated with a user's account). Other non-limiting examples of supplemental content have been described above and may be incorporated into the generated video game preview without departing from the spirit of the present disclosure.
[0060] Figure 4 A computing system 401 suitable for implementing the processing operations described herein related to content provisioning management that can be used to practice various aspects of the present disclosure is shown. The computing system 401 can be implemented as a single device, system, or device, or can be implemented as multiple devices, systems, or devices in a distributed manner. For example, the computing system 401 may include one or more computing devices that perform processing of applications and / or services over a distributed network to enable the processing operations described herein to be performed by one or more applications or services. The computing system 401 may include a collection of devices that perform processing of 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 operably coupled to the storage system 403, the communication interface system 407, and the user interface system 409. Non-limiting examples of computer system 401 include, but are not limited to, smartphones, laptops, tablets, PDAs, desktop computers, servers, intelligent computing devices including television devices and wearable computing devices, e-reader devices, gaming consoles, and conferencing systems, among other non-limiting examples.
[0061] Processing system 402 loads and executes software 405 from storage system 403. Software 405 includes one or more software components (e.g., 406a and 406b) configured to implement the functionality described herein. In some examples, computing system 401 may be a game console or other type of computing device that enables a user to access video games and / or online game delivery services that may be accessed via or without a network connection. For example, computing device 401 may be a device for performing processing operations related to accessing and managing video game previews, including generating and presenting video game previews that provide notification of the provisioning status of the video game during presentation of the video game preview. When executed by processing system 402, software 405 directs processing system 402 to operate at least as described herein for the various processes, operational scenarios, and sequences discussed in the aforementioned implementations. Computing system 401 may optionally include additional devices, features, or functionality that have not been discussed for purposes of simplicity. Computing system 401 may also be used to perform system diagram 100 ( Figure 1 ), Method 200( Figure 2 )or Figures 3A-3E The processing operations described in the accompanying description.
[0062] Still refer to Figure 4 , processing system 402 may include a processor, microprocessor, and other circuitry that retrieves and executes software 405 from storage system 403. Processing system 402 may be implemented in a single processing device, but may also be distributed across multiple processing devices or subsystems that cooperate in executing program instructions. Examples of processing system 402 include a general-purpose central processing unit, a microprocessor, a graphics processing unit, a special-purpose processor, a sound card, a speaker and logic device, a gaming device, and any other type of processing device, combination, or variation thereof.
[0063] Storage system 403 may include any computer-readable storage medium that can be read 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 using 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 tape, magnetic disk storage or other magnetic storage devices, or other suitable storage media, except for propagated signals. In any case, a computer-readable storage medium is not a propagated signal.
[0064] In addition to computer-readable storage media, in some implementations, storage system 403 may also include computer-readable communication media through which at least some software 405 can communicate internally and externally. Storage system 403 can be implemented as a single storage device, but can also be implemented across multiple storage devices or subsystems that are co-located or distributed relative to each other. Storage system 403 may include additional elements, such as a controller, that can communicate with processing system 402 or possibly other systems.
[0065] The software 405 may be implemented using program instructions and, when executed by the processing system 402, along with other functions, directs the processing system 402 to operate as described with reference to the various operational scenarios, sequences, and processes explained 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 / service component(s) 406b that provide applications / services as described in the previous description, such as gaming applications / services or online game delivery services (e.g., provided by a gaming platform).
[0066] Specifically, program instructions may include collaboration or otherwise interact to perform various components or modules of various processes and operating scenarios as described herein. Various components or modules may be embodied in compiled or interpreted instructions, or embodied in some other variant or combination of instructions. Various components or modules may be executed in a synchronous or asynchronous manner, serially or in parallel, in a single-threaded environment or a multi-threaded environment, or according to any other suitable execution paradigm, variant 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 that can be executed by processing system 402.
[0067] Generally speaking, software 405, when loaded into processing system 402 and executed, can transform an appropriate device, system, or apparatus (represented by computing system 401) entirely from a general-purpose computing system into a specialized computing system customized for processing data and responding to queries. In fact, the encoded software 403 on storage system 405 can transform the physical structure of storage system 403. In different implementations of this specification, the specific transformation of the physical structure can depend on various factors. Examples of such factors may include, but are not limited to, the technology of the storage medium used to implement storage system 403 and whether the computer storage medium is characterized as primary storage or secondary storage, among other factors.
[0068] For example, if the computer-readable storage medium is implemented as a semiconductor-based memory, then when encoding program instructions therein, the software 405 can transform the physical state of the semiconductor memory, such as by transforming the state of transistors, capacitors, or other discrete circuit elements that make up the semiconductor memory. A similar transformation can occur with respect to magnetic or optical media. Other transformations of the physical medium are also possible without departing from the scope of this specification, and the examples provided above are merely for the convenience of this discussion.
[0069] The communication interface system 407 may include communication connections and devices that allow communication with other computing systems (not shown) via a communication network (not shown). The communication interface system 407 may also be used to cover the docking between the processing components described herein. Examples of connections and devices that allow for inter-system communication include network interface cards or devices, antennas, satellites, power amplifiers, RF circuit systems, transceivers, and other communication circuit systems. The connections and devices can communicate via a communication medium to exchange communications with other computing systems or system networks, such as metal, glass, air, or any other suitable communication medium. The above-mentioned media, connections, and devices are well known and need not be discussed in detail here.
[0070] 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 contactless gestures and other movements of a user, gaming accessories (e.g., a controller and / or headphones), and other comparable input devices and associated processing elements capable of receiving user input from a user. Output devices (such as displays, speakers, tactile devices) and other types of output devices may also be included in the user interface system 409. In some cases, input devices and output devices may be combined in 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 in detail herein.
[0071] 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. Alone or in combination with each other and other hardware and software elements, the user interface software and user interface devices may support, for example, a graphical user interface, a natural user interface, or any other type of user interface that enables front-end processing of the exemplary applications / services described herein, including rendering GUIs for online game delivery services, including contextual GUI menus for providing video game previews and customizing video game previews (e.g., providing one or more indications of the provisioning status of a video game); GUIs and content for other docked applications / services, and any combination thereof. The user interface system 409 includes a graphical user interface that presents information representative of the processes described in the specification above, including system diagram 100 ( Figure 1 ), Method 200( Figure 2 ) and Figures 3A-3E The graphical user interface system 409 may further be configured to display graphical user interface elements (e.g., data fields, menus, links, graphics, charts, data dependency representations, and identifiers, etc.) that are representations generated from the processing described in the previous description. The exemplary application / service may further be configured to interface with a processing component of the computing system 401 that enables the output of other types of signals (e.g., audio output) in conjunction with the operation of the exemplary application / service described herein (e.g., gaming application / service).
[0072] The communication between computing system 401 and other computing systems (not shown) can occur on a communication network or each network and according to various communication protocols, a combination of protocols or its variant. Each example includes an intranet, the internet, 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, a combination of networks or its variant. The communication networks and protocols mentioned above are well-known and do not need to be discussed in detail here. However, some communication protocols that can be used include, but are not limited to, Internet Protocol (IP, IPv4, IPv6, etc.), Transmission Control Protocol (TCP) and User Datagram Protocol (UDP), and any other suitable communication protocol, variant or its combination.
[0073] In any of the above examples of exchanging data, content, or any other type of information, the information exchange 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), JavaScript, JSON (JavaScript Object Notation) and AJAX (Asynchronous JavaScript and XML), Bluetooth, infrared, RF, cellular networks, satellite networks, global positioning systems, and any other suitable communication protocols, variations, or combinations thereof.
[0074] The functional block diagrams, operational scenarios and sequences and flow charts provided in the accompanying drawings represent exemplary systems, environments and methods for executing the novel aspects of the present disclosure. Although for the purpose of explaining simplicity, the methods included herein can be shown in the form of functional diagrams, operational scenarios or sequences or flow charts and can be described as a series of actions, it is understood and appreciated that each method is not limited by the order of these actions, because according to the present invention, some actions can occur in a different order than those shown and described herein and / or concurrently with other actions. For example, those skilled in the art will understand and appreciate that the method can be represented alternatively as a series of mutually related states or events, such as in the form of a state diagram. In addition, not all actions explained in the method are necessary for novel implementation.
[0075] The description and drawings included herein depict specific implementations for teaching those skilled in the art how to make and use the best options. For the purpose of teaching creative principles, some traditional aspects have been simplified or omitted. Those skilled in the art will appreciate that variations from these implementations also fall within the scope of the present invention. Those skilled in the art will also appreciate that the various 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 is limited only by the claims and their equivalents.
[0076] References throughout this specification to "one example" or "an example" mean that a particular described feature, structure, or characteristic is included in at least one embodiment. Thus, use of these phrases may refer to more than just one example. Furthermore, the described features, structures, or characteristics may be combined in any suitable manner in one or more examples.
[0077] However, those skilled in the relevant art will understand that each example can be implemented without one or more specific details, or with other methods, resources, materials, etc. In other instances, well-known structures, resources, or operations are not shown or described in detail to avoid obscuring certain aspects of the embodiments.
[0078] Although example embodiments and applications are shown and described, it should be understood that the present embodiments are not limited to the precise configuration and resources described above. Various modifications, changes, and variations that are apparent to those skilled in the art may be made to the arrangement, operation, and details of the methods and systems disclosed herein without departing from the scope of the present examples claimed.
Claims
1. A method for managing a provisioning state of a video game during display of a video game preview, comprising: presenting a menu of video game previews in a graphical user interface of an online game delivery service; detecting a user account associated with the online game delivery service that is viewing a menu of the video game preview; as well as analyzing user-specific usage data for the user account from the online game delivery service; receiving, via the graphical user interface, a selection of a video game preview from the menu of video game previews; launching, via the graphical user interface, the video game preview based on receiving the selection, wherein the launching displays the video game preview in the graphical user interface; generating a determination to manage video game provisioning based on results of an analysis of the user-specific usage data for the user account; detecting a provisioning state of the video game while the video game preview is being displayed in the graphical user interface; as well as A user interface element is presented within the video game preview that indicates a real-time provisioning status of the video game based on detecting the provisioning status of the video game.
2. The method of claim 1, further comprising: identifying a provisioning time for launching the video game on one or more distributed game servers; as well as One or more reference time points within the provisioning time reflecting various provisioning states of the video game are determined, wherein the one or more reference time points can be used to identify the provisioning state of the video game, wherein the real-time provisioning state of the video game changes based on detection of the one or more reference time points.
3. The method of claim 2, wherein identifying the provisioning time for launching the video game comprises: retrieving data associated with a configuration of the one or more distributed gaming servers; The data associated with the configuration of the one or more distributed game servers is analyzed to determine the provisioning time and the one or more reference time points.
4. The method of claim 2 , wherein a provisioning state is determined based on detecting a reference point in time of the one or more reference points in time, and wherein the real-time provisioning state of the video game is one or more selected from the group consisting of: an indicator that the video game is ready for provisioning; an indicator that game data for the video game is loading; and An indicator that the video game is ready to play.
5. The method of claim 1 , wherein detecting the provisioning state of the video game comprises detecting that the video game is loaded and ready for play, wherein the user interface element indicating the real-time provisioning state of the video game indicates that the video game is ready for play and comprises a visual effect that draws attention to the real-time provisioning state, and wherein the method further comprises: The video game is automatically launched through the graphical user interface based on receiving a selection of the user interface element.
6. The method of claim 1, further comprising: detecting an updated provisioning state of the video game while a preview of the video game is executing; as well as The user interface element indicating the real-time provisioning status of the video game is modified in the graphical user interface based on the updated provisioning status.
7. The method of claim 1, further comprising: A time delay to be applied to provisioning of the video game is determined based on analysis of user signal data associated with the user account, and wherein automatically launching the provisioning of the video game includes applying the time delay before automatically launching the provisioning of the video game after launching a preview of the video game.
8. The method of claim 1, 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.
9. The method of claim 1, further comprising: identifying user game data associated with the user account that is specific to the video game associated with the video game preview; One or more portions are selected from the user game data for incorporation into the video game preview to create a user-specific version of the video game preview, and wherein presenting the video game preview comprises including the one or more portions from the user game data in the video game preview.
10. The method of claim 9, wherein the one or more portions from the user gaming data include one or more selected from the group consisting of: video clips showing previous gameplay by the user account of the video game, status of gameplay by the user account in the video game, and in-game purchases available to the user account for the video game.
11. A system for managing a provisioning status of a video game during display of a video game preview, comprising: at least one processor; as well as a memory operatively connected to the at least one processor, the memory storing computer-executable instructions that, when executed by the at least one processor, cause the at least one processor to perform a method comprising: presenting a menu of video game previews in a graphical user interface of an online game delivery service; detecting a user account associated with the online game delivery service that is viewing a menu of the video game preview; and analyzing user-specific usage data for the user account from the online game delivery service; receiving, via the graphical user interface, a selection of a video game preview from the menu of video game previews; launching, via the graphical user interface, the video game preview based on receiving the selection, wherein the launching displays the video game preview in the graphical user interface; generating a determination to manage video game provisioning based on results of an analysis of the user-specific usage data for the user account; detecting a provisioning state of the video game while the video game preview is being displayed in the graphical user interface; and A user interface element is presented within the video game preview that indicates a real-time provisioning status of the video game based on detecting the provisioning status of the video game.
12. The system of claim 11, wherein the method performed by the at least one processor further comprises: identifying a provisioning time for launching the video game on one or more distributed game servers; as well as One or more reference time points within the provisioning time reflecting various provisioning states of the video game are determined, wherein the one or more reference time points can be used to identify the provisioning state of the video game, wherein the real-time provisioning state of the video game changes based on detection of the one or more reference time points.
13. The system of claim 12 , wherein a provisioning state is determined based on detecting a reference point in time of the one or more reference points in time, and wherein the real-time provisioning state of the video game is one or more selected from the group consisting of: an indicator that the video game is ready for provisioning; an indicator that game data for the video game is loading; and An indicator that the video game is ready to play.
14. The system of claim 11 , wherein detecting the provisioning state of the video game comprises detecting that the video game is loaded and ready for play, wherein the user interface element indicating the real-time provisioning state of the video game indicates that the video game is ready for play and comprises a visual effect that draws attention to the real-time provisioning state, and wherein the method, when executed by the at least one processor, further comprises: The video game is automatically launched through the graphical user interface based on receiving a selection of the user interface element.
15. The system of claim 11 , wherein the method performed by the at least one processor further comprises: detecting an updated provisioning state of the video game while a preview of the video game is executing; as well as The user interface element indicating the real-time provisioning status of the video game is modified in the graphical user interface based on the updated provisioning status.
16. The system of claim 11, wherein the method performed by the at least one processor further comprises: A time delay to be applied to provisioning of the video game is determined based on analysis of user signal data associated with the user account, and wherein automatically launching the provisioning of the video game includes applying the time delay before automatically launching the provisioning of the video game after launching a preview of the video game.
17. The system of claim 11, 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.
18. The system of claim 11, wherein the method performed by the at least one processor further comprises: identifying user game data associated with the user account that is specific to the video game associated with the video game preview; One or more portions are selected from the user game data for incorporation into the video game preview to create a user-specific version of the video game preview, and wherein presenting the video game preview comprises including the one or more portions from the user game data in the video game preview.
19. The system of claim 18, wherein the one or more portions from the user gaming data include one or more selected from the group consisting of: video clips showing previous gameplay by the user account of the video game, status of gameplay by the user account in the video game, and in-game purchases available to the user account for the video game.
20. A method for managing a provisioning status of a video game during display of a video game preview, comprising: presenting a menu of video game previews in a graphical user interface of an online game delivery service; detecting a user account associated with the online game delivery service that is viewing a menu of the video game preview; analyzing user-specific usage data for the user account from the online game delivery service; receiving, via the graphical user interface, a selection of a video game preview from the menu of video game previews; launching, via the graphical user interface, the video game preview based on receiving the selection, wherein the launching displays the video game preview in the graphical user interface; generating a determination based on results of an analysis of the user-specific usage data for the user account whether to automatically initiate provisioning of a video game upon displaying the video game preview or to request a user to manually initiate provisioning of the video game via the video game preview; generating a status indicator of the provisioning of the video game based on the generated determination; as well as A user interface element is presented within the video game preview that provides the status indicator of the provisioning of the video game.
21. A computer system comprising means for performing the method of any one of claims 1-10, 20.
22. A computer-readable storage medium having instructions which, when executed, cause a machine to perform the method of any one of claims 1-10, 20.
Citation Information
Patent Citations
Display method and terminal of loading progress
CN105608161A
User interface for a multimedia service
US20080168387A1
Web explorer for gaming platform interface
US20170189809A1