(57)【特許請求の範囲】
【請求項１】
移動体に対してキャラクタが作用を与えるゲームを制御するゲーム装置であって、
前記移動体の移動開始前または移動開始時に、前記キャラクタを操作する第１ユーザの操作に基づいて、前記移動体の移動に関する移動パラメータに対する予想情報を取得する予想手段と、
前記移動体を操作する第２ユーザの操作に基づいて、前記移動パラメータを決定して前記移動体を移動させる移動体移動手段と、
前記移動体の移動後の前記キャラクタの動作を制御する動作制御手段と、を備え、
前記動作制御手段は、前記予想情報と前記移動体移動手段によって決定された前記移動パラメータとの一致度に応じて、前記キャラクタの動作を異ならせるゲーム装置。
【請求項２】
前記動作制御手段は、前記一致度が所定の閾値またはレベル以上の場合に、前記キャラクタの動作を第１動作パターンとする一方、前記一致度が前記所定の閾値またはレベル未満の場合に、前記キャラクタの動作を前記第１動作パターンとは異なる第２動作パターンとする請求項１に記載のゲーム装置。
【請求項３】
前記動作制御手段は、前記一致度が前記所定の閾値またはレベル未満の場合に、前記一致度が低いほど、前記キャラクタの動作のバランスがより大きく崩れるように、前記キャラクタの動作を制御する請求項２に記載のゲーム装置。
【請求項４】
画面上の基準位置に、前記移動体の移動コースを予想するための特定領域を設定する特定領域設定手段と、
前記移動体の移動が開始されるまでの前記第１ユーザの操作に応じて、前記特定領域を前記基準位置から移動させる特定領域移動手段と、をさらに備え、
前記予想手段は、前記特定領域の位置に基づいて、前記移動パラメータとしての移動コースに対する前記予想情報を取得する請求項１ないし３の何れか１項に記載のゲーム装置。
【請求項５】
前記ゲームは、前記移動体に照準カーソルを重ねて作用を与えるゲームであって、
前記照準カーソルを、前記第１ユーザの操作に応じて移動させるカーソル移動手段と、
前記特定領域内の位置に応じて前記照準カーソルの大きさが変化するように、前記特定領域内における前記照準カーソルの大きさを設定する領域内カーソル設定手段と、をさらに備えている請求項４に記載のゲーム装置。
【請求項６】
前記ゲームは、前記移動体に照準カーソルを重ねて作用を与えるゲームであって、
前記照準カーソルを、前記第１ユーザの操作に応じて移動させるカーソル移動手段をさらに備え、
前記予想手段は、前記移動体の移動開始時における前記照準カーソルの位置情報を、前記移動パラメータとしての移動コースに対する前記予想情報として取得する請求項１ないし３の何れか１項に記載のゲーム装置。
【請求項７】
前記動作制御手段は、前記移動体の移動中に、前記第１ユーザによって前記移動体に作用を与えるための作用付与操作が行われた場合に、前記一致度に応じて、前記キャラクタにおける前記移動体に作用を与えるための動作を異ならせる請求項１ないし６の何れか１項に記載のゲーム装置。
【請求項８】
前記動作制御手段は、前記移動体の移動中に、前記第１ユーザによって前記移動体に作用を与えるための作用付与操作が行われなかった場合に、前記一致度に応じて、前記キャラクタにおける前記移動体を見送る動作を異ならせる請求項１ないし７の何れか１項に記載のゲーム装置。
【請求項９】
前記予想情報には、前記移動体の移動コース、速さ、移動中の軌道変化の少なくとも１つの移動パラメータに対する予想情報を含む請求項１ないし８の何れか１項に記載のゲーム装置。
【請求項１０】
前記ゲームには、前記第１ユーザの操作に依らず前記キャラクタが自動制御されるＣＰＵ対戦モードが含まれ、
前記予想手段は、前記キャラクタが自動制御される場合には、前記移動体の移動開始前または移動開始時に、前記予想情報を自動的に取得する請求項１ないし３の何れか１項に記載のゲーム装置。
【請求項１１】
ユーザの操作に基づいて移動する移動体に対して、人的操作に依らず自動制御されるキャラクタが作用を与えるゲームを制御するゲーム装置であって、
前記移動体の移動開始前または移動開始時に、前記移動体の移動に関する移動パラメータに対する予想情報を自動的に取得する予想手段と、
前記移動体を操作するユーザの操作に基づいて、前記移動パラメータを決定して前記移動体を移動させる移動体移動手段と、
前記移動体の移動後の前記キャラクタの動作を制御する動作制御手段と、を備え、
前記動作制御手段は、前記予想情報と前記移動体移動手段によって決定された前記移動パラメータとの一致度に応じて、前記キャラクタの動作を異ならせるゲーム装置。
【請求項１２】
第１ユーザによって操作される打者キャラクタが、第２ユーザによって操作される投手キャラクタが投じたボールオブジェクトを打撃する野球またはソフトボールゲームを制御するゲーム装置であって、
前記ボールオブジェクトの前記投手キャラクタからの送出開始前または送出開始時に、前記第１ユーザの操作に基づいて、前記ボールオブジェクトの投球コースを予想した予想投球コースの情報を取得する予想手段と、
前記第２ユーザの操作に基づいて、前記投球コースを決定して前記ボールオブジェクトを移動させるボール移動手段と、
前記ボールオブジェクトの移動後の前記打者キャラクタの動作を制御する動作制御手段と、を備え、
前記動作制御手段は、前記予想投球コースと前記ボール移動手段によって決定された投球コースとの一致度に応じて、前記打者キャラクタの動作を異ならせるゲーム装置。
【請求項１３】
第１ユーザが使用する端末装置および第２ユーザが使用する端末装置を含み、第１ユーザによって操作されるキャラクタが、第２ユーザによって操作される移動体に作用を与えるゲームを制御するゲームシステムであって、
前記移動体の移動開始前または移動開始時に、前記第１ユーザの操作に基づいて、前記移動体の移動に関する移動パラメータに対する予想情報を取得する予想手段と、
前記第２ユーザの操作に基づいて、前記移動パラメータを決定して前記移動体を移動させる移動体移動手段と、
前記移動体の移動後の前記キャラクタの動作を制御する動作制御手段と、を備え、
前記動作制御手段は、前記予想情報と前記移動体移動手段によって決定された前記移動パラメータとの一致度に応じて、前記キャラクタの動作を異ならせるゲームシステム。
【請求項１４】
コンピュータを請求項１ないし１２の何れか１項に記載のゲーム装置として動作させるためのプログラムであって、前記コンピュータを前記ゲーム装置が備えている各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザの操作に基づいてゲームを制御するゲーム装置、ゲームシステム、ゲーム制御方法及びプログラムに関するものである。
【背景技術】
【０００２】
従来、打者側のユーザが投球される球種を予想することができる野球ゲームが提案されている（特許文献１）。また、打者側のユーザが投球されるコースを予想することができる野球ゲームも提案されている（特許文献２）。
【０００３】
このようなゲームでは、打者側のユーザの投球に対する予想が当たれば、打撃し易くなる。但し、打者側のユーザの投球に対する予想が当たっても、ボールを打ち損じることもあれば、予想が外れてもヒットを打つこともある。また、投球に対する予想の当否に関わらず、バットを振らずにボールを見逃すこともある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−１９９０８１号公報
【特許文献２】特開２０１１−０７２４８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来のゲームでは、投手側のユーザが投球コース等を考えるための材料として、例えば打者キャラクタの得意コース／不得意コースといった情報が設けられているものはあるが、これは打者キャラクタに関する固定的な情報であり、投手側から見れば、単に相手の不得意コースを狙えば有利になるというものであるため、投打間での駆け引きもなく、ゲーム性として深い面白みがあるものとは言えなかった。
【０００６】
また、野球ゲームの場合、打者側としては、投球されたボールをいかに打ち返すかという打撃操作そのものに面白みを感じることができるのに対し、投手側としては、球種や投球コースを決めてしまえば、あとは投球が行われるだけであるため、打者側のようにバットスイングのタイミングを計るといった操作性はなく、ゲーム性としては単調なものにならざるを得なかった。
【０００７】
本発明は、上記の事情に鑑みてなされたものであり、その目的は、例えば野球ゲームの場合、投手側が投球コース等を考えるための材料として、従来ゲームにない要素を盛り込み、打者側だけでなく、投手側においても深いゲーム性を楽しむことができる興趣性の高いゲームを提供することである。
【課題を解決するための手段】
【０００８】
本発明の一局面によるゲーム装置は、移動体に対してキャラクタが作用を与えるゲームを制御するゲーム装置であって、前記移動体の移動開始前または移動開始時に、前記キャラクタを操作する第１ユーザの操作に基づいて、又は自動的に、前記移動体の移動に関する移動パラメータに対する予想情報を取得する予想手段と、前記移動体を操作する第２ユーザの操作に基づいて、前記移動パラメータを決定して前記移動体を移動させる移動体移動手段と、前記移動体の移動後の前記キャラクタの動作を制御する動作制御手段と、を備え、前記動作制御手段は、前記予想情報と前記移動体移動手段によって決定された前記移動パラメータとの一致度に応じて、前記キャラクタの動作を異ならせる。
【０００９】
本発明の他の一局面によるプログラムは、コンピュータを前記ゲーム装置として動作させるためのプログラムであって、前記コンピュータを前記ゲーム装置が備えている各手段として機能させるためのプログラムである。
【００１０】
本発明の他の一局面によるゲームシステムは、第１ユーザが使用する端末装置および第２ユーザが使用する端末装置を含み、第１ユーザによって操作されるキャラクタが、第２ユーザによって操作される移動体に作用を与えるゲームを制御するゲームシステムであって、前記移動体の移動開始前または移動開始時に、前記第１ユーザの操作に基づいて、前記移動体の移動に関する移動パラメータに対する予想情報を取得する予想手段と、前記第２ユーザの操作に基づいて、前記移動パラメータを決定して前記移動体を移動させる移動体移動手段と、前記移動体の移動後の前記キャラクタの動作を制御する動作制御手段と、を備え、前記動作制御手段は、前記予想情報と前記移動体移動手段によって決定された前記移動パラメータとの一致度に応じて、前記キャラクタの動作を異ならせる。
【００１１】
本発明の他の一局面によるゲーム制御方法は、移動体に対してキャラクタが作用を与えるゲームを制御するコンピュータにおけるゲーム制御方法であって、前記コンピュータが、前記移動体の移動開始前または移動開始時に、前記キャラクタを操作する第１ユーザの操作に基づいて、又は自動的に、前記移動体の移動に関する移動パラメータに対する予想情報を取得する予想ステップと、前記コンピュータが、前記移動体を操作する第２ユーザの操作に基づいて、前記移動パラメータを決定して前記移動体を移動させる移動体移動ステップと、前記コンピュータが、前記移動体の移動後の前記キャラクタの動作を制御する動作制御ステップと、を含み、前記動作制御ステップでは、前記コンピュータが、前記予想情報と前記移動体移動ステップによって決定された前記移動パラメータとの一致度に応じて、前記キャラクタの動作を異ならせる。
【図面の簡単な説明】
【００１２】
【図１】本発明の一実施の形態に係るゲーム装置のハード構成の一例を示すブロック図である。
【図２】ゲームシステムの構成例を示すブロック図である。
【図３】ゲームシステムの他の構成例を示すブロック図である。
【図４】打者側のユーザのゲーム画面の一例を示す説明図である。
【図５】投手側のユーザのゲーム画面の一例を示す説明図である。
【図６】特定領域内における照準カーソルの大きさ分布の設定の一例を示す説明図である。
【図７】特定領域がストライクゾーンの位置に設定されたゲーム画面の一例を示す説明図である。
【図８】特定領域がストライクゾーンの位置に設定されたゲーム画面の一例を示す説明図である。
【図９】特定領域がアウトコース側に移動されたゲーム画面の一例を示す説明図である。
【図１０】特定領域がアウトコース側に移動されたゲーム画面の一例を示す説明図である。
【図１１】特定領域がインコース側に移動されたゲーム画面の一例を示す説明図である。
【図１２】特定領域がインコース側に移動されたゲーム画面の一例を示す説明図である。
【図１３】第１ユーザのインコース予想が外れた場合における打者キャラクタの打撃動作の一例を説明する説明図である。
【図１４】第１ユーザのインコース予想が当たった場合における打者キャラクタの打撃動作の一例を説明する説明図である。
【図１５】第１ユーザのインコース予想が外れた場合における打者キャラクタのボール見送り動作の一例を説明する説明図である。
【図１６】第１ユーザのアウトコース予想が当たった場合における打者キャラクタのボール見送り動作の一例を説明する説明図である。
【図１７】第１ユーザのアウトコース予想が外れた場合における打者キャラクタのボール見送り動作の一例を説明する説明図である。
【図１８】第１ユーザのインコース予想が当たった場合における打者キャラクタのボール見送り動作の一例を説明する説明図である。
【図１９】ゲーム管理装置の主要な構成の一例を示す機能ブロック図である。
【図２０】一致度を説明するための説明図である。
【図２１】ゲーム管理装置の主要な構成の他の例を示す機能ブロック図である。
【図２２】特定領域に対する移動可能範囲を説明する説明図である。
【図２３】照準カーソルの形状の一例を示す説明図である。
【図２４】ゲーム管理装置の主要な構成の他の例を示す機能ブロック図である。
【図２５】特定領域内における照準カーソルの大きさ分布の設定の他の例を示す説明図である。
【図２６】ゲーム管理装置の主要な構成の他の例を示す機能ブロック図である。
【図２７】ゲーム管理装置の基本的な構成の一例を示す機能ブロック図である。
【図２８】投手キャラクタを制御する処理の一例を示すフローチャートである。
【図２９】打者キャラクタを制御する処理の一例を示すフローチャートである。
【図３０】打者キャラクタを制御する処理の一例を示すフローチャートである。
【図３１】カーソル移動処理の一例を示すフローチャートである。
【図３２】照準カーソルの移動に連動して特定領域がアウトコース低目に移動されたゲーム画面の一例を示す説明図である。
【図３３】ゲーム管理装置の主要な構成の他の例を示す機能ブロック図である。
【図３４Ａ】特定領域が基準位置に存在する場合における、領域中央部の照準カーソルの大きさを説明するための説明図である。
【図３４Ｂ】特定領域が基準位置から移動した場合における、領域中央部の照準カーソルの大きさを説明するための説明図である。
【図３５】特定領域の移動により空白領域が発生することを説明する説明図である。
【図３６】ゲーム管理装置の主要な構成の他の例を示す機能ブロック図である。
【図３７】特定領域および空白領域における照準カーソルの大きさの設定の一例を示す説明図である。
【図３８】ゲーム管理装置の主要な構成の他の例を示す機能ブロック図である。
【図３９】ゲームシステムの構成例を示すブロック図である。
【発明を実施するための形態】
【００１３】
以下、本発明の一実施の形態に係るゲーム装置、ゲームシステム、ゲーム制御方法及びプログラムについて、図面を参照しながら説明する。
【００１４】
〔ゲーム装置の概要〕
本発明の一実施の形態に係るゲーム装置は、ゲームプログラムを実行可能な情報処理装置であれば様々なものを適用できる。例えば、ゲーム装置としては、据置型または携帯型のゲーム専用機、パーソナルコンピュータ（以下「ＰＣ」と呼称する）、タブレット型コンピュータ、スマートフォン、携帯電話端末、ＰＨＳ（Personal Handy-phone System）端末、携帯情報端末（ＰＤＡ：Personal Digital Assistant）、情報処理機能を備えた多機能型テレビジョン受像機（いわゆるスマートテレビ）等が適用できる。
【００１５】
本実施の形態のゲーム装置が制御するゲームは、移動体に対してキャラクタが作用を与える（例えば、打ち返す、捕える、打ち砕く）ゲームである。このゲームの一例としては、第１ユーザによって操作される第１キャラクタが、第２ユーザによって操作される第２キャラクタから送出される移動体に対して作用を与えるゲームがある。例えば、第１キャラクタの一例としての打者キャラクタが、第２キャラクタの一例としての投手キャラクタからリリースされた、移動体の一例としてのボールオブジェクト（以下、単に「ボール」と称する）に照準カーソルを合せて、作用の一例としての打撃を行う野球またはソフトボールゲームが挙げられる。
【００１６】
本実施の形態のゲーム装置１００は、野球ゲームやソフトボールゲームに限らず、サッカー、テニス等、移動体に対して何らかの作用を与える様々なゲームにも適用できるが、以下には、野球ゲームへの適用例を説明する。
【００１７】
第２ユーザは、ゲーム装置のコントローラ等を操作して、投手キャラクタが投げるボールの移動パラメータ（投球コース、球種等）を指定することができる。ゲーム装置は、第２ユーザの操作に基づいて投球コースや球種等を決定し、ボールを打者キャラクタの方へ移動させる。
【００１８】
また、打者キャラクタを操作する第１ユーザは、投手キャラクタからボールがリリースされるまでに、投手キャラクタが投げるボールの移動パラメータ（投球コース、球種等）を予想することができる。ゲーム装置は、ボールの移動開始前または移動開始時に、第１ユーザによる投球コース等の予想入力の操作に基づいて、移動パラメータに対する予想情報を取得する。例えば、第１ユーザがアウトコースを予想する入力操作をすれば、ゲーム装置は予想情報としてアウトコースを取得する。
【００１９】
そして、ゲーム装置は、投手キャラクタからボールがリリースされた後の打者キャラクタの、バッティング動作またはボールを見送る動作を制御する。例えば、ゲーム装置は、第１ユーザによって打撃操作が行われた場合には、打者キャラクタのバッティング動作を制御し、打撃操作が行われなかった場合には、打者キャラクタのボール見送り動作を制御する。この場合、ゲーム装置は、第１ユーザが投球コース等を予想した予想情報と、実際の投球コース等との一致度に応じて、打者キャラクタの動作を異ならせる。
【００２０】
例えば、第１ユーザによる投球コースの予想が当たった場合（予想コースと、実際の投球コースとが一致した場合）には、打者キャラクタは体勢を崩すことなくスイングしたりボールを見送ったりする。一方、前記予想が外れた場合（予想コースと実際の投球コースとが一致しなかった場合）には、打者キャラクタはバランスの崩れた体勢でスイングしたり、ボールを見送ったりする。予想が外れた場合の一例としては、インコースの予想に対して、アウトコースにボールが来た場合は、それを打とうとして打者キャラクタは泳ぐような打撃姿勢になってバランスを崩す。ボールを見送る場合も、打者キャラクタはボールを目で追いかけながら上体が突っ込む姿勢になる。
【００２１】
これにより、第２ユーザは、投球後の打者キャラクタの動きを見て、投球に対する打者の事前予想の当否を推定することができ、よって次の投球を検討する材料とすることができる。すなわち、現実世界の野球のように、投球に対する打者の反応を見て、投手が次の投球を検討するといったリアル感のあるゲーム性を実現でき、投打の駆け引きがより一層楽しくなる。以下に、これを実現するゲーム装置の構成の一例を説明する。
【００２２】
〔ゲーム装置の構成〕
図１は、ゲーム装置１００の構成を示すブロック図である。本実施の形態では、ゲーム装置１００の一例として、家庭用のテレビジョン２００に接続して使用する家庭用ビデオゲーム機について説明する。ゲーム装置１００には、ゲームプログラムが記録されたコンピュータ読み出し可能な記録媒体３００が装填され、当該記録媒体３００よりゲームプログラムが適宜読み出されてゲームが実行される。
【００２３】
ゲーム装置１００は、ＣＰＵ（Central Processing Unit）１、バスライン２、グラフィックスデータ生成プロセッサ３、インターフェース回路（Ｉ／Ｆ）４、ＲＡＭ（Random Access Memory）５、ＲＯＭ（Read Only Memory）６、伸張回路７、パラレルポート８、シリアルポート９、描画プロセッサ１０、音声プロセッサ１１、デコーダ１２、インターフェース回路（Ｉ／Ｆ）１３、バッファ１４〜１６、記録媒体ドライブ１７、メモリ１８、及びコントローラ１９を備えている。このゲーム装置１００が接続されるテレビジョン２００は、テレビジョンモニタ２１、増幅回路２２及びスピーカ２３を備えている。
【００２４】
ＣＰＵ１は、バスライン２及びグラフィックスデータ生成プロセッサ３に接続されている。バスライン２は、アドレスバス、データバス及びコントロールバス等を含んでいる。このバスライン２を介して、ＣＰＵ１、インターフェース回路４、ＲＡＭ５、ＲＯＭ６、伸張回路７、パラレルポート８、シリアルポート９、描画プロセッサ１０、音声プロセッサ１１、デコーダ１２、インターフェース回路１３および通信制御部２０が相互に接続されている。
【００２５】
描画プロセッサ１０は、バッファ１４及びテレビジョンモニタ２１に接続されている。音声プロセッサ１１は、バッファ１５及びテレビジョン２００の増幅回路２２に接続されている。デコーダ１２は、バッファ１６及び記録媒体ドライブ１７に接続されている。インターフェース回路１３は、メモリ１８及びコントローラ１９に接続されている。
【００２６】
なお、ゲーム装置１００がパーソナルコンピュータやワークステーションとして構成される場合、テレビジョンモニタ２１等は、コンピュータ用のディスプレイに対応する。また、伸張回路７、描画プロセッサ１０、及び音声プロセッサ１１等は、それぞれ記録媒体３００に記録されているゲーム制御プログラムのデータの一部又はコンピュータの拡張スロットに搭載される拡張ボード上のハードウエアに対応する。また、インターフェース回路４、パラレルポート８、シリアルポート９及びインターフェース回路１３は、コンピュータの拡張スロットに搭載される拡張ボード上のハードウエアに対応する。また、バッファ１４〜１６は、それぞれＲＡＭ５又は拡張メモリの各記憶エリアに対応する。
【００２７】
前記グラフィックスデータ生成プロセッサ３は、ＣＰＵ１のいわばコプロセッサとしての役割を果たすものであり、座標変換や光源計算、例えば固定小数点形式の行列やベクトルの演算を、並列処理によって行う。このグラフィックスデータ生成プロセッサ３が行う主な処理としては、ＣＰＵ１から供給される画像データの２次元又は３次元空間内における各頂点の座標データ、移動量データ、及び回転量データ等に基づいて、所定の表示エリア上における処理対象画像のアドレスデータを求めてＣＰＵ１に返す処理、仮想的に設定された光源からの距離に応じて画像の輝度を計算する処理等がある。
【００２８】
インターフェース回路４は、周辺デバイス、例えばマウスやトラックボール等のポインティングデバイス等のインターフェース用に用いられる。ＲＡＭ５は、メインメモリとして用いられる。ＲＯＭ６にはゲーム装置１００のオペレーティングシステムとなるプログラムデータ等が記憶されている。
【００２９】
伸張回路７は、動画に対するＭＰＥＧ（Moving Picture Experts Group）規格や静止画に対するＪＰＥＧ（Joint Photographic Experts Group）規格に準拠したイントラ符号化によって圧縮された圧縮画像に対し、伸張処理を施す。この伸張処理は、デコード処理（Variable Length Codeによってエンコードされたデータのデコード）、逆量子化処理、ＩＤＣＴ（Inverse Discrete Cosine Transform）処理、イントラ画像の復元処理等を含む。
【００３０】
描画プロセッサ１０は、所定時間（例えば、１フレーム時間である１／６０秒）ごとにＣＰＵ１が発行する描画命令に基づいて、バッファ１４に対する描画処理を行う。バッファ１４は、例えばＲＡＭで構成され、表示エリア（フレームバッファ）と非表示エリアとに分けられる。表示エリアは、テレビジョンモニタ２１の表示面上に表示する画像データの展開エリアで構成される。非表示エリアは、スケルトンを定義するデータ、ポリゴンを定義するモデルデータ、モデルに動きを行わせるアニメーションデータ、各アニメーションの内容を示すパターンデータ、テクスチャデータ及びカラーパレットデータ等の記憶エリアで構成される。ここで、テクスチャデータは２次元の画像データであり、カラーパレットデータはテクスチャデータ等の色を指定するためのデータである。ＣＰＵ１は、これらのデータを記録媒体３００から一度に又はゲームの進行状況に応じて複数回に分けて読み出して、予めバッファ１４の非表示エリアに記録する。
【００３１】
音声プロセッサ１１は、記録媒体３００から読み出されたＡＤＰＣＭ（Adaptive Differential Pulse Code Modulation）データを音源としてバッファ１５に記憶させる。この音声プロセッサ１１は、例えば、周波数４４．１ｋＨｚのクロック信号に基づいてバッファ１５からＡＤＰＣＭデータを読み出し、当該ＡＤＰＣＭデータに対してピッチ変換、ノイズ付加、エンベロープ設定、レベル設定及びリバーブ付加等の処理を施す。音声プロセッサ１１で処理された音声データは、増幅回路２２を介してスピーカ２３から出力される。
【００３２】
記録媒体ドライブ１７としては、例えば、ＤＶＤ−ＲＯＭドライブ、ＣＤ−ＲＯＭドライブ、ハードディスクドライブ、光ディスクドライブ、フレキシブルディスクドライブ、シリコンディスクドライブ、カセット媒体読み取り機等が用いられる。この場合、記録媒体３００としては、ＤＶＤ−ＲＯＭ、ＣＤ−ＲＯＭ、ハードディスク、光ディスク、フレキシブルディスク、半導体メモリ等が用いられる。記録媒体ドライブ１７は、記録媒体３００から画像データ、音声データ及びプログラムデータを読み出し、読み出したデータをデコーダ１２に供給する。デコーダ１２は、記録媒体ドライブ１７で読み出されたデータに対してＥＣＣ（Error Correction Code）によるエラー訂正処理を施し、当該処理後のデータをＲＡＭ５又は音声プロセッサ１１に供給する。
【００３３】
メモリ１８は、補助記憶装置であり、例えばゲームが中断された場合において、中断時点でのゲーム状態を保持するために各種ゲームパラメータ等を記憶する不揮発性の記憶領域を有する。また、メモリ１８は、ゲームプログラムや各種データを記憶することができる。このメモリ１８としては、例えばカード型メモリ、ハードディスク、半導体メモリ等を用いることができる。
【００３４】
コントローラ１９は、操作者であるユーザが種々の操作指令を入力するために使用する操作装置であり、ユーザの操作に応じた操作信号を、インターフェース回路１３を介してＣＰＵ１に送出する。このコントローラ１９は、例えば、アナログスティック、方向キー、確定ボタン等を供えている。このコントローラ１９は、特定領域５０５や照準カーソル５０３の移動、打者キャラクタ５０１による打撃等を実行させるコマンドを、ＣＰＵ１に与えるために使用される。
【００３５】
次に、上記のゲーム装置１００の概略動作について説明する。ゲーム装置１００に電源が投入されると、ＲＯＭ６に記憶されているオペレーティングシステムに基づいて、記録媒体３００からゲームプログラムを読み出すように、ＣＰＵ１は記録媒体ドライブ１７に指示する。記録媒体ドライブ１７が記録媒体３００から読み出した画像データ、音声データ及びプログラムデータは、デコーダ１２に供給されてエラー訂正処理が施される。
【００３６】
エラー訂正処理が施された画像データは、バスライン２を介して伸張回路７に供給されて上述した伸張処理が施される。その後、画像データは描画プロセッサ１０に供給され、当該描画プロセッサ１０によってバッファ１４の非表示エリアに書き込まれる。また、デコーダ１２によってエラー訂正処理が施された音声データは、ＲＡＭ５又は音声プロセッサ１１を介してバッファ１５に書き込まれる。また、デコーダ１２によってエラー訂正処理が施されたプログラムデータはＲＡＭ５に書き込まれる。
【００３７】
以降、ＣＰＵ１は、ＲＡＭ５に記憶されているゲーム制御プログラム及びユーザがコントローラ１９を用いて指示する内容に基づいて、選手カード交換処理やゲーム進行処理を行う。すなわち、ＣＰＵ１は、ユーザがコントローラ１９を用いて指示する内容に基づいて、画像処理の制御、音声処理の制御及び内部処理の制御等を適宜行う。
【００３８】
また、ゲーム装置１００は、通信インターフェースを含む通信制御部２０を備えており、無線ＬＡＮ通信、インターネット通信、距離無線通信または有線通信などにより他のゲーム装置１００と接続し、両者間で同期をとりながらデータのやり取りを行うことによって、通信対戦型のゲームを実行することも可能である。
【００３９】
図２または図３に示すように、二人のユーザが通信対戦する形態では、二人のユーザがそれぞれ操作する２台のゲーム装置１００がネットワーク６００を介して通信可能に接続される。ネットワーク６００としては、インターネット、公衆回線（電話回線、移動体通信回線等）、有線ＬＡＮ（Local Area Network）、無線ＬＡＮ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＵＷＢ（Ultra Wide Band）等であってもよく、或いはこれらを組み合せたものであってもよい。
【００４０】
ネットワーク６００を介した通信対戦の方式としては、図２に例示するように、複数のゲーム装置１００間で直接通信して対戦する、いわゆるＰ２Ｐ（Peer to Peer）方式が適用できる。また、複数のゲーム装置１００が直接無線通信を行うアドホックモードでの無線通信対戦や通信ケーブルを介した有線通信対戦も可能であり、これらはＰ２Ｐ方式に含まれる。通信対戦では、例えばＰ２Ｐ通信により２台のゲーム装置１００が互いに同期をとりながら共通の仮想ゲーム空間を構築し、ゲームを進行する。
【００４１】
また、ネットワーク６００を介した通信対戦の方式としては、図３に示すように、クライアントとしての複数のゲーム装置１００がサーバ装置４００を介して対戦する、いわゆるクライアント／サーバ方式も適用できる。すなわち、投手キャラクタから送出されたボールを、打者キャラクタが打ち返す対戦を、２台のゲーム装置１００間で通信しながら実行するに際し、サーバ装置４００を介して通信する形態であってもよい。
【００４２】
なお、本ゲームには、ユーザが他のユーザと通信対戦するゲームモード以外にも、ユーザがコンピュータと対戦するゲームモード（いわゆるＣＰＵ対戦モード）もある。以下には、主に、通信対戦のゲームモードを例に挙げて、ゲームの一例を説明する。
【００４３】
〔ゲームの一例〕
図２または図３に示すように、二人のユーザがネットワーク６００を介して通信対戦する形態では、２台のゲーム装置１００にそれぞれ接続されたテレビジョン２００のテレビジョンモニタ２１に、図４に例示する画面と図５に例示する画面とがそれぞれ表示される。すなわち、打者キャラクタ５０１を操作する側のゲーム装置１００のテレビジョンモニタ２１には、図４の画面が表示され、投手キャラクタ５０２を操作する側のゲーム装置１００のテレビジョンモニタ２１には、図５のゲーム画面が表示される。
【００４４】
図５は、投手キャラクタ５０２が打者キャラクタ５０１に対して投球した直後の状態を示している。同図は、投手側から打者側を見た状態の画像を示しており、投手キャラクタ５０２を操作する第２ユーザは、投打の対戦時にはこの画面を見ながらゲームを行なう。投手側の第２ユーザは投球前に球種および投球コースを選択できる。例えば、画面には球種選択用アイコン５１１が表示され、第２ユーザは、この球種選択用アイコン５１１を見ながらコントローラ１９（アナログスティックまたは方向キー等）を操作して球種を選択し、決定ボタンを押すことで球種の選択を確定する。
【００４５】
図５に示す球種選択用アイコン５１１の例では、中央部から周囲に向かって６本のラインａ、ｂ、ｃ、ｄ、ｅ、ｆが延びており、６種類の球種から１つを選択可能である。例えば、ａが「ストレート」、ｂが「シュート」、ｃが「シンカー」、ｄが「フォーク」、ｅが「カーブ」、ｆが「スライダー」である。なお、図５の例では、６種類の球種が選択可能であるが、選択可能な球種は投手キャラクタ５０２毎に異なっており、例えば２種類〜５種類の球種しか選択できない場合もある。第２ユーザの操作によって選択された球種は、球種選択用アイコン５１１の上部に表示される。
【００４６】
上記のようにして球種が決定されると、投手キャラクタ５０２が投球モーションに入る。例えば、その後、投手キャラクタ５０２がボールをリリースするまでの間に、第２ユーザは投球コースを指定することができる。画面には、ストライクゾーン５０４および投球コースを指定するためのコース指定カーソル５１２が表示される。例えば、第２ユーザは、コントローラ１９（アナログスティックまたは方向キー等）を操作してコース指定カーソル５１２を移動させ、投球コースを指定できる。
【００４７】
なお、画面一体型等のゲーム装置１００において、画面がタッチパネルになっている場合には、第２ユーザが指またはスタイラス等で画面に接触することにより、接触位置を投球コースとして指定できるようにしてもよい。
【００４８】
上記のようにして投球コースを指定した後は、第２ユーザがコントローラ１９の投球開始ボタンを押すことにより、又は自動的に、投手キャラクタ５０２が投球を開始し、ボールをリリースする。なお、図５では、便宜上、ストライクゾーン５０４、球種選択用アイコン５１１、コース指定カーソル５１２を表示しているが、例えばボールのリリース後はこれらの表示を消去してもよい。
【００４９】
ゲーム装置１００は、第２ユーザによって選択された球種および投球コースに基づいて、投手キャラクタ５０２からリリースされたボールの軌道を算出し、ボールをホームベース方向へと移動させる。なお、ゲーム装置１００は、球種および投球コースだけではなく、投手キャラクタ５０２の能力パラメータ（球速、コントロール、変化レベル等）に基づいて、投手キャラクタ５０２からリリースされたボールの軌道を算出してもよい。ボールの軌道の算出については、既知のアルゴリズムを適用できる。
【００５０】
なお、上記では投手側の第２ユーザが球種および投球コースを選択する例を示したが、投球コースのみを選択することにより、投手キャラクタ５０２が投球を開始するような、より簡易的な野球ゲームとすることもできる。
【００５１】
ところで、打者キャラクタ５０１を操作する第１ユーザには、投手側のゲーム装置１００の画面（図５の画面）は見えないので、相手がどの球種や投球コースを選択したのかは分からない。
【００５２】
一方、打者キャラクタ５０１を操作する第１ユーザは、図４に例示する画面を見ながらゲームを行なう。同図は、打者側から投手側を見た状態の画像を示しており、打者キャラクタ５０１を操作する第１ユーザは、投打の対戦時にはこの画面を見ながらゲームを行なう。このゲーム画面には、第１ユーザによって操作される打者キャラクタ５０１、対戦相手の投手キャラクタ５０２、照準カーソル５０３、ストライクゾーン５０４等が表示される。野球ゲームでは、照準カーソル５０３はミートカーソルとも称され、打者キャラクタ５０１がボールを打撃可能な領域（あるいはボールを効果的に打撃可能な領域）となる。
【００５３】
打者キャラクタ５０１を操作する第１ユーザは、投手キャラクタ５０２が投げたボールに照準カーソル５０３が重なるように、照準カーソル５０３を移動させる操作を行う。ゲーム装置１００は、第１ユーザの操作に応じて、画面上の照準カーソル５０３を移動させる。第１ユーザが照準カーソル５０３を移動させることにより、バットオブジェクトのスイングの位置を調整できる。
【００５４】
ここで、本実施の形態のゲームでは、照準カーソル５０３の大きさは一定ではなく、以下に示すように画面上の位置（座標）に応じて照準カーソル５０３の大きさが変化する。
【００５５】
図５に示すように、本ゲーム装置１００は、照準カーソル５０３の移動が可能な特定領域５０５を画面上に設定する。特定領域５０５の画面上の位置については、任意に定めることができる。例えば、特定領域５０５は、ストライクゾーン５０４の位置に初期設定することができる。図５では、特定領域５０５をストライクゾーン５０４と一致するように初期設定した例を示している。
【００５６】
なお、特定領域５０５の大きさ（面積）は任意に設定可能であり、ストライクゾーン５０４よりも大きくしたり、小さくしたりしてもよい。また、照準カーソル５０３は、特定領域５０５の外側にも移動できるようにしてもよいし、特定領域５０５の外側には移動できないようにしてもよい。
【００５７】
そして、ゲーム装置１００は、特定領域５０５における位置に応じて、前記照準カーソル５０３の大きさが変化するように、前記特定領域５０５内における前記照準カーソル５０３の大きさを設定する。従って、ユーザが特定領域５０５内で照準カーソル５０３を移動させれば、特定領域５０５の内部のローカル座標によって、照準カーソル５０３の大きさが変化する。ここで、ローカル座標としては、例えば、特定領域５０５の中央部（中心点）を原点とした座標系を適用できる。
【００５８】
例えば、照準カーソル５０３は、特定領域５０５の中央部において最も大きく、中央部から離れるほど照準カーソル５０３が小さくなるような設定にすることができる。これにより、図６に例示するように、特定領域５０５の中央部に存在する照準カーソル５０３を様々な方向へ移動させた場合、点線で示すように、特定領域５０５の外周に近づくに連れて連続的に（または段階的に）照準カーソル５０３が小さくなる。これは、現実の野球では、一般的にストライクゾーン５０４の中央部は打撃し易いが、ストライクゾーン５０４の端部は打撃し難いという状況を、ゲームに的確に反映させたものである。なお、図６では、上、下、左、右、右上、右下、左上、左下の８方向のみを示しているが、ユーザは照準カーソル５０３を任意の方向へ移動させることができる。
【００５９】
図６に示す特定領域５０５内における照準カーソル５０３の大きさ分布の設定によれば、図７に例示するように、ストライクゾーン５０４の真ん中のコースに存在する照準カーソル５０３の大きさが最大となるので、第１ユーザは真ん中のコースにきたボールを打撃し易くなる。一方、図８に例示するように、照準カーソル５０３がストライクゾーン５０４の真ん中からずれた位置に存在する場合は、照準カーソル５０３の大きさが図７の場合よりも小さくなるので、第１ユーザによる打撃操作がより困難になる。
【００６０】
この場合、投手側から見れば、単純にストライクゾーンの端部を狙えば有利になるので、このままでは投手側のみにメリットが発生することになる。そこで、本実施の形態のゲーム装置１００では、さらに現実世界において見られる、打者のコース予想という概念を加え、第１ユーザ自らの操作により、特定領域５０５を移動できるようにしている。
【００６１】
すなわち、第１ユーザは、投手キャラクタ５０２からボールがリリースされるまでに、投球コースを予想し、特定領域５０５をストライクゾーン５０４からずれた位置に移動させることができる。例えば、第１ユーザがアウトコースを予想した場合、特定領域５０５をアウトコース側に移動させればよい。画面上で特定領域５０５が移動しても、基本的に、特定領域５０５の内部の設定（領域内の位置に応じて照準カーソル５０３の大きさが変化する設定）は維持される。よって、図９に例示するように、特定領域５０５の中央部をアウトコースに位置するように移動させた場合、アウトコースに存在する照準カーソル５０３の大きさが最大となり、第１ユーザは、アウトコースのボールを、あたかもストライクゾーン５０４の真ん中のボールのように打撃できる。すなわち、第１ユーザは、特定領域５０５をアウトコース側に移動させることにより、アウトコースを意識した打撃が可能となる。
【００６２】
一方、特定領域５０５の中央部をアウトコースに位置するように移動させたことによって、図１０に例示するように、ストライクゾーン５０４の真ん中のコースに存在する照準カーソル５０３の大きさが小さくなるので、第１ユーザは真ん中のコースにきたボールが打撃し難くなる。
【００６３】
同様に、図１１に例示するように、特定領域５０５の中央部をインコースに位置するように移動させた場合、インコースに存在する照準カーソル５０３の大きさが最大となり、第１ユーザは、インコースのボールを、あたかもストライクゾーン５０４の真ん中のボールのように打撃できる。その一方、図１２に例示するように、ストライクゾーン５０４の真ん中のコースに存在する照準カーソル５０３の大きさが小さくなるので、第１ユーザは真ん中のコースにきたボールが打撃し難くなる。
【００６４】
すなわち、第１ユーザのコース予想が当たれば、打者にとって本来不利なはずのストライクゾーン５０４の端部の投球コースが打ち易くなるので、単純に投手側にのみメリットが生じることはなくなり、現実世界での投打の駆け引きを、ゲーム上により緻密でリアルに反映できる。
【００６５】
なお、第１ユーザがストライクゾーン５０４の真ん中のコースを予想（または意識）した場合、特定領域５０５の中央部がストライクゾーン５０４の中央部と一致しているデフォルトの位置から、特定領域５０５を移動させる必要はない。
【００６６】
なお、投手キャラクタ５０２を操作する第２ユーザは、図４、図７〜図１２の画面は見えないので、打者側の第１ユーザがどのコースを予想して特定領域５０５を移動させたかは分からない。
【００６７】
投手キャラクタ５０２からボールがリリースされた後は、最早、第１ユーザが特定領域５０５を移動させることはできない。打者キャラクタ５０１を操作する第１ユーザは、投手キャラクタ５０２が投げたボールに重なるように照準カーソル５０３を移動させると共に、ボールを打撃可能なタイミングでスイングボタンを押すことにより、ボールを打ち返すことができる。ここで、ボールを打撃可能なタイミングとは、ボールが打者キャラクタ５０１の近傍を通過する所定の打撃可能時間帯（例えば、４フレーム時間）とすることができる。
【００６８】
ところで、投手キャラクタ５０２が投げたボールに照準カーソル５０３が重ならなければ、そのボールを打ち返せないようにしてもよい。この場合、打者キャラクタ５０１は、空振りする。
【００６９】
あるいは、照準カーソル５０３は、ボールを効果的に打てるバットの領域である、所謂、スイートスポットを含む所定領域としてもよい。この場合、照準カーソル５０３がボールに重ならない場合でも、バットに当たりさえすれば（すなわち、照準カーソル５０３の周辺のバットオブジェクトの存在する領域と、ボールとが重なれば）、凡打にはなるが、空振りにはならないようにすることができる。
【００７０】
もしも、ボールを打撃可能なタイミング以外でスイングボタンが押された場合には、打者キャラクタ５０１は空振りする。一方、ボールを打撃可能なタイミングでスイングボタンが押されたときに、照準カーソル５０３がボールと重なっている場合には、打者キャラクタ５０１がボールを打ち返す。ボールを打撃可能なタイミングでスイングボタンが押された場合でも、照準カーソル５０３がボールと重ならなければ、打者キャラクタ５０１は空振りする（またはバットに当たっても凡打となる）。
【００７１】
また、投手キャラクタ５０２からボールがリリースされた後、所定のタイミングまでに、第１ユーザがスイングボタンを押さなかった場合には、打者キャラクタ５０１がボールを見送る。ここで、所定のタイミングとは、例えば打撃可能時間帯の終了から３フレーム時間後とすることができる。あるいは、所定のタイミングを、例えば投手キャラクタ５０２からホームベースまでの距離の４分の３を通過するタイミングとしてもよい。打者キャラクタ５０１がバットを振るために要する時間を考慮し、打者キャラクタ５０１がバットを振り始めても間に合わないような任意のタイミングを、前記所定のタイミングに定めることができる。
【００７２】
そして、ゲーム装置１００は、第１ユーザのコース予想等の予想結果に基づいて、投手キャラクタ５０２からボールがリリースされた後に行われる打者キャラクタ５０１の打撃動作またはボールを見送る動作を制御する。
【００７３】
先ず、打者キャラクタ５０１の打撃動作を例示する。例えば、第１ユーザがインコースの予想入力（特定領域５０５をインコース側にシフト）をしていたが、実際にはアウトコースにボールが来たものとする。これは、第１ユーザのコース予想が外れた場合に相当する。この場合、第１ユーザがスイングボタンを押せば、図１３に例示するように、ゲーム画面には、アウトコースに来たボール５４０に対して、打者キャラクタ５０１が泳ぐような打撃姿勢になってバランスを崩しながらスイングする動作が表示される。なお、図１３中の点線で示した打者キャラクタ５０１は、バッターボックス内でどの様な動きをしたかを分かり易くするために、便宜上、打者キャラクタ５０１のスイング前の姿勢を示している。他の図の点線で示した打者キャラクタ５０１も同様である。
【００７４】
これにより、現実世界の打者がとり得る動作を、打者の内面的な意識（予想）という要素も取り入れて、ゲーム上でリアルに再現できる。すなわち、現実世界では、インコースを意識している打者は、インコースのボールを打つのに適したアウトステップの打撃を行おうとする。それに反してアウトコースにボールが来た場合、打者の上体がアウトコース側に傾いて泳ぐような打撃姿勢になり、バランスを崩しながらスイングすることになる。本実施の形態のゲームでは、第１ユーザが事前にインコース予想の入力をすることにより、打者キャラクタ５０１がインコースを意識した打撃が可能となる。そして、第１ユーザによるインコース予想の入力に対してアウトコースにボールが来た場合に、現実世界と同様に、泳いでバランスを崩した打撃動作となるように打者キャラクタ５０１の動作を制御し、画面上でリアル感を醸し出している。
【００７５】
また、図１３は、第２ユーザ側のゲーム装置１００のゲーム画面を示しているが、同様に、第１ユーザ側のゲーム装置１００のゲーム画面にも、打者キャラクタ５０１が泳ぐような打撃姿勢になってバランスを崩しながらスイングする動作が表示される。
【００７６】
上記のように第１ユーザの予想が外れた場合に、打者キャラクタ５０１がバランスを崩した打撃動作を行うが、必ずしも空振りしたり凡打になったりするとは限らない。打者キャラクタ５０１がバランスを崩しながらでも、ヒットを打つこともある。これについて以下に説明する。
【００７７】
第１ユーザのコース予想が外れれば、すなわち、投手キャラクタ５０２が投げたボールが、予め移動させておいた特定領域５０５の中央部から離れたコースに来れば、打撃の難易度が高くなる。これは、特定領域５０５の中央部から離れるほど照準カーソル５０３の面積が小さくなるためである。これにより、現実世界で打者のコース予想が外れた場合に、打者が空振りしたり凡打したりし易くなる状態を、ゲーム上でリアルに再現できる。但し、第１ユーザが、小さくなった照準カーソル５０３を、ボールの中心付近に重ねてタイミング良く打撃することができれば、ヒット性の打球になる。
【００７８】
但し、第１ユーザのコース予想が外れた場合、そのデメリットを明確化するために、打者キャラクタ５０１が打撃できなくなるようなゲーム仕様にすることも可能である。
【００７９】
また、例えば、第１ユーザがインコースの予想入力をしていたところ、実際にインコースにボールが来たものとする。これは、第１ユーザのコース予想が当たった場合に相当する。この場合、第１ユーザがスイングボタンを押せば、図１４に例示するように、ゲーム画面には、打者キャラクタ５０１がバランスを崩すことなくスイングする動作が表示される。例えば、打者キャラクタ５０１は、インコースに来たボール５４０を打つのに適したアウトステップの打撃動作をバランスよく行う。
【００８０】
これも、現実世界の打者がとり得る動作を、打者の内面的な意識という要素も取り入れて、ゲーム上でリアルに再現したものである。すなわち、現実世界では、インコースを意識している打者は、インコースに来たボールを、バランスを崩すことなく打撃することができる。本実施の形態のゲームでは、第１ユーザが事前にインコース予想の入力をしたのに対して、実際にインコースにボールが来た場合に、現実世界と同様に、バランスを崩すことなく打者キャラクタ５０１の打撃動作を制御し、画面上でリアル感を醸し出している。
【００８１】
また、図示しない第１ユーザ側のゲーム装置１００のゲーム画面にも、打者キャラクタ５０１が図１４と同様の動作を行う画像（打者側から投手側を見た視点の異なる画像）が表示される。
【００８２】
上記のように第１ユーザの予想が当たった場合に、打者キャラクタ５０１がバランスを崩すことのない打撃動作を行うが、基本的に、ヒットを打てるか否かは第１ユーザの打撃操作にかかっている。
【００８３】
第１ユーザのコース予想が当たれば、すなわち、投手キャラクタ５０２が投げたボールが、予め移動させておいた特定領域５０５の中央部付近を通過するコースに来れば、打撃し易くなる。これは、特定領域５０５の中央部で、照準カーソル５０３の面積が最大となるためである。これにより、現実世界で打者のコース予想が当たった場合に、打者がボールを捉え易くなる状態を、ゲーム上でリアルに再現できる。但し、第１ユーザが、照準カーソル５０３をボールに重ね損ねたり、スイングボタンを押すタイミングが悪ければ、空振りしたり凡打したりすることもある。
【００８４】
次に、打者キャラクタ５０１がボールを見送る動作を例示する。例えば、第１ユーザがインコースの予想入力をしていたが、実際にはアウトコースにボールが来て、コース予想が外れたものとする。この場合、第１ユーザが所定のタイミングまでにスイングボタンを押さなければ、打者キャラクタ５０１は、図１５に例示するボール５４０の見送り動作を行う。すなわち、打者キャラクタ５０１は、予想に反したコースに来たボール５４０を目で追いかけながらスイング動作に入り、途中でスイングを止めて上体がアウトコース側に突っ込んだ姿勢でバランスを崩してボール５４０を見送る。
【００８５】
これも、現実世界の打者がとり得る動作を、打者の内面的な意識という要素も取り入れて、ゲーム上でリアルに再現したものである。すなわち、現実世界では、インコースを意識しているのにアウトコースにボールが来た場合、打者は余裕をもってボールを見極めることができない場合が多い。従って、打者は、スイング動作に入った状態でボールと判断し、スイングを止めてボールを見送る。このため、打者の上体がアウトコース側に突っ込んだ姿勢でボールを見送ることになり、バランスを崩す。図１５の画面例は、このような打者キャラクタ５０１のボール５４０の見送り動作を再現している。
【００８６】
また、例えば、第１ユーザがアウトコースの予想入力をしていたところ、実際にアウトコースにボールが来て、コース予想が当たったものとする。この場合、第１ユーザが所定のタイミングまでにスイングボタンを押さなければ、打者キャラクタ５０１は、図１６に例示するボール５４０の見送り動作を行う。すなわち、打者キャラクタ５０１は、スイングを開始することもなく、バランスを崩さずにボール５４０を見送る。
【００８７】
これも、現実世界の打者がとり得る動作を、打者の内面的な意識という要素も取り入れて、ゲーム上でリアルに再現したものである。すなわち、現実世界では、アウトコースを意識している打者は、アウトコースに来たボールを、慌てずに余裕をもって見極めることができる。従って、打者は、スイングを開始せずに、余裕をもってボールを見送ることができる。図１６の画面例は、このような打者キャラクタ５０１のボール５４０の見送り動作を再現している。
【００８８】
また、例えば、第１ユーザがアウトコースの予想入力をしていたが、実際にはインコースにボールが来て、コース予想が外れたものとする。この場合、第１ユーザが所定のタイミングまでにスイングボタンを押さなければ、打者キャラクタ５０１は、図１７に例示するボール５４０の見送り動作を行う。すなわち、打者キャラクタ５０１は、ボール５４０が身体に当たるのを避けようとして腰を引いたり、のけぞったりして、バランスを崩した動作をとる。
【００８９】
これも、現実世界の打者がとり得る動作を、打者の内面的な意識という要素も取り入れて、ゲーム上でリアルに再現したものである。すなわち、現実世界において、打者がアウトコースを意識した状態でインコースにボールが来た場合、打者はボールが通常より身体に近づいて来るように感じ、必要以上に大きくボールを避けようとする。図１７の画面例は、このような打者キャラクタ５０１のボール５４０の見送り動作を再現している。
【００９０】
また、例えば、第１ユーザがインコースの予想入力をしていたところ、実際にインコースにボールが来て、コース予想が当たったものとする。この場合、第１ユーザが所定のタイミングまでにスイングボタンを押さなければ、打者キャラクタ５０１は、図１８に例示するボール５４０の見送り動作を行う。すなわち、打者キャラクタ５０１は、ボール５４０の衝突を回避する動作をとることも、スイングを開始することもなく、バランスを崩さずにボール５４０を見送る。
【００９１】
これも、現実世界の打者がとり得る動作を、打者の内面的な意識という要素も取り入れて、ゲーム上でリアルに再現したものである。すなわち、現実世界では、インコースを意識している打者は、インコースに来たボールを、慌てずに余裕をもって見極めることができる。従って、打者は、デッドボールになりそうなほど身体の近くを通過するボール以外は、腰を引いたり、のけぞったりすることなく、余裕をもってボールを見送ることができる。図１８の画面例は、このような打者キャラクタ５０１のボール５４０の見送り動作を再現している。
【００９２】
なお、図１３〜図１８は、第２ユーザ側のゲーム装置１００のゲーム画面（投手側から打者側を見た画像）を示しているが、第２ユーザと対戦している第１ユーザのゲーム装置１００のゲーム画面にも、図１３〜図１８に示した動作と同様の動作を行う打者キャラクタ５０１の画像（打者側から投手側を見た視点の異なる画像）が表示される。
【００９３】
第１ユーザが打撃操作を行った場合において、打撃に成功した場合、ゲーム装置１００は、スイングボタンが押されたタイミング、照準カーソル５０３の中心（重心）とボールの中心（重心）とのずれ量等に基づいて、打撃されたボールの軌道を算出し、ボールを移動させる。例えば、スイングボタンが押されたタイミングが、打撃可能時間帯の中間付近ならばセンター方向の打撃、それよりも早ければ、所謂、引っ張る打撃、それよりも遅ければ、所謂、流し打ちの打撃となる。また、照準カーソル５０３の中心とボールの中心とのずれ量が少ないほど、強いライナー性の打球となる。また、照準カーソル５０３の中心がボールの中心よりも上側にずれていれば、所謂、ゴロの打球、下側にずれていれば、所謂、フライの打球となる。このように、照準カーソル５０３とボールとの重なり方によって、打球の速度や打球の角度が変わる。さらに、ゲーム装置１００は、打者キャラクタ５０１の能力パラメータ（パワー、弾道等）をも考慮して、打ち返されたボールの軌道を算出してもよい。ボールの軌道の算出については、既知のアルゴリズムを適用できる。
【００９４】
〔ゲーム装置の機能的構成および動作〕
次に、図１９の機能ブロック図等を参照して、移動体に対してキャラクタが作用を与えるゲームを制御するゲーム装置１００の主要な機能的構成について説明する。本ゲーム装置１００は、第１ユーザによって操作される打者キャラクタ５０１が、第２ユーザによって操作される投手キャラクタ５０２が投じたボールを打撃する野球またはソフトボールゲームを制御する。
【００９５】
図１９に示すように、ゲーム装置１００は、主に、予想手段７１、移動体移動手段の一例としてのボール移動手段７２および動作制御手段７３を備えている。これらの各手段は、ゲーム装置１００のＣＰＵ１が、本実施の形態に係るプログラムを実行することにより実現されるものである。
【００９６】
予想手段７１は、移動体の移動開始前または移動開始時に、キャラクタを操作する第１ユーザの操作に基づいて、移動体の移動に関する移動パラメータに対する予想情報を取得する機能を有する。本実施の形態の野球ゲームでは、投手キャラクタ５０２が投げるボールが移動体であり、移動体の移動開始前または移動開始時とは、投手キャラクタ５０２からボールが送出（リリース）される前または送出開始時である。
【００９７】
予想手段７１が取得する予想情報には、移動体の移動コース、速さ、移動中の軌道変化の少なくとも１つの移動パラメータに対する予想情報を含めることが好ましい。「移動コース」としては投球コース、「速さ」としてはボールの球速（例えば、速球等の速い球、チェンジアップ等の遅い球）、「移動中の軌道変化」としては球種（ストレート、カーブ、シュート等）がそれぞれ該当する。これらのうちの１つ、又は２つ以.上を組み合わせて、移動体の移動に関する移動パラメータの予想を行うことができる。
【００９８】
投球コースの予想の場合は、インコース、アウトコース等の予想コースの領域を示す情報、または予想コースの座標情報を「予想情報」とすることができる。具体例を以下に説明する。
【００９９】
例えば、第１ユーザが、ストライクゾーン５０４と一致するように初期設定された特定領域５０５を、図９に例示するようにアウトコース側に移動させる操作を行った場合、予想手段７１は、移動後の特定領域５０５の位置に基づいて、予想情報として「アウトコース」を取得する。なお、この場合、アウトコースを示すコード情報、例えば「０」を予想情報として取得してもよい。また、図１１に例示するように、第１ユーザが特定領域５０５をインコース側に移動させる操作を行った場合、予想手段７１は、予想情報として「インコース」またはそれを示すコード情報、例えば「１」を予想情報として取得してもよい。
【０１００】
また、例えば、第１ユーザが移動させた特定領域５０５の中央部の座標（グローバル座標）の情報を、投球コースの予想情報として取得してもよい。ここで、グローバル座標とは、例えば、ゲーム画面の左上角を基準とした座標である。
【０１０１】
なお、図９等に示すように、本野球ゲームでは、ストライクゾーン５０４に重畳して配置した特定領域５０５を第１ユーザが画面上でシフトさせる操作によって投球コースの予想入力を行うというユーザインターフェースを実現している。但し、第１ユーザが投球コースの予想入力を行う操作は、特定領域５０５を用いた操作に限定されるものではない。例えば、「アウトコース」、「インコース」等の複数の投球コースが選択肢として画面上に表示され、その中から第１ユーザが予想する任意の投球コースを、コントローラ１９等を操作して選択するようにしてもよい。あるいは、第１ユーザが予想する投球コースを、ポインティングデバイスを使用して画面上で入力してもよい。あるいは、画面がタッチパネルで構成されている場合には、指またはタッチペン等を画面上に接触させることによって、第１ユーザが予想する投球コースを画面上で入力してもよい。何れの操作によって投球コースの予想入力が行われた場合でも、予想手段７１は、投手キャラクタ５０２からボールが送出される前または送出開始時に、第１ユーザがボールの投球コースを予想した予想投球コースの情報（予想コースの領域を示す情報または予想コースの座標情報）を取得する。
【０１０２】
また、例えば、球種予想の場合は、直球、カーブ、スライダー等の予想球種の情報を「予想情報」とすることができる。第１ユーザが球種予想の入力操作を行う一例としては、図４に示した球種選択用アイコン５１１が、第１ユーザのゲーム画面にも表示され、この球種選択用アイコン５１１を使用して、球種予想の入力操作を行う。
【０１０３】
また、例えば、球速予想の場合は、速球等の「速い球」、チェンジアップ等の「遅い球」の情報を「予想情報」とすることができる。第１ユーザが球速予想の入力操作を行う一例としては、例えば、「速い球」、「遅い球」という選択肢が画面上に表示され、その中から第１ユーザがコントローラ１９等を操作して選択する。あるいは、例えば、球速が「１３０Ｋｍ／ｈ未満」、「１３０Ｋｍ／ｈ以上、且つ１４５Ｋｍ／ｈ未満」、「１４５Ｋｍ／ｈ以上」という選択肢が画面上に表示され、その中から第１ユーザがコントローラ１９等を操作して選択するようにしてもよい。
【０１０４】
また、予想手段７１は、取得した予想情報を、記憶装置の一例であるＲＡＭ５に記憶する。この予想情報は、予想の一致度に応じた打者キャラクタ５０１の動作制御に用いられる。
【０１０５】
以下には、主に、第１ユーザが投球コースの予想入力を行い、予想手段７１が予想情報として予想投球コースの情報を取得する好ましい例について説明する。すなわち、予想手段７１は、ボールの投手キャラクタ５０２からの送出開始前または送出開始時に、第１ユーザの操作に基づいて、ボールの投球コースを予想した予想投球コースの情報を取得するものとして、以下の説明を続ける。
【０１０６】
次に、ボール移動手段７２について説明する。ボール移動手段７２は、移動体の一例としてのボールを操作する第２ユーザの操作に基づいて、移動パラメータを決定して前記移動体を移動させる機能を有する。本野球ゲームでは、第２ユーザが、投手キャラクタ５０２が投げるボールの移動パラメータとして投球コースや球種等を決定するための操作を行うことにより、ボール移動手段７２が、当該操作に基づいて移動パラメータとしての投球コースや球種等を決定し、ボールを打者キャラクタ５０１の方へ移動させる。第２ユーザによる投球コースや球種の決定操作は、例えば図４に示した球種選択用アイコン５１１やコース指定カーソル５１２により行うことができる。
【０１０７】
次に、動作制御手段７３について説明する。動作制御手段７３は、投手キャラクタ５０２からリリースされたボールの移動後の打者キャラクタ５０１の動作を制御する機能を有する。この動作制御手段７３は、予想手段７１によって取得された移動パラメータに対する予想情報（例えば予想投球コース）と、ボール移動手段７２によって決定された移動パラメータ（例えば投球コース）との一致度に応じて、打者キャラクタ５０１の動作を異ならせる。ここで、一致度としては、移動パラメータに対する予想情報と実際の移動パラメータとの一致の程度を、例えば値またはレベルとして表すことができる。
【０１０８】
例えば、移動パラメータに対する予想情報と実際の移動パラメータとが一致する場合の一致度を「１」または「レベルＡ」、不一致の場合の一致度を「０」または「レベルＢ」として、一致度を２段階の値またはレベルで表しても良い。例えば、第１ユーザの予想投球コースがインコースの場合、実際の投球コースがインコースか否かで、一致度を前記の２段階で評価する。
【０１０９】
あるいは、移動パラメータに対する予想情報と実際の移動パラメータとの一致の程度を、３段階以上の値またはレベルで表しても良い。例えば、ボールがホームベース付近を通過する領域を、インコース、真ん中コース、アウトコースの各領域に３分割する。例えばストライクゾーン５０４を水平方向に３等分し、その真ん中を真ん中コース領域、真ん中コース領域よりもインコース側をインコース領域、真ん中コース領域よりもアウトコース側をアウトコース領域とする。そして、予想投球コースが例えばインコース領域の場合において、実際の投球コースがインコース領域であれば一致度を「２」または「レベルＡ（最大）」、真ん中コース領域であれば一致度を「１」または「レベルＢ」、アウトコース領域であれば一致度を「０」または「レベルＣ（最低レベル）」とする。また、予想投球コースがアウトコース領域の場合において、実際の投球コースがアウトコース領域であれば一致度を「２」または「レベルＡ」、真ん中コース領域であれば一致度を「１」または「レベルＢ」、インコースで領域あれば一致度を「０」または「レベルＣ」とする。また、予想投球コースが真ん中コース領域の場合において、実際の投球コースが真ん中コース領域であれば一致度を「２」または「レベルＡ」、インコース領域またはアウトコース領域であれば一致度を「１」または「レベルＢ」とする。
【０１１０】
あるいは、予想情報が予想投球コースの座標情報であった場合、予想投球コースの座標と実際の投球コースの座標とのずれ量（両座標間の距離Ｌ）に基づいて、一致度を算出してもよい。例えば図２０に示すように、画面内のストライクゾーン５０４を含むＸＹ平面における、第１ユーザの予想投球コースの座標をＡ（Ｘ１，Ｙ１）、第２ユーザの操作により投球された実際の投球コースの座標をＢ（Ｘ２，Ｙ２）とする。そして、例えば、一致度Ｍを、ＡＢ間の距離Ｌに基づいて、下式（１）により算出する。
【０１１１】
Ｍ＝ａ−√｛（Ｘ２−Ｘ１）２＋（Ｙ２−Ｙ１）２｝  ・・・（１）
【０１１２】
上式（１）において、ａは定数であり、任意の値を設定可能である。例えば、ストライクゾーン５０４の対角の距離をａとして設定することができる。
【０１１３】
前記動作制御手段７３は、移動体の移動中に、第１ユーザによって移動体に作用を与えるための作用付与操作が行われた場合に、前記一致度に応じて、キャラクタにおける移動体に作用を与えるための動作を異ならせる。ここで、「作用付与操作」の一例としては、本野球ゲームでは、第１ユーザが行うスイングボタン操作である。なお、後述するサッカーゲームのＰＫ戦では、ゴールキーパーキャラクタをボールに飛びつかせる操作が、前記作用付与操作に該当する。また、例えば、テニスゲームでは、ラケットスイング操作が、前記作用付与操作に該当する。これらは一例であり、ゲームの種類や内容に応じた作用付与操作を適用できる。
【０１１４】
また、前記の「キャラクタにおける移動体に作用を与えるための動作」とは、例えば本野球ゲームでは、打者キャラクタ５０１がボールを打ち返そうとバットを振る動作である。また、例えば、サッカーゲームのＰＫ戦では、ゴールキーパーキャラクタがボールを捕えよう（または弾こう）として飛びつく動作である。また、テニスゲームでは、サーブされたボールを、レシーバーキャラクタが打ち返そうとしてラケットを振る動作である。これらは一例であり、キャラクタは、ゲームの種類や内容に応じた動作を行う。
【０１１５】
この構成によれば、第１ユーザによってスイングボタン操作等の作用付与操作が行われた場合に、一致度に応じて（すなわち、第１ユーザの予想の当否に応じて）、打者キャラクタ５０１の動作が異なる。この場合、動作制御手段７３は、移動体に作用を及ぼすタイミングにおける打者キャラクタ５０１の動作を制御する。一例を挙げると、インコース予想に対して、アウトコースにボールが来た場合は、それを打とうとして打者キャラクタ５０１は泳ぐような打撃姿勢になる（バランスを崩す）。一方、アウトコース予想に対して、予想通りアウトコースにボールが来た場合は、打者キャラクタ５０１はバランスを崩すことなくアウトコースに適したインステップの打撃姿勢になる（バランスを崩さない）。これにより、投手側の第２ユーザは、打者キャラクタ５０１がバットを振る動作を見ることによって、第１ユーザの予想の当否を推測可能となる。
【０１１６】
また、前記動作制御手段７３は、移動体の移動中に、第１ユーザによって移動体に作用を与えるための作用付与操作が行われなかった場合に、前記一致度に応じて、キャラクタにおける移動体を見送る動作を異ならせる。
【０１１７】
本構成では、第１ユーザによってスイングボタン操作等の作用付与操作が行われなかった場合でも、一致度に応じて（すなわち、第１ユーザの予想の当否に応じて）、打者キャラクタ５０１によるボールを見送る動作が異なる。例えば、アウトコース予想に対して、インコースにボールが来た場合は、打者キャラクタ５０１がボールを避けようとしてのけぞったり、腰を引いたりするような姿勢でボールを見送る（バランスを崩す）。一方、インコース予想に対して、予想通りインコースにボールが来た場合は、打者キャラクタ５０１は体勢を崩すことなく余裕をもってボールを見送る（バランスを崩さない）。これにより、投手側の第２ユーザは、打者側がボールを見送る場合も、第１ユーザの予想の当否を推測可能となる。
【０１１８】
ここで、動作制御手段７３は、前記一致度が所定の閾値またはレベル以上の場合に、打者キャラクタ５０１の動作を第１動作パターンとする一方、前記一致度が前記所定の閾値またはレベル未満の場合に、打者キャラクタ５０１の動作を前記第１動作パターンとは異なる第２動作パターンとすることが好ましい。
【０１１９】
一致度が所定の閾値またはレベル以上とは、基本的に打者キャラクタ５０１を操作する第１ユーザの予想が当たった（または予想に近い）場合に相当する。この場合は、打者キャラクタ５０１が第１動作パターンの動作を行う。第１動作パターンでは、打者キャラクタ５０１がデフォルトの打撃またはボールを見送る動作を行う。本実施の形態では、打者キャラクタ５０１が、バランスを崩すことのない打撃またはボールを見送る動作を行うことをデフォルトとする。但し、前記デフォルトの動作において、ボールとバットの位置関係、ボールと打者キャラクタ５０１との位置関係等によって、打者キャラクタ５０１の動作の微妙な違いは表現されるものとしてもよい。例えば、打者キャラクタ５０１が高目のボールを打撃する場合には、高目のボールに適したバットスイング軌道の打撃動作となるし、低目のボールを打撃する場合には低目のボールに適したバットスイング軌道の打撃動作となる。また、例えば、打者キャラクタ５０１がインコースのボールを打撃する場合には、インコースのボールを打つのに適したアウトステップの打撃動作となるし、アウトコースを打撃する場合には、アウトコースのボールを打つのに適したインテップの打撃動作となる。
【０１２０】
次に、所定の閾値またはレベルについて説明する。例えば、予想情報と実際の移動パラメータとが一致する場合の一致度を「１」または「レベルＡ」、不一致の場合の一致度を「０」または「レベルＢ」とする場合、所定の閾値を「１」または所定のレベルを「レベルＡ」とすることができる。
【０１２１】
また、例えば、予想投球コースがインコースの場合において、実際の投球コースがインコースであれば一致度を「２」、真ん中コースであれば一致度を「１」、アウトコースであれば一致度を「０」とする場合、所定の閾値を「２」または「１」とすることができる。ここで、閾値を「２」とした場合は、インコース予想に対して実際にインコースにボールが来た場合のみ、バランスを崩さない第１動作パターンとする。一方、閾値を「１」とした場合は、インコース予想に対して実際にインコースまたは真ん中コースにボールが来た場合に、バランスを崩さない第１動作パターンとする。これは、真ん中コースは基本的に打者にとって打ち易いコースであるため、インコース（またはアウトコース）の予想に対して真ん中コースにボールが来ても、コース予想が外れたわけではないものとみなし、バランスを崩さない第１動作パターンとするものである。
【０１２２】
また、上式（１）に例示するように、予想投球コースの座標と実際にボールが通過した座標とのずれ量に基づいて一致度を算出する場合、任意の値を閾値として設定することができる。一例を挙げると、ストライクゾーン５０４の水平方向の長さの２分の１の値を、閾値として設定できる。この例の場合、第１ユーザの予想投球コースの座標から、ストライクゾーン５０４の水平方向の長さの２分の１以内の範囲をボールが通過すれば、第１ユーザによる投球コースの予想が略当たったものとし、打者キャラクタ５０１がバランスを崩さない第１動作パターンをとるものとする。例えば、図１４、１６、１８に例示するように、打者キャラクタ５０１は、バランスを崩すことなく打撃またはボールを見送る動作を行う。
【０１２３】
一方、一致度が所定の閾値またはレベル未満の場合とは、基本的に打者キャラクタ５０１を操作する第１ユーザの予想が外れた（または予想から遠い）場合に相当する。この場合は、打者キャラクタ５０１が第２動作パターンの動作を行う。第２動作パターンでは、第１動作パターンにはない動作が加えられる。例えば、第２動作パターンでは、第１動作パターンとの相違を、少なくとも第２ユーザが明確に認識できるように、泳ぐ、のけぞる、腰を引く等、打者キャラクタ５０１がバランスの崩れた体勢で打撃またはボールを見送る動作を行う（図１３、１５、１７参照）。
【０１２４】
このように、移動パラメータに対する予想情報と実際の移動パラメータとの一致度に応じて、打者キャラクタ５０１の動作として、第１動作パターンまたは第２動作パターンの何れかが選択されるので、第２ユーザは、投球後の打者キャラクタ５０１の動作を見ることにより、相手側の事前予想の当否を明確に推測可能となる。
【０１２５】
例えば、第２ユーザがアウトコースに投げる操作をしたことにより、投手キャラクタ５０２がアウトコースにボールを投げたものとする。これに対して、図１３に示すように、打者キャラクタ５０１が泳ぐような打撃姿勢になってバランスを崩しながらスイングした場合（第２動作パターン）、それを見た第２ユーザは、対戦相手がアウトコース以外を予想していたと推測できる。また、打者キャラクタ５０１がボールを見送る場合も、図１５に示すように、途中でスイングを止めて上体がアウトコース側に突っ込んだ姿勢でバランスを崩してボールを見送る（第２動作パターン）。それを見た第２ユーザは、対戦相手がアウトコース以外を予想していた（所謂、読みが外れた）と推測できる。一方、投手キャラクタ５０２がアウトコースにボールを投げたのに対して、打者キャラクタ５０１がバランスを崩さずにバットを振った場合（第１動作パターン）、その結果がヒット、凡打、ファールボール（foul ball）、空振りの何れであっても、第２ユーザは、対戦相手がアウトコースを予想していた（所謂、読みが当たった）可能性があると推測できる。また、図１６に示すように、打者キャラクタ５０１がバランスを崩さずにボールを見送った場合も（第１動作パターン）、第２ユーザは、対戦相手がアウトコースを予想していた可能性があると推測できる。
【０１２６】
また、例えば、第２ユーザがインコースに投げる操作をしたことにより、投手キャラクタ５０２がインコースにボールを投げたものとする。これに対して、打者キャラクタ５０１が、例えばのけ反りながらバランスを崩したスイングをした場合（第２動作パターン）、それを見た第２ユーザは、対戦相手がインコース以外を予想していたと推測できる。また、打者キャラクタ５０１がボールを見送る場合も、図１７に示すように、腰を引いてバランスを崩してボールを見送る（第２動作パターン）。それを見た第２ユーザは、対戦相手がインコース以外を予想していたと推測できる。一方、投手キャラクタ５０２がインコースにボールを投げたのに対して、図１４に示すように、打者キャラクタ５０１がバランスを崩さずにバットを振った場合（第１動作パターン）、その結果がヒット、凡打、ファールボール、空振りの何れであっても、第２ユーザは、対戦相手がインコースを予想していた可能性があると推測できる。また、図１８に示すように、打者キャラクタ５０１がバランスを崩さずにボールを見送った場合も（第１動作パターン）、第２ユーザは、対戦相手がインコースを予想していた可能性があると推測できる。
【０１２７】
なお、第２ユーザが真ん中コースに投げる操作をしたことにより、投手キャラクタ５０２が真ん中コースにボールを投げた場合、打者キャラクタ５０１の動作を次のようにすることができる。すなわち、前述のように、真ん中コースは基本的に打者にとって打ち易いコースであるため、第１ユーザのコース予想に関わらず、真ん中コースのボールについては、コース予想が外れたわけではないものとみなし、バランスを崩さない第１動作パターンとする。あるいは、第１ユーザのコース予想が真ん中コースであった場合に、バランスを崩さない第１動作パターンとし、第１ユーザのコース予想が真ん中コース以外であった場合にはバランスを崩す第２動作パターンとしてもよい。
【０１２８】
本実施の形態の構成により、投球後の打者キャラクタ５０１の動きを見て、第２ユーザは投球に対する打者の事前予想の当否を推定することができ、よって第２ユーザが次の投球を検討する材料とすることができる。すなわち、現実世界の野球のように、投球に対する打者の反応を見て、投手が次の投球を検討するといったリアル感のあるゲーム性を実現でき、投打の駆け引きがより一層楽しくなる。
【０１２９】
ゲームプログラムが記録された記録媒体３００には、予め第１動作パターンおよび第２動作パターンの情報が格納されており、ゲーム装置１００は、第１動作パターンおよび第２動作パターンの情報を記録媒体３００から読み出して、打者キャラクタ５０１の動作を制御する。
【０１３０】
第１動作パターンは、１つの固定パターンであってもよいし、複数の動作パターンが存在してもよい。同様に、第２動作パターンも、１つの固定パターンであってもよいし、複数の動作パターンが存在してもよい。
【０１３１】
特に、前記一致度が所定の閾値またはレベル未満の場合に選択される第２動作パターンは、前記一致度に応じた複数の動作パターンが存在し、動作制御手段７３は、前記一致度に応じて、第２動作パターンを変動させることが好ましい。例えば、一致度が低いほど（すなわち予想と現実とのずれが大きいほど）、打者キャラクタ５０１はより大きくバランスを崩した体勢の打撃や見送りの動作を行うようにする。すなわち、第１ユーザの予想通りであれば打者キャラクタ５０１の動作のバランスが崩れないが、予想から外れるほど打者キャラクタ５０１の動作のバランスが大きく崩れるようにする。その一例を、以下に説明する。
【０１３２】
例えば、予想投球コースがインコースの場合において、実際の投球コースがインコースであれば一致度を「２」、真ん中コースであれば一致度を「１」、アウトコースであれば一致度を「０」とし、所定の閾値を「２」とする。この場合、実際の投球コースが真ん中コースまたはアウトコースの場合に一致度が閾値未満になり、打者キャラクタ５０１はバランスを崩した第２動作パターンの動きをする。ここで、実際の投球コースが真ん中コースの場合よりもアウトコースの場合の方が一致度は低い。そこで、動作制御手段７３は、真ん中コースの場合は小さくバランスを崩し、アウトコースの場合は大きくバランスを崩すように、打者キャラクタ５０１の動作を制御する。
【０１３３】
また、図２０および上式（１）に例示するように、予想投球コースの座標と実際の投球コースの座標とのずれ量に基づいて一致度を算出する場合、一致度が所定の閾値未満の場合は、打者キャラクタ５０１が第２動作パターンの動作を行うが、一致度の低さに応じて、連続的にまたは段階的に、打者キャラクタ５０１がバランスを崩す程度を大きくする。例えば、第１ユーザのインコース予想に対してアウトコースにボールが来た場合、一致度が所定の閾値未満であれば、図１３に示すように打者キャラクタ５０１が泳ぐような動作となるが、一致度が低ければ低いほど、バットと体がアウトコース側により大きく傾き、バランスの崩れ方が大きくなるようにする。また、この場合において、打者キャラクタ５０１がボールを見送る場合、一致度が所定の閾値未満であれば、図１５に示すようにバランスを崩す動作となるが、一致度が低ければ低いほど、体がアウトコース側により大きく傾き、バランスの崩れ方が大きくなるようにする。
【０１３４】
本構成により、第２ユーザは、相手の予想と現実とのずれの大きさを、打者キャラクタ５０１の動作から推定することができる。
【０１３５】
なお、前述のように、第１動作パターン、第２動作パターンの何れか一方または両方とも、１動作パターンしか設けないことも可能である。その一例を挙げると、第１ユーザのインコース予想に対してアウトコースにボールが来た場合、一致度が所定の閾値未満であれば、図１３に示すように打者キャラクタ５０１が泳ぐような第２動作パターンとなるが、その泳ぐ動作を、一致度に関わらず１種類しか設けないようにしてもよい。
【０１３６】
次に、第１ユーザが予想投球コースを入力するためのユーザインターフェースを実現する構成について説明する。
【０１３７】
図２１の機能ブロック図に示すように、ゲーム装置１００は、予想手段７１、ボール移動手段７２、動作制御手段７３の他に、特定領域設定手段５１および特定領域移動手段５３をさらに備えていることが好ましい。
【０１３８】
特定領域設定手段５１は、照準カーソル５０３の移動が可能な特定領域５０５を画面上に設定する機能を有する。特定領域５０５の画面上の初期位置については、任意に定めることができる。本実施の形態の野球ゲームでは、図４に例示するように、特定領域設定手段５１は、画面上の基準位置の一例としてのストライクゾーン５０４の位置に、特定領域５０５を初期設定する。すなわち、特定領域５０５の中央部（中心）の座標が、ストライクゾーン５０４の中央部（中心）の座標と一致するように、特定領域５０５を初期設定する。
【０１３９】
例えば、ゲームプログラムがゲーム装置１００のＲＡＭ５にロードされた場合、特定領域５０５が初期設定される画面上の基準位置のグローバル座標の情報もＲＡＭ５に格納される。特定領域設定手段５１は、この基準位置のグローバル座標の情報に基づいて、特定領域５０５を画面上に初期設定する。
【０１４０】
このように、特定領域５０５が移動される前の初期位置（デフォルトの位置）が、常に基準位置（ストライクゾーン５０４の位置等）に固定化されるので、ユーザにとって特定領域５０５の位置の認識が容易となり操作性が向上する。
【０１４１】
特定領域５０５を初期設定するタイミングについては、ゲーム内容に応じて適宜定めることができる。本実施の形態では、打者キャラクタ５０１が打席に立ったタイミングで、特定領域設定手段５１が、特定領域５０５をストライクゾーン５０４の位置に初期設定する。なお、投球コースの予想は１球毎に行うものであることから、その後も、投手キャラクタ５０２が投球の準備に入る１球毎に、特定領域５０５を基準位置であるストライクゾーン５０４の位置に初期設定（再設定）してもよい。例えば、ユーザが投球前に特定領域５０５を基準位置からアウトコース側へ移動させたとする。その後、打者キャラクタ５０１がその投球を見送る、打撃したがファールになる、または空振りすることにより、投手キャラクタ５０２が次の投球の準備に入るときに、アウトコース側へ移動されていた特定領域５０５が自動的に基準位置に戻される。
【０１４２】
あるいは、打者キャラクタ５０１が打席に立ったタイミングで、特定領域設定手段５１が特定領域５０５を基準位置であるストライクゾーン５０４の位置に初期設定した後は、当該打者キャラクタ５０１の打席が終了するまで、特定領域５０５を自動的に初期位置に戻すことはしないようにしてもよい。
【０１４３】
また、特定領域５０５の画面上の大きさ、形状についても、任意に定めることができる。本実施の形態の例では、特定領域５０５を、ストライクゾーン５０４と同じ大きさ及び形状（矩形）としている。これにより、図４に例示するように、特定領域５０５は、基準位置においてストライクゾーン５０４と一致するように設定される。
【０１４４】
基準位置に初期設定された特定領域５０５がストライクゾーン５０４と一致することにより、打者側のユーザが真ん中コースを予想する場合、特定領域５０５を移動させる必要はなく、それ以外のコースを予想する場合に、予想するコース側に特定領域５０５をシフトさせればよい。このように、ストライクゾーン５０４を基準にしたコース予想を実現することにより、ユーザの操作性が大幅に向上する。
【０１４５】
次に、特定領域移動手段５３について説明する。この特定領域移動手段５３は、移動体の一例としてのボールの移動が開始されるまでの第１ユーザの操作に応じて、特定領域５０５を基準位置から移動させる機能を有する。本実施の形態では、投手キャラクタ５０２からボールがリリースされるまでの、第１ユーザのコントローラ１９等を用いた操作に応じて、特定領域移動手段５３が、画面上の特定領域５０５を移動させる。
【０１４６】
特定領域５０５を移動させる方法としては、第１ユーザの操作に応じて特定領域５０５自体を移動させる方法と、第１ユーザが照準カーソル５０３を移動させる操作を行うことにより、照準カーソル５０３の位置に応じて特定領域５０５を自動的に移動させる方法とがある。まず、前者の方法について説明する。
【０１４７】
特定領域移動手段５３は、投手キャラクタ５０２が投じるボールの移動が開始されるまでの、第１ユーザによる特定領域５０５自体を移動させる操作に応じて、特定領域５０５を移動させる機能を有する。例えば、第１ユーザがコントローラ１９の上下左右の方向キーを押す操作をすれば、当該操作に応じた方向に、特定領域５０５自体を移動させる。
【０１４８】
特定領域５０５の移動の単位については、任意に定めることができる。例えば、図９または図１１に示すように、ストライクゾーン５０４を水平方向および垂直方向にそれぞれ３等分して格子状に９分割し、その１マス単位で水平方向に（すなわち、インコースまたはアウトコースの方向に）特定領域５０５を移動できるようにする。この場合、ストライクゾーン５０４の水平方向の長さの３分の１の距離が、移動の最小単位である。これにより、例えば、図８に示すように、特定領域５０５が基準位置の一例としてのストライクゾーン５０４と一致している状態で、第１ユーザが右方向キーを１回押す操作をすれば、図９に示すように、特定領域５０５が右方向に１マス移動して、第１ユーザがアウトコースを予想している状態になる。このように、ストライクゾーン５０４の水平方向の長さの３分の１の距離を移動の最小単位とすることにより、少ない入力操作で、特定領域５０５の中央部を、ストライクゾーン５０４のアウトコースまたはインコースの中央部に、正確に一致させることができ、操作性の向上が図れる。
【０１４９】
同様に、ストライクゾーン５０４を９等分した１マス単位で垂直方向に（すなわち、高目コースまたは低目コースの方向に）特定領域５０５を移動できるようにしてもよい。この場合、ストライクゾーン５０４の垂直方向の長さの３分の１の距離が、移動の最小単位である。これにより、少ない入力操作で、特定領域５０５の中央部を、ストライクゾーン５０４の高目コースまたは低目コースの中央部に、正確に一致させることができ、操作性の向上が図れる。
【０１５０】
勿論、ストライクゾーン５０４を９等分した１マス単位で水平および垂直の両方向に特定領域５０５を移動できるようにしてもよい。この場合、インコース、アウトコース、高目、低目だけではなく、インコース高目、インコース低目、アウトコース高目、アウトコース低目の各方向に特定領域５０５を移動させることにより、ユーザは、特定領域５０５を移動させた方向の投球コースを予測できる。
【０１５１】
図２２に示すように、特定領域５０５に対する所定の移動可能範囲５２１を設定することが好ましい。例えば、特定領域５０５は、特定領域５０５がストライクゾーン５０４と一致している状態から、上下左右にそれぞれ１マス以上は移動できないようにする。このように特定領域５０５の移動を所定の移動可能範囲５２１に制限している理由は、次のとおりである。すなわち、照準カーソル５０３は、少なくとも特定領域５０５内を移動可能である。打者キャラクタ５０１はバッターボックス内で打撃する必要があるところ、特定領域５０５を制限なくどこにでも移動できるものとすると、打者キャラクタ５０１の打撃可能な範囲が不自然に広がり過ぎることになる。よって、これを回避するために、特定領域５０５に対して移動可能範囲５２１を設定し、その移動を妥当な範囲で制限する。
【０１５２】
特定領域５０５の移動の単位については、上記の例に限定されるものではない。ストライクゾーン５０４を水平方向および垂直方向にそれぞれｎ等分（ｎは２以上の自然数）して格子状に複数分割し、その１マス単位で水平方向および／または垂直方向に特定領域５０５を移動できるようにすることができる。また、特定領域５０５の移動可能範囲５２１についても任意に定めることができる。
【０１５３】
あるいは、特定領域５０５の移動可能範囲内で、１ドット単位で任意の位置に、特定領域５０５を移動できるようにしてもよい。
【０１５４】
本構成では、投手キャラクタ５０２が投じるボールの移動が開始されるまでに、第１ユーザは、特定領域５０５自体を移動させる操作をして、コース予想に関する先行入力を行うことができる。この場合、画面上の特定領域５０５の位置が、ユーザが予想したコースの位置として明確化される。
【０１５５】
ところで、特定領域５０５は、投手キャラクタ５０２からボールがリリースされるまでは可視化されて、第１ユーザが画面上で視認可能であるが、リリース後は透明化して不可視としてもよい。あるいは、リリース後は特定領域５０５の透明度を高めて、特定領域５０５の視認性をリリース前よりも低下させてもよい。なお、特定領域５０５が画面上で不可視となっても、特定領域５０５自体は存在するので、特定領域５０５内の照準カーソル５０３の大きさの設定は維持される。
【０１５６】
なお、ストライクゾーン５０４については、常時可視化、常時不可視化、投手キャラクタ５０２が投球動作に入った後のみ不可視、投手キャラクタ５０２からボールがリリースされた後のみ不可視化等、様々な態様が考えられる。
【０１５７】
そして、本実施の形態の予想手段７１は、前記特定領域５０５の位置に基づいて、移動パラメータとしての移動コースに対する予想情報を取得する機能を有する。例えば、ストライクゾーン５０４と一致するように初期設定された特定領域５０５を、図９または図１１に例示するように、アウトコース側またはインコース側に移動させる操作が行われた場合、予想手段７１は、移動後の特定領域５０５の位置に基づいて、予想情報として「アウトコース」または「インコース」を取得する。あるいは、予想手段７１は、例えば特定領域５０５の中央部の座標の情報を、投球コースの予想情報として取得する。
【０１５８】
本構成によれば、基準位置の一例としてのストライクゾーン５０４の位置に、移動コースの一例としての投球コースを予想するための特定領域５０５（予想用として設けられた疑似的なストライクゾーン）が設定される。そして、第１ユーザが特定領域５０５を移動させる操作を行うことにより、投球コースの予想が可能となる。例えば、第１ユーザが特定領域５０５をアウトコース側にシフトさせれば、アウトコースの予想入力ができる。
【０１５９】
このように、本構成によれば、基準位置に設けられた特定領域５０５を移動させるという、直観的で分かり易い予想入力が可能なユーザインターフェースを実現できる。
【０１６０】
また、本実施の形態のゲームは、移動体に照準カーソル５０３を重ねて作用を与えるゲームである。このようなゲームを実行するゲーム装置１００は、図２４に示すように、図２１に示した各手段の他に、領域内カーソル設定手段５２およびカーソル移動手段５４をさらに備えていることが好ましい。
【０１６１】
前記領域内カーソル設定手段５２は、特定領域５０５内の位置に応じて、照準カーソル５０３の大きさが変化するように、特定領域５０５内における照準カーソル５０３の大きさを設定する機能を有する。すなわち、特定領域５０５の内部の位置と照準カーソル５０３の大きさとの関係が予め定められている。
【０１６２】
特定領域５０５の内部の位置の情報としては、例えば、特定領域５０５の中央部（中心点）等を原点としたローカル座標を適用できる。
【０１６３】
あるいは、特定領域５０５の内部の位置の情報として、ゲーム画面全体のグローバル座標（例えば、画面の左上角を基準とした座標）を適用してもよい。この場合、特定領域５０５が初期設定される画面上の基準位置（本実施の形態ではストライクゾーン５０４の位置）におけるグローバル座標を適用する。
【０１６４】
例えば、特定領域５０５の内部の位置と照準カーソル５０３の大きさとの関係を示すテーブルの情報が、ゲームプログラムが記録された記録媒体３００に格納されており、ゲームの実行時に前記テーブルの情報がＲＡＭ５にロードされる。この場合、領域内カーソル設定手段５２は、前記テーブルに基づいて、特定領域５０５内における照準カーソル５０３の大きさを設定する。
【０１６５】
特定領域５０５内において、照準カーソル５０３の大きさが変化するが、どの位置の照準カーソル５０３も、基本的に相似の関係とすることができる。従って、例えば図６に示すように、照準カーソル５０３の形状を円形とした場合、照準カーソル５０３の大きさの情報として、半径または直径の情報を適用できる。
【０１６６】
なお、照準カーソル５０３の形状は円形に限定されるものではなく、任意の形状とすることができる。野球ゲームではバットオブジェクト５２０でボールを打ち返すことから、図２３に例示するように、バットオブジェクト５２０の形状を考慮して、照準カーソル５０３を略楕円形状としてもよい。この場合も、特定領域５０５内の照準カーソル５０３は、位置によって大きさが変化しても相似形とすることができる。よって、照準カーソル５０３の大きさの情報として、例えば楕円の長軸または短軸の情報を適用できる。
【０１６７】
特定領域移動手段５３によって特定領域５０５が移動しても、基本的に、特定領域５０５内の設定（領域内の位置に応じて照準カーソル５０３の大きさが変化する設定）は維持される。すなわち、特定領域５０５の画面上のグローバル座標が変化しても、特定領域５０５内のローカル座標と照準カーソル５０３の大きさとの相対的関係に変化は生じない。
【０１６８】
特定領域５０５の移動によって、特定領域５０５の画面上の位置（グローバル座標）が変化した場合、特定領域５０５内のローカル座標は、既知の座標変換アルゴリズムを適用して、移動後のグローバル座標へ容易に変換できる。
【０１６９】
ここで、領域内カーソル設定手段５２は、図６に示すように、特定領域５０５の中央部から離れるほど照準カーソル５０３が小さくなるように、特定領域５０５内における照準カーソル５０３の大きさを設定することが好ましい。この場合も、領域内カーソル設定手段５２は、前記テーブルに基づいて、特定領域５０５内における照準カーソル５０３の大きさを設定することができる。あるいは、照準カーソル５０３の大きさを、特定領域５０５の中央部からの距離の関数として数式化し、当該関数に基づいて特定領域５０５内における照準カーソル５０３の大きさを設定してもよい。
【０１７０】
特定領域５０５内の設定を、特定領域５０５の中央部から離れるほど照準カーソル５０３が小さくなる設定とした場合、特定領域５０５の中央部において、照準カーソルが最も大きくなり、打撃がし易くなる。よって、第１ユーザは、特定領域５０５の中央部を基準とし、当該中央部が予想コースに位置するように特定領域５０５を移動させれば、的確にコース予想をゲーム上に反映させることができ、第１ユーザの操作性が向上する。
【０１７１】
また、この場合、特定領域５０５内をボールが通過する場合であっても、特定領域５０５内におけるボールの通過コースと特定領域５０５の中央部との離間距離に応じて打撃の難易度が変化する。前記離間距離は予想の的確度を表わし、前記離間距離が小さいほど、予想が的確であり打撃がし易くなる一方、前記離間距離が大きいほど照準カーソル５０３は小さくなって打撃が困難になる。このように、予想の的確度を打撃の難易度として反映させることができる。
【０１７２】
また、領域内カーソル設定手段５２は、第１キャラクタの一例としての打者キャラクタ５０１のパラメータに基づいて、特定領域５０５内における照準カーソル５０３の大きさの設定を調整することが好ましい。
【０１７３】
ここで、打者キャラクタ５０１のパラメータの一例としては、打撃の得意コースまたは不得意コースに関するパラメータが挙げられる。野球ゲームでは、オーダーに従って１番から９番の選手キャラクタが打者キャラクタ５０１として順番に打席に立つが、各選手キャラクタには、例えばインコースは得意であるがアウトインコースは苦手、高目コースは得意であるが低目コースは苦手等の得意コースおよび／または不得意コースのパラメータが設定されている。選手キャラクタ毎に、得意コースまたは不得意コースに関するパラメータは異なっている。
【０１７４】
図２５は、得意コースとしてインコース高目、不得意コースとしてアウトコース低目が設定されている右打ちの選手キャラクタＡが、打者キャラクタ５０１として打席に立った場合の、特定領域５０５内の設定の一例を示している。この場合、図２５に示すように、領域内カーソル設定手段５２は、特定領域５０５内における照準カーソル５０３の大きさ分布の設定において、インコース高目領域５２２（図中のハッチング領域）のカーソルサイズを通常より大きくする一方、アウトコース低目領域５２３（図中のハッチング領域）のカーソルサイズを通常より小さくする調整を行う。図２５において、インコース高目領域５２２およびアウトコース低目領域５２３以外の領域の設定は、図６と同様である。
【０１７５】
このように、打者キャラクタ５０１の得意コースについては、特定領域５０５内の照準カーソル５０３の大きさを通常より大きくし、不得意コースについては特定領域５０５内の照準カーソル５０３の大きさを通常より小さくする。
【０１７６】
また、領域内カーソル設定手段５２は、打者キャラクタ５０１のパラメータの一例としてのミート能力に応じて、照準カーソル５０３の大きさを調整してもよい。ミート能力とはバットにボールを当てる能力の高さであり、打者キャラクタ５０１のミート能力が大きいほど照準カーソル５０３が大きくなるように調整する。この場合の照準カーソル５０３の大きさ調整は、特定領域５０５内の全体に対して行う。
【０１７７】
本構成により、打者キャラクタ５０１のパラメータを、特定領域５０５内における打撃の操作難易度として的確に反映させることができ、遊戯性の向上が図られる。
【０１７８】
次に、カーソル移動手段５４について説明する。このカーソル移動手段５４は、照準カーソルを、第１ユーザの操作に応じて移動させる機能を有する。例えば、第１ユーザがコントローラ１９のアナログスティック、方向キー等を操作すれば、カーソル移動手段５４が、当該操作に応じて照準カーソル５０３の画面上の位置を変化させる。第１ユーザによる照準カーソル５０３の移動操作は、投手キャラクタ５０２からボールがリリースされた後は勿論のこと、リリース前でも可能である。
【０１７９】
カーソル移動手段５４によって照準カーソル５０３が移動されることにより、特定領域５０５内の位置に応じて、照準カーソル５０３の大きさが変化する。前述のように、疑似的なストライクゾーンである特定領域５０５内の中央部が最も照準カーソル５０３が大きく、中央部から離れるほど照準カーソル５０３が小さくなるような設定にすることができる。第１ユーザはこの特定領域５０５を移動させることによりコース予想を行なうので、コース予想に応じて、照準カーソル５０３が大きくなる（即ち、打撃し易い）領域、照準カーソルが小さくなる（即ち、打撃し難い）領域が変動することになる。例えば、第１ユーザが特定領域５０５をアウトコース側にシフトすれば、本来のストライクゾーンの中央部にあった特定領域５０５の中央部がアウトコース側にシフトし、アウトコース領域において照準カーソル５０３が大きくなる一方、本来のストライクゾーンの中央部において照準カーソル５０３が小さくなる。
【０１８０】
本構成によれば、第１ユーザによるコース予想の当否を、照準カーソル５０３の大きさ、即ち、打撃操作の難易度として反映させることができるので、ゲーム性を高めることができる。
【０１８１】
前述のように、照準カーソル５０３は、少なくとも特定領域５０５内を移動可能である。照準カーソル５０３は、特定領域５０５の外部にも移動できるようにしてもよいし、特定領域５０５の外部には移動できないようにしてもよい。
【０１８２】
ところで、現実世界でも、ストライクゾーンの球を打つよりもストライクゾーンから外れたボール球を打つ方が難しいが、ストライクゾーンから外れたボール球を巧く捉えてヒットにすることは可能である。これをゲームにリアル反映させるべく、図２６の機能ブロック図に示すように、ゲーム装置１００は、領域外カーソル設定手段５８をさらに備えている構成とすることができる。
【０１８３】
領域外カーソル設定手段５８は、特定領域５０５外における照準カーソル５０３の大きさを、特定領域５０５内における特定領域５０５外との境界部に位置する照準カーソル５０３の大きさよりも小さくなるように設定する機能を有する。
【０１８４】
本構成により、特定領域５０５外にも照準カーソル５０３を移動可能とする一方で、特定領域５０５内よりも照準カーソル５０３を小さくして打撃の難易度を高くすることにより、リアル感を高めることができる。
【０１８５】
なお、照準カーソル５０３を特定領域５０５の外部にも移動できるようにする場合は、打撃可能な範囲が不自然に広がり過ぎることを回避するため、照準カーソル５０３を移動できる範囲に制限を設けることが好ましい。例えば、図２２に例示する特定領域５０５の移動可能範囲５２１を、照準カーソル５０３の移動可能範囲とすることができる。
【０１８６】
以上のように、本実施の形態のゲーム装置１００は、打者キャラクタ５０１を操作する第１ユーザが、第２ユーザによって操作される投手キャラクタ５０２が投じたボールに照準カーソル５０３を重ねて打撃する野球ゲームを制御する。このゲーム装置１００で第１ユーザがコース予想入力を行う好ましい構成は、照準カーソル５０３を、第１ユーザの操作に応じて移動させるカーソル移動手段５４と、ストライクゾーン５０４に照準カーソル５０３の移動が可能な特定領域５０５を設定する特定領域設定手段５１と、特定領域５０５の中央部から離れるほど照準カーソル５０３が小さくなるように、特定領域５０５内における照準カーソル５０３の大きさを設定する領域内カーソル設定手段５２と、投手キャラクタ５０２がボールを投じるまでのユーザの操作に応じて、特定領域５０５をストライクゾーン５０４から移動させる特定領域移動手段５３と、を備えている。
【０１８７】
ところで、野球ゲームでは、イニング毎に攻守を変えてゲームが進行するので、ユーザは打者の立場でゲーム操作をすることも投手の立場でゲーム操作をすることもできる。ユーザは、打者の立場でゲーム操作をする場合に「第１ユーザ」、投手の立場でゲーム操作をする場合に「第２ユーザ」となる。そこで、図２７の機能ブロック図に示すように、ゲーム装置１００は、基本的に、打者キャラクタ５０１による打撃を制御するための打撃制御手段５０および投手キャラクタ５０２による投球を制御するための投球制御手段６０を備えている。
【０１８８】
前述の予想手段７１、動作制御手段７３、特定領域設定手段５１、領域内カーソル設定手段５２、特定領域移動手段５３およびカーソル移動手段５４は、打撃制御手段５０の機能に含めることができる。また、打撃制御手段５０は、打撃結果決定手段５５をさらに備えている。
【０１８９】
打撃結果決定手段５５は、前述のように、スイングボタンが押されたタイミング、照準カーソル５０３と投球されたボールとの重なりの程度、打者キャラクタ５０１の能力パラメータ等に基づいて、打撃結果を決定する機能を有する。
【０１９０】
前述のボール移動手段７２は、投球制御手段６０の機能に含めることができる。また、ボール移動手段７２は、投球パラメータ決定部７２ａと、ボール移動部７２ｂとを含む構成とすることができる。
【０１９１】
投球パラメータ決定部７２ａは、投手キャラクタ５０２を操作する第２ユーザの操作に基づいて、投球パラメータを決定する機能を有する。前述のように、第２ユーザは、コントローラ１９等を操作して、投球コース、球種等を選択できる。投球パラメータ決定部７２ａは、第２ユーザによる投球コース、球種等の選択操作に基づいて、投球コース、球種（軌道の変化、ボールの移動速度）等のボールの移動に関する投球パラメータ（移動パラメータの一例）を決定する。
【０１９２】
ボール移動部７２ｂは、投球パラメータ決定部７２ａによって決定された投球パラメータに基づいて、投手キャラクタ５０２からリリースされたボールの軌道を算出し、ボールをホームベース方向へと移動させる機能を有する。
【０１９３】
２人のユーザが、それぞれ自分のゲーム装置１００を操作して通信対戦する場合、何れか一方のゲーム装置１００がサーバ、他方がクライアントとして機能するようにしてもよい。あるいは、通信対戦する両ゲーム装置１００が、機能分散を図りならが協働するようにしてもよい。
【０１９４】
例えば、投手側の第２ユーザのゲーム装置１００の投球パラメータ決定部７２ａによって決定された投球パラメータは、打者側の第１ユーザのゲーム装置１００に送信される。従って、第１ユーザのゲーム装置１００のボール移動部７２ｂは、第２ユーザのゲーム装置１００から受信した投球パラメータに基づいて、投手キャラクタ５０２からリリースされたボールを移動させる。
【０１９５】
また、例えば、第１ユーザのゲーム装置１００の動作制御手段７３によって決定された打者キャラクタ５０１の動作情報は、第２ユーザのゲーム装置１００に送信される。従って、第２ユーザのゲーム装置１００の動作制御手段７３は、この動作情報に基づいて打者キャラクタ５０１を動作させる。
【０１９６】
ここで、本実施の形態のゲーム装置１００の動作の一例を、図２８ないし図３１のフローチャートを参照しながら、以下に説明する。図２８は、投手キャラクタ５０２を制御する処理の一例を示すフローチャートである。図２９ないし図３１は、打者キャラクタ５０１を制御する処理の一例を示すフローチャートである。
【０１９７】
先ず、投手キャラクタ５０２が１人の打者キャラクタ５０１に対して投球する場合の処理の一例について説明する。図２８に示すように、第２ユーザは、投球開始前に、球種決定操作（Ｓ１）および投球コース決定操作（Ｓ２）を行う。例えば、第２ユーザは、コントローラ１９を操作して、図５に示す球種選択用アイコン５１１で球種を選択すると共に、コース指定カーソル５１２を任意の位置に移動させて投球コースを指定する。
【０１９８】
ゲーム装置１００は、上記の球種および投球コースを決定するための操作に基づいて、ボールの移動パラメータ（球種、投球コース）を決定する（Ｓ３）。その後、第２ユーザがコントローラ１９の投球開始ボタンを押すことにより、又は自動的に、ゲーム装置１００は、投手キャラクタ５０２にボールを送出させる（Ｓ４）。このとき、第１ユーザのゲーム装置１００の画面には、図４に示すように打者側から投手側を見た画像が表示され、第２ユーザのゲーム装置１００の画面には、図５に示すように投手側から打者側を見た、図４とは視点の異なる画像が表示されるが、両ゲーム装置１００間で通信しながら、両画面とも、略同じタイミングで投手キャラクタ５０２がボールを送出するようにする。
【０１９９】
その後、第１ユーザおよび第２ユーザのゲーム装置１００は、投手キャラクタ５０２から送出されたボールを、前記Ｓ３で決定された移動パラメータに基づいて、ホームベース方向（打者キャラクタ５０１の方向）へと移動させる（Ｓ５）。これにより、投手キャラクタ５０２による１球の投球が完了する。
【０２００】
投手キャラクタ５０２が、現在打席に立っている打者キャラクタ５０１に対する投球を継続する場合は（Ｓ６でＹＥＳ）、ステップＳ１に戻り、ステップＳ１〜Ｓ５が繰り返される。
【０２０１】
次に、１人の打者キャラクタ５０１を制御する処理の一例について説明する。図２９に示すように、ゲーム装置１００は、打者キャラクタ５０１が打席に立った場合（Ｓ１１）、特定領域５０５を画面に設定する（Ｓ１２）。本実施の形態では、図４に示すように、ゲーム装置１００は、画面上の基準位置としてのストライクゾーン５０４に、特定領域５０５を初期設定する。この特定領域５０５は、画面上で可視化される。
【０２０２】
そして、ゲーム装置１００は、特定領域５０５内の位置と照準カーソル５０３の大きさとの相対関係を設定する（Ｓ１３）。すなわち、ゲーム装置１００は、特定領域５０５内の位置に応じて照準カーソル５０３の大きさが変化するように、特定領域５０５内における照準カーソル５０３の大きさを設定する。本実施の形態では、図６に例示するように、ゲーム装置１００は、特定領域５０５の中央部から離れるほど照準カーソル５０３が小さくなるように、特定領域５０５内における照準カーソル５０３の大きさを設定する。また、図２５に例示するように、打者キャラクタ５０１の得意／不得意に関するパラメータ等に基づいて、特定領域５０５内における照準カーソル５０３の大きさの設定を調整してもよい。
【０２０３】
ゲーム装置１００の領域内カーソル設定手段５２は、特定領域５０５内における照準カーソル５０３の大きさの設定情報を、記憶装置（例えばＲＡＭ５）に記憶する。ここで記憶される設定情報は、特定領域５０５の内部の位置と照準カーソル５０３の大きさとの関係を示すテーブルの情報とすることができる。例えば、ゲーム装置１００は、特定領域５０５内のローカル座標（またはグローバル座標でもよい）と照準カーソル５０３の大きさとの関係を示すテーブルの情報をＲＡＭ５に記憶する。
【０２０４】
また、画面に特定領域５０５が設定された場合、ゲーム装置１００は、特定領域５０５の中央部、すなわちストライクゾーン５０４の中央部に、照準カーソル５０３を初期設定することが好ましい。
【０２０５】
その後、第１ユーザは、投手キャラクタ５０２からボールがリリースされるまでに、投球コースを予想し、必要に応じて特定領域５０５を移動させる操作が可能である。例えば、第１ユーザがアウトコースの投球を予想した場合、図９に示すように、特定領域５０５の中央部がストライクゾーン５０４のアウトコース領域に位置するように、特定領域５０５を移動させればよい。これによって、アウトコースにおいて照準カーソル５０３の大きさが最大となってボールを捉え易くなり、アウトコースを意識した打撃操作が可能となる。一方、図１０に示すように、特定領域５０５をアウトコース側へシフトさせたことにより、ストライクゾーン５０４の真ん中コースにおいて、照準カーソル５０３が図４の場合よりも小さくなってボールを捉えにくくなり、打撃操作の難易度が高まる。
【０２０６】
また、例えば、第１ユーザがインコースの投球を予想した場合、図１１に示すように、特定領域５０５の中央部がストライクゾーン５０４のインコース領域に位置するように、特定領域５０５を移動させればよい。これによって、インコースにおいて照準カーソル５０３の大きさが最大となってボールを捉え易くなり、インコースを意識した打撃操作が可能となる。
【０２０７】
なお、第１ユーザがストライクゾーン５０４の真ん中のコースの投球を予想した場合、図４に示すように、特定領域５０５の中央部は、初期設定の状態でストライクゾーン５０４の中央部と一致しているため、特定領域５０５を移動させる必要はない。この場合、真ん中のコースにおいて照準カーソル５０３の大きさが最大となってボールを捉え易くなり、真ん中のコースを意識した打撃操作が可能となる。
【０２０８】
第１ユーザによって特定領域５０５の移動操作が行われた場合（Ｓ１４でＹＥＳ）、ゲーム装置１００は、特定領域５０５内の設定（領域内の位置に応じて照準カーソル５０３の大きさが変化する設定）を維持したまま、画面上の特定領域５０５を移動させる（Ｓ１５）。
【０２０９】
このように、画面上の特定領域５０５が移動された場合において、特定領域５０５の移動後の照準カーソル５０３の位置については、以下のようなバリエーションが考えられる。
【０２１０】
特定領域５０５が移動された場合、移動後の特定領域５０５の中央部に、照準カーソル５０３を自動的に再設定してもよい。
【０２１１】
あるいは、特定領域５０５が移動された場合、特定領域５０５と、特定領域５０５内に存在する照準カーソル５０３との相対的な位置関係を維持したまま、特定領域５０５の移動に伴って、照準カーソル５０３も自動的に移動させてもよい。すなわち、特定領域５０５の移動前と移動後とで、特定領域５０５内における照準カーソル５０３のローカル座標は変化しない。
【０２１２】
あるいは、特定領域５０５が移動されても、照準カーソル５０３の画面上の絶対位置（グローバル座標）は変化しないようにしてもよい。
【０２１３】
前記ステップＳ１５の実行後、または前記ステップＳ１４において特定領域５０５の移動操作が行われない場合、ステップＳ１６に移行する。
【０２１４】
上記のように第１ユーザの操作によって特定領域５０５が移動された場合、ゲーム装置１００は、移動後の特定領域５０５の位置に基づいて、投球コースに関する予想情報を取得する（Ｓ１６）。ゲーム装置１００は、例えば、第１ユーザが特定領域５０５をアウトコース領域に移動させた場合は予想情報として「アウトコース」、インコース領域に移動させた場合は予想情報として「インコース」を取得する。あるいは、第１ユーザが移動させた特定領域５０５の中央部の座標の情報を、投球コースの予想情報として取得してもよい。
【０２１５】
特定領域５０５の移動は、投手キャラクタ５０２がボールを送出するまで可能であり、特定領域５０５の移動によりその位置が変化すれば、投球コースの予想情報は更新される。あるいは、投手キャラクタ５０２からボールが送出される前は、予想情報の取得を行わずに、ボールが送出された時点で、そのときの特定領域５０５の位置に基づいて、投球コースの予想情報を取得してもよい。
【０２１６】
なお、投手キャラクタ５０２がボールを送出するまでに、第１ユーザが、基準位置であるストライクゾーン５０４の位置から特定領域５０５を移動させなかった場合、第１ユーザが真ん中コースを予想したものとしてもよいし、後述するように第１ユーザが投球コースを予想しなかったものとしてもよい。第１ユーザが真ん中コースを予想したものとする場合、ゲーム装置１００は、予想情報として「真ん中コース」または特定領域５０５の中央部の座標の情報を取得する。
【０２１７】
また、第１ユーザは、照準カーソル５０３を移動させることができ、ゲーム装置１００は第１ユーザの操作に基づいてカーソル移動処理を実行する（Ｓ１７）。カーソル移動処理の一例を図３１のフローチャートに基づいて説明する。
【０２１８】
ユーザによって照準カーソル５０３の移動操作が行われた場合（Ｓ４１でＹＥＳ）、ゲーム装置１００は、画面上の照準カーソル５０３を移動させる（Ｓ４２）。この照準カーソル５０３の移動によって、特定領域５０５内の照準カーソル５０３の位置が変化するので、ゲーム装置１００は、照準カーソル５０３の移動に伴って照準カーソル５０３の大きさを変更する（Ｓ４３）。例えば、ゲーム装置１００は、ＲＡＭ５に記憶されている、特定領域５０５内のローカル座標と照準カーソル５０３の大きさとの関係を示すテーブルの情報に基づいて、特定領域５０５内の照準カーソル５０３の移動に伴って照準カーソル５０３の大きさを変更する。
【０２１９】
前記のステップＳ１４〜Ｓ１７は、投手キャラクタ５０２からボールが送出されるまで繰り返される。投手キャラクタ５０２からボールが送出された場合（Ｓ１８でＹＥＳ）、ゲーム装置１００は、投球されたボールを画面上で移動させる表示制御を実行する（Ｓ１９）。このステップＳ１９は、前述した図２８のステップＳ５に相当する。
【０２２０】
ここで、投手キャラクタ５０２からボールが送出された後は、特定領域５０５を不可視にすることが好ましい。これは、次の理由による。すなわち、投手キャラクタ５０２からボールが送出された後も特定領域５０５が可視化されたままでは、投球されたボールや照準カーソル５０３の視認性が悪くなる。そこで、これを回避して第１ユーザによる操作性の向上を図るため、ボールが送出された後は、特定領域５０５を不可視にする。
【０２２１】
また、同様の理由で、投手キャラクタ５０２からボールが送出された後は、ストライクゾーン５０４の枠表示についても不可視にすることが好ましい。なお、投手キャラクタ５０２が足を上げる等して投球動作に入ったときに、ストライクゾーン５０４の枠表示を不可視にしてもよい。
【０２２２】
なお、上記では、投手キャラクタ５０２からボールがリリースされるまで、すなわち移動体としてのボールの移動が開始されるまで、第１ユーザによる特定領域５０５の移動操作を可能とする例を示したが、次のようにすることもできる。例えば、投手キャラクタ５０２が投球動作に入るまでは、第１ユーザによる特定領域５０５の移動操作は可能であるが、投球動作が開始された後は、ボールのリリース前であっても、特定領域５０５の移動操作を禁止するようにしてもよい。このように、移動体（ボール等）の移動が開始されるまでの所定のタイミングまで、第１ユーザによる特定領域５０５の移動操作を可能とし、それ以降は当該移動操作を禁止するようにしてもよい。
【０２２３】
投手キャラクタ５０２による投球動作が開始された後に、特定領域５０５の移動操作を禁止する場合、投球動作が開始された時点で、特定領域５０５を不可視にすることが好ましい。特定領域５０５の移動操作が禁止された時点で、特定領域５０５を不可視にすることにより、特定領域５０５が移動できないことをユーザに明確化できる。
【０２２４】
また、ゲーム装置１００は、投球後の打者キャラクタ５０１の動作を制御するために、ステップＳ１６で取得した投球コースの予想情報と、図２８のステップＳ３で決定した移動パラメータの投球コースとの一致の程度を示す一致度を取得する（Ｓ２０）。前述のように、一致度は、２段階または３段階以上の値またはレベルとしてもよいし、図２０および上式（１）に例示するように、予想投球コースの座標と実際の投球コースの座標とのずれ量に基づいて算出してもよい。
【０２２５】
投手キャラクタ５０２からボールがリリースされた後において、第１ユーザは、移動するボールに重なるように照準カーソル５０３を移動させる操作を行う。ユーザによって照準カーソル５０３の移動操作が行われた場合、ゲーム装置１００は、図３１に例示したカーソル移動処理を実行する（Ｓ２１）。前述のように、ゲーム装置１００は、照準カーソル５０３の移動に伴って照準カーソル５０３の大きさを変更する。
【０２２６】
例えば、第１ユーザがアウトコースの投球を予想し、図９に示すように、特定領域５０５をアウトコースに移動させる先行入力を行っていた場合を想定する。第１ユーザの予想が的中し、実際にアウトコースにボールが来た場合、アウトコースにおいて照準カーソル５０３の大きさが最大となってボールを捉え易くなる。一方、第１ユーザの予想が外れて、例えば、真ん中のコースにボールが来た場合、照準カーソル５０３を真ん中のコースに移動させれば、照準カーソル５０３が小さくなり、ボールを捉え難くなる。このように、第１ユーザがコース予想を行って先行入力（特定領域５０５の移動操作）をした場合、その予想が当たれば打撃し易くなるというメリットを生じる一方、予想が外れれば本来打ち易いはずの真ん中コースが打撃し難くなるというデメリットも生じる。
【０２２７】
ステップＳ２１の実行後、第１ユーザがスイングボタンを押す打撃操作を未だ行っていなければ（Ｓ２２でＮＯ）、投手キャラクタ５０２からボールが送出された後に所定のタイミングが経過したか否かが判定される（Ｓ２３）。このステップＳ２３において所定のタイミングが経過していなければ（Ｓ２３でＮＯ）、ステップＳ２１に戻り、ステップＳ２１〜Ｓ２３が繰り返される。
【０２２８】
所定のタイミングまでに第１ユーザが打撃操作を行った場合は（Ｓ２２でＹＥＳ）、ステップＳ２４に移行し、ゲーム装置１００が打者キャラクタ５０１の打撃動作を制御する。ステップＳ２４では、ゲーム装置１００が、ステップＳ２０で取得した一致度が閾値以上か否かを判断する。一致度が閾値以上の場合とは、第１ユーザの予想が当たった（または予想のずれが少なかった）場合である。一方、一致度が閾値未満の場合とは、第１ユーザの予想が外れた（または予想のずれが大きかった）場合である。
【０２２９】
ここで、一致度が閾値以上の場合には（Ｓ２４でＹＥＳ）、ゲーム装置１００は、打者キャラクタ５０１が第１動作パターンでバットスイングするように制御する（Ｓ２５）。この第１動作パターンでは、打者キャラクタ５０１が、バランスを崩すことのないデフォルトの打撃動作を行う（図１４参照）。
【０２３０】
一方、一致度が閾値未満の場合には（Ｓ２４でＮＯ）、ゲーム装置１００は、打者キャラクタ５０１が第２動作パターンでバットスイングするように制御する（Ｓ２６）。この第２動作パターンでは、打者キャラクタ５０１がバランスの崩れた体勢で打撃動作を行う。例えば、図１３に示すように、アウトコースのボールに対して、打者キャラクタ５０１が泳ぐような打撃姿勢になってバランスを崩す。
【０２３１】
その後、ゲーム装置１００は、スイングボタンが押されたタイミング、照準カーソル５０３と投球されたボールとの重なりの程度、打者キャラクタ５０１の能力パラメータ等に基づいて、打撃結果を決定し（Ｓ２７）、その結果を画面に表示する（Ｓ２８）。例えば、打撃に成功した場合、ゲーム装置１００は、スイングボタンが押されたタイミング、照準カーソル５０３の中心とボールの中心とのずれ量等に基づいて、打撃されたボールの軌道を算出し、ボール（打球）を移動させる。
【０２３２】
また、投手キャラクタ５０２からボールが送出された後、第１ユーザが打撃操作を行うことなく所定のタイミングを経過した場合は（Ｓ２３でＹＥＳ）、ステップＳ２９に移行し、ゲーム装置１００が打者キャラクタ５０１のボール見送り動作を制御する。ステップＳ２９では、ゲーム装置１００が、ステップＳ２０で取得した一致度が閾値以上か否かを判断する。
【０２３３】
ここで、一致度が閾値以上の場合には（Ｓ２９でＹＥＳ）、ゲーム装置１００は、打者キャラクタ５０１が第１動作パターンでボールを見送るように制御する（Ｓ３０）。この第１動作パターンでは、打者キャラクタ５０１が、バランスを崩すことのないデフォルトのボール見送り動作を行う（図１６、図１８参照）。
【０２３４】
一方、一致度が閾値未満の場合には（Ｓ２９でＮＯ）、ゲーム装置１００は、打者キャラクタ５０１が第２動作パターンでボールを見送るように制御する（Ｓ３１）。この第２動作パターンでは、打者キャラクタ５０１がバランスの崩れた体勢でボール見送り動作を行う。例えば図１５に示すように、アウトコースのボールに対して、打者キャラクタ５０１がスイング動作に入り、途中でスイングを止めて上体がアウトコース側に突っ込んだ姿勢でバランスを崩してボールを見送る。また、例えば図１７に示すように、インコースのボールに対して、打者キャラクタ５０１が腰を引いて（又はのけぞって）、バランスを崩したボール見送り動作をとる。
【０２３５】
その後、ゲーム装置１００は、打者キャラクタ５０１がボールを見送ったことによる結果を画面に表示する（Ｓ２８）。図９等の画面では、ボールカウントやアウトカウント等の表示を省略しているが、例えば、ボールがストライクゾーン５０４を通過した場合には「ストライク」、ストライクゾーン５０４を外れた場合には「ボール」とし、ボールカウントの表示を更新する。
【０２３６】
ステップＳ２８の後、ゲーム装置１００は、現在打席に立っている打者キャラクタ５０１に対する投球を継続するか否かを判断する（Ｓ３２）。例えば、打者キャラクタ５０１が打撃したがファールになった場合、空振りしたが三振でない場合、ボールを見送ったが三振または四球でない場合は、同じ打者キャラクタ５０１に対する投球が継続されるので（Ｓ３２でＹＥＳ）、これらの場合は図２９のステップＳ１２に戻る。すなわち、ステップＳ１２において、ゲーム装置１００は、投手キャラクタ５０２が次の投球の準備に入るときに、特定領域５０５を基準位置であるストライクゾーン５０４の位置に再設定する。
【０２３７】
一方、打者キャラクタ５０１の打席の結果（ヒットまたはアウト）が確定し、当該打者キャラクタ５０１に対する投球が継続されない場合は（Ｓ３２でＮＯ）、処理を終了する。新たな打者キャラクタ５０１が打席に立つ場合は、再度、図２９および図３０の処理が実行される。
【０２３８】
第１ユーザおよび第２ユーザが通信対戦する場合、第１ユーザおよび第２ユーザの両ゲーム装置１００間で通信しながら、ゲーム画面の表示制御が行われる。従って、前述の打者キャラクタ５０１の打撃またはボール見送り動作は、第１ユーザおよび第２ユーザの両ゲーム装置１００のそれぞれの画面に表示される。
【０２３９】
第１ユーザにとっては、自分の投球コースの予想が当たっていた場合（前記一致度が閾値以上の場合）には、打者キャラクタ５０１がバランスを崩さず、その予想が外れた場合（前記一致度が閾値未満の場合）に打者キャラクタ５０１がバランスを崩して打撃またはボール見送り動作を行うので、従来ゲームにはないリアル感を得ることができる。
【０２４０】
すなわち、投手側の第２ユーザだけでなく、打者側の第１ユーザとしても、予想が外れた場合における打者キャラクタ５０１の姿勢の崩れを画面上で確認できるので、従来ゲームにないリアルさ、面白さを実現できる。また、第１ユーザは、自身の予想が外れたということを、打者キャラクタ５０１の姿勢の崩れによって改めて明確に認識できるので、これが投手攻略のための次の投球予想をどうするかといったフィードバックに繋がる。また、第１ユーザは、打者キャラクタ５０１の姿勢の崩れが相手投手（第２ユーザ）にも確認されているという認識をもつことになるので、より投打の駆け引きを考慮することとなり、ゲームの興趣性が高まる。
【０２４１】
また、第２ユーザにとっては、自分の操作に基づく投球コースに対して、打者キャラクタ５０１がバランスを崩した打撃またはボール見送り動作を行った場合には、対戦相手の投球コースの読みをうまく外すことができたものと考えることができる。すなわち、第２ユーザは、投球後の打者キャラクタ５０１の動きを見て、次の投球を検討することができる。この第２ユーザによる投球検討の具体例を、以下に示す。
【０２４２】
具体例１…走者が３塁にいる状況において、インコースに投球したところ、打者キャラクタ５０１（右打ち）が腰を引くような動作をした。この場合、第２ユーザは、相手打者（第１ユーザ）は走者をタッチアップさせるために流し打ちのフライを狙い、アウトコースを待っている（予想していた）と考えた。また、第２ユーザは、カウントが早い（投手が打者に対して投じた球数が少ない）ので、相手打者は再度、タッチアップを狙う、即ち、アウトコースを待つと考え、その逆をつき、もう一度、インコースに投げることにした。
【０２４３】
具体例２…走者が１塁にいる状況において、アウトコースに投球したところ、打者キャラクタ５０１（右打ち）は泳ぐような姿勢で見送りをした。そのため、第２ユーザは、相手打者（第１ユーザ）が３塁方向へのヒットを狙い、引っ張る打撃を行うために、インコースを待っている（予想していた）と考えた。また、その前の投球もアウトコースであったが、打者キャラクタ５０１は同様の動きをしていたので、第２ユーザは、相手打者がしぶとくインコースを待っていると考えた。また、ボールカウントはストライクが先行しているので、第２ユーザは、相手打者の打ち損じを狙い、もう一度、アウトコースに投げることにした。
【０２４４】
打者側のコース予想は、その打者の癖や考え方によって様々であるため、上記のような投手側の推測が常に正しいわけではないが、打者キャラクタ５０１の打撃姿勢の崩れといった情報があることによって、投手側は打者に対する攻略法を色々な角度から検討できることになるので、深いゲーム性を実現できる。
【０２４５】
つまり、現実世界の野球のように、投球に対する打者の反応を見て、投手が次の投球を検討するといったリアル感のあるゲーム性を実現できる。これにより、ゲーム上でリアル感のある相手との駆け引きが実現できる。
【０２４６】
また、特定領域５０５内の位置に応じて照準カーソル５０３の大きさが変化するように、特定領域５０５内における照準カーソル５０３の大きさを設定する構成を採用することにより、投手キャラクタ５０２が投球したボールの移動コースに応じた操作難易度をリアルに設定できる。そして、特定領域５０５における照準カーソル５０３の大きさの相対関係を維持したままで、第１ユーザが特定領域５０５を移動させてコース予想を可能とする構成を採用することにより、ゲーム上でコース予想をリアルに反映できる。
【０２４７】
すなわち、投手キャラクタ５０２を操作する第２ユーザ（またはＣＰＵ対戦時のＣＰＵ１）は、本来は打者が打ち難いはずのストライクゾーンの端部のコースを狙った投球をすることができる。これに対して、打者キャラクタ５０１を操作する第１ユーザは、投球コースを予想し、特定領域５０５を予想した投球コースの方へ移動させることにより、その予想が的中すれば、打者にとって本来不利なはずのストライクゾーン５０４の端部の投球コースを打ち易くできる。一方、投球コースの予想が外れれば、通常よりも打撃操作の難易度が高まって不利となる。これにより、第１ユーザのコース予想をリアルに反映することができる興趣性の高いゲームを実現できる。
【０２４８】
本実施の形態の構成により、投手側の第２ユーザは、前述のように投球後の打者キャラクタ５０１の動きを見て、次の投球を検討しながら打者に打たれないように投球コースを考えながらピッチングを組み立てる一方、打者側の第１ユーザは、投球コースを読みながら投手を打ち崩そうとする。これにより、現実世界での投打の駆け引きを、ゲーム上に緻密でリアルに反映できる。
【０２４９】
なお、図２９および図３０に例示したフローチャートでは、基本的に、第１ユーザが投球コースを予想した場合の処理を示しているが、投球コースを予想しないことも可能としてもよい。例えば、投手キャラクタ５０２がボールを送出するまでに、第１ユーザが、基準位置であるストライクゾーン５０４の位置から特定領域５０５を移動させなかった場合には投球コースの予想が行われず、特定領域５０５を移動させた場合のみ投球コースの予想が行われたものとしてもよい。第１ユーザが投球コースを予想しなかった場合、ゲーム装置１００は、予想の一致度に基づいて打者キャラクタ５０１の動作を異ならせる制御は行わず、打者キャラクタ５０１に対してデフォルトの打撃またはボール見送り動作をさせる。
【０２５０】
また、第１ユーザがゲーム操作上、投球コースを予想しなかった場合（特定領域５０５を移動させなかった場合）には、当然ながら、上記の通り、予想が外れた場合における打者キャラクタの打撃姿勢の崩れは表示されない。従って、第１ユーザが第２ユーザに対して、例えば、ある投球時において自分の予想を知られたくないと考える場合には、あえて特定領域５０５を移動させないという方法もとり得る。従って、第２ユーザとしては、第１ユーザの打撃時あるいは見送り時の動作が安定していたからといって、必ずしも第１ユーザの事前予想が当たっていたとは限らず、単に特定領域５０５を移動させなかった可能性もある。これにより、投打の駆け引きがより複雑となり、ゲーム性をより向上させることができる。
【０２５１】
〔その他の実施の形態〕
次に、第１ユーザが照準カーソル５０３を移動させる操作を行うことにより、照準カーソル５０３の位置に応じて特定領域５０５を自動的に移動させる構成について説明する。ゲーム装置１００の特定領域移動手段５３は、移動体（本実施の形態ではボール）の移動が開始されるまでの、第１ユーザによる照準カーソル５０３を移動させる操作に応じて、移動後の照準カーソル５０３が特定領域５０５の中央部に存在するように、照準カーソル５０３の移動に伴って特定領域５０５を移動させる機能を有する。
【０２５２】
本構成によれば、投手キャラクタ５０２からボールがリリースされるまでは、第１ユーザがコントローラ１９等の操作により照準カーソル５０３を移動させれば、それに連動して特定領域５０５が移動し、常に照準カーソル５０３が特定領域５０５の中央部に存在する状態になる。即ち、前述の実施形態では、特定領域５０５の移動と、照準カーソル５０３の移動とは別操作で行われるものであるが、本構成では一操作で、両者が同時に移動する点が異なる。
【０２５３】
例えば、図４に示すように、特定領域５０５が、ストライクゾーン５０４の位置に初期設定され、特定領域５０５の中央部に照準カーソル５０３が存在しているとする。この状態から、図３２に示すように、ユーザがコントローラ１９を操作して、照準カーソル５０３をアウトコース低目へと移動させた場合、照準カーソル５０３が特定領域５０５の中央部に位置するように、特定領域５０５も移動する。
【０２５４】
このように、照準カーソル５０３の移動に連動して特定領域５０５が移動しても、前述のとおり特定領域５０５内における照準カーソル５０３の大きさの設定は、基本的に維持される。
【０２５５】
投手キャラクタ５０２からボールがリリースされた後は、最早、特定領域５０５の移動はできないため、ボールがリリースされたときの照準カーソル５０３の位置が、特定領域５０５の中央部の位置として確定される。例えば、投手キャラクタ５０２からボールがリリースされたときに、図３２に示すように照準カーソル５０３がアウトコース低目に存在する場合、特定領域５０５もアウトコース低目に移動されており、ユーザはアウトコース低目を意識（予想）した打撃操作を行うことができる。
【０２５６】
本構成の場合も、投手キャラクタ５０２からボールがリリースされた後は、特定領域５０５の移動ができなくなったことを明確化すると共に、打撃操作の妨げにならないように、特定領域５０５を不可視とすることが好ましい。
【０２５７】
この構成の場合、ユーザは照準カーソル５０３を、例えば１ドット単位で任意の位置に移動できるので、照準カーソル５０３の移動に連動して、特定領域５０５も任意の位置に移動可能である。
【０２５８】
以上のように、本構成によれば、投手キャラクタ５０２からボールがリリースされるまでは、第１ユーザが照準カーソル５０３を移動させる操作をすれば、照準カーソル５０３の移動に伴い、移動後の照準カーソル５０３の位置に応じて、自動的に特定領域５０５が移動する。よって、第１ユーザは、投手キャラクタ５０２からボールがリリースされるまでに、予想する投球コースの位置に照準カーソル５０３を移動させればよい。このように、照準カーソル５０３の移動操作をするだけで、それに連動して特定領域５０５が移動するので、第１ユーザによる操作の簡略化を図ることができる。
【０２５９】
次に、照準カーソル５０３を移動させる操作をするだけで、自動的に特定領域５０５を移動させることができる構成のバリエーションを説明する。上記では、投手キャラクタ５０２からボールがリリースされるまでは、照準カーソル５０３の移動に連動して特定領域５０５も移動する例を示したが、次のような構成も可能である。すなわち、投手キャラクタ５０２からボールがリリースされる前は、照準カーソル５０３を移動させても、特定領域５０５が移動することはない。そして、投手キャラクタ５０２からボールがリリースされたときに、照準カーソル５０３の位置に応じて、特定領域５０５を移動させる。
【０２６０】
例えば、図４に示すように、特定領域５０５が、ストライクゾーン５０４の位置に初期設定された場合、投手キャラクタ５０２からボールがリリースされる直前までは、特定領域５０５はストライクゾーン５０４の位置に固定される。そして、例えば、投手キャラクタ５０２からボールがリリースされた時点で、照準カーソル５０３がストライクゾーン５０４のアウトコース領域に存在すれば、図９に示すように、特定領域５０５がアウトコースへと自動的に移動する。
【０２６１】
この構成でも、第１ユーザは、投手キャラクタ５０２からボールがリリースされるまでに、予想する投球コースの位置に照準カーソル５０３を移動させれば、特定領域５０５の位置決めが自動で行われるので、第１ユーザによる操作の簡略化を図ることができる。
【０２６２】
次に、ゲーム装置１００が予想情報を取得する方法のバリエーションについて説明する。野球ゲームのように、移動体の一例としてのボールに照準カーソルを重ねて作用を与えるゲームを制御するゲーム装置１００の構成例を図３３に示す。この構成のゲーム装置１００は、第１ユーザの操作に応じて照準カーソル５０３を移動させるカーソル移動手段５４を備え、予想手段７１は、ボールの移動開始時における照準カーソル５０３の位置情報を、移動パラメータとしての移動コースに対する予想情報として取得する機能を有する。
【０２６３】
すなわち、ボールが投手キャラクタ５０２からリリースされたタイミングで、そのときの照準カーソル５０３の位置情報を、投球コースに関する予想情報として取得するのである。例えば、第１ユーザがインコースを予想した場合、ボールが投手キャラクタ５０２からリリースされるまでに、前もって照準カーソル５０３をインコースの位置に移動させて待機するものと考えられる。これは、第１ユーザが前もって照準カーソル５０３を予想したコースに待機させておくことにより、もし予想が的中した場合、照準カーソル５０３の位置を微調整するだけで、ボールを的確に捉えることができるからである。そこで、ボールが投手キャラクタ５０２からリリースされたときの照準カーソル５０３の位置を、第１ユーザが予想した投球コースとみなし、その位置情報を予想情報として取得するのである。
【０２６４】
照準カーソル５０３の位置情報としては、例えば照準カーソル５０３の中央部の座標情報とすることができる。あるいは、照準カーソル５０３の中央部の位置がインコース領域に存在すれば位置情報を「インコース」、アウトコース領域に存在すれば位置情報を「アウトコース」といったように、位置情報を「インコース」、「アウトコース」等で表してもよい。
【０２６５】
本構成により、第１ユーザは、照準カーソル５０３の移動操作をするだけで、同時に移動体の移動コースの予想も可能となるので、操作の簡略化を図ることができる。
【０２６６】
また、本構成は、画面上に特定領域５０５を設定する構成および特定領域５０５を設定しない構成の何れにも適用できる。
【０２６７】
次に、領域内カーソル設定手段５２のバリエーションを説明する。ストライクゾーン５０４の真ん中以外のコース（例えばアウトコースを）予想してそのコースを意識した打撃をした場合、その予想が的中すれば、予想しない場合よりも打ち易くなる。但し、コース予想はあくまで第１ユーザの意識に基づくものである。このため、現実的には、真ん中コースを意識した打撃をして、真ん中コースに来たボールを打撃するよりも、真ん中以外のコースを意識した打撃をして、意識したコースに来たボールを打撃する場合の方が、若干ボールを打ち難くなる。これをゲームにリアルに反映させるべく、領域内カーソル設定手段５２は、以下の構成とすることができる。
【０２６８】
すなわち、領域内カーソル設定手段５２は、特定領域５０５が基準位置（本実施の形態ではストライクゾーン５０４の位置）から移動した場合における領域中央部の照準カーソル５０３の大きさを、特定領域５０５が基準位置に存在する場合における領域中央部の照準カーソル５０３の大きさよりも、小さく設定する。
【０２６９】
例えば、図３４Ａに示すように、特定領域５０５が基準位置であるストライクゾーン５０４の位置に存在する場合において、領域中央部の照準カーソル５０３の直径をＬ１とする。また、図３４Ｂに示すように、特定領域５０５が基準位置であるストライクゾーン５０４から右打者のアウトコース側へ移動した場合において、領域中央部の照準カーソル５０３の直径をＬ２とする。この場合、Ｌ１＞Ｌ２となる。特定領域５０５をストライクゾーン５０４の位置からインコース側、高目側、または低目側に移動させた場合も同様である。
【０２７０】
このように、特定領域５０５が基準位置であるストライクゾーン５０４の位置に存在する場合よりも、基準位置から移動した場合の方が、領域中央部の照準カーソル５０３の大きさを小さくすることにより、操作難易度を高くする。これにより、コース予想におけるリアル感をより向上させることができる。
【０２７１】
ところで、図３５に示すように、特定領域５０５が基準位置であるストライクゾーン５０４から移動した場合、基準位置に存在していた移動前の特定領域５０５における移動後の特定領域５０５と重ならない空白領域５３０ができる。同図において、便宜上、空白領域５３０はハッチングにより表している。図３５では、特定領域５０５をストライクゾーン５０４の位置から右打者のアウトコース側へ移動させたことにより、インコース側に、空白領域５３０が発生した例を示している。
【０２７２】
同様に、特定領域５０５をストライクゾーン５０４の位置から右打者のインコース側へ移動させれば、アウトコース側に空白領域５３０が発生する。また、特定領域５０５をストライクゾーン５０４の位置から高目コース側へ移動させれば低目コース側に空白領域５３０が発生し、低目コース側へ移動させれば高目コース側に空白領域５３０が発生する。この空白領域５３０の扱いについて、以下に説明する。
【０２７３】
図３６の機能ブロック図に示すように、ゲーム装置１００は、空白領域内設定手段５６をさらに備えていることが好ましい。この空白領域内設定手段５６は、特定領域５０５が基準位置から移動したことにより発生した空白領域５３０内の照準カーソル５０３の大きさを、移動後の特定領域５０５内の照準カーソル５０３の最小サイズよりもさらに小さくなるように設定する機能を有する。すなわち、空白領域５３０については、特定領域５０５内における打撃操作の最大難易度よりも、さらに難易度が高くなるように、照準カーソル５０３の大きさを設定する。
【０２７４】
例えば、図３７に示すように、特定領域５０５の中央部から離れるほど照準カーソル５０３が小さくなるように、特定領域５０５内における照準カーソル５０３の大きさを設定した場合、特定領域５０５の四隅に存在する照準カーソル５０３ａが、特定領域５０５内の照準カーソル５０３の最小サイズである。この場合、空白領域５３０内の照準カーソル５０３ｂについては、前記四隅の照準カーソル５０３ａよりもさらに小さくなるように設定される。
【０２７５】
なお、図３７の例では、空白領域５３０内の全ての位置で、照準カーソル５０３ｂの大きさを同一としているが、これに限定されるものではない。例えば、空白領域５３０内の照準カーソル５０３ｂの大きさは、移動後の特定領域５０５の中央部から離れるほど、照準カーソル５０３ｂが小さくなるように設定してもよい。
【０２７６】
上記のように、特定領域５０５を基準位置であるストライクゾーン５０４から移動させたことにより発生する空白領域５３０における照準カーソル５０３ｂの大きさを、移動後の特定領域５０５内の照準カーソル５０３の最小サイズよりもさらに小さくすることにより、コース予想が外れたことによるデメリットを明確化できる。これにより、第１ユーザの遊戯中の緊張感が高まり、遊戯性の向上が図られる。
【０２７７】
本構成の場合、例えばアウトコースの投球を予想したが、実際にはインコースに存在する空白領域５３０にボールが来てコース予想が外れた場合、明確なデメリットを発生させるが、全く打撃をできなくするものではない。これは、空白領域５３０といえども、ストライクゾーン５０４の中に存在するため、打撃自体は可能とする代わりに、打撃操作の困難性を高めたものである。
【０２７８】
なお、特定領域５０５および空白領域５３０以外の領域については、照準カーソル５０３を移動できないようにしてもよいし、移動可能としてもよい。特定領域５０５および空白領域５３０以外の領域にも照準カーソル５０３を移動可能とする場合、当該領域における照準カーソル５０３の大きさは、空白領域５３０内の照準カーソル５０３の大きさよりもさらに小さくなるように設定することができる。
【０２７９】
次に、空白領域５３０の扱いについてのバリエーションを説明する。前述の空白領域５３０において、第１ユーザが打撃することを禁止し、ユーザによるコース予想が外れたことによるデメリットを、より明確化してもよい。これを実現するゲーム装置１００は、図３８の機能ブロック図に示すように、禁止手段５７をさらに備えている。
【０２８０】
禁止手段５７は、前記空白領域５３０内では、移動体に対して作用を与えることを禁止する機能を有する。本実施の形態では、禁止手段５７は、空白領域５３０内では、移動体の一例としてのボールに対して、作用の一例としての打撃（ボールを打ち返すこと）を禁止する。
【０２８１】
空白領域５３０内で打撃を禁止する例としては、空白領域５３０内に照準カーソル５０３が存在する状態で、第１ユーザがスイングボタンを押して打撃操作を行っても、打者キャラクタ５０１がバットを振れないようにする、あるいは、バットを振っても空振りになるようにする。
【０２８２】
本構成により、コース予想が外れたことによるデメリットをより明確化することができ、遊戯中の緊張感がより高まり、遊戯性の向上が図られる。
【０２８３】
空白領域５３０内で打撃を禁止する他の例としては、そもそも空白領域５３０内に照準カーソル５０３を移動できないようにしてもよい。この場合、禁止手段５７は、空白領域５３０内への照準カーソル５０３の移動を禁止する機能を有する。
【０２８４】
構成によれば、第１ユーザは照準カーソル５０３を空白領域５３０内へ移動させる操作ができなくなるので、コース予想が外れたことによるデメリットを第１ユーザにさらに明確に認識させることができる。よって、遊戯中の緊張感がさらに高まり、遊戯性のさらなる向上が図られる。
【０２８５】
ところで、前述の実施の形態では、特定領域５０５が画面上に初期設定される位置（基準位置）をストライクゾーン５０４の位置とする例について説明したが、これに限定されるものではない。例えば、特定領域５０５の中央部の座標が、ストライクゾーン５０４の中央部から所定方向に所定距離ずれた位置に、特定領域５０５が初期設定されるようにしてもよい。例えば、図９に示すように、特定領域５０５の中央部の座標が、ストライクゾーン５０４の中央部からアウトコース方向に１マス分ずれた位置に、特定領域５０５を初期設定したり、図１１に示すように、インコース方向に１マス分ずれた位置に、特定領域５０５を初期設定したりしてもよい。ここで、１マスとは、例えばストライクゾーン５０４の水平方向の長さの３分の１の距離である。あるいは、特定領域５０５の中央部の座標が、ストライクゾーン５０４の中央部から上方または下方に１マス分ずれた位置に、特定領域５０５を初期設定してもよい。
【０２８６】
例えば、図９に示すように特定領域５０５がアウトコース方向に１マス分ずれた位置を基準位置とする場合、第１ユーザがアウトコースを予想する場合は、特定領域５０５を移動させる必要はない。
【０２８７】
また、特定領域５０５が初期設定される基準位置を、第１ユーザが任意に指定（設定）できるようにしてもよい。例えば、第１ユーザが、相手投手の投球の組み立てがアウトコース中心と予想した場合、基準位置を、図９のアウトコースに指定すればよい。そうすれば、アウトコース以外の投球を予想したときにだけ特定領域５０５を移動させればよいので、特定領域５０５を移動させる操作回数を削減できる。
【０２８８】
また、相手投手の投球の組み立てが、右打者と左打者とで異なっていると予想される場合、右打者の場合の基準位置と、左打者の場合の基準位置とを、それぞれ第１ユーザが予め指定（設定）できるようにしてもよい。
【０２８９】
第１ユーザが特定領域５０５の基準位置を指定する場合、図示しない設定画面で、ユーザがコントローラ１９等を使用して基準位置を指定する操作を行う。この操作に基づいて、ゲーム装置１００は指定された基準位置の情報（画面上の座標情報等）を記憶装置（メモリ１８等）に保存し、以降は当該基準位置を適用する。この構成において、第１ユーザが特定領域５０５の基準位置を指定しない場合は、デフォルトの基準位置（例えば、特定領域５０５の中央部が、ストライクゾーン５０４の中央部と一致する位置）が適用されるようにすることができる。
【０２９０】
また、前述の実施の形態では、特定領域５０５を、ストライクゾーン５０４と同じ大きさ及び形状（矩形）としたが、これに限定されるものではない。例えば、特定領域５０５をストライクゾーン５０４よりも大きくしたり、あるいは小さくしたりしてもよい。また、特定領域５０５は矩形に限らず、例えば、円形、楕円形等であってもよい。
【０２９１】
また、前述の各実施の形態では、２人のユーザが対戦するゲームモードへの適用について説明したが、１人のユーザがコンピュータを相手に対戦するゲームモード（所謂、ＣＰＵ対戦モード）にも適用可能である。
【０２９２】
ユーザがＣＰＵ対戦モードにより一人でプレイする場合において、ユーザが打者キャラクタ５０１を操作する「第１ユーザ」の立場のとき、ゲーム装置１００のＣＰＵ１は、ＡＩプログラム（Artificial Intelligence Program）等に基づく自動制御で、投手キャラクタ５０２による投球を制御する。すなわち、ボール移動手段７２の投球パラメータ決定部７２ａは、自動的に投球パラメータを決定する。例えば、投球パラメータ決定部７２ａは、特定領域５０５が初期設定された時点で（すなわち、ユーザが特定領域５０５を移動させる前に）、投球パラメータを決定している。ＣＰＵ対戦モードの場合も、第１ユーザは、特定領域５０５を移動させる等の操作により、移動パラメータの予想を行うことができる。
【０２９３】
また、ＣＰＵ対戦モードにおいて、ユーザが投手キャラクタ５０２を操作する「第２ユーザ」の立場のとき、ゲーム装置１００のＣＰＵ１は、ＡＩプログラム等に基づく自動制御で、打者キャラクタ５０１による打撃を制御する。この場合、ゲーム装置１００の予想手段７１は、投手キャラクタ５０２が投げるボールの移動開始前または移動開始時に、自動的に、ボールの移動に関する移動パラメータに対する予想情報を取得する。例えば、第２ユーザが投球コース等を決定する前に、ゲーム装置１００が投球コース等を自動で予想し、予想手段７１が自動的に予想情報を取得する。
【０２９４】
ＣＰＵ対戦モードの場合も、予想手段７１が取得した予想情報と、ボール移動手段７２によって決定された移動パラメータとの一致度に応じて、打者キャラクタ５０１の動作が異なる。よって、第２ユーザは、対戦相手がコンピュータであっても、打者キャラクタ５０１の動作を見ながら投打の駆け引きを行うことができる。
【０２９５】
また、前述の実施の形態では、主に、第１ユーザが予想する移動パラメータを「投球コース」とした場合について説明したが、予想する移動パラメータを「球種」または「球速」とした場合も、一致度に応じて打者キャラクタ５０１の動作が異なる。前述のように、第１ユーザ（またはコンピュータ）が球種予想を行う場合は、直球、カーブ、スライダー等の予想球種の情報を「予想情報」とすることができる。また、第１ユーザ（またはコンピュータ）が球速予想を行う場合は、速い球、遅い球等の情報を「予想情報」とすることができる。ここで、第１ユーザの球種（または球速）の予想と、実際のボールの球種（または球速）とが一致した場合（一致度が所定の閾値またはレベル以上の場合）、打者キャラクタ５０１は体勢を崩すことなくスイングしたりボールを見送ったりする（第１動作パターン）。一方、前記予想が外れた場合には、打者キャラクタ５０１の打撃のタイミングがずれて、バランスの崩れた体勢でスイングしたり、ボールを見送ったりする（第２動作パターン）。例えば、第１ユーザが直球（または速い球）を予想したのにカーブ（または遅い球）が来た場合、タイミングが合わずに泳いだような打撃動作となる。
【０２９６】
また、前述の実施の形態では、主に野球ゲームへの適用例を示したが、これに限らず、サッカー、テニス等、移動体に対して何らかの作用を与える様々なゲームにも適用できる。以下には、サッカーゲームへの適用例を示す。
【０２９７】
サッカーのＰＫ戦では、第１ユーザによって操作されるゴールキーパーキャラクタが、第２ユーザによって操作されるキッカーキャラクタから送出される（蹴り出される）移動体の一例としてのボールを、捕えるまたは弾く。例えば、ゴールキーパーキャラクタを操作する第１ユーザは、照準カーソルをキッカーキャラクタから送出されたボールに重ねることにより、そのボールを、捕えるまたは弾くことができる。
【０２９８】
このようなサッカーゲームの場合、ゲーム装置１００の特定領域設定手段５１は、ゴールキーパーキャラクタがボールを捕えるか弾くことが可能な領域を、前記特定領域として画面上に設定することができる。例えば、特定領域は、ゴールキーパーキャラクタの立ち位置を中心とする位置に初期設定することができる。
【０２９９】
例えば、特定領域５０５の大きさは、ゴール全体よりは若干小さな面積とすることができる。また、ゴールキーパーキャラクタの能力パラメータが高い場合には、特定領域をゴールと同面積としてもよい。また、ゴールキーパーキャラクタの能力パラメータが低いほど、特定領域の面積を小さくしてもよい。このように、キャラクタのパラメータに応じて特定領域５０５の大きさを変更してもよい。
【０３００】
そして、ゲーム装置１００の領域内カーソル設定手段５２は、次に例示するように、特定領域内の位置に応じて照準カーソルの大きさが変化するように、特定領域内における照準カーソルの大きさを設定する。すなわち、特定領域内では、中央部がゴールキーパーキャラクタにとって最もボールを捕えやすいことから、照準カーソルを最も大きくし、中央部から特定領域の外周に向かって、照準カーソルを小さくするように設定できる。また、ゴールキーパーキャラクタにとっては、足より手の方がボールに触れ易いものとして、特定領域の上部の方が、下部よりも照準カーソルが大きくなるように設定してもよい。
【０３０１】
そして、ゴールキーパーキャラクタを操作する第１ユーザは、キッカーキャラクタが右側のコースを狙っていると予想した場合には、キッカーキャラクタからボールが送出されるまでに、特定領域を右に移動させる操作を行う。これにより、ゲーム装置１００の特定領域移動手段５３は、特定領域内の位置と照準カーソルの大きさとの相対関係を維持したままで、画面上の特定領域を移動させる。また、ゲーム装置１００の予想手段７１は、第１ユーザの前記操作に基づいて（又はＣＰＵ対戦時は自動的に）、移動パラメータの一例としてのコースに対する予想情報を取得する。
【０３０２】
この場合、第１ユーザのコース予想が当たり、特定領域を移動させた方向に、キッカーキャラクタがシュートしたボールが飛んで来れば、比較的大きな照準カーソルでボールを捕えることができるというメリットが発生する。一方、第１ユーザのコース予想が外れて、特定領域を移動させた方向とは異なる方向に、キッカーキャラクタがシュートしたボールが飛んで来れば、比較的小さな照準カーソルでボールを捕える必要が生じるというデメリットが発生する。
【０３０３】
また、第１ユーザのコース予想が当たった場合（一致度が所定の閾値またはレベル以上の場合）、動作制御手段７３は、ゴールキーパーキャラクタがバランスを崩すことのない第１動作パターンの捕球動作を行うように制御する。一方、第１ユーザのコース予想が外れた場合（一致度が所定の閾値またはレベル未満の場合）、動作制御手段７３は、ゴールキーパーキャラクタがバランスを崩した第２動作パターンの捕球動作を行うように制御する。第２動作パターンでは、例えば、ゴールキーパーキャラクタが、キックされたボールの方向と異なる方向へ動きかけて、慌ててボールの方向へ移動するような動きを行う。
【０３０４】
ところで、現実世界のゴールキーパーは、キッカーによってボールが蹴られた瞬間に、コースを予想して動きを開始するものであり、その予想の当たり外れをボールが蹴られた瞬間に認識できる。そこで、リアル感を出すために、動作制御手段７３は、キックされたボールがゴール付近に来てからゴールキーパーキャラクタの動作を制御するのではなく、キックされたボールの移動開始後（移動直後）に、予想の一致度に応じてゴールキーパーキャラクタの動作を制御する構成とすることができる。例えば、予想が外れた場合は、キッカーによってボールが蹴られた直後に、ゴールキーパーキャラクタがバランスを崩した動作を行うようにする。
【０３０５】
なお、予想の一致度に応じてゴールキーパーキャラクタの動作を制御する構成においては、第１ユーザがキックコースの予想入力を行う操作は、特定領域を用いた操作に限定されるものではない。例えば、第１ユーザが予想するキックコースを、ポインティングデバイス等を使用して画面上で入力してもよい。
【０３０６】
このサッカーゲームでも、野球ゲームと同様に、現実世界でのキッカーとゴールキーパーとの駆け引きを、ゲーム上にリアルに反映できる。
【０３０７】
次に、テニスゲームへの適用例を示す。テニスのサーブの場面では、第１ユーザによって操作されるレシーバーキャラクタが、第２ユーザによって操作されるサーバーキャラクタから送出される移動体の一例としてのボールを、打ち返す。例えば、レシーバーキャラクタを操作する第１ユーザは、照準カーソルをサーブされたボールに重ねることにより、そのボールを打ち返すことができる。このようなテニスゲームの場合、レシーバーキャラクタがボールをレシーブ可能な領域を、前記特定領域として画面上に設定することができる。例えば、特定領域は、レシーバーキャラクタの立ち位置を中心とする位置に初期設定される。
【０３０８】
レシーバーキャラクタの真正面の位置よりも、ラケットを持っている手の位置の方がレシーブをし易いことから、特定領域内では、例えば、中央部よりもラケットを持っている手の方に若干ずれた位置で、照準カーソルを最も大きくし、当該位置から離れるほど照準カーソルが小さくなるように設定することができる。
【０３０９】
そして、レシーバーキャラクタを操作するユーザは、サーブが来るコースを予想し、予想したコースに特定領域を移動させる操作を行う。この場合も、特定領域内の位置と照準カーソルの大きさとの相対関係が維持されたまま、特定領域が移動することになる。また、ゲーム装置１００の予想手段７１は、第１ユーザの前記操作に基づいて（又はＣＰＵ対戦時は自動的に）、移動パラメータの一例としてのコースに対する予想情報を取得する。
【０３１０】
この場合、第１ユーザのコース予想が当たり、特定領域を移動させた方向に、サーブされたボールが飛んで来れば、比較的大きな照準カーソルでボールを捕えることができるというメリットが発生する。一方、第１ユーザのコース予想が外れて、特定領域を移動させた方向とは異なる方向に、サーブされたボールが飛んで来れば、比較的小さな照準カーソルでボールを捕える必要が生じるというデメリットが発生する。
【０３１１】
また、第１ユーザのコース予想が当たった場合（一致度が所定の閾値またはレベル以上の場合）、動作制御手段７３は、レシーバーキャラクタがバランスを崩すことのない第１動作パターンのレシーブ動作を行うように制御する。一方、第１ユーザのコース予想が外れた場合（一致度が所定の閾値またはレベル未満の場合）、動作制御手段７３は、レシーバーキャラクタがバランスを崩した第２動作パターンのレシーブ動作を行うように制御する。例えば、第１ユーザがコーナーに来ると予想したのに対して、センターにボールが来たときには、レシーバーキャラクタがバランスを崩したようなレシーブ動作になってしまう。
【０３１２】
ところで、現実世界のテニスの試合でも、レシーバーは、サーバーによってボールが打たれた瞬間に、コース予想の当たり外れを認識できる。そこで、リアル感を出すために、動作制御手段７３は、サーブされたボールの移動直後に、予想の一致度に応じてレシーバーキャラクタの動作を制御する構成とすることができる。
【０３１３】
このテニスゲームでも、野球ゲームと同様に、現実世界でのサーバーとレシーバーとの駆け引きを、ゲーム上にリアルに反映できる。
【０３１４】
また、前述の実施の形態では、ユーザが操作するゲーム装置１００においてゲームプログラムが実行される構成について説明したが、端末装置でのゲーム操作入力に応じてサーバ装置でゲームプログラムを実行し、その実行結果を各ユーザの端末装置に送信するゲームシステムを適用することもできる。このゲームシステムの構成例を、図３９に示している。同図に示すように、このゲームシステムは、インターネットなどのネットワーク６００上に設置されたサーバ装置１０００と、ネットワーク６００を介してサーバ装置１０００と通信可能に接続できる各ユーザの端末装置２０００とによって構成される。
【０３１５】
サーバ装置１０００は、ゲームを実行した結果のゲーム映像を、例えばストリーミング形式で端末装置２０００に送信する、いわゆるクラウドゲーミングのサービスをユーザに提供する。このクラウドゲーミングを提供するサービス形態では、ユーザの端末装置２０００にゲーム専用のソフトウェアをダウンロード又はインストールする必要がなく、端末装置２０００をネットワーク６００に接続できる環境であれば、ユーザはどこでも気軽にサーバ装置１０００から提供されるゲームサービスを楽しむことができる。
【０３１６】
サーバ装置１０００および端末装置２０００のハード構成は、ＣＰＵ、ＲＯＭ、ＲＡＭ、補助記憶装置、通信インターフェース等を備えた、一般的なコンピュータの構成とすることができる。サーバ装置１０００の機能的構成は、前述のゲーム装置１００と同様に、予想手段７１、ボール移動手段７２および動作制御手段７３を備える構成とすることができる。また、サーバ装置１０００は、前述の手段５１〜５８等を備えていてもよい。このように、ゲーム装置１００の機能をサーバ装置１０００に持たせた場合も、ゲーム装置１００と同様の作用効果を奏する。
【０３１７】
また、サーバ装置１０００および端末装置２０００は互いに通信して各種データの送受が可能であり、共にＣＰＵ、ＲＯＭ、ＲＡＭ、補助記憶装置、通信インターフェース等を備えた情報処理装置（コンピュータ）であって、同様のハード構成を有する。よって、サーバ装置１０００および端末装置２０００を含むゲームシステムにおいて、上述の各実施の形態で説明したゲーム装置１００が具備する各手段は、サーバ装置１０００または端末装置２０００の何れか一方が備えていればよい。すなわち、ゲーム装置１００が具備する各手段を、サーバ装置１０００と端末装置２０００とに分散して設けることも可能である。この構成でも、前述の実施の形態と同様の作用効果を奏する。
【０３１８】
また、各種情報を記憶装置に記憶する記憶制御機能を有する構成に関し、記憶装置そのものについては当該構成に含まれないので、ゲーム装置１００、サーバ装置またはゲームシステムの内外を問わず、どこに設置されていてもよい。例えば、記憶装置は、ゲーム装置１００が有するＲＡＭ５やメモリ１８、サーバ装置が有するＲＡＭや補助記憶装置、あるいはゲーム装置１００やサーバ装置とは別構成のファイルサーバ（オンラインストレージ）等であってもよい。
【０３１９】
また、前述の各実施の形態で説明した各構成は、適宜組み合わせて適用することができる。
【０３２０】
また、本実施の形態に係るコンピュータ読み取り可能なプログラムは、ハードディスク、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等）、フレキシブルディスク、半導体メモリ等のコンピュータ読み取り可能な非一時的な各種記録媒体に記録され、当該記録媒体から読み出されてゲーム装置、サーバ装置のＣＰＵにより実行される。また、プログラムをゲーム装置等に提供する手段は、前述した記録媒体に限定されるものではなく、インターネット等の通信ネットワークを介して行うこともできる。
【０３２１】
これまで説明してきたように、本実施の形態のゲーム装置等の概要は、以下のとおりである。
【０３２２】
１）本発明の一態様によるゲーム装置（１００、１０００）は、移動体（例えばボール５４０）に対してキャラクタ（例えば打者キャラクタ５０１）が作用を与えるゲームを制御するものであって、前記移動体（５４０）の移動開始前または移動開始時に、前記キャラクタ（５０１）を操作する第１ユーザの操作に基づいて、又は自動的に、前記移動体（５４０）の移動に関する移動パラメータに対する予想情報を取得する予想手段（７１）と、前記移動体（５４０）を操作する第２ユーザの操作に基づいて、前記移動パラメータを決定して前記移動体（５４０）を移動させる移動体移動手段（例えばボール移動手段７２）と、前記移動体（５４０）の移動後の前記キャラクタ（５０１）の動作を制御する動作制御手段（７３）と、を備え、前記動作制御手段（７３）は、前記予想情報と前記移動体移動手段（７２）によって決定された前記移動パラメータとの一致度に応じて、前記キャラクタ（５０１）の動作を異ならせる。
【０３２３】
本構成のゲーム装置が制御するゲームは、移動体に作用を与えるゲームである。移動体の一例としては、スポーツシミュレーションゲームにおけるボールが挙げられる。また、作用の一例としては、移動体を打ち返す、捕える、打ち砕く等がある。このゲームの一例としては、投手キャラクタが投げたボール（移動体）を打者キャラクタが打ち返す（打撃）野球ゲームが挙げられる。野球ゲームに限らず、サッカー、テニス等、移動体に対して何らかの作用を与える様々なゲームにも適用できる。
【０３２４】
本ゲーム装置では、予想手段が、移動体の移動開始前または移動開始時に、キャラクタを操作する第１ユーザの操作に基づいて、又は自動的に、移動体の移動に関する移動パラメータに対する予想情報を取得する。ここで、移動体の移動開始前または移動開始時とは、例えば野球ゲームでは、投手キャラクタからボールがリリースされる前またはリリースされたときである。また、例えば、サッカーゲームのＰＫ戦では、キッカーがボールをキックする前またはキックしたときである。また、例えばテニスゲームでは、サーバーがサーブする前またはサーブしたときである。以下、主に野球ゲームを例として説明する。
【０３２５】
キャラクタを操作する第１ユーザは、移動体の移動に関する移動パラメータを予想することができる。野球ゲームの例では、打者キャラクタを操作する第１ユーザは、移動パラメータの一例としての投球コース、球種、球速等を予想することができる。第１ユーザによる投球コース等の予想入力の操作に基づいて、予想手段は、移動パラメータに対する予想情報を取得する。
【０３２６】
予想手段が取得する予想情報としては、次のような情報が挙げられる。例えば、野球ゲームの場合であれば、コース予想の場合は、インコース、アウトコース等の予想コースを示す情報、または予想コースの座標情報を「予想情報」とすることができる。また、例えば、球種予想の場合は、直球、カーブ、スライダー等の予想球種の情報を「予想情報」とすることができる。また、例えば、球速予想の場合は、速球等の「速い球」、チェンジアップ等の「遅い球」を予想して何れかを選択した情報を、「予想情報」とすることができる。
【０３２７】
第１ユーザと第２ユーザとの対戦の場合は、第１ユーザの予想入力の操作に基づいて、予想手段が予想情報を取得するが、第２ユーザが一人プレイでコンピュータと対戦する場合（所謂、ＣＰＵ対戦の場合）には第１ユーザは存在せず、例えば第２ユーザが投球コース等を決定する前にゲーム装置が投球コース等を自動で予想し、予想手段が自動的に予想情報を取得する。
【０３２８】
また、移動体移動手段は、移動体を操作する第２ユーザの操作に基づいて、前記移動パラメータを決定して移動体を移動させる。例えば野球ゲームでは、第２ユーザが、投手キャラクタが投げるボールの移動パラメータとして投球コースや球種等を決定するための操作を行うことにより、移動体移動手段が、当該操作に基づいて投球コースや球種等を決定し、ボールを打者キャラクタの方へ移動させる。
【０３２９】
また、動作制御手段は、移動体の移動後のキャラクタの動作を制御する。野球ゲームの例では、投手キャラクタからボールがリリースされた後の打者キャラクタの、バッティング動作またはボールを見送る動作を制御する。例えば、動作制御手段は、第１ユーザによって打撃操作が行われた場合には、打者キャラクタのバッティング動作を制御し、打撃操作が行われなかった場合には、打者キャラクタのボール見送り動作を制御する。
【０３３０】
そして、動作制御手段は、予想手段によって取得された移動パラメータに対する予想情報と移動体移動手段によって決定された移動パラメータとの一致度に応じて、キャラクタの動作を異ならせる。ここで、一致度としては、移動パラメータに対する予想情報と実際の移動パラメータとの一致の程度を、例えば値またはレベルとして表すことができる。
【０３３１】
例えば、移動パラメータに対する予想情報と実際の移動パラメータとが一致する場合の一致度を「１」または「レベルＡ」、不一致の場合の一致度を「０」または「レベルＢ」として、一致度を２段階の値またはレベルで表しても良い。あるいは、予想情報が予想コースの座標情報であった場合、予想コースの座標と実際に移動体が通過した座標とのずれ量（両座標間の距離）に基づいて、一致度を算出してもよい。
【０３３２】
前記一致度に応じてキャラクタの動作を異ならせる一例を説明する。例えば、第１ユーザによる投球コースの予想が当たった場合（予想コースと、実際の投球コースとが一致した場合）には、打者キャラクタは体勢を崩すことなくスイングしたりボールを見送ったりする。一方、前記予想が外れた場合（予想コースと実際の投球コースとが一致しなかった場合）には、打者キャラクタはバランスの崩れた体勢でスイングしたり、ボールを見送ったりする。
【０３３３】
予想が外れた場合の一例としては、インコースの予想に対して、アウトコースにボールが来た場合は、それを打とうとして打者キャラクタは泳ぐような打撃姿勢になってバランスを崩す。ボールを見送る場合も、打者キャラクタはボールを目で追いかけながら上体が突っ込む姿勢になる。
【０３３４】
また、アウトコースの予想に対して、インコースにボールが来た場合は、ボールを避けようとして打者キャラクタはのけぞったり、腰を引いたりするような姿勢になる。
【０３３５】
要するに、打者キャラクタ側のボールに対する事前予想（この例では、コース予想）が外れてしまうと、打者キャラクタの打撃姿勢等が崩れるのである。逆に、打撃姿勢が崩れなければ、打者キャラクタの事前予想は当たっていたとみることができる。このことから、第２ユーザは、いまの投球において、打者キャラクタ側がインコースを狙っていたのか、アウトコースを狙っていたのか等を推定することができる。そして、この推定が、打者キャラクタ側の打撃結果（空振り、ファール、見送り等）とともに、次の投球において、例えば打者キャラクタ側が引き続き同じコースを狙ってくるのか、あるいは異なるコースを狙ってくるのか、といった打撃予想を検討するための材料として、第２ユーザに供されることになる。すなわち、現実世界の野球のように、投球に対する打者の反応を見て、投手が次の投球を検討するといったリアル感のあるゲーム性を実現でき、投打の駆け引きがより一層楽しくなる。
【０３３６】
以上のように、本構成によれば、第２ユーザは、移動体の移動後のキャラクタの動作を見ることにより、移動体の移動コース等に対する相手側（第１ユーザまたはＣＰＵ）の事前予想の当否を推測可能となり、ゲーム上でリアル感のある相手との駆け引きが実現できる。
【０３３７】
２）上記の１）の構成において、前記動作制御手段（７３）は、前記一致度が所定の閾値またはレベル以上の場合に、前記キャラクタ（５０１）の動作を第１動作パターンとする一方、前記一致度が前記所定の閾値またはレベル未満の場合に、前記キャラクタ（５０１）の動作を前記第１動作パターンとは異なる第２動作パターンとすることが好ましい。
【０３３８】
一致度が所定の閾値またはレベル以上とは、基本的にキャラクタを操作する第１ユーザの予想が当たった（または予想に近い）場合に相当し、この場合はキャラクタが第１動作パターンの動作を行う。例えば、第１動作パターンでは、キャラクタがデフォルトの動作を行う。野球ゲームの例では、打者キャラクタがバランスを崩すことなく打撃またはボールを見送る動作を行う。但し、デフォルトといっても、ボールとバットの位置関係、ボールとキャラクタとの位置関係等、ゲーム内容に応じて、キャラクタの動作の微妙な違いは表現されるものとしてもよい。
【０３３９】
一方、一致度が所定の閾値またはレベル未満とは、基本的にキャラクタを操作する第１ユーザの予想が外れた（または予想から遠い）場合に相当し、この場合はキャラクタが第２動作パターンの動作を行う。第２動作パターンでは、第１動作パターンにはない動作が加えられる。例えば、第２動作パターンでは、第１動作パターンとの相違を第２ユーザが明確に認識できるように、泳ぐ、のけぞる、腰を引く等、打者キャラクタがバランスの崩れた体勢で打撃または見送りの動作を行う。
【０３４０】
第１動作パターンは、１つの固定パターンであってもよいし、第１動作パターンとして複数の動作パターンが存在してもよい。同様に、第２動作パターンも、１つの固定パターンであってもよいし、第２動作パターンとして複数の動作パターンが存在してもよい。
【０３４１】
このように、移動パラメータに対する予想情報と実際の移動パラメータとの一致度に応じて、キャラクタの動作として、第１動作パターンまたは第２動作パターンの何れかが選択されるので、第２ユーザは、キャラクタの動作を見ることにより、相手側（第１ユーザまたはＣＰＵ）の事前予想の当否を明確に推測可能となる。
【０３４２】
３）上記の２）の構成において、前記第２動作パターンは、前記一致度に応じた複数の動作パターンが存在し、前記動作制御手段（７３）は、前記一致度に応じて、前記第２動作パターンを変動させることが好ましい。
【０３４３】
一致度が所定の閾値またはレベル未満の場合に、キャラクタの動作として第２動作パターンが選択されるが、この第２動作パターンは１つではなく、一致度に応じて変動する。例えば、一致度が低いほど（すなわち予想と現実とのずれが大きいほど）、打者キャラクタはより大きくバランスを崩した体勢の打撃や見送りの動作を行う。
【０３４４】
これにより、第２ユーザは、相手の予想と現実とのずれの大きさを、キャラクタの動作から推定することができる。
【０３４５】
４）上記の１）ないし３）の何れかの構成において、画面上の基準位置に、前記移動体（５４０）の移動コースを予想するための特定領域（５０５）を設定する特定領域設定手段（５１）と、前記移動体（５４０）の移動が開始されるまでの前記第１ユーザの操作に応じて、前記特定領域（５０５）を前記基準位置から移動させる特定領域移動手段（５３）と、をさらに備え、前記予想手段（７１）は、前記特定領域（５０５）の位置に基づいて、前記移動パラメータとしての移動コースに対する前記予想情報を取得することが好ましい。
【０３４６】
野球ゲームを例に挙げると、前記基準位置をストライクゾーンの位置とすることができる。すなわち、ストライクゾーンの位置に、移動コースの一例としての投球コースを予想するための特定領域（予想用として設けられた疑似的なストライクゾーン）が設定される。そして、第１ユーザが特定領域を移動させる操作を行うことにより、投球コースの予想が可能である。例えば、ユーザが特定領域をアウトコース側にシフトさせれば、アウトコースの予想入力ができる。
【０３４７】
このように、本構成によれば、基準位置に設けられた特定領域を移動させるという、直観的で分かり易い予想入力が可能なユーザインターフェースを実現できる。
【０３４８】
５）上記の４）の構成において、前記ゲームは、前記移動体（５４０）に照準カーソル（５０３）を重ねて作用を与えるゲームであって、前記照準カーソル（５０３）を、前記第１ユーザの操作に応じて移動させるカーソル移動手段（５２）と、前記特定領域（５０５）内の位置に応じて前記照準カーソル（５０３）の大きさが変化するように、前記特定領域（５０５）内における前記照準カーソル（５０３）の大きさを設定する領域内カーソル設定手段と、をさらに備えていることが好ましい。
【０３４９】
この構成によれば、特定領域内の位置に応じて照準カーソルの大きさが変化する。例えば、野球ゲームの場合、疑似的なストライクゾーンである特定領域内の中央部が最も照準カーソルが大きく、中央部から離れるほど照準カーソルが小さくなるような設定にすることができる。第１ユーザはこの特定領域を移動させることによりコース予想を行なうので、コース予想に応じて、照準カーソルが大きくなる（野球では打ち易い）領域、照準カーソルが小さくなる（野球では打ち難い）領域が変動することになる。例えば、特定領域をアウトコース側にシフトすれば、本来のストライクゾーンの中央部にあった特定領域の中央部がアウトコース側にシフトし、アウトコース領域において照準カーソルが大きくなる一方、本来のストライクゾーンの中央部において照準カーソルが小さくなる。
【０３５０】
本構成によれば、第１ユーザによるコース予想の当否を、照準カーソルの大きさ（野球では打撃操作の難易度）として反映させることができるので、ゲーム性を高めることができる。
【０３５１】
６）上記の１）ないし３）の何れかの構成において、前記ゲームは、前記移動体（５４０）に照準カーソル（５０３）を重ねて作用を与えるゲームであって、前記照準カーソル（５０３）を、前記第１ユーザの操作に応じて移動させるカーソル移動手段（５２）をさらに備え、前記予想手段（７１）は、前記移動体（５４０）の移動開始時における前記照準カーソル（５０３）の位置情報を、前記移動パラメータとしての移動コースに対する前記予想情報として取得することが好ましい。
【０３５２】
移動体の移動開始時とは、野球ゲームを例に挙げると、移動体の一例としてのボールが投手からリリースされたときである。この移動体の移動開始時における照準カーソルの位置情報を、移動コースの予想情報とする。野球ゲームでは、打者側の照準カーソルの位置を、打者側の第１ユーザが予想した移動コースの位置とみなす。例えば、打者がインコースを予想している場合、前もって照準カーソルをインコースの位置に移動させて待機するものと考えられるので、上記のような判断を行う。
【０３５３】
本構成により、第１ユーザは、照準カーソルの移動操作をするだけで、同時に移動体の移動コースの予想も可能となるので、操作の簡略化を図ることができる。
【０３５４】
７）上記の１）ないし６）の何れかの構成において、前記動作制御手段（７３）は、前記移動体（５４０）の移動中に、前記第１ユーザによって前記移動体（５４０）に作用を与えるための作用付与操作が行われた場合に、前記一致度に応じて、前記キャラクタ（５０１）における前記移動体（５４０）に作用を与えるための動作を異ならせることが好ましい。
【０３５５】
ここで、作用付与操作とは、例えば野球ゲームでは、第１ユーザが行うバットスイング操作である。また、サッカーゲームのＰＫ戦では、ゴールキーパーキャラクタをボールに飛びつかせる操作である。また、例えば、テニスゲームでは、ラケットスイング操作である。これらは一例であり、ゲームの種類や内容に応じた作用付与操作を適用できる。
【０３５６】
また、キャラクタにおける移動体に作用を与えるための動作とは、例えば野球ゲームでは、打者キャラクタがボールを打ち返そうとバットを振る動作である。また、例えば、サッカーゲームのＰＫ戦では、ゴールキーパーキャラクタがボールを捕えよう（または弾こう）として飛びつく動作である。また、テニスゲームでは、サーブされたボールを、レシーバーキャラクタが打ち返そうとしてラケットを振る動作である。これらは一例であり、キャラクタは、ゲームの種類や内容に応じた動作を行う。
【０３５７】
この構成によれば、第１ユーザによって作用付与操作が行われた場合に、第１ユーザの予想の当否に応じて、キャラクタの動作が異なる。野球ゲームを例に挙げると、インコース予想に対して、アウトコースにボールが来た場合は、それを打とうとして打者キャラクタは泳ぐような打撃姿勢になる（バランスを崩す）。一方、アウトコース予想に対して、予想通りアウトコースにボールが来た場合は、打者キャラクタは体勢を崩すことなくアウトコースに適したインステップの打撃姿勢になる（バランスを崩さない）。これにより、投手側の第２ユーザは、打者キャラクタがバットを振る動作を見ることによって、第１ユーザの予想の当否を推測可能となる。
【０３５８】
８）上記の１）ないし７）の何れかの構成において、前記動作制御手段（７３）は、前記移動体（５４０）の移動中に、前記第１ユーザによって前記移動体（５４０）に作用を与えるための作用付与操作が行われなかった場合に、前記一致度に応じて、前記キャラクタ（５０１）における前記移動体（５４０）を見送る動作を異ならせることが好ましい。
【０３５９】
作用付与操作の例としては、野球のバットスイング操作を挙げることができる。野球ゲームを例に挙げると、本構成では、第１ユーザによってバットスイング操作が行われなかった場合でも、第１ユーザの予想の当否に応じて、打者キャラクタによるボールを見送る動作が異なる。例えば、アウトコース予想に対して、インコースにボールが来た場合は、打者キャラクタがボールを避けようとしてのけぞったり、腰を引いたりするような姿勢でボールを見送る（バランスを崩す）。一方、インコース予想に対して、予想通りインコースにボールが来た場合は、打者キャラクタは体勢を崩すことなく余裕をもってボールを見送る（バランスを崩さない）。これにより、投手側の第２ユーザは、打者側がボールを見送る場合も、第１ユーザの予想の当否を推測可能となる。
【０３６０】
９）上記の１）ないし８）の何れかの構成において、前記予想情報には、前記移動体（５４０）の移動コース、速さ、移動中の軌道変化の少なくとも１つの移動パラメータに対する予想情報を含むことが好ましい。
【０３６１】
野球ゲームを例に挙げると、「移動コース」としては投球コース（インコース、アウトコース等）、「速さ」としてはボールの球速（速球等の速い球、チェンジアップ等の遅い球）、「移動中の軌道変化」としては球種（ストレート、カーブ、シュート等）がそれぞれ該当する。これらのうちの１つ、又は２つ以.上を組み合わせて、移動体の移動に関する移動パラメータの予想を行うことができる。
【０３６２】
１０）本発明の他の一態様によるゲーム装置（１００、１０００）は、第１ユーザによって操作される打者キャラクタ（５０１）が、第２ユーザによって操作される投手キャラクタ（５０２）が投じたボールオブジェクトを打撃する野球またはソフトボールゲームを制御するものであって、前記ボールオブジェクト（５４０）の前記投手キャラクタ（５０２）からの送出開始前または送出開始時に、前記第１ユーザの操作に基づいて、前記ボールオブジェクト（５４０）の投球コースを予想した予想投球コースの情報を取得する予想手段（７１）と、前記第２ユーザの操作に基づいて、前記投球コースを決定して前記ボールオブジェクト（５４０）を移動させるボール移動手段（７２）と、前記ボールオブジェクト（５４０）の移動後の前記打者キャラクタ（５０１）の動作を制御する動作制御手段（７３）と、を備え、前記動作制御手段（７３）は、前記予想投球コースと前記ボール移動手段（７２）によって決定された投球コースとの一致度に応じて、前記打者キャラクタ（５０１）の動作を異ならせる。
【０３６３】
１１）本発明の他の一態様によるゲームシステムは、第１ユーザが使用する端末装置（２０００）および第２ユーザが使用する端末装置（２０００）を含み、第１ユーザによって操作されるキャラクタ（５０１）が、第２ユーザによって操作される移動体（５４０）に作用を与えるゲームを制御するゲームシステムであって、前記移動体（５４０）の移動開始前または移動開始時に、前記第１ユーザの操作に基づいて、前記移動体（５４０）の移動に関する移動パラメータに対する予想情報を取得する予想手段（７１）と、前記第２ユーザの操作に基づいて、前記移動パラメータを決定して前記移動体（５４０）を移動させる移動体移動手段（７２）と、前記移動体（５４０）の移動後の前記キャラクタ（５０１）の動作を制御する動作制御手段（７３）と、を備え、前記動作制御手段（７３）は、前記予想情報と前記移動体移動手段（７２）によって決定された前記移動パラメータとの一致度に応じて、前記キャラクタ（５０１）の動作を異ならせる。
【０３６４】
１２）本発明の他の一態様によるゲーム制御方法は、移動体（５４０）に対してキャラクタ（５０１）が作用を与えるゲームを制御するコンピュータにおけるゲーム制御方法であって、前記コンピュータが、前記移動体（５４０）の移動開始前または移動開始時に、前記キャラクタ（５０１）を操作する第１ユーザの操作に基づいて、又は自動的に、前記移動体（５４０）の移動に関する移動パラメータに対する予想情報を取得する予想ステップと、前記コンピュータが、前記移動体（５４０）を操作する第２ユーザの操作に基づいて、前記移動パラメータを決定して前記移動体（５４０）を移動させる移動体移動ステップと、前記コンピュータが、前記移動体（５４０）の移動後の前記キャラクタ（５０１）の動作を制御する動作制御ステップと、を含み、前記動作制御ステップでは、前記コンピュータが、前記予想情報と前記移動体移動ステップによって決定された前記移動パラメータとの一致度に応じて、前記キャラクタ（５０１）の動作を異ならせる。
【０３６５】
１３）本発明の他の一態様によるプログラムは、コンピュータを上記の１）ないし１０）の何れかに記載のゲーム装置（１００、１０００）として動作させるためのプログラムであって、前記コンピュータを前記ゲーム装置（１００、１０００）が備えている各手段として機能させるためのプログラムである。
【符号の説明】
【０３６６】
５１  特定領域設定手段
５２  領域内カーソル設定手段
５３  特定領域移動手段
５４  カーソル移動手段
５５  打撃結果決定手段
５６  空白領域内設定手段
５７  禁止手段
５８  領域外カーソル設定手段
７１  予想手段
７２  ボール移動手段
７３  動作制御手段
１００  ゲーム装置
４００、１０００  サーバ装置
５０１  打者キャラクタ
５０２  投手キャラクタ
５０３  照準カーソル
５０４  ストライクゾーン
５０５  特定領域
５３０  空白領域
５４０  ボール（移動体）
２０００  端末装置
【図１】
0005932735.tif 000002
【図２】
0005932735.tif 000003
【図３】
0005932735.tif 000004
【図４】
0005932735.tif 000005
【図５】
0005932735.tif 000006
【図６】
0005932735.tif 000007
【図７】
0005932735.tif 000008
【図８】
0005932735.tif 000009
【図９】
0005932735.tif 000010
【図１０】
0005932735.tif 000011
【図１１】
0005932735.tif 000012
【図１２】
0005932735.tif 000013
【図１３】
0005932735.tif 000014
【図１４】
0005932735.tif 000015
【図１５】
0005932735.tif 000016
【図１６】
0005932735.tif 000017
【図１７】
0005932735.tif 000018
【図１８】
0005932735.tif 000019
【図１９】
0005932735.tif 000020
【図２０】
0005932735.tif 000021
【図２１】
0005932735.tif 000022
【図２２】
0005932735.tif 000023
【図２３】
0005932735.tif 000024
【図２４】
0005932735.tif 000025
【図２５】
0005932735.tif 000026
【図２６】
0005932735.tif 000027
【図２７】
0005932735.tif 000028
【図２８】
0005932735.tif 000029
【図２９】
0005932735.tif 000030
【図３０】
0005932735.tif 000031
【図３１】
0005932735.tif 000032
【図３２】
0005932735.tif 000033
【図３３】
0005932735.tif 000034
【図３４Ａ】
0005932735.tif 000035
【図３４Ｂ】
0005932735.tif 000036
【図３５】
0005932735.tif 000037
【図３６】
0005932735.tif 000038
【図３７】
0005932735.tif 000039
【図３８】
0005932735.tif 000040
【図３９】
0005932735.tif 000041