ネットワークシステム,通信端末および通信プログラム
【課題】 3以上の通信端末間で各々が自身の識別情報しか記憶していなくても1対多の無線通信が行えるネットワークシステムを提供する。
【解決手段】 ネットワークシステムに参加する各ゲーム装置A〜Dは、識別情報を参照して1対多の無線通信を行う無線通信モジュールと、これを参照することなく1対1の赤外線通信を行うローカル通信モジュールとを備える。1対多の無線通信を行う場合には、まずローカル通信モジュールを介して自身と他のいずれか1つのゲーム装置との間で主従を決定し従側に記憶されている識別情報を主側に集約するペアリング処理をトーナメント方式で実行し、そして一連のペアリング処理の結果、自身が唯一の主となった場合には全てのゲーム装置A〜Dの識別情報を含む信号を無線通信モジュールを介して送信する一方、従となった場合にはこれを受信する。
【解決手段】 ネットワークシステムに参加する各ゲーム装置A〜Dは、識別情報を参照して1対多の無線通信を行う無線通信モジュールと、これを参照することなく1対1の赤外線通信を行うローカル通信モジュールとを備える。1対多の無線通信を行う場合には、まずローカル通信モジュールを介して自身と他のいずれか1つのゲーム装置との間で主従を決定し従側に記憶されている識別情報を主側に集約するペアリング処理をトーナメント方式で実行し、そして一連のペアリング処理の結果、自身が唯一の主となった場合には全てのゲーム装置A〜Dの識別情報を含む信号を無線通信モジュールを介して送信する一方、従となった場合にはこれを受信する。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、ネットワークシステム,通信端末および通信プログラムに関し、特にたとえば、異なる2つの方式で通信を行う、ネットワークシステム,通信端末および通信プログラムに関する。
【背景技術】
【0002】
従来のこの種の装置としては、たとえば特許文献1に開示されたものが知られている。この背景技術では、通信を所望する機器Aは、識別情報の特定を必要としない赤外線を用いた通信によって自機の機器IDを含む指定信号を相手の機器Bへ送信する。引き続き機器Aは、探索パケットを無線LANによって送信する。当該探索パケットを受信した機器Bは、赤外線によって機器Aから送られた指定信号を既に受信している場合、その旨を示す特定返信パケットを機器Aへ返信する。特定返信パケットには送信元である機器Bの識別情報が含まれているので、機器Aは当該識別情報をもとに無線LANの接続先を機器Bに指定し、画像データを機器Bへ送信する。これにより、接続を所望する機器の識別情報が不明な場合であっても、所望する機器へ赤外線を用いて自身の機器IDを送信する操作によって、簡単に他の機器との無線LAN等での接続が可能となる。
【特許文献1】特開2007−259385号公報
【発明の概要】
【発明が解決しようとする課題】
【0003】
しかし、特許文献1の背景技術では、2つの機器間で1対1の通信しか行えなかった。
【0004】
それゆえに、この発明の主たる目的は、新規な、ネットワークシステム,通信端末および通信プログラムを提供することである。
【0005】
この発明の他の目的は、3以上の通信端末間で各々が自身の識別情報しか記憶していなくても1対多の無線通信が容易かつ効率的に行えるネットワークシステム、ならびにこのようなネットワークシステムに参加する通信端末およびそのための通信プログラムを提供することである。
【課題を解決するための手段】
【0006】
この発明は、上記の課題を解決するために、以下の構成を採用した。
【0007】
第1の発明は、各々が少なくとも自身の識別情報を記憶している3以上の通信端末からなるネットワークシステムであって、各通信端末は、他の複数の通信端末との間で各々の識別情報を参照して無線通信を行う第1通信モジュール、他の各通信端末との間で識別情報を参照することなく通信を行う第2通信モジュール、第1通信モジュールによる無線通信の開始に先立って、第2通信モジュールを介して他のいずれか1つの通信端末との間で少なくとも一方の通信端末に記憶されている識別情報を他方の通信端末に記憶して集約するペアリング処理を実行し、そしてペアリング処理で第1条件を満たす毎に、別の1つの通信端末との間で少なくとも一方の通信端末に集約されている識別情報を他方の通信端末に記憶して集約するペアリング処理を繰り返し実行する、ペアリング手段、およびペアリング手段による一連のペアリング処理の結果、第2条件を満たした場合には集約された全ての識別情報を含む信号を第1通信モジュールを介して他の通信端末へ送信し、第3条件を満たした場合には他の通信端末から送信される信号を第1通信モジュールを介して受信する、信号送受信手段を備える。
【0008】
第1の発明では、ネットワークシステムは、各々が少なくとも自身の識別情報を記憶している3以上の通信端末A,B,C…からなる。各通信端末たとえばAは、第1通信モジュールおよび第2モジュールを備えており、他の複数の通信端末B,C…との間で各々の識別情報を参照して第1通信モジュールにより(1対多の)無線通信を行うことができる。また、他の各通信端末B,C…との間で識別情報を参照することなく第2通信モジュールにより(1対1の)通信を行うこともできる。
【0009】
各通信端末たとえばAは、自身の識別情報を記憶しているものの、他の通信端末B,C,…の識別情報を記憶しているとは限らないので、第1通信モジュールによる無線通信を行う場合、まず、ペアリング手段が、第2通信モジュールを介して他のいずれか1つの通信端末たとえばBとの間で少なくとも一方の通信端末に記憶されている識別情報を他方の通信端末に記憶して集約する(言い換えると、主従を決定して従側に記憶されている識別情報を主側に集約する)ペアリング処理を実行し、そしてこのペアリング処理で第1条件を満たす(たとえば自身が主となる)毎に、別の1つの通信端末との間で少なくとも一方の通信端末に集約されている識別情報を他方の通信端末に記憶して集約するペアリング処理を繰り返し実行する。次に、信号送受信手段が、ペアリング手段による一連のペアリング処理の結果として、第2条件を満たした(たとえば自身が唯一の主となった)場合には集約された全ての通信端末A,B,C…の識別情報を含む信号を第1通信モジュールを介して他の通信端末へ送信し、第3条件を満たした(たとえば自身が従となった)場合には他の通信端末(たとえば唯一の主)から送信される信号を第1通信モジュールを介して受信する。したがって、一連のペアリングを経て唯一の主となった通信端末つまり親機に全ての通信端末A,B,C…の識別情報が集約される結果となり、一連のペアリングの過程で従となった各通信端末つまり各子機は親機からこの識別情報の配信を受けることができる。
【0010】
第1の発明によれば、3以上の通信端末の間で、各々が自身の識別情報しか記憶していなくても、第2通信モジュールによるペアリングを経て第1通信モジュールによる(1対多の)無線通信へと容易かつ効率的に移行することができる。また、今回のペアリングで第1条件を満たした通信端末だけが次回のペアリングに進むトーナメント方式を採用したので、各通信端末が自身以外の全ての通信端末とペアリングする総当り方式と比べ、ペアリング処理の回数を少なくできる。
【0011】
第2の発明は、第1または第2の発明に従属するネットワークシステムであって、第1通信モジュールは第2通信モジュールよりも通信可能範囲が広い。
【0012】
第2の発明によれば、接続相手の特定を行う第2通信モジュールは通信可能な範囲が狭いため、遠くにいる意図しない通信端末を誤って接続相手とするのを防止することができ、より確実に接続相手を特定できる。また、接続相手を特定した後は第1通信モジュールを用いて通信を行うので、第2通信モジュールで通信を続ける場合と比べて、通信可能な方向が広がり、途中で距離が離れてしまっても通信を維持することができる。
【0013】
第3の発明は、第1の発明に従属するネットワークシステムであって、第2通信モジュールは第1通信モジュールよりも指向性が強い。
【0014】
第3の発明によれば、接続相手を特定するためには、第2通信モジュールを、接続を所望する通信端末の方向に向ける必要があるため、別の方向に存在する意図しない他の通信端末が誤って特定されるのを防止することができ、より確実に接続相手を特定できる。また、接続相手を特定した後は第1通信モジュールを用いて通信を行うので、第2通信モジュールで通信を続ける場合と比べて、通信可能な方向が広がり、途中で接続を所望する通信端末の方向が変わっても通信を維持することができる。
【0015】
なお、通信可能範囲が狭い、および/または指向性が強い第2通信モジュールは、1対1で行うペアリングに適しており、たとえば赤外線モジュール、非接触ICカードに利用される近距離無線通信モジュールなどがこれに該当するが、指向性が極大といえる点で有線通信モジュールもこれに含めてよい。一方、通信範囲が広く指向性が弱い第1通信モジュールは、1対多で行う無線通信に適しており、たとえば無線LANモジュール,Bluetooth(登録商標)モジュール,ZigBee(登録商標)モジュールなどがこれに該当する。
また、ある実施例では、信号送受信手段は信号をブロードキャスト方式で送受信する。なお、第2条件を満たした通信端末は全ての通信端末の識別情報を記憶している一方、第3条件を満たした通信端末は少なくとも自身の識別情報を記憶しているので、信号の送受信は、ブロードキャスト方式に限らず、マルチキャスト方式またはユニキャスト方式で行われてもよい。
【0016】
第4の発明は、第1の発明に従属するネットワークシステムであって、各通信端末は、ペアリング処理の結果、第3条件を満たした場合には、第1通信モジュールを介して他の通信端末からの信号を受信するまでの間待機する。
【0017】
第4の発明によれば、たとえばペアリングで従になった場合、第1通信モジュールで待機するので、効率的に信号の送受信ができる。
【0018】
第5の発明は、第1の発明に従属するネットワークシステムであって、第1条件は、ペアリング処理において、他の通信端末に記憶されている識別情報を自身の通信端末に記憶して集約したことである。
【0019】
第5の発明によれば、識別情報を集約した側が次なるペアリングを行うので、総当り方式と比べ、効率的にペアリングを行うことができる。
【0020】
第6の発明は、第1の発明に従属するネットワークシステムであって、各通信端末は、他の通信端末へ、第2通信モジュールを介して接続要求を送信する接続要求送信手段、および第2通信モジュールを介して他の通信端末から接続要求を受信する接続要求受信手段をさらに備え、第1条件は、接続要求を受信したことである。
【0021】
第6の発明によれば、接続要求を受信した側が次なるペアリングを行うので、効率的にペアリングを行うことができる。
【0022】
第7の発明は、第1の発明に従属するネットワークシステムであって、第2条件は、所定数の他の通信端末の識別情報を自身の通信端末に記憶して集約したことである。
【0023】
第7の発明によれば、通信端末の識別情報を所定数集約したら、第1通信モジュールによる送信を行うので、第1通信モジュールによる通信を行うきっかけを容易に判断できる。
【0024】
第8の発明は、第1の発明に従属するネットワークシステムであって、各通信端末は、他の通信端末に記憶されている識別情報を自身の通信端末に記憶して集約するペアリング処理を実行した回数をカウントするカウント手段をさらに備え、第2条件は、カウント手段によるカウントが所定回数に達したことである。
【0025】
第8の発明によれば、ペアリング処理を所定回数実行したら、第1通信モジュールによる送信を行うので、第1通信モジュールによる通信を行うきっかけを容易に判断できる。
【0026】
なお、自身が主となった回数をカウントして、その結果が所定回数に達した場合に自身が唯一の主となったと判断することも可能である。ユーザによって所定操作が行われたとき、自身が唯一の主となったと判断してもよい。
【0027】
第9の発明は、第1の発明に従属するネットワークシステムであって、第3条件は、ペアリング処理において、自身の通信端末に記憶されている識別情報を他の通信端末に記憶して集約したことである。
【0028】
第9の発明によれば、第1通信モジュールで受信を行う側を容易に決することができる。
【0029】
第10の発明は、第1の発明に従属するネットワークシステムであって、各通信端末は、他のいずれか1つの通信端末との間において、自身の通信端末が集約側の通信端末となるか否かを決定する集約側通信端末決定手段をさらに備え、ペアリング手段は、集約側通信端末決定手段によって集約側の通信端末になると決定されたとき、他の通信端末に記憶されている識別情報を自身の通信端末に記憶して集約する。
【0030】
第10の発明によれば、自身が集約側になるか否かを決定してペアリングを行うことができる。
【0031】
第11の発明は、第10の発明に従属するネットワークシステムであって、第1条件は、集約側通信端末決定手段によって集約側の通信端末になると決定されたことである。
【0032】
第11の発明によれば、集約側になると決定された通信端末(主)が次なるペアリングを行うので、効率的にペアリングを行うことができる。
【0033】
第12の発明は、第10の発明に従属するネットワークシステムであって、第3条件は、集約側通信端末決定手段によって集約側の通信端末にならないと決定されることである。
【0034】
第12の発明によれば、第1通信モジュールで受信を行う側(従)を容易に決することができる。
【0035】
第13の発明は、第1の発明に従属するネットワークシステムであって、各通信端末は、他のいずれか1つの通信端末との間で自身の通信端末が主となるか従となるかを決定する主従決定手段をさらに備え、ペアリング手段は、主従決定手段によって主となることが決定されたとき、他の通信端末に記憶されている識別情報を自身の通信端末に記憶して集約し、主従決定手段によって従となることが決定されたとき、自身の通信端末に記憶されている識別情報を他の通信端末に記憶して集約する。
【0036】
第13の発明によれば、自身が主となるか従となるかを決定することによって、集約するか否かを簡易に決定できる。
【0037】
第14の発明は、第13の発明に従属するネットワークシステムであって、各通信端末は、他のいずれか1つの通信端末へ、第2通信モジュールを介して接続要求を送信する接続要求送信手段、第2通信モジュールを介して他の通信端末から接続要求を受信する接続要求受信手段、接続要求を受信したとき、当該接続要求を送信した他の通信端末へ、第2通信モジュールを介して接続応答を送信する接続応答送信手段、および第2通信モジュールを介して他の通信端末から接続応答を受信する接続応答受信手段をさらに備え、主従決定手段は、接続要求を受信したとき、主となることを決定し、接続応答を受信したとき、従となることを決定する。
【0038】
第14の発明によれば、他の通信端末から接続要求を受信した場合は主とし、他の通信端末から接続応答を受信した場合は従とするので、簡易に主従を決定することができる。
【0039】
第15の発明は、第1の発明に従属するネットワークシステムであって、各通信端末は、記憶されている識別情報を他の通信端末に送信する識別情報送信手段、および他の通信端末に記憶されている識別情報を受信する識別情報受信手段をさらに備え、ペアリング手段は、識別情報受信手段によって他の通信端末に記憶されている識別情報を受信したとき、当該識別情報を記憶して集約し、識別情報送信手段によって識別情報を他の通信端末に送信したとき、当該識別情報を他の通信端末に集約させ、第1条件は、識別情報受信手段によって他の通信端末に記憶されている識別情報を受信したときであり、第3条件は、識別情報送信手段によって識別情報を他の通信端末に送信したときである。
【0040】
第15の発明によれば、識別情報の送受信によって容易に集約を行うことができる。
【0041】
第16の発明は、第1の発明に従属するネットワークシステムであって、ペアリング処理で第1条件を満たした通信端末の次なるペアリング処理の相手は、別のペアリング処理で第1条件を満たした通信端末である。
【0042】
第16の発明によれば、ペアリング処理の回数をより少なくできる。
【0043】
第17の発明は、第1の発明に従属するネットワークシステムであって、各通信端末は自身の識別情報を記憶したメモリをさらに備え、ペアリング手段は一連のペアリング処理で識別情報を順番にメモリに追記することによって集約する。
【0044】
第17の発明によれば、識別情報が集約した順に追記されるため、その情報を利用することができる。
【0045】
なお、識別情報の順番は、ある実施例では対戦ゲームのためのチーム分けを行うとき参照されるが、優先度情報としても利用できる。
【0046】
第18の発明は、第1の発明に従属するネットワークシステムであって、各通信端末は、信号送受信手段によって送信または受信した識別情報を参照することにより第1通信モジュールによる無線通信を開始して、自身と他の各通信端末との間で協働して情報処理を実行する処理手段をさらに備える。
【0047】
第18の発明によれば、集約した識別情報を送受信することによって、複数の通信端末間で情報処理を協働して行うことができる。
【0048】
第19の発明は、第17の発明に従属するネットワークシステムであって、各通信端末は、第2条件を満たした場合にメモリに記憶されている識別情報の順番に基づいて各通信端末をチーム分けするチーム分け手段、および信号送受信手段による送信または受信の後に第1通信モジュールによる無線通信を開始して、自身の通信端末と他の各通信端末との間で、チーム分け手段の結果を利用して、各通信端末がチームに分かれて対戦するためのゲーム処理を実行する処理手段をさらに備える。
【0049】
第19の発明によれば、ペアリングを反映したチーム分けが可能となる。
【0050】
第20の発明は、第1の発明に従属するネットワークシステムであって、各通信端末は、信号送受信手段によって信号を受信したとき、当該信号に自身の識別情報が含まれているか否かを判別する自身識別情報判別手段、および自身識別情報判別手段によって自身の識別情報が含まれていると判別されたとき、信号を参照することにより、第2条件を満たした他の通信端末と第1通信モジュールを介して無線通信を開始し、情報処理を実行する処理手段をさらに備える。
【0051】
第20の発明によれば、第2通信モジュールによって特定した接続相手としか第1通信モジュールによる通信を行わないため、より確実に、識別情報を集約した接続相手とのみ通信できる。
【0052】
第21の発明は、少なくとも自身の識別情報を記憶している通信端末であって、他の複数の通信端末との間で各々の識別情報を参照して無線通信を行う第1通信モジュール、他の各通信端末との間で識別情報を参照することなく通信を行う第2通信モジュール、第1通信モジュールによる無線通信の開始に先立って、第2通信モジュールを介して他のいずれか1つの通信端末との間で少なくとも一方の通信端末に記憶されている識別情報を他方の通信端末に記憶して集約するペアリング処理を実行し、そしてペアリング処理で第1条件を満たす毎に、別の1つの通信端末との間で少なくとも一方の通信端末に集約されている識別情報を他方の通信端末に記憶して集約するペアリング処理を繰り返し実行する、ペアリング手段、およびペアリング手段による一連のペアリング処理の結果、第2条件を満たした場合には集約された全ての識別情報を含む信号を第1通信モジュールを介して他の通信端末へ送信し、第3条件を満たした場合には他の通信端末から送信される信号を第1通信モジュールを介して受信する、信号送受信手段を備える。
【0053】
第22の発明は、少なくとも自身の識別情報を記憶しており、他の複数の通信端末との間で各々の識別情報を参照して無線通信を行う第1通信モジュール、および他の各通信端末との間で識別情報を参照することなく通信を行う第2通信モジュールを備える、通信端末のコンピュータを、第1通信モジュールによる無線通信の開始に先立って、第2通信モジュールを介して他のいずれか1つの通信端末との間で少なくとも一方の通信端末に記憶されている識別情報を他方の通信端末に記憶して集約するペアリング処理を実行し、そしてペアリング処理で第1条件を満たす毎に、別の1つの通信端末との間で少なくとも一方の通信端末に集約されている識別情報を他方の通信端末に記憶して集約するペアリング処理を繰り返し実行する、ペアリング手段、およびペアリング手段による一連のペアリング処理の結果、第2条件を満たした場合には集約された全ての識別情報を含む信号を第1通信モジュールを介して他の通信端末へ送信し、第3条件を満たした場合には他の通信端末から送信される信号を第1通信モジュールを介して受信する、信号送受信手段として機能させる、通信プログラムである。
【0054】
第23の発明は、各々が、少なくとも自身の識別情報を記憶しており、かつ、4つの通信端末の間で各々の識別情報を参照して無線通信を行う第1通信モジュール、および2つの通信端末の間で識別情報を参照することなく通信を行う第2通信モジュールを備える、4つの通信端末の間で通信を行う方法であって、第1通信モジュールによる無線通信の開始に先立って、任意の2つの通信端末が第1のペアを組む一方、他の2つの通信端末が第2のペアを組み、第1のペアを組んだ2つの通信端末の間で第2通信モジュールを介して一方の通信端末に記憶されている識別情報を他方の通信端末に記憶して集約する第1のペアリング処理を実行する一方、第2のペアを組んだ2つの通信端末の間でも第2通信モジュールを介して一方の通信端末に記憶されている識別情報を他方の通信端末に記憶して集約する第2のペアリング処理を実行し、第1および第2のペアリング処理で識別情報を集約した2つの通信端末が第3のペアを組み、第3のペアを組んだ2つの通信端末の間で第2通信モジュールを介して一方の通信端末に集約して記憶されている識別情報を他方の通信端末に記憶して集約する第3のペアリング処理を実行し、そして第3のペアリング処理で識別情報を集約した通信端末が集約された全ての識別情報を含む信号を第1通信モジュールを介して送信する一方、他の3つの通信端末は第3のペアリング処理で識別情報を集約した通信端末から送信される信号を第1通信モジュールを介して受信する、通信方法である。
【0055】
第21,第22および第23の発明でも、第1の発明と同様に、自身の識別情報しか記憶していなくても、複数の通信相手との間で第2通信モジュールによるペアリングを経て第1通信モジュールによる1対多の無線通信へと容易かつ効率的に移行することができる。
【0056】
第24の発明は、各々が少なくとも自身の識別情報を記憶している3以上の通信端末からなるネットワークシステムであって、各通信端末は、他の複数の通信端末との間で各々の識別情報を参照して無線通信を行う第1通信モジュール、他の各通信端末との間で識別情報を参照することなく通信を行う第2通信モジュール、第2通信モジュールを介して他のいずれか1つの通信端末との間で第1条件を満たした場合に当該他の通信端末に記憶されている識別情報を受信して記憶し、そして当該第1条件を満たす毎に別の1つの通信端末に記憶されている識別情報を受信して記憶する受信処理を繰り返す識別情報受信手段、および識別情報受信手段による一連の受信処理の結果、第2条件を満たした場合には受信した全ての識別情報を含む信号を第1通信モジュールを介して他の通信端末へ送信する信号送信手段を備える。
【0057】
第24の発明でも、第1の発明と同様に、自身の識別情報しか記憶していなくても、複数の通信相手との間で第2通信モジュールによるペアリングを経て第1通信モジュールによる1対多の無線通信へと容易かつ効率的に移行することができる。なお、第1の発明での「第1条件」は2回目以降のペアリング処理で主となることであるが、第24の発明での「第1条件」は1回目で主となることも含む。
【0058】
第25の発明は、第24の発明に従属するネットワークシステムであって、各通信端末は、他の通信端末へ、第2通信モジュールを介して接続要求を送信する接続要求送信手段、および第2通信モジュールを介して他の通信端末から接続要求を受信する接続要求受信手段をさらに備え、第1条件は、接続要求を受信したことである。
【0059】
第25の発明によれば、接続要求を受信した側が次なるペアリングを行うので、効率的にペアリングを行うことができる。
【発明の効果】
【0060】
この発明によれば、3以上の通信端末間で各々が自身の識別情報しか記憶していなくても1対多の無線通信を容易かつ効率的に行えるネットワークシステムが実現される。また、このようなネットワークシステムに参加する通信端末およびそのための通信プログラムが実現される。
【0061】
この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【図面の簡単な説明】
【0062】
【図1】この発明の一実施例であるゲーム装置の外観図であり、開状態における正面を示す。
【図2】ゲーム装置の外観図であり、開状態における側面を示す。
【図3】ゲーム装置の外観図であり、(A)は閉状態における一方側面を、(B)は閉状態における上面を、(C)は閉状態における他方側面を、そして(D)は閉状態における下面をそれぞれ示す。
【図4】ゲーム装置がユーザによって把持された様子を示す図解図である。
【図5】ゲーム装置の電気的構成の一例を示すブロック図である。
【図6】4台のゲーム装置が参加するネットワークシステムの一例を示す図解図であり、(a)が1対1で赤外線通信を行う場合を示し、(b)が1対多で無線通信を行う場合を示す。
【図7】4台参加のネットワークシステムで赤外線および無線により行われる通信の手順を示すシーケンス図である。
【図8】4台参加のネットワークシステムでトーナメント式により行われるペアリング(親機決定および識別情報集約)の一例を示す図解図であり、(a)がトーナメント表を示し、(b)がゲーム装置毎のIDリストの変遷を示し、そして(c)が親機となったゲーム装置のIDリストおよびこれに基づいて作成されたチーム情報を示す。
【図9】下側LCDに表示される画面の変遷を示す図解図であり、(a)が初回ペアリング(1回目)時の画面を示し、(b)および(c)が次回ペアリング時(2回目)の主側および従側の各表示画面を示し、そして(d)がペアリング完了時の表示画面を示す。
【図10】メインメモリのメモリマップの一部を示す図解図である。
【図11】CPU動作の一部を示すフロー図である。
【図12】CPU動作の他の一部を示すフロー図である。
【図13】CPU動作のその他の一部を示すフロー図である。
【図14】CPU動作のさらにその他の一部を示すフロー図である。
【図15】CPU動作の他の一部を示すフロー図である。
【図16】CPU動作のその他の一部を示すフロー図である。
【図17】5台参加のネットワークシステムでトーナメント式により行われるペアリングの他の一例を示す図解図であり、(a)がトーナメント表を示し、(b)がゲーム装置毎のIDリストの変遷を示し、そして(c)が親機となったゲーム装置のIDリストおよびこれに基づいて作成されたチーム情報を示す。
【図18】8台参加のネットワークシステムでトーナメント式により行われるペアリングの他の一例を示す図解図であり、(a)がトーナメント表を示し、(b)が親機となったゲーム装置のIDリストおよびこれに基づいて作成されたチーム情報を示す。
【発明を実施するための形態】
【0063】
図1〜図3には、本発明の一実施例であるゲーム装置10の外観が示される。ゲーム装置10は折り畳み型のゲーム装置であり、図1および図2は、開いた状態(開状態)におけるゲーム装置10を示し、図3は、閉じた状態(閉状態)におけるゲーム装置10を示している。また、図1は、開状態におけるゲーム装置10の正面図であり、図2は、開状態におけるゲーム装置の側面図である。ゲーム装置10は、2つの表示装置(LCD12および14)および2つのカメラ(カメラ16および18)を有し、カメラによって画像を撮像し、撮像した画像を画面に表示したり、撮像した画像のデータを保存したりすることができる。
【0064】
ゲーム装置10は、開いた状態において両手または片手で把持することができるような小型のサイズとされる。
【0065】
ゲーム装置10は、下側ハウジング20および上側ハウジング22という2つのハウジングを有する。下側ハウジング20と上側ハウジング22とは、開閉可能(折り畳み可能)に接続されている。この実施例では、各ハウジング20および22はともに横長の長方形の板状形状であり、互いの長辺部分で回転可能に接続されている。
【0066】
上側ハウジング22は、下側ハウジング20の上側の一部で回動自在に支持されている。これによって、ゲーム装置10は、閉状態(下側ハウジング20と上側ハウジング22とのなす角度が約0°の状態(図3参照))と、開状態(下側ハウジング20と上側ハウジング22とのなす角度が約180°の状態(図2参照))とをとることができる。ユーザは通常、開状態でゲーム装置10を使用し、ゲーム装置10を使用しない場合には閉状態としてゲーム装置10を保管する。また、ゲーム装置10は、上記閉状態および開状態のみでなく、下側ハウジング20と上側ハウジング22とのなす角度を、ヒンジに発生する摩擦力などによって閉状態と開状態との間の任意の角度に維持することができる。つまり、上側ハウジング22を下側ハウジング20に対して任意の角度で静止させることができる。
【0067】
まず、下側ハウジング20に設けられる構成について説明する。図1に示すように、ゲーム装置10は、下側LCD(液晶表示装置)12を有する。下側LCD12は横長形状であり、長辺方向が下側ハウジング20の長辺方向に一致するように配置される。下側LCD12は下側ハウジング20に収納される。下側LCD12は、下側ハウジング20の内側面に設けられる。したがって、ゲーム装置10を使用しない場合には閉状態としておくことによって、下側LCD12の画面が汚れたり傷ついたりすることを防止することができる。なお、この実施例では表示装置としてLCDを用いているが、例えばEL(Electro Luminescence:電界発光)を利用した表示装置など、他の任意の表示装置を利用してもよい。また、ゲーム装置10は任意の解像度の表示装置を利用することができる。なお、ゲーム装置10を撮像装置として利用する場合、下側LCD12は主に、カメラ16または18で撮像されている画像をリアルタイムに表示(スルー表示)するために用いられる。
【0068】
下側ハウジング20の内側面はほぼ平面状に形成される。当該内側面の中央には、下側LCD12を露出させるための開口部20bが形成される。当該開口部20bの左側(図示y軸負側)には開口部20cが形成され、当該開口部20bの右側には開口部20dが形成される。開口部20bおよび20cは、各キートップ(各ボタン24a〜24eの上面)を露出させるためのものである。そして、下側ハウジング20の内部に収納される下側LCD12の画面が開口部20bから露出し、各キートップが開口部20cおよび20dから露出される。このように、下側ハウジング20の内側面には、中央に設けられる下側LCD12用の開口部20bの左右両側に非画面領域(図1に示す点線領域A1およびA2。具体的には、各ボタン24a〜24eを配置するための領域;ボタン配置領域)がそれぞれ設けられる。
【0069】
下側ハウジング20には、入力装置として、各ボタン24a〜24iおよびタッチパネル28が設けられる。図1に示されるように、各ボタン24a〜24iのうち、方向入力ボタン24a、ボタン24b、ボタン24c、ボタン24d、ボタン24e、および電源ボタン24fは、下側ハウジング20の内側面に設けられる。方向入力ボタン24aは例えば選択操作等に用いられ、各ボタン24b〜24eは例えば決定操作やキャンセル操作等に用いられる。電源ボタン24fは、ゲーム装置10の電源をオン/オフするために用いられる。ここでは、方向入力ボタン24aおよび電源ボタン24fは、下側ハウジング20の中央付近に設けられる下側LCD12に対して一方の側(図1では左側)に設けられ、ボタン24b〜24eは下側LCD12に対して他方の側(図1では右側)に設けられる。方向入力ボタン24aおよびボタン24b〜24eは、ゲーム装置10に対する各種操作を行うために用いられる。
【0070】
図3(A)は閉状態におけるゲーム装置10の左側面図であり、図3(B)は当該ゲーム装置10の正面図であり、図3(C)は当該ゲーム装置10の右側面図であり、そして図3(D)は当該ゲーム装置10の背面図である。図3(C)に示されるように、また、図3(A)に示されるように、音量ボタン24iは、下側ハウジング20の左側面に設けられる。音量ボタン24iは、ゲーム装置10が備えるスピーカ34の音量を調整するために用いられる。また、図3(D)に示されるように、ボタン24hは、下側ハウジング20の上面の右端部に設けられる。ボタン24gは、下側ハウジング20の上面の左端部に設けられる。各ボタン24gおよび24hは、ゲーム装置10に対して例えば撮影指示操作(シャッタ操作)を行うために用いられる。各ボタン24gおよび24hの両方をシャッターボタンとして機能させてもよく、この場合、右利きのユーザはボタン24hを使用し、左利きのユーザはボタン24gを使用することができ、いずれのユーザにも使い勝手が良い。なお、ゲーム装置10は、各ボタン24gおよび24hを常にシャッターボタンとして有効としておいてもよいし、右利きか左利きかの設定をして(メニュープログラムなどによりユーザに設定入力をさせ、設定されたデータを記憶しておく)、右利き設定のときにはボタン24hのみ有効とし、左利き設定のときにはボタン24gのみ有効とするようにしてもよい。
【0071】
図1に示されるように、ゲーム装置10は、各操作ボタン24a〜24iとは別の入力装置として、タッチパネル28をさらに備えている。タッチパネル28は、下側LCD12の画面上に装着されている。なお、この実施例では、タッチパネル28は抵抗膜方式のタッチパネルである。ただし、タッチパネルは抵抗膜方式に限らず、任意の押圧式のタッチパネルを用いることができる。この実施例では、タッチパネル28として、下側LCD12の解像度と同解像度(検出精度)のものを利用する。ただし、必ずしもタッチパネル28の解像度と下側LCD12の解像度が一致している必要はない。また、下側ハウジング20の右側面には挿入口30(図1および図3(D)に示す点線)が設けられている。挿入口30は、タッチパネル28に対する操作を行うために用いられるタッチペン36を収納することができる。なお、タッチパネル28に対する入力は通常タッチペン36を用いて行われるが、タッチペン36に限らずユーザの指でタッチパネル28を操作することも可能である。
【0072】
図2や図3(C)に示されるように、下側ハウジング20の右側面には開閉可能なカバー部11bが設けられる。このカバー部11bの内側には、ゲーム装置10とメモリカード38とを電気的に接続するためのコネクタ(図示せず)が設けられる。メモリカード38は、コネクタに着脱自在に装着される。メモリカード38は、例えば、ゲーム装置10で動作するプログラムを記憶するため、あるいは、ゲーム装置10によって撮像された画像のデータを記憶(保存)するためにも用いられる。
【0073】
図1に示されるように、下側ハウジング20の軸部20aの左側部分には、3つのLED26a〜26cが取り付けられる。ここで、ゲーム装置10は他の機器との間で無線通信を行うことが可能であり、第1LED26aは、無線通信が確立している場合に点灯する。第2LED26bは、ゲーム装置10の充電中に点灯する。第3LED26cは、ゲーム装置10の電源がオンである場合に点灯する。したがって、3つのLED26a〜26cによって、ゲーム装置10の通信確立状況、充電状況、および、電源のオン/オフ状況をユーザに通知することができる。
【0074】
以上に説明したように、下側ハウジング20には、ゲーム装置10に対する操作入力を行うための入力装置(タッチパネル28および各ボタン24a〜24i)が設けられる。したがって、ユーザは、ゲーム装置10を使用する際には下側ハウジング20を把持してゲーム装置10に対する操作を行うことができる。図4は、ユーザがゲーム装置10を両手で把持した様子を示す図である。図4に示すように、ユーザは、各LCD12および14がユーザの方向を向く状態で、両手の掌と中指、薬指および小指とで下側ハウジング20の側面および外側面(内側面の反対側の面)を把持する。このように把持することで、ユーザは、下側ハウジング20を把持したまま、各ボタン24a〜24eに対する操作を親指で行い、ボタン24gおよび24hに対する操作を人差し指で行うことができる。
【0075】
一方、上側ハウジング22には、画像を撮像するための構成(カメラ)、および、撮像した画像を表示するための構成(表示装置)が設けられる。以下、上側ハウジング22に設けられる構成について説明する。
【0076】
図1に示すように、ゲーム装置10は、上側LCD14を有する。上側LCD14は上側ハウジング22に収納される。上側LCD14は横長形状であり、長辺方向が上側ハウジング22の長辺方向に一致するように配置される。上側LCD14は、上側ハウジング22の内側面(ゲーム装置10が閉状態となった場合に内側となる面)に設けられる。したがって、ゲーム装置10を使用しない場合には閉状態としておくことによって、上側LCD14の画面が汚れたり傷ついたりすることを防止することができる。なお、下側LCD12と同様、上側LCD14に代えて、他の任意の方式および任意の解像度の表示装置を利用してもよい。なお、他の実施形態においては、上側LCD14上にもタッチパネルを設けてもよい。
【0077】
また、ゲーム装置10は、2つのカメラ16および18を有する。各カメラ16および18はともに上側ハウジング22に収納される。図1に示されるように、内側カメラ16は、上側ハウジング22の内側面に取り付けられる。一方、図3(B)に示されるように、外側カメラ18は、内側カメラ16が取り付けられる面の反対側の面、すなわち、上側ハウジング22の外側面(ゲーム装置10が閉状態となった場合に外側となる面)に取り付けられる。これによって、内側カメラ16は、上側ハウジング22の内側面が向く方向を撮像することが可能であり、外側カメラ18は、内側カメラ16の撮像方向の逆方向、すなわち、上側ハウジング22の外側面が向く方向を撮像することが可能である。以上のように、この実施例では、2つのカメラ16および18が撮像方向が互いに逆方向となるように設けられる。したがって、ユーザはゲーム装置10を持ち替えることなく、異なる2方向を撮像することができる。例えば、ユーザは、ゲーム装置10からユーザの方を見た景色を内側カメラ16で撮影することができるとともに、ゲーム装置10からユーザの反対側の方向を見た景色を外側カメラ18で撮影することができる。
【0078】
また、内側カメラ16は、上側ハウジング22の下側の中央部に形成される軸部22aの中央に取り付けられる。つまり、内側カメラ16は、2つのハウジング20および22が接続される部分の中央に取り付けられる。したがって、ゲーム装置10を開状態にした場合、内側カメラ16は、2つのLCD12および14の間に配置されることになる(図1参照)。換言すれば、内側カメラ16は、ゲーム装置10の中心付近に配置されることになる。なお、「ゲーム装置10の中心」とは、ゲーム装置10の操作面(開状態における各ハウジング20および22の内側面からなる面)の中心という意味である。なお、内側カメラ16は、LCD12および14の横方向の中心付近に配置されているということもできる。
この実施例では、ゲーム装置10を開状態にした場合に内側カメラ16はゲーム装置10の中心付近に配置されるので、ユーザは、内側カメラ16によってユーザ自身を撮影する場合、ユーザがゲーム装置10に正対する位置でゲーム装置10を把持すればよい。つまり、通常の把持位置でゲーム装置を把持すれば、ユーザは撮像範囲の中心付近に位置することになり、ユーザ自身を撮像範囲内に収めることが容易になる。
【0079】
また、図3(B)に示されるように、外側カメラ18は、ゲーム装置10を開状態とした場合において上側ハウジング22の上部(下側ハウジング20から遠い側の部分)に配置される。なお、外側カメラ18は、ゲーム装置10を把持するユーザを撮影するものではないので、ゲーム装置10の中心に設ける必要性は高くない。
【0080】
また、図1または図3(B)に示されるように、マイク32は、上側ハウジング22に収納されている。具体的には、マイク32は、上側ハウジング22の軸部22aに取り付けられる。この実施例では、マイク32は、内側カメラ16の周囲(図ではy軸の側方)に取り付けられ、より具体的には、内側カメラ16からy軸正方向側の側方に取り付けられる。また、軸部22aにおいては、マイク32がゲーム装置10外部の音を検知することができるように、マイク32に対応する位置(内側カメラ16の側方)にマイクロフォン用孔22cが設けられる。なお、マイク32は下側ハウジング20に収納されてもよい。たとえば、マイクロフォン用孔22cを下側ハウジング20の内側面、具体的には下側ハウジング20の内側面の左下部分(ボタン配置領域A1)に設け、マイク32を、下側ハウジング20内における、マイクロフォン用孔22cの近傍に配置することができる。
【0081】
また、マイク32は、その集音方向(感度が最大となる方向)が内側カメラ16の撮像方向(光軸)と略並行(言い換えれば集音方向および撮像方向がそれぞれz軸と略並行)となる向きに取り付けられる。これによって、内側カメラ16の撮像範囲内で発せられた音声は、マイク32によって好適に捉えられる。すなわち、マイク32による音声入力の検出と内側カメラ16の撮像画像によるユーザの検出とを同時行うことができるとともに、検出の精度を向上させることができる。
【0082】
図3(B)に示されるように、上側ハウジング22の外側面には、第4LED26dが取り付けられる。第4LED26dは、外側カメラ18の周囲(この実施例では、外側カメラ18の右側)に取り付けられる。第4LED26dは、内側カメラ16または外側カメラ18によって撮影が行われた(シャッターボタンが押下された)時点で点灯する。また、内側カメラ16または外側カメラ18によって動画が撮影される間点灯する。第4LED26dによって、ゲーム装置10による撮影が行われた(行われている)ことを撮影対象者に通知することができる。
【0083】
また、上側ハウジング22の内側面はほぼ平面状に形成される。図1に示すように、当該内側面の中央には、上側LCD14を露出させるための開口部22bが形成される。上側ハウジング22の内部に収納される上側LCD14の画面は、開口部22bから露出する。また、上記開口部22bの左右両側には音抜き孔22dがそれぞれ1つずつ形成される。音抜き孔22dの奥の上側ハウジング22内にはスピーカ34が収納されている。音抜き孔22dは、スピーカ34からの音を外部に放出するための孔である。
【0084】
このように、上側ハウジング22の内側面には、中央に設けられる上側LCD14用の開口部22bの左右両側に非画面領域(図1に示す点線領域B1およびB2。具体的には、スピーカ34を配置するための領域;スピーカ配置領域)がそれぞれ設けられる。2つの音抜き孔22dは、左右方向については、各スピーカ配置領域の左右方向における中央部付近に配置され、上下方向については、各スピーカ配置領域の下部領域(下側ハウジング20に近い側の領域)に配置される。
【0085】
なお、上記のように、下側ハウジング20および上側ハウジング22に左右方向に関して同じ位置に非画面領域をそれぞれ設けたことで、ゲーム装置10は、図4に示すような横持ちで把持される場合だけでなく、縦持ち(図4に示す状態からゲーム装置10を左または右回りに90°回転させた状態)で把持される場合にも持ちやすい構成となっている。
【0086】
以上に説明したように、上側ハウジング22には、画像を撮像するための構成であるカメラ16および18、および、撮像された画像を表示するための表示手段である上側LCD14が設けられる。一方、下側ハウジング20には、ゲーム装置10に対する操作入力を行うための入力装置(タッチパネル28および各ボタン24a〜24i)が設けられる。したがって、ゲーム装置10を撮像装置として使用する際には、ユーザは、上側LCD14に表示される撮像画像(カメラによって撮像された画像)を見ながら、下側ハウジング20を把持して入力装置に対する入力を行うことができる。
【0087】
また、上側ハウジング22のカメラ16近傍には、音声を入力するための構成であるマイク32が設けられており、したがってゲーム装置10は、録音装置としても使用可能である。さらに、ユーザがマイク32を通して音声入力を行い、ゲーム装置10はこのマイク入力情報に基づいてゲーム処理やゲーム以外のアプリケーション処理を実行することもできる。
【0088】
図5は、ゲーム装置10の内部構成(電気的構成)を示すブロック図である。図5に示すように、ゲーム装置10は、CPU42、メインメモリ48、メモリ制御回路50、保存用データメモリ52、プリセットデータ用メモリ54、メモリカードインターフェース(メモリカードI/F)44、無線通信モジュール56、ローカル通信モジュール58、リアルタイムクロック(RTC)60、電源回路46、およびインターフェース回路(I/F回路)40等の電子部品を備えている。これらの電子部品は、電子回路基板上に実装されて下側ハウジング20(または上側ハウジング22でもよい)内に収納される。
【0089】
CPU42は、各種のプログラムを実行するための情報処理手段である。ゲーム装置10を撮像装置として利用する場合には、そのためのプログラムがゲーム装置10内のメモリ(例えば保存用データメモリ52)に記憶される。CPU42が当該プログラムを実行することで、ゲーム装置10は撮影装置として機能する。なお、CPU42によって実行されるプログラムは、ゲーム装置10内のメモリに予め記憶されていてもよいし、メモリカード38から取得されてもよいし、他の機器との通信によって他の機器から取得されてもよい。
【0090】
CPU42には、メインメモリ48、メモリ制御回路50、およびプリセットデータ用メモリ54が接続される。また、メモリ制御回路50には保存用データメモリ52が接続される。メインメモリ48は、CPU42のワーク領域やバッファ領域として用いられる記憶手段である。すなわち、メインメモリ48は、ゲーム処理やアプリケーション処理に用いられる各種データを記憶したり、外部(メモリカード38や他の機器等)から取得されるプログラムを記憶したりする。この実施例では、メインメモリ48として例えばPSRAM(Pseudo−SRAM)を用いる。保存用データメモリ52は、CPU42によって実行されるプログラムや各カメラ16および18によって撮像された画像のデータ等を記憶するための記憶手段である。保存用データメモリ52は、例えばNAND型フラッシュメモリで構成される。メモリ制御回路50は、CPU42の指示に従って、保存用データメモリ52に対するデータの読み出しおよび書き込みを制御する回路である。プリセットデータ用メモリ54は、ゲーム装置10において予め設定される各種パラメータ等のデータ(プリセットデータ)を記憶するための記憶手段である。プリセットデータ用メモリ54としては、SPI(Serial Peripheral Interface)バスによってCPU42と接続されるフラッシュメモリを用いることができる。
【0091】
メモリカードI/F44はCPU42に接続される。メモリカードI/F44は、コネクタに装着されたメモリカード38に対するデータの読み出しおよび書き込みをCPU42の指示に従って行う。この実施例では、各カメラ16および18によって撮像された画像データがメモリカード38に書き込まれたり、メモリカード38に記憶された画像データがメモリカード38から読み出されて保存用データメモリ52に記憶されたりする。
【0092】
無線通信モジュール56は、例えばIEEE802.11上の独自プロトコルによって、1台の親機と複数の子機が設定された複数の同種のゲーム装置10間で無線LAN通信を行う機能を有する。また、ローカル通信モジュール58は、所定の通信方式たとえば赤外線方式により同種のゲーム装置との間で無線通信を行う機能を有する。無線通信モジュール56およびローカル通信モジュール58はCPU42に接続される。CPU42は、無線通信モジュール56を用いてインターネットを介して他の機器との間でデータを送受信したり、ローカル通信モジュール58を用いて同種の他のゲーム装置との間でデータを送受信したりすることができる。
【0093】
ローカル通信モジュール58は、ゲーム装置10に内蔵されるようになっているが、ゲーム装置10の本体には内蔵せず、例えばメモリカード38に設け、メモリカードI/F44を介して通信の制御を行うようにしてもよい。
【0094】
また、CPU42には、RTC60および電源回路46が接続される。RTC60は、時間をカウントしてCPU42に出力する。CPU42は、RTC60によって計時された時間に基づいて、現在時刻(日付)を計算したり、画像取り込み等の動作タイミングを検知したりする。電源回路46は、ゲーム装置10が有する電源(電池;下ハウジングに収納される)からの電力を制御し、ゲーム装置10の各部品に電力を供給する。
【0095】
また、ゲーム装置10は、マイク32およびスピーカ34を備えている。マイク32およびスピーカ34はそれぞれI/F回路40に接続される。マイク32は、ユーザの音声を検知して音声信号をI/F回路40に出力する。スピーカ34は、I/F回路40からの音声信号に応じた音声を出力する。I/F回路40はCPU42に接続される。また、タッチパネル28はI/F回路40に接続される。I/F回路40は、マイク32およびスピーカ34の制御を行う音声制御回路と、タッチパネルの制御を行うタッチパネル制御回路とを含む。音声制御回路は、音声信号に対するA/D変換およびD/A変換を行ったり、音声信号を所定の形式の音声データに変換したりする。変換された音声データは、メインメモリ48の音声エリア(図示せず)に書き込まれる。ゲーム装置10を録音装置として利用する場合には、音声エリアに格納された音声データは、後にメモリ制御回路50を介して保存用データメモリ52に書き込まれる(必要に応じてさらに、メモリカードI/F44を介してメモリカード38に記録される)。また、音声エリアに格納された音声データ(マイク入力情報)は、各種のゲーム処理にも利用される。タッチパネル制御回路は、タッチパネル28からの信号に基づいて所定の形式のタッチ位置データを生成してCPU42に出力する。タッチ位置データは、タッチパネル28の入力面のうちで入力が行われた位置の座標を示す。なお、タッチパネル制御回路は、タッチパネル28からの信号の読み込み、および、タッチ位置データの生成を所定時間に1回の割合で行う。CPU42は、タッチ位置データを取得することにより、タッチパネル28に対して入力が行われた位置を知ることができる。
【0096】
操作部24は、上記各ボタン24a〜24iからなり、CPU42に接続される。操作部24からCPU42へは、各ボタン24a〜24iに対する入力状況(押下されたか否か)を示す操作データが出力される。CPU42は、操作部24から操作データを取得することによって、操作部24に対する入力に従った処理を実行する。
【0097】
各カメラ16および18はCPU42に接続される。各カメラ16および18は、CPU42の指示に従って画像を撮像し、撮像した画像データをCPU42に出力する。CPU42は、各カメラ16および18からの画像データをメインメモリ48の画像エリア(図示せず)に書き込む。ゲーム装置10を撮像装置として利用する場合には、画像エリアに格納された画像データは、後にメモリ制御回路50を介して保存用データメモリ52に書き込まれる(必要に応じてさらに、メモリカードI/F44を介してメモリカード38に記録される)。また、画像エリアに格納された画像データは、各種のゲーム処理にも利用される。
【0098】
また、各LCD12および14はCPU42に接続される。各LCD12および14はCPU42の指示に従って画像を表示する。ゲーム装置10を撮像装置として利用する場合、CPU42は、各カメラ16および18のいずれかから取得した画像を上側LCD14に表示させ、所定の処理によって生成した操作画面を下側LCD12に表示させる。ゲーム装置10でゲームをプレイする場合には、LCD12および14の一方または両方にゲーム画像が表示される。
【0099】
以上のように構成されたゲーム装置10は、対戦ゲームを行うとき、同様に構成された他の複数のゲーム装置10と協働してネットワークシステム100を構成する。ネットワークシステム100に参加する3以上のゲーム装置10は、1対1の赤外線通信(図6(a)参照)によるペアリング(後述)を経て、1対多の無線通信(図6(b)参照)へと移行し、2つまたは3つ以上のチームに分かれて対戦ゲームを行う。あるいは、チームに分かれる必要はなく、個人戦で対戦ゲームを行ってもよい。なお、複数のゲーム装置10を互いに区別する必要がある場合、ゲーム装置10(A),10(B),10(C)…のように表記する。場合によっては、親機A,子機B,子機C…のように記し、さらには、それぞれをA,B,C,…のように略記することもある。
【0100】
以下、ネットワークシステム100およびこれに参加する各ゲーム装置10の動作について詳しく説明するが、最初に、概要を説明しておく。図6(a)および図6(b)を参照して、赤外線通信は指向性が強く(高く)到達距離が短いのに対し、無線通信は指向性が弱く(低く)到達距離が長い、という特徴がある。一方、このような特徴さらには通信規格から、赤外線通信は各ゲーム装置10(A),10(B),…を識別する識別情報がなくても行えるのに対し、無線通信はこのような識別情報がなければ行えない、という制約がある。
【0101】
なお、識別情報は、典型的にはMACアドレス,IPアドレスなどであるが、各ゲーム装置10を一意に特定可能な情報であれば、独自の法則に従って定められた情報でもよい。ユーザ名やニックネームなどを識別情報に含めてもよい。
【0102】
そこで、ネットワークシステム100では、1対1の赤外線通信によるペアリングを経て1対多の無線通信へと移行する通信方法を採用している。具体的には、ネットワークシステム100に参加する複数のゲーム装置10は、まず、任意に2台1組のペアを作って、ペア毎に、図6(a)に示すような1対1の赤外線通信を通じて主従を決定すると共に、主従間で識別情報を通知し合う。このようなプロセスが、この実施例でいう“ペアリング”である。
【0103】
また、各ゲーム装置10は、ペアリングの際に相手から通知された識別情報を、自身が保有する識別情報の後に追記する。したがって、ペアリングが終了した時点で、主となったゲーム装置10のメインメモリ48(識別情報(IDリスト)エリア82:図10参照)には、自身の識別情報(たとえばA)の後に、従となったゲーム装置10の識別情報(たとえばB,C…)が記憶されている。従となったゲーム装置10もまた、自身の識別情報の後に、主となったゲーム装置10の識別情報を保有している。
【0104】
次に、主となったゲーム装置10同士で再びペアを作って、同様に主従を決定し、主従間で識別情報を交換し合う。このとき、それぞれのゲーム装置10は、自身の識別情報の後に追記された他の識別情報も交換し合う。このようなプロセスを、主が1台になるまで繰り返し、この最後に残ったゲーム装置10を親機に、これ以外を子機に決定する。要するに、複数のゲーム装置10の間で、トーナメント式によるペアリングを行って、1台の親機を決定するのであるが、この過程で、各子機の識別情報が親機に集約されていく。したがって、トーナメントを経て親機となったゲーム装置10は、全てのゲーム装置10に関する識別情報(A,B,C…)を保有する結果となる。
【0105】
なお、この実施例では、ペアリングの際に主従間で互いに識別情報を通知し合っているが、主から従への通知は必ずしも行わなくてよい。少なくとも従から主に識別情報を通知すれば、全ての識別情報が親機に集約されるからである。この場合、主従の決定とは、集約側かそうでないか(相手から識別情報の通知を受ける側か、相手に識別情報を通知する側か)を決定することである、と定義することもできる。
【0106】
なお、ネットワークシステム100への参加台数は、上述のようなトーナメントの性質上、たとえば4台(図8(a)参照),8台(図18(a)参照)など、2のべき乗に等しい台数が好ましい。ただし、たとえば5台(図17(a)参照)など、2のべき乗以外の台数でもかまわない。5台参加の場合、そのうち1台は2回目から参加すればよい(シード制)。
【0107】
また、シード制は、参加台数によらず導入されてよい。図示は省略するが、4台(A〜D)参加の場合にシード制を導入したとすると、たとえば、まずAおよびBがペアリングを行い(1回目)、ここで主となった方たとえばAが次にCとペアリングを行い(2回目)、そしてここで主となった方たとえばCが次にDとペアリングを行う(3回目)。この場合に実行されるペアリングの回数は3回で、シード制を導入しないとき(図8(a)参照)と同じ回数であるが、最終的に親機となるゲーム装置10にとっては、シード制では最大3回ペアリングを行うのに対し、シード制を導入しないときは2回のペアリングで済む。
【0108】
一般には、どのようなトーナメント表によっても、参加台数がN台であれば、親機が決まるまでに(N−1)回のペアリングが行われる。
【0109】
なお、他の実施例では、総当り式で識別情報を交換し合ってもよい。総当り式の場合、参加台数がN台のとき、全ゲーム装置10の間で識別情報を通知し合うのに必要なペアリング回数は NC2=N・(N−1)/(2・1)となる。したがって、N≧3であれば、総当り式よりもトーナメント式の方が、少ないペアリング回数で無線通信に移行できることがわかる。
【0110】
次に、親機となったゲーム装置10は、図6(b)に示すような1対多の無線通信を通じ、自身が保有する識別情報(A,B,C…)を含んだ信号(いわゆるビーコン)をブロードキャストする。子機となった各ゲーム装置10は、こうしてブロードキャストされる信号を受信する(自身の識別情報を含んだビーコンを検出する)ことで、全てのゲーム装置10に関する識別情報(A,B,C…)を親機から入手することができる。
【0111】
なお、親機(唯一の主)となった通信端末10は、全ての通信端末の識別情報を記憶している一方、従となった通信端末は少なくとも自身の識別情報を記憶しているのだから、信号の送受信には、宛先を指定しないブロードキャスト方式に限らず、複数の宛先を指定するマルチキャスト方式を用いてもよく、または、単一の宛先を指定するユニキャスト方式で個別的に行うことも可能である。
【0112】
また、こうして親機に集約された識別情報(図8(b),図17(b)参照)は、親機となるゲーム装置10がトーナメントを勝ち進む過程でペアリング相手から取得した識別情報を自身の識別情報の後に順番に追記して得られたものなので、各ゲーム装置10の識別情報がどのような順序で記憶されているかで、トーナメントで行われたペアリングの履歴がわかる。そこで、親機となったゲーム装置10は、保有する識別情報の記憶順序に基づいて、ペアリングを反映したチーム分けを行う(図8(c),図17(c)参照)。なお、これにより得られたチーム情報は、たとえば識別情報と一緒にビーコンに含めて送信することで、各子機に通知される。親機および各子機では、チーム情報に基づいてゲーム処理たとえば得点の集計などを行う。
【0113】
なお、上記のような追記式に代えて、識別情報の記憶順序を示す情報たとえば時刻情報やペアリング回数情報などを別途作成して、この時刻情報またはペアリング回数情報を識別情報と共に記憶する方式を用いることもできる。この場合、識別情報はランダムな位置に記憶してよい。
【0114】
また、チーム情報は、識別情報とは別に(ビーコンには含めず)適宜なタイミングで送信してもよい。または、子機には通知せず、親機だけで利用してもよい。
【0115】
次に、具体的な動作例を説明する。まず、4(=22 )台参加の場合(シードなし)について、図7〜図9により説明する。図7には通信シーケンスの一例が、図8にはトーナメント式によるペアリング,IDリストの変遷およびチーム分けの一例が、そして図9にはトーナメントの進行につれて更新される画面表示の一例が、それぞれ4台参加の場合について示されている。
【0116】
前述のように、ペアリング相手は、ユーザ側で任意に決めることが可能であり、最初、各ゲーム装置10(A〜D)の下側LCD12には、図9(a)に示すような画面が表示される。なお、上側LCD14には、たとえば赤外線のイメージを伝える画像(図示せず)や、2台が互いに接近して赤外線通信を行っている場面(図6(a)参照)を示す画像などが表示される。
【0117】
ここでは、2台のゲーム装置10(A)および10(B)が互いに向かい合うことでペアを組み、他の2台のゲーム装置10(C)および10(D)が別のペアを組んだとする。それぞれペアが決まると、赤外線による通信が開始され、一方が他方に接続要求を行う。なお、双方が接続要求を行った場合には、先に行われた方が優先され、同時であればどちらか一方が選択される。
【0118】
図7を参照して、AおよびBのペアでは、ゲーム装置10(B)が接続要求を送信し、これを受信したゲーム装置10(A)は応答を送信する。ゲーム装置10(B)は、ゲーム装置10(A)から応答を受信した時点で従となって、ACK(ACKnowledgement)を送信する。ゲーム装置10(A)は、ゲーム装置10(B)からACKを受信した時点で主となって、自身が保有している識別情報(この時点ではA自身の識別情報のみ)を送信する。
【0119】
ゲーム装置10(B)は、こうしてゲーム装置10(A)から送信された識別情報を受信し、自身が保有している識別情報(この時点ではB自身の識別情報のみ)の後にこの受信した識別情報を追記し、そしてACKを送信する。ACKを受信したゲーム装置10(A)は、識別情報要求を送信し、これを受信したゲーム装置10(B)は、自身が保有している識別情報(この時点ではBおよびAの識別情報)を送信する。なお、こうして識別情報を送信する際、相手(A)から受信した識別情報は除外してもよい(以下同様)。
【0120】
ゲーム装置10(A)は、こうしてゲーム装置10(B)から送信された識別情報を受信し、自身が保有している識別情報(この時点ではA自身の識別情報のみ)の後にこれを追記する。しかし、受信前に既にゲーム装置10(A)が保有していた識別情報がある場合は、そのような識別情報(この時点ではA自身の識別情報は受信前から保有している)を追記しないようにしてもよい。以上で、AおよびBのペアリングが成立する。CおよびDのペアでも、上記と同様の通信が行われ、たとえばCが主、Dが従となって、互いに識別情報を通知し合う。
【0121】
こうして(A,B)および(C,D)のペアリングが成立すると、図8(a)に示すトーナメント表において1回目が終了したことになり、そこで主となったAおよびCは、2回目のペアリングに進む。すなわち、ペアリングが成立した時点で、主となったAおよびCの画面は図9(b)のように更新され、この画面の案内に従ってAおよびCが互いに接近して向かい合う。すると、AおよびCの間で上記と同様の赤外線通信が行われ、たとえばAが主、Cが従となって、互いに識別情報を通知し合う。一方、1回目のペアリングで従となったBおよびDの画面は図9(c)のように更新されており、BおよびDはこの画面の案内に従って待機する。
【0122】
こうして(A,C)のペアリングが成立すると、図8(a)に示すトーナメント表において2回目が終了したことになる。この時点で、唯一の主であるAが親機となり、従であるB〜Dはそれぞれ子機となる。ここで、従となったCの画面は、BやDと同様、図9(c)のように更新される。また、唯一主となったAの画面も、図9(c)のように更新される。
【0123】
また、このようなトーナメントの進行に連れて、A〜Dの保有する識別情報(IDリスト)は、図8(b)に示すように変遷する。すなわち、A〜DのIDリストには、初期状態では自身の識別情報つまり“A”,“B”,“C”,“D”しか記憶されていないが、1回目の後には、自身の識別情報に後にペアリング相手の識別情報が追記される結果、それぞれ“A,B”,“B,A”,“C,D”,“D,C”のように変化する。2回目の後には、A,CのIDリストがさらに“A,B,C,D”,“C,D,A,B”のように変化する。なお、従から主への識別情報の通知しか行わない場合には、BおよびDのIDリストは初期状態のまま変化せず、CのIDリストは1回目の後の状態つまり“C,D”が維持される。
【0124】
なお、図8(b)や図17(b),図18(a)で、各子機に番号1,2,…を付しているが、この番号は、親機のIDリストにおける記載順位(時系列)を示しており、後のゲーム処理でたとえば優先度情報として利用可能である。
【0125】
そして、親機であるAのIDリストつまり“A,B,C,D”から、図8(c)に示すようなチーム情報つまり“(A,B)/(C,D)”が作成される。このチーム情報は、“A,B,C,D”を前半および後半に2等分して得られるものであり、トーナメントの1回目でのペアリングに対応する。
【0126】
図7に戻って、次に、親機となったAは、自身が保有するIDリストつまり“A,B,C,D”とチーム情報“(A,B)/(C,D)”とをビーコンに含めてブロードキャストする。子機となったB〜Dは、こうして親機からブロードキャストされる、自身の識別情報を含んだビーコンを検出することによって、A〜D間で1対多の無線通信を通して対戦ゲームを行うのに必要な識別情報およびチーム情報を入手することができる。B〜Dが保有していたIDリストは、Aから受信したIDリストで上書きされる。この時点で、A〜Dの画面は、図9(d)のような画面に更新される。
【0127】
なお、図9(d)の画面で、さらにA〜Dの識別情報やチーム情報を表示してもよい。ここで表示する識別情報は、ユーザ名,ニックネームなどが好ましい。また、上側LCD14には、無線通信のイメージを伝える画像(図示せず)や、4台が互いに離れて無線通信を行っている場面(図6(b)参照)を示す画像などが表示される。
【0128】
ビーコンを受信したB〜Dからは、Aに向けて応答が送信される。(A,B)のチーム対(C,D)のチームで戦う対戦ゲームは、AがB〜Dから応答を受信した後に開始される。対戦ゲームでは、スコアは、チーム情報に基づいてチーム毎に集計され、スコアによって優勝チームないしチーム順位が決められる。
【0129】
以上のような動作は、各ゲーム装置10のCPU42が、メインメモリ48に記憶された図10に示すようなプログラムおよびデータに基づいて、図11〜図16に示すようなフローに従う処理を実行することによって実現される。すなわち、この実施例の対戦ゲームを行うとき、図10に示すように、メインメモリ48には、プログラムエリア48aおよびデータエリア48bが形成され、プログラムエリア48aにゲームプログラム70,入出力制御プログラム72,赤外線通信制御プログラム74および無線通信制御プログラム76などが格納される。
【0130】
ゲームプログラム70は、CPU42を介して各種ハードウェア(12〜40,44〜60)を制御して対戦ゲームを実現するメインのソフトウェアプログラムであり、その一部(赤外線によるペアリングを経て無線通信を確立するまでの部分)が図11〜図16のフローに対応している。なお、ゲームプログラム70には、ゲームの種類(タイトル,バージョンなど)を示すゲームIDが添付されている。
【0131】
入出力制御プログラム72は、ゲームプログラム70によって利用されるサブのソフトウェアプログラムであり、主として下側LCD12,操作部24,I/F回路40などを制御して画像出力,ボタン入力,タッチ入力などを実現する。赤外線通信制御プログラム74は、ゲームプログラム70によって利用されるサブプログラムであり、主としてローカル(赤外線)通信モジュール58を制御して他のゲーム装置10との赤外線通信を実現する。無線通信制御プログラム76は、ゲームプログラム70によって利用されるサブプログラムであり、主として無線通信モジュール56を制御して他のゲーム装置10との無線通信を実現する。
【0132】
データエリア48bは、パラメータエリア78,変数エリア80,識別情報(IDリスト)エリア82,チーム情報エリア84および描画データエリア86などを含む。パラメータエリア78には、参加人数(4人),最大リトライ回数(5回)といった、ゲームプログラム70によって参照されるパラメータが記憶される。なお、パラメータの値は、図示しないメニュー選択画面などを通じて適宜変更することができる。変数エリア80には、ペアリング回数,リトライ回数,主従フラグといった、ゲームプログラム70によって制御される変数が記憶される。
【0133】
識別情報(IDリスト)エリア82には、初期状態では自身の識別情報たとえば“A”が記憶されており、赤外線によるペアリングの度に相手の識別情報が順番に追記されていき、そして無線通信が確立した時点で全てのゲーム装置10の識別情報たとえば“A,B,C,D”が記憶される。チーム情報エリア82には、このような識別情報から作成されたチーム情報たとえば“(A,B)/(C,D)”が記憶される。描画データエリア86には、たとえば図9(a)〜図9(d)に示すような画面を描画するためのデータが記憶される。
【0134】
いま、下側LCD12には図示しないメニュー選択画面が表示されており、選択肢の1つである“対戦”がタッチパネル28で選択されると、CPU42は、図11〜図16のフローに従う処理を開始する。CPU42は、最初、図11のステップS1で、下側LCD12の画面を図9(a)のように更新する。図9(a)の画面には、“4人で対戦します…ペアを組む相手に赤外線を向けてください”といった案内が含まれている。そして、ステップS2で、変数エリア80に記憶されている変数の1つであるペアリング回数をリセットし(ペアリング回数=0)、ステップS3では、同じく変数の1つであるリトライ回数をリセットする(リトライ回数=0)。
【0135】
次に、CPU42は、ステップS5に進み、赤外線で接続要求を送信する。この接続要求の送信は、ユーザの指示に基づいて行われてもよいし、ユーザの指示によらずに自動的に行われてもよい。なお、赤外線で送信される信号(たとえば接続要求,応答,ACKなど:図7参照)は、不特定の相手に対するものであり、相手の識別情報(宛先)がなくても送信できる。次のステップS7では、赤外線で信号を受信したか否かを判別し、ここでNOであれば、ステップS9に移って、未受信状態(ステップS7の判別結果がNOの状態)が所定時間(たとえば10秒)以上継続したか否かをさらに判別する。ここでもNOであればステップS7に戻る。ステップS7でYESであれば、ステップS15およびS17を通じて信号の種類を判別し、判別結果に応じた処理(後述)を実行する。
【0136】
ステップS9でYESであれば、ステップS11に進んで、リトライ回数が所定回数(具体的には、パラメータエリア78に記憶されたパラメータの1つである最大リトライ回数:ここでは5回)に到達したか否かを判別する。ステップS11でYESであれば処理を終了し、NOであれば、ランダムに決定された時間だけステップS13で待機した後、ステップS5に戻る。この間、つまりステップS13で待機中に、リトライ回数がインクリメントされる。
【0137】
したがって、このゲーム装置10(A)と相手のゲーム装置10(B)との位置関係が適切でない(距離が離れ過ぎていたり、相手が存在していなかったり、赤外線の向きが大きくずれていたりする)と、赤外線による接続は確立されず、ランダムな時間間隔でリトライが実行される。リトライ回数が5回に達しても接続が確立されなければ、処理は終了される。このとき、接続を確立できなかったことを示すエラー表示などを画面に表示するようにしてもよい。この場合、改めてメニュー選択画面で“対戦”を選択することで、処理は再スタートすることになる。
【0138】
なお、ステップS13での待機時間は、たとえばCPU42が乱数などを利用してその都度決定する。または、リトライ回数が0の場合は5秒、リトライ回数が1の場合は4秒といったように、リトライ回数に応じた待機時間を予め決めておいてもよい。
【0139】
図12のステップS15では、受信した信号は接続要求であるか否かを判別し、ここでYESであれば、主としての処理であるステップS19〜S57を経てゲーム処理に移行もしくは処理を終了する。ステップS15でNOであれば、ステップS17に移って、受信した信号は応答であるか否かを判別し、ここでYESであれば、従としての処理であるステップS59〜S89を経てゲーム処理に移行もしくは処理を終了する。ステップS17でもNOであれば、ステップS11に戻る。したがって、受信した信号が接続要求でも応答でもない場合、これを受信しなかったものと見なし、リトライ回数のチェックおよびインクリメントを経てリトライを行うことになる。
【0140】
主としての処理は、詳しくは次のように実行される。すなわち、ステップS15でYESと判定された後、最初のステップS19で、受信した信号つまり接続要求に対して赤外線で応答を送信し、次のステップS21では、赤外線でACKを受信したか否かを判別する。ステップS21でNOであれば、ステップS23に移って、未受信状態(ステップS21の判別結果がNOの状態)が所定時間(たとえば10秒)以上継続したか否かをさらに判別し、ここでもNOであればステップS21に戻る。ステップS23でYESであれば、ステップS11に戻る。したがって、送信した応答に対してACKがない場合も、リトライ回数のチェックおよびインクリメントを経てリトライを行うことになる。
【0141】
ステップS21でYESであれば、ステップS25で、変数の1つである主従フラグを制御することで自身を主とし、その後、図13のステップS27に進んで、自身が保有している全ての識別情報つまり識別情報(IDリスト)エリア82の内容を示す信号を赤外線で送信する。
【0142】
なお、ステップS25の後、ステップS27に進む前に、ステップS26aおよびステップS26bを実行するようにしてもよい。これについては、後で説明する。
【0143】
次のステップS29では、赤外線でACKを受信したか否かを判別し、ここでNOであれば、ステップS31に移って、未受信状態(ステップS29の判別結果がNOの状態)が所定時間(たとえば10秒)以上継続したか否かをさらに判別し、ここでもNOであればステップS29に戻る。ステップS31でYESであれば、ステップS11に戻る。したがって、送信した識別情報に対してACKがない場合も、リトライ回数のチェックおよびインクリメントを経てリトライを行うことになる。
【0144】
ステップS29でYESであれば、ステップS33に進み、赤外線で識別情報要求を送信する。次のステップS35では、赤外線で識別情報を受信したか否かを判別し、ここでNOであれば、ステップS37に移って、未受信状態(ステップS35の判別結果がNOの状態)が所定時間(たとえば10秒)以上継続したか否かをさらに判別し、ここでもNOであればステップS35に戻る。ステップS37でYESであれば、ステップS11に戻る。したがって、識別情報要求に応じて識別情報が送られてこない場合も、リトライ回数のチェックおよびインクリメントを経てリトライを行うことになる。
【0145】
ステップS35でYESであれば、ステップS39に進み、自身が保有している識別情報の後に、受信した識別情報を順番に追記する。なお、自らが相手に送った識別情報も含まれた状態で送られてきた場合は、追記の際に、重複を取り除く処理が必要となる。あるいは、そのような状況のときは、追記という形をとらずに、受信した識別情報を上書きするようにしてもよい。ただし、上書きを行う場合には、通信相手である、従となるゲーム装置10が保有している識別情報の順番になってしまうため、識別情報の順番に応じてチーム分けを行う方法は、有効に行われないことがある。
【0146】
そして、ステップS40でペアリング回数をインクリメントした後、図14のステップS41に進み、ペアリング回数が所定回数(ここでは参加台数が4台ななので2回)に達したか否かを判別する。なお、この判別は、参加台数(ここでは4台)分の識別情報が集約されたか否かを判別することと同等であり、この場合、具体的には、識別情報(IDリスト)エリア82に何台分の識別情報が記憶されているかを検出して、この検出した台数が参加台数つまり4台に達していればYESと判別し、3台以下であればNOと判別すればよい。ステップS41でNOであれば、ステップS43に移って、下側LCD12の画面を図9(b)のように更新する。図9(b)の画面には、“リーダになりました…相手ペアのリーダに赤外線を向けてください” といった案内が含まれている。その後、ステップS3に戻って、同様の処理を繰り返す。つまり、リトライ回数をリセットした後、次の相手とのペアリングを行う。
【0147】
なお、図14のステップS41では、ペアリング回数が所定回数に達したとき、もしくは検出台数が参加台数に達したとき、識別情報が集約されたと判断しているが、自身が主となった回数をカウントして、その結果が所定回数に達した場合に自身が唯一の主となった(ひいては識別情報が集約された)と判断することも可能である。あるいは、タッチパネル28などを介して所定操作が行われたとき、自身が唯一の主となったとみなしてもよい。
【0148】
ステップS41でYESであれば、ステップS45に進んで、識別情報(IDリスト)エリア82に記憶されている4台分の識別情報(IDリスト)に基づいて、対戦ゲームのためのチーム分けを行う。フローチャートによる説明は省略するが、このサブルーチンでは、たとえば図8(c)に示されるように、IDリスト“A,B,C,D”を2等分する処理が行われ、これによって、図8(a)に示されるトーナメントでのペアリングを反映したチーム情報“(A,B)/(C,D)”が得られる。なお、参加台数によって、あるいはペアリングの手順によって、たとえば図17(c)に示されるように不均等に分けたり、あるいは図18(b)に示されるように3以上に等分したりしてもよい。
【0149】
CPU42はその後、ステップS47で、ローカル通信モジュール58を停止する一方、無線通信モジュール56を起動することによって、通信方式を赤外線から無線に切り換える。次のステップS49では、識別情報(IDリスト)エリア82に記憶されている全ての識別情報つまり参加台数分の識別情報(たとえば“A,B,C,D”)とチーム情報エリア84に記憶されているチーム情報(たとえば“(A,B)/(C,D)”)とを含む信号(ビーコン)を無線でブロードキャストし、このビーコンに対する従からの応答を待つ。そしてステップS51で、全ての従(たとえばB,C,D)から無線で所定時間(たとえば10秒)内に応答を受信したか否かを判別する。
【0150】
ブロードキャストから所定時間が経過しても無線で応答しない従が1つでもあれば、ステップS51でNOと判別し、ステップS53でエラー処理を実行した後、処理を終了する。このエラー処理には、たとえばエラーが発生した旨のメッセージの表示、ブロードキャストの再実行といった処理が含まれる。また、所定時間を経過したときに全ての従から応答がなかった場合でも、応答した従が1つでも存在すれば、応答した従とのみ後述のステップ55によるデータ通信を開始するようにしてもよい。その場合は、チーム情報を変更しなければならないので、主は応答した従のみをチーム分けして、確立した無線通信によって新たなチーム情報を再送すればよい。
【0151】
所定時間が経過する前に全ての従から無線で応答があれば、ステップS51からステップS55に進み、親機として各子機(たとえばB,C,D)と無線でデータ通信を開始し、以降、親機Aを中心に4台(A〜D)で協働してゲーム処理を実行することになる。そして、ステップS57(後述)に進む。
【0152】
一方、従としての処理は、詳しくは次のように実行される。すなわち、図12において、ステップS17でYESと判定された後、最初のステップS59で、受信した信号つまり応答に対するACKを赤外線で送信し、次のステップS61では、主従フラグを制御することで自身を従とする。そして図15のステップS63に進み、赤外線で識別情報を受信したか否かを判別し、ここでNOであれば、ステップS65に移って、未受信状態(ステップS63の判別結果がNOの状態)が所定時間(たとえば10秒)以上継続したか否かをさらに判別し、ここでもNOであればステップS63に戻る。ステップS65でYESであれば、ステップS11に戻る。したがって、ACKを送信しても識別情報が送られてこない場合も、リトライ回数のチェックおよびインクリメントを経てリトライを行うことになる。
【0153】
なお、ステップS61の後、ステップS63に進む前に、ステップS62aおよびステップS62bを実行するようにしてもよい。これについては、後で説明する。
【0154】
ステップS63でYESであれば、ステップS67に進み、自身が保有している識別情報の後に、受信した識別情報を順番に追記する。次のステップS69では、赤外線でACKを送信し、その次のステップS71では、赤外線で識別情報を受信したか否かを判別する。ここでNOであれば、ステップS73に移って、未受信状態(ステップS71の判別結果がNOの状態)が所定時間(たとえば10秒)以上継続したか否かをさらに判別し、ここでもNOであればステップS71に戻る。ステップS73でYESであれば、ステップS11に戻る。したがって、ACKを送信しても識別情報要求が送られてこない場合も、リトライ回数のチェックおよびインクリメントを経てリトライを行うことになる。
【0155】
ステップS71でYESであれば、ステップS75に進み、自身が保有している全ての識別情報つまり識別情報(IDリスト)エリア82の内容を示す信号を赤外線で送信する。ここでは、ステップS63で相手から受信した識別情報は含めないようにしてもよい。次のステップS77では、下側LCD12の画面を図9(c)のように更新する。図9(c)の画面には、“しばらくお待ちください…” といった案内が含まれている。そしてステップS79で、ローカル通信モジュール58を停止する一方、無線通信モジュール56を起動することによって、通信方式を赤外線から無線に切り換える。
【0156】
次に、図16のステップS80に進み、無線で信号(ビーコン)を受信したか否かを判別する。ここでNOであれば、ステップS83に移って、未受信状態(ステップS80の判別結果がNOの状態)が所定時間(たとえば10秒)以上継続したか否かをさらに判別し、ここでもNOであればステップS80に戻る。ステップS80でYESであれば、ステップS81に進んで当該信号が自身の識別情報を含むか否かをさらに判別し、ステップS81でNOであれば、当該信号を受信しなかったものとみなしてステップS83に移る。
【0157】
ステップS83でYESであれば、ステップS89でエラー処理を実行した後、処理を終了する。このエラー処理には、たとえばエラーが発生した旨のメッセージの表示といった処理が含まれる。所定時間が経過する前に自身の識別情報を含むビーコンが検出されると、ステップS81からステップS85に進み、ビーコンに含まれる主の識別情報に基づいて、無線で応答を送信する。そして、ステップS87で、子機として親機と無線でデータ通信を開始し、以降、親機Aを中心に4台(A〜D)で協働してゲーム処理を実行することになる。
【0158】
このステップS87または上述のステップS55に続くステップS57では、下側LCD12の画面を図9(e)のように更新する。図9(e)の画面には、“対戦を開始します…友達から離れてかまいません” といった案内が含まれている。CPU42の処理はその後、図示しないゲーム処理へと移行する。
【0159】
なお、この動作例では、主従が決定される(S25&S61:図12参照)と直ちに赤外線で識別情報の送受信を開始している(S27&S63:図13,図15参照)が、主従間でゲームID(図10参照)が一致しているか確認してからこれを開始してもよい。具体的には、ステップS25&S61で主従を決定した後に、ステップS26a&S62aでゲームIDを主従間で交換し合い、両者が一致するか否かをステップS26b&S62bで判別する。そして、互いのゲームIDが一致する場合に、ステップS27&S63に進んで識別情報の送受信を開始し、一致しない場合には、ステップS26cのエラー処理を経て処理を終了する。このエラー処理には、互いのゲームIDが一致しない旨を通知する処理などが含まれる。こうして、赤外線による接続が確立した直後に、互いのゲームIDを確認することで、対戦ゲームの種類,バージョン等が異なる場合には、その不一致をできるだけ早いタイミングでユーザに知らせることができる。
【0160】
次に、参加台数が2のべき乗とは異なる場合の一例について、図17により説明する。図17には、トーナメント式によるペアリング,IDリストの変遷およびチーム分けの一例が、5台参加の場合について示されている。なお、通信シーケンスは、図7に示した4台参加時の通信シーケンスと基本的に同様(1対1の赤外線通信が1セット増えるだけ)なので、図示および詳しい説明を省略する。フローチャートも、図11〜図16と同様なので省略する。
【0161】
ここでは、AおよびBがペアを組み、CおよびDが別のペアを組んだとする。Eは、この時点つまり1回目の段階では相手がいない。AおよびBのペアで赤外線通信が行われ、たとえばAが主となって、互いに識別情報を通知し合う。CおよびDのペアでも赤外線通信が行われ、たとえばCが主となって、互いに識別情報を通知し合う。こうして(A,B)および(C,D)のペアリングが成立すると、図17(a)に示すトーナメント表において1回目が終了したことになる。この時点で、A〜EのIDリストは、図17(b)の2段目に1回目の後として示したような状態となる。
【0162】
次に、1回目でシードされたEが、CおよびDのペアで主となった方つまりCとまた別のペアを組む。このCおよびEのペアで赤外線通信が行われ、たとえばEが主となって、互いに識別情報を通知し合う。こうして(C,E)のペアリングが成立すると、図17(a)に示すトーナメント表において2回目が終了したことになる。この時点で、A〜EのIDリストは、図17(b)の3段目に2回目の後として示したような状態となる。
【0163】
次に、CおよびEのペアで主となった方つまりEが、AおよびBのペアで主となった方つまりAとさらにまた別のペアを組む。このAおよびEのペアで赤外線通信が行われ、たとえばEが主となって、互いに識別情報を通知し合う。こうして(A,E)のペアリングが成立すると、図17(a)に示すトーナメント表において3回目が終了したことになる。この時点で、A〜EのIDリストは、図17(b)の4段目に3回目の後として示したような状態となる。そして、唯一の主であるEが親機となり、従であるA〜Dはいずれも子機となる。
【0164】
次に、親機であるEのIDリストつまり“E,C,D,A,B”から、図17(c)に示すようなチーム情報つまり“(E,C,D)/(A,B)”が作成される。このチーム情報は、“E,C,D,A,B”を前半および後半に3:2で区分して得られるものであり、トーナメントの1,2回目でのペアリングに対応する。
【0165】
次に、参加台数が2のべき乗である場合の他の一例について、図18により説明する。図18には、トーナメント式によるペアリングおよびチーム分けの一例が、8(=23 )台参加の場合について示されている。なお、通信シーケンスは、図7に示した4台参加時の通信シーケンスと基本的に同様(1対1の赤外線通信が4セット増えるだけ)なので、図示および詳しい説明を省略する。フローチャートも、図11〜図16と同様なので省略する。
【0166】
図18(a)のトーナメントでは、1回目で(A,B),(C,D),(E,F)および(G,H)のペアリングが成立し、2回目で(A,C)および(F,G)のペアリングが成立し、そして3回目で(A,G)のペアリングが成立している。3回目が終了した時点で、唯一の主であるAが親機となり、従であるB〜Hはいずれも子機となる。
【0167】
このような経過から、図18(b)に示すように、親機であるAのIDリストは、“A,B,C,D,G,H,F,E”となり、これを2等分することで、チーム情報として“(A,B,C,D)/(G,H,F,E)”が得られる。これは、トーナメントの1,2回目でのペアリングに対応する。
【0168】
なお、4チームに分かれて対戦する場合には、このIDリストを4等分することで“(A,B)/(C,D)/(G,H)/(F,E)”が得られる。これは、トーナメントの1回目でのペアリングに対応する。
【0169】
なお、上記の各動作例では、参加台数を4,5または8に固定したが、いくつかの選択肢(たとえば2台,4台および8台)の中からユーザが任意に選択できるようにしてもよい。さらには、所定の範囲内(たとえば2台〜8台)でユーザが任意の台数(たとえば5台)を指定できるようにしてもよい。
【0170】
以上から明らかなように、この実施例では、ネットワークシステム100は、各々が少なくとも自身の識別情報(A,B,C…)を記憶している3以上のゲーム装置10(A),10(B),10(C)…からなる。各ゲーム装置10(たとえばA)は、無線通信モジュール56およびローカル通信モジュール58を備えており、自身と自身以外の複数のゲーム装置10(B),10(C)…との間で、各々の識別情報(A,B,C…)を参照して無線通信モジュール56により1対多の無線通信を行うことができる。また、自身と自身以外の各ゲーム装置10(B),10(C)…との間で、各々の識別情報(A,B,C,…)を参照することなくローカル通信モジュール58により1対1の通信を行うこともできる。
【0171】
ゲーム装置10(A)は、自身(10(A))の識別情報(A)を記憶しているものの、自身(10(A))以外のゲーム装置10(B),10(C)…の識別情報(A,B,C…)を記憶しているとは限らないので、無線通信モジュール56による無線通信を行う場合、CPU42は、まず、ローカル通信モジュール58を介して自身(10(A))と自身以外のいずれか1つのゲーム装置10(たとえばB)との間で主従を決定して従側に記憶されている識別情報を主側に集約するペアリング処理を実行し、そしてこのペアリング処理で自身が主となった場合には別の1つのゲーム装置10(たとえばC)との間で次なるペアリング処理を実行する一方、自身が従となった場合には待機する(S1〜S43,S59〜S77)。次に、一連のペアリング処理の結果として、自身(10(A))が唯一の主となった場合には自身(10(A))を含む全てのゲーム装置10(A),10(B),10(C)…の識別情報(A,B,C…)を含む信号(たとえばビーコン)を無線通信モジュール56を介して送信する一方、自身(10(A))が従となった場合には唯一の主から送信される信号を無線通信モジュール56を介して受信する(S49〜S53,S80〜S89)。したがって、一連のペアリングを経て唯一の主となったゲーム装置10(A)つまり親機Aに全てのゲーム装置10(A),10(B),10(C)…の識別情報(A,B,C…)が集約される結果となり、一連のペアリングの過程で従となった各ゲーム装置10(B),10(C)…つまり各子機B,C,…は親機Aからこの識別情報(A,B,C…)の配信を受けることができる。
【0172】
これにより、3以上のゲーム装置10(A),10(B),10(C)…の間で、各々が自身の識別情報しか記憶していなくても、ローカル通信モジュール58によるペアリングを経て無線通信モジュール56による1対多の無線通信へと移行し、対戦ゲーム処理を行うことができる。また、今回のペアリングで主となったゲーム装置10だけが次回のペアリングに進むトーナメント方式を採用したので、各通信端末10が自身以外の全ての通信端末10とペアリングする総当り方式と比べ、ペアリング処理の回数を少なくできるので、ローカル通信(赤外線通信)から無線通信への移行をスムーズにかつ効率的に行うことができる。
【0173】
また、ゲーム装置10(A)では、自身(10(A))の識別情報(A)はメインメモリ48の識別情報エリア82に記憶されており、CPU42は、一連のペアリング処理で相手から通知された識別情報(B,C…)を順番に識別情報エリア82に追記することによって集約する(S39)。そして、自身(10(A))が唯一の主となった場合には、識別情報エリア82に記憶されている識別情報の順番に基づいて各ゲーム装置10(A),10(B)…をチーム分けし(S45)、その結果(チーム情報)を利用して対戦ゲーム処理を実行する。これにより、トーナメントでのペアリングを反映したチーム分けが可能となる。
【0174】
なお、この実施例では、トーナメントを通じて集約された識別情報(IDリスト)からチーム情報を作成したが、チーム情報に代えて、またはこれに加えて、優先度情報を作成してもよい。たとえば、図8(c)の例では、IDリスト“A,B,C,D”の記載順位をそのまま優先順位情報として利用することができる。あるいは、IDリストの1番目および3番目に高い優先度を、2番目および4番目に低い優先度を割り当てれば、前者はトーナメント方式の2回目まで進出したAおよびCを、後者は1回目のペアリングで従となってしまったBおよびDを示す。このような優先度情報もまた、トーナメントでのペアリングを反映しており、対戦ゲームにおいて利用されうる。例えば、優先度が高い端末は特定のアイテムを使用できるようにするなどの利用が可能である。
【0175】
また、この実施例では、ペアリングのためのデータ通信に赤外線方式を用いたが、指向性が強く、かつ/または、到達距離が短いものであれば、たとえば非接触ICカードに利用される方式など、他の無線通信方式を用いてもよい。換言すれば、通信可能範囲が狭く、不特定多数の相手が通信可能範囲内に入ることなく所望の相手だけを容易に通信可能範囲内に導入できるような方式であれば、上述のようなペアリングが行える。さらには、複数の参加者のうち所望の相手とだけ通信が行えればよいのだから、ワイヤレスである必要もなく、ペアを組む2台のゲーム装置10をケーブルで接続する方式つまり1対1の有線接続方式を用いることも可能である。
【0176】
さらに、この実施例では、主従の決定方法として、接続応答を受信した側が従、接続応答に対するACKを受信した側が主となるようにしているが、この方法に限られない。ペアリング時に、ランダムで一方のゲーム装置10を主とし、もう一方を従とする方法や、ペアリング時に主従をどちらにするかユーザに選択させるようにしてもよい。
【0177】
一方、対戦ゲームのためのデータ通信には、IEEE802.11上の独自プロトコルによる、1台の親機と複数の子機との間で行われる無線LAN方式を用いたが、赤外線方式などと比べて指向性が弱く到達距離が長い方式(通信可能範囲がたとえば半径数m程度以上のもの)であれば、他の無線通信方式を用いてもよい。典型例としては、Bluetooth,ZigBee(いずれも登録商標:通信可能範囲は10m〜100m)などが挙げられる。
【0178】
以上では、ゲーム装置10について説明したが、この発明は、自身と自身以外の複数の通信端末との間で識別情報を参照して1対多の無線通信を行う第1通信モジュールと、自身と自身以外の各通信端末との間で識別情報を参照することなく1対1の通信を行う第2通信モジュールと、コンピュータ(CPU)とを備える、通信端末(ゲーム機のほか、たとえば携帯電話機,PC,PDAなど)に適用できる。
【符号の説明】
【0179】
10(A〜H) …ゲーム装置
12 …下側LCD
56 …無線通信モジュール
58 …ローカル(赤外線)通信モジュール
42 …CPU
48 …メインメモリ
100 …ネットワークシステム
【技術分野】
【0001】
この発明は、ネットワークシステム,通信端末および通信プログラムに関し、特にたとえば、異なる2つの方式で通信を行う、ネットワークシステム,通信端末および通信プログラムに関する。
【背景技術】
【0002】
従来のこの種の装置としては、たとえば特許文献1に開示されたものが知られている。この背景技術では、通信を所望する機器Aは、識別情報の特定を必要としない赤外線を用いた通信によって自機の機器IDを含む指定信号を相手の機器Bへ送信する。引き続き機器Aは、探索パケットを無線LANによって送信する。当該探索パケットを受信した機器Bは、赤外線によって機器Aから送られた指定信号を既に受信している場合、その旨を示す特定返信パケットを機器Aへ返信する。特定返信パケットには送信元である機器Bの識別情報が含まれているので、機器Aは当該識別情報をもとに無線LANの接続先を機器Bに指定し、画像データを機器Bへ送信する。これにより、接続を所望する機器の識別情報が不明な場合であっても、所望する機器へ赤外線を用いて自身の機器IDを送信する操作によって、簡単に他の機器との無線LAN等での接続が可能となる。
【特許文献1】特開2007−259385号公報
【発明の概要】
【発明が解決しようとする課題】
【0003】
しかし、特許文献1の背景技術では、2つの機器間で1対1の通信しか行えなかった。
【0004】
それゆえに、この発明の主たる目的は、新規な、ネットワークシステム,通信端末および通信プログラムを提供することである。
【0005】
この発明の他の目的は、3以上の通信端末間で各々が自身の識別情報しか記憶していなくても1対多の無線通信が容易かつ効率的に行えるネットワークシステム、ならびにこのようなネットワークシステムに参加する通信端末およびそのための通信プログラムを提供することである。
【課題を解決するための手段】
【0006】
この発明は、上記の課題を解決するために、以下の構成を採用した。
【0007】
第1の発明は、各々が少なくとも自身の識別情報を記憶している3以上の通信端末からなるネットワークシステムであって、各通信端末は、他の複数の通信端末との間で各々の識別情報を参照して無線通信を行う第1通信モジュール、他の各通信端末との間で識別情報を参照することなく通信を行う第2通信モジュール、第1通信モジュールによる無線通信の開始に先立って、第2通信モジュールを介して他のいずれか1つの通信端末との間で少なくとも一方の通信端末に記憶されている識別情報を他方の通信端末に記憶して集約するペアリング処理を実行し、そしてペアリング処理で第1条件を満たす毎に、別の1つの通信端末との間で少なくとも一方の通信端末に集約されている識別情報を他方の通信端末に記憶して集約するペアリング処理を繰り返し実行する、ペアリング手段、およびペアリング手段による一連のペアリング処理の結果、第2条件を満たした場合には集約された全ての識別情報を含む信号を第1通信モジュールを介して他の通信端末へ送信し、第3条件を満たした場合には他の通信端末から送信される信号を第1通信モジュールを介して受信する、信号送受信手段を備える。
【0008】
第1の発明では、ネットワークシステムは、各々が少なくとも自身の識別情報を記憶している3以上の通信端末A,B,C…からなる。各通信端末たとえばAは、第1通信モジュールおよび第2モジュールを備えており、他の複数の通信端末B,C…との間で各々の識別情報を参照して第1通信モジュールにより(1対多の)無線通信を行うことができる。また、他の各通信端末B,C…との間で識別情報を参照することなく第2通信モジュールにより(1対1の)通信を行うこともできる。
【0009】
各通信端末たとえばAは、自身の識別情報を記憶しているものの、他の通信端末B,C,…の識別情報を記憶しているとは限らないので、第1通信モジュールによる無線通信を行う場合、まず、ペアリング手段が、第2通信モジュールを介して他のいずれか1つの通信端末たとえばBとの間で少なくとも一方の通信端末に記憶されている識別情報を他方の通信端末に記憶して集約する(言い換えると、主従を決定して従側に記憶されている識別情報を主側に集約する)ペアリング処理を実行し、そしてこのペアリング処理で第1条件を満たす(たとえば自身が主となる)毎に、別の1つの通信端末との間で少なくとも一方の通信端末に集約されている識別情報を他方の通信端末に記憶して集約するペアリング処理を繰り返し実行する。次に、信号送受信手段が、ペアリング手段による一連のペアリング処理の結果として、第2条件を満たした(たとえば自身が唯一の主となった)場合には集約された全ての通信端末A,B,C…の識別情報を含む信号を第1通信モジュールを介して他の通信端末へ送信し、第3条件を満たした(たとえば自身が従となった)場合には他の通信端末(たとえば唯一の主)から送信される信号を第1通信モジュールを介して受信する。したがって、一連のペアリングを経て唯一の主となった通信端末つまり親機に全ての通信端末A,B,C…の識別情報が集約される結果となり、一連のペアリングの過程で従となった各通信端末つまり各子機は親機からこの識別情報の配信を受けることができる。
【0010】
第1の発明によれば、3以上の通信端末の間で、各々が自身の識別情報しか記憶していなくても、第2通信モジュールによるペアリングを経て第1通信モジュールによる(1対多の)無線通信へと容易かつ効率的に移行することができる。また、今回のペアリングで第1条件を満たした通信端末だけが次回のペアリングに進むトーナメント方式を採用したので、各通信端末が自身以外の全ての通信端末とペアリングする総当り方式と比べ、ペアリング処理の回数を少なくできる。
【0011】
第2の発明は、第1または第2の発明に従属するネットワークシステムであって、第1通信モジュールは第2通信モジュールよりも通信可能範囲が広い。
【0012】
第2の発明によれば、接続相手の特定を行う第2通信モジュールは通信可能な範囲が狭いため、遠くにいる意図しない通信端末を誤って接続相手とするのを防止することができ、より確実に接続相手を特定できる。また、接続相手を特定した後は第1通信モジュールを用いて通信を行うので、第2通信モジュールで通信を続ける場合と比べて、通信可能な方向が広がり、途中で距離が離れてしまっても通信を維持することができる。
【0013】
第3の発明は、第1の発明に従属するネットワークシステムであって、第2通信モジュールは第1通信モジュールよりも指向性が強い。
【0014】
第3の発明によれば、接続相手を特定するためには、第2通信モジュールを、接続を所望する通信端末の方向に向ける必要があるため、別の方向に存在する意図しない他の通信端末が誤って特定されるのを防止することができ、より確実に接続相手を特定できる。また、接続相手を特定した後は第1通信モジュールを用いて通信を行うので、第2通信モジュールで通信を続ける場合と比べて、通信可能な方向が広がり、途中で接続を所望する通信端末の方向が変わっても通信を維持することができる。
【0015】
なお、通信可能範囲が狭い、および/または指向性が強い第2通信モジュールは、1対1で行うペアリングに適しており、たとえば赤外線モジュール、非接触ICカードに利用される近距離無線通信モジュールなどがこれに該当するが、指向性が極大といえる点で有線通信モジュールもこれに含めてよい。一方、通信範囲が広く指向性が弱い第1通信モジュールは、1対多で行う無線通信に適しており、たとえば無線LANモジュール,Bluetooth(登録商標)モジュール,ZigBee(登録商標)モジュールなどがこれに該当する。
また、ある実施例では、信号送受信手段は信号をブロードキャスト方式で送受信する。なお、第2条件を満たした通信端末は全ての通信端末の識別情報を記憶している一方、第3条件を満たした通信端末は少なくとも自身の識別情報を記憶しているので、信号の送受信は、ブロードキャスト方式に限らず、マルチキャスト方式またはユニキャスト方式で行われてもよい。
【0016】
第4の発明は、第1の発明に従属するネットワークシステムであって、各通信端末は、ペアリング処理の結果、第3条件を満たした場合には、第1通信モジュールを介して他の通信端末からの信号を受信するまでの間待機する。
【0017】
第4の発明によれば、たとえばペアリングで従になった場合、第1通信モジュールで待機するので、効率的に信号の送受信ができる。
【0018】
第5の発明は、第1の発明に従属するネットワークシステムであって、第1条件は、ペアリング処理において、他の通信端末に記憶されている識別情報を自身の通信端末に記憶して集約したことである。
【0019】
第5の発明によれば、識別情報を集約した側が次なるペアリングを行うので、総当り方式と比べ、効率的にペアリングを行うことができる。
【0020】
第6の発明は、第1の発明に従属するネットワークシステムであって、各通信端末は、他の通信端末へ、第2通信モジュールを介して接続要求を送信する接続要求送信手段、および第2通信モジュールを介して他の通信端末から接続要求を受信する接続要求受信手段をさらに備え、第1条件は、接続要求を受信したことである。
【0021】
第6の発明によれば、接続要求を受信した側が次なるペアリングを行うので、効率的にペアリングを行うことができる。
【0022】
第7の発明は、第1の発明に従属するネットワークシステムであって、第2条件は、所定数の他の通信端末の識別情報を自身の通信端末に記憶して集約したことである。
【0023】
第7の発明によれば、通信端末の識別情報を所定数集約したら、第1通信モジュールによる送信を行うので、第1通信モジュールによる通信を行うきっかけを容易に判断できる。
【0024】
第8の発明は、第1の発明に従属するネットワークシステムであって、各通信端末は、他の通信端末に記憶されている識別情報を自身の通信端末に記憶して集約するペアリング処理を実行した回数をカウントするカウント手段をさらに備え、第2条件は、カウント手段によるカウントが所定回数に達したことである。
【0025】
第8の発明によれば、ペアリング処理を所定回数実行したら、第1通信モジュールによる送信を行うので、第1通信モジュールによる通信を行うきっかけを容易に判断できる。
【0026】
なお、自身が主となった回数をカウントして、その結果が所定回数に達した場合に自身が唯一の主となったと判断することも可能である。ユーザによって所定操作が行われたとき、自身が唯一の主となったと判断してもよい。
【0027】
第9の発明は、第1の発明に従属するネットワークシステムであって、第3条件は、ペアリング処理において、自身の通信端末に記憶されている識別情報を他の通信端末に記憶して集約したことである。
【0028】
第9の発明によれば、第1通信モジュールで受信を行う側を容易に決することができる。
【0029】
第10の発明は、第1の発明に従属するネットワークシステムであって、各通信端末は、他のいずれか1つの通信端末との間において、自身の通信端末が集約側の通信端末となるか否かを決定する集約側通信端末決定手段をさらに備え、ペアリング手段は、集約側通信端末決定手段によって集約側の通信端末になると決定されたとき、他の通信端末に記憶されている識別情報を自身の通信端末に記憶して集約する。
【0030】
第10の発明によれば、自身が集約側になるか否かを決定してペアリングを行うことができる。
【0031】
第11の発明は、第10の発明に従属するネットワークシステムであって、第1条件は、集約側通信端末決定手段によって集約側の通信端末になると決定されたことである。
【0032】
第11の発明によれば、集約側になると決定された通信端末(主)が次なるペアリングを行うので、効率的にペアリングを行うことができる。
【0033】
第12の発明は、第10の発明に従属するネットワークシステムであって、第3条件は、集約側通信端末決定手段によって集約側の通信端末にならないと決定されることである。
【0034】
第12の発明によれば、第1通信モジュールで受信を行う側(従)を容易に決することができる。
【0035】
第13の発明は、第1の発明に従属するネットワークシステムであって、各通信端末は、他のいずれか1つの通信端末との間で自身の通信端末が主となるか従となるかを決定する主従決定手段をさらに備え、ペアリング手段は、主従決定手段によって主となることが決定されたとき、他の通信端末に記憶されている識別情報を自身の通信端末に記憶して集約し、主従決定手段によって従となることが決定されたとき、自身の通信端末に記憶されている識別情報を他の通信端末に記憶して集約する。
【0036】
第13の発明によれば、自身が主となるか従となるかを決定することによって、集約するか否かを簡易に決定できる。
【0037】
第14の発明は、第13の発明に従属するネットワークシステムであって、各通信端末は、他のいずれか1つの通信端末へ、第2通信モジュールを介して接続要求を送信する接続要求送信手段、第2通信モジュールを介して他の通信端末から接続要求を受信する接続要求受信手段、接続要求を受信したとき、当該接続要求を送信した他の通信端末へ、第2通信モジュールを介して接続応答を送信する接続応答送信手段、および第2通信モジュールを介して他の通信端末から接続応答を受信する接続応答受信手段をさらに備え、主従決定手段は、接続要求を受信したとき、主となることを決定し、接続応答を受信したとき、従となることを決定する。
【0038】
第14の発明によれば、他の通信端末から接続要求を受信した場合は主とし、他の通信端末から接続応答を受信した場合は従とするので、簡易に主従を決定することができる。
【0039】
第15の発明は、第1の発明に従属するネットワークシステムであって、各通信端末は、記憶されている識別情報を他の通信端末に送信する識別情報送信手段、および他の通信端末に記憶されている識別情報を受信する識別情報受信手段をさらに備え、ペアリング手段は、識別情報受信手段によって他の通信端末に記憶されている識別情報を受信したとき、当該識別情報を記憶して集約し、識別情報送信手段によって識別情報を他の通信端末に送信したとき、当該識別情報を他の通信端末に集約させ、第1条件は、識別情報受信手段によって他の通信端末に記憶されている識別情報を受信したときであり、第3条件は、識別情報送信手段によって識別情報を他の通信端末に送信したときである。
【0040】
第15の発明によれば、識別情報の送受信によって容易に集約を行うことができる。
【0041】
第16の発明は、第1の発明に従属するネットワークシステムであって、ペアリング処理で第1条件を満たした通信端末の次なるペアリング処理の相手は、別のペアリング処理で第1条件を満たした通信端末である。
【0042】
第16の発明によれば、ペアリング処理の回数をより少なくできる。
【0043】
第17の発明は、第1の発明に従属するネットワークシステムであって、各通信端末は自身の識別情報を記憶したメモリをさらに備え、ペアリング手段は一連のペアリング処理で識別情報を順番にメモリに追記することによって集約する。
【0044】
第17の発明によれば、識別情報が集約した順に追記されるため、その情報を利用することができる。
【0045】
なお、識別情報の順番は、ある実施例では対戦ゲームのためのチーム分けを行うとき参照されるが、優先度情報としても利用できる。
【0046】
第18の発明は、第1の発明に従属するネットワークシステムであって、各通信端末は、信号送受信手段によって送信または受信した識別情報を参照することにより第1通信モジュールによる無線通信を開始して、自身と他の各通信端末との間で協働して情報処理を実行する処理手段をさらに備える。
【0047】
第18の発明によれば、集約した識別情報を送受信することによって、複数の通信端末間で情報処理を協働して行うことができる。
【0048】
第19の発明は、第17の発明に従属するネットワークシステムであって、各通信端末は、第2条件を満たした場合にメモリに記憶されている識別情報の順番に基づいて各通信端末をチーム分けするチーム分け手段、および信号送受信手段による送信または受信の後に第1通信モジュールによる無線通信を開始して、自身の通信端末と他の各通信端末との間で、チーム分け手段の結果を利用して、各通信端末がチームに分かれて対戦するためのゲーム処理を実行する処理手段をさらに備える。
【0049】
第19の発明によれば、ペアリングを反映したチーム分けが可能となる。
【0050】
第20の発明は、第1の発明に従属するネットワークシステムであって、各通信端末は、信号送受信手段によって信号を受信したとき、当該信号に自身の識別情報が含まれているか否かを判別する自身識別情報判別手段、および自身識別情報判別手段によって自身の識別情報が含まれていると判別されたとき、信号を参照することにより、第2条件を満たした他の通信端末と第1通信モジュールを介して無線通信を開始し、情報処理を実行する処理手段をさらに備える。
【0051】
第20の発明によれば、第2通信モジュールによって特定した接続相手としか第1通信モジュールによる通信を行わないため、より確実に、識別情報を集約した接続相手とのみ通信できる。
【0052】
第21の発明は、少なくとも自身の識別情報を記憶している通信端末であって、他の複数の通信端末との間で各々の識別情報を参照して無線通信を行う第1通信モジュール、他の各通信端末との間で識別情報を参照することなく通信を行う第2通信モジュール、第1通信モジュールによる無線通信の開始に先立って、第2通信モジュールを介して他のいずれか1つの通信端末との間で少なくとも一方の通信端末に記憶されている識別情報を他方の通信端末に記憶して集約するペアリング処理を実行し、そしてペアリング処理で第1条件を満たす毎に、別の1つの通信端末との間で少なくとも一方の通信端末に集約されている識別情報を他方の通信端末に記憶して集約するペアリング処理を繰り返し実行する、ペアリング手段、およびペアリング手段による一連のペアリング処理の結果、第2条件を満たした場合には集約された全ての識別情報を含む信号を第1通信モジュールを介して他の通信端末へ送信し、第3条件を満たした場合には他の通信端末から送信される信号を第1通信モジュールを介して受信する、信号送受信手段を備える。
【0053】
第22の発明は、少なくとも自身の識別情報を記憶しており、他の複数の通信端末との間で各々の識別情報を参照して無線通信を行う第1通信モジュール、および他の各通信端末との間で識別情報を参照することなく通信を行う第2通信モジュールを備える、通信端末のコンピュータを、第1通信モジュールによる無線通信の開始に先立って、第2通信モジュールを介して他のいずれか1つの通信端末との間で少なくとも一方の通信端末に記憶されている識別情報を他方の通信端末に記憶して集約するペアリング処理を実行し、そしてペアリング処理で第1条件を満たす毎に、別の1つの通信端末との間で少なくとも一方の通信端末に集約されている識別情報を他方の通信端末に記憶して集約するペアリング処理を繰り返し実行する、ペアリング手段、およびペアリング手段による一連のペアリング処理の結果、第2条件を満たした場合には集約された全ての識別情報を含む信号を第1通信モジュールを介して他の通信端末へ送信し、第3条件を満たした場合には他の通信端末から送信される信号を第1通信モジュールを介して受信する、信号送受信手段として機能させる、通信プログラムである。
【0054】
第23の発明は、各々が、少なくとも自身の識別情報を記憶しており、かつ、4つの通信端末の間で各々の識別情報を参照して無線通信を行う第1通信モジュール、および2つの通信端末の間で識別情報を参照することなく通信を行う第2通信モジュールを備える、4つの通信端末の間で通信を行う方法であって、第1通信モジュールによる無線通信の開始に先立って、任意の2つの通信端末が第1のペアを組む一方、他の2つの通信端末が第2のペアを組み、第1のペアを組んだ2つの通信端末の間で第2通信モジュールを介して一方の通信端末に記憶されている識別情報を他方の通信端末に記憶して集約する第1のペアリング処理を実行する一方、第2のペアを組んだ2つの通信端末の間でも第2通信モジュールを介して一方の通信端末に記憶されている識別情報を他方の通信端末に記憶して集約する第2のペアリング処理を実行し、第1および第2のペアリング処理で識別情報を集約した2つの通信端末が第3のペアを組み、第3のペアを組んだ2つの通信端末の間で第2通信モジュールを介して一方の通信端末に集約して記憶されている識別情報を他方の通信端末に記憶して集約する第3のペアリング処理を実行し、そして第3のペアリング処理で識別情報を集約した通信端末が集約された全ての識別情報を含む信号を第1通信モジュールを介して送信する一方、他の3つの通信端末は第3のペアリング処理で識別情報を集約した通信端末から送信される信号を第1通信モジュールを介して受信する、通信方法である。
【0055】
第21,第22および第23の発明でも、第1の発明と同様に、自身の識別情報しか記憶していなくても、複数の通信相手との間で第2通信モジュールによるペアリングを経て第1通信モジュールによる1対多の無線通信へと容易かつ効率的に移行することができる。
【0056】
第24の発明は、各々が少なくとも自身の識別情報を記憶している3以上の通信端末からなるネットワークシステムであって、各通信端末は、他の複数の通信端末との間で各々の識別情報を参照して無線通信を行う第1通信モジュール、他の各通信端末との間で識別情報を参照することなく通信を行う第2通信モジュール、第2通信モジュールを介して他のいずれか1つの通信端末との間で第1条件を満たした場合に当該他の通信端末に記憶されている識別情報を受信して記憶し、そして当該第1条件を満たす毎に別の1つの通信端末に記憶されている識別情報を受信して記憶する受信処理を繰り返す識別情報受信手段、および識別情報受信手段による一連の受信処理の結果、第2条件を満たした場合には受信した全ての識別情報を含む信号を第1通信モジュールを介して他の通信端末へ送信する信号送信手段を備える。
【0057】
第24の発明でも、第1の発明と同様に、自身の識別情報しか記憶していなくても、複数の通信相手との間で第2通信モジュールによるペアリングを経て第1通信モジュールによる1対多の無線通信へと容易かつ効率的に移行することができる。なお、第1の発明での「第1条件」は2回目以降のペアリング処理で主となることであるが、第24の発明での「第1条件」は1回目で主となることも含む。
【0058】
第25の発明は、第24の発明に従属するネットワークシステムであって、各通信端末は、他の通信端末へ、第2通信モジュールを介して接続要求を送信する接続要求送信手段、および第2通信モジュールを介して他の通信端末から接続要求を受信する接続要求受信手段をさらに備え、第1条件は、接続要求を受信したことである。
【0059】
第25の発明によれば、接続要求を受信した側が次なるペアリングを行うので、効率的にペアリングを行うことができる。
【発明の効果】
【0060】
この発明によれば、3以上の通信端末間で各々が自身の識別情報しか記憶していなくても1対多の無線通信を容易かつ効率的に行えるネットワークシステムが実現される。また、このようなネットワークシステムに参加する通信端末およびそのための通信プログラムが実現される。
【0061】
この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【図面の簡単な説明】
【0062】
【図1】この発明の一実施例であるゲーム装置の外観図であり、開状態における正面を示す。
【図2】ゲーム装置の外観図であり、開状態における側面を示す。
【図3】ゲーム装置の外観図であり、(A)は閉状態における一方側面を、(B)は閉状態における上面を、(C)は閉状態における他方側面を、そして(D)は閉状態における下面をそれぞれ示す。
【図4】ゲーム装置がユーザによって把持された様子を示す図解図である。
【図5】ゲーム装置の電気的構成の一例を示すブロック図である。
【図6】4台のゲーム装置が参加するネットワークシステムの一例を示す図解図であり、(a)が1対1で赤外線通信を行う場合を示し、(b)が1対多で無線通信を行う場合を示す。
【図7】4台参加のネットワークシステムで赤外線および無線により行われる通信の手順を示すシーケンス図である。
【図8】4台参加のネットワークシステムでトーナメント式により行われるペアリング(親機決定および識別情報集約)の一例を示す図解図であり、(a)がトーナメント表を示し、(b)がゲーム装置毎のIDリストの変遷を示し、そして(c)が親機となったゲーム装置のIDリストおよびこれに基づいて作成されたチーム情報を示す。
【図9】下側LCDに表示される画面の変遷を示す図解図であり、(a)が初回ペアリング(1回目)時の画面を示し、(b)および(c)が次回ペアリング時(2回目)の主側および従側の各表示画面を示し、そして(d)がペアリング完了時の表示画面を示す。
【図10】メインメモリのメモリマップの一部を示す図解図である。
【図11】CPU動作の一部を示すフロー図である。
【図12】CPU動作の他の一部を示すフロー図である。
【図13】CPU動作のその他の一部を示すフロー図である。
【図14】CPU動作のさらにその他の一部を示すフロー図である。
【図15】CPU動作の他の一部を示すフロー図である。
【図16】CPU動作のその他の一部を示すフロー図である。
【図17】5台参加のネットワークシステムでトーナメント式により行われるペアリングの他の一例を示す図解図であり、(a)がトーナメント表を示し、(b)がゲーム装置毎のIDリストの変遷を示し、そして(c)が親機となったゲーム装置のIDリストおよびこれに基づいて作成されたチーム情報を示す。
【図18】8台参加のネットワークシステムでトーナメント式により行われるペアリングの他の一例を示す図解図であり、(a)がトーナメント表を示し、(b)が親機となったゲーム装置のIDリストおよびこれに基づいて作成されたチーム情報を示す。
【発明を実施するための形態】
【0063】
図1〜図3には、本発明の一実施例であるゲーム装置10の外観が示される。ゲーム装置10は折り畳み型のゲーム装置であり、図1および図2は、開いた状態(開状態)におけるゲーム装置10を示し、図3は、閉じた状態(閉状態)におけるゲーム装置10を示している。また、図1は、開状態におけるゲーム装置10の正面図であり、図2は、開状態におけるゲーム装置の側面図である。ゲーム装置10は、2つの表示装置(LCD12および14)および2つのカメラ(カメラ16および18)を有し、カメラによって画像を撮像し、撮像した画像を画面に表示したり、撮像した画像のデータを保存したりすることができる。
【0064】
ゲーム装置10は、開いた状態において両手または片手で把持することができるような小型のサイズとされる。
【0065】
ゲーム装置10は、下側ハウジング20および上側ハウジング22という2つのハウジングを有する。下側ハウジング20と上側ハウジング22とは、開閉可能(折り畳み可能)に接続されている。この実施例では、各ハウジング20および22はともに横長の長方形の板状形状であり、互いの長辺部分で回転可能に接続されている。
【0066】
上側ハウジング22は、下側ハウジング20の上側の一部で回動自在に支持されている。これによって、ゲーム装置10は、閉状態(下側ハウジング20と上側ハウジング22とのなす角度が約0°の状態(図3参照))と、開状態(下側ハウジング20と上側ハウジング22とのなす角度が約180°の状態(図2参照))とをとることができる。ユーザは通常、開状態でゲーム装置10を使用し、ゲーム装置10を使用しない場合には閉状態としてゲーム装置10を保管する。また、ゲーム装置10は、上記閉状態および開状態のみでなく、下側ハウジング20と上側ハウジング22とのなす角度を、ヒンジに発生する摩擦力などによって閉状態と開状態との間の任意の角度に維持することができる。つまり、上側ハウジング22を下側ハウジング20に対して任意の角度で静止させることができる。
【0067】
まず、下側ハウジング20に設けられる構成について説明する。図1に示すように、ゲーム装置10は、下側LCD(液晶表示装置)12を有する。下側LCD12は横長形状であり、長辺方向が下側ハウジング20の長辺方向に一致するように配置される。下側LCD12は下側ハウジング20に収納される。下側LCD12は、下側ハウジング20の内側面に設けられる。したがって、ゲーム装置10を使用しない場合には閉状態としておくことによって、下側LCD12の画面が汚れたり傷ついたりすることを防止することができる。なお、この実施例では表示装置としてLCDを用いているが、例えばEL(Electro Luminescence:電界発光)を利用した表示装置など、他の任意の表示装置を利用してもよい。また、ゲーム装置10は任意の解像度の表示装置を利用することができる。なお、ゲーム装置10を撮像装置として利用する場合、下側LCD12は主に、カメラ16または18で撮像されている画像をリアルタイムに表示(スルー表示)するために用いられる。
【0068】
下側ハウジング20の内側面はほぼ平面状に形成される。当該内側面の中央には、下側LCD12を露出させるための開口部20bが形成される。当該開口部20bの左側(図示y軸負側)には開口部20cが形成され、当該開口部20bの右側には開口部20dが形成される。開口部20bおよび20cは、各キートップ(各ボタン24a〜24eの上面)を露出させるためのものである。そして、下側ハウジング20の内部に収納される下側LCD12の画面が開口部20bから露出し、各キートップが開口部20cおよび20dから露出される。このように、下側ハウジング20の内側面には、中央に設けられる下側LCD12用の開口部20bの左右両側に非画面領域(図1に示す点線領域A1およびA2。具体的には、各ボタン24a〜24eを配置するための領域;ボタン配置領域)がそれぞれ設けられる。
【0069】
下側ハウジング20には、入力装置として、各ボタン24a〜24iおよびタッチパネル28が設けられる。図1に示されるように、各ボタン24a〜24iのうち、方向入力ボタン24a、ボタン24b、ボタン24c、ボタン24d、ボタン24e、および電源ボタン24fは、下側ハウジング20の内側面に設けられる。方向入力ボタン24aは例えば選択操作等に用いられ、各ボタン24b〜24eは例えば決定操作やキャンセル操作等に用いられる。電源ボタン24fは、ゲーム装置10の電源をオン/オフするために用いられる。ここでは、方向入力ボタン24aおよび電源ボタン24fは、下側ハウジング20の中央付近に設けられる下側LCD12に対して一方の側(図1では左側)に設けられ、ボタン24b〜24eは下側LCD12に対して他方の側(図1では右側)に設けられる。方向入力ボタン24aおよびボタン24b〜24eは、ゲーム装置10に対する各種操作を行うために用いられる。
【0070】
図3(A)は閉状態におけるゲーム装置10の左側面図であり、図3(B)は当該ゲーム装置10の正面図であり、図3(C)は当該ゲーム装置10の右側面図であり、そして図3(D)は当該ゲーム装置10の背面図である。図3(C)に示されるように、また、図3(A)に示されるように、音量ボタン24iは、下側ハウジング20の左側面に設けられる。音量ボタン24iは、ゲーム装置10が備えるスピーカ34の音量を調整するために用いられる。また、図3(D)に示されるように、ボタン24hは、下側ハウジング20の上面の右端部に設けられる。ボタン24gは、下側ハウジング20の上面の左端部に設けられる。各ボタン24gおよび24hは、ゲーム装置10に対して例えば撮影指示操作(シャッタ操作)を行うために用いられる。各ボタン24gおよび24hの両方をシャッターボタンとして機能させてもよく、この場合、右利きのユーザはボタン24hを使用し、左利きのユーザはボタン24gを使用することができ、いずれのユーザにも使い勝手が良い。なお、ゲーム装置10は、各ボタン24gおよび24hを常にシャッターボタンとして有効としておいてもよいし、右利きか左利きかの設定をして(メニュープログラムなどによりユーザに設定入力をさせ、設定されたデータを記憶しておく)、右利き設定のときにはボタン24hのみ有効とし、左利き設定のときにはボタン24gのみ有効とするようにしてもよい。
【0071】
図1に示されるように、ゲーム装置10は、各操作ボタン24a〜24iとは別の入力装置として、タッチパネル28をさらに備えている。タッチパネル28は、下側LCD12の画面上に装着されている。なお、この実施例では、タッチパネル28は抵抗膜方式のタッチパネルである。ただし、タッチパネルは抵抗膜方式に限らず、任意の押圧式のタッチパネルを用いることができる。この実施例では、タッチパネル28として、下側LCD12の解像度と同解像度(検出精度)のものを利用する。ただし、必ずしもタッチパネル28の解像度と下側LCD12の解像度が一致している必要はない。また、下側ハウジング20の右側面には挿入口30(図1および図3(D)に示す点線)が設けられている。挿入口30は、タッチパネル28に対する操作を行うために用いられるタッチペン36を収納することができる。なお、タッチパネル28に対する入力は通常タッチペン36を用いて行われるが、タッチペン36に限らずユーザの指でタッチパネル28を操作することも可能である。
【0072】
図2や図3(C)に示されるように、下側ハウジング20の右側面には開閉可能なカバー部11bが設けられる。このカバー部11bの内側には、ゲーム装置10とメモリカード38とを電気的に接続するためのコネクタ(図示せず)が設けられる。メモリカード38は、コネクタに着脱自在に装着される。メモリカード38は、例えば、ゲーム装置10で動作するプログラムを記憶するため、あるいは、ゲーム装置10によって撮像された画像のデータを記憶(保存)するためにも用いられる。
【0073】
図1に示されるように、下側ハウジング20の軸部20aの左側部分には、3つのLED26a〜26cが取り付けられる。ここで、ゲーム装置10は他の機器との間で無線通信を行うことが可能であり、第1LED26aは、無線通信が確立している場合に点灯する。第2LED26bは、ゲーム装置10の充電中に点灯する。第3LED26cは、ゲーム装置10の電源がオンである場合に点灯する。したがって、3つのLED26a〜26cによって、ゲーム装置10の通信確立状況、充電状況、および、電源のオン/オフ状況をユーザに通知することができる。
【0074】
以上に説明したように、下側ハウジング20には、ゲーム装置10に対する操作入力を行うための入力装置(タッチパネル28および各ボタン24a〜24i)が設けられる。したがって、ユーザは、ゲーム装置10を使用する際には下側ハウジング20を把持してゲーム装置10に対する操作を行うことができる。図4は、ユーザがゲーム装置10を両手で把持した様子を示す図である。図4に示すように、ユーザは、各LCD12および14がユーザの方向を向く状態で、両手の掌と中指、薬指および小指とで下側ハウジング20の側面および外側面(内側面の反対側の面)を把持する。このように把持することで、ユーザは、下側ハウジング20を把持したまま、各ボタン24a〜24eに対する操作を親指で行い、ボタン24gおよび24hに対する操作を人差し指で行うことができる。
【0075】
一方、上側ハウジング22には、画像を撮像するための構成(カメラ)、および、撮像した画像を表示するための構成(表示装置)が設けられる。以下、上側ハウジング22に設けられる構成について説明する。
【0076】
図1に示すように、ゲーム装置10は、上側LCD14を有する。上側LCD14は上側ハウジング22に収納される。上側LCD14は横長形状であり、長辺方向が上側ハウジング22の長辺方向に一致するように配置される。上側LCD14は、上側ハウジング22の内側面(ゲーム装置10が閉状態となった場合に内側となる面)に設けられる。したがって、ゲーム装置10を使用しない場合には閉状態としておくことによって、上側LCD14の画面が汚れたり傷ついたりすることを防止することができる。なお、下側LCD12と同様、上側LCD14に代えて、他の任意の方式および任意の解像度の表示装置を利用してもよい。なお、他の実施形態においては、上側LCD14上にもタッチパネルを設けてもよい。
【0077】
また、ゲーム装置10は、2つのカメラ16および18を有する。各カメラ16および18はともに上側ハウジング22に収納される。図1に示されるように、内側カメラ16は、上側ハウジング22の内側面に取り付けられる。一方、図3(B)に示されるように、外側カメラ18は、内側カメラ16が取り付けられる面の反対側の面、すなわち、上側ハウジング22の外側面(ゲーム装置10が閉状態となった場合に外側となる面)に取り付けられる。これによって、内側カメラ16は、上側ハウジング22の内側面が向く方向を撮像することが可能であり、外側カメラ18は、内側カメラ16の撮像方向の逆方向、すなわち、上側ハウジング22の外側面が向く方向を撮像することが可能である。以上のように、この実施例では、2つのカメラ16および18が撮像方向が互いに逆方向となるように設けられる。したがって、ユーザはゲーム装置10を持ち替えることなく、異なる2方向を撮像することができる。例えば、ユーザは、ゲーム装置10からユーザの方を見た景色を内側カメラ16で撮影することができるとともに、ゲーム装置10からユーザの反対側の方向を見た景色を外側カメラ18で撮影することができる。
【0078】
また、内側カメラ16は、上側ハウジング22の下側の中央部に形成される軸部22aの中央に取り付けられる。つまり、内側カメラ16は、2つのハウジング20および22が接続される部分の中央に取り付けられる。したがって、ゲーム装置10を開状態にした場合、内側カメラ16は、2つのLCD12および14の間に配置されることになる(図1参照)。換言すれば、内側カメラ16は、ゲーム装置10の中心付近に配置されることになる。なお、「ゲーム装置10の中心」とは、ゲーム装置10の操作面(開状態における各ハウジング20および22の内側面からなる面)の中心という意味である。なお、内側カメラ16は、LCD12および14の横方向の中心付近に配置されているということもできる。
この実施例では、ゲーム装置10を開状態にした場合に内側カメラ16はゲーム装置10の中心付近に配置されるので、ユーザは、内側カメラ16によってユーザ自身を撮影する場合、ユーザがゲーム装置10に正対する位置でゲーム装置10を把持すればよい。つまり、通常の把持位置でゲーム装置を把持すれば、ユーザは撮像範囲の中心付近に位置することになり、ユーザ自身を撮像範囲内に収めることが容易になる。
【0079】
また、図3(B)に示されるように、外側カメラ18は、ゲーム装置10を開状態とした場合において上側ハウジング22の上部(下側ハウジング20から遠い側の部分)に配置される。なお、外側カメラ18は、ゲーム装置10を把持するユーザを撮影するものではないので、ゲーム装置10の中心に設ける必要性は高くない。
【0080】
また、図1または図3(B)に示されるように、マイク32は、上側ハウジング22に収納されている。具体的には、マイク32は、上側ハウジング22の軸部22aに取り付けられる。この実施例では、マイク32は、内側カメラ16の周囲(図ではy軸の側方)に取り付けられ、より具体的には、内側カメラ16からy軸正方向側の側方に取り付けられる。また、軸部22aにおいては、マイク32がゲーム装置10外部の音を検知することができるように、マイク32に対応する位置(内側カメラ16の側方)にマイクロフォン用孔22cが設けられる。なお、マイク32は下側ハウジング20に収納されてもよい。たとえば、マイクロフォン用孔22cを下側ハウジング20の内側面、具体的には下側ハウジング20の内側面の左下部分(ボタン配置領域A1)に設け、マイク32を、下側ハウジング20内における、マイクロフォン用孔22cの近傍に配置することができる。
【0081】
また、マイク32は、その集音方向(感度が最大となる方向)が内側カメラ16の撮像方向(光軸)と略並行(言い換えれば集音方向および撮像方向がそれぞれz軸と略並行)となる向きに取り付けられる。これによって、内側カメラ16の撮像範囲内で発せられた音声は、マイク32によって好適に捉えられる。すなわち、マイク32による音声入力の検出と内側カメラ16の撮像画像によるユーザの検出とを同時行うことができるとともに、検出の精度を向上させることができる。
【0082】
図3(B)に示されるように、上側ハウジング22の外側面には、第4LED26dが取り付けられる。第4LED26dは、外側カメラ18の周囲(この実施例では、外側カメラ18の右側)に取り付けられる。第4LED26dは、内側カメラ16または外側カメラ18によって撮影が行われた(シャッターボタンが押下された)時点で点灯する。また、内側カメラ16または外側カメラ18によって動画が撮影される間点灯する。第4LED26dによって、ゲーム装置10による撮影が行われた(行われている)ことを撮影対象者に通知することができる。
【0083】
また、上側ハウジング22の内側面はほぼ平面状に形成される。図1に示すように、当該内側面の中央には、上側LCD14を露出させるための開口部22bが形成される。上側ハウジング22の内部に収納される上側LCD14の画面は、開口部22bから露出する。また、上記開口部22bの左右両側には音抜き孔22dがそれぞれ1つずつ形成される。音抜き孔22dの奥の上側ハウジング22内にはスピーカ34が収納されている。音抜き孔22dは、スピーカ34からの音を外部に放出するための孔である。
【0084】
このように、上側ハウジング22の内側面には、中央に設けられる上側LCD14用の開口部22bの左右両側に非画面領域(図1に示す点線領域B1およびB2。具体的には、スピーカ34を配置するための領域;スピーカ配置領域)がそれぞれ設けられる。2つの音抜き孔22dは、左右方向については、各スピーカ配置領域の左右方向における中央部付近に配置され、上下方向については、各スピーカ配置領域の下部領域(下側ハウジング20に近い側の領域)に配置される。
【0085】
なお、上記のように、下側ハウジング20および上側ハウジング22に左右方向に関して同じ位置に非画面領域をそれぞれ設けたことで、ゲーム装置10は、図4に示すような横持ちで把持される場合だけでなく、縦持ち(図4に示す状態からゲーム装置10を左または右回りに90°回転させた状態)で把持される場合にも持ちやすい構成となっている。
【0086】
以上に説明したように、上側ハウジング22には、画像を撮像するための構成であるカメラ16および18、および、撮像された画像を表示するための表示手段である上側LCD14が設けられる。一方、下側ハウジング20には、ゲーム装置10に対する操作入力を行うための入力装置(タッチパネル28および各ボタン24a〜24i)が設けられる。したがって、ゲーム装置10を撮像装置として使用する際には、ユーザは、上側LCD14に表示される撮像画像(カメラによって撮像された画像)を見ながら、下側ハウジング20を把持して入力装置に対する入力を行うことができる。
【0087】
また、上側ハウジング22のカメラ16近傍には、音声を入力するための構成であるマイク32が設けられており、したがってゲーム装置10は、録音装置としても使用可能である。さらに、ユーザがマイク32を通して音声入力を行い、ゲーム装置10はこのマイク入力情報に基づいてゲーム処理やゲーム以外のアプリケーション処理を実行することもできる。
【0088】
図5は、ゲーム装置10の内部構成(電気的構成)を示すブロック図である。図5に示すように、ゲーム装置10は、CPU42、メインメモリ48、メモリ制御回路50、保存用データメモリ52、プリセットデータ用メモリ54、メモリカードインターフェース(メモリカードI/F)44、無線通信モジュール56、ローカル通信モジュール58、リアルタイムクロック(RTC)60、電源回路46、およびインターフェース回路(I/F回路)40等の電子部品を備えている。これらの電子部品は、電子回路基板上に実装されて下側ハウジング20(または上側ハウジング22でもよい)内に収納される。
【0089】
CPU42は、各種のプログラムを実行するための情報処理手段である。ゲーム装置10を撮像装置として利用する場合には、そのためのプログラムがゲーム装置10内のメモリ(例えば保存用データメモリ52)に記憶される。CPU42が当該プログラムを実行することで、ゲーム装置10は撮影装置として機能する。なお、CPU42によって実行されるプログラムは、ゲーム装置10内のメモリに予め記憶されていてもよいし、メモリカード38から取得されてもよいし、他の機器との通信によって他の機器から取得されてもよい。
【0090】
CPU42には、メインメモリ48、メモリ制御回路50、およびプリセットデータ用メモリ54が接続される。また、メモリ制御回路50には保存用データメモリ52が接続される。メインメモリ48は、CPU42のワーク領域やバッファ領域として用いられる記憶手段である。すなわち、メインメモリ48は、ゲーム処理やアプリケーション処理に用いられる各種データを記憶したり、外部(メモリカード38や他の機器等)から取得されるプログラムを記憶したりする。この実施例では、メインメモリ48として例えばPSRAM(Pseudo−SRAM)を用いる。保存用データメモリ52は、CPU42によって実行されるプログラムや各カメラ16および18によって撮像された画像のデータ等を記憶するための記憶手段である。保存用データメモリ52は、例えばNAND型フラッシュメモリで構成される。メモリ制御回路50は、CPU42の指示に従って、保存用データメモリ52に対するデータの読み出しおよび書き込みを制御する回路である。プリセットデータ用メモリ54は、ゲーム装置10において予め設定される各種パラメータ等のデータ(プリセットデータ)を記憶するための記憶手段である。プリセットデータ用メモリ54としては、SPI(Serial Peripheral Interface)バスによってCPU42と接続されるフラッシュメモリを用いることができる。
【0091】
メモリカードI/F44はCPU42に接続される。メモリカードI/F44は、コネクタに装着されたメモリカード38に対するデータの読み出しおよび書き込みをCPU42の指示に従って行う。この実施例では、各カメラ16および18によって撮像された画像データがメモリカード38に書き込まれたり、メモリカード38に記憶された画像データがメモリカード38から読み出されて保存用データメモリ52に記憶されたりする。
【0092】
無線通信モジュール56は、例えばIEEE802.11上の独自プロトコルによって、1台の親機と複数の子機が設定された複数の同種のゲーム装置10間で無線LAN通信を行う機能を有する。また、ローカル通信モジュール58は、所定の通信方式たとえば赤外線方式により同種のゲーム装置との間で無線通信を行う機能を有する。無線通信モジュール56およびローカル通信モジュール58はCPU42に接続される。CPU42は、無線通信モジュール56を用いてインターネットを介して他の機器との間でデータを送受信したり、ローカル通信モジュール58を用いて同種の他のゲーム装置との間でデータを送受信したりすることができる。
【0093】
ローカル通信モジュール58は、ゲーム装置10に内蔵されるようになっているが、ゲーム装置10の本体には内蔵せず、例えばメモリカード38に設け、メモリカードI/F44を介して通信の制御を行うようにしてもよい。
【0094】
また、CPU42には、RTC60および電源回路46が接続される。RTC60は、時間をカウントしてCPU42に出力する。CPU42は、RTC60によって計時された時間に基づいて、現在時刻(日付)を計算したり、画像取り込み等の動作タイミングを検知したりする。電源回路46は、ゲーム装置10が有する電源(電池;下ハウジングに収納される)からの電力を制御し、ゲーム装置10の各部品に電力を供給する。
【0095】
また、ゲーム装置10は、マイク32およびスピーカ34を備えている。マイク32およびスピーカ34はそれぞれI/F回路40に接続される。マイク32は、ユーザの音声を検知して音声信号をI/F回路40に出力する。スピーカ34は、I/F回路40からの音声信号に応じた音声を出力する。I/F回路40はCPU42に接続される。また、タッチパネル28はI/F回路40に接続される。I/F回路40は、マイク32およびスピーカ34の制御を行う音声制御回路と、タッチパネルの制御を行うタッチパネル制御回路とを含む。音声制御回路は、音声信号に対するA/D変換およびD/A変換を行ったり、音声信号を所定の形式の音声データに変換したりする。変換された音声データは、メインメモリ48の音声エリア(図示せず)に書き込まれる。ゲーム装置10を録音装置として利用する場合には、音声エリアに格納された音声データは、後にメモリ制御回路50を介して保存用データメモリ52に書き込まれる(必要に応じてさらに、メモリカードI/F44を介してメモリカード38に記録される)。また、音声エリアに格納された音声データ(マイク入力情報)は、各種のゲーム処理にも利用される。タッチパネル制御回路は、タッチパネル28からの信号に基づいて所定の形式のタッチ位置データを生成してCPU42に出力する。タッチ位置データは、タッチパネル28の入力面のうちで入力が行われた位置の座標を示す。なお、タッチパネル制御回路は、タッチパネル28からの信号の読み込み、および、タッチ位置データの生成を所定時間に1回の割合で行う。CPU42は、タッチ位置データを取得することにより、タッチパネル28に対して入力が行われた位置を知ることができる。
【0096】
操作部24は、上記各ボタン24a〜24iからなり、CPU42に接続される。操作部24からCPU42へは、各ボタン24a〜24iに対する入力状況(押下されたか否か)を示す操作データが出力される。CPU42は、操作部24から操作データを取得することによって、操作部24に対する入力に従った処理を実行する。
【0097】
各カメラ16および18はCPU42に接続される。各カメラ16および18は、CPU42の指示に従って画像を撮像し、撮像した画像データをCPU42に出力する。CPU42は、各カメラ16および18からの画像データをメインメモリ48の画像エリア(図示せず)に書き込む。ゲーム装置10を撮像装置として利用する場合には、画像エリアに格納された画像データは、後にメモリ制御回路50を介して保存用データメモリ52に書き込まれる(必要に応じてさらに、メモリカードI/F44を介してメモリカード38に記録される)。また、画像エリアに格納された画像データは、各種のゲーム処理にも利用される。
【0098】
また、各LCD12および14はCPU42に接続される。各LCD12および14はCPU42の指示に従って画像を表示する。ゲーム装置10を撮像装置として利用する場合、CPU42は、各カメラ16および18のいずれかから取得した画像を上側LCD14に表示させ、所定の処理によって生成した操作画面を下側LCD12に表示させる。ゲーム装置10でゲームをプレイする場合には、LCD12および14の一方または両方にゲーム画像が表示される。
【0099】
以上のように構成されたゲーム装置10は、対戦ゲームを行うとき、同様に構成された他の複数のゲーム装置10と協働してネットワークシステム100を構成する。ネットワークシステム100に参加する3以上のゲーム装置10は、1対1の赤外線通信(図6(a)参照)によるペアリング(後述)を経て、1対多の無線通信(図6(b)参照)へと移行し、2つまたは3つ以上のチームに分かれて対戦ゲームを行う。あるいは、チームに分かれる必要はなく、個人戦で対戦ゲームを行ってもよい。なお、複数のゲーム装置10を互いに区別する必要がある場合、ゲーム装置10(A),10(B),10(C)…のように表記する。場合によっては、親機A,子機B,子機C…のように記し、さらには、それぞれをA,B,C,…のように略記することもある。
【0100】
以下、ネットワークシステム100およびこれに参加する各ゲーム装置10の動作について詳しく説明するが、最初に、概要を説明しておく。図6(a)および図6(b)を参照して、赤外線通信は指向性が強く(高く)到達距離が短いのに対し、無線通信は指向性が弱く(低く)到達距離が長い、という特徴がある。一方、このような特徴さらには通信規格から、赤外線通信は各ゲーム装置10(A),10(B),…を識別する識別情報がなくても行えるのに対し、無線通信はこのような識別情報がなければ行えない、という制約がある。
【0101】
なお、識別情報は、典型的にはMACアドレス,IPアドレスなどであるが、各ゲーム装置10を一意に特定可能な情報であれば、独自の法則に従って定められた情報でもよい。ユーザ名やニックネームなどを識別情報に含めてもよい。
【0102】
そこで、ネットワークシステム100では、1対1の赤外線通信によるペアリングを経て1対多の無線通信へと移行する通信方法を採用している。具体的には、ネットワークシステム100に参加する複数のゲーム装置10は、まず、任意に2台1組のペアを作って、ペア毎に、図6(a)に示すような1対1の赤外線通信を通じて主従を決定すると共に、主従間で識別情報を通知し合う。このようなプロセスが、この実施例でいう“ペアリング”である。
【0103】
また、各ゲーム装置10は、ペアリングの際に相手から通知された識別情報を、自身が保有する識別情報の後に追記する。したがって、ペアリングが終了した時点で、主となったゲーム装置10のメインメモリ48(識別情報(IDリスト)エリア82:図10参照)には、自身の識別情報(たとえばA)の後に、従となったゲーム装置10の識別情報(たとえばB,C…)が記憶されている。従となったゲーム装置10もまた、自身の識別情報の後に、主となったゲーム装置10の識別情報を保有している。
【0104】
次に、主となったゲーム装置10同士で再びペアを作って、同様に主従を決定し、主従間で識別情報を交換し合う。このとき、それぞれのゲーム装置10は、自身の識別情報の後に追記された他の識別情報も交換し合う。このようなプロセスを、主が1台になるまで繰り返し、この最後に残ったゲーム装置10を親機に、これ以外を子機に決定する。要するに、複数のゲーム装置10の間で、トーナメント式によるペアリングを行って、1台の親機を決定するのであるが、この過程で、各子機の識別情報が親機に集約されていく。したがって、トーナメントを経て親機となったゲーム装置10は、全てのゲーム装置10に関する識別情報(A,B,C…)を保有する結果となる。
【0105】
なお、この実施例では、ペアリングの際に主従間で互いに識別情報を通知し合っているが、主から従への通知は必ずしも行わなくてよい。少なくとも従から主に識別情報を通知すれば、全ての識別情報が親機に集約されるからである。この場合、主従の決定とは、集約側かそうでないか(相手から識別情報の通知を受ける側か、相手に識別情報を通知する側か)を決定することである、と定義することもできる。
【0106】
なお、ネットワークシステム100への参加台数は、上述のようなトーナメントの性質上、たとえば4台(図8(a)参照),8台(図18(a)参照)など、2のべき乗に等しい台数が好ましい。ただし、たとえば5台(図17(a)参照)など、2のべき乗以外の台数でもかまわない。5台参加の場合、そのうち1台は2回目から参加すればよい(シード制)。
【0107】
また、シード制は、参加台数によらず導入されてよい。図示は省略するが、4台(A〜D)参加の場合にシード制を導入したとすると、たとえば、まずAおよびBがペアリングを行い(1回目)、ここで主となった方たとえばAが次にCとペアリングを行い(2回目)、そしてここで主となった方たとえばCが次にDとペアリングを行う(3回目)。この場合に実行されるペアリングの回数は3回で、シード制を導入しないとき(図8(a)参照)と同じ回数であるが、最終的に親機となるゲーム装置10にとっては、シード制では最大3回ペアリングを行うのに対し、シード制を導入しないときは2回のペアリングで済む。
【0108】
一般には、どのようなトーナメント表によっても、参加台数がN台であれば、親機が決まるまでに(N−1)回のペアリングが行われる。
【0109】
なお、他の実施例では、総当り式で識別情報を交換し合ってもよい。総当り式の場合、参加台数がN台のとき、全ゲーム装置10の間で識別情報を通知し合うのに必要なペアリング回数は NC2=N・(N−1)/(2・1)となる。したがって、N≧3であれば、総当り式よりもトーナメント式の方が、少ないペアリング回数で無線通信に移行できることがわかる。
【0110】
次に、親機となったゲーム装置10は、図6(b)に示すような1対多の無線通信を通じ、自身が保有する識別情報(A,B,C…)を含んだ信号(いわゆるビーコン)をブロードキャストする。子機となった各ゲーム装置10は、こうしてブロードキャストされる信号を受信する(自身の識別情報を含んだビーコンを検出する)ことで、全てのゲーム装置10に関する識別情報(A,B,C…)を親機から入手することができる。
【0111】
なお、親機(唯一の主)となった通信端末10は、全ての通信端末の識別情報を記憶している一方、従となった通信端末は少なくとも自身の識別情報を記憶しているのだから、信号の送受信には、宛先を指定しないブロードキャスト方式に限らず、複数の宛先を指定するマルチキャスト方式を用いてもよく、または、単一の宛先を指定するユニキャスト方式で個別的に行うことも可能である。
【0112】
また、こうして親機に集約された識別情報(図8(b),図17(b)参照)は、親機となるゲーム装置10がトーナメントを勝ち進む過程でペアリング相手から取得した識別情報を自身の識別情報の後に順番に追記して得られたものなので、各ゲーム装置10の識別情報がどのような順序で記憶されているかで、トーナメントで行われたペアリングの履歴がわかる。そこで、親機となったゲーム装置10は、保有する識別情報の記憶順序に基づいて、ペアリングを反映したチーム分けを行う(図8(c),図17(c)参照)。なお、これにより得られたチーム情報は、たとえば識別情報と一緒にビーコンに含めて送信することで、各子機に通知される。親機および各子機では、チーム情報に基づいてゲーム処理たとえば得点の集計などを行う。
【0113】
なお、上記のような追記式に代えて、識別情報の記憶順序を示す情報たとえば時刻情報やペアリング回数情報などを別途作成して、この時刻情報またはペアリング回数情報を識別情報と共に記憶する方式を用いることもできる。この場合、識別情報はランダムな位置に記憶してよい。
【0114】
また、チーム情報は、識別情報とは別に(ビーコンには含めず)適宜なタイミングで送信してもよい。または、子機には通知せず、親機だけで利用してもよい。
【0115】
次に、具体的な動作例を説明する。まず、4(=22 )台参加の場合(シードなし)について、図7〜図9により説明する。図7には通信シーケンスの一例が、図8にはトーナメント式によるペアリング,IDリストの変遷およびチーム分けの一例が、そして図9にはトーナメントの進行につれて更新される画面表示の一例が、それぞれ4台参加の場合について示されている。
【0116】
前述のように、ペアリング相手は、ユーザ側で任意に決めることが可能であり、最初、各ゲーム装置10(A〜D)の下側LCD12には、図9(a)に示すような画面が表示される。なお、上側LCD14には、たとえば赤外線のイメージを伝える画像(図示せず)や、2台が互いに接近して赤外線通信を行っている場面(図6(a)参照)を示す画像などが表示される。
【0117】
ここでは、2台のゲーム装置10(A)および10(B)が互いに向かい合うことでペアを組み、他の2台のゲーム装置10(C)および10(D)が別のペアを組んだとする。それぞれペアが決まると、赤外線による通信が開始され、一方が他方に接続要求を行う。なお、双方が接続要求を行った場合には、先に行われた方が優先され、同時であればどちらか一方が選択される。
【0118】
図7を参照して、AおよびBのペアでは、ゲーム装置10(B)が接続要求を送信し、これを受信したゲーム装置10(A)は応答を送信する。ゲーム装置10(B)は、ゲーム装置10(A)から応答を受信した時点で従となって、ACK(ACKnowledgement)を送信する。ゲーム装置10(A)は、ゲーム装置10(B)からACKを受信した時点で主となって、自身が保有している識別情報(この時点ではA自身の識別情報のみ)を送信する。
【0119】
ゲーム装置10(B)は、こうしてゲーム装置10(A)から送信された識別情報を受信し、自身が保有している識別情報(この時点ではB自身の識別情報のみ)の後にこの受信した識別情報を追記し、そしてACKを送信する。ACKを受信したゲーム装置10(A)は、識別情報要求を送信し、これを受信したゲーム装置10(B)は、自身が保有している識別情報(この時点ではBおよびAの識別情報)を送信する。なお、こうして識別情報を送信する際、相手(A)から受信した識別情報は除外してもよい(以下同様)。
【0120】
ゲーム装置10(A)は、こうしてゲーム装置10(B)から送信された識別情報を受信し、自身が保有している識別情報(この時点ではA自身の識別情報のみ)の後にこれを追記する。しかし、受信前に既にゲーム装置10(A)が保有していた識別情報がある場合は、そのような識別情報(この時点ではA自身の識別情報は受信前から保有している)を追記しないようにしてもよい。以上で、AおよびBのペアリングが成立する。CおよびDのペアでも、上記と同様の通信が行われ、たとえばCが主、Dが従となって、互いに識別情報を通知し合う。
【0121】
こうして(A,B)および(C,D)のペアリングが成立すると、図8(a)に示すトーナメント表において1回目が終了したことになり、そこで主となったAおよびCは、2回目のペアリングに進む。すなわち、ペアリングが成立した時点で、主となったAおよびCの画面は図9(b)のように更新され、この画面の案内に従ってAおよびCが互いに接近して向かい合う。すると、AおよびCの間で上記と同様の赤外線通信が行われ、たとえばAが主、Cが従となって、互いに識別情報を通知し合う。一方、1回目のペアリングで従となったBおよびDの画面は図9(c)のように更新されており、BおよびDはこの画面の案内に従って待機する。
【0122】
こうして(A,C)のペアリングが成立すると、図8(a)に示すトーナメント表において2回目が終了したことになる。この時点で、唯一の主であるAが親機となり、従であるB〜Dはそれぞれ子機となる。ここで、従となったCの画面は、BやDと同様、図9(c)のように更新される。また、唯一主となったAの画面も、図9(c)のように更新される。
【0123】
また、このようなトーナメントの進行に連れて、A〜Dの保有する識別情報(IDリスト)は、図8(b)に示すように変遷する。すなわち、A〜DのIDリストには、初期状態では自身の識別情報つまり“A”,“B”,“C”,“D”しか記憶されていないが、1回目の後には、自身の識別情報に後にペアリング相手の識別情報が追記される結果、それぞれ“A,B”,“B,A”,“C,D”,“D,C”のように変化する。2回目の後には、A,CのIDリストがさらに“A,B,C,D”,“C,D,A,B”のように変化する。なお、従から主への識別情報の通知しか行わない場合には、BおよびDのIDリストは初期状態のまま変化せず、CのIDリストは1回目の後の状態つまり“C,D”が維持される。
【0124】
なお、図8(b)や図17(b),図18(a)で、各子機に番号1,2,…を付しているが、この番号は、親機のIDリストにおける記載順位(時系列)を示しており、後のゲーム処理でたとえば優先度情報として利用可能である。
【0125】
そして、親機であるAのIDリストつまり“A,B,C,D”から、図8(c)に示すようなチーム情報つまり“(A,B)/(C,D)”が作成される。このチーム情報は、“A,B,C,D”を前半および後半に2等分して得られるものであり、トーナメントの1回目でのペアリングに対応する。
【0126】
図7に戻って、次に、親機となったAは、自身が保有するIDリストつまり“A,B,C,D”とチーム情報“(A,B)/(C,D)”とをビーコンに含めてブロードキャストする。子機となったB〜Dは、こうして親機からブロードキャストされる、自身の識別情報を含んだビーコンを検出することによって、A〜D間で1対多の無線通信を通して対戦ゲームを行うのに必要な識別情報およびチーム情報を入手することができる。B〜Dが保有していたIDリストは、Aから受信したIDリストで上書きされる。この時点で、A〜Dの画面は、図9(d)のような画面に更新される。
【0127】
なお、図9(d)の画面で、さらにA〜Dの識別情報やチーム情報を表示してもよい。ここで表示する識別情報は、ユーザ名,ニックネームなどが好ましい。また、上側LCD14には、無線通信のイメージを伝える画像(図示せず)や、4台が互いに離れて無線通信を行っている場面(図6(b)参照)を示す画像などが表示される。
【0128】
ビーコンを受信したB〜Dからは、Aに向けて応答が送信される。(A,B)のチーム対(C,D)のチームで戦う対戦ゲームは、AがB〜Dから応答を受信した後に開始される。対戦ゲームでは、スコアは、チーム情報に基づいてチーム毎に集計され、スコアによって優勝チームないしチーム順位が決められる。
【0129】
以上のような動作は、各ゲーム装置10のCPU42が、メインメモリ48に記憶された図10に示すようなプログラムおよびデータに基づいて、図11〜図16に示すようなフローに従う処理を実行することによって実現される。すなわち、この実施例の対戦ゲームを行うとき、図10に示すように、メインメモリ48には、プログラムエリア48aおよびデータエリア48bが形成され、プログラムエリア48aにゲームプログラム70,入出力制御プログラム72,赤外線通信制御プログラム74および無線通信制御プログラム76などが格納される。
【0130】
ゲームプログラム70は、CPU42を介して各種ハードウェア(12〜40,44〜60)を制御して対戦ゲームを実現するメインのソフトウェアプログラムであり、その一部(赤外線によるペアリングを経て無線通信を確立するまでの部分)が図11〜図16のフローに対応している。なお、ゲームプログラム70には、ゲームの種類(タイトル,バージョンなど)を示すゲームIDが添付されている。
【0131】
入出力制御プログラム72は、ゲームプログラム70によって利用されるサブのソフトウェアプログラムであり、主として下側LCD12,操作部24,I/F回路40などを制御して画像出力,ボタン入力,タッチ入力などを実現する。赤外線通信制御プログラム74は、ゲームプログラム70によって利用されるサブプログラムであり、主としてローカル(赤外線)通信モジュール58を制御して他のゲーム装置10との赤外線通信を実現する。無線通信制御プログラム76は、ゲームプログラム70によって利用されるサブプログラムであり、主として無線通信モジュール56を制御して他のゲーム装置10との無線通信を実現する。
【0132】
データエリア48bは、パラメータエリア78,変数エリア80,識別情報(IDリスト)エリア82,チーム情報エリア84および描画データエリア86などを含む。パラメータエリア78には、参加人数(4人),最大リトライ回数(5回)といった、ゲームプログラム70によって参照されるパラメータが記憶される。なお、パラメータの値は、図示しないメニュー選択画面などを通じて適宜変更することができる。変数エリア80には、ペアリング回数,リトライ回数,主従フラグといった、ゲームプログラム70によって制御される変数が記憶される。
【0133】
識別情報(IDリスト)エリア82には、初期状態では自身の識別情報たとえば“A”が記憶されており、赤外線によるペアリングの度に相手の識別情報が順番に追記されていき、そして無線通信が確立した時点で全てのゲーム装置10の識別情報たとえば“A,B,C,D”が記憶される。チーム情報エリア82には、このような識別情報から作成されたチーム情報たとえば“(A,B)/(C,D)”が記憶される。描画データエリア86には、たとえば図9(a)〜図9(d)に示すような画面を描画するためのデータが記憶される。
【0134】
いま、下側LCD12には図示しないメニュー選択画面が表示されており、選択肢の1つである“対戦”がタッチパネル28で選択されると、CPU42は、図11〜図16のフローに従う処理を開始する。CPU42は、最初、図11のステップS1で、下側LCD12の画面を図9(a)のように更新する。図9(a)の画面には、“4人で対戦します…ペアを組む相手に赤外線を向けてください”といった案内が含まれている。そして、ステップS2で、変数エリア80に記憶されている変数の1つであるペアリング回数をリセットし(ペアリング回数=0)、ステップS3では、同じく変数の1つであるリトライ回数をリセットする(リトライ回数=0)。
【0135】
次に、CPU42は、ステップS5に進み、赤外線で接続要求を送信する。この接続要求の送信は、ユーザの指示に基づいて行われてもよいし、ユーザの指示によらずに自動的に行われてもよい。なお、赤外線で送信される信号(たとえば接続要求,応答,ACKなど:図7参照)は、不特定の相手に対するものであり、相手の識別情報(宛先)がなくても送信できる。次のステップS7では、赤外線で信号を受信したか否かを判別し、ここでNOであれば、ステップS9に移って、未受信状態(ステップS7の判別結果がNOの状態)が所定時間(たとえば10秒)以上継続したか否かをさらに判別する。ここでもNOであればステップS7に戻る。ステップS7でYESであれば、ステップS15およびS17を通じて信号の種類を判別し、判別結果に応じた処理(後述)を実行する。
【0136】
ステップS9でYESであれば、ステップS11に進んで、リトライ回数が所定回数(具体的には、パラメータエリア78に記憶されたパラメータの1つである最大リトライ回数:ここでは5回)に到達したか否かを判別する。ステップS11でYESであれば処理を終了し、NOであれば、ランダムに決定された時間だけステップS13で待機した後、ステップS5に戻る。この間、つまりステップS13で待機中に、リトライ回数がインクリメントされる。
【0137】
したがって、このゲーム装置10(A)と相手のゲーム装置10(B)との位置関係が適切でない(距離が離れ過ぎていたり、相手が存在していなかったり、赤外線の向きが大きくずれていたりする)と、赤外線による接続は確立されず、ランダムな時間間隔でリトライが実行される。リトライ回数が5回に達しても接続が確立されなければ、処理は終了される。このとき、接続を確立できなかったことを示すエラー表示などを画面に表示するようにしてもよい。この場合、改めてメニュー選択画面で“対戦”を選択することで、処理は再スタートすることになる。
【0138】
なお、ステップS13での待機時間は、たとえばCPU42が乱数などを利用してその都度決定する。または、リトライ回数が0の場合は5秒、リトライ回数が1の場合は4秒といったように、リトライ回数に応じた待機時間を予め決めておいてもよい。
【0139】
図12のステップS15では、受信した信号は接続要求であるか否かを判別し、ここでYESであれば、主としての処理であるステップS19〜S57を経てゲーム処理に移行もしくは処理を終了する。ステップS15でNOであれば、ステップS17に移って、受信した信号は応答であるか否かを判別し、ここでYESであれば、従としての処理であるステップS59〜S89を経てゲーム処理に移行もしくは処理を終了する。ステップS17でもNOであれば、ステップS11に戻る。したがって、受信した信号が接続要求でも応答でもない場合、これを受信しなかったものと見なし、リトライ回数のチェックおよびインクリメントを経てリトライを行うことになる。
【0140】
主としての処理は、詳しくは次のように実行される。すなわち、ステップS15でYESと判定された後、最初のステップS19で、受信した信号つまり接続要求に対して赤外線で応答を送信し、次のステップS21では、赤外線でACKを受信したか否かを判別する。ステップS21でNOであれば、ステップS23に移って、未受信状態(ステップS21の判別結果がNOの状態)が所定時間(たとえば10秒)以上継続したか否かをさらに判別し、ここでもNOであればステップS21に戻る。ステップS23でYESであれば、ステップS11に戻る。したがって、送信した応答に対してACKがない場合も、リトライ回数のチェックおよびインクリメントを経てリトライを行うことになる。
【0141】
ステップS21でYESであれば、ステップS25で、変数の1つである主従フラグを制御することで自身を主とし、その後、図13のステップS27に進んで、自身が保有している全ての識別情報つまり識別情報(IDリスト)エリア82の内容を示す信号を赤外線で送信する。
【0142】
なお、ステップS25の後、ステップS27に進む前に、ステップS26aおよびステップS26bを実行するようにしてもよい。これについては、後で説明する。
【0143】
次のステップS29では、赤外線でACKを受信したか否かを判別し、ここでNOであれば、ステップS31に移って、未受信状態(ステップS29の判別結果がNOの状態)が所定時間(たとえば10秒)以上継続したか否かをさらに判別し、ここでもNOであればステップS29に戻る。ステップS31でYESであれば、ステップS11に戻る。したがって、送信した識別情報に対してACKがない場合も、リトライ回数のチェックおよびインクリメントを経てリトライを行うことになる。
【0144】
ステップS29でYESであれば、ステップS33に進み、赤外線で識別情報要求を送信する。次のステップS35では、赤外線で識別情報を受信したか否かを判別し、ここでNOであれば、ステップS37に移って、未受信状態(ステップS35の判別結果がNOの状態)が所定時間(たとえば10秒)以上継続したか否かをさらに判別し、ここでもNOであればステップS35に戻る。ステップS37でYESであれば、ステップS11に戻る。したがって、識別情報要求に応じて識別情報が送られてこない場合も、リトライ回数のチェックおよびインクリメントを経てリトライを行うことになる。
【0145】
ステップS35でYESであれば、ステップS39に進み、自身が保有している識別情報の後に、受信した識別情報を順番に追記する。なお、自らが相手に送った識別情報も含まれた状態で送られてきた場合は、追記の際に、重複を取り除く処理が必要となる。あるいは、そのような状況のときは、追記という形をとらずに、受信した識別情報を上書きするようにしてもよい。ただし、上書きを行う場合には、通信相手である、従となるゲーム装置10が保有している識別情報の順番になってしまうため、識別情報の順番に応じてチーム分けを行う方法は、有効に行われないことがある。
【0146】
そして、ステップS40でペアリング回数をインクリメントした後、図14のステップS41に進み、ペアリング回数が所定回数(ここでは参加台数が4台ななので2回)に達したか否かを判別する。なお、この判別は、参加台数(ここでは4台)分の識別情報が集約されたか否かを判別することと同等であり、この場合、具体的には、識別情報(IDリスト)エリア82に何台分の識別情報が記憶されているかを検出して、この検出した台数が参加台数つまり4台に達していればYESと判別し、3台以下であればNOと判別すればよい。ステップS41でNOであれば、ステップS43に移って、下側LCD12の画面を図9(b)のように更新する。図9(b)の画面には、“リーダになりました…相手ペアのリーダに赤外線を向けてください” といった案内が含まれている。その後、ステップS3に戻って、同様の処理を繰り返す。つまり、リトライ回数をリセットした後、次の相手とのペアリングを行う。
【0147】
なお、図14のステップS41では、ペアリング回数が所定回数に達したとき、もしくは検出台数が参加台数に達したとき、識別情報が集約されたと判断しているが、自身が主となった回数をカウントして、その結果が所定回数に達した場合に自身が唯一の主となった(ひいては識別情報が集約された)と判断することも可能である。あるいは、タッチパネル28などを介して所定操作が行われたとき、自身が唯一の主となったとみなしてもよい。
【0148】
ステップS41でYESであれば、ステップS45に進んで、識別情報(IDリスト)エリア82に記憶されている4台分の識別情報(IDリスト)に基づいて、対戦ゲームのためのチーム分けを行う。フローチャートによる説明は省略するが、このサブルーチンでは、たとえば図8(c)に示されるように、IDリスト“A,B,C,D”を2等分する処理が行われ、これによって、図8(a)に示されるトーナメントでのペアリングを反映したチーム情報“(A,B)/(C,D)”が得られる。なお、参加台数によって、あるいはペアリングの手順によって、たとえば図17(c)に示されるように不均等に分けたり、あるいは図18(b)に示されるように3以上に等分したりしてもよい。
【0149】
CPU42はその後、ステップS47で、ローカル通信モジュール58を停止する一方、無線通信モジュール56を起動することによって、通信方式を赤外線から無線に切り換える。次のステップS49では、識別情報(IDリスト)エリア82に記憶されている全ての識別情報つまり参加台数分の識別情報(たとえば“A,B,C,D”)とチーム情報エリア84に記憶されているチーム情報(たとえば“(A,B)/(C,D)”)とを含む信号(ビーコン)を無線でブロードキャストし、このビーコンに対する従からの応答を待つ。そしてステップS51で、全ての従(たとえばB,C,D)から無線で所定時間(たとえば10秒)内に応答を受信したか否かを判別する。
【0150】
ブロードキャストから所定時間が経過しても無線で応答しない従が1つでもあれば、ステップS51でNOと判別し、ステップS53でエラー処理を実行した後、処理を終了する。このエラー処理には、たとえばエラーが発生した旨のメッセージの表示、ブロードキャストの再実行といった処理が含まれる。また、所定時間を経過したときに全ての従から応答がなかった場合でも、応答した従が1つでも存在すれば、応答した従とのみ後述のステップ55によるデータ通信を開始するようにしてもよい。その場合は、チーム情報を変更しなければならないので、主は応答した従のみをチーム分けして、確立した無線通信によって新たなチーム情報を再送すればよい。
【0151】
所定時間が経過する前に全ての従から無線で応答があれば、ステップS51からステップS55に進み、親機として各子機(たとえばB,C,D)と無線でデータ通信を開始し、以降、親機Aを中心に4台(A〜D)で協働してゲーム処理を実行することになる。そして、ステップS57(後述)に進む。
【0152】
一方、従としての処理は、詳しくは次のように実行される。すなわち、図12において、ステップS17でYESと判定された後、最初のステップS59で、受信した信号つまり応答に対するACKを赤外線で送信し、次のステップS61では、主従フラグを制御することで自身を従とする。そして図15のステップS63に進み、赤外線で識別情報を受信したか否かを判別し、ここでNOであれば、ステップS65に移って、未受信状態(ステップS63の判別結果がNOの状態)が所定時間(たとえば10秒)以上継続したか否かをさらに判別し、ここでもNOであればステップS63に戻る。ステップS65でYESであれば、ステップS11に戻る。したがって、ACKを送信しても識別情報が送られてこない場合も、リトライ回数のチェックおよびインクリメントを経てリトライを行うことになる。
【0153】
なお、ステップS61の後、ステップS63に進む前に、ステップS62aおよびステップS62bを実行するようにしてもよい。これについては、後で説明する。
【0154】
ステップS63でYESであれば、ステップS67に進み、自身が保有している識別情報の後に、受信した識別情報を順番に追記する。次のステップS69では、赤外線でACKを送信し、その次のステップS71では、赤外線で識別情報を受信したか否かを判別する。ここでNOであれば、ステップS73に移って、未受信状態(ステップS71の判別結果がNOの状態)が所定時間(たとえば10秒)以上継続したか否かをさらに判別し、ここでもNOであればステップS71に戻る。ステップS73でYESであれば、ステップS11に戻る。したがって、ACKを送信しても識別情報要求が送られてこない場合も、リトライ回数のチェックおよびインクリメントを経てリトライを行うことになる。
【0155】
ステップS71でYESであれば、ステップS75に進み、自身が保有している全ての識別情報つまり識別情報(IDリスト)エリア82の内容を示す信号を赤外線で送信する。ここでは、ステップS63で相手から受信した識別情報は含めないようにしてもよい。次のステップS77では、下側LCD12の画面を図9(c)のように更新する。図9(c)の画面には、“しばらくお待ちください…” といった案内が含まれている。そしてステップS79で、ローカル通信モジュール58を停止する一方、無線通信モジュール56を起動することによって、通信方式を赤外線から無線に切り換える。
【0156】
次に、図16のステップS80に進み、無線で信号(ビーコン)を受信したか否かを判別する。ここでNOであれば、ステップS83に移って、未受信状態(ステップS80の判別結果がNOの状態)が所定時間(たとえば10秒)以上継続したか否かをさらに判別し、ここでもNOであればステップS80に戻る。ステップS80でYESであれば、ステップS81に進んで当該信号が自身の識別情報を含むか否かをさらに判別し、ステップS81でNOであれば、当該信号を受信しなかったものとみなしてステップS83に移る。
【0157】
ステップS83でYESであれば、ステップS89でエラー処理を実行した後、処理を終了する。このエラー処理には、たとえばエラーが発生した旨のメッセージの表示といった処理が含まれる。所定時間が経過する前に自身の識別情報を含むビーコンが検出されると、ステップS81からステップS85に進み、ビーコンに含まれる主の識別情報に基づいて、無線で応答を送信する。そして、ステップS87で、子機として親機と無線でデータ通信を開始し、以降、親機Aを中心に4台(A〜D)で協働してゲーム処理を実行することになる。
【0158】
このステップS87または上述のステップS55に続くステップS57では、下側LCD12の画面を図9(e)のように更新する。図9(e)の画面には、“対戦を開始します…友達から離れてかまいません” といった案内が含まれている。CPU42の処理はその後、図示しないゲーム処理へと移行する。
【0159】
なお、この動作例では、主従が決定される(S25&S61:図12参照)と直ちに赤外線で識別情報の送受信を開始している(S27&S63:図13,図15参照)が、主従間でゲームID(図10参照)が一致しているか確認してからこれを開始してもよい。具体的には、ステップS25&S61で主従を決定した後に、ステップS26a&S62aでゲームIDを主従間で交換し合い、両者が一致するか否かをステップS26b&S62bで判別する。そして、互いのゲームIDが一致する場合に、ステップS27&S63に進んで識別情報の送受信を開始し、一致しない場合には、ステップS26cのエラー処理を経て処理を終了する。このエラー処理には、互いのゲームIDが一致しない旨を通知する処理などが含まれる。こうして、赤外線による接続が確立した直後に、互いのゲームIDを確認することで、対戦ゲームの種類,バージョン等が異なる場合には、その不一致をできるだけ早いタイミングでユーザに知らせることができる。
【0160】
次に、参加台数が2のべき乗とは異なる場合の一例について、図17により説明する。図17には、トーナメント式によるペアリング,IDリストの変遷およびチーム分けの一例が、5台参加の場合について示されている。なお、通信シーケンスは、図7に示した4台参加時の通信シーケンスと基本的に同様(1対1の赤外線通信が1セット増えるだけ)なので、図示および詳しい説明を省略する。フローチャートも、図11〜図16と同様なので省略する。
【0161】
ここでは、AおよびBがペアを組み、CおよびDが別のペアを組んだとする。Eは、この時点つまり1回目の段階では相手がいない。AおよびBのペアで赤外線通信が行われ、たとえばAが主となって、互いに識別情報を通知し合う。CおよびDのペアでも赤外線通信が行われ、たとえばCが主となって、互いに識別情報を通知し合う。こうして(A,B)および(C,D)のペアリングが成立すると、図17(a)に示すトーナメント表において1回目が終了したことになる。この時点で、A〜EのIDリストは、図17(b)の2段目に1回目の後として示したような状態となる。
【0162】
次に、1回目でシードされたEが、CおよびDのペアで主となった方つまりCとまた別のペアを組む。このCおよびEのペアで赤外線通信が行われ、たとえばEが主となって、互いに識別情報を通知し合う。こうして(C,E)のペアリングが成立すると、図17(a)に示すトーナメント表において2回目が終了したことになる。この時点で、A〜EのIDリストは、図17(b)の3段目に2回目の後として示したような状態となる。
【0163】
次に、CおよびEのペアで主となった方つまりEが、AおよびBのペアで主となった方つまりAとさらにまた別のペアを組む。このAおよびEのペアで赤外線通信が行われ、たとえばEが主となって、互いに識別情報を通知し合う。こうして(A,E)のペアリングが成立すると、図17(a)に示すトーナメント表において3回目が終了したことになる。この時点で、A〜EのIDリストは、図17(b)の4段目に3回目の後として示したような状態となる。そして、唯一の主であるEが親機となり、従であるA〜Dはいずれも子機となる。
【0164】
次に、親機であるEのIDリストつまり“E,C,D,A,B”から、図17(c)に示すようなチーム情報つまり“(E,C,D)/(A,B)”が作成される。このチーム情報は、“E,C,D,A,B”を前半および後半に3:2で区分して得られるものであり、トーナメントの1,2回目でのペアリングに対応する。
【0165】
次に、参加台数が2のべき乗である場合の他の一例について、図18により説明する。図18には、トーナメント式によるペアリングおよびチーム分けの一例が、8(=23 )台参加の場合について示されている。なお、通信シーケンスは、図7に示した4台参加時の通信シーケンスと基本的に同様(1対1の赤外線通信が4セット増えるだけ)なので、図示および詳しい説明を省略する。フローチャートも、図11〜図16と同様なので省略する。
【0166】
図18(a)のトーナメントでは、1回目で(A,B),(C,D),(E,F)および(G,H)のペアリングが成立し、2回目で(A,C)および(F,G)のペアリングが成立し、そして3回目で(A,G)のペアリングが成立している。3回目が終了した時点で、唯一の主であるAが親機となり、従であるB〜Hはいずれも子機となる。
【0167】
このような経過から、図18(b)に示すように、親機であるAのIDリストは、“A,B,C,D,G,H,F,E”となり、これを2等分することで、チーム情報として“(A,B,C,D)/(G,H,F,E)”が得られる。これは、トーナメントの1,2回目でのペアリングに対応する。
【0168】
なお、4チームに分かれて対戦する場合には、このIDリストを4等分することで“(A,B)/(C,D)/(G,H)/(F,E)”が得られる。これは、トーナメントの1回目でのペアリングに対応する。
【0169】
なお、上記の各動作例では、参加台数を4,5または8に固定したが、いくつかの選択肢(たとえば2台,4台および8台)の中からユーザが任意に選択できるようにしてもよい。さらには、所定の範囲内(たとえば2台〜8台)でユーザが任意の台数(たとえば5台)を指定できるようにしてもよい。
【0170】
以上から明らかなように、この実施例では、ネットワークシステム100は、各々が少なくとも自身の識別情報(A,B,C…)を記憶している3以上のゲーム装置10(A),10(B),10(C)…からなる。各ゲーム装置10(たとえばA)は、無線通信モジュール56およびローカル通信モジュール58を備えており、自身と自身以外の複数のゲーム装置10(B),10(C)…との間で、各々の識別情報(A,B,C…)を参照して無線通信モジュール56により1対多の無線通信を行うことができる。また、自身と自身以外の各ゲーム装置10(B),10(C)…との間で、各々の識別情報(A,B,C,…)を参照することなくローカル通信モジュール58により1対1の通信を行うこともできる。
【0171】
ゲーム装置10(A)は、自身(10(A))の識別情報(A)を記憶しているものの、自身(10(A))以外のゲーム装置10(B),10(C)…の識別情報(A,B,C…)を記憶しているとは限らないので、無線通信モジュール56による無線通信を行う場合、CPU42は、まず、ローカル通信モジュール58を介して自身(10(A))と自身以外のいずれか1つのゲーム装置10(たとえばB)との間で主従を決定して従側に記憶されている識別情報を主側に集約するペアリング処理を実行し、そしてこのペアリング処理で自身が主となった場合には別の1つのゲーム装置10(たとえばC)との間で次なるペアリング処理を実行する一方、自身が従となった場合には待機する(S1〜S43,S59〜S77)。次に、一連のペアリング処理の結果として、自身(10(A))が唯一の主となった場合には自身(10(A))を含む全てのゲーム装置10(A),10(B),10(C)…の識別情報(A,B,C…)を含む信号(たとえばビーコン)を無線通信モジュール56を介して送信する一方、自身(10(A))が従となった場合には唯一の主から送信される信号を無線通信モジュール56を介して受信する(S49〜S53,S80〜S89)。したがって、一連のペアリングを経て唯一の主となったゲーム装置10(A)つまり親機Aに全てのゲーム装置10(A),10(B),10(C)…の識別情報(A,B,C…)が集約される結果となり、一連のペアリングの過程で従となった各ゲーム装置10(B),10(C)…つまり各子機B,C,…は親機Aからこの識別情報(A,B,C…)の配信を受けることができる。
【0172】
これにより、3以上のゲーム装置10(A),10(B),10(C)…の間で、各々が自身の識別情報しか記憶していなくても、ローカル通信モジュール58によるペアリングを経て無線通信モジュール56による1対多の無線通信へと移行し、対戦ゲーム処理を行うことができる。また、今回のペアリングで主となったゲーム装置10だけが次回のペアリングに進むトーナメント方式を採用したので、各通信端末10が自身以外の全ての通信端末10とペアリングする総当り方式と比べ、ペアリング処理の回数を少なくできるので、ローカル通信(赤外線通信)から無線通信への移行をスムーズにかつ効率的に行うことができる。
【0173】
また、ゲーム装置10(A)では、自身(10(A))の識別情報(A)はメインメモリ48の識別情報エリア82に記憶されており、CPU42は、一連のペアリング処理で相手から通知された識別情報(B,C…)を順番に識別情報エリア82に追記することによって集約する(S39)。そして、自身(10(A))が唯一の主となった場合には、識別情報エリア82に記憶されている識別情報の順番に基づいて各ゲーム装置10(A),10(B)…をチーム分けし(S45)、その結果(チーム情報)を利用して対戦ゲーム処理を実行する。これにより、トーナメントでのペアリングを反映したチーム分けが可能となる。
【0174】
なお、この実施例では、トーナメントを通じて集約された識別情報(IDリスト)からチーム情報を作成したが、チーム情報に代えて、またはこれに加えて、優先度情報を作成してもよい。たとえば、図8(c)の例では、IDリスト“A,B,C,D”の記載順位をそのまま優先順位情報として利用することができる。あるいは、IDリストの1番目および3番目に高い優先度を、2番目および4番目に低い優先度を割り当てれば、前者はトーナメント方式の2回目まで進出したAおよびCを、後者は1回目のペアリングで従となってしまったBおよびDを示す。このような優先度情報もまた、トーナメントでのペアリングを反映しており、対戦ゲームにおいて利用されうる。例えば、優先度が高い端末は特定のアイテムを使用できるようにするなどの利用が可能である。
【0175】
また、この実施例では、ペアリングのためのデータ通信に赤外線方式を用いたが、指向性が強く、かつ/または、到達距離が短いものであれば、たとえば非接触ICカードに利用される方式など、他の無線通信方式を用いてもよい。換言すれば、通信可能範囲が狭く、不特定多数の相手が通信可能範囲内に入ることなく所望の相手だけを容易に通信可能範囲内に導入できるような方式であれば、上述のようなペアリングが行える。さらには、複数の参加者のうち所望の相手とだけ通信が行えればよいのだから、ワイヤレスである必要もなく、ペアを組む2台のゲーム装置10をケーブルで接続する方式つまり1対1の有線接続方式を用いることも可能である。
【0176】
さらに、この実施例では、主従の決定方法として、接続応答を受信した側が従、接続応答に対するACKを受信した側が主となるようにしているが、この方法に限られない。ペアリング時に、ランダムで一方のゲーム装置10を主とし、もう一方を従とする方法や、ペアリング時に主従をどちらにするかユーザに選択させるようにしてもよい。
【0177】
一方、対戦ゲームのためのデータ通信には、IEEE802.11上の独自プロトコルによる、1台の親機と複数の子機との間で行われる無線LAN方式を用いたが、赤外線方式などと比べて指向性が弱く到達距離が長い方式(通信可能範囲がたとえば半径数m程度以上のもの)であれば、他の無線通信方式を用いてもよい。典型例としては、Bluetooth,ZigBee(いずれも登録商標:通信可能範囲は10m〜100m)などが挙げられる。
【0178】
以上では、ゲーム装置10について説明したが、この発明は、自身と自身以外の複数の通信端末との間で識別情報を参照して1対多の無線通信を行う第1通信モジュールと、自身と自身以外の各通信端末との間で識別情報を参照することなく1対1の通信を行う第2通信モジュールと、コンピュータ(CPU)とを備える、通信端末(ゲーム機のほか、たとえば携帯電話機,PC,PDAなど)に適用できる。
【符号の説明】
【0179】
10(A〜H) …ゲーム装置
12 …下側LCD
56 …無線通信モジュール
58 …ローカル(赤外線)通信モジュール
42 …CPU
48 …メインメモリ
100 …ネットワークシステム
【特許請求の範囲】
【請求項1】
各々が少なくとも自身の識別情報を記憶している3以上の通信端末からなるネットワークシステムであって、
各前記通信端末は、
他の複数の前記通信端末との間で各々の識別情報を参照して無線通信を行う第1通信モジュール、
他の各前記通信端末との間で前記識別情報を参照することなく通信を行う第2通信モジュール、
前記第1通信モジュールによる無線通信の開始に先立って、前記第2通信モジュールを介して他のいずれか1つの前記通信端末との間で少なくとも一方の通信端末に記憶されている識別情報を他方の通信端末に記憶して集約するペアリング処理を実行し、そして前記ペアリング処理で第1条件を満たす毎に、別の1つの前記通信端末との間で少なくとも一方の通信端末に集約されている識別情報を他方の通信端末に記憶して集約するペアリング処理を繰り返し実行する、ペアリング手段、および
前記ペアリング手段による一連のペアリング処理の結果、第2条件を満たした場合には集約された全ての識別情報を含む信号を前記第1通信モジュールを介して他の前記通信端末へ送信し、第3条件を満たした場合には他の前記通信端末から送信される前記信号を前記第1通信モジュールを介して受信する、信号送受信手段を備える、ネットワークシステム。
【請求項2】
前記第1通信モジュールは前記第2通信モジュールよりも通信可能範囲が広い、請求項1記載のネットワークシステム。
【請求項3】
前記第2通信モジュールは前記第1通信モジュールよりも指向性が強い、請求項1または2記載のネットワークシステム。
【請求項4】
各前記通信端末は、前記ペアリング処理の結果、第3条件を満たした場合には、前記第1通信モジュールを介して他の通信端末からの信号を受信するまでの間待機する、請求項1記載のネットワークシステム。
【請求項5】
前記第1条件は、前記ペアリング処理において、他の前記通信端末に記憶されている識別情報を自身の通信端末に記憶して集約したことである、請求項1記載のネットワークシステム。
【請求項6】
各前記通信端末は、
他の前記通信端末へ、前記第2通信モジュールを介して接続要求を送信する接続要求送信手段、および
前記第2通信モジュールを介して他の前記通信端末から前記接続要求を受信する接続要求受信手段をさらに備え、
前記第1条件は、前記接続要求を受信したことである、請求項1記載のネットワークシステム。
【請求項7】
前記第2条件は、所定数の他の前記通信端末の識別情報を自身の通信端末に記憶して集約したことである、請求項1記載のネットワークシステム。
【請求項8】
各前記通信端末は、他の前記通信端末に記憶されている識別情報を自身の通信端末に記憶して集約するペアリング処理を実行した回数をカウントするカウント手段をさらに備え、
前記第2条件は、前記カウント手段によるカウントが所定回数に達したことである、請求項1記載のネットワークシステム。
【請求項9】
前記第3条件は、前記ペアリング処理において、自身の通信端末に記憶されている識別情報を他の前記通信端末に記憶して集約したことである、請求項1記載のネットワークシステム。
【請求項10】
各前記通信端末は、他のいずれか1つの前記通信端末との間において、自身の通信端末が集約側の通信端末となるか否かを決定する集約側通信端末決定手段をさらに備え、
前記ペアリング手段は、前記集約側通信端末決定手段によって集約側の通信端末になると決定されたとき、他の前記通信端末に記憶されている識別情報を自身の通信端末に記憶して集約する、請求項1記載のネットワークシステム。
【請求項11】
前記第1条件は、前記集約側通信端末決定手段によって集約側の通信端末になると決定されたことである、請求項10記載のネットワークシステム。
【請求項12】
前記第3条件は、前記集約側通信端末決定手段によって集約側の通信端末にならないと決定されることである、請求項10記載にネットワークシステム。
【請求項13】
各前記通信端末は、他のいずれか1つの前記通信端末との間で自身の通信端末が主となるか従となるかを決定する主従決定手段をさらに備え、
前記ペアリング手段は、前記主従決定手段によって主となることが決定されたとき、他の前記通信端末に記憶されている識別情報を自身の通信端末に記憶して集約し、前記主従決定手段によって従となることが決定されたとき、自身の通信端末に記憶されている識別情報を他の前記通信端末に記憶して集約する、請求項1記載のネットワークシステム。
【請求項14】
各前記通信端末は、
他のいずれか1つの前記通信端末へ、前記第2通信モジュールを介して接続要求を送信する接続要求送信手段、
前記第2通信モジュールを介して他の前記通信端末から前記接続要求を受信する接続要求受信手段、
前記接続要求を受信したとき、当該接続要求を送信した他の前記通信端末へ、前記第2通信モジュールを介して接続応答を送信する接続応答送信手段、および
前記第2通信モジュールを介して他の前記通信端末から前記接続応答を受信する接続応答受信手段をさらに備え、
前記主従決定手段は、前記接続要求を受信したとき、主となることを決定し、前記接続応答を受信したとき、従となることを決定する、請求項13記載のネットワークシステム。
【請求項15】
各前記通信端末は、
記憶されている識別情報を他の前記通信端末に送信する識別情報送信手段、および
他の前記通信端末に記憶されている識別情報を受信する識別情報受信手段をさらに備え、
前記ペアリング手段は、前記識別情報受信手段によって他の前記通信端末に記憶されている識別情報を受信したとき、当該識別情報を記憶して集約し、前記識別情報送信手段によって識別情報を他の前記通信端末に送信したとき、当該識別情報を他の前記通信端末に集約させ、
前記第1条件は、前記識別情報受信手段によって他の前記通信端末に記憶されている識別情報を受信したときであり、
前記第3条件は、前記識別情報送信手段によって識別情報を他の前記通信端末に送信したときである、請求項1記載のネットワークシステム。
【請求項16】
前記ペアリング処理で前記第1条件を満たした前記通信端末の次なるペアリング処理の相手は、別のペアリング処理で前記第1条件を満たした前記通信端末である、請求項1記載のネットワークシステム。
【請求項17】
各前記通信端末は自身の識別情報を記憶したメモリをさらに備え、
前記ペアリング手段は一連のペアリング処理で識別情報を順番に前記メモリに追記することによって集約する、請求項1記載のネットワークシステム。
【請求項18】
各前記通信端末は、前記信号送受信手段によって送信または受信した識別情報を参照することにより前記第1通信モジュールによる無線通信を開始して、自身と他の各前記通信端末との間で協働して情報処理を実行する処理手段をさらに備える、請求項1記載のネットワークシステム。
【請求項19】
各前記通信端末は、
前記第2条件を満たした場合に前記メモリに記憶されている識別情報の順番に基づいて各前記通信端末をチーム分けするチーム分け手段、および
前記信号送受信手段による送信または受信の後に前記第1通信モジュールによる無線通信を開始して、自身の通信端末と他の各前記通信端末との間で、前記チーム分け手段の結果を利用して、各前記通信端末がチームに分かれて対戦するためのゲーム処理を実行する処理手段をさらに備える、請求項17記載のネットワークシステム。
【請求項20】
前記各通信端末は、
前記信号送受信手段によって前記信号を受信したとき、当該信号に自身の識別情報が含まれているか否かを判別する自身識別情報判別手段、および
前記自身識別情報判別手段によって自身の識別情報が含まれていると判別されたとき、前記信号を参照することにより、前記第2条件を満たした他の前記通信端末と前記第1通信モジュールを介して無線通信を開始し、情報処理を実行する処理手段をさらに備える、請求項1記載のネットワークシステム。
【請求項21】
少なくとも自身の識別情報を記憶している通信端末であって、
他の複数の通信端末との間で各々の識別情報を参照して無線通信を行う第1通信モジュール、
他の各前記通信端末との間で前記識別情報を参照することなく通信を行う第2通信モジュール、
前記第1通信モジュールによる無線通信の開始に先立って、前記第2通信モジュールを介して他のいずれか1つの前記通信端末との間で少なくとも一方の通信端末に記憶されている識別情報を他方の通信端末に記憶して集約するペアリング処理を実行し、そして前記ペアリング処理で第1条件を満たす毎に、別の1つの前記通信端末との間で少なくとも一方の通信端末に集約されている識別情報を他方の通信端末に記憶して集約するペアリング処理を繰り返し実行する、ペアリング手段、および
前記ペアリング手段による一連のペアリング処理の結果、第2条件を満たした場合には集約された全ての識別情報を含む信号を前記第1通信モジュールを介して他の前記通信端末へ送信し、第3条件を満たした場合には他の前記通信端末から送信される前記信号を前記第1通信モジュールを介して受信する、信号送受信手段を備える、通信端末。
【請求項22】
少なくとも自身の識別情報を記憶しており、他の複数の通信端末との間で各々の識別情報を参照して無線通信を行う第1通信モジュール、および他の各前記通信端末との間で前記識別情報を参照することなく通信を行う第2通信モジュールを備える、通信端末のコンピュータを、
前記第1通信モジュールによる無線通信の開始に先立って、前記第2通信モジュールを介して他のいずれか1つの前記通信端末との間で少なくとも一方の通信端末に記憶されている識別情報を他方の通信端末に記憶して集約するペアリング処理を実行し、そして前記ペアリング処理で第1条件を満たす毎に、別の1つの前記通信端末との間で少なくとも一方の通信端末に集約されている識別情報を他方の通信端末に記憶して集約するペアリング処理を繰り返し実行する、ペアリング手段、および
前記ペアリング手段による一連のペアリング処理の結果、第2条件を満たした場合には集約された全ての識別情報を含む信号を前記第1通信モジュールを介して他の前記通信端末へ送信し、第3条件を満たした場合には他の前記通信端末から送信される前記信号を前記第1通信モジュールを介して受信する、信号送受信手段として機能させる、通信プログラム。
【請求項23】
各々が、少なくとも自身の識別情報を記憶しており、かつ、4つの通信端末の間で各々の識別情報を参照して無線通信を行う第1通信モジュール、および2つの通信端末の間で前記識別情報を参照することなく通信を行う第2通信モジュールを備える、4つの通信端末の間で通信を行う方法であって、
前記第1通信モジュールによる無線通信の開始に先立って、任意の2つの前記通信端末が第1のペアを組む一方、他の2つの前記通信端末が第2のペアを組み、
前記第1のペアを組んだ2つの前記通信端末の間で前記第2通信モジュールを介して一方の通信端末に記憶されている識別情報を他方の通信端末に記憶して集約する第1のペアリング処理を実行する一方、前記第2のペアを組んだ2つの前記通信端末の間でも前記第2通信モジュールを介して一方の通信端末に記憶されている識別情報を他方の通信端末に記憶して集約する第2のペアリング処理を実行し、
前記第1および第2のペアリング処理で識別情報を集約した2つの前記通信端末が第3のペアを組み、
前記第3のペアを組んだ2つの前記通信端末の間で前記第2通信モジュールを介して一方の通信端末に集約して記憶されている識別情報を他方の通信端末に記憶して集約する第3のペアリング処理を実行し、そして
前記第3のペアリング処理で識別情報を集約した前記通信端末が集約された全ての識別情報を含む信号を前記第1通信モジュールを介して送信する一方、他の3つの前記通信端末は前記第3のペアリング処理で識別情報を集約した前記通信端末から送信される前記信号を前記第1通信モジュールを介して受信する、通信方法。
【請求項24】
各々が少なくとも自身の識別情報を記憶している3以上の通信端末からなるネットワークシステムであって、
各前記通信端末は、
他の複数の前記通信端末との間で各々の識別情報を参照して無線通信を行う第1通信モジュール、
他の各前記通信端末との間で前記識別情報を参照することなく通信を行う第2通信モジュール、
前記第2通信モジュールを介して他のいずれか1つの前記通信端末との間で第1条件を満たした場合に当該他の前記通信端末に記憶されている識別情報を受信して記憶し、そして当該第1条件を満たす毎に別の1つの前記通信端末に記憶されている識別情報を受信して記憶する受信処理を繰り返す識別情報受信手段、および
前記識別情報受信手段による一連の受信処理の結果、第2条件を満たした場合には受信した全ての識別情報を含む信号を前記第1通信モジュールを介して他の前記通信端末へ送信する信号送信手段を備える、ネットワークシステム。
【請求項25】
各前記通信端末は、
他の前記通信端末へ、前記第2通信モジュールを介して接続要求を送信する接続要求送信手段、および
前記第2通信モジュールを介して他の前記通信端末から前記接続要求を受信する接続要求受信手段をさらに備え、
前記第1条件は、前記接続要求を受信したことである、請求項24記載のネットワークシステム。
【請求項1】
各々が少なくとも自身の識別情報を記憶している3以上の通信端末からなるネットワークシステムであって、
各前記通信端末は、
他の複数の前記通信端末との間で各々の識別情報を参照して無線通信を行う第1通信モジュール、
他の各前記通信端末との間で前記識別情報を参照することなく通信を行う第2通信モジュール、
前記第1通信モジュールによる無線通信の開始に先立って、前記第2通信モジュールを介して他のいずれか1つの前記通信端末との間で少なくとも一方の通信端末に記憶されている識別情報を他方の通信端末に記憶して集約するペアリング処理を実行し、そして前記ペアリング処理で第1条件を満たす毎に、別の1つの前記通信端末との間で少なくとも一方の通信端末に集約されている識別情報を他方の通信端末に記憶して集約するペアリング処理を繰り返し実行する、ペアリング手段、および
前記ペアリング手段による一連のペアリング処理の結果、第2条件を満たした場合には集約された全ての識別情報を含む信号を前記第1通信モジュールを介して他の前記通信端末へ送信し、第3条件を満たした場合には他の前記通信端末から送信される前記信号を前記第1通信モジュールを介して受信する、信号送受信手段を備える、ネットワークシステム。
【請求項2】
前記第1通信モジュールは前記第2通信モジュールよりも通信可能範囲が広い、請求項1記載のネットワークシステム。
【請求項3】
前記第2通信モジュールは前記第1通信モジュールよりも指向性が強い、請求項1または2記載のネットワークシステム。
【請求項4】
各前記通信端末は、前記ペアリング処理の結果、第3条件を満たした場合には、前記第1通信モジュールを介して他の通信端末からの信号を受信するまでの間待機する、請求項1記載のネットワークシステム。
【請求項5】
前記第1条件は、前記ペアリング処理において、他の前記通信端末に記憶されている識別情報を自身の通信端末に記憶して集約したことである、請求項1記載のネットワークシステム。
【請求項6】
各前記通信端末は、
他の前記通信端末へ、前記第2通信モジュールを介して接続要求を送信する接続要求送信手段、および
前記第2通信モジュールを介して他の前記通信端末から前記接続要求を受信する接続要求受信手段をさらに備え、
前記第1条件は、前記接続要求を受信したことである、請求項1記載のネットワークシステム。
【請求項7】
前記第2条件は、所定数の他の前記通信端末の識別情報を自身の通信端末に記憶して集約したことである、請求項1記載のネットワークシステム。
【請求項8】
各前記通信端末は、他の前記通信端末に記憶されている識別情報を自身の通信端末に記憶して集約するペアリング処理を実行した回数をカウントするカウント手段をさらに備え、
前記第2条件は、前記カウント手段によるカウントが所定回数に達したことである、請求項1記載のネットワークシステム。
【請求項9】
前記第3条件は、前記ペアリング処理において、自身の通信端末に記憶されている識別情報を他の前記通信端末に記憶して集約したことである、請求項1記載のネットワークシステム。
【請求項10】
各前記通信端末は、他のいずれか1つの前記通信端末との間において、自身の通信端末が集約側の通信端末となるか否かを決定する集約側通信端末決定手段をさらに備え、
前記ペアリング手段は、前記集約側通信端末決定手段によって集約側の通信端末になると決定されたとき、他の前記通信端末に記憶されている識別情報を自身の通信端末に記憶して集約する、請求項1記載のネットワークシステム。
【請求項11】
前記第1条件は、前記集約側通信端末決定手段によって集約側の通信端末になると決定されたことである、請求項10記載のネットワークシステム。
【請求項12】
前記第3条件は、前記集約側通信端末決定手段によって集約側の通信端末にならないと決定されることである、請求項10記載にネットワークシステム。
【請求項13】
各前記通信端末は、他のいずれか1つの前記通信端末との間で自身の通信端末が主となるか従となるかを決定する主従決定手段をさらに備え、
前記ペアリング手段は、前記主従決定手段によって主となることが決定されたとき、他の前記通信端末に記憶されている識別情報を自身の通信端末に記憶して集約し、前記主従決定手段によって従となることが決定されたとき、自身の通信端末に記憶されている識別情報を他の前記通信端末に記憶して集約する、請求項1記載のネットワークシステム。
【請求項14】
各前記通信端末は、
他のいずれか1つの前記通信端末へ、前記第2通信モジュールを介して接続要求を送信する接続要求送信手段、
前記第2通信モジュールを介して他の前記通信端末から前記接続要求を受信する接続要求受信手段、
前記接続要求を受信したとき、当該接続要求を送信した他の前記通信端末へ、前記第2通信モジュールを介して接続応答を送信する接続応答送信手段、および
前記第2通信モジュールを介して他の前記通信端末から前記接続応答を受信する接続応答受信手段をさらに備え、
前記主従決定手段は、前記接続要求を受信したとき、主となることを決定し、前記接続応答を受信したとき、従となることを決定する、請求項13記載のネットワークシステム。
【請求項15】
各前記通信端末は、
記憶されている識別情報を他の前記通信端末に送信する識別情報送信手段、および
他の前記通信端末に記憶されている識別情報を受信する識別情報受信手段をさらに備え、
前記ペアリング手段は、前記識別情報受信手段によって他の前記通信端末に記憶されている識別情報を受信したとき、当該識別情報を記憶して集約し、前記識別情報送信手段によって識別情報を他の前記通信端末に送信したとき、当該識別情報を他の前記通信端末に集約させ、
前記第1条件は、前記識別情報受信手段によって他の前記通信端末に記憶されている識別情報を受信したときであり、
前記第3条件は、前記識別情報送信手段によって識別情報を他の前記通信端末に送信したときである、請求項1記載のネットワークシステム。
【請求項16】
前記ペアリング処理で前記第1条件を満たした前記通信端末の次なるペアリング処理の相手は、別のペアリング処理で前記第1条件を満たした前記通信端末である、請求項1記載のネットワークシステム。
【請求項17】
各前記通信端末は自身の識別情報を記憶したメモリをさらに備え、
前記ペアリング手段は一連のペアリング処理で識別情報を順番に前記メモリに追記することによって集約する、請求項1記載のネットワークシステム。
【請求項18】
各前記通信端末は、前記信号送受信手段によって送信または受信した識別情報を参照することにより前記第1通信モジュールによる無線通信を開始して、自身と他の各前記通信端末との間で協働して情報処理を実行する処理手段をさらに備える、請求項1記載のネットワークシステム。
【請求項19】
各前記通信端末は、
前記第2条件を満たした場合に前記メモリに記憶されている識別情報の順番に基づいて各前記通信端末をチーム分けするチーム分け手段、および
前記信号送受信手段による送信または受信の後に前記第1通信モジュールによる無線通信を開始して、自身の通信端末と他の各前記通信端末との間で、前記チーム分け手段の結果を利用して、各前記通信端末がチームに分かれて対戦するためのゲーム処理を実行する処理手段をさらに備える、請求項17記載のネットワークシステム。
【請求項20】
前記各通信端末は、
前記信号送受信手段によって前記信号を受信したとき、当該信号に自身の識別情報が含まれているか否かを判別する自身識別情報判別手段、および
前記自身識別情報判別手段によって自身の識別情報が含まれていると判別されたとき、前記信号を参照することにより、前記第2条件を満たした他の前記通信端末と前記第1通信モジュールを介して無線通信を開始し、情報処理を実行する処理手段をさらに備える、請求項1記載のネットワークシステム。
【請求項21】
少なくとも自身の識別情報を記憶している通信端末であって、
他の複数の通信端末との間で各々の識別情報を参照して無線通信を行う第1通信モジュール、
他の各前記通信端末との間で前記識別情報を参照することなく通信を行う第2通信モジュール、
前記第1通信モジュールによる無線通信の開始に先立って、前記第2通信モジュールを介して他のいずれか1つの前記通信端末との間で少なくとも一方の通信端末に記憶されている識別情報を他方の通信端末に記憶して集約するペアリング処理を実行し、そして前記ペアリング処理で第1条件を満たす毎に、別の1つの前記通信端末との間で少なくとも一方の通信端末に集約されている識別情報を他方の通信端末に記憶して集約するペアリング処理を繰り返し実行する、ペアリング手段、および
前記ペアリング手段による一連のペアリング処理の結果、第2条件を満たした場合には集約された全ての識別情報を含む信号を前記第1通信モジュールを介して他の前記通信端末へ送信し、第3条件を満たした場合には他の前記通信端末から送信される前記信号を前記第1通信モジュールを介して受信する、信号送受信手段を備える、通信端末。
【請求項22】
少なくとも自身の識別情報を記憶しており、他の複数の通信端末との間で各々の識別情報を参照して無線通信を行う第1通信モジュール、および他の各前記通信端末との間で前記識別情報を参照することなく通信を行う第2通信モジュールを備える、通信端末のコンピュータを、
前記第1通信モジュールによる無線通信の開始に先立って、前記第2通信モジュールを介して他のいずれか1つの前記通信端末との間で少なくとも一方の通信端末に記憶されている識別情報を他方の通信端末に記憶して集約するペアリング処理を実行し、そして前記ペアリング処理で第1条件を満たす毎に、別の1つの前記通信端末との間で少なくとも一方の通信端末に集約されている識別情報を他方の通信端末に記憶して集約するペアリング処理を繰り返し実行する、ペアリング手段、および
前記ペアリング手段による一連のペアリング処理の結果、第2条件を満たした場合には集約された全ての識別情報を含む信号を前記第1通信モジュールを介して他の前記通信端末へ送信し、第3条件を満たした場合には他の前記通信端末から送信される前記信号を前記第1通信モジュールを介して受信する、信号送受信手段として機能させる、通信プログラム。
【請求項23】
各々が、少なくとも自身の識別情報を記憶しており、かつ、4つの通信端末の間で各々の識別情報を参照して無線通信を行う第1通信モジュール、および2つの通信端末の間で前記識別情報を参照することなく通信を行う第2通信モジュールを備える、4つの通信端末の間で通信を行う方法であって、
前記第1通信モジュールによる無線通信の開始に先立って、任意の2つの前記通信端末が第1のペアを組む一方、他の2つの前記通信端末が第2のペアを組み、
前記第1のペアを組んだ2つの前記通信端末の間で前記第2通信モジュールを介して一方の通信端末に記憶されている識別情報を他方の通信端末に記憶して集約する第1のペアリング処理を実行する一方、前記第2のペアを組んだ2つの前記通信端末の間でも前記第2通信モジュールを介して一方の通信端末に記憶されている識別情報を他方の通信端末に記憶して集約する第2のペアリング処理を実行し、
前記第1および第2のペアリング処理で識別情報を集約した2つの前記通信端末が第3のペアを組み、
前記第3のペアを組んだ2つの前記通信端末の間で前記第2通信モジュールを介して一方の通信端末に集約して記憶されている識別情報を他方の通信端末に記憶して集約する第3のペアリング処理を実行し、そして
前記第3のペアリング処理で識別情報を集約した前記通信端末が集約された全ての識別情報を含む信号を前記第1通信モジュールを介して送信する一方、他の3つの前記通信端末は前記第3のペアリング処理で識別情報を集約した前記通信端末から送信される前記信号を前記第1通信モジュールを介して受信する、通信方法。
【請求項24】
各々が少なくとも自身の識別情報を記憶している3以上の通信端末からなるネットワークシステムであって、
各前記通信端末は、
他の複数の前記通信端末との間で各々の識別情報を参照して無線通信を行う第1通信モジュール、
他の各前記通信端末との間で前記識別情報を参照することなく通信を行う第2通信モジュール、
前記第2通信モジュールを介して他のいずれか1つの前記通信端末との間で第1条件を満たした場合に当該他の前記通信端末に記憶されている識別情報を受信して記憶し、そして当該第1条件を満たす毎に別の1つの前記通信端末に記憶されている識別情報を受信して記憶する受信処理を繰り返す識別情報受信手段、および
前記識別情報受信手段による一連の受信処理の結果、第2条件を満たした場合には受信した全ての識別情報を含む信号を前記第1通信モジュールを介して他の前記通信端末へ送信する信号送信手段を備える、ネットワークシステム。
【請求項25】
各前記通信端末は、
他の前記通信端末へ、前記第2通信モジュールを介して接続要求を送信する接続要求送信手段、および
前記第2通信モジュールを介して他の前記通信端末から前記接続要求を受信する接続要求受信手段をさらに備え、
前記第1条件は、前記接続要求を受信したことである、請求項24記載のネットワークシステム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【公開番号】特開2011−124909(P2011−124909A)
【公開日】平成23年6月23日(2011.6.23)
【国際特許分類】
【出願番号】特願2009−282735(P2009−282735)
【出願日】平成21年12月14日(2009.12.14)
【出願人】(000233778)任天堂株式会社 (1,115)
【出願人】(398059541)株式会社ゲームフリーク (7)
【Fターム(参考)】
【公開日】平成23年6月23日(2011.6.23)
【国際特許分類】
【出願日】平成21年12月14日(2009.12.14)
【出願人】(000233778)任天堂株式会社 (1,115)
【出願人】(398059541)株式会社ゲームフリーク (7)
【Fターム(参考)】
[ Back to top ]