Portions of the material in this patent document are subject to copyright protection under the copyright laws of the United States and of other countries. The owner of the copyright rights has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the United States Patent and Trademark Office publicly available file or records, but otherwise reserves all copyright rights whatsoever. The copyright owner does not hereby waive any of its rights to have this patent document maintained in secrecy, including without limitation its rights pursuant to 37 C.F.R. § 1.14.
There exists many types of interactive games and game formats, along with specialized systems to conduct those games between players. With the popularity of mobile devices, the use of interactive mobile games have risen dramatically. Generally, such games are limited to a fixed number of players, such as by the player selecting a number of friends or a game system matching a fixed number players to each other.
New types of games, game formats and related technology are needed to increase player interest and to provide compelling content. It is appreciated that in multiplayer environments, performance is an issue and most games suffer from scalability issues which degrade performance. It is appreciated that many game formats are limited to the number of players that can simultaneously play such games. It would be advantageous to provide a game format that scaled to thousands, and even hundreds of thousands of participants that can play against each other in a single game instance in real time. In one such game format, interactive game elements are provided to a mobile device and are activated for a certain period of time. Participants provide responses to the these elements, and aggregated feedback is provided to the entire population of game players in real time.
In one such game format, a live format interface is provided within the interface of a mobile device, and interactive game elements are provided in parallel to the multiple mobile devices and displayed on the mobile device displays (either alone or in combination with the live format window). The game itself may include interactive questions or other types of games where individual players provide responses within a prescribed time period. According to one aspect, the nature of the prescribed time period is such that a player will not be permitted to research an answer to the question from outside sources. The prescribed time period may be tracked at a central location, and responses from clients received within the prescribed time period may be evaluated. Responses received outside of the time period may cause the player to be eliminated. Further, incorrect responses may be eliminated, and information indicating the people who proceed to the next round (e.g., in an aggregated format derived from all of the mobile devices participating in the game) may be displayed to all of the participating users. Eliminated users may be permitted to continue observing the game until the game concludes.
The questions may be provided serially to the population of players in successive rounds until a final round where one or more winners are determined. Winners may be provided a prize (e.g., money) that may be split among the one or more winners. Games may be provided at preset times and/or limited number of times, increasing the number of aggregated players. In an optional game format, players are permitted additional guesses within the game responsive to referrals of the game to other potential players. For instance, responsive to selecting a control to invite another player, and that player joining responsive to that invitation, the player that provided the invite may be permitted to survive one or more rounds.
In one particular game format, the game may be presented in a game show format, including an announcer. In this format, a live video feed is transmitted in parallel in real time to the multiple mobile devices. Interactive game elements are transmitted also in real time to the multiple mobile devices. Such interactive game elements may be displayed along with the live video feed within the interface of each of the mobile devices. Sets of interactive game elements may be displayed in predefined sequences during a live broadcast of the interactive program (e.g., a game show or other type of game). As discussed above, multiple choice questions may be presented within a number of rounds, and players may be successively eliminated. Other types of game formats may be provided. In general, an architecture is provided for conducting a massive multilevel elimination game.
According to other aspects, a real-time system may be provided that is capable of scaling to hundreds of thousands of real-time clients (or more) to conduct a single-game instance in an interactive manner that combines video elements with interactive game elements. To provide such capabilities, a system and client software is provided that allows real-time distribution of video, and scripted rendering of interactive elements in relation to the video. Such systems may include, for example, cluster-based systems that are capable of scaling horizontally based on the number of clients involved in a particular game instance.
In a specific implementation of a client user interface, a component is provided that collects and aggregates multiple responses received from the multitude of client devices and provides results that are displayed to each of the client devices in real time. For instance, there may be real-time counter elements that are displayed to the user that record the number of responses, and the results are determined through the aggregated responses.
According to another aspect, a multi-round elimination trivia game is provided that permits a cash prize to be distributed to users within the game application upon conclusion of the game. This cash prize may be split among users, and the proceeds may be automatically transferred to an account of the user's choosing. The account may be, for example, a PayPal account or other type of immediate payment transfer system.
According to another aspect, an architecture is provided that provides a real-time video stream along with asynchronous messages that control the game application. In one implementation, mobile devices operated by users subscribe to a game instance, and thereafter listen for messages that include trigger events that deliver updated content. Such content may include, for example, new interactive elements, controls that provide certain functionality within the interactive game, game results, among other elements. Such elements are transmitted in parallel with video stream data that is displayed concurrently within the interfaces of the mobile devices.
According to some aspects, a game interface of a mobile device is provided comprising a first display area adapted to display real-time video associated with a single game instance of an interactive game, a second display area adapted to display an interactive element associated with the single game instance, the interactive element, when selected within a predetermined time limit, causes the mobile device to transmit a response to a game engine executing the single game instance of the interactive game, and a display area including at least one indicator that shows, in real time, aggregated responses of multiple game players participating in the single game instance of the interactive game, the aggregated responses including the transmitted response.
According to some embodiments, the first and second display areas are displayed concurrently within a single game interface. According to some embodiments, the second display area is adapted to display a plurality of interactive elements in multiple rounds, the plurality of rounds being associated with the single game instance. According to some embodiments, the game interface further comprises a display area including an indicator that identifies a counter of multiple game players participating in the single game instance of the interactive game.
According to some embodiments, the game interface further comprises a scrollable chat window, the window including a control that permits a player to post a chat to a chat log, the chat log being associated with the single game instance of the interactive game. According to some embodiments, the scrollable chat window is associated with a sequence of interfaces associated with the single game instance of the interactive game. According to some embodiments, the scrollable chat window is displayed within a layer in relation to at least one of the first and second display areas.
According to some embodiments, the game interface further comprises a display area including at least one indicator that shows, in real time, a graphical representation of the aggregated responses of the multiple game players participating in the single game instance of the interactive game. According to some embodiments, real-time video associated with a single game instance of an interactive game includes live video captured and streamed in real time. According to some embodiments, the live video includes a presentation of a live game including a game host.
According to some embodiments, if it is determined that a player using the game interface is eliminated in any of the plurality of rounds associated with the single game instance, the game interface is adapted to permit the player to observe remaining rounds associated with the single game instance. According to some embodiments, the live video is presented among at least one interface of each round of a plurality of rounds associated with the single game instance.
According to some embodiments, the game interface further comprises an interface area having an indicator that indicates a countdown of time before conducting a first round of a plurality of rounds associated with the single game instance. According to some embodiments, the game interface further comprises an interface indicating, after the plurality of rounds associated with the single game instance are complete, at least one winning player.
According to some embodiments, the second display area adapted to display a counter that indicates to a player, a remaining time permitted for the player to activate the interactive element associated with the single game instance. According to some embodiments, the interactive element associated with the single game instance is received by multiple mobile devices in real time and displayed to multiple players that play the single interactive game instance. According to some embodiments, a number of mobile devices receiving the interactive element associated with the single game instance in real time exceeds 100,000 mobile devices. According to some embodiments, the number of mobile devices receiving the interactive element associated with the single game instance in real time exceeds 1,000,000 mobile devices. According to some embodiments, the chat log is published to a subscriber user of the chat log using a pubsub-type service.
According to some embodiments, the display area including the at least one indicator that shows, in real time, the graphical representation of the aggregated responses of the multiple game players is displayed sequentially after an expiration of the predetermined time limit. According to some embodiments, the mobile device associated with the single game instance is adapted to receive a plurality of issued events from a multiplayer game server, the events causing interactive content to be displayed in real time within the game interface, wherein the interactive content comprises a plurality of game tasks arranged in successive levels within the single game instance, and wherein the multiplayer game server is configured to eliminate a trigger of interactive content associated with the single game instance on the mobile device client responsive to a determination that a player associated with the mobile device is eliminated from the single game instance. According to some embodiments, the interactive content component permits the eliminated player to observe a remaining portion of the single game instance.
According to some embodiments, the mobile device is adapted to receive a video stream comprising live video from a video cluster component, wherein the game interface is adapted to display the video stream within the first display area, and wherein the video cluster component comprises a plurality of edge server components that replicates the video stream to a plurality of connected mobile devices including the mobile device. According to some embodiments, wherein the mobile device is adapted to selectively connect to at least one of the plurality of edge server components to receive the video stream comprising the live video. According to some embodiments, the at least one of the plurality of mobile device clients is adapted to select the at least one of the plurality of edge server components responsive to a network test operation. According to some embodiments, the mobile device is adapted to switch, in real-time, connection between the plurality of edge server components responsive to the network test operation.
According to some embodiments, the multiplayer game server eliminates the player upon a determination that the player did not select a response within the predetermined time limit within the game interface. According to some embodiments, the multiplayer game server eliminates the player upon a determination that the player did not select a correct response to the interactive content within the game interface. According to some embodiments, the mobile device is permitted to receive content associated with a remaining portion of the single game instance and display the received content within the game interface, wherein the eliminated player is prohibited from selecting any of the interactive content associated with the remaining portion of the single game instance. According to some embodiments, the mobile device is configured to receive, from the multiplayer game server adapted to conduct the single game instance, a push notification from the multiplayer game server indicating that a new game instance is being conducted, the push notification being sent responsive to a determination that the mobile device had previously participated in a previous game instance.
According to various aspects, a multiplayer game server is provided that is capable of distributing live video and interactive data to mobile clients for a singular game instance. In some aspects, a system is provided comprising a multiplayer game server adapted to conduct a single game instance associated with a plurality of mobile device clients, each one of the plurality of mobile device clients being operated by a respective player and each having a respective interactive game interface, a streaming component adapted to stream real-time video information to a plurality of mobile device clients to be displayed within the respective game interface of each of the plurality of mobile device clients, and an interactive content component adapted to issue events to the plurality of mobile device clients associated with the single game instance, the events causing interactive content to be displayed in real time in each of the respective interactive game interfaces.
According to some embodiments, the system further comprises video capture elements that capture live video in real time to create the streamed real-time video information which is broadcast in real time and displayed within the respective interactive game interfaces. According to some embodiments, each of the mobile device clients includes a web socket interface, through which each of the mobile device clients receive events transmitted by the interactive content component. According to some embodiments, the real-time video information is streamed to the plurality of mobile device clients concurrently with display of interactive content provided by the interactive content component.
According to some embodiments, the system comprises one or more cluster components adapted to scale resources to the single game instance responsive to a number of the plurality of mobile device clients. According to some embodiments, the multiplayer game server further comprises a timer component, the timer component determining whether each of the plurality of mobile device clients provides a response within a predetermined amount of time.
According to some embodiments, an interactive content component is adapted to control display of a plurality of interfaces on each of the interactive game interfaces of each respective ones of the plurality of mobile device clients. According to some embodiments, the interactive content component is adapted to issue an event that causes display of a game task on the interactive game interfaces of each respective ones of the plurality of mobile device clients.
According to some embodiments, the game task includes a multiple choice question, and the interactive content component is adapted to issue an event that causes display of a plurality of interactive elements each associated with an answer to the multiple choice question. According to some embodiments, the display of a plurality of interactive elements each associated with an answer to the multiple choice question is performed concurrently with display of the real-time video information within the same interface. According to some embodiments, at least one of mobile device client includes at least one of a cell phone, a table and a mobile computing device.
According to some embodiments, the live video captured and streamed in real time includes a presentation of a live game including a game host. According to some embodiments, the system further comprises a sequencing component that determines when interactive content is displayed in real time in each of the respective interactive game interfaces. According to some embodiments, the sequencing component is adapted to display a script to be displayed to a live game host.
According to some aspects, a method is provided, the method comprising conducting or executing in a memory, by a multiplayer game server, a single game instance associated with a plurality of mobile device clients, each one of the plurality of mobile device clients being operated by a respective player and each having a respective interactive game interface, streaming, by a streaming component, real-time video information to a plurality of mobile device clients to be displayed within the respective game interface of each of the plurality of mobile device clients, and issuing, by an interactive content component, events to the plurality of mobile device clients associated with the single game instance, the events causing interactive content to be displayed in real time in each of the respective interactive game interfaces.
According to some embodiments, the method further comprises capturing, by video capture elements, live video in real time, creating the streamed real-time video information, broadcasting the streamed video information in real time and displaying the streamed video information within the respective interactive game interfaces. According to some embodiments, the method further comprises receiving, through a web socket interface of the mobile device clients, events transmitted by the interactive content component.
According to some embodiments, the real-time video information is streamed to the plurality of mobile device clients concurrently with display of interactive content provided by the interactive content component. According to some embodiments, the method further comprises scaling resources, by one or more cluster components, to the single game instance responsive to a number of the plurality of mobile device clients.
According to some aspects, a non-transitory computer readable medium is provided, that when executed by a computer system, provides a system. The provided system in some aspects comprises a multiplayer game server adapted to conduct a single game instance associated with a plurality of mobile device clients, each one of the plurality of mobile device clients being operated by a respective player and each having a respective interactive game interface, a streaming component adapted to stream real-time video information to a plurality of mobile device clients to be displayed within the respective game interface of each of the plurality of mobile device clients, and an interactive content component adapted to issue events to the plurality of mobile device clients associated with the single game instance, the events causing interactive content to be displayed in real time in each of the respective interactive game interfaces.
According to some aspects, an improved user interface for a client is provided that shows interactive elements along with video. According to some aspects, a game interface of a mobile device is provided comprising a first display area adapted to display real-time video associated with a single game instance of an interactive game, a second display area adapted to display an interactive element associated with the single game instance, the interactive element, when selected within a predetermined time limit, causes the mobile device to transmit a response to a game engine executing the single game instance of the interactive game, and a display area including at least one indicator that shows, in real time, aggregated responses of multiple game players participating in the single game instance of the interactive game, the aggregated responses including the transmitted response.
According to some embodiments, the first and second display areas are displayed concurrently within a single game interface. According to some embodiments, the second display area is adapted to display a plurality of interactive elements in multiple rounds, the plurality of rounds being associated with the single game instance. According to some embodiments, the game interface further comprises a display area including an indicator that identifies a counter of multiple game players participating in the single game instance of the interactive game.
According to some embodiments, the game interface further comprises a scrollable chat window, the window including a control that permits a player to post a chat to a chat log, the chat log being associated with the single game instance of the interactive game. According to some embodiments, the scrollable chat window is associated with a sequence of interfaces associated with the single game instance of the interactive game. According to some embodiments, the scrollable chat window is displayed within a layer in relation to at least one of the first and second display areas. According to some embodiments, the game interface further comprises a display area including at least one indicator that shows, in real time, a graphical representation of the aggregated responses of the multiple game players participating in the single game instance of the interactive game.
According to some embodiments, the real-time video associated with a single game instance of an interactive game includes live video captured and streamed in real time. According to some embodiments, the live video includes a presentation of a live game including a game host.
According to some embodiments, if it is determined that a player using the game interface is eliminated in any of the plurality of rounds associated with the single game instance, the game interface is adapted to permit the player to observe remaining rounds associated with the single game instance. According to some embodiments, the live video is presented among at least one interface of each round of a plurality of rounds associated with the single game instance. According to some embodiments, the game interface further comprises an interface area having an indicator that indicates a countdown of time before conducting a first round of a plurality of rounds associated with the single game instance. According to some embodiments, the game interface further comprises an interface indicating, after the plurality of rounds associated with the single game instance are complete, at least one winning player.
According to some embodiments, the second display area is adapted to display a counter that indicates to a player, a remaining time permitted for the player to activate the interactive element associated with the single game instance. According to some embodiments, the interactive element associated with the single game instance is received by multiple mobile devices in real time and displayed to multiple players that play the single interactive game instance. According to some embodiments, a number of mobile devices receiving the interactive element associated with the single game instance in real time exceeds 100,000 mobile devices. According to some embodiments, the number of mobile devices receiving the interactive element associated with the single game instance in real time exceeds 1,000,000 mobile devices. According to some embodiments, the chat log is published to a subscriber user of the chat log using a pubsub-type service.
According to some aspects, a new game format is provided that includes a number of interactive game tasks, whereby players are successively eliminated from the game in a survival-type elimination format that is played simultaneously by a massive number of players (e.g., 100,000, 1,000,000 or more, etc.). According to some aspects, a distributed system is provided that enables such a format, the distributed system comprising a multiplayer game server adapted to conduct a single game instance associated with a plurality of mobile device clients, each of the plurality of mobile device clients being operated by a respective player and each having a respective interactive game interface, and an interactive content component adapted to issue events to the plurality of mobile device clients associated with the single game instance, the events causing interactive content to be displayed in real time in each of the respective interactive game interfaces, wherein the interactive content comprises a plurality of game tasks arranged in successive levels within the single game instance, and wherein the multiplayer game server is configured to eliminate a trigger of interactive content associated with the single game instance on a particular one of the plurality of mobile device clients responsive to a determination that a player associated with the particular one of the plurality of mobile device clients is eliminated from the single game instance.
According to some embodiments, the interactive content component permits the eliminated player to observe a remaining portion of the single game instance. According to some embodiments, the single game instance includes a trivia game arranged in successive levels. According to some embodiments, the system further comprises a component adapted to stream in real time, a video associated with the single game instance of the interactive game. According to some embodiments, the video includes live video captured and streamed in real time.
According to some embodiments, the system further comprises a video cluster component that is adapted to receive a video stream comprising the live video and replicating the stream to a plurality of edge server components. According to some embodiments, at least one of the plurality of mobile device clients is adapted to selectively connect to at least one of the plurality of edge server components to receive the video stream comprising the live video. According to some embodiments, the at least one of the plurality of mobile device clients is adapted to select the at least one of the plurality of edge server components responsive to a network test operation. According to some embodiments, the at least one of the plurality of mobile device clients is adapted to switch, in real-time, connection between the plurality of edge server components responsive to the network test operation.
According to some embodiments, the live video includes a presentation of a live game including a game host. According to some embodiments, the multiplayer game server eliminates the player upon a determination that the player did not select a response within the predetermined time limit. According to some embodiments, the multiplayer game server eliminates the player upon a determination that the player did not select a correct response to the interactive content.
According to some embodiments, the multiplayer game server adapted to conduct a single game instance associated with a plurality of mobile device clients is configured to send a push notification to each of a group of plurality of mobile devices that have previously participated in a previous game instance that a new game instance is being conducted. According to some embodiments, the system further comprises a component that permits a player to suggest at least one trivia question and answer.
According to some aspects, the system may provide the ability for the game to last longer (e.g., participate in extra round(s)) based on some action taken with respect to another player. For instance, if that player refers a new player, the player that is the referring player may be awarded an extra life that permits that player to survive one or more rounds. To this end, some aspects may relate to a distributed system comprising a multiplayer game server adapted to conduct a single game instance associated with a plurality of mobile device clients, each of the plurality of mobile device clients being operated by a respective player and each having a respective interactive game interface, an interactive content component adapted to present a plurality of interactive elements in multiple rounds to each of the plurality of mobile device clients, the plurality of rounds being associated with the single game instance, wherein each of the respective players may be eliminated in any one of the multiple rounds, and a component configured to award at least one player an ability to survive elimination within any one of the multiple rounds.
According to some embodiments, the interactive elements includes a plurality of game tasks arranged in successive difficulty levels within the single game instance. According to some embodiments, he component configured to award at least one player an ability to survive elimination within any one of the multiple rounds is adapted to award the ability responsive to the at least one player referring another user to play the multiplayer game.
Still other aspects, examples, and advantages of these exemplary aspects and examples, are discussed in detail below. Moreover, it is to be understood that both the foregoing information and the following detailed description are merely illustrative examples of various aspects and examples, and are intended to provide an overview or framework for understanding the nature and character of the claimed aspects and examples. Any example disclosed herein may be combined with any other example in any manner consistent with at least one of the objects, aims, and needs disclosed herein, and references to “an example,” “some examples,” “an alternate example,” “various examples,” “one example,” “at least one example,” “ this and other examples” or the like are not necessarily mutually exclusive and are intended to indicate that a particular feature, structure, or characteristic described in connection with the example may be included in at least one example. The appearances of such terms herein are not necessarily all referring to the same example.
Various aspects of at least one example are discussed below with reference to the accompanying figures, which are not intended to be drawn to scale. The figures are included to provide an illustration and a further understanding of the various aspects and examples, and are incorporated in and constitute a part of this specification, but are not intended as a definition of the limits of a particular example. The drawings, together with the remainder of the specification, serve to explain principles and operations of the described and claimed aspects and examples. In the figures, each identical or nearly identical component that is illustrated in various figures is represented by a like numeral. For purposes of clarity, not every component may be labeled in every figure. In the figures:
According to one implementation, a system, architecture and interfaces are provided that are capable of presenting within multiple mobile devices, real-time interactive content. In some implementations, responses from multiple mobile devices are communicated in real time to a distributed game system which can be compiled and reported back to the player population. In addition, game formats are provided where live video is presented in addition to interactive elements to create a new and compelling game format in a mobile device environment.
Distributed computer system 100 may include one or more elements that permit creation of an interactive production that can be broadcast to thousands of mobile devices concurrently. In particular, system 100 includes a director system 103, a teleprompter 102, camera 106, and one or more computer systems to provide various functions relating to processing events within the game, distributing content to users, determining results in transferring winnings to winning users. According to various aspects, such elements may be implemented within a cloud-based computer system. However, it should be appreciated that the system may be constructed in various ways using various computer system resources among a number of different computing systems. However, according to various implementations, it is appreciated that scalable, cloud-based computer systems may be utilized to implement a flexible and expandable game instance that is sized based on the number of concurrent players.
Director system 103 may be used to architect and control the sequence of distribution of live video and interactive content to each of the mobile devices. In one implementation, specialized software may be provided that allows a director or other personnel to arrange interactive content in such a manner that allows for a production of a “gameshow” type game format which is broadcast to mobile devices. The director system may include one or more organizational constructs that define the sequences by which video and interactive elements are displayed on the mobile devices. As discussed above, video streams may be distributed to the multiple mobile devices and interactive elements may be periodically triggered responsive to a control provided within the production system. In one embodiment, asynchronous event triggers may be sent to mobile devices to trigger the display of the interactive content within the multiple mobile devices.
Further, director system 103 may also control the production aspect relating to an announcer/host 101. Announcer/host 101 may be, for example, a live person within a studio that proctors a particular game instance. For example, unlike other types of mobile device game formats, an actual live host (e.g., host 101) may conduct the actual game, and a video feed associated with that host may be displayed concurrently on multiple devices that are participating within a particular game instance. As discussed above, according to various implementations, the game format may support hundreds of thousands or more participants whose mobile devices receive a video stream from distributed computer system 100.
In another column, any messages associated with a particular question may appear within interface 200. For instance, such messages may include any production information relative to the display of particular questions. Interface to may also include a column 203 that controls and identifies what is going to be displayed on a teleprompter 204. For instance, according to one mentation, a studio configuration is provided whereby the host (e.g. host 101) is positioned within a studio set including a camera (e.g., camera 106) and any associated lighting equipment, green screens, or other studio elements. The teleprompter 204 may be used to deliver the script to be presented by the host according to the sequence defined within the director user interface 200. An actual director may control when elements appear within a teleprompter and when questions are triggered within the interfaces of the mobile devices.
As discussed, the system may include a game engine 205 which controls the sequence of the game, records game state, and triggers distribution of game elements to user devices. One or more video encoding devices may be used to produce, from a camera input, one or more host video streams 206. Such strains may include the original captured video of the host 101 along with any backgrounds, effects, or other information to be broadcast. Game engine 205 may control when and how video stream 207 and any interactive elements 208 are distributed to the mobile devices (e.g., mobile devices 210). According to various aspects, a real-time interactive application interface 209 is provided on each of the mobile devices which allows for concurrent display of video and the interactive elements in a composite presentation to the user. Unlike previous game formats, the combination of video stream 207 data and interactive elements 208 are transmitted to and received by a multitude of mobile devices and interacted on in real time.
As discussed, various aspects relate to interfaces through which the user can interact with interactive content system. To this end, users may access the interactive content system via the mobile device in real time, and receive real time feedback among a multitude of concurrent users.
In particular,
In a second display area 307, one or more interactive elements may be displayed, including any associated controls. For instance, in second display area 307 a chat window may be displayed below or on top of the live format display window 306. In one embodiment, the windows are structured as layers and certain layers may be opaque and may be positioned as an overlapping layer on top of the live format display window 306. Further, interface 305 may include a third display area 306 which includes one or more indicators relating to a particular game instance. For example, it may be useful to display to all users (e.g. and broadcast to all mobile devices) the total number of users simultaneously connected to the game instance.
To this end, interface 501 may include a display element 503 that displays the question and/or problem to be solved. Further, interactive game elements 502 may include a number of selections (e.g., selections a-C, elements 504-506) that are presented as control elements that can be selected by a user within the interface of the mobile device. Upon selection of one of these elements, a message may be transmitted from the mobile device to the game server which then combines responses into an aggregated response. The game server may also track an individual's performance within the game sequence, such as if the player responded with an incorrect answer.
User-interface may also include another display area (e.g., display area 507) that is used to provide additional information to the user. For instance, display area 507 may include a minimized version of the live video feed. In addition, display area 507 may be used to indicate countdown information that identifies the status of the timer that is used to limit the response time of the player. That is, the player is required by the game system to respond within a predetermined amount of time. Such a countdown may be shown, for example, using a numeric indicator, a highlighted circle surrounding the display area 507, or other method (e.g., a sweeping hand displayed as an opaque layer over the video content). It should be appreciated that any method for combining the timer with the live video feed information may be used. Also, the timer may be a separate item within the interface and/or may be combined with any other type of interface element.
The interface of mobile device 600 may, as shown in
Optionally, the interface may include a controls 704 that permits the user to selectively display a comments window (e.g., chat window). Such a window may be enabled using the swipe operation on a portion of the interface.
In one implementation, the interface shown in
It should be appreciated that the interface can include other types of indicators, such as, for example, indicators 905-907 that show graphically along a representation of interactive element, a shaded number of players that selected this particular interactive element. In this way, a more easily discernible display may be provided to the player.
Although shaded elements are shown by way of example, other types of indicators may be used (e.g., colors such as green (correct) and red (incorrect)) may be used.
Also, according to one aspect, it is desired that there is a low latency with transmitting information to users as well as receiving interactive responses from users. For instance, in a particular example, there may be a 10 second allowance for a user to respond to a particular interactive element. In this example, that means that the user should receive the interactive element and responded within a predetermined amount of time. In one embodiment, a threshold amount of time is set and maintained on a server instance and if that threshold is exceeded, the user has not responded within the predetermined amount of time. For instance, the threshold time may be, for example, 13 seconds, allowing for a three (3) second delay or grace period between the transmission and reception of an interactive element. Depending on the infrastructure, more or less of a grace period may be used.
As shown in
Practically, the systems may communicate using a publish and subscribe model whereby mobile devices subscribe to particular channels of content (e.g., interactive elements, videos, tracks, animations, or other content types) and listen for updates to such channels and display them on their respective interfaces. Once subscribed, any messages are communicated through the sockets upon which the multiple devices are listening. In one example implementation, messages may be sent using HTTP although other protocols may be used.
In one implementation as shown in
In some embodiments as shown by way of example in
Further, system 1200 may also include a REST-based cluster 1208 that is capable of storing information, communicating to worker cluster 1206 that distributes messages to subscribed sockets to mobile devices. System 1200 may also include one or more cache/message brokers 1210 that organize communications into channels (e.g., message broker systems such as the well-known Redis message brokering system) that can be subscribed to by mobile devices. Once subscribed to a channel, mobile devices receive these asynchronous messages posted to the channel by other users. Such messages may include content that can be displayed in the interfaces of the mobile devices. In one example implementation, information posted by one user may be distributed in real time to other users (e.g., a chat entry). Other types of information (e.g., interactive element responses, counters that count the number of players, accumulators that total particular responses, etc.) may be calculated by the game server and republished in real time to the mobile devices, which can display this information in real time on their displays.
Further, system 1200 may also include a video cluster 1212 that is responsible for distributing video streams to each of the mobile devices in parallel to the distribution of asynchronous messages via the pubsub server 1209. The video cluster 1212 may be capable of transmitting video in any number of formats and resolutions, depending on the capabilities of the mobile device client. The video cluster may receive one or more video streams from hardware/software associated with the studio (e.g., studio video hardware/software 1213) associated with a game broadcast.
According to some embodiments, the video cluster 1212 may be capable of receiving a video stream from one or more mobile user devices for the purpose of retransmitting it to other mobile device users. As previously discussed, the system may include a director type role and associated computer system that controls the production of the game. To this end, system 1200 may include an admin system 1205 that permits a director user to the distribution of various channels of content. In one example, the admin system 1205 may be capable controlling a video input provided by one or more mobile devices and redistribute the provided video stream through the video cluster to other mobile devices. It should be appreciated that other system architectures and elements may be used either in place of or in addition to the architectures and elements described here.
In some embodiments, mobile device clients (e.g., mobile devices 1217A-1217Z) may be capable of selecting an edge server from which they will receive a video stream. In one implementation, a client selects an appropriate edge server responsive to a network test operation. For instance, the client selects a stream, and performs a network test in which the client downloads a video file multiple times. Download statistics regarding the stream such as dropped frames, slow loading, rebuffering, dropped connections and/or other parameters may be used to qualify the performance of a client/edge server connection. If it is determined that the statistics drop below one or more quality measures, the client may connect to an alternative edge server, where the network test is repeated. Multiple edge server connections may be evaluated until an quality connection is identified. During the broadcast of a particular game instance, the clients may be configured to monitor stream quality and may seamlessly switch stream sources (e.g., edge servers) responsive to varying conditions. In some embodiments, edge servers may be capable of providing various stream formats and quality levels, depending on the client and connection capabilities.
As the game is conducted, there may be one or more channel updates (1306) that may result in asynchronous interactive elements to be displayed on one or more the clients (e.g. 1301). One or more of these clients may provide asynchronous feedback 1307 to the pub/sub server 1303. The pub/sub server (or alternatively, the game server) may perform one or more calculations association with the asynchronous feedback from the multitude of mobile devices. In one example, the system may analyze the asynchronous feedback 1307 provided by the mobile devices and performed a population calculation 1308 that shows the results of the asynchronous feedback provided by users. Such information may be published to each of the mobile devices that are subscribed to the channel (1309). In this manner, asynchronous feedback may be received and redistributed to mobile devices.
In another example, the game server 1302 may be capable of triggering an event 1310 which causes a distribution of the event 1311 two the multitude of mobile devices. Such events may include asynchronous messages to be displayed within an interface, results of counters, when status, or other information to be displayed.
Thereafter, the game may be initiated via an event (e.g., trigger 1404) which causes the multilevel game to begin. In one such format, there are multiple levels (e.g., 2, 3, . . . 10, 11, 12 or more) where interactive display elements are triggered to be displayed on the multitude of mobile devices. For example, at state 1405 an event is sent to mobile devices that causes a display of a question (e.g., question number N) on the multiple mobile devices. A timer (e.g., timer 1406) may be instantiated by the game server or other entity that determines when valid responses may be received from any of the mobile devices. Upon expiration of the timer the system transitions to game state 1408 where the result displays triggered for the identified question. In particular, the mobile devices may be triggered to display aggregated results for question N. After some period of time, either predetermined or controlled otherwise by the production director, a change of interface may be triggered (e.g., by trigger 1409) back to a host discussion of the results in an introduction to a next question within the multilevel game. After the host discussion, a trigger (e.g., 1413) may be sent to display the next question on the multitude of devices (e.g., at state 1405).
While at state 1410, if the question discussed was the final question, a trigger may be sent to display one or more of the winners and possibly any potential payout at state 1412. Thereafter, the game ends. It should be appreciated that the game may have any number of levels and may involve any number of game tasks and/or game task types. For instance, other games such as board games, puzzles or other game types may be used in any number of rounds to eliminate subsets of players. Also, it should be appreciated that such game instances may be conducted at predetermined times to encourage maximum participation users.
The above-described embodiments can be implemented in any of numerous ways. For example, the embodiments may be implemented using hardware, software or a combination thereof. When implemented in software, the software code can be executed on any suitable processor or collection of processors, whether provided in a single computer or distributed among multiple computers. It should be appreciated that any component or collection of components that perform the functions described above can be generically considered as one or more controllers that control the above-discussed functions. The one or more controllers can be implemented in numerous ways, such as with dedicated hardware or with one or more processors programmed using microcode or software to perform the functions recited above.
In this respect, it should be appreciated that one implementation of the embodiments of the present invention comprises at least one non-transitory computer-readable storage medium (e.g., a computer memory, a portable memory, a compact disk, etc.) encoded with a computer program (i.e., a plurality of instructions), which, when executed on a processor, performs the above-discussed functions of the embodiments of the present invention. The computer-readable storage medium can be transportable such that the program stored thereon can be loaded onto any computer resource to implement the aspects of the present invention discussed herein. In addition, it should be appreciated that the reference to a computer program which, when executed, performs the above-discussed functions, is not limited to an application program running on a host computer. Rather, the term computer program is used herein in a generic sense to reference any type of computer code (e.g., software or microcode) that can be employed to program a processor to implement the above-discussed aspects of the present invention.
Various aspects of the present invention may be used alone, in combination, or in a variety of arrangements not specifically discussed in the embodiments described in the foregoing and are therefore not limited in their application to the details and arrangement of components set forth in the foregoing description or illustrated in the drawings. For example, aspects described in one embodiment may be combined in any manner with aspects described in other embodiments.
Also, embodiments of the invention may be implemented as one or more methods, of which an example has been provided. The acts performed as part of the method(s) may be ordered in any suitable way. Accordingly, embodiments may be constructed in which acts are performed in an order different than illustrated, which may include performing some acts simultaneously, even though shown as sequential acts in illustrative embodiments.
Use of ordinal terms such as “first,” “second,” “third,” etc., in the claims to modify a claim element does not by itself connote any priority, precedence, or order of one claim element over another or the temporal order in which acts of a method are performed. Such terms are used merely as labels to distinguish one claim element having a certain name from another element having a same name (but for use of the ordinal term).
The phraseology and terminology used herein is for the purpose of description and should not be regarded as limiting. The use of “including,” “comprising,” “having,” “containing”, “involving”, and variations thereof, is meant to encompass the items listed thereafter and additional items.
Having thus described several aspects of at least one embodiment of this invention, it is to be appreciated various alterations, modifications, and improvements will readily occur to those skilled in the art. Such alterations, modifications, and improvements are intended to be part of this disclosure, and are intended to be within the spirit and scope of the invention. Accordingly, the foregoing description and drawings are by way of example only.
This Application is a Non-Prov of Prov (35 U.S.C. § 119(e)) of U.S. Application Ser. No. 62/630,154, filed Feb. 13, 2018, entitled “SYSTEM AND INTERFACES FOR PROVIDING AN INTERACTIVE SYSTEM”.
Number | Date | Country | |
---|---|---|---|
62630154 | Feb 2018 | US |