説明

ゲーム装置

【課題】 1つの装置が通信不能となることによって全てのゲーム装置においてゲームが中断される事態を回避する。
【解決手段】 少なくとも3つのゲーム装置2を用いてゲームシステムを構築する。ゲーム装置2は、プログラムを実行してプレイヤーにゲームをプレイさせるものであり、そのプロセッサ21は対戦相手となる2以上のゲーム装置2を特定してゲームを開始する。また、プロセッサ21はプレイ中のゲームの状況に応じたゲーム情報(スコア情報および攻撃識別子)を生成し、通信インターフェイス22を用いて、上記2以上のゲーム装置2の各々に生成したゲーム情報を送信する一方、2以上の他のゲーム装置2の各々で生成されたゲーム情報を受信して、受信したゲーム情報に応じてゲームの状況を変化させる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ネットワーク型のゲームシステムに用いられるゲームシステムに関する。
【背景技術】
【0002】
特許文献1に記載のゲームシステムでは、ゲーム装置(ゲーム端末)は、ゲーム中に、ネットワーク経由で、自己の情報をサーバ装置(ゲームサーバ)へ送信し、このサーバ装置から他者の情報を受信する。また、特許文献1には、サーバ装置の機能を1又は複数のゲーム装置に担わせるようにしてもよい旨の記載がある。つまり、特許文献1には、ネットワークゲームシステムにおいて、1つのサーバ装置又はゲーム装置をマスター、残りのゲーム装置をスレーブとした、マスター/スレーブ方式の通信制御(以後、「マスター/スレーブ制御」を行うことが開示されている。
【特許文献1】特開2004−081809号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
ところで、マスター/スレーブ制御のゲームシステムでは、ゲーム中にマスターが通信不能となると、全てのゲーム装置間で情報の授受が不可能となる。したがって、全てのゲーム装置においてゲームの続行が不能となる。つまり、1つの装置が通信不能となることによって全てのゲーム装置においてゲームが中断される、という事態が生じ得る。
本発明は上述した問題に鑑みてなされたものであり、上述の事態が生じ得ないゲームシステムを提供することを目的とする。
【課題を解決するための手段】
【0004】
以下、本発明について説明する。なお、本発明の理解を容易にするために添付図面の参照符号を括弧書きにて付記するが、それにより本発明が図示の形態に限定されるものではない。
【0005】
本発明に係るゲーム装置(2B)は、他のゲーム装置(2A,2C、2D)と通信する通信手段(21、22)と、プログラムを実行してプレイヤーにゲームをプレイさせるゲーム手段(21)と、対戦相手となる2以上の前記他のゲーム装置(2A、2C)を特定して、前記ゲーム手段(21)にゲームを開始させる制御手段(21、SC1〜SC5)と、プレイ中のゲームの状況に応じたゲーム情報を生成し、前記通信手段(21、22)を用いて、前記2以上の他のゲーム装置の各々に生成した前記ゲーム情報を送信するゲーム情報生成手段(21、SC8、SJ1〜SJ11)と、前記通信手段(21、22)を用いて、前記2以上の他のゲーム装置の各々で生成された前記ゲーム情報を受信して、受信した前記ゲーム情報に応じてゲームの状況を変化させる変化手段(21、SC8、SK1〜SK7)と、を備える。
【0006】
このゲーム装置を3つ以上用いてゲームシステムを構築すれば、いずれか1つのゲーム装置が通信不能となっても他のゲーム装置間で相互にゲーム情報を送受信することができる。マスターがスレーブに対して指示を送るマスター/スレーブ制御方式では、マスターが通信不能になると残りの2つ以上のゲーム装置が正常であってもゲーム情報の送受信が不能になるが、このゲーム装置によれば、1つのゲーム装置が通信不能となっても残りの2つ以上のゲーム装置においてゲームを続行することができる。
【0007】
また、上述したゲーム装置において、前記制御手段(21、SC1〜SC5)は、自己がマスターとなるか、スレーブになるかを所定の判定条件の下に判定する判定手段(21、SC2、SC3)と、前記対戦相手となる2以上の他のゲーム装置(2A、2C)の通信アドレスを記憶する記憶手段(27)と、前記判定手段(21、SC2、SC3)によって自己がマスターであると判定された場合、前記他のゲーム装置(2A,2C、2D)からの対戦の要求を待ち、前記対戦の要求を受信すると、参加者の人数が所定数に達するまで対戦を受諾する応答を返信する処理と、前記対戦相手となる2以上の他のゲーム装置(2A、2C)の通信アドレスを前記記憶手段(27)に記憶させる処理と、前記対戦相手となる2以上の他のゲーム装置に対して記憶した通信アドレスを送信する処理とを実行するマスター手段(21、SC4)と、前記判定手段(21、SC2、SC3)によって自己がスレーブであると判定された場合、マスターの候補となるゲーム装置に対して対戦の要求を送信する処理と、対戦を受諾する応答を受信すると、マスターから取得した前記通信アドレスとマスターの通信アドレスとを前記記憶手段(27)に記憶させる処理とを実行するスレーブ手段(21、SC5)とを備え、前記ゲーム情報生成手段(21、SC8、SJ1〜SJ11)は、前記記憶手段(27)に記憶された通信アドレスを用いて、前記対戦相手となる2以上の他のゲーム装置(2A、2C)の各々に前記ゲーム情報を送信する、ことが好ましい。
【0008】
この発明によれば、対戦相手を特定するマッチング処理(エントリー期間)にあっては、マスター/スレーブ方式を採用することにより、対戦相手のマッチングをゲーム装置間で行うことができる。対戦ゲームは対戦相手を特定することがゲームの前提となるため、その期間においては、マスター/スレーブ方式を採用しても不都合はない。
【0009】
また、上述したゲーム装置において、前記マスター手段(21、SC4)は、更に、ゲームの開始タイミングを前記対戦相手となる2以上の他のゲーム装置(2A、2C)に通知する処理と、前記開始タイミングでプログラムを実行してプレイヤーにゲームをプレイさせるように前記ゲーム手段(21)を制御する処理を実行し、前記スレーブ手段(21、SC5)は、更に、マスターから前記開始タイミングの通知を受信すると、前記開始タイミングでプログラムを実行してプレイヤーにゲームをプレイさせるように前記ゲーム手段(21)を制御する処理を実行する、ことが好ましい。
このゲーム装置を3つ以上用いてゲームシステムを構築すれば、ゲーム装置間でゲームの開始を同期させることができる。
【0010】
また、上述したゲーム装置において、前記制御手段は、所定の条件が充足されると、前記対戦相手となる2以上の他のゲーム装置(2A、2C)との間の通信方式を、マスターまたはスレーブとして通信する方式から、前記ゲーム情報生成手段(21、SC8、SJ1〜SJ11)及び前記変化手段(21、SC8、SK1〜SK7)を用いて当該ゲーム装置と前記対戦相手となる2以上の他のゲーム装置(2A、2C)の各々とが相互に通信する方式に移行させる移行手段(21、SF10、SH7)を備えることが好ましい。これにより、所定の条件が充足されると、マスター・スレーブの関係を解消して個別制御に移行させることができ、ゲームのプレイ中に1つのゲーム装置が通信不能となっても、残りの2つ以上のゲーム装置において確実にゲームを続行することができる。
【0011】
また、上述したゲーム装置において、前記移行手段は、前記マスター手段(21、SC4)が前記開始タイミングを前記対戦相手となる2以上の他のゲーム装置(2A、2C)に通知したこと、または、前記スレーブ手段(21、SC5)がマスターから前記開始タイミングの通知を受信したことを、前記所定の条件とすることが好ましい。これにより、ゲーム装置間でゲームの開始を確実に同期させることができる。そして、ゲーム開始からは、各ゲーム装置が対等な関係で相互に通信を行う個別制御に切り替わる。対戦ゲームで重要なのは、プレイ中のゲーム情報の送受信である。マッチング処理中に通信不能となれば、それはマッチングが不成立になるだけであり、ゲームのプレイ自体には影響を与えない。この発明によれば、ゲーム開始を契機として個別制御に移行させるから、プレイ中にあるゲーム装置が通信不能に陥ったとしても、他のゲーム装置でゲームを続行させることが可能となる。
【0012】
また、上述したゲーム装置において、画像を表示する表示手段(24)と、プレイヤーの操作に応じた信号を出力する入力手段(23)とを備え、前記ゲーム手段(21)は、前記信号に応じてゲームを進行させる画像を前記表示手段(24)に表示させ、前記ゲーム情報生成手段(21、SC8、SJ1〜SJ11)は、前記入力手段(23)の操作に応じて取得した得点を示す得点情報を前記ゲーム情報として前記対戦相手となる2以上の他のゲーム装置(2A、2C)の各々に送信し、前記変化手段(21、SC8、SK1〜SK7)は、前記得点情報を前記ゲーム情報として受信すると、受信した前記得点情報に応じた画像を前記表示手段(24)に表示させるようにしてもよいし、前記ゲーム情報生成手段(21、SC8、SJ1〜SJ11)は、前記入力手段(23)の操作に応じて対戦相手に不利になるゲーム要素を指示する攻撃情報を生成し前記ゲーム情報として、前記対戦相手となる2以上の他のゲーム装置(2A、2C)のうち少なくとも一つに送信し、前記変化手段(21、SC8、SK1〜SK7)は、前記攻撃情報を前記ゲーム情報として受信すると、受信した前記攻撃情報の指示する前記ゲーム要素に応じた画像を前記表示手段(24)に表示させるようにしてもよい。
【0013】
これにより、プレイヤーは他のプレイヤーのゲームの状況に応じた画像を視認しながらゲームをプレイすることができる。ゲームは、画面に表示される画像及びスピーカから発音される音によって成り立つ。そして、画像や音は、ゲームを構成する個々の部品として考えることができる。例えば、ゲームの画像は、背景、移動するオブジェクト、そのオブジェクトを見えにくくするブラインド、それらの明るさ等によって構成される。また、ゲームの音は、楽音や得点を取得時の効果音、あるいは、楽音のテンポ等によって構成される。ゲーム要素とは、ゲームの画像や音を構成する個々の部品に相当し、プログラム上では、パラメータとして与えられる。そして、ゲーム要素を指定することによって、ゲームの難易度を高くする視覚効果や聴覚効果を与えることが可能である。例えば、ゲーム要素には、表示中のゲーム画面の幅を狭くすること、表示中のゲーム画面を暗くすること、表示中のゲーム画面を揺らすこと、出力される楽音の音量を小さくすること、出力される楽音の出力タイミングを遅らせることが含まれる。
【0014】
また、上記のゲーム装置において、前記信号に基づいて前記攻撃情報の送信先となる前記他のゲーム装置(2A,2C、2D)を特定する送信先特定手段(21、SJ11)を備え、前記ゲーム情報生成手段(21、SC8、SJ1〜SJ11)は、生成した前記攻撃情報を前記ゲーム情報として前記送信先特定手段により特定された前記他のゲーム装置(2A,2C、2D)へ送信するようにしてもよい。これにより、ユーザは、所望の対戦相手のプレイの邪魔をすることができる。
【0015】
また、上記のゲーム装置において、前記対戦相手となる2以上の他のゲーム装置(2A、2C)との通信を監視して通信断を検出する検出手段(21、SK5)を備え、前記ゲーム情報生成手段(21、SC8、SJ1〜SJ11)は、前記検出手段(21、SK5)により通信断が検出されると、通信断が検出されたゲーム装置(2A)への前記ゲーム情報の送信を停止し、前記対戦相手となる2以上の他のゲーム装置(2A、2C)のうち残りのゲーム装置(2C)に対して、前記ゲーム情報の送信を続行する、ことが好ましい。これにより、無駄な送信が削減されるから、通信資源を節約することが可能となる。さらに、残りのゲーム装置とは通信を続行するので、通信障害によるゲームへの影響を最小限に止めることができる。
【0016】
また、上記のゲーム装置において、前記ゲーム手段(21)は、前記検出手段(21、SK5)により通信断が検出されると、通信断が検出されたゲーム装置(2A)の替わりにコンピュータ(21)によるゲームを実行し、前記ゲーム情報を生成して前記変化手段(21、SC8、SK1〜SK7)に渡し、前記変化手段(21、SC8、SK1〜SK7)は、前記検出手段(21、SK5)により通信断が検出されると、通信断が検出されたゲーム装置(2A)の替わりに前記ゲーム手段(21)から前記ゲーム情報を取得すると共に、前記対戦相手となる2以上の他のゲーム装置(2A、2C)のうち残りのゲーム装置(2C)からの前記ゲーム情報の取得を続行し、取得した前記ゲーム情報に応じてゲームの状況を変化させる、ことが好ましい。これにより、対戦相手の数に応じてゲーム内容が大きく変化するゲームのプレイ中に1つのゲーム装置が通信不能となっても、そのゲーム装置がゲーム手段により代替されるから、ゲーム内容を大きく変化させることなくゲームを続行することができる。なお、変化手段は、ゲーム情報を記憶し、通信断が検出されると、記憶内容を参照して通信断が検出された直前のゲーム情報を引き継いでゲームの状況を変化させることが好ましい。例えば、ゲーム情報が得点情報である場合には、通信断が検出される直前の得点を基礎として、コンピュータによるゲームの得点を加算して対戦相手の得点とすればよい。
【0017】
また、上記のゲーム装置において、前記ゲーム手段(21)は、前記プログラムに従って複数の曲を順次演奏し、前記検出手段(21、SK5)により通信断が検出されると、演奏中の曲が終了して次の曲の演奏開始から、通信断が検出されたゲーム装置の替わりにコンピュータによるゲームを実行する、ことが好ましい。これにより、ゲームの流れを途切れさせることなく、通信不能となったゲーム装置をゲーム手段に代替させることができる。
【発明の効果】
【0018】
本発明によれば、いずれか1つのゲーム装置が通信不能となっても他のゲーム装置間で相互にゲーム情報を送受信することができるゲームシステムを構築可能なゲーム装置を提供することができる。このゲームシステムでは、1つのゲーム装置が通信不能となっても残りの2つ以上のゲーム装置においてゲームを続行することができる。
【発明を実施するための最良の形態】
【0019】
<構成>
図1は、本発明の一実施形態に係るゲームシステム100の全体構成を示す。
ゲームシステム100は、インターネット1を介して相互に通信可能なゲーム装置2A〜2D、ロビーサーバ3及びデータサーバ4を有し、最大で3人(3台)のプレイヤー(ゲーム装置)が対戦するゲームをプレイヤーに行わせる。
【0020】
このゲームの内容について説明する。ただし、以降の説明では、このゲームを「対戦ゲーム」と称し、ゲーム装置2A〜2Dの総称として「ゲーム装置2」を用いる。
対戦ゲームでは3つのゲームが順次実行される。各ゲームは1つの楽曲の演奏開始とともに開始し、演奏とともに進行し、演奏終了とともに終了する。つまり、対戦ゲームは、1曲目のゲーム(k=1)、2曲目のゲーム(k=2)及び3曲目のゲーム(k=3)を連ねた構成となっている。
【0021】
図2は、k曲目のゲーム中にゲーム装置2に表示されるゲーム画面の一例を示す。
ゲーム画面の中央部には、選択された楽曲に合わせてオブジェクトが図中上方に現れて図中下方に落ちて消える様子を示す画像が配置されている。この画像において、オブジェクトが消える地点の直前にはオブジェクトの落下方向に直交するラインが存在し、このラインにオブジェクトが重なったときにプレイヤーがこのオブジェクトに応じた操作を行うと、このゲーム装置2はこのオブジェクトに応じた音を発する。つまり、プレイヤーの操作のタイミング及び内容が適切であればあるほど、選択された楽曲の再生がより正確に行われる。
【0022】
ゲーム画面の下部には、スコア、コンボ数、攻撃ゲージ、及び攻撃レベルを示す画像が配置されている。スコアはラインにオブジェクトが重なったときにこのオブジェクトに応じた操作が行われると増える。コンボ数は楽曲が終了してから所定の係数を乗じてスコアに加算される値であり、上記の操作のタイミングと理想的なタイミングとのズレが予め定められた第1の範囲内であればズレ量に応じて増え、第1の範囲外であれば0に戻る。攻撃ゲージは攻撃値を長さで表すものである。攻撃値は上記の操作のタイミングと理想的なタイミングとのズレ量が予め定められた第2の範囲外であれば増える。攻撃レベルは対戦相手に対する攻撃の強度であり、攻撃値が所定の閾値未満であれば「1」、以上であれば「2」となる。特定のオブジェクトがラインに重なったときにこのオブジェクトに応じた操作が行われると、そのときの攻撃レベルに応じた強度の攻撃(邪魔)が対戦相手に対して行われ、攻撃値が初期値(最小値)に戻る。
【0023】
ゲーム画面の左部には、予め用意された候補から選択されたキャラクタ画像が配置されている。
ゲーム画面の右部には、プレイヤー毎の、プレイヤー名、スコア、称号、セリフ、キャラクタ画像の部分画像などの情報を含むプレイヤー情報を最大人数分だけ並べた画像が配置されている。なお、キャラクタ画像の部分画像は、ゲーム装置2を使用しているプレイヤーに選択されたキャラクタ画像から一部分を抜き出して縮小することにより得られる。
【0024】
図3はゲームシステム100の挙動を単純化して示す。
ゲームシステム100では、ゲームの開始に先立って複数のゲーム装置のマッチングが行われる。このマッチングのための期間がエントリー期間であり、ゲームの開始時に終了する。エントリー期間でのマッチングではマスター/スレーブ制御が行われる。マスター/スレーブ制御では、スレーブはマスターとだけ通信する。例えば、ゲーム装置2Aがマスターとなり、ゲーム装置2B及び2Cがスレーブとなった場合、ゲーム装置2B及び2Cはいずれもゲーム装置2Aのみと通信する。
【0025】
エントリー期間が終わってゲームが始まると、通信制御の方式はマスター/スレーブ制御から個別制御に移行する。個別制御では、通信制御に関して各ゲーム装置が対等な立場となり、任意の2つのゲーム装置間で通信が可能となる。したがって、例えば、何らかのエラーが生じてゲーム装置2Aが通信不能となっても、ゲーム装置2B及び2Cは相互に通信可能であるからゲームを続行することができる。この際、ゲーム装置2Bは仮想ゲーム装置BAを生成してゲーム装置2Aを代替させ、ゲーム装置2Cは仮想ゲーム装置CAを生成してゲーム装置2Aを代替させる。これにより、対戦人数が減ったことによるゲーム内容の変化を最小とすることができる。なお、仮想ゲーム装置はコンピュータをプレイヤーとした仮想的なゲーム装置であり、ゲーム装置2にとっては他のゲーム装置2と同様に動作する。
【0026】
図4はデータサーバ4の電気的構成を示す。
データサーバ4は、プレイヤーの個人情報を管理するものであり、CPU(中央処理装置)等のプロセッサ41、通信インターフェイス42及び格納部43を備える。通信インターフェイス42はプロセッサ41とインターネット1との間でデータを中継するものであり、プロセッサ41は通信インターフェイス42を介してゲーム装置2と通信する。格納部43は、IPL(Initial Program Loader)が書き込まれているROM(Read Only Memory)、ワークエリアとして用いられるRAM(Random Access Memory)、個人情報テーブルT1が確保されているハードディスクを有する。このハードディスクには後述の個人情報処理を導くプログラムが書き込まれており、プロセッサ41は、ROMからIPLを読み出して実行することによって、ハードディスクからこのプログラムを読み出して実行する処理を行う。
【0027】
図5は個人情報テーブルT1の内容の一例を示す。
個人情報テーブルT1には、プレイヤーID、カードID及び個人情報が格納されている。プレイヤーIDはプレイヤーに固有の識別子であり、ゲーム提供事業者によってプレイヤーに予め付与される。カードIDは、プレイヤーがゲームに使用するカードに固有の識別子であり、カードに書き込まれている。個人情報はプレイヤーに関する情報であり、一人のプレイヤーが複数のカードを使い分けるのを可能とするために、プレイヤーIDとカードIDとの組合せに対応付けられている。
【0028】
個人情報に含まれ得る情報としては、プレイヤーレベル、ゲーム履歴、プレイヤー名、レベル1用攻撃識別子、レベル2用攻撃識別子、攻撃時セリフ、被攻撃時セリフ及び画像識別子を示す情報がある。プレイヤーレベルはプレイヤーの上手さの指標であり、その値は1以上30以下の自然数をとる。ゲーム履歴はプレイヤーがプレイしたゲームの履歴である。プレイヤー名はプレイヤーの名前である。レベル1用攻撃識別子は攻撃レベルが1の場合に選択する攻撃の種類を示す。レベル2用攻撃識別子は攻撃レベルが2の場合に選択する攻撃の種類を示す。攻撃時セリフは攻撃を行うときに用いるセリフである。被攻撃時セリフは攻撃を受けたときに用いるセリフである。画像識別子はプレイヤーが常用するキャラクタ画像を示す。
【0029】
図6はロビーサーバ3の電気的構成を示す。
ロビーサーバ3は、ゲーム装置から対戦に関する要求を受けて応答を返すものであり、CPU等のプロセッサ31、通信インターフェイス32及び格納部33を備える。通信インターフェイス32はプロセッサ31とインターネット1との間でデータを中継するものであり、プロセッサ31は通信インターフェイス32を介してゲーム装置2と通信する。格納部33はIPLが書き込まれているROM、ワークエリアとして用いられるRAM、及び後述のロビー処理を導くプログラムが書き込まれたハードディスクを有する。プロセッサ31は、ROMからIPLを読み出して実行することによって、ハードディスクからプログラムを読み出して実行する処理を行う。
【0030】
格納部33のRAMにはエントリーリストL1及びL2が確保されている。エントリーリストL1及びL2は、それぞれ、対戦要求を受け付けているゲーム装置(マスター)の通信アドレスを並べて格納するものであり、ロビー処理の開始前には空になっており、ロビー処理において更新される。エントリーリストL1/L2はプレイヤーレベルが比較的に低い/高いプレイヤー用のエントリーリストであり、ゲーム装置からの要求の内容に応じて使い分けられる。
【0031】
図7はゲーム装置2の電気的構成を示す。
ゲーム装置2は、プログラムを実行してプレイヤーに対戦ゲームをプレイさせるものであり、CPU等のプロセッサ21、通信インターフェイス22、入力装置23、表示装置24、スピーカ25、カード読取装置26及び格納部27を備える。通信インターフェイス22はプロセッサ21とインターネット1との間でデータを中継するものであり、プロセッサ21は通信インターフェイス22を介して他のゲーム装置2、ロビーサーバ3及びデータサーバ4と通信する。入力装置23は複数のボタンを備え、ボタンが押されると、押されたボタンに固有の入力信号を生成してプロセッサ21に供給する。表示装置24はプロセッサ21からの画像データを受けて画像を表示する。スピーカ25はプロセッサ21からの楽音信号を受けて放音する。カード読取装置26は、ゲームに使用されるカードがセットされると、セットされたカードからカードIDを読み取ってプロセッサ21に供給する。
【0032】
格納部27は、ROMと、ワークエリアとして用いられるRAMとを有する。
このROMには、画像テーブルT2、称号テーブルT3、レベル変換テーブルT4及び楽曲テーブルT5が確保されており、装置情報、宛先情報D1、宛先情報D2及びゲームプログラムPが書き込まれている。一方、格納部27のRAMには、送出領域R1及びR2、マスターフラグF及び対戦テーブルT6が確保される。プロセッサ21は、ゲームプログラムPを実行することによって、プレイヤーにゲームをプレイさせるゲーム手段として機能する。
【0033】
画像テーブルT2には、プレイヤーがゲーム内で使用可能な複数のキャラクタ画像の各々について、キャラクタ画像に固有の画像識別子を示すデータとキャラクタ画像の表示に用いられる画像データとが対応付けて格納されている。
称号テーブルT3には、プレイヤーがゲーム内で使用可能な複数の称号の各々について、称号に固有の称号識別子を示すデータと、称号の表示に用いられる文字列データと、称号に応じたプレイヤーレベルの範囲を示すデータとが対応付けて格納されている。称号は地位を連想させる名詞句であり、高い地位を連想させる称号(例えば「将軍」)には高いプレイヤーレベルが対応付けられており、低い地位を連想させる称号(例えば「足軽」)には低いプレイヤーレベルが対応付けられている。
【0034】
レベル変換テーブルT4は、プレイヤーレベルをゲームレベルに変換するためのものであり、ゲームレベルのとり得る値ごとに、ゲームレベルを示すデータと、このゲームレベルに相当するプレイヤーレベルの範囲を示すデータとを対応付けて格納している。具体的には、プレイヤーレベルが1以上15以下であればゲームレベルとして1が特定され、プレイヤーレベルが16以上30以下であればゲームレベルとして2が特定されるようになっている。
【0035】
ここで、ゲームレベルについて説明する。対戦ゲームにおいて、プレイヤーレベルが著しく異なるプレイヤーが対戦すると、ゲームが一方的になり、ゲームバランスが崩れ易い。これを避けるために、同一のプレイヤーレベルのプレイヤー同士の対戦しか認めないようにすることが考えられる。しかしこの態様では、プレイヤーレベルの刻みが細かければ細かいほど、ゲームに必要な数の対戦相手を集めるのに要する時間が長くなる。この時間を短縮するためには、プレイヤーレベルの刻みを粗くすることになるが、そうすると、上手さの指標としてのプレイヤーレベルの精度が低下してしまう。そこで、ゲームシステム100では、プレイヤーレベルではなく、ゲームレベルが同一のプレイヤー同士の対戦しか認めないようにしている。ゲームレベルは対戦ゲームの難易度の指標であり、その刻みはプレイヤーレベルの刻みよりも遥かに粗く設定されている。具体的には、プレイヤーレベルの刻みが1〜30の30段階であるのに対し、ゲームレベルの刻みは1〜2の2段階である。よって、上記の時間が十分に短くなる。
【0036】
楽曲テーブルT5には、プレイヤーがゲーム内で使用可能な複数の楽曲の各々について、楽曲に固有の楽曲識別子を示すデータと、楽曲の名称を示すデータと、楽曲の演奏に用いられる楽曲データと、ゲームレベルとが対応付けて格納されている。楽曲には、ゲームの難易度が比較的に低くなる楽曲と高くなる楽曲とがあり、前者についてのゲームレベルは1、後者についてのゲームレベルは2となっている。
【0037】
装置情報は各ゲーム装置2に固有の情報であり、ゲーム装置2の通信アドレスを示す通信アドレス情報、ゲーム装置2が設置されている店舗の名称(以降、「店舗名」)を示す店舗名情報、及びこの店舗がある都道府県の名称(以降、「都道府県名」)を示す都道府県名情報を含む。
宛先情報D1はロビーサーバ3の通信アドレスを示す。
宛先情報D2はデータサーバ4の通信アドレスを示す。
ゲームプログラムPはプロセッサ21に実行されて後述の認証処理および対戦ゲーム処理を導くものである。
【0038】
送出領域R1及びR2は、それぞれ、ゲーム中に対戦相手のゲーム装置2へ送信したり引き渡したりする情報を一時的に保持する記憶領域である。
マスターフラグFは0又は1を示す情報を格納する記憶領域である。
対戦テーブルT6は対戦ゲームの開始および進行に必要な情報を格納するものであり、その内容は次に述べる通りである。
【0039】
図8は、対戦テーブルT6の内容の一例を示す。
対戦テーブルT6は対戦に係るゲーム装置2に対応する3つのレコードRC1〜RC3を有する。レコードRC1は対戦テーブルT6を有するゲーム装置2に対応し、レコードRC2及びRC3はそれぞれ対戦相手のゲーム装置2に対応している。各レコードには対応するゲーム装置2に関連するゲーム情報が格納される。ゲーム情報はゲームに用いられる情報であり、具体的には、代替状況情報、装置情報、個人情報、称号識別子、選択情報、曲順情報およびスコア情報を含む。
【0040】
代替状況情報は、仮想ゲーム装置による代替に関してゲーム装置2が置かれている状況を示すものであり、レコードRC1に対応するゲーム装置2により生成される。代替状況情報に示される状況としては、「代替不要」、「要代替」、「代替中」の3つがある。もちろん、レコードRC1に対応するゲーム装置2が仮想ゲーム装置により代替されることはないから、レコードRC1内の代替状況情報が示す状況は「代替不要」のみである。
【0041】
対戦テーブルT6における装置情報は対応するゲーム装置2の格納部27から読み出されて渡されるものであり、対戦テーブルT6における称号識別子、選択情報(画像識別子および楽曲識別子)及びスコア情報は、それぞれ、関連するゲーム装置2において生成されて渡されるものである。つまり、これらの情報はいずれも対応するゲーム装置2に起源を持つ。また、対戦テーブルT6における個人情報はデータサーバ4の格納部43から読み出されて渡されるものであり、データサーバ4に起源を持つ。
【0042】
曲順情報は、対戦ゲームに用いる3つの楽曲の使用順序を示すものであり、対戦に係るゲーム装置2のうちのマスターにより生成されてスレーブに渡される。つまり、この情報はマスターに起源を持つ。よって、対戦テーブルT6を有する装置がマスターであれば自己が生成した曲順情報を対戦テーブルT6に格納することになり、対戦テーブルT6を有する装置がスレーブであればマスターから渡された曲順情報を対戦テーブルT6に格納することになる。
【0043】
<動作>
図9〜図12はそれぞれゲームシステム100の動作例を説明するためのシーケンス図である。この動作例では図9の動作、図10の動作、図11の動作、図12の動作が順に行われる。また、この動作例は、データサーバ4の個人情報テーブルT1の内容が図5に示す通りであることを前提としている。また、ゲーム装置2A〜2Dを使用するプレイヤーのプレイヤーレベルはいずれも1〜15の範囲内にあることを前提としている。
【0044】
図9にはゲーム装置2A〜2Dが順にデータサーバ4から個人情報を取得する動作が示されている。この動作は、各ゲーム装置2のプロセッサ21が図13の認証処理を行い、データサーバ4のプロセッサ41が図14の個人情報処理を行うことによってもたらされる。以降、この動作について説明する。
【0045】
この動作では、まず、カードIDが「A」のカードがゲーム装置2Aにセットされる。すると、ゲーム装置2Aでは、カード読取装置26がこのカードからカードIDを読み取ってプロセッサ21に供給する。プロセッサ21はカードID「A」の供給を受けると、格納部27から宛先情報D2及び送信元情報を読み出し、この送信元情報および供給されたカードIDを含む認証要求を、読み出した宛先情報D2が示す通信アドレスのデータサーバ4へ送信する(図13のステップSA1)。なお、ゲーム装置2から送信される情報には必ず送信元情報が含まれるから、図9〜図12及び以降の説明では送信元情報の送信に関する記載を省略している。
【0046】
一方、データサーバ4のプロセッサ41は、情報を受信したか否かの判定(図14のステップSB1)を、情報を受信するまで繰り返しており、この繰り返し処理において、ゲーム装置2Aからの情報を受信することになる。情報を受信すると、ステップSB1の判定結果が「YES」となり、プロセッサ21は受信した情報が認証要求であるか否かを判定する(SB2)。受信した情報は認証要求であるから、次に、受信した情報に係るカードが登録済みであるか否かを判定する(SB3)。具体的には、受信した情報に含まれているカードIDをキーにして個人情報テーブルT1を検索し、ヒットしたレコードの数が1以上の場合には登録済みであると判定し、0の場合には未登録であると判定する。
【0047】
図5に示すように個人情報テーブルT1には受信した情報に含まれているカードID「A」を含むレコードが格納されているから、この局面では上記の判定結果が「YES」となる。よって、プロセッサ41は、このカードIDに対応付けられている個人情報を個人情報テーブルT1から読み出し、これを含む認証結果をゲーム装置2Aに返信する(SB4)。なお、「返信」とは、受信した要求に含まれている送信元情報が示す通信アドレスの装置へ送信することをいう。以降、データサーバ4における処理はステップSB1に移行する。
【0048】
ゲーム装置2Aのプロセッサ21は、認証要求の送信後、認証結果を受信したか否かの判定(図13のステップSA2)を、認証結果を受信するまで繰り返しており、この繰り返し処理において、データサーバ4からの認証結果を受信することになる。認証結果を受信すると、ステップSA2の判定結果が「YES」となる。よって、プロセッサ21は、受信した認証結果が未登録を示すものであるか否かを判定する(SA3)。受信した認証結果に含まれている情報は個人情報であり、未登録を示す情報ではないから、この判定結果は「NO」となり、認証処理が終了する。
【0049】
以降、ゲーム装置2B〜2Dのプロセッサ21が順に上記の認証処理を行い、カードID「B」〜「D」に対応付けられている個人情報を取得する。
ただし、図5に示すように、ゲーム装置2AのカードID「A」、ゲーム装置2BのカードID「B」およびゲーム装置2DのカードID「D」のカードは登録されているが、ゲーム装置2CにセットされたカードID「C」のカードは未登録であるから、データサーバ4はゲーム装置2Cからの認証要求を受信すると、この認証要求に係るカードは未登録であると判定し、未登録を示す情報を含む認証結果を返信する(SB1〜SB3及びSB5)。以降、データサーバ4における処理はステップSB1に移行する。
【0050】
一方、ゲーム装置2Cのプロセッサ21は、ステップSA1にて認証要求を送信した後にデータサーバ4からの認証結果を受信すると、受信した認証結果は未登録を示すものであると判定し、登録すべき情報を取得する(SA1〜SA4)。登録すべき情報は3つに大別される。1つ目はカードID「C」であり、既にカード読取装置26から供給されている。2つ目はカードIDが「C」のカードを携行しているプレイヤーのプレイヤーID「3」であり、3つ目はこのプレイヤーの個人情報である。2つ目及び3つ目の情報の取得方法は任意であるが、ゲーム装置2では、表示装置24に情報の入力を促す画像を表示させ、この表示に応じて入力装置23から供給される入力信号を用いて2つ目および3つ目の情報を生成して取得するようにしている。そして、プロセッサ21は取得した情報を含むカード登録要求をデータサーバ4へ送信する(SA5)。
【0051】
このカード登録要求はデータサーバ4のプロセッサ41により受信される。すると、データサーバ4では、ステップSB1の判定結果が「YES」となり、ステップSB2の判定結果が「NO」となる。よって、プロセッサ41は受信した情報がカード登録要求であるか否かを判定する(SB1、SB2及びSB6)。この判定結果は「YES」となるから、プロセッサ41は、受信した情報に係るカードを登録する(SB7)。具体的には、この受信した情報に含まれている上記3つの情報を対応付けて個人情報テーブルT1に格納する。この結果、個人情報テーブルT1の内容は図15に示す通りとなる。
【0052】
次にプロセッサ41は、受信した情報に含まれているカードID「C」に対応付けられている個人情報を個人情報テーブルT1から読み出し、これを含む認証結果をゲーム装置2Cに返信する(SB4)。この認証結果はゲーム装置2Cのプロセッサ21により受信される(SB6)。以降、データサーバ4における処理はステップSB1に移行し、ゲーム装置2Cでは認証処理が終了する。
【0053】
ゲーム装置2では、認証処理の終了後に、複数のゲームモードから1つを選択させるための画面が表示装置24に表示される。複数のゲームモードには、対戦ゲームを行うための対戦モードがあり、各ゲーム装置2のプロセッサ21は対戦モードが選択されると後述の対戦ゲーム処理を開始する。
【0054】
図10にはゲーム装置2Aにて対戦モードが選択されてから対戦ゲームを行うプレイヤー(ゲーム装置2)のマッチングが完了するまでの動作が示されている。この動作は、各ゲーム装置2のプロセッサ21が図16の対戦ゲーム処理を行い、ロビーサーバ3のプロセッサ31が図18のロビー処理を行うことによってもたらされる。
【0055】
図10では、まず、ゲーム装置2Aにおいて対戦モードが選択される。すると、ゲーム装置2Aのプロセッサ21は、ゲーム装置2Aの格納部27に空の拒否リスト(後述する)を書き込むとともに対戦テーブルT6を確保し、確保した対戦テーブルT6のレコードRC1〜RC3に「要代替」を示す代替状況情報を格納する一方、レコードRC1に、この格納部27に書き込まれている装置情報と受信した認証結果に含まれている個人情報とを格納し、更にこの個人情報および称号テーブルT3を用いて称号識別子を特定して格納する(図16のステップSC1)。次にプロセッサ21はマスター/スレーブ決定処理を行う(SC2)。マスター/スレーブ決定処理は、自己がマスターであるかスレーブであるかを決定する処理であり、より具体的にはマスターフラグFの値を決定する処理である。
【0056】
図17はマスター/スレーブ決定処理を示すフローチャートである。
プロセッサ21は、ゲームレベルを示す情報を含むエントリーリスト取得要求をロビーサーバ3へ送信する(SD1)。具体的には、宛先情報D1を格納部27から読み出し、図16のステップSC1で特定したプレイヤーレベルを、レベル変換テーブルT4を参照してゲームレベルに変換し、このゲームレベルを示す情報を含むエントリーリスト取得要求を、読み出した宛先情報D1が示す通信アドレスのロビーサーバ3へ送信する。ゲーム装置2Aを使用するプレイヤーのプレイヤーレベルは1〜15の範囲内にあるから、ゲームレベルは1となる。
【0057】
ロビーサーバ3のプロセッサ31は、情報を受信したか否かの判定(図18のステップSE1)を、情報を受信するまで繰り返しており、この繰り返し処理において、ゲーム装置2Aからの情報を受信することになる。情報を受信すると、プロセッサ31は受信した情報がエントリーリスト取得要求であるか否かを判定する(SE2)。この判定結果は「YES」となるから、プロセッサ31は、受信した情報に示されるゲームレベルに応じたエントリーリストL1を格納部33から読み出して返信する(SE3)。以降、ロビーサーバ3における処理はステップSE1に移行する。
【0058】
ゲーム装置2Aのプロセッサ21は、エントリーリスト取得要求の送信後、エントリーリストを受信したか否かの判定(図13のステップSD2)を、エントリーリストを受信するまで繰り返しており、この繰り返し処理において、ロビーサーバ3からのエントリーリストを受信することになる。エントリーリストを受信すると、プロセッサ21は、受信したエントリーリストが空であるか否かを判定する(SD3)。この判定結果は「YES」となる。よって、プロセッサ21は、前述のゲームレベルを示す情報を含むエントリー登録要求をロビーサーバ3へ送信し(SD4)、マスターフラグFに1を書き込む(SD5)。こうしてマスター/スレーブ決定処理が終了する。
【0059】
送信されたエントリー登録要求はロビーサーバ3のプロセッサ31により受信される。これにより、図18のステップSE2の判定結果が「NO」となる。よって、プロセッサ31は受信した情報がエントリー登録要求であるか否かを判定する(SE4)。この判定結果は「YES」となるから、プロセッサ31は受信した情報に含まれている送信元情報を用いて送信元のゲーム装置2Aの通信アドレスを特定し、これを、受信した情報に示されるゲームレベルに応じたエントリーリストL1に登録する(SE5)。具体的には、受信した情報に含まれている送信元情報を含むようにエントリーリストL1を更新する。以降、ロビーサーバ3における処理はステップSE1に移行する。
【0060】
一方、マスター/スレーブ決定処理(図16のステップSC2)を終えたゲーム装置2Aのプロセッサ21は、マスターフラグFの値が1であるか否かを判定する(SC3)。この判定結果は「YES」となるから、プロセッサ21は自己をマスターとして認識し、マスター処理を行う(SC4)。
【0061】
図19はマスター処理を示すフローチャートである。マスター処理における主要な処理には、他のゲーム装置からの対戦の要求を待ち、対戦の要求を受信すると、参加者の人数が所定数に達するまで対戦を受諾する応答を返信する処理と、対戦相手となる前記2以上の他のゲーム装置の通信アドレスを記憶させる処理と、対戦相手となる2以上の他のゲーム装置に対して記憶した通信アドレスを送信する処理がある。以下、詳述する。
【0062】
プロセッサ21は、スタート時点から60秒経過でするとタイムアウトするタイマをスタートさせるとともに、選択処理を開始する(SF1)。選択処理では、まずキャラクタ画像および楽曲を仮選択し、次にプレイヤーがキャラクタ画像および楽曲を選択するまで、仮選択されたキャラクタ画像および楽曲を、画像テーブルT2と楽曲テーブルT5と入力装置23からの入力信号とを用いて切り替える一方、入力装置23からの入力信号を用いて選択する、選択処理を開始する。この選択処理では、仮選択されたキャラクタ画像と仮選択された楽曲の名称とが表示装置24に表示され、仮選択された楽曲の楽音信号が生成されてスピーカ25に供給される。また、選択処理開始直後の仮選択は基本的にはランダムに行われるが、対戦テーブルT6のレコードRC1に格納された個人情報に画像識別子を示す情報が含まれている場合にはこの画像識別子に応じたキャラクタ画像が仮選択される。選択処理は後述のステップSF2〜SF9の処理と並列に行われ、ステップSF8又はSF9の判定結果が「YES」となると終了する。
【0063】
ステップSF2〜SF9では、プロセッサ21は、ステップSF8又はSF9の判定結果が「YES」となるまで、次に列記する処理を順に繰り返し行う。
(1)キャラクタ画像および楽曲の選択が完了したか否かを判定し(SF2)、完了したと判定した場合にのみ、選択結果を表す選択情報(画像識別子および楽曲識別子)を対戦テーブルT6のレコードRC1に格納する(SF3)。
(2)選択情報を受信したか否かを判定し(SF4)、この判定結果が「YES」の場合にのみ、選択結果を表す選択情報(画像識別子または楽曲識別子)を対戦テーブルT6のレコードRC2又はRC3に格納する(SF5)。レコードRC2及びRC3のどちらに格納するかは、受信した選択情報に含まれている送信元情報に基づいて決定される。
(3)対戦要求を受信したか否かを判定し(SF6)、この判定結果が「YES」の場合にのみ、後述の追加処理を行う(SF7)。
(4)3人分の選択が完了したか否かを判定する(SF8)。
(5)タイマがタイムアウトしたか否かを判定する(SF9)。
【0064】
動作例では、ゲーム装置2Aにおいて上記(1)〜(5)の繰り返し処理が行われている間に、ゲーム装置2Bにおいて対戦モードが選択される。すると、ゲーム装置2Bのプロセッサ21は、ゲーム装置2Aのプロセッサ21と同様の処理を行う。ただし、ゲーム装置2Bの対戦テーブルT6はゲーム装置2Bの格納部27に確保され、そのレコードRC1にはゲーム装置2Bの装置情報とゲーム装置2Bのプロセッサ21が受信した認証結果に含まれている個人情報(カードID「B」に対応付けられた個人情報)とが格納される。また、ロビーサーバ3からゲーム装置2Bへ送信されるエントリーリストL1には、ゲーム装置2Aの通信アドレスを示す情報が含まれているから、図17のステップSD3の判定の結果は「NO」となる。
【0065】
よって、ゲーム装置2Bのプロセッサ21は、受信したエントリーリストL1から拒否リスト内の情報と一致する情報を削除する(SD6)。この局面では拒否リストは空であるから、受信したエントリーリストL1は変更されない。次に、プロセッサ21は削除後のエントリーリストL1が空であるか否かを判定する(SD7)。この判定結果は「NO」となるから、プロセッサ21は、削除後のエントリーリストL1に含まれているk=1番目の情報に注目し(SD8)、注目している情報が示す通信アドレスのゲーム装置(ゲーム装置2A)へ対戦要求を送信する(SD9)。この対戦要求には、ゲーム装置2Bの装置情報、個人情報、及び称号識別子が含まれている。プロセッサ21は、対戦要求を送信すると、許可通知または拒否通知を受信するまで、許可通知を受信したか否かを判定する処理(SD10)と拒否通知を受信したか否かを判定する処理(SD11)とを繰り返し行う。
【0066】
ゲーム装置2Bからの対戦要求はゲーム装置2Aのプロセッサ21により受信される。これにより前述の(3)のステップSF6の判定結果が「YES」となる。よって、ゲーム装置2Aのプロセッサ21は追加処理を行う(SF7)。
【0067】
図20は追加処理を示すフローチャートである。
追加処理では、受信した対戦要求の送信元のゲーム装置2を対戦相手に追加すると対戦相手の人数(以降、「対戦人数」)が最大人数を超えるか否かを判定する(SG1)。この判定結果は「NO」となるから、プロセッサ21は受信した対戦要求を用いて対戦テーブルT6を更新する(SG2)。具体的には、受信した対戦要求に含まれている装置情報、個人情報、及び称号識別子と「代替不要」を示す代替状況情報とを対戦テーブルT6のレコードRC2に格納する。
【0068】
次に、対戦を許可する旨の許可通知を対戦要求の送信元のゲーム装置2へ返信することにより対戦を許可して対戦人数を2人とする(SG3)。この許可通知には、ゲーム装置2Aの装置情報、個人情報、及び称号識別子が含まれている。次に、プロセッサ21は対戦を許可したゲーム装置2が他に存在するか否かを判定する(SG4)。この判定は、対戦テーブルT6に自己および直前に対戦を許可したゲーム装置とは異なるゲーム装置2のゲーム情報が格納されているか否かを調べることにより行われる。この局面では、この判定結果が「NO」となる。よって、プロセッサ21は、対戦人数が最大人数に一致したか否かを判定する(SG5)。動作例では、この判定結果が「NO」となる。よって、プロセッサ21はタイマを再スタートさせる(SG6)。これによりタイマがタイムアウトするのは、この時点から60秒が経過した時点に延期される。こうして追加処理が終了する。
【0069】
ゲーム装置2Aからの許可通知がゲーム装置2Bのプロセッサ21により受信される。これにより、ゲーム装置2Bにおいて、図17のステップSD10の判定結果が「YES」となる。よって、ゲーム装置2Bのプロセッサ21は、マスターフラグFに0を書き込むとともに、受信した許可通知を用いて対戦テーブルT6を更新する(SD12)。この更新では、受信した対戦要求に含まれている装置情報、個人情報、及び称号識別子と「代替不要」を示す代替状況情報とが対戦テーブルT6の空いているレコードに格納される。こうして、ゲーム装置2Bにおけるマスター/スレーブ決定処理が終了する。
【0070】
ゲーム装置2Bにおけるマスター/スレーブ決定処理ではマスターフラグFの値は0に決定されるから、図16のステップSC3の判定結果は「NO」となる。よって、ゲーム装置2Bのプロセッサ21は、自己をスレーブとして認識するとともに許可通知の送信元のゲーム装置2Aをマスターとして認識し、スレーブ処理を行う(SC5)。
【0071】
図21はスレーブ処理を示すフローチャートである。スレーブ処理の主要な処理には、マスターの候補となるゲーム装置に対して対戦の要求を送信する処理と、対戦を受諾する応答を受信すると、マスターから取得した前記通信アドレスとマスターの通信アドレスとを記憶する処理が含まれる。以下、詳述する。
【0072】
プロセッサ21は、スタート時点から60秒経過でするとタイムアウトするタイマをスタートさせるとともに、キャラクタ画像や楽曲の選択を促す画像をゲーム装置2の表示装置24に表示させつつゲーム装置2Bの入力装置23からの入力信号の供給を待つ選択処理を開始する(SH1)。この選択処理は後述のステップSH2〜SH8の処理と並列に行われ、ステップSH7又はSH8の判定結果が「YES」となると終了する。
【0073】
ステップSH2〜SH8の処理では、プロセッサ21は、ステップSH7又はSH8の判定結果が「YES」となるまで、次に列記する処理を順に繰り返し行う。
(A)キャラクタ画像および楽曲の選択が完了したか否かを判定し(SH2)、完了したと判定した場合にのみ、選択結果を表す選択情報(画像識別子および楽曲識別子)をマスターへ送信する(SH3)。
(B)共有情報を受信したか否かを判定し(SH4)、この判定結果が「YES」の場合にのみ、タイマを再スタートさせ(SH5)、対戦テーブルT6を更新する(SH6)。この更新では、受信した共有情報に含まれている装置情報、個人情報、及び称号識別子と「代替不要」を示す代替状況情報とを対戦テーブルT6のレコードRC3に格納する。
(C)ゲーム開始情報を受信したか否かを判定する(SH7)。
(D)タイマがタイムアウトしたか否かを判定する(SH8)。
【0074】
動作例では、ゲーム装置2Aにおいて前述の(1)〜(5)の繰り返し処理が行われており、かつゲーム装置2Bにおいて上述の(A)〜(D)の繰り返し処理が行われている間に、ゲーム装置2Cにおいて対戦モードが選択される。すると、ゲーム装置2Cのプロセッサ21は、ゲーム装置2Bのプロセッサ21と同様の処理を行う。ただし、ゲーム装置2Cの対戦テーブルT6はゲーム装置2Cの格納部27に確保され、この対戦テーブルT6のレコードRC1にはゲーム装置2Cの装置情報とゲーム装置2Cのプロセッサ21が受信した認証結果に含まれている個人情報(カードID「C」に対応付けられた個人情報)とが格納される。また、ゲーム装置2Cからゲーム装置2Aへ送信される対戦要求には、ゲーム装置2Cの装置情報、個人情報、及び称号識別子が含まれている。よって、ステップSG2の処理が終わると、ゲーム装置2Aの対戦テーブルT6のレコードRC1〜RC3に空きがなくなる。
【0075】
ゲーム装置2Cからの対戦要求はゲーム装置2Aのプロセッサ21により受信される。このプロセッサ21が行う処理は、このプロセッサ21がゲーム装置2Bからの対戦要求を受信したときに行った処理と同様である。ただし、図20のステップSG2において情報が格納されるのはレコードRC3である。また、ステップSG2において返信される許可通知には、ゲーム装置2Aの装置情報、個人情報、及び称号識別子と、ゲーム装置2Bの装置情報、個人情報、及び称号識別子とが含まれている。よって、図17のステップSD12の処理が終わると、ゲーム装置2Cの対戦テーブルT6のレコードRC1〜RC3に空きがなくなり、以降、ゲーム装置2Cのプロセッサ21は自己をスレーブと認識して動作する。
【0076】
また、ゲーム装置2Aでは、ゲーム装置2Bについて既に対戦を許可しているから、ステップSG4の判定結果が「YES」となる。したがって、ゲーム装置2Aのプロセッサ21は共有情報をゲーム装置2Bへ送信する(SG7)。この共有情報には、最後に対戦を許可したゲーム装置2Bの装置情報、個人情報、及び称号識別子が含まれている。
【0077】
ゲーム装置2Aからの共有情報はゲーム装置2Bのプロセッサ21により受信される。これにより、前述の(B)のステップSH4の判定結果が「YES」となる。よって、このプロセッサ21は、タイマを再スタートさせ(SH5)、対戦テーブルT6を更新する(SH6)。この更新では、受信した共有情報に含まれている装置情報、個人情報、及び称号識別子と「代替不要」を示す代替状況情報とが対戦テーブルT6の空いているレコードに格納される。こうして、ゲーム装置2Cの対戦テーブルT6のレコードRC1〜RC3に空きがなくなる。以降、ゲーム装置2Cにおける処理はステップSH7に移行する。
【0078】
一方、ゲーム装置2Aのプロセッサ21は、共有情報を送信した後に、対戦人数が最大人数に一致したか否かを判定する(SG5)。対戦人数はステップSG2にて3人になっているから、この判定結果が「YES」となる。よって、プロセッサ21は前述のゲームレベルを示す情報を含むエントリー削除要求をロビーサーバ3へ送信する(SG8)。以降、ゲーム装置2Aにおける処理はステップSG6に移行する。
【0079】
ゲーム装置2Aからのエントリー削除要求はロビーサーバ3のプロセッサ31により受信される。プロセッサ31が受信した情報はエントリーリスト取得要求ではなく、エントリー登録要求でもないから、図18のステップSE2及びSE4の判定結果は「NO」となる。よって、プロセッサ31は受信した情報がエントリー削除要求であるか否かを判定する(SE6)。この局面ではこの判定結果が「YES」となる。よって、プロセッサ31は、受信した情報で示されるゲームレベルに応じたエントリーリストL1から、この情報に含まれている送信元情報と一致する情報を削除する(SE7)。つまり、ゲーム装置2Aの通信アドレスを示す情報が含まれないように、格納部33のエントリーリストL1を更新する。これにより、エントリーリストL1は空となる。以降、ロビーサーバ3における処理はステップSE1に移行する。
【0080】
動作例では、ゲーム装置2Aにおいて前述の(1)〜(5)の繰り返し処理が行われており、かつゲーム装置2B及び2Cにおいて上述の(A)〜(D)の繰り返し処理が行われている間に、ゲーム装置2Dにおいて対戦モードが選択される。このとき、ロビーサーバ3のエントリーリストL1は空であるから、ゲーム装置2Dはゲーム装置2Aと同様、マスターとして動作することになる。
【0081】
なお、通信遅延などの要因により、ゲーム装置2Aからのエントリー削除要求よりも先にゲーム装置2Dからのエントリーリスト取得要求がロビーサーバ装置3に届くと、ロビーサーバ3からゲーム装置2Dへ、ゲーム装置2Aの通信アドレスを示す情報を含むエントリーリストL1が送信される。この場合、ゲーム装置2Dは、ゲーム装置2Bのように動作する。しかし、この局面では対戦人数が最大人数に一致しているから、ゲーム装置2Bからの対戦要求を受けたゲーム装置2Aにおいては図20のステップSG1の判定結果が「YES」となる。よって、ゲーム装置2Aのプロセッサ21は、ゲーム装置2Dからの対戦要求に対して拒否通知を返信する(SG9)。以降、ゲーム装置2Aにおける処理はステップSF8に移行する。
【0082】
ゲーム装置2Aからの拒否通知はゲーム装置2Dのプロセッサ21により受信される。これにより、ゲーム装置2Dにおいて図17のステップSD11の判定結果が「YES」となる。よって、ゲーム装置2Dのプロセッサ21は、拒否通知に含まれている送信元情報を含むように拒否リストを更新することによりゲーム装置2Aの通信アドレスを拒否リストに登録するとともにエントリーリストL1における次の情報(k=2番目の情報)に注目する(SD13)。そして、注目した情報がエントリーリストL1に実在するか否かを判定する(SD14)。この判定結果が「YES」であれば処理がステップSD9に移行してゲーム装置2A以外のマスターに対して前述の処理が繰り返されるが、この局面では「NO」となるから処理はステップSD1に移行する。つまり、ロビーサーバ3からエントリーリストL1を取得する処理からやり直しとなる。
【0083】
このやり直しにおいてもゲーム装置2Aからのエントリー削除要求がロビーサーバ3に届いていない場合、ゲーム装置2Dのプロセッサ21はゲーム装置2Aの通信アドレスを示す情報を含むエントリーリストL1を受信することになる。しかし、拒否リストにはゲーム装置2Aの通信アドレスが登録されているから、ステップSD6にて、受信したエントリーリストL1は空になる。よって、ステップSD7の判定結果は「YES」となり、処理はステップSD4に移行する。以降、ゲーム装置4Dはマスターとして動作する。
【0084】
図11にはマッチングされたゲーム装置2A〜2Cがゲームを開始するまでの動作が示されている。この動作は、各ゲーム装置2のプロセッサ21が図19のマスター処理および図21のスレーブ処理を行うことによってもたらされる。
【0085】
図11では、まず、ゲーム装置2Aにおいてキャラクタ画像および楽曲が選択される。すると、ゲーム装置2Aにおいて(1)のステップSF2の判定結果が「YES」となり、プロセッサ21は、表示装置24に表示させている画像および入力装置23から供給される入力信号に基づいて、選択されたキャラクタ画像を示す画像識別子と選択された楽曲を示す楽曲識別子を特定し、これらを含む選択情報を対戦テーブルT6に格納する(SF3)。
【0086】
次に、ゲーム装置2Bにおいてキャラクタ画像および楽曲が選択される。すると、ゲーム装置2Bにおいて(A)のステップSH2の判定結果が「YES」となり、プロセッサ21は、表示装置24に表示させている画像と入力装置23から供給される入力信号とを用いて、選択されたキャラクタ画像を示す画像識別子と選択された楽曲を示す楽曲識別子を特定し、これらを含む選択情報をマスター(ゲーム装置2A)へ送信する(SH3)。この選択情報はゲーム装置2Aのプロセッサ21により受信される。ゲーム装置2Aではタイマがタイムアウトしてないから、(2)のステップSF4の判定結果が「YES」となり、プロセッサ21は、受信した選択情報を対戦テーブルT6のレコードRC2に格納する(SF5)。
【0087】
次に、ゲーム装置2Cにおいてキャラクタ画像および楽曲が選択される。すると、ゲーム装置2Cにおいて、上述のゲーム装置2Bにおける処理と同様の処理が行われる。ただし、ゲーム装置2Aにおいて、ゲーム装置2Cからの選択情報は対戦テーブルT6のレコードRC3に格納される。
【0088】
このように、ゲーム装置2Aではタイマがタイムアウトする前に3人分の選択が完了するから、(4)のステップSF8の判定結果が「YES」となって繰り返し処理を抜ける。よって、次にプロセッサ21は、送出領域R1に対戦相手のゲーム装置2Bを、送出領域R2に対戦相手のゲーム装置2Cを対応付けるとともに、ゲームの開始を通知するゲーム開始情報をスレーブ(ゲーム装置2B及び2C)へ送信してマスター処理を終える(SF10)。以降、ゲーム装置2Aではゲームが開始される。ゲーム開始情報はゲーム装置2A〜2Cの各々に対応した情報セットを含んでいる。各情報セットは、ゲーム装置2の通信アドレスを示す情報、ゲーム装置2にて選択されたキャラクタ画像の画像識別子、ゲーム装置2にて選択された楽曲の楽曲識別子、及びゲーム装置2にて特定された称号識別子を含む。また、ゲーム開始情報は3つの楽曲識別子で示される3曲の曲順をも示している。即ち、マスターのプロセッサ21は、ゲームの開始タイミングを2以上の他のゲーム装置に通知する処理と、開始タイミングでプレイヤーにゲームをプレイさせる処理を実行する。
【0089】
ゲーム装置2Aからのゲーム開始情報はスレーブのプロセッサ21により受信される。これにより、ゲーム装置2B及び2Cでは、(C)のステップSH7の判定結果が「YES」となって(A)〜(D)の繰り返し処理を抜ける。次にスレーブのプロセッサ21は、受信したゲーム開始情報を用いて対戦テーブルT6を更新する(SH9)。具体的には、このゲーム開始情報に含まれている画像識別子、楽曲識別子および称号識別子を対戦テーブルT6の該当するレコードに格納する。こうして、スレーブにおいて、スレーブ処理が終了し、ゲームが開始される。即ち、スレーブのプロセッサ21はマスターから開始タイミングの通知を受信すると、開始タイミングでプログラムを実行してプレイヤーにゲームをプレイさせる処理を実行する。これにより、複数のゲーム装置2A、2B及び2Cにおいて、ゲームの開始タイミングを同期させることが可能となる。
【0090】
なお、スレーブにおける(A)〜(D)の繰り返し処理においてタイマがタイムアウトすると、(D)のステップSH8の判定結果が「YES」となって繰り返し処理を抜ける。次にスレーブのプロセッサ21は、キャラクタ画像および楽曲の選択が未完了であるか否かを判定する(SH10)。この判定結果が「YES」の場合には、プロセッサ21は仮選択されているキャラクタ画像および楽曲を強制的に選択し、この選択結果を示す選択情報(画像識別子および楽曲識別子)をマスターへ送信し(SH11)、ゲーム開始情報の受信を待つ(SH12)。逆に「NO」の場合には、処理はステップSH12に移行する。
【0091】
ところで、マスターのタイマのタイムアウトタイミングはスレーブのタイマのタイムアウトタイミングよりも遅い。したがって、マスターのプロセッサ21は、スレーブのタイマがタイムアウトした後にスレーブから送信されてくる選択情報をも、マスターのタイマのタイムアウト前、すなわち(1)〜(5)の繰り返し処理を行っている間に受信することができる。
【0092】
また、マスターにおける(1)〜(5)の繰り返し処理においてタイマがタイムアウトした場合には、(5)のステップSF9の判定結果が「YES」となって繰り返し処理を抜ける。次にマスターのプロセッサ21は、キャラクタ画像および楽曲の選択が未完了であるか否かを判定する(SF11)。前述のように、スレーブでは確実に選択が行われ、その選択情報はマスターのタイムアウト前にマスターに届くから、この判定では、マスターを使用中のプレイヤーによる選択のみに注目すれば足りる。なお、インターネット1における信号遅延を考慮して、マスターにおけるタイマの再スタート時にタイムアウトまでの時間を60秒より長く設定するようにしてもよい。
【0093】
ステップSF11の判定結果が「YES」の場合、マスターのプロセッサ21は、仮選択されているキャラクタ画像および楽曲を強制的に選択し、この選択結果を示す選択情報を対戦テーブルT6に格納する(SF12)。次にプロセッサ21は、対戦人数が最大人数未満であるか否かを判定する(SF13)。また、ステップSF11の判定結果が「NO」の場合にも処理はステップSF13に移行する。ステップSF13の判定結果が「YES」の場合、プロセッサ21は前述のエントリー削除要求をロビーサーバ3へ送信する(SF14)。以降、処理はステップSF10に移行する。また、ステップSF13の判定結果が「NO」の場合にも、処理はステップSF10に移行する。
【0094】
図12には対戦ゲームの開始後の動作が示されている。
この動作は、ゲーム装置2A〜2Cのプロセッサ21が図16の対戦ゲーム処理を行い、データサーバ4のプロセッサ41が図14の個人情報処理を行うことによってもたらされる。この動作では、ゲーム装置2間にマスター/スレーブの関係は存在せず、各ゲーム装置2の通信制御は個別に行われることになる。即ち、各ゲーム装置2のプロセッサ21は、ゲーム開始情報の送信(マスター)、またはゲーム開始情報の受信(スレーブ)を条件として、マスター・スレーブの関係を解消し、2以上の他のゲーム装置との間の通信方式を個別制御に移行させる移行手段として機能する。
【0095】
マスター処理またはスレーブ処理を終えたプロセッサ21は、k=1曲目の楽曲に注目する(SC6)。次に代替すべきゲーム装置2が存在するか否かを判定する(SC7)。具体的には、「要代替」を示す代替状況情報を格納したレコードが対戦テーブルT6内に存在するか否かを調べる。この時点での対戦テーブルT6の全てのレコードRC1〜RC3には「代替不要」を示す代替状況情報が格納されているから、ステップSC7の判定結果は「NO」となり、処理はステップSC8に移行する。
【0096】
ステップSC8では、プロセッサ21はk=1曲目のゲーム処理を行う。k曲目のゲーム処理とは、k曲目のゲームをプレイヤーに行わせるために各ゲーム装置2が行う処理である。ゲーム処理には、対戦テーブルT6に基づいて図2に示すようなゲーム画面を表示する処理や、図22の送信処理、図23の受信処理が含まれており、これらは並列に実行される。
【0097】
この局面で表示されるゲーム画面の左部にはゲーム装置2Aを使用中のプレイヤーにより選択されたキャラクタ画像が配置されており、右部には、下から、このキャラクタ画像の部分画像、ゲーム装置2Cを使用中のプレイヤーに選択されたキャラクタ画像の部分画像、ゲーム装置2Bを使用中のプレイヤーに選択されたキャラクタ画像の部分画像が配置されている。また、各部分画像の近傍には、部分画像に対応するプレイヤーのプレイヤー名および称号の画像が配置されている。なお、ゲーム開始直後であるから、実際には、全てのスコアおよびコンボ数は0、全てのセリフは空、攻撃ゲージが示す攻撃値は0、攻撃レベルは1となっており、また、ラインの近くまで落下しているオブジェクトは未だ無い。
【0098】
送信処理では、ゲーム装置2のプロセッサ21は、まず、0秒〜0.5秒の範囲内のランダムな時間だけ待機する(SJ1)。図12の動作例では、ゲーム装置2Aに遅れてゲーム装置2Bが、更に遅れてゲーム装置2Cが待機を終えている。待機を終えたプロセッサ21は、送出領域R1及びR2と引き渡し領域R3及びR4の記憶内容をクリアし(SJ2)、0.5秒が経過するとタイムアウトするタイマをスタートさせる(SJ3)。以降、このタイマがタイムアウトするまで、楽曲が終了したか否かの判定(SJ4)と、攻撃イベントが発生したか否かの判定(SJ5)と、タイマがタイムアウトしたか否かの判定(SJ6)とを順に繰り返し行う。
【0099】
図12の動作例では、まずタイマがタイムアウトし、ステップSJ6の判定結果が「YES」となる。すると、プロセッサ21はスコア情報を格納部27の所定領域から読み出す(SJ7)。スコア情報には、表示装置24に表示されているスコアを示す情報とコンボ数を示す情報とが含まれており、送信処理および受信処理以外のゲーム処理により所定領域に書き込まれて更新されている。次にプロセッサ21は読み出したスコア情報を送出領域R1及びR2に書き込む(SJ8)。この書き込みは上書きではなく追記である。次にプロセッサ21は、送出領域R1及びR2内の情報を、各送出領域に対応付けられたゲーム装置2の代替状態に応じた方法で送出する(SJ9)。具体的には、各送出領域に対応付けられたゲーム装置2について対戦テーブルT6を調べ、対応する代替状況情報が「代替不要」又は「要代替」を示す場合には当該ゲーム装置2へ送信し、「2」を示す場合には当該ゲーム装置2を代替している仮想ゲーム装置に引き渡す。この局面での対戦テールT6の内容は前述の通りであるから、送出領域R1内の情報はゲーム装置2Bへ、送出領域R2内の情報はゲーム装置2Cへ送信される。また、ステップSJ9において、プロセッサ21は、送出する情報に攻撃識別子が含まれている場合には後述のセリフ表示処理を行う。
【0100】
一方、受信処理では、ゲーム装置2のプロセッサ21は、楽曲が終了するまで、次の(α)〜(δ)の処理を順に繰り返して行う。
(α)攻撃識別子を受け取ったか否かを判定し(SK1)、受け取ったと判定した場合にのみ、受け取った攻撃識別子で示される種類の攻撃を実行する(SK2)。具体的には、ゲーム装置2を使用中のプレイヤーのプレイを邪魔するようにゲーム装置2を制御する。より具体的には、表示中のゲーム画面の幅を狭くしたり、暗くしたり、揺らしたり、スピーカ25から出力される楽音の音量を小さくしたり楽音の出力タイミングを遅らせたりしてゲームの難易度を高くする。また、ステップSK2では攻撃を実行するとともにセリフ表示処理を行う。セリフ表示処理とは、攻撃識別子の供給元のゲーム装置について攻撃時セリフを示す個人情報が対戦テーブルT6に格納されている場合にはこのセリフをゲーム画面上の該当箇所に一定時間だけ表示させる一方、自己について被攻撃時セリフを示す個人情報が対戦テーブルT6に格納されている場合にはこのセリフをゲーム画面上の該当箇所に一定時間だけ表示させる処理である。
(β)スコア情報を受け取ったか否かを判定し(SK3)、受け取ったと判定した場合にのみ、受け取ったスコア情報で対戦テーブルT6を更新する(SK4)。具体的には、受け取ったスコア情報を対戦テーブルT6の該当するレコードに格納する。
(γ)対戦相手のゲーム装置2の少なくとも1つについて通信断が検出されたか否かを判定し、通信断が検出されたと判定した場合にのみ(SK5)、通信断が検出されたゲーム装置2の代替を予約する(SK6)。具体的には、受信処理においてプロセッサ21は対戦相手のゲーム装置2毎に通信を監視しており、該当するゲーム装置2から最後に情報を受信した時点から所定の時間が経過すると、このゲーム装置2について通信断を検出し、通信断が検出されたゲーム装置2に対応付けて対戦テーブルT6に格納されている、「代替不要」を示す代替状況情報を、「要代替」を示すように更新する。通信断の検出方法は任意であり、例えば、ゲーム装置2が情報を受信すると即座に確認応答を返信するように設計されている場合には所定の時間内に確認応答を受信することができなかったことをもって通信断を検出するようにしてもよい。
(δ)楽曲が終了したか否かを判定する(SK7)。
【0101】
図12の動作例では、送信処理においてゲーム装置2Aに遅れてゲーム装置2Bが、更に遅れてゲーム装置2Cが待機を終えているから、まずゲーム装置2Aからゲーム装置2B及び2Cへ情報が送信され、次にゲーム装置2Bからゲーム装置2A及び2Cへ情報が送信され、次にゲーム装置2Cからゲーム装置2A及び2Bへ情報が送信される。これらの情報は、それぞれ、宛先のゲーム装置2により受信される。ここで受信される情報はスコア情報であるから、各ゲーム装置2では、受信処理において(β)のステップSK3の判定結果が「YES」となる。よって、各ゲーム装置2のプロセッサ21は、受信したスコア情報で対戦テーブルT6を更新する(SK4)。この結果、まずゲーム装置2B及び2Cの、次にゲーム装置2A及び2Cの、次にゲーム装置2A及び2Bのゲーム画面において対戦相手のスコア及びコンボ数が更新される。
【0102】
送信処理では、ステップSJ9の後、処理はステップSJ2に移行する。つまり、0.5秒間隔で、直前の0.5秒の間に送出領域に書き込まれた情報が送出される。よって、この動作例では、上述の送受信が0.5秒周期で繰り返し行われる。
【0103】
また、図12の動作例では、ゲーム装置2Aにおいて、ゲームの状況が特定の状況になって攻撃イベントが発生する。具体的には、ゲーム画面上で特定のオブジェクトがラインに重なったときにこのオブジェクトに応じた操作が行われて攻撃イベントが発生する。すると、ゲーム装置2Aでの送信処理においてステップSJ5の判定結果が「YES」となり、プロセッサ21はゲームの状況に応じて攻撃識別子を決定する(SJ10)。具体的には、このときの攻撃レベルが1であるか2であるかを判定し、判定結果に応じた攻撃識別子が対戦テーブルT6のレコードRC1に格納されている個人情報で示されていればこの攻撃識別子に決定し、示されていなければランダムに攻撃識別子を定める。この局面では、攻撃識別子はランダムに定められる。次にプロセッサ21は、攻撃識別子の書き込み先(送出領域R1及びR2の少なくとも一方)をランダムに選択し、決定した攻撃識別子を選択した書き込み先に追記する(SJ11)。この局面では、攻撃識別子は送出領域R1に追記される。
【0104】
以降、処理はステップSJ6に移行する。この後、タイマがタイムアウトすると、プロセッサ21は、最終的に、スコア情報を送出領域R1及びR2に追記し(SJ8)、送出領域R1内の攻撃識別子およびスコア情報をゲーム装置2Bへ送信するとともに、送出領域R2内のスコア情報をゲーム装置2Cへ送信する(SJ9)。つまり、攻撃識別子は、0.5秒周期で繰り返し行われる送受信において送受信される。また、ステップSJ9ではセリフ表示処理も行われるから、ゲーム装置2Aについて対戦テーブルT6のレコードRC1に格納されている個人情報で示される攻撃時セリフがゲーム画面上の該当箇所に一定時間だけ表示される。
【0105】
ゲーム装置2Bでは、ゲーム装置2Aからの攻撃識別子を受信することにより、受信処理において(α)のステップSK1の判定結果が「YES」となる。よって、ゲーム装置2Bのプロセッサ21は、受信した攻撃識別子で示される攻撃を実行する(SK2)。これにより、ゲーム装置2Bにおけるゲームの状況が変化し、その難易度が高くなる。また、ステップSK2ではセリフ表示処理も行われるから、図2に示すように、ゲーム装置2Aについて対戦テーブルT6のレコードRC2に格納されている個人情報で示される攻撃時セリフがゲーム画面上の該当箇所に一定時間だけ表示される。
【0106】
図12の動作例では、通信断が検出されることなく楽曲が終了する。楽曲が終了すると、ステップSJ4の判定結果が「YES」となって送信処理が終了するとともに(δ)のステップSK7の判定結果が「YES」となって受信処理が終了する。こうして、ゲーム装置2A〜2Cにおいてk=1曲目のゲーム処理が終了する。次に、プロセッサ21は、次の楽曲に注目し(SC9)、この楽曲が実在するか否かを判定する(SC10)。具体的には、kをインクリメントし、インクリメント後のkが3以下であるか否かを判定する。ここでは、k=2≦3であるから、ステップSC10の判定結果は「YES」となる。よって、処理はステップSC7に移行する。
【0107】
以降、前述と同様の流れとなり、k=2曲目のゲーム処理(送信処理および受信処理)が行われる(SC7及びSC8)。このゲーム処理において、図12の動作例では、ゲーム装置2Aに異常が発生し、ゲーム装置2B及び2Cはゲーム装置2Aと通信不能となる。よって、ゲーム装置2B及び2Cにおいて、ゲーム装置2Aから最後に情報を受信した時点から所定時間が経過すると、受信処理において、(γ)のステップSK5の判定結果が「YES」となる。よって、ゲーム装置2B及び2Cのプロセッサ21は、通信断となったゲーム装置2の代替を予約する(SK6)。この結果、ゲーム装置2B及び2Cにおける対戦テーブルT6は、ゲーム装置2Aに対応するレコードRC2に「要代替」を示す代替状況情報が格納されるように更新される。一方、ゲーム装置2B及び2Cにおける送信処理では、「代替中」を示す代替状況情報を格納したレコードが対戦テーブルT6内に存在しないため、プロセッサ21はゲーム装置2Aにもスコア情報を送信し続ける(SJ9)。
【0108】
以降、k=1曲目のゲーム処理と同様の流れとなる。そして、楽曲が終了すると、ゲーム装置2B及び2Cにおいてk=2曲目のゲーム処理が終了する。以降、ゲーム装置2B及び2Cでは、k=1曲目のゲーム処理後と同様の処理が行われるが、ステップSC7の判定結果は「YES」となる。対戦テーブルT6に「要代替」を示す代替状況情報が格納されているからである。よって、プロセッサ21は、代替すべきゲーム装置2を仮想ゲーム装置で代替させるための代替開始処理を行う(SC11)。具体的には、仮想ゲーム装置を生成し、対戦テーブルT6における代替すべきゲーム装置2Aに応じたレコードRC2からスコア情報を読み出し、このスコア情報を仮想ゲーム装置にセットし、レコードRC2に「代替中」を示す代替状況情報を格納することにより対戦テーブルT6を更新する。こうして、ゲーム装置2Bにおいてはゲーム装置BAが、ゲーム装置2Cにおいては仮想ゲーム装置CAが生成される。
【0109】
次にプロセッサ21はk=3曲目のゲーム処理を行う(SC8)。このゲーム処理においては、送信処理にて、ゲーム装置2Bのプロセッサ21は、対戦テーブルT6を調べ、送出領域R1内の情報を仮想ゲーム装置BAに引き渡す(SJ9)。一方、ゲーム装置2Cのプロセッサ21は、対戦テーブルT6を調べ、送出領域R1内の情報を仮想ゲーム装置CAに引き渡す。つまり、送出領域R1内の情報がゲーム装置2Aに送信されることはなく、無駄な送信を避けることができる。また、ゲーム装置2B及び2Cのプロセッサ21は、受信処理にて、対応する仮想ゲーム装置から攻撃識別子を引き渡されたことをもって攻撃識別子を受け取ったと判定し(SK1)、スコア情報を引き渡されたことをもってスコア情報を受け取ったと判定する(SK3)。よって、ゲーム装置2Bはゲーム装置2C及び仮想ゲーム装置BAとの間で、ゲーム装置2Cはゲーム装置2B及び仮想ゲーム装置CAとの間で対戦を継続することができる。
【0110】
ゲーム装置2B及び2Cにおいて、楽曲が終了し、k=3曲目のゲーム処理が終了すると、以降、k=1曲目のゲーム処理後と同様の処理が行われるが、kがインクリメントされて4となるから、ステップSC10の判定結果は「NO」となる。よって、ゲーム装置2B及び2Cのプロセッサ21は、対戦テーブルT6に格納されたスコア情報に基づいて合計処理を行う。この合計処理では、ゲーム装置毎にコンボ数をスコアに変換して楽曲毎のスコアを算出し、3曲分のスコアを合計して合計スコアを求め、求めた合計スコアを表示装置24に表示させる。次にプロセッサ21は、新しいプレイヤーレベルを決定し、今回のゲームを反映したゲーム履歴や新しいプレイヤーレベルを示すように対戦テーブルT6内の該当する個人情報を更新し、更新後の個人情報を含む更新要求をデータサーバ4へ送信する(SC13)。こうして対戦ゲーム処理が終了する。
【0111】
データサーバ4のプロセッサ41は、情報の受信を待っているときにゲーム装置2Bからの情報を受信すると、受信した情報は認証要求でもカード登録要求でもないと判定し、受信した情報が更新要求であるか否かを判定する(SB1、SB2、SB6及びSB8)。受信した情報は更新要求であるから、この判定結果は「YES」となる。よって、プロセッサ41は、この更新要求に含まれている個人情報を個人情報テーブルT1に上書き格納する(SB9)。この結果、個人情報テーブルT1の内容は最新となる。
【図面の簡単な説明】
【0112】
【図1】本発明の一実施形態に係るゲームシステム100の全体構成を示す図である。
【図2】k曲目のゲーム中にゲーム装置2に表示されるゲーム画面の一例を示す図である。
【図3】ゲームシステム100の挙動を単純化して示す図である。
【図4】データサーバ4の電気的構成を示す図である。
【図5】個人情報テーブルT1の内容の一例を示す図である。
【図6】ロビーサーバ3の電気的構成を示す図である。
【図7】ゲーム装置2の電気的構成を示す図である。
【図8】対戦テーブルT6の内容の一例を示す図である。
【図9】ゲームシステム100の動作例を説明するためのシーケンス図である。
【図10】ゲームシステム100の動作例を説明するためのシーケンス図である。
【図11】ゲームシステム100の動作例を説明するためのシーケンス図である。
【図12】ゲームシステム100の動作例を説明するためのシーケンス図である。
【図13】ゲーム装置2の認証処理を示すフローチャートである。
【図14】データサーバ4の個人情報処理を示すフローチャートである。
【図15】個人情報テーブルT1の内容の一例を示す図である。
【図16】ゲーム装置2の対戦ゲーム処理を示すフローチャートである。
【図17】ゲーム装置2のマスター/スレーブ決定処理を示すフローチャートである。
【図18】ロビーサーバ3のロビー処理を示すフローチャートである。
【図19】ゲーム装置2のマスター処理を示すフローチャートである。
【図20】ゲーム装置2の追加処理を示すフローチャートである。
【図21】ゲーム装置2のスレーブ処理を示すフローチャートである。
【図22】ゲーム装置2の送信処理を示すフローチャートである。
【図23】ゲーム装置2の受信処理を示すフローチャートである。
【符号の説明】
【0113】
2A〜2D ゲーム装置
21 プロセッサ
22 通信インターフェイス
23 入力装置
24 表示装置
25 スピーカ
26 カード読取装置
27 格納部

【特許請求の範囲】
【請求項1】
3つ以上のゲーム装置を有するゲームシステムであって、
前記3つ以上のゲーム装置の各々は、
他のゲーム装置と通信する通信手段と、
プログラムを実行してプレイヤーにゲームをプレイさせるゲーム手段と、
対戦相手となる2以上の前記他のゲーム装置を特定して、前記ゲーム手段にゲームを開始させる制御手段と、
プレイ中のゲームの状況に応じたゲーム情報を生成し、前記通信手段を用いて、前記対戦相手となる2以上の他のゲーム装置の各々に生成した前記ゲーム情報を送信するゲーム情報生成手段と、
前記通信手段を用いて、前記対戦相手となる2以上の他のゲーム装置の各々で生成された前記ゲーム情報を受信して、受信した前記ゲーム情報に応じてゲームの状況を変化させる変化手段と、
を備える、
ことを特徴とするゲームシステム。
【請求項2】
前記制御手段は、
当該制御手段を備える前記ゲーム装置がマスターとなるか、スレーブになるかを所定の判定条件の下に判定する判定手段と、
前記対戦相手となる2以上の他のゲーム装置の通信アドレスを記憶する記憶手段と、
前記判定手段によって当該制御手段を備える前記ゲーム装置がマスターであると判定された場合、前記他のゲーム装置からの対戦の要求を待ち、前記対戦の要求を受信すると、参加者の人数が所定数に達するまで対戦を受諾する応答を返信する処理と、前記対戦相手となる2以上の他のゲーム装置の通信アドレスを前記記憶手段に記憶させる処理と、前記対戦相手となる2以上の他のゲーム装置に対して記憶した通信アドレスを送信する処理とを実行するマスター手段と、
前記判定手段によって当該制御手段を備える前記ゲーム装置がスレーブであると判定された場合、マスターの候補となるゲーム装置に対して対戦の要求を送信する処理と、対戦を受諾する応答を受信すると、マスターから取得した前記通信アドレスとマスターの通信アドレスとを前記記憶手段に記憶させる処理とを実行するスレーブ手段とを備え、
前記ゲーム情報生成手段は、前記記憶手段に記憶された通信アドレスを用いて、前記対戦相手となる2以上の他のゲーム装置の各々に前記ゲーム情報を送信する、
前記マスター手段は、更に、ゲームの開始タイミングを前記対戦相手となる2以上の他のゲーム装置に通知する処理と、前記開始タイミングでプログラムを実行してプレイヤーにゲームをプレイさせるように前記ゲーム手段を制御する処理を実行し、
前記スレーブ手段は、更に、マスターから前記開始タイミングの通知を受信すると、前記開始タイミングでプログラムを実行してプレイヤーにゲームをプレイさせるように前記ゲーム手段を制御する処理を実行し、
前記制御手段は、所定の条件が充足されると、前記対戦相手となる2以上の他のゲーム装置との間の通信方式を、マスターまたはスレーブとして通信する方式から、前記ゲーム情報生成手段及び前記変化手段を用いて当該制御手段を備える前記ゲーム装置と前記対戦相手となる2以上の他のゲーム装置の各々とが相互に通信する方式に移行させる移行手段を備える
ことを特徴とする請求項1に記載のゲームシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate


【公開番号】特開2006−61710(P2006−61710A)
【公開日】平成18年3月9日(2006.3.9)
【国際特許分類】
【出願番号】特願2005−299930(P2005−299930)
【出願日】平成17年10月14日(2005.10.14)
【分割の表示】特願2004−244687(P2004−244687)の分割
【原出願日】平成16年8月25日(2004.8.25)
【出願人】(000105637)コナミ株式会社 (106)
【Fターム(参考)】