(57)【要約】【課題】ゲームの種類を問わず、ネットワーク対戦型のゲームを実現する。【解決手段】各端末装置Ａ，Ｂ，Ｃは、センターサーバ１００から個人データを受信後、自分自身が最初のゲーム進行単位でマスタ端末になるかを、マスタ決定ルールに基づいてそれぞれに判断する。この例では、端末装置Ａが最初のマスタ端末になる。最初のマスタ端末決定後、端末装置Ａをマスタとし、端末装置Ｂ，Ｃをクライアントとしてゲームを開始する（＃１，＃２）。マスタ端末Ａは、最初のゲーム進行単位が終了すると、次のマスタ端末を決定する。端末端末Ａは、次のマスタ端末の指定、例えばＩＰアドレスを記述した切替通知を端末装置Ｂ，Ｃに送信する（＃３）。さらに、端末装置Ａは、ゲームの続行に必要なデータであるゲームデータを、次のマスタ端末、この例では端末装置Ｂに送信する（＃４）。ゲームデータには、全ての端末装置２００の個人データも含まれている。【選択図】      図３
2004350910.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して接続される端末装置を含み、いずれかの端末装置がゲームの進行を管理するマスタになりその他の端末装置がクライアントとなるネットワーク対戦型ゲームシステムであって、
マスタの端末装置及びクライアントの端末装置に前記ネットワークを介してデータを送受信させることにより、複数のゲーム進行単位を含んでなるゲームを実行し、
１ゲーム進行単位の開始に先立ち、開始されようとしているゲーム進行単位でのマスタを決定し、
前記ゲームの途中である１ゲーム進行単位の終了後、マスタである端末装置を切り替え、
マスタである端末は、マスタの切替中はクライアントの端末装置からのデータを受け付けない、
ネットワーク対戦型ゲームシステム。
【請求項２】
マスタである端末装置から次のマスタになる端末装置へ、前記ゲームの続行に必要なデータであるゲームデータを送信し、
マスタである端末は、少なくとも前記ゲームデータの送信中はクライアントの端末装置からのデータを受け付けない、
請求項１に記載のネットワーク対戦型ゲームシステム。
【請求項３】
マスタである端末装置は、クライアントである端末装置にゲーム進行単位の終了を通知し、
前記通知を受信したクライアントである端末装置は、前記マスタである端末装置へのデータの送信を休止する、
請求項１に記載のネットワーク対戦型ゲームシステム。
【請求項４】
前記ゲームの進行上、端末装置がプレイヤの入力を受け付けないタイミングでマスタである端末装置を切り替える、請求項１に記載のネットワーク対戦型ゲームシステム。
【請求項５】
前記端末装置のそれぞれが前記ゲーム中にマスタとなった時間長さの累積値であるマスタ経験時間を記憶し、
いずれかの端末装置がマスタとなる毎にマスタとなった時間の長さを計測し、計測値を前記端末装置のマスタ経験時間に加算し、
各端末装置の最新のマスタ経験時間に基づいて、マスタ経験時間が最も少ない端末装置を、開始されようとしているゲーム進行単位でのマスタに決定する、
請求項１に記載のネットワーク対戦型ゲームシステム。
【請求項６】
前記端末装置のそれぞれが前記ゲーム中にマスタとなったゲーム進行単位数の総数であるマスタ経験単位数を記憶し、
いずれかの端末装置がマスタとなる毎に、前記端末装置のマスタ経験単位数を増加させ、
各端末装置の最新のマスタ経験単位数に基づいて、マスタ経験単位数が最も少ない端末装置を、開始されようとしているゲーム進行単位でのマスタに決定する、
請求項１に記載のネットワーク対戦型ゲームシステム。
【請求項７】
前記端末装置のそれぞれがマスタであるか否かを、各端末装置を操作するプレイヤに通知する、請求項１に記載のネットワーク対戦型ゲームシステム。
【請求項８】
ネットワークを介して接続される端末装置間で、いずれかの端末装置がゲームの進行を管理するマスタになりその他の端末装置がクライアントとなってゲームを行うネットワーク対戦型ゲーム方法であって、
マスタの端末装置及びクライアントの端末装置が、前記ネットワークを介してデータを送受信することにより、複数のゲーム進行単位を含んでなるゲームを実行するゲーム実行ステップと、
１ゲーム進行単位の開始に先立ち、マスタである端末装置または前記端末装置のそれぞれが、開始されようとしているゲーム進行単位でのマスタを決定するマスタ決定ステップと、
前記ゲームの途中である１ゲーム進行単位の終了後、マスタである端末装置がマスタを切り替える切替ステップと、
マスタである端末が、マスタの切替中はクライアントの端末装置からのデータを受け付けない制限ステップと、
を含むネットワーク対戦型ゲーム方法。
【請求項９】
ネットワークを介して他の端末装置と接続される端末装置であって、
自分及び他の端末装置のいずれかがゲームの進行を管理するマスタとなりその他の端末装置がクライアントとなり、自分以外の他の端末装置との間で前記ネットワークを介してデータを送受信することにより、複数のゲーム進行単位を含んでなるゲームを実行するゲーム実行手段と、
最初のゲーム進行単位の開始に先立ちマスタとなる端末装置を決定し、かつあるゲーム進行単位でマスタである場合、次のゲーム進行単位でのマスタを決定するマスタ決定手段と、
あるゲーム単位でマスタである場合、そのゲーム進行単位の終了後、マスタである端末装置を切り替える切替手段と、
マスタの切替中は、クライアントの端末装置からのデータを受け付けない制限手段と、
を備える端末装置。
【請求項１０】
ネットワークを介して他の端末装置と接続される端末装置としてコンピュータを機能させる端末プログラムであって、
自分及び他の端末装置のいずれかがゲームの進行を管理するマスタとなりその他の端末装置がクライアントとなり、自分以外の他の端末装置との間で前記ネットワークを介してデータを送受信することにより、複数のゲーム進行単位を含んでなるゲームを実行するゲーム実行手段、
最初のゲーム進行単位の開始に先立ちマスタとなる端末装置を決定し、かつあるゲーム進行単位でマスタである場合、次のゲーム進行単位でのマスタを決定するマスタ決定手段、
あるゲーム単位でマスタである場合、そのゲーム進行単位の終了後、マスタである端末装置を切り替える切替手段、及び
マスタの切替中は、クライアントの端末装置からのデータを受け付けない制限手段、
として前記コンピュータを機能させる端末プログラム。
【請求項１１】
ネットワークを介して接続される端末装置が実行するネットワーク対戦型ゲーム方法であって、
自分及び他の端末装置のいずれかがゲームの進行を管理するマスタとなりその他の端末がクライアントとなり、自分以外の他の端末装置との間で前記ネットワークを介してデータを送受信することにより、複数のゲーム進行単位を含んでなるゲームを実行するゲーム実行ステップと、
最初のゲーム進行単位の開始に先立ちマスタとなる端末装置を決定し、かつあるゲーム進行単位でマスタである場合、次のゲーム進行単位でのマスタを決定するマスタ決定ステップと、
あるゲーム単位でマスタである場合、そのゲーム進行単位の終了後、マスタである端末装置を切り替える切替ステップと、
マスタの切替中は、クライアントの端末装置からのデータを受け付けない制限ステップと、
を含むネットワーク対戦型ゲーム方法。
【請求項１２】
ネットワークを介して接続される端末装置を含むネットワーク対戦型ゲームシステムであって、
前記端末装置のうちいずれかの端末装置がゲームの進行を管理するマスタとなりその他の端末装置がクライアントとなって前記ネットワークを介してゲームを実行し、
前記端末装置のそれぞれがマスタまたはクライアントを経験する毎に更新される各端末装置の経験値に基づいて、ゲームの開始前にいずれの端末装置がマスタになるかを決定する、
ネットワーク対戦型ゲームシステム。
【請求項１３】
前記経験値を記憶し、
マスタになる端末装置の決定に応じ、前記記憶されている各端末装置の経験値を更新する、
請求項１２に記載のネットワーク対戦型ゲームシステム。
【請求項１４】
マスタになる端末装置の決定に応じて前記端末装置の経験値に所定の値を加算し、前記端末装置の最新の経験値を決定する、請求項１２に記載のネットワーク対戦型ゲームシステム。
【請求項１５】
前記経験値は、ゲームを行ったゲーム回数及びマスタになった回数を含み、
前記端末装置のそれぞれについてゲーム回数に対するマスタになった回数の割合を演算することによりマスタになる端末を決定する、請求項１２に記載のネットワーク対戦型ゲームシステム。
【請求項１６】
ネットワークを介して接続される端末装置間でゲームを行うネットワーク対戦型ゲーム方法であって、
前記端末装置のうちいずれかの端末装置がゲームの進行を管理するマスタとなりその他の端末装置がクライアントとなって前記ネットワークを介してゲームを実行するゲーム実行ステップと、
前記端末装置のそれぞれがマスタを経験する毎に更新される各端末装置の経験値に基づいて、いずれの端末装置がマスタになるかをゲームの開始前に決定するマスタ決定ステップと、
を含むネットワーク対戦型ゲーム方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ネットワークを介して接続された端末装置同士が対戦するゲームに関する。なかでも、アクション性の高いゲーム、すなわちプレイヤの操作に対する画面出力や音声出力の応答速度がゲームの進行に大きく影響するゲームに関する。
【０００２】
【従来の技術】
インターネットなどのネットワークを介して複数のプレイヤが対戦できるようになっているゲームとして、麻雀ゲームや一部のロールプレイングゲームを挙げることができる。ネットワーク対戦型ゲームでは、プレイヤが操作する端末装置のいずれかがマスタとなり、他の端末装置はクライアントとなるのが通常である。マスタ端末はゲームの進行を管理し、クライアント端末はゲームの進行状況を出力する。
【０００３】
より詳しくは、マスタ端末は、１）プレイヤによる指示入力を受け付け、２）プレイヤによりクライアント端末へ入力されたデータを各クライアント端末から受信し、３）マスタ端末における指示入力及びクライアント端末からの指示入力に基づいてゲームの進行を管理し、４）ゲームの進行状況に基づいて自端末で画面出力や音声出力を制御し、５）ゲームの進行状況を示す出力データを各クライアント端末に送信する。一方、クライアント端末は、１）プレイヤの指示入力を受け付け、２）プレイヤにより入力されたデータをマスタ端末に送信し、３）出力データをマスタ端末から受信し、４）受信した出力データに基づいて画面出力や音声出力を制御する。
【０００４】
【発明が解決しようとする課題】
麻雀ゲームのようなテーブルゲーム、一部のロールプレイングゲームなどにおいてはネットワーク対戦が実現されている。しかし、シューティングゲーム・レーシングゲーム・球技ゲームなどのアクションゲーム、リアルタイムシミュレーションゲーム、ウォーゲームなどでは、未だにネットワーク対戦が実現されていない。これは、アクションゲームなどではプレイヤの操作がリアルタイムにゲームに反映されることが望まれる反面、ネットワーク対戦ではマスタ端末とクライアント端末とでゲームの応答性に差があることが分かっているからである。
【０００５】
すなわち、プレイヤの操作結果が画面表示や音声出力に反映されるまでの応答時間が、マスタ端末とクライアント端末とで異なると予想される。なぜなら、クライアント端末は、ネットワークを介してマスタ端末からフレームデータや音声データ等の出力データを受信しなければ、画面の更新や音声出力をすることができない。しかし、マスタ端末からクライアント端末へ出力データを送信する過程では、様々な理由によりネットワーク遅延やパケットロスが発生する。
ネットワーク遅延は、麻雀ゲームなどでは問題にならない。これは、麻雀ゲームなどでは、プレイヤの操作に対する画面出力や音声出力の応答性がゲーム結果に与える影響は、アクションゲームなどにおける影響に比して小さいからである。また、パケットロスが生じても、麻雀ゲームなどでは画面変化や音声変化が少ないため、パケットロスのゲームにおける影響が小さくてすむ。
【０００６】
しかし、上記アクション性の高いゲームでは、ネットワーク遅延やパケットロスは、マスタ端末のプレイヤに対しクライアント端末のプレイヤの不利を招く。そのため、これらのゲームでのネットワーク対戦を阻む要因となっている。なぜなら、アクション性の高いゲームにおいては、クライアント端末における画面出力や音声出力のネットワーク遅延は、マスタ端末に比較して顕著であり、ゲームの勝敗に影響してしまう。また、ゲーム空間内のオブジェクトの動きが重要なゲームにおいてパケットロスが発生すれば、画面表示が乱れ、クライアント端末のプレイヤに違和感を与えてしまい、さらにはゲームの勝敗に影響する場合がある。このような問題の一方で、社会のネットワーク化が進むにつれ、様々なゲームにおいてネットワーク対戦の実現が期待されている。
【０００７】
本発明は、ゲームの種類を問わず、ネットワーク対戦型のゲームを実現することを目的とする。
また本発明は、ゲームの種類を問わず、ネットワーク対戦型ゲームのマスタ端末とクライアント端末との応答性の差がプレイヤのゲーム環境に及ぼす影響を解決することを目的とする。
【０００８】
【課題を解決するための手段】
前記課題を解決するために、本願発明１は、ネットワークを介して接続される端末装置を含み、いずれかの端末装置がゲームの進行を管理するマスタになりその他の端末装置がクライアントとなるネットワーク対戦型ゲームシステムを提供する。このシステムでは、
・マスタの端末装置及びクライアントの端末装置に前記ネットワークを介してデータを送受信させることにより、複数のゲーム進行単位を含んでなるゲームを実行し、
・１ゲーム進行単位の開始に先立ち、開始されようとしているゲーム進行単位でのマスタを決定し、
・前記ゲームの途中である１ゲーム進行単位の終了後、マスタである端末装置を切り替え、
・マスタである端末は、マスタの切替中はクライアントの端末装置からのデータを受け付けない。
【０００９】
このゲームシステムはゲームの途中でマスタ端末を切り替える。切り替わるタイミングは、ゲーム進行単位の終了後である。マスタの切替中は、マスタ端末はクライアントの端末装置における指示入力のデータや、自端末装置における指示入力を受け付けない。
ここで、ゲームは複数のゲーム進行単位を含んで構成されている。ゲーム進行単位とは、例えば、サッカーゲームにおける前半と後半、野球ゲームにおける各回の裏と表、テニスゲームにおける各ゲーム、ボクシングゲームにおける１ラウンドを挙げることができる。また例えば、ゲームの進行上端末装置がプレイヤからの入力データを受け付けない時間帯と時間帯との間をゲーム進行単位とすることもできる。サッカーゲームを例に挙げれば、前半と後半との間のハーフタイム、ファウル発生などの場合にマスタは入力データを受け付けないこととする。そして、そのような事態が生じるたびにゲーム進行単位を終了させ、マスタを切り替えることができる。上述のようなゲームの進行上区切りとなるタイミングでゲーム進行単位が区切られると、ゲーム処理とマスタの切替処理との相乗効果を得ることができ好ましい。
【００１０】
また例えば、ゲームの進行とは独立に、ゲームにおける所定時間長さをゲーム進行単位としても良い。つまり、所定時間Ｔの間を１ゲーム進行単位とし、Ｔ時間毎にマスタを切り替えることもできる。
本発明は、アクション性の高いゲームを行うゲームシステムに適用すると好適である。すなわち、プレイヤの操作に対する応答性がゲームの勝敗に大きく影響するゲームに、本発明は好適に用いられる。なぜなら、マスタ端末ではプレイヤの指示入力に対する応答が早いので、プレイヤは有利にゲームを進めることができる。ゲーム中にマスタ端末を次々に切り替えることにより、勝負上有利な機会を全ての端末装置に与える。そのため、アクション性の高いゲームにおいてプレイヤが有利にゲームを進めることができる機会を、各プレイヤが実質的に均等に享受することができる。
【００１１】
発明２は、前記発明１において、マスタである端末装置から次のマスタになる端末装置へ前記ゲームの続行に必要なデータであるゲームデータを送信し、マスタである端末は、少なくとも前記ゲームデータの送信中はクライアントの端末装置からのデータを受け付けないネットワーク対戦型ゲームシステムを提供する。
マスタとなる端末装置が次々にゲームデータを引き継ぐことにより、マスタ端末が変わっても、ゲームシステム全体としてゲームを実行することができる。
発明３は、前記発明１において、マスタである端末装置はクライアントである端末装置にゲーム進行単位の終了を通知し、前記通知を受信したクライアントである端末装置は、前記マスタである端末装置へのデータの送信を休止する、ネットワーク対戦型ゲームシステムを提供する。
【００１２】
ゲーム進行単位の終了後にマスタ端末からクライアント端末への無駄なデータの送信を休止することにより、ネットワーク負荷を軽減すると共に、マスタ端末の処理の負荷を軽減することができる。
発明４は、前記発明１において、前記ゲームの進行上の区切りにおいてマスタである端末装置を切り替えるネットワーク対戦型ゲームシステムを提供する。
例えば、サッカーゲームにおけるハーフタイムやファウルの発生時、野球ゲームにおける裏と表の切替時などに端末装置を切り替えることにより、ゲーム処理とマスタの切替処理との相乗効果を得ることができ好ましい。
【００１３】
本発明の別の態様として、前記ゲームデータの送信に先立ち、次のマスタに決定した端末装置の指定を含む切替通知を、現在のマスタである端末装置から少なくとも次のマスタに決定した端末装置へ、前記ネットワークを介して送信するネットワーク対戦型ゲームシステムが挙げられる。
切替通知を次のマスタ端末に送信することにより、次のマスタ端末はゲーム進行単位の終了と、次のゲーム進行単位で自分がマスタになることを知ることができる。マスタ端末から他の全ての端末装置に切替通知を送信すれば、受信した端末装置は、ゲーム進行単位の終了と、次のゲーム進行単位でどの端末装置がマスタになるのかと、を知ることができる。
【００１４】
本発明の別の態様として、前記ゲームデータを受信してマスタとなった端末装置からクライアントの端末装置へ、次のゲーム進行単位の開始による前記ゲームの再開を通知する再開通知を、前記ネットワークを介して送信する再開通知手段をさらに備えるネットワーク対戦型ゲームシステムが挙げられる。
クライアントの端末は、再開通知を受信することにより、次のゲーム進行単位の開始、すなわちゲームの再開を認識することができる。
発明５は、前記発明１において、前記端末装置のそれぞれが前記ゲーム中にマスタとなった時間長さの累積値であるマスタ経験時間を記憶し、いずれかの端末装置がマスタとなる毎にマスタとなった時間の長さを計測し、計測値を前記端末装置のマスタ経験時間に加算し、各端末装置の最新のマスタ経験時間に基づいて、マスタ経験時間が最も少ない端末装置を、開始されようとしているゲーム進行単位でのマスタに決定する、ネットワーク対戦型ゲームシステムを提供する。
【００１５】
マスタを決定する方法の１つとして、マスタ経験時間が最も少ない端末装置を次のマスタとすることが挙げられる。各端末装置のマスタ経験時間を平均化し、マスタとなる機会を各端末装置に実質的に均等に付与することができる。
発明６は、前記発明１において、前記端末装置のそれぞれが前記ゲーム中にマスタとなったゲーム進行単位数の総数であるマスタ経験単位数を記憶し、いずれかの端末装置がマスタとなる毎に前記端末装置のマスタ経験単位数を増加させ、各端末装置の最新のマスタ経験単位数に基づいて、マスタ経験単位数が最も少ない端末装置を開始されようとしているゲーム進行単位でのマスタに決定するネットワーク対戦型ゲームシステムを提供する。
【００１６】
マスタを決定する方法の１つとして、マスタ経験単位数が最も少ない端末装置を次のマスタとしてもよい。各端末装置に均等にマスタ経験単位数を割り振ることで、マスタとなる機会を各端末装置に実質的に均等に付与することができる。
発明７は、前記発明１において、前記端末装置のそれぞれがマスタであるか否かを各端末装置を操作するプレイヤに通知する、ネットワーク対戦型ゲームシステムを提供する。
例えば、端末装置に接続されたモニタやスピーカから、マスタである旨またはクライアントである旨の出力表示や音声出力がなされる。これにより、プレイヤは、マスタであればより攻撃的にプレイをし、クライアントであれば守備に徹するなど、役割に応じたゲーム戦略を立てることができる。
【００１７】
発明８は、ネットワークを介して接続される端末装置間で、いずれかの端末装置がゲームの進行を管理するマスタになりその他の端末装置がクライアントとなってゲームを行うネットワーク対戦型ゲーム方法を提供する。この方法は下記のステップを含む。
・マスタの端末装置及びクライアントの端末装置が、前記ネットワークを介してデータを送受信することにより、複数のゲーム進行単位を含んでなるゲームを実行するゲーム実行ステップ、
・１ゲーム進行単位の開始に先立ち、マスタである端末装置または前記端末装置のそれぞれが、開始されようとしているゲーム進行単位でのマスタを決定するマスタ決定ステップ、
・前記ゲームの途中である１ゲーム進行単位の終了後、マスタである端末装置がマスタを切り替える切替ステップ、
・マスタである端末が、マスタの切替中はクライアントの端末装置からのデータを受け付けない制限ステップ。
【００１８】
この方法は、発明１のネットワーク対戦型ゲームシステムに適用され、発明１と同様の作用効果を奏する。
発明９は、ネットワークを介して他の端末装置と接続される端末装置を提供する。この装置は、下記の手段を備える。
・自分及び他の端末装置のいずれかがゲームの進行を管理するマスタとなりその他の端末装置がクライアントとなり、自分以外の他の端末装置との間で前記ネットワークを介してデータを送受信することにより、複数のゲーム進行単位を含んでなるゲームを実行するゲーム実行手段、
・最初のゲーム進行単位の開始に先立ちマスタとなる端末装置を決定し、かつあるゲーム進行単位でマスタである場合、次のゲーム進行単位でのマスタを決定するマスタ決定手段、
・あるゲーム単位でマスタである場合、そのゲーム進行単位の終了後、マスタである端末装置を切り替える切替手段、
・マスタの切替中は、クライアントの端末装置からのデータを受け付けない制限手段。
【００１９】
この端末装置は、前記発明１のネットワーク対戦型ゲームシステムに含まれ、発明１と同様の作用効果を奏する。
発明１０は、ネットワークを介して他の端末装置と接続される端末装置としてコンピュータを機能させる端末プログラムを提供する。このプログラムは、下記の手段として前記コンピュータを機能させる。
・自分及び他の端末装置のいずれかがゲームの進行を管理するマスタとなりその他の端末装置がクライアントとなり、自分以外の他の端末装置との間で前記ネットワークを介してデータを送受信することにより、複数のゲーム進行単位を含んでなるゲームを実行するゲーム実行手段、
・最初のゲーム進行単位の開始に先立ちマスタとなる端末装置を決定し、かつあるゲーム進行単位でマスタである場合、次のゲーム進行単位でのマスタを決定するマスタ決定手段、
・あるゲーム単位でマスタである場合、そのゲーム進行単位の終了後、マスタである端末装置を切り替える切替手段、
・マスタの切替中は、クライアントの端末装置からのデータを受け付けない制限手段。
【００２０】
このプログラムは、コンピュータを前記発明９の端末装置として機能させる。発明９と同様の作用効果を有する。
発明１１は、ネットワークを介して接続される端末装置が実行するネットワーク対戦型ゲーム方法を提供する。この方法は、下記のステップを含む。
・自分及び他の端末装置のいずれかがゲームの進行を管理するマスタとなりその他の端末がクライアントとなり、自分以外の他の端末装置との間で前記ネットワークを介してデータを送受信することにより、複数のゲーム進行単位を含んでなるゲームを実行するゲーム実行ステップ、
・最初のゲーム進行単位の開始に先立ちマスタとなる端末装置を決定し、かつあるゲーム進行単位でマスタである場合、次のゲーム進行単位でのマスタを決定するマスタ決定ステップ、
・あるゲーム単位でマスタである場合、そのゲーム進行単位の終了後、マスタである端末装置を切り替える切替ステップ、
・マスタの切替中は、クライアントの端末装置からのデータを受け付けない制限ステップ。
【００２１】
この方法は、発明９の端末装置が実行し、発明９と同様の作用効果を有する。
発明１２は、ネットワークを介して接続される端末装置を含むネットワーク対戦型ゲームシステムを提供する。このシステムは、
・前記端末装置のうちいずれかの端末装置がゲームの進行を管理するマスタとなりその他の端末装置がクライアントとなって前記ネットワークを介してゲームを実行し、
・前記端末装置のそれぞれがマスタまたはクライアントを経験する毎に更新される各端末装置の経験値に基づいて、ゲームの開始前にいずれの端末装置がマスタになるかを決定する。
【００２２】
このシステムでは１ゲーム中にマスタが切り替わることはない。しかし、ゲームの開始前に、経験値に基づいて、マスタの経験が最も少ない端末装置をマスタに決定する。これにより、あるネットワーク対戦型ゲームを好むプレイヤという集団においては、マスタとなる機会を各プレイヤに概ね均等に付与することができる。
発明１３は、前記発明１２において、
・前記経験値を記憶し、
・マスタになる端末装置の決定に応じ、前記記憶されている各端末装置の経験値を更新する、
ネットワーク対戦型ゲームシステムを提供する。
【００２３】
記憶しておいた経験値を更新し、更新した経験値を再び記憶することにより、最新の経験値に基づいてマスタを決定することができる。記憶手段とは、各端末装置のメモリ領域や、取り外し可能な記録媒体、端末装置とネットワークを介して接続可能なコンピュータのメモリ領域などである。
具体的には、各端末装置は、自分自身の経験値をＲＯＭなどに記憶することができる。また各端末装置は、磁気カードなどの記録媒体に記録された経験値を読み取り、ＲＡＭなどに一時的に記憶しても良い。さらに、各端末装置の経験値をＲＯＭなどに記憶しておくセンターサーバを設けることもできる。その場合には、各端末装置は、センターサーバ１００から経験値を取得し、ＲＡＭなどに一時的に記憶しても良い。各端末装置は、共通のルールに基づいてマスタになる端末装置を各自決定する。逆に、センターサーバがマスタとなる端末装置を決定することも可能である。
【００２４】
発明１４は、前記発明１２において、マスタになる端末装置の決定に応じて前記端末装置の経験値に所定の値を加算し、前記端末装置の最新の経験値を決定する、ネットワーク対戦型ゲームシステムを提供する。
一例として、経験値演算手段は、マスタになった端末装置の経験値には１点を加算し、その他の端末装置の経験値には−１点を加算する。経験値の大小に基づいてマスタになる端末装置を決定することができる。
発明１５は、前記発明１２において、前記経験値は、ゲームを行ったゲーム回数及びマスタになった回数を含むネットワーク対戦型ゲームシステムを提供する。このシステムは、前記端末装置のそれぞれについてゲーム回数に対するマスタになった回数の割合を演算することによりマスタになる端末を決定する。
【００２５】
別の例として、あるゲームでマスタになった端末装置についてはゲーム回数及びマスタ回数がインクリメントされ、それ以外の端末装置についてはゲーム回数がインクリメントされる。次回にゲームを開始する場合には、最新のゲーム回数及びマスタ回数から求めた（マスタ割合）＝（マスタ回数）／（ゲーム回数）に基づいて、最もマスタ割合の低い端末装置がマスタとなる。
発明１６は、ネットワークを介して接続される端末装置間でゲームを行うネットワーク対戦型ゲーム方法を提供する。この方法は下記のステップを含む。
・前記端末装置のうちいずれかの端末装置がゲームの進行を管理するマスタとなりその他の端末装置がクライアントとなって前記ネットワークを介してゲームを実行するためのゲーム実行ステップ、
・前記端末装置のそれぞれがマスタを経験する毎に更新される各端末装置の経験値に基づいて、いずれの端末装置がマスタになるかをゲームの開始前に決定するマスタ決定ステップ。
【００２６】
この方法は、発明１２のゲームシステムが実行し、発明１２と同様の作用効果を奏する。
【００２７】
【発明の実施の形態】
＜第１実施形態例＞
［構成］
図１は、本発明の第１実施形態例に係るゲームシステムの概略構成を示す説明図である。
このゲームシステムは、センターサーバ１００と、複数の端末装置２００ａ，ｂとを含んで構成される。端末装置２００ａ，ｂは、インターネットなどのネットワーク３００を介し、センターサーバ１００に接続される。
【００２８】
センターサーバ１００は、プレイヤ毎の個人データを記憶し、端末装置２００からの要求に応じて個人データを要求元に送信する。センターサーバ１００は、下記の要素（ａ）〜（ｅ）を備えている。
（ａ）ＣＰＵ１０１：ＲＯＭ１０３に格納されている制御プログラムを読み出し、実行する。
（ｂ）ＲＡＭ１０２：個人データなどを一時的に記憶する。
（ｃ）ＲＯＭ１０３：制御プログラムや個人データなどを記憶する。
（ｄ）ネットワーク通信部１０４：ネットワーク３００を介し、端末装置２００とデータの送受信を行う。
（ｅ）データ蓄積部１０５：端末装置２００から送信されてくる個人データなどを蓄積する。
【００２９】
端末装置２００は、センターサーバ１００から取得した個人データに基づいて、他の端末装置２００とネットワーク３００を介し、ゲームを行う。図２は、端末装置２００の構成を示す。端末装置２００は、下記（ａ）〜（ｍ）の要素を有している。
（ａ）ＣＰＵ２０１：ＲＯＭ２０３に記憶されている制御プログラムを実行する。
（ｂ）ＲＡＭ２０２：各種変数やパラメータなどを一時的に記憶する。
（ｃ）ＲＯＭ２０３：制御プログラムや各種パラメータなどを記憶する。
（ｄ）ネットワーク通信部２０４：ネットワークを介し、センターサーバ１００や他の端末装置２００とデータ送受信を行う。
（ｅ）モニタ２０６：ゲーム画像を表示する。
（ｆ）描画処理部２０５：モニタ２０６に表示する画像データを生成する。
（ｇ）スピーカ２０８：ゲーム実行中やデモ画面表示中のサウンドを出力する。
（ｈ）音声再生部２０７：スピーカ２０８に発音させるためのサウンドデータを生成する。
（ｉ）入力操作部２１１：ジョイスティックや操作ボタンなどから構成されプレイヤの指示入力を受け付ける。
（ｊ）カードリーダ・ライタ２１２：挿入される磁気カードに対してデータの読取・書込処理を実行する。
（ｋ）コイン受付部２１３：挿入されるコインによるクレジットを受け付ける。
（ｌ）外部機器制御部２１０：操作部カードリーダ・ライタ２１２及びコイン受付部２１３などの外部機器を制御する。
（ｍ）外部入出力制御部２０９：カードリーダ・ライタ２１２及びコイン受付部２１３などの外部機器に対する制御信号を生成する。また、外部機器からの検出信号を受信してＣＰＵ２０１に送出する。
【００３０】
上記のように構成された端末装置２００では、次のようにしてゲームが行われる。プレイヤは、端末装置２００において自己の所有する磁気カードをカードリーダ・ライタ２１２に挿入し、コイン受付部２１３にコインを投入する。端末装置２００は、カードリーダ・ライタ２１２に挿入された磁気カードからプレイヤを識別するプレイヤＩＤを読み取り、センターサーバ１００のデータ蓄積部１０５に格納されている個人データをダウンロードする。その後、端末装置２００は、自己のネットワークアドレスをセンターサーバ１００に送信し、対戦相手のネットワークアドレスを取得する。いずれの端末装置２００がマスタとなるかを決定後、マスタ端末にクライアント端末の個人データを送信する。マスタ端末は、ゲームに参加する全ての端末装置２００（以下、単に全ての端末装置２００という）の個人データに基づいてゲームを開始する。ゲーム開始からゲーム終了までの間、全ての端末装置２００がマスタ端末となる機会を享受するように、基本的にはゲーム進行単位が終了するとマスタ端末が切り替わる。
【００３１】
［マスタの切替］
（１）切替の流れ
図３は、ゲーム中にマスタ端末が切り替わることを示す説明図である。説明を容易にするために３つの端末装置Ａ，Ｂ，Ｃが対戦する場合を例にとり、説明する。対戦する端末装置の数は、２つ以上であればいくつでもかまわない。
各端末装置Ａ，Ｂ，Ｃは、センターサーバ１００から個人データを受信後、自分自身が最初のゲーム進行単位でマスタ端末になるかを、マスタ決定ルールに基づいてそれぞれに判断する。この例では、端末装置Ａが最初のマスタ端末になる。最初のマスタ端末決定後、端末装置Ａをマスタとし、端末装置Ｂ，Ｃをクライアントとしてゲームを開始する（＃１，＃２）。なお、ゲームの開始に先立ち、クライアント端末Ｂ，Ｃは、自己の個人データをマスタ端末Ａに送信する。個人データは、プレイヤが繰り返しゲームを行う時に用いるデータを含む。サッカーゲームを例に取れば、チーム名、選手名、過去の戦績などが個人データの一例としてあげられる。
【００３２】
マスタ端末Ａは、最初のゲーム進行単位が終了すると、次のマスタ端末を決定する。次のマスタ端末はマスタ決定ルールに基づいて決定される。端末端末Ａは、次のマスタ端末の指定、例えばＩＰアドレスを記述した切替通知を端末装置Ｂ，Ｃに送信する（＃３）。切替通知は、通信の確実性が担保される通信プロトコル、ＴＣＰ／ＩＰなどを用いて送信される。この例では、切替通知は、ゲーム進行単位の終了通知と次のマスタ端末の指定通知とを兼ねているが、両通知を別々に送信しても良い。さらに、端末装置Ａは、ゲームの続行に必要なデータであるゲームデータを、次のマスタ端末、この例では端末装置Ｂに送信する（＃４）。ゲームデータには、全ての端末装置２００の個人データも含まれている。ゲームデータを送信中は、マスタである端末装置Ａは、他の端末装置Ｂ，Ｃからのデータを受信しても、そのデータを無視する。ネットワーク負荷やマスタ端末の負荷を軽減するために、ゲーム進行単位の終了後は、クライアント端末Ｂ，Ｃからマスタ端末Ａへのプレイヤからの指示入力の送信を休止することが好ましい。
【００３３】
端末装置Ｂは、切替通知に基づいて次のゲーム進行単位で自分がマスタ端末になることを知る。また端末装置Ｃは、切替通知に基づいて次のゲーム進行単位で自分がクライアント端末になることを知る。端末装置Ｂは、ゲームデータを受信すると、クライアントである他の端末装置Ａ，Ｃにゲームの再開通知を送信する（＃５）。再開通知は、通信の確実性が担保される通信プロトコル、ＴＣＰ／ＩＰなどを用いて送信される。ついで、端末装置Ｂはマスタとして、端末装置Ａ，Ｃはクライアントとして、それぞれゲームを再開し、２番目のゲーム進行単位におけるゲームを続行する（＃６，＃７，＃８）。
【００３４】
２番目のゲーム進行単位が終了すると、再度マスタ端末が切り替わる。マスタであった端末装置Ｂは、ゲーム進行単位が終了すると次のマスタ端末を決定し、そのＩＰアドレスなど記述した切替通知を端末装置Ａ，Ｃに送信する（＃９）。さらに、端末装置Ｂは、ゲームの続行に必要なデータであるゲームデータを、次のマスタ端末、この例では端末装置Ｃに送信する（＃１０）。
端末装置Ｃは、切替通知に基づいて次のゲーム進行単位で自分がマスタ端末になることを知る。端末装置Ｃは、ゲームデータを受信すると、クライアントである他の端末装置Ａ，Ｂにゲームの再開通知を送信する（＃１１）。ついで、端末装置Ｃはマスタとして、端末装置Ａ，Ｂはクライアントとして、それぞれゲームを再開し、３番目のゲーム進行単位におけるゲームを続行する（＃１２，＃１３）。
【００３５】
このように、ゲームの開始からゲームの終了までに、端末装置Ａ，Ｂ，Ｃのそれぞれが必ずマスタ端末として動作するよう、マスタ端末を切り替える。マスタの切替は、ゲームの開始から終了までのゲーム中に、少なくとも各端末装置が一度はマスタ端末となるように行われる。また各端末装置は、各端末装置が１回ずつマスタとなった後もゲームが終了していない場合、再度マスタとなっても良い。その場合に各端末装置がマスタを割り当てる順序は、最初の一巡の順序と同じであっても異なっていても良い。
【００３６】
（２）ゲーム進行単位
１つのゲームはその開始から終了までの間に、複数のゲーム進行単位を含んでいる。ゲームの進行上、各端末装置がプレイヤからの指示入力を受け付けないタイミングでマスタが切り替わるようにゲーム進行単位を設定すると、ゲーム処理とマスタの切替処理との相乗効果を得ることができ好ましい。ゲーム進行単位の設定内容は、各端末装置２００に共通であり、端末装置２００に記憶されていても良いし、そうでなくても良い。例えばＲＯＭ２０３などにゲーム進行単位の設定内容を記憶しておき、ＲＯＭ２０３から読み出したゲーム進行単位の設定内容を所定の作業メモリ領域に書き込み、必要に応じてそこから読み出して演算に使用しても良い。また、ネットワークを介してゲーム進行単位の設定内容をセンターサーバ１００からダウンロードし、ダウンロードしたデータを所定の作業メモリ領域に書き込んでおき、必要に応じてそこから読み出して演算に使用しても良い。また、ゲーム進行単位の設定内容は、端末装置２００が実行するプログラムに組み込まれており、プログラムがＲＯＭ２０３から読み出されることにより読み出されても良い。
【００３７】
図４（Ａ）は、ゲームの進行上、各端末装置がプレイヤからの指示入力を受け付けないタイミングでマスタが切り替わるように設定されたゲーム進行単位の一例を示す。ここではサッカーゲームにおけるゲーム進行単位の設定例を示し、前半及び後半がそれぞれ１ゲーム進行単位となっている。延長戦がある場合には各延長戦が１ゲーム進行単位となる。このようなゲーム進行単位を他のゲームに適用した例として、野球ゲームにおける各回の裏と表、テニスゲームにおける各ゲーム、ボクシングゲームにおける各ラウンドを挙げることができる。さらにサッカーゲームを例に挙げれば、ファウル発生時及びハーフタイムにプレイヤからの指示入力を受け付けないこととし、それらのタイミングとタイミングとの間を、１ゲーム進行単位とすることもできる。もちろん、ゲームの進行とは独立に、所定の長さの時間Ｔによりゲームを区切り、各一区切りを１ゲーム進行単位としても良い。ゲーム進行単位はこの例に限定されないし、同じゲームでも様々なゲーム進行単位の設定が可能である。
【００３８】
マスタ端末は基本的にゲーム進行単位毎に切り替わる。１ゲーム進行単位が前半及び後半であれば、前半と後半とでマスタ端末が切り替わる。１ゲーム進行単位が所定長さの時間Ｔであれば、時間Ｔ毎にマスタ端末が切り替わる。１ゲーム進行単位がプレイヤからの指示入力を受け付けない時間帯である自動進行時間帯で区切られるのであれば、自動進行時間帯がくるたびにマスタ端末が切り替わる。但し、後述するように、複数のゲーム進行単位に渡り同じ端末装置がマスタ端末となる場合もある（後述する第２実施形態例参照）。
【００３９】
（３）マスタ決定ルール
図４（Ｂ）は、ゲーム進行単位の開始前にいずれの端末装置がマスタ端末となるかを決定するためのマスタ決定ルールの一例を示す説明図である。マスタ決定ルールは、各端末装置２００に共通であり、端末装置２００に記憶されていても良いしそうでなくても良い。例えばＲＯＭ２０３などにマスタ決定ルールを記憶しておき、ＲＯＭ２０３から読み出したマスタ決定ルールを所定の作業メモリ領域に書き込み、必要に応じてそこから読み出して演算に使用しても良い。また、ネットワークを介してマスタ決定ルールをセンターサーバ１００からダウンロードし、ダウンロードしたデータを所定の作業メモリ領域に書き込んでおき、必要に応じてそこから読み出して演算に使用しても良い。また、マスタ決定ルールは、端末装置２００が実行するプログラムに組み込まれており、プログラムが読み出されることにより読み出されても良い。
【００４０】
マスタ決定ルールの内容は任意である。この例では、各端末装置２００は、ＩＰアドレスが大きい順に順次マスタとなり（条件１）、マスタが切り替わるのはゲーム進行単位が終了するタイミングであり毎にマスタが切り替わり（条件２）、各端末装置２００が１回ずつマスタになってもゲームが終了しない場合には各端末装置２００は再度マスタになることができる（条件３）。もちろん、マスタ決定ルールは、この例に限定されない。
図５は、図４（Ａ）のゲーム進行単位の設定及び同図（Ｂ）のマスタ決定ルールの一適用例を示す。説明を容易にするために、サッカーゲームを端末装置Ａ、端末装置Ｂが行うとする。ＩＰアドレスは、端末装置Ａが端末装置Ｂよりも大きいとする。条件１に従い、最初のゲーム進行単位「前半」では、端末装置Ａがマスタとなる。条件２に従い、「前半」が終了するとマスタが切り替わる。端末装置Ａの次にＩＰアドレスが大きいのは端末装置Ｂなので、条件１に従い「後半」では端末装置Ｂがマスタとなる。条件２に従い、「後半」が終了するとマスタが切り替わる。マスタの役割がゲームに参加している全ての端末装置Ａ，Ｂを一巡した後は、条件３に従い各端末装置Ａ，Ｂは再度マスタになることができる。しかし、条件１により、次のゲーム進行単位「延長戦１」でマスタとなるのは端末装置Ａである。このように、ゲーム進行単位の設定及びマスタ決定ルールに従い、ゲーム中にマスタ端末が切り替わる。
【００４１】
（４）入力データ、出力データ、ゲームデータ
図６（Ａ）は、クライアント端末からマスタ端末に送信される入力データの一例を示す。説明を容易にするため、以下ではサッカーゲームを例にとり説明する。入力データは、クライアント端末におけるプレイヤの指示入力の内容を示すデータである。各クライアント端末は、指示入力が発生する度に、マスタ端末に入力データを送信する。この図では、「上下左右いずれのレバーが入力されたか」、「５つあるボタンのいずれが入力されたか」、を表す入力データを示している。
【００４２】
図６（Ｂ）は、マスタ端末からクライアント端末に送信される出力データの一例を示す。出力データは、クライアント端末においてゲーム画面を表示するためのフレームデータやサウンドを出力するための音声データである。マスタ端末は、データの種類に応じた時間感覚で、各種の出力データをクライアント端末に送信する。例えばフレームデータであれば１／６０（ｓｅｃ）毎に送信する。
図６（Ｃ）は、マスタ端末が切り替わるときに次のマスタ端末に送信されるゲームデータの一例である。ゲームデータは、ゲームの履歴を含み、ゲームの続行に必要なデータである。例えば、選手の残り体力、各選手のイエローカード及びレッドカードの枚数、今までのシュート本数、今までのファウル本数、得点、チーム名、選手データなどが挙げられる。ゲームデータは、通信の確実性が担保される通信プロトコル、ＴＣＰ／ＩＰなどを用いて送信される。
【００４３】
［端末装置の処理］
次に、端末装置２００が行う処理について、より詳細に説明する。説明を容易にするために、以下では前記図４に示したゲーム設定及びマスタ決定ルールに基づく処理を説明する。
（１）メインルーチン
図７は、端末装置２００のＣＰＵ２０１が行うメインルーチンの流れの一例を示すフローチャートである。端末装置２００は、自分がマスタであればマスタ処理によりゲームを実行し、自分がクライアントであればクライアント処理によりゲームを実行する。
【００４４】
ステップＳ１：ＣＰＵ２０１は、カードリーダ・ライタ２１２が読み込んだプレイヤＩＤを取得する。
ステップＳ２：ＣＰＵ２０１は、プレイヤＩＤをセンターサーバ１００に送信し、プレイヤＩＤに応じた個人データをダウンロードする。
ステップＳ３：ＣＰＵ２０１は、対戦相手決定処理を実行し、ネットワーク３００を介して対戦する対戦相手の端末装置のＩＰアドレスを取得する。
ステップＳ４：ＣＰＵ２０１は、対戦相手と自分のＩＰアドレスを比較する。
【００４５】
ステップＳ５：ＣＰＵ２０１は、比較結果に基づき、最初のゲーム進行単位でマスタになるかどうかを決定する（マスタ決定手段）。
ステップＳ６：ＣＰＵ２０１は、実行されようとしてるゲーム進行単位でマスタになる場合にはマスタ処理を行う（ゲーム実行手段）。この処理では、ＣＰＵ２０１は、１ゲーム進行単位においてマスタとしてゲームを実行し、１ゲーム進行単位が終了すると、次のマスタを決定して切替通知を送信するか、またはゲーム終了通知を送信する。
【００４６】
ステップＳ７、Ｓ８：ＣＰＵ２０１は、マスタを切り替えるのか否か、すなわちゲーム進行単位の終了なのか、それともゲーム終了なのかを判断する（Ｓ７）。マスタを切り替える場合（Ｓ７）、次のゲーム進行単位でのマスタ端末に、ゲームデータを送信する（切替手段）（Ｓ８）。ゲームデータの送信中は、クライアント端末からの指示データを受信しても無視する（制限手段）。
ステップＳ９：ついで、ＣＰＵ２０１は、次のゲーム進行単位でのマスタ端末からのゲーム再開通知を待機し、これを受信するとステップＳ１０に移行する。すなわち、クライアントとして次のゲーム進行単位におけるゲームを実行する。
【００４７】
ステップＳ１０：ＣＰＵ２０１は、ゲーム開始前にクライアントになると決定した場合（Ｓ５）、またはゲーム進行単位終了後に次のマスタに指定されなかった場合（後述するＳ１２）、クライアント処理によりゲームを実行する（ゲーム実行手段）。すなわち、入力データをマスタ端末に送信し、マスタ端末から受信する出力データに基づいて出力を制御する処理を行う。
ステップＳ１１：ＣＰＵ２０１は、マスタ端末から切替通知を受信した場合、ステップＳ１２に移行する。ゲーム終了通知を受信した場合、ステップＳ１５に移行する。
【００４８】
ステップＳ１２：ＣＰＵ２０１は、切替通知に基づき、次のゲーム進行単位でマスタになるか否かを判断し、マスタになる場合はステップＳ１３に移行する（マスタ決定手段）。クライアントになる場合は前述のステップＳ９に移行し、再開通知を待ってクライアント処理を実行する（Ｓ９，Ｓ１０）。
ステップＳ１３、Ｓ１４：ＣＰＵ２０１は、切替通知で次のマスタに指定された場合、前のマスタ端末からゲームデータを受信し（Ｓ１３）、他の端末装置にゲーム再開通知を送信する（再開通知手段）（Ｓ１４）。その後、前記ステップＳ６に戻り、マスタ処理を実行する（Ｓ６）。
【００４９】
ステップＳ１５：ＣＰＵ２０１は、ゲームが終了する場合、ゲーム結果の表示、個人データのアップロードなどを行い、処理を終了する。
（２）対戦相手決定処理
図８は、前記メインルーチンのステップＳ３において実行される対戦相手決定処理の流れの一例を示すフローチャートである。この処理では、ＣＰＵ２０１は、ネットワーク対戦する相手端末装置のＩＰアドレスを、センターサーバ１００を介して取得する。
【００５０】
ステップＳ３１：ＣＰＵ２０１は、自分自身のＩＰアドレスをセンターサーバ１００に送信し、センターサーバ１００のＲＡＭ２０２に記憶されている募集リストへのＩＰアドレスの登録を要求する。
ステップＳ３２〜Ｓ３３：ＣＰＵ２０１は、他の端末装置２００から対戦要求を受信したか否かを判断し（Ｓ３２）、まだであればセンターサーバ１００から募集リストを取得する（Ｓ３３）。対戦要求を受信していれば、後述するステップＳ４０に移行する。
【００５１】
ステップＳ３４〜Ｓ３５：ＣＰＵ２０１は、募集リストに、自分のアドレス以外のＩＰアドレスが登録されているかどうかを判断し（Ｓ３４）、“Ｙｅｓ”と判断するといずれかのＩＰアドレスを選択する（Ｓ３５）。
ステップＳ３６：ＣＰＵ２０１は、選択したＩＰアドレスに対し、対戦要求コマンドが記述された対戦要求パケットを送信する。
ステップＳ３７〜Ｓ３９：ＣＰＵ２０１は、送信した対戦要求パケットに対する返答パケットの受信を待機し（Ｓ３７）、対戦ＯＫの応答を受信すると（Ｓ３８）、自分のＩＰアドレスを募集リストから抹消するようセンターサーバ１００に要求する（Ｓ３９）。対戦が拒否された場合（Ｓ３８）、再び前記ステップＳ３２に戻り、前述の処理を繰り返す。
【００５２】
ステップＳ４０：ＣＰＵ２０１は、ＩＰアドレスを募集リストに登録した後に対戦要求を受信した場合（Ｓ３２）、対戦ＯＫの返答パケットを要求元に送信し（Ｓ４０）、自分自身のＩＰアドレスを募集リストから抹消してもらう（Ｓ３９）。
（３）マスタ処理
図９は、前記メインルーチンのステップＳ６でＣＰＵ２０１が実行するマスタ処理の流れの一例を示すフローチャートである。この処理では、ＣＰＵ２０１は、マスタとしてゲーム進行単位が終了するまでゲームを実行する。
【００５３】
ステップＳ６１：ＣＰＵ２０１は、自端末におけるプレイヤの指示入力か、またはクライアント端末からの入力データの受信を待機し、いずれかがあるとステップＳ６２に移行する。
ステップＳ６２：ＣＰＵ２０１は、入力データを選手などキャラクタのアクションに変換する。
ステップＳ６３：ＣＰＵ２０１は、自端末の描画処理部２０５や音声再生部２０７に出力データを送出し、出力を制御する。
【００５４】
ステップＳ６４：ＣＰＵ２０１は、出力データをクライアント端末にネットワーク３００を介して送信する。
ステップＳ６５〜Ｓ６７：ＣＰＵ２０１は、ゲーム進行単位の設定に基づいて、ゲーム進行単位が終了するか否かを判断する（Ｓ６５）。ゲーム進行単位が終了する場合（Ｓ６５）、ＣＰＵ２０１は、マスタ決定ルールに基づいて次のゲーム進行単位でのマスタ端末を決定する（マスタ決定手段）（Ｓ６６）。ついで、ＣＰＵ２０１は、次のマスタ端末のＩＰアドレスなどを含む切替通知を、他の全ての端末装置２００に送信する（切替手段）（Ｓ６７）。
【００５５】
ステップＳ６８〜Ｓ６９：ＣＰＵ２０１は、ゲーム進行単位の終了であると共に、ゲームが終了するか否かを判断し、“Ｙｅｓ”と判断するとゲーム終了通知を他の全ての端末装置２００に送信する（Ｓ６９）。ゲーム終了通知には、クライアント端末がゲームの終了処理を行うために必要なデータが含まれている。ゲームが終了しないと判断すると、再びステップＳ６１に戻り、前述の処理をゲーム進行単位の終了まで繰り返す。
（４）クライアント処理
図１０は、前記メインルーチンのステップＳ１０でＣＰＵ２０１が実行するクライアント処理の流れの一例を示すフローチャートである。この処理では、ＣＰＵ２０１は、クライアントとしてゲームを実行する。
【００５６】
ステップＳ１０１〜Ｓ１０２：ＣＰＵ２０１は、プレイヤからの指示入力を待機し（Ｓ１０１）、指示入力がある度に入力データをマスタ端末に送信する（Ｓ１０２）。
ステップＳ１０３：ＣＰＵ２０１は、マスタ端末から切替通知またはゲーム終了通知を受信したかどうかを判断し、受信した場合はメインルーチンに戻る。
ステップＳ１０４〜Ｓ１０５：ＣＰＵ２０１は、マスタ端末からの出力データの受信を待機し（Ｓ１０４）、受信した出力データを描画処理部２０５や音声制裁西部２０７に送出して画面出力や音声出力を制御する（Ｓ１０５）。
【００５７】
［センターサーバの処理］
図１１は、センターサーバ１００が行う処理の流れの一例を示すフローチャートである。センターサーバ１００のＣＰＵ１０１は、個人データを端末装置２００に送信する処理（Ｓ１１１〜Ｓ１１３）、募集リストへの登録（Ｓ１１４〜Ｓ１１６）、募集リストからの抹消（Ｓ１１７〜Ｓ１１８）を行う。
ステップＳ１１１〜Ｓ１１３：ＣＰＵ１０１は、いずれかの端末装置２００からの個人データの要求を受信すると（Ｓ１１１）、ＲＯＭ１０３から要求された個人データを読み出し（Ｓ１１２）、要求元に送信する（Ｓ１１３）。個人データは、プレイヤＩＤと対応付けられてＲＯＭ１０３に記憶されている。
【００５８】
ステップＳ１１４〜Ｓ１１６：ＣＰＵ１０１は、いずれかの端末装置２００から募集リストへのＩＰアドレスの登録要求を受信すると（Ｓ１１４）、募集リストへその端末のＩＰアドレスを登録し（Ｓ１１５）、募集リストを要求元に送信する（Ｓ１１６）。
ステップＳ１１７〜Ｓ１１８：ＣＰＵ１０１は、いずれかの端末装置２００から募集リストからのＩＰアドレスの抹消要求を受信すると（Ｓ１１７）、募集リストから該当ＩＰアドレスを削除する（Ｓ１１８）。募集リストにはまだ対戦相手が未定の端末装置のＩＰアドレスだけを掲載しておくために、対戦相手が決まった端末装置のＩＰアドレスを募集リストから削除するのである。
【００５９】
ステップＳ１１９：ＣＰＵ１０１は、例えばセンターサーバ１００の電源がオフになるまで、前述の処理を繰り返す。
［第１実施形態例の効果］
ゲーム進行単位毎にマスタを切り替えることにより、ゲームに参加する端末装置のプレイヤは実質的に均等にマスタとなる機会を享受する。従って、アクション性の高いゲームをネットワーク対戦により行う場合でも、マスタ端末とクライアント端末とのゲームの応答性の差に起因して、あるプレイヤが有利になったり不利になったりすることを防止することができる。その結果、アクション性の高いゲームのネットワーク対戦におけるプレイヤ間での不公平感をなくし、この種のゲームのネットワーク対戦を現実化することができる。
【００６０】
＜第２実施形態例＞
ゲーム進行単位毎にマスタ端末が切り替わらず、同一の端末装置２００が続けてマスタ端末となる場合について説明する。ゲームシステムおよび端末装置２００の構成は、前記図１及び図２に示したとおりである。
図１２（Ａ）は、第２実施形態例に係るゲーム進行単位の設定内容の一例を示す説明図である。この例では、プレイヤの指示入力を受け付けない時間に挟まれた時間帯を１ゲーム進行単位としている。サッカーゲームを例に挙げれば、ファウルが発生して所定時間の間やハーフタイムの間などは、プレイヤからの指示入力を受け付けない。このような時間帯により挟まれる時間帯を、１ゲーム進行単位とすることができる。そして、プレイヤからの指示入力を受け付けない時間帯に、ゲームデータの送受信を行い、マスタを切り替える。
【００６１】
図１２（Ｂ）は、第２実施形態例に係るマスタ決定ルールの一例を示す説明図である。このルールによれば、全ての端末装置がＩＰアドレス順に１度ずつマスタになり（条件１，２）、その後はゲーム進行単位終了時にマスタ経験時間が一番少ない端末装置が次のマスタとなる（条件３）。マスタ経験時間とは、マスタとなった述べ時間であり、マスタ端末のＲＡＭ２０２などに一時的に記憶され（時間記憶手段）、ゲームデータの一部として次のマスタ端末に送信される。
図１３は、図１２（Ａ）のゲーム進行単位の設定及び同図（Ｂ）のマスタ決定ルールの一適用例である。説明を容易にするため、端末装置Ａ，Ｂ，Ｃが対戦し、ＩＰアドレスの大小関係は（端末装置Ａ）＞（端末装置Ｂ）＞（端末装置Ｃ）であるとする。
【００６２】
最初は、端末装置Ａ，Ｂ，ＣはＩＰアドレスが大きい順にマスタ端末となる（同図（Ａ）〜（Ｄ））。但し、各端末装置がマスタとなっている時間はまちまちである。一巡すると、その時点でもっともマスタ経験時間が少ない端末装置Ｂ（５秒）が次のゲーム進行単位でのマスタとなる（同図（Ｅ））。この例では、端末装置Ｂはマスタ端末に２回なってもなお、そのマスタ経験時間（７秒）が端末装置Ａ（１０秒）及び端末装置Ｃ（１５秒）に比して少ないため、続けてマスタ端末となる（同図（Ｆ））。このように、マスタ経験時間に基づいて次のマスタ端末を決定することにより、各端末装置がマスタを経験する時間を平均化し、各端末装置の公平性をいっそう担保することができる。
【００６３】
図１４は、図１２（Ｂ）のマスタ決定ルールに対応するゲームデータの一例を示す説明図である。第１実施形態例におけるゲームデータに加えてさらに、各端末装置のマスタ経験時間をゲームデータに含め、新たにマスタとなる端末装置に送信する必要がある。
図１５は、図１２（Ｂ）のマスタ決定ルールに対応するマスタ処理の流れの一例を示すフローチャートである。この処理では、ＣＰＵ２０１は、マスタとしてゲーム進行単位が終了するまでゲームを実行する。
【００６４】
ステップＳ１５１：ＣＰＵ２０１は、タイマをスタートさせ、これから開始しようとするゲーム進行単位において自端末がマスタとなっている時間の測定を始める（時間演算手段）。
ステップＳ１５２：ＣＰＵ２０１は、自端末におけるプレイヤの指示入力か、またはクライアント端末からの入力データの受信を待機し、いずれかがあるとステップＳ１５３に移行する。
ステップＳ１５３：ＣＰＵ２０１は、入力データを選手などキャラクタのアクションに変換する。
【００６５】
ステップＳ１５４：ＣＰＵ２０１は、自端末の描画処理部２０５や音声再生部２０７に出力データを送出し、出力を制御する。
ステップＳ１５５：ＣＰＵ２０１は、出力データをクライアント端末にネットワーク３００を介して送信する。
ステップＳ１５６：ＣＰＵ２０１は、ゲーム進行単位の設定を参照し、ゲーム進行単位が終了するか否かを判断する。ゲーム進行単位が終了する場合（Ｓ１５６）、タイマをストップし（Ｓ１５７）、今までのマスタ経験時間に測定した時間を加算することにより、自端末の最新のマスタ経験時間を演算する（時間演算手段）（Ｓ１５８）。
【００６６】
ステップＳ１５９：ついで、ＣＰＵ２０１は、マスタ決定ルールに基づいて、次のゲーム進行単位でのマスタ端末を決定する（Ｓ１５９）。つまり、ゲームに参加している全端末装置２００のうち、マスタ経験時間が最も少ない端末装置を次のマスタ端末とする。
ステップＳ１６０：ＣＰＵ２０１は、自端末が続けてマスタ端末になるのか否かを判断し、“Ｙｅｓ”と判断するとステップＳ１５１に戻り、マスタ端末として次のゲーム進行単位におけるゲームを続行する。“Ｎｏ”と判断すると、次のマスタ端末のＩＰアドレスなどを含む切替通知を、他の端末装置２００に送信する（Ｓ１６１）。
【００６７】
ステップＳ１６２〜Ｓ１６３：ＣＰＵ２０１は、ゲーム進行単位の終了であると共に、ゲームが終了するか否かを判断し、“Ｙｅｓ”と判断するとゲーム終了通知を他の全ての端末装置２００に送信する（Ｓ１６２）。“Ｎｏ”と判断すると、再びステップＳ１５１に戻り、前述の処理をゲーム進行単位の終了まで繰り返す。
なお、端末装置２００が行う処理の流れは、マスタ処理を除き、第１実施形態と同様である。
【００６８】
［第２実施形態の効果］
マスタ経験時間が平均化するように次のマスタ端末を決定するので、対戦する端末装置の公平性がさらに担保される。
＜第３実施形態例＞
前記第１及び第２実施形態では、ゲーム中にマスタを切り替えることにより、１ゲームにおいて各端末装置にマスタになる機会を公平に付与している。しかし、前記図１に示すゲームシステムにおいて、プレイヤが何度もゲームに挑戦する場合、ゲーム中にマスタを切り替えず、その代わりに各端末装置が各ゲームでマスタになる機会とクライアントになる機会とのバランスが概ね平等となるようにしてもよい。
【００６９】
各ゲームでのマスタの決定方法として、例えば次の方法が挙げられる。端末装置Ａ，Ｂ，Ｃがゲームを開始しようとしている場合、各端末装置が今までにマスタとなった回数（マスタ回数という）とクライアントになった回数（クライアント回数という）とに基づいて、いずれの端末装置がマスタになるかを決めることができる。より具体的には、端末装置ＣＰＵ２０１は、自端末装置のマスタ経験値を、マスタになった場合は＋１を加算し、クライアントになった場合は−１を加算することにより演算する。マスタ経験値の初期値はゼロとする。１対１のゲームであれば、端末装置のマスタ経験値がゼロに近いほど、マスタになった回数とクライアントになった回数とがバランスしていることを示す。そして、ゲームの開始前に対戦相手のマスタ経験値をセンターサーバ１００または対戦相手から取得し、マスタ経験値が最も少ない端末装置をマスタに決定する。マスタ経験値は、個人データに含めることができ、磁気カードに記録しておいても良いし、センターサーバ１００のＲＯＭ１０３などに記録しておいても良い。センターサーバ１００によりマスタを決定することも可能である。
【００７０】
別のマスタ決定方法としては、各端末装置が今までに行ったゲームにおいてマスタになった割合に基づいてマスタを決定する方法が挙げられる。例えば、各端末装置がゲームを行った総回数であるゲーム回数とマスタになった回数であるマスタ回数とをマスタ経験値として用いる。端末装置のＣＰＵ２０１は、自端末装置及び対戦相手のマスタ経験値に基づいてゲームに参加する端末装置の割合を次式により演算し、マスタ割合が最も低い端末装置をマスタに決定する。１対１のゲームであればマスタ割合が０．５に近いほどマスタになった回数とクライアントになった回数とがバランスしていることを示す。
【００７１】
（マスタ割合）＝（マスタ回数）／（ゲーム回数）
［端末装置の処理］
以下に、端末装置の処理について、端末装置がマスタを決定する場合を例に取り説明する。説明を容易にするために、端末装置２００が互いのマスタ経験値を送受信し、各端末装置２００がマスタとなる端末装置を決定する場合を例に取る。センターサーバ１００の処理は前記図１１と同様である。
（１）メインルーチン
図１６は、端末装置２００においてマスタを決定する場合の、ＣＰＵ２０１が行うメインルーチンの流れの一例を示すフローチャートである。ＣＰＵ２０１は、ゲームの開始前にマスタになる端末装置を決定し、決定後は自端末がマスタかクライアントかに応じた処理を行う。
【００７２】
ステップＳ２０１〜Ｓ２０３：前記第１実施形態例のメインルーチンにおけるステップＳ１〜Ｓ３と同様の処理を行う。すなわち、ＣＰＵ２０１は、カードリーダ・ライタ２１２に記録されたプレイヤＩＤに基づいて、センターサーバ１００から個人データをダウンロードし、対戦相手の端末装置のＩＰアドレスを取得する。対戦相手を決定する処理は、前記第１実施形態例と同様である（図８参照）。
ステップＳ２０４：ＣＰＵ２０１は、例えば対戦相手の端末装置２００から相手のマスタ経験値を受信し、対戦する端末装置全てのマスタ経験値を比較する。
【００７３】
ステップＳ２０５：ＣＰＵ２０１は、比較結果に基づき、自端末装置がマスタになるかどうかを決定する。
ステップＳ２０６、Ｓ２０７：ＣＰＵ２０１は、実行しようとしているゲームでマスタになる場合にはマスタ処理を行う（ゲーム実行手段）（Ｓ２０６）。逆にクライアントになる場合はクライアント処理を行う（ゲーム実行手段）（Ｓ２０７）。
ステップＳ２０８：ＣＰＵ２０１は、自端末のマスタ経験値を更新する。
【００７４】
ステップＳ２０９：ＣＰＵ２０１は、ゲーム結果の表示、マスタ経験値を含む個人データのアップロードなどを行い、処理を終了する。
（２）マスタ処理
図１７は、前記メインルーチンのステップＳ２０６でＣＰＵ２０１が実行するマスタ処理の流れの一例を示すフローチャートである。この処理では、ＣＰＵ２０１は、マスタとしてゲームを実行する。
ステップＳ２１１：ＣＰＵ２０１は、自端末におけるプレイヤの指示入力か、またはクライアント端末からの入力データの受信を待機し、いずれかがあるとステップＳ２１２に移行する。
【００７５】
ステップＳ２１２：ＣＰＵ２０１は、入力データを選手などキャラクタのアクションに変換する。
ステップＳ２１３：ＣＰＵ２０１は、自端末の描画処理部２０５や音声再生部２０７に出力データを送出し、出力を制御する。
ステップＳ２１４：ＣＰＵ２０１は、出力データをクライアント端末にネットワーク３００を介して送信する。
ステップＳ２１５〜Ｓ２１６：ＣＰＵ２０１は、ゲームの終了か否かを判断する（Ｓ２１５）。ゲームが終了する場合（Ｓ２１５）、ＣＰＵ２０１は、ゲームの終了を示す通知を、他の全ての端末装置２００に送信する（Ｓ２１６）。
【００７６】
（３）クライアント処理
図１８は、前記メインルーチンのステップＳ２０７でＣＰＵ２０１が実行するクライアント処理の流れの一例を示すフローチャートである。この処理では、ＣＰＵ２０１は、クライアントとしてゲームを実行する。
ステップＳ２２１〜Ｓ２２２：ＣＰＵ２０１は、プレイヤからの指示入力を待機し（Ｓ２２１）、指示入力がある度に入力データをマスタ端末に送信する（Ｓ２２２）。
【００７７】
ステップＳ２２３〜Ｓ２２４：ＣＰＵ２０１は、マスタ端末からの出力データの受信を待機し（Ｓ２２３）、受信した出力データを描画処理部２０５や音声制裁西部２０７に送出して画面出力や音声出力を制御する（Ｓ２２４）。
ステップＳ２２５：ＣＰＵ２０１は、マスタ端末からゲーム終了通知を受信するまで上記の処理を繰り返し、ゲーム終了通知を受信するとメインルーチンに戻る。
［第３実施形態の効果］
各端末装置が何回かゲームを行う場合は、それぞれの端末装置がマスタになる機会が実質的に均等なので、マスタ端末とクライアント端末とにおけるゲームの応答性の差がゲームの勝敗の確率に及ぼす影響を実質的に解消することができる。従って、どのようなゲームであっても、プレイヤが公平にネットワーク対戦型ゲームを楽しむことができる。
【００７８】
＜その他の実施形態例＞
（Ａ）前記第１実施形態例のようにプレイヤの個人データをセンターサーバ１００に記憶させるのではなく、プレイヤの磁気カードに記憶させることもできる。その場合、センターサーバ１００は、対戦相手を探すための募集リストの更新と送信を行えばよい。
（Ｂ）次のマスタ端末の指定を含む切替通知を、次のゲーム進行単位でマスタとなる端末装置にだけ送信する様にすることもできる。前記第１実施形態例では、切替通知は、次のマスタ端末の指定通知と、ゲーム進行単位の終了通知とを兼ねている。しかし、次のマスタ端末通知をそのマスタ端末にのみ送信し、ゲーム進行単位の終了は別の通知によりその他の端末に通知することも可能である。例えば、次のマスタ端末からその他の端末装置に送信される再開通知により、前のゲーム進行単位の終了と次のゲーム進行単位の開始の両方を通知することができる。
【００７９】
（Ｃ）マスタ端末は、クライアント端末にゲーム進行単位の終了を通知することが好ましい。そして前記通知を受信したクライアント端末は、前記マスタ端末へのデータの送信を休止するとよい。ゲーム進行単位の終了後にマスタ端末からクライアント端末への無駄なデータの送信を休止することにより、ネットワーク負荷を軽減すると共に、マスタ端末の処理の負荷を軽減することができるからである。
（Ｄ）前記第２実施形態においては、マスタ経験時間に基づいてマスタを決定したが、マスタ経験時間に代えてマスタ経験単位数を用いても良い。ここで、マスタ経験単位数とは、ある端末装置２００が１ゲーム中でマスタになったゲーム進行単位の数である。マスタ経験単位数を用いる場合、端末装置がマスタになると、マスタ経験単位数に“１”を加算する（単位演算手段）。
【００８０】
（Ｅ）第３実施形態において、センターサーバ１００が各端末装置のマスタ経験値に基づいてマスタとなる端末装置を決定することも可能である。例えば、センターサーバ１００が個人データの一部としてマスタ経験値を記憶している場合を考える。まず、センターサーバ１００は、募集リストに登録されたＩＰアドレスに基づいて、対戦する端末装置２００の組み合わせを知る。次いでセンターサーバ１００は、対戦する端末装置２００それぞれのマスタ経験値を読み出し、その値に基づいてマスタ端末を決定する。その後、センターサーバ１００は、対戦する端末装置２００へ、マスタ端末を指定する通知を送信する。これにより、各端末装置２００は、どの端末装置をマスタとしてゲームを行うかを知ることができる。
【００８１】
（Ｆ）前述の実施形態において、端末装置２００は、自分自身がマスタであるかクライアントであるかを、各端末装置を操作するプレイヤに通知する役割通知手段を有していても良い。例えば、端末装置２００に接続されたモニタやスピーカから、マスタである旨またはクライアントである旨の出力表示や音声出力を行う。これにより、プレイヤは、マスタであれば攻撃に集中し、クライアントであれば守備に徹するなど、役割に応じたゲーム戦略を立てることができる。
（Ｇ）前述の実施形態は、適宜組み合わせて実施することができる。
【００８２】
（Ｈ）前述の方法をコンピュータ上で実行するためのプログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体は、本発明に含まれる。ここで記録媒体としては、コンピュータが読み書き可能なフレキシブルディスク、ハードディスク、半導体メモリ、ＣＤ−ＲＯＭ、ＤＶＤ、光磁気ディスク（ＭＯ）、その他のものが挙げられる。
【００８３】
【発明の効果】
本発明を用いれば、ネットワーク対戦型ゲームのマスタ端末とクライアント端末との応答性の差がプレイヤのゲーム環境に及ぼす影響を軽減することができる。
【図面の簡単な説明】
【図１】第１実施形態例に係るゲームシステムの概略構成を示す説明図。
【図２】端末装置２００の構成を示す説明図。
【図３】ゲーム中にマスタ端末が切り替わることを示す説明図。
【図４】（Ａ）ゲーム進行単位の設定内容の一例を示す説明図。
（Ｂ）マスタ決定ルールの一例を示す説明図。
【図５】（Ａ）ゲーム進行単位の設定例。
（Ｂ）マスタ決定ルールの一適用例。
【図６】（Ａ）クライアント端末からマスタ端末に送信される入力データの一例。
（Ｂ）マスタ端末からクライアント端末に送信される出力データの一例。
（Ｃ）マスタ端末が切り替わるときに次のマスタ端末に送信されるゲームデータの一例。
【図７】端末装置２００が行うメインルーチンの流れの一例を示すフローチャート。
【図８】対戦相手決定処理の流れの一例を示すフローチャート。
【図９】マスタ処理の流れの一例を示すフローチャート。
【図１０】クライアント処理の流れの一例を示すフローチャート。
【図１１】センターサーバ１００が行う処理の流れの一例を示すフローチャート。
【図１２】（Ａ）第２実施形態例に係るゲーム進行単位の設定内容の一例を示す説明図。
（Ｂ）第２実施形態例に係るマスタ決定ルールの一例を示す説明図。
【図１３】（Ａ）ゲーム進行単位の設定例。
（Ｂ）マスタ決定ルールの一適用例。
【図１４】図１２（Ｂ）のマスタ決定ルールに対応するゲームデータの一例を示す説明図。
【図１５】図１２（Ｂ）のマスタ決定ルールに対応するマスタ処理の流れの一例を示すフローチャート。
【図１６】端末装置２００が行うメインルーチンの流れの一例を示すフローチャート（第３実施形態）。
【図１７】マスタ処理の流れの一例を示すフローチャート（第３実施形態）。
【図１８】クライアント処理の流れの一例を示すフローチャート（第３実施形態）。
【符号の説明】
１００：センターサーバ
２００：端末装置
３００：ネットワーク
【図１】
2004350910.tif 000003
【図２】
2004350910.tif 000004
【図３】
2004350910.tif 000005
【図４】
2004350910.tif 000006
【図５】
2004350910.tif 000007
【図６】
2004350910.tif 000008
【図７】
2004350910.tif 000009
【図８】
2004350910.tif 000010
【図９】
2004350910.tif 000011
【図１０】
2004350910.tif 000012
【図１１】
2004350910.tif 000013
【図１２】
2004350910.tif 000014
【図１３】
2004350910.tif 000015
【図１４】
2004350910.tif 000016
【図１５】
2004350910.tif 000017
【図１６】
2004350910.tif 000018
【図１７】
2004350910.tif 000019
【図１８】
2004350910.tif 000020