以下、本発明を実施するための形態について図面を参照して説明する。なお、各図において、各部の寸法及び縮尺は、実際のものと適宜に異ならせてある。また、以下に述べる実施の形態は、本発明の好適な具体例であるから、技術的に好ましい種々の限定が付されているが、本発明の範囲は、以下の説明において特に本発明を限定する旨の記載がない限り、これらの形態に限られるものではない。
[1.第1実施形態]
以下、本発明の第1実施形態を説明する。
[1.1.ゲームシステムの概要]
図1は、本発明の第1実施形態に係るゲームシステム1の概要を説明するための説明図である。以下、図1を参照しつつ、第1実施形態に係るゲームシステム1の概要について説明する。
ゲームシステム1は、競技ゲームを実行可能な複数のゲーム装置10(10-1~10-M)と、複数のゲーム装置10(10-1~10-M)に対応して設けられた複数の表示装置30(30-1~30-M)とを有する(Mは2以上の自然数)。以下では、複数のゲーム装置10-1~10-Mのうち、m番目のゲーム装置10を、ゲーム装置10-mと称する場合がある(mは、1≦m≦Mを満たす自然数)。同様に、複数の表示装置30-1~30-Mのうち、m番目の表示装置30を、表示装置30-mと称する場合がある。
本実施形態では、ゲーム装置10が家庭用のゲーム機器である場合を一例として説明する。但し、ゲーム装置10としては、任意の情報処理装置を採用しうる。例えば、ゲーム装置10は、店舗や遊戯施設等に設置された業務用のゲーム機器であってもよいし、携帯電話若しくはスマートフォン等のモバイル機器であってもよいし、また、パーソナルコンピュータ等の端末型の情報機器であってもよい。
ゲーム装置10-mは、ゲーム装置10-mに対応して設けられた表示装置30-mと通信可能である。そして、ゲーム装置10-mは、ゲーム装置10-mにおいて実行されている競技ゲームに関する画像を、ゲーム装置10-mに対応して設けられた表示装置30-mが具備する表示部31-mに表示させることができる。表示装置30としては、例えば、液晶ディスプレイ、テレビ受像機、又は、タッチパネル等が該当する。なお、表示装置30は、ヘッドマウントディスプレイ(HMD:Head Mounted Display)でもよい。また、表示装置30は、ゲーム装置10に含まれてもよい。
複数のゲーム装置10-1~10-Mのうち一のゲーム装置10、例えば、ゲーム装置10-1は、ネットワークNWを介して、他のゲーム装置10、例えば、ゲーム装置10-2と通信可能である。具体的には、ゲーム装置10-1は、ゲーム装置10-2に対して、ゲーム装置10-1で実行されている競技ゲームに関する情報を送信する。また、ゲーム装置10-2は、ゲーム装置10-1に対して、ゲーム装置10-2で実行されている競技ゲームに関する情報を送信する。このため、各ゲーム装置10-mで実行されている競技ゲームに関する情報を、複数のゲーム装置10-1~10-Mの間で共有させることができる。これにより、ゲーム装置10-1のユーザと、ゲーム装置10-2のユーザとは、競技ゲームにおいて対戦すること、又は、競技ゲームにおいて互いに協力してミッションなどをクリアすることが可能である。本実施形態では、ゲーム装置10-1のユーザと、ゲーム装置10-2のユーザとが、競技ゲームにおいて対戦する場合について説明する。
なお、本実施形態では、一例として、ゲーム装置10同士がネットワークNWを介して通信しつつ競技ゲームを実行する場合を例示するが、本発明はこのような態様に限定されるものではない。例えば、ゲーム装置10は、他のゲーム装置10と、赤外線通信若しくはBluetooth(登録商標)等の近距離無線通信により、ネットワークNWを介さずに直接に通信可能であってもよいし、又は、ケーブル等で直接接続して通信可能であってもよい。また、ゲームシステム1は、複数のゲーム装置10間の通信を制御するサーバ装置を有してもよい。この場合、複数のゲーム装置10は、サーバ装置を介して通信可能であってもよい。また、各ゲーム装置10は、他のゲーム装置10と通信することなく、単独で競技ゲームを実行可能であってもよい。この場合、各ゲーム装置10のユーザは、単独で競技ゲームをプレイすることが可能である。
また、本実施形態では、一例として、各ゲーム装置10が単一のユーザにより操作される場合について説明するが、本発明はこのような態様に限定されるものではなく、複数のユーザが単一のゲーム装置10を操作することで、単一のゲーム装置10を操作する複数のユーザが対戦可能(又は、協力可能)であってもよい。
また、本実施形態において、ゲーム装置10で実行される競技ゲームとは、例えば、一の選手と他の選手とが、仮想空間において、競技ゲームに対応する競技を行うゲームである。ここで、「仮想空間」とは、競技ゲームに係る仮想的な物体等が存在する空間である。「競技ゲームに係る仮想的な物体」は、「ゲーム要素」の一例であり、例えば、競技ゲームに係るキャラクタ、及び、競技ゲームに係るオブジェクトを含む概念であってもよい。また、「ゲーム要素」は、「仮想空間に存在する仮想的な物体」に限定されず、「仮想空間を撮像する仮想カメラ」であってもよい。例えば、「ゲーム要素」は、フライトシミュレーターのパイロットの視点から仮想空間を撮像する仮想カメラであってもよいし、サバイバルゲームの主人公の視点から仮想空間を撮像する仮想カメラであってもよい。
「競技ゲームに対応する競技」は、「一の選手の行動を、一の選手の対戦相手である他の選手が阻止する競技」であってもよい。「一の選手の行動を、一の選手の対戦相手である他の選手が阻止する競技」としては、例えば、野球、ソフトボール、クリケット、サッカー、バスケットボール、テニス、卓球及びバレーボール等の球技全般が該当する。例えば、野球では、「一の選手の行動」は、投球、打撃、盗塁及び守備等であってもよい。また、例えば、サッカー及びバスケットボール等では、「一の選手の行動」は、ドリブル、パス及びシュート等であってもよい。また、テニス、卓球及びバレーボール等では、「一の選手の行動」は、例えば、対戦相手のコートにリターンされないようにボールを入れることであってもよい。
すなわち、ゲーム装置10で実行される競技ゲームは、野球ゲーム、ソフトボールゲーム、クリケットゲーム、サッカーゲーム、バスケットボールゲーム、テニスゲーム、卓球ゲーム及びバレーボールゲーム等の球技ゲームである。本実施形態では、ゲーム装置10-1、10―2で実行される競技ゲームが野球ゲームである場合について説明する。
[1.2.野球ゲームの概要]
図2を参照しつつ、本実施形態に係るゲーム装置10において実行される野球ゲームの概要について説明する。
図2は、表示部31に表示される画像IMGの一例を示す説明図である。野球ゲームでは、例えば、野球場を仮想的に実現した仮想空間を撮像した画像IMGが表示部31に表示される。従って、仮想空間には、投手に対応する投手キャラクタCpt、打者に対応する打者キャラクタCbt、ボールに対応するボールオブジェクトObl、バットに対応するバットオブジェクトObt及びホームベースに対応するホームベースオブジェクトOhb等が存在する。
図2に示す画像IMGは、例えば、投手キャラクタCptの後方(後頭部側)にある仮想カメラ(視点)からの画像であり、投手キャラクタCptの操作に使用されるゲーム装置10に対応する表示部31に表示される。また、ウィンドウWDは、例えば、走者に対応する走者キャラクタCrnが存在する場合に、表示される。ウィンドウWD内には、走者キャラクタCrnの他に、一塁ベース等のベースに対応するベースオブジェクトOrbが表示されてもよい。投手キャラクタCpt、打者キャラクタCbt、走者キャラクタCrn、ボールオブジェクトObl、バットオブジェクトObt、ホームベースオブジェクトOhb及びベースオブジェクトOrb等は、図1で説明した「競技ゲームに係る仮想的な物体」の一例である。なお、図2では、図を見やすくするために、キャッチャーに対応するキャッチャーキャラクタ及び審判に対応する審判キャラクタ等の記載を省略している。また、図示していないが、打者キャラクタCbtの操作に使用されるゲーム装置10に対応する表示部31には、例えば、打者キャラクタCbtの後方(後頭部側)にある仮想カメラ(視点)からの画像が表示される。
本実施形態の野球ゲームでは、投手キャラクタCptが投球を実行し、打者キャラクタCbtが打撃を実行する。また、走者キャラクタCrnが盗塁を実行する。ゲーム装置10-1のユーザ及びゲーム装置10-2のユーザは、守備側の選手に対応する守備キャラクタを操作する守備操作と、攻撃側の選手に対応する攻撃キャラクタを操作する攻撃操作とを、交互に行う。なお、守備キャラクタには、投手キャラクタCpt及びキャッチャーキャラクタ等が含まれ、攻撃キャラクタには、打者キャラクタCbt及び走者キャラクタCrn等が含まれる。
例えば、ゲーム装置10-1のユーザが攻撃操作を行う場合、ゲーム装置10-2のユーザは、守備操作を行う。この場合、ゲーム装置10-1のユーザは、例えば、走者キャラクタCrnに盗塁させるための盗塁指示を、ゲーム装置10-1を用いて入力してもよい。また、ゲーム装置10-2のユーザは、盗塁を阻止するための操作をゲーム装置10-2を用いて入力してもよいし、投手キャラクタCptに投球させるための投球指示を、ゲーム装置10-2を用いて入力してもよい。なお、攻撃と守備とが交代して、ゲーム装置10-2のユーザが攻撃操作を行う場合、ゲーム装置10-1のユーザは、守備操作を行う。
[1.3.ゲーム装置の構成]
以下、図3及び図4を参照しつつ、ゲーム装置10の構成について説明する。
図3は、ゲーム装置10の構成の一例を示す機能ブロック図である。ゲーム装置10は、ゲーム制御部110と、各種情報を記憶する記憶部130と、他のゲーム装置10等の外部装置との間の通信を実行するための通信部150と、ゲーム装置10のユーザが操作情報を入力するためのゲームコントローラ等の操作部170と、光ディスク等の記録媒体から情報を読み込むための情報読込部190とを有する。なお、通信部150は、表示装置30に対しては、表示部31に表示される画像IMGの画像データを出力する。
ゲーム制御部110は、ゲーム装置10の各部を制御する。さらに、ゲーム制御部110は、ゲーム装置10において実行される野球ゲーム等の競技ゲームの進行を制御する。例えば、ゲーム制御部110は、取得部111、通信制御部112、記憶制御部113及び進行制御部114を有する。
以下では、走者キャラクタCrn及び打者キャラクタCbtの一方又は両方を動作させるために使用されるゲーム装置10は、攻撃側のゲーム装置10とも称され、投手キャラクタCptを動作させるために使用されるゲーム装置10は、守備側のゲーム装置10とも称される。例えば、ゲーム装置10-1が走者キャラクタCrnを動作させるために使用され、ゲーム装置10-2が投手キャラクタCptを動作させるために使用される場合、ゲーム装置10-1は、攻撃側のゲーム装置10とも称され、ゲーム装置10-2は、守備側のゲーム装置10とも称される。
取得部111は、ゲーム装置10のユーザによる操作の内容を示す操作情報(「第1操作情報」の一例)を取得する。例えば、取得部111は、ゲーム装置10のユーザが操作部170を操作した場合に、当該操作の内容を示す操作情報を取得する。すなわち、取得部111は、ゲーム装置10のユーザによる操作を、操作部170を介して受け付ける。例えば、攻撃側のゲーム装置10の取得部111は、走者キャラクタCrnに盗塁させるための操作(以下、「盗塁指示」とも称する)及び打者キャラクタCbtがボールオブジェクトOblを打つための操作(以下、「打撃指示」とも称する)等を操作部170を介して受け付ける。また、守備側のゲーム装置10の取得部111は、投手キャラクタCptに投球させるための操作(以下、「投球指示」とも称する)を操作部170を介して受け付ける。
ここで、「操作の内容を示す操作情報」とは、ゲームコントローラ等の操作部170に対してユーザが入力した操作を示す情報であってもよいし、ユーザの実行した操作に割り当てられた処理を示す情報であってもよい。「操作を示す情報」は、例えば、操作部170に設けられた複数の操作ボタンのうち、一の操作ボタンをユーザが押下した場合、複数の操作ボタンの中から一の操作ボタンを特定するための情報であってもよい。あるいは、「操作を示す情報」は、例えば、ユーザの操作が、複数の選択メニューの中から一の選択メニューを選択する操作である場合に、複数の選択メニューの中から一の選択メニューを特定する情報であってもよい。具体的には、「操作を示す情報」は、ユーザの操作が、複数の選択メニュー“A”、“B”及び“C”の中から選択メニューBを選択する操作であった場合、選択メニュー“B”が選択されたことを示す情報であってもよい。また、「操作に割り当てられた処理を示す情報」は、例えば、一の操作ボタンの押下が、ゲームに係るキャラクタを上へ移動させる指示に割り当てられている状態で、ユーザが一の操作ボタンを押下した場合、キャラクタを上へ移動させる指示を示す情報であってもよい。
通信制御部112は、例えば、他のゲーム装置10から通信部150を介して情報を受信する情報受信部1121と、他のゲーム装置10に通信部150を介して情報を送信する情報送信部1122とを有する。具体的には、情報受信部1121は、ゲームを実行する他のゲーム装置10のユーザによる操作の内容を示す操作情報(「第2操作情報」の一例)を通信部150を介して受信する。また、情報送信部1122は、取得部111により取得された操作情報(「第1操作情報」の一例)を、他のゲーム装置10に通信部150を介して送信する。
ここで、2つのゲーム装置10が協同でゲームを実行するゲームシステム1では、例えば、2つのゲーム装置10の一方に着目した場合、2つのゲーム装置10の他方が「ゲームを実行する他のゲーム装置10」に該当する。例えば、攻撃側のゲーム装置10の情報受信部1121は、守備側のゲーム装置10のユーザによる操作の内容を示す操作情報を通信部150を介して受信する。同様に、守備側のゲーム装置10の情報受信部1121は、攻撃側のゲーム装置10のユーザによる操作の内容を示す操作情報を通信部150を介して受信する。以下では、他のゲーム装置10のユーザによる操作の内容を示す操作情報は、他のゲーム装置10の操作情報とも称される。
記憶制御部113は、取得部111により取得された操作情報を後述する記憶領域1321に記憶させ、通信制御部112により受信された操作情報を記憶領域1322に記憶させる。また、記憶制御部113は、初期化期間において、ユーザの操作に依存しない1又は複数の初期情報を記憶領域1321及び1322の一方に記憶させる初期化処理を実行する。「初期化期間」とは、例えば、後述する進行制御部114がゲームの進行を開始させる前の期間であってもよい。
進行制御部114は、記憶領域1321に記憶されている情報及び記憶領域1322に記憶されている情報に基づいてゲームを進行させる。例えば、初期化期間に記憶領域1322に初期情報が記憶された場合、進行制御部114は、初期化期間の終了後の第1期間において、記憶領域1321に記憶されている操作情報及び記憶領域1322に記憶されている初期情報に基づいてゲームを進行させる。また、初期化期間に記憶領域1321に初期情報が記憶された場合、進行制御部114は、第1期間において、記憶領域1321に記憶されている初期情報及び記憶領域1322に記憶されている操作情報に基づいてゲームを進行させる。
そして、第1期間の終了後の第2期間において、進行制御部114は、記憶領域1321に記憶されている操作情報及び記憶領域1322に記憶されている操作情報に基づいてゲームを進行させる。すなわち、進行制御部114は、取得部111により取得された操作情報と、情報受信部1121で受信された操作情報(他のゲーム装置10の操作情報)との組に基づいて、ゲームを進行させる。
ここで、「ゲームを進行させる」とは、周期的又は定期的に到来する更新タイミングに同期してゲームの状況を更新させることの一態様である。なお、「ゲームの状況を更新させる」とは、「ゲームの状況を変化させる」ことと「ゲームの状況を変化させずに維持する」こととを含む概念であってもよい。例えば、「ゲームの状況を変化させる」ことは、「ゲームを進行させる」ことに該当する。なお、「更新タイミング」は、例えば、表示装置30の表示部31等に表示される画像IMGを更新するタイミングであってもよい。この場合、「更新タイミング」の周期は、画像IMGを表示部31に表示する場合のフレームレートの逆数に対応する。
また、「ゲームの状況」とは、例えば、ゲームに係る仮想空間におけるゲーム要素の状況であってもよい。「ゲーム要素の状況」は、ゲーム要素の位置及び状態等であってもよい。「ゲーム要素の状態」とは、ゲーム要素の動きを含む概念であってもよい。「ゲーム要素の動き」としては、例えば、野球ゲームの場合、投球、打撃、盗塁等のキャラクタの行動が該当する。
また、進行制御部114は、ゲームの進行の結果を示す画像IMGを表示部31に表示させる。例えば、進行制御部114は、更新したゲームの状況に対応する画像IMGを表示部31に表示させる。
記憶部130は、ゲーム装置10において実行される野球ゲームの進行に必要な各種情報と、ゲーム装置10の制御プログラムRPGとを記憶する。制御プログラムRPGは、ゲーム装置10を制御するプログラムである。本実施形態では、制御プログラムRPGは、例えば、ゲーム装置10の各部を制御するためのオペレーションシステムプログラム、及び、ゲーム装置10が野球ゲームを実行するためのアプリケーションプログラム(「プログラム」の一例)を含む。このうち、アプリケーションプログラムは、例えば、ゲーム装置10のユーザが野球ゲームを開始する場合に、情報読込部190から読み込まれて、記憶部130に記憶されるものであってもよい。
本実施形態では、記憶部130は、操作情報及び初期情報等を記憶するバッファ部132を有する。バッファ部132は、取得部111により取得された操作情報を記憶する記憶領域1321(「第1記憶領域」の一例)と、通信制御部112により受信された操作情報を記憶する記憶領域1322(「第2記憶領域」の一例)とを含む。なお、ゲーム装置10の構成は、図3に示す例に限定されない。例えば、ゲーム制御部110がバッファ部132を有してもよい。
図4は、ゲーム装置10のハードウェア構成の一例を示す構成図である。
ゲーム装置10は、ゲーム装置10の各部を制御するプロセッサ11と、各種情報を記憶するメモリ13と、ゲーム装置10の外部に存在する外部装置との通信を行うための通信装置15と、ゲーム装置10のユーザによる操作を受け付けるための入力操作装置17と、記録媒体から情報を読み込むためのディスク装置19とを有する。
メモリ13は、例えば、プロセッサ11の作業領域として機能するRAM(Random Access Memory)等の揮発性メモリと、ゲーム装置10の制御プログラムRPG等の各種情報を記憶するEEPROM(Electrically Erasable Programmable Read-Only Memory)等の不揮発性メモリとを含み、記憶部130としての機能を提供する。
プロセッサ11は、例えば、CPU(Central Processing Unit)であり、メモリ13に記憶された制御プログラムRPGを実行し、当該制御プログラムRPGに従って動作することで、ゲーム制御部110として機能する。
通信装置15は、有線ネットワーク及び無線ネットワークの一方又は双方を介して、ゲーム装置10の外部に存在する外部装置との通信を行うためのハードウェアであり、通信部150としての機能を提供する。
入力操作装置17は、ゲーム装置10のユーザの操作を受け付ける操作部170としての機能を提供する。入力操作装置17は、例えば、操作ボタン、タッチパネル、キーボード、ジョイスティック、及び、マウス等のポインティングデバイスの一部又は全部を含む、1又は複数の機器から構成されるものであってもよい。
ディスク装置19は、例えば、光ディスク装置であり、光ディスク等の記録媒体に記録された制御プログラムRPG等の各種情報を読み込む情報読込部190としての機能を提供する。
なお、プロセッサ11は、CPUに加え、又は、CPUに替えて、GPU(Graphics Processing Unit)、DSP(Digital Signal Processor)、又は、FPGA(Field Programmable Gate Array)、等の、ハードウェアを含んで構成されるものであってもよい。この場合、プロセッサ11により実現されるゲーム制御部110の一部又は全部は、DSP等のハードウェアにより実現されてもよい。
[1.4.ゲーム装置の動作]
図5乃至図12を参照しつつ、ゲーム装置10の動作の一例を説明する。
図5は、ゲームシステム1における操作情報IINFの流れを説明するための説明図である。なお、図5は、操作情報IINF(IINF-1、IINF-2)等の情報の流れを模式的に示している。操作情報IINF-1は、ゲーム装置10-1のユーザU1による操作の内容を示す操作情報IINFであり、操作情報IINF-2は、ゲーム装置10-2のユーザU2による操作の内容を示す操作情報IINFである。また、画像データDIMG1-1は、表示部31-1に表示される画像IMGの画像データDIMG1であり、画像データDIMG1-2は、表示部31-2に表示される画像IMGの画像データDIMG1である。図5では、情報の流れを分かり易くするために、通信部150等の記載を省略している。以下では、ユーザU1及びU2を、特に区別せずに、ユーザUと称する場合もある。
ゲーム装置10-1に着目した場合、操作情報IINF-1は「第1操作情報」の一例であり、操作情報IINF-2は「第2操作情報」の一例である。また、ゲーム装置10-2に着目した場合、操作情報IINF-2は「第1操作情報」の一例であり、操作情報IINF-1は「第2操作情報」の一例である。
また、ゲームシステム1に着目した場合、ゲーム装置10-1及び10-2の一方は、「第1ゲーム装置」の一例であり、ゲーム装置10-1及び10-2の他方は、「第2ゲーム装置」の一例である。ゲーム装置10-1が「第1ゲーム装置」の一例で、ゲーム装置10-2が「第2ゲーム装置」の一例である場合、操作情報IINF-1は「第1操作情報」の一例であり、操作情報IINF-2は「第2操作情報」の一例である。そして、記憶領域1321-1は、「第1記憶領域」の一例であり、記憶領域1322-1は、「第2記憶領域」の一例であり、記憶領域1321-2は、「第3記憶領域」の一例であり、記憶領域1322-2は、「第4記憶領域」の一例である。
ゲーム装置10-1のユーザU1が操作部170-1を操作すると、取得部111-1は、ユーザU1による操作の内容を示す操作情報IINF-1を操作部170-1から取得する。なお、取得部111-1は、操作情報IINF-1を記憶部130等を介して操作部170-1から取得してもよい。そして、取得部111-1は、操作情報IINF-1を情報送信部1122-1及び記憶制御部113-1に出力する。
情報送信部1122-1は、操作情報IINF-1をゲーム装置10-2に送信する。これにより、ゲーム装置10-2の情報受信部1121-2は、ゲーム装置10-1の操作部170-1に対する操作の内容を示す操作情報IINF-1を受信する。そして、情報受信部1121-2は、操作情報IINF-1を記憶制御部113-2に出力する。
また、ゲーム装置10-2のユーザU2が操作部170-2を操作すると、取得部111-2は、ユーザU2による操作の内容を示す操作情報IINF-2を操作部170-2から取得する。そして、取得部111-2は、操作情報IINF-2を情報送信部1122-2及び記憶制御部113-2に出力する。
情報送信部1122-2は、操作情報IINF-2をゲーム装置10-1に送信する。これにより、ゲーム装置10-1の情報受信部1121-1は、ゲーム装置10-2の操作部170-2に対する操作の内容を示す操作情報IINF-2を受信する。そして、情報受信部1121-1は、操作情報IINF-2を記憶制御部113-1に出力する。
ゲーム装置10-1の記憶制御部113-1は、取得部111-1により取得された操作情報IINF-1をバッファ部132-1の記憶領域1321-1に記憶させ、通信制御部112-1により受信された操作情報IINF-2をバッファ部132-1の記憶領域1322-1に記憶させる。
ゲーム装置10-1の進行制御部114-1は、ゲーム装置10-1の操作情報IINF-1及びゲーム装置10-2の操作情報IINF-2の両方がバッファ部132-1に記憶された場合、操作情報IINF-1及びIINF-2に基づいてゲームを進行させる。そして、進行制御部114-1は、表示部31-1に表示する画像IMGの画像データDIMG1-1をゲームの進行の結果に基づいて生成し、生成した画像データDIMG1-1を表示装置30-1に出力する。これにより、ユーザU1及びU2のそれぞれの操作に応じて更新された画像IMGが表示部31-1に表示される。
同様に、ゲーム装置10-2の記憶制御部113-2は、取得部111-2により取得された操作情報IINF-2をバッファ部132-2の記憶領域1321-2に記憶させ、通信制御部112-2により受信された操作情報IINF-1をバッファ部132-2の記憶領域1322-2に記憶させる。
ゲーム装置10-2の進行制御部114-2は、ゲーム装置10-1及び10-2の両方の操作情報IINF-1及びIINF-2がバッファ部132-2に記憶されたため、操作情報IINF-1及びIINF-2に基づいてゲームを進行させる。そして、進行制御部114-2は、表示部31-2に表示する画像IMGの画像データDIMG1-2をゲームの進行の結果に基づいて生成し、生成した画像データDIMG1-2を表示装置30-2に出力する。これにより、ユーザU1及びU2のそれぞれの操作に応じて更新された画像IMGが表示部31-2に表示される。
なお、操作情報IINFの流れは、図5に示す例に限定されない。例えば、情報送信部1122-1は、操作情報IINF-1が記憶領域1321-1に記憶された後に、記憶領域1321-1に記憶された操作情報IINF-1をゲーム装置10-2に送信してもよい。次に、図6を参照しつつ、ゲームシステム1の動作の概要を説明する。
図6は、ゲームシステム1の動作の一例を示すシーケンスチャートである。図6では、複数の操作情報IINF-1を互いに区別するために、符号の末尾に小文字のアルファベット(a、b、c)を付している。同様に、複数の操作情報IINF-2を互いに区別するために、符号の末尾に小文字のアルファベット(a、b、c)を付している。図6に示した操作情報取得(S168、S268)は、取得部111により実行される処理であり、操作情報受信(S178、S278)は、情報受信部1121により実行される処理である。また、図6に示した更新処理(S184、S284)は、進行制御部114により実行される処理である。
また、図6に示した時刻T17、T27及びT37の間隔は、ゲーム装置10-1におけるゲームの更新タイミングの周期に対応し、時刻T18、T28及びT38の間隔は、ゲーム装置10-2におけるゲームの更新タイミングの周期に対応している。図6では、図を見やすくするために、操作情報IINFのゲーム装置10-1、10-2間の転送時間がゲームの更新タイミングの周期より短い場合を例にして、ゲームシステム1の動作シーケンスを図示している。図6に示す例では、ゲーム装置10-2においてゲームが更新される時刻は、ゲーム装置10-1においてゲームが更新される時刻より後の時刻である。なお、ゲーム装置10-2においてゲームが更新される時刻は、ゲーム装置10-1においてゲームが更新される時刻より前の時刻でもよいし、ゲーム装置10-1においてゲームが更新される時刻と同じ時刻でもよい。
先ず、時刻T11において、ゲーム装置10-1の取得部111-1は、操作情報IINF-1aを取得する(S168)。取得部111-1が操作情報IINF-1aを取得すると、情報送信部1122-1は、操作情報IINF-1aをゲーム装置10-2に送信する(S174)。これにより、ゲーム装置10-2の情報受信部1121-2は、時刻T14において、操作情報IINF-1aを受信する(S278)。
また、時刻T12において、ゲーム装置10-2の取得部111-2は、操作情報IINF-2aを取得する(S268)。取得部111-2が操作情報IINF-2aを取得すると、情報送信部1122-2は、操作情報IINF-2aをゲーム装置10-1に送信する(S274)。これにより、ゲーム装置10-1の情報受信部1121-1は、時刻T15において、操作情報IINF-2aを受信する(S178)。
時刻T17において、ゲーム装置10-1の進行制御部114-1は、ゲーム装置10-1及び10-2の両方の操作情報IINF-1及びIINF-2が入力されたため、操作情報IINF-1及びIINF-2に基づいてゲームを進行させる(S184)。これにより、ゲーム装置10-1のゲームの状況は、ユーザU1及びU2のそれぞれの操作に応じた状況に更新される。
同様に、時刻T18において、ゲーム装置10-2の進行制御部114-2は、ゲーム装置10-1及び10-2の両方の操作情報IINF-1及びIINF-2が入力されたため、操作情報IINF-1及びIINF-2に基づいてゲームを進行させる(S284)。これにより、ゲーム装置10-2のゲームの状況は、ユーザU1及びU2のそれぞれの操作に応じた状況に更新される。
時刻T21、T25及びT27におけるゲーム装置10-1の動作は、操作情報IINF-1aの代わりに操作情報IINF-1bが取得されることを除いて、時刻T11、T15及びT17におけるゲーム装置10-1の動作と同様である。また、時刻T22、T24及びT28におけるゲーム装置10-2の動作は、操作情報IINF-2aの代わりに操作情報IINF-2bが取得されることを除いて、時刻T12、T14及びT18におけるゲーム装置10-2の動作と同様である。
時刻T31、T35及びT37におけるゲーム装置10-1の動作は、操作情報IINF-1aの代わりに操作情報IINF-1cが取得されることを除いて、時刻T11、T15及びT17におけるゲーム装置10-1の動作と同様である。また、時刻T32、T34及びT38におけるゲーム装置10-2の動作は、操作情報IINF-2aの代わりに操作情報IINF-2cが取得されることを除いて、時刻T12、T14及びT18におけるゲーム装置10-2の動作と同様である。
このように、ゲームシステム1では、ゲーム装置10-1の進行制御部114-1とゲーム装置10-2の進行制御部114-2とは、操作情報IINF-1及びIINF-2の組に基づいて、ゲームを進行させる。この結果、例えば、2つのゲーム装置10-1及び10-2の間におけるゲームの進行内容が、互いに一致する。次に、図7乃至図10を参照しつつ、ゲームシステム1の動作の詳細を説明する。
図7乃至図10は、ゲームシステム1の動作の一例を説明する説明図である。図7乃至図10の記憶領域1321の横に示した位置P1、・・・、Pnは、記憶領域1321、1322において情報(初期情報又は操作情報IINF等)が記憶される位置を示す。また、記憶領域1321、1322内に示した“D”、“X”及び小文字のアルファベット(a、b、c等)は、記憶領域1321、1322内の各位置Pの状態を示している。例えば、“D”は、初期情報が記憶されていることを示し、“X”は、初期情報及び操作情報IINFのいずれも記憶されていないことを示す。また、小文字のアルファベットは、同じアルファベットが符号の末尾に付された操作情報IINFが記憶されていることを示す。例えば、記憶領域1321-1又は1322-2内に図示された“a”は、操作情報IINF-1aが記憶されていることを示し、記憶領域1322-1又は1321-2内に図示された“a”は、操作情報IINF-2aが記憶されていることを示す。また、図の記憶領域1321、1322の網掛けの部分は、ゲームの進行に既に使用された情報(初期情報又は操作情報IINF)を示す。先ず、図7を参照しつつ、ゲームシステム1の動作を説明する。
図7に示す例では、時刻T100は、初期化期間内の時刻である。また、図7に示した時刻T100、T101、T102及びT103の間隔は、ゲーム装置10-1及び10-2におけるゲームの更新タイミングの周期に対応している。図7では、図を見やすくするために、ゲーム装置10-1においてゲームが更新される時刻と、ゲーム装置10-2においてゲームが更新される時刻とを互いに同じ時刻としている。また、図7では、操作情報IINFのゲーム装置10-1、10-2間の転送時間がゲームの更新タイミングの周期より長い場合を想定する。
図7に示す例では、ゲーム装置10-1が打者キャラクタCbtを動作させるために使用され、ゲーム装置10-2が投手キャラクタCptを動作させるために使用される。このため、バッファ部132-1の状態を初期化する初期化処理がゲーム装置10-1で実行される場合、ユーザU1及びU2の操作に依存しない初期情報は、記憶領域1321-1に記憶される。また、バッファ部132-2の状態を初期化する初期化処理がゲーム装置10-2で実行される場合、ユーザU1及びU2の操作に依存しない初期情報は、記憶領域1322-2に記憶される。
例えば、時刻T100において、ゲーム装置10-1の記憶制御部113-1は、記憶領域1321-1内の位置P1、P2及びP3に初期情報を記憶させる初期化処理を実行する。同様に、ゲーム装置10-2の記憶制御部113-2は、記憶領域1322-2内の位置P1、P2及びP3に初期情報を記憶させる初期化処理を実行する。時刻T100では、操作情報IINFに依存しない画像IMGxが表示部31-1及び31-2にそれぞれ表示される。なお、表示部31-1に表示される画像IMGxは、表示部31-2に表示される画像IMGxと異なる画像でもよい。
時刻T101において、ゲーム装置10-1の記憶制御部113-1は、取得部111-1により取得された操作情報IINF-1aを記憶領域1321-1内の位置P4に記憶させる。また、情報送信部1122-1は、操作情報IINF-1aをゲーム装置10-2に送信する。図7に示す例では、2フレーム後の画像IMGが表示される時刻に対応する時刻T103に、ゲーム装置10-2が操作情報IINF-1aを受信する。
一方、ゲーム装置10-2の記憶制御部113-2は、時刻T101において、取得部111-2により取得された操作情報IINF-2aを記憶領域1321-2内の位置P1に記憶させる。記憶領域1322-2内の位置P1には、時刻T100に実行された初期化処理により、初期情報が記憶されている。このため、時刻T101において、進行制御部114-2は、記憶領域1321-2内の位置P1に記憶された操作情報IINF-2aと記憶領域1322-2内の位置P1に記憶された初期情報との組に基づいて、ゲームを進行させる。そして、進行制御部114-2は、ゲームの進行の結果を示す画像IMGaを、初期化後の1番目のフレームF1-2の画像IMGとして表示部31-2に表示させる。
また、情報送信部1122-2は、時刻T101において、操作情報IINF-2aをゲーム装置10-1に送信する。図7に示す例では、2フレーム後の画像IMGが表示される時刻に対応する時刻T103に、ゲーム装置10-1が操作情報IINF-2aを受信する。ゲーム装置10-1の進行制御部114-1は、操作情報IINF-2aを受信する時刻T103まで、ゲームの進行を待機する。従って、時刻T101では、表示部31-1には、例えば、操作情報IINFに依存しない画像IMGxが表示される。
このように、守備側のゲーム装置10-2は、ゲーム装置10-2のユーザU2による操作(操作情報IINF-2aで示される操作)を、攻撃側のゲーム装置10-1からの操作情報IINF-1aを受信する前に、ゲームの進行に反映させることができる。なお、操作情報IINF-2aに対応する初期情報が記憶領域1322-2に記憶されていない従来のゲーム装置は、他のゲーム装置からの操作情報IINF(例えば、ゲーム装置10-1からの操作情報IINF-1a)を受信するまで、ゲームは進行しない。すなわち、守備側のゲーム装置10-2は、従来のゲーム装置に比べて、操作の内容がゲームの進行に反映されるまでの遅延時間を短くすることができる。
時刻T102において、ゲーム装置10-1の記憶制御部113-1は、取得部111-1により取得された操作情報IINF-1bを記憶領域1321-1内の位置P5に記憶させる。また、情報送信部1122-1は、操作情報IINF-1bをゲーム装置10-2に送信する。
ゲーム装置10-2の記憶制御部113-2は、取得部111-2により取得された操作情報IINF-2bを記憶領域1321-2内の位置P2に記憶させる。進行制御部114-2は、記憶領域1321-2内の位置P2に記憶された操作情報IINF-2bと記憶領域1322-2内の位置P2に記憶された初期情報との組に基づいて、ゲームを進行させる。そして、進行制御部114-2は、ゲームの進行の結果を示す画像IMGbを、フレームF2-2の画像IMGとして表示部31-2に表示させる。また、情報送信部1122-2は、操作情報IINF-2bをゲーム装置10-1に送信する。
時刻T103において、ゲーム装置10-1の記憶制御部113-1は、取得部111-1により取得された操作情報IINF-1cを記憶領域1321-1内の位置P6に記憶させる。また、情報送信部1122-1は、操作情報IINF-1cをゲーム装置10-2に送信する。情報受信部1121-1は、ゲーム装置10-2から送信された操作情報IINF-2aを受信する。従って、時刻T103では、記憶制御部113-1は、情報受信部1121-1により受信された操作情報IINF-2aを記憶領域1322-1内の位置P1に記憶させる。
記憶領域1321-1内の位置P1には、時刻T100に実行された初期化処理により、初期情報が記憶されている。このため、時刻T103において、進行制御部114-1は、記憶領域1321-1内の位置P1に記憶された初期情報と記憶領域1322-1内の位置P1に記憶された操作情報IINF-2aとの組に基づいて、ゲームを進行させる。そして、進行制御部114-1は、時刻T103において、ゲームの進行の結果を示す画像IMGaを、初期化後の1番目のフレームF1-1の画像IMGとして表示部31-1に表示させる。すなわち、初期情報及び操作情報IINF-1aに基づいて更新されたゲームの状況を示す画像IMGaは、守備側のゲーム装置10-2では、時刻T100に表示部31-1に表示され、攻撃側のゲーム装置10-1では、時刻T103に表示部31-2に表示される。
ゲーム装置10-2の記憶制御部113-2は、取得部111-2により取得された操作情報IINF-2cを記憶領域1321-2内の位置P3に記憶させる。進行制御部114-2は、記憶領域1321-2内の位置P3に記憶された操作情報IINF-2cと記憶領域1322-2内の位置P3に記憶された初期情報との組に基づいて、ゲームを進行させる。そして、進行制御部114-2は、ゲームの進行の結果を示す画像IMGcを、フレームF3-2の画像IMGとして表示部31-2に表示させる。
また、情報送信部1122-2は、操作情報IINF-2cをゲーム装置10-1に送信する。情報受信部1121-2は、ゲーム装置10-1から送信された操作情報IINF-1aを受信する。従って、時刻T103では、記憶制御部113-2は、情報受信部1121-2により受信された操作情報IINF-1aを記憶領域1322-2内の位置P4に記憶させる。
なお、図7に示した時刻T101から時刻T103までの期間は、ゲーム装置10-2に着目した場合、初期化期間の終了後の第1期間に対応する。ゲーム装置10-1に着目した場合、図7に示した時刻T101から図8に示す時刻T105までの期間が、初期化期間の終了後の第1期間に対応する。次に、図8を参照しつつ、図7の動作の続きを説明する。
図8は、図7の動作の続きを説明する説明図である。図8に示す時刻T104以降の期間は、ゲーム装置10-2に着目した場合、第1期間の終了後の第2期間に対応する。また、ゲーム装置10-1に着目した場合、時刻T106以降の期間が、第1期間の終了後の第2期間に対応する。図7で説明した動作と同様の動作については、詳細な説明を省略する。
時刻T104において、ゲーム装置10-1の記憶制御部113-1は、取得部111-1により取得された操作情報IINF-1dを記憶領域1321-1内の位置P7に記憶させ、情報受信部1121-1により受信された操作情報IINF-2bを記憶領域1322-1内の位置P2に記憶させる。進行制御部114-1は、記憶領域1321-1内の位置P2に記憶された初期情報と記憶領域1322-1内の位置P2に記憶された操作情報IINF-2bとの組に基づいて、ゲームを進行させる。そして、進行制御部114-1は、ゲームの進行の結果を示す画像IMGbを、フレームF2-1の画像IMGとして表示部31-1に表示させる。また、情報送信部1122-1は、操作情報IINF-1dをゲーム装置10-2に送信する。
一方、ゲーム装置10-2の記憶制御部113-2は、取得部111-2により取得された操作情報IINF-2dを記憶領域1321-2内の位置P4に記憶させ、情報受信部1121-2により受信された操作情報IINF-1bを記憶領域1322-2内の位置P5に記憶させる。進行制御部114-2は、記憶領域1321-2内の位置P4に記憶された操作情報IINF-2dと記憶領域1322-2内の位置P4に記憶された操作情報IINF-1aとの組に基づいて、ゲームを進行させる。そして、進行制御部114-2は、ゲームの進行の結果を示す画像IMGdを、フレームF4-2の画像IMGとして表示部31-2に表示させる。また、情報送信部1122-2は、操作情報IINF-2dをゲーム装置10-1に送信する。このように、ゲーム装置10-2は、時刻T104において、ゲーム装置10-1の操作情報IINF-1aとゲーム装置10-2の操作情報IINF-2dとの組に基づいて、ゲームを進行させる。
時刻T105及び時刻T106のゲーム装置10-1の動作は、処理対象の操作情報IINFを除いて、時刻T104のゲーム装置10-1の動作と同様である。例えば、時刻T106では、ゲーム装置10-1の進行制御部114-1は、記憶領域1321-1内の位置P4に記憶された操作情報IINF-1aと記憶領域1322-1内の位置P4に記憶された操作情報IINF-2dとの組に基づいて、ゲームを進行させる。そして、進行制御部114-1は、ゲームの進行の結果を示す画像IMGdを、フレームF4-1の画像IMGとして表示部31-1に表示させる。
また、時刻T105及び時刻T106のゲーム装置10-2の動作は、処理対象の操作情報IINFを除いて、時刻T104のゲーム装置10-2の動作と同様である。次に、図9を参照しつつ、図8の動作の続きを説明する。
図9は、図8の動作の続きを説明する説明図である。図7及び図8で説明した動作と同様の動作については、詳細な説明を省略する。なお、図7乃至図10に示す例では、時刻T107から時刻T112において、ゲーム装置10-1から送信された操作情報IINF-1のゲーム装置10-2への到達に遅延が発生している場合を想定する。このため、時刻T107、時刻T108及び時刻T109のゲーム装置10-2の動作は、図8で説明した時刻T104のゲーム装置10-2の動作と異なる。なお、ゲーム装置10-2から送信された操作情報IINF-2がゲーム装置10-1に到達するまでの時間は、図9に示す例と図8に示した例とで同じとする。この場合、時刻T107、時刻T108及び時刻T109のゲーム装置10-1の動作は、処理対象の操作情報IINFを除いて、図8で説明した時刻T104のゲーム装置10-1の動作と同様である。従って、図9では、時刻T107、時刻T108及び時刻T109のゲーム装置10-2の動作を中心に説明する。
時刻T107において、ゲーム装置10-2の記憶制御部113-2は、取得部111-2により取得された操作情報IINF-2gを記憶領域1321-2内の位置P7に記憶させる。進行制御部114-2は、記憶領域1321-2内の位置P7に記憶された操作情報IINF-2gと記憶領域1322-2内の位置P7に記憶された操作情報IINF-1dとの組に基づいて、ゲームを進行させる。そして、進行制御部114-2は、ゲームの進行の結果を示す画像IMGgを、フレームF7-2の画像IMGとして表示部31-2に表示させる。また、情報送信部1122-1は、操作情報IINF-1gをゲーム装置10-2に送信する。なお、時刻T107では、ゲーム装置10-1から送信された操作情報IINF-1eがゲーム装置10-2に到達していないため、記憶領域1322-2内の位置P8に、操作情報IINF-1eは記憶されない。
時刻T108において、ゲーム装置10-2の記憶制御部113-2は、取得部111-2により取得された操作情報IINF-2hを記憶領域1321-2内の位置P8に記憶させる。なお、時刻T108におても、操作情報IINF-1eがゲーム装置10-2に到達していないため、記憶領域1322-2内の位置P8に、操作情報IINF-1eは記憶されない。すなわち、時刻T108では、操作情報IINF-2hに対応する操作情報IINF-1eは、記憶領域1322-2に記憶されていない。この場合、進行制御部114-2は、操作情報IINF-2hに対応する操作情報IINF-1eが記憶領域1322-2に記憶されるまで、ゲームの進行を待機する。このため、表示部31-2に表示される画像IMGは、更新されない。例えば、進行制御部114-1は、前のフレームF7-2の画像IMGgを、フレームF8-2の画像IMGとして表示部31-2に表示させる。
このように、更新タイミングに同期してゲームの状況を更新させることは、「ゲームの状況を変化させる」ことと「ゲームの状況を変化させずに維持する」こととを含む概念であってもよい。「ゲームの状況を変化させる」ことは、「ゲームを進行させる」ことの一例である。なお、ゲームを進行させた場合でも、例えば、ゲーム装置10-1の操作情報IINF-1とゲーム装置10-2の操作情報IINF-2との両方が、ユーザUの操作が実行されなかったことを示す場合、ゲームの状況は、変化せずに維持されることもある。
時刻T109において、ゲーム装置10-2の記憶制御部113-2は、取得部111-2により取得された操作情報IINF-2iを記憶領域1321-2内の位置P9に記憶させる。時刻T109におても、操作情報IINF-1eは、ゲーム装置10-2に到達していない。このため、表示部31-2に表示される画像IMGは、更新されない。操作情報IINF-1eは、例えば、図10に示す時刻T110にゲーム装置10-2に到達する。次に、図10を参照しつつ、図9の動作の続きを説明する。
図10は、図9の動作の続きを説明する説明図である。図7、図8及び図9で説明した動作と同様の動作については、詳細な説明を省略する。時刻T110、時刻T111及び時刻T112のゲーム装置10-1の動作は、処理対象の操作情報IINFを除いて、図8で説明した時刻T104のゲーム装置10-1の動作と同様である。このため、図10では、時刻T110、時刻T111及び時刻T112のゲーム装置10-2の動作を中心に説明する。
時刻T110において、ゲーム装置10-2の情報受信部1121-2は、ゲーム装置10-1から送信された操作情報IINF-1eを受信する。そして、記憶制御部113-2は、情報受信部1121-2により受信された操作情報IINF-1eを記憶領域1322-2内の位置P8に記憶させる。すなわち、時刻T110において、操作情報IINF-2hに対応する操作情報IINF-1eが記憶領域1322-2に記憶される。このため、進行制御部114-2は、記憶領域1321-2内の位置P8に記憶された操作情報IINF-2hと記憶領域1322-2内の位置P8に記憶された操作情報IINF-1eとの組に基づいて、ゲームを進行させる。そして、進行制御部114-2は、ゲームの進行の結果を示す画像IMGhを、フレームF10-2の画像IMGとして表示部31-2に表示させる。
また、記憶制御部113-2は、取得部111-2により取得された操作情報IINF-2jを記憶領域1321-2内の位置P10に記憶させる。情報送信部1122-2は、操作情報IINF-2jをゲーム装置10-1に送信する。
時刻T111及び時刻T112のゲーム装置10-2の動作は、処理対象の操作情報IINFを除いて、時刻T110のゲーム装置10-2の動作と同様である。なお、ゲームシステム1の動作は、図7乃至図10に示した例に限定されない。例えば、ゲーム装置10-2は、ゲームの進行を待機している場合、操作情報IINFのゲーム装置10-1への送信を待機してもよい。
図11は、ゲーム装置10の動作の一例を示すフローチャートである。図11に示す動作は、ゲームを進行させる更新タイミングに合わせて実行される。例えば、図11に示す動作は、更新タイミングの周期と同じ周期で繰り返し実行される。なお、図6で説明した動作に対応するステップについては、図6と同じ符号を付している。
先ず、ステップS100において、進行制御部114は、記憶領域1321に記憶されている情報と記憶領域1322に記憶されている情報との2つの情報に基づいてゲームを進行させるか否かを判定する。例えば、ユーザU1及びU2の操作に依存しないデモンストレーションの画面をゲーム装置10が表示部31に表示させる場合、ステップS100の判定の結果は、否定になる。ステップS100における判定の結果が肯定の場合、ゲーム制御部110は、ステップS160において、ゲーム進行処理を実行した後、処理をステップS190に進める。一方、ステップS100における判定の結果が否定の場合、進行制御部114は、処理をステップS192に進める。なお、ゲーム進行処理の詳細は、図12で説明する。以下では、2つの情報に基づいてゲームを進行させることを、入力同期モードと称する場合もある。
ステップS190において、進行制御部114は、ステップS160の処理によるゲームの進行の結果を示す画像IMGを表示部31に表示させる。
次に、ステップS192において、進行制御部114は、ゲームを終了させるか否かを判定する。例えば、進行制御部114は、ゲームの終了を指示する操作を示す操作情報IINFを取得部111が取得した場合、ゲームを終了させると判定する。ステップS192における判定の結果が肯定の場合、進行制御部114は、ゲームを終了させる。一方、ステップS192における判定の結果が否定の場合、進行制御部114は、処理をステップS100に戻し、ゲームを継続させる。次に、図12を参照しつつ、ステップS160のゲーム進行処理の一例を説明する。
図12は、ゲーム進行処理の一例を示すフローチャートである。なお、図12に示す動作は、図11に示したステップS160のゲーム進行処理の一例である。従って、ステップS162の処理は、図11のステップS100における判定の結果が肯定の場合に実行される。
先ず、ステップS162において、進行制御部114は、バッファ部132の状態を初期化するか否かを判定する。例えば、進行制御部114は、2つの情報に基づいてゲームを進行させる処理(入力同期モードによるゲーム進行処理)を開始する場合、バッファ部132の状態を初期化すると判定する。なお、野球ゲームでは、図2で説明したように、攻撃と守備とが交代する場合がある。攻撃と守備とが交代した場合、入力同期モードによるゲーム進行処理があらためて開始される場合がある。入力同期モードによるゲーム進行処理があらためて開始される場合、進行制御部114は、バッファ部132の状態を初期化すると判定する。
ステップS162における判定の結果が肯定の場合、進行制御部114は、処理をステップS164に進める。一方、ステップS162における判定の結果が否定の場合、進行制御部114は、処理をステップS166に進める。
ステップS164において、記憶制御部113は、ユーザUの操作に依存しない1又は複数の初期情報を記憶領域1321及び1322の一方に記憶させる初期化処理を実行する。例えば、記憶制御部113は、投手キャラクタCpt又は打者キャラクタCbtのうち何れをゲーム装置10が操作するかを示すイニング情報に基づいて、記憶領域1321及び1322のうち、1又は複数の初期情報を記憶させる記憶領域を決定する。具体的には、ゲーム装置10が投手キャラクタCptを動作させるために使用される場合、記憶制御部113は、1又は複数の初期情報を記憶領域1322に記憶させる。また、例えば、ゲーム装置10が打者キャラクタCbtを動作させるために使用される場合、記憶制御部113は、1又は複数の初期情報を記憶領域1321に記憶させる。記憶制御部113は、ステップS164の処理を実行した後、処理をステップS166に進める。
ステップS166において、取得部111は、操作部170に対して操作が実行されたか否かを判定する。ステップS166における判定の結果が肯定の場合、取得部111は、ステップS168において操作情報IINFを取得し、処理をステップS170に進める。一方、ステップS166における判定の結果が否定の場合、進行制御部114は、処理をステップS172に進める。
ステップS170において、記憶制御部113は、ユーザUが実行した操作の内容を示す操作情報IINFを、記憶領域1321に記憶させる。すなわち、記憶制御部113は、取得部111で取得された操作情報IINFを記憶領域1321に記憶させる。記憶制御部113は、ステップS170の処理を実行した後、処理をステップS174に進める。
ステップS172において、記憶制御部113は、ユーザUによる操作が実行されなかったことを示す操作情報IINF(以下、未操作を示す操作情報IINFとも称する)を、記憶領域1321に記憶させる。記憶制御部113は、ステップS170の処理を実行した後、処理をステップS174に進める。
ステップS174において、情報送信部1122は、取得部111で取得された操作情報IINF、又は、未操作を示す操作情報IINFを、他のゲーム装置10に送信する。例えば、情報送信部1122は、記憶領域1321に記憶されている操作情報を、他のゲーム装置10に送信する。
次に、ステップS176において、情報受信部1121は、他のゲーム装置10の操作情報IINFが通信部150に到達したか否かを判定する。ステップS176における判定の結果が肯定の場合、情報受信部1121は、ステップS178において他のゲーム装置10の操作情報IINFを受信し、処理をステップS180に進める。一方、ステップS176における判定の結果が否定の場合、情報受信部1121は、処理をステップS182に進める。ステップS180において、記憶制御部113は、情報受信部1121で受信された操作情報IINFを記憶領域1322に記憶し、処理をステップS182に進める。
ステップS182において、進行制御部114は、互いに対応する2つの情報が揃ったか否かを判定する。互いに対応する2つの情報は、例えば、ゲームの進行に必要な情報の組である。具体的には、守備側のゲーム装置10では、ゲームの進行に使用される操作情報IINFが記憶領域1321内の位置Pmに記憶されている場合、進行制御部114は、記憶領域1322内の位置Pmを参照する。そして、進行制御部114は、記憶領域1322内の位置Pmに初期情報又は操作情報IINFが記憶されている場合、互いに対応する2つの情報が揃ったと判定する。
ステップS182における判定の結果が肯定の場合、進行制御部114は、ステップS184の更新処理を実行して、今回の更新タイミングにおけるゲーム進行処理を終了する。一方、ステップS182における判定の結果が否定の場合、進行制御部114は、ステップS184の更新処理を実行することなく、今回の更新タイミングにおけるゲーム進行処理を終了する。すなわち、ステップS184の更新処理は、互いに対応する2つの情報(例えば、取得部111で取得された操作情報IINFと情報受信部1121で受信された操作情報IINFとの両方)が揃うまで実行されない。
ステップS184において、進行制御部114は、互いに対応する2つの情報に基づいて、ゲームの状況を更新して、ゲームを進行させる。例えば、進行制御部114は、初期化期間の終了後の第1期間では、初期情報と操作情報IINFとの組に基づいて、ゲームの状況を更新して、ゲームを進行させる。また、第1期間の終了後の第2期間では、進行制御部114は、取得部111で取得された操作情報IINFと情報受信部1121で受信された操作情報IINFとの組に基づいて、ゲームの状況を更新して、ゲームを進行させる。
なお、ゲーム装置10の動作は、図12に示す例に限定されない。例えば、ステップS174の処理は、ステップS170又はS172の処理の前に実行されてもよい。また、ステップS166-S174の一連の処理は、ステップS176-S180の一連の処理より後に実行されてもよいし、ステップS176-S180の一連の処理と並列に実行されてもよい。
[1.5.第1実施形態の結論]
以上において説明したように、第1実施形態によれば、記憶制御部113は、初期化期間において、ユーザUの操作に依存しない1又は複数の初期情報を記憶領域1321及び1322の一方に記憶させる初期化処理を実行する。
初期化期間に記憶領域1322に初期情報が記憶された場合、進行制御部114は、初期化期間の終了後の第1期間において、記憶領域1321に記憶されている操作情報IINF及び記憶領域1322に記憶されている初期情報に基づいてゲームを進行させる。このように、ゲーム装置10は、第1期間では、初期情報とゲーム装置10の操作情報IINFとの組に基づいてゲームを進行させる。このため、ゲーム装置10は、ゲーム装置10のユーザUによる操作(ゲーム装置10の操作情報IINFで示される操作)を、他のゲーム装置10からの操作情報IINFを受信する前に、ゲームの進行に反映させることができる。従って、ゲーム装置10は、ゲームの進行に初期情報を用いない従来のゲーム装置に比べて、操作の内容がゲームの進行に反映されるまでの遅延時間を短くすることができる。
なお、初期化期間に記憶領域1321に初期情報が記憶された場合、進行制御部114は、第1期間において、記憶領域1321に記憶されている初期情報及び記憶領域1322に記憶されている操作情報IINFに基づいてゲームを進行させる。この場合、ゲーム装置10のユーザUの対戦相手のユーザUが使用する他のゲーム装置10において、操作の内容がゲームの進行に反映されるまでの遅延時間を短くさせることができる。このように、第1実施形態では、オンラインの対戦型ゲームを実行する2つのゲーム装置の一方において、従来と比べて、より高いリアルタイム性を実現できる。
[1.6.第1実施形態の変形例]
以上の各形態は多様に変形され得る。具体的な変形の態様を以下に例示する。以下の例示から任意に選択される2以上の態様は、相互に矛盾しない範囲内で適宜に併合され得る。なお、以下に例示する変形例及び実施形態において作用や機能が第1実施形態と同等である要素については、以上の説明で参照済みの符号を流用して各々の詳細な説明を適宜に省略する。
[変形例1.1]
上述した第1実施形態では、情報送信部1122は、更新タイミング毎に操作情報IINFを他のゲーム装置10に送信するが、本発明はこのような態様に限定されるものではない。例えば、情報送信部1122は、ゲームが進行していない場合、図13に示すように、他のゲーム装置10への操作情報IINFの送信を待機してもよい。
図13は、変形例1.1におけるゲーム進行処理の一例を示すフローチャートである。なお、図13に示す動作は、ステップS173、S175及びS185が図12に示した動作に追加されることを除いて、図12に示した動作と同様である。このため、図13では、ステップS173、S175及びS185のそれぞれの処理を中心に説明する。
ステップS173は、ステップS170の処理が実行された後、又は、ステップS170の処理が実行された後に、実行される。例えば、情報送信部1122は、ステップS173において、送信フラグが“0”であるか否かを判定する。なお、送信フラグは、操作情報IINFを他のゲーム装置10に送信するか否かを示すフラグであり、初期値は“0”に設定されている。
ステップS173における判定の結果が肯定の場合、情報送信部1122は、ステップS174において、操作情報IINFを他のゲーム装置10に送信した後、処理をステップS175に進める。一方、ステップS173における判定の結果が否定の場合、情報送信部1122は、処理をステップS176に進める。すなわち、送信フラグが“1”の場合、今回の更新タイミングでは、操作情報IINFは、他のゲーム装置10に送信されない。
ステップS175において、情報送信部1122は、送信フラグを“1”に設定し、処理をステップS176に進める。
ステップS185は、ステップS184の更新処理が実行された後に、実行される。例えば、進行制御部114は、ステップS185において、送信フラグを“0”に設定し、今回の更新タイミングにおけるゲーム進行処理を終了する。このため、図13に示す動作では、例えば、ステップS184の更新処理が実行されなかった更新タイミングの次の更新タイミングの送信フラグは、“1”である。従って、ステップS184の更新処理が実行されなかった更新タイミングの次の更新タイミングでは、情報送信部1122は、操作情報IINFを他のゲーム装置10に送信しない。この変形例においても、上述した第1実施形態と同様の効果を得ることができる。
[変形例1.2]
上述した第1実施形態では、ユーザUの操作に依存しない1又は複数の初期情報が記憶領域1321及び1322の一方に記憶されるが、本発明はこのような態様に限定されるものではない。例えば、記憶制御部113は、記憶領域1321及び1322への操作情報IINFの書き込みをそれぞれのライトポインタを用いて制御し、記憶領域1321及び1322からの操作情報IINFの読み出しをリードポインタを用いて制御する場合、初期情報を記憶領域1321及び1322の一方に記憶させなくてもよい。具体的には、ゲーム装置10-1の記憶制御部113-1は、操作情報IINF-1及び操作情報IINF-2の書き込み位置をそれぞれのライトポインタで制御する場合、初期化期間において、2つのライトポインタの一方の初期値に1又は2以上のオフセットを持たせてもよい。この場合、ゲーム装置10-1の進行制御部114-1は、リードポインタがオフセットの値以下の場合、操作情報IINF-1及び操作情報IINF-2の一方(ライトポインタの初期値にオフセットがない方)に基づいて、ゲームを進行させてもよい。そして、進行制御部114-1は、リードポインタがオフセットの値より大きい場合、操作情報IINF-1と操作情報IINF-2との組に基づいて、ゲームを進行させてもよい。
すなわち、オフセットの値をα(αは1以上の自然数)とした場合、ゲーム装置10-1の進行制御部114-1は、バッファ部132-1の状態が初期化された後、操作情報IINF-1及び操作情報IINF-2の一方に基づいて、α回だけゲームを進行させてもよい。そして、進行制御部114-1は、α回だけゲームを進行させた後、操作情報IINF-1及び操作情報IINF-2に基づいてゲームを進行させてもよい。この変形例においても、上述した第1実施形態と同様の効果を得ることができる。
[変形例1.3]
上述した第1実施形態では、記憶制御部113は、初期化期間において、初期情報を記憶領域1321及び1322の一方に記憶させる初期化処理を実行するが、本発明はこのような態様に限定されるものではない。例えば、記憶制御部113は、初期化期間において、初期情報を記憶領域1321に記憶させる初期化処理を実行してもよい。あるいは、記憶制御部113は、初期化期間において、初期情報を記憶領域1322に記憶させる初期化処理を実行してもよい。この変形例においても、上述した第1実施形態と同様の効果を得ることができる。
[変形例1.4]
上述した第1実施形態において、記憶領域1321及び1322の一方に記憶される初期情報の数は、ゲーム毎に予め決められた個定数でもよいし、ゲーム中に可変に設定されてもよい。例えば、記憶領域1321及び1322の一方に記憶される初期情報の数は、ゲーム装置10と他のゲーム装置10との間の通信状況に応じて、決定されてもよい。ゲーム装置10と他のゲーム装置10との間の通信状況は、ゲーム装置10と他のゲーム装置10との間の通信にかかる時間、通信速度、通信遅延の有無又は通信遅延の程度等である。この変形例においても、上述した第1実施形態と同様の効果を得ることができる。さらに、この変形例では、記憶領域1321及び1322の一方に記憶される初期情報の数を、ゲーム装置10と他のゲーム装置10との間の通信状況に応じて適切に決定することができる。
[2.第2実施形態]
以下、本発明の第2実施形態を説明する。
[2.1.ゲームシステムの概要]
図14は、本発明の第2実施形態に係るゲームシステム1Aの概要を説明するための説明図である。図1乃至図13で説明した要素と同様の要素については、同様の符号を付し、詳細な説明を省略する。ゲームシステム1Aは、図1に示したゲーム装置10の代わりにゲーム装置10Aを有することを除いて、図1に示したゲームシステム1と同様である。
例えば、ゲームシステム1Aは、競技ゲームを実行可能な複数のゲーム装置10A(10A-1~10A-M)と、複数のゲーム装置10A(10A-1~10A-M)に対応して設けられた複数の表示装置30(30-1~30-M)とを有する(Mは2以上の自然数)。以下では、複数のゲーム装置10A-1~10A-Mのうち、m番目のゲーム装置10Aを、ゲーム装置10A-mと称する場合がある(mは、1≦m≦Mを満たす自然数)。次に、図15を参照しつつ、ゲーム装置10Aの構成について説明する。
[2.2.ゲーム装置の構成]
図15は、ゲーム装置10Aの構成の一例を示す機能ブロック図である。ゲーム装置10Aは、図3に示したゲーム制御部110の代わりにゲーム制御部110Aを有することを除いて、図3に示したゲーム装置10と同様である。例えば、ゲーム装置10Aは、ゲーム制御部110Aと、各種情報を記憶する記憶部130と、表示装置30及び他のゲーム装置10等の外部装置との間の通信を実行するための通信部150と、ゲーム装置10のユーザが操作情報を入力するためのゲームコントローラ等の操作部170と、光ディスク等の記録媒体から情報を読み込むための情報読込部190とを有する。
ゲーム制御部110Aは、ゲーム装置10Aの各部を制御する。さらに、ゲーム制御部110Aは、ゲーム装置10Aにおいて実行される野球ゲーム等の競技ゲームの進行を制御する。例えば、ゲーム制御部110Aは、取得部111、通信制御部112A、記憶制御部113及び進行制御部114Aを有する。すなわち、ゲーム制御部110Aは、図3に示した通信制御部112の代わりに通信制御部112Aを有し、図3に示した進行制御部114の代わりに進行制御部114Aを有する。ゲーム制御部110Aのその他の機能は、図3に示したゲーム制御部110と同様である。このため、図15では、通信制御部112A及び進行制御部114Aを中心に説明する。先ず、進行制御部114Aについて説明する。
進行制御部114Aは、取得部111により取得された操作情報IINFに基づいてゲームを進行させる結果同期モード(「第2進行モード」の一例)と、取得部111により取得された操作情報IINF及び他のゲーム装置10の操作情報IINFに基づいてゲームを進行させる入力同期モード(「第1進行モード」の一例)とにより、ゲームの進行を制御する。例えば、進行制御部114Aは、結果同期モードと入力同期モードとをゲームの状況に応じて切り替えて、ゲームを進行させる。なお、結果同期モードでは、他のゲーム装置10の操作情報IINF、すなわち、他のゲーム装置10のユーザUによる操作の内容を示す操作情報IINFは、ゲームの進行に用いられない。但し、結果同期モードでは、後述する他のゲーム装置10の結果情報に基づいてゲームを進行させる場合もある。
なお、入力同期モードによるゲームの進行は、図3に示した進行制御部114によるゲームの進行(例えば、図11に示したステップS160のゲーム進行処理)に対応する。すなわち、進行制御部114Aは、結果同期モードでゲームを進行させることができる点が図3に示した進行制御部114と相違する。進行制御部114Aのその他の動作は、図3に示した進行制御部114と同様である。
進行制御部114Aは、例えば、前処理部1141及び後処理部1142を有する。前処理部1141は、結果同期モードでは、取得部111により取得された操作情報IINFに基づいて、ゲームを進行させる。なお、結果同期モードでは、前処理部1141によるゲームの進行の結果を示す結果情報は、後述する情報送信部1122Aにより他のゲーム装置10に送信される。
また、入力同期モードでは、前処理部1141は、取得部111により取得された操作情報IINFと、後述する情報受信部1121Aで受信された操作情報IINF(他のゲーム装置10の操作情報IINF)との組に基づいて、ゲームを進行させる。入力同期モードでは、前処理部1141によるゲームの進行の結果は、他のゲーム装置10に通知されなくてもよい。
ここで、「結果情報」は、「結果同期モード」において更新されたゲームの状況を示す情報であってもよい。例えば、攻撃側のゲーム装置10に着目した場合、「結果情報」は、盗塁指示の内容を示す操作情報に基づいて決定された盗塁の開始を指示する盗塁情報であってもよい。また、例えば、守備側のゲーム装置10に着目した場合、「結果情報」は、投球指示の内容を示す操作情報に基づいて決定された“球種”及び“コース”等に従って投球する投手キャラクタCptの動作の開始を指示する投球情報であってもよい。
後処理部1142は、前処理部1141によるゲームの進行の結果に基づいて、ゲームを進行させる。また、結果同期モードでは、後処理部1142は、情報受信部1121Aが他のゲーム装置10の結果情報を受信した場合、他のゲーム装置10の結果情報に基づいて、ゲームを進行させる。他のゲーム装置10の結果情報は、例えば、他のゲーム装置10におけるゲームの進行の結果を示す結果情報である。従って、ゲーム装置10は、他のゲーム装置10の結果情報に基づいてゲームを進行させることにより、他のゲーム装置10のユーザによる操作をゲームの進行に反映させることができる。
ここで、「ゲームの進行を制御する」とは、ゲームを進行させる更新タイミングにおいて、ゲームの状況を更新する処理であってもよい。また、「ゲームの進行を制御する」とは、ゲームを進行させる更新タイミングにおいて、ゲームの状況を更新するか否かを決定する処理であってもよい。また、「ゲームの進行を制御する」とは、ゲームを進行させる更新タイミングにおいて、ゲームの状況を更新するか否かを決定し、ゲームの状況を更新する場合、更新後のゲームの状況を決定する処理であってもよい。
また、「結果同期モード」は、ゲームを進行させる更新タイミングにおいて、操作情報IINFが取得部111により取得されている場合に操作情報IINFに基づいてゲームの状況を更新し、結果情報が情報受信部1121Aにより受信されている場合に結果情報に基づいてゲームの状況を更新する進行モードであってもよい。また、「入力同期モード」は、ゲームを進行させる更新タイミングにおいて、2つのゲーム装置10の両方の操作情報が揃った場合に、両方の操作情報に基づいて、ゲームの状況を更新する進行モードであってもよい。
後処理部1142は、ゲームの進行の結果を示す画像IMGを表示部31に表示させる。例えば、後処理部1142は、結果同期モード又は入力同期モードにより更新されたゲームの状況に対応する画像IMGを表示部31に表示させる。次に、通信制御部112Aについて説明する。
通信制御部112Aは、図3に示した情報受信部1121の代わりに情報受信部1121Aを有し、図3に示した情報送信部1122の代わりに情報送信部1122Aを有する。通信制御部112Aのその他の機能は、図3に示した通信制御部112と同様である。情報受信部1121Aは、他のゲーム装置10の結果情報を通信部150を介して受信することを除いて、図3に示した情報受信部1121と同様である。
情報送信部1122Aは、進行制御部114Aが結果同期モードによりゲームを進行させる場合、進行制御部114Aにおけるゲームの進行の結果を示す結果情報を他のゲーム装置10に通信部150を介して送信する。なお、進行制御部114Aにおけるゲームの進行の結果を示す結果情報は、例えば、上述したように、前処理部1141によるゲームの進行の結果を示す結果情報である。情報送信部1122Aは、前処理部1141によるゲームの進行の結果を示す結果情報を他のゲーム装置10に送信することを除いて、図3に示した情報送信部1122と同様である。例えば、情報送信部1122Aは、進行制御部114Aが入力同期モードによりゲームを進行させる場合、取得部111により取得された操作情報IINFを、他のゲーム装置10に通信部150を介して送信する。なお、ゲーム装置10Aの構成は、図15に示す例に限定されない。また、ゲーム装置10Aのハードウェア構成は、図4に示したゲーム装置10のハードウェア構成と同様である。
[2.3.ゲーム装置の動作]
図16乃至図25を参照しつつ、ゲーム装置10Aの動作の一例を説明する。先ず、図16乃至図17を参照しつつ、結果同期モードの概要を説明する。
図16は、結果同期モードの概要を説明するための説明図である。なお、図16は、操作情報IINF(IINF-1、IINF-2)及び結果情報RINF(RINF-1、RINF-2)等の情報の流れを模式的に示している。操作情報IINF-1は、ゲーム装置10A-1のユーザU1による操作の内容を示す操作情報IINFであり、操作情報IINF-2は、ゲーム装置10A-2のユーザU2による操作の内容を示す操作情報IINFである。結果情報RINF-1は、ゲーム装置10A-1におけるゲームの進行の結果を示す結果情報RINFであり、結果情報RINF-2は、ゲーム装置10A-2におけるゲームの進行の結果を示す結果情報RINFである。また、画像データDIMG2(DIMG2-1、DIMG2-2)は、結果同期モードにおいて生成される画像データDIMGを示す。なお、画像データDIMG2-1は、表示部31-1に表示される画像IMGの画像データDIMG2であり、画像データDIMG2-2は、表示部31-2に表示される画像IMGの画像データDIMG2である。図16においても、情報の流れを分かり易くするために、記憶部130及び通信部150等の記載を省略している。
ゲーム装置10A-1に着目した場合、操作情報IINF-1は「第1操作情報」の一例であり、操作情報IINF-2は「第2操作情報」の一例である。また、ゲーム装置10A-2に着目した場合、操作情報IINF-2は「第1操作情報」の一例であり、操作情報IINF-1は「第2操作情報」の一例である。図16では、ゲーム装置10A-1のユーザU1が操作部170-1を操作した場合のゲーム装置10A-1及び10A-2の動作を中心にして、ユーザU1及びU1のそれぞれの操作がゲームの進行に反映されるまでの操作情報IINF等の流れを説明する。
先ず、ゲーム装置10A-1のユーザU1が操作部170-1を操作すると、取得部111-1は、ユーザU1による操作の内容を示す操作情報IINF-1を操作部170-1から取得する。なお、取得部111-1は、操作情報IINF-1を記憶部130等を介して操作部170-1から取得してもよい。そして、取得部111-1は、操作情報IINF-1を進行制御部114A-1の前処理部1141-1に出力する。
前処理部1141-1は、操作情報IINF-1に基づいてゲームを進行させる。そして、前処理部1141-1は、ゲームの進行の結果を示す結果情報RINF-1を、情報送信部1122A-1及び後処理部1142-1に出力する。例えば、前処理部1141-1は、操作情報IINF-1に基づいてゲームを進行させた場合のゲームの状況を決定し、決定したゲームの状況(すなわち、ゲームの進行の結果)を示す結果情報RINF-1を情報送信部1122A-1及び後処理部1142-1に出力する。情報送信部1122A-1は、結果情報RINF-1をゲーム装置10A-2に送信する。
後処理部1142-1は、結果情報RINF-1に基づいてゲームを進行させる。例えば、後処理部1142-1は、ゲームの状況が結果情報RINF-1で示される状況になるように、ゲームを進行させる。そして、後処理部1142-1は、表示部31-1に表示する画像IMGの画像データDIMG2-1をゲームの進行の結果に基づいて生成し、生成した画像データDIMG2-1を表示装置30-1に出力する。これにより、ユーザU1による操作に応じて更新された画像IMGが表示部31-1に表示される。
また、ゲーム装置10A-1では、ゲーム装置10A-2が結果情報RINF-2を送信すると、情報受信部1121A-1が結果情報RINF-2を受信する。そして、情報受信部1121A-1は、結果情報RINF-2を進行制御部114A-1の後処理部1142-1に出力する。なお、結果情報RINF-2は、例えば、ゲーム装置10A-2の前処理部1141-2が操作情報IINF-2に基づいてゲームを進行させた場合に、ゲーム装置10A-2からゲーム装置10A-1に送信される。
後処理部1142-1は、結果情報RINF-2に基づいてゲームを進行させる。そして、後処理部1142-1は、表示部31-1に表示する画像IMGの画像データDIMG2-1をゲームの進行の結果に基づいて生成し、生成した画像データDIMG2-1を表示装置30-1に出力する。これにより、ユーザU2による操作に応じて更新された画像IMGが表示部31-1に表示される。
なお、操作情報IINF(IINF-1、IINF-2)及び結果情報RINF(RINF-1、RINF-2)等の情報の転送は、記憶部130等を介して実行されてもよい。ゲーム装置10A-2の動作は、上述の説明において、ゲーム装置10A等の符号の末尾の数字(ハイフンの後の数字)“1”及び“2”を互いに入れ替えることで説明される。次に、図17を参照しつつ、ゲーム装置10A-1及び10A-2の結果同期モードにおける動作を説明する。
図17は、ゲームシステム1Aの結果同期モードにおける動作の一例を示すシーケンスチャートである。図17においても、図6と同様に、複数の操作情報IINF-1を互いに区別するために、符号の末尾に小文字のアルファベット(a、b、c、d)を付している。同様に、複数の操作情報IINF-2を互いに区別するために、符号の末尾に小文字のアルファベット(a、b、c、d)を付している。また、図17に示した操作情報取得(S114、S214)は、取得部111により実行される処理であり、前処理(S116、S216)は、前処理部1141により実行される処理であり、後処理(S122、S222)は、後処理部1142により実行される処理である。
また、図17に示した時刻T53、T63、T73、T83及びT93の間隔は、ゲーム装置10A-1におけるゲームの更新タイミングの周期に対応し、時刻T54、T64、T74、T84及びT94の間隔は、ゲーム装置10A-2におけるゲームの更新タイミングの周期に対応している。図17に示す例では、ゲーム装置10A-2においてゲームが更新される時刻は、ゲーム装置10A-1においてゲームが更新される時刻より後の時刻である。なお、ゲーム装置10A-2においてゲームが更新される時刻は、ゲーム装置10A-1においてゲームが更新される時刻より前の時刻でもよいし、ゲーム装置10A-1においてゲームが更新される時刻と同じ時刻でもよい。
図17では、操作情報IINF-1cで示される操作がゲーム装置10A-2におけるゲームの進行に反映される操作であり、操作情報IINF-2bで示される操作がゲーム装置10A-1におけるゲームの進行に反映される操作である場合について説明する。すなわち、操作情報IINF-1a、IINF-1b及びIINF-1dのそれぞれで示される操作は、ゲーム装置10A-2に反映する必要のない操作である。また、操作情報IINF-2a、IINF-2c及びIINF-2dのそれぞれで示される操作は、ゲーム装置10A-1に反映する必要のない操作である。
先ず、時刻T51において、ゲーム装置10A-1の取得部111-1は、操作情報IINF-1aを取得する(S114)。そして、時刻T53において、前処理部1141-1が、操作情報IINF-1aに基づいてゲームを進行させる(S116)。また、時刻T55において、後処理部1142-1が、前処理部1141-1によるゲームの進行の結果に基づいてゲームを進行させる(S122)。これにより、ゲーム装置10A-1では、ゲームの状況が、操作情報IINF-1aに応じた状況に更新される。
また、時刻T52において、ゲーム装置10A-2の取得部111-2は、操作情報IINF-2aを取得する(S214)。そして、時刻T54において、前処理部1141-2が、操作情報IINF-2aに基づいてゲームを進行させる(S216)。また、時刻T56において、後処理部1142-2が、前処理部1141-2によるゲームの進行の結果に基づいてゲームを進行させる(S222)。これにより、ゲーム装置10A-2では、ゲームの状況が、操作情報IINF-2aに応じた状況に更新される。
時刻T61、T63及びT65におけるゲーム装置10A-1の動作は、操作情報IINF-1aの代わりに操作情報IINF-1bが取得されることを除いて、時刻T51、T53及びT55におけるゲーム装置10A-1の動作と同様である。
時刻T62、T64及びT66におけるゲーム装置10A-2の動作は、操作情報IINF-2aの代わりに操作情報IINF-2bが取得されることを除いて、時刻T52、T54及びT56におけるゲーム装置10A-2の動作と同様である。但し、操作情報IINF-2bで示される操作は、ゲーム装置10A-1におけるゲームの進行に反映される操作である。このため、時刻T64において、前処理部1141-2が操作情報IINF-2bに基づいてゲームを進行させると(S216)、情報送信部1122A-2は、ゲームの進行の結果を示す結果情報RINF-2をゲーム装置10A-1に送信する(S218)。
そして、時刻T71において、ゲーム装置10A-1の情報受信部1121A-1は、結果情報RINF-2を受信する(S132)。これにより、時刻T73において、後処理部1142-1が、結果情報RINF-2に基づいてゲームを進行させる(S136)。この結果、ゲーム装置10A-1においても、ゲームの状況は、操作情報IINF-2bに応じた状況に更新される。すなわち、ゲーム装置10A-1では、時刻T65において、操作情報IINF-1bに応じて更新されたゲームの状況に対応する画像IMGが表示部31-1に表示され、時刻T73において、操作情報IINF-2bに応じて更新されたゲームの状況に対応する画像IMGが表示部31-1に表示される。
時刻T72、T74及びT76におけるゲーム装置10A-2の動作は、操作情報IINF-2aの代わりに操作情報IINF-2cが取得されることを除いて、時刻T52、T54及びT56におけるゲーム装置10A-2の動作と同様である。
時刻T81、T83及びT85におけるゲーム装置10A-1の動作は、操作情報IINF-1aの代わりに操作情報IINF-1cが取得されることを除いて、時刻T51、T53及びT55におけるゲーム装置10A-1の動作と同様である。但し、操作情報IINF-1cで示される操作は、ゲーム装置10A-2におけるゲームの進行に反映される操作である。このため、時刻T83において、前処理部1141-1が操作情報IINF-1cに基づいてゲームを進行させると(S116)、情報送信部1122A-1は、ゲームの進行の結果を示す結果情報RINF-1をゲーム装置10A-2に送信する(S118)。
そして、時刻T90において、ゲーム装置10A-2の情報受信部1121A-2は、結果情報RINF-1を受信する(S232)。これにより、時刻T94において、後処理部1142-2が、結果情報RINF-1に基づいてゲームを進行させる(S236)。この結果、ゲーム装置10A-2においても、ゲームの状況は、操作情報IINF-1cに応じた状況に更新される。すなわち、ゲーム装置10A-2では、時刻T86において、操作情報IINF-2dに応じて更新されたゲームの状況に対応する画像IMGが表示部31-2に表示され、時刻T94において、操作情報IINF-1cに応じて更新されたゲームの状況に対応する画像IMGが表示部31-2に表示される。
時刻T91、T93及びT95におけるゲーム装置10A-1の動作は、操作情報IINF-1aの代わりに操作情報IINF-1dが取得されることを除いて、時刻T51、T53及びT55におけるゲーム装置10A-1の動作と同様である。図17に示したように、結果同期モードでは、他のゲーム装置10Aの操作情報IINFは、ゲームの進行に使用されない。このため、結果同期モードでは、他のゲーム装置10Aの操作情報IINFをゲームの進行に使用する入力同期モードに比べて、取得部111が操作情報IINFを取得してから表示部31に表示される画像IMGが更新されるまでの遅延を小さくすることができる。
なお、ゲームシステム1Aの結果同期モードにおける動作は、図17に示す例に限定されない。例えば、進行制御部114Aは、更新タイミングにおいて、取得部111により取得された操作情報IINFと情報受信部1121Aにより受信された結果情報RINFとの両方に基づいてゲームを進行させてもよい。また、例えば、ゲーム装置10A-1において、ゲーム装置10A-2に反映する必要のない操作の内容を示す操作情報IINF-1に基づいてゲームが進行される場合、後処理部1142-1の処理(例えば、画像データDIMG2-1の生成等)を前処理部1141-1が実行してもよい。
ゲームシステム1Aの入力同期モードにおける動作は、図1に示したゲームシステム1の動作(例えば、図5及び図6で説明した動作)と同様である。例えば、進行制御部114A-1は、入力同期モードでゲームを進行させる場合、初期化期間の終了後の第1期間において、操作情報IINF-1及びIINF-2の一方と初期情報とに基づいてゲームの状況を更新する。そして、進行制御部114A-1は、第1期間の終了後の第2期間において、操作情報IINF-1及びIINF-2の組に基づいてゲームの状況を更新する。同様に、進行制御部114A-2は、入力同期モードでゲームを進行させる場合、初期化期間の終了後の第1期間において、操作情報IINF-1及びIINF-2の一方と初期情報とに基づいてゲームの状況を更新する。そして、進行制御部114A-2は、第1期間の終了後の第2期間において、操作情報IINF-1及びIINF-2の組に基づいてゲームの状況を更新する。このため、入力同期モードでは、ゲーム装置10A-1のゲームの状況とゲーム装置10A-2のゲームの状況とが揃っている。
なお、図17に示した結果同期モードでは、例えば、時刻T73において、ゲーム装置10A-1のゲームの状況が操作情報IINF-2bに応じた状況に更新される。しかし、時刻T61から時刻T65までの期間におけるゲーム装置10A-1のゲームの状況と、時刻T52から時刻T56までの期間におけるゲーム装置10A-2のゲームの状況とが、互いに一致するとは限らない。このため、結果同期モードは、キャラクタ及びオブジェクト等の位置及び状態(ゲームの状況)がゲーム装置10A-1及び10A-2で揃っていることが前提のイベントを実行するのに適していない。
これに対し、入力同期モードでは、上述したように、ゲーム装置10A-1のゲームの状況とゲーム装置10A-2のゲームの状況とが揃っている。このため、入力同期モードは、キャラクタ及びオブジェクト等の位置及び状態がゲーム装置10A-1及び10A-2で揃っていることが前提のイベントを実行するのに適している。ここで、例えば、ゲーム装置10Aが実行するゲームが野球ゲームの場合、キャラクタ及びオブジェクト等の位置及び状態がゲーム装置10A-1及び10A-2で揃っていることが前提のイベントとしては、投球前に実行される盗塁を投球前に阻止するイベントが該当する。
また、入力同期モードでは、ゲーム装置10A-1及び10A-2の各々は、ゲーム装置10A-1及び10A-2の両方の操作情報IINF-1及びIINF-2が揃った場合に、ゲームを進行させる。換言すれば、ゲーム装置10A-1及び10A-2の各々は、ゲーム装置10A-1及び10A-2の両方の操作情報IINF-1及びIINF-2が揃うまで、ゲームの進行を待機する。このため、入力同期モードでゲームを進行させる場合のゲーム装置10A-1におけるゲームの進行とゲーム装置10A-2におけるゲームの進行との相違の程度は、結果同期モードでゲームを進行させる場合のゲーム装置10A-1におけるゲームの進行とゲーム装置10A-2におけるゲームの進行との相違の程度以下になる。次に、図18を参照しつつ、ゲームシステム1Aが野球ゲームを実行する場合のゲーム装置10A-1及び10A-2の動作を説明する。なお、以下では、盗塁が試みられる場面を中心に例示にして、ゲーム装置10Aの動作等を説明し、野球ゲーム全般の詳細な説明は省略する。
図18は、野球ゲームを実行するゲームシステム1Aの動作の一例を示すシーケンスチャートである。なお、図18は、ゲーム装置10A-1のユーザU1が打者キャラクタCbtを操作し、ゲーム装置10A-2のユーザU2が投手キャラクタCptを操作する場合におけるゲーム装置10A-1及び10A-2の動作の一例を示すシーケンスチャートである。図18に示す例では、ゲーム装置10A-1及び10A-2は、投手キャラクタCptが投球してから打者キャラクタCbtがボールオブジェクトOblを打つまでのゲームの状況を、結果同期モードで進行させる。なお、図17で説明した動作に対応するステップについては、図17と同じ符号を付している。
先ず、時刻T220において、ゲーム装置10A-2の取得部111-2が投球指示を示す操作情報IINF-2を取得すると、進行制御部114A-2の前処理部1141-2は、“球種”及び“コース”等の投球内容を操作情報IINF-2に基づいて決定する(S216)。そして、情報送信部1122A-2は、操作情報IINF-2に基づいて決定した投球内容に従って投球する投手キャラクタCptの動作の開始を指示する投球情報を、結果情報RINF-2としてゲーム装置10A-1に送信する(S218)。なお、投球内容を決定する処理は、ゲームを進行させる処理に対応する。以下では、投球情報を、結果情報RINF-2と同じ符号を用いて、投球情報RINF-2と称する場合もある。
時刻T221において、ゲーム装置10A-1の情報受信部1121A-1は、投球情報RINF-2を受信する(S132)。そして、情報送信部1122A-1は、投球情報RINF-2に基づいてゲームを進行させることを示す肯定応答を、ゲーム装置10A-2に送信する(S134)。また、進行制御部114A-1の後処理部1142-1は、投球情報RINF-2に基づいてゲームを進行させる。
時刻T223において、ゲーム装置10A-1の進行制御部114A-1は、投球情報RINF-2に基づいて更新されたゲームの状況を示す投球画面を、表示部31-1に表示させる(S190)。これにより、操作情報IINF-2に基づいて決定された投球内容に従って投球する投手キャラクタCptが、表示部31-1に表示される。
時刻T224において、ゲーム装置10A-2の情報受信部1121A-2は、投球情報RINF-2に対する肯定応答を受信する(S226)。これにより、進行制御部114A-2の後処理部1142-2は、投球情報RINF-2に基づいてゲームを進行させる。例えば、後処理部1142-2は、投手キャラクタCptに投球情報RINF-2に基づく投球を開始させる。
時刻T226において、ゲーム装置10A-2の進行制御部114A-2は、投球情報RINF-2に基づいて更新されたゲームの状況を示す投球画面を、表示部31-2に表示させる(S290)。これにより、操作情報IINF-2に基づいて決定された投球内容に従って投球する投手キャラクタCptが、表示部31-2に表示される。
時刻T241において、ゲーム装置10A-1の取得部111-1が打撃指示を示す操作情報IINF-1を取得すると、進行制御部114A-1の前処理部1141-1は、打者キャラクタCbtによる打撃の結果を操作情報IINF-1に基づいて決定する(S116)。そして、情報送信部1122A-1は、操作情報IINF-1に基づいて決定された打撃の結果を示す打撃情報を、結果情報RINF-1としてゲーム装置10A-2に送信する(S118)。なお、打撃の結果を決定する処理は、ゲームを進行させる処理に対応する。以下では、打撃情報を、結果情報RINF-1と同じ符号を用いて、打撃情報RINF-1と称する場合もある。
時刻T243において、ゲーム装置10A-1の進行制御部114A-1は、打撃情報RINF-1に基づいて更新されたゲームの状況を示す打撃画面を、表示部31-1に表示させる(S190)。これにより、操作情報IINF-1に基づく打撃を実行する打者キャラクタCbtが、表示部31-1に表示される。
時刻T244において、ゲーム装置10A-2の情報受信部1121A-2は、打撃情報RINF-1を受信する(S232)。これにより、進行制御部114A-2の後処理部1142-2は、打撃情報RINF-1に基づいてゲームを進行させる。
時刻T246において、ゲーム装置10A-2の進行制御部114A-2は、打撃情報RINF-1に基づいて更新されたゲームの状況を示す打撃画面を、表示部31-2に表示させる(S290)。これにより、操作情報IINF-1に基づく打撃を実行する打者キャラクタCbtが、表示部31-2に表示される。次に、図19を参照しつつ、盗塁指示が実行される場合のゲーム装置10A-1及び10A-2の動作を説明する。
図19は、野球ゲームを実行するゲームシステム1Aの動作の別の例を示すシーケンスチャートである。図19に示す動作は、盗塁指示が実行されることを除いて、図18に示した動作と同様である。図18で説明した動作については、詳細な説明を省略する。なお、図19に示す例では、ユーザU1による盗塁指示は、表示部31-1に表示される投手キャラクタCptが投球を開始する前に入力される。
先ず、時刻T211において、ゲーム装置10A-1の取得部111-1が盗塁指示を示す操作情報IINF-1を取得すると、進行制御部114A-1の前処理部1141-1は、走者キャラクタCrnが盗塁を開始するように、操作情報IINF-1に基づいてゲームを進行させる(S116)。そして、情報送信部1122A-1は、操作情報IINF-1に基づく盗塁が開始されることを示す盗塁情報を、結果情報RINF-1としてゲーム装置10A-2に送信する(S118)。また、進行制御部114A-1は、盗塁指示を示す操作情報IINF-1を取得部111-1が取得したことを契機にして、経過時間の計測を開始する。以下では、盗塁情報を、結果情報RINF-1と同じ符号を用いて、盗塁情報RINF-1と称する場合もある。
時刻T212において、ゲーム装置10A-2の情報受信部1121A-2は、盗塁情報RINF-1を受信する(S232)。そして、時刻T214において、進行制御部114A-2の後処理部1142-2は、盗塁情報RINF-1に基づいてゲームを進行させる。例えば、進行制御部114A-2は、盗塁情報RINF-1に基づいて更新されたゲームの状況を示す走者画面を、表示部31-2に表示させる(S290)。これにより、操作情報IINF-1に基づく盗塁を実行する走者キャラクタCrnを含むウィンドウWDと投球前の投手キャラクタCptとが、表示部31-2に表示される。ユーザU2は、ウィンドウWDを確認することにより、走者キャラクタCrnが盗塁を開始したことを認識できる。
なお、図19では、ユーザU2は、盗塁に気付かず、又は、盗塁に気づいているものの盗塁を試みる走者への牽制をせずに、投手キャラクタCptに投球させる場合について説明する。
時刻T220において、取得部111-2が投球指示を示す操作情報IINF-2を取得すると、前処理部1141-2は、投球内容を操作情報IINF-2に基づいて決定する(S216)。そして、情報送信部1122A-2は、投球情報RINF-2をゲーム装置10A-1に送信する(S218)。
時刻T221において、ゲーム装置10A-1の情報受信部1121A-1は、投球情報RINF-2を受信する(S132)。図19に示す例では、進行制御部114A-1が経過時間の計測を開始した時刻T211から、情報受信部1121A-1が投球情報RINF-2を受信した時刻T221までの時間は、切替待機時間WTより短い。すなわち、情報受信部1121A-1は、取得部111-1による操作情報IINF-1の取得タイミングである時刻T211から、切替待機時間WTが経過するまでに、投球情報RINF-2を受信する。このため、進行制御部114A-1は、結果同期モードによるゲームの進行を継続させる。例えば、情報送信部1122A-1は、投球情報RINF-2に基づいてゲームを進行させることを示す肯定応答を、ゲーム装置10A-2に送信する(S134)。
図19に示す例では、結果同期モードによるゲームの進行が継続するため、時刻T220以降のゲーム装置10A-1及び10A-2の動作は、図18に示したゲーム装置10A-1及び10A-2の動作と同様である。すなわち、図19に示す例では、盗塁を阻止するイベントは、投球前には発生しない。次に、図20を参照しつつ、ゲームの進行が結果同期モードから入力同期モードに切り替わる場合のゲーム装置10A-1及び10A-2の動作を説明する。
図20は、野球ゲームを実行するゲームシステム1Aの動作の別の例を示すシーケンスチャートである。図20に示す動作は、ゲームの進行が結果同期モードから入力同期モードに切り替わることを除いて、図19に示した動作と同様である。図19で説明した動作については、詳細な説明を省略する。
時刻T311、T312及びT314におけるゲーム装置10A-1及び10A-2の一連の動作は、図19に示した時刻T211、T212及びT214におけるゲーム装置10A-1及び10A-2の一連の動作と同様である。例えば、時刻T314において、ゲーム装置10A-2の進行制御部114A-2は、盗塁情報RINF-1に基づいて更新されたゲームの状況を示す走者画面を、表示部31-2に表示させる(S290)。
時刻T320において、ゲーム装置10A-2の取得部111-2が投球指示を示す操作情報IINF-2を取得すると、前処理部1141-2は、投球内容を操作情報IINF-2に基づいて決定する(S216)。そして、情報送信部1122A-2は、投球情報RINF-2をゲーム装置10A-1に送信する(S218)。
ゲーム装置10A-2から送信された投球情報RINF-2は、時刻T323にゲーム装置10A-1に到達する。なお、時刻T323は、ゲーム装置10A-1の取得部111-1による操作情報IINF-1の取得タイミングである時刻T311から、切替待機時間WTが経過した時刻T321より後の時刻である。
このため、進行制御部114A-1は、時刻T311から切替待機時間WTが経過した時刻T321において、ゲームの進行を結果同期モードから入力同期モードに切り替える(S1402)。すなわち、進行制御部114A-1は、取得部111-1による操作情報IINF-1の取得タイミングから切替待機時間WTが経過するまでに情報受信部1121A-1が投球情報RINF-2を受信しない場合、ゲームの進行を結果同期モードから入力同期モードに切り替える。ゲームの進行が結果同期モードから入力同期モードに切り替わったため、進行制御部114A-1は、例えば、ゲームに係る仮想空間を俯瞰した画像を表示部31-1に表示させる。また、情報送信部1122A-1は、ゲームの進行を結果同期モードから入力同期モードに切り替えることを、ゲーム装置10A-2に通知する(S1404)。
なお、時刻T321においてゲームの進行が結果同期モードから入力同期モードに切り替わったため、記憶制御部113-1は、時刻T321の後の時刻における初期化期間に、初期情報を記憶領域1321-1に記憶させる初期化処理を実行する。
時刻T323において、情報受信部1121A-1は、上述したように、投球情報RINF-2を受信する(S132)。ゲーム装置10A-1は、既に入力同期モードでゲームを進行させているため、投球情報RINF-2に基づくゲームの進行を取り消すことをゲーム装置10A-2に通知する。例えば、情報送信部1122A-1は、投球情報RINF-2に対する否定応答をゲーム装置10A-2に送信する(S1864)。
時刻T324において、ゲーム装置10A-2の情報受信部1121A-2は、ゲームの進行を結果同期モードから入力同期モードに切り替えることを示す切替通知を受信する。これにより、進行制御部114A-2は、ゲームの進行を結果同期モードから入力同期モードに切り替える(S2402)。進行制御部114A-2がゲームの進行を結果同期モードから入力同期モードに切り替えたことにより、進行制御部114A-2は、例えば、ゲームに係る仮想空間を俯瞰した画像を表示部31-2に表示させる。
なお、時刻T324においてゲームの進行が結果同期モードから入力同期モードに切り替わったため、記憶制御部113-2は、時刻T324の後の時刻における初期化期間に、初期情報を記憶領域1322-2に記憶させる初期化処理を実行する。
時刻T326において、ゲーム装置10A-2の情報受信部1121A-2は、投球情報RINF-2に対する否定応答を受信する(S2868)。これにより、進行制御部114A-2は、時刻T328において、投球情報RINF-2に基づく投球を取り消す(S2870)。すなわち、進行制御部114A-2は、投球情報RINF-2に基づいてゲームを進行させることを取り消す。
ゲームの進行が結果同期モードから入力同期モードに切り替わることにより、走者キャラクタCrn、投手キャラクタCpt及びボールオブジェクトObl等の位置及び状態がゲーム装置10A-1とゲーム装置10A-2とで揃う。これにより、ゲーム装置10A-1のユーザU1は、盗塁による進塁を行うか進塁を止めるかを、投手キャラクタCptの状態を見て判断することができる。一方、ゲーム装置10A-2のユーザU2は、投手キャラクタCptによるボールオブジェクトOblの送球先を、走者キャラクタCrnの状態を見て決定することができる。次に、図21を参照しつつ、ゲーム装置10Aの動作フローを説明する。
図21は、ゲーム装置10Aの動作の一例を示すフローチャートである。図21に示す動作は、ゲームを進行させる更新タイミングに合わせて実行される。例えば、図21に示す動作は、更新タイミングの周期と同じ周期で繰り返し実行される。なお、図18で説明した動作に対応するステップについては、図18と同じ符号を付している。
先ず、ステップS101において、進行制御部114Aは、結果同期モードでゲームを進行させているか否かを判定する。ステップS101における判定の結果が肯定の場合、進行制御部114Aは、ステップS110において、結果同期モードによるゲーム進行処理を実行した後、処理をステップS190に進める。なお、結果同期モードによるゲーム進行処理の詳細は、図22及び図23で説明する。一方、ステップS101における判定の結果が否定の場合、進行制御部114Aは、ステップS160において、処理をステップS102に進める。
ステップS102において、進行制御部114Aは、入力同期モードでゲームを進行させるか否かを判定する。なお、ステップS102の判定は、図11に示したステップS100の判定に対応する。ステップS101における判定の結果が肯定の場合、進行制御部114Aは、ステップS160Aにおいて、ゲーム進行処理を実行した後、処理をステップS190に進める。一方、ステップS102における判定の結果が否定の場合、進行制御部114Aは、処理をステップS192に進める。なお、入力同期モードによるゲーム進行処理の詳細は、図24及び図25で説明する。
ステップS190において、進行制御部114Aは、ステップS110又はステップS160Aの処理によるゲームの進行の結果を示す画像IMGを表示部31に表示させる。
次に、ステップS192において、進行制御部114Aは、ゲームを終了させるか否かを判定する。ステップS192における判定の結果が肯定の場合、進行制御部114Aは、ゲームを終了させる。一方、ステップS192における判定の結果が否定の場合、進行制御部114Aは、処理をステップS101に戻し、ゲームを継続させる。次に、図22及び図23を参照しつつ、結果同期モードによるゲーム進行処理を説明する。
図22は、結果同期モードによるゲーム進行処理の一例を示すフローチャートである。なお、図22のステップS112の処理は、図21のステップS101における判定の結果が肯定の場合に実行される。すなわち、図22に示す動作は、結果同期モードが継続している期間では、更新タイミングの周期と同じ周期で繰り返し実行される。なお、ステップS114-S122の一連の処理は、取得部111により取得される操作情報IINFに応じた処理の一例である。また、ステップS124-S128の一連の処理は、他のゲーム装置10Aに送信した結果情報RINFに対する肯定応答に応じた処理の一例である。ステップS132-S136の一連の処理は、情報受信部1121Aにより受信される結果情報RINFに応じた処理の一例である。
ステップS112において、取得部111は、操作部170に対して操作が実行されたか否かを判定する。ステップS112における判定の結果が肯定の場合、すなわち、操作部170に対して操作が実行された場合、取得部111は、ステップS114において操作情報IINFを取得し、処理をステップS116に進める。一方、ステップS112における判定の結果が否定の場合、すなわち、操作部170に対して操作が実行されていない場合、進行制御部114Aは、処理をステップS124に進める。すなわち、操作部170に対して操作が実行されていない場合、ステップS114-S122の一連の処理は、実行されない。
ステップS116において、進行制御部114Aの前処理部1141は、取得部111で取得された操作情報IINFに基づいて前処理を実行し、ゲームを進行させる。そして、進行制御部114Aは、処理をステップS118に進める。
ステップS118において、情報送信部1122Aは、ステップS116の前処理の結果を示す結果情報RINFを他のゲーム装置10Aに通信部150を介して送信し、処理をステップS120に進める。
なお、ステップS114で取得された操作情報IINFで示される操作が他のゲーム装置10Aにおけるゲームの進行に反映する必要のない操作である場合、ステップS118の処理は、省かれてもよい。すなわち、取得部111で取得された操作情報IINFで示される操作が他のゲーム装置10Aにおけるゲームの進行に反映する必要のない操作である場合、他のゲーム装置10Aへの結果情報RINFの送信は、省かれてもよい。
ステップS120において、進行制御部114Aの後処理部1142は、ステップS116の前処理の結果に基づく後処理が、肯定応答待ちか否かを判定する。なお、肯定応答待ちの後処理とは、例えば、ステップS118で送信された結果情報RINFに対する他のゲーム装置10Aからの肯定応答を情報受信部1121Aが受信するまで待機される後処理である。従って、例えば、ステップS116の前処理の結果に基づく後処理がステップS118で送信した結果情報RINFに対する他のゲーム装置10Aからの応答によって実行するか否かが決まる後処理である場合、後処理部1142は、肯定応答待ちと判定する。
また、例えば、ステップS116の前処理の結果に基づく後処理が他のゲーム装置10Aのゲームの状況等に関係なく実行される処理である場合、後処理部1142は、肯定応答待ちでないと判定する。ステップS120における判定の結果が肯定の場合、すなわち、肯定応答を情報受信部1121Aが受信するまで後処理の実行が待機される場合、後処理部1142は、処理をステップS124に進める。一方、ステップS120における判定の結果が否定の場合、すなわち、他のゲーム装置10Aのゲームの状況等に関係なく後処理が実行される場合、後処理部1142は、処理をステップS122に進める。
ステップS122において、進行制御部114Aの後処理部1142は、ステップS116の前処理の結果に基づいて後処理を実行し、ゲームを進行させる。これにより、ゲームの状況が、ステップS114で取得された操作情報IINFに応じた状況に更新される。進行制御部114Aは、後処理を実行した後、処理をステップS130に進める。ステップS130以降の動作を説明する前に、ステップS124-S128の一連の処理を説明する。上述したように、ステップS124の処理は、ステップS112における判定の結果が否定の場合、又は、ステップS120における判定の結果が肯定の場合、実行される。
ステップS124において、情報受信部1121Aは、他のゲーム装置10Aに送信した結果情報RINFに対する肯定応答が通信部150に到達したか否かを判定する。ステップS126における判定の結果が肯定の場合、すなわち、肯定応答が通信部150に到達した場合、情報受信部1121Aは、処理をステップS126に進める。一方、ステップS126における判定の結果が否定の場合、すなわち、肯定応答が通信部150に到達していない場合、情報受信部1121Aは、処理をステップS130に進める。すなわち、肯定応答が通信部150に到達していない場合、ステップS126及びS128の処理は、実行されない。
ステップS126において、情報受信部1121Aは、結果情報RINFに対する肯定応答を受信し、処理をステップS128に進める。ステップS128において、進行制御部114Aの後処理部1142は、肯定応答に対応する結果情報RINFに基づいて後処理を実行し、ゲームを進行させる。すなわち、進行制御部114Aの後処理部1142は、肯定応答を受信するまで待機していた後処理を実行する。これにより、ゲームの状況が、取得部111で取得された操作情報IINFに応じた状況に更新される。進行制御部114Aは、後処理を実行した後、処理をステップS130に進める。
ステップS130において、情報受信部1121Aは、他のゲーム装置10Aの結果情報RINFが通信部150に到達したか否かを判定する。ステップS130における判定の結果が肯定の場合、すなわち、他のゲーム装置10Aの結果情報RINFが通信部150に到達した場合、情報受信部1121Aは、処理をステップS132に進める。一方、ステップS130における判定の結果が否定の場合、すなわち、他のゲーム装置10Aの結果情報RINFが通信部150に到達していない場合、情報受信部1121Aは、処理をステップS140に進める。すなわち、他のゲーム装置10Aの結果情報RINFが通信部150に到達していない場合、ステップS132-S136の一連の処理は、実行されない。
ステップS132において、情報受信部1121Aは、他のゲーム装置10Aで実行された前処理の結果を示す結果情報RINFを受信し、処理をステップS134に進める。ステップS134において、情報送信部1122Aは、情報受信部1121Aで受信された結果情報RINFに対する肯定応答を、他のゲーム装置10Aに送信する。なお、情報送信部1122Aは、進行制御部114Aの後処理部1142が結果情報RINFに基づく後処理を実行しない場合は、肯定応答の代わりに、否定応答を他のゲーム装置10Aに送信してもよい。
次に、ステップS136において、進行制御部114Aの後処理部1142は、情報受信部1121Aで受信された結果情報RINFに基づいて後処理を実行し、ゲームを進行させる。これにより、ゲームの状況は、結果情報RINFに応じた状況(すなわち、他のゲーム装置10Aの操作部170に対して実行された操作に応じた状況)に更新される。進行制御部114Aは、後処理を実行した後、処理をステップS140に進める。
ステップS140において、進行制御部114Aは、ゲームの進行を結果同期モードから入力同期モードに切り替える制御に関する切替制御処理を実行する。切替制御処理の詳細は、図23で説明する。
なお、結果同期モードによるゲーム進行処理は、図22に示す例に限定されない。例えば、ステップS112の判定、ステップS124の判定及びステップS130の判定等は、進行制御部114Aにより実行されてもよい。また、ステップS112-S122の一連の処理、ステップS124-S128の一連の処理、ステップS130-S136の一連の処理及びステップS140の切替制御処理は、並列に実行されてもよい。次に、図23を参照しつつ、ステップS140の切替制御処理を説明する。
図23は、切替制御処理の一例を示すフローチャートである。なお、図23に示す切替制御処理は、図22に示したステップS140の切替制御処理の一例である。従って、図23に示す切替制御処理は、結果同期モードが継続している期間では、更新タイミングの周期と同じ周期で繰り返し実行される。
ステップS1400において、進行制御部114Aは、ゲームの進行を結果同期モードから入力同期モードに切り替えるか否かを判定する。例えば、進行制御部114Aは、ゲームの進行を結果同期モードから入力同期モードに切り替えることを示す切替通知を情報受信部1121Aが他のゲーム装置10Aから受信した場合、ゲームの進行を入力同期モードに切り替えると判定する。あるいは、進行制御部114Aは、盗塁指示を示す操作情報IINFを取得部111が取得してから切替待機時間WTが経過するまでに情報受信部1121Aが投球情報RINFを受信しない場合、ゲームの進行を入力同期モードに切り替えると判定する。
ステップS1400における判定の結果が肯定の場合、すなわち、ゲームの進行を入力同期モードに切り替える場合、進行制御部114Aは、処理をステップS1402に進める。一方、ステップS1400における判定の結果が否定の場合、すなわち、結果同期モードを継続する場合、進行制御部114Aは、処理をステップS1406に進める。従って、ステップS1402及びS1404の一連の処理は、ゲームの進行を入力同期モードに切り替える場合に実行され、ステップS1406-S1414の一連の処理は、結果同期モードを継続する場合に実行される。
ステップS1402において、進行制御部114Aは、ゲームの進行を結果同期モードから入力同期モードに切り替える。なお、進行制御部114Aは、前回の更新タイミングまでに、後述するステップS1408で経過時間の計測が開始されていた場合、ゲームの進行を結果同期モードから入力同期モードに切り替えた後、経過時間の計測を終了する。進行制御部114Aは、ゲームの進行を結果同期モードから入力同期モードに切り替えた後、処理をステップS1404に進める。
ステップS1404において、情報送信部1122Aは、ゲームの進行を結果同期モードから入力同期モードに切り替えることを示す切替通知を他のゲーム装置10Aに送信し、切替制御処理を終了する。なお、他のゲーム装置10Aから受信した切替通知に応じて進行制御部114Aがゲームの進行を入力同期モードに切り替えた場合、ステップS1404の処理は、省かれてもよい。あるいは、他のゲーム装置10Aから受信した切替通知に応じて進行制御部114Aがゲームの進行を入力同期モードに切り替えた場合、ステップS1404で送信される切替通知は、入力同期モードに切り替わったことを他のゲーム装置10Aが確認するための情報として使用されてもよい。
次に、ステップS1400における判定の結果が否定の場合(すなわち、結果同期モードが継続される場合)に実行されるステップS1406-S1414の一連の処理について説明する。
ステップS1406において、進行制御部114Aは、盗塁指示を示す操作情報IINFを取得部111が今回の更新タイミングで取得したか否かを判定する。ステップS1406における判定の結果が肯定の場合、すなわち、盗塁指示を示す操作情報IINFを取得部111が今回の更新タイミングで取得した場合、進行制御部114Aは、ステップS1408において経過時間の計測を開始し、切替制御処理を終了する。一方、ステップS1406における判定の結果が否定の場合、すなわち、盗塁指示を示す操作情報IINFを取得部111が今回の更新タイミングで取得していない場合、進行制御部114Aは、処理をステップS1410に進める。
ステップS1410において、進行制御部114Aは、盗塁指示を示す操作情報IINFを取得部111が前回の更新タイミングまでに既に取得済みであるか否かを判定する。ステップS1410における判定の結果が肯定の場合、すなわち、盗塁指示を示す操作情報IINFを取得部111が既に取得済みである場合、進行制御部114Aは、処理をステップS1412に進める。一方、ステップS1410における判定の結果が否定の場合、すなわち、盗塁指示を示す操作情報IINFを取得部111が取得していない場合、進行制御部114Aは、経過時間の計測を開始することなく、切替制御処理を終了する。
ステップS1412において、進行制御部114Aは、投球情報RINFを情報受信部1121Aが今回の更新タイミングで受信したか否かを判定する。ステップS1412における判定の結果が肯定の場合、すなわち、投球情報RINFを情報受信部1121Aが今回の更新タイミングで受信した場合、進行制御部114Aは、ステップS1414において経過時間の計測を終了し、切替制御処理を終了する。すなわち、進行制御部114Aは、盗塁指示を示す操作情報IINFを取得部111が取得してから切替待機時間WTが経過するまでに投球情報RINFを情報受信部1121Aが受信した場合、経過時間の計測を終了した後、切替制御処理を終了する。一方、ステップS1412における判定の結果が否定の場合、すなわち、投球情報RINFを情報受信部1121Aが今回の更新タイミングで受信していない場合、進行制御部114Aは、経過時間の計測を継続した状態で、切替制御処理を終了する。次に、図24を参照しつつ、入力同期モードによるゲーム進行処理を説明する。
図24は、入力同期モードによるゲーム進行処理の一例を示すフローチャートである。なお、図24に示す動作は、図21に示したステップS160A(入力同期モードによるゲーム進行処理)一例である。従って、図24のステップS162の処理は、図21のステップS102における判定の結果が肯定の場合に実行される。すなわち、図24に示す動作は、入力同期モードが継続している期間では、更新タイミングの周期と同じ周期で繰り返し実行される。なお、図24に示す動作は、ステップS186の結果情報取消処理が図12に示した動作に追加されることを除いて、図12に示した動作と同様である。ステップS162-S184の一連の処理と、ステップS186の結果情報取消処理とは、並列に実行されてもよい。
ステップS162の処理は、図12に示したステップS162の処理と同様である。例えば、ステップS162において、進行制御部114Aは、バッファ部132の状態を初期化するか否かを判定する。具体的には、ステップS162において、進行制御部114Aは、入力同期モードによるゲーム進行処理を開始する場合、バッファ部132の状態を初期化すると判定する。入力同期モードによるゲーム進行処理が開始される場合の例として、ゲームの進行が結果同期モードから入力同期モードに切り替わった場合が該当する。従って、進行制御部114Aは、ゲームの進行を結果同期モードから入力同期モードに切り替えた場合、バッファ部132の状態を初期化すると判定する。このため、ゲーム装置10Aでは、記憶制御部113は、ゲームの進行が結果同期モードから入力同期モードに切り替わる場合、1又は複数の初期情報を記憶領域1321及び1322の一方に記憶させる初期化処理を実行する。
ステップS164-S184の一連の処理は、図12に示したステップS164-S184の一連の処理と同様である。このため、ステップS164-S184の一連の処理の詳細な説明を省略する。なお、ステップS182における判定の結果が否定の場合、図12に示した動作ではゲーム進行処理が終了したが、図24に示す動作では、進行制御部114Aは、処理をステップS186に進める。
ステップS186の結果情報取消処理は、ステップS184の更新処理が実行された場合、又は、ステップS182における判定の結果が否定の場合に実行される。進行制御部114Aは、ステップS186において、結果情報取消処理を実行して、今回の更新タイミングにおけるゲーム進行処理を終了する。結果情報取消処理は、例えば、ゲームの進行が入力同期モードに切り替わった後に、結果同期モードに関する処理を取り消すための処理である。結果情報取消処理の詳細は、図25で説明する。
なお、入力同期モードでゲームを進行させる場合のゲーム装置10Aの動作は、図24に示す例に限定されない。例えば、ゲーム装置10Aは、ステップS162-S184の一連の処理の代わりに、図13に示したステップS162-S185の一連の処理を実行してもよい。
図25は、結果情報取消処理の一例を示すフローチャートである。なお、図25に示す結果情報取消処理は、図24に示したステップS186の結果情報取消処理の一例である。従って、ステップS1860の処理は、図24のステップS184の更新処理が実行された後、又は、図24のステップS182における判定の結果が否定の場合に実行される。
ステップS1860において、情報受信部1121Aは、他のゲーム装置10Aにおける結果同期モードによる前処理の結果を示す結果情報RINFが通信部150に到達したか否かを判定する。ステップS1860における判定の結果が肯定の場合、すなわち、他のゲーム装置10Aの結果情報RINFが通信部150に到達した場合、情報受信部1121Aは、ステップS1862において結果情報RINFを受信し、処理をステップS1864に進める。ステップS1864では、情報送信部1122Aは、結果情報RINFに対する否定応答を他のゲーム装置10Aに送信して、結果情報取消処理を終了する。一方、ステップS1862における判定の結果が否定の場合、すなわち、他のゲーム装置10Aの結果情報RINFが通信部150に到達していない場合、情報受信部1121Aは、処理をステップS1866に進める。
ステップS1866において、情報受信部1121Aは、ゲームの進行を入力同期モードに切り替える前の結果同期モードにおいて他のゲーム装置10Aに送信された結果情報RINFに対する否定応答が通信部150に到達したか否かを判定する。ステップS1866における判定の結果が肯定の場合、すなわち、否定応答が通信部150に到達した場合、情報受信部1121Aは、ステップS1868において否定応答を受信し、処理をステップS1870に進める。一方、ステップS1866における判定の結果が否定の場合、すなわち、否定応答が通信部150に到達していない場合、情報受信部1121Aは、結果情報取消処理を終了する。
ステップS1870において、進行制御部114Aは、否定応答で否定された結果情報RINFに対応する処理を取り消す。否定応答で否定された結果情報RINFに対応する処理の取り消しは、例えば、ゲームの進行を入力同期モードに切り替える前の結果同期モードにおける肯定応答待ちの後処理を実行することなく終了させることである。ステップS1870の処理の終了により、結果情報取消処理は終了する。なお、ステップS1860-S1864の一連の処理と、ステップS1866-S1870の一連の処理とは、並列に実行されてもよい。進行制御部114Aは、結果情報取消処理が終了した場合、処理を図21に示したステップS190に進める。
[2.4.第2本実施形態の結論]
以上において説明したように、本実施形態によれば、記憶制御部113は、入力同期モードによるゲーム進行処理が開始される場合、初期化期間において、ユーザUの操作に依存しない1又は複数の初期情報を記憶領域1321及び1322の一方に記憶させる初期化処理を実行する。例えば、記憶制御部113は、ゲームの進行が結果同期モードから入力同期モードに切り替わる場合、初期化処理を実行する。このため、本実施形態においても、第1実施形態と同様の効果を得ることができる。
例えば、初期化期間に記憶領域1322に初期情報が記憶された場合、ゲーム装置10Aは、ゲーム装置10AのユーザUによる操作を、他のゲーム装置10Aからの操作情報IINFを受信する前に、ゲームの進行に反映させることができる。従って、ゲーム装置10Aは、ゲームの進行に初期情報を用いない従来のゲーム装置に比べて、操作の内容がゲームの進行に反映されるまでの遅延時間を短くすることができる。
また、例えば、初期化期間に記憶領域1321に初期情報が記憶された場合、ゲーム装置10AのユーザUの対戦相手のユーザUが使用する他のゲーム装置10Aにおいて、操作の内容がゲームの進行に反映されるまでの遅延時間を短くさせることができる。このように、第2実施形態においても、オンラインの対戦型ゲームを実行する2つのゲーム装置の一方において、従来と比べて、より高いリアルタイム性を実現できる。
さらに、本実施形態によれば、進行制御部114Aは、取得部111で取得された操作情報IINFに基づいてゲームを進行させる結果同期モードと、取得部111で取得された操作情報IINFと情報受信部1121Aで受信された他のゲーム装置10Aの操作情報IINFとに基づいてゲームを進行させる入力同期モードとにより、ゲームの進行を制御する。このため、本実施形態では、ゲーム装置10Aと他のゲーム装置10Aとの2つのゲーム装置10Aの間におけるゲームの進行内容の相違の程度を、従来と比べて低減することができる。例えば、本実施形態では、入力同期モードでゲームを進行させることにより、入力同期モードがゲームの進行に用いられない従来のゲーム装置に比べて、ゲームの状況をゲーム装置10Aと他のゲーム装置10Aとの2つのゲーム装置10Aで揃えることができる。これにより、本実施形態では、例えば、結果同期モードでゲームを進行させていた場合でも、ゲームの進行を結果同期モードから入力同期モードに切り替えることにより、キャラクタ及びオブジェクト等の位置及び状態が2つのゲーム装置10Aで揃っていることが前提のイベントを発生させることができる。この結果、発生させるイベントの種類が制限されことを低減することができる。
[2.5.第2実施形態の変形例]
本実施形態に係る具体的な変形の態様を以下に例示する。以下の例示から任意に選択される2以上の態様は、相互に矛盾しない範囲内で適宜に併合され得る。
[変形例2.1]
上述した第2実施形態では、守備側のゲーム装置10Aは、1回の投球毎に、投球情報RINFを攻撃側のゲーム装置10Aに1回送信するが、本発明はこのような態様に限定されるものではない。例えば、守備側のゲーム装置10Aは、図26に示すように、1回の投球毎に、投球情報RINFを攻撃側のゲーム装置10Aに複数回に分けて送信してもよい。
図26は、変形例2.1に係るゲームシステム1Aの動作の一例を示すシーケンスチャートである。図26においても、図17と同様に、操作情報IINF-2及び結果情報RINF-2の符号の末尾に小文字のアルファベット(a、b)を付している。図26に示す動作では、守備側のゲーム装置10A-2のユーザU2は、“球種”及び“コース”等の投球内容を指示する投球指示とリリースタイミングを指示するリリース指示とをゲーム装置10A-2の操作部170-2に対して入力する。なお、リリースタイミングは、投手キャラクタCptがボールオブジェクトOblをリリースするタイミングである。図26に示す動作は、リリース指示が操作部170-2に対して入力されることを除いて、図18に示した動作と同様である。このため、図18で説明した動作については、詳細な説明を省略する。
先ず、時刻T220において、ゲーム装置10A-2の情報送信部1122A-2は、投球指示の内容を示す操作情報IINF-2aに基づく投球情報RINF-2aを、ゲーム装置10A-1に送信する(S218)。
時刻T221において、ゲーム装置10A-1の情報受信部1121A-1は、投球情報RINF-2aを受信し(S132)、情報送信部1122A-1は、投球情報RINF-2aに対する肯定応答をゲーム装置10A-2に送信する(S134)。また、進行制御部114A-1の後処理部1142-1は、時刻T221から投球待機時間PWT(「第2時間」の一例)が経過した後の時刻T227において、投手キャラクタCptに投球情報RINF-2aに基づく投球を開始させる。これにより、後述するように、ゲーム装置10A-2に対応する表示部31-2に投球動作が表示される時刻T226より後の時刻T227に、ゲーム装置10A-2に対応する表示部31-2に投球動作が表示される(S190)。
時刻T224において、ゲーム装置10A-2の情報受信部1121A-2は、投球情報RINF-2aに対する肯定応答を受信する(S226)。そして、時刻T226において、進行制御部114A-2は、投球情報RINF-2aに基づく投手キャラクタCptの投球動作を、表示部31-2に表示させる(S290)。
時刻T230において、ゲーム装置10A-2の取得部111-2がリリース指示を示す操作情報IINF-2bを取得すると、進行制御部114A-2の前処理部1141-2は、リリースタイミングに応じて投球精度を決定する(S216)。例えば、ゲーム装置10A-2の進行制御部114A-2は、投手キャラクタCptの投球動作を表示部31-2に表示させ後、タイミングゲージを表示部31-2に表示させる。そして、ユーザU2がタイミングゲージで示される適切なタイミングでリリース指示(操作ボタンの押下、又は、操作ボタンの押下の解除等)を入力すると、投球指示で選択したコースにボールオブジェクトOblが投げ込まれる。リリース指示が入力されるタイミングが適切なタイミングからずれるほど、ボールオブジェクトOblが投げ込まれる位置も投球指示で選択したコースからずれる。
また、ゲーム装置10A-2の情報送信部1122A-2は、リリース指示を示す操作情報IINF-2bに基づく投球情報RINF-2bを、ゲーム装置10A-1に送信する(S218)。投球情報RINF-2bには、リリース指示に応じて決定されたボールオブジェクトOblが投げ込まれるコースを示す情報が含まれる。なお、リリース指示が入力されるタイミングに応じて球速も投球指示で選択した球速から調整される場合、投球情報RINF-2bには、投球指示に応じて決定されたボールオブジェクトOblの球速を示す情報も含まれる。
時刻T232において、ゲーム装置10A-2の進行制御部114A-2は、投球情報RINF-2bに基づいて更新されたゲームの状況を示す投球画面を、表示部31-2に表示させる(S290)。なお、図26に示す例では、投球画面は、投手キャラクタCptの投球動作が終了した後の投手キャラクタCpt及びボールオブジェクトOblが表示される画面である。従って、ゲーム装置10A-2では、時刻T232において、ボールオブジェクトOblが投手キャラクタCptからリリースされる。
時刻T233において、ゲーム装置10A-1の情報受信部1121A-1は、投球情報RINF-2bを受信する(S132)。そして、時刻T235において、進行制御部114A-1は、投球情報RINF-2bに基づいて更新されたゲームの状況を示す投球画面を、表示部31-1に表示させる(S190)。従って、ゲーム装置10A-1では、時刻T235において、ボールオブジェクトOblが投手キャラクタCptからリリースされる。時刻T235より後の時刻(例えば、時刻T241、T243、T244及びT246)の動作は、図18に示した動作と同様であるため、説明を省略する。
図27は、変形例2.1に係るゲームシステム1Aの動作の別の例を示すシーケンスチャートである。図27に示す動作は、盗塁指示が入力されることを除いて、図26に示した動作と同様であり、リリース指示が操作部170-2に対して入力されることを除いて、図19に示した動作と同様である。このため、図19及び図26で説明した動作については、詳細な説明を省略する。
時刻T211、T212及びT214におけるゲーム装置10A-1及び10A-2の一連の動作は、図19に示した時刻T211、T212及びT214におけるゲーム装置10A-1及び10A-2の一連の動作と同様である。例えば、時刻T214において、ゲーム装置10A-2の進行制御部114A-2は、盗塁情報RINF-1に基づいて更新されたゲームの状況を示す走者画面を、表示部31-2に表示させる(S290)。
時刻T220において、ゲーム装置10A-2の情報送信部1122A-2は、投球指示の内容を示す操作情報IINF-2aに基づく投球情報RINF-2aを、ゲーム装置10A-1に送信する(S218)。
時刻T221において、ゲーム装置10A-1の情報受信部1121A-1は、投球情報RINF-2aを受信する(S132)。図27に示す例では、情報受信部1121A-1は、取得部111-1による操作情報IINF-1の取得タイミングである時刻T211から、切替待機時間WTが経過するまでに、投球情報RINF-2aを受信する。このため、進行制御部114A-1は、結果同期モードによるゲームの進行を継続させる。例えば、情報送信部1122A-1は、投球情報RINF-2aに対する肯定応答を、ゲーム装置10A-2に送信する(S134)。
図27に示す例では、結果同期モードによるゲームの進行が継続するため、時刻T220以降のゲーム装置10A-1及び10A-2の動作は、図26に示したゲーム装置10A-1及び10A-2の動作と同様である。なお、取得部111-1による操作情報IINF-1の取得タイミングである時刻T211から、切替待機時間WTが経過した後に、情報受信部1121A-1が投球情報RINF-2aを受信した場合、図20に示した動作と同様に、ゲームの進行は、結果同期モードから入力同期モードに切り替わる。ゲームの進行が結果同期モードから入力同期モードに切り替わる場合の変形例2.1におけるゲーム装置10A-1及び10A-2の動作は、図20に示した動作と同様であるため、説明を省略する。
[変形例2.2]
上述した第2実施形態及び変形例2.1では、入力同期モードでゲームを進行させている場合、進行制御部114Aが、ゲームに係る仮想空間を俯瞰した画像を表示部31に表示させるが、本発明はこのような態様に限定されるものではない。例えば、進行制御部114Aは、入力同期モードにおいて、ユーザU1により操作される走者キャラクタCrn等のゲーム要素と、ユーザU2により操作される投手キャラクタCpt等のゲーム要素との両方が1画面に収まる画像を、表示部31に表示させてもよい。
[3.付記]
以上の記載から、本発明は例えば以下のように把握される。
[付記1]
本発明の一態様に係るゲーム装置は、ゲームを実行するゲーム装置であって、前記ゲーム装置のユーザによる操作の内容を示す第1操作情報を取得する取得部と、前記ゲームを実行する他のゲーム装置のユーザによる操作の内容を示す第2操作情報を受信する通信制御部と、前記取得部により取得された第1操作情報を第1記憶領域に記憶させ、前記通信制御部により受信された第2操作情報を第2記憶領域に記憶させる記憶制御部と、前記第1記憶領域に記憶されている情報及び前記第2記憶領域に記憶されている情報に基づいて前記ゲームを進行させる進行制御部と、を備え、前記記憶制御部は、初期化期間において、ユーザの操作に依存しない1又は複数の初期情報を前記第2記憶領域に記憶させる初期化処理を実行し、前記進行制御部は、前記初期化期間の終了後の第1期間において、前記第1記憶領域に記憶されている第1操作情報及び前記第2記憶領域に記憶されている初期情報に基づいて前記ゲームを進行させ、前記第1期間の終了後の第2期間において、前記第1記憶領域に記憶されている第1操作情報及び前記第2記憶領域に記憶されている第2操作情報に基づいて前記ゲームを進行させる、ことを特徴とする。
この態様によれば、ゲーム装置のユーザによる操作(第1操作情報で示される操作)を、他のゲーム装置のユーザによる操作の内容を示す第2操作情報を受信する前に、ゲームの進行に反映させることができる。従って、ゲーム装置は、ゲームの進行に初期情報を用いない従来のゲーム装置に比べて、操作の内容がゲームの進行に反映されるまでの遅延時間を短くすることができる。従って、この態様によれば、2つのゲーム装置を用いてオンラインの対戦型ゲームが実行される場合、従来のゲーム装置と比べて、より高いリアルタイム性を実現できる。
なお、上記態様において、「第1操作情報」とは、ゲーム装置のゲームコントローラ等の「操作部」に対してユーザが入力した操作を示す情報であってもよいし、ユーザの実行した操作に割り当てられた処理を示す情報であってもよい。「操作を示す情報」は、例えば、ユーザが、操作部に設けられた複数の操作ボタンのうち、一の操作ボタンを押下した場合、複数の操作ボタンの中から一の操作ボタンを特定するための情報であってもよい。あるいは、「操作を示す情報」は、例えば、ユーザの操作が、複数の選択メニューの中から一の選択メニューを選択する操作である場合に、複数の選択メニューの中から一の選択メニューを特定する情報であってもよい。具体的には、「操作を示す情報」は、ユーザの操作が、複数の選択メニュー“A”、“B”及び“C”の中から選択メニューBを選択する操作であった場合、選択メニュー“B”が選択されたことを示す情報であってもよい。また、「操作に割り当てられた処理を示す情報」は、例えば、一の操作ボタンの押下が、ゲームに係るキャラクタを上へ移動させる指示に割り当てられている状態で、ユーザが一の操作ボタンを押下した場合、キャラクタを上へ移動させる指示を示す情報であってもよい。
また、上記態様において、「第2操作情報」とは、他のゲーム装置のゲームコントローラ等の「他の操作部」に対して他のゲーム装置のユーザが入力した操作を示す情報であってもよいし、他のゲーム装置のユーザの実行した操作に割り当てられた処理を示す情報であってもよい。なお、「操作を示す情報」及び「操作に割り当てられた処理を示す情報」は、「第1操作情報」で説明した「操作を示す情報」及び「操作に割り当てられた処理を示す情報」と同様である。例えば、「操作を示す情報」は、他のゲーム装置のユーザが、他の操作部に設けられた複数の操作ボタンのうち、一の操作ボタンを押下した場合、複数の操作ボタンの中から一の操作ボタンを特定するための情報であってもよい。あるいは、「操作を示す情報」は、例えば、他のゲーム装置のユーザの操作が、複数の選択メニューの中から一の選択メニューを選択する操作である場合に、複数の選択メニューの中から一の選択メニューを特定する情報であってもよい。
また、上記態様において、「初期情報」とは、例えば、ユーザの操作とは無関係の情報である。「ユーザの操作とは無関係の情報」は、操作情報が記憶されているとして扱うこと及びゲームの進行に使用しないことを示す専用の情報でもよい。また、「ユーザの操作とは無関係の情報」は、例えば、固定値でもランダム値でもよい。
また、上記態様において、「ゲームを進行させる」とは、周期的又は定期的に到来する更新タイミングに同期してゲームの状況を更新させることの一態様である。なお、「ゲームの状況を更新させる」とは、「ゲームの状況を変化させる」ことと「ゲームの状況を変化させずに維持する」こととを含む概念であってもよい。例えば、「ゲームの状況を変化させる」ことと「ゲームの状況を変化させずに維持する」こととのうち、「ゲームの状況を変化させる」ことが「ゲームを進行させる」ことに該当する。なお、「更新タイミング」は、例えば、表示装置等に表示される画像を更新するタイミングであってもよい。
また、「ゲームの状況」とは、例えば、ゲームに係る仮想空間におけるゲーム要素の状況であってもよい。ここで、「ゲーム要素」とは、例えば、ゲームに係る仮想空間に存在する仮想的な物体であってもよいし、ゲームに係る仮想空間を撮像する仮想カメラであってもよい。このうち、「ゲームに係る仮想空間に存在する仮想的な物体」とは、例えば、ゲームに係るキャラクタ、及び、ゲームに係るオブジェクトを含む概念であってもよい。また、「ゲーム要素の状況」は、ゲーム要素の位置及び状態等であってもよい。ここで、「ゲーム要素の状態」とは、ゲーム要素の動きを含む概念であってもよい。「ゲーム要素の動き」としては、例えば、野球ゲームの場合、投球、打撃、盗塁等のキャラクタの行動が該当する。
また、上記態様において、「初期化期間」とは、進行制御部が第1記憶領域に記憶されている情報及び第2記憶領域に記憶されている情報に基づいてゲームの進行を開始させる前の期間であってもよい。
[付記2]
本発明の他の態様に係るゲーム装置は、付記1に記載のゲーム装置であって、前記ゲームは、投手キャラクタが投球を実行し、打者キャラクタが打撃を実行する野球ゲームであり、前記ゲーム装置が前記投手キャラクタを動作させるために使用され、前記他のゲーム装置が前記打者キャラクタを動作させるために使用される、ことを特徴とする。
この態様によれば、ゲーム装置は、ゲームの進行に初期情報を用いない従来のゲーム装置に比べて、操作の内容がゲームの進行に反映されるまでの遅延時間を短くすることができる。従って、この態様によれば、投手キャラクタを動作させるために使用されるゲーム装置において、従来のゲーム装置と比べて、より高いリアルタイム性を実現できる。
[付記3]
本発明の他の態様に係るゲーム装置は、ゲームを実行するゲーム装置であって、前記ゲーム装置のユーザによる操作の内容を示す第1操作情報を取得する取得部と、前記ゲームを実行する他のゲーム装置のユーザによる操作の内容を示す第2操作情報を受信する通信制御部と、前記取得部により取得された第1操作情報を第1記憶領域に記憶させ、前記通信制御部により受信された第2操作情報を第2記憶領域に記憶させる記憶制御部と、前記第1記憶領域に記憶されている情報及び前記第2記憶領域に記憶されている情報に基づいて前記ゲームを進行させる進行制御部と、を備え、前記記憶制御部は、初期化期間において、ユーザの操作に依存しない1又は複数の初期情報を前記第1記憶領域に記憶させる初期化処理を実行し、前記進行制御部は、前記初期化期間の終了後の第1期間において、前記第1記憶領域に記憶されている初期情報及び前記第2記憶領域に記憶されている第2操作情報に基づいて前記ゲームを進行させ、前記第1期間の終了後の第2期間において、前記第1記憶領域に記憶されている第1操作情報及び前記第2記憶領域に記憶されている第2操作情報に基づいて前記ゲームを進行させる、ことを特徴とする。
この態様によれば、他のゲーム装置において、従来のゲーム装置と比べて、操作の内容がゲームの進行に反映されるまでの遅延時間を短くさせることができる。従って、この態様によれば、他のゲーム装置において、従来のゲーム装置と比べて、より高いリアルタイム性を実現できる。
[付記4]
本発明の他の態様に係るゲーム装置は、付記3に記載のゲーム装置であって、前記ゲームは、投手キャラクタが投球を実行し、打者キャラクタが打撃を実行する野球ゲームであり、前記ゲーム装置が前記打者キャラクタを動作させるために使用され、前記他のゲーム装置が前記投手キャラクタを動作させるために使用される、ことを特徴とする。
この態様によれば、投手キャラクタを動作させるために使用される他のゲーム装置は、ゲームの進行に初期情報を用いない従来のゲーム装置に比べて、操作の内容がゲームの進行に反映されるまでの遅延時間を短くすることができる。従って、この態様によれば、投手キャラクタを動作させるために使用される他のゲーム装置において、従来のゲーム装置と比べて、より高いリアルタイム性を実現できる。
[付記5]
本発明の他の態様に係るゲーム装置は、ゲームを実行するゲーム装置であって、前記ゲーム装置のユーザによる操作の内容を示す第1操作情報を取得する取得部と、前記ゲームを実行する他のゲーム装置のユーザによる操作の内容を示す第2操作情報を受信する通信制御部と、前記取得部により取得された第1操作情報を第1記憶領域に記憶させ、前記通信制御部により受信された第2操作情報を第2記憶領域に記憶させる記憶制御部と、前記第1記憶領域に記憶されている情報及び前記第2記憶領域に記憶されている情報に基づいて前記ゲームを進行させる進行制御部と、を備え、前記記憶制御部は、初期化期間において、ユーザの操作に依存しない1又は複数の初期情報を前記第1記憶領域及び前記第2記憶領域の一方に記憶させる初期化処理を実行し、前記初期化期間に前記第2記憶領域に初期情報が記憶された場合、前記進行制御部は、前記初期化期間の終了後の第1期間において、前記第1記憶領域に記憶されている第1操作情報及び前記第2記憶領域に記憶されている初期情報に基づいて前記ゲームを進行させ、前記第1期間の終了後の第2期間において、前記第1記憶領域に記憶されている第1操作情報及び前記第2記憶領域に記憶されている第2操作情報に基づいて前記ゲームを進行させ、前記初期化期間に前記第1記憶領域に初期情報が記憶された場合、前記進行制御部は、前記第1期間において、前記第1記憶領域に記憶されている初期情報及び前記第2記憶領域に記憶されている第2操作情報に基づいて前記ゲームを進行させ、前記第2期間において、前記第1記憶領域に記憶されている第1操作情報及び前記第2記憶領域に記憶されている第2操作情報に基づいて前記ゲームを進行させる、ことを特徴とする。
この態様によれば、ゲーム装置は、初期化期間に第2記憶領域に初期情報を記憶した場合、ゲーム装置のユーザによる操作を、他のゲーム装置のユーザによる操作の内容を示す第2操作情報を受信する前に、ゲームの進行に反映させることができる。この場合、ゲーム装置は、ゲームの進行に初期情報を用いない従来のゲーム装置に比べて、操作の内容がゲームの進行に反映されるまでの遅延時間を短くすることができる。
また、ゲーム装置は、初期化期間に第1記憶領域に初期情報を記憶した場合、他のゲーム装置において、従来のゲーム装置と比べて、操作の内容がゲームの進行に反映されるまでの遅延時間を短くさせることができる。すなわち、この態様によれば、オンラインの対戦型ゲームを実行する2つのゲーム装置の一方において、従来のゲーム装置と比べて、より高いリアルタイム性を実現できる。
[付記6]
本発明の他の態様に係るゲーム装置は、付記5に記載のゲーム装置であって、前記ゲームは、投手キャラクタが投球を実行し、打者キャラクタが打撃を実行する野球ゲームであり、前記記憶制御部は、前記投手キャラクタ又は前記打者キャラクタのうち何れを前記ゲーム装置が操作するかを示すイニング情報に基づいて、前記第1記憶領域又は前記第2記憶領域のうち、ユーザの操作に依存しない1又は複数の初期情報を記憶させる記憶領域を決定する、ことを特徴とする。
この態様によれば、ゲーム装置は、投手キャラクタと打者キャラクタとのうちのいずれを動作させるために使用されるかに応じて、第1記憶領域と第2記憶領域とのうちのいずれに初期情報を記憶させるかを決定することができる。
[付記7]
本発明の他の態様に係るゲーム装置は、付記1乃至6のうち何れか1項に記載のゲーム装置であって、前記進行制御部は、周期的に到来する更新タイミングに同期して、前記ゲームの進行を制御する、ことを特徴とする。
この態様によれば、付記1乃至6のうち何れか1項と同様の効果を得ることができる。
なお、上記態様において、「ゲームの進行を制御する」とは、周期的に到来する更新タイミングにおいて、ゲームの状況を更新するか否かを決定する処理であってもよい。また、「ゲームの進行を制御する」とは、更新タイミングにおいて、ゲームの状況を更新するか否かを決定し、ゲームの状況を更新する場合、更新後のゲームの状況を決定する処理であってもよい。
[付記8]
本発明の他の態様に係るゲーム装置は、付記7に記載のゲーム装置であって、前記進行制御部は、前記更新タイミングに同期して前記第1記憶領域及び前記第2記憶領域を参照し、前記第1記憶領域に記憶されている情報に対応する第2操作情報が前記第2記憶領域に記憶されていない場合、前記ゲームの進行を待機する、ことを特徴とする。
この態様によれば、付記7と同様の効果を得ることができる。
[付記9]
本発明の他の態様に係るゲーム装置は、付記1乃至8のうち何れか1項に記載のゲーム装置であって、前記進行制御部は、前記第1記憶領域に記憶されている情報及び前記第2記憶領域に記憶されている情報に基づいて前記ゲームを進行させる第1進行モードと、前記他のゲーム装置のユーザによる操作の内容を示す第2操作情報を用いずに、前記ゲーム装置のユーザによる操作の内容を示す第1操作情報に基づいて前記ゲームを進行させる第2進行モードとを切り替えて、前記ゲームの進行を制御する、ことを特徴とする。
この態様によれば、付記1乃至8のうち何れか1項と同様の効果を得ることができる。
なお、上記態様において、「第1進行モード」は、他のゲーム装置におけるゲームの進行に用いられる2つの操作情報と同じ2つの操作情報に基づいて、ゲームの状況を更新する進行モードであってもよい。また、上記態様において、「第2進行モード」は、ゲームを進行させる更新タイミングにおいて、第1操作情報が存在する場合に、第1操作情報に基づいて、ゲームの状況を更新する進行モードであってもよい。また、「第2進行モード」では、進行制御部は、自ゲーム装置に対する操作の結果に基づいてゲームを進行させてもよいし、他のゲーム装置におけるゲームの進行結果に基づいてゲームを進行させてもよい。
[付記10]
本発明の他の態様に係るゲーム装置は、付記9に記載のゲーム装置であって、前記記憶制御部は、前記ゲームの進行が前記第2進行モードから前記第1進行モードに切り替わる場合、前記初期化処理を実行する、ことを特徴とする。
この態様によれば、付記9と同様の効果を得ることができる。
[付記11]
本発明の一態様に係るプログラムは、ゲームを実行するゲーム装置のプロセッサを、前記ゲーム装置のユーザによる操作の内容を示す第1操作情報を取得する取得部と、前記ゲームを実行する他のゲーム装置のユーザによる操作の内容を示す第2操作情報を受信する通信制御部と、前記取得部により取得された第1操作情報を第1記憶領域に記憶させ、前記通信制御部により受信された第2操作情報を第2記憶領域に記憶させる記憶制御部と、前記第1記憶領域に記憶されている情報及び前記第2記憶領域に記憶されている情報に基づいて前記ゲームを進行させる進行制御部と、して機能させ、前記記憶制御部は、初期化期間において、ユーザの操作に依存しない1又は複数の初期情報を前記第2記憶領域に記憶させる初期化処理を実行し、前記進行制御部は、前記初期化期間の終了後の第1期間において、前記第1記憶領域に記憶されている第1操作情報及び前記第2記憶領域に記憶されている初期情報に基づいて前記ゲームを進行させ、前記第1期間の終了後の第2期間において、前記第1記憶領域に記憶されている第1操作情報及び前記第2記憶領域に記憶されている第2操作情報に基づいて前記ゲームを進行させる、ことを特徴とする。
この態様によれば、付記1と同様の効果を得ることができる。
[付記12]
本発明の他の態様に係るプログラムは、ゲームを実行するゲーム装置のプロセッサを、前記ゲーム装置のユーザによる操作の内容を示す第1操作情報を取得する取得部と、前記ゲームを実行する他のゲーム装置のユーザによる操作の内容を示す第2操作情報を受信する通信制御部と、前記取得部により取得された第1操作情報を第1記憶領域に記憶させ、前記通信制御部により受信された第2操作情報を第2記憶領域に記憶させる記憶制御部と、前記第1記憶領域に記憶されている情報及び前記第2記憶領域に記憶されている情報に基づいて前記ゲームを進行させる進行制御部と、して機能させ、前記記憶制御部は、初期化期間において、ユーザの操作に依存しない1又は複数の初期情報を前記第1記憶領域に記憶させる初期化処理を実行し、前記進行制御部は、前記初期化期間の終了後の第1期間において、前記第1記憶領域に記憶されている初期情報及び前記第2記憶領域に記憶されている第2操作情報に基づいて前記ゲームを進行させ、前記第1期間の終了後の第2期間において、前記第1記憶領域に記憶されている第1操作情報及び前記第2記憶領域に記憶されている第2操作情報に基づいて前記ゲームを進行させる、ことを特徴とする。
この態様によれば、付記3と同様の効果を得ることができる。
[付記13]
本発明の他の態様に係るプログラムは、ゲームを実行するゲーム装置のプロセッサを、前記ゲーム装置のユーザによる操作の内容を示す第1操作情報を取得する取得部と、前記ゲームを実行する他のゲーム装置のユーザによる操作の内容を示す第2操作情報を受信する通信制御部と、前記取得部により取得された第1操作情報を第1記憶領域に記憶させ、前記通信制御部により受信された第2操作情報を第2記憶領域に記憶させる記憶制御部と、前記第1記憶領域に記憶されている情報及び前記第2記憶領域に記憶されている情報に基づいて前記ゲームを進行させる進行制御部と、して機能させ、前記記憶制御部は、初期化期間において、ユーザの操作に依存しない1又は複数の初期情報を前記第1記憶領域及び前記第2記憶領域の一方に記憶させる初期化処理を実行し、前記初期化期間に前記第2記憶領域に初期情報が記憶された場合、前記進行制御部は、前記初期化期間の終了後の第1期間において、前記第1記憶領域に記憶されている第1操作情報及び前記第2記憶領域に記憶されている初期情報に基づいて前記ゲームを進行させ、前記第1期間の終了後の第2期間において、前記第1記憶領域に記憶されている第1操作情報及び前記第2記憶領域に記憶されている第2操作情報に基づいて前記ゲームを進行させ、前記初期化期間に前記第1記憶領域に初期情報が記憶された場合、前記進行制御部は、前記第1期間において、前記第1記憶領域に記憶されている初期情報及び前記第2記憶領域に記憶されている第2操作情報に基づいて前記ゲームを進行させ、前記第2期間において、前記第1記憶領域に記憶されている第1操作情報及び前記第2記憶領域に記憶されている第2操作情報に基づいて前記ゲームを進行させる、ことを特徴とする。
この態様によれば、付記5と同様の効果を得ることができる。
[付記14]
本発明の一態様に係るゲームシステムは、互いに通信可能な第1ゲーム装置及び第2ゲーム装置が協同でゲームを実行するゲームシステムであって、前記第1ゲーム装置は、前記第1ゲーム装置のユーザによる操作の内容を示す第1操作情報を取得する第1取得部と、前記第2ゲーム装置のユーザによる操作の内容を示す第2操作情報を受信する第1通信制御部と、前記第1取得部により取得された第1操作情報を第1記憶領域に記憶させ、前記第1通信制御部により受信された第2操作情報を第2記憶領域に記憶させる第1記憶制御部と、前記第1記憶領域に記憶されている情報及び前記第2記憶領域に記憶されている情報に基づいて前記ゲームを進行させる第1進行制御部と、を備え、前記第1記憶制御部は、第1初期化期間において、ユーザの操作に依存しない1又は複数の初期情報を前記第2記憶領域に記憶させる第1初期化処理を実行し、前記第1進行制御部は、前記第1初期化期間の終了後の第1期間において、前記第1記憶領域に記憶されている第1操作情報及び前記第2記憶領域に記憶されている初期情報に基づいて前記ゲームを進行させ、前記第1期間の終了後の第2期間において、前記第1記憶領域に記憶されている第1操作情報及び前記第2記憶領域に記憶されている第2操作情報に基づいて前記ゲームを進行させ、前記第2ゲーム装置は、前記第2ゲーム装置のユーザによる操作の内容を示す第2操作情報を取得する第2取得部と、前記第1ゲーム装置のユーザによる操作の内容を示す第1操作情報を受信する第2通信制御部と、前記第2取得部により取得された第2操作情報を第3記憶領域に記憶させ、前記第2通信制御部により受信された第1操作情報を第4記憶領域に記憶させる第2記憶制御部と、前記第3記憶領域に記憶されている情報及び前記第4記憶領域に記憶されている情報に基づいて前記ゲームを進行させる第2進行制御部と、を備え、前記第2記憶制御部は、第2初期化期間において、ユーザの操作に依存しない1又は複数の初期情報を前記第3記憶領域に記憶させる第2初期化処理を実行し、前記第2進行制御部は、前記第2初期化期間の終了後の第3期間において、前記第3記憶領域に記憶されている初期情報及び前記第4記憶領域に記憶されている第1操作情報に基づいて前記ゲームを進行させ、前記第3期間の終了後の第4期間において、前記第3記憶領域に記憶されている第2操作情報及び前記第4記憶領域に記憶されている第1操作情報に基づいて前記ゲームを進行させ、前記第3記憶領域に記憶される初期情報の数は、前記第2記憶領域に記憶される初期情報の数と同じである、ことを特徴とする。
この態様によれば、付記5と同様の効果を得ることができる。
なお、上記態様において、「第1初期化期間」とは、第1進行制御部が第1記憶領域に記憶されている情報及び第2記憶領域に記憶されている情報に基づいてゲームの進行を開始させる前の期間であってもよい。また、上記態様において、「第2初期化期間」とは、第2進行制御部が第3記憶領域に記憶されている情報及び第4記憶領域に記憶されている情報に基づいてゲームの進行を開始させる前の期間であってもよい。
[付記15]
本発明の他の態様に係るゲーム装置は、ゲームを実行するゲーム装置であって、前記ゲーム装置のユーザによる操作の内容を示す第1操作情報を取得する取得部と、前記ゲームを実行する他のゲーム装置のユーザによる操作の内容を示す第2操作情報を受信する通信制御部と、バッファ部の状態を初期化し、前記第1操作情報及び前記第2操作情報を前記バッファ部に記憶させる記憶制御部と、前記バッファ部の状態が初期化された後、前記第1操作情報及び前記第2操作情報の一方に基づいて、α回(αは1以上の自然数)だけ前記ゲームを進行させ、前記α回だけ前記ゲームを進行させた後、前記第1操作情報及び前記第2操作情報に基づいて前記ゲームを進行させる進行制御部と、を備える、ことを特徴とする。
この態様によれば、付記5と同様の効果を得ることができる。
[付記16]
本発明の一態様に係るゲームの制御方法では、ゲームを実行するゲーム装置のプロセッサが、前記ゲーム装置のユーザによる操作の内容を示す第1操作情報を取得し、前記ゲームを実行する他のゲーム装置のユーザによる操作の内容を示す第2操作情報を受信し、取得した第1操作情報を第1記憶領域に記憶させ、受信した第2操作情報を第2記憶領域に記憶させ、前記第1記憶領域に記憶されている情報及び前記第2記憶領域に記憶されている情報に基づいて前記ゲームを進行させ、初期化期間において、ユーザの操作に依存しない1又は複数の初期情報を前記第2記憶領域に記憶させる初期化処理を実行し、前記初期化期間の終了後の第1期間において、前記第1記憶領域に記憶されている第1操作情報及び前記第2記憶領域に記憶されている初期情報に基づいて前記ゲームを進行させ、前記第1期間の終了後の第2期間において、前記第1記憶領域に記憶されている第1操作情報及び前記第2記憶領域に記憶されている第2操作情報に基づいて前記ゲームを進行させる、ことを特徴とする。
この態様によれば、付記1と同様の効果を得ることができる。
[付記17]
本発明の他の態様に係るゲームの制御方法では、ゲームを実行するゲーム装置のプロセッサが、前記ゲーム装置のユーザによる操作の内容を示す第1操作情報を取得し、前記ゲームを実行する他のゲーム装置のユーザによる操作の内容を示す第2操作情報を受信し、取得した第1操作情報を第1記憶領域に記憶させ、受信した第2操作情報を第2記憶領域に記憶させ、前記第1記憶領域に記憶されている情報及び前記第2記憶領域に記憶されている情報に基づいて前記ゲームを進行させ、初期化期間において、ユーザの操作に依存しない1又は複数の初期情報を前記第1記憶領域に記憶させる初期化処理を実行し、前記初期化期間の終了後の第1期間において、前記第1記憶領域に記憶されている初期情報及び前記第2記憶領域に記憶されている第2操作情報に基づいて前記ゲームを進行させ、前記第1期間の終了後の第2期間において、前記第1記憶領域に記憶されている第1操作情報及び前記第2記憶領域に記憶されている第2操作情報に基づいて前記ゲームを進行させる、ことを特徴とする。
この態様によれば、付記3と同様の効果を得ることができる。