(58)【調査した分野】(Int.Cl.,DB名)
複数のユーザのそれぞれを識別するためのユーザ識別情報に対応付けられたユーザ情報を記憶する記憶装置にアクセス可能であり、かつ、複数のユーザ同士を対戦させる処理である対戦処理を実行するゲーム制御装置であって、
対戦処理前に、第1ユーザの指示に応じて、前記第1ユーザの対戦相手の候補である複数の候補ユーザに関する情報と、前記対戦処理において前記第1ユーザが前記候補ユーザに勝利した場合に前記第1ユーザに付与される報酬の量に関する情報とを含む候補ユーザリストを、前記第1ユーザに提示する第1提示手段と、
前記第1ユーザの指示に応じて、前記候補ユーザの中から、前記対戦処理において前記第1ユーザの対戦相手となる第2ユーザを識別するためのユーザ識別情報を選択する選択手段と、
前記第1ユーザを識別するためのユーザ識別情報に対応付けられたユーザ情報と、前記選択手段によって選択されたユーザ識別情報に対応付けられたユーザ情報と、を参照して、前記第1ユーザと前記第2ユーザとの対戦処理を実行する対戦処理手段と、
前記対戦処理において前記第1ユーザが勝利した場合、前記第1ユーザを識別するためのユーザ識別情報に、前記第1ユーザに付与する報酬を示す情報を対応付けて記憶する報酬付与手段と、を備え、
前記第1提示手段は、前記候補ユーザリストに含まれる前記複数の候補ユーザのそれぞれについて、前記候補ユーザに関する情報と、前記候補ユーザに勝利した場合に前記第1ユーザに付与される前記報酬の量に関する情報との組み合わせを、前記第1ユーザが識別可能な表示態様で提示すると共に、前記報酬の量に関する情報を、前記第1ユーザが前記複数の候補ユーザ間で比較可能な表示態様で提示し、
前記報酬の量に関する情報は、前記報酬の量を暗示する情報である、
ゲーム制御装置。
【発明の概要】
【発明が解決しようとする課題】
【0005】
従来のソーシャルゲームでは、ユーザ間の対戦プレイを促進するために、対戦の勝者に報酬としてアイテムやポイントを付与すること、付与されたポイントによるランキングに基づきアイテムを付与することが行われるが、ユーザ間の対戦は非同期で行われていた。例えば、上述したデジタルカードゲームでは、各ユーザは、手持ちの複数のカードの中から攻撃用のチームに含まれるカード群と、防御用のチームに含まれるカード群とを設定する(俗に「デッキを組む」ともいう。)。このとき、ゲームにアクセス中のユーザは、攻撃用のチームに含まれるカード群を用いて他のユーザに対して対戦を仕掛ける。攻撃を仕掛けられた他のユーザ(対戦相手)は、予め設定された防御用のグループに含まれるカード群によってバトル(対戦)に応戦することになるが、そのバトルに対して影響を与えうる何らかの操作ができない仕組みとなっている。バトルを仕掛けた、ゲームにアクセス中のユーザは、バトルの結果を直ちに知ることができるが、その対戦相手は、バトルの終了後にゲームにアクセスした段階でバトルの勝敗を知ることになる。
しかし、上述した非同期の対戦において対戦の勝者に報酬を付与する場合、アクセス中のユーザは報酬を得るために自分よりも弱い他のユーザを選択して対戦プレイを行う傾向がある。この結果、弱いユーザが自分よりも強い他のユーザから集中的に対戦相手として選択され、連敗してしまうことがある。特に初心者ユーザでは、ゲームを開始して間もない時期に連敗することによりゲームを継続するモチベーションが低下し、ゲームの面白さを知る前にゲームをやめてしまうおそれがある。
【0006】
本発明は上述した観点に鑑みてなされたもので、対戦プレイにおいて弱いユーザがゲームを継続するモチベーションを維持することができる、ゲーム制御装置、ゲーム制御方法、プログラム、ゲームシステム、オンラインシステムを提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明の第1の観点は、ゲーム制御装置である。
このゲーム制御装置は、
第1ユーザと前記第1ユーザにより選択された第2ユーザとの対戦処理を実行する対戦処理手段(52)、
前記第1ユーザが勝利した場合に、前記第2ユーザの対戦履歴に基づいて変動する報酬を前記第1ユーザに付与する報酬付与手段(55)、
前記第1ユーザにより前記第2ユーザとして選択されるユーザのリストを、前記ユーザの対戦履歴に基づく情報又は前記第1ユーザに付与される報酬に関する情報とともに前記第1ユーザに対戦処理前に提示する第1提示手段(56)、
の各手段を備える。
【0008】
本発明に係るゲーム制御装置は、ユーザの通信端末上でゲームを表示するために当該通信端末との間で無線又は有線による通信を確立できるサーバ等の情報処理装置であってもよい。
本発明において「報酬」とは、ゲーム上のオブジェクトやポイント等を含む。「オブジェクト」とは、例えば、ゲーム上のキャラクタやアイテム等を含む。キャラクタは、例えばゲーム上の仮想的な人物や生物、若しくはモンスター等であり、それらがカードに表示されているものをも含む。
本発明において、「対戦履歴」とは、例えば、過去の対戦処理におけるユーザの勝利回数、敗北回数、勝率、敗率、連勝回数、連敗回数等である。
本発明において、「対戦履歴に基づく情報」とは、例えば、対戦履歴を明示する情報(例えば、「連敗回数:3回」等のテキスト)であってもよいし、対戦履歴を暗示する情報(例えば、連敗回数が2回であれば星1つの画像情報等)であってもよい。
本発明において、「報酬に関する情報」とは、例えば、報酬を明示する情報(例えば、「1000ポイント」等のテキスト)であってもよいし、報酬を暗示する情報(例えば、1000ポイントであれば星1つの画像情報等)であってもよい。
このゲーム制御装置によれば、対戦に勝利したユーザに付与する報酬を、対戦相手の対戦履歴に基づいて、弱いユーザを対戦相手として選択しないように変動させるとともに、ユーザの対戦履歴に基づく情報又は報酬に関する情報を提示することで、ユーザに自分よりも弱いユーザを対戦相手として選択しないように促すことができる。このため、弱いユーザがゲームを継続するモチベーションを維持することができる。
【0009】
上記ゲーム制御装置において、前記報酬付与手段(55)は、前記対戦処理において前記第2ユーザが敗北した場合に更新される履歴情報を用いて前記報酬を変動させてもよい。
ここで、「ユーザが敗北した場合に更新される履歴情報」とは、例えば、ユーザが敗北した場合に増加又は減少するパラメータである。ユーザが敗北した場合に増加するパラメータは、例えば、敗北回数、敗率、連敗回数等である。ユーザが敗北した場合に減少するパラメータは、例えば、勝率、連勝回数(敗北することで0となる)等である。
このゲーム制御装置によれば、ユーザが敗北した場合に更新される履歴情報を用いて、敗北回数が多いユーザ、敗率が高いユーザ、連敗回数が多いユーザを避けるように報酬を変動させることができる。
【0010】
上記ゲーム制御装置において、前記報酬付与手段(55)は、前記第2ユーザが前記対戦処理直前の対戦処理で敗北している場合、前記第1ユーザに付与される報酬を減少させてもよい。
このゲーム制御装置によれば、第2ユーザが直前の対戦処理で敗北している場合に、第1ユーザが勝利時に得られる報酬を減少させることで、直前に敗北した第2ユーザが第1ユーザによって対戦相手として狙われるのを避けることができる。
【0011】
上記ゲーム制御装置において、前記報酬付与手段(55)は、前記第2ユーザが前記対戦処理前の所定期間又は所定回数の対戦処理において連続して敗北している場合、連続敗北回数に応じて前記第1ユーザに付与される報酬を減少させてもよい。
なお、対戦処理前の所定期間又は所定回数よりもさらに前の連続敗北回数によっては報酬を減少させなくてもよい。
このゲーム制御装置によれば、連敗している第2ユーザに勝利した場合に、連続敗北回数に応じて得られる報酬が少なくなるので、連敗している第2ユーザが第1ユーザによって対戦相手として狙われるのを避けることができる。
【0012】
上記ゲーム制御装置において、前記報酬付与手段(55)は、前記対戦処理前の所定期間又は所定回数の対戦処理における前記第2ユーザの勝率が低いほど前記第1ユーザに付与される報酬を減少させてもよい。
このゲーム制御装置によれば、第2ユーザに勝利した場合に得られる報酬が、第2ユーザの勝率が低いほど少なくなるので、勝率が低い第2ユーザが第1ユーザによって対戦相手として狙われるのを避けることができる。
【0013】
上記ゲーム制御装置において、前記報酬付与手段(55)は、前記第2ユーザの対戦履歴と前記第1ユーザの対戦履歴を比較して、前記第1ユーザに付与される報酬を変動させてもよい。
このゲーム制御装置によれば、対戦するユーザ同士の対戦履歴を比較して、弱いユーザに勝利したときに得られる報酬を減らすことができるため、第1ユーザよりも相対的に弱いユーザが第1ユーザによって対戦相手として狙われるのを避けることができる。
【0014】
上記ゲーム制御装置において、
ユーザと他のユーザを関連付ける関連付け手段(57)、
前記第2ユーザが前記第2ユーザに関連付けられた第3ユーザに対して前記第1ユーザとの対戦処理への参加を要請する要請手段(58)、
前記第2ユーザの対戦相手のリストを、前記第2ユーザの対戦履歴に基づく情報又は前記第3ユーザに付与される報酬に関する情報とともに前記第3ユーザに対戦処理前に提示する第2提示手段(59)、
を備え、
前記報酬付与手段(55)は、前記第3ユーザが勝利した場合に、前記第2ユーザの対戦履歴に基づいて変動する報酬を前記第3ユーザに付与してもよい。
このゲーム制御装置によれば、対戦処理において第3ユーザが勝利した場合に、第2ユーザの対戦履歴に基づいて変動する報酬を第3ユーザに付与することで、第2ユーザが弱いほど第3ユーザが第2ユーザによって要請された対戦処理への参加を動機付けられる。このため、第2ユーザが弱いほど第3ユーザの対戦における協力を得られやすくなる。また、第1ユーザが第3ユーザからの攻撃を避けるために自分よりも弱いユーザを対戦相手として選択しないように促すことができる。このため、弱い第1ユーザがゲームを継続するモチベーションを維持することができる。
【0015】
上記ゲーム制御装置において、前記報酬付与手段(55)は、前記要請手段(58)により参加要請の対象となっている対戦処理の直前の対戦処理で前記第2ユーザが敗北している場合、前記第3ユーザに付与される報酬を増加させてもよい。
このゲーム制御装置によれば、第1ユーザが直前の対戦処理で敗北している場合に、第3ユーザが勝利時に得られる報酬を増加させることで、第2ユーザが敗北した後に要請された対戦処理への参加を第3ユーザに動機付けることができる。
【0016】
上記ゲーム制御装置において、前記報酬付与手段(55)は、前記第2ユーザが前記対戦処理前の所定期間又は所定回数の対戦処理において連続して敗北している場合、連続敗北回数に応じて前記第3ユーザに付与される報酬を増加させてもよい。
このゲーム制御装置によれば、連敗している第2ユーザに要請された対戦処理に参加して勝利した場合に、第2ユーザの連続敗北回数に応じて得られる報酬が増えるので、第2ユーザが連敗した後に要請された対戦処理への参加を第3ユーザに動機付けることができる。
【0017】
上記ゲーム制御装置において、前記報酬付与手段(55)は、前記対戦処理前の所定期間又は所定回数の対戦処理における前記第2ユーザの勝率が低いほど前記第3ユーザに付与される報酬を増加させてもよい。
このゲーム制御装置によれば、第2ユーザに勝利した場合に第3ユーザが得られる報酬が、第2ユーザの勝率が低いほど少なくなるので、勝率が低い第2ユーザに要請された対戦処理への参加を第3ユーザに動機付けることができる。
【0018】
上記ゲーム制御装置において、前記報酬付与手段(55)は、前記第1ユーザの対戦履歴と前記第2ユーザの対戦履歴を比較して、前記第3ユーザに付与される報酬を変動させてもよい。
このゲーム制御装置によれば、ユーザ同士の対戦履歴を比較して、例えば第1ユーザよりも相対的に弱い第2ユーザから参加を要請された対戦処理において勝利したときに与えられる第3ユーザへの報酬を増やすことで、第2ユーザが相対的に弱いユーザであるほど対戦処理への参加を第3ユーザに動機付けることができる。
【0019】
上記ゲーム制御装置において、前記対戦処理において減少し、対戦処理能力が制限される対戦処理用パラメータを前記第1ユーザ及び前記第2ユーザに対応付ける対応付け手段(60)を備え、
前記報酬付与手段(55)は、前記第2ユーザに対応付けられた前記対戦処理用パラメータに基づいて前記第1ユーザに付与される報酬を変動させてもよい。
このゲーム制御装置によれば、対戦処理用パラメータが減少して対戦処理能力が制限されるユーザに勝利したときに得られる報酬を減らし、特定のユーザが連続して対戦相手として選択されることを回避することができる。
【0020】
本発明の第2の観点は、ゲーム制御装置である。
このゲーム制御装置は、
第1ユーザと前記第1ユーザにより選択された第2ユーザとの対戦処理を実行する対戦処理手段(52)、
前記対戦処理において減少し、対戦処理能力が制限される対戦処理用パラメータを前記第1ユーザ及び前記第2ユーザに対応付ける対応付け手段(60)、
前記第1ユーザが勝利した場合に、前記第2ユーザの対戦処理用パラメータに基づいて変動する報酬を前記第1ユーザに付与する報酬付与手段(55)、
前記第1ユーザにより前記第2ユーザとして選択されるユーザのリストを、前記ユーザの対戦処理用パラメータに関する情報又は前記第1ユーザに付与される報酬に関する情報とともに前記第1ユーザに対戦処理前に提示する第1提示手段(56)、
の各手段を備える。
【0021】
本発明の第3の観点は、ゲーム制御装置である。
このゲーム制御装置は、
第1ユーザと前記第1ユーザにより選択された第2ユーザとの対戦処理を実行する対戦処理手段(52)、
前記対戦処理の結果を記憶装置に記憶させる記憶手段(53)、
前記記憶装置から前記第2ユーザの敗北履歴を取得し、前記第2ユーザの敗北履歴に基づく報酬を決定する決定手段(54)、
前記第1ユーザが勝利した場合に、前記決定手段(54)により決定された報酬を前記第1ユーザに付与する報酬付与手段(55)、
前記第1ユーザにより前記第2ユーザとして選択されるユーザのリストを、前記ユーザの敗北履歴に基づく情報又は前記第1ユーザに付与される報酬に関する情報とともに前記第1ユーザに対戦処理前に提示する第1提示手段(56)、
の各手段を備える。
なお、「敗北履歴」には、例えば、敗北回数、敗率、連敗回数等が含まれる。
【0022】
本発明の第4の観点は、ゲーム制御方法である。
このゲーム制御方法は、
第1ユーザと前記第1ユーザにより選択された第2ユーザとの対戦処理を実行するステップ、
前記第1ユーザが勝利した場合に、前記第2ユーザの対戦履歴に基づいて変動する報酬を前記第1ユーザに付与するステップ、
前記第1ユーザにより前記第2ユーザとして選択されるユーザのリストを、前記ユーザの対戦履歴に基づく情報又は前記第1ユーザに付与される報酬に関する情報とともに前記第1ユーザに対戦処理前に提示するステップ、
を含む。
【0023】
本発明の第5の観点は、コンピュータに、
第1ユーザと前記第1ユーザにより選択された第2ユーザとの対戦処理を実行する機能、
前記第1ユーザが勝利した場合に、前記第2ユーザの対戦履歴に基づいて変動する報酬を前記第1ユーザに付与する機能、
前記第1ユーザにより前記第2ユーザとして選択されるユーザのリストを、前記ユーザの対戦履歴に基づく情報又は前記第1ユーザに付与される報酬に関する情報とともに前記第1ユーザに対戦処理前に提示する機能、
を実現するためのプログラムである。
【0024】
コンピュータは、例えばネットワークサーバ、大型計算機等であってよい。また、このプログラムは、光ディスク(DVD−ROM、CD−ROM等)、フレキシブルディスク、半導体メモリ等のコンピュータ読み取り可能な情報記憶媒体に格納されてもよい。
【0025】
本発明の第6の観点は、複数のユーザの通信端末(10)と、当該通信端末(10)からアクセスされるサーバ(20)とを含む、ゲームシステムである。
このゲームシステムは、
第1ユーザと前記第1ユーザにより選択された第2ユーザとの対戦処理を実行する対戦処理手段(52)、
前記第1ユーザが勝利した場合に、前記第2ユーザの対戦履歴に基づいて変動する報酬を前記第1ユーザに付与する報酬付与手段(55)、
前記第1ユーザにより前記第2ユーザとして選択されるユーザのリストを、前記ユーザの対戦履歴に基づく情報又は前記第1ユーザに付与される報酬に関する情報とともに前記第1ユーザに対戦処理前に提示する第1提示手段(56)、
の各手段を、前記通信端末(10)または前記サーバ(20)のいずれか一方が備える。
【0026】
なお、上記では、本発明の理解を容易にするため、適宜図面に記載された符号を括弧書きで記載しているが、これにより本発明に係るゲーム制御装置等が図示の態様に限定されるものではない。
【発明の効果】
【0027】
本発明のゲーム制御装置、ゲーム制御方法、プログラム、ゲームシステムによれば、対戦プレイにおいて弱いユーザがゲームを継続するモチベーションを維持することができる。
【発明を実施するための形態】
【0029】
以下、本発明のゲームシステムの一実施形態について説明する。
【0030】
(1)ゲームシステムの構成
図1は、実施形態のゲームシステムのシステム構成例を示している。
図1に示すように、このゲームシステムは、例えばインターネットなどの通信網NW(ネットワーク)に接続可能な通信端末10a,10b,10c,…と、通信網NWに接続されているゲームサーバ20と、データベースサーバ30とによって構成されている。各通信端末10a,10b,10c,…はそれぞれ、個々のユーザによって操作される端末であり、例えば、携帯端末、スマートフォン、PDA(Personal Digital Assistant)、パーソナルコンピュータ、双方向の通信機能を備えたテレビジョン受像機(いわゆる多機能型のスマートテレビも含む。)などの通信端末である。なお、以下の説明において、各通信端末10a,10b,10c,…に共通して言及するときには、通信端末10と表記する。
このゲームシステムにおいて、ゲームサーバ20は、クライアントである通信端末10と通信可能に構成されており、通信端末10に対してゲーミングサービスを提供する。ゲームサーバ20には、ゲーム用アプリケーションとしてウェブブラウザ上で動作可能なアプリケーションが実装されている。データベースサーバ30は、ゲームを実行する上での後述する様々な情報を格納しており、それらの情報の読み書きのためにゲームサーバ20と有線又は無線で接続される。なお、ゲームサーバ20とデータベースサーバ30は、通信網NWを介して接続してもよい。
通信端末10は、ゲームサーバ20によって提供されるウェブページを表示可能なウェブブラウザを備えており、ユーザは、通信端末10上でウェブページに対する操作を行うことにより、ゲームを実行する。
【0031】
また、
図1には図示していないが、ゲームサーバ20とは別に各通信端末10のユーザを認証するための認証サーバを設けてもよい。また、多くの通信端末10からのアクセスを受け入れるために複数のゲームサーバ20を設ける場合は、その複数のゲームサーバ20間の負荷を調整するためのロードバランサを設けてもよい。また、ゲームサーバ20は単一のサーバ装置として構成してもよいが、機能を分散させた複数のサーバ装置として構成してもよい。
【0032】
(2)通信端末の構成
図2A、
図2B及び
図3を参照して通信端末10について説明する。
図2A、
図2Bは、通信端末10の外観の例を示す図である。
図2Aは、例えば折り畳み式の携帯端末(携帯電話機)などの釦入力方式の通信端末を例示したものであり、
図2Bは、例えばスマートフォンなどのタッチパネル入力方式の通信端末を例示したものである。
図3は、通信端末10の内部構成を示すブロック図である。
図3に示すように、通信端末10は、CPU(Central Processing Unit)11、ROM(Read Only Memory)12、RAM(Random Access Memory)13、画像処理部14、指示入力部15、表示部16、及び、信号送受信部としての通信インタフェース部17を備えており、各部間の制御信号あるいはデータ信号を伝送するためのバス18が設けられている。
【0033】
CPU11は、ROM12内のウェブブラウザをRAM13にロードして実行する。そして、CPU11は、指示入力部15等によってユーザに入力されるURL(Uniform Resource Locator)の適切な指定に基づき、通信インタフェース部17を介して、ゲームサーバ20からウェブページを表示するためのデータ、すなわち、HTML(HyperText Markup Language)文書や当該文書と関連付けられた画像などのオブジェクトのデータ(以下、総称して適宜「HTMLデータ」と表記する。)を、通信インタフェース部17を介して取得し、そのHTMLデータを解釈する。なお、通信端末10には、ウェブブラウザのブラウザ機能を拡張するための様々なプラグインが実装されていてよい。そのようなプラグインの一例は、アドビシステムズ社(米国)によるフラッシュプレイヤである。あるいは、本実施形態でのHTMLデータを、動画及び音声の再生機能を備えたHTML5形式としてもよい。
なお、HTMLデータの取得に当たって、CPU11は、予め登録されたユーザID(ユーザ識別情報)、あるいは指示入力部15を介して入力されるユーザIDを含むアクセス要求メッセージを、通信インタフェース部17を介してゲームサーバ20へ通知する。
【0034】
ウェブブラウザは、ゲームサーバ20とHTTP(HyperText Transfer Protocol)に従った通信を行う。ウェブブラウザは、ゲームサーバ20から取得したHTMLデータを解釈して、画像処理部14を介してウェブページを表示部16に表示する。また、ウェブブラウザは、ユーザが指示入力部15の操作によってウェブページ上のハイパーリンク(Hyperlink)またはメニューが選択されると、ウェブページの更新のために、その選択結果に応じたHTTPリクエストをゲームサーバ20に送信する。
【0035】
画像処理部14は、HTMLデータの解析結果としてCPU11から与えられる表示用画像データに基づいて、表示部16にウェブページを表示する。表示部16は、例えば、マトリクス状に画素単位で配置された薄膜トランジスタを含むLCD(Liquid Cristal Display)モニタであり、表示用画像データに基づいて薄膜トランジスタを駆動することでウェブページの画像を表示画面16aに表示する。
【0036】
通信端末10が釦入力方式の通信端末(
図2Aに示す)である場合、指示入力部15は、ユーザの操作入力を受け入れるための方向指示釦と決定釦などの複数の指示入力釦を含む釦群15a、及び、テンキーなどの複数の指示入力釦を含む釦群15bを備え、各釦の押下(操作)入力を認識してCPU11へ出力するためのインタフェース回路を含む。例えば、方向指示釦は、表示部16に表示されているウェブページをスクロールして表示することをCPU11へ指示するために設けられる。また、決定釦は、例えばウェブページ上で複数のハイパーリンクまたはメニューが表示されるときに、アクティブ表示(例えば強調表示)されている1つのハイパーリンクまたはメニューをユーザが選択することをCPU11へ指示するために設けられる。なお、通信端末10を小型の携帯端末によって構成する場合には、これらの釦は、ユーザが通信端末10を片手で保持したままその親指で操作(クリック)しやすいように、通信端末10の前面に配置されていることが好ましい。
図2Bに示す例では、釦群15bは、釦群15aの下方に配置され、「0」〜「9」、「*」、「#」(テンキー)が表記された複数の指示入力釦を含む。
【0037】
通信端末10がタッチパネル入力方式の通信端末(
図2Bに示す)である場合、指示入力部15は、主として表示画面16aに指先あるいはペンで触れることによるタッチパネル方式の入力を受け付ける。タッチパネル入力方式は、静電容量方式などの公知の方式でよい。なお、
図2Bに示すように、通信端末10がタッチパネル入力方式の場合であっても釦群15aが設けられる場合もある。
【0038】
通信端末10に表示されるウェブページ上のメニューの選択は、例えば通信端末10が携帯端末である場合には、方向指示釦の押下操作によってメニューを選択し、決定釦の押下操作によって、選択したメニューを確定することによって行われる。また、メニューの選択は、例えば通信端末10がタッチパネル入力方式の場合には、ウェブページが表示されている表示画面16a上のメニューの位置を指あるいはペンで指示(タッチ操作)することによって行われる。
【0039】
(3)ゲームサーバの構成
図4を参照してゲームサーバ20の構成について説明する。
ゲームサーバ20は、例えば階層構造の複数のウェブページからなるゲームのウェブサイトを管理しており、通信端末10に対してゲームのウェブサービスを提供する。
図4に示すように、ゲームサーバ20は、CPU21、ROM22、RAM23、データベース(DB)アクセス部24、及び、通信インタフェース部25を備えており、各部間の制御信号あるいはデータ信号を伝送するためのバス26が設けられている。なお、ゲームサーバ20は、ハードウエアに関しては汎用のウェブサーバと同一の構成をとることができる。
【0040】
ROM22には、クライアントである通信端末10のウェブブラウザに対してHTML文書や画像などのオブジェクトの表示(ウェブページの表示)のサービスを提供するアプリケーションプログラムが格納されている。ROM22には、アプリケーションプログラム以外にもCPU21によって参照される各種データが格納されている。
CPU21は、ROM22内のゲームプログラムをRAM23にロードして実行し、通信インタフェース部25を介して、各種の処理を行う。
【0041】
例えば、CPU21は、通信インタフェース部25を介して、ゲームサーバ20のウェブブラウザとの間でHTTPに従った通信を行う。例えば、CPU21は、通信インタフェース部25を介して、通信端末10から受信したHTTPリクエスト(例えば、ウェブページ上でのユーザのハイパーリンクまたはメニューの選択結果を含む。)に基づいて所定のデータ処理や、演算処理を行い、その処理結果を含むHTTPレスポンスをゲームサーバ20のウェブブラウザに返す。HTTPレスポンスには、ウェブページを更新するためのHTMLデータが含まれる。また、ゲームサーバ20が通信端末10のユーザの認証処理を行う場合には、CPU21はその認証処理を行う。
データベースアクセス部24は、CPU21がデータベースサーバ30に対してデータの読み書きを行うときのインタフェースである。
【0042】
(4)データベースサーバの構成
データベースサーバ30(記憶装置)は、大容量のハードディスク装置やRAID(Redundant Arrays of Inexpensive Disks)等の形態の装置等、汎用ストレージで実現できる。データベースサーバ30内の各データベースは、ゲームサーバ20のデータベースアクセス部24を介してCPU21からのデータの読み書きが可能となるように構成されている。
図5に、データベースサーバ30の構成の一例を示す。
図5に示すように、データベースサーバ30は、ユーザデータベース(ユーザDB)31と、ゲームデータベース(ゲームDB)32を備える。
【0043】
本実施形態のゲームのタイプは特に限定されるものではないが、以下では、実施形態のゲームの一例として、モンスターカード(以下適宜、単に「カード」という。)を用いたデジタルカードゲーム(以下適宜、単に「ゲーム」あるいは「本実施形態のゲーム」という。)を採り上げる。このゲームは、ユーザが、モンスターが描かれたデジタルカード(モンスターカード)を入手することによって自らのチーム(カードデッキ)を作り上げ、コンピュータ又は他のユーザのチームとバトルを行うように構成されている。なお、カードデッキは、一般的に複数のカードによって構成されている。
このゲームは、例えば、以下の処理を含む。
・クエスト処理:
少なくとも一枚のカードからなる自らのチームを作り上げていくために、ゲーム上で設定されているエリアを探索してカードを得る処理である。このゲームでは、クエスト処理を実行することで一定量の体力ポイント(後述する)を消費し、一定量の強化ポイント(後述する)を獲得する。
・対戦処理:
ユーザのチームと、コンピュータ又は他のユーザのチームとの間で対戦を行う処理である。ここで、コンピュータのチームとは、例えばCPU21によって任意に抽出された複数のカードからなるチームである。対戦処理では、ユーザの入力に基づき、ユーザのチームとコンピュータのチームとの間で対戦を行うイベント(以下、COM対戦という。)、あるいはユーザのチームと他のユーザのチームとの間で対戦を行うイベント(以下、ユーザ間対戦という。)のいずれかが発生するようになっている。対戦処理において勝利したユーザは対戦相手に応じた強化ポイントを獲得し、敗北したユーザは自身の保有する強化ポイントの一部を失う。
なお、ここでは詳しく述べないが、本実施形態のゲームは、ユーザがゲーム上保有するカードから、対戦処理に用いられるチームを構成するカードを選択して登録する(チームを編成する)編成処理を含んでいる。
【0044】
また、ここでは詳しく述べないが、本実施形態のゲームは、例えば、ユーザがゲーム上保有するカードを強化するための強化処理等を含んでもよい。
【0045】
図6A、
図6Bに、本実施形態のゲームにおいて適用されるユーザデータベース31の一例を示す。
図6Aに示すように、ユーザデータベース31は、ユーザID(ユーザ識別情報)ごとに、ユーザ名/表示画像、進行レベル、体力ポイント、強化ポイント、抽選ポイント、仲間のユーザID、保有カード、アイテムの識別コード、攻撃P(攻撃ポイント)現在値/最大値、防御P(防御ポイント)現在値/最大値、の各項目についての情報を含む。
【0046】
以下の説明では、ユーザデータベース31に含まれるユーザIDごとのデータを総称してユーザデータという。ユーザデータを構成するデータのうち、
図6Aの各項目のデータは、以下のとおりである。
・ユーザ名/表示画像
ゲームの実行時に通信端末10のユーザを特定するために表示されるユーザ名及び表示画像である。ユーザ名はユーザによって予め指定される所定長以下のテキストであり、表示画像は例えばユーザによって予め選択されるアバタ画像である。ユーザ名は、ゲームサーバ20によって提供されるネットワーク環境(あるいはゲームコミュニティ)上でユーザを特定する名称である。
・進行レベル
ゲーム上のユーザの進行レベルを示すデータである。例えばLv1(レベル1)からLv100(レベル100)までの範囲のレベル値であり、例えば、クエスト処理が継続的に実行されることで、順次進行レベルが上がるように構成される。
・体力ポイント
体力ポイントは、ユーザがクエスト処理を行う際に消費するコストを示すパラメータであり、ユーザがクエスト処理を行うことで、体力ポイントは減少する。ユーザ毎に体力ポイントの上限値を定めてもよく、体力ポイントの上限値は、進行レベルが増加するにつれて増加するように設定されていてもよい。体力ポイントは、時間の経過によって上限値まで増加(回復)するように設定してもよい。
・強化ポイント
ユーザが、クエスト処理や対戦処理においてシステム又は他のユーザより取得したポイントである。このゲームでは、ユーザがカードを強化する強化処理を行う際に所定量の強化ポイントが消費される。
・抽選ポイント
抽選ポイントは、ユーザが抽選処理を行う際に消費するコストを示すパラメータであり、ユーザが抽選処理を行うことで、抽選ポイントは減少する。このゲームでは、他のユーザとの間で例えばメッセージの送受信等の交流を行うことで、ユーザが抽選ポイントを獲得する。なお、抽選ポイントは、時間の経過によって増加するように設定してもよい。
・仲間のユーザID
例えば仲間になるための申請などを契機として、ユーザと関連付けられた他のユーザ(仲間)のユーザIDのリストである。
・保有カード、アイテムの識別コード
ユーザがゲーム上保有するカードやアイテム(体力ポイントを回復させる回復アイテム等)の識別コードである。識別コードに対応するカード等のデータの内容については後述する。
・攻撃P(攻撃ポイント)現在値/最大値
対戦処理において、ユーザが攻撃側となった場合に使用可能なカードのコストである。攻撃ポイントは、ユーザが攻撃側となった場合に、使用したカードのコストに応じて減少し、時間の経過に応じて(例えば、2分ごとに1ポイント)最大値まで回復する。なお、
図6Aでは、○/○の形式で、現在値/最大値が記載されている。
・防御P(防御ポイント)現在値/最大値
対戦処理において、ユーザが防御側となった場合に使用可能なカードのコストである。防御ポイントは、ユーザが防御側となった場合に、一定の割合(例えば、20%)減少し、時間の経過に応じて(例えば、2分ごとに1ポイント)最大値まで回復する。なお、
図6Aでは、○/○の形式で、現在値/最大値が記載されている。
なお、攻撃ポイント及び防御ポイントの最大値は、ユーザの進行レベルに応じて増加するように設定してもよい。また、攻撃側となった場合と防御側となった場合とで使用可能なカードのコストを示すパラメータを分けずに、同一のパラメータを用いてもよい。
【0047】
また、ユーザデータベース31は、
図6Bに例示する対戦履歴データベースを含む。対戦履歴データベースは、ユーザIDごとに、後述する対戦処理における対戦履歴に基づく情報を含む。本実施形態では、対戦履歴に基づく情報は、勝利回数、敗北回数、連勝回数、連敗回数、等を含む。各項目のデータは、以下のとおりである。
・勝利回数
対戦処理におけるユーザの勝利回数である。
・敗北回数
対戦処理におけるユーザの敗北回数である。
・連勝回数
対戦処理におけるユーザの連続勝利回数である。なお、連勝回数は、ユーザが対戦処理において敗北することで0に戻る。
・連敗回数
対戦処理におけるユーザの連続敗北回数である。なお、連敗回数は、ユーザが対戦処理において勝利することで0に戻る。
なお、対戦履歴データベースは、対戦履歴に基づく情報として、勝率、敗率等のデータをさらに含んでもよい。
なお、
図6Bでは、ユーザが攻撃した場合(攻撃側となった場合)とユーザが攻撃された場合(防御側となった場合)とで別々に勝利回数、敗北回数、連勝回数、連敗回数を記録しているが、両者を合算してもよい。
勝利回数、敗北回数、連勝回数、連敗回数は、対戦処理が行われることにより更新される。なお、所定期間(例えば1日、1週間)毎に、連勝回数、連敗回数に「0」を書き込むことで、連勝回数、連敗回数をリセットしてもよい。また、所定回数の対戦処理が行われる毎に「連勝回数」及び「連敗回数」のリセットを行ってもよい。
ユーザデータベース31に含まれる情報は、ゲームサーバ20によって逐次更新されうる。
【0048】
図5に戻り、ゲームデータベース32は、ゲームサーバ20からのアクセスに基づき、ゲームサーバ20によって実行されたゲームの進行に関する情報を記憶、更新する。ゲームの進行に関する情報は、ゲームの性質によって多様な情報を含みうる。
また、ゲームデータベース32は、上述した各種処理に関連して、カードデータベースを記憶する。
【0049】
カードデータベースは、本実施形態のゲームで用意される全てのカードの情報が記述されているデータベースである。
図7は、カードデータベースのデータ構成の一例を示す図である。
図7に例示するカードデータベースは、カードの識別コード(図の例では、MC001,MC002,…)ごとに、対象となるカードの画像データ(画像)、対象となるカードの名前(モンスター名)、対象となるカードのパラメータ(図の例では、モンスターの能力を示す攻撃力や防御力及びレア度)、及びカードの使用コストの各項目のデータを含む。例えば、攻撃力や防御力などのパラメータが大きいほど、カードに対応するモンスターの対戦処理等における能力が高いことを示すように設定されてもよい。
また、レア度は、カードの希少価値の度合を示す値であり、例えば、その値が高い(つまり、希少価値が高い)ほど、ゲーム内で出現する確率が低く設定されてもよい。例えば、レア度を1〜5の5段階で表した場合、能力の際立ったモンスターや人気のあるモンスターに対応するカードのレア度が高く(例えば、4あるいは5など)設定されてもよい。
使用コストは、対戦処理においてカードを使用するのに必要な攻撃ポイントまたは防御ポイントの値である。レア度が高いカードほど使用コストが高く設定されてもよい。
【0050】
(5)本実施形態のゲーム
以下、本実施形態のゲームについて、
図8、
図9を参照しながら説明する。
なお、以下の説明において、通信端末10に表示されるウェブページ上で表示されるメニュー、マーク等はウェブページ上で所望の位置に配置されるものであって、通信端末10で視認されるメニュー、マーク等の表示画面上の位置は、ユーザの方向指示釦あるいはタッチパネル操作によるウェブページのスクロール操作によって変化しうる。
【0051】
図8のトップページP1は、モンスター画像表示領域101、ユーザデータ表示領域102及びメニュー表示領域103を含む。トップページP1は処理対象のユーザ毎に構成されるが、
図8のトップページP1は、処理対象のユーザが「A」というユーザ(以下、「ユーザ:A」と表記する。)である場合の例である。
モンスター画像表示領域101は、処理対象となるユーザのユーザデータベースに記録された識別コードに対応する複数のカードのうち、当該ユーザによって予め指定されたカードの画像が表示される領域である。ユーザデータ表示領域102は、処理対象となるユーザのユーザデータベースに記録された、進行レベル、体力ポイント等の各項目のデータ(
図6A参照)が表示される領域である。メニュー表示領域103には、本実施形態のゲームに設けられるイベント処理(クエスト処理、対戦処理)にそれぞれ対応するメニューm1(「クエスト」)、メニューm2(「対戦」)が含まれる。なお、メニュー表示領域103には、上述した編成処理、強化処理に対応するメニューが含まれてもよい。
このトップページP1上で、メニューm1、m2が選択されることで、ゲームの実行が開始される。
【0052】
〔クエスト処理〕
先ず、クエスト処理の一例を説明する。
図8のトップページP1上でユーザ:Aがメニューm1を選択すると、クエスト処理が開始され、P2に示すようにウェブページが更新される。ウェブページP2には、探索の対象となるエリアの進行度合いを示す達成率のゲージと、探索の対象となるエリアの探索処理を実行するための「クエスト実行」と表記されたメニューm10と、1回の探索に要する体力ポイントの値、1回の探索で得られる強化ポイントなどが含まれる。
ユーザ:Aがメニューm10を選択する度に、所定の条件に沿った、あるいはランダムな増加量で達成率の値が増加する。そして、達成率が100%に達すると、エリアの探索が終了して次のエリアに進むことができる。メニューm10が選択される度に、ユーザ:Aの体力ポイントが所定量(
図8の例では、8)だけ消費される。探索対象のエリアは、複数設けられてもよい。
ウェブページP2においてメニューm10の選択を繰り返し行うと、上述したように体力ポイントが低下していくが、体力ポイントが1回の探索に要する体力ポイント(例えば8)よりも少なくなると、それ以上探索の実行ができない状態となる。その場合、ユーザが再び探索を実行できるようになるには、時間の経過によって体力ポイントが回復(増加)するまで待機することが必要となる。
なお、クエスト処理では、メニューm10が選択される度に、所定の、あるいはランダムな確率で、ゲーム上で用意されているカードあるいはアイテムなどのオブジェクトをユーザが入手できるように構成されている。メニューm10が選択されたときにユーザがカードを入手したときは、例えばP3に示すように、入手したカードの情報を含むウェブページに更新される。
【0053】
〔対戦処理〕
次に、対戦処理の一例を説明する。
図8のトップページP1上でメニューm2が選択されると、対戦処理が開始され、
図9のP4に示すようにウェブページが更新される。ウェブページP4には、攻撃側ユーザ(ユーザ:A)の対戦相手(防御側ユーザ)の候補となる他のユーザ:B、C、D、Eの情報とともに、対戦相手を決定するためのメニューm21〜24(「対戦」)などが含まれる。
また、他のユーザ:B、C、D、Eの情報には、それぞれ、ユーザ:Aが対戦して勝利したときに得られる報酬に関する情報が含まれる。ウェブページP4の例では、報酬に関する情報として、ユーザ:Bの欄に星が1つ、ユーザ:Cの欄に星が3つ、ユーザ:Dの欄に星が2つ、ユーザ:Eの欄に星が3つ、それぞれ含まれる。星の数は、ユーザ:Aが対戦して勝利したときに得られる報酬を暗示しており、ウェブページP4では、例えば、ユーザ:Bに勝利した場合よりもユーザ:Dに勝利したほうが得られる報酬が多いことを示している。
【0054】
ウェブページP4上でユーザ:Aが例えばユーザ:Eに対応するメニューm24を選択すると、P5に示すようにウェブページが更新される。ウェブページP5には、ユーザ:Aの対戦相手として選択されたユーザ:Eの画像とともに、対戦の実行を指示するためのメニューm25(「対戦開始」)等が含まれる。なお、図示しないが、ウェブページP5は、ユーザ:Aのチームの編成処理用のウェブページへのショートカットメニューを含んでいてもよい。
ウェブページP5上でユーザ:Aがメニューm25(「対戦開始」)の選択を行うと、ユーザ:Aのチームと対戦相手であるユーザ:Eのチームとの間で対戦が行われる。ここで、ユーザ:Aのチームは、チームを構成するカードとしてユーザ:Aが登録したカードから、カードの使用コストがユーザ:Aの攻撃ポイントの現在値の範囲内となるように決定される。同様に、ユーザ:Eのチームは、チームを構成するカードとしてユーザ:Eが登録したカードから、カードの使用コストがユーザ:Eの防御ポイントの現在値の範囲内となるように決定される。
なお、ユーザ間の対戦は非同期で行われるため、ユーザ:Eとの対戦を開始する際に、ユーザ:Aはユーザ:Eから対戦の承諾を得る必要はない。
対戦処理は、例えば、攻撃側のチームのカード情報、および、防御側のチームのカード情報に基づいて実施される。例えば、攻撃側のチームのカードの攻撃力の総和と、防御側のチームのカードの防御力の総和とを比較し、数字が大きい側を勝利、小さい側を敗北と決定することで、対戦結果を決定することができる。
なお、本実施例では、攻撃ポイント、防御ポイントに応じて使用できるカードが選択され、選択されたカードに基づき、攻撃力、防御力が決定されるような対戦処理としたが、対戦処理はこれに限られない。例えば、攻撃ポイントや防御ポイントをデータとして持たずに、ユーザが登録しているカード(オブジェクト)の攻撃力・防御力で対戦を行っても良いし、ユーザ:Aがあらかじめ登録した攻撃側のチームのカードの攻撃力の総和に、ユーザ:Aの攻撃ポイントの現在値/最大値の割合を乗じた値と、ユーザ:Eがあらかじめ登録した防御側のチームのカードの防御力の総和に、ユーザ:Eの防御ポイントの現在値/最大値の割合を乗じた値とを比較し、数字が大きい側を勝利、小さい側を敗北と決定してもよい。
また、対戦処理は攻撃力・防御力等のパラメータの総和の比較によるものに限らず、チームに設定されたカードの攻撃力・防御力を所定の計算式により変動させた上で比較し勝敗を決定してもよいし、パラメータの数値の大小に応じて勝つ確率を変動させた上で抽選処理を行い、勝敗を決定してもよい。
【0055】
対戦が終了すると、対戦の結果を通知するウェブページ(P6に例示するウェブページ)がユーザ:Aの通信端末10上に表示される。なお、ウェブページP6は、ユーザ:Aが対戦に勝利した場合に通信端末10の表示部16に表示されるウェブページの一例を示している。このゲームでは、ユーザ:Aが対戦相手であるユーザ:Eに勝利すると、所定量の強化ポイント(
図9の例では1000)又は所定のアイテムが特典としてユーザ:Aに付与される。なお、ウェブページP4で提示された星の数により、ユーザ:Aが勝利したときに付与される強化ポイント又はアイテムを変動させてもよい。例えば、星が3つ提示されたユーザ:Cに勝利した場合には、星が1つのみ提示されたユーザ:Eに勝利した場合よりも多くの強化ポイント(例えば、3000ポイント)が付与される。あるいは、星の数に応じたアイテムを付与してもよい。
なお、防御側ユーザであるユーザ:Eが勝利した場合には、ユーザ:Eに特典が付与される。この場合、ユーザ:Eに付与する特典は変動させなくてもよいし、攻撃側ユーザ:Aの対戦履歴に応じて変動させてもよい。
【0056】
(6)ゲーム制御装置における各機能の概要
本実施形態では、ゲームサーバ20及びデータベースサーバ30によってゲーム制御装置が構成されている。以下では、上述したゲームが適用される場合を例として、本実施形態のゲーム制御装置で実現される機能について、
図10を参照して説明する。
図10は、本実施形態のゲーム制御装置で主要な役割を果たす機能を説明するための機能ブロック図である。
なお、
図10の機能ブロック図において、対戦処理手段52、報酬付与手段55、及び第1提示手段56が本発明の主要な構成に対応している。その他の手段(つまり、実行手段51、記憶手段53、決定手段54)は必ずしも必須の構成ではないが、本発明をさらに好ましくするための構成要素である。
【0057】
実行手段51は、通信端末10に対するユーザのウェブページ上の選択に応じてHTTPリクエストを受信し、通信端末10に表示されるウェブページを逐次更新するためのHTMLデータ(つまり、HTTPレスポンス)を送信することで、ウェブサービスにより本実施形態のゲームを実行する機能を備える。
実行手段51は、ゲームで実行される複数の処理が各々割り当てられた複数のメニューを通信端末10に表示させる。具体的には、CPU21は、複数のメニューを含むウェブページを表示するためのHTMLデータを生成して通信端末10宛に送信する。そして、CPU21は、通信端末10においてウェブページ上のメニューが選択されたときに、選択されたメニューについての情報を通信端末10から受信し、受信した情報に基づいて、選択されたメニューに割り当てられた処理を実行する。CPU21は、処理の実行結果を含むHTMLデータを生成して通信端末10へ返す。
【0058】
実行手段51がクエスト処理を実行する機能は、例えば以下のようにして実現される。
ゲームサーバ20のCPU21は、トップページ(
図9のP1に例示するウェブページ)上でメニューm1が選択されると、クエスト処理用のウェブページ(
図9のP2に例示するウェブページ)を表示するためのHTMLデータを生成して、ユーザの通信端末10宛に送信する。次に、CPU21は、メニューm10(「クエスト実行」)の選択結果を含むHTTPリクエストを受信すると、以下の一連の処理を行う。すなわち、CPU21は、ユーザデータベースにアクセスし、対象となるユーザIDの体力ポイントの値を更新する(減少させる)。次に、CPU21は、ユーザの達成率の値を所定量だけ増加させる。さらに、CPU21は、例えば、増加した達成率の値を含むHTMLデータを生成して、ユーザの通信端末10へ送信する。このとき、CPU21は、達成率の値が100%に達したと判断した場合には、探索対象を次のエリアに移行するように、HTMLデータを生成する。
クエスト処理では、探索対象となるエリアごとに、1回の探索に要する体力ポイントが異なってもよい。つまり、探索対象となるエリアごとに、1回の探索で減少する(消費される)体力ポイントの量が異なってもよい。例えば、ユーザの進行レベルが上がるごとに、消費される体力ポイントの量を多くしてもよい。
【0059】
対戦処理手段52は、攻撃側ユーザ(第1ユーザ)と、攻撃側ユーザにより選択された防御側ユーザ(第2ユーザ)との対戦処理を実行する機能を備える。この機能は、例えば以下のようにして実現される。ゲームサーバ20のCPU21は、ウェブページP5上でメニューm20(「対戦開始」)が選択されたことを認識した場合、CPU21は、ユーザデータベースにアクセスし、攻撃側ユーザの攻撃ポイントの現在値、及び、防御側ユーザの防御ポイントの現在値を取得する。次に、CPU21は、取得した攻撃ポイントの現在値に基づいて攻撃側ユーザのチームを構成するカードを決定するとともに、取得した防御ポイントの現在値を用いて防御側ユーザのチームを構成するカードを決定する。
ここで、CPU21は、チームを構成するカードとして攻撃側ユーザが登録したカードから、カードの使用コストが攻撃ポイントの現在値の範囲内となるように攻撃側ユーザのチームを構成するカードを決定する。同様に、CPU21は、チームを構成するカードとして防御側ユーザが登録したカードから、カードの使用コストが防御ポイントの現在値の範囲内となるように、防御側ユーザのチームを構成するカードを決定する。
次に、CPU21は、攻撃側ユーザのチームと、対戦相手として選択された防御側ユーザのチームとの対戦結果を決定する処理を行う。
本実施形態では、攻撃側ユーザと防御側ユーザとの対戦は、非同期で行われる。つまり、攻撃側ユーザの対戦相手は、防御側ユーザによるアクセスの如何に関わらず、攻撃側ユーザによる選択によって決定される。
対戦結果の決定方法は、各チームに含まれるカードのパラメータの値がその勝敗に影響を与える方法である限り如何なる方法を採ることができる。例えば、対戦を行う2つのチームの各々に含まれる複数のカードのパラメータの値の合計を比較し、合計が大きな方のチームが高い確率(例えば、60〜90%の範囲内の所定の確率)をもって勝利するように設定してもよい。この勝率は、パラメータの値の合計の差が大きいほど高い確率としてもよい。このとき、
図7に示したように、パラメータの値を示す項目が複数(
図7の例では、攻撃力と防御力の2つ)存在する場合には、各カードのパラメータの値を代表する値として、各項目の値に対して所定の重み付け(例えば、
図7の例では、「攻撃力」を0.4、「防御力」を0.2の重み付けにする等)を行うことにより、総合的なパラメータの値を設定してもよい。
なお、攻撃側のチームのカードの攻撃力の総和と、防御側のチームのカードの防御力の総和とを比較する代わりに、攻撃側ユーザがあらかじめ登録した攻撃側のチームのカードの攻撃力の総和に、攻撃側ユーザの攻撃ポイントの現在値/最大値の割合を乗じた値と、防御側ユーザがあらかじめ登録した防御側のチームのカードの防御力の総和に、防御側ユーザの防御ポイントの現在値/最大値の割合を乗じた値とを比較し、数字が大きい側を勝利、小さい側を敗北と決定してもよい。
【0060】
記憶手段53は、対戦処理の結果を記憶装置に記憶させる機能を備える。記憶手段53の機能は、例えば以下のようにして実現される。ユーザデータベース31は、記憶装置の一例である。
対戦結果を決定すると、CPU21は、
図6Bに例示する対戦履歴データベースにアクセスし、攻撃側ユーザの「攻撃時」の対戦履歴(「勝利回数」、「敗北回数」、「連勝回数」、「連敗回数」)、及び、防御側ユーザの「防御時」の対戦履歴を更新する。
具体的には、攻撃側ユーザが勝利した場合、CPU21は、攻撃側ユーザの「攻撃時」の「勝利回数」に1を加算するとともに、「攻撃時」の「連勝回数」に1を加算する。なお、攻撃側ユーザの加算前の「攻撃時」の「連勝回数」が0の場合は、「攻撃時」の「連勝回数」に1を書き込むとともに、「攻撃時」の「連敗回数」に0を書き込み、「攻撃時」の「連敗回数」をリセットする。また、CPU21は、敗北した防御側ユーザの「防御時」の「敗北回数」に1を加算するとともに、「防御時」の「連敗回数」に1を加算する。なお、防御側ユーザの加算前の「防御時」の「連敗回数」が「0」の場合は、「防御時」の「連敗回数」に1を書き込むとともに、「防御時」の「連勝回数」に「0」を書き込み、「防御時」の「連勝回数」をリセットする。
一方、攻撃側ユーザが敗北した場合、CPU21は、敗北した攻撃側ユーザの「攻撃時」の「敗北回数」に1を加算するとともに、「攻撃時」の「連敗回数」に1を加算する。なお、攻撃側ユーザの加算前の「攻撃時」の「連敗回数」が「0」の場合は、「攻撃時」の「連敗回数」に1を書き込むとともに、「攻撃時」の「連勝回数」に「0」を書き込み、「攻撃時」の「連勝回数」をリセットする。また、CPU21は、勝利した防御側ユーザの「防御時」の「勝利回数」に1を加算するとともに、「防御時」の「連勝回数」に1を加算する。なお、防御側ユーザの加算前の「防御時」の「連勝回数」が0の場合は、「防御時」の「連勝回数」に1を書き込むとともに、「防御時」の「連敗回数」に0を書き込み、「防御時」の「連敗回数」をリセットする。
なお、「連勝回数」及び「連敗回数」のリセットを行う度に、「連勝回数」及び「連敗回数」の値をユーザ毎に記録しておいてもよい。また、所定回数の対戦処理が行われる毎にリセットを行ってもよい。また、所定期間(例えば1日、1週間)毎にリセットを行ってもよい。
【0061】
決定手段54は、対戦相手として選択されるユーザ(防御側ユーザ)の対戦履歴に基づいて、対戦相手を選択したユーザ(攻撃側ユーザ)が勝利した場合に付与する報酬を決定する機能を備える。決定手段54の機能は、例えば以下のようにして実現される。
CPU21は、ユーザデータベースにアクセスし、防御側ユーザとなるユーザの「防御時」の対戦履歴を取得する。次に、CPU21は、対戦履歴に基づいて報酬を決定する。例えば、CPU21は、防御側ユーザの「防御時」の勝率、すなわち、「防御時」の勝利数/(勝利数+敗北数)が低いほど少ない報酬を決定することができる。例えば、勝率に比例する強化ポイントを報酬として決定することができる。あるいは、勝率に比例する数のアイテム、あるいは勝率に比例するパラメータ(攻撃力、レア度等)を備えたカード等を報酬として決定することができる。
あるいは、CPU21は、防御側ユーザの「防御時」の「連敗回数」に応じて変動する報酬を決定することができる。例えば、防御側ユーザの「連敗回数」に比例する強化ポイントを報酬として決定することができる。あるいは、報酬として付与するアイテムの数を「防御時」の「連敗回数」に応じて変動させることができる。例えば、防御側ユーザの「防御時」の「連敗回数」が0であればアイテムを3つ、防御側ユーザの「防御時」の「連敗回数」が1であればアイテムを2つ、防御側ユーザの「防御時」の「連敗回数」が2であればアイテムを1つ付与するとともに、防御側ユーザの「防御時」の「連敗回数」が3以上であればアイテムを付与しないことを決定することができる。
また、防御側ユーザの「防御時」の「連敗回数」が0であれば報酬を付与し、防御側ユーザの「連敗回数」が1以上であれば報酬を付与しないこと、あるいは「連敗回数」が0の場合よりも少ない報酬を付与することを決定してもよい。すなわち、防御側ユーザが直前の対戦処理で敗北している場合に報酬を減少させることを決定してもよい。
なお、CPU21は、防御側ユーザの「攻撃時」の対戦履歴に基づいて報酬を決定してもよいし、「攻撃時」及び「防御時」の両方の対戦履歴に基づいて報酬を決定してもよい。
あるいは、CPU21は、防御側ユーザの「防御時」の対戦履歴と攻撃側ユーザの「攻撃時」の対戦履歴を比較して、報酬を決定してもよい。例えば、防御側ユーザの「防御時」の勝率が攻撃側ユーザの「攻撃時」の勝率よりも低い場合は報酬としてアイテムを1つ、防御側ユーザの「防御時」の勝率が攻撃側ユーザの「攻撃時」の勝率よりも高い場合は報酬としてアイテムを2つ付与することを決定してもよい。あるいは、防御側ユーザの「防御時」の勝率が攻撃側ユーザの「攻撃時」の勝率よりも高い場合、防御側ユーザの「防御時」の勝率が攻撃側ユーザの「攻撃時」の勝率よりも低い場合の2倍の強化ポイントを報酬として決定してもよい。
なお、防御側ユーザが勝利した場合に付与する報酬については、攻撃側ユーザの対戦履歴に基づいて同様に決定してもよいし、攻撃側ユーザの対戦履歴によらずに一律に決定してもよい。
また、CPU21は、防御側ユーザの「防御時」の対戦履歴と攻撃側ユーザの「防御時」の対戦履歴の比較結果、防御側ユーザの「攻撃時」の対戦履歴と攻撃側ユーザの「攻撃時」の対戦履歴の比較結果、防御側ユーザの「攻撃時」の対戦履歴と攻撃側ユーザの「防御時」の対戦履歴の比較結果のいずれかに基づいて報酬を決定してもよい。
また、「攻撃時」及び「防御時」の両方の対戦履歴を合算した比較結果に基づいて報酬を決定してもよい。また、「攻撃時」と「防御時」に分けずに対戦履歴を記録し、当該対戦履歴の比較結果に基づいて報酬を決定してもよい。
【0062】
報酬付与手段55は、対戦処理において勝利したユーザに対し、決定された報酬を付与する機能を備える。報酬付与手段55の機能は、例えば以下のとおり実現される。
CPU21は、対戦処理において攻撃側ユーザが勝利したと判定すると、ユーザデータベースにアクセスし、防御側ユーザの対戦履歴を取得する。次に、CPU21は、対戦履歴に基づいて報酬を上述したように決定する。その後、CPU21は、決定した報酬を攻撃側ユーザに付与する。例えば、決定した報酬が強化ポイントであれば、CPU21は、ユーザデータベースにアクセスし、攻撃側ユーザの強化ポイントに報酬分の強化ポイントを加算する。また、報酬がアイテムであれば、CPU21は、ユーザデータベースにアクセスし、攻撃側ユーザの「保有カード、アイテムの識別コード」の欄に報酬として付与するアイテムの識別コードを書き込む。
【0063】
第1提示手段56は、攻撃側ユーザにより対戦相手(防御側ユーザ)として選択されるユーザのリストを、防御側ユーザの対戦履歴に基づく情報又は攻撃側ユーザに付与される報酬に関する情報とともに攻撃側ユーザに対戦処理前に提示する機能を備える。第1提示手段56の機能は、例えば以下の通り実現される。
【0064】
CPU21は、
図8のトップページP1上でユーザ(攻撃側ユーザ)によりメニューm2が選択されたことを認識すると、他のユーザから防御側ユーザとなるユーザを決定する。この際、CPU21は、他のユーザの対戦履歴に基づいて、防御側ユーザとなるユーザを選択してもよい。例えば、連敗回数が所定回数以上のユーザ、敗率が所定割合以上のユーザ、敗北回数が所定回数以上のユーザを除外して防御側ユーザとなるユーザを決定してもよい。あるいは、連敗回数、敗率、敗北回数に応じて、防御側ユーザとなる確率を変更してもよい。例えば、防御側ユーザとなる確率を、連敗回数が3回以上であれば10%、連敗回数が2回であれば20%、連敗回数が1回であれば30%、連敗回数が0であれば40%、となるように設定してもよい。
次に、CPU21は、ユーザデータベースにアクセスし、決定した防御側ユーザの対戦履歴を取得する。次に、CPU21は、取得した防御側ユーザの対戦履歴に基づく情報、又は、決定した攻撃側ユーザに付与される報酬に関する情報とともに、攻撃側ユーザにより対戦相手として選択されるユーザのリストを含むウェブページP4のHTMLデータを生成して、ユーザの通信端末10宛に送信する。
例えば、防御側ユーザの対戦履歴に基づく情報は、対戦履歴を明示する情報(例えば、「勝率:10%」(「敗率:90%」)、「連敗回数:3回」、「敗北回数:129回」等のテキスト)であってもよいし、対戦履歴を暗示する情報であってもよい。
例えば、防御側ユーザの勝率が50%以上であれば星3つ、勝率が30%以上50%未満であれば星2つ、勝率が10%以上30%未満であれば星1つの画像情報を提示し、勝率が10%未満であれば星の画像情報を提示しないことで対戦履歴を暗示してもよい。あるいは、防御側ユーザの連敗回数が0であれば星3つ、連敗回数が1回であれば星2つ、連敗回数が2回であれば星1つの画像情報を提示し、連敗回数が3回以上であれば星の画像情報を提示しないことで対戦履歴を暗示してもよい。あるいは、敗北回数が20回未満であれば星3つ、20回以上50回未満であれば星2つ、50回以上100回未満であれば星1つの画像情報を提示し、100回以上であれば星の画像情報を提示しないことで対戦履歴を暗示してもよい。
また、報酬に関する情報は、例えば、報酬を明示する情報(例えば、アイテム名、「1000強化ポイント」等)であってもよいし、報酬を暗示する情報であってもよい。
例えば、報酬が1000強化ポイントであれば星1つ、2000強化ポイントであれば星2つ、3000強化ポイントであれば星3つの画像情報を提示することで報酬を暗示してもよい。
あるいは、報酬がアイテム1つであれば星1つ、アイテム2つであれば星2つ、アイテム3つであれば星3つの画像情報を提示することで報酬を暗示してもよい。
あるいは、「多い」、「やや多い」、「やや少ない」、「少ない」等のテキストにより報酬を暗示してもよい。
【0065】
(7)本実施形態のゲーム制御装置の主要な処理のフロー
次に、本実施形態のゲーム制御装置により行われる主要な処理のフローの一例について、
図11〜
図12のフローチャートを参照して説明する。
図11は、本実施形態のゲームにおいてクエスト処理を行うときのフローチャートである。
図12は、本実施形態のゲームにおいて、対戦処理を行うときのフローチャートである。
なお、
図11〜
図12のフローチャートにおける各処理の実行に伴って適宜、P1〜P6の各ウェブページを表示するためのHTMLデータがゲームサーバ20から通信端末10宛に送信されるが、煩雑とならないようにHTMLデータの送信処理をフローチャートには記載しない場合もある。フローチャート上で、ウェブページP1〜P6の各々が表示されるタイミングは、P1〜P6の符号で示してある。
なお、
図11〜
図12のフローチャートでは、ユーザ:Aがゲームを実行する場合を一例として説明する。
【0066】
〔クエスト処理〕
図11を参照して、クエスト処理を行うときのフローチャートの一例を説明する。
CPU21は、
図8のトップページP1でメニューm1(「クエスト」)が選択されたことを認識すると、クエスト処理を開始する。まず、ウェブページP2のメニューm10(「クエスト実行」)が選択されたことを認識すると(ステップS100:YES)、CPU21は、ユーザデータベースにアクセスしてユーザ:Aの達成率、体力ポイント、経験値等を更新する(ステップS102)。次に、CPU21は、複数のカードの中から選択されたカードをユーザ:Aに付与するか否かについて、所定の、あるいはランダムな確率で決定する(ステップS104)。ステップS104において、カードをユーザ:Aに付与することを決定すると(ステップS104:YES)、CPU21は、ユーザ:Aにカードを付与する(ステップS106)。すなわち、CPU21は、ユーザデータベースにアクセスして、付与されることが決定したカードの識別コードを、ユーザ:Aのその後、CPU21は、クエスト処理を終了する。
ステップS104において、カードをユーザ:Aに付与しないことを決定すると(ステップS104:NO)、CPU21は、クエスト処理を終了する。
なお、メニューm10以外が選択された場合(ステップS100:NO)、CPU21は、クエスト処理を終了する。
【0067】
〔対戦処理〕
次に、
図12を参照して、対戦処理を行うときのフローチャートの一例を説明する。
CPU21は、
図8のトップページP1でメニューm2(「対戦」)が選択されたことを認識すると、対戦処理を開始する。まず、ユーザ:A(攻撃側ユーザ)以外のユーザから対戦相手の候補となる防御側ユーザを決定する(ステップS200)。次に、CPU21は、防御側ユーザのリストとともに提示する、防御側ユーザの対戦履歴に基づく情報又は攻撃側ユーザに付与される報酬に関する情報を決定する(ステップS202)。具体的には、CPU21は、ユーザデータベースにアクセスし、防御側ユーザの対戦履歴を取得し、対戦履歴に基づく情報又は報酬に関する情報を決定する。
次に、CPU21は、ウェブページP5でメニューm21〜24(「対戦」)のいずれかが選択されたか否かを判定する(ステップS204)。メニューm21〜m24(「対戦」)以外が選択された場合(ステップS204:NO)、CPU21は、対戦処理を終了する。
メニューm21〜24のいずれかが選択された場合(ステップS204:YES)、CPU21は、攻撃側ユーザ(ユーザ:A)の対戦相手として選択された防御側ユーザ(
図9ではユーザ:E)の画像とともに、対戦の実行を指示するためのメニューm25(「対戦開始」)が提示されたウェブページP5において、メニューm25が選択されたか否かを判定する(ステップS206)。メニューm25以外が選択された場合(ステップS206:NO)、対戦処理を終了する。
ウェブページP5上でメニューm20(「対戦開始」)が選択されたことを認識すると(ステップS206:YES)、CPU21は、対戦結果を決定する(ステップS208)。
攻撃側ユーザ(ユーザ:A)が対戦に勝利した場合(ステップS208:YES)、CPU21は、攻撃側ユーザ(ユーザ:A)に対して付与する報酬を決定する処理を行う(ステップS210)。すなわち、CPU21は、ユーザデータベースにアクセスして防御側ユーザの対戦履歴を取得し、対戦履歴に基づいて報酬を決定する。あるいはCPU21は、ステップS202で決定した、対戦履歴に基づく報酬をRAM13から読み出す。
次に、CPU21は、決定した報酬を攻撃側ユーザ(ユーザ:A)に付与する(ステップS212)。報酬が強化ポイントであれば、CPU21は、ユーザデータベースにアクセスして、ユーザ:AのユーザIDに対応する強化ポイントの値を所定値(例えば1000)だけ増加させる。また、報酬がアイテムであれば、CPU21は、ユーザデータベースにアクセスし、ユーザ:AのユーザIDに対応する「保有カード、アイテムの識別コード」の欄に報酬として付与するアイテムの識別コードを書き込む。その後、CPU21は、対戦処理を終了する。
一方、ユーザ:Aが対戦に敗北した場合(ステップS208:NO)、CPU21は、ユーザ:Aに攻撃された防御側ユーザ(ユーザ:E)に付与する報酬を決定する(ステップS214)。すなわち、CPU21は、ユーザデータベースにアクセスして攻撃側ユーザ(ユーザ:A)の対戦履歴を取得し、対戦履歴に基づいて報酬を決定する。なお、防御側ユーザが勝利した場合の報酬を攻撃側ユーザ(ユーザ:A)の対戦履歴によらず一律に設定してもよい。
次に、CPU21は、決定した報酬を防御側ユーザ(ユーザ:E)に付与する(ステップS216)。報酬が強化ポイントであれば、CPU21は、ユーザデータベースにアクセスして、ユーザ:EのユーザIDに対応する強化ポイントの値を所定値(例えば1000)だけ増加させる。また、報酬がアイテムであれば、CPU21は、ユーザデータベースにアクセスし、ユーザ:EのユーザIDに対応する「保有カード、アイテムの識別コード」の欄に報酬として付与するアイテムの識別コードを書き込む。その後、CPU21は、対戦処理を終了する。
なお、ステップS200とステップS202の順番を逆にしてもよい。すなわち、防御側ユーザの対戦履歴に基づく情報又は攻撃側ユーザに付与される報酬に関する情報をあらかじめ定めておき、当該情報に合致するユーザを抽出して防御側ユーザとして決定してもよい。
【0068】
以上説明したように、このゲーム制御装置では、攻撃側ユーザが勝利した場合に攻撃側ユーザに付与する報酬を、防御側ユーザの対戦履歴に基づいて変動させることで、攻撃側ユーザが弱い防御側ユーザを対戦相手として選択しないように促すことができる。
特に本発明に係るゲームでは、防御側ユーザの承諾なしに非同期で対戦処理が行われるため、防御側ユーザはチームを構成するカードを変更することができず、かつ対戦の結果に影響を与える操作ができない状態にある。このため、対戦処理の開始前に編成処理を行うことができる攻撃側ユーザと比較して、防御側ユーザは不利な立場にあり、連続して敗北しやすくなる。本発明によれば、このような不利な立場に陥った防御側ユーザの対戦相手としての魅力を失わせ、攻撃側ユーザから対戦相手として選択されにくくすることができる。このため、弱い防御側ユーザがゲームを継続するモチベーションを維持することができる。
なお、上記実施形態においては、対戦相手となる防御側ユーザのリストを提示するとき(
図12のステップS202)、及び、報酬を決定するとき(
図12のステップS210)に対戦履歴を取得していたが、本発明はこれに限らず、報酬付与前であれば対戦処理中の任意の時点で対戦履歴を取得することができる。例えば、攻撃側ユーザがメニューm25(「対戦開始」)の選択をしたとき(
図12のステップS206)に対戦履歴を取得してもよい。
また、上記実施形態においては、対戦結果が決定した後(
図12のステップS208の後)に報酬を決定していたが、本発明はこれに限らず、報酬付与前であれば対戦処理中の任意の時点で報酬を決定することができる。例えば、攻撃側ユーザに提示する情報を決定するとき(
図12のステップS202)、攻撃側ユーザがメニューm25(「対戦開始」)の選択をしたとき(
図12のステップS206)に報酬を決定してもよい。また、ステップS208で判定された、ユーザ:Aとユーザ:Eの対戦結果が反映された対戦履歴に基づいて報酬を決定してもよいし、ステップS208で判定された対戦結果が反映される前の対戦履歴に基づいて報酬を決定してもよい。
また、上記実施形態においては、報酬付与手段55は、対戦履歴に基づいて報酬の多寡を変動させていたが、本発明はこれに限らない、報酬付与手段55は、対戦履歴に基づいて報酬として付与するオブジェクト(アイテムやカード等)の質を変動させてもよい。例えば、敗北回数が多い、又は、敗北率が高いほど、質(ゲーム内外の有益度)の高いアイテム又はカードが付与されるとしても良い。なお、質の高いオブジェクトを付与とは、例えば、報酬をカードとした場合に、より高いレア度のカードを付与することでも良い。
また、報酬付与手段55は、対戦履歴に基づいて報酬を付与する確率を変動させてもよい。例えば、敗北率が高い、又は、敗北回数が多いほど、報酬を獲得できる確率を高くしても良い。この場合において、第1提示手段56も報酬を付与する確率に関する情報を提示することとしても良い。
また、上記実施形態においては、ユーザ間の対戦を非同期で行っていたが、本発明はこれに限らず、ユーザ間対戦を同期させて行い、攻撃側ユーザが防御側ユーザに対戦の申し込みをし、防御側ユーザから対戦の承諾を得た後に対戦処理を実行してもよい。
【0069】
(8)変形例
以下、上述した実施形態の変形例について説明する。
【0070】
(8−1)変形例1
図13は本変形例に係る対戦処理において用いられる参加要請データベースの一例である。参加要請データベースは、データベースサーバ30に記憶される。
この例では、参加要請データベースは、イベントコードごとに、対戦処理において参加を要請したユーザ(要請元ユーザ)のユーザID、要請元ユーザの対戦相手のユーザ(対戦相手ユーザ)のユーザID、要請元ユーザにより参加を要請されたユーザ(要請先ユーザ)のユーザID、参加の要請をされて対戦処理に参加済みのユーザ(救援ユーザ)のユーザIDの各項目についての情報を含む。要請元ユーザは第2ユーザの一例であり、対戦相手ユーザは第1ユーザの一例であり、要請先ユーザは第3ユーザの一例である。以下では、要請元ユーザの例としてユーザ:E、対戦相手ユーザの例としてユーザ:A、要請先ユーザの例としてユーザ:G、H、I、救援ユーザの例としてユーザ:Gを挙げて説明する。
【0071】
本変形例のゲームについて、
図14を参照しながら説明する。
図14のP7は本変形例に係る対戦処理において、防御側のユーザ:Eが敗北した場合にユーザの通信端末に表示されるウェブページの一例である。
図14のウェブページP7は、ユーザ:Eが他のユーザから攻撃され、敗北したことを示すメニューm3(「防御失敗」)を含む。
ユーザ:Eがメニューm3を選択すると、
図14のP8に示すようにウェブページが更新される。ウェブページP8は、ユーザ:Eを攻撃したユーザ:Aに関する情報、及び、ユーザ:Aとの対戦処理への参加を仲間に要請するためのメニューm30(「救援要請」)を含む。
ユーザ:EがウェブページP8においてメニューm30を選択すると、
図14のP9に示すようにウェブページが更新される。ウェブページP9は、ユーザ:Eの仲間(ユーザ:G、H、I)に対してユーザ:Aとの対戦処理への参加の要請がされたことを示す情報(「以下の仲間に救援要請をしました」)を含む。
なお、ユーザ:Eが要請先ユーザを選択可能としてもよい。
【0072】
要請先ユーザ(ここでは、ユーザ:G)が、その後、ゲームにアクセスすると、
図15に示すようなトップページP10がユーザ:Gの通信端末10上に表示される。トップページP10は、救援要請があったことを示すメニューm4(「救援要請があります」)を含む。
トップページP10において、ユーザ:Gがメニューm4を選択操作すると、
図15のP11に例示するウェブページがユーザ:Gの通信端末10上に表示される。ウェブページP11は、ユーザ:Gに救援要請をした要請者のユーザ名、対戦処理の対戦相手、ユーザ:Gが救援して勝利したときに得られる報酬に関する情報が含まれる。ウェブページP10の例では、要請者:E(対戦相手:A)の欄に星が3つの画像、要請者:H(対戦相手:C)の欄に星が3つの画像、要請者:I(対戦相手:D)の欄に星が2つの画像が、それぞれ含まれる。星の数は、ユーザ:Gが対戦して勝利したときに得られる報酬を暗示しており、ウェブページP10では、例えば、対戦相手:Dに勝利した場合よりも対戦相手:Aに勝利したほうが得られる報酬が多いことを示している。
また、ウェブページP10は、ユーザ:Gが救援する要請者(及びユーザ:Gの対戦相手)を決定するためのメニューm41〜m43(「救援する」)などが含まれる。
【0073】
ウェブページP10上でユーザ:Gが例えば要請者:E(対戦相手:A)に対応するメニューm41を選択すると、P12に示すようにウェブページが更新される。ウェブページP12には、ユーザ:Gの対戦相手として選択されたユーザ:Aの画像とともに、対戦の実行を指示するためのメニューm44(「対戦開始」)等が含まれる。
ウェブページP12上でユーザ:Gがメニューm44(「対戦開始」)の選択を行うと、ユーザ:Gのチームと対戦相手:Aのチームとの間で対戦が行われる。以後、上記実施形態と同様に対戦処理が行われる。
【0074】
次に、本変形例に係るゲーム制御装置の機能ブロック図を、
図16に示す。
図16に示すように、本変形例では、
図10の機能ブロック図と比較して、関連付け手段57、要請手段58、第2提示手段59が追加された点で異なる。
【0075】
関連付け手段57は、ユーザと他のユーザを関連付ける機能を備える。
関連付け手段57の機能は、例えば以下のようにして実現される。
【0076】
ユーザ:Eが他のユーザ:Gに対して仲間申請をし、ユーザ:Gが申請を承認した場合、CPU21は、ユーザデータベースにアクセスし、ユーザ:EのユーザIDの「仲間のユーザID」の欄にユーザ:GのユーザIDを書き込むとともに、ユーザ:GのユーザIDの「仲間のユーザID」の欄にユーザ:EのユーザIDを書き込む。
なお、関連付け手段57は、上述した申請及び承認の手順を省略して、ユーザ同士の関連付けを行っても良い。例えば、CPU21は、仲間になりたいユーザID(あるいは、対応するユーザ名)を指定した申請メッセージ(申請)を受け付けることで、指定先のユーザIDのユーザの承諾を得ることなく指定先のユーザIDを仲間として登録してもよい。
なお、ユーザ同士を関係付ける条件は、上述したものに限られず、同一のゲーム上のステージ若しくはエリアを実行するユーザや試合を行ったユーザ同士を仲間として登録してもよい。あるいは、所定回数の挨拶メッセージを送信するユーザ同士を自動的に仲間として登録してもよいし、ユーザ間で対戦を所定回数以上対戦を行ったユーザ同士や、協力して敵キャラクタと対戦をしたユーザ同士を自動的に仲間として登録してもよい。
また、イベントへの参加要請や参加申請を契機にしてユーザ同士を関連付けてもよい。
ゲーム内でユーザ同士のグループ(ギルド等)が設定されている場合、例えば、あるユーザ(「ユーザ:E」とする。)があるグループへの参加が承認されたときに、当該グループ内の他のユーザ(「ユーザ:G、H、I」とする。)のユーザIDをユーザ:Eの「仲間のユーザID」の欄に書き込むとともに、ユーザ:Eのユーザデータにユーザ:G、H、IのユーザIDを「仲間のユーザID」の欄に書き込んでもよい。
本実施形態では、ユーザ同士の仲間関係の登録をユーザデータベース31にデータを書き込むことによって実現する例を示したが、この例に限られない。仲間関係に関するデータは、ゲームサーバ20からアクセス可能なネットワーク上の外部の記憶装置に書き込まれるようにしてもよい。
【0077】
要請手段58は、要請元ユーザが、自分の仲間として関連付けられたユーザに対して、対戦相手ユーザとの対戦処理への参加を要請する機能を有する。要請手段58の機能は、例えば以下のようにして実現される。
【0078】
CPU21は、ウェブページP8において要請元ユーザ:Eによりメニューm30が選択されたことを認識すると、ユーザデータベースにアクセスし、要請元ユーザ:Eの仲間のユーザのユーザIDを取得する。次に、CPU21は、参加要請データベースにアクセスし、新たなイベントコードに対して、要請元ユーザ(ユーザ:E)のユーザID、ユーザ:Eにより参加要請がされた対戦処理における対戦相手ユーザ(ユーザ:A)のユーザID、参加を要請された要請先ユーザのユーザID(ユーザ:Eの仲間のユーザのユーザID)を書き込む。なお、この時点では、参加済みのユーザ(救援ユーザ)のユーザIDは書き込まれていない。
その後、要請先ユーザ(ユーザ:G)がゲームにアクセスし、ウェブページP11においてメニューm41の選択を行ったことを認識すると、CPU21は、要請先ユーザ:GのユーザIDを対応する救援要請データベースの救援ユーザIDに書き込む。
【0079】
第2提示手段59は、要請先ユーザに対し、対戦相手のリストを、要請元ユーザの対戦履歴に基づく情報又は要請先ユーザに付与される報酬に関する情報とともに要請先ユーザに対戦処理前に提示する機能を有する。第2提示手段59の機能は、例えば以下のようにして実現される。
【0080】
CPU21は、ユーザ:Gがゲームにアクセスすると、
図13に例示する参加要請データベースにアクセスし、ユーザ:Gに対応するユーザIDがいずれかのイベントコードの要請先ユーザIDの欄に記録されているか否かを判定する。ユーザ:Gに対応するユーザIDがいずれかのイベントIDの要請先ユーザIDの欄に記録されている場合、CPU21は、
図15に示すように、メニューm4を含むトップページP9のHTMLデータを生成し、ユーザ:Gの通信端末10宛に送信する。
トップページP9において、要請先ユーザ:Gがメニューm4を選択操作した場合、CPU21は、参加要請データベースにアクセスし、ユーザ:GのユーザIDが要請先ユーザIDに記録されたイベントIDの欄に記録された情報に基づき、要請元ユーザ及び対戦相手ユーザのユーザIDを取得する。次に、CPU21は、ユーザデータベースにアクセスして取得された、要請元ユーザの対戦履歴に基づく情報、又は、対戦履歴に基づいて決定された、要請先ユーザ:Gが勝利した場合に付与する報酬に関する情報とともに、要請先ユーザ:Gが救援する要請元ユーザ(要請者)及び対戦相手ユーザ(対戦相手)のリストを含むウェブページP10のHTMLデータを生成して、ユーザの通信端末10宛に送信する。
【0081】
次に、要請先ユーザが参加要請を受諾し、参加要請を受諾した要請先ユーザ(救援ユーザ)が要請元ユーザを救援するために対戦相手と対戦する救援処理のフローの一例について、
図17のフローチャートを参照して説明する。
CPU21は、トップページP9において、要請先ユーザ(ユーザ:G)がメニューm4を選択したか否かを判定する(ステップS300)。要請先ユーザ:Gがメニューm4以外の選択を行った場合(ステップS300:NO)、CPU21は、救援処理を終了する。
要請先ユーザ:Gがメニューm4を選択した場合(ステップS300:YES)、CPU21は、ウェブページP10において、ユーザ:Gがメニューm41〜m43を選択したか否かを判定する(ステップS302)。要請先ユーザ:Gがメニューm41〜m43以外の選択を行った場合(ステップS302:NO)、CPU21は、救援処理を終了する。
要請先ユーザ:Gがメニューm41〜m43のいずれかの選択を行った場合(ステップS302:YES)、CPU21は、選択されたメニューm41〜m43に応じて対戦相手を決定する(ステップS304)。すなわち、CPU21は、要請先ユーザ:GのユーザIDを対応する救援要請データベースの救援ユーザIDに書き込むとともに、対戦相手ユーザのユーザIDを取得する。以後、ユーザ:Gは救援ユーザとなる。
次に、CPU21は、ウェブページP11において、救援ユーザ:Gがメニューm44を選択したか否かを判定する(ステップS306)。救援ユーザ:Gがメニューm43以外の選択操作を行った場合(ステップS306:NO)、CPU21は、救援処理を終了する。
【0082】
救援ユーザ:Gがメニューm44を選択した場合(ステップS306:YES)、CPU21は、対戦結果を決定する(ステップS308)。
救援ユーザ:Gが対戦に勝利した場合(ステップS308:YES)、CPU21は、救援ユーザ:Gに対して付与する報酬を決定する処理を行う(ステップS310)。すなわち、CPU21は、ユーザデータベースにアクセスして要請元ユーザ:Eの対戦履歴を取得し、対戦履歴に基づいて報酬を決定する。
次に、CPU21は、決定した報酬を救援ユーザ:Gに付与する(ステップS312)。報酬が強化ポイントであれば、CPU21は、ユーザデータベースにアクセスして、ユーザ:GのユーザIDに対応する強化ポイントの値を所定値(例えば1000)だけ増加させる。また、報酬がアイテムであれば、CPU21は、ユーザデータベースにアクセスし、救援ユーザ:GのユーザIDに対応する「保有カード、アイテムの識別コード」の欄に報酬として付与するアイテムの識別コードを書き込む。その後、CPU21は、救援処理を終了する。
一方、救援ユーザ:Gが対戦に敗北した場合(ステップS308:NO)、CPU21は、対戦相手ユーザ(ユーザ:A)に付与する報酬を決定する(ステップS314)。すなわち、CPU21は、ユーザデータベースにアクセスして救援ユーザ:Gの対戦履歴を取得し、対戦履歴に基づいて報酬を決定する。なお、対戦相手ユーザが勝利した場合の報酬を救援ユーザの対戦履歴によらず一律に設定してもよい。
次に、CPU21は、決定した報酬を対戦相手ユーザ(ユーザ:A)に付与する(ステップS316)。報酬が強化ポイントであれば、CPU21は、ユーザデータベースにアクセスして、対戦相手ユーザ:AのユーザIDに対応する強化ポイントの値を所定値(例えば1000)だけ増加させる。また、報酬がアイテムであれば、CPU21は、ユーザデータベースにアクセスし、対戦相手ユーザ:AのユーザIDに対応する「保有カード、アイテムの識別コード」の欄に報酬として付与するアイテムの識別コードを書き込む。その後、CPU21は、対戦処理を終了する。
【0083】
本変形例においては、対戦処理において救援ユーザが勝利した場合に、要請元ユーザの対戦履歴に基づいて変動する報酬が救援ユーザに付与される。このため、要請元ユーザが弱いほど救援ユーザに要請された対戦処理への参加を動機付けることができる。また、攻撃側ユーザが救援ユーザからの攻撃を避けるために自分よりも弱いユーザを対戦相手として選択しないように促すことができる。このため、弱い攻撃側ユーザがゲームを継続するモチベーションを維持することができる。
なお、本変形例においては、要請先ユーザを要請元ユーザの仲間に限定しているが、本発明はこれに限らず、仲間以外の任意のユーザに参加要請を可能としてもよい。例えば、要請元ユーザが参加要請をした時点でゲームにアクセスしているユーザにランダムに参加要請をしてもよい。つまり、関連付け手段57は必須ではなく、要請手段58は、第2ユーザが任意の第3ユーザに対して前記第1ユーザとの対戦処理への参加を要請しても良い。
また、本変形例では、防御側ユーザが要請元ユーザとなる場合について説明したが、本発明はこれに限らず、攻撃側ユーザが要請元ユーザとなってもよい。例えば、攻撃側ユーザ:Aと防御側ユーザ:Eとの対戦処理において、攻撃側ユーザ:Aが敗北した場合、攻撃側ユーザ:Aが要請元ユーザとして仲間のユーザに対して対戦処理への参加を仲間に要請可能としてもよい。
また、参加要請データベースにおいて要請先ユーザIDを記録する代わりに、ユーザデータベースにおいて要請元ユーザが参加要請をしたか否かをフラグにより管理してもよい。この場合、例えば、ユーザ:Gがゲームにアクセスした場合、CPU21はユーザデータベースにアクセスし、ユーザ:Gの仲間のユーザのフラグを確認する。フラグによりユーザ:E、H、Iが参加要請をしたことを認識した場合、CPU21は、
図15に例示するトップページP10、ウェブページP11のHTMLデータを生成して、ユーザ:Gの通信端末10宛に送信する。
【0084】
(8−2)変形例2
図18のP13は本変形例に係る対戦処理において、対戦相手を選択するために攻撃側ユーザ:Aの通信端末に表示されるウェブページの一例である。ウェブページP13は、ユーザ:Aの対戦相手の候補となる他のユーザ:B、C、D、Eの情報とともに、対戦相手を決定するためのメニューm21〜24(「対戦」)などが含まれる。
また、対戦相手の候補となる他のユーザ:B、C、D、Eの情報には、それぞれ、ユーザ:B、C、D、Eの防御ポイント(防御P)の現在値と、ユーザ:Aが対戦して勝利したときに得られる報酬に関する情報が含まれる。ウェブページP4の例では、報酬に関する情報として、ユーザ:Bの欄に星が1つ、ユーザ:Cの欄に星が3つ、ユーザ:Dの欄に星が2つ、ユーザ:Eの欄に星が3つ、それぞれ含まれる。星の数は、ユーザ:Aが対戦して勝利したときに得られる報酬を暗示しており、ウェブページP4では、例えば、ユーザ:Bに勝利した場合よりもユーザ:Dに勝利したほうが得られる報酬が多いことを示している。
【0085】
本変形例に係るゲーム制御装置の機能ブロック図を、
図19に示す。
図19に示すように、本変形例では、
図16の機能ブロック図と比較して、対応付け手段60が追加された点で異なる。
【0086】
本変形例における決定手段54は、防御側ユーザの防御ポイントの現在値に基づいて、攻撃側ユーザが勝利した場合に付与する報酬を決定する機能を備える。決定手段54の機能は、例えば以下のようにして実現される。
CPU21は、ユーザデータベースにアクセスし、防御側ユーザの防御ポイントの現在値を取得する。次に、CPU21は、防御ポイントの現在値に基づいて報酬を決定する。例えば、CPU21は、防御側ユーザの防御ポイントの現在値が低いほど少ない報酬を決定することができる。例えば、防御側ユーザの防御ポイントの現在値に比例する強化ポイントを報酬として決定することができる。
なお、防御側ユーザが勝利した場合に防御側ユーザに付与する報酬については、攻撃側ユーザの攻撃ポイントの現在値に基づいて同様に決定してもよいし、攻撃側ユーザの攻撃ポイントの現在値によらずに一律に決定してもよい。
【0087】
対応付け手段60は、攻撃ポイントの現在値及び防御ポイントの現在値をユーザに対応付ける機能を有する。攻撃ポイントの現在値及び防御ポイントの現在値は、対戦処理において減少し、対戦処理能力が制限される対戦処理用パラメータの一例である。対応付け手段60の機能は、例えば以下のようにして実現される。
【0088】
CPU21は、一定時間(例えば、2分)経過するごとに、ユーザデータベースにアクセスし、各ユーザの攻撃P及び防御Pの現在値が最大値であるか否かを判定し、最大値でなければ1を加算する。
また、CPU21は、対戦処理が行われると、ユーザデータベースにアクセスし、攻撃側ユーザのユーザIDに対応する攻撃P(ポイント)の現在値を、攻撃側ユーザが対戦処理において使用したカードの使用コストの合計値に応じて減少させる。例えば、攻撃側ユーザの攻撃ポイントの現在値が50であり、攻撃側ユーザが対戦処理において使用したカードの使用コストの合計値が30であれば、対戦処理後の攻撃側ユーザの攻撃ポイントの現在値を20に書き換える。なお、使用コストの合計値の所定の割合(例えば50%)の値を攻撃ポイントの現在値から減少させてもよい。
また、CPU21は、防御側ユーザのユーザIDに対応する防御P(ポイント)の現在値を、所定の減少率で減少させる。例えば、所定の減少率が20%の場合、防御側ユーザの防御ポイントの現在値が50であれば、対戦処理後の防御側ユーザの防御ポイントの現在値を40に書き換える。なお、所定の値(例えば5ポイント)を防御ポイントの現在値から減少させてもよい。
【0089】
本変形例における決定手段54は、防御側ユーザの防御ポイントの現在値に基づいて、攻撃側ユーザが勝利した場合に付与する報酬を決定する機能を備える。決定手段54の機能は、例えば以下のようにして実現される。
CPU21は、ユーザデータベースにアクセスし、防御側ユーザの防御ポイントの現在値を取得する。次に、CPU21は、防御ポイントの現在値に基づいて報酬を決定する。例えば、CPU21は、防御側ユーザの防御ポイントの現在値が小さいほど少ない報酬を決定することができる。例えば、防御側ユーザの防御ポイントの現在値に比例する強化ポイントを報酬として決定することができる。あるいは、防御側ユーザの防御ポイントの現在値に比例する数のアイテムを報酬として決定してもよい。例えば、防御ポイントの現在値が20未満であればアイテムなし、防御ポイントの現在値が20以上40未満であればアイテム1つ、防御ポイントの現在値が40以上60未満であればアイテム2つ、防御ポイントの現在値が60以上であればアイテム3つを報酬として決定してもよい。
また、決定手段54は、攻撃側ユーザが仲間に対戦処理への参加を要請し、要請先ユーザが対戦処理に参加して勝利した場合に付与する報酬についても、防御側ユーザの防御ポイントの現在値に基づいて決定してもよい。
【0090】
本変形例における第1提示手段56は、攻撃側ユーザにより対戦相手(防御側ユーザ)として選択されるユーザのリストを、防御側ユーザの防御ポイントの現在値に関する情報又は攻撃側ユーザに付与される報酬に関する情報とともに攻撃側ユーザに対戦処理前に提示する機能を備える。第1提示手段56の機能は、例えば以下の通り実現される。
【0091】
CPU21は、
図8のトップページP1上でユーザ(攻撃側ユーザ)によりメニューm2が選択されたことを認識すると、他のユーザから防御側ユーザとなるユーザを決定する。次に、CPU21は、ユーザデータベースにアクセスし、決定した防御側ユーザの防御ポイントの現在値を取得する。次に、CPU21は、取得した防御ポイントの現在値に基づく情報、又は、決定した攻撃側ユーザに付与される報酬に関する情報とともに、攻撃側ユーザにより対戦相手として選択されるユーザのリストを含むウェブページP4のHTMLデータを生成して、ユーザの通信端末10宛に送信する。
例えば、防御側ユーザの防御ポイントの現在値に基づく情報は、防御ポイントの現在値を明示する情報(例えば、「防御P:20」等)であってもよいし、防御ポイントの現在値を暗示する情報であってもよい。
例えば、防御ポイントの現在値が20未満であれば星なし、防御ポイントの現在値が20以上40未満であれば星1つ、防御ポイントの現在値が40以上60未満であれば星2つ、防御ポイントの現在値が60以上であれば星3つの画像情報を提示することで対戦履歴を暗示してもよい。あるいは、防御側ユーザの連敗回数が3回以上であれば星なし、連敗回数が2回であれば星1つ、連敗回数が1回であれば星2つ、連敗回数が0であれば星3つの画像情報を提示することで対戦履歴を暗示してもよい。あるいは、敗北回数が100回以上であれば星なし、50回以上100回未満であれば星1つ、20回以上50回未満であれば星2つ、20回未満であれば星3つの画像情報を提示することで対戦履歴を暗示してもよい。
また、報酬に関する情報は、例えば、報酬を明示する情報(例えば、アイテム名、「1000強化ポイント」等)であってもよいし、報酬を暗示する情報であってもよい。
例えば、報酬が1000強化ポイントであれば星1つ、2000強化ポイントであれば星2つ、3000強化ポイントであれば星3つの画像情報を提示することで対戦履歴を暗示してもよい。
あるいは、報酬がアイテム1つであれば星1つ、アイテム2つであれば星2つ、アイテム3つであれば星3つの画像情報を提示することで対戦履歴を暗示してもよい。
【0092】
本変形例においても、
図12のフローチャートと同様に対戦処理が行われる。なお、本変形例では、
図12のフローチャートのステップS210において、攻撃側ユーザに付与する報酬を決定するとき、CPU21は、防御側ユーザの防御ポイントの現在値に基づいて報酬を決定する。なお、ステップS208で判定された、対戦結果が反映された防御ポイントの現在値に基づいて報酬を決定してもよいし、ステップS208で判定された対戦結果が反映される前の防御ポイントの現在値に基づいて報酬を決定してもよい。
また、本変形例では、
図12のフローチャートのステップS214において、防御側ユーザに付与する報酬を決定するとき、CPU21は、攻撃側ユーザの攻撃ポイントの現在値に基づいて報酬を決定する。なお、防御側ユーザが勝利した場合の報酬を一律に設定してもよい。
【0093】
本変形例に係るゲームでは、防御側ユーザが短期間に連続して対戦相手として選択されると、防御ポイントが急激に減少してしまい、防御側ユーザのチームを構成するカードが少なくなり、連続して敗北するおそれがある。
本変形例においては、防御ポイント対戦処理用パラメータが減少して対戦処理能力が制限されるユーザに勝利したときに得られる報酬を減らすことで、特定のユーザが連続して対戦相手として選択されることを回避することができる。
なお、第2提示手段59において、第1提示手段56と同様に、防御側ユーザの防御ポイントの現在値に基づく情報を提示してもよい。
【0094】
以上、本発明の実施形態について詳細に説明したが、本発明は上記実施形態に限定されない。また、実施形態は、本発明の主旨を逸脱しない範囲において、種々の改良や変更をしてもよいのは勿論である。上記実施形態及び各変形例に記載された技術的事項は適宜組合せて適用してもよい。
【0095】
上述した実施形態では、対戦型のカードゲームについて説明したが、本発明はこれに限らず、任意の対戦型のゲームに適用することができる。例えば、対戦型のアクションゲーム、対戦型のスポーツゲームや対戦型の音楽ゲームにも本発明を適用することができる。
上述した実施形態では、ユーザによる通信端末に対する所定の操作入力は、ユーザの通信端末に対する所定の操作釦の押下操作の入力や、タッチパネル機能を備えた通信端末に対する表示画面上のタッチ操作の入力であるとしたが、操作入力はこれに限られない。操作入力は、加速度センサを備えた通信端末を振ることによる操作入力、あるいはジェスチャによる操作入力(ジェスチャ入力)であってもよい。ジェスチャ入力では、撮像機能を備えた通信端末に対する所定のジェスチャを行うことで通信端末がそのジェスチャを画像認識し、予めジェスチャに対応付けられた操作入力を認識する。また、音声認識プログラムを実行可能な通信端末の場合には、操作入力は、音声を入力することにより行われてもよい。
【0096】
本発明に係るゲーム制御装置は、ユーザの通信端末上でゲームを表示するために当該通信端末との間で無線又は有線による通信を確立できるサーバ等の情報処理装置であってもよい。
上述した各実施形態では、ネットワーク上のゲームサーバ20及びデータベースサーバ30によって、実行手段51、対戦処理手段52、記憶手段53、決定手段54、報酬付与手段55、第1提示手段56の各機能を実現する構成としたが、この構成に限られない。これらの少なくとも一部の手段を通信端末10によって実現する構成としてもよい。通信端末10とゲームサーバ20とでは実質的に同一のハードウエア構成を採ることができるため、上記各実施形態に記載したようにして通信端末10によっても一部の機能を実現できる。例えば、
図20A、
図20Bに、
図10に示した機能ブロック図の各機能について、通信端末10と、ゲームサーバ20及びデータベースサーバ30との機能分担の例を示す。また、上述した各実施形態では、各種データ(例えば、カードデータベース、ユーザ毎の登録テーブルなど)をデータベースサーバ30(ゲームデータベース32)が記憶している構成としたが、その一部を通信端末10内の記憶装置に記憶させてもよい。その場合には、記憶装置は、通信端末10内のRAM13や図示しないHDD(Hard Disk Drive)などの大容量記憶装置であってよい。
【0097】
上述した実施形態では、ユーザ間の対戦ゲームがネットワーク上のサーバを介して実現される場合について説明したが、この場合に限られない。サーバを用いずに直接ユーザ端末間で行われる通信方式、例えばP2P(Peer to Peer)や無線アドホックネットワークによる通信を利用して、ユーザ間の対戦ゲームを実現してもよい。