[1.ゲームシステムの全体構成]
以下、本発明に係る実施形態を図面に基づいて説明する。なお、図面において同一又は対応する構成には同一の符号を付し、繰り返しの説明を省略することがある。
図1は、ゲームシステムの全体構成を示す図である。図1に示すように、本実施形態に係るゲームシステムSは、第1ゲーム端末10A、第2ゲーム端末10B、第3ゲーム端末10C、ゲームサーバ30、及びドメインネームサーバ50を含む。例えば、第3ゲーム端末10Cとゲームサーバ30は、インターネットなどのネットワークNに接続され、第1ゲーム端末10A、第2ゲーム端末10B、及びドメインネームサーバ50は、無線LAN(Local Area Network)などのプライベートネットワークPNに接続される。
なお、以降では、第1ゲーム端末10A、第2ゲーム端末10B、及び第3ゲーム端末10Cを特に区別する必要のないときは、単にゲーム端末10と記載する。また、本実施形態では、ゲーム端末10が3台である場合を説明するが、ゲームシステムS内のゲーム端末10の台数に制限はなく、2台であってもよいし4台以上であってもよい。同様に、ゲームシステムS内のゲームサーバ30及びドメインネームサーバ50の台数に制限はなく、2台以上のゲームサーバ30又はドメインネームサーバ50が存在してもよい。また、ゲーム端末10、ゲームサーバ30、及びドメインネームサーバ50以外のコンピュータがゲームシステムSに含まれていてもよい。
ゲーム端末10は、ユーザが操作するコンピュータである。例えば、ゲーム端末10は、携帯端末(例えば、スマートフォンなどの携帯電話又はタブレット型コンピュータ)、パーソナルコンピュータ、携帯ゲーム機、又は、情報処理機能を備えた多機能型テレビジョン受像機(スマートテレビ)等である。なお、ゲームシステムSに含まれる各ゲーム端末10は、他のゲーム端末10と機種・性能・オペレーティングシステム等が異なってもよい。
図1に示すように、ゲーム端末10は、制御部11、記憶部12、通信部13、操作部14、及び表示部15を含む。制御部11は、少なくとも1つのマイクロプロセッサを含む。例えば、制御部11は、複数のマイクロプロセッサを含んでもよい。制御部11は、オペレーティングシステムやその他のプログラムに従って処理を実行する。記憶部12は、主記憶部(例えば、RAM)及び補助記憶部(例えば、不揮発性の半導体メモリ)を含む。記憶部12は、プログラムやデータを記憶する。なお、例えば、ゲーム端末10がパーソナルコンピュータ等である場合、記憶部12は、例えばハードディスクドライブ又はソリッドステートドライブ等の補助記憶部を含むようにしてもよい。通信部13は、通信モジュールや通信インタフェースを含む。通信部13は、ネットワークN又はプライベートネットワークPNを介してデータ通信を行う。
操作部14は、入力デバイスであり、例えば、ボタン、キー、レバー、ゲームコントローラ(ゲームパッド)、マウスやタッチパネルなどのポインティングデバイス、又はキーボード等を含んでもよい。また例えば、操作部14は、ユーザが音声又はジェスチャによって入力操作を行うためのマイクやカメラを含んでもよい。表示部15は、例えば、液晶表示パネル又は有機ELディスプレイ等であり、制御部11の指示に従って画面を表示する。なお、操作部14及び表示部15は、ゲーム端末10に内蔵されていなくともよく、ゲーム端末10に接続された外部装置であってもよい。
ゲームサーバ30は、サーバコンピュータである。図1に示すように、ゲームサーバ30は、制御部31、記憶部32、及び通信部33を含む。制御部31、記憶部32、及び通信部33のハードウェア構成は、それぞれ制御部11、記憶部12、及び通信部13と同様であってよい。例えば、ゲームサーバ30は、ゲームプログラムを記憶しており、ゲーム端末10からの要求に応じてゲームプログラムを配信する。
ドメインネームサーバ50は、サーバコンピュータである。図1に示すように、ドメインネームサーバ50は、制御部51、記憶部52、及び通信部53を含む。制御部51、記憶部52、及び通信部53のハードウェア構成は、それぞれ制御部11、記憶部12、及び通信部13と同様であってよい。例えば、ドメインネームサーバ50は、ホスト名やドメイン名などの名称からIPアドレスなどの情報を得るためのサーバであり、これらを関連付けて記憶部52に記憶する。ここでは、プライベートネットワークPN内のドメインネームサーバ50が利用されるので、外部のドメインネームサーバには情報が送信されない。
なお、記憶部12,32,52に記憶されるものとして説明するプログラムやデータは、例えば、ネットワークN又はプライベートネットワークPNを介してゲーム端末10、ゲームサーバ30、又はドメインネームサーバ50に供給されるようにしてもよい。また、ゲーム端末10、ゲームサーバ30、又はドメインネームサーバ50は、情報記憶媒体(例えば、光ディスク又はメモリカード等)に記憶されたプログラム又はデータを読み取るための読取部(例えば、光ディスクドライブ又はメモリカードスロット)を含むようにしてもよい。そして、情報記憶媒体を介してゲーム端末10、ゲームサーバ30、又はドメインネームサーバ50にプログラムやデータが供給されるようにしてもよい。
[2.ゲームの概要]
ゲームシステムSは、複数のユーザがプレイするゲームを実行する。ゲームとしては、複数のユーザが互いに対戦するゲームであってもよいし、複数のユーザが互いに協力するゲームであってもよい。本実施形態では、サッカーゲームが用いられる場合を一例として説明するが、ゲーム形式・ジャンルを問わず任意のゲームであってよく、例えば、サッカー以外のスポーツゲーム(例えば、野球ゲーム)、カードゲーム、アクションゲーム、ロールプレイングゲーム、シミュレーションゲーム、レースゲーム、ボードゲーム、又は格闘ゲームであってもよい。
本実施形態のゲームでは、複数の対戦形式が用意されている。ここでは、対戦形式の一例として、無線通信可能な端末同士で通信しながら実行されるローカル対戦と、ローカル対戦とは異なるオンライン対戦と、を説明する。なお、無線通信とは、例えば、電波による通信であり、伝送路として有線を使用しない通信である。
例えば、ローカル対戦では、複数のユーザがゲーム端末10を持ち寄って集まり、各ゲーム端末10が互いにP2Pで直接的に通信しながらゲームを実行する。別の言い方をすれば、ローカル対戦では、各ゲーム端末10が無線通信における通信範囲内にいる状態で、互いに通信しながらゲームが実行される。一方、オンライン対戦は、例えば、特に複数のユーザがゲーム端末10を持ち寄って集まる必要はなく、遠く離れたユーザと対戦することが可能である。別の言い方をすれば、オンライン対戦は、場所を選ばずにプレイすることができ、各ゲーム端末10は、ゲームサーバ30等を介して間接的に通信しながらゲームを実行する。
本実施形態では、各ユーザは、ローカル対戦をプレイするために、ゲーム内に生成された対戦部屋に入室する場合を説明するが、特に対戦部屋が生成されなくてもよい。ここでは、第1ゲーム端末10Aを操作するユーザAが対戦部屋を生成し、第2ゲーム端末10Bを操作するユーザBと、第3ゲーム端末10Cを操作するユーザCと、が当該対戦部屋に入室する場合を説明する。例えば、ユーザAが第1ゲーム端末10Aを操作してゲームプログラムが起動すると、メニュー画像が表示部15に表示される。
図2は、メニュー画像の一例を示す図である。図2に示すように、メニュー画像G1は、ゲームに用意された種々のモードを選択するための画像である。例えば、メニュー画像G1には、期間限定のゲームイベントに参加するためのイベントボタンB10、オンライン対戦をプレイするためのオンライン対戦ボタンB11、1シーズンを通しての試合成績を競うシーズンマッチボタンB12,B13、及びローカル対戦をプレイするためのローカル対戦ボタンB14が表示される。
本実施形態では、主に、ローカル対戦に係る処理を説明する。このため、以降では、ユーザAがローカル対戦ボタンB14を選択した場合の画面遷移を説明する。例えば、ローカル対戦は、複数のモードが用意されており、ユーザAがローカル対戦ボタンB14を選択すると、モードを選択するためのダイアログが表示される。
図3は、ユーザがローカル対戦ボタンB14を選択した場合のメニュー画像の一例を示す図である。図3に示すように、ダイアログD15には、ローカル対戦における複数のモードが選択可能に表示される。ここでは、ローカル対戦のモードとして、1対1で1試合のみプレイするエキシビションと、複数のユーザが総当たり戦で対戦するローカルリーグと、の2種類が用意されている場合を説明するが、ローカル対戦のモードは、1種類だけであってもよいし3種類以上が用意されていてもよい。例えば、勝ち抜き戦が行われるトーナメント形式のモードが用意されていてもよいし、総当たり戦で予選リーグを行い、勝ち抜き戦の決勝リーグが行わるといったモードが用意されていてもよい。
例えば、ダイアログD15には、エキシビションをプレイするためのエキシビションボタンB150が表示される。ユーザAがエキシビションボタンB150を選択すると、無線通信可能な他の端末と通信しながら1対1で1試合のみのローカル対戦をプレイすることができる。また例えば、ダイアログD15には、エキシビションの過去の戦績を表示させるための戦績ボタンB151が表示される。ユーザAが戦績ボタンB151を選択すると、ユーザAが過去にプレイしたエキシビションの戦績を表示させることができる。また例えば、ダイアログD15には、エキシビションの試合の履歴を表示させるための試合履歴ボタンB152が表示される。ユーザAが試合履歴ボタンB152を選択すると、ユーザが過去にプレイしたエキシビションの履歴を表示させることができる。
また例えば、ダイアログD15には、ローカルリーグをプレイするためのローカルリーグボタンB153が表示される。ユーザAがローカルリーグボタンB153を選択すると、ローカルリーグをプレイすることができる。また例えば、ダイアログD15には、ローカルリーグの過去の参加履歴を表示させるための参加履歴ボタンB154が表示される。ユーザAが参加履歴ボタンB154を選択すると、ローカルリーグの参加履歴を表示させることができる。なお、ユーザAが戻るボタンB155を選択すると、ダイアログD15が消去される。
ここでは、主に、ローカルリーグに係る処理を説明する。このため、以降では、ユーザAがローカルリーグボタンB153を選択した場合の画面遷移を説明する。例えば、ユーザAがローカルリーグボタンB153を選択すると、参加可能な対戦部屋を検索するための対戦部屋検索画像が表示部15に表示される。
図4は、対戦部屋検索画像の一例を示す図である。図4に示すように、対戦部屋検索画像G2は、ユーザAが入室可能な対戦部屋の一覧を表示するための表示領域A20を含む。仮に、ユーザAの近くにいるユーザB,Cが対戦部屋を生成していれば、表示領域A20には、当該対戦部屋が表示されるが、ここでは、まだ誰も対戦部屋を生成していないので、表示領域A20には、対戦部屋は表示されず、対戦部屋を検索中であることを示すメッセージが表示される。
また例えば、対戦部屋検索画像G2には、対戦部屋を新たに生成するための新規作成ボタンB21が表示される。ユーザAが新規作成ボタンB21を選択すると、新たに対戦部屋を生成することができる。例えば、ユーザAがローカル対戦ボタンB14を選択すると、対戦部屋の名前を入力するためのダイアログが表示される。なお、ユーザAが再読み込みリロードボタンB22を選択すると、対戦部屋検索画像G2のリロードをすることができる。
図5は、ユーザAが新規作成ボタンB21を選択した場合の対戦部屋検索画像G2の一例を示す図である。図5に示すように、ダイアログD23には、対戦部屋の名前を入力するための入力フォームF230が表示される。例えば、ユーザAは、自分が生成する対戦部屋に好きな名前を付けることができる。なお、ユーザAがキャンセルボタンB231を選択すると、ダイアログD23が消去される。
また例えば、対戦部屋検索画像G2には、ユーザAが入力した対戦部屋の名前を確定するためのOKボタンB232が表示される。ユーザAが入力フォームF230に対戦部屋の名前を入力してOKボタンB232を選択すると、当該名前の対戦部屋を生成することができる。なお、ここでは、ダイアログD23から対戦部屋の名前だけを設定可能としている場合を説明するが、名前以外の設定ができるようにしてもよく、例えば、対戦部屋に入室可能なユーザ数などを設定可能であってもよい。
図6は、ユーザAが対戦部屋を生成した場合の対戦部屋検索画像G2の一例を示す図である。図6に示すように、対戦部屋の生成が完了したことを示すダイアログD24が対戦部屋検索画像G2に表示される。ユーザAがOKボタンB240を選択すると、対戦部屋に入室したユーザを示す対戦部屋画像が表示部15に表示される。
図7は、対戦部屋画像の一例を示す図である。図7に示すように、対戦部屋画像G3は、対戦部屋に入室したユーザに関する情報を表示するための表示領域A30を含む。本実施形態では、対戦部屋に4人まで入室可能な場合を説明するが、対戦部屋に入室可能なユーザ数は、4人に限られず、2人又は3人であってもよいし、5人以上であってもよい。例えば、表示領域A30は、表示領域A300〜A303を含み、入室中のユーザの詳細を表示可能となっている。
本実施形態では、対戦部屋を生成したユーザは、自動的に当該対戦部屋に入室するものとして説明するが、特に自動的に対戦部屋に入室しなくてもよい。即ち、対戦部屋を生成したユーザは、必ずしも当該対戦部屋に入室しなくてもよい。ここでは、ユーザAが対戦部屋を生成して入室もしているので、表示領域A300には、ユーザAに関する情報が表示される。例えば、表示領域A300には、ユーザAが使用するサッカーチームの名前、ユーザAの名前、及び過去のローカルリーグにおける優勝回数が表示される。
本実施形態では、各ゲーム端末10は、複数の無線通信規格を利用可能であり、これら複数の無線通信規格の各々に則った無線通信の確立を同時並行して試みるようになっている。なお、複数の無線通信の確立は、必ずしも同時並行する必要はなく、ある1つの無線通信の確立を一定時間試したら次の無線通信の確立を一定時間試す、といったように1つずつ順番に無線通信の確立が行われるようにしてもよい。
例えば、対戦部屋画像G3が第1ゲーム端末10Aに表示されると、第1ゲーム端末10は、複数の無線通信規格の各々に基づいて、第2ゲーム端末10B及び第3ゲーム端末10Cの各々との無線通信の確立を試みることになる。一方、第2ゲーム端末10Bでは、ユーザBの操作に基づいて、第1ゲーム端末10Aとの無線通信を確立する処理が実行され、第3ゲーム端末10Cでは、ユーザCの操作に基づいて、第1ゲーム端末10Aとの無線通信を確立する処理が実行される。
ここでは、ユーザBが第2ゲーム端末10Bを操作して、第1ゲーム端末10Aとの無線通信を確立させ、ユーザAが生成した対戦部屋に入室する場合を説明する。第2ゲーム端末10Bも図2に示すメニュー画像G1を表示可能であり、ユーザBがローカル対戦ボタンB14を選択し、ダイアログD15からローカルリーグボタンB153を選択すると、第2ゲーム端末10Bに対戦部屋検索画像G2が表示される。
図8は、第2ゲーム端末10Bに表示される対戦部屋検索画像G2の一例を示す図である。例えば、第2ゲーム端末10Bが第1ゲーム端末10Aと無線通信をすることによって、ユーザAが対戦部屋を生成済みであることが特定され、図8に示すように、表示領域A20には、ユーザAが生成した対戦部屋に入室するための入室ボタンB200が表示される。例えば、入室ボタンB200には、対戦部屋の名前と、対戦部屋を生成したユーザAの名前と、が表示される。なお、入室ボタンB200には、他の情報が表示されるようにしてもよく、例えば、ユーザAのアイコン画像が表示されてもよいし、ユーザAのサッカーチームが表示されてもよい。
先述したように、各ゲーム端末10は、複数の無線通信規格の各々に則った無線通信が可能となっているが、例えば、第1ゲーム端末10Aと第2ゲーム端末10Bとの間で複数の無線通信が可能だった場合に、無線通信規格の数だけ入室ボタンB200を表示させてしまうと、ユーザAが生成した同じ対戦部屋であるにもかかわらず、ユーザBがどれを選択してよいか分からなくなってしまう。このため、本実施形態では、このような場合であっても、入室ボタンB200としては1つだけ表示させるようになっている。
例えば、ユーザBが入室ボタンB200を選択すると、ユーザAが生成した対戦部屋に入室する。なお、ユーザCも同様の流れによって、ユーザAが生成した対戦部屋に入室することができる。ユーザB,CがユーザAの対戦部屋に入室すると、第1ゲーム端末10Aに表示された対戦部屋画像G3の表示が変わり、対戦部屋にユーザB,Cが入室したことが分かるようになっている。
図9は、ユーザB,CがユーザAの対戦部屋に入室した場合の対戦部屋画像G3の一例を示す図である。図9に示すように、例えば、表示領域A302には、ユーザBの詳細情報が表示され、例えば、ユーザBが使用するサッカーチームの名前、ユーザBの名前、及び過去のローカルリーグにおける優勝回数が表示される。また例えば、表示領域A303には、ユーザCの詳細情報が表示され、例えば、ユーザCが使用するサッカーチームの名前、ユーザCの名前、及び過去のローカルリーグにおける優勝回数が表示される。
例えば、ユーザAは、ユーザB,Cが対戦部屋に入室したことを確認すると、ローカルリーグを開始するための所定操作を行う。その後、例えば、ユーザA,B,Cの中で総当たり戦となるように対戦組み合わせが決定され、当該対戦組み合わせを示す対戦組み合わせ画像G4が表示部15に表示される。
図10は、対戦組み合わせ画像G4の一例を示す図である。図10に示すように、対戦組み合わせ画像G4は、ユーザAの試合の対戦組み合わせを表示するための表示領域A40を含む。例えば、表示領域A40に示すように、ユーザAは、第1試合でユーザBと対戦し、その後に、第2試合でユーザCと対戦する。
例えば、ユーザA,B,Cが参加するローカルリーグでは、総当たり戦で合計3試合が行われて勝ち点や得失点差を競う。例えば、対戦組み合わせ画像G4が表示された後に、ユーザAが第1試合をプレイするための所定操作をすると、第1試合で対戦するユーザBの第2ゲーム端末10Bとマッチング処理をするためのマッチング画像が表示部15に表示される。
図11は、マッチング画像の一例を示す図である。図11に示すように、マッチング画像G5には、試合を開始するための前処理であるマッチング中であることを示すメッセージが表示される。第1ゲーム端末10Aと第2ゲーム端末10Bとのマッチングは、ユーザBがユーザAの対戦部屋に入室するときに利用した無線通信によって行われる。
例えば、第1ゲーム端末10Aと第2ゲーム端末10Bとの無線通信が確立した後は、原則として、確立した無線通信が切断されることなく維持することによって、そのままマッチングや試合開始後の処理を実行することができるようになっている。この点は、第1ゲーム端末10Aと第3ゲーム端末10Cとの無線通信も同様であり、確立した無線通信は切断されることなく維持される。
本実施形態では、ユーザBとユーザCとを対戦させるために、第2ゲーム端末10Bと第3ゲーム端末10Cとの間での無線通信も確立されるものとする。例えば、ユーザBが対戦部屋に入室する場合に、第2ゲーム端末10Bは、第1ゲーム端末10Aだけでなく、第3ゲーム端末10Cとも無線通信を確立する。同様に、例えば、ユーザCが対戦部屋に入室する場合に、第3ゲーム端末10Cは、第1ゲーム端末10Aだけでなく、第2ゲーム端末10Bとも無線通信を確立する。これにより、各ユーザのゲーム端末10は、同じローカルリーグに参加する他の全てのユーザのゲーム端末10と無線通信可能となっている。
なお、第1ゲーム端末10Aと第2ゲーム端末10Bとの間で利用される無線通信規格と、第1ゲーム端末10Aと第3ゲーム端末10Cとの間で利用される無線通信規格と、は同じであってもよいし異なっていてもよい。即ち、ゲーム端末10の組み合わせごとに、利用される無線通信規格が異なっていてもよい。
また、各ユーザのゲーム端末10は、同じローカルリーグに参加する他の全てのユーザのゲーム端末10と無線通信可能ではなくてもよく、例えば、第2ゲーム端末10Bと第3ゲーム端末10Cとは直接的に無線通信しなくてもよい。この場合、第2ゲーム端末10Bは、第1ゲーム端末10A又はゲームサーバ30を介して第3ゲーム端末10Cと通信してもよい。同様に、第3ゲーム端末10Cは、第2ゲーム端末10B又はゲームサーバ30を介して第2ゲーム端末10Bと通信してもよい。ただし、この場合であっても、対戦部屋を生成したユーザAの第1ゲーム端末10は、対戦部屋に入室するユーザを特定するために、当該対戦部屋で行われるローカルリーグに参加する他の全てのユーザのゲーム端末10と無線通信可能であるものとする。
例えば、マッチング中においては、第1ゲーム端末10Aと第2ゲーム端末10Bとの間で、ゲームに必要なデータ(例えば、試合で使用するキャラクタのデータやユーザが選択した戦術・フォーメーションなどのデータ)が送受信される。マッチング処理が完了すると、第1試合が開始し、実行中のゲームの様子を示すゲーム画像が表示部15に表示される。なお、第1試合が行われている間は、ユーザCは第1試合が終了するのを待機するが、その間も第3ゲーム端末10Cと、第1ゲーム端末10A及び第2ゲーム端末10Bと、の間の無線通信は維持されているものとする。
図12は、試合開始後に表示されるゲーム画像の一例を示す図である。図12に示すように、ゲーム画像G6には、例えば、ゲームキャラクタが配置されたゲーム空間を仮想カメラから見た様子が表示される。なお、ローカルリーグにおける試合の進行方法自体は、公知の種々の進行方法を適用可能であり、例えば、ユーザAとユーザBは、それぞれ自分のチームの何れかのキャラクタを操作して得点をあげることを目指す。
第1試合が終了すると、同様の流れにより、ユーザAとユーザCとの第2試合と、ユーザBとユーザCとの第3試合と、が実行される。例えば、第2試合では、第1ゲーム端末10Aと第3ゲーム端末10Cとの間でマッチング処理が実行され、無線通信しながらゲームが実行されることになる。また例えば、第3試合では、第2ゲーム端末10Bと第3ゲーム端末10Cとの間でマッチング処理が実行され、無線通信しながらゲームが実行されることになる。
ローカルリーグの全試合が終了すると、何れかのゲーム端末10からローカルリーグの結果がゲームサーバ30に送信され、ユーザA,B,Cの間で行われるローカルリーグは終了する。この場合、各ゲーム端末10で接続された無線通信が切断されるようにしてもよいし、無線通信を維持したままローカルリーグを繰り返しプレイできるようにしてもよい。なお、ローカルリーグの結果だけでなく途中経過についても、適宜ゲームサーバ30に送信されるようにしてもよい。
以上のように、本実施形態のゲームシステムSでは、各ゲーム端末10は、複数の無線通信規格の各々に則った無線通信を利用して他のゲーム端末10と無線通信しながらゲームを実行することで、ゲームを開始するための手順を簡易化するようになっている。以降、当該構成の詳細を説明する。
[3.ゲームシステムにおいて実現される機能]
図13は、ゲームシステムSで実現される機能のうち、本発明に関連する機能を示す機能ブロック図である。本実施形態では、主にゲーム端末10とゲームサーバ30の機能を説明する。
[3−1.ゲームサーバで実現される機能]
図13に示すように、ゲームサーバ30では、データ記憶部300が実現される。データ記憶部300は、記憶部12を主として実現される。データ記憶部300は、ゲームを実行するために必要なデータを記憶する。ここでは、データ記憶部300が記憶するデータの一例として、対戦部屋データベースDB1を説明する。
図14は、対戦部屋データベースDB1のデータ格納例を示す図である。図14に示すように、対戦部屋データベースDB1は、ゲームシステムSを利用するユーザが生成した対戦部屋に関するデータであり、例えば、対戦部屋を一意に識別する対戦部屋IDに関連付けて、対戦部屋の名前、対戦部屋を生成したユーザに関する生成ユーザ情報、対戦部屋に入室したユーザに関する入室ユーザ情報、及び対戦部屋におけるゲームの状況や結果などを示すゲームデータが格納される。以降、対戦部屋データベースDB1に格納される個々のレコードを部屋情報と記載する。
生成ユーザ情報としては、例えば、対戦部屋を生成したユーザのユーザ識別情報、当該ユーザのゲーム端末10を識別するための端末識別情報、当該ユーザの名前、及び当該ユーザの優勝回数等の情報が格納される。なお、ユーザ識別情報は、ユーザを識別可能な情報であればよく、例えば、ユーザIDやユーザ名などである。また例えば、端末識別情報は、ゲーム端末10を識別可能な情報であればよく、例えば、IPアドレスや個体識別情報などである。
入室ユーザ情報としては、例えば、対戦部屋に入室したユーザのユーザ識別情報、当該ユーザのゲーム端末10を識別するための端末識別情報、当該ユーザの名前、及び当該ユーザの優勝回数等の情報が格納される。なお、ユーザ識別情報は、ユーザを識別可能な情報であればよく、例えば、ユーザIDやユーザ名などである。また例えば、端末識別情報は、ゲーム端末10を識別可能な情報であればよく、例えば、IPアドレスや端末の個体識別情報などである。
ゲームデータとしては、例えば、対戦部屋で実行されるゲームの現在の状況やローカルリーグの結果が格納される。例えば、ゲームデータには、対戦部屋内で行われる試合ごとに、当該試合で対戦するユーザのユーザ識別情報、試合の状況情報、及び試合の結果情報が格納される。例えば、状況情報は、ゲーム空間におけるキャラクタの位置・姿勢・向き・移動方向・移動方向、ボールの位置・移動方向・移動速度、仮想カメラの位置・視線方向、試合の経過時間、キャラクタの交代状況、及び両チームの得点が格納される。試合の結果情報は、試合の勝敗、両チームの得点、試合のスタッツ情報(例えば、ボール支配率や平均走行距離)などが格納される。ゲームデータには、他にも各ユーザの勝利数・敗北数・引き分け数・勝ち点・順位などの情報が格納されていてもよい。
なお、データ記憶部300に記憶されるデータは、上記の例に限られない。データ記憶部300は、ゲームに必要なデータを記憶すればよい。例えば、データ記憶部300は、ゲームシステムSを利用する各ユーザの基本情報が格納されたユーザデータを記憶してもよい。また例えば、データ記憶部100は、ユーザが参加したエキシビションの過去の戦績・試合履歴やローカルリーグの参加履歴を記憶してもよい。
[3−2.ゲーム端末で実現される機能]
ゲーム端末10では、データ記憶部100、特定部101、表示制御部102、参加部103、及び実行部104が実現される。これらの機能ブロックにより、ゲーム端末10は、無線通信可能な他の端末と通信しながらゲームを実行する。
[3−2−1.データ記憶部]
データ記憶部100は、記憶部12を主として実現される。データ記憶部100は、ゲームを実行するために必要なデータを記憶する。ここでは、データ記憶部100が記憶するデータの一例として、受信データDT1、バッファデータDT2、及び部屋表示データDT3を説明する。
図15は、受信データDT1のデータ格納例を示す図である。図15に示すように、受信データDT1は、部屋情報を蓄積するためのデータである。部屋情報のデータ構造は、対戦部屋データベースDB1で説明した通りである。受信データDT1には、他のゲーム端末10から部屋情報を受信するたびに、当該受信した部屋情報が蓄積される。即ち、同じゲーム端末10から複数の部屋情報を受信したとしても、これら複数の部屋情報が受信データDT1に格納される。
図16は、バッファデータDT2のデータ格納例を示す図である。図16に示すように、バッファデータDT2は、受信データDT1から部屋情報を取り出して一時的に格納するためのデータである。バッファデータDT2に格納された部屋情報は、部屋表示データDT3と比較される。
図17は、部屋表示データDT3のデータ格納例を示す図である。図17に示すように、部屋表示データDT3は、対戦部屋検索画像G2に対戦部屋を表示させるためのデータである。受信データDT1が部屋情報を蓄積するのに対し、部屋表示データDT3は、同じゲーム端末10から複数の部屋情報を受信した場合には、これらが重複して蓄積されるのではなく、1つの部屋情報だけが部屋表示データDT3に格納される。
なお、データ記憶部100に記憶されるデータは、上記の例に限られない。データ記憶部100は、ゲームに必要なデータを記憶すればよい。例えば、データ記憶部100は、ゲーム端末10のユーザに係る基本情報(例えば、ユーザIDやユーザ名など)を記憶してもよいし、後述するゲーム識別情報や優先順位情報を記憶してもよい。また例えば、データ記憶部100は、ユーザが参加したエキシビションの過去の戦績・試合履歴やローカルリーグの参加履歴を記憶してもよい。
[3−2−2.特定部]
特定部101は、制御部11を主として実現される。特定部101は、複数の無線通信規格の各々に則った無線通信を介して所定の処理を行うことにより、無線通信可能な他のゲーム端末10を特定する。
無線通信規格とは、例えば、電波による通信の規格であり、伝送路として有線を使用しない通信の規格である。また例えば、国際標準化機構における無線通信の規格である。また例えば、近距離無線通信規格であってもよいし、近距離ではない無線通信規格(例えば、数十〜数百メートル程度の中距離の無線通信規格、数キロ〜数十キロ程度の遠距離の無線通信規格)であってもよい。
本実施形態では、ゲーム端末10が、第1の無線通信規格、第2の無線通信規格、及び第3の無線通信規格の3種類を利用可能な場合を説明するが、ゲーム端末10が利用可能な無線通信規格は、2つであってもよいし、4つ以上であってもよい。以降では、第1の無線通信規格の一例としてWi−Fi Direct(登録商標)を説明し、第2の無線通信規格の一例としてBluetooth(登録商標)を説明し、第3の無線通信規格としてIEEE802.11規格の無線LANを説明するが、無線通信規格自体は、公知の種々の無線通信規格を利用可能であり、例えば、赤外線通信やiBeacon(登録商標)などが利用されてもよい。
所定の処理とは、例えば、所定の情報を送信したり要求したりすることである。また例えば、所定の処理とは、通信相手との通信を確立するために、任意の無線通信規格で特定のサービスを行っている端末が存在する否かを確認することである。特定のサービスとは本実施例では、ゲームの対戦を行うことができる対戦部屋サービスのことである。
他のゲーム端末10とは、例えば、特定部101を有するゲーム端末10とは異なる端末である。例えば、他のゲーム端末10は、特定部101を有するゲーム端末10のユーザとは異なるユーザ(例えば、ゲームを一緒にプレイするユーザ)が操作する端末であり、ゲーム端末10の通信相手となる端末である。例えば、第1ゲーム端末10Aから見れば、第2ゲーム端末10B及び第3ゲーム端末10Cは、他ゲーム端末10である。また例えば、第2ゲーム端末10Bから見れば、第1ゲーム端末10A及び第3ゲーム端末10Cは、他ゲーム端末10である。また例えば、第3ゲーム端末10Cから見れば、第1ゲーム端末10A及び第2ゲーム端末10Bは、他ゲーム端末10である。
他のゲーム端末10は、ゲーム端末10が利用可能な無線通信規格の全てを利用可能である必要はなく、ゲーム端末10が利用可能な複数の無線通信規格の少なくとも1つを利用可能であればよい。別の言い方をすれば、ゲーム端末10と他のゲーム端末10とは、共通の無線通信規格が少なくとも1つ存在すればよい。例えば、共通の無線通信規格の数は、1つ、2つ、又は3つ以上であってもよい。なお、本実施形態では、説明の簡略化のために、第1ゲーム端末10A、第2ゲーム端末10B、及び第3ゲーム端末10Cが何れも第1の無線通信規格〜第3の無線通信規格を利用可能である場合を説明する。
特定とは、例えば、通信相手として認識することである。また例えば、特定は、他のゲーム端末10の識別情報を取得することであり、ネットワークN又はプライベートネットワークPN上でサービスが存在するかを確認することである。また例えば、特定は、データを送信したり受信したりすることができる状態にすることである。また例えば、特定は、通信プロトコルで定められた手順に沿って通信を確立することである。
例えば、特定部101は、無線通信規格の通信プロトコルに定められた通信手順に基づいて通信の確立処理を実行し、無線通信可能な他のゲーム端末10を特定する。特定部101の具体的な処理内容は、無線通信規格によって異なり、ここでは、第1の無線通信規格〜第3の無線通信規格の各々を利用する場合の処理内容を説明する。
[第1の無線通信規格]
本実施形態では、複数の無線通信規格は、ゲームに係る識別情報が周囲に発信される第1の無線通信規格(特定の無線通信規格)を含む。例えば、特定部101は、第1の無線通信規格については、周囲に発信された識別情報を受信することによって、他のゲーム端末10が特定のサービスを公開しているかを特定する。なお、サービスは、オペレーティングシステムによってはデーモンと呼ばれるものである。サービス又はデーモンは、他の端末が接続できるように、接続される側の端末が用意するものである。
ゲームに係る識別情報とは、例えば、ゲームを実行するために必要なサービス又はデーモンが公開されているという情報である。また例えば、ゲームがオンラインで対戦するための対戦部屋サービスが接続可能に公開されているという情報である。ゲームに係る識別情報は、各ゲームプログラムで共通の情報である。また例えば、ゲームに係る識別情報は、ゲームプログラムを有していること、ゲームプログラムが起動していること又はオンライン対戦をするための対戦部屋が公開されていることを表す情報である。また例えば、ゲームに係る識別情報は、予め定め有られた記号列及び数字の組み合わせである。以降、ゲームに係る識別情報を、単にゲーム識別情報という。ゲーム識別情報は、ゲームプログラムが提供する対戦部屋サービスの有無を識別するための情報ということもできる。周囲に発信とは、例えば、ゲーム端末10が無線通信インタフェースを介して不特定多数に情報を発信することである。
例えば、第1の無線通信規格の通信プロトコルでは、通信相手との接続が確立される前に、周囲に発信された情報を受信可能となっている。また例えば、特定部101は、第1の無線通信規格の通信プロトコルに則って、周囲に発信されている情報を受信し、データ記憶部100に記憶されたゲーム識別情報と一致するか否かを判定する。特定部101は、受信したゲーム識別情報と、データ記憶部100に記憶されたゲーム識別情報と、が一致する場合に、第1の無線通信規格の通信プロトコルに基づいて、他のゲーム端末10との接続を確立する。
なお、第1の無線通信規格により周囲に発信される情報には、対戦部屋を作成したユーザのユーザ識別情報、ユーザの名前、対戦部屋ID、及び対戦部屋名などの情報が含まれていてもよい。この場合、特定部101は、予めデータ記憶部100に記憶させておいたユーザ識別情報、ユーザの名前、対戦部屋ID、及び対戦部屋名を受信したか否かを判定することによって、他のゲーム端末10を特定してもよい。
[第2の無線通信規格]
また、本実施形態では、複数の無線通信規格は、通信相手に対して所定の情報をリクエストする第2の無線通信規格(特定の無線通信規格)を含む。例えば、特定部101は、特定の無線通信規格については、ゲーム識別情報をリクエストして当該識別情報を受信することによって、他のゲーム端末10を特定する。
リクエストとは、例えば、相手方に対し、所定の情報を送信することを要求することである。リクエストは、第2の無線通信規格で定められた形式で行われるようにすればよく、例えば、相手方に対し、情報のリクエストをすることを示すビット列を送信することで行われるようにしてもよい。例えば、リクエストは、第2の無線通信規格においてペアリングを行う際にやり取りされるペアリングコードの取得要求であってもよい。この場合、第2の無線通信規格におけるペアリングコードとして、ゲーム識別情報が用いられることになる。このため、ゲーム識別情報を所有するゲーム端末10同士で第2の無線通信規格に則った無線通信を確立(ペアリング)することができる。
例えば、通信相手を特定する前において、第2の無線通信規格におけるサービスを識別する情報しか取得することができず、ゲーム識別情報を受信できない場合には、特定部101は、第2の無線通信規格で通信可能な相手方に対し、リクエストを送信する。他のゲーム端末10は、当該リクエストを受信すると、当該他のゲーム端末10に記憶されたゲーム識別情報を返信する。特定部101は、リクエストに応じて返信されたゲーム識別情報を受信し、データ記憶部100に記憶されたゲーム識別情報と一致するか否かを判定する。特定部101は、受信したゲーム識別情報と、データ記憶部100に記憶されたゲーム識別情報と、が一致する場合に、第2の無線通信規格の通信プロトコルに基づいて、他のゲーム端末10との接続を確立する。
なお、第2の無線通信規格によりリクエストされるゲーム識別情報には、対戦部屋を作成したユーザのユーザ識別情報、ユーザの名前、対戦部屋ID、及び対戦部屋名などが含まれていてもよい。この場合、特定部101は、リクエストに応じた返信として、予め定められたユーザ識別情報、ユーザの名前、対戦部屋ID、及び対戦部屋名を受信したか否かを判定することによって、他のゲーム端末10を特定してもよい。
[第3の無線通信規格]
また、本実施形態では、複数の無線通信規格は、ドメインネームサーバ50を利用する第3の無線通信規格(特定の無線通信規格)を含む。例えば、特定部101は、第3の無線通信規格については、ドメインネームサーバ50に記憶されたゲーム識別情報を取得することによって、他のゲーム端末10を特定する。
例えば、ドメインネームサーバ50には、ゲーム識別情報が記憶されている。例えば、ドメインネームサーバ50は、IPアドレスと関連付けて、ゲーム識別情報をドメイン名として記憶してもよい。例えば、対戦部屋を生成したユーザのゲーム端末10は、対戦部屋を生成すると、自身のIPアドレスとゲーム識別情報とを登録するようにドメインネームサーバ50に対して要求する。ドメインネームサーバ50は、要求を受け付けると、ゲーム端末10のIPアドレスとゲーム識別情報とを関連付けて登録する。なお、ドメインネームサーバ50に登録される情報は、ゲーム識別情報に限られず、例えば、対戦部屋を作成したユーザのユーザ識別情報、ユーザの名前、対戦部屋ID、及び対戦部屋名などがIPアドレスと関連付けられて登録されてもよい。
例えば、特定部101は、第3の無線通信規格の通信プロトコルに基づいて、ドメインネームサーバ50に対し、サービスの問い合わせを実行する。例えば、特定部101は、データ記憶部100に記憶されたゲーム識別情報がドメイン名として存在するか否かをドメインネームサーバ50に対して問い合わせる。一方、ドメインネームサーバ50は、受け付けた問い合わせに含まれるゲーム識別情報が登録されているか否かを判定する。ゲーム識別情報が登録されていると判定されると、ドメインネームサーバ50は、ゲーム識別情報に関連付けられたIPアドレス送信する。特定部101は、当該IPアドレスを受信することによって、他のゲーム端末10を特定することができる。
なお、特定部101がドメインネームサーバ50から受信する情報としては、ゲーム識別情報に限られず、例えば、対戦部屋を作成したユーザのユーザ識別情報、ユーザの名前、対戦部屋ID、及び対戦部屋名などがドメインネームサーバ50に登録されている場合には、特定部101は、IPアドレスとともにこれらの情報を受信してもよい。
図18は、特定部101が実行する処理の一例を示す図である。図18に示すように、第1ゲーム端末10Aと第2ゲーム端末10Bがそれぞれ第1の無線通信規格を利用可能であったとする。そして、第1ゲーム端末10Aがゲームを起動しているが、第2ゲーム端末10Bがゲームを起動していないものとする。この場合、第3ゲーム端末10Cは、第1の無線通信規格に則った第1無線通信により、第1ゲーム端末10Aが発信した情報を受信する。当該情報の中には、ゲーム識別情報が含まれているので、第3ゲーム端末10Cは、当該ゲーム識別情報により、第1ゲーム端末10Aの対戦部屋が存在していることを特定することができる。
図19は、特定部101が実行する処理の一例を示す図である。図19に示すように、第1ゲーム端末10Aと第2ゲーム端末10Bがそれぞれ第1の無線通信規格、第2の無線通信規格、及び第3の無線通信規格を利用可能であったとする。そして、第1ゲーム端末10Aがゲームを起動しているものとする。この場合、第2ゲーム端末10Bは、第1の無線通信規格に則った第1無線通信により、第1ゲーム端末10Aが発信した情報を受信する。当該情報の中には、ゲーム識別情報が含まれている。
また、第2ゲーム端末10Bは、第2の無線通信規格に則った第2無線通信により、第1ゲーム端末10Aが送信した情報を受信する。当該情報の中には、ゲーム識別情報が含まれている。第3ゲーム端末10Cは、第3の無線通信規格に則った第3無線通信により、ドメインネームサーバ50から返信された情報を受信する。当該情報の中には、ゲーム識別情報が含まれている。第2ゲーム端末10Bは、これらゲーム識別情報により、第1ゲーム端末10Aの対戦部屋が存在していることを特定することができる。
図20は、特定部101が実行する処理の一例を示す図である。図20に示すように、第1ゲーム端末10Aは、第1の無線通信規格と第2の無線通信規格を利用可能である。第2ゲーム端末10Bは、第2の無線通信規格しか利用できない。第3ゲーム端末10Cは、第1の無線通信規格しか利用できない。
この場合、第1ゲーム端末10Aは、他の端末がどの規格に対応しているか不明であるため、可能な限り全ての通信方式でゲーム識別情報発信する。第2ゲーム端末10Cは、第2の無線通信規格に則った第2無線通信により、第1ゲーム端末10Aが発信した情報を受信する。当該情報の中には、ゲーム識別情報が含まれているので、第2ゲーム端末10Cは、当該ゲーム識別情報により、第1ゲーム端末10Aの対戦部屋が存在していることを特定することができる。
第3ゲーム端末10Cは、第1の無線通信規格に則った第1無線通信により、第1ゲーム端末10Aが発信した情報を受信する。当該情報の中には、ゲーム識別情報が含まれているので、第3ゲーム端末10Cは、当該ゲーム識別情報により、第1ゲーム端末10Aの対戦部屋が存在していることを特定することができる。
図21は、特定部101が実行する処理の一例を示す図である。図21に示すように、第1ゲーム端末10A、第2ゲーム端末10B、第3ゲーム端末10Cは、それぞれ第1の無線通信規格、第2の無線通信規格、及び第3の無線通信規格を利用可能であったとする。そして、第1ゲーム端末10Aにおいて対戦部屋Aが生成され、第2ゲーム端末10Bにおいて対戦部屋Bが生成されたものとする。
この場合、第3ゲーム端末10Cは、第1の無線通信規格〜第3の無線通信規格のそれぞれに則った無線通信により、第1ゲーム端末10Aの対戦部屋Aが存在していることを特定することができる。この場合、後述するように、対戦部屋Aとしては1つの表示となる。また、第3ゲーム端末10Cは、第1の無線通信規格〜第3の無線通信規格のそれぞれに則った無線通信により、第2ゲーム端末10Bの対戦部屋Bが存在していることを特定することができる。この場合、後述するように、対戦部屋Bとしては1つの表示となる。図21の場合、第3ゲーム端末10Cは、対戦部屋Aと対戦部屋Bの存在を特定できるので、対戦部屋検索画像G2においては、対戦部屋Aと対戦部屋Bの2つが表示されることになる。
[3−2−3.表示制御部]
表示制御部102は、制御部11を主として実現される。表示制御部102は、特定部101により特定された他のゲーム端末10との無線通信に基づいて取得された対戦部屋を表示部15に表示させる。対戦部屋は、本発明に係るユーザグループの一例である。このため、本実施形態において対戦部屋と記載した箇所は、ユーザグループと読み替えることができる。
ユーザグループとは、例えば、複数のユーザをメンバとして含むグループである。例えば、同じユーザグループに所属している複数のユーザは、ゲームの優劣(順位又は勝敗)を競い合う複数のユーザとなる。例えば、ユーザグループは、他のユーザと対戦するゲームをプレイすることを希望するユーザ、又は、他のユーザと協力して目標の達成を目指すゲームをプレイすることを希望するユーザが集うべきものであってもよい。
別の言い方をすれば、ユーザグループは、ゲームへの参加を宣言するためのものであってもよい。例えば、ユーザグループは、ゲームの中の世界に存在する物体を示すものである。また例えば、ユーザグループは、ゲーム内に設定された部屋・ロビーと呼ばれるものであってもよいし、仮想世界の中に設定された所定の場所であってもよいし、フレンドやギルドといった他の名称で呼ばれるものであってもよい。また例えば、ユーザグループは、データベース上のレコードであってもよいし、メモリ上のハッシュ構造を使った配列であってもよい。
対戦部屋を表示させるとは、例えば、対戦部屋に関する情報を表示させることである。例えば、当該情報としては、対戦部屋の名称、画像、所属中のユーザ、各ユーザのゲーム端末10の識別情報などであってもよい。例えば、対戦部屋がロビーと呼ばれるものであれば、当該ロビーを表示させることである。また例えば、対戦部屋がゲーム内の所定の場所にあれば、当該場所を表示させることである。また例えば、対戦部屋ではなくフレンドやギルドの場合には、フレンドグループの名称やギルド名を表示させることである。
本実施形態では、表示制御部102は、複数の対戦部屋が取得され、当該複数の対戦部屋の各々の識別情報が同一である場合に、当該複数の対戦部屋を1つにまとめて表示部15に表示させる。
対戦部屋の識別情報とは、例えば、対戦部屋を一意に識別可能な情報であり、例えば、対戦部屋IDや対戦部屋の名前などの情報である。本実施形態では、対戦部屋IDが対戦部屋の識別情報に相当する。このため、本実施形態において対戦部屋IDと記載した箇所については、対戦部屋の識別情報と読み替えることができる。なお、対戦部屋が取得されるとは、例えば、対戦部屋IDが取得されることである。
1つにまとめて表示させるとは、例えば、複数の対戦部屋にそれぞれ対応する複数の画像を表示させるのではなく、例えば、1つの画像として表示させることである。例えば、対戦部屋と画像とが多対1の関係になることである。例えば、複数の対戦部屋のうちの何れか1つの情報が代表として表示されてもよいし、これら複数の対戦部屋の全体が1つの画像として表示されてもよいし、複数の対戦部屋を包含した名称や画像が表示されてもよい。
例えば、表示制御部102は、複数の無線通信規格を利用して複数の対戦部屋が取得された場合に、各対戦部屋の対戦部屋IDを比較する。表示制御部102は、取得された当該複数の対戦部屋のうち、対戦部屋IDが一致するものについては、それぞれを別個に表示させるのではなく、1つにまとめて表示することになる。
別の言い方をすれば、本実施形態では、表示制御部102は、複数の対戦部屋が取得され、当該複数の対戦部屋の各々の対戦部屋IDが同一である場合に、当該複数の対戦部屋のうちの何れか1つを表示部15に表示させる。表示制御部102は、取得された複数の対戦部屋のうち、所定の方法によって選択した何れか1つを表示部15に表示させる。当該方法は、予め定められた方法であればよく、例えば、ランダムに選択してもよいし、最初に取得した対戦部屋を選択してもよいし、最後に取得した対戦部屋を選択してもよいし、その間に取得した対戦部屋を選択してもよい。
例えば、表示制御部102は、複数の無線通信規格を利用して複数の対戦部屋が取得された場合に、各対戦部屋の対戦部屋IDを比較する。表示制御部102は、取得された当該複数の対戦部屋のうち、対戦部屋IDが一致するものについては、それぞれを別個に表示させるのではなく、何れか1つを選択して表示することになる。
例えば、本実施形態のように、複数の無線通信規格が、第1の無線通信規格と第2の無線通信規格とを含むものとすると、表示制御部102は、第1の無線通信規格に則った第1の無線通信を介して参加可能な第1の対戦部屋と、第2の無線通信規格に則った第2の無線通信を介して参加可能な第2の対戦部屋と、が取得され、第1の対戦部屋の識別情報と、第2の対戦部屋の識別情報と、が同一である場合に、第1の対戦部屋と第2の対戦部屋とを1つにまとめて表示部15に表示させることになる。
第1の無線通信によって対戦部屋IDを取得する方法と、第2の無線通信によって対戦部屋IDを取得する方法は、特定部101の説明部分で説明した通りであり、例えば、表示制御部102は、第1の無線通信を利用して取得した対戦部屋IDと、第2の無線通信を利用して取得した対戦部屋IDと、を比較する。表示制御部102は、これらの対戦IDが一致すると判定した場合に、第1の対戦部屋と第2の対戦部屋とを1つにまとめて表示部15に表示させることになる。
[3−2−4.参加部]
参加部103は、制御部11を主として実現される。参加部103は、表示部15に表示された対戦部屋のうち、ユーザによって指定された対戦部屋に参加させる。
指定とは、例えば、表示部15に表示された画像をユーザが選択することである。また例えば、指定とは、生成された対戦部屋を選択することである。例えば、複数の対戦部屋の中から何れか1つが指定されてもよいし、1つだけしか対戦部屋が存在しない場合には当該1つの対戦部屋が指定されてもよい。
参加とは、例えば、対戦部屋にメンバとして所属することである。例えば、参加は、他のユーザとのゲームをプレイ可能な状態にすることである。また例えば、参加は、ゲームに対してエントリー(参加登録)することである。また例えば、参加は、対戦部屋にユーザを追加することである。また例えば、参加は、対戦部屋IDに、ユーザの識別情報(ユーザID・ユーザ名など)を関連付けることである。
また例えば、対戦部屋に所属中のユーザのリストに加えることである。また例えば、対戦部屋がロビーと呼ばれるものであれば、参加は、ロビーに入室することである。また例えば、対戦部屋が仮想世界の場所にあれば、参加は、当該場所に行くことである。また例えば、対戦部屋ではなく、フレンドやギルドといったものであれば、参加は、フレンドやギルドの一員に加えることである。
本実施形態では、参加部103は、複数の対戦部屋のうちの何れか1つを、複数の無線通信規格の各々に定められた優先順位情報に基づいて選択し、当該選択した対戦部屋にユーザを参加させる。
優先順位情報とは、例えば、複数の無線通信規格の各々に定められた順位であり、数値又は記号によって表される情報である。例えば、優先順位情報は、無線通信規格の優先度の高さである。なお、優先順位は、ゲーム制作者によって予め定められておけばよく、例えば、通信速度や通信の安定性などによって優先順位を定めておけばよい。
本実施形態では、3つの無線通信規格が利用可能である場合を説明しているため、優先順位情報は、これら3つの無線通信規格の各々の優先順位を示すものである。ここでは、第1の無線通信規格が最も優先順位が高く、第2の無線通信規格が2番目に優先順位が高く、第3の無線通信規格が最も優先順位が低い場合をするが、優先順位は任意であってよく、例えば、優先順位が高い順から、第1の無線通信規格・第3の無線通信規格・第2の無線通信規格であってもよい。他にも例えば、第2の無線通信規格又は第3の無線通信規格が最も優先順位が高くてもよい。
[3−2−5.実行部]
実行部104は、制御部11を主として実現される。実行部104は、特定部101により特定された他の端末との無線通信に基づいて、ゲームを実行する。
ゲームを実行とは、例えば、複数のユーザをゲームに参加させることである。例えば、実行部104は、複数のユーザで互いに対戦させる。また例えば、実行部104は、複数のユーザが協力して、対戦相手(コンピュータ又は他のユーザ)と対戦させる。また例えば、実行部104は、複数のユーザの各々がゲームをプレイして、他のユーザとスコアなどを競わせることである。また例えば、実行部104は、ゲーム端末10同士の接続(セッション)を確立することである。また例えば、実行部104は、複数のユーザのうち、一のユーザの操作を他のユーザのゲーム端末10に送信することである。
本実施形態では、実行部104は、第1の他の端末と通信しながらゲームを実行する場合と、第2の他の端末と通信しながらゲームを実行する場合と、で異なる無線通信規格を利用可能である。即ち、ゲームシステムSでは、ゲーム端末10の組み合わせによって、利用する無線通信規格が異なっていてもよい。
例えば、第1ゲーム端末10Aを例に挙げると、第1ゲーム端末10Aの実行部104は、第2ゲーム端末10Bと通信しながらゲームを実行する場合と、第3ゲーム端末10Cと通信しながらゲームを実行する場合と、で異なる無線通信規格を利用可能である。より具体的には、第1ゲーム端末10Aと第2ゲーム端末10Bとが第n(nは自然数)の無線通信規格を利用し、第1ゲーム端末10Aと第3ゲーム端末10Cとが第k(kはn以外の自然数)の無線通信規格を利用してもよい。
[4.ゲームシステムにおいて実行される処理]
図22−図26は、ゲームシステムSにおいて実行される処理の一例を示すフロー図である。図22−図26に示す処理は、制御部11が記憶部12に記憶されたプログラムに従って動作し、制御部31が記憶部32に記憶されたプログラムに従って動作することによって実行される。以降説明する処理は、機能ブロックが実行する処理の一例である。
図22に示すように、まず、ゲーム端末においては、制御部11は、ゲームプログラムが起動すると、メニュー画像G1を表示部15に表示させる(S101)。制御部11は、操作部14の検出信号に基づいて、ローカル対戦ボタンB14が選択されたか否かを判定する(S103)。ローカル対戦ボタンB14が選択されたと判定されない場合(S103;N)、イベントボタンB10、オンライン対戦ボタンB11、シーズンマッチボタンB12,B13が選択されたことになるので、制御部11は、これらのボタンに応じた処理を実行する。
ローカル対戦ボタンB14が選択されたと判定された場合(S103;Y)、制御部11は、メニュー画像G1上にダイアログD15を表示させる(S105)。制御部11は、操作部14の検出信号に基づいて、ユーザの操作を特定する(S107)。ここでは、エキシビションボタンB150を選択する操作、戦績ボタンB151を選択する操作、試合履歴ボタンB152を選択する操作、ローカルリーグボタンB153を選択する操作、参加履歴ボタンB154を選択する操作、又は戻るボタンB155を選択する操作の何れかが行われる。ユーザがローカルリーグボタンB153を選択しなかった場合(S107;その他)、ユーザが選択したボタンに応じた処理が実行される。
ユーザがローカルリーグボタンB153を選択した場合(S107;ローカル対戦ボタン)、制御部11は、対戦部屋検索画像G2を表示部15に表示させ(S109)、複数の無線通信規格の各々に則った無線通信を介して所定の処理を行う(S111)。S111においては、制御部11は、無線通信規格ごとに、当該無線通信規格に則った無線通信を介して所定の処理を行い、他のゲーム端末10を特定したか否かを判定することになる。
図23は、S111の処理の詳細を示す図である。図23に示すように、制御部11は、第1の無線通信規格の機能を有しているか否かを判定する(S1111)。第1の無線通信規格の機能を有していると判定された場合(S1111;Y)、制御部11は、第1の無線通信規格に則った第1の無線通信により受信した部屋情報を受信データDT1に格納する(S1113)。なお、第1の無線通信規格の機能を有していると判定されない場合(S1111;N)、S1113の処理は実行されない。
制御部11は、第2の無線通信規格の機能を有しているか否かを判定する(S1115)。第2の無線通信規格の機能を有していると判定された場合(S1115;Y)、制御部11は、第2の無線通信規格に則った第2の無線通信により受信した情報が第1ゲーム識別情報と一致するか否かを判定する(S1117)。
なお、第2の無線通信規格の機能を有していると判定されない場合(S1115;N)、S1117及び以降のS1119〜S1127の処理は実行されない。また、第2の無線通信により受信した情報が第1ゲーム識別情報と一致すると判定されない場合(S1117;N)、S1119〜S1127の処理は実行されない。
ここでは、第2の無線通信規格は2つのゲーム識別情報がある場合を説明する。第2の無線通信規格は、接続しないと多くの情報を受信することができないので、複数の第2の無線通信が存在した場合にどれに接続したらよいかを特定し、総当たりで調べる手間を省くための第1ゲーム識別情報と、他の無線通信規格のゲーム識別情報と同じ役割を果たす第2ゲーム識別情報と、が用意されている。
第2の無線通信により受信した情報が第1ゲーム識別情報と一致すると判定された場合(S1117;Y)、制御部11は、S1117で受信した情報に基づいて、他の端末と第2の無線通信で接続する(S1119)。制御部11は、接続先の他の端末に対し、第2ゲーム識別情報をリクエストする(S1121)。制御部11は、他の端末から受信した情報が第2ゲーム識別情報と一致するか否かを判定する(S1123)。
他の端末から受信した情報が第2ゲーム識別情報と一致すると判定された場合(S1123;Y)、制御部11は、第2の無線通信規格に則った第2の無線通信により受信した部屋情報を受信データDT1に格納する(S1125)。一方、他の端末から受信した情報が第2ゲーム識別情報と一致しないと判定された場合(S1123;N)、S1125の処理は実行されない。
制御部11は、第2の無線通信規格に則った第2の無線通信により他の情報を受信したか否かを判定する(S1127)。第2の無線通信により他の情報を受信したと判定された場合(S1127;Y)、S1117の処理に戻り、再び第1ゲーム識別情報と第2ゲーム識別情報のチェックが行われる。
一方、第2の無線通信により他の情報を受信したと判定されない場合(S1127;N)、制御部11は、第3の無線通信規格に則った第3の無線通信に接続しているか否かを判定する(S1129)。第3の無線通信に接続していると判定された場合(S1129;Y)、制御部11は、ドメインネームサーバ50に対し、部屋情報がないか問い合わせる(S1131)。
制御部11は、ドメインネームサーバ50からの返信に部屋情報があるか否かを判定する(S1133)。返信に部屋情報があると判定された場合(S1133;Y)、制御部11は、受信した部屋情報を受信データDT1に格納する(S1135)。一方、返信に部屋情報があると判定されない場合(S1133;N)、S1135の処理は実行されない。
制御部11は、受信データDT1の何れかをバッファデータDT2に移動させる(S1137)。制御部11は、バッファデータDT2の内容が部屋表示データDT3にあるか否かを判定する(S1139)。バッファデータDT2の内容が部屋表示データDT3にないと判定された場合(S1139;N)、制御部11は、バッファデータDT2の内容を部屋表示データDT3に移動して保存させる(S1141)。一方、バッファデータDT2の内容が部屋表示データDT3にあると判定された場合(S1139;Y)、S1141の処理は実行されない。
制御部11は、受信データDT1があるか否かを判定する(S1143)。受信データDT1があると判定された場合(S1143;Y)、S1135の処理に戻る。一方、受信データDTがないと判定された場合(S1143;N)、S113の処理に移行する。
制御部11は、S111における処理の結果に基づいて、対戦部屋を検出したか否かを判定する(S113)。S113においては、例えば、制御部11は、何れかの無線通信によって、他のゲーム端末10を特定したか否かを判定してもよいし、他のゲーム端末10から対戦部屋IDを受信したか否かを判定してもよい。
対戦部屋を検出したと判定されない場合(S113;N)、制御部11は、操作部14の検出信号に基づいて、新規作成ボタンB21が選択されたか否かを判定する(S115)。ユーザが新規作成ボタンB21を選択したと判定されない場合(S115;N)、S109の処理に戻る。なお、ユーザがリロードボタンB22を選択した場合には、S109の処理が実行される。一方、ユーザが新規作成ボタンB21を選択した場合(S115;Y)、制御部11は、対戦部屋検索画像G2上にダイアログD23を表示させる(S117)。
図24に移り、制御部11は、操作部14の検出信号に基づいて、ユーザの操作を特定する(S119)。ここでは、入力フォームF230に対して対戦部屋の名前を入力する操作、キャンセルボタンB231を選択する操作、又はOKボタンB232を選択する操作の何れかが行われる。
ユーザが入力フォームF230に対して対戦部屋の名前を入力した場合(S119;名前入力)、制御部11は、ユーザが入力した対戦部屋の名前を入力フォームF230にセットして記憶部12に記録し(S121)、S119の処理に戻る。なお、ユーザがキャンセルボタンB231を選択した場合(S119;キャンセル)、S109の処理に戻る。
一方、ユーザがOKボタンB232を選択した場合(S119;OK)、制御部11は、ゲームサーバ30に対し、対戦部屋の生成要求を送信する(S123)。生成要求は、所定形式のデータが送信されることによって行われるようにすればよい。例えば、生成要求には、ゲーム端末10のユーザのユーザ識別情報と、入力フォームF230に入力された対戦部屋の名前と、が含まれるものとするが、生成要求には、他の情報が含まれてもよく、例えば、ゲーム端末10の識別情報、ユーザ名、及びユーザの優勝回数等が含まれていてもよい。
なお、生成要求に含まれるユーザ識別情報等の情報は、予め記憶部12に記憶されているようにすればよい。例えば、以降の説明においても、ゲーム端末10からゲームサーバ30に対して何らかの情報が送信される場合には、ユーザ識別情報も送信され、ゲームサーバ30側でどのゲーム端末10と通信しているか特定可能となっている。また、入力フォームF230に対戦部屋の名前が入力されていない場合には、ユーザがOKボタンB232を選択しても生成要求が送信されないようにしてもよい。
ゲームサーバ30においては、生成要求を受信すると、制御部31は、対戦部屋の生成処理を実行する(S301)。S301においては、制御部31は、生成要求によって生成される対戦部屋の対戦部屋IDを生成する。対戦IDは、予め定められたID生成ルールによって生成されるようにすればよく、他の対戦部屋の対戦IDと重複しないように生成すればよい。制御部31は、対戦部屋データベースDB1に新たなレコードを生成し、当該生成した対戦部屋IDに関連付けて、対戦部屋名、対戦部屋を生成したユーザのユーザ識別情報、端末識別情報、及び優勝回数を生成ユーザ情報と入室ユーザ情報として対戦部屋データベースDB1に格納する。
制御部31は、対戦部屋の生成処理の完了通知を送信する(S303)。完了通知は、所定のデータ形式で行われるようにすればよく、例えば、S301で生成した対戦部屋IDが完了通知に含まれるものとする。
ゲーム端末10においては、完了通知を受信すると、制御部11は、対戦部屋検索画像G2上にダイアログD24を表示させ(S125)、他のゲーム端末10が自身を特定するための処理を実行する(S127)。S127においては、制御部11は、複数の無線通信規格の各々に則った無線通信を介して他のゲーム端末10が自身を特定するための処理を実行する。例えば、S127では、下記に説明する第1の無線通信規格〜第3の無線通信規格に係る処理が同時並行して行われる。なお、これらの処理は同時並行する必要はなく、第1の無線通信規格の処理が終了した場合に第2の無線通信規格の処理を実行する等のように1つずつ順次行われるようにしてもよい。
例えば、第1の無線通信規格では、対戦部屋を生成したゲーム端末10がゲーム識別情報を発信するので、S111では、他のゲーム端末10がゲーム識別情報を受信できるように、制御部11は、第1の無線通信規格に則った第1の無線通信を介して、ゲーム識別情報や対戦部屋ID等を発信する。
また例えば、第2の無線通信規格では、対戦部屋を生成したゲーム端末10が他のゲーム端末10からゲーム識別情報のリクエストを受け付けるので、S111では、制御部11は、第2の無線通信規格に則った第2の無線通信を介して、他のゲーム端末10からのリクエストの受信を待機する。制御部11は、他のゲーム端末10からリクエストを受信した場合に、当該他のゲーム端末10に対してゲーム識別情報を送信する。
また例えば、第3の無線通信規格では、ドメインネームサーバ50にゲーム識別情報を登録する必要があるので、S111では、制御部11は、第3の無線通信規格に則った第3の無線通信を介して、ドメインネームサーバ50に対し、IPアドレスと、ゲーム識別情報や対戦部屋ID等と、を関連付けて登録する旨の要求を送信する。ドメインネームサーバ50は要求を受け付けると、ゲーム端末10のIPアドレスと、ゲーム識別情報及び対戦部屋IDと、を関連付けて登録する。
制御部11は、操作部14の検出信号に基づいて、OKボタンB240が選択されたか否かを判定する(S129)。OKボタンB240が選択されたと判定された場合(S129;Y)、制御部11は、対戦部屋画像G3を表示部15に表示させ(S131)、図25に移り、ゲーム端末10とゲームサーバ30との間で、対戦部屋画像G3の更新処理が行われる(S133,S305)。本実施形態では、ゲームサーバ30が対戦部屋を管理しており、ユーザが対戦部屋に入室する場合、各ゲーム端末10は、ゲームサーバ30に対して入室要求を送信する。このため、対戦部屋を生成したゲーム端末10は、S133,S305の処理によって、ゲームサーバ30から最新の入室状況(対戦部屋データベースDB1における入室ユーザ情報)を取得する。なお、S133,S305の処理は、繰り返し実行され、例えば、定期的に最新の入室状況が取得されるようにしてもよい。
制御部11は、S133において受信したデータに基づいて、対戦部屋に入室したユーザがいるか否かを判定する(S135)。S135においては、制御部11は、ゲームサーバ30から受信したデータに他のユーザのユーザ識別情報が含まれているか否かを判定することになる。対戦部屋に入室したユーザがいると判定されない場合(S135;N)、S133の処理に戻り、再び対戦部屋画像G3の更新処理が実行される。
一方、対戦部屋に入室したユーザがいると判定された場合(S135;Y)、制御部11は、表示領域A30内に、入室したユーザに関する情報を表示させる(S137)。S137においては、制御部11は、S133で受信した入室ユーザ情報を参照し、当該入室ユーザ情報に格納されたユーザの名前や優勝回数に基づいて、表示領域A30の表示を更新することになる。なお、入室ユーザ情報に、ユーザが使用するサッカーチームを含めておき、表示領域A30に表示させてもよい。また、制御部11は、S133で受信した入室ユーザ情報を部屋表示データDT3に格納する。
制御部11は、操作部14の検出信号に基づいて、ローカルリーグを開始するための開始操作が行われたか否かを判定する(S139)。開始操作が行われたと判定されない場合(S139;N)、S133の処理に戻る。一方、開始操作が行われたと判定された場合(S139;Y)、制御部11は、部屋表示データDT3の入室ユーザ情報に基づいて、対戦組み合わせを決定して、対戦組み合わせ画像G4を表示部15に表示させる(S141)。S141においては、制御部11は、入室ユーザ情報に入室した複数のユーザで総当たり戦となるように対戦組み合わせを決定し、部屋表示データDT3内のゲームデータとして格納する。
制御部11は、操作部14の検出信号に基づいて、先の画面に進むための操作が行われたか否かを判定する(S143)。先に進む操作が行われたと判定された場合(S143;Y)、ゲーム端末10と他のゲーム端末10との間でマッチング処理が実行される(S145)。S145の時点では、他のゲーム端末10が対戦部屋に入室する際に、ゲーム端末10との無線通信が確立しているため、制御部11は、当該無線通信をしながら試合の前処理であるマッチング処理を実行する。
S145におけるマッチング処理が完了すると、ゲーム端末間10でゲームが実行される(S147)。S147においては、制御部11は、ゲーム端末10と他のゲーム端末10との間で確立した無線通信をしながら、実行中のゲームの状況を示すデータやユーザの操作内容を送受信することによって、ゲームを実行する。
ゲーム端末10は、部屋表示データDT3に基づいて、ローカルリーグにおける全試合が終了したか否かを判定する(S149)。全試合が終了したと判定された場合(S149;Y)、本処理は終了する。一方、全試合が終了したと判定されない場合(S149;N)、S145の処理に戻り、次の試合のマッチング処理が実行される。
一方、S113において、対戦部屋を検出したと判定された場合(S113;Y)、図26に移り、制御部11は、対戦部屋検索画像G2に対戦部屋を表示させる(S151)。S151においては、制御部11は、複数の対戦部屋を取得したとしても、表示領域A20においては1つにまとめて対戦部屋を表示させることになる。
制御部11は、操作部14の検出信号に基づいて、入室ボタンB23が選択されたか否かを判定する(S153)。入室ボタンB23が選択されたと判定された場合(S153;Y)、制御部11は、ゲームサーバ30に対し、対戦部屋に入室するための入室要求を送信する(S155)。入室要求は、所定のデータ形式で行われるようにすればよく、例えば、ユーザが指定した対戦部屋の対戦部屋ID、ゲーム端末10のユーザ識別情報、端末識別情報、ユーザ名、及び優勝回数等の情報を含む。
ゲームサーバ30においては、入室要求を受信すると、制御部31は、入室処理を行う(S157)。S157においては、制御部31は、対戦部屋データベースDB1を参照し、入室要求に含まれる対戦IDが格納されたレコードの入室ユーザ情報に、入室要求に含まれるユーザ識別情報、端末識別情報、ユーザ名、及び優勝回数等の情報を格納する。制御部31は、ゲーム端末10に対し、入室処理の完了通知を送信する(S159)。
ゲーム端末10においては、完了通知を受信するとS133の処理に移行し、対戦部屋画像G3が表示される。以降、対戦部屋を生成したユーザが開始操作をするのが待機されてもよいし、対戦部屋に入室したユーザが開始操作をすることができるようにしてもよい。
以上説明したゲームシステムSによれば、複数の無線通信規格の各々に則った無線通信を介して所定の処理を行うことにより、無線通信可能な他のゲーム端末10が特定され、当該他のゲーム端末10との無線通信に基づいてゲームが実行され、ゲームで使用する無線通信規格をユーザがいちいち確認してから選択するといった煩雑さを防止できるので、
他の端末と無線通信しながらゲームをプレイする際の開始手順を簡易化することができる。また、利用できない無線通信規格をユーザが誤選択してしまい、ゲームを開始できないといったことを防止することもできる。
また、他のゲーム端末10との無線通信に基づいて複数の対戦部屋が取得されたとしても対戦部屋IDが同一である場合に、1つの対戦部屋にまとめて表示されるので、多数の対戦部屋が表示されてしまい、ユーザがどれを指定してよいか分からなくなってしまうといったことを防止することができる。
また、第1の対戦部屋と第2の対戦部屋とが取得されたとしても、これらの対戦部屋IDが同一である場合に1つの対戦部屋にまとめて表示されるので、2つの対戦部屋が表示されてしまい、ユーザがどれを指定してよいかを分からなくなってしまうといったことを防止することができる。
また、無線通信規格の優先順位情報に基づいて選択された対戦部屋に参加させることができるので、安定した通信環境のもとでゲームをプレイさせることができる。
また、他のゲーム端末10との無線通信に基づいて複数の対戦部屋が取得されたとしても対戦部屋IDが同一である場合に、当該複数の対戦部屋のうちの何れか1つが表示されるので、多数の対戦部屋が表示されてしまい、ユーザがどれを指定してよいか分からなくなってしまうといったことを防止することができる。
また、ある端末と通信しながらゲームを実行する場合と、別の端末と通信しながらゲームを実行する場合と、で無線通信規格が異なってもよいため、無線通信規格に縛られずに気軽にゲームをプレイできるようになる。
また、第1の無線通信規格については、周囲に発信されたゲーム識別情報を利用して他のゲーム端末10を特定することで、ゲームを開始するための手順を簡易化することができる。
また、第2の無線通信規格については、リクエストによって得られたゲーム識別情報を利用して他のゲーム端末10を特定することで、ゲームを開始するための手順を簡易化することができる。
また、第3の無線通信規格については、ドメインネームサーバに記憶されたゲーム識別情報を利用して対戦部屋を取得させることで、ゲームを開始するための手順を簡易化することができる。
[5.変形例]
なお、本発明は、以上に説明した実施の形態に限定されるものではない。本発明の趣旨を逸脱しない範囲で、適宜変更可能である。
例えば、実施形態では、ローカルリーグを例に挙げて説明したが、エキシビションにおいても、複数の無線通信規格の各々に則った無線通信を介して所定の処理が行われることにより、ゲーム端末10同士が特定されてもよい。エキシビションでは、特に対戦部屋が生成されず、ゲーム端末10同士が特定された後に、入室処理等が行われることなく、すぐにマッチングが開始されてもよい。また例えば、ゲーム端末10の通信相手となる他の端末は、ゲーム端末10と同様の構成を有する必要はなく、利用可能な無線通信規格が少ない携帯端末であってもよいし、逆に利用可能な無線通信規格が多いパーソナルコンピュータであってもよい。
例えば、実施形態では、ゲーム端末10においてゲームの主な処理が実行され、ゲーム端末10が本発明に係るゲーム制御装置に相当する場合を説明したが、ゲーム端末10において実現される各機能は、ゲームサーバ30において実現されてもよい。例えば、特定部101、表示制御部102、参加部103、及び実行部104がゲームサーバ30において実現されてもよい。この場合、これら各機能は、制御部31を主として実現される。
例えば、特定部101がゲームサーバ30で実現される場合、特定部101は、ゲーム端末10の通信状況をネットワークN又はプライベートネットワークPN経由で取得し、当該ゲーム端末10と無線通信可能な他のゲーム端末10を特定する。また例えば、表示制御部102がゲームサーバ30で実現される場合、表示制御部102は、メニュー画像G1、対戦部屋検索画像G2、対戦部屋画像G3等の表示データをネットワークN又はプライベートネットワークPN経由でゲーム端末10に送信する。また例えば、参加部103がゲームサーバ30で実現される場合、参加部103は、ユーザが指定した対戦部屋の対戦部屋IDをネットワークN又はプライベートネットワークPN経由で取得し、当該ユーザの入室処理を実行する。また例えば、実行部104がゲームサーバ30で実現される場合、実行部104は、ネットワークN又はプライベートネットワークPN経由でユーザの操作内容を取得し、対戦部屋データベースDB1のゲームデータを更新し、更新されたゲームデータをゲーム端末10に送信する。
また例えば、複数のゲーム端末10で各機能が分担されてもよい。この場合、ゲーム端末10同士で処理結果を送受信すればよい。例えば、第1ゲーム端末10Aにおいて特定部101が実現され、第2ゲーム端末10Bにおいて表示制御部102が実現されてもよい。また例えば、第1ゲーム端末10Aにおいて参加部103が実現され、第2ゲーム端末10Bにおいて実行部104が実現されてもよい。
[6.付記]
以上のような記載から、本発明は例えば以下のように把握される。
1)本発明の一態様に係るゲーム制御装置(10)は、無線通信可能な他の端末と通信しながらゲームを実行するゲーム制御装置(10)であって、複数の無線通信規格の各々に則った無線通信を介して所定の処理を行うことにより、無線通信可能な他の端末を特定する特定手段(101)と、前記特定手段(101)により特定された他の端末との無線通信に基づいて、前記ゲームを実行する実行手段(104)と、を含む。
10)本発明の一態様に係るゲームシステム(S)は、無線通信可能な端末間で通信しながらゲームを実行するゲームシステム(S)であって、複数の無線通信規格の各々に則った無線通信を介して所定の処理を行うことにより、無線通信可能な端末を特定する特定手段(101)と、前記特定手段(101)により特定された端末との無線通信に基づいて、前記ゲームを実行する実行手段(104)と、を含む。
11)本発明の一態様に係るプログラムは、1)〜9)の何れかに記載のゲーム制御装置(10)又は10)に記載のゲームシステム(S)としてコンピュータを機能させる。
12)本発明の一態様に係る情報記憶媒体は、11)のプログラムを記録したコンピュータで読み取り可能な情報記憶媒体である。
1)又は10)〜12)に係る発明によれば、複数の無線通信規格の各々に則った無線通信を介して所定の処理を行うことにより、無線通信可能な他の端末が特定され、当該他の端末との無線通信に基づいてゲームが実行され、ゲームで使用する無線通信規格をユーザがいちいち確認してから選択するといった煩雑さを防止できるので、他の端末と無線通信しながらゲームをプレイする際の開始手順を簡易化することができる。また、利用できない無線通信規格をユーザが誤選択してしまい、ゲームを開始できないといったことを防止することもできる。
2)本発明の一態様では、前記ゲーム制御装置(10)は、前記特定手段(101)により特定された他の端末との無線通信に基づいて取得されたユーザグループを表示手段(15)に表示させる表示制御手段(102)と、前記表示手段(15)に表示されたユーザグループのうち、ユーザによって指定されたユーザグループに参加させる参加手段(103)と、を更に含み、前記表示制御手段(102)は、複数のユーザグループが取得され、当該複数のユーザグループの各々の識別情報が同一である場合に、当該複数のユーザグループを1つにまとめて前記表示手段(15)に表示させる。2)の態様によれば、他の端末との無線通信に基づいて複数のユーザグループが取得されたとしても識別情報が同一である場合に、1つのユーザグループにまとめて表示されるので、多数のユーザグループが表示されてしまい、ユーザがどれを指定してよいか分からなくなってしまうといったことを防止することができる。
3)本発明の一態様では、前記複数の無線通信規格は、第1の無線通信規格と第2の無線通信規格とを含み、前記表示制御手段(102)は、前記第1の無線通信規格に則った第1の無線通信を介して参加可能な第1のユーザグループと、前記第2の無線通信規格に則った第2の無線通信を介して参加可能な第2のユーザグループと、が取得され、前記第1のユーザグループの識別情報と、前記第2のユーザグループの識別情報と、が同一である場合に、前記第1のユーザグループと前記第2のユーザグループとを1つにまとめて前記表示手段(15)に表示させる。3)の態様によれば、第1のユーザグループと第2のユーザグループとが取得されたとしても、これらの識別情報が同一である場合に1つのユーザグループにまとめて表示されるので、2つのユーザグループが表示されてしまい、ユーザがどれを指定してよいかを分からなくなってしまうといったことを防止することができる。
4)本発明の一態様では、前記参加手段(103)は、前記複数のユーザグループのうちの何れか1つを、前記複数の無線通信規格の各々に定められた優先順位情報に基づいて選択し、当該選択したユーザグループに前記ユーザを参加させる。4)の態様によれば、無線通信規格の優先順位情報に基づいて選択されたユーザグループに参加させることができるので、安定した通信環境のもとでゲームをプレイさせることができる。
5)本発明の一態様では、前記ゲーム制御装置(10)は、前記特定手段(101)により特定された他の端末との無線通信に基づいて取得されたユーザグループを表示手段(15)に表示させる表示制御手段(102)と、前記表示手段(15)に表示されたユーザグループのうち、ユーザによって指定されたユーザグループに参加させる参加手段(103)と、を更に含み、前記表示制御手段(102)は、複数のユーザグループが取得され、当該複数のユーザグループの各々の識別情報が同一である場合に、当該複数のユーザグループのうちの何れか1つを前記表示手段(15)に表示させる。5)の態様によれば、他の端末との無線通信に基づいて複数のユーザグループが取得されたとしても識別情報が同一である場合に、当該複数のユーザグループのうちの何れか1つが表示されるので、多数のユーザグループが表示されてしまい、ユーザがどれを指定してよいか分からなくなってしまうといったことを防止することができる。
6)本発明の一態様では、前記ゲーム制御装置(10)は、第1の他の端末と通信しながら前記ゲームを実行する場合と、第2の他の端末と通信しながら前記ゲームを実行する場合と、で異なる無線通信規格を利用可能である。6)の態様によれば、ある端末と通信しながらゲームを実行する場合と、別の端末と通信しながらゲームを実行する場合と、で無線通信規格が異なってもよいため、無線通信規格に縛られずに気軽にゲームをプレイできるようになる。
7)本発明の一態様では、前記複数の無線通信規格は、前記ゲームに係る識別情報が周囲に発信される特定の無線通信規格を含み、前記特定手段(101)は、前記特定の無線通信規格については、周囲に発信された前記識別情報を受信することによって、前記他の端末を特定する。7)の態様によれば、特定の無線通信規格については、周囲に発信された識別情報を利用して他の端末を特定することで、ゲームを開始するための手順を簡易化することができる。
8)本発明の一態様では、前記複数の無線通信規格は、通信相手に対して所定の情報をリクエストする特定の無線通信規格を含み、前記特定手段(101)は、前記特定の無線通信規格については、前記ゲームに係る識別情報をリクエストして当該識別情報を受信することによって、前記他の端末を特定する。8)の態様によれば、特定の無線通信規格については、リクエストによって得られた識別情報を利用して他の端末を特定することで、ゲームを開始するための手順を簡易化することができる。
9)本発明の一態様では、前記複数の無線通信規格は、ドメインネームサーバを利用する特定の無線通信規格を含み、前記ドメインネームサーバには、前記ゲームに係る識別情報が記憶されており、前記特定手段(101)は、前記特定の無線通信規格については、前記ドメインネームサーバに記憶された前記識別情報を取得することによって、前記他の端末を特定する。9)の態様によれば、特定の無線通信規格については、ドメインネームサーバに記憶された識別情報を利用してユーザグループを取得させることで、ゲームを開始するための手順を簡易化することができる。