(57)【特許請求の範囲】
【請求項１】
通信回線を介して接続された複数の端末間にて、各端末のプレイヤによるプレイ行為に基づいてゲームを進行させるゲームシステムに適用され、前記複数の端末の一つとして機能することが可能なゲーム機であって、
前記ゲーム中の自機における前記プレイ行為を実行すべき少なくとも一つの基準時期と、前記ゲームシステムの他の端末として機能する他機における前記プレイ行為を実行すべき少なくとも一つの基準時期と、を互いに関連付けるための関係情報を記憶する関係情報記憶手段と、
前記関係情報に基づいて前記自機の基準時期と関連付けられる前記他機の基準時期に対応する前記プレイ行為に応じて、当該自機の基準時期の案内態様が変化するように、各基準時期を案内する基準時期案内手段と、
所定の変更条件を満たした場合に、前記基準時期案内手段が前記案内態様を変化させるために前記プレイ行為を利用する前記他機の基準時期を、前記関係情報に基づく前記他機の基準時期から前記他機における当該基準時期よりも早い基準時期に変更する関係変更手段と、を備える、ことを特徴とするゲーム機。
【請求項２】
前記関係変更手段は、前記関係情報に基づく前記他機の基準時期から前記他機における当該基準時期よりも早い基準時期に変更した後に、所定の回復条件を満たした場合に、前記基準時期案内手段が前記案内態様を変化させるために前記プレイ行為を利用する前記他機の基準時期を、前記早い基準時期から前記関係情報に基づく前記他機の基準時期に戻す、請求項１に記載のゲーム機。
【請求項３】
所定の制限時間と前記他機の前記プレイ行為に関する情報の取得時間とを比較して、前記所定の制限時間と前記取得時間との間に所定の時差が生じているか否か判別する時差判別手段を更に備え、
前記所定の変更条件は、前記時差判別手段の判別結果に基づいて、前記所定の時差が生じている場合に満たされる、請求項１又は２に記載のゲーム機。
【請求項４】
前記自機の基準時期に基づいて、前記所定の制限時間を算出する制限時間算出手段を更に備える、請求項３に記載のゲーム機。
【請求項５】
前記関係情報記憶手段は、前記関係情報として、前記自機の複数の基準時期と前記他機の複数の基準時期とをそれぞれ互いに関連付ける情報を記憶している、請求項１〜４のいずれか一項に記載のゲーム機。
【請求項６】
前記関係変更手段は、前記案内態様を変化させる前記自機の基準時期を基準にして、前記自機に対する各基準時期のうち当該自機の基準時期の直前に該当する直前基準時期を案内する際に、当該直前基準時期に対する前記案内態様として前記基準時期案内手段が所定の案内態様を使用するように、前記案内態様を変化させるために利用する情報を前記他機の基準時期に対応する前記プレイ行為に基づく情報から所定の情報に変更する、請求項１〜５のいずれか一項に記載のゲーム機。
【請求項７】
前記所定の案内態様として、前記プレイ行為が適切に実行されなかった場合、或いは、所定の時間内に前記プレイ行為が実行されなかった場合に利用される案内態様が使用されるように、当該案内態様と関連付けられる情報が前記所定の情報として利用されている、請求項６に記載のゲーム機。
【請求項８】
前記プレイ行為としての操作を入力するための少なくとも一つの操作部を有する入力装置と、
ゲーム画面を表示する表示装置と、を更に備え、
前記関係情報記憶手段には、前記関係情報により、前記自機の基準時期として前記自機の操作部に対する操作時期と前記他機の基準時期として前記他機の操作部に対する操作時期とが互いに関連付けられるように記述されたシーケンスデータが記憶され、
前記基準時期案内手段は、前記自機の操作部に対応する第１基準部と、前記他機の操作部に対応する第２基準部とが間隔をあけて配置されたゲーム領域を前記ゲーム画面上に表示させるゲーム領域提示手段と、各操作時期を指示するための各操作指示標識が第１基準部及び第２基準部を接続する複数の移動経路のいずれか一つに沿って、前記自機の操作部に対する操作時期には前記第１基準部に、前記他機の操作部に対する操作時期には前記第２基準部に、それぞれ到達するように前記ゲーム領域内にて各操作指示標識を移動させつつ表示させることにより、各操作時期を案内する標識表示制御手段と、を備え、
前記標識表示制御手段は、前記関係情報に基づいて前記自機の操作時期と関連付けられる前記他機の操作時期に対応する前記操作指示標識への操作結果に応じて、前記自機の操作時期に対応する前記操作指示標識が移動する移動経路を変化させることにより、前記自機の操作時期の案内態様を変化させ、
前記関係変更手段は、前記標識表示制御手段が前記移動経路を変化させるために前記操作結果を利用する前記操作指示標識に対応する前記他機の操作時期を、前記関係情報に基づく前記他機の操作時期から当該操作時期よりも早い操作時期に変更する、請求項１〜７のいずれか一項に記載のゲーム機。
【請求項９】
音声を再生出力する音声出力装置と、
楽曲を再生させるための楽曲データを記憶する楽曲データ記憶手段と、
前記楽曲データに基づいて前記音声出力装置から前記楽曲を再生させる楽曲再生手段と、を更に備え、
各基準時期として前記楽曲中における各時期が利用されている、請求項１〜８のいずれか一項に記載のゲーム機。
【請求項１０】
通信回線を介して接続された複数の端末間にて、各端末のプレイヤによるプレイ行為に基づいてゲームを進行させるゲームシステムに適用され、前記複数の端末の一つとして機能することが可能なゲーム機であって、前記ゲーム中の自機における前記プレイ行為を実行すべき少なくとも一つの基準時期と、前記ゲームシステムの他の端末として機能する他機における前記プレイ行為を実行すべき少なくとも一つの基準時期と、を互いに関連付けるための関係情報を記憶する関係情報記憶手段を備えたゲーム機のコンピュータに、
前記関係情報に基づいて前記自機の基準時期と関連付けられる前記他機の基準時期に対応する前記プレイ行為に応じて、当該自機の基準時期の案内態様が変化するように、各基準時期を案内する基準時期案内工程と、
所定の変更条件を満たした場合に、前記基準時期案内工程にて前記案内態様を変化させるために前記プレイ行為を利用する前記他機の基準時期を、前記関係情報に基づく前記他機の基準時期から前記他機の当該基準時期よりも早い基準時期に変更する関係変更工程と、を実行させる制御方法。
【請求項１１】
通信回線を介して接続された複数の端末間にて、各端末のプレイヤによるプレイ行為に基づいてゲームを進行させるゲームシステムに適用され、前記複数の端末の一つとして機能することが可能なゲーム機であって、前記ゲーム中の自機における前記プレイ行為を実行すべき少なくとも一つの基準時期と、前記ゲームシステムの他の端末として機能する他機における前記プレイ行為を実行すべき少なくとも一つの基準時期と、を互いに関連付けるための関係情報を記憶する関係情報記憶手段を備えたゲーム機のコンピュータを、
前記関係情報に基づいて前記自機の基準時期と関連付けられる前記他機の基準時期に対応する前記プレイ行為に応じて、当該自機の基準時期の案内態様が変化するように、各基準時期を案内する基準時期案内手段及び、所定の変更条件を満たした場合に、前記基準時期案内手段が前記案内態様を変化させるために前記プレイ行為を利用する前記他機の基準時期を、前記関係情報に基づく前記他機の基準時期から前記他機における当該基準時期よりも早い基準時期に変更する関係変更手段として機能させるように構成されたゲーム機用のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信回線を介して接続された複数の端末間にて、各端末のプレイヤによるプレイ行為に基づいてゲームを進行させるゲームシステムに適用され、複数の端末の一つとして機能することが可能なゲーム機、それに用いる制御方法及び、コンピュータプログラムに関する。
【背景技術】
【０００２】
通信回線を介して接続された複数のゲーム機間にて対戦型のゲームを進行させるゲームシステムが知られている（例えば、特許文献１参照）。一方、対戦中の一方のプレイ結果が他方のゲームの進行に影響を与えるゲーム機も存在する。このようなゲーム機として、音楽のリズムに合わせて交互に操作部を操作するゲーム機が知られている（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−０８７６４９号公報
【特許文献２】特開２００３−２３６２４３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１のゲームシステムでは、ネットワークを介して多数のプレイヤとの対戦が実現される。しかし、このようなゲームシステムでは、通信障害等により、対戦相手のプレイ結果等、対戦相手のゲーム機から受信する情報が遅れる場合もある。一方、特許文献２のゲーム機では、対戦中の一方のプレイ結果が他方のゲームの進行に影響を与えるため、他方のゲームの進行の都合上、一方のプレイ結果を他方のゲームの進行に利用できる時間に制限がある。従って、このようなゲーム機を特許文献１のようなゲームシステムに適用した場合には、通信障害等により、ゲームの進行に支障が生じる場合がある。
【０００５】
そこで、本発明は、情報受信の遅れによる影響を抑制することができるゲーム機、それに用いる制御方法及び、コンピュータプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明のゲーム機は、通信回線（５）を介して接続された複数の端末（２）間にて、各端末のプレイヤによるプレイ行為に基づいてゲームを進行させるゲームシステム（１）に適用され、前記複数の端末の一つとして機能することが可能なゲーム機であって、前記ゲーム中の自機における前記プレイ行為を実行すべき少なくとも一つの基準時期と、前記ゲームシステムの他の端末として機能する他機における前記プレイ行為を実行すべき少なくとも一つの基準時期と、を互いに関連付けるための関係情報（２８ｇ）を記憶する関係情報記憶手段（２０）と、前記関係情報に基づいて前記自機の基準時期と関連付けられる前記他機の基準時期に対応する前記プレイ行為に応じて、当該自機の基準時期の案内態様が変化するように、各基準時期を案内する基準時期案内手段（１０）と、所定の変更条件を満たした場合に、前記基準時期案内手段が前記案内態様を変化させるために前記プレイ行為を利用する前記他機の基準時期を、前記関係情報に基づく前記他機の基準時期から前記他機における当該基準時期よりも早い基準時期に変更する関係変更手段（１０）と、を備えている。
【０００７】
本発明によれば、所定の変更条件を満たした場合には、自機の案内態様を変化させるために利用すべき他機の基準時期が、本来の関係情報に基づくものからそれよりも早い基準時期に変更される。このため、例えば、通信障害等を考慮して、自機と他機との基準時期の対応関係を本来の関係から少しずらすことができる。より具体的には、他機のプレイ行為に関する情報等を利用する時期を遅らせることができる。これにより、受信遅れによりゲームの進行に影響が生じる時期を遅らせることができるので、情報受信の遅れによる影響を抑制することができる
【０００８】
本発明のゲーム機の一態様において、前記関係変更手段は、前記関係情報に基づく前記他機の基準時期から前記他機における当該基準時期よりも早い基準時期に変更した後に、所定の回復条件を満たした場合に、前記基準時期案内手段が前記案内態様を変化させるために前記プレイ行為を利用する前記他機の基準時期を、前記早い基準時期から前記関係情報に基づく前記他機の基準時期に戻してもよい。この場合、所定の回復条件として情報受信の遅れが解消したと判断できる条件を利用することにより、プレイ行為を利用する他機の基準時期とそれを案内態様の変化として反映する自機の基準時期との関係をずれた関係から本来の関係に戻すことができる。これにより、不必要に関係がずらされることを抑制することができるので、より適切にゲームを進行させることができる。
【０００９】
本発明のゲーム機の一態様において、所定の制限時間と前記他機の前記プレイ行為に関する情報の取得時間とを比較して、前記所定の制限時間と前記取得時間との間に所定の時差が生じているか否か判別する時差判別手段（１０）を更に備え、前記所定の変更条件は、前記時差判別手段の判別結果に基づいて、前記所定の時差が生じている場合に満たされてもよい。また、この態様において、前記自機の基準時期に基づいて、前記所定の制限時間を算出する制限時間算出手段（１０）を更に備えていてもよい。これらの場合、プレイ行為を利用する他機の基準時期とそれを案内態様の変化として反映する自機の基準時期との関係をより適切にずらすことができる。
【００１０】
関係情報により関連付けられる自機の基準時期及び、他機の基準時期の数として、どのような数が適用されてもよい。例えば、前記関係情報記憶手段は、前記関係情報として、前記自機の複数の基準時期と前記他機の複数の基準時期とをそれぞれ互いに関連付ける情報を記憶していてもよい。
【００１１】
本発明のゲーム機の一態様において、前記関係変更手段は、前記案内態様を変化させる前記自機の基準時期を基準にして、前記自機に対する各基準時期のうち当該自機の基準時期の直前に該当する直前基準時期を案内する際に、当該直前基準時期に対する前記案内態様として前記基準時期案内手段が所定の案内態様を使用するように、前記案内態様を変化させるために利用する情報を前記他機の基準時期に対応する前記プレイ行為に基づく情報から所定の情報に変更してもよい。プレイ行為を利用する他機の基準時期とそれを案内態様の変化として反映する自機の基準時期との関係がずらされることにより、他機の基準時期が自機の基準時期よりも多く必要になるか、重複して使用されることが生じ得る。また、プレイ行為を利用されるべき他機の基準時期が初回の場合、それよりも前の基準時期が存在しないという問題もある。この場合、プレイ行為を利用する他機の基準時期とそれを案内態様の変化として反映する自機の基準時期との関係がずらされる直前にプレイ行為に関する情報ではなく所定の情報を利用することができる。これにより、初回に生じる問題や重複使用等の問題を解消することができる。
【００１２】
所定の案内態様として、どのような案内態様が利用されてもよい。例えば、本発明のゲーム機の一態様において、前記所定の案内態様として、前記プレイ行為が適切に実行されなかった場合、或いは、所定の時間内に前記プレイ行為が実行されなかった場合に利用される案内態様が使用されるように、当該案内態様と関連付けられる情報が前記所定の情報として利用されてもよい。
【００１３】
本発明のゲーム機の一態様において、前記プレイ行為としての操作を入力するための少なくとも一つの操作部を有する入力装置（９）と、ゲーム画面（５０）を表示する表示装置（８）と、を更に備え、前記関係情報記憶手段には、前記関係情報により、前記自機の基準時期として前記自機の操作部に対する操作時期と前記他機の基準時期として前記他機の操作部に対する操作時期とが互いに関連付けられるように記述されたシーケンスデータ（２８）が記憶され、前記基準時期案内手段は、前記自機の操作部に対応する第１基準部（５５Ａ）と、前記他機の操作部に対応する第２基準部（５５Ｂ）と、が間隔をあけて配置されたゲーム領域（５２）を前記ゲーム画面上に表示させるゲーム領域提示手段（１０）と、各操作時期を指示するための各操作指示標識（６０）が第１基準部及び第２基準部を接続する複数の移動経路（Ｗ）のいずれか一つに沿って、前記自機の操作部に対する操作時期には前記第１基準部に、前記他機の操作部に対する操作時期には前記第２基準部に、それぞれ到達するように前記ゲーム領域内にて各操作指示標識を移動させつつ表示させることにより、各操作時期を案内する標識表示制御手段（１０）と、を備え、前記標識表示制御手段は、前記関係情報に基づいて前記自機の操作時期と関連付けられる前記他機の操作時期に対応する前記操作指示標識への操作結果に応じて、前記自機の操作時期に対応する前記操作指示標識が移動する移動経路を変化させることにより、前記自機の操作時期の案内態様を変化させ、前記関係変更手段は、前記標識表示制御手段が前記移動経路を変化させるために前記操作結果を利用する前記操作指示標識に対応する前記他機の操作時期を、前記関係情報に基づく前記他機の操作時期から当該操作時期よりも早い操作時期に変更してもよい。この場合、自機及び他機の各プレイヤに各操作時期を案内すべく第１基準部と第２基準部との間を複数の移動経路のいずれかに沿って移動する操作指示標識が表示されるゲームにおいて、情報受信の遅れによる影響を抑制することができる。
【００１４】
本発明のゲーム機の一態様において、音声を再生出力する音声出力装置（１４）と、楽曲を再生させるための楽曲データ（２５）を記憶する楽曲データ記憶手段（２０）と、前記楽曲データに基づいて前記音声出力装置から前記楽曲を再生させる楽曲再生手段（１０）と、を更に備え、各基準時期として前記楽曲中における各時期が利用されていてもよい。この場合、音楽ゲームにおいて、情報受信の遅れによる影響を抑制することができる。
【００１５】
本発明の制御方法は、通信回線（５）を介して接続された複数の端末（２）間にて、各端末のプレイヤによるプレイ行為に基づいてゲームを進行させるゲームシステム（１）に適用され、前記複数の端末の一つとして機能することが可能なゲーム機（２）であって、前記ゲーム中の自機における前記プレイ行為を実行すべき少なくとも一つの基準時期と、前記ゲームシステムの他の端末として機能する他機における前記プレイ行為を実行すべき少なくとも一つの基準時期と、を互いに関連付けるための関係情報（２８ｇ）を記憶する関係情報記憶手段（２０）を備えたゲーム機のコンピュータ（１０）に、前記関係情報に基づいて前記自機の基準時期と関連付けられる前記他機の基準時期に対応する前記プレイ行為に応じて、当該自機の基準時期の案内態様が変化するように、各基準時期を案内する基準時期案内工程と、所定の変更条件を満たした場合に、前記基準時期案内工程にて前記案内態様を変化させるために前記プレイ行為を利用する前記他機の基準時期を、前記関係情報に基づく前記他機の基準時期から前記他機の当該基準時期よりも早い基準時期に変更する関係変更工程と、を実行させるものである。
【００１６】
また、本発明のゲーム機用のコンピュータプログラムは、通信回線（５）を介して接続された複数の端末（２）間にて、各端末のプレイヤによるプレイ行為に基づいてゲームを進行させるゲームシステム（１）に適用され、前記複数の端末の一つとして機能することが可能なゲーム機（２）であって、前記ゲーム中の自機における前記プレイ行為を実行すべき少なくとも一つの基準時期と、前記ゲームシステムの他の端末として機能する他機における前記プレイ行為を実行すべき少なくとも一つの基準時期と、を互いに関連付けるための関係情報（２８ｇ）を記憶する関係情報記憶手段（２０）を備えたゲーム機のコンピュータ（１０）を、前記関係情報に基づいて前記自機の基準時期と関連付けられる前記他機の基準時期に対応する前記プレイ行為に応じて、当該自機の基準時期の案内態様が変化するように、各基準時期を案内する基準時期案内手段及び、所定の変更条件を満たした場合に、前記基準時期案内手段が前記案内態様を変化させるために前記プレイ行為を利用する前記他機の基準時期を、前記関係情報に基づく前記他機の基準時期から前記他機における当該基準時期よりも早い基準時期に変更する関係変更手段として機能させるように構成されたものである。本発明の制御方法或いは、コンピュータプログラムを実行することにより、本発明のゲーム機を実現することができる。
【００１７】
なお、以上の説明では本発明の理解を容易にするために添付図面の参照符号を括弧書きにて付記したが、それにより本発明が図示の形態に限定されるものではない。
【発明の効果】
【００１８】
以上に説明したように、本発明によれば、所定の変更条件を満たした場合には、自機の案内態様を変化させるために利用すべき他機の基準時期が、本来の関係情報に基づくものからそれよりも早い基準時期に変更される。このため、例えば、通信障害等を考慮して、自機と他機との基準時期の対応関係を本来の関係から少し遅らせることができる。これにより、受信遅れによりゲームの進行に影響が生じる時期を遅らせることができるので、情報受信の遅れによる影響を抑制することができる
【図面の簡単な説明】
【００１９】
【図１】本発明の一形態に係るゲーム機が適用されたゲームシステムを示す図。
【図２】ゲーム機の物理的な構成を示す図。
【図３】ゲーム機の機能ブロック図。
【図４】ゲーム機にて実行される音楽ゲームのゲーム画面を模式的に示した図。
【図５】オブジェクトの領域を説明するための図。
【図６】シーケンスデータの内容の一例を示す図。
【図７】ゲーム機が実行するタイムラグ制御を説明するための説明図であって、操作情報と表示との関係がずらされる場合を説明するための図。
【図８】ゲーム機が実行するタイムラグ制御を説明するための説明図であって、操作情報と表示との関係が元に戻される場合を説明するための図。
【図９】タイムラグ制御を実現するためのゲーム制御部の機能ブロック図。
【図１０】操作検出処理ルーチンのフローチャートの一例を示す図。
【図１１】シーケンス処理ルーチンのフローチャートの一例を示す図。
【図１２】経路補正処理ルーチンのフローチャートの一例を示す図。
【図１３】図１２に続くフローチャートの一例を示す図。
【図１４】タイムラグ監視処理ルーチンのフローチャートの一例を示す図。
【発明を実施するための形態】
【００２０】
以下、本発明に係るゲーム機の一形態について説明する。図１は、本発明の一形態に係るゲーム機が適用されたゲームシステムを示す図である。ゲームシステム１においては、複数のゲーム機２と、センターサーバ３とがルータ４を介してネットワーク５にそれぞれ接続されている。センターサーバ３は、一台の物理的装置によって構成されている例に限らない。例えば、複数の物理的装置としてのサーバ群によって一台の論理的なセンターサーバ３が構成されていてもよい。各ゲーム機２は、ネットワーク５に接続されることにより、ゲームシステム１の端末装置（或いは、クライアント）として機能する。ネットワーク５としては、インターネットが使用されている。なお、ネットワーク５は、通信回線を使用したものであればよく、インターネットに限定されるものではない。また、通信回線は、有線及び、無線のいずれであってもよい。
【００２１】
各ゲーム機２は、プレイ料金の支払いと引き換えに所定範囲のゲームのプレイを許可する業務用のゲーム機として構成されている。ゲーム機２は、店舗６等の商業施設に適当な台数ずつ設置される。ルータ４は、各店舗６及びセンターサーバ３に対応付けて設置される。同一店舗のゲーム機２は、共通のルータ４を介してネットワーク５に接続されている。なお、ゲーム機２と店舗６のルータ４との間にローカルサーバが設置され、そのローカルサーバを介してゲーム機２がセンターサーバ３と通信可能に接続されていてもよい。
【００２２】
センターサーバ３には、制御ユニット（不図示）が設けられている。制御ユニットは、マイクロプロセッサと、そのマイクロプロセッサにて実行されるべきオペレーティングシステム等のプログラムが記録されたＲＯＭ、及びマイクロプロセッサに対する作業領域を提供するＲＡＭ等の内部記憶装置（不図示）とを備えたコンピュータとして構成されている。また、センターサーバ３には、外部記憶装置（不図示）が接続されている。外部記憶装置には、制御ユニットにて実行されるべき各種サーバ用プログラム及び、そのプログラムが参照する各種データがそれぞれ記憶されている。
【００２３】
図２は、ゲーム機２の物理的な構成を示す図である。ゲーム機２は、筐体７と、筐体７の上面にプレイヤＰ側に傾けられて配置される表示装置としてのモニタ８と、を備えている。モニタ８の表面には、透明なタッチパネル９が重ね合わされている。タッチパネル９は、プレイヤＰが指等で触れると、その接触位置に応じた信号を出力する公知の入力装置である。その他にも、ゲーム機２には、選択或いは決定をするためのボタン、電源スイッチ、ボリューム操作スイッチ、電源ランプといった通常の業務用のゲーム機が備えている各種の入力装置及び出力装置が設けられているが、図２ではそれらの図示を省略している。
【００２４】
図３は、ゲーム機２の機能ブロック図である。図３に示すように、筐体７の内部には、コンピュータとしての制御ユニット１０が設けられている。制御ユニット１０は、制御主体としてのゲーム制御部１１と、そのゲーム制御部１１からの出力に従って動作する表示制御部１２及び、音声出力制御部１３と、を備えている。ゲーム制御部１１は、マイクロプロセッサと、そのマイクロプロセッサの動作に必要な内部記憶装置（一例としてＲＯＭ及びＲＡＭ）等の各種の周辺装置とを組み合わせたユニットとして構成されている。表示制御部１２は、ゲーム制御部１１から与えられる画像データに応じた画像をフレームバッファに描画し、その描画した画像に対応する映像信号をモニタ８に出力することにより、モニタ８上に所定の画像を表示させる。音声出力制御部１３は、ゲーム制御部１１から与えられる音声再生データに応じた音声再生信号を生成して、制御ユニット１０に接続された音声出力装置としてのスピーカ１４に出力することにより、スピーカ１４から所定の音声（楽音等を含む）を再生させる。
【００２５】
ゲーム制御部１１には、外部記憶装置２０が接続されている。外部記憶装置２０には、ＤＶＤＲＯＭ、ＣＤＲＯＭ等の光学式記憶媒体、あるいはＥＥＰＲＯＭ等の不揮発性半導体メモリ装置といった、電源の供給がなくても記憶を保持可能な記憶媒体が使用される。
【００２６】
外部記憶装置２０には、ゲームプログラム２１と、ゲームデータ２２とが記憶されている。ゲームプログラム２１は、ゲーム機２にて所定の手順に従って音楽ゲームを実行するために必要なコンピュータプログラムである。ゲーム機２が起動されると、ゲーム制御部１１はその内部記憶装置に記憶されたオペレーションプログラムを実行することにより、ゲーム機２として動作するために必要な各種の初期設定を実行し、続いて、外部記憶装置２０からゲームプログラム２１を読み込んでこれを実行することにより、ゲームプログラム２１に従って音楽ゲームを実行するための環境を設定する。ゲーム制御部１１は、コンピュータハードウェアとコンピュータプログラムとの組み合わせによって実現される論理的装置である。ゲーム制御部１１は、プレイヤが選択した音楽（楽曲）の再生に合わせてプレイヤに操作を指示し、或いはプレイヤの操作に応じて効果音を発生させるといった音楽ゲームに必要な処理を実行する。更に、ゲーム制御部１１は、プレイヤの操作を評価し、かつその評価結果に応じてゲーム中に変化を生じさせるため処理等も実行する。
【００２７】
ゲームデータ２２には、ゲームプログラム２１に従って音楽ゲームを実行する際に参照されるべき各種のデータが含まれている。このような各種データとして、例えば、ゲームデータ２２には、楽曲データ２５、効果音データ２６及び画像データ２７が含まれている。楽曲データ２５は、ゲームの対象となる楽曲をスピーカ１４から再生出力させるために必要なデータである。図３では、一種類の楽曲データ２５が示されているが、実際には、プレイヤが複数の楽曲からプレイする楽曲を選択可能である。ゲームデータ２２には、それらの複数の楽曲データ２５がそれぞれの曲を識別するための情報を付して記録されている。楽曲データ２５を記憶することにより、外部記憶装置２０は楽曲データ記憶手段として機能する。
【００２８】
効果音データ２６は、プレイヤの操作に応答してスピーカ１４から出力させるべき複数種類の効果音を、効果音毎にユニークなコードと対応付けて記録したデータである。効果音は、楽器その他の様々な種類の音声を含む。効果音データは、各種類に対して、音程を変えて所定のオクターブ数だけ用意されていてもよい。画像データ２７は、ゲーム画面内の背景画像、各種のオブジェクト、アイコン等をモニタ８に表示させるためのデータである。
【００２９】
ゲームデータ２２には、更にシーケンスデータ２８が含まれている。シーケンスデータ２８は、プレイヤに対して操作時期を指示するためのデータである。一曲の楽曲データに対して、最低一個のシーケンスデータ２８が用意される。シーケンスデータ２８の詳細は後述する。
【００３０】
次に、ゲーム機２にて実行される音楽ゲームの概要を説明する。ゲーム機２は、音楽に合わせて二人のプレイヤ（ゲーム機２が一方のプレイヤとして機能する場合を含む）が操作を実行し、その二人のプレイヤの操作時期を評価して競わせる対戦タイプの音楽ゲーム機として構成されている。また、ゲーム機２は、このような音楽ゲームを通じて、自機のプレイヤと、ネットワーク５を介して接続された他のゲーム機２（他機）のプレイヤとが対戦可能なように構成されている。
【００３１】
ゲームが開始される前に、各ゲーム機２からセンターサーバ３に対して、ネットワーク５を介して対戦者を求めるマッチング要求が送信される。センターサーバ３は、各ゲーム機２からのマッチング要求に基づいて、互いに対戦相手となる二人のプレイヤをマッチングする。センターサーバ３の指定に基づいて対戦相手が決定されると、それらのプレイヤ間で、ゲーム機２間の通信を利用した対戦が開始される。
【００３２】
図４は、ゲーム機２にて実行される音楽ゲームのゲーム画面を模式的に示した図である。ゲーム画面５０には、プレイヤに操作時期を案内するためのゲーム領域５２と、マッチングされた二人のプレイヤの得点等を含むゲーム情報を表示するための情報領域５３とが含まれている。ゲーム領域５２は矩形に形成されている。ゲーム領域５２の長手方向（図４の上下方向）の両端５２Ｕ、５２Ｂの付近には、基準部としての第１基準部５５Ａ及び第２基準部５５Ｂが互いに対向するように配置されている。各基準部５５Ａ、５５Ｂは、ゲーム領域５２の長手方向と直交する方向に直線状に延びている。
【００３３】
各基準部５５Ａ、５５Ｂは、マッチングされた２台のゲーム機２をプレイする両プレイヤによりそれぞれゲーム上の現在時刻の基準として用いられる。具体的には、第１基準部５５Ａは自機のプレイヤ（以下、第１プレイヤと呼ぶことがある。）の、第２基準部５５Ｂは対戦相手となる他機のプレイヤ（以下、第２プレイヤと呼ぶことがある。）の、それぞれ現在時刻の基準を示す標識として機能する。ここで、図４の例では、ゲーム画面５０は、第１プレイヤから見て、手前側を下に、奥側を上にして描かれている。また、各基準部５５Ａ、５５Ｂには、各プレイヤを区別するために異なる色が用いられている。図４の例では、第１基準部５５Ａとして赤色の直線が、第２基準部５５Ｂとして青色の直線が、それぞれ用いられている。また、情報領域５３は、ゲーム領域５２の周囲に配置され、ゲーム領域５２の長手方向の一端側が一方のプレイヤの得点等を表示するために用いられ、他端側が他方のプレイヤの得点等を表示するために用いられる。
【００３４】
各基準部５５Ａ、５５Ｂは、所定の間隔で配置された複数の反発点をそれぞれ含んでいる。図中に破線で示したように、第１基準部５５Ａに含まれる複数の反発点Ｒ１と第２基準部５５Ｂに含まれる複数の反発点Ｒ２とは、それぞれ複数の経路Ｗによって相互に接続されている。具体的には、第１基準部５５Ａの一の反発点Ｒ１からは第２基準部５５Ｂに含まれる複数の反発点Ｒ２に到る複数の経路Ｗが、同様に第２基準部５５Ｂの一の反発点Ｒ２からは第１基準部５５Ａに含まれる複数の反発点Ｒ１に到る複数の経路Ｗが、それぞれ設けられている。なお、図４では、一部の反発点Ｒ１、Ｒ２のみが例示されているが、実際には、多数の反発点Ｒ１、Ｒ２が基準部５５Ａ、５５Ｂに沿って一定間隔で存在する。
【００３５】
第１基準部５５Ａの反発点Ｒ１から延びる複数の経路Ｗは、反発点Ｒ２を通過しつつ第２基準部５５Ｂ側の上側端部５２Ｕまで延びている。また、第２基準部５５Ｂの反発点Ｒ２から延びる複数の経路Ｗは、反発点Ｒ１を通過しつつ第１基準部５５Ａ側の下側端部５２Ｂまで延びている。第１基準部５５Ａの一つの反発点Ｒ１に着目すると、その反発点Ｒ１に対しては、複数の経路Ｗとして、第２基準部５５Ｂに含まれる３つの反発点Ｒ２に向かってこの反発点Ｒ１から延びる３つの経路Ｗ１、Ｗ２、Ｗ３が設けられている。音楽ゲームの実行中、つまり、楽曲の再生の進行中において、反発点Ｒ１と反発点Ｒ２とを接続する経路Ｗ上には、操作を指示する操作指示標識としてのオブジェクト６０がシーケンスデータ２８に従って表示される。なお、図４では、説明の都合上、各経路Ｗ１、Ｗ２、Ｗ３を破線で示したが、実際のゲーム画面５０には複数の経路Ｗのいずれも表示されていない。
【００３６】
オブジェクト６０は、曲中の適当な時期に反発点Ｒ１或いは、反発点Ｒ２に出現し、楽曲の進行に従って、出現した各反発点Ｒ１、Ｒ２から反対側に位置する各反発点Ｒ１、Ｒ２に向かって、出現した各反発点Ｒ１、Ｒ２から延びる経路Ｗ上を移動する。そして、オブジェクト６０の到達に合わせて適切な操作が実行された場合、オブジェクト６０は消滅する。このオブジェクト６０の消滅と引き換えに、適切な操作が実行された各基準部５５Ａ、５５Ｂの各反発点Ｒ１、Ｒ２には、次のオブジェクト６０が出現する。つまり、適切な操作が行われた場合、オブジェクト６０が到達した位置（反発点）が次のオブジェクト６０の出現位置として機能する。なお、オブジェクト６０は、一つの反発点Ｒ１（又はＲ２）に対して設定された複数の経路Ｗのいずれか一つに沿って移動する。複数の経路Ｗから一つの経路Ｗを選択する手順については後述する。
【００３７】
出現位置に出現したオブジェクト６０は、その出現位置から反対側に位置する各反発点Ｒ１、Ｒ２に向かって移動する。このため、適切な操作が実行された場合には、オブジェクト６０は、各反発点Ｒ１、Ｒ２であたかも反発するように、各基準部５５Ａ、５５Ｂ間を交互に繰り返し移動する。一方、適切な操作が実行されなかった場合には、オブジェクト６０は、各経路Ｗに沿って各基準部５５Ａ、５５Ｂを通過して、上側端部５２Ｕ又は下側端部５２Ｂまで移動する。そして、各端部５２Ｕ、５２Ｂのオブジェクト６０が到達した位置が次のオブジェクト６０の出現位置として機能する。このため、適切な操作が実行されなかった場合には、オブジェクト６０は、各端部５２Ｕ、５２Ｂから反対側に位置する基準部に向かって、各端部５２Ｕ、５２Ｂにてあたかも反発したかのように移動方向を変える。端部５２Ｕ、５２Ｂにて反発した後のオブジェクト６０の移動経路については、側壁５２Ｌ、５２Ｒを経由せず、次に到達すべき反発点までの距離が最小となる経路に設定される。
【００３８】
上述した適切な操作として、各プレイヤには、オブジェクト６０の各基準部５５Ａ、５５Ｂへの到達に合わせて、各基準部５５Ａ、５５Ｂのオブジェクト６０が到達した位置をタッチするタッチ操作が要求される。各プレイヤがタッチ操作を行うと、オブジェクト６０が各基準部５５Ａ、５５Ｂに一致した時刻と、各プレイヤがタッチ操作した時刻との間のずれ時間が検出される。そのずれ時間が小さいほどプレイヤの操作が高く評価される。また、タッチ操作に応じて効果音がスピーカ１４から再生される。効果音の再生方法として周知の方法が適用されてよい。例えば、効果音再生の周知な方法として、楽曲を再生しつつ楽曲の上から効果音を追加する方法、ミスした場合に楽曲を消音しつつミス操作に対応した効果音を再生する方法が存在する。また、例えば、楽曲を分割して各操作時期に割り当てて、適切な操作が実行された場合、当該操作時期に割り当てられた楽曲のパートが演奏される（各操作時期に対する適切な操作により楽曲を形成するような方法。このため、ミス操作がされた場合には、その操作時期に割り当てられた楽曲のパートが再生されない）方法も存在する。
【００３９】
図４の例では、オブジェクト６０が経路Ｗ１上にて第２基準部５５Ｂの反発点Ｒ２に向かって移動中である。そのオブジェクト６０の第２基準部５５Ｂへの到達に合わせて、第２プレイヤは、他機（第２プレイヤからみて自機）のゲーム画面５０に表示されている第２基準部５５Ｂのオブジェクト６０が到達する位置をタッチ操作すればよい。また、オブジェクト６０は、これから向かう先の各基準部５５Ａ、５５Ｂに対応した色で表示されている。つまり、図４の例では、オブジェクト６０は第２基準部５５Ｂの反発点Ｒ２に到達するまで青色で表示され、到達した反発点Ｒ２に出現する次のオブジェクト６０は赤色で表示される。本形態では、モニタ８上の各基準部５５Ａ、５５Ｂと、それらに重ね合わされるタッチパネル９との組み合わせによって、複数の操作部が形成される。なお、以下では、各基準部５５Ａ、５５Ｂを、操作部を代表する用語として使用することがある。また、第２基準部５５Ｂは、対戦相手のプレイヤのゲーム機２（他機）の操作部に対応する基準部である。
【００４０】
オブジェクト６０が移動する経路Ｗの選択は、各基準部５５Ａ、５５Ｂがタッチ操作されたときのオブジェクト６０の位置に基づいて決定される。位置の対比を容易にするために、オブジェクト６０は複数の領域に分けられる。図５は、オブジェクト６０の領域を説明するための図である。図５の破線は経路Ｗ１、Ｗ２、Ｗ３をそれぞれ示し、一点鎖線６２は各領域の境界をそれぞれ示している。
【００４１】
図５の例では、オブジェクト６０は各基準部５５Ａ、５５Ｂと最初に接触する接触点付近の接触領域Ｓと、その接触領域Ｓの左右に位置する右側領域Ｒ、左側領域Ｌ及び、その他の領域Ｏの４つの領域に分けられる。そして、プレイヤがいずれの領域をタッチ操作したかに応じて、次にオブジェクト６０が進むべき経路Ｗが選択される。即ち、オブジェクト６０が進むべき移動経路として、接触領域Ｓ又は、その他の領域Ｏ付近（これらの各領域を含む）がタッチ操作された場合にはＲ１に最短距離で向かう直線経路Ｗ２が、左側領域Ｌ付近（当該領域を含む）がタッチ操作された場合にはゲーム領域５２の長手方向の右側の側壁５２Ｒを経由してＲ１に向かう第１右側経路Ｗ３が、右側領域Ｒ付近（当該領域を含む）がタッチ操作された場合にはゲーム領域５２の長手方向の左側の側壁５２Ｌを経由してＲ１に向かう第１左側経路Ｗ１が、それぞれ選択される。移動経路Ｗ１〜Ｗ３のそれぞれの距離は、互いに異なる。従って、操作位置とオブジェクト６０の位置との間の位置関係に応じて、オブジェクト６０が次の各基準部５５Ａ、５５Ｂに移動するための移動距離に差が生じる。一方で、移動経路に関係なくオブジェクト６０をタッチ操作すべき操作時期、つまり、各基準部５５Ａ、５５Ｂにオブジェクト６０が到達すべき時期は一定である。このため、一方のプレイヤのタッチ操作に応じて他方のプレイヤに向かって移動するオブジェクト６０の経路Ｗ及び移動速度が変化する。これによりゲームの難易度が変化するので、各プレイヤには相手プレイヤへの影響を意識した操作が要求される。
【００４２】
なお、図４では、ゲーム領域５２に単一のオブジェクト６０のみが表示された状態を示している。しかし、ゲーム領域５２には、位置、速度或いは経路が互いに相違する複数のオブジェクト６０が表示されることもある。その場合、各オブジェクト６０の出現位置、移動経路、消滅位置といったオブジェクト６０の表示及び移動に関する制御は、上述した例に従ってオブジェクト６０毎に行われる。
【００４３】
次に、図６を参照して、シーケンスデータ２８の詳細を説明する。図６は、シーケンスデータの内容の一例を示す図である。図６に示すように、シーケンスデータ２８は、条件定義部２８ａと、操作シーケンス部２８ｂと、を含んでいる。条件定義部２８ａには、音楽のテンポ、ビート、トラック、また、オブジェクト６０をタッチ操作したときにそれぞれ発生させるべき効果音を指定する情報等、楽曲毎に異なるゲームの実行条件を指定する情報が記述される。なお、図６では条件定義部２８ａがシーケンスデータ２８の先頭のみに設けられているが、操作シーケンス部２８ｂの途中の適宜の位置にも条件定義部２８ａが追加されてよい。それにより、曲中のテンポの変更、効果音の割り当ての変更といった処理を実現することができる。
【００４４】
一方、操作シーケンス部２８ｂには、オブジェクト６０をタッチ操作すべき時期と、タッチ操作を行うべきプレイヤを指示する情報（言い換えれば、各基準部５５Ａ、５５Ｂのうち、オブジェクト６０が到達すべきいずれか一方の基準部を指示する情報）とが対応付けて記述されている。また、操作シーケンス部２８ｂには、オブジェクト６０の出現位置を指示するための情報も含まれている。
【００４５】
図６にて、一部の詳細を示すように、この例では、操作シーケンス部２８ｂは、楽曲中において操作が行われるべき基準時期としての時期（操作時期）を指示する操作時期部２８ｃと、オブジェクト６０の表示が開始されるべきプレイヤ（言い換えれば、オブジェクト６０の表示が開始されるべき、いずれか一方の基準部）を指示する表示位置指示部２８ｅと、各レコードを区別するためのレコード情報部２８ｈと、オブジェクト６０の出現位置を指示する関係情報としての出現位置指示部２８ｇと、を含んでいる。つまり、操作シーケンス部２８ｂは、これらの情報が互いに対応付けられるように記述された複数のレコードの集合として構成されている。
【００４６】
操作時期は、楽曲中の小節番号、拍数、及び拍中の時刻を示す値がカンマで区切られて記述されている。拍中の時刻は、一拍の先頭からの経過時間であり、一拍の時間長をｎ個の単位時間に等分したときのその拍の先頭からの単位数で表現される。例えば、ｎ＝１００で、楽曲の一小節目の二拍目で、かつその拍の先頭から１／４だけ経過した時刻を操作時期として指定する場合には、“０１，２，０２５”と記述される。
【００４７】
表示位置指示部２８ｅには、いずれのプレイヤ側にオブジェクト６０を表示開始するかの指示が記述されている。具体的には、第１プレイヤに対応する第１基準部５５Ａ側を指示する場合には“Ｐ１”と、第２プレイヤに対応する第２基準部５５Ｂ側を指示する場合には“Ｐ２”と、それぞれ記述される。また、オブジェクト６０は、各基準部５５Ａ、５５Ｂ間を移動するので、表示開始されるプレイヤの指示は、タッチ操作を要求する基準部の指示にも相当する。具体的には、表示開始する位置として第１基準部５５Ａ側が指示されている場合には、表示開始されたオブジェクト６０は反対側の第２基準部５５Ｂに向かって移動するので、第２基準部５５Ｂへのタッチ操作の指示に該当する。同様に、表示開始する位置として第２基準部５５Ｂ側が指示されている場合には、反対側、つまり表示開始されたオブジェクト６０の移動方向に位置する第２基準部５５Ａへのタッチ操作の指示に該当する。更に、オブジェクト６０が表示開始されるプレイヤの指示は、表示されるオブジェクト６０の色の指示にも該当し、“Ｐ１”の場合に青色のオブジェクト６０が、“Ｐ２”の場合に赤色のオブジェクト６０が、それぞれ表示される。
【００４８】
レコード情報部２８ｈには、レコード毎に並び順に応じた番号が記述されている。即ち、レコード情報として、冒頭のレコードには“１”が付され、以降、上から順に“２”、“３”等のユニークな番号が各レコードに付されている。
【００４９】
出現位置指示部２８ｇには、レコード番号を指定する情報が記述されている。即ち、出現位置を指示する情報として、“１”、“２”、“３”等の番号が記述されている。出現位置指示部２８ｇに、“１”と記述されている場合、レコード情報部２８ｈに“１”が付されているレコードにて指示されるオブジェクト６０の到達位置が出現位置として指示される。具体的には、レコード情報部２８ｈの番号１に対応するオブジェクト６０が適切にタッチ操作された位置或いは、ミス操作により到達した位置が、出現位置指示部２８ｇに、“１”と記述されているレコードに対応するオブジェクト６０の出現位置として指示されている。同様に、出現位置指示部２８ｇに、“２”と記述されている場合にはレコード情報部２８ｈに“２”が、“３”と記述されている場合にはレコード情報部２８ｈに“３”が、それぞれ付されているレコードに対応するオブジェクト６０が適切にタッチ操作された位置或いは、到達した位置が出現位置として指示されている。
【００５０】
更に、出現位置指示部２８ｇに記述される情報は、出現時期の指示にも該当する。具体的には、レコード情報部２８ｈに“１”が付されているレコードに対応するオブジェクト６０が適切にタッチ操作された時期（或いは、各端部５２Ｕ、５２Ｂに到達した時期）に、出現位置指示部２８ｇに“１”と記述されているレコードに対応するオブジェクト６０が表示開始される。つまり、出現位置指示部２８ｇには、オブジェクト６０の連続性を演出するため、一のレコードに対応するオブジェクト６０が到達した時期（若しくは適切にタッチ操作された時期）であって、当該到達した位置（若しくは適切にタッチ操作された位置）に次のオブジェクト６０が表示開始されるように、一のレコードと次のオブジェクト６０に対応するレコードとを関連付けるための指示が記述されている。また、最初のレコードに対応するオブジェクトの出現位置は、初期出現位置として固定の位置を示す情報が記述されている。例えば、このような初期出現位置を指示する情報として、出現位置指示部２８ｇには、“Ｓ”等のアルファベットが記述される。
【００５１】
図６の例では、一小節目の四拍目の開始時点から“０１０”相当だけ経過した時期に第２基準部５５Ｂに到達する赤いオブジェクト６０が第１基準部５５Ａの初期出現位置に出現するという指示がされている。また、このオブジェクト６０の到達位置及び時期（或いは適切にタッチ操作された位置及び時期）が一小節目の四拍目の開始時点から“０１６”相当だけ経過した時期に第２基準部に到達する青いオブジェクト６０の出現位置及び出現時期として機能するように指示されている。
【００５２】
次に、ネットワーク５を介して他のゲーム機２との対戦が実行されている場合にゲーム機２にて実行されるタイムラグ制御について説明する。ネットワーク５を介して他のゲーム機２との対戦が実行されている場合には、例えば、通信環境等の影響により、第２プレイヤの操作情報（他機からの操作情報）の受信が遅れる場合がある。このような場合、ゲーム機２では、通信遅れにより生じる問題を解消するためにタイムラグ制御が実行される。
【００５３】
上述のように、ゲーム機２で実行される音楽ゲームでは、第１プレイヤと第２プレイヤとが交互に操作を実行する。また、第２プレイヤの操作結果に応じて、第１プレイヤが操作を実行すべきオブジェクト６０の出現位置、経路及び、速度が変化する。一方で、オブジェクト６０が各基準部５５Ａ、５５Ｂに到達すべき時期は、シーケンスデータ２８により予め指定されており、変化しない。従って、第１基準部５５Ａに到達すべきオブジェクト６０の出現位置、出現時期及び、移動経路の決定には、時間的な制限がある。このため、仮に、ゲーム機２が第２プレイヤの操作情報を、その操作情報を反映すべきオブジェクト６０に対して指定されている到達時期（操作時期）以降に受信してもそれをオブジェクト６０に反映することはできない。また、それ以前に、このような場合、第１基準部５５Ａへ移動するオブジェクト６０の出現位置、出現時期、及び経路を決定すべき情報がないため、このオブジェクト６０を適切に出現させ、かつ移動させることができない。タイムラグ制御は、このような問題を解消するために実行される。
【００５４】
従って、タイムラグ制御は、第２プレイヤの操作情報をオブジェクト６０に反映可能な時間内に他機から第２プレイヤの操作情報が取得できない場合に実行される。具体的には、このような場合、タイムラグ制御により、第２プレイヤの操作情報が反映されるべきオブジェクト６０に対して、予め設定された所定の位置、所定の時期及び、経路が適用される。つまり、タイムラグ制御により、第２プレイヤの操作情報に応じて決定されるべきオブジェクト６０の出現位置、出現時期及び、経路は、第２プレイヤの操作情報に替えて、所定の時期、所定の位置及び、所定の経路に基づいて決定される。
【００５５】
図７及び図８を参照して、更にタイムラグ制御について説明する。図７は、ゲーム機２が実行するタイムラグ制御を説明するための説明図である。上述のように、対戦中の各ゲーム機２では、交互に操作が実行され、対戦相手側（他機側）の操作結果が自機側に反映される。つまり、対戦相手側の操作情報に基づいて自機側の表示が決定される。従って、図７に示すように、ゲーム画面５０を表示するための要素は、自機側と対戦相手側とに分けられ、かつ、対戦相手側は自機側に表示される情報と、対戦相手側で実際に実行される操作とに分類できる。以下、順を追って、タイムラグ制御により実現される内容について説明する。
【００５６】
上述のように、オブジェクト６０の移動を通じて、各プレイヤには交互に操作が促されるため、自機側のプレイヤの操作と対戦相手側（他機側）の操作とは一対と考えられる。これら一対の操作には、図７では、“操作１”、“操作２”等、共通の操作番号を振って対応関係が示されている。つまり、自機側の“操作１”により対戦相手側の“操作１”が生じる。また、対戦相手側の操作により、次の自機側の操作が促される。このため、対戦相手側の“操作１”により自機側の次の操作、つまり“操作２”が促される。このように、音楽ゲームは、一対の操作単位で進行すると考えられる。
【００５７】
図７の例では、まず一対の“操作１”において、通信及び表示が適切であった場合が示されている。つまり、タイムラグ制御は、これらの“操作１”に対しては実行されていない。この場合、対戦相手側に対応する自機側の表示は、対戦相手側の操作情報を実際に反映した適切なものである（図７では、このような場合が対戦相手側の表示欄及び操作欄に跨るように楕円を配置することにより表現されている）。
【００５８】
一方、一対の“操作２”においては、相手側の操作情報を制限時間よりも遅れて受信した場合が示されている。つまり、タイムラグ制御が実行される場合が示されている。図７に示すように、この場合、実際の対戦相手側の操作と、対戦相手側に対応する自機側の表示とは、分離される。つまり、自機側のプレイヤ（第１プレイヤ）に次の操作を指示する為のオブジェクト６０には、対戦相手側の実際の操作は反映されない。この場合、自機側のプレイヤに次の操作を指示するためのオブジェクト６０は、所定の位置に出現し、所定の経路を移動して、第１プレイヤに操作時期を案内する。この際の所定の位置及び、所定の経路は、第２プレイヤ（対戦相手側の他機のプレイヤ）の実際の“操作２”とは無関係である。また、このオブジェクト６０が出現する時期は、例えば、制限時間限界の時期等、所定の時期である。
【００５９】
このように、第２プレイヤによる実際の“操作２”の情報とは切り離されて、次の第１プレイヤの“操作３”が案内される。一方、第２プレイヤの“操作２”の情報は、次の“操作３”においても通信に遅れが生じた場合に、第２プレイヤの“操作３”の情報を反映すべきオブジェクト６０に対する操作情報として利用される。具体的には、第２プレイヤの“操作３”の操作情報を制限時間内に受信できない場合には、“操作３”の操作情報に替えて、第２プレイヤの前回の操作情報である“操作２”の情報が利用される。つまり、対戦相手側に対応する自機側の表示には、“操作３”の情報に替えて、“操作２”の情報が反映され、“操作２”の情報に基づいて出現位置、経路が決定される。“操作３”以降も同様である。このように、タイムラグ制御により、情報の受信に遅れが生じた場合には、遅れて取得した操作情報をオブジェクト６０の経路等に反映可能なように、対戦相手側に対応する自機側の表示と、それに反映すべき情報との関係がずらされる。
【００６０】
通信遅れは、主として通信環境に依存する為、当初に遅れが発生した場合には、その後に解消されないケースが多い。従って、対戦が終了するまで、表示と操作情報の反映との間には、所定の間隔（上記では１操作部分）ずれた関係が維持される。但し、通信遅れが一時的なものであれば、対戦中の通信遅れが解消する場合もある。このような場合には、タイムラグ制御により、上記のずれた関係が元に戻される。
【００６１】
図８は、操作情報と表示との関係が元に戻される場合を説明するための図である。図８に示すように、“操作１１”までは、通信遅れを解消するために、次のオブジェクト６０に反映すべき操作情報として、前回の操作情報、つまり第２プレイヤの“操作１０”の操作情報が利用されている。そして、次の“操作１２”では、通信遅れが解消され、次のオブジェクト６０に操作情報を反映可能な制限時間内に第２プレイヤの“操作１２”に対応する操作情報が受信されたとする。この場合、図８に示すように、第１プレイヤの“操作１３”を指示する為のオブジェクト６０には、第２プレイヤの“操作１２”の情報が反映される。つまり、制限時間内に第２プレイヤの“操作１２”の操作情報を取得することにより、“操作１１”までのずれた関係が解消される。これにより、第２プレイヤの“操作１１”の操作情報は反映先がなくなるため、情報としては破棄される。このように、通信遅れが解消された場合には、解消により取得した情報がすぐに使用され、表示と操作情報とのずれた関係が解消される。これにより、表示と操作情報との関係が元に戻される。
【００６２】
上記のように、タイムラグ制御により、通信遅れによる問題を解消するために、通信遅れが生じた場合には所定数だけ表示と操作情報の反映との関係がずらされる一方で、通信遅れが解消した場合にはそのずれた関係が元に戻される。このようにして、ゲーム機２では、通信遅れの問題を解消しつつ、ネットワーク５を介して他のゲーム機２との対戦を実現する。
【００６３】
次に、図９を参照して、タイムラグ制御を実現するための構成について説明する。タイムラグ制御は、ゲーム制御部１１にて実行される。図９は、タイムラグ制御を実現するためのゲーム制御部１１の機能ブロック図である。図９に示すように、ゲーム制御部１１には、記憶部６３と、タイムラグ監視部６４と、切替制御部６５と、位置演算部６６と、画像生成部６７とが設けられる。自機及び対戦相手のゲーム機（他機）２の操作情報は、記憶部６３に記憶される。タイムラグ監視部６４は、記憶部６３に記憶された操作情報に基づいて、各操作情報が所定の時間制限内に得られた操作情報か否か判断する。タイムラグ監視部６４は、その判断結果を切替制御部６５に与える。
【００６４】
そして、切替制御部６５は、タイムラグ監視部６４の判断結果、記憶部６３に記憶された各操作情報に基づいて、オブジェクト６０の出現位置等の決定に使用すべき操作情報を特定する。この際、タイムラグ監視部６４によりタイムラグが発生していると判断された場合には、切替制御部６５は、使用される操作情報が通常時のものからタイムラグ時に使用するものに切り替えられるように、特定する。切替制御部６５は、その特定結果を位置演算部６６に与える。位置演算部６６は、切替制御部６５の特定結果に基づいて、各オブジェクト６０を配置すべきゲーム画面５０上の位置（座標）を演算する。その演算結果は、画像生成部６７に与えられる。そして、画像生成部６７は、位置演算部６６の演算結果に基づいて、演算された各位置に各オブジェクト６０が配置されたゲーム画面５０が表示されるように画像データを生成し、出力する。これにより、対戦相手のゲーム機２の操作情報の受信が遅れた場合には所定の位置等が、その後は受信遅れが解消するまで所定数ずれた操作情報が、それぞれ反映されたオブジェクト６０を含むゲーム画面５０がモニタ８に表示される。更に、受信遅れが解消した場合には、操作情報のずれが解消され、直前の対戦相手のゲーム機２の操作情報が反映されたゲーム画面５０がモニタ８に表示される。
【００６５】
次に、タイムラグ制御を実行するためにゲーム制御部１１が実行する各種処理について説明する。ゲーム制御部１１は、タイムラグ制御を実行するために、図１０の操作検出処理ルーチン、図１１のシーケンス処理ルーチン及び、図１２〜図１４のサブルーチンを実行する。なお、ゲーム制御部１１は、その他にもマッチング処理、各プレイヤの操作を評価するための処理等、音楽ゲームを実行するために必要な各種の周知の処理を実行するが、それらの説明は省略する。
【００６６】
図１０は、ゲーム制御部１１が実行する操作検出処理ルーチンのフローチャートの一例を示す図である。ゲーム制御部１１は、図１０のルーチンを所定の周期で繰り返し実行する。図１０のルーチンは、第１プレイヤ及び第２プレイヤのタッチ操作の内容（操作位置及び、操作時期）を取得するために実行される処理である。
【００６７】
ゲーム制御部１１は、図１０のルーチンを開始すると、まずステップＳ１でタッチパネル９の出力を参照して第１プレイヤが前回のルーチンの終了後にタッチ操作を行ったか否かを判別する。タッチ操作が行われている場合、ゲーム制御部１１は、ステップＳ２に進む。ステップＳ２にて、ゲーム制御部１１は、第１プレイヤがタッチ操作した位置及びそのタッチ操作が行われた時期を取得し、それらを記録した操作情報を生成して当該操作情報を記憶部６３に記憶する。続くステップＳ３にて、ゲーム制御部１１は、ステップＳ２で記憶した操作情報を対戦相手のゲーム機２に送信する。
【００６８】
次のステップＳ４にて、ゲーム制御部１１は、前回のルーチンの終了後に対戦相手のゲーム機２から操作情報を受信したか否か判別する。受信している場合、ゲーム制御部１１は、ステップＳ１５に進み、受信した操作情報を受信時刻の情報とともに記憶部６３に記憶する。ステップＳ５の処理を終えると、ゲーム制御部１１は、今回の処理を終了する。一方、ステップＳ１１の判別結果が否定的結果の場合、つまりタッチ操作が行われていない場合、ステップＳ２及びステップＳ３をスキップして、ステップＳ４に進む。更に、ステップＳ４が否定的判別結果の場合、つまり操作情報を受信していない場合、ゲーム制御部１１は、ステップＳ５をスキップして、今回のルーチンを終了する。図１０のルーチンによって記憶された操作情報に含まれている第１プレイヤ及び第２プレイヤのそれぞれの操作の時期が、各プレイヤの実際の操作時期として扱われる。
【００６９】
一方、図１１は、ゲーム制御部１１が実行するシーケンス処理ルーチンのフローチャートの一例を示す図である。図１１のルーチンは、ゲーム領域５２中にオブジェクト６０を移動表示させるために実行される処理である。ゲーム制御部１１は、図１１のルーチンを所定の周期で繰り返し実行する。その周期は、ゲーム画面５０を描画する周期、つまり、フレームレートと等しい。なお、図１１のルーチンが実行される周期は、図１０のルーチンが実行される周期と等しいか、又は、それよりも長い。
【００７０】
図１１のルーチンを開始すると、ゲーム制御部１１は、まずステップＳ１１において、楽曲上の現在時刻を取得する。例えば、この現在時刻は、楽曲の再生開始時点を基準として、ゲーム制御部１１の内部クロックにて計時が開始され、その内部クロックの値から取得される。楽曲上の時刻は、再生開始時点かあらの経過時間によって特定されてもよいし、経過時間と相関する他の値によって特定されてもよい。例えば、楽曲の再生開始時点からの楽曲の拍数、ゲーム画面５０のフレーム数等を利用して時刻が特定されてもよい。
【００７１】
続くステップＳ１２にて、ゲーム制御部１１は、シーケンスデータ２８から次のフレームで描画されるべきゲーム領域５２の表示範囲に相当する時間長に存在する操作時期のデータを取得して内部記憶装置に保持する。表示範囲は、一例として現在時刻（但し、次のフレームの描画時における時刻）から将来に向かって楽曲の２小節相当の時間範囲に設定される。次のステップＳ１３では、次のフレームで描画すべき全てのオブジェクト６０が配置されるべき各経路を決定するためのサブルーチンを実行する。このサブルーチンの詳細は、後述する。
【００７２】
次のステップＳ１４にて、ゲーム制御部１１は、次のフレームで描画すべき各オブジェクト６０の座標を演算する。その演算は、一例として以下のように行われる。まずステップＳ１３の処理結果に基づいて、表示範囲に含まれている各オブジェクト６０を配置すべき各経路Ｗを判別する。次に、各オブジェクト６０に対応した移動方向（到達すべき各基準部５５Ａ、５５Ｂ）及び、各操作時期と現在時刻との時間差に応じて、各基準部５５Ａ、５５Ｂからの時間軸方向（つまり、オブジェクト６０の移動方向）における各オブジェクト６０の位置を判別する。これにより、各経路Ｗ上に各オブジェクト６０を各基準部５５Ａ、５５Ｂから時間軸に沿って配置するために必要な各オブジェクト６０の座標を取得することができる。
【００７３】
次のステップＳ１５において、ゲーム制御部１１は、ステップＳ１４で演算された各オブジェクト６０の座標に基づいて、ゲーム領域５２を描画するために必要な画像データを生成する。具体的には、演算された各座標に各オブジェクト６０が配置されるように画像データを生成する。オブジェクト６０等の画像は、画像データ２７から取得すればよい。続くステップＳ１６にて、ゲーム制御部１１は、表示制御部１２に画像データを出力する。それにより、モニタ８上のゲーム領域５２の表示が更新される。ステップＳ１６の処理を終えると、ゲーム制御部１１は、今回のルーチンを終了する。以上の処理が繰り返し実行されることにより、各オブジェクト６０がゲーム領域５２の所定の位置に出現し、楽曲の進行に合わせて各プレイヤの操作に応じた経路Ｗ上を進み、所定の操作時期に各基準部５５Ａ、５５Ｂに到達するように、オブジェクト６０の表示が制御される。
【００７４】
次に、図１２〜図１４を参照して、経路決定処理ルーチンについて説明する。図１２及び、図１３は、経路決定処理ルーチンのフローチャートの一例を示す図である。このルーチンは、図１１ルーチンのサブルーチンとして、ステップＳ１３にて呼び出されて実行される。図１２及び図１３のルーチンは、各プレイヤの操作結果に応じて各オブジェクト６０を配置すべき経路を決定するための処理である。また、ゲーム制御部１１は、このルーチンを主として切替制御部６５を通じて実行する。
【００７５】
図１２のルーチンを開始すると、ゲーム制御部１１は、まずステップＳ２１において、未処理レコードがあるか否かを判別する。未処理レコードとは、図１１のルーチンのステップＳ１２で取得したシーケンスデータ２８の各レコード、つまり各操作時期のうち処理済みのレコードと設定されていないレコードを意味する。即ち、表示範囲に含まれる各操作時期のうちオブジェクト６０を配置すべき経路Ｗが未だ決定されていない操作時期を意味する。ゲーム制御部１１は、ステップＳ２１が否定的結果の場合、つまり表示範囲の各操作時期に未処理レコードが存在しない場合、今回のルーチンを終了して、図１１のルーチンに戻る。
【００７６】
一方、ゲーム制御部１１は、ステップＳ２１が肯定的結果の場合、つまり未処理のレコードが存在する場合には、ステップＳ２２に進む。ステップＳ２２にて、ゲーム制御部１１は、処理対象の未処理レコードが自機用のレコードか否かを判別する。この判別は、例えば、シーケンスデータ２８に含まれる表示位置指示部２８ｅに基づいて実行される。具体的には、ゲーム制御部１１は、処理対象のレコード、つまり処理対象の操作時期に関連付けられる表示位置指示部２８ｅが“Ｐ１”の場合に自機用レコードと、“Ｐ２”の場合に対戦相手機用のレコードと、それぞれ判別する。この判別結果が肯定的結果の場合、つまり、処理対象のレコードが自機用のレコードの場合、ゲーム制御部１１は、ステップＳ２３に進む。
【００７７】
ステップＳ２３にて、ゲーム制御部１１は、処理対象のレコードに出現位置を指示するレコードとして関連付けられるレコードの操作時期を一定範囲内に含む操作情報が記憶部６３に記憶された各操作情報内にあるか否か判別する。上述のように、シーケンスデータ２８では、出現位置指示部２８ｇを通じて、互いに関連付けられた操作時期が存在する。例えば、これらの関連付けられる各レコードのうち出現位置を指示するレコードを指示レコードと、出現位置が指示されるレコードを被指示レコードと呼ぶ。ステップＳ２３では、処理対象のレコードの指示レコードに対応する操作時期を一定範囲内に含む操作情報があるか否かが判別される。処理対象のレコードに対応するオブジェクト６０には、指示レコードに対応するオブジェクト６０への操作結果が反映されるからである。また、ここでいう一定範囲とは、シーケンスデータ２８に記述されている操作時期に対して、適切な操作が行われたとみなし得る許容範囲として設定された時間的範囲であって、かつ、各基準部５５Ａ（又は５５Ｂ）に対するオブジェクト６０の到達位置（移動目標となる反発点）に対して、そのオブジェクト６０をタッチしたとみなし得る許容範囲として設定された距離的範囲である。この判別結果が肯定的結果の場合、つまり指示レコードの操作時期を一定範囲内に含む操作情報がある場合には、ゲーム制御部１１は、ステップＳ２４に進む。
【００７８】
ステップＳ２４にて、ゲーム制御部１１は、処理対象のレコードに対応するオブジェクト６０を配置すべき経路Ｗを正常経路に決定する。具体的には、正常経路は、次のようにして、操作情報に基づいて決定される。まず、判別した操作情報に基づいてタッチ操作の位置とオブジェクト６０の位置との間の位置関係を判別し、その位置関係に基づいて経路Ｗを決定する。この決定は、上述のように、タッチ操作の位置が図５で示した４つの領域Ｏ、Ｒ、Ｓ及びＬのいずれに属するか、或いはいずれの領域に最も近いかに基づいて経路を決定するものである。各領域Ｏ、Ｒ、Ｓ及びＬと決定される経路の関係は、上述した通りである。そして、正常経路における出現位置は、上述の指示レコードにて指示されている出現位置が採用される。つまり、操作情報に含まれるタッチ操作の位置及び、指示レコードにて指示される出現位置に基づいて、正常経路は決定される。
【００７９】
続くステップＳ２５にて、ゲーム制御部１１は、処理対象のレコード及び、使用した操作情報を処理済み（或いは、使用済み）に設定して、ステップＳ２１の処理に戻る。これにより、指示レコードに対応するオブジェクト６０への操作結果が処理対象のレコードに対応するオブジェクト６０に反映される。
【００８０】
一方、ステップＳ２３の判別結果が否定的結果の場合、つまり指示レコードの操作時期を一定範囲内に含む操作情報がない場合、ゲーム制御部１１は、ステップＳ２６に進む。ステップＳ２６にて、ゲーム制御部１１は、処理対象のレコードに対応するオブジェクト６０を配置すべき経路Ｗをミス経路に決定する。指示レコードの操作時期を一定範囲内に含む操作情報がない場合、指示レコードに対応するオブジェクト６０に対して適切な操作が実行されていないことを意味する。この場合、この処理対象のレコードに対応する指示レコードのオブジェクト６０は、両端部５２Ｕ、５２Ｂのいずれかに到達する。従って、例えば、このような場合のミス経路として、指示レコードのオブジェクト６０が到達した端部５２Ｕ（或いは、５２Ｂ）の位置から最短距離で反対側の基準部５５Ａ（或いは、５５Ｂ）に向かって延びる経路Ｗが採用される。また、この場合、指示レコードのオブジェクト６０が到達した端部５２Ｕ（或いは、５２Ｂ）の位置が、処理対象のレコードに対応するオブジェクト６０の出現位置として利用される。そして、ゲーム制御部１１は、ステップＳ３０の処理を終えると、ステップＳ２５に進む。
【００８１】
更に、ステップＳ２２の判別結果が否定的結果の場合、つまり処理対象のレコードが対戦相手機用のレコードの場合、ゲーム制御部１１は、図１３のステップＳ２７に進む。ステップＳ２７にて、ゲーム制御部１１は、タイムラグを監視するためのサブルーチンを実行する。このサブルーチンの詳細は、後述する。
【００８２】
続くステップＳ２８にて、ゲーム制御部１１は、ステップＳ２７の処理結果を利用して、処理対象の未処理レコードに関連付けられる指示レコードに対応する操作情報にタイムラグが発生しているか否かを判別する。この判別結果が肯定的結果の場合、つまりタイムラグが発生している場合には、ゲーム制御部１１は、ステップＳ２９に進む。
【００８３】
続くステップＳ２９にて、ゲーム制御部１１は、記憶部６３に記憶された各操作情報のうちから所定範囲の操作情報を取得する。この所定範囲は、例えば、処理対象の未処理レコード、つまり処理対象の操作時期に基づいて設定される。具体的には、例えば、処理対象の操作時期に関連付けられる指示レコードから所定数前の他機用の操作時期に対応する操作情報が含まれるように所定範囲は設定される。つまり、所定範囲として、処理対象の未処理レコードに関連付けられる指示レコードから所定数前の他機用の操作時期を基準に、それよりも一定期間前の時期を含む範囲が利用される。なお、処理対象の操作時期を基準に、それ以前の時期を示す一定数の操作情報が所定範囲として設定されてもよい。
【００８４】
続くステップＳ３０にて、ゲーム制御部１１は、処理対象の未処理レコード、つまり処理対象の操作時期の指示レコードから所定数前の他機用の操作時期を特定する。所定数として、例えば、“１”が採用される。つまり、所定数前の他機用の操作時期として、例えば、処理対象の操作時期に関連付けられる指示レコードから一つ前の他機用の操作時期が特定される。次のステップＳ３１にて、ゲーム制御部１１は、ステップＳ３０で特定した操作時期に対応する操作情報がステップＳ２９で取得した各操作情報のなかにあるか否かを判別する。所定数前の他機用の操作時期に対応する操作情報として、所定数前の他機用の操作時期を一定範囲内に含む操作情報が利用される。従って、例えば、一つ前の他機用の操作時期に対応する操作情報として、ステップＳ３１では、一つ前の他機用の操作時期を基準にして、この操作時期を一定範囲内に含む操作情報が判別対象として特定される。そして、ステップＳ３１では、その特定されるべき操作情報がステップＳ２９で取得した各操作情報に含まれているか否かが判別される。この判別結果が肯定的結果の場合、つまり所定数前の他機用の操作時期に対応する操作情報が存在している場合、ゲーム制御部１１は、ステップＳ３２に進む。
【００８５】
ステップＳ３２にて、ゲーム制御部１１は、ステップＳ３１で特定した操作情報が使用済みの操作情報か否かを判別する。使用済みとは、経路Ｗの決定に使用された操作情報を意味する。つまり、図１３のルーチンを通じて、過去に経路Ｗを決定するための操作情報として使用された操作情報を意味する。この判別結果が肯定的結果の場合、つまり、特定した操作情報が既に使用済みである場合、ステップＳ３３に進む。
【００８６】
ステップＳ３３にて、ゲーム制御部１１は、処理対象の操作時期に対応するオブジェクト６０が配置されるべき経路Ｗを所定の経路（及び、所定の出現位置）に決定する。所定の経路及び、所定の出現位置として、例えば、次のような経路Ｗ及び出現位置が採用される。
【００８７】
上述のように、シーケンスデータ２８では、出現位置指示部２８ｇを通じて、互いに関連付けられた各操作時期が存在している。従って、処理対象の操作時期に対する指示レコードも存在する。また、指示レコードに対応するオブジェクト６０は、既に経路Ｗが決定されている（仮に、経路Ｗが決定されていない場合には、ステップＳ３２に戻り、所定数を“１”から“２”等、経路Ｗが決定されているレコードが得られるように変更してよい。また、変更後は、以降のルーチンにて、変更後の所定数を使用すればよい）。そして、所定の経路として、この指示レコードに適用された経路Ｗ上に位置する反発点Ｒ２（或いは、Ｒ１）から反対側の基準部に最短距離で延びる経路Ｗが採用される。また、処理対象の操作時期に対応するオブジェクト６０が出現すべき所定の出現位置として、この反発点Ｒ２（或いは、Ｒ１）が適用される。つまり、ステップＳ３３の処理にて、ゲーム制御部１１は、指示レコードに適用された経路Ｗ上の反発点Ｒ２（或いは、Ｒ１）を未処理レコードに対応するオブジェクト６０の出現位置として決定するとともに、そこから最短距離で延びる経路Ｗを所定の経路として決定する。ステップＳ３３では、一例として、このような所定の経路（及び、所定の出現位置）が対象の未処理レコードに適用すべき経路Ｗ及び、出現位置として決定される。また、この場合の処理対象のレコード、つまり処理対象の操作時期が本発明の直前基準時期として機能する。なお、所定の位置等として、ミス操作の場合と同様の経路等が採用されてもよい。
【００８８】
ステップＳ３３の処理を終えると、ゲーム制御部１１は、図１２のステップＳ２５に戻る。そして、ゲーム制御部１１は、ステップＳ２５にて、上述のような処理を実行する。
【００８９】
一方、ステップＳ３１の判別結果が否定的結果の場合、つまり特定すべき操作情報がない場合には、ゲーム制御部１１は、ステップＳ３４に進む。ステップＳ３１の処理により操作情報がないと判別される場合は、例えば、指示レコードに対応するオブジェクト６０に適切な操作が実行されていない場合である。従って、この場合、ゲーム制御部１１は、ステップＳ３４にて、ステップＳ２６と同様に、処理対象のレコードに対応するオブジェクト６０が配置されるべき経路Ｗをミス経路に決定する。そして、ゲーム制御部１１は、ステップＳ３４の処理を終えると、図１２のステップＳ２５に戻る。
【００９０】
更に、ステップＳ３２の判別結果が否定的結果の場合、つまりステップＳ３１で特定した操作情報が未だ使用されていない場合、ゲーム制御部１１は、ステップＳ３５に進む。ステップＳ３０及びステップＳ３１では、毎回所定数として同じ数が採用される。従って、ステップＳ３２にて特定した操作情報が使用済みと判別される場合は、ステップＳ３３の処理が実行されていないことを意味する。一方、ステップＳ３２にて、特定した操作情報が未だ使用されていないと判別される場合、操作情報の使用に替えて、ステップＳ３３の所定の経路が使用されたこと、つまり、前回までのルーチンで既にタイムラグが発生していることを意味する。
【００９１】
従って、ステップＳ３５にて、ゲーム制御部１１は、処理対象のレコードに対応するオブジェクト６０が配置されるべき経路Ｗをタイムラグ経路に決定する。具体的には、タイムラグ経路として、ステップＳ３１にて特定した操作情報に基づいて決定される経路Ｗを採用する。つまり、特定した操作情報に基づいてタッチ操作の位置とオブジェクト６０の位置との間の位置関係を判別し、その位置関係に基づいて経路Ｗを決定する。この決定は、上述のように、タッチ操作の位置が図５で示した４つの領域Ｏ、Ｒ、Ｓ及びＬのいずれに属するか、或いはいずれの領域に最も近いかに基づいて経路を決定するものである。各領域Ｏ、Ｒ、Ｓ及びＬと決定される経路の関係は、上述した通りである。また、同様に、指示レコードのオブジェクト６０が到達した位置が出現位置として採用される。つまり、経路等の決定は、タイムラグが発生していない場合の正常経路の決定と同様に実行される。相違点は、経路等の決定に使用される操作情報が指示レコード（出現位置指示部２８ｇにて関連付けられる他機用の操作時期）に対応するものではなく、所定数前の他機用の操作時期に対応する操作情報である点である。また、この場合の所定数前の他機用の操作時期が本発明の早い基準時期として機能する。そして、ゲーム制御部１１は、ステップＳ３５の処理を終えると、図１２のステップＳ２５に戻る。
【００９２】
また、ステップＳ２８の判別結果が否定的結果の場合、つまりステップＳ２７の処理の結果、タイムラグが発生していないと判別された場合には、ゲーム制御部１１は、図１２のステップＳ２３に戻る。ステップＳ２７の処理によりタイムラグが発生していないと判別される場合は、制限時間内のその操作情報が取得出来た場合である。この場合、自機用のレコードと同様の処理が可能である。従って、この場合、ゲーム制御部１１は、ステップＳ２３に戻り、上述のようなステップＳ２３以降の処理を実行する。また、タイムラグが発生していないと判別される場合が本発明の所定の回復条件が満たされる場合として機能する。
【００９３】
なお、ステップＳ２５では、ゲーム制御部１１は、今回の処理にて使用した操作情報を使用済みに設定するとともに、所定数前の他機用の操作時期に対応する操作情報を消去する処理を実行してもよい。或いは、所定対象のレコードに対応する操作情報以前の操作情報を一律消去してもよい。図１３のステップＳ２８を経由してステップＳ２５の処理が実行される場合には、タイムラグが発生した後に、そのタイムラグが解消された場合が含まれる。このような場合、記憶部６３に含まれる操作情報に使用されるべきでない未使用の操作情報が残る。上記の処理が実行されることにより、不要な操作情報の誤使用が抑制される。
【００９４】
図１２及び、図１３のルーチンが実行されることにより、自機及び対戦相手のゲーム機に対応する各オブジェクト６０を配置すべき経路Ｗが決定される。また、対戦相手のゲーム機については、タイムラグが発生した場合には、所定の経路が利用され、本来使用すべき操作情報がオブジェクト６０の経路等の決定に使用されない。一方で、タイムラグが既に発生している場合には、例えば、一つ前の操作情報等、所定数ずれた操作情報がオブジェクト６０の経路等の決定に使用される。更に、タイムラグが解消した場合には、本来使用されるべき操作情報が使用され、正常な経路等がオブジェクト６０の経路等として使用される。
【００９５】
次に、タイムラグ監視処理ルーチンについて説明する。図１４は、タイムラグ監視処理ルーチンのフローチャートの一例を示す図である。図１４のルーチンは、図１３のステップＳ２７にて、呼び出されて実行される。また、図１４のルーチンは、適正な操作情報の使用に問題が生じる程度のタイムラグが発生しているか否かを判断するための処理である。そして、ゲーム制御部１１は、このルーチンを主としてタイムラグ監視部６４を通じて実行する。
【００９６】
図１４のルーチンを開始すると、ゲーム制御部１１は、まずステップＳ４１にて、記憶部６３に記憶された対戦相手のゲーム機２の（第２プレイヤの）操作情報を取得する。この取得範囲は、全ての操作情報でもよいし、一部でもよい。一部の場合、処理対象のレコードに対応する指示レコードの操作時期及び、その操作時期から一定範囲の時期が含まれるように実行される。続くステップＳ４２にて、ゲーム制御部１１は、第２プレイヤの操作情報を適切に反映可能な制限時間を算出する。この算出は、例えば、次のようにして実行される。まず、ゲーム制御部１１は、処理対象のレコード、つまり処理対象の操作時期と現在時刻との間の差を算出する。次に、算出した差に基づいて、処理対象の操作時期に対応するオブジェクト６０を基準部５５Ａ（若しくは、５５Ｂ）に出現させるべき出現時期を算出する。そして、算出した出現時期に、予め設定された所定の許容時間（表示に生じ得る時差を許容可能な時間）を加えることにより、制限時間が算出される。なお、制限時間は、予め設定された所定の時間が利用されてもよい。その場合、ステップＳ４２の処理は省略されてもよい。
【００９７】
次のステップＳ４３にて、ゲーム制御部１１は、処理対象のレコードに関連付けられる指示レコードの操作時期を一定範囲内に含む操作情報がステップＳ４１で取得した操作情報内にあるか否かを判別する。この処理は、図１２のルーチンのステップＳ２２等と同様である。そして、この判別結果が肯定的結果の場合、ステップＳ４４に進む。
【００９８】
ステップＳ４４にて、ゲーム制御部１１は、ステップＳ４２の算出結果と操作情報を受信した受信時刻とを比較して、ステップＳ４３で判別した操作情報が制限時間内に受信した情報であるか否か判別する。この判別結果が否定的結果の場合、つまり、操作情報を制限時間内に受信していない場合（所定の時差が生じている場合）には、ゲーム制御部１１は、ステップＳ４５に進む。ステップＳ４５にて、ゲーム制御部１１は、タイムラグ発生情報、つまりタイムラグが発生しているという情報を出力して、図１３のステップＳ２７に戻る。
【００９９】
一方、ステップＳ４４の判別結果が肯定的結果の場合、つまり操作情報を制限時間内に受信している場合（所定の時差が生じていない場合）には、ゲーム制御部１１は、ステップＳ４６に進む。ステップＳ４６にて、ゲーム制御部１１は、タイムラグ未発生情報、つまりタイムラグが発生していないという情報を出力して、図１３のステップＳ２７に戻る。
【０１００】
更に、ステップＳ４３の判別結果が否定的結果の場合、つまり処理対象のレコードに関連付けられる指示レコードの操作時期を一定範囲内に含む操作情報がない場合、ゲーム制御部１１は、ステップＳ４７に進む。ステップＳ４７にて、ゲーム制御部１１は、現在時刻とステップＳ４３で算出した制限時間とに基づいて、制限時間が到来したか否かを判別する。この判別結果が否定的結果の場合、つまり制限時間が到来していない場合には、処理対象のレコードを未処理状態のまま図１２のステップＳ２１に戻り、ゲーム制御部１１は、再度ステップＳ２１以降の処理を実行する。
【０１０１】
一方、ステップＳ４６の判別結果が肯定的結果の場合、つまり制限時間が到来している場合、ゲーム制御部１１は、ステップＳ４５に進み、上述のような処理を実行する。制限時間が到来してもステップＳ４４の判別対象となるべき操作情報が受信出来ていない場合は、タイムラグが発生していると判断できるからである。なお、第２プレイヤが未操作の場合もステップＳ４７にて、肯定的判別結果に該当し得るが、タイムラグ制御により未操作という操作情報は次回のオブジェクト６０に反映される。
【０１０２】
ゲーム制御部１１は、ステップＳ４５或いはステップＳ４６の処理を終えると、図１３のルーチンに戻り、ステップＳ４７の処理結果を利用して、ステップＳ２８の判別を実行する。これにより、適正な操作情報の使用に問題が生じる程度のタイムラグが発生しているか否かの判別が実行され、それの判別結果に基づいて図１３のルーチンが実行される。
【０１０３】
以上に説明したように、この形態によれば、自機が他機とネットワーク５を介して対戦しているときに操作情報の使用に問題が生じるようなタイムラグが発生した場合には、タイムラグ制御が実行される。タイムラグ制御により、タイムラグが発生した場合には、本来使用されるべき第２プレイヤの操作情報に替えて、所定の経路等が使用される。つまり、第２プレイヤの操作情報の受信を不適切な表示が生じるほど待機する必要がない。このため、第２プレイヤの操作情報を反映して自機に表示すべきオブジェクト６０を適切な時間内に表示することができる。これにより、タイムラグによって生じる表示遅れを解消することができる。
【０１０４】
一方、タイムラグにより使用されなかった第２プレイヤの操作情報は、その後所定数遅れてオブジェクト６０の経路等に反映される。つまり、タイムラグが生じても所定数の遅れを挟んで第２プレイヤの操作情報を自機の表示に反映することができる。これにより、タイムラグによる影響を抑制することができるので、対戦ゲームの興趣性を維持することができる。
【０１０５】
なお、タイムラグの影響を解消する手法として、他にも他機の操作情報を取得した後に、その操作情報に応じてオブジェクト６０の位置を補正するという手法も考えられる。この場合、他機の操作情報を適切に使用できるが、取得時期によってはオブジェクト６０の移動速度が速くなりすぎる場合がある。この形態によれば、このような問題も解消可能である。
【０１０６】
更に、タイムラグが解消された場合には、所定数の遅れが解消され、第２プレイヤの操作情報が適切に反映される。つまり、タイムラグが発生しても、それが解消された場合には、適切に操作情報が反映される表示に戻すことができる。これにより、タイムラグによって生じる表示と操作情報との間のずれを最小限に抑えることができる。
【０１０７】
以上の形態において、制御ユニット１０が音声出力制御部１３を通じて楽曲再生手段として機能する。また、制御ユニット１０がゲーム制御部１１を通じて図１１のルーチンを実行することによりゲーム領域提示手段、標識表示制御手段及び、基準時期案内手段として機能する。同様に、制御ユニット１０がゲーム制御部１１を通じて図１２及び図１３のルーチンを実行することにより関係変更手段として機能する。更に、制御ユニット１０がゲーム制御部１１を通じて図１４のルーチンを実行することにより時差判別手段、及び、制限時間算出手段として機能する。一方、外部記憶装置２０がシーケンスデータ２８を記憶することにより、関係情報記憶手段として機能する。
【０１０８】
本発明は上述の形態に限定されず、適宜の形態にて実施することができる。上述の形態では、所定の変更条件として、タイムラグ（所定の時差）が生じている場合が採用されている。また、この判断には、図１４のルーチンが使用されている。しかし、本発明は、このような形態に限定されない。例えば、図１４のルーチンを省略して、予めタイムラグを考慮した所定数が設定されてもよい。つまり、所定の変更条件は、所定の設定が実行されることにより満たされてもよい。また、上述の形態では、図１３のステップＳ３０等、タイムラグ制御にて、使用する操作情報と実際の表示との関係をずらすために、所定数が使用されている。また、この所定数は、例えば、“１”等、予め設定されている。しかし、本発明は、このような形態に限定されない。例えば、図１４に示すタイムラグ監視処理ルーチンの処理結果に基づいて、他機の情報の受信に要した時間から算出する等により、この所定数が決定されてもよい。
【０１０９】
上述の形態では、図１４に示すタイムラグ監視処理ルーチンが図１３のサブルーチンとして、図１３と同じ周期で実行されている。しかし、本発明はこのような形態に限定されない。例えば、タイムラグ監視処理ルーチンは、図１３とは別のルーチンとして、初回の情報の送受信時のみに実行されてもよい。この場合、初回のタイムラグ監視処理ルーチンの判別結果に基づいて、初回のみ図１３のステップＳ３３に示す所定の経路等が使用され、以降の図１３のルーチンでは、毎回所定数ずれた操作情報が使用されてよい。この場合、ステップＳ２８の処理、つまりタイムラグが解消された場合に操作情報と表示との関係を適切に戻す処理は、省略されてもよい。
【０１１０】
上述の形態では、プレイヤのプレイ行為としての操作を入力するためにタッチパネル９が利用されている。しかし、本発明はこのような形態に限定されない。例えば、プレイ行為を入力するための装置として、プレイヤの動作を撮影するカメラ、その撮影結果に基づいてプレイヤの動作を検出する検出手段、及び、検出結果に基づいて、プレイ行為を特定する特定手段を利用する装置が適用されてもよい。従って、プレイ行為は、操作部を操作する行為に限定されない。
【０１１１】
また、ゲーム中には、オブジェクト６０に加えて、その他の操作指示標識が表示されてもよい。このような操作指示標識の一つとして、例えば、所定の表示条件を満たした場合（例えば、所定の操作が実行された場合、所定の得点を獲得した場合、所定のオプションを取得した場合等に満たされる）に特別のオブジェクトが表示されてもよい。そして、他機の特別のオブジェクトへの操作情報が制限時間内に受信できない場合、その操作情報は、自機に次に表示される特別のオブジェクトへの操作情報として使用されてもよいし、時間的に可能であれば、次に自機に表示される通常のオブジェクト６０への操作情報として使用されてもよい。
【０１１２】
上述の各形態では、ゲーム機２は楽曲が再生され、楽曲の演奏時間に基づいて操作指示標識が基準部に向かって移動する音楽ゲーム機として構成されているが、このような構成に限定されるものではない。ゲーム機２では、通信回線を介して複数の端末にて、進行するゲームであって、一方のプレイ行為が他方のゲームの進行に影響を与える各種のゲームを実行可能である。このようなゲームとして、例えば、その他にもロールプレイングゲーム、アクションゲーム、スポーツゲーム、シューティングゲーム等が適用されてよい。更に、本発明のゲーム機は、商業施設に設置される業務用ゲーム機、家庭用の据置型ゲーム機、携帯型のゲーム機等、適宜の形態で実現されてよい。
【符号の説明】
【０１１３】
１  ゲームシステム
２  ゲーム機
５  ネットワーク（通信回線）
８  モニタ（表示装置）
９  タッチパネル（入力装置、操作部）
１０  制御ユニット（コンピュータ、基準時期案内手段、関係変更手段、時差判別手段、制限時間算出手段、ゲーム領域提示手段、標識表示制御手段）
１４  スピーカ（音声出力装置）
２０  外部記憶装置（関係情報記憶手段、楽曲データ記憶手段）   
２１  ゲームプログラム
２２  ゲームデータ
２５  楽曲データ
２８  シーケンスデータ
５０  ゲーム画面
５２  ゲーム領域
６０  オブジェクト（操作指示標識）
２８ｇ  出現位置指示部（関係情報）
５５Ａ  第１基準部（操作部）
５５Ｂ  第２基準部（操作部）
Ｗ  経路（移動経路）
【図１】
0005290384.tif 000002
【図２】
0005290384.tif 000003
【図３】
0005290384.tif 000004
【図４】
0005290384.tif 000005
【図５】
0005290384.tif 000006
【図６】
0005290384.tif 000007
【図７】
0005290384.tif 000008
【図８】
0005290384.tif 000009
【図９】
0005290384.tif 000010
【図１０】
0005290384.tif 000011
【図１１】
0005290384.tif 000012
【図１２】
0005290384.tif 000013
【図１３】
0005290384.tif 000014
【図１４】
0005290384.tif 000015