説明

ゲームシステム、プログラム

【課題】一般のプレーヤに意識されることなく、コンピュータにより制御される仮想プレーヤを含めたゲームを実行する。
【解決手段】中継サーバ10(10−1,…,10−n)は、ゲーム機16から送信されたゲームへのエントリ要求を受信し、ゲームの実行に必要なプレーヤが揃っているかを判別する。ゲームに必要なプレーヤが揃っていない場合に、中継サーバ10は、コンピュータにより制御される仮想プレーヤの参加要求をクライアント装置24に送信する。クライアント装置24は、参加要求に対してクライアントプレーヤ(仮想プレーヤ)によるゲームへのエントリ要求を中継サーバ10に送信し、中継サーバ10におけるゲームが開始されると、仮想プレーヤを制御してゲーム用のデータを中継サーバ10に出力する。中継サーバ10は、ゲーム機16とクライアント装置24の制御により入力されるデータとに基づいてゲームを実行する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数のプレーヤが参加するゲームを実行するゲームシステム、プログラムに関する。
【背景技術】
【0002】
近年では、複数のプレーヤが参加するゲーム(マルチプレーヤゲーム)を実行するゲームシステムが広く普及している。例えば、カーレースゲームでは、複数のプレーヤにそれぞれ対応する車をゲーム画面(コース上)に表示して、各プレーヤのハンドルやアクセル等に対する操作に応じて走行動作を制御することによりゲームを実行する。
【0003】
マルチプレーヤゲームでは、ゲームに参加しようとするプレーヤにゲームエントリさせ、必要な人数のプレーヤが揃うとゲームが開始される。また、必要な人数が揃わない場合であっても、コンピュータの制御により動作がシミュレートされる車をゲームに参加させることでゲームを実行することもできる。
【0004】
例えば、特許文献1に記載されたマルチプレーヤ用装置では、マルチプレーヤゲームに参加していたプレーヤがゲームの対戦を中止したり、不在になったりした場合に、不在プレーヤのシミュレーションを開始してゲームを続行することができる。マルチプレーヤ用装置は、シミュレーションのパフォーマンスを高めるために、複数のゲームを通じて、あるいは複数の異なるゲームを通じてシングルプレーヤの行動パターンをモニタして、代表的行動パターンと解決方法とを決定することができる。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特表2006−509548号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
特許文献1に記載された従来の電子マルチプレーヤ用ゲームでは、プレーヤが不在となった場合には、不在プレーヤをシミュレーションしてゲームを継続することができる。しかしながら、実際に存在するプレーヤをシミュレーションするものであって、存在しないプレーヤの替わりとなるものではなかった。
【0007】
また、従来では、プレーヤに替わってゲーム画面中のキャラクタ(例えば、カーレースにおける車)をコンピュータが制御するゲームも存在するが、そのゲーム用に用意されたコンピュータキャラクタであるため、時間が経過したとしても各ゲームにおいて同じ傾向の動作をする。従って、他のプレーヤは、対戦相手が人間ではなくコンピュータであることが容易に分かり、ゲームに白熱しなくなってしまう。
【0008】
また、特にゲームセンターなどに設置されたゲーム機によってマルチプレイゲームが実行される場合、コンピュータ制御されたコンピュータキャラクタがゲームに参加していることが他のユーザによって認識されてしまうと、ゲーム自体の人気がないという印象を与えてしまい、ゲームへの参加意欲の低下を招いてしまう。
【0009】
本発明は前述した事情に考慮してなされたもので、その目的は、一般のプレーヤに意識されることなく、コンピュータにより制御される仮想プレーヤを含めたゲームを実行することが可能なゲームシステム、プログラムを提供することにある。
【課題を解決するための手段】
【0010】
上記の課題を解決するために、本発明は、複数のプレーヤが参加するゲームを制御するゲームシステムにおいて、複数のゲーム機から送信されたプレーヤによるゲームへのエントリ要求を受信する参加要求受信手段と、前記エントリ要求受信手段により受信されたエントリ要求により、ゲームの実行に必要なプレーヤが揃っているかを判別する判別手段と、前記判別手段によりゲームの実行に必要なプレーヤが揃っていないと判別された場合に、コンピュータにより制御される仮想プレーヤの参加要求を送信する参加要求送信手段と、前記ゲーム参加要求送信手段により送信された参加要求に対して、前記仮想プレーヤによるゲームへのエントリ要求を送信するゲームエントリ要求送信手段と、前記ゲームエントリ要求送信手段により送信したエントリ要求に応じた前記仮想プレーヤを制御してゲーム用のデータを出力するプレーヤ制御手段と、前記ゲーム機から入力されるデータと前記プレーヤ制御手段の制御により入力されるデータとに基づいて、前記プレーヤと前記仮想プレーヤとが参加するゲームを実行するゲーム制御処理手段とを具備したこと特徴とする。
【発明の効果】
【0011】
本発明によれば、一般のプレーヤに意識されることなく、コンピュータにより制御される仮想プレーヤを含めたゲームを実行することが可能となる。
【図面の簡単な説明】
【0012】
【図1】本実施形態におけるゲームシステムの構成を示すブロック図。
【図2】管理サーバ18において管理されるデータベース20のデータ構成例を示す図。
【図3】クライアント装置24において記録された、クライアントプレーヤを管理するためのプレーヤ管理データの一例を示す図。
【図4】図3に示すプレーヤ管理データ中のクライアントプレーヤ制御パラメータの一例を示す図。
【図5】中継サーバ10において実行されるゲーム制御処理を説明するフローチャート。
【図6】クライアント装置24において実行されるクライアントプレーヤ制御処理を説明するフローチャート。
【図7】中継サーバ10におけるゲームエントリの状況を示す図。
【図8】中継サーバ10における別のゲームエントリの状況を示す図。
【図9】ゲーム機16において表示されたゲーム画面の一例を示す図。
【図10】ゲーム終了後に表示されるゲーム結果を表す画面の一例を示す図。
【発明を実施するための形態】
【0013】
以下、図面を参照して本発明の実施の形態について説明する。
図1は、本実施形態におけるゲームシステムの構成を示すブロック図である。図1に示すゲームシステムは、サーバ(中継サーバ10、管理サーバ18)とクライアント装置24とがネットワーク12を介して接続されて構成されたもので、ゲーム機16を使用するプレーヤに対してオンラインゲームサービスを提供する。
【0014】
複数の中継サーバ10(10−1,10−2,…,10−n)は、各地に設けられた複数のゲームセンター14(14−1,14−2,…,14−mに)のそれぞれに設置された複数のゲーム機16とネットワーク12を介して接続される。複数の中継サーバ10は、連携してオンラインゲームサービスを提供するもので、複数のゲーム機16からのゲームへのエントリ要求を受信して、マルチプレイゲームに必要な人数のプレーヤをマッチングしてゲームを実行する。複数の中継サーバ10は、連携して複数のゲーム機16からのゲームへのエントリ要求を受信して、それぞれにおいて独立してゲームを実行することができる。なお、本実施形態におけるゲームシステムでは、例えば複数のプレーヤによって対戦が行われるカーレースゲームを実行するものとして説明する。
【0015】
中継サーバ10は、通信機能を有するコンピュータが実装されたもので、基本プログラム(OS)の他、後述するゲーム制御処理を実行するためのゲーム制御用のプログラムをプロセッサにより実行することにより、オンラインゲームサービスを提供するための各種機能を実現する。中継サーバ10は、メモリにプログラムや実行中のゲームに関する各種データを記録しながらゲームを制御する。
【0016】
中継サーバ10は、ゲーム制御用のプログラムを実行することによって、複数のゲーム機16から送信されたプレーヤによるゲームへのエントリ要求を受信し、この受信されたエントリ要求により、ゲームの実行に必要なプレーヤが揃っているかを判別する。本実施形態では、例えば、最初のプレーヤによるエントリ要求があってから予め決められた時間内に、ゲームの実行に必要なプレーヤの人数が揃っているかを判別するものとする。中継サーバ10は、ゲームの実行に必要なプレーヤが揃っていないと判別された場合、ここではゲームの実行に必要な人数のプレーヤが揃っていないと判別された場合に、クライアント装置24により制御されるクライアントプレーヤ(仮想プレーヤ)の参加要求をクライアント装置24に対して送信する機能を実現する。例えば、中継サーバ10は、クライアント装置24に対して、不足しているプレーヤの人数分の仮想プレーヤの参加要求を送信する。
【0017】
また、本実施形態におけるゲームシステムでは、ゲームの実行中にプレーヤ間でメッセージを交換することができる。中継サーバ10は、ゲームに参加しているプレーヤのゲーム機16の間でメッセージデータを送受信(交換)するメッセージ交換機能が設けられ、ゲームに参加している何れかのゲーム機16から受信したメッセージデータを、ゲームに参加している他のゲーム機16に対して送信することができる。本実施形態では、メッセージ交換として、テキストデータを送受信するチャットが行われるものとする。なお、クライアント装置24により制御されるクライアントプレーヤがゲームに参加している場合には、ゲーム機16とクライアント装置24との間においてもメッセージデータの交換を行う。
【0018】
中継サーバ10は、ゲームが開始されると、ゲームに参加しているゲーム機16から入力されるデータ(操作データ等)と、クライアント装置24においてクライアントプレーヤに対する制御により入力されるデータとに基づいて、ゲーム機16を操作しているプレーヤとクライアント装置24によって制御されるクライアントプレーヤとが参加するゲームを実行する。
【0019】
ゲーム機16は、ゲームセンター14に設置される業務用に構成されたもので、通信機能を有するコンピュータが実装されている。ゲーム機16は、基本プログラム(OS)の他、中継サーバ10を通じて、他のゲーム機16を操作するプレーヤ、あるいはクライアント装置24により制御されるクライアントプレーヤ(詳細については後述する)との間で対戦をするためのゲームプログラムをプロセッサにより実行することにより、中継サーバ10が提供するオンラインゲームサービスを利用することができる。
【0020】
本実施形態におけるゲーム機16には、カーレース用の各種入力装置(ハンドル、ブレーキ/アクセル/クラッチペダル、レバー、ボタン等))が設けられている。ゲーム機16は、ゲーム参加時には、プレーヤの各種入力装置に対する操作データを中継サーバ10に送信する。
【0021】
管理サーバ18は、複数の中継サーバ10において実行されるゲームに関するデータをデータベース20に記録して管理する。データベース20において管理されるデータについては後述する(図2参照)。管理サーバ18は、インターネット26にゲーム利用者向けのサイトを開設しており、例えばパーソナルコンピュータ(PC)28や携帯電話機などの機器を通じて入力される指示に応じて、データベース20に記録されたユーザ個別のデータの閲覧、追加、変更などを行うことができる。また、管理サーバ18は、その他のサービスを提供することも可能である。
【0022】
クライアント装置24は、中継サーバ10において実行されるゲームに、ゲーム機16のプレーヤに代替するクライアントプレーヤ(仮想プレーヤ)を提供するための処理を実行するもので、ネットワーク12を介して、中継サーバ10及び管理サーバ18と接続されている。クライアント装置24は、通信機能を有するコンピュータが実装されたもので、基本プログラム(OS)の他、後述するクライアントプレーヤ制御処理を実行するためのクライアントプレーヤ制御用のプログラムをプロセッサにより実行することにより、クライアントプレーヤを提供するための機能を実現する。クライアントプレーヤ制御用のプログラムは、変更することによって、クライアントプレーヤのレベルや制御データに応じてどのような動作をするかを示す思考パターンなどを変更あるいは追加して、中継サーバ10においてゲームに参加するクライアントプレーヤに対する制御内容を調整することができる。
【0023】
クライアント装置24は、中継サーバ10から送信された参加要求に対して、クライアントプレーヤによるゲームへのエントリ要求を送信する。このエントリ要求によって中継サーバ10においてゲームが開始されると、エントリ要求に応じたクライアントプレーヤを制御してゲーム用のデータ、すなわちゲーム機16から中継サーバ10に対して送信される操作データと同様のデータを出力する。クライアント装置24は、クライアントプレーヤを制御するための個別に設定された制御データ(プレーヤ管理データ(クライアントプレーヤ制御パラメータ)、図3、図4参照)を記録しており、この制御データをもとにクライアントプレーヤを制御することで、クライアントプレーヤに個性をもたせて、あたかも一般のプレーヤがゲーム機16を通じてゲームに参加しているように他のプレーヤに認識させる。クライアント装置24は、中継サーバ10において実行されたゲーム処理の結果に応じて制御データを更新し、その後、クライアントプレーヤがゲームに参加する場合に、この更新された制御データをもとにクライアントプレーヤを制御してゲーム用のデータを出力する。これにより、ゲーム機16を利用する一般のプレーヤと同様にして、ゲームへの参加に応じて変化していくことを表すことができる。
【0024】
また、クライアント装置24は、複数のクライアントプレーヤを制御することができる。クライアント装置24は、複数のクライアントプレーヤのそれぞれに対応する制御データを記録し、各制御データに応じて、対応するクライアントプレーヤを制御することができる。クライアント装置24は、1つの中継サーバ10において実行されるゲームに複数のクライアントプレーヤを参加させたり、また複数の中継サーバ10において実行される複数のゲームに対してそれぞれクライアントプレーヤを参加させたりすることができる。
【0025】
次に、管理サーバ18において管理されるデータベース20のデータ構成例について説明する。
図2に示すように、データベース20では、ユーザを識別するためのユーザ識別データ(ユーザID)と対応付けて、各ユーザに関する各種のユーザデータが管理される。ユーザデータには、ゲーム中で使用されるプレーヤの名前(ニックネーム)、カーレースゲーム中で使用する車の選択内容(メーカー、車種、ギアタイプなど)を含む設定データ、過去に行ったゲームの結果(順位やタイム)やゲームの結果に応じて決定されるクラスなどを含む成績(履歴)データ、またゲーム処理中のユーザによるアクセル/ブレーキ/クラッチペダル、ハンドル、レバーなどに対する時系列の操作データなどを含むことができる。
【0026】
管理サーバ18は、データベース20において、ゲーム機16を利用する一般のプレーヤのユーザデータだけでなく、クライアント装置24の制御によりゲームに参加したクライアントプレーヤに関するユーザデータも同様にして管理しているものとする。
【0027】
図3は、クライアント装置24において記録された、クライアントプレーヤを管理するためのプレーヤ管理データの一例を示している。
クライアント装置24は、複数の中継サーバ10において実行されるゲームに対して、ゲーム機16を通じてプレーヤからのエントリが足りない場合に、一般のプレーヤの替わりとなるクライアントプレーヤを提供する。クライアント装置24は、複数のクライアントプレーヤA,B,C,…を提供することができ、各クライアントプレーヤA,B,C,…をプレーヤ管理データにより管理する。
【0028】
プレーヤ管理データでは、各クライアントプレーヤA,B,C,…のそれぞれに対応して、ゲーム中においてクライアントプレーヤを制御するためのクライアント制御パラメータや、管理サーバ18のデータベース20において記録されたユーザデータの一部(例えば、クラスや名前など)が設定される。
【0029】
図4は、図3に示すプレーヤ管理データ中のクライアントプレーヤ制御パラメータの一例を示す図である。
図4に示すように、クライアントプレーヤ制御パラメータには、例えば設定データ、走行パラメータ、チャット管理パラメータなどのデータ、戦歴データ(図示せず)などが含まれている。
【0030】
設定データは、レースゲーム中で使用する車についての設定内容、例えばメーカー、車種、ギアタイプ、カラーリング、エアロパーツなど)を示す各種データを含む。
【0031】
走行パラメータは、ゲーム中の車の動きを制御するためのもので、クライアントプレーヤの個性を表すデータである。例えば、ライン取りに関するデータでは、コース上の基本的な走行ラインを設定して、得意なコーナーや苦手なコーナーなどを作り、走行時に特徴が表れるようにする。その他、コース上における勝負をかけるポイント、ブレーキングポイント、オーバーテイクされそうな時のブロックの仕方など、各種の設定対象が含まれている。
【0032】
チャット管理パラメータは、中継サーバ10のメッセージ交換機能(チャット機能)により、他のゲーム機16に対して送信するメッセージ(ここではテキストデータ)に関するデータである。ここでは、チャットに使用される文章(テキストデータ)、チャット(メッセージ)を出す頻度やタイミング(例えば、ゲーム開始前、終了後、トップになった時)などを示すデータが用意されている。例えば、ゲーム開始前に他のプレーヤと挨拶するための、クライアントプレーヤに設定される個性に合わせた口調や内容のメッセージが用意されている。
【0033】
チャット管理パラメータには、ゲーム開始前の他、ゲーム中の各種場面に応じたメッセージデータが用意されており、他のプレーヤから受信したメッセージに対して、対応するメッセージデータが選択されて使用されるものとする。
【0034】
なお、本実施形態では、プレーヤ間でチャットを行うものとしているが、他のメッセージデータ、例えば音声や映像などをメッセージデータを交換できるようにしても良い。この場合、チャット管理パラメータには、音声や映像などをメッセージデータに関するデータが設定されるものとする。
【0035】
次に、本実施形態におけるゲームシステムの動作について、フローチャートを参照しながら説明する。
図5は、中継サーバ10において実行されるゲーム制御処理を説明するフローチャート、図6は、クライアント装置24において実行されるクライアントプレーヤ制御処理を説明するフローチャートである。
【0036】
ゲームセンター14では、ゲーム機16を利用することによって、他のゲームセンター14のプレーヤを含むマルチプレーヤゲームに参加することができる。プレーヤは、ゲーム機16を利用する場合、例えば、ゲームセンター14においてゲーム機16を利用するために予め発行されたカギ(例えば、カード型、カギ型)に記録されたユーザ識別データをゲーム機16によって読み込ませる。ゲーム機16は、ユーザ識別データから既登録のプレーヤであることが判別された場合には、カギに記録されたデータを読み取り、過去の設定データを使用することができる。
【0037】
ゲーム機16は、プレーヤによりカーレースゲームの参加が指示されると、中継サーバ10に対してユーザ認識データが示すプレーヤについてのエントリ要求を送信する。中継サーバ10は、ゲームエントリ要求があると(ステップA1、Yes)、プレーヤをゲームにエントリし、エントリ要求元のゲーム機16においてエントリ画面を表示させる。エントリ画面には、例えばエントリされたプレーヤについてのデータとして、予め登録されている車のイメージやユーザ名(ニックネーム)やクラスなどを表示させる。エントリ画面に表示するデータは、カギにユーザ識別データと共に記録されたものを利用しても良いし、ユーザ識別データをもとに管理サーバ18に問い合わせて、データベース20から読み出された設定データを利用しても良い。
【0038】
中継サーバ10は、最初のプレーヤによるエントリ要求があってから時間の計測を開始する。この間に、他のゲーム機16からエントリ要求があった場合には、前述と同様にして、プレーヤをゲームにエントリして、エントリ済みのゲーム機16のエントリ画面に追加する(ステップA1〜A4)。なお、プレーヤをゲームにエントリさせる場合、例えばユーザに設定されているクラス(レベル)をもとにして、同じ程度のクラスのプレーヤを同一のゲームにマッチングさせる。これにより、同等程度の技術をもったプレーヤ同士でゲームをすることで白熱したゲームを期待でき、プレーヤに満足感を与えることができる。また、不特定にプレーヤを揃えたり、クラス以外の予め決められた条件に該当するプレーヤを揃えるようにしても良い。
【0039】
中継サーバ10は、予め決められた時間内にゲームに必要な人数のプレーヤが揃った場合(ステップA3、Yes)、エントリされた複数のプレーヤによるゲームを開始する(ステップA8)。
【0040】
一方、ゲームに必要な人数のプレーヤが揃う前に予め決められた時間が経過してしまうと(ステップA4、Yes)、中継サーバ10は、クライアント装置24に対してプレーヤの参加要求を送信する(ステップA5)。このプレーヤの参加要求では、例えばゲームに必要なプレーヤのクラスや人数を示すデータが含まれるものとする。
【0041】
クライアント装置24は、ゲーム機16からプレーヤの参加要求を受信すると、プレーヤ管理データにおいて管理されている複数のクライアントプレーヤから適当なクライアントプレーヤを選択する。例えば、エントリ中の他のプレーヤのクラスや過去の戦歴、現在の状況などに基づいて、プレーヤ管理データ(クライアントプレーヤ制御パラメータ)を参照して、適度な難易度で相手をすることができるクライアントプレーヤを選択する。
【0042】
クライアント装置24は、プレーヤの参加要求をした中継サーバ10に対して、ゲーム機16と同様のゲームエントリ要求を送信する(ステップB3)。
【0043】
図7には、中継サーバ10におけるゲームエントリの状況を示している。図7に示す例では、ゲームに必要なプレーヤが4人であるところ、ゲーム機16から一般のプレーヤによるエントリが3人だけであった場合を示している。この場合、中継サーバ10は、クライアント装置24に対して、一人分のプレーヤの参加を要求する。
【0044】
これに対して、クライアント装置24は、例えばエントリ済みのプレーヤのクラスに対応するクライアントプレーヤAを選択して、中継サーバ10に対してエントリ要求をする。
【0045】
図8には、中継サーバ10における別のゲームエントリの状況を示している。図8に示す例では、ゲームに必要なプレーヤが4人であるところ、ゲーム機16から一般のプレーヤによるエントリが2人だけであった場合を示している。この場合、中継サーバ10は、クライアント装置24に対して、二人分のプレーヤの参加を要求する。
【0046】
これに対して、クライアント装置24は、同様にして、例えばエントリ済みのプレーヤのクラスに対応する二人分のクライアントプレーヤA,Bを選択して、中継サーバ10に対してエントリ要求をする。
【0047】
従って、ゲームの実施に必要な人数のプレーヤがエントリされていない場合であっても、クライアント装置24がプレーヤに代替する適当なレベルのクライアントプレーヤを選択してエントリ要求することで、ゲームが可能な状態に移行させることができる。
【0048】
なお、図8においては、クライアント装置24は、1つの中継サーバ10において実行されるゲームに対して複数のクライアントプレーヤを提供する状況を示しているが、異なる複数の中継サーバ10に対して、それぞれ異なるクライアントプレーヤを提供することも可能である。
【0049】
中継サーバ10は、クライアント装置24からクライアントプレーヤのゲームエントリ要求を受信すると(ステップA6)、クライアントプレーヤをエントリし、エントリ済みのゲーム機16のエントリ画面に追加する(ステップA7)。エントリ画面では、クライアントプレーヤによるエントリを一般のプレーヤのエントリと全く同等に扱うことで、他のプレーヤに対して、クライアント装置24によって制御されるプレーヤであることを認識させない。
【0050】
中継サーバ10は、エントリされたプレーヤ及びクライアントプレーヤによるゲームを開始する。中継サーバ10は、ゲーム処理によって、各ゲーム機16からそれぞれの入力装置(ハンドル等)に対するプレーヤの操作に応じた操作データを受信し、この操作データに応じてゲーム空間中の車の走行を制御することでゲームを進行させる。
【0051】
一方、クライアント装置24は、ゲームにエントリさせた各クライアントプレーヤについて、それぞれに対応するクライアント制御パラメータに応じてゲーム中における動作を制御し、ゲーム機16と同様の操作データを中継サーバ10に対して送信する(ステップB7)クライアントプレーヤ制御パラメータは、クライアントプレーヤのそれぞれに対応して設定されているため、同じ制御プログラム(アルゴリズム)により動作が制御されるとしても、ゲーム空間中(コース上)における動作がクライアントパラメータ毎に異なる個性を持つ。従って、ゲーム機16を操作するプレーヤは、クライアント装置24(コンピュータ)によって制御されていることを認識することができない。
【0052】
図9には、ゲーム機16において表示されたゲーム画面の一例を示す図である。
図9において、「ZEED」の名前が付された車は、ゲーム機16のプレーヤによって操作されている。このゲーム画面では、クライアント装置24によって動作が制御されている「KOBA」の名前が付されている車が表示されている。この車は、クライアントプレーヤAのクライアント制御パラメータ(走行パラメータ)に基づいて動作が制御されており、他のプレーヤが制御している車と同様にして、他の車の動きに反応するように動作する。「ZEED」の車を操作しているプレーヤは、「KOBA」の車をコンピュータ制御ではなく、ゲーム機16において他のプレーヤが操作しているものとしてゲームを実行することになるので対戦意欲がかき立てられる
なお、本実施形態におけるゲームシステムでは、ゲームに参加するプレーヤ間でチャット、すなわちテキストデータによるメッセージの交換が可能である。
【0053】
中継サーバ10は、ゲーム機16あるいはクライアント装置24からチャットデータ(テキスト)を受信すると(ステップA9)、他のゲーム機16あるいはクライアント装置24に対してチャットデータを送信する(ステップA10)。クライアント装置24は、チャット管理パラメータに応じて、チャットデータを送信するタイミングとなった場合には(ステップB8、Yes)、このタイミングで送信するために予め用意されたチャットデータを中継サーバ10に対して送信する(ステップB9)。
【0054】
中継サーバ10は、クライアント装置24からチャットデータを受信すると(ステップA9、Yes)、このチャットデータを他のゲーム機16に送信する(ステップA10)。
【0055】
また、中継サーバ10は、ゲーム機16からチャットデータを受信した場合には、ゲーム機16だけでなくクライアント装置24に対してもチャットデータを送信する。
【0056】
クライアント装置24は、中継サーバ10からチャットデータを受信すると(ステップB5、Yes)、この受信したタイミングやチャットデータの内容に応じた、メッセージに対して応答するチャットデータを中継サーバ10に対して送信する。この応答するチャットデータは、前述したようにゲーム機16に対して送信されるため、ゲーム機16のプレーヤは、クライアントプレーヤが一般のプレーヤと認識することができる。
【0057】
なお、ゲーム機16から送信されるチャットデータ(メッセージ)に制約がない場合には、クライアント装置24によって適切な応答ができない場合がある。このため、例えばゲーム機16では、場面毎(ゲーム開始前など)に送信可能な複数のメッセージが予め用意しておき、その中から送信対象とするメッセージを任意に選択できるようにしておく。クライアント装置24では、ゲーム機16において予め用意されたメッセージに対する適切な応答となる複数のメッセージを用意しておき、クライアント制御パラメータが示す個性に対応するメッセージを選択して応答する。
【0058】
クライアント装置24は、中継サーバ10によるゲームが終了するまで、前述したように、クライアントプレーヤに対応する処理を実行する(ステップB10)。
【0059】
中継サーバ10は、ゲームが終了すると、クライアントプレーヤを含む各プレーヤについてのゲーム結果をゲーム機16において表示させると共に、クライアントプレーヤと一般のプレーヤについてのゲーム処理結果を管理サーバ18に送信する(ステップA12)。
【0060】
管理サーバ18は、中継サーバ10から受信したゲーム処理結果に応じて、データベース20に記録されている各プレーヤについてのデータを更新する。例えば、ゲーム成績によってはクラスを上げるといった処理を行う。管理サーバ18は、クライアントプレーヤについても一般のプレーヤと同様にして扱うため、その後のゲームにおいて、管理サーバ18に管理されたデータを引き継いでクライアントプレーヤを制御することで、このクライアントプレーヤが実際に存在するプレーヤと同様に認識させることができる。
【0061】
例えば、他のゲームにおいて同じ名前のクライアントプレーヤが参加してきた場合に、同じ個性をもった走りをしながら、クラスがアップしていれば以前より巧く走れるように制御されるため、実際に存在するプレーヤのように感じることができる。
【0062】
図10は、ゲーム終了後に表示されるゲーム結果を表す画面の一例である。
図10に示すように、ゲーム結果の画面では、レース順位に従って、プレーヤの名前が一覧表示されている。ここでは、クライアントプレーヤに対応する「KOBA」が、他の一般のプレーヤと同様の扱いによって表示されている。
【0063】
このようにして、本実施形態におけるゲームシステムでは、複数のプレーヤが参加して実行されるゲームにおいて、ゲームの実行に必要な人数が揃わなかった場合でも、クライアント装置24によってクライアントプレーヤを提供することができる。クライアントプレーヤは、クライアント制御パラメータに基づいて制御することで、一般のプレーヤと同様にして個性を持つように制御されるので、他のプレーヤによってコンピュータと対戦していると思わせずにゲームを楽しませることができる。また、中継サーバ10に設けられたメッセージ交換機能を通じて、ゲーム機16とクライアント装置24によってチャットを行うことができるので、よりクライアントプレーヤを実際のプレーヤであるかのように思われることが可能である。
【0064】
また、クライアント装置24を設けることで、常にゲームを成立させることができるので、エントリが少ない人気のないゲームと見えることを防ぐことが可能である。さらに、クライアント装置24は、ゲームにエントリしている他のプレーヤに合わせた適度なクライアントプレーヤを提供できるので、プレーヤに満足感を与えることができる。
【0065】
なお、前述した説明では、中継サーバ10及び管理サーバ18とは独立して設けたクライアント装置24によって、マルチプレーヤゲームに参加するクライアントプレーヤを制御するものとしているが、中継サーバ10あるいは管理サーバ18において、前述したクライアント装置24と同様の処理(クライアントプレーヤ制御処理)を実行することによって、クライアントプレーヤをゲームに参加させるようにしても良い。また、ゲーム機16の何れかにおいて、クライアント装置24と同様の処理を実行させるようにしても良い。この場合、クライアントプレーヤを制御するゲーム機16は1つに限らず、複数であっても良い。
【0066】
また、本実施形態においては、図1に示すように、中継サーバ10と管理サーバ18とクライアント装置24とが、それぞれ独立したコンピュータにより実現されものとして説明しているが、それぞれが実行する機能を備えたゲームシステムとして構成すれば、図1に示す構成に限定されるものではない。
【0067】
また、前述した説明では、ゲームセンター14に設置された業務用に構成されたゲーム機16を対象としているが、ネットワーク12を介して他の機器と接続することができる各種の装置において実現されたゲーム機を対象とすることができる。例えば、家庭用のゲーム専用機、携帯型のゲーム専用機、パーソナルコンピュータ、携帯電話機などを対象とすることが可能である。
【0068】
また、前述した説明では、ゲームエントリ要求するプレーヤが必要人数分揃わなかった場合に、クライアント装置24により制御されるクライアントプレーヤをゲームに参加させるものとしているが、その他の条件に応じてクライアントプレーヤをゲームに参加させるようにしても良い。例えば、ゲームエントリした一般のプレーヤの数に関係なく、予め決められた数のクライアントプレーヤをゲームに参加させたり、過去のゲームでクライアントプレーヤと対戦したことがあるプレーヤがエントリしてきた場合に、同じクライアントプレーヤをゲームに参加させたりすることができる。同じクライアントプレーヤと対戦させる場合には、ゲームで対戦したプレーヤについて、例えば管理サーバ18のデータベース20に履歴として記録しておく。そして、中継サーバ10は、ゲームエントリしたプレーヤについての過去の対戦プレーヤを管理サーバ18に問い合わせて、これに応じてクライアント装置24に該当するクライアントプレーヤの参加要求をすれば良い。
【0069】
また、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【0070】
また、実施形態に記載した手法は、コンピュータに実行させることができるプログラム(ソフトウエア手段)として、例えば磁気ディスク(フレキシブルディスク、ハードディスク等)、光ディスク(CD−ROM、DVD、MO等)、半導体メモリ(ROM、RAM、フラッシュメモリ等)等の記録媒体に格納し、また通信媒体により伝送して頒布することもできる。なお、媒体側に格納されるプログラムには、コンピュータに実行させるソフトウエア手段(実行プログラムのみならずテーブルやデータ構造も含む)をコンピュータ内に構成させる設定プログラムをも含む。本装置を実現するコンピュータは、記録媒体に記録されたプログラムを読み込み、また場合により設定プログラムによりソフトウエア手段を構築し、このソフトウエア手段によって動作が制御されることにより上述した処理を実行する。なお、本明細書でいう記録媒体は、頒布用に限らず、コンピュータ内部あるいはネットワークを介して接続される機器に設けられた磁気ディスクや半導体メモリ等の記憶媒体を含むものである。
【符号の説明】
【0071】
10(10−1,10−2,10−n)…中継サーバ、12…ネットワーク、14(14−1,14−2,14−m)…ゲームセンター、16…ゲーム機、18…管理サーバ、20…データベース、24…クライアント装置、26…インターネット、28…PC。

【特許請求の範囲】
【請求項1】
複数のプレーヤが参加するゲームを制御するゲームシステムにおいて、
複数のゲーム機から送信されたプレーヤによるゲームへのエントリ要求を受信する参加要求受信手段と、
前記エントリ要求受信手段により受信されたエントリ要求により、ゲームの実行に必要なプレーヤが揃っているかを判別する判別手段と、
前記判別手段によりゲームの実行に必要なプレーヤが揃っていないと判別された場合に、コンピュータにより制御される仮想プレーヤの参加要求を送信する参加要求送信手段と、
前記ゲーム参加要求送信手段により送信された参加要求に対して、前記仮想プレーヤによるゲームへのエントリ要求を送信するゲームエントリ要求送信手段と、
前記ゲームエントリ要求送信手段により送信したエントリ要求に応じた前記仮想プレーヤを制御してゲーム用のデータを出力するプレーヤ制御手段と、
前記ゲーム機から入力されるデータと前記プレーヤ制御手段の制御により入力されるデータとに基づいて、前記プレーヤと前記仮想プレーヤとが参加するゲームを実行するゲーム制御処理手段と
を具備したことを特徴とするゲームシステム。
【請求項2】
前記仮想プレーヤを制御するための制御データを記録する記録手段と、
前記ゲーム制御処理手段により実行されたゲーム処理の結果に応じて、前記記録手段により記録された制御データを更新するデータ更新手段とを有し、
前記プレーヤ制御手段は、前記仮想プレーヤがゲームに参加する場合に、前記記録手段に記録された制御データをもとに前記仮想プレーヤを制御して、ゲーム用のデータを出力することを特徴とする請求項1記載のゲームシステム。
【請求項3】
前記プレーヤ制御手段は、前記エントリ要求に応じた複数の前記仮想プレーヤを制御し、
前記記録手段は、複数の前記仮想プレーヤのそれぞれに対応する制御データを記録することを特徴とする請求項2記載のゲームシステム。
【請求項4】
前記判別手段は、予め決められた時間内に、ゲームの実行に必要なプレーヤの人数が揃っているかを判別し、
前記参加要求送信手段は、前記判別手段によりゲームの実行に必要な人数のプレーヤが揃っていないと判別された場合に、不足しているプレーヤの人数分の仮想プレーヤの参加要求を送信することを特徴とする請求項1記載のゲームシステム。
【請求項5】
前記複数のプレーヤが利用する複数のゲーム機と、前記プレーヤ制御手段により前記仮想プレーヤが制御されるクライアント装置とが、前記ゲーム制御処理手段によりゲームが実行されるサーバとネットワークを介して接続され、
前記クライアント装置は、前記プレーヤ制御手段による前記仮想プレーヤの制御に応じて、前記ゲーム用のデータを前記サーバに送信することを特徴とする請求項1記載のゲームシステム。
【請求項6】
前記ゲーム制御処理手段は、複数の前記サーバ装置において、それぞれ独立したゲームを実行し、
前記プレーヤ制御手段は、前記クライアント装置において、複数の前記サーバ装置において実行されるゲームに対する前記仮想プレーヤを制御することを特徴とする請求項5記載のゲームシステム。
【請求項7】
前記ゲーム装置と前記クライアント装置との間でメッセージデータを送受信させるメッセージ交換手段をさらに具備し、
前記クライアント装置は、前記制御データに応じて決定されるメッセージデータを、前記メッセージ交換手段によって前記ゲーム装置に対して送信することを特徴とする請求項5記載のゲームシステム。
【請求項8】
コンピュータを、
複数のゲーム機から送信されたプレーヤによるゲームへのエントリ要求を受信する参加要求受信手段と、
前記エントリ要求受信手段により受信されたエントリ要求により、ゲームの実行に必要なプレーヤが揃っているかを判別する判別手段と、
前記判別手段によりゲームの実行に必要なプレーヤが揃っていないと判別された場合に、コンピュータにより制御される仮想プレーヤの参加要求を送信する参加要求送信手段と、
前記ゲーム参加要求送信手段により送信された参加要求に対して、前記仮想プレーヤによるゲームへのエントリ要求を送信するゲームエントリ要求送信手段と、
前記ゲームエントリ要求送信手段により送信したエントリ要求に応じた前記仮想プレーヤを制御してゲーム用のデータを出力するプレーヤ制御手段と、
前記ゲーム機から入力されるデータと前記プレーヤ制御手段の制御により入力されるデータとに基づいて、前記プレーヤと前記仮想プレーヤとが参加するゲームを実行するゲーム制御処理手段として機能させるためのプログラム。

【図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