ゲーム装置、ゲーム装置の制御方法、及びプログラム
【課題】ユーザが操作するユーザキャラクタグループと、敵キャラクタグループと、の間で行われるゲームにおいて、味方選手キャラクタにパスをつなげることができるようにユーザを支援することが可能なゲーム装置を提供すること。
【解決手段】設定部(62)は、移動物体を保持しているキャラクタの周辺領域内の複数の位置を、他のキャラクタがパスを受け取るための受取位置候補として設定する。受取位置選出部(64)は、受取位置候補のうちの少なくとも一つを、敵キャラクタグループに所属するキャラクタの位置に基づいて選出する。キャラクタ選出部(66)は、ユーザキャラクタグループに所属する、移動物体を保持しているキャラクタ以外のキャラクタのうちから、受取位置候補に対応するキャラクタを選出する。キャラクタ制御部(68)は、選出された受取位置候補に基づく位置に向けて、該受取位置候補に対応するキャラクタを移動させる。
【解決手段】設定部(62)は、移動物体を保持しているキャラクタの周辺領域内の複数の位置を、他のキャラクタがパスを受け取るための受取位置候補として設定する。受取位置選出部(64)は、受取位置候補のうちの少なくとも一つを、敵キャラクタグループに所属するキャラクタの位置に基づいて選出する。キャラクタ選出部(66)は、ユーザキャラクタグループに所属する、移動物体を保持しているキャラクタ以外のキャラクタのうちから、受取位置候補に対応するキャラクタを選出する。キャラクタ制御部(68)は、選出された受取位置候補に基づく位置に向けて、該受取位置候補に対応するキャラクタを移動させる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明はゲーム装置、ゲーム装置の制御方法、及びプログラムに関する。
【背景技術】
【0002】
移動物体(例えばボール又はパック等)を用いて行われる競技が、ユーザが操作するユーザキャラクタグループと、敵キャラクタグループと、の間で行われるゲームが知られている。例えば、サッカーゲームが知られている。例えば、サッカーゲームの場合、ユーザは、自チームに所属する選手キャラクタのうちの、ボールを保持している選手キャラクタを操作し、味方選手キャラクタとの間でパスを行いながら、敵チームのゴール内にボールを入れることを目指す。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2010−035828号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
例えば、上記のようなサッカーゲームでは、味方選手キャラクタにパスをつなげることがユーザにとって困難である場合がある。特に、熟練度が低いユーザは、ボールを保持している選手キャラクタの周辺に、フリーな状態にある味方選手キャラクタ(すなわち、敵選手キャラクタが付近に位置していないような味方選手キャラクタ)が存在していなければ、味方選手キャラクタにパスをつなげることができないことが多い。
【0005】
本発明は上記課題に鑑みてなされたものであって、その目的は、移動物体を用いて行われる競技が、ユーザが操作するユーザキャラクタグループと、敵キャラクタグループと、の間で行われるゲームにおいて、味方選手キャラクタにパスをつなげることができるようにユーザを支援することが可能なゲーム装置、ゲーム装置の制御方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本発明に係るゲーム装置は、移動物体を用いて行われる競技が、ユーザによって操作されるユーザキャラクタグループと、敵キャラクタグループと、の間で行われるゲームを実行するゲーム装置において、前記ユーザキャラクタグループに所属する複数のキャラクタの各々の位置と、前記敵キャラクタグループに所属する複数のキャラクタの各々の位置と、に関する位置データを記憶する記憶手段に記憶される位置データを取得する手段と、前記ユーザキャラクタグループに所属するいずれかのキャラクタが前記移動物体を保持している場合、前記移動物体を保持しているキャラクタの周辺領域内の複数の位置を、前記移動物体を保持しているキャラクタからのパスを前記ユーザキャラクタグループに所属する他のキャラクタが受け取るための受取位置候補として設定する設定手段と、前記設定手段によって設定された受取位置候補のうちの少なくとも一つを、前記敵キャラクタグループに所属するキャラクタの位置に基づいて選出する受取位置選出手段と、前記ユーザキャラクタグループに所属する、前記移動物体を保持しているキャラクタ以外のキャラクタのうちから、前記受取位置候補に対応するキャラクタを、該受取位置候補の位置と、前記ユーザキャラクタグループに所属する、前記移動物体を保持しているキャラクタ以外のキャラクタの位置と、に基づいて選出するキャラクタ選出手段と、前記受取位置選出手段によって選出された受取位置候補に基づく位置に向けて、前記キャラクタ選出手段によって該受取位置候補に対応するキャラクタとして選出されたキャラクタを移動させるキャラクタ制御手段と、を含むことを特徴とする。
【0007】
また、本発明に係るゲーム装置の制御方法は、移動物体を用いて行われる競技が、ユーザによって操作されるユーザキャラクタグループと、敵キャラクタグループと、の間で行われるゲームを実行するゲーム装置の制御方法において、前記ユーザキャラクタグループに所属する複数のキャラクタの各々の位置と、前記敵キャラクタグループに所属する複数のキャラクタの各々の位置と、に関する位置データを記憶する記憶手段に記憶される位置データを取得するステップと、前記ユーザキャラクタグループに所属するいずれかのキャラクタが前記移動物体を保持している場合、前記移動物体を保持しているキャラクタの周辺領域内の複数の位置を、前記移動物体を保持しているキャラクタからのパスを前記ユーザキャラクタグループに所属する他のキャラクタが受け取るための受取位置候補として設定する設定ステップと、前記設定ステップによって設定された受取位置候補のうちの少なくとも一つを、前記敵キャラクタグループに所属するキャラクタの位置に基づいて選出する受取位置選出ステップと、前記ユーザキャラクタグループに所属する、前記移動物体を保持しているキャラクタ以外のキャラクタのうちから、前記受取位置候補に対応するキャラクタを、該受取位置候補の位置と、前記ユーザキャラクタグループに所属する、前記移動物体を保持しているキャラクタ以外のキャラクタの位置と、に基づいて選出するキャラクタ選出ステップと、前記受取位置選出ステップによって選出された受取位置候補に基づく位置に向けて、前記キャラクタ選出ステップによって該受取位置候補に対応するキャラクタとして選出されたキャラクタを移動させるキャラクタ制御ステップと、を含むことを特徴とする。
【0008】
また、本発明に係るプログラムは、移動物体を用いて行われる競技が、ユーザによって操作されるユーザキャラクタグループと、敵キャラクタグループと、の間で行われるゲームを実行するゲーム装置としてコンピュータを機能させるためのプログラムであって、前記ユーザキャラクタグループに所属する複数のキャラクタの各々の位置と、前記敵キャラクタグループに所属する複数のキャラクタの各々の位置と、に関する位置データを記憶する記憶手段に記憶される位置データを取得する手段、前記ユーザキャラクタグループに所属するいずれかのキャラクタが前記移動物体を保持している場合、前記移動物体を保持しているキャラクタの周辺領域内の複数の位置を、前記移動物体を保持しているキャラクタからのパスを前記ユーザキャラクタグループに所属する他のキャラクタが受け取るための受取位置候補として設定する設定手段、前記設定手段によって設定された受取位置候補のうちの少なくとも一つを、前記敵キャラクタグループに所属するキャラクタの位置に基づいて選出する受取位置選出手段、前記ユーザキャラクタグループに所属する、前記移動物体を保持しているキャラクタ以外のキャラクタのうちから、前記受取位置候補に対応するキャラクタを、該受取位置候補の位置と、前記ユーザキャラクタグループに所属する、前記移動物体を保持しているキャラクタ以外のキャラクタの位置と、に基づいて選出するキャラクタ選出手段、及び、前記受取位置選出手段によって選出された受取位置候補に基づく位置に向けて、前記キャラクタ選出手段によって該受取位置候補に対応するキャラクタとして選出されたキャラクタを移動させるキャラクタ制御手段、として前記コンピュータを機能させるためのプログラムである。
【0009】
また、本発明に係る情報記憶媒体は、上記プログラムを記録したコンピュータ読み取り可能な情報記憶媒体である。
【0010】
本発明によれば、移動物体を用いて行われる競技が、ユーザが操作するユーザキャラクタグループと、敵キャラクタグループと、の間で行われるゲームにおいて、味方選手キャラクタにパスをつなげることができるようにユーザを支援することが可能になる。
【0011】
また本発明の一態様では、前記設定手段は、前記移動物体を保持しているキャラクタが移動した場合、前記移動物体を保持しているキャラクタの移動後位置の周辺領域内の複数の位置を前記受取位置候補として設定することによって、前記受取位置候補を、前記移動物体を保持しているキャラクタに従動させるようにしてもよい。
【0012】
また本発明の一態様では、前記設定手段は、前記移動物体を保持しているキャラクタの周辺領域内の、該キャラクタの位置と所定の相対位置関係を有する複数の位置を前記受取位置候補として設定するようにしてもよい。
【0013】
また本発明の一態様では、前記移動物体を保持しているキャラクタの周辺領域内の複数の位置は、前記移動物体を保持しているキャラクタの位置を囲むように設定され、前記設定手段は、前記移動物体を保持しているキャラクタの位置を囲むような複数の位置を前記受取位置候補として設定するようにしてもよい。
【0014】
また本発明の一態様では、前記移動物体を保持しているキャラクタの周辺領域内の複数の位置は、前記移動物体を保持しているキャラクタの位置から複数の所定方向に伸びる各直線上に設定される位置を含み、前記設定手段は、前記移動物体を保持しているキャラクタの位置から前記複数の所定方向に伸びる各直線上に設定される位置を前記受取位置候補として設定するようにしてもよい。
【0015】
また本発明の一態様では、前記複数の所定方向は、第1方向と、前記第1方向の逆方向である第2方向と、前記第1方向と直交する第3方向と、前記第3方向の逆方向である第4方向と、前記第1方向と前記第3方向との間の方向である第5方向と、前記第2方向と前記第3方向との間の方向である第6方向と、前記第1方向と前記第4方向との間の方向である第7方向と、前記第2方向と前記第4方向との間の方向である第8方向と、を含むようにしてもよい。
【0016】
また本発明の一態様では、前記受取位置選出手段によって選出された受取位置候補に基づく位置に向けて移動するキャラクタをゲーム画面において前記ユーザに案内する手段を含むようにしてもよい。
【図面の簡単な説明】
【0017】
【図1】本発明の実施形態に係るゲーム装置のハードウェア構成を示す図である。
【図2】ゲーム空間の一例を示す図である。
【図3】ゲーム画面の一例を示す図である。
【図4】本発明の実施形態に係るゲーム装置の機能ブロック図である。
【図5】選手キャラクタ状態データの一例を示す図である。
【図6】受取位置候補の一例を示す図である。
【図7】受取位置候補について詳しく説明するための図である。
【図8】ボールを保持している選手キャラクタが移動した場合の受取位置候補の変化について説明するための図である。
【図9】ゲーム画面の一例を示す図である。
【図10】ゲーム装置が実行する処理の一例を示すフロー図である。
【図11】ゲーム装置が実行する処理の一例を示すフロー図である。
【発明を実施するための形態】
【0018】
以下、本発明の実施形態の例について図面に基づき詳細に説明する。本発明の実施形態に係るゲーム装置は、例えば家庭用ゲーム機(据置型ゲーム機)、携帯ゲーム機、携帯電話機、携帯情報端末(PDA)、又はパーソナルコンピュータなどによって実現される。ここでは、本発明の実施形態に係るゲーム装置を家庭用ゲーム機によって実現する場合について説明する。
【0019】
図1は、本発明の実施形態に係るゲーム装置のハードウェア構成を示す。図1に示すゲーム装置10は、家庭用ゲーム機11、表示部32、音声出力部34、及び光ディスク36(情報記憶媒体)を含む。表示部32及び音声出力部34は家庭用ゲーム機11に接続される。例えば家庭用テレビ受像機又は液晶ディスプレイなどが表示部32として用いられ、例えば家庭用テレビ受像機に内蔵されたスピーカ又はヘッドホンなどが音声出力部34として用いられる。
【0020】
家庭用ゲーム機11は公知のコンピュータシステムである。家庭用ゲーム機11は、バス12、制御部14、主記憶16、画像処理部18、入出力処理部20、音声処理部22、光ディスクドライブ24、ハードディスク26、通信インタフェース28、及びコントローラ30を含む。
【0021】
制御部14は一又は複数のマイクロプロセッサを含む。制御部14は、光ディスク36から読み出されるプログラムに基づいて、各部の制御処理や情報処理を実行する。主記憶16は例えばRAMを含み、光ディスク36から読み出されたプログラム及びデータが主記憶16に書き込まれる。主記憶16は制御部14の作業用メモリとしても用いられる。バス12はアドレス及びデータを家庭用ゲーム機11の各部でやり取りするためのものである。
【0022】
画像処理部18はVRAMを含み、制御部14から供給される画像データに基づいてVRAM上に画面を描画する。VRAM上に描画された画面はビデオ信号に変換されて表示部32に出力される。
【0023】
入出力処理部20は、制御部14が音声処理部22、光ディスクドライブ24、ハードディスク26、通信インタフェース28、及びコントローラ30にアクセスするためのインタフェースである。音声処理部22はサウンドバッファを含み、光ディスク36からサウンドバッファに読み出された音声データを音声出力部34から出力する。通信インタフェース28は、インターネットなどの通信ネットワークに家庭用ゲーム機11を有線又は無線接続するためのインタフェースである。
【0024】
光ディスクドライブ24は、光ディスク36に記録されたプログラムやデータを読み取る。ここでは、プログラムやデータを家庭用ゲーム機11に供給するために光ディスク36を用いるが、メモリカード等、他の情報記憶媒体を用いるようにしてもよい。また、例えば通信ネットワークを介して遠隔地からプログラムやデータを家庭用ゲーム機11に供給するようにしてもよい。ハードディスク26は一般的なハードディスク装置(補助記憶装置)である。なお、光ディスク36に記憶されることとして説明するプログラムやデータはハードディスク26に記憶されていてもよい。また、ハードディスク26の代わりに、ソリッドステートドライブがゲーム装置10に備えられるようにしてもよい。
【0025】
コントローラ30はユーザが操作を行うための操作部である。家庭用ゲーム機11には複数のコントローラ30を有線又は無線接続することが可能になっている。入出力処理部20は一定周期毎(例えば1/60秒ごと)にコントローラ30の各操作部材の操作状態をスキャンし、そのスキャン結果を表す操作信号をバス12を介して制御部14に供給する。制御部14は操作信号に基づいてユーザのゲーム操作を判定する。
【0026】
ゲーム装置10では各種ゲームが実行される。例えば、移動物体(例えばボール又はパック等)を用いて行われる競技が、ユーザが操作するユーザキャラクタグループと、敵キャラクタグループと、の間で行われるゲームが実行される。
【0027】
以下では、サッカーゲームが実行される場合の例について説明する。このサッカーゲームでは、ユーザチーム(ユーザキャラクタグループ)と敵チーム(敵キャラクタグループ)との間のサッカーの試合が行われる。なお、敵チームを操作するのはコンピュータであってもよいし、他のユーザであってもよい。ただし、以下では、敵チームがコンピュータによって操作される場合について説明する。
【0028】
サッカーゲームが実行される場合、ゲーム空間が主記憶16に構築される。図2はゲーム空間の一例を示す。図2に示すゲーム空間40は、互いに直交する3つの座標軸(Xw軸、Yw軸、及びZw軸)が設定された仮想的な3次元空間である。ゲーム空間40に配置されるオブジェクトの位置などはこれらの3つの座標軸によって示される。
【0029】
図2に示すように、ゲーム空間40には、サッカーフィールドを表すオブジェクトであるフィールド42が配置される。また、フィールド42上には、サッカーのゴールを表すオブジェクトであるゴール44と、サッカーボールを表すオブジェクトであるボール46と、ユーザチームに所属するサッカー選手を表すオブジェクトである選手キャラクタ48と、敵チームに所属するサッカー選手を表すオブジェクトである選手キャラクタ50と、が配置される。図2では省略されているが、フィールド42上には、ユーザチームに所属する11人の選手キャラクタ48と、敵チームに所属する11人の選手キャラクタ50と、が配置される。
【0030】
ゴール44の一方はユーザチームに関連づけられ、他方は敵チームに関連づけられる。いずれか一方のチームに関連づけられたゴール44内にボール46が移動すると、他方のチームの得点イベントが発生する。
【0031】
選手キャラクタ48(50)とボール46とが近づくと、所定条件の下、その選手キャラクタ48(50)とボール46とが関連づけられる。この場合、選手キャラクタ48(50)の移動動作はドリブル動作になる。以下では、選手キャラクタ48(50)にボール46が関連づけられた状態のことを「選手キャラクタ48(50)がボール46を保持している」というように記載する。
【0032】
また、ゲーム空間40には仮想カメラ52(視点)が設定される。この仮想カメラ52から見たゲーム空間40を表すゲーム画面が表示部32に表示される。例えば、ボール46が常にゲーム画面に表示されるように、仮想カメラ52はボール46の位置に基づいて移動する。
【0033】
図3はゲーム画面の一例を示す。図3に示すゲーム画面には4人の選手キャラクタ48A,48B,50A,50Bが表示されている。そのうち、2人の選手キャラクタ48A,48Bはユーザチームに所属する選手キャラクタ48であり、残りの2人の選手キャラクタ50A,50Bは敵チームに所属する選手キャラクタ50である。
【0034】
このサッカーゲームでは、ユーザチームに所属する選手キャラクタ48のうちのいずれかがユーザの操作対象に設定される。図3に示すゲーム画面では選手キャラクタ48Aの頭上にカーソル54が表示されている。カーソル54は、ユーザの操作対象になっている選手キャラクタ48を案内する役割を果たす。ユーザの操作対象になっている選手キャラクタ48Aはユーザの操作に基づいて行動する。例えば、ユーザの操作対象になっている選手キャラクタ48Aは、ユーザによって行われた方向指示操作によって指示された方向に移動する。
【0035】
ユーザの操作対象はユーザチームに所属する選手キャラクタ48のうちで切り替えられる。例えば、ユーザチームが攻撃を行っている場合(すなわち、ユーザチームに所属するいずれかの選手キャラクタ48がボール46を保持している場合)、ボール46を保持している選手キャラクタ48がユーザの操作対象に設定される。この場合、ボール46を保持している選手キャラクタ48が変わると、ユーザの操作対象も変わることになる。また例えば、ユーザチームが攻撃を行っていない場合(すなわち、敵チームに所属するいずれかの選手キャラクタ50がボール46を保持している場合や、いずれの選手キャラクタ48,50もボール46を保持していない場合)、ボール46に最も近い選手キャラクタ48がユーザの操作対象に設定される。この場合、例えば、ボール46の位置が大きく変化して、ボール46との距離が大きくなると、ユーザの操作対象も変わることになる。なお、ユーザの切替指示操作(例えば、コントローラ30の所定ボタンを押下する操作)に応じて、ユーザの操作対象が切り替わるようにしてもよい。
【0036】
ユーザチームに所属する選手キャラクタ48のうちの、ユーザの操作対象になっていない選手キャラクタ48はコンピュータの操作に従って行動する。また、敵チームに所属する選手キャラクタ50もコンピュータの操作に従って行動する。
【0037】
以下、上記のサッカーゲームにおいて、味方選手キャラクタにパスをつなげることができるようにユーザを支援するための技術について説明する。
【0038】
図4は、ゲーム装置10で実現される機能のうち、本発明に関連する機能ブロックを示す機能ブロック図である。図4に示すように、ゲーム装置10は、ゲームデータ記憶部60、受取位置候補設定部62、受取位置選出部64、キャラクタ選出部66、及びキャラクタ制御部68を含む。ゲームデータ記憶部60は例えば主記憶16及び光ディスク36によって実現され、その他の機能ブロックは制御部14が光ディスク36から読み出されたプログラムを実行することによって実現される。
【0039】
まず、ゲームデータ記憶部60について説明する。ゲームデータ記憶部60はゲームを実行するために必要なデータを記憶する。
【0040】
例えば、ゲーム空間40に配置される各オブジェクトのモデルデータ、選手キャラクタ48,50のモーションデータや、選手キャラクタ48,50の行動を制御するための行動制御データ(例えば人工知能(AI))がゲームデータ記憶部60に記憶される。
【0041】
また例えば、選手キャラクタ48,50の能力に関する能力パラメータデータがゲームデータ記憶部60に記憶される。例えば、サッカーゲームの場合、能力パラメータとしては、例えば走力パラメータ、持久力パラメータ、パス能力パラメータ、シュート能力パラメータ、及びフリーキック能力パラメータ等がある。能力パラメータは能力の高さを例えば「0」〜「100」の数値で表すパラメータである。
【0042】
また例えば、ゲームの現在の状況を示すゲーム状況データがゲームデータ記憶部60に記憶される。例えば、サッカーゲームの場合、サッカーゲームの現在の状況を示すゲーム状況データがゲームデータ記憶部60に記憶される。そして、例えば、下記に示すようなデータがゲーム状況データに含まれる。
・各選手キャラクタ48,50の状態データ(位置、移動方向、及び移動速度等)
・ボール46の状態データ(位置、移動方向、及び移動速度等)
・仮想カメラ52の状態データ(位置、視線方向、及び画角等)
・両チームの得点状況を示す得点データ
・試合が開始されてからの経過時間を示す経過時間データ
【0043】
図5は選手キャラクタ48,50の現在の状態を示す選手キャラクタ状態データの一例を示す。図5に示す選手キャラクタ状態データは、「ID」、「基本位置」、「現在位置」、「操作対象フラグ」、及び「ボール保持フラグ」フィールド等を含んでいる。
【0044】
「ID」フィールドは選手キャラクタ48,50を一意に識別する情報を示す。図5において、「P101」〜「P111」はユーザチームに所属する選手キャラクタ48のIDであり、「P201」〜「P211」は敵チームに所属する選手キャラクタ50のIDである。
【0045】
「基本位置」フィールドは選手キャラクタ48,50の基本位置を示す。「基本位置」とは、例えば、キックオフ時における選手キャラクタ48,50の位置である。例えば、ユーザチームに所属する選手キャラクタ48の基本位置は、ユーザチームが採用するフォーメーションと、選手キャラクタ48に割り当てられた役割(ポジション種類:例えばフォワード、ミッドフィルダー、ディフェンダー、又はゴールキーパー)と、に合わせて設定される。
【0046】
「現在位置」フィールドは選手キャラクタ48,50の現在の位置を示す。「操作対象フラグ」フィールドは、選手キャラクタ48がユーザの操作対象になっているか否かを示し、0又は1の値をとる。値「0」は、現在、選手キャラクタ48がユーザの操作対象でないことを示し、値「1」は、現在、選手キャラクタ48がユーザの操作対象であることを示す。「ボール保持フラグ」フィールドは、選手キャラクタ48,50がボール46を保持しているか否かを示し、0又は1の値をとる。値「0」は、現在、選手キャラクタ48,50がボール46を保持していないことを示し、値「1」は、現在、選手キャラクタ48,50がボール46を保持していることを示す。なお、図5では省略されているが、選手キャラクタ状態データには上記のフィールド以外のフィールドも含まれる。例えば選手キャラクタ48,50の移動方向を示す「移動方向」フィールド等が選手キャラクタ状態データには含まれる。
【0047】
受取位置候補設定部62について説明する。受取位置候補設定部62は、ユーザチーム(ユーザキャラクタグループ)に属するいずれかの選手キャラクタ48がボール46(移動物体)を保持している場合、ボール46を保持している選手キャラクタ48の位置の周辺領域内の複数の位置を、ボール46を保持している選手キャラクタ48からのパスを他の選手キャラクタ48(味方選手キャラクタ)が受け取るための受取位置候補として設定する。
【0048】
図6は、受取位置候補設定部62によって設定される受取位置候補の一例を示している。図6において、符号70A,70B,70C,70D,70E,70F,70G,70Hは、受取位置候補設定部62によって設定される受取位置候補を示している。すなわち、図6に示す例では8つの受取位置候補70A〜70Hが設定されている。図7は、これら8つの受取位置候補70A〜70Hについて詳しく説明するための図である。図7は、ボール46を保持している選手キャラクタ48Aと受取位置候補70A〜70Hとの位置関係を真上から見た様子を示している。以下、受取位置候補設定部62の動作について、図6及び図7を参照しながら説明する。なお以下では、受取位置候補70A〜70Hのことを総称して「受取位置候補70」と記載する場合がある。
【0049】
受取位置候補設定部62は、ボール46を保持している選手キャラクタ48の位置の周辺領域内の「ボール46を保持している選手キャラクタ48の位置と所定の相対位置関係を有する複数の位置」を受取位置候補70として設定する。
【0050】
図7(及び図6)に示す例の場合、受取位置候補70A〜70Hは、選手キャラクタ48Aの位置を中心とする正方形74の頂点又は辺上に設定されている。すなわち、受取位置候補70E〜70Hは正方形74の頂点に設定されており、受取位置候補70A〜70Dは正方形74の各辺の中点に設定されている。
【0051】
なお、ボール46を保持している選手キャラクタ48Aと受取位置候補70との位置関係(上記の「所定の相対位置関係」)は図6及び図7に示した例に限られない。例えば、受取位置候補70は、例えば、選手キャラクタ48Aの位置を中心とする四角形(正方形以外の四角形:例えば長方形又は菱形)の頂点又は辺上に設定されるようにしてよいし、選手キャラクタ48Aの位置を重心とする三角形の頂点又は辺上に設定されるようにしてもよい。あるいは、受取位置候補70は、選手キャラクタ48Aの位置を中心とする円又は楕円上に設定されるようにしてもよい。
【0052】
また、受取位置候補設定部62は、ボール46を保持している選手キャラクタ48の位置を囲むような複数の位置を受取位置候補70として設定する。すなわち、受取位置候補設定部62は、複数の位置間を直線で結んだ場合に該直線によって囲まれる領域内にボール46を保持している選手キャラクタ48の位置が含まれるような複数の位置を、受取位置候補70として設定する。
【0053】
上述したように、図7に示す例の場合、受取位置候補70A〜70Hは、選手キャラクタ48Aの位置を中心とする正方形74の各頂点及び各辺上に設定されており、選手キャラクタ48Aの位置を囲むようにして設定されている。
【0054】
なお、受取位置候補設定部62は、ボール46を保持している選手キャラクタ48の位置から複数の所定方向に伸びる各直線上に設定される位置を受取位置候補70として設定するものということもできる。ここで、「複数の所定方向」とは、例えば、ゲーム空間40内における代表方向(例えばXw軸正方向)と所定の相対関係を有する複数の方向である。なお、「複数の所定方向」とは、例えば、ボールを保持している選手キャラクタ48の代表方向(例えば進行方向又は正面方向)と所定の相対関係を有する複数の方向であってもよい。図7に示す例の場合、下記に説明するように、「複数の所定方向」は、ゲーム空間40内における代表方向(Xw軸正方向)と所定の相対関係を有する複数の方向になっている。
【0055】
図7に示す例の場合、受取位置候補70Aは、選手キャラクタ48Aの位置から方向72A(第1方向)に伸びる直線上に設定されている。図7に示す例の場合、方向72AはXw軸正方向になっている。また、受取位置候補70Aは、選手キャラクタ48Aの位置から、方向72Aに、基準距離Lだけ離れた位置に設定されている。
【0056】
また、受取位置候補70Bは、選手キャラクタ48Aの位置から方向72B(第2方向)に伸びる直線上に設定されている。方向72Bは方向72Aとは逆方向であり、図7に示す例の場合、方向72BはXw軸負方向になっている。また、受取位置候補70Bは、選手キャラクタ48Aの位置から、方向72Bに、基準距離Lだけ離れた位置に設定されている。
【0057】
また、受取位置候補70Cは、選手キャラクタ48Aの位置から方向72C(第3方向)に伸びる直線上に設定されている。方向72Cは方向72Aと直交する方向であり、図7に示す例の場合、方向72BはZw軸正方向になっている。また、受取位置候補70Cは、選手キャラクタ48Aの位置から、方向72Cに、基準距離Lだけ離れた位置に設定されている。
【0058】
また、受取位置候補70Dは、選手キャラクタ48Aの位置から方向72D(第4方向)に伸びる直線上に設定されている。方向72Dは方向72Cとは逆方向であり、図7に示す例の場合、方向72DはZw軸負方向になっている。また、受取位置候補70Dは、選手キャラクタ48Aの位置から、方向72Cに、基準距離Lだけ離れた位置に設定されている。
【0059】
また、受取位置候補70Eは、選手キャラクタ48Aの位置から方向72E(第5方向)に伸びる直線上に設定されている。方向72Eは方向72Aと方向72Cとの間の方向であり、図7に示す例の場合、方向72Eは、方向72Aと方向72Eとの間の角度と、方向72Cと方向72Eとの間の角度と、が等しくなるような方向に設定されている。また、受取位置候補70Eは、選手キャラクタ48Aの位置から、方向72Eに、所定距離(L2+L2)1/2だけ離れた位置に設定されている。
【0060】
同様に、受取位置候補70Fは、選手キャラクタ48Aの位置から方向72F(第6方向)に伸びる直線上に設定されている。方向72Fは方向72Bと方向72Cとの間の方向であり、図7に示す例の場合、方向72Fは、方向72Bと方向72Fとの間の角度と、方向72Cと方向72Fとの間の角度と、が等しくなるような方向に設定されている。また、受取位置候補70Fは、選手キャラクタ48Aの位置から、方向72Fに、所定距離(L2+L2)1/2だけ離れた位置に設定されている。
【0061】
また同様に、受取位置候補70Gは、選手キャラクタ48Aの位置から方向72G(第7方向)に伸びる直線上に設定されている。方向72Gは方向72Bと方向72Dとの間の方向であり、図7に示す例の場合、方向72Gは、方向72Bと方向72Gとの間の角度と、方向72Dと方向72Gとの間の角度と、が等しくなるような方向に設定されている。また、受取位置候補70Gは、選手キャラクタ48Aの位置から、方向72Gに、所定距離(L2+L2)1/2だけ離れた位置に設定されている。
【0062】
また同様に、受取位置候補70Hは、選手キャラクタ48Aの位置から方向72H(第8方向)に伸びる直線上に設定されている。方向72Hは方向72Aと方向72Dとの間の方向であり、図7に示す例の場合、方向72Hは、方向72Aと方向72Hとの間の角度と、方向72Dと方向72Hとの間の角度と、が等しくなるような方向に設定されている。また、受取位置候補70Hは、選手キャラクタ48Aの位置から、方向72Hに、所定距離(L2+L2)1/2だけ離れた位置に設定されている。
【0063】
なお、ボール46を保持している選手キャラクタ48が移動した場合、受取位置候補設定部62は、選手キャラクタ48の移動後位置の周辺領域内の複数の位置を受取位置候補70として設定することによって、受取位置候補70を、ボール46を保持している選手キャラクタ48に従動させる。すなわち、例えば図8に示すように、ボール46を保持している選手キャラクタ48Aが移動した場合、受取位置候補設定部62は、選手キャラクタ48Aと受取位置候補70A〜70Gとの相対位置関係を保ったまま、選手キャラクタ48Aの移動に応じて受取位置候補70A〜70Gを移動させる。
【0064】
受取位置選出部64について説明する。受取位置選出部64は、受取位置候補設定部62によって設定された受取位置候補70のうちの少なくとも一つを、敵チーム(キャラクタグループ)に属する選手キャラクタ50の位置に基づいて選出する。
【0065】
例えば、受取位置選出部64は、受取位置候補設定部62によって設定された受取位置候補70のうちの少なくとも一つを、敵チームに属する選手キャラクタ50の位置と、ユーザチームに所属する選手キャラクタ48のうちの、ボール46を保持している選手キャラクタ48以外の選手キャラクタ48の位置と、に基づいて選出するようにしてもよい。
【0066】
例えば、受取位置選出部64は、受取位置候補70の各々がフリースペース内にあるか否かの判定結果に基づいて、受取位置候補設定部62によって設定された受取位置候補70のうちの少なくとも一つを選出する。例えば、受取位置選出部64は、受取位置候補設定部62によって設定された受取位置候補70のうちから、いわゆるフリースペース内にある受取位置候補70を選出する。例えば、受取位置選出部64は、受取位置候補設定部62によって設定された受取位置候補70の各々について、該受取位置候補70からの距離が所定距離以内である領域内に、敵チームに属する選手キャラクタ50が位置しているか否かを判定する。そして、敵チームに属する選手キャラクタ50が上記領域内に位置していない場合に、受取位置選出部64は受取位置候補70がフリースペース内にあると判定する。
【0067】
または、受取位置選出部64は、受取位置候補70がフリースペース内にあるか否かを下記のようにして判定するようにしてもよい。すなわち、受取位置選出部64は、敵チームに属する選手キャラクタ50が受取位置候補70に到達するために要する時間が基準時間以上であるか否かを判定する。この場合、まず、選手キャラクタ50の現在位置から受取位置候補70までの距離が算出される。また、選手キャラクタ50の走力パラメータが光ディスク36から読み出される。そして、上記の距離を、読み出された走力パラメータが示す速さによって除算することによって、選手キャラクタ50が受取位置候補70に到達するために要する時間が算出される。そして、選手キャラクタ50が受取位置候補70に到達するために要する時間が基準時間以上である場合に、受取位置選出部64は受取位置候補70がフリースペース内にあると判定する。
【0068】
あるいは、受取位置選出部64は、受取位置候補70がフリースペース内にあるか否かを下記のようにして判定するようにしてもよい。すなわち、受取位置選出部64は、受取位置候補70が下記の二つの条件の両方を満足するか否かを判定する。
(1)第1到達時間及び第2到達時間が所定の基準時間以上である。
(2)第1到達時間が第2到達時間よりも小さい。
【0069】
なお、「第1到達時間」とは、ユーザチームに所属する、ボール46を保持している選手キャラクタ48以外の選手キャラクタ48が受取位置候補70に到達するまでに要する時間である。第1到達時間は下記に説明するようにして算出される。まず、選手キャラクタ48の現在位置から受取位置候補70までの距離が算出される。また、選手キャラクタ48の走力パラメータが光ディスク36から読み出される。そして、上記の距離を、読み出された走力パラメータが示す速さによって除算することによって、第1到達時間が算出される。
【0070】
また「第2到達時間」とは、敵チームに所属する選手キャラクタ50が受取位置候補70に到達するまでに要する時間である。第2到達時間も第1到達時間と同様にして算出される。
【0071】
上記の条件(1)は、受取位置候補70の周囲に選手キャラクタ48,50が位置していないか否かを判定するための条件に相当している。上記の条件(2)は、ユーザチームに所属する選手キャラクタ48(ボール46を保持している選手キャラクタ48以外の選手キャラクタ48)が敵チームに所属する選手キャラクタ50よりも早く受取位置候補70に到達できるか否かを判定するための条件に相当している。受取位置候補70が上記の二つの条件(1)及び(2)の両方を満足する場合、受取位置候補設定部62は、受取位置候補70がフリースペース内にあると判定する。
【0072】
本実施形態の場合、受取位置候補70が複数のグループに分けられる。例えば、受取位置候補70A〜70Hが、受取位置候補70A,70E,70Hのグループと、受取位置候補70C,70Dのグループと、受取位置候補70B,70F,70Gのグループと、の3つのグループに分けられる。なお、グループの分け方はこの例に限られない。例えば、受取位置候補70A〜70Hが、受取位置候補70A,70Bのグループと、受取位置候補70C,70E,70Fのグループと、受取位置候補70D,70G,70Hのグループと、の3つのグループに分けられるようにしてもよい。
【0073】
そして、受取位置選出部64は、各グループごとに、一つの受取位置候補70を選出する。例えば、グループに所属する受取位置候補70のうちに、フリースペース内にある受取位置候補70が一つだけ存在する場合、受取位置選出部64はその受取位置候補70を選出する。
【0074】
また例えば、グループに所属する受取位置候補70のうちに、フリースペース内にある受取位置候補70が複数存在する場合、受取位置選出部64は、それらの複数の受取位置候補70のうちのいずれかを選出する。例えば、それらの複数の受取位置候補70のいずれかがランダムに選出される。また例えば、それらの複数の受取位置候補70のうちで、敵チームに所属する選手キャラクタ50までの距離が最も大きい受取位置候補70が選出される。あるいは、それらの複数の受取位置候補70のうちで、敵チームに所属する選手キャラクタ50が受取位置候補70まで到達するために要する時間が最も大きい受取位置候補70が選出される。
【0075】
なお例えば、グループに所属する受取位置候補70のうちに、フリースペース内にある受取位置候補70が存在しない場合、受取位置選出部64はこのグループから受取位置候補70を選出しない。
【0076】
キャラクタ選出部66について説明する。キャラクタ選出部66は、ユーザチーム(ユーザキャラクタグループ)に属する、ボール46(移動物体)を保持している選手キャラクタ48以外の選手キャラクタ48のうちから、受取位置候補70に対応する味方選手キャラクタを、該受取位置候補70の位置と、それらの選手キャラクタ48(すなわち、ユーザチームに属する、ボール46を保持している選手キャラクタ48以外の選手キャラクタ48)の位置と、に基づいて選出する。
【0077】
後述するように、「受取位置候補70に対応する味方選手キャラクタ」として選出された選手キャラクタ48は、受取位置候補70に基づく位置に向けて移動するように制御されることになる(後述のキャラクタ制御部68に関する記述を参照)。このため、「受取位置候補70に対応する味方選手キャラクタ」とは、受取位置候補70に基づく位置に向けて移動させる選手キャラクタ48のことを意味している。
【0078】
キャラクタ選出部66は、ユーザチームに属する、ボール46を保持している選手キャラクタ48以外の選手キャラクタ48のうちで、受取位置候補70に基づく位置に向けて移動させるのに適した選手キャラクタ48を、受取位置候補70に対応する味方選手キャラクタとして選出する。例えば、キャラクタ選出部66は、ユーザチームに属する、ボール46を保持している選手キャラクタ48以外の選手キャラクタ48のうちで、受取位置候補70に最も近い選手キャラクタ48を、受取位置候補70に対応するキャラクタとして選出する。例えば図6に示す状況において、キャラクタ選出部66は、受取位置候補70Eに対応する味方選手キャラクタとして選手キャラクタ48Bを選出する。
【0079】
キャラクタ制御部68について説明する。キャラクタ制御部68は、受取位置選出部64によって選出された受取位置候補70に基づく位置に向けて、キャラクタ選出部66によって該受取位置候補70に対応する味方選手キャラクタとして選出された選手キャラクタ48を移動させる。「受取位置候補70に基づく位置」とは、例えば、受取位置候補70の位置そのものであってもよいし、受取位置候補70の位置を補正してなる位置であってもよい。「受取位置候補70の位置の補正」としては、例えば、敵チームに所属する選手キャラクタ50からの距離がより大きくなるように、敵チームに所属する選手キャラクタ50がいる方向とは逆方向に受取位置候補70をずらすことが含まれる。
【0080】
上記のような受取位置候補設定部62、受取位置選出部64、キャラクタ選出部66、及びキャラクタ制御部68が実現されることによって、例えば図6に示すような状況において、選手キャラクタ48Bが受取位置候補70Eまで移動するようになる。図9はその場合のゲーム画面の一例を示している。この場合、選手キャラクタ48Bは、選手キャラクタ48A付近のフリースペースまで近づいてくることになる。その結果、ユーザは選手キャラクタ48Bにパスをつなぎやすくなる。
【0081】
次に、ゲーム装置10で実行される処理について説明する。図10は、ゲーム装置10で所定時間(例えば1/60秒)ごとに実行される処理の一例を示すフロー図である。制御部14が光ディスク36から読み出されたプログラムに従って図10に示す処理を実行することによって、制御部14が受取位置候補設定部62、受取位置選出部64、キャラクタ選出部66、及びキャラクタ制御部68として機能するようになる。
【0082】
図10に示すように、制御部14は、コントローラ30から供給される操作信号に基づいて、ユーザキャラクタの状態(例えば位置や移動方向等)を更新する(S101)。なお、ここでは、ユーザチームに所属する選手キャラクタ48のうちの、ユーザの操作対象になっている選手キャラクタ48のことを「ユーザキャラクタ」と呼んでいる。
【0083】
また、制御部14は味方選手キャラクタの状態(例えば位置や移動方向等)を更新する(S102)。なお、ここでは、ユーザチームに所属する選手キャラクタ48のうちの、ユーザの操作対象になっていない選手キャラクタ48のことを「味方選手キャラクタ」と呼んでいる。例えば、制御部14はAIに従って味方選手キャラクタの状態を更新する。
【0084】
なお、ユーザキャラクタがボール46を保持している場合、ステップS102において、制御部14は例えば図11に示すような処理を実行する。すなわち、ユーザキャラクタがボール46を保持している場合、図11に示すように、制御部14(受取位置候補設定部62)はユーザキャラクタの位置に基づいて受取位置候補70を設定する(S201)。すなわち、制御部14は、ユーザキャラクタの位置の周辺領域内の複数の位置を、ボール46を保持しているユーザキャラクタからのパスを味方選手キャラクタが受け取るための受取位置候補70として設定する。例えば、図6及び図7で示したような受取位置候補70A〜70Gが設定される。
【0085】
ステップS201の処理が実行された後、制御部14(受取位置選出部64)は、ステップS201で設定された受取位置候補70のうちから少なくとも一つを選出する(S202)。例えば、ステップS201で設定された受取位置候補70が複数のグループに分けられ、受取位置選出部64は、各グループごとに、一つの受取位置候補70を選出する。例えば、受取位置候補70A〜70Hが、受取位置候補70A,70E,70Hのグループと、受取位置候補70C,70Dのグループと、受取位置候補70B,70F,70Gのグループと、の3つのグループに分けられる。そして、各グループごとに、フリースペース内にある受取位置候補70が一つ選出される。なお、グループ内に、フリースペース内にある受取位置候補70が存在しない場合、そのグループに関しては、受取位置候補70は選出されない。
【0086】
ステップS202の処理が実行された後、制御部14(キャラクタ選出部66)は、ステップS202で選出された受取位置候補70の各々について、該受取位置候補70に対応する味方選手キャラクタを選出する(S203)。例えば、制御部14は、ステップS202で選出された受取位置候補70の各々について、味方選手キャラクタのうちで、該受取位置候補70に最も近い味方選手キャラクタを、該受取位置候補70に対応する味方選手キャラクタとして選出する。なお、制御部14は、いずれかの受取位置候補70に対応する味方選手キャラクタとしてすでに選出されている味方選手キャラクタを、他の受取位置候補70に対応する味方選手キャラクタとして選出しない。例えば、第1の受取位置候補70に対応する味方選手キャラクタ及び第2の受取位置候補70に対応する味方選手キャラクタとして選出されている味方選手キャラクタは、第3の受取位置候補70に対応する味方選手キャラクタとして選出されない。
【0087】
なお、受取位置候補70に最も近い味方選手キャラクタと、受取位置候補70と、の間の距離が所定距離以上である場合、制御部14は、その受取位置候補70に関し、受取位置候補に対応する味方選手キャラクタを選出しないようにしてもよい。また、味方選手キャラクタの基本位置と受取位置候補70との間の距離が所定距離以上である場合にも、制御部14は、その味方選手キャラクタを、該受取位置候補70に対応する味方選手キャラクタとして選出しないようにしてもよい。大きく離れた受取位置候補まで味方選手キャラクタが移動したり、基本位置から大きく離れた受取位置候補まで味方選手キャラクタが移動したりしてしまうと、ユーザに違和感を感じさせてしまうおそれがある。この点、このようにすれば、そのような不都合が発生しないように図ることが可能になる。
【0088】
ところで、ステップS202の処理とステップS203の処理との順番を入れ替えるようにしてもよい。すなわち、ステップS203の処理を実行した後でステップS202の処理を実行するようにしてもよい。この場合、ステップS203の処理では、ステップS201で設定された受取位置候補70の各々について、該受取位置候補70に対応する味方選手キャラクタを選出することになる。
【0089】
ステップS202及びS203の処理が実行された後、制御部14(キャラクタ制御部68)は、ステップS202において選出された受取位置候補70に向けて、ステップS203において該受取位置候補70に対応する味方選手キャラクタとして選出された味方選手キャラクタを移動させる(S204)。以上で図11に示す処理の説明を終了する。図11に示す処理が実行されることによって、例えば図6に示すような状況において、選手キャラクタ48Bが受取位置候補70Eまで移動するようになる。
【0090】
図10に示すように、ステップS102の処理が実行された後、制御部14は敵選手キャラクタの状態(例えば位置及び移動方向)を更新する(S103)。なお、ここでは、敵チームに所属する選手キャラクタ50のことを「敵選手キャラクタ」と呼んでいる。例えば、制御部14はAIに従って敵選手キャラクタの状態を更新する。
【0091】
ステップS103の処理が実行された後、制御部14は得点データや経過時間データを更新する(S104)。例えば、制御部14はボール46がゴール44内に入ったか否かを判定し、その判定結果に基づいて得点データを更新する。
【0092】
ステップS104の処理が実行された後、制御部14はゲーム画面を更新する(S105)。例えば、制御部14は、仮想カメラ52から見たゲーム空間40を表すゲーム画面をVRAM上に生成する。VRAM上に生成されたゲーム画面は表示部32に表示される。以上で図10に示す処理の説明を終了する。
【0093】
以上説明したゲーム装置10によれば、例えば、ボール46を保持している選手キャラクタ48の付近のフリースペースに向かって味方選手キャラクタが近づいてくるようになる。その結果、ゲーム装置10によれば、ユーザが味方選手キャラクタにパスをつなぎやすくなるように支援することが可能になる。
【0094】
また、ゲーム装置10では、ボール46を保持している選手キャラクタ48の位置と所定の位置関係を有する複数の位置が該選手キャラクタ48からのパスを受け取るための受取位置候補70として設定される。そして、それらの受取位置候補70のうちから、フリースペース内にある受取位置候補70が選出され、選出された受取位置候補70に向けて味方選手キャラクタが移動するようになっている。ボール46を保持している選手キャラクタ48の付近のフリースペースを見つける方法としては、ボール46を保持している選手キャラクタ48の位置と所定の位置関係を有する位置に限らずに、自由にフリースペースを探す方法を採用することも考えられる。しかしながら、この方法を採用した場合には、非常に近接する複数のフリースペースが検出されてしまうおそれがある。そして、それらのフリースペースに向けて複数の味方選手キャラクタを移動させてしまうと、非常に近接する領域に複数の味方選手キャラクタが移動することになってしまい、却って味方選手キャラクタが邪魔になってしまうおそれがある。この点、ゲーム装置10によれば、このような不都合が生じないように図ることが可能になる。
【0095】
なお、本発明は以上に説明した実施の形態に限定されるものではない。
【0096】
[1]例えば、受取位置候補設定部62は、ボール46を保持している選手キャラクタ48の移動方向(又は正面方向)を考慮して、受取位置候補70を設定するようにしてもよい。例えば、図7に示す例の場合、方向72Aが、ボール46を保持している選手キャラクタ48の移動方向(又は正面方向)と一致するようにして設定されるようにしてもよい。なお、この場合、方向72B〜72Gと方向72Aとの相対関係は、図7に示す例と同様になる。すなわち、例えば、方向72Bは方向72Aとは逆方向に設定される。このため、方向72Bは、ボール46を保持している選手キャラクタ48の移動方向(又は正面方向)の逆方向に設定されることになる。
【0097】
このようにすれば、ボール46を保持している選手キャラクタ48の移動方向(又は正面方向)を考慮して、受取位置候補70が設定されるようになる。その結果、他の選手キャラクタ48(味方選手キャラクタ)が、ボール46を保持している選手キャラクタ48の移動方向(又は正面方向)を考慮して、パスを受け取りにくるようになる。
【0098】
[2]例えば、受取位置候補設定部62は、ボール46を保持している選手キャラクタ48の位置の代わりに、ボール46の位置を用いるようにしてもよい。
【0099】
例えば、ユーザキャラクタがドリブルを行っている場合、ユーザはユーザキャラクタの位置よりもボール56の位置に注目する場合がある。この点、受取位置候補がユーザキャラクタの位置に基づいて設定されるようになっていると、例えば、ユーザキャラクタのドリブルが大きい場合(すなわち、ユーザキャラクタが、ユーザキャラクタとボール56との間の距離が比較的長くなるようにして、ドリブルを行っている場合)等において、ユーザが受取位置候補を把握しにくくなってしまい、受取位置候補に基づく位置に向けて移動してくる味方選手キャラクタ(すなわち、パスを受け取るために近づいてくる味方選手キャラクタ)を把握しにくくなってしまうおそれもある。この点、以上のようにすれば、ユーザがユーザキャラクタの位置よりもボール56の位置に注目してゲームをプレイする場合であっても、パスを受け取るために近づいてくる味方選手キャラクタを把握しにくくならないように図ることが可能になる。
【0100】
[3]例えば、ボール46を保持している選手キャラクタ48の位置と、受取位置候補70と、の間の距離をユーザが指定できるようにしてもよい。すなわち、ボール46を保持している選手キャラクタ48の位置と、受取位置候補70と、の間の距離に関するパラメータがゲームデータ記憶部60に記憶されるようにし、受取位置候補設定部62は、ボール46を保持している選手キャラクタ48の位置と、受取位置候補70と、の間の距離を上記のパラメータに基づいて設定するようにしてもよい。そして、例えばオプション画面(設定画面)等において、ユーザが上記のパラメータの値を変更できるようにしてもよい。すなわち、ユーザによって行われた変更操作に基づいて、上記のパラメータの値が変更されるようにしてもよい。
【0101】
[4]例えば、受取位置選出部64によって選出された受取位置候補70に基づく位置まで、キャラクタ選出部66によって該受取位置候補70に対応する味方選手キャラクタとして選出された選手キャラクタ48が移動した場合、該選手キャラクタ48をゲーム画面においてユーザに案内するようにしてもよい。例えば、受取位置候補70に基づく位置まで移動する選手キャラクタ48を区別表示することによって、ユーザに案内するようにしてもよい。具体的には、受取位置候補70に基づく位置まで移動する選手キャラクタ48の表示態様を変えるようにしてもよい。すなわち、受取位置候補70に基づく位置まで移動する選手キャラクタ48が目立つように、例えば、選手キャラクタ48の色を変えたり、選手キャラクタ48にエフェクトを施したりするようにしてもよい。あるいは、選手キャラクタ48の付近(すなわち、選手キャラクタ48の位置に基づいて決定される位置)に所定の画像(標識)を表示するようにしてもよい。このようにすれば、パスを受け取りにきた選手キャラクタ48をユーザは把握できるようになり、ユーザが他の選手キャラクタ48にパスをよりつなぎやすくなる。
【0102】
[5]例えば、ゲーム空間は、2つの座標軸が設定された仮想2次元空間であってもよい。すなわち、ゲーム空間は、選手キャラクタやボールの位置などが2つの座標要素で管理されるような仮想2次元空間であってもよい。
【0103】
[6]例えば、本発明は、サッカーゲーム以外のスポーツゲーム(例えばバスケットボールゲーム、アイスホッケーゲーム、又は野球ゲーム等)にも適用することができる。また、本発明は、スポーツゲーム以外のゲームにも適用することができる。
【符号の説明】
【0104】
10 ゲーム装置、11 家庭用ゲーム機、12 バス、14 制御部、16 主記憶、18 画像処理部、20 入出力処理部、22 音声処理部、24 光ディスクドライブ、26 ハードディスク、28 通信インタフェース、30 コントローラ、32 表示部、34 音声出力部、36 光ディスク、40 ゲーム空間、42 フィールド、44 ゴール、46 ボール、48,48A,48B,50,50A,50B 選手キャラクタ、52 仮想カメラ、54 カーソル、60 ゲームデータ記憶部、62 受取位置候補設定部、64 受取位置選出部、66 キャラクタ選出部、68 キャラクタ制御部、70A,70B,70C,70D,70E,70F,70G,70H 受取位置候補。
【技術分野】
【0001】
本発明はゲーム装置、ゲーム装置の制御方法、及びプログラムに関する。
【背景技術】
【0002】
移動物体(例えばボール又はパック等)を用いて行われる競技が、ユーザが操作するユーザキャラクタグループと、敵キャラクタグループと、の間で行われるゲームが知られている。例えば、サッカーゲームが知られている。例えば、サッカーゲームの場合、ユーザは、自チームに所属する選手キャラクタのうちの、ボールを保持している選手キャラクタを操作し、味方選手キャラクタとの間でパスを行いながら、敵チームのゴール内にボールを入れることを目指す。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2010−035828号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
例えば、上記のようなサッカーゲームでは、味方選手キャラクタにパスをつなげることがユーザにとって困難である場合がある。特に、熟練度が低いユーザは、ボールを保持している選手キャラクタの周辺に、フリーな状態にある味方選手キャラクタ(すなわち、敵選手キャラクタが付近に位置していないような味方選手キャラクタ)が存在していなければ、味方選手キャラクタにパスをつなげることができないことが多い。
【0005】
本発明は上記課題に鑑みてなされたものであって、その目的は、移動物体を用いて行われる競技が、ユーザが操作するユーザキャラクタグループと、敵キャラクタグループと、の間で行われるゲームにおいて、味方選手キャラクタにパスをつなげることができるようにユーザを支援することが可能なゲーム装置、ゲーム装置の制御方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本発明に係るゲーム装置は、移動物体を用いて行われる競技が、ユーザによって操作されるユーザキャラクタグループと、敵キャラクタグループと、の間で行われるゲームを実行するゲーム装置において、前記ユーザキャラクタグループに所属する複数のキャラクタの各々の位置と、前記敵キャラクタグループに所属する複数のキャラクタの各々の位置と、に関する位置データを記憶する記憶手段に記憶される位置データを取得する手段と、前記ユーザキャラクタグループに所属するいずれかのキャラクタが前記移動物体を保持している場合、前記移動物体を保持しているキャラクタの周辺領域内の複数の位置を、前記移動物体を保持しているキャラクタからのパスを前記ユーザキャラクタグループに所属する他のキャラクタが受け取るための受取位置候補として設定する設定手段と、前記設定手段によって設定された受取位置候補のうちの少なくとも一つを、前記敵キャラクタグループに所属するキャラクタの位置に基づいて選出する受取位置選出手段と、前記ユーザキャラクタグループに所属する、前記移動物体を保持しているキャラクタ以外のキャラクタのうちから、前記受取位置候補に対応するキャラクタを、該受取位置候補の位置と、前記ユーザキャラクタグループに所属する、前記移動物体を保持しているキャラクタ以外のキャラクタの位置と、に基づいて選出するキャラクタ選出手段と、前記受取位置選出手段によって選出された受取位置候補に基づく位置に向けて、前記キャラクタ選出手段によって該受取位置候補に対応するキャラクタとして選出されたキャラクタを移動させるキャラクタ制御手段と、を含むことを特徴とする。
【0007】
また、本発明に係るゲーム装置の制御方法は、移動物体を用いて行われる競技が、ユーザによって操作されるユーザキャラクタグループと、敵キャラクタグループと、の間で行われるゲームを実行するゲーム装置の制御方法において、前記ユーザキャラクタグループに所属する複数のキャラクタの各々の位置と、前記敵キャラクタグループに所属する複数のキャラクタの各々の位置と、に関する位置データを記憶する記憶手段に記憶される位置データを取得するステップと、前記ユーザキャラクタグループに所属するいずれかのキャラクタが前記移動物体を保持している場合、前記移動物体を保持しているキャラクタの周辺領域内の複数の位置を、前記移動物体を保持しているキャラクタからのパスを前記ユーザキャラクタグループに所属する他のキャラクタが受け取るための受取位置候補として設定する設定ステップと、前記設定ステップによって設定された受取位置候補のうちの少なくとも一つを、前記敵キャラクタグループに所属するキャラクタの位置に基づいて選出する受取位置選出ステップと、前記ユーザキャラクタグループに所属する、前記移動物体を保持しているキャラクタ以外のキャラクタのうちから、前記受取位置候補に対応するキャラクタを、該受取位置候補の位置と、前記ユーザキャラクタグループに所属する、前記移動物体を保持しているキャラクタ以外のキャラクタの位置と、に基づいて選出するキャラクタ選出ステップと、前記受取位置選出ステップによって選出された受取位置候補に基づく位置に向けて、前記キャラクタ選出ステップによって該受取位置候補に対応するキャラクタとして選出されたキャラクタを移動させるキャラクタ制御ステップと、を含むことを特徴とする。
【0008】
また、本発明に係るプログラムは、移動物体を用いて行われる競技が、ユーザによって操作されるユーザキャラクタグループと、敵キャラクタグループと、の間で行われるゲームを実行するゲーム装置としてコンピュータを機能させるためのプログラムであって、前記ユーザキャラクタグループに所属する複数のキャラクタの各々の位置と、前記敵キャラクタグループに所属する複数のキャラクタの各々の位置と、に関する位置データを記憶する記憶手段に記憶される位置データを取得する手段、前記ユーザキャラクタグループに所属するいずれかのキャラクタが前記移動物体を保持している場合、前記移動物体を保持しているキャラクタの周辺領域内の複数の位置を、前記移動物体を保持しているキャラクタからのパスを前記ユーザキャラクタグループに所属する他のキャラクタが受け取るための受取位置候補として設定する設定手段、前記設定手段によって設定された受取位置候補のうちの少なくとも一つを、前記敵キャラクタグループに所属するキャラクタの位置に基づいて選出する受取位置選出手段、前記ユーザキャラクタグループに所属する、前記移動物体を保持しているキャラクタ以外のキャラクタのうちから、前記受取位置候補に対応するキャラクタを、該受取位置候補の位置と、前記ユーザキャラクタグループに所属する、前記移動物体を保持しているキャラクタ以外のキャラクタの位置と、に基づいて選出するキャラクタ選出手段、及び、前記受取位置選出手段によって選出された受取位置候補に基づく位置に向けて、前記キャラクタ選出手段によって該受取位置候補に対応するキャラクタとして選出されたキャラクタを移動させるキャラクタ制御手段、として前記コンピュータを機能させるためのプログラムである。
【0009】
また、本発明に係る情報記憶媒体は、上記プログラムを記録したコンピュータ読み取り可能な情報記憶媒体である。
【0010】
本発明によれば、移動物体を用いて行われる競技が、ユーザが操作するユーザキャラクタグループと、敵キャラクタグループと、の間で行われるゲームにおいて、味方選手キャラクタにパスをつなげることができるようにユーザを支援することが可能になる。
【0011】
また本発明の一態様では、前記設定手段は、前記移動物体を保持しているキャラクタが移動した場合、前記移動物体を保持しているキャラクタの移動後位置の周辺領域内の複数の位置を前記受取位置候補として設定することによって、前記受取位置候補を、前記移動物体を保持しているキャラクタに従動させるようにしてもよい。
【0012】
また本発明の一態様では、前記設定手段は、前記移動物体を保持しているキャラクタの周辺領域内の、該キャラクタの位置と所定の相対位置関係を有する複数の位置を前記受取位置候補として設定するようにしてもよい。
【0013】
また本発明の一態様では、前記移動物体を保持しているキャラクタの周辺領域内の複数の位置は、前記移動物体を保持しているキャラクタの位置を囲むように設定され、前記設定手段は、前記移動物体を保持しているキャラクタの位置を囲むような複数の位置を前記受取位置候補として設定するようにしてもよい。
【0014】
また本発明の一態様では、前記移動物体を保持しているキャラクタの周辺領域内の複数の位置は、前記移動物体を保持しているキャラクタの位置から複数の所定方向に伸びる各直線上に設定される位置を含み、前記設定手段は、前記移動物体を保持しているキャラクタの位置から前記複数の所定方向に伸びる各直線上に設定される位置を前記受取位置候補として設定するようにしてもよい。
【0015】
また本発明の一態様では、前記複数の所定方向は、第1方向と、前記第1方向の逆方向である第2方向と、前記第1方向と直交する第3方向と、前記第3方向の逆方向である第4方向と、前記第1方向と前記第3方向との間の方向である第5方向と、前記第2方向と前記第3方向との間の方向である第6方向と、前記第1方向と前記第4方向との間の方向である第7方向と、前記第2方向と前記第4方向との間の方向である第8方向と、を含むようにしてもよい。
【0016】
また本発明の一態様では、前記受取位置選出手段によって選出された受取位置候補に基づく位置に向けて移動するキャラクタをゲーム画面において前記ユーザに案内する手段を含むようにしてもよい。
【図面の簡単な説明】
【0017】
【図1】本発明の実施形態に係るゲーム装置のハードウェア構成を示す図である。
【図2】ゲーム空間の一例を示す図である。
【図3】ゲーム画面の一例を示す図である。
【図4】本発明の実施形態に係るゲーム装置の機能ブロック図である。
【図5】選手キャラクタ状態データの一例を示す図である。
【図6】受取位置候補の一例を示す図である。
【図7】受取位置候補について詳しく説明するための図である。
【図8】ボールを保持している選手キャラクタが移動した場合の受取位置候補の変化について説明するための図である。
【図9】ゲーム画面の一例を示す図である。
【図10】ゲーム装置が実行する処理の一例を示すフロー図である。
【図11】ゲーム装置が実行する処理の一例を示すフロー図である。
【発明を実施するための形態】
【0018】
以下、本発明の実施形態の例について図面に基づき詳細に説明する。本発明の実施形態に係るゲーム装置は、例えば家庭用ゲーム機(据置型ゲーム機)、携帯ゲーム機、携帯電話機、携帯情報端末(PDA)、又はパーソナルコンピュータなどによって実現される。ここでは、本発明の実施形態に係るゲーム装置を家庭用ゲーム機によって実現する場合について説明する。
【0019】
図1は、本発明の実施形態に係るゲーム装置のハードウェア構成を示す。図1に示すゲーム装置10は、家庭用ゲーム機11、表示部32、音声出力部34、及び光ディスク36(情報記憶媒体)を含む。表示部32及び音声出力部34は家庭用ゲーム機11に接続される。例えば家庭用テレビ受像機又は液晶ディスプレイなどが表示部32として用いられ、例えば家庭用テレビ受像機に内蔵されたスピーカ又はヘッドホンなどが音声出力部34として用いられる。
【0020】
家庭用ゲーム機11は公知のコンピュータシステムである。家庭用ゲーム機11は、バス12、制御部14、主記憶16、画像処理部18、入出力処理部20、音声処理部22、光ディスクドライブ24、ハードディスク26、通信インタフェース28、及びコントローラ30を含む。
【0021】
制御部14は一又は複数のマイクロプロセッサを含む。制御部14は、光ディスク36から読み出されるプログラムに基づいて、各部の制御処理や情報処理を実行する。主記憶16は例えばRAMを含み、光ディスク36から読み出されたプログラム及びデータが主記憶16に書き込まれる。主記憶16は制御部14の作業用メモリとしても用いられる。バス12はアドレス及びデータを家庭用ゲーム機11の各部でやり取りするためのものである。
【0022】
画像処理部18はVRAMを含み、制御部14から供給される画像データに基づいてVRAM上に画面を描画する。VRAM上に描画された画面はビデオ信号に変換されて表示部32に出力される。
【0023】
入出力処理部20は、制御部14が音声処理部22、光ディスクドライブ24、ハードディスク26、通信インタフェース28、及びコントローラ30にアクセスするためのインタフェースである。音声処理部22はサウンドバッファを含み、光ディスク36からサウンドバッファに読み出された音声データを音声出力部34から出力する。通信インタフェース28は、インターネットなどの通信ネットワークに家庭用ゲーム機11を有線又は無線接続するためのインタフェースである。
【0024】
光ディスクドライブ24は、光ディスク36に記録されたプログラムやデータを読み取る。ここでは、プログラムやデータを家庭用ゲーム機11に供給するために光ディスク36を用いるが、メモリカード等、他の情報記憶媒体を用いるようにしてもよい。また、例えば通信ネットワークを介して遠隔地からプログラムやデータを家庭用ゲーム機11に供給するようにしてもよい。ハードディスク26は一般的なハードディスク装置(補助記憶装置)である。なお、光ディスク36に記憶されることとして説明するプログラムやデータはハードディスク26に記憶されていてもよい。また、ハードディスク26の代わりに、ソリッドステートドライブがゲーム装置10に備えられるようにしてもよい。
【0025】
コントローラ30はユーザが操作を行うための操作部である。家庭用ゲーム機11には複数のコントローラ30を有線又は無線接続することが可能になっている。入出力処理部20は一定周期毎(例えば1/60秒ごと)にコントローラ30の各操作部材の操作状態をスキャンし、そのスキャン結果を表す操作信号をバス12を介して制御部14に供給する。制御部14は操作信号に基づいてユーザのゲーム操作を判定する。
【0026】
ゲーム装置10では各種ゲームが実行される。例えば、移動物体(例えばボール又はパック等)を用いて行われる競技が、ユーザが操作するユーザキャラクタグループと、敵キャラクタグループと、の間で行われるゲームが実行される。
【0027】
以下では、サッカーゲームが実行される場合の例について説明する。このサッカーゲームでは、ユーザチーム(ユーザキャラクタグループ)と敵チーム(敵キャラクタグループ)との間のサッカーの試合が行われる。なお、敵チームを操作するのはコンピュータであってもよいし、他のユーザであってもよい。ただし、以下では、敵チームがコンピュータによって操作される場合について説明する。
【0028】
サッカーゲームが実行される場合、ゲーム空間が主記憶16に構築される。図2はゲーム空間の一例を示す。図2に示すゲーム空間40は、互いに直交する3つの座標軸(Xw軸、Yw軸、及びZw軸)が設定された仮想的な3次元空間である。ゲーム空間40に配置されるオブジェクトの位置などはこれらの3つの座標軸によって示される。
【0029】
図2に示すように、ゲーム空間40には、サッカーフィールドを表すオブジェクトであるフィールド42が配置される。また、フィールド42上には、サッカーのゴールを表すオブジェクトであるゴール44と、サッカーボールを表すオブジェクトであるボール46と、ユーザチームに所属するサッカー選手を表すオブジェクトである選手キャラクタ48と、敵チームに所属するサッカー選手を表すオブジェクトである選手キャラクタ50と、が配置される。図2では省略されているが、フィールド42上には、ユーザチームに所属する11人の選手キャラクタ48と、敵チームに所属する11人の選手キャラクタ50と、が配置される。
【0030】
ゴール44の一方はユーザチームに関連づけられ、他方は敵チームに関連づけられる。いずれか一方のチームに関連づけられたゴール44内にボール46が移動すると、他方のチームの得点イベントが発生する。
【0031】
選手キャラクタ48(50)とボール46とが近づくと、所定条件の下、その選手キャラクタ48(50)とボール46とが関連づけられる。この場合、選手キャラクタ48(50)の移動動作はドリブル動作になる。以下では、選手キャラクタ48(50)にボール46が関連づけられた状態のことを「選手キャラクタ48(50)がボール46を保持している」というように記載する。
【0032】
また、ゲーム空間40には仮想カメラ52(視点)が設定される。この仮想カメラ52から見たゲーム空間40を表すゲーム画面が表示部32に表示される。例えば、ボール46が常にゲーム画面に表示されるように、仮想カメラ52はボール46の位置に基づいて移動する。
【0033】
図3はゲーム画面の一例を示す。図3に示すゲーム画面には4人の選手キャラクタ48A,48B,50A,50Bが表示されている。そのうち、2人の選手キャラクタ48A,48Bはユーザチームに所属する選手キャラクタ48であり、残りの2人の選手キャラクタ50A,50Bは敵チームに所属する選手キャラクタ50である。
【0034】
このサッカーゲームでは、ユーザチームに所属する選手キャラクタ48のうちのいずれかがユーザの操作対象に設定される。図3に示すゲーム画面では選手キャラクタ48Aの頭上にカーソル54が表示されている。カーソル54は、ユーザの操作対象になっている選手キャラクタ48を案内する役割を果たす。ユーザの操作対象になっている選手キャラクタ48Aはユーザの操作に基づいて行動する。例えば、ユーザの操作対象になっている選手キャラクタ48Aは、ユーザによって行われた方向指示操作によって指示された方向に移動する。
【0035】
ユーザの操作対象はユーザチームに所属する選手キャラクタ48のうちで切り替えられる。例えば、ユーザチームが攻撃を行っている場合(すなわち、ユーザチームに所属するいずれかの選手キャラクタ48がボール46を保持している場合)、ボール46を保持している選手キャラクタ48がユーザの操作対象に設定される。この場合、ボール46を保持している選手キャラクタ48が変わると、ユーザの操作対象も変わることになる。また例えば、ユーザチームが攻撃を行っていない場合(すなわち、敵チームに所属するいずれかの選手キャラクタ50がボール46を保持している場合や、いずれの選手キャラクタ48,50もボール46を保持していない場合)、ボール46に最も近い選手キャラクタ48がユーザの操作対象に設定される。この場合、例えば、ボール46の位置が大きく変化して、ボール46との距離が大きくなると、ユーザの操作対象も変わることになる。なお、ユーザの切替指示操作(例えば、コントローラ30の所定ボタンを押下する操作)に応じて、ユーザの操作対象が切り替わるようにしてもよい。
【0036】
ユーザチームに所属する選手キャラクタ48のうちの、ユーザの操作対象になっていない選手キャラクタ48はコンピュータの操作に従って行動する。また、敵チームに所属する選手キャラクタ50もコンピュータの操作に従って行動する。
【0037】
以下、上記のサッカーゲームにおいて、味方選手キャラクタにパスをつなげることができるようにユーザを支援するための技術について説明する。
【0038】
図4は、ゲーム装置10で実現される機能のうち、本発明に関連する機能ブロックを示す機能ブロック図である。図4に示すように、ゲーム装置10は、ゲームデータ記憶部60、受取位置候補設定部62、受取位置選出部64、キャラクタ選出部66、及びキャラクタ制御部68を含む。ゲームデータ記憶部60は例えば主記憶16及び光ディスク36によって実現され、その他の機能ブロックは制御部14が光ディスク36から読み出されたプログラムを実行することによって実現される。
【0039】
まず、ゲームデータ記憶部60について説明する。ゲームデータ記憶部60はゲームを実行するために必要なデータを記憶する。
【0040】
例えば、ゲーム空間40に配置される各オブジェクトのモデルデータ、選手キャラクタ48,50のモーションデータや、選手キャラクタ48,50の行動を制御するための行動制御データ(例えば人工知能(AI))がゲームデータ記憶部60に記憶される。
【0041】
また例えば、選手キャラクタ48,50の能力に関する能力パラメータデータがゲームデータ記憶部60に記憶される。例えば、サッカーゲームの場合、能力パラメータとしては、例えば走力パラメータ、持久力パラメータ、パス能力パラメータ、シュート能力パラメータ、及びフリーキック能力パラメータ等がある。能力パラメータは能力の高さを例えば「0」〜「100」の数値で表すパラメータである。
【0042】
また例えば、ゲームの現在の状況を示すゲーム状況データがゲームデータ記憶部60に記憶される。例えば、サッカーゲームの場合、サッカーゲームの現在の状況を示すゲーム状況データがゲームデータ記憶部60に記憶される。そして、例えば、下記に示すようなデータがゲーム状況データに含まれる。
・各選手キャラクタ48,50の状態データ(位置、移動方向、及び移動速度等)
・ボール46の状態データ(位置、移動方向、及び移動速度等)
・仮想カメラ52の状態データ(位置、視線方向、及び画角等)
・両チームの得点状況を示す得点データ
・試合が開始されてからの経過時間を示す経過時間データ
【0043】
図5は選手キャラクタ48,50の現在の状態を示す選手キャラクタ状態データの一例を示す。図5に示す選手キャラクタ状態データは、「ID」、「基本位置」、「現在位置」、「操作対象フラグ」、及び「ボール保持フラグ」フィールド等を含んでいる。
【0044】
「ID」フィールドは選手キャラクタ48,50を一意に識別する情報を示す。図5において、「P101」〜「P111」はユーザチームに所属する選手キャラクタ48のIDであり、「P201」〜「P211」は敵チームに所属する選手キャラクタ50のIDである。
【0045】
「基本位置」フィールドは選手キャラクタ48,50の基本位置を示す。「基本位置」とは、例えば、キックオフ時における選手キャラクタ48,50の位置である。例えば、ユーザチームに所属する選手キャラクタ48の基本位置は、ユーザチームが採用するフォーメーションと、選手キャラクタ48に割り当てられた役割(ポジション種類:例えばフォワード、ミッドフィルダー、ディフェンダー、又はゴールキーパー)と、に合わせて設定される。
【0046】
「現在位置」フィールドは選手キャラクタ48,50の現在の位置を示す。「操作対象フラグ」フィールドは、選手キャラクタ48がユーザの操作対象になっているか否かを示し、0又は1の値をとる。値「0」は、現在、選手キャラクタ48がユーザの操作対象でないことを示し、値「1」は、現在、選手キャラクタ48がユーザの操作対象であることを示す。「ボール保持フラグ」フィールドは、選手キャラクタ48,50がボール46を保持しているか否かを示し、0又は1の値をとる。値「0」は、現在、選手キャラクタ48,50がボール46を保持していないことを示し、値「1」は、現在、選手キャラクタ48,50がボール46を保持していることを示す。なお、図5では省略されているが、選手キャラクタ状態データには上記のフィールド以外のフィールドも含まれる。例えば選手キャラクタ48,50の移動方向を示す「移動方向」フィールド等が選手キャラクタ状態データには含まれる。
【0047】
受取位置候補設定部62について説明する。受取位置候補設定部62は、ユーザチーム(ユーザキャラクタグループ)に属するいずれかの選手キャラクタ48がボール46(移動物体)を保持している場合、ボール46を保持している選手キャラクタ48の位置の周辺領域内の複数の位置を、ボール46を保持している選手キャラクタ48からのパスを他の選手キャラクタ48(味方選手キャラクタ)が受け取るための受取位置候補として設定する。
【0048】
図6は、受取位置候補設定部62によって設定される受取位置候補の一例を示している。図6において、符号70A,70B,70C,70D,70E,70F,70G,70Hは、受取位置候補設定部62によって設定される受取位置候補を示している。すなわち、図6に示す例では8つの受取位置候補70A〜70Hが設定されている。図7は、これら8つの受取位置候補70A〜70Hについて詳しく説明するための図である。図7は、ボール46を保持している選手キャラクタ48Aと受取位置候補70A〜70Hとの位置関係を真上から見た様子を示している。以下、受取位置候補設定部62の動作について、図6及び図7を参照しながら説明する。なお以下では、受取位置候補70A〜70Hのことを総称して「受取位置候補70」と記載する場合がある。
【0049】
受取位置候補設定部62は、ボール46を保持している選手キャラクタ48の位置の周辺領域内の「ボール46を保持している選手キャラクタ48の位置と所定の相対位置関係を有する複数の位置」を受取位置候補70として設定する。
【0050】
図7(及び図6)に示す例の場合、受取位置候補70A〜70Hは、選手キャラクタ48Aの位置を中心とする正方形74の頂点又は辺上に設定されている。すなわち、受取位置候補70E〜70Hは正方形74の頂点に設定されており、受取位置候補70A〜70Dは正方形74の各辺の中点に設定されている。
【0051】
なお、ボール46を保持している選手キャラクタ48Aと受取位置候補70との位置関係(上記の「所定の相対位置関係」)は図6及び図7に示した例に限られない。例えば、受取位置候補70は、例えば、選手キャラクタ48Aの位置を中心とする四角形(正方形以外の四角形:例えば長方形又は菱形)の頂点又は辺上に設定されるようにしてよいし、選手キャラクタ48Aの位置を重心とする三角形の頂点又は辺上に設定されるようにしてもよい。あるいは、受取位置候補70は、選手キャラクタ48Aの位置を中心とする円又は楕円上に設定されるようにしてもよい。
【0052】
また、受取位置候補設定部62は、ボール46を保持している選手キャラクタ48の位置を囲むような複数の位置を受取位置候補70として設定する。すなわち、受取位置候補設定部62は、複数の位置間を直線で結んだ場合に該直線によって囲まれる領域内にボール46を保持している選手キャラクタ48の位置が含まれるような複数の位置を、受取位置候補70として設定する。
【0053】
上述したように、図7に示す例の場合、受取位置候補70A〜70Hは、選手キャラクタ48Aの位置を中心とする正方形74の各頂点及び各辺上に設定されており、選手キャラクタ48Aの位置を囲むようにして設定されている。
【0054】
なお、受取位置候補設定部62は、ボール46を保持している選手キャラクタ48の位置から複数の所定方向に伸びる各直線上に設定される位置を受取位置候補70として設定するものということもできる。ここで、「複数の所定方向」とは、例えば、ゲーム空間40内における代表方向(例えばXw軸正方向)と所定の相対関係を有する複数の方向である。なお、「複数の所定方向」とは、例えば、ボールを保持している選手キャラクタ48の代表方向(例えば進行方向又は正面方向)と所定の相対関係を有する複数の方向であってもよい。図7に示す例の場合、下記に説明するように、「複数の所定方向」は、ゲーム空間40内における代表方向(Xw軸正方向)と所定の相対関係を有する複数の方向になっている。
【0055】
図7に示す例の場合、受取位置候補70Aは、選手キャラクタ48Aの位置から方向72A(第1方向)に伸びる直線上に設定されている。図7に示す例の場合、方向72AはXw軸正方向になっている。また、受取位置候補70Aは、選手キャラクタ48Aの位置から、方向72Aに、基準距離Lだけ離れた位置に設定されている。
【0056】
また、受取位置候補70Bは、選手キャラクタ48Aの位置から方向72B(第2方向)に伸びる直線上に設定されている。方向72Bは方向72Aとは逆方向であり、図7に示す例の場合、方向72BはXw軸負方向になっている。また、受取位置候補70Bは、選手キャラクタ48Aの位置から、方向72Bに、基準距離Lだけ離れた位置に設定されている。
【0057】
また、受取位置候補70Cは、選手キャラクタ48Aの位置から方向72C(第3方向)に伸びる直線上に設定されている。方向72Cは方向72Aと直交する方向であり、図7に示す例の場合、方向72BはZw軸正方向になっている。また、受取位置候補70Cは、選手キャラクタ48Aの位置から、方向72Cに、基準距離Lだけ離れた位置に設定されている。
【0058】
また、受取位置候補70Dは、選手キャラクタ48Aの位置から方向72D(第4方向)に伸びる直線上に設定されている。方向72Dは方向72Cとは逆方向であり、図7に示す例の場合、方向72DはZw軸負方向になっている。また、受取位置候補70Dは、選手キャラクタ48Aの位置から、方向72Cに、基準距離Lだけ離れた位置に設定されている。
【0059】
また、受取位置候補70Eは、選手キャラクタ48Aの位置から方向72E(第5方向)に伸びる直線上に設定されている。方向72Eは方向72Aと方向72Cとの間の方向であり、図7に示す例の場合、方向72Eは、方向72Aと方向72Eとの間の角度と、方向72Cと方向72Eとの間の角度と、が等しくなるような方向に設定されている。また、受取位置候補70Eは、選手キャラクタ48Aの位置から、方向72Eに、所定距離(L2+L2)1/2だけ離れた位置に設定されている。
【0060】
同様に、受取位置候補70Fは、選手キャラクタ48Aの位置から方向72F(第6方向)に伸びる直線上に設定されている。方向72Fは方向72Bと方向72Cとの間の方向であり、図7に示す例の場合、方向72Fは、方向72Bと方向72Fとの間の角度と、方向72Cと方向72Fとの間の角度と、が等しくなるような方向に設定されている。また、受取位置候補70Fは、選手キャラクタ48Aの位置から、方向72Fに、所定距離(L2+L2)1/2だけ離れた位置に設定されている。
【0061】
また同様に、受取位置候補70Gは、選手キャラクタ48Aの位置から方向72G(第7方向)に伸びる直線上に設定されている。方向72Gは方向72Bと方向72Dとの間の方向であり、図7に示す例の場合、方向72Gは、方向72Bと方向72Gとの間の角度と、方向72Dと方向72Gとの間の角度と、が等しくなるような方向に設定されている。また、受取位置候補70Gは、選手キャラクタ48Aの位置から、方向72Gに、所定距離(L2+L2)1/2だけ離れた位置に設定されている。
【0062】
また同様に、受取位置候補70Hは、選手キャラクタ48Aの位置から方向72H(第8方向)に伸びる直線上に設定されている。方向72Hは方向72Aと方向72Dとの間の方向であり、図7に示す例の場合、方向72Hは、方向72Aと方向72Hとの間の角度と、方向72Dと方向72Hとの間の角度と、が等しくなるような方向に設定されている。また、受取位置候補70Hは、選手キャラクタ48Aの位置から、方向72Hに、所定距離(L2+L2)1/2だけ離れた位置に設定されている。
【0063】
なお、ボール46を保持している選手キャラクタ48が移動した場合、受取位置候補設定部62は、選手キャラクタ48の移動後位置の周辺領域内の複数の位置を受取位置候補70として設定することによって、受取位置候補70を、ボール46を保持している選手キャラクタ48に従動させる。すなわち、例えば図8に示すように、ボール46を保持している選手キャラクタ48Aが移動した場合、受取位置候補設定部62は、選手キャラクタ48Aと受取位置候補70A〜70Gとの相対位置関係を保ったまま、選手キャラクタ48Aの移動に応じて受取位置候補70A〜70Gを移動させる。
【0064】
受取位置選出部64について説明する。受取位置選出部64は、受取位置候補設定部62によって設定された受取位置候補70のうちの少なくとも一つを、敵チーム(キャラクタグループ)に属する選手キャラクタ50の位置に基づいて選出する。
【0065】
例えば、受取位置選出部64は、受取位置候補設定部62によって設定された受取位置候補70のうちの少なくとも一つを、敵チームに属する選手キャラクタ50の位置と、ユーザチームに所属する選手キャラクタ48のうちの、ボール46を保持している選手キャラクタ48以外の選手キャラクタ48の位置と、に基づいて選出するようにしてもよい。
【0066】
例えば、受取位置選出部64は、受取位置候補70の各々がフリースペース内にあるか否かの判定結果に基づいて、受取位置候補設定部62によって設定された受取位置候補70のうちの少なくとも一つを選出する。例えば、受取位置選出部64は、受取位置候補設定部62によって設定された受取位置候補70のうちから、いわゆるフリースペース内にある受取位置候補70を選出する。例えば、受取位置選出部64は、受取位置候補設定部62によって設定された受取位置候補70の各々について、該受取位置候補70からの距離が所定距離以内である領域内に、敵チームに属する選手キャラクタ50が位置しているか否かを判定する。そして、敵チームに属する選手キャラクタ50が上記領域内に位置していない場合に、受取位置選出部64は受取位置候補70がフリースペース内にあると判定する。
【0067】
または、受取位置選出部64は、受取位置候補70がフリースペース内にあるか否かを下記のようにして判定するようにしてもよい。すなわち、受取位置選出部64は、敵チームに属する選手キャラクタ50が受取位置候補70に到達するために要する時間が基準時間以上であるか否かを判定する。この場合、まず、選手キャラクタ50の現在位置から受取位置候補70までの距離が算出される。また、選手キャラクタ50の走力パラメータが光ディスク36から読み出される。そして、上記の距離を、読み出された走力パラメータが示す速さによって除算することによって、選手キャラクタ50が受取位置候補70に到達するために要する時間が算出される。そして、選手キャラクタ50が受取位置候補70に到達するために要する時間が基準時間以上である場合に、受取位置選出部64は受取位置候補70がフリースペース内にあると判定する。
【0068】
あるいは、受取位置選出部64は、受取位置候補70がフリースペース内にあるか否かを下記のようにして判定するようにしてもよい。すなわち、受取位置選出部64は、受取位置候補70が下記の二つの条件の両方を満足するか否かを判定する。
(1)第1到達時間及び第2到達時間が所定の基準時間以上である。
(2)第1到達時間が第2到達時間よりも小さい。
【0069】
なお、「第1到達時間」とは、ユーザチームに所属する、ボール46を保持している選手キャラクタ48以外の選手キャラクタ48が受取位置候補70に到達するまでに要する時間である。第1到達時間は下記に説明するようにして算出される。まず、選手キャラクタ48の現在位置から受取位置候補70までの距離が算出される。また、選手キャラクタ48の走力パラメータが光ディスク36から読み出される。そして、上記の距離を、読み出された走力パラメータが示す速さによって除算することによって、第1到達時間が算出される。
【0070】
また「第2到達時間」とは、敵チームに所属する選手キャラクタ50が受取位置候補70に到達するまでに要する時間である。第2到達時間も第1到達時間と同様にして算出される。
【0071】
上記の条件(1)は、受取位置候補70の周囲に選手キャラクタ48,50が位置していないか否かを判定するための条件に相当している。上記の条件(2)は、ユーザチームに所属する選手キャラクタ48(ボール46を保持している選手キャラクタ48以外の選手キャラクタ48)が敵チームに所属する選手キャラクタ50よりも早く受取位置候補70に到達できるか否かを判定するための条件に相当している。受取位置候補70が上記の二つの条件(1)及び(2)の両方を満足する場合、受取位置候補設定部62は、受取位置候補70がフリースペース内にあると判定する。
【0072】
本実施形態の場合、受取位置候補70が複数のグループに分けられる。例えば、受取位置候補70A〜70Hが、受取位置候補70A,70E,70Hのグループと、受取位置候補70C,70Dのグループと、受取位置候補70B,70F,70Gのグループと、の3つのグループに分けられる。なお、グループの分け方はこの例に限られない。例えば、受取位置候補70A〜70Hが、受取位置候補70A,70Bのグループと、受取位置候補70C,70E,70Fのグループと、受取位置候補70D,70G,70Hのグループと、の3つのグループに分けられるようにしてもよい。
【0073】
そして、受取位置選出部64は、各グループごとに、一つの受取位置候補70を選出する。例えば、グループに所属する受取位置候補70のうちに、フリースペース内にある受取位置候補70が一つだけ存在する場合、受取位置選出部64はその受取位置候補70を選出する。
【0074】
また例えば、グループに所属する受取位置候補70のうちに、フリースペース内にある受取位置候補70が複数存在する場合、受取位置選出部64は、それらの複数の受取位置候補70のうちのいずれかを選出する。例えば、それらの複数の受取位置候補70のいずれかがランダムに選出される。また例えば、それらの複数の受取位置候補70のうちで、敵チームに所属する選手キャラクタ50までの距離が最も大きい受取位置候補70が選出される。あるいは、それらの複数の受取位置候補70のうちで、敵チームに所属する選手キャラクタ50が受取位置候補70まで到達するために要する時間が最も大きい受取位置候補70が選出される。
【0075】
なお例えば、グループに所属する受取位置候補70のうちに、フリースペース内にある受取位置候補70が存在しない場合、受取位置選出部64はこのグループから受取位置候補70を選出しない。
【0076】
キャラクタ選出部66について説明する。キャラクタ選出部66は、ユーザチーム(ユーザキャラクタグループ)に属する、ボール46(移動物体)を保持している選手キャラクタ48以外の選手キャラクタ48のうちから、受取位置候補70に対応する味方選手キャラクタを、該受取位置候補70の位置と、それらの選手キャラクタ48(すなわち、ユーザチームに属する、ボール46を保持している選手キャラクタ48以外の選手キャラクタ48)の位置と、に基づいて選出する。
【0077】
後述するように、「受取位置候補70に対応する味方選手キャラクタ」として選出された選手キャラクタ48は、受取位置候補70に基づく位置に向けて移動するように制御されることになる(後述のキャラクタ制御部68に関する記述を参照)。このため、「受取位置候補70に対応する味方選手キャラクタ」とは、受取位置候補70に基づく位置に向けて移動させる選手キャラクタ48のことを意味している。
【0078】
キャラクタ選出部66は、ユーザチームに属する、ボール46を保持している選手キャラクタ48以外の選手キャラクタ48のうちで、受取位置候補70に基づく位置に向けて移動させるのに適した選手キャラクタ48を、受取位置候補70に対応する味方選手キャラクタとして選出する。例えば、キャラクタ選出部66は、ユーザチームに属する、ボール46を保持している選手キャラクタ48以外の選手キャラクタ48のうちで、受取位置候補70に最も近い選手キャラクタ48を、受取位置候補70に対応するキャラクタとして選出する。例えば図6に示す状況において、キャラクタ選出部66は、受取位置候補70Eに対応する味方選手キャラクタとして選手キャラクタ48Bを選出する。
【0079】
キャラクタ制御部68について説明する。キャラクタ制御部68は、受取位置選出部64によって選出された受取位置候補70に基づく位置に向けて、キャラクタ選出部66によって該受取位置候補70に対応する味方選手キャラクタとして選出された選手キャラクタ48を移動させる。「受取位置候補70に基づく位置」とは、例えば、受取位置候補70の位置そのものであってもよいし、受取位置候補70の位置を補正してなる位置であってもよい。「受取位置候補70の位置の補正」としては、例えば、敵チームに所属する選手キャラクタ50からの距離がより大きくなるように、敵チームに所属する選手キャラクタ50がいる方向とは逆方向に受取位置候補70をずらすことが含まれる。
【0080】
上記のような受取位置候補設定部62、受取位置選出部64、キャラクタ選出部66、及びキャラクタ制御部68が実現されることによって、例えば図6に示すような状況において、選手キャラクタ48Bが受取位置候補70Eまで移動するようになる。図9はその場合のゲーム画面の一例を示している。この場合、選手キャラクタ48Bは、選手キャラクタ48A付近のフリースペースまで近づいてくることになる。その結果、ユーザは選手キャラクタ48Bにパスをつなぎやすくなる。
【0081】
次に、ゲーム装置10で実行される処理について説明する。図10は、ゲーム装置10で所定時間(例えば1/60秒)ごとに実行される処理の一例を示すフロー図である。制御部14が光ディスク36から読み出されたプログラムに従って図10に示す処理を実行することによって、制御部14が受取位置候補設定部62、受取位置選出部64、キャラクタ選出部66、及びキャラクタ制御部68として機能するようになる。
【0082】
図10に示すように、制御部14は、コントローラ30から供給される操作信号に基づいて、ユーザキャラクタの状態(例えば位置や移動方向等)を更新する(S101)。なお、ここでは、ユーザチームに所属する選手キャラクタ48のうちの、ユーザの操作対象になっている選手キャラクタ48のことを「ユーザキャラクタ」と呼んでいる。
【0083】
また、制御部14は味方選手キャラクタの状態(例えば位置や移動方向等)を更新する(S102)。なお、ここでは、ユーザチームに所属する選手キャラクタ48のうちの、ユーザの操作対象になっていない選手キャラクタ48のことを「味方選手キャラクタ」と呼んでいる。例えば、制御部14はAIに従って味方選手キャラクタの状態を更新する。
【0084】
なお、ユーザキャラクタがボール46を保持している場合、ステップS102において、制御部14は例えば図11に示すような処理を実行する。すなわち、ユーザキャラクタがボール46を保持している場合、図11に示すように、制御部14(受取位置候補設定部62)はユーザキャラクタの位置に基づいて受取位置候補70を設定する(S201)。すなわち、制御部14は、ユーザキャラクタの位置の周辺領域内の複数の位置を、ボール46を保持しているユーザキャラクタからのパスを味方選手キャラクタが受け取るための受取位置候補70として設定する。例えば、図6及び図7で示したような受取位置候補70A〜70Gが設定される。
【0085】
ステップS201の処理が実行された後、制御部14(受取位置選出部64)は、ステップS201で設定された受取位置候補70のうちから少なくとも一つを選出する(S202)。例えば、ステップS201で設定された受取位置候補70が複数のグループに分けられ、受取位置選出部64は、各グループごとに、一つの受取位置候補70を選出する。例えば、受取位置候補70A〜70Hが、受取位置候補70A,70E,70Hのグループと、受取位置候補70C,70Dのグループと、受取位置候補70B,70F,70Gのグループと、の3つのグループに分けられる。そして、各グループごとに、フリースペース内にある受取位置候補70が一つ選出される。なお、グループ内に、フリースペース内にある受取位置候補70が存在しない場合、そのグループに関しては、受取位置候補70は選出されない。
【0086】
ステップS202の処理が実行された後、制御部14(キャラクタ選出部66)は、ステップS202で選出された受取位置候補70の各々について、該受取位置候補70に対応する味方選手キャラクタを選出する(S203)。例えば、制御部14は、ステップS202で選出された受取位置候補70の各々について、味方選手キャラクタのうちで、該受取位置候補70に最も近い味方選手キャラクタを、該受取位置候補70に対応する味方選手キャラクタとして選出する。なお、制御部14は、いずれかの受取位置候補70に対応する味方選手キャラクタとしてすでに選出されている味方選手キャラクタを、他の受取位置候補70に対応する味方選手キャラクタとして選出しない。例えば、第1の受取位置候補70に対応する味方選手キャラクタ及び第2の受取位置候補70に対応する味方選手キャラクタとして選出されている味方選手キャラクタは、第3の受取位置候補70に対応する味方選手キャラクタとして選出されない。
【0087】
なお、受取位置候補70に最も近い味方選手キャラクタと、受取位置候補70と、の間の距離が所定距離以上である場合、制御部14は、その受取位置候補70に関し、受取位置候補に対応する味方選手キャラクタを選出しないようにしてもよい。また、味方選手キャラクタの基本位置と受取位置候補70との間の距離が所定距離以上である場合にも、制御部14は、その味方選手キャラクタを、該受取位置候補70に対応する味方選手キャラクタとして選出しないようにしてもよい。大きく離れた受取位置候補まで味方選手キャラクタが移動したり、基本位置から大きく離れた受取位置候補まで味方選手キャラクタが移動したりしてしまうと、ユーザに違和感を感じさせてしまうおそれがある。この点、このようにすれば、そのような不都合が発生しないように図ることが可能になる。
【0088】
ところで、ステップS202の処理とステップS203の処理との順番を入れ替えるようにしてもよい。すなわち、ステップS203の処理を実行した後でステップS202の処理を実行するようにしてもよい。この場合、ステップS203の処理では、ステップS201で設定された受取位置候補70の各々について、該受取位置候補70に対応する味方選手キャラクタを選出することになる。
【0089】
ステップS202及びS203の処理が実行された後、制御部14(キャラクタ制御部68)は、ステップS202において選出された受取位置候補70に向けて、ステップS203において該受取位置候補70に対応する味方選手キャラクタとして選出された味方選手キャラクタを移動させる(S204)。以上で図11に示す処理の説明を終了する。図11に示す処理が実行されることによって、例えば図6に示すような状況において、選手キャラクタ48Bが受取位置候補70Eまで移動するようになる。
【0090】
図10に示すように、ステップS102の処理が実行された後、制御部14は敵選手キャラクタの状態(例えば位置及び移動方向)を更新する(S103)。なお、ここでは、敵チームに所属する選手キャラクタ50のことを「敵選手キャラクタ」と呼んでいる。例えば、制御部14はAIに従って敵選手キャラクタの状態を更新する。
【0091】
ステップS103の処理が実行された後、制御部14は得点データや経過時間データを更新する(S104)。例えば、制御部14はボール46がゴール44内に入ったか否かを判定し、その判定結果に基づいて得点データを更新する。
【0092】
ステップS104の処理が実行された後、制御部14はゲーム画面を更新する(S105)。例えば、制御部14は、仮想カメラ52から見たゲーム空間40を表すゲーム画面をVRAM上に生成する。VRAM上に生成されたゲーム画面は表示部32に表示される。以上で図10に示す処理の説明を終了する。
【0093】
以上説明したゲーム装置10によれば、例えば、ボール46を保持している選手キャラクタ48の付近のフリースペースに向かって味方選手キャラクタが近づいてくるようになる。その結果、ゲーム装置10によれば、ユーザが味方選手キャラクタにパスをつなぎやすくなるように支援することが可能になる。
【0094】
また、ゲーム装置10では、ボール46を保持している選手キャラクタ48の位置と所定の位置関係を有する複数の位置が該選手キャラクタ48からのパスを受け取るための受取位置候補70として設定される。そして、それらの受取位置候補70のうちから、フリースペース内にある受取位置候補70が選出され、選出された受取位置候補70に向けて味方選手キャラクタが移動するようになっている。ボール46を保持している選手キャラクタ48の付近のフリースペースを見つける方法としては、ボール46を保持している選手キャラクタ48の位置と所定の位置関係を有する位置に限らずに、自由にフリースペースを探す方法を採用することも考えられる。しかしながら、この方法を採用した場合には、非常に近接する複数のフリースペースが検出されてしまうおそれがある。そして、それらのフリースペースに向けて複数の味方選手キャラクタを移動させてしまうと、非常に近接する領域に複数の味方選手キャラクタが移動することになってしまい、却って味方選手キャラクタが邪魔になってしまうおそれがある。この点、ゲーム装置10によれば、このような不都合が生じないように図ることが可能になる。
【0095】
なお、本発明は以上に説明した実施の形態に限定されるものではない。
【0096】
[1]例えば、受取位置候補設定部62は、ボール46を保持している選手キャラクタ48の移動方向(又は正面方向)を考慮して、受取位置候補70を設定するようにしてもよい。例えば、図7に示す例の場合、方向72Aが、ボール46を保持している選手キャラクタ48の移動方向(又は正面方向)と一致するようにして設定されるようにしてもよい。なお、この場合、方向72B〜72Gと方向72Aとの相対関係は、図7に示す例と同様になる。すなわち、例えば、方向72Bは方向72Aとは逆方向に設定される。このため、方向72Bは、ボール46を保持している選手キャラクタ48の移動方向(又は正面方向)の逆方向に設定されることになる。
【0097】
このようにすれば、ボール46を保持している選手キャラクタ48の移動方向(又は正面方向)を考慮して、受取位置候補70が設定されるようになる。その結果、他の選手キャラクタ48(味方選手キャラクタ)が、ボール46を保持している選手キャラクタ48の移動方向(又は正面方向)を考慮して、パスを受け取りにくるようになる。
【0098】
[2]例えば、受取位置候補設定部62は、ボール46を保持している選手キャラクタ48の位置の代わりに、ボール46の位置を用いるようにしてもよい。
【0099】
例えば、ユーザキャラクタがドリブルを行っている場合、ユーザはユーザキャラクタの位置よりもボール56の位置に注目する場合がある。この点、受取位置候補がユーザキャラクタの位置に基づいて設定されるようになっていると、例えば、ユーザキャラクタのドリブルが大きい場合(すなわち、ユーザキャラクタが、ユーザキャラクタとボール56との間の距離が比較的長くなるようにして、ドリブルを行っている場合)等において、ユーザが受取位置候補を把握しにくくなってしまい、受取位置候補に基づく位置に向けて移動してくる味方選手キャラクタ(すなわち、パスを受け取るために近づいてくる味方選手キャラクタ)を把握しにくくなってしまうおそれもある。この点、以上のようにすれば、ユーザがユーザキャラクタの位置よりもボール56の位置に注目してゲームをプレイする場合であっても、パスを受け取るために近づいてくる味方選手キャラクタを把握しにくくならないように図ることが可能になる。
【0100】
[3]例えば、ボール46を保持している選手キャラクタ48の位置と、受取位置候補70と、の間の距離をユーザが指定できるようにしてもよい。すなわち、ボール46を保持している選手キャラクタ48の位置と、受取位置候補70と、の間の距離に関するパラメータがゲームデータ記憶部60に記憶されるようにし、受取位置候補設定部62は、ボール46を保持している選手キャラクタ48の位置と、受取位置候補70と、の間の距離を上記のパラメータに基づいて設定するようにしてもよい。そして、例えばオプション画面(設定画面)等において、ユーザが上記のパラメータの値を変更できるようにしてもよい。すなわち、ユーザによって行われた変更操作に基づいて、上記のパラメータの値が変更されるようにしてもよい。
【0101】
[4]例えば、受取位置選出部64によって選出された受取位置候補70に基づく位置まで、キャラクタ選出部66によって該受取位置候補70に対応する味方選手キャラクタとして選出された選手キャラクタ48が移動した場合、該選手キャラクタ48をゲーム画面においてユーザに案内するようにしてもよい。例えば、受取位置候補70に基づく位置まで移動する選手キャラクタ48を区別表示することによって、ユーザに案内するようにしてもよい。具体的には、受取位置候補70に基づく位置まで移動する選手キャラクタ48の表示態様を変えるようにしてもよい。すなわち、受取位置候補70に基づく位置まで移動する選手キャラクタ48が目立つように、例えば、選手キャラクタ48の色を変えたり、選手キャラクタ48にエフェクトを施したりするようにしてもよい。あるいは、選手キャラクタ48の付近(すなわち、選手キャラクタ48の位置に基づいて決定される位置)に所定の画像(標識)を表示するようにしてもよい。このようにすれば、パスを受け取りにきた選手キャラクタ48をユーザは把握できるようになり、ユーザが他の選手キャラクタ48にパスをよりつなぎやすくなる。
【0102】
[5]例えば、ゲーム空間は、2つの座標軸が設定された仮想2次元空間であってもよい。すなわち、ゲーム空間は、選手キャラクタやボールの位置などが2つの座標要素で管理されるような仮想2次元空間であってもよい。
【0103】
[6]例えば、本発明は、サッカーゲーム以外のスポーツゲーム(例えばバスケットボールゲーム、アイスホッケーゲーム、又は野球ゲーム等)にも適用することができる。また、本発明は、スポーツゲーム以外のゲームにも適用することができる。
【符号の説明】
【0104】
10 ゲーム装置、11 家庭用ゲーム機、12 バス、14 制御部、16 主記憶、18 画像処理部、20 入出力処理部、22 音声処理部、24 光ディスクドライブ、26 ハードディスク、28 通信インタフェース、30 コントローラ、32 表示部、34 音声出力部、36 光ディスク、40 ゲーム空間、42 フィールド、44 ゴール、46 ボール、48,48A,48B,50,50A,50B 選手キャラクタ、52 仮想カメラ、54 カーソル、60 ゲームデータ記憶部、62 受取位置候補設定部、64 受取位置選出部、66 キャラクタ選出部、68 キャラクタ制御部、70A,70B,70C,70D,70E,70F,70G,70H 受取位置候補。
【特許請求の範囲】
【請求項1】
移動物体を用いて行われる競技が、ユーザによって操作されるユーザキャラクタグループと、敵キャラクタグループと、の間で行われるゲームを実行するゲーム装置において、
前記ユーザキャラクタグループに所属する複数のキャラクタの各々の位置と、前記敵キャラクタグループに所属する複数のキャラクタの各々の位置と、に関する位置データを記憶する記憶手段に記憶される位置データを取得する手段と、
前記ユーザキャラクタグループに所属するいずれかのキャラクタが前記移動物体を保持している場合、前記移動物体を保持しているキャラクタの周辺領域内の複数の位置を、前記移動物体を保持しているキャラクタからのパスを前記ユーザキャラクタグループに所属する他のキャラクタが受け取るための受取位置候補として設定する設定手段と、
前記設定手段によって設定された受取位置候補のうちの少なくとも一つを、前記敵キャラクタグループに所属するキャラクタの位置に基づいて選出する受取位置選出手段と、
前記ユーザキャラクタグループに所属する、前記移動物体を保持しているキャラクタ以外のキャラクタのうちから、前記受取位置候補に対応するキャラクタを、該受取位置候補の位置と、前記ユーザキャラクタグループに所属する、前記移動物体を保持しているキャラクタ以外のキャラクタの位置と、に基づいて選出するキャラクタ選出手段と、
前記受取位置選出手段によって選出された受取位置候補に基づく位置に向けて、前記キャラクタ選出手段によって該受取位置候補に対応するキャラクタとして選出されたキャラクタを移動させるキャラクタ制御手段と、
を含むことを特徴とするゲーム装置。
【請求項2】
請求項1に記載のゲーム装置において、
前記設定手段は、前記移動物体を保持しているキャラクタが移動した場合、前記移動物体を保持しているキャラクタの移動後位置の周辺領域内の複数の位置を前記受取位置候補として設定することによって、前記受取位置候補を、前記移動物体を保持しているキャラクタに従動させることを特徴とするゲーム装置。
【請求項3】
請求項1又は2に記載のゲーム装置において、
前記設定手段は、前記移動物体を保持しているキャラクタの周辺領域内の、該キャラクタの位置と所定の相対位置関係を有する複数の位置を前記受取位置候補として設定することを特徴とするゲーム装置。
【請求項4】
請求項1乃至3のいずれかに記載のゲーム装置において、
前記移動物体を保持しているキャラクタの周辺領域内の複数の位置は、前記移動物体を保持しているキャラクタの位置を囲むように設定され、
前記設定手段は、前記移動物体を保持しているキャラクタの位置を囲むような複数の位置を前記受取位置候補として設定する、
ことを特徴とするゲーム装置。
【請求項5】
請求項4に記載のゲーム装置において、
前記移動物体を保持しているキャラクタの周辺領域内の複数の位置は、前記移動物体を保持しているキャラクタの位置から複数の所定方向に伸びる各直線上に設定される位置を含み、
前記設定手段は、前記移動物体を保持しているキャラクタの位置から前記複数の所定方向に伸びる各直線上に設定される位置を前記受取位置候補として設定する、
ことを特徴とするゲーム装置。
【請求項6】
請求項5に記載のゲーム装置において、
前記複数の所定方向は、第1方向と、前記第1方向の逆方向である第2方向と、前記第1方向と直交する第3方向と、前記第3方向の逆方向である第4方向と、前記第1方向と前記第3方向との間の方向である第5方向と、前記第2方向と前記第3方向との間の方向である第6方向と、前記第1方向と前記第4方向との間の方向である第7方向と、前記第2方向と前記第4方向との間の方向である第8方向と、を含むことを特徴とするゲーム装置。
【請求項7】
請求項1乃至6に記載のゲーム装置において、
前記受取位置選出手段によって選出された受取位置候補に基づく位置に向けて移動するキャラクタをゲーム画面において前記ユーザに案内する手段を含むことを特徴とするゲーム装置。
【請求項8】
移動物体を用いて行われる競技が、ユーザによって操作されるユーザキャラクタグループと、敵キャラクタグループと、の間で行われるゲームを実行するゲーム装置の制御方法において、
前記ユーザキャラクタグループに所属する複数のキャラクタの各々の位置と、前記敵キャラクタグループに所属する複数のキャラクタの各々の位置と、に関する位置データを記憶する記憶手段に記憶される位置データを取得するステップと、
前記ユーザキャラクタグループに所属するいずれかのキャラクタが前記移動物体を保持している場合、前記移動物体を保持しているキャラクタの位置の周辺領域内の複数の位置を、前記移動物体を保持しているキャラクタからのパスを前記ユーザキャラクタグループに所属する他のキャラクタが受け取るための受取位置候補として設定する設定ステップと、
前記設定ステップによって設定された受取位置候補のうちの少なくとも一つを、前記敵キャラクタグループに所属するキャラクタの位置に基づいて選出する受取位置選出ステップと、
前記ユーザキャラクタグループに所属する、前記移動物体を保持しているキャラクタ以外のキャラクタのうちから、前記受取位置候補に対応するキャラクタを、該受取位置候補の位置と、前記ユーザキャラクタグループに所属する、前記移動物体を保持しているキャラクタ以外のキャラクタの位置と、に基づいて選出するキャラクタ選出ステップと、
前記受取位置選出ステップによって選出された受取位置候補に基づく位置に向けて、前記キャラクタ選出ステップによって該受取位置候補に対応するキャラクタとして選出されたキャラクタを移動させるキャラクタ制御ステップと、
を含むことを特徴とするゲーム装置の制御方法。
【請求項9】
移動物体を用いて行われる競技が、ユーザによって操作されるユーザキャラクタグループと、敵キャラクタグループと、の間で行われるゲームを実行するゲーム装置としてコンピュータを機能させるためのプログラムであって、
前記ユーザキャラクタグループに所属する複数のキャラクタの各々の位置と、前記敵キャラクタグループに所属する複数のキャラクタの各々の位置と、に関する位置データを記憶する記憶手段に記憶される位置データを取得する手段、
前記ユーザキャラクタグループに所属するいずれかのキャラクタが前記移動物体を保持している場合、前記移動物体を保持しているキャラクタの位置の周辺領域内の複数の位置を、前記移動物体を保持しているキャラクタからのパスを前記ユーザキャラクタグループに所属する他のキャラクタが受け取るための受取位置候補として設定する設定手段、
前記設定手段によって設定された受取位置候補のうちの少なくとも一つを、前記敵キャラクタグループに所属するキャラクタの位置に基づいて選出する受取位置選出手段、
前記ユーザキャラクタグループに所属する、前記移動物体を保持しているキャラクタ以外のキャラクタのうちから、前記受取位置候補に対応するキャラクタを、該受取位置候補の位置と、前記ユーザキャラクタグループに所属する、前記移動物体を保持しているキャラクタ以外のキャラクタの位置と、に基づいて選出するキャラクタ選出手段、及び、
前記受取位置選出手段によって選出された受取位置候補に基づく位置に向けて、前記キャラクタ選出手段によって該受取位置候補に対応するキャラクタとして選出されたキャラクタを移動させるキャラクタ制御手段、
として前記コンピュータを機能させるためのプログラム。
【請求項1】
移動物体を用いて行われる競技が、ユーザによって操作されるユーザキャラクタグループと、敵キャラクタグループと、の間で行われるゲームを実行するゲーム装置において、
前記ユーザキャラクタグループに所属する複数のキャラクタの各々の位置と、前記敵キャラクタグループに所属する複数のキャラクタの各々の位置と、に関する位置データを記憶する記憶手段に記憶される位置データを取得する手段と、
前記ユーザキャラクタグループに所属するいずれかのキャラクタが前記移動物体を保持している場合、前記移動物体を保持しているキャラクタの周辺領域内の複数の位置を、前記移動物体を保持しているキャラクタからのパスを前記ユーザキャラクタグループに所属する他のキャラクタが受け取るための受取位置候補として設定する設定手段と、
前記設定手段によって設定された受取位置候補のうちの少なくとも一つを、前記敵キャラクタグループに所属するキャラクタの位置に基づいて選出する受取位置選出手段と、
前記ユーザキャラクタグループに所属する、前記移動物体を保持しているキャラクタ以外のキャラクタのうちから、前記受取位置候補に対応するキャラクタを、該受取位置候補の位置と、前記ユーザキャラクタグループに所属する、前記移動物体を保持しているキャラクタ以外のキャラクタの位置と、に基づいて選出するキャラクタ選出手段と、
前記受取位置選出手段によって選出された受取位置候補に基づく位置に向けて、前記キャラクタ選出手段によって該受取位置候補に対応するキャラクタとして選出されたキャラクタを移動させるキャラクタ制御手段と、
を含むことを特徴とするゲーム装置。
【請求項2】
請求項1に記載のゲーム装置において、
前記設定手段は、前記移動物体を保持しているキャラクタが移動した場合、前記移動物体を保持しているキャラクタの移動後位置の周辺領域内の複数の位置を前記受取位置候補として設定することによって、前記受取位置候補を、前記移動物体を保持しているキャラクタに従動させることを特徴とするゲーム装置。
【請求項3】
請求項1又は2に記載のゲーム装置において、
前記設定手段は、前記移動物体を保持しているキャラクタの周辺領域内の、該キャラクタの位置と所定の相対位置関係を有する複数の位置を前記受取位置候補として設定することを特徴とするゲーム装置。
【請求項4】
請求項1乃至3のいずれかに記載のゲーム装置において、
前記移動物体を保持しているキャラクタの周辺領域内の複数の位置は、前記移動物体を保持しているキャラクタの位置を囲むように設定され、
前記設定手段は、前記移動物体を保持しているキャラクタの位置を囲むような複数の位置を前記受取位置候補として設定する、
ことを特徴とするゲーム装置。
【請求項5】
請求項4に記載のゲーム装置において、
前記移動物体を保持しているキャラクタの周辺領域内の複数の位置は、前記移動物体を保持しているキャラクタの位置から複数の所定方向に伸びる各直線上に設定される位置を含み、
前記設定手段は、前記移動物体を保持しているキャラクタの位置から前記複数の所定方向に伸びる各直線上に設定される位置を前記受取位置候補として設定する、
ことを特徴とするゲーム装置。
【請求項6】
請求項5に記載のゲーム装置において、
前記複数の所定方向は、第1方向と、前記第1方向の逆方向である第2方向と、前記第1方向と直交する第3方向と、前記第3方向の逆方向である第4方向と、前記第1方向と前記第3方向との間の方向である第5方向と、前記第2方向と前記第3方向との間の方向である第6方向と、前記第1方向と前記第4方向との間の方向である第7方向と、前記第2方向と前記第4方向との間の方向である第8方向と、を含むことを特徴とするゲーム装置。
【請求項7】
請求項1乃至6に記載のゲーム装置において、
前記受取位置選出手段によって選出された受取位置候補に基づく位置に向けて移動するキャラクタをゲーム画面において前記ユーザに案内する手段を含むことを特徴とするゲーム装置。
【請求項8】
移動物体を用いて行われる競技が、ユーザによって操作されるユーザキャラクタグループと、敵キャラクタグループと、の間で行われるゲームを実行するゲーム装置の制御方法において、
前記ユーザキャラクタグループに所属する複数のキャラクタの各々の位置と、前記敵キャラクタグループに所属する複数のキャラクタの各々の位置と、に関する位置データを記憶する記憶手段に記憶される位置データを取得するステップと、
前記ユーザキャラクタグループに所属するいずれかのキャラクタが前記移動物体を保持している場合、前記移動物体を保持しているキャラクタの位置の周辺領域内の複数の位置を、前記移動物体を保持しているキャラクタからのパスを前記ユーザキャラクタグループに所属する他のキャラクタが受け取るための受取位置候補として設定する設定ステップと、
前記設定ステップによって設定された受取位置候補のうちの少なくとも一つを、前記敵キャラクタグループに所属するキャラクタの位置に基づいて選出する受取位置選出ステップと、
前記ユーザキャラクタグループに所属する、前記移動物体を保持しているキャラクタ以外のキャラクタのうちから、前記受取位置候補に対応するキャラクタを、該受取位置候補の位置と、前記ユーザキャラクタグループに所属する、前記移動物体を保持しているキャラクタ以外のキャラクタの位置と、に基づいて選出するキャラクタ選出ステップと、
前記受取位置選出ステップによって選出された受取位置候補に基づく位置に向けて、前記キャラクタ選出ステップによって該受取位置候補に対応するキャラクタとして選出されたキャラクタを移動させるキャラクタ制御ステップと、
を含むことを特徴とするゲーム装置の制御方法。
【請求項9】
移動物体を用いて行われる競技が、ユーザによって操作されるユーザキャラクタグループと、敵キャラクタグループと、の間で行われるゲームを実行するゲーム装置としてコンピュータを機能させるためのプログラムであって、
前記ユーザキャラクタグループに所属する複数のキャラクタの各々の位置と、前記敵キャラクタグループに所属する複数のキャラクタの各々の位置と、に関する位置データを記憶する記憶手段に記憶される位置データを取得する手段、
前記ユーザキャラクタグループに所属するいずれかのキャラクタが前記移動物体を保持している場合、前記移動物体を保持しているキャラクタの位置の周辺領域内の複数の位置を、前記移動物体を保持しているキャラクタからのパスを前記ユーザキャラクタグループに所属する他のキャラクタが受け取るための受取位置候補として設定する設定手段、
前記設定手段によって設定された受取位置候補のうちの少なくとも一つを、前記敵キャラクタグループに所属するキャラクタの位置に基づいて選出する受取位置選出手段、
前記ユーザキャラクタグループに所属する、前記移動物体を保持しているキャラクタ以外のキャラクタのうちから、前記受取位置候補に対応するキャラクタを、該受取位置候補の位置と、前記ユーザキャラクタグループに所属する、前記移動物体を保持しているキャラクタ以外のキャラクタの位置と、に基づいて選出するキャラクタ選出手段、及び、
前記受取位置選出手段によって選出された受取位置候補に基づく位置に向けて、前記キャラクタ選出手段によって該受取位置候補に対応するキャラクタとして選出されたキャラクタを移動させるキャラクタ制御手段、
として前記コンピュータを機能させるためのプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2013−252(P2013−252A)
【公開日】平成25年1月7日(2013.1.7)
【国際特許分類】
【出願番号】特願2011−132728(P2011−132728)
【出願日】平成23年6月14日(2011.6.14)
【特許番号】特許第5103544号(P5103544)
【特許公報発行日】平成24年12月19日(2012.12.19)
【出願人】(506113602)株式会社コナミデジタルエンタテインメント (1,441)
【Fターム(参考)】
【公開日】平成25年1月7日(2013.1.7)
【国際特許分類】
【出願日】平成23年6月14日(2011.6.14)
【特許番号】特許第5103544号(P5103544)
【特許公報発行日】平成24年12月19日(2012.12.19)
【出願人】(506113602)株式会社コナミデジタルエンタテインメント (1,441)
【Fターム(参考)】
[ Back to top ]