U.S. Pat. No. 12,083,440
Systems and Methods for Enabling Remote Viewers to Participate in a Multi-Player Video Game Play Session
AssigneeActivision Publishing, Inc.
Issue DateJune 5, 2023
Illustrative Figure
Abstract
The present specification describes systems and methods that enable non-players to participate as spectators in online video games and, through a collective voting mechanism, determine the occurrence of certain events or contents of the gameplay in real time. Game event options are generated and presented to non-players. A specific one of the game event options is then selected based on a collective vote of the non-players. Once selected, the specific one or more of the game event options are then generated as actual gaming events and incorporated into a video game stream that is transmitted to the players as part of the gameplay session. In this manner, non-players may be able to directly affect the course of gameplay.
Description
DETAILED DESCRIPTION The present specification describes systems and methods that enable non-players to participate as spectators in online video games and, through a collective voting mechanism, determine the occurrence of certain events or contents of the gameplay in real time. In one embodiment, the present systems and methods generate gaming events that are inserted into a video game stream, thereby directly effecting the events, actions, course, objects, resources, or other elements of a real-time gameplay session. Operationally, a plurality of game event options are generated by the present system and presented to a plurality of non-players. A specific one or more of the plurality of game event options is then selected based on a collective vote of the plurality of non-players. Once selected, the specific one or more of the plurality of game event options are then generated as actual gaming events and incorporated into a Video Game Stream (“VGS”) that is transmitted to the plurality of players as part of the gameplay session. In this manner, non-players may be able to directly affect the course of gameplay. In another embodiment, the present specification provides methods and systems to encourage more participation and response from non-players who attend live competitive video gaming events. The term “non-player” refers to any individual who is not actively playing in a gaming session and may include individuals who were formerly players or spectators who were never players in the gaming session, such as non-players who are attending a live gaming event in person or viewing the live gaming event remotely. The term “game event options” refers to programmatically generated events, actions, objects, or resources of a real-time gameplay session and may include any element that is experienced by a player of a gameplay session, such as, but not limited to, the type of weapon ...
DETAILED DESCRIPTION
The present specification describes systems and methods that enable non-players to participate as spectators in online video games and, through a collective voting mechanism, determine the occurrence of certain events or contents of the gameplay in real time. In one embodiment, the present systems and methods generate gaming events that are inserted into a video game stream, thereby directly effecting the events, actions, course, objects, resources, or other elements of a real-time gameplay session. Operationally, a plurality of game event options are generated by the present system and presented to a plurality of non-players. A specific one or more of the plurality of game event options is then selected based on a collective vote of the plurality of non-players. Once selected, the specific one or more of the plurality of game event options are then generated as actual gaming events and incorporated into a Video Game Stream (“VGS”) that is transmitted to the plurality of players as part of the gameplay session. In this manner, non-players may be able to directly affect the course of gameplay. In another embodiment, the present specification provides methods and systems to encourage more participation and response from non-players who attend live competitive video gaming events.
The term “non-player” refers to any individual who is not actively playing in a gaming session and may include individuals who were formerly players or spectators who were never players in the gaming session, such as non-players who are attending a live gaming event in person or viewing the live gaming event remotely. The term “game event options” refers to programmatically generated events, actions, objects, or resources of a real-time gameplay session and may include any element that is experienced by a player of a gameplay session, such as, but not limited to, the type of weapon that will appear next in a gameplay session, the occurrence of natural disasters or other “acts of God” (e.g., earthquakes, meteor showers, storms, rain, wind, fires, lightning, or other natural disasters), the occurrence of available items for purchase during a gameplay session, the timing and content of supplies and rewards, the placement or existence of armor, weapons, treasure, or other resources, the placement or existence of hazards, threats, or challenges, the placement or existence of random destructive events, whether any of the above are applied to, or made available to, specific players and changes in the layout of the game map. The term “elected game event” refers to those game event options that have been elected by a collective vote, decision, or selection by the non-players. The term “Video Game Stream” refers to a programmatically generated data stream that, when executed by a client device or end user device, generates a gameplay session.
While aspects of the invention may be described herein with reference to particular types of video game genres, the system and method described in detail herein may be used in any genre of a multiplayer video game, including where audience members choose to watch the multiplayer video game in person or via an online platform or where former players become spectators once they are out of the game and waiting for a current match to finish.
The present specification is directed towards multiple embodiments. The following disclosure is provided in order to enable a person having ordinary skill in the art to practice the invention. Language used in this specification should not be interpreted as a general disavowal of any one specific embodiment or used to limit the claims beyond the meaning of the terms used therein. The general principles defined herein may be applied to other embodiments and applications without departing from the spirit and scope of the invention. Also, the terminology and phraseology used is for the purpose of describing exemplary embodiments and should not be considered limiting. Thus, the present invention is to be accorded the widest scope encompassing numerous alternatives, modifications and equivalents consistent with the principles and features disclosed. For purpose of clarity, details relating to technical material that is known in the technical fields related to the invention have not been described in detail so as not to unnecessarily obscure the present invention.
In the description and claims of the application, each of the words “comprise” “include” and “have”, and forms thereof, are not necessarily limited to members in a list with which the words may be associated. It should be noted herein that any feature or component described in association with a specific embodiment may be used and implemented with any other embodiment unless clearly indicated otherwise.
As used herein, the indefinite articles “a” and “an” mean “at least one” or “one or more” unless the context clearly dictates otherwise. The disclosed inventions are directed to an improvement in computer-related technology, namely enabling non-players to affect the progress and occurrence of events in video gameplay sessions, thereby increasing non-player interest and viewing of a video gameplay session. In particular, Applicant's specification discloses specific teachings regarding how the claimed inventions enable integrating non-player involvement in a video gameplay session. Accordingly, Applicant's claimed inventions do not preempt all approaches to managing the relations between parties and, instead, are directed to an improvement in video gaming technology grounded firmly in a specific way of achieving the desired outcome of having non-players effect, in real-time, the progress and occurrence of events in video gameplay sessions.
To the extent the claimed inventions are still considered to be “abstract” in nature, it should be appreciated that each of the claim limitations, when viewed as an ordered combination, amount to significantly more than just an abstract idea or concept. The methods and systems of the present invention represent technical improvements to a form of computer technology, video games, by providing a specialized computer system configured to host a plurality of concurrently executing video game streaming applications (for example, anywhere from at least 20 video game streaming applications to at least 1,000,000 video game streaming applications or any increment therein), host a plurality of client devices associated with remotely located non-players (for example, anywhere from at least 10 client devices associated with non-players to at least 3,000,000 client devices associated with non-players or any increment therein), and perform a series of programmatic steps designed to generate electronic user interfaces that present a plurality of game event options, which are specific to the video game applications, receive inputs from the non-players indicative of a desire to include at least one of the plurality of game event options into the gameplay session, and incorporate the selected game event options into a data stream representative of the gameplay session.
Exemplary System Architecture
FIG.1illustrates an exemplary system100of generating and distributing video game streams, according to an implementation of the present specification. In one implementation, system100may include a computer system110, one or more databases130, one or more end user devices140in communication with the computer system110over a network102, and/or other components.
Computer System110
In one embodiment, computer system110may be configured as a server (e.g., having one or more server blades, processors, and other server components as are known to those of skill in the art), a gaming console, a handheld gaming device, a personal computer (e.g., a desktop computer, a laptop computer, and the like), a smartphone, a tablet computing device, and/or other device that is programmed to encode, decode, and/or distribute game streams as described herein.
Computer system110may include one or more processors112(also interchangeably referred to herein as processors112, processor(s)112, or processor112for convenience), one or more storage devices114(which may store a VGS application120), and/or other components. Processors112may be programmed by one or more computer program instructions. For example, processors112may be programmed by video game stream application120and/or other instructions. VGS application120may include various instructions that program computer system110. As described herein, VGS application120will be described as programming computer system110to perform various operations. However, it should be understood that a portion (or all) of VGS application120may, alternatively or additionally, program other system components (e.g., end user device140) to perform at least some of the functions of VGS application120.
End User Devices140
In one embodiment, end user device140may be configured as a gaming console, a handheld gaming device, a personal computer (e.g., a desktop computer, a laptop computer, and the like), a smartphone, a tablet computing device, and/or other device that can be programmed to present a video game to be played, view a video game replay, encode a game log, generate a metadata track, and/or perform other functions described herein. Although not illustrated inFIG.1, end user devices140may include one or more physical processors programmed by computer program instructions. For example, end user device140may be programmed by all or a portion of VGS application120.
Although illustrated inFIG.1as a single component, computer system110and end user device140may each include a plurality of individual components (e.g., computer devices) each programmed with at least some of the functions described herein. In this manner, some components of computer system110and/or end user device140may perform some functions while other components may perform other functions, as would be appreciated. The one or more processors112may each include one or more physical processors that are programmed by computer program instructions. The various instructions described herein are exemplary only. Other configurations and numbers of instructions may be used, so long as the processor(s)112are programmed to perform the functions described herein.
Furthermore, it should be appreciated that although the various instructions are illustrated inFIG.1as being co-located within a single processing unit, in implementations in which processor(s)112includes multiple processing units, one or more instructions may be executed remotely from the other instructions.
The description of the functionality provided by the different instructions described herein is for illustrative purposes, and is not intended to be limiting, as any of instructions may provide more or less functionality than is described. For example, one or more of the instructions may be eliminated, and some or all of its functionality may be provided by other ones of the instructions. As another example, processor(s)112may be programmed by one or more additional instructions that may perform some or all of the functionality attributed herein to one of the instructions.
The various instructions described herein may be stored in a storage device114, which may comprise random access memory (RAM), read only memory (ROM), and/or other memory. The storage device may store the computer program instructions (e.g., the aforementioned instructions) to be executed by processor112as well as data that may be manipulated by processor112. The storage device may comprise floppy disks, hard disks, optical disks, tapes, or other storage media for storing computer-executable instructions and/or data.
Databases130
The various databases130described herein may be, include, or interface to, for example, an Oracle™ relational database sold commercially by Oracle Corporation. Other databases, such as Informix™, DB2 (Database 2) or other data storage, including file-based, or query formats, platforms, or resources such as OLAP (On Line Analytical Processing), SQL (Structured Query Language), a SAN (storage area network), Microsoft Access™ or others may also be used, incorporated, or accessed. The database may comprise one or more such databases that reside in one or more physical devices and in one or more physical locations. The database may store a plurality of types of data and/or files and associated data or file descriptions, administrative information, or any other data.
The various components illustrated inFIG.1may be coupled to at least one other component via a network, which may include any one or more of, for instance, the Internet, an intranet, a PAN (Personal Area Network), a LAN (Local Area Network), a WAN (Wide Area Network), a SAN (Storage Area Network), a MAN (Metropolitan Area Network), a wireless network, a cellular communications network, a Public Switched Telephone Network, and/or other network. InFIG.1, as well as in other drawing figures, different numbers of entities than those depicted may be used. Furthermore, according to various implementations, the components described herein may be implemented in hardware and/or software that configure hardware.
VGS Application120
FIG.2depicts a block diagram of VGS application (shown as120inFIG.1), according to an implementation of the present specification. The instructions of VGS application120may include, without limitation, a VGS encoder222, elected game event data224, gameplay session data223, a VGS decoder226, a media converter230, an Application Programming Interface (“API”)232, and/or other instructions236that program computer system110to perform various operations, each of which are described in greater detail herein. As used herein, for convenience, the various instructions will be described as performing an operation, when, in fact, the various instructions program the processors112and therefore computer system110, both shown inFIG.1, to perform the operation.
In an implementation, VGS encoder222may obtain elected game event data224, as further described below, and integrate the elected game event data with gameplay session data223that is conventionally generated by the computer system110. VGS encoder222may assign an identifier to the obtained elected game event data and store the elected game event data and its corresponding identifier (as well as any video game information) in a VGS database, such as a database130. Elected game event data224may be persistently stored in the VGS database130for later search and retrieval. In this manner, elected game event data of interest may be searched for or otherwise obtained.
In an implementation, optional VGS decoder226may obtain a VGS and decode the VGS to provide the gameplay session with integrated elected game event data. VGS decoder226may include (or be part of) the game engine, in which case VGS decoder226may be specific for a particular game or set of games for which the game engine provides gameplay. In other instances, VGS decoder226may be generic to different types of game engines (and therefore different types of games), in which case VGS decoder226may identify an appropriate game engine to use to read the elected game event data and gameplay session data to provide the gameplay session. VGS decoder226may use the identifying information to identify an appropriate game engine to use.
Media converter230may generate the visual and auditory display of the gameplay session (e.g., using VGS decoder226) and then convert the playback to a conventional gaming media format. Such conversion may occur via server-based processing (e.g., on computer system110), distributed processing using end user devices140, cloud services processing (e.g., via cloud computer systems), and/or through other computer processing techniques.
In an implementation, API232may provide access to the elected game event data223to facilitate sharing of elected game events223. For instance, a user may, through end user device140, request to share an elected game event from a gameplay session being played or already played. API232may share the elected game event data223, in any format described herein, to social sharing networks (e.g., YouTube™, Facebook™, Instagram™ or any other social media network platform). Although described herein as relating to a video game session for convenience, the elected game event data223may relate to a continuous type of game (e.g., a virtual world simulation) that has no discrete ending. In these instances, the elected game event data223may refer to a segment of time during a portion of the continuous game, as well as specific events in the course of the game.
FIG.3depicts a process300of generating a video game stream, according to an implementation of the present specification. The various processing steps and/or data flows depicted inFIG.3(and in the other drawing figures) are described in greater detail herein. The described steps may be accomplished using some or all of the system components described in detail above and, in some implementations, various steps may be performed in different sequences and various steps may be omitted. Additional steps may be performed along with some or all of the steps shown in the depicted flow diagrams. One or more steps may be performed simultaneously. Accordingly, the steps as illustrated (and described in greater detail below) are exemplary by nature and, as such, should not be viewed as limiting.
Referring toFIG.3, in the first step302, process300includes obtaining elected game event data, the generation of which is described below. The elected game event data may be obtained from a game engine substantially in real-time as gameplay is occurring or the elected game event data may be pre-stored and introduced at some later point in time as gameplay is occurring. Process300may be performed by a game engine or a system component separate from the game engine, in which case the system component may obtain the elected game event data directly or indirectly from the game engine. The elected game event data may include or be associated with identifying information.
In the next step304, gameplay session data is obtained from the game engine and, in step306, an insertion point is identified in the gameplay session data, at which point the elected game event data is overlaid, inserted, or otherwise integrated with the conventionally generated gameplay session data. It should be appreciated that, alternatively, a game engine may generate gameplay session data with the elected game event data302already incorporated, integrated, or combined therein, thereby eliminating a separate integration step. Accordingly, the VGS, or portions thereof, is configured to obtain elected game event data302, as identified by an identifier, and overlay, insert, or otherwise integrate it with a secondary data stream (conventional gameplay session data) to generate a final video game stream that is communicated to client devices.
The next step308comprises generating a VGS of the complete gameplay session with both the gameplay session data and the elected game event data incorporated therein. Subsequently, at step310, the VGS is transmitted to end user devices via a network. The end user device may then process the VGS to generate the gameplay session in real-time.
Generating Elected Game Event Data Based on Non-Player Input
As discussed above, in several multiplayer games, non-players may participate in, and contribute towards, a gameplay session by voting on the occurrence of gameplay events, thereby generating elected game event data. For example, in an action or combat game where random weapons are generated from time to time, non-players may vote for the type of weapon that will appear next. Other examples of elements spectators could vote on include, but are not limited to, the occurrence of natural disasters or other “acts of God” (e.g., earthquakes, meteor showers, storms, rain, wind, fires, lightning, or other natural disasters), the occurrence of available items for purchase during a gameplay session, the timing and content of supplies and rewards, the placement or existence of armor, weapons, treasure, or other resources, the placement or existence of hazards, threats, or challenges, the placement or existence of random destructive events, whether any of the above are applied to, or made available to, specific players and changes in the layout of the game map—for example, in a large map, certain areas may be removed or closed to access such as by removing a bridge, locking a door, or placing an obstacle, such as fallen trees or a building, to block a path, among other options.
FIG.4is a block diagram illustrating the components of a non-player participation system400, according to an implementation of the present specification. Referring toFIG.4, in one embodiment, the system400comprises a Non-Player Input application401, which is in communication with a VGS application402(shown as120inFIG.1andFIG.2), such that the content selected by non-players, namely the elected game event data, may be incorporated into a video game stream (VGS). The instructions of Non-Player Input application401may include, without limitation, an audience monitoring engine403, a voting options generation module404, an iterative options generation module405and a user interface generation module406, and/or other instructions that program computer system (110ofFIG.1) to perform various operations, each of which are described in greater detail herein. As used herein, for convenience, the various instructions will be described as performing an operation, when, in fact, the various instructions program the processors112and therefore computer system110, both shown inFIG.1, to perform the operation.
Audience Monitoring Engine
Referring toFIG.4, the Non-Player Input application401comprises an audience monitoring engine403. The audience monitoring engine403is configured to monitor a number of on-line access streams, each of the on-line access streams being representative of a client device that is watching a gameplay session. In one embodiment, options to elect one or more game events during a gameplay session are triggered only when the number of non-players meets or exceeds a threshold number. In one embodiment, the number of non-players, represented by one or more data streams associated with unique or distinct MAC addresses, is monitored in real time, thereby allowing the system to determine if a threshold number of players is available. In an embodiment, the threshold number is at least one non-player.
In some embodiments, a threshold number of non-player votes may be different for different types or categories of game event options. In an embodiment, the game event options may be categorized based on the severity of their effect on the gameplay. For example, a game event option of selecting a weapon may require at least X % of votes from the non-players whereas a game event option of generating a natural disaster may require at least Y % of votes, wherein Y % is greater than X % since the natural disaster has a more severe impact on the gameplay compared to the weapon being incorporated into the gameplay. In some embodiments, the severity of the effect of an elected game event option, on a gameplay, may increase with increasing number of percentage of votes. For example, at least 75% votes may be needed to incorporate an earthquake in the gameplay, but the severity of the earthquake may scale up with the voting percentage such that a 99% vote may trigger a major earthquake in the gameplay. Stated differently, game event options have differing levels of severity and an engine, as further described below, may require game event options of higher levels of severity to have a higher threshold number of non-player votes as compared to game event options of lower levels of severity.
In one embodiment, the feature of selecting events based on non-player input is available to non-players watching a gameplay session remotely on their devices, as well as to a live audience watching a game at a competitive video gaming event or e-sports event.
FIG.5is a flowchart illustrating the operation of the audience monitoring engine. Referring toFIG.5, in conjunction withFIG.4, in the first step511the audience monitoring engine403determines on an on-going and real-time basis, using a first plurality of programmatic instructions, the number of non-player on-line access streams that are concurrently accessing a given gameplay session. The first plurality of programmatic instructions may also be configured to receive data indicative of the number of non-players watching the gameplay session in person, as opposed to via on-line access streams.
In the next step512, using a second plurality of programmatic instructions, the audience monitoring engine402time stamps the monitored number of on-line access streams and/or number of non-players watching the gameplay session in person (collectively, the monitored non-players). Next, in step513, the system transmits the time stamped monitored number of non-players to a database for storage. Next, in step514, using a third plurality of programmatic instructions, the audience monitoring engine403accesses the time stamped monitored number of non-players and applies one or more functions to determine if and when a sufficient number of non-players exists in order to trigger the non-player participation system400, as described below. In one embodiment, the one or more functions may include averaging the time stamped monitored number of non-players over a predefined period of time and, if the averaged time stamped monitored number of non-players is above a predefined number or threshold number, as shown in steps515and516, the audience monitoring engine403transmits an activation signal to the voting options generation module404, described below. If the averaged time stamped monitored number of non-player is not above a predefined number, the audience monitoring engine403does not transmit an activation signal to the voting options generation module and, instead, continues monitoring the number of non-players. Accordingly, non-player inputs selectable by means of votes are available only when there are sufficient or threshold numbers of non-players watching the gameplay session. In an embodiment, the threshold number is at least one non-player.
Voting Options Generation Module
Referring back toFIG.4, once the audience monitoring engine403recognizes that a sufficient or threshold number of non-players are available as described above, the voting options generation module404in the Non-Player Input application401determines a plurality of game event options related to future events of gameplay that are to be presented to the non-players for voting. In some embodiments, the game event options are related to dynamic events, depending upon a state and/or course of gameplay, in addition to future events of gameplay. Accordingly, different instances of the same point in the same level of a game may lead to different game event options based upon the historical success of one or more players, the experience level of one or more players, the average experience level of all players, the health level of one or more players, the average health level of all players, the weapons possessed by one or more players, the number of kills of one or more players, the average number of kills of all players, or any other metric taken individually, collectively, or some other function thereof.
In one embodiment, non-players may vote to assist or hinder one, some, or all the players playing in an ongoing gameplay session. Their vote may be used to change the status of or affect the health, damage, speed, armor, weapons, skills, items, spells, and other items or attributes available to one or more players. It may be noted however, that such events that can be decided by the non-players' votes are generated by the voting options generation module404such that these events have the potential to affect all players equally and keep the gameplay session fair. That is, the generation of these game event options is preferably designed such that a true randomized, non-biased and neutral gaming environment is achieved. The occurrence of events and the gaming environment is designed with boundaries such that extremes of disincentives and excess incentives are avoided.
In one embodiment, the voting options generation module404uses a plurality of instructions to execute multiple methods by which game event options will be drawn, preferably randomly, during a gameplay session. In one embodiment, pseudo random number generators (PRNGs) are executed to draw game event options. Non-limiting examples of PRNGs comprise Linear Congruential Generator, Middle Square Weyl Sequence PRNG, and Mersenne Twister based PRNG. According to one aspect of the present system for example, the voting options generation module404may use a plurality of instructions to draw events from multiple groups, with each group having a fixed probability of being selected. According to another aspect, the voting options generation module404may use a plurality of instructions to select an event group via a “counter value” method, wherein the maximum number of draws allowed is set before a given group of events is chosen. The probability of generating an event from the group in a smaller number of draws than the maximum is set to be independent of the draw number. In an embodiment of the counter value method for example, the voting options generation module404uses a mathematical formula to ensure that each event has an equal chance of being selected to be put up for voting. In another embodiment, the voting options generation module404initializes the draw numbers for events such that unusually poor events are not successively generated in a game. Thus, the voting options generation module404ensures that the timing and delivery of an event for selection by vote is done in a manner that takes fairness and randomness into account.
In one embodiment, randomness and fairness in the game is ensured by the type of events that are generated by the voting options generation module404and presented as options to the non-players for voting. For example, events such as natural disasters or “acts of God” have the potential to affect the playing field equally, and therefore affect all players. Other examples of events that affect competing players equally include allowing a particular weapon to be available for a certain amount of time at a particular location, so that all players have an equal chance of trying to obtain it; providing a health and energy boost to each team's weakest member, or closing a common area on the game map, so that both the teams have to adopt a different route and/or strategy. In one embodiment, competing players are provided with notice of a forthcoming elected game event after the non-players' votes have been tallied, to allow them time to prepare for the elected game event. For example, if the non-players vote for a natural disaster, such as an earthquake, the players may receive a notification that an earthquake will strike within 2 minutes or some other time frame.
One of ordinary skill in the art would appreciate that although the plurality of game events options presented for voting are selected in a random but equitable manner, the vote of the non-players may be configured to specifically help or hurt one set of players. For example, non-players may give the losing team members a boost by choosing to provide them a weapon whose owner is decided by voting, or the non-players may vote to disable one of the winning team's special powers or other attributes. Thus, the non-players may be allowed to affect gameplay by affecting the game balance or by introducing random, unpredictable scenarios.
In some embodiments, the voting options generation module404segments non-players into, at least, a first group that is provided access to a first set of game event options and into a second group that is provided access to a second set of game event options, where the first set of game event options is greater than the second set of game event options and where the segmentation is based upon attributes, achievements, profile elements, or other characteristics of the non-players themselves. In an embodiment, the voting options generation module404determines if a non-player meets a threshold number of conditions out of a plurality of predefined conditions such as, but not limited to, the number of hours of a game played, whether the non-player is a live audience member or viewing the game remotely, the non-player's experience gained in a particular game, the non-player's level achieved in a game, the non-player's ranking in a game, the number of times the non-player attended a live event, the number of times the non-player attended a specific e-sports arena, and the number of times the non-player attended an event featuring a particular team.
If the threshold number of conditions are met then the voting options generation module404presents a higher number of game event options to the non-player, as a reward, in comparison to other non-players who do not meet the threshold number of conditions. Alternatively or additionally, if a certain type of condition is met by a non-player, the voting options generation module404presents a specific game event option and/or a higher number of game event options to that non-player in comparison to other non-players who do not meet satisfy the certain type of condition. For example, if a non-player A attends an e-sports event as a live audience member (certain type of condition), then the non-player A is presented with more number of game event options to vote for as compared to another non-player B who may be viewing the game remotely and not physically present at the e-sports event.
In some implementations, the plurality of game event options are presented to the non-players for voting only after the non-players overcome at least one challenge. In embodiments, the voting options generation module404implements a plurality of instructions to generate and present at least one challenge to the non-players which needs to be accomplished before the plurality of game event options are presented to the non-players for voting. In some embodiments, the at least one challenge may be in the form of an interactive mini-game (for example, a short duration game) wherein the outcome of the non-players playing the mini-game impacts which non-player will be presented with game event options for voting and/or other rewards. As illustrative non-limiting examples, a) non-players who complete the mini game or achieve a certain score or objective unlock an ability to vote on presented game event options, b) which ever fan group receives the highest score in the mini-game, has the largest number of fans completing an objective in the mini-game or a combination of the two unlocks a benefit for their team, c) non-players who complete an objective in the mini-game are entered into a random draw (apart from unlocking the ability to vote on the presented game event options) and at least one winner gets to directly interact into the live game, and d) non-players who complete an objective in the mini-game are entered into a random drawing (apart from unlocking the ability to vote on the presented game event options) and at least one winner who achieves a score above a threshold score, for example, gets a chance to play in a get-together, such as a party, with their favorite streamer or player.
Iterative Options Generation Module
The Non-Player Input application401further comprises an iterative game event options generation module405which uses a plurality of instructions to iteratively generate new options for game events that can be selected by non-player vote. In one embodiment, the new options generated by the iterative options generation module405depend on at least one of a plurality of factors such as, but not limited to, the course of the game, namely how the gameplay progresses, the historical options presented to and/or selected by the non-players, number of players or teams that have been eliminated, how far the game has progressed, time left in game, player proximity to each other (e.g., too many players in a boring zone). In one embodiment, the new options are generated by the iterative options generation module405in real-time, as the game is played. For example, if one or more of previous events selected by vote have caused one of the playing teams to considerably enhance their strength, the iterative options generation module405may execute a plurality of instructions to generate new options which provide the users a chance to vote for an event that enhances the strength of the lagging team. As another example, if an event causes “heavy rain” in the game, subsequent options generated by the iterative options generation module405may allow the users to select “flooding” of one or more areas on the game map, thereby making it inaccessible to all players of the game. Thus, the iterative options generation module405provides voting options in line with prior events and the course of the game. In one embodiment, the iterative options generation module405determines a plurality of additional game event options based on inferred non-player interest. Thus, for example, if a majority of non-players appear to prefer a particular maneuver in a combat based game, as inferred from non-player votes and other data, the iterative options generation module405may generate similar maneuvers as one of the plurality of game event options to the non-players in future.
User Interface Generator
After determining the options for gameplay events on which non-players can vote, the user interface generator module406in the Non-Player Input application401uses a plurality of instructions to generate a user interface in the client device of non-players that presents the plurality of game event options to the non-players and allows them to select one of the plurality of game event options at various points in time during the gameplay using their devices.
In an embodiment, the Non-Player Input application401communicates with the VGS application402to generate a user interface with voting options on the client devices, in accordance with the instructions executed by the user interface generator module406. In an embodiment, the user interface is generated at the end user device(s) by the VGS decoder (referred as226inFIG.2). The user interface thus generated by the VGS decoder may be overlaid on the gameplay session, for the non-players, and may include hotspots or other interactive elements configured to receive user inputs. Operationally, the VGS decoder226causes a user interface with selectable inputs to be provided at the client device, in accordance with the plurality of instructions executed by the voting options generation module404and the user interface generator module406, that allow a user to specify which of the plurality of game event options should be integrated into the gameplay session. In a voting system, the choices of all the non-players are communicated through the user interface to the game engine, and the votes are tallied to determine which of the plurality of game event options will constitute an elected game event and, therefore, be used in the gameplay session.
The elected game event module408is configured to receive, from non-players client devices, data indicative of which of the plurality of game event options has been selected by the non-players. The elected game event module408is preferably in communication with one or more databases to store the number, timing, and association of each vote with specific non-players relative to each of the plurality of game event options. The elected game event module408further determines which of the plurality of game event options receives enough votes to warrant being incorporated into a gameplay session and, therefore, constitute an elected game event. The determination of which of the plurality of game event options receives enough votes to warrant being incorporated into a gameplay session is achieved by comparing the number of votes to one or more threshold values.
It should be appreciated that a non-player may be exercising multiples votes at the same time, either in a particular match or across multiple matches in an arena. For example if there are two matches happening simultaneously in the arena, a non-player or spectator may be able to vote on both of those matches. In some embodiments, voting is limited depending upon the proximity of the spectator. For example, if a non-player is seated in an area designated as spectating for a particular match, then he can only vote on that match. In some embodiments, certain events can only be voted on by those non-players who are live audience members, or by those in certain designated seats or physical proximity. In some embodiments, certain events can only be voted by those non-players who are watching virtually or remotely while certain events can be voted on by any spectator live or remote. The restriction regarding who may vote may be effectuated by the voting options generation module or by a filter in the user interface generator.
Using the VGS Application for Incorporating Selected Events into the Video Game Stream
In an embodiment, the Non-Player Input application401communicates with the VGS application402to generate a user interface with voting options on non-player client devices. Referring toFIG.4in conjunction withFIG.2, while the VGS decoder (referred as226inFIG.2) in the VGS application causes a user interface with selectable inputs to be provided at the client device, the VGS encoder (referred as222inFIG.2) is configured to accept user-provided content from the end user device(s). In one embodiment, VGS encoder222may include an input interface configured to receive voting inputs from non-player end user devices. In one embodiment, the VGS application402includes a communication module, which is configured to obtain voting inputs and/or action requests from the non-players, via the user interface, and transmit it to the VGS encoder for implementation.
FIG.6is a flowchart summarizing an exemplary method of incorporating non-player inputs into gameplay, using the non-player participation system ofFIG.4. Referring toFIG.6in conjunction withFIG.4, in the first step601, the audience monitoring engine403of the Non-Player Input application401determines if and when a sufficient threshold audience exists in order to make the voting system available. That is, non-player inputs selectable by means of votes are available only when there are sufficient or threshold numbers of non-player watching the gameplay. For this purpose, in one embodiment, the number of non-player is monitored in real time. In the next step602, after it is determined that a sufficient audience exists, the voting options generation module404of the Non-Player Input application401determines the plurality of game event options that are to be presented as voting options to the non-players. In the next step603, the user interface generator406causes a user interface associated with the voting options to be generated on the end-user client devices, by means of the VGS from the VGS application402. The user interface puts forward various selectable options to the non-players and allows them to select one of the multiple options at various points in time during the gameplay. In the next step604, the game events corresponding to the options selected by majority vote of the non-players is incorporated into the video game stream (VGS) at the appropriate time, which is enabled by the VGS application, as described above. In one embodiment, the system iteratively generates new options for game events that can be selected by non-player votes depending on the course of the game, as the game is played, and the historical options presented and/or selected, as shown in step605.
Participation of Live and Remote Audiences During a Competitive Gaming Event
In yet another embodiment, the present specification describes a system and method for encouraging participation of viewers in a live video gaming event and actively engaging both live and remote audiences of such events.
In an implementation, the present system allows for the “crowd advantage” that is commonly seen in live sports events, to be simulated in the user devices of non-players who are viewing a live gameplay session remotely. In an instance, a live crowd response at an e-sports event may be used to create an in-game effect for the users viewing the game remotely. This effect may include cheering and/or clapping from the audience, which is heard on end user devices as well. In one embodiment, to simulate the effect of crowd advantage, virtual effects are introduced that may work to the advantage or disadvantage of a competing player or team. For example, when the decibel level of home crowd in a live e-sport event reaches a certain threshold, as determined by a sound monitor in data communication with the Non-Player Input application401, an effect may be introduced against the visiting team—such as lowering the headphone volume of the visiting team, or introducing static in their headphones to further disrupt communication. This provides an incentive for the spectators to participate in live e-sports events by making such an event more engaging for them and motivating them to watch the event live to support their team. In one embodiment, crowds in such live e-sports events may be seated in different sections based on their interest in the team they would like to support, with sound monitors customized to process sound data from a particular section as being indicative of support for, or rooting against, a particular team or player. One of ordinary skill in the art would appreciate that the present system does not just allow in game effects for a home crowd, but accounts for audience response seated in the visiting sections as well.
In an implementation, as a variation of the above instance, the present system allows remote viewers to specify using their devices, which team they are supporting. In one embodiment, the team with more fans watching may receive an advantage in the match. For example, the elected game events module408may be configured to receive data indicative of which player or team has more supporters. Such data may be in the form of directs votes, cheering sounds, booing sounds, or other communications indicative of either support of, or opposition to, a particular player or team. Once the elected game events module408receives such data, it automatically selects one or more game events to be incorporated into the VGS. Such automatically elected game events may include 1) dimming the visual experience of gameplay for a team or player having fewer supporters or having more opposition among the non-players, 2) lowering the headphone or auditory volume of gameplay for a team or player having fewer supporters or having more opposition among the non-players, 3) adding static to the visual or auditory experience for the gameplay of a team or player having fewer supporters or having more opposition among the non-players, or 4) creating momentary “blackouts” of the visual or auditory experience of the gameplay for a team or player having fewer supporters or having more opposition among the non-players.
In an implementation, as another variation of the above instance, the present system accounts for and incentivizes live audiences for various audio levels and characteristics of crowd cheering, chanting or singing that add to the communal experience and entertainment value. For example, when the decibel level of a home crowd in a live e-sport event reaches a certain threshold, as determined by a sound monitor in data communication with the Non-Player Input application401, certain predetermined in-game digital items may be unlocked for the fans and/or the crowd may get entitled for other forms of reward such as, but not limited to, discount coupons, favorite team based accessories, and autographed items. In various embodiments, the sound monitor in data communication with the Non-Player Input application401may additionally be configured to recognize a plurality of characteristics of the crowd audio such as, but not limited to, a degree of unison in which the live audiences may be singing, chanting (similar to European style football or terrace chants), presence of specific words in an order and/or above a threshold decibel level and similarity to one of a plurality of hymns, popular music, folk songs, specific songs, advertising jingles, nursery rhymes and theme tunes. It should be appreciated that rewards may be distributed using a digital distribution system, such as by automatically allocating a reward to the game account of a non-player, or using a physical distribution system.
In some embodiments, the audience monitoring engine403(FIG.4) executes a plurality of instructions to implement a system to weigh votes of the non-players. Votes of a non-payer may be weighed based on at least one of a plurality of criteria or characteristics associated with the non-player such as, but not limited to, the number of hours for which the non-player has played a game, the non-player's experience gained in a particular game, the non-player's level achieved in a game, the non-player's ranking in a game, number of times the non-player attended a live event, number of times the non-player attended a specific e-sports arena, and the number of times the non-player attended an event featuring a particular team. In some embodiments, non-players can accrue or lose points that are then translated as appropriate weights and applied to their votes. For example, non-players can accrue points by performing certain activities such as, but not limited to, attending, watching or spectating matches wherein attending a match as live audiences may accrue more points as compared to attending a match remotely, playing the game or completing a plurality of in-game objectives.
In one embodiment, non-player inputs obtained from the audience watching a match live may be used to select the view of the gameplay being streamed or broadcast. A VGS may comprise multiple camera angles or perspectives of a gameplay session. In one embodiment, non-players may be allowed to select one of several different views of the gameplay session, including an aerial view, a first-person-view of a particular player in a multi-player game, or a side perspective view of the gameplay session. In one embodiment, the collective choice of the audience, as represented by majority non-players votes, may be used as a basis for selecting a particular viewpoint to be displayed on an e-sports broadcast or live stream of the gameplay session. In one embodiment, the non-players who are able to vote include the live audience—who may vote using an app or a user device, as well as remote audience who may vote using the device they are viewing the gameplay session on. In some embodiments, this feature is only available to a live audience, in order to encourage live participation in the gaming events. It may be appreciated that a VGS may comprise a plurality of different tracks, thereby enabling non-players to choose which track to use, effectively enabling non-players to toggle between different views.
In one embodiment, members of the audience may be selected to participate in an ongoing game. For example, in a combat or fight based game, a member of the audience or a fan may be invited for operating a gun turret or a tower in the ongoing game or match. The member may be chosen in a variety of ways, including, but not limited to random selection using a draw of lots, winning a contest held prior to the event or during the e-sports event, paying for the opportunity, making in-game purchases while playing the game online, playing in specific online tournaments, watching advertisements while playing the game online or watching advertisements during the event, among other options. It may be appreciated that this feature of selecting an audience to participate in an ongoing game may be applied to viewers watching the video gaming event live or remotely. In some embodiments, this feature is only available to a live audience, in order to encourage live participation in the gaming events.
In another embodiment, viewers watching an e-sports event live may be rewarded with prizes, rewards or entitlements based on the outcome of the gaming event. For example, user A, who plays a video game and is also a fan of Team X in the game, designates Team X as his favorite team in a live match that he or she watches at an event. If Team X wins, user A is given an in-game reward or entitlement, such as bonus points or levels, tools or weapons that can be used while playing the game, a rare set of in-game supplies or a discount on a game, in-game digital item or a physical item. In embodiments, the discount may or may not have a time limit on them. For example, a coupon or code/token may represent a discount for a limited (or unlimited period of time. It may be appreciated that the outcomes which generate rewards for viewers are not limited to just their favorite team winning, but may include any other events or outcomes in the game that may be deemed fit to encourage user engagement. Examples of such outcomes include the favorite player of a viewer getting the ‘most favorable player’ award, a team picked by the non-player winning the match, or a score exceeding a certain threshold, among other scenarios.
In one embodiment, the appropriate outcome-based reward is given to a non-player on confirming his or her presence as a live audience member, such as by producing a ticket he or she bought or by confirming a geographical location tag (geotagging). Such location may be based on Internet Protocol address information, network connection information (e.g., network devices used to connect the user to the Internet), Global Positioning System data, or other location information based on a location device or receiver.
In one embodiment, a plurality of conditions may be applicable to trigger an outcome-based reward for a non-player. In other words, if an attendee is a) physically present in an e-sports arena b) possesses a physical object and c) a specific match outcome occurs then a reward is triggered for the non-player. For example, a non-player a) attends an e-sports event (as a live audience), b) buys a team souvenir at the event and c) his team wins the match then the non-player gets a reward in the game.
The above examples are merely illustrative of the many applications of the system and method of present specification. Although only a few embodiments of the present specification have been described herein, it should be understood that the present specification might be embodied in many other specific forms without departing from the spirit or scope of the specification. Therefore, the present examples and embodiments are to be considered as illustrative and not restrictive, and the specification may be modified within the scope of the appended claims.
Claims
- A method for enabling two or more non-players to participate in a multi-player gameplay session, wherein the multi-player gameplay session is at least partially generated by a computer system and at least partially transmitted to a plurality of end user devices and wherein the computer system includes one or more processors executing a video game streaming application for generating and streaming the multi-player gameplay session, the method comprising: providing the two or more non-players viewing access to the multi-player gameplay session;causing an interface to be provided to each of the two or more non-players, wherein the interface is configured to present one or more options to the two or more non-players;receiving inputs, via the interface, from the two or more non-players;based on the received inputs, determining a view of the multi-player gameplay session;and transmitting said determined view of the multi-player gameplay session.
- The method of claim 1, wherein the one or more options represent a plurality of different views of the multi-player gameplay session.
- The method of claim 2, wherein the plurality of different views comprise an aerial view, a first-person view of a particular player in the multi-player gameplay session, and a side perspective view of the multi-player gameplay session.
- The method of claim 1, wherein the determined view is at least one of an aerial view, a first-person view of a particular player in the multi-player gameplay session, or a side perspective view of the multi-player gameplay session.
- The method of claim 1, wherein the received inputs are weighted based on one or more characteristics of each of the two or more non-players.
- The method of claim 5, wherein the one or more characteristics comprise at least one of a number of hours for which the two or more non-players has played a game, an amount of the two or more non-players' experience, the two or more non-player's achievement level, the two or more non-player's ranking, a number of times the two or more non-players attended a live event, a number of times the two or more non-players attended a specific e-sports arena, or a number of times the two or more non-players attended an event featuring a particular team.
- The method of claim 1, further comprising determining a location of each of the two or more non-players.
- The method of claim 7, further comprising using at least one of an Internet Protocol address, network connection information, or global positioning data to determine said location of each of the two or more non-players.
- The method of claim 7, further comprising generating a reward for at least one of the two or more non-players based at least in part on said location.
- A system for enabling two or more non-players to participate in a multi-player gameplay session, wherein the system comprises a computer system for at least partially generating the multi-player gameplay session and transmitting it to a plurality of end user devices and wherein the computer system includes one or more processors executing a video game streaming application for generating and streaming the multi-player gameplay session, the computer system comprising a computing device programmed to execute a plurality of programmatic instructions that, when executed: provides the two or more non-players viewing access to the multi-player gameplay session;causes an interface to be provided to each of the two or more non-players, wherein the interface is configured to present one or more options to the two or more non-players;receives inputs, via the interface, from the two or more non-players;based on the received inputs, determines a view of the multi-player gameplay session;and transmits said determined view of the multi-player gameplay session.
- The system of claim 10, wherein the one or more options represent a plurality of different views of the multi-player gameplay session.
- The system of claim 11, wherein the plurality of different views comprise an aerial view, a first-person view of a particular player in the multi-player gameplay session, and a side perspective view of the multi-player gameplay session.
- The system of claim 10, wherein the determined view is at least one of an aerial view, a first-person view of a particular player in the multi-player gameplay session, or a side perspective view of the multi-player gameplay session.
- The system of claim 10, wherein the received inputs are weighted based on one or more characteristics of each of the two or more non-players.
- The system of claim 14, wherein the one or more characteristics comprise at least one of a number of hours for which the two or more non-players has played a game, an amount of the two or more non-players' experience, the two or more non-player's achievement level, the two or more non-player's ranking, a number of times the two or more non-players attended a live event, a number of times the two or more non-players attended a specific e-sports arena, or a number of times the two or more non-players attended an event featuring a particular team.
- The system of claim 10, wherein the computing device is further programmed to execute a plurality of programmatic instructions that, when executed, determine a location of each of the two or more non-players.
- The system of claim 16, wherein the computing device is further programmed to execute a plurality of programmatic instructions that, when executed, use at least one of an Internet Protocol address, network connection information, or global positioning data to determine said location of each of the two or more non-players.
- The system of claim 16, wherein the computing device is further programmed to execute a plurality of programmatic instructions that, when executed, generate a reward for at least one of the two or more non-players based at least in part on said location.
- A computer readable non-transitory medium comprising a plurality of executable programmatic instructions wherein, when said plurality of executable programmatic instructions are executed by a processor in a computing device, a process for enabling two or more non-players to participate in a multi-player gameplay session is executed, wherein the multi-player gameplay session is at least partially generated by the computing device and at least partially transmitted to a plurality of end user devices and wherein said plurality of executable programmatic instructions are executed by the processor to execute a video game streaming application for generating and streaming the multi-player gameplay session, the plurality of executable programmatic instructions comprising: programmatic instructions, stored in the computer readable non-transitory medium, for providing the two or more non-players viewing access to the multi-player gameplay session;programmatic instructions, stored in the computer readable non-transitory medium, for causing an interface to be provided to each of the two or more non-players, wherein the interface is configured to present one or more options to the two or more non-players;programmatic instructions, stored in the computer readable non-transitory medium, for receiving inputs, via the interface, from the two or more non-players;programmatic instructions, stored in the computer readable non-transitory medium, for determining, based on the received inputs, a view of the multi-player gameplay session;and programmatic instructions, stored in the computer readable non-transitory medium, for transmitting said determined view of the multi-player gameplay session.
- The computer readable non-transitory medium of claim 19, wherein the one or more options represent a plurality of different views of the multi-player gameplay session.
Disclaimer: Data collected from the USPTO and may be malformed, incomplete, and/or otherwise inaccurate.