(第1の形態)
以下、本発明に係るゲームシステムの第1の形態について説明する。図1は、本発明の第1の形態に係るゲームシステムが適用された業務用のゲーム機を示す図である。図1に示すように、ゲーム機1は、筐体2と、筐体2の上面にプレイヤP側に傾けられて配置される表示装置としてのモニタ3と、を備えている。モニタ3の表面には、入力装置としての透明なタッチパネル5が重ね合わされている。タッチパネル5は、プレイヤPが指等で触れると、その接触位置に応じた信号を出力する公知の入力装置である。その他にも、ゲーム機1には、選択或いは決定をするためのボタン、電源スイッチ、ボリューム操作スイッチ、電源ランプといった通常の業務用のゲーム機が備えている各種の入力装置及び出力装置が設けられているが、図1ではそれらの図示を省略している。
図2は、ゲーム機1の機能ブロック図である。図2に示すように、筐体2の内部にはコンピュータとしての制御ユニット10が設けられている。制御ユニット10は、制御主体としてのゲーム制御部11と、そのゲーム制御部11からの出力に従って動作する表示制御部12及び、音声出力制御部13と、を備えている。ゲーム制御部11は、マイクロプロセッサと、そのマイクロプロセッサの動作に必要な内部記憶装置(一例としてROM及びRAM)等の各種の周辺装置とを組み合わせたユニットとして構成されている。表示制御部12は、ゲーム制御部11から与えられる画像データに応じた画像をフレームバッファに描画し、その描画した画像に対応する映像信号をモニタ3に出力することにより、モニタ3上に所定の画像を表示させる。音声出力制御部13は、ゲーム制御部11から与えられる音声再生データに応じた音声再生信号を生成して、制御ユニット10に接続された音声出力装置としてのスピーカ14に出力することにより、スピーカ14から所定の音声(楽音等を含む)を再生させる。
ゲーム制御部11には、外部記憶装置20が接続されている。外部記憶装置20には、DVDROM、CDROM等の光学式記憶媒体、あるいはEEPROM等の不揮発性半導体メモリ装置といった、電源の供給がなくても記憶を保持可能な記憶媒体が使用される。
外部記憶装置20には、ゲームプログラム21と、ゲームデータ22とが記憶されている。ゲームプログラム21は、ゲーム機1にて所定の手順に従って音楽ゲームを実行するために必要なコンピュータプログラムであり、そこには、本発明に係る機能を実現するためのシーケンス制御モジュール23及び評価モジュール24が含まれている。ゲーム機1が起動されると、ゲーム制御部11はその内部記憶装置に記憶されたオペレーションプログラムを実行することにより、ゲーム機1として動作するために必要な各種の初期設定を実行し、続いて、外部記憶装置20からゲームプログラム21を読み込んでこれを実行することにより、ゲームプログラム21に従って音楽ゲームを実行するための環境を設定する。ゲームプログラム21のシーケンス制御モジュール23がゲーム制御部11にて実行されることにより、ゲーム制御部11にはシーケンス制御部15が生成される。また、ゲームプログラム21の評価モジュール24がゲーム制御部11にて実行されることにより、ゲーム制御部11には操作評価部16が生成される。シーケンス処理部15及び操作評価部16は、コンピュータハードウェアとコンピュータプログラムとの組み合わせによって実現される論理的装置である。シーケンス処理部15は、プレイヤが選択した音楽(楽曲)の再生に合わせてプレイヤに操作を指示し、或いはプレイヤの操作に応じて効果音を発生させるといった音楽ゲーム処理を実行する。操作評価部16は、プレイヤの操作を評価し、かつその評価結果に応じたゲームの制御といった処理を実行する。なお、ゲームプログラム21には、上述したモジュール23、24の他にも音楽ゲームを実行するために必要な各種のプログラムモジュールが含まれ、ゲーム制御部11にはそれらのモジュールに対応した論理的装置が生成されるが、それらの図示は省略した。
ゲームデータ22には、ゲームプログラム21に従って音楽ゲームを実行する際に参照されるべき各種のデータが含まれている。例えば、ゲームデータ22には、楽曲データ25、効果音データ26及び画像データ27が含まれている。楽曲データ25は、ゲームの対象となる楽曲をスピーカ14から再生出力させるために必要なデータである。図2では、一種類の楽曲データ25が示されているが、実際には、プレイヤが複数の楽曲からプレイする楽曲を選択可能である。ゲームデータ22には、それらの複数の楽曲データ25がそれぞれの曲を識別するための情報を付して記録されている。効果音データ26は、プレイヤの操作に応答してスピーカ14から出力させるべき複数種類の効果音を、効果音毎にユニークなコードと対応付けて記録したデータである。効果音は、楽器その他の様々な種類の音声を含む。効果音データは、各種類に対して、音程を変えて所定のオクターブ数だけ用意されていてもよい。画像データ27は、ゲーム画面内の背景画像、各種のオブジェクト、アイコン等をモニタ3に表示させるためのデータである。
ゲームデータ22には、更にシーケンスデータ28が含まれている。シーケンスデータ28は、プレイヤに対して指示すべき操作等を定義したデータである。一曲の楽曲データに対して、最低一個のシーケンスデータ28が用意される。シーケンスデータ28の詳細は後述する。
次に、ゲーム機1にて実行される音楽ゲームの概要を説明する。ゲーム機1は、音楽に合わせて二人のプレイヤ(ゲーム機1が一方のプレイヤとして機能する場合を含む)が操作を実行し、その二人のプレイヤの操作時期を評価して競わせる対戦タイプの音楽ゲーム機として構成されている。図1では、1台のゲーム機のみが示されているが、ゲーム状況を共有可能に接続された複数のゲーム機1にてゲームが実行されてもよい。図3は、ゲーム画面を模式的に示した図である。ゲーム画面50には、プレイヤに操作時期を案内するためのゲーム領域52と、各プレイヤの得点等を表示するための情報領域53とが含まれている。ゲーム領域52は矩形に形成されている。ゲーム領域52の長手方向の両端には、操作基準部としての第1操作基準部55A及び第2操作基準部55Bが互いに対向するように配置されている。各操作基準部55A、55Bは、ゲーム領域52の長手方向と直交する方向に直線状に延びている。各操作基準部55A、55Bは、ゲームのプレイヤによりそれぞれゲーム上の現在時刻の基準として用いられる。具体的には、第1操作基準部55Aが第1プレイヤの現在時刻の基準として、第2操作基準部55Bが第2プレイヤの現在時刻の基準として、それぞれ用いられる。図3の例では、第1操作基準部55Aとして赤色の直線が、第2操作基準部55Bとして青色の直線が、それぞれ用いられており、各プレイヤを区別するためにプレイヤ毎に異なる色が用いられている。また、情報領域53は、ゲーム領域52の周囲に配置され、ゲーム領域52の長手方向の一端側が一方のプレイヤの得点等を表示するために用いられ、他端側が他方のプレイヤの得点等を表示するために用いられる。
各操作基準部55A、55Bは、所定の間隔で配置された複数の反発点をそれぞれが含んでいる。第1操作基準部55Aに含まれる複数の反発点R1と第2操作基準部に含まれる反発点R2とは、複数の経路Wによって相互に接続されている。つまり、第1操作基準部55Aに含まれる一の反発点R1からは第2操作基準部に含まれる複数の反発点R2に到る複数の経路Wが設けられている。図3の例では、反発点R1と反発点R2とを接続する複数の経路Wの一例として、反発点R1から延びる5つの経路W1、W2、W3、W4、W5を破線で示している。図3に示すように、第1操作基準部55Aのある一の反発点R1には第2操作基準部55Bに含まれる5つの反発点R2に向かって延びる5つの経路W1、W2、W3、W4、W5が設けられている。音楽ゲームの実行中、つまり、楽曲の再生の進行中において、反発点R1と反発点R2とを接続する経路W上には、操作を指示する操作指示標識としてのオブジェクト60がシーケンスデータ28に従って表示される。なお、図3では、説明の都合上、各経路W1、W2、W3、W4、W5を破線で示したが、実際のゲーム画面50には複数の経路Wのいずれも表示されていない。
オブジェクト60は、曲中の適当な時期に反発点R1或いは、反発点R2に出現し、楽曲の進行に従って、出現した各反発点R1、R2から反対側に位置する各反発点R1、R2に向かって、各反発点R1、R2から延びる経路W上を移動する。そして、オブジェクト60が到達した各反発点R1、R2は、次のオブジェクト60の出現位置となり、その出現位置から反対側に位置する各反発点R1、R2に向かって移動する。このため、オブジェクト60は、各反発点R1、R2であたかも反発するように、各操作基準部間55A、55B間を交互に繰り返し移動する。また、オブジェクト60の各操作基準部55A、55Bへの到達に合わせて、オブジェクト60が到達した各操作基準部55A、55Bを現在時刻の基準として用いる各プレイヤには、各操作基準部55A、55Bのオブジェクト60が到達した位置をタッチするタッチ操作が要求される。各プレイヤがタッチ操作を行うと、オブジェクト60が各操作基準部55A、55Bに一致した時刻と、各プレイヤがタッチ操作した時刻との間のずれ時間が検出される。そのずれ時間が小さいほどプレイヤの操作が高く評価される。また、タッチ操作に応じて効果音がスピーカ14から再生される。効果音の再生方法として周知の方法が適用されてよい。例えば、効果音再生の周知な方法として、楽曲を再生しつつ楽曲の上から効果音を追加する方法、ミスした場合に楽曲を消音しつつミス操作に対応した効果音を再生する方法が存在する。また、例えば、楽曲を分割して各操作時期に割り当てて、適切な操作が実行された場合、当該操作時期に割り当てられた楽曲のパートが演奏される(各操作時期に対する適切な操作により楽曲を形成するような方法。このため、ミス操作がされた場合には、その操作時期に割り当てられた楽曲のパートが再生されない)方法も存在する。
図3の例では、オブジェクト60が経路W2上にて第2操作基準部55Bの反発点R2に向かって移動中であり、第2操作基準部55Bへの到達に合わせて第2操作基準部55Bを現在時刻の基準として用いる第2プレイヤは、第2操作基準部55Bのオブジェクト60が到達する位置をタッチ操作すればよい。また、オブジェクト60は、これから向かう先の各操作基準部55A、55Bに対応した色で表示されている。つまり、図3の例では、オブジェクト60は第2操作基準部55Bの反発点R2に到達するまで青色で表示され、到達した反発点R2に出現する次のオブジェクト60は赤色で表示される。本形態では、モニタ3上の各操作基準部55A、55Bと、それらに重ね合わされるタッチパネル5との組み合わせによって、複数の操作部が形成される。なお、以下では、各操作基準部55A、55Bを、操作部を代表する用語として使用することがある。
オブジェクト60が到達した各反発点R1、R2から反対側の各反発点R1、R2に移動するための経路Wは、各操作基準部55A、55Bがタッチ操作されたときのオブジェクト60の位置に応じて決定される。位置の対比を容易にするために、オブジェクト60は複数の領域に分けられる。図4は、オブジェクト60の領域を説明するための図である。図4の破線は経路W2、W3、W4をそれぞれ示し、一点鎖線62は各領域の境界をそれぞれ示している。図4の例では、オブジェクト60は各操作基準部55A、55Bと最初に接触する接触点付近の接触領域Sと、その接触領域Sを境界とする右側領域R、左側領域L及び、その他の領域Oの4つの領域に分けられる。そして、オブジェクト60が移動する経路として、反発点R2から反発点R1に向かう経路Wのうちから接触領域S及び、その他の領域O付近がタッチ操作された場合にはR1に最短距離で向かう直線経路W3が、左側領域L付近がタッチ操作された場合にはゲーム領域52の長手方向の右側の側壁52Rを経由してR1に向かう第1右側経路W4が、右側領域R付近がタッチ操作された場合にはゲーム領域52の長手方向の左側の側壁52Lを経由してR1に向かう第1左側経路W2が、それぞれ選択される。つまり、タッチ操作がされた操作位置とオブジェクト60の位置との間の位置関係に応じてオブジェクト60が次の各操作基準部に55A、55Bに向かう際の移動経路が決定される。移動経路によって移動距離が異なるので、操作位置とオブジェクト60の位置との間の位置関係に応じて、オブジェクト60が次の各操作基準部55A、55Bに移動するための移動距離に差が生じる。一方で、移動経路に関係なくオブジェクト60をタッチ操作すべき操作時期、つまり、各操作基準部55A、55Bにオブジェクト60が到達すべき時期は一定である。このため、移動経路に応じてオブジェクト60の移動速度に差が生じる。つまり、一方のプレイヤのタッチ操作に応じて他方のプレイヤに向かって移動するオブジェクト60の経路W及び移動速度が変化する。これによりゲームの難易度が変化するので、各プレイヤは相手プレイヤへの影響を意識しつつ自己の操作を実行する。第2右側経路W1及び第2左側経路W5が選択される場合については後述する。
上述のように、オブジェクト60は、各プレイヤの操作を指示するために各操作基準部55A、55B間、つまり、各プレイヤ間を移動する。しかし、楽曲によっては演奏間隔の都合上、一方のプレイヤの操作から他方のプレイヤの操作までの間隔が短い場合がある。このような場合の例として、四分音符を示す“タン”と、八分音符を示す“タ”を用いて説明する。楽曲例として、“タン”、“タン”、“タ”、“タ”、“タン”の順に演奏されるものが存在したとする。この場合、八分音符を示す“タ”は、四分音符を示す“タン”よりも演奏間隔が短い。従って、これらの演奏が各操作基準部(仮に、各操作基準部をB及びAの2つとする)で交互に実行される場合、例えば、B(タン)→A(タン)→B(タ)→A(タ)→B(タン)の順に演奏が実行される場合、B(タン)→A(タン)を指示するオブジェクト60の移動速度に比べ、B(タ)→A(タ)を指示するオブジェクト60の移動速度は倍になる。このような短い間隔を1つのオブジェクト60のみで案内すると、各操作基準部55A、55B間のオブジェクト60の移動速度が高速になり過ぎてプレイヤが認識できない等の不適切な案内が生じてしまう場合がある。このような不適切な案内が生じないように、一方のプレイヤの操作から他方のプレイヤの操作までの間隔が所定値よりも短い場合には、その短い間隔が生じる一方のプレイヤの一つ前の操作時期において、表示するオブジェクト60を2つに増加させる。2つのオブジェクト60のうち一方のオブジェクト60は次回の操作時期を案内すべく他方のプレイヤに向かって移動し、他方のオブジェクト60は次回の他方のプレイヤの操作の次に他方のプレイヤが操作すべき操作時期を、つまり、オブジェクト60が1つの場合に一方のプレイヤの操作後に生じ得る短い間隔の操作時期を案内すべく一方のオブジェクト60よりもゆっくりと他方のプレイヤに向かって移動する。
例えば、第2操作基準部55B(上記楽曲例のB)から第1操作基準部55A(上記楽曲例のA)までの移動時間が所定値よりも短い場合(“タ”を指示する場合)について説明する。この場合、その所定値よりも短い移動(上記楽曲例のB(タ)→A(タ))が生じる2つ手前の移動(上記楽曲例のB(タン)→A(タン))のオブジェクト60の出現位置、つまり、2つ手前の移動が開始される第2操作基準部55B(上記楽曲例のB)に2つのオブジェクト60が出現する。そして、一方のオブジェクト60が次回の操作時期(上記楽曲例のA(タン))を指示すべく第1操作基準部55Aへ、他方のオブジェクト60が次回の操作時期(上記楽曲例のA(タン))に対する次々回の操作時期(上記楽曲例のA(タ))を指示すべく第1操作基準部55Aへ、それぞれ移動する。つまり、一方のオブジェクト60は次回の操作時期(上記楽曲例のA(タン))を、他方のオブジェクト60は1つのオブジェクト60のみであれば所定値よりも短い間隔となる3つ先の操作時期(上記楽曲例のB(タ)→A(タ)の移動によるA(タ))を、それぞれ指示すべく移動する。即ち、一の操作時期(上記楽曲例のB(タ))から次の操作時期(上記楽曲例のA(タ))までの時間の間隔が所定値よりも短い場合には、その時間間隔が短くなる一の操作時期の前の操作時期(上記楽曲例のB(タン)→A(タン)のうちのA(タン))に対応するオブジェクト60が表示開始される時期(上記楽曲例のB(タン)→A(タン)のうちのB(タン))に、表示されるオブジェクト60が2つに増加し、一方が直近の操作時期(一の操作時期に対する前の操作時期、つまり上記楽曲例のA(タン))を、他方がその時間間隔が短くなる操作時期(一の操作時期に対する次の操作時期、つまり上記楽曲例のA(タ))を、それぞれ指示するように移動する。
図5は、オブジェクト60が増加した状態のゲーム画面を模式的に示している。図5の例では、オブジェクト60が第2操作基準部55Bに到達した後、第1オブジェクト60a及び第2オブジェクト60bの2つに分裂するように増加した状態を示している。また、第1オブジェクト60aと第2オブジェクト60bとはそれぞれ異なる経路W上を移動するように経路Wが選択される。図5の例では、第2操作基準部55Bにてオブジェクト60の右側領域Rがタッチ操作された場合を示している。この例では、一方の第1オブジェクト60aはタッチ操作された右側領域Rに対応した第1左側経路W2を、他方の第2オブジェクト60bは第1左側経路W2と途中まで経路を共有しつつ、到達する反発点R1の異なる第2左側経路W1を、それぞれ移動する。また、図5の例では、オブジェクト60の左側領域L付近がタッチ操作された場合には、一方の第1オブジェクト60aが第1右側経路W4を、他方の第2オブジェクト60bが第1右側経路W4と途中まで経路を共有しつつ、到達する反発点R1の異なる第2右側経路W5を、それぞれ移動する。つまり、図5の例では、第2左側経路W1及び第2右側経路W5は、オブジェクト60が2つに増加した場合の第2オブジェクト60b用の経路として設けられている。一方、接触領域S及び、その他の領域O付近がタッチ操作された場合には、第2オブジェクト60bは第1オブジェクト60aと同一の直線経路W3を移動する。なお、第2左側経路W1及び第2右側経路W5が第2オブジェクト60b用の経路として設けられる形態に限定されるものではない。例えば、これらの経路W1、W5が第1オブジェクト60a及びオブジェクト60と供用されてもよい。また、図5の例では、予め設定されている規則に基づいて一方のオブジェクト60aと他方のオブジェクト60bとは異なる経路W上を移動しているが、一方のオブジェクト60aの移動経路と他方のオブジェクト60bの移動経路との関係はどのようなものでもよい。例えば、図5の例とは異なり、他方のオブジェクト60bは、一方のオブジェクト60aとは逆の第1右側経路W4を移動してもよいし、同一の第1左側経路W2を移動してもよい。
図6は、図5の状態から一定時間経過した状態のゲーム画面を模式的に示している。図6では、各オブジェクト60a、60bのうち一方の第1オブジェクト60aが第1操作基準部55Aに到達した後、新たに第2操作基準部55Bに向かって移動して第2操作基準部55Bに到達する直前に位置する一方で、他方の第2オブジェクト60bは第1操作基準部55Aに到達する直前に位置している。図6の例では、第1操作基準部55Aで反発した第1オブジェクト60aから第2操作基準部55Bまでの距離が第2オブジェクト60bから第1操作基準部55Aまでの距離よりも短い。また、第1オブジェクト60aの方が第2オブジェクト60bよりも移動速度が速い。このため、まず第1オブジェクト60aが第2操作基準部55Bに到達し、その後すぐに第2オブジェクト60bが第1操作基準部55Aに到達する。これらの操作時期を仮に1つのオブジェクト60のみで指示する場合には、オブジェクト60が第2操作基準部55Bに到達後すぐに第2操作基準部55Bから反対側に位置する第1操作基準部55Aまで短時間で移動する必要がある。しかし、図6の例では、このようなオブジェクト60の短時間での移動の替わりに事前に2つ目の第2オブジェクト60bが用いられ、第2オブジェクト60bの第1操作基準部55Aへの到達、つまり、第1プレイヤへの操作時期の指示を予期させている。なお、各オブジェクト60a、60bが到達した各反発点R1、R2は必ずしも次の各オブジェクト60a、60bの出現位置として用いられなくてもよい。例えば、一つのオブジェクト60で操作時期が案内される状態に戻すために、第1オブジェクト60a又は、第2オブジェクト60bは各操作基準部55A、55Bへの到達により消滅してもよい。また、演奏間隔の都合によっては、各オブジェクト60a、60bの到達した各反発点R1、R2は次の各オブジェクト60a、60bの出現位置として用いられ、更にオブジェクト60が2つ表示される状態が継続してもよいし、更に3つ目、4つ目のオブジェクト60が各オブジェクト60a、60bの到達した各反発点R1、R2に出現してもよい。
図7は、オブジェクト60が更に増加した状態のゲーム画面を模式的に示した図である。図7の例では、第1オブジェクト60aが第1操作基準部55Aに到達した後、到達した位置に更に第3オブジェクト60cの表示が追加され、ゲーム領域52に合計3つのオブジェクト60が表示されている。第3オブジェクト60cは、第1オブジェクト60aよりもゆっくりとした速度で第2操作基準部55Bに向かって移動し、図6の例における第2オブジェクト60bと同様に、演奏間隔が短い場合の操作時期を第2プレイヤに案内する。なお、必ずしも各プレイヤに交互に操作時期が案内されるように第1オブジェクト60aの第2操作基準部55Bへの到達と第3オブジェクト60cの第2操作基準部55Bへの到達との間に第2オブジェクト60bが第1操作基準部55Aに到達する必要はない。つまり、第1オブジェクト60a及び第3オブジェクト60cが連続して第2操作基準部55Bに到達し、連続して第2プレイヤに操作時期が指示されてもよい。これらの各オブジェクト60a〜60cを区別しないときには、以下でオブジェクト60と表記する。
次に、図8を参照して、シーケンスデータ28の詳細を説明する。図8に示したように、シーケンスデータ28は、条件定義部28aと、操作シーケンス部28bと、を含んでいる。条件定義部28aには、音楽のテンポ、ビート、トラック、また、オブジェクト60をタッチ操作したときにそれぞれ発生させるべき効果音を指定する情報等、楽曲毎に異なるゲームの実行条件を指定する情報が記述される。なお、図8では条件定義部28aがシーケンスデータ28の先頭のみに設けられているが、操作シーケンス部28bの途中の適宜の位置にも条件定義部28aが追加されてよい。それにより、曲中のテンポの変更、効果音の割り当ての変更といった処理を実現することができる。
一方、操作シーケンス部28bには、オブジェクト60をタッチ操作すべき時期と、表示開始すべき時期と、プレイヤ(或いは、各操作基準部55A、55B)を指示する情報とがオブジェクト60毎に対応付けて記述されている。図8は、シーケンスデータの内容の一例を示す図である。図8にその一部を例示したように、操作シーケンス部28bは、楽曲中において操作が行われるべき時期(操作時期)を指示する操作時期部28cと、オブジェクト60の表示が開始されるべき表示開始時期を設定する表示開始情報部28dと、オブジェクト60が表示開始されるプレイヤ(或いは、各操作基準部55A、55B)を指示する表示位置指示部28eと、表示するオブジェクト60を指示する標識情報部28fと、を含んでいる。そして、操作シーケンス部28bは、表示するオブジェクト60毎に楽曲中において操作が行われるべき操作時期と、オブジェクト60の表示開始時期と、オブジェクト60が表示開始されるプレイヤ(或いは、各操作基準部55A、55B)とが対応付けて記述された複数のレコードの集合として構成されている。操作時期及び表示開始時期は、楽曲中の小節番号、拍数、及び拍中の時刻を示す値がカンマで区切られて記述されている。拍中の時刻は、一拍の先頭からの経過時間であり、一拍の時間長をn個の単位時間に等分したときのその拍の先頭からの単位数で表現される。例えば、n=100で、楽曲の一小節目の二拍目で、かつその拍の先頭から1/4だけ経過した時刻を操作時期又は表示開始時期として指定する場合には、“01,2,025”と記述される。
操作時期部28cには、一の操作時期とその一の操作時期に対する次の操作時期との間の時間間隔が所定値未満となる操作時期が含まれている。図8の例では、このような一の操作時期に対応する特定の操作時期28csと、特定の操作時期28csの前の操作時期28cfと、特定の操作時期28csの次の操作時期として次の操作時期に対応する次の操作時期28crと、を破線で囲っている。図8の例では、次の操作時期28crの表示開始時期には、前の操作時期28cfに設定された表示開始時期と一致する時期が設定されている。図5の例では、第1オブジェクト60aに対応する操作時期が前の操作時期28cfに、第2オブジェクト60bに対応する操作時期が次の操作時期28crに、それぞれ対応する。また、図6の例の第1オブジェクト60aに対応する操作時期が特定の操作時期28csに対応する。次の操作時期28crと、前の操作時期28cf及び、特定の操作時期28csとには、別のオブジェクト60を指示する情報が対応付けられている。
オブジェクト60が表示開始されるプレイヤの指示は、第1プレイヤを指示する場合に“P1”、第2プレイヤを指示する場合に“P2”、とそれぞれ記述される。なお、プレイヤの指示は、表示されるオブジェクト60の色の指示にも該当し、“P1”の場合に青色のオブジェクト60が、“P2”の場合に赤色のオブジェクト60が、それぞれ表示される。
標識情報部28fには、表示するオブジェクト60を指示する情報が“A”等のアルファベットによって記述されている。ゲーム領域52に表示させる1つ目のオブジェクト60に対応するアルファベットとして“A”が、2つめのオブジェクト60に対応するアルファベットとして“B”が、3つめのオブジェクト60に対応するアルファベットとして“C”が、それぞれ用いられる。つまり、表示するオブジェクト60を指示する情報として、ゲーム領域52に表示させるオブジェクト60の数に応じた種類のアルファベットが用いられている。図5〜図7の例では、オブジェクト60若しくは第1オブジェクト60aを指示する場合には“A”、画面に表示される二つ目の第2オブジェクト60bを指示する場合には“B”、三つ目の第3オブジェクト60cを指示する場合には“C”、とそれぞれ記述される。また、オブジェクト60を指示する情報は、各操作時期間の対応関係も示している。具体的には、共通のオブジェクト60を指示する情報が対応付けられている各操作時期間において、ある一つの操作時期に対応するオブジェクト60が到達した位置は、その一つの操作時期に最も近い(或いは、等しい)表示開始時期が設定されている他の操作時期に対応するオブジェクト60の出現位置としての機能を有している。なお、同一の操作時期を指定するレコードが複数存在する場合には、表示開始時期が早い方、又は、シーケンスデータ28の記述されている並びの早い方等、同一の操作時期を指定するレコードのうちいずれか一つを所定の特定条件等により特定することにより、他の操作時期に対応するオブジェクト60(次に出現するオブジェクト60)の出現位置を特定すればよい。また、シーケンスデータ上に分裂元となるオブジェクト60の情報等、各オブジェクト60の到達位置と出現位置とを関連付ける情報が別途記述されていてもよい。
図8の例では、一小節目の四拍目の開始時点(000)に第1プレイヤが基準として用いる第1操作基準部55A上に青色のオブジェクト60が表示され、第1操作基準部55Aから経路Wに沿って、一小節目の四拍目の開始時点から“010”相当だけ経過した時期に第2操作基準部55Bに到達するように移動するといった具合に、表示開始時期、操作時期及び、オブジェクト60が表示開始される操作基準部が指示されている。また、一小節目の四拍目の開始時点から“010”相当だけ経過した時期には、前述のオブジェクト60が到達した反発点R2を出現位置として赤色のオブジェクト60が表示され、当該オブジェクト60が第2基準標識55Bからプレイヤのタッチ操作位置に応じた経路Wに沿って、一小節目の四拍目の開始時点から“016”相当だけ経過した時期に第1操作基準部55Aに到達するように移動する。更に、二小節目の二拍目の開始時点から“024”相当だけ経過した時期には、第2プレイヤが基準として用いる第2操作基準部55B上の直前にオブジェクト60が到達した反発点R2に、前の操作時期28cfに対応する赤色の第1オブジェクト60a及び次の操作時期28crに対応する赤色の第2オブジェクト60bが出現し、第1オブジェクト60aは二小節目の二拍目の開始時点から“030”相当だけ経過した時期に、第2オブジェクト60bは二小節目の二拍目の開始時点から“036”相当だけ経過した時期に、それぞれ第1操作基準部55Aに到達するように経路W上を移動する。なお、図8の例では、第1オブジェクト60aが二小節目の二拍目の開始時点から“030”相当だけ経過した時期に第1操作基準部55Aに到達した後に、その到達位置から二小節目の二拍目の開始時点から“034”相当だけ経過した時期に第2操作基準部55Bに到達するように第1オブジェクト60aに対して指示するレコードが特定の操作時期28csのレコードに相当する。
次に、ゲーム機1にて音楽ゲームが実行される際のゲーム制御部11の処理を説明する。ゲーム制御部11は、ゲームプログラム21を読み込んで音楽ゲームを実行するために必要な初期設定を終えると、プレイヤからのゲーム開始の指示に備えて待機する。ゲーム開始の指示には、例えばゲームでプレイする楽曲、或いは難易度の選択といったゲームで使用するデータを特定する操作が含まれる。それらの指示を受け付ける手順は、公知のゲーム等と同等でよい。
ゲーム開始が指示されると、ゲーム制御部11は、プレイヤが選択した曲に対応する楽曲データ25を読み取って音声出力制御部14に出力することにより、スピーカ8から楽曲の再生を開始させる。これにより、制御ユニット10が楽曲再生手段として機能する。また、ゲーム制御部11は、楽曲の再生に同期して、プレイヤの選択に対応したシーケンスデータ28を読み取って、画像データ27を参照しつつゲーム領域52及び情報領域53の描画に必要な画像データを生成して表示制御部12に出力することにより、モニタ3上にゲーム領域52及び情報領域53を表示させる。更に、音楽ゲームの実行中において、ゲーム制御部11は、ゲーム領域52の表示等に必要な処理として、図9に示すシーケンス処理ルーチン、図10に示す経路決定処理ルーチン、及び、図11に示す操作評価ルーチンのそれぞれを所定の周期で繰り返し実行する。なお、図9及び、図10のルーチンはシーケンス処理部15が、図11の操作評価ルーチンは操作評価部16が、それぞれ担当する。
図9は、シーケンス処理部15が実行するシーケンス処理ルーチンのフローチャートの一例を示している。図9のルーチンが開始されると、ゲーム制御部11のシーケンス処理部15は、まずステップS1にて楽曲上の現在時刻を取得する。例えば、楽曲の再生開始時点を基準として、ゲーム制御部11の内部クロックにて計時が開始され、その内部クロックの値から現在時刻が取得される。続くステップS2において、シーケンス処理部15は、シーケンスデータ28から、ゲーム領域52の表示範囲に相当する時間長に存在する表示開始時期及び、操作時期のデータを取得する。表示範囲は、一例として現在時刻から将来に向かって楽曲の2小節相当の時間範囲に設定される。
次のステップS3では、取得した各操作時期に対応させて表示すべき全てのオブジェクト60の経路Wを決定する。その決定は、一例として図10のルーチンが実行されることにより実現される。図10は、シーケンス処理部15が実行する経路決定処理ルーチンのフローチャートの一例を示している。図10のルーチンが開始されると、シーケンス処理部15は、まずステップS11にてゲーム開始時であるか否かを判断する。このステップS11にて、肯定的判断がされた場合にはステップS20に進み、否定的判断がされた場合にはステップS12に進む。ステップS20では、オブジェクト60を表示すべき経路として、予め設定された初期経路が選択され、ステップS19に進む。一例として、初期経路として第1操作基準部55Aに含まれ、左側からn番目に位置する反発点R1から延びる経路W3が予め設定されている。
一方、ステップS12では、オブジェクト60の表示が表示開始時期としての表示か否かを判断する。ステップS12にて、否定的判断がされた場合、つまり、オブジェクト60の表示が表示開始時期としての表示ではなく既に表示すべき経路が選択されているものと判断された場合には、ステップS21に進む。ステップS21では、表示すべき経路として既に選択されている経路、つまり、現在の経路が選択されて、ステップS19に進む。
一方、ステップS12にて、肯定的判断がされた場合、つまり、オブジェクト60の表示が表示開始時期としての表示であり、表示すべき経路が選択されていないものと判断された場合には、ステップS13に進む。ステップS13では、タッチパネル5の出力信号を参照して、各操作基準部55A、55Bに対してタッチ操作がされたか否かが判断される。ステップS13にて、否定的判断がされた場合にはステップS22に進み、肯定的判断がされた場合にはステップS14に進む。ステップS22では、オブジェクト60が表示されるべき経路として所定の経路が選択されて、ステップS19に進む。ステップS22の所定の経路の選択は、例えば、表示開始されるオブジェクト60と対応するオブジェクト60、つまり、表示開始されるオブジェクト60の出現位置として用いられる各反発点R1、R2に直前に到達したオブジェクト60が表示されていた経路と隣接する経路や、出現位置から到達すべき各操作基準部55A、55Bに向かう最も距離の短い経路が所定の経路として設定されることにより実現される。
一方、ステップS14では、タッチパネル5から出力された信号に基づいて、タッチ操作がされた操作基準部と、そのタッチ操作がされたタイミング(楽曲上の時刻)と、を判別する。続くステップS15では、タッチ操作が行われた操作基準部に関して、シーケンスデータ28に記述された直近の操作時期、つまり、タッチ操作が行われたオブジェクト60に関して、シーケンスデータ28上で対応づけられた時間的に最も接近した操作時期を特定し、その操作時期とタッチ操作が行われた時刻との間の時間のずれ時間を取得する。
次のステップS16において、シーケンス処理部15は、ずれ時間が一定範囲内か否かを判別することにより、各プレイヤの操作が適切か否か判断する。一定範囲は、比較対象の操作時期を中心として前後に所定の時間範囲で設定される。ステップS16にて否定的判断がされた場合には、ステップS22に進み、上述のように、オブジェクト60が表示されるべき経路として所定の経路が選択されて、ステップS19に進む。一方、ステップS16にて肯定的判断がされた場合にはステップS17に進む。
ステップS17では、タッチパネル5から出力された信号に基づいて、各操作基準部55A、55Bのタッチ操作された操作位置とオブジェクト60の位置との間の位置関係を判別する。具体的には、タッチ操作された位置が、出現位置に直近に到達したオブジェクト60の接触領域S、右側領域R、左側領域L及び、それら以外の領域のいずれの領域付近かを判別する。続くステップS18では、ステップS17にて判別された位置関係に応じてオブジェクト60を配置すべき経路を選択する。この経路の選択は、一例として以下のように行われる。まず、右側領域R、左側領域L、或いは接触領域S及びその他の領域Oのいずれかを、各経路W(なお、図5の例の第2左側経路W1及び第2右側経路W5等、オブジェクト60が増加した場合に用いられる経路等がある場合にはそれらの経路は除かれてもよい)に割り当てる。次に、ステップS17の判別結果に基づいて、出現位置から延びる複数の経路Wのうちからタッチ操作がされた位置に割り当てられた経路が選択される。図3の例では、反発点R1において、接触領域S及び、その他の領域Oに直線経路W3が、左側領域Lに第1右側経路W2が、右側領域Rに第1左側経路W4が、それぞれ割り当てられている。そして、オブジェクト60の接触領域S又は、その他の領域O付近がタッチ操作された場合には直線経路W3が、右側領域R付近がタッチ操作された場合には第1左側経路W2が、左側領域L付近がタッチ操作された場合には第1右側経路W4が、それぞれ選択される。なお、図3の例では、第2左側経路W1はオブジェクト60の右側領域R付近がタッチされた場合であって2つのオブジェクト60a、60bが表示されたときの第2オブジェクト60bの経路として、第2右側経路W5はオブジェクト60の左側領域L付近がタッチされた場合であって2つのオブジェクト60a、60bが表示されたときの第2オブジェクト60bの経路として、それぞれ選択されるように予め設定されている。一方、接触領域S又は、その他の領域O付近がタッチ操作された場合には第2オブジェクト60bの経路として第1オブジェクト60aと同じ直線経路W3が選択されるように設定されている。
続くステップS19では、ステップS18、ステップS20、ステップS21及び、ステップS22の各ステップで選択された経路を、オブジェクト60を表示させる経路に決定して、今回のルーチンを終了する。
図9のルーチンに戻り、ステップS4では、シーケンス処理部15は各経路Wに表示すべき全てのオブジェクト60のゲーム領域52内における座標を演算する。その演算は、一例として以下のように行われる。まずステップS3の処理結果に基づいて、表示範囲に含まれている各オブジェクト60を表示すべき経路Wを判別する。次に、各オブジェクト60に対応した移動方向(到達すべき各操作基準部55A、55B)及び、各操作時期と現在時刻との時間差に応じて、各操作基準部55A、55Bからの時間軸方向(つまり、オブジェクト60の移動方向)における各オブジェクト60の位置を判別する。これにより、各オブジェクト60を配置すべき経路Wと、その経路W上にて各オブジェクト60を各操作基準部55A、55Bから時間軸に沿って配置するために必要な各オブジェクト60の座標と、を取得することができる。
次のステップS5において、シーケンス処理部15は、ステップS4で演算されたオブジェクト60の座標に基づいて、ゲーム領域52を描画するために必要な画像データを生成する。具体的には、演算された座標に各オブジェクト60が配置されるように画像データを生成する。オブジェクト60等の画像は、画像データ27から取得すればよい。続くステップS6にて、シーケンス処理部15は表示制御部12に画像データを出力する。それにより、モニタ3にゲーム領域52が表示される。ステップS6の処理を終えると、シーケンス処理部15は今回のシーケンス処理ルーチンを終了する。以上の処理が繰り返し実行されることにより、オブジェクト60がシーケンスデータ28に記述された表示開始時期に指定された各操作基準部55A、55B上に表示され、オブジェクト60がシーケンスデータ28に記述された操作時期に指定された各操作基準部55A、55Bに到達するように2つの操作基準部55A、55B間を移動する。
次に、図11の操作評価ルーチンを説明する。図11の操作評価ルーチンが開始されると、操作評価部16は、まずステップS31で、タッチパネル5の出力信号を参照して、オブジェクト60に対するタッチ操作の有無を判別する。このとき、各操作基準部55A、55B以外の位置がタッチされた場合には、タッチ操作なしと判断される。操作評価部16は、タッチ操作がなければ今回のルーチンを終了し、タッチ操作があればステップS32へ進む。ステップS32において、操作評価部16は、タッチパネル5から出力された位置信号に基づいて、そのタッチ操作が行われたタイミング(楽曲上の時刻)を判別する。続くステップS33にて、操作評価部16はタッチ操作が行われた操作基準部に関して、シーケンスデータ28に記述された直近の操作時期、つまりはタッチ操作が行われた操作基準部に関して、シーケンスデータ28上で時間的に最も接近した操作時期を特定し、その操作時期とタッチ操作が行われた時刻との間のずれ時間を取得する。
次のステップS34において、操作評価部16は、ずれ時間が評価範囲内か否かを判別することにより、プレイヤの操作が適切か否か判断する。評価範囲は、比較対象の操作時期を中心として前後に所定の時間範囲で設定される。一例として、操作時期を中心として複数段のレベルが設定され、それらのレベルが設定されている時間範囲が評価範囲として扱われる。ステップS34にてずれ時間が評価範囲外の場合、操作評価部16は今回のルーチンを終了し、評価範囲内の場合にはステップS35に進む。ステップS36にて、操作評価部16は、各操作基準部55A、55Bのタッチ操作が行われた操作位置と、そのタッチ操作が行われた操作基準部に関して、シーケンスデータ28上で時間的に最も接近した操作時期を特定し、その操作時期を指示するオブジェクト60の到達位置との間の位置のずれを取得する。
続くステップS36にて、操作評価部16は、ステップS34で取得したずれ時間及びステップS35で取得した位置のずれに基づいてプレイヤのタッチ操作に対する評価を決定する。これらの評価は、一例として、以下のように行われる。まず、ずれ時間に関しては、タッチ操作の時期が時間範囲内に設定された複数のレベルのいずれに属するかを判別することにより実現される。複数のレベルは、時間範囲を一定期間毎に区分するように設定されており、その各区分の操作時期に近い区分に属するほど高く評価される。また、ずれ位置に関しては、オブジェクト60の中心位置とタッチ操作位置とを対比することにより実現される。ずれ位置の評価は、例えば、オブジェクト60の直径の倍までの領域は“GOOD”、それ以外の領域は“MISS”と評価する。或いは、オブジェクト60の外周より内側を最高の評価として外周から一定距離離れる毎に評価が下がるように一定の評価範囲が設定され、タッチ操作の位置がこの評価範囲のいずれの位置に属するかによって判断されてもよい。この場合、ゲームの難易度が向上する。その後、操作評価部16はステップS37に進み、評価結果がゲーム領域52及び情報領域53の少なくともいずれか一方に表示されるように、表示制御部12への出力を制御する。ステップS37の処理を完了すると、操作評価部16は今回のルーチンを終了する。なお、図11の例のオブジェクトの位置とタッチ操作の位置との間のずれを取得するステップは、操作基準部の直近の操作時期とタッチ操作が行われた時刻との間のずれを取得するステップよりも前に実行されてもよい。また、図11の例では、ずれ位置の評価は、領域に応じて“GOOD”又は“MISS”と評価されるように構成されているが、ずれ位置が一定の範囲外の場合には、ステップS34の処理と同様に、以降の処理をスキップし、その回のルーチンを終了するように構成されていてもよい。この場合、例えば、第1操作基準部55Aに対しての操作が要求されているときに、第2操作基準部55Bに対して操作が実行される等の一定の範囲外の不適切な位置への操作を評価対象外とすることができる。
以上に説明したように、この形態によれば、タッチ操作により次の操作基準部に向かうオブジェクト60の移動経路及び、移動速度を選択することができる。これにより、一方のプレイヤは自己の操作により、他方のプレイヤのゲームの難易度を多様に変化させることができるので、ゲームの興趣性を向上させることができる。
更に、この形態によれば、シーケンスデータ28は、特定の操作時期28csとの間の時間間隔が所定値未満の次の操作時期28crに、前の操作時期28cfの表示開始時期と一致する表示開始時期が設定された表示開示情報部28dを含んでいる。このため、次の操作時期28crに対応する第2オブジェクト60bを前の操作時期28cfに対応する第1オブジェクト60aと同時に表示開始することができる。これにより、各操作時期間の時間間隔が短い場合には、前の操作時期28cfに対応する第1オブジェクト60aの表示開始時期から2つのオブジェクト60a、60bを表示させることができるので、1つのオブジェクト60のみを用いる場合に比べて、次の操作時期28crに対応するオブジェクト60の移動時間を延長させることができる。これにより、各操作時期間の時間間隔が短い場合でも操作指示標識の移動速度が速くなり過ぎることを抑制することができる。また、第2オブジェクト60bの表示開始時期が前の操作時期28cfに対応する第1オブジェクト60aの表示開始時期と一致しているので、第2オブジェクト60bの自然な出現を演出することができる。
以上の形態において、ゲーム機1の外部記憶装置20が楽曲データ記憶手段、シーケンスデータ記憶手段、として機能する。また、制御ユニット10が、シーケンス処理部15に図9及び、図10のルーチンを実行させることによりゲーム領域提示手段及び、標識表示制御手段として機能する。さらに、制御ユニット10が、評価操作部16に図11のルーチンを実行させることにより、評価手段として機能する。
(第2の形態)
第1の形態では、複数のプレイヤ若しくはゲーム機自体が他のプレイヤとして機能することにより、複数のプレイヤにてプレイされるゲームが実行されているが、このような形態に限定されるものではない。本発明の第2の形態を例示して、以下にて、第1の形態と共通の構成については説明を省略し、第1の形態との主な相違点を説明する。本発明の第2の形態に係るゲームシステムとして、例えば、ゲーム機1にて実行されるゲームは、第1操作基準部55Aの一つのみが操作部と対応するように設定され、第2操作基準部55Bは単に操作指示標識を反発させるための壁として機能するように配置されているものが実現されてもよい。そして、ゲーム画面には第1操作基準部55Aのみ設けられ、操作指示標識がゲーム領域の境界に設けられた基準部としての壁で反発しつつ、シーケンスデータに記述された時期に第1操作基準部55Aのみに、或いは、第1操作基準部55A及び第1操作基準部55Aと対向する位置に配置された壁(又はその他の壁等)に到達するように移動するゲームが実行されてもよい。この場合、ゲームの難易度を多様に変化させることができるゲームであって、一人プレイ用のゲームを実現することができる。また、この場合、第1操作基準部55A及び、第1操作基準部55Aと対向する位置に配置された壁等が本発明の複数の基準部として機能する。また、シーケンスデータに記述される時期として操作時期に替えて基準時期が用いられ、この基準時期のうち第1操作基準部55Aに到達する時期が操作時期として機能する。
本発明は上述の各形態に限定されず、適宜の形態にて実施することができる。上述の各形態では、シーケンスデータとして、オブジェクト60毎に表示開示時期、操作時期及び、各操作基準部55A、55Bを指示する情報が対応づけられたシーケンスデータ28が予め用意されているが、このようなシーケンスデータ28が予め用意されている形態に限定されるものではない。例えば、予め用意された各操作基準部等の区別のない操作時期のみ指示された基礎シーケンスデータに基づいて、オブジェクト毎に表示開示時期、操作時期及び、各操作基準部を指示する情報が対応づけられた付加シーケンスデータを生成するデータ生成手段を更に備えていてもよい。そして、図9〜11の各ルーチンでは、この付加シーケンスデータが用いられてもよい。また、この場合、制御ユニット10がデータ生成手段として機能するように構成されていてもよい。図12は操作時期のみが指示された基礎シーケンスデータの一例を示す図である。基礎シーケンスデータ80は、時間経過(楽曲の進行)を示す縦軸81を含んでいる。縦軸81は、上方に向かうほど経過した時間が多いことを示している。また、縦軸81には、一定時間毎に設定された複数の横線83が設けられている。図12に示すように、基礎シーケンスデータ80には、楽曲の進行に応じた適宜な時期にブロック85が配置されている。各ブロック85は、操作時期を示している。
一方、図13は、制御ユニット10がデータ生成手段として機能する場合に、制御ユニット10が実行する付加シーケンスデータを生成するためのデータ生成処理ルーチンの一例を示す図である。図13のデータ生成処理ルーチンが開始されると、制御ユニット10は、まずステップS41にて基礎シーケンスデータ80から表示範囲内に含まれる操作時期を取得する。続くステップS42では、基礎シーケンスデータ80にて指示されている各操作時期を操作基準部55A、55B毎に分類し、各操作時期が第1操作基準部55Aと第2操作基準部55Bとに交互に到来するように各操作時期を振り分ける。具体的には、基礎シーケンスデータに各操作基準部55A、55Bを指示する情報を追加し、各操作時期が各操作基準部55A、55Bに交互に到来するように、各操作時期に各操作基準部55A、55Bの情報を対応づける。図14は、各操作時期が各操作基準部55A、55Bに振り分けられた振り分け後のシーケンスデータ80a(以下で、振り分けデータと呼ぶことがある)の一例を示す図である。振り分けデータ80aには、時間の経過を示す縦軸81に対して横軸87が設定され、横軸87の中央には縦軸81と並行に延びる太線88が設けられている。太線88は、横軸87を操作基準部毎に区分している。そして、太線88の左側は第1操作基準部55Aを指示する第1領域に、右側は第2操作基準部55Bを指示する第2領域に、それぞれ使用される。図14に示すように、振り分けデータ80aでは、時間経過とともに各ブロック85が各操作基準部55A、55Bの領域に交互に配置されている。
図13に戻り、ステップS43では、各操作時期のそれぞれに対して各操作時期に対応するオブジェクト60の表示開始時期を指示する情報を設定する。表示開始時期は、各操作時期のそれぞれの直前の操作時期に基づいて設定される。具体的には、一の操作時期に対する表示開始時期として、一の操作時期の直前の操作時期を特定し、この直前の操作時期に対応する時期が設定される。図15は、振り分けデータ80aに表示開始時期の情報が設定された後のシーケンスデータ80b(以下で表示開始時期データと呼ぶことがある)の一例を示す図である。図15に示すように、表示開始時期データ80bでは、振り分けデータ80aの操作時期に配置されていた各ブロック85の一端85aが各ブロック85の直前に配置されたブロック85の他端85bに対応する位置まで延長されている。つまり、表示開始時期データ80bでは、各ブロック85の一端85aが表示開始時期を指示する情報として、他端85bが操作時期を指示する情報として、それぞれ設定されている。
図13に戻り、ステップS44では、各操作時期間の時間間隔を算出し、各操作時期間の時間間隔が所定値以上か否かを判断する。具体的には、一の操作時期とその次の操作時期との間の時間間隔を算出して、その時間間隔が各プレイヤに適切に操作時期を案内可能な所定値以上か否かを判断する。ステップS44にて、肯定的判断がされた場合、つまり、表示範囲内に含まれる全てのオブジェクト60間の時間間隔が所定値以上と判断された場合には、ステップS45に進む。
一方、ステップS44にて、否定的判断がされた場合、つまり、時間間隔が所定値に満たない操作時期が含まれると判断された場合には、ステップS46に進む。ステップS46では、時間間隔が所定値に満たないと判断された一の操作時期と次の操作時期とを特定し、特定した一の操作時期に対応するオブジェクト60とは別のオブジェクト60を指示する情報を、特定した次の操作時期に付加する。続くステップS47では、ステップS46で特定した次の操作時期に対応する表示開示時期が、特定した一の操作時期の前の操作時期に設定された表示開始時期と一致するように、特定した次の操作時期に設定された表示開始時期の情報を変更する。
図16は、表示開始時期データ80bにオブジェクト60を指示する情報が付加され、設定されていた表示開始時期の情報が変更された後のシーケンスデータ(以下で調整データと呼ぶことがある)80cの一例を示す図である。図16に示すように、調整データ80cの横軸87には、複数のレーンRが設けられている。各レーンRは、オブジェクト60を指示する情報として用いられる。また、複数のレーンRは、太線88を境に第1操作基準部55Aの領域に含まれる第1領域の複数のレーンRaと第2操作基準部55Bの領域に含まれる第2領域の複数のレーンRbとに分けられる。第1領域の各レーンRaと第2領域の各レーンRbとの間には、オブジェクト60を共通項とする対応関係が存在する。具体的には、第1プレイヤの領域の左から2番目のレーンRa2が1つ目のオブジェクト60の表示を指示する情報として、左から4番目のレーンRa4が2つめのオブジェクト60の表示を指示する情報として、左から6番目のレーンRa6が3つめのオブジェクト60の表示を指示する情報として、それぞれ用いられる。そして、第1プレイヤの領域の左から2番目のレーンRa2と第2プレイヤの領域の左から1番目のレーンRb1とが、第1プレイヤの左から4番目のレーンRa4と第2プレイヤの左から3番目のレーンRb3とが、第1プレイヤの左から6番目のレーンRa6と第2プレイヤの左から5番目のレーンRb5とが、それぞれ対応関係を有している。つまり、図5〜図7の例では、第1プレイヤの領域の左から2番目のレーンRa2及び第2プレイヤの領域の左から1番目のレーンRb1がオブジェクト60又は第1オブジェクト60aの表示を、第1プレイヤの左から4番目のレーンRa4及び第2プレイヤの左から3番目のレーンR32が第2オブジェクト60bの表示を、第1プレイヤの左から6番目のレーンRa6及び第2プレイヤの左から5番目のレーンRb5が第3オブジェクト60cの表示を、それぞれ指示している。
図15及び図16の例では、一の操作時期とその一の操作時期に対する次の操作時期との間の時間間隔が所定値未満となる操作時期のうち次の操作時期に対応する次のブロック85Rを太線で囲っている。図15に示す表示開始時期データ80bと、図16に示す調整データ80cと、を比較すると、表示開始時期データ80bの太線で囲った各次のブロック85R1、85R2が調整データ80cでは、他のレーンに移動している。具体的には、時系列の手前から順に、図15の第1領域の2つの次のブロック85R1、85SR2が、図16では第6レーンRa6と第4レーンRa4とにそれぞれ移動している。また、図15の時系列の手前から順に、第2領域の2つの次のブロック85R1、85R2が、図16では第3レーンRb3と第5レーンRb5とにそれぞれ移動している。
また、表示開始時期データ80bでは、各次のブロック85R1、85R2の一端85Raの位置も変化している。具体的には、表示開始時期データ80bでは、第1領域の次のブロック85R1の一端85Raの位置が、第2領域の次のブロック85R1の前に位置する前のブロック85F1の他端85Fbの位置に対応している。同様に、第2領域の次のブロック85R1の一端85Raの位置が第1領域の次のブロック85R1の他端85Rbの位置に、第2領域の次のブロック85R2の一端85Raが第1領域の次のブロック85R2の前に位置する前のブロック85F2の他端85Fbの位置に、第1領域の次のブロック85R2の一端85Raの位置が第2領域の次のブロック85R2の他端85Rbの位置に、それぞれ対応している(各前のブロック85F1、85F2を区別しないときには、以下で前のブロック85Fと表示する。)。つまり、表示開始時期データ80bでは、各次のブロック85Rの一端85Raの位置が時系列で直前に位置する各ブロック85の他端85bの位置に対応している。このため、各次のブロック85Rは一端85Raの表示開始時期を示す位置から他端85Rbの操作時期を示す位置までの長さが短い。
一方、調整データ80cでは、次のブロック85R1、85R2のそれぞれの一端85Raが、各次のブロック85R1、85R2のそれぞれと同じ領域内であって直前に位置する各前のブロック85F1、85F2、つまり時系列で二つ前に位置する各前のブロック85F1、85F2の一端85Faにそれぞれ対応するように、時間を遡る方向に延びている。このため、各次のブロック85R1、85R2は一端85Raの表示開始時期を示す位置から他端85Rbの操作時期を示す位置までの長さが表示開始時期データ80bに比べて長くなっている。結果として、調整データ80cでは、各次のブロック85R1、85R2と同じ領域内の時系列で一つ前に位置する各前のブロック85F1、85F2に対応するオブジェクト60の表示開始時期に、各前のブロック85F1、85F2とは異なるオブジェクト60を別途表示させるように指示している。つまり、調整データ80cでは、前のブロック85Fに対応する表示開始時期に、前のブロック85Fに対応するオブジェクト60及次のブロック85Rに対応するオブジェクト60の2つのオブジェクト60を表示させ、各オブジェクト60を、各ブロック85F、85Rが指示する操作時期に、各ブロック85F、85Rに対応する各操作基準部55A、55Bに到達させるように指示している。なお、次のブロック85Rに対応する操作時期がシーケンスデータ28の次の操作時期28crに、前のブロック85Fに対応する操作時期がシーケンスデータ28の前の操作時期28cfに、それぞれ相当する。また、第2領域の次のブロック85R1の前のブロック85F1に対応する操作時期は、第1領域の次のブロック85R1に対応する特定の操作時期28csとしても機能している。同様に、第1領域の次のブロック85R1に対応する操作時期は第2領域の次のブロック85R1に、第1領域の次のブロック85R2の前のブロック85F2に対応する操作時期は第2領域の次のブロック85R2に、第2領域の次のブロック85R2に対応する操作時期は第1領域の次のブロック85R2に、それぞれ対応する特定の操作時期28csとしても機能している。
図13に戻り、ステップS45では、ステップS43の結果及び、ステップS47の結果に基づいて、表示開始時期データ80b或いは、調整データ80cを付加シーケンスデータとして生成して、今回のルーチンを終了する。なお、上述の例では、表示範囲毎に付加シーケンスデータが生成されているが、1度の処理にて基礎シーケンスデータ80の全部についてデータ生成処理ルーチンを実行する形態でもよい。
上述の各形態では、制御ユニット10がデータ生成手段として機能する形態を説明しているが、このような形態に限定されるものではない。例えば、ゲーム機1とは別のコンピュータを用意して、図13のルーチンを実行させることによりデータ生成手段として機能させてもよい。このコンピュータは、基礎シーケンスデータ80を記憶する手段を備え、図13のルーチンを実行可能に構成されていればよい。
上述の各形態では、オブジェクト60毎に表示開示時期、操作時期及び、各操作基準部55A、55Bを指示する情報が数値、或いは、アルファベットにて記述されているシーケンスデータ28が外部記憶装置20に記憶されているが、外部記憶装置20に記憶されるシーケンスデータは、このような形態に限定されるものではない。例えば、シーケンスデータの第1の変形例として、別途生成された上述の調整データ80cが外部記憶装置20に記憶されていてもよい。なお、図16の例では、調整データ80cには、2つ目のオブジェクト60の消滅を演出するため、通常のブロック85よりも短く設定された所定の大きさの特殊ブロック87が設けられている。この特殊ブロック87はそれぞれ2つ目又は3つ目のオブジェクト60の操作時期に対応して設けられており、操作時期における対象のオブジェクト60の消滅の演出をそれぞれ指示しているが、省略されてもよい。また、例えば、シーケンスデータの第2の変形例として、図17に示すようなシーケンスデータが外部記憶装置20に記憶されていてもよい。
図17は、シーケンスデータの第2の変形例を模式的に示す図である。図17に示すシーケンスデータ90の縦軸91は時間経過(楽曲の進行)を、中央の太線93は各操作基準部55A、55Bの指示の境界を、それぞれ示している。縦軸91は、上方に向かうほど経過した時間が多いことを示している。そして、太線93の左側が第1操作基準部55Aを示す領域として、右側が第2操作基準部55Bを示す領域として、それぞれ使用されている。また、縦軸91には、一定時間毎に設定された複数の横線95が設けられている。シーケンスデータ90には、操作時期を指示する複数のブロック97が含まれている。各ブロック97は、楽曲の進行に合わせて各操作指示部の領域の適宜な時期に配置されている。また、各ブロック97は、接続線98によって相互に接続されている。接続線98は、各操作時期を指示するためのオブジェクト60の対応関係を指示している。具体的には、一のブロック97から次のブロック97に向かって一つの接続線98のみが延びている場合には、一のブロック97に対応する各操作基準部55A、55Bから次のブロック97に対応する各操作基準部55A、55Bまでの移動に一つのオブジェクト60を表示させることを指示している。一方、一のブロック97から次の2つのブロック97に向かって二つの接続線98が延びている場合には、一のブロック97に対応する各操作基準部55A、55Bから次の2つのブロック97に対応する各操作基準部55A、55Bに向かって、次の2つのブロック97が指示する2つの操作時期を指示すべく2つのオブジェクトをそれぞれ表示させることを指示している。また、接続線98は、各オブジェクト60に対応するオブジェクト60の連続性も示している。つまり、時系列で接続線98の起点となるブロック97に対応するオブジェクト60の到達位置が、接続線98の終点となるブロック97に対応するオブジェクト60の移動の出発位置として機能する関係を示している。このため、接続線98の起点とならないブロック97に対応するオブジェクト60は、操作時期の到来とともにゲーム画面から消滅することを示している。この変形例では、接続線98の起点が表示開始時期を指示する情報として機能する。また、1つのブロック97から延びる2つの接続線98の終点のうち先に操作時期が到来する一方のブロック97Fがシーケンスデータ28における前の操作時期28cfに、後に操作時期が到来する他方のブロック97Rが次の操作時期28crに、それぞれ相当する。これら2つのブロック97F、97Rの表示開始時期、つまり接続線98の起点は一致している。そして、一方のブロック97F及び他方のブロック97Rと中央の太線93を挟んで領域を異にしつつ、それらの各ブロック97F、97Rの間の操作時期を指示すように配置される特定のブロック97Sが特定の操作時期28csに相当する。なお、一のブロック97から延びる接続線98は、1本或いは、2本に限定されるものではなく、必要に応じて3本、4本と複数設けられていてもよい。これらの変形例によっても本発明を実現可能である。
図17の例では、一のブロック97から3本の接続線98が延びている例を太線100で囲って示している。図17の太線100で囲われた例では、一の操作時期を示す特定のブロック97SBの前のブロック97FB及び、特定のブロック97Sの次のブロック97Rのいずれもが所定値よりも短い場合を示している。そして、この例では、これら3つのブロック97RB、97SB、97FBにそれぞれ対応するオブジェクト60の表示開始時期が前のブロック97FBと一致するように接続線98が設けられている。このため、図17のデータでは、前のブロック97FBに対応するオブジェクト60の表示開始時期において、このオブジェクト60が表示開始される位置に、このオブジェクト60に加えて、特定のブロック97SB及び次のブロック97RBにそれぞれ対応する2つのオブジェクト60も表示される。つまり、同時に同じ場所に3つのオブジェクト60が表示され、次のブロック97RB、特定のブロック97SB及び、前のブロック97FBのそれぞれに対応する操作時期を指示すべく移動表示させるような指示がされている。このように、各操作時期間の時間間隔が所定値未満とならないように、それぞれの操作時期に対応する操作指示標識の表示開始時期を延長可能な限りにおいて、表示されるオブジェクト60の数及び、各オブジェクト60の表示開始時期は上述の各形態に限定されものではない。
また、上述の各形態では、1つの各反発点R1、R2から延びる経路Wが5つの場合を例示しているが、各反発点から延びる経路の数を限定するものではない。従って、各反発点から全方向に延びる多数の経路を設定可能である。また、各操作基準部55A、55Bに含まれる各反発点R1、R2も多数設けられてよい。つまり、複数の経路は、操作指示標識が各操作基準部の全位置間を全方向に向かって移動可能なように設けられていてもよい。さらに、ゲーム領域52の両側壁52R、52Lとの跳ね返り点及び、跳ね返り点からの経路も多数設けられていてもよい。これにより、跳ね返り点までの経路及び、跳ね返り後の経路を多数設定することができる。また、上述の各形態では、オブジェクト60が4つの領域に分けられ、タッチ操作の位置とオブジェクト60の4つの領域とを対比して、移動経路が決定されているが、このような形態に限定されるものではない。操作指示標識はゲーム領域に設けられた多数の経路に対応して多数の領域に分けられていてもよい。これにより、タッチ操作に応じて操作指示標識を各操作基準部間の自由な経路にて移動させることができる。また、操作指示標識が複数の領域に分けられる形態に限定されるものでもなく、例えば、操作指示標識の中心位置等の固定位置とタッチ操作位置との対比により操作指示標識の移動経路が決定されてもよい。また、操作指示標識の移動経路が多数設けられている場合、操作指示標識の移動速度が操作指示に適さない程早くならないように、タッチ操作に応じた移動経路の変化を操作指示標識の移動速度が一定範囲内に収まる経路に制限する制限手段を更に備えていてもよい。この場合、制御ユニット10が制限手段として機能するように構成されていてもよい。制御ユニット10が制限手段として機能するように構成されている場合、例えば、図10に示す経路決定処理ルーチンのステップS18にて、経路の選択が操作時期と移動距離との関係から移動速度が一定範囲内となる所定の経路に制限されるように実行されればよい。また、別途、経路決定処理にて決定された経路を補正する経路補正処理ルーチンを実行するように制御ユニット10が構成されていてもよい。
図18は、制御ユニット10が制限手段として機能する場合に、制御ユニット10が実行する経路補正処理ルーチンの一例を示す図である。図18の経路補正処理は、例えば、図9のシーケンス処理ルーチンのステップS3とステップS4の間、つまり、ステップS3の経路決定処理にて経路が決定された後に実行されればよい。図18のルーチンが開始されると、まずステップS51において、制御ユニット10は、決定された経路と、対象のオブジェクト60にて指示すべき操作時期と、を取得し、取得した経路の距離と操作時期とからオブジェクト60の移動速度を算出する。続くステップS52では、ステップS51で算出した移動速度が一定範囲内か否かを判断する。ステップS52にて、肯定的判断がされた場合には、以降の処理をスキップして今回のルーチンを終了する。一方、ステップS52にて、否定的判断がされた場合には、ステップS53に進む。ステップS53では、決定された経路をオブジェクト60の移動速度が一定範囲内に収まる経路に補正して今回のルーチンを終了する。また、経路補正処理にて経路が補正された場合には、図9のステップS4以降では、図9のルーチンが経路補正処理にて補正された経路を用いるように構成されていればよい。
上述の各形態では、タッチ操作の位置とオブジェクト60の位置との間の位置関係に応じて、オブジェクト60が次の操作基準部に向かうための移動経路が決定されているが、移動経路の決定は、このような位置関係に応じたものに限定されない。例えば、移動経路は、タッチ操作の位置が連続して変化するような方向を指定する操作に応じて決定されてもよいし、移動速度はこのような連続的変化の変化速度に応じて決定されてもよい。更に、オブジェクト60の移動経路は、操作基準部へのタッチ操作とともに、オブジェクトに対して所定の移動方向及び、所定の速度を指定するような特定の操作が実行された場合には、この特定の操作に応じた特定の移動経路をオブジェクトが移動するように構成されていてもよい。このような特定の操作が実行された場合にオブジェクト60を特定の経路を移動させる構成として、例えば、図19のルーチンをシーケンス処理部15が実行することにより実現可能である。
図19は特定経路補正ルーチンのフローチャートの一例を示す図である。図19のルーチンは、図9のシーケンス処理ルーチンのステップS3とステップS4の間、つまり、ステップS3の経路決定処理にて経路が決定された後に実行されればよい。図19のルーチンが開始されると、シーケンス処理部15は、ステップS61にて、特定の操作が実行されたか否かを判断する。この判断は一例として次のように行われる。まず、タッチパネル5からの信号を参照して、タッチ操作の位置の連続的変化を判別する。タッチ操作の位置が連続的に変化していない場合には、特定操作は実行されていないと判断する。タッチ操作の位置が連続的に変化している場合には、その連続的変化の方向と速度を算出する。そして、算出した変化の方向を所定の方向と、算出した速度を所定の速度と、それぞれ比較することにより、特定の操作が実行されたか否かを判断する。ステップS61にて、特定の操作が実行されていないと判断した場合には、シーケンス処理部15は以降の処理をスキップして今回のルーチンを終了する。
一方、ステップS61にて、特定の操作が実行されたと判断した場合には、シーケンス処理部15は、ステップS62に進む。ステップS62にて、シーケンス処理部15は、ステップS3にて決定された経路を特定の経路に補正して、今回のルーチンを終了する。図9のステップS4以降にて、図19の処理結果を利用することにより、特定の操作が実行された場合にオブジェクト60を特定の経路を移動させることができる。
或いは、特定の操作が実行された場合にオブジェクト60を特定の経路を移動させる構成として、例えば、図10のルーチンに替えて、図20のルーチンが実行されてもよい。図20は、特定の操作の有無の判断を行う場合の経路決定処理ルーチンの一例を示す図である。図10のルーチンと、図20のルーチンとを比較すると、図20のルーチンには、図10のルーチンのステップS14の前にステップS23の処理が追加されている。図20のルーチンを実行する場合、シーケンス処理部15は、ステップS13の処理の後、ステップS23に進み、ステップS23にて特定の操作が実行されたか否かを判断する。この判断は、上述の図19のルーチンのステップS61と同様に構成されていてよい。
ステップS23にて、否定的判断をした場合、シーケンス処理部15はステップS14に進む。以降の処理は図10の場合と同様に構成されていてよい。一方、ステップS23にて、肯定的判断をした場合、シーケンス処理部15はステップS24に進む。ステップS24にて、シーケンス処理部15は、オブジェクト60の移動経路として、特定の経路を選択してステップS19に進む。次のステップ19の処理は図10と同様に構成されていてよい。この場合にも特定の操作に対応させて、オブジェクト60の移動経路を特定の経路に決定することができる。
なお、上述のオブジェクトに対して所定の移動方向及び、所定の速度を指定するような特定の操作として、様々な形態が採用可能である。例えば、操作基準部に向かって移動してきたオブジェクト60を操作基準部にてタッチ操作し(瞬間的にホールド状態となる)、その状態でオブジェクト60を所定の方向に弾くように押し出す(タッチ操作したままタッチ操作の位置を連続的に変化させる)操作を採用してもよい。また、特定操作として、操作基準部の手前をタッチ操作し、その位置からタッチ操作した状態で操作基準部のオブジェクト60に向かって操作基準部とオブジェクト60とが一致するタイミングでタッチ操作の位置とボールとが重なるように、タッチ操作の位置をスライド移動させるスマッシュ操作を採用してもよい。また、或いは、特定操作として、各操作基準部55A、55Bに対するタッチ操作について、タッチ操作の開始から終了まで(プレイヤの指等の接触から接触の終了まで)の時間を算出し、所定の方向を指示する情報としてタッチ操作の位置とオブジェクト60の位置との間の位置関係(例えば、4つの領域S、L、R、Oのいずれの領域付近がタッチ操作されたか)を、所定の速度を指示する情報として算出したタッチ操作の時間を利用してもよい。この場合、例えば、タッチ操作の時間が短いほど速い速度が指定されたとして、タッチ操作の時間が一定よりも短いか否かを判別することにより、所定の速度の指定がされたか否かの判断が可能である。これらのいずれの形態においてもオブジェクト60に対する方向及び速度の指示の判別が可能である。
また、上述の特定の経路として、例えば、オブジェクト60の移動速度が一定値以上になるような所定距離以上の経路が用いられてもよい。図21は、特定の操作がされた場合の特定の経路の一例を模式的に示す図である。図21の矢印Aは操作方向を示している。図21の例では、オブジェクト60の第1操作基準部55Aへの到達に合わせてオブジェクト60の到達位置をタッチ操作するとともに、タッチ操作した状態のまま操作位置が矢印A方向に所定の速度で変化した場合を示している。この場合、所定の方向に速度を指定する特定の操作が実行されたと判断され、特定の経路として、ゲーム領域52の長手方向に延びる両側壁52L、52Rで複数回跳ね返りつつ反対側の第2操作基準部55Bに向かう所定距離以上の経路WSをオブジェクト60は移動する。これにより、例えば、オブジェクト60を高速で押し出すようなスマッシュ操作を判別して、この操作に応じてオブジェクト60の移動速度を一定値以上にすることができる。この場合、相手プレイヤに向かってオブジェクトを意図的に高速で移動させるオプションを用意することができるので、ゲームの選択肢が広がり、ゲームの興趣性を向上させることができる。
また、上述の各形態では、オブジェクト60の移動経路がタッチ操作に応じて変化しているが、このようなプレイヤの操作に応じて移動経路が変化する構成に限定されるものではない。例えば、ゲームの展開や演出等により移動経路が変化するように構成されていてもよい。つまり、オブジェクトの移動経路が操作部への操作、ゲームの展開や演出といった所定の条件で変化するように構成されていればよい。ゲームの演出としてオブジェクト60の移動経路が変化する一例として、オブジェクト60の移動経路が、一の操作時期とその次の操作時期との間の時間間隔に応じて決定されるように構成されていてもよい。この場合、上述の特定の操作の有無の判別に替えて一の操作時期とその次の操作時期との間の時間間隔が一定値以上か否かを判断するとともに、特定の操作が行われた場合に選択される特定の経路に替えて移動距離が一定距離以上となる経路を移動経路として選択するように構成されていればよい。一定値以上として、例えば、一の操作時期とその次の操作時期との間の時間間隔が単調な印象を与えるような一定値を適用することにより、このような時間間隔においてオブジェクト60を一定値以上の速度で移動させることができる。これにより、操作間隔が長くなることによってゲームの展開が単調になることを抑制することができる。
更に、一定距離以上となる経路として、一定間隔毎に移動方向が変化する経路が用いられてもよい。図22は、オブジェクト60の移動距離が一定距離以上となる経路の一例を模式的に示す図である。図22の例では、一定距離以上となる経路として、音楽のリズムに対応した時期にゲーム領域52の長手方向に延びる両側壁52L、52Rで跳ね返りつつ反対側の第2操作基準部55Bに向かう経路WRが用いられている。また、図22の例では、音楽のリズムとして、音楽の拍数が用いられており、ゲーム領域52の右側の側壁52Rで2拍目、4拍目、左側の側壁52Lで3拍目に跳ね返った後に、第2操作基準部55Bに到達する。ゲーム領域52の両側壁52L、52Rとの各跳ね返り点は、一の操作時期と次の操作時期との間に存在する拍数に基づいて、跳ね返り回数を算出し、一定距離以上を確保しつつ算出された回数跳ね返ることができる点を算出して決定する。そして、一定距離以上の経路として、この算出された跳ね返り点を結ぶ経路が選択される。これにより、一定値以上の速度で移動するとともに、音楽の拍に合わせた跳ね返りを演出することができるので、よりゲームの展開が単調になることを抑制することができる。なお、前後の操作時期間の間隔及び、音楽によって、拍に合わせた跳ね返りを設けると移動速度が速くなり過ぎる場合には、拍に合わせた跳ね返りの演出は省略されてもよい。
上述の各形態では、操作指示標識が移動する経路は各操作基準部間に設けられているが、このような形態に限定されるものではない。例えば、各経路は各操作基準部を超えて、ゲーム領域の両端まで延びていてもよい。この場合、例えば、各操作指示標識はシーケンスデータに記述された操作時期に各操作基準部へ到達するように移動するとともに、操作基準部に到達した際に操作部への適切な操作がされない場合には、操作基準部を超えてゲーム領域の端部にぶつかるまで操作指示標識を移動させることができる。この場合、ゲーム領域の端部にも反発点が設けられ、ゲーム領域の端部の操作指示標識の到達した位置が次の操作指示標識の移動の出現位置として機能すればよい。また、上述の各形態では、オブジェクト60は到達した到達位置で消滅するとともに、その到達位置が共通のオブジェクト60が指示されている操作時期に対応するオブジェクト60の出現位置として機能することにより、あたかも各操作基準部55A、55B間で反発しているようにオブジェクト60が移動しているが、オブジェクト60の移動はこのような形態に限定されるものではない。例えば、操作指示標識は到達した反発点で到達毎に消滅するものではなく、そのまま共通のオブジェクト60を利用して反発点で実際に反発するような形態でもよい。この場合、例えば、反発点での反発後に、次に到達すべき操作基準部に対応する色に変色することにより、操作指示標識が向かう操作基準部を案内することができる。
上述の各形態では、ゲーム領域52として、矩形の領域が用いられているがこのような形態に限定されるものでない。多角形、或いは円形等の多様な形状の領域がゲーム領域として用いられてよい。また、上述の各形態では、ゲーム領域52の長手方向の両端に対応する2つの操作基準部55A、55Bが設けられているが、操作基準部の数は2つに限定されるものではない。例えば、3人以上のプレイヤにてプレイ可能に、3つ以上の操作基準部が周囲に設定された領域がゲーム領域として用いられてもよい。
上述の各形態では、評価手段として機能する制御ユニット10にて、タッチ操作の操作時期がシーケンスデータに記述された操作時期と比較されることにより評価されているが、評価手段としての機能は省略されてもよい。この場、音楽のリズムで操作しつつ相手プレイヤのミスを誘発させるような対戦型のゲーム機として利用可能である。
上述の各形態では、入力装置としてタッチパネルが用いられているが、入力装置はこのような形態に限定されるものではない。例えば、操作部としての複数の押しボタンが設けられたコントローラ、操作部としての一つのボタンを含む複数のコントローラ等、複数の操作部を有している限り、各種の構成の入力装置を利用することができる。例えば、入力装置として、方向選択ボタンと、操作決定ボタンとが設けられているものが利用される場合には、操作決定ボタンが操作基準部に対応するように設定され、方向選択ボタンにて次の操作基準部に移動するときの操作指示標識の移動経路が選択されるように構成されていてもよい。
上述の各形態では、次の操作時期28crに対して、前の操作時期28cfと一致する表示開始時期の情報が対応付けられているが、このような形態に限定されるものではない。次の操作時期28crには、表示開始時期として特定の操作時期28csよりも早い時期が設定されていればよい。これにより、操作時期間の間隔が短い次の操作時期28crを指示する操作指示標識の表示期間を延長することができる。
また、シーケンスデータに記述される時期として、上述の各形態では、操作時期が記述されているが、操作時期に替えて表示継続時間が記述されていてもよい。この場合、表示開始時期から表示継続時間が経過した時期にいずれかの操作基準部に到達するようにオブジェクト60を移動させることにより、操作時期を指示可能である。
上述の各形態では、図1にて1台のゲーム機1のみが図示されているが、複数のゲーム機1がゲーム内容を共有可能に接続されていてもよい。図23は、2台のゲーム機1A、1Bがゲーム内容を共有可能に接続されている状態の一例を示す図である。図23の例では、モニタ3に浅い傾斜が形成された2台のゲーム機1が横方向に並列に配置される場合を示している。図23に示すように、一方の第1プレイヤP1が利用するモニタ3Aでは第1操作基準部55Aが第1プレイヤP1側に配置され、他方の第2プレイヤP2が利用するモニタ3Bでは第2操作基準部55Bが第2プレイヤP2側に配置されている。つまり、第1プレイヤP1がプレイするゲーム画面50Aと第2プレイヤP2がプレイするゲーム画面50Bとは上下が逆となるように配置されている。そして、第1プレイヤP1がモニタ3Aに重ね合わされたタッチパネル5Aを通じて第1操作基準部55Aを、第2プレイヤがモニタ3Bに重ね合わされたタッチパネル5Bを通じて第2操作基準部55Bを、それぞれ操作部として利用する。この場合、第1ゲーム機1Aの第1操作基準部55A及び第2ゲーム機1Bの第2操作基準部55Bのそれぞれが複数の操作部のそれぞれとして機能する。また、図23の例と同様の例として、2台のゲーム機1が背面を合わせるように、つまり2台のゲーム機1が背中合わせとなるように配置されていてもよい。この場合、各プレイヤが互いに向かい合うように位置してゲームが実行されるので、対戦しているという各プレイヤの感覚をより向上させることができる。また、上述の各形態では、モニタ3がプレイヤP側に傾けられて配置されているが、このような形態に限定されるものではない。例えば、モニタが略水平となるように配置されていてもよい。この場合、一台のモニタを二人のプレイヤにて利用し、共通のモニタ及びタッチパネルを通じて第1操作基準部及び第2操作基準部をそれぞれ複数の操作部として二人のプレイヤにて使用することができる。
上述の各形態では、ゲーム領域に複数の操作指示標識が存在している場合がある。このような場合において、各操作指示標識は互いに衝突することで移動方向及び移動速度の少なくともいずれか一方が変化するように表示されてもよい。この場合、移動途中での操作指示標識の移動方向等の変更を自然に実現することができる。図24は、衝突によりオブジェクトの移動方向が変化する表示を含むゲーム画面の一例を示す図である。この例では、一人のプレイヤにてプレイされる場合のゲーム画面を用いている。図24に示すように、この例のゲーム領域52には、第2操作基準部55Bが設けられていない。このため、操作指示標識としてのオブジェクトは、ゲーム領域52の周囲の壁にて反発しつつ、シーケンスデータに記述された操作時期に第1操作基準部55Aに到達するように移動する。図24の例では、ゲーム領域52内に2つのオブジェクト60a、60bが表示されている。図24の2つの破線は、第1オブジェクト60aが移動する予定の予定経路FP1と、第2オブジェクト60bが移動する予定の予定経路FP2と、をそれぞれ示している。第1オブジェクト60aは、予定経路FP1に沿って、第1操作基準部55Aと対向する位置の壁で反発し、左側の側壁52Lで更に反発した後、第1操作基準部55Aの直前の位置まで移動している。一方、第2オブジェクト60bは、予定経路FP2に沿って第1操作基準部55Aから第1操作基準部55Aと対向する位置の壁に向かって移動している。そして、図24の例では、2つのオブジェクト60a、60bが第1操作基準部55Aの前方で衝突している。2つの一点鎖線は、各予定経路FP1、FP2が衝突により変化した後の各衝突後経路CP1、CP2を示している。第1オブジェクト60aは、衝突により予定経路FP1から衝突後経路CP1に経路が変化し、第1操作基準部55Aへの到達位置が変化している。また、予定経路FP1より衝突後経路CP1の移動距離の方が長いため、移動速度も変化している。同様に、第2オブジェクト60bの経路も衝突により、予定経路FP2から衝突後経路CP2に変化し、移動距離も変化している。このように、移動の途中で操作指示標識の移動方向等が変化することにより、操作指示標識の移動経路及び、到達位置の予測が難しくなる。このため、ゲームの難易度を更に多様に変化させることができる。
また、上述の各形態では、操作部への操作等の所定の条件により、オブジェクト60が次の操作基準部へ向かうときの移動経路が変化するように構成されているが、このような構成は省略されてもよい。具体的には図9のルーチンのステップS3及び、図10のルーチン等のルーチンは省略されてもよい。
上述の各形態では、ゲーム機1は楽曲が再生され、楽曲の演奏時間に基づいて操作指示標識が操作基準部に向かって移動する音楽ゲーム機として構成されているが、このような構成に限定されるものではない。ゲーム機1では、映像を通じて操作時期が指示される限り多様なゲームを実行可能である。さらに、本発明のゲームシステムは、商業施設に設置される業務用ゲーム機、家庭用の据置型ゲーム機、携帯型のゲーム機、ネットワークを利用して実現されるゲームシステムといった適宜の形態で実現されてよい。