RESPONSE TIME-BASED SCORING ON DVD PLAYERS
BACKGROUND
Typical DVD players, i.e., consumer electronic devices designed to primarily play digital video discs (DVDs), are very limited in their ability to do much more than play audio/visual content on DVDs. For example, as those skilled in the art will appreciate, DVD players are extremely limited as to the amount of dynamic/programmable memory available for general use on the DVD player. Furthermore, DVD players conforming to the DVD Video specification have only a limited set of instructions through which an author can use to program features into the content of a DVD disc. For these reasons, as well as others, the people most familiar with DVD standards, content authoring, and the like, have always viewed a DVD player as merely a "dumb" component designed to play audio tracks and display movies on a connected display device and/or speakers from a DVD video disc.
While DVD players are very limited in memory and instruction sets, they are typically combined in audio/visual entertainment systems that provide many aspects of a typical game system. For example, FIGURE 1 is a pictorial diagram of an exemplary audio/visual entertainment system 100 including a DVD player 102. More particularly, the DVD player 102 is typically controlled by a user via a remote control device 106, and, as part of an audio/visual entertainment system 100, is attached either via cable or wirelessly to one or more audio output devices 110 and a display device 108. Additionally, when considering the discs that DVD players read/play, such as DVD Video disc 104, as well as other compatible formats like audio compact discs (CDs), the typical DVD player 102 includes massive amounts of static, read-only storage from which game information may be read. Unfortunately, due to the limited instructions, the lack of dynamically programmable memory, as well as perceived limitations, the DVD player has been largely ignored by the game industry.
As those skilled in the art will appreciate, some content providers (via DVD video discs suitable for play on a DVD player) have tried to add additional entertainment to their content by including extras on the DVDs that they provide. For example, many movies are provided with extra content on the one or more DVD video discs distributed with the movie. However, these extras are mostly simple "games" in which the DVD player presents a series of multiple choice or true/false questions for a "player/user" to
answer. A user selects one of the answers using the remote control device 106. If the user selects the correct answer, the DVD player displays a "correct" audio/visual clip to the user/player. Alternatively, if the user's answer was incorrect, the DVD player displays an incorrect audio/visual clip. In either case, the "game" then continues to the next question in the series. Clearly, while such question and answer sessions may provide additional entertainment to the content, on the whole, the entire experience is rather limited. In fact, the questions are usually only fun once, as the same questions are presented in the same order each time the "game" is played.
Recently, innovative and novel applications of the DVD video instruction set with regard to content stored on a DVD video disc have resulted in a realization that the DVD player can be used in more sophisticated entertainment/games. For example, at least one innovative company has introduced trivia style games used in conjunction with a typical consumer DVD player, where the DVD player selects audio/visual clips and puzzles from a DVD video disc in an apparent random fashion without repeats. An explanation of this technology and game can be found in commonly assigned U.S. Patent Application No. 10/438,174, filed May 13, 2003, entitled "DVD Game," and also in commonly assigned U.S. Patent No. 6,987,925 B2, entitled "DVD Random Shuffle Method," both of which are incorporated herein by reference.
While some DVD player-based games now exist, many aspects of typical game playing found in most modern game systems are still not found. As one example, many games/game systems reward a player based on the speed with which the player responds with the correct answer. In other words, a higher score is awarded to the player that answers correctly in less time. Of course, just as other aspects of DVD player games, response time-based scoring has been viewed as unavailable on DVD players. In light of the above, it would be useful if DVD players could be utilized in such a manner to provide a more robust gaming experience. The present invention addresses this and other issues associated with DVD players as found in the prior art.
SUMMARY
This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This summary is not intended to identify key features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.
According to aspects of the present invention, a DVD player-readable medium bearing DVD player-executable instructions for carrying out a game on the DVD player is presented. The game, as implemented by the DVD player-executable instructions comprises selecting a puzzle from a plurality of puzzles stored on the DVD player-readable medium. Once a puzzle is selected, the puzzle is displayed to a player via an output device connected to the DVD player. A graduated timer is started/output. The graduated timer includes at least two gradations, and each gradation corresponds to a scoring value. A player's response is obtained. A response value is determined according to the current gradation of the graduated timer in which the player response is obtained. The player's score is incremented according to the determined response value.
According to further aspects of the present invention, a method for implementing a response time-based scoring timer on a DVD player through instructions recorded on DVD player-readable media, is presented. The method comprises the following steps. Timer content is output via the DVD player on a display device. The timer content is segmented into gradations, with each gradation corresponding to a particular scoring value. User input is obtained by the DVD player via an input device during the output of the timer content. The gradation of the timer content in which the user input was received is determined. The scoring value associated with determined gradation is then determined. According to still further aspects of the present invention, a DVD player-readable media bearing DVD player-executable instructions is presented. When executed on a DVD player, the DVD player-executable instructions implement a response time-based scoring feature on the DVD player. The DVD player-readable media comprises content suitable for output by the DVD player onto a display device. The DVD player-readable media further comprises instructions suitable for controlling the output of content by the DVD player to the display device. At least one timer portion of the content and instructions on the DVD player-readable media, when performed on the DVD player, implement a response time-based scoring algorithm for providing a score to a user's input.
DESCRIPTION OF THE DRAWINGS The foregoing aspects and many of the attendant advantages of this invention will become more readily appreciated as the same become better understood by reference to
the following detailed description, when taken in conjunction with the accompanying drawings, wherein:
FIGURE 1 is a pictorial diagram of an exemplary audio/visual entertainment system including a DVD player and suitable for implementing aspects of the present invention;
FIGURE 2 is a flow diagram illustrating an exemplary routine for implementing a game on a DVD player utilizing a response time-based scoring algorithm;
FIGURE 3 is a flow diagram illustrating an exemplary routine for displaying a puzzle to a user/player and returning a score based on a response time-based scoring algorithm;
FIGURE 4 is a flow diagram illustrating an exemplary routine illustrating a rapid play game routine for displaying a plurality of puzzles during a predetermined amount of time to a player with a response time-based scoring algorithm;
FIGURE 5 is a flow diagram illustrating an exemplary rapid play game routine for displaying a plurality of puzzles to a player in a predetermined amount of time using a response time-based scoring algorithm;
FIGURE 6 is a flow diagram illustrating an alternative exemplary rapid play game routine for displaying a plurality of puzzles to a player in a predetermined amount of time using a response time-based scoring algorithm; FIGURE 7 is a flow diagram illustrating an exemplary routine for displaying a selected puzzle to a player and determining a score for that player according to a response time-based scoring algorithm;
FIGURE 8 is a block diagram illustrating exemplary timer content divided into gradations and for further illustrating implementation aspects of response time-based scoring.
DETAILED DESCRIPTION
The following detailed description provides exemplary implementations of the invention. Although specific system configurations and flow diagrams are illustrated herein, it should be understood that the examples provided are not exhaustive and do not limit the invention to the precise forms disclosed. Persons having ordinary skill in the field of processing online orders will recognize components and process steps described herein that may be interchangeable with other components or steps, or combinations of
components or steps, and still achieve the benefits and advantages of the present invention.
It should be noted that the following discussion of the present invention is made in terms of a DVD player playing content from an optical disc configured according to the DVD-Video specification. The DVD player discussed herein is envisioned as a typical, consumer device for playing DVD-Video formatted discs, which are the typical format upon which most movies are released to the public. As such, the typical consumer-available DVD player is considered a "dumb device" in that it is not readily programmed by a user-consumer. Accordingly, the programming and content associated with the present invention are found on the DVD-Video disc.
As mentioned above, the typical DVD player integrated within an audio/visual entertainment system 100 is suitable for implementing aspects of the present invention. More particularly, according to aspects of the present invention, the typical DVD player 102 can be programmed using DVD- Video's standard features to implement a game system that includes sophisticated random clip/puzzle selection as well as scoring, including graduated scoring based on a user's response time to a particular puzzle. Examples of DVD player systems that provide entertainment as a game and of selecting clips and puzzles from the media in an apparent random fashion without repeats is found in the above-described references, "DVD Game" and "DVD Random Shuffle Method." As indicated above, those skilled in the art will appreciate that the operations of a
DVD player 102 are generally controlled by the DVD player-specific instructions and content stored on the media played by the DVD player, such as DVD 104. By innovatively applying the instructions of the DVD player 102, an entertaining game can be presented to the user. As those skilled in the art will appreciate, the instructions that control a DVD player 102 are found in titles and chapters recorded on the DVD-Video compliant media. However, while the instructions are so arranged, logically they can be described in the form of routines and subroutines. Thus, in accordance with aspects of the present invention, FIGURE 2 is a flow diagram illustrating an exemplary routine 200 for implementing a game on a DVD player using a response time-based scoring algorithm.
Beginning at block 202, the DVD player 102 is instructed to initialize player scores. For example, if the game is a two-player game, scores for both players would be initialized to zero. Player scores are stored within one of the general programming
registers (GPRMs) available on the DVD player 102 as they are typically the only dynamically programmable memory locations. The number of GPRMs is limited: DVD players include sixteen GPRMs which hold 16 bit values, clearly very limited for programming use. Accordingly, depending on how efficient a particular program makes of the available GPRMs, the number of concurrent players is fairly limited. However, solely for the purpose of the illustration, the following discussion will be made in regard to a game with two players.
At block 204, a first player is selected. At block 206, a puzzle is selected. In many games it is preferable to randomly select (or more precisely pseudo-randomly select) puzzles from a large number of puzzles stored on the DVD disc. An exemplary method for randomly selecting puzzles from a large number of stored puzzles is described in greater detail in the above-incorporated reference, "DVD Random Shuffle Method."
After selecting a puzzle for the selected player, at block 208, a subroutine is called that displays the puzzle to the player, obtains the player's input/response, and returns the player's score in response, according to a response time-based scoring algorithm. An exemplary subroutine to display a puzzle, obtain the player's response, and return a player's score according to a response time-based scoring algorithm is discussed below in regard to FIGURE 3.
FIGURE 3 is a flow diagram illustrating an exemplary routine 300 for displaying a puzzle to a player, obtaining the player's response, and returning a score based on a response time-based scoring algorithm. Beginning at block 302, the selected puzzle (from block 206 of FIGURE 2) is displayed by the DVD player 102 on the display device 108 (FIGURE 1) to the user/player. At block 304, a graduated zone timer is commenced and displayed. While listed separately in this exemplary flow diagram, preferably, the graduated timer is commenced and the puzzle is displayed simultaneously, or as near to simultaneously as possible.
As indicated by its name, the graduated timer is associated with a plurality of gradations, and each gradation is associated with a predetermined number of points, with the higher number of points associated with the first gradations, m other words, the number of points awarded for a correct answer is inversely related to the amount of time the user/player takes to respond correctly. For example, if the graduated timer were segmented into three gradations, the first gradation would be associated with the maximum amount of points, the second gradation would be associated with a lesser
amount of points, and the third gradation would be associated with the least amount of points. Answering the puzzle correctly during the first gradation earns the player the maximum amount of points. Similarly, correctly answering the puzzle during a subsequent gradation earns the player the points associated with the gradation in which the puzzle was correctly answered. Of course, the example above of three gradations is illustrative only and should not be construed as limiting upon the present invention. A timer with any number of gradations may be utilized, limited only by the abilities of the DVD player and the functional aspects of the timer implementation utilized.
After starting the timer, at delay block 306, the routine 300 awaits an event, and in particular, a player response event or a graduated timer expiration event. At decision block 308, a determination is made as to whether the event was the expiration of the graduated timer. If not, meaning that the player responded, at block 310, the current graduated timer gradation is obtained. At decision block 312, a determination is made as to whether the player response was correct. If the player responded correctly, at block 314, the score associated with the obtained gradation is returned, and the routine 300 terminates. However, if the player responded incorrectly, at block 316, the correct answer may be displayed, a score of zero is returned, and the routine 300 terminates. Similarly, if, at decision block 308, a graduated timer expiration event was received meaning that the user/player failed to respond in the given amount of time, the correct answer may be displayed, a score of zero is returned, and the routine 300 terminates.
Returning again to FIGURE 2, after obtaining the returned score for the player, at block 210, the score is added to the selected player's current total. At decision block 210, a determination is made as to whether the game is now ended. The end of a game may be reached in a variety of manners, including permitting each player to respond to a predetermined number of puzzles, exhausting the supply of puzzles, or determining whether that one player has reached a threshold score that indicates that player has won, and the like.
If the end of game is reached, the routine 200 terminates. However, if the end of game is not reached, at block 214, the next player is selected, and the routine 200 returns to block 206. At block 206, the routine 200 selects a puzzle for the selected player, and the process described above is repeated.
While FIGURE 2 illustrates an exemplary routine 200 in which players alternate between answering puzzles, in an alternative embodiment, each player is given a period of time in which to answer a plurality of puzzles. FIGURE 4 is a flow diagram illustrating an exemplary routine illustrating an exemplary "rapid play" game routine 400 for displaying a plurality of puzzles during a predetermined amount of time to a player with the scoring of the player's answers determined according to a response time-based scoring algorithm.
Beginning at block 402, the exemplary routine 400 initializes the player scores. At block 404, a first player is selected. At block 406, a rapid play sequence is presented to the selected player. Rapid play sequences are described below in alternative embodiments in regard to FIGURES 5 or 6.
After the rapid play sequence for the selected player, at decision block 412, a determination is made as to whether the game is to terminate. Game termination may be based on a number of criteria, including those identified above in regard to the exemplary routine 200 of FIGURE 2. If the game is to continue, at block 414, a next player is selected, and the routine 400 returns again to block 406 to present the selected player with a rapid play sequence. The routine 400 continues, until at decision block 412, it is determined that the end of the game is reached, whereupon the routine 400 terminates.
With respect to the above-mentioned rapid play sequence, FIGURE 5 is a flow diagram illustrating an exemplary rapid play game routine 500 for displaying a plurality of puzzles to a player in a predetermined amount of time using a response time-based scoring algorithm. Beginning at block 502, a puzzle is selected for presentation to the selected player. At block 504, the selected player's rapid play sequence turn timer is started. This turn timer is used to establish the amount of time the selected player has to answer/respond to the plurality of puzzles.
At block 506, the selected puzzle is displayed to the player, and a response value is returned according to whether the player responded correctly to the puzzle and the amount of time in which the player responded correctly. Displaying the puzzle and determining and returning a response value based on the amount of time in which it takes to respond to the puzzle is described in greater detail below in regard to FIGURE 7.
After obtaining the response value for the player's response to the puzzle, at block 508, the response value is added to the player's total. At decision block 510, a determination is made as to whether there is more time remaining in the player's turn, i.e.,
has the turn timer expired. If there is more time remaining, at block 512, another puzzle is selected, and the routine 500 returns to block 506 to display the selected puzzle and get the player's response value. This process continues until, at decision block 510, there is no more time remaining for the selected player's turn due to the expiration of the turn timer, whereupon the routine 500 terminates.
As can be seen from the above routine 500, a selected player's turn continues until the player's turn expires. In a contrasting embodiment, FIGURE 6 is a flow diagram illustrating an exemplary rapid play game routine 600 for displaying a plurality of puzzles to a player in a predetermined amount of time using a response time-based scoring algorithm, continuing within the time associated with the turn and as long as the player responds correctly to each puzzle.
With regard to FIGURE 6, at block 602, a puzzle is selected for presentation to the selected player. At block 604, the selected player's rapid play sequence turn timer is started. As mentioned above in regard to routine 500 (FIGURE 5), this turn timer is used to establish the amount of time the selected player has to answer/respond to the plurality of puzzles in this rapid play sequence.
At block 606, the selected puzzle is displayed to the player, and a response value is returned according to whether the player responded correctly to the puzzle and the amount of time in which the player responded correctly. Displaying the puzzle and determining and returning a response value based on the amount of time in which it takes to respond to the puzzle is described in greater detail below in regard to FIGURE 7.
After obtaining the response value for the player's response to the puzzle, at decision block 608, a determination is made as to whether the player responded correctly to the selected puzzle. If the player did not respond correctly (or perhaps failed to respond to the puzzle), the routine 600 terminates. Determining whether the player responded correctly to the puzzle may be made in a variety of manners, but in one
" - embodiment, a response value of zero could be used to identify that the player responded incorrectly or not at all.
If the player responded correctly, at block 610, the response value is added to the player's total. As mentioned above, the response value is a function of the amount of time that the player takes to respond correctly to the selected puzzle. At decision block 612, another determination is made, this one as to whether there is more time remaining in the player's turn, i.e., has the turn timer expired. If there is more time remaining, at
block 614, another puzzle is selected, and the routine 600 returns to block 606 to display the selected puzzle and get the player's response value. This process continues until, at decision block 612, there is no more time remaining for the selected player's turn or the player responds incorrectly, whereupon the routine 600 terminates. As indicated above, FIGURE 7 is a flow diagram illustrating an exemplary routine 700 for displaying a selected puzzle to a player and determining a response score for that player according to a response time-based scoring algorithm, i.e., scoring based on the time it takes the player to respond to the selected puzzle. Beginning at block 702, the puzzle is displayed to the player. In addition to displaying the puzzle to the player and as concurrently as possible with displaying the puzzle, at block 704, a graduated timer is started. As discussed above in regard to routine 300 of FIGURE 3, this graduated timer is segmented into sections with each section corresponding to a certain number of points.
At block 706, the routine 700 awaits an event. In this instance, the events may be a player response, the expiration of the graduated timer, or the expiration of the selected player's turn timer. At decision block 708, a determination is made as to whether the event indicated that it was the end of the player's turn, i.e., whether the turn timer expired. If it is the end of the player's turn, the routine 700 terminates and returns a zero as the response value. However, if the event was not an indication of the end of the player's turn, the routine 700 proceeds to decision block 710.
At decision block 710, a determination is made as to whether the graduated timer expired, the graduated timer corresponding to the amount of time the player has to respond to the selected puzzle. As with the turn time above, if the graduated timer has expired, the routine 700 terminates and returns a zero as the response value. If the event was a player response, at decision block 712, a final determination is made as to whether the player's response was the correct response. If the player responded correctly, the routine 700 terminates and the response value associated with the current gradation on the graduated timer is returned. Alternatively, if the player responded incorrectly, the routine 700 terminates and returns a zero as the response value. With regard to displaying a puzzle and a graduated timer, while the above description has been presented as though they are distinct entities, it is for illustration purposes only, and should not be construed as limiting upon the present invention. In an
actual embodiment, both the puzzle and the timer may be part of a single audio/visual clip. In fact, a graduated timer may be implemented in a variety of manners.
With regard to implementing a response time-based scoring algorithm on a DVD player, according to one embodiment, the content author determines a number of gradations (scoring gradations) into which the response time (and therefore the timer content) is divided. For example, assume that the content author determines that there will be three gradations (or segments) of the timer content for answering the puzzles, where answering a puzzle during the first gradation/segment earns a maximum score (such as 5 points), answering the puzzle during the second time gradation/segment earns a middle score (such as 3 points), and answering the puzzle during the third time segment earns a minimum score (such as 1 point). Of course, failure to respond earns no points.
FIGURE 8 is a block diagram illustrating exemplary timer content divided into gradations and for further illustrating implementation aspects of response time-based scoring. In accordance with the above example, as shown in FIGURE 8, a timer content 800 is segmented into three gradations, 802-806.
Once the content author identifies the gradations, I-Frames (or I-Pictures) are inserted into the timer content at a location corresponding to the beginning of each time gradation. Content 800' illustrates the updated timer content. Thus, with regard to the above example, a first I-Frame 808 is inserted into the beginning of the timer content 800'. A third of the way through the timer content a second I-Frame 810 is added to the content. Similarly, two thirds of the way through the timer content a third I-Frame 812 is added.
Along with each I-Frame, a subpicture is added to each gradation of the timer content, such as subpictures 814-818. Each subpicture is added such that it extends or spans the entire time of the corresponding gradation. Each subpicture includes (not shown) the coding that detects the player's input, determines whether the player correctly responded to the puzzle, and awards a score according to the current gradation or segment of the timer content. Further, the coding also links to a program chain (PGC) according to the correctness of the player's response. In continuing the example above, if the player responds correctly to a puzzle during the first gradation, the corresponding first subpicture will award maximum points for the correct response, and further break out of the timer content and link to a PGC associated with visually validating to the player that
the response was correct. Similarly, an incorrect response will result in linking to a PGC for notifying the player of an incorrect response.
Those skilled in the art will appreciate that DVD video content will typically include numerous I-Frames. I-Frames are full images and are subsequently modified by B-Frames and P-Frames (which include only the differences to be made to the I-Frames). Indeed, every group of pictures (GOP) has at least one I-Frame. Moreover, scene changes and even substantial modifications are marked with I-Frames. However, by manually inserting I-Frames and subpictures at precise locations in timer content, a graduated timer may be realized. Thus, by properly inserting I-Frames and subpictures in the timer content, the timer content displayed to the player is seamless, and permits a content author to determine the number of gradations in the graduated timer and the code to detect and process a score according to a particular gradation. The actual number graduations is limited only by the DVD specifications and limitations.
While the use of I-Frames and subpictures is one embodiment for providing a graduated timer, other alternatives are also possible. For example, in one embodiment, I-Frames are again added at the beginning of each gradation/segment. However, rather than adding subpictures that obtains the player's response, awards points, and links to an appropriate response segment, a cell command increments a counter in a GPRM, the counter being initialized to zero. When the player responds correctly, the counter is accessed to determine which time gradation is currently active, and points are awarded to the time gradation accordingly. One of the drawbacks with cell commands is that presentation of the audio/visual content is at least momentarily interrupted, thereby giving the user a seamed, or "jerky" presentation.
Yet another alternative is to set a GPRM into timer mode at the start of displaying a puzzle. When the puzzle is answered correctly, the current value of the GPRM is extracted and used to determine the score. Unfortunately, the GPRM timer mode counts in "ticks", not seconds. Additionally, one of the limited GPRMs (the GPRM used as a timer) becomes "unavailable" for other programmable use. Furthermore, disparate DVD players generate these "ticks" at different rates. Some DVD players count "ticks" as much as ten times faster than others. A solution, though, is to have previously tested the DVD player against a benchmark content to determine its rate of counting ticks. To do this, a GPRM is set into timer mode and a clip with a known time length is run. When the clip ends, the number of clips is retrieved and used to determine the rate of "ticks" per
second. Thus, when a puzzle is answered correctly, the amount of time that the player used to answer is determined according to the number of ticks in the GPRM, adjusted according to the number of ticks per second the DVD player generates.
As another alternative embodiment, and of a similar nature to setting a GPRM into timer mode, the DVD video specification includes a navigation timer command. The navigation timer command counts down until there is a user input. Like the GPRM, the navigation timer command counts in "ticks," which, of course, may vary substantially between machines in regard to the amount of time each "tick" represents. Accordingly, as with the GPRM timer, navigation timer command must be benchmarked against content of a known length of time to determine what a "tick" actually means. Beneficially, however, the navigation timer command does not use a GPRM. Unfortunately, while the navigation timer command should be included with each DVD player as it is part of the DVD video specification, a sampling of current DVD players shows that not all DVD players implement this feature. Thus, use of or reliance upon this feature runs the risk of failure.
Yet another alternative is to link PGCs together, where each PGC corresponds to a particular time gradation and responding during the execution of the PGC earns the player the corresponding score. Unfortunately, like the use of cell commands with counter, linking the PGCs together causes small pauses in the presentation of the content, thus a seamed or jerky presentation may be created.
While various embodiments, including the preferred embodiment, of the invention have been illustrated and described, it will be appreciated that various changes can be made therein without departing from the spirit and scope of the invention.