[ゲーム装置構成]
図1は、本実施形態における携帯型ゲーム装置1000の外観例を示す図である。また、図2は、ゲームプレイ中に下画面であるタッチパネル1008に表示される操作画面の例を示す図である。図1に示すように、携帯型ゲーム装置1000は、方向入力キー1002と、ボタンスイッチ1004と、液晶ディスプレイ1006と、タッチパネル1008と、スピーカ1010と、制御ユニット1012と、コンピュータ読み出し可能な情報記憶媒体であるメモリカード1200のデータを読み書きするためのメモリカード読取装置1014とを備える。その他、図示しない電源ボタンや音量調節ボタン、内蔵バッテリ、無線通信モジュール等が設けられている。メモリカード1200には、制御ユニット1012がゲームプレイに係る各種演算処理を行うために必要なプログラムや各種設定データ等が記憶されている。
制御ユニット1012には、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)、DSP(Digital Signal Processing)等の各種マイクロプロセッサ、ASIC、FPGA、VRAMやRAM、ROM等の各種ICメモリ、無線基地局と無線接続するための無線通信モジュール、液晶ディスプレイ1006やタッチパネル1008のドライバ回路、方向入力キー1002やボタンスイッチ1004からの操作入力信号を受信する回路、スピーカ1010へ音信号を出力するためのアンプ回路、メモリカード読取装置1014への信号入出力回路といったいわゆるI/F回路(インターフェース回路)等が搭載されている。これら制御ユニット1012に搭載されている各要素は、それぞれバス回路を介して電気的に接続され、データの読み書きや信号の送受信が可能に接続されている。
制御ユニット1012は、メモリカード読取装置1014によってメモリカード1200に格納されているプログラムや各種設定データを読み出し、搭載するICメモリにこれらを一時記憶する。そして、読み出したプログラムに従って演算処理を行い、方向入力キー1002やボタンスイッチ1004、タッチパネル1008の操作入力に応じて携帯型ゲーム装置1000の各部を制御して、ゲームを実行する。
なお、ゲームの実行に必要なプログラムや各種設定データは、メモリカード1200から読み出して取得する構成に限らず、無線通信モジュールを介してインターネットやLAN(Local Area Network)、WAN(Wide Area Network)等の有線/無線の通信回線に接続し、外部装置からダウンロードする構成としてもよい。
本実施形態では、携帯型ゲーム装置1000は、音楽ゲームの一種である和太鼓演奏ゲームを実行する。そのために、ゲームプレイ中、下画面であるタッチパネル1008には、図2に示すように、和太鼓を模した図柄が表示される。この和太鼓の図柄は、円形の打面領域IAと、その外縁に沿うリング状のリム領域IBとで構成されている。一方、上画面である液晶ディスプレイ1006には、主に、タッチパネル1008の打面領域IA又はリム領域IBを指定してプレーヤに操作入力すべきタイミング(基準入力タイミング)を指示する指示標識としての音符を表示したゲーム画面が表示され、スピーカ1010からは、課題曲や操作入力に応じた和太鼓の叩打音が出力される。
図3は、ゲーム画面の一例を示す図である。図3に示すように、ゲーム画面は、画面を左右に横切る音符移動経路Lを備える。この音符移動経路Lにおいて、音符は、例えば、図3中向かって右端の音符移動開始位置Pから流れるように移動し、音符移動経路Lの終端側に定められた判定枠Fに達するタイミングによって当該音符の種類に応じた操作入力をすべき基準入力タイミングであることを指示する。この際、音符は、第1実施形態〜第4実施形態で例示する可変速モードの実行中を除き、音符移動経路Lの全体を一定の移動速度VNで移動する(定速モード)。定速モード時の移動速度VNは、例えば課題曲の難易度等に応じた速度とする等、適宜設定してよい。
基準入力タイミングは、音符の種類等とともに課題曲毎に予め定められている(図8の譜面データ731)。音符の種類としては、例えば、打面領域IA又はリム領域IBに対する1回の操作入力を指示する円形状の音符(打面用音符/リム用音符)N11,N12や、打面領域IA又はリム領域IBに対して連続した操作入力(連打)を指示する円筒形状の音符(打面用連打音符/リム用連打音符)N13等が用意される。そして、これらの音符は、それぞれ図2に示した図柄と同じ和太鼓を模したタッチ位置表示部RA,RBを備えており、一方を着色等で識別表示することによってタッチ位置(打面領域IA又はリム領域IB)を指示している。例えば、打面音符である音符N13は、タッチ位置表示部RAの着色によって、タッチパネル1008の打面領域IAをタッチ位置として視覚的に指示している。
そして、ゲームプレイ中は、音符により指示される基準入力タイミング及びタッチ位置に基づいて、操作入力の良否が例えば“良”、“可”、及び“不可”の3段階で評価される。評価結果は判定枠Fの近傍に演出表示され、評価結果に基づいてゲームスコアが算出・更新される。基本的には、操作入力のタイミング及びタッチ位置が正しければゲームスコアは高くなる。また、ミスなく連続して入力できた回数(連続コンボ数)が増加するほどゲームスコアは高くなる。このゲームスコアは、画面上部のスコアゲージSGによってメータ表示される。
この和太鼓演奏ゲームにおいて、携帯型ゲーム装置1000のプレーヤは、液晶ディスプレイ1006に表示されたゲーム画面を見ながら、スピーカ1010から出力される課題曲に合わせてタッチパネル1008の打面領域IAやリム領域IBを手指やタッチペン1100を用いてタッチ操作することで操作入力を行い、ゲームをプレイする。
〔第1実施形態〕
第1実施形態では、ゲームプレイ中の所与の出現タイミングにおいて音符移動経路Lの中間区間(途中部分)を瞬間移動エリアとして表示制御し、音符を移動させるモード(音符移動モード)を定速モードから可変速モードの一例である瞬間移動モードに切り替える。第1実施形態において「始端側区間」は、音符移動経路L上の瞬間移動エリアよりも音符移動開始位置P側の区間をいい、「終端側区間」は、瞬間移動エリアよりも判定枠F側の区間をいう。
図4は、瞬間移動モードの開始時における音符移動経路Lに着目した表示遷移例を示す図である。図4に示すように、出現タイミングになると、音符移動経路L上の所与の初期位置に始端A1INと終端A1OUTとが重なった状態で表示される(図4(a))。その後、終端A1OUTがその場にとどまったまま、始端A1INが音符移動開始位置P(音符移動経路Lの始端側)に向かって移動することで瞬間移動エリアA1の長さ(音符の移動方向に沿った長さ)が徐々に広がっていく(図4(b))。始端A1INの移動は、瞬間移動エリアA1の長さが所与の設定長となった時点で停止する(図4(c))。瞬間移動モードは、このような瞬間移動エリアA1の表示制御(設定)とともに開始される。そして、瞬間移動モードの実行中に始端側区間から瞬間移動エリアA1へと進入した音符N14は、始端A1INを境にして次第に欠けていき、欠けた分だけ終端A1OUTから現れるように表示制御されて終端側区間に瞬間移動する(図4(d))。音符が瞬間移動エリアA1に差し掛かっている位置にある間は、音符のうち、始端側区間から瞬間移動エリアA1に入った部分が、終端側区間から出現するように、始端側区間および終端側区間の両方に音符が描画される。
この瞬間移動モードは、出現タイミングから所与の出現時間が経過した時点で終了するが、その際には、瞬間移動モードの開始時とは逆に、始端A1INが判定枠F(音符移動経路Lの終端側)に向かって移動し、瞬間移動エリアA1が徐々に狭まっていく。そして、始端A1INが終端(初期位置)A1OUTまで移動するとその表示が消え、瞬間移動モードが終了して定速モードに戻る。
[原理]
図5は、瞬間移動モードの実行中における音符移動経路L上の音符の移動制御を説明する図であり、上段に音符の内部位置の座標系(xt,yt)を示し、下段に音符の表示位置の座標系(xs,ys)を示している。また、図5に示す表示範囲は、音符の移動方向に沿った音符移動経路Lの長さに相当する。
ここで、モード切替の有無にかかわらず、音符の基準入力タイミングは、定速モード及び瞬間移動モードのいずれの場合も譜面データ731に従って変化しないこととする。そこで、課題曲の再生開始から終了までの間、移動速度を定速モード時の移動速度VNとした場合の音符移動経路L上の音符の位置(例えば中心位置)を、内部位置として随時算出する。そして、定速モードの実行中は、内部位置をそのまま表示位置とし、音符を描画する。
一方、瞬間移動モードを開始するにあたっては、内部位置の座標系(xt,yt)において、瞬間移動エリアA1に対応する範囲を適用範囲B1として用いる。適用範囲B1の位置は瞬間移動エリアA1の出現当初の位置(この場合終端A1OUTの位置)である。図5の上の図に示すように、適用範囲B1はライン状(音符移動経路L上における所与の位置であるため点状とも言える)に定められる。そして、瞬間移動モードの実行中は、内部位置において適用範囲B1と接触する音符の移動に、瞬間移動を適用する。
具体的には、音符移動経路L上に、初期位置を終端A1OUTとする設定長DA1の瞬間移動エリアA1を表示制御する。その上で、図5中に一点鎖線の矢印で示すように、内部位置の座標系(xt,yt)で適用範囲B1よりも上流の音符を、設定長DA1だけ音符移動開始位置P側にずらして表示位置とし、表示位置に従って表示範囲内の音符を描画する。内部位置の座標系(xt,yt)で適用範囲B1よりも下流の音符は、内部位置をそのまま表示位置とし(二点鎖線の矢印)、音符を描画する。また、その際、内部位置の座標系(xt,yt)で音符と適用範囲B1とのヒット判定を行う。そして、適用範囲B1と接触している音符については、瞬間移動エリアA1の始端A1INと終端A1OUTとの両方に描画する。音符の位置を音符の中心で表すならば、内部位置が始端側区間内の音符であれば内部位置をそのまま表示位置とする位置にも音符を描画することとする。また、内部位置が終端側区間内の音符であれば、内部位置を音符移動開始位置P側に設定長DA1ずらした表示位置にも音符を描画する。その後、瞬間移動エリアA1をマスクすることで、それらの瞬間移動エリアA1内の部分を隠す。音符が瞬間移動エリアA1に差し掛かっている位置にある間は、始端側区間および終端側区間の両方に音符が描画され、瞬間移動エリアA1の部分がマスクされたように表示される。そのため、仮に、その移動過程をゆっくりと表示することができれば、音符は、瞬間移動エリアA1に隠れた部分が、反対側の終端側区間に現れ、瞬間移動エリアA1を徐々に突き抜けていくように表現される。
なお、瞬間移動モードの開始当初、瞬間移動エリアA1を徐々に広げている間は、その時の瞬間移動エリアA1の長さだけ内部位置をずらすことで表示位置が算出される。例えば、図4に示した画面遷移の過程での音符N14の表示位置は、図4中に破線矢印で示すように、徐々に広がる瞬間移動エリアA1の拡張速度と音符の定速速度の差速度等に応じてずらされる。図4の例では、瞬間移動エリアA1を徐々に広げている間は、見た目上逆走することとなる。この間の処理は、図5を参照して説明した処理と同一である。また、瞬間移動モードの終了時に、瞬間移動エリアA1を徐々に狭める間も同様である。
本処理により、瞬間移動モード中、音符移動経路L上の音符は、始端側区間を移動速度VNで定速で移動する。そして、瞬間移動エリアA1を瞬間移動し、終端側区間を移動速度VNで定速で移動する。このような音符移動経路L上での音符の瞬間移動は、ゲームをプレイしているプレーヤを視覚的に混乱させ、誤操作を誘発する。例えば、音符の瞬間移動に気を取られてしまい、プレーヤが焦って基準入力タイミングで操作入力できない等の事態を引き起こし得る。しかし、視覚的な混乱だけであって、現実の基準入力タイミングは変化していない。
[機能構成]
図6は、第1実施形態におけるゲーム装置1の機能構成の一例を示すブロック図である。図6に示すように、ゲーム装置1は、操作部100と、処理部200と、表示部300と、音出力部400と、記憶部500とを備える。
操作部100は、プレーヤがゲームに関する各種操作を入力するためのものであり、例えば、ボタンスイッチやレバー、マウス、キーボード、タッチパネル、各種センサ等の入力装置によって実現される。図1では、方向入力キー1002やボタンスイッチ1004、タッチパネル1008がこれに該当する。
処理部200は、記憶部500に格納されるプログラムやデータ等に基づいて、ゲーム装置1全体の制御、ゲーム装置1内の各機能部への指示、画像処理、音処理等の各種処理を行う。この処理部200の機能は、CPUやGPU等のマイクロプロセッサ、ASIC、FPGA、ICメモリ等の電子部品によって実現される。図1では、制御ユニット1012がこれに該当する。
また、処理部200は、主な機能部として、ゲーム演算部210と、画像生成部270と、音生成部290とを含む。
ゲーム演算部210は、操作部100から入力される操作入力信号、記憶部500から読み出した第1ゲームプログラム600やゲームデータ700等に基づいて和太鼓演奏ゲームを実行するための種々のゲーム処理を行い、処理結果を画像生成部270や音生成部290に出力する。画像生成部270は、ゲーム演算部210の処理結果に基づいてゲーム画面を生成し、生成したゲーム画面の画像信号を表示部300に出力する。音生成部290は、ゲーム演算部210の演算結果に基づいてBGM(課題曲)や叩打音等のゲーム音を生成し、生成したゲーム音の音信号を音出力部400に出力する。
また、ゲーム演算部210は、音符制御部220と、モード切替制御手段としてのモード切替制御部230と、スコア演算部240とを含む。
音符制御部220は、音符制御処理を行い、課題曲の譜面データ731(図8参照)に設定される基準入力タイミングで該当する音符(指示標識の一例)が判定枠Fに達するように、その音符移動経路L上の移動を制御する移動制御手段である。この音符制御部220は、定速モードを実行する定速モード実行手段としての定速モード実行部221と、瞬間移動モードを実行する可変速モード実行手段及び瞬間移動制御手段としての瞬間移動モード実行部223とを含む。
モード切替制御部230は、課題曲の再生開始時において音符移動モードを定速モードに初期設定するとともに、所与の出現タイミングで瞬間移動モードに切り替える。また、出現タイミングからの経過時間を監視し、所与の出現時間が経過した場合に音符移動モードを定速モードに戻す。このモード切替制御部230は、音符移動モードを瞬間移動モードに切り替えてから定速モードに戻すまでの間、音符移動経路L上に瞬間移動エリアA1の表示を制御する瞬間移動エリア設定部231を含む。
スコア演算部240は、プレーヤの操作入力を評価し、評価結果に基づいてゲームスコアを算出・更新する処理や、連続コンボ数を計数してゲームスコアを加点する等の処理を行う。タイミングの評価は、例えば、操作入力のタイミングを基準入力タイミングと比較し、その時間差を用いて“良”、“可”、及び“不可”の3段階評価を行う。タッチ位置が正しくない場合の評価については、“不可”とする。
表示部300は、画像生成部270から入力される画像信号に基づいて各種ゲーム画面を表示するためのものである。この表示部300の機能は、例えば、フラットパネルディスプレイ、ブラウン管(CRT)、プロジェクター、ヘッドマウントディスプレイといった画像表示装置によって実現される。図1では液晶ディスプレイ1006がこれに該当する。
音出力部400は、音生成部290から入力される課題曲や叩打音等の音信号に基づいて各種ゲーム音を出力するためのものである。図1では、スピーカ1010がこれに該当する。
記憶部500には、処理部200にゲーム装置1を統合的に制御させ、和太鼓演奏ゲームを実行するために必要なプログラムやデータ等が格納される。特に、第1実施形態を実現するため、第1ゲームプログラム600と、ゲームデータ700とが格納される。この機能は、例えば、各種ICメモリやハードディスク、ROM、RAM等によって実現される。図1では、メモリカード1200がこれに該当する。
第1ゲームプログラム600は、ゲーム演算部210を、音符制御部220、モード切替制御部230、及びスコア演算部240として機能させ、和太鼓演奏ゲームを実行するためのプログラムである。
ゲームデータ700は、和太鼓演奏ゲームの実行に必要なデータであり、プレイデータ710と、音楽データ群720と、譜面データ群730と、瞬間移動エリア出現データ740とを含む。また、図示しないが、このゲームデータ700には、例えば、音符の画像データ等のゲーム画面の表示に用いるゲーム画像や、和太鼓の打面やリムの叩打音を含むゲーム音等が予め格納される。
プレイデータ710には、音楽データと譜面データとの対応関係が設定される。図7は、プレイデータ710のデータ構成例を示す図である。図7に示すように、プレイデータ710には、曲目と対応付けて、音楽データと譜面データとの対応関係が設定されている。例えば、曲目“曲A”には、音楽データ“音楽A”と譜面データ“譜面A”との対応関係が対応付けられている。
前述のプレイデータ710において曲目と対応付けて設定されている“音楽A”,“音楽B”,“音楽C”,・・・の音楽データ自体は音楽データ群720に格納されている。一方、プレイデータ710において曲目と対応付けて設定されている“譜面A”,“譜面B”,“譜面C”,・・・の譜面データ自体は譜面データ群730に格納されている。音楽データと譜面データとをプレイデータ710で対応付けることで、例えば、同じ“音楽”でありながら、操作の易しい初心者向けの“譜面”や操作の難しい上級者向けの“譜面”を設定することができ、全体のデータ量を低減させることができる。図8は、譜面データ群730のデータ構成例を示す図である。図8に示すように、譜面データ群730は、“譜面A”,“譜面B”,“譜面C”,・・・の譜面毎に設定された譜面データ731を備える。
譜面データ731には、課題曲の再生開始時を基準として操作入力すべきタイミングを示した基準入力タイミングと対応付けて、音符識別番号と、音符種類と、タッチ位置指示データとが設定される。
音符種類には、打面用音符、リム用音符、打面用連打音符、リム用連打音符等の音符種類が設定される。
タッチ位置指示データは、該当する基準入力タイミングにおいて操作入力すべきタッチ位置を特定するために用いられる。具体的には、打面用音符及び打面用連打音符のタッチ位置指示データには、打面領域と対応付けて“ON”が、リム領域と対応付けて“OFF”が設定されており、これにより、タッチパネル1008の打面領域IAが操作入力すべきタッチ位置として特定される。また、リム用音符及びリム用連打音符のタッチ位置指示データには、打面領域と対応付けて“OFF”が、リム領域と対応付けて“ON”が設定されており、これにより、タッチパネル1008のリム領域IBが操作入力すべきタッチ位置として特定される。
図6に戻り、瞬間移動エリア出現データ740には、音符移動経路L上に瞬間移動エリアA1を表示制御するためのデータが設定される。図9は、瞬間移動エリア出現データ740のデータ構成例を示す図である。図9に示すように、瞬間移動エリア出現データ740は、曲名毎に用意され、出現タイミングと、初期位置と、出現時間と、設定長とが設定される。
出現タイミングは、モード切替制御部230が瞬間移動モード実行部223による瞬間移動モードの実行を発動制御するタイミングであり、該当する課題曲の再生開始からの時間として設定される。初期位置には、瞬間移動モードの開始時において音符移動経路L上に始端A1INと重ねて表示制御される瞬間移動エリアA1の終端A1OUTの位置が設定される。出現時間には、瞬間移動モードを実行する時間が設定される。設定長には、瞬間移動エリアA1の設定長DA1が設定される。
なお、課題曲の再生中に瞬間移動モードを発動する回数は1回に限らず、複数回であってもよい。その場合は、出現タイミングに複数のタイミングを設定すればよい。あるいは、その都度初期位置や出現時間、設定長を変える場合は、出現タイミング毎に各値を設定しておく。また、出現タイミングを条件とし、当該条件を満足したタイミングで瞬間移動モードの実行を発動させることとしてもよい。条件としては、例えば、ゲームスコアがある値に達したことや、連続コンボ数がある数値に達したこと、ある特定の音符に対する操作入力がなされたこと、等を定めることができる。
また、記憶部500には、ゲーム中に適宜更新されるデータとして、プレイ中譜面データ750と、現モードデータ760と、音符制御データ770と、スコアデータ780とが格納される。
プレイ中譜面データ750は、ゲーム開始前にプレーヤにより選曲された課題曲の譜面データに基づいて作成される。このプレイ中譜面データ750は、図8の譜面データ731に、基準入力タイミング毎の評価結果の項目を追加したものである。評価結果には、ゲーム中に操作入力に対する評価結果が随時設定される。
現モードデータ760には、現在の音符移動モードが設定される。第1実施形態では、モード切替制御部230によって“定速モード”又は“瞬間移動モード”が切り替えて設定される。
音符制御データ770には、音符制御部220が音符移動経路L上での音符の移動を制御するのに用いるデータが設定される。図10は、音符制御データ770のデータ構成例を示す図である。図10に示すように、音符制御データ770には、音符識別番号と対応付けて、該当する音符の現在の内部位置(xt,yt)と表示位置(xs,ys)とが設定される。
スコアデータ780には、現在のゲームスコアや連続コンボ数、スコアゲージにおけるメータ表示の値に相当するゲージ値等が設定される。
[処理の流れ]
図11は、ゲーム処理の流れを示すフローチャートである。なお、ここで説明する処理は、処理部200が第1ゲームプログラム600を読み出して実行することによって実現される。
図11に示すように、先ず、ゲーム演算部210が、プレイデータ710に設定されている曲目を一覧表示した選曲画面を表示するための処理を行い、プレーヤの選曲操作に従って課題曲を選曲する(ステップa1)。このとき、ゲーム演算部210は、選曲した課題曲の譜面データ731を譜面データ群730から読み出し、プレイ中譜面データ750を作成する。また、モード切替制御部230が、現モードデータ760に“定速モード”を設定して音符移動モードを初期設定する(ステップa3)。
その後、ゲーム演算部210は、課題曲の再生を開始するとともに、音符移動経路Lに何も表示されていないゲーム画面を表示部300に表示処理してゲームを開始し(ステップa5)、課題曲の再生が終了するまでループAの処理を繰り返し実行する(ステップa7〜ステップa17)。
ループAでは先ず、モード切替制御部230が、モード切替制御処理を行う(ステップa9)。図12は、モード切替制御処理の処理手順を示すフローチャートである。
モード切替制御処理では、モード切替制御部230は、現モードデータ760を読み出して現在の音符移動モードが定速モードか否かを判定する。そして、モード切替制御部230は、定速モードであれば(ステップb1:YES)、瞬間移動エリア出現データ740を読み出して出現タイミングか否かを判定する。現在時刻が出現タイミングでなければ(ステップb3:NO)、図11のステップa9にリターンする。
一方、現在時刻が出現タイミングの場合には(ステップb3:YES)、瞬間移動エリア設定部231が、瞬間移動エリア出現データ740に従って初期位置からその長さを設定長まで徐々に広げながら瞬間移動エリアA1を表示する制御を行い、瞬間移動モードを開始させる(ステップb5)。その際、モード切替制御部230が、現モードデータ760を“瞬間移動モード”に更新して音符移動モードを瞬間移動モードに切り替える(ステップb7)。その後、図11のステップa9にリターンする。
また、モード切替制御部230は、ステップb1において現在の音符モードが定速モードではないと判定した場合(すなわち瞬間移動モードの場合)には(ステップb1:NO)、出現タイミングから出現時間が経過したか否かを判定する。経過していなければ(ステップb9:NO)、図11のステップa9にリターンする。
そして、出現時間が経過したと判定した場合には(ステップb9:YES)、瞬間移動エリア設定部231が、その長さを徐々に狭めながら瞬間移動エリアA1を表示する制御を行い、瞬間移動モードを終了させる(ステップb11)。その際、モード切替制御部230は、現モードデータ760を“定速モード”に更新して音符移動モードを定速モードに戻す(ステップb13)。その後、図11のステップa9にリターンする。
図11に戻り、続くステップa11では、音符制御部220が、音符制御処理を行う。図13は、音符制御処理の処理手順を示すフローチャートである。
音符制御処理では、音符制御部220は、プレイ中譜面データ750に従い、基準入力タイミングが現在時刻よりも後の音符を順次処理対象としてループBの処理を実行する(ステップc1〜ステップc21)。
ループBでは先ず、音符制御部220は、処理対象の音符の内部位置を算出する(ステップc3)。そして、現在の音符移動モードが定速モードの場合は(ステップc5:YES)、定速モード実行部221が、内部位置を表示位置として、音符移動経路L上に該当する音符を描画する(ステップc5)。
一方、現在の音符移動モードが定速モードではなく、瞬間移動モードの場合には(ステップc5:NO)、瞬間移動モード実行部223が、瞬間移動エリアA1の初期位置を適用範囲B1として用い、処理対象の音符の内部位置が適用範囲B1よりも音符移動開始位置P側(上流)なのか判定枠F側(下流)なのかを判定する。そして、音符移動開始位置P側の場合は(ステップc9:YES)、瞬間移動モード実行部223は、内部位置を瞬間移動エリアA1の長さだけ音符移動開始位置P側にずらして表示位置とし、音符移動経路L上に該当する音符を描画する(ステップc11)。判定枠F側の場合は(ステップc9:NO)、瞬間移動モード実行部223は、内部位置を表示位置として、音符移動経路L上に該当する音符を描画する(ステップc13)。
続いて、瞬間移動モード実行部223は、内部位置の座標系(xt,yt)で音符と適用範囲B1とのヒット判定を行う。そして、瞬間移動モード実行部223は、処理対象の音符が適用範囲B1と接触している場合には(ステップc15:YES)、表示位置が始端側区間内であれば内部位置にも該当する音符を描画し、表示位置が終端側区間内であれば、表示位置を音符移動開始位置P側に瞬間移動エリアA1の長さだけずらした位置にも音符を描画する(ステップc17)。その後、瞬間移動モード実行部223は、瞬間移動エリアA1をマスクする(ステップc19)。以上のようにして音符毎にループBの処理を実行したならば、図11のステップa11にリターンする。
続くステップa13では、スコア演算部240が、操作入力を評価してゲームスコアを算出・更新する。このとき、スコア演算部240は、タッチパネル1008がタッチ操作されていれば操作入力されたと判定し、そのタイミングと基準入力タイミングとの時間差や、タッチ位置の正誤を評価する。その後、ゲーム演算部210が、現在のゲームスコアに基づいてスコアゲージSGを伸長させる(ステップa15)。
そして、課題曲が全て再生されたならばループAを終了し、ゲーム演算部210が、ゲーム結果を表示部300に表示処理する(ステップa19)。例えば、ゲーム演算部210は、スコアデータ780に設定されている最終的なゲームスコアや連続コンボ数等を適宜表示する。
以上説明したように、第1実施形態によれば、所与の出現タイミングで、音符移動モードを定速モードから瞬間移動モードに切り替えることができる。そして、音符移動経路L上に瞬間移動エリアA1を表示制御し、この瞬間移動エリアA1よりも始端側の区間から終端側の区間へと音符を瞬間移動させることができる。これによれば、音符移動経路L上での音符の移動に意外性を持たせてプレーヤの緊張感を高め、ゲームの面白味を向上させることができる。
〔第2実施形態〕
次に、第2実施形態について説明する。なお、第1実施形態と同様の部分については同一の符号を付して詳細な説明を省略する。第2実施形態では、ゲームプレイ中の所与の出現タイミングにおいて音符移動経路Lの中間区間を高速移動エリアとして表示制御し、音符移動モードを定速モードから可変速モードの一例である高速移動モードに切り替える。第2実施形態において「始端側区間」は、音符移動経路L上の高速移動エリアよりも音符移動開始位置P側の区間をいい、「終端側区間」は、高速移動エリアよりも判定枠F側の区間をいう。
図14は、高速移動モードの開始時における音符移動経路Lに着目した表示遷移例を示す図である。図14に示すように、出現タイミングになると、音符移動経路L上の所与の初期範囲が高速移動エリアA2として表示される(図14(a))。その後は、終端A2OUTがその場にとどまったまま始端A2INが音符移動開始位置Pに向かって移動し、高速移動エリアA2の長さが所与の設定長となるまで徐々に広がる(図14(b))。高速移動モードは、このような高速移動エリアA2の表示制御(設定)とともに開始される。そして、高速移動モードの実行中に始端側区間から高速移動エリアA2へと進入した音符N15は、始端側区間や終端側区間と比べて高速で移動する(図14(c))。例えば、音符は、始端側区間及び終端側区間では定速モード時の移動速度VNで移動し、高速移動エリアA2ではVNより速い移動速度VHで移動する。
この高速移動モードは、出現タイミングから所与の出現時間が経過した時点で終了するが、その際には、高速移動モードの開始時とは逆に、始端A2INが判定枠F側に向かって移動することで高速移動エリアA2が徐々に狭まっていく。そして、初期範囲まで高速移動エリアA2が狭まるとその表示が消え、高速移動モードが終了して定速モードに戻る。
[原理]
図15は、高速移動モードの実行中における音符移動経路L上の音符の移動制御を説明する図であり、上段に音符の内部位置の座標系(xt,yt)を示し、下段に音符の表示位置の座標系(xs,ys)を示している。高速移動モードでは、内部位置の座標系(xt,yt)において、高速移動エリアA2に対応する囲を適用範囲B2として用いる。そして、高速移動モードの実行中は、内部位置が適用範囲B2内の音符の移動に、高速移動を適用する。
具体的には、図15中に一点鎖線の矢印で示すように、内部位置の座標系(xt,yt)で適用範囲B2よりも上流の音符を、設定長DA2だけ音符移動開始位置P側にずらして表示位置とし、音符を描画する。内部位置の座標系(xt,yt)で適用範囲B2よりも下流の音符は、内部位置をそのまま表示位置とし(二点鎖線の矢印)、音符を描画する。
一方、適用範囲B2内の音符については、高速移動エリアA2内を移動速度VHで移動するように、内部位置を表示位置に変換した上で描画する。ここで、適用範囲B2の長さ(すなわち初期範囲の長さ)DB2と高速移動エリアA2の設定長DA2とは、音符が適用範囲B2内(すなわち初期範囲内)をその始端B2INから終端B2OUTまで移動速度VNで移動するのに要する時間と、音符が高速移動エリアA2内をその始端A2INから終端A2OUTまで移動速度VHで移動するのに要する時間とが同じになるように定められる。例えば、移動速度VHを移動速度VNの倍の速度とするならば、高速移動エリアA2の設定長DA2は、適用範囲B2の長さDB2の倍の長さとされる。
そして、次式(1)に従い、高速移動エリアA2において表示位置から終端A2OUTまでの距離DP2を算出し、表示位置を特定する。次式(1)において、DO2は、適用範囲B2において内部位置から終端B2OUTまでの距離である。
DP2=(DO2/VN)×VH ・・・(1)
なお、高速移動モードの開始時、高速移動エリアA2を徐々に広げている間は、その時の高速移動エリアA2の長さに応じて高速移動エリアA2内の音符の移動速度がVHとなるまで徐々に速くなるように調整され、表示位置が特定される。逆に、高速移動モードの終了時に高速移動エリアA2を徐々に狭めている間は、高速移動エリアA2内の音符の移動速度がVNとなるまで徐々に遅くなるように調整されて、表示位置が特定される。
本処理により、高速移動モード中、音符移動経路L上の音符は、始端側区間を移動速度VNで移動する。そして、高速移動エリアA2を移動速度VHで高速移動し、終端側区間を移動速度VNで移動する。このような音符移動経路L上での音符の高速移動は、第1実施形態と同様にプレーヤの視覚的な混乱を招き、誤操作を誘発し得る。但し、視覚的な混乱を招くだけであって、現実の基準入力タイミングは変化していない。
[機能構成]
図16は、第2実施形態におけるゲーム装置1aの機能構成例を示すブロック図である。図16に示すように、ゲーム装置1aは、操作部100と、処理部200aと、表示部300と、音出力部400と、記憶部500aとを備える。
第2実施形態では、処理部200aにおいて、ゲーム演算部210aが、音符制御部220aと、モード切替制御部230aと、スコア演算部240とを含む。
音符制御部220aは、定速モードを実行する定速モード実行部221と、高速移動モードを実行する高速移動制御手段としての高速移動モード実行部224aとを含む。
モード切替制御部230aは、課題曲の再生開始時において音符移動モードを定速モードに初期設定するとともに、所与の出現タイミングで高速移動モードに切り替える。また、出現タイミングからの経過時間を監視し、所与の出現時間が経過した場合に音符移動モードを定速モードに戻す。このモード切替制御部230aは、音符移動モードを高速移動モードに切り替えてから定速モードに戻すまでの間、音符移動経路L上に高速移動エリアA2の表示を制御する高速移動エリア設定部232aを含む。
また、記憶部500aには、第2実施形態を実現するため、第2ゲームプログラム601aと、ゲームデータ700aとが格納される。
第2ゲームプログラム601aは、ゲーム演算部210aを、音符制御部220a、モード切替制御部230a、及びスコア演算部240として機能させるためのプログラムである。
また、ゲームデータ700aは、プレイデータ710と、音楽データ群720と、譜面データ群730と、高速移動エリア出現データ741aと、プレイ中譜面データ750と、現モードデータ760と、音符制御データ770と、スコアデータ780とが格納される。
高速移動エリア出現データ741aには、音符移動経路L上に高速移動エリアA2を表示制御するためのデータが設定される。図17は、高速移動エリア出現データ741aのデータ構成例を示す図である。図17に示すように、高速移動エリア出現データ741aは、曲名毎に用意され、出現タイミングと、初期範囲と、出現時間と、設定長とが設定される。初期範囲には、高速移動モードの開始時に音符移動経路L上に表示制御される高速移動エリアA2の始端A2IN及び終端A2OUTの位置が設定される。設定長には、高速移動エリアA2の設定長DA2が設定される。なお、出現タイミングを条件とし、当該条件を満足したタイミングで高速移動モードの実行を発動させることとしてもよい。条件としては、例えば、ゲームスコアがある値に達したことや、連続コンボ数がある数値に達したこと、ある特定の音符に対する操作入力がなされたこと、等を定めることができる。
現モードデータ760には、モード切替制御部230aによって“定速モード”又は“高速移動モード”が切り替えて設定される。
[処理の流れ]
第2実施形態では、第1実施形態で図11を参照して説明したゲーム処理において、ステップa9のモード切替制御処理にかえて図18に示すモード切替制御処理を行い、ステップa11の音符制御処理にかえて図19に示す音符制御処理を行う。
図18に示すように、第2実施形態のモード切替制御処理では、現在時刻が出現タイミングの場合に(ステップb3:YES)、高速移動エリア設定部232aが、高速移動エリア出現データ741aに従って初期範囲からその長さを設定長まで徐々に広げながら高速移動エリアA2を表示する制御を行い、高速移動モードを開始させる(ステップd5)。その際、モード切替制御部230aは、現モードデータ760を“高速移動モード”に更新して音符移動モードを高速移動モードに切り替える(ステップd7)。
また、モード切替制御部230aは、ステップb1において現在の音符モードが定速モードではないと判定した場合(すなわち高速移動モードの場合)に(ステップb1:NO)、出現タイミングから出現時間が経過したか否かを判定する。そして、出現時間が経過したと判定した場合には(ステップb9:YES)、高速移動エリア設定部232aが、その長さを徐々に狭めながら高速移動エリアA2を表示する制御を行い、高速移動モードを終了させる(ステップd11)。その際、モード切替制御部230aは、現モードデータ760を“定速モード”に更新して音符移動モードを定速モードに戻す(ステップd13)。
また、図19に示すように、第2実施形態の音符制御処理では、現在の音符移動モードが定速モードではなく、高速移動モードの場合に(ステップc5:NO)、高速移動モード実行部224aが、初期範囲を適用範囲B2として用い、処理対象の音符の内部位置が適用範囲B2よりも音符移動開始位置P側(上流)なのか判定枠F側(下流)なのかを判定する。そして、音符移動開始位置P側の場合は(ステップe51:YES)、高速移動モード実行部224aは、内部位置を高速移動エリアA2の長さだけ音符移動開始位置P側にずらして表示位置とし、音符移動経路L上に該当する音符を描画する(ステップe52)。また、音符移動開始位置P側ではなく(ステップe51:NO)、判定枠F側の場合は(ステップe53:YES)、高速移動モード実行部224aは、内部位置を表示位置として、音符移動経路L上に該当する音符を描画する(ステップe54)。
また、判定枠F側でも音符移動開始位置P側でもない場合、すなわち適用範囲B2内である場合には(ステップe53:NO)、高速移動モード実行部224aは、上記式(1)に従って高速移動エリアA2の終端A2OUTから表示位置までの距離DP2を算出し、表示位置を特定する(ステップe55)。そして、高速移動モード実行部224aは、特定した表示位置に従い、音符移動経路L上に該当する音符を描画する(ステップe56)。
以上説明したように、第2実施形態によれば、所与の出現タイミングで音符移動モードを定速モードから高速移動モードに切り替えることができる。そして、音符移動経路L上に高速移動エリアA2を表示制御し、この高速移動エリアA2内を始端側区間及び終端側区間よりも高速で移動させることができる。これによれば、音符移動経路L上での音符の移動に意外性を持たせてプレーヤの緊張感を高め、ゲームの面白味を向上させることができる。
〔第3実施形態〕
次に、第3実施形態について説明する。なお、第1実施形態等と同様の部分については同一の符号を付して詳細な説明を省略する。第3実施形態では、ゲームプレイ中の所与の出現タイミングで音符移動経路Lを始端側区間と終端側区間とに区画する境界を時差移動マークとして表示制御し、音符移動モードを定速モードから可変速モードの一例である時差移動モードに切り替える。第3実施形態において「始端側区間」は、音符移動経路L上の時差移動マークよりも音符移動開始位置P側の区間をいい、「終端側区間」は、時差移動マークよりも判定枠F側の区間をいう。
図20は、時差移動モードの開始時における音符移動経路Lに着目した画面遷移例を示す図である。図20に示すように、出現タイミングになると、音符移動経路L上の所与の初期範囲が時差移動エリアA3として表示される(図20(a))。その後、終端A3OUTがその場にとどまったまま、始端A3INが判定枠Fに向かって移動することで時差移動エリアA3が徐々に狭まっていく(図20(b))。始端A3INの移動は、終端A3OUTと重なった時点で停止し、そのまま時差移動マークM3となる(図20(c))。時差移動モードは、このような時差移動マークM3の表示制御(設定)とともに開始される。そして、図20(c)に示すように、時差移動モードの実行中に始端側区間から時差移動マークM3にさしかかった音符N16は、時差移動マークM3を境にして次第に欠けていき、そのまま音符移動経路L上から一時消去される。そして、所与の非表示時間を経て時差移動マークM3から終端側区間側へと徐々に出現することで、終端側区間側に時差移動する(図20(d))。
この時差移動モードは、出現タイミングから所与の出現時間が経過した時点で終了するが、その際には、時差移動モードの開始時とは逆に、始端A3INが音符移動開始位置P側に向かって移動する。そして、初期範囲まで時差移動エリアA3が広がるとその表示が消え、時差移動モードが終了して定速モードに戻る。
[原理]
図21は、時差移動モードの実行中における音符移動経路L上の音符の移動制御を説明する図であり、上段に音符の内部位置の座標系(xt,yt)を示し、下段に音符の表示位置の座標系(xs,ys)を示している。時差移動モードでは、内部位置の座標系(xt,yt)において、時差移動エリアA3の初期範囲を適用範囲B3として用いる。そして、時差移動モードの実行中は、内部位置の座標系(xt,yt)で適用範囲B3内の音符の移動に、時差移動を適用する。
具体的には、図21中に一点鎖線の矢印で示すように、内部位置の座標系(xt,yt)で適用範囲B3よりも上流の音符を、適用範囲B3の長さ(時差移動エリアA3の初期範囲の長さ)DB3だけ判定枠F側にずらして表示位置とし、表示位置に従って表示範囲内の音符を描画する。内部位置の座標系(xt,yt)で適用範囲B3よりも下流の音符は、内部位置をそのまま表示位置とし(二点鎖線の矢印)、音符を描画する。また、内部位置の座標系(xt,yt)で音符と適用範囲B3とのヒット判定を行う。そして、適用範囲B3と接触している音符(一部又は全部が重なる音符)については、その表示位置において非接触部分のみ(重なっていない部分のみ)を描画する。その結果、音符は、その内部位置が適用範囲B3内である間、非表示となる。
なお、時差移動モードの開始時に時差移動エリアA3を徐々に狭めている間や、時差移動モードの終了時に時差移動エリアA3を徐々に広げている間は、その時の時差移動エリアA3の長さだけ内部位置をずらすことで表示位置が算出される。また、その間の時差移動エリアA3内の音符の表示の仕方はどのようなものでもよいが、例えば、出現タイミングの時点で時差移動エリアA3に隠されて非表示とすると好適である。
本処理により、時差移動モード中、音符移動経路L上の音符は、始端側区間を移動速度VNで移動する。そして、時差移動マークM3にさしかかると一時的に音符移動経路Lから消え、所与の非表示時間を経て時差移動マークM3の終端側区間側に出現し、移動速度VNで移動する。このような音符移動経路L上での音符の時差移動は、第1実施形態と同様にプレーヤの混乱を招き、誤操作を誘発し得る。但し、視覚的な混乱を招くだけであって、現実の基準入力タイミングは変化していない。
[機能構成]
図22は、第3実施形態におけるゲーム装置1bの機能構成例を示すブロック図である。図22に示すように、ゲーム装置1bは、操作部100と、処理部200bと、表示部300と、音出力部400と、記憶部500bとを備える。
第3実施形態では、処理部200bにおいて、ゲーム演算部210bが、音符制御部220bと、モード切替制御部230bと、スコア演算部240とを含む。
音符制御部220bは、定速モードを実行する定速モード実行部221と、時差移動モードを実行する時差移動制御手段としての時差移動モード実行部225bとを含む。
モード切替制御部230bは、課題曲の再生開始時において音符移動モードを定速モードに初期設定するとともに、所与の出現タイミングで時差移動モードに切り替える。また、出現タイミングからの経過時間を監視し、所与の出現時間が経過した場合に音符移動モードを定速モードに戻す。このモード切替制御部230bは、音符移動モードを時差移動モードに切り替えてから定速モードに戻すまでの間、音符移動経路L上に時差移動エリアA3の表示を制御する時差移動マーク設定部233bを含む。
また、記憶部500bには、第3実施形態を実現するため、第3ゲームプログラム602bと、ゲームデータ700bとが格納される。
第3ゲームプログラム602bは、ゲーム演算部210bを、音符制御部220b、モード切替制御部230b、及びスコア演算部240として機能させるためのプログラムである。
また、ゲームデータ700bは、プレイデータ710と、音楽データ群720と、譜面データ群730と、時差移動マーク出現データ742bと、プレイ中譜面デー250と、現モードデータ260と、音符制御データ270と、スコアデータ280とが格納される。
時差移動マーク出現データ742bには、音符移動経路L上に時差移動マークM3を表示制御するためのデータが設定される。図23は、時差移動マーク出現データ742bのデータ構成例を示す図である。図23に示すように、時差移動マーク出現データ742bは、曲名毎に用意され、出現タイミングと、初期範囲と、出現時間と、設定位置とが設定される。なお、出現タイミングを条件とし、当該条件を満足したタイミングで時差移動モードの実行を発動させることとしてもよい。条件としては、例えば、ゲームスコアがある値に達したことや、連続コンボ数がある数値に達したこと、ある特定の音符に対する操作入力がなされたこと、等を定めることができる。
初期範囲には、時差移動モードの開始時に音符移動経路L上に表示制御される時差移動エリアA3の始端A3IN及び終端A3OUTの位置が設定される。また、設定位置は、時差移動モード中に表示制御される時差移動マークM3の位置であり、第3実施形態では、時差移動エリアA3の終端A3OUTの位置とされる。
現モードデータ260には、モード切替制御部230bによって“定速モード”又は“時差移動モード”が切り替えて設定される。
[処理の流れ]
第3実施形態では、第1実施形態で図11を参照して説明したゲーム処理において、ステップa9のモード切替制御処理にかえて図24に示すモード切替制御処理を行い、ステップa11の音符制御処理にかえて図25に示す音符制御処理を行う。
図24に示すように、第3実施形態のモード切替制御処理では、現在時刻が出現タイミングの場合に(ステップb3:YES)、時差移動マーク設定部233bが、時差移動マーク出現データ742bに従って初期範囲の時差移動エリアA3を徐々に狭めていき、その後時差移動マークM3を表示する制御を行って、時差移動モードを開始させる(ステップf5)。その際、モード切替制御部230bは、現モードデータ260を“時差移動モード”に更新して音符移動モードを時差移動モードに切り替える(ステップf7)。
また、モード切替制御部230bは、ステップb9において現在の音符モードが定速モードではないと判定した場合(すなわち時差移動モードの場合)に(ステップb1:NO)、出現タイミングから出現時間が経過したか否かを判定する。そして、出現時間が経過したと判定した場合には(ステップb9:YES)、時差移動マーク設定部233bが、その長さを徐々に広げながら時差移動エリアA3を表示する制御を行い、時差移動モードを終了させる(ステップf11)。その際、モード切替制御部230bは、現モードデータ260を“定速モード”に更新して音符移動モードを定速モードに戻す(ステップf13)。
また、図25に示すように、第3実施形態の音符制御処理では、現在の音符移動モードが定速モードではなく、時差移動モードの場合に(ステップc5:NO)、時差移動モード実行部225bが、初期範囲を適用範囲B3として用い、処理対象の音符の内部位置が適用範囲B3よりも音符移動開始位置P側(上流)なのか判定枠F側(下流)なのかを判定する。そして、音符移動開始位置P側の場合は(ステップg9:YES)、時差移動モード実行部225bは、内部位置を初期範囲だけ判定枠F側にずらして表示位置とする(ステップg11)。判定枠F側の場合は(ステップg9:NO)、時差移動モード実行部225bは、内部位置を表示位置とする(ステップg13)。
続いて、時差移動モード実行部225bは、内部位置の座標系(xt,yt)で音符と適用範囲B3とのヒット判定を行う。そして、時差移動モード実行部225bは、処理対象の音符が適用範囲B3と接触している(一部又は全部が重なる)場合には(ステップg15:YES)、表示位置に従い、その非接触部分のみ(重なっていない部分のみ)を音符移動経路L上に描画する(ステップg17)。接触していない場合には(ステップg15:NO)、時差移動モード実行部225bは、表示位置に従って、音符移動経路L上に該当する音符を描画する(ステップg19)。
以上説明したように、第3実施形態によれば、所与の出現タイミングで音符移動モードを定速モードから時差移動モードに切り替えることができる。そして、音符移動経路L上に時差移動マークM3を表示制御し、この時差移動マークM3の位置で音符を消去するとともに、所与の非表示時間を経て終端側区間に出現させて始端側区間から終端側区間へと時差移動させることができる。これによれば、音符移動経路L上での音符の移動に意外性を持たせてプレーヤの緊張感を高め、ゲームの面白味を向上させることができる。
〔第4実施形態〕
次に、第4実施形態について説明する。なお、第1実施形態等と同様の部分については同一の符号を付して詳細な説明を省略する。第4実施形態では、ゲームプレイ中の所与の出現タイミングにおいて音符移動経路Lの中間区間を低速移動エリアとして表示制御し、音符移動モードを定速モードから可変速モードの一例である低速移動モードに切り替える。第4実施形態において「始端側区間」は、音符移動経路L上の低速移動エリアよりも音符移動開始位置P側の区間をいい、「終端側区間」は、低速移動エリアよりも判定枠F側の区間をいう。
図26は、低速移動モードの開始時における音符移動経路Lに着目した表示遷移例を示す図である。図26に示すように、出現タイミングになると、音符移動経路L上の所与の初期範囲が低速移動エリアA4として表示される(図26(a))。その後は、終端A4OUTがその場にとどまったまま始端A3INが判定枠F側に向かって移動し、低速移動エリアA4の長さが所与の設定長となるまで徐々に狭まる(図26(b))。低速移動モードは、このような低速移動エリアA4の表示制御(設定)とともに開始される。そして、低速移動モードの実行中に始端側区間から低速移動エリアA4へと進入した音符N17は、始端側区間や終端側区間と比べて低速で移動する(図26(c))。例えば、音符は、始端側区間及び終端側区間では定速モード時の移動速度VNで移動し、低速移動エリアA4ではVNより遅い移動速度VLで移動する。
この低速移動モードは、出現タイミングから所与の出現時間が経過した時点で終了するが、その際には、低速移動モードの開始時とは逆に、始端A3INが音符移動開始位置P側に向かって移動することで低速移動エリアA4が徐々に広がっていく。そして、初期範囲まで低速移動エリアA4が広がるとその表示が消え、低速移動モードが終了して定速モードに戻る。
[原理]
図27は、低速移動モードの実行中における音符移動経路L上の音符の移動制御を説明する図であり、上段に音符の内部位置の座標系(xt,yt)を示し、下段に音符の表示位置の座標系(xs,ys)を示している。低速移動モードでは、内部位置の座標系(xt,yt)において、低速移動エリアA4の初期範囲を適用範囲B4として用いる。そして、低速移動モードの実行中は、内部位置が適用範囲B4内の音符を対象に、低速移動を適用する。
具体的には、図27中に一点鎖線の矢印で示すように、内部位置の座標系(xt,yt)で適用範囲B4よりも上流の音符を、設定長DA4だけ判定枠F側にずらして表示位置とし、音符を描画する。内部位置の座標系(xt,yt)で適用範囲B4よりも下流の音符は、内部位置をそのまま表示位置とし(二点鎖線の矢印)、音符を描画する。
一方、適用範囲B4内の音符については、低速移動エリアA4内を移動速度VLで移動するように、内部位置を表示位置に変換した上で描画する。ここで、適用範囲B4の長さ(すなわち初期範囲の長さ)DB4と低速移動エリアA4の設定長DA4とは、音符が適用範囲B4内(すなわち初期範囲内)をその始端B4INから終端B4OUTまで移動速度VNで移動するのに要する時間と、音符が低速移動エリアA4内をその始端A4INから終端A4OUTまで移動速度VLで移動するのに要する時間とが同じになるように定められる。例えば、移動速度VLを移動速度VNの半分の速度とするならば、低速移動エリアA4の設定長DA4は、適用範囲B4の長さDB4の半分の長さとされる。
そして、次式(2)に従い、低速移動エリアA4において表示位置から終端A4OUTまでの距離DP4を算出し、表示位置を特定する。次式(2)において、DO4は、適用範囲B4において内部位置から終端B4OUTまでの距離である。
DP4=(DO4/VN)×VL ・・・(2)
なお、低速移動モードの開始時、低速移動エリアA4を徐々に狭めている間は、その時の低速移動エリアA4の長さに応じて低速移動エリアA4内の音符の移動速度がVLとなるまで徐々に遅くなるように調整され、表示位置が特定される。逆に、低速移動モードの終了時に低速移動エリアA4を徐々に広げている間は、低速移動エリアA4内の音符の移動速度がVNとなるまで徐々に速くなるように調整されて、表示位置が特定される。
本処理により、低速移動モード中、音符移動経路L上の音符は、始端側区間を移動速度VNで移動する。そして、低速移動エリアA4を移動速度VLで低速移動し、終端側区間を移動速度VNで移動する。このような音符移動経路L上での音符の低速移動は、第1実施形態と同様にプレーヤの混乱を招き、誤操作を誘発できる。但し、視覚的な混乱を招くだけであって、現実の基準入力タイミングは変化していない。
[機能構成]
図28は、第4実施形態におけるゲーム装置1cの機能構成例を示すブロック図である。図28に示すように、ゲーム装置1cは、操作部100と、処理部200cと、表示部300と、音出力部400と、記憶部500cとを備える。
第4実施形態では、処理部200cにおいて、ゲーム演算部210cが、音符制御部220cと、モード切替制御部230cと、スコア演算部240とを含む。
音符制御部220cは、定速モードを実行する定速モード実行部221と、低速移動モードを実行する低速移動制御手段としての低速移動モード実行部226cとを含む。
モード切替制御部230cは、課題曲の再生開始時において音符移動モードを定速モードに初期設定するとともに、所与の出現タイミングで低速移動モードに切り替える。また、出現タイミングからの経過時間を監視し、所与の出現時間が経過した場合に音符移動モードを定速モードに戻す。このモード切替制御部230cは、音符移動モードを低速移動モードに切り替えてから定速モードに戻すまでの間、音符移動経路L上に低速移動エリアA4の表示を制御する低速移動エリア設定部234cを含む。
また、記憶部500cには、第4実施形態を実現するため、第4ゲームプログラム800cと、ゲームデータ700cとが格納される。
第4ゲームプログラム800cは、ゲーム演算部210cを、音符制御部220c、モード切替制御部230c、及びスコア演算部240として機能させるためのプログラムである。
また、ゲームデータ700cは、プレイデータ710と、音楽データ群720と、譜面データ群730と、低速移動エリア出現データ743cと、プレイ中譜面データ740と、現モードデータ750と、音符制御データ760と、スコアデータ770とが格納される。
低速移動エリア出現データ743cは、第2実施形態で説明した高速移動エリア出現データ741aと同様に曲名毎に用意され、出現タイミングと、初期範囲と、出現時間と、設定長とが設定されるが、初期範囲には、低速移動モードの開始時に音符移動経路L上に表示制御される低速移動エリアA4の始端A4IN及び終端A4OUTの位置が設定される。設定長には、定速移動エリアA4の設定長DA4が設定される。なお、出現タイミングを条件とし、当該条件を満足したタイミングで定速移動モードの実行を発動させることとしてもよい。条件としては、例えば、ゲームスコアがある値に達したことや、連続コンボ数がある数値に達したこと、ある特定の音符に対する操作入力がなされたこと、等を定めることができる。
現モードデータ750には、モード切替制御部230cによって“定速モード”又は“低速移動モード”が切り替えて設定される。
[処理の流れ]
第4実施形態では、第1実施形態で図11を参照して説明したゲーム処理において、ステップa9のモード切替制御処理にかえて図29に示すモード切替制御処理を行い、ステップa11の音符制御処理にかえて図30に示す音符制御処理を行う。
図29に示すように、第4実施形態のモード切替制御処理では、現在時刻が出現タイミングの場合に(ステップb3:YES)、低速移動エリア設定部234cが、低速移動エリア出現データ743cに従って初期範囲からその長さを設定長まで徐々に狭めながら低速移動エリアA4を表示する制御を行い、低速移動モードを開始させる(ステップh5)。その際、モード切替制御部230cは、現モードデータ750を“低速移動モード”に更新して音符移動モードを低速移動モードに切り替える(ステップh7)。
また、モード切替制御部230cは、ステップb1において現在の音符モードが定速モードではないと判定した場合(すなわち低速移動モードの場合)に(ステップb1:NO)、出現タイミングから出現時間が経過したか否かを判定する。そして、出現時間が経過したと判定した場合には(ステップb9:YES)、低速移動エリア設定部234cが、その長さを徐々に広げながら低速移動エリアA4を表示する制御を行い、低速移動モードを終了させる(ステップh11)。その際、モード切替制御部230cは、現モードデータ750を“定速モード”に更新して音符移動モードを定速モードに戻す(ステップh13)。
また、図30に示すように、第4実施形態の音符制御処理では、現在の音符移動モードが定速モードではなく、低速移動モードの場合に(ステップc5:NO)、低速移動モード実行部226cが、初期範囲を適用範囲B4として用い、処理対象の音符の内部位置が適用範囲B4よりも音符移動開始位置P側(上流)なのか判定枠F側(下流)なのかを判定する。そして、音符移動開始位置P側の場合は(ステップi51:YES)、低速移動モード実行部226cは、内部位置を定速移動エリアA4の長さだけ判定枠F側にずらして表示位置とし、音符移動経路L上に該当する音符を描画する(ステップi52)。また、音符移動開始位置P側ではなく(ステップi51:NO)、判定枠F側の場合は(ステップi53:YES)、低速移動モード実行部226cは、内部位置を表示位置として、音符移動経路L上に該当する音符を描画する(ステップi54)。
また、判定枠F側でも音符移動開始位置P側でもない場合、すなわち適用範囲B4内である場合には(ステップi53:NO)、低速移動モード実行部226cは、上記式(2)に従って低速移動エリアA4の終端A4OUTから表示位置までの距離DP2を算出し、表示位置を特定する(ステップi55)。そして、低速移動モード実行部226cは、特定した表示位置に従い、音符移動経路L上に該当する音符を描画する(ステップi56)。
以上説明したように、第4実施形態によれば、所与の出現タイミングで音符移動モードを定速モードから低速移動モードに切り替えることができる。そして、音符移動経路L上に低速移動エリアA4を表示制御し、この低速移動エリアA4内を始端側区間及び終端側区間よりも低速で移動させることができる。これによれば、音符移動経路L上での音符の移動に意外性を持たせてプレーヤの緊張感を高め、ゲームの面白味を向上させることができる。
なお、上記した各実施形態では、瞬間移動エリアや高速移動エリア、低速移動エリアの出現タイミング等は予め定められた値に従うこととしたが、ゲームのプレイ状況等に応じて可変に設定することとしてもよい。例えば、ゲームスコアに基づいて伸長するスコアゲージのゲージ値が最大値の半分を超えたタイミングで、出現タイミングと判定するようにしてもよい。
そして、瞬間移動モードや高速移動モード、低速移動モードを実行する場合には、瞬間移動エリア設定部231、高速移動エリア設定部232a、又は低速移動エリア設定部234cは、区間設定手段として、例えば、出現タイミングと判定したときの課題曲再生開始からの経過時間に従って、瞬間移動エリア、高速移動エリア、又は低速移動エリアの設定位置(初期位置又は初期範囲)及び設定長を設定するようにしてもよい。例えば、設定位置は、課題曲再生開始からの経過時間が短いほど判定枠Fから遠くなるように設定する。逆に、経過時間が長いほど判定枠Fに近くなるように設定位置を設定してもよい。設定長についても同様に、例えば、経過時間が短いほど短く設定する。逆に、経過時間が長いほど設定長を長く設定してもよい。
ここで、設定位置を判定枠Fに近づければその分終端側区間が短くなるため、音符が瞬間移動エリア等を変則的に動いて当該エリアから脱した後から判定枠Fに達するまでの時間が短くなる。また、設定長を長くすれば、音符移動経路L上において音符が変則的に動く範囲が広くなる。これによれば、プレーヤの誤操作がより誘発され易くなり、ゲームの面白味の向上がより図れる。
また、時差移動モードを実行する場合であれば、時差移動マーク設定部233bは、境界設定手段として、出現タイミングと判定したときの経過時間に従い時差移動マークの設定位置を同様の要領で設定するようにしてもよい。その他、例えば、現在時刻から課題曲再生終了までの時間を超えない範囲で出現時間をランダムに設定してもよい。
また、予め定められた出現タイミングや、ゲームのプレイ状況等に応じた出現タイミングにおいて、上記した各実施形態で説明した瞬間移動モード、高速移動モード、時差移動モード、及び低速移動モードのうちの何れか1つを例えばランダムに選んでその実行を開始させることとしてもよい。
また、上記した実施形態では、本発明を携帯型ゲーム装置に適用した場合を説明したが、据置型家庭用ゲーム装置、据置型家庭用ゲーム装置のゲームコントローラ、業務用ゲーム装置、パソコン、タブレット型コンピュータ、いわゆるスマートフォンとして分類される装置等の他の電子機器にも同様に適用できる。
例えば、図31は、業務用ゲーム装置1300の外観例を示す図である。業務用ゲーム装置1300は、ゲーム装置本体1302の前方に突設された操作台1304に、プレーヤが操作入力をするための打楽器を模した操作入力装置1306を備える。
操作入力装置1306は、和太鼓を模した外形を有しており、各所に感圧センサや振動センサを内蔵している。プレーヤが、専用の操作棒1308を持って和太鼓を叩く要領で操作入力装置1306を叩くと、叩かれた場所のセンサから操作入力信号が制御ユニット1320へ出力される。図31の業務用ゲーム装置1300は、複数のプレーヤが同時にゲームプレイできるように2つの操作入力装置1306を備える構成となっているが、その数は適宜設定することができる。
ゲーム装置本体1302の上部には、ゲーム画面を表示するためのフラットパネルディスプレイやCRT等で実現されるビデオモニタ1310と、ゲーム音を出力するスピーカ1312とを備える。
ゲーム装置本体1302に内蔵された制御ユニット1320は、CPUやGPU等のマイクロプロセッサ、ASIC、FPGA、ICメモリ等が搭載されたいわゆるコンピュータ基板、制御基板を構成する。この制御ユニット1320は、搭載されているICメモリやハードディスク等の情報記憶媒体からゲームプレイに係る各種演算処理を実行するために必要なプログラムを読み出して演算処理し、業務用ゲーム装置1300の各部を制御する。
この業務用ゲーム装置1300において、プレーヤは、ビデオモニタ1310に表示されるゲーム画面を見て、スピーカ1312から出力されるゲーム音を聞きながらゲームをプレイする。業務用ゲーム装置1300が有する機能構成は、第1〜第4の各実施形態で説明したものと同様である。
また、上記した実施形態では、和太鼓演奏ゲームに適用した場合を説明したが、本発明が適用可能なゲームは、音楽ゲーム或いはリズムゲームと呼ばれるゲームに限定されるものではない。例えば、ゲーム画面内で移動する標的を所与の操作入力タイミングで射的操作するシューティングゲーム等にも同様に適用可能である。すなわち、所定の移動経路上に定められた所定位置に指示標識が達するタイミングを操作入力タイミングとして、当該移動経路を移動するように指示標識を表示制御するゲームであれば、本発明を適用可能である。