説明

行動制御データ生成システム、行動制御データの生成方法、情報処理装置、情報処理装置の制御方法、及びプログラム

【課題】複数のキャラクタオブジェクト又は複数のキャラクタオブジェクトグループがゲーム空間内で移動物体オブジェクトを用いた競技を行うゲームにおいてコンピュータが操作するキャラクタオブジェクト又はキャラクタオブジェクトグループを人が操作しているかのように行動させることが可能な行動制御データ生成システムを提供すること。
【解決手段】基礎データ取得手段(41)は、移動物体オブジェクトと所定のオブジェクトのいずれかとの衝突に対応する第1タイミングと、移動物体オブジェクトと所定のオブジェクトのいずれかとの次回の衝突に対応する第2タイミングと、の間にユーザが行った操作に関する操作データと、複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと移動物体オブジェクトとの第1タイミングにおける状態に関する状態データと、の組合せを基礎データとして取得する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、行動制御データ生成システム、行動制御データの生成方法、情報処理装置、情報処理装置の制御方法、及びプログラムに関する。
【背景技術】
【0002】
例えば、ユーザが操作するキャラクタオブジェクト又はキャラクタオブジェクトグループと、コンピュータが操作するキャラクタオブジェクト又はキャラクタオブジェクトグループと、が行動するゲームが知られている。また、このようなゲームにおいて、コンピュータが操作するキャラクタオブジェクト又はキャラクタオブジェクトグループを人が操作しているかのように行動させるための技術が知られている。例えば、コンピュータが操作するキャラクタオブジェクト又はキャラクタオブジェクトグループが熟練者が操作しているかのように行動するようになれば、ユーザは熟練者との仮想対戦を楽しむことができる。
【0003】
特許文献1には、格闘ゲームにおいてコンピュータが操作するキャラクタの行動を制御するために用いられる行動制御データを、人が格闘ゲームを実際にプレイした際に行ったゲーム操作に基づいて生成することによって、コンピュータが操作するキャラクタを人が操作しているかのように行動させる技術が開示されている。具体的には、人が操作しているキャラクタの攻撃(例えばパンチ又はキックなど)が対戦相手のキャラクタに当たった場合に人が行ったゲーム操作に着目して、行動制御データを生成することが開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平11−4969号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ボールなどの移動物体を用いて行われる競技(例えばサッカー又はテニスなど)のゲームにおいても、コンピュータが操作するキャラクタオブジェクト又はキャラクタオブジェクトグループを人が操作しているかのように行動させることが強く望まれる。
【0006】
この点、移動物体を用いて行われる競技のゲームは格闘ゲームと異なるため、特許文献1に開示された技術を、移動物体を用いて行われる競技のゲームにそのまま適用することはできない。すなわち、移動物体を用いて行われる競技のゲームは、対戦相手のキャラクタオブジェクト又はキャラクタオブジェクトグループに攻撃を当てることを目指してゲーム操作が行われるゲームではない。このため、特許文献1に開示された技術、すなわち、人が操作するキャラクタオブジェクトの攻撃が対戦相手のキャラクタオブジェクトに当たった場合に人が行ったゲーム操作に着目して行動制御データを生成する技術を、移動物体を用いて行われる競技のゲームにそのまま適用することはできない。
【0007】
したがって、移動物体を用いて行われる競技のゲームにおいてコンピュータが操作するキャラクタオブジェクト又はキャラクタオブジェクトグループを人が操作しているかのように行動させるためには、移動物体を用いて行われる競技のゲームならではの仕組みが必要となる。
【0008】
本発明は上記課題に鑑みてなされたものであり、その目的は、複数のキャラクタオブジェクト又は複数のキャラクタオブジェクトグループがゲーム空間内で移動物体オブジェクトを用いた競技を行うゲームにおいて、コンピュータが操作するキャラクタオブジェクト又はキャラクタオブジェクトグループを人が操作しているかのように行動させることが可能な行動制御データ生成システム、行動制御データの生成方法、情報処理装置、情報処理装置の制御方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【0009】
上記課題を解決するために、本発明に係る行動制御データ生成システムは、複数のキャラクタオブジェクト又は複数のキャラクタオブジェクトグループがゲーム空間内で移動物体オブジェクトを用いた競技を行うゲームを人がいずれかのキャラクタオブジェクト又はいずれかのキャラクタオブジェクトグループを操作してプレイした場合の、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの状態の変化に関するデータと、前記人が行った操作に関するデータと、を取得するプレイデータ取得手段と、前記ゲームにおいてコンピュータが操作するキャラクタオブジェクト又はキャラクタオブジェクトグループの行動を制御するために用いられる行動制御データの生成に供される基礎データを、前記プレイデータ取得手段によって取得されたデータに基づいて取得する基礎データ取得手段と、前記基礎データ取得手段によって取得された基礎データに基づいて、前記行動制御データを生成する行動制御データ生成手段と、を含み、前記基礎データ取得手段は、前記移動物体オブジェクトと前記ゲーム空間に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの衝突に対応する第1タイミングと、前記移動物体オブジェクトと前記ゲーム空間に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの次回の衝突に対応する第2タイミングと、の間に前記人が行った操作に関する操作データと、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの前記第1タイミングにおける状態に関する状態データと、の組合せを前記基礎データとして取得することを特徴とする。
【0010】
また、本発明に係る行動制御データの生成方法は、複数のキャラクタオブジェクト又は複数のキャラクタオブジェクトグループがゲーム空間内で移動物体オブジェクトを用いた競技を行うゲームを人がいずれかのキャラクタオブジェクト又はいずれかのキャラクタオブジェクトグループを操作してプレイした場合の、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの状態の変化に関するデータと、前記人が行った操作に関するデータと、を取得するプレイデータ取得ステップと、前記ゲームにおいてコンピュータによって操作されるキャラクタオブジェクト又はキャラクタオブジェクトグループの行動を制御するために用いられる行動制御データの生成に供される基礎データを、前記プレイデータ取得ステップによって取得されたデータに基づいて取得する基礎データ取得ステップと、前記基礎データ取得ステップによって取得された基礎データに基づいて、前記行動制御データを生成する行動制御データ生成ステップと、を含み、前記基礎データ取得ステップは、前記移動物体オブジェクトと前記ゲーム空間内に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの衝突に対応する第1タイミングと、前記移動物体オブジェクトと前記ゲーム空間内に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの次回の衝突に対応する第2タイミングと、の間に前記人が行った操作に関する操作データと、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの前記第1タイミングにおける状態に関する状態データと、の組合せを前記基礎データとして取得することを特徴とする。
【0011】
また、本発明に係るプログラムは、複数のキャラクタオブジェクト又は複数のキャラクタオブジェクトグループがゲーム空間内で移動物体オブジェクトを用いた競技を行うゲームを人がいずれかのキャラクタオブジェクト又はいずれかのキャラクタオブジェクトグループを操作してプレイした場合の、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの状態の変化に関するデータと、前記人が行った操作に関するデータと、を取得するプレイデータ取得手段、前記ゲームにおいてコンピュータが操作するキャラクタオブジェクト又はキャラクタオブジェクトグループの行動を制御するために用いられる行動制御データの生成に供される基礎データを、前記プレイデータ取得手段によって取得されたデータに基づいて取得する基礎データ取得手段、及び、前記基礎データ取得手段によって取得された基礎データに基づいて、前記行動制御データを生成する行動制御データ生成手段、としてコンピュータを機能させ、前記基礎データ取得手段は、前記移動物体オブジェクトと前記ゲーム空間内に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの衝突に対応する第1タイミングと、前記移動物体オブジェクトと前記ゲーム空間内に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの次回の衝突に対応する第2タイミングと、の間に前記人が行った操作に関する操作データと、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの前記第1タイミングにおける状態に関する状態データと、の組合せを前記基礎データとして取得することを特徴とするプログラムである。また、本発明に係る情報記憶媒体は、上記プログラムを記録したコンピュータ読取可能な情報記憶媒体である。
【0012】
また、本発明に係る情報処理装置は、複数のキャラクタオブジェクト又は複数のキャラクタオブジェクトグループがゲーム空間内で移動物体オブジェクトを用いた競技を行うゲームを人がいずれかのキャラクタオブジェクト又はいずれかのキャラクタオブジェクトグループを操作してプレイした場合の、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの状態の変化に関するデータと、前記人が行った操作に関するデータと、を取得するプレイデータ取得手段と、前記ゲームにおいてコンピュータが操作するキャラクタオブジェクト又はキャラクタオブジェクトグループの行動を制御するために用いられる行動制御データの生成に供される基礎データを、前記プレイデータ取得手段によって取得されたデータに基づいて取得する基礎データ取得手段と、を含み、前記基礎データ取得手段は、前記移動物体オブジェクトと前記ゲーム空間内に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの衝突に対応する第1タイミングと、前記移動物体オブジェクトと前記ゲーム空間内に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの次回の衝突に対応する第2タイミングと、の間に前記人が行った操作に関する操作データと、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの前記第1タイミングにおける状態に関する状態データと、の組合せを前記基礎データとして取得することを特徴とする。
【0013】
また、本発明に係る情報処理装置の制御方法は、複数のキャラクタオブジェクト又は複数のキャラクタオブジェクトグループがゲーム空間内で移動物体オブジェクトを用いた競技を行うゲームを人がいずれかのキャラクタオブジェクト又はいずれかのキャラクタオブジェクトグループを操作してプレイした場合の、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの状態の変化に関するデータと、前記人が行った操作に関するデータと、を取得するプレイデータ取得ステップと、前記ゲームにおいてコンピュータが操作するキャラクタオブジェクト又はキャラクタオブジェクトグループの行動を制御するために用いられる行動制御データの生成に供される基礎データを、前記プレイデータ取得ステップによって取得されたデータに基づいて取得する基礎データ取得ステップと、を含み、前記基礎データ取得ステップは、前記移動物体オブジェクトと前記ゲーム空間内に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの衝突に対応する第1タイミングと、前記移動物体オブジェクトと前記ゲーム空間内に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの次回の衝突に対応する第2タイミングと、の間に前記人が行った操作に関する操作データと、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの前記第1タイミングにおける状態に関する状態データと、の組合せを前記基礎データとして取得することを特徴とする。
【0014】
また、本発明に係るプログラムは、複数のキャラクタオブジェクト又は複数のキャラクタオブジェクトグループがゲーム空間内で移動物体オブジェクトを用いた競技を行うゲームを人がいずれかのキャラクタオブジェクト又はいずれかのキャラクタオブジェクトグループを操作してプレイした場合の、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの状態の変化に関するデータと、前記人が行った操作に関するデータと、を取得するプレイデータ取得手段、及び、前記ゲームにおいてコンピュータが操作するキャラクタオブジェクト又はキャラクタオブジェクトグループの行動を制御するために用いられる行動制御データの生成に供される基礎データを、前記プレイデータ取得手段によって取得されたデータに基づいて取得する基礎データ取得手段、としてコンピュータを機能させ、前記基礎データ取得手段は、前記移動物体オブジェクトと前記ゲーム空間内に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの衝突に対応する第1タイミングと、前記移動物体オブジェクトと前記ゲーム空間内に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの次回の衝突に対応する第2タイミングと、の間に前記人が行った操作に関する操作データと、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの前記第1タイミングにおける状態に関する状態データと、の組合せを前記基礎データとして取得することを特徴とするプログラムである。また、本発明に係る情報記憶媒体は、上記プログラムを記録したコンピュータ読取可能な情報記憶媒体である。
【0015】
本発明によれば、複数のキャラクタオブジェクト又は複数のキャラクタオブジェクトグループがゲーム空間内で移動物体オブジェクトを用いた競技を行うゲームにおいて、コンピュータが操作するキャラクタオブジェクト又はキャラクタオブジェクトグループを人が操作しているかのように行動させることが可能になる。なお、「移動物体オブジェクト」とは、例えばボール、パック、又はシャトルコック等の移動物体を表すオブジェクトである。「所定のオブジェクト」には、例えばキャラクタオブジェクトである。また、「所定のオブジェクト」には、例えば、競技を行うために必要な道具を表す競技具オブジェクト(ただし上記移動物体オブジェクトを除く)が含まれる。「競技具オブジェクト」は、例えばサッカーのゴールのように地面等に配置される物を表すオブジェクトであってもよいし、例えばアイスホッケーのスティックやテニスのラケット等のように移動物体を打つための物を表すオブジェクトであってもよい。
【0016】
また、本発明の一態様では、前記基礎データ取得手段は、前記操作データと、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの前記第1タイミングにおける状態に関する第1状態データと、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの前記第1タイミングより前のタイミング又は期間における状態に関する第2状態データと、の組合せを前記基礎データとして取得するようにしてもよい。
【0017】
また、本発明の一態様では、前記基礎データ取得手段は、前記操作データと、前記状態データと、前記第1タイミングよりも後に発生したゲームイベントに関するゲームイベントデータと、の組合せを前記基礎データとして取得するようにしてもよい。
【0018】
また、本発明の一態様では、前記基礎データ取得手段は、前記操作データと、前記状態データと、前記第1タイミングにおける前記競技の進行状況に関するデータと、の組合せを前記基礎データとして取得するようにしてもよい。
【0019】
また、本発明の一態様では、前記基礎データ取得手段は、前記操作データと、前記状態データと、前記第1タイミングまでの前記競技の途中結果に関するデータと、の組合せを前記基礎データとして取得するようにしてもよい。
【図面の簡単な説明】
【0020】
【図1】本発明の実施形態に係る行動制御データ生成システムの構成の一例を示す図である。
【図2】ゲーム画面の一例を示す図である。
【図3】ゲーム空間の一例を示す図である。
【図4】ゲームコントローラの一例を示す図である。
【図5】ゲームコントローラの一例を示す図である。
【図6】ゲームコントローラの各ボタンと、ユーザチームの注目選手キャラクタに関する制御と、の関係の一例を示す図である。
【図7】行動制御データ生成システムの機能ブロック図である。
【図8】プレイデータ取得部に含まれる機能ブロックの一例を示す図である。
【図9】基礎データを取得する場合に留意すべき点について説明するための図である。
【図10】サッカーゲームにおける場面の一例について説明するための図である。
【図11】サッカーゲームにおける場面の他の一例について説明するための図である。
【図12】基礎データの一例について説明するための図である。
【図13】行動制御データ生成システムで実行される処理の一例を示すフロー図である。
【図14】操作記憶領域の記憶内容の一例を示す図である。
【図15】注目選手制御データの一例を示す図である。
【図16】ゲーム装置において実行される処理の一例を示すフロー図である。
【図17】基礎データの他の一例について説明するための図である。
【図18】注目選手制御データの他の一例について説明するための図である。
【図19】ゲーム装置において実行される処理の一例を示す図である。
【図20】基礎データの他の一例を示す図である。
【図21】注目選手制御データの他の一例を示す図である。
【図22】基礎データの他の一例を示す図である。
【図23】注目選手制御データの他の一例を示す図である。
【図24】基礎データの他の一例を示す図である。
【図25】注目選手制御データの他の一例を示す図である。
【図26】本発明の実施形態に係る行動制御データ生成システムの構成の他の一例を示す図である。
【発明を実施するための形態】
【0021】
以下、本発明の実施形態の一例について図面に基づき詳細に説明する。
【0022】
[構成]
図1は、本発明の実施形態に係る行動制御データ生成システムの構成の一例を示す図である。図1に示すように、本実施形態に係る行動制御データ生成システム1は行動制御データ生成装置10を含む。
【0023】
行動制御データ生成装置10は、例えば、ゲームの開発者がゲームを開発するために用いるゲーム開発用の情報処理装置である。この情報処理装置はゲームのプログラミングなどを行うための機能を備える。さらに、この情報処理装置はゲームを実行するゲーム装置としての機能も備えており、この情報処理装置においてゲームをプレイすることも可能になっている。
【0024】
図1に示すように、行動制御データ生成装置10は、制御部11、主記憶部12、補助記憶部13、光ディスク再生部14、操作部15、表示部16、及び音声出力部17を含む。
【0025】
制御部11は例えばマイクロプロセッサを含む。制御部11はプログラムに従って情報処理を実行する。主記憶部12は例えばRAMを含む。主記憶部12には、補助記憶部13又は光ディスクから読み出されたプログラムやデータが記憶される。また、主記憶部12は、処理の過程で必要なデータを記憶するワークメモリとしても用いられる。補助記憶部13は例えばハードディスク装置を含む。光ディスク再生部14は、光ディスク18に記憶されたプログラムやデータを読み取る。
【0026】
操作部15は例えばキーボードやゲームコントローラなどを含む。表示部16は、例えば家庭用テレビ又は液晶モニタなどの表示装置であり、制御部11からの指示に従って画面を出力する。音声出力部17は、例えばスピーカ又はヘッドホンなどであり、制御部11からの指示に従って音声を出力する。
【0027】
上記の構成を有する行動制御データ生成システム1では、複数のキャラクタオブジェクト又は複数のキャラクタオブジェクトグループがゲーム空間内で移動物体オブジェクトを用いた競技を行うゲームにおいてコンピュータが操作するキャラクタオブジェクト又はキャラクタオブジェクトグループの行動を制御するために用いられる行動制御データが生成される。行動制御データ生成システム1では、コンピュータが操作するキャラクタオブジェクト又はキャラクタオブジェクトグループを人が操作しているかのように行動させるような行動制御データが生成される。
【0028】
以下では、ユーザが操作するチーム(キャラクタオブジェクトグループ)であるユーザチームと、コンピュータが操作するチーム(キャラクタオブジェクトグループ)であるコンピュータチームと、がサッカーの試合を行うサッカーゲームにおいてコンピュータチームの行動を制御するために用いられる行動制御データを生成する場合を例として、行動制御データ生成システム1の動作について説明する。
【0029】
[サッカーゲームについて]
行動制御データ生成システム1の動作を説明する前に、サッカーゲームについて説明しておく。
【0030】
図2はサッカーゲームのゲーム画面の一例を示す図であり、図3はゲーム空間の一例を示す図である。図3に示すゲーム空間20は仮想的な3次元空間になっている。図2に示すように、ゲーム画面には、所与の視点からゲーム空間20を見た様子が表示される。
【0031】
図3に示すように、ゲーム空間20には、サッカーフィールドを表すフィールドオブジェクト21(以下、単に「フィールド21」と記載する。)が配置される。フィールド21には、2本のサイドライン22と、2本のゴールライン23a,23bと、が表されている。以下では、2本のサイドライン22及び2本のゴールライン23a,23bによって囲まれる領域のことを「ピッチ」と呼ぶ。
【0032】
また、フィールド21には下記のオブジェクトが配置される。
(a)サッカーボールを表すボールオブジェクト24(移動物体オブジェクト)
(b)ユーザチームが守るべきゴールを表すゴールオブジェクト25a(競技具オブジェクト)
(c)コンピュータチームが守るべきゴールを表すゴールオブジェクト25b(競技具オブジェクト)
(d)ユーザチームに属するサッカー選手を表す選手キャラクタオブジェクト26
(e)コンピュータチームに属するサッカー選手を表す選手キャラクタオブジェクト27
【0033】
なお、以下では、ボールオブジェクト24のことを単に「ボール24」と記載する。また、ゴールオブジェクト25a又はゴールオブジェクト25bのことを単に「ゴール25a」又は「ゴール25b」と記載する。さらに、選手キャラクタオブジェクト26又は選手キャラクタオブジェクト27のことを単に「選手キャラクタ26」又は「選手キャラクタ27」と記載する。
【0034】
ボール24はゲーム空間20内を移動可能になっている。また、ボール24は、選手キャラクタ26(27)に近づくと、その選手キャラクタ26(27)に関連づけられる。選手キャラクタ26(27)にボール24が関連づけられると、その選手キャラクタ26(27)は「ボール24を保持している状態」になる。ボール24を保持している選手キャラクタ26(27)の移動動作はドリブル動作になる。
【0035】
ゴール25a内の領域にボール24が移動した場合、コンピュータチームの得点イベント(ユーザチームの失点イベント)が発生し、ゴール25b内の領域にボール24が移動した場合、ユーザチームの得点イベント(コンピュータチームの失点イベント)が発生する。
【0036】
また、コンピュータチームのゴール25bに対応するゴールラインであるゴールライン23bを越えてボール24がピッチの外に出た場合、ボール24に最後に接触した選手キャラクタがコンピュータチームに所属する選手キャラクタ27であるならば、ユーザチームのコーナーキックイベントが発生する。一方、ボール24に最後に接触した選手キャラクタがユーザチームに所属する選手キャラクタ26であるならば、コンピュータチームのゴールキックイベントが発生する。
【0037】
なお、図3では省略されているが、ゲーム空間20には、ユーザチームに属する11体の選手キャラクタ26と、コンピュータチームに属する11体の選手キャラクタ27と、が配置される。
【0038】
ユーザチームに属する11体の選手キャラクタ26のうちのいずれかが「注目選手キャラクタ」に設定される。ユーザチームの場合、注目選手キャラクタはユーザの操作対象であり、ユーザの操作に従って行動する。図2に示すゲーム画面に表示されているカーソル28は、ユーザチームの注目選手キャラクタを案内する役割を果たしている。ユーザはゲームコントローラを用いて、ユーザチームの注目選手キャラクタを操作する。
【0039】
図4及び図5は、サッカーゲームをプレイするために用いられるゲームコントローラの一例を示す図である。図4に示すように、ゲームコントローラ30の表面30aには方向ボタン31、ボタン32X,32Y,32A,32Bが備えられている。方向ボタン31は上指示部31U、下指示部31D、左指示部31L、及び右指示部31Rを含んでいる。上指示部31U、下指示部31D、左指示部31L、及び右指示部31Rの表面には、上下左右の各方向を示す矢印のマークが付されている。
【0040】
また、ボタン32Xには四角形のマークが付され、ボタン32Yには三角形のマークが付されている。さらに、ボタン32Aにはばつ印のマークが付され、ボタン32Bには円形のマークが付されている。
【0041】
また、図5に示すように、ゲームコントローラ30の奥側側面には、表面30a側左右にボタン33L,33Rがそれぞれ備えられており、裏面30b側左右にボタン34L,34Rがそれぞれ備えられている。ボタン33Lには「L1」との文字列が付され、ボタン33Rには「R1」との文字列が付されている。また、ボタン34Lには「L2」との文字列が付され、ボタン34Rには「R2」との文字列が付されている。
【0042】
図6は、ゲームコントローラ30の各ボタンと、ユーザチームの注目選手キャラクタに関する制御と、の関係の一例を示す図である。なお図6では、方向ボタン31以外のボタンが、ボタンに付されたマークによって示されている。
【0043】
ユーザが方向ボタン31を押下すると、ユーザチームの注目選手キャラクタは方向ボタン31の押下状態に対応する方向に移動する。なお、注目選手キャラクタがボール24を保持している場合、注目選手キャラクタは方向ボタン31の押下状態に対応する方向にドリブル動作を行う。
【0044】
ユーザチームの注目選手キャラクタがボール24を保持している状態でユーザがボタン32Aを押下した場合、注目選手キャラクタはパス動作を行う。また、ユーザチームの注目選手キャラクタがボール24を保持している状態でユーザがボタン32Bを押下した場合、注目選手キャラクタはセンタリング動作を行う。さらに、ユーザチームの注目選手キャラクタがボール24を保持している状態でユーザがボタン32Xを押下した場合、注目選手キャラクタはシュート動作を行う。
【0045】
また、ユーザがボタン33Lを押下した場合、注目選手キャラクタが、ユーザチームに属する11体の選手キャラクタ26のうちの他の選手キャラクタ26に切り替えられる。例えば、注目選手キャラクタになっている選手キャラクタ26に最も近い選手キャラクタ26が新たな注目選手キャラクタになる。
【0046】
なお以下では、同じチームに所属する注目選手キャラクタでない他の選手キャラクタ26(27)のことを「味方選手キャラクタ」と記載する。味方選手キャラクタは、味方選手キャラクタの行動を制御するためのデータ(例えばAI:人工知能)に従って行動する。
【0047】
コンピュータチームにおいても、コンピュータチームに属する11体の選手キャラクタ27のうちのいずれかが「注目選手キャラクタ」に設定される。また、コンピュータチームにおいても、注目選手キャラクタはコンピュータチームに属する選手キャラクタ27のうちで所定の条件で切り替えられる。
【0048】
コンピュータチームの場合、注目選手キャラクタの切り替えや行動は、注目選手キャラクタの切り替え及び行動を制御するためのデータ(例えばAI:人工知能)によって制御される。一方、味方選手キャラクタの行動は、味方選手キャラクタの行動を制御するためのデータ(例えばAI:人工知能)に従って制御される。なお、コンピュータチームの味方選手キャラクタの行動を制御するためのデータは、ユーザチームの味方選手キャラクタの行動を制御するためのデータと同一であってもよいし、異なっていてもよい。
【0049】
なお以下では、コンピュータチームの注目選手キャラクタの切り替え及び行動を制御するためのデータのことを「注目選手制御データ」と記載し、味方選手キャラクタの行動を制御するためのデータのことを「味方選手制御データ」と記載する。
【0050】
[注目選手制御データの生成について]
行動制御データ生成システム1では、コンピュータチームに属する注目選手キャラクタの切り替え及び行動の制御を人(例えばゲームの熟練者)が行っているかのように実行するような注目選手制御データが生成される。
【0051】
上述した行動制御データ生成装置10は、ゲームを実行するゲーム装置として機能を備えている。本実施形態の場合、行動制御データ生成装置10においてゲームの熟練者にユーザチームを操作してゲームをプレイさせることによって、熟練者のプレイデータが取得され、そのプレイデータに基づいて注目選手制御データが生成される。すなわち、熟練者のゲーム操作の傾向が反映された注目選手制御データが生成される。そして、この注目選手制御データを用いてコンピュータチームの注目選手キャラクタの切り替え及び行動が制御されることによって、コンピュータチームの注目選手キャラクタの切り替え及び行動の制御が熟練者によって行われているかのように実行される。
【0052】
以下、上記注目選手制御データを生成するための技術について説明する。
【0053】
図7は、行動制御データ生成システム1において実現される機能を示す機能ブロック図である。図7に示すように、行動制御データ生成システム1は、プレイデータ取得部40、基礎データ取得部41、及び行動制御データ生成部42を含む。これらプレイデータ取得部40、基礎データ取得部41、及び行動制御データ生成部42は行動制御データ生成装置10において実現される。
【0054】
プレイデータ取得部40は、例えば制御部11及び主記憶部12を主として実現される。プレイデータ取得部40は、複数のキャラクタオブジェクト又は複数のキャラクタオブジェクトグループが移動物体オブジェクトを用いた競技を行うゲームを人がいずれかのキャラクタオブジェクト又はいずれかのキャラクタオブジェクトグループを操作してプレイした場合のプレイデータを取得する。「プレイデータ」には、複数のキャラクタオブジェクト又は複数のキャラクタオブジェクトグループと移動物体オブジェクトとの状態の変化に関するデータと、人が行った操作に関するデータと、が含まれる。
【0055】
例えば上記サッカーゲームの注目選手制御データを生成する場合、プレイデータ取得部40は、人(例えばゲームの熟練者)がユーザチームを操作してプレイした場合のプレイデータを取得する。例えば下記に示すようなデータがプレイデータに含まれる。
(a)各動的オブジェクトの状態(例えば位置など)の変化に関するデータ
(b)ユーザチームの操作者が行ったゲーム操作に関するデータ
【0056】
なお、「動的オブジェクト」とは、ゲーム空間20内における位置や向きなどが変化するオブジェクトであり、「動的オブジェクト」には、ユーザチームに属する選手キャラクタ26と、コンピュータチームに属する選手キャラクタ27と、ボール24と、が含まれる。
【0057】
本実施形態の場合、プレイデータ取得部40はゲームを実行するための機能ブロックを含み、例えばゲームの熟練者などにゲームをプレイさせることによって、プレイデータを取得する。図8はプレイデータ取得部40に含まれる機能ブロックの一例について示す図である。図8に示すプレイデータ取得部40は、ゲーム状況データ記憶部50及びゲーム実行部51を含んでいる。
【0058】
ゲーム状況データ記憶部50は例えば主記憶部12によって実現され、ゲームの現在の状況を示すゲーム状況データを記憶する。例えば下記に示すようなデータがゲーム状況データに含まれる。
(a)各選手キャラクタ26,27の状態データ(例えばゲーム空間20内における位置、向き、姿勢、移動方向、及び移動速度や、行動の種類など)
(b)ボール24の状態データ(例えばゲーム空間20内における位置、移動方向、及び移動速度など)
(c)途中結果データ
(d)経過時間データ
【0059】
なお、選手キャラクタ26(27)の状態データには、選手キャラクタ26(27)が注目選手キャラクタに設定されているか否かを示すデータや、選手キャラクタ26(27)がボール24を保持しているか否かを示すデータも含まれる。また、途中結果データは試合の途中結果を示すデータであり、例えば現時点における各チームの得点イベントの発生回数などを示すデータである。経過時間データは、例えば試合が開始してからの経過時間などを示すデータである。
【0060】
ゲーム実行部51は例えば制御部11を主として実現される。図8に示すように、ゲーム実行部51は、操作内容取得部52、ゲーム状況データ更新部53、及び表示制御部54を含む。操作内容取得部52は、ゲームコントローラ30を用いて行われた操作内容を取得する。ゲーム状況データ更新部53は、操作内容取得部52の取得結果に基づいて、ゲーム状況データを更新する。例えば、動的オブジェクト(選手キャラクタ26,27及びボール24)の状態が更新される。表示制御部54は、ゲーム状況データに基づいてゲーム画面を生成し、そのゲーム画面を表示部16に表示する。
【0061】
なお以上では、行動制御データ生成装置10においてゲームの熟練者などにゲームをプレイさせることによって、プレイデータを取得することとして説明した。しかしながら、行動制御データ生成装置10とは別体のゲーム装置においてゲームの熟練者などにゲームをプレイさせるようにしてもよい。
【0062】
すなわち、プレイデータ取得部40は、行動制御データ生成装置10とは別体のゲーム装置においてゲームの熟練者などがゲームをプレイした場合のプレイデータを取得するようにしてもよい。この場合、プレイデータ取得部40はプレイデータを通信ネットワーク(例えばLAN又は/及びインターネットなど)を介して受信するようにしてもよいし、プレイデータが記録された情報記憶媒体(例えば光ディスクなど)からプレイデータを読み出すようにしてもよい。なお、この場合、図8に示したゲーム状況データ記憶部50及びゲーム実行部51は、行動制御データ生成装置10とは別体のゲーム装置において実現されることになる。
【0063】
基礎データ取得部41及び行動制御データ生成部42は、例えば制御部11を主として実現される。基礎データ取得部41は、コンピュータが操作するキャラクタオブジェクト又はキャラクタオブジェクトグループの行動を制御するために用いられる行動制御データの生成に供される基礎データを、プレイデータ取得部40によって取得されたデータに基づいて取得する。行動制御データ生成部42は、基礎データ取得部41によって取得された基礎データに基づいて、行動制御データを生成する。
【0064】
特に、基礎データ取得部41は、移動物体オブジェクトとゲーム空間に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの衝突に対応する第1タイミングと、移動物体オブジェクトとゲーム空間に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの次回の衝突に対応する第2タイミングと、の間に人が行った操作に関する操作データと、複数のキャラクタオブジェクト又は複数のキャラクタオブジェクトグループと移動物体オブジェクトとの第1タイミングにおける状態に関する状態データと、の組合せを基礎データとして取得する。ここで、第1タイミングに対応する衝突において移動物体オブジェクトと衝突した所定のオブジェクトと、第2タイミングに対応する衝突において移動物体オブジェクトと衝突した所定のオブジェクトとは、同一のオブジェクトであってもよいし、異なるオブジェクトであってもよい。
【0065】
例えば、「所定のオブジェクト」はキャラクタオブジェクトと競技具オブジェクトとの少なくとも一方を含む。なお、「競技具オブジェクト」は、競技に用いられる道具(ただし、ボールやパック等の移動物体を除く)を表すオブジェクトである。上記サッカーゲームの場合であれば、選手キャラクタ26,27が「キャラクタオブジェクト」に相当し、ゴール25a,25bが「競技具オブジェクト」に相当する。
【0066】
本実施形態の場合、基礎データ取得部41は、コンピュータチームの行動を制御するために用いられる行動制御データの生成に供される基礎データを、プレイデータ取得部40によって取得されたプレイデータに基づいて取得する。本実施形態の場合、注目選手制御データが「行動制御データ」に相当する。
【0067】
まず、基礎データ取得部41及び行動制御データ生成部42の動作の概要について説明する。
【0068】
サッカーゲームをプレイする人は、各選手キャラクタ26,27及びボール24の状態を考慮してゲーム操作を行うのが一般的である。このため、選手キャラクタ26,27及びボール24の状態がある状態になった場合に、その状態と同一又は類似の状態において例えばゲームの熟練者が行ったゲーム操作と同じゲーム操作がコンピュータチームに対して行われるようにすれば、例えばゲームの熟練者が操作しているかのように、コンピュータチームがコンピュータによって操作されるようになる。
【0069】
そこで、本実施形態では、基礎データ取得部41は、人(例えばゲームの熟練者)がユーザチームを操作してサッカーゲームをプレイした場合の、あるタイミングにおける動的オブジェクト(選手キャラクタ26,27及びボール24)の状態を示すデータと、そのタイミングから所与の期間内に当該人が行ったゲーム操作を示すデータと、の組合せを基礎データとして取得するようになっている。そして、行動制御データ生成部42はこの基礎データに基づいて注目選手制御データを生成するようになっている。
【0070】
ところで、上記のような基礎データを取得する場合には、下記に説明するような点を留意する必要がある。以下、この留意点について図9を参照しながら説明する。なお、図9において、状態S1はタイミングT1における動的オブジェクト(選手キャラクタ26,27及びボール24)の状態を示し、状態S2はタイミングT2における動的オブジェクトの状態を示し、状態S3はタイミングT3における動的オブジェクトの状態を示す。
【0071】
ここでは、下記のような場面を想定する。図10は、ここで想定する場面について説明するための図である。なお、図10において、符号Pはユーザチームに属する注目選手キャラクタを示し、符号X,Yはユーザチームに属する味方選手キャラクタを示している。符号C1,C2はコンピュータチームに属する選手キャラクタ27を示している。また、実線の矢印は注目選手キャラクタPが移動動作(ドリブル動作を含む)を行ったことを示し、点線の矢印はパスが実行されたことを示している。
(1)タイミングT1でユーザチームの注目選手キャラクタPが味方選手キャラクタXからのパスを受け取った後(1a)、ユーザチームの操作者は、味方選手キャラクタYへのパスが成功するような位置まで注目選手キャラクタPを移動させ(1b)、かつ、味方選手キャラクタYへのパスを注目選手キャラクタPに実行させた(1c)。
(2)タイミングT2で味方選手キャラクタYがユーザチームの注目選手キャラクタPからのパスを受け取った後、ユーザチームの操作者は、味方選手キャラクタYからのパスの受け取りが成功するような位置まで注目選手キャラクタPを移動させた。
(3)味方選手キャラクタYからユーザチームの注目選手キャラクタPへのパスが実行され、タイミングT3でユーザチームの注目選手キャラクタPが味方選手キャラクタYからのパスを受け取った。
【0072】
上記のような場面では、タイミングT1からタイミングT2までに行われたゲーム操作は、味方選手キャラクタYへのパスを成功させることを目的とするゲーム操作である。また、タイミングT2からタイミングT3までに行われたゲーム操作は、味方選手キャラクタYからのパスの受け取りを成功させることを目的とするゲーム操作である。すなわち、味方選手キャラクタYへのパスが成功したタイミングT2の前後において、ゲーム操作の目的が変わっている。
【0073】
ここで、タイミングT1での状態S1と、タイミングT1から、タイミングT2とタイミングT3との間のタイミングT4までに行われた一連のゲーム操作と、の組合せが基礎データとして取得された場合を想定する。この場合、別個の目的の下で行われた複数のゲーム操作が一連のゲーム操作として取得されてしまうことになる。このような基礎データに基づいて生成された注目選手制御データに基づいて、コンピュータチームの注目選手キャラクタに関する制御が実行される場合、下記に説明するような問題が生じる。
【0074】
この場合、動的オブジェクト(選手キャラクタ26,27及びボール24)の状態が状態S1と同一又は類似の状態になると、タイミングT1からタイミングT4までの間に行われたゲーム操作と同様のゲーム操作がコンピュータによって行われる。この場合、タイミングT1からタイミングT2までの間に行われたゲーム操作と同様のゲーム操作が行われることによって、コンピュータチームの注目選手キャラクタが味方選手キャラクタへのパスを実行する。しかし、この場合、パスが成功したか否かに関わらず、タイミングT2からタイミングT4までの間に行われたゲーム操作(パスが成功された場合に実行されるべきゲーム操作)も実行されてしまう。その結果、パスが失敗した場合には、コンピュータチームの注目選手キャラクタの行動が不自然になってしまう。
【0075】
また、下記のような場面を想定する。図11は、ここで想定する場面について説明するための図である。なお、図11において、実線及び点線の矢印や符号P,Xは図10と同様である。一点破線の矢印はシュートが実行された場合のボール24の移動を示している。
(1)タイミングT1でユーザチームの注目選手キャラクタPが味方選手キャラクタXからのパスを受け取った後(1a)、ユーザチームの操作者は、注目選手キャラクタPを、シュートに適した位置まで移動させ(1b)、かつ、注目選手キャラクタPにシュートを実行させた(1c)。
(2)タイミングT2でボール24がゴールポストに当たったので、ユーザチームの操作者は注目選手キャラクタPをボール24に向かって移動させた。
(3)その後、タイミングT3でユーザチームの注目選手キャラクタPがボール24を保持した。
【0076】
上記のような場面では、タイミングT1からタイミングT2までに行われたゲーム操作は、注目選手キャラクタにシュートを実行させることを目的とするゲーム操作である。また、タイミングT2からタイミングT3までに行われたゲーム操作は、ゴールポストに当たったボール24を注目選手キャラクタに保持させることを目的とするゲーム操作である。すなわち、ボール24がゴールポストに当たったタイミングT2前後において、ゲーム操作の目的が変わっている。
【0077】
ここで、タイミングT1での状態S1と、タイミングT1からタイミングT4までに行われた一連のゲーム操作と、の組合せが基礎データとして取得された場合を想定する。この場合も、別個の目的の下で行われた複数のゲーム操作が一連のゲーム操作として取得されることになってしまう。このような基礎データに基づいて生成された注目選手制御データに基づいて、コンピュータチームの注目選手キャラクタに関する制御が実行される場合、下記に説明するような問題が生じる。
【0078】
この場合、動的オブジェクト(選手キャラクタ26,27及びボール24)の状態が状態S1と同一又は類似の状態になると、タイミングT1からタイミングT4までの間に行われたゲーム操作と同様のゲーム操作がコンピュータによって行われる。この場合、タイミングT1からタイミングT2までの間に行われたゲーム操作と同様のゲーム操作が行われることによって、注目選手キャラクタがシュートを実行する。しかし、この場合、ボール24がゴールポストに当たったか否かに関わらず、タイミングT2からタイミングT4までの間に行われたゲーム操作(ボール24がゴールポストに当たった場合に実行されるべきゲーム操作)も実行されてしまう。その結果、ボール24がゴールポストに当たらなかった場合(例えばシュートが成功した場合)には、コンピュータチームの注目選手キャラクタの行動が不自然になってしまう。
【0079】
以上に説明したように、動的オブジェクトの状態と、一連のゲーム操作と、の組合せを基礎データとして取得する場合、目的の異なる複数のゲーム操作を一連のゲーム操作として取得してしまうと、コンピュータチーム(注目選手キャラクタ)の行動が不自然になってしまうおそれがある。このため、目的の異なる複数のゲーム操作が一連のゲーム操作として取得されないように留意する必要がある。この点、下記に説明するように、本実施形態における基礎データ取得部41では、目的の異なる複数のゲーム操作が一連のゲーム操作として取得されないように図られている。
【0080】
サッカーゲームでは、ボール24が選手キャラクタ26,27又はゴール25a,25bに当たった場合にゲーム操作の目的が変化することが多い。この点に着目し、基礎データ取得部41は、下記のようなデータの組合せを基礎データとして取得する。
(a)ボール24と選手キャラクタ26,27又はゴール25a,25bとの衝突(接触)に対応する第1タイミングと、ボール24と選手キャラクタ26,27又はゴール25a,25bとの次回の衝突に対応する第2タイミングと、の間にユーザチームの操作者によって行われたゲーム操作を示す操作データ
(b)第1タイミングにおける動的オブジェクト(選手キャラクタ26,27及びボール24)の配置状態に関する基準状態データ
【0081】
図12は基礎データの一例について説明するための図である。図12において、タイミングt1,t2,t3,t4は、ボール24が選手キャラクタ26,27又はゴール25a,25bに当たったタイミングを示している。
【0082】
また図12において、矢印や四角形などのマークは、ユーザチームの操作者によって行われたゲーム操作を示している。これらのマークは、ゲームコントローラ30の各ボタンに付されたマークに対応している。例えば、上方向の矢印は、方向ボタン31の上指示部31Uの押下操作に対応している。また例えば、四角形はボタン32Xの押下操作に対応している。
【0083】
図12に示すような場合、タイミングt1における動的オブジェクト(選手キャラクタ26,27及びボール24)の配置状態を示す基準状態データと、タイミングt1からタイミングt2までの間にユーザチームの操作者が行ったゲーム操作を示す操作データと、の組合せが基礎データとして取得される。
【0084】
また、タイミングt2における動的オブジェクトの配置状態を示す基準状態データと、タイミングt2からタイミングt3までの間に行われたゲーム操作を示す操作データと、の組合せが基礎データとして取得される。
【0085】
さらに、タイミングt3における動的オブジェクトの配置状態を示す基準状態データと、タイミングt3からタイミングt4までの間に行われたゲーム操作を示す操作データと、の組合せが基礎データとして取得される。
【0086】
そして、このようにして取得された基礎データに基づいて、注目選手制御データが生成される。詳細については後述する(図13のS109参照)。
【0087】
図13は、行動制御データ生成システム1において実行される処理の一例を示すフロー図である。図13に示す処理は注目選手制御データを生成するための処理である。制御部11はプログラムに従って、図13に示す処理を実行する。制御部11が図13に示す処理を実行することによって、図7に示す機能ブロックが実現される。
【0088】
なお、図13に示す処理は、行動制御データ生成装置10において人(例えばゲームの熟練者)がユーザチームを操作してゲームをプレイした場合のプレイデータを取得し、かつ、そのプレイデータに基づいて、注目選手制御データを生成する処理となっている。また、図13に示す処理では、人がユーザチームを操作してゲームをプレイするのと並行して、基礎データを取得するための処理が実行されるようになっている。
【0089】
図13に示す処理において、ステップS101〜S108の処理は、ユーザチームとコンピュータチームとの試合が開始してから終了するまでの間、所定時間(例えば1/60秒)ごとに繰り返し実行される。そして、試合が終了した後、ステップS109の処理が実行される。
【0090】
まず、ステップS101〜S108の処理について説明する。図13に示すように、制御部11(操作内容取得部52)は、ゲームコントローラ30から供給される操作信号に基づいて、ユーザチームの操作者が行ったゲーム操作の内容を取得する(S101)。この場合、制御部11は、取得されたゲーム操作の内容を、主記憶部12内に設けられた操作記憶領域に追加記憶する。図14は操作記憶領域の記憶内容の一例を示す図である。図14に示すように、操作記憶領域には、ユーザチームの操作者によって行われたゲーム操作を示す操作列が記憶される。なお、図14は、左から右に向かって時系列に操作列が記憶されている状態を示している。
【0091】
その後、制御部11(ゲーム状況データ更新部53)は、ゲーム状況データを更新し(S102)、更新されたゲーム状況データに基づいて、ゲーム画面を更新する(S103)。ステップS102では、例えば、ユーザチームの注目選手キャラクタの状態(例えば位置など)が、ステップS101で取得されたゲーム操作の内容に基づいて更新される。また例えば、ユーザチームの味方選手キャラクタ、コンピュータチームの注目選手キャラクタ及び味方選手キャラクタや、ボール24の状態が更新される。また例えば、所定の条件が満たされた場合にはゲームイベントが発生される。例えば、ゴール25b内の領域にボール24が移動した場合、ユーザチームの得点イベントが発生され、途中結果データが更新される。その他、経過時間データも更新される。
【0092】
その後、制御部11(基礎データ取得部41)は、ボール24が選手キャラクタ26,27又はゴール25a,25bに当たったか否かを判定する(S104)。なお、ボール24が選手キャラクタ26,27又はゴール25a,25bに当たったか否かの判定には、一般的な当たり判定処理(衝突判定処理)が用いられる。
【0093】
ボール24が選手キャラクタ26,27又はゴール25a,25bに当たった場合、制御部11(基礎データ取得部41)は、ゲーム状況データに基づいて、動的オブジェクト(選手キャラクタ26,27及びボール24)の配置状態を示す状態データを基準状態データとして取得する(S105)。基準状態データは、各選手キャラクタ26,27及びボール24の位置や、各選手キャラクタ26,27の向きなどを示すデータを含む。基準状態データは主記憶部12に保持される。
【0094】
また、制御部11(基礎データ取得部41)は、操作記憶領域に記憶される操作列を操作データとして取得し(S106)、操作記憶領域の記憶内容を削除する。このように、操作記憶領域の記憶内容は、ボール24が選手キャラクタ26,27又はゴール25a,25bに当たった場合に削除されるため、操作記憶領域に記憶される操作列は、「ボール24が選手キャラクタ26,27又はゴール25a,25bに当たってから、次にボール24が選手キャラクタ26,27又はゴール25a,25bに当たるまでの間にユーザチームの操作者が行ったゲーム操作」を示すことになる。
【0095】
そして、制御部11(基礎データ取得部41)は、ボール24と選手キャラクタ26,27又はゴール25a,25bとの前回衝突時に取得された基準状態データと、ボール24と選手キャラクタ26,27又はゴール25a,25bとの今回衝突時に取得された操作データと、の組合せを基礎データとして取得し(図12参照)、その基礎データを補助記憶部13に記憶する(S107)。
【0096】
なお、「前回衝突時に取得された基準状態データ」とは、ボール24と選手キャラクタ26,27又はゴール25a,25bとの前回の衝突時に実行されたステップS105の処理において取得された基準状態データである。「今回衝突時に取得された操作データ」とは、ボール24と選手キャラクタ26,27又はゴール25a,25bとの今回の衝突時に実行されたステップS106の処理において取得された操作データであり、言い換えれば、直前に実行されたステップS106の処理において取得された操作データである。
【0097】
ステップS107の処理が実行された後、制御部11は、ユーザチームとコンピュータチームとの試合が終了したか否かを判定する(S108)。ステップS104においてボール24が選手キャラクタ26,27又はゴール25a,25bに当たっていないと判定された場合にも、ステップS108の処理が実行される。
【0098】
試合が終了していない場合、制御部11はステップS101の処理を再び実行する。ステップS105〜S107の処理が繰り返し実行されることによって、基礎データが補助記憶部13に蓄積される。
【0099】
一方、試合が終了した場合、制御部11(行動制御データ生成部42)は、補助記憶部13に蓄積された基礎データに基づいて、注目選手制御データを生成する(S109)。
【0100】
具体的には、制御部11は、基礎データに含まれる基準状態データ及び操作データを対応づけることによって、注目選手制御データを生成する。すなわち、制御部11は、注目選手制御データとして、基準状態データと、操作データと、が対応づけられたデータを生成する。例えば、制御部11は、基準状態データと、操作データと、が対応づけられたニューラルネットワークのデータを生成する。また例えば、制御部11は、基準状態データと、操作データと、が対応づけられたベイジアンネットワークのデータを生成する。
【0101】
なお以下では、基準状態データと操作データとを対応づけてなるテーブルが注目選手制御データとして生成されることとして説明する。この場合の注目選手制御データの一例を図15に示す。
【0102】
[注目選手制御データの利用について]
上記のようにして生成された注目選手制御データは、情報記憶媒体(例えば光ディスクなど)又は通信ネットワークを用いて、ゲーム装置(例えば家庭用ゲーム機、業務用ゲーム機、携帯ゲーム機、パーソナルコンピュータ、携帯電話、又は携帯情報端末など)に供給される。そして、注目選手制御データは、ゲーム装置で実行されるサッカーゲームにおいてコンピュータチームの行動を制御するために用いられる。
【0103】
なお、このゲーム装置のハードウェア構成は行動制御データ生成装置10のハードウェア構成と類似する。また、ゲーム装置では、図8に示したゲーム状況データ記憶部50及びゲーム実行部51が実現されている。
【0104】
図16は、サッカーゲームにおいて注目選手制御データがどのようにして利用されるかを説明するための図であり、サッカーゲームを実行するゲーム装置で所定時間(例えば1/60秒)ごとに実行される処理の一例を示すフロー図である。
【0105】
図16に示すように、ゲーム装置の制御部は、ゲームコントローラから供給される操作信号に基づいて、ユーザが行ったゲーム操作の内容を取得する(S201)。そして、制御部は、ユーザチームに属する各選手キャラクタ26の状態データを更新する(S202)。
【0106】
例えば、ボタン33Lが押下された場合、ユーザチームの注目選手キャラクタが、ユーザチームに属する他の選手キャラクタ26に切り替えられる。また例えば、ユーザチームの注目選手キャラクタの状態データ(例えば位置)が、ステップS201において取得されたゲーム操作の内容に基づいて更新される。例えば、方向ボタン31の押下状態に対応する方向に移動するように、ユーザチームの注目選手キャラクタの位置などが更新される。また例えば、ボタン32Aが押下された場合、パス動作を行うように、ユーザチームの注目選手キャラクタの姿勢などが更新される。さらに例えば、味方選手制御データに基づいて行動するように、ユーザチームの味方選手キャラクタの状態データ(例えば位置)が更新される。
【0107】
その後、制御部は、動的オブジェクト(選手キャラクタ26,27及びボール24)の現在の配置状態を表す現在状態データを取得する(S203)。そして、制御部は、現在状態データと、注目選手制御データに含まれる各基準状態データとの類似度を算出する(S204)。ステップS204では、例えば下記に説明するような処理が実行される。
【0108】
すなわち、まず、現在状態データに基づいて、現時点における動的オブジェクトの配置状態の特徴を示す第1の特徴ベクトルが取得される。「特徴ベクトル」とは、例えば、動的オブジェクトの配置状態に関する各種情報を成分とするベクトルである。動的オブジェクトの配置状態に関する各種情報とは、例えば、ボール24とボール24に最も近い選手キャラクタ26,27との間の距離や、ボール24を保持している選手キャラクタ26,27とゴール25a,25bとの距離などである。
【0109】
また、基準状態データに基づいて、その基準状態データに対応する時点(ボール24が選手キャラクタ26,27又はゴール25a,25bと衝突した時点)における動的オブジェクトの配置状態の特徴を示す第2の特徴ベクトルが取得される。そして、第1の特徴ベクトルと第2の特徴ベクトルとの内積値が現在状態データと基準状態データとの類似度として取得される。
【0110】
ステップS204の処理が実行された後、制御部は、現在状態データとの類似度が最も高い基準状態データに対応づけられた操作データ(以下「操作データX」と記載する。)を取得する(S205)。そして、制御部は、コンピュータチームに属する各選手キャラクタ27の状態データを操作データXに基づいて更新する(S206)。
【0111】
例えば、ステップ206の処理では操作データXが再生される。「操作データXを再生する」とは、操作データXが示すゲーム操作がコンピュータチームに対して行われたと仮定して、コンピュータチームに属する選手キャラクタ27の状態データを更新することを意味している。
【0112】
例えば、操作データXが示すゲーム操作にボタン33Lの押下操作が含まれる場合、コンピュータチームの注目選手キャラクタが、コンピュータチームに属する他の選手キャラクタ27に切り替えられる。また例えば、操作データXが示すゲーム操作に方向ボタン31の押下操作が含まれる場合、方向ボタン31の押下状態に対応する方向に移動するように、コンピュータチームの注目選手キャラクタの位置などが更新される。また例えば、操作データXが示すゲーム操作にボタン32Aの押下操作が含まれる場合、パス動作を行うように、コンピュータチームの注目選手キャラクタの姿勢などが更新される。
【0113】
なお、ステップS206の処理では、味方選手制御データに基づい行動するように、コンピュータチームの味方選手キャラクタの状態データ(例えば位置など)も更新される。
【0114】
その後、制御部は、その他のゲーム状況データを更新する(S207)。具体的には、ボール24の状態データが更新される。例えば、いずれかの選手キャラクタ26(27)によってボール24が蹴られた場合、ボール24の移動方向などが更新される。また、途中結果データや経過時間データも更新される。ステップS207の処理が実行された後、制御部はゲーム画面を更新する(S208)。
【0115】
[まとめ]
以上説明した行動制御データ生成システム1によれば、サッカーゲームにおいてコンピュータチームの行動を制御するための行動制御データに、例えばゲームの熟練者の操作傾向を反映させることが可能になる。そして、この行動制御データを用いれば、熟練者によって操作されているかのように、コンピュータチームが行動するようになる。その結果、ユーザは熟練者との仮想対戦を楽しめるようになる。
【0116】
特に、行動制御データ生成システム1では、目的の異なる複数のゲーム操作が一連のゲーム操作として取得されないように図りつつ、行動制御データが生成されるようになっている。目的の異なる複数のゲーム操作を一連のゲーム操作として取得して行動制御データが生成されてしまうと、上述したように、コンピュータチームの行動が不自然になってしまうおそれがある。この点、行動制御データ生成システム1によれば、そのような不都合が生じないように図ることが可能になる。
【0117】
[変形例]
なお、本発明は以上に説明した実施の形態に限定されるものではない。
【0118】
(1)例えば、ゲームの開発者、初心者、又は一般的なユーザがユーザチームを操作してゲームをプレイした場合のプレイデータに基づいて、注目選手制御データを生成するようにしてもよい。
【0119】
(2)また例えば、図16のステップS205では、現在状態データとの類似度が最も大きい基準状態データに対応づけられた操作データを取得する代わりに、現在状態データとの類似度が基準値(例えば0.8)以上である基準状態データに対応づけられた操作データを取得するようにしてもよい。
【0120】
ただし、この態様では、現在状態データとの類似度が基準値以上である基準状態データが複数存在する場合、どの基準状態データに対応づけられた操作データを取得するか、選択する必要がある。
【0121】
この点、以下に説明する変形例(2−1)〜(2−4)では、現在状態データとの類似度が基準値以上である基準状態データが複数存在する場合、それらの複数の基準状態データに対応づけられた複数の操作データのうちで、最も適切な操作データが取得されるように図られている。
【0122】
(2−1)例えば、サッカーゲームをプレイする人は一の時点の動的オブジェクト(選手キャラクタ26,27及びボール24)の配置状態のみを考慮して、ゲーム操作を行うのではなく、動的オブジェクトの配置状態の変化パターンを考慮して、ゲーム操作を行う傾向がある。このため、動的オブジェクトの配置状態の変化パターンに応じて、人が行うゲーム操作も変わる。そこで、動的オブジェクトの配置状態の変化パターンにも考慮して注目選手制御データを生成するようにすれば、コンピュータチームの挙動を、人が操作している場合の挙動にさらに近づけることが可能になる。
【0123】
図17は、変形例(2−1)における基礎データの一例について説明するための図である。図12と同様、タイミングt0,t1,t2,t3は、ボール24が選手キャラクタ26,27又はゴール25a,25bに当たったタイミングを示している。
【0124】
図17に示す例では、例えば、ボール24と選手キャラクタ26,27又はゴール25a,25bとの衝突に対応するタイミングt1での動的オブジェクト(選手キャラクタ26,27及びボール24)の配置状態を示す第1基準状態データが取得される。また、タイミングt1と、ボール24と選手キャラクタ26,27又はゴール25a,25bとの次回の衝突に対応するタイミングt2と、の間にユーザチームの操作者が行ったゲーム操作を示す操作データが取得される。
【0125】
さらに、タイミングt1より前のタイミング又は期間における動的オブジェクトの配置状態を示す第2基準状態データも取得される。図17に示す例では、ボール24と選手キャラクタ26,27又はゴール25a,25bとの前回の衝突に対応するタイミングt0における動的オブジェクトの配置状態を示す状態データが第2基準状態データとして取得されている。
【0126】
このように、変形例(2−1)では、タイミングt1(第1タイミング)での動的オブジェクトの配置状態を示す第1基準状態データと、タイミングt1(第1タイミング)とタイミングt2(第2タイミング)との間にユーザチームの操作者が行ったゲーム操作を示す操作データと、タイミングt1(第1タイミング)より前における動的オブジェクトの配置状態を示す第2基準状態データと、の組合せが基礎データとして取得される。
【0127】
次に、変形例(2−1)において実行される処理について説明する。
【0128】
注目選手制御データを生成するための処理は図13に示す処理と同様である。ただし、ステップS107では、前々回の衝突時に実行されたステップS105の処理において取得された基準状態データである第2基準状態データと、前回の衝突時に実行されたステップS105の処理において取得された基準状態データである第1基準状態データと、今回の衝突時に実行されたステップS106の処理において取得された操作データと、の組合せが基礎データとして取得され(図17参照)、この基礎データが補助記憶部に蓄積される。そして、ステップS109において、補助記憶部に蓄積された基礎データに基づいて、注目選手制御データが生成される。すなわち、注目選手制御データとして、基礎データに含まれる第2基準状態データ、第1基準状態データ、及び操作データが対応づけられたデータが生成される。例えば、第2基準状態データと、第1基準状態データと、操作データと、が対応づけられたニューラルネットワーク又はベイジアンネットワークのデータが生成される。
【0129】
図18は、変形例(2−1)で生成される注目選手制御データの一例を示す図である。図18に示す注目選手制御データは、基礎データに含まれる第2基準状態データ、第1基準状態データ、及び操作データを対応づけてなるテーブルとなっている。例えば、図18に示す例は、動的オブジェクトの配置状態が状態データCが示す配置状態から状態データAが示す配置状態に変化した場合に、操作データAが示すゲーム操作がコンピュータチームの注目選手キャラクタに関して行われることを示している。
【0130】
図18に示す注目選手制御データを用いてサッカーゲームを実行する場合にゲーム装置が実行する処理も図16に示す処理と同様である。ただし、この場合、所定時間前から現在までの期間におけるゲーム状況データが主記憶部(又は補助記憶部)に記憶される。
【0131】
また、ステップS204において、現在状態データと、注目選手制御データに含まれる各第1基準状態データとの類似度が算出される。さらに、現在状態データとの類似度が基準値以上である第1基準状態データが複数存在する場合、ステップS205の代わりに、図19に示すステップS301〜S303の処理が実行される。
【0132】
すなわち、図19に示すように、まず制御部は、ボール24と選手キャラクタ26、27又はゴール25a、25bとの前回の衝突が発生した時点での動的オブジェクト(選手キャラクタ26,27及びボール24)の配置状態を示す過去状態データを取得する(S301)。
【0133】
その後、制御部は、現在状態データとの類似度が基準値以上である第1基準状態データに対応づけられた第2基準状態データと、過去状態データとの類似度を算出する(S302)。そして、制御部は、過去状態データとの類似度が最も大きい第2基準状態データに対応づけられた操作データ(操作データX)を取得する(S303)。そして、図16のステップS206では、コンピュータチームに属する選手キャラクタ27の状態(例えば位置など)が操作データXに基づいて更新される。
【0134】
変形例(2−1)では、ボール24が選手キャラクタ26,27又はゴール25a,25bに当たってから現在までの期間における動的オブジェクト(選手キャラクタ26,27及びボール24)の配置状態の変化パターンと同一又は類似の変化パターンが発生した場合にゲームの熟練者などが行ったゲーム操作がコンピュータチームに対して行われるようになる。変形例(2−1)によれば、コンピュータチームの挙動を、ゲームの熟練者などが操作している場合の挙動にさらに近づけることが可能になる。
【0135】
(2−2)また例えば、サッカーゲームをプレイする人は、自らに有利な結果に結びつくゲーム操作を行う傾向がある。そこで、この点にも考慮して、注目選手制御データを生成するようにすれば、コンピュータチームの挙動を、人が操作している場合の挙動にさらに近づけることが可能になる。
【0136】
図20は、変形例(2−2)における基礎データの一例について説明するための図である。図12と同様に、タイミングt1,t2,t3,t4は、ボール24が選手キャラクタ26,27又はゴール25a,25bに当たったタイミングを示している。
【0137】
図20に示す例では、例えば、ボール24と選手キャラクタ26,27又はゴール25a,25bとの衝突に対応するタイミングt1での動的オブジェクト(選手キャラクタ26,27及びボール24)の配置状態を示す基準状態データが取得される。また、タイミングt1と、ボール24と選手キャラクタ26,27又はゴール25a,25bとの次回の衝突に対応するタイミングt2と、の間にユーザチームの操作者が行ったゲーム操作を示す操作データが取得される。
【0138】
さらに、タイミングt1の後に発生したゲームイベントExを特定するイベントデータが取得される。ここで、ゲームイベントExは、ユーザチームに関するゲームイベントであり、例えばユーザチームの得点イベント、コーナーキックイベント、及びゴールキックイベントなどである。
【0139】
このように、変形例(2−2)では、タイミングt1(第1タイミング)での動的オブジェクトの配置状態を示す基準状態データと、タイミングt1(第1タイミング)とタイミングt2(第2タイミング)との間にユーザチームの操作者が行ったゲーム操作を示す操作データと、タイミングt1(第1タイミング)より後に発生したゲームイベントExを特定するイベントデータと、の組合せが基礎データとして取得される。
【0140】
次に、変形例(2−2)において実行される処理について説明する。
【0141】
注目選手制御データを生成するための処理は図13に示す処理と同様である。ただし、ステップS107では、前回の衝突時に実行されたステップS105の処理において取得された基準状態データと、今回の接触時に実行されたステップS106の処理において取得された操作データと、前回の衝突時から今回の衝突時までの間に発生したゲームイベントを示すイベントデータと、の組合せが基礎データとして取得され(図20参照)、この基礎データが補助記憶部に蓄積される。そして、ステップS109において、補助記憶部に蓄積された基礎データに基づいて、注目選手制御データが生成される。すなわち、注目選手制御データとして、基礎データに含まれる基準状態データ、操作データ、及びイベントデータが対応づけられたデータが生成される。例えば、基準状態データと、操作データと、イベントデータと、が対応づけられたニューラルネットワーク又はベイジアンネットワークのデータが生成される。
【0142】
図21は、変形例(2−2)で生成される注目選手制御データの一例を示す図である。図21に示す注目選手制御データは、基礎データに含まれる基準状態データ、操作データ及びイベントデータを対応づけてなるテーブルとなっている。
【0143】
図21に示す注目選手制御データを用いてサッカーゲームを実行する場合にゲーム装置が実行する処理も図16に示す処理と同様である。ただし、ステップS205では、現在状態データとの類似度が基準値以上である基準状態データが複数存在する場合に、それらの複数の基準状態データに対応づけられた複数の操作データのうちで、所定のゲームイベント(例えば、コンピュータチームに有益なゲームイベント)に対応づけられた操作データが取得される。
【0144】
ここで、「コンピュータチームに有益なゲームイベント」とは、例えばコンピュータチームの得点イベントやコーナーキックイベントなどである。例えば、得点イベントを示すイベントデータに対応づけられた操作データが存在する場合には、その操作データが取得される。また例えば、得点イベントを示すイベントデータに対応づけられた操作データが存在せず、かつ、コーナーキックイベントを示すイベントデータに対応づけられた操作データが存在する場合、その操作データが取得される。
【0145】
そして、ステップS206では、コンピュータチームに属する選手キャラクタ27の状態が、ステップS203で取得された操作データ(操作データX)に基づいて更新される。
【0146】
変形例(2−2)によれば、例えば、コンピュータチームに有益なゲームイベントが発生するようなゲーム操作がコンピュータチームに対して行われるようになる。
【0147】
(2−3)また例えば、サッカーゲームをプレイする人は、動的オブジェクト(選手キャラクタ26,27及びボール24)の配置状態だけでなく、試合の進行状況(例えば経過時間)も考慮してゲーム操作を行う傾向がある。このため、試合の進行状況によって、人が行うゲーム操作も変わる。そこで、試合の進行状況にも考慮して、注目選手制御データを生成するようにすれば、コンピュータチームの挙動を、人が操作している場合の挙動にさらに近づけることが可能になる。
【0148】
図22は、変形例(2−3)における基礎データの一例について説明するための図である。図12と同様に、タイミングt1,t2,t3,t4は、ボール24が選手キャラクタ26,27又はゴール25a,25bに当たったタイミングを示している。
【0149】
図22に示す例では、例えば、ボール24と選手キャラクタ26,27又はゴール25a,25bとの衝突に対応するタイミングt1での動的オブジェクト(選手キャラクタ26,27及びボール24)の配置状態を示す基準状態データが取得される。また、タイミングt1と、ボール24と選手キャラクタ26,27又はゴール25a,25bとの次回の衝突に対応するタイミングt2と、の間にユーザチームの操作者が行ったゲーム操作を示す操作データが取得される。
【0150】
さらに、タイミングt1での試合の進行状況に関する進行状況データも取得される。進行状況データは、例えば、タイミングt1における試合の経過時間を示すデータである。
【0151】
次に、変形例(2−3)において実行される処理について説明する。
【0152】
注目選手制御データを生成するための処理は図13に示す処理と同様である。ただし、ステップS107では、前回の衝突時に実行されたステップS105の処理において取得された基準状態データと、今回の衝突時に実行されたステップS106の処理において取得された操作データと、前回の衝突時における試合の進行状況(例えば経過時間)を示す進行状況データと、の組合せが基礎データとして取得され(図22参照)、この基礎データが補助記憶部に蓄積される。そして、ステップS109において、補助記憶部に蓄積された基礎データに基づいて、注目選手制御データが生成される。すなわち、注目選手制御データとして、基礎データに含まれる基準状態データ、操作データ、及び進行状況データが対応づけられたデータが生成される。例えば、基準状態データと、操作データと、進行状況データと、が対応づけられたニューラルネットワーク又はベイジアンネットワークのデータが生成される。
【0153】
図23は、変形例(2−3)で生成される注目選手制御データの一例を示す図である。図23に示す注目選手制御データは、基礎データに含まれる基準状態データ、操作データ及び進行状況データ(経過時間)を対応づけてなるテーブルとなっている。
【0154】
図23に示す注目選手制御データを用いてサッカーゲームを実行する場合にゲーム装置が実行する処理も図16に示す処理と同様である。
【0155】
ただし、ステップS205では、現在状態データとの類似度が基準値以上である基準状態データが複数存在する場合に、それらの複数の基準状態データに対応づけられた進行状況データが示す進行状況(経過時間)と、現在の進行状況(現時点での経過時間)と、の比較結果に基づいて、それらの複数の基準状態データのうちのいずれかが選択される。例えば、現在の進行状況との差が最も小さい進行状況データに対応づけられた基準状態データが選択される。そして、その選択された基準状態データに対応づけられた操作データが取得される。
【0156】
そして、ステップS206では、コンピュータチームに属する選手キャラクタ27の状態が、ステップS205で取得された操作データ(操作データX)に基づいて更新される。
【0157】
変形例(2−3)によれば、試合の現在の進行状況と同一又は類似の進行状況である場合にゲームの熟練者などが行ったゲーム操作がコンピュータチームに対して行われるようになる。変形例(2−3)によれば、コンピュータチームの挙動を、人が操作している場合の挙動にさらに近づけることが可能になる。
【0158】
(2−4)また例えば、サッカーゲームをプレイする人は、動的オブジェクト(選手キャラクタ26,27及びボール24)の配置状態だけでなく、試合の途中結果(現時点での試合結果)を考慮してゲーム操作を行う傾向がある。このため、試合の途中結果によって、人が行うゲーム操作も変わる。そこで、試合の途中結果にも考慮して、注目選手制御データを生成するようにすれば、コンピュータチームの挙動を、人が操作している場合の挙動にさらに近づけることが可能になる。
【0159】
図24は、変形例(2−4)における基礎データの一例について説明するための図である。図12と同様に、タイミングt1,t2,t3,t4は、ボール24が選手キャラクタ26,27又はゴール25a,25bに当たったタイミングを示している。
【0160】
図24に示す例では、例えば、ボール24と選手キャラクタ26,27又はゴール25a,25bとの衝突に対応するタイミングt1での動的オブジェクトの配置状態を示す基準状態データが取得される。また、タイミングt1と、ボール24と選手キャラクタ26,27又はゴール25a,25bとの次回の衝突に対応するタイミングt2と、の間にユーザチームの操作者が行ったゲーム操作を示す操作データが取得される。
【0161】
さらに、タイミングt1での試合の途中結果に関する途中結果データが取得される。途中結果データは、タイミングt1での試合の結果を示すデータであり、例えば、勝ち、負け又は引き分けのいずれかを示すデータを含む。なお、途中結果データは得点差を示すデータを含むようにしてもよい。
【0162】
次に、変形例(2−4)において実行される処理について説明する。
【0163】
注目選手制御データを生成するための処理は図13に示す処理と同様である。ただし、ステップS107では、前回の衝突時に実行されたステップS105の処理において取得された基準状態データと、今回の衝突時に実行されたステップS106の処理において取得された操作データと、前回の衝突時における試合の途中結果を示す途中結果データと、の組合せが基礎データとして取得され(図24参照)、この基礎データが補助記憶部に蓄積される。そして、ステップS109において、補助記憶部に蓄積された基礎データに基づいて、注目選手制御データが生成される。すなわち、注目選手制御データとして、基礎データに含まれる基準状態データ、操作データ、及び途中結果データが対応づけられたデータが生成される。例えば、基準状態データと、操作データと、途中結果データと、が対応づけられたニューラルネットワーク又はベイジアンネットワークのデータが生成される。
【0164】
図25は、変形例(2−4)で生成される注目選手制御データの一例を示す図である。図25に示す注目選手制御データは、基礎データに含まれる基準状態データ、操作データ及び途中結果データを対応づけてなるテーブルとなっている。
【0165】
図25に示す注目選手制御データを用いてサッカーゲームを実行する場合にゲーム装置が実行する処理も図16に示す処理と同様である。
【0166】
ただし、ステップS205では、現在状態データとの類似度が基準値以上である基準状態データが複数存在する場合に、それらの複数の基準状態データに対応づけられた途中結果データが示す途中結果と、現在の途中結果と、の比較結果に基づいて、複数の基準状態データのうちのいずれかが選択される。例えば、現在の途中結果と同じ途中結果を示す途中結果データに対応づけられた基準状態データが選択される。そして、その選択された基準状態データに対応づけられた操作データが取得される。
【0167】
そして、ステップS206では、コンピュータチームに属する選手キャラクタ27の状態が、ステップS205で取得された操作データ(操作データX)に基づいて更新される。
【0168】
変形例(2−4)によれば、試合の途中結果と同一又は類似の途中結果である場合にゲームの熟練者などが行ったゲーム操作がコンピュータチームに対して行われるようになる。変形例(2−4)によれば、コンピュータチームの挙動を、人が操作している場合の挙動にさらに近づけることが可能になる。
【0169】
(3)また例えば、図13に示す処理では、ゲームの熟練者などがゲームをプレイするのと並行して、基礎データの取得を実行するようにした。しかしながら、ゲーム(試合)が終了した後に、基礎データの取得を実行するようにしてもよい。ただし、この場合、試合中のゲーム状況を再現するためのデータを補助記憶部13に記憶しておく必要がある。すなわち、試合中の各タイミングにおけるゲーム状況データを補助記憶部13に記憶しておく必要がある。さらに、試合中の各タイミングにおいてユーザチームの操作者が行ったゲーム操作を示すデータを補助記憶部13に記憶しておく必要がある。なお、変形例(2−3)の場合、試合中の各タイミングにおける進行状況を示すデータも補助記憶部13に記憶しておく必要がある。また、変形例(2−4)の場合、試合中の各タイミングにおける途中結果を示すデータも補助記憶部13に記憶しておく必要がある。
【0170】
(4)また例えば、行動制御データ生成システム1は複数の情報処理装置を含むようにしてもよい。例えば図26に示すように、行動制御データ生成システム1は基礎データ取得装置10a及び行動制御データ生成装置10bを含むようにしてもよい。基礎データ取得装置10aは、基礎データの取得を実行するための情報処理装置であり、図1に示す行動制御データ生成装置10と同様のハードウェア構成を有する。また、行動制御データ生成装置10bは、行動制御データの生成を実行するための情報処理装置であり、図1に示す行動制御データ生成装置10と同様のハードウェア構成を有する。なお、この場合、プレイデータ取得部40及び基礎データ取得部41は基礎データ取得装置10aにおいて実現され、行動制御データ生成部42は行動制御データ生成装置10bによって実現される。
【0171】
(5)また例えば、一般ユーザが所有するゲーム装置において、基礎データの取得と注目選手制御データ(行動制御データ)の生成との少なくとも一方が実行されるようにしてもよい。すなわち、基礎データ取得部41(及びプレイデータ取得部40)と、行動制御データ生成部42と、の少なくとも一方が、一般ユーザが所有するゲーム装置(情報処理装置)において実現されるようにしてもよい。
【0172】
例えば、ゲーム装置において、ユーザがユーザチームを操作してゲームをプレイした場合のプレイデータを取得し、そのプレイデータに基づいて、基礎データの取得及び注目選手制御データの生成を実行するようにしてもよい。または、ゲーム装置において、ユーザがユーザチームを操作してゲームをプレイした場合のプレイデータに基づいて基礎データを取得し、その基礎データを行動制御データ生成システム1に供給するようにしてもよい。
【0173】
あるいは、ゲームの熟練者などのプレイデータをゲーム装置に供給し、ゲーム装置において、供給されたプレイデータに基づいて、基礎データの取得及び注目選手制御データの生成を実行するようにしてもよい。または、ゲームの熟練者などのプレイデータに基づいて取得された基礎データをゲーム装置に供給し、ゲーム装置において、供給された基礎データに基づいて、注目選手制御データの生成を実行するようにしてもよい。
【0174】
(6)また例えば、味方選手キャラクタの行動を制御するための味方選手制御データも、注目選手制御データと同様に、基礎データに基づいて生成するようにしてもよい。
【0175】
(7)また例えば、ユーザチームに属する選手キャラクタ26のうちの複数の選手キャラクタ26が注目選手キャラクタとして設定されるようにしてもよい。同様に、ユーザチームに属する選手キャラクタ27のうちの複数の選手キャラクタ27が注目選手キャラクタとして設定されるようにしてもよい。
【0176】
また例えば、ユーザチームは複数のユーザが協力して操作するようにしてもよい。また、サッカーゲームでは、ユーザが操作するサッカーチーム同士の試合や、コンピュータが操作するサッカーチーム同士の試合が行われるようにしてもよい。
【0177】
(8)また例えば、本発明は、複数のキャラクタオブジェクトグループ(例えばチーム)が移動物体オブジェクト(例えばボール又はパックなどを表すオブジェクト)を用いた競技を行うゲームであるならば、例えばサッカーゲーム以外のスポーツゲームにも適用可能である。なお、例えば、アイスホッケーのように壁に囲まれた領域内で行われるようなスポーツのゲームの場合には、移動物体オブジェクト(パックを表すオブジェクト)とキャラクタオブジェクト又は競技具オブジェクトとの衝突だけでなく、移動物体オブジェクト(パックを表すオブジェクト)と壁オブジェクトとの衝突も考慮して、基礎データ取得部41による基礎データの取得が実行されるようにするとよい。
【0178】
また例えば、本発明は、移動物体オブジェクト(例えばボール又はシャトルコックなどを表すオブジェクト)を用いた競技がキャラクタオブジェクトグループ同士で行われるゲームだけでなく、移動物体オブジェクトを用いた競技がキャラクタオブジェクト同士で行われるゲームにも適用可能である。例えば、2人のキャラクタオブジェクトの間で行われる球技(例えばテニス、卓球又はバドミントンなど)のゲームにも本発明は適用可能である。この場合、図13のステップS104において、ボール又はシャトルコックを表すオブジェクトが、ラケットを表すオブジェクト(競技具オブジェクト)又はネットを表すオブジェクト(競技具オブジェクト)に当たったか否かが判定されることになる。
【符号の説明】
【0179】
1 行動制御データ生成システム、10,10b 行動制御データ生成装置、10a 基礎データ取得装置、11 制御部、12 主記憶部、13 補助記憶部、14 光ディスク再生部、15 操作部、16 表示部、17 音声出力部、18 光ディスク、20 ゲーム空間、21 フィールドオブジェクト、22 サイドライン、23a,23b ゴールライン、24 ボールオブジェクト、25a,25b ゴールオブジェクト、26,27 選手キャラクタオブジェクト、28 カーソル、30 ゲームコントローラ、30a 表面、30b 裏面、31 方向ボタン、31U 上指示部、31D 下指示部、31L 左指示部、31R 右指示部、32A,32B,32X,32Y,33L,33R,34L,34R ボタン、40 プレイデータ取得部、41 基礎データ取得部、42 行動制御データ生成部、50 ゲーム状況データ記憶部、51 ゲーム実行部、52 操作内容取得部、53 ゲーム状況データ更新部、54 表示制御部。

【特許請求の範囲】
【請求項1】
複数のキャラクタオブジェクト又は複数のキャラクタオブジェクトグループがゲーム空間内で移動物体オブジェクトを用いた競技を行うゲームを人がいずれかのキャラクタオブジェクト又はいずれかのキャラクタオブジェクトグループを操作してプレイした場合の、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの状態の変化に関するデータと、前記人が行った操作に関するデータと、を取得するプレイデータ取得手段と、
前記ゲームにおいてコンピュータが操作するキャラクタオブジェクト又はキャラクタオブジェクトグループの行動を制御するために用いられる行動制御データの生成に供される基礎データを、前記プレイデータ取得手段によって取得されたデータに基づいて取得する基礎データ取得手段と、
前記基礎データ取得手段によって取得された基礎データに基づいて、前記行動制御データを生成する行動制御データ生成手段と、
を含み、
前記基礎データ取得手段は、前記移動物体オブジェクトと前記ゲーム空間に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの衝突に対応する第1タイミングと、前記移動物体オブジェクトと前記ゲーム空間に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの次回の衝突に対応する第2タイミングと、の間に前記人が行った操作に関する操作データと、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの前記第1タイミングにおける状態に関する状態データと、の組合せを前記基礎データとして取得する、
ことを特徴とする行動制御データ生成システム。
【請求項2】
請求項1に記載の行動制御データ生成システムにおいて、
前記基礎データ取得手段は、前記操作データと、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの前記第1タイミングにおける状態に関する第1状態データと、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの前記第1タイミングより前のタイミング又は期間における状態に関する第2状態データと、の組合せを前記基礎データとして取得することを特徴とする行動制御データ生成システム。
【請求項3】
請求項1に記載の行動制御データ生成システムにおいて、
前記基礎データ取得手段は、前記操作データと、前記状態データと、前記第1タイミングよりも後に発生したゲームイベントに関するゲームイベントデータと、の組合せを前記基礎データとして取得することを特徴とする行動制御データ生成システム。
【請求項4】
請求項1に記載の行動制御データ生成システムにおいて、
前記基礎データ取得手段は、前記操作データと、前記状態データと、前記第1タイミングにおける前記競技の進行状況に関するデータと、の組合せを前記基礎データとして取得することを特徴とする行動制御データ生成システム。
【請求項5】
請求項1に記載の行動制御データ生成システムにおいて、
前記基礎データ取得手段は、前記操作データと、前記状態データと、前記第1タイミングまでの前記競技の途中結果に関するデータと、の組合せを前記基礎データとして取得することを特徴とする行動制御データ生成システム。
【請求項6】
複数のキャラクタオブジェクト又は複数のキャラクタオブジェクトグループがゲーム空間内で移動物体オブジェクトを用いた競技を行うゲームを人がいずれかのキャラクタオブジェクト又はいずれかのキャラクタオブジェクトグループを操作してプレイした場合の、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの状態の変化に関するデータと、前記人が行った操作に関するデータと、を取得するプレイデータ取得ステップと、
前記ゲームにおいてコンピュータによって操作されるキャラクタオブジェクト又はキャラクタオブジェクトグループの行動を制御するために用いられる行動制御データの生成に供される基礎データを、前記プレイデータ取得ステップによって取得されたデータに基づいて取得する基礎データ取得ステップと、
前記基礎データ取得ステップによって取得された基礎データに基づいて、前記行動制御データを生成する行動制御データ生成ステップと、
を含み、
前記基礎データ取得ステップは、前記移動物体オブジェクトと前記ゲーム空間内に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの衝突に対応する第1タイミングと、前記移動物体オブジェクトと前記ゲーム空間内に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの次回の衝突に対応する第2タイミングと、の間に前記人が行った操作に関する操作データと、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの前記第1タイミングにおける状態に関する状態データと、の組合せを前記基礎データとして取得する、
ことを特徴とする行動制御データの生成方法。
【請求項7】
複数のキャラクタオブジェクト又は複数のキャラクタオブジェクトグループがゲーム空間内で移動物体オブジェクトを用いた競技を行うゲームを人がいずれかのキャラクタオブジェクト又はいずれかのキャラクタオブジェクトグループを操作してプレイした場合の、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの状態の変化に関するデータと、前記人が行った操作に関するデータと、を取得するプレイデータ取得手段、
前記ゲームにおいてコンピュータが操作するキャラクタオブジェクト又はキャラクタオブジェクトグループの行動を制御するために用いられる行動制御データの生成に供される基礎データを、前記プレイデータ取得手段によって取得されたデータに基づいて取得する基礎データ取得手段、及び、
前記基礎データ取得手段によって取得された基礎データに基づいて、前記行動制御データを生成する行動制御データ生成手段、
としてコンピュータを機能させ、
前記基礎データ取得手段は、前記移動物体オブジェクトと前記ゲーム空間内に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの衝突に対応する第1タイミングと、前記移動物体オブジェクトと前記ゲーム空間内に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの次回の衝突に対応する第2タイミングと、の間に前記人が行った操作に関する操作データと、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの前記第1タイミングにおける状態に関する状態データと、の組合せを前記基礎データとして取得する、
ことを特徴とするプログラム。
【請求項8】
複数のキャラクタオブジェクト又は複数のキャラクタオブジェクトグループがゲーム空間内で移動物体オブジェクトを用いた競技を行うゲームを人がいずれかのキャラクタオブジェクト又はいずれかのキャラクタオブジェクトグループを操作してプレイした場合の、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの状態の変化に関するデータと、前記人が行った操作に関するデータと、を取得するプレイデータ取得手段と、
前記ゲームにおいてコンピュータが操作するキャラクタオブジェクト又はキャラクタオブジェクトグループの行動を制御するために用いられる行動制御データの生成に供される基礎データを、前記プレイデータ取得手段によって取得されたデータに基づいて取得する基礎データ取得手段と、
を含み、
前記基礎データ取得手段は、前記移動物体オブジェクトと前記ゲーム空間内に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの衝突に対応する第1タイミングと、前記移動物体オブジェクトと前記ゲーム空間内に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの次回の衝突に対応する第2タイミングと、の間に前記人が行った操作に関する操作データと、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの前記第1タイミングにおける状態に関する状態データと、の組合せを前記基礎データとして取得する、
ことを特徴とする情報処理装置。
【請求項9】
複数のキャラクタオブジェクト又は複数のキャラクタオブジェクトグループがゲーム空間内で移動物体オブジェクトを用いた競技を行うゲームを人がいずれかのキャラクタオブジェクト又はいずれかのキャラクタオブジェクトグループを操作してプレイした場合の、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの状態の変化に関するデータと、前記人が行った操作に関するデータと、を取得するプレイデータ取得ステップと、
前記ゲームにおいてコンピュータが操作するキャラクタオブジェクト又はキャラクタオブジェクトグループの行動を制御するために用いられる行動制御データの生成に供される基礎データを、前記プレイデータ取得ステップによって取得されたデータに基づいて取得する基礎データ取得ステップと、
を含み、
前記基礎データ取得ステップは、前記移動物体オブジェクトと前記ゲーム空間内に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの衝突に対応する第1タイミングと、前記移動物体オブジェクトと前記ゲーム空間内に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの次回の衝突に対応する第2タイミングと、の間に前記人が行った操作に関する操作データと、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの前記第1タイミングにおける状態に関する状態データと、の組合せを前記基礎データとして取得する、
ことを特徴とする情報処理装置の制御方法。
【請求項10】
複数のキャラクタオブジェクト又は複数のキャラクタオブジェクトグループがゲーム空間内で移動物体オブジェクトを用いた競技を行うゲームを人がいずれかのキャラクタオブジェクト又はいずれかのキャラクタオブジェクトグループを操作してプレイした場合の、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの状態の変化に関するデータと、前記人が行った操作に関するデータと、を取得するプレイデータ取得手段、及び、
前記ゲームにおいてコンピュータが操作するキャラクタオブジェクト又はキャラクタオブジェクトグループの行動を制御するために用いられる行動制御データの生成に供される基礎データを、前記プレイデータ取得手段によって取得されたデータに基づいて取得する基礎データ取得手段、
としてコンピュータを機能させ、
前記基礎データ取得手段は、前記移動物体オブジェクトと前記ゲーム空間内に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの衝突に対応する第1タイミングと、前記移動物体オブジェクトと前記ゲーム空間内に配置されるオブジェクトのうちの所定のオブジェクトのいずれかとの次回の衝突に対応する第2タイミングと、の間に前記人が行った操作に関する操作データと、前記複数のキャラクタオブジェクト又は前記複数のキャラクタオブジェクトグループと前記移動物体オブジェクトとの前記第1タイミングにおける状態に関する状態データと、の組合せを前記基礎データとして取得する、
ことを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate


【公開番号】特開2011−87869(P2011−87869A)
【公開日】平成23年5月6日(2011.5.6)
【国際特許分類】
【出願番号】特願2009−245965(P2009−245965)
【出願日】平成21年10月26日(2009.10.26)
【出願人】(506113602)株式会社コナミデジタルエンタテインメント (1,441)
【Fターム(参考)】