Embodiments are directed to systems and methods for controlling a game character in a video game using a control device and, more particularly, to systems and methods that allow a player to define a desired operator controlled movement of the game character and assign the defined movement to a macro button of the control device.
Control devices, such as computer mice, keyboards and game controllers, are used for controlling game characters in video games. Some video games provide pre-programmed actions such as a punch or kick, a glance in a rear-view mirror of a race car, etc., that are pre-assigned to a particular button of the control device by the video game application. It is not necessary for the operator of the controller to do anything more than press the assigned button to execute these preprogrammed moves.
Other game character movements are not preprogrammed and are continuously adjustable using the controller. These non-programmed movements generally include the orientation of the game character's view of the game environment and the direction and speed in which the game character moves.
The orientation of the game character's view of the game environment can generally be moved left, right, up or down. In some games, the player must constantly be moving the orientation of a game character's view. For instance, in a fast paced first-person shooter game, the player is often forced to move the game character's view continuously to locate predatory characters that may be to the side or behind the game character.
There is continuous need for more efficient game controls, particularly as the complexity of the controls and the speed of game play increases.
The discussion above is merely provided for general background information and is not intended to be used as an aid in determining the scope of the claimed subject matter.
Embodiments are generally directed to control systems and methods for allowing a player to calibrate a desired operator-controlled movement of an orientation of a character view of a game character of a game environment and assign the calibrated movement to a macro button 180 of a control device. One embodiment of the control system comprises a control device comprising a programmable macro button, a memory containing view change settings, a driver program and a microprocessor. The driver program includes a view change output that is produced in response to actuation of the macro button and is based on the view change settings. The microprocessor is configured to move the orientation of the character view of the game environment from a beginning orientation to an ending orientation in response to the view change output.
In one embodiment of the method, a view orientation move is calibrated comprising storing view change settings in memory. A view change output is produced in response to actuation of a macro button of a control device. The orientation of the character view of the game environment is then moved from a beginning orientation to an ending orientation based on the view change settings in response to the view change output.
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 or essential 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. The claimed subject matter is not limited to implementations that solve any or all disadvantages noted in the background.
The microprocessor 116 represents one or more devices that are configured to control the operations of the game system 100 and the control system 108. The microprocessor 116 may be a component of a personal computer, a game console (e.g., Xbox 360) or other computing device. Exemplary operations that could be performed by the microprocessor 116 include data communications in the system 100 including data communications with accessible memory of the system, such as memory 104A, 104B and 104C; network data communications; responses to input signals 118 received from one or more of the control devices 110; the execution of instructions stored on a tangible medium, such as the instructions of the video game application 102 and the driver program 112; the generation of output signals that control one or more output devices, such as a display signal 120 that controls the display 106; and other functions.
The memories 104A-C represent physical storage mediums that can be separate from each other or combined. The physical storage mediums 104A-C can take on many different forms, such as CD-ROM's, digital versatile disks (DVD) or other optical disk storage media, flash memory drives, hard drives, RAM, ROM, EEPROM, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired video game application 102, driver program 112 and the view change settings 114.
The control device 110 may be any suitable input device to the control system 108 for controlling operations of a game character within the game environment of the video game. Embodiments of the control device 110 include a computer mouse 122, a game controller (i.e., a control device that is generally dedicated to gaming) 124 and a keyboard 126, which are respectively illustrated in
Exemplary control components 128 of the mouse 122 include buttons 132, a scroll wheel 134, the mechanical or optical components (not shown) that translate lateral or side-to-side movement of the mouse into movement of the game character, and other components. Exemplary control components of the game controller 124 include buttons 136, a directional pad 138, a joystick 140, finger triggers (not shown) and other components. Exemplary control components 128 of the keyboard 126 include the keys 142, such as the arrow keys 142A-D, and other components.
As discussed above, the video game application assigns predefined actions to the control components 128 of the control device 110. The actuation of some of the control components 128 results in the execution of the predefined action of the game character, such as a jump or a kick, for example. Other movements of the game character in response to actuation of some of the control components 128 include operator or player controlled movements that do not fall into this predefined action category, such as the orientation of the game character's view and the direction and speed at which the game character travels.
The video game application 102 can comprise any game in which embodiments are useful. Exemplary video games include first-person games (e.g., Halo®, racing games), in which the display 106 presents the player (i.e., the operator of the control device) a view of the game environment as seen by the game character (i.e., human, creature, mechanical device, etc.) he or she controls, and third-person games (e.g., role playing games such as Dungeon Siege® II), in which the display 106 presents a distant view of the game character within the game environment. Whether the video game provides a first-person display of the game environment or a third-person display of the game environment, the game character has a view (hereinafter “character view”), which has a particular orientation.
When the video game application 102 produces a third-person game, the display 106 presents the game character 144 (only a portion shown) and the surrounding game environment 146. The third-person game character 144 has a “view” of the game environment corresponding to the orientation of the game character's “head” or “eyes”, for example. Thus, movements of the head of the third-person game character results in a movement of the orientation of the game character view.
The movement of the orientation of the third-person game character view can be important in, for example, role playing games where the game character 144 can interact with other objects and inhabitants of the game environment 146. Typically, the interaction between the game character 144 and an object or inhabitant of the environment 146 is driven, in part, by the orientation of the character view 148 or where the game character is “looking”.
As mentioned above, the orientation of the first-person or third-person character view of the game environment 146, represented by the arrow 150 in
Additionally, the orientation 150 of the character view may also pivot upward and downward about an axis 162, as represented by the arrow 164 in the simplified side view of the game character 144 shown in
The movements of the orientation 150 of the character view may also include both the rotation about the vertical axis 152 and the pivoting about the axis 162 in response to the actuation of one or more of the control components 128 of the device 110.
When the control device 110 is a computer mouse, such as mouse 122 shown in
When the controller is a game controller, such as game controller 124 shown in
When the controller is a keyboard, such as the keyboard 126 shown in
The signals 118 produced by the control device 110 in response to actuations of the control components 128 that result in movements of the orientation 150 of the character view generally provide distance and direction information to the driver program 112 in accordance with conventional methods. The distance and direction information generally comprises a linear count of distance units in the given direction over a unit of time. The driver program 112 translates the distance and direction information from the signals 118 into movement information 184 (
When the control component 128 is a button, such as an arrow button 142A-D of the keyboard 126 (
When the control component 128 corresponds to the components of the mouse 122 that detect travel of the mouse across the surface 171, the signals 118 produced in response to such movement of the mouse 122 indicate distances traveled in the directions 170 or 174 in which the mouse 122 is moved. The signals 118 also provide speed information based on the distance traveled by the mouse 122 per unit of time. Each unit of distance the mouse travels in a given direction 170 or 174 is translated by the driver program into the movement information 184 that moves the orientation 150 of the character view, as presented on the display 106, an amount and direction as determined by the video game application 102.
When the control component 128 is a directional pad 138 or a joystick 140 of the game controller 124, the signals 118 generally indicate a direction in which the pad 138 or joystick 140 is deflected. The amount of the deflection from the quiescent state of the pad 138 or joystick 140 can be used to indicate a speed of the desired movement. The driver program 112 translates the direction, distance and speed of movement indicated by the signals 118 and provides the resultant movement information 184 to the microprocessor, which operates to move the orientation 150 in accordance with the video game application 102.
Embodiments are directed to systems, such as control system 108, and methods for allowing a player to calibrate a desired operator-controlled movement of the orientation 150 of the game character view and assign the calibrated movement to a macro button 180 (
One advantage of this “quick turn” feature is that it reduces the complexity of the controls for the video game by eliminating the need to use the control components 128 to execute a desired movement of the orientation 150. For instance, in fast-paced first-person “shooter” video games, the player must constantly be looking for predator game characters in the game environment including performing 180 degree turns about the vertical axis 152 to see if anyone is lurking behind the game character. Embodiments allow the player to set the view change settings 114 such that the game character performs the desired 180 degree turn of the orientation 150 in response to actuation of the macro button 180. The use of the macro button thus frees the player from having to concentrate on making the desired 180 degree rotational movement of the orientation 150 using the control components 128 of the control device 110.
Thus, in one embodiment of the control system 108, the control device 110 includes the macro button 180. Actuation of the macro button 180 produces a macro actuation signal 182 (
At step 200, a view orientation move is calibrated including storing the view change settings 114 in memory 104C (
In one embodiment, the beginning orientation 186 corresponds to the orientation 150 of the character view during game play when the macro button 180 is actuated. The orientation 140 then moves to the ending orientation 188, based on the view change settings, during play of the video game 102.
In order to simplify the discussion of the embodiments, the movement of the orientation 150 in accordance with embodiments will be described with reference to rotations about a single axis 210, shown in
One embodiment of the calibrating step 200 is illustrated in the flowchart of
In one embodiment, the calibration routine is started during play of the video game 102. Upon starting the calibration routine, the orientation 150 of the character view has a beginning orientation 214, shown in
At step 214, the orientation 150 of the character view is moved from a beginning orientation 216 to an ending orientation 218 about an axis 220 as indicated by arrow 221 during play of the video game, as illustrated in
In one embodiment, the movement of the orientation 150 of the character view in step 214 comprises adjusting the orientation 150 of the character view using a control component 128 of the control device 110 that are generally pre-set to perform the desired movement of the orientation 150 during play of the video game 102. Thus, the movement of the orientation 150 of the character view is performed without the use of the macro button 180.
When the control device 110 is in the form of a computer mouse 122 (
At step 222, the calibration routine is ended. The ending orientation 218 corresponds to the orientation of the character view upon ending the calibration routine. In one embodiment, the calibration routine is ended by actuating the macro button 180.
At step 224, the view change settings 114 are produced based on the movement of the orientation 150 of the character view in step 214 and the view change settings are stored in the memory 104C at step 226. In one embodiment, the view change settings 114 based on a difference between the beginning orientation 216 and the ending orientation 218. Because the distance and direction information provided by the signals 118 of the control device 110 that correspond to movement of the orientation 150 are generally a linear count of distances units in the given direction over a unit of time, the difference between the first and second orientations can be obtained by simply subtracting the position value of the first orientation from the position value of the second orientation. The sign of the resulting difference indicates the direction in which the orientation 150 was moved. For instance, the beginning orientation 216 and the ending orientation 218 may have a set angular position relative to a reference 228. In that case, the difference between the beginning and ending orientations 216 and 218 is equal to the angular position of the ending orientation 218 relative to the reference 228 less the angular position of the beginning orientation 216 relative to the reference.
In one embodiment, the movement of the orientation 150 in step 204 following actuation of the macro button 180 matches the movement of the orientation 150 during the moving step 214. That is the view change settings 114 are set to rotate the orientation 150 from the beginning orientation 186 in response to actuation of the macro button 180 by an amount that matches the difference between the beginning and ending orientations 216 and 218 set during the calibration routine.
In one embodiment of step 214, the player uses the control component 128 of the control device 110 to move the orientation 150 of the character view about the vertical axis 152 approximately 360 degrees during step 188. This is helpful when it is desired to have the view change settings indicate 180 degree and other specific angular turns. For instance, during play of a first-person video game, it may be desired to program the macro button 180 to perform a 180 degree turn to allow the game character to quick take a look behind him or her. However, the game environment 146, in which the game character resides, may make it difficult to determine within a real precision a 180 degree turn from the beginning orientation of the calibration routine. By having the player move the orientation 150 a full 360 degrees from the beginning orientation of the calibration routine, the view change settings can be set to one half the measured movement during the calibration routine to more precisely set the desired 180 degree turn.
In accordance with another embodiment, the view change settings 114 are set such that the movement of the orientation 150 in the moving step 204 does not match the difference between the beginning and ending orientations 216 and 218 set during the calibration routine. In one embodiment, the view change settings 114 are set such that the orientation 150 moves a fraction of the difference between the beginning and ending orientations 216 and 218 set during the calibration routine. Embodiments of the fraction include one-fourth, one-half and three-fourths of the difference between the beginning and ending orientations 216 and 218.
In one embodiment, the view change settings 114 are configured to move the orientation 150 one-half of the difference between the beginning and ending orientations 216 and 218 achieved during the moving step 214. This embodiment is particularly useful when it is desired to set the quick turn feature to execute a 180 degree turn upon actuation of the macro button 180 when it is difficult to know the degree to which the orientation 150 of the character view of the game character 144 has rotated from the beginning position 216 during the moving step 214. In accordance with this embodiment, the player rotates the orientation 150 of the character view a full 360 degrees during play of the video game 102 (hereinafter “360 degree calibration”), such that the beginning and ending orientations 216 and 218 are approximately aligned with each other, as illustrated in
In accordance with another embodiment, following the 360 degree calibration, the view change settings 114 produced in step 224 are configured to move the orientation from the beginning orientation 186 one quarter of the 360 degree calibrated turn or approximately 90 degrees to the ending orientation 188 during the moving step 204. This quarter turn allows the player to take a quick look to the side through actuation of the macro button 180.
In yet another embodiment, following the 360 degree calibration, the view change settings 114 produced in step 224 are configured to move the orientation from the beginning orientation 186 three quarters or approximately 270 degrees to the ending orientation 188 during the moving step 204. This three quarter turn allows the player to look to the opposite side of the game player 144 than that produced by the above-described quarter turn. Alternatively, this three quarter turn can be accomplished using the one quarter turn values for the view change settings 114, but with a change in the designated direction, such that the view 150 is moved in the opposite direction than that of the quarter turn described above.
In one embodiment of the method illustrated in
In one embodiment, the view change output 184 is generated in response to a subsequent actuation of the macro button 180. That is, following a first actuation of the macro button 180, which triggers the moving step 204, a second actuation of the macro button 180 triggers the moving step 230 and the microprocessor 116 moves the orientation 150 from the ending orientation 188 to the beginning orientation 186.
In accordance with another embodiment, the view change output 184 is generated automatically by the driver program 112 after a predetermined period of time following the moving step 204. Thus, after the player initially actuates the macro button 180, the orientation 150 moves from the beginning orientation 186 to the ending orientation 188. Then, after the predetermined period of time, the microprocessor 116 moves the orientation 150 from the ending orientation 188 back to the beginning orientation 186.
In one embodiment, the actuation of the macro button 180 to trigger the moving step 204 comprises pressing and holding the macro button 180. That is, the pressing and holding of the macro button 180 causes the production of the view change output (movement information 184), which in turn causes the microprocessor 116 to move the orientation 150 from the beginning orientation 186 to the ending orientation 188. While the macro button 180 is held, the orientation remains substantially in the ending orientation 188, unless possibly adjusted through actuation of one of the control components 128 of the control device 110. The release of the macro button 180 causes the driver program 112 to produce the view return output (movement information 184) and the microprocessor responds by moving the orientation 150 from the ending orientation 188 to the beginning orientation 186, in accordance with step 230.
In accordance with one embodiment, the driver program 112 comprises instructions executable by the microprocessor to generate a graphical user interface, which can be used by the player to configure the quick turn settings.
In accordance with another embodiment, the speed at which the quick turn (step 204) is executed is automatically set to the speed at which it was performed by the player during the calibration routine (step 200). In another embodiment, the speed at which the quick turn (step 204) is executed is automatically set to a predefined value.
In yet another embodiment, the speed at which the quick turn (step 204) is execute is user-selectable. In one embodiment, the graphical user interface 240 includes a turn speed setting 245 where the user may select the desired speed at which the quick turn is performed. In on embodiment, the turn speed setting comprises a slide bar 246 that is adjustable between slow and fast speed settings. Other embodiments include the display of discrete speed settings, such as “slow”, “normal” and “fast” (not shown).
In accordance with another embodiment of the invention, the user may select direction in which the quick turn is performed about the axis 210 (
In accordance with one embodiment, the control device includes a plurality of macro buttons, such as macro button 180 and macro button 250, shown in
In one embodiment, the macro buttons 180 and 250 comprise a macro button pair, in which the actuation of the macro button 180 results in the quick turn (steps 202 and 204) to be performed in the clockwise direction about the axis 210 (
In one embodiment, the scroll wheel 134 of the mouse 122 (
Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.