(57)【要約】【課題】オンラインゲーム全体の進行を管理するサーバ装置に負荷をかけることなく、通常状態ではプレイヤキャラクタの通過を阻止する通過阻止オブジェクトを自然な態様で表示できる。【解決手段】フィールド４００を移動するプレイヤキャラクタ４２１の位置の管理はサーバ装置２００で行い、その位置は他キャラクタ情報としてオンラインゲームに参加する全てのプレイヤが操作するビデオゲーム装置１００に１．０秒毎に送信される。ビデオゲーム装置１００では、受信した最新の２つの他キャラクタ情報から、不足するタイミングにつき他プレイヤキャラクタ４２１の位置を補間し、３０分の１秒毎に表示画面１２２に表示する他プレイヤキャラクタ４２１の表示画像が生成する。また、その位置がエリア４０２間を移動する場合であれば、そこに通じる扉を開いて移動する画像をビデオゲーム装置１００において生成する。【選択図】図９
2011229614.tif 000002
【特許請求の範囲】
【請求項１】
サーバ装置と、該サーバ装置に通信回線を介して接続されるとともにゲームの表示画面を表示する表示装置を有する複数のクライアント装置とを備え、各々のクライアント装置のプレイヤにより操作されるプレイヤキャラクタを含む複数のキャラクタを所定のフィールドで移動させてゲームを進行させるオンラインゲームを提供するオンラインゲームシステムであって、
前記フィールドには、該フィールドを移動するキャラクタの通過を阻む通常状態から一時的に特別状態に変化して該キャラクタを通過させる通過阻止オブジェクトが設定されており、
前記複数のクライアント装置の各々は、
前記通過阻止オブジェクトを含む前記フィールドと、該フィールドに存在するキャラクタのグラフィックデータを予め格納したグラフィックデータ格納手段と、
当該クライアント装置のプレイヤにより操作されるプレイヤキャラクタ以外の特定のキャラクタの前記フィールドにおける位置を示す位置情報を、前記表示装置に表示される表示画面を１つだけ生成する時間間隔よりも長い所定の長期時間間隔で前記サーバ装置から受信する位置情報受信手段と、
前記位置情報受信手段が今回受信した位置情報が示す特定のキャラクタの前記フィールドにおける位置と、当該位置情報よりも前に受信した位置情報が示す当該特定のキャラクタの前記フィールドにおける位置とを比較し、今回受信した位置情報において当該特定のキャラクタが前記通過阻止オブジェクトを通過した位置に移動したかどうかを判定する通過判定手段と、
前記位置情報受信手段から受信した位置情報に応じて前記フィールド上に前記特定のキャラクタを配置した表示画面を前記グラフィックデータ格納手段に記憶されたグラフィックデータに基づいて生成する表示制御手段とを備え、
前記サーバ装置は、前記複数のクライアント装置の各々に前記位置情報を送信する位置情報送信手段を備え、
前記表示制御手段は、
前記位置情報を受信してからの前記長期時間間隔に応じた期間において、前回の位置情報に応じた表示画面より後から今回の位置情報に応じた表示画面よりも前までを補間する補間画面を順次生成し、該生成した補間画面から前記位置情報に応じた表示画面まで順次前記表示装置に表示させるとともに、
前記通過判定手段により前記特定のキャラクタが前記通過阻止オブジェクトを通過した位置に移動したと判定された場合には、当該特定のキャラクタが通過できる期間以上の期間で前記通過阻止オブジェクトを前記特別状態に変化させた表示画面を生成する
ことを特徴とするオンラインゲームシステム。
【請求項２】
前記表示制御手段は、前記通過判定手段により前記特定のキャラクタが前記通過阻止オブジェクトを通過した位置に移動していないと判定された場合において、該通過阻止オブジェクトが前記特別状態に変化させられていた場合には、該通過阻止オブジェクトを前記通常状態に変化させた表示画面を生成する
ことを特徴とする請求項１に記載のオンラインゲームシステム。
【請求項３】
前記複数のクライアント装置の各々は、
当該クライアント装置のプレイヤにより操作されるプレイヤキャラクタを前記フィールド上で移動させるための指令を入力する移動指令入力手段と、
前記移動指令入力手段から入力された指令に応じた前記プレイヤキャラクタの移動情報を前記サーバ装置に送信する移動情報送信手段とをさらに備え、
前記サーバ装置は、
前記複数のクライアント装置の各々の前記移動情報送信手段から送信された移動情報を受信する移動情報受信手段と、
前記移動情報受信手段が受信した移動情報に基づいて、前記複数のクライアント装置のプレイヤの各々が操作する複数のプレイヤキャラクタの位置をそれぞれ管理するプレイヤキャラクタ位置管理手段とをさらに備え、
前記特定のキャラクタは、他のクライアント装置のプレイヤにより操作されるプレイヤキャラクタであり、
前記位置情報送信手段は、前記プレイヤキャラクタ位置管理手段を参照して前記位置情報を生成し、前記複数のクライアント装置の各々に送信する
ことを特徴とする請求項１または２に記載のオンラインゲームシステム。
【請求項４】
前記通過阻止オブジェクトは、ゲームの進行状況に応じて前記通常状態から前記特別状態に変化することができない完全阻止状態と前記通常状態から前記特別状態に変化することができる不完全阻止状態との何れかに設定される特別通過阻止オブジェクトと、ゲームの進行状況に関わらずに前記通常状態から前記特別状態に変化することができる通常通過阻止オブジェクトとを含み、
前記サーバ装置は、
前記特別通過阻止オブジェクトが前記完全阻止状態と前記不完全阻止状態の何れにあるかを管理する特別通過阻止オブジェクト管理手段と、
前記位置情報送信手段による前記位置情報の送信とともに、前記特別通過阻止オブジェクトが前記完全阻止状態と前記不完全阻止状態の何れにあるかを示す特別通過阻止オブジェクト情報を送信する特別通過阻止オブジェクト情報送信手段とをさらに備え、
前記複数のクライアント装置の各々は、前記特別通過阻止オブジェクト情報送信手段から送信された特別通過阻止オブジェクト情報を受信する特別通過阻止オブジェクト情報受信手段をさらに備え、
前記表示制御手段は、前記特別通過阻止オブジェクトについては前記特別通過阻止オブジェクト情報が前記不完全阻止状態にあることを示すことを条件として、前記通過判定手段により前記特定のキャラクタが前記特別通過阻止オブジェクトを通過した位置に移動したと判定された場合に、前記特別通過阻止オブジェクトを前記特別状態に変化させた表示画面を生成する
ことを特徴とする請求項１乃至３のいずれか１項に記載のオンラインゲームシステム。
【請求項５】
サーバ装置に通信回線を介して接続されるとともにゲームの表示画面を表示する表示装置を有し、プレイヤにより操作されるプレイヤキャラクタを含む複数のキャラクタを所定のフィールドで移動させてゲームを進行させるオンラインゲームを実行するクライアント装置であって、
前記フィールドには、該フィールドを移動するキャラクタの通過を阻む通常状態から一時的に特別状態に変化して該キャラクタを通過させる通過阻止オブジェクトが設定されており、
前記クライアント装置は、
前記通過阻止オブジェクトを含む前記フィールドのグラフィックデータと、該フィールドに存在するキャラクタのグラフィックデータとを予め格納したグラフィックデータ格納手段と、
当該クライアント装置のプレイヤにより操作されるプレイヤキャラクタ以外の特定のキャラクタの前記フィールドにおける位置を示す位置情報を、前記表示装置の１フレーム期間よりも長い所定の長期時間間隔で前記サーバ装置から受信する位置情報受信手段と、
前記位置情報受信手段が今回受信した位置情報が示す特定のキャラクタの前記フィールドにおける位置と、当該位置情報よりも前に受信した位置情報が示す当該特定のキャラクタの前記フィールドにおける位置とを比較し、今回受信した位置情報において当該特定のキャラクタが前記通過阻止オブジェクトを通過した位置に移動したかどうかを判定する通過判定手段と、
前記位置情報受信手段から受信した位置情報に応じて前記フィールド上に前記特定のキャラクタを配置した表示画面を前記グラフィックデータ格納手段に記憶されたグラフィックデータに基づいて生成する表示制御手段とを備え、
前記表示制御手段は、
前記位置情報を受信してからの前記長期時間間隔に応じた期間において、前回の位置情報に応じた表示画面より後から今回の位置情報に応じた表示画面よりも前までを補間する補間画面を順次生成し、該生成した補間画面から前記位置情報に応じた表示画面まで順次前記表示装置に表示させるとともに、
前記通過判定手段により今回受信した位置情報において当該特定のキャラクタが前記通過阻止オブジェクトを通過した位置に移動したと判定された場合には、当該特定のキャラクタが通過できる期間以上の期間で前記通過阻止オブジェクトを前記特別状態に変化させた表示画面を生成する
ことを特徴とするクライアント装置。
【請求項６】
サーバ装置に通信回線を介して接続されるとともにゲームの表示画面を表示する表示装置を有するコンピュータ装置に、プレイヤにより操作されるプレイヤキャラクタを含む複数のキャラクタを所定のフィールドで移動させてゲームを進行させるオンラインゲームを実行させるためのプログラムであって、
前記フィールドには、該フィールドを移動するキャラクタの通過を阻む通常状態から一時的に特別状態に変化して該キャラクタを通過させる通過阻止オブジェクトが設定されており、
前記プログラムは、
前記通過阻止オブジェクトを含む前記フィールドのグラフィックデータと、該フィールドに存在するキャラクタのグラフィックデータとを予め格納したグラフィックデータ格納手段と、
当該クライアント装置のプレイヤにより操作されるプレイヤキャラクタ以外の特定のキャラクタの前記フィールドにおける位置を示す位置情報を、前記表示装置の１フレーム期間よりも長い所定の長期時間間隔で前記サーバ装置から受信する位置情報受信手段、
前記位置情報受信手段が今回受信した位置情報が示す特定のキャラクタの前記フィールドにおける位置と、当該位置情報よりも前に受信した位置情報が示す当該特定のキャラクタの前記フィールドにおける位置とを比較し、今回受信した位置情報において当該特定のキャラクタが前記通過阻止オブジェクトを通過した位置に移動したかどうかを判定する通過判定手段、及び、
前記位置情報受信手段から受信した位置情報に応じて前記フィールド上に前記特定のキャラクタを配置した表示画面を前記グラフィックデータ格納手段に記憶されたグラフィックデータに基づいて生成する表示制御手段として前記コンピュータ装置を機能させ、
前記表示制御手段は、
前記位置情報を受信してからの前記長期時間間隔に応じた期間において、前回の位置情報に応じた表示画面より後から今回の位置情報に応じた表示画面よりも前までを補間する補間画面を順次生成し、該生成した補間画面から前記位置情報に応じた表示画面まで順次前記表示装置に表示させるとともに、
前記通過判定手段により今回受信した位置情報において当該特定のキャラクタが前記通過阻止オブジェクトを通過した位置に移動したと判定された場合には、当該特定のキャラクタが通過できる期間以上の期間で前記通過阻止オブジェクトを前記特別状態に変化させた表示画面を生成する
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のプレイヤが参加してゲームが進行するオンラインゲームに関し、特に、通常状態ではプレイヤキャラクタの通過を阻止する通過阻止オブジェクトがフィールド上に設定されたゲームに関するものである。
【背景技術】
【０００２】
ロールプレイングゲーム（ＲＰＧ）においては、一般に、プレイヤが仮想世界のプレイヤキャラクタに成り代わって、プレイヤキャラクタを仮想空間としてのフィールド上で移動させながら、課題を解決してゆくことでゲームが進行して行く。
【０００３】
そして、このフィールドには、広大な平地のフィールドや、それよりも狭い屋内のフィールドなどが用いられるものである。特に、屋内の場合には、プレイヤキャラクタは、屋内・屋外を往来することができるようになっており、その出入口には扉が設定されている場合がある。また、屋内が複数の部屋に仕切られている場合には、各部屋の間に扉が設定されている場合がある。
【０００４】
このような扉を通ってプレイヤキャラクタが建物の内外を出入りしたり、異なる部屋に出入りしたりするものとしたゲームにおいて、プレイヤが所定の操作をしてプレイヤキャラクタにその扉を開く動作を行わせることで、プレイヤの操作するビデオゲーム装置の表示画面において、その扉を開く様子を自然に表示させ、異なる部屋の間を往来させるものがある（例えば、特許文献１）。
【０００５】
一方、近年のネットワーク技術の進歩に伴い、複数のプレイヤが参加してゲームが進行するオンラインゲーム（ネットワークゲーム）が盛んに行われるようになってきている。オンラインＲＰＧでは、複数のプレイヤが操作するプレイヤキャラクタの位置等を管理し、ゲームの進行を集中的にサーバ装置で行い、その結果をビデオゲーム装置に送信するものとなっている。また、このようなオンラインＲＰＧでも、クライアント装置に対する表示に係る情報の送信頻度を少なくし、クライアント装置で表示画面を補間して表示させることにより、サーバ装置で複数のプレイヤが操作するプレイヤキャラクタの位置等を集中的に管理しながらもより多くのプレイヤの参加を可能としたＭＭＯＲＰＧ（Massively Multiplayer Online RPG）が行われるようになってきている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−１９５８２６号公報（段落０１０８等）
【発明の概要】
【発明が解決しようとする課題】
【０００７】
扉を開かないままプレイヤキャラクタを通過させてしまうと不自然な画像になってしまうが、複数のプレイヤが参加するオンラインゲームにおいては、各ビデオゲーム装置では、他のプレイヤのプレイヤキャラクタがどの様にフィールド上を移動するかは分からない。他のプレイヤのプレイヤキャラクタが扉の手前まで移動したからと言って、そのまま扉を通過するとは限らない。従って、他のプレイヤに対応するプレイヤキャラクタによって上記扉の開閉が行われる様子を各ビデオゲーム装置において自然に表示させるためには、フィールド上に設置された扉の開閉もサーバ装置で集中的に管理する必要がある。
【０００８】
そのため、オンラインゲームにおいて、複数のプレイヤキャラクタを参加させ、上記のような扉の開閉をサーバ装置によって集中的に管理すると、プレイヤキャラクタの数が増えれば増えるほど扉の開閉動作が頻繁に行われるようになり、サーバ装置の処理負荷を増大させるものとなってしまう。このように処理負荷が増大することとによって、ビデオゲーム装置に送信するゲームの進行に応じた情報の送信に遅延が生じる可能性が増加し、それによって、ビデオゲーム装置の表示画面に扉が開く様子を自然に表示できなくなる虞もある。
【０００９】
一方、処理負荷の増大を見込んで参加可能なプレイヤキャラクタの数を制限すると、ゲームの面白みを半減させてしまう。上記のように多くのプレイヤの参加を可能としたＭＭＯＲＰＧの場合でも、扉の開閉をサーバ装置において集中的に管理するという手法を踏襲していたため、その管理のための処理負荷の増大が同様に起こるものとなり、その分だけ参加可能なプレイヤキャラクタの数を制限しなくてはならなかった。
【００１０】
本発明は、オンラインゲーム全体の進行を管理するサーバ装置に負荷をかけることなく、通常状態ではプレイヤキャラクタの通過を阻止する通過阻止オブジェクトを自然な態様で表示できるオンラインゲームシステム等を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記目的を達成するため、本発明の第１の観点にかかるオンラインゲームシステムは、サーバ装置と、該サーバ装置に通信回線を介して接続されるとともにゲームの表示画面を表示する表示装置を有する複数のクライアント装置とを備え、各々のクライアント装置のプレイヤにより操作されるプレイヤキャラクタを含む複数のキャラクタを所定のフィールドで移動させてゲームを進行させるオンラインゲームを提供するオンラインゲームシステムであって、前記フィールドには、該フィールドを移動するキャラクタの通過を阻む通常状態から一時的に特別状態に変化して該キャラクタを通過させる通過阻止オブジェクトが設定されており、前記複数のクライアント装置の各々は、前記通過阻止オブジェクトを含む前記フィールドと、該フィールドに存在するキャラクタのグラフィックデータを予め格納したグラフィックデータ格納手段と、当該クライアント装置のプレイヤにより操作されるプレイヤキャラクタ以外の特定のキャラクタの前記フィールドにおける位置を示す位置情報を、前記表示装置に表示される表示画面を１つだけ生成する時間間隔よりも長い所定の長期時間間隔で前記サーバ装置から受信する位置情報受信手段と、前記位置情報受信手段が今回受信した位置情報が示す特定のキャラクタの前記フィールドにおける位置と、当該位置情報よりも前に受信した位置情報が示す当該特定のキャラクタの前記フィールドにおける位置とを比較し、今回受信した位置情報において当該特定のキャラクタが前記通過阻止オブジェクトを通過した位置に移動したかどうかを判定する通過判定手段と、前記位置情報受信手段から受信した位置情報に応じて前記フィールド上に前記特定のキャラクタを配置した表示画面を前記グラフィックデータ格納手段に記憶されたグラフィックデータに基づいて生成する表示制御手段とを備え、前記サーバ装置は、前記複数のクライアント装置の各々に前記位置情報を送信する位置情報送信手段を備え、前記表示制御手段は、前記位置情報を受信してからの前記長期時間間隔に応じた期間において、前回の位置情報に応じた表示画面より後から今回の位置情報に応じた表示画面よりも前までを補間する補間画面を順次生成し、該生成した補間画面から前記位置情報に応じた表示画面まで順次前記表示装置に表示させるとともに、前記通過判定手段により前記特定のキャラクタが前記通過阻止オブジェクトを通過した位置に移動したと判定された場合には、当該特定のキャラクタが通過できる期間以上の期間で前記通過阻止オブジェクトを前記特別状態に変化させた表示画面を生成することを特徴とする。
【００１２】
例えば、前記通過阻止オブジェクトは、扉や門とすることができる。この場合には、扉や門が閉じた状態を通常状態、扉や門が開いた状態を特別状態とすることができる。或いは、前記通過阻止オブジェクトは、高低差のあるフィールドをキャラクタが移動する場合に用いる伸縮自在な梯子とすることもできる。この場合には、梯子が縮んだ状態を通常状態、梯子が伸びた状態を特別状態とすることができる。
【００１３】
上記オンラインゲームシステムでは、クライアント装置のプレイヤにより操作されるプレイヤキャラクタ以外の特定キャラクタのフィールドにおける位置を示す位置情報が、当該クライアント装置において表示装置に表示される表示画面を１つだけ生成する時間間隔よりも長い所定の長期時間間隔で、サーバ装置からクライアント装置に送信される。クライアント装置では、前回の位置情報に応じた表示画面より後から今回の位置情報に応じた表示画面よりも前までを補間する補間画面を順次生成して、ゲームの動画像を表示装置に表示させるものとなっている。
【００１４】
ところで、各クライアント装置のプレイヤにより操作されるプレイヤキャラクタを含む複数のキャラクタが移動するフィールドには、通過阻止オブジェクトが設定されている。この通過阻止オブジェクトは、通常状態ではキャラクタの通過を阻むものとなっており、キャラクタがこれを通過するためには、特別状態に変化させなければならない。しかし、クライアント装置には通過阻止オブジェクトのグラフィックデータが格納されているものの、サーバ装置では、この追加阻止オブジェクトが通常状態にあるか特別状態にあるかの管理を行っていない。
【００１５】
もっとも、クライアント装置では、今回受信した位置情報で示される特定のキャラクタのフィールド上の位置と、これよりも前に受信した位置情報で示される特定キャラクタのフィールド上の位置とを比較し、通過阻止オブジェクトを通過する位置への移動があったかどうかを判定している。そして、通過阻止オブジェクトを通過する位置への移動があった場合には、順次生成する補間画面（特定のキャラクタの位置が少しずつ変わる）において、特定のキャラクタが通過できる期間以上の期間で通過阻止オブジェクトを特別状態に変化させるものとしている。
【００１６】
これにより、サーバ装置で通過阻止オブジェクトが通常状態にあるか特別状態にあるかの管理を行っていなくても、特定のキャラクタが本来通過できないはずの通常状態にある通過阻止オブジェクトをすり抜けてフィールド上を移動してしまうというようなことを防ぐことができる。また、サーバ装置で通過阻止オブジェクトの状態に関する管理を行わなくてもよいので、サーバ装置において必要な記憶容量と処理負荷とを少なくすることができるものとなる。
【００１７】
上記オンラインゲームシステムにおいて、前記表示制御手段は、前記通過判定手段により前記特定のキャラクタが前記通過阻止オブジェクトを通過した位置に移動していないと判定された場合において、該通過阻止オブジェクトが前記特別状態に変化させられていた場合には、該通過阻止オブジェクトを前記通常状態に変化させた表示画面を生成するものとすることができる。
【００１８】
この場合、特定のキャラクタが過去に通過したことがあって特別状態に変化させられていても、新たに受信した位置情報に基づいては特定のキャラクタが通過することのない通過阻止オブジェクトは、自動的に通常状態に変化させられることとなる。これにより、例えば、前記通過阻止オブジェクトを扉や門とした場合に、これらが自動的に開閉する様子を示す画面を生成することが可能となる。
【００１９】
上記オンラインゲームシステムにおいて、前記複数のクライアント装置の各々は、当該クライアント装置のプレイヤにより操作されるプレイヤキャラクタを前記フィールド上で移動させるための指令を入力する移動指令入力手段と、前記移動指令入力手段から入力された指令に応じた前記プレイヤキャラクタの移動情報を前記サーバ装置に送信する移動情報送信手段とをさらに備え、前記サーバ装置は、前記複数のクライアント装置の各々の前記移動情報送信手段から送信された移動情報を受信する移動情報受信手段と、前記移動情報受信手段が受信した移動情報に基づいて、前記複数のクライアント装置のプレイヤの各々が操作する複数のプレイヤキャラクタの位置をそれぞれ管理するプレイヤキャラクタ位置管理手段とをさらに備え、前記特定のキャラクタは、他のクライアント装置のプレイヤにより操作されるプレイヤキャラクタであり、前記位置情報送信手段は、前記プレイヤキャラクタ位置管理手段を参照して前記位置情報を生成し、前記複数のクライアント装置の各々に送信するものとすることができる。
【００２０】
この場合、複数のクライアント装置の各々は、当該クライアント装置のプレイヤにより操作されるプレイヤキャラクタをプレイヤによって入力された指令によりフィールド上で移動させるが、その入力された指令に応じた移動情報をサーバ装置に送信するものとしている。サーバ装置は、各々のクライアント装置から送信された移動情報を受信し、これに基づいて複数のクライアント装置のプレイヤの各々が操作する複数のプレイヤキャラクタの位置をそれぞれ管理するものとしている。これにより、サーバ装置の制御によりフィールド上を移動させられるノンプレイヤキャラクタだけではなく、他のクライアント装置のプレイヤによる操作でフィールド上を移動させられるプレイヤキャラクタについても特定のキャラクタとして適用することができる。
【００２１】
なお、各クライアント装置からサーバ装置に送信される移動情報は、移動指令入力手段から入力された指令の内容としても、該入力された指令に基づくプレイヤキャラクタの移動先の位置としてもよい。また、移動情報の送信時間間隔は、サーバ装置からクライアント装置に位置情報が送信される長期時間間隔よりも短い時間間隔としてもよいが、長期時間間隔と同じ時間間隔であっても構わない。
【００２２】
上記オンラインゲームシステムにおいて、前記通過阻止オブジェクトは、ゲームの進行状況に応じて前記通常状態から前記特別状態に変化することができない完全阻止状態と前記通常状態から前記特別状態に変化することができる不完全阻止状態との何れかに設定される特別通過阻止オブジェクトと、ゲームの進行状況に関わらずに前記通常状態から前記特別状態に変化することができる通常通過阻止オブジェクトとを含み、前記サーバ装置は、前記特別通過阻止オブジェクトが前記完全阻止状態と前記不完全阻止状態の何れにあるかを管理する特別通過阻止オブジェクト管理手段と、前記位置情報送信手段による前記位置情報の送信とともに、前記特別通過阻止オブジェクトが前記完全阻止状態と前記不完全阻止状態の何れにあるかを示す特別通過阻止オブジェクト情報を送信する特別通過阻止オブジェクト情報送信手段とをさらに備え、前記複数のクライアント装置の各々は、前記特別通過阻止オブジェクト情報送信手段から送信された特別通過阻止オブジェクト情報を受信する特別通過阻止オブジェクト情報受信手段をさらに備え、前記表示制御手段は、前記特別通過阻止オブジェクトについては前記特別通過阻止オブジェクト情報が前記不完全阻止状態にあることを示すことを条件として、前記通過判定手段により前記特定のキャラクタが前記特別通過阻止オブジェクトを通過した位置に移動したと判定された場合に、前記特別通過阻止オブジェクトを前記特別状態に変化させた表示画面を生成するものとすることができる。
【００２３】
ここで、前記通過阻止オブジェクトを扉や門とした場合には、扉や門が施錠された状態を完全阻止状態、扉や門が解錠された状態を不完全阻止状態とすることができる。或いは、前記通過阻止オブジェクトを伸縮自在な梯子とした場合には、ストッパなどにより梯子を伸ばすことができない状態を完全阻止状態、梯子を伸ばすことができる状態を不完全阻止状態とすることができる。
【００２４】
フィールド上に設定される通過阻止オブジェクトには、完全阻止状態と不完全阻止状態の何れかに設定される特別阻止オブジェクトが含まれているが、特別阻止オブジェクトが完全阻止状態と不完全阻止状態の何れにあるかは、サーバ装置において管理されている。もっとも、サーバ装置は、特別通過阻止オブジェクトが完全阻止状態と不完全阻止状態の何れにあるかを示す特別通過阻止オブジェクト情報を、特定のキャラクタのフィールド上における位置を示す位置情報とともにクライアント装置に送信するものとしている。
【００２５】
クライアント装置は、特別状態に変化することができない完全阻止状態にも設定され得る特別通過阻止オブジェクトであっても、特別通過阻止オブジェクト情報により不完全阻止状態にあることが示されている場合には、常に特別状態に変化させることができる通常通過阻止オブジェクトと同様に扱うことができるものとなる。このため、サーバ装置では、特別通過阻止オブジェクトについても、完全阻止状態にあるか不完全阻止状態にあるかだけを管理し、その状態を示す特別通過阻止オブジェクト情報をクライアント装置に送信すれば、通常通過阻止オブジェクトと同様に通常状態にあるか特別状態にあるかの管理を行わないでも済むものとなる。
【００２６】
上記目的を達成するため、本発明の第２の観点にかかるクライアント装置は、サーバ装置に通信回線を介して接続されるとともにゲームの表示画面を表示する表示装置を有し、プレイヤにより操作されるプレイヤキャラクタを含む複数のキャラクタを所定のフィールドで移動させてゲームを進行させるオンラインゲームを実行するクライアント装置であって、前記フィールドには、該フィールドを移動するキャラクタの通過を阻む通常状態から一時的に特別状態に変化して該キャラクタを通過させる通過阻止オブジェクトが設定されており、前記クライアント装置は、前記通過阻止オブジェクトを含む前記フィールドのグラフィックデータと、該フィールドに存在するキャラクタのグラフィックデータとを予め格納したグラフィックデータ格納手段と、当該クライアント装置のプレイヤにより操作されるプレイヤキャラクタ以外の特定のキャラクタの前記フィールドにおける位置を示す位置情報を、前記表示装置の１フレーム期間よりも長い所定の長期時間間隔で前記サーバ装置から受信する位置情報受信手段と、前記位置情報受信手段が今回受信した位置情報が示す特定のキャラクタの前記フィールドにおける位置と、当該位置情報よりも前に受信した位置情報が示す当該特定のキャラクタの前記フィールドにおける位置とを比較し、今回受信した位置情報において当該特定のキャラクタが前記通過阻止オブジェクトを通過した位置に移動したかどうかを判定する通過判定手段と、前記位置情報受信手段から受信した位置情報に応じて前記フィールド上に前記特定のキャラクタを配置した表示画面を前記グラフィックデータ格納手段に記憶されたグラフィックデータに基づいて生成する表示制御手段とを備え、前記表示制御手段は、前記位置情報を受信してからの前記長期時間間隔に応じた期間において、前回の位置情報に応じた表示画面より後から今回の位置情報に応じた表示画面よりも前までを補間する補間画面を順次生成し、該生成した補間画面から前記位置情報に応じた表示画面まで順次前記表示装置に表示させるとともに、前記通過判定手段により今回受信した位置情報において当該特定のキャラクタが前記通過阻止オブジェクトを通過した位置に移動したと判定された場合には、当該特定のキャラクタが通過できる期間以上の期間で前記通過阻止オブジェクトを前記特別状態に変化させた表示画面を生成することを特徴とする。
【００２７】
上記目的を達成するために、本発明の第３の観点にかかるプログラムは、サーバ装置に通信回線を介して接続されるとともにゲームの表示画面を表示する表示装置を有するコンピュータ装置に、プレイヤにより操作されるプレイヤキャラクタを含む複数のキャラクタを所定のフィールドで移動させてゲームを進行させるオンラインゲームを実行させるためのプログラムであって、前記フィールドには、該フィールドを移動するキャラクタの通過を阻む通常状態から一時的に特別状態に変化して該キャラクタを通過させる通過阻止オブジェクトが設定されており、前記プログラムは、前記通過阻止オブジェクトを含む前記フィールドのグラフィックデータと、該フィールドに存在するキャラクタのグラフィックデータとを予め格納したグラフィックデータ格納手段と、当該クライアント装置のプレイヤにより操作されるプレイヤキャラクタ以外の特定のキャラクタの前記フィールドにおける位置を示す位置情報を、前記表示装置の１フレーム期間よりも長い所定の長期時間間隔で前記サーバ装置から受信する位置情報受信手段、前記位置情報受信手段が今回受信した位置情報が示す特定のキャラクタの前記フィールドにおける位置と、当該位置情報よりも前に受信した位置情報が示す当該特定のキャラクタの前記フィールドにおける位置とを比較し、今回受信した位置情報において当該特定のキャラクタが前記通過阻止オブジェクトを通過した位置に移動したかどうかを判定する通過判定手段、及び、前記位置情報受信手段から受信した位置情報に応じて前記フィールド上に前記特定のキャラクタを配置した表示画面を前記グラフィックデータ格納手段に記憶されたグラフィックデータに基づいて生成する表示制御手段として前記コンピュータ装置を機能させ、前記表示制御手段は、前記位置情報を受信してからの前記長期時間間隔に応じた期間において、前回の位置情報に応じた表示画面より後から今回の位置情報に応じた表示画面よりも前までを補間する補間画面を順次生成し、該生成した補間画面から前記位置情報に応じた表示画面まで順次前記表示装置に表示させるとともに、前記通過判定手段により今回受信した位置情報において当該特定のキャラクタが前記通過阻止オブジェクトを通過した位置に移動したと判定された場合には、当該特定のキャラクタが通過できる期間以上の期間で前記通過阻止オブジェクトを前記特別状態に変化させた表示画面を生成することを特徴とする。
【図面の簡単な説明】
【００２８】
【図１】本発明の実施の形態にかかるネットワークゲームシステムの構成を示すブロック図である。
【図２】図１のビデオゲーム装置の構成を示すブロック図である。
【図３】図１のサーバ装置の構成を示すブロック図である。
【図４】本発明の実施の形態にかかるネットワークゲームのフロアの例を示す図である。
【図５】図３のサーバ装置において管理されるテーブル群を示す図である。
【図６】図２のビデオゲーム装置において記憶されるデータの構成、および管理される扉状態テーブルを示す図である。
【図７】図３のサーバ装置において実行される処理のフローチャートを示す図である。
【図８】図２のビデオゲーム装置において実行される処理のフローチャートを示す図である。
【図９】図２のビデオゲーム装置において実行される他キャラクタ情報処理、および表示画像生成処理のフローチャートを示す図である。
【図１０】本発明の実施の形態にかかるネットワークゲームの他プレイヤキャラクタ位置の推移と扉の開閉とを模式的に示す図である。
【発明を実施するための形態】
【００２９】
以下、添付図面を参照して、本発明の実施の形態について説明する。
【００３０】
この実施の形態にかかるオンラインゲームは、同時に当該オンラインゲームに参加する複数のプレイヤが、仮想空間として、エリアに区分けされたフィールドにおいて、自己のプレイヤキャラクタを各エリアに順次移動させながら進行するＭＭＯＲＰＧである。また、それぞれのエリアは扉でのみ通じており、プレイヤは、自己のプレイヤキャラクタにその扉を開けさせて、エリアの往来をさせることになる。
【００３１】
図１は、この実施の形態にかかるネットワークゲームが行われるネットワークゲームシステムの構成を示すブロック図である。図示するように、このネットワークゲームシステムは、複数のビデオゲーム装置１００と、サーバ装置２００とから構成される。ビデオゲーム装置１００は、それぞれサーバ装置２００にネットワーク１５１を介して接続される。
【００３２】
サーバ装置２００は、この実施の形態にかかるネットワークゲームの全体の進行を管理するものであり、各ビデオゲーム装置１００の接続状況と各ビデオゲーム装置１００にて行われているゲームの状況を管理している。ビデオゲーム装置１００は、いずれもネットワークを介してサーバ装置２００に接続することが可能である。
【００３３】
次に、ビデオゲーム装置１００及びサーバ装置２００の構成について説明する。図２は、図１のビデオゲーム装置１００の構成を示すブロック図である。図示するように、ビデオゲーム装置１００は、ビデオゲーム本体１０１を中心として構築される。このビデオゲーム本体１０１は、その内部バス１１９に接続された制御部１０３、ＲＡＭ（Random Access Memory）１０５、ハードディスク・ドライブ（ＨＤＤ）１０７、サウンド処理部１０９、グラフィック処理部１１１、ＤＶＤ／ＣＤ−ＲＯＭドライブ１１３、通信インターフェイス１１５、及びインターフェイス部１１７を含む。
【００３４】
このビデオゲーム本体１０１のサウンド処理部１０９は、スピーカーであるサウンド出力装置１２５に、グラフィック処理部１１１は、表示画面１２２を有する表示装置１２１に接続されている。ＤＶＤ／ＣＤ−ＲＯＭドライブ１１３には、記録媒体（本実施の形態では、ＤＶＤ−ＲＯＭまたはＣＤ−ＲＯＭ）１３１を装着し得る。通信インターフェイス１１５は、ネットワーク１５１に接続される。インターフェイス部１１７には、入力部（コントローラ）１６１とメモリカード１６２とが接続されている。
【００３５】
制御部１０３は、ＣＰＵ（Central Processing Unit）やＲＯＭ（Read Only Memory）などを含み、ＨＤＤ１０７や記録媒体１３１上に格納されたプログラムを実行し、ビデオゲーム本体１０１の制御を行う。制御部１０３は、内部タイマを備えている。ＲＡＭ１０５は、制御部１０３のワークエリアである。ＨＤＤ１０７は、プログラムやデータを保存するための記憶領域である。サウンド処理部１０９は、制御部１０３により実行されているプログラムがサウンド出力を行うよう指示している場合に、その指示を解釈して、サウンド出力装置１２５にサウンド信号を出力する。
【００３６】
グラフィック処理部１１１は、制御部１０３から出力される描画命令に従って、フレームメモリ（フレームバッファ）１１２（図では、グラフィック処理部１１１の外側に描かれているが、グラフィック処理部１１１を構成するチップに含まれるＲＡＭ内に設けられる）に画像を展開し、表示装置１２１の表示画面１２２上に画像を表示するビデオ信号を出力する。グラフィック処理部１１１から出力されるビデオ信号に含まれる画像の１フレーム時間は、例えば３０分の１秒である。
【００３７】
もっとも、仮想空間に存在するオブジェクトのうちで画像の表示対象となる視認範囲に含まれる他のプレイヤキャラクタを示す他キャラクタ情報は、サーバ装置２００から１．０秒毎にしか送られてこないため、１フレーム毎の画像生成に用いられる他のプレイヤキャラクタの位置にかかる情報は、後述する表示画像生成処理において補間され、その補間された位置によって当該他のプレイヤキャラクタが表示画面１２２に表示されるものとなる。
【００３８】
ＤＶＤ／ＣＤ−ＲＯＭドライブ１１３は、記録媒体１３１に対しプログラム及びデータの読み出しを行う。通信インターフェイス１１５は、ネットワーク１５１に接続され、他のコンピュータ（サーバ装置２００）との通信を行う。入力部１６１は、方向キー、操作ボタン等を備え、方向キーの操作により後述するプレイヤキャラクタを移動させ、操作ボタンの操作により、プレイヤキャラクタに開扉等を行わせるものである。操作ボタンは、所定の指示を入力するために用いられる。
【００３９】
インターフェイス部１１７は、入力部１６１からの入力データをＲＡＭ１０５に出力し、制御部１０３がそれを解釈して演算処理を実施する。インターフェイス部１１７は、また、制御部１０３からの指示に基づいて、ＲＡＭ１０５に記憶されているゲームの進行状況を示すデータをメモリーカード１６２に保存させ、メモリーカード１６２に保存されている中断時のゲームのデータを読み出して、ＲＡＭ１０５に転送する。
【００４０】
ビデオゲーム装置１００でゲームを行うためのプログラム及びデータは、最初例えば記録媒体１３１に記憶されている。記録媒体１３１に記憶されているデータとしては、ゲーム空間に存在するオブジェクト（ゲーム空間に形成されたフィールド、自身及び他者のプレイヤキャラクタ）を構成するためのグラフィックデータを全て含んでいる。
【００４１】
従って、視認範囲と当該視認範囲に含まれる各オブジェクトの位置と、選択的な形態を有するオブジェクト（自身及び他者のプレイヤキャラクタ）についてはその形態を特定可能な情報（例えば、部位毎に選択される顔体の形態や服装などの識別情報）とを受信して、表示画面１２２に表示される画像を描画するものとなっている。
【００４２】
記録媒体１３１に記憶されたプログラム及びデータは、実行時にＤＶＤ／ＣＤ−ＲＯＭドライブ１１３により読み出されて、ＲＡＭ１０５にロードされる。制御部１０３は、ＲＡＭ１０５にロードされたプログラム及びデータを処理し、描画命令をグラフィック処理部１１１に出力し、サウンド出力の指示をサウンド処理部１０９に出力する。制御部１０３が処理を行っている間の中間的なデータは、ＲＡＭ１０５に記憶される。
【００４３】
図３は、図１のサーバ装置２００の構成を示すブロック図である。図示するように、サーバ装置２００は、サーバ本体２０１を中心として構築される。サーバ本体２０１は、その内部バス２１９に接続された制御部２０３、ＲＡＭ２０５、ハード・ディスク・ドライブ（ＨＤＤ）２０７、ＤＶＤ／ＣＤ−ＲＯＭドライブ２１３、通信インターフェイス２１５を含む。ＤＶＤ／ＣＤ−ＲＯＭドライブ２１３には、記録媒体（ＤＶＤ−ＲＯＭまたはＣＤ−ＲＯＭ）２３１を装着し得る。
【００４４】
制御部２０３は、ＣＰＵ（Central Processing Unit）やＲＯＭ（Read Only Memory）などを含み、ＨＤＤ２０７や記録媒体２３１上に格納されたプログラムを実行し、サーバ装置２００の制御を行う。制御部２０３は、現在時刻を計時する内部タイマを備えている。ＲＡＭ２０５は、制御部２０３のワークエリアである。ＨＤＤ２０７は、プログラムやデータを保存するための記憶領域である。通信インターフェイス２１５は、ネットワーク１５１に接続され、ビデオゲーム装置１００のそれぞれとの通信を行う。
【００４５】
サーバ装置２００でネットワークゲームを行うためのプログラム及びデータは、最初例えば記録媒体２３１に記憶され、ここからＨＤＤ２０７にインストールされる。そして、このプログラム及びデータは実行時にＨＤＤ２０７から読み出されて、ＲＡＭ２０５にロードされる。制御部２０３は、ＲＡＭ２０５にロードされたプログラム及びデータを処理し、ビデオゲーム装置１００のそれぞれから送られてくる情報を元にネットワークゲームを進行させる。制御部２０３が処理を行っている間の中間的なデータは、ＲＡＭ２０５に記憶される。
【００４６】
図４は、この実施の形態にかかるオンラインゲームで用いられる仮想空間としてのフィールドの例を示す図である。図示するように、このオンラインゲームにおけるフィールド４００には、壁４０１で仕切られ、複数に区分けされたエリア４０２が設けられている。
【００４７】
これらのエリア４０２は、また、複数の扉を通じて異なるエリア４０２と繋がっており、フィールド４００に複数存在するプレイヤキャラクタ４２１はこの扉を通ってエリア４０２間を移動することができる。この複数のプレイヤキャラクタ４２１のフィールド４００上の位置は、サーバ装置２００によって管理され、定期的（例えば１．０秒毎）にビデオゲーム装置１００に送信される（後で詳述する）。
【００４８】
このように繋がったエリア４０２間において、プレイヤキャラクタ４２１を移動させるためには、プレイヤは、自己のプレイヤキャラクタ４２１をこの扉の前に移動させ、開扉の行動（以下、「開扉行動」とする）をさせ、扉を開くことが必要となる。扉が開くと、プレイヤキャラクタ４２１を、このプレイヤキャラクタ４２１が存在しているエリア４０２から、異なるエリア４０２へと移動させることができるようになる。
【００４９】
このように、扉が開き、異なるエリア４０２へとプレイヤキャラクタ４２１が移動すると、当該扉が開いて、所定の時間（例えば、１．０秒）までに当該扉を通過して移動するプレイヤキャラクタ４２１が存在しなければ、当該扉は閉じ、再び前に存在したエリア４０２へと戻るためには、その扉の前で、プレイヤキャラクタ４２１に開扉行動をさせ、扉を開いて移動させる。
【００５０】
そして、フィールド４００にはこのような扉として、シナリオ扉４１１及びクライアント扉４１２の何れかが設けられている。シナリオ扉４１１とは、そのシナリオ扉４１１を通じて、プレイヤキャラクタ４２１がエリア４０２間を移動できるようになることで、このオンラインゲームの全体の進行に影響するものであり、後述する所定の条件が満たされるまでは施錠されている。つまり、施錠されているシナリオ扉４１１を通じた、プレイヤキャラクタ４２１のエリア４０２間の移動はできないものとなっている。
【００５１】
そして、所定の条件が満たされた場合には、シナリオ扉４１１は解錠され、プレイヤキャラクタ４２１が異なるエリア４０２へと移動することができるようになる。このような所定の条件が満たされたか否かの判定は、サーバ装置２００によって行われ、そのシナリオ扉４１１が解錠されているか否か、および開閉状態（シナリオ扉４１１が開いているか、閉じているか）の管理も行われている（後で詳述する）。
【００５２】
一方、クライアント扉４１２とは、そのクライアント扉４１２を通じて、プレイヤキャラクタ４２１がエリア４０２間を移動できるようになることで、このオンラインゲームの全体の進行に影響するものではなく、プレイヤキャラクタは、このクライアント扉４１２を通じて繋がるエリア４０２間を自由に移動できる。
【００５３】
また、このように設けられたエリア４０２には、複数のプレイヤキャラクタ４２１以外にも、複数の敵キャラクタ４２２と、宝箱４２３が存在している。敵キャラクタ４２２は、プレイヤキャラクタ４２１がこの敵キャラクタ４２２とバトルをすることによって倒すことができるものとなっている。
【００５４】
これら複数の敵キャラクタ４２２の中には、倒すことがシナリオ扉４１１を解錠するための条件として定められている敵キャラクタ４２２が存在している。そのような敵キャラクタ４２２を倒すことができれば、その条件に対応したシナリオ扉４１１が解錠され、そのシナリオ扉４１１を通じて繋がる異なるエリア４０２へと、プレイヤキャラクタ４２１を移動させることができるようになる。
【００５５】
また、宝箱４２３は、プレイヤキャラクタ４２１をその付近まで移動させることによって、開けることができ、そのプレイヤキャラクタ４２１は開けた宝箱４２３に対応したアイテムを得ることができ、そして、そのプレイヤキャラクタ４２１が所持するアイテム（以下、「所持アイテム」とする）とすることができる。フィールド４００上に存在する複数の宝箱４２３で得られるアイテムの中には、シナリオ扉４１１を解錠するための条件として定められた、カギが含まれる。
【００５６】
このカギをプレイヤキャラクタ４２１が所持した状態で、当該プレイヤキャラクタ４２１に、カギを所持することが条件となっているシナリオ扉４１１の前に移動させ、開扉の行動を行わせると、当該シナリオ扉４１１を解錠することができる。
【００５７】
このように、プレイヤは、自己のプレイヤキャラクタ４２１（以下、「自プレイヤキャラクタ４２１」とする）に、シナリオ扉４１１、或いはクライアント扉４１２を開かせることで、エリア４０２間を移動させることができ、これら一連の動作を、ビデオゲーム装置１００の表示画面１２２を通して見ることができる。一方、フィールド４００には複数の他のプレイヤによって操作されるプレイヤキャラクタ４２１（以下、「他プレイヤキャラクタ４２１」とする）も同様に、シナリオ扉４１１、或いはクライアント扉４１２を開き、エリア４０２間を移動している。
【００５８】
このような他プレイヤキャラクタ４２１の様子は、表示画面１２２において見ることができるものであり、サーバ装置２００で管理され、１．０秒毎に送信される当該他プレイヤキャラクタ４２１の位置に関する情報を基に生成された画像によって、表示画面１２２に表示されるものとなる（後で詳述する）。また、このように管理されるプレイヤキャラクタ４２１の位置の情報は、このオンラインゲームに参加する全てのビデオゲーム装置１００からサーバ装置２００に対して、例えば０．５秒毎の間隔で送信されている。
【００５９】
次にこの実施の形態にかかるオンラインゲームを進行させるため、サーバ装置２００において管理されるデータ、及びビデオゲーム装置１００において記憶されるデータについて説明する。図６は、この実施の形態にかかるオンラインゲームを実行させるために、サーバ装置２００のＲＡＭ２０５（またはＨＤＤ２０７）において管理されるテーブルを示す図である。
【００６０】
図５（ａ）は、フィールド４００における全てのプレイヤキャラクタ４２１、および敵キャラクタ４２２の位置に係る情報を管理するためのフィールドキャラクタテーブル５００であり、図５（ｂ）は、フィールド４００に存在する全てのシナリオ扉４１１の、解錠条件、及び解錠されたか否かを管理するためのシナリオ扉管理テーブル５１０である。図５（ａ）に示すフィールドキャラクタテーブル５００には、フィールド４００に存在する全てのキャラクタ毎にキャラクタＩＤ５０１と、そのフィールド４００上の位置情報５０２とが記憶される。
【００６１】
キャラクタＩＤ５０１は、各プレイヤのプレイヤキャラクタ４２１、及び敵キャラクタ４２２を一意に識別するための識別情報である。また、位置情報５０２は、プレイヤキャラクタ４２１及び敵キャラクタ４２２のフィールド４００上での位置を示すものである。このフィールドキャラクタテーブル５００の内容は、１．０秒毎にこのオンラインゲームに参加する全てのプレイヤのビデオゲーム装置１００に送信されるサーバ情報の一つである他キャラクタ情報として送信されるものである。
【００６２】
なお、この他キャラクタ情報には、ビデオゲーム装置１００毎に、当該ビデオゲーム装置１００によって操作される自プレイヤキャラクタ４２１の存在するエリア４０２、並びにそれに隣接するエリア４０２に存在している他プレイヤキャラクタ４２１及び敵キャラクタ４２２の位置情報（位置そのものの情報。入力した内容の情報であってもよい）が含まれるものとなっている。そして、フィールドキャラクタテーブル５００に登録される各プレイヤキャラクタ４２１の位置情報５０２は、０．５秒毎にそれぞれのビデオゲーム装置１００から送信されるビデオゲーム情報としてプレイヤキャラクタの位置情報（以下、「プレイヤキャラクタ位置情報」とする）をサーバ装置２００が受信することで、それぞれ更新されるものとなる。
【００６３】
図５（ｂ）に示すシナリオ扉管理テーブル５１０には、フィールド４００に存在する全てのシナリオ扉４１１毎に扉ＩＤ５１１と、解錠条件情報５１２と、解錠フラグ５１３と、開閉フラグ５１４とが記憶される。扉ＩＤ５１１は、シナリオ扉４１１、及びクライアント扉４１２を一意に識別するための識別情報であるが、このシナリオ扉管理テーブル５１０で管理される扉ＩＤ５１１は、シナリオ扉４１１に係るものだけである。解錠条件情報５１２は、シナリオ扉４１１毎に設定されている解錠のための条件を含んだ情報である。
【００６４】
解錠フラグ５１３には、シナリオ扉４１１毎に、解錠されている場合には１が、施錠されている場合には０がそれぞれ設定されている。開閉フラグ５１４には、シナリオ扉４１１毎に、開かれている場合には１が、閉じられている場合には０がそれぞれ設定されている。シナリオ扉管理テーブル５１０の内容のうち、扉ＩＤ５１１と、解錠フラグ５１３と、開閉フラグ５１４とについては、１．０秒毎にこのオンラインゲームに参加する全てのビデオゲーム装置１００に送信されるサーバ情報としてシナリオ扉状態情報が送信されるものである。
【００６５】
そして、解錠条件として敵キャラクタ４２２を倒すことが定められたシナリオ扉４１１の解錠フラグ５１３は、未だに０が設定されていたとき、当該敵キャラクタ４２２が倒されることによって１に更新され、開閉フラグ５１４も１に更新される。また、ビデオゲーム装置１００から送信されるビデオゲーム情報としてシナリオ扉開扉請求情報も送信されるときにおいて、サーバ装置２００で受信されるシナリオ扉開扉請求情報に含まれる開扉の対象となるシナリオ扉４１１につき、条件が満たされるものであれば、そのシナリオ扉４１１の扉ＩＤ５１１に対応する解錠フラグ５１３は１に更新され、開閉フラグ５１４も１に更新される。
【００６６】
このように、ビデオゲーム情報としてシナリオ扉開扉請求情報が送信されるとき、当該シナリオ扉開扉請求情報には、シナリオ扉４１１の扉ＩＤと、後述する所持アイテム情報とが含まれている。その所持アイテム情報の内容が、当該扉ＩＤと対応するシナリオ扉管理テーブル５１０で管理される扉ＩＤ５１１の解錠条件情報５１２が示す通りの条件を満たすものであった場合、当該扉ＩＤ５１１の解錠フラグ５１３が１に更新されるものとなる。
【００６７】
ここで、解錠条件情報５１２が示す通りの条件を満たすとは、例えば、シナリオ扉管理テーブル５１０に記憶される解錠条件情報５１２が「カギを所持」というものであった場合、当該所持アイテム情報の内容にカギが含まれるものであれば、当該解錠条件情報５１２が示す通りの条件を満たすものとなる。一方、当該所持アイテム情報の内容にカギが含まれるものでなければ、解錠請求がされた扉ＩＤ５１１の解錠フラグ５１３は更新されない。
【００６８】
一方、既に解錠されているシナリオ扉４１１を対象としてシナリオ扉開扉請求情報が送信されるとき、当該シナリオ扉開扉請求情報には、シナリオ扉４１１の扉ＩＤのみが含まれており、当該扉ＩＤと同じである、シナリオ扉管理テーブル５１０で管理される扉ＩＤ５１１の解錠フラグ５１３が１であれば、開閉フラグ５１４が１に更新される。
【００６９】
続いて、図６は、ビデオゲーム装置１００において記憶されるデータの構成、及び記憶されるテーブルを示す図である。図６（ａ）には、ビデオゲーム装置１００において記憶されるデータの構成を示し、また、図６（ｂ）には、フィールド４００上の全てのシナリオ扉４１１、及びクライアント扉４１２が解錠されているか否かの状態を示す扉状態テーブル６１０を示す。
【００７０】
図６（ａ）に図示するように、ビデオゲーム装置１００のＲＡＭ１０５（またはＨＤＤ１０７）には、キャラクタＩＤ６０１と、位置情報６０２と、所持アイテム情報６０３と、送信情報バッファ６０４と、他キャラクタ情報バッファＡ６０５と、他キャラクタ情報バッファＢ６０６とが記憶される。
【００７１】
キャラクタＩＤ６０１は、このキャラクタＩＤ６０１が記憶されるビデオゲーム装置１００で操作するプレイヤキャラクタ４２１に固有のものであり、前記した図５（ａ）に示したフィールドキャラクタテーブル５００で管理されるキャラクタＩＤ５０１と対応するものである。このキャラクタＩＤ５０１とキャラクタＩＤ６０１とによって、フィールド４００上で移動中のプレイヤキャラクタ４２１と、それを操作する当該ビデオゲーム装置１００とが一意的に特定されるものとなる。
【００７２】
位置情報６０２は、当該ビデオゲーム装置１００で操作されるプレイヤキャラクタ４２１のフィールド４００上での位置に関する情報を記憶するものであり、プレイヤの入力部１６１の移動操作がされることにより、更新されるものとなる。
【００７３】
所持アイテム情報６０３は、当該ビデオゲーム装置１００で操作されるプレイヤキャラクタ４２１が所持しているアイテムの情報を記憶するものであり、上記した宝箱４２３を開けることにより、シナリオ扉４１１を解錠するためのカギが得られれば、所持アイテム情報６０３には、そのカギにかかる情報が含まれるものとなる。
【００７４】
送信情報バッファ６０４は、プレイヤがプレイヤキャラクタ４２１にシナリオ扉４１１の開扉行動を行わせた場合において、当該ビデオゲーム装置１００から０．５秒毎に送信されるビデオゲーム情報として送信される開扉請求情報を、一時的に記憶させておくためのものであり、開扉請求情報が記憶されていれば、０．５秒毎のタイミングで送信されるビデオゲーム情報に含まれるプレイヤキャラクタ位置情報とともにその開扉請求情報が送信されるものとなる。
【００７５】
他キャラクタ情報バッファＡ６０５及び他キャラクタ情報バッファＢ６０６は、サーバ装置２００から１．０秒毎に送信される他キャラクタ情報について、受信された最新のもの２つを、一時的に記憶させておくためのバッファである（図示はしないが、他キャラクタ情報バッファＡ６０５、Ｂ６０６の何れが最新のものであるかを示す情報がＲＡＭ１０５に記憶されている）。これらの情報は、後述する表示画像生成処理をおこなうために用いられることになり、随時、最新の他キャラクタ情報が受信されれば、すでに、他キャラクタ情報バッファＡ６０５、或いは他キャラクタ情報バッファＢ６０６に記憶されている他キャラクタ情報のうち古いものが、当該最新の他キャラクタ情報によって更新される。
【００７６】
さらに、図６（ｂ）に示すように、ビデオゲーム装置１００には、扉状態テーブル６１０が記憶される。図示するように、扉状態テーブル６１０には、扉ＩＤ６１１と、解錠フラグ６１２と、開閉フラグ６１３が含まれている。
【００７７】
扉ＩＤ６１１とは、フィールド４００に存在する全てのシナリオ扉４１１、及びクライアント扉４１２について、それぞれが一意に識別できるものとなっており、図５（ｂ）に示すシナリオ扉管理テーブル５１０に記憶されるシナリオ扉４１１の扉ＩＤ５１１と、扉状態テーブル６１０のシナリオ扉４１１の扉ＩＤ６１１とは、一意的に対応するものである。このように、シナリオ扉４１１はサーバ装置２００でも扉ＩＤ５１１が管理されるが、クライアント扉４１２は、プレイヤキャラクタ４２１に自由に開かせることができる扉であるため、ビデオゲーム装置１００でのみ、その扉ＩＤが管理されるものとなる。
【００７８】
解錠フラグ６１２には、扉毎に、解錠されている場合には１が、施錠されている場合には０がそれぞれ設定されているが、クライアント扉４１２は、常に自由にプレイヤキャラクタ４２１に開かせることが可能なものであるため、クライアント扉４１２に対応する解錠フラグ６１２は常に１が設定されている。なお、シナリオ扉４１１であるかクライアント扉４１２であるかは、扉ＩＤ６１１を参照すれば区別できるものとなっている。
【００７９】
一方、シナリオ扉４１１に対応する解錠フラグ６１２は、サーバ装置から１．０秒毎にサーバ情報として送信されるシナリオ扉状態情報の内容、つまり、図５（ｂ）に示すシナリオ扉管理テーブル５１０における、シナリオ扉４１１毎に設定される解錠フラグ５１３の値に基づいて更新されるものとなる。
【００８０】
開閉フラグ６１３には、扉毎に、開かれている場合には１が、閉じられている場合には０がそれぞれ設定されている。クライアント扉４１２は、常に自由にプレイヤキャラクタ４２１に開かせることが可能なものであるため、自プレイヤキャラクタ４２１がクライアント扉４１２に対して開扉行動を行ったとき、或いは他プレイヤキャラクタ４２２がクライアント扉４１２を通過するときには、当該クライアント扉４１２の開閉フラグ６１３は１に更新される。ここで、すでに開扉されているクライアント扉４１２を他プレイヤキャラクタ４２１が通過する場合には当該クライアント扉４１２の開閉フラグ６１３は１のまま維持される。
【００８１】
一方、シナリオ扉４１１に対応する開閉フラグ６１３は、解錠フラグ６１２と同様に、サーバ装置から１．０秒毎にサーバ情報として送信されるシナリオ扉状態情報の内容、つまり、図５（ｂ）に示すシナリオ扉管理テーブル５１０における、シナリオ扉４１１毎に設定される開閉フラグ５１４の値に基づいて更新される。
【００８２】
すなわち、シナリオ扉４１１に関して、１．０秒毎に、図５（ｂ）に示すシナリオ扉管理テーブル５１０の解錠フラグ５１３、及び開閉フラグ５１４に設定されたそれぞれの値と、図６（ｂ）に示す扉状態テーブル６１０の解錠フラグ６１２及び開閉フラグ６１３に設定されたそれぞれの値とは同じ値で対応している。
【００８３】
以下、この実施の形態にかかるサーバ装置２００及びビデオゲーム装置１００において、それぞれ実行される処理について説明する。図７（ａ）は、サーバ装置２００において実行される処理を示すフローチャートである。
【００８４】
サーバ装置２００の制御部２０３は、各々のビデオゲーム装置１００から送信されるビデオゲーム情報を受信して、そこに含まれるプレイヤキャラクタ位置情報から、当該ビデオゲーム装置１００で操作されるプレイヤキャラクタ４２１に対応する、フィールドキャラクタテーブル５００における位置５０２を更新するキャラクタ位置更新処理（後で詳述する）を実行する（ステップＳ１０１）。
【００８５】
その後、制御部２０３は、ビデオゲーム情報に含まれるシナリオ扉の開扉請求情報によってシナリオ扉４１１を開くための開扉設定、および一定時間キャラクタが通過していないシナリオ扉４１１を閉じるための閉扉設定を各シナリオ扉４１１に設定するためのシナリオ扉開閉状態処理（後で詳述する）を実行する（ステップＳ１０２）。
【００８６】
その後、制御部２０３は、このオンラインゲームを進行させるためのゲーム処理として、バトルの進行等を行う（ステップＳ１０３）。その後、制御部２０３は、サーバ装置２００における処理の開始から、或いは以前の１．０秒経過のときから、１．０秒が経過したか否かを判定する（ステップＳ１０４）。１．０秒経過したと判定されれば、制御部２０３は、他キャラクタ情報、及びシナリオ扉状態情報を含んだサーバ情報をこのオンラインゲームに参加する全てのプレイヤのビデオゲーム装置１００に対して送信する（ステップＳ１０５）。そして、ステップＳ１０４において１．０秒が経過していないと判定された場合、または、ステップＳ１０５においてサーバ情報が送信された後、ステップＳ１０１の処理に戻る。
【００８７】
図７（ｂ）は、サーバ装置２００において実行される処理のうち、キャラクタ位置更新処理を示すフローチャートである。まず、サーバ装置２００の制御部２０３は、１または複数のビデオゲーム情報としてプレイヤキャラクタ位置情報が受信されたか否かを判定する（ステップＳ１１１）。プレイヤキャラクタ位置情報が受信されていれば、その各々のプレイヤキャラクタ位置情報のうち、異常のあるプレイヤキャラクタ位置情報があるか否かを判定する（ステップＳ１１２）。ここで、異常のあるプレイヤキャラクタ位置情報とは、受信した位置情報の位置によって、プレイヤキャラクタ４２１の位置が、解錠され、開かれていないシナリオ扉４１１を通過した位置となるような場合である。
【００８８】
このように、異常のあるプレイヤキャラクタ位置情報があると判定されれば、制御部２０３は、サーバ装置２００で管理されるフィールドキャラクタテーブル５００において、当該プレイヤキャラクタ位置情報にかかるプレイヤキャラクタ４２１のキャラクタＩＤに対応するレコードの位置情報５０２を、その受信したプレイヤキャラクタ位置情報の位置によってではなく、その解錠され、開かれていないシナリオ扉４１１の手前の位置によって更新する（ステップＳ１１３）。
【００８９】
ステップＳ１１２において、受信したプレイヤキャラクタ位置情報のうち異常のあるプレイヤキャラクタ位置情報がないと判定された場合、またはステップＳ１１３の後、制御部２０３は、異常のあるプレイヤキャラクタ位置情報ではないプレイヤキャラクタ位置情報にかかるプレイヤキャラクタ４２１のキャラクタＩＤに対応するレコードの位置情報５０２を、その受信したプレイヤキャラクタ位置情報の位置によって更新する（ステップＳ１１４）。ステップＳ１１１においてプレイヤキャラクタ位置情報が受信されていないと判定された場合、またはステップＳ１１４において位置情報５０２を更新した後、制御部２０３は、キャラクタ位置情報更新処理を終える。
【００９０】
図７（ｃ）は、サーバ装置２００において実行される処理のうち、シナリオ扉状態情報更新処理を示すフローチャートである。まず、サーバ装置２００の制御部２０３は、受信したビデオゲーム情報として開扉請求情報が受信されているか否かを判定する（ステップＳ１２１）。開扉請求情報が受信されていると判定されれば、制御部２０３は、その開扉請求情報に異常があるか否かを判定する（ステップＳ１２２）。
【００９１】
開扉請求情報に異常がないと判定されれば、制御部２０３は、開扉請求情報に含まれる開扉を請求するシナリオ扉４１１がすでに解錠されているか否か（シナリオ扉管理テーブル５１０で管理される解錠フラグが１となっているか否か）を判定する（ステップＳ１２３）。開扉を請求するそのシナリオ扉４１１が解錠されていないと判定されれば、制御部２０３は、その解錠請求情報に含まれるシナリオ扉の扉ＩＤ、所持アイテム情報が、当該扉ＩＤに対応するシナリオ扉管理テーブル５１０で管理されるＩＤ５１１のレコードにおける解錠条件情報５１２に示される条件を満たしているか否かを判定する（ステップＳ１２４）。
【００９２】
条件を満たしていると判定されれば、制御部２０３は、シナリオ扉管理テーブル５１０で管理される当該シナリオ扉４１１の解錠フラグ５１３を１に更新することで、開扉が請求されているシナリオ扉４１１の解錠設定を行う（ステップＳ１２５）。そして、開扉請求情報において開扉を請求するシナリオ扉４１１について、ステップＳ１２３において、すでに解錠されているものと判定された場合、またはステップＳ１２５において、解錠設定がされた後には、制御部２０３は、シナリオ扉管理テーブル５１０で管理される当該シナリオ扉４１１の開閉フラグ５１４を１に更新することで、シナリオ扉４１１の開扉設定を行う（ステップＳ１２６）。
【００９３】
ステップＳ１２１において開扉請求情報が受信されていないと判定された場合、ステップＳ１２２において開扉請求情報に異常があると判定された場合、ステップＳ１２４においてシナリオ扉４１１を解錠する条件を満たしていないと判定された場合、またはステップＳ１２６においてシナリオ扉４１１の開扉設定を行った後には、制御部２０３は、フィールド４００上の全てのシナリオ扉４１１のうち、一定時間（例えば、１．０秒）にかけて開扉されたままのシナリオ扉４１１があるか否かの判定を行う（ステップＳ１２７）。
【００９４】
開扉されたままのシナリオ扉４１１がないと判定されれば、制御部２０３は、シナリオ扉状態情報更新処理を終える。一方、開扉されたままのシナリオ扉４１１があると判定されれば、制御部２０３は、当該開扉されたままのシナリオ扉４１１について、シナリオ扉管理テーブル５１０で管理される開閉フラグ５１４を０に更新することで、当該シナリオ扉４１１の閉扉設定を行う（ステップＳ１２８）。そして、シナリオ扉状態情報更新処理を終える。
【００９５】
図８は、ビデオゲーム装置１００において実行される処理を示すフローチャートである。処理を開始すると、まず、ビデオゲーム装置１００の制御部１０３は、ビデオゲーム装置１００における処理の開始から、或いは以前の３０分の１秒の経過のときから、３０分の１秒が経過したか否かを判定する（ステップＳ２０１）。
【００９６】
３０分の１秒が経過したと判定されれば、制御部１０３は、サーバ装置２００から送信されたサーバ情報を受信したか否かを判定する（ステップＳ２０２）。サーバ情報を受信したと判定されれば、制御部１０３は、サーバ情報として受信した他キャラクタ情報をビデオゲーム装置１００に記憶し、その他キャラクタ情報に含まれる他プレイヤキャラクタ４２１の位置に関連する処理を実行する他キャラクタ情報処理（後で詳述する）を行う（ステップＳ２０３）。
【００９７】
その後、サーバ情報として受信したシナリオ扉状態情報に含まれる、図５（ｂ）に示したシナリオ扉管理テーブル５１０で管理される解錠フラグ５１３、及び開閉フラグ５１４の値によって、図６（ｂ）に示した扉状態テーブル６１０のシナリオ扉４１１に関する解錠フラグ６１２、及び開閉フラグ６１３の値を更新する（ステップＳ２０４）。
【００９８】
ステップＳ２０２においてサーバ情報を受信していないと判定された場合、またはステップＳ２０４において、解錠フラグ６１２、及び開閉フラグ６１３を更新した後には、制御部１０３は、プレイヤによる入力部１６１の操作により、何れかの入力が検出されたか否かの判定を行う（ステップＳ２０５）。入力が検出されたと判定されれば、制御部１０３は、検出された入力が、プレイヤキャラクタ４２１に開扉行動をさせるための入力であったか否かを判定する（ステップＳ２０６）。
【００９９】
開扉行動をさせるための入力であったと判定されれば、制御部１０３は、当該開扉行動がシナリオ扉４１１に対して実行されたものであったか否かの判定を行う（ステップＳ２０７）。開扉行動がシナリオ扉４１１に対して実行されたものでないと判定された場合（クライアント扉４１２に対して実行された場合）、制御部１０３は、その開扉行動が実行されたクライアント扉４１２の開扉設定（開扉フラグ６１３を１に更新）を行う（ステップＳ２０８）。
【０１００】
ステップＳ２０７において、開扉行動がシナリオ扉４１１に対して実行されたものであると判定された場合、制御部１０３は、ビデオゲーム装置１００に記憶される、当該シナリオ扉４１１の扉ＩＤと、当該シナリオ扉４１１がまだ解錠されていない（解錠フラグ６１２に０が設定されている）場合には所持アイテム情報６０３の内容とを含めた開扉請求情報を、送信情報バッファ６０４に記憶する（ステップＳ２０９）。
【０１０１】
ステップＳ２０６において、開扉行動をさせるための入力でないと判定された場合（移動をさせるための入力であった場合）、ステップＳ２０８において、クライアント扉４１２の開扉設定が行われた後、またはステップＳ２０９において、開扉請求情報が送信情報バッファ６０４に記憶された後には、制御部１０３は、検出された入力を基に、ビデオゲーム装置１００に記憶される位置情報６０２を更新する（ステップＳ２１０）。
【０１０２】
ステップＳ２０５において、入力が検出されなかったと判定された場合、またはステップＳ２１０において、位置情報６０２が更新された場合には、制御部１０３は、表示画像生成処理（後で詳述する）を行う（ステップＳ２１１）ステップＳ２０１において、３０分の１秒が経過していないと判定された場合、またはステップＳ２１１において、表示画像生成処理を行った場合には、制御部１０３は、ビデオゲーム装置１００における処理の開始から、或いは以前の０．５秒の経過のときから、０．５秒が経過したか否かを判定する（ステップＳ２１２）。０．５秒が経過していないと判定されれば、制御はステップＳ２０１の処理へと戻る。
【０１０３】
ステップＳ２１２において、０．５秒が経過したと判定されれば、制御部１０３は、ビデオゲーム装置１００に記憶される位置情報６０２と、送信情報バッファ６０４に解錠請求情報が記憶されている場合には、当該解錠請求情報とを、ビデオゲーム情報としてサーバ装置２００に送信する（ステップＳ２１３）。そして、ステップＳ２０１の処理に戻る。
【０１０４】
次に図９（ａ）は、ビデオゲーム装置１００において実行される他キャラクタ情報記憶処理を示すフローチャートである。まず、ビデオゲーム装置１００の制御部１０３は、受信した他キャラクタ情報を他キャラクタ情報バッファＡ６０５、或いは他キャラクタ情報バッファＢ６０６のうち時間的に古い他キャラクタ情報が記憶されている方に記憶（更新）する（ステップＳ２２１）。続いて、他キャラクタ情報バッファＡ６０５、及び他キャラクタ情報バッファＢ６０６に記憶される１つ前に受信した他キャラクタ情報と、新たに受信された他キャラクタ情報とをチェックする(ステップＳ２２２）。続いて、制御部１０３は、チェックされた最新の２つの他キャラクタ情報における他プレイヤキャラクタ４２１について、クライアント扉４１２を通過するものが存在するか否かを判定する（ステップＳ２２３）。
【０１０５】
クライアント扉４１２を通過する他プレイヤキャラクタ４２１が存在すると判定されれば、制御部１０３は、当該他プレイヤキャラクタ４２１が通過するクライアント扉４１２に、開扉状態にあるクライアント扉４１２（前回の他キャラクタ情報受信の時から開扉されたままの扉）が含まれているか否かを判定する（ステップＳ２２４）。開扉状態にあるクライアント扉４１２が含まれていると判定されれば、制御部１０３は、当該クライアント扉４１２について、扉状態テーブル６１０で管理される開閉フラグ６１３を１のままに設定しておくことで、開扉状態のまま維持する当該クライアント扉４１２の開扉維持設定を行う（ステップＳ２２５）。
【０１０６】
また、制御部１０３は、ステップＳ２２４において、開扉状態にあるクライアント扉４１２が含まれていないと判定した場合には、他プレイヤキャラクタ４２１が通過するクライアント扉４１２について、扉状態テーブル６１０で管理される開閉フラグ６１３を１に更新することで、当該クライアント扉４１２の開扉設定を行う（ステップＳ２２６）。一方、ステップＳ２２５において、開扉状態を維持するクライアント扉４１２について開扉維持設定がされた後には、当該クライアント扉４１２以外であって、他プレイヤキャラクタ４２１が通過するクライアント扉４１２についても、ステップＳ２２６において開扉設定を行う。
【０１０７】
ステップＳ２２３において、クライアント扉４１２を通過する他プレイヤキャラクタ４２１が存在しないと判定された場合、またはステップＳ２２６において開扉設定を行った後には、制御部１０３は、フィールド４００上の全てのクライアント扉４１２のうち、一定時間（例えば、１．０秒）にかけて開扉されたままのクライアント扉４１２があるか否かの判定を行う（ステップＳ２２７）。
【０１０８】
開扉されたままのクライアント扉４１２がないと判定されれば、制御部１０３は、他キャラクタ情報処理を終える。一方、開扉されたままのクライアント扉４１２があると判定されれば、制御部１０３は、当該開扉されたままのクライアント扉４１２について、扉状態管理テーブル６１０で管理される開扉フラグ６１３を０に更新することで、当該クライアント扉４１２の閉扉設定を行う（ステップＳ２２８）。そして、他キャラクタ情報処理を終了する。
【０１０９】
図９（ｂ）は、ビデオゲーム装置１００において実行される表示画像生成処理を示すフローチャートである。まず、ビデオゲーム装置１００の制御部１０３は、ビデオゲーム装置１００の他キャラクタ情報バッファＡ６０５、および他キャラクタ情報バッファＢ６０６に記憶された最新の２つの他キャラクタ情報から、他プレイヤキャラクタ４２１毎にプレイヤキャラクタ位置情報を順次抽出する（ステップＳ２４１）。
【０１１０】
続いて、制御部１０３は、当該他プレイヤキャラクタ４２１が当該位置を抽出した最新の２つの他キャラクタ情報のうち、最新の他キャラクタ情報にのみ含まれているもの（当該最新の他キャラクタ情報において、初めて存在が認識された他プレイヤキャラクタ４２１。以下、「初登場他プレイヤキャラクタ４２１」とする。）であるか否かを判定する（ステップＳ２４２）。
【０１１１】
例えば、このオンラインゲームに新たなプレイヤが参加してきた場合において、一つ前の他キャラクタ情報が受信されてから、最新の他キャラクタ情報が受信されるまでの間に、当該プレイヤによって操作される他プレイヤキャラクタ４２１が、このような初登場他プレイヤキャラクタ４２１として、他のビデオゲーム装置１００において認識されるものとなる。初登場他プレイヤキャラクタ４２１であると判定されれば、制御部１０３は、当該初登場他プレイヤキャラクタ４２１の位置を、抽出した最新の２つの他キャラクタ情報のうち、最新の他キャラクタ情報に含まれるプレイヤキャラクタ位置情報のもので決定する（ステップＳ２４３）。
【０１１２】
ステップＳ２４２において、初登場他プレイヤキャラクタ４２１でないと判定されれば、制御部１０３は、当該他プレイヤキャラクタ４２１について、抽出したプレイヤキャラクタ位置情報から位置を決定する（ステップＳ２４４）。
【０１１３】
ステップＳ２４３、或いはステップＳ２４４において、当該抽出されたプレイヤキャラクタ位置情報から他プレイヤキャラクタ４２１の位置が決定されると、他キャラクタ情報バッファＡ６０５、および他キャラクタ情報バッファＢ６０６に記憶された最新の２つの他キャラクタ情報にプレイヤキャラクタ位置情報が未だに抽出されていない他プレイヤキャラクタ４２１があるか否かを判定する（ステップＳ２４５）。
【０１１４】
プレイヤキャラクタ位置情報が未だに抽出されていない他プレイヤキャラクタ４２１があると判定されれば、処理をステップＳ２４１に戻す。ステップＳ２４５において、プレイヤキャラクタ位置情報が未だに抽出されていない他プレイヤキャラクタ４２１はいないと判定されれば、他プレイヤキャラクタ４２１が通過するシナリオ扉４１１、或いはクライアント扉４１２に対して、扉状態テーブル６１０で管理する開閉フラグ６１３を基にシナリオ扉４１１、クライアント扉４１２の位置を決定する（ステップＳ２４６）。
【０１１５】
ここで、開扉維持設定（開閉フラグ６１３が１のまま更新）がされた扉の位置は、当該扉の開扉状態が維持される位置で決定される。また、開扉設定（開閉フラグ６１３が１で更新）がされた扉の位置は、例えば、当該扉が、当該開扉設定された直後の１フレームから次の２フレーム分の期間（計１０分の１秒間）で開扉状態となるように、それぞれのフレーム（３０分の１秒毎）で位置が決定されるものとなる。一方、閉扉設定（開閉フラグ６１３が０で更新）がされた扉の位置は、例えば、当該他キャラクタ情報記憶処理が行われた直後における１フレームから、次の２フレーム分の期間（計１０分の１秒間）で当該扉が閉じられる状態となるように、それぞれのフレーム（３０分の１秒毎）で位置が決定されるものとなる。
【０１１６】
各々他プレイヤキャラクタ４２１について決定された位置と、自プレイヤキャラクタ４２１の位置と、シナリオ扉４１１、およびクライアント扉４１２の位置とでそれらの表示画像を合成し、ビデオゲーム装置１００の表示画面１２２に表示するための表示画像を生成する（ステップＳ２４７）。そして、表示画像生成処理を終了する。
【０１１７】
つまり、この表示画像生成処理では、まず、サーバ装置２００から送信された他キャラクタ情報は、その送られてきた順番に他キャラクタ情報バッファＡ６０５、他キャラクタ情報バッファＢ６０６に記憶されるものとなる。そして、リアルタイムで生成されるプレイヤキャラクタ４２１の画像に対して、これらサーバ装置２００から送信され、ビデオゲーム装置１００において受信・記憶された最新の他キャラクタ情報と、その１．０秒前に受信した他キャラクタ情報を基に画像を生成する。
【０１１８】
よって、ビデオゲーム装置１００では、他キャラクタ情報を受信するタイミング（サーバ装置２００から送信されるタイミング）である１．０秒の遅延時間で、他キャラクタ情報によって生成された画像が表示画面１２２に表示されるものとなる。
【０１１９】
ここで、１．０秒間隔での他キャラクタ情報の送信であり、その１．０秒の期間の他キャラクタ情報は受信されないため、１．０秒前の他キャラクタ情報、及び最新の他キャラクタ情報から、その間の変化が滑らかになるように、その期間については、他プレイヤキャラクタ４２１の位置の変化を３０分の１秒毎の等間隔に分割して補間し、その３０分の１秒毎に分割された位置の情報を基に、表示画面１２２に表示される画像を生成するものとなっている。 そして、他キャラクタ情報に扉を通過する他プレイヤキャラクタ４２１が存在する場合には、その生成された画像に、当該他プレイヤキャラクタ４２１の通過する扉を開く画像を合成し、当該扉がすでに開扉状態にあれば、開扉状態を維持する画像を合成する。
【０１２０】
図１０は、自己のビデオゲーム装置１００の表示画面１２２に表示される、フィールド４００における他プレイヤキャラクタ４２１の位置の推移と開扉とを模式的に示す図である。ここでは、ある他プレイヤキャラクタ４２１の位置が、クライアント扉４１２を越えて異なるエリア４０２へとその位置が変化していくものであると、１．０秒毎にサーバ装置２００から送信される他キャラクタ情報により抽出されたときの他プレイヤキャラクタ４２１の位置の推移と開扉とが示される。
【０１２１】
図１０（ａ）に示すように、フィールド４００上に存在する他プレイヤキャラクタ４２１は、１．０秒ごとに送信される他キャラクタ情報により、図１０（ｂ）に示すように、その位置が変化するものとなる。ここで、１．０秒ごとに送信される他キャラクタ情報により抽出される他プレイヤキャラクタ４２１の位置は、間隔の空いたものであるが、実際に表示画面１２２に表示される他プレイヤキャラクタ４２１は、その位置が、受信した最新の２つの他キャラクタ情報を基に、３０分の１秒間隔で補間され、間隔の短いスムーズな移動をしている様子が表示されるものとなる。
【０１２２】
そして、次の１．０秒の経過で、クライアント扉４１２を越えて異なるエリア４０２へと移動した位置となる他キャラクタ情報が受信されると、図１０（ｃ）に示すように、次の１．０秒の経過までの３０分の１秒間隔の位置を補間して、当該クライアント扉４１２を越えた異なるエリア４０２の位置まで移動させるとともに、その移動の状態に合わせたクライアント扉４１２の開扉の表示がされるものとなる。
【０１２３】
以上説明したように、この実施の形態にかかるオンラインゲームでは、ビデオゲーム装置１００のプレイヤにより操作される自プレイヤキャラクタ４２１以外の他プレイヤキャラクタ４２１のフィールド４００における位置を示すプレイヤキャラクタ位置情報を含む他キャラクタ情報が、１．０秒毎のタイミングでサーバ装置２００からビデオゲーム装置１００に送信される。ビデオゲーム装置１００では、前回の他キャラクタ情報に応じた表示画像より後から、最新の他キャラクタ情報に応じた表示画像よりも前までを補間する補間画像を順次生成して、ゲームの動画像を表示装置１２１の表示画面１２２に表示させるものとなっている。
【０１２４】
ところで、各ビデオゲーム装置１００のプレイヤにより操作されるプレイヤキャラクタ４２１を含む複数のプレイヤキャラクタ４２１が移動するフィールド４００は、壁４０１によってエリア４０２毎に区分けされ、そのエリア４０２間の移動は扉（シナリオ扉４１１及びクライアント扉４１２）を通じてのみ行える。そして、自プレイヤキャラクタ４２１だけでなく、他プレイヤキャラクタ４２１もこの扉を通過するとき、ビデオゲーム装置１００の表示画面１２２には、扉を開いて通過する自プレイヤキャラクタ４２１、および／または他プレイヤキャラクタ４２１の様子が表示される。
【０１２５】
ビデオゲーム装置１００でこのオンラインゲームを行うためのデータには、プレイヤキャラクタ４２１が扉を開いて通過する様子を表示するためのグラフィックデータが含まれているものの、サーバ装置２００でオンラインゲームを行うためのデータには、このようなグラフィックデータが含まれていないばかりか、扉の開閉のためのデータも含まれていない（但し、シナリオ扉４１１については、施錠／解錠のためのデータは含まれている）。
【０１２６】
もっとも、ビデオゲーム装置１００では、最新のプレイヤキャラクタ位置情報で示される他プレイヤキャラクタ４２１のフィールド４００上の位置と、１つ前に受信したプレイヤキャラクタ位置情報で示される他プレイヤキャラクタ４２１のフィールド４００上の位置とを比較して、扉を通過する位置への移動があったか否かを判定している。そして、扉を通過する位置への移動があった場合には、順次生成する補間画像（他プレイヤキャラクタ４２１の位置が少しずつ変わる）において、他プレイヤキャラクタ４２１が通過する間、扉を開いている画像が生成されるものとなっている。
【０１２７】
これにより、サーバ装置２００でプレイヤキャラクタ４２１が扉を開いているかどうかの管理を行っていなくても、ビデオゲーム装置１００の表示画面１２２において、他のプレイヤキャラクタ４２１が扉をすり抜けてエリア４０２間を移動してしまうというような不自然な画像が表示されることを防ぐことができる。また、サーバ装置２００で扉が開かれているかどうかの管理を行わなくてもよいので、サーバ装置２００において必要な記憶容量と処理負荷を少なくすることができ、その結果として、ゲームに参加可能な最大プレイヤキャラクタ数を多くすることができる。
【０１２８】
また、そのように開扉された扉について、ビデオゲーム装置１００では、さらに新たに受信されたプレイヤキャラクタ位置情報に基づいて当該扉を通る他プレイヤキャラクタ４２１がいるか否かを判定している。そして、その開いている扉を通る他プレイヤキャラクタ４２１が存在しない場合には、当該扉に対して閉扉設定を行い閉じた状態にする。これにより、扉が自動的に開閉する様子を示す表示画像を生成することが可能となる。
【０１２９】
本発明は、上記の実施の形態に限られず、種々の変形、応用が可能である。以下、本発明に適用可能な上記の実施の形態の変形態様について説明する。
【０１３０】
上記実施の形態では、シナリオ扉４１１を開扉するとき、当該シナリオ扉４１１が解錠されているか否かに関わらず、ビデオゲーム装置１００はサーバ装置２００に対してシナリオ扉開扉請求情報を送信し、それを基にサーバ装置２００側の処理で当該シナリオ扉４１１の開扉設定を行うようにしていた。また、シナリオ扉４１１を閉扉するときも、所定の時間内にプレイヤキャラクタ４２１が通過しないことを判定した後、サーバ装置２００側の処理で当該シナリオ扉４１１の閉扉設定をするようにしていた。
【０１３１】
これに対して、本発明ではサーバ装置２００におけるシナリオ扉４１１の管理については、解錠されているか否かの管理だけを行う（開閉の管理を行わない）ようにしてもよい。そして、解錠された後のシナリオ扉４１１は、ビデオゲーム装置１００において管理しているクライアント扉４１２の開閉と同様に管理するようにしてもよい。
【０１３２】
具体的には、サーバ装置２００のシナリオ扉管理テーブル５１０においては、扉ＩＤ５１１、条件情報５１２、及び解錠フラグ５１３の情報を管理して、シナリオ扉４１１に対しては開扉設定、開扉維持設定、または閉扉設定を実行（開閉フラグ５１４の更新）することなく、ビデオゲーム装置１００には解錠されたか否かの情報をシナリオ扉状態情報として送信する。このシナリオ扉状態情報を受信したビデオゲーム装置１００では、それを基に、扉状態テーブル６１０におけるシナリオ扉４１１の解錠フラグ６１２が１に更新され、同時に開閉フラグ６１３も１に更新されて当該シナリオ扉４１１の開扉設定が行われる。
【０１３３】
このように、シナリオ扉４１１の解錠がされると、以降の当該シナリオ扉４１１の開閉にかかる処理は、クライアント扉４１２に係る処理と同様に実行する。例えば、自プレイヤキャラクタ４２１の開扉行動に対しては、図８に示すゲーム装置処理のステップＳ２０７の判定がシナリオ扉４１１であるとの判定がされた後、ビデオゲーム装置１００の制御部１０３は、さらに当該シナリオ扉４１１が解錠されたか否かの判定を行い、解錠されていないと判定されればステップＳ２０９の処理へ、解錠されているものと判定されればステップＳ２０８の処理で当該シナリオ扉４１１の開扉設定を行う。
【０１３４】
一方、他プレイヤキャラクタ４２１が解錠されたシナリオ扉４１１を通過するときは、制御部１０３は、他キャラクタ情報処理（図９（ａ））のステップＳ２２３〜Ｓ２２８において実行されるクライアント扉４１２にかかる処理と同じ処理を、当該解錠されたシナリオ扉４１１に対して実行する。このため、サーバ装置２００からビデオゲーム装置１００に、シナリオ扉４１１が解錠状態にあるか否かについてシナリオ扉状態情報を送信すれば、ビデオゲーム装置１００では、クライアント扉４１２と同様に、当該シナリオ扉４１１を開く画像を表示画面１２２において表示することができる。つまり、サーバ装置２００では、施錠／解錠については管理する必要があるものの、シナリオ扉４１１についても開閉を管理する必要がないので、さらに処理負荷を小さくすることができる。
【０１３５】
上記実施の形態では、シナリオ扉４１１を解錠する条件として、プレイヤキャラクタ４２１がカギを所持している状態で開扉行動を行わせること、或いは敵キャラクタ４２２を倒すことによって、シナリオ扉４１１が解錠されるものとしていたが、これに限らず、例えば、プレイヤキャラクタ４２１にシナリオ扉４１１を解錠するためのスイッチを押させたり、或いはプレイヤキャラクタ４２１の種類（例えば、性別、大人・子供など）によって解錠できたりするものであってもよい。
【０１３６】
例えば、スイッチがプレイヤキャラクタ４２１に押されることを条件として解錠されるシナリオ扉４１１の場合には、プレイヤキャラクタ４２１を当該スイッチのあるフィールド４００上の場所まで移動させ、プレイヤの入力部１６１の操作でプレイヤキャラクタ４２１に当該スイッチを押す行動をさせる。
【０１３７】
このスイッチを押す行動に関する情報が、当該スイッチに対応するシナリオ扉４１１のＩＤと併せてシナリオ扉開扉請求情報としてサーバ装置２００へと送信されるものとなり、それが、扉を開ける条件を満たすものとサーバ装置２００で判定されたときに、当該シナリオ扉４１１は解錠される。プレイヤキャラクタ４２１の種類であれば、シナリオ扉の前で開扉行動を行い、当該プレイヤキャラクタ４２１のものとして記憶されるステータス等の情報を、当該シナリオ扉４１１のＩＤと併せてシナリオ扉開扉請求情報としてサーバ装置２００へと送信するものとなる。
【０１３８】
上記の実施の形態では、エリア４０２間の移動では常に、シナリオ扉４１１、或いはクライアント扉４１２の何れかを通って、移動するものとしていた。しかし、これに限らず、プレイヤキャラクタ４２１が所定のアイテム、例えば、壁４０１をよじ登るためのかぎ爪などを持っていた場合には、扉を通らずともエリア４０２間の移動ができるようにしてもよい。
【０１３９】
このとき、例えば、壁４０１で仕切られたエリア４０２の間に設置された扉（シナリオ扉４１１及びクライアント扉４１２）の代わりに、または扉とともに、フィールド上の特に仕切りのない部分（例えば、フィールド上に設置された道など）に設けられた門などを適用してもよい。門については、開閉や施錠／解錠の扱いは、上記の実施の形態における扉と同様である。
【０１４０】
また、フィールドの高低差を移動するためのオブジェクトとして伸縮が可能な梯子を用いるものとしてもよい。このように、伸縮可能な梯子を用いる場合にあっては、上記の実施の形態におけるクライアント扉４１２と同様に伸縮を自在にできる梯子を扱うことができる（扉が閉じた状態が梯子を縮めた状態に、扉を開けた状態が梯子を伸ばした状態に対応する）。また、シナリオ扉４１１の施錠された状態には、ストッパなどにより梯子を伸ばすことができない状態を対応させることができる。
【０１４１】
さらには、例えば、通過すればプレイヤキャラクタ４２１をジャンプさせることができるような、トランポリンがフィールド４００に存在する場合に、他プレイヤキャラクタ４２１の移動が当該トランポリンを通過するようなものであったら、表示画面１２２にその通過したタイミングで当該他プレイヤキャラクタ４２１をジャンプさせるような表示を行うこともできる。
【０１４２】
また、通過すればその付近が明るく表示されるような、自動で点灯する街灯がフィールド４００に存在する場合には、他プレイヤキャラクタ４２１の移動がその街灯の付近を通過するようなものであったら、表示画面１２２にその通過したタイミングでその街灯の付近を明るくさせる表示を行うこともできる。
【０１４３】
上記の実施の形態では、サーバ装置２００から送信される他キャラクタ情報は１．０秒毎の間隔で送信されるものとしていたが、サーバ装置２００からの他キャラクタ情報の送信間隔は、各ビデオゲーム装置１００のプレイヤが他のプレイヤのプレイヤキャラクタに違和感を感じない程度には短く、且つ扉の開放とプレイヤキャラクタの通過が順序立ててプレイヤに認識される程度には長い時間間隔であれば、１．０秒毎よりも長くても短くてもよい。
【０１４４】
上記の実施の形態では、サーバ装置２００から送信される他キャラクタ情報を基に、他プレイヤキャラクタ４２１についてのみ、表示画面１２２においてフィールド４００を移動する様子や開扉行動を行っている様子を表示するものとして、敵キャラクタ４２２のようなノンプレイヤキャラクタについてはとくに述べなかった。
【０１４５】
しかしながら、このようなフィールド４００上の移動や開扉行動を、サーバ装置２００の制御により、敵キャラクタ４２２のようなノンプレイヤキャラクタが行えるようにしてもよい。このような場合には、図９に示す表示画像生成処理において、敵キャラクタ４２２の位置も決定するものとし、また、他キャラクタ情報バッファＡ６０５、或いは他キャラクタ情報バッファＢ６０６に記憶された他キャラクタ情報から、当該敵キャラクタ４２２の位置が、扉を越えて異なるエリア４０２へと移動するものであったら、その移動の状態に合わせて表示画面１２２に開扉の様子を表示するようにする。
【０１４６】
上記の実施の形態では、ビデオゲームを実行するプラットフォームとなる装置としてゲーム専用機であるビデオゲーム装置１００を適用していた。これに対して、本発明は、ビデオゲーム装置１００と同様の構成要素を備え、ネットワーク接続機能を有するものであれば、汎用のパーソナルコンピュータなどをプラットフォームとして実現されるものとしてもよい。表示装置１２１及びサウンド出力装置１２５をビデオゲーム本体１０１と同一の筐体内に納めた構成を有する携帯ゲーム機（アプリケーションの実行機能を有する携帯電話機を含む）を適用するものとしてもよい。
【０１４７】
記録媒体１３１としては、ＤＶＤ−ＲＯＭやＣＤ−ＲＯＭの代わりに半導体メモリーカードを適用することができる。このメモリーカードを挿入するためのカードスロットをＤＶＤ／ＣＤ−ＲＯＭドライブ１１３の代わりに設けることができる。汎用のパーソナルコンピュータの場合には、本発明に係るプログラム及びデータを記録媒体１３１に格納して提供するのではなく、ＨＤＤ１０７に予め格納して提供してもよい。本発明にかかるプログラム及びデータを格納して提供するための記録媒体は、ハードウェアの物理的形態及び流通形態に応じて任意のものを適用することができる。
【０１４８】
上記の実施の形態では、ビデオゲーム装置１００のプログラム及びデータは、記録媒体１３１に格納されて配布されるものとしていた。これに対して、これらのプログラム及びデータをネットワーク上に存在するサーバ装置が有する固定ディスク装置に格納しておき、ビデオゲーム本体１０１にネットワークを介して配信するものとしてもよい。ビデオゲーム装置１００において、通信インターフェイス１１５がサーバ装置から受信したプログラム及びデータは、ＨＤＤ１０７に保存し、実行時にＲＡＭ１０５にロードすることができる。サーバ装置２００のプログラム及びデータについても同様である。
【符号の説明】
【０１４９】
１００  ビデオゲーム装置
１０１  ビデオゲーム本体
１０３  制御部
１０５  ＲＡＭ
１０７  ＨＤＤ
１０９  サウンド処理部
１１１  グラフィック処理部
１１２  フレームメモリ
１１３  ＤＶＤ／ＣＤ−ＲＯＭドライブ
１１５  通信インターフェイス
１１７  インターフェイス部
１１９  内部バス
１２１  表示装置
１２２  表示画面
１２５  サウンド出力装置
１３１  記録媒体
２００  サーバ装置
２０１  サーバ本体
２０３  制御部
２０５  ＲＡＭ
２０７  ＨＤＤ
２１３  ＤＶＤ／ＣＤ−ＲＯＭドライブ
２１５  通信インターフェイス
２１９  内部バス
２３１  記録媒体
【図１】
2011229614.tif 000003
【図２】
2011229614.tif 000004
【図３】
2011229614.tif 000005
【図４】
2011229614.tif 000006
【図５】
2011229614.tif 000007
【図６】
2011229614.tif 000008
【図７】
2011229614.tif 000009
【図８】
2011229614.tif 000010
【図９】
2011229614.tif 000011
【図１０】
2011229614.tif 000012