以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
1.ゲームシステム
図1に本実施形態のゲームシステムの構成例を示す。このゲームシステムは、複数のゲーム装置(ゲーム端末)20-1〜20-nと、これらのゲーム装置20-1〜20-nにネットワーク12を介して接続されるサーバ10を含む。ここで、ネットワーク12(通信回線)は、データ授受が可能な通信路を意味する。即ち、ネットワーク12は、直接接続のための専用線(専用ケーブル)やイーサネット(登録商標)等によるLANの他、電話通信網やケーブル網、インターネット等の通信網を含む意味であり、また、通信方法については有線/無線を問わない。
サーバ(ゲームサーバ)10は、各種処理を実行する処理部、各種プログラムやデータを記憶する記憶部、ネットワーク12を介したデータの送受信のための通信部等を有する公知のサーバコンピュータシステムにより構成できる。このサーバ10は、例えばゲーム装置の製造メーカやゲームソフトの制作メーカが提供(設置)し、ゲームシステムの全体制御、各種データやネットワークゲームの管理等を行う。
ゲーム装置20-1〜20-nは、プレーヤがゲームプレイを行うための装置(端末)であり、各種処理を実行する処理部、各種プログラムやデータを記憶する記憶部、プレーヤが操作入力を行うための操作部、ゲーム画面等を表示するための表示部、ゲーム音等を出力する音出力部、ネットワーク12を介したデータの送受信のための通信部等を有する公知のコンピュータシステムにより構成できる。例えば、ゲーム装置20-1〜20-nとしては、家庭に設置される家庭用ゲーム装置、店舗に設置される業務用ゲーム装置、携帯型ゲーム装置、或いは携帯電話機などの携帯端末装置等により実現できる。そしてゲーム装置20-1〜20-nでプレイするプレーヤは、サーバ10にアクセスしてログインすることにより、サーバ10より提供される各種のサービス(オンライン・ネットワーク・サービス)を受けることができる。
2.ゲーム装置
図2に本実施形態のゲーム装置のブロック図の例を示す。なお本実施形態のゲーム装置は図2の構成要素(各部)の一部を省略した構成としてもよい。
操作部160は、プレーヤが操作データを入力するためのものであり、その機能は、方向キー、操作ボタン、アナログスティック、レバー、マイク、或いはタッチパネル型ディスプレイなどにより実現できる。
記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAM(DRAM、VRAM)などにより実現できる。この記憶部170は、電源を切るとデータが消えてしまう揮発性のメモリにより構成できるが、補助記憶装置194よりも高速な記憶装置になっている。そしてゲームプログラムや、ゲームプログラムの実行に必要なゲームデータは、この記憶部170に保持される。
情報記憶媒体180(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(CD、DVD)、HDD(ハードディスクドライブ)、或いはメモリ(ROM等)などにより実現できる。処理部100は、情報記憶媒体180に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体180には、本実施形態の各部としてコンピュータ(操作部、処理部、記憶部、出力部を備える装置)を機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶される。
表示部190は、本実施形態により生成された画像を出力するものであり、その機能は、CRT、LCD、タッチパネル型ディスプレイ、或いはHMD(ヘッドマウントディスプレイ)などにより実現できる。音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
補助記憶装置194(補助メモリ、2次メモリ)は、記憶部170の容量を補うために使用される記憶装置であり、SDメモリーカード、マルチメディアカードなどのメモリーカードや、HDDなどにより実現できる。この補助記憶装置194は脱着自在になっているが、内蔵されるものであってもよい。この補助記憶装置194は、ゲームの途中結果などのセーブデータや、プレーヤ(ユーザ)の個人的な画像データや音楽データなどを保存するために使用される。
通信部196は、有線や無線のネットワークを介して外部(例えば他のゲーム装置、サーバ、ホスト装置)との間で通信を行うものであり、その機能は、通信用ASIC又は通信用プロセッサなどのハードウェアや、通信用ファームウェアにより実現できる。
なお本実施形態の各部としてコンピュータを機能させるためのプログラム(データ)は、サーバ(ホスト装置)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180(あるいは記憶部170、補助記憶装置194)に配信してもよい。このようなサーバ(ホスト装置)による情報記憶媒体の使用も本発明の範囲内に含めることができる。
処理部100(プロセッサ)は、操作部160からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などを行う。処理部100は記憶部170をワーク領域として各種処理を行う。この処理部100の機能は、各種プロセッサ(CPU、GPU等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。
処理部100は、受け付け部102、オブジェクト空間設定部104、移動体演算部106、対戦相手設定部108、ゲーム演算部110、ゲーム成績演算部112、仮想カメラ制御部118、画像生成部120、音生成部130を含むことができる。なおこれらの一部の構成要素を省略する構成としてもよい。
受け付け部(入力受け付け部、操作データ取得部)102は各種の受け付け処理を行う。具体的にはプレーヤの操作入力を受け付ける処理を行う。例えばプレーヤによる操作部160の操作をモニタし、操作部160により入力された操作情報を取得する。
そして本実施形態では、受け付け部102は、プレーヤが大会に参加要求を行った場合に、参加要求の受け付け処理を行う。
例えば図2の記憶部170が有するスケジュールデータ記憶部171は、図3(A)のようなデータ構造のスケジュールデータを記憶する。即ちスケジュールデータ記憶部171では、例えば大会ID(大会識別番号)に対応(関連)づけて、大会の詳細なデータである大会データ、大会開催日、或いは大会開催期間(大会終了日)などが、スケジュールデータとして記憶される。ここで大会データは、例えば図3(B)のようなデータ構造になっている。即ち大会データでは、大会IDに対応づけて、大会カテゴリー、開催場所、コート名、コート種類、大会名、ドロー数、セット数、或いはゲーム数が対応づけて記憶される。
スケジュールデータは、例えばゲームソフトの制作メーカ等が、ゲーム装置の製造メーカが提供するサーバ等に対してアップロードする。そしてゲーム装置でのゲーム開始時に、サーバにアップロードされたスケジュールデータが、スケジュールデータ記憶部171にダウンロードされて、ゲーム装置により使用される。このようにすることで、ゲームソフトの制作メーカは、スケジュールデータの内容を変更することで、開催される大会の数、種類、開催日、開催期間等を適宜変更できるようになり、ネットワークゲームの運営・管理を簡素化できる。
そして受け付け部102は、スケジュールデータ記憶部171に記憶される図3(A)スケジュールデータにより特定(設定)される大会開催期間内において、大会へのプレーヤの参加要求を受け付ける。即ちプレーヤの大会参加要求が大会開催期間内であるか否かを判断し、大会開催期間内であればその大会への参加要求を受け付け、大会開催期間外であればその大会への参加要求を受け付けない。
また例えばスケジュールデータで特定される大会開催期間内の第1の期間(第1のタイミング)で出場した仮想トーナメント(広義にはトーナメント)の第Iラウンド(Iは自然数)において、プレーヤが対戦ゲームで勝利したとする。そして、第1の期間の後、大会開催期間内の第2の期間(第2のタイミング)で、プレーヤが同じ大会(同じ大会IDの大会)に参加した場合には、受け付け部102は、同じ大会の仮想トーナメントの次の第I+1ラウンドへのプレーヤの出場を受け付ける。即ちプレーヤは勝利すると、大会開催期間内であれば、通常のトーナメントと同様に次のラウンドに出場できる。一方、大会開催期間が経過してしまうと、プレーヤの進出ラウンド数もクリアされて、次のラウンドには出場できなくなる。
また例えば大会開催期間内の第1の期間(第1のタイミング)で出場した仮想トーナメントの第Jラウンド(Jは自然数)において、プレーヤが敗退したとする。そして、第1の期間の後、大会開催期間内の第2の期間(第2のタイミング)で、プレーヤが同じ大会に参加した場合には、受け付け部102は、同じ大会の仮想トーナメントの第1ラウンドへのプレーヤの出場を受け付ける。即ち第2ラウンド以降のラウンドではなく、最初のラウンドである第1ラウンドへの出場だけを認める。従って、プレーヤは、大会開催期間内であれば、途中のラウンドで敗退しても、何度でも第1ラウンドからやり直すことが可能になる。
また図2の記憶部170が有する出場資格データ記憶部172は、図4のようなデータ構造の出場資格データ(参加条件データ)を記憶する。この出場資格データでは、資格IDに対応づけて各種の出場資格条件が設定される。例えば資格ID=1では、プレーヤのレベル等に依存せずに無条件にプレーヤの参加が認められる。また資格ID=2では、プレーヤレベルがA以上である場合に、プレーヤの参加が認められる。そして各大会にこれらの資格IDを設定することで、その大会への出場資格が設定される。
受け付け部102は、この出場資格データ記憶部172に記憶される出場資格データに基づいて、参加要求を行ったプレーヤにその大会への出場資格(参加資格)があるか否かを判断する。そしてプレーヤに出場資格があると判断した場合に、その大会へのプレーヤの参加を受け付ける。
オブジェクト空間設定部104は、モデルオブジェクト(キャラクタ、ロボット、車、戦闘機、ボール、ミサイル、弾等)、ゲームフィールド(コート、グラウンド)、壁、建物、樹木、マップ(地形)、コース(道路)などの表示物を表す各種オブジェクト(ポリゴン、自由曲面又はサブディビジョンサーフェイスなどのプリミティブ面で構成されるオブジェクト)をオブジェクト空間に配置設定する処理を行う。即ちワールド座標系でのオブジェクトの位置や回転角度(向き、方向と同義)を決定し、その位置(X、Y、Z)にその回転角度(X、Y、Z軸回りでの回転角度)でオブジェクトを配置する。
例えば記憶部170の図示しない形状データ記憶部には、キャラクタ等のオブジェクト(モデルオブジェクト)の形状を決めるための形状データ(ポリゴンデータ)が記憶されている。また記憶部170の図示しないオブジェクトデータ記憶部には、これらのオブジェクトの位置、回転角度、移動速度、移動方向等のデータであるオブジェクトデータがオブジェクト番号に対応づけて記憶される。
そしてオブジェクト空間設定部104は、これらの形状データやオブジェクトデータを用いて、オブジェクト空間へのオブジェクトの設定(配置)処理を行う。またオブジェクトデータは、移動体演算部106での移動・動作制御処理等により順次更新される。
移動体演算部(移動体制御部)106は、移動体(移動体オブジェクト)を移動させるための演算を行う。また移動体を動作させるための演算も行う。即ち操作部160によりプレーヤが入力した操作データや、プログラム(移動・動作アルゴリズム)や、各種データ(モーションデータ)などに基づいて、移動体(オブジェクト、モデルオブジェクト)をオブジェクト空間内で移動させたり、移動体を動作(モーション、アニメーション)させる処理を行う。具体的には、移動体の移動情報(位置、回転角度、速度、或いは加速度)や動作情報(パーツオブジェクトの位置、或いは回転角度)を、1フレーム(1/60秒)毎に順次求めるシミュレーション処理を行う。なおフレームは、移動体の移動・動作処理(シミュレーション処理)や画像生成処理を行う時間の単位である。
対戦相手設定部(マッチング処理部)108はプレーヤの対戦相手を設定(選択)するための処理を行う。具体的には、受け付け部102により大会へのプレーヤの参加要求が受け付けられた場合に、同じ大会に参加要求した他のプレーヤを、大会における仮想トーナメントの対戦相手として設定するための処理を行う。
即ち、大会へのプレーヤの参加が受け付けられると、ネットワークに接続される他のゲーム装置において同じ大会に参加要求したプレーヤ(参加しているプレーヤ)を検索するマッチング処理が行われる。ここでマッチング処理は、ネットワークに接続されるゲーム装置の中から互いに対戦相手となるプレーヤのゲーム装置が選び出し、通信接続するための処理である。このマッチング処理は、例えばサーバとゲーム装置の分散処理により(或いはサーバの処理により)、実現できる。
例えば対戦相手設定部108は、ネットワークを介してゲーム装置と通信接続されるサーバに対して、図5(A)に示すようなマッチング条件データ(検索条件データ)をアップロード(送信)するための処理を行う。即ち通信部196に対して、マッチング条件データ記憶部173に記憶されるマッチング条件データを、サーバにアップロードするように指示する。ここでマッチング条件データは、図5(A)に示すように例えば大会ID(プレーヤが参加要求する大会を識別するためのデータ)やラウンドID(大会でのプレーヤの進出ラウンド数を識別するためのデータ)を含むことができる。なお後述するように、サーバにアップロードするマッチング条件データにラウンドIDを含ませないようにしてもよい。
サーバは、マッチング条件データがアップロードされると、そのマッチング条件データに基づいてプレーヤのマッチング処理(検索処理)を行う。そしてマッチング処理により得られた対戦相手リストデータを、ゲーム装置にダウンロードする。そしてダウンロードされた対戦相手リストデータは対戦相手リストデータ記憶部174に格納される。
ここで、対戦相手リストデータには、マッチングされたプレーヤを識別するためのデータがリスト化される。具体的には図5(B)に示すように対戦相手リストデータには、マッチングしたセッションのIDのリストが記述される。ここで、セッション(プレイルーム)は、プレーヤにマッチングした他のプレーヤが作成したものである。本実施形態では、このセッションには、仮想トーナメントで対戦する2人のプレーヤがエントリーできる。なお、プレーヤがエントリーできるセッションがネットワーク上に存在しなかった場合には、プレーヤは、自身がホストとなってセッションを作成し、そのセッションに他のプレーヤが入るまで待つことになる。
そして本実施形態では対戦相手設定部108は、プレーヤが仮想トーナメントの第Kラウンドに進出した場合に、同じ仮想トーナメントの第Lラウンド(KとLは異なる自然数)に進出している他のプレーヤを対戦相手として設定(選択)する。即ち、通常のトーナメントでは、第Kラウンドに進出したプレーヤに対しては、同じ第Kラウンドに進出した他のプレーヤをマッチングさせるが、本実施形態では、第Kラウンドに進出したプレーヤに対して、第Lラウンドに進出したプレーヤのマッチングを許可する。
具体的には対戦相手設定部108は、第1のモード(第1の選択モード)では、第Kラウンドに進出しているプレーヤの対戦相手として、異なる第Lラウンドに進出している他のプレーヤを選択しない。一方、第2のモード(第2の選択モード)では、第Kラウンドに進出しているプレーヤの対戦相手として、異なる第Lラウンドに進出している他のプレーヤを選択する。この場合に第1、第2のモードの切り替えは、ネットワークゲームへのプレーヤの参加人数に基づいて行うことができる。例えばネットワークゲームの参加人数が多い場合には第1のモードを選択し、参加人数が少ない場合には第2のモードを選択する。
更に具体的には対戦相手設定部108は、第1のモードでは、サーバに対して、プレーヤのマッチング条件データとして図5(A)の大会ID及びラウンドIDをアップロードし、これによりサーバからダウンロードされた図5(B)の対戦相手リストの中から対戦相手となるプレーヤを選択する。このようにすれば、大会に参加しているプレーヤのうち、大会IDとラウンドIDの両方がマッチングしたプレーヤ(セッション)のIDが、対戦相手リストに記述され、この対戦相手リストの中から対戦相手となるプレーヤを選択できるようになる。
一方、第2のモードでは、サーバに対して、プレーヤのマッチング条件データとしてラウンドIDをアップロードせずに大会IDをアップロードし、これによりダウンロードされた対戦相手リストの中から対戦相手となるプレーヤを選択する。このようにすれば、大会に参加しているプレーヤのうち、大会IDがマッチングしたプレーヤのIDが、対戦相手リストに記述され、この対戦相手リストの中から対戦相手となるプレーヤを選択できるようになる。
また切り替えデータ記憶部181は、図5(C)に示すように、これらの第1、第2のモードを切り替えるための切り替えデータ(切り替えフラグ)を記憶する。具体的には切り替えデータ記憶部181は、ネットワークを介してゲーム装置と通信接続されるサーバから切り替えデータがダウンロードされた場合に、そのダウンロードされた切り替えデータを記憶する。そして対戦相手設定部108は、ダウンロードされた記憶された切り替えデータに基づいて、第1、第2のモードを切り替える。なお切り替えデータは、例えばスケジュールデータと共に、ゲームソフトの制作メーカが、ゲーム装置の製造メーカが提供するサーバに対して予めアップロードしておくことが望ましい。
ゲーム演算部106はゲーム演算処理を行う。具体的には、対戦相手設定部108により対戦相手として選択された他のプレーヤと、プレーヤとの間での対戦ゲームのゲーム演算処理を行う。ここでゲーム演算としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。
ゲーム成績演算部112は対戦ゲームでのプレーヤのゲーム成績を演算する。具体的には、プレーヤが最高ラウンド数を更新したことを条件に更新(加算)されるラウンドポイントの演算処理や、プレーヤと他のプレーヤとの対戦の結果により更新(加減算)される対戦ポイントの演算処理を行う。演算されたこれらのラウンドポイント、対戦ポイントは、ゲーム成績データ記憶部177のラウンドポイント記憶部178、対戦ポイント記憶部179に記憶される。
例えばプレーヤが、仮想トーナメントにおいて過去にプレーヤが進出した最高ラウンドが第Nラウンドであったとする。この場合にゲーム成績演算部112は、プレーヤが最高ラウンド数を更新して第Mラウンド(M、NはM>Nとなる自然数)に進出したことを条件に、プレーヤのラウンドポイントを加算する更新処理を行う。即ち第Nラウンドで敗退した場合には、ラウンドポイントは更新されず、第Nのラウンドで勝利し、第Nラウンド以降の第Mラウンドに進出すると、進出された第Mラウンドに応じたラウンドポイントが加算される。この場合にゲーム成績演算部112は、例えばスケジュールデータ記憶部171に記憶されるスケジュールデータにより特定される大会開催期間内において、プレーヤが最高ラウンド数を更新したことを条件に、プレーヤのラウンドポイントの更新処理を行う。
例えばトーナメント結果データ記憶部175、ラウンドポイントテーブル記憶部176は、図6(A)、図6(B)に示すようなデータ構造のトーナメント結果データ、ラウンドポイントテーブルを記憶する。具体的にはトーナメント結果データ記憶部175では、プレーヤが参加した大会のIDに対応づけて、その大会での現在のプレーヤの進出ラウンド数、過去における最高ラウンド数などが、トーナメント結果データとして記憶される。またラウンドポイントテーブル記憶部176では、例えば大会カテゴリー(或いは大会)やドロー数に対応づけて、各ラウンドにおいて最高ラウンド数を更新したときに加算されるラウンドポイントがテーブル化されえ記憶される。このラウンドポイントは、ファイナルラウンドになるほど、そのポイント数が大きくなるように設定されている。
仮想カメラ制御部118は、オブジェクト空間内の所与(任意)の視点から見える画像を生成するための仮想カメラ(視点)の制御処理を行う。具体的には、仮想カメラの位置(X、Y、Z)又は回転角度(X、Y、Z軸回りでの回転角度)を制御する処理(視点位置、視線方向あるいは画角を制御する処理)を行う。
例えば仮想カメラによりキャラクタ等の移動体を後方から撮影する場合には、移動体の位置又は回転の変化に仮想カメラが追従するように、仮想カメラの位置又は回転角度(仮想カメラの向き)を制御する。この場合には、移動体演算部106で得られた移動体の位置、回転角度又は速度などの情報に基づいて、仮想カメラを制御できる。或いは、仮想カメラを、予め決められた回転角度で回転させたり、予め決められた移動経路で移動させる制御を行ってもよい。この場合には、仮想カメラの位置(移動経路)又は回転角度を特定するための仮想カメラデータに基づいて仮想カメラを制御する。
画像生成部120は、処理部100で行われる種々の処理(ゲーム処理)の結果に基づいて描画処理を行い、これによりゲーム画像を生成し、描画バッファ182に書き込んで、表示部190に出力する。いわゆる3次元ゲーム画像を生成する場合には、まずモデル(オブジェクト)の各頂点の頂点データ(頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)を含むモデルデータが入力され、入力されたモデルデータに含まれる頂点データに基づいて、頂点処理(頂点シェーダによるシェーディング)が行われる。なお頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理(テッセレーション、曲面分割、ポリゴン分割)を行うようにしてもよい。
そして例えば、対戦相手設定部108により、第Kラウンドに進出しているプレーヤと、第Lラウンドに進出している他のプレーヤとが、対戦相手として設定されたとする。この場合に本実施形態では画像生成部120は、第Lラウンドに進出している他のプレーヤ用の第2の画像とは異なる第1の画像を、第Kラウンドに進出しているプレーヤ用の画像として生成する。具体的には、このような第1の画像として、対戦ゲームの開始時に表示されるオープニング画面及び対戦ゲームの終了時に表示されるエンディング画面の少なくとも一方の画像を生成する。
音生成部130は、処理部100で行われる種々の処理の結果に基づいて音処理を行い、BGM、効果音、又は音声などのゲーム音を生成し、音出力部192に出力する。
3.本実施形態の手法
3.1 仮想トーナメント方式
これまでのネットワークゲームでは、トーナメントに参加する全てのプレーヤが揃わなければトーナメントを開始できないため、人数が揃ってトーナメントを開始するまで時間がかかってしまうという課題があった。また参加するプレーヤが揃った後、いずれかのプレーヤが抜けてしまうと、トーナメントが成立しなくなるという課題もあった。更に、第1ラウンド(第1回戦)で敗退してしまったプレーヤは、ファイナルラウンドが終了するまで、そのトーナメントに関して何もやることがなくなってしまうという課題もあった。
このような課題を解決するための本実施形態では仮想トーナメント方式を採用している。この仮想トーナメント方式は、現実世界のような実際のトーナメントは組まずに、プレーヤに対して仮想的なトーナメント対戦を体験させるものである。
即ちこの仮想トーナメントでは、プレーヤは、現実世界のトーナメントと同じように、第1ラウンドで勝利すると第2ラウンドに進出し、第2ラウンドで勝利すると第3ラウンドに進出するというように、現在のラウンドで勝利することで次のラウンドに進出できる。また現在のラウンドで負けると、そのトーナメントの敗退が決定する。
一方、この仮想トーナメントでは、各ラウンドでの対戦相手は、そのラウンドにプレーヤが出場した時点でマッチング(ランダムマッチング)される。例えば第1ラウンドでの対戦相手は、第1ラウンドの対戦ゲームが開始する前に、その大会に参加しているプレーヤの中からマッチング処理により選ばれる。この場合、現実世界でのトーナメントとは異なり、第1ラウンドの時点では、そのプレーヤが第1ラウンドで勝利して第2ラウンドに進出したときの対戦相手については、特定されていない。
そしてプレーヤが第1ラウンドに勝利して第2ラウンドに進出すると、プレーヤの対戦相手は、第2ラウンドの対戦ゲームが開始する前に、その大会に参加しているプレーヤの中からマッチング処理により選ばれる。この場合、現実世界でのトーナメントとは異なり、第2ラウンドの時点では、そのプレーヤが第2ラウンドで勝利して第3ラウンドに進出したときの対戦相手については、特定されていない。
このような仮想トーナメント方式によれば、プレーヤが各ラウンドに出場する毎に対戦相手が選ばれて対戦ゲームが開始するため、トーナメントに参加する全てのプレーヤが揃うまで待つ必要がなくなる。従って、人数が揃うのに時間がかかりネットワークゲームの普及の妨げとなっていた従来のトーナメント方式の課題を解決できる。
また仮想トーナメント方式では、その大会に参加するいずれかのプレーヤが、用事により抜けてしまった場合には、他のプレーヤを対戦相手として選択すれば済む。従って、プレーヤの離脱によりトーナメントが成立しなくなるという従来のトーナメント方式の課題を解決でき、プレーヤはいつでも気兼ねなくネットワークゲームから抜けることができ、ユーザの利便性を向上できる。
また仮想トーナメント方式では、プレーヤが途中のラウンドで敗退しても、その大会の開催期間内であれば、何度でも、その大会の第1ラウンドから戦いなおすことができる。即ち現実世界のトーナメントでは、敗退すると、その開催期間内において同じ大会には参加することはできないが、仮想トーナメント方式では、敗退した後もその大会に参加できる。従って、何度も戦って、ゲームプレイの習熟度を向上し、大会優勝という最終目標を達成するというモチベーションを、プレーヤに与えることができる。これにより、従来のトーナメント方式では達成できないゲームシステムの実現が可能になる。
なお仮想トーナメントは、ローカルで行われる大会であり、例えばサーバ上では管理せずに、プレーヤがプレイするゲーム装置と、他のプレーヤがプレイする他のゲーム装置との間での、ピア・ツー・ピアの通信接続で実現できる。仮想トーナメントはローカルで行われるため、プレーヤは、ラウンド間でゲームプレイを中断することも可能になる。またプレーヤは、仮想トーナメントに参加して、ラウンドポイントや対戦ポイントを獲得して、自身のランキングを更新できる。また仮想トーナメントでは、例えば大会の種類(大会ID)やラウンドの種類(ラウンドID)に基づいてマッチングを行うことができる。
次に図7(A)〜図12(B)の画面例やゲーム画像例を用いて、本実施形態の仮想トーナメント方式の対戦ゲームについて具体的に説明する。
図7(A)は、ネットワークゲームであるオンラインモードでのセレクト画面の例である。図7(A)ではC1、C2に示すように、プレーヤは、プレーヤマッチ、ワールドツアーのオンライン対戦モードを選択できる。
プレーヤマッチは、世界中のプレーヤと自由な設定で対戦できるスタンダードなオンライン対戦モードである。即ちプレーヤは、セット/ゲーム数、タイブレークの有無などのルールを自由に設定して他のプレーヤと対戦できる。
ワールドツアーは、ランキングポイントをかけて対戦するオンライン対戦モードである。この対戦モードには、例えば1試合だけプレイするランキングマッチや、開催されている大会に出場して優勝を目指すワールドツアートーナメントなどがある。
ワールドツアートーナメントでは、グレードやサーフェスが異なる大会が開催される。即ち現実世界での日時によって、開催される大会が決まる。例えば図7(A)のC3では、現在開催中の大会を宣伝するバナーが表示される。このバナーでは、大会名(英国グラスチャンピオンシップ)、グレード(グランドスラム)、出場条件(プレーヤレベルがA以上)、大会開催期間(6/15〜6/28)が表示され、大会への参加をプレーヤに促している。
またワールドツアートーナメントでは、常に複数の大会が開催されると共に、世界中、どこでも開催の日時がずれないように、サーバへの接続開始時間とそこからの相対時間に基づいて大会を開催する。またプレーヤが獲得するポイントとして、対戦の勝敗で増減する対戦ポイントと、大会の最高ラウンド数の更新で得られるラウンドポイントがある。プレーヤは、各ラウンドのポイントを、大会の最終結果が確定しなくても、毎試合得ることができる。またプレーヤは、大会に何度でも出場できるが、最高ラウンド数を更新しない限り、ラウンドポイントを得ることはできない。
なお、ゲーム装置の電源投入後等、今回初めてオンライン対戦を行う場合、参加中のトーナメントが見つかると、図7(B)に示すようなメッセージ画面が表示される。ここで、プレーヤが「YES」を指示する操作ボタンを押すと、前回中断していたラウンドからゲームプレイを再開できる。
図8(A)はワールドツアートーナメントでのセレクト画面である。例えばD1には、プレーヤがまだ参加していない英国グラスチャンピオンシップ大会の情報が表示されている。即ち、出場資格がプレーヤレベルA以上であること、大会開催期間が6/15〜6/28であること、大会開催期間中のプレーヤの最高成績(最高ラウンド数)が第1ラウンド(即ち未出場)であることなどが表示されている。
またD2には、プレーヤが現在参加中であるジャパンオープン大会の情報が表示されている。即ち、プレーヤが大会に参加中であること、出場資格がプレーヤレベルC以上であること、大会開催期間が6/8〜6/21であること、大会開催期間中のプレーヤの最高成績がセミファイナルラウンドであることなどが表示されている。
そして、プレーヤが図8(A)のD1の選択項目を選択する操作入力を行うと、出場資格(図4参照)を満たしていることを条件に、英国グラスチャンピオンシップ大会の第1ラウンドから出場できる。またD2の選択項目を選択する操作入力を行うと、トーナメントで勝ち残っている場合には、前回に勝利したラウンドの次のラウンドから出場でき、前回に敗退している場合には、第1ラウンドから出場できる。
また図8(A)のD3の選択項目を選ぶと、ワールドツアーのスケジュールを確認することができる。即ち図3(A)に示すスケジュールデータなどに基づいて、スケジュールの確認画面が生成されて表示される。またD4の選択項目を選ぶと、他のプレーヤ同士の対戦(セッション)を観戦できる。
プレーヤが、図8(A)のD1やD2の選択項目を選択し、大会への参加要求を行うと、図8(B)に示すように、「対戦相手を検索しています」というメッセージ画面が表示される。この時、ゲーム装置は図5(A)に示すマッチング条件データをサーバにアップロードする。そしてサーバから図5(B)に示す対戦相手リストデータがダウンロードされると、ゲーム装置はこの対戦相手リストの中から対戦相手を選択(検索)する。
そして対戦相手が決定すると、オープニング画面等の表示の後に、図9(A)、図9(B)に示す対戦ゲームが開始し、対戦ゲームの画像が生成されて表示される。ここでは、プレーヤが操作するキャラクタCHと、相手プレーヤが操作するキャラクタCCとの間で、ボールBLを打ち合うテニスゲームの対戦ゲーム画像が生成される。
そしてプレーヤが勝ったり相手プレーヤが勝つことで、ゲームの勝敗が決すると、図10(A)に示すようにランキング更新中を知らせるメッセージ画面が表示される。そして図10(B)に示すようにプレーヤの最新のワールドツアーランキングが表示される。
また、参加中の大会の開催期間が終了してしまうと、図11(A)に示すように、タイムアップによるトーナメント結果確定のメッセージ画面が表示される。即ち図8(A)のD2に示すジャパンオープンの大会開催期間が終了し、開催期間中のプレーヤの最高ラウンドがセミファイナルであった場合には、図11(A)に示すようなメッセージ画面が表示される。
また、プレーヤが、出場したラウンドで敗退すると、図11(B)に示すように、敗退によるトーナメント結果確定のメッセージ画面が表示される。例えば図11(B)ではプレーヤが第2ラウンドで敗退したことが表示されている。また、大会開催期間中にプレーヤが進出した最高ラウンドがセミファイナルであることも表示されている。また図11(B)に示すように、プレーヤは、大会開催期間中は何度でも同じ大会に出場できるが、最高ラウンド数を更新しないと、トーナメントのラウンドポイントを獲得できない。
以上のように、本実施形態の仮想トーナメント方式によれば、実際には確定的なトーナメントは存在しないのに、あたかもトーナメントを戦っているかのような仮想現実感をプレーヤに与えることができる。またプレーヤは、いつでもトーナメントに参加したり、中断していたトーナメントを再開できるため、従来のネットワークゲームのトーナメント方式に比べて、プレーヤの時間的な利便性を大幅に向上できる。また、大会開催期間中であれば同じ大会に何度も出場して、優勝を目指すことができるため、ゲームプレイを継続することについてのプレーヤのモチベーションを維持できる。
3.2 異なるラウンドのプレーヤ同士の対戦
仮想トーナメント方式では、原則的には、同じ大会の同じラウンドに進出しているプレーヤ同士で対戦が行われる。例えば図12(A)では、プレーヤP1、P2の進出ラウンドは共に第1ラウンド(広義には第Kラウンド)であるため、これらのプレーヤP1、P2がマッチングされて、プレーヤP1、P2同士で対戦が行われる。同じように、例えば進出ラウンドが第2ラウンドであるプレーヤ同士、或いは進出ラウンドが第3ラウンドであるプレーヤ同士がマッチングされて対戦が行われる。
この場合、大会へのプレーヤの参加人数が多い場合には、進出ラウンド数が同じプレーヤ同士をマッチングすることは容易である。しかしながら、開催日時、時間帯、開催国などが原因で、大会の参加人数が少ない場合がある。このように参加人数が少ない場合には、同じ大会に参加している他のプレーヤは存在するが、進出ラウンド数が同じ他のプレーヤは存在しないという状況が起こりえる。従って、このような状況では、プレーヤは、進出ラウンド数が同じ他のプレーヤが参加して来るまで、待たなければならなくなる。即ち図8(B)のような対戦相手検索中のメッセージが表示されたままになり、図9(A)、図9(B)の対戦ゲームを開始できなくなる。
そこで本実施形態では、進出ラウンド数が異なるプレーヤ同士をマッチングして、これらのプレーヤの対戦を許可する手法を採用している。即ちプレーヤが仮想トーナメントの第Kラウンドに進出した場合に、仮想トーナメントに進出している他のプレーヤを対戦相手として選択する。例えば図12(B)ではプレーヤP1の進出ラウンドは第3ラウンド(広義には第Kラウンド)であり、プレーヤP2の進出ラウンドは第1ラウンド(広義には第Lラウンド)である。この場合に本実施形態では、これらのプレーヤP1、P2をマッチングして、進出ラウンド数が異なるプレーヤP1、P2同士での対戦を許可する。
このようにすれば、大会の参加人数が少ない場合でも、異なる進出ラウンド数のプレーヤ同士がマッチングされるため、プレーヤは、同じ進出ラウンド数のプレーヤが参加するまで待たなくても済むようになる。従って、プレーヤの待ち時間を大幅に減らすことができ、プレーヤの利便性を向上できる。
即ち仮想トーナメント方式ではない従来のトーナメント方式では、トーナメントが作成された時点で、対戦相手(対戦予定相手)が確定する。従って、図12(B)のように、進出ラウンドが異なるプレーヤ同士を対戦させることはできない。
これに対して仮想トーナメント方式では、ラウンド毎に対戦相手がランダムにマッチングされる。従って、図12(B)のように進出ラウンドが異なるプレーヤ同士を対戦させることが可能になる。本実施形態では、このような仮想トーナメント方式の優位点を有効活用して、進出ラウンドが異なるプレーヤ同士を対戦させて、大会への参加人数が少ない場合にも、これに対応できるようにしている。
更に本実施形態では、このように進出ラウンドが異なるプレーヤ同士を対戦させる場合に、それぞれのプレーヤに対して異なる画像を表示する手法を採用している。即ち、第Kラウンドに進出しているプレーヤと第Lラウンドに進出している他のプレーヤとが対戦する場合に、第Lラウンドに進出している他のプレーヤ用の第2の画像とは異なる第1の画像を、第Kラウンドに進出しているプレーヤ用の画像として生成する。例えばプレーヤP1用の第1の画像(第1の画面)と、プレーヤP2用の第2の画像(第2の画面)として、異なる画像を生成する。
具体的には図13(A)は、ファイナルラウンド(第Kラウンド)に進出したプレーヤP1(キャラクタCH)のゲーム装置において表示されるオープニング画面の例である。一方、図13(B)は第1ラウンド(第Lラウンド)に進出したプレーヤP2(キャラクタCC)のゲーム装置において表示されるオープニング画面の例である。
図13(A)では、E1に示すようにファイナルラウンドであることを示すメッセージが表示され、図13(B)では、E2に示すように第1ラウンドであることを示すメッセージが表示される。また図13(A)のオープニング画面として、例えばファイナルラウンドであることを示す特別な演出表示を行ってもよい。
また図14(A)は、ファイナルラウンドに進出したプレーヤP1が勝利したときに表示されるエンディング画面の例である。一方、図14(B)は、第1ラウンドに進出したプレーヤP2が勝利したときに表示されるエンディング画面の例である。
図14(A)では、プレーヤP1が操作するキャラクタCHが、ファイナルラウンドの勝利により獲得したトロフィーを持って喜んでいる様子を表す演出画面が表示される。更に図15のように、大会でのプレーヤP1の優勝を祝福するエンディング画面の表示も行われる。一方、図14(B)では、プレーヤP2が操作するキャラクタCCが、初戦である第1ラウンドの勝利により喜んでいる様子を表す演出画面が表示される。
このように本実施形態では、進出ラウンドが異なるプレーヤP1、P2同士を対戦させると共に、プレーヤP1、P2の各々には、その進出ラウンドに応じたオープニング画面やエンディング画面を表示する。このようにすれば、プレーヤP1は、対戦相手であるプレーヤP2が第1ラウンドに進出したプレーヤであることに気づかず、同じファイナルラウンドに進出したプレーヤであると思って、対戦を行うことになる。同様にプレーヤP2も、対戦相手であるプレーヤP1がファイナルラウンドに進出したプレーヤであることに気づかず、同じ第1ラウンドに進出したプレーヤであると思って、対戦を行うことになる。従って、プレーヤに気づかれることなく、進出ラウンドが異なるプレーヤ同士を対戦させることができ、大会への参加人数が少ない場合にも対応できるようになる。
また本実施形態では、進出ラウンドが異なるプレーヤ同士を対戦させない第1のモード(第Kラウンドに進出しているプレーヤの対戦相手として、第Lラウンドに進出している他のプレーヤを選択しないモード)と、進出ラウンドが異なるプレーヤ同士を対戦させる第2のモード(第Kラウンドに進出しているプレーヤの対戦相手として、第Lラウンドに進出している他のプレーヤを選択するモード)とを、切り替え可能にしてもよい。例えば第1、第2のモードの切り替えを、ネットワークゲーム(大会)へのプレーヤの参加人数等に基づいて行う。
具体的には図16(A)に示すように、参加人数が多い場合には第1のモードを選択して、大会ID及びラウンドIDの両方を含むマッチング条件データ(図5(A)参照)を、サーバにアップロードする。図12(A)を例にとれば、大会IDと、進出ラウンド数が1であることを示すラウンドIDをアップロードする。そして参加大会及び進出ラウンドが同じプレーヤからなる対戦相手リスト(図5(B)参照)を、サーバからダウンロードし、このリストの中から対戦相手を選択する。図12(A)を例にとれば、進出ラウンド数が1であるプレーヤのリストの中から対戦相手を選択する。
一方、図16(B)に示すように、参加人数が少ない場合には第2のモードを選択し、大会IDを含むがラウンドIDを含まないマッチング条件データを、サーバにアップロードする。そして参加大会が同じプレーヤからなる対戦相手リストをサーバからダウンロードし、このリストの中から対戦相手を選択する。即ち、参加大会は同じであるが、進出ラウンド数は無関係であるプレーヤのリストの中から対戦相手を選択する。
このようにすれば、サーバにアップロードするマッチング条件データの内容を変えるだけで、第1、第2のモードを切り替えることができ、第1、第2のモードを簡素で効率的な処理により切り替えることができる。
なお第1、第2のモードの切り替えは、図5(C)に示す切り替えデータをサーバから切り替えデータ記憶部181にダウンロードしておき、このダウンロードされた切り替えデータに基づいて行うことが望ましい。
即ちゲームソフトの制作メーカが、ネットワークゲームの参加人数等を考慮して、図3(A)、図3(B)に示すスケジュールデータや図5(C)に示す切り替えデータを、ゲーム装置の製造メーカのサーバにアップロードする。例えば、ネットワークゲームの参加人数が多い場合には、大会開催数や大会の種類が多いスケジュールデータをアップロードすると共に、図16(A)の第1のモードを選択するための切り替えデータをアップロードする。このようにすれば、多くのプレーヤに多様な大会を楽しんでもらうことができると共に、通常のトーナメントのように、進出ラウンドが同じプレーヤ同士を対戦させることが可能になる。
一方、ネットワークゲームの参加人数が少ない場合には、大会開催数や大会の種類が少ないスケジュールデータをアップロードすると共に、図16(B)の第2のモードを選択するための切り替えデータをアップロードする。このようにすれば、参加人数が少ない場合にも、シンプルなスケジュールの大会を、短い待ち時間でプレーヤに楽しんでもらうことが可能になる。
3.3 ラウンドポイント
本実施形態の仮想トーナメント方式では、プレーヤは、大会開催期間内であれば何度でも同じ大会に出場して、優勝を目指すことができる。この場合に本実施形態では、各ラウンドの対戦に勝利すると、相手プレーヤの所持ポイントに応じた対戦ポイントを相手プレーヤから獲得でき、対戦に負けると、対戦ポイントを失う。
しかしながら、開催期間内において同じ大会に繰り返し挑戦するプレーヤのモチベーションを維持するためには、このような対戦毎に獲得できる対戦ポイントだけでは不十分である。
そこで本実施形態では、過去の最高ラウンド数を更新することでポイントを獲得できるラウンドポイント方式を採用している。即ち仮想トーナメントにおいて過去にプレーヤが進出した最高ラウンドが第Nラウンドであった場合には、プレーヤが最高ラウンド数を更新して第Mラウンドに進出したことを条件に、プレーヤのラウンドポイントの更新処理を行う。
具体的には図17に示すように、図3(A)、図3(B)のスケジュールデータにより特定される大会開催期間内において、プレーヤが最高ラウンド数を更新したことを条件に、プレーヤのラウンドポイントを更新(加算)する。
例えば図17では、大会開催期間内の第1の期間T1においてプレーヤが第2ラウンドまで進出し、最高ラウンド数が2に更新されている。すると、更新された最高ラウンド数が、図6(A)のトーナメント結果データとしてトーナメント結果データ記憶部175に記憶されて保持される。従って、プレーヤが、一旦、ゲームプレイを中断して、第1の期間T1の後の第2の期間T2で大会に参加した場合には、トーナメント結果データ記憶部175に保持されている最高ラウンド数を更新したことを条件に、ラウンドポイントが加算される。この場合に、ラウンドポイントの加算値は、図6(B)に示すようなラウンドポイントテーブルを用いて決定される。即ち更新される最高ラウンド数が大きいほど、加算されるラウンドポイントも大きくなる。
このようなラウンドポイント方式を採用すれば、プレーヤは、ラウンドポイントの獲得が動機になって、大会開催期間内において何度も同じ大会に挑戦するようになる。従って、プレーヤのプレイ回数が増え、ネットワークゲームの稼働率を向上できる。
また図18では、大会開催期間内の第1の期間T1で出場した仮想トーナメントの第1ラウンド(広義には第Iラウンド)においてプレーヤは勝利し、第2ラウンドへの進出を決めている。すると、プレーヤの進出ラウンド数=2が、図6(A)のトーナメント結果データとしてトーナメント結果データ記憶部175に記憶されて保持される。従って、プレーヤが、一旦、ゲームプレイを中断して、第1の期間T1の後の第2の期間T2で大会に参加すると、同じ大会の仮想トーナメントの第2ラウンド(広義には第I+1ラウンド)へのプレーヤの出場を受け付ける。
従って、プレーヤは、第1ラウンドからファイナルラウンドに勝利するまで、対戦ゲームを継続してプレイしなくても済み、途中で対戦ゲームを中断できる。例えばその大会の対戦ゲームを中断して他の大会に参加したり、ゲーム以外の用事を済ますことなどが可能になる。そして、中断したゲームを再開した場合にも、ゲーム装置側が過去の進出ラウンド数を記憶しているため、進出を決めたラウンドからゲームを再開できるようになり、プレーヤの利便性を向上できる。
一方、図19では、大会開催期間内の第1の期間T1で出場した仮想トーナメントの第3ラウンド(広義には第Jラウンド)においてプレーヤは敗退している。すると、プレーヤの進出ラウンド数が1にクリアされて、図6(A)のトーナメント結果データとしてトーナメント結果データ記憶部175に記憶されて保持される。従って、プレーヤが、一旦、ゲームプレイを中断して、第1の期間T1の後の第2の期間T2でプレーヤが同じ大会に参加すると、同じ大会の仮想トーナメントの第1ラウンドへのプレーヤの出場を受け付ける。
従って、プレーヤは、途中のラウンドで敗退した場合に、また同じ大会に参加して、第1ラウンドから戦いなおすことができる。この場合にプレーヤは、例えば第1の大会で敗退した時に、その第1の大会に直ぐに参加する必要はなく、例えば他の第2の大会に参加して気分転換を行った後に、第1の大会に参加して、第1ラウンドから再度挑戦することができる。これによりプレーヤの利便性を更に向上できる。
また本実施形態では、対戦相手設定部108は、プレーヤが第Iラウンドまでに対戦した他のプレーヤについては、第I+1ラウンド以降での対戦相手として除外する処理(非選択にする処理)を行ってもよい。例えばプレーヤが第1ラウンド、第2ラウンドで勝利して、第3ラウンドに進出した場合には、第1、第2ラウンドで対戦した他のプレーヤを、第3ラウンド以降の対戦相手として除外する。別の言い方をすれば、大会開催期間中に、プレーヤが勝ち続けている場合には、一度対戦した相手とはマッチングを行わないようにする。また大会開催期間内の仮想トーナメントにおいて、一度でも対戦した他のプレーヤについては、対戦相手として除外するようにしてもよい。
即ち本実施形態の仮想トーナメント方式では、各ラウンドにおいて対戦相手がランダムにマッチングされる。従って、プレーヤが例えば第1、第2ラウンドで対戦して勝利した他のプレーヤが、第3ラウンド以降で対戦相手として登場してしまう事態が生じる可能性がある。
しかしながら、このような事態が生じると、同じトーナメントにおいて自分が勝利したはずの他のプレーヤと、再度対戦することになってしまい、プレーヤが不自然さを感じ、仮想的なトーナメントであることに気づかれてしまうおそれがある。
この点、大会開催期間内において過去に対戦した他のプレーヤを、対戦候補として除外する手法を採用すれば、このような不自然な事態の発生を防止できる。
なお、この手法を採用するためには、例えば、同じ仮想トーナメント又は同じ大会開催期間においてプレーヤが過去に対戦した他のプレーヤのID(セッションID等)を、図示しない過去対戦相手リスト記憶部に記憶しておく。そして、マッチング条件データをサーバにアップロードして、それに対応した対戦相手リストがサーバからダウンロードされた場合に、対戦相手リストに記述されている対戦相手のうち、過去対戦相手リスト記憶部に記憶される過去対戦相手リストに記述されていない対戦相手を選択すればよい。即ち過去対戦相手リストに記述されている他のプレーヤを除外して、対戦相手の選択処理を行えばよい。このようにすれば、過去に対戦した相手を除外する処理を、簡素な処理で実現できるようになる。
また本実施形態では、対戦相手設定部108は、プレーヤが第Iラウンドまでに対戦した他のプレーヤ(過去に対戦したプレーヤ)が、第I+1ラウンド以降において対戦相手として設定(選択)された場合に、対戦相手として設定された他のプレーヤの識別情報(例えば名前)を、異なる識別情報(異なる名前)に変更して、プレーヤのゲーム装置の表示部に表示するための処理を行ってもよい。
例えば大会へのプレーヤの参加人数が少ない場合に、上述のように過去に対戦した他のプレーヤを対戦相手として除外してしまうと、トーナメントを組めずに、大会自体が成立しない可能性も生じ得る。従って、この場合には、過去に対戦した他のプレーヤを、対戦相手として除外しないようにする。具体的には、サーバからダウンロードされた対戦相手リストの中に、仮想トーナメント(大会)において過去に対戦した他のプレーヤが含まれていても、この他のプレーヤを除外せずに、対戦相手リストの中から対戦相手を選択する。このようにすることで、大会へのプレーヤの参加人数が少ない場合にも、これに対応できるようになる。
しかしながら、このように、プレーヤが、第Iラウンド以前(過去)に対戦した他のプレーヤと、第I+1ラウンド以降も対戦することになってしまうと、プレーヤが不自然さが感じるおそれがある。
そこで、この場合には、過去に対戦した他のプレーヤの識別情報を変更(変換)する。例えば他のプレーヤの名前(広義には識別情報)を、名前変換テーブル(識別情報変更テーブル)等を用いて、架空の名前に変更する。そして変更された名前(識別情報)を、プレーヤのゲーム装置の表示部に表示する。例えば対戦プレーヤの紹介画面や、ゲームプレイ中において名前が表示される領域において、架空の名前に変更して表示する。
なお、この手法を採用するためには、例えば、同じ仮想トーナメント又は同じ大会開催期間においてプレーヤが過去に対戦した他のプレーヤのID(セッションID等)を、過去対戦相手リスト記憶部に記憶しておく。そして、マッチング条件データをサーバにアップロードして、それに対応した対戦相手リストがサーバからダウンロードされた場合に、対戦相手リストの中に過去に対戦した他のプレーヤがいるかどうかを、過去対戦相手リスト記憶部の過去対戦相手リストに基づいて判定する。そして、過去に対戦した他のプレーヤがいる場合には、その他のプレーヤの名前を変更する。そして変更した名前を、プレーヤのゲーム装置の表示部に表示するように、画像生成部120に指示する。このようにすれば、過去に対戦した他のプレーヤと対戦していることがプレーヤに気づかれてしまい、プレーヤが不自然さを感じてしまう事態を防止できる。
なお、過去に対戦したプレーヤを除外する第1の対戦モードと、過去に対戦したプレーヤを除外せずに識別情報を変更する第2の対戦モードとを、大会へのプレーヤの参加人数に応じて切り替えるようにしてもよい。具体的には、大会へのプレーヤの参加人数が多い場合には、第1の対戦モードに切り替え、大会へのプレーヤの参加人数が少ない場合には、第2の対戦モードに切り替える。この場合には、第1、第2の対戦モードを切り替えるための対戦モード切り替えデータを、前述した第1、第2のモードを切り替えるための切り替えデータと同様に、ネットワークを介してゲーム装置と通信接続されるサーバからダウンロードして、切り替えデータ記憶部281に記憶する。そして対戦相手設定部108は、ダウンロードされた対戦モード切り替えデータに基づいて、第1、第2の対戦モードを切り替えるようにすればよい。
3.4 詳細な処理例
次に本実施形態の詳細な処理例を図20、図21のフローチャートを用いて説明する。
まず、図3(A)、図3(B)で説明したスケジュールデータをサーバからダウンロードする(ステップS1)。即ち、ゲーム装置への電源投入後、ゲームの開始時に、スケジュールデータをダウンロードする。この場合に図5(C)で説明した切り替えデータについてもダウンロードする。
次に、プレーヤが大会への参加要求の操作入力を行ったか否かを判断する(ステップS2)。具体的には図8(A)のセレクト画面においてD1、D2に示す選択項目を選択したか否かを判断する。
そして、大会への参加要求の操作入力が行われると、大会開催期間内に、同じ大会に参加しているか否かが判断される(ステップS3)。そして、過去に同じ大会に参加している場合には、図6(A)のトーナメント結果データ(プレーヤデータ)をトーナメント結果データ記憶部175から読み込む(ステップS4)。
次に、プレーヤが大会への出場資格条件を満たしているか否かを判断する(ステップS5)。具体的には、図4で説明した出場資格データを用いて、プレーヤレベル等の出場資格条件を満たしているか否かを判断する。そして条件を満たしている場合には、大会へのプレーヤの参加要求を受け付ける(ステップS6)。
次に、図5(A)で説明したマッチング条件データをサーバにアップロードする(ステップS7)。この場合に例えば第1のモードでは、図16(A)に示すように大会ID及びラウンドIDをマッチング条件データとしてアップロードし、第2のモードでは、図16(B)に示すように大会IDだけをマッチング条件データとしてアップロードする。そして、マッチング条件データに基づいてプレーヤのマッチング処理を行ったサーバから、マッチング処理の結果である対戦相手リストデータをダウンロードする(ステップS8)。そしてダウンロードされた対戦相手リストデータに基づき対戦相手を選択する(ステップS9)。この場合にプレーヤの待ち時間の間は、図8(B)のようなメッセージ画面を表示する。
対戦相手が選択されると、その対戦相手との対戦ゲームを開始する(ステップS10)。この時、図13(A)、図13(B)に示すように、ラウンド数に応じたオープニング画面を表示する(ステップS11)。即ち、例えばファイナルラウンドに進んでいるプレーヤP1と、第1ラウンドに進んでいるプレーヤP2が対戦する場合には、プレーヤP1には図13(A)のようなオープニング画面を表示し、プレーヤP2には図13(B)のようなオープニング画面を表示する。そしてオープニング画面の表示の後、図9(A)、図9(B)に示すようなプレーヤ同士の対戦ゲームの処理を行う(ステップS12)。
次に、対戦ゲームが終了したか否かを判断する(ステップS13)。そして対戦ゲームが終了すると、図14(A)、図14(B)、図15に示すように、ラウンド数に応じたエンディング画面を表示する(ステップS14)。即ち、ファイナルラウンドに出場して勝利したプレーヤP1には、図14(A)、図15のようなエンディング画面を表示し、第1ラウンドに出場して勝利したプレーヤP2には、図14(B)のようなエンディング画面を表示する。
次に、プレーヤが相手プレーヤに勝ったか否かを判断する(ステップS15)。そして、勝った場合には対戦ポイントを加算する更新処理を行う(ステップS16)。即ち、相手プレーヤの取得ポイントの所定パーセント分を、プレーヤの対戦ポイントに加算する。
次に、最高ラウンジ数が更新されたか否かを判断する(ステップS17)。そして最高ラウンド数が更新された場合には、図17で説明したように、ラウンドポイントを加算する更新処理を行う(ステップS18)。この場合にラウンドポイントの加算処理は図6(B)に示すラウンドポイントテーブルを用いて行う。
次に、大会の進出ラウンド数を1だけインクリメントする(ステップS19)。そして、このようにインクリメントされた進出ラウンド数は、図6(A)のトーナメント結果データに記憶される。これにより、図18で説明したように、プレーヤがゲームプレイを中断した場合にも、ゲームプレイの再開時には、進出したラウンドから対戦ゲームをプレイできるようになる。
ステップS15で、プレーヤが負けたと判断された場合には、対戦ポイントを減算する更新処理を行う(ステップS20)。そして、大会の進出ラウンド数を1に初期化する(ステップS21)。このようにして初期化された進出ラウンド数は、図6(A)のトーナメント結果データに記憶される。これにより、図19で説明したように、途中のラウンドで敗退した場合にも、同じ大会開催期間内であれば何度でも、第1ラウンドから仮想トーナメントに再度チャレンジすることが可能になる。
このようにして、進出ラウンド数が、1だけインクリメントされたり、1に初期化された後、図10(A)、図10(B)で説明したように、獲得した対戦ポイントやラウンドポイントに基づいて、プレーヤのランキングの更新処理が行われる(ステップS22)。
4.サーバ
以上では、対戦相手設定やゲーム成績演算などの処理を、ゲーム装置側が主体となって行う場合について説明したが、これらの処理をサーバが主体となって行ってもよい。図22には、この場合のサーバ10の構成例を示す。図22に示すようにサーバ10は、処理部200、記憶部270、通信部280を含む。
処理部200は、通信部280を介して受信したデータや、記憶部270に記憶されるデータ、プログラム等に基づいて、サーバ10の全体制御を行う。この処理部200の機能は、各種プロセッサ(CPU、GPU等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。
記憶部270は、処理部200や通信部280などのワーク領域となるもので、その機能はRAMやHDDなどにより実現できる。
通信部280は、有線や無線のネットワーク12を介して外部のゲーム装置20-1〜20-nや、図示しないゲームソフト制作メーカのサーバとの間で通信を行うものであり、その機能は、通信用ASIC又は通信用プロセッサなどのハードウェアや、通信用ファームウェアにより実現できる。
処理部200は、受け付け部202、対戦相手設定部204、ゲーム成績演算部206、画像生成設定部208を含む。なおこれらの構成要素の一部(例えば受け付け部、ゲーム成績演算部等)を省略する構成としてもよい。
受け付け部202は、プレーヤが大会への参加要求を行った場合に、その参加要求の受け付け処理を行う。具体的には出場資格データ記憶部272に記憶された出場資格データを用いて、参加要求の受け付け処理を行う。
対戦相手設定部204は、大会へのプレーヤの参加要求が受け付けられた場合に、同じ大会に参加要求した他のプレーヤを、大会における仮想トーナメントの対戦相手として設定するための処理(マッチング処理)を行う。この場合の対戦相手の設定は、マッチング条件データ記憶部273に記憶されるマッチング条件データに基づいて行う。またマッチング処理により得られた対戦相手のリストデータは、対戦相手リストデータ記憶部274に記憶される。
ゲーム成績演算部206は、プレーヤと他のプレーヤとの間での対戦ゲームのゲーム成績を演算する。この場合に、ラウンドポイントの演算は、ラウンドポイントテーブル記憶部276に記憶されるラウンドポイントテーブルに基づいて行う。また演算された対戦ポイント、ラウンドポイントなどのデータは、ゲーム成績データ記憶部277に記憶される。
なお、記憶部270のスケジュールデータ記憶部271には、大会開催のスケジュールデータが記憶される。また、トーナメント結果データ記憶部275には、プレーヤの進出ラウンド数や過去の最高ラウンド数が記憶される。また切り替えデータ記憶部281には、進出ラウンドが同じプレーヤ同士だけを対戦させる第1のモードと、進出ラウンドが異なるプレーヤ同士の対戦も許可する第2のモードとを切り替えるためのデータが記憶される。
画像生成設定部208は、対戦ゲームの画像を生成するための設定処理を行う。例えばゲーム装置20-1〜20-nに対して、その表示部に表示される画像の生成指示情報を送信したり、ゲーム装置20-1〜20-nでの画像生成処理を管理する。
そして図22のサーバ10では、対戦相手設定部204が、プレーヤが仮想トーナメントの第Kラウンドに進出した場合に、仮想トーナメントの第Lラウンドに進出している他のプレーヤを対戦相手として設定するための処理を行う。そしてこの場合に、画像生成設定部208は、第Lラウンドに進出している他のプレーヤ用の第2の画像とは異なる第1の画像を、第Kラウンドに進出しているプレーヤ用の画像として生成するための設定処理を行う。即ち、このような第1、第2の画像を表示するようにゲーム装置20-1〜20-nに指示する。
またゲーム成績演算部206は、仮想トーナメントにおいて過去にプレーヤが進出した最高ラウンドが第Nラウンドであった場合には、プレーヤが最高ラウンド数を更新して第Mラウンドに進出したことを条件に、プレーヤのラウンドポイントの更新処理を行う。即ち最高ラウンド数を更新していない場合にはラウンドポイントを加算せず、最高ラウンド数が更新された時にラウンドポイントを加算する。
なお受け付け部202、対戦相手設定部204、ゲーム成績演算部206、画像生成設定部208の処理は、サーバ10の処理部200だけで実現してもよいが、サーバ10の処理部200とゲーム装置20-1〜20-nの処理部との分散処理により実現してもよい。
なお、上記のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。また、参加要求の受け付け処理、対戦相手の設定処理、ラウンドポイントなどのゲーム成績の演算処理、第1、第2の画像の生成処理等も、本実施形態で説明したものに限定されず、これらと均等な手法も本発明の範囲に含まれる。