説明

プログラム、情報記憶媒体及びプレーヤ端末

【課題】ネットワークゲームにおいて、寝落ちしたプレーヤの把握を支援すること。
【解決手段】ホスト端末20aは、各ゲスト端末20bそれぞれに備えられている内蔵時計の計時時刻をローカル時刻として受信し、自端末に備えられている時計の計時時刻と共に、リアルタイムに更新表示する。また、各ゲスト端末20bは、ホスト端末20aから共有データを受信することで、全てのゲーム端末20のローカル時刻を更新表示する。また、ホスト端末20aは、ホストプレーヤにより選択されたゲストプレーヤのゲスト端末20bとの通信を強制的に切断する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピュータである自プレーヤ端末に、複数の他プレーヤ端末と所定の通信を行わせて、全プレーヤの事前設定が完了して後にゲームへの参加設定がなされたプレーヤ端末同士によるゲーム進行を開始するネットワークゲームを実行させるためのプログラム等に関する。
【背景技術】
【0002】
近年、インターネットの急速な普及に伴い、ネットワーク上で他のプレーヤを相手にゲームを行うネットワークゲームが人気を博している。ネットワークゲームには、レースゲーム、麻雀ゲーム、カードゲームといった数多くの種類が存在し、世界中の見ず知らずのプレーヤとリアルタイムに対戦を行うことができるため、CPU対戦とはまた違った面白さがある。
【0003】
一般に、ネットワークゲームでは、ゲームメーカ等が用意するマッチングサーバがプレーヤをマッチングし、マッチングされたプレーヤ同士で対戦を行うことになる。その一形態として、プレーヤがネットワーク上に仮想的な部屋(プレイルーム)を作成し、マッチングサーバを介してプレイルームに入室したプレーヤ同士で対戦を行うものが知られている(例えば、特許文献1。)。
【特許文献1】特開2004−97622号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
ところで、ネットワークゲームの種類によっては、マッチングされたプレーヤ同士が、同じメンバーで何度も繰り返し対戦を行うことがある。レースゲームを例に挙げると、僅か1回の対戦レースでゲーム終了となることはまずなく、同じメンバーで何度も繰り返し対戦レースを行い、その通算成績を競うのが一般的である。
【0005】
しかし、世界中のプレーヤが参加可能なネットワークゲームにおいては、繰り返し対戦を行っていくうちに、あるプレーヤの国や地域では夕方になったばかりであるのに対して、別のプレーヤの国や地域では深夜になってしまうといったことが、時差の関係で当然に起こり得る。そして、眠くなったプレーヤが、ゲームの途中で寝てしまう(いわゆる「寝落ち」)場合がある。
【0006】
この場合、例えばゲームの親となったプレーヤや、プレイルームの管理人であるプレーヤにとっては、ゲームの進行が妨げられないようにするためにも、参加プレーヤが寝落ちしたか否かを知りたいという要望がある。
【0007】
特に問題となるのは、参加している全てのプレーヤが準備を整え、準備完了の合図をしない限り対戦が始まらないようなゲーム構成が採用されている場合である。例えば、対戦レースを繰り返すレースゲームとして、全てのプレーヤがマシンを選択して決定しない限り、対戦レースが始まらないものがある。
【0008】
このレースゲームでは、寝落ちしたプレーヤが存在すると、当該プレーヤが一向に準備完了の合図をしないため、いつまでたっても対戦レースが始まらないことになる。その結果、今か今かと対戦レースの開始を待ち望んでいるプレーヤの気分を害するおそれがある。
【0009】
本発明は、このような課題に鑑みて為されたものであり、その目的とするところは、ネットワークゲームにおいて、寝落ちしたプレーヤの把握を支援することである。
【課題を解決するための手段】
【0010】
以上の課題を解決するための第1の発明は、
コンピュータである自プレーヤ端末(例えば、図9のホスト端末20a)に、複数の他プレーヤ端末(例えば、図9のゲスト端末20b)と所定の通信を行わせて、全プレーヤの事前設定が完了して後にゲームへの参加設定がなされたプレーヤ端末同士によるゲーム進行を開始するネットワークゲームを実行させるためのプログラム(例えば、図14のメインプログラム261)であって、
前記他プレーヤ端末それぞれのローカル時刻を取得するローカル時刻取得手段(例えば、図19のステップB3)、
前記取得されたローカル時刻(例えば、図5のローカル時刻)及び/又は当該ローカル時刻に基づく画像(例えば、図23の就寝アイコンJ23)を、対応する他プレーヤ端末のプレーヤ識別子(例えば、図5のプレーヤ名)と対応付けて、当該他プレーヤ端末の事前設定の状況(例えば、図5の状態)とともに表示制御する事前設定状況表示制御手段(例えば、図19のステップB11;図5のプレーヤ状態一覧画面W7)、
自プレーヤの操作入力に従って、他プレーヤ端末が事前設定中に当該他プレーヤ端末のゲーム参加を拒絶する拒絶制御手段(例えば、図19のステップB17)、
として前記自プレーヤ端末を機能させるためのプログラムである。
【0011】
また、他の発明として、
複数の他プレーヤ端末と所定の通信を行い、全プレーヤの事前設定が完了して後にゲームへの参加設定がなされたプレーヤ端末同士によるゲーム進行を開始するネットワークゲームを実行するプレーヤ端末(例えば、図9のホスト端末20a)であって、
前記他プレーヤ端末それぞれのローカル時刻を取得するローカル時刻取得手段と、
前記取得されたローカル時刻及び/又は当該ローカル時刻に基づく画像を、対応する他プレーヤ端末のプレーヤ識別子と対応付けて、当該他プレーヤ端末の事前設定の状況とともに表示制御する事前設定状況表示制御手段と、
自プレーヤの操作入力に従って、他プレーヤ端末が事前設定中に当該他プレーヤ端末のゲーム参加を拒絶する拒絶制御手段と、
を備えたプレーヤ端末を構成しても良い。
【0012】
この第1の発明等によれば、他プレーヤ端末それぞれのローカル時刻が取得され、取得されたローカル時刻及び/又は当該ローカル時刻に基づく画像が、対応する他プレーヤ端末のプレーヤ識別子と対応付けて、当該他プレーヤ端末の事前設定の状況とともに表示される。プレーヤ端末の事前設定の状況が一向に完了とならない場合は、当該プレーヤ端末のプレーヤは寝落ちした可能性がある。プレーヤ識別子と対応付けてローカル時刻及び/又は当該ローカル時刻に基づく画像が表示されるため、寝落ちしたプレーヤか否かをより確実に把握することが可能になる。
【0013】
また、自プレーヤの操作入力に従って、他プレーヤ端末が事前設定中に当該他プレーヤ端末のゲーム参加が拒絶される。従って、寝落ちしたと考えられるプレーヤのゲームへの参加を拒絶することができるため、かかるプレーヤのためにゲームの進行が妨げられることが防止される。
【0014】
また、第2の発明として、第1の発明のプログラムであって、
前記各プレーヤ端末は時計機能(例えば、図14の時計部290)を有し、
前記ローカル時刻取得手段が、前記他プレーヤ端末それぞれから、当該他プレーヤ端末の時計機能の計時時刻をローカル時刻として受信する時刻受信手段(例えば、図19のステップB3)を有するように前記自プレーヤ端末を機能させるためのプログラムを構成しても良い。
【0015】
この第2の発明によれば、他プレーヤ端末それぞれの時計機能の計時時刻を、ローカル時刻として受信する。従って、他プレーヤ端末のローカル時刻を、簡便な方法で取得することができる。
【0016】
また、第3の発明として、第1の発明のプログラムであって、
自プレーヤ端末は時計機能(例えば、図14の時計部290)を有し、
前記他プレーヤ端末それぞれから、当該他プレーヤ端末又は当該他プレーヤの属地情報(例えば、図5の国籍)を受信する属地情報受信手段として前記自プレーヤ端末を機能させるとともに、
前記ローカル時刻取得手段が、前記受信された属地情報と、予め設定された自プレーヤ端末又は自プレーヤの属地情報と、前記時計機能の計時時刻とに基づいて、前記他プレーヤ端末それぞれのローカル時刻を算出するローカル時刻算出手段を有するように前記自プレーヤ端末を機能させるためのプログラムを構成しても良い。
【0017】
この第3の発明によれば、他プレーヤ端末又は他プレーヤの属地情報と、予め設定された自プレーヤ端末又は自プレーヤの属地情報と、自プレーヤ端末の時計機能の計時時刻とに基づいて、他プレーヤ端末それぞれのローカル時刻が算出される。自プレーヤ端末の時計機能の計時時刻が正確であれば、他プレーヤ端末からローカル時刻を受信することなく、他プレーヤ端末のローカル時刻を正確に算出できる。
【0018】
また、第4の発明として、第3の発明のプログラムであって、
前記プレーヤ端末それぞれには、前記属地情報として、当該プレーヤ端末の利用区域を識別するための機器利用区域識別情報が記憶されており、
前記属地情報受信手段が、前記他プレーヤ端末それぞれから、当該他プレーヤ端末に記憶されている属地情報を当該他プレーヤ端末又は当該他プレーヤの属地情報として受信するように前記自プレーヤ端末を機能させるためのプログラムを構成しても良い。
【0019】
この第4の発明によれば、他プレーヤ端末それぞれから、属地情報として機器利用区域識別情報を受信することになる。この機器利用区域識別情報としては、例えばリージョンコードが挙げられる。
【0020】
また、第5の発明として、第1の発明のプログラムであって、
前記ローカル時刻取得手段が、前記各プレーヤ端末と通信して当該各プレーヤ端末のローカル時刻を判定するサーバ(例えば、図9の管理サーバ10)から、前記他プレーヤ端末それぞれのローカル時刻を取得するように前記自プレーヤ端末を機能させるためのプログラムを構成しても良い。
【0021】
この第5の発明によれば、各プレーヤ端末と通信して当該各プレーヤ端末のローカル時刻を判定するサーバから、他プレーヤ端末それぞれのローカル時刻が取得される。サーバにより各ゲーム端末のローカル時刻の判定が適切に行われる限り、プレーヤ端末それぞれの正確なローカル時刻を取得できる。
【0022】
また、第6の発明として、第1〜第5の何れか一の発明のプログラムであって、
前記ネットワークゲームは、前記事前設定を行う準備段階(例えば、図3のステップS1〜S5)と、ゲームが進行するゲーム進行段階(例えば、図3のステップS7、S9)とを繰り返すゲームであり、
前記事前設定状況表示制御手段が、前記準備段階で、前記他プレーヤ端末の事前設定の状況を表示し、
前記拒絶制御手段が、前記準備段階において、前記複数の他プレーヤ端末のうち、以降のゲーム参加を拒絶する他プレーヤ端末を自プレーヤの操作入力に従って選択する選択手段(例えば、図19のステップB13)を有し、前記選択された他プレーヤ端末のゲーム参加を拒絶する、
ように前記自プレーヤ端末を機能させるためのプログラムを構成しても良い。
【0023】
この第6の発明によれば、ゲーム進行前の各準備段階で他プレーヤ端末の事前設定の状況が表示され、その際に、複数の他プレーヤ端末のうち、以降のゲーム参加を拒絶する他プレーヤ端末が選択される。
【0024】
また、第7の発明として、第6の発明のプログラムであって、
前記拒絶制御手段により拒絶された他プレーヤ端末を再度ゲーム参加させる復帰制御手段として前記自プレーヤ端末を機能させるためのプログラムを構成しても良い。
【0025】
この第7の発明によれば、拒絶された他プレーヤ端末を再度ゲームに参加させることができるため、自プレーヤが、寝落ちしたと判断した他プレーヤのゲームへの参加を拒絶した場合であっても、その他プレーヤをゲームに復帰させることが可能となる。
【0026】
また、第8の発明として、第1〜第7の何れか一の発明のプログラムであって、
ローカル時刻が所与の時間帯条件を満たす他プレーヤ端末を検出する検出手段として前記自プレーヤ端末を機能させ、
前記事前設定状況表示制御手段が、前記検出された他プレーヤ端末を、他の他プレーヤ端末と識別させる表示制御を行う検出端末識別表示制御手段を有するように前記自プレーヤ端末を機能させるためのプログラムを構成しても良い。
【0027】
この第8の発明によれば、ローカル時刻が所与の時間帯条件を満たす他プレーヤ端末が検出され、検出された他プレーヤ端末が、検出されなかった残りの他プレーヤ端末と識別して表示される。従って、例えば深夜の時間帯を時間帯条件にすることで、ローカル時刻が深夜の時間帯のプレーヤ端末が識別表示されるため、寝落ちしたプレーヤの把握が容易となる。
【0028】
また、第9の発明として、第1〜第7の何れか一の発明のプログラムであって、
前記他プレーヤ端末それぞれから、前記事前設定を徒過する可能性のある時間帯を示す時間帯条件を受信する時間帯条件受信手段、
前記他プレーヤ端末のうち、ローカル時刻が前記時間帯条件受信手段により受信された当該他プレーヤ端末の時間帯条件を満たす他プレーヤ端末を検出する検出手段、
として前記自プレーヤ端末を機能させ、
前記事前設定状況表示制御手段が、前記検出された他プレーヤ端末を、他の他プレーヤ端末と識別させる表示制御を行う検出端末識別表示制御手段を有するように前記自プレーヤ端末を機能させるためのプログラムを構成しても良い。
【0029】
この第9の発明によれば、他プレーヤ端末それぞれから、事前設定を徒過する可能性のある時間帯を示す時間帯条件を受信する。そして、他プレーヤ端末のうち、ローカル時刻が、受信した当該他プレーヤ端末の時間帯条件を満たす他プレーヤ端末が検出される。
【0030】
生活習慣はプレーヤによって異なるため、事前設定を徒過する可能性のある時間帯、例えば就寝する時間帯もプレーヤによって異なる。本発明は、かかる場合に特に有効である。
【0031】
また、第10の発明として、第1〜第7の何れか一の発明のプログラムであって、
ローカル時刻が所与の時間帯条件を満たす他プレーヤ端末を検出する検出手段として前記自プレーヤ端末を機能させ、
前記拒絶制御手段が、自プレーヤの操作入力に従ってゲーム参加を拒絶できる他プレーヤ端末を、前記検出手段によって検出された他プレーヤ端末に限る拒絶可能端末制限手段を有するように前記自プレーヤ端末を機能させるためのプログラムを構成しても良い。
【0032】
この第10の発明によれば、自プレーヤの操作入力に従ってゲーム参加を拒絶できる他プレーヤ端末が、ローカル時刻が所与の時間帯条件を満たす他プレーヤ端末に限られることになる。従って、例えば深夜の時間帯を時間帯条件にすることで、ローカル時刻が深夜の時間帯のプレーヤ端末のプレーヤだけがゲーム参加の拒絶の対象となる。
【0033】
また、第11の発明として、第1〜第7の何れか一の発明のプログラムであって、
ローカル時刻が所与の時間帯条件を満たす他プレーヤ端末を検出する検出手段として前記自プレーヤ端末を機能させ、
前記拒絶制御手段が、前記検出手段によって検出された他プレーヤ端末のゲーム参加を拒絶できないように制御する拒絶可能端末制限手段を有するように前記自プレーヤ端末を機能させるためのプログラムを構成しても良い。
【0034】
この第11の発明によれば、ローカル時刻が所与の時間帯条件を満たす他プレーヤ端末のゲーム参加が拒絶されないことになる。従って、例えば昼間の時間帯を時間帯条件にすることで、昼間で寝落ちの心配のないプレーヤのゲーム参加が誤って拒絶されるといったことが効果的に防止される。
【0035】
また、第12の発明として、第1〜第11の何れかの発明のプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体(例えば、図10のCD−ROM1212)を構成しても良い。
【発明の効果】
【0036】
本発明によれば、他プレーヤ端末それぞれのローカル時刻が取得され、取得されたローカル時刻及び/又は当該ローカル時刻に基づく画像が、対応する他プレーヤ端末のプレーヤ識別子と対応付けて、当該他プレーヤ端末の事前設定の状況とともに表示される。プレーヤ端末の事前設定の状況が一向に完了とならない場合は、当該プレーヤ端末のプレーヤは寝落ちした可能性がある。プレーヤ識別子と対応付けてローカル時刻及び/又は当該ローカル時刻に基づく画像が表示されるため、寝落ちしたプレーヤか否かをより確実に把握することが可能になる。
【0037】
また、自プレーヤの操作入力に従って、他プレーヤ端末が事前設定中に当該他プレーヤ端末のゲーム参加が拒絶される。従って、寝落ちしたと考えられるプレーヤのゲームへの参加を拒絶することができるため、かかるプレーヤのためにゲームの進行が妨げられることが防止される。
【発明を実施するための最良の形態】
【0038】
以下、図面を参照して、本発明を実施するための最良の形態を説明する。本実施形態では、プレーヤがゲーム端末20を利用して、ネットワークゲームの一種であるレースゲームを行う場合について説明する。但し、本発明を適用可能な実施形態がこれに限定されるものではない。
【0039】
ネットワークを利用したゲームシステムの構成としては、例えば、(A)家庭に設置してあるパソコン(PC)や家庭用ゲーム機、携帯型ゲーム機等をゲーム端末とし、インターネット網や専用線網等の有線/無線の通信回線を介してサーバと接続する構成、(B)サーバを用いることなく複数のゲーム端末同士が通信回線を介して接続される構成、(C)複数のゲーム端末同士が通信回線を介して接続されるが、その内の1台がサーバ機能を有する構成、(D)複数のゲーム端末が物理的に結合した、全体として1台のシステム(例えば業務用ゲーム機)となっている構成等がある。
【0040】
本実施形態では、(B)の構成のゲームシステムを例に挙げて説明する。但し、ネットワークゲームに参加するプレーヤを管理する管理サーバ10がメーカ等のゲーム提供事業者側に設置され、プレーヤの認証情報や成績情報、課金情報等が管理される。また、本実施形態には、ゲームに参加する際の特徴的な機能として「プレイルーム」と呼ばれる機能があり、このプレイルームも管理サーバ10によって管理される。
【0041】
1.ゲームの説明
本実施形態のネットワークゲームでは、プレーヤによりネットワーク上に作成された「プレイルーム」に、世界中のプレーヤが「ゲストプレーヤ」として入室し、当該プレイルームでカーレースゲームを行う。プレイルームを作成したプレーヤは「ホストプレーヤ」となる。以下、単に「プレーヤ」という場合は、「ホストプレーヤ」及び「ゲストプレーヤ」を包括的に表しているものとする。また、ゲーム端末20は、プレーヤが「ホストプレーヤ」である場合は「ホスト端末20a」として機能し、「ゲストプレーヤ」である場合は「ゲスト端末20b」として機能する。
【0042】
プレーヤは、先ずゲーム端末20から管理サーバ10にアクセスしてログインする。そして、管理サーバ10にプレイルーム作成要求を行うと、管理サーバ10はネットワーク上にプレイルームを作成し、作成したプレイルームのデータをプレイルーム管理データベース(DB)に登録する。尚、プレイルームは、管理サーバ10にプレーヤ登録を行ったプレーヤであれば、誰でも作成することができる。また、プレイルームを作成したプレーヤの端末が、そのプレイルームに関するホスト端末20aとされる。
【0043】
また、管理サーバ10にプレイルームへの入室要求を行うと、管理サーバ10は、当該プレーヤをゲストプレーヤとし、当該プレイルームのホスト端末20a及びゲスト端末20bに互いの通信アドレスを通知して、ホスト端末20aとゲスト端末20b間の通信接続を促す。そして、ホスト端末20aとゲスト端末20b間で通信が確立した後は、ゲスト端末20bとホスト端末20aとが直接データのやり取りを行って、ゲームをプレイすることになる。
【0044】
尚、管理サーバ10は、ゲスト端末20bにのみホスト端末20aの通信アドレスを通知し、ホスト端末20aには、ゲスト端末20bの通信アドレスを通知しないようにしても良い。この場合、ホスト端末20aは、ゲスト端末20bが通信接続してきたときに当該ゲスト端末20bの通信アドレスを取得する。
【0045】
図1は、管理サーバ10にログインした場合に、ゲーム端末20において表示されるメニュー画面の一例であるメニュー画面W1を示す図である。
メニュー画面W1では、「何をしますか?」というメッセージと共に、「プレイルーム新規作成」と示された作成アイコンJ1と、「プレイルーム閲覧」と示された閲覧アイコンJ2とが表示されている。プレーヤは、プレイルームの新規作成を行う場合は、作成アイコンJ1を指示押下し、プレイルームの閲覧を行う場合は、閲覧アイコンJ2を指示押下する。
【0046】
また、画面右下部には、「ログアウト」と示されたログアウトアイコンJ3が表示されている。プレーヤは、管理サーバ10からログアウトする場合は、ログアウトアイコンJ3を指示押下する。
【0047】
図2は、図1のメニュー画面W1において、閲覧アイコンJ2が指示押下されることで表示されるプレイルーム一覧画面の一例であるプレイルーム一覧画面W3を示す図である。
プレイルーム一覧画面W3では、プレイルーム管理DBに登録されているプレイルームのデータが一覧表示されている。具体的には、プレイルームのホストプレーヤの名称である「ホストプレーヤ名」と、当該ホストプレーヤの属地情報である「国籍」と、当該ホストプレーヤの対戦の「通算成績」とが対応付けて表示されている。
【0048】
例えば、ホストプレーヤである「レース一郎」は、国籍が「Japan(日本)」であり、対戦の通算成績は、1位が「30回」、2位が「25回」、3位が「18回」である。通算成績は、プレーヤが入室するプレイルームを決定するための材料となる。
【0049】
各ホストプレーヤそれぞれの「ホストプレーヤ名」の左方には、「入室」と示された入室アイコンJ4が表示されており、プレーヤは、入室を希望するプレイルームのホストプレーヤに対応する入室アイコンJ4を指示押下することで、当該プレイルームに入室することができる。また、画面右下部には「メニューに戻る」と示されたメニューアイコンJ5が表示されており、メニューアイコンJ5を指示押下すると、メニュー画面W1に戻る。
【0050】
プレーヤはプレイルームに入室すると、当該プレイルームのホストプレーヤ及び当該プレイルームに入室している他のゲストプレーヤを対戦相手として、カーレースゲーム(以下、適宜「対戦ゲーム」と呼ぶ。)を繰り返し行う。
【0051】
図3は、プレイルームにおける対戦ゲームの大まかな流れを示すフローチャートである。
ステップS1〜S5は、各プレーヤがゲームの事前設定を行う準備段階に相当し、ステップS7及びS9は、ゲームが進行するゲーム進行段階に相当する。
【0052】
先ず、ホストプレーヤが、対戦するレースコースを決定する(ステップS1)。次いで、ホストプレーヤ及びゲストプレーヤが、対戦ゲームで使用するマシンをそれぞれ選択する(ステップS3)。
【0053】
図4は、ゲスト端末20bにおいて表示され、ゲストプレーヤがマシンを選択するためのマシン選択画面の一例であるマシン選択画面W5を示す図である。
マシン選択画面W5では、画面中央部の小画面SW5に、現在選択されているマシンの種別及びモデルが表示されており、ここでは種別「マシンA」と、そのモデルが表示されている。また、画面右下部には、「準備完了」と示された準備完了アイコンJ6と、「観戦」と示された観戦アイコンJ7とが表示されている。
【0054】
ゲストプレーヤは、対戦ゲームへの参加を希望する場合は、カーソルCS1及びCS2を操作して、使用するマシンを選択した後、準備完了アイコンJ6を指示押下する。一方、対戦ゲームへの参加を希望せず、次の対戦ゲームを観戦する場合は、観戦アイコンJ7を指示押下する。
【0055】
尚、ホストプレーヤもマシンの選択を同様に行うが、ホストプレーヤは観戦を選択することができず、ホスト端末20aにおいて表示されるマシン選択画面(図示せず)では、観戦アイコンJ7は表示されない。
【0056】
そして、全てのプレーヤがマシンの選択(或いは観戦の選択)を行うことによって、全てのプレーヤのスタンバイが完了したか否かが判定され(ステップS5)、完了したと判定された場合は(ステップS5;Yes)、対戦ゲームが開始される(ステップS7)。そして、対戦ゲーム処理が行われ(ステップS9)、その回の対戦ゲームは終了となって、ステップS1に戻る。
【0057】
本実施形態では、準備段階において、全てのプレーヤのスタンバイが完了しない間は、対戦ゲームを開始しないゲーム構成を採用している。これは、全てのプレーヤが対戦ゲームの準備を入念に行うことを可能にする目的からである。
【0058】
しかし、世界中のゲストプレーヤがプレイルームに入室するため、繰り返し対戦ゲームを行っていくうちに、あるゲストプレーヤの国や地域では深夜になってしまい、ゲストプレーヤが寝落ちしてしまう場合がある。
【0059】
そこで、本実施形態では、ホストプレーヤ及びゲストプレーヤそれぞれが、各ゲーム端末20のローカル時刻を監視できるようにしている。具体的には、ホスト端末20aは、各ゲスト端末20bから、それぞれの端末に備えられている内蔵時計の計時時刻を受信する。そして、ホスト端末20aは、自端末に備えられている内蔵時計の計時時刻と共に、各ゲスト端末20bの計時時刻を、ローカル時刻としてリアルタイムに表示する。
【0060】
また、各ゲスト端末20bは、このローカル時刻が記憶されたデータをホスト端末20aと共有することで、各端末のローカル時刻をリアルタイムに表示する。これにより、寝落ちした可能性のあるプレーヤを他のプレーヤが把握することを容易ならしめる。
【0061】
また、上述したゲーム構成では、寝落ちしたプレーヤが存在すると、当該プレーヤのスタンバイが一向に完了せず、結果として対戦ゲームがいつまでたっても開始されない事態が発生する。
【0062】
そこで、本実施形態では、ホストプレーヤが、任意に選択したゲストプレーヤをプレイルームから強制退室させることができることにしている。具体的には、ホスト端末20aは、ホストプレーヤにより選択されたゲストプレーヤのゲスト端末20bとの通信を強制的に切断する。即ち、ホストプレーヤは、任意に選択したゲストプレーヤの以降のゲームへの参加を拒絶することができる。
【0063】
従って、ホストプレーヤは、あるゲストプレーヤのスタンバイが一向に完了しない場合は、当該ゲストプレーヤのゲスト端末20bのローカル時刻を確認し、その時刻が深夜であれば、当該ゲストプレーヤは寝落ちしたと判断して、プレイルームから強制退室させることができる。これにより、寝落ちしたプレーヤのためにゲームの進行が妨げられることが効果的に防止される。
【0064】
図5は、準備段階においてホスト端末20aに、全てのプレーヤの状態が表示されるプレーヤ状態一覧画面の一例であるプレーヤ状態一覧画面W7を示す図である。プレーヤ状態一覧画面は、マシン選択後に表示される画面である。
【0065】
プレーヤ状態一覧画面W7では、画面上部に、次の対戦ゲームが何回目の対戦ゲームであるかを示す「レース種別」と、ホストプレーヤにより選択された「コース名」とが表示される。ここでは、レース種別として「第5レース」、コース名として「夜景コース」がそれぞれ表示されている。
【0066】
また、画面中央部には、プレーヤのプレーヤ名と、当該プレーヤの属地情報である国籍と、当該プレーヤの状態と、当該プレーヤにより選択されたマシン(選択マシン)と、当該プレーヤのゲーム端末20のローカル時刻とが一覧表示されている。また、ホストプレーヤのプレーヤ名の左方には「ホスト」と表示され、ゲストプレーヤのプレーヤ名の左方には、チェックボックスが表示されている。
【0067】
プレーヤ名及び国籍には、各プレーヤが管理サーバ10に登録したプレーヤ名及び国籍が表示される。マシン選択画面(例えば、図4のマシン選択画面W5)において、ゲストプレーヤによりマシンが選択されて準備完了アイコンJ6が指示押下されると、当該ゲストプレーヤの状態は「準備完了」となり、選択されたマシンの種別が選択マシンに表示される。例えば、国籍が「Japan(日本)」であるゲストプレーヤ「ケンジ」は、「マシンA」を選択して準備完了アイコンJ6を指示押下したため、その状態が「準備完了」となり、選択マシンが「マシンA」となっている。
【0068】
また、マシン選択画面において、ゲストプレーヤにより観戦アイコンJ7が指示押下されると、当該ゲストプレーヤの状態は「観戦」となる。例えば、国籍が「China(中国)」であるゲストプレーヤ「李」は、観戦アイコンJ7を指示押下したため、その状態が「観戦」となっている。
【0069】
また、ゲストプレーヤにより準備完了アイコンJ6も観戦アイコンJ7も指示押下されない間は、当該ゲストプレーヤの状態は「準備中」となる。例えば、国籍が「America(アメリカ)」であるゲストプレーヤ「John」は、未だ準備完了アイコンJ6も観戦アイコンJ7も指示押下していないため、その状態は「準備中」となっている。尚、プレーヤの状態が「観戦」或いは「準備中」の場合は、選択マシンは「−(無し)」となる。
【0070】
ローカル時刻には、各プレーヤのゲーム端末20(ホスト端末20a及びゲスト端末20b)の計時時刻がリアルタイムに表示される。例えば、国籍が「America(アメリカ)」であるゲストプレーヤ「John」のゲスト端末20bの現在の計時時刻は、「3:24」である。
【0071】
例えば、ホストプレーヤ「レース一郎」は、ゲストプレーヤ「John」の状態が「準備中」のまま、一向に「準備完了」或いは「観戦」とならない場合は、そのローカル時刻「3:24」を確認する。そして、ゲストプレーヤ「John」は寝落ちしたと判断し、プレイルームから強制退室させることができる。即ち、ゲストプレーヤ「John」の以降のゲームへの参加を拒絶することができる。
【0072】
この場合、ホストプレーヤ「レース一郎」がゲストプレーヤ「John」を選択して決定すると、そのプレーヤ名の左方に表示されているチェックボックスがチェックされる。そして、その状態で、画面右下部に表示されている「退室」と示された退室アイコンJ8を指示押下すると、「選択したプレーヤを退室させますか?」というメッセージと共に、「OK」と示されたOKアイコンJ9及び「キャンセル」と示されたキャンセルアイコンJ10が表示された小画面SW9が、画面中央部に表示される(図6のプレーヤ状態一覧画面W9)。最後に、小画面SW9のOKアイコンJ9を指示押下すると、ゲストプレーヤ「John」のゲスト端末20bとの通信が切断される。
【0073】
尚、ホストプレーヤは、複数のゲストプレーヤを選択して、そのチェックボックスがチェックされた状態でOKアイコンJ9を指示押下することで、一度に複数のゲストプレーヤを強制退室させることも可能である。
【0074】
ゲストプレーヤ「John」が退室したことで、全てのプレーヤの状態が「準備完了」或いは「観戦」となる。この場合、「全プレーヤスタンバイ完了!!」というメッセージが表示された小画面SW11が画面中央部に表示され(図7のプレーヤ状態一覧画面W11)、その後、対戦ゲームが開始される。
【0075】
尚、ゲストプレーヤが、マシン選択画面においてマシンの選択或いは観戦の選択を行うと、ゲスト端末20bにおいても同様のプレーヤ状態一覧画面が表示される。図8に、その一例であるプレーヤ状態一覧画面W13を示す。
【0076】
プレーヤ状態一覧画面W13の画面構成は、ホスト端末20aにおいて表示されるプレーヤ状態一覧画面W7の画面構成とほぼ同一である。しかし、ゲストプレーヤは他のプレーヤを強制退室させることができないため、プレーヤ名の左方にチェックボックスは表示されず、画面右下部に退室アイコンJ8も表示されない。
【0077】
2.システム構成
次に、本実施形態におけるシステム構成について説明する。
図9は、本発明を適用したゲームシステム1の概略構成を示す図である。同図(a)は、システムの物理的構成、同図(b)は、1つのプレイルームに係るシステムの論理的構成をそれぞれ示している。
【0078】
ゲームシステム1は、複数のゲーム端末20と、管理サーバ10とを備えて構成される。各ゲーム端末20は、世界各国を結ぶネットワークNを介して、管理サーバ10に接続される。
【0079】
管理サーバ10は、例えば、1台又は複数台の公知のサーバ装置やサーバシステム等によって実現され、プレーヤ管理プログラム161を実行することで、ネットワークゲームに参加するプレーヤの管理を行う。また、プレイルーム管理プログラム163を実行することで、作成したプレイルームの管理を行う。
【0080】
ゲーム端末20は、プレーヤがネットワークゲームをプレイするための端末装置であり、その概略外観構成を図10に示す。ゲーム端末20は家庭用ゲーム機であり、ゲームコントローラ1202と、本体装置1210と、スピーカ1222を有するディスプレイ1220とを備えている。ゲームコントローラ1202は本体装置1210に接続され、ディスプレイ1220は画像信号及び音信号等を伝送可能なケーブル1201によって本体装置1210に接続されている。
【0081】
ゲームコントローラ1202は、プレーヤがゲーム操作や画面表示位置を入力するための方向キー1204と、ボタンスイッチ1206とを備え、操作入力信号を本体装置1210に出力する。
【0082】
本体装置1210は、例えばCPUやICメモリ類を搭載した制御ユニット1211や情報記憶媒体の読取装置を備え、CD−ROM1212等から読み出したプログラム及びデータと、ゲームコントローラ1202からの操作信号とに基づいて種々のゲーム処理を演算処理して、ゲーム画面の画像信号及びゲーム音の音信号を生成する。
【0083】
本体装置1210は、所与の仮想カメラを視点とした仮想三次元空間の画像を生成する。そして、画像信号と音声信号とをディスプレイ1220に出力して、ディスプレイ1220にゲーム画面を表示させると共に、スピーカ1222からゲーム音を出力させる。プレーヤは、ディスプレイ1220に映し出されたゲーム画面を見ながら、ゲームコントローラ1202を操作してゲームを楽しむことができる。
【0084】
本体装置1210がゲーム処理を実行するために必要なプログラムやデータ等は、例えば、本体装置1210に着脱自在な情報記憶媒体であるCD−ROM1212、ICメモリ1214、メモリカード1216等に格納されている。また、本体装置1210に具備された通信装置1218を介してネットワークNに接続し、外部装置(例えば、管理サーバ10)からダウンロードして取得する構成とすることも可能である。
【0085】
3.機能構成
次に、本実施形態における管理サーバ10及びゲーム端末20の機能構成について説明する。先ず、管理サーバ10の機能構成について説明する。
【0086】
図11は、管理サーバ10の機能構成を示すブロック図である。管理サーバ10は、操作部110と、処理部120と、通信部130と、表示部140と、記憶部160とを備えて構成されるコンピュータシステムである。
【0087】
操作部110は、管理サーバ10の管理者等による操作指示を受け付け、操作に応じた操作信号を処理部120に出力する。この機能は、例えばキーボード、マウス、操作スティック、ダイヤル等によって実現される。
【0088】
処理部120は、管理サーバ10全体の制御やプレーヤの管理等を行う。この機能は、例えばCPU(CISC型、RISC型)、ASIC(ゲートアレイ等)等の演算装置やその制御プログラムにより実現される。
【0089】
本実施形態では、処理部120は、主な機能部として、プレーヤ管理部121と、プレイルーム管理部123とを含んでいる。
【0090】
プレーヤ管理部121は、プレーヤ管理プログラム161に従ってプレーヤ管理処理を行う。具体的には、ゲーム端末20からの初回アクセス時に、プレーヤにプレーヤ名、パスワード、国籍及び通信アドレスを入力させ、プレーヤ管理データ172としてプレーヤ管理DB171に登録する。また、ゲーム端末20からログイン要求を受信した場合にパスワード認証を行い、当該ゲーム端末20のログインの許否を決定する。
【0091】
プレイルーム管理部123は、プレイルーム管理プログラム163に従ってプレイルーム管理処理を行う。具体的には、ゲーム端末20からプレイルームの作成要求を受信した場合に、ネットワークN上にプレイルームを作成し、作成したプレイルームに係るデータを、プレイルーム管理データ174としてプレイルーム管理DB173に登録する。また、当該ゲーム端末20をホスト端末20aとし、当該プレイルームへの入室要求を受信したゲスト端末20bの通信アドレスを通知することで、当該ホスト端末20aと当該ゲスト端末20bとの通信接続を促す。
【0092】
また、プレイルーム管理部123は、ゲーム端末20からプレイルームの閲覧要求を受信すると、プレイルーム管理DB173に登録されているプレイルーム管理データ174に基づいて、プレイルームを公開する。そして、ゲーム端末20からプレイルームへの入室要求を受信すると、当該ゲーム端末20をゲスト端末20bとし、当該プレイルームのホストプレーヤのホスト端末20aの通信アドレスを通知することで、当該ホスト端末20aと当該ゲスト端末20bとの通信接続を促す。
【0093】
通信部130は、所定の通信回線(無線通信回線やLAN等)に接続して外部装置(例えば、ゲーム端末20)とのデータ通信を行う。この機能は、無線LAN等の無線通信モジュール、モデム、TA、有線用の通信ケーブルのジャックや制御回路などによって実現される。
【0094】
表示部140は、文字や画像を表示出力する手段であり、処理部120から出力された表示信号に基づき表示画面を表示させる。この機能は、例えばCRT、LCD、ELD、PDP、HMD等のハードウェアによって実現される。
【0095】
記憶部160は、処理部120に管理サーバ10を統合的に制御させるための諸機能を実現するためのシステムプログラムや、各種処理を実行させるために必要なプログラムやデータ等を記憶する。また、処理部120の作業領域として用いられ、処理部120が各種プログラムに従って実行した演算結果や操作部110から入力される入力データ等を一時的に記憶する。この機能は、例えば各種ICメモリやハードディスク、CD−ROM、DVD、MO、RAM、VRAM等によって実現される。
【0096】
本実施形態では、記憶部160は、プログラムとして、処理部120をプレーヤ管理部121として機能させるためのプレーヤ管理プログラム161と、プレイルーム管理部123として機能させるためのプレイルーム管理プログラム163とを含んでいる。また、データベースとして、プレーヤ管理DB171と、プレイルーム管理DB173とを含んでいる。
【0097】
プレーヤ管理DB171は、管理サーバ10にログイン可能なプレーヤに係るプレーヤ管理データ172(172−1,172−2,172−3,・・・)が記憶されたDBであり、そのデータ構成例を図12に示す。
【0098】
プレーヤ管理データ172には、プレーヤ名1721と、パスワード1722と、国籍1723と、通信アドレス1724と、通算成績1725とが記憶されている。
【0099】
プレーヤ名1721は、当該プレーヤの名称である。パスワード1722は、当該プレーヤが管理サーバ10にログインするために必要なパスワードである。国籍1723は、当該プレーヤの国籍である。通信アドレス1724は、当該プレーヤが利用するゲーム端末20の通信アドレスである。通算成績1725は、当該プレーヤの過去の対戦ゲームの通算成績である。この通算成績1725は、各対戦ゲームにおけるプレーヤの対戦成績に基づいて随時更新される。
【0100】
例えば、プレーヤ管理データ172−1のプレーヤは、プレーヤ名1721が「John」であり、パスワード1722は「abcd1234」である。また、国籍1723は「America(アメリカ)」であり、利用しているゲーム端末20の通信アドレス1724は「123.456.0.1」である。そして、通算成績1725は、1位が「2回」、2位が「4回」、3位が「3回」である。
【0101】
プレイルーム管理DB173は、ネットワーク上に作成したプレイルームに係るプレイルーム管理データ174(174−1,174−2,174−3,・・・)が記憶されたDBであり、そのデータ構成例を図13に示す。
【0102】
プレイルーム管理データ174には、ルームID1741と、作成日時1742と、ホストデータ1743と、ゲストデータ1744とが記憶されている。
【0103】
ルームID1741は、各プレイルームをユニークに識別するためのIDである。作成日時1742は、当該プレイルームを作成した日時である。ホストデータ1743は、当該プレイルームのホストプレーヤについてのデータであり、プレーヤ名1743aと、国籍1743bと、通信アドレス1743cと、通算成績1743dとが記憶されている。これらのデータは、プレーヤ管理データ172のプレーヤ名1721、国籍1723、通信アドレス1724及び通算成績1725にそれぞれ対応しており、当該ホストプレーヤのプレーヤデータ172に基づいて、プレイルーム管理部123により登録される。
【0104】
ゲストデータ1744は、当該プレイルームに入室しているゲストプレーヤについてのデータであり、各ゲストプレーヤそれぞれについて、プレーヤ名1744aと、国籍1744bと、通信アドレス1744cとが対応付けて記憶されている。これらのデータは、プレーヤ管理データ172のプレーヤ名1721、国籍1723及び通信アドレス1724にそれぞれ対応しており、新たにゲストプレーヤがプレイルームに入室した場合に、当該ゲストプレーヤのプレーヤデータ172に基づいて、プレイルーム管理部123により更新される。
【0105】
例えば、プレイルーム管理データ174−1のプレイルームは、ルームID1741が「R1」であり、作成日時1742は「2006年5月30日17時30分」である。また、ホストプレーヤは「レース一郎」であり、ゲストプレーヤとして「John」、「李」等が現在プレイルームに入室している。
【0106】
次に、ゲーム端末20の機能構成について説明する。
図14は、ゲーム端末20の機能構成を示すブロック図である。ゲーム端末20は、操作部210と、処理部220と、通信部230と、表示部240と、音出力部250と、記憶部260と、時計部290とを備えて構成されるコンピュータシステムである。
【0107】
操作部210は、プレーヤによる操作指示を受け付け、操作に応じた操作信号を処理部220に出力する。この機能は、例えばボタンや操作スティック、ダイヤル、マウス、キーボード、各種センサ等によって実現される。
【0108】
処理部220は、ゲーム端末20全体の制御やゲームの進行、画像生成等の各種演算処理を行う。この機能は、例えばCPU(CISC型、RISC型)、ASIC(ゲートアレイ等)等の演算装置やその制御プログラムにより実現される。
【0109】
本実施形態では、処理部220は、メインプログラム261に従ってゲーム端末20を統括的に制御するメイン処理部221と、メイン処理部221の処理によって求められた各種のデータに基づき、仮想カメラ等の所与の視点から見た仮想三次元空間(ゲーム空間)の画像の生成及びゲーム画面を表示させるための画像信号の生成を実行する画像生成部224と、効果音やBGM等のゲーム音の生成及びゲーム音を出力させるための音信号の生成を実行する音生成部226とを含んでいる。
【0110】
また、メイン処理部221は、ホスト用プレイルーム処理部2211と、ゲスト用プレイルーム処理部2213と、対戦ゲーム処理部2215とを含んでいる。
【0111】
メイン処理部221は、メインプログラム261に従ってメイン処理を行う。具体的には、管理サーバ10へのログインを行い、プレーヤによりプレイルームの新規作成が指示された場合に、プレイルーム作成要求を管理サーバ10に送信する。また、プレーヤによりプレイルームの閲覧が指示された場合に、プレイルーム閲覧要求を管理サーバ10に送信し、管理サーバ10から受信したプレイルームの一覧を表示する。そして、プレーヤによりプレイルームへの入室が指示された場合に、プレイルーム入室要求を管理サーバ10に送信する。
【0112】
ホスト用プレイルーム処理部2211は、ホスト用プレイルームプログラム2611に従ってホスト用プレイルーム処理を行う。具体的には、管理サーバ10から通信アドレスの通知を受けた全てのゲスト端末20bとの通信を確立し、これらのゲスト端末20bとの間でデータのやり取りを行うことでゲームを実現する。
【0113】
ゲスト用プレイルーム処理部2213は、ゲスト用プレイルームプログラム2613に従ってゲスト用プレイルーム処理を行う。具体的には、管理サーバ10により通信アドレスの通知を受けたホスト端末20aとの通信を確立し、このホスト端末20aとの間でデータのやり取りを行うことでゲームを実現する。
【0114】
対戦ゲーム処理部2215は、ホスト用プレイルーム処理及びゲスト用プレイルーム処理において、対戦ゲームプログラム2615に従って対戦ゲーム処理を行う。対戦ゲームにかかる処理は公知のゲーム処理であるため、詳細な説明は省略する。
【0115】
画像生成部224は、例えばCPUやDSP等の演算装置やその制御プログラム、フレームバッファ等の描画フレーム用ICメモリ等によって実現される。画像生成部224は、メイン処理部221による演算結果に基づき、幾何変換処理やシェーディング処理等を実行してゲーム画面を表示するためのゲーム画像(3DCG画像)を生成し、生成した画像の画像信号を表示部240に出力する。
【0116】
表示部240は、画像生成部224からの画像信号に基づいて、例えば1/60秒毎に1フレームの画面を再描画しながらゲーム画面を表示する。この機能は、例えばCRT、LCD、ELD、PDP、HMD等のハードウェアによって実現される。
【0117】
音生成部226は、例えばCPUやDSP等の演算装置及びその制御プログラムによって実現され、ゲーム中に使用される効果音やBGM等のゲーム音を生成し、生成したゲーム音の音信号を音出力部250に出力する。
【0118】
音出力部250は、音生成部226からの音信号に基づいて、BGMや効果音等のゲーム音を出力する。この機能は、例えばスピーカ等によって実現される。
【0119】
通信部230は、所定の通信回線(無線通信回線やLAN等)に接続して外部装置(例えば、管理サーバ10や他のゲーム端末20)とのデータ通信を行う。この機能は、無線LAN等の無線通信モジュール、モデム、TA、有線用の通信ケーブルのジャックや制御回路などによって実現される。
【0120】
記憶部260は、処理部220にゲーム端末20を統合的に制御させるための諸機能を実現するためのシステムプログラムや、ゲームを実行させるために必要なプログラムやデータ等を記憶する。また、処理部220の作業領域として用いられ、処理部220が各種プログラムに従って実行した演算結果や操作部210から入力される入力データ等を一時的に記憶する。この機能は、例えば各種ICメモリやハードディスク、CD−ROM、DVD、MO、RAM、VRAM等によって実現される。
【0121】
本実施形態では、記憶部260は、プログラムとして、処理部220をメイン処理部221として機能させるためのメインプログラム261を記憶し、データとして、マシンモデルデータ271と、コースデータ273と、共有データ275と、自端末通信アドレスデータ281と、自端末ホスト時データ283とを記憶している。
【0122】
また、メインプログラム261は、メイン処理部221をホスト用プレイルーム処理部2211として機能させるためのホスト用プレイルームプログラム2611と、ゲスト用プレイルーム処理部2213として機能させるためのゲスト用プレイルームプログラム2613と、対戦ゲーム処理部2215として機能させるための対戦ゲームプログラム2615とをサブルーチンとして含んでいる。
【0123】
マシンモデルデータ271は、対戦ゲームにおいてプレーヤが使用可能なマシンについてのデータである。例えば、マシンのモデリングデータやテクスチャデータ、基本パラメータ、モーションデータ等がこれに含まれる。
【0124】
コースデータ273は、対戦ゲームが行われるコースについてのデータである。例えば、各コースのマップ(形状)が記憶されたマップデータ2731や、背景となる各種オブジェクトが記憶されたオブジェクトデータ2733がこれに含まれる。
【0125】
共有データ275は、同じプレイルームに入室している全てのプレーヤが共有するデータを格納している。具体的には、プレーヤデータ群276と、プレーヤ状態データ278と、ゲーム中データ279とがこれに含まれる。
【0126】
プレーヤデータ群276は、当該プレイルームに入室している全てのプレーヤに係るプレーヤデータ277(277−1,277−2,277−3,・・・)が記憶されたデータ群であり、そのデータ構成例を図15に示す。
【0127】
プレーヤデータ277には、プレーヤ名2771と、国籍2772と、通信アドレス2773と、対戦成績2774と、通算成績2775とが記憶されている。
【0128】
プレーヤ名2771、国籍2772、通信アドレス2773及び通算成績2775は、管理サーバ10に記憶されているプレーヤ管理データ172のプレーヤ名1721、国籍1723、通信アドレス1724及び通算成績1725にそれぞれ対応している。
【0129】
対戦成績2774は、各対戦ゲーム(各レース)における当該プレーヤの成績である。対戦成績2774は、各対戦ゲームの結果に応じて随時更新されていき、それに応じて通算成績2775も更新される。
【0130】
例えば、プレーヤデータ277−1のプレーヤは、プレーヤ名2771が「レース一郎」、国籍2772が「Japan(日本)」であり、ゲーム端末20の通信アドレス2773は「111.222.0.1」である。また、対戦成績2774は、第1レースが「8位」、第2レースが「2位」、第3レースが「1位」であり、通算成績2775は、1位が「30回」、2位が「25回」、3位が「18回」である。
【0131】
プレーヤ状態データ278は、対戦ゲーム開始前の全てのプレーヤの状態についてのデータであり、そのデータ構成例を図16に示す。プレーヤ状態データ278には、各プレーヤそれぞれについて、主客識別フラグ2781と、プレーヤ名2782と、国籍2783と、状態2784と、選択マシン2785と、ローカル時刻2786とが対応付けられて記憶されている。これらのデータは、各対戦ゲームの開始前の準備段階において、随時更新される。
【0132】
主客識別フラグ2781は、当該プレーヤの主客を識別するためのフラグであり、当該プレーヤがホストプレーヤである場合は「ホスト」、ゲストプレーヤである場合は「ゲスト」がそれぞれ設定される。プレーヤ名2782及び国籍2783は、プレーヤデータ277のプレーヤ名2771及び国籍2772にそれぞれ対応している。
【0133】
状態2784は、当該プレーヤの状態であり、マシン選択画面(例えば図4)において、当該プレーヤによりマシンが選択されて準備完了が指示押下された場合に「準備完了」、観戦が指示押下された場合に「観戦」、それ以外の場合に「準備中」がそれぞれ設定される。
【0134】
選択マシン2785は、当該プレーヤにより選択されたマシンの種別である。但し、状態2784が「観戦」又は「準備中」である場合は、「−(無し)」が設定される。ローカル時刻2786は、当該プレーヤが利用するゲーム端末20の時計部290の計時時刻であり、リアルタイムに更新される。
【0135】
例えば、プレーヤ名2782が「李」であるプレーヤはゲストプレーヤであり、その国籍2783は「China(中国)」である。また、状態2784は「観戦」であり、ローカル時刻2786は「16時27分」である。
【0136】
ゲーム中データ279は、対戦ゲーム中のマシンの状態についてのデータであり、そのデータ構成例を図17に示す。ゲーム中データ279には、プレーヤ名2791と、現在位置姿勢2792と、速度2793と、順位2794とが対応付けて記憶されている。
【0137】
現在位置姿勢2792は、当該プレーヤが操作するマシンの現在の位置及び姿勢であり、ワールド座標系の座標値及び角度で表現される。速度2793は、当該プレーヤが操作するマシンの現在の走行速度である。また、順位2794は、当該プレーヤが操作するマシンの現在の順位である。これらのデータは、対戦ゲーム処理において随時更新される。
【0138】
自端末通信アドレスデータ281は、当該ゲーム端末20の通信アドレスが記憶されたデータである。自端末ホスト時データ283は、当該ゲーム端末20がホスト端末20aとして機能する場合に、管理サーバ10と各種データのやり取りを行うために用いられるデータである。
【0139】
時計部290は、現在の日時を計時するための時計回路であり、現在時刻を示す計時信号を処理部220に随時出力する。
【0140】
4.処理の流れ
次に、処理の流れについて説明する。
図18は、ゲーム端末20において実行されるメイン処理の流れを示すフローチャートである。
【0141】
先ず、メイン処理部221は、管理サーバ10へのログイン要求を行う(ステップA1)。そして、管理サーバ10によりパスワード認証が行われ、ログインに成功すると、メイン処理部221は、メニュー画面(例えば、図1のメニュー画面W1)を表示部240に表示させる(ステップA3)。
【0142】
次いで、メイン処理部221は、プレーヤによりプレイルームの新規作成が指示されたか否かを判定する(ステップA5)。具体的には、メニュー画面の作成アイコンJ1が指示押下されたか否かを判定する。
【0143】
そして、プレイルームの新規作成が指示されたと判定した場合は(ステップA5;Yes)、メイン処理部221は、管理サーバ10に対してプレイルーム作成要求を行う(ステップA7)。
【0144】
次いで、メイン処理部221は、プレーヤの操作入力に従って、ゲストプレーヤを締め切るか否かを判定する(ステップA9)。そして、まだ締め切らないと判定した場合は(ステップA9;No)、そのまま待機する。また、締め切ると判定した場合は(ステップA9;Yes)、ホスト用プレイルーム処理部2211が、ホスト用プレイルーム処理を行う(ステップA11)。
【0145】
図19は、ホスト用プレイルーム処理の流れを示すフローチャートである。ホスト用プレイルーム処理では、ゲーム端末20はホスト端末20aとして機能する。
先ず、ホスト用プレイルーム処理部2211は、管理サーバ10から送信された通信アドレスを受信する(ステップB1)。そして、ホスト用プレイルーム処理部2211は、受信した通信アドレスのゲスト端末20bとの通信を確立する(ステップB2)。
【0146】
次いで、ホスト用プレイルーム処理部2211は、通信を確立した全てのゲスト端末20bから、ローカル時刻(計時時刻)の受信を開始する(ステップB3)。
【0147】
その後、ホスト用プレイルーム処理部2211は、コース選択処理を行う(ステップB4)。具体的には、コース選択画面を表示部240に表示させ、ホストプレーヤの操作入力に従ってコースを1つ選択する。その後、ホスト用プレイルーム処理部2211は、選択したコースを全てのゲスト端末20bに送信する(ステップB5)。
【0148】
そして、ホスト用プレイルーム処理部2211は、マシン選択処理を行う(ステップB7)。具体的には、マシン選択画面を表示部240に表示させ、ホストプレーヤの操作入力に従ってマシンを1つ選択する。その後、ホスト用プレイルーム処理部2211は、選択したマシンを全てのゲスト端末20bに送信する(ステップB9)。
【0149】
次いで、ホスト用プレイルーム処理部2211は、プレーヤ状態一覧画面(例えば、図5のプレーヤ状態一覧画面W7)を表示部240に表示させる(ステップB11)。そして、ホスト用プレイルーム処理部2211は、ホストプレーヤによりゲストプレーヤの退室指示がなされたか否かを判定する(ステップB13)。
【0150】
具体的には、プレーヤ状態一覧画面に表示されているゲストプレーヤが選択・決定された場合に、当該ゲストプレーヤに対応付けられているチェックボックスをチェックし、退室アイコンJ8が指示押下されたか否かを判定する。そして、指示押下されたと判定した場合に、プレーヤ状態一覧画面に退室確認の小画面(例えば、図6の小画面SW9)を表示させ、OKアイコンJ9が指示押下されたか否かを判定する。
【0151】
ステップB13においてゲストプレーヤの退室指示がなされなかったと判定した場合は(ステップB13;No)、ホスト用プレイルーム処理部2211は、ステップB19へと処理を移行する。一方、ゲストプレーヤの退室指示がなされたと判定した場合は(ステップB13;Yes)、ホスト用プレイルーム処理部2211は、当該ゲストプレーヤのゲスト端末20bに退室要求を送信する(ステップB15)。
【0152】
そして、ホスト用プレイルーム処理部2211は、退室処理を行う(ステップB17)。具体的には、退室要求を送信したゲスト端末20bとの通信を強制的に切断する。
【0153】
次いで、ホスト用プレイルーム処理部2211は、全プレーヤのスタンバイが完了したか否かを判定する(ステップB19)。具体的には、全てのゲスト端末20bから、選択マシン或いは観戦要求を受信したか否かを判定する。
【0154】
そして、まだ全プレーヤのスタンバイが完了していないと判定した場合は(ステップB19;No)、ホスト用プレイルーム処理部2211は、ステップB13に戻り、完了したと判定した場合は(ステップB19;Yes)、プレーヤ状態一覧画面にスタンバイ完了の小画面(例えば、図7の小画面SW11)を表示させる。
【0155】
そして、対戦ゲーム処理部2215が、対戦ゲーム処理を行う(ステップB21)。尚、この対戦ゲーム処理は公知の処理であるため、説明を省略する。
【0156】
対戦ゲーム処理を終了すると、ホスト用プレイルーム処理部2211は、対戦結果画面を表示部240に表示させる(ステップB23)。そして、ホスト用プレイルーム処理部2211は、対戦を所定回数(例えば20回)行ったか否かを判定し(ステップB25)、まだ行っていないと判定した場合は(ステップB25;No)、ステップB4に戻り、行ったと判定した場合は(ステップB25;Yes)、ホスト用プレイルーム処理を終了する。
【0157】
図18のメイン処理に戻って、ホスト用プレイルーム処理を終了すると、メイン処理部221は、ステップA3に戻る。
【0158】
一方、ステップA5においてプレイルームの新規作成が指示されなかったと判定した場合は(ステップA5;No)、メイン処理部221は、プレーヤによりプレイルームの閲覧が指示されたか否かを判定する(ステップA13)。具体的には、メニュー画面の閲覧アイコンJ2が指示押下されたか否かを判定する。
【0159】
そして、プレイルームの閲覧が指示されたと判定した場合は(ステップA13;Yes)、メイン処理部221は、管理サーバ10に対してプレイルーム閲覧要求を行う(ステップA15)。
【0160】
次いで、メイン処理部221は、管理サーバ10からプレイルームの一覧を受信し、プレイルーム一覧画面(例えば、図2のプレイルーム一覧画面W3)を表示部240に表示させる(ステップA17)。
【0161】
そして、メイン処理部221は、プレーヤによりプレイルームへの入室が指示されたか否かを判定する(ステップA19)。具体的には、プレイルーム一覧画面の入室アイコンJ4が指示押下されたか否かを判定する。
【0162】
プレイルームへの入室が指示されなかったと判定した場合は(ステップA19;No)、メイン処理部221は、メニュー画面に戻るか否かを判定する(ステップA21)。具体的には、プレイルーム一覧画面のメニューアイコンJ5が指示押下されたか否かを判定する。
【0163】
そして、メニュー画面に戻ると判定した場合は(ステップA21;Yes)、メイン処理部221は、ステップA3に戻り、メニュー画面に戻らないと判定した場合は(ステップA21;No)、ステップA19に戻る。
【0164】
一方、ステップA19においてプレイルームへの入室が指示されたと判定した場合は(ステップA19;Yes)、メイン処理部221は、管理サーバ10に対してプレイルーム入室要求を行う(ステップA23)。そして、ゲスト用プレイルーム処理部2213が、ゲスト用プレイルーム処理を行う(ステップA25)。
【0165】
図20は、ゲスト用プレイルーム処理の流れを示すフローチャートである。ゲスト用プレイルーム処理では、ゲーム端末20はゲスト端末20bとして機能する。
先ず、ゲスト用プレイルーム処理部2213は、管理サーバ10から送信された通信アドレスを受信する(ステップC1)。そして、ゲスト用プレイルーム処理部2213は、受信した通信アドレスのホスト端末20aとの通信を確立する(ステップC2)。
【0166】
次いで、ゲスト用プレイルーム処理部2213は、通信を確立したホスト端末20aに対してローカル時刻(計時時刻)の送信を開始する(ステップC3)。
【0167】
その後、ゲスト用プレイルーム処理部2213は、マシン選択画面(例えば、図4のマシン選択画面W5)を表示部240に表示させる(ステップC4)。そして、ゲスト用プレイルーム処理部2213は、ホスト端末20aから退室要求を受信したか否かを判定する(ステップC5)。
【0168】
ステップC5において退室要求を受信しなかったと判定した場合は(ステップC5;No)、ゲスト用プレイルーム処理部2213は、プレーヤによりマシンが選択され、準備完了アイコンJ6が指示押下されたか否かを判定する(ステップC7)。
【0169】
そして、準備完了アイコンJ6が指示押下されたと判定した場合は(ステップC7;Yes)、ゲスト用プレイルーム処理部2213は、選択されたマシンをホスト端末20aに送信する(ステップC9)。
【0170】
一方、ステップC7において準備完了アイコンJ6が指示押下されなかったと判定した場合は(ステップC7;No)、ゲスト用プレイルーム処理部2213は、観戦アイコンJ7が指示押下されたか否かを判定する(ステップC11)。
【0171】
そして、観戦アイコンJ7が指示押下されなかったと判定した場合は(ステップC11;No)、ゲスト用プレイルーム処理部2213は、ステップC5に戻り、指示押下されたと判定した場合は(ステップC11;Yes)、観戦要求をホスト端末20aに送信する(ステップC13)。
【0172】
ステップC9或いはC13の処理を行うと、ゲスト用プレイルーム処理部2213は、プレーヤ状態一覧画面(例えば、図8のプレーヤ状態一覧画面W13)を表示部240に表示させる(ステップC15)。そして、ゲスト用プレイルーム処理部2213は、ホスト端末20aから退室要求を受信したか否かを判定する(ステップC17)。
【0173】
ステップC17において退室要求を受信しなかったと判定した場合は(ステップC17;No)、ゲスト用プレイルーム処理部2213は、全プレーヤのスタンバイが完了したか否かを判定する(ステップC19)。具体的には、共有データ275のプレーヤ状態データ278を参照し、全てのプレーヤの状態2784が「準備完了」或いは「観戦」であるか否かを判定する。
【0174】
そして、まだ全プレーヤのスタンバイが完了していないと判定した場合は(ステップC19;No)、ゲスト用プレイルーム処理部2213は、ステップC17に戻り、完了したと判定した場合は(ステップC19;Yes)、プレーヤ状態一覧画面にスタンバイ完了の小画面を表示させる。
【0175】
そして、対戦ゲーム処理部2215が、対戦ゲーム処理を行う(ステップC21)。この対戦ゲーム処理は、図19のホスト用プレイルーム処理のステップB21における対戦ゲーム処理と同一である。
【0176】
対戦ゲーム処理を終了すると、ゲスト用プレイルーム処理部2213は、対戦結果画面を表示部240に表示させる(ステップC23)。そして、ゲスト用プレイルーム処理部2213は、対戦を所定回数(例えば20回)行ったか否かを判定し(ステップC25)、まだ行っていないと判定した場合は(ステップC25;No)、ステップC4に戻り、行ったと判定した場合は(ステップC25;Yes)、ゲスト用プレイルーム処理を終了する。
【0177】
また、ステップC5又はC17においてホスト端末20aから退室要求を受信したと判定した場合も(ステップC5又はC17;Yes)、ゲスト用プレイルーム処理部2213は、ゲスト用プレイルーム処理を終了する。
【0178】
図18のメイン処理に戻って、ゲスト用プレイルーム処理を終了すると、メイン処理部221は、ステップA3に戻る。
【0179】
一方、ステップA13においてプレイルームの閲覧が指示されなかったと判定した場合は(ステップA13;No)、メイン処理部221は、プレーヤによりログアウトが指示されたか否かを判定する(ステップA27)。具体的には、メニュー画面のログアウトアイコンJ3が指示押下されたか否かを判定する。
【0180】
そして、ログアウトが指示されなかったと判定した場合は(ステップA27;No)、メイン処理部221は、ステップA5に戻る。一方、ログアウトが指示されたと判定した場合は(ステップA27;Yes)、メイン処理部221は、管理サーバ10に対してログアウト要求を行って(ステップA29)、メイン処理を終了する。
【0181】
5.ハードウェア構成
次に、本実施形態における管理サーバ10及びゲーム端末20を実現するためのハードウェア構成の一例について図21を参照して説明する。図21に示す電子機器100は、CPU1000、ROM1002、RAM1004、情報記憶媒体1006、画像生成IC1010、音生成IC1008、I/Oポート1014、1016を備え、各部がシステムバス1018により相互にデータ入出力可能に接続されている。I/Oポート1014にはコントロール装置1024が、I/Oポート1016には通信装置1026が、それぞれ接続されている。
【0182】
CPU1000は、情報記憶媒体1006に格納されるプログラム、ROM1002に格納されるシステムプログラム(装置本体の初期化情報等)、コントロール装置1024によって入力される信号等に従って、機器全体の制御や各種データ処理を行う。このCPU1000は、図11に示す処理部120及び図14に示す処理部220に対応する。
【0183】
RAM1004は、CPU1000の作業領域等として用いられる記憶部であり、情報記憶媒体1006やROM1002内の所与の内容、CPU1000の演算結果等が格納される。このRAM1004は、図11に示す記憶部160及び図14に示す記憶部260の一部を構成するものである。
【0184】
情報記憶媒体1006は、プログラム、画像データ、音データ、プレイデータ等が主に格納されるものである。この情報記憶媒体1006は、図11に示す記憶部160及び図14に示す記憶部260の一部を構成するものである。本実施形態を実現するものがコンピュータシステムである場合には、情報記憶媒体1006は、各種プログラム及びデータを格納する情報記憶媒体としてのCD−ROM、DVD或いはハードディスク等が用いられる。
【0185】
また、この装置に設けられている画像生成IC1010と音生成IC1008により、音や画像の好適な出力が行えるようになっている。
【0186】
画像生成IC1010は、CPU1000の命令によって、ROM1002、RAM1004、情報記憶媒体1006等から送られる情報に基づいて画素情報を生成する集積回路であり、生成される表示信号は表示装置1022に出力される。表示装置1022は、CRT、LCD、ELD、PDP、HMD等により実現され、図11に示す表示部140及び図14に示す表示部240に対応する。
【0187】
また、音生成IC1008は、CPU1000の命令によって、情報記憶媒体1006やROM1002に記憶される情報、RAM1004に格納される音データに応じた音信号を生成する集積回路であり、生成される音信号はスピーカ1020によって出力される。スピーカ1020は、図14に示す音出力部250に対応する。
【0188】
コントロール装置1024は、各種操作を入力するための装置であり、その機能は、キーボード、マウス、タッチパネル等のハードウェアにより実現される。このコントロール装置1024は、図11に示す操作部110及び図14に示す操作部210に対応する。
【0189】
通信装置1026は装置内部で利用される情報を外部とやりとりするものであり、他の装置と通信回線を介して接続されてプログラムに応じた所与の情報を送受すること等に利用される。この通信装置1026は、図11に示す通信部130及び図14に示す通信部230に対応する。
【0190】
6.作用効果
本実施形態によれば、ホスト端末20aは、各ゲスト端末20bそれぞれの時計部290の計時時刻を受信することで、ローカル時刻を取得する。そして、取得したローカル時刻を、対応するゲスト端末20bのゲストプレーヤのプレーヤ名と対応付けて、当該ゲスト端末20bのゲストプレーヤの状態と共に表示する。ゲスト端末20bのゲストプレーヤの状態が一向に準備完了或いは観戦とならない場合、当該ゲストプレーヤは寝落ちした可能性がある。ゲストプレーヤのプレーヤ名と対応付けてローカル時刻が表示されるため、寝落ちしたゲストプレーヤか否かをより確実に把握することが可能となる。
【0191】
また、ホストプレーヤは、任意に選択したゲストプレーヤをプレイルームから強制退室させることができる。具体的には、ホスト端末20aは、ホストプレーヤにより選択されたゲストプレーヤのゲスト端末20bとの通信を強制的に切断する。
【0192】
従って、ホストプレーヤは、あるゲストプレーヤのスタンバイが一向に完了しない場合は、当該ゲストプレーヤのゲスト端末20bのローカル時刻を確認し、寝落ちしたと判断すれば、当該ゲストプレーヤをプレイルームから強制退室させることができる。従って、寝落ちしたプレーヤのためにゲームの進行が妨げられることが効果的に防止される。
【0193】
7.変形例
7−1.システム構成
本実施形態では、管理サーバ10がプレーヤの管理や、プレイルームの管理を行うものとして説明したが、この管理サーバ10の機能を何れかのゲーム端末20が実現するとして、ゲーム端末20同士が接続されてなるゲームシステムを構成しても良い。具体的には、上述した(A)〜(D)のネットワークゲームを利用したゲームシステムの構成のうち、例えば(C)の構成であっても良い。
【0194】
7−2.ゲーム端末
ゲーム端末20は、必ずしも家庭用ゲーム機である必要はなく、携帯型ゲーム機や業務用ゲーム機であっても良い。また、家庭用のパーソナル・コンピュータ(PC)であっても勿論良い。
【0195】
7−3.他のゲームへの適用
本発明を適用可能なネットワークゲームは、何もレースゲームに限られるわけではなく、麻雀ゲームやカードゲーム等にも適用可能である。何れにせよ、全てのプレーヤのゲーム端末20のローカル時刻を監視することを可能とし、任意に選択したプレーヤのゲーム端末20との通信を切断することができれば良い。
【0196】
7−4.ゲストプレーヤの強制退室
強制退室させるゲストプレーヤを、ゲストプレーヤが決定できるようにしても良い。具体的には、ゲスト端末20bは、ホスト端末20aと同様のプレーヤ状態一覧画面を表示する。そして、ゲストプレーヤにより、強制退室させる他のゲストプレーヤが決定された場合に、そのゲストプレーヤのプレーヤ名をホスト端末20aに送信する。そして、ホスト端末20aは、受信したプレーヤ名のゲストプレーヤのゲスト端末20bとの通信を切断する。
【0197】
7−5.ゲストプレーヤの再入室
ゲストプレーヤを強制退室させた場合に、その回の対戦ゲームが終了した段階で、当該ゲストプレーヤを再入室させることにしても良い。具体的には、ホスト端末20aは、退室処理において通信を切断したゲスト端末20bの通信アドレスを記憶しておく。そして、対戦ゲーム処理を行った後に、記憶しておいた通信アドレスに従って、当該ゲスト端末20bとの通信を再確立する。これにより、ゲストプレーヤが一時的に寝落ちして強制退室させられたような場合であっても、次の対戦ゲームから参加させることが可能となる。
【0198】
7−6.ゲストプレーヤの状態の強制変更
また、ゲストプレーヤを強制退室させるのではなく、ゲストプレーヤの状態を強制的に観戦に変更することにしても良い。具体的には、ホスト端末20aに表示されるプレーヤ状態一覧画面において、退室アイコンの代わりに、観戦アイコンを表示するようにする。そして、ホストプレーヤによりゲストプレーヤが選択・決定されて観戦アイコンが指示押下された場合に、当該ゲストプレーヤの状態を強制的に観戦に変更する。この場合も、ゲストプレーヤが一時的に寝落ちしてしまったとしても、次の対戦ゲームから参加させることが可能となる。
【0199】
7−7.プレーヤの状態の表示変更
プレーヤ状態一覧画面において、所定の条件を満たしたプレーヤの状態の表示を変更することにしても良い。例えば、「ローカル時刻が「0:00〜5:00」の深夜の時間帯に含まれ、且つ、プレーヤの状態が「準備中」のまま1分を経過したこと」を条件とし、この条件を満たしたプレーヤの状態の表示を「準備中」から「就寝中」に変更するようにする。また、例えば「準備中」の表示色を黒色から赤色に変更するようにしても良いし、「準備中」を明滅表示させるようにしても良い。
【0200】
図22は、ホスト端末20aにおいて表示されるプレーヤ状態一覧画面の一例であるプレーヤ状態一覧画面W21を示す図である。
ゲストプレーヤ「John」のローカル時刻「3:24」が、「0:00〜5:00」の深夜の時間帯に含まれており、且つ、その状態が「準備中」のまま1分が経過したため、状態の表示が「就寝中」となっている。
【0201】
尚、この場合は、ローカル時刻を表示しないことにしても良い。プレーヤの状態の表示を変更すれば、ローカル時刻を表示しなくとも、当該プレーヤが寝落ちしたことを他のプレーヤは把握することができるからである。
【0202】
7−8.アイコンの表示
また、所定の条件を満たしたプレーヤにアイコンを表示することにしても良い。例えば、「ローカル時刻が「0:00〜5:00」の深夜の時間帯に含まれ、且つ、プレーヤの状態が「準備中」のまま1分を経過したこと」を条件とし、この条件を満たしたプレーヤに就寝アイコンを表示するようにする。この就寝アイコンは、例えば人が寝ている様子が描かれたアイコンとしても良いし、月が描かれたアイコンとしても良い。
【0203】
図23は、ホスト端末20aにおいて表示されるプレーヤ状態一覧画面の一例であるプレーヤ状態一覧画面W23を示す図である。
ゲストプレーヤ「John」のローカル時刻「3:24」が、「0:00〜5:00」の深夜の時間帯に含まれており、且つ、その状態が「準備中」のまま1分が経過したため、ローカル時刻の右方に、人が寝ている様子が描かれた就寝アイコンJ23が表示されている。
【0204】
尚、この場合も、ローカル時刻を表示しないことにしても良い。就寝アイコンを表示すれば、ローカル時刻を表示しなくとも、当該プレーヤが寝落ちしたことを他のプレーヤは把握することができるからである。
【0205】
同様に、例えば「ローカル時刻が「8:00〜18:00」の昼間の時間帯に含まれること」を条件とし、この条件を満たしたプレーヤにお日様アイコンを表示するようにすることも可能である。
【0206】
図24は、ホスト端末20aにおいて表示されるプレーヤ状態一覧画面の一例であるプレーヤ状態一覧画面W25を示す図である。
ゲストプレーヤ「John」以外の全てのプレーヤのローカル時刻が「8:00〜18:00」の昼間の時間帯に含まれるため、ローカル時刻の右方に、太陽が描かれたお日様アイコンJ25が表示されている。
【0207】
7−9.時間帯条件の設定
ローカル時刻が何れの時間帯に含まれる場合に、上述したようなプレーヤの状態の表示変更やアイコン表示を行うかという条件(以下、「時間帯条件」と呼ぶ。)を、各プレーヤが設定できるようにしても良い。具体的には、ゲストプレーヤは、所望の時間帯を入力してホスト端末20aに送信する。ホスト端末20aは、受信した時間帯を当該ゲストプレーヤに対応付けて記憶しておく。そして、プレーヤ状態一覧画面において、当該ゲストプレーヤのローカル時刻が、記憶しておいた時間帯に含まれる場合に、当該ゲストプレーヤの状態の表示変更やアイコン表示を行うようにする。
【0208】
生活習慣はプレーヤによって異なるため、時間帯条件を画一的なものにすると、本当は寝落ちしていないプレーヤに対して状態の表示変更やアイコン表示がなされ、誤って当該プレーヤが強制退室させられるおそれがある。しかし、各プレーヤが時間帯条件を個別に設定できるようにすれば、こういった事態が発生することもなくなる。
【0209】
7−10.ローカル時刻の算出
本実施形態では、ホスト端末20aが、各ゲスト端末20bの時計部270の計時時刻をローカル時刻として受信するものとして説明したが、各ゲスト端末20bのローカル時刻を算出することにしても良い。
【0210】
具体的には、ゲーム端末20の記憶部260に、異なる国の間の時差が予め計算された時差データを記憶させておく。そして、ホスト端末20aは、時差データを参照することで、各ゲスト端末20bのゲストプレーヤの国籍の国と、ホストプレーヤの国籍の国との時差を判定する。そして、判定した時差を、自端末の時計部270の計時時刻に加減算することで、各ゲスト端末20bのローカル時刻を算出して表示する。
【0211】
各ゲスト端末20bから時計部270の計時時刻を受信して表示すると、毎正時正分の切り替わりがばらばらになってしまうという問題がある。しかし、各ゲスト端末20bのローカル時刻を算出して表示することにすれば、こういった問題は発生しなくなる。
【0212】
また、このローカル時刻の算出を、管理サーバ10が行うことにしても良い。具体的には、管理サーバ10にも時計部を備えさせておき、記憶部160に時差データを記憶させておく。そして、管理サーバ10は、時差データを参照することで、自装置が配設されている国と、各プレーヤの国籍の国に対応する時差を判定する。そして、判定した時差を、自装置の時計部の計時時刻に加減算することで、各ゲーム端末20のローカル時刻を算出し、算出した各ゲーム端末20のローカル時刻を、ホスト端末20aに送信する。
【0213】
各ゲーム端末20の時計の計時時刻は、各プレーヤが定期的に時刻合わせを行わない限り、正確な時刻ではない可能性がある。しかし、管理サーバ10の計時時刻が正確であれば、プレーヤの属地情報である国籍に基づいて算出される各ゲーム端末20のローカル時刻も正確なものとなるため、不正確なローカル時刻が表示されることがなくなる。
【0214】
7−11.時差の判定
また、ローカル時刻の算出を行う際の時差の判定を、プレーヤの国籍に基づいて行うのではなく、ゲーム端末20の利用区域に基づいて行うことにしても良い。具体的には、各ゲーム端末20の記憶部260に、リージョンコードに代表される機器利用区域識別情報を記憶させておく。また、この場合は、異なる利用区域間の時差が予め計算された利用区域間時差データを記憶部260に記憶させておく。
【0215】
そして、ホスト端末20aは、各ゲスト端末20bから機器利用区域識別情報を受信し、利用区域間時差データを参照することで、受信した機器利用区域識別情報によって特定される利用区域と、自端末に記憶されている機器利用区域識別情報によって特定される利用区域との時差を判定する。
【0216】
尚、管理サーバ10がローカル時刻の算出を行う場合も、各ゲーム端末20から機器利用区域識別情報を受信することで、時差の判定を同様に行うことが可能である。
【0217】
7−12.ホストプレーヤの受継
ホスト端末20aの故障等、何らかの原因でホスト端末20aと全てのゲスト端末20bとの通信が切断された場合は、何れかのゲスト端末20bがホスト端末20aとして機能するようにしても良い。具体的には、管理サーバ10は、ホスト端末20aの通信が切断された場合に、ゲスト端末20bをランダムに1つ選択し、当該ゲスト端末20bに、ホスト端末20aの受継通知と、他の全てのゲスト端末20bの通信アドレスとを送信する。また、管理サーバ10は、この新たなホスト端末20aの通信アドレスを、全てのゲスト端末20bそれぞれに送信する。
【0218】
そして、新たなホスト端末20aは、全てのゲスト端末20aとの通信を確立したら、ホスト用プレイルームプログラム2613に従ってホスト用プレイルーム処理を行う。即ち、新たなホスト端末20aが、ゲスト端末20bのゲーム参加を拒絶する権限を受け継ぐことになる。
【0219】
尚、新たなホスト端末20aをランダムに決定するのではなく、例えば対戦ゲームの通算成績が最も良いゲストプレーヤのゲスト端末20bをホスト端末20aに決定するようにしても良い。
【0220】
7−13.強制退室の制限
ローカル時刻が所定の時間帯に含まれるゲスト端末20bのゲストプレーヤだけを、強制退室の対象とするように制限しても良い。例えば「0:00〜5:00」の深夜の時間帯を、強制退室させることを許可する時間帯(以下、「退室許可時間帯」と呼ぶ。)として設定しておく。そして、ローカル時刻がこの退室許可時間帯に含まれるゲスト端末20bのゲストプレーヤだけを、ホストプレーヤによる強制退室の指示ができるように制限する。
【0221】
この場合、「7−8.アイコンの表示」で説明したアイコン表示と組み合わせることで、例えば図23に示したような就寝アイコンJ23が表示されているプレーヤだけが、強制退室の対象となることになる。
【0222】
また、ローカル時刻が所定の時間帯に含まれるゲスト端末20bのゲストプレーヤを、強制退室の対象から外すように制限しても良い。例えば「8:00〜18:00」の昼間の時間帯や、上述した「0:00〜5:00」の深夜の時間帯以外の時間帯を、強制退室させることを禁止する時間帯(以下、「退室禁止時間帯」と呼ぶ。)として設定しておく。そして、ローカル時刻がこの退室禁止時間帯に含まれるゲスト端末20bのゲストプレーヤに対しては、ホストプレーヤによる強制退室の指示ができないように制限する。
【0223】
この場合、「7−8.アイコンの表示」で説明したアイコン表示と組み合わせることで、例えば図24に示したようなお日様アイコンJ25が表示されているプレーヤは、強制退室の対象とならないことになる。従って、昼間の時間帯で寝落ちの心配のないゲストプレーヤが誤って強制退室させられるといったことが、効果的に防止されるようになる。
【図面の簡単な説明】
【0224】
【図1】ゲーム端末において表示されるメニュー画面の一例を示す図。
【図2】ゲーム端末において表示されるプレイルーム一覧画面の一例を示す図。
【図3】1つのプレイルームに係る対戦ゲームの流れを示すフローチャート。
【図4】ゲスト端末において表示されるマシン選択画面の一例を示す図。
【図5】ホスト端末において表示されるプレーヤ状態一覧画面の一例を示す図。
【図6】ホスト端末において表示されるプレーヤ状態一覧画面の一例を示す図。
【図7】ホスト端末において表示されるプレーヤ状態一覧画面の一例を示す図。
【図8】ゲスト端末において表示されるプレーヤ状態一覧画面の一例を示す図。
【図9】(a)ゲームシステムの物理的構成を示す図。(b)1つのプレイルームに係るゲームシステムの論理的構成を示す図。
【図10】ゲーム端末の概略外観図。
【図11】管理サーバの機能構成を示すブロック図。
【図12】プレーヤ管理DBのデータ構成例を示す図。
【図13】プレイルーム管理DBのデータ構成例を示す図。
【図14】ゲーム端末の機能構成を示すブロック図。
【図15】プレーヤデータ群のデータ構成例を示す図。
【図16】プレーヤ状態データのデータ構成例を示す図。
【図17】ゲーム中データのデータ構成例を示す図。
【図18】メイン処理の流れを示すフローチャート。
【図19】ホスト用プレイルーム処理の流れを示すフローチャート。
【図20】ゲスト用プレイルーム処理の流れを示すフローチャート。
【図21】ハードウェア構成例を示す図。
【図22】変形例におけるプレーヤ状態一覧画面の一例を示す図。
【図23】変形例におけるプレーヤ状態一覧画面の一例を示す図。
【図24】変形例におけるプレーヤ状態一覧画面の一例を示す図。
【符号の説明】
【0225】
1 ゲームシステム
10 管理サーバ
110 操作部
120 処理部
121 プレーヤ管理部
123 プレイルーム管理部
130 通信部
140 表示部
160 記憶部
161 プレーヤ管理プログラム
163 プレイルーム管理プログラム
171 プレーヤ管理DB
172 プレーヤ管理データ
173 プレイルーム管理DB
174 プレイルーム管理データ
20 ゲーム端末
20a ホスト端末
20b ゲスト端末
210 操作部
220 処理部
221 メイン処理部
2211 ホスト用プレイルーム処理部
2213 ゲスト用プレイルーム処理部
2215 対戦ゲーム処理部
224 画像生成部
226 音生成部
230 通信部
240 表示部
250 音出力部
260 記憶部
261 メインプログラム
2611 ホスト用プレイルームプログラム
2613 ゲスト用プレイルームプログラム
2615 対戦ゲームプログラム
271 マシンモデルデータ
273 コースデータ
2731 マップデータ
2733 オブジェクトデータ
275 共有データ
276 プレーヤデータ群
277 プレーヤデータ
278 プレーヤ状態データ
279 ゲーム中データ
281 自端末通信アドレスデータ
283 自端末ホスト時データ
290 時計部

【特許請求の範囲】
【請求項1】
コンピュータである自プレーヤ端末に、複数の他プレーヤ端末と所定の通信を行わせて、全プレーヤの事前設定が完了して後にゲームへの参加設定がなされたプレーヤ端末同士によるゲーム進行を開始するネットワークゲームを実行させるためのプログラムであって、
前記他プレーヤ端末それぞれのローカル時刻を取得するローカル時刻取得手段、
前記取得されたローカル時刻及び/又は当該ローカル時刻に基づく画像を、対応する他プレーヤ端末のプレーヤ識別子と対応付けて、当該他プレーヤ端末の事前設定の状況とともに表示制御する事前設定状況表示制御手段、
自プレーヤの操作入力に従って、他プレーヤ端末が事前設定中に当該他プレーヤ端末のゲーム参加を拒絶する拒絶制御手段、
として前記自プレーヤ端末を機能させるためのプログラム。
【請求項2】
前記各プレーヤ端末は時計機能を有し、
前記ローカル時刻取得手段が、前記他プレーヤ端末それぞれから、当該他プレーヤ端末の時計機能の計時時刻をローカル時刻として受信する時刻受信手段を有するように前記自プレーヤ端末を機能させるための請求項1に記載のプログラム。
【請求項3】
自プレーヤ端末は時計機能を有し、
前記他プレーヤ端末それぞれから、当該他プレーヤ端末又は当該他プレーヤの属地情報を受信する属地情報受信手段として前記自プレーヤ端末を機能させるとともに、
前記ローカル時刻取得手段が、前記受信された属地情報と、予め設定された自プレーヤ端末又は自プレーヤの属地情報と、前記時計機能の計時時刻とに基づいて、前記他プレーヤ端末それぞれのローカル時刻を算出するローカル時刻算出手段を有するように前記自プレーヤ端末を機能させるための請求項1に記載のプログラム。
【請求項4】
前記プレーヤ端末それぞれには、前記属地情報として、当該プレーヤ端末の利用区域を識別するための機器利用区域識別情報が記憶されており、
前記属地情報受信手段が、前記他プレーヤ端末それぞれから、当該他プレーヤ端末に記憶されている属地情報を当該他プレーヤ端末又は当該他プレーヤの属地情報として受信するように前記自プレーヤ端末を機能させるための請求項3に記載のプログラム。
【請求項5】
前記ローカル時刻取得手段が、前記各プレーヤ端末と通信して当該各プレーヤ端末のローカル時刻を判定するサーバから、前記他プレーヤ端末それぞれのローカル時刻を取得するように前記自プレーヤ端末を機能させるための請求項1に記載のプログラム。
【請求項6】
前記ネットワークゲームは、前記事前設定を行う準備段階と、ゲームが進行するゲーム進行段階とを繰り返すゲームであり、
前記事前設定状況表示制御手段が、前記準備段階で、前記他プレーヤ端末の事前設定の状況を表示し、
前記拒絶制御手段が、前記準備段階において、前記複数の他プレーヤ端末のうち、以降のゲーム参加を拒絶する他プレーヤ端末を自プレーヤの操作入力に従って選択する選択手段を有し、前記選択された他プレーヤ端末のゲーム参加を拒絶する、
ように前記自プレーヤ端末を機能させるための請求項1〜5の何れか一項に記載のプログラム。
【請求項7】
前記拒絶制御手段により拒絶された他プレーヤ端末を再度ゲーム参加させる復帰制御手段として前記自プレーヤ端末を機能させるための請求項6に記載のプログラム。
【請求項8】
ローカル時刻が所与の時間帯条件を満たす他プレーヤ端末を検出する検出手段として前記自プレーヤ端末を機能させ、
前記事前設定状況表示制御手段が、前記検出された他プレーヤ端末を、他の他プレーヤ端末と識別させる表示制御を行う検出端末識別表示制御手段を有するように前記自プレーヤ端末を機能させるための請求項1〜7の何れか一項に記載のプログラム。
【請求項9】
前記他プレーヤ端末それぞれから、前記事前設定を徒過する可能性のある時間帯を示す時間帯条件を受信する時間帯条件受信手段、
前記他プレーヤ端末のうち、ローカル時刻が前記時間帯条件受信手段により受信された当該他プレーヤ端末の時間帯条件を満たす他プレーヤ端末を検出する検出手段、
として前記自プレーヤ端末を機能させ、
前記事前設定状況表示制御手段が、前記検出された他プレーヤ端末を、他の他プレーヤ端末と識別させる表示制御を行う検出端末識別表示制御手段を有するように前記自プレーヤ端末を機能させるための請求項1〜7の何れか一項に記載のプログラム。
【請求項10】
ローカル時刻が所与の時間帯条件を満たす他プレーヤ端末を検出する検出手段として前記自プレーヤ端末を機能させ、
前記拒絶制御手段が、自プレーヤの操作入力に従ってゲーム参加を拒絶できる他プレーヤ端末を、前記検出手段によって検出された他プレーヤ端末に限る拒絶可能端末制限手段を有するように前記自プレーヤ端末を機能させるための請求項1〜7の何れか一項に記載のプログラム。
【請求項11】
ローカル時刻が所与の時間帯条件を満たす他プレーヤ端末を検出する検出手段として前記自プレーヤ端末を機能させ、
前記拒絶制御手段が、前記検出手段によって検出された他プレーヤ端末のゲーム参加を拒絶できないように制御する拒絶可能端末制限手段を有するように前記自プレーヤ端末を機能させるための請求項1〜7の何れか一項に記載のプログラム。
【請求項12】
請求項1〜11の何れか一項に記載のプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体。
【請求項13】
複数の他プレーヤ端末と所定の通信を行い、全プレーヤの事前設定が完了して後にゲームへの参加設定がなされたプレーヤ端末同士によるゲーム進行を開始するネットワークゲームを実行するプレーヤ端末であって、
前記他プレーヤ端末それぞれのローカル時刻を取得するローカル時刻取得手段と、
前記取得されたローカル時刻及び/又は当該ローカル時刻に基づく画像を、対応する他プレーヤ端末のプレーヤ識別子と対応付けて、当該他プレーヤ端末の事前設定の状況とともに表示制御する事前設定状況表示制御手段と、
自プレーヤの操作入力に従って、他プレーヤ端末が事前設定中に当該他プレーヤ端末のゲーム参加を拒絶する拒絶制御手段と、
を備えたプレーヤ端末。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate


【公開番号】特開2007−325630(P2007−325630A)
【公開日】平成19年12月20日(2007.12.20)
【国際特許分類】
【出願番号】特願2006−157095(P2006−157095)
【出願日】平成18年6月6日(2006.6.6)
【出願人】(000134855)株式会社バンダイナムコゲームス (1,157)
【Fターム(参考)】