[1.実施形態1]
以下、本発明の実施形態の一例について図面に基づき詳細に説明する。本発明の実施形態に係るゲーム装置は、例えば、家庭用ゲーム機(据置型ゲーム機)、携帯ゲーム機、携帯電話機、携帯情報端末(PDA)又はパーソナルコンピュータ等によって実現される。ここでは、実施形態に係るゲーム装置を家庭用ゲーム機によって実現する場合について説明する。
[1−1.ゲーム装置のハードウェア構成]
図1は、本発明の実施形態に係るゲーム装置のハードウェア構成を示す図である。図1に示すように、ゲーム装置10においては、家庭用ゲーム機11に情報記憶媒体である光ディスク25及びメモリカード28が装着される。また、ゲーム装置10には、表示部18及び音声出力部22が接続される。例えば、表示部18には家庭用テレビ受像機が用いられ、音声出力部22には、その内蔵スピーカが用いられる。
家庭用ゲーム機11は、バス12、マイクロプロセッサ14、画像処理部16、音声処理部20、光ディスク再生部24、主記憶26、入出力処理部30及びコントローラ32を含んで構成される。家庭用ゲーム機11は、公知のコンピュータゲームシステムである。コントローラ32以外の構成要素は、筐体内に収容される。
バス12は、アドレス及びデータを家庭用ゲーム機11の各部でやり取りするためのものである。マイクロプロセッサ14、画像処理部16、主記憶26及び入出力処理部30は、バス12によって相互データ通信可能に接続される。
マイクロプロセッサ14は、図示しないROMに格納されるオペレーティングシステム、光ディスク25から読み出されるプログラムや、メモリカード28から読み出されるデータに基づいて、家庭用ゲーム機11の各部を制御する。
主記憶26は、例えばRAMを含んで構成されるものであり、光ディスク25から読み出されたプログラムやメモリカード28から読み出されたデータが、必要に応じて書き込まれる。主記憶26は、マイクロプロセッサ14の作業用メモリとしても用いられる。
画像処理部16は、VRAMを含んで構成される。画像処理部16は、マイクロプロセッサ14から送られる画像データに基づいてVRAM上にゲーム画面を描画する。画像処理部16は、この内容をビデオ信号に変換して所定のタイミングで表示部18に出力する。
入出力処理部30は、マイクロプロセッサ14が音声処理部20、光ディスク再生部24、メモリカード28及びコントローラ32にアクセスするためのインタフェースである。入出力処理部30には、音声処理部20、光ディスク再生部24、メモリカード28及びコントローラ32が接続される。
音声処理部20はサウンドバッファを含んで構成される。音声処理部20は、光ディスク25から読み出されてサウンドバッファに記憶されたゲーム音楽、ゲーム効果音、メッセージ等の各種音声データを音声出力部22から出力する。
光ディスク再生部24は、マイクロプロセッサ14からの指示に従って光ディスク25に記録されたプログラムを読み取る。なお、ここではプログラムを家庭用ゲーム機11に供給するために光ディスク25を用いることとするが、CD−ROMやROMカード等、他のあらゆる情報記憶媒体を用いるようにしてもよい。また、インターネット等のデータ通信網を介して遠隔地からプログラムを家庭用ゲーム機11に供給するようにしてもよい。
メモリカード28は、不揮発性メモリ(例えばEEPROM等)を含んで構成される。家庭用ゲーム機11は、メモリカード28を装着するための複数のメモリカードスロットを備えており、複数のメモリカード28を同時に装着可能となっている。メモリカード28は、このメモリカードスロットに対して脱着可能に構成され、例えば、セーブデータ等の各種ゲームデータを記憶させるために用いられる。
コントローラ32は、プレイヤが各種ゲーム操作の入力をするためのものである。入出力処理部30は、一定周期毎(例えば1/60秒毎)にコントローラ32の各部の状態をスキャンする。このスキャン結果を表す操作信号は、バス12を介してマイクロプロセッサ14に入力される。
マイクロプロセッサ14は、コントローラ32からの操作信号に基づいてプレイヤのゲーム操作を判定する。家庭用ゲーム機11は、複数のコントローラ32を接続可能に構成されている。つまり、家庭用ゲーム機11は、各コントローラ32から入力される操作信号に基づいて、マイクロプロセッサ14がゲーム制御を行うようになっている。
[1−2.ゲーム装置が実行するゲーム]
ゲーム装置10は、複数のゲームキャラクタのうちでユーザの操作対象が切り替わるゲームを実行する。例えば、ゲーム装置10は、第1チームと第2チームとの間のサッカーの試合を模したサッカーゲームを実行する。このサッカーゲームは、光ディスク25から読み出されたプログラムが実行されることによって実現される。
本実施形態においては、第1チームは、1人のユーザによって操作される。第2チームは、コンピュータによって操作される。サッカーゲームを実現するために、仮想3次元空間40(ゲーム空間)が、主記憶26に構築される。
図2は、仮想3次元空間40の一例を示す図である。図2に示す仮想3次元空間40には、サッカーフィールドを表すオブジェクトであるフィールドオブジェクト42が配置されている。フィールドオブジェクト42は、ゴールライン42aと、タッチライン42bと、に囲まれる領域であるピッチを含む。
例えば、フィールドオブジェクト42上には、サッカーのゴールを表すオブジェクトであるゴールオブジェクト44が配置される。ゴールオブジェクト44の一方は、第1チームに対応づけられる。ゴールオブジェクト44の他方は、第2チームに対応づけられる。
また、図2の例では、フィールドオブジェクト42上には、2体の味方キャラクタオブジェクト46a,46bと、2体の敵キャラクタオブジェクト48a,48bと、サッカーボールを表すボールオブジェクト50と、が配置される。
味方キャラクタオブジェクト46a,46bは、第1チームに所属するゲームキャラクタ(サッカー選手)を表すオブジェクトである。一方、敵キャラクタオブジェクト48a,48bは、第2チームに所属するゲームキャラクタを表すオブジェクトである。
なお、ゲーム装置10においてサッカーゲームが実行される際には、フィールドオブジェクト42上には、第1チームに所属する11体の味方キャラクタオブジェクト46と、第2チームに所属する11体の敵キャラクタオブジェクト48と、が配置されるが、図2では省略し、それぞれ2体ずつ示している。
味方キャラクタオブジェクト46と、ボールオブジェクト50と、が近づくと、所定条件の下、この味方キャラクタオブジェクト46と、ボールオブジェクト50と、が関連づけられる。この場合、ボールオブジェクト50は、この味方キャラクタオブジェクト46の移動に従って移動する。
ボールオブジェクト50と関連付けられた味方キャラクタオブジェクト46は、例えば、操作対象として設定される。以降では、ユーザの操作対象となる味方キャラクタオブジェクト46を、操作対象選手という。ボールオブジェクト50と関連付けられた操作対象選手の動作は、ドリブル動作となる。
敵キャラクタオブジェクト48においても、上記と同様に、ボールオブジェクト50との関連付けが行われる。即ち、敵キャラクタオブジェクト48と、ボールオブジェクト50と、が近づくと、所定条件の下、この敵キャラクタオブジェクト48と、ボールオブジェクト50と、が関連づけられる。
また、ボールオブジェクト50と、味方キャラクタオブジェクト46の何れかと、が関連付けられていない場合においても、複数の味方キャラクタオブジェクト46のうちの何れかが、操作対象選手として設定される。操作対象選手は、例えば、後述する処理(図11参照)により、第1チームに所属する味方キャラクタオブジェクト46のうちで自動的に切り替えられる。
また、ユーザの切替指示操作に基づいて操作対象選手は切り替わる。切替指示操作は、例えば、コントローラ32の所定のボタンをユーザが押下する操作である。例えば、マイクロプロセッサ14は、ユーザによって切替指示操作が行われた場合に、操作対象選手以外の味方キャラクタオブジェクト46のうちでボールオブジェクト50に最も近い味方キャラクタオブジェクト46を、操作対象選手として設定する。
切替指示操作が連続して複数回行われた場合(つまり、コントローラ32の所定のボタンが連続して押下された場合)、この回数に基づいて操作対象選手となる味方キャラクタオブジェクト46が選択される。例えば、切替指示操作がx回(複数回を示す。例えば、2回。)連続して行われた場合には、ボールオブジェクト50にx番目(例えば、2番目)に近い味方キャラクタオブジェクト46が操作対象選手となる。
操作対象選手は、ユーザの操作に基づいて動作する。一方、第1チームに所属する味方キャラクタオブジェクト46のうちの、操作対象選手以外の味方キャラクタオブジェクト46及び第2チームに所属する敵キャラクタオブジェクト48は、マイクロプロセッサ14の制御下に置かれる。
また、仮想3次元空間40には、仮想カメラ52(視点)が設定される。仮想3次元空間40を、仮想カメラ52から見た様子を表すゲーム画面60が、表示部18に表示される。例えば、常にボールオブジェクト50をゲーム画面内に表示するため、仮想カメラ52は、ボールオブジェクト50の移動に基づいて仮想3次元空間40内を移動する。
図3は、表示部18に表示されるゲーム画面60の一例を示す図である。図3に示すゲーム画面60には、第1チームに所属する2体の味方キャラクタオブジェクト46a,46bと、第2チームに所属する2体の敵キャラクタオブジェクト48a,48bと、ボールオブジェクト50と、が表示されている。図3では、敵キャラクタオブジェクト48aと、ボールオブジェクト50と、が関連付けられている。
また、図3では、味方キャラクタオブジェクト46aが、操作対象選手である。ゲーム画面60には、操作対象選手を識別するための指標が表示される。例えば、ゲーム画面60においては、操作対象選手を識別するための三角形状のカーソル62が、味方キャラクタオブジェクト46aの頭上に表示される。
図3に示す状態において、コントローラ32から操作対象選手の切替指示操作が入力されると、例えば、操作対象選手が、ボールオブジェクト50に最も近い味方キャラクタオブジェクト46bに切り替えられる。
図4は、操作対象選手が切り替えられた場合に表示部18に表示されるゲーム画面60の一例を示す図である。この場合、操作対象選手である味方キャラクタオブジェクト46bの頭上にカーソル62が移動する。つまり、味方キャラクタオブジェクト46bは、ユーザの操作に供される。一方、味方キャラクタオブジェクト46aは、マイクロプロセッサ14の制御下に置かれる。
[1−3.ゲーム装置で実現される機能]
図5は、ゲーム装置10において実現される機能群を示す機能ブロック図である。図5に示すように、ゲーム装置10では、ゲームデータ記憶部70、基準状態データ記憶部72、自動切替部74、操作部76、手動切替部78、取得部80、判定部82、処理実行部84、が実現される。これらの機能は、マイクロプロセッサ14が光ディスク25から読み出されたプログラムに従って動作することにより、実現される。
[1−3−1.ゲームデータ記憶部]
ゲームデータ記憶部70は、主記憶26及び光ディスク25を主として実現される。ゲームデータ記憶部70は、ゲームの実行に必要な各種データを記憶する。例えば、ゲームデータ記憶部70は、仮想3次元空間40の現在の状況を示すゲーム状況データ等を記憶する。
図2に示す仮想3次元空間40は、ゲーム状況データに基づいて主記憶26に構築される。ゲーム状況データには、例えば、ボールオブジェクト50が配置されている3次元座標、仮想カメラ52の3次元座標、味方キャラクタオブジェクト46及び敵キャラクタオブジェクト48に関するデータ等が格納される。
味方キャラクタオブジェクト46及び敵キャラクタオブジェクト48に関するデータとは、例えば、各オブジェクトが配置される3次元座標や、移動方向、移動速度等である。後述する処理(図11)においては、このデータに基づいて味方キャラクタオブジェクト46の状態に関するデータが作成される。
また、ゲーム状況データには、操作対象選手となっている味方キャラクタオブジェクト46を特定するための情報や、ボールオブジェクト50と関連付けられている味方キャラクタオブジェクト46又は敵キャラクタオブジェクト48を識別するための情報が格納される。他にも、サッカーゲームの試合の得点を示す情報や、試合の残り時間を示す情報等も、ゲーム状況データに格納される。
[1−3−2.基準状態データ記憶部]
基準状態データ記憶部72は、主記憶26及び光ディスク25を主として実現される。基準状態データ記憶部72は、操作対象の基準状態に関する基準状態データDn(Dnの「n」は正整数)を記憶する。基準状態とは、自動切替部74が現在の操作対象選手を切り替えるか否かを判定するための条件である。
図6は、基準状態データDnのデータ格納例を示す図である。図6に示すように、基準状態データDnには、操作対象選手の状態に関する評価基準の項目と、評価基準に対応する基準値と、が対応付けられている。例えば、基準状態データDnには、複数の評価基準の項目が含まれる。また、本実施形態において、基準値は、0〜1の実数値とする。
例えば、図6に示す評価基準Aは、操作対象選手とボールオブジェクト50との距離(以降、単に距離Lという)である。この場合、基準値は、距離Lに対応する0〜1の実数値となる。基準値が0以上1未満である場合は、例えば、距離Lが所定距離(例えば、仮想三次元空間における5メートルを示す距離。以降、仮想三次元空間における1メートルを示す距離を、単に「1メートル」のように記載する。)未満であって、基準値が「距離L/所定距離」の値となっていることを示す。一方、基準値が1である場合は、距離Lが所定距離以上であることを示す。
例えば、所定距離が5メートルであった場合、基準値が0.4の場合には距離Lが2メートルであることを示し、基準値が1.0の場合には距離Lが5メートル以上であることを示す。
また例えば、図6に示す評価基準Bは、ボールオブジェクト50と関連付けられている敵キャラクタオブジェクト48の移動方向と、この敵キャラクタオブジェクト48と操作対象選手とを結ぶ方向と、の角度(以降、単に角度Rという)である。この場合、基準値は、角度Rに対応する0〜1の実数値となる。
基準値が0以上1未満である場合は、例えば、角度Rが所定角度(例えば、40°)未満であって、基準値が「角度R/所定角度」の値となっていることを示す。一方、基準値が0である場合は、角度Rが所定角度以上であることを示す。
例えば、所定角度が40°であった場合、基準値が0.5の場合には角度Rが20°であることを示し、基準値が1.0の場合には角度Rが40°以上であることを示す。
なお、評価基準は、ゲーム状況データや選手の能力を示すパラメータ、コントローラ32を介したユーザ操作等に基づいて、マイクロプロセッサ14が操作対象の状態を判別できる種類のものであればよく、評価基準となるものは、上記の距離L及び角度Rに限られない。他にも例えば、評価基準は、操作対象選手の移動速度等であってもよい。
図7は、基準状態データ記憶部72の記憶内容を説明するための説明図である。図7に示すように、基準状態データ記憶部72は、一又は複数の基準状態データDnを記憶する。図7に示す基準状態データD0〜Dnのそれぞれのデータ形式は、図6を参照して説明したデータ形式と同様である。
基準状態データD0は、例えば、予めゲーム作成者が作成したマスタデータである。基準状態データD1〜Dnは、例えば、生成処理P3(詳細後述)により生成されて、新たに追加されるデータである。即ち、基準状態データD1〜Dnは、サッカーゲームが実行された結果追加されるものである。
[1−3−3.自動切替部]
自動切替部74は、マイクロプロセッサ14を主として実現される。自動切替部74は、基準状態データDnと、操作対象の現在の状態に関するデータ(以降、操作対象状態データSkという。Skの「k」は自然数を示す。)と、を比較した結果に基づいて操作対象を複数のゲームキャラクタ(味方キャラクタオブジェクト46)のうちの他に切り替える。操作対象状態データSkは、例えば、ゲーム状況データに基づいて算出される。
図8は、操作対象状態データSkの一例を示す図である。図8に示すように、操作対象状態データSkは、評価基準と、評価基準に対応する状態値と、が対応付けられたものである。操作対象状態データSkの評価基準は、基準状態データDnの評価基準と同様である。
操作対象状態データSkの状態値は、ゲームデータ記憶部70に格納されたゲーム状況データ(例えば、操作対象選手の位置や移動速度等)に基づいて算出される。即ち、操作対象状態データSkの状態値は、操作対象選手の現在の状態を示す数値である。
例えば、評価基準Aが距離Lである場合の状態値は、操作対象選手の現在の位置と、ボールオブジェクト50の現在の位置と、に基づいて算出される距離Lに対応する値となる。状態値は、基準値と同様に、所定距離に応じた0〜1の実数値となる。図8のデータ格納例では、評価基準Aの状態値は0.6であるので、所定距離が5メートルである場合には、現在の操作対象選手の距離Lは3メートルである。
また例えば、評価基準Bが角度Rである場合の状態値は、操作対象選手の現在の位置と、ボールオブジェクト50に関連付けられている敵キャラクタオブジェクト48の現在の位置と、この敵キャラクタオブジェクト48の現在の移動方向と、に基づいて算出される角度Rに対応する値となる。上記と同様に、状態値は、所定角度に応じた0〜1の実数値となる。図8のデータ格納例では、評価基準Bの状態値は0.7であるので、所定角度が40°である場合には、現在の操作対象選手の角度Rは28°である。
自動切替部74は、操作対象状態データSkの状態値と、基準状態データDnの基準値と、を比較する。例えば、自動切替部74は、操作対象状態データSkの評価基準Aの状態値と、基準状態データDnの評価基準Aの基準値と、を比較する。
図6及び図8に示すデータ格納例の場合、評価基準Aの状態値は、評価基準Aの基準値よりも小さい。一方、評価基準Bの状態値は、評価基準Bの基準値よりも大きい。評価基準Cの状態値も、評価基準Cの基準値よりも大きい。このように、同じ評価基準同士の状態値と基準値とが比較される。
本実施形態においては、操作対象状態データSkの状態値が、基準状態データDnの評価値に関する所定の条件(切替条件)を満たす場合に、自動切替部74は、操作対象選手を複数の味方キャラクタオブジェクト46のうちの他に切り替える。
切替条件は、操作対象状態データSkの状態値と、基準状態データDnの評価値と、に基づいて定められる条件であればよい。詳細は後述するが、操作対象状態データSkの状態値と、基準状態データDnの評価値と、に基づいて算出される類似度が所定値以上であるか否か、を切替条件としてもよい。
また、本実施形態において、操作対象状態データSkの「k」は、後述する図11の処理が、ゲームの起動からカウントしてk回目に実行された際に作成されるデータであることを示す。つまり、図11の処理が5回目であれば、この処理の際に作成されるものは、操作対象状態データS5となる。
[1−3−4.操作部]
操作部76は、コントローラ32を主として実現される。例えば、操作部76は、切替指示操作を入力するためのものである。ユーザの操作により、操作部76から切替指示操作が入力されると、後述する手動切替部78により、操作対象選手が切り替えられる。
また、操作対象選手は、操作部76からの入力により、ユーザによって指示された方向に移動動作を行う。例えば、操作対象選手は、操作部76を介してユーザから指示された方向に移動動作を行う。操作部76からの入力に基づいて、ゲーム状況データは適宜更新される。例えば、操作対象選手が移動した場合には、ゲーム状況データの操作対象選手の位置や移動方向、移動速度の値が書き替えられる。
[1−3−5.手動切替部]
手動切替部78は、マイクロプロセッサ14を主として実現される。手動切替部78は、ユーザによって切替指示操作が行われた場合に操作対象を複数のゲームキャラクタ(味方キャラクタオブジェクト46)のうちの他に切り替える。つまり、手動切替部78は、操作部76から切替指示操作が入力されると、操作対象選手を味方キャラクタオブジェクト46の他に切り替える。
例えば、操作対象選手が味方キャラクタオブジェクト46aである状態(図3)で、切替指示操作が入力されると、手動切替部78により、操作対象選手が味方キャラクタオブジェクト46bに切り替えられる(図4)。この切り替えと同時又は切り替え前後の所定タイミングで、ゲーム状況データの操作対象選手を識別する情報が更新される。
[1−3−6.取得部]
取得部80は、マイクロプロセッサ14を主として実現される。取得部80は、ゲームの状況に基づいて操作対象の移動動作の推定目標位置を取得する。推定目標位置とは、例えば、操作対象が現在位置から移動する、とゲーム状況データに基づいて推定される方向の所定位置のことである。
推定目標位置は、ゲーム作成者によって予め定められた方法により算出される。例えば、推定目標位置は、ゲーム状況データに格納された各値に基づいて算出される。例えば、推定目標位置は、ボールオブジェクト50の位置、又は、ボールオブジェクト50に関連付けられている敵キャラクタオブジェクト48の位置となる。
[1−3−7.判定部]
判定部82は、マイクロプロセッサ14を主として実現される。判定部82は、自動切替部74による切り替え後に、ユーザが所定の操作を行ったか否か又は操作対象が所定の動作をしたか否かの少なくとも一方を判定する。
判定部82が判定する所定の操作とは、自動切替部74による切り替えがユーザの意図しないものになった結果生ずる操作である。例えば、切り替え後の操作対象選手の推定目標位置と全く異なる方向に向かって移動する操作がなされた場合等である。
判定部82が判定する所定の動作とは、自動切替部74による切り替えがユーザの意図しないものになった結果生ずる動作である。例えば、切り替え後の操作対象選手の推定目標位置と全く異なる方向に向かって、切り替え後の操作対象選手が動作した場合である。
また、判定部82は、自動切替部74による切り替え後に、ユーザが切替指示操作を行ったか否かを判定するようにしてもよい。つまり、自動切替部74による切り替え後に、ユーザが切替指示操作を行った場合、判定部82は、ユーザが所定の操作を行ったと判定する。即ち、自動切替部74による切り替えが、ユーザが意図しないものであり、手動で別の味方キャラクタオブジェクト46に操作対象選手を切り替えた場合、自動切替部74は、ユーザが所定の操作を行ったと判定する。
また、判定部82は、操作対象の位置から推定目標位置への方向との間の角度が基準角度よりも大きい方向を操作対象の移動方向として指示する操作が行われたか否かを判定するようにしてもよい。
図9は、判定部82の判定方法を説明するための説明図であり、操作対象選手が味方キャラクタオブジェクト46aから味方キャラクタオブジェクト46bに切り替わった直後の状態を示している。図9に示す例では、推定目標位置を、ボールオブジェクト50の位置とする。なお、推定目標位置は、ボールオブジェクト50に対応付けられている敵キャラクタオブジェクト48の位置としてもよい。
例えば、操作対象選手である味方キャラクタオブジェクト46bからボールオブジェクト50への方向(方向V1)と、操作対象選手の移動方向(方向V2)と、の角度θ1が、予め定められた基準角度(例えば、45°等)よりも大きい場合、判定部82は、所定の操作が行われたと判定する。
上記の例では、操作対象選手が、ボールオブジェクト50に向かって移動すると推定されるような状況の時に、全く違う方向への移動の指示が入力された場合、所定の操作が行われたと判定される。即ち、ユーザは、自動切替部74による切り替え前の味方キャラクタオブジェクト46aが操作対象選手であると思って操作をしたが、実際には操作対象選手は別の味方キャラクタオブジェクト46bに切り替えられていた場合の操作である。
また、判定部82は、操作対象の位置から推定目標位置への方向との間の角度が基準角度よりも大きい方向に操作対象が移動動作を行ったか否かを判定するようにしてもよい。つまり、操作部76から入力されたユーザの操作ではなく、操作対象選手の実際の動作に基づいて上記の判定がなされるようにしてもよい。
上記の例では、自動切替部74による切り替え前の操作対象選手が行うべき動作を、自動切替部74による切り替え後の操作対象選手が行った場合の動作である。操作対象選手の動作は、例えば、ゲームデータ記憶部70に記憶されたゲーム状況データの変化等に基づいて判断される。
[1−3−8.処理実行部]
処理実行部84は、マイクロプロセッサ14を主として実現される。処理実行部84は、自動切替部74による切り替え前の操作対象の状態に基づいて基準状態データDnを更新する処理(以降、単に更新処理P1)、基準状態データDnに基づく自動切替部74による切り替えを制限する処理(以降、単に制限処理P2)、又は、自動切替部74による切り替え前の操作対象の状態に基づいて新たに基準状態データDnを生成する処理(以降、単に生成処理P3)、の少なくとも一つを判定部82の判定結果に基づいて実行する。
[更新処理]
まず、更新処理P1について説明する。
判定部82による判定結果が、ユーザが所定の操作を行った又は操作対象が所定の動作をした旨を示すものである場合、処理実行部84は、例えば、切り替え前の操作対象の操作対象状態データSkに基づいて自動切替部74の切り替えが行われにくくなるように基準状態データDnを更新する。
例えば、自動切替部74による切り替えの直後に、ユーザの切替指示操作によって手動で操作対象選手が切り替えられた場合には、自動切替部74による切り替えは、ユーザの意図しないものであると判定される。この場合、操作対象選手が、今後、上記の自動切替部74による切り替えの際に比較された操作対象状態データSkと同じ状態になった場合に、自動切替部74による切り替えが発生しないように基準状態データDnを更新する。
具体的には、基準状態データDnの基準値が、操作対象状態データSkの状態値との差が大きくなるように更新される。即ち、基準状態データDnの基準値のうち、操作対象状態データSkの状態値(例えば、0.5)よりも0.2大きい基準値(例えば、0.7)を、0.1加算させることにより更新される(例えば、0.8に更新される)。
また、基準状態データDnの基準値のうち、操作対象状態データSkの状態値(例えば、0.7)よりも0.1小さい基準値(例えば、0.6)を、0.1減算させることにより更新される(例えば、0.5に更新される)ようにしてもよい。
一方、判定部82による判定結果が、ユーザが所定の操作を行っていない又は操作対象が所定の動作をしていない旨を示すものである場合、処理実行部84は、例えば、切り替え前の操作対象の操作対象状態データSkと似た状態となった場合、自動切替部74による切り替えが行われやすくなるように基準状態データDnを更新する。
例えば、自動切替部74による切り替えの直後に、ユーザの切替指示操作が入力されなかった場合には、自動切替部74による切り替えは、ユーザの意図するものであると判定される。この場合、操作対象選手が、今後、上記の自動切替部74による切り替えの際に比較された操作対象状態データSkと似た状態になった場合に、自動切替部74による切り替えが発生するように基準状態データDnを更新する。
例えば、基準状態データDnの基準値が、操作対象状態データSkの状態値との差が小さくなるように更新される。即ち、基準状態データDnの基準値のうち、操作対象状態データSkの状態値(例えば、0.6)よりも0.2大きい基準値(例えば、0.8)を、0.1減算させることにより更新される(例えば、0.7に更新される)。
また例えば、基準状態データDnの基準値のうち、操作対象状態データSkの状態値(例えば、0.5)よりも0.2小さい基準値(例えば、0.3)を、0.1加算させることにより更新される(例えば、0.4に更新される)。
なお、基準状態データDnの基準値の更新方法は、上記の例に限られない。操作対象状態データSkの状態値に基づいて基準状態データDnの基準値が更新(変更)されるようにすればよく、他にも基準状態データDnの基準値と、操作対象状態データSkの状態値と、の平均値が、新たな基準値となるように更新するようにしてもよい。
[制限処理P2]
次に、制限処理P2について説明する。
処理実行部84は、判定部82の判定結果に基づいて、基準状態データDnに基づいた自動切替部74による切り替えを制限する。例えば、処理実行部84は、自動切替部74が操作対象状態データSkとの比較対象となる基準状態データDnの使用を制限する。
自動切替部74による切り替え後に、ユーザが所定の操作を行った又は操作対象選手が所定の動作を行ったと判定された場合、この切り替えの際に比較対象となった基準状態データDnが、今後、操作対象状態データSkとの比較に使用されないように制限される。
基準状態データDnに基づいた自動切替部74による切り替えが制限されるか否かは、例えば、基準状態データDn毎に対応付けられたフラグによって判断される。フラグは、例えば、フラグデータFに格納される。
図10は、フラグデータFのデータ格納例を示す図である。図10に示すようにフラグデータFは、基準状態データDnを識別する情報と、この基準状態データDnに基づく自動切替部74による切り替えを制限するか否かを示すフラグと、が対応付けられる。フラグデータFは、例えば、メモリカード28に記憶される。サッカーゲームが起動されると、フラグデータFは、メモリカード28から読み出されて主記憶26に展開される。
例えば、フラグが「1」である基準状態データDnに基づく自動切替部74による切り替えは、制限されない。一方、フラグが「0」である基準状態データDnに基づく自動切替部74による切り替えは、制限される。
図10のデータ格納例では、基準状態データD0に基づく自動切替部74による切り替えは制限されないが、基準状態データD1に基づく自動切替部74による切り替えは制限される。即ち、基準状態データD1に基づく自動切替部74の切り替えは、ユーザの意図しないものであったため、今後の自動切替部74の切り替えの際に、基準状態データD1は使用されない。
自動切替部74による切り替えを制限する方法は、基準状態データDnに基づく自動切替部74による切り替えが行われないようにすればよく、種々の方法を適用可能である。例えば、フラグが「0」である基準状態データDn(図10の場合、基準状態データD1等)については、自動切替部74による操作対象状態データSkとの比較がされないようにする。
他にもいったん全ての基準状態データDnと操作対象状態データSkとが自動切替部74により比較され、フラグが「0」である基準状態データDn(図10の場合、基準状態データD1等)に対応する判定結果は、自動切替部74による切り替えの際に考慮されないようにしてもよい。
制限処理P2では、自動切替部74による切り替え後に、ユーザが所定の操作を行った又は操作対象選手が所定の動作を行ったと判定された場合、この切り替えの際に操作対象状態データSkが切替条件を満たした基準状態データDnに対応するフラグが「0」に変更されることにより、この基準状態データDnの使用が制限される。
即ち、上記の場合、自動切替部74による切り替えはユーザの意図しないものであったため、今後、操作対象選手が、この切り替えの際と同じ状態になった場合に、自動切替部74による切り替えが行われないようになる。
[生成処理P3]
次に、生成処理P3について説明する。
処理実行部84は、判定部82の判定結果に基づいて、自動切替部74による切り替え前の操作対象の状態に基づいて新たに基準状態データDnを生成する。具体的には、自動切替部74による切り替え前の操作対象状態データSkを、基準状態データDn(例えば、n=k)として新たに記憶させる。同様に、フラグデータFに新たなレコードを追加する。追加された新たなレコードに、この基準状態データDnを識別する情報と、フラグ「1」と、を格納する。
なお、基準状態データDnの生成方法は、上記の例に限られない。例えば、自動切替部74による切り替え前の操作対象状態データSkの状態値が、所定の数式により値が変更されて基準状態データDnが生成されるようにしてもよい。この場合においても上記と同様に、フラグデータFには、新たに生成された基準状態データDnを識別する情報と、フラグ「1」と、が対応付けられて格納される。
[1−4.ゲーム装置にて実行される処理]
図11は、味方キャラクタオブジェクト46の何れかとボールオブジェクト50とが対応付けられていない場合に、ゲーム装置10において実行される処理の一例を示すフロー図である。図11の処理は、マイクロプロセッサ14が、光ディスク25から読み出されたプログラムに従って動作することにより実行される。
つまり、図11に示す処理は、ボールオブジェクト50と敵キャラクタオブジェクト48とが関連付けられている場合、又は、ボールオブジェクト50が味方キャラクタオブジェクト46及び敵キャラクタオブジェクト48の何れにも関連付けられていない場合、に実行される。
また、以降の説明では、基準状態データ記憶部72に、7つの評価基準(それぞれ、評価基準A〜Gとする。)を持つ基準状態データD0〜D9の10個のデータが記憶されており、この10個の基準状態データDnのうち、6個に対応するフラグが「1」である場合を例に挙げて説明する。即ち、残りの4個の基準状態データDnに対応するフラグは「0」である。
図11に示すように、まず、マイクロプロセッサ14は、操作対象選手の現在の状態に関するデータ(操作対象状態データSk)を算出する(S101)。具体的には、マイクロプロセッサ14は、ゲームデータ記憶部70に記憶されたゲーム状況データに基づいて評価基準A〜G毎に状態値を算出して、操作対象状態データSkを主記憶26に記憶させる。なお、先述したように、操作対象状態データSkの「k」は、本処理がk回目(例えば、10回目)に行われた際にS101で算出されたデータであることを示す。
マイクロプロセッサ14は、基準状態データ記憶部72に記憶された基準状態データDnと、S101で算出された操作対象状態データSkと、を比較する(S102)。
S102においては、基準状態データ記憶部72に記憶された基準状態データDnのうち、フラグデータFのフラグが「1」であるもののみが比較される。例えば、基準状態データD0〜D9のうち、フラグが「1」の6個のみが比較される。
また、S102においては、基準状態データ記憶部72に記憶された基準状態データDnの全てがいったん比較され、フラグデータFのフラグが「1」であるもののみの比較結果が、続くS103における判定で用いられるようにしてもよい。例えば、基準状態データ記憶部72に記憶された10個の基準状態データD0〜D9の全てが比較され、このうちのフラグが「1」である6個の比較結果のみが、続くS103において用いられる。
マイクロプロセッサ14は、S102の比較結果に基づいて、操作対象選手が切替条件を満たすか否かを判定する(S103)。即ち、マイクロプロセッサ14は、操作対象選手を、自動で切り替えるか否かを判定する。
S103においては、マイクロプロセッサ14は、操作対象状態データSkの状態値と、基準状態データDnの基準値と、の数値の大きさの類似具合を示す類似度が所定値以上の基準状態データDnが一つでも存在した場合、操作対象選手が切替条件を満たすと判定する。即ち、基準状態データD0〜D9のうちフラグが「1」であるデータに対応する類似度が所定値以上であるものが一つでも存在した場合、操作対象選手が切替条件を満たすと判定される。
例えば、マイクロプロセッサ14は、基準状態データDnの各評価基準に対応する基準値と、S101において算出された操作対象状態データSkの各評価基準に対応する状態値と、の内積に基づいて類似度を算出する。即ち、基準状態データDnの7つの評価基準の基準値と、操作対象状態データSkの7つの評価基準の状態値と、をそれぞれ7次元のベクトルとする。
この2つのベクトルのなす角を角度αとすると、cosαが類似度となる。類似度を示すcosαは、2つのベクトルの内積を、2つのベクトルのそれぞれの絶対値で割った値である。類似度を示すcosαが1に近いほど、基準状態データDnと、操作対象状態データSkと、は類似する。即ち、角度αが0°に近いため、この2つのベクトルは、同じ方向を向いているベクトルであることを示す。
マイクロプロセッサ14は、予め定められた値以上の類似度となる基準状態データDnが存在する場合、操作対象選手が切替条件を満たすと判定する。例えば、上記の例の場合、フラグが「1」の基準状態データDnのうち、類似度が0.8以上である基準状態データDnが一つでも存在する場合、操作対象選手が切替条件を満たすと判定される。
一方、フラグが「1」の基準状態データDnのうち、予め定められた値以上の類似度となる基準状態データDnがない場合、操作対象選手が切替条件を満たさないと判定される。なお、類似度の算出方法は、上記の例に限られない。例えば、評価基準毎に重みづけがなされて類似度が算出されるようにしてもよい。
また、S103の判定方法は、基準状態データDnと操作対象状態データSkとに基づいて判定されるものであればよく、この判定方法は、類似度を用いた上記の例に限られない。他にも例えば、S103においては、S102の比較結果により、評価基準A〜Gのうちで状態値が基準値以上である評価基準を所定数以上(例えば、3つ以上)含む基準状態データDnが一つでも存在する場合に、操作対象選手が切替条件を満たすと判定されるようにしてもよい。
図11に戻り、操作対象選手が切替条件を満たす場合(S103;Y)、マイクロプロセッサ14(自動切替部74)は、操作対象選手を切り替える(S104)。S104においては、例えば、マイクロプロセッサ14は、ボールオブジェクト50との距離Lが最も小さい味方キャラクタオブジェクト46に、操作対象選手を切り替える。現在の操作対象選手が最も距離Lが小さい味方キャラクタオブジェクト46である場合、二番目に距離Lが小さい味方キャラクタオブジェクト46に切り替える。
マイクロプロセッサ14(判定部82)は、ユーザが所定の操作を行ったか否か又は操作対象選手が所定の動作をしたか否かの少なくとも一方を判定する(S105)。S105においては、例えば、マイクロプロセッサ14は、S104の切り替えが行われてから所定時間以内(例えば、1秒以内)にユーザの操作により切替指示操作が入力された場合に、ユーザが所定の操作を行ったと判定する。
他にも例えば、図9を参照して説明したように、切り替え後の操作対象選手の移動動作の方向に基づいて、操作対象選手が所定の動作をしたか否かが判定されるようにしてもよい。
マイクロプロセッサ14(処理実行部84)は、S105の判定結果に基づいて基準状態データに関する処理を実行する(S106)。S106においては、更新処理P1、制限処理P2、又は生成処理P3の少なくとも一つが実行される。
例えば、S106においては、更新処理P1が実行される。S105の判定結果が、ユーザが所定の操作を行った又は操作対象が所定の動作をした旨を示すものである場合、マイクロプロセッサ14(処理実行部84)は、更新処理P1を実行する。更新処理P1においては、例えば、切り替え前の操作対象の操作対象状態データSkに基づいて基準状態データD0〜D9の少なくとも一つが更新される。
例えば、S105の判定結果が、ユーザが所定の操作を行った又は操作対象が所定の動作をした旨を示すものである場合、例えば、切り替え前の操作対象の操作対象状態データSkに基づいて切り替わらないように、基準状態データDnが更新される。例えば、更新前の基準状態データD0の評価基準Aの基準値が0.5であり、操作対象状態データSkの評価基準Aの状態値が0.6であった場合、この基準値が0.5から0.4に更新される。即ち、類似度を低くさせ、同じ内容の操作対象状態データSk(つまり、評価基準Aの状態値の0.6)に基づいて操作対象選手が切り替わらないように、基準状態データDnが更新される。
なお、更新対象となる基準状態データDnは、S103において操作対象状態データSkが切替条件を満たすと判定された基準状態データDnのみであってもよい。例えば、S103において、基準状態データD4のみに基づいて切替条件が満たされると判定された場合、基準状態データD4のみが更新される。
一方、S105の判定結果が、ユーザが所定の操作を行っていない又は操作対象が所定の動作をしていない旨を示すものである場合、例えば、切り替え前の操作対象の操作対象状態データSkに近づくように基準状態データDnが更新される。
例えば、更新前の基準状態データD0の評価基準Bの基準値が0.6であり、操作対象状態データSkの評価基準Bの状態値が0.7であった場合、この基準値が0.6から0.65に更新され、操作対象状態データSk(つまり、評価基準Bの状態値の0.7)に近づくように値が更新される。この場合、類似度が高くなるため、操作対象選手が上記の操作対象状態データSkと似た状態になった場合に、操作対象選手が切り替えられやすくなる。
また例えば、S106においては、S105の判定結果が、ユーザが所定の操作を行った又は操作対象が所定の動作をした旨を示すものである場合、マイクロプロセッサ14(処理実行部84)は、制限処理P2を実行する。例えば、操作対象状態データSkが切替条件を満たすと判定された基準状態データDnのフラグを「1」から「0」に変更する。
また例えば、S105の判定結果が、ユーザが所定の操作を行っていない又は操作対象が所定の動作をしていない旨を示すものである場合、マイクロプロセッサ14(処理実行部84)は、生成処理P3を実行する。例えば、マイクロプロセッサ14は、操作対象状態データSkに基づいて新たに基準状態データDnを生成する処理を実行する。
例えば、操作対象状態データSkに対応する基準状態データD10が生成され、基準状態データ記憶部72に記憶される。また、この基準状態データD10を識別する情報とともに、フラグ「1」がフラグデータFに記憶される。
図11に戻り、操作対象選手が切替条件を満たさない場合(S103;N)、マイクロプロセッサ14は、処理を終了する。この場合、マイクロプロセッサ14は、操作対象選手の切り替えを行わない。
[1−5.実施形態1のまとめ]
以上説明した実施形態1に係るゲーム装置10は、操作対象選手を自動的に切り替えた後に、ユーザが所定の操作を行ったか否か又は操作対象選手が所定の動作を行ったか否かの判定結果に基づいて、基準状態データDnに関する処理を実行する。実施形態1におけるゲーム装置10によれば、ゲーム装置10が行った操作対象選手の切り替えがユーザの意図したものであるか否か、を今後の切り替えに反映させることができる。つまり、ユーザが意図しない操作対象の切り替えが発生しにくくなる。
即ち、ユーザが自動切替に満足した場合には、この切り替えの際の操作対象選手の状態を基準状態データDnに反映させることができる。一方、ユーザが自動切替に満足しない場合には、同じような状態の時に切り替わらないようにすることができる。つまり、ユーザの意図を反映させ、操作対象選手の自動的な切り替えを行うことができる。
なお、本発明は、以上説明した実施の形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更可能である。例えば、本実施形態では、家庭用ゲーム機を例に挙げて説明したが、ゲームセンター等に設置されるアーケード型ゲーム機であってもよい。
[1−6.実施形態1の変形例1]
また、実施形態1においては、S105において、ユーザが所定の操作を行ったか否か又は操作対象選手が所定の動作を行ったか否か、を操作対象選手が移動する方向に基づいて判定されるように説明した(図9)。この方向は、操作対象選手の位置の変化から導き出される方向であればよい。例えば、操作対象選手がスライディングする方向に基づいて上記の判定がされるようにしてもよい。
図12は、自動切替部74により操作対象選手が切り替えられた直後に表示部18に表示されるゲーム画面60の一例である。この例では、操作対象選手が、味方キャラクタオブジェクト46aから味方キャラクタオブジェクト46bに切り替えられた場合である。
例えば、スライディングはボールオブジェクト50に対してなされるのが一般的であるが、図12に示すように、現在の操作対象選手である味方キャラクタオブジェクト46bが、ボールオブジェクト50に対する方向とは異なる方向にスライディングをしている。この場合、ユーザが所定の操作を行った又は操作対象選手が所定の動作を行ったと判定される。この判定は、図9と同様に例えば、ゲームデータ記憶部70のゲーム状況データと、推定目標位置と、に基づいて実行される。
上記のような場合、ユーザは、操作対象選手が味方キャラクタオブジェクト46aであると思い込んで操作している。味方キャラクタオブジェクト46bが行ったスライディングの方向は、操作対象選手が味方キャラクタオブジェクト46aであれば、ボールオブジェクト50に向かっているので正しい方向である。
しかし、操作対象選手の切り替えがユーザの意図しないものである場合、ユーザは味方キャラクタオブジェクト46aにスライディングをさせようとして操作したものの、図12に示すように、ユーザの意図しない味方キャラクタオブジェクト46bが、スライディングをしてしまう。
このような場合に、ユーザが所定の操作を行った又は操作対象選手が所定の動作を行ったと判定される。つまり、この判定結果に基づいて基準状態データDnに関する処理が実行されることにより、ユーザが意図しない切り替えが行われにくくなる。
[1−7.実施形態1の変形例2]
また、本実施形態においては、判定部82は、自動切替部74による切り替え後の操作対象選手の位置から推定目標位置への方向(図9参照)に基づいて、ユーザが所定の操作を行ったか否か又は操作対象選手が所定の動作を行ったか否か、を判定するようにした。判定部82は、自動切替部74による切り替え前の操作対象選手の位置に基づいて同様の判定を行うようにしてもよい。
図13は、判定部82の判定方法を説明するための説明図である。図13に示す例においても、図9と同様に、操作対象選手が移動すべき推定目標位置を、ボールオブジェクト50として説明する。
例えば、切り替え前の操作対象選手である味方キャラクタオブジェクト46aからボールオブジェクト50への方向(方向V3)と、切り替え後の操作対象選手である味方キャラクタオブジェクト46bの移動方向(方向V4)と、の角度θ2が、予め定められた基準角度(例えば、20°)よりも小さい場合、判定部82は所定の操作が行われたと判定する。
切り替え前の操作対象選手が移動すべき方向に、切り替え後の操作対象選手が移動している場合、この切り替えは、ユーザの意図しないものである。即ち、ユーザは、味方キャラクタオブジェクト46aが操作対象選手であると思い込んでいるが、実際には、味方キャラクタオブジェクト46bに操作対象選手が切り替えられている。
上記の場合、判定部82は、自動切替部74による切り替え前の操作対象の位置から推定目標位置への方向との間の角度が基準角度よりも小さい方向を、自動切替部74による切り替え後の操作対象の移動方向として指示する操作が行われたか否かを判定する。
同様に、判定部82は、自動切替部74による切り替え前の操作対象の位置から推定目標位置への方向との間の角度が基準角度よりも小さい方向に、自動切替部74による切り替え後の操作対象が移動動作を行ったか否かを判定するようにしてもよい。
[1−8.その他変形例]
また、本実施形態においては、類似度に基づいて切替条件を満たすか否かが判定されるようにしたが、基準状態データDnと、操作対象状態データSkと、に基づいて切替条件を満たすか否かが判定されるようにすればよい。例えば、操作対象状態データSkの状態値が、基準状態データDnの基準値以上となる評価基準があるか否か、に基づいて切替条件を満たすか否かが判定されるようにしてもよい。
例えば、図6及び図8に示すデータ格納例の場合、少なくとも評価基準B及び評価基準Cの状態値は、それぞれ基準値以上であるので、切替条件を満たす、と判定される。このように、操作対象状態データSkの状態値と、基準状態データDnの基準値と、の大小関係に基づいて、切替条件を満たすか否かが判定されるようにしてもよい。
[2.実施形態2]
以下、実施形態2について説明する。実施形態1においては、更新処理P1、制限処理P2、又は生成処理P3の少なくとも一つが実行され、ユーザの意図が反映された基準状態データDnに基づいて、自動切替部74が操作対象選手の切り替えを実行した。
実施形態2におけるゲーム装置10は、操作対象選手の現在位置と、基準状態データDnと、を対応付けて記憶し、操作対象選手の現在位置に応じた最適な基準状態データDnに基づいて自動切替を実行する点に特徴がある。
なお、実施形態2に係るゲーム装置10のハードウェア構成や機能ブロック図は、実施形態1(図1、図5参照)と同様であるため、説明を省略する。また、実施形態2に係るゲーム装置10においても、図2と同様の仮想3次元空間40が生成されてゲームが実行される。また、後述する実施形態3〜7においても、実施形態2と同様であるため、ハードウェア構成等の説明を省略する。
実施形態2における基準状態データ記憶部72は、操作対象の現在位置に関する条件(以降、位置条件という)と、基準状態データDnと、を対応付けて記憶する。例えば、基準状態データ記憶部72は、操作対象選手の位置条件と、基準状態データDnと、を対応付けた位置条件テーブルT1を記憶する。
図14は、位置条件テーブルT1のデータ格納例を示す図である。図14に示すように、位置条件テーブルT1は、例えば、操作対象選手の位置条件と、基準状態データDnを識別する情報と、を対応付けて格納する。
操作対象選手の位置条件は、例えば、フィールドオブジェクト42のピッチの各エリアに対応する。
図15は、フィールドオブジェクト42のピッチにおけるエリアの一例を示す図である。図15に示すように、例えば、フィールドオブジェクト42のピッチが、(1)自陣ゴール前エリア(条件Aとする)、(2)相手ゴール前エリア(条件Bとする)、(3)その他エリア(条件Cとする)に分けられる。これらの3つエリアのそれぞれに対応する3次元座標が、操作対象選手の位置条件として、位置条件テーブルT1に格納される。
実施形態2における自動切替部74は、操作対象の現在位置が満たす前記条件に対応する基準状態データと、現在の操作対象の状態に関するデータと、を比較した結果に基づいて操作対象を切り替える。
例えば、自動切替部74は、操作対象選手の現在位置が満たす位置条件が格納されている位置条件テーブルT1のレコードの基準状態データDnのみを、操作対象状態データSkとの比較対象とする。即ち、ゲームデータ記憶部70のゲーム状況データに格納された操作対象選手の現在の3次元座標に対応する位置条件と同じレコードに格納された基準状態データDnに基づいて操作対象選手と切り替える。
[2−1.ゲーム装置にて実行される処理]
図16は、味方キャラクタオブジェクト46の何れかとボールオブジェクト50とが対応付けられていない場合に、ゲーム装置10において実行される処理の一例を示すフロー図である。図16の処理は、図11の処理に対応する。つまり、図16の処理は、マイクロプロセッサ14が、光ディスク25から読み出されたプログラムに従って動作することにより実行される。
図16に示すように、S201は、S101と同様であるので説明を省略する。マイクロプロセッサ14は、操作対象選手の現在位置が満たす条件に対応する基準状態データDnと、操作対象状態データSkと、を比較する(S202)。
S202においては、まず、ゲームデータ記憶部70のゲーム状況データに格納された操作対象選手の現在位置が参照される。次いで、位置条件テーブルT1の位置条件フィールドが参照され、操作対象選手の現在位置が満たす条件が格納されたレコードが抽出される。例えば、操作対象選手の現在位置を示す3次元座標が格納されたレコードが抽出される。
抽出されたレコードに示されている基準状態データDnのうちフラグが「1」の基準状態データDnのみが、操作対象状態データSkと比較される。例えば、図14に示すデータ格納例の場合、操作対象選手が自陣ゴール前エリアにいた場合(条件A)、基準状態データD0、D1、D3等のうちフラグが「1」の基準状態データDnのみが、操作対象状態データSkと比較される。
なお、S202においては、いったん全ての基準状態データDnが操作対象状態データSkと比較され、上記の抽出されたレコードが示す基準状態データDnのうちフラグが「1」の基準状態データDnの比較結果のみが、続くS203において使用されるようにしてもよい。
S203〜S206は、それぞれS103〜S106と同様であるので、説明を省略する。なお、S206において更新処理P1が実行される際には、S202において比較に使用された基準状態データDnのみが更新される。同様に、制限処理P2が実行される際においても、S202において比較に使用された基準状態データDnのみが制限される。
S206において生成処理P3が実行される際には、新たに生成された基準状態データDnを識別する情報が、切り替え前の操作対象選手の現在位置が満たす条件と対応付けられて、位置条件テーブルT1に記憶される。
[2−2.実施形態2のまとめ]
以上説明した実施形態2に係るゲーム装置10は、操作対象選手の現在位置が満たす条件に対応する基準状態データDnに基づいて操作対象選手を切り替える。実施形態2におけるゲーム装置10によれば、操作対象選手の現在位置に応じた最適な切り替えを実行することができる。
例えば、操作対象選手の現在位置が自陣ゴール前であれば、ディフェンスをする味方キャラクタオブジェクト46をこまめに切り替えるために、基準状態データDnの基準値を低く設定させる等することができる。一方、操作対象選手の現在位置が相手ゴール前エリアであって失点の危険性が少ない場合等は、こまめに操作対象選手を切り替える必要がないので、基準状態データDnの基準値を高く設定させる等することができる。
[3.実施形態3]
以下、実施形態3について説明する。実施形態1及び2においては、操作対象選手を切り替えた後に、ユーザが所定の操作を行ったか否か又は操作対象選手が所定の動作を行ったか否かの判定結果に基づいて、基準状態データDnに関する処理が実行された。
実施形態3におけるゲーム装置10は、ユーザの操作により、操作対象選手の切替指示操作が入力されると、切り替え前の操作対象状態データSkに基づいて基準状態データDnに関する処理を実行する点に特徴がある。即ち、ユーザにより切替指示操作が入力される度に、基準状態データDnに関する処理が実行される。
実施形態3における処理実行部84は、切替指示操作が行われたか否かを判定する手段を含み、切替指示操作が行われた場合、手動切替部78による切り替え前の操作対象の状態に基づいて基準状態データDnを更新する処理(更新処理P1)、又は、手動切替部78による切り替え前の操作対象の状態に基づいて新たに基準状態データDnを生成する処理(生成処理P3)、の少なくとも一つを実行する。
[3−1.ゲーム装置にて実行される処理]
図17は、ゲーム装置10において実行される処理の一例を示すフロー図である。つまり、図17の処理は、マイクロプロセッサ14が、光ディスク25から読み出されたプログラムに従って動作することにより実行される。
図17に示すように、まず、マイクロプロセッサ14(処理実行部84)は、ユーザの操作により切替指示操作が行われたか否かを判別する(S301)。切替指示操作が行われない場合(S301;N)、マイクロプロセッサ14は、処理を終了する。
切替指示操作が行われた場合(S301;Y)、マイクロプロセッサ14は、切り替え前の操作対象選手の状態に関するデータを算出する(S302)。即ち、マイクロプロセッサ14は、ゲームデータ記憶部70のゲーム状況データに基づいて、現在の操作対象選手の状態を示す操作対象状態データSkを算出し、主記憶26に記憶する。
次いで、マイクロプロセッサ14は、操作対象選手を切り替える(S303)。S303は、S104と同様である。
マイクロプロセッサ14(処理実行部84)は、基準状態データDnに関する処理を実行する(S304)。S304においては、S302で算出された操作対象状態データSkに基づいて、更新処理P1又は生成処理P3の少なくとも一方が実行される。更新処理P1及び生成処理P3の処理内容は、S106と同様である。
即ち、更新処理P1が実行されると、S302において算出された操作対象状態データSkに基づいて基準状態データDnが更新される。例えば、この操作対象状態データSkとの類似度が所定値以上である基準状態データDnが更新される。
一方、生成処理P3が実行されると、S302において算出された操作対象状態データSkに基づいて新たな基準状態データDnが生成されて基準状態データ記憶部72に記憶される。この新たな基準状態データDnを識別する情報が、フラグ「1」と対応付けられてフラグデータFに格納される。
[3−2.実施形態3のまとめ]
以上説明した実施形態3に係るゲーム装置10は、ユーザにより切替指示操作が入力されると、切り替え前の操作対象状態データSkに基づいて、基準状態データDnに関する処理を実行する。実施形態3におけるゲーム装置10によれば、ユーザが操作対象を切り替えたいと感じる場面の操作対象状態データSkを、ゲーム装置10の自動的な切り替えに反映させることができる。つまり、ユーザの意図をゲーム装置10の自動的な切り替えに反映させることができる。
なお、実施形態2と実施形態3を組み合わせてもよい。即ち、ユーザにより切替指示操作が入力された場合、操作対象選手の現在位置と、操作対象状態データSkと、に基づいて、基準状態データDnに関する処理が実行されるようにしてもよい。
この場合、更新処理P1が実行されると、例えば、操作対象選手の現在位置が満たす条件に対応する基準状態データDnのうち、類似度が所定値以上の基準状態データDnのみが更新される。また例えば、生成処理P3により生成された新たな基準状態データDnと、切り替え前の操作対象選手の位置に関する条件と、が対応付けられて位置条件テーブルT1に格納される。つまり、ユーザにより切替指示操作が入力された際の操作対象選手の現在位置と、ユーザの意図と、の両者をゲーム装置10の自動的な切り替えに反映させることができる。
[4.実施形態4]
以下、実施形態4について説明する。実施形態1〜3においては、自動切替部74は、一体の味方キャラクタオブジェクト46を操作対象選手として切り替える。
実施形態4においては、自動切替部74による切り替え直後は、複数の味方キャラクタオブジェクト46を仮の操作対象選手とする点に特徴がある。仮の操作対象選手は、操作対象選手と同様に、ユーザの操作に基づいて動作する。
ユーザ操作又は仮の操作対象選手の動作に基づいて、これらの複数の仮の操作対象選手のうちで、操作対象選手が決定される。即ち、切り替え直後に操作対象となる味方キャラクタオブジェクト46を一時的に複数体とし、ユーザが操作対象だと思っていると推測される操作対象選手が絞り込まれる。
図18は、仮の操作対象選手を説明するためのゲーム画面60を示す図である。図18では、操作対象選手が味方キャラクタオブジェクト46aである状態で自動切替が行われたことによって、仮の操作対象選手が、味方キャラクタオブジェクト46bと味方キャラクタオブジェクト46cの2体に設定された場合の例を示す。
図18に示すように、味方キャラクタオブジェクト46bと味方キャラクタオブジェクト46cの2体の頭上にカーソル62が表示され、これら2体は、一定時間ユーザの操作に供される。なお、図18に示す矢印は、味方キャラクタオブジェクト46b及び味方キャラクタオブジェクト46cの移動方向を示す。
マイクロプロセッサ14は、例えば、この2体の仮の操作対象選手の移動方向等に基づいて、2体の仮の味方キャラクタオブジェクト46のうちの何れかを、操作対象選手に決定する。例えば、この2体の仮の操作対象選手のうち、ボールオブジェクト50に向かっている方(味方キャラクタオブジェクト46b)を、操作対象選手に決定する。
図18の例では、味方キャラクタオブジェクト46cは、ボールオブジェクト50から遠ざかる向きに移動しているため、操作対象選手に決定されない。一方、味方キャラクタオブジェクト46bは、ボールオブジェクト50に対して移動しているため、操作対象選手に絞り込まれる。即ち、味方キャラクタオブジェクト46bが、ユーザが操作したいと意図する選手と判断される。
例えば、仮の操作対象選手の位置及びボールオブジェクト50(又はボールオブジェクト50を保持する敵キャラクタオブジェクト48a)の位置を結ぶ方向と、仮の操作対象選手の移動方向と、の角度に基づいて、ボールオブジェクト50(又はボールオブジェクト50を保持する敵キャラクタオブジェクト48a)に向かっている仮の操作対象選手を特定する。つまり、この角度が小さい方の仮の操作対象選手が、ユーザが操作していると推測され、操作対象選手として絞り込まれる。
なお、複数の仮の操作対象選手から、1体の操作対象選手を決定する方法は、ユーザの仮の操作対象選手に対する操作又は仮の操作対象選手の動作に基づいて判定されればよく、操作対象選手の決定方法は、上記の例に限られない。例えば、複数の味方キャラクタオブジェクト46がスライディングした方向に基づいて判定されるようにしてもよい。即ち、ボールオブジェクト50に対してスライディングをしている仮の操作対象選手が、操作対象選手として絞り込まれるようにしてもよい。
実施形態4における自動切替部74は、操作対象の切り替えを行う場合、複数のゲームキャラクタのうちの複数を仮の操作対象に設定する設定手段を含む。上記のように、仮の操作対象は、ユーザの操作に従って動作する。自動切替部74は、設定手段による設定後に行われたユーザの操作又は仮の操作対象の動作に基づいて、仮の操作対象の何れかを操作対象に決定する決定手段を更に含む。
[4−1.ゲーム装置にて実行される処理]
図19は、味方キャラクタオブジェクト46の何れかとボールオブジェクト50とが対応付けられていない場合に、ゲーム装置10において実行される処理の一例を示すフロー図である。図19の処理は、図11の処理に対応する。つまり、図19の処理は、マイクロプロセッサ14が、光ディスク25から読み出されたプログラムに従って動作することにより実行される。
図19に示すように、S401〜S403は、それぞれS101〜S103と同様であるので説明を省略する。
マイクロプロセッサ14(自動切替部74)は、仮の操作対象選手を設定する(S404)。S404においては、例えば、ボールオブジェクト50に近い順に2体の味方キャラクタオブジェクト46を、仮の操作対象選手として設定する。なお、仮の操作対象選手には、現在の操作対象選手が含まれるようにしてもよい。
S404において設定された仮の操作対象選手は、ユーザの操作によって動作する。例えば、仮の操作対象選手は、コントローラ32の十字キー等からの入力に従った方向に移動したり、スライディングをしたりする。つまり、上記の例の場合、2体の仮の操作対象選手は、それぞれ同じ動作を行う。なお、S404において設定される仮の操作対象選手の数は任意であってよい。
マイクロプロセッサ14は、仮の操作対象が設定された後に行われたユーザの操作又は仮の操作対象選手の動作に基づいて、仮の操作対象選手の何れかを操作対象選手に決定する(S405)。S405においては、先述のように、ゲームデータ記憶部70のゲーム状況データや、コントローラ32からの入力に基づいて決定されればよい。
S406とS407は、それぞれS105とS106と同様なので説明を省略する。
[4−2.実施形態4のまとめ]
以上説明した実施形態4に係るゲーム装置10は、操作対象選手の自動的な切り替えを行う場合に、複数の味方キャラクタオブジェクト46を仮の操作対象選手として設定する。実施形態4におけるゲーム装置10によれば、これらの仮の操作対象選手の中から最適なものを操作対象選手として絞り込むことができる。即ち、ユーザの操作等に基づいて操作対象を絞り込むことができるので、ユーザの意図しない切り替えが行われた際の影響を最小限に抑えることができる。
なお、実施形態4と、実施形態1〜3のうちの任意の実施形態と、を組み合わせてもよい。例えば、実施形態2のように位置条件に対応付けられた基準状態データDnに基づいて自動的な切り替えを行う場合に、仮の操作対象選手を設定させるようにしてもよい。同様に、実施形態3のように切替指示操作が入力される度に、基準状態データDnに関する処理が実行され、ユーザの意図が反映された基準状態データDnに基づいて自動的な切り替えを行う場合に、仮の操作対象選手を設定させるようにしてもよい。
[5.実施形態5]
以下、実施形態5について説明する。実施形態1〜3においては、自動切替部74による切り替え先の操作対象選手を、ボールオブジェクト50に近い味方キャラクタオブジェクト46として説明した。実施形態4では、ボールオブジェクト50に近い順に仮の操作対象選手を設定して、操作対象選手を絞り込む例を挙げて説明した。
実施形態5は、自動切替部74による切り替え先の操作対象選手を決定する際に、現在の操作対象選手以外の味方キャラクタオブジェクト46の状態を考慮する点に特徴がある。つまり、操作対象となっていない味方キャラクタオブジェクト46の中から、切り替え先として最適な味方キャラクタオブジェクト46を選別して操作対象選手とする。
実施形態5では、基準状態データ記憶部72は、操作対象の基準状態に関する第1の基準状態データ(基準状態データDn)と、複数のゲームキャラクタ(味方キャラクタオブジェクト46)のうちで操作対象以外のゲームキャラクタの基準状態に関する第2の基準状態データ(以降、基準状態データNm。Nmの「m」は、正整数である。)と、を記憶する。
図20は、基準状態データNm(第2の基準状態データ)のデータ格納例を示す図である。図20に示すように、基準状態データNmは、基準状態データDnと同様のデータ形式である。つまり、基準状態データNmは、例えば、評価基準と、基準値と、を含む。基準状態データNmには、切り替え先の味方キャラクタオブジェクト46を決定する際に考慮される、距離Lや角度R等に関する基準値が格納される。
基準状態データNmの評価基準は、基準状態データDnの評価基準と同様である。基準状態データNmの基準値は、評価基準に対応する値である点で基準状態データDnの基準値と同様である。基準状態データNmの基準値は、操作対象選手以外の味方キャラクタオブジェクト46の状態に関するデータと比較される。つまり、切り替え先として最適な味方キャラクタオブジェクト46が、この比較結果に基づいて決定される。
切り替え先の味方キャラクタオブジェクト46が決定される際には、例えば、基準状態データNmに格納される評価基準に対応する項目が考慮され、切り替え先としてふさわしい味方キャラクタオブジェクト46が決定される。例えば、ボールオブジェクト50に近い味方キャラクタオブジェクト46や、ボールオブジェクト50への方向と移動方向との角度が小さい味方キャラクタオブジェクト46が切り替え先として決定される。
他にも例えば、評価基準が味方キャラクタオブジェクト46の疲労度(他にも、残り体力を示すパラメータ)を示す場合、味方キャラクタオブジェクト46のうちで疲労度の少ない(残り体力の多い)味方キャラクタオブジェクト46が優先的に切り替え先として決定される。また、基準状態データNmの評価基準は、味方キャラクタオブジェクト46の脚力や走力を示す能力パラメータであってもよい。この場合、例えば、得点をあげる能力が高い味方キャラクタオブジェクト46や、すばやく動ける味方キャラクタオブジェクト46が、優先的に切り替え先として決定される。
なお、基準状態データNmに含まれる評価基準の数は、基準状態データDnの評価基準の数よりも多くてもよいし少なくてもよい。
図21は、実施形態5における基準状態データ記憶部72の記憶内容の説明図である。図21に示すように、基準状態データ記憶部72には、一又は複数の基準状態データDnと、一又は複数の基準状態データNmと、が記憶される。基準状態データN0は、例えば、基準状態データD0と同様に、予めゲーム作成者が用意したマスタデータである。基準状態データN1〜Nmは、例えば、基準状態データD1〜Dnと同様に、後述する生成処理P6により新たに追加されたデータである。
実施形態5においては、実施形態1〜4と同様に、基準状態データDnは、自動切替部74が、現在の操作対象選手を切り替えるか否かを判定するために使用される。一方、基準状態データNmは、自動切替部74が、切り替え先の味方キャラクタオブジェクト46を決定するために使用される。
実施形態5における自動切替部74は、第2の基準状態データと、複数のゲームキャラクタのうちで操作対象以外のゲームキャラクタの状態に関するデータ(操作対象状態データSk)と、を比較した結果に基づいて操作対象の切り替え先のゲームキャラクタを決定する切替先決定手段と、第1の基準状態データと、操作対象の現在の状態に関するデータと、を比較した結果に基づいて操作対象を切替先決定手段により決定されたゲームキャラクタに切り替える自動切替実行手段と、を含む。
また、基準状態データNmを使用する/しないを示すフラグが対応付けられてメモリカード28等に記憶される。このフラグのデータ形式は、フラグデータF(図10)と同様であるので、図示を省略する。つまり、自動切替部74が切り替え先の味方キャラクタオブジェクト46を決定する際に使用される基準状態データNmはフラグが「1」となり、使用されない基準状態データNmはフラグが「0」となる。
また、処理実行部84は、自動切替部74による切り替え前の操作対象の状態に基づいて第1基準状態データを更新する処理(更新処理P1)、第1基準状態データに基づく自動切替部74による切り替えを制限する処理(制限処理P2)、又は、自動切替部74による切り替え前の操作対象の状態に基づいて新たに第1基準状態データを生成する処理(生成処理P3)、の少なくとも一つを判定部82の判定結果に基づいて実行する第1実行手段と、切替先決定手段により決定されたゲームキャラクタの切り替え時の状態に基づいて第2基準状態データを更新する処理(更新処理P4)、第2基準状態データに基づく切替先決定手段による決定を制限する処理(制限処理P5)、又は、切替先決定手段により決定されたゲームキャラクタの切り替え時の状態に基づいて新たに第2基準状態データを生成する処理(生成処理P6)、の少なくとも一つを判定部82の判定結果に基づいて実行する第2実行手段と、を含む。
更新処理P4による基準状態データNmの更新方法は、更新処理P1による基準状態データDnの更新方法と同様である。更新処理P1では、切り替え前の操作対象選手の状態に基づいて基準状態データDnが更新される。一方、更新処理P4では、切り替え先として決定された味方キャラクタオブジェクト46の状態に基づいて基準状態データNmが更新される。
制限処理P5による切り替え先の決定の制限方法は、制限処理P2の制限方法と同様である。制限処理P2では、基準状態データDnに基づく自動切り替えが制限される。一方、制限処理P5では、基準状態データNmに基づく切り替え先の決定が制限される。即ち、制限処理P5では、例えば、基準状態データNmに対応するフラグに基づいて、切り替え先の決定をする際の基準状態データNmの使用が制限される。
生成処理P6による基準状態データNmの生成方法は、生成処理P3による基準状態データDnの生成方法と同様である。生成処理P3では、切り替え前の操作対象選手の状態に基づいて基準状態データDnが生成される。生成処理P6では、切り替え先として決定された味方キャラクタオブジェクト46の状態に基づいて基準状態データNmが生成される。即ち、生成処理P6では、例えば、切り替え先として決定された味方キャラクタオブジェクト46の状態が、そのまま基準状態データNmとして記憶される。
[5−1.ゲーム装置にて実行される処理]
図22は、味方キャラクタオブジェクト46の何れかとボールオブジェクト50とが対応付けられていない場合に、ゲーム装置10において実行される処理の一例を示すフロー図である。図22の処理は、図11の処理に対応する。つまり、図22の処理は、マイクロプロセッサ14が、光ディスク25から読み出されたプログラムに従って動作することにより実行される。
図22に示すように、S501〜S503は、それぞれS101〜S103と同様であるので説明を省略する。
マイクロプロセッサ14は、操作対象選手以外の味方キャラクタオブジェクト46の状態に関するデータ(以降、候補対象状態データKpとする。Kpの「p」は自然数である。)を算出する(S504)。候補対象状態データKpのデータ形式及び算出方法は、操作対象状態データSk(図8)と同様であるので、説明を省略する。
S504においては、例えば、操作対象選手以外の10体の味方キャラクタオブジェクト46に対応する候補対象状態データKpが算出され、それぞれが主記憶26に記憶される。なお、S504においては、予め定められた味方キャラクタオブジェクト46(例えば、ユーザにより予め選択された5体の味方キャラクタオブジェクト46等)のみ、候補対象状態データKpが算出されるようにしてもよい。
マイクロプロセッサ14は、候補対象状態データKpに基づいて、切り替え先の味方キャラクタオブジェクト46を決定する(S505)。S505においては、例えば、基準状態データNmとの類似度が最も高い候補対象状態データKpに対応する味方キャラクタオブジェクト46に決定される。類似度の算出方法は、S102と同様である。即ち、基準状態データNmの基準値と、候補対象状態データKpの状態値と、の内積値に基づいて類似度が算出される。
S505において、マイクロプロセッサ14は、例えば、現在の操作対象選手以外の10体の味方キャラクタオブジェクト46についての類似度を算出し、この中から最も類似度が高い味方キャラクタオブジェクト46を特定する。
なお、S505における切り替え先の味方キャラクタオブジェクト46の決定方法は、上記に限られない。他にも、状態値が基準値以上である評価基準を最も多く含む候補対象状態データKpに対応する味方キャラクタオブジェクト46を、切り替え先の味方キャラクタオブジェクト46として決定されるようにしてもよい。
S506〜S508は、それぞれS104〜S106と同様であるので説明を省略する。
マイクロプロセッサ14は、基準状態データNmに関する処理を実行する(S509)。S509においては、更新処理P4、制限処理P5、又は生成処理P6の少なくとも一つが実行される。
例えば、S509においては、更新処理P4が実行される。例えば、S507の判定結果が、ユーザが所定の操作を行った又は操作対象が所定の動作をした旨を示すものである場合、切り替え先として決定された味方キャラクタオブジェクト46に対応する候補対象状態データKpに基づいて切り替え先が決定されないように、基準状態データNmが更新される。例えば、更新前の基準状態データN0の評価基準Aの基準値が0.4であり、候補対象状態データKpの状態値が0.5であった場合、この基準値が0.4から0.35に更新される。即ち、類似度を下げ、同じ内容の候補対象状態データKp(つまり、評価基準Aの状態値の0.5)に基づいて切り替え先が決定されないように、基準状態データNmが更新される。
一方、例えば、S507の判定結果が、ユーザが所定の操作を行っていない又は操作対象が所定の動作をしていない旨を示すものである場合、切り替え先として決定された味方キャラクタオブジェクト46に対応する候補対象状態データKpに近づくように、基準状態データNmが更新される。
例えば、更新前の基準状態データN0の評価基準Bの基準値が0.6であり、候補対象状態データKpの状態値が0.8であった場合、この基準値が0.6から0.7に更新される。この場合、上記の候補対象状態データKpと似た内容の候補対象状態データKpに対応する味方キャラクタオブジェクト46が切り替え先として決定されやすくなる。
また例えば、S509においては、制限処理P5が実行される。例えば、S507の判定結果が、ユーザが所定の操作を行った又は操作対象が所定の動作をした旨を示すものである場合、例えば、切り替え先として決定された味方キャラクタオブジェクト46の候補対象状態データKpとの類似度が高い基準状態データNmのフラグを「1」から「0」に変更する。
例えば、この候補対象状態データKpとの類似度が所定値(例えば、0.8等)以上である基準状態データNmのフラグを「1」から「0」に変更される。即ち、上記の場合、切り替え先の味方キャラクタオブジェクト46が、ユーザの意図しないものであったので、この味方キャラクタオブジェクト46に切り替わらないようになる。
また例えば、S509においては、生成処理が実行される。例えば、S507の判定結果が、ユーザが所定の操作を行っていない又は操作対象が所定の動作をしていない旨を示すものである場合、切り替え先として決定された味方キャラクタオブジェクト46の候補対象状態データKpがそのまま新たな基準状態データNmとして記憶される。
即ち、上記の場合、切り替え先の味方キャラクタオブジェクト46が、ユーザの意図するものであったので、この味方キャラクタオブジェクト46に対応する候補対象状態データKpを新たに基準状態データNmとし、今後、同じ内容の候補対象状態データKpとなる味方キャラクタオブジェクト46があった場合に、この味方キャラクタオブジェクト46が切り替え先として決定される。
[5−2.実施形態5のまとめ]
以上説明した実施形態5に係るゲーム装置10は、切り替え先の味方キャラクタオブジェクト46を、候補対象状態データKpと、基準状態データNmと、に基づいて決定し、基準状態データNmに関する処理が実行される。実施形態5におけるゲーム装置10によれば、最適な味方キャラクタオブジェクト46に操作対象選手を切り替えることができる。即ち、ゲーム装置10は、ユーザの意図を反映し、切り替え先の操作対象選手をどの味方キャラクタオブジェクト46にするかを決定することができる。
なお、実施形態5と、実施形態1〜4のうちの任意の実施形態と、を組み合わせてもよい。つまり、実施形態1〜4のように、基準状態データDnに関する処理が実行され、ユーザの意図が反映された基準状態データDnに基づいて自動的な切り替えを行う際に、切り替え先の味方キャラクタオブジェクト46を実施形態5のように決定することも可能である。
[6.実施形態6]
実施形態5においては、操作対象選手以外の味方キャラクタオブジェクト46の状態を示す候補対象状態データKpと、基準状態データNmと、に基づいて切り替え先をユーザの意図する味方キャラクタオブジェクト46に決定する例を挙げて説明した。
実施形態6は、現在のゲームの状況に関する条件と、基準状態データNmと、が対応付けられる点に特徴がある。つまり、現在のゲームの状況に応じた基準状態データNmを用いて、切り替え先の味方キャラクタオブジェクト46を決定することができる。
実施形態6の基準状態データ記憶部72は、ゲームの状況に関する条件(以降、単にゲーム状況条件)と、第2の基準状態データ(基準状態データNm)と、を対応付けて記憶する。例えば、ゲーム状況条件テーブルT2に、ゲーム状況条件と、基準状態データNmと、を対応付けて記憶する。
図23は、ゲーム状況条件テーブルT2のデータ格納例である。図23に示すように、ゲーム状況条件テーブルT2は、ゲーム状況条件と、基準状態データNmを識別する情報と、を対応付ける。ゲーム状況条件は、ゲームデータ記憶部70のゲーム状況データに関する値の条件が格納される。例えば、ゲーム状況条件は、現在の操作対象選手の位置条件等である。
自動切替部74の切替先決定手段は、ゲームの現在の状況が満たす条件に対応する第2の基準状態データと、複数のゲームキャラクタ(味方キャラクタオブジェクト46)のうちで操作対象以外のゲームキャラクタの状態に関するデータ(候補対象状態データKp)と、を比較した結果に基づいて切り替え先のゲームキャラクタを決定する。
例えば、自動切替部74の切替先決定手段は、実行中のゲームの現在の状況が満たす条件が格納されているゲーム状況条件テーブルT2のレコードの基準状態データNmのみを比較対象とする。即ち、この比較対象の基準状態データNmとの比較結果に基づいて切り替え先の味方キャラクタオブジェクト46を決定する。
例えば、ゲーム状況条件が位置条件である場合、操作対象選手以外の味方キャラクタオブジェクト46の現在位置が満たすゲーム状況条件に対応する基準状態データNmが、この味方キャラクタオブジェクト46の候補対象状態データKpとの比較対象となる。即ち、敵ゴールエリア前に位置する味方キャラクタオブジェクト46は、敵ゴールエリア前の位置条件に対応付けられた基準状態データNmのみが比較対象となる。
なお、ゲーム状況条件は、ゲーム状況データに基づいて判断されるゲーム状況の条件であればよい。他にも例えば、ゲーム状況条件として、サッカーゲームの得点差に関する条件や試合の残り時間に関する条件等と、基準状態データNmと、を対応付けるようにしてもよい。
[6−1.ゲーム装置にて実行される処理]
図24は、味方キャラクタオブジェクト46の何れかとボールオブジェクト50とが対応付けられていない場合に、ゲーム装置10においてに実行される処理の一例を示すフロー図である。図24の処理は、図11の処理に対応する。つまり、図24の処理は、マイクロプロセッサ14が、光ディスク25から読み出されたプログラムに従って動作することにより実行される。
図24に示すように、S601〜S604は、それぞれS501〜S504と同様であるので説明を省略する。
マイクロプロセッサ14は、ゲームの現在の状況が満たすゲーム状況条件に対応する基準状態データNmに基づいて、切り替え先の味方キャラクタオブジェクト46を決定する(S605)。S605においては、ゲームデータ記憶部70のゲーム状況データが参照され、ゲームの現在の状況が満たすゲーム状況条件が格納されたゲーム状況条件テーブルT2のレコードに含まれる基準状態データNmのみを比較対象とする。
S606〜S608は、それぞれS506〜S508と同様であるので説明を省略する。
S609は、S509と同様である。S609においては、S605において比較対象となった基準状態データNmのみを対象として、基準状態データNmに関する処理が行われる。つまり、ゲームの現在の状況が満たすゲーム状況条件に対応する基準状態データNmのみ、更新処理P4又は制限処理P5が行われる。生成処理P6が行われる際には、ゲームの現在の状況が満たすゲーム状況条件と、生成された基準状態データNmと、が対応付けられて記憶される。
[6−2.実施形態6のまとめ]
以上説明した実施形態6に係るゲーム装置10は、ゲーム状況条件と、基準状態データNmと、を対応付けて記憶し、現在のゲームの状況に応じた最適な基準状態データNmに基づいて切り替え先の味方キャラクタオブジェクト46を決定することが可能になる。また、基準状態データNmに関する処理が実行されるので、切り替え先の味方キャラクタオブジェクト46を決定する際に、ゲームの状況に応じて、より細かくユーザの意図を反映させることができる。
即ち、例えば、実行中のゲームの得点差の少なくディフェンスが重要である状況の場合には、他の状況よりも距離Lの基準値が小さな基準状態データNmを対応付けることにより、ボールオブジェクト50に近い味方キャラクタオブジェクト46を切り替え先として決定させることができる。
[6−3.実施形態6の変形例]
なお、実施形態6においては、ゲーム状況条件と、基準状態データNmと、が対応付けられるようにしたが、基準状態データDnと、基準状態データNmと、が対応付けられるようにしてもよい。この場合、基準状態データ記憶部72は、第1の基準状態データ(基準状態データDn)と、第2の基準状態データ(基準状態データNm)と、を対応付けて記憶する。
図25は、変形例における基準状態対応テーブルT3のデータ格納例である。図23に示すように、基準状態対応テーブルT3は、基準状態データDnを識別する情報と、基準状態データNmを識別する情報と、を対応付ける。
本変形例の自動切替部74の切替先決定手段は、自動切替実行手段が比較する第1の基準状態データに対応する第2の基準状態データと、複数のゲームキャラクタのうちで操作対象以外のゲームキャラクタの状態に関するデータ(候補対象状態データKp)と、を比較した結果に基づいて切り替え先のゲームキャラクタを決定する。
例えば、自動切替部74の切替先決定手段は、自動切替実行手段が比較する基準状態データDnを識別する情報が格納されているゲーム状況条件テーブルT2のレコードに含まれる基準状態データNmのみを比較対象とする。即ち、この比較対象の基準状態データNmと、候補対象状態データKpと、の比較結果に基づいて切り替え先の味方キャラクタオブジェクト46を決定する。
本変形例におけるゲーム装置10によれば、基準状態データDnに応じて切り替え先の味方キャラクタオブジェクト46を決定することができる。例えば、評価基準が距離Lの場合、この基準値が高い基準状態データDnは、操作対象選手がボールオブジェクト50から比較的離れている場合に自動的に操作対象選手を切り替えることを示す。この基準状態データDnに対応付けて、距離Lの基準値が低い基準状態データNmを対応付けることにより、ボールオブジェクト50に近い味方キャラクタオブジェクト46を切り替え先として決定することができる。
[7.実施形態7]
実施形態5及び6は、ゲーム装置10により操作対象選手が自動的に切り替えられた後に、基準状態データNmに関する処理が実行される例を挙げて説明した。実施形態7は、ユーザによって切替指示操作が入力された場合に、基準状態データNmに関する処理を実行する点に特徴がある。
実施形態7においては、ユーザが操作部76を介して切替指示操作を行う際に、ユーザの操作により切り替え先の味方キャラクタオブジェクト46が選択される。手動切替部78は、操作部76により切替指示操作が入力されると、ユーザにより選択された味方キャラクタオブジェクト46に操作対象を切り替える。先述のように、例えば、コントローラ32の所定のボタンが押下された回数に基づいて、切り替え先の味方キャラクタオブジェクト46が選択される。
処理実行部84の第2実行手段は、切替指示操作が行われたか否かを判定する手段と、ユーザにより選択されたゲームキャラクタ(味方キャラクタオブジェクト46)を判別する手段と、を含み、手動切替部78により操作対象が切り替えられる場合、ユーザにより操作対象の切り替え先として選択されたゲームキャラクタの状態に基づいて第2基準状態データ(基準状態データNm)を更新する処理(更新処理P4)、又は、ユーザにより操作対象の切り替え先として選択されたゲームキャラクタの状態に基づいて新たに第2基準状態データを生成する処理(生成処理P6)、の少なくとも一つを実行することを特徴とする。
[7−1.ゲーム装置にて実行される処理]
図26は、ゲーム装置10において実行される処理の一例を示すフロー図である。つまり、図26の処理は、マイクロプロセッサ14が、光ディスク25から読み出されたプログラムに従って動作することにより実行される。
図26に示すように、S701は、S303と同様であるので説明を省略する。
マイクロプロセッサ14は、ユーザの切替指示操作により操作対象選手として選択された味方キャラクタオブジェクト46の状態に関するデータを算出する(S702)。S702の算出方法は、S302と同様である。
マイクロプロセッサ14は、操作対象選手として選択された味方キャラクタオブジェクト46に操作対象選手を切り替える(S703)。マイクロプロセッサ14は、基準状態データNmに関する処理を実行する(S704)。S704においては、更新処理P4又は生成処理P6の少なくとも一方が実行される。更新処理P4と生成処理P6のそれぞれは、S509において実行される処理と同様である。
[7−2.実施形態7のまとめ]
以上説明した実施形態7に係るゲーム装置10は、ユーザにより切替指示操作が入力されると、基準状態データNmに関する処理を実行する。実施形態7におけるゲーム装置10によれば、ユーザが切替指示操作をした際に操作対象選手として選択された味方キャラクタオブジェクト46の状態を、基準状態データNmに反映させることができる。つまり、ユーザの意図を、切り替え先の味方キャラクタオブジェクト46の決定に反映させることができる。
なお、実施形態7と実施形態6とを組み合わせてもよい。つまり、ユーザにより切替指示操作が入力された場合に選択された味方キャラクタオブジェクト46の状態を、切り替え指示操作が入力された場合のゲーム状況条件に対応付けて基準状態データNmに反映させることもできる。
[その他の変形例]
ゲーム装置10で実行されるゲームは、2つの座標要素によって構成される2次元ゲーム空間をゲーム画面に表示するゲームであってもよい。
また、ゲーム装置10で実行されるゲームはサッカーゲーム以外のスポーツゲームであってもよい。例えば、ボール(移動物体)を用いて行われるバスケットボール、アメリカンフットボールのゲームや、パック(移動物体)を用いて行われるアイスホッケーのゲームにも本発明は適用することができる。
また、本発明はスポーツゲーム以外のゲーム(アクションゲームなど)にも適用することができる。本発明は、複数のゲームキャラクタのうちでユーザの操作対象が切り替わるゲームに本発明は適用することができる。