(57)【要約】 【課題】  端末同士の相互作用の履歴を他の端末から観察するのに好適な通信システム等を提供する。【解決手段】  通信システム２００において、サーバ装置２０９の紹介により端末２０１同士はネットワーク対戦等の相互作用を行い、他の端末２０１は、サーバ装置２０９からの指示によって当該相互作用の履歴の配信を受けることができるが、相互作用を行っている端末２０１から直接配信を受ける他の端末２０１の数には所定の閾値が設けられ、閾値に達するまでは、サーバ装置２０９は相互作用を行っている端末２０１から直接配信を受けるように指示を出し、閾値に達した後は、ひとまず相互作用を行っている端末２０１からサーバ装置２０９が配信を受け、相互作用の履歴の配信を希望する新たな端末２０１には、サーバ装置２０９が中継を行うように指示を出す。このほか、すでに履歴の配信を受けている端末２０１から再配信を受けるように指示を出しても良い。【選択図】  図２
2005182116.tif 000002
【特許請求の範囲】
【請求項１】
互いに相互作用する第１の端末と第２の端末と、
当該相互作用の経過を受信する他の端末と、
これらと通信可能に接続されるサーバ装置と、
を備える通信システムであって、
前記サーバ装置は、
（ａ）当該相互作用の経過を既に受信している他の端末の数が所定の閾値よりも少ない場合、新たに当該相互作用の経過を受信しようとする他の端末に対して、前記第１の端末もしくは前記第２の端末のいずれかから当該相互作用の経過を受信するよう指定し、
（ｂ）当該相互作用の経過を既に受信している他の端末の数が所定の閾値以上である場合、前記第１の端末もしくは前記第２の端末のいずれかから当該相互作用の経過を受信し、
新たに当該相互作用の経過を受信しようとする他の端末に対して、前記サーバ装置から当該相互作用の経過を受信するよう指定する
ことを特徴とするもの。
【請求項２】
複数の端末と、これらと通信可能に接続されるサーバ装置と、を備える通信システムであって、
（ａ）前記複数の端末のそれぞれは、
当該サーバ装置に相互作用相手の紹介を求める紹介要求を送付する紹介要求送付部、
当該サーバ装置から送付される紹介応答を受け付ける紹介応答受付部、
当該紹介応答が受け付けられた場合、当該紹介応答に指定される端末と相互作用する相互作用部、
他の端末または当該サーバ装置に当該相互作用の経過を送信する経過送信部、
当該サーバ装置に、他の端末同士の相互作用の経過の中継を求める中継要求を送付する中継要求送付部、
当該サーバ装置から送付される中継応答を受け付ける中継応答受付部、
当該中継応答が受け付けられた場合、当該中継応答に指定された端末またはサーバ装置から送信された相互作用の経過を受信する経過受信部、および、
前記受信された相互作用の経過を表示する経過表示部
を有し、
（ｂ）当該サーバ装置は、
前記複数の端末のうち第１の端末からの相互作用相手の紹介を求める紹介要求を受け付ける紹介要求受付部、
当該紹介要求が受け付けられた場合、前記複数の端末のうち当該第１の端末以外の端末（以下「第２の端末」という。）を選択して、当該第２の端末を指定する紹介応答を当該第１の端末に送付し、当該第１の端末を指定する紹介応答を当該第２の端末に送付する紹介応答送付部、
前記複数の端末のうち第３の端末からの、当該第１の端末と当該第２の端末との相互作用の経過の中継を求める中継要求を受け付ける中継要求受付部、
当該中継要求が受け付けられた場合、
（１）当該第１の端末と当該第２の端末との中継を既に求めている端末（以下「中継開始済端末」という。）の数が所定の閾値よりも少ない（以下「直接中継条件が満たされる」という。）ときは、当該第１の端末または当該第２の端末のいずれか一方から当該相互作用の経過を受信するよう指定する中継応答（以下「直接中継応答」という。）を、
（２）当該直接中継条件が満たされないときは、当該サーバ装置から当該相互作用の経過を受信するよう指定する中継応答（以下「間接中継応答」という。）を、
当該第３の端末に送付する中継応答送付部、および、
当該間接中継応答が送付された場合、当該第１の端末または当該第２の端末のいずれか一方から当該相互作用の経過を受信し、当該受信された相互作用の経過を、当該第３の端末に送信して、当該相互作用の経過を中継する経過中継部
を有する
ことを特徴とするもの。
【請求項３】
請求項２に記載の通信システムであって、
前記中継応答送付部は、当該直接中継応答に、当該第１の端末と当該第２の端末との相互作用の経過の中継について直前に送付された直接中継応答において指定された端末とは異なる端末から受信するよう指定する
ことを特徴とするもの。
【請求項４】
請求項２に記載の通信システムであって、
前記サーバ装置は、
当該直接条件が満たされないときは、当該中継開始済端末のそれぞれに、当該サーバ装置から当該相互作用の経過を受信するよう指定する変更要求を送付する変更要求送付部
をさらに有し、
前記複数の端末のそれぞれは、
前記サーバ装置から送信される変更要求を受け付ける変更要求受付部
をさらに有し、
前記複数の端末のそれぞれにおいて、
前記経過受信部は、当該変更要求が受け付けられた場合、当該中継応答に指定されたものから相互作用の経過を受信するのにかえて、当該変更要求に指定されたものから相互作用の経過を受信する
ことを特徴とするもの。
【請求項５】
請求項２に記載の通信システムであって、
前記サーバ装置において、
前記中継応答送付部は、当該直接中継条件が満たされないときは、複数の中継端末として当該中継開始済端末を選択し、当該間接中継応答に「当該サーバ装置から当該相互作用の経過を受信するよう」指定するのにかえて、「当該複数の中継端末のいずれかから当該相互作用の経過を受信するよう」指定して、当該間接中継応答を当該第３の端末に送付し、
前記複数の端末のそれぞれにおいて、
前記経過受信部は、当該中継応答に複数の中継端末が指定される場合、当該複数の中継端末からいずれか１つを選択して、当該選択されたものから送信された相互作用の経過を受信し、
前記経過送信部は、前記経過受信部により相互作用の経過が受信された場合、当該受信された相互作用の経過を他の端末に送信する
ことを特徴とするもの。
【請求項６】
請求項５に記載の通信システムであって、
前記複数の端末のそれぞれにおいて、前記経過受信部は、当該複数の中継端末から乱数によりいずれか１つを選択する
ことを特徴とするもの。
【請求項７】
請求項５に記載の通信システムであって、
前記複数の端末のそれぞれは、
当該複数の中継端末のそれぞれに対して負荷情報を求める情報要求を送付する情報要求送付部、
他の端末から送付された情報要求を受け付ける情報要求受付部、
当該情報要求を受け付けた場合、当該端末の現在の負荷情報を指定する情報応答を当該情報要求を送付した元へ送付する情報応答送付部、
当該複数の中継端末のそれぞれから送付された情報応答を受け付ける情報応答受付部
をさらに有し、
前記経過受信部は、当該複数の中継端末から受け付けた情報応答に指定された負荷情報により、負荷が最も低いものを選択する
ことを特徴とするもの。
【請求項８】
請求項５から７のいずれか１項に記載の通信システムであって、
前記サーバ装置において、
前記中継応答送付部は、当該複数の中継端末として「当該中継開始済端末を選択」するのにかえて、「当該中継開始済端末のうち、最近に中継要求を受け付けた所定の数のものを選択」する
ことを特徴とするもの。
【請求項９】
複数の端末と通信可能に接続されるサーバ装置であって、
前記複数の端末のうち第１の端末からの相互作用相手の紹介を求める紹介要求を受け付ける紹介要求受付部、
当該紹介要求が受け付けられた場合、前記複数の端末のうち当該第１の端末以外の端末（以下「第２の端末」という。）を選択して、当該第２の端末を指定する紹介応答を当該第１の端末に送付し、当該第１の端末を指定する紹介応答を当該第２の端末に送付する紹介応答送付部、
前記複数の端末のうち第３の端末からの、当該第１の端末と当該第２の端末との相互作用の経過の中継を求める中継要求を受け付ける中継要求受付部、
当該中継要求が受け付けられた場合、
（１）当該第１の端末と当該第２の端末との中継を既に求めている端末（以下「中継開始済端末」という。）の数が所定の閾値よりも少ない（以下「直接中継条件が満たされる」という。）ときは、当該第１の端末または当該第２の端末のいずれか一方から当該相互作用の経過を受信するよう指定する中継応答（以下「直接中継応答」という。）を、
（２）当該直接中継条件が満たされないときは、当該サーバ装置から当該相互作用の経過を受信するよう指定する中継応答（以下「間接中継応答」という。）を、
当該第３の端末に送付する中継応答送付部、および、
当該間接中継応答が送付された場合、当該第１の端末または当該第２の端末のいずれか一方から当該相互作用の経過を受信し、当該受信された相互作用の経過を、当該第３の端末に送信して、当該相互作用の経過を中継する経過中継部
を有する
ことを特徴とするもの。
【請求項１０】
サーバ装置および他の端末と通信可能に接続される端末であって、
当該サーバ装置に相互作用相手の紹介を求める紹介要求を送付する紹介要求送付部、
当該サーバ装置から送付される紹介応答を受け付ける紹介応答受付部、
当該紹介応答が受け付けられた場合、当該紹介応答に指定される端末と相互作用する相互作用部、
他の端末または当該サーバ装置に当該相互作用の経過を送信する経過送信部、
当該サーバ装置に、他の端末同士の相互作用の経過の中継を求める中継要求を送付する中継要求送付部、
当該サーバ装置から送付される中継応答を受け付ける中継応答受付部、
当該中継応答が受け付けられた場合、当該中継応答に指定された端末またはサーバ装置から送信された相互作用の経過を受信する経過受信部、および、
前記受信された相互作用の経過を表示する経過表示部
を有することを特徴とするもの。
【請求項１１】
複数の端末と通信可能に接続されるサーバ装置にて実行されるサービス方法であって、
前記複数の端末のうち第１の端末からの相互作用相手の紹介を求める紹介要求を受け付ける紹介要求受付工程、
当該紹介要求が受け付けられた場合、前記複数の端末のうち当該第１の端末以外の端末（以下「第２の端末」という。）を選択して、当該第２の端末を指定する紹介応答を当該第１の端末に送付し、当該第１の端末を指定する紹介応答を当該第２の端末に送付する紹介応答送付工程、
前記複数の端末のうち第３の端末からの、当該第１の端末と当該第２の端末との相互作用の経過の中継を求める中継要求を受け付ける中継要求受付工程、
当該中継要求が受け付けられた場合、
（１）当該第１の端末と当該第２の端末との中継を既に求めている端末（以下「中継開始済端末」という。）の数が所定の閾値よりも少ない（以下「直接中継条件が満たされる」という。）ときは、当該第１の端末または当該第２の端末のいずれか一方から当該相互作用の経過を受信するよう指定する中継応答（以下「直接中継応答」という。）を、
（２）当該直接中継条件が満たされないときは、当該サーバ装置から当該相互作用の経過を受信するよう指定する中継応答（以下「間接中継応答」という。）を、
当該第３の端末に送付する中継応答送付工程、および、
当該間接中継応答が送付された場合、当該第１の端末または当該第２の端末のいずれか一方から当該相互作用の経過を受信し、当該受信された相互作用の経過を、当該第３の端末に送信して、当該相互作用の経過を中継する経過中継工程
を有することを特徴とする方法。
【請求項１２】
サーバ装置および他の端末と通信可能に接続される端末にて実行される端末方法であって、
当該サーバ装置に相互作用相手の紹介を求める紹介要求を送付する紹介要求送付工程、
当該サーバ装置から送付される紹介応答を受け付ける紹介応答受付工程、
当該紹介応答が受け付けられた場合、当該紹介応答に指定される端末と相互作用する相互作用工程、
他の端末または当該サーバ装置に当該相互作用の経過を送信する経過送信工程、
当該サーバ装置に、他の端末同士の相互作用の経過の中継を求める中継要求を送付する中継要求送付工程、
当該サーバ装置から送付される中継応答を受け付ける中継応答受付工程、
当該中継応答が受け付けられた場合、当該中継応答に指定された端末またはサーバ装置から送信された相互作用の経過を受信する経過受信工程、および、
前記受信された相互作用の経過を表示する経過表示工程
を有することを特徴とする方法。
【請求項１３】
複数の端末と通信可能に接続されるコンピュータを、
前記複数の端末のうち第１の端末からの相互作用相手の紹介を求める紹介要求を受け付ける紹介要求受付部、
当該紹介要求が受け付けられた場合、前記複数の端末のうち当該第１の端末以外の端末（以下「第２の端末」という。）を選択して、当該第２の端末を指定する紹介応答を当該第１の端末に送付し、当該第１の端末を指定する紹介応答を当該第２の端末に送付する紹介応答送付部、
前記複数の端末のうち第３の端末からの、当該第１の端末と当該第２の端末との相互作用の経過の中継を求める中継要求を受け付ける中継要求受付部、
当該中継要求が受け付けられた場合、
（１）当該第１の端末と当該第２の端末との中継を既に求めている端末（以下「中継開始済端末」という。）の数が所定の閾値よりも少ない（以下「直接中継条件が満たされる」という。）ときは、当該第１の端末または当該第２の端末のいずれか一方から当該相互作用の経過を受信するよう指定する中継応答（以下「直接中継応答」という。）を、
（２）当該直接中継条件が満たされないときは、当該サーバ装置から当該相互作用の経過を受信するよう指定する中継応答（以下「間接中継応答」という。）を、
当該第３の端末に送付する中継応答送付部、および、
当該間接中継応答が送付された場合、当該第１の端末または当該第２の端末のいずれか一方から当該相互作用の経過を受信し、当該受信された相互作用の経過を、当該第３の端末に送信して、当該相互作用の経過を中継する経過中継部
として機能させることを特徴とするプログラム。
【請求項１４】
サーバ装置および他の端末と通信可能に接続されるコンピュータを、
当該サーバ装置に相互作用相手の紹介を求める紹介要求を送付する紹介要求送付部、
当該サーバ装置から送付される紹介応答を受け付ける紹介応答受付部、
当該紹介応答が受け付けられた場合、当該紹介応答に指定される端末と相互作用する相互作用部、
他の端末または当該サーバ装置に当該相互作用の経過を送信する経過送信部、
当該サーバ装置に、他の端末同士の相互作用の経過の中継を求める中継要求を送付する中継要求送付部、
当該サーバ装置から送付される中継応答を受け付ける中継応答受付部、
当該中継応答が受け付けられた場合、当該中継応答に指定された端末またはサーバ装置から送信された相互作用の経過を受信する経過受信部、および、
前記受信された相互作用の経過を表示する経過表示部
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信システム、サーバ装置、端末、サービス方法、端末方法、および、これらをコンピュータにて実現するプログラムに関する。
【背景技術】
【０００２】
インターネットの常時接続環境が普及するにともない、ネットワーク通信技術を用いたネットワークゲームの人気がますます高まっている。ネットワークゲームでは、プレイヤーが有するゲーム装置（「端末」ともいう。）と、ゲーム提供者が有するサーバ装置とが、インターネットというコンピュータ通信網で接続される。そして、プレイヤーは、その端末を介してゲーム世界内での種々の戦闘を行ったり、種々の課題を解決したり、種々のアイテムの交換や売買を行ったり、という相互作用を行う。
【０００３】
たとえば、ネットワーク対戦ゲームにおいては、各プレイヤーの端末は、ロビーと呼ばれるサーバ装置に接続し、ロビーから対戦相手の端末の紹介を受ける。そして、紹介された対戦相手端末とのネットワーク対戦を行う。また、ロビーからは、現在対戦が行われている端末同士の情報が、対戦を行っていない端末にも提供され、対戦を行っていない端末が、当該対戦を観戦することを可能とするものもある。
【０００４】
従来、このようなネットワーク対戦の様子など、端末同士の相互作用の履歴を他の端末から観察したい場合には、当該相互作用の履歴を放送通信によって提供するサーバ装置を特別に設ける、あるいは、相互作用を行っている端末から直接履歴を送信してもらうのが一般的であった。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、端末同士の相互作用の履歴を他の端末から観察したい場合、観察が可能な端末の数をできるだけ多くする一方で、できるだけ負荷を分散する技術が強く求められている。
本発明は、このような課題を解決するためになされたもので、端末同士の相互作用の履歴を他の端末から観察するのに好適な通信システム、サーバ装置、端末、サービス方法、端末方法、および、これらをコンピュータによって実現するプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
以上の目的を達成するため、本発明の原理にしたがって、下記の発明を開示する。
【０００７】
本発明の第１の観点に係る通信システムは、互いに相互作用する第１の端末と第２の端末と、当該相互作用の経過を受信する他の端末と、これらと通信可能に接続されるサーバ装置と、を備え、以下のように構成する。
なお、「相互作用」とは、第１の端末と第２の端末とが何らかのやりとりを行うことをいい、ゲーム等の場合には、典型的には、対戦を行ったり、チャットを行ったり等が考えられる。
【０００８】
すなわち、サーバ装置は、当該相互作用の経過を既に受信している他の端末の数が所定の閾値よりも少ない場合、新たに当該相互作用の経過を受信しようとする他の端末に対して、第１の端末もしくは第２の端末のいずれかから当該相互作用の経過を受信するよう指定する。
したがって、第１の端末と第２の端末との相互作用の様子を見ている端末の数が一定数よりも少なければ、直接これらから相互作用の様子の配信を受けるのである。
【０００９】
一方、サーバ装置は、当該相互作用の経過を既に受信している他の端末の数が所定の閾値以上である場合、前記第１の端末もしくは前記第２の端末のいずれかから当該相互作用の経過を受信し、新たに当該相互作用の経過を受信しようとする他の端末に対して、前記サーバ装置から当該相互作用の経過を受信するよう指定する。
したがって、第１の端末と第２の端末との相互作用の様子を見ている端末の数が一定数以上であれば、配信能力の高いサーバ装置が相互作用の様子の配信を行うのである。
本発明によれば、端末同士の相互作用の履歴を他の端末から観察するのに好適な通信システムを実現することができる。
本発明のその他の観点に係る通信システムは、複数の端末と、これらと通信可能に接続されるサーバ装置と、を備える通信システムであって、以下のように構成する。
【００１０】
すなわち、複数の端末のそれぞれは、紹介要求送付部、紹介応答受付部、相互作用部、経過送信部、中継要求送付部、中継応答受付部、経過受信部、経過表示部を有する。
【００１１】
そして、紹介要求送付部は、当該サーバ装置に相互作用相手の紹介を求める紹介要求を送付する。
一方、紹介応答受付部は、当該サーバ装置から送付される紹介応答を受け付ける。
さらに、相互作用部は、当該紹介応答が受け付けられた場合、当該紹介応答に指定される端末と相互作用する。
【００１２】
たとえば、ネットワーク対戦ゲームにおいては、紹介要求送付部、紹介応答受付部、相互作用部は、対戦相手を見つけて、対戦を開始する際に機能する。第１の端末と第２の端末が対戦をする場合には、まず、これらの端末（以下「対戦端末」という。）は、ロビー機能を有するサーバ装置に問い合わせを行い、相手方の端末のＩＰアドレスやポート番号、ＭＡＣアドレス、ユーザＩＤ等の情報をサーバ装置に要求し、これらを送付してもらうことによって、相手方の紹介をサーバ装置にしてもらう。典型的には、これらの情報を用いて、相手方とのピアツーピアの通信回線を確立し、当該回線を用いた通信により「対戦」という相互作用をする。
【００１３】
そして、経過送信部、他の端末または当該サーバ装置に当該相互作用の経過を送信する。
上記例のネットワーク対戦ゲームにおいては、対戦端末以外の端末に、当該対戦の様子を送信する。ネットワーク対戦ゲームでは、能力の優れたプレイヤー同士の対戦端末による対戦を、他の端末（以下「観戦端末」という。）から観戦させることがあるが、経過送信部は、当該観戦のための情報を、対戦端末から観戦端末に送信するものである。
【００１４】
一方、中継要求送付部は、当該サーバ装置に、他の端末同士の相互作用の経過の中継を求める中継要求を送付する。
さらに、中継応答受付部は、当該サーバ装置から送付される中継応答を受け付ける。
そして、経過受信部は、当該中継応答が受け付けられた場合、当該中継応答に指定された端末またはサーバ装置から送信された相互作用の経過を受信する。
一方、経過表示部は、受信された相互作用の経過を表示する。
【００１５】
上記例のネットワーク対戦ゲームにおいては、各端末が観戦端末となるときに、中継要求送付部、中継応答受付部、経過受信部、経過表示部が機能する。
上記ネットワーク対戦ゲームの場合、典型的には、どの端末同士が対戦しているかの情報は、当該サーバ装置のロビー機能等を用いて調べることができる。そこで、観戦をしたい場合には、まず、ロビー機能を有するサーバ装置に対戦端末同士を指定して、その対戦の観戦をしたい旨を知らせる。すると、サーバ装置から、観戦の際に利用すべき通信機器を指定した中継応答が返送される。
【００１６】
端末に、中継応答に指定された通信機器から「相互作用の経過」に相当する対戦の様子の情報を受信させて、これを表示させることによって、観戦端末のユーザは、対戦端末同士のネットワーク対戦の様子を観戦することができるようになる。なお、中継応答に指定される通信機器は、典型的には、当該サーバ装置、または、当該対戦端末であるが、後述するように、当該対戦端末を観戦するほかの観戦端末が指定されることもありうる。
【００１７】
一方、当該サーバ装置は、紹介要求受付部、紹介応答送付部、中継要求受付部、中継応答送付部、経過中継部を有する。
そして、紹介要求受付部は、複数の端末のうち第１の端末からの相互作用相手の紹介を求める紹介要求を受け付ける。
さらに、紹介応答送付部は、当該紹介要求が受け付けられた場合、複数の端末のうち当該第１の端末以外の端末（以下「第２の端末」という。）を選択して、当該第２の端末を指定する紹介応答を当該第１の端末に送付し、当該第１の端末を指定する紹介応答を当該第２の端末に送付する。
上記のネットワーク対戦ゲームの場合、紹介要求受付部、紹介応答送付部は、ロビー機能のうち、対戦相手を紹介するために機能する。すなわち、対戦相手の紹介を求められた場合は、各種の適切なアルゴリズムにより対戦相手を決定し、対戦相手の情報を、それぞれの対戦端末に送付する。
【００１８】
一方、中継要求受付部は、複数の端末のうち第３の端末からの、当該第１の端末と当該第２の端末との相互作用の経過の中継を求める中継要求を受け付ける。
ある端末から、対戦端末同士のネットワーク対戦を観戦したいとの要望があったときに、これを中継要求として受け付けるものである。
【００１９】
さらに、中継応答送付部は、当該中継要求が受け付けられた場合、当該第１の端末と当該第２の端末との中継を既に求めている端末（以下「中継開始済端末」という。）の数が所定の閾値よりも少ない（以下「直接中継条件が満たされる」という。）ときは、当該第１の端末または当該第２の端末のいずれか一方から当該相互作用の経過を受信するよう指定する中継応答（以下「直接中継応答」という。）を、当該第３の端末に送付する。当該直接中継条件が満たされないときは、当該サーバ装置から当該相互作用の経過を受信するよう指定する中継応答（以下「間接中継応答」という。）を、当該第３の端末に送付する。
【００２０】
すなわち、ある対戦端末同士のネットワーク対戦の様子をすでに観戦している観戦端末の数が所定の数未満である場合には、当該対戦端末から直接対戦の様子を受信するように、新たな観戦端末に通知するのである。
【００２１】
そして、経過中継部は、当該間接中継応答が送付された場合、当該第１の端末または当該第２の端末のいずれか一方から当該相互作用の経過を受信し、当該受信された相互作用の経過を、当該第３の端末に送信して、当該相互作用の経過を中継する。
観戦端末の数が所定の数以上である場合には、当該サーバ装置から観戦の様子を受信するように、新たな観戦端末に通知するとともに、当該サーバ装置は、当該対戦端末から、対戦の様子を受信して、これを、必要な観戦端末に送信する。
【００２２】
本発明は、このように、ピアツーピア通信に適した端末同士で相互作用をさせ、当該相互作用を他の同種の端末で観察させたい場合等に好適である。たとえば、ネットワーク対戦ゲームのロビー機能を有するサーバ装置等において、対戦端末から適切に観戦端末へ対戦の様子を送信させるとともに、対戦端末の負荷が大きくなりそうな場合には、能力の高いサーバ装置によって対戦の様子を中継することができるようになる。
【００２３】
また、本発明の通信システムにおいて、中継応答送付部は、当該直接中継応答に、当該第１の端末と当該第２の端末との相互作用の経過の中継について直前に送付された直接中継応答において指定された端末とは異なる端末から受信するよう指定するように構成することができる。
すなわち、ある対戦端末同士の対戦の観戦の申し込みが複数あった場合、直前の申し込みに対して対戦端末の一方から対戦の様子を受信するよう直接中継応答に指定したときは、次の申し込みに対しては対戦端末の他方から対戦の様子を受信するよう指定することとなる。
本発明によれば、対戦端末が観戦の様子を送信する場合の負荷の偏りをできるだけ減らして、対戦様子の配信の負荷分散を図ることができるようになる。
【００２４】
また、本発明の通信システムにおいて、サーバ装置は、変更要求送付部をさらに有し、複数の端末のそれぞれは、変更要求受付部をさらに有し、以下のように構成することができる。
すなわち、サーバ装置において、変更要求送付部は、当該直接条件が満たされないときは、当該中継開始済端末のそれぞれに、当該サーバ装置から当該相互作用の経過を受信するよう指定する変更要求を送付する。
【００２５】
一方、複数の端末のそれぞれにおいて、変更要求受付部サーバ装置から送信される変更要求を受け付け、経過受信部は、当該変更要求が受け付けられた場合、当該中継応答に指定されたものから相互作用の経過を受信するのにかえて、当該変更要求に指定されたものから相互作用の経過を受信するように構成することができる。
【００２６】
たとえば、ネットワーク対戦ゲームにおいて、ある対戦端末同士の対戦を観戦する観戦端末の数が一定数以上となる場合は、観戦端末の数が極めて多くなることが多い。これは、優れたプレイヤーの数が少ないため、優れたプレイヤー同士の対戦の機会は少なくなる一方、このような優れたプレイヤー同士の対戦は、多くのプレイヤーが観戦したいと思う傾向があるからである。
【００２７】
そこで、このような場合には、対戦端末の様子は、すべてサーバ装置で配信することとし、対戦端末から直接対戦の様子を受信する設定となっている観戦端末については、対戦の様子の配信元を当該サーバ装置に変更させるのである。
【００２８】
本発明によれば、たとえば、ネットワーク対戦ゲームにおいて、対戦端末の対戦の様子をサーバ装置でまとめて配信することができるようになる。
【００２９】
また、本発明の通信システムは、以下のように構成することができる。
すなわち、サーバ装置において、中継応答送付部が当該直接中継条件が満たされないときは、複数の中継端末として当該中継開始済端末を選択し、当該間接中継応答に「当該サーバ装置から当該相互作用の経過を受信するよう」指定するのにかえて、「当該複数の中継端末のいずれかから当該相互作用の経過を受信するよう」指定して、当該間接中継応答を当該第３の端末に送付する。
【００３０】
一方、複数の端末のそれぞれにおいて、経過受信部は、当該中継応答に複数の中継端末が指定される場合、当該複数の中継端末からいずれか１つを選択して、当該選択されたものから送信された相互作用の経過を受信し、経過送信部は、経過受信部により相互作用の経過が受信された場合、当該受信された相互作用の経過を他の端末に送信する。
【００３１】
上記発明においては、観戦端末の数が所定の数以上となった場合には、サーバ装置が対戦の様子を配信していたが、本発明では、すでに観戦端末となっている端末に、新たな観戦端末への配信をさせるものである。したがって、端末同士の通信によって、対戦の様子の配信が行われるのである。
本発明によれば、ネットワーク対戦ゲーム等において対戦様子を配信する場合に、サーバ装置への配信の負荷が高くなることを防止することができ、観戦端末間の通信によって対戦様子の配信ができるようになる。
【００３２】
また、本発明の通信システムでは、複数の端末のそれぞれにおいて、経過受信部は、当該複数の中継端末から乱数によりいずれか１つを選択するように構成することができる。
【００３３】
すなわち、すでに観戦端末となっている端末（中継端末）から対戦の様子を受信するように間接中継応答に指定された場合は、当該間接中継応答には、中継端末が複数指定される。したがって、間接中継応答を受け付けた端末では、複数指定された中継端末からいずれか１つを乱数により選択する。
本発明により、中継端末間での対戦の様子の配信の負荷分散を図ることができるようになる。
【００３４】
また、本発明の通信システムにおいて、複数の端末のそれぞれは、情報要求送付部、情報要求受付部、情報応答送付部、情報応答受付部をさらに有し、以下のように構成することができる。
【００３５】
すなわち、情報要求送付部は、当該複数の中継端末のそれぞれに対して負荷情報を求める情報要求を送付する。
一方、情報要求受付部は、他の端末から送付された情報要求を受け付ける。
情報要求送付部は、端末Ａがこれから観戦端末になろうとする場合に機能し、情報要求受付部は、すでに観戦端末となっている端末Ｂが、中継端末となろうとする場合に機能する。すなわち、端末Ａの情報要求送付部から端末Ｂの情報要求受付部に、情報要求が送付されるのである。
【００３６】
さらに、情報応答送付部は、当該情報要求を受け付けた場合、当該端末の現在の負荷情報を指定する情報応答を当該情報要求を送付した元へ送付する。
【００３７】
一方、情報応答受付部は、当該複数の中継端末のそれぞれから送付された情報応答を受け付ける。
すなわち、端末Ｂは、自身の負荷の状況を調べ、その情報を情報応答送付部を用いて、端末Ａの情報応答受付部に送付する。
【００３８】
そして、経過受信部は、当該複数の中継端末から受け付けた情報応答に指定された負荷情報により、負荷が最も低いものを選択する。
端末Ｂには、複数の中継端末の候補からその負荷の状況が集められるので、最も負荷が低い端末を選択して、当該選択された端末から対戦様子の配信を受けるのである。
【００３９】
また、本発明では、サーバ装置において、中継応答送付部は、当該複数の中継端末として「当該中継開始済端末を選択」するのにかえて、「当該中継開始済端末のうち、最近に中継要求を受け付けた所定の数のものを選択」するように構成することができる。
すなわち、新たに観戦を申し込んできた端末があった場合には、最近観戦を申し込んできた端末から所定の数を、観戦を申し込んできた順に選択して、これを中継端末の候補とするのである。
本発明によれば、対戦様子の配信において、中継端末間の負荷分散を図り、負荷の平均化を図ることができるようになる。
【００４０】
本発明の他の観点に係るサーバ装置は、上記通信システムにおけるサーバ装置である。
本発明の他の観点に係る端末は、上記通信システムにおける端末である。
【００４１】
本発明の他の観点に係るサービス方法は、複数の端末と通信可能に接続されるサーバ装置にて実行され、紹介要求受付工程、紹介応答送付工程、中継要求受付工程、中継応答送付工程、経過中継工程を備え、以下のように構成する。
すなわち、紹介要求受付工程では、複数の端末のうち第１の端末からの相互作用相手の紹介を求める紹介要求を受け付ける。
【００４２】
一方、紹介応答送付工程では、当該紹介要求が受け付けられた場合、複数の端末のうち当該第１の端末以外の端末（以下「第２の端末」という。）を選択して、当該第２の端末を指定する紹介応答を当該第１の端末に送付し、当該第１の端末を指定する紹介応答を当該第２の端末に送付する。
さらに、中継要求受付工程では、複数の端末のうち第３の端末からの、当該第１の端末と当該第２の端末との相互作用の経過の中継を求める中継要求を受け付ける。
【００４３】
そして、中継応答送付工程では、当該中継要求が受け付けられた場合、当該第１の端末と当該第２の端末との中継を既に求めている端末（以下「中継開始済端末」という。）の数が所定の閾値よりも少ない（以下「直接中継条件が満たされる」という。）ときは、当該第１の端末または当該第２の端末のいずれか一方から当該相互作用の経過を受信するよう指定する中継応答（以下「直接中継応答」という。）を、当該第３の端末に送付する。当該直接中継条件が満たされないときは、当該サーバ装置から当該相互作用の経過を受信するよう指定する中継応答（以下「間接中継応答」という。）を、当該第３の端末に送付する。
【００４４】
一方、経過中継工程では、当該間接中継応答が送付された場合、当該第１の端末または当該第２の端末のいずれか一方から当該相互作用の経過を受信し、当該受信された相互作用の経過を、当該第３の端末に送信して、当該相互作用の経過を中継する。
【００４５】
本発明の他の観点に係る端末方法は、サーバ装置および他の端末と通信可能に接続される端末にて実行され、紹介要求送付工程、紹介応答受付工程、相互作用工程、経過送信工程、中継要求送付工程、中継応答受付工程、経過受信工程、経過表示工程を備え、以下のように構成する。
すなわち、紹介要求送付工程では、当該サーバ装置に相互作用相手の紹介を求める紹介要求を送付する。
一方、紹介応答受付工程では、当該サーバ装置から送付される紹介応答を受け付ける。
さらに、相互作用工程では、当該紹介応答が受け付けられた場合、当該紹介応答に指定される端末と相互作用する。
【００４６】
そして、経過送信工程では、他の端末または当該サーバ装置に当該相互作用の経過を送信する。
一方、中継要求送付工程では、当該サーバ装置に、他の端末同士の相互作用の経過の中継を求める中継要求を送付する。
さらに、中継応答受付工程では、当該サーバ装置から送付される中継応答を受け付ける。
そして、経過受信工程では、当該中継応答が受け付けられた場合、当該中継応答に指定された端末またはサーバ装置から送信された相互作用の経過を受信する。
さらに、経過表示工程では、受信された相互作用の経過を表示する。
【００４７】
本発明の他の観点に係るプログラムは、コンピュータを、上記のサーバ装置の各部として機能させ、または、コンピュータに、上記のサービス方法の各工程を実行させるように構成する。
本発明の他の観点に係るプログラムは、コンピュータを、上記の端末の各部として機能させ、または、コンピュータに、上記の端末方法の各工程を実行させるように構成する。
【００４８】
また、本発明のプログラムは、コンパクトディスク、フレキシブルディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、半導体メモリ等のコンピュータ読取可能な情報記録媒体に記録することができる。上記プログラムは、当該プログラムが実行されるコンピュータとは独立して、コンピュータ通信網を介して配布・販売することができる。また、上記情報記録媒体は、当該コンピュータとは独立して配布・販売することができる。
【発明の効果】
【００４９】
本発明によれば、端末同士の相互作用の履歴を他の端末から観察するのに好適な通信システム、サーバ装置、端末、サービス方法、端末方法、および、これらをコンピュータによって実現するプログラムを提供することができる。
【発明を実施するための最良の形態】
【００５０】
以下に本発明の実施形態を説明する。以下では、理解を容易にするため、ゲーム装置に本発明が適用される実施形態を説明するが、各種のコンピュータ、ＰＤＡ、携帯電話などの情報処理装置においても同様に本発明を適用することができる。すなわち、以下に説明する実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素または全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。
【実施例１】
【００５１】
図１は、本発明の実施形態の１つに係る端末が実現される典型的なゲーム装置の概要構成を示す模式図である。以下、本図を参照して説明する。
【００５２】
ゲーム装置１００は、ＣＰＵ（Central Processing Unit）１０１と、ＲＯＭ（Read Only Memory）１０２と、ＲＡＭ（Random Access Memory）１０３と、インターフェース１０４と、コントローラ１０５と、外部メモリ１０６と、画像処理部１０７と、ＤＶＤ（Digital Versatile Disk）−ＲＯＭドライブ１０８と、ＮＩＣ（Network Interface Card）１０９と、を備える。
【００５３】
ゲーム用のプログラムおよびデータを記憶したＤＶＤ−ＲＯＭをＤＶＤ−ＲＯＭドライブ１０８に装着して、ゲーム装置１００の電源を投入することにより、当該プログラムが実行され、本実施形態の端末が実現される。
【００５４】
ＣＰＵ  １０１は、ゲーム装置１００全体の動作を制御し、各構成要素と接続され制御信号やデータをやりとりする。
【００５５】
ＲＯＭ  １０２には、電源投入直後に実行されるＩＰＬ（Initial Program Loader）が記録され、これが実行されることにより、ＤＶＤ−ＲＯＭに記録されたプログラムをＲＡＭ  １０３に読み出してＣＰＵ  １０１による実行が開始される。また、ＲＯＭ  １０２には、ゲーム装置１００全体の動作制御に必要なオペレーティングシステムのプログラムや各種のデータが記録される。
【００５６】
ＲＡＭ  １０３は、データやプログラムを一時的に記憶するためのもので、ＤＶＤ−ＲＯＭから読み出したプログラムやデータ、その他ゲームの進行やチャット通信に必要なデータが保持される。
【００５７】
インターフェース１０４を介して接続されたコントローラ１０５は、ユーザがゲーム実行の際に行う操作入力を受け付ける。
【００５８】
インターフェース１０４を介して脱自在に接続された外部メモリ１０６には、ゲームの進行状態を示すデータ、チャット通信のログ（記録）のデータなどが書き換え可能に記憶される。ユーザは、コントローラ１０５を介して指示入力を行うことにより、これらのデータを適宜外部メモリ１０６に記録することができる。
【００５９】
ＤＶＤ−ＲＯＭドライブ１０８に装着されるＤＶＤ−ＲＯＭには、ゲームを実現するためのプログラムとゲームに付随する画像データや音声データが記録される。ＣＰＵ  １０１の制御によって、ＤＶＤ−ＲＯＭドライブ１０８は、これに装着されたＤＶＤ−ＲＯＭに対する読み出し処理を行って、必要なプログラムやデータを読み出し、これらはＲＡＭ  １０３等に一時的に記憶される。
【００６０】
画像処理部１０７は、ＤＶＤ−ＲＯＭから読み出されたデータをＣＰＵ  １０１や画像処理部１０７が備える画像演算プロセッサ（図示せず）によって加工処理した後、これを画像処理部１０７が備えるフレームメモリ（図示せず）に記録する。フレームメモリに記録された画像情報は、所定の同期タイミングでビデオ信号に変換され画像処理部１０７に接続されるモニタ（図示せず）へ出力される。これにより、各種の画像表示が可能となる。
【００６１】
画像演算プロセッサは、２次元の画像の重ね合わせ演算やαブレンディング等の透過演算、各種の飽和演算を高速に実行できる。
また、仮想３次元空間に配置され、各種のテクスチャ情報が付加されたポリゴン情報を、Ｚバッファ法によりレンダリングして、所定の視点位置から仮想３次元空間に配置されたポリゴンを俯瞰したレンダリング画像を得る演算の高速実行も可能である。
【００６２】
さらに、ＣＰＵ  １０１と画像演算プロセッサが協調動作することにより、文字の形状を定義するフォント情報にしたがって、文字列を２次元画像としてフレームメモリへ描画したり、各ポリゴン表面へ描画することが可能である。フォント情報は、ＲＯＭ  １０２に記録されているが、ＤＶＤ−ＲＯＭに記録された専用のフォント情報を利用することも可能である。
【００６３】
ＮＩＣ  １０９は、ゲーム装置１００をインターネット等のコンピュータ通信網（図示せず）に接続するためのものであり、ＬＡＮ（Local Area Network）を構成する際に用いられる１０ＢＡＳＥ−Ｔ／１００ＢＡＳＥ−Ｔ規格にしたがうものや、電話回線を用いてインターネットに接続するためのアナログモデム、ＩＳＤＮ（Integrated Services Digital Network）モデム、ＡＤＳＬ（Asymmetric Digital Subscriber Line）モデム、ケーブルテレビジョン回線を用いてインターネットに接続するためのケーブルモデム等と、これらとＣＰＵ  １０１との仲立ちを行うインターフェース（図示せず）により構成される。
【００６４】
音声処理部１１０は、ＤＶＤ−ＲＯＭから読み出した音声データをアナログ音声信号に変換し、これに接続されたスピーカ（図示せず）から出力させる。また、ＣＰＵ  １０１の制御の下、ゲームの進行の中で発生させるべき効果音や楽曲データを生成し、これに対応した音声をスピーカから出力させる。
【００６５】
このほか、ゲーム装置１００は、ハードディスク等の大容量外部記憶装置を用いて、ＲＯＭ  １０２、ＲＡＭ  １０３、外部メモリ１０６、ＤＶＤ−ＲＯＭドライブ１０８に装着されるＤＶＤ−ＲＯＭ等と同じ機能を果たすように構成してもよい。
【００６６】
一般的なコンピュータは、上記ゲーム装置１００と同様に、ＣＰＵ、ＲＡＭ、ＲＯＭ、ＤＶＤ−ＲＯＭドライブ、および、ＮＩＣを備え、ゲーム装置１００よりも簡易な機能を備えた画像処理部を備え、外部記憶装置としてハードディスクを有する他、フレキシブルディスク、光磁気ディスク、磁気テープ等が利用できるようになっている。また、コントローラではなく、キーボードやマウスなどを入力装置として利用する。
【００６７】
上記のように、ネットワークゲームでは、ゲーム専用機ではなく一般的なコンピュータを利用することも多々あることも考慮し、以下では、注記しない限り、端末について、図１に示したゲーム装置１００により説明を加える。これらは必要に応じて、適宜、一般的なコンピュータの要素に置換することができ、これらの実施形態も本発明の範囲に含まれる。
【００６８】
また、サーバ装置は、一般的なコンピュータ上に実現されるが、ゲーム装置１００の群の中の所定のゲーム装置１００をサーバ装置として利用することも可能である。そこで、また、ゲーム装置１００と一般的なコンピュータとは、その構成や機能に大きな相違はない。したがって、ゲーム装置１００上の本発明のサーバ装置を実現することも可能である。そこで、以下の説明では、一般的なコンピュータとゲーム装置１００とを同じように扱って説明する。
【００６９】
（通信の様子の概要）
図２は、本発明の実施形態の１つに係る端末を用いてネットワーク対戦ゲームの対戦および観戦を行う際の通信システムの概要を示す説明図である。以下、本図を参照して説明する。
【００７０】
図２に示すように、本通信システム２００における複数の端末２０１は、インターネット２０５を介して相互に、および、サーバ装置２０９と通信可能に接続されている。特に、端末２０１同士の通信は、いわゆるピアツーピア通信技術によって行うことが可能となっている。以下では、図２に示す複数の端末２０１のうち、端末２０１ａ、２０１ｂとが対戦し、これを端末２０１ｃ、２０１ｄ、２０１ｅが観戦する状況について説明する。
【００７１】
図３は、当該状況における当該通信システムにおける端末やサーバ装置の間の通信の様子を示すシーケンス図である。以下、本図を参照して説明する。本図では、「○○から××への一方向通信」を片矢印で標記する。「○○と××との間の双方向通信」を両矢印で標記する。また、矢印の棒の下に斜線を描くことにより、通信がその後も適宜行われることを示すこととする。
【００７２】
まず、端末２０１ａと端末２０１ｂは、それぞれ、ネットワーク対戦ゲームのロビー機能を提供するサーバ装置２０９に接続して、対戦相手の紹介を求める紹介要求を、サーバ装置２０９に送付する（３０１、３０２）。
【００７３】
すると、サーバ装置２０９は、現在接続されている端末２０１の中から、端末２０１ａと端末２０１ｂを対戦させることとして、そのそれぞれに、対戦相手を指定する紹介応答を送付する（３０３、３０４）。
【００７４】
紹介応答を受け付けた端末２０１ａ、２０１ｂは、接続を行って、ネットワーク対戦を開始する（３０５）。
【００７５】
一方、端末２０１ｃ、２０１ｄ、２０１ｅは、それぞれ、端末２０１ａ、２０１ｂの対戦を観戦するための中継要求をサーバ装置２０９に送付する（３０６、３０７、３０８）。
【００７６】
ここで、端末２０１ａ、２０１ｂが直接対戦の様子を配信できる他の端末２０１の数は、１個を上限とするものとする。
【００７７】
まず、サーバ装置２０９は、端末２０１ｃからの中継要求３０６に対して、端末２０１ａから対戦様子の配信を受けるべき旨の直接中継応答を、端末２０１ｃに返送する（３０９）。すると、端末２０１ｃは、端末２０１ａから対戦様子の配信を受けるようになる（３１０）。
【００７８】
また、サーバ装置２０９は、端末２０１ｄからの中継要求３０７に対して、端末２０１ｂから対戦様子の配信を受けるべき旨の直接中継応答を、端末２０１ｄに返送する（３１１）。すると、端末２０１ｄは、端末２０１ｂから対戦様子の配信を受けるようになる（３１２）。
【００７９】
これによって、端末２０１ａ、２０１ｂが直接対戦の様子を配信できる端末の数が満たされたことになるので、サーバ装置２０９は、端末２０１ｅからの中継要求３０８に対しては、当該サーバ装置２０９から対戦様子の配信を受けるべき旨の間接中継応答を、端末２０１ｅに返送する（３１３）。また、サーバ装置２０９は、端末２０１ａ、２０１ｂから一方を選択し（選択したものが端末２０１ａであるとする）、選択された端末２０１ａから対戦様子の配信を受ける（３１４）。端末２０１ｅは、サーバ装置２０９から、さらに対戦様子の配信を受ける（３１５）。
【００８０】
このように、対戦端末２０１ａ、２０１ｂが対戦の様子を直接配信する端末の数が、所定の閾値（上記説明では１）よりも少ない場合は、サーバ装置２０９は、当該対戦端末２０１ａ、２０１ｂに対戦様子を直接配信させ、所定の閾値以上である場合は、当該対戦端末２０１ａ、２０１ｂから対戦様子の配信を受けて、これを新たな観戦端末に配信する。
【００８１】
これによって、対戦端末２０１ａ、２０１ｂの負荷が低い場合には、対戦端末２０１ａ、２０１ｂから観戦端末２０１に対して対戦の様子を効率良く直接配信させる一方で、負荷が高い場合には、配信能力に優れるサーバ装置２０９を用いて観戦端末２０１に対戦の様子を配信して、対戦端末２０１ａ、２０１ｂに多大な負荷がかからないようにするのである。
【００８２】
（端末の構成）
図４は、本実施形態に係る端末の概要構成を示す模式図である。図５は、当該端末にて実行される端末方法の制御の流れを示すフローチャートである。以下、これらの図を参照して説明する。
【００８３】
端末２０１は、紹介要求送付部４０１、紹介応答受付部４０２、相互作用部４０３、経過送信部４０４、中継要求送付部４０５、中継応答受付部４０６、経過受信部４０７、経過表示部４０８を有する。
【００８４】
端末２０１は、プレイヤーからの指示入力を受け付けて、その内容を調べる（ステップＳ５０１）。当該指示入力が他の端末２０１との対戦を行う旨を指定するものである場合（ステップＳ５０１；対戦）、紹介要求送付部４０１は、サーバ装置２０９に対戦相手の紹介を求める紹介要求を送付する（ステップＳ５０２）。
【００８５】
そして、紹介応答受付部４０２が、当該サーバ装置２０９から送付される紹介応答を受け付ける（ステップＳ５０３）。
【００８６】
すると、相互作用部４０３は、当該紹介応答に指定される端末２０１と対戦を開始するための接続を確立し（ステップＳ５０４）、プレイヤーからの操作入力を受け付けて（ステップＳ５０５）、当該操作入力に対応したネットワーク対戦ゲームの進行処理を行い（ステップＳ５０６）、その進行処理の結果を対戦相手に送信して（ステップＳ５０７）、対戦相手から当該対戦相手における進行処理の結果を受信して（ステップＳ５０８）、ネットワーク対戦ゲームの状況を更新し（ステップＳ５０９）、ステップＳ５５１に進む。
【００８７】
一方、プレイヤーからの指示入力が他の端末２０１同士の対戦を観戦する旨を指定するものである場合（ステップＳ５０１；観戦）、中継要求送付部４０５は、サーバ装置２０９に、他の端末２０１同士の対戦の経過の中継を求める中継要求を送付する（ステップＳ５３１）。
【００８８】
そして、中継応答受付部４０６は、当該サーバ装置２０９から送付される中継応答を受け付ける（ステップＳ５３２）。
【００８９】
ついで、経過受信部４０７は、当該中継応答に指定された端末２０１またはサーバ装置２０９に、接続要求を出し（ステップＳ５３４）、当該接続要求を出した先から、送信された対戦の経過を受信する（ステップＳ５３５）。
【００９０】
さらに、経過表示部４０８は、受信された対戦の経過を表示する（ステップＳ５３６）。
【００９１】
そして、当該対戦が終了したか否かを判断し（ステップＳ５３７）、対戦が終了していない場合（ステップＳ５３７；Ｎｏ）、ステップＳ５３５に戻る。終了している場合（ステップＳ５３７；Ｙｅｓ）、ステップＳ５０１に戻る。
【００９２】
このように、端末２０１が観戦端末として機能する場合には、ステップＳ５３１〜ステップＳ５３７の処理が実行される。
【００９３】
一方、端末２０１が対戦端末として機能する場合は、上記のようにステップＳ５０２〜Ｓ５０９の処理を実行した後、以下の処理を行う。
【００９４】
すなわち、他の端末またはサーバ装置から、新たに対戦を配信すべき旨の接続要求がされているか調べ（ステップＳ５５１）、されている場合（ステップＳ５５１；Ｙｅｓ）、当該接続要求をしている他の端末またはサーバ装置を「観戦端末」として登録する（ステップＳ５５２）。されていない場合（ステップＳ５５１；Ｎｏ）、ステップＳ５５３に進む。
【００９５】
そして、経過送信部４０４は、登録されている観戦端末に、現在のネットワーク対戦ゲームの状況を送信する（ステップＳ５５３）。
【００９６】
さらに、対戦が終了したか否かを判断し（ステップＳ５５４）、終了していない場合（ステップＳ５５４；Ｎｏ）、ステップＳ５０５に戻る。終了している場合（ステップＳ５５４；Ｙｅｓ）、ステップＳ５０１に戻る。
【００９７】
なお、プレイヤーからの指示入力が、その他の指示であった場合（ステップＳ５０１；その他）、対応する処理を実行して（ステップＳ５７１）、ステップＳ５０１に戻る。
【００９８】
（サーバ装置の構成）
図６は、本実施形態に係るサーバ装置の概要構成を示す模式図である。図７、図８は、当該サーバ装置にて実行される端末管理方法の制御の流れを示すフローチャートである。以下、これらの図を参照して説明する。
【００９９】
サーバ装置２０９は、端末２０１の状態を記憶する記憶部６００のほか、紹介要求受付部６０１、紹介応答送付部６０２、中継要求受付部６０３、中継応答送付部６０４、経過中継部６０５を有する。
【０１００】
まず、サーバ装置２０９は、いずれかの端末２０１からの要求を、ＮＩＣ  １０９を介して受け付ける（ステップＳ７０１）。当該要求が紹介要求である場合（ステップＳ７０１；紹介要求）、当該ＮＩＣ  １０９は紹介要求受付部６０１として機能したこととなる。また、紹介要求には、対戦相手を求める端末２０１の情報が指定されている。
【０１０１】
ついで、サーバ装置２０９は、記憶部６００を調べて、対戦相手として紹介を待っている他の端末２０１がすでに存在するか否かを調べ（ステップＳ７０２）、存在する場合は、対戦相手を適当なアルゴリズムにより選択する（ステップＳ７０３）。
【０１０２】
そして、紹介応答送付部６０２に、対戦相手となる一方の端末２０１へ、他方の端末２０１を指定する紹介応答を送付させ（ステップＳ７０４）、他方の端末２０１へ、一方の端末２０１を指定する紹介応答を送付させる（ステップＳ７０５）。
【０１０３】
そして、記憶部６００に記憶されるこれらの端末２０１の情報を対戦中に更新し、対戦相手の情報を記録して（ステップＳ７０６）、ステップＳ７０１に戻る。
【０１０４】
一方、紹介できる他の端末２０１がない場合は、記憶部６００に記憶される当該紹介要求を出した端末２０１の情報を「紹介待ち」と記憶して（ステップＳ７０７）、ステップＳ７０１に戻る。
【０１０５】
図９は、記憶部６００に記憶される情報の概要を示す説明図である。本図に示すように、サーバ装置２０９に対して接続した端末２０１の情報は、表形式で管理されている。
【０１０６】
表８０１の各レコード（表８０１の各行に相当する。）は、各端末２０１のそれぞれに１対１に対応している。識別番号欄８０２には、当該サーバ装置２０９に現在接続している端末２０１の識別番号が記録される。当該識別番号としては、端末２０１を使用するプレイヤーのユーザＩＤ、端末２０１のＩＰアドレスやＩＰアドレスとポート番号の組、端末２０１のＭＡＣアドレス等を利用することができる。
【０１０７】
また、状態欄８０３には、端末２０１の現在の状態が記録されている。本図では、「紹介待ち」「対戦中」「観戦中」「待機中」という状態が記録されている。「紹介待ち」「対戦中」については、上述した通りである。
【０１０８】
また、状態欄８０３が「対戦中」の場合、対戦相手欄８０４には、対戦相手の識別番号が記録され、備考欄８０５には、当該対戦端末２０１が対戦の様子を配信する観戦端末２０１の識別番号が０個以上、所定の閾値の数を上限として、記録されるほか、上限を超えそうになった場合には、当該サーバ装置２０９の識別番号があわせて記録される。
【０１０９】
さて、サーバ装置２０９が受け付けた要求が中継要求である場合（ステップＳ７０１；中継要求）、当該ＮＩＣ  １０９は中継要求受付部６０３として機能したこととなる。そして、当該中継要求には、対戦端末２０１の双方が指定されている。
【０１１０】
そこで、サーバ装置２０９は、中継要求に指定されている対戦端末２０１について記憶部６００を調べ、対戦端末２０１の２つについて、その備考欄８０５に記憶されている観戦端末２０１の識別番号の数を取得する（ステップＳ７１１）。
【０１１１】
そして、対戦端末２０１の２つのうち、識別番号の数が少ない方、（数が等しい場合は表８０１に先に記憶されている方）を、配信元の候補として選択し（ステップＳ７１２）、当該候補における観戦端末２０１の識別番号の数が、所定の閾値よりも少ないか否かを調べる（ステップＳ７１３）。
【０１１２】
少ない場合（ステップＳ７１３；Ｙｅｓ）、中継応答送付部６０４に、当該候補を指定する直接中継応答を、要求元の端末２０１へ送付させ（ステップＳ７１４）、表８０１のうち、当該候補の備考欄８０５に、当該要求元の端末２０１の識別番号を追加するとともに（ステップＳ７１５）、表８０１内の当該要求元の端末２０１の状態欄８０３を「観戦中」に更新し（ステップＳ７１６）、備考欄８０５に当該候補の識別番号を記録して（ステップＳ７１７）、ステップＳ７０１に戻る。
【０１１３】
一方、当該候補における観戦端末２０１の識別番号の数が、所定の閾値以上である場合（ステップＳ７１３；Ｎｏ）、中継応答送付部６０４に、当該サーバ装置２０９を指定する間接中継応答を、要求元の端末２０１へ送付させ（ステップＳ７２１）、表８０１のうち、当該候補の備考欄８０５に、当該サーバ装置２０１の識別番号を追加し（ステップＳ７２２）、当該候補に対して接続要求を出し（ステップＳ７２３）、表８０１内の当該要求元の端末２０１の状態欄８０３を「観戦中」に更新し（ステップＳ７２４）、備考欄８０５に当該サーバ装置の識別番号と当該候補の識別番号との両方を記録して（ステップＳ７２５）、ステップＳ７０１に戻る。
【０１１４】
さて、いずれの端末２０１からの要求もない場合（ステップＳ７０１；要求なし）、表８０１の各レコードを先頭から順に調べ（ステップＳ７３１）、処理していないレコードがある場合（ステップＳ７３１；未処理あり）、当該レコードの状態欄８０３が「対戦中」で備考欄８０５に当該サーバ装置２０９の識別番号が記録されているか調べる（ステップＳ７３２）。すなわち、当該サーバ装置２０９が当該レコードの端末２０１について、対戦経過を観戦端末２０１に中継すべきか否かを判断していることに相当する。
【０１１５】
そうである場合（ステップＳ７３２；Ｙｅｓ）、経過中継部６０５に当該レコードの識別番号欄８０２に記録されている端末２０１（以下「中継元端末」という。）から対戦の経過を受信させる（ステップＳ７３３）。
【０１１６】
ついで、当該対戦の経過から見て、対戦が終了したか否かを調べ（ステップＳ７３４）、終了していない場合（ステップＳ７３４；Ｎｏ）、以下の処理を行う。
【０１１７】
すなわち、表８０１の各レコードを先頭から順に調べ（ステップＳ７３５）、処理していないレコードがある場合（ステップＳ７３５；未処理あり）、当該レコードの状態欄８０３が「観戦中」で備考欄８０５に当該サーバ装置２０９と当該配信元端末が記録されているか調べる（ステップＳ７３６）。すなわち、当該レコードの端末２０１が、当該中継元端末の対戦経過を中継すべき端末であるか否かを判断していることに相当する。
【０１１８】
そうである場合（ステップＳ７３６；Ｙｅｓ）、経過中継部６０５に、ステップＳ７３３にて受信した対戦の経過を、当該レコードの端末２０１（以下「中継先端末」という。）へ、送信させる（ステップＳ７３７）。
【０１１９】
このようにして、必要な中継が終わったら、ステップＳ７０１に戻る。
【０１２０】
一方、対戦が終了している場合（ステップＳ７３４；Ｙｅｓ）、表８０１の当該レコードの状態欄８０３と、当該レコードの対戦相手欄８０４に記録されている識別番号を識別番号欄８０２に記録するレコードの状態欄８０３と、を、「待機中」に更新してから（ステップＳ７４１）、両レコードの対戦相手欄８０４を消去し（ステップＳ７４２）、備考欄８０５を消去する（ステップＳ７４３）。
【０１２１】
また、これは、両レコードの対戦を観戦していた観戦端末のレコード、すなわち、全レコードから状態欄８０３が「観戦中」で備考欄８０５に両レコードに対応する識別番号を記録しているレコードを探す（ステップＳ７４４）。
【０１２２】
そして、これらのレコードの状態欄８０３を「待機中」に更新し（ステップＳ７４５）、備考欄８０５を消去して（ステップＳ７４６）、ステップＳ７０１に戻る。  
【０１２３】
このように、サーバ装置２０９にて管理される表８０１において、あるレコードに対応する端末２０１が対戦端末であるときは、以下の情報が記録される。
（ａ）状態欄８０３  …  「対戦中」
（ｂ）対戦相手欄８０４  …  対戦相手の端末２０１の識別番号
（ｃ）備考欄８０５  …  当該端末２０１から対戦の様子の配信を受けている観戦端末２０１の識別番号。サーバ装置２０９が当該端末２０１から対戦の様子を受信し、これを中継配信しているときは、さらに当該サーバ装置２０９の識別番号。
【０１２４】
一方、あるレコードに対応する端末２０１が観戦端末であるときは、以下の情報が記録される。
（ａ）状態欄８０３  …  「観戦中」
（ｂ）対戦相手欄８０４  …  対戦相手の端末２０１の識別番号
（ｃ）備考欄８０５  …  対戦端末から直接対戦の様子の配信を受けている場合は、当該対戦端末の識別番号。対戦端末からサーバ装置２０９の中継により対戦の様子の配信を受けている場合は、当該対戦端末の識別番号と当該サーバ装置２０９の識別番号。
【０１２５】
さらに、あるレコードに対応する端末２０１が、対戦も観戦もしていない場合は、状態欄８０３は「待機中」または「紹介待ち」となる。この場合、対戦相手欄８０４および備考欄８０５は空欄となる。
【０１２６】
なお、上記の説明では、表８０１中の各欄には、端末２０１やサーバ装置２０９の識別番号を記録することしたが、そのかわりに、当該表８０１における何番目のレコードに相当する端末２０１か、を示すインデックス番号を記録することとしても良い。この場合、サーバ装置２０９の識別番号のかわりに、当該表８０１のレコードのインデックス番号として出現しない値（たとえば、負の整数や表８０１に登録できるレコード数の上限よりも大きい整数）を利用することができる。
【０１２７】
上記のような端末装置２０１とサーバ装置２０９との組み合わせによる実施形態では、対戦端末の負荷が低い場合には、当該対戦端末に直接対戦の様子を配信させ、負荷が高くなった場合は、対戦の様子を一旦サーバ装置２０９で受信してから、必要な観戦端末へ配信して中継することとし、適切に対戦の様子を配信することができる。
【０１２８】
また、ステップＳ７１２におけるような選択を行うことにより、新たな観戦端末については、前回に配信することとなった対戦端末とは異なる対戦端末が配信元となるので、対戦端末による対戦様子の配信の負荷の偏りをできるだけ減らして、負荷分散を図ることができるようになる。
【実施例２】
【０１２９】
上記実施形態では、図２に示すように、対戦端末から対戦の様子を直接配信される観戦端末の数が所定の数に達した後は、新たに観戦端末となる端末については、サーバ装置から当該対戦の様子の配信を受けることとしていた。
【０１３０】
本実施形態では、当該観戦端末の数が所定の数に達した後は、以前からの観戦端末についても、サーバからの配信を受けるように設定を変更することとするものである。
【０１３１】
図１０は、本実施形態におけるサーバ装置の概要構成を示す模式図である。図１１は、ここで実行される処理の制御の流れを示すフローチャートである。以下、これらの図を参照して説明する。なお、これらの図においては、上述した図における要素と同じ機能を果たす要素には、同じ符号を付してある。また、理解を容易にするため、重複する機能については適宜説明を省略する。
【０１３２】
まず、図１０に示すように、サーバ装置２０９は、変更要求送付部９０１をさらに有する。そして、変更要求送付部９０１は、当該直接条件が満たされないときは、当該中継開始済端末のそれぞれに、当該サーバ装置２０９から当該相互作用の経過を受信するよう指定する変更要求を送付する。すなわち、図７に示すフローチャートにおいて、ステップＳ７２５とステップＳ７０１との間に、以下の処理を行うのである。
【０１３３】
図１１に示すフローチャートには、当該処理の制御の流れが示されている。以下、本図を参照して説明する。
【０１３４】
すなわち、ステップＳ７２５の後で、表８０１の各レコードを先頭から順に調べ（ステップＳ１２０１）、処理していないレコードがある場合（ステップＳ１２０１；未処理あり）、当該レコードの状態欄８０３が「観戦中」で、備考欄８０５に当該対戦端末のいずれか一方のみが記録されているか調べる（ステップＳ１２０２）。すなわち、答礼レコードの端末２０１について、対戦経過を対戦端末から直接受信しているか否かを調べる。
【０１３５】
直接配信を受けている場合は（ステップＳ１２０２；Ｙｅｓ）、当該備考欄８０５に当該サーバ装置２０９の識別番号を追加して（ステップＳ１２０３）、配信を受ける元を、対戦端末から当該サーバ装置２０９に変更すべき旨の変更要求を、当該レコードの端末２０１に対して送付して（ステップＳ１２０４）、ステップＳ１２０１に戻る。直接配信を受けていない場合は、そのままステップＳ１２０１に戻る。
【０１３６】
一方、すべてのレコードを処理した場合（ステップＳ１２０１；全処理済）、ステップＳ７０１に進む。
【０１３７】
この処理によって、当該対戦の経過については、サーバ装置２０９が配信を行うように、表８０１の内容が更新されるのである。
【０１３８】
一方、図１２は、本実施形態における端末の概要構成を示す模式図である。本図に示すように、端末２０１は、変更要求受付部９１１をさらに有する。本実施形態では、ＮＩＣ  １０９が変更要求受付部９１１として機能する。
【０１３９】
そして、図５に示すフローチャートでは、ステップＳ５５３とステップＳ５５４との間に以下のような新たな処理を追加することとする。
【０１４０】
図１３は、端末において追加される処理の制御の流れを示すフローチャートである。以下、本図を参照して説明する。
【０１４１】
すなわち、ステップＳ５５３の後で、変更要求受付部９１１は、ＮＩＣ  １０９を介して、サーバ装置２０９からの変更要求が到着しているか否かを調べる（ステップＳ１３０１）。到着していない場合（ステップＳ１３０１；Ｎｏ）、ステップＳ５５４に進む。
【０１４２】
一方、到着している場合（ステップＳ１３０１；Ｙｅｓ）、当該受信した変更要求にしたがって、今までに登録していた観戦端末の登録を消去し（ステップＳ１３０２）、これにかえて、当該サーバ装置２０９のみを「観戦端末」として登録し（ステップＳ１３０３）、ステップＳ５５４に進む。
【０１４３】
このように、対戦端末において「観戦端末」としてサーバ装置２０９のみを登録しておけば、経過送信部４０４は、登録されている「観戦端末」に現在のネットワーク対戦ゲームの状況を送信する（ステップＳ５５３）ので、サーバ装置２０９に一括して対戦の様子が送信され、サーバ装置２０９から配信されることとなるのである。
【０１４４】
本実施形態では、ネットワーク対戦ゲームにおいて、対戦端末の対戦の様子をサーバ装置２０９でまとめて配信することができるようになる。
【実施例３】
【０１４５】
本実施形態は、端末同士の間でアドホックな配信ネットワークを構成して、これを用いて対戦の様子の配信を行うものである。
【０１４６】
本実施形態では、サーバ装置２０９は、図７に示すフローチャートにおいて、ステップＳ７２１〜Ｓ７２５の処理にかえて、以下の処理を行う。図１４は、当該処理の制御の流れを示すフローチャートである。
【０１４７】
まず、表８０１の各レコードを調べ、すでに当該対戦を観戦している端末２０１を探す（ステップＳ１４０１）。すなわち、状態欄８０３が「観戦中」であり、備考欄８０５に対戦端末の少なくともいずれか一方の識別番号が記録されているレコードを探すのである。
【０１４８】
そして、中継応答送付部６０４に、発見されたレコードの識別番号欄８０２に記録されている識別番号を指定する間接中継応答を、要求元の端末２０１に送付させる（ステップＳ１４０２）。
【０１４９】
ついで、備考欄８０５には、以下の情報を記録する（ステップＳ１４０３）。
両対戦端末の識別番号。
現在の時刻（登録時刻）。
【０１５０】
すなわち、状態欄８０３が「観戦中」であるレコードについては、対戦端末のいずれか一方のみの識別番号が記録されていれば、当該対戦端末から直接配信を受けていることを意味し、両対戦端末の識別番号および登録時刻が記録されていれば、いずれかの観戦端末から配信を受けていることを意味する。
【０１５１】
このような情報を用いれば、なお、ステップＳ１４０２において間接中継応答に指定する端末２０１の識別番号の数に上限を設ける際に、アドホックな配信ネットワークの構成を助けることができる。
【０１５２】
すなわち、ステップＳ１４０１において、複数のレコードが発見された場合は、まず、備考欄８０５に両対戦端末の識別番号と登録時刻が記録されているものを、登録時刻の順にソートする。そして、現在の時刻に近いものから順に、当該上限数に達するまでレコードを選択する。上限に達しなかった場合は、いずれか一方の対戦端末の識別番号を有するレコードからランダムに選択を行い、当該上限数に達するまでレコードを選択する。こうして選択された複数のレコード識別番号欄８０２に記録されている情報を、間接中継応答に指定すれば良い。
そして、ステップＳ７０１に戻る。
【０１５３】
一方、端末２０１においては、図５に示すフローチャートを参照して説明すると、ステップＳ５３２において受け付ける中継応答に複数の端末２０１が指定されることとなるので、ステップＳ５３４において、乱数を生成して、いずれかの端末２０１を選択し、経過受信部４０７から当該選択された端末２０１に接続要求を出して（ステップＳ５３４）、以降は同じ処理を行えば良い。
【０１５４】
本実施形態では、ネットワーク対戦ゲーム等において対戦様子を配信する場合に、サーバ装置２０９への配信の負荷が高くなることを防止することができ、観戦端末間の通信によって対戦様子の配信ができるとともに、中継応答に指定される端末２０１間でも対戦の様子の配信の負荷分散を図ることができるようになる。
【０１５５】
このほか、端末間で負荷の様子の問い合わせを行う実施形態を採用しても良い。図１５は、このような処理を行う端末の概要構成を示す模式図である。なお、上述したものと同じ機能を果たす要素には、同じ符号を付してある。
【０１５６】
すなわち、端末２０１は、情報要求送付部１５０１、情報要求受付部１５０２、情報応答送付部１５０３、情報応答受付部１５０４をさらに有する。
【０１５７】
そしてこれらは、ステップＳ５３４における接続要求を出す端末２０１の選択処理を行う際に機能する。図１６は、当該処理に対応するシーケンス図である。
【０１５８】
まず、端末２０１Ａが、中継応答を受信した場合、情報要求送付部１５０１は、中継応答に指定された端末（以下かりに「端末２０１Ｂ、…、２０１Ｚ」という。）のそれぞれに対して負荷情報を求める情報要求を送付する（１６０１）。
【０１５９】
すると、端末２０１Ｂ、…、２０１Ｚの情報要求受付部１５０２は、他の端末から送付された情報要求を受け付ける（１６０２）。
【０１６０】
そして、端末２０１Ｂ、…、２０１Ｚの情報応答送付部１５０３は、当該端末の現在の負荷情報を指定する情報応答を当該情報要求を送付した端末２０１Ａへ、送付する（１６０３）。
【０１６１】
すると、端末２０１Ａの情報応答受付部１５０４は、当該複数の中継端末のそれぞれから送付された情報応答を受け付ける（１６０４）。
【０１６２】
そして、経過受信部４０７は、端末２０１Ｂ、…、２０１Ｚから受け付けた情報応答に指定された負荷情報により、負荷が最も低いものを選択し（１６０５）、たとえば端末２０１Ｂが選択された場合には、端末２０１Ｂに接続要求を出し（１６０６）、当該端末２０１Ｂから対戦の経過を受信する（１６０７）。
【０１６３】
本発明によれば、対戦様子の配信において、端末間の負荷分散を図り、負荷の平均化を図ることができるようになる。
【産業上の利用可能性】
【０１６４】
上記のように、本発明によれば、端末同士の相互作用の履歴を他の端末から観察するのに好適な通信システム、サーバ装置、端末、サービス方法、端末方法、および、これらをコンピュータによって実現するプログラムを提供することができ、各種のネットワーク対戦ゲームなどに適用することができる。
【図面の簡単な説明】
【０１６５】
【図１】本発明の実施形態に係る端末等が実現される典型的なゲーム装置の概要構成を示す模式図である。
【図２】端末とインターネットとサーバ装置との関係を示す説明図である。
【図３】端末とサーバ装置との間でやりとりされるメッセージの様子を示す説明図である。
【図４】端末の概要構成を示す模式図である。
【図５】端末にて実行される処理の制御の流れを示すフローチャートである。
【図６】サーバ装置の概要構成を示す模式図である。
【図７】サーバ装置にて実行される処理の制御の流れを示すフローチャートである。
【図８】サーバ装置にて実行される処理の制御の流れを示すフローチャートである。
【図９】サーバ装置の記憶部に記憶される情報の概要を示す説明図である。
【図１０】サーバ装置の概要構成を示す模式図である。
【図１１】サーバ装置において実行される処理の制御の流れを示すフローチャートである。
【図１２】端末の概要構成を示す模式図である。
【図１３】端末において実行される処理の制御の流れを示すフローチャートである。
【図１４】対戦の様子が他の観戦端末に中継される場合のサーバ装置における処理の制御の流れを示すフローチャートである。
【図１５】端末の概要構成を示す模式図である。
【図１６】対戦の様子を中継する端末を選択する場合の通信の様子を示すシーケンス図である。
【符号の説明】
【０１６６】
１００    ゲーム装置
１０１    ＣＰＵ
１０２    ＲＯＭ
１０３    ＲＡＭ
１０４    インターフェース
１０５    コントローラ
１０６    外部メモリ
１０７    画像処理部
１０８    ＤＶＤ−ＲＯＭドライブ
１０９    ＮＩＣ
１１０    音声処理部
２００    通信システム
２０１    端末
２０５    インターネット
２０９    サーバ装置
４０１    紹介要求送付部
４０２    紹介応答受付部
４０３    相互作用部
４０４    経過送信部
４０５    中継要求送付部
４０６    中継応答受付部
４０７    経過受信部
４０８    経過表示部
６００    記憶部
６０１    紹介要求受付部
６０２    紹介応答送付部
６０３    中継要求受付部
６０４    中継応答送付部
６０５    経過中継部
８０１    表
８０２    識別番号欄
８０３    状態欄
８０４    対戦相手欄
８０５    備考欄
９０１    変更要求送付部
９１１    変更要求受付部
１５０１  情報要求送付部
１５０２  情報要求受付部
１５０３  情報応答送付部
１５０４  情報応答受付部
【図１】
2005182116.tif 000003
【図２】
2005182116.tif 000004
【図３】
2005182116.tif 000005
【図４】
2005182116.tif 000006
【図５】
2005182116.tif 000007
【図６】
2005182116.tif 000008
【図７】
2005182116.tif 000009
【図８】
2005182116.tif 000010
【図９】
2005182116.tif 000011
【図１０】
2005182116.tif 000012
【図１１】
2005182116.tif 000013
【図１２】
2005182116.tif 000014
【図１３】
2005182116.tif 000015
【図１４】
2005182116.tif 000016
【図１５】
2005182116.tif 000017
【図１６】
2005182116.tif 000018