[1.実施形態]
以下、本発明の実施形態の例について図面に基づき詳細に説明する。図1は、本発明の実施形態に係るゲームシステムの全体構成を示す図である。図1に示すように、実施形態に係るゲームシステム1は、サーバ10(ゲーム制御装置)と複数のユーザ端末20とを含む。サーバ10及び複数のユーザ端末20は、通信ネットワーク2に接続されており、サーバ10とユーザ端末20との間で相互にデータ通信が可能である。
例えば、サーバ10は、サーバコンピュータである。図1に示すように、サーバ10は、制御部11、記憶部12、通信部13、及び光ディスクドライブ部14を含む。
制御部11は、例えば、CPU等を含む。制御部11は、オペレーティングシステムやその他のプログラムに従って情報処理を実行する。記憶部12は、主記憶部(例えば、RAM)及び補助記憶部(例えば、ハードディスクドライブ又はソリッドステートドライブ)を含む。通信部13は、通信ネットワーク2を介して他の装置(例えば、ユーザ端末20)とデータを授受するためのものである。光ディスクドライブ部14は、光ディスク(情報記憶媒体)に記憶されたプログラムやデータを読み取る。
プログラムやデータは、光ディスクを介してサーバ10に供給される。即ち、光ディスクに記憶されたプログラムやデータが、光ディスクドライブ部14によって読み出され、記憶部12に記憶される。なお、サーバ10は、光ディスク以外の情報記憶媒体(例えばメモリカード)に記憶されたプログラムやデータを読み取るための構成要素(例えばメモリーカードスロット)を備えるようにしてもよい。そして、プログラムやデータが光ディスク以外の情報記憶媒体を介してサーバ10に供給されるようにしてもよい。また、プログラムやデータは、通信ネットワーク2を介して遠隔地からサーバ10に供給されるようにしてもよい。
サーバ10は、データベース15にアクセスできるようになっている。データベース15はサーバ10内に構築されていてもよいし、サーバ10とは別のサーバコンピュータ内に構築されていてもよい。
また、図1には図示していないが、サーバ10とは別に各ユーザ端末20のユーザを認証するための認証サーバを設けてもよい。また、多くのユーザ端末20からのアクセスを受け入れるために複数のサーバ10を設ける場合は、その複数のサーバ10間の負荷を調整するためのロードバランサを設けてもよい。また、サーバ10は、単一のサーバ装置として構成してもよいが、機能を分散させた複数のサーバ装置として構成してもよい。
ユーザ端末20は、ユーザによって使用される情報処理装置である。ユーザ端末20は、ユーザがゲームをプレイするために使用する情報処理装置であり、例えば、携帯電話機(スマートフォンを含む)、携帯情報端末(タブレット型コンピュータを含む)、パーソナルコンピュータ、携帯用ゲーム機、又は家庭用ゲーム機(据置型ゲーム機)である。なお、以下では、ユーザ端末20が携帯電話(スマートフォンを含む)である場合について説明する。
図1に示すように、ユーザ端末20は、制御部21、記憶部22、通信部23、操作部24、表示部25、及び音声出力部26を含む。制御部21、記憶部22、及び通信部23は、サーバ10の制御部11、記憶部12、及び通信部13と同様である。
操作部24は、ユーザが各種操作/指示を行うためのものである。例えば、表示部25に表示される画面内の位置をユーザが指示するためのポインティングデバイスが操作部24として備えられる。ポインティングデバイスは、例えば、表示部25の上に重ねて設けられるタッチパネルである。なお、ユーザ端末20は、例えばマウス、スティック、タッチパッド、ボタン(キー)、又はレバー(スティック)等を備えるようにしてもよい。更に、本実施形態では、ユーザが操作部24を用いて各種操作を行う場合を説明するが、ユーザが行う操作には、音声入力も含まれる。この場合、ユーザ端末20は音声を検出するためのマイク等を含み、当該マイクから検出される音声が、ユーザの操作に相当する。
表示部25は、例えば、液晶ディスプレイ又は有機ELディスプレイ等であり、各種画面を表示する。音声出力部26は、例えば、スピーカ又はヘッドホン等であり、音声データを出力する。
プログラムやデータは、通信ネットワーク2を介して遠隔地からユーザ端末20に供給される。なお、ユーザ端末20は、メモリカード又は光ディスク等の情報記憶媒体に記憶されたプログラムやデータを読み取るための構成要素を備えるようにしてもよい。この場合、メモリカード又は光ディスクに記憶されたプログラムやデータが読み出され、記憶部22に記憶されるようにしてもよい。
サーバ10では、例えば、HTTPデーモンが起動される。一方、ユーザ端末20ではブラウザが起動される。ブラウザを介して処理要求(HTTPリクエスト)がユーザ端末20からサーバ10に送信される。また、上記の処理要求に対応する処理結果(HTTPレスポンス)が、サーバ10からユーザ端末20に送信される。例えば、ウェブページ記述言語で記述されたページデータがユーザ端末20に送信される。ユーザ端末20では、このページデータに基づいて、処理結果に基づく画面が表示部25に表示される。
[2.ゲームシステムで実行されるゲーム]
ゲームシステム1では、ユーザグループに属する複数のユーザが協力するゲームが実行される。以下では、複数のユーザが所属するギルド同士で対戦するゲームについて説明する。ギルド同士の対戦では、各ユーザが収集したカード(例えば、キャラクタやアイテムを示すカード)が使用される。ユーザがゲームをプレイするためにユーザ端末20を操作してサーバ10にアクセスすると、メイン画面が表示部25に表示される。
図2は、メイン画面の一例を示す図である。図2に示すように、メイン画面30には、ユーザやゲームの状況等に関する各種情報が表示される。メイン画面30は、ギルド名32を含む。ギルド名32には、ユーザが所属するギルドの名称が表示される。ゲームシステム1を利用する各ユーザは、複数のギルドのうちの何れかに所属する。ユーザが所属するギルドは、自分自身で作成したものであってもよいし、他のユーザが作成したものであってもよい。他にも、ユーザが所属するギルドは、ゲームシステム1において予め用意されたものであってもよい。
また、メイン画面30は、代表カード画像34、現在状況画像36、及びお知らせ欄38を含む。ユーザが所有しているカードのうちの代表カードの画像が、代表カード画像34として表示される。現在状況画像36は、ゲームにおけるユーザの現在の状態を示し、例えば、ユーザが保有するアイテムや各種パラメータが表示される。お知らせ欄38には、各種メッセージが表示される。ユーザが当該メッセージを選択すると、他のユーザから送られたメッセージを表示させたり、ユーザ宛てに贈られた各種特典を受け取ったりすることができる。
更に、メイン画面30は、冒険ボタン40A、装備ボタン40B、強化ボタン40C、進化ボタン40D、ギルド戦ボタン40E、及びギルド情報ボタン40Fを含む。
冒険ボタン40Aは、仮想世界における冒険を進行するためのボタンである。冒険ボタン40Aが選択された場合、ユーザが冒険を進行させるための画面が表示部25に表示される。当該画面においてユーザが冒険を進行させると、所与の条件のもとでゲームイベントが発生する。当該ゲームイベントでは、ユーザにカードやアイテムが付与されたり、ユーザが所有するカードやアイテムを用いて敵と戦ったりする。
装備ボタン40Bは、ユーザの装備を設定するためのボタンである。装備ボタン40Bが選択された場合、ユーザが保有するアイテムのうちから装備するものを選択するための画面が表示部25に表示される。この画面において、ユーザが選択したアイテムが対戦において使用されたり、現在状況画像36に表示されたりする。
強化ボタン40Cは、ユーザが所有しているカードを強化(育成)するためのボタンである。強化ボタン40Cが選択された場合、カードを強化するための画面が表示部25に表示される。ここでは、あるカードに他のカードを合成することによってカードを強化することができる。例えば、上記画面において、ユーザは、強化したいカードと、当該カードを強化するために消費する他のカードと、を選択することによってカードを強化すると、カードのパラメータが上昇する。
進化ボタン40Dは、ユーザが所有しているカードを進化させるためのボタンである。ここでは、各カードの強化には上限が定められており、ある閾値以上のパラメータには強化できないようになっている。カードが進化した場合には、当該カードの強化の上限が解除され、上記閾値以上のパラメータにカードを強化することができる。進化ボタン40Dが選択された場合、カードを進化させるための画面が表示部25に表示される。例えば、ユーザは、進化させたいカードと、当該カードと同じ種類のカードと、を選択することによってカードを進化させることができる。
ギルド戦ボタン40Eは、ギルド同士が対戦するギルド戦に関する情報を表示させるためのボタンである。ギルド戦の詳細については後述する。
ギルド情報ボタン40Fは、ユーザが所属するギルドに関する画面を表示させるためのボタンである。ユーザがギルド情報ボタン40Fを選択すると、ギルド画面が表示部25に表示される。
図3は、ギルド画面の一例を示す図である。図3に示すように、ギルド画面50には、ユーザが所属するギルドに関するギルド情報52が表示される。ギルド情報52には、ユーザが所属するギルドのギルド名、当該ギルドに関するパラメータ(例えば、ギルドのレベル、経験値、資産、所属ユーザ数、ランキング等)が含まれる。
更に、ギルド画面50には、所属ボタン54A、戦績ボタン54B、及び役割ボタン54Cが表示される。
所属ボタン54Aは、ギルドに所属する各ユーザに関する情報を表示させるためのボタンである。ユーザが所属ボタン54Aを選択すると、ギルドに所属する各ユーザに関する情報(例えば、ユーザ名、ユーザのアバター画像、ユーザのレベル等の各種パラメータ)を示す画面が表示部25に表示される。
戦績ボタン54Bは、ギルド戦における過去の結果を表示するためのボタンである。ユーザが戦績ボタン54Bを選択すると、過去のギルド戦で対戦したギルド名、対戦日時、対戦結果等を示す画面が表示部25に表示される。
役割ボタン54Cは、ギルドに所属する各ユーザの役割を表示するためのボタンである。役割は、ギルドにおいてユーザが果たすべき役目(例えば、役職)であり、各ギルド毎に一又は複数の役割が用意されている。各ギルドで設定可能な役割の種類は、ゲームの進行に応じて増減するようにしてもよい。例えば、ギルドの資産(仮想通貨)と引き換えに、新たな役割を追加するようにしてもよい。ユーザが役割ボタン54Cを選択すると、役割画面が表示部25に表示される。
図4は、役割画面の一例を示す図である。図4に示すように、役割画面60には、ギルドに設定可能な役割数62及び役割一覧64が表示される。役割一覧64には、各役割に関する情報が表示される。例えば、各ギルドの代表ユーザは、役割一覧64から、自分のギルドに所属するユーザの役割を設定することができる。
役割一覧64に示すように、役割毎にゲームにおける効果(例えば、ギルド戦における効果)が用意されている。例えば、所与の役割が設定されたユーザは、ギルド戦においてパラメータが変化したり、後述するスキルが使用可能になったりする。即ち、役割が設定されているユーザは、役割が設定されていないユーザよりも、ギルド戦を有利に進めることができることになる。
本実施形態では、ギルド戦は毎日開催され、1日にn回(nは自然数。ここでは、n=2)のギルド戦が実行される。例えば、ギルド戦は、1日のうちの第1の時刻(例えば、12時30分)が到来すると開始され、第1の時刻よりも後の第2の時刻(例えば、13時00分)が到来すると終了する。
ギルド戦における対戦組み合わせは、所定の条件に基づいて決定されるようにしてもよいし、ランダムに決定されるようにしてもよい。所定の条件に基づいて対戦組み合わせが決定される場合は、例えば、互いに同程度の強さのギルド同士が対戦するように対戦組み合わせが決定される。ギルド戦の開催期間内において、ユーザがメイン画面30のギルド戦ボタン40Eを選択すると、ギルド戦画面が表示部25に表示され、ユーザがギルド戦に参加することができる。
図5は、ギルド戦画面の一例を示す図である。図5に示すように、ギルド戦画面70では、ギルド戦に関する基本情報72及びフィールド画像74が表示される。基本情報72には、ギルド戦の残り時間及びギルド戦の戦況(例えば、自分のギルドの状況や対戦相手のギルドの状況)が表示される。
フィールド画像74には、仮想空間に配置されたp×q個のマス76が表示される(p,qは共に自然数。ここでは、p=q=5)。これらのマス76には、一のギルドに所属する各ユーザの操作対象であるキャラクタ78と、対戦相手のキャラクタ80と、が表示される。ユーザが自分の操作対象のキャラクタ78を選択すると、移動ボタン82A、攻撃ボタン82B、及びスキルボタン82Cが表示される。ユーザが移動ボタン82Aを選択すると、自分の操作対象であるキャラクタ78を移動させることができる。
図6は、ユーザがキャラクタ78を移動させた場合のギルド戦画面70の一例を示す図である。図6に示すように、ユーザが移動ボタン82Aを選択すると、キャラクタ78を他のマス76に移動させることができる。各キャラクタ78には攻撃可能な範囲が定められており、当該範囲に対戦相手のキャラクタ80が侵入すると、ユーザは、攻撃ボタン82Bを選択することができる。
図7は、ユーザが攻撃ボタン82Bを選択した場合のギルド戦画面70の一例を示す図である。ユーザが攻撃ボタン82Bを選択すると、所与の画面エフェクトが表示される。そして、図7に示すように、当該攻撃によりユーザが獲得した獲得ポイント数84が、ギルド戦画面70に表示される。例えば、キャラクタ78がキャラクタ80を攻撃した場合のダメージ数に基づいて、獲得ポイント数84が決定される。
上記のように、ギルド戦において、各ユーザは、対戦相手のキャラクタ80を攻撃することによって、ポイントを獲得することができる。本実施形態では、ギルド戦の終了時刻において獲得ポイント数の総計が多い方のギルドが勝利する。更に、ギルドに所属するユーザのうち、獲得ポイント数が最も多いユーザに所与の特典が付与されたり、各ユーザの獲得ポイント数に応じて異なる特典が付与されたりする。このため、ギルド戦の開催期間内において、各ユーザは、他のユーザと協力してギルド全体の獲得ポイント数を増加させつつ、個別の獲得ポイント数も増加させることを目指すことになる。
なお、本実施形態では、ギルドに所属する各ユーザのうちで役割が設定されているユーザは、スキルボタン82Cが選択可能になっている。ユーザがスキルボタン82Cを選択すると、当該ユーザの役割に応じたスキル(特殊効果)をギルド戦で使用することができる。例えば、ある役割が設定されたユーザがスキルボタン82Cを使用すると、通常よりも離れたマス76にいるキャラクタ80に対して攻撃ができるようになったり、同じギルドのユーザが操作するキャラクタ78の体力を回復させたりすることができる。
ユーザがスキルボタン82Cを選択して攻撃した場合も、キャラクタ80に与えたダメージに応じて、ユーザはポイントを獲得することができる。なお、いったんスキルを発動させた場合には、次にスキルを発動させるための待機時間が発生するようにしてもよい。
本実施形態では、上記のように実行されるギルド戦において、ギルド全体の獲得ポイント数や各ユーザによる個別の獲得ポイント数に応じて、各ユーザの役割が動的に変化することで、ゲームに飽きさせない構成になっている。以降、当該技術について詳細に説明する。
[3.ゲームシステムにおいて実現される機能]
図8は、ゲームシステム1で実現される機能のうち、本発明に関連する機能を主に示す機能ブロック図である。図8に示すように、ゲームシステム1は、データ記憶部100、役割設定部102、ミッション設定部104、効果取得部106、効果付与部108、ギルド戦実行部110、達成状況取得部112、及び役割変更部114を含む。
本実施形態では、これら各機能のうち、データ記憶部100は、記憶部12及びデータベース15を主として実現され、他の各機能は、制御部11を主として実現される。また、図7に示す各機能のうち、役割設定部102、ミッション設定部104、達成状況取得部112、及び役割変更部114以外の機能については、ゲームシステム1において省略するようにしてもよい。
[3−1.データ記憶部]
データ記憶部100は、ゲームを実行するために必要な各種データを記憶する。ここでは、データ記憶部100は、役割テーブル、ギルド情報テーブル、及びギルド戦テーブルを記憶する。
図9は、役割テーブルの一例を示す図である。役割テーブルは、ゲームにおいて用意された複数種類の役割を示し、複数種類の役割の各々と、ゲームにおける効果と、が関連付けられている。図9に示すように、役割テーブルは、「役割ID」フィールド、「役割名」フィールド、及び「効果」フィールドからなる。
「役割ID」フィールドは、ゲームにおいて用意された複数の役割の各々を識別する情報(役割ID)を示す。「役割名」フィールドは、各役割の名称を示す。これら複数種類の役割のうちの少なくとも一つが、各ギルドにおいて使用可能になる。各ギルドにおいて使用可能な役割は、後述するギルド情報テーブルに格納されている。
「効果」フィールドは、各役割が設定されたユーザに付与される効果を示す。ここでの効果とは、ゲームにおいてユーザが有利になること(ユーザがゲームを有利に進めるようになること)であり、例えば、ユーザが所属するギルドが勝利しやすくなることである。図9に示すように、各役割の効果は、ギルド戦に関連するものであってもよいし、ギルド戦に関連しないものであってもよい。
ギルド戦に関連する効果は、ユーザがギルド戦を有利に進めることができるようになるものであり、例えば、ギルド戦におけるパラメータを変化させること(例えば、カードの能力を向上させること)、ギルド戦において所与の行為ができるようになること(例えば、スキルを使用して攻撃範囲が広がること)、対戦相手が不利になることである。
ギルド戦に関連しない効果は、ゲームのうちでギルド戦以外の部分で発生する効果であり、例えば、冒険を有利に進めることができたり、合成を有利に行う(例えば、合成時のパラメータの変化率が向上する)ことができたりすることである。
図10は、ギルド情報テーブルの一例を示す図である。図10に示すように、ギルド情報テーブルは、「ギルドID」フィールド、「ギルド名」フィールド、「所属ユーザ」フィールド、「役割」フィールド、及び「ギルド情報」フィールドからなる。
「ギルドID」フィールドは、ゲームにおいて用意された複数のギルドの各々を識別する情報(例えば、ギルドID)を示す。「ギルド名」フィールドは、各ギルドの名称を示す。「所属ユーザ」フィールドは、各ギルドに所属するユーザを識別する情報(例えば、ユーザID)を示す。
「役割」フィールドは、各ギルドで設定可能な役割を示す。ユーザに新たに役割が設定されたり、ユーザに設定された役割が変更されたりすると、「役割」フィールドの内容が更新される。
「ギルド情報」フィールドは、各ギルドの現在の状況を示す。ここでは、各ギルドに関するパラメータが「ギルド情報」フィールドに格納され、例えば、各ギルドのレベルやランキング等が格納される。
図11は、ギルド戦テーブルの一例を示す図である。図11に示すように、ギルド戦テーブルは、「ギルド戦ID」フィールド、「対戦組み合わせ」フィールド、「対戦日時」フィールド、「対戦状況」フィールド、及び「対戦結果」フィールドを含む。
「ギルド戦ID」フィールドは、ギルド戦における各対戦を一意に識別する情報を示す。「対戦組み合わせ」フィールドは、ギルド戦で対戦するギルド同士のギルドIDを示す。各ギルド戦の開始前において、ギルド情報テーブルに格納されたギルドに基づいて対戦組み合わせが決定され、「対戦組み合わせ」フィールドに格納される。「対戦日時」フィールドは、各ギルド戦の実行日時を示す。ここでは、ギルド戦の開始時刻及び終了時刻が、「対戦日時」フィールドに格納される。
「対戦状況」フィールドは、実行中のギルド戦の状況(戦況)を示す。例えば、ギルド戦に参加するユーザのユーザID、各ギルドの獲得ポイント数、各ユーザの獲得ポイント数、役割が設定されたユーザがスキルを発動させた時刻、ギルド戦が行われている仮想世界の現在の様子を示すデータ(例えば、キャラクタ78(80)の位置を示すデータ)が、「対戦状況」フィールドに格納される。
「対戦結果」フィールドは、ギルド戦の対戦結果を示す。ここでは、対戦結果として、勝利又は敗北したギルドを示す情報、各ギルドの獲得ポイント数、及び各ユーザの個別の獲得ポイント数等が格納される。ギルド戦が終了すると、「対戦結果」フィールドにデータが追加される。
なお、制御部11は、データ記憶部100に記憶された各種データを取得又は更新する手段として機能する。また、データ記憶部100は、ゲームを実行するために必要なデータを記憶するようにすればよく、データ記憶部100が記憶するデータは、上記の例に限られない。他にも例えば、各ユーザに関するデータ(例えば、各種設定情報やユーザに関するパラメータ等)、各ユーザに付与されるカードのマスタデータ、及び各ユーザに付与されたカードやアイテムに関するデータ(例えば、カードやアイテムのパラメータ)が記憶されているようにしてもよい。
[3−2.役割設定部]
役割設定部102は、複数のユーザのうちの少なくとも一人に、複数種類の役割のうちの少なくとも一つ(例えば、代表ユーザにより指定された役割)を設定する。役割設定部102は、ギルドに所属するユーザの全員に何かしらの役割を設定するようにしてもよいし、一部のユーザにのみ役割を設定するようにしてもよい。
また、ユーザ同士で役割が重複しないようにしてもよいし、ユーザ同士で役割が重複するようにしてもよい。即ち、ある役割が、一のユーザにのみ設定されるようにしてもよいし、複数のユーザに設定されるようにしてもよい。更に、各ユーザに設定される役割は、ギルド戦に関連する役割であってもよいし、ギルド戦に関連しない役割であってもよい。
[3−3.ミッション設定部]
ミッション設定部104は、ユーザグループ(ここでは、ギルド)又は各ユーザのミッションを設定する。なお、ここでのミッションとは、ゲームにおける目的(目標)であり、ゲームにおいて達成すべき課題ともいえる。本実施形態では、ギルドのミッション(以降、単に全体ミッションという)と、各ユーザのミッション(以降、単に個別ミッションという)と、の2種類のミッションを例に挙げて説明する。
まず、全体ミッションとは、ギルドに所属する各ユーザが協力して達成するミッションであり、ゲームにおけるギルド全体の目的ともいえる。本実施形態では、「ギルド全体の獲得ポイント数を多くすること」が、全体ミッションに相当する。全体ミッションは、ギルドに所属するユーザ全員のゲームプレイに応じて達成状況が変化する。
次に、個別ミッションとは、各ユーザが個別に達成するミッションであり、ゲームにおける各ユーザの個別の目的ともいえる。本実施形態では、「ユーザ毎の個別の獲得ポイント数を多くすること」が、各ユーザのミッションに相当する。各ユーザのミッションは、当該ユーザのゲームプレイのみに応じて達成状況が変化する。
なお、ここでは、各ユーザに設定される個別ミッションの内容が同じである場合を説明するが、ユーザ毎に個別ミッションの内容は異なっていてもよい。即ち、あるギルドに所属するユーザ毎に異なる内容の個別ミッションが設定されるようにしてもよい。また、あるユーザの個別ミッションの内容と他のユーザの個別ミッションの内容とが関連しているようにしてもよいし、関連していないようにしてもよい。即ち、ユーザ間で協力しあいながら進行させる個別ミッションが設定されるようにしてもよいし、ユーザ間で協力せず独自に進行させる個別ミッションが設定されるようにしてもよい。
また、個別ミッションが、全体ミッションに関連する内容である場合を説明するが、全体ミッションに関連しない内容(例えば、カードを合成すること)であってもよい。即ち、個別ミッションを進行させると全体ミッションも結果的に進行しているようにしてもよいし、個別ミッションを進行させても全体ミッションが進行しないようにしてもよい。
[3−4.効果取得部]
効果取得部106は、複数の役割の各々とゲームにおける効果を関連付けて記憶する手段(例えば、データ記憶部100)の記憶内容を取得する。ここでは、効果取得部106は、役割テーブルを参照し、各役割に関連付けられた効果を取得することになる。
なお、本実施形態では、全体ミッション又は個別ミッションに関連する効果(例えば、全体ミッション又は個別ミッションの達成状況を促進するための効果)が発生する場合について説明するが、全体ミッション又は個別ミッションに関連しない効果(例えば、全体ミッション又は個別ミッションの達成状況とは関係のない効果)が発生してもよい。即ち、ギルド戦に関連する効果が発生するようにしてもよいし、ギルド戦に関連しない効果が発生するようにしてもよい。
更に、各役割の効果は、他の役割に関連する効果(例えば、他の役割のユーザを支援するための効果。即ち、他の役割のユーザが有利になる効果)であってもよいし、他の役割に関連しない効果(例えば、自分のみが有利になる効果)であってもよい。
[3−5.効果付与部]
効果付与部108は、役割設定部102により役割が設定されたユーザに、当該役割に関連付けられた効果(例えば、全体ミッション又は個別ミッションに関連する効果や他の役割に関連する効果)を付与する。効果を付与するとは、ゲームにおいて効果を発生(発動)させることである。ここでは、図9に示すように、効果付与部108は、役割毎に異なる効果を付与することになる。
[3−6.ギルド戦実行部]
ギルド戦実行部110は、一のギルドに所属する各ユーザのゲームデータと、対戦相手ゲームデータと、に基づいてギルド戦を実行する。ユーザのゲームデータとは、ゲームにおいて用意されたデータのうちでユーザに付与されたデータであり、例えば、ユーザが保有するカードデータ、キャラクタデータ、及びアイテムデータの少なくとも一つである。
本実施形態では、ギルド戦実行部110は、繰り返し到来するタイミングにおいて、ギルド戦を実行する。例えば、ユーザが攻撃ボタン82Bを選択してキャラクタ78(80)が攻撃を行うと、ギルド戦実行部110は、ユーザが保有するカードのパラメータと、攻撃対象のパラメータと、に基づいてシミュレーション処理を実行し、ダメージ数を決定する。そして、ギルド戦実行部110は、当該ダメージ数に基づいて、ユーザが保有するカードのパラメータや攻撃対象のパラメータを変化させたり、ギルド全体の獲得ポイント数やユーザの個別の獲得ポイント数を変化させたりする。
[3−7.達成状況取得部]
達成状況取得部112は、ゲームの実行結果に基づいて、ユーザグループ(ここでは、ギルド)又は各ユーザのミッションの達成状況を取得する。ミッションの達成状況を示すデータ(例えば、数値)は、データ記憶部100に記憶されている。本実施形態では、ギルド全体の獲得ポイント数が、全体ミッションの達成状況に相当し、各ユーザによる個別の獲得ポイント数が、個別ミッションの達成状況に相当する。
[3−8.役割変更部]
役割変更部114は、達成状況取得部112により取得された達成状況に基づいて、役割設定部102により設定された役割(例えば、代表ユーザにより指定された役割)を変更する。役割変更部114は、達成状況取得部112により取得された達成状況が所与の達成状況になった場合に、各ユーザの役割を変更する。ここでは、各ユーザの役割を変更する方法として、2つを例に挙げて説明する。
第一に、全体ミッションの達成状況に基づいて各ユーザの役割を変更する方法について説明する。この場合、役割変更部114は、全体ミッションの達成状況が所与の状況に達した場合、各ユーザの役割を変更する。例えば、役割変更部114は、ギルド全体の獲得ポイント数が所与の条件を満たした場合、各ユーザの役割を変更することになる。
第二に、個別ミッションの達成状況に基づいて各ユーザの役割を変更する方法について説明する。この場合、役割変更部114は、個別ミッションの達成状況が所与の状況に達した場合、各ユーザの役割を変更する。例えば、役割変更部114は、各ユーザが個別に獲得した獲得ポイント数が所与の条件を満たした場合、各ユーザの役割を変更することになる。
図12は、役割変更部114の処理内容を説明するための図である。図12に示すミッションの達成状況と役割との関連付けは、データ記憶部100に記憶されている。当該関連付けは、テーブル形式であってもよいし数式形式であってもよい。ここでは、達成状況に関する条件と役割の変更方法とが関連付けられているともいえる。
役割変更部114は、達成状況取得部112により取得された達成状況に関連付けられた役割に基づいて、各ユーザの役割を変更する。例えば、変更後の役割が予め定められているようにしてもよいし、変更前の役割と変更後の役割との組み合わせが定められているようにしてもよい。この場合、役割変更部114は、各ユーザの現在の役割に関連付けられた変更後の役割になるように、各ユーザの役割を変更する。
なお、役割を変更する方法は、上記の例に限られず、予め定められた方法で各ユーザの役割が変更されるようにすればよい。例えば、ギルドで設定可能な役割のうちで、各ユーザの役割がランダムに変更される(例えば、乱数に基づいて役割がシャッフルされる)ようにしてもよい。
また、役割変更部114は、ギルドに所属する全ユーザの役割を変更するようにしてもよいし、一部のユーザの役割のみを変更するようにしてもよい。更に、役割変更部114は、あるユーザの個別ミッションの達成状況に応じて、当該ユーザの役割を変更するようにしてもよいし、他のユーザの役割を変更するようにしてもよい。即ち、役割変更部114は、一のユーザの個別ミッションの達成状況、又は、他のユーザの個別ミッションの達成状況に基づいて、当該一のユーザの役割を変更するようにしてもよい。
[4.ゲームシステムで実行される処理]
図13及び図14は、ゲームシステム1で実行される処理を示す図である。以下に説明する処理は、ギルド戦の開始時刻が到来した場合に実行される。例えば、サーバ10の記憶部12又は光ディスク等に記憶されたプログラムを制御部11が実行し、ユーザ端末20の記憶部22等に記憶されたプログラムを制御部21が実行することによって実行される。下記に説明する処理が実行されることによって、図8に示す各機能ブロックが実現される。なお、下記の処理が実行されるにあたり、ギルド戦の対戦組み合わせは、予め決定されているものとする。
図13に示すように、サーバ10においては、制御部11は、ギルド戦の開始処理を実行する(S1)。S1においては、制御部11は、各ギルド戦の状況を示すデータを生成し、ギルド戦テーブルに格納する。例えば、制御部11は、各ギルド戦で対戦するギルドに所属する各ユーザのキャラクタ78(80)をマス76上の初期位置に配置する。
制御部11は、ユーザ端末20の表示部25にギルド戦画面70を表示させるか否かを判定する(S2)。S2においては、制御部11は、例えば、ユーザ端末20からギルド戦画面70の表示要求を受け付けたか否かを判定する。なお、ユーザ端末20がサーバ10に情報を送信する場合、ユーザIDがサーバ10に送信される。サーバ10は、当該ユーザIDに基づいて、どのユーザがアクセスしているかを特定する。以降の処理についても同様である。
ギルド戦画面70を表示させる場合(S2;Y)、制御部11は、ギルド戦画面70のHTMLデータを生成してユーザ端末20に送信する(S3)。S3においては、制御部11は、ギルド情報テーブル及びギルド戦テーブルを参照して、ギルド戦画面70を表示させるユーザ端末20のユーザに対応するギルド戦を特定し、ギルド戦画面70のHTMLデータを生成することになる。
ユーザ端末20においては、HTMLデータを受信すると、制御部21は、ギルド戦画面70を表示部25に表示させる(S4)。S4においては、ギルド戦における最新の戦況が反映されたギルド戦画面70が表示部25に表示されることになる。
制御部21は、操作部24からの検出信号に基づいて、ユーザの操作を取得する(S5)。なお、S5においては、ユーザの操作対象のキャラクタ78(80)の攻撃可能範囲に攻撃対象がいない場合には、攻撃ボタン82Bは選択できないようになっている。また、ユーザに役割が設定されていない場合には、スキルボタン82Cが選択できないようになっている。更に、ユーザがスキルを使用した後、所定時間が経過していない場合にも、スキルボタン82Cが選択できないようになっている。なお、ユーザによる攻撃又はスキルの使用を制限する方法として、攻撃ボタン82B及びスキルボタン82Cが選択できないようになっている場合を説明するが、当該方法は、これに限られない。他にも例えば、攻撃ボタン82B及びスキルボタン82Cがギルド戦画面70に表示されないようにしてもよい。
ユーザが移動ボタン82Aを選択した場合(S5;移動ボタン)、制御部21は、移動ボタン82Aが選択されたことの通知をサーバ10に送信する(S6)。なお、ギルド戦画面70において、ユーザの操作対象であるキャラクタ78(80)の移動先のマス76を指定可能であり、S6における通知には、ユーザが指定した移動先のマス76を示す情報も含まれているものとする。
サーバ10においては、移動ボタン82Aが選択されたことの通知を受信すると、制御部11は、当該通知に従って、キャラクタ78(80)を移動させ(S7)、後述するS16の処理に移行する。S7においては、制御部11は、ユーザが指定した移動先のマス76にキャラクタ78(80)が移動するように、ギルド戦テーブルに格納される現在の状況を更新する。
一方、ユーザが攻撃ボタン82Bを選択した場合(S5;攻撃ボタン)、制御部21は、攻撃ボタン82Bが選択されたことの通知をサーバ10に送信する(S8)。なお、ユーザの操作対象であるキャラクタ78(80)の攻撃可能範囲に複数のキャラクタ80(78)が含まれている場合には、ユーザにより指定された攻撃対象を示す情報が、当該通知に含まれるものとする。なお、攻撃可能範囲に複数のキャラクタ80(78)が含まれている場合には、これら複数のキャラクタ80(78)の全てが攻撃対象になるようにしてもよい。
サーバ10においては、攻撃ボタン82Bが選択されたことの通知を受信すると、制御部11は、キャラクタ78(80)に攻撃をさせる(S9)。S9においては、制御部11は、ユーザのカード(例えば、キャラクタやアイテム)のパラメータと、攻撃対象のカードのパラメータと、に基づいてシミュレーション処理を実行し、ダメージ数を算出する。
制御部11は、S9における攻撃結果に基づいて、ギルド全体の獲得ポイント数と、攻撃をしたユーザの獲得ポイント数と、を更新し(S10)、後述するS14の処理に移行する。S10においては、制御部11は、全体ミッションの達成状況と個別ミッションの達成状況とを更新することになる。
一方、ユーザがスキルボタン82Cを選択した場合(S5;スキルボタン)、図14に移り、制御部21は、スキルボタン82Cが選択されたことの通知をサーバ10に送信する(S11)。
サーバ10においては、スキルボタン82Cが選択されたことの通知を受信すると、制御部11は、キャラクタ78(80)のスキルを発動させ(S12)、ギルド戦テーブルに格納されたスキルの使用時間を更新する(S13)。S12においては、制御部11は、ギルド情報テーブルを参照し、スキルボタン82Cを選択したユーザの役割を特定し、当該役割に関連付けられたスキルに基づいて処理を実行する。例えば、S12において発動するスキルが攻撃に関するものであれば、S9及びS10と同様の処理が実行され、ダメージ数が決定されることになる。
制御部11は、ギルド全体の獲得ポイント数又は各ユーザの獲得ポイント数が所与のポイント数以上になったか否かを判定する(S14)。S14においては、制御部11は、ギルド全体のミッションの達成状況又は各ユーザのミッションの達成状況が所与の状況になったか否かを判定することになる。
ギルド全体の獲得ポイント数又は各ユーザの獲得ポイント数が所与のポイント数以上になったと判定された場合(S14;Y)、制御部11は、ギルドに所属するユーザの役割を変更する(S15)。S15においては、制御部11は、ギルドに所属する各ユーザと役割との組み合わせを、現在の組み合わせから異ならせることになる。以降、当該変更された役割に基づいてギルド戦が実行される。
一方、ギルド全体の獲得ポイント数又は各ユーザの獲得ポイント数が所与のポイント数以上になったと判定されない場合(S14;N)、制御部11は、ギルド戦の終了タイミングが到来したか否かを判定する(S16)。この場合には、S15の処理が実行されないので、各ユーザの役割は変更されない。
ギルド戦の終了タイミングが到来していないと判定された場合(S16;N)、S2の処理に戻る。この場合、ギルド戦の終了タイミングが到来するまで、各ユーザ端末20にギルド戦画面70を表示させ、各ユーザの操作に応じてギルド戦が進行することになる。
ギルド戦の終了タイミングが到来したと判定された場合(S16;Y)、制御部11は、ギルド戦の対戦結果を決定し(S17)、本処理は終了する。なお、制御部11は、ギルド戦の終了時に、次のギルド戦の対戦組み合わせを決定するようにしてもよい。
以上説明したゲームシステム1によれば、ギルド戦におけるギルド全体の獲得ポイント数や各ユーザが個別に獲得したポイント数に応じて、各ユーザに設定された役割を変更することができる。各ユーザが果たすべき役割が変化し状況に応じたゲームプレイをする必要があるため、役割が固定化されている場合に比べて、ゲームに飽きさせないようにすることができる。
更に、ギルドの代表ユーザが各ユーザの役割を指定する場合には、当該代表ユーザが役割の変更操作をしない限りは各ユーザの役割が変化しないことになるが、上記のようにギルド戦の状況に応じて役割を変化させることにより、代表ユーザが変更操作を行わなくても、各ユーザの役割が変化させることができる。
[5.変形例]
本発明は、以上説明した実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更可能である。
図15は、変形例の機能ブロック図である。図15に示すように、以降説明する変形例では、実施形態で説明した各機能に加えて、ミッション変更部116、効果変更部118、特典変更部120、履歴取得部122、ゲーム処理実行部124、対戦相手役割設定部126、及び対戦相手役割変更部128が実現される。これら各機能は、制御部11を主として実現される。なお、以降説明する変形例の各機能は、ゲームシステム1において省略するようにしてもよい。
(1)例えば、実施形態においては、各ユーザの個別ミッションの内容が同じである場合を説明したが、各ユーザの役割毎に異なるミッションが設定されているようにしてもよい。この場合、ある役割が設定されたユーザは、当該役割に関連付けられた個別ミッション(以降、役割別ミッションという。)を達成することを目指すことになる。
図16は、変形例(1)における役割テーブルの一例を示す図である。図16に示すように、役割テーブルには、複数種類の役割の各々とミッション(即ち、役割別ミッション)とが関連付けられて記憶されている。役割別ミッションは、各役割が設定されたユーザが個別に達成すべき個別ミッションである。
なお、実施形態で説明した個別ミッションと同様、役割別ミッションは、全体ミッションに関連する内容であってもよいし、全体ミッションに関連しない内容であってもよい。また、ある役割の役割別ミッションは、他の役割に関連する内容(例えば、他の役割のユーザを支援するミッション)であってもよいし、他の役割に関連しない内容であってもよい。即ち、役割別ミッション同士が互いに関連する内容であってもよい。
ミッション設定部104は、役割設定部102により役割が設定されたユーザに、当該役割に関連付けられたミッション(例えば、全体ミッションに関連するミッション又は他の役割に関連するミッション)を設定する。即ち、ミッション設定部104は、ユーザに設定された役割に応じて異なる役割別ミッションを、当該ユーザに設定することになる。例えば、ゲームにおける役割の重要度が高いほど、達成するのが難しい役割別ミッションが設定されるようにしてもよい。
(1−1)更に、役割別ミッションの達成状況に応じて、各ユーザの役割が変更されるようにしてもよい。
変形例(1−1)の達成状況取得部112は、役割設定部102により役割が設定されたユーザの役割別ミッションの達成状況を取得する。例えば、変形例(1−1)では、ギルド戦テーブルの「対戦状況」フィールドに、役割別ミッションの達成状況を示すデータ(例えば、数値)が格納される。当該データは、当該役割が設定されたユーザのゲームプレイに応じて更新される。
役割変更部114は、役割設定部102により役割が設定されたユーザのミッションの達成状況に基づいて、役割設定部102により設定された役割を変更する。即ち、役割変更部114は、役割別ミッションの達成状況が所与の状況である場合、各ユーザの役割を変更することになる。この場合も、実施形態と同様に、変更前後の役割が予め定められていてもよいし、ランダムに役割が決定されるようにしてもよい。
また、この場合も実施形態と同様に、役割変更部114は、ギルドに所属する全ユーザの役割を変更するようにしてもよいし、一部のユーザの役割のみを変更するようにしてもよい。更に、役割変更部114は、あるユーザの役割別ミッションの達成状況に応じて、当該ユーザの役割を変更するようにしてもよいし、他のユーザの役割を変更するようにしてもよい。即ち、役割変更部114は、一のユーザの役割別ミッションの達成状況、又は、他のユーザの役割別ミッションの達成状況に基づいて、当該一のユーザの役割を変更するようにしてもよい。
変形例(1−1)によれば、役割別ミッションの達成状況に応じて、各ユーザの役割を変更することができる。例えば、あるユーザが役割別ミッションをある程度こなしてゲームに飽き始めてきた場合に、他の役割に変更して新たな役割別ミッションが設定されることになるので、より飽きさせないゲームを提供することができる。
(1−2)また例えば、上記では、役割別ミッションの達成状況に応じて各ユーザの役割が変更する場合を説明したが、ユーザの役割自体はそのまま変更せず、全体ミッションや役割別ミッションを変更するようにしてもよい。
変形例(1−2)のゲームシステムは、ミッション変更部116を含む。ミッション変更部116は、役割設定部102により役割が設定されたユーザの役割別ミッションの達成状況に基づいて、ユーザグループのミッション(即ち、全体ミッション)又は役割設定部102により役割が設定されたユーザのミッション(即ち、役割別ミッション)を変更する。
[全体ミッションを変更する場合]
例えば、複数種類の全体ミッション(即ち、クリア条件が互いに異なる全体ミッション)が用意されている場合、これら複数種類の全体ミッションのうちの少なくとも一つが各ギルドに設定される。現在設定されている全体ミッションを識別する情報は、例えば、ギルド戦テーブルに格納されるものとする。
ミッション変更部116は、役割別ミッションの達成状況が所与の状況になった場合、全体ミッションを別の種類に変更する。例えば、役割別ミッションの達成状況と全体ミッションとの関連付けがデータ記憶部100に記憶されており、ミッション変更部116は、役割別ミッションの達成状況に関連付けられた全体ミッションに基づいて、全体ミッションを変更する。この場合、変更前後の全体ミッションの組み合わせが予め定められているようにしてもよいし、複数種類の全体ミッションのうちでランダムに決定されるようにしてもよい。
[役割別ミッションを変更する場合]
例えば、役割毎に複数種類の役割別ミッション(即ち、クリア条件が互いに異なる役割別ミッション)が用意されている場合、これら複数種類の役割別ミッションのうちの少なくとも一つが各ユーザに設定される。現在設定されている役割別ミッションを識別する情報は、例えば、ギルド戦テーブルに格納されるものとする。
ミッション変更部116は、役割毎のミッションの達成状況が所与の状況になった場合、役割別ミッションを別の種類に変更する。例えば、役割別ミッションの達成状況と役割別ミッションとの関連付けがデータ記憶部100に記憶されており、ミッション変更部116は、役割別ミッションの達成状況に関連付けられた役割別ミッションに基づいて、役割別ミッションを変更する。この場合、変更前後の役割別ミッションの組み合わせが予め定められているようにしてもよいし、複数種類の役割別ミッションのうちでランダムに決定されるようにしてもよい。
なお、ミッション変更部116は、ギルドに所属する全ユーザの役割別ミッションを変更するようにしてもよいし、一部のユーザの役割別ミッションのみを変更するようにしてもよい。更に、ミッション変更部116は、あるユーザの役割別ミッションの達成状況に応じて、当該ユーザの役割別ミッションを変更するようにしてもよいし、他のユーザの役割別ミッションを変更するようにしてもよい。即ち、役割変更部114は、一のユーザの役割別ミッションの達成状況、又は、他のユーザの役割別ミッションの達成状況に基づいて、当該一のユーザの役割別ミッションを変更するようにしてもよい。
変形例(1−2)によれば、役割別ミッションの達成状況に応じて、全体ミッションや役割別ミッションを変更することができるので、より飽きさせないゲームをユーザに提供することができる。
(1−3)また例えば、全体ミッションの達成状況に応じて、役割別ミッションの内容が変わるようにしてもよい。
変形例(1−3)のミッション変更部116は、ユーザグループ(例えば、ギルド)のミッションの達成状況に基づいて、役割設定部102により役割が設定されたユーザのミッションを変更する。ミッション変更部116は、全体ミッションの達成状況が所与の状況になった場合、役割別ミッションを別の種類に変更する。
例えば、全体ミッションの達成状況と役割別ミッションとの関連付けがデータ記憶部100に記憶されており、ミッション変更部116は、全体ミッションの達成状況に関連付けられた役割別ミッションに基づいて、役割別ミッションを変更する。この場合、変形例(1−2)と同様、変更前後の役割別ミッションの組み合わせが予め定められているようにしてもよいし、複数種類の役割別ミッションのうちでランダムに決定されるようにしてもよい。また、本変形例においても、ミッション変更部116は、ギルドに所属する全ユーザの役割別ミッションを変更するようにしてもよいし、一部のユーザの役割別ミッションのみを変更するようにしてもよい。
変形例(1−3)によれば、全体ミッションの達成状況に応じて、役割別ミッションを変更することができるので、より飽きさせないゲームをユーザに提供することができる。
(2)また例えば、全体ミッションや個別ミッションの達成状況に応じて、各役割に対応する効果が変化するようにしてもよい。
変形例(2)のゲームシステム1は、効果変更部118を含む。効果変更部118は、達成状況取得部112により取得された達成状況に基づいて、効果付与部108より付与される効果に関する変更を行う。効果変更部118は、全体ミッション又は個別ミッション(例えば、役割別ミッション)の達成状況が所与の状況になった場合、効果に関する変更を行う。
例えば、役割毎に複数種類の効果が用意されている場合、これら複数種類の効果のうちの少なくとも一つがユーザに付与される。現在付与されている効果を識別する情報は、ギルド戦テーブルに格納されるものとする。効果変更部118は、各役割のユーザに付与される効果を他の効果に変更することになる。この場合、変更前後の効果の組み合わせが予め定められていてもよいし、複数種類の効果のうちでランダムに変更後の効果が決定されるようにしてもよい。
なお、効果変更部118が行う処理は上記に限られず、効果が発生するための条件を変更するようにしてもよい。例えば、効果変更部118は、効果が発生するまでの待機時間や、効果が発生するために必要な操作内容を変更するようにしてもよい。例えば、効果変更部118は、全体ミッションや個別ミッションの達成状況に応じて、待機時間を短く又は長くしたり、ユーザがすべき操作内容を変更したりする。
また、効果変更部118は、ギルドの全役割の効果に関する変更をしてもよいし、一部の役割の効果のみを変更するようにしてもよい。更に、効果変更部118は、あるユーザの役割別ミッションの達成状況に応じて、当該ユーザの役割の効果を変更するようにしてもよいし、他の役割の効果を変更するようにしてもよい。即ち、役割変更部114は、一のユーザの役割別ミッションの達成状況、又は、他のユーザの役割別ミッションの達成状況に基づいて、当該一のユーザの役割の効果を変更するようにしてもよい。
変形例(2)によれば、全体ミッションや個別ミッションの達成状況に応じて、各役割の効果に関する変更を行うことができ、ユーザを飽きさせないようにすることができる。
(3)また例えば、ギルド戦が実行された場合に、ユーザに特典が付与されるようにしてもよい。更に、全体ミッションや個別ミッションの達成状況に応じて、ユーザに付与される特典を変更するようにしてもよい。
変形例(3)のゲームシステム1は、特典変更部120を含む。特典変更部120は、達成状況取得部112により取得された達成状況に基づいて、複数のユーザの少なくとも一人に付与される特典を変更する。特典は、ユーザに付与される報酬であり、例えば、ゲームデータをユーザに付与したり、ユーザに係るパラメータを変化させたりすることが、特典を付与することに相当する。特典変更部120は、全体ミッションや個別ミッションの達成状況が高いほど、良い報酬をユーザに付与する。なお、特典変更部120は、あるユーザに付与される特典を、当該ユーザの個別ミッションの達成状況に基づいて変更するようにしてもよいし、他のユーザの個別ミッションの達成状況に基づいて変更するようにしてもよい。
例えば、全体ミッションや個別ミッションの達成状況と、特典と、が関連付けられてデータ記憶部100に記憶されており、特典変更部120は、全体ミッションや個別ミッションの達成状況に関連付けられた特典に基づいて、ユーザに付与される特典を変更する。ここでは、複数種類の特典が用意されており、これら複数種類の特典のうちで付与すべき特典を変更することになる。なお、特典を変更させる方法は、これに限られず、他にも、ユーザに付与される特典の数(量)を変更するようにしてもよい。
変形例(3)によれば、ミッションの達成状況に応じて、ユーザに付与する特典を変更することができる。
(4)また例えば、各ユーザが担当した役割の履歴に基づいて、次に当該ユーザが担当する役割が決定されるようにしてもよい。例えば、各ユーザがまだ担当したことのない役割が当該ユーザに設定されるようにしてもよい。
変形例(4)のゲームシステム1は、履歴取得部122を含む。履歴取得部122は、各ユーザに設定された役割の履歴に関する情報を取得する。役割の履歴とは、現在又は過去において各ユーザに設定された役割の組み合わせのことである。
図17は、ユーザに設定された役割の履歴に関する履歴テーブルの一例を示す図である。履歴テーブルは、データ記憶部100に記憶される。履歴テーブルは、各ユーザに設定された役割を時系列的に示す。役割設定部102により各ユーザに役割が設定された場合、履歴テーブルの内容が更新されることになる。
役割変更部114は、各ユーザに設定された役割の履歴に関する情報に基づいて、役割設定部102により設定された役割を変更する。
図18は、役割の履歴とユーザに設定される役割との関連付けを示す図である。図18に示す関連付けは、データ記憶部100に記憶されており、テーブル形式であってもよいし、数式形式であってもよい。役割変更部114は、各ユーザに設定された役割の履歴に関連付けられた役割に基づいて、当該ユーザの役割を変更する。役割変更部114は、まだユーザが担当していない役割が設定されるようにしたり、ユーザが所定の組み合わせの役割を担当した場合に特定の役割が設定されるようにしたりする。
変形例(4)によれば、各ユーザに設定された役割の履歴に基づいて、役割を変更することができる。例えば、あるユーザがまだ担当したことのない役割が設定されるようにすることができる。
なお、各ユーザに設定された個別ミッションの履歴や各ユーザが達成した個別ミッションの履歴に基づいて、各ユーザの役割が変更されるようにしてもよい。この場合、例えば、各ユーザに設定された個別ミッションや各ユーザが達成した個別ミッションの履歴を示すデータがデータ記憶部100に記憶される。ユーザに個別ミッションが設定されたり、ユーザが個別ミッションを達成したりすると、当該データが更新されることになる。そして、個別ミッションの履歴と役割との関連付けがデータ記憶部100に記憶されており、役割変更部114は、各ユーザに設定された個別ミッション又は各ユーザが達成した個別ミッションの履歴に関連付けられた役割に基づいて、各ユーザの役割を変更する。
(5)また例えば、変更前後の役割の組み合わせに応じて、所与のゲームイベントが発生するようにしてもよい。例えば、ある特定の役割変化が行われた場合に、ゲームにおいて特別な効果が発生したり、ギルド戦において敵が乱入したりするようにしてもよい。
変形例(5)のゲームシステム1は、ゲーム処理実行部124を含む。ゲーム処理実行部124は、役割変更部114により役割が変更された場合、変更前の役割と変更後の役割との組み合わせに基づいて、ゲーム処理を実行する。ゲーム処理としては、所与の効果が発生すること、新たなミッションが発生すること、所与の特典が付与されること、所与のゲームイベントが発生すること等である。
例えば、変更前後の役割の組み合わせと、実行すべきゲーム処理(例えば、発生させるべきゲームイベント)と、が関連付けられて記憶されており、ゲーム処理実行部124は、変更前後の役割の組み合わせに関連付けられたゲーム処理を実行する。この場合、ゲーム処理実行部124は、ユーザの変更前後の役割の組み合わせが所与の組み合わせであった場合に、ゲーム処理を実行することになる。
変形例(5)によれば、変更前後の役割の組み合わせに応じてゲームイベントを発生させることができる。
(6)また例えば、あるギルドにおいてユーザの役割が変更した場合に、対戦相手のギルドの各ユーザの役割が変更するようにしてもよい。
変形例(6)のゲームシステム1は、対戦相手役割設定部126及び対戦相手役割変更部128を含む。対戦相手役割設定部126は、対戦相手グループのメンバ(例えば、対戦相手のギルドに所属するユーザ)の少なくとも一つに、複数種類の役割の少なくとも一つを設定する。対戦相手役割設定部126による役割の設定方法は、役割設定部102と同様である。即ち、対戦相手のギルドの代表ユーザにより指定された役割が各ユーザに設定されるようにしてもよいし、所与の方法に基づいて定まる役割が各ユーザに設定されるようにしてもよい。
対戦相手役割変更部128は、役割変更部114による変更結果に基づいて、対戦相手グループのメンバ(例えば、対戦相手のギルドに所属するユーザ)に設定された役割を変更する。対戦相手役割変更部128による役割の変更方法は、役割変更部114と同様である。即ち、変更前後の役割の組み合わせに基づいて役割が変更されるようにしてもよいし、役割がランダムに変更するようにしてもよい。
変形例(6)によれば、あるギルドのユーザの役割が変更した場合に、対戦相手のギルドのユーザの役割を変更することができる。
なお、あるギルドの役割が変更された場合に、対戦相手のギルドの全体ミッションや個別ミッションを変更するようにしてもよい。この場合、ギルドの役割と、対戦相手のギルドの全体ミッション又は個別ミッションと、の関連付けがデータ記憶部100に記憶されている。そして、あるギルドの各ユーザの役割が変更された場合、当該役割に関連付けられた全体ミッション又は個別ミッションに基づいて、対戦相手のギルドの全体ミッション又は個別ミッションが変更されることになる。
(7)また例えば、実施形態及び上記変形例を組み合わせてもよい。
また例えば、実施形態では、ギルド戦が毎日開催される場合を説明したが、ギルド戦は、繰り返し到来するタイミングで実行されるようにすればよい。例えば、不定期にギルド戦が実行されるようにしてもよいし、ユーザにより所与の操作が行われた場合にギルド戦が実行されるようにしてもよい。
なお、上記においては、ユーザが収集したカードがギルド戦で使用される例を挙げたが、ギルド戦の対戦形式はこれに限られない。例えば、ユーザの収集対象を、カード以外のフィギュア等のオブジェクトとしてもよく、それらのオブジェクトを使用した対戦としてもよいし、収集対象であるオブジェクトを使用せずに、所定期間内におけるユーザのアクセスや挨拶等のゲーム内の協力作業の回数又は頻度に応じて変化するポイントにより対戦を行ってもよい。
また例えば、ギルドの所属方式は、上記の態様に限定されない。例えば、ユーザからギルドへの所属要求がなされた場合、当該ギルドに既に所属しているユーザに対して、ギルドの所属を許可するか否かの承認を得ることで、ギルドに所属するユーザとギルドとを対応付けて記録するようにしてもよい。なお、当該対応付けの際の承認は、ギルド所属ユーザ全ての承認を必要としてもよいし、一部のユーザ、例えば、代表ユーザの承認のみを得られれば、ギルドに所属できるようにしてもよい。
また、上述のようなユーザが所属するギルドを自分で選択する態様に限られず、所定の条件に基づいて、所属するギルドが選出されるようにしてもよい。例えば、ゲームにおいて協力又は対戦するユーザ同士を自動的に同じギルドに所属させるようにしてもよいし、所定回数の挨拶メッセージを送信したユーザ同士を自動的に同じギルドに所属させるようにしてもよい。更に、例えば、ユーザ同士で対戦(バトル)するゲームにおいて、所定回数以上対戦を行ったユーザ同士を自動的に同じギルドに所属させるようにしてもよいし、互いに協力して敵キャラクタと対戦をしたユーザ同士を自動的に同じギルドに所属させるようにしてもよい。
また例えば、上記においては、ゲームの主要な処理がサーバ10において実行される場合(いわゆるブラウザ型ゲーム)を説明したが、各機能の一部がユーザ端末20で実現される場合(いわゆるネイティブアプリ型ゲーム)にも、本発明に係る技術を適用可能である。この場合、各機能ブロックが、サーバ10とユーザ端末20とで分担されることになる。即ち、上記説明した複数の機能の各々について、サーバ10又はユーザ端末20の何れか一方に設けられるようにしてもよい。この場合、サーバ10とユーザ端末20とで処理結果を送信しあうことによって、各機能ブロックが実現される。
例えば、データ記憶部100がユーザ端末20で実現されるようにしてもよい。即ち、あるユーザ端末20を操作するユーザに係るデータが、データベース15ではなく、このユーザ端末20に記憶されるようにしてもよい。この場合、サーバ10は、通信ネットワーク2を介してユーザ端末20の記憶内容を取得することになる。
また例えば、役割設定部102、ミッション設定部104、達成状況取得部112、及び役割変更部114がユーザ端末20で実現されるようにしてもよい。即ち、あるユーザの役割が、当該ユーザのユーザ端末20の制御部21により設定されるようにしたり、全体ミッション又は個別ミッションが、当該ユーザのユーザ端末20の制御部21により設定されるようにしたりしてもよい。更に、全体ミッション又は個別ミッションの達成状況をユーザ端末20の制御部21が取得し、当該制御部21が、ユーザの役割を変更するようにしてもよい。
また、複数のコンピュータを含むシステムにより機能ブロックが実現される場合を説明したが、1台のコンピュータにより機能ブロックが実現されるようにしてもよい。この場合、例えば、1台のコンピュータに接続された複数のコントローラの各々をユーザが操作することになる。即ち、オンライン型ゲームだけではなく、スタンドアロン型ゲームにも、本発明を適用することができる。各ユーザの役割を動的に変化させる処理については、上記実施形態や変形例と同様である。
また例えば、上記説明したゲーム以外のゲームを実行するゲームシステムにも本発明を適用することが可能である。ユーザグループに所属する複数のユーザが協力するゲームに、本発明を適用するようにすればよい。また、ユーザグループの一例としてギルドを説明したが、互いに協力してゲームをプレイするユーザの集合体がユーザグループであればよく、ギルド以外のグループであってもよい。例えば、ユーザ同士でチームを組んでプレイするスポーツゲーム等にも本発明を適用することができる。