以下、本発明の実施の形態に係るゲームプログラムおよびゲーム装置について、図面を参照しつつ説明する。
[ハードウェアの構成]
図1は、本発明の一実施形態に係るゲーム装置1の内部構成を示すブロック図である。図1に示すようにゲーム装置1は制御部30を備えており、該制御部30にはCPU11、描画データ生成プロセッサ12、RAM(Random Access Memory)13、ROM(Read Only Memory)14、描画処理プロセッサ15、および音声処理プロセッサ18が含まれている。さらに、ゲーム装置1は、この他にもVRAM(Video-RAM)16、アンプ19、スピーカ20、イヤホン端子21、操作部22、メディアインタフェース23、無線LANモジュール24、およびバス25を備えている。そして、これらのうちCPU11、描画データ生成プロセッサ12、RAM13、ROM14、描画処理プロセッサ15、音声処理プロセッサ18、操作部22、メディアインタフェース23、および無線LANモジュール24が、バス25によって相互にデータ伝送可能に接続されている。
操作部22は、方向キーおよびその他のボタン群(図示せず)を含んでおり、プレイヤの操作を受け付けて、その操作内容に応じた操作情報(操作信号)をCPU11に入力する。また、方向キーおよびボタン群が有する各種のボタンは、プレイヤキャラクタの特定の動作を指示するための操作子である。また、操作部22には、これら操作子以外にゲーム装置1の電源の入/切を行うための電源スイッチ等が含まれる。
メディアインタフェース23は、図示しないメディア装着部にセットされたゲームメディア5にアクセスしてゲームプログラム5aおよびゲームデータ5bを読み出す。このうちゲームプログラム5aは、例えば、プレイヤキャラクタと敵キャラクタとが仮想空間にて対戦する内容のゲームを、ゲーム装置1に実行させるものである。また、ゲームデータ5bには、上記ゲームを実行する上で必要なデータとして、キャラクタや背景の画像データ、ステータスなどの情報表示用の画像データ、効果音やBGMなどの音声データ、文字や記号によるメッセージデータ等が含まれている。なお、記録媒体であるゲームメディア5は、半導体メモリのほか、光ディスクの一種であるUMD(Universal Media Disc)(登録商標)を採用することができる。
RAM13には、ゲームの進行に応じてゲームメディア5から読み込まれたゲームプログラム5aおよびゲームデータ5bを格納するロードエリア、ならびに、CPU11がゲームプログラム5aを処理する際に使用するためのワークエリアが設定されている。ROM14には、ディスクローディング機能などのゲーム装置1の基本的機能や、ゲームメディア5に記憶されているゲームプログラム5aおよびゲームデータ5bの読み出し処理を制御する基本プログラムが記憶されている。
CPU11は、ゲームメディア5に記録されているゲームプログラム5aおよびゲームデータ5bの全部または一部を、メディアインタフェース23を通じてRAM13に読み込み、プレイヤによる操作部22の操作に応じてこれを実行し、ゲーム進行を制御する。より具体的には、プレイヤに操作されることによって操作部22から操作信号が入力されると、CPU11は、ゲームプログラム5aに従ってその操作信号に対応する所定のゲーム進行処理を行い、その処理結果を、ゲーム進行を示す画像(以下、「ゲーム画像」)としてディスプレイ2に表示するとともに、ゲーム進行を示す音声信号(以下、「ゲーム音声」)をスピーカ20やイヤホン端子21に出力する。
上記ゲーム画像の描画は、CPU11の指示により、描画処理プロセッサ15が行う。すなわち、CPU11は、操作部22から入力される操作信号に基づき、ディスプレイ2に表示すべきゲーム画像の内容を決定し、その内容に対して必要な描画データを描画データ生成プロセッサ12に生成させる。そして、その描画データを描画処理プロセッサ15に転送して描画処理を行わせる。描画処理プロセッサ15は、描画データに基づいて1/60秒毎にゲーム画像を生成し、生成したゲーム画像をVRAM16に書き込む。ディスプレイ2は、半透過型カラー液晶ディスプレイとバックライトLED(Light Emitting Diode)とを有し、VRAM16に書き込まれたゲーム画像を表示する。
また、CPU11は、ゲームの進行に応じて、スピーカ20から出力すべき効果音やBGM等の音声を決定し、その音声を発音するための音声データをRAM13から読み出して音声処理プロセッサ18に入力する。すなわち、CPU11は、ゲームの進行に伴って発音イベントが発生すると、その発音イベントに応じた発音データ(ゲームメディア5からロードされた発音データ)をRAM13から読み出して音声処理プロセッサ18に入力する。音声処理プロセッサ18は、DSP(Digital Signal Processor)で構成されており、CPU11によって入力された発音データに対して所定の効果(例えば、リバーブ、コーラスなど)を付与したのちアナログ信号に変換して、アンプ19に出力する。アンプ19は、音声処理プロセッサ18から入力された音声信号を増幅したのち、スピーカ20およびイヤホン端子21に出力する。
無線LANモジュール24は、通信規格IEEE802.11b(使用周波数帯2.4GHz、通信速度11Mbps)に準拠した無線LANによって他のゲーム装置1とデータ通信を行い、ネットワークを構成するための通信モジュールである。
[ゲームシステムの説明]
図2〜図5は、図1に示すゲーム装置が実行するゲームプログラム5aによって実現されるゲームの内容を説明するための模式図である。図2〜図5にはゲーム装置1のディスプレイに表示されるゲーム画面Dが示されている。なお、ゲーム画面Dには、プレイヤキャラクタPおよび敵キャラクタNの体力などを示すゲージや、プレイヤキャラクタの使用可能アイテムなども表示されるが、図示を省略している。
本ゲームでは、所定の広がりを有する仮想空間Sが設定されており、該仮想空間S内には、操作部22の操作によりプレイヤが直接的にその動作を制御することのできるプレイヤキャラクタPが存在している。また、同じ仮想空間S内には、プレイヤの操作によってはその動作を直接的に制御することができず、CPU11によって動作が制御されるノンプレイヤキャラクタであるモンスター等の敵キャラクタNも出現するようになっている。また、仮想空間S内においてプレイヤキャラクタP近傍の所定位置には、仮想空間Sを撮像するための仮想カメラ(図示せず)が配置されており、図2〜図5に示すように、ゲーム装置1のディスプレイ2には、該仮想カメラにより撮像された仮想空間Sの画像がゲーム画面D上に表示される。そして、本ゲームは、プレイヤがディスプレイ2に表示された仮想空間Sを見ながら、プレイヤキャラクタPを操作して敵キャラクタNと戦闘を行い、これを討伐するアクションゲームになっている。
ゲームプログラム5aには、所定のイベントが設定されている。本実施形態においては、プレイヤキャラクタPの所定の敵キャラクタNへの攻撃態様の1つである乗り攻撃が所定のイベントとして設定されている。乗り攻撃 は、敵キャラクタN上に乗った状態で攻撃するイベントである。このため、プレイヤキャラクタPはジャンプ攻撃などによって敵キャラクタNの所定の部位を攻撃することにより、当該敵キャラクタN上に乗ることが可能となっている。また、乗り攻撃のイベント中は、敵キャラクタN上で攻撃することが可能となり、乗り攻撃のイベントに成功すると、敵キャラクタNは、プレイヤキャラクタPからの攻撃を受け易くなるダウン状態となる。ダウン状態は、より大きなダメージを敵キャラクタNに与えることができる状態である。
乗り攻撃への移行態様についてより詳しく説明する。乗り攻撃が可能な敵キャラクタNには、所定の攻撃により所定の部位に与えたダメージを蓄積するパラメータ(以下、乗り移行パラメータ)が予め設けられている。プレイヤキャラクタPが敵キャラクタNの所定の部位(例えば背中)を所定の攻撃により攻撃すると、敵キャラクタNのその他の部位に攻撃したときとは異なるダメージ演出(例えば、攻撃エフェクトの態様が異なる演出)が行われる。これにより、プレイヤに敵キャラクタに乗り移行パラメータが蓄積されていることを報知することができる。このとき、敵キャラクタNの乗り移行パラメータは、与えられたダメージに応じた値が蓄積される。
この乗り移行パラメータに蓄積された値が所定のしきい値以上となると、その攻撃をヒットさせた際(攻撃モーションを再生した際)に、図2に示すようなプレイヤキャラクタPが自動的に敵キャラクタNの上に乗った状態となる(乗り状態)。このとき、デモムービー、仮想カメラの位置またはアングルを変化させることにより乗り状態となったことの演出を行ってもよい。
乗り移行パラメータは、武器の種類、攻撃が当たった部位、敵キャラクタNの状態などによって異なるダメージに応じた値が蓄積される。この場合、例えば、ダメージのしきい値が25である場合において、攻撃1回目で9のダメージ、攻撃2回目で8のダメージ、攻撃3回目で10のダメージを与えたとすると、3回目の攻撃を行ったときに敵キャラクタNの背中に乗ることができる。なお、パラメータは所定の攻撃が敵キャラクタの所定の部位に当たった回数であってもよい。この場合、例えば、攻撃回数のしきい値を5回とした場合、5回目の攻撃を行ったときに敵キャラクタNの背中に乗ることができる。
また、乗り移行パラメータは、与えられたダメージに応じた値が蓄積される代わりに、予め定められた初期値からダメージに応じた値が減算され、所定のしきい値以下になったら乗り状態に移行することとしてもよい。
また、このしきい値は乗り攻撃に成功(敵キャラクタNをダウン状態にさせる)するごとに、変化してもよい。すなわち、乗り攻撃に成功するごとにしきい値を増加させて、乗り状態へ移行し難くしてもよいし、乗り攻撃に成功するごとにしきい値を減少させて、乗り状態へ移行し易くしてもよい。また、しきい値を変化させる代わりに、与えるダメージ値を変化させてもよい。すなわち、乗り攻撃に成功するごとに与えるダメージ値を増やして、乗り状態への移行を成功し易くしてもよいし、乗り攻撃に成功するごとに与えるダメージ値を減らして、乗り状態への以降を成功し難くしてもよい。また、しきい値も与えるダメージも変化しないが、乗り状態へ移行するための攻撃回数(延べ数)に応じて与えられるダメージが変化することとしてもよい。例えば、しきい値を30とし、攻撃1回目のダメージを30、攻撃2回目のダメージを15、攻撃3回目のダメージを10、攻撃4回目のダメージを5、攻撃5回目以降のダメージを1とする。この場合、乗り攻撃のイベント1回目では、1回の攻撃(30)でしきい値30以上となり乗り状態に移行できる。乗り攻撃のイベント2回目では、3回の攻撃(15+10+5)でしきい値30以上となり乗り状態に移行できる。反対に、攻撃回数が増えるごとに与えられるダメージが増えることとしてもよい。
なお、乗り状態への移行態様は、上記の例に限られない。例えば、以下のような態様としてもよい。すなわち、乗り移行パラメータに蓄積された値が所定のしきい値を超えると、敵キャラクタNにおいて、プレイヤキャラクタPが敵キャラクタNに乗ることができることを示す乗り可能やられ演出が行われる。このとき、プレイヤキャラクタPが所定の行動(例えばプレイヤキャラクタPが所定の時間内に敵キャラクタNを基準とする所定の範囲内に入るなど)をとると、図2に示すようなプレイヤキャラクタPが自動的に敵キャラクタNの上に乗った状態となる(乗り状態)。
図2に示す乗り状態において、プレイヤキャラクタPは、プレイヤが第1の操作を行うことによって攻撃を行うことができる。乗り状態における攻撃は、一定の攻撃(ダメージまたは回数)を加えると乗り攻撃に成功(イベント成功)し、図4に示すように、敵キャラクタNを転倒させ、ダウン状態にさせることができる。ただし、敵キャラクタNは、乗り状態に移行してからは図3に示すようにプレイヤキャラクタPに対して振り落とし行動(例えば暴れるなど)を行う。プレイヤキャラクタPが一定の攻撃を加える前に、敵キャラクタNが一定の振り落とし行動を行うと乗り攻撃に失敗(イベント失敗)し、図5に示すように、敵キャラクタNからプレイヤキャラクタPが振り落とされ、不利な状態となる(例えばダメージを与えられたり、敵キャラクタNがプレイヤキャラクタPを捕らえ、拘束攻撃されたりする)。プレイヤキャラクタPは、プレイヤが第2の操作を行うことによって、敵キャラクタNの振り落とし行動を抑制することができる。
[制御部の機能的構成]
図6は、図1に示すゲーム装置1が備える制御部30の機能的な構成を示すブロック図であり、主に、上述したゲームシステムを実現するのに必要な機能を示している。前述したとおり、制御部30は、CPU11、描画データ生成プロセッサ12、RAM13、ROM14、描画処理プロセッサ15、および音声処理プロセッサ18を含むコンピュータとして動作する。そして、このコンピュータとして動作する制御部30は、ゲームメディア5から読み込んだゲームプログラム5aおよびゲームデータ5bを実行することによって、以下に説明するような機能を備える。すなわち、制御部30は、仮想空間生成手段30a、キャラクタ制御手段30b、イベント発生手段30c、表示体表示手段としてのゲージ表示手段30d、判定手段30e、およびイベント処理手段30fを備えている。
このうち、仮想空間生成手段30aは、プレイヤキャラクタPが行動する仮想空間Sを生成する。該仮想空間Sには、プレイヤキャラクタPおよび敵キャラクタNが対戦する仮想空間も含まれる。
キャラクタ制御手段30bは、プレイヤによる操作部22の操作に応じて行動するプレイヤキャラクタPの動作を制御するとともに、当該プレイヤキャラクタPに対して攻撃する敵キャラクタNを制御する。キャラクタ制御手段30bは、例えば、プレイヤによる操作部22の操作に応じて、対戦時におけるプレイヤキャラクタPの移動、攻撃、および防御を含む各種動作を制御する。また、キャラクタ制御手段30bは、例えば、敵キャラクタNの移動、攻撃、および防御等の各種の動作を制御する。なお、キャラクタ制御手段30bは、敵キャラクタNでないノンプレイヤキャラクタ(味方となって一緒に敵キャラクタNを攻撃するキャラクタや味方でも敵でもない村人などのキャラクタ)の動作も制御する。
イベント発生手段30cは、上述したような所定のイベントに関連する敵キャラクタNへの所定の攻撃による値を管理するとともに、この値が所定のしきい値を超えた場合に、当該イベントを発生させる。より具体的には、本実施形態において、イベント発生手段30cは、プレイヤキャラクタPによる乗り攻撃(イベント)に関して、敵キャラクタNの所定の部位のダメージを蓄積するパラメータが所定のしきい値を超えたかどうかを判定し、しきい値を超えた場合に、乗り攻撃イベントを発生させる。
ゲージ表示手段30dは、上記乗り攻撃イベントが発生した場合、例えば、図2および図3に示すように、乗り攻撃の成功および失敗の目安となる第1表示体および第2表示体として、第1ゲージG1および第2ゲージG2をゲーム画面D上に表示させる。具体的には、ゲージ表示手段30dは、所定の第1の情報に基づいて第1の初期位置B1から所定の経路(ゲージ枠G0)上を所定の方向へ増大する第1ゲージG1と、第1の情報とは異なる所定の第2の情報に基づいて第1ゲージG1と同じ経路上を第2の初期位置B2から第1ゲージG1が増大する方向と同じ方向へ増大する第2ゲージG2とをゲーム画面D上に表示させる。本実施形態において、第1の情報は、プレイヤキャラクタPを操作するプレイヤの第1の操作情報を含み、第2の情報は、乗り攻撃イベントに関連する敵キャラクタNの動作およびプレイヤキャラクタPを操作するプレイヤの第2の操作情報を含んでいる。
図2には、ゲーム画面D上において左から右へ増大する第1ゲージG1の先端(右端)がゲージの左端(基端)と右端(先端)との間にある第1の初期位置B1に位置している状態が示されている。この第1ゲージG1の先端が左から右へ移動することにより第1ゲージG1が増大する。第2ゲージG2の先端には、当該先端の位置が分かり易いように、モンスターの顔を模したアイコンHが表示されている。第2の初期位置B2は、第1ゲージG1の左端(後述するゲージ枠G0の左端)に設定されている。このため、図2のように、第2ゲージG2の先端が初期位置B2に表示される状態(初期状態)においては、先端のアイコンHのみ表示される。図3には、図2より第1ゲージG1および第2ゲージG2がそれぞれ初期位置B1,B2より増加した(それぞれの先端が同じ方向へ移動した)状態が示されている。
判定手段30eは、第1ゲージG1が所定の到達位置C1に到達したか否かを判定するとともに、第2ゲージG2が第1ゲージG1以上となったか否かを判定する。具体的には、判定手段30eは、第1ゲージG1の先端位置が到達位置C1に到達したか否かを判定するとともに、第2ゲージG2の先端位置(アイコンHの位置)が第1ゲージG1の先端位置に到達したか否かを判定する。また、イベント処理手段30fは、判定手段30eの判定結果に基づいてイベントの成功または失敗の処理を行う。本実施形態においては、第1ゲージG1が到達位置C1に到達した場合に、イベントの成功処理を行い、第1ゲージG1が到達位置C1に到達する前に、第2ゲージG2が第1ゲージG1以上となった場合に、イベントの失敗処理を行う。
[イベント処理]
次に、上述したイベント処理の流れについて説明する。図7は、本実施形態におけるイベント処理の全体的な流れを示すフローチャートである。まず、制御部30は、プレイヤキャラクタPによる所定の敵キャラクタNへの所定の攻撃があった際、当該攻撃によるダメージが所定の部位に与えられたか否かを判定する(ステップS1)。所定の部位にダメージを受けたと判定された場合(ステップS1でYes)、制御部30は、前述した乗り移行パラメータにダメージに応じた値を蓄積する(ステップS2)。制御部30は、乗り移行パラメータの値が所定のしきい値を超えたか否かを判定する(ステップS3)。乗り移行パラメータの値がしきい値を超えていない場合(ステップS3でNo)、本イベント処理は終了する。
乗り移行パラメータの値がしきい値を超えた場合(ステップS3でYes)、制御部30は、イベント発生手段30cとして機能し、乗り攻撃のイベントを発生させる。そして、キャラクタ制御手段30bは、プレイヤキャラクタPを敵キャラクタN上の所定の位置に位置させる乗り状態にする(ステップS4)。この際、イベント発生手段30cは、乗り状態に移行した後のイベント処理を開始する。
なお、複数のプレイヤが各自のプレイヤキャラクタを同一の仮想空間S内に登場させ、これらを共同させて行動させるオンラインゲーム(マルチプレイ)において本実施形態を適用する場合には、何れのプレイヤのプレイヤキャラクタPが乗り状態への移行を可能とするような攻撃を加えたかにかかわらず、何れかのプレイヤのプレイヤキャラクタPが乗り条件を満たした場合には、当該プレイヤキャラクタPが乗り状態に移行することとしてもよい。
乗り状態に移行した場合、制御部30は、第1の情報および第2の情報に基づいて乗り攻撃のイベントの成功処理または失敗処理を行うイベント成否処理を実行する(ステップS5)。イベント成否処理については後述する。イベント成否処理後、制御部30は、乗り攻撃のイベントを終了し、乗り移行パラメータの値をリセットする(ステップS6)。また、制御部30は、乗り移行パラメータのしきい値についての更新処理を行う(ステップS7)。当該更新処理において、制御部30は、イベント成否処理においてイベントの成功処理を行った場合には、乗り移行パラメータのしきい値を所定の値増加させる。一方、イベント成否処理においてイベントの失敗処理を行った場合には、乗り移行パラメータのしきい値の更新を行わない。このようなしきい値更新処理の後、イベント処理は終了する。このようなイベント処理は、所定のフレーム(例えば毎フレーム)ごとに行われる。そして、以降のイベント処理においては、更新処理後のしきい値に基づいて、乗り状態に移行するかどうかの判定が行われる(ステップS1〜S3)。このようにして、乗り攻撃のイベントを開始するためのしきい値は、過去のイベントの成功回数が多いほど高くなる。これにより、同じイベントにおいても成功するたびに難易度が上がっていくため、同じイベントが複数回発生した場合であっても、プレイヤに達成感を与える演出を行うことができる。
なお、乗り移行パラメータのしきい値を増加させることに加えて、またはその代わりに、以降のイベント処理において、後述する第2ゲージG2の増大量を一律に所定の割合増加させることとしてもよい。また、しきい値を増加させる場合においては、所定値より増加させないように上限値を設定してもよいし、成功したイベント内容に応じて増加する値を異ならせてもよい。
図8は、図7のステップS5に示すイベント成否処理の流れを示すフローチャートである。まず、乗り状態に移行すると、制御部30は、ゲージ表示手段30dとして機能し、図2に示すように、ゲーム画面D上の所定の位置に、第1のゲージG1および第2のゲージG2が表示され得るゲージ枠(図2においては左端が第2の初期位置B2であり、右端が到達位置C1であるようなゲージ枠)G0を表示するとともに、当該ゲージ枠G0上に、第1のゲージG1および第2のゲージG2を、先端がそれぞれ第1の初期位置B1および第2の初期位置B2に位置するように表示させる。
第2ゲージG2は、第1ゲージG1と識別容易なように表示される。例えば、第2ゲージG2は、第1ゲージG1と異なる色で示されてもよいし、第1ゲージG1と異なる太さで示されてもよいし、第1ゲージG1と異なる形状で示されてもよいし、第1ゲージG1と異なるエフェクト(例えばゲージ全体が光る、ゲージが順次爆発して消滅していくなど)で示されてもよい。
前述したとおり、乗り状態においては、プレイヤキャラクタPは、プレイヤが第1の操作を行うことによって敵キャラクタNに対して攻撃を行うことが可能である。そして、第1ゲージG1は、プレイヤの第1の操作情報に基づいて増大するように設定されている。図8に示すように、制御部30は、敵キャラクタNにプレイヤキャラクタPによる攻撃があったか否かを判定する(ステップT1)。攻撃があった場合(ステップT1でYes)、ゲージ表示手段30dは、図3などに示すように、第1ゲージG1を所定の方向へ所定量増大させる(ステップT2)。増大させる量は、敵キャラクタNに与えたダメージの大きさに応じて変化させてもよいし、ダメージの大きさによらず同じ量としてもよい。具体的には、第1ゲージG1は、所定のパラメータを有しており、敵キャラクタNにプレイヤキャラクタPによる攻撃があった場合、第1ゲージG1に対応するパラメータの値が増大するように構成されている。
制御部30は、判定手段30eとして機能し、第1ゲージG1が所定の到達位置C1に到達したか否かを判定する(ステップT3)。なお、到達位置C1は、第1ゲージG1のしきい値として構成され、第1ゲージG1が到達位置C1に到達したか否かは、第1ゲージG1の上記パラメータの値が当該しきい値以上となったか否かに基づいて判定される。第1ゲージG1が到達位置C1に到達していないと判定された場合(ステップT3でNo)、プレイヤキャラクタPによる次の攻撃を待ち受ける(ステップT1)。この場合、ゲーム画面Dにおいては、第1ゲージG1の先端位置は第2ゲージG2の先端位置よりも到達位置C1の近くに位置する。第1ゲージG1が到達位置C1に到達したと判定された場合(ステップT3でYes)、図4に示すように、制御部30は、イベント処理手段30fとして機能し、イベント成功処理を実行する(ステップT4)。この場合、ゲーム画面Dにおいては、第1ゲージG1の先端位置が到達位置C1に到達し(ゲージ枠G0が第1ゲージG1および第2ゲージG2で埋まり)、かつ第2ゲージG2の先端位置が到達位置C1から離間した位置に位置する。本実施形態のイベント成功処理において、キャラクタ制御手段30bは、敵キャラクタNを転倒させ、プレイヤキャラクタPからの攻撃を受け易くするダウン状態にさせる。この際、ゲージ表示手段30dは、第2ゲージG2の先端のアイコンHにおいても敵キャラクタNがダウンしたことを示すような演出を行う。この後、ゲージ表示手段30dは、ゲージ枠G0、第1ゲージG1および第2ゲージG2をゲーム画面D上から消去する。
一方、乗り状態において、所定の時間、プレイヤキャラクタPによる敵キャラクタNへの攻撃がない場合(ステップT1でNo)、キャラクタ制御手段30bは、第2の情報として用いられる所定の行動として敵キャラクタNの振り落とし行動を実行する(ステップT5)。具体的には、キャラクタ制御手段30bは、敵キャラクタNに、プレイヤキャラクタPを振り落とそうとして暴れる動きを行わせる。その上で、ゲージ表示手段30dとして機能する制御部30は、第2の情報に基づいて第2のゲージG2を増大させる(ステップT6〜T10)。第2の情報には、上記敵キャラクタNの振り落とし行動やそのときのプレイヤの第2の操作情報に加えて、予め定められた単位期間あたり(所定のフレーム数あたり)の増大量も含まれ得る。本実施形態において、第2ゲージG2は、予め定められた単位期間あたりの増大量に、敵キャラクタNによる所定の行動の有無およびプレイヤの第2の操作の有無に応じて当該増大量を増減させるように設定されている。
なお、第2ゲージG2の増大量は、敵キャラクタNの種類、状態、体力などのパラメータ値やプレイヤキャラクタPの状態、体力などのパラメータ値に応じて異なることとしてもよい。例えば、敵キャラクタNが戦闘状態または怒り状態にある場合や、プレイヤキャラクタPが所定の状態異常を生じていたり、所定のしきい値以下の体力しか有していない場合には、通常よりも第2ゲージG2の増大量が増加するように設定され得る。
また、第1の初期位置B1に対する第2の初期位置B2も同様に、敵キャラクタNの種類、状態、体力などのパラメータ値やプレイヤキャラクタPの状態、体力などのパラメータ値に応じて異なることとしてもよい。例えば、敵キャラクタNがプレイヤキャラクタPを発見して、プレイヤキャラクタPに攻撃を行う戦闘状態または戦闘状態の中でも当該敵キャラクタNの攻撃力やスピードなどのパラメータが増加している怒り状態にある場合や、プレイヤキャラクタPが所定の状態異常を生じていたり、所定のしきい値以下の体力しか有していない場合には、第2の初期位置B2が通常よりも第1の初期位置B1に近く設定され得る。第2ゲージG2における初期位置(第2の初期位置B2)の第1ゲージG1の初期位置(第1の初期位置B1)に対する相対位置を変化させることにより、同じ増大量でも第2ゲージG2が第1ゲージG1に到達する期間を変化させることができる。
さらに、第1の初期位置B1自体も、敵キャラクタNの種類、状態、体力などのパラメータ値やプレイヤキャラクタPの状態、体力などのパラメータ値に応じて異なることとしてもよい。例えば、敵キャラクタNのレベルが高い場合やプレイヤキャラクタPが所定の状態異常を生じている場合などには第1の初期位置B1と到達位置C1との距離が通常より長くなるように第1の初期位置B1が設定され得る。
このように、プレイヤキャラクタPおよび敵キャラクタNに関する情報に基づいて初期位置B1,B2や増大量を変化させることにより、1つのイベントかつ1つのゲージ枠G0内での表示においても当該イベントの成否についての難易度を様々に変化させることができる。
本実施形態において、第2ゲージG2は、基本的には時間の経過に伴って増大するように制御される。これに加えて、第2ゲージG2は、イベントに関連する敵キャラクタNの動作(振り落とし行動)に応じて増大量が増えるように制御され、プレイヤの第2の操作(プレイヤキャラクタPのしがみつき行動)に応じて増大量が減るように制御される。なお、本明細書における「増大量」とは、単位期間あたりにゲージが増える量を意味し、増大量を増やす場合には、単位期間はそのままでゲージが増える量自体を増やしてもよいし、単位期間を短くする(ゲージが増えるスピードを速くする)こととしてもよい。
また、時間の経過に伴う増大量と、敵キャラクタNの動作に応じて増える量およびプレイヤキャラクタPのしがみつき行動に応じて減る量とはそれぞれ独立した値であってもよい。すなわち、例えば単位期間あたりの時間の経過に伴う増大量が10であり、敵キャラクタNの動作に応じて増える量が5であり、プレイヤキャラクタPのしがみつき行動に応じて減る量が−5として設定されるとすると、単位期間あたりの増加量は、敵キャラクタNの振り落とし行動があった場合には10+5=15となり、敵キャラクタNの振り落とし行動がなかった場合は10となり、敵キャラクタNの振り落とし行動がなく、かつ、プレイヤキャラクタPのしがみつき行動があった場合には10−5=5となる。これに代えて、敵キャラクタNの動作に応じて増える量およびプレイヤキャラクタPのしがみつき行動に応じて減る量は、時間の経過に伴う増大量に掛け合わさせる値として用いられてもよい。すなわち、例えば単位期間あたりの時間の経過に伴う増大量が10であり、敵キャラクタNの動作に応じて増える割合が1.5であり、プレイヤキャラクタPのしがみつき行動に応じて減る割合が0.5として設定されるとすると、単位期間あたりの増加量は、敵キャラクタNの振り落とし行動があった場合には10×1.5=15となり、敵キャラクタNの振り落とし行動がなかった場合は10となり、敵キャラクタNの振り落とし行動がなく、かつ、プレイヤキャラクタPのしがみつき行動があった場合には10×0.5=5となる。
ここで、プレイヤキャラクタPは、乗り状態において、プレイヤが第2の操作を行うことによって敵キャラクタNにしがみつく、しがみつき行動を取ることができる。そして、乗り状態において、所定の時間、プレイヤキャラクタPによる敵キャラクタNへの攻撃がない場合(ステップT1でNo)、制御部30は、プレイヤキャラクタPが敵キャラクタNに対してしがみつき行動を取っているか否かを判定する(ステップT6)。プレイヤキャラクタPがしがみつき行動を行っている場合(ステップT6でYes)、制御部30は、プレイヤキャラクタPの所定のしがみつきパラメータ(例えばスタミナまたは体力などを示すパラメータ)を低下させる処理を行う(ステップT7)。なお、プレイヤキャラクタPのしがみつきパラメータが所定の値以下(0を含む)である場合には、制御部30は、プレイヤが第2の操作を行ってもしがみつき行動を取らせないようにする。これにより、ずっとしがみつき行動を取ることによってゲームが停滞することを防止し、ゲームにおける緊迫感を演出することができる。また、しがみつき行動中は、攻撃することができないように設定される。これにより、第1ゲージG1を増大させるには、しがみつき行動を解除する必要があるため、よりゲーム性に富んだ演出を行うことができる。
制御部30は、敵キャラクタNのしがみつき行動時におけるプレイヤキャラクタPの行動に応じて第2ゲージG2の増大量を決定する(ステップT8,T9)。プレイヤキャラクタPがしがみつき行動を取っている場合、制御部30は、第2ゲージG2の所定の単位期間(所定のフレーム数)あたりの増大量を減少させる(ステップT8)。一方、プレイヤキャラクタPがしがみつき行動を取っていない場合(ステップT6でNo)、制御部30は、第2ゲージ2の所定の単位期間あたりの増大量を増加させる(ステップT9)。なお、しがみつき行動の有無に伴う第2ゲージG2の増大量の増減は、時間の経過に伴う増大量および敵キャラクタNの振り落とし行動による増大量の何れか一方に対して行われることとしてもよいし、両方に対して行われることとしてもよい。
その上で、ゲージ表示手段30dは、図3などに示すように、第2ゲージG2を第1ゲージG1の増大方向と同じ方向へステップT8またはステップT9で決定された増大量に基づいて増大させる(ステップT10)。
なお、図8のフローチャートにおいては、敵キャラクタNの振り落とし行動を所定のフレーム数ごと(ステップT1における判定ごと)に必ず行うこととしているが、例えば敵キャラクタNが振り落とし行動を行うか否かを抽選などにより決定することとしてもよい。この場合、第2ゲージG2の増大量は、例えば、プレイヤキャラクタPがしがみつき行動をせず、かつ、敵キャラクタNが振り落とし行動を行った場合が一番大きく、プレイヤキャラクタPがしがみつき行動をせず、かつ、敵キャラクタNが振り落とし行動を行わなかった場合が次に大きく、プレイヤキャラクタPがしがみつき行動をし、かつ、敵キャラクタNが振り落とし行動を行った場合が次に大きく、プレイヤキャラクタPがしがみつき行動をし、かつ、敵キャラクタNが振り落とし行動を行わなかった場合が最も小さいというように適宜設定される。また、本実施形態においては、プレイヤキャラクタPによる攻撃があった場合(ステップT1でYesに進んだ場合)には第2ゲージG2は増大しないが、この場合においても第2ゲージG2を増大させることとしてもよい。この場合は、第2ゲージG2の増大量をプレイヤキャラクタPによる攻撃がなかった場合(ステップT1でNoに進んだ場合)に比べて小さくすることとしてもよい。
第2ゲージG2を増大させる際、先端に表示されるアイコンHを変化させてもよい。例えば、アイコンHを光らせたり、色を変更したりしてもよい。また、本実施形態のような敵キャラクタNの顔を模したアイコンHにおいて口を開閉させる(第1ゲージG1を食べて進むような)演出を行ってもよい。
制御部30は、判定手段30eとして機能し、第2ゲージG2が第1ゲージG1以上となったか否か(第2ゲージG2の先端が第1ゲージG1の先端に到達したか否か)を判定する(ステップT11)。第2ゲージG2が第1ゲージG1以上となったと判定されなかった場合(ステップT11でNo)、プレイヤキャラクタPによる次の攻撃を待ち受ける(ステップT1)。この場合、ゲーム画面Dにおいては、第1ゲージG1の先端位置は第2ゲージG2の先端位置よりも到達位置C1の近くに位置する。一方、第2ゲージG2が第1ゲージG1以上となったと判定された場合(ステップT11でYes)、図5に示すように、制御部30は、イベント処理手段30fとして機能し、イベント失敗処理を実行する(ステップT12)。この場合、ゲーム画面Dにおいては、第1ゲージG1の全てが第2ゲージG2によって覆われ、第1ゲージG2が表示されない状態となる。
本実施形態のイベント失敗処理において、キャラクタ制御手段30bは、敵キャラクタNが乗り状態にあるプレイヤキャラクタPを振り落とし、プレイヤキャラクタPに不利な体勢を取らせる。この際、ゲージ表示手段30dは、第2ゲージG2の先端のアイコンHにおいても第1ゲージG1に到達したことを示す演出(アイコンHを光らせたり、色を変更したりする)を行う。この後、ゲージ表示手段30dは、ゲージ枠G0、第1ゲージG1および第2ゲージG2をゲーム画面D上から消去する。
以上に示すように、本実施形態においては、乗り攻撃のイベントにおいて、乗り状態に移行後、第1ゲージG1と、第1ゲージG1上に表示され、第1ゲージG1と同じ方向へ増大する第2ゲージG2とがゲーム画面D上に表示される。第1ゲージG1はプレイヤの第1の操作に基づいて増大し、第2ゲージG2は、プレイヤの第2の操作、敵キャラクタNの所定の行動、その他の情報に基づいて増大し、その増大量も変化する。そして、第1ゲージG1が到達位置C1に到達したと判定されればイベントの成功処理が行われ、その前に第2ゲージG2が第1ゲージG1以上となったと判定されればイベントの失敗処理が行われる。このように、ゲーム画面D上に1つのゲージ枠G0を表示しつつ、そこで表示されるゲージG1,G2が、互いに異なる複数の要素(フレーム数などの時間的要素、プレイヤキャラクタPの行動および敵キャラクタNの行動など)に基づいて変化(増大)することにより、当該複数の要素の変化をプレイヤに分かり易く伝えつつゲーム画面Dにおけるゲージ表示領域の占有率が増大することを抑制することができる。
以上、本発明の実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、その趣旨を逸脱しない範囲内で種々の改良、変更、修正が可能である。
例えば、本実施形態における第1ゲージG1および第2ゲージG2は、各初期位置B1,B2から直線状に伸びる棒状のゲージとして表示されるが、本発明は第2ゲージG2が第1ゲージG1上を同じ方向に増大する限りこれに限られない。例えば、第1ゲージG1および第2ゲージG2は、円形のゲージ(第1ゲージG1が時計回りに増大すれば、第2ゲージG2も時計回りに増大するようなゲージ)として表示されてもよい。また、表示態様も上記実施形態のようなゲージ枠G0に沿って各ゲージが伸びる態様だけでなく、例えば所定形状を有する複数のアイコンを備えるゲージ表示枠を設定してもよい。この場合、第1の情報に基づき、所定個数のアイコンの表示を変化(例えば点灯)させて第1ゲージを表現し、第2の情報に基づき、第1ゲージを表示するアイコンのうち所定個数のアイコンを、異なる表示態様に変化(例えば点滅)させて第2ゲージを表現する、といった設定を採用できる。
上述した説明では、一人のプレイヤがオフラインゲーム(シングルプレイ)を行う場合について主に例示したが、本発明は、複数のプレイヤが各自のプレイヤキャラクタを同一の仮想空間S内に登場させ、これらを共同させて行動させるオンラインゲーム(マルチプレイ)においても適用することができる。例えば、仮想空間Sに、このような複数のプレイヤキャラクタとともに、上述したようなノンプレイヤキャラクタである味方キャラクタおよび敵キャラクタが存在する場合には、この味方キャラクタの動作に関して本発明を適用することができる。
また、マルチプレイの場合、第1ゲージG1および第2ゲージG2を複数のプレイヤで共有することとしてもよい。すなわち、複数のプレイヤのそれぞれが第1の操作を行うことにより共通する第1ゲージG1を増大させて1つのイベントを成功させるようなイベント処理を行うことができる。また、上記実施形態における乗り攻撃のイベントにおいて、何れかのプレイヤのプレイヤキャラクタPが乗り状態にあるとき、乗り状態にない他のプレイヤキャラクタPが敵キャラクタNに攻撃を加えることにより、第1ゲージG1の増大量を増加させたり第2ゲージG2の増大量を減少させたり、第2ゲージG2を減少させたりすることができるとしてもよい。また、複数のプレイヤのプレイヤキャラクタPが同時に乗り状態となることができるとしてもよい。この場合、乗り状態にあるプレイヤキャラクタが協同して第1ゲージG1を増やすようにしてもよい。
また、上記実施形態においては、第1ゲージG1および第2ゲージG2を表示する所定のイベントとして乗り攻撃を例に説明したが、第1ゲージG1および第2ゲージG2を表示するイベントはこれに限られない。複数の要素が同時に変化し得るイベントであれば採用可能である。例えば、第1の敵キャラクタがプレイヤキャラクタPを捕らえて乗り物で護送されている際に、第1の敵キャラクタおよびプレイヤキャラクタPのいずれとも敵対する第2の敵キャラクタが別の乗り物に乗って第1の敵キャラクタを追跡してきた場合に、プレイヤキャラクタPが扉を叩き壊して乗り物から脱出するようなイベントについても、第1ゲージG1および第2ゲージG2の表示態様を利用することができる。
この場合、第1ゲージG1を増大させるための第1の情報には、プレイヤキャラクタPが扉を叩くためのプレイヤの第1の操作情報が含まれ、第2ゲージG2を増大させるための第2の情報には、第2の敵キャラクタと第1の敵キャラクタとの距離が含まれる。当該距離は、第2の敵キャラクタの第1の敵キャラクタへの攻撃(銃撃)や、第1の敵キャラクタの第2の敵キャラクタへの攻撃(銃撃)や、プレイヤキャラクタPの第1または第2の敵キャラクタへの攻撃(銃撃)などによって変化する。このようなイベントにおいて第1ゲージG1が到達位置C1に到達すると、プレイヤキャラクタPが扉を叩き壊して脱出するというイベント成功処理が行われ、第2ゲージG2が第1ゲージG1に到達すると、第2の敵キャラクタが第1の敵キャラクタに追い付き、第1の敵キャラクタおよびプレイヤキャラクタPの乗る乗り物を破壊し、プレイヤキャラクタPが第2の敵キャラクタに拘束されるというイベント失敗処理が行われる。このようなイベントにおいても1つのゲージ表示で異なる複数の要素を表示することができるため、当該複数の要素の変化をプレイヤに分かり易く伝えつつゲーム画面Dにおけるゲージ表示の占有率が増大することを抑制することができる。
また、本実施形態においては、第1ゲージG1が到達位置C1に到達することによりイベント成功処理が行われ、第2ゲージG2が第1ゲージG1以上となることによりイベント失敗処理が行われることとしているが、第2のゲージG2が第1ゲージG1以上となることによりイベント成功処理が行われ、第1ゲージG1が到達位置C1に到達することによりイベント失敗処理が行われることとしてもよい。
また、上記実施形態においては、第1表示体および第2表示体として、第1ゲージG1および第2ゲージG2を用いる例について説明したが、第1表示体が所定の第1の情報に基づいて第1の初期位置から所定の経路上を所定の方向へ移動し、第2表示体が第1の情報とは異なる所定の第2の情報に基づいて第1表示体と同じ経路上を第2の初期位置から第1表示体が移動する方向と同じ方向へ移動する構成を備える限り、これに限られない。
図9は第1表示体および第2表示体の他の例を示す図である。図9(a)は第1表示体として上記実施形態と同様の第1ゲージG1が示されているが、第2表示体はマーカ(上記実施形態におけるアイコン)Hのみが表示されている。そして、アイコンHが第1ゲージG1の経路(ゲージ枠G0)上を移動することによって、アイコンHが通過した第1ゲージG1部分を当該経路を示すゲージ枠G0とともに消去していく(消去された枠をFで示している)ような態様となっている。
また、図9(b)は第1ゲージG1の先端にもマーカJが表示される態様である。その他の態様は、上記実施形態と同様である。いずれにしても第1ゲージG1は、その先端が到達位置C1に位置するかまたは当該先端位置に第2表示体が位置するかによって成否が判定される。また、図9(c)はいずれの表示体においてもゲージが表示されない態様である。言い換えると、第1表示体は第1マーカJで示され、第2表示体は第2マーカHで示される。第1マーカJおよび第2マーカHは、同じ経路K上を移動するような態様となっている。
また、上記実施形態において、第1表示体の初期位置B1および第2表示体の初期位置B2は、異なる位置に位置する例を示したが、第1表示体の初期位置B1と第2表示体の初期位置B2は同一位置であってもよいし、第2表示体の初期位置B2が経路上、第1表示体の初期位置B1より進んだ位置に位置してもよい。これらの場合には、第2表示体を移動させるタイミングを第1表示体を移動させるタイミングより遅らせる(第1表示体が第2表示体の初期位置B2を超えてから第2表示体を移動させる)こととすればよい。なお、第1表示体の初期位置B1および第2表示体の初期位置B2はランダムで決定されてもよいし、所定条件に応じて変更されることとしてもよい。
さらに、第1表示体および第2表示体はそれぞれ第1表示体の経路において到達位置C1に向かう方向とは反対方向への移動を含んでもよい。例えば、プレイヤキャラクタPが敵キャラクタNの背中に乗っているときに、攻撃を行わないなどの状態でいると第1表示体が反対方向へ移動(第1ゲージG1が減少)したり、プレイヤキャラクタPが敵キャラクタNへ攻撃を行うと第2表示体が反対方向へ移動(第2ゲージG2が減少)してもよい。
また、本実施例では携帯型のゲーム装置について説明したが、据え置き型のゲーム装置、携帯電話機、およびパーソナルコンピュータなどのコンピュータについても、本発明を好適に適用することができる。