説明

ゲームシステム

【課題】ゲーム端末間でのゲームデータの整合性を保証しつつゲームを進行させることが可能なゲームシステムを提供する。
【解決手段】親機のゲーム端末がクイズデータの問題IDを選択すると、その問題IDが各ゲーム端末に通知され、親機及び子機のそれぞれにて、自らの記憶装置に記録されている問題IDに対応したハッシュ値が演算され、子機のハッシュ値が親機に提供され、親機では自らが演算したハッシュ値と各子機から提供されたハッシュ値とが照合されてゲームデータの整合性が判別され、全てのゲーム端末間でハッシュ値が一致すれば、問題IDに対応するクイズデータに基づく出題が許可され、ハッシュ値が一致しない場合には問題IDに対応するクイズデータの使用が阻止される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数のゲーム端末間で共通のゲームデータを使用してゲームを進行させるゲームシステムに関する。
【背景技術】
【0002】
ネットワークを介して接続された複数のゲーム端末間でクイズの正解率等を競うゲームシステムとして、マッチングされ、グループ化されたゲーム端末のいずれか一つのゲーム端末が親機として、他のゲーム端末が子機として設定され、親機がクイズの問題を選択してその問題IDを子機に通知し、親機及び子機のそれぞれが、選択された問題IDに対応したクイズデータを参照してプレイヤにクイズを出題し、プレイヤの解答を親機に集約し、親機から子機に通知することにより、プレイヤの回答状況をゲーム端末間で共有する多人数参加型のクイズゲームシステムが知られている(例えば特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2008−178442号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
上述した従来のゲームシステムでは、ゲーム端末のそれぞれにクイズデータが保持されているので、一部のゲーム端末のクイズデータが更新され、他のゲーム端末のクイズデータが未更新といったように、ゲーム端末間でクイズデータが不整合な状態にある場合には、ゲームに参加している全てのプレイヤに共通の問題が出題されるという前提が崩れ、ゲームの進行、あるいは結果の処理に支障が生じる。
【0005】
そこで、本発明はゲーム端末間でのゲームデータの整合性を保証しつつゲームを進行させることが可能なゲームシステム等を提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明のゲームシステムは、ネットーワーク(5)を介して相互に接続された複数のゲーム端末(2)の一つ、又は前記複数のゲーム端末のそれぞれと前記ネットワークを介して接続されたサーバ(3)が親機に、該親機以外のゲーム端末が子機にそれぞれ設定された状態で、前記親機からの指示に従って前記複数のゲーム端末間でゲームを進行させるゲーム制御手段(10)が前記複数のゲーム端末のそれぞれに設けられたゲームシステム(1)であって、前記親機及び前記子機のそれぞれには、前記ゲームで選択的に使用される複数のゲームデータ(Qd)を記憶する記憶装置(13)と、自らの記憶装置が保持している前記複数のゲームデータのそれぞれを所定の関数に入力して求められるゲームデータ毎のユニークな照合情報を取得する照合情報取得手段(16)とが設けられ、前記親機には、前記ゲームにて前記複数のゲーム端末間で共通に使用されるべきゲームデータを前記複数のゲームデータから選択してその選択結果を識別する選択情報を前記複数のゲーム端末のそれぞれに通知するデータ選択手段(S101、S102;S301、S302)が設けられ、前記親機及び前記子機の少なくともいずれか一つが照合実行装置として、他が照合依頼装置としてそれぞれ設定され、前記照合依頼装置には、該照合依頼装置の記憶装置が保持している前記選択情報に対応したゲームデータの照合情報を前記照合情報取得手段によって取得し、その取得した照合情報を前記照合実行装置に提供する照合情報提供手段(S201〜S203;S303、S304)が設けられ、前記照合実行装置には、前記照合実行装置の記憶装置が保持している前記選択情報に対応したゲームデータの照合情報を自らの照合情報取得手段によって取得し、取得した照合情報と前記照合依頼装置から提供された照合情報とを照合して前記ゲームデータの整合性を判別する照合手段(S103〜S105;S401〜S405)と、が設けられ、前記親機には、前記照合手段による照合結果に基づいて、全てのゲーム端末間で前記選択情報に対応するゲームデータが一致するか否かを判別し、一致する場合には、前記複数のゲーム端末のそれぞれのゲーム制御手段に対して、前記選択情報に対応したゲームデータの使用を許可し、一致しない場合には当該選択情報に対応したゲームデータの使用を阻止する管理手段(S106〜S109;S305〜S309)が設けられているものである。
【0007】
本発明のゲームシステムにおいては、親機のデータ選択手段がデータを選択すると、その選択情報が各ゲーム端末に通知される。親機及び子機のそれぞれでは、自らの記憶装置に記録されている選択情報に対応したゲームデータに基づいて照合情報が取得され、照合依頼装置から照合実行装置に照合情報が提供される。照合実行装置では、自らのゲームデータに対応する照合情報と照合依頼装置から提供された照合情報とが照合されてゲームデータの整合性が判別される。その判別結果に基づいて、全てのゲーム端末間で選択情報に対応するゲームデータが一致するか否かが判別され、一致すると判別された場合にその選択情報に対応するゲームデータが複数のゲーム端末間で共通に使用されてゲームが進行する。選択情報に対応するゲームデータがゲーム端末間で一致しない場合にはそのゲームデータの使用が阻止される。したがって、ゲームデータの整合性を保証しつつゲームを進行させることが可能となる。
【0008】
本発明のゲームシステムの一形態においては、いずれか一つのゲーム端末が前記親機に、他のゲーム端末が前記子機にそれぞれ設定され、前記親機が前記照合実行装置として、前記子機が前記照合依頼装置としてそれぞれ設定されてもよい。この場合には、子機にて取得された照合情報が親機に収集され、その親機が自らのゲームデータに基づいて取得した照合情報と各子機から提供された照合情報とを照合して、全てのゲーム端末間でゲームデータが一致するか否かを判別する。
【0009】
本発明のゲームシステムの一形態においては、いずれか一つのゲーム端末が前記親機に、他のゲーム端末が前記子機にそれぞれ設定され、前記親機が前記照合依頼装置として、前記子機が前記照合実行装置としてそれぞれ設定されてもよい。この場合には、親機にて取得された照合情報が子機に提供され、その子機が自らのゲームデータに基づいて取得した照合情報と親機から提供された照合情報とを照合する。そして、親機が照合結果に基づいてゲームデータの使用を許可すべきか否かを制御する。
【0010】
本発明のゲームシステムにおいて、前記照合情報がハッシュ値であってもよい。ゲームデータが異なっても同一のハッシュ値が演算される確率は極めて小さいため、ゲームデータからハッシュ値を演算して照合に利用すれば、ゲームデータ間での整合性を正しく判別することができる。
【0011】
本発明のゲームシステムの一形態において、前記ゲームデータは、前記複数のゲーム端末のそれぞれのプレイヤに対して提示すべき情報をゲームデータ毎にユニークなIDと対応付けて記述した構成を有し、前記データ選択手段は前記IDを前記選択情報として前記複数のゲーム端末のそれぞれに通知し、前記複数のゲーム端末のそれぞれのゲーム制御手段は、前記管理手段によって使用が許可されたゲームデータに記述された情報をゲーム端末間で共通してプレイヤに提示することにより前記ゲームを進行させるものとしてもよい。本形態によれば、複数のゲーム端末のそれぞれでプレイヤに提示される情報を一致させ、当該情報が一致していることを前提としてゲームの進行を制御することができる。
【0012】
さらに、前記ゲームデータが、クイズの問題と解答とをゲームデータ毎にユニークなIDと対応付けて記述したクイズデータとして構成され、前記複数のゲーム端末のそれぞれのゲーム制御手段は、前記管理手段によって使用が許可されたクイズデータの問題を前記情報としてゲーム端末間で共通してプレイヤに提示してその解答を要求することにより前記ゲームを進行させてもよい。これによれば、全てのゲーム端末で同一の問題をプレイヤに対して確実に提示することができる。
【0013】
本発明のコンピュータプログラムは、ネットーワーク(5)を介して相互に接続された複数のゲーム端末(2)の一つが親機に、該親機以外のゲーム端末が子機にそれぞれ設定された状態で、前記親機からの指示に従って前記複数のゲーム端末間でゲームを進行させるコンピュータとしてのゲーム制御手段(10)、及び前記ゲームで選択的に使用される複数のゲームデータ(Qd)を記憶する記憶装置(13)が前記複数のゲーム端末のそれぞれに設けられたゲームシステム(1)に適用されるコンピュータプログラム(101)であって、前記コンピュータを、自らの記憶装置が保持している前記複数のゲームデータのそれぞれを所定の関数に入力して求められるゲームデータ毎にユニークな照合情報を取得する照合情報取得手段(16)、前記ゲームにて前記複数のゲーム端末間で共通に使用されるべきゲームデータを前記複数のゲームデータから選択してその選択結果を識別する選択情報を前記複数のゲーム端末のそれぞれに通知するデータ選択手段(S101、S102;S301、S302)、自らのゲーム端末の記憶装置が保持している前記選択情報に対応したゲームデータの照合情報を前記照合情報取得手段によって取得し、その取得した照合情報を他のゲーム端末にに提供する照合情報提供手段(S201〜S203;S303、S304)、自らのゲーム端末の記憶装置が保持している前記選択情報に対応したゲームデータの照合情報を自らの照合情報取得手段によって取得し、取得した照合情報と他のゲーム端末から提供された照合情報とを照合して前記ゲームデータの整合性を判別する照合手段(S103〜S105;S401〜S405)、及び、前記照合手段による照合結果に基づいて、全てのゲーム端末間で前記選択情報に対応するゲームデータが一致するか否かを判別し、一致する場合には、前記複数のゲーム端末のそれぞれのゲーム制御手段に対して、前記選択情報に対応したゲームデータの使用を許可し、一致しない場合には当該選択情報に対応したゲームデータの使用を阻止する管理手段(S106〜S109;S305〜S309)、として機能させるように構成されたものである。
【0014】
本発明のコンピュータプログラムをゲーム端末のコンピュータにて実行することにより、各ゲーム端末が親機又は子機のいずれに設定された場合でも、それらのゲーム端末のコンピュータを本発明のゲームシステムにおける照合依頼装置又は照合実行装置のいずれかとして機能させてゲーム端末間でのゲームデータの整合性を判別し、それによりゲームデータの整合性を保証しつつゲームを進行させることができる。
【0015】
なお、以上の説明では本発明の理解を容易にするために添付図面の参照符号を括弧書きにて付記したが、それにより本発明が図示の形態に限定されるものではない。
【発明の効果】
【0016】
以上に説明したように、本発明によれば、ゲーム端末間で共通に使用されるべきゲームデータが選択されると、その選択されたゲームデータの照合情報を親機及び子機のそれぞれで取得してそれらの照合情報を照合し、その照合結果に基づいて全てのゲーム端末間で選択情報に対応するゲームデータが一致するか否かを判別し、一致すると判別された場合にその選択情報に対応するゲームデータの使用を許可し、一致しない場合にはそのゲームデータの使用を阻止するため、ゲームデータの整合性を保証しつつゲームを進行させることが可能となり、それによりゲームデータの不整合に由来する不都合を排除することができる。
【図面の簡単な説明】
【0017】
【図1】本発明の一形態に係るゲームシステムの全体構成を示す図。
【図2】ゲームゲームの基本的な内容を示す図。
【図3】協力プレイモードにおけるゲーム画面の一例を示す図。
【図4】協力プレイモードにおけるゲーム画面の他の例を示す図。
【図5】本発明の一形態に係るゲーム端末の機能ブロック図。
【図6】クイズデータテーブルの構造を示す図。
【図7】クイズデータの整合性を確認する処理の概要を示す図。
【図8】図7の処理を実現するためにゲーム端末の制御ユニットが実行する出題制御ルーチンを示すフローチャート。
【図9】本発明の他の形態に係るゲーム端末の機能ブロック図。
【図10】クイズデータの整合性を確認する処理の他の形態を示す図。
【図11】図7の処理を実現するためにゲーム端末の制御ユニットが実行する出題制御ルーチンを示すフローチャート。
【発明を実施するための形態】
【0018】
[第1の形態]
本発明の一形態に係るゲームシステムを図1に示す。そのゲームシステム1においては、複数のゲーム機(ゲーム端末に相当する。)2と、センターサーバ3とがルータ4を介してネットワーク5にそれぞれ接続されている。センターサーバ3は一台の物理的装置によって構成される例に限らず、複数の物理的装置としてのサーバ群によって一台の論理的なセンターサーバ3が構成されてもよい。さらには、一台のゲーム機2がセンターサーバ3として兼用されてもよい。ネットワーク5は、TCP/IPプロトコルを利用してネットワーク通信を実現するもので、典型的にはインターネットがネットワーク5として使用される。各ゲーム機2は、ゲームの対価としてプレイ料金を徴収する業務用又は商用のゲーム端末として構成されている。ゲーム機2は、店舗6等の商業施設に適当な台数ずつ設置される。ルータ4は各店舗6及びセンターサーバ3に対応付けて設置され、同一店舗のゲーム機2は共通のルータ4を介してネットワーク5に接続されている。ゲーム機2と店舗6のルータ4との間にローカルサーバが設置され、そのローカルサーバを介してゲーム機2がセンターサーバ3と通信可能に接続されてもよい。
【0019】
センターサーバ3は、ゲームシステム1の運営者によって設置され、ネットワーク5を介した各種のサービスを、ゲーム機2又はそのゲーム機2のユーザ(プレイヤ)に対して提供する。一例として、センターサーバ3は、ゲーム機2を介したゲームプログラムあるいはデータの更新サービス、ゲーム機2のユーザを認証し、そのユーザのプレイ履歴、セーブデータ等を含んだプレイデータをセンターサーバ3上に保管するサービス、ネットワーク5を介してユーザ同士が対戦し、あるいは協力してゲームを進める際のユーザ間のマッチングサービス等を提供する。
【0020】
ゲーム機2及びセンターサーバ3には、ネットワーク5上でそれぞれを識別するためのユニークなIPアドレスが付されている。ゲーム機2同士あるいはゲーム機2とセンターサーバ3との間の通信では、そのIPアドレスを利用して通信相手が特定される。ネットワーク5がインターネットのように公開性のあるネットワークの場合には、各ルータ4にネットワーク5上でユニークな固定アドレスが設定される。ゲーム機2には、その固定アドレスとの組み合わせによってネットワーク5上でゲーム機2を一意に識別するためのプライベートアドレスがIPアドレスとして設定される。この場合、ゲーム機2とセンターサーバ3との間、あるいはゲーム機2同士の間には仮想プライベートネットワーク(VPN)が構築され、そのVPN上で各ゲーム機2がプライベートアドレスを用いて一意に特定される。
【0021】
図2は、ゲームシステム1で実行されるクイズゲームの基本的な内容を示す。この例では、センターサーバ3によってN台のゲーム機2がマッチングされ、グループ化されると、それらのゲーム機2のうち、一台が親機Aとして、他のゲーム機2が子機B、C、…Nとしてそれぞれ設定されて、ゲーム機2間でのネットワーク接続が構築される。ゲーム2機には、予めクイズの問題と解答とを問題IDと対応付けて記録した複数のクイズデータが与えられている。クイズゲームで使用されるべきクイズデータが親機2によって選択され、選択されたクイズデータの問題IDが子機B、C、…Nに与えられる。親機A及び子機B、C、…Nは、問題IDに対応するクイズデータを参照して出題すべき問題を特定し、その問題をプレイヤA、B、C、…Nに提示して解答を求める。プレイヤA、B、C、…Nが解答すると、親機A及び子機B、C、…Nのそれぞれで解答の正否が判定され、子機B、C、…Nの正否判定の結果が親機Aに送られる。正否判定の結果に代えて、又は加えて、子機B、C、…Nから親機Aに解答そのものが符号化されて送信される場合もある。これにより、問題に対する各プレイヤの解答状況を親機Aに集約し、正解率の計算、あるいは各プレイヤの解答内容の共有といった処理が可能とされる。所定数の問題が順次出題され、解答の正否がプレイヤ毎に集計されることにより、プレイヤ毎の成績(正解率など)が競われる。さらに、ゲームシステム1では、一つの問題に対して複数のプレイヤが協力して解答を完成させ、あるいは、解答が複数存在する問題を全てのプレイヤに共通して出題して解答の一致性を競うといったプレイヤの協力をゲームの要素に加えた協力プレイも可能とされる。前者の場合のゲーム画面の一例を図3に、後者の場合のゲーム画面の一例を図4にそれぞれ示す。図3の例では、アルファベット4文字(一例として「CAKE」)が正解となる問題が出題され、4人のプレイヤのそれぞれには4文字のうち、いずれか一文字を解答することが求められる。図3では、プレイヤAが「C」、プレイヤBが「A」、プレイヤCが「K」、プレイヤDが「E」の文字をそれぞれ解答として入力した状態を示している。解答が完成した場合に4人のプレイヤに得点が付与される。図4の例では、同一の解答が多いほど4人のプレイヤに与えられる得点が高くなる。図4では、プレイヤA、B、Cが「アメリカ」を、プレイヤDが「ロシア」をそれぞれ解答として入力した状態を示しており、この場合には、3人のプレイヤの解答が一致した場合の得点がプレイヤA〜Dに付与される。
【0022】
次に、図5を参照して、上述したクイズゲームを実現するためのゲーム機2の構成を説明する。なお、各ゲーム機2はいずれも共通した構成を有しているが、親機又は子機のいずれとして機能するかによって論理的な構成が異なるため、図5では親機の場合と子機(一台のみ代表して示す。)の場合とを併記している。図5に示すように、各ゲーム機2には制御ユニット10が設けられている。制御ユニット10は、マイクロプロセッサと、そのマイクロプロセッサにて実行されるべきオペレーティングシステム等のプログラムが記録されたROM、及びマイクロプロセッサに対する作業領域を提供するRAM等の内部記憶装置(不図示)とを備えたコンピュータユニットである。
【0023】
制御ユニット10には、入力装置11、表示装置12、及び記憶装置13が接続されている。入力装置11は、プレイヤの操作を受け付け、その操作内容に応じた信号を制御ユニット10に出力する。任意の文字列、あるいは数値による解答を可能とするため、入力装置11はキーボード、手書きタブレット装置といった文字及び数値の入力が可能な入力手段を含んでいる。表示装置12は、制御ユニット10からの指示に従ってゲーム画面等を表示する。記憶装置13は、例えばROM、ハードディスク記憶装置のように記憶保持が可能な不揮発性の記憶媒体と、RAMのように制御ユニット10に一時的な作業領域を提供する半導体メモリとを適宜に組み合わせて構成される。記憶装置13は、制御ユニット10にて実行されるべきゲームプログラム101及びそのプログラム101が参照するクイズデータテーブル102等の各種のデータを記憶する。
【0024】
図6に示したように、クイズデータテーブル102は、複数のクイズデータ(ゲームデータに相当する。)Qdの集合として構成されている。一つのクイズデータQdは、クイズの一問の問題及び解答の内容をデータQd毎にユニークな問題IDと対応付けて記述したデータ構造を有している。問題及び解答は、文字列、画像等を適宜に組み合わせて構成されてよい。また、解答内容のデータQdには解答とともに表示される解答選択肢も含まれている。図示を省略したが、クイズデータQdには、問題を選択する際の情報として、問題のジャンル、難易度等を指定する情報が含まれてもよい。
【0025】
親機としてのゲーム機2では、ゲームプログラム101を制御ユニット10が読み取って実行することにより、制御ユニット10の内部に、論理的装置としての出題選択部15、ハッシュ値演算部16、及び照合部17が生成される。出題選択部15は、選択条件の付与に応答して、クイズで使用すべきクイズデータをクイズデータテーブル102から選択し、選択されたクイズデータQdの問題IDを出力する。その出題選択部15にて選択されたクイズデータQdの問題IDが子機としてのゲーム機2に与えられることにより、全てのゲーム機2で共通のクイズデータQdが選択されてプレイヤに同一の問題が出題される。
【0026】
しかしながら、一部のゲーム機2のクイズデータQdが更新され、他のゲーム機2のクイズデータQdが未更新の場合等には、ゲーム機2間で問題IDが一致しても問題及び解答が異なることがある。そのようなクイズデータQdの不整合を防止するためにハッシュ値演算部16及び照合部17が設けられている。ハッシュ値演算部16は、クイズデータQdを所定のハッシュ関数に入力してハッシュ値を演算し、その演算結果を出力する。ハッシュ値は、電子データの整合性を検証するために所定のアルゴリズムに従って演算される固定長の数値列である。入力される電子データが異なるにも関わらず同一のハッシュ値が得られる確率は極めて小さいため、そのハッシュ値は、実質的にクイズデータQd毎にユニークに演算される照合情報として取り扱うことができる。照合部17は与えられた2つのハッシュ値を照合して、その照合結果を出力する。一方、子機としてのゲーム機2では、出題選択部15及び照合部17が省略され、ハッシュ値演算部16が制御ユニット10の内部に論理的装置として生成される。なお、図示した論理的装置以外にも制御ユニット10には各種の論理的装置が生成されるが、それらの図示は省略した。
【0027】
センターサーバ3にてマッチングされたゲーム機2間で親機及び子機が決定されてクイズゲームを開始するための環境が整えられると、各ゲーム機2の制御ユニット10は、ゲームを進行させるためのゲーム進行制御手段として機能し、それにより、親機の制御ユニット10からの指示に従って所定の手順でクイズゲームが開始される。マッチングの手順及びクイズゲームの基本的な進行の制御は、公知の多人数参加型のクイズゲームシステムのそれと同様でよく、ここでは説明を省略する。本形態のゲームシステム1は、一問のクイズを出題する時に、親機及び子機の間でクイズデータQdの整合性を確認する処理が行われる点に特徴を有している。以下、クイズデータQdの整合性の確認に関する処理を中心に説明を続ける。
【0028】
図7は、クイズデータQdの整合性を確認するために親機及び子機のゲーム機2間で行われる処理の概要を示している。まず、親機の出題選択部15にて問題IDが選択されると、親機では自らが保持するクイズデータテーブル102内の問題IDに対応したクイズデータQdがハッシュ値演算部16に与えられ、そのクイズデータQdに対応するハッシュ値が演算される。問題IDは、選択情報として全ての子機にも並行して与えられる。各子機でも、自らが保持するクイズデータテーブル102から問題IDに対応したクイズデータQdが特定され、そのクイズデータQdがハッシュ値演算部16に与えられてクイズデータQdに対応するハッシュ値が演算される。子機にて演算されたハッシュ値は親機に送られる。親機では、照合部17にて、自らが演算したハッシュ値と、各子機から送られたハッシュ値とが照合される。全てのハッシュ値が一致する場合には、問題IDに対応するクイズデータQdが整合していることになる。この場合、親機から各子機に対して出題が許可され、親機及び子機では問題IDに対応するクイズデータQdの問題が出題される。一方、少なくとも一つのハッシュ値が一致しなかった場合には、ゲーム機2間でのクイズデータQdの整合性が確保されていないため、問題IDが破棄されて出題選択部15で新たな問題IDが選択される。
【0029】
図8は、上述した処理を実現するために親機及び子機のそれぞれのゲーム機2の制御ユニット10が実行する出題制御ルーチンを示している。それらのルーチンは、クイズゲームにて一問のクイズを出題する時に、その出題に先立って実行される。まず、親機の制御ユニット10は、ステップS101にて出題選択部15を利用して問題を選択し、続くステップS102で問題IDを子機のゲーム機2に送信する。次のステップS103で、親機の制御ユニット10は、選択された問題IDにて特定されるクイズデータQdをハッシュ値演算部16に与えてハッシュ値を演算する。その後、親機の制御ユニット10はステップS104に進み、子機からハッシュ値を取得する。
【0030】
一方、各子機の制御ユニット10は、ステップS201にて、親機から送信される問題IDを取得する。続くステップS202にて、子機の制御ユニット10は、問題IDに対応するクイズデータQdを、自機の記憶装置13に記録されているクイズデータテーブル102から取得し、そのデータQdをハッシュ値演算部16に与えてハッシュ値を演算する。その後、各子機の制御ユニット10はステップS203に進み、演算されたハッシュ値を親機のゲーム機2に送信する。
【0031】
ステップS104にて全ての子機からハッシュ値を取得すると、親機の制御ユニット10はステップS105に進み、照合部17を利用して、自ら演算したハッシュ値を各子機で演算されたハッシュ値と照合する。続くステップS106にて、親機の制御ユニット10は、全てのハッシュ値が一致したか否かを判別する。全てのハッシュ値が一致している場合、親機の制御ユニット10はステップS107に進んで出題許可を全ての子機に通知する。続くステップS108にて、親機の制御ユニット10は自機に対しても出題を許可し、これにより出題制御ルーチンを終える。一方、ステップS106にて、少なくとも一つのハッシュ値が他のハッシュ値と一致しなかった場合、親機の制御ユニット10はステップS109に進んで各子機に出題不可であることを通知し、その後、ステップS101に戻って新たな問題を選択する。
【0032】
ステップS107又はステップS109で出題許可又は不可が照合判定の結果として通知されると、子機の制御ユニット10は、ステップS204でその通知内容を取得し、続くステップS205で出題許可が通知されたか否かを判別する。出題不可が通知されている場合、子機の制御ユニット10は先に通知されていた問題IDを破棄してステップS201に戻り、新たな問題IDの通知を待つ。ステップS205で出題許可が通知されている場合、子機の制御ユニット10はステップS206に進み、自機に対して出題を許可し、その後、出題制御ルーチンを終える。
【0033】
以上の処理により、各ゲーム機2に対して共通の問題IDが与えられ、各ゲーム機2が自機の記憶装置13に保持されている問題IDに対応したクイズデータQdのハッシュ値を演算し、その演算された全てのハッシュ値が一致した場合に限って、問題IDに対応したクイズデータQdに基づく出題が許可される。そして、出題が許可されると、各ゲーム機2にて問題IDに対応するクイズデータQdの問題が出題され、その出題に対する解答の正否又は解答それ自体が親機としてのゲーム機2に収集されて所定の解答処理が行われる。したがって、ゲーム機2間におけるクイズデータQdの整合性を確保しつつクイズゲームを進めることが可能となる。
【0034】
以上の形態では、制御ユニット10がゲーム制御手段に相当し、その内部に生成される論理的装置としてのハッシュ値演算部16が照合情報取得手段に相当する。また、親機としてのゲーム機2が照合実行装置に、子機としてのゲーム機2が照合依頼装置にそれぞれ相当する。そして、親機としてのゲーム機2の制御ユニット10が図8のステップS101及びS102を実行することによりデータ選択手段として機能し、ステップS103〜S105を実行することにより照合手段として機能し、ステップS106〜S109を実行することにより管理手段として機能し、子機としてのゲーム機2の制御ユニット10がステップS201〜S203を実行することにより照合情報提供手段として機能する。
【0035】
[第2の形態]
次に、本発明の他の形態を説明する。なお、本形態は、クイズデータQdの整合性の確認手順を変更したものである。したがって、第1の形態と共通する部分については第1の形態の説明をそのまま適用し、以下では相違点を中心として説明する。図9に示すように、本形態のゲームシステム1では、照合部17が子機としてのゲーム機2の制御ユニット10内に設けられ、親機のゲーム機2の制御ユニット10では照合部17が省略されている。つまり、本形態では、ハッシュ値の照合を子機のゲーム機2が担当する。
【0036】
図10は、クイズデータQdの整合性を確認するために親機及び子機のゲーム機2間で行われる処理の概要を示している。まず、親機の出題選択部15にて問題IDが選択されると、親機では自らが保持するクイズデータテーブル102内の問題IDに対応したクイズデータQdがハッシュ値演算部16に与えられ、そのクイズデータQdに対応するハッシュ値が演算される。問題IDは選択情報として全ての子機にも並行して与えられる。各子機でも、自らが保持するクイズデータテーブル102から問題IDに対応したクイズデータQdが特定され、そのクイズデータQdがハッシュ値演算部16に与えられてクイズデータQdに対応するハッシュ値が演算される。親機にて演算されたハッシュ値は各子機に送られる。各子機では、その照合部17にて、自らが演算したハッシュ値と、親機から送られたハッシュ値とが照合される。各子機の照合結果は親機に送られる。親機では、全てのハッシュ値が一致するか否かが判定される。一致する場合、親機から各子機に対して出題が許可され、親機及び子機では問題IDに対応するクイズデータQdの問題が出題される。一方、少なくとも一つの判定結果が不一致であった場合には、ゲーム機2間でのクイズデータQdの整合性が確保されていないため、問題IDが破棄されて出題選択部15で新たな問題IDが選択される。
【0037】
図11は、上述した処理を実現するために親機及び子機のそれぞれのゲーム機2の制御ユニット10が実行する出題制御ルーチンを示している。それらのルーチンは、クイズゲームにて一問のクイズを出題する時に、その出題に先立って実行される。まず、親機の制御ユニット10では、ステップS301〜S303にて問題選択、問題IDの送信及び問題IDに対応したクイズデータQdのハッシュ値の演算が順次行われる。これらの処理は図8のステップS101〜S103の処理と同様である。ハッシュ値の演算後、親機の制御ユニット10はステップS304に進み、子機に対してハッシュ値を送信し、その後ステップS305に進んで子機から照合結果を取得する。
【0038】
一方、各子機の制御ユニット10は、ステップS401にて、親機から送信される問題IDを取得し、続くステップS402にて、問題IDに対応するクイズデータQdのハッシュ値を演算する。その後、各子機の制御ユニット10はステップS403に進み、親機から送信されたハッシュ値を取得する。続くステップS404にて、子機の制御ユニット10は自らが演算したハッシュ値と親機から送られたハッシュ値とを照合し、続くステップS405にてその照合結果(一致又は不一致のいずれか)をゲーム機2に送信する。
【0039】
ステップS305にて全ての子機から照合結果を取得すると、親機の制御ユニット10はステップS306に進み、全てのハッシュ値が一致したか否かを判別する。全てのハッシュ値が一致している場合、親機の制御ユニット10はステップS307に進んで出題許可を全ての子機に通知し、続くステップS308にて自機に対しても出題を許可し、これにより出題制御ルーチンを終える。一方、ステップS306にて、少なくとも一つのハッシュ値が他のハッシュ値と一致しなかった場合、親機の制御ユニット10はステップS309に進んで各子機に出題不可であることを通知し、その後、ステップS301に戻って新たな問題を選択する。
【0040】
ステップS307又はステップS309で出題許可又は不可が最終的な判定結果として通知されると、子機の制御ユニット10は、ステップS406でその通知内容を取得し、続くステップS407で出題許可が通知されたか否かを判別する。出題不可が通知されている場合、子機の制御ユニット10は先に通知されていた問題IDを破棄してステップS401に戻り、新たな問題IDの通知を待つ。ステップS407で出題許可が通知されている場合、子機の制御ユニット10はステップS408に進み、自機に対して出題を許可し、その後、出題制御ルーチンを終える。以上の処理によっても、ゲーム機2間におけるクイズデータQdの整合性を確保しつつクイズゲームを進めることが可能となる。
【0041】
以上の形態では、制御ユニット10がゲーム制御手段に相当し、その内部に生成される論理的装置としてのハッシュ値演算部16が照合情報取得手段に相当する。また、親機としてのゲーム機2が照合依頼装置に、子機としてのゲーム機2のそれぞれが照合実行装置にそれぞれ相当する。そして、親機としてのゲーム機2の制御ユニット10が図11のステップS301及びS302を実行することによりデータ選択手段として機能し、ステップS303及びS304を実行することにより照合情報提供手段として機能し、ステップS305〜S309を実行することにより管理手段として機能し、子機としてのゲーム機2の制御ユニット10がステップS401〜S405を実行することにより照合手段として機能する。
【0042】
本発明は、上述した形態に限定されず、種々の形態にて実施されてよい。例えば、上記の形態では、いずれか一つのゲーム機2を親機に、他のゲーム機2を子機として設定したが、親機は必ずしもゲーム機2であることを要しない。例えば、図1のセンターサーバ3にもクイズデータテーブル102を記憶させて当該センターサーバ3を親機として機能させてもよい。ゲーム機2とセンターサーバ3との間にさらに別のサーバ(一例として店舗6内に設置されるサーバ)が介在する場合には、そのサーバを親機としてもよい。サーバを親機とする場合には、全てのゲーム機2が子機として設定される。上述した第2の形態では、子機として設定された全てのゲーム機2のそれぞれにてハッシュ値を照合しているが、いずれか一台の特定の子機に対して他の子機及び親機からハッシュ値を提供し、その特定の子機にて演算されるハッシュ値を他の子機及び親機から提供されるハッシュ値と照合し、その照合結果を親機に提供して、親機がゲームデータの整合性を判断してもよい。すなわち、親機及び複数の子機の少なくともいずれか一つが照合実行装置として機能すればよい。
【0043】
上記の形態では、問題IDが選択され通知される毎にクイズデータのハッシュ値を演算しているが、クイズデータを記憶装置に記録する際にハッシュ値を演算し、その演算されたハッシュ値を問題IDと対応付けて記録することにより、問題IDの選択時の演算を省略して、問題IDに対応付けられたハッシュ値を他のゲーム機2等の同一IDに対応付けられたハッシュ値と照合してもよい。選択情報は問題IDに限らず、ゲームデータを一意に特定できるものであれば適宜に変更してよい。照合情報も、ゲームデータを関数で処理することにより、ゲームデータ毎にユニークに演算される値であればハッシュ値に限らず、適宜の変更が可能である。
【0044】
本発明のゲームシステムにおいて、ゲーム端末は業務用のゲーム機に限らず、ネットワークを利用して複数のゲーム端末間でゲームデータを共通に使用しつつゲームを進行させる限りにおいて、ゲームを実行可能な各種の端末装置(一例として、家庭用ゲーム機、パーソナルコンピュータ、携帯電話)等をゲーム端末として使用する各種のゲームシステムに適用可能である。ゲーム端末間で実行されるゲームもクイズゲームに限定されない。ゲーム端末間で共通に使用されるべきゲームデータとしては、クイズの問題と解答を記述したデータ以外にも、キャラクタ、ゲーム上でのオブジェクト、音楽のデータ、操作指示のデータ等、各種のデータの整合性を保証する必要がある場合には本発明を好適に用いることができる。本発明において、ゲーム端末が接続されるネットワークは、インターネット等の広域のネットワークに限らず、接続範囲が限定されたLANでもよく、その通信プロトコルもTCP/IPに限らず、適宜のプロトコルが採用されてよい。
【符号の説明】
【0045】
1 ゲームシステム
2 ゲーム機(ゲーム端末)
3 センターサーバ
5 ネットワーク
6 店舗
10 制御ユニット(ゲーム制御手段、データ選択手段、照合情報提供手段、照合手段、管理手段)
13 記憶装置
16 ハッシュ値演算部(照合情報取得手段)
101 ゲームプログラム
102 クイズデータテーブル
A 親機
B、C、…N 子機
Qd クイズデータ(ゲームデータ)

【特許請求の範囲】
【請求項1】
ネットーワークを介して相互に接続された複数のゲーム端末の一つ、又は前記複数のゲーム端末のそれぞれと前記ネットワークを介して接続されたサーバが親機に、該親機以外のゲーム端末が子機にそれぞれ設定された状態で、前記親機からの指示に従って前記複数のゲーム端末間でゲームを進行させるゲーム制御手段が前記複数のゲーム端末のそれぞれに設けられたゲームシステムであって、
前記親機及び前記子機のそれぞれには、前記ゲームで選択的に使用される複数のゲームデータを記憶する記憶装置と、自らの記憶装置が保持している前記複数のゲームデータのそれぞれを所定の関数に入力して求められるゲームデータ毎のユニークな照合情報を取得する照合情報取得手段とが設けられ、
前記親機には、前記ゲームにて前記複数のゲーム端末間で共通に使用されるべきゲームデータを前記複数のゲームデータから選択してその選択結果を識別する選択情報を前記複数のゲーム端末のそれぞれに通知するデータ選択手段が設けられ、
前記親機及び前記子機の少なくともいずれか一つが照合実行装置として、他が照合依頼装置としてそれぞれ設定され、
前記照合依頼装置には、該照合依頼装置の記憶装置が保持している前記選択情報に対応したゲームデータの照合情報を前記照合情報取得手段によって取得し、その取得した照合情報を前記照合実行装置に提供する照合情報提供手段が設けられ、
前記照合実行装置には、前記照合実行装置の記憶装置が保持している前記選択情報に対応したゲームデータの照合情報を自らの照合情報取得手段によって取得し、取得した照合情報と前記照合依頼装置から提供された照合情報とを照合して前記ゲームデータの整合性を判別する照合手段と、が設けられ、
前記親機には、前記照合手段による照合結果に基づいて、全てのゲーム端末間で前記選択情報に対応するゲームデータが一致するか否かを判別し、一致する場合には、前記複数のゲーム端末のそれぞれのゲーム制御手段に対して、前記選択情報に対応したゲームデータの使用を許可し、一致しない場合には当該選択情報に対応したゲームデータの使用を阻止する管理手段が設けられている、ゲームシステム。
【請求項2】
いずれか一つのゲーム端末が前記親機に、他のゲーム端末が前記子機にそれぞれ設定され、前記親機が前記照合実行装置として、前記子機が前記照合依頼装置としてそれぞれ設定される請求項1に記載のゲームシステム。
【請求項3】
いずれか一つのゲーム端末が前記親機に、他のゲーム端末が前記子機にそれぞれ設定され、前記親機が前記照合依頼装置として、前記子機が前記照合実行装置としてそれぞれ設定される請求項1に記載のゲームシステム。
【請求項4】
前記照合情報がハッシュ値である請求項1〜3のいずれか一項に記載のゲームシステム。
【請求項5】
前記ゲームデータは、前記複数のゲーム端末のそれぞれのプレイヤに対して提示すべき情報をゲームデータ毎にユニークなIDと対応付けて記述したデータ構造を有し、
前記データ選択手段は前記IDを前記選択情報として前記複数のゲーム端末のそれぞれに通知し、
前記複数のゲーム端末のそれぞれのゲーム制御手段は、前記管理手段によって使用が許可されたゲームデータに記述された情報をゲーム端末間で共通してプレイヤに提示することにより前記ゲームを進行させる請求項1〜4のいずれか一項に記載のゲームシステム。
【請求項6】
前記ゲームデータが、クイズの問題と解答とをゲームデータ毎にユニークなIDと対応付けて記述したクイズデータとして構成され、
前記複数のゲーム端末のそれぞれのゲーム制御手段は、前記管理手段によって使用が許可されたクイズデータの問題を前記情報としてゲーム端末間で共通してプレイヤに提示してその解答を要求することにより前記ゲームを進行させる請求項5に記載のゲームシステム。
【請求項7】
ネットーワークを介して相互に接続された複数のゲーム端末の一つが親機に、該親機以外のゲーム端末が子機にそれぞれ設定された状態で、前記親機からの指示に従って前記複数のゲーム端末間でゲームを進行させるコンピュータとしてのゲーム制御手段、及び前記ゲームで選択的に使用される複数のゲームデータを記憶する記憶装置が前記複数のゲーム端末のそれぞれに設けられたゲームシステムに適用されるコンピュータプログラムであって、
前記コンピュータを、
自らの記憶装置が保持している前記複数のゲームデータのそれぞれを所定の関数に入力して求められるゲームデータ毎のユニークな照合情報を取得する照合情報取得手段、
前記ゲームにて前記複数のゲーム端末間で共通に使用されるべきゲームデータを前記複数のゲームデータから選択してその選択結果を識別する選択情報を前記複数のゲーム端末のそれぞれに通知するデータ選択手段、
自らのゲーム端末の記憶装置が保持している前記選択情報に対応したゲームデータの照合情報を前記照合情報取得手段によって取得し、その取得した照合情報を他のゲーム端末にに提供する照合情報提供手段、
自らのゲーム端末の記憶装置が保持している前記選択情報に対応したゲームデータの照合情報を自らの照合情報取得手段によって取得し、取得した照合情報と他のゲーム端末から提供された照合情報とを照合して前記ゲームデータの整合性を判別する照合手段、及び、
前記照合手段による照合結果に基づいて、全てのゲーム端末間で前記選択情報に対応するゲームデータが一致するか否かを判別し、一致する場合には、前記複数のゲーム端末のそれぞれのゲーム制御手段に対して、前記選択情報に対応したゲームデータの使用を許可し、一致しない場合には当該選択情報に対応したゲームデータの使用を阻止する管理手段、
として機能させるように構成されたコンピュータプログラム。

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