次に、図面を参照して、本発明の実施の形態を説明する。以下の図面の記載において、同一または類似の部分には同一または類似の符号を付している。
以下、本発明の実施の形態について図面を用いて説明する。
<ゲームシステム>
図1を参照して、本発明の実施の形態に係るゲームシステム5のシステム構成を説明する。ゲームシステム5は、ゲーム装置2および複数のゲーム端末3aおよび3bを備える。ゲーム装置2は、AプレイヤおよびBプレイヤの2のプレイヤによってそれぞれ選択されたオブジェクトに対応づけられた値に基づいて、AプレイヤとBプレイヤとの対戦を制御する。ゲーム装置2は、通信ネットワークを介して、ゲーム端末3aおよび3bと相互に通信可能に接続する。ゲーム装置2は、CPU10、ストレージ20、通信制御装置25などを備える一般的なコンピュータである。ゲーム端末3aおよび3bは、例えば、スマートフォン、コンピュータ、ゲーム機などである。ゲーム端末3aおよび3bは、ゲーム装置2が提供するゲームで対戦するAプレイヤおよびBプレイヤによってそれぞれ操作される。
図2を参照して、本発明の実施の形態に係るゲーム端末3aのハードウェア構成を説明する。ゲーム端末3aは、バス30に、CPU31、RAM32、ROM33、ストレージ34、画像処理ユニット35、入力インタフェース36、音声処理ユニット37および無線通信ユニット38を接続する。画像処理ユニット35と入力インタフェース36には、タッチパネル40が接続される。タッチパネル40は、画像処理ユニット35により生成されるゲーム画面を表示する表示装置を実現するとともに、プレイヤがタッチパネル40に接触した接触座標を入力して入力インタフェース36へ渡す入力装置を実現する。音声処理ユニット37には、スピーカー41が接続される。スピーカー41は、音声処理ユニット37によりアナログ信号に変換されて増幅された効果音やBGM等の音声を出力する。
ゲーム端末3aは、無線通信ユニット38を介してゲーム装置2に接続する。ゲーム端末3aは、タッチパネル40におけるプレイヤの操作情報をゲーム装置2に送信したり、ゲーム装置2から受信した表示情報に基づいてタッチパネル40にゲーム状況を表示したりする。
本発明の実施の形態においては、ゲーム端末3aが、通信ネットワークを介してゲーム装置2のユーザインタフェースの機能を実現する場合を説明するがこれに限られない。ゲーム端末3aは、有線ケーブルなどでゲーム装置2に接続されても良いし、ゲーム装置2の一部として構成されても良い。また図1は、ゲームシステム5が実現する機能の実装例を示したものであり、例えば、ゲーム端末3aが、ゲーム装置2の一部機能を実現しても良い。ゲーム端末3bは、ゲーム端末3aと同様である。本発明の実施の形態においては、ゲーム装置2が、複数のプレイヤが操作する複数のゲーム端末に接続する場合を説明するが、これに限られない。複数のプレイヤが、1台のゲーム装置2を操作しても良い。
<ゲーム>
次に、本実施の形態におけるゲームプログラム1によって提供されるゲームについて説明する。
本発明の実施の形態におけるゲームは、仮想のゲーム空間において、AプレイヤおよびBプレイヤによってそれぞれ選択されたオブジェクトに対応づけられた値に基づいて、AプレイヤとBプレイヤとが対戦する。ここで、AプレイヤおよびBプレイヤのなくとも一方のプレイヤは、ゲーム端末を操作するプレイヤである。もう一方のプレイヤは、ゲーム端末を操作するプレイヤであってもよいし、コンピュータが操作内容を決定する仮想的なプレイヤであってもよい。
AプレイヤおよびBプレイヤの一方が攻撃を担い、もう一方が防御を担う。防御を担うAプレイヤは、Aプレイヤが予め複数のオブジェクトで構成したデッキから、1つのオブジェクトを選択する。攻撃を担うBプレイヤは、Bプレイヤが選択したオブジェクトに対応づけられた値より大きくなるように、Bプレイヤが予め複数のオブジェクトで構成したデッキから、1以上のオブジェクトを選択する。各プレイヤによって一度選択されたオブジェクトは、以後の対戦では原則、再度選択することはできないよう制御される。ここで、攻撃を担うAプレイヤが、防御を担うBプレイヤが選択したオブジェクトの値よりも大きくなるようにオブジェクトを選択した時点で1つのターンが終了し、攻撃および防御を入れ替えて、新たなターンが開始される。いずれかのプレイヤが選択可能なオブジェクトが無くなるまでターンが繰り返され、選択可能なオブジェクトがなくなったプレイヤが、負けとなり、対戦は終了する。
ここで、オブジェクトに対応づけられた値は、本発明の実施の形態において、「体力値」として演出され、この体力値を比較することにより対戦が進行する。防御を担うプレイヤがフィールドに出したオブジェクト(防御オブジェクト)の体力値を、攻撃を担うプレイヤがフィールドに出したオブジェクト(攻撃オブジェクト)の体力値で削って、防御を担うプレイヤの体力値が「0」になるまで、攻撃を担うプレイヤがオブジェクトを選択し続ける。
防御を担うプレイヤが防御オブジェクトをフィールドに出すと、フィールドに、防御オブジェクトと、この防御オブジェクトの値を表示する。これに対し攻撃を担うプレイヤが攻撃オブジェクトをフィールドに出す。攻撃を担うプレイヤは、攻撃オブジェクトを一つずつ選択してフィールドに出しても良いし、複数の攻撃オブジェクトを選択してフィールドに出しても良い。
防御オブジェクトの値より攻撃オブジェクトの値が小さい場合、防御オブジェクトの値から、攻撃オブジェクトの値を減算処理した値に更新して表示する。複数の攻撃オブジェクトが選択され、かつ、防御オブジェクトの値より攻撃オブジェクトの値の合計値が小さい場合、防御オブジェクトの値から、攻撃オブジェクトの値の合計値を減算処理した値に更新して表示する。一方、防御オブジェクトの値より、攻撃オブジェクトの値が大きい場合、防御オブジェクトの値を「0」に更新して表示し、ターンを入れ替える。
ターンを入れ替える際、防御オブジェクトをフィールドから消去し、直近で出された攻撃オブジェクトを、新たなターンの防御オブジェクトとしてフィールドに表示する。新たなターンの防御オブジェクトに、直前のターンにおいて最後に出された攻撃オブジェクトの値から、直前のターンにおいてフィールドから消去される時点に防御オブジェクトに表示された値(残りの体力値)を減算処理した値が、新たな体力値として表示される。この後、新たなターンにおいて、攻守を入れ替えて対戦が進行する。攻守が入れ替わった後も同様に、防御を担うプレイヤがフィールドに出した防御オブジェクトの体力値を、攻撃を担うプレイヤがフィールドに出した攻撃オブジェクトの体力値で削って、防御を担うプレイヤの体力値が「0」になるまで、攻撃を担うプレイヤが攻撃オブジェクトを選択し続ける。
また本発明の実施の形態に係るゲームにおいてオブジェクトに、予め対戦に用いられる値、対戦における効果を示すスキル情報、コストが対応づけられる。オブジェクトに対応づけられる値は、相手プレイヤとの仮想的な対戦の場となるフィールドの属性やスキル情報によって適宜変更される。またスキル情報にさらに、効果が生じる条件が予め設定されても良い。各プレイヤは、複数のオブジェクトの各コストの合計が所定の範囲内になるように、デッキを構成する。
またフィールドの属性は、攻撃を担うプレイヤがオブジェクトを選択してフィールドに表示させると、所定順序で変更される。まだカードのスキル情報として、フィールドの属性が変化する所定順序を変化させる効果が対応づけられても良い。
本発明の実施の形態に係るゲームにおいて、ターンで勝利するためにはオブジェクトを選択する必要がある一方、対戦で勝利をするためには選択可能なオブジェクトを残す必要がある。ゲームは、一つの対戦において相反する条件を設けることで、プレイヤに、対戦に勝利するための高度な戦略を要求することにより、エンターテイメント性をより高めることができる。
また本発明の実施の形態に係るゲームにおいて、対戦に用いられる値は、適宜変更されるフィールドの属性に応じて変化する。またオブジェクトに、このフィールドの属性や、フィールドの変更順序などを変化させるスキル情報を対応づけ、このオブジェクトが選択されると、スキル情報の効果が発生する。このように、本発明の実施の形態に係るゲームは、プレイヤがオブジェクトを選択するタイミングによって、戦況を変更することができるので、プレイヤに、対戦に勝利するための高度な戦略を要求することを可能とする。
以下、本発明の実施の形態において、オブジェクトがカードである場合を説明する。カードは、表示装置に形成される仮想のゲーム空間の一部として、描画される。また本発明の実施の形態においてフィールドは、12の属性のいずれかが設定される。本発明の実施の形態において12のそれぞれの属性は、新月から満月を経て新月になる月の満ち欠けをシンボルとして描画されるが、これに限るものではない。
図3に示すように、カードは、値表示部C1、最適属性表示部C2、スキル種別表示部C3およびスキル発動条件表示部C4を備える。またカードに、そのカードを識別可能なイラストが描画されても良い。値表示部C1は、カードに対応づけられた値を表示する。最適属性表示部C2は、カードに対応づけられた値が最大となるフィールドの属性を表示する。図3に示す例では、値表示部C1の地色で、フィールドの属性を識別可能に表示する。スキル種別表示部C3は、カードに対応づけられた対戦における効果の種別を、プレイヤが識別可能なシンボルで表示する。スキル発動条件表示部C4は、効果が生じる条件となるフィールドの属性を、プレイヤが識別可能なシンボルで表示する。
ここでカードに対応づけられる値は、フィールドの属性によって異なっても良い。例えば、フィールドの属性が「満月」の場合、値は「1200」であって、「新月」の場合、値は「300」であって、そのほかの属性の場合、値は「500」である。カードが選択されたタイミングのフィールドの属性に応じた値に応じて、防御の値または攻撃の値が算出される。カードが描画される際、その時のフィールドの属性に対応する値が表示されても良い。
本発明の実施の形態において各プレイヤは、予めデッキに含める複数のカードを決定する。ゲーム装置2は、各プレイヤのデッキを構成するカードの情報を保持し、各プレイヤの各デッキから、ランダムに選択した4枚のカードを手札として各プレイヤに配布する。ここで、手札の枚数が4枚の場合を説明するが、これに限るものではない。
各プレイヤは、手札として配布されたカードから、攻撃または防御のためのカードを選択し、ゲーム装置2は、選択されたカードの値に基づいて、ゲームの各ターンを進行する。本発明の実施の形態において、攻撃または防御のために、カードをフィールドに出すことを、カードの「選択」と称する。またゲーム装置2は、手札を設けず、デッキから攻撃または防御のためのカードを選択するように制御しても良い。
図4を参照して、ゲーム装置2がゲーム端末3aに表示する画面の一例を示す。図4に示す画面は、攻撃を担うAプレイヤが、防御を担うBプレイヤと通信ネットワークを介して対戦する場合の、Aプレイヤが閲覧する画面である。ゲーム端末3aは、図4に示す画面の下側に、Aプレイヤに関する情報を表示するAプレイヤ情報表示部Daを設け、上側に、Bプレイヤに関する情報を表示し、中央近辺に、フィールド情報表示部Dfを設ける。
Aプレイヤ情報表示部Daは、手札表示部D1、デッキカード数表示部D2および持ち時間表示部D3を備える。Aプレイヤの手札表示部D1は、Aプレイヤに対応づけられた4枚の手札の各手札について、値、スキル情報などのカードのデータを表示する。Aプレイヤのデッキカード数表示部D2は、Aプレイヤのデッキに残るカード枚数を表示する。このデッキのカード枚数は、Aプレイヤがゲーム開始時にデッキに含めたカード枚数から、既に手札として手札表示部D1に表示されたカード枚数を引いた数である。持ち時間表示部D3は、Aプレイヤが攻撃を担う場合に表示され、Aプレイヤが手札からフィールドに表示するカードを選択するために与えられた時間である。
Bプレイヤ情報表示部Dbは、手札表示部D1および持ち時間表示部D3を備える。Bプレイヤの手札表示部D1は、Bプレイヤに対応づけられた4枚の手札を表示する。Bプレイヤの手札表示部D1は、各手札のうち、3枚の手札について、値、スキル情報などのカードのデータを表示する。残り1枚の手札(クローズカード)は、カードが伏された状態で描画され、この手札に対応づけられたデータは表示されない。Bプレイヤのデッキカード数表示部D2は、Bプレイヤのデッキに残るカード枚数を表示する。Aプレイヤが攻撃を担う場合、Bプレイヤは防御を担うので、Bプレイヤに関する情報として、持ち時間表示部は設けないようにしてもよい。
なお、図4は、Aプレイヤが閲覧する画面を表示するので、Aプレイヤの全ての手札のデータを表示し、Bプレイヤの手札の一部のカードが伏されて描画される。これに対し、図4と同じタイミングでBプレイヤが閲覧する画面は、Bプレイヤの全ての手札のデータを表示し、Aプレイヤの手札の一部のカードが伏されて描画される。
フィールド情報表示部Dfは、プレイヤによる仮想のゲーム空間における対戦の場に関する情報を表示する。フィールド情報表示部Dfは、防御カード表示部D4、フィールド属性表示部D5、属性変更ルール表示部D6、発生スキル効果表示部D7およびフィールド属性一覧表示部D8を備える。
防御カード表示部D4は、防御を担うプレイヤが手札から選択した、1枚のカード(防御カード)を表示する。防御を担うプレイヤが防御カードを選択すると、防御カード表示部D4は、この防御カードに元々対応づけられていた値を表示する。その後、攻撃を担うプレイヤが、この防御カードの値より大きくなるように手札から1枚以上のカードを選択すると、防御カード表示部D4は、表示された値から、攻撃を担うプレイヤが選択したカードの値を引いた値を、逐次表示する。換言すると、防御を担うプレイヤが選択した防御カードの値は、防御のための体力値となり、攻撃を担うプレイヤが選択したカードの値は、体力値を減らすダメージポイントとなる。防御カード表示部D4は、防御側の体力値の残量を逐次表示し、攻撃を担うプレイヤがカードを出す度に、防御の体力値を削る演出を実現する。
フィールド属性表示部D5は、フィールド属性を、月の満ち欠けなどのシンボルなどを用いて表示する。フィールド属性表示部D5は、攻撃を担うプレイヤがカードを選択する度に、または、選択されたカードのスキル情報に応じて、フィールドの属性を更新して表示する。属性変更ルール表示部D6は、属性が変更するルールを表示する。初期状態では、フィールドの属性は順方向に1ずつ変更するところ、スキルの効果により、逆方向に変更したり、変更ピッチが変更したりするのに伴って、属性変更ルール表示部D6は、現在の属性変更ルールのシンボルを表示する。発生スキル効果表示部D7は、選択されたカードによって生じたスキルの情報を表示する。発生スキル効果表示部D7は、スキルの効果が発生している間、そのスキルのシンボルを表示し、効果が終了すると、シンボルを消去する。フィールド属性一覧表示部D8は、フィールドの属性が変わる順序を示す。図4に示す例では、フィールド属性一覧表示部D8は、防御カード表示部D4の外周円上に、フィールドの属性のシンボルを、変更順に表示する。なお、この属性変更ルール表示部上の現在のフィールド属性に針を描画することにより、現在のフィールド属性を示しても良い。
図4に示すように、防御カード表示部D4に防御カードが表示されると、攻撃を担うAプレイヤは、Aプレイヤの手札表示部D1の手札からカード(Aプレイヤの手札表示部D1の最左のカード)を、選択する。その後、ゲーム端末3aおよび3bに、Aプレイヤが選択したカードが、防御カード表示部D4に移動する演出がなされ、図5に示すように、Aプレイヤが選択したカードは、手札表示部D1から消去される。このとき防御カード表示部D4は、防御カードの上に、Aプレイヤが選択したカードを表示する。
ここで、Aプレイヤが選択したカードの値は「300」なので、攻撃を担うプレイヤが選択したカードで防御の値を削りきれない。この場合防御カード表示部D4は、Aプレイヤが選択したカードの値を「300」から「0」に更新して表示した後、攻撃が担うプレイヤが選択したカードをフィールドから消去する。さらに、防御カード表示部D4は、元々の防御カードの値「1200」から「300」を引いた「900」を表示する。これにより、Aプレイヤは、残り「900」の値を削るようにカードを選択する必要があると把握することができる。
その後、Aプレイヤは、防御カード表示部D4に表示された値(「900」)を「0」にするまで、手札からカードを選択する。換言すると、Aプレイヤは複数のカードを選択し、選択した複数のカードに対応づけられた値の合計が、防御カードに対応づけられた値(「1200」)よりも大きくなるまで、手札からカードを選択する。
一方、他の例として、攻撃を担うAプレイヤが選択したカードに対応づけられた値が「2000」の場合を説明する。防御カード表示部D4には、防御カードに対応づけられた「1200」を表示しているところ、Aプレイヤが選択したカードの値は「2000」なので、防御カード表示部D4は、残り体力値として「0」を表示した後、防御カードを削除する。その後、新たなターンが開始される際、防御カード表示部D4は、攻撃を担うAプレイヤが選択したカードを表示するとともに、新たな体力値を表示する。新たな体力値は、攻撃を担うAプレイヤが選択したカードに対応づけられた値「2000」から、直前のターンでAプレイヤがカードを選択する前の残り体力値、具体的には防御カード表示部D4に表示されていた値「1200」を減算処理した「800」である。
新たなターンにおいては、新たなターンで防御を担うプレイヤ、換言すると、直前のターンで攻撃を担ったプレイヤが直前に選択したカード(直前のターンで最後に選択したカード)が、新たな防御カードとして防御カード表示部D4に表示される。このとき防御カード表示部D4は、新たな防御カードに対応づけられた値に基づいた値を表示する。この
「新たな防御カードに対応づけられた値に基づいた値」は、上述の例では、新たな防御カードに対応づけられた値から、この新たな防御カードが選択された時点で防御カード表示部D4が表示していた残り体力値を減算した値として説明したが、新たな防御カードに対応づけられた値などの値でも良い。
なお、Aプレイヤの手札表示部D1の手札が全て選択されると、Aプレイヤのデッキを構成するカードから、新に4枚のカードが手札として抽出され、手札表示部D1に表示される。このときAプレイヤの持ち時間表示部D3のデッキカード数は、4枚マイナスされて更新される。なお、プレイヤがカードを選択する度に、デッキからカードが手札として抽出されても良い。
このように、デッキを構成する各カードは、手札として手札表示部D1に表示された後、フィールドに出すために、プレイによって選択される。ひとたび手札として手札表示部D1に表示されたカードの情報は、デッキを構成するカードの情報から削除され、その後、再び手札として表示されないように制御される。また、手札表示部D1から選択されたカードの情報は、手札表示部D1から削除され、その後、再びデッキを構成するカードや手札として表示されないように制御される。
ここで、各カードには、値やスキル情報が対応づけられており、またこの値も、フィールドの属性などによって変更する。そこで、図6に示すように、Aプレイヤは、ゲーム端末3aに表示されたカードを長押しすることなどにより、表示対象カードCxを決定すると、表示対象カードCxが大きく表示される。さらに表示対象カードCxに対応づけられた情報を表示するカード詳細表示部Csがポップアップ表示される。Aプレイヤは、Bプレイヤの手札表示部D1のカードを、表示対象カードとしても良い。ただし、Bプレイヤのクローズカードの値やスキル情報は、Aプレイヤが閲覧できないように制御される。
以上の処理を繰り返し、いずれかのプレイヤが手札およびデッキから選択可能なカードがなくなると、この一連のゲームが終了する。このとき、防御カード表示部D4は、この時点での防御カードを表示しても良いし、攻撃を担うプレイヤによって選択されたカードを表示しても良い。
本発明の実施の形態においては、手札およびデッキから選択可能なカードがなくなったプレイヤを敗者とし、手札およびデッキから選択可能なカードが残っているプレイヤを勝者として、ゲーム装置2は、データを更新する。
ここで勝者は、経験値の付与などの特典が付与される。例えば勝者は、敗者の所有していたカードを奪い取り、自身のカードとしても良い。この奪い取るカードは、勝者が任意に決定しても良いし、敗者が最後に選択したカードなど所定のロジックにより決定されても良い。
このカードの奪い取りにおいて、敗者の所持カード情報から、奪い取られたカードの情報が削除され、勝者の所持カード情報に追加されても良い。また奪い取られたカードの情報は、値やスキル情報が変化するなど、適宜変更されても良い。また、敗者の所持カード情報において、奪い取られたカードが所定期間または所定回数使われないように制御し、勝者の所持カード情報に奪い取ったカード情報を追加し、所定期間または所定回数のみ使われるように制御しても良い。ゲーム装置2は、各プレイヤの最新の所持カードの情報を保持するように制御される。
<ゲーム装置>
図1を参照して、本発明の実施の形態に係るゲームを実現するゲーム装置2を説明する。図1に示す構成は一例であって、本発明の実施の形態に係るゲームプログラムを実行する様々なシステムが考えられるのはもちろんである。ゲーム装置2のストレージ20は、本発明の実施の形態に係るゲームプログラム1を記憶するプログラム記憶部である。CPU10がゲームプログラム1を実行することにより、ゲームプログラム1は、コンピュータのCPU10を、制御部11、選択支援部12および入出力制御部13として機能させる。
ストレージ20は、ゲーム端末3aおよび3bの識別子、AプレイヤおよびBプレイヤの識別子、各プレイヤの課金情報、所持カード情報および勝敗結果などを保持する。所持カードは、各プレイヤが過去のゲームや課金などによって取得したカードであって、各プレイヤは、この所持カードの各カードから、コストの合計が所定値内になるように、デッキを構成する。
ストレージ20は、カード群データ21を記憶する。カード群データ21は、AプレイヤおよびBプレイヤについて、各プレイヤに対応づけられた複数のカードの情報を保持するオブジェクト群保持手段である。カード群データ21は、具体的には、ゲーム開始時に各プレイヤがデッキを構成したカードの情報と、各カードの使用状況とを対応づけて保持する。カード群データ21は、対戦の進捗に応じて、後述する制御部11や選択支援部12などによって、適宜更新される。カード群データ21は、対戦開始時に、例えば、後述する制御部11によって生成され、ストレージ20に記憶される。
カード群データ21は例えば、図7に示すようなデータ構成を有する。カード群データ21は、対戦するプレイヤのプレイヤ識別子と、各プレイヤがデッキに含めたカードの識別子を対応づけるとともに、手札フラグ、クローズフラグ、選択フラグなどの各フラグのデータを対応づけて保持する。手札フラグは、手札として表示されるカードであるか否かを示す。クローズフラグは、手札として表示されるカードについて、クローズフラグであるか否かを示す。また選択フラグは、選択されたか否か、具体的には、手札として表示された後、対戦の防御または攻撃としてフィールドに出されたか否かを示す。
カード群データ21は、対戦開始時、手札フラグおよびクローズフラグに「null値」が設定され、選択フラグに「未選択」が設定される。その後、デッキから手札に選択されたカードについて、手札フラグが「手札」に設定され、手札からフィールドに出すために選択されたカードは、「null」が設定される。また手札フラグが「手札」に設定されたカードのうちクローズカードについて、クローズフラグは「クローズ」に設定され、それ以外のカードについて「オープン」が設定される。さらに、手札からフィールドに出すために選択されたカードについて選択フラグが「選択済」に設定される。なお、カード群データ21の構成は、ゲームの進行に応じて適宜カードの属性を保持することができれば、どのような構成でも良い。
またストレージ20は、対戦時などに適宜参照されるカードマスタデータ(図示せず)を記憶する。カードマスタデータは、対戦で用いられるカードの識別子と、このカードに対応づけられた値、スキル情報、描画に用いられるイラストなどの各種データとを対応づける。
制御部11は、ゲームの進行に関する情報を制御する。制御部11は、入出力制御部13から入力されたプレイヤの操作情報に基づいて処理し、その結果生成した表示情報を、入出力制御部13に出力する。制御部11は、対戦を進行するために、初期処理部11a、ターン切り替え処理部11bおよび終了処理部11cを備える。
初期処理部11aは、ゲームを開始するために必要な処理を実行する。具体的には、対戦する各プレイヤがデッキに構成したカードの情報を取得し、カード群データ21を生成して、ストレージ20に記憶する。また初期処理部11aは、最初のターンにおいて攻撃を担うプレイヤを決定するための制御をする。初期処理部11aは、防御カードを表示し、さらに各プレイヤの手札が最大4枚になるように、各プレイヤのデッキから手札を選択し、各プレイヤに、クローズカードを選択させるための制御をする。
ターン切り替え処理部11bは、プレイヤ間の対戦において、攻撃の値が防御の値より大きいと判断した場合、AプレイヤおよびBプレイヤがそれぞれに担った攻撃または防御を入れ替えて、選択支援部12に新たなターンを処理させる処理を実行する。Bプレイヤが防御を担いAプレイヤが攻撃を担ったターンにおいて、Aプレイヤが、Bプレイヤが選択した防御カードの値より大きくなるようにカードを選択すると、ターン切り替え処理部11bは、新たなターンを開始する制御をする。新たなターンでは、Aプレイヤが防御を担いBプレイヤが攻撃を担う。ターン切り替え処理部11bは、新たなターンにおける防御カードを表示し、さらに各プレイヤの手札が最大4枚になるように、各プレイヤのデッキから手札を選択し、新たなターンで攻撃を担うプレイヤに、クローズカードを選択させるための制御をする。
ここでターン切り替え処理部11bは、攻撃を担ったAプレイヤが直前に選択したオブジェクト(カード)を表示するとともに、直前に選択したオブジェクトの値に基づいた値を、新たな防御の値として、AプレイヤおよびBプレイヤがそれぞれに担った攻撃または防御を入れ替える。「直前に選択したオブジェクトの値に基づいた値」は、例えば、Aプレイヤが直前に選択したカードに対応づけられた値である。また、Aプレイヤが直前に選択したカードに対応づけられた値から、このカードが選択された時点で防御カード表示部D4が表示していた残り体力値を減算した値でも良い。
選択支援部12が、攻撃を担ったプレイヤにより攻撃オブジェクトとして選択されたオブジェクトを表示した後、ターン切り替え処理部11bがターンを切り替える際、攻撃オブジェクトして表示されたオブジェクトを防御オブジェクトとする表示に切り替える。
終了処理部11cは、プレイヤ間の対戦において、AプレイヤおよびBプレイヤのいずれかが、選択可能なカードがなくなった時点で、選択可能なオブジェクトのないプレイヤを敗者として、対戦を終了するよう制御する。終了処理部11cは、カード群データ21を参照し、選択フラグが全て「選択済」に更新されたプレイヤがあるか否かを判定し、あるプレイヤの選択フラグが全て「選択済」に更新された時点で、対戦を終了するよう制御する。具体的に終了処理部11cは、攻撃を担うプレイヤが防御カードに対してフィールドにカードを出すことができなくなった時点で、防御を担うプレイヤの勝利とする。あるいは終了処理部11cは、防御を担うプレイヤがフィールドにカードを出すことができなくなった時点で、攻撃を担うプレイヤの勝利とする。終了処理部11cは、勝ったプレイヤに、仮想ポイントや経験値の付与などの特典を与えても良い。
選択支援部12は、制御部11からの指示に基づいて、対戦における一つのターンを進めるために、防御を担うプレイヤと、攻撃を担うプレイヤにそれぞれカードを選択するよう促す。選択支援部12は、入出力制御部13から入力されたプレイヤの操作情報に基づいて処理し、その結果生成した表示情報を、入出力制御部13に出力する。
選択支援部12は、防御を担うプレイヤに対応づけられた複数の未選択のカードのうち、当該防御を担うプレイヤによって選択されたカードに対応づけられた値を、防御の値として、ゲーム端末3aおよび3bの表示装置に表示する。選択支援部12は、攻撃を担うプレイヤに、攻撃を担うプレイヤに対応づけられた複数のカードのうち未選択のカードから一以上のカードを選択させる。ここで、攻撃を担うプレイヤによって選択された一以上のカードに対応づけられた値に基づいた値を攻撃の値とする。選択支援部12は、攻撃の値と防御の値とを比較して、攻撃の値が、防御の値より大きくなるまで、攻撃を担うプレイヤによるカードの選択を促す。このように選択支援部12は、防御の値より大きくなるまで、攻撃を担うプレイヤがカードを選択し続けるように、制御する。
ここで選択支援部12は、防御カード表示部D4に表示される値を都度変化させ、防御の値が、攻撃の値によって削られる状況を演出しても良い。具体的には選択支援部12は、ターン開始時に、防御の値から、攻撃を担うプレイヤによって選択されたオブジェクトに対応づけられた値を減算処理した値がマイナス値でない場合、この減算処理した値を、表示装置に表示する。その後、攻撃を担うプレイヤがオブジェクトを選択する度に、選択支援部12は、防御カード表示部D4に表示された値を、0になるまで減らしながら更新して表示する。なお、攻撃を担うプレイヤによって選択されたオブジェクトに対応づけられた値が防御カード表示部D4に表示された値より大きい場合、選択支援部12は、防御カード表示部D4に「0」を表示するとともに、制御部11に、攻守を入れ替え、ターンを切り替える処理をさせる。
また選択支援部12は、カードが選択される度に、所定順序で、フィールドの属性を変更して保持する。フィールドの属性は、オブジェクトの値を変化させるためのパラメータである。選択支援部12は、カードが選択されたタイミングのフィールドの属性に基づいて、攻撃の値または防御の値を決定する。
例えば、攻撃を担うプレイヤによって、フィールドの属性が「満月」の場合、値は「1200」であって、「新月」の場合、値は「300」であって、そのほかの属性の場合、値は「500」であるカードが選択されたとする。選択支援部12は、このカードが選択された際のフィールドの属性が満月の場合、防御カードの値から「1200」を減算し、「新月」の場合、「300」を減算し、そのほかの属性の場合、「500」を減算する。また、防御を担うプレイヤが出した防御カードの値も、フィールドの属性によって変更されても良い。例えば、ターン開始時のフィールドの属性が「満月」の場合、防御の値は、「1200」となり、「新月」の場合、「300」となり、そのほかの属性の場合、「500」となる。
ここでプレイヤによって選択されたカードに、フィールドの属性を変更する順序を変化させるスキル情報が対応づけられる場合がある。この場合、選択支援部12は、選択されたカードに対応づけられたスキル情報に基づいて、フィールドの属性を変更して保持する。このスキル情報は例えば、フィールド属性を変更する方向や、変更ピッチなどであって、選択支援部12は、変更後のフィールドの属性の変更順序を保持する。選択支援部12が保持するこれらのデータは、図4のフィールド情報表示部Dfに表示される。スキル情報として、フィールドの属性を変更する時間の条件が対応づけられている場合、選択支援部12は、フィールドの属性を変更させる時間の条件を満たすか否かを監視し、条件を満たすと、スキル効果に従ってフィールドの属性を変更させる。
例えば、攻撃を担うプレイヤによって、「このターンの間、逆方向に2倍の速度で変更する」というスキル情報が対応づけられたカードが選択されたとする。1つのカードが選択される度に、時計回りに1つずつ属性が変更されていたところ、このカードが選択されると、選択支援部12は、このカードが選択された後の同じターンの間、1つのカードが選択される度に、反時計回りに2つずつ属性を変更して保持する。
またスキル情報は、スキル効果を生じる対象カードおよび時間を含む条件と、当該対象カードに対応づけられた値を変化させるスキル効果と含む場合がある。この場合、選択支援部12は、条件を満たす場合、スキル効果に基づいて対象オブジェクトに対応づけられた値を変更して、攻撃の値または防御の値を決定する。選択支援部12は、スキル効果を発生させる条件を満たすか否かを監視し、条件を満たすと、スキル効果を発生させる対象カードに対して、スキル効果を生じさせる。
例えば、攻撃を担うプレイヤによって、「このターンの間、攻撃を担うプレイヤが選択するカードの値を+500する」というスキル情報が対応づけられたカードが選択されたとする。この場合、スキル効果を発生させる時間は、「このターンの間」で、対象カードは「攻撃を担うプレイヤが選択するカード」である。スキル効果は、「+500する」である。このようなカードが選択されると、選択支援部12は、このターンが継続しているか否かを判定し、継続している間、攻撃を担うプレイヤが選択するカードの値を+500に変更して、攻撃の値を算出する。
入出力制御部13は、制御部11や選択支援部12からの指示に基づいて、ゲーム端末3aおよび3bの入出力を制御する。入出力制御部13は、ゲーム端末3aおよび3bから受信したプレイヤの操作情報を制御部11および選択支援部12に入力し、制御部11および選択支援部12から出力された画面の表示情報を、ゲーム端末3aおよび3bに出力する。
次に、図8ないし図10を参照して、本発明の実施の形態に係るゲーム装置2の処理を説明する。図8ないし図10に示す処理は、一例であって、これに限るものではない。
図8を参照して、制御部11における初期処理部11aの処理を説明する。ゲーム装置2は、ステップS101においてAプレイヤによってデッキに含めるカード群が指定され、ステップS102においてBプレイヤによってデッキに含めるカード群が指定されると、ステップS103において、カード群データ21を生成する。具体的には、ゲーム装置2は、各プレイヤの識別子に、各プレイヤにより指定されたデッキに含ませるカードの識別子を対応づける。さらにゲーム装置2は、各カードの識別子の手札フラグおよびクローズフラグに「null値」を設定し、選択フラグに「未選択」を設定する。さらに、ステップS104においてゲーム装置2は、ランダムに、あるいは所定のロジックに基づいて、ゲーム開始時のフィールドの属性を決定する。
ステップS105においてゲーム装置2は、各プレイヤについて、各プレイヤのデッキから、手札表示部D1に表示するべき4枚の手札を、それぞれ決定する。ステップS106においてゲーム装置2は、ゲーム端末3aにAプレイヤについて選択した4枚の手札を表示し、ステップS107において、ゲーム端末3aから、クローズカードと指定されたカードの識別子を取得する。ステップS108およびステップS109において、ゲーム装置2は、プレイヤBについても同様に処理する。
ステップS110においてゲーム装置2は、カード群保持データを更新する。具体的には、ゲーム装置2は、手札として選択したカードの識別子に対応づけられたデッキフラグを、「手札」に更新する。またゲーム装置2は、クローズカードの識別子に対応づけられたクローズフラグを「クローズ」に変更し、それ以外を「オープン」に変更する。
ステップS111においてゲーム装置2は、Aプレイヤの利用するゲーム端末3aに、Aプレイヤの手札に関するデータと、Bプレイヤのクローズカード以外の手札に関するデータを送信し、図4に示すような画面を表示させる。また、ステップS112においてゲーム装置2は、Bプレイヤの利用するゲーム端末3bにも同様に、図4に示すような画面を表示させる。
その後、ゲーム装置2は、先攻後攻を決めるための処理を実行する。ステップS113およびステップS114において、それぞれのプレイヤに、手札から1枚のカードを選択させる。ここでAプレイヤが選択したカードの値がVa11で、Bプレイヤが選択したカードの値がVb11であるとする。ステップS115においてゲーム装置2は、Va11とVb11とが同じ場合、ステップS105に戻る。このとき、ステップS113およびステップS114で選択されたカードを、デッキに戻すよう制御されても良い。
一方、Va11とVb11とが異なる場合、ステップS116に進む。ここでは、Va11が、Vb11より大きいので、プレイヤBが先攻となる場合を説明する。ステップS116においてゲーム装置2は、Aプレイヤが選択したカードを防御カードとし、この描画カードの値Va12を算出する。ここでVa12は、Va11−Vb11から算出される。その後ゲーム装置2は、値Va12が設定された防御カードを、ステップS117においてゲーム端末3aの防御カード表示部D4に表示するとともに、ステップS118においてゲーム端末3bの防御カード表示部D4に表示する。
さらにステップS119においてゲーム装置2は、各プレイヤの手札が最大4枚になるように、各プレイヤのデッキから手札を決定する。例えば、デッキに含まれたカードを全て手札としても手札が4枚にならない場合、ゲーム装置2は、デッキに含まれる全てのカードを手札とする。ステップS120ないしステップS123において、ステップS119で決定された手札について、ステップS106ないしステップS109で説明した通り、一枚のクローズカードが特定され、ステップS124において、カード群データ21が更新される。
ステップS124においてゲーム装置2は、カード群保持データを更新する。ゲーム装置2は、ステップS113およびステップS114において各プレイヤが選択したカードについて、この各カードの識別子に対応づけられた手札フラグおよびオープンフラグをデフォルトに変更するとともに、選択フラグを、「選択済」に変更する。また、ゲーム装置2は、ステップS119ないしステップS123において、手札およびクローズカードの識別子の手札フラグおよびオープンフラグを更新する。
図9を参照して、図8に示す処理の後の、Aプレイヤが防御を担い、Bプレイヤが攻撃を担って進行するターンを説明する。図9に示す処理は、選択支援部12の処理に相当する。
ステップS201においてゲーム装置2は、Bプレイヤの手札が最大4枚になるように、手札を決定する。例えば、デッキに含まれたカードを全て手札としても手札が4枚にならない場合、ゲーム装置2は、デッキに含まれる全てのカードを手札とする。ステップS202およびS203において、図9のステップS108およびステップS109と同様に、ゲーム端末3bにBプレイヤについて選択した手札を表示し、ゲーム端末3bから、クローズカードと指定されたカードの情報を取得する。
さらにステップS204においてゲーム装置2は、カード群データ21を更新する。具体的には、ゲーム装置2は、手札として選択したカードの識別子に対応づけられたデッキフラグを、「手札」に更新する。またゲーム装置2は、クローズカードの識別子に対応づけられたクローズフラグを「クローズ」に変更し、それ以外を「オープン」に変更する。
ステップS205においてゲーム装置2は、Aプレイヤの手札のカードの情報と、Bプレイヤのクローズカード以外のカードの情報を、ゲーム端末3aに表示させる。同様に、ステップS206においてゲーム装置2は、Bプレイヤの手札のカードの情報と、Aプレイヤのクローズカード以外のカードの情報を、ゲーム端末3bに表示させる。
ゲーム装置2は、ステップS207において、フィールドの属性を変更する。具体的にはゲーム装置2は、最初のターンにおいて、図8のステップS104で決定されたフィールドの属性を、順方向に一つずらす。2度目以降のターンにおいてゲーム装置2は、直前ターンの属性を、原則、フィールドの属性を、順方向に一つずらし、フィールドの属性の変更に関するスキル効果が発生している場合、発生しているスキル効果に対応して変更する。
その後ゲーム装置2は、ステップS208においてBプレイヤの手札から選択可能なカードがあるか否かを判定する。選択可能なカードがない場合、すなわち、Bプレイヤのデッキおよび手札にカードがない場合、制御部11の終了処理部11cが、Bプレイヤを敗者、Aプレイヤの勝者としてゲームを終了する。
一方、ステップS208において選択可能なカードがある場合、ステップS209においてゲーム装置2は、攻撃を担うBプレイヤに、手札の選択を促す。具体的にはゲーム装置2は、カード選択のための待ち時間を設定して、その時間内に手札を選択するよう案内画面を表示する。ここでBプレイヤが、値Vb12が対応づけられた手札を選択すると、ゲーム装置2は、ステップS210においてゲーム装置2は、Bプレイヤが選択した手札の情報を取得する。待ち時間を経過してもBプレイヤによって手札が選択されなかった場合、ゲーム装置2は、ランダムに、または所定のロジックで手札を選択しても良い。
ステップS211においてゲーム装置2は、カード群データ21を更新する。すなわち、ステップS210で取得したカードについて、手札フラグおよびクローズフラグに「null値」を設定するとともに、選択フラグに「選択済」を設定する。
ステップS212においてゲーム装置2は、選択された手札の値およびスキル情報を反映する。具体的には、選択されたカードに対応づけられたスキル情報とフィールドの属性に基づいて、防御の値を更新してVa12’を算出するとともに、Bプレイヤによって選択された手札の値を更新してVb12’を算出する。ステップS213においてゲーム装置2は、スキル情報とフィールドの属性を反映後の防御の値および防御の値を比較する。攻撃の値(Vb12’)が大きい場合、制御部11のターン切り替え処理部11bが、Bプレイヤに防御に担わせ、Aプレイヤに攻撃を担わせる新たなターンに切り替える。一方、防御の値(Va12’)が大きい場合、ステップS214において、防御カード表示部D4が表示する防御カードの値Va13を算出する。ここでVa13は、Va12’−Vb12’から算出される。その後ゲーム装置2は、Va13が設定された防御カードを、ステップS215においてゲーム端末3aの防御カード表示部D4に表示するとともに、ステップS216においてゲーム端末3bの防御カード表示部D4に表示する。
さらにゲーム装置2は、引き続きBプレイヤに攻撃を担わせる。具体的には、ステップS217においてゲーム装置2は、Bプレイヤについて、手札表示部D1に選択可能なカードがあるか否かを判定する。選択可能なカードがある場合、ステップS207に進み、フィールドの属性を変更し、新たなカードの選択を促す。一方、Bプレイヤについて、手札表示部D1に選択可能なカードがない場合、ステップS218に進む。ゲーム装置2は、デッキのカード残数がゼロでない場合、ステップS201に進み、Bプレイヤのデッキから、Bプレイヤの手札が最大4枚になるように手札を決定する。一方、デッキカード残数がゼロの場合、制御部11の終了処理部11cが、Bプレイヤを敗者、Aプレイヤの勝者としてゲームを終了する。
図10を参照して、図9に記載する処理の後、ステップS213においてターンを切り替える処理を説明する。図10に示す処理は、制御部11のターン切り替え処理部11bの処理に相当する。ターン切り替え処理部11bは、攻撃を担ったプレイヤに新たに防御を担わせるとともに、この攻撃を担ったプレイヤが最後に選択したカードに設定された値を、防御の値として、表示する。その後、防御を担ったプレイヤに新たに攻撃を担わせて、新たに攻撃を担うプレイヤに対応づけられた複数のカードのうち未選択のカードから一以上のカードを選択させるように制御される。
まずステップS301においてゲーム装置2は、Bプレイヤが直近で選択したカードを、防御カードとして設定する。また防御カードの値Vb13を算出する。ここでVb13は、Vb12’−Vb12’から算出される。その後ゲーム装置2は、Vb13が設定された防御カードを、ステップS302においてゲーム端末3aの防御カード表示部D4に表示するとともに、ステップS303においてゲーム端末3bの防御カード表示部D4に表示する。
ステップS304においてゲーム装置2は、Aプレイヤの手札が最大4枚になるように、手札を決定する。例えば、デッキに含まれたカードを全て手札としても手札が4枚にならない場合、ゲーム装置2は、デッキに含まれる全てのカードを手札とする。ステップS305およびS306において、図8のステップS106およびステップS107と同様に、ゲーム端末3aにAプレイヤについて選択した手札を表示し、ゲーム端末3aから、クローズカードと指定されたカードの情報を取得する。
さらにステップS307においてゲーム装置2は、カード群データ21を更新する。ステップS308においてゲーム装置2は、Aプレイヤの手札のカードの情報と、Bプレイヤのクローズカード以外のカードの情報を、ゲーム端末3aに表示させる。同様に、ステップS309においてゲーム装置2は、Bプレイヤの手札のカードの情報と、Aプレイヤのクローズカード以外のカードの情報を、ゲーム端末3bに表示させる。その後、ステップS310においてフィールド属性を変更した後、Aプレイヤに攻撃を担わせ、Bプレイヤに防御を担わせて、図9に示す処理を実行し、新たなターンが開始される。
(スキル情報)
本発明の実施の形態において、スキル情報の一例を説明する。スキル情報は、全てのカードに対応づけられていても良いし、特定のカードに対応づけられていても良い。スキル情報は、効力を発生する条件と、その効力とが対応づけられる。効力を発生する条件は、例えば、「カードを出したタイミング」、「この後、3枚のカードを出す間」「このターンの間」、「このターンの2ターン後まで」などの効力が発生する時間条件を含む。また効力を発生する対象は、「自分自身の手札のカード」、「自分自身のデッキのカード」「相手方の手札のカード」、「相手方のデッキのカード」、「フィールドの属性」など、効力が発生する対象条件を含む。効力を発生する条件として、これ以外に適宜設定されても良い。以下、スキルの効力の一例を説明する。
スキルの効力の一例として、フィールドの属性に干渉するスキルが考えられる。具体的には、フィールドの属性の変更速度を変えたり、逆方向に変更したりするなど、変更順序を変更する効力がある。また、特定のフィールドの属性に変更する効力もある。
スキルの効力の一例として、手札の値を変更するスキルが考えられる。具体的には、手札表示部D1に表示された各カードの値を、それぞれ所定数加算したり、所定倍数したり、所定の数値に設定するなど、所定のロジックで変更する効力がある。また、相手の手札の値から所定数減らしたり、所定の割合で減らしたり、所定の数値に設定する効果もある。
スキルの効力の一例として、カードをデッキからドローする効力が考えられる。図8ないし図10に示す例において、手札表示部D1に表示されるカードがない場合や、ターンが終了した際に、デッキから手札にドローされる。しかしながら、プレイヤがこのスキル効力を有するカードをフィールドに出すことにより、このタイミングでデッキから手札をドローさせ、戦況を変える効果がある。
スキルの効力の一例として、現在発生しているスキルの効果の時間条件を延長することにより、フィールドを混乱させる効力が考えられる。また、フィールドに表示される防御カードの値にかかわらず、即座にターンを切り替える効果も考えられる。さらに、相手の手札またはデッキのカードと、自身の手札またはデッキのカードを入れ替る、相手のクローズカードをデッキの一枚と入れ替えるなど、相手の思惑を外す効果も考えられる。また、相手のクローズカードをオープンさせ、相手の戦略を漏洩させる効果も考えられる。また、自身の手札とデッキの手札とを総入れ替えし、自身の戦略を立て直す効果も考えられる。また、相手方が次に出すカードを決定し、相手の戦略を崩す効果も考えられる。さらに、相手のカードをコピーしたり、相手のカードを取り上げ自身のカードとして、自身のデッキを強化する効果も考えられる。このほか、スキルの効果として、様々なものが考えられる。
図1に示すゲームシステム5は一例であってこれに限るものではなく、様々な形態が考えられる。例えば、ゲーム装置2は、ゲーム端末の識別子、プレイヤの識別子、各プレイヤの課金情報、所持カード情報および勝敗結果などを保持し、ゲーム端末は、ゲーム装置2から、必要な情報を取得する態様が考えられる。ゲーム中は、一つのゲーム端末はホストとして、他のゲーム端末はゲストとして機能する。
具体的には、各ゲーム端末3aおよび3bには、本発明の実施の形態に係るゲームを進めるためのゲームプログラムが記憶され、または、ゲームプログラムが記憶された記憶媒体が装填される。各ゲーム端末3aおよび3bは、ゲーム装置2に適宜接続して、所持カード情報を参照または更新したり、課金情報を参照または更新したりする。
ゲームが開始されると、ホストのゲーム端末は、図1に示すゲーム装置の各機能を実現し、ホストおよびゲストのそれぞれのゲーム端末の入出力を制御する。またホストのゲーム端末は、ゲストのゲーム端末と同期してゲーム進行を制御し、ゲーム終了時に、ホストおよびゲストそれぞれのゲーム結果や所持カード情報の変更などの情報をゲーム装置2に送信し、更新させる。
またさらに他の例として、ホストのゲーム端末が、ゲーム装置2の全ての機能を実装し、ゲストのゲーム端末との対戦ゲームを提供する態様も考えられる。
また、対戦ゲームにおいて、一方がプレイヤで、もう一方がコンピュータによって制御される仮想プレイヤの場合、そのプレイヤが使用したゲーム端末において、仮想プレイヤと対戦した結果なども、ゲーム装置2に送信される。ゲーム装置2は、各ゲーム端末において、各プレイヤが仮想プレイヤと対戦した結果も収集し管理する。
このように、本発明の実施の形態に係るゲームプログラムを実行する様々なシステムが考えられる。
(その他の実施の形態)
上記のように、本発明の実施の形態によって記載したが、この開示の一部をなす論述および図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施の形態、実施例および運用技術が明らかとなる。
本発明はここでは記載していない様々な実施の形態等を含むことは勿論である。従って、本発明の技術的範囲は上記の説明から妥当な特許請求の範囲に係る発明特定事項によってのみ定められるものである。