# Patent

## Title
System and method for menu-driven voice control of characters in a game environment

## Abstract

In a gaming system, a user controls actions of characters in the game environment using speech commands. In a learning mode, available speech commands are displayed in a command menu on a display device. In a non-learning mode, the available speech commands are not displayed. A speaker-independent context-sensitive speech recognition module contains a vocabulary of available speech commands. Use of speech commands is combined with input from a controller device to control actions of a character or characters in the game environment.

## Background
BACKGROUND OF THE INVENTION
1. Field of the Invention
This invention relates generally to electronic entertainment systems and relates more particularly to a system and method for menu-driven voice control of characters in a game environment.
2. Description of the Background Art
In electronic entertainment systems such as gaming systems, a user typically interacts with a game program using some type of manually activated controller device. Common controller devices are buttons, joysticks, switches, keyboards, and combinations of these. Some gaming systems use specially designed control devices, such as a steering wheel and pedals for driving simulations and a stick and pedals for flight simulations.
Each gaming system typically uses manually activated controller devices of a single design for most games playable on the system, and buttons or keystrokes are assigned different meanings for each game. In one game, a particular button may correspond to a punch, while in another game the same button corresponds to firing a torpedo. Thus use of a controller device is not very intuitive for the user in the context of a particular game environment.
Use of manually activated controller devices requires a user to memorize which buttons or keys are assigned to particular actions. For complicated games, the number of buttons or combinations of keystrokes can be very large. In many games, a user only controls the actions of a single character. In games when the user controls a group of characters, the characters act as a group, so in effect the group of characters acts as a single character. Allowing the user to control multiple characters independently using manually activated controller devices may be possible, but would be very complex and difficult to learn and use.
SUMMARY OF THE INVENTION
In accordance with the present invention, a system and method are disclosed to implement menu-driven voice control of characters in a game environment. The system of the invention includes game software and a speech recognition module. The speech recognition module is speaker-independent and context sensitive with a vocabulary of available command words or phrases to control actions of a character or characters in the game environment. A user speaks commands from the vocabulary into a microphone to control the actions of a character or characters in the game environment.
In a learning mode, menus of available commands are displayed to the user. A level 1 command menu shows available characters to control. A level 2 command menu shows available actions for a character or characters selected from the level 1 menu. The available actions in the level 2 menu depend upon a current state of the game. A level 3 command menu shows available options for the character actions selected from the level 2 menu. The available options in the level 3 menu may also depend upon a current state of the game.
In a non-learning mode, menus of available commands are not displayed to the user. The user speaks memorized commands in the vocabulary of the speech recognition module. The speech recognition module is context-sensitive; it will not react to a level 2 command unless a level 1 command was previously input, and will not react to a level 3 command unless a level 2 command was previously input. Thus, the user inputs verbal sentence-type commands (actor plus action) to control a character or characters in the game environment.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a block diagram of one embodiment of an electronic entertainment system, according to the invention;
FIG. 2 is a block diagram of one embodiment of the main memory of FIG. 1, according to the invention;
FIG. 3A is a diagram of one embodiment of a level 1 menu command screen on a display device, according to the invention;
FIG. 3B is a diagram of one embodiment of a level 2 menu command screen on the display device, according to the invention;
FIG. 3C is a diagram of one embodiment of a level 3 menu command screen on the display device, according to the invention; and
FIG. 4 is a flowchart of method steps for menu-driven voice command of characters, according to one embodiment of the invention.



DETAILED DESCRIPTION OF THE DRAWINGS
FIG. 1 is a block diagram of one embodiment of an electronic entertainment system 100 in accordance with the invention. System 100 includes, but is not limited to, a main memory 110, a central processing unit (CPU) 112, vector processing units VU0 111 and VU1 113, a graphics processing unit (GPU) 114, an input/output processor (IOP) 116, an IOP memory 118, a controller interface 120, a memory card 122, a Universal Serial Bus (USB) interface 124, and an IEEE 1394 interface 126. System 100 also includes an operating system read-only memory (OS ROM) 128, a sound processing unit (SPU) 132, an optical disc control unit 134, and a hard disc drive (HDD) 136, which are connected via a bus 146 to IOP 116. System 100 is preferably an electronic gaming console; however, system 100 may also be implemented as a general-purpose computer, a set-top box, or a hand-held gaming device.
CPU 112, VU0 111, VU1 113, GPU 114, and IOP 116 communicate via a system bus 144. CPU 112 communicates with main memory 110 via a dedicated bus 142. VU1 113 and GPU 114 may also communicate via a dedicated bus 140. CPU 112 executes programs stored in OS ROM 128 and main memory 110. Main memory 110 may contain prestored programs and may also contain programs transferred via IOP 116 from a CD-ROM, DVD-ROM, or other optical disc (not shown) using optical disc control unit 134. IOP 116 controls data exchanges between CPU 112, VU0 111, VU1 113, GPU 114 and other devices of system 100, such as controller interface 120.
GPU 114 executes drawing instructions from CPU 112 and VU0 111 to produce images for display on a display device (not shown). VU1 113 transforms objects from three-dimensional coordinates to two-dimensional coordinates, and sends the two-dimensional coordinates to GPU 114. SPU 132 executes instructions to produce sound signals that are output on an audio device (not shown).
A user of system 100 provides instructions via controller interface 120 to CPU 112. For example, the user may instruct CPU 112 to store certain game information on memory card 122 or may instruct a character in a game to perform some specified action. Other devices may be connected to system 100 via USB interface 124 and IEEE 1394 interface 126. In the preferred embodiment, a USB microphone (not shown) is connected to USB interface 124 to enable the user to provide voice commands to system 100.
FIG. 2 is a block diagram of one embodiment of main memory 110 of FIG. 1, according to the invention. Main memory 110 includes, but is not limited to, game software 212 and a speech recognition module 214, which were loaded into main memory 110 from an optical disc in optical disc control unit 134. Game software 212 includes instructions executable by CPU 112, VU0 111, VU1 113, and SPU 132 that allow a user of system 100 to play a game. In the FIG. 2 embodiment, game software 212 is a combat simulation game in which the user controls a three-character team of foot soldiers. In other embodiments, game software 212 may be any other type of game, including but not limited to a role-playing game (RPG), a flight simulation game, and a civilization-building simulation game.
Speech recognition module 214 is a speaker-independent, context-sensitive speech recognizer executed by CPU 112. In an alternate embodiment, IOP 116 executes speech recognition module 214. Speech recognition module 214 includes a vocabulary of commands that correspond to instructions in game software 212. The commands include single-word commands and multiple-word commands. When an input speech signal (utterance) matches a command in the vocabulary, speech recognition module 214 notifies game software 212, which then provides appropriate instructions to CPU 112.
The user of system 100 and game software 212 inputs one or more of the commands via the microphone and USB interface 124 to control the actions of characters in game software 212. The spoken commands are preferably used in conjunction with controller commands; however, other embodiments of game software 212 may implement spoken commands only.
FIG. 3A is a diagram of one embodiment of a level 1 menu command screen 322 on a display device 310 connected to system 100, according to the invention. The level 1 menu 330 includes three level 1 command items, a team item 332, an alpha item 334, and a bravo item 336. Although three level 1 command items are shown, game software 212 may use any number of level 1 command items. Level 1 menu command screen 322 appears when the user actuates and then releases a button or other device on the controller dedicated to this function. Level 1 menu command screen 322 also includes a current game picture (not shown) underlying level 1 menu 330. Level 1 menu 330 appears on display device 310 to indicate to the user available choices for level 1 commands.
In the FIG. 2 embodiment of game software 212, the user controls the actions of a team leader character using controller actions such as actuating buttons or manipulating a joystick. The user inputs spoken commands to control the actions of a two-character team. Team item 332 represents the availability of a team command that selects both members of the two-character team to perform an action. Alpha item 334 represents the availability of a command that selects one member, alpha, to perform an action. Bravo item 336 represents the availability of a command that selects one member, bravo, to perform an action.
The user says the word “team” into the microphone to select team item 332, says the word “alpha” to select alpha item 334, and says the word “bravo” to select bravo item 336. When speech recognition module 214 recognizes one of the level 1 commands, it notifies game software 212, which then displays a level 2 menu command screen.
FIG. 3B is a diagram of one embodiment of a level 2 menu command screen 324 on the display device 310, according to the invention. In the FIG. 3B embodiment, the user has spoken “team” into the microphone to select team item 332. Level 2 menu command screen 324 shows a level 2 menu 340. Level 2 menu 340 includes the previously selected level 1 command (team item 322) and three level 2 commands: a hold position item 342, a deploy item 344, and a fire at will item 346. Although three level 2 command items are shown, game software 212 may use any number of level 2 command items.
Level 2 menu 340 illustrates available commands for the two-character team. The available commands depend upon a current state of the game. For example, if the user verbally selects hold position item 342, then the two-character team will appear to hold their position in the game environment. The next time that the user verbally selects team item 332, hold position item 342 will not appear but a follow item (not shown) will appear instead.
The combination of team item 332 and hold position item 342 is a complete command, so if the user says “hold position” while screen 324 is displayed, game software 212 then stops displaying screen 324 and causes the selected characters to perform the selected action in the game environment (both members of the team hold their position). Similarly, the combination of team item 332 and fire at will item 346 is a complete command, so if the user says “fire at will” while screen 324 is displayed, game software 212 then stops displaying screen 324 and causes the selected characters to perform the selected action in the game environment (both members of the team fire their weapons). The combination of team item 332 and deploy item 344 is not a complete command. If the user says, “deploy” while screen 324 is displayed, game software 212 then displays a level 3 menu command screen.
FIG. 3C is a diagram of one embodiment of a level 3 menu command screen 326 on the display device 310, according to the invention. Level 3 menu command screen 326 shows a level 3 menu 350 that includes a previously selected level 1 command (team item 332), a previously selected level 2 command (deploy 344) and two level 3 commands: frag item 352 and smoke item 354. In the FIG. 2 embodiment of game software 212, the two-character team of foot soldiers can deploy fragment (frag) grenades and smoke grenades. Although only two level 3 commands are shown, game software 212 may include any number of level 3 commands.
The combination of team item 332, deploy item 344, and frag item 352 is a complete command, so if the user says “frag” while screen 326 is displayed, software module 212 stops displaying screen 326 and causes the selected characters to perform the selected action in the game environment (both members of the team deploy a frag grenade). The combination of team item 332, deploy item 344, and smoke item 354 is a complete command, so if the user says “smoke” while screen 326 is displayed, software module 212 stops displaying screen 326 and causes the selected characters to perform the selected action in the game environment (both members of the team deploy a smoke grenade).
Although in FIG. 3C only three menu levels are shown, any number of menu levels is within the scope of the invention. In the preferred embodiment the number of menu levels is three for ease of use and to facilitate learning of the various command combinations. Once the user has learned or memorized all of the various command combinations, the user may play the game without using the command menus (non-learning mode).
As stated above in conjunction with FIG. 2, speech recognition module 214 is context-sensitive. For example, the word “deploy” is in the vocabulary of speech recognition module 214. However, speech recognition module 214 will only recognize the word “deploy” in the context of a level 1 command such as “team” or “alpha.” In other words, speech recognition module 214 will not react to an input level 2 command unless a level 1 command has been input, and will not react to an input level 3 command unless a level 2 command has been input. Thus speech recognition module 212 recognizes sentence-type commands (actor plus action) that game software 212 uses to control actions of the characters in the game environment.
Although FIGS. 3A–3C illustrate command menus 330, 340, and 350 as branching menus that branch from left to right, any other configuration for displaying available commands to the user is within the scope of the invention.
FIG. 4 is a flowchart of method steps for menu-driven voice command of characters, according to one embodiment of the invention. First, in step 412, game software 212 determines whether the user has actuated a controller button assigned to a voice command functionality. If not, then game software 212 continues monitoring the controller button signals. If the button has been actuated, then in step 414 game software 212 determines whether the button has been released. If the button has been released, the method continues in a learning mode with step 416. If the button has not been released, the method continues in a non-learning mode with step 428.
In step 416, game software 212 displays level 1 commands on a level 1 menu command screen. Then in step 418, speech recognition module 214 determines whether the user has verbally input a level 1 command. If not, the method returns to step 416. If the user has verbally input a level 1 command, then in step 420 game software 212 displays level 2 commands on a level 2 menu command screen. In step 422, speech recognition module 214 determines whether the user has verbally input a level 2 command. If not, the method returns to step 420. If the user has verbally input a level 2 command, the method continues with step 424.
If the input level 2 command does not have associated level 3 commands, then in step 438 game software 212 executes the commands, whereby a character or characters in the game environment perform the selected action. If the input level 2 command does have associated level 3 commands, then in step 426 software module 212 displays level 3 commands on a level 3 menu command screen. In step 428, speech recognition module 214 determines whether the user has verbally input a level 3 command. If not, the method returns to step 42. If the user has verbally input a level 3 command, then in step 438 game software 212 executes the commands, whereby a character or characters in the game environment perform the selected action.
In the non-learning mode, the available commands at each level are not displayed to the user. In step 430, speech recognition module 214 determines if the user has verbally input a level 1 command. If not, speech recognition module 214 continues to listen for a level 1 command. If the user has verbally input a level 1 command, then in step 432 speech recognition module 214 determines whether the user has verbally input a level 2 command. If not, speech recognition module 214 continues to listen for a level 2 command. If the user has input a level 2 command, then the method continues with step 434.
If the input level 2 command does not have associated level 3 commands, then the method continues in step 438 where game software 212 executes the commands, whereby a character or characters in the game environment perform the selected action. If the input level 2 command does have associated level 3 commands, then in step 436 speech recognition module 214 determines whether the user has verbally input a level 3 command. If the user has not verbally input a level 3 command, then speech recognition module 214 continues to listen for a level 3 command. If the user has verbally input a level 3 command, then in step 438 game software 212 executes the commands, whereby a character or characters in the game environment perform the selected action.
In the non-learning mode, the user experiences the game environment as if he or she is actually giving verbal instructions to a character or characters, making the gameplay more intuitive and realistic. In one embodiment of game software 212, after the user has given a spoken command to one of the characters, a prerecorded acknowledgement of the command or other audible response is played back to the user via a speaker or headset (not shown).

## Claims

1. A system for voice control of characters in a visually dynamic and interactive gaming environment, comprising:
a microphone operable to receive a plurality of spoken commands from a user, each of the plurality of spoken commands corresponding to a command selection for each level of a plurality of command levels;
a speech recognition module stored in a memory, the speech recognition module configured to recognize the plurality of spoken commands; and
software stored in the memory, the software configured to respond to a complete and uninterrupted command recognized from a vocabulary of commands to control visual actions of at least one character in the visually dynamic and interactive gaming environment, wherein the complete and uninterrupted command is a combination of the plurality of spoken commands from at least two different levels, and wherein the software may be configured to optionally display a menu of available command selections for each level of a plurality of command levels.

2. The system of claim 1, wherein the software displays the menu of available command selections on a display device.

3. The system of claim 1, wherein the software displays a level 1 menu of available level 1 command selections on a display device in response to a signal from a controller device.

4. The system of claim 3, wherein the software displays a level 2 menu of available level 2 command selections on the display device in response to the speech recognition module recognizing the level 1 command selection spoken by the user.

5. The system of claim 4, wherein the software controls the visual actions of the at least one character in response to the speech recognition module recognizing from the vocabulary of commands a combination of the level 1 command selection and the level 2 command selection spoken by the user as the complete and uninterrupted command.

6. The system of claim 4, wherein the software displays a level 3 menu of available level 3 command selections on the display device in response to the speech recognition module recognizing the level 2 command selection spoken by the user.

7. The system of claim 6, wherein the software controls the visual actions of the at least one character in response to the speech recognition module recognizing from the vocabulary of commands a combination of the level 1 command selection the level 2 command selection, and the level 3 command selection spoken by the user as the complete and uninterrupted command.

8. The system of claim 1, further comprising a controller device for inputting commands to the software to control visual actions of a second character.

9. The system of claim 8, wherein the user controls the visual actions of the second character using the controller device and controls the visual actions of the at least one character using the spoken commands.

10. The system of claim 1, wherein the complete and uninterrupted command comprises at least a first word and a second word, the first word corresponding to a first spoken command associated with a selection for a first command level of the plurality of command levels, and the second word corresponding to a second spoken command associated with a selection for a second command level of the plurality of command levels.

11. The system of claim 1, wherein the software is further configured to generate an audible confirmation of recognition of the complete and uninterrupted command once the complete and uninterrupted command is recognized from the vocabulary of commands.

12. A method for controlling visual actions of at least one character in a visually dynamic and interactive gaming environment, comprising:
displaying a plurality of menus of command selections to a user, each menu of the plurality of menus of command selections corresponding to a command level of a plurality of command levels;
recognizing a plurality of utterances, each utterance of the plurality of utterances corresponding to a command selection from each menu of the plurality of menus of command selections, the plurality of utterances collectively representing a complete and uninterrupted command; and
causing the at least one character to perform a visual action corresponding to the complete and uninterrupted command if the plurality of utterances correspond to a complete and uninterrupted command recognized from a vocabulary of commands, wherein the complete and uninterrupted command comprises a combination of command selections from at least two menus of the plurality of menus of command selections.

13. The method of claim 12, wherein one menu of the plurality of menus of command selections comprises a menu of available characters.

14. The method of claim 12, wherein at least one menu of the plurality of menus of command selections comprises a menu of available visual actions for the at least one character, where command selections in the menu of available actions depends upon a state of the visually dynamic and interactive gaming environment.

15. The method of claim 12, wherein recognizing the plurality of utterances includes evaluating a context of the plurality of utterances.

16. The method of claim 12, wherein the complete and uninterrupted command comprises at least two words.

17. The method of claim 12, wherein the complete and uninterrupted command is a sentence-type command.

18. The method of claim 12, further comprising emitting an audible confirmation of recognition of the complete and uninterrupted command once the complete and uninterrupted command is recognized from the vocabulary of commands.

19. A computer-readable medium comprising instructions for controlling visual actions of at least one character in a visually dynamic and interactive gaming environment, the instructions comprising:
displaying a plurality of menus of command selections to a user, each menu of the plurality of menus of command selections corresponding to a command level of a plurality of command levels;
recognizing a plurality of utterances, each utterance of the plurality of utterances corresponding to a command selection from each menu of the plurality of menus of command selections, the plurality of utterances collectively representing a complete and uninterrupted command; and
causing the at least one character to perform a visual action corresponding to the complete and uninterrupted command if the plurality of utterances correspond to a complete and uninterrupted command recognized from a vocabulary of commands, wherein the complete and uninterrupted command comprises a combination of command selections from at least two menus of the plurality of menus of command selections.

20. The computer-readable medium of claim 19, wherein one menu of the plurality of menus of command selections comprises a menu of available characters.

21. The computer readable-medium of claim 19, wherein at least one menu of the plurality of menus of command selections comprises a menu of available visual actions for the at least one character, where command selections in the menu of available actions depends upon a state of the visually dynamic and interactive gaming environment.

22. The computer-readable medium of claim 19, wherein recognizing the plurality of utterances includes evaluating a context of the plurality of utterances.

23. The computer-readable medium of claim 19, wherein the complete and uninterrupted command comprises at least two words.

24. The computer-readable medium of claim 19, wherein the complete and uninterrupted command is a sentence-type command.

25. The computer-readable medium of claim 19, further comprising instructions for causing the emission of an audible confirmation of recognition of the complete and uninterrupted command once the complete and uninterrupted command is recognized from the vocabulary of commands.

26. A system for controlling visual actions of at least one character in a visually dynamic and interactive gaming environment, comprising:
means for displaying a plurality of menus of command selections to a user, each menu of the plurality of menus of command selections corresponding to a command level of a plurality of command levels;
means for recognizing a plurality of utterances, each utterance of the plurality of utterances corresponding to a command selection from each menu of the plurality of menus of command selections, the plurality of utterances collectively representing a complete and uninterrupted command; and
means for causing the at least one character to perform a visual action corresponding to the complete and uninterrupted command if the plurality of utterances correspond to a complete and uninterrupted command recognized from a vocabulary of commands, wherein the complete and uninterrupted command comprises a combination of command selections from at least two menus of the plurality of menus of command selections.

27. The system of claim 26, wherein one menu of the plurality of menus of command selections comprises a menu of available characters.

28. The system of claim 26, wherein at least one menu of the plurality of menus of command selections comprises a menu of available visual actions for the at least one character, where command selection in the menu of available actions depends upon a state of the visually dynamic and interactive gaming environment.

29. The system of claim 26, wherein the means for recognizing the plurality of utterances evaluates a context of the plurality of utterances.

30. The system of claim 26, wherein the complete and uninterrupted command comprises at least two words.

31. The system of claim 26, wherein the complete and uninterrupted command is a sentence-type command.

32. The system of claim 26, wherein the means for recognizing the plurality of utterances is a speaker-independent context-sensitive speech recognizer.

33. The system of claim 26, wherein the plurality of menus of command selections is displayed to the user as a branching menu.

34. The system of claim 26, further comprising means for emitting an audible confirmation of recognition of the complete and uninterrupted command once the complete and uninterrupted command is recognized from the vocabulary of commands.