US20110159958A1 - Game device, method for controlling game, game control program and computer readable recording medium storing program - Google Patents
Game device, method for controlling game, game control program and computer readable recording medium storing program Download PDFInfo
- Publication number
- US20110159958A1 US20110159958A1 US13/055,692 US200913055692A US2011159958A1 US 20110159958 A1 US20110159958 A1 US 20110159958A1 US 200913055692 A US200913055692 A US 200913055692A US 2011159958 A1 US2011159958 A1 US 2011159958A1
- Authority
- US
- United States
- Prior art keywords
- vibration
- input
- game
- determination
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/40—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
- A63F13/42—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/40—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
- A63F13/42—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
- A63F13/428—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle involving motion or position input signals, e.g. signals representing the rotation of an input controller or a player's arm motions sensed by accelerometers or gyroscopes
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
- A63F13/21—Input arrangements for video game devices characterised by their sensors, purposes or types
- A63F13/211—Input arrangements for video game devices characterised by their sensors, purposes or types using inertial sensors, e.g. accelerometers or gyroscopes
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
- A63F13/24—Constructional details thereof, e.g. game controllers with detachable joystick handles
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/25—Output arrangements for video game devices
- A63F13/28—Output arrangements for video game devices responding to control signals received from the game device for affecting ambient conditions, e.g. for vibrating players' seats, activating scent dispensers or affecting temperature or light
- A63F13/285—Generating tactile feedback signals via the game input device, e.g. force feedback
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/40—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
- A63F13/44—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment involving timing of operations, e.g. performing an action within a time slot
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/80—Special adaptations for executing a specific game genre or game mode
- A63F13/816—Athletics, e.g. track-and-field sports
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/10—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
- A63F2300/1037—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being specially adapted for converting control signals received from the game device into a haptic signal, e.g. using force feedback
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/10—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
- A63F2300/1043—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being characterized by constructional details
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/10—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
- A63F2300/105—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals using inertial sensors, e.g. accelerometers, gyroscopes
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/60—Methods for processing data by generating or executing the game program
- A63F2300/6045—Methods for processing data by generating or executing the game program for mapping control signals received from the input arrangement into game commands
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/60—Methods for processing data by generating or executing the game program
- A63F2300/63—Methods for processing data by generating or executing the game program for controlling the execution of the game in time
- A63F2300/638—Methods for processing data by generating or executing the game program for controlling the execution of the game in time according to the timing of operation or a time limit
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/80—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
- A63F2300/8005—Athletics
Definitions
- the present invention relates to a game device, a control method of controlling a game in the game device, a program controlling the game and a computer-readable recording medium storing the program, all of which detect a game operation of the player from an input signal or the like, and cause a computer of the game device to execute game processing on the basis of the detected input signal.
- operation input a method of detecting an operation of the player to play a game
- detection methods with reference to a plurality of operation means such as a detection with reference to a button pressing operation, a detection with reference to the player stepping operation, a detection with reference to images of the player in motion taken by a camera, a detection of vibration resulting from a tap motion by the player, and the like.
- the player can carry out his desired game operation by appropriately operating a button or a specific site on a console platform for stepping operation (for example, a pedal or the like) necessary to provide operation input (see Patent Document 1 and Patent Document 2).
- Patent Document 1 or Patent Document 2 have the disadvantages that the player must hold a device required to provide operation input (controller) and learn the functions of the buttons required for operation input in order to carry out the operation.
- Game operation performed by the appropriate operation of a specific site of a platform involves the disadvantage that, unless the player learns the specific site on the platform, the player cannot carry out the game operation for an actual game. Therefore, the necessity for the player to hold a device required for operation input by hand or the necessity for the player to memorize various motions for providing operation input is a considerable burden on players who cannot hold a device necessary for operation input for some reason or who are beginners in game, which is one of the causes of losing interest in games.
- the present invention has been made in view of the above circumstances. It is an object of the present invention to provide a game device, a method for controlling a game of the game device, a program controlling the game and a computer-readable recording medium storing the program, which use a widely available, versatile operation device, in particular, vibration detecting means for detecting vibration, to detect a vibration signal without use of a special game device as described above, in particular, of a special game operation device, and determine it as an operation signal for controlling a game in order to enable players to operate the game without learning the use of various buttons or a specific site on a console platform which are necessary to input the operation signal.
- vibration detecting means for detecting vibration to detect a vibration signal without use of a special game device as described above, in particular, of a special game operation device, and determine it as an operation signal for controlling a game in order to enable players to operate the game without learning the use of various buttons or a specific site on a console platform which are necessary to input the operation signal.
- an invention according to claim 1 provides a game device, comprising:
- control means for controlling game progress on the basis of the operation input information
- the input means comprises vibration detection means for detecting vibration applied to the input means
- control means comprises vibration level determination means for determining a level of a vibration detection signal detected by the vibration detection means, and
- control means executes game control using determination information determined by the vibration level determination means as the operation input information received from the input means.
- An invention according to claim 2 provides a game device, comprising:
- control means for controlling game progress on the basis of the operation input information
- the input means comprises,
- vibration detection means for detecting vibration applied to the input means
- vibration level determination means for determining a level of a vibration detection signal detected by the vibration detection means
- control means executes game control using determination information determined by the vibration level determination means as the operation input information received from the input means.
- An invention according to claim 3 provides a game device, comprising:
- control means for controlling game progress on the basis of the operation input information
- the input means comprises vibration detection means for detecting vibration applied to the input means
- control means comprises
- vibration pattern determination means for determining one or more level pattern of a vibration detection signal detected by the vibration detection means
- special input command determination means for determining whether or not an array corresponding to time sequence of information relating to the level pattern determined by the vibration pattern determination means matches a special input command previously set
- control means executes game control using the special input command matching determined by the special input command determination means as the operation input means received from the input means.
- An invention according to claim 4 provides a game device, comprising:
- control means for controlling game progress on the basis of the operation input information
- the input means comprises
- vibration detection means for detecting vibration applied to the input means
- vibration pattern determination means for determining one or more level patterns of a vibration detection signal detected by the vibration detection means
- control means comprises special input command determination means for determining whether or not an array corresponding to time sequence of information relating to the level pattern determined by the vibration pattern determination means matches a special input command previously set, and
- control means executes game control using the special input command matching determined by the special input command determination means as the operation input means received from the input means.
- An invention according to claim 5 relates to the game device according to any of claim 1 or claim 2 , wherein
- the input means comprises vibration generation means
- control means comprises
- mounting determination means for determining that the input means is mounted on an installable mounting site when a vibration detection signal of a previously-set first predetermined value or less is received for a certain time-period from the vibration detection means
- vibration generation means for allowing the vibration generation means mounted on the mounting site to generate a first vibration for a predetermined time on the basis of a determination result by the mounting determination means
- natural-vibration value calculation means for calculating a natural vibration value in the mounting site from the vibration detection signal of the first vibration detected by the vibration detection means
- vibration correction value calculation means for correcting a vibration detection signal of a second vibration applied to the mounting site as the operation input information detected by the vibration detection means, on the basis of the natural vibration value
- the vibration level determination means determines the level on the basis of the vibration detection signal of the second vibration corrected by the vibration correction value calculation means.
- An invention according to claim 6 relates to the game device according to any of claim 3 or claim 4 , wherein
- the input means comprises vibration generation means
- control means comprises
- mounting determination means for determining that the input means is mounted on an installable mounting site when a vibration detection signal of a previously-set first predetermined value or less is input for a certain time-period from the vibration detection means
- vibration generation means for allowing the vibration generation means mounted on the mounting site to generate a first vibration for a predetermined time on the basis of a determination result by the mounting determination means
- natural-vibration value calculation means for calculating a natural vibration value in the mounting site from the vibration detection signal of the first vibration detected by the vibration detection means
- vibration correction value calculation means for correcting a vibration detection signal of a second vibration applied to the mounting site as the operation input information detected by the vibration detection means, on the basis of the natural vibration value
- the vibration pattern determination means determines the level pattern on the basis of the vibration detection signal of the second vibration corrected by the vibration correction value calculation means.
- An invention according to claim 7 relates to the game device according to claim 6 , wherein the vibration pattern determination means comprises input vibration classification means for classifying the corrected vibration detection signal of the second vibration in one or more level patterns with use of intensity as a criterion by a level of the corrected vibration detection signal of the second vibration.
- An invention according to claim 8 relates to the game device according to claim 6 , wherein the vibration pattern determination means comprises tap/rest setting means for making a level of the corrected vibration detection signal of the second vibration correspond to an elapsed time axis to set a level pattern including a tap input period in which it is determined that the vibration detection signal has been input, and a rest period in which the vibration detection signal has not been input.
- An invention according to claim 9 relates to the game device according to claim 7 , further comprising storage means,
- the vibration pattern determination means comprises
- vibration correction value storage means for sequentially storing the vibration detection signals of the second vibration corrected by the vibration correction value calculation means in time sequence order in the storage means as a third vibration detection signal
- level pattern threshold calculation means for calculating a threshold used for classification for determining which level pattern the third vibration detection signal belongs to, on the basis of one or more piece of information including newest information on the third vibration detection signals stored in time sequence by the vibration correction value storage means, and
- level pattern storage means for determining which level pattern the newest third vibration detection signal after correction belongs to, on the basis of the calculated threshold, and storing information relating to the determined level pattern in the storage means.
- An invention according to claim 10 relates to the game device according to claim 8 , further comprising storage means,
- control means comprises
- tap time-interval storage means for, regarding the vibration detection signal of the second vibration corrected by the vibration value calculation means, sequentially storing, in time sequence order, time intervals at which the vibration detection signals of the second vibration adjacent to each other in time sequence are input in the storing means,
- rest determination time correction means for calculating a corrected rest determination time corrected, on the basis of the time interval and/or a previously-set rest determination time stored in the tap time-interval storage means, when it is determined that the vibration detection signal is not input, and
- rest period determination means for determining, as the rest period, the elapsed time axis along which it is determined that the vibration detection signal is not input, when it is determined that a difference time value S between a current time value and a time value input by the vibration detection signal of the second vibration is larger than the corrected rest determination time.
- An invention according to claim 11 relates to the game device according to any of claims 1 to 4 , further comprising
- conversion value calculation means for calculating a conversion value on the basis of a predetermined equation when the vibration detection signal detected by the vibration detection means is equal to or less than a second predetermined value.
- An invention according to claim 12 relates to the game device according to any of claims 1 to 4 , further comprising
- associated vibration setting means for measuring vibration detection signals predetermined times detected by the vibration detection means, and when the input means detects one-time vibration, for setting vibration detected except for the one-time vibration as associated vibration generated with the one-time vibration, on the basis of the vibration detection signals measured predetermined times.
- an invention according to claim 13 provides a method of controlling game progress in a game device including input means having vibration detection means for detecting vibration, comprising
- a vibration level determination step of determining a level pattern of a vibration value detected by the vibration detection means to obtain determination information
- a vibration-level-determination-based game-control step of controlling execution of a game by use of the determination information obtained by the vibration level determination step as game control information.
- An invention according to claim 14 provides a method of controlling game progress in a game device including input means having vibration generation means and vibration detection means for detecting vibration, comprising
- a natural-vibration value calculation step of calculating a natural vibration value in the mounting site from a first vibration value based on the first vibration detected by the vibration detection step;
- a correction value calculation step of calculating a correction value on the basis of a second vibration value based on the second vibration and the natural vibration value
- a correction value operation conversion step of converting operation input information based on the correction value into game control information.
- An invention according to claim 15 relates to the method of game control according to claim 14 , comprising:
- a vibration pattern determination step of determining one or more level patterns of the correction value calculated in the correction value calculation step
- a special input commend determination step of determining whether or not an array corresponding to time sequence of information relating to the level pattern determined in the vibration pattern determination step matches a previously-set special input command
- An invention according to claim 16 relates to the method of game control according to claim 14 , wherein the vibration pattern determination step comprises input vibration classification step of classifying the corrected vibration detection signal of the second vibration in one or more level patterns with use of intensity as a criterion by a level of the corrected vibration detection signal of the second vibration.
- An invention according to claim 17 relates to the method of game control according to claim 14 , wherein the vibration pattern determination step comprises tap/rest setting step of making a level of the corrected vibration detection signal of the second vibration correspond to an elapsed time axis to set a level pattern including a tap input period in which it is determined that the vibration detection signal has been input, and a rest period in which the vibration detection signal has not been input.
- An invention according to claim 18 provides a program of controlling game progress in a game device including input means having vibration detection means for detecting vibration, comprising
- a vibration level determination program of determining a level pattern of a vibration value detected by the vibration detection means to obtain determination information
- a vibration-level-determination-based game-control program of controlling execution of a game by use of the determination information obtained by the vibration level determination program as game control information.
- An invention according to claim 19 provides a program of controlling game progress in a game device including input means having vibration generation means and vibration detection means for detecting vibration, comprising
- a mounting determination program having a step of determining that the input means is mounted on an installable mounting site when a vibration value of a previously-set predetermined value or less is detected for a certain time-period by the vibration detection means;
- a vibration start program having a step of starting a first vibration by the vibration generation means on the basis of a determination result in the mounting determination program
- a vibration detection program having a step of actuating the vibration detection means to detect the first vibration when the first vibration occurs by the vibration start program;
- a natural-vibration value calculation program having a step of calculating a natural vibration value in the mounting site from a first vibration value based on the first vibration detected by the vibration detection program;
- a correction value calculation program that has, when the vibration detection means detects a second vibration applied to the mounting site and used for operation input, a step of calculating a correction value on the basis of a second vibration value based on the second vibration and the natural vibration value;
- a correction value operation conversion program having a step of converting operation input information based on the correction value into game control information.
- An invention according to claim 20 relates to the program of game control according to claim 19 , which comprises:
- a vibration pattern determination program having a step of determining which level pattern of one or more level patterns the correction value calculated by the correction value calculation program corresponds to;
- a special input signal determination program having a step of determining whether or not an array corresponding to time sequence of information relating to the level pattern determined by the vibration pattern determination program matches a previously-set special input command
- a command execution program having a step of executing game control by use of the special input command determined to match by the special input signal determination program as the operation input information input from the input means.
- An invention according to claim 21 relates to the program of game control according to claim 19 , wherein the vibration pattern determination program comprises input vibration classification program having a step of classifying the corrected vibration detection signal of the second vibration in one or more level pattern with use of intensity as a criterion by a level of the corrected vibration detection signal of the second vibration.
- An invention according to claim 22 relates to the program of game control according to claim 19 , wherein the vibration pattern determination program comprises tap/rest setting program having a step of making a level of the corrected vibration detection signal of the second vibration correspond to an elapsed time axis to set a level pattern including a tap input period in which it is determined that the vibration detection signal has been input, and a rest period in which the vibration detection signal has not been input.
- An invention according to claim 23 provides a computer-readable recording medium storing the program according to any of claim 18 to claim 22 .
- the computer-readable recording medium includes a recording medium capable of recording data of a program such as an optical disc including a CD-ROM, a DVD and the like, a flash memory, a RAM, a ROM, a magnetic disc drive and the like.
- the aforementioned input means is an input device capable of accepting various input operations of a player, for example, an input device including a remote controller, a controller and the like.
- the first predetermined value means a threshold for detecting primitive (natural occurrence) vibration without application of vibration generated by vibration start means to a mounting site, and also irrespective of operation of the player.
- the second predetermined value means a value serving as a reference for input as an operation signal, which is greater than the vibration in the mounting site (first predetermined value) out of the vibrations detected by the vibration detection means.
- a detected vibration value equal to or less than the first predetermined value is assumed as a naturally generated vibration value and is not employed as operation input signal.
- a conversion process is performed by predetermined procedure in order to use the vibration value as a game control signal, so that the converted information is used as the operation input signal to execute game control.
- the aforementioned game control program based on the vibration level determination refers to a program for controlling a previously set game for each piece of determination information determined in the aforementioned vibration level determination step (or by vibration level program).
- the game control program based on the vibration level determination refers to, for each piece of determination information, for example, a program for displaying a presentation of moving image of a small-scaled firework on the monitor, a program for displaying a presentation of moving image of continuous launching of large-scaled fireworks on the monitor, or the like.
- a game device comprising input means capable of acquiring operation input in a game as operation input information, and control means for controlling game progress on the basis of the operation input information.
- the input means comprises vibration detection means for detecting vibration applied to the input means, and determination means for determining a level of the vibration value detected by the vibration detection means.
- the control means changes the result of the determination by the determination means to be used as operation input information in the input means for game control information.
- the input means may include only the essential structure (vibration detection means), resulting in simplification of the structure of the input means.
- the input means determines a level of a vibration
- the input means can additionally determine the vibration. Accordingly, the control means simply use the determination result by the input means (the result by the vibration determination) as the operation input information, resulting in a reduction in load on the control means for the game control processing.
- Means for classifying vibration subsequently applied in time sequence to the mounting base or the like into intensity patterns is provided.
- Means for dividing the vibration sequentially applied in time sequence to the mounting base or the like (that is, “tap rhythm”) into two periods, one being a tap period in which vibration is detected according to elapsed time and the other being a rest period in which vibration is not detected.
- tap rhythm the vibration sequentially applied in time sequence to the mounting base or the like
- This means makes it possible to provide a game device with new attractive ideas enabling execution of special game control, although the operation method is simple in that when an array of time sequence order of the tap period and the rest period corresponding to tap rhythm of the player matches a command previously set, the rhythm of a tap motion changes simply.
- FIG. 1 is an external view illustrating a game system 1 according to an embodiment of the present invention.
- FIG. 2 is a function block diagram illustrating the hardware configuration of a game device 3 forming part of the game system 1 according to the embodiment.
- FIGS. 3A , 3 B are perspective views of the top surface and the underside of a controller 7 forming part of the game system 1 according to the embodiment when viewed from the rear end.
- FIGS. 4A , 4 B are likewise perspective views illustrating the controller 7 forming part of the game system 1 according to the embodiment, without its upper housing element and lower housing element.
- FIG. 5 is likewise a function block diagram illustrating the hardware configuration of the controller 7 forming part of the game system 1 according to the embodiment.
- FIGS. 6A , 6 B are diagrams illustrating an example of a screen in a game assumed by the game system 1 according to the embodiment.
- FIGS. 7A , 7 B are likewise diagrams illustrating an example of a screen in a game made up by the game system 1 according to the embodiment.
- FIG. 8 is a diagram illustrating an example of a structure of a program controlling a game stored in the game device 3 forming part of the game system 1 according to the embodiment.
- FIG. 9A is a flowchart illustrating an example of the procedure for controlling the game in the control program stored in the game device 3 forming part of the game system 1 according to the embodiment
- FIG. 9B is a diagram illustrating an example of a menu screen displayed on a monitor by the control program.
- FIG. 10 is likewise a flowchart illustrating an example of the procedure for controlling a game in the control program.
- FIG. 11 is likewise a flowchart illustrating an example of the procedure for controlling a game in the control program.
- FIG. 12 is likewise a flowchart illustrating an example of the procedure for controlling a game in the control program.
- FIGS. 13A , 13 B are graphs showing changes in vibration values in each mounting place of the controller 7 of the game system 1 according to the embodiment, FIG. 13A showing when the controller 7 is mounted on a hard surface and FIG. 13B showing when the controller 7 is mounted on a soft surface.
- FIG. 14 is a flowchart illustrating an example of the procedure for controlling a game in the control program stored in the game device 3 forming part of the game system 1 according to the embodiment.
- FIG. 15 is likewise a flowchart illustrating an example of the procedure for controlling a game in the control program.
- FIG. 16 is likewise a flowchart illustrating an example of the procedure for controlling a game in the control program.
- FIG. 17 is a graph showing an example of the time-series variations in the results of the correction processing performed on vibration values (weak input) transmitted to the game device 3 after being detected by the controller 7 of the game system 1 according to the embodiment following a top motion of the player.
- FIG. 18 is a graph showing an example of the time-series variations in the results of the correction processing performed on vibration values (medium input) transmitted to the game device 3 after being detected by the controller 7 of the game system 1 according to the embodiment following a top motion of the player.
- FIG. 19 is a graph showing an example of the time-series variations in the results of the correction processing performed on vibration values (strong input) transmitted to the game device 3 after being detected by the controller 7 of the game system 1 according to the embodiment following a top motion of the player.
- FIG. 20 is a flowchart illustrating an example of the procedure for controlling a game in the control program stored in the game device 3 forming part of the game system 1 according to the embodiment.
- FIG. 21 is likewise a flowchart illustrating an example of the procedure for controlling a game in the control program stored in the game device 3 forming part of the game system 1 according to the embodiment.
- FIGS. 22A , 22 B are likewise diagrams illustrating an example of data structure in command determination tables built for controlling a game by the control program, FIG. 22A showing a table for determining a command about the magnitude of vibration value, and FIG. 22B showing a table used for determining the rhythm of rests and the occurrence of vibrations.
- FIGS. 23A , 23 B are likewise diagrams illustrating an example of data structure in special input command tables contained in the control program, FIG. 23A showing a table in which special commands about the magnitude of vibration value are registered, FIG. 23B showing a table in which special commands about rests and the occurrence of vibrations are registered.
- FIG. 1 is an external view illustrating a game system 1 using a game device according to the embodiment.
- the game system 1 includes a stationary game device (hereinafter referred to as a “game device”) 3 which is connected through a connecting cord to a display (hereinafter referred to as a “monitor”) 2 equipped with speakers 2 a such as a television receiver for home use, a controller 7 which provides information on game operation and the like to the game device 3 , and a mounting base 8 on which the controller 7 is mounted.
- a game device hereinafter referred to as a “game device”
- a display hereinafter referred to as a “monitor”
- speakers 2 a such as a television receiver for home use
- controller 7 which provides information on game operation and the like to the game device 3
- a mounting base 8 on which the controller 7 is mounted.
- the game device 3 is connected to a receiver unit 6 via a connection terminal.
- the receiver unit 6 receives transmission data transmitted from the controller 7 over the radio, so that the controller 7 and the game device 3 are connected by communicating over the radio.
- the game device 3 includes a disc drive 40 (see FIG. 2 ) apparatus on and from which a removable optical disc 4 which is an example of information recording media for use in the game device 3 is loaded and unloaded. Further, the game device 3 is provided with a switch for powering the game device 3 ON/OFF, a reset switch for game processing, and an OPEN switch for opening a disc tray in order to load/unload an optical disc 4 on/from the disc drive 40 , all of which are not shown.
- the player depresses the OPEN switch, whereupon the disc tray is ejected from the inside of the game device 3 to enable the player to load/unload the optical disc 4 .
- the disc tray is slid back into the game device 3 to enable the game device 3 to read the optical disc 4 .
- the controller 7 corresponds to input means in the embodiment.
- the game device 3 is fitted with an external memory card 5 which is removable as appropriate.
- the external memory card 5 has backup memory permanently storing saved data and the like.
- the game device 3 executes a game based on a game program stored on the optical disc 4 or in response to an input signal from the input means (controller 7 ), and displays the result as a game image on the monitor 2 serving as display means.
- the game device 3 can use the saved data stored in the external memory card 5 to reproduce the state of a game which has been carried out by the player in past times, and display the result, for example, as a game image on the monitor 2 serving as the display means.
- a memory not shown, specially designed for saved data is provided in the main memory 33 within the main body or in the main body itself in order to store saved data. Then, while looking at the game image displayed on the monitor 2 , the player operates the controller 7 to proceed to carry out the rest of the game.
- the controller 7 operates a communication unit 75 provided therein (see FIG. 5 ) to send transmission data via radio to the game device 3 connected to the receiver unit 6 by the use of techniques of, for example, Bluetooth (trademark).
- the controller 7 is operating (input) means for acquiring, mainly, the operation input information required for operating the player object appearing on the game space displayed on the monitor 2 .
- the controller 7 is equipped with operating switches including a plurality of operation buttons, keys, sticks and the like.
- the mounting base 8 serves as a mounting place enabling the mounting of the controller 7 .
- the player taps the mounting base 8 , whereupon vibration (second vibration) is created in the mounting base 8 , which then travel to the controller 7 , so that the vibration traveling to the controller 7 are detected.
- a box-shaped mounting base made of cardboard or the like is employed.
- the material of the mounting base 8 is not limited particularly to cardboard or the like as long as the material is able to transmit vibration to the controller 7 when the player taps the mounting base 8 (for example, a box made of cardboard or the like or a plate made of wood or the like).
- a soft material incapable of transmitting vibration by absorbing the vibration produced in the mounting base 8 by the player is not desirable.
- the shape of the mounting base 8 is not limited to a box shape, and, for example, it may be a plate shape (wood or the like), or alternatively the floor itself may be used as a mounting place.
- FIG. 2 is a functional block diagram illustrating the processing functions of the game device 3 .
- the game device 3 includes, for example, a CPU (Central Processing Unit) 30 for executing and controlling various programs.
- the CPU 30 executes a boot program stored in a boot ROM, not shown, and then initializes the memory in the main memory 33 and the like. Then, the CPU 30 executes a game program stored on the optical disc 4 to carry out game processing or the like in accordance with the game program.
- the CPU 30 is connected via a memory controller 31 to a GPU (Graphics Processing Unit) 32 , a main memory 33 , a DSP (Digital Signal Processor) 34 and an ARAM (Audio RAM) 35 .
- GPU Graphics Processing Unit
- main memory 33 main memory
- DSP Digital Signal Processor
- ARAM Anaudio RAM
- the memory controller 31 is connected via a predetermined bus to a controller I/F (Inter-Face) 36 , video I/F 37 , external memory I/F 38 , audio I/F 39 , and a disc I/F 41 , which in turn are respectively connected to a receiver unit 6 , monitor 2 , external memory card 5 , speaker 2 a and a disc drive 40 .
- a controller I/F Inter-Face
- the GPU 32 performs image processing on the basis of the instructions of the CPU 30 , and is formed of, for example, a semiconductor chip performing the computer processing necessary for a 3D graphics display.
- the GPU 32 generates an image-processed picture using an image-processing memory, not shown, or a part of the memory area of the main memory, and then outputs it to the monitor 2 via the memory controller 31 and the video I/F 37 as appropriate.
- the CPU 30 and the GPU 32 correspond to an example of control means in the embodiment.
- the main memory 33 includes a ROM (Read Only Memory) and a RAM (Random Access Memory), which are not shown and a memory area used by the CPU 30 , and stores a game program and the like necessary for the CPU 30 to perform processing as appropriate.
- the main memory 33 stores a game program, various types of data such as data tables and the like which are read from the optical disc 4 by the CPU 30 .
- the CPU 30 executes and uses the game program, various types of data and the like which are stored in the main memory 33 . The structure of a game program will be described later.
- the DSP 34 processes the sound data and the like generated by the CPU 30 at the execution of a game program, and is connected to the ARAM 35 for storing the sound data.
- the ARAM 35 is used when the DSP 34 performs predetermined processing (for example, storing of previously read game program data and sound data).
- the DSP 34 reads the sound data stored in ARAM 35 and sends it through the memory controller 31 and the audio I/F 39 to allow the speaker 2 a to output it as a sound effect, music, and voice.
- a speaker provided in the monitor 2 may be used as the speaker 2 a.
- the memory controller 31 controls overall data transmission and is connected to the aforementioned various interfaces.
- the controller I/F 36 is made up of, for example, 4 controller I/Fs 36 a to 36 d which connect external devices and the game device 3 through their own respective connectors to conduct communications between them.
- the receiver unit 6 is fitted into the connector and connected to the game device 3 through the controller I/F 36 .
- the receiver unit 6 receives the data transmitted from the controller 7 and outputs the transmission data to the CPU 30 through the controller I/F 36 .
- the video I/F 37 is connected to the monitor 2 .
- the external memory I/F 38 is connected to the external memory card 5 and is made accessible to a backup memory and the like provided in the external memory card 5 .
- the audio I/F 39 is connected to the speaker 2 a provided in the monitor 2 , so that sound data read from the ARAM 35 by the DSP 34 and sound data output directly from the disc drive 40 can be output from the speaker 2 a .
- the disc I/F 41 is connected to the disc drive 40 .
- the disc drive 40 reads data stored on the optical disc 4 placed in a predetermined reading position, and outputs it to the bus of the game device 3 and/or the audio I/F 39 .
- the game device 3 is equipped with a timer for measuring the elapsed time which is not shown in FIG. 2 , and can read a current time value by program processing.
- FIG. 3A is a perspective view of a top surface of the controller 7 when viewed from the rear end.
- FIG. 3B is a perspective view of the underside of the controller 7 when viewed from the rear end.
- the controller 7 has a housing 71 which is formed by, for example, plastic molding.
- a plurality of operation console switches 72 are provided in the housing 71 .
- the housing 71 is formed in an approximately rectangular parallelepiped shape with the longitudinal direction extending in the fore-and-aft direction and it's entire size is such that an adult or a child can grasp it in one hand.
- a cross key 72 a is provided on a forward central portion of the top surface of the housing 71 .
- the cross key 72 a is a cross-shaped four-direction push switch of which operating parts corresponding to the four directions (front, rear, right and left) shown by arrows are respectively placed in projections of the cross at 90-degree intervals.
- the player depresses any of the operating switches of the cross key 72 a to select one of the front, rear, right and left directions.
- the player operates the cross key 72 a to instruct the moving direction of the player character or the like appearing on a virtual game world (space), or instruct the moving direction of a cursor.
- the cross key 72 a is an operating switch outputting an operation signal in response to the aforementioned direction input operation of the player, but may be an operating switch of another form.
- a complex switch consisting of a push switch including four-direction operating parts arranged in a ring shape and a center switch provided in the center of the push switch, or a tiltable stick protruding from the top surface of the housing 71 , or the like can be provided.
- Another operating switch may be provided instead of the cross key 72 a , which includes a horizontally-movable disc-shaped member and, when the member is slid, outputs an operation signal according to the sliding direction.
- Yet another operating switch may be provided instead of the cross key 72 a , which outputs an operation signal in response to a switch depressed by the player out of the switches respectively representing at least four directions (front, rear, right and left).
- a plurality of operation buttons 72 b to 72 g are provided on a portion of the top surface of the housing 71 rearward of the cross key 72 a .
- the operation buttons 72 b to 72 g are operating switches each of which outputs an operation signal assigned to the switch when the button head is depressed by the player.
- the operation buttons 72 b to 72 d serving as an X button, a Y button and a B button or the like, are respectively assigned functions executed for displaying a new window on the monitor 2 , acknowledging or denying the operation instruction confirmation displayed on the monitor 2 , and the like in response to the game contents.
- the operation buttons 72 e to 72 g are assigned functions as a selection switch, a menu switch and a start switch or the like.
- the operation buttons 72 b to 72 g are respectively assigned functions in association with a game program executed by the game device 3 .
- the controller 7 is not limited to a general-purpose controller, and may be operation means (input means) even if it is operation means such as, for example, a mouse.
- An operation button 72 h is provided on the top surface of the housing 71 forward of the cross key 72 a .
- the operation button 72 h is a power switch for remotely powering the body of the game device 3 ON/OFF.
- the operation button 72 h may be a power switch of powering the controller 7 ON/OFF.
- the operation button 72 h may have the top surface located below the top surface of the housing 71 in order to prevent the player from accidentally depressing the operation button 72 h.
- a plurality of LEDs 702 are provided on the top surface of the housing 71 rearward of the operation button 72 c .
- the LEDs 702 can be used to notify the player of the controller mode in which the controller 7 is currently placed. For example, when a plurality of players operate characters displayed on a plurality of game screens, the plurality of LEDs 702 can emit light by different methods in order to tell the players which controller a character operated on the game screen based on an operation input signal has been transmitted by. Further, the plurality of LEDs of a controller can be operated to emit light simultaneously in order to notify the players of the recognition of the controller by the game device or of some error.
- X, Y and Z axes at right angles to one another are defined as a coordinate system with respect to the controller 7 .
- the longitudinal direction of the housing 71 which is the fore-and-aft direction of the controller 7 is defined as the Z axis, in which the direction of the front face (the face closer to the vibrator 74 ) is defined as the positive Z axis direction.
- the up-and-down direction of the controller 7 is defined as the Y axis, in which the direction of the top surface (the face on which the cross key 72 a is provided) is defined as the positive Y axis direction.
- the right-and-left direction of the controller 7 is defined as the X axis, in which the direction of the left side face (the face not shown in FIG. 3( a ) and shown in FIG. 3( b )) of the housing 71 is defined as the positive X axis direction.
- FIG. 4A is a perspective view illustrating the controller 7 when the upper housing (part of the housing 71 ) is removed from the controller 7 .
- FIG. 4B is a perspective view illustrating the controller 7 when the lower housing (part of the housing 71 ) is removed from the controller 7 .
- a base board 700 shown in the perspective view in FIG. 4B is when viewed from the underside of the base board 700 shown in FIG. 4A .
- the base board 700 is secured within the housing 71 .
- the operation buttons 72 a to 72 h , the acceleration sensor 73 , the LEDs 702 , a crystal-quartz oscillator 703 , a radio module 53 , an antenna 54 and the like are provided on the upper main surface of the base board 700 , and are connected to a microcomputer 51 (hereinafter referred to as the “MC”, see FIG. 5 ) through wiring (not shown) in the base board 700 or the like.
- the acceleration sensor 73 detects and outputs an acceleration which can be used to calculate a tilt, a vibration and the like in the three-dimensional space in which the controller 7 is provided.
- the acceleration sensor 73 together with a vibration detection program 23 which will be described later, corresponds to the vibration detection means in the embodiment.
- the controller 7 includes a three-axis acceleration sensor 73 as shown in FIG. 5 .
- the three-axis acceleration sensor 73 detects a linear acceleration in three directions, namely, the up-and-down direction (Y axis shown in FIGS. 3A , 3 B), the right-and-left direction (X axis shown in FIGS. 3A , 3 B), and the fore-and-aft direction (Z axis shown in FIGS. 3A , 3 B).
- the acceleration sensor 73 In the use of a combination of the acceleration sensor 73 with the MC 51 (or another processor), for example, upon the detection of a static acceleration (gravity acceleration), the output of the acceleration sensor 73 is sent to the MC 51 .
- a static acceleration gravitation acceleration
- the output of the acceleration sensor 73 is sent to the MC 51 .
- an operation can be carried out using a tile angle and a detected acceleration to determine a tilt of an object (controller 7 ) relative to gravity vector.
- using the acceleration sensor 73 in combination with the MC 51 (or another processor) makes it possible to determine tilt, posture and position of the controller 7 .
- the controller 7 functions as a wireless controller with the communication unit 75 having a radio module 53 and an antenna 54 .
- the crystal-quartz oscillator 703 generates a clock signal on which the operation of the MC 51 described later is based.
- a battery 76 is held in the rear end of the lower main surface of the substrate 700 .
- a vibrator 74 is mounted on the lower main surface of the substrate 700 .
- the vibrator 74 may be, for example, a vibration motor or a solenoid. Vibration is produced in the controller 7 by actuating the vibrator 74 .
- the vibrator 74 corresponds to vibration generation means for generating a first vibration in the embodiment.
- FIG. 5 is a block diagram illustrating the function configuration of the controller 7 .
- the acceleration sensor 73 detects and outputs separately three-axis components of the up-and-down direction (Y-axis direction), the right-and-left direction (X-axis direction) and the fore-and-aft direction (Z-axis direction) of the controller 7 as described earlier.
- the data on accelerations of the three-axis components detected by the acceleration sensor 73 is sent to the communication unit 75 .
- the movement of the controller 7 can be determined on the basis on the acceleration data output from the acceleration sensor 73 .
- the acceleration sensor 73 employed may be an acceleration sensor that detects accelerations in any two axes in accordance with data required to a specific application.
- the communication unit 75 includes the MC 51 , the memory 52 , the radio module 53 , and the antenna 54 .
- the MC 51 controls the radio module 53 transmitting transmission data over radio while using the memory 52 as a storage area in processing.
- the MC 51 receives the operation signal (key data) output from the operation console switch 72 provided in the controller 7 and acceleration signals in the three-axis directions (data on accelerations in X-, Y- and Z-axis directions) output from the acceleration sensor 73 .
- the MC 51 temporary stores each piece of data (key data, acceleration data in the X-, Y- and Z-axis directions) as transmission data to be transmitted to the receiver unit 6 in the memory 52 .
- radio transmission from the communication unit 75 to the receiver unit 6 is carried out once every predetermined time period.
- the game processing is typically executed on a 1/60 second basis. Therefore, transmission is required to be carried out once every time period shorter than the typical one. Specifically, the game processing is performed on a 16.7 ms basis (1/60 seconds), and a transmission interval of the communication unit 75 based on Bluetooth (trademark) is, for example, 5 ms.
- the MC 51 When determining that the time has come for transmission to the receiver unit 6 , the MC 51 outputs the transmission data stored in the memory 52 as a series of operation information to the radio module 53 , on the basis of the program stored in the memory 52 . Thereupon, the radio module 53 transmits the operation information from the antenna 54 as a radio signal using a carrier wave of predetermined frequency by use of techniques of, for example, Bluetooth (trademark). That is, the key data from the operation console switch 72 provided in the controller 7 and the data on accelerations in the X-, Y- and Z-axis directions output from the acceleration sensor 73 (measured values of vibration) are transmitted from the controller 7 to the game device 3 .
- Bluetooth trademark
- the receiver unit 6 of the game device 3 receives the radio signal.
- the game device 3 demodulates and decodes the received radio signal to obtain a series of operation information (key data) and acceleration data in the X-, Y- and Z-axis directions.
- the CPU 30 of the game device 3 performs the game processing on the basis of the obtained operation information and the game program. Note that if the technique of Bluetooth (trademark) is used to configure the communication unit 75 , the communication unit 75 can have the capability of receiving transmission data transmitted from another device over air.
- FIGS. 6A , 6 B, 7 A, 7 B illustrate examples of the screens of the game assumed in the embodiment.
- the monitor 2 displays a character representing a person (hereinafter referred to as “character C 1 ”) standing on the ground (the floor existing in a three-dimensional space).
- the player taps the mounting base 8 on which the controller 7 is placed, so that the vibration thus generated is detected by the controller 7 .
- a motion of the player the motion of tapping the mounting base 8 , which is hereinafter uniformly referred to as a “motion”
- character C 1 starts its motion (“walking”, “running”, “jumping (flying)”.
- the number symbols shown below the ground represent the time elapsed from the game start (shown on the millisecond (ms) time scale).
- FIG. 6A shows the state of the game start. At this stage, character C 1 remains still while standing on the ground. That is, this stage comes before the player makes a motion and the controller 7 has not yet detected any vibration.
- FIG. 6B shows the state of C 1 at the stage when about 5 seconds have elapsed from the time in FIG. 6A .
- character C 1 is walking. That is, at this time point, the player has made a motion and the controller 7 has detected the vibration resulting from this motion.
- the motion of the player on this occasion is recognized as vibration of weak input (see FIG. 17 described later).
- FIG. 7A shows the state of C 1 at a stage when about 12 seconds have elapsed from the time shown in FIG. 6A .
- character C 1 is running. That is, at this time point, the player has made a motion stronger than the motion in FIG. 6B , and the controller 7 has detected the vibration resulting from this strong motion.
- the motion of the player on this occasion is recognized as vibration of medium input.
- FIG. 7B shows the state of character C 1 at a stage when about 20 seconds have elapsed from the time shown in FIG. 6A .
- character C 1 is jumping over an obstacle (shown as a hurdle). That is, at this time point, the player has made a motion even stronger than the motions in FIG. 6B and FIG. 7A , and the controller 7 has detected the vibration resulting from this strong motion. In this regard, the motion of the player on this occasion is recognized as vibration of strong input.
- character C 1 may be automatically jumped when character C 1 enters the region of the obstacle (shown as a hurdle) with collision.
- a vibration based on the degree of a motion of the player tapping the mount base 8 (strong, medium, weak input) is reflected in the motion of character C 1 as shown in FIG. 6B to FIG. 7B . Then, the vibration resulting from the motions of the player are reflected in the game until the character C 1 reaches the goal.
- the example of the game shown in FIG. 6A to FIG. 7B is a competitive game based on how quickly the players operate their characters C 1 to reach the goal.
- the present invention can be widely applied also to generally called “visualizer” games in addition to games bringing characters into competition as shown in FIG. 6A to FIG. 7B .
- the “visualizer” described in this application refers to a program for dynamically creating a pattern and/or the like on the display screen in accordance with an operation input signal entered through the input means provided in the game device 3 , a waveform of sound data, and/or the like.
- the “visualizer” described in this application may be decorative software or to display, together with a pattern and/or the like, scoring of results of counting the number of times a command is established as described later and/or the like.
- the present invention can be applied to a game in which a variety of special images (including moving images) are displayed on the monitor 2 , for example, when the strength of the player tapping the mounting base 8 , that is, an intensity level of a detected vibration value, or an intensity level pattern of vibration values sequentially receiving in time sequence, or a pattern of rhythm of vibration values sequentially receiving in time sequence (“tap rhythm” described later) (pattern of vibration input and rest), matches a command constructed by a combination of a previously-set pattern or more.
- a variety of special images including moving images
- control programs game control programs stored in the main memory 33 of the game device 3
- the control program P which is the control means includes at least a variety of programs shown in FIG. 8 .
- the control program P includes a main control program P 0 , mounting determination program P 1 , vibration start program P 2 , vibration detection program P 3 , natural-vibration value calculation program P 4 , correction-value calculation program P 5 , correction-value operation conversion program P 6 , associated vibration setting program P 7 , vibration pattern determination program P 8 , special input command determination program P 9 , and a presentation processing program P 10 .
- the CPU 30 reads the programs as appropriate to execute a variety of processing.
- the main control program P 0 is a program for exercising control over the operation of the game system 1 , and includes a communication program for communication with the controller 7 .
- the mounting determination program P 1 is a program for confirming that the controller 7 has been mounted on the mounting base 8 when, at the start of a game, the acceleration sensor 73 receives, for a certain period time, vibration detection signals (first vibration detection signal) representative of a constant predetermined value (threshold) (first vibration value) or less for predetermined time. If the mounting of the controller 7 cannot be confirmed, a message urging the mounting of the controller 7 can be displayed on the monitor 2 as appropriate in addition to the above.
- the vibration start program P 2 is a program necessary for the vibration detection program P 3 to detect vibration after activation of the mounting determination program P 1 .
- the vibration generation means (vibrator 74 ) starts operation, so that the MC 51 can fetch the vibration detected by the acceleration sensor 73 and the game device 3 can acquire a measured value of the vibration.
- the controller 7 when the controller 7 is mounted on the mounting base 8 , it is determined how much the mounting base 8 sways, that is, a value of natural vibration of the mounting base 8 is determined. Since the vibration produced by the vibration generation means (vibrator 74 ) mechanically occurs at constant predetermined intensity, the game device 3 determines how much the mounting base 8 sways on the basis of the value detected by the acceleration sensor 73 when the vibration is produced at a constant intensity in the mounting base 8 .
- the vibration detection program P 3 is a program for receiving a measured value of the vibration produced by the control of the vibration start program P 2 , from the controller 7 and storing it in the main memory.
- the vibration detection program P 3 enables the game system 1 to detect whether or not vibration is imposed on the controller 7 .
- the vibration detection program P 3 is used not only to determine how much the mounting base 8 sways at the initial stage of the game, but also as means for detecting vibration throughout the entire game.
- the natural-vibration value calculation program P 4 is a program for performing the process of determining a value of the natural vibration of the mounting base 8 , and calculates a natural-vibration value on the basis of the measured value of vibration detected in the vibration detection program P 3 .
- the natural-vibration value calculated in the natural-vibration value calculation program P 4 is used to correct the measured value.
- the natural-vibration value calculation program P 4 serves as the natural-vibration value calculation means.
- the correction-value calculation program P 5 is a program for performing the process of making a correction to the measured value of the vibration when the vibration detection program P 3 acquires the measured value of the vibration (a second vibration value) produced by the player tapping the mounting base 8 in the game. Specifically, adding a correction value to the vibration value in the mounting base 8 eliminates a need to change (adjust) the intensity of vibration produced in the mounting base 8 by the player depending on materials of the mounting base 8 . For example, this produces an advantageous effect that the player is not required to consciously adjust the tapping strength even when the material of the mounting base 8 is soft (not-easily vibrating material) or hard (material easily transmitting vibration).
- the correction-value operation conversion program P 6 is a program for performing the conversion process of the measured vibration value after being subjected to the correction processing by the correction-value calculation program P 5 in order to use for the game control. That is, the program performs process for reflecting the motion (operation) of the player tapping the mounting base 8 in the game.
- the associated vibration setting program P 7 is a program executing the process of determining an associated vibration resulting from a tap motion of the player from the measured value of the vibration transmitted from the controller 7 with a motion of the player tapping the mounting base 8 .
- the associated vibration setting program P 7 enables reliable acquisition of vibration accompanying a tap motion of the player in association with the tap motion.
- the associated vibration setting program P 7 may be provided as a sub-program of the correction-value operation conversion program P 6 .
- the vibration pattern determination program P 8 forming part of vibration pattern determination means includes an intensity threshold calculation classification program P 8 a and a tap/rest determination program P 8 b.
- the intensity threshold calculation classification program P 8 a is a program executing the process of classifying the measured values of vibration (vibration detection signals) receiving as operation signals in time sequence, into at least one pattern or more representative of “strong and weak” vibrations, “strong, medium, and weak” vibrations or the like according to the intensity level of the vibration.
- the intensity threshold calculation classification program P 8 a forms part of the input vibration classification means.
- the tap/rest determination program P 8 b is a program executing the process of determining a time interval in which the vibration detection signal is not received (hereinafter referred to as a “rest interval”) and making a further classification into two patterns indicative of a time interval in which the vibration detection signals are received along the time axis in terms of time sequence (hereinafter referred to as “tap input period”) and the rest period in which the vibration detection signal is not received.
- the tap/rest determination program P 8 b serves as the tap/rest setting means.
- the special input command determination program 9 is a program executing the process of determining whether or not a time-series array of classified patterns in the intensity threshold calculation classification program P 8 a or the tap/rest setting program P 8 b matches any of a plurality of previously-set special input commands. If it is determined that the array matches any of a plurality of types of previously-set special input commands, the main control program P 0 performs the process of executing a previously-set game control program (game control program based on vibration level determination) in accordance with the matched special input command. For example, a moving image of large-scale, middle-scale or small-scale fireworks continuously set off is displayed on the monitor 2 in accordance with the matched special input commands.
- the special input command determination program P 9 serves as the special input command determination means.
- the presentation processing program P 10 is activated by control of the main control program P 0 , and includes a presentation image display control program P 10 a of controlling display of various presentation images on the monitor 2 and a presentation sound output processing program P 10 b of outputting music, effective sound and voice to the speaker 2 a.
- FIGS. 9( a ) to 11 are flowcharts illustrating the flow of basic control of game processing for a game which is controlled by the main control program P 0 stored in the main memory 33 of the game device 3 .
- the CPU 30 of the game device 3 executes a boot program stored in the boot ROM, not shown, so as to initialize each unit such as the main memory 33 and the like. Then, the main memory 33 and the like read the game control program stored on the optical disc 4 and information on various presentation image data, various presentation sound data and previously-set reference data (various data tables and the like), and then the CPU 30 starts execution of the game control program.
- a game menu screen as shown in FIG. 9B is displayed on the monitor 2 .
- the player operates the controller 7 to select one of games, “game A”, “game B” and “game C”, from the game menu displayed on the menu screen.
- the main control program P 0 displays a welcome screen of the selected game on the monitor 2 , and also activates a program for various initializations.
- the mounting determination program P 1 , the vibration start program P 2 , the vibration detection program P 3 and the natural vibration value calculation program P 4 are activated to obtain a natural-vibration value of the mounting base 8 .
- the presentation image display program P 10 a displays a presentation initialization screen on the monitor 2 , and outputs presentation music from the speaker 2 a . The process of obtaining a natural vibration value of the mounting base 8 will be described in detail later.
- a vibration produced by the motion of the player tapping the mounting base 8 to play the game is input as a vibration detection signal (measured value) from the controller 7 for the process of controlling the game progress (progress main processing).
- the correction-value calculation program P 5 , the correction-value operation conversion program P 6 and the associated vibration setting program P 7 execute preprocessing for reflecting the vibration detection signal of the vibration entered by the player's operation of tapping the mounting base 8 in the game. Then, it is determined whether or not the information obtained through the preprocessing matches effective operation input information used for the control of game progress and/or a special input command.
- game control previously set on an operation-input-information-and/or-special-input-command basis, for example, a presentation moving image set on a special input command basis is displayed on the monitor 2 for a predetermined time or is continued to be displayed on the monitor 2 on the basis of the operation input information until it matches the next special input command.
- an operation-input-information-and/or-special-input-command basis for example, a presentation moving image set on a special input command basis is displayed on the monitor 2 for a predetermined time or is continued to be displayed on the monitor 2 on the basis of the operation input information until it matches the next special input command.
- step S 4 It is determined whether or not a game end signal is input by for example, the player's operation of the controller 7 , and if the game end signal is not input, the flow goes back to the processing in step S 2 to continue the game. On the other hand, if the game end signal is input, the flow goes to step S 4 .
- the processing of game end presentation is carried out to end the game.
- presentation processing for game end for example, gaming time, the number of times the motion of the player tapping the mounting base 8 matches an effective special input command, and the like are displayed on the monitor 2 .
- step S 1 the natural vibration value calculation program P 4 calculates a natural vibration of the mounting base 8 . This process will be described in detail in each step of the flowchart in FIG. 12 .
- FIG. 12 illustrates the process of detecting a natural vibration value in a mounting place (the mounting base 8 in the embodiment) when the game starts.
- a vibration value (measured value) described in the embodiment refers to a total value of components of acceleration data in the X-, Y- and Z-axis directions measured by the acceleration sensor 73 (measured values of the respective X, Y and Z components).
- a vector value synthesized from the measured values of the respective X, Y and Z components may be set as a vibration value. Either case can be selected in accordance with game contents as appropriate.
- Step S 101 (Step S 101 ) (Step S 102 )
- the “N” is a variable used in a pre-specified predetermined number (N) of measurements of the maximum vibration value.
- the CPU 30 activates the vibration start program P 2 to cause the controller 7 to start the vibration operation. Specifically, the CPU 30 transmits a signal to operate the vibrator 74 via the MC 51 of the controller 7 , and the MC 51 of the controller 7 activates the vibrator 74 , so that the controller 7 starts the vibration operation.
- the MC 51 transmits the vibration of the controller 7 caused by the vibration operation of the vibrator 74 , and a value of vibration measured by the acceleration sensor 73 as a measure value (vibration value), from the MC 51 via the radio module 53 to the game device 3 at predetermined time intervals. In this manner, the CPU 30 acquires the measured value (vibration value).
- the CPU 30 performs the process of comparing and determining whether or not the acquired current vibration value is equal to or lager than the maximum vibration value stored in the main memory 33 as of this time (current).
- the CPU 30 stores this current vibration value as a current maximum vibration value in the main memory 33 .
- step S 105 if it is determined at step S 105 that the acquired current vibration value is less than the current maximum vibration value, the process in the step S 106 is not performed and the flow goes to step S 107 .
- the CPU 30 determines whether or not the vibration operation of the controller 7 is in action and also the vibration operation time is equal to or longer than a specified time (e.g., 5 ms).
- step S 107 If it is determined at step S 107 that the vibration operation of the controller 7 is in action and also the vibration operation time is equal to or longer than a specified time, the CPU 30 transmits a signal to stop the vibration operation (that is, the operation of the vibrator 74 ) to the controller 7 .
- step S 108 If the vibration operation of the controller 7 is stopped in step S 108 , and, if it is determined at step S 107 that the controller 7 is in the vibration operation and the time period of the vibration operation is less than the specified time, the CPU determines whether or not the measurement time to measure a vibration value is equal to or longer than a previously-set, predetermined time. If the measurement time is less than the predetermined time, the flow goes back to step S 104 to repeat the processing after step S 104 .
- the CPU 30 stores the current maximum vibration value (the maximum vibration value stored in the main memory 33 ) as a maximum vibration value obtained in an Nth measurement, in the main memory 33 .
- Step S 111 (Step S 112 )
- the CPU 30 increments “N” to “N+1”, and determines whether or not “N” is a predetermined value or larger.
- the aforementioned processing from step S 102 to step S 112 is repeated until “N” reaches the predetermined value.
- the CPU 30 calculates an average of “N ⁇ 2” maximum vibration values of the maximum vibration values obtained in the N measurements and stored in the main memory 33 , that is, of the “N” maximum vibration values except for the maximum value and the minimum value, and stores the calculated average as a unit vibration value (natural vibration value) in the main memory 33 .
- a correction coefficient of the vibration value which is stored in the vibration conversion table in correspondence with the natural vibration values calculated in step S 113 is calculated in reference to a vibration conversion table pre-stored in the main memory 33 , and then stored in the main memory 33 .
- the vibration conversion table is a data table of experimentally-found coefficients used to correct vibration values for each natural vibration value previously measured when the controller 7 is placed in a variety of mounting places.
- the correction coefficient is a value ranging from 0.7 to 1.3.
- a measured value of vibration in response to a motion of the player in accordance with the environment of the mounting place can be reflected in the game control by using the correction coefficient for correction.
- a detection of such vibration and noise together with a motion of the player can be avoided as much as possible.
- the processing of previously calculating the correction coefficient for vibration values may be carried out by the MC 51 of the controller 7 .
- FIG. 13A shows a change in vibration value when the controller 7 is mounted on a hard surface (for example, on an asphalt surface, a steel plate or the like), while FIG. 13B shows a change in vibration value when it is mounted on a soft surface (for example, on cardboard or the like).
- the vertical axis represents vibration values and the horizontal axis represents time.
- the correction-value calculation program P 5 is executed. This makes it possible to previously obtain a correction value for correcting a vibration value according to the vibration input by the player tapping the mounting base 8 . And then, the vibration provided by the player during the execution of the actual game can be identified as an operation input signal. As a result, as long as the controller 7 can be stably mounted, the player can enjoy games in accordance with the environment of the mounting place.
- the progress main processing includes: a process of operating the controller 7 to measure a vibration produced by the player tapping the mounting base 8 , and then transmitting the measured vibration value to the game device 3 ; a process of correcting the transmitted vibration value and converting it to be reflected in the game; and a portion of performing game control on the basis of the converted information.
- FIG. 10 shows the outline of the procedure of the progress main processing.
- the outline of the progress main processing will be described below with reference to FIG. 10 .
- step S 21 An input signal representative of vibration produced by the player tapping the mounting base 8 is converted into information on operation input by the player, and the information is sequentially stored in time-series order in the main memory 33 .
- step S 21 information relating to “rest” described later is also subjected to the process of conversion into information on operation input by the player.
- step S 23 and step S 24 relating to the progress main processing are not performed, thereby terminating the progress main processing.
- the main control program P 0 initiates the process of displaying a regular presentation image to display a previously-set presentation image (which may include a moving image) on the monitor 2 .
- a regular presentation image for example, the process of displaying a moving image of small-scale fireworks intermittently set off is performed as a game control step based on the vibration level determination.
- a time-series array of the operation input information sequentially stored in the main memory 33 in the process in step S 21 matches any of a plurality of kinds of previously-set special input commands.
- the process of previously-set game control is performed on a special-input-command basis.
- the process of displaying the aforementioned moving image of large-scale fireworks continuously set off on the monitor 2 is performed as a game control step based on the vibration level determination.
- step S 24 depending on a game name selected from the game menu screen by the player, the process in step S 24 based on the special input command described above may possibly not be included. For this reason, in the process in step S 24 in a program for execution of such a game, for example, every time vibration is acquired when the player taps the mounting base 8 one time, an intensity level of the vibration value is determined so that the game control is performed according to the intensity level.
- the intensity level of the vibration resulting from a tap motion is determined to be “strong”, the process of displaying the moving image of large-scale fireworks continuously set off on the monitor 2 is not performed. If the intensity level is determined to be “weak”, the process of displaying the moving image of a single small-scale firework set off on the monitor 2 is performed.
- FIGS. 14 and 15 show processing flows when, in step S 21 of the progress main processing, a vibration value detected by the controller 7 during game execution is subjected to correction processing and conversion processing by the correction-value calculation program P 5 , the correction-value operation conversion program P 6 and the associated vibration setting program P 7 .
- the process for correcting and converting the vibration value will be described below with reference to FIGS. 14 and 15 .
- FIG. 14 shows an example of the correction processing performed on a vibration value by the correction-value calculation program P 5 .
- the processing procedure will be described below on a step-by-step basis.
- Step S 201 (Step S 202 )
- the CPU 30 calculates a vibration ratio R based on a measured vibration value.
- the vibration ratio R is calculated by dividing “a value calculated by subtracting a mean vibration value from a measured vibration value” by “a value calculated by subtracting a mean vibration value from a predicted maximum vibration value”.
- the mean vibration value refers to a vibration value measured when the controller 7 is maintained in a still state on the mounting base 8 , which will be described in detail later.
- the predicted maximum vibration value refers to a maximum vibration value admissible as an operation input signal generated by a tap motion of the player during game execution in the mounting place (mounting base 8 ) measured by the processing in FIG. 12 , which is calculated in accordance with an environment of the mounting place measured by use of a vibrating function.
- the measured vibration value is multiplied by a correction coefficient obtained from the aforementioned natural vibration value to calculate a vibration value, and the calculated vibration value is employed as required.
- the CPU 30 determines whether or not the vibration ratio R calculated in step S 202 is equal to or less than a vibration ratio threshold R 0 .
- a predetermined value e.g., 0.5 is previously determined for the vibration ratio threshold R 0 .
- the CPU 30 calculates a conversion value from the equation shown in FIG. 14 . That is, when the vibration ratio R is equal to or less than the vibration ratio threshold R 0 , data processing using logarithmic conversion is performed. As a result, even when a detected vibration value is a minimum value, it can be reflected as a motion of the player in the game.
- a 0 in FIG. 14 refers to a value converted from the vibration ratio threshold R 0 (a converted value in the vibration ratio threshold).
- a predetermined value e.g., 0.6 is previously determined as the “A 0 ”.
- step S 205
- the CPU 30 calculates a conversion value from the equation shown in FIG. 14 . That is, when the vibration ratio R exceeds the vibration ratio threshold R 0 , data processing without logarithmic conversion is performed.
- the vibration ratio threshold R 0 can be described as a reference value (threshold) for determining whether or not the vibration value is a minimum value.
- FIG. 15 is a flowchart showing a method of calculating a mean vibration value.
- the mean vibration value is a vibration value obtained when the controller 7 is placed on the mounting base 8 and in the still state. The procedure of calculating the means vibration value will be described below with reference to FIG. 15 .
- a program for calculating the mean vibration value is included as a sub-program in the aforementioned natural-vibration-value calculation program P 4 , and when calculating a natural vibration value, the mean vibration value is calculated.
- Step S 301 (Step S 301 ) (Step S 302 )
- the CPU 30 clears the data (initialization) and acquires a vibration value, measured by the acceleration sensor 73 in the controller 7 , as transmission data and stores it in the main memory 33 .
- the CPU 30 determines whether or not the number of measurements of vibration values is equal to or larger than a previously-set, predetermined number of measurements. In this connection, the processes after step S 302 are repeated until the number of measurements reaches the predetermined number.
- Step S 304 (Step S 305 )
- step S 303 If it is determined at step S 303 that the number of measurements of vibration values is equal to or larger than a previously-set, predetermined number of measurements, the CPU 30 calculates a mean value of the vibration values stored in the main memory 33 in step S 302 to step S 303 , and defines it as a mean vibration value. A maximum vibration value of the stored vibration values is set as a maximum vibration value.
- the CPU 30 subtracts the mean vibration value calculated in step S 304 from the maximum vibration value determined in step S 305 , and then determines whether or not the value (error) obtained by this subtraction is equal to or less than a certain value.
- the “certain value” described here is desirably set to, for example, a value capable of approximating the error between the maximum vibration value and the mean vibration value to a minimum difference (in the embodiment, it is set to 0.001). As a result, the closer to zero the certain value becomes, the higher the accuracy of the mean vibration value would be.
- the CPU 30 stores the mean vibration value calculated in step S 304 as a mean vibration value in the mounting base 8 into the main memory 33 .
- step S 306 determines whether the flow has completed the processes from step S 301 to step S 306 .
- FIG. 16 shows an example of the processing procedure of the correction-value operation conversion program P 6 . The processing contents will be described below in a processing step basis with reference to FIG. 16 .
- the CPU 30 sets “M” to zero.
- the “M” is a correction type flag used for correction of a vibration value, which is a flag for holding information on determination results of the following processes in the processes.
- Step S 402 (Step S 403 )
- the CPU 30 acquires, as transmission data, a vibration value measured by the acceleration sensor 73 in the controller 7 , and calculates the rate of change of acceleration (hereinafter uniformly referred to as the “acceleration change rate”).
- the rate of change of acceleration hereinafter uniformly referred to as the “acceleration change rate”.
- Four-time measurements are made in a frame (e.g., 1/60 seconds) in each of data components of accelerations in the X-, Y- and Z-axis directions measured by the acceleration sensor 73 , and the “acceleration change rate” refers to a value of the sum of differences each of which is between a value in each measurement and a value of the past measurement. A value with consideration given to sign, rather than an absolute value, is employed for this difference. Calculating the difference makes it possible to precisely detect an operation input signal generated upon a motion of one-time tap of the player, as one-time tap.
- past described here refers to, if four-time measurements are made in a frame, the first measurement when the second measurement is made, and the second measurement when the third measurement is made.
- the CPU 30 stores a maximum value of the acceleration change rate measured during one frame (for example, 1/60 seconds) of the acceleration change rates calculated in step S 403 , as a frame acceleration change rate in the main memory 33 .
- Step S 405 (Step S 405 ) (Step S 406 )
- the CPU 30 turns once OFF a vibration trigger flag (hereinafter simply referred to as a “vibration trigger”) (for example, stores “0”), and calculates a difference D between the acceleration change rates in frames from an equation shown in FIG. 16 .
- the difference D is calculated by subtracting the acceleration change rate in the frame immediately before a current frame (described as “acceleration change rate in the preceding frame” in FIG. 16 ) from the acceleration change rate in the current frame.
- the vibration trigger is a flag located in the main memory 33 in order to store information representing input of vibration resulting from a tap motion of the player, that is, start-up of a change in vibration value.
- the CPU 30 determines whether or not the difference D is larger than (exceeds) a predetermined value (first predetermined value).
- Step S 409 (Step S 410 )
- a vibration trigger is used for determinations, so that, when the vibration trigger is ON, the aforementioned maximum acceleration change rate is obtained from the vibration values received in sequence. Then, the next re-vibration acceptance time (time until re-measurement) is set according to the magnitude of the maximum acceleration change rate. This makes it possible to cancel a signal (even if it is a value determined to be stronger than the operation input signal), except for a signal used as an operation input signal, without recognizing it as an operation input signal.
- step S 412 determines whether the difference D exceeds zero. If it is determined at step S 412 that the difference D exceeds zero, the processes in step S 413 and step S 414 are not performed and the flow goes back to step S 402 .
- step S 411 If it is determined at step S 411 that M is not equal to 1, the CPU 30 determines whether or not the difference D is zero or larger.
- step S 415 If it is determined at step S 415 that the difference D is zero or larger, in this event, since the acceleration change rate in the current frame is greater than the acceleration change rate in the preceding frame, there is a high possibility that a motion of a new player is detected. Then, the CPU 30 determines whether or not the re-vibration acceptance time has elapsed and the difference D is equal to or greater than the predetermined value.
- Step S 417 (Step S 418 )
- the CPU 30 sets the counter of the re-vibration acceptance time at zero and the flow returns to step S 402 .
- step S 415 determines whether or not the difference D is equal to or less than a predetermined value.
- step S 420 If it is determined at step S 420 that the difference D exceeds the predetermined value, the process in step S 421 is not performed and the flow returns to step S 402
- FIGS. 17 to 19 are graphs showing a change when the vibration value is actually corrected by the aforementioned procedure shown in FIG. 16 .
- FIG. 17 shows the change when a motion of the player is detected as weak input.
- FIG. 18 shows the change when a motion of the player is detected as medium input
- FIG. 19 shows the change when one-time motion of the player is detected as strong input.
- the solid line extending downward in FIGS. 17 to 19 shows that a motion of the player is detected as a vibration trigger
- the dotted line shows the acceleration change rate
- the two-dot chain line shows the maximum acceleration change rate in a frame.
- each of the gray and white divisions in FIG. 19 corresponds to a frame.
- the maximum acceleration change rate decreases in the 4 th frame after the vibration trigger has been turned ON, and the maximum acceleration change rate increases in the 5 th frame after the vibration trigger has been turned ON.
- the maximum acceleration change rate in the 5 th frame is not connected with the vibration trigger. By doing so, a motion of the player can be precisely detected as a vibration trigger.
- steps S 407 to S 419 and steps S 420 to S 21 correspond to the processing performed by the associated vibration setting program P 7 .
- the associated vibration setting program P 7 after vibration generated upon a motion of one-time tap of the player is detected, based on the detected vibration value, vibration detected after the one-time tap motion is set as noise which is associated vibration associated with the one-time tap motion.
- This setting avoids the event in which, although the motion of the player is received just one time, a reverberation (aftershock, relapse) of the one-time motion may be detected as another motion. That is, a detection of one-time motion of the player as a plurality of tap motions is eliminated, thus improving precision of detection of a tap motion of the player.
- the vibration pattern determination program P 8 includes the intensity threshold calculation classification program P 8 a and the tap/rest determination program P 8 b as shown in FIG. 8 .
- the main control program P 0 controls the execution of those programs in response to the game contents of the game A, B, C which has been selected from the menu screen by the player in the aforementioned process of step S 1 .
- the game device 3 upon determination that a measured value of vibration acquired from the controller 7 is a measured value of vibration generated by the player tapping the mounting base 8 , the game device 3 performs a process for performing processes for correcting and converting the acquired vibration value by the correction-value calculation program P 5 , the correction-value operation conversion program 26 and the associated vibration setting program P 7 , to obtain information on a vibration value corresponding to each tap motion of the player and information used for game control (hereinafter referred to as the “tap operation input information”).
- the aforementioned intensity threshold calculation classification program P 8 a and the tap/rest determination program P 8 b are provided.
- the intensity threshold calculation classification program P 8 a is a program performing a process for obtaining information required to be reflected in the game control, from the tap operation input information which is obtained by performing the above-described process of sequentially converting the measured values of vibration sequentially received in time sequence.
- the tap operation input information is processed to be classified by intensity levels such as into two “strong, weak” levels, three “strong, medium, weak” levels, or the like.
- the tap operation input information on vibration in relation to each tap generated every time the player taps the mounting base 8 is processed to be classified in any of patterns each including two or more levels of intensity (intensity level pattern) in accordance with a strength varying depending on various situations when the player taps the mounting base 8 (the degree of strength to tap, times of a day, mental condition and the like) and on attribution of a player himself (small child, child, adult, or the like).
- FIG. 20 is a flowchart showing an example of the procedure of the intensity threshold calculation classification program P 8 a performing a process of classifying the tap operation input information relating to each tap generated every time the player taps the mounting base 8 to play the game, in any of two or more levels in accordance with the intensity.
- the process procedure of the intensity threshold calculation classification program P 8 a will be described below with reference to FIG. 20 .
- the intensity threshold calculation classification program P 8 a is executed at predetermined time intervals under the control of the main control program P 0 .
- the tap operation input information relating to each tap occurring every time the player taps the mounting base 8 to play the game is stored in an archive data storage area of the main memory 33 under the control of the main control program P 0 .
- a count storage area which is defined for counting the number (R) of tap operation input information stored in the archive data storage area, is initialized to “zero”.
- the processes after step S 502 are executed at predetermined time intervals.
- step S 410 or step S 418 shown in FIG. 16 a process is performed for determining the acceleration change rate in the frame after the “vibration trigger” has been turned ON as the magnitude (E) of the current vibration value input in response to one-time tap operation of the player at this time. Then, the magnitude (E) of the current vibration value is once stored in the main memory 33 .
- the upper limit may be set in a range from about 7 to about 15 in order to grasp a habit of the tap motion of the player.
- a process is performed for deleting the magnitude (E) of the oldest vibration value in time sequence in the archive data storage area defined in the main memory 33 for sequentially storing the magnitudes (E) of current vibration values. Then, the subtraction of 1 from the number of counts R is performed, and then the flow goes to step S 506 .
- the magnitudes (E) of the current vibration values once stored in the main memory 33 in step S 503 are stored in time-series order in the archive data storage area defined in the main memory 33 . Then, an addition of “1” to the number of counts (R) is performed.
- a median (C) of the magnitudes (E) is calculated and stored in the main memory 33 .
- a mean value (U) larger than the median (C) calculated in step S 508 , and a mean value (L) smaller than the median (C) are each calculated and stored in the main memory 33 .
- a threshold for determining “medium, strong” levels of vibration is “07”, and similarly a threshold for determining “weak, medium” levels of vibration is “0.3”.
- thresholds Y 1 and Y 2 are calculated for classifying vibration into “strong, medium, weak” levels.
- step S 510 the threshold Y 1 , which becomes “0.5” or larger when the median (C) of the total is assumed to be “0.5”, is calculated from the following equation 1 by proportional distribution.
- the threshold Y 1 is a threshold for classifying vibration into “medium, strong” levels, in which, for example, when the vibration value exceeds the threshold Y 1 , the vibration is determined to be in a “strong level”, and when it is equal to or less than the threshold Y 1 , the vibration is determined to be in a “medium level”.
- step S 511 the threshold Y 2 , which becomes “0.5” or lower when the median (C) of the total is assumed to be “0.5”, is calculated from the following equation (2) by proportional distribution.
- the threshold Y 2 is a threshold for classifying vibration into “weak, medium” levels, in which, for example, when the vibration value exceeds the threshold Y 2 , the vibration is determined to be in a “medium level”, and when it is equal to or less than the threshold Y 2 , the vibration is determined to be in a “weak level”.
- the thresholds Y 1 and Y 2 calculated from equations (1) and (2), it is determined which level of the “strong, medium, weak” pattern the magnitude (E) of the current vibration value corresponds to.
- the determination process for example, the following process is performed.
- the magnitude (E) of the current vibration value exceeds the threshold Y 1 , the magnitude (E) of the current vibration value is determined to be in a “strong” level in the “strong, medium, weak” pattern.
- the magnitude (E) of the current vibration value is the threshold Y 1 or lower and exceeds the threshold Y 2 , the magnitude (E) of the current vibration value is determined to be in a “medium” level in the “strong, medium, weak” pattern.
- step S 514 After the termination of the process at step S 512 .
- step S 514 After the termination of the process at step S 513 .
- the information on levels of the “strong, medium, weak” pattern determined in the process of step S 512 or step S 513 is stored in magnitude type archive memory generated in the main memory 33 . Then, information, indicating that an input value, which is determined based on the information on levels in a pattern stored in the magnitude type archive memory, corresponds to which value of the pattern (to the “weak” level, the “medium” level or the “strong” level), is stored in a command determination table in time-series order.
- step S 501 to step S 514 provides information relating to a level pattern in which vibration generated every time the player taps the mounting base 8 one time to play the game is classified into any one of “strong, medium, weak” level patterns.
- Information determined based on the provided level pattern is sequentially stored in time-series order in the command determination table in the main memory 33 .
- the procedure of a process for storing a “strong, medium or weak” level pattern in the command determination table is described in steps S 24 a to S 24 c which will be described later.
- the command determination process is executed by the special input command determination program P 9 .
- Step S 24 a (Step S 24 b )
- step S 24 b it is determined whether or not the number of “strong, medium, weak” level patterns stored in the aforementioned command determination table reaches an upper limit.
- the upper limit is set, for example at an appropriate value from about “7” to about “15”.
- FIG. 22A is a table illustrating an example of data structure of the command determination table (TC 1 ).
- the command determination table (TC 1 ) shown in FIG. 22A shows an example that the upper limit of the number of stored pieces of information on the “strong, medium, weak” level pattern is set at 10, in which three level patterns are stored at this moment.
- the larger the number in storage order the older the information relating to the “strong, medium, weak” level pattern in time sequence.
- the array in time series order (array in chronological order) of the information relating to the “strong, medium, weak” level pattern stored in the command determination table (TC 1 ) matches any one of special input commands pre-registered in the special input command table. That is, it is determined whether or not, when the gaming machine 3 sequentially acquires vibrations generated by motions of the player continuously tapping the mounting base 8 a plurality of times, the vibration is established as a command (special input command) for controlling the game. As a result of the determination process, if it matches, the flow goes to step S 24 e , and if it does not match, this command determination process is terminated.
- the special input command refers to a plurality of control commands including a combination of one or more patterns previously set for executing the game control. If an array of information sequentially stored in time series order in the command determination table, of the information relating to a plurality of vibration values input, matches a predetermined control command, the array is determined to be input as a special input command. Then, for each special input command, for example, the main control program P 0 performs a process of displaying a previously-set unique image on the monitor 2 .
- FIG. 23A shows an example of the data structure of a previously-set special input command table (TT 1 ) for executing game control for each type of previously-set special input commands.
- the special input command table (TT 1 ) shown in FIG. 23A is a data table in which, based on identification information on each of types of previously-set special input commands, information including array of a plurality of pieces of information relating to the aforementioned “strong, medium, weak” level pattern showing each of the special input commands, and a command execution program name (start address of a program) required for executing the game control for each special input command are stored.
- the main control program P 0 Since it is determined at step S 24 d that the motion of the player continuously tapping the mounting base 8 multiple times is established as a special input command for controlling the game, the main control program P 0 performs a process of executing the program of the command execution program name registered in the special input command table (TT 1 ) in accordance with the established special command. For example, if it is determined that the array in time series order of a “strong, medium, weak” level pattern corresponding to a motion of the player continuously tapping the mounting base 8 multiple times is made up of “strong”, “strong”, “strong”, “weak” (identification information of the special input command is “02”), the main control program P 0 executes a program for a “large-scale firework display” shown in the special input command table (TT 1 ). As a result, a moving image of the large-scale firework display and the sound effects are output from the monitor 2 .
- the established special input command may be displayed using diagrams, characters and the like on the monitor 2 .
- Implementation of such control makes it possible for the player to look at a desired image if information on a vibration value corresponding to a tap motion of the player matches a special input command.
- step S 24 a to step S 24 f are repeatedly executed.
- the aforementioned special input command table (TT 1 ) is adapted to be employed for, for example, game B in the menu of games executed by the game device 3 shown in FIG. 9B .
- the embodiment comprises means for performing the previously-set game control in accordance with the matched special input command.
- the determination of the “tap rhythm” generated when the player taps the mounting base 8 can be implemented by separating a time period during which vibration generated by tapping the mounting base 8 (vibration detection signal) is input to the game device 3 (hereinafter referred to as a “tap input period”) and a time period during which the vibration detection signal is not input (hereinafter referred to as a “rest period”) in terms of the elapsed time axis in time sequence.
- the “tap input period” and the “rest period” forming the “tap rhythm” are varied in length by various situations when the player taps the mounting base 8 (the degree of strength to tap, times of a day, mental condition and the like) and on attribution of a player himself (small child, child, adult, or the like).
- the embodiment according to the present invention comprises means for accurately determining the “rest period” in accordance with the procedure shown in FIG. 21 .
- the method of determining the “rest period” will be described below with reference to the flowchart in FIG. 21 .
- the process of determining the “rest period” is executed by the tap/rest command determination program P 9 a shown in FIG. 8 .
- step S 601
- “zero” is stored in a count area defined in the main memory 33 in order to count number (I) which stores “S” ((current time) ⁇ (time of the preceding tap)) described later. Then, in the determination process, for the purpose of storing the “tap input period” or the “rest period” which is the determination result, “zero” representative of the “rest period” is stored (“OFF” illustrated in FIG. 21 ) in a tap-rest flag (“FLAG” illustrated in FIG. 21 ) generated in the main memory 33 .
- the “tap rhythm” input after FLAG has been turned ON is recognized as a command (special input command). Accordingly, if it is determined that the rest period is longer than a certain set time, FLAG is turned OFF, so that the “tap rhythm” input at an interval which is unrecognizable as a command is not recognized as a command, which will be described later.
- step S 502 The same process as that in step S 502 is executed. Specifically, it is determined whether or not, because the player has operated by tapping the mounting base 8 to play the game, the measured value of vibration acquired from the controller 7 is input as an operation signal to the game device 3 . For this determination, for example, it is determined whether or not the stored contents of the “vibration trigger” processed in step S 405 , S 410 or S 418 showing the processing of the correction-value operation program P 6 shown in FIG. 16 is ON (“1”).
- step S 603 the flow goes to the next step S 603 , and if “0” is stored, the flow goes to step S 611 .
- the main control program P 0 controls such that the processes after step S 602 are executed at predetermined time intervals.
- Step S 603 (Step S 604 )
- step S 602 It is determined whether or not “1” representative of “ON” is stored in the tap/rest flag. If “1” is not stored, the process of storing “1” in the tap/rest flag again is performed. Then the flow goes back to step 602 . Then, the process in step S 602 is executed after the elapse of a predetermined time.
- the value of S is once stored in the main memory 33 .
- the “S” means a difference (tap interval) between current time (time value) and a time value of the preceding tap.
- the time of the preceding tap reference to a time value when a newest vibration trigger with going back from the current time in time sequence is turned ON.
- Step S 606 (Step S 606 ) (Step S 607 )
- I the number of counts (I) exceeds a previously-set maximum number (upper limit). Note that “I” means the number of tap intervals stored in the interval storage memory for preserving the input interval time. As a result of the determination process, if it is determined that “I” exceeds the upper limit, the flow goes to step S 607 to delete the oldest time from the interval storage memory. If not exceeding, the flow goes to step S 608 .
- the upper limit of the number of counts (I) a value of around “2” or in a range from about “2” to about “5” is set.
- the upper limit is “2” or “2” or larger, and if a value closer to “2” is used, the number of counts (I) can be determined by newest tap rhythm generated by a motion of the player tapping the mounting base 8 .
- the number of counts (I) is a value necessary for the rest determination time which is the base time for determining whether or not FLAG is turned OFF after input.
- a process is performed for deleting the oldest S in time sequence in the preserved data storage area defined in the main memory 33 for sequentially storing the values of S calculated in step S 605 . Then, the subtraction of “1” from the number of counts I is performed, and then the flow goes to step S 608 .
- the value of S calculated by the process in step S 605 is stored in the preserved data storage area defined in the main memory 33 .
- a process is performed for storing the values of S in time sequence order in the preserved data storage area. The addition of “1” to the number of counts (I) is performed.
- the tap/rest flag is “ON”, that is, a tap signal is input (the measured value detected by the accelerator sensor 73 is a value indicating that the player has tapped), so that “2” representative of “tap period” is stored.
- the information stored in the tap/rest flag is stored in time series order in the command determination table (TC 2 ) constructed in the main memory 33 .
- FIG. 22B shows an example of data structure of the command determination table TC 2 .
- Information relating to the tap/rest flag, “02 (tap input period)”, “02 (tap input period)”, and “01 (rest period)”, are stored in time sequence order (in reverse chronological order) in the command determination table (TC 2 ) shown in FIG. 2B .
- Step S 612 (Step S 613 )
- the rest determination time (T 0 ) is a value assumed as a time interval between regular tap motions of the player, that is, a time acting as a criterion for determined whether or not to turn FLAG OFF after tap input (after a tap input period has been determined). A value of, for example, about 0.3 seconds to about 0.5 seconds is set as the rest determination time (T 0 ).
- a mean value (A) of differences between all the time values (S) stored in the preserved data storage area and the rest determination times (T 0 ) is calculated and stored in the main memory 33 .
- T rest determination time( T 0) ⁇ A ⁇ (rest determination
- the aforementioned “A” is a value calculated at step S 614 .
- the “rest determination correction value” is a time value for adjustment previously set for determining whether or not the time axis is in the rest period.
- the mean value (A) of the differences between all the newest time values (S) stored in the preserved data storage area and the rest determination time (T 0 ) is assumed as (A 1 )
- the following equation may be used.
- T rest determination time( T 0) ⁇ A1 ⁇ (rest determination
- Step S 618 it means that the rest period is longer than is required to be recognized as a command, so that the process is performed at step S 618 . If Sa>T does not hold, it means to be during the rest period required to be recognized as a command. Therefore, the flow goes back to step S 602 .
- the tap/rest flag is turned OFF (“1” is stored). That is, the rest period is recognized as one exceeding the period of time required of a command. Accordingly, the “tap rhythm” is input at intervals which cannot be recognized as a command, and a command as a tap input period is not determined. In short, this step corresponds to “NO” in step S 24 d in FIG. 11 , and the command determination process is terminated.
- the time of the preceding rest can be calculated by, for example, a process of sequentially storing a time value at which the tap/rest flag is turned “OFF” and a time value at which the tap/rest flag is tuned “ON”.
- the maximum rest time (Tm) is a time value previously set for determining that a rest period continues after a period required to be recognized as a rest period, which is a time for determining whether or not the rest will be followed by another rest. For example, a value ranging from around 0.6 seconds to around 1.2 seconds is set as the maximum rest time (Tm).
- the tap/rest command determination program P 9 b When the tap/rest command determination program P 9 b is executed in accordance with the procedure shown in FIG. 21 , the information about a tap period and a rest period is stored in time sequence order in the command determination table TC 2 by the process in step S 610 .
- the tap period is a period without consideration given to a level of the intensity of input vibration. This means that information relating to rhythm of taps and rests when the player continuously taps the mounting base 8 is stored in the command determination table TC 2 .
- FIG. 23B shows an example of the data structure when a plurality of types of previously-set special input commands are set as a special input command table (TT 2 ).
- the special input command table (TT 2 ) is a data table in which patterns of arrays of information on the tap input period and the rest period serving as individual special input commands, and command execution program names (program start address) for executing game control for the respective special input commands are stored with being organized by identification information on each type of previously-set special input commands.
- the monitor 2 displays a moving image of swimming killifish.
- the main control program P 0 performs the process of operating the monitor 2 to display a moving image of swimming and jumping whales.
- the embodiment relating to the aforementioned game control in consideration of tap rhythm has described an example of control without, in the tap input period, making a determination of a level of the intensity when the player taps the mounting base 8 .
- this makes it possible to implement game control in which an intensity level of a tap motion of the player is reflected in tap rhythm.
- the embodiments according to the present invention have described an example of effectively using vibration generated by a tap motion of the player for a game.
- the present invention can be applied to a device of operating a liquid crystal display to display various relaxing images with music in response to a pattern of, for example, a motion of tapping a wall or the like in a waiting room of a hospital, a doctor's office or the like, a break room, or the like.
- an application program for communicating vibration detected by a 3D acceleration sensor via infrared communication is installed on a mobile telephone with a 3D acceleration sensor and an infrared communication function, thereby using the mobile telephone as the controller used in the present invention.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
A game device capable of controlling a game without a special game operation is provided.
A controller 7 which is means for inputting game operation to a game device 3 comprises an acceleration sensor 73 detecting vibration applied to the input means. Control means for controlling the game in the game device 3 comprises means for determining an intensity level of a vibration value of vibration generated by a tap motion of a player when the controller 7 transmits a measured value of the vibration, and means for determining whether or not an array pattern of the determined intensity levels in time series order matches a previously-set command. The control means comprises means for, if it matches the previously-set command, executing special game control set corresponding to the matched command.
Description
- The present invention relates to a game device, a control method of controlling a game in the game device, a program controlling the game and a computer-readable recording medium storing the program, all of which detect a game operation of the player from an input signal or the like, and cause a computer of the game device to execute game processing on the basis of the detected input signal.
- Conventionally, for game devices such as home games, arcade games and the like, as a method of detecting an operation of the player to play a game (hereinafter referred to as “operation input”), there have been known detection methods with reference to a plurality of operation means such as a detection with reference to a button pressing operation, a detection with reference to the player stepping operation, a detection with reference to images of the player in motion taken by a camera, a detection of vibration resulting from a tap motion by the player, and the like.
- In the detection methods with reference to the above-described player button pressing operation and the above-described player stepping operation, the player can carry out his desired game operation by appropriately operating a button or a specific site on a console platform for stepping operation (for example, a pedal or the like) necessary to provide operation input (see
Patent Document 1 and Patent Document 2). - Also, as a method that releases the player from learning how to operate the button and the like required for input for game operation, a method of detecting a motion of the player with a camera, a method of detecting vibration produced in the device by a “tap motion” of the player tapping the operation input means, and the like are proposed. The employment of a method for detecting such special operation input enables accurate reflection of a game operation desired by the player (see Patent Document 3).
-
- Patent Document 1: Japanese Patent Application Laid-Open No. 2001-232060
- Patent Document 2: Japanese Patent Application Laid-Open No. 2008-036167
- Patent Document 3: Japanese Patent Application Laid-Open No. 2005-287794
- However, game devices employing the aforementioned detection methods proposed in
Patent Document 1 orPatent Document 2 have the disadvantages that the player must hold a device required to provide operation input (controller) and learn the functions of the buttons required for operation input in order to carry out the operation. Game operation performed by the appropriate operation of a specific site of a platform involves the disadvantage that, unless the player learns the specific site on the platform, the player cannot carry out the game operation for an actual game. Therefore, the necessity for the player to hold a device required for operation input by hand or the necessity for the player to memorize various motions for providing operation input is a considerable burden on players who cannot hold a device necessary for operation input for some reason or who are beginners in game, which is one of the causes of losing interest in games. - In game devices employing the aforementioned detection methods proposed by
Patent Document 3, the use of a special device designed specially for implementing the special detection methods is required. The special-designed device is incapable of being used for any game except for a special game using the specially-designed device. Even if the special-designed device can be used for a game other than the special game, an error or noise may possibly be included in an input signal in the input method based on the operation of the specially-designed device. Moreover, a game device employing the input method based on the specially-designed device is limited in installation site, resulting in lack of versatility and also lack of reality. - The present invention has been made in view of the above circumstances. It is an object of the present invention to provide a game device, a method for controlling a game of the game device, a program controlling the game and a computer-readable recording medium storing the program, which use a widely available, versatile operation device, in particular, vibration detecting means for detecting vibration, to detect a vibration signal without use of a special game device as described above, in particular, of a special game operation device, and determine it as an operation signal for controlling a game in order to enable players to operate the game without learning the use of various buttons or a specific site on a console platform which are necessary to input the operation signal.
- To address the problems, an invention according to
claim 1 provides a game device, comprising: - input means capable of acquiring operation input in a game as operation input information; and
- control means for controlling game progress on the basis of the operation input information,
- wherein the input means comprises vibration detection means for detecting vibration applied to the input means,
- the control means comprises vibration level determination means for determining a level of a vibration detection signal detected by the vibration detection means, and
- the control means executes game control using determination information determined by the vibration level determination means as the operation input information received from the input means.
- An invention according to
claim 2 provides a game device, comprising: - input means capable of acquiring operation input in a game as operation input information; and
- control means for controlling game progress on the basis of the operation input information,
- wherein the input means comprises,
- vibration detection means for detecting vibration applied to the input means, and
- vibration level determination means for determining a level of a vibration detection signal detected by the vibration detection means, and
- the control means executes game control using determination information determined by the vibration level determination means as the operation input information received from the input means.
- An invention according to
claim 3 provides a game device, comprising: - input means capable of acquiring operation input in a game as operation input information; and
- control means for controlling game progress on the basis of the operation input information,
- wherein the input means comprises vibration detection means for detecting vibration applied to the input means,
- the control means comprises
- vibration pattern determination means for determining one or more level pattern of a vibration detection signal detected by the vibration detection means, and
- special input command determination means for determining whether or not an array corresponding to time sequence of information relating to the level pattern determined by the vibration pattern determination means matches a special input command previously set, and
- the control means executes game control using the special input command matching determined by the special input command determination means as the operation input means received from the input means.
- An invention according to
claim 4 provides a game device, comprising: - input means capable of acquiring operation input in a game as operation input information; and
- control means for controlling game progress on the basis of the operation input information,
- wherein the input means comprises
- vibration detection means for detecting vibration applied to the input means, and
- vibration pattern determination means for determining one or more level patterns of a vibration detection signal detected by the vibration detection means,
- the control means comprises special input command determination means for determining whether or not an array corresponding to time sequence of information relating to the level pattern determined by the vibration pattern determination means matches a special input command previously set, and
- the control means executes game control using the special input command matching determined by the special input command determination means as the operation input means received from the input means.
- An invention according to
claim 5 relates to the game device according to any ofclaim 1 orclaim 2, wherein - the input means comprises vibration generation means,
- the control means comprises
- mounting determination means for determining that the input means is mounted on an installable mounting site when a vibration detection signal of a previously-set first predetermined value or less is received for a certain time-period from the vibration detection means,
- vibration generation means for allowing the vibration generation means mounted on the mounting site to generate a first vibration for a predetermined time on the basis of a determination result by the mounting determination means,
- natural-vibration value calculation means for calculating a natural vibration value in the mounting site from the vibration detection signal of the first vibration detected by the vibration detection means, and
- vibration correction value calculation means for correcting a vibration detection signal of a second vibration applied to the mounting site as the operation input information detected by the vibration detection means, on the basis of the natural vibration value, and
- the vibration level determination means determines the level on the basis of the vibration detection signal of the second vibration corrected by the vibration correction value calculation means.
- An invention according to
claim 6 relates to the game device according to any ofclaim 3 orclaim 4, wherein - the input means comprises vibration generation means,
- the control means comprises
- mounting determination means for determining that the input means is mounted on an installable mounting site when a vibration detection signal of a previously-set first predetermined value or less is input for a certain time-period from the vibration detection means,
- vibration generation means for allowing the vibration generation means mounted on the mounting site to generate a first vibration for a predetermined time on the basis of a determination result by the mounting determination means,
- natural-vibration value calculation means for calculating a natural vibration value in the mounting site from the vibration detection signal of the first vibration detected by the vibration detection means, and
- vibration correction value calculation means for correcting a vibration detection signal of a second vibration applied to the mounting site as the operation input information detected by the vibration detection means, on the basis of the natural vibration value, and
- the vibration pattern determination means determines the level pattern on the basis of the vibration detection signal of the second vibration corrected by the vibration correction value calculation means.
- An invention according to
claim 7 relates to the game device according toclaim 6, wherein the vibration pattern determination means comprises input vibration classification means for classifying the corrected vibration detection signal of the second vibration in one or more level patterns with use of intensity as a criterion by a level of the corrected vibration detection signal of the second vibration. - An invention according to
claim 8 relates to the game device according toclaim 6, wherein the vibration pattern determination means comprises tap/rest setting means for making a level of the corrected vibration detection signal of the second vibration correspond to an elapsed time axis to set a level pattern including a tap input period in which it is determined that the vibration detection signal has been input, and a rest period in which the vibration detection signal has not been input. - An invention according to
claim 9 relates to the game device according toclaim 7, further comprising storage means, - wherein the control means
- the vibration pattern determination means comprises
- vibration correction value storage means for sequentially storing the vibration detection signals of the second vibration corrected by the vibration correction value calculation means in time sequence order in the storage means as a third vibration detection signal,
- level pattern threshold calculation means for calculating a threshold used for classification for determining which level pattern the third vibration detection signal belongs to, on the basis of one or more piece of information including newest information on the third vibration detection signals stored in time sequence by the vibration correction value storage means, and
- level pattern storage means for determining which level pattern the newest third vibration detection signal after correction belongs to, on the basis of the calculated threshold, and storing information relating to the determined level pattern in the storage means.
- An invention according to
claim 10 relates to the game device according toclaim 8, further comprising storage means, - wherein the control means comprises
- tap time-interval storage means for, regarding the vibration detection signal of the second vibration corrected by the vibration value calculation means, sequentially storing, in time sequence order, time intervals at which the vibration detection signals of the second vibration adjacent to each other in time sequence are input in the storing means,
- rest determination time correction means for calculating a corrected rest determination time corrected, on the basis of the time interval and/or a previously-set rest determination time stored in the tap time-interval storage means, when it is determined that the vibration detection signal is not input, and
- rest period determination means for determining, as the rest period, the elapsed time axis along which it is determined that the vibration detection signal is not input, when it is determined that a difference time value S between a current time value and a time value input by the vibration detection signal of the second vibration is larger than the corrected rest determination time.
- An invention according to
claim 11 relates to the game device according to any ofclaims 1 to 4, further comprising - conversion value calculation means for calculating a conversion value on the basis of a predetermined equation when the vibration detection signal detected by the vibration detection means is equal to or less than a second predetermined value.
- An invention according to
claim 12 relates to the game device according to any ofclaims 1 to 4, further comprising - associated vibration setting means for measuring vibration detection signals predetermined times detected by the vibration detection means, and when the input means detects one-time vibration, for setting vibration detected except for the one-time vibration as associated vibration generated with the one-time vibration, on the basis of the vibration detection signals measured predetermined times.
- Further, an invention according to
claim 13 provides a method of controlling game progress in a game device including input means having vibration detection means for detecting vibration, comprising - a vibration level determination step of determining a level pattern of a vibration value detected by the vibration detection means to obtain determination information; and
- a vibration-level-determination-based game-control step of controlling execution of a game by use of the determination information obtained by the vibration level determination step as game control information.
- An invention according to
claim 14 provides a method of controlling game progress in a game device including input means having vibration generation means and vibration detection means for detecting vibration, comprising - a mounting determination step of determining that the input means is mounted on an installable mounting site when a vibration value of a previously-set predetermined value or less is detected for a certain time-period by the vibration detection means;
- a vibration start step of starting a first vibration by the vibration generation means on the basis of a determination result in the mounting determination step;
- a vibration detection step of actuating the vibration detection means to detect the first vibration when the first vibration occurs by the vibration start step;
- a natural-vibration value calculation step of calculating a natural vibration value in the mounting site from a first vibration value based on the first vibration detected by the vibration detection step;
- when the vibration detection means detects a second vibration applied to the mounting site and used for operation input, a correction value calculation step of calculating a correction value on the basis of a second vibration value based on the second vibration and the natural vibration value; and
- a correction value operation conversion step of converting operation input information based on the correction value into game control information.
- An invention according to
claim 15 relates to the method of game control according toclaim 14, comprising: - a vibration pattern determination step of determining one or more level patterns of the correction value calculated in the correction value calculation step;
- a special input commend determination step of determining whether or not an array corresponding to time sequence of information relating to the level pattern determined in the vibration pattern determination step matches a previously-set special input command; and
- a command execution step of executing game control by use of the special input command determined to match in the special input signal determination step as the operation input information input from the input means.
- An invention according to claim 16 relates to the method of game control according to
claim 14, wherein the vibration pattern determination step comprises input vibration classification step of classifying the corrected vibration detection signal of the second vibration in one or more level patterns with use of intensity as a criterion by a level of the corrected vibration detection signal of the second vibration. - An invention according to claim 17 relates to the method of game control according to
claim 14, wherein the vibration pattern determination step comprises tap/rest setting step of making a level of the corrected vibration detection signal of the second vibration correspond to an elapsed time axis to set a level pattern including a tap input period in which it is determined that the vibration detection signal has been input, and a rest period in which the vibration detection signal has not been input. - An invention according to claim 18 provides a program of controlling game progress in a game device including input means having vibration detection means for detecting vibration, comprising
- a vibration level determination program of determining a level pattern of a vibration value detected by the vibration detection means to obtain determination information; and
- a vibration-level-determination-based game-control program of controlling execution of a game by use of the determination information obtained by the vibration level determination program as game control information.
- An invention according to claim 19 provides a program of controlling game progress in a game device including input means having vibration generation means and vibration detection means for detecting vibration, comprising
- a mounting determination program having a step of determining that the input means is mounted on an installable mounting site when a vibration value of a previously-set predetermined value or less is detected for a certain time-period by the vibration detection means;
- a vibration start program having a step of starting a first vibration by the vibration generation means on the basis of a determination result in the mounting determination program;
- a vibration detection program having a step of actuating the vibration detection means to detect the first vibration when the first vibration occurs by the vibration start program;
- a natural-vibration value calculation program having a step of calculating a natural vibration value in the mounting site from a first vibration value based on the first vibration detected by the vibration detection program;
- a correction value calculation program that has, when the vibration detection means detects a second vibration applied to the mounting site and used for operation input, a step of calculating a correction value on the basis of a second vibration value based on the second vibration and the natural vibration value; and
- a correction value operation conversion program having a step of converting operation input information based on the correction value into game control information.
- An invention according to
claim 20 relates to the program of game control according to claim 19, which comprises: - a vibration pattern determination program having a step of determining which level pattern of one or more level patterns the correction value calculated by the correction value calculation program corresponds to;
- a special input signal determination program having a step of determining whether or not an array corresponding to time sequence of information relating to the level pattern determined by the vibration pattern determination program matches a previously-set special input command; and
- a command execution program having a step of executing game control by use of the special input command determined to match by the special input signal determination program as the operation input information input from the input means.
- An invention according to claim 21 relates to the program of game control according to claim 19, wherein the vibration pattern determination program comprises input vibration classification program having a step of classifying the corrected vibration detection signal of the second vibration in one or more level pattern with use of intensity as a criterion by a level of the corrected vibration detection signal of the second vibration.
- An invention according to claim 22 relates to the program of game control according to claim 19, wherein the vibration pattern determination program comprises tap/rest setting program having a step of making a level of the corrected vibration detection signal of the second vibration correspond to an elapsed time axis to set a level pattern including a tap input period in which it is determined that the vibration detection signal has been input, and a rest period in which the vibration detection signal has not been input.
- An invention according to claim 23 provides a computer-readable recording medium storing the program according to any of claim 18 to claim 22.
- The computer-readable recording medium includes a recording medium capable of recording data of a program such as an optical disc including a CD-ROM, a DVD and the like, a flash memory, a RAM, a ROM, a magnetic disc drive and the like.
- The aforementioned input means is an input device capable of accepting various input operations of a player, for example, an input device including a remote controller, a controller and the like.
- The first predetermined value means a threshold for detecting primitive (natural occurrence) vibration without application of vibration generated by vibration start means to a mounting site, and also irrespective of operation of the player. The second predetermined value means a value serving as a reference for input as an operation signal, which is greater than the vibration in the mounting site (first predetermined value) out of the vibrations detected by the vibration detection means. In a process in the present invention, a detected vibration value equal to or less than the first predetermined value is assumed as a naturally generated vibration value and is not employed as operation input signal. Then, when the detected vibration value is equal to or greater than the first predetermined value and equal to or less than the second predetermined value, a conversion process is performed by predetermined procedure in order to use the vibration value as a game control signal, so that the converted information is used as the operation input signal to execute game control.
- Moreover, the aforementioned game control program based on the vibration level determination refers to a program for controlling a previously set game for each piece of determination information determined in the aforementioned vibration level determination step (or by vibration level program). The game control program based on the vibration level determination refers to, for each piece of determination information, for example, a program for displaying a presentation of moving image of a small-scaled firework on the monitor, a program for displaying a presentation of moving image of continuous launching of large-scaled fireworks on the monitor, or the like.
- According to the present invention, a game device comprising input means capable of acquiring operation input in a game as operation input information, and control means for controlling game progress on the basis of the operation input information. The input means comprises vibration detection means for detecting vibration applied to the input means, and determination means for determining a level of the vibration value detected by the vibration detection means. The control means changes the result of the determination by the determination means to be used as operation input information in the input means for game control information. As a result, for example, widely available and versatile input means, as long as it has vibration detection means as typified by a detection sensor or the like, can be used in the game system according to the present invention.
- When the control means determines a level of a vibration value, the input means may include only the essential structure (vibration detection means), resulting in simplification of the structure of the input means.
- If the input means determines a level of a vibration, when the input means detects vibration, the input means can additionally determine the vibration. Accordingly, the control means simply use the determination result by the input means (the result by the vibration determination) as the operation input information, resulting in a reduction in load on the control means for the game control processing.
- Means for classifying vibration subsequently applied in time sequence to the mounting base or the like into intensity patterns is provided. This makes it possible to provide a game device with new attractive ideas enabling execution of special game control, although the operation method is simple in that it is necessary only to change the intensity of a tap motion once an array of intensity patterns in time sequence order corresponding to the strength produced by the player tapping the mounting base or the like becomes coincident with the predetermined commend. In addition, it is possible to determine the intensity on a player basis, even when the strength varies depending on various situations when the player taps the mounting base or the like (the degree of strength to tap, times of a day, mental condition and the like) and on attribution of a player himself (small child, child, adult, or the like).
- Means is provided for dividing the vibration sequentially applied in time sequence to the mounting base or the like (that is, “tap rhythm”) into two periods, one being a tap period in which vibration is detected according to elapsed time and the other being a rest period in which vibration is not detected. This means makes it possible to provide a game device with new attractive ideas enabling execution of special game control, although the operation method is simple in that when an array of time sequence order of the tap period and the rest period corresponding to tap rhythm of the player matches a command previously set, the rhythm of a tap motion changes simply. In addition, it is possible to determine the “tap rhythm” on a player basis, even when the “tap rhythm” varies depending on various situations when the player taps the mounting base or the like (the degree of strength to tap, times of a day, mental condition and the like) and on attribution of a player himself (small child, child, adult, or the like).
-
FIG. 1 is an external view illustrating agame system 1 according to an embodiment of the present invention. -
FIG. 2 is a function block diagram illustrating the hardware configuration of agame device 3 forming part of thegame system 1 according to the embodiment. -
FIGS. 3A , 3B are perspective views of the top surface and the underside of acontroller 7 forming part of thegame system 1 according to the embodiment when viewed from the rear end. -
FIGS. 4A , 4B are likewise perspective views illustrating thecontroller 7 forming part of thegame system 1 according to the embodiment, without its upper housing element and lower housing element. -
FIG. 5 is likewise a function block diagram illustrating the hardware configuration of thecontroller 7 forming part of thegame system 1 according to the embodiment. -
FIGS. 6A , 6B are diagrams illustrating an example of a screen in a game assumed by thegame system 1 according to the embodiment. -
FIGS. 7A , 7B are likewise diagrams illustrating an example of a screen in a game made up by thegame system 1 according to the embodiment. -
FIG. 8 is a diagram illustrating an example of a structure of a program controlling a game stored in thegame device 3 forming part of thegame system 1 according to the embodiment. -
FIG. 9A is a flowchart illustrating an example of the procedure for controlling the game in the control program stored in thegame device 3 forming part of thegame system 1 according to the embodiment, andFIG. 9B is a diagram illustrating an example of a menu screen displayed on a monitor by the control program. -
FIG. 10 is likewise a flowchart illustrating an example of the procedure for controlling a game in the control program. -
FIG. 11 is likewise a flowchart illustrating an example of the procedure for controlling a game in the control program. -
FIG. 12 is likewise a flowchart illustrating an example of the procedure for controlling a game in the control program. -
FIGS. 13A , 13B are graphs showing changes in vibration values in each mounting place of thecontroller 7 of thegame system 1 according to the embodiment,FIG. 13A showing when thecontroller 7 is mounted on a hard surface andFIG. 13B showing when thecontroller 7 is mounted on a soft surface. -
FIG. 14 is a flowchart illustrating an example of the procedure for controlling a game in the control program stored in thegame device 3 forming part of thegame system 1 according to the embodiment. -
FIG. 15 is likewise a flowchart illustrating an example of the procedure for controlling a game in the control program. -
FIG. 16 is likewise a flowchart illustrating an example of the procedure for controlling a game in the control program. -
FIG. 17 is a graph showing an example of the time-series variations in the results of the correction processing performed on vibration values (weak input) transmitted to thegame device 3 after being detected by thecontroller 7 of thegame system 1 according to the embodiment following a top motion of the player. -
FIG. 18 is a graph showing an example of the time-series variations in the results of the correction processing performed on vibration values (medium input) transmitted to thegame device 3 after being detected by thecontroller 7 of thegame system 1 according to the embodiment following a top motion of the player. -
FIG. 19 is a graph showing an example of the time-series variations in the results of the correction processing performed on vibration values (strong input) transmitted to thegame device 3 after being detected by thecontroller 7 of thegame system 1 according to the embodiment following a top motion of the player. -
FIG. 20 is a flowchart illustrating an example of the procedure for controlling a game in the control program stored in thegame device 3 forming part of thegame system 1 according to the embodiment. -
FIG. 21 is likewise a flowchart illustrating an example of the procedure for controlling a game in the control program stored in thegame device 3 forming part of thegame system 1 according to the embodiment. -
FIGS. 22A , 22B are likewise diagrams illustrating an example of data structure in command determination tables built for controlling a game by the control program,FIG. 22A showing a table for determining a command about the magnitude of vibration value, andFIG. 22B showing a table used for determining the rhythm of rests and the occurrence of vibrations. -
FIGS. 23A , 23B are likewise diagrams illustrating an example of data structure in special input command tables contained in the control program,FIG. 23A showing a table in which special commands about the magnitude of vibration value are registered,FIG. 23B showing a table in which special commands about rests and the occurrence of vibrations are registered. - An embodiment according to the present invention will be described below with reference to the accompanying drawings.
FIG. 1 is an external view illustrating agame system 1 using a game device according to the embodiment. - [Overall Structure of Game Device]
- In
FIG. 1 , thegame system 1 includes a stationary game device (hereinafter referred to as a “game device”) 3 which is connected through a connecting cord to a display (hereinafter referred to as a “monitor”) 2 equipped withspeakers 2 a such as a television receiver for home use, acontroller 7 which provides information on game operation and the like to thegame device 3, and a mountingbase 8 on which thecontroller 7 is mounted. - The
game device 3 is connected to areceiver unit 6 via a connection terminal. Thereceiver unit 6 receives transmission data transmitted from thecontroller 7 over the radio, so that thecontroller 7 and thegame device 3 are connected by communicating over the radio. Thegame device 3 includes a disc drive 40 (seeFIG. 2 ) apparatus on and from which a removableoptical disc 4 which is an example of information recording media for use in thegame device 3 is loaded and unloaded. Further, thegame device 3 is provided with a switch for powering thegame device 3 ON/OFF, a reset switch for game processing, and an OPEN switch for opening a disc tray in order to load/unload anoptical disc 4 on/from thedisc drive 40, all of which are not shown. In this connection, the player depresses the OPEN switch, whereupon the disc tray is ejected from the inside of thegame device 3 to enable the player to load/unload theoptical disc 4. After theoptical disc 4 is unloaded/loaded again, the disc tray is slid back into thegame device 3 to enable thegame device 3 to read theoptical disc 4. In this regard, thecontroller 7 corresponds to input means in the embodiment. - The
game device 3 is fitted with anexternal memory card 5 which is removable as appropriate. Theexternal memory card 5 has backup memory permanently storing saved data and the like. Thegame device 3 executes a game based on a game program stored on theoptical disc 4 or in response to an input signal from the input means (controller 7), and displays the result as a game image on themonitor 2 serving as display means. When theexternal memory card 5 is inserted, thegame device 3 can use the saved data stored in theexternal memory card 5 to reproduce the state of a game which has been carried out by the player in past times, and display the result, for example, as a game image on themonitor 2 serving as the display means. Alternatively, instead of theexternal memory card 5, a memory, not shown, specially designed for saved data is provided in themain memory 33 within the main body or in the main body itself in order to store saved data. Then, while looking at the game image displayed on themonitor 2, the player operates thecontroller 7 to proceed to carry out the rest of the game. - The
controller 7 operates acommunication unit 75 provided therein (seeFIG. 5 ) to send transmission data via radio to thegame device 3 connected to thereceiver unit 6 by the use of techniques of, for example, Bluetooth (trademark). Thecontroller 7 is operating (input) means for acquiring, mainly, the operation input information required for operating the player object appearing on the game space displayed on themonitor 2. Thecontroller 7 is equipped with operating switches including a plurality of operation buttons, keys, sticks and the like. - The mounting
base 8 serves as a mounting place enabling the mounting of thecontroller 7. The player taps the mountingbase 8, whereupon vibration (second vibration) is created in the mountingbase 8, which then travel to thecontroller 7, so that the vibration traveling to thecontroller 7 are detected. In the embodiment, a box-shaped mounting base made of cardboard or the like is employed. Note that the material of the mountingbase 8 is not limited particularly to cardboard or the like as long as the material is able to transmit vibration to thecontroller 7 when the player taps the mounting base 8 (for example, a box made of cardboard or the like or a plate made of wood or the like). However, a soft material incapable of transmitting vibration by absorbing the vibration produced in the mountingbase 8 by the player is not desirable. Also, the shape of the mountingbase 8 is not limited to a box shape, and, for example, it may be a plate shape (wood or the like), or alternatively the floor itself may be used as a mounting place. - (Control Mechanism of Game Device)
- Next, the configuration of the control mechanism for controlling the operation of the
game device 3 will be described with reference toFIG. 2 .FIG. 2 is a functional block diagram illustrating the processing functions of thegame device 3. - In
FIG. 2 , thegame device 3 includes, for example, a CPU (Central Processing Unit) 30 for executing and controlling various programs. TheCPU 30 executes a boot program stored in a boot ROM, not shown, and then initializes the memory in themain memory 33 and the like. Then, theCPU 30 executes a game program stored on theoptical disc 4 to carry out game processing or the like in accordance with the game program. TheCPU 30 is connected via amemory controller 31 to a GPU (Graphics Processing Unit) 32, amain memory 33, a DSP (Digital Signal Processor) 34 and an ARAM (Audio RAM) 35. Thememory controller 31 is connected via a predetermined bus to a controller I/F (Inter-Face) 36, video I/F 37, external memory I/F 38, audio I/F 39, and a disc I/F 41, which in turn are respectively connected to areceiver unit 6, monitor 2,external memory card 5,speaker 2 a and adisc drive 40. - The
GPU 32 performs image processing on the basis of the instructions of theCPU 30, and is formed of, for example, a semiconductor chip performing the computer processing necessary for a 3D graphics display. TheGPU 32 generates an image-processed picture using an image-processing memory, not shown, or a part of the memory area of the main memory, and then outputs it to themonitor 2 via thememory controller 31 and the video I/F 37 as appropriate. TheCPU 30 and theGPU 32 correspond to an example of control means in the embodiment. - The
main memory 33 includes a ROM (Read Only Memory) and a RAM (Random Access Memory), which are not shown and a memory area used by theCPU 30, and stores a game program and the like necessary for theCPU 30 to perform processing as appropriate. For example, themain memory 33 stores a game program, various types of data such as data tables and the like which are read from theoptical disc 4 by theCPU 30. TheCPU 30 executes and uses the game program, various types of data and the like which are stored in themain memory 33. The structure of a game program will be described later. - The
DSP 34 processes the sound data and the like generated by theCPU 30 at the execution of a game program, and is connected to theARAM 35 for storing the sound data. TheARAM 35 is used when theDSP 34 performs predetermined processing (for example, storing of previously read game program data and sound data). TheDSP 34 reads the sound data stored inARAM 35 and sends it through thememory controller 31 and the audio I/F 39 to allow thespeaker 2 a to output it as a sound effect, music, and voice. In this connection, a speaker provided in themonitor 2 may be used as thespeaker 2 a. - The
memory controller 31 controls overall data transmission and is connected to the aforementioned various interfaces. The controller I/F 36 is made up of, for example, 4 controller I/Fs 36 a to 36 d which connect external devices and thegame device 3 through their own respective connectors to conduct communications between them. For example, thereceiver unit 6 is fitted into the connector and connected to thegame device 3 through the controller I/F 36. As described earlier, thereceiver unit 6 receives the data transmitted from thecontroller 7 and outputs the transmission data to theCPU 30 through the controller I/F 36. - The video I/
F 37 is connected to themonitor 2. The external memory I/F 38 is connected to theexternal memory card 5 and is made accessible to a backup memory and the like provided in theexternal memory card 5. The audio I/F 39 is connected to thespeaker 2 a provided in themonitor 2, so that sound data read from theARAM 35 by theDSP 34 and sound data output directly from thedisc drive 40 can be output from thespeaker 2 a. The disc I/F 41 is connected to thedisc drive 40. Thedisc drive 40 reads data stored on theoptical disc 4 placed in a predetermined reading position, and outputs it to the bus of thegame device 3 and/or the audio I/F 39. Note that thegame device 3 is equipped with a timer for measuring the elapsed time which is not shown inFIG. 2 , and can read a current time value by program processing. - (Structure of Controller)
- The controller, which is an example of an input device corresponding to the input means of the present invention, will be described with reference to
FIGS. 3A , 3B.FIG. 3A is a perspective view of a top surface of thecontroller 7 when viewed from the rear end.FIG. 3B is a perspective view of the underside of thecontroller 7 when viewed from the rear end. - In
FIGS. 3A and 3B , thecontroller 7 has ahousing 71 which is formed by, for example, plastic molding. A plurality of operation console switches 72 are provided in thehousing 71. Thehousing 71 is formed in an approximately rectangular parallelepiped shape with the longitudinal direction extending in the fore-and-aft direction and it's entire size is such that an adult or a child can grasp it in one hand. - A cross key 72 a is provided on a forward central portion of the top surface of the
housing 71. The cross key 72 a is a cross-shaped four-direction push switch of which operating parts corresponding to the four directions (front, rear, right and left) shown by arrows are respectively placed in projections of the cross at 90-degree intervals. The player depresses any of the operating switches of the cross key 72 a to select one of the front, rear, right and left directions. For example, the player operates the cross key 72 a to instruct the moving direction of the player character or the like appearing on a virtual game world (space), or instruct the moving direction of a cursor. - The cross key 72 a is an operating switch outputting an operation signal in response to the aforementioned direction input operation of the player, but may be an operating switch of another form. In stead of the above-described cross key 72 a, for example, a complex switch consisting of a push switch including four-direction operating parts arranged in a ring shape and a center switch provided in the center of the push switch, or a tiltable stick protruding from the top surface of the
housing 71, or the like can be provided. Another operating switch may be provided instead of the cross key 72 a, which includes a horizontally-movable disc-shaped member and, when the member is slid, outputs an operation signal according to the sliding direction. Yet another operating switch may be provided instead of the cross key 72 a, which outputs an operation signal in response to a switch depressed by the player out of the switches respectively representing at least four directions (front, rear, right and left). - A plurality of
operation buttons 72 b to 72 g are provided on a portion of the top surface of thehousing 71 rearward of the cross key 72 a. Theoperation buttons 72 b to 72 g are operating switches each of which outputs an operation signal assigned to the switch when the button head is depressed by the player. For example, theoperation buttons 72 b to 72 d, serving as an X button, a Y button and a B button or the like, are respectively assigned functions executed for displaying a new window on themonitor 2, acknowledging or denying the operation instruction confirmation displayed on themonitor 2, and the like in response to the game contents. Theoperation buttons 72 e to 72 g are assigned functions as a selection switch, a menu switch and a start switch or the like. Theoperation buttons 72 b to 72 g are respectively assigned functions in association with a game program executed by thegame device 3. In this regard, if avibrator 74 corresponding to vibration generation means and anacceleration sensor 73 corresponding to vibration detection means are provided, there may be no particular need to have all the above-described operation buttons. Therefore, thecontroller 7 is not limited to a general-purpose controller, and may be operation means (input means) even if it is operation means such as, for example, a mouse. - An
operation button 72 h is provided on the top surface of thehousing 71 forward of the cross key 72 a. Theoperation button 72 h is a power switch for remotely powering the body of thegame device 3 ON/OFF. Alternatively, theoperation button 72 h may be a power switch of powering thecontroller 7 ON/OFF. Theoperation button 72 h may have the top surface located below the top surface of thehousing 71 in order to prevent the player from accidentally depressing theoperation button 72 h. - A plurality of
LEDs 702 are provided on the top surface of thehousing 71 rearward of theoperation button 72 c. TheLEDs 702 can be used to notify the player of the controller mode in which thecontroller 7 is currently placed. For example, when a plurality of players operate characters displayed on a plurality of game screens, the plurality ofLEDs 702 can emit light by different methods in order to tell the players which controller a character operated on the game screen based on an operation input signal has been transmitted by. Further, the plurality of LEDs of a controller can be operated to emit light simultaneously in order to notify the players of the recognition of the controller by the game device or of some error. - Now, a coordinate system set in the
controller 7 will be described. As shown inFIGS. 3( a) and 3(b), X, Y and Z axes at right angles to one another are defined as a coordinate system with respect to thecontroller 7. Specifically, the longitudinal direction of thehousing 71 which is the fore-and-aft direction of thecontroller 7 is defined as the Z axis, in which the direction of the front face (the face closer to the vibrator 74) is defined as the positive Z axis direction. The up-and-down direction of thecontroller 7 is defined as the Y axis, in which the direction of the top surface (the face on which the cross key 72 a is provided) is defined as the positive Y axis direction. The right-and-left direction of thecontroller 7 is defined as the X axis, in which the direction of the left side face (the face not shown inFIG. 3( a) and shown inFIG. 3( b)) of thehousing 71 is defined as the positive X axis direction. - Next, the internal structure of the
controller 7 will be described with reference toFIGS. 4A , 4B.FIG. 4A is a perspective view illustrating thecontroller 7 when the upper housing (part of the housing 71) is removed from thecontroller 7.FIG. 4B is a perspective view illustrating thecontroller 7 when the lower housing (part of the housing 71) is removed from thecontroller 7. In this regard, abase board 700 shown in the perspective view inFIG. 4B is when viewed from the underside of thebase board 700 shown inFIG. 4A . - In
FIG. 4A , thebase board 700 is secured within thehousing 71. Theoperation buttons 72 a to 72 h, theacceleration sensor 73, theLEDs 702, a crystal-quartz oscillator 703, aradio module 53, anantenna 54 and the like are provided on the upper main surface of thebase board 700, and are connected to a microcomputer 51 (hereinafter referred to as the “MC”, seeFIG. 5 ) through wiring (not shown) in thebase board 700 or the like. Theacceleration sensor 73 detects and outputs an acceleration which can be used to calculate a tilt, a vibration and the like in the three-dimensional space in which thecontroller 7 is provided. Theacceleration sensor 73, together with a vibration detection program 23 which will be described later, corresponds to the vibration detection means in the embodiment. - In the embodiment, the
controller 7 includes a three-axis acceleration sensor 73 as shown inFIG. 5 . The three-axis acceleration sensor 73 detects a linear acceleration in three directions, namely, the up-and-down direction (Y axis shown inFIGS. 3A , 3B), the right-and-left direction (X axis shown inFIGS. 3A , 3B), and the fore-and-aft direction (Z axis shown inFIGS. 3A , 3B). - In the use of a combination of the
acceleration sensor 73 with the MC 51 (or another processor), for example, upon the detection of a static acceleration (gravity acceleration), the output of theacceleration sensor 73 is sent to theMC 51. By program processing of theMC 5, an operation can be carried out using a tile angle and a detected acceleration to determine a tilt of an object (controller 7) relative to gravity vector. In this manner, using theacceleration sensor 73 in combination with the MC 51 (or another processor) makes it possible to determine tilt, posture and position of thecontroller 7. - The
controller 7 functions as a wireless controller with thecommunication unit 75 having aradio module 53 and anantenna 54. The crystal-quartz oscillator 703 generates a clock signal on which the operation of theMC 51 described later is based. - On the other hand, in
FIG. 4B , abattery 76 is held in the rear end of the lower main surface of thesubstrate 700. Avibrator 74 is mounted on the lower main surface of thesubstrate 700. Thevibrator 74 may be, for example, a vibration motor or a solenoid. Vibration is produced in thecontroller 7 by actuating thevibrator 74. Thevibrator 74 corresponds to vibration generation means for generating a first vibration in the embodiment. - (Control Mechanism of Controller)
- Referring
FIG. 5 , next, the internal configuration (structure of the control mechanism) for controlling the operation of thecontroller 7 will be described.FIG. 5 is a block diagram illustrating the function configuration of thecontroller 7. - The
acceleration sensor 73 detects and outputs separately three-axis components of the up-and-down direction (Y-axis direction), the right-and-left direction (X-axis direction) and the fore-and-aft direction (Z-axis direction) of thecontroller 7 as described earlier. The data on accelerations of the three-axis components detected by theacceleration sensor 73 is sent to thecommunication unit 75. The movement of thecontroller 7 can be determined on the basis on the acceleration data output from theacceleration sensor 73. Theacceleration sensor 73 employed may be an acceleration sensor that detects accelerations in any two axes in accordance with data required to a specific application. - The
communication unit 75 includes theMC 51, thememory 52, theradio module 53, and theantenna 54. TheMC 51 controls theradio module 53 transmitting transmission data over radio while using thememory 52 as a storage area in processing. - The
MC 51 receives the operation signal (key data) output from theoperation console switch 72 provided in thecontroller 7 and acceleration signals in the three-axis directions (data on accelerations in X-, Y- and Z-axis directions) output from theacceleration sensor 73. TheMC 51 temporary stores each piece of data (key data, acceleration data in the X-, Y- and Z-axis directions) as transmission data to be transmitted to thereceiver unit 6 in thememory 52. At this stage, radio transmission from thecommunication unit 75 to thereceiver unit 6 is carried out once every predetermined time period. However, the game processing is typically executed on a 1/60 second basis. Therefore, transmission is required to be carried out once every time period shorter than the typical one. Specifically, the game processing is performed on a 16.7 ms basis (1/60 seconds), and a transmission interval of thecommunication unit 75 based on Bluetooth (trademark) is, for example, 5 ms. - When determining that the time has come for transmission to the
receiver unit 6, theMC 51 outputs the transmission data stored in thememory 52 as a series of operation information to theradio module 53, on the basis of the program stored in thememory 52. Thereupon, theradio module 53 transmits the operation information from theantenna 54 as a radio signal using a carrier wave of predetermined frequency by use of techniques of, for example, Bluetooth (trademark). That is, the key data from theoperation console switch 72 provided in thecontroller 7 and the data on accelerations in the X-, Y- and Z-axis directions output from the acceleration sensor 73 (measured values of vibration) are transmitted from thecontroller 7 to thegame device 3. - Then, the
receiver unit 6 of thegame device 3 receives the radio signal. Thegame device 3 demodulates and decodes the received radio signal to obtain a series of operation information (key data) and acceleration data in the X-, Y- and Z-axis directions. Next, theCPU 30 of thegame device 3 performs the game processing on the basis of the obtained operation information and the game program. Note that if the technique of Bluetooth (trademark) is used to configure thecommunication unit 75, thecommunication unit 75 can have the capability of receiving transmission data transmitted from another device over air. - (Example of Applicable Games)
- Next, the outline of a game assumed in the embodiment will be described with reference to
FIGS. 6A , 6B, 7A, 7B.FIGS. 6A , 6B, 7A, 7B illustrate examples of the screens of the game assumed in the embodiment. - In
FIG. 6A , themonitor 2 displays a character representing a person (hereinafter referred to as “character C1”) standing on the ground (the floor existing in a three-dimensional space). In this game, the player taps the mountingbase 8 on which thecontroller 7 is placed, so that the vibration thus generated is detected by thecontroller 7. Depending upon the degree of intensity (intensity level) of the vibration detected by thecontroller 7, that is, a motion of the player (the motion of tapping the mountingbase 8, which is hereinafter uniformly referred to as a “motion”), character C1 starts its motion (“walking”, “running”, “jumping (flying)”). Also, inFIGS. 6A , 6B, 7A, 7B, the number symbols shown below the ground (the number symbols following “StaGe1-1”) represent the time elapsed from the game start (shown on the millisecond (ms) time scale). -
FIG. 6A shows the state of the game start. At this stage, character C1 remains still while standing on the ground. That is, this stage comes before the player makes a motion and thecontroller 7 has not yet detected any vibration. -
FIG. 6B shows the state of C1 at the stage when about 5 seconds have elapsed from the time inFIG. 6A . At this stage, character C1 is walking. That is, at this time point, the player has made a motion and thecontroller 7 has detected the vibration resulting from this motion. In this regard, the motion of the player on this occasion is recognized as vibration of weak input (seeFIG. 17 described later). -
FIG. 7A shows the state of C1 at a stage when about 12 seconds have elapsed from the time shown inFIG. 6A . At this stage, character C1 is running. That is, at this time point, the player has made a motion stronger than the motion inFIG. 6B , and thecontroller 7 has detected the vibration resulting from this strong motion. In this regard, the motion of the player on this occasion is recognized as vibration of medium input. - Further,
FIG. 7B shows the state of character C1 at a stage when about 20 seconds have elapsed from the time shown inFIG. 6A . At this stage, character C1 is jumping over an obstacle (shown as a hurdle). That is, at this time point, the player has made a motion even stronger than the motions inFIG. 6B andFIG. 7A , and thecontroller 7 has detected the vibration resulting from this strong motion. In this regard, the motion of the player on this occasion is recognized as vibration of strong input. Alternatively, if the player continues to provide medium input to the mountingbase 8 without strongly tapping the mountingbase 8, character C1 may be automatically jumped when character C1 enters the region of the obstacle (shown as a hurdle) with collision. These respects can be changed as appropriate based on game contents. - In this manner, in the game assumed in the embodiment, a vibration based on the degree of a motion of the player tapping the mount base 8 (strong, medium, weak input) is reflected in the motion of character C1 as shown in
FIG. 6B toFIG. 7B . Then, the vibration resulting from the motions of the player are reflected in the game until the character C1 reaches the goal. In this manner, the example of the game shown inFIG. 6A toFIG. 7B is a competitive game based on how quickly the players operate their characters C1 to reach the goal. - The present invention can be widely applied also to generally called “visualizer” games in addition to games bringing characters into competition as shown in
FIG. 6A toFIG. 7B . The “visualizer” described in this application refers to a program for dynamically creating a pattern and/or the like on the display screen in accordance with an operation input signal entered through the input means provided in thegame device 3, a waveform of sound data, and/or the like. The “visualizer” described in this application may be decorative software or to display, together with a pattern and/or the like, scoring of results of counting the number of times a command is established as described later and/or the like. The present invention can be applied to a game in which a variety of special images (including moving images) are displayed on themonitor 2, for example, when the strength of the player tapping the mountingbase 8, that is, an intensity level of a detected vibration value, or an intensity level pattern of vibration values sequentially receiving in time sequence, or a pattern of rhythm of vibration values sequentially receiving in time sequence (“tap rhythm” described later) (pattern of vibration input and rest), matches a command constructed by a combination of a previously-set pattern or more. - (Program Structure)
- Next, the structure of control programs (game control programs) stored in the
main memory 33 of thegame device 3 will be described. - In the present invention, the control program P which is the control means includes at least a variety of programs shown in
FIG. 8 . As shown inFIG. 8 , the control program P includes a main control program P0, mounting determination program P1, vibration start program P2, vibration detection program P3, natural-vibration value calculation program P4, correction-value calculation program P5, correction-value operation conversion program P6, associated vibration setting program P7, vibration pattern determination program P8, special input command determination program P9, and a presentation processing program P10. TheCPU 30 reads the programs as appropriate to execute a variety of processing. - The main control program P0 is a program for exercising control over the operation of the
game system 1, and includes a communication program for communication with thecontroller 7. - The mounting determination program P1 is a program for confirming that the
controller 7 has been mounted on the mountingbase 8 when, at the start of a game, theacceleration sensor 73 receives, for a certain period time, vibration detection signals (first vibration detection signal) representative of a constant predetermined value (threshold) (first vibration value) or less for predetermined time. If the mounting of thecontroller 7 cannot be confirmed, a message urging the mounting of thecontroller 7 can be displayed on themonitor 2 as appropriate in addition to the above. - The vibration start program P2 is a program necessary for the vibration detection program P3 to detect vibration after activation of the mounting determination program P1. By activation of the vibration start program P2, the vibration generation means (vibrator 74) starts operation, so that the
MC 51 can fetch the vibration detected by theacceleration sensor 73 and thegame device 3 can acquire a measured value of the vibration. - In the present invention, at an initial stage of a game, when the
controller 7 is mounted on the mountingbase 8, it is determined how much the mountingbase 8 sways, that is, a value of natural vibration of the mountingbase 8 is determined. Since the vibration produced by the vibration generation means (vibrator 74) mechanically occurs at constant predetermined intensity, thegame device 3 determines how much the mountingbase 8 sways on the basis of the value detected by theacceleration sensor 73 when the vibration is produced at a constant intensity in the mountingbase 8. - The vibration detection program P3 is a program for receiving a measured value of the vibration produced by the control of the vibration start program P2, from the
controller 7 and storing it in the main memory. The vibration detection program P3 enables thegame system 1 to detect whether or not vibration is imposed on thecontroller 7. In addition, the vibration detection program P3 is used not only to determine how much the mountingbase 8 sways at the initial stage of the game, but also as means for detecting vibration throughout the entire game. - The natural-vibration value calculation program P4 is a program for performing the process of determining a value of the natural vibration of the mounting
base 8, and calculates a natural-vibration value on the basis of the measured value of vibration detected in the vibration detection program P3. When receiving the measured value of the vibration caused by the player tapping the mountingbase 8 in the game, the natural-vibration value calculated in the natural-vibration value calculation program P4 is used to correct the measured value. The natural-vibration value calculation program P4 serves as the natural-vibration value calculation means. - The correction-value calculation program P5 is a program for performing the process of making a correction to the measured value of the vibration when the vibration detection program P3 acquires the measured value of the vibration (a second vibration value) produced by the player tapping the mounting
base 8 in the game. Specifically, adding a correction value to the vibration value in the mountingbase 8 eliminates a need to change (adjust) the intensity of vibration produced in the mountingbase 8 by the player depending on materials of the mountingbase 8. For example, this produces an advantageous effect that the player is not required to consciously adjust the tapping strength even when the material of the mountingbase 8 is soft (not-easily vibrating material) or hard (material easily transmitting vibration). - The correction-value operation conversion program P6 is a program for performing the conversion process of the measured vibration value after being subjected to the correction processing by the correction-value calculation program P5 in order to use for the game control. That is, the program performs process for reflecting the motion (operation) of the player tapping the mounting
base 8 in the game. - The associated vibration setting program P7 is a program executing the process of determining an associated vibration resulting from a tap motion of the player from the measured value of the vibration transmitted from the
controller 7 with a motion of the player tapping the mountingbase 8. The associated vibration setting program P7 enables reliable acquisition of vibration accompanying a tap motion of the player in association with the tap motion. The associated vibration setting program P7 may be provided as a sub-program of the correction-value operation conversion program P6. - The vibration pattern determination program P8 forming part of vibration pattern determination means includes an intensity threshold calculation classification program P8 a and a tap/rest determination program P8 b.
- The intensity threshold calculation classification program P8 a is a program executing the process of classifying the measured values of vibration (vibration detection signals) receiving as operation signals in time sequence, into at least one pattern or more representative of “strong and weak” vibrations, “strong, medium, and weak” vibrations or the like according to the intensity level of the vibration. The intensity threshold calculation classification program P8 a forms part of the input vibration classification means.
- The tap/rest determination program P8 b is a program executing the process of determining a time interval in which the vibration detection signal is not received (hereinafter referred to as a “rest interval”) and making a further classification into two patterns indicative of a time interval in which the vibration detection signals are received along the time axis in terms of time sequence (hereinafter referred to as “tap input period”) and the rest period in which the vibration detection signal is not received. The tap/rest determination program P8 b serves as the tap/rest setting means.
- The special input
command determination program 9 is a program executing the process of determining whether or not a time-series array of classified patterns in the intensity threshold calculation classification program P8 a or the tap/rest setting program P8 b matches any of a plurality of previously-set special input commands. If it is determined that the array matches any of a plurality of types of previously-set special input commands, the main control program P0 performs the process of executing a previously-set game control program (game control program based on vibration level determination) in accordance with the matched special input command. For example, a moving image of large-scale, middle-scale or small-scale fireworks continuously set off is displayed on themonitor 2 in accordance with the matched special input commands. The special input command determination program P9 serves as the special input command determination means. - The presentation processing program P10 is activated by control of the main control program P0, and includes a presentation image display control program P10 a of controlling display of various presentation images on the
monitor 2 and a presentation sound output processing program P10 b of outputting music, effective sound and voice to thespeaker 2 a. - (Game Control)
- Next, game execution control executed by the
game system 1 according to the embodiment will be described.FIGS. 9( a) to 11 are flowcharts illustrating the flow of basic control of game processing for a game which is controlled by the main control program P0 stored in themain memory 33 of thegame device 3. - Upon power-up of the
game device 3, theCPU 30 of thegame device 3 executes a boot program stored in the boot ROM, not shown, so as to initialize each unit such as themain memory 33 and the like. Then, themain memory 33 and the like read the game control program stored on theoptical disc 4 and information on various presentation image data, various presentation sound data and previously-set reference data (various data tables and the like), and then theCPU 30 starts execution of the game control program. - First, the outline of the entire control of the game processing is described in each step in the flowchart illustrated in
FIG. 9A . - [Outline of Game Control]
- (Step S1)
- Upon start-up of the main control program P0 in the game control program, a game menu screen as shown in
FIG. 9B is displayed on themonitor 2. The player operates thecontroller 7 to select one of games, “game A”, “game B” and “game C”, from the game menu displayed on the menu screen. Thereupon, the main control program P0 displays a welcome screen of the selected game on themonitor 2, and also activates a program for various initializations. - In the initialization processing, the mounting determination program P1, the vibration start program P2, the vibration detection program P3 and the natural vibration value calculation program P4 are activated to obtain a natural-vibration value of the mounting
base 8. In the initialization processing, the presentation image display program P10 a displays a presentation initialization screen on themonitor 2, and outputs presentation music from thespeaker 2 a. The process of obtaining a natural vibration value of the mountingbase 8 will be described in detail later. - (Step S2)
- A vibration produced by the motion of the player tapping the mounting
base 8 to play the game is input as a vibration detection signal (measured value) from thecontroller 7 for the process of controlling the game progress (progress main processing). In the progress main processing, the correction-value calculation program P5, the correction-value operation conversion program P6 and the associated vibration setting program P7 execute preprocessing for reflecting the vibration detection signal of the vibration entered by the player's operation of tapping the mountingbase 8 in the game. Then, it is determined whether or not the information obtained through the preprocessing matches effective operation input information used for the control of game progress and/or a special input command. If it is determined that it matches the operation input information and/or the special input command, game control previously set on an operation-input-information-and/or-special-input-command basis, for example, a presentation moving image set on a special input command basis is displayed on themonitor 2 for a predetermined time or is continued to be displayed on themonitor 2 on the basis of the operation input information until it matches the next special input command. The preprocessing in the progress main processing will be described in detail later. - (Step S3)
- It is determined whether or not a game end signal is input by for example, the player's operation of the
controller 7, and if the game end signal is not input, the flow goes back to the processing in step S2 to continue the game. On the other hand, if the game end signal is input, the flow goes to step S4. - (Step S4)
- The processing of game end presentation is carried out to end the game. In the presentation processing for game end, for example, gaming time, the number of times the motion of the player tapping the mounting
base 8 matches an effective special input command, and the like are displayed on themonitor 2. - (Process for Obtaining Natural Vibration Value of Mounting Base)
- Next, in the above-described processing in step S1, the natural vibration value calculation program P4 calculates a natural vibration of the mounting
base 8. This process will be described in detail in each step of the flowchart inFIG. 12 . -
FIG. 12 illustrates the process of detecting a natural vibration value in a mounting place (the mountingbase 8 in the embodiment) when the game starts. A vibration value (measured value) described in the embodiment refers to a total value of components of acceleration data in the X-, Y- and Z-axis directions measured by the acceleration sensor 73 (measured values of the respective X, Y and Z components). Alternatively, a vector value synthesized from the measured values of the respective X, Y and Z components may be set as a vibration value. Either case can be selected in accordance with game contents as appropriate. - (Step S101) (Step S102)
- At the start of the game, the
controller 7 is mounted on the mountingbase 8 and theCPU 30 is set at N=1 and a current maximum vibration value is cleared (when themain memory 33 stores a maximum vibration value, this is cleared). The “N” is a variable used in a pre-specified predetermined number (N) of measurements of the maximum vibration value. - (Step S103)
- Next, the
CPU 30 activates the vibration start program P2 to cause thecontroller 7 to start the vibration operation. Specifically, theCPU 30 transmits a signal to operate thevibrator 74 via theMC 51 of thecontroller 7, and theMC 51 of thecontroller 7 activates thevibrator 74, so that thecontroller 7 starts the vibration operation. - (Step S104)
- Then, in the
controller 7, theMC 51 transmits the vibration of thecontroller 7 caused by the vibration operation of thevibrator 74, and a value of vibration measured by theacceleration sensor 73 as a measure value (vibration value), from theMC 51 via theradio module 53 to thegame device 3 at predetermined time intervals. In this manner, theCPU 30 acquires the measured value (vibration value). - (Step S105)
- Next, the
CPU 30 performs the process of comparing and determining whether or not the acquired current vibration value is equal to or lager than the maximum vibration value stored in themain memory 33 as of this time (current). The maximum vibration value is subjected to the comparison determination processing only when “N” is 2 or larger. Accordingly, when “N”=1, the determination in step S105 is affirmation (step S105=YES). - (Step S106)
- If it is determined at step S105 that the acquired current vibration value is equal to or larger than the current maximum vibration value, the
CPU 30 stores this current vibration value as a current maximum vibration value in themain memory 33. - On the other hand, if it is determined at step S105 that the acquired current vibration value is less than the current maximum vibration value, the process in the step S106 is not performed and the flow goes to step S107.
- (Step S107)
- Next, the
CPU 30 determines whether or not the vibration operation of thecontroller 7 is in action and also the vibration operation time is equal to or longer than a specified time (e.g., 5 ms). - (Step S108)
- If it is determined at step S107 that the vibration operation of the
controller 7 is in action and also the vibration operation time is equal to or longer than a specified time, theCPU 30 transmits a signal to stop the vibration operation (that is, the operation of the vibrator 74) to thecontroller 7. - (Step S109)
- If the vibration operation of the
controller 7 is stopped in step S108, and, if it is determined at step S107 that thecontroller 7 is in the vibration operation and the time period of the vibration operation is less than the specified time, the CPU determines whether or not the measurement time to measure a vibration value is equal to or longer than a previously-set, predetermined time. If the measurement time is less than the predetermined time, the flow goes back to step S104 to repeat the processing after step S104. - (Step S110)
- If it is determined at step S109 that the measurement time has reached the predetermined time, the
CPU 30 stores the current maximum vibration value (the maximum vibration value stored in the main memory 33) as a maximum vibration value obtained in an Nth measurement, in themain memory 33. - (Step S111) (Step S112)
- Next, the
CPU 30 increments “N” to “N+1”, and determines whether or not “N” is a predetermined value or larger. The aforementioned processing from step S102 to step S112 is repeated until “N” reaches the predetermined value. - (Step S113)
- If it is determined at step S112 that “N” is the predetermined value or larger, the
CPU 30 calculates an average of “N−2” maximum vibration values of the maximum vibration values obtained in the N measurements and stored in themain memory 33, that is, of the “N” maximum vibration values except for the maximum value and the minimum value, and stores the calculated average as a unit vibration value (natural vibration value) in themain memory 33. - (Step S114)
- A correction coefficient of the vibration value which is stored in the vibration conversion table in correspondence with the natural vibration values calculated in step S113 is calculated in reference to a vibration conversion table pre-stored in the
main memory 33, and then stored in themain memory 33. The vibration conversion table is a data table of experimentally-found coefficients used to correct vibration values for each natural vibration value previously measured when thecontroller 7 is placed in a variety of mounting places. The correction coefficient is a value ranging from 0.7 to 1.3. - By previously calculating a correction coefficient of a vibration value in this manner, a measured value of vibration in response to a motion of the player in accordance with the environment of the mounting place can be reflected in the game control by using the correction coefficient for correction. Specifically, if such means for correcting a measured value of vibration is provided, even when the controller is mounted in a mounting place where vibration and noise occur without stopping, a detection of such vibration and noise together with a motion of the player can be avoided as much as possible.
- The processing of previously calculating the correction coefficient for vibration values may be carried out by the
MC 51 of thecontroller 7. - If vibration is imposed to the
controller 7 mounted on the mounting place, then it is possible to obtain a change in vibration values according to a hardness (solidity) of a mounting place (for example, the hardness of the ground as a mounting place, the hardness of a material of a mounting board, or the like).FIG. 13A shows a change in vibration value when thecontroller 7 is mounted on a hard surface (for example, on an asphalt surface, a steel plate or the like), whileFIG. 13B shows a change in vibration value when it is mounted on a soft surface (for example, on cardboard or the like). InFIGS. 13A , 13B, the vertical axis represents vibration values and the horizontal axis represents time. - In this manner, a hardness of the mounting place and/or the like can be measured from a change of vibration values. Accordingly, even when the player taps at equal strength, the input vibration value varies according to properties such as a hardness and the like of the mounting place on which the
controller 7 is mounted. In the game system according to the embodiment, the correction-value calculation program P5 is executed. This makes it possible to previously obtain a correction value for correcting a vibration value according to the vibration input by the player tapping the mountingbase 8. And then, the vibration provided by the player during the execution of the actual game can be identified as an operation input signal. As a result, as long as thecontroller 7 can be stably mounted, the player can enjoy games in accordance with the environment of the mounting place. - (Progress Main Processing)
- Next, the processing details of the progress main processing which is the processing at step S2 shown in
FIG. 9A will be described. The progress main processing includes: a process of operating thecontroller 7 to measure a vibration produced by the player tapping the mountingbase 8, and then transmitting the measured vibration value to thegame device 3; a process of correcting the transmitted vibration value and converting it to be reflected in the game; and a portion of performing game control on the basis of the converted information. -
FIG. 10 shows the outline of the procedure of the progress main processing. The outline of the progress main processing will be described below with reference toFIG. 10 . - (Step S21)
- An input signal representative of vibration produced by the player tapping the mounting
base 8 is converted into information on operation input by the player, and the information is sequentially stored in time-series order in themain memory 33. In step S21, information relating to “rest” described later is also subjected to the process of conversion into information on operation input by the player. These processes will be described in detail later, in which the correction-value calculation program P5, correction-value operation conversion program P6, associated vibration setting program P7, vibration pattern determination program P8, special input command determination program P9 and the like are operated based on control of the main control program P0. The above-described “rest” means a motion of the player not tapping the mountingbase 8, that is, a time interval during which the mountingbase 8 is not tapped. - (Step S22)
- It is determined whether or not some kind of “input signal” other than the tapping motion is entered via the
controller 7 or the screen on themonitor 2. As a result of the determination, if there is no entry, the processes in step S23 and step S24 relating to the progress main processing are not performed, thereby terminating the progress main processing. - (Step S23)
- Since the operation signal representative of vibration produced by the player tapping the mounting base 8 (measured value of vibration) is input at step S21, the main control program P0 initiates the process of displaying a regular presentation image to display a previously-set presentation image (which may include a moving image) on the
monitor 2. In the process of displaying a regular presentation image, for example, the process of displaying a moving image of small-scale fireworks intermittently set off is performed as a game control step based on the vibration level determination. - (Step S24)
- Regarding operation signals acquired when the player continuously taps the mounting
base 8 sequentially, it is determined whether or not a time-series array of the operation input information sequentially stored in themain memory 33 in the process in step S21 matches any of a plurality of kinds of previously-set special input commands. As a result of the determination, if the array matches any of the special input commands, the process of previously-set game control is performed on a special-input-command basis. In the process of the game control, for example, the process of displaying the aforementioned moving image of large-scale fireworks continuously set off on themonitor 2 is performed as a game control step based on the vibration level determination. - In the aforementioned process in step S1, depending on a game name selected from the game menu screen by the player, the process in step S24 based on the special input command described above may possibly not be included. For this reason, in the process in step S24 in a program for execution of such a game, for example, every time vibration is acquired when the player taps the mounting
base 8 one time, an intensity level of the vibration value is determined so that the game control is performed according to the intensity level. - For example, if the intensity level of the vibration resulting from a tap motion is determined to be “strong”, the process of displaying the moving image of large-scale fireworks continuously set off on the
monitor 2 is not performed. If the intensity level is determined to be “weak”, the process of displaying the moving image of a single small-scale firework set off on themonitor 2 is performed. -
FIGS. 14 and 15 show processing flows when, in step S21 of the progress main processing, a vibration value detected by thecontroller 7 during game execution is subjected to correction processing and conversion processing by the correction-value calculation program P5, the correction-value operation conversion program P6 and the associated vibration setting program P7. The process for correcting and converting the vibration value will be described below with reference toFIGS. 14 and 15 . - (Correction Processing for Vibration Value)
-
FIG. 14 shows an example of the correction processing performed on a vibration value by the correction-value calculation program P5. The processing procedure will be described below on a step-by-step basis. - (Step S201) (Step S202)
- First, the
CPU 30 calculates a vibration ratio R based on a measured vibration value. As shown inFIG. 14 , the vibration ratio R is calculated by dividing “a value calculated by subtracting a mean vibration value from a measured vibration value” by “a value calculated by subtracting a mean vibration value from a predicted maximum vibration value”. - In this connection, the mean vibration value refers to a vibration value measured when the
controller 7 is maintained in a still state on the mountingbase 8, which will be described in detail later. The predicted maximum vibration value refers to a maximum vibration value admissible as an operation input signal generated by a tap motion of the player during game execution in the mounting place (mounting base 8) measured by the processing inFIG. 12 , which is calculated in accordance with an environment of the mounting place measured by use of a vibrating function. - The measured vibration value is multiplied by a correction coefficient obtained from the aforementioned natural vibration value to calculate a vibration value, and the calculated vibration value is employed as required.
- (Step S203)
- Next, the
CPU 30 determines whether or not the vibration ratio R calculated in step S202 is equal to or less than a vibration ratio threshold R0. A predetermined value (e.g., 0.5) is previously determined for the vibration ratio threshold R0. - (Step S204)
- If it is determined at step S203 that the vibration ratio R is equal to or less than the vibration ratio threshold R0, the
CPU 30 calculates a conversion value from the equation shown inFIG. 14 . That is, when the vibration ratio R is equal to or less than the vibration ratio threshold R0, data processing using logarithmic conversion is performed. As a result, even when a detected vibration value is a minimum value, it can be reflected as a motion of the player in the game. - Symbol “A0” in
FIG. 14 refers to a value converted from the vibration ratio threshold R0 (a converted value in the vibration ratio threshold). A predetermined value (e.g., 0.6) is previously determined as the “A0”. - (step S205)
- On the other hand, if it is determined at step S203 that the vibration ratio R is not equal to or less than the vibration ratio threshold R0, the
CPU 30 calculates a conversion value from the equation shown inFIG. 14 . That is, when the vibration ratio R exceeds the vibration ratio threshold R0, data processing without logarithmic conversion is performed. - From this, the vibration ratio threshold R0 can be described as a reference value (threshold) for determining whether or not the vibration value is a minimum value.
- As described at step S202, the vibration ratio R is calculated based on the mean vibration value.
FIG. 15 is a flowchart showing a method of calculating a mean vibration value. As described earlier, the mean vibration value is a vibration value obtained when thecontroller 7 is placed on the mountingbase 8 and in the still state. The procedure of calculating the means vibration value will be described below with reference toFIG. 15 . Desirably, a program for calculating the mean vibration value is included as a sub-program in the aforementioned natural-vibration-value calculation program P4, and when calculating a natural vibration value, the mean vibration value is calculated. - (Procedure of Calculating Mean Vibration Value)
- Next, the aforementioned procedure for calculating a means vibration value will be described with reference to the flowchart in
FIG. 15 . - (Step S301) (Step S302)
- First, when the
main memory 33 already stores data on vibration values, theCPU 30 clears the data (initialization) and acquires a vibration value, measured by theacceleration sensor 73 in thecontroller 7, as transmission data and stores it in themain memory 33. - (Step S303)
- Next, the
CPU 30 determines whether or not the number of measurements of vibration values is equal to or larger than a previously-set, predetermined number of measurements. In this connection, the processes after step S302 are repeated until the number of measurements reaches the predetermined number. - (Step S304) (Step S305)
- If it is determined at step S303 that the number of measurements of vibration values is equal to or larger than a previously-set, predetermined number of measurements, the
CPU 30 calculates a mean value of the vibration values stored in themain memory 33 in step S302 to step S303, and defines it as a mean vibration value. A maximum vibration value of the stored vibration values is set as a maximum vibration value. - (Step S306)
- Next, the
CPU 30 subtracts the mean vibration value calculated in step S304 from the maximum vibration value determined in step S305, and then determines whether or not the value (error) obtained by this subtraction is equal to or less than a certain value. The “certain value” described here is desirably set to, for example, a value capable of approximating the error between the maximum vibration value and the mean vibration value to a minimum difference (in the embodiment, it is set to 0.001). As a result, the closer to zero the certain value becomes, the higher the accuracy of the mean vibration value would be. - (Step S307)
- If it is determined at step S306 that the error is equal to or less than the certain value, the
CPU 30 stores the mean vibration value calculated in step S304 as a mean vibration value in the mountingbase 8 into themain memory 33. - On the other hand, if the determination in step S306 is not satisfied, the flow goes back to step S301 to repeat the processes from step S301 to step S306.
- (Conversion Processing for Vibration Value)
- A description will be given of the process of converting a vibration value and the process of detecting noise vibration which are performed by the correction-value operation conversion program P6 when a motion of the player tapping the mounting
base 8 is received after the game starts.FIG. 16 shows an example of the processing procedure of the correction-value operation conversion program P6. The processing contents will be described below in a processing step basis with reference toFIG. 16 . - (Step S401)
- First, the
CPU 30 sets “M” to zero. The “M” is a correction type flag used for correction of a vibration value, which is a flag for holding information on determination results of the following processes in the processes. - (Step S402) (Step S403)
- Next, the
CPU 30 acquires, as transmission data, a vibration value measured by theacceleration sensor 73 in thecontroller 7, and calculates the rate of change of acceleration (hereinafter uniformly referred to as the “acceleration change rate”). Four-time measurements are made in a frame (e.g., 1/60 seconds) in each of data components of accelerations in the X-, Y- and Z-axis directions measured by theacceleration sensor 73, and the “acceleration change rate” refers to a value of the sum of differences each of which is between a value in each measurement and a value of the past measurement. A value with consideration given to sign, rather than an absolute value, is employed for this difference. Calculating the difference makes it possible to precisely detect an operation input signal generated upon a motion of one-time tap of the player, as one-time tap. - In this regard, “past” described here refers to, if four-time measurements are made in a frame, the first measurement when the second measurement is made, and the second measurement when the third measurement is made.
- (Step S404)
- Next, the
CPU 30 stores a maximum value of the acceleration change rate measured during one frame (for example, 1/60 seconds) of the acceleration change rates calculated in step S403, as a frame acceleration change rate in themain memory 33. - (Step S405) (Step S406)
- Next, the
CPU 30 turns once OFF a vibration trigger flag (hereinafter simply referred to as a “vibration trigger”) (for example, stores “0”), and calculates a difference D between the acceleration change rates in frames from an equation shown inFIG. 16 . The difference D is calculated by subtracting the acceleration change rate in the frame immediately before a current frame (described as “acceleration change rate in the preceding frame” inFIG. 16 ) from the acceleration change rate in the current frame. The vibration trigger is a flag located in themain memory 33 in order to store information representing input of vibration resulting from a tap motion of the player, that is, start-up of a change in vibration value. - (Step S407)
- The difference D is calculated in step S406, whereupon the
CPU 30 determines whether or not “M” is equal to zero (M=0). - (Step S408)
- If it is determined at step S407 that M=0, the
CPU 30 determines whether or not the difference D is larger than (exceeds) a predetermined value (first predetermined value). - (Step S409) (Step S410)
- If it is determined at step S408 that the difference D is larger than the predetermined value, the
CPU 30 sets M=1, then determines that a vibration change starts up and therefore turns the vibration trigger ON (stores “1”). TheCPU 30 also stores the time value at this time. Further, theCPU 30 stores in the main memory 33 a maximum acceleration change rate when the frame acceleration change rate in a frame after the vibration trigger has been turned ON is increased, as an acceleration change rate corresponding to the process of turning the vibration trigger ON. Then, the flow goes back to step S402. If it is determined at step S408 that the difference D is equal to or less than the predetermined value, the processes in step S409 to step S410 are not performed and the flow goes back to step S402. - In this manner, a vibration trigger is used for determinations, so that, when the vibration trigger is ON, the aforementioned maximum acceleration change rate is obtained from the vibration values received in sequence. Then, the next re-vibration acceptance time (time until re-measurement) is set according to the magnitude of the maximum acceleration change rate. This makes it possible to cancel a signal (even if it is a value determined to be stronger than the operation input signal), except for a signal used as an operation input signal, without recognizing it as an operation input signal.
- (Step S411)
- On the other hand, if it is determined at step S407 that M is not equal to zero, the
CPU 30 determines whether or not M=1. - (Step S412)
- If it is determined at step S411 that M=1, the
CPU 30 determines whether or not the difference D is equal to or less than zero. - (Step S413) (Step S414)
- If it is determined as step S412 that the difference D is zero or less, the
CPU 30 sets M=2 and also determines the re-vibration acceptance time. The re-vibration acceptance time is determined according to the magnitude of the acceleration change rate in the preceding frame. Then, the flow goes back to step S402. - On the other hand, if it is determined at step S412 that the difference D exceeds zero, the processes in step S413 and step S414 are not performed and the flow goes back to step S402.
- (Step S415)
- If it is determined at step S411 that M is not equal to 1, the
CPU 30 determines whether or not the difference D is zero or larger. - (Step S416)
- If it is determined at step S415 that the difference D is zero or larger, in this event, since the acceleration change rate in the current frame is greater than the acceleration change rate in the preceding frame, there is a high possibility that a motion of a new player is detected. Then, the
CPU 30 determines whether or not the re-vibration acceptance time has elapsed and the difference D is equal to or greater than the predetermined value. - (Step S417) (Step S418)
- If it is determined at step S416 that the re-vibration acceptance time has elapsed and the difference D is equal to or greater than the predetermined value, the
CPU 30 sets M=1 and turns the vibration trigger ON (stores “1”). TheCPU 30 also stores a time value at this time. Further, as in the case of step S410, theCPU 30 stores a maximum acceleration change rate when the frame acceleration change rate in a frame after the vibration trigger has been turned ON is increased, as an acceleration change rate corresponding to the process of turning the vibration trigger ON, in themain memory 33. Then, the flow goes back to step S402. - (Step S419)
- On the other hand, if it is determined at step 416 that the re-vibration acceptance time has not elapsed or the difference D is not equal to or greater than the predetermined value, the
CPU 30 sets the counter of the re-vibration acceptance time at zero and the flow returns to step S402. - (Step S420)
- On the other hand, if it is determined at step S415 that the difference D is less than zero, the
CPU 30 determines whether or not the difference D is equal to or less than a predetermined value. - (Step S421)
- If it is determined at step S420 that the difference D is equal to or less than the predetermined value, the
CPU 30 sets M=0 and the flow returns to step S402. - If it is determined at step S420 that the difference D exceeds the predetermined value, the process in step S421 is not performed and the flow returns to step S402
-
FIGS. 17 to 19 are graphs showing a change when the vibration value is actually corrected by the aforementioned procedure shown inFIG. 16 .FIG. 17 shows the change when a motion of the player is detected as weak input. Likewise,FIG. 18 shows the change when a motion of the player is detected as medium input, whileFIG. 19 shows the change when one-time motion of the player is detected as strong input. The solid line extending downward inFIGS. 17 to 19 shows that a motion of the player is detected as a vibration trigger, the dotted line shows the acceleration change rate, and the two-dot chain line shows the maximum acceleration change rate in a frame. - For example, each of the gray and white divisions in
FIG. 19 corresponds to a frame. After a vibration trigger has been turned ON, the maximum acceleration change rate decreases in the 4th frame after the vibration trigger has been turned ON, and the maximum acceleration change rate increases in the 5th frame after the vibration trigger has been turned ON. However, the maximum acceleration change rate in the 5th frame is not connected with the vibration trigger. By doing so, a motion of the player can be precisely detected as a vibration trigger. - The aforementioned processes in steps S407 to S419 and steps S420 to S21 correspond to the processing performed by the associated vibration setting program P7. In the associated vibration setting program P7, after vibration generated upon a motion of one-time tap of the player is detected, based on the detected vibration value, vibration detected after the one-time tap motion is set as noise which is associated vibration associated with the one-time tap motion. This setting avoids the event in which, although the motion of the player is received just one time, a reverberation (aftershock, relapse) of the one-time motion may be detected as another motion. That is, a detection of one-time motion of the player as a plurality of tap motions is eliminated, thus improving precision of detection of a tap motion of the player.
- Next, a description will be given of processing performed by the vibration pattern determination program P8 in the process in step S21 in the progress main processing shown in
FIG. 10 . The vibration pattern determination program P8 includes the intensity threshold calculation classification program P8 a and the tap/rest determination program P8 b as shown inFIG. 8 . The main control program P0 controls the execution of those programs in response to the game contents of the game A, B, C which has been selected from the menu screen by the player in the aforementioned process of step S1. - As described earlier, upon determination that a measured value of vibration acquired from the
controller 7 is a measured value of vibration generated by the player tapping the mountingbase 8, thegame device 3 performs a process for performing processes for correcting and converting the acquired vibration value by the correction-value calculation program P5, the correction-value operation conversion program 26 and the associated vibration setting program P7, to obtain information on a vibration value corresponding to each tap motion of the player and information used for game control (hereinafter referred to as the “tap operation input information”). - As a program for performing the process of obtaining the tap operation input information, the aforementioned intensity threshold calculation classification program P8 a and the tap/rest determination program P8 b are provided.
- The intensity threshold calculation classification program P8 a is a program performing a process for obtaining information required to be reflected in the game control, from the tap operation input information which is obtained by performing the above-described process of sequentially converting the measured values of vibration sequentially received in time sequence. In order to obtain the information required to be reflected in the game control, the tap operation input information is processed to be classified by intensity levels such as into two “strong, weak” levels, three “strong, medium, weak” levels, or the like. That is, the tap operation input information on vibration in relation to each tap generated every time the player taps the mounting
base 8 is processed to be classified in any of patterns each including two or more levels of intensity (intensity level pattern) in accordance with a strength varying depending on various situations when the player taps the mounting base 8 (the degree of strength to tap, times of a day, mental condition and the like) and on attribution of a player himself (small child, child, adult, or the like). - (Process for Determining Intensity Level Pattern)
-
FIG. 20 is a flowchart showing an example of the procedure of the intensity threshold calculation classification program P8 a performing a process of classifying the tap operation input information relating to each tap generated every time the player taps the mountingbase 8 to play the game, in any of two or more levels in accordance with the intensity. The process procedure of the intensity threshold calculation classification program P8 a will be described below with reference toFIG. 20 . The intensity threshold calculation classification program P8 a is executed at predetermined time intervals under the control of the main control program P0. - (Step S501)
- The tap operation input information relating to each tap occurring every time the player taps the mounting
base 8 to play the game is stored in an archive data storage area of themain memory 33 under the control of the main control program P0. At step S501, a count storage area, which is defined for counting the number (R) of tap operation input information stored in the archive data storage area, is initialized to “zero”. - (Step S502)
- It is determined whether or not vibration by operation of a player tapping the mounting
base 8 to play the game is input to thegame device 3, that is, the aforementioned vibration trigger is “ON”. As a result of this determination process, if “1” (=ON) is stored in the “vibration trigger”, the flow goes to the next step S503, but if “0” (=OFF) is stored, the flow goes back to step S502. The processes after step S502 are executed at predetermined time intervals. - (Step S503)
- In the aforementioned process in step S410 or step S418 shown in
FIG. 16 , a process is performed for determining the acceleration change rate in the frame after the “vibration trigger” has been turned ON as the magnitude (E) of the current vibration value input in response to one-time tap operation of the player at this time. Then, the magnitude (E) of the current vibration value is once stored in themain memory 33. - (Step S504)
- It is determined whether or not the number of counts R exceeds a previously-set upper limit (maximum number of stored intensities). As a result of the determination process, if it is determined that it does not exceed the upper limit, the flow goes to step S506, and if it is determined that it exceeds the upper limit, the flow goes to step S505. The upper limit may be set in a range from about 7 to about 15 in order to grasp a habit of the tap motion of the player.
- (Step S505)
- A process is performed for deleting the magnitude (E) of the oldest vibration value in time sequence in the archive data storage area defined in the
main memory 33 for sequentially storing the magnitudes (E) of current vibration values. Then, the subtraction of 1 from the number of counts R is performed, and then the flow goes to step S506. - (Step S506)
- The magnitudes (E) of the current vibration values once stored in the
main memory 33 in step S503 are stored in time-series order in the archive data storage area defined in themain memory 33. Then, an addition of “1” to the number of counts (R) is performed. - (Step S507)
- It is determined whether or not the number of counts (R) is less than a previously-set minimum computationally effective value R0. As a result of the determination process, if R>R0, the flow goes to step S508, and if it is determined that R is equal to or less than R0, the flow goes to step S514. The value of minimum computationally effective value R0 is set to any value of “3” or “4” or greater.
- (Step S508)
- Regarding the magnitudes (E) of current vibration values sequentially stored in the archive data storage area, a median (C) of the magnitudes (E) is calculated and stored in the
main memory 33. - (Step S509)
- Regarding the magnitudes (E) of vibration values sequentially stored in the archive data storage area, a mean value (U) larger than the median (C) calculated in step S508, and a mean value (L) smaller than the median (C) are each calculated and stored in the
main memory 33. - (Step S510)
- Assuming that a median (C) of the total is “0.5”, a mean value (U) is “0.75” which is a median equal to or larger than the median (C), a threshold for determining “medium, strong” levels of vibration is “07”, and similarly a threshold for determining “weak, medium” levels of vibration is “0.3”. In the game control, thresholds Y1 and Y2 are calculated for classifying vibration into “strong, medium, weak” levels.
- In step S510, the threshold Y1, which becomes “0.5” or larger when the median (C) of the total is assumed to be “0.5”, is calculated from the
following equation 1 by proportional distribution. -
07.5−0.5:(0.7−0.5)=mean value(U)−median(C):Y1−median(C) (1) - The threshold Y1 is a threshold for classifying vibration into “medium, strong” levels, in which, for example, when the vibration value exceeds the threshold Y1, the vibration is determined to be in a “strong level”, and when it is equal to or less than the threshold Y1, the vibration is determined to be in a “medium level”.
- (Step S511)
- In step S511, the threshold Y2, which becomes “0.5” or lower when the median (C) of the total is assumed to be “0.5”, is calculated from the following equation (2) by proportional distribution.
-
0.50−0.25:(0.5−0.3)=median(C)−mean value(L):median(C)−Y2 (2) - The threshold Y2 is a threshold for classifying vibration into “weak, medium” levels, in which, for example, when the vibration value exceeds the threshold Y2, the vibration is determined to be in a “medium level”, and when it is equal to or less than the threshold Y2, the vibration is determined to be in a “weak level”.
- (Step S512)
- Referring to the thresholds Y1 and Y2 calculated from equations (1) and (2), it is determined which level of the “strong, medium, weak” pattern the magnitude (E) of the current vibration value corresponds to. For the determination process, for example, the following process is performed.
- (1) When the magnitude (E) of the current vibration value exceeds the threshold Y1, the magnitude (E) of the current vibration value is determined to be in a “strong” level in the “strong, medium, weak” pattern.
- (2) When the magnitude (E) of the current vibration value is the threshold Y1 or lower and exceeds the threshold Y2, the magnitude (E) of the current vibration value is determined to be in a “medium” level in the “strong, medium, weak” pattern.
- (3) When the magnitude (E) of the current vibration value is lower than the threshold Y2, the magnitude (E) of the current vibration value is determined to be in a “weak” level in the “strong, medium, weak” pattern.
- The flow goes to step S514 after the termination of the process at step S512.
- (Step S513)
- It is determined which range the magnitude (E) of the current vibration value is included in by comparison with a tentative threshold “0.7” for determining the “medium, strong” levels of the vibration and a tentative threshold “0.3” for determining the “weak, medium” levels of the vibration. It is determined which level in the “strong, medium, weak” pattern the magnitude (E) of the current vibration value corresponds to. In the determination process, for example, the following process is performed.
- (1) When the magnitude (E) of the current vibration value exceeds “0.7”, the magnitude (E) of the current vibration value is determined to be in a “strong” level in the “strong, medium, weak” pattern.
- (2) When the magnitude (E) of the current vibration value is the threshold “0.7” or lower and exceeds the threshold “0.3”, the magnitude (E) of the current vibration value is determined to be in a “medium” level in the “strong, medium, weak” pattern.
- (3) When the magnitude (E) of the current vibration value is lower than “0.3”, the magnitude (E) of the current vibration value is determined to be in a “weak” level in the “strong, medium, weak” pattern.
- The flow goes to step S514 after the termination of the process at step S513.
- (Step S514)
- The information on levels of the “strong, medium, weak” pattern determined in the process of step S512 or step S513 is stored in magnitude type archive memory generated in the
main memory 33. Then, information, indicating that an input value, which is determined based on the information on levels in a pattern stored in the magnitude type archive memory, corresponds to which value of the pattern (to the “weak” level, the “medium” level or the “strong” level), is stored in a command determination table in time-series order. - The execution of the above-described processes in step S501 to step S514 provides information relating to a level pattern in which vibration generated every time the player taps the mounting
base 8 one time to play the game is classified into any one of “strong, medium, weak” level patterns. Information determined based on the provided level pattern is sequentially stored in time-series order in the command determination table in themain memory 33. The procedure of a process for storing a “strong, medium or weak” level pattern in the command determination table is described in steps S24 a to S24 c which will be described later. - (Process for Command Determination)
- Next, the procedure of the “command determination process” which is the process in step S24 shown in
FIG. 10 will be described with reference to the flowchart inFIG. 11 . The command determination process is executed by the special input command determination program P9. - (Step S24 a) (Step S24 b)
- It is determined whether or not the number of “strong, medium, weak” level patterns stored in the aforementioned command determination table reaches an upper limit. The upper limit is set, for example at an appropriate value from about “7” to about “15”. As a result of this determination process, if it is determined that it reaches the upper limit, the flow goes to step S24 b to perform a process of deleting oldest information in time-series order from the information relating to the “strong, medium, weak” level patterns stored in the command determination table in order to shift (relocate) in time-series order information stored in the command determination table. On the other hand, if it is determined that it does not reach the upper limit, the flow goes to step S24 c.
- (Step S24 c)
- The information on the levels of the “strong, medium, weak” pattern determined in the process of step S512 or step S513 is stored in the command determination table. Any one piece of the information on the “strong, medium, weak” level pattern of vibration corresponding to a tap motion of the player every time the player taps the mounting
base 8 to play the game is stored in time-series order in the command process table.FIG. 22A is a table illustrating an example of data structure of the command determination table (TC1). The command determination table (TC1) shown inFIG. 22A shows an example that the upper limit of the number of stored pieces of information on the “strong, medium, weak” level pattern is set at 10, in which three level patterns are stored at this moment. InFIG. 22A , the larger the number in storage order, the older the information relating to the “strong, medium, weak” level pattern in time sequence. - (Step S24 d)
- It is determined whether or not, referring to the special input command table, the array in time series order (array in chronological order) of the information relating to the “strong, medium, weak” level pattern stored in the command determination table (TC1) matches any one of special input commands pre-registered in the special input command table. That is, it is determined whether or not, when the
gaming machine 3 sequentially acquires vibrations generated by motions of the player continuously tapping the mounting base 8 a plurality of times, the vibration is established as a command (special input command) for controlling the game. As a result of the determination process, if it matches, the flow goes to step S24 e, and if it does not match, this command determination process is terminated. - The special input command refers to a plurality of control commands including a combination of one or more patterns previously set for executing the game control. If an array of information sequentially stored in time series order in the command determination table, of the information relating to a plurality of vibration values input, matches a predetermined control command, the array is determined to be input as a special input command. Then, for each special input command, for example, the main control program P0 performs a process of displaying a previously-set unique image on the
monitor 2.FIG. 23A shows an example of the data structure of a previously-set special input command table (TT1) for executing game control for each type of previously-set special input commands. - The special input command table (TT1) shown in
FIG. 23A is a data table in which, based on identification information on each of types of previously-set special input commands, information including array of a plurality of pieces of information relating to the aforementioned “strong, medium, weak” level pattern showing each of the special input commands, and a command execution program name (start address of a program) required for executing the game control for each special input command are stored. - (Step S24 e)
- Since it is determined at step S24 d that the motion of the player continuously tapping the mounting
base 8 multiple times is established as a special input command for controlling the game, the main control program P0 performs a process of executing the program of the command execution program name registered in the special input command table (TT1) in accordance with the established special command. For example, if it is determined that the array in time series order of a “strong, medium, weak” level pattern corresponding to a motion of the player continuously tapping the mountingbase 8 multiple times is made up of “strong”, “strong”, “strong”, “weak” (identification information of the special input command is “02”), the main control program P0 executes a program for a “large-scale firework display” shown in the special input command table (TT1). As a result, a moving image of the large-scale firework display and the sound effects are output from themonitor 2. - At this stage, for the purpose of notifying the player which array the special input command is established by, insofar as the special input command is established, the established special input command may be displayed using diagrams, characters and the like on the
monitor 2. Implementation of such control makes it possible for the player to look at a desired image if information on a vibration value corresponding to a tap motion of the player matches a special input command. - (Step S24 f)
- The stored contents of the command determination table TC1 is cleared (reset), followed by termination of the command determination process. In this manner, if the player continuously taps the mounting
base 8, the processes in step S24 a to step S24 f are repeatedly executed. - The aforementioned special input command table (TT1) is adapted to be employed for, for example, game B in the menu of games executed by the
game device 3 shown inFIG. 9B . - (Example of Game Control Allowing for Tap Rhythm)
- Next, a description will be given of an embodiment in which, when the player continuously taps the mounting
base 8, his “tap rhythm” is determined, and if the “determined tap rhythm” matches a previously-set special input command, previously-set game control is performed in accordance with the matched special input command. The embodiment comprises means for performing the previously-set game control in accordance with the matched special input command. - The determination of the “tap rhythm” generated when the player taps the mounting
base 8 can be implemented by separating a time period during which vibration generated by tapping the mounting base 8 (vibration detection signal) is input to the game device 3 (hereinafter referred to as a “tap input period”) and a time period during which the vibration detection signal is not input (hereinafter referred to as a “rest period”) in terms of the elapsed time axis in time sequence. The “tap input period” and the “rest period” forming the “tap rhythm” are varied in length by various situations when the player taps the mounting base 8 (the degree of strength to tap, times of a day, mental condition and the like) and on attribution of a player himself (small child, child, adult, or the like). Accordingly, for the determination of “tap rhythm”, if a determination process which prevents, in particular, the determination of the “rest period” from being affected as much as possible by those situations and attribution is adopted, it is conceivable that accurate determination of the “rest period” is achieved. - The embodiment according to the present invention comprises means for accurately determining the “rest period” in accordance with the procedure shown in
FIG. 21 . - The method of determining the “rest period” will be described below with reference to the flowchart in
FIG. 21 . The process of determining the “rest period” is executed by the tap/rest command determination program P9 a shown inFIG. 8 . - (step S601)
- As initialization processing, “zero” is stored in a count area defined in the
main memory 33 in order to count number (I) which stores “S” ((current time)−(time of the preceding tap)) described later. Then, in the determination process, for the purpose of storing the “tap input period” or the “rest period” which is the determination result, “zero” representative of the “rest period” is stored (“OFF” illustrated inFIG. 21 ) in a tap-rest flag (“FLAG” illustrated inFIG. 21 ) generated in themain memory 33. - Upon FLAG turning ON, the “tap rhythm” input after FLAG has been turned ON is recognized as a command (special input command). Accordingly, if it is determined that the rest period is longer than a certain set time, FLAG is turned OFF, so that the “tap rhythm” input at an interval which is unrecognizable as a command is not recognized as a command, which will be described later.
- (Step S602)
- The same process as that in step S502 is executed. Specifically, it is determined whether or not, because the player has operated by tapping the mounting
base 8 to play the game, the measured value of vibration acquired from thecontroller 7 is input as an operation signal to thegame device 3. For this determination, for example, it is determined whether or not the stored contents of the “vibration trigger” processed in step S405, S410 or S418 showing the processing of the correction-value operation program P6 shown inFIG. 16 is ON (“1”). - As a result of the determination process, if “1” is stored in the “vibration trigger”, the flow goes to the next step S603, and if “0” is stored, the flow goes to step S611. The main control program P0 controls such that the processes after step S602 are executed at predetermined time intervals.
- (Step S603) (Step S604)
- It is determined whether or not “1” representative of “ON” is stored in the tap/rest flag. If “1” is not stored, the process of storing “1” in the tap/rest flag again is performed. Then the flow goes back to step 602. Then, the process in step S602 is executed after the elapse of a predetermined time.
- (Step S605)
- The process “S=(current time)−(time of the preceding tap) is performed. The value of S is once stored in the
main memory 33. The “S” means a difference (tap interval) between current time (time value) and a time value of the preceding tap. The time of the preceding tap reference to a time value when a newest vibration trigger with going back from the current time in time sequence is turned ON. - (Step S606) (Step S607)
- It is determined whether or not the number of counts (I) exceeds a previously-set maximum number (upper limit). Note that “I” means the number of tap intervals stored in the interval storage memory for preserving the input interval time. As a result of the determination process, if it is determined that “I” exceeds the upper limit, the flow goes to step S607 to delete the oldest time from the interval storage memory. If not exceeding, the flow goes to step S608.
- As the upper limit of the number of counts (I), a value of around “2” or in a range from about “2” to about “5” is set. The upper limit is “2” or “2” or larger, and if a value closer to “2” is used, the number of counts (I) can be determined by newest tap rhythm generated by a motion of the player tapping the mounting
base 8. The number of counts (I) is a value necessary for the rest determination time which is the base time for determining whether or not FLAG is turned OFF after input. - (Step S607)
- A process is performed for deleting the oldest S in time sequence in the preserved data storage area defined in the
main memory 33 for sequentially storing the values of S calculated in step S605. Then, the subtraction of “1” from the number of counts I is performed, and then the flow goes to step S608. - (Step S608)
- The value of S calculated by the process in step S605 is stored in the preserved data storage area defined in the
main memory 33. A process is performed for storing the values of S in time sequence order in the preserved data storage area. The addition of “1” to the number of counts (I) is performed. - (Step S609)
- It is determined that the tap/rest flag is “ON”, that is, a tap signal is input (the measured value detected by the
accelerator sensor 73 is a value indicating that the player has tapped), so that “2” representative of “tap period” is stored. - (Step S610)
- The information stored in the tap/rest flag is stored in time series order in the command determination table (TC2) constructed in the
main memory 33.FIG. 22B shows an example of data structure of the command determination table TC2. Information relating to the tap/rest flag, “02 (tap input period)”, “02 (tap input period)”, and “01 (rest period)”, are stored in time sequence order (in reverse chronological order) in the command determination table (TC2) shown inFIG. 2B . - (Step S611)
- It is determined whether or not “2” representative of “ON” is stored in the tap/rest flag. If “2” is stored, the flow goes to step S612. If “1” representative of “OFF” is stored, the flow goes to step S619.
- (Step S612) (Step S613)
- It is determined whether or not the number of counts (I) is larger than “zero”, that is, a value of S is stored in the preserved data storage area. As a result of the determination, if it is determined that the number of counts (I) is zero, the flow goes to step S613 to store a previously-set rest determination time (T0) in an area defined for storing a rest determination time (T) in the
main memory 33. Then, the flow goes to step S616. The rest determination time (T0) is a value assumed as a time interval between regular tap motions of the player, that is, a time acting as a criterion for determined whether or not to turn FLAG OFF after tap input (after a tap input period has been determined). A value of, for example, about 0.3 seconds to about 0.5 seconds is set as the rest determination time (T0). - (Step S614)
- A mean value (A) of differences between all the time values (S) stored in the preserved data storage area and the rest determination times (T0) is calculated and stored in the
main memory 33. - (Step S615)
- The following equation (3) is calculated to obtain a value of the rest determination time (T).
-
T=rest determination time(T0)−A×(rest determination -
correction value) (3) - The aforementioned “A” is a value calculated at step S614. The “rest determination correction value” is a time value for adjustment previously set for determining whether or not the time axis is in the rest period.
- Instead of the aforementioned Equation (3), “T=A×(rest determination correction value)” may be used. When the mean value (A) of the differences between all the newest time values (S) stored in the preserved data storage area and the rest determination time (T0) is assumed as (A1), the following equation may be used.
-
T=rest determination time(T0)−A1×(rest determination -
correction value) - (Step S616)
- The process, Sa=(current time)−(time of the preceding tap), is performed, and then the value of Sa is once stored in the
main memory 33. - (Step S617)
- It is determined whether or not Sa>T holds. As a result of the determination, if Sa>T does not hold, the flow goes back to step S602. If it holds, the flow goes to Step S618. If Sa>T holds, it means that the rest period is longer than is required to be recognized as a command, so that the process is performed at step S618. If Sa>T does not hold, it means to be during the rest period required to be recognized as a command. Therefore, the flow goes back to step S602.
- (Step S618)
- The tap/rest flag is turned OFF (“1” is stored). That is, the rest period is recognized as one exceeding the period of time required of a command. Accordingly, the “tap rhythm” is input at intervals which cannot be recognized as a command, and a command as a tap input period is not determined. In short, this step corresponds to “NO” in step S24 d in
FIG. 11 , and the command determination process is terminated. - (Step S619)
- The process “Sb=(current time)θ(time of the preceding rest)” is performed, and then the value of Sb is once stored in the
main memory 33. The time of the preceding rest can be calculated by, for example, a process of sequentially storing a time value at which the tap/rest flag is turned “OFF” and a time value at which the tap/rest flag is tuned “ON”. - (Step S620)
- It is determined whether or not “Sb>maximum rest time (Tm)” holds. As a result of the determination, if Sb>Tm holds, the flow goes to step S618. If it does not hold, the flow goes back to step S602. The maximum rest time (Tm) is a time value previously set for determining that a rest period continues after a period required to be recognized as a rest period, which is a time for determining whether or not the rest will be followed by another rest. For example, a value ranging from around 0.6 seconds to around 1.2 seconds is set as the maximum rest time (Tm). When the processes from step S620 to step S618 are executed, the rest period is recognized as one exceeding a time required to be recognized as a command. Accordingly, the “tap rhythm” is input at intervals which cannot be recognized as a command, and a command as a tap input period is not determined.
- When the tap/rest command determination program P9 b is executed in accordance with the procedure shown in
FIG. 21 , the information about a tap period and a rest period is stored in time sequence order in the command determination table TC2 by the process in step S610. In this regard, the tap period is a period without consideration given to a level of the intensity of input vibration. This means that information relating to rhythm of taps and rests when the player continuously taps the mountingbase 8 is stored in the command determination table TC2. - In the embodiment, when the “tap rhythm” generated when the player continuously taps the mounting
base 8 matches previously set rhythm, in other words, a line of time sequence order of the tap input period and the rest period matches a previously set array (special input command), the main control program P0 executes game control set for the matching special input command.FIG. 23B shows an example of the data structure when a plurality of types of previously-set special input commands are set as a special input command table (TT2). - As shown in
FIG. 23B , the special input command table (TT2) is a data table in which patterns of arrays of information on the tap input period and the rest period serving as individual special input commands, and command execution program names (program start address) for executing game control for the respective special input commands are stored with being organized by identification information on each type of previously-set special input commands. - In the special input command table (TT2) shown in
FIG. 23B , when, in the special-input-command identification information (A1), the “tap rhythm” generated when the player continuously taps the mountingbase 8 matches “T”, “T”, “R”, “T”, namely, “tap (tap input period)”, “tap (tap input period)”, “rest (rest period)”, “tap (tap input period)” in time sequence, themonitor 2 displays a moving image of swimming killifish. As shown in the special input command table (TT2), when the “tap rhythm” when the player continuously taps the mountingbase 8 matches “triple, triple, septuple” rhythm (the special input command identification information “A3”), the main control program. P0 performs the process of operating themonitor 2 to display a moving image of swimming and jumping whales. - The embodiment relating to the aforementioned game control in consideration of tap rhythm has described an example of control without, in the tap input period, making a determination of a level of the intensity when the player taps the mounting
base 8. However, when means for determining an intensity level illustrated in the procedure inFIG. 20 is used, this makes it possible to implement game control in which an intensity level of a tap motion of the player is reflected in tap rhythm. - The embodiments according to the present invention have described an example of effectively using vibration generated by a tap motion of the player for a game. However, the present invention can be applied to a device of operating a liquid crystal display to display various relaxing images with music in response to a pattern of, for example, a motion of tapping a wall or the like in a waiting room of a hospital, a doctor's office or the like, a break room, or the like.
- For the controller used in the present invention, an application program for communicating vibration detected by a 3D acceleration sensor via infrared communication is installed on a mobile telephone with a 3D acceleration sensor and an infrared communication function, thereby using the mobile telephone as the controller used in the present invention. The aforementioned embodiments are not intended to unjustly limit the contents of the present invention cited in the claims. Also, the structure described in the embodiments is not alone the indispensable constituent features of the present invention.
-
- 1 GAME SYSTEM
- 2 MONITOR
- 2 a SPEAKER
- 3 GAME DEVICE
- 6 RECEIVER UNIT
- 7 CONTROLLER
- 30 CPU
- 31 MEMORY CONTROLLER
- 32 GPU
- 33 MAIN MEMORY (STORAGE MEANS)
- 51 MICROCOMPUTER
- 52 MEMORY
- 53 RADIO MODULE
- 73 ACCELERATION SENSOR
- 74 VIBRATOR
- P0 MAIN CONTROL PROGRAM
- P3 VIBRATION DETECTION PROGRAM
- P4 NATURAL-VIBRATION-VALUE CALCULATION PROGRAM
- P5 CORRECTION-VALUE CALCULATION PROGRAM
- P6 CORRECTION-VALUE OPERATION CONVERSION PROGRAM
- P8 VIBRATION PATTERN DETERMINATION PROGRAM
- P9 SPECIAL INPUT COMMAND DETERMINATION PROGRAM
- P10 PRESENTATION PROCESSING PROGRAM
Claims (23)
1. A game device, comprising:
input means capable of acquiring operation input in a game as operation input information; and
control means for controlling game progress on the basis of the operation input information,
wherein
the input means comprises vibration detection means for detecting vibration applied to the input means,
the control means comprises vibration level determination means for determining a level of a vibration detection signal detected by the vibration detection means, and
the control means executes game control using determination information determined by the vibration level determination means as the operation input information received from the input means.
2. A game device, comprising:
input means capable of acquiring operation input in a game as operation input information; and
control means for controlling game progress on the basis of the operation input information,
wherein
the input means comprises:
vibration detection means for detecting vibration applied to the input means; and
vibration level determination means for determining a level of a vibration detection signal detected by the vibration detection means,
the control means executes game control using determination information determined by the vibration level determination means as the operation input information received from the input means.
3. A game device, comprising:
input means capable of acquiring operation input in a game as operation input information; and
control means for controlling game progress on the basis of the operation input information,
wherein
the input means comprises vibration detection means for detecting vibration applied to the input means,
the control means comprises:
vibration pattern determination means for determining one or more level patterns of a vibration detection signal detected by the vibration detection means, and
special input command determination means for determining whether or not an array corresponding to time sequence of information relating to the level pattern determined by the vibration pattern determination means matches a special predetermined input command,
the control means executes game control using the special input command determined to be matching by the special input command determination means, as the operation input information received from the input means.
4. A game device, comprising:
input means capable of acquiring operation input in a game as operation input information; and
control means for controlling game progress on the basis of the operation input information,
wherein
the input means comprises:
vibration detection means for detecting vibration applied to the input means; and
vibration pattern determination means for determining one or more level patterns of a vibration detection signal detected by the vibration detection means,
the control means comprises special input command determination means for determining whether or not an array corresponding to time sequence of information relating to the level pattern determined by the vibration pattern determination means matches a special predetermined input command, and
the control means executes game control using the special input command determined to be matching by the special input command determination means, as the operation input information received from the input means.
5. The game device according to claim 1 , wherein
the input means comprises vibration generation means,
the control means comprises:
mounting determination means for determining that the input means is mounted on an installable mounting site when a vibration detection signal of a previously-set first predetermined value or less is received for a certain time-period from the vibration detection means;
vibration generation means for allowing the vibration generation means mounted on the mounting site to generate a first vibration for a predetermined time on the basis of a determination result produced by the mounting determination means;
natural-vibration value calculation means for calculating a natural vibration value in the mounting site from the vibration detection signal of the first vibration detected by the vibration detection means; and
vibration correction value calculation means for correcting a vibration detection signal of a second vibration applied to the mounting site as the operation input information detected by the vibration detection means, on the basis of the natural vibration value,
the vibration level determination means determines the level on the basis of the vibration detection signal of the second vibration corrected by the vibration correction value calculation means.
6. The game device according to claim 3 , wherein
the input means comprises vibration generation means,
the control means comprises:
mounting determination means for determining that the input means is mounted on an installable mounting site when a vibration detection signal of a previously-set first predetermined value or less is received for a certain time-period from the vibration detection means;
vibration generation means for allowing the vibration generation means mounted on the mounting site to generate a first vibration for a predetermined time, on the basis of a determination result produced by the mounting determination means;
natural-vibration value calculation means for calculating a natural vibration value in the mounting site, from the vibration detection signal of the first vibration detected by the vibration detection means; and
vibration correction value calculation means for correcting a vibration detection signal of a second vibration applied to the mounting site as the operation input information detected by the vibration detection means, on the basis of the natural vibration value,
the pattern determination means determines the level pattern on the basis of the vibration detection signal of the second vibration corrected by the vibration correction value calculation means.
7. The game device according to claim 6 , wherein the vibration pattern determination means comprises input vibration classification means for classifying the corrected vibration detection signal of the second vibration into one or more level patterns using intensity as determination criterion, based on a level of the corrected vibration detection signal of the second vibration.
8. The game device according to claim 6 , wherein the vibration pattern determination means comprises tap/rest setting means for making a level of the corrected vibration detection signal of the second vibration corresponding to an elapsed time axis to set a level pattern including a tap input period in which it is determined that the vibration detection signal has been input, and a rest period in which the vibration detection signal has not been input.
9. The game device according to claim 7 , further comprising storage means,
wherein the control means comprises:
vibration correction value storage means for sequentially storing the vibration detection signals of the second vibration corrected by the vibration correction value calculation means in time sequence order in the storage means as a third vibration detection signal;
level pattern threshold calculation means for calculating a classification threshold for determining which level pattern the third vibration detection signal belongs to, on the basis of one or more pieces of information including newest information on the third vibration detection signals stored in time sequence by the vibration correction value storage means; and
level pattern storage means for determining which level pattern the corrected newest third vibration detection signal belongs to, on the basis of the calculated threshold, and storing information relating to the determined level pattern in time sequence order in the storage means.
10. The game device according to claim 8 , further comprising storage means,
wherein the control means comprises:
tap time-interval storage means which, with respect to the vibration detection signal of the second vibration corrected by the vibration value calculation means, sequentially stores, in time sequence order, time intervals at which the vibration detection signals of the second vibration adjacent to each other in time sequence are input;
rest determination time correction means for calculating a corrected rest determination time, on the basis of the time interval and/or a previously-set rest determination time stored in the tap time-interval storage means, when it is determined that the vibration detection signal is not input; and
rest period determination means for determining, as the rest period, the elapsed time axis along which it is determined that the vibration detection signal is not input, when it is determined that a difference time value S between a current time value and a time value input by the vibration detection signal of the second vibration is larger than the corrected rest determination time
11. The game device according to claim 1 , further comprising:
conversion value calculation means for calculating a conversion value on the basis of a predetermined equation, when the vibration detection signal detected by the vibration detection means is equal to or less than a second predetermined value.
12. The game device according to claim 1 , further comprising:
associated vibration setting means which measures vibration detection signals of predetermined times detected by the vibration detection means, and when the input means has detected one-time vibration, sets vibrations to be detected except the one-time vibration, as associated vibrations associated with the one-time vibration, on the basis of the vibration detection signals measured at predetermined times.
13. A method of controlling game progress in a game device including input means having vibration detection means for detecting vibration, said method comprising:
a vibration level determination step of determining a level pattern of a vibration value detected by the vibration detection means to obtain determination information; and
a game control step based on vibration-level-determination, which controls execution of a game using the determination information obtained in the vibration level determination step as game control information.
14. A method of controlling game progress in a game device including input means having vibration generation means and vibration detection means for detecting vibration, said method comprising:
a mounting determination step which determines that the input means is mounted on an installable mounting site, when a vibration value equal to or lower than a previously-set predetermined value is detected for a certain time-period by the vibration detection means;
a vibration start step of starting a first vibration by the vibration generation means on the basis of a determination result in the mounting determination step;
a vibration detection step of actuating the vibration detection means to detect the first vibration when the first vibration occurs in the vibration start step;
a natural-vibration value calculation step of calculating a natural vibration value in the mounting site, from a first vibration value based on the first vibration detected in the vibration detection step;
a correction value calculation step of calculating a correction value in accordance with the natural vibration value and a second vibration value based on the second vibration, when the vibration detection means has detected a second vibration applied to the mounting site for operation input; and
a correction value operation conversion step of converting operation input information based on the correction value into game control information.
15. The method of game control according to claim 14 , comprising:
a vibration pattern determination step of determining one or more level patterns of the correction value calculated in the correction value calculation step;
a special input signal determination step of determining whether or not an array corresponding to time sequence of information relating to the level pattern determined in the vibration pattern determination step matches a previously-set special input command; and
a command execution step of executing game control using the special input command determined to be matching in the special input signal determination step as the operation input information input from the input means.
16. The method of game control according to claim 14 , wherein the vibration pattern determination step includes input vibration classification step of classifying the corrected vibration detection signal of the second vibration into one or more level patterns using intensity as a criterion, in response to a level of the corrected vibration detection signal of the second vibration.
17. The method of game control according to claim 14 , wherein the vibration pattern determination step includes tap/rest setting step which makes a level of the corrected vibration detection signal of the second vibration corresponding to an elapsed time axis to set a level pattern including a tap input period in which it is determined that the vibration detection signal has been input, and a rest period in which the vibration detection signal has not been input.
18. A computer readable recording medium storing a program executable by a game device which includes an input means having a vibration detection means for detecting vibration, said program controlling game progress in the game device and comprising:
a vibration level determination program of determining a level pattern of a vibration value detected by the vibration detection means to obtain determination information; and
game-control program based on a vibration-level-determination, for controlling execution of a game, using the determination information obtained by the vibration level determination program as game control information.
19. A computer readable recording medium storing a program executable by a game device which includes an input means having vibration generation means and vibration detecting means, said program controlling game progress in the game device and comprising:
a mounting determination program having a step of determining that the input means is mounted on an installable mounting site, when a vibration value equal to or lower than a previously-set predetermined value is detected for a certain time-period by the vibration detection means;
a vibration start program having a step of starting a first vibration by the vibration generation means, in accordance with a determination result based on the mounting determination program;
a vibration detection program having a step of actuating the vibration detection means to detect the first vibration when the first vibration occurs by virtue of the vibration start program;
a natural-vibration value calculation program having a step of calculating a natural vibration value in the mounting site from a first vibration value based on the first vibration detected by the vibration detection program;
a correction value calculation program having a step of calculating a correction value in accordance with the natural vibration value and a second vibration value based on the second vibration, when the vibration detection means has detected a second vibration applied to the mounting site for operation input; and
a correction value operation conversion program having a step of converting operation input information based on the correction value into game control information.
20. The computer readable medium according to claim 19 , wherein said program further comprises:
a vibration pattern determination program having a step of determining which level pattern of one or more level patterns the correction value calculated by the correction value calculation program corresponds to;
a special input command determination program having a step of determining whether or not an array corresponding to time sequence of information relating to the level pattern determined by the vibration pattern determination program matches a previously-set special input command; and
a command execution program having a step of executing game control, using the special input command determined to be matching by the special input command determination program, as the operation input information input from the input means.
21. The computer readable medium according to claim 19 , wherein the vibration pattern determination program includes input vibration classification program having a step of classifying the corrected vibration detection signal of the second vibration into one or more level patterns taking intensity as a criterion, in response to a level of the corrected vibration detection signal of the second vibration.
22. The computer readable medium according to claim 19 , wherein the vibration pattern determination program comprises tap/rest setting program having a step of making a level of the corrected vibration detection signal of the second vibration corresponding to an elapsed time axis, to set a level pattern including a tap input period in which it is determined that the vibration detection signal has been input, and a rest period in which the vibration detection signal has not been input.
23. (canceled)
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008-190224 | 2008-07-23 | ||
JP2008190224 | 2008-07-23 | ||
JP2008-297918 | 2008-11-21 | ||
JP2008297918A JP2010046471A (en) | 2008-07-23 | 2008-11-21 | Game device, game control method, game control program, and computer readable recording medium storing program |
PCT/JP2009/063203 WO2010010929A1 (en) | 2008-07-23 | 2009-07-23 | Game device, method for controlling game, game control program and computer readable recording medium storing program |
Publications (1)
Publication Number | Publication Date |
---|---|
US20110159958A1 true US20110159958A1 (en) | 2011-06-30 |
Family
ID=41570389
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/055,692 Abandoned US20110159958A1 (en) | 2008-07-23 | 2009-07-23 | Game device, method for controlling game, game control program and computer readable recording medium storing program |
Country Status (4)
Country | Link |
---|---|
US (1) | US20110159958A1 (en) |
EP (1) | EP2322256A1 (en) |
JP (1) | JP2010046471A (en) |
WO (1) | WO2010010929A1 (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170025980A1 (en) * | 2015-07-20 | 2017-01-26 | AAC Technologies Pte. Ltd. | Method for driving vibrating motor |
US20180193738A1 (en) * | 2017-01-12 | 2018-07-12 | Nintendo Co., Ltd. | Vibration control system, vibration control apparatus and vibration control method |
CN110226150A (en) * | 2017-01-11 | 2019-09-10 | 索尼互动娱乐股份有限公司 | Controller |
US10496111B2 (en) | 2016-04-13 | 2019-12-03 | Nintendo Co., Ltd. | Vibration control system, vibration output apparatus, storage medium having stored therein vibration output program, and vibration output method |
US10983490B2 (en) | 2016-04-13 | 2021-04-20 | Nintendo Co., Ltd. | Vibration control system, method and apparatus with game controller |
US11126266B1 (en) * | 2019-03-29 | 2021-09-21 | Snap Inc. | Vibrational input elements |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5241789B2 (en) * | 2010-09-02 | 2013-07-17 | 株式会社ソニー・コンピュータエンタテインメント | Program, object control method, and game apparatus |
JP5865927B2 (en) * | 2014-02-19 | 2016-02-17 | 株式会社ソフイア | Game machine |
JP6670577B2 (en) * | 2015-10-09 | 2020-03-25 | 任天堂株式会社 | Program, information processing apparatus, information processing system and information processing method |
US10967434B2 (en) * | 2016-08-12 | 2021-04-06 | Big Kaiser Präzisionswerkzeuge Ag | Boring head with an electronic unit |
US20200388190A1 (en) * | 2017-12-19 | 2020-12-10 | Sony Corporation | Information processing apparatus, information processing method, and program |
JP6717553B2 (en) * | 2018-08-02 | 2020-07-01 | 任天堂株式会社 | Vibration control system, vibration control method, vibration output device, game controller, vibration output program, and vibration output method |
Citations (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020072415A1 (en) * | 1998-12-11 | 2002-06-13 | Hideaki Kikukawa | Entertainment system, recording medium and entertainment apparatus |
US20050210417A1 (en) * | 2004-03-23 | 2005-09-22 | Marvit David L | User definable gestures for motion controlled handheld devices |
US20050210418A1 (en) * | 2004-03-23 | 2005-09-22 | Marvit David L | Non-uniform gesture precision |
US20050212751A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Customizable gesture mappings for motion controlled handheld devices |
US20050212759A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Environmental modeling for motion controlled handheld devices |
US20050212756A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Gesture based navigation of a handheld user interface |
US20050212753A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Motion controlled remote controller |
US20050212760A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Gesture based user interface supporting preexisting symbols |
US20050216867A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Selective engagement of motion detection |
US20050212758A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Handheld device with preferred motion selection |
US20050212766A1 (en) * | 2004-03-23 | 2005-09-29 | Reinhardt Albert H M | Translation controlled cursor |
US20050212767A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Context dependent gesture response |
US20050212911A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Gesture identification of controlled devices |
US20050212757A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Distinguishing tilt and translation motion components in handheld devices |
US20050212750A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Spatial signatures |
US20050212749A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Motion sensor engagement for a handheld device |
US20050212752A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Selective engagement of motion input modes |
US20050212755A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Feedback based user interface for motion controlled handheld devices |
US20050212754A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Dynamic adaptation of gestures for motion controlled handheld devices |
US20060046848A1 (en) * | 2004-08-31 | 2006-03-02 | Nintendo Co., Ltd., | Game apparatus, storage medium storing a game program, and game control method |
US20070052177A1 (en) * | 2005-08-22 | 2007-03-08 | Nintendo Co., Ltd. | Game operating device |
US20070270223A1 (en) * | 2006-05-08 | 2007-11-22 | Namco Bandai Games Inc. | Program, information storage medium, and image generation system |
US20070270222A1 (en) * | 2006-05-08 | 2007-11-22 | Namco Bandai Games Inc. | Program, information storage medium, and image generation system |
US20080039200A1 (en) * | 2006-08-07 | 2008-02-14 | Nintendo Co., Ltd. | Storage medium having game program stored thereon and game apparatus |
US20080132339A1 (en) * | 2006-12-01 | 2008-06-05 | Nintendo Co., Ltd. | Storage medium storing game program and game apparatus |
US20090131171A1 (en) * | 2007-11-16 | 2009-05-21 | Sony Computer Entertainment Inc. | Game System and Game Controller |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3824462B2 (en) | 2000-02-24 | 2006-09-20 | 株式会社バンダイナムコゲームス | GAME DEVICE AND INFORMATION STORAGE MEDIUM |
WO2005103863A2 (en) * | 2004-03-23 | 2005-11-03 | Fujitsu Limited | Distinguishing tilt and translation motion components in handheld devices |
JP4420713B2 (en) | 2004-03-31 | 2010-02-24 | 株式会社バンダイナムコゲームス | PROGRAM, INFORMATION STORAGE MEDIUM, AND GAME DEVICE |
JP4586525B2 (en) * | 2004-12-20 | 2010-11-24 | ヤマハ株式会社 | Virtual drum device |
JP4142061B2 (en) * | 2006-05-02 | 2008-08-27 | 株式会社ソニー・コンピュータエンタテインメント | Game controller |
-
2008
- 2008-11-21 JP JP2008297918A patent/JP2010046471A/en not_active Withdrawn
-
2009
- 2009-07-23 EP EP09800443A patent/EP2322256A1/en not_active Withdrawn
- 2009-07-23 US US13/055,692 patent/US20110159958A1/en not_active Abandoned
- 2009-07-23 WO PCT/JP2009/063203 patent/WO2010010929A1/en active Application Filing
Patent Citations (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020072415A1 (en) * | 1998-12-11 | 2002-06-13 | Hideaki Kikukawa | Entertainment system, recording medium and entertainment apparatus |
US6599196B2 (en) * | 1998-12-11 | 2003-07-29 | Sony Computer Entertainment Inc. | Controllers with selectable force feedback |
US20030211891A1 (en) * | 1998-12-11 | 2003-11-13 | Hideaki Kikukawa | Entertainment system, recording medium and entertainment apparatus |
US7052397B2 (en) * | 1998-12-11 | 2006-05-30 | Sony Computer Entertainment Inc. | Entertainment system, recording medium and entertainment apparatus |
US20050212911A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Gesture identification of controlled devices |
US20050212749A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Motion sensor engagement for a handheld device |
US20050212759A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Environmental modeling for motion controlled handheld devices |
US20050212756A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Gesture based navigation of a handheld user interface |
US20050212753A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Motion controlled remote controller |
US20050212760A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Gesture based user interface supporting preexisting symbols |
US20050216867A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Selective engagement of motion detection |
US20050212758A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Handheld device with preferred motion selection |
US20050212766A1 (en) * | 2004-03-23 | 2005-09-29 | Reinhardt Albert H M | Translation controlled cursor |
US20050212767A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Context dependent gesture response |
US20050210418A1 (en) * | 2004-03-23 | 2005-09-22 | Marvit David L | Non-uniform gesture precision |
US20050212757A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Distinguishing tilt and translation motion components in handheld devices |
US20050212750A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Spatial signatures |
US20050212751A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Customizable gesture mappings for motion controlled handheld devices |
US20050212752A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Selective engagement of motion input modes |
US20050212755A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Feedback based user interface for motion controlled handheld devices |
US20050212754A1 (en) * | 2004-03-23 | 2005-09-29 | Marvit David L | Dynamic adaptation of gestures for motion controlled handheld devices |
US20050210417A1 (en) * | 2004-03-23 | 2005-09-22 | Marvit David L | User definable gestures for motion controlled handheld devices |
US20060046848A1 (en) * | 2004-08-31 | 2006-03-02 | Nintendo Co., Ltd., | Game apparatus, storage medium storing a game program, and game control method |
US7351152B2 (en) * | 2004-08-31 | 2008-04-01 | Nintendo Co., Ltd. | Hand-held game apparatus, game program storage medium and game control method for controlling display of an image based on detected angular velocity |
US20070052177A1 (en) * | 2005-08-22 | 2007-03-08 | Nintendo Co., Ltd. | Game operating device |
US20080153593A1 (en) * | 2005-08-22 | 2008-06-26 | Nintendo Co., Ltd. | Game operating device |
US20070270223A1 (en) * | 2006-05-08 | 2007-11-22 | Namco Bandai Games Inc. | Program, information storage medium, and image generation system |
US20070270222A1 (en) * | 2006-05-08 | 2007-11-22 | Namco Bandai Games Inc. | Program, information storage medium, and image generation system |
US20080039200A1 (en) * | 2006-08-07 | 2008-02-14 | Nintendo Co., Ltd. | Storage medium having game program stored thereon and game apparatus |
US20080132339A1 (en) * | 2006-12-01 | 2008-06-05 | Nintendo Co., Ltd. | Storage medium storing game program and game apparatus |
US20090131171A1 (en) * | 2007-11-16 | 2009-05-21 | Sony Computer Entertainment Inc. | Game System and Game Controller |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170025980A1 (en) * | 2015-07-20 | 2017-01-26 | AAC Technologies Pte. Ltd. | Method for driving vibrating motor |
US9774289B2 (en) * | 2015-07-20 | 2017-09-26 | AAC Technologies Pte. Ltd. | Method for driving vibrating motor |
US10496111B2 (en) | 2016-04-13 | 2019-12-03 | Nintendo Co., Ltd. | Vibration control system, vibration output apparatus, storage medium having stored therein vibration output program, and vibration output method |
US10983490B2 (en) | 2016-04-13 | 2021-04-20 | Nintendo Co., Ltd. | Vibration control system, method and apparatus with game controller |
CN110226150A (en) * | 2017-01-11 | 2019-09-10 | 索尼互动娱乐股份有限公司 | Controller |
US11000760B2 (en) * | 2017-01-11 | 2021-05-11 | Sony Interactive Entertainment Inc. | Controller |
US11400366B2 (en) | 2017-01-11 | 2022-08-02 | Sony Interactive Entertainment Inc. | Controller |
US20180193738A1 (en) * | 2017-01-12 | 2018-07-12 | Nintendo Co., Ltd. | Vibration control system, vibration control apparatus and vibration control method |
US10912994B2 (en) * | 2017-01-12 | 2021-02-09 | Nintendo Co., Ltd. | Vibration control system, vibration control apparatus and vibration control method |
US11126266B1 (en) * | 2019-03-29 | 2021-09-21 | Snap Inc. | Vibrational input elements |
Also Published As
Publication number | Publication date |
---|---|
EP2322256A1 (en) | 2011-05-18 |
JP2010046471A (en) | 2010-03-04 |
WO2010010929A1 (en) | 2010-01-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20110159958A1 (en) | Game device, method for controlling game, game control program and computer readable recording medium storing program | |
US9833705B2 (en) | Storage medium storing information processing program, information processing apparatus and information processing method | |
US10343058B2 (en) | Storage medium storing a load detecting program and load detecting apparatus | |
JP5161182B2 (en) | Information processing program and information processing apparatus | |
EP2237132B1 (en) | Input method for detecting the gravity center position of the user and corresponding information processing apparatus | |
US9375640B2 (en) | Information processing system, computer-readable storage medium, and information processing method | |
US20110070953A1 (en) | Storage medium storing information processing program, information processing apparatus and information processing method | |
US8905844B2 (en) | Storage medium storing load detecting program and load detecting apparatus | |
US20090093315A1 (en) | Storage medium storing load detection program, load detection apparatus, and load detection method | |
US20100137063A1 (en) | Information processing apparatus and computer readable storage medium | |
WO2007001050A1 (en) | Network game system, network game system control method, game machine, game machine control method, and information storage medium | |
US20100265173A1 (en) | Information processing program and information processing apparatus | |
EP2311538A1 (en) | Information processing program having computer-readable storage medium therein and information processing apparatus | |
EP3785775B1 (en) | Information processing system, information processing program, information processing apparatus, and information processing method | |
US20080207325A1 (en) | Control arrangement for operating video game console | |
WO2007001051A1 (en) | Network game system, game machine, game machine control method, and information storage medium | |
US8482519B2 (en) | Storage medium storing information processing program, information processing apparatus and information processing method | |
JP5202432B2 (en) | Information processing program and information processing apparatus | |
JP6045777B2 (en) | Direction control system, direction control device, direction control program, and direction control method | |
JP2010099359A (en) | Game control program | |
JP2012065833A (en) | Game device, game control method, and program | |
JP2010104721A (en) | Game control program, game control method, and game apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |