Game content recommendation for video games
The system addresses biased video game recommendations by analyzing pre-game, in-game, and post-game metrics to ensure that recommended content aligns with actual gameplay performance, improving user engagement.
Patent Information
- Application Number
- JP2025205759
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2020-05-11
- Filing Date
- 2025-11-27
- Publication Date
- 2026-02-16
AI Technical Summary
Existing video game recommendation engines often provide biased recommendations based on team rankings rather than actual gameplay performance, failing to account for how a team performs within a specific genre at a particular level.
A system that analyzes pre-game, in-game, and post-game performance metrics to recommend video game content based on player and team performance, using sequential analysis to ensure recommendations align with actual gameplay quality.
Provides unbiased recommendations by evaluating gameplay metrics, ensuring that recommended content reflects the team's actual performance, thereby enhancing user engagement and satisfaction.
Smart Images

Figure 2026026221000001_ABST
Abstract
Description
[Background technology]
[0001] The present disclosure relates to systems for content recommendation, and more particularly to systems and associated processes for recommending gaming content, such as video game play session content for a video game, based on player performance. Summary of the Invention [Means for solving the problem]
[0002] Video gameplay content may be recommended to a user based on the user's viewing history of the video game, the genre of the game, and the ratings of the teams playing in the video game. However, with some recommendation engines, such recommendations of gameplay may be biased. For example, a particular team may be ranked highest compared to another team, but that team may not have played the game the best. The recommendation engine will not rate a game based on how the game was played by a player or entire team for a particular genre at a particular level.
[0003] In light of the foregoing, the present disclosure provides systems and associated methods for recommending video gameplay content session content for a video game based on player and / or team performance in the game. In some embodiments, the recommendations are based on a sequential order of pre-game analysis, in-game analysis, and post-game analysis of the video gameplay content.
[0004] In one embodiment, the system compares information in the post-game analysis with information in the pre-game analysis to determine whether to recommend video game play content. For example, the system analyzes a particular player's statistics before the game (pre-game analysis) and determines how the player performed in the actual game (in-game analysis). Assuming the player performed well in the actual game, the system analyzes the player's statistics (e.g., kills, saves, etc.) in the post-game analysis to determine whether the statistics are approximately identical to the player's statistics in the pre-game analysis. In other words, the system determines whether the player's performance during the in-game analysis is close to their performance in the pre-game analysis. If the player's performance is determined to be close, the system recommends video game play content for the actual video game.
[0005] In another embodiment, the system determines whether the gameplay of a video game is noteworthy in a pre-game analysis. For example, in the pre-game analysis, the system may analyze and determine that a player's performance was indeed good, e.g., the player slayed 20 dragons in 30 minutes, and therefore find the video game noteworthy. If the gameplay is determined to be noteworthy, the system may further evaluate the gameplay of the video game in an in-game analysis. In the in-game analysis, the system may determine, for example, that the same player's performance is similarly good, e.g., the player slayed 19 dragons in 30 minutes. The system then recommends to the user that they view video gameplay content of the actual video game.
[0006] In one aspect, the method includes calculating a pre-game performance metric based on stored player data and stored settings for the video game. A determination is made that the pre-game performance metric satisfies a pre-game threshold. In response to determining that the pre-game performance metric satisfies the pre-game threshold, an in-game performance metric is calculated based on stored metadata associated with the video game play session content that indicates an aspect of gameplay. Also, a determination is made that the in-game performance metric satisfies an in-game performance threshold. In response to determining that the in-game performance metric satisfies the in-game performance threshold, aggregated statistics from the video game play session content are determined. The method further includes analyzing the aggregated statistics against the stored player data and stored settings for the video game and determining whether to recommend video game play session content based on the analysis.
[0007] In another aspect, the method includes evaluating video game play session content for a multiplayer online battle arena (MOBA) video game. Player data for each player of each team associated with the video game play session and stored settings for the MOBA video game are analyzed to determine to evaluate the video game play session content. The player data includes metrics related to an attack metric, a defense metric, and a damage metric. In response to determining to evaluate the video game play session content, in-game performance of each player of each team in the video game play session content is analyzed based on a game map of the video game play session content and in-game metrics for each player of each team determined from the video game play session content. The in-game metrics include an in-game attack metric, an in-game defense metric, and an in-game damage metric. The method further determines whether to recommend the video game play session content based on the in-game performance of each player of each team. The present invention provides, for example, the following. (Item 1) 1. A computer-implemented method for evaluating video game play session content for a video game, the method comprising: calculating pre-game performance metrics based on stored player data and stored settings for said video game; determining that the pre-game performance metric meets a pre-game threshold; In response to determining that the pre-game performance metric satisfies a pre-game threshold, calculating an in-game performance metric based on stored metadata associated with the video game play session content indicative of an aspect of gameplay; determining that the in-game performance metric satisfies an in-game performance threshold; determining aggregate statistics from the video game play session content in response to determining that the in-game performance metric satisfies the in-game performance threshold; and analyzing the aggregated statistics against the stored player data and stored settings for the video game; determining whether the video game playing session content is to be recommended based on the analysis; and A method comprising: (Item 2) Item 10. The computer-implemented method of item 1, further comprising determining a genre of the video game. (Item 3) Item 3. The computer-implemented method of item 2, further comprising calculating the pre-game and post-game performance metrics based on the genre. (Item 4) Determining that the pre-game performance metric satisfies a pre-game threshold may include: calculating a plurality of pre-game performance metrics for each of the first team and the second team; calculating an average pre-game performance metric for each of the first team and the second team; comparing the average value to the average pre-game threshold value of the pre-game threshold values; Item 1. The computer-implemented method of item 1, comprising: (Item 5) determining that the average value is above the average pre-game threshold; updating the average pre-game threshold with the average in response to determining that the average value exceeds the average pre-game threshold; Item 5. The computer-implemented method of item 4, further comprising: (Item 6) Determining that the in-game performance metric satisfies an in-game performance threshold includes: calculating a plurality of in-game performance metrics for each of the first team and the second team over a plurality of time intervals; comparing each of the in-game performance metrics for each of the first team and the second team to a corresponding in-game performance threshold among a plurality of in-game thresholds; Item 1. The computer-implemented method of item 1, comprising: (Item 7) Item 10. The computer-implemented method of item 1, wherein the player data comprises aggregated pre-game performance metrics for each player among a plurality of players of the video game prior to actual gameplay of the video game. (Item 8) Determining the aggregated statistics includes: 8. The computer-implemented method of claim 7, further comprising determining aggregate in-game performance metrics for each player among the plurality of players from the video game play session content. (Item 9) Analyzing the aggregated statistics includes: Item 9. The computer-implemented method of item 8, comprising comparing the aggregated pre-game performance metrics to the aggregated in-game performance metrics. (Item 10) 10. The computer-implemented method of claim 9, further comprising determining whether the video game play session is to be recommended based on the comparison. (Item 11) 11. A system comprising means for performing the steps of the method according to any one of items 1-10. (Item 12) 11. A non-transitory computer-readable medium having instructions encoded thereon that, when executed by control circuitry, enable the control circuitry to perform the steps of the method described in any of items 1-10. (Item 13) 1. A computer-implemented method for evaluating video game play session content for a multiplayer online battle arena (MOBA) video game, the method comprising: analyzing stored player data for each player of each team associated with the video game play session and stored settings for the MOBA video game, the player data comprising metrics related to an attack metric, a defense metric, and a damage metric, to evaluate the video game play session content; responsive to determining to evaluate the video game play session content, analyzing in-game performance of each player of each team in the video game play session content based on a game map of the video game play session content and in-game metrics for each player of each team determined from the video game play session content, the in-game metrics comprising an in-game attack metric, an in-game defense metric, and an in-game damage metric; determining to recommend said video game playing session content based on in-game performance of each player of each team; A method comprising: (Item 14) Item 14. The computer-implemented method of item 13, wherein the stored player data comprises pre-game metrics for each player among a plurality of players in a first team and a second team. (Item 15) Analyzing the stored player data includes: comparing pre-game metrics of each player in the first team with pre-game metrics of each corresponding player in the second team, said comparing including determining whether the pre-game metrics of each player in the first team are substantially equivalent to the pre-game metrics of each corresponding player in the second team; Item 15. The computer-implemented method of item 14. (Item 16) Item 16. The computer-implemented method of item 15, further comprising determining to rate the video game play session content based on the comparison. (Item 17) Analyzing the in-game performance further comprises: comparing in-game metrics of each player among a plurality of players in a first team with in-game metrics of each corresponding player in a second team, said comparing including determining whether the in-game metrics of each player in the first team are substantially equivalent to the in-game metrics of each corresponding player in the second team; Item 14. The computer-implemented method of item 13. (Item 18) Item 18. The computer-implemented method of item 17, further comprising determining to recommend the video game playing session based on the comparison. (Item 19) Item 14. The computer-implemented method of item 13, further comprising calculating the in-game metrics based on metadata associated with the video game play session content that is indicative of aspects of gameplay. (Item 20) 20. The computer-implemented method of claim 19, wherein the metadata comprises character metadata, item metadata, and overall ability metadata for the MOBA video game. (Item 21) Item 14. The computer-implemented method of item 13, wherein the game map comprises a route of target and objective locations, different routes for reaching the targets and objectives, or a combination thereof. (Item 22) Item 14. The computer-implemented method of item 13, wherein the setting for the MOBA video game comprises a battlefield including two separate teams, each of the teams including multiple players. (Item 23) A system comprising means for performing the steps of the method according to any one of items 13-22. (Item 24) 23. A non-transitory computer-readable medium having instructions encoded thereon that, when executed by control circuitry, enable the control circuitry to perform the steps of the method described in any of items 13-22. [Brief explanation of the drawings]
[0008] These and other objects and advantages of the present disclosure will become apparent upon consideration of the following detailed description taken in conjunction with the accompanying drawings.
[0009] [Figure 1] FIG. 1 is an illustrative block diagram of a system for recommending game content for a video game, according to some embodiments of the present disclosure.
[0010] [Figure 2] FIG. 2 is an illustrative block diagram of a system for recommending game content for a multiplayer online battle arena (MOBA) video game, according to some embodiments of the present disclosure.
[0011] [Figure 3] FIG. 3 is an illustrative block diagram showing additional details of the systems of FIGS. 1 and / or 2, according to some embodiments of the present disclosure.
[0012] [Figure 4] FIG. 4 is an illustrative flowchart of a process for recommending video game play session content for a video game according to some embodiments of the present disclosure.
[0013] [Figure 5]FIG. 5 is an illustrative flowchart of a pre-game analysis that analyzes video game content data prior to video game play, according to some embodiments of the present disclosure.
[0014] [Figure 6] FIG. 6 is an illustrative flowchart of in-game analysis for analyzing data of video game content during a video game play session, according to some embodiments of the present disclosure.
[0015] [Figure 7] FIG. 7 is an illustrative flowchart of a post-game analysis that analyzes results of an in-game analysis and recommends video game play session content for a video game, according to some embodiments of the present disclosure.
[0016] [Figure 8] FIG. 8 illustrates an example table structure of pre-game performance metrics for pre-game analysis of a video game, according to some embodiments of the present disclosure.
[0017] [Figure 9] FIG. 9 illustrates an example of a graph structure of pre-game metrics for pre-game analysis of a video game, according to some embodiments of the present disclosure.
[0018] [Figure 10A] FIG. 10A illustrates an example of a table structure of in-game performance metrics for in-game analysis of a video game, according to some embodiments of the present disclosure.
[0019] [Figure 10B] FIG. 10B illustrates an example of an aggregated in-game performance metrics table structure for the in-game performance metrics of FIG. 10A.
[0020] [Figure 10C]FIG. 10C illustrates an example of a graph structure of aggregated in-game performance metrics of the in-game performance metrics of FIG. 10A.
[0021] [Figure 11A] FIG. 11A illustrates an example of a graph structure of a player's post-game performance metrics in a post-game analysis of a video game, according to some embodiments of the present disclosure.
[0022] [Figure 11B] FIG. 11B illustrates an example of a graph structure of aggregated post-game performance metrics of players in a post-game analysis of a video game, according to some embodiments of the present disclosure.
[0023] [Figure 11C] FIG. 11C illustrates an example of a table structure for aggregated post-game performance metrics for teams in a post-game analysis of a video game, according to some embodiments of the present disclosure.
[0024] [Figure 12] FIG. 12 is an illustrative flowchart of a process for recommending video games according to another embodiment of the present disclosure.
[0025] [Figure 13] FIG. 13 is an illustrative flowchart of a process for analyzing video game content data prior to video game play, according to some embodiments of the present disclosure.
[0026] [Figure 14] FIG. 14 is an illustrative flowchart of in-game analysis for analyzing data of video game content during a video game play session, according to some embodiments of the present disclosure.
[0027] [Figure 15]FIG. 15 is an illustrative flowchart of a post-game analysis for analyzing data of video game content, according to some embodiments of the present disclosure. DETAILED DESCRIPTION OF THE INVENTION
[0028] 1 shows an illustrative block diagram of a system 100 for recommending gameplay session content for a video game according to some embodiments of the present disclosure. System 100 includes a server 102, a video game device 104, a communications network 106, a content source or database 108, a video game settings database 110, a metadata database 112, and a computing device 114. While FIG. 1 illustrates content source 108, video game settings database 110, and metadata database 112 as individual components and separate from server 102, in some embodiments, any of those components may be combined and / or integrated with server 102 as a single device. In one embodiment, server 102 is communicatively coupled to video game device 104, content source 108, video game settings database 110, and metadata database 112 via additional communications paths that may be included in communications network 106 or that may be separate from communications network 106. Communications network 106 may be any type of communications network, such as the Internet, a cellular network, a mobile voice or data network (e.g., a 4G or LTE network), a cable network, a public switched telephone network, or any combination of two or more such communications networks. Communications network 106 includes one or more communications paths, such as satellite paths, fiber optic paths, cable paths, paths supporting Internet communications (e.g., IPTV), free-space connections (e.g., for broadcast or other wireless signals), or any other suitable wired or wireless communications paths, or combinations of such paths, such as dedicated communications paths and / or network 103. Network 106, in various aspects, may include the Internet or any other suitable network or group of networks.
[0029] In one embodiment, server 102 is communicatively coupled to computing devices 114 via communications network 106. Some exemplary types of computing devices 102 include, but are not limited to, gaming devices (such as a PLAYSTATION device, an XBOX® device, or any other gaming device), smartphones, tablets, personal computers, set-top boxes (STBs), digital video recorders (DVRs), and / or the like that provide various user interfaces configured to receive and view content and / or interact with server 102 and / or video gaming devices 104. In some examples, computing device 102 provides a display configured to display information via a graphical user interface.
[0030] In one embodiment, the server 102 is configured to aggregate content useful for evaluating video game play session content for a particular genre of video games at a particular level from various sources, such as the video game devices 104, via the communications network 106. Some different types of video game genres include action, adventure, horror, sports, role-playing, strategy, puzzle, board, and any combination of these genres. The server 102 evaluates the video game play session content based on how the game was played. For example, the server 102 may receive content such as a challenge tutorial or video clip of actual gameplay played on the video game devices 104 that shows how the game was played by a player and / or an entire team in a particular video game or segment thereof. In some embodiments, the server 102 functions to recommend video game play session content to users of the computing devices 114. In one embodiment, recommendations are based on a sequential order of pre-game analysis, in-game analysis, and post-game analysis of the video game play content. The server 102 compares information in the post-game analysis with information in the pre-game analysis to determine whether to recommend video game play content.
[0031] In some embodiments, during pre-game analysis, the server 102 retrieves player data from the content 108. In one embodiment, the player data includes one or more player names / characters and player metadata. In one example, the player metadata includes aggregated statistics of composite measures of player performance skills prior to game play (e.g., FIG. 9). In some embodiments, the server retrieves stored video game settings 110 for the video game. Several different types of settings include physical, temporal, emotional, ethical, and environmental. Settings may vary depending on the genre of the game. In one embodiment, the server 102 calculates in-game performance metrics based on the player data and video game settings. In one example, the pre-game performance metrics measure team performance using existing player data and video settings. The pre-game performance metrics measure team performance in terms of its individual player skills prior to actual game play. The pre-game performance metrics measure team performance prior to actual game play (e.g., FIG. 8). The pre-game performance metrics are compared to a pre-game threshold (predetermined) to determine the likelihood of the video game session of interest. In one embodiment, in response to determining the likelihood of the video game session of interest, the stored player data of the video game is used for post-game analysis as described below.
[0032] In some embodiments, during in-game analysis, the server 102 retrieves metadata 112 corresponding to the video game play session content that describes aspects of the gameplay. The metadata includes gameplay metadata of the video game session. The gameplay metadata includes parameters that measure team performance during actual gameplay. In one embodiment, the server 102 uses the gameplay metadata to calculate in-game performance metrics for the gameplay based on the game progress during the video game session. The in-game performance metrics measure various skills performed during the video game session of actual gameplay. Some examples of in-game performance skills include character positioning (CP), route taken (RF), reaction time (RT), etc. The in-game performance metrics are compared to in-game thresholds (predetermined) to determine competitive gameplay. In one embodiment, the server determines aggregate statistics for each of the players' skills from the video game play session content. In one example, the aggregate statistics are a composite measure of the players' performance skills during the video game session of actual gameplay. In one example, the aggregated statistics are a composite measure of the team's performance skills during a video game session of actual game play (eg, FIGS. 10A, 10B, and 10C).
[0033] In some embodiments, during the post-game analysis, the server 102 compares aggregated statistics from the video game play session content of the in-game analysis with aggregated statistics prior to game play stored in the player data of the video game selected in the pre-game analysis. In one embodiment, the server determines that the aggregated statistics from the video play session content are substantially comparable to the aggregated statistics of the player data and recommends the video play session content to the user of the computing device 114.
[0034] 2 shows illustrative blocks of a system 200 for recommending content based on a mobile online battle arena multiplayer (MOBA) video game, according to some embodiments of the present disclosure. In various embodiments, system 200 includes several components described above in connection with system 100. In particular, system 200 includes server 102, video game device 104, communication network 106, content source 108, video game settings database 110, metadata database 112, and computing device 114. While FIG. 2 illustrates content source 108, video game settings database 110, and metadata database 112 as individual components and separate from server 102, in some embodiments, any of those components may be combined and / or integrated with server 102 as a single device. As shown, the server 102 is communicatively coupled to the gaming device 104 via a communications network 106, and is communicatively coupled to a content source 108, a metadata database 110, and a game log database 202 via additional communications paths that may be included in the communications network 106 or may be separate from the communications network 106.
[0035] As illustrated in FIG. 2 , in one embodiment, content 108 includes MOBA content 208 including player data corresponding to a MOBA video game. In one example, the MOBA content includes player data such as aggregated pre-game metrics for each of the players in a team (e.g., FIG. 9 ). The aggregated pre-game metrics are composite measurements of the players' performance skills (e.g., defensive skills, offensive skills, damage skills, healing skills, control skills) prior to MOBA video game play. Some examples of pre-game metrics include pre-game damage metrics, pre-game offensive metrics, pre-game defensive metrics, pre-game crowd control metrics, pre-game overall performance metrics, etc. In one embodiment, video setting 110 includes MOBA video game setting 210. In one example, the MOBA video game setting is a battlefield involving two separate teams of players. In one embodiment, metadata 212 includes MOBA metadata of a game map and parameters of the MOBA video game play. Some of the parameters include character positioning, route taken, reaction time, targets captured, time elapsed in target capture, and targets destroyed. Character positioning includes the positioning of the characters as soon as the game starts for both teams. Route taken is the route taken by the players in a team. Reaction time is the time it takes a player / team to reach an objective and join the fight. Targets captured is the number of objectives captured by a player / team. Time elapsed is the time it takes a player / team to capture an objective.
[0036] In one embodiment, the server 102 performs a pre-game analysis of the MOBA video game play and evaluates the MOBA video game play session content. For example, the server 102 determines in the pre-game analysis whether the MOBA video game is worthy of attention. The server utilizes aggregated pre-game metrics from the MOBA video game setting 212 and the MOBA content 208 for each of the players in the team to determine pre-game performance metrics for each of the teams. In one example, the server 102 utilizes a graph including aggregated pre-game metrics of the pre-game analysis of the three players in the team (e.g., FIG. 9). The pre-game performance metrics measure the team's performance prior to actual MOBA video game play (e.g., FIG. 8). The pre-game performance metrics are compared to a pre-game threshold (predetermined) to determine the likelihood of a MOBA video game session of interest. In one embodiment, in response to determining the likelihood of a MOBA video game session of interest, the aggregated pre-game metrics of the video game are used for post-game analysis, as described below.
[0037] In one embodiment, the server 102 performs in-game analysis of the MOBA video game. The server 102 utilizes parameters from the game map and the MOBA metadata 212 to evaluate the MOBA video game session content in the actual MOBA video game session. Specifically, the server 102 utilizes the game map and parameters to calculate in-game performance metrics of the video game session content. Some examples of in-game performance metrics include route calculation, number of objectives captured, etc. In one embodiment, the server 102 utilizes a route taken parameter to calculate the route taken to reach the target. In another embodiment, the server 102 utilizes a objective captured parameter to calculate the number of objectives captured by the player / team. In one embodiment, the in-game performance metrics are compared to a (predetermined) in-game threshold to determine competitive gameplay. In one embodiment, the server 102 determines in-game performance metrics for each of the teams from the MOBA video gameplay session content. The in-game performance metrics are measurements of the team's performance during actual MOBA video gameplay. The in-game performance metrics correspond to the team's skill during the MOBA video gameplay session. In one embodiment, the server 102 calculates in-game metrics for each of the teams during a MOBA video game session of actual MOBA gameplay (e.g., FIG. 10A). The in-game metrics represent the team's skill during the actual MOBA video gameplay. Some examples of in-game metrics include in-game damage metrics, in-game attack metrics, in-game defense metrics, in-game crowd control metrics, in-game overall performance metrics, etc. The server combines the in-game metrics for each of the teams and calculates aggregate statistics from the in-game analysis of the video gameplay session content (e.g., FIGS. 10B and 10C).
[0038] In one embodiment, during the post-game analysis, the server 102 compares the aggregated statistics from the in-game analysis with the aggregated statistics of the pre-game analysis. In one embodiment, the server determines that the aggregated statistics of the in-game analysis from the video play session content are substantially comparable to the aggregated statistics from the pre-game analysis and recommends the MOBA video play session content to the user of the computing device 114.
[0039] FIG. 3 is an illustrative block diagram showing additional details of system 100 ( FIG. 1 ) and / or system 200 ( FIG. 2 ) according to some embodiments of the present disclosure. In various embodiments, system 200 includes several of the components described above in connection with system 100. While FIG. 3 shows a certain number of components, in various examples, system 300 may include fewer components than shown and / or more than one or more of the illustrated components. Server 102 includes control circuitry 302 and I / O paths 308, which in turn include storage 304 and processing circuitry 306. Computing device 104, which may correspond to video game device 104 of FIGS. 1 and 2 , may be a gaming device such as a video game console, user television equipment such as a set-top box, user computer equipment, a wireless user communication device such as a smartphone device, or any device on which a video game may be played. Computing device 104 includes control circuitry 310, I / O paths 316, speaker 318, display 320, and user input interface 322. Control circuitry 310 includes memory 312 and processing circuitry 314. Control circuitry 302 and / or 310 may be based on any suitable processing circuitry, such as processing circuitry 306 and / or 314. As referred to herein, processing circuitry should be understood to mean circuitry based on one or more microprocessors, microcontrollers, digital signal processors, programmable logic devices, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), etc., and may include multi-core processors (e.g., dual-core, quad-core, hexa-core, or any suitable number of cores). In some embodiments, processing circuitry may be distributed across multiple separate processors, for example, multiple processors of the same type (e.g., two Intel Core i9 processors) or multiple different processors (e.g., an Intel Core i7 processor and an Intel Core i9 processor).
[0040] Storage device 304, storage device 312, and / or storage devices of other components of system 300 (e.g., storage devices of content source 108, video game settings 110, metadata database 112, and / or the like) may each be an electronic storage device. As referred to herein, the phrase “electronic storage device” or “storage device” should be understood to mean any device for storing electronic data, computer software, or firmware, such as random access memory, read-only memory, hard drive, optical drive, digital video disc (DVD) recorder, compact disc (CD) recorder, BLU-RAY® Disc (BD) recorder, BLU-RAY® 3D Disc recorder, digital video recorder (DVR, sometimes also referred to as personal video recorder or PVR), solid-state device, quantum storage device, game console, game media, or any other suitable fixed or removable storage device, and / or any combination of the same. Storage 304, storage 312, and / or storage of other components of system 300 may each be used to store various types of content, metadata, game data, media guidance data, and / or other types of data. Non-volatile memory may also be used (e.g., to launch boot-up routines and other instructions). Cloud-based storage may be used to supplement or in place of storage 304, 312. In some embodiments, control circuitry 302 and / or 310 executes instructions for applications stored in memory (e.g., storage 304 and / or 312). Specifically, control circuitry 302 and / or 310 may be instructed by the applications to perform the functions discussed herein. In some implementations, any actions performed by control circuitry 302 and / or 310 may be based on instructions received from the applications.For example, the application may be implemented as software or a set of executable instructions that may be stored in memory 304 and / or 312 and executed by control circuitry 302 and / or 310. In some embodiments, the application may be a client / server application, where only the client application resides on computing device 104 and the server application resides on server 102.
[0041] The application may be implemented using any suitable architecture. For example, it may be a standalone application implemented entirely on the computing device 104. In such an approach, instructions for the application are stored locally (e.g., in the storage device 312) and data for use by the application is downloaded on a periodic basis (e.g., from an out-of-band feed, from an Internet resource, or using another suitable approach). The processing circuitry 314 may read the instructions for the application from the storage device 312, process the instructions, and perform the functionality described herein. Based on the processed instructions, the control circuitry 314 may determine what action to perform when input is received from the user input interface 322.
[0042] In a client / server-based embodiment, control circuitry 310 may include communications circuitry suitable for communicating with an application server (e.g., server 102) or other networks or servers. Instructions for performing the functionality described herein may be stored on the application server. The communications circuitry may include a cable modem, an Integrated Services Digital Network (ISDN) modem, a Digital Subscriber Line (DSL) modem, a telephone modem, an Ethernet card, or a wireless modem for communicating with other equipment or any other suitable communications circuitry. Such communications may involve the Internet or any other suitable communications network or path (e.g., communications network 106). In another example of a client / server-based application, control circuitry 310 launches a web browser that interprets web pages provided by a remote server (e.g., server 102). For example, the remote server may store instructions for the application in a storage device. The remote server may use circuitry (e.g., control circuitry 302) to process the stored instructions and generate the displays discussed above and below. Computing device 104 may receive displays generated by a remote server and may display the contents of the displays locally via display 320. In this manner, processing of instructions is performed remotely (e.g., by server 102), while the resulting displays, such as display windows described elsewhere herein, are provided locally on computing device 104. Computing device 104 may receive inputs from a user via input interface 322 and transmit those inputs to the remote server for processing and generation of corresponding displays.
[0043] A user may send instructions to control circuitry 302 and / or 310 using user input interface 322. User input interface 322 may be any suitable user interface, such as a game controller, remote control, trackball, keypad, keyboard, touch screen, touchpad, stylus input, joystick, voice recognition interface, or other user input interface. User input interface 322 may be integrated with or combined with display 320, which may be a monitor, television, liquid crystal display (LCD), electronic ink display, or any other device suitable for displaying visual images.
[0044] The server 102 and the computing device 104 may receive content and data via input / output (hereinafter “I / O”) paths 308 and 316, respectively. For example, the I / O paths 316 may include communications ports configured to receive live content streams from the server 102 and / or the content source 108 via the communications network 106. The storage device 312 may be configured to buffer the received live content streams for playback, and the display 320 may be configured to present the buffered content, navigation options, alerts, and / or the like via a primary and / or secondary display window. The I / O paths 308, 316 may provide content (e.g., live streams of content, broadcast programming, on-demand programming, Internet content, content available via a local area network (LAN) or wide area network (WAN), and / or other content) and data to the control circuits 302, 310. The control circuits 302, 310 may be used to send and receive commands, requests, and other suitable data using the I / O paths 308, 316. The I / O paths 308, 316 may connect the control circuits 302, 310 (and specifically the processing circuits 306, 314) to one or more communication paths (described below). An I / O function may be provided by one or more of these communication paths, which are shown as a single path in FIG. 3 to avoid overcomplicating the drawing.
[0045] The content sources 108 may include one or more types of content distribution equipment, including television distribution facilities, cable system headends, satellite distribution facilities, program sources (e.g., television broadcast companies such as NBC, ABC, HBO, etc.), intermediate distribution facilities and / or servers, Internet providers, on-demand media servers, and other content providers. NBC is a trademark owned by National Broadcasting Company, Inc., ABC is a trademark owned by American Broadcasting Company, INC., and HBO is a trademark owned by Home Box Office, Inc. The content sources 108 may be content originators (e.g., television broadcast companies, webcast providers, etc.) or non-content originators (e.g., on-demand content providers, Internet providers of broadcast program content for download, etc.). The content sources 108 may include cable sources, satellite providers, on-demand providers, Internet providers, over-the-top content providers, or other content providers. The content sources 108 may also include remote media servers used to store different types of content (including video content selected by a user) at locations remote from the computing device 104. Systems and methods for remotely storing content and for providing remotely stored content to user equipment are discussed in more detail in connection with U.S. Pat. No. 7,761,892 to Ellis et al., issued July 20, 2010, which is incorporated herein by reference in its entirety.
[0046] The content and / or data delivered to the computing device 104 may be over-the-top (OTT) content. OTT content delivery allows an internet-enabled user device, such as the computing device 104, to receive content transmitted over the internet, including any of the content described above, in addition to content received via a cable or satellite connection. OTT content is delivered over an internet connection provided by an internet service provider (ISP), although third parties also distribute the content. The ISP may not be responsible for viewing capabilities, copyright, or redistribution of the content and may only transmit IP packets provided by the OTT content provider. Examples of OTT content providers include YOUTUBE®, NETFLIX, and HULU, which provide audio and video over IP packets. YOUTUBE is a trademark owned by Google LLC. Netflix is a trademark owned by Netflix, Inc., and Hulu is a trademark owned by Hulu, LLC. OTT content providers may additionally or alternatively provide the media guidance data described above. In addition to the content and / or media guidance data, the provider of the OTT content may distribute an application (e.g., a web-based application or a cloud-based application), or the content may be displayed by an application stored on the computing device 104.
[0047] Having described system 100, reference is now made to FIG. 4, which depicts an illustrative flowchart of a process 400 for recommending content for video games that may be implemented by using system 300, according to some embodiments of the present disclosure. In various embodiments, individual steps of process 400, or any process described herein, may be implemented by one or more components of system 300. While the present disclosure may describe certain steps of process 400 (and other processes described herein) as being implemented by certain components of system 300, it should be understood that this is for purposes of illustration only, and that other components of system 300 may instead implement those steps.
[0048] At step 402, control circuitry 302 calculates pre-game performance metrics based on the stored player data and the stored settings for the video game. The pre-game performance metrics measure the team's performance with respect to their skills. In one embodiment, the video game is a MOBA video game, and the stored settings include a MOBA video game setting. In one embodiment, the stored player data includes the skills of each of the players. Such skills in a MOBA video game include power skills, defensive skills, offensive skills, damage skills, healing skills, control skills, etc. In one embodiment, the stored player data includes AP Defence (AP Def) scores, Ability Power (AP) scores such as Ability Power Attack (APA) scores, Attack Damage (AD) scores, Attack Damage Defence (AD Def) scores, Crowd Control (CC) scores such as CC Completion scores, CC Defence (CC Def) scores, healing scores, etc., for each of the team's players. At step 404, control circuitry 302 determines that the pre-game performance metrics meet a pre-game threshold. In one embodiment, the pre-game threshold is predetermined based on pre-game performance metrics measured for games previously played by the same team. In one embodiment, steps 402 and 404 are part of a pre-game analysis performed by control circuitry 302, additional details of which are provided below in connection with FIG.
[0049] At step 406, in response to determining that the pre-game performance metric satisfies the pre-game threshold, the control circuitry 302 calculates an in-game performance metric based on stored metadata associated with the video gameplay session content that indicates aspects of the gameplay. The in-game performance metric measures the team's performance with respect to its skill during actual gameplay. At step 408, the control circuitry determines that the in-game performance metric satisfies the in-game performance threshold. In one embodiment, the in-game performance threshold is predetermined based on video analysis of games played by the same player with the same team. In one embodiment, steps 406 and 408 are part of the in-game analysis performed by the control circuitry 302, additional details of which are provided below in connection with FIG. 6.
[0050] At step 410, the control circuitry 302 calculates post-game aggregated statistics from the video game play session content. In one embodiment, the aggregated statistics are calculated by combining in-game metrics for each player determined during in-game analysis of the video game play session. At step 412, the control circuitry determines that the post-game aggregated statistics meet a post-game threshold. At step 414, the control circuitry 302 analyzes the aggregated statistics against stored player data and stored settings for the video game. In one embodiment, the control circuitry 302 analyzes the aggregated statistics of the in-game analysis with the aggregated statistics of the pre-game analysis stored in the player data. At step 416, based on the analysis, the control circuitry 302 determines whether the video game play session content will be recommended. In one embodiment, the control circuitry 302 determines that the aggregated in-game analysis is substantially identical to the aggregated pre-game analysis. In one embodiment, steps 410, 412, 414, and 416 are part of the post-game analysis performed by the control circuitry 302, additional details of which are provided below in connection with FIG. 7.
[0051] FIG. 5 depicts an illustrative flowchart of a process 500 for performing pre-game analysis of a video game according to some embodiments of the present disclosure. Process 500 may correspond to steps 402 and 404 of FIG. 4 in various embodiments. In step 502, the system calculates pre-game performance metrics for each of a first team and a second team of a video game. Examples of pre-game performance metrics for each team are shown in FIG. 8. FIG. 8 illustrates a table 800 including Team A 802 and Team B 804. Table 800 also includes multiple scores 806, such as a defensive score, a crowd control (CC) score, an ability power (AP) score, and an attack damage (AD) score, indicating the pre-game performance metrics for each of Team A 802 and Team B 804. As shown, Team A 802's score 806 is approximately equal to Team B 804's score 806. In one embodiment, the pre-game performance metrics are determined based on stored player data. An example of stored player data includes aggregated pre-game metrics for each player in Team A 802 as illustrated in FIG. 9. FIG. 9 depicts a graph 900 illustrating a pre-game analysis of three players of Team A 802. As shown, the x-axis includes the three players, namely, Player 1 902, Player 2 904, and Player 3 906, and the y-axis illustrates the scores of pre-game metrics 908. As shown, the aggregated pre-game metric scores include an AP Def score 908a, an AD Def score 908b, an Attack Damage (AD) score 908c, a CC Completion score 908d, a CC Def score 908e, an APA score 908f, and a Healing score 908g for Player 1 902, Player 2 904, and Player 3 906, respectively. Although not shown, a similar graph can be generated illustrating the pre-game performance of the three players on Team B 804.
[0052] In step 504, the system calculates an average value of the aggregated pre-game performance metrics for each of the first and second teams. For example, the average value 808 for each of Team A 802 and Team B 804 is determined to be 8, i.e., as shown in FIG. 8. In step 506, the system compares this average value for each of the teams to a pre-game threshold average value. The pre-game threshold average value is predetermined based on pre-game performance metrics measured for previously played games for the same teams. In step 508, it is determined whether the average value exceeds the pre-game threshold average value.
[0053] In one embodiment, if in step 506 it is determined that the average value is above the pre-game threshold average value, the pre-game threshold average value is updated with the average value in step 510. In step 512, the control circuitry selects stored player data of pre-game performance metrics of the video game for post-game analysis. In one example, the stored player data selected is aggregated pre-game metrics 908 illustrated in FIG. 9.
[0054] In one embodiment, if in step 508 it is determined that the average value does not exceed the pre-game threshold average value, then in step 514 the video game is discarded and another video game is selected to perform the pre-game analysis repeating from step 502. Thus, the pre-game analysis of a video game is trained over time on different videos of the same game, and the database is updated with updated pre-game threshold average values.
[0055] FIG. 6 depicts an illustrative flowchart of a process 600 for performing in-game analysis of a video game according to some embodiments of the present disclosure. Process 600 may, in various embodiments, correspond to steps 406 and 408 of FIG. 4. In step 602, control circuitry 302 calculates in-game performance metrics for each of the first and second teams of the video game. The in-game performance metrics measure the team's game performance with respect to its skill during an actual gameplay session over a time interval. As discussed above, in one example, the in-game performance metrics for each are determined based on a game map and parameters stored in the metadata of the MOBA video game. Some of the parameters include character positioning (CP), route taken (RF), reaction time (RT), objectives acquired (OC), time elapsed in target acquisition (TOC), targets destroyed (TD), hand management (MM), team fighting (TF), and advanced techniques (AT). In one example, character positioning is analyzed as soon as the game begins for both teams, and a chart is created to compare the positioning. In one embodiment, routes are traced to determine each team's strategy. In one embodiment, reaction time includes the time required to reach an objective and engage in a fight. Times for both teams may be calculated and compared. The best game may be when both teams reach a location / fight in equal time so that they can gain an advantage in the fight. In one embodiment, objectives captured is the number of objectives captured. In one embodiment, objectives captured is the amount of time it takes to capture an objective. In one embodiment, targets destroyed includes the number of enemy targets destroyed and the time it takes to destroy the targets. In one embodiment, the time it takes to destroy the targets is calculated for both teams and compared to identify the optimal time. In one embodiment, minion management includes minions created and minion targets. In one embodiment, team combat includes each team's ability to attack. In one embodiment, advanced techniques include the performance of specific tasks in the game.
[0056] In one embodiment, the control circuitry 302 utilizes parameters and a game map to analyze game progress during a MOBA video game session. In one example, the game map includes the locations of targets and objectives (created at specific times) and different routes / paths to reach the targets / objectives. Such targets are towers that require protection while playing the game. If the main tower is destroyed, the game is over. Each team must protect their tower while attacking the enemy tower. Objectives are special items that are created at specific times, and capturing them gives an advantage to the team that captures them. Thus, in route analysis, the video game analysis focuses primarily on the content of the routes taken by players while reaching the targets / objectives. If multiple routes to the targets / objectives exist, the best game will be determined in which players take the best route to the targets / objectives based on their current locations. In another example, each MOBA video game includes objectives that are special items that are created at specific times, and capturing them gives an advantage to the team that captures them. During in-game analysis, the efficiency with which each team reaches and captures the objectives is analyzed. For example, an objective is being created too quickly, and both teams are aware of this. Each team's task is to reach a location and capture it as quickly as possible. Data will be collected based on how each team played while reaching and capturing the objective. Such data may include how players approached the current engagement (ongoing battle), the route taken to reach the objective, how the teams coordinated (strategy) and acquired the target, the content of the formations used around the target, and the time taken to reach and capture the target. Accordingly, the control circuitry 302 calculates in-game performance metrics based on this analysis that are indicative of aspects of the gameplay and that are associated with the video game play session content. Some examples of in-game performance metrics include in-game damage metrics, in-game attack metrics, in-game defense metrics, in-game crowd control metrics, in-game overall performance metrics, etc.
[0057] An example of each team's in-game performance metrics is shown in FIG. 10A . FIG. 10A illustrates a table 1000 that includes Team A 802 and Team B 804. Table 1000 also includes time intervals (hours) 1004 and multiple scores 1006, such as a CP score, RF score, RT score, OC score, TOC score, TD score, MM score, TF score, and AT score, that indicate the in-game performance metrics of Team A 802 and Team B 804, respectively, during each time interval (hour) 1004. An example of a time interval 1004 is 10 minutes. An average score 1008 is also calculated for each of Team A 802 and Team B 804 during each time interval 1004. As shown, Team A 802's score 1006 is approximately equal to Team B 804's score 1006 during each of the time intervals. Also, Team A 802's average score 1008 is approximately equal to Team B 804's average score 1008 during each of the time intervals. Thus, the in-game performance metric measures a team's game performance with respect to its skill during each actual gameplay session of the time interval.
[0058] In one embodiment, an average of video game progress within a time interval 1004 (e.g., 10 minutes) is calculated. FIG. 10B illustrates a table 1020 including an average score 1022 for team A 802 and an average score 1024 for team B 804, as well as game time 1004 and a mean / median score 1026. The mean score 1022 for each of teams A 802 and B 804 is calculated using the mean scores 1008 for teams A 802 and B 804, respectively, from table 1000 of FIG. 10A. The mean / median score 1026 is calculated using the mean scores 1022 and 1024 for each of teams A 802 and B 804, respectively. In one embodiment, the mean / median score 106 determines appropriate information about the duration the game was most exciting. Thus, a better prediction of game quality, which can be utilized to recommend video games, is determined. 10C depicts a graph 1030 illustrating an in-game analysis of Team A 802 and Team B 804. As shown, the x-axis includes Team A 802 and Team B 804, and the y-axis includes their individual average scores 1022 and 1024 during each of the times 1004.
[0059] At step 604, the control circuitry 302 compares each of the in-game performance metrics to its corresponding in-game threshold among a plurality of in-game thresholds. The in-game thresholds are predetermined based on video analysis of games played by the same player using the same team. For example, the in-game threshold for a MOBA video game includes a route analysis threshold. In another example, the in-game threshold for a MOBA video game includes a target acquisition threshold. At step 606, it is determined whether at least one of the in-game performance metrics is less than its corresponding in-game threshold. If it is determined that none of the in-game performance metrics is less than its corresponding in-game threshold, the player data for the in-game performance metrics of the video game is selected for post-game analysis at step 608. In one embodiment, if it is determined at step 606 that at least one of the in-game performance metrics is less than its corresponding in-game threshold, the video game is discarded, and another video game is selected for performing the in-game analysis, repeating from step 602. Thus, the in-game analysis of a video game is trained over time on different videos of the same game to select video games for post-game analysis.
[0060] 7 depicts an illustrative flowchart of a process 700 for performing post-game analysis of a video game, according to some embodiments of the present disclosure. Process 700 may, in various embodiments, correspond to steps 410, 412, 414, and 416 of FIG. 4.
[0061] In step 704, player data from in-game performance metrics is compared to player data from pre-game performance metrics. An example of a post-game analysis for three players is shown in the graph of FIG. 11A. FIG. 11A shows a graph 1100. The y-axis displays the respective percentages of the scores, namely, AP Def score 1108a, AD Def score 1108b, Attack Damage (AD) score 1108c, CC Completion score 1108d, CC Def score 1108e, APA score 1108f, and Healing score 1108g, for Player 1 902, Player 2 904, and Player 3 906, respectively. The players' in-game metrics are used in the post-game analysis. An example of a post-game analysis for each player in the first team, utilizing data from the scores of FIG. 11A, is shown in graph 1100 of FIG. 11B. Graph 1100 of aggregated metrics for each player in a first team is generated by combining the data for the metrics in graph 1000 of FIG. 11A . Graph 1100 shows aggregated metrics for three players on team A 802. As shown, the x-axis includes the three players, namely, player 1 902, player 2 904, and player 3 906, and the y-axis illustrates the scores of metrics 1108. As shown, the aggregated metric scores include AP Def score 1108a, AD Def score 1108b, attack damage (AD) score 1108c, CC completion score 1108d, CC Def score 1108e, APA score 1108f, and heal score 1108g for player 1 902, player 2 904, and player 3 906, respectively. Although not shown, a similar graph can be generated illustrating the post-game analysis of the three players on Team B 804.
[0062] An example of a post-game analysis for each team is shown in FIG. 11C. FIG. 11C illustrates a table 1130 that includes Team A 802 and Team B 804. Table 1130 also includes multiple scores 1136, such as AP def score, AD def score, AD score, CC completion score, CC def score, and heal score, that indicate performance metrics for Team A 802 and Team B 804, respectively. As shown, Team A 802's average score 1138 is relatively comparable to Team B 804's score 1138. In one embodiment, the video game content of the present game will be considered competitive gameplay for recommendations.
[0063] In step 704, it is determined whether the in-game performance metrics are approximately equivalent to the pre-game performance metrics. In one embodiment, a post-game analysis of each of the teams, as shown in FIG. 11C, is used to determine whether the in-game performance metrics are approximately equivalent to the pre-game performance metrics. In one embodiment, a post-game analysis of each of the players, as shown in FIG. 11B, is used to determine whether the in-game performance metrics are approximately equivalent to the pre-game performance metrics. If in step 706, it is determined that the in-game performance metrics are approximately equivalent to the pre-game performance metrics, then video game play session content for the video game is recommended in step 708. If in step 706, it is determined that the in-game performance metrics are not approximately equivalent to the pre-game performance metrics, then in step 710, the video game is discarded and an in-game analysis of video game session content for another video game is selected for in-game analysis. Thus, the post-game analysis of the video game is trained over time on different videos of the same game to select video game play sessions of the video game for recommendation.
[0064] 12 is a flowchart of a process 1200 for recommending content for a video game that may be implemented using system 300, according to some embodiments of the present disclosure. In various embodiments, individual steps of process 1200, or any process described herein, may be implemented by one or more components of system 300. While the present disclosure may describe certain steps of process 1200 (and other processes described herein) as being implemented by certain components of system 300, it should be understood that this is for illustrative purposes only, and that other components of system 300 may instead implement those steps.
[0065] At step 1202, the control circuitry 304 analyzes stored player data for each player of each team associated with the video game play session and stored settings for the MOBA video game. In one embodiment, the player data includes metrics related to attack metrics, defense metrics, and damage metrics to determine how to evaluate the video game play session content. As discussed above, the player data includes pre-game metrics for each player in each of the teams. In one embodiment, step 1202 of analyzing stored data is performed by the control circuitry 302, additional details of which are provided below in connection with FIG. 13. At step 1204, the control circuitry 304 analyzes the in-game performance of each player of each team in the video game play session content based on the game map of the video game play session content and the in-game metrics for each player of each team determined from the video game play session content. The in-game metrics include in-game attack metrics, in-game defense metrics, and in-game damage metrics. In one embodiment, the in-game performance is the in-game metrics discussed in detail above. In one embodiment, step 1204 of analyzing in-game performance is performed by control circuitry 302, and additional details thereof are provided below in connection with FIG. 14. In step 1206, control circuitry 304 analyzes the aggregated performance metrics after the end of the video game play session to determine post-game metrics in terms of player data for evaluation of the video game session content. In one example, the player data includes attack, defense, and damage metrics. In one example, the stored player data indicates that player 1 killed 20 dragons in 30 minutes, and therefore would find the game worthy of attention. In one example, the in-game performance indicates that player 1 killed 19 dragons in 30 minutes, and therefore would also be considered a good game, and control circuitry 304 would recommend that the user watch a video of MOBA video game play.In step 1208, control circuitry 304 recommends video game playing session content based on the in-game performance of each player on each team.
[0066] 13 depicts an illustrative flowchart of a process 1300 for analyzing stored game data in a pre-game analysis according to some embodiments of the present disclosure. Process 1300 may correspond, in various embodiments, to step 1202 of FIG. 12.
[0067] In step 1302, the control circuitry 304 retrieves stored player data for each of two teams in a video game play session of a MOBA video game. The player data includes pre-game metrics for each player in each of the first and second teams. For example, the player data may be pre-game metrics for each of the three players in the first team, as illustrated in the graph of FIG. 9 . In step 1304, the control circuitry compares the pre-game metrics for each of the players in the first team with the pre-game metrics for each player in the second team. In step 1306, it is determined whether the pre-game metrics for each of the players in the first team are equivalent to the pre-game metrics for each player in the second team. If it is determined in step 1306 that the pre-game metrics for each of the players in the first team are equivalent to the pre-game metrics for each player in the second team, process 1300 continues with an in-game analysis in which each player's pre-game metrics are compared to in-game metrics. However, if in step 1306 it is determined that the pre-game metrics of each of the players in the first team are not equivalent to the pre-game metrics of each of the players in the second team, then in step 1308 the control circuitry selects stored player data of a video game session of another MOBA video game, and process 1300 is repeated beginning with step 1302. Thus, the video game pre-game analysis is trained over time on different videos of the same game to select stored player data of video game content for in-game analysis.
[0068] 14 depicts an illustrative flowchart of a process 1400 for analyzing in-game performance in an in-game analysis according to some embodiments of the present disclosure. Process 1400 may correspond, in various embodiments, to step 1204 of FIG. 12.
[0069] At step 1402, control circuitry 304 compares the in-game metrics of each player in the first team and the second team with the pre-game metrics of each corresponding player in the first team and the second team. In one embodiment, such comparison is performed during post-game analysis, as discussed above with respect to FIGS. 11A, 11B, and 11C. At step 1404, it is determined whether the in-game metrics are approximately equivalent to the stored in-game threshold metrics. If at step 1404 it is determined that the in-game metrics are approximately equivalent to the stored in-game threshold metrics, process 1400 continues with further post-game analysis. If at step 1404 it is determined that the in-game metrics are not approximately equivalent to the stored in-game threshold metrics, at step 1406, control circuitry 304 selects in-game metrics of another MOBA video game, and process 1400 is repeated, beginning with step 1402. Thus, the video game in-game analytics is trained over time on different videos of the same game to select in-game metrics for video game play session content and recommend video game play session content for the MOBA video game.
[0070] FIG. 15 depicts an illustrative flowchart of a process 1500 of post-game analysis for analyzing data of video game content, according to some embodiments of the present disclosure.
[0071] In step 1502, control circuitry 304 retrieves aggregated player data calculated in real time for each of the two teams in response to the completion of the video game play session. In step 1504, it is determined whether the post-game metrics are comparable to the pre-game metrics and are approximately equal to the stored post-game threshold metrics. If in step 1504 it is determined that the post-game metrics are comparable to the pre-game metrics and are approximately equal to the stored post-game threshold metrics, then in step 1506, video game play session content for a MOBA video game is recommended. However, if in step 1504 it is determined that the post-game metrics are not comparable to the pre-game metrics and are not approximately equal to the stored post-game threshold metrics, then in step 1508, a different MOBA video game is selected, and process 1500 is repeated, beginning with step 1502.
[0072] The systems and processes discussed above are intended to be illustrative, not limiting. Those skilled in the art will understand that actions of the processes discussed herein may be omitted, modified, combined, and / or rearranged, and that any additional actions may be implemented without departing from the scope of the present invention. More generally, the above disclosure is intended to be illustrative, not limiting. Only the claims that follow are intended to set boundaries as to what the disclosure encompasses. Furthermore, it should be noted that features and limitations described in any one embodiment may apply to any other embodiment herein, and that flowcharts or examples related to one embodiment may be combined with, performed in a different order, or performed in parallel with, any other embodiment in a suitable manner. In addition, the systems and methods described herein may be implemented in real time. It should also be noted that the systems and / or methods described above may be applied to or used in accordance with other systems and / or methods. This specification discloses embodiments, including, but not limited to, the following: 1. A computer-implemented method for evaluating video game play session content for a video game, comprising: calculating pre-game performance metrics based on the stored player data and the stored settings for the video game; determining that a pre-game performance metric satisfies a pre-game threshold; and, in response to determining that the pre-game performance metric satisfies the pre-game threshold, calculating an in-game performance metric based on stored metadata associated with the video game play session content indicative of an aspect of the gameplay; determining that an in-game performance metric satisfies an in-game performance threshold; determining aggregate statistics from the video game play session content in response to determining that the in-game performance metric satisfies the in-game performance threshold; analyzing the aggregated statistics against the stored player data and stored settings for the video game; determining whether video game playing session content is to be recommended based on the analysis; A method comprising: 2. The computer-implemented method of item 1, further comprising determining the genre of the video game. 3. The computer-implemented method of item 2, further comprising calculating pre-game and post-game performance metrics based on genre. 4. The step of determining that the pre-game performance metric meets the pre-game threshold comprises: calculating a plurality of pre-game performance metrics for each of the first team and the second team; calculating an average pre-game performance metric for each of the first team and the second team; comparing the average value to an average pre-game threshold value; Item 1. The computer-implemented method of item 1, comprising: 5. Determining that the average value is above an average pre-game threshold; updating the average pre-game threshold with the average in response to determining that the average is above the average pre-game threshold; Item 5. The computer-implemented method of item 4, further comprising: 6. The step of determining whether an in-game performance metric satisfies an in-game performance threshold comprises: calculating a plurality of in-game performance metrics for each of the first team and the second team over a plurality of time intervals; comparing each of the in-game performance metrics for each of the first team and the second team to a corresponding in-game performance threshold among a plurality of in-game thresholds; Item 1. The computer-implemented method of item 1, comprising: 7. The computer-implemented method of item 1, wherein the player data comprises aggregated pre-game performance metrics for each player among a plurality of players of the video game prior to actual gameplay of the video game. 8. The step of determining aggregate statistics comprises: Item 8. The computer-implemented method of item 7, comprising determining aggregated in-game performance metrics for each player among the plurality of players from the video game play session content. 9. The step of analyzing the aggregated statistics is: Item 10. The computer-implemented method of item 8, comprising comparing aggregated pre-game performance metrics to aggregated in-game performance metrics. 10. The computer-implemented method of item 9, further comprising determining whether the video game playing session is to be recommended based on the comparison. 11. A system for rating video game play session content for a video game, comprising: Store player data and settings for video games; a memory configured to coupled to the memory, Calculating pre-game performance metrics based on the player data and settings for the video game; determining that the pre-game performance metrics meet the pre-game threshold; responsive to determining that the pre-game performance metric satisfies a pre-game threshold, calculating an in-game performance metric based on stored metadata associated with the video game play session content indicative of an aspect of the gameplay; determining that the in-game performance metric meets an in-game performance threshold; determining aggregate statistics from the video game play session content in response to determining that the in-game performance metric satisfies the in-game performance threshold; Analyzing aggregated statistics against stored player data and stored settings for the video game; determining whether the video game playing session content is to be recommended based on the analysis; a control circuit configured to A system comprising: 12. The system of item 11, wherein the control circuitry is further configured to determine the genre of the video game. 13. The system of item 12, wherein the control circuitry is further configured to calculate pre-game and post-game performance metrics based on genre. 14. To determine that the pre-game performance metric meets the pre-game threshold, the control circuitry further: calculating a plurality of pre-game performance metrics for each of the first team and the second team; calculating an average pre-game performance metric for each of the first team and the second team; Comparing the mean pre-game threshold to the mean pre-game threshold, Item 12. The system according to item 11, configured as follows: 15. The control circuit further comprises: determining that the average value is above an average pre-game threshold; updating the average pre-game threshold with the average in response to determining that the average is above the average pre-game threshold; Item 15. The system according to item 14, configured as follows: 16. To determine that the in-game performance metric meets the in-game performance threshold, the control circuitry: calculating a plurality of in-game performance metrics for each of the first team and the second team over a plurality of time intervals; comparing each of the in-game performance metrics for each of the first team and the second team to a corresponding in-game performance threshold among a plurality of in-game thresholds; Item 12. The system according to item 11, configured as follows: 17. The system of item 11, wherein the player data comprises aggregated pre-game performance metrics for each player among a plurality of players of the video game prior to actual gameplay of the video game. 18. To determine the aggregated statistics, the control circuitry: Item 18. The system of item 17, configured to determine aggregated in-game performance metrics for each player among the plurality of players from video game play session content. 19. To analyze the aggregated statistics, the control circuitry: Item 19. The system of item 18, configured to compare aggregated pre-game performance metrics with aggregated in-game performance metrics. 20. The system of item 19, wherein the control circuitry is configured to determine, based on the comparison, whether the video game play session is to be recommended. 21. A non-transitory computer-readable medium that, when executed by control circuitry, causes the control circuitry to: Calculating pre-game performance metrics based on player data and settings for the video game; determining that a pre-game performance metric meets a pre-game threshold; responsive to determining that the pre-game performance metric satisfies a pre-game threshold, calculating an in-game performance metric based on stored metadata associated with the video game play session content indicative of an aspect of the gameplay; determining that an in-game performance metric meets an in-game performance threshold; determining aggregate statistics from the video game play session content in response to determining that the in-game performance metric satisfies the in-game performance threshold; analyzing aggregated statistics against stored player data and stored settings for the video game; determining whether video game playing session content is to be recommended based on the analysis; A non-transitory computer-readable medium having instructions encoded thereon. 22. The non-transitory computer-readable medium of item 21, wherein the computer-readable medium further has instructions encoded thereon that, when executed by the control circuitry, cause the control circuitry to determine a genre of the video game. 23. The non-transitory computer-readable medium of item 22, further having instructions encoded thereon that, when executed by the control circuitry, cause the control circuitry to calculate pre-game performance metrics and post-game performance metrics based on genre. 24. The computer-readable medium, when executed by the control circuitry, further causes the control circuitry to calculate a plurality of pre-game performance metrics for each of the first team and the second team; calculating an average pre-game performance metric for each of the first team and the second team; Compare the average pre-game threshold to the average pre-game threshold, 22. The non-transitory computer-readable medium of claim 21 having instructions encoded thereon. 25. The computer-readable medium, when executed by the control circuit, further causes the control circuit to determine that the average value is above an average pre-game threshold; updating the average pre-game threshold with the average in response to determining that the average is above the average pre-game threshold; 22. The non-transitory computer-readable medium of claim 21 having instructions encoded thereon. 26. The computer-readable medium, when executed by the control circuitry, further causes the control circuitry to calculate a plurality of in-game performance metrics for each of the first team and the second team at a plurality of time intervals; comparing each of the in-game performance metrics for each of the first team and the second team to a corresponding in-game performance threshold among a plurality of in-game thresholds; 22. The non-transitory computer-readable medium of claim 21 having instructions encoded thereon. 27. The non-transitory computer-readable medium of item 21, wherein the player data comprises aggregated pre-game performance metrics for each player among a plurality of players of the video game prior to actual gameplay of the video game. 28. The non-transitory computer-readable medium of item 27, further having instructions encoded thereon that, when executed by the control circuitry, cause the control circuitry to determine, from the video game play session content, aggregated in-game performance metrics for each player among the plurality of players. 29. The computer-readable medium further comprises, when executed by the control circuit, causing the control circuit to: Item 29. The non-transitory computer-readable medium of item 28 having instructions encoded thereon for comparing aggregated pre-game performance metrics with aggregated in-game performance metrics. 30. The non-transitory computer-readable medium of item 29, wherein the computer-readable medium further has instructions encoded thereon that, when executed by the control circuitry, cause the control circuitry to determine, based on the comparison, whether the video game play session is to be recommended. 31. A computer-implemented method for evaluating video game play session content for a multiplayer online battle arena (MOBA) video game, comprising: analyzing stored player data for each player of each team associated with the video game play session and stored settings for the MOBA video game, determining that the player data comprises metrics related to an attack metric, a defense metric, and a damage metric to evaluate the video game play session content; in response to determining to evaluate the video game play session content, analyzing in-game performance of each player of each team in the video game play session content based on a game map of the video game play session content and in-game metrics for each player of each team determined from the video game play session content, the in-game metrics comprising an in-game attack metric, an in-game defense metric, and an in-game damage metric; determining video game play session content recommendations based on in-game performance of each player on each team; A method comprising: 32. The computer-implemented method of item 31, wherein the stored player data comprises pre-game metrics for each player among the plurality of players in the first team and the second team. 33. The step of analyzing the stored player data includes: comparing pre-game metrics of each player in the first team with pre-game metrics of each corresponding player in the second team, the comparing step including determining whether the pre-game metrics of each player in the first team are substantially equivalent to the pre-game metrics of each corresponding player in the second team; Item 33. The computer-implemented method of item 32. 34. The computer-implemented method of item 33, further comprising determining to rate the video game playing session content based on the comparison. 35. The step of analyzing in-game performance further comprises: Item 32. The computer-implemented method of item 31, comprising: comparing in-game metrics of each player among a plurality of players in a first team with in-game metrics of each corresponding player in a second team, wherein the comparing comprises determining whether the in-game metrics of each player in the first team are approximately equivalent to the in-game metrics of each corresponding player in the second team. 36. The computer-implemented method of item 35, further comprising determining, based on the comparison, to recommend a video game playing session. 37. The computer-implemented method of claim 31, further comprising calculating in-game metrics based on metadata associated with the video game play session content that is indicative of aspects of the game play. 38. The computer-implemented method of item 37, wherein the metadata comprises character metadata, item metadata, and overall ability metadata for a MOBA video game. 39. The computer-implemented method of item 31, wherein the game map comprises a route of target and objective locations, different routes for reaching the target and objective, or a combination thereof. 40. The computer-implemented method of claim 31, wherein the setting for the MOBA video game comprises a battlefield including two separate teams, each team including a plurality of players. 41. A system for rating video game play session content for a multiplayer online battle arena (MOBA) video game, comprising: Remembering player data and settings for MOBA video games; a memory configured to coupled to the memory, analyzing stored player data for each player of each team associated with the video game play session and stored settings for the MOBA video game, determining that the player data comprises metrics related to an attack metric, a defense metric, and a damage metric, and evaluating the video game play session content; in response to determining to evaluate the video game play session content, analyzing in-game performance of each player of each team in the video game play session content based on a game map of the video game play session content and in-game metrics for each player of each team determined from the video game play session content, the in-game metrics comprising an in-game attack metric, an in-game defense metric, and an in-game damage metric; determining to recommend video game playing session content based on the in-game performance of each player on each team; a control circuit configured to A system comprising: 42. The system of item 41, wherein the stored player data comprises pre-game metrics for each player among the plurality of players in the first team and the second team. 43. To analyze the stored player data, the control circuitry further comprises: Item 43. The system of item 42, configured to compare pre-game metrics of each player in the first team with pre-game metrics of each corresponding player in the second team, wherein the comparing further includes determining whether the pre-game metrics of each player in the first team are approximately equivalent to the pre-game metrics of each corresponding player in the second team. 44. The system of item 43, wherein the control circuitry is further configured to determine, based on the comparison, to rate the video game play session content. 45. To analyze in-game performance, the control circuitry further: Item 42. The system of item 41, configured to compare in-game metrics of each player among a plurality of players in a first team with in-game metrics of each corresponding player in a second team, wherein the comparing further includes determining whether the in-game metrics of each player in the first team are approximately equivalent to the in-game metrics of each corresponding player in the second team. 46. The system of item 45, wherein the control circuitry is further configured to determine, based on the comparison, to recommend a video game playing session. 47. The system of item 41, wherein the control circuitry is further configured to calculate in-game metrics based on metadata associated with the video game play session content that is indicative of aspects of the game play. 48. The system of item 47, wherein the metadata comprises character metadata, item metadata, and overall ability metadata for a MOBA video game. 49. The system of item 41, wherein the game map comprises a route of target and objective locations, different routes for reaching the targets and objectives, or a combination thereof. 50. The system of item 41, wherein the setting for the MOBA video game comprises a battlefield including two separate teams, each of the teams including multiple players. 51. A non-transitory computer-readable medium that, when executed by a control circuit, causes the control circuit to: analyzing the stored player data for each player of each team associated with the video game play session and the stored settings for the MOBA video game, the player data comprising metrics related to an attack metric, a defense metric, and a damage metric, to determine evaluating the video game play session content; in response to determining to evaluate the video game play session content, analyzing in-game performance of each player of each team in the video game play session content based on a game map of the video game play session content and in-game metrics for each player of each team determined from the video game play session content, the in-game metrics comprising an in-game attack metric, an in-game defense metric, and an in-game damage metric; determining video game play session content recommendations based on in-game performance of each player on each team; A non-transitory computer-readable medium having instructions encoded thereon. 52. The non-transitory computer-readable medium of item 51, wherein the stored player data comprises pre-game metrics for each player among a plurality of players in the first team and the second team. 53. The non-transitory computer-readable medium of item 52, further having instructions encoded thereon that, when executed by the control circuitry, cause the control circuitry to compare pre-game metrics of each player in the first team with pre-game metrics of each corresponding player in the second team, the comparing further comprising determining whether the pre-game metrics of each player in the first team are approximately equivalent to the pre-game metrics of each corresponding player in the second team. 54. The non-transitory computer-readable medium of item 53, wherein the computer-readable medium further has instructions encoded thereon that, when executed by the control circuitry, cause the control circuitry to determine to evaluate the video game play session content based on the comparison. 55. The non-transitory computer-readable medium of item 51, further having instructions encoded thereon that, when executed by the control circuitry, cause the control circuitry to compare in-game metrics of each player among the plurality of players in the first team with in-game metrics of each corresponding player in the second team, wherein the comparing further includes determining whether the in-game metrics of each player in the first team are approximately equivalent to the in-game metrics of each corresponding player in the second team. 56. The computer-readable medium further comprises, when executed by the control circuit, causing the control circuit to: Item 56. The non-transitory computer-readable medium of item 55 having instructions encoded thereon for determining, based on the comparison, to recommend a video game play session. 57. The non-transitory computer-readable medium of item 51, further having instructions encoded thereon that, when executed by the control circuitry, cause the control circuitry to calculate in-game metrics based on metadata associated with the video game play session content that are indicative of aspects of the gameplay. 58. The non-transitory computer-readable medium of item 57, wherein the metadata comprises character metadata, item metadata, and overall ability metadata of a MOBA video game. 59. The non-transitory computer-readable medium of item 51, wherein the game map comprises a route of target and objective locations, different routes for reaching the target and objective, or a combination thereof. 60. The non-transitory computer-readable medium of item 51, wherein the setting for the MOBA video game comprises a battlefield including two separate teams, each of the teams including multiple players.
Claims
1. A computer-implemented method for evaluating video game play session content for a multiplayer online battle arena (MOBA) video game, the computer-implemented method comprising: using control circuitry to analyze stored player data for each player of each team associated with a video game play session and stored settings for the MOBA video game, the player data comprising metrics related to an attack metric, a defense metric, and a damage metric, thereby determining to evaluate the video game play session content; responsive to determining to evaluate the video game play session content, analyzing in-game performance of each player of each team in the video game play session content based on a game map of the video game play session content and in-game metrics for each player of each team determined from the video game play session content, the in-game metrics comprising an in-game attack metric, an in-game defense metric, and an in-game damage metric; determining, using the control circuitry, based on the in-game performance of each player on each team, to recommend users to view the video game playing session content as non-participants; 11. A computer-implemented method comprising:
2. The computer-implemented method of claim 1, wherein the stored player data comprises pre-game metrics for each player among a plurality of players in a first team and a second team.
3. Analyzing the stored player data comprises:
3. The computer-implemented method of claim 2, further comprising: using the control circuitry to compare the pre-game metrics of each player in the first team with the pre-game metrics of each corresponding player in the second team, wherein the comparing comprises determining whether the pre-game metrics of each player in the first team are approximately equivalent to the pre-game metrics of each corresponding player in the second team.
4. The computer-implemented method of claim 3, further comprising using the control circuit to determine, based on the comparison, to evaluate the video game play session content.
5. Analyzing the in-game performance further comprises:
2. The computer-implemented method of claim 1, further comprising: using the control circuitry to compare the in-game metrics of each player among a plurality of players in a first team with the in-game metrics of each corresponding player in a second team, wherein the comparing comprises determining whether the in-game metrics of each player in the first team are approximately equivalent to the in-game metrics of each corresponding player in the second team.
6. The computer-implemented method of claim 5, further comprising using the control circuit to determine, based on the comparison, to recommend the video game play session.
7. The computer-implemented method of claim 1, further comprising using the control circuit to calculate the in-game metrics based on metadata associated with the video game play session content indicative of aspects of gameplay.
8. The computer-implemented method of claim 7, wherein the metadata comprises character metadata, item metadata, and overall ability metadata for the MOBA video game.
9. The computer-implemented method of claim 1, wherein the game map comprises a route of target and objective locations, different routes for reaching the targets and objectives, or a combination thereof.
10. The computer-implemented method of claim 1, wherein the setting for the MOBA video game comprises a battlefield including two separate teams, each of the teams including multiple players.
11. A system for rating video game play session content for a multiplayer online battle arena (MOBA) video game, said system comprising: a memory configured to store player data and settings for said MOBA video game; a control circuit coupled to the memory; The control circuit comprises: determining to evaluate the video game play session content by analyzing stored player data for each player of each team associated with the video game play session and stored settings for the MOBA video game, the player data comprising metrics related to an attack metric, a defense metric, and a damage metric; responsive to determining to evaluate the video game play session content, analyzing in-game performance of each player of each team in the video game play session content based on a game map of the video game play session content and in-game metrics for each player of each team determined from the video game play session content, the in-game metrics comprising an in-game attack metric, an in-game defense metric, and an in-game damage metric; determining, based on the in-game performance of each player on each team, to recommend users to view the video game playing session content as non-participants; A system configured to run 12. The system of claim 11, wherein the stored player data comprises pre-game metrics for each player among a plurality of players in a first team and a second team.
13. To analyze the stored player data, the control circuitry further comprises:
13. The system of claim 12, configured to compare the pre-game metrics of each player in the first team with the pre-game metrics of each corresponding player in the second team, wherein comparing further comprises determining whether the pre-game metrics of each player in the first team are approximately equivalent to the pre-game metrics of each corresponding player in the second team.
14. The system of claim 13, wherein the control circuitry is further configured to determine to evaluate the video game play session content based on the comparison.
15. To analyze the in-game performance, the control circuitry further comprises:
12. The system of claim 11, configured to compare the in-game metrics of each player among a plurality of players in a first team with the in-game metrics of each corresponding player in a second team, wherein comparing further comprises determining whether the in-game metrics of each player in the first team are approximately equivalent to the in-game metrics of each corresponding player in the second team.
16. The system of claim 15, wherein the control circuitry is further configured to determine, based on the comparison, to recommend the video game play session.
17. The system described in claim 11, wherein the control circuitry is further configured to calculate the in-game metrics based on metadata associated with the video game play session content indicative of aspects of gameplay.
18. The system of claim 17, wherein the metadata comprises character metadata, item metadata, and overall ability metadata for the MOBA video game.
19. The system of claim 11, wherein the game map comprises a route of target and objective locations, different routes for reaching the targets and objectives, or a combination thereof.
20. The system of claim 11, wherein the setting for the MOBA video game comprises a battlefield including two separate teams, each of the teams including multiple players.