本発明を適用した実施形態として、音楽ゲームを実行する業務用ゲーム装置の例について説明する。
図1は、本実施形態における業務用ゲーム装置の構成の一例を示す斜視外観図である。図2は、本実施形態における業務用ゲーム装置の右側面図である。ただし、構造を理解し易いように右スピーカユニットの支持構造の図示を省略している。
本実施形態の業務用ゲーム装置1400は、タッチ操作を用いて音楽ゲームを楽しむためのビデオゲーム装置としてデザインされている。業務用ゲーム装置1400は、1)画面表示およびプレーヤが操作を行うデバイスを具備する基部1401と、2)プレーヤから見て基部1401の背部から上方へ設けられた立設背部1402と、3)当該立設背部から操作ポジションにあるプレーヤ9(図2参照)の頭部付近へ向けて延設されたスピーカユニット支持部1406R,1406Lと、を備える。
スピーカユニット支持部1406R,1406Lは、上面視略U字型または略コの字型を有し、凹部の底にあたる内側部で立設背部1402の背面に固定されている。スピーカユニット支持部1406R,1406Lの上下方向(高さ方向)の幅は、想定される平均的なプレーヤの頭部の高さ方向の幅(上下方向の幅)よりも大きく設定されている。そして、スピーカユニット支持部1406R,1406Lは、それぞれ音出力面がプレーヤの頭部に向けて配置された右スピーカユニット1408Rおよび左スピーカユニット1408Lを備える。
基部1401は、主たる筐体部であって、画面表示部と操作入力部とを兼ねるタッチパネル1420と、操作中のプレーヤが体をもたれ掛けることのできる身体支持部1422と、プレイ対価の支払いをするための対価支払装置1424と、ウーハー(Woofer)1426と、制御基板1450とを備える。
身体支持部1422は、操作中のプレーヤ9が腹部を当てて体の重さを部分的に支持させることができるように設定されている。具体的には、身体支持部1422は、基部1401の前端部、詳しくはタッチパネル1420の前方下端付近に固定されており、プレーヤ9が当接する面が凸の曲面を成しており、更に体の重さを掛けても負担とならないように適当な弾性材で覆われている。身体支持部1422の下方には、プレーヤ9が立ったときにつま先を納めることのできる空間が確保される。
対価支払装置1424は、ゲームプレイの対価を支払うための装置である。硬貨投入装置や、プリペイドカードや電子マネー機能を備えたプレーヤカードなどのリーダーライターなどにより実現される。ここで言う、プレーヤカードは、予めプレーヤ登録手続きを経ることで発行される記憶媒体を備えたカード型のプレーヤ識別情報担持媒体であって、プレーヤのアカウントなどの各種登録情報を書き換え可能に記憶しており、例えばNFC(Near Field Communication:近距離無線通信)を利用したNFCリーダーライターによりデータの読み出し及び書き込みがなされる。尚、プレーヤカードは、NFCに対応してデータを保存できる装置、例えばスマートフォンや携帯型ゲーム装置といった携帯型情報端末であってもよい。ゲームプレイの対価支払いは、プレーヤカードに記憶されているプリペイドポイントの消費などにより代替することができる。
ウーハー1426は、低音域を担当する第3のスピーカユニットである。ウーハー1426は、プレーヤ9の下半身、具体的には足下に向けて設置されており、重低音をプレーヤの下半身に向けて放音することができる。
制御基板1450には、CPU(Central Processing Unit)1451やGPU(Graph
ics Processing Unit)、DSP(Digital Signal Processor)などの各種マイクロプロセッサ、ASIC(Application Specific Integrated Circuit)、VRAMやRAM,ROM等の各種ICメモリ1452、通信回線Nに接続するための通信装置1453、タッチパネル1420のドライバIC1454、I/F(Interface)コントロールIC1457等が搭載されている。
I/FコントロールIC1457は、例えば、スピーカユニット1408R,1408Lへ音声信号を出力する出力アンプ回路や、対価支払装置1424への信号入出力回路などを搭載し、CPU1451と各種デバイスとの信号の入出力を制御する。制御基板1450に搭載されているこれらの要素は、バス回路などを介して電気的に接続され、データの読み書きや信号の送受信が可能に接続されている。
通信回線Nは、データ通信が可能な通信路を意味する。すなわち、通信回線Nとは、直接接続のための専用線(専用ケーブル)やイーサネット(登録商標)等によるLAN(Local Area Network)の他、電話通信網やケーブル網、インターネット等の通信網を含む意味であり、また、通信方法については有線/無線を問わない。
そして、制御基板1450は、ICメモリ1452に記憶されたプログラムを読み出して実行して、各種のデータや操作入力に基づいて演算処理することによって、業務用ゲーム装置1400を統合的に制御して本実施形態のゲームの進行制御をする。尚、プログラムやデータは、予めICメモリ1452に記憶されているとしてもよいし、外部のサーバから通信回線Nを介してダウンロードするとしてもよい。
また、本実施形態の業務用ゲーム装置1400は、立設背部1402に第1の発光部1411、基部1401のタッチパネル1420の上部に第2の発光部1412、右スピーカユニット1408Rの周囲及び左スピーカユニット1408Lの周囲に第3の発光部1413R、1413Lを備える。第1の発光部1411、第2の発光部1412、第3の発光部1413R、1413Lは、複数のLEDからなり、例えば、赤色LED、青色LED、緑色LEDが複数配置されている。第1の発光部1411、第2の発光部1412、第3の発光部1413R、1413Lの各LEDの発光は、基部1401によって個別に点灯制御される。本実施形態では赤色、青色、緑色の発光を組み合わせて多種類の色による発光を制御する。また、発光素子はLEDに限らず、ELや液晶パネル、電球、陰極線管などその他の素子でも良い。
[ゲーム内容についての説明]
図3は、本実施形態におけるゲーム画面W2の例を示す図である。ゲーム画面W2は、タッチパネル1420に表示される。本実施形態の音楽ゲームでは、プレイする音楽の再生とともに、そのリズムに合わせて基準線4に沿って画面に次々にマーカ6が表示される。これがいわゆる「譜面」に当たる。プレーヤは、放音される音楽のリズムに合わせて表示されたマーカ6をめがけてタッチパネル1420へタッチ操作してプレイする。
基準線4は、所定期間の間のマーカ6が配置されてゆく方向性を定義するが、プレーヤには見えない非表示の線である。例えば、直線や曲線、閉ループ、ジグザグなどの組み合わせで定義される。
マーカ6は、基準線4に沿って次々に出現・消滅するように表示される。図3では、基準線4が2本の例を示しているが、基準線4の数は適宜設定可能である。プレイする音楽の最初から最後まで1本でも良いし複数本でもよい。曲の途中で増減するとしてもよい。基準線4の数やその定義により、画面の左右で同時に複数のマーカ6が表示されるケースや、画面の左右で交互にマーカ6が次々に表示されるケースもあり得る。タッチパネル1
420の大きな画面サイズと相まって、同時に片手でタッチ操作が不可能な位置に複数のマーカ6が表示されるケースもある。加えて、基準線4がプレーヤには見えない上に、不規則に蛇行や折り返しをするので、マーカ6はあたかも画面の不特定位置から不特定方向に離散的に次々に表示されるように見える。
なお、マーカ6は、必ずしも基準線4の直上に表示される場合に限らず、基準線4からの距離(例えば、ゲーム難易度等に応じてランダムに決定される距離)が適宜与えられて、基準線4から少し離れた位置に出現するとしてもよい。
図4は、本実施形態におけるマーカ6の表示遷移例を示す図である。マーカ6は、小円状の第1構成要素61と、第1構成要素61がその内側に納まるサイズの環状の第2構成要素62と、当該マーカの出現を予告する第3構成要素63とを有する。
マーカ6は、それぞれに予め設定されている判定基準タイミングT0から所定時間前に出現するように表示制御される。そして、第1構成要素61が第2構成要素62の外側から内側へ飛び込むようにアニメーション表示されて、一緒に消される。
判定基準タイミングT0は、プレーヤが当該マーカへ向けてタッチパネル1420をタッチ操作するべき目標タイミングであって、第1構成要素61が第2構成要素62の内側に丁度納まるタイミングとされる。スピーカユニットから放音されるプレイ曲の音楽上では、丁度判定基準タイミングT0に、メロディーやベースラインなどの拍が放音されることになる。よって、プレーヤは音楽のリズムに合わせて第1構成要素61が第2構成要素62の内側に丁度納まるタイミングに合わせて操作入力すれば、あたかも仮想的に音楽を演奏操作しているかのような快感が得られる。これが、ゲームの大きな魅力である。
判定基準タイミングT0から所定時間前、より具体的には判定基準タイミングT0で放音される拍長の整数倍に相当する時間前を、表示開始タイミングTsとする。
プレイ開始から計時されるプレイ時間が表示開始タイミングTsに達すると、基準線4とプレイ開始からの経過時間等に基づいて、判定基準位置Pi(タッチ操作するべき位置:図中の小黒丸)が決定され、当該位置を基点として第3構成要素63が表示される(図4(1))。
第3構成要素63は、あたかもそこにスポットライトが一時当てられたかのように見せる演出効果を狙って表示制御される。本実施形態では、第3構成要素63として白色円形体が設定されており、円の中心を判定基準位置Piに合わせて、表示開始タイミングTsから略1秒程度でフェードイン表示される。そして、更にプレイ時間が消滅開始タイミングTbに到達すると消えるようにフェードアウト表示される(図4(2))。
第2構成要素62は、第3構成要素63の消滅と入れ換わるように出現表示される。本実施形態では、プレイ時間が消滅開始タイミングTbに達すると、判定基準位置Piを環の中心に合わせて出現表示される。
第1構成要素61は、第2構成要素62から所定時間(例えば、当該マーカが対応する判定基準タイミングT0で放音される音の拍分)だけ経過した移動開始タイミングTmに、第2構成要素の脇に、初期表示位置Pf(図中の小白丸)に出現表示される(図4(3))。
そして、移動開始タイミングTmから判定基準タイミングT0の間で、第1構成要素61が第2構成要素62の内側に飛び込むように見せるマーカアニメーションが表示される(図4(3)〜(7))。
マーカアニメーションでは、第1構成要素61の初期表示位置Pfを始点KF1、判定基準位置Piを終点KF9の各キーフレームとして軌道7に沿って新たな移動目標位置KF2〜KF8がコマ割りされ、それらキーフレームおよび移動目標位置を用いて第1構成要素61が移動表示される。
軌道7は、第1構成要素61がプレーヤ9の視点に向けて飛び上がり、第2構成要素62内に落下するかのような印象を与えるように設定される。
コマ割りは、移動開始タイミングTmから判定基準タイミングT0の間を、軌道7の頂点(初期表示位置Pfと判定基準位置Piとの等距離線と軌道7の交差点)に近づくほど間隔が密で、軌道7の始点及び終点に近づくほど間隔が粗となるように設定される。このコマ割りの仕方も、第1構成要素61がプレーヤ9の視点に向けて飛び上がり第2構成要素62内に落下するかのように見せる要素となっている。
また、第1構成要素61がプレーヤ9の視点に向けて飛び上がり第2構成要素62内に落下するかのように見せる別要素として、移動表示中の第1構成要素61の表示サイズと輪郭のぼかし度合の調整制御が挙げられる。
具体的には、移動表示される第1構成要素61の表示サイズと輪郭のぼかし度合が、軌道7の始点から頂点に向けて徐々に大きくなるように調整され、頂点付近でピークを迎え、頂点から終点に向けて徐々に小さくなるように調整される。これにより、プレーヤ9の視点に位置する撮影カメラに近づいて再び遠く成る過程で、大きくなりつつピントがずれて“ピンぼけ”になり、再び小さくなりつつピントが合ってくるよう見せることができる。
こうしたマーカアニメーションにおける表示サイズの調整の元になる「初期表示サイズ」は、マーカ6に対応付けられる音の長さ(対応する判定基準タイミングの拍で放音される音の長さ:音符種類に相当)に応じて決定される表示倍率と、ゲームの難易度設定に応じて決定される表示倍率とによって可変する。つまり、マーカ6は、対応する音の長さとゲーム難易度に応じた大きさで表示される。
本実施形態では、対応する判定基準タイミングで放音される音の長さが長くなるほど「音符基準表示倍率」が大きくなるように設定され、マーカ6のそもそもの表示サイズに音符基準表示倍率が乗算されてマーカ6の初期表示サイズが決定される。
本実施形態では、ゲーム難易度が高くなるほど「難易度基準表示倍率」が小さくなるように設定され、マーカ6のそもそもの表示サイズに難易度基準表示倍率が乗算されて、マーカ6の初期表示サイズが決定する。
また、本実施形態ではマーカ6のゲーム画面における表示位置の相対関係、すなわち対応する判定基準位置Piの相対関係によって、第1構成要素61と第2構成要素62との相対位置関係が決まる。
また、操作入力の評価結果を示す評価表示体3(図3参照)も、第1構成要素61と第2構成要素62の相対位置関係に基づいて、対応するマーカ6(第2構成要素62)の周囲に表示される。例えば、初期状態において第1構成要素61が第2構成要素62の左側に位置する関係の場合には、第2構成要素62の左側の周囲位置に評価表示体3を表示し、右側に位置する関係の場合には、第2構成要素62の右側の周囲位置に評価表示体3を表示する。
[入力評価の説明]
本実施形態では、次のようにプレーヤの入力評価を行う。例えば、本実施形態では、タッチ操作が検出されると、当該タッチ操作のタイミングを操作入力タイミングとし、判定基準タイミングが現在の経過時間に最も近いマーカIDを検索する。そして、当該IDに対応するマーカ6に対応づけられている判定基準タイミングとの時間差(時間的なズレ)に基づいて操作入力を評価する。例えば、本実施形態では、時間差が小さいほど高評価とする。
また、本実施形態では、判定基準タイミングと入力タイミングとの時間差を評価する場合には、当該判定基準タイミングから前後に時間差幅を複数設け、時間差幅毎に評価を割り当てておいて、該当する時間差幅の評価を読み出すようにしてもよい。
本実施形態の評価処理について、図5を用いて具体的に説明すると、判定基準タイミングにおいて、所定期間を設ける。そして、この所定期間を更に3つの評価段階に応じた期間t1〜t3に分け、プレーヤの入力タイミングが、期間t1〜t3のうちいずれの期間に属するのかを判定し、判定結果に基づきプレーヤの入力評価を行っている。
より詳しく説明すると、図5に示すように、期間t1は、判定基準タイミングT0と同一、及び、ほぼ一致している期間であり、例えば判定基準タイミングT0を基準とする前後t1期間に設定している。また、期間t2は、判定基準タイミングT0時点を基準とする前後(t1+t2)期間(ただし、t1期間を除く)に設定している。また、期間t3は、例えば、判定基準タイミングT0時点を基準とする前後(t1+t2+t3)期間(ただし、t1、t2期間を除く)に設定している。
例えば、判定基準タイミングT0について、期間t1において、プレーヤの入力タイミングを取得した場合には、判定基準タイミングT0のプレーヤの入力を「Perfect」と評価する。また、期間t2において、プレーヤの入力タイミングを取得した場合には、判定基準タイミングT0のプレーヤの入力を「Great」と評価する。また、期間t3において、プレーヤの入力タイミングを取得した場合には、判定基準タイミングT0のプレーヤの入力を「Good」と評価する。また、所定期間以外において、プレーヤの入力タイミングを取得した場合、或いは、所定期間にプレーヤの入力を取得しなかった場合には、判定基準タイミングT0のプレーヤの入力を「Bad」と評価する。なお、本実施形態では、プレーヤの入力が早すぎて「Bad」の場合は「Fast」と評価し、プレーヤの入力が遅すぎて「Bad」の場合は「Slow」と評価する。
本実施形態では、プレーヤの入力タイミングが「Perfect」、「Great」又は「Good」である場合に、プレーヤの入力タイミングが成功であると判定し、プレーヤの入力タイミングが「Bad(Fast又はSlow)」の場合はプレーヤの入力タイミングが失敗であると判定している。
また、本実施形態では、タッチ操作が検出され、判定基準タイミングが現在の経過時間に最も近いマーカIDを検索すると、当該IDに対応するマーカ6の判定基準位置Piと操作入力位置(タッチ操作検出位置)Qiとのズレ量に基づいて操作入力を評価する。例えば、本実施形態では、ズレ量が小さいほど高評価とする。
例えば、図6に示すように、判定基準位置Piとプレーヤの操作入力位置Qiとの距離をズレ量とし、当該ズレ量が所定距離以内であれば、プレーヤの入力位置が成功であると判定し、当該ズレ量が所定距離以上であればプレーヤの入力位置が失敗であると判定する。
なお、本実施形態では、プレーヤの入力(操作入力タイミングと操作入力位置)に基づく評価に応じた点を、プレーヤの個人得点(成績データ609)に加算する。
また、本実施形態では、図3に示すように、操作入力の評価結果を示す評価表示体3を、対応するマーカ6(第2構成要素62)の周囲に表示する。図3の例では、判定基準タイミングと、操作入力タイミングとの時間差に基づく入力評価の例であり、マーカ6の判定基準位置Piとプレーヤの操作入力位置Qiとのズレ量に基づく入力評価の表示は、例えば、色によって入力評価を識別表示すようにしてもよい。
例えば、マーカ6の判定基準位置Piとプレーヤの操作入力位置Qiとのズレ量が所定距離以内で入力が成功である場合には、青色でプレーヤの操作入力位置Qiを表示する。一方、マーカ6の判定基準位置Piとプレーヤの操作入力位置Qiとのズレ量が所定距離以上で入力が失敗である場合には、赤色でプレーヤの操作入力位置Qiを表示する。
なお、本実施形態では、図6に示すように、判定基準タイミングで表示するマーカの判定基準位置Piとプレーヤの操作入力位置Qiとの距離であるズレ量が所定距離以内であれば、プレーヤの入力を成功と判定し、当該ズレ量が所定距離以上であれば、プレーヤの入力を失敗と判定する。
本実施形態では、マーカ6の判定基準タイミングに対して(A)プレーヤの入力タイミングと判定基準タイミングの時間差に基づく、入力の成功・失敗の判定と、(B)マーカ6の判定基準位置とプレーヤの操作入力位置との位置差に基づく、入力の成功・失敗の判定の2種類の判定のうち、(A)及び(B)の両方で成功と判定した場合に、プレーヤのマーカ6に対する入力を成功と判定しているが、(A)、(B)のいずれか一方で成功と判定した場合に、プレーヤのマーカ6に対する入力を成功と判定してもよい。
また、本実施形態では、図7に示すように、複数種類のマーカ6を用いてもよい。いずれの種類のマーカも判定基準位置や判定基準タイミングを示すマーカではあるが、プレーヤがタッチ時間(長押し時間)を要するマーカ、方向や軌跡を指示するマーカなどがある。
例えば、「TOUCH」のマーカ6は、判定基準位置及び判定基準タイミングを指示するマーカであり、上述したように、プレーヤの操作入力タイミングと判定基準タイミングとに基づく評価が成功であり、プレーヤの操作入力位置と判定基準位置とに基づく評価が成功である場合に、「TOUCH」のマーカ6に対する入力が成功であると判定する。
また、「SWIPE」のマーカ6は、プレーヤに判定基準位置、判定基準タイミング及び画面に指が触れられた状態で滑らせる方向(判定基準方向)を指示するマーカである。「SWIPE」マーカは始点となる構成要素64と終点となる構成要素65に基づき判定基準方向を指示する。プレーヤの操作入力タイミングと判定基準タイミングとに基づく評価が成功であり、プレーヤの操作入力位置と判定基準位置とに基づく評価が成功であり、更に、タッチ方向(操作入力方向)が判定基準方向である場合に、「SWIPE」のマーカ6に対する入力が成功であると判定する。
また、「HOLD」のマーカ6は、プレーヤに判定基準位置と、画面に指が触れられた状態を維持する期間(判定基準期間)とを指示するマーカである。つまり、「HOLD」のマーカ6は、判定基準位置と、接触開始の判定基準タイミング及び接触終了の判定基準タイミング(リリースタイミング)を指示する。接触開始の判定基準タイミングに環状の構成要素69を表示制御し、接触終了の判定基準タイミングにゲージが最大値になるよう
に、ゲージを増加させて表示制御する。
そして、プレーヤの操作入力タイミングと接触開始の判定基準タイミングとに基づく評価が成功であり、プレーヤの操作入力位置と判定基準位置とに基づく評価が成功であり、更に、プレーヤのタッチが検出されなくなるタイミング(リリースタイミング)と接触終了の判定基準タイミングに基づく評価が成功である場合に、「HOLD」のマーカ6に対する入力が成功であると判定する。
また、「MOVE」マーカ6は、プレーヤに判定基準位置と、画面に指が触れられた状態を維持する期間(判定基準期間)と、画面に指が触れられた状態における移動経路(判定移動経路)を指示するマーカである。つまり、「MOVE」のマーカ6は、移動開始(接触開始)の判定基準位置と、移動開始(接触開始)の判定基準タイミング及び移動終了(接触終了)の判定基準タイミング(リリースタイミング)と、移動終了の判定基準位置と、判定移動経路とを指示する。なお、「MOVE」マーカ6は、判定移動経路を指示しないものであってもよい(プレーヤが自由に移動軌跡を決めるように制御してもよい)。
そして、プレーヤの操作入力開始タイミングと接触開始の判定基準タイミングとに基づく評価が成功、プレーヤの操作入力終了タイミングと接触終了の判定基準タイミングとに基づく評価が成功であり、プレーヤの入力軌跡と判定移動経路とに基づく評価が成功である場合に、「MOVE」のマーカ6に対する入力が成功であると判定する。
[リカバー制御の概要]
本実施形態では、複数のプレーヤが同じ音楽ゲームで同期してゲームプレイする場合に、一のプレーヤが入力に失敗した場合に、その失敗に応じて他のプレーヤにリカバーの指示を行い、当該他のプレーヤがリカバーの指示入力に成功した場合に、一のプレーヤの入力失敗をリカバー(回復)する制御を行う。これにより、複数のプレーヤが、互いに相手をサポートし一体感をもってゲームプレイすることができる。
ここで、リカバー制御は、一のプレーヤの入力失敗を回復させるために、他のプレーヤにリカバーの指示を行う制御や、リカバーの指示に対して他のプレーヤの入力が成功したときに当該一のプレーヤの入力失敗を回復させる処理等である。
また、本実施形態のリカバー制御は、相手プレーヤの入力ミスをサポートすることが目的となる。したがって、本実施形態では、リカバーする側のプレーヤは簡易にサポートできるよう、リカバーの内容が難しくなるのではなく簡易になるように種々の制御を行っている。
[リカバーの指示内容の説明]
本実施形態では、ゲーム開始後、所定期間内に複数のプレーヤのうち少なくとも一人の判定基準タイミングを示すマーカに対する入力の失敗内容の集計を行う。例えば、図8に示すように、プレーヤP1、P2で同じタイミングでゲームを開始してゲームプレイする場合において、各プレーヤP1、P2の失敗内容を小節単位で集計する。
図8は、1小節目において、プレーヤP1が判定基準タイミングT2に対応するマーカ6−0の入力に失敗した例を示す。つまり、プレーヤP1が、マーカ6−0に対応する判定基準タイミングと入力タイミングとの時間差に基づく入力が失敗した場合(「Bad(Fast又はSlow)」の場合)や、マーカ6−0に対応する判定基準位置と操作入力位置との位置差に基づく入力に失敗した場合である。
そして、本実施形態では、失敗内容の集計結果に基づき、入力の失敗を回復させるため
のリカバーの指示を、入力に失敗したプレーヤP1とは異なるプレーヤP2に対して行う。
リカバーの指示内容は入力の失敗内容に基づいて行う。ここで、「リカバーの指示内容」は、リカバー用のマーカの種類、数、判定基準位置、判定基準タイミング、リカバーの指示を行う期間等を含む。
例えば、プレーヤP1が判定基準タイミングT2で1つのマーカ6−0の入力に失敗した場合、プレーヤP2の譜面データに新たにリカバー用の判定基準タイミングR1に対応するリカバー用マーカ6−Aを1つ発生させる処理を行う。プレーヤP2は、マーカ6−Aの入力に成功すれば、プレーヤP1の入力の失敗をリカバーすることができる。
つまり、1小節の期間におけるプレーヤP1の入力の失敗内容が、「TOUCH」マーカ1つの失敗である場合には、当該失敗についてプレーヤP2に対しリカバーで指示する内容は、リカバー用のマーカの種類を同じ種類の「TOUCH」マーカにし、リカバー用のマーカの個数を失敗したマーカ数と同数にする。
また、本実施形態では、プレーヤP2が入力に失敗したときの指示内容よりも、リカバーの指示内容が簡易になるように制御してもよい。例えば、1小節の期間におけるプレーヤP1の入力の失敗内容が、「TOUCH」マーカ2つの失敗である場合には、当該失敗についてプレーヤP2に対するリカバーの指示内容は、リカバー用のマーカの種類を異なる種類の「SWIPE」マーカにし、個数を1つにしてもよい。また、1小節の期間におけるプレーヤP1の入力の失敗内容が、「TOUCH」マーカ2つの失敗である場合には、当該失敗についてプレーヤP2に対するリカバーの指示内容は、リカバー用のマーカの種類を同じ種類の「TOUCH」マーカにし、個数を1つにしてもよい。リカバー用のマーカの個数を失敗したマーカ数よりも少なくすれば、プレーヤP2は簡易にリカバーすることができる。
なお、本実施形態で、図8に示すように、失敗した小節から1小節分の期間を空けてリカバー用のマーカを発生させている。その理由は、判定基準タイミングから所定時間前(例えば、2拍前)に表示されるマーカの第3構成要素63の表示期間を確保するためである。本実施形態では、失敗したマーカの小節から1小節分の期間を空けてリカバー用のマーカを発生させているが、失敗したマーカの判定基準タイミングからリカバー用のマーカの判定基準タイミングまでの期間が、リカバー用のマーカの表示期間以上となるように制御すればよい。
また、本実施形態では、1小節分の入力に失敗内容を、複数の小節に分散してリカバー用のマーカを発生させるようにしてもよい。
また、本実施形態では、所定期間(例えば、1小節の期間)においてリカバーの対象となる入力失敗の数や種類に制限を設けてもよい。例えば、1小節においてリカバーできる範囲は、「TOUCH」の入力失敗は5個を上限とし、「SWIPE」の入力失敗は2個を上限とし、「HOLD」「MOVE」の入力失敗は1個を上限とする。このようにすれば、リカバーするプレーヤの負担を減らすことができる。
また、本実施形態では、所定期間(例えば、1小節の期間)においてリカバー用のマーカを発生させる数や種類に制限を設けてもよい。例えば、1小節において、「TOUCH」のリカバー用のマーカは5個を上限とし、「SWIPE」のリカバー用マーカは2個を上限とし、「HOLD」「MOVE」のリカバー用マーカは1個を上限としてもよい。また1小節においてリカバー用のマーカを発生させる種類の数を2種類に制限してもよい。
このようにすれば、リカバーする側のプレーヤの負担を減らすことができる。
また、本実施形態では、予め音楽リズム等を考慮してゲームの進行に応じて判定基準タイミングを定義した譜面データを用意しているが、リカバー用のマーカを発生させる判定基準タイミングを予め定義した譜面データを用意してもよい。つまり、音楽の流れに沿って、リカバーするプレーヤがタッチしやすいタイミングを考慮して、リカバー用のマーカの種類や個数に応じたリカバー用の判定基準タイミングを予め決め、当該リカバー用の判定基準タイミングにリカバー用のマーカを発生させるような譜面データを用意する。例えば、本実施形態では、図8に示すようにプレーヤP1が第1小節目の入力に失敗した場合には、プレーヤP2の譜面データを第3小節目においてリカバー用の譜面データに切り替えるように制御する。そして、第4小節目に通常の譜面データに戻す処理を行う。リカバー用の譜面データは複数用意してもよい。例えば、一の曲データにつき、難易度やレベル等に応じた複数種類のリカバー用の譜面データを用意してもよい。
図9は、3、4小節目(図8に示す3、4小節目)において、プレーヤP2のゲーム画面W9に表示されるマーカの一例を示す。例えば、ゲーム画面W9には、判定基準タイミングT4に対応するマーカ6−1、判定基準タイミングT5に対応するマーカ6−2、判定基準タイミングT6に対応するマーカ6−3に加えて、新たにリカバー用の判定基準タイミングR1に対応するマーカ6−Aが表示される。
本実施形態では、マーカの表示位置は、音楽の拍に対応して決めている。例えば、ゲーム画面W9において、1拍分の期間を長さLで表示し、拍や基準線に応じてリカバー用の判定基準タイミングに対応するマーカ6−Aを配置する。このようにすれば、音楽ゲームの流れに沿って自然にマーカ6−Aが表示されるので、プレーヤP2は簡易にマーカ6−Aの入力を行うことができる。
また、本実施形態では、リカバーする側のプレーヤP2の譜面データに既に存在する判定基準タイミングと同一のタイミングに、判定基準位置が異なる新たなマーカを発生させるリカバー制御を行うようにしてもよい。
例えば、図10に示すように、プレーヤP1が判定基準タイミングT2のマーカ6−0の入力に失敗した場合、プレーヤP2がこの失敗をリカバーできるようするために、プレーヤP2の譜面データのマーカ6−2の判定基準タイミングT5と同じタイミングに、新たなマーカ6−Bを発生させる。プレーヤP2は、マーカ6−Bの入力に成功すれば、プレーヤP1の入力の失敗をリカバーすることができる。
図11は、3、4小節目(図10に示す3、4小節目)において、プレーヤP2のゲーム画面W11に表示されるマーカの一例を示す。例えば、ゲーム画面W10には、判定基準タイミングT4に対応するマーカ6−1、判定基準タイミングT5に対応するマーカ6−2、判定基準タイミングT6に対応するマーカ6−3に加えて、判定基準タイミングT5に追加された新たなマーカ6−Bが表示される。例えば、判定基準タイミングT5に対応するマーカは2つであるので、基準線4から等間隔の位置にマーカ6−2、6−Bを配置し、例えば、プレーヤP2が2本の指を使って同時にタッチできるように表示する。
[失敗内容を数値化し、リカバーの指示内容を決定する手法の説明]
本実施形態では、プレーヤの入力失敗内容を集計し、集計結果に基づいてプレーヤの入力内容を数値化し、リカバーの指示内容を決定するようにしてもよい。例えば、プレーヤ毎にポイント値を設定し、ポイント値に基づきリカバー制御を行う。
具体的に説明すると、図12に示すように、まず、予めマーカの種類それぞれに値を設
定する。つまり、「TOUCH」のマーカは「1」、「SWIPE」のマーカは「2」、「HOLD」のマーカは「3」、「MOVE」のマーカは「4」に値を設定する。
そして、ゲーム開始時に各プレーヤのポイント値を初期値(0)に設定する。そして、プレーヤ毎に、入力に失敗したマーカの種類に対応する値をポイント値に加算する。例えば、図13に示すように、第N小節目においてプレーヤP1が「TOUCH」のマーカに3回失敗した場合、プレーヤP1のポイント値は3に決定される。つまり、プレーヤP1が第N小節目において3ポイントの失敗を行ったと判定され、第N+1小節目を空けて第N+2小節目においてプレーヤP2の譜面データに3ポイントのリカバー用のマーカを発生させる処理を行う。このようにして、小節単位で順次、プレーヤの失敗を集計し、失敗に応じたポイント値に応じたリカバー用のマーカを決定し、リカバー用のマーカを発生させる処理を行う。
例えば、第N小節目でプレーヤP1が入力に失敗した3ポイントは、第N+2小節目で「TOUCH」のリカバー用のマーカを3つ発生させてもよいし、第N+2小節目で「TOUCH」のリカバー用のマーカを1つ及び「SWIPE」のリカバー用のマーカを1つ発生させてもよいし、第N+2小節目で「HOLD」のリカバー用のマーカを1つ発生させてもよい。つまり、本実施形態では、入力の失敗内容に基づいて、リカバー用のマーカを決定すればよい。また、上述したように失敗したマーカが「TOUCH」のマーカであっても、リカバー用のマーカは「HOLD」などの異なるマーカにしてもよい。
また、失敗分のポイント値が3である場合に、リカバー用のポイントは少なくとも3ポイント有していればよく、3ポイント以下であってもよい。つまり、第N小節目の失敗分のポイント値がx1であり、第N+2小節目のリカバー用のポイント値x2である場合には、リカバー用のポイント値x2が失敗分のポイント値x1以下(x1≧x2)であればよい。
また、本実施形態では、1小節分の入力に失敗したポイント値を複数の小節に分散してリカバー用のマーカを発生させるようにしてもよい。例えば、図14に示すように、第N小節目においてプレーヤP1が「TOUCH」のマーカに3回失敗した場合、つまり、プレーヤP1が第N小節目において3ポイントの失敗を行った場合には、第N+2小節目、第N+3小節目、第N+4小節目それぞれにおいて、プレーヤP2の譜面データに1ポイントのリカバー用のマーカを発生させる処理を行う。
また、本実施形態では、複数の小節において入力に失敗した分のポイント値に基づいて、1又は複数の小節にリカバー用のマーカを発生させるようにしてもよい。例えば、図15に示すように、第N小節目及び第N+1小節目においてプレーヤP1が「TOUCH」のマーカに3回失敗し、「SWIPE」のマーカに1回失敗し、合計5ポイントの失敗を行った場合には、プレーヤP2の譜面データに第N+3小節目において2ポイント分、第4小節目において3ポイント分のリカバー用のマーカを発生させる処理を行う。
また、本実施形態では、所定期間におけるプレーヤの入力失敗のポイント値に上限を設けてもよい。例えば、1小節あたりの10ポイントの入力失敗まではリカバーを行い、残りのポイント分の入力失敗はリカバーを行わないように制御してもよい。つまり、1小節あたりの入力失敗ポイントが30である場合には、10ポイント分のリカバーを行い、残り20ポイントについてはリカバーを行わないように制御してもよい。
また、本実施形態では、所定期間においてリカバー用のマーカを発生させる数や種類に制限を設けてもよい。例えば、1小節において、最大で5ポイント分までのリカバー用のマーカを発生するように制限する。このようにすれば、リカバーする側のプレーヤの負担
を減らすことができる。
[リカバーを行うプレーヤを決定する手法の説明]
本実施形態ではマーカに対する入力の失敗内容、及び、入力に失敗したプレーヤ情報の少なくとも一つに基づいて、リカバー用のマーカをどのプレーヤに割り振るのかを決定する処理を行う。
本実施形態では、基本的には入力に失敗したプレーヤとは異なるプレーヤに当該失敗を回復させるためのリカバー指示を行う。
例えば、図16に示すように、判定基準タイミングT11に対応するマーカに対して、プレーヤP1が入力に失敗し、プレーヤP2、P3が入力に成功した場合には、プレーヤP2及びプレーヤP3の少なくとも一方の譜面データにプレーヤP1の入力失敗に対するリカバー用のマーカを発生させる処理を行う。
また、図16に示すように、判定基準タイミングT12に対応するマーカに対して、プレーヤP1、P2が入力に失敗し、プレーヤP3が入力に成功した場合には、プレーヤP3の譜面データにプレーヤP1及びプレーヤP2の入力失敗に対するリカバー用のマーカを発生させる処理を行う。例えば、プレーヤP3の譜面データにリカバー用のマーカを2つ発生させる処理を行う。つまり、プレーヤP3は二人分の失敗を回復させる必要があるので、一人分のリカバーを行うよりも負担が重くなる。
また、図16に示すように、判定基準タイミングT13に対応するマーカに対して、プレーヤP1、P2、P3の全員が入力に失敗した場合には、当該失敗に対するリカバーを行わないように制御する。
また、本実施形態では、難易度に応じて異なる譜面データを用意している。例えば、図16に示すように、プレーヤP1、P3の譜面データには、判定基準タイミングT14に対応するマーカが存在するが、プレーヤP2の譜面データには、判定基準タイミングT14に対応するマーカは存在しない。このように、判定基準タイミングT14に対応するマーカが存在しないプレーヤP2に対して、判定基準タイミングT14のマーカの入力ミスに対するリカバー指示を行わないように制御する。例えば、判定基準タイミングT14に対応するマーカに対して、プレーヤP1が入力に失敗し、プレーヤP3が入力に成功した場合には、プレーヤP3の譜面データにプレーヤP1の入力失敗に対するリカバー用のマーカを発生させる処理を行う。また、判定基準タイミングT15に対応するマーカがプレーヤP1の譜面データにのみ存在する場合において、判定基準タイミングT15に対応するマーカに対してプレーヤP1が入力に失敗した場合、プレーヤP2、P3の譜面データにプレーヤP1の入力失敗に対するリカバー用のマーカを発生させないように制御する。
また、本実施形態では、プレーヤ毎に技量を示すレベル(レベル値)を設定している。例えば、レベルが高いほど技量が高いことを示す。そして、本実施形態では、レベルが高いプレーヤの方がレベルの低いプレーヤよりもリカバーのマーカ数やポイントを多くするように制御する。或いは、レベルが高いプレーヤの方にリカバーの指示を行い、レベルの低いプレーヤに対してリカバーの指示を行わないように制御してもよい。例えば、図16に示すように、判定基準タイミングT11に対応するマーカに対して、プレーヤP1が入力に失敗し、プレーヤP2、P3が入力に成功した場合には、プレーヤP3がプレーヤP2よりもレベルが高い場合に、プレーヤP3の譜面データに、当該失敗に対するリカバー用のマーカを発生させる処理を行い、プレーヤP2の譜面データには当該失敗に対するリカバー用のマーカを発生させないように制御する。このように、本実施形態では、レベルの高いプレーヤがレベルの低いプレーヤよりも多くリカバーできるように制御し、レベル
の低いプレーヤのリカバーの負担が少なくなるように制御している。
なお、リカバー用のマーカの割り振り数は、ポイントに基づいて行うようにしてもよい。例えば、失敗が少ないプレーヤに対してリカバーの数(或いはリカバーのポイント値)が多くなるようにリカバー用のマーカの数・種類を決めて、各プレーヤにリカバーの指示を行う。
つまり、第N小節目において、プレーヤP1の入力失敗のポイントが「10」であり、プレーヤP2の入力失敗のポイントが「5」、プレーヤP3の入力失敗のポイントが「0」であるとする。すると、プレーヤP3は失敗数が一番少ないので、プレーヤP3により多くリカバーできるように指示を行う。例えば、プレーヤP3の譜面データに、プレーヤP1の入力失敗に対する「7」ポイント分のリカバー用のマーカを発生させる処理を行う。そして、プレーヤP2の譜面データにプレーヤP1の入力失敗に対する「3」ポイント分のリカバー用のマーカを発生させる処理を行う。また、プレーヤP3の譜面データに、プレーヤP2の入力失敗に対する「3」ポイント分のリカバー用のマーカを発生させる処理を行い、プレーヤP1の譜面データにプレーヤP2の入力失敗に対する「2」ポイント分のリカバー用のマーカを発生させる処理を行う。
このように、本実施形態では、所定期間において入力失敗数の少ないプレーヤが入力失敗数の多いプレーヤをリカバーできるように制御している。
[リカバー用のマーカの表示サイズの説明]
また、本実施形態では、リカバーする側のプレーヤは簡易にサポートできるよう、リカバー用のマーカの難易度が通常のマーカよりも低くなるように制御している。
例えば、リカバー用のマーカについては「音符基準表示倍率」を1.5倍にするなどし、通常のマーカ6の表示サイズよりも、リカバー用のマーカ6の表示サイズが大きくなるように制御する。このようにすれば、リカバーするプレーヤはタッチミスを防ぐことができリカバーを簡易に行うことができる。
[リカバー用のマーカに対する入力評価の説明]
本実施形態では、リカバー用のマーカに対するプレーヤの入力の評価は、リカバー用のマーカでない通常のマーカに対する入力評価と異なる手法を採用する。例えば、リカバーを行うプレーヤは、通常のマーカよりも入力成功の判定基準を緩やかにしている。また、本実施形態では、リカバー用のマーカに対してプレーヤが入力に失敗したとしても減点対象にならないように制御してもよい。
例えば、通常のマーカは、図5に示すように、プレーヤの操作入力タイミングと判定基準タイミングとの時間差で入力が成功したか否かを判定しているが、リカバー用のマーカについては、リカバー用のマーカの表示期間にプレーヤの操作入力があれば、リカバー用のマーカの判定基準タイミングに対する入力が成功であると判定する。例えば、リカバー用のマーカに対応する判定基準タイミングとプレーヤの入力タイミングとの時間差の評価が「Bad」である場合でも、リカバー用のマーカの表示期間にプレーヤのタッチ入力があれば、リカバー用のマーカに対する入力を成功と判定する。
つまり、本実施形態では、通常のマーカに対応する判定基準タイミングとプレーヤの入力タイミングとの時間差が第1の所定期間y1以内である場合に成功と判定し、リカバー用のマーカに対応する判定基準タイミングとプレーヤの入力タイミングとの時間差が第2の所定期間y2以内である場合に成功と判定する場合において、第2の所定期間を第1の所定期間よりも長くするように(y2>y1となるように)制御する。
また、上述したようにリカバー用マーカは通常のマーカよりも表示サイズが大きいので、タッチ判定も緩やかに制御する。
例えば、通常のマーカに対応する判定基準位置とプレーヤの操作入力位置との位置差が第1の所定距離z1以内である場合に成功と判定し、リカバー用のマーカに対応する判定基準位置とプレーヤの操作入力位置との位置差が第2の所定距離内z2である場合に成功と判定する場合において、第2の所定距離が第1の所定距離よりも長くなるように(z2>z1になるように)制御する。
[リカバーモード中の難易度の説明]
本実施形態では、リカバーの指示を行う期間(リカバーモード)の難易度を、リカバーの指示を行わない期間(通常モード)の難易度よりも低くしてマーカに対する入力を評価するようにしてもよい。つまり、リカバーの指示を行う期間中、通常のマーカについて難易度が低くなるように調整する。このようにすれば、リカバー側のプレーヤは、自身の通常マーカの入力を容易に成功することで入力負担を減らすことができ、その結果、リカバーの入力を容易に行うことができる。
例えば、通常モード中は、図5に示すように、プレーヤの操作入力タイミングと判定基準タイミングとの時間差で入力が成功したか否かを判定し、リカバーモード中は、マーカの表示期間にプレーヤの操作入力があれば、マーカの判定基準タイミングに対する入力が成功であると判定する。例えば、マーカに対応する判定基準タイミングとプレーヤの入力タイミングとの時間差の評価が「Bad」である場合でも、マーカの表示期間にプレーヤのタッチ入力があれば、マーカに対する入力を成功と判定する。
また、例えば、通常モード中においてマーカに対応する判定基準タイミングとプレーヤの入力タイミングとの時間差が第1の判定期間内である場合に成功と判定し、リカバーモード中においてマーカに対応する判定基準タイミングとプレーヤの入力タイミングとの時間差が第2の判定期間内である場合に成功と判定する場合において、第2の判定期間を第1の判定期間よりも長くするように制御する。
また、通常モード中においてマーカに対応する判定基準位置とプレーヤの入力位置との位置差が第1の判定距離内である場合に成功と判定し、リカバーモード中においてマーカに対応する判定基準位置とプレーヤの入力位置との位置差が第2の判定距離内である場合に成功と判定する場合において、第2の判定距離を第1の判定距離よりも長くするように制御する。
[失敗を回復させる処理の説明]
本実施形態では、一のプレーヤの入力失敗について、他のプレーヤがリカバー用のマーカに対する入力に成功した場合に、当該一のプレーヤの入力の失敗を回復させる処理を行う。
<得点のパラメータ制御によって失敗を回復させる処理>
例えば、図8に示すように、プレーヤP1がマーカ6−0の入力に失敗して、マーカ6−0の点(10点)を獲得できなかった場合において、プレーヤP2が当該入力の失敗に対するリカバー用のマーカ6−Aの入力に成功した場合には、プレーヤP1の得点に、マーカ6−Aの点(8点)を加点することによって、入力の失敗を回復させる処理を行うよう。つまり、本実施形態では、リカバー用のマーカ6−Aで得られる点数をプレーヤP1がマーカ6−0の入力成功で得られる点数よりも低くすることによって、プレーヤP1に自助努力を怠らないようにしている。
なお、ゲームバランスを考慮し、応用例として、リカバー用のマーカ6−Aで得られる点数をプレーヤP1がマーカ6−0の入力に成功した点数と同じ値に設定してもよい。例えば、プレーヤP1の得点に、マーカ6−0の点(10点)を加点することによって、入力の失敗を回復させる処理を行うようにしてもよい。
また、本実施形態では、リカバー用のマーカの種類に応じて得点を予め決めてもよい。例えば、通常のマーカの「TOUCH」が10点、通常のマーカの「SWIPE」が20点、通常のマーカの「HOLD」が30点、通常のマーカの「MOVE」が40点である場合には、リカバー用のマーカの「TOUCH」が8点、リカバー用のマーカの「SWIPE」が16点、リカバー用のマーカの「HOLD」が24点、リカバー用のマーカの「MOVE」が32点に設定する。
また、本実施形態では、プレーヤ毎にリカバー用の得点を求め、当該リカバー用の得点をプレーヤ個人の得点やチームの得点に加算することによって、入力失敗の損失を回復させるようにしてもよい。また、プレーヤ毎に、プレーヤのリカバー用の得点を当該プレーヤの所与のパラメータ(例えば、シンクロポイント値)加算するようにしてもよい。
例えば、ゲーム開始時に、各プレーヤのリカバー用の得点を0(初期値)に設定する。そして、図8に示すように、プレーヤP1がマーカ6−0の入力に失敗して、マーカ6−0の点(10点)を獲得できなかった場合において、プレーヤP2が当該入力の失敗に対するリカバー用のマーカ6−Aの入力に成功した場合には、プレーヤP1のリカバー用の得点に、マーカ6−Aの点(8点)を加点し、プレーヤP2のリカバー用の得点に、マーカ6−Aの点(8点)を加点することによって、入力の失敗を回復させる処理を行う。
なお、本実施形態のプレーヤの個人得点について詳細に説明する。本実施形態では、プレーヤの入力評価に基づいてプレーヤの個人得点を求めている。例えば、マーカの判定基準タイミングに対するプレーヤの操作入力タイミングに基づく評価が高いほど高得点になるように、当該マーカの得点をプレーヤの個人得点に加算する。また、マーカの判定基準位置に対するプレーヤの操作入力位置に基づく評価が高いほど高得点になるように、当該マーカの得点をプレーヤの個人得点に加算する。また、本実施形態では、プレーヤの入力が連続して成功した回数を示す個人連続成功回数を、個人得点に加算する。
また、本実施形態のチーム得点について詳細に説明する。さらに、本実施形態では、複数のプレーヤが同期して同じ音楽ゲームについてゲームプレイする場合には、プレーヤ毎に、チーム得点を求める。
例えば、本実施形態では、チームに属する複数のプレーヤのうち少なくとも一人のプレーヤの成功が連続した場合における各プレーヤの入力の成功回数の合計値を、チーム連続成功回数として設定し、当該チーム連続成功回数をチーム得点に加算する。
また、チーム内の二人以上のプレーヤが同時に「Perfect」の評価が判定された場合には、同一の判定基準タイミングにおいて複数人が同期した状態(「Sync」状態)となっているので、シンクロポイント値(ボーナス得点)を、「Perfect」の評価が判定されたプレーヤのチーム得点に加算する。なお、シンクロポイント値は、同一の判定基準タイミングにおいて複数人が「Perfect」と評価される度に、((「Perfect」の評価を得たプレーヤ数)−1)の値をシンクロポイント値に加算するものである。
<ライフパラメータの制御によって失敗を回復させる処理>
また、本実施形態では、ライフパラメータを用いてゲーム制御する場合において、当該ライフパラメータがプレーヤの入力失敗により損失が生じてしまう場合には、このライフパラメータの損失分を補填する回復処理を行うようにしてもよい。
例えば、本実施形態において、ゲーム開始時に、各プレーヤにライフパラメータの初期値を例えば「10」に設定し、プレーヤが1つのマーカの入力に成功するとライフパラメータに所定値(例えば、「1」)を加算し、プレーヤが1つのマーカの入力に失敗するとライフパラメータに所定値を減算し、最終的にライフパラメータが0に到達するとゲーム終了となるように制御する場合について説明する。
かかる場合、例えば、プレーヤP1がマーカの入力に失敗し、プレーヤP1のライフパラメータが「1」減算された場合、その失敗に対してプレーヤP2にリカバー用のマーカの指示を行う。そして、プレーヤP2がリカバー用マーカの入力に成功した場合に、プレーヤP1のライフパラメータに「1」を加算する。このようにすれば、複数のプレーヤが互いにサポートし協力し合う環境を作り出すことができ、より一体感をもってプレーヤがゲームプレイすることができる。
図17は、プレーヤP1のライフパラメータのゲージLGを示したゲーム画面W17の一例を示す。例えば、プレーヤP2がリカバー用のマーカの入力に成功した場合には、プレーヤP1のゲーム画面W17において、「プレーヤP2がリカバーしました」というメッセージMSを表示制御し、プレーヤP1が容易にサポートしてくれた人を知ることができるようにしている。
[リカバー用のマーカの配置について]
本実施形態では、リカバー用のマーカの判定基準位置やリカバー用の基準線を予め定義してもよい。例えば、図18に示すように、リカバー用のマーカ6−Aが配置される方向性を定義するリカバー用の基準線4−Aを、通常のマーカ6−1、6−2、6−3が配置される方向性を定義する基準線Aとは別に設けるようにしてもよい。例えば、基準線Aに略並行するようにしてリカバー用の基準線4−Aを配置する。このようにすれば、通常のマーカ6−1、6−2、6−3は通常の基準線Aに基づき配置され、リカバー用のマーカ6−Aはリカバー用の基準線4−Aに基づき配置されるので、リカバー用のマーカを通常のマーカと識別しやすくなり、リカバー側のプレーヤが入力し易いリカバーの指示を行うことができる。
[リカバー対象となる期間]
また、本実施形態では、リカバー対象となる期間を所定の期間に制限してもよい。例えば、図19に示すように、ゲーム開始からT20までの期間E1(例えば、第1〜第20小節)においてのプレーヤの入力失敗をリカバー対象の期間として設定する。そして、T20からゲーム終了までの期間E2(第21小節〜第40小節)においての入力失敗を、リカバー対象の期間から除外するように設定する。このように、ゲーム後半での入力失敗をリカバーの対象外にすることによって、プレーヤの自助努力でゲームプレイする機会を設けるようにしている。
[自分自身の失敗を回復させる処理]
なお、本実施形態では一のプレーヤの入力失敗を別のプレーヤがリカバーするように制御しているが、入力失敗をしたプレーヤ自身がリカバーを行うように制御してもよい。
例えば、図20に示すように、プレーヤP1が判定基準タイミングT2に対応するマーカ6−0の入力に失敗した場合、プレーヤP1の譜面データに判定基準タイミングR1に対応するリカバー用マーカ6−Aを発生させる処理を行う。プレーヤP1は、マーカ6−
Aの入力に成功すれば、プレーヤP1の入力の失敗をリカバーすることができる。
また、図21に示すように、プレーヤP1が判定基準タイミングT2に対応するマーカ6−0の入力に失敗した場合、プレーヤP1の譜面データに判定基準タイミングT5と同じタイミングで新たなマーカ6−Bを発生させる。プレーヤP1は、マーカ6−Bの入力に成功すれば、プレーヤP1の入力の失敗をリカバーすることができる。
[ゲームシステムの説明]
本実施形態では、図22に示すように、複数のゲーム装置1400−1〜1400−4がネットワークを介して接続され、複数のプレーヤが同時にプレイするゲームのためのゲームシステムを実現する。例えば、複数のゲーム装置間でデータの送受信を行いながらゲームを実行するピア・ツー・ピア(いわゆるP2P)方式とするゲームシステムを実現する。
例えば、本実施形態では、図22に示すように、ゲーム装置1400−1、1400−2、1400−3、1400−4と横並びで配置されており、プレーヤP1〜P4がゲーム装置1400−1、1400−2、1400−3、1400−4で同時にゲームプレイすることができる。
各ゲーム装置1400は、他のプレーヤの操作対象の他のゲーム装置と、所定のタイミングでゲーム進行を同期させる処理を行う。ここで、「所定のタイミング」とは、複数のプレーヤがゲームを行う際に同期を取ることが必要であるとゲームの仕様上設定されているポイントであり、例えば、ゲーム開始時やゲームシーンの変わり目である。「ゲーム進行を同期させる処理」とは、プレーヤと他のプレーヤとが、例えば、同じタイミングでゲームを開始し、同じ進行度合いでゲームを進行させるための処理のことをいう。例えば、一のゲーム装置が、ゲーム開始のタイミング(時刻)を他のゲーム装置に送信し、同時刻にゲームを開始できるような同期処理を行う。そして、各ゲーム装置1400は、自機を操作するプレーヤの入力を評価する処理を行う。
そして、ゲーム開始後、各ゲーム装置1400は、他のプレーヤの入力評価を当該他のプレーヤの操作対象の他のゲーム装置から受信する。例えば、ゲーム装置1400−1は、ゲーム装置1400−2、1400−3、1400−4それぞれからプレーヤP2、P3、P4の入力評価を受信する。
また、ゲーム開始後、各ゲーム装置1400は、プレーヤの入力評価を他のゲーム装置に送信する処理を行う。例えば、ゲーム装置1400−1は、ゲーム装置1400−2、1400−3、1400−4それぞれに、プレーヤP1の入力評価を送信する。
そして、各ゲーム装置1400は、所定期間内に複数のプレーヤP1〜P4の判定基準タイミングを示すマーカに対する入力の失敗内容を集計する。
各ゲーム装置1400は、プレーヤに対して、集計結果に基づき入力の失敗を回復させるためのリカバーの指示を行う。例えば、ゲーム装置1400−1は、所定期間内にプレーヤP2、P3、P4のマーカに対する入力の失敗内容に基づいて、プレーヤP1の譜面データに追加するリカバー用のマーカの内容(リカバー用のマーカの種類、数、判定基準位置、判定基準タイミング)を決定し、決定したリカバー用のマーカをプレーヤP1の譜面データに追加する処理を行う。
なお、4台のゲーム装置1400−1、1400−2、1400−3、1400−4のうち1台のゲーム装置が、集計結果に基づき、所定期間内におけるプレーヤP1、P2、
P3、P4の入力の失敗内容に基づいて、プレーヤP1、P2、P3、P4それぞれの譜面データに追加するリカバー用のマーカの内容を決定し、自ゲーム装置のプレーヤに対して決定したリカバー用のマーカを追加する処理を行い、他の各ゲーム装置に各プレーヤのリカバー指示の決定内容を送信する処理を行うようにしてもよい。
各ゲーム装置1400は、プレーヤに対するリカバーの指示入力を評価する処理を行い、リカバーの指示に対する入力に成功した場合に、前記失敗を回復させる処理を行う。なお、各ゲーム装置は、他のゲーム装置にリカバーの指示に対する入力成功に関する情報を送信してもよい。
例えば、ゲーム装置1400−1は、プレーヤP2の入力失敗に対するリカバー用のマーカをプレーヤP1の譜面データに追加した場合には、リカバー用のマーカに対するプレーヤP1の入力を評価する処理を行う。そして、プレーヤP1がリカバー用のマーカに対する入力に成功した場合に、プレーヤP2の入力失敗を回復させる処理を行う。例えば、ゲーム装置1400−1は、プレーヤP2のゲーム装置1400−2に、プレーヤP2に加点情報(回復情報の一例)を送信する。そして、ゲーム装置1400−2は、当該加点情報を受信した場合にプレーヤP2の得点やライフパラメータに加点情報に基づく値を加点する。
なお、本実施形態のゲームシステムは、サーバを介して各ゲーム装置がデータの送受信を行いながらゲームを実行するクライアント・サーバ方式によるものであってもよい。
まず、サーバは、各ゲーム装置に所定のタイミングでゲーム進行を同期させるための情報(ゲーム開始時刻等の情報)を送信する処理を行う。例えば、サーバは、各ゲーム装置にゲーム開始のタイミング(時刻)を送信し、同時刻にゲームを開始できるような同期処理を行う。
そして、ゲーム開始後、サーバは、各ゲーム装置1400−1、1400−2、1400−3、1400−4それぞれからプレーヤP1、P2、P3、P4の入力評価を受信する。
サーバは、所定期間内に複数のプレーヤP1〜P4の判定基準タイミングを示すマーカに対する入力の失敗内容を集計する。
そして、サーバは、各プレーヤに対して、集計結果に基づき入力の失敗を回復させるためのリカバーの指示内容を決定する処理を行い、各ゲーム装置にリカバーの指示内容を送信する。例えば、サーバは、所定期間内にプレーヤP1、P2、P3、P4のマーカに対する入力の失敗内容に基づいて、各プレーヤP1、P2、P3、P4の譜面データに追加するリカバー用のマーカの内容(リカバー用のマーカの種類、数、判定基準位置、判定基準タイミング)を決定して、各ゲーム装置に決定内容を送信する処理を行う。
各ゲーム装置1400は、サーバから受信したリカバーの指示内容に基づき、リカバーの指示入力を評価する処理を行い、リカバーの指示に対する入力に成功した場合に、前記失敗を回復させる処理を行う。なお、各ゲーム装置は、他のゲーム装置にリカバーの指示に対する入力成功に関する情報を送信してもよい。
例えば、ゲーム装置1400−1は、プレーヤP2の入力失敗に対するリカバー用のマーカをプレーヤP1の譜面データに追加した場合には、リカバー用のマーカに対するプレーヤP1の入力を評価する処理を行う。そして、プレーヤP1がリカバー用のマーカに対する入力に成功した場合に、プレーヤP2の入力失敗を回復させる処理を行う。例えば、
ゲーム装置1400−1は、サーバに、プレーヤP2の識別情報に対応付けた加点情報を送信する。そして、サーバは、当該プレーヤP2の識別情報に対応付けられた加点情報を受信した場合に、プレーヤP2の得点やライフパラメータに加点情報に基づく値を加点する。
[各プレーヤの入力失敗の状況表示]
本実施形態では、各プレーヤの入力失敗の状況を表示するようにしてもよい。入力失敗の状況とは、各プレーヤの入力失敗の内容、各プレーヤの入力失敗内容の集計結果等である。
例えば、プレーヤP1、P2、P3、P4が同時にゲームプレイしている場合に、各ゲーム装置は、各プレーヤP1〜P4の入力失敗を検出すると、入力に失敗したプレーヤ名を表示し、入力に失敗したマーカの種類や数を各ゲーム装置の表示部に表示する。また、各ゲーム装置は、所定期間内(例えば1小節の期間内)で集計した各プレーヤP1〜P4それぞれの入力失敗のマーカの種類や数、入力失敗内容を数値化したポイント値等を表示部に表示してもよい。このようにすれば、各プレーヤは入力失敗の状況を把握することができる。
[リカバーの指示内容の予告表示]
また、本実施形態では、集計期間終了後、リカバーの指示内容を所定のタイミングで予告表示するように制御してもよい。
例えば、各ゲーム装置は、リカバー用のマーカの判定基準タイミングから所定期間遡ったタイミングで、画面に「もうすぐリカバー用のマーカが表示されます」等の予告メッセージを画面に表示してもよい。図8を用いてより具体的に説明すると、第3小節目のリカバー用のマーカ6−Aの判定基準タイミングR1から4拍前のタイミング(第2小節目)で、プレーヤP2のゲーム画面に「もうすぐリカバー用のマーカが表示されます」等の予告メッセージを画面に表示する。このようにすれば、リカバーする側のプレーヤは、リカバーの指示入力を行う心構えができる。
[動作の説明]
次に、本実施形態において、図23を用いてリカバー処理の流れについて説明する。まず、ゲームが開始されると(ステップS1のY)、所定期間において少なくとも一人のプレーヤが入力に失敗したか否かを判定する(ステップS2)。所定期間において少なくとも一人のプレーヤが入力に失敗した場合には(ステップS2のY)、入力失敗のマーカの種類、数の少なくとも1つに基づき、リカバー用のマーカの種類、数を決定する(ステップS3)。そして、入力失敗のプレーヤ以外のプレーヤの譜面データにリカバー用のマーカを発生させる処理を行う(ステップS4)。
そして、リカバー用のマーカに対して、入力が成功したか否かを判定し(ステップS5)、リカバー用のマーカに対する入力が成功した場合に、回復処理を行う(ステップS6)。そして、ゲームが終了しない場合には(ステップS7のN)、再度ステップS2の処理に戻り、ゲームが終了した場合には(ステップS7のY)、処理を終了する。
[機能構成の説明]
次に、本実施形態における機能構成について説明する。図24は、本実施形態における業務用ゲーム装置1400の機能構成の一例を示す機能ブロック図である。本実施形態の業務用ゲーム装置1400は、操作入力部100と、処理部200と、音出力部372と、表示部374と、通信部376と、発光部378と、記憶部500とを備える。
操作入力部100は、プレーヤによって為された各種の操作入力に応じて操作入力信号を処理部200に出力する。例えば、プッシュスイッチや、ジョイスティック、タッチパッド、トラックボール、加速度センサ、ジャイロ、CCDモジュール、などによって実現できる。図1のタッチパネル1420がこれに該当する。
処理部200は、例えばCPUやGPU等のマイクロプロセッサや、ASIC(特定用途向け集積回路)、ICメモリなどの電子部品によって実現され、操作入力部100や記憶部500を含む各機能部との間でデータの入出力制御を行う。そして、所定のプログラムやデータ、操作入力部100からの操作入力信号や各種データに基づいて各種の演算処理を実行して業務用ゲーム装置1400の動作を制御する。図1の制御基板1450がこれに該当する。そして、本実施形態における処理部200は、ゲーム演算部201と、音出力制御部272と、画像生成部274と、通信制御部276と、発光制御部278とを備える。
ゲーム演算部201は、コンピュータにプレーヤが選曲した音楽(楽曲データ)を出力制御させ、プレーヤが当該音楽を聴きながら操作入力を楽しむ音楽ゲームを実行させるための各種処理を実行する。具体的には、本実施形態のゲーム演算部201は、難易度設定部202と、選曲部204と、音楽再生制御部206と、マーカ表示制御部210と、評価部242と、表示制御部244と、計時部246と、リカバー制御部247と、同期処理部248と、得点制御部251と、を有する。
難易度設定部202は、操作入力に応じてこれからプレイするゲームの難易度を設定するための処理をする。
選曲部204は、操作入力に応じてこれからプレイする音楽(楽曲データ)を選択するための処理をする。
音楽再生制御部206は、選曲された音楽の音楽データ(楽曲データ)を再生させるための処理をする。
マーカ表示制御部210は、再生される音楽に同期させた譜面表示に係る表示制御をする。本実施形態では、判定基準位置設定部211と、予告部213と、表示サイズ設定部215と、相対位置決定部217と、軌道設定部219と、アニメーション制御部230と、を有する。
判定基準位置設定部211は、マーカ6毎の判定基準位置Pi(図3)を設定する。本実施形態では、曲毎に設定されている基準線4のデータとプレイ開始から計時される経過時間とに基づいて判定基準位置Piを決定する。例えば、経過時間に応じた移動距離だけ基準線4の基点から基準線4に沿って移動した位置を基本の位置とする。そして、基準線4からのズレ量を所定範囲内でランダムに設定し、当該基本の位置をズレ量だけ補正して判定基準位置Piとする。勿論、ズレ量の算出を省略した構成も可能である。また、基準線4を用いずに、マーカ6別に予め設定されている判定基準位置Piを読み出すだけの構成としてもよい。
予告部213は、マーカ6が出現表示される予告に係る処理をする。本実施形態では、第3構成要素63の出現から消滅までの処理をする。第3構成要素63が所定の表示体ではなく背景を調色して一定範囲として示すならばその調色制御処理を行うものとする。
表示サイズ設定部215は、マーカ6の表示サイズを決定する。本実施形態では、マーカ6に対応づけられる音の長さに応じた音符種類基準表示倍率と、ゲーム難易度に応じた
難易度基準表示倍率とを算出し、標準の表示サイズをそれらの倍率分変更して決定する。あるいは、音符の種類とゲーム難易度との組み合わせ別に、予め表示倍率を設定しておいて、そこから該当する倍率を読み出して適用する構成でもよい。
相対位置決定部217は、マーカ6の第1構成要素61と第2構成要素62との相対位置関係と、第1構成要素61の初期表示位置Pf(図4参照)とを決定する。
軌道設定部219は、第1構成要素61を移動させる経路を設定する。本実施形態では、判定基準位置Piを始点、初期表示位置Pfを終点とする略放物曲線関数を設定する処理と、それらをキーフレームとして第1構成要素61の移動予定位置をコマ割りする処理を実行する。
アニメーション制御部230は、マーカアニメーションに係る第1構成要素61の表示を、2次元画像でありながら立体的な移動をしているように見せるための処理を実行する。アニメーション制御部230は、第1構成要素61の位置が軌道7の始点から頂点までの範囲では、表示サイズ設定部215により設定された表示サイズを頂点に近づくほど徐々に大きくなるように調整する。逆に、軌道7の頂点を過ぎて終点までの範囲では、調整されて大きくなっている表示サイズを終点に近づくにつれて表示サイズ設定部215が設定したサイズに徐々に戻すように調整する。あるいは、コマ割りされる第1構成要素61の移動予定位置の数が決まっているならば、各移動予定位置別に予め対応付けた表示サイズを読み出して適用する構成や、当該表示サイズに加工された第1構成要素61の画像を読み出す構成としてもよい。また、アニメーション制御部230は、第1構成要素61の位置が軌道7の始点から頂点までの範囲では、輪郭のぼかし具合を頂点に近づくほど徐々に大きくなるように調整する。逆に、軌道7の頂点を過ぎて終点までの範囲では、輪郭のぼかし具合が徐々に元に戻るように調整する。あるいは、コマ割りされる第1構成要素61の移動予定位置の数が決まっているならば、各移動予定位置別に予め対応付けたぼかし具合の値を読み出して適用する構成や、当該表示サイズに加工された第1構成要素61の画像を読み出す構成としてもよい。
評価部242は、プレーヤ毎に、プレーヤの入力を評価する処理を行う。つまり、評価部242は、プレーヤ毎に、マーカに対する入力を評価する処理を行う。
例えば、評価部242は、タッチ操作が検出されると、当該タッチ操作のタイミングを操作入力タイミングとし、タッチ操作された最寄りのマーカ6に対応づけられている判定基準タイミングとの時間差に基づいて操作入力を評価する。本実施形態では、時間差が小さいほど高評価とする。勿論、判定基準タイミングから前後に時間差幅を複数設け、時間差幅毎に評価を割り当てておいて、該当する時間差幅の評価を読み出す構成としてもよい。また、評価のパラメータとしては、最寄りのマーカ6の判定基準位置Piとタッチ操作検出位置とのズレ量を含める構成としてもよい。
また、評価部242は、リカバーの指示(リカバー用のマーカ)に対する入力を評価する処理を行う。つまり、評価部242は、リカバー用の判定基準タイミングや判定基準位置に基づきプレーヤの入力を評価する処理を行う。
また、評価部242は、入力に失敗したマーカと、リカバー用のマーカとを異なる評価基準で評価してもよい。例えば、評価部242は、入力に失敗したマーカに対する入力成功の判定基準よりもリカバー用のマーカに対する入力成功の判定基準が緩やかになるように、リカバー用のマーカに対する入力を評価するようにしてもよい。
例えば、評価部242は入力に失敗したマーカに対応する判定基準タイミングとプレー
ヤの入力タイミングとの時間差が第1の所定期間内である場合に成功と判定し、リカバー用のマーカに対応する判定基準タイミングとプレーヤの入力タイミングとの時間差が第2の所定期間内である場合に成功と判定する場合において、第2の所定期間を第1の所定期間よりも長くするように制御する。
また、評価部242は、入力に失敗したマーカに対応する判定基準位置とプレーヤの入力位置との位置差が第1の所定距離内である場合に成功と判定し、リカバー用のマーカに対応する判定基準位置とプレーヤの入力位置との位置差が第2の所定距離内である場合に成功と判定する場合において、第2の所定距離を第1の所定距離よりも長くするように制御する。
例えば、評価部242は、ゲーム進行に応じて判定基準タイミングを定義した譜面データに基づいて、判定基準タイミングを示すマーカに対する入力を評価する処理を行う。また、評価部242は、リカバー用の譜面データに切り替えられた場合には、当該リカバー用の譜面データに基づいて、判定基準タイミングを示すマーカに対する入力を評価する処理を行うようにしてもよい。
また、評価部242は、リカバーの指示を行う期間(リカバーモード)の難易度を、リカバーの指示を行わない期間(通常モード)の難易度よりも低くしてマーカに対する入力を評価してもよい。つまり、リカバーの指示を行う期間は、リカバー用マーカだけでなく通常のマーカも難易度を低くして評価してもよい。
例えば、評価部242はリカバーの指示を行わない期間(通常モード)においてマーカに対応する判定基準タイミングとプレーヤの入力タイミングとの時間差が第1の判定期間内である場合に成功と判定し、リカバーの指示を行う期間(リカバーモード)においてマーカに対応する判定基準タイミングとプレーヤの入力タイミングとの時間差が第2の判定期間内である場合に成功と判定する場合において、第2の判定期間を第1の判定期間よりも長くするように制御する。
また、評価部242は、リカバーの指示を行わない期間(通常モード)においてマーカに対応する判定基準位置とプレーヤの入力位置との位置差が第1の判定距離内である場合に成功と判定し、リカバーの指示を行う期間(リカバーモード)においてマーカに対応する判定基準位置とプレーヤの入力位置との位置差が第2の判定距離内である場合に成功と判定する場合において、第2の判定距離を第1の判定距離よりも長くするように制御する。
表示制御部244は、評価部242による評価結果を第1構成要素61と第2構成要素62との相対位置関係に応じて可変される第2構成要素62の周囲位置に表示させる。周辺位置は、マーカ6をタッチ操作している手の影になりにくい位置とする。本実施形態では、第1構成要素61の初期表示位置Pf(図4参照)あるいは初期表示位置Pfの近傍に評価表示体3(図3参照)を表示することとする。第1構成要素61が移動して第2構成要素62内に移動したタイミングが操作入力すべきタイミングとなり、第1構成要素61の移動後に、移動する前の位置あるいはその近傍に評価表示体3が表示されるため、評価結果を視認し易く、プレーヤの手の陰になりにくい。初期表示位置Pfの近傍とは、例えば、初期表示位置Pfからマーカ6の外周方向に沿った近傍とし、第2構成要素62の真横、真上、真下に至る範囲としてもよい。
また、表示制御部244は、マーカの入力失敗に対するリカバーの指示入力に成功した場合には、当該マーカの入力に失敗したプレーヤの画面に、当該リカバーの指示入力に成功したことを示す情報を表示する。
また、表示制御部244は、各プレーヤの入力失敗の状況を表示するようにしてもよい。また、表示制御部244は、集計期間終了後、リカバーの指示内容を所定のタイミングで予告表示するようにしてもよい。
計時部246は、ゲーム進行に係る各種タイミングの計時処理を行う。本実施形態では少なくともプレイ曲(楽曲データ)の再生開始からの経過時間の計時を行う。
リカバー制御部247は、所定期間内に前記複数のプレーヤのうち少なくとも一人の前記マーカに対する入力内容を集計し、集計結果に基づき、当該入力内容を回復させるためのリカバーの指示を、複数のプレーヤのうち少なくとも一人に対して行う。また、リカバー制御部247は、リカバーの指示に対する入力に成功した場合に、入力内容を回復させる処理を行う。
例えば、リカバー制御部247は、所定期間内に複数のプレーヤのうち少なくとも一人の前記判定基準タイミングを示すマーカに対する入力の失敗内容を集計し、集計結果に基づき、当該入力の失敗を回復させるためのリカバーの指示を、複数のプレーヤのうち少なくとも一人に対して行う。そして、リカバー制御部247は、リカバーの指示に対する入力に成功した場合に、失敗を回復させる処理を行う。
また、リカバー制御部247は、入力内容に基づいて、リカバー用のマーカの種類及び数の少なくとも一方を含むリカバーの指示内容を決定する。例えば、リカバー制御部247は、入力の失敗内容に基づいて、リカバー用のマーカの種類及び数の少なくとも一方を含むリカバーの指示内容を決定する。
また、リカバー制御部247は、入力の失敗内容及び前記入力に失敗したプレーヤ情報の少なくとも一方に基づいて、リカバーの指示に対して入力をするプレーヤを、決定する。
また、リカバー制御部247は、入力に失敗したときの指示内容と、リカバーの指示内容とを異ならせる。例えば、リカバー制御部247は、入力に失敗したときの指示内容よりもリカバーの指示内容が簡易になるように、当該リカバーの指示内容を決定する。具体的には、リカバー制御部247は、入力に失敗したマーカの数よりも、リカバー用のマーカの数を少なくする処理を行う。
また、リカバー制御部247は、入力失敗後において、マーカに対応する判定基準タイミングとは異なるタイミングに、リカバー用のマーカを追加するようにしてもよい。
また、リカバー制御部247は、入力失敗後において、マーカの判定基準位置とは異なるリカバー用のマーカの判定基準位置に、当該リカバー用のマーカを配置するようにしてもよい。
また、リカバー制御部247は、マーカの判定基準位置を決定するための基準線とは異なるリカバー用の基準線に基づいて、リカバー用のマーカの判定基準位置を決定するようにしてもよい。
また、リカバー制御部247は、マーカに対応する判定基準タイミングと同じタイミングに、当該マーカの判定基準位置に当該マーカを配置すると共に、リカバー用のマーカの判定基準位置に当該リカバー用のマーカを配置するようにしてもよい。つまり、リカバー制御部247は、入力失敗後において、マーカに対応する判定基準タイミングと同じタイ
ミングに、当該マーカの判定基準位置とリカバー用のマーカの判定基準位置とが異なるように、当該リカバー用のマーカを追加するようにしてもよい。
また、リカバー制御部247は、入力の失敗内容に基づいて、入力失敗後の譜面データの一部又は全部を、ゲーム進行に応じてリカバー用の判定基準タイミングを定義したリカバー用の譜面データに切り替える処理を行うようにしてもよい。
同期処理部248は、他のプレーヤの操作対象の他のゲーム装置と、所定のタイミングでゲーム進行を同期させる処理を行う。つまり、同期処理部248は、所定のタイミングで複数のプレーヤのゲーム進行を同期させる処理を行う。
得点制御部251は、プレーヤ毎に、プレーヤの入力評価に基づいてプレーヤに関する得点(個人得点、チーム得点等)を求める。
音出力制御部272は、例えばデジタルシグナルプロセッサ(DSP)や、音声合成ICなどのプロセッサ、音声ファイル再生可能なオーディオコーデック等によって実現され、ゲーム進行に応じて効果音やBGM、各種操作音の音信号を生成し、音出力部372に出力する。本実施形態では、プレイ開始とともに選曲部204により選択された音楽を放音ささせるための音信号の生成を開始する。
音出力部372は、音出力制御部272から入力される音信号に基づいて放音出力する装置によって実現される。図1の右スピーカユニット1408R、左スピーカユニット1408L、ウーハー1426がこれに該当する。
画像生成部274は、例えば、GPU、デジタルシグナルプロセッサ(DSP)などのプロセッサ、ビデオ信号IC、ビデオコーデックなどのプログラム、フレームバッファ等の描画フレーム用ICメモリ等によって実現される。画像生成部274は、ゲーム進行に応じて1フレーム時間(例えば1/60秒)で1枚のゲーム画面の画像を生成し、生成したゲーム画面の画像信号を表示部374に出力する。
表示部374は、画像生成部274から入力される画像信号に基づいて各種ゲーム画像を表示する。例えば、フラットパネルディスプレイ、ブラウン管(CRT)、プロジェクター、ヘッドマウントディスプレイといった画像表示装置によって実現できる。本実施形態では、図1のタッチパネル1420がこれに該当する。
通信制御部276は、データ通信に係るデータ処理を実行し、通信部376を介して外部装置とのデータのやりとりを実現する。通信部376は、通信回線N(図1)と接続して通信を実現する機器、例えば、無線通信機、モデム、TA(ターミナルアダプタ)、有線用の通信ケーブルのジャックや制御回路等によって実現される。図1の通信装置1453がこれに該当する。
例えば、通信制御部276は、他のゲーム装置又はサーバにプレーヤのマーカ(通常のマーカ及びリカバー用のマーカ)に対する入力評価(成功又は失敗の情報)を送信する処理と、他のゲーム装置又はサーバから他のプレーヤのマーカ(通常のマーカ及びリカバー用のマーカ)に対する入力評価を受信する処理とを行う。なお、通信制御部276は、他のゲーム装置又はサーバと、種々の情報(回復情報(加点情報)等)を送受信する。
発光制御部278は、発光部378によって種々の発光制御を行う。
発光部378は、LEDや、ELや液晶パネル、電球、陰極線管などその他の素子であ
り、例えば、LEDの場合、各LEDを個別に点灯制御する。
記憶部500は、処理部200に業務用ゲーム装置1400を統合的に制御させるための諸機能を実現するためのシステムプログラムや、ゲームプレイに必要なプログラム、各種データ等を記憶する。また、処理部200の作業領域として用いられ、処理部200が各種プログラムに従って実行した演算結果や操作入力部100から入力される入力データ等を一時的に記憶する。こうした機能は、例えばRAMやROMなどのICメモリ、ハードディスク等の磁気ディスク、CD−ROMやDVDなどの光学ディスクなどによって実現される。図1の制御基板1450が搭載するICメモリ1452が該当する。
図25は、記憶部500に記憶されるプログラムやデータの例を示す図である。記憶部500には、システムプログラム501と、ゲームプログラム502とを記憶している。システムプログラム501は、業務用ゲーム装置1400のコンピュータとしての入出力の基本機能を実現するためのプログラムである。ゲームプログラム502は、処理部200が読み出して実行することによってゲーム演算部201としての機能を実現させるためのアプリケーションソフトウェアである。システムプログラム501の一部として組み込まれた構成であっても良い。
もし、本実施形態のゲームをオンラインゲームの形態で実現するならば、ゲームプログラム502は、オンラインゲームを実現する技術手法に応じて専用のクライアントプログラムとしてもよいし、ウェブブラウザプログラム及びインタラクティブな画像表示を実現するプラグインなどにより構成するとしてもよい。すなわち、ゲーム演算部201の機能の一部または全部をオンラインゲームサーバにて実現する構成とすることとし、業務用ゲーム装置1400はゲームプレイの対価の支払いのための機能を備えたオンラインゲームのプレーヤ端末として機能させることも可能である。
また、記憶部500には、ゲームプレイ可能な音楽毎に用意された複数のプレイ曲候補データ510と、第1構成要素初期設定データ541と、第2構成要素初期設定データ542と、音符種類基準表示倍率設定関数550と、難易度基準表示倍率設定関数552と、表示サイズ調整定義データ570と、が予め記憶されている。勿論、これらは定期的に更新されるとしても良い。また、記憶部500には、ゲームプレイに伴って生成され逐次更新されるプレイデータ600が記憶される。その他、各種フラグ、経過時間のカウンタ、などの情報も適宜記憶される。
図26は、プレイ曲候補データ510のデータ構成の一例を示す図である。プレイ曲候補データ510は、プレイ時に再生される音楽(楽曲データ)の識別情報(例えば曲名)である音楽ID511と、音楽を再生するための音楽データ513と、BPM(Beats Per Minute)515と、拍子517と、基準線定義データ519と、譜面データ520とを含む。勿論、選択曲に関するその他の情報も適宜対応づけて格納することもできる。
基準線定義データ519は、基準線4(図3)を定義する。例えば、基準線4を表す関数を格納する。関数の定義の仕方は適宜可能であるが、例えば、(1)画面座標系の始点座標及び終点座標と、(2)始点座標と終点座標の間を結ぶ直線や曲線、屈曲線などを定義する関数と、で定義される。
譜面データ520は、当該音楽(楽曲データ)の再生に合わせて表示するマーカ6の表示を定義する。例えば、マーカID521と対応づけて、判定基準タイミング523と、当該マーカに対応づけられて判定基準タイミングで再生される音の長さ(音符種類)525と、を対応づけて格納する。勿論、これら以外のデータも適宜格納することができる。
第1構成要素初期設定データ541および第2構成要素初期設定データ542は、それぞれ第1構成要素61、第2構成要素62の初期状態を定義する。例えば、それぞれの構成要素の形状の初期サイズや、色情報(表示色や透明度)などを定義する。ここで定義されている初期サイズが、音符種類基準表示倍率や難易度基準表示倍率に基づいて変更されて、出現表示時点における実際に適用される表示サイズとなる。
音符種類基準表示倍率設定関数550は、音符種類基準表示倍率を算出するための関数である。
難易度基準表示倍率設定関数552は、難易度基準表示倍率を算出するための関数である。
表示サイズ調整定義データ570は、マーカアニメーション制御中の第1構成要素61の表示サイズの調整量を定義する。
図25に戻り、プレイデータ600は、現在のゲームプレイ状況を記述する各種データを格納する。
例えば、プレーヤID601と、選曲結果を示すプレイ曲音楽ID603と、ゲーム難易度605と、プレイ曲の再生開始から計時される経過時間607と、成績データ609と、表示されているマーカ6別に用意されるマーカ表示制御データ620とを含む。
マーカ表示制御データ620はその時々でゲーム画面に表示されているマーカ6の数だけ生成・格納され、ゲーム画面からマーカ6が消えると対応するマーカ表示制御データ620も抹消される。
図27は、マーカ表示制御データ620のデータ構成例を示す図である。1つのマーカ表示制御データ620は、制御対象マーカID622と、操作入力位置座標624と、第3構成要素表示状態フラグ626と、第2構成要素表示状態フラグ630と、第2構成要素表示サイズ632と、初期表示位置座標640と、第1構成要素表示状態フラグ642と、第1構成要素表示サイズ646と、軌道関数648と、マーカアニメーション設定データ650と、を格納する。
第3構成要素表示状態フラグ626と、第2構成要素表示状態フラグ630と、第1構成要素表示サイズ646と、はそれぞれ第3構成要素63、第2構成要素62、第1構成要素61が表示されていなければ「0」、表示されていれば「1」に変更される。初期状態は「0」である。
マーカアニメーション設定データ650は、マーカアニメーションの各コマを定義するデータであって、移動目標位置ID651と対応づけて、当該位置へ移動するべき経過時間607の値を示す移動タイミング653と、位置座標655と、当該位置における第1構成要素61の表示サイズの調整倍率657と、ぼかし量659とを格納する。
[変形例]
なお、本発明の適用形態は上記実施形態に限定されるものではなく、適宜構成要素の追加・省略・変更を施すことができる。
[その1]
例えば、業務用ゲーム装置1400は、家庭用据え置き型ゲーム装置や、携帯型ゲーム装置、パソコン、スマートフォン、タブレット型コンピュータなど他の形態のコンピュー
タや電子機器に置き換えることができる。
[その2]
また、上記実施形態では、入力操作をタッチパネルで行う構成としたが、マウスや、トラックパッド、モーションキャプチャデバイスなどで実現するとしてもよい。モーションキャプチャデバイスは、プレーヤをデジタルカメラで撮影するとともに距離センサで被写体の各部までの距離を計測して、プレーヤの骨格の動きを検出する公知のデバイス(例えば、マイクロソフト社製のキネクト(登録商標)など)を利用して、プレーヤの手指の位置や動きからポインティング操作を検出するとすればよい。
[その3]
また、本発明をオンラインゲーム、ネットワークゲームに適用することもできる。その場合、例えば図28に示すように、業務用ゲーム装置1400や、スマートフォンや携帯型ゲーム装置などのモバイル機器で実現されるプレーヤ端末1500が、通信回線Nを介してサーバシステム(サーバ)1100に接続して、クライアント・サーバ型のシステムを構成し、業務用ゲーム装置1400や、タッチパネル1506を備えたプレーヤ端末1500でオンラインゲームをプレイ可能な構成とする。そして、上記実施形態で説明した機能構成を、サーバシステム1100にて実現する構成とすればよい。なお、サーバシステム1100の評価部においては、各端末から入力情報を受信し、プレーヤ毎に、プレーヤの入力を評価する処理を行う。また、サーバシステム1100の通信制御部は、サーバが処理した情報を各端末に送信する処理を行う。また、分散処理の観点から、機能構成の一部を業務用ゲーム装置1400やプレーヤ端末1500側で実行させる構成とすることもできる。オンラインゲームをピア・ツー・ピア型のシステムで実現する場合も適宜機能分散すればよい。
サーバシステム1100は、本体装置1101と、キーボード1106と、タッチパネル1108と、ストレージ1140とを備える。本体装置1101には、制御基板1150が搭載されている。制御基板1150には、CPU1151やGPU、DSPなどの各種マイクロプロセッサ、ASIC、VRAMやRAM,ROM等の各種ICメモリ1152、通信装置1153が搭載されている。
サーバシステム1100は、通信接続された業務用ゲーム装置1400やプレーヤ端末1500へ、ゲームを実行するのに必要なプログラムやデータを随時配信して管理するゲーム管理機能を有する。図28の例では、サーバシステム1100は単体として記しているが、サーバシステム1100には複数のブレードサーバを搭載し、相互に内部バスを介してデータ通信可能に接続された構成であっても良い。或いは、離れた場所に設置された独立した複数のサーバをデータ通信させることで、全体としてサーバシステム1100として機能させる構成であっても良い。