本発明の実施の形態について図面を参照しながら説明する。
[用語定義]
以下の説明において用いる、主な用語の定義をしておく。
(1)プレイヤとは、端末を操作する現実のユーザを指す。
(2)仮想ユニットとは、仮想的なゲームカードやアイテム、ゲーム内でプレイヤにより操作される仮想的なキャラクタ等である。
(3)ユニット情報は、例えば、仮想ユニットの例であるゲームカードに設定される能力値(攻撃力や防御力等)の数値の他、レアリティや、カードの属性(雷属性、水属性など)、スキルパラメータ等を含む、仮想ユニットに関係するパラメータ情報である。
(4)デッキとは、プレイヤがゲームのために選抜した複数のユニットの組み合わせをいう。
(5)合成とは、「進化合成」と「強化合成」とを含む観念であり、ある仮想ユニットを合成の対象である注目ユニットとし、また、この注目ユニットとは異なる仮想ユニットを素材ユニットとして、注目ユニットに係るユニット情報を更新する処理をいう。
ここで「進化合成」は、更新後の注目ユニットに係るユニット情報に含まれる種類を特定する情報Chやキャラクタの画像IMGを含めて更新すること、つまり注目ユニットの種類を変更して、レベル情報等が異なる別の種類の仮想ユニットへ「進化」させるものである。
また、「強化合成」は、更新前と更新後とで注目ユニットに係るユニット情報のうち、種類を特定する情報Chやキャラクタの画像IMGは変更せずに、レベル情報やレアリティ等を上昇させて(いわば「強化」させて)更新するものである。
[概要]
本発明の実施の形態に係るゲームサーバ10を含むゲームシステム1は、図1に示すように、互いにネットワーク等通信手段を介して通信可能に接続されたゲームサーバ10と、複数の端末20a,20b,…とを含む。以下では、端末をそれぞれ区別する必要がない場合は、符号のサフィックスを省いて、「端末20」と表記する。
ゲームサーバ10は、サーバコンピュータであり、本実施の形態において行われるゲームの処理を実行するプログラムを動作させている。本実施の形態においてこのゲームサーバ10は、互いに異なるプレイヤによって操作される複数の端末20a,20b,…に対してネットワークを介して接続され、複数のプレイヤがそれぞれ制御する複数のプレイヤキャラクタを含んでなるチームで行われるゲームを提供する。このゲームサーバ10の構成及び動作については後に述べる。
端末20は、例えばパーソナルコンピュータやスマートフォン等であり、ゲームサーバ10との間で通信を行い、ゲームサーバ10から受信される指示に従って、ゲームの画面を表示し、あるいは楽曲や音声を鳴動する処理を行う。またこの端末20は、プレイヤの操作を受け入れて、当該操作の内容を表す情報を、ゲームサーバ10に対して送出する。この端末20の構成及び動作についても、後に述べる。
また本実施の形態の以下の例では、プレイヤは少なくとも一つの仮想ユニットをゲーム内で所持し、当該仮想ユニットのレアリティや能力値等のユニット情報を所定の方法(後に述べる)で更新する。また、以下の例では、複数の仮想ユニットを一組としたデッキを設定し、この設定したデッキを用いた対戦を行うこととする。もっとも本実施の形態はこのようなゲームだけに限られず、ゲーム全体としては上記対戦を行うバトルパートのゲームのほか、各プレイヤが単独で仮想的なゲーム空間内で予め定められたストーリーを段階的に進行させるクエストパートのゲームや、ゲームに用いるアイテム等を取得するためのいわゆるガチャ(抽選)パートなどを含んでいてもよい。またバトルパートのゲームは、複数のプレイヤ同士がそれぞれに設定したデッキを用いて対戦するゲームのほか、プレイヤが設定したデッキと、コンピュータ(ゲーム)側で用意した仮想敵との対戦を行うものであってもよいし、これら両者を含んでもよい。
[構成]
本実施の形態においてゲームサーバ10は、図1に例示しているように、制御部11と、記憶部12と、通信部13とを含んで構成される。また端末20は、例えばスマートフォン等であり、制御部21と、記憶部22と、操作部23と、表示部24と、通信部25とを含んで構成される。
なお、図1では、ゲームサーバ10が一台の装置として図示されているが、本実施の形態においてゲームサーバ10は、複数台のサーバコンピュータを含む、クラスタサーバであってもよい。この場合、各サーバコンピュータにはそれぞれ記憶部を備えて、それぞれのサーバコンピュータの記憶部に、ゲームとしての処理に必要なデータが分散されて記憶されていてもよい。
ここで制御部11は、CPU等のプログラム制御デバイスであり、記憶部12に格納されたプログラムに従って動作する。本実施の形態において制御部11は、複数の端末20との間で通信を行い、各端末20の利用者(プレイヤ)を認証する。また認証したプレイヤによる端末20でのゲームの操作に関する情報を端末20から受信し、ゲームの処理を実行して、その処理の結果に基づいて、ゲームの画面情報やサウンド情報等を端末20へ送出する。
またこの制御部11は、このゲームとしての処理において、プレイヤに対して仮想ユニットを付与する処理、プレイヤの操作に基づいて仮想ユニット同士を合成し、仮想ユニットの一つに係るユニット情報を更新する処理、プレイヤの操作に基づいて複数の仮想ユニットを含んだデッキを設定する処理、及び、プレイヤが設定したデッキを用いた対戦ゲームの処理等を行う。この制御部11の具体的な処理の内容については後に述べる。
記憶部12は、メモリデバイスやディスクデバイスを含む。この記憶部12には制御部11により実行される各種プログラム(本発明の実施の形態に係るプログラムを含む)が格納されている。本発明の実施の形態に係るプログラムは、DVD−ROMなどのコンピュータ可読かつ非一時的な記憶媒体に格納されて提供され、この記憶部12に格納されたものであってもよい。また本実施の形態においてこの記憶部12は制御部11のワークメモリとしても動作する。
本実施の形態においてこの記憶部12には、図2(a)に例示するように、プレイヤごとに、プレイヤ識別子Pと、当該プレイヤ識別子Pで識別されるプレイヤが仮想的に所持する仮想ユニットごとに固有の仮想ユニット識別情報Uと、その仮想ユニットに係るユニット情報Vとを関連付けたエントリーを保持する仮想ユニットデータベース121が格納されている。
以下の例では、仮想ユニットは対戦のゲームを行う際に利用するキャラクタ等を表すゲームカードであるものとする。仮想ユニットは、この例のほか、プレイヤがゲーム内で所持するアイテム(仮想的な武器や防具、アクセサリ等)であってもよいし、キャラクタやアイテムの欠片(複数集めるとキャラクタやアイテムとなる)であってもよい。さらにこの仮想ユニットは、トークン(キャラクタの魔法等によって仮想的に現出したものとされるものを表すもの、例えばキャラクタが召喚したモンスター等)であってもよい。さらにこの仮想ユニットはこれらの組み合せであってもよい。
プレイヤは同じ種類(同じキャラクタや同じ武器、同じアクセサリ等)の仮想ユニットを複数所持することができる。この場合、仮想ユニットは同種であっても、各仮想ユニットについて異なる能力値(攻撃力や防御力、レベル)を持つことが許容される。そこで本実施の形態のゲームサーバ10では、各プレイヤが所持する仮想ユニットのそれぞれに対しては、その種類(キャラクタ等)が共通していても、互いに異なる仮想ユニット識別情報Uが割り当てられる。
また以下の例では、ユニット情報Vには、図3(a)に例示するように、対応する仮想ユニットの種類を特定する情報Chと、その画像情報IMGとのほか、レベル情報ULv、レアリティRLv、攻撃力APt、防御力DPt等、バトルや合成等のゲームプレイによって変化させることのできるパラメータ(以下、育成パラメータと呼ぶ)を含む情報や、当該ゲームカードを対戦で使用する際の選抜コストCC等が含まれる。
またこの記憶部12は、図2(b)に例示するように、ゲームを行うことを希望して登録したプレイヤごとの固有のプレイヤ識別子Pに対して、当該プレイヤ識別子で識別されるプレイヤに係るプレイヤパラメータ情報Mを関連付けてプレイヤデータベース122として保持している。ここでプレイヤパラメータ情報Mには、図3(b)に例示するように、ゲーム処理において利用されるプレイヤのレベル情報Lvや経験値情報Em、対戦で使用可能なコスト値BP、仮想ユニットの最大選抜コストUSC、仮想的な所持金の残高Am、新たな仮想ユニットの付与を求めることができる回数(抽選可能回数)Sn、現在達成しているクエストのレベル(段階)を表す情報QLv等の情報が含まれる。
さらに後に説明するように、記憶部12は、プレイヤが複数の仮想ユニットを組として設定したデッキの情報を格納する。具体的には、この記憶部12は、図2(c)に例示するように、デッキを設定したプレイヤのプレイヤ識別子Pに対して、デッキごとに固有の識別子Dと、デッキに含まれる仮想ユニットの識別情報のリスト(U1,U2…)とを関連付けてデッキデータベース123として格納する。
またこの記憶部12には、図4に例示するように、ゲームに登場し得るすべての仮想ユニットの種類の情報Chの各々に対して、当該仮想ユニットに係る合成の処理において必要となるパラメータの情報(合成パラメータ情報)Spと、当該仮想ユニットの初期レアリティIRLvや、初期攻撃力IAPt、初期防御力IDPtなどの初期状態の情報と、画像情報IMG、合成に伴うレアリティの段階PRLvを表す情報、レアリティの段階PRLvごとに定められたデッキに含める際の選抜コストCC、さらには抽選の対象とするか否かを表す情報RFなどの情報を関連付けた仮想ユニット種別データベース124を記憶している。なお、合成パラメータ情報Spには、例えば、合成時にプレイヤの仮想的な所持金から引かれる金額である合成コストSCや、合成可否フラグなどの情報が含まれる。
通信部13は、ネットワークインタフェース等であり、ネットワークを介して端末20との間で種々の情報を送受する。具体的にこの通信部13は、ネットワークを介して端末20から受信した情報(操作の内容を表す情報等を含む)を制御部11に出力する。またこの通信部13は、制御部11から入力される指示に従い、指示された宛先となった端末20に対してゲームの画面情報等を送出する。
端末20の制御部21は、CPU等のプログラム制御デバイスであり、記憶部22に格納されたプログラムに従って動作する。本実施の形態の一例においてこの制御部21は、ブラウザとして機能する。すなわち、制御部21は、ゲームサーバ10に対してゲームの画面情報やサウンド情報を要求するよう通信部25に指示し、通信部25がゲームサーバ10から受信するゲームの画面情報を受け入れて、当該画面情報に基づく画像を表示部24に表示する。またこの制御部21は、プレイヤである利用者が行った操作の情報をゲームサーバ10に対して送出するよう通信部25に指示する。この制御部21の動作については後に述べる。
記憶部22は、メモリデバイス等を含む。この記憶部22には制御部21により実行されるプログラムが格納されている。このプログラムは、コンピュータ可読かつ非一時的な記憶媒体に格納されて提供され、この記憶部22に格納されたものであってもよいし、ネットワークを介して受信し、この記憶部22に格納したものであってもよい。また本実施の形態においてこの記憶部22は制御部21のワークメモリとしても動作する。
操作部23は、例えば表示部24に重ね合わせて配されたタッチパネルであり、利用者の指示操作を受け入れて、当該指示操作の内容を制御部21に出力する。表示部24は、液晶ディスプレイ等であり、制御部21から入力される指示に従い、画像を表示する。
通信部25は、ネットワークインタフェース等であり、ネットワークを介してゲームサーバ10との間で種々の情報を送受する。具体的にこの通信部25は、ネットワークを介してゲームサーバ10から受信した情報を制御部21に出力する。またこの通信部25は、制御部21から入力される指示に従い、指示された宛先となったゲームサーバ10に対して操作の情報等を送出する。
次に制御部11の動作について、プレイヤが設定したデッキを用いた対戦を行うゲームの処理を行う場合を例として説明する。制御部11は記憶部12に格納された本実施の形態のプログラムを実行することにより、図5に例示する各機能ブロックを実現する。つまり、本実施の形態の一例では、記憶部12に格納されたプログラムを実行することにより、制御部11が、プレイヤ認証部30と、ゲーム処理部31と、デッキ設定処理部32と、バトル処理部33と、仮想ユニット付与処理部34と、仮想ユニット合成処理部35と、回復処理部37と、として機能する。
ここでプレイヤ認証部30は、端末20からゲーム情報の要求を受け入れて、当該端末20を操作する利用者(プレイヤ)を、予め定めた方法で認証する。具体的にこの認証は、ユーザ名やパスワードを入力させることにより行われてもよい。プレイヤ認証部30は、ここで認証に成功したプレイヤについて、当該プレイヤを識別するプレイヤ識別子Pと、当該プレイヤが操作する端末20との通信に用いる通信パラメータ情報Pcomm(当該端末20のネットワークアドレスやセッション識別子等)とを関連付けて、図6に例示するログインデータベース125として記憶部12に格納しておく。
ゲーム処理部31は、プレイヤ認証部30にて認証されたプレイヤの操作する端末20に対して、ホーム画面の情報を生成して送出する。このホーム画面には例えば図7に例示するように、ホーム画面へ戻る指示を行うためのボタン(HB)、クエストパートのゲームを行う指示を送出するボタン(QB)、デッキ編成の処理を行う指示を送出するボタン(TB)、バトルパート(対戦)のゲームを行う指示を送出するボタン(BB)、いわゆるガチャ(抽選)パートの処理を行う指示を送出するボタン(RB)、合成処理を行う指示を送出するボタン(SB)等を配しておく。
ゲーム処理部31は、ここで端末20からクエストパートのゲームを行う指示を送出するボタン(QB)がタップされた旨の情報を受信すると、クエストパートのゲームの処理を開始する。またゲーム処理部31は、端末20からデッキ編成の処理を行う指示を送出するボタン(TB)がタップされた旨の情報を受信すると、ログインデータベース125を参照して当該指示の受信元である端末20(指示端末と呼ぶ)の通信パラメータ情報に関連付けられたプレイヤ識別子P(指示プレイヤ識別子NP)を取得し、デッキ設定処理部32に対して当該取得したプレイヤ識別子Pを出力して処理開始を指示する。
さらにゲーム処理部31は、端末20からバトルパート(対戦)のゲームを行う指示を送出するボタン(BB)がタップされた旨の情報を受信すると、ログインデータベース125を参照して当該指示の受信元である端末20(指示端末と呼ぶ)の通信パラメータ情報に関連付けられたプレイヤ識別子P(指示プレイヤ識別子NP)を取得し、バトル処理部33に対して当該取得したプレイヤ識別子Pを出力して処理開始を指示する。
ゲーム処理部31は、端末20からいわゆるガチャ(抽選)パートの処理を行う指示を送出するボタン(RB)がタップされた旨の情報を受信すると、ログインデータベース125を参照して当該指示の受信元である端末20(指示端末と呼ぶ)の通信パラメータ情報に関連付けられたプレイヤ識別子P(指示プレイヤ識別子NP)を取得し、仮想ユニット付与処理部34に対して当該取得したプレイヤ識別子Pを出力して処理開始を指示する。
さらにこのゲーム処理部31は、端末20から合成処理を行う指示を送出するボタン(SB)がタップされた旨の情報を受信すると、ログインデータベース125を参照して当該指示の受信元である端末20(指示端末と呼ぶ)の通信パラメータ情報に関連付けられたプレイヤ識別子P(指示プレイヤ識別子NP)を取得し、仮想ユニット合成処理部35に対して当該取得したプレイヤ識別子Pを出力して処理開始を指示する。
デッキ設定処理部32は、ゲーム処理部31から処理開始の指示を受けて動作する。このデッキ設定処理部32では、プレイヤに対して、デッキに含める仮想ユニットの選抜を行わせる。この選抜の際には、プレイヤが選抜可能な仮想ユニットが、仮想ユニットごとに定められる選抜コストCCと、所定の最大選抜可能数MaxCUとにより制限される。つまりプレイヤは、制限された選抜コストCCと、選抜可能数の条件の下で、ゲームに有利と思われるデッキを構成しなければならない。
具体的にデッキ設定処理部32は、ゲーム処理部31から入力される指示プレイヤ識別子NPに関連付けて仮想ユニットデータベース121に格納されている、当該指示プレイヤ識別子NPで識別されるプレイヤが仮想的に所持する仮想ユニットの識別情報Uとユニット情報Vとを取得する。
そしてデッキ設定処理部32は、例えば図8に例示するように、仮想ユニットの識別情報とユニット情報との組ごとに、当該ユニット情報に含まれるゲームカードの画像IMGを表示し、所定数までの仮想ユニットを選択可能に表示するゲームの画面情報(例えばスクリプトコードを含んだHTMLで記述された情報)を生成して、指示端末へ送出する。この画面情報においては、プレイヤにより選択されたゲームカードの画像に対応する仮想ユニットの識別情報が端末20から返送されるように設定される。
またこのデッキ設定処理部32は、当該送出した画面情報を用いて選択された複数のゲームカードのそれぞれに係る仮想ユニットを特定する識別情報を指示端末から受信する。そして当該識別情報Uで特定される仮想ユニットの数が、所定の最大選抜可能数MaxCUを超えているか否かを判断して、所定の最大選抜可能数MaxCUを超えていれば、デッキ設定処理部32はプレイヤにエラーを報知して再度選抜を行わせる。
さらにデッキ設定処理部32は、指示端末から受信した識別情報の数が所定の最大選抜可能数MaxCUを超えていなかったときでも、指示端末から受信した識別情報のそれぞれに関連付けられたユニット情報Vを参照し、その選抜コストCCの合計を算出する。そして当該選抜コストCCの合計が、指示プレイヤ識別子NPに関連づけられたプレイヤパラメータ情報Mに含まれる最大選抜コストUSCを超えるか否かを判断して、上記選抜コストCCの合計が当該最大選抜コストUSCを超えるときには、デッキ設定処理部32はプレイヤにエラーを報知して再度選抜を行わせる。
デッキ設定処理部32は、指示端末から受信した識別情報の数が所定の最大選抜可能数MaxCUを超えておらず、選抜コストCCの合計が、指示プレイヤ識別子NPに関連づけられたプレイヤパラメータ情報Mに含まれる最大選抜コストUSCを超えない、などエラーがないと判断されるときには、指示端末から受信した識別情報Uのそれぞれにより特定される仮想ユニットの組をデッキとして、固有の識別子(指示プレイヤ識別子NPに関連付けられるデッキのうちで固有の識別子)を発行し、図2(c)に例示したように、指示プレイヤ識別子NPに対して、当該発行した固有のデッキの識別子Dと、デッキに含める仮想ユニットの識別情報Uのリストとを関連付けてデッキデータベース123として記憶部12に格納する。
バトル処理部33は、ゲーム処理部31から処理開始の指示を受けて動作し、またこのゲーム処理部31から指示プレイヤ識別子NPの入力を受け入れる。そしてバトル処理部33は、対戦の相手となるプレイヤを決定する。具体的にこのバトル処理部33は、指示プレイヤ識別子NPに関連付けられたレベル情報との差が予め定めたしきい値未満であるレベル情報に関連付けられたプレイヤ識別子Pであって、指示プレイヤ識別子NPでないプレイヤ識別子P′を検索し、当該検索により見出されたプレイヤ識別子P′が所定個数以下であれば当該プレイヤ識別子P′の一覧を表示するゲームの画面情報を生成し、所定個数を超えていれば当該見出されたプレイヤ識別子P′のうちからランダムに所定数個を選択してその選択した一覧を表示するゲームの画面情報を生成する。
そしてバトル処理部33は、この生成した画面情報に含まれる各プレイヤ識別子P′で表されるプレイヤを選択可能な態様で(例えばスクリプトコードを含んだHTMLで記述された情報として)指示端末へ送出する。そしてバトル処理部33は、指示端末からいずれかのプレイヤ(敵プレイヤと呼ぶ)を選択した旨の情報を受信してバトルの実処理を開始することとしてもよい。
このバトルの実処理では、バトル処理部33は、敵プレイヤとして選択されたプレイヤのプレイヤ識別子P′に関連付けてデッキデータベース123に格納されているデッキ(複数ある場合は予め敵プレイヤが選択しているデッキ、あるいはその複数のうちからランダムに選択されたデッキ)のデッキ識別子を読み出す。
またバトル処理部33は、指示プレイヤ識別子NPに関連付けてデッキデータベース123に格納されているデッキ(複数ある場合は予めプレイヤが選択しているデッキ、あるいはその複数のうちからランダムに選択されたデッキ)のデッキ識別子を読み出す。
そしてバトル処理部33は、敵プレイヤについて読み出したデッキ識別子に関連付けられている仮想ユニットの識別情報のリストを取得し、当該リストに含まれる仮想ユニットの識別情報の各々に関連付けて、仮想ユニットデータベース121に記録されているユニット情報(敵ユニット情報)をさらに取得する。
バトル処理部33は、対戦の指示を行ったプレイヤ(自プレイヤと呼ぶ)について読み出したデッキ識別子に関連付けられている仮想ユニットの識別情報のリストを取得し、当該リストに含まれる仮想ユニットの識別情報の各々に関連付けて、仮想ユニットデータベース121に記録されているユニット情報(自ユニット情報と呼ぶ)をさらに取得する。
バトル処理部33は、これら取得した敵ユニット情報と自ユニット情報とを用いて対戦の勝敗を決定する。一例としてバトル処理部33は、自ユニット情報に含まれる攻撃力APtの総和(デッキ内のキャラクタによる総攻撃力)ΣAを求め、また、敵ユニット情報に含まれる防御力DPtの総和(デッキ内のキャラクタによる総防御力)ΣDを求める。そしてバトル処理部33はΣA≧ΣDであれば指示プレイヤ識別子NPで識別されるプレイヤの勝ちとする。またΣA<ΣDであれば敵プレイヤの勝ちとする。
さらにバトル処理部33は、対戦を行っている状況を表すゲームの画面情報と、勝敗の結果を表すゲームの画面情報とを生成して、指示端末へ順次配信する。さらにバトル処理部33は、この対戦の勝敗決定の結果、指示プレイヤ識別子NPで識別される自プレイヤの勝ちと判断した場合、指示プレイヤ識別子NPに関連付けてプレイヤデータベース122に保持されているプレイヤの経験値情報Emに所定の正の値を加算し、経験値Emを高めて更新する。また経験値Emが予めプレイヤのレベル情報Lvごとに定められたしきい値を超えるごとに、プレイヤのレベル情報Lvを高めて更新する。
なお、バトル処理部33における対戦ゲームの処理は、ここで説明したような、一度の対戦で勝敗を決するものに限られない。例えばバトル処理部33は、対戦ゲームの開始時に、指示プレイヤ識別子NPで識別される自プレイヤと、敵プレイヤとの双方について体力値(HP)を設定し、自プレイヤと敵プレイヤとで交互にデッキに含めた仮想ユニットによる攻撃を行い、いずれかの体力値が「0」となったときに、当該体力値が先に「0」となったプレイヤを負けとし、他方のプレイヤを勝ちとする判定を行うものであってもよい。
また、この場合に、自プレイヤが設定したデッキによる攻撃を行うターンでは、自プレイヤが攻撃の方法や攻撃の対象(敵プレイヤのデッキ内のユニット)を指示できるようになっていてもよい。ここで攻撃の方法の選択は例えば「通常攻撃」と「スキルによる特殊攻撃」とのいずれかを選択することなどにより行われる。
さらに上述の例では、単に攻撃力の総和と防御力の総和との比較により勝敗を決することとしたが、本実施の形態はこれに限られず、ユニット情報に仮想ユニット間の攻撃防御の相性に関わる「属性」情報を含めておき、攻撃側となる仮想ユニットの属性を表す情報と、防御側となる仮想ユニットの属性を表す情報とに応じて予め定められたパラメータを、攻撃力の総和あるいは防御力の総和の少なくとも一方に乗じてから比較してもよい。これによると例えば、水属性の仮想ユニットは、雷属性の仮想ユニットに弱い、などといった効果を演出できる。
仮想ユニット付与処理部34は、ゲーム処理部31から処理開始の指示を受けて動作し、またこのゲーム処理部31から指示プレイヤ識別子NPの入力を受け入れる。仮想ユニット付与処理部34は、当該入力された指示プレイヤ識別子NPに関連付けてプレイヤデータベース122に格納されているプレイヤパラメータ情報のうち、新たな仮想ユニットの付与を求めることができる回数、つまり抽選可能回数Snを得る。
仮想ユニット付与処理部34は、この抽選可能回数が「1」以上であれば、仮想ユニット種別データベース124に格納されている各種類の仮想ユニットのうち、抽選の対象とする旨の情報に関連付けられている仮想ユニットの種類の一つをランダムに選択し、抽選可能回数Snをデクリメントする。なお、ここでのランダム選択は、仮想ユニット種別データベース124に記録されている仮想ユニットの種類に関連付けられた初期レアリティIRLvの情報に応じて選択確率を変動させてもよい。例えば比較的低い(例えば「ノーマル」である)初期レアリティの情報に関連付けられた種類の仮想ユニットが選択される確率が、比較的高い(例えば「スーパーレア(Sレア)」である)初期レアリティの情報に関連付けられた種類の仮想ユニットが選択される確率よりも高くなるように制御してもよい。このような制御の方法は広く知られているので、ここでの詳しい説明を省略する。
仮想ユニット付与処理部34は、固有の仮想ユニットの識別情報を新たに発行し、仮想ユニットデータベース121内の指示プレイヤ識別子NPに当該発行した識別情報を関連付けて格納する。またこの仮想ユニットの識別情報に関連付けて、選択した仮想ユニットの種類を表す情報Chを含むユニット情報(キャラクタの画像IMG、レベル情報ULv、レアリティRLv、攻撃力APt、防御力DPt等)を、仮想ユニット種別データベース124に記録されている、選択した仮想ユニットの種類を表す情報Chに関連付けられた情報と、予め定めた初期値とを参照して設定する。例えばレベル情報ULvは初期値である「1」に設定し、レアリティRLvは、選択した仮想ユニットの種類を表す情報Chに関連付けて仮想ユニット種別データベース124に格納されている初期レアリティIRLvに設定する。
仮想ユニット合成処理部35は、ゲーム処理部31から処理開始の指示を受けて図9に示す処理を開始し、ゲーム処理部31から指示プレイヤ識別子NPの入力を受け入れる(S11)。この仮想ユニット合成処理部35は、仮想ユニットを「合成」する処理、つまり、仮想ユニットのうちから選択した注目ユニットのユニット情報を、注目ユニット以外から選択される素材ユニットに係るユニット情報を用いて更新する更新処理を実行する。すなわち本実施の形態では、この仮想ユニット合成処理部35としての機能を実現する制御部11が、更新処理手段を実現する。
すなわち仮想ユニット合成処理部35は、合成の対象である注目ユニットの選択を促すゲームの画面情報を生成して指示端末へ送出する。この注目ユニットの選択では、仮想ユニット合成処理部35は、処理S11で入力された指示プレイヤ識別子NPに関連付けて仮想ユニットデータベース121に格納されている仮想ユニットの識別情報Uと、対応するユニット情報Vとのリストを読み出す(S12)。仮想ユニット合成処理部35は、このリストに含まれるユニット情報Vを参照して、注目ユニットとして選択できない条件を満足しているユニット情報Vと、それに関連付けられた仮想ユニットの識別情報Uとをリストから除いて、注目ユニット候補リストを生成する(S13)。
ここで注目ユニットとして選択できない条件を満足するか否かは、例えば、仮想ユニット合成処理部35がユニット情報Vに含まれる仮想ユニットの種類の情報Chを参照し、当該参照した仮想ユニットの種類の情報Chに関連付けて仮想ユニット種別データベース124に格納されている合成パラメータ情報Spに含まれる合成可否フラグの情報を読み出すことで判断する。この例では、仮想ユニット合成処理部35は、当該合成パラメータ情報Spに含まれる合成可否フラグの情報により、合成不可とされている仮想ユニットについては、注目ユニットとして選択できないと判断する。そのほか、指示プレイヤが予め合成素材としない旨設定(いわばロック)している仮想ユニットに係る識別情報Uとユニット情報Vとについても、この注目ユニット候補リストから除くようにしてもよい。
仮想ユニット合成処理部35は、こうして生成した注目ユニット候補リストに含まれるユニット情報のキャラクタの画像のうち、いずれかを選択可能な態様で配列し、選択結果を、選択されたキャラクタの画像に対応する仮想ユニットの識別情報で応答させるゲーム画面情報を生成する(S14)。このような画面情報は例えばスクリプトコードを含んだHTMLで記述することができ、その方法は広く知られた方法を採用できるので、ここでの詳しい説明を省略する。仮想ユニット合成処理部35は、このゲーム画面情報を指示端末へ送出し(S15)、指示端末から選択結果を受信するまで待機し、指示端末から選択結果を受信すると、当該受信した選択結果としての仮想ユニットの識別情報で特定される仮想ユニットを注目ユニットとする(S16)。
また仮想ユニット合成処理部35は、合成素材となる仮想ユニット(素材ユニット)を選択する処理を行う。具体的に仮想ユニット合成処理部35は、処理S11で入力された指示プレイヤ識別子NPに関連付けて仮想ユニットデータベース121に格納されている仮想ユニットの識別情報Uと、対応するユニット情報Vとのリストを読み出す。仮想ユニット合成処理部35は、このリストに含まれるユニット情報Vを参照して、処理S16にて注目ユニットとして選択した仮想ユニットの識別情報Uと、それに関連付けられたユニット情報Vとを、このリストから除いて、素材ユニット候補リストを生成する(S17)。
またここで、処理S17で選択した注目ユニットに対する合成素材として利用可能な仮想ユニットに条件がある場合は、当該条件を満足しない仮想ユニットに係る識別情報Uと、それに関連付けられたユニット情報Vとを、素材ユニット候補リストから除く。
具体的にこの条件は、注目ユニットと同じ種類である、または、注目ユニットよりレアリティRLvが低い、などの条件とする。つまり、注目ユニットの種類の情報と同じ種類の情報Chをユニット情報Vに含み、かつ、注目ユニットに係るレアリティRLvと同じ、またはそれ以下のレアリティRLvをユニット情報Vに含む、との条件などとする。
さらに、デッキに含まれている仮想ユニットに係る識別情報Uとユニット情報Vとについても、このリストから除いておくこととしてもよい。そのほか、指示プレイヤが予め合成素材としない旨設定(いわばロック)している仮想ユニットに係る識別情報Uとユニット情報Vとについても、この素材ユニット候補リストから除くようにしてもよい。
仮想ユニット合成処理部35は、ここで生成した素材ユニット候補リストが空である場合には、ここで処理を終了する。
そして仮想ユニット合成処理部35は、仮想ユニットの合成案内処理を開始する(S18)。この仮想ユニットの合成案内処理では、仮想ユニット合成処理部35は、図10に示すように、処理S17にて生成した素材ユニット候補リストに含まれる仮想ユニットの識別情報Uについて、合成のために可能な組み合わせを列挙する(S31)。
ここで可能な組み合わせとは、所定の組み合わせ条件を満足する組み合わせであり、所定の組み合わせ条件とは例えば素材ユニットとして選択できる仮想ユニットの最大数Nmax等である。すなわち、素材ユニット候補リストに含まれる仮想ユニットの識別情報がα,β,γ,δ,ε(n個;ここではn=5)であり、Nmax=3である場合は、仮想ユニット合成処理部35は、次の仮想ユニットの識別情報の組み合わせを列挙する:
(仮想ユニットを1つだけ選ぶ組み合わせ:n通り、ここでは5通り。)
α
β
γ
δ
ε
(仮想ユニットを2つだけ選ぶ組み合わせ:nC2通り、ここでは5C2=10通り。なおpCqは、p個から重複なくq個とる組み合わせの数を表す)
α,β
α,γ
…
β,γ
…
δ,ε
…
(仮想ユニットをNmaxずつ選ぶ組み合わせ:nCNmax通り、ここでは5C3=10通り。)
α,β,γ
α,β,δ
…
γ,δ,ε
仮想ユニット合成処理部35は、処理S31にて列挙した組み合わせ、つまり素材ユニット候補の組み合わせごとに、当該組み合わせに係る仮想ユニットを素材ユニットとして用いた場合の、注目ユニットの更新後のユニット情報を予測する(予測処理:S32)。
具体的にこの予測処理では、仮想ユニット合成処理部35は、素材ユニットの組み合わせごとに、当該組み合わせが指示プレイヤにより選択されたとした場合の合成の結果(育成パラメータの変化結果等)を仮に生成する。具体的にここでの例では、合成によって育成パラメータのうち、レベル情報ULvが変化するものとする。
また仮想ユニット合成処理部35は、更新後の注目ユニットに係るレベル情報ULvnewを予測し、その予測の結果を予測レベル情報ULvnewとして演算する。例えば仮想ユニット合成処理部35は、この予測レベル情報ULvnewを、注目ユニットの現在のレベル情報ULvoldと、素材ユニットとなる仮想ユニットのレベル情報(ULvM1,ULvM2…)とから、
ULvNew=[ULvold+a×(ULvM1+ULvM2+…)]
というように演算する。
ここでaは例えば予め定めた正の値の範囲ra_min<ra_maxで発生した乱数値、またはこの範囲の平均値等、範囲を規定する情報に係る統計演算値(最小値や最大値、過去発生した実際の乱数値の平均値や最瀕値、ra_minとra_maxとの平均値等)である。
また別の例では、この仮想ユニット合成処理部35は、予測レベル情報ULvnewを、注目ユニットの現在のレベル情報ULvoldと、素材ユニットのレアリティRLv(RLvM1,RLvM2…)とを用いて演算してもよい。例えば仮想ユニット合成処理部35は、レアリティRLvを「ノーマル」であれば「1」、「レア」であれば「2」、「スーパーレア(Sレア)」であれば「4」…といったように数値化して、予測レベル情報ULvNewを、
ULvNew=[ULvold+b×(RLvM1+RLvM2+…)]
というように演算してもよい。
ここでbは例えば予め定めた正の値の範囲rb_min<rb_maxで発生した乱数値、またはこの範囲の平均値等、範囲を規定する情報に係る統計演算値(最小値や最大値、過去発生した実際の乱数値の平均値や最瀕値、rb_minとrb_maxとの平均値等)である。
仮想ユニット合成処理部35は、こうして更新後の注目ユニットに係る予測レベル情報ULvnewを、処理S31で列挙した素材ユニットの組み合わせごとに得て、当該得られた情報を保持する(S33)。仮想ユニット合成処理部35は、この予測処理の結果に基づいて、素材ユニットの選択の案内を行う(S34)。具体的に仮想ユニット合成処理部35は、素材ユニットの組み合わせごとの予測の結果である予測レベル情報ULvnewを参照し、この予測の結果が所定の条件を満足する素材ユニットの組み合わせを推奨組み合わせとして案内する。
ここで推奨組み合わせを選択する所定の条件は、例えば「予測レベル情報が最も大きい値である」、換言すると、合成することにより注目ユニットのレベルULvが最も上昇するような素材ユニットの組み合わせを選択するとの条件であってもよい。この場合、予測レベル情報ULvnewが最も大きい値となっている素材ユニットの組み合わせを推奨組み合わせとして提示するゲーム画面情報を生成して指示端末へ送出する。
このゲーム画面情報に基づく表示を行うことにより、指示端末側では、図11に例示するように、注目ユニット(NU)と、素材ユニットの組み合わせに含まれる仮想ユニットの一覧(LST)と、この組み合せを選択したときの更新後の注目ユニットに係る情報であるレベル情報の予測値(予測レベル情報ULvnew)等(PV)とが表示される。
なお、この素材ユニットの組み合わせを提示するゲーム画面では、当該組み合わせを指示プレイヤが承認する操作を行ったときに、当該組み合わせに係る複数の仮想ユニットの識別情報を選択結果として指示端末に送出させるよう設定されているものとしておく。
指示プレイヤが指示端末において推奨組み合わせを承認し、仮想ユニット合成処理部35が素材ユニットの選択結果を受信すると(S19)、当該受信した選択結果としての仮想ユニットの識別情報で特定される仮想ユニット(推奨組み合わせに含まれる仮想ユニット)を素材ユニットとして合成の処理を行う。
すなわち仮想ユニット合成処理部35は、処理S16にて注目ユニットとして選択した仮想ユニットのユニット情報のレベルの情報ULvを、選択された素材ユニットに係るユニット情報に基づいて定めるなどして、注目ユニットのユニット情報を更新する(合成処理:S20)。
具体的には、仮想ユニット合成処理部35は、更新後の注目ユニットのユニット情報に含めるレベル情報ULvnewを、注目ユニットの元のレベル情報ULvoldと、素材ユニット(複数あってもよい)のレベル情報(ULvM1,ULvM2…)とに基づいて
ULvNew=Floor[ULvold+a×(ULvM1+ULvM2+…)]
として演算する。ここでaは予め定めた正の値の範囲ra_min<ra_maxで発生した乱数値とし、Floor[x]は、xを超えない最大の整数値を表すものとする。
なおこのとき仮想ユニット合成処理部35は、レベル情報ULvだけでなく、注目ユニットに係るユニット情報に含めるレアリティの情報等、他の育成パラメータを更新してもよい。例えば仮想ユニット合成処理部35は、注目ユニットに係るユニット情報に含めるレアリティの情報を、当該注目ユニットの元のレアリティよりも一段階高いレアリティを表すものに更新する。例えば、注目ユニットの元のレアリティが「ノーマル」であれば、新たなレアリティ情報をそれより一段階高いレアリティである「レア」として更新する。
仮想ユニット合成処理部35は、そして選択された素材ユニットに係る識別情報Uとユニット情報Vとを仮想ユニットデータベース121から削除して(S21)、処理を終了する。
またここでは仮想ユニット合成処理部35における仮想ユニットの合成案内処理の基本的な動作の例について説明したが、本実施の形態に係る仮想ユニット合成処理部35の仮想ユニットの合成案内処理としてはここで説明したものに限られないので、後にその変形例について述べる。
回復処理部37は、時間経過に応じてプレイヤのコスト値BPの回復処理を、予め定められたタイミングごとに(例えば定期的に)繰り返し行う。
ここでコスト値BPとは、対戦において攻撃を行うごとに所定量だけ消費される値である。ここで当該所定量は、例えば攻撃時に選択した仮想ユニットごとに決定される。
この処理では、回復処理部37は、図12に例示するように、プレイヤデータベース122を参照し、プレイヤデータベース122に格納されているプレイヤ識別子Pを所定の順に配列し、配列の順に、プレイヤ識別子Pを一つずつ注目識別子として選択して(S61)、次の処理を行う。
回復処理部37は注目識別子に関連付けられているコスト値BPが、注目識別子より識別されるプレイヤについて定められる最大コストMaxBP未満であるか否かを判断する(S62)。この最大コストMaxBPは、例えば注目識別子に関連付けてプレイヤデータベース122に格納されているレベル情報Lvに基づいて演算されてもよい。例えばレベル情報Lvが自然数(1,2,…)であるすると、この最大コストMaxcBPはMaxBP=α×Lv(αは所定の正の定数)などとして演算することができる。この処理S62において現在のコスト値BPが、最大コストMaxBP未満であれば(S62:Yes)、回復処理部37は、コスト値BPに所定の値を加算して、更新後のコスト値BPを演算する(S63)。そして回復処理部37は、当該更新後のコスト値BPが最大コストMaxBPを超えたか否かを判断する(S64)。
回復処理部37は、更新後のコスト値BPが注目識別子より識別されるプレイヤについて定められる最大コストMaxBPを超えていれば(S64:Yes)、更新後のコスト値BPを当該最大コストMaxBPに設定する(S65)。そして回復処理部37は、注目識別子に関連付けてプレイヤデータベース122に格納されたコスト値(BP)を、更新後のコスト値BPで上書きして更新し(S66)、次のプレイヤ識別子Pを注目識別子として選択するべく処理S61に戻って処理を続ける。
また処理S64において、更新後のコスト値BPが注目識別子より識別されるプレイヤについて定められる最大コストMaxBPを超えていなければ(S64:No)、回復処理部37は処理S66に移行して処理を続ける。また、処理S62において、注目識別子に関連付けられているコスト値BPが、注目識別子より識別されるプレイヤについて定められる最大コストMaxBP未満でなければ(S62:No)、次のプレイヤ識別子Pを注目識別子として選択するべく処理S61に戻って処理を続ける。なお、未選択のプレイヤ識別子Pがなくなれば、処理S61へ戻らずに処理を終了する。
[動作例]
本実施の形態のゲームシステムは以上のように構成され、次のように動作する。端末20を操作するプレイヤが、ウェブブラウザのプログラムを用いて、ゲームサーバ10のURLを指定してアクセスすると、ゲームサーバ10がプレイヤにユーザ名やパスワードの入力を求める。ここでプレイヤがユーザ名とパスワードとを入力してゲームサーバ10に送出すると、ゲームサーバ10は当該ユーザ名やパスワードを用いて認証の処理を実行する。なお、ゲームサーバ10がプレイヤにユーザ名やパスワードの入力を求めるのは、最初の1回でもよいし、毎回のアクセス時でもよく、ゲームシステムの構築やセキュリティの設定等に応じて、入力時期を適宜設定、変更できる。
プレイヤの認証に成功すると、ゲームサーバ10は、ゲームのホーム画面情報を生成して、プレイヤの端末20宛に当該画面情報を送出する。端末20はこの画面情報に基づいて、ゲームのホームの画面を表示する。この画面には、図7に例示したように、ホーム画面へ戻る指示を行うためのボタン(HB)、クエストパートのゲームを行う指示を送出するボタン(QB)、デッキ編成の処理を行う指示を送出するボタン(TB)、バトルパート(対戦)のゲームを行う指示を送出するボタン(BB)、いわゆるガチャ(抽選)パートの処理を行う指示を送出するボタン(RB)、合成処理を行う指示を送出するボタン(SB)等が配されている。
ここでプレイヤが合成処理を行う指示を送出するボタン(SB)をタップすると、ゲームサーバ10は、合成の対象である注目ユニットの選択を促すゲームの画面情報を生成してプレイヤの端末20へ送出する。
端末20では、プレイヤのプレイヤ識別子Pに関連付けて、ゲームサーバ10の仮想ユニットデータベース121に格納された識別情報で特定される仮想ユニット(つまりプレイヤが所持している仮想ユニット)のうち、合成の対象となり得る仮想ユニットの一覧が表示される。本実施の形態の一例では、仮想ユニットは仮想的なゲームカードとしているので、ここでは合成の対象となり得る、ゲームカードの画像の一覧が表示される。プレイヤがこの一覧のうちからいずれかを選択する操作を行うと、当該操作の内容が、端末20によりゲームサーバ10へ送出される。
ゲームサーバ10では、プレイヤによる選択結果により表される、仮想ユニットの識別情報で特定される仮想ユニットを注目ユニットとする。
ゲームサーバ10は次に、仮想ユニットの合成案内に係る処理を開始する。すなわち、ゲームサーバ10は、素材ユニットとなり得る仮想ユニットのリスト(素材ユニット候補リスト)を得る。この素材ユニット候補リストには例えば識別情報Uがα,β,γ,δ,εなる仮想ユニットが含まれるものとする。
ゲームサーバ10は、このリストに含まれる仮想ユニットの識別情報α,β,γ,δ,εについて、合成の際の素材ユニットとして可能な組み合わせを列挙する。ここでは、合成の際に素材ユニットとして選択できる仮想ユニットの最大数Nmax(予め定められているものとする)以下の仮想ユニットを含む仮想ユニットの組み合わせを列挙する。この組合せは、上述の例でNmax=3の場合、仮想ユニットを1つだけ選ぶ組み合わせが5通り、仮想ユニットを2つだけ選ぶ組み合わせが10通り、仮想ユニットをNmax=3ずつ選ぶ組み合わせ10通りの合計25通りとなる。
ゲームサーバ10は、この25通りの各組み合わせに係る仮想ユニットを素材ユニットとして用いた場合の、注目ユニットに係る更新後の予測レベル情報ULvnewを予測して求める。例えばゲームサーバ10は、注目ユニットの現在のレベル情報ULvoldと、素材ユニットのレアリティの情報(RLvM1,RLvM2…)とを用い、レアリティの情報を例えば「ノーマル」であれば「1」、「レア」であれば「2」、「スーパーレア(Sレア)」であれば「4」…といったように数値化して、ULvNew=[ULvold+b×(RLvM1+RLvM2+…)]というようにその予測値を演算する。ここでbは予め定めた正の値の範囲rb_min<rb_maxの平均値とする。
ゲームサーバ10は、この予測処理の結果として得られた、素材ユニットの組み合わせごとの情報のうち、例えば当該情報により表される予測レベル情報が最も大きくなる素材ユニットの組み合わせを提示するゲーム画面情報を生成して端末20へ送出する。端末20は、この画面情報に基づいて図11に例示したような画面を表示する。
ここでプレイヤが当該画面に表示された素材ユニットの組み合わせを承認する操作を端末20にて行うと、端末20は、当該承認された素材ユニットの組み合せを選択結果として、この組み合せに含まれる各素材ユニットの識別情報Uをゲームサーバ10へ送出する。
ゲームサーバ10では、これにより素材ユニットの選択結果を受信したものとして、当該受信した選択結果としての識別情報Uで特定される仮想ユニットを素材ユニットとして設定し、合成の処理を開始する。具体的にゲームサーバ10は、注目ユニットの元のレベル情報ULvoldと、素材ユニットのレアリティの情報(RLvM1,RLvM2…)とを用い、レアリティの情報を例えば「ノーマル」であれば「1」、「レア」であれば「2」、「スーパーレア(Sレア)」であれば「4」…といったように数値化する。そして、注目ユニットとして選択した仮想ユニットのユニット情報Vのレベル情報ULvを、
ULv=[ULvold+b×(RLvM1+RLvM2+…)]
というように定める。ここでbは予め定めた正の値の範囲rb_min<rb_maxで発生した乱数値とする。
なお、bの値が乱数値であるため、この注目ユニットに係る実際の更新後のレベル情報ULvnewは、一般的には予測値としてプレイヤに提示されたレベル情報ULvとは異なる値となる。
ゲームサーバ10は、さらに、合成素材とした仮想ユニットに係る識別情報とユニット情報とを仮想ユニットデータベース121から削除する。このように本実施の形態によれば、単にレアリティが所定値より低いものといった条件で合成素材を選択する場合に比べ、プレイヤに有利な結果となる合成素材を推奨することができ、操作性を向上できる。
[合成時のユニット情報の更新方法の別の例]
ここまでの説明においては、合成時のユニット情報の更新方法の例として、合成の対象となった注目ユニットと、合成素材として選択された素材ユニットとのそれぞれのユニット情報に基づいて更新を行うものとしていたが、本実施の形態は必ずしもこれだけに限られない。
例えば、本実施の形態の一例では、ゲームサーバ10は、注目ユニットのユニット情報を、合成素材としない仮想ユニットの種類や数の情報を用いて更新してもよい。例えば合成の際に、注目ユニットの元のレベル情報ULvoldと、素材ユニットのレアリティの情報(RLvM1,RLvM2…)と、さらに素材ユニットとして選択されていない所定の種類の仮想ユニット(例えば「魔法石」に係る仮想ユニット)の数MSnとを用いる。なお、上記レアリティの情報は例えば「ノーマル」であれば「1」、「レア」であれば「2」、「スーパーレア(Sレア)」であれば「4」…といったように数値化する。
そしてゲームサーバ10は、注目ユニットとして選択した仮想ユニットのユニット情報の更新後のレベル情報ULvnewを、
ULv=[ULvold+b×0.2×(MSn+1)×(RLvM1+RLvM2+…)]
というように定めてもよい。ここでbは予め定めた正の値の範囲rb_min<rb_maxで発生した乱数値とする。
この場合、仮想ユニットの合成案内処理が行われるときには、仮想ユニット合成処理部35は、図10に示した処理に代えて、図13に示す処理を行う。なお、図13の例において、図10と同様の処理を行うステップには同じ符号を付して、繰り返しての説明を省略する。仮想ユニット合成処理部35は、処理S17にて生成した素材ユニット候補リストに含まれる仮想ユニットの識別情報Uについて、合成のために可能な組み合わせを列挙する(S31)。
仮想ユニット合成処理部35は、処理S31にて列挙した組み合わせ、つまり素材ユニット候補の組み合わせごとに、当該組み合わせに係る仮想ユニットを素材ユニットとして用いた場合の、素材ユニットとして選択されていない所定の種類の仮想ユニットを考慮した注目ユニットの更新後のユニット情報を予測する(素材ユニットとして選択されていない所定の種類の仮想ユニットを考慮した予測処理:S40)。
具体的にこの予測処理では、仮想ユニット合成処理部35は、素材ユニットの組み合わせごとに、素材ユニットとして選択されていない所定の種類の仮想ユニット(例えば「魔法石」に係る仮想ユニット)の数MSnを考慮して、当該組み合わせが指示プレイヤにより選択されたとした場合の合成の結果を仮に生成する。
すなわち仮想ユニット合成処理部35は、例えば注目ユニットに係るユニット情報に含めるレアリティの情報を、注目ユニットの元のレアリティよりも一段階高いレアリティを表すものとする。
また仮想ユニット合成処理部35は、更新後の注目ユニットに係るレベル情報を予測し、その予測の結果を予測レベル情報ULvnewとして演算する。例えば仮想ユニット合成処理部35は、この予測レベル情報ULvnewを、注目ユニットの現在のレベル情報ULvoldと、素材ユニットとなる仮想ユニットのレベル情報(ULvM1,ULvM2…)と、素材ユニットとして選択されていない所定の種類の仮想ユニットの数MSnとから、
ULvNew=[ULvold+a×(ULvM1+ULvM2+…)]+β×MSn
というように演算する。
ここでa,βは例えばそれぞれ予め定めた正の値の範囲ra_min<ra_max,rβ_min<rβ_maxで発生した乱数値、またはこの範囲の平均値等、範囲を規定する情報に係る統計演算値(最小値や最大値、過去発生した実際の乱数値の平均値や最瀕値、対応する最小値と最大値の平均値、つまりra_minとra_maxとの平均値またはrβ_minとrβ_maxとの平均値等)である。
また別の例では、この仮想ユニット合成処理部35は、予測レベル情報ULvnewを、注目ユニットの現在のレベル情報ULvoldと、素材ユニットのレアリティRLv(RLvM1,RLvM2…)とを用いて演算してもよい。例えば仮想ユニット合成処理部35は、レアリティRLvを「ノーマル」であれば「1」、「レア」であれば「2」、「スーパーレア(Sレア)」であれば「4」…といったように数値化して、予測レベル情報ULvNewを、
ULvNew=[ULvold+b×(RLvM1+RLvM2+…)]+β×MSn
というように演算してもよい。
ここでbは例えば予め定めた正の値の範囲rb_min<rb_maxで発生した乱数値、またはこの範囲の平均値等、範囲を規定する情報に係る統計演算値(最小値や最大値、過去発生した実際の乱数値の平均値や最瀕値、rb_minとrb_maxとの平均値等)であり、βは先に説明したものと同じである。
仮想ユニット合成処理部35は、こうして更新後の注目ユニットに係る予測レベル情報ULvnewを、処理S31で列挙した素材ユニットの組み合わせごとに得て、当該得られた情報を保持する(S33)。仮想ユニット合成処理部35は、この予測処理の結果に基づいて、素材ユニットの選択の案内を行う(S34)。具体的に仮想ユニット合成処理部35は、素材ユニットの組み合わせごとの予測の結果である予測レベル情報ULvnewを参照し、この予測の結果が所定の条件を満足する素材ユニットの組み合わせを推奨組み合わせとして案内する。
ここで推奨組み合わせを選択する所定の条件は、例えば「予測レベル情報が最も大きい値である」、換言すると、合成することにより注目ユニットのレベルが最も上昇するような素材ユニットの組み合わせを選択するとの条件であってもよい。この場合、予測レベル情報ULvnewが最も大きい値となっている素材ユニットの組み合わせを推奨組み合わせとして提示するゲーム画面情報を生成して指示端末へ送出する。
これにより素材ユニットの組み合わせ候補のうちで、現在プレイヤが所持しているアイテム等、素材ユニット以外の仮想ユニットの種類や数を考慮して最もレベル情報が高くなるものを案内する等の処理が可能となる。
つまり、合成のゲーム画面において、強化の対象とする仮想ユニットを選択すると、可能な素材ユニットの組み合わせのうちから、ユーザの所持品の種類及び数に応じて、当該強化の対象とする仮想ユニットのレベル(経験値)が最も上がる素材ユニットの組み合せをゲームサーバ10が推定し、プレイヤに提示することが可能となる。
[変形例1]
また本実施の形態の例において、更新処理手段としての仮想ユニット合成処理部35は、図14に例示するように、更新条件判断部41と、仮定案内部42と、選択案内部43と、条件別仮想ユニット合成処理部44と、の少なくとも一つを含んでもよい。なお、条件別仮想ユニット合成処理部44は、条件別推定部45と、判断基準設定部46と、判断部47とを含む。
更新条件判断部41は、更新処理を行うときに、当該更新の条件として、合成の可否に関する判断を行い、合成が可能と判断されたときに限り、合成の処理を行って注目ユニットとして選択された仮想ユニットのユニット情報を更新するものである。
この合成の可否は、例えば、合成において仮想的な所持金を合成費用として消費させることとし、合成を指示したプレイヤに係るプレイヤパラメータに含まれる仮想的な所持金の残高Amがこの合成費用を超えているか否かを判断することで行うこととしてもよい。つまり、更新条件とは、例えば十分な所持金の有無である。
このように条件により合成できない仮想ユニットの組み合せがある場合は、制御部11は、図15に例示するように、図10、図13に示した処理S31の後に、当該処理S31にて列挙した組み合わせごとに、合成の可否の条件(更新条件に相当する)を判断し(S45)、当該条件を満足しないと判断したときに(S45:No)、処理S31にて列挙した組み合わせから、当該条件を満足しないと判断した組み合わせを取除く(S46)。また、当該条件を満足すると判断したときには(S45:Yes)、何もせずに次の組み合わせについての判断に戻る。
この例によると、制御部11は、上記合成の可否の条件を満足する組み合わせについてのみ、処理S32や処理S40における予測処理を実行することとなる。
この場合は、仮想的な所持金の残高が不足など更新条件を満足しないために、実際にはすぐに合成できない組み合わせを除く組み合わせにおいて、例えば注目ユニットの更新後のレベル情報の予測値が最も大きくなる素材ユニットの組み合わせを提示することとなる。つまりこの場合は、仮想的な所持金の残高が不足して実際には合成できない組み合せについては案内されない。
[変形例1b]
もっとも制御部11は、仮想的な所持金の残高が不足など更新条件を満足しないために、実際にはすぐに合成できない組み合わせを除く組み合わせにおいて、例えば注目ユニットの更新後のレベル情報の予測値が最も大きくなる素材ユニットの組み合わせを提示するとともに、仮定案内部42を備えて、次の処理を行ってもよい。
仮定案内部42は、合成の可否の条件を満足しないと判断された組み合わせについてのみ、処理S32や処理S40における予測処理を実行し、その結果から、例えば注目ユニットの更新後のレベル情報の予測値が最も大きくなる素材ユニットの組み合わせを提示するものである。
具体的にこの仮定案内部42を備える制御部11は、図10、図13に示した、処理S31の後に、図16に例示する処理を行う。なお、図15と同様の処理となるステップについては同じ符号を付す。
すなわちこの例の制御部11は、処理S31にて列挙した組み合わせごとに、合成の可否の条件(更新条件に相当する)を判断し(S45)、当該条件を満足しないと判断したときに(S45:No)、処理S31にて列挙した組み合わせから、当該条件を満足しないと判断した組み合わせを取除く(S46)とともに、当該取除いた組み合わせを、処理S31にて列挙した組み合わせのうち、合成の可否の条件を満足しない組み合わせを列挙したリスト(以下合成不可組み合わせリストと呼ぶ)に含めて記憶する(S47)。
また、当該条件を満足すると判断したときには(S45:Yes)、何もせずに次の組み合わせについての判断に戻る。
制御部11は、処理S31にて列挙された組み合わせのすべてについて上記判断を行った後、上記合成の可否の条件を満足する組み合わせについてのみ、処理S32や処理S40における予測処理を実行するとともに、仮定案内部42の動作として、合成不可組み合わせリストに含まれる組み合わせについても処理S32や処理S40における予測処理を実行する。
そして仮定案内部42を備えた制御部11は、案内の処理(処理S34)において、仮想的な所持金の残高が不足など更新条件を満足しないために、実際にはすぐに合成できない組み合わせにおいて、例えば注目ユニットの更新後のレベル情報の予測値が最も大きくなる素材ユニットの組み合わせを、すぐに合成できる組み合わせとともに提示する。
このとき制御部11は、すぐに合成できる組み合わせと、仮定案内部42としての動作により提示される、すぐには合成できない組み合わせとを、互いに外見上異なる態様で提示することとしてもよい。例えば、仮想的な所持金の残高が不足など更新条件を満足しないために、すぐに合成を実行できない素材ユニットの組み合わせのうちから、注目ユニットの更新後のレベル情報の予測値が最も大きくなる素材ユニットの組み合わせを提示する場合、すぐに合成できる素材ユニットの組み合わせの表示色に比べて、明度を落した表示色で提示する。
また、上記の例では、素材ユニットとなり得る仮想ユニットの候補は、合成を指示したプレイヤが所持している仮想ユニットのうちから選択することとしていた。しかしながら本実施の形態はこれに限られず、現在プレイヤが素材ユニットとすることのできない仮想ユニット、例えばプレイヤが現在所持していない仮想ユニットを、図10に示した、その処理S32にて取得したリストに加えて、当該リストのうちから素材ユニットの組み合わせを列挙して、当該列挙した組み合わせのそれぞれについて、当該組み合わせに係る素材ユニットを用いて合成処理を行った場合の注目ユニットに係る更新後のユニット情報の予測値を演算し、例えばそのレベル情報が最も大きくなる素材ユニットの組み合わせを提示するといった処理を行ってもよい。
この場合も、現在プレイヤが所持していない仮想ユニットを含む素材ユニットの組み合わせについては、すぐに合成できる組み合わせの表示色に比べて、明度を落した表示色で提示するよう制御してもよい。また、すぐに合成できる組み合わせも併せて提示することとしてもよい。
なお、ここでリストに加える、現在プレイヤが所持していない仮想ユニットを得る処理は、例えば次のようになる。すなわち制御部11は、合成を指示したプレイヤの指示プレイヤ識別子NPに関連付けて仮想ユニットデータベース121に格納されている仮想ユニットのユニット情報から種類を特定する情報Chの一覧ULを得て、当該一覧に含まれる、種類を特定する情報について重複がなくなるよう処理する。また、制御部11は仮想ユニット種別データベース124に含まれる仮想ユニットの種類の情報Chの一覧ALを得て、この一覧ALに含まれる種類の情報のうちから、プレイヤが所持する仮想ユニットの種類の一覧ULに含まれる種類の情報を除いて、現在プレイヤが所持していない仮想ユニットの種類の一覧mALを得る。
そして制御部11は、この現在プレイヤが所持していない仮想ユニットの種類の一覧mALを参照しつつ、この一覧mALに含まれる仮想ユニットの種類Chに関連付けられた合成パラメータ情報Spを取得して、例えば当該種類の仮想ユニットに係る仮想ユニットの識別情報を所持擬装仮想ユニット識別情報として発行し、また所持擬装ユニット情報として、当該種類の仮想ユニットに係る初期状態(初期レアリティと初期攻撃力と初期防御力とに設定されるもの)の値を設定して、処理S32にて取得したリストに、これら所持擬装仮想ユニット識別情報と、それに対応する所持擬装ユニット情報とを加える。
なお、ここでは所持していない種類の仮想ユニットをすべてリストに加えることを想定したが、本実施の形態はこれに限られず、ゲームサーバ10の運営者側が、例えば新たに加えた種類の仮想ユニットなど、プレイヤに取得してほしいと考える仮想ユニットを、特定仮想ユニットとして設定してもよい。この特定仮想ユニットを所持していないプレイヤが合成の指示を行った場合に、制御部11は、当該特定仮想ユニットについての所持擬装仮想ユニット識別情報を発行し、また所持擬装ユニット情報として、当該特定仮想ユニットに係る初期状態(初期レアリティと初期攻撃力と初期防御力とに設定されるもの)の値を設定して、処理S32にて取得したリストに、これら所持擬装仮想ユニット識別情報と、それに対応する所持擬装ユニット情報とを加えることとしてもよい。また、プレイヤが素材ユニットとすることができない仮想ユニットは、プレイヤが所持していないものに限られず、プレイヤがロックしているものや、デッキに含めているものなどを含んでもよい。
[変形例1c]
なお、ここでの例で、更新条件である合成の可否の条件は、プレイヤのプレイヤパラメータ情報に基づくものとして説明したが、本実施の形態はこれに限られず、プレイヤが選択した注目ユニットのユニット情報、素材ユニットのユニット情報の少なくとも一つに関係する更新条件を用いてもよい。例えば制御部11は素材ユニットがロックされている場合には更新条件が満足されないものと判断する。
[変形例2]
仮想ユニット合成処理部35は、選択案内部43を備えて、例えばレベル情報が最大となるような素材ユニットの推奨組み合わせの案内を行った場合であっても、当該選択案内部43により指示プレイヤから当該案内された推奨組み合わせとは異なる、素材ユニットの組み合わせの選択を受け入れてもよい。この場合、当該指示プレイヤが選択した組み合わせに係る仮想ユニットの識別情報の組を選択結果として合成の処理を行う。
選択案内部43は、案内した素材ユニットの推奨組み合わせとは異なる組み合わせに係る仮想ユニットの識別情報の組が指示プレイヤによって選択されたときには、当該選択結果が案内した推奨組み合わせとは異なることを指示プレイヤに報知してもよい。
この報知は例えば、ポップアップウィンドウに、「おすすめした組み合わせと違いますがよろしいですか?」のような文字列を表示することで行う。選択案内部43は、このポップアップウィンドウに、指示プレイヤが、自己が選択した組み合わせでよいことを承認するか、推奨組み合わせの案内の画面に戻るかを選択できるようにそれぞれを表すボタンを配してもよい。ここで指示プレイヤが、自己が選択した組み合わせでよいことを承認するボタンを操作すると、選択案内部43は、指示プレイヤから受け入れた選択結果に基づいて処理を続ける。また推奨組み合わせの案内の画面に戻る旨のボタンが操作されると、選択案内部43は、推奨組み合わせの案内に係るゲーム画面(図11に例示した画面)を指示端末へ送出する。
[変形例3]
さらにここまでの例示では、仮想ユニット合成処理部35は、合成案内処理として、合成の対象とする注目ユニットに係る更新後の予測レベル情報が最大となる素材ユニットの組み合わせを案内することとしていたが、プレイヤが必ずしも仮想ユニットのレベル情報ULvの向上を望んでいるとは限らない。
すなわち合成による注目ユニットのユニット情報の更新内容は、そのレベル情報だけに限られない。例えば仮想ユニットのユニット情報は、レベル情報ULvのほか、スキルパラメータUSLv等、他の育成パラメータが含まれてもよく、プレイヤはレベル情報ULvではなく、スキルパラメータUSLvの向上のために合成をする場合もある。
このスキルパラメータUSLvは例えば次のように使用されるものである。すなわち、対戦のゲームを行っているときに、プレイヤが攻撃の方法として「通常攻撃」と「スキルによる特殊攻撃」とのいずれかを選択できるとき、「通常攻撃」ではレベル情報ULvに基づいて攻撃力が決定され、「スキルによる特殊攻撃」ではスキルパラメータUSLvに基づいて攻撃力が決定される。
また合成の処理では、互いに異なる種類の育成パラメータは一般に、それぞれ異なる方法で更新されるものとする。つまりここでは合成の処理において、注目ユニットのレベル情報ULvと、スキルパラメータUSLvとをそれぞれ異なる方法で更新される。
例えば、レベル情報ULvについては既に説明したのと同様、注目ユニットの現在のレベル情報ULvoldと、合成素材となる素材ユニットのレアリティの情報(RLvM1,RLvM2…)とを用い、レアリティの情報を例えば「ノーマル」であれば「1」、「レア」であれば「2」、「スーパーレア(Sレア)」であれば「4」…といったように数値化して、ULvNew=[ULvold+b×(RLvM1+RLvM2+…)]というようにその値を演算する(bは既に述べた乱数値)。
またスキルパラメータUSLvは、注目ユニットの現在のスキルパラメータUSLvoldと、合成素材となる素材ユニットのレアリティの情報(RLvM1,RLvM2…)とを用い、レアリティの情報を例えば「ノーマル」であれば「0」、「レア」であれば「0.1」、「スーパーレア(Sレア)」であれば「0.25」…といったように数値化して、更新後のスキルパラメータUSLvNew=[USLvold+c×Max(RLvM1,RLvM2,…)]というようにその値を演算する(bは既に述べた乱数値)。Max(x,y…)は、x,y…のうちの最大値、cは0から(USLvmax−USLvold)までの乱数値、[x]はxを超えない最大の整数値を表す。またUSLvmaxは、USLvの限界値(これを超えるUSLv値が生じないようにゲームサーバ10が制御する)であるとする。
この例の場合、ある素材ユニットの組み合わせでは更新後のレベル情報の予測値は最大となるが、スキルパラメータの予測値は別の素材ユニットの組み合わせによって最大となるといったことが生じ得る。
そこでこのように、合成の処理によってそれぞれ異なる方法で更新され得る複数の育成パラメータがユニット情報に含まれている場合、制御部11は、合成案内処理において、当該育成パラメータごとに、それぞれの更新後の予測値を得て、それぞれを最大とする素材ユニットの組み合わせを提示することとしてもよい。
この仮想ユニットの合成案内処理を行う仮想ユニット合成処理部35は、条件別仮想ユニット合成処理部44を備える。
条件別仮想ユニット合成処理部44の条件別推定部45は、複数の所定の条件のそれぞれごとに、素材ユニットの組み合せのうち、対応する予測ユニット情報が条件を満足する素材ユニットの組み合わせを推奨組み合わせとして得る。
判断基準設定部46は、条件別推定部45により得られた、条件ごとの推奨組み合わせ候補のうちから、推奨組み合せを選択する基準を設定する。一例としてこの判断基準設定部46は、指示プレイヤから入力される指示により、基準を設定する。またこの判断基準設定部46は、指示プレイヤの過去の操作履歴に基づいて基準を設定してもよい。この判断基準設定部46の具体的な動作例については後に述べる。
判断部47は、判断基準設定部46により定められた所定の判断基準に従い、条件別推定部45により条件ごとに得られた推奨組み合わせ候補の少なくとも一つ(複数あってもよい)を、推奨組み合わせとして案内する。
具体的に、この条件別仮想ユニット合成処理部44を備えた仮想ユニット合成処理部35は、図10に示した例に代えて図17に例示するように、処理S17にて生成した素材ユニット候補リストに含まれる仮想ユニットの識別情報Uについて、合成のために可能な組み合わせを列挙する(S31)。なお、図10に例示したステップと同様の処理を行うステップについては同じ符号を付して、繰り返した説明を省略する。
仮想ユニット合成処理部35は、処理S31にて列挙した組み合わせ、つまり素材ユニット候補の組み合わせごとに、当該組み合わせに係る仮想ユニットを素材ユニットとして用いた場合の、注目ユニットの更新後の複数の育成パラメータに係るユニット情報を予測する(複数の育成パラメータについての予測処理:S51)。
具体的にここでの予測処理では、仮想ユニット合成処理部35は、素材ユニットの組み合わせごとに、当該組み合わせが指示プレイヤにより選択されたとした場合の合成の結果(複数の育成パラメータ、例えばここでは更新後の注目ユニットに係る予測レベルULvnewと、予測スキルパラメータUSLvnewの情報を含む)を仮に生成する。
仮想ユニット合成処理部35は、こうして更新後の注目ユニットに係る予測レベル情報ULvnew、及び予測スキルパラメータUSLvnewを、処理S31で列挙した素材ユニットの組み合わせごとに得て、当該得られた情報を保持する(複数の育成パラメータの予測結果を保持:S52)。仮想ユニット合成処理部35は、この複数の育成パラメータについての予測処理の結果に基づいて、素材ユニットの選択の案内を行う(S53)。
具体的に仮想ユニット合成処理部35は、更新後の予測レベル情報ULvnewが最大となっている素材ユニットの組み合わせと、更新後の予測スキルパラメータUSLvnewが最大となっている素材ユニットの組み合わせとを選択するべき判断基準を設定する。
この例では、仮想ユニット合成処理部35は、「レベルを上げたい場合」として、保持された情報のうち、更新後の予測レベル情報ULvnewが最大となっている素材ユニットの組み合わせを、第1の推奨組み合わせとして提示するとともに、「スキルを上げたい場合」として、保持された情報のうち、更新後の予測スキルパラメータUSLvnewが最大となっている素材ユニットの組み合わせを、別の、第2の推奨組み合わせとして提示する。
このように合成の処理によってそれぞれ異なる方法で更新され得る複数の情報要素である育成パラメータがユニット情報に含まれている場合、制御部11は、それぞれの育成パラメータの更新後の予測値を最大とする組み合わせをそれぞれ推奨組み合わせとして提示する。
また、本実施の形態のゲームサーバ10は、所定の判断基準として、例えばゲームサーバ10の運営側により決定された基準を設定する。例えば期間限定のゲーム要素として比較的高いレベル情報の仮想ユニットを要するゲームイベントを実施する場合、当該ゲームイベントが行われている間は、ゲームサーバ10の運営者は、判断基準としてレベル情報を最大とする素材ユニットの組み合わせを推奨組み合わせとして案内するよう判断基準を設定する。
また判断基準は例えば、合成を指示した指示プレイヤのゲームのプレイ履歴に基づいて定められてもよい。この例では、ゲームサーバ10は、プレイヤごとに、ゲームのプレイ履歴を記憶する履歴記憶手段をさらに備える。この履歴記憶手段は制御部11により実現され、プレイヤがログインした日の数(総ログイン日数)、プレイヤの直近連続ログイン日数、プレイヤのプレイスタイルを特徴づけるパラメータ(以下、プレイスタイルパラメータと呼ぶ)、合成時の仮想ユニットのレベル情報の上昇分を表す値、合成時の仮想ユニットのスキルパラメータの上昇分を表す値などを、プレイヤを識別するプレイヤ識別情報に関連付けて、プレイヤデータベース122に含めて操作履歴として記録するものである。なお、上述のプレイスタイルパラメータには、プレイヤにより行われたプレイの種類別のプレイ回数の情報が含まれる。具体的にこのプレイの種類別のプレイ回数は、各ゲームパート(クエストパート、バトルパート等)のプレイ回数や、バトルパートの処理でのプレイヤの各攻撃方法(通常攻撃、スキルによる特殊攻撃の別など)の指示回数等の情報である。
具体的にこの場合、ゲームサーバ10の制御部11は、ゲーム処理部31としての動作において、端末20から各パートの処理を行うべき旨の指示を受信すると、ログインデータベース125を参照して当該指示の受信元である端末20(指示端末と呼ぶ)の通信パラメータ情報に関連付けられたプレイヤ識別子P(指示プレイヤ識別子NP)を取得し、指示プレイヤ識別子NPに関連付けてプレイヤデータベース122に格納されている、指示に対応するパートのプレイ回数のカウント値を「1」だけ増加(インクリメント)する。
また制御部11は、バトル処理部33としての動作を行っているときに、指示端末から通常攻撃またはスキルによる特殊攻撃を行う旨の操作を受け入れると、指示プレイヤ識別子NPに関連付けてプレイヤデータベース122に格納されている、対応する攻撃方法の指示回数を「1」だけ増加(インクリメント)する。
さらにこの場合の制御部11は、仮想ユニット合成処理部35としての処理において、合成の対象とした注目ユニットのユニット情報のうち、レベル情報ULvを更新したときには、その更新前の値と更新後の値との差分を、レベル情報の上昇分を表す値として、指示プレイヤ識別子NPに関連付けてプレイヤデータベース122に格納されている、合成時の仮想ユニットのレベル情報の上昇分を表す値に累算する。
同様に、制御部11は、この、仮想ユニット合成処理部35としての処理において、合成の対象とした注目ユニットのユニット情報のうち、スキルパラメータUSLvを更新したときには、その更新前の値と更新後の値との差分を、スキルパラメータの上昇分を表す値として、指示プレイヤ識別子NPに関連付けてプレイヤデータベース122に格納されている、合成時の仮想ユニットのスキルパラメータの上昇分を表す値に累算する。
この例のゲームサーバ10の制御部11は、仮想ユニット合成処理部35の処理として、次の処理を実行する。すなわち制御部11は、図18に例示するように、図9に例示した処理S11からS16を実行することで、指示プレイヤから合成の対象である注目ユニットの選択を受け入れる(S71)。なお、以下の処理において図9、図10と同様の処理を行うステップについては、図9、図10の対応するステップと同じ符号を付して、繰り返しての説明を省略する。
制御部11は、次に指示プレイヤを識別する指示プレイヤ識別子NPに関連付けられた操作履歴に基づき、プレイヤがどの育成パラメータを更新したいのかを推測する。ここでの例では、制御部11は、注目ユニットのレベル情報を上昇させたいか、スキルパラメータを上昇させたいかを推測する(S72)。
この推測は例えば、指示プレイヤ以外のプレイヤ(他のプレイヤ)と、指示プレイヤとのプレイ履歴に基づいて行う。例えば、他のプレイヤに比べ、バトルでスキル(魔法等)をよく使っているか否か、他のプレイヤに比べて任務(クエスト)をよく制覇しているか否かといった、他のプレイヤに比べての操作の特徴に基づいて行われる。具体的な動作として、この例の推測は次のようにして行う。
以下の説明でゲームサーバ10の制御部11は、プレイヤと同程度の期間にわたってプレイしている他のプレイヤ(対照プレイヤ)のレベル情報と、このプレイヤのレベル情報とを比較し、また当該対照プレイヤのスキルパラメータと、このプレイヤのスキルパラメータとを比較する。そして合成の指示を行ったプレイヤのレベル情報が、対照プレイヤのレベル情報よりも大きい場合に、このプレイヤは注目ユニットのレベル情報を上昇させたいプレイヤであると判断する。また、合成の指示を行ったプレイヤのスキルパラメータが、対照プレイヤのスキルパラメータよりも大きい場合に、このプレイヤは注目ユニットのスキルパラメータを上昇させたいプレイヤであると判断する。
具体的に、制御部11は、図19に例示するように、指示プレイヤ識別子NPに関連付けてプレイヤデータベース122に格納されている操作履歴のうちから総ログイン日数の情報を取得して(S81)、当該取得した総ログイン日数の情報を含む所定範囲(例えば取得した日時±5日)を表す範囲情報を生成する(S82)。
制御部11はプレイヤデータベース122に格納されている指示プレイヤ識別子NP以外のプレイヤ識別子Pに関連付けられている操作履歴のうちから、総ログイン日数が上記生成した範囲情報のうちにある操作履歴を検索する(S83)。制御部11は、この検索により見出した操作履歴に含まれるレベル情報の上昇分の値ΔULv1,ΔULv2…と、スキルパラメータの上昇分の値ΔUSLv1,ΔUSLv2…とを取り出して、それぞれの平均値(算術平均でよい)ΔULvave,ΔUSLvaveを演算する(S84)。
制御部11は、ここで演算した各平均値(上記の対照プレイヤのレベル情報の上昇分や、スキルパラメータの上昇分の平均値ΔULvave,ΔUSLvave)と、指示プレイヤ識別子NPに関連付けられた操作履歴に含まれるレベル情報の上昇分ΔULvp及びスキルパラメータの上昇分ΔUSLvpとを比較する(S85)。制御部11は、この比較の結果、対照プレイヤのレベル情報の上昇分の平均値ΔULvaveよりも、指示プレイヤ識別子NPに関連付けられた操作履歴に含まれるレベル情報の上昇分ΔULvpが大きく(ΔULvp>ΔULvave)、かつ、対照プレイヤのスキルパラメータの上昇分の平均値ΔUSLvaveよりも、指示プレイヤ識別子NPに関連付けられた操作履歴に含まれるスキルパラメータの上昇分ΔUSLvpが小さい(ΔUSLvp<ΔUSLvave)場合、つまり上昇分ΔULvpのみ対照プレイヤの平均より大きい場合に(S85:ΔULvpのみ大)、指示プレイヤが注目ユニットのレベル情報ULvを上昇させたいものと判断して、判断基準を「レベル情報ULvが上昇するもの」と設定する(S86)。
また制御部11は、ΔULvp<ΔULvaveかつ、ΔUSLvp>ΔUSLvaveであれば、つまり上昇分ΔUSLvpのみ対照プレイヤの平均より大きい場合に(S85:ΔUSLvpのみ大)、指示プレイヤが注目ユニットのスキルパラメータUSLvを上昇させたいものと判断して、判断基準を「スキルパラメータUSLvが上昇するもの」と設定する(S87)。
なお、ΔULvp>ΔULvaveかつ、ΔUSLvp>ΔUSLvavであれば、制御部11は、ΔULvp/ΔULvaveと、ΔUSLvp/ΔUSLvavとを演算して比較し、ΔULvp/ΔULvave>ΔUSLvp/ΔUSLvavであれば、つまり、平均値からの乖離の度合の大きさの比較により、レベル情報についての乖離がより大きいと判断される場合、つまり上昇分ΔULvpが対照プレイヤの平均に比べ最も上昇している場合は(S85:ΔULvpがより上昇)、指示プレイヤが注目ユニットのレベル情報ULvを上昇させたいものと判断し、処理S86に移行して判断基準を「レベル情報ULvが上昇するもの」と設定する。
またここでΔULvp/ΔULvave<ΔUSLvp/ΔUSLvavであれば、つまり、平均値からの乖離の度合の大きさの比較により、スキルパラメータについての乖離がより大きいと判断される場合、換言すれば上昇分ΔUSLvpが対照プレイヤの平均に比べ最も上昇している場合は(S85:ΔUSLvpがより上昇)、指示プレイヤが注目ユニットのスキルパラメータを上昇させたいものと判断して、処理S87に移行し、判断基準を「スキルパラメータUSLvが上昇するもの」と設定する。
またΔULvp<ΔULvaveかつ、ΔUSLvp<ΔUSLvavである場合も同様に、ΔULvp/ΔULvaveと、ΔUSLvp/ΔUSLvavとを演算して比較し、より「1」に近い、つまり、レベル情報についての値と、スキルパラメータについての値のうち、より平均に近い値を調べる。ここでスキルパラメータについての値ΔUSLvp/ΔUSLvavがΔULvp/ΔULvaveよりも「1」に近い値となっていれば、換言すれば上昇分ΔUSLvpが対照プレイヤの平均に比べ最も上昇していれば(S85:ΔUSLvpがより上昇)、制御部11は、指示プレイヤ識別子NPで識別されるプレイヤが注目ユニットのスキルパラメータを上昇させたいものと判断し、処理S87に移行して、判断基準を「スキルパラメータUSLvが上昇するもの」と設定する。
またここでΔULvp/ΔULvaveがスキルパラメータについての値ΔUSLvp/ΔUSLvavよりも「1」に近い値となっていれば、つまり上昇分ΔULvpが対照プレイヤの平均に比べ最も上昇していれば(S85:ΔULvpがより上昇)、制御部11は、指示プレイヤ識別子NPで識別されるプレイヤが注目ユニットのレベル情報を上昇させたいものと判断して、処理S86に移行し、判断基準を「レベル情報ULvが上昇するもの」と設定する。
制御部11は、図18の処理に戻り、指示プレイヤ識別子NPに関連付けて仮想ユニットデータベース121に格納されている仮想ユニットの識別情報Uと、対応するユニット情報Vとのリストを読み出す。制御部11は、仮想ユニット合成処理部35の処理として、このリストに含まれるユニット情報Vを参照して、先に注目ユニットとして選択した仮想ユニットの識別情報Uと、それに関連付けられたユニット情報Vとを、このリストから除いて、素材ユニット候補リストを生成する(S17)。
またここで、処理S17で選択した注目ユニットに対する合成素材として利用可能な仮想ユニットに条件がある場合は、当該条件を満足しない仮想ユニットに係る識別情報Uと、それに関連付けられたユニット情報Vとを、素材ユニット候補リストから除く。
具体的にこの条件は、注目ユニットと同じ種類である、または、注目ユニットよりレアリティRLvが低い、などの条件とする。つまり、注目ユニットの種類の情報と同じ種類の情報Chをユニット情報Vに含み、かつ、注目ユニットに係るレアリティRLvと同じ、またはそれ以下のレアリティRLvをユニット情報Vに含む、との条件などとする。
さらに、デッキに含まれている仮想ユニットに係る識別情報Uとユニット情報Vとについても、このリストから除いておくこととしてもよい。そのほか、指示プレイヤが予め合成素材としない旨設定(いわばロック)している仮想ユニットに係る識別情報Uとユニット情報Vとについても、この素材ユニット候補リストから除くようにしてもよい。
制御部11の仮想ユニット合成処理部35は、ここで生成した素材ユニット候補リストが空である場合には、ここで処理を終了する。
そして制御部11は、処理S17にて生成した素材ユニット候補リストに含まれる仮想ユニットの識別情報Uについて、合成のために可能な組み合わせを列挙する(S31)。
そして制御部11は、処理S31にて列挙した組み合わせ、つまり素材ユニット候補の組み合わせごとに、当該組み合わせに係る仮想ユニットを素材ユニットとして用いた場合の、注目ユニットの更新後の複数の育成パラメータに係るユニット情報を予測する(予測処理:S51)。
仮想ユニット合成処理部35は、こうして更新後の注目ユニットに係るユニット情報(複数の育成パラメータであるレベル情報ULvnewやスキルパラメータUSLvnewを含む)を、処理S31で列挙した素材ユニットの組み合わせごとに得て、当該得られた情報を保持する(S52)。
制御部11は、処理S72の推測により、判断基準を、注目ユニットの「レベル情報ULvが上昇するもの」と設定したか、「スキルパラメータUSLvが上昇するもの」と設定したかを判断し(S74)、注目ユニットの「レベル情報ULvが上昇するもの」と設定したときには、処理S52にて保持した情報のうち、「レベル情報ULvnewが最大である」素材ユニットの組み合わせを推奨組み合わせとして選択する(S75)。
また制御部11は、処理S74において、判断基準が注目ユニットの「スキルパラメータUSLvが上昇するもの」と設定されているときには、処理S52にて保持した情報のうち、「スキルパラメータUSLvnewを最大である」素材ユニットの組合せを推奨組み合わせとして選択する(S76)。
制御部11は、選択した素材ユニットの推奨組み合わせを提示するゲーム画面情報を生成して指示端末へ送出する(S77)。このゲーム画面情報に基づく表示を行うことにより、指示端末側では、図11に例示したものと同様の画面が表示される。
指示プレイヤが指示端末において推奨組み合わせを承認し、制御部11が素材ユニットの選択結果を受信すると(S19)、当該受信した選択結果としての仮想ユニットの識別情報で特定される仮想ユニット(推奨組み合わせに含まれる仮想ユニット)を素材ユニットとして合成の処理を行う(合成処理:S20)。
これにより、合成の対象を選択したプレイヤの操作履歴から、当該プレイヤが合成の対象のレベルを上げたいのか、スキルパラメータを上げたいのかを推測し、その推測結果に応じた素材ユニットの組み合わせを提示できる。
またこの場合にゲームサーバ10の制御部11は、プレイヤの端末20に対して推奨組み合わせの案内を行うとともに、その判断基準を明示する情報(「レベル情報を最大とする」との条件で選択した旨を表す情報など)を併せて提供することとしてもよい。
さらに上記の判断基準は、プレイヤが明示的に選択可能となっていてもよい。この場合ゲームサーバ10の制御部11は、判断基準を選択させるゲーム画面情報を生成して指示端末へ送出し、指示端末から判断基準の選択結果を得て、当該選択された判断基準に従い、上記複数の所定の条件のそれぞれにより抽出された推奨組み合わせ候補の少なくとも一つを、推奨組み合わせとして案内する。
またここでは、合成の対象を選択した指示プレイヤの操作履歴から、当該指示プレイヤが合成の対象のレベルを上げたいのか、スキルパラメータを上げたいのかを推測する方法の例として、指示プレイヤと、指示プレイヤ以外のプレイヤの平均との相違を考慮する例について述べたが、本実施の形態はこれだけに限られない。
例えば、プレイの内容により、上昇しやすい育成パラメータが既知である場合は、指示プレイヤの過去のプレイの内容であるプレイスタイルパラメータ(プレイの種類別のプレイ回数の情報)に基づいて、判断基準を設定してもよい。
例えばバトルパートでのゲームを行うとレベル情報ULvが上昇しやすく、クエストパートでのゲームを行うと、スキルパラメータUSLvが上昇しやすいようなゲームであることなど、行うゲームプレイの種類によってどの育成パラメータが上昇しやすいかが既知であれば、制御部11は、プレイヤデータベース122に記録されている指示プレイヤのプレイスタイルパラメータのうち、クエストパートとバトルパートとの各プレイ回数を比較し、バトルパートのプレイ回数が、クエストパートのプレイ回数より多いときには、判断基準を「レベル情報ULvが上昇するもの」と設定し、バトルパートのプレイ回数が、クエストパートのプレイ回数より少ないときには、判断基準を「スキルパラメータUSLvが上昇するもの」と設定することとしてもよい。
また、バトルパートにおける攻撃方法ごとに、どの育成パラメータが上昇しやすいかが既知であれば、制御部11は、プレイヤデータベース122に記録されている指示プレイヤのプレイスタイルパラメータのうち、指示プレイヤが過去に行った攻撃方法ごとの指示回数を参照して比較し、バトルパートでの通常攻撃回数が、スキルによる特殊攻撃回数より多いときには、判断基準を「レベル情報ULvが上昇するもの」と設定し、バトルパートでの通常攻撃回数が、スキルによる特殊攻撃回数より少ないときには、判断基準を「スキルパラメータUSLvが上昇するもの」と設定することとしてもよい。
[変形例3b]
また、本実施の形態における推奨組み合わせを選択するための判断基準は、プレイヤの過去の操作履歴に基づいて選ばれるものに限られない。例えばこの判断基準は、今後のバトルで勝利するために必要なレベル情報やスキルパラメータが達成できるもの、との基準であってもよい。
具体的にこの例のゲームサーバ10の制御部11は、更新処理手段としての仮想ユニット合成処理部35が図20に例示するように、次ゲーム推定処理部51と、勝利基準推定部52と、案内部53とを含む。ここで、次ゲーム推定処理部51と、勝利基準推定部52とは図18に示した処理S72の処理に相当する処理であり、また案内部53は、図18の処理S17以下の処理に相当する。
次ゲーム推定処理部51は、指示プレイヤが次に行うゲームを推定する。具体的な例として、この次ゲーム推定処理部51は、ゲームの運営者が臨時的に開設するゲームパート(イベントパートと呼ぶ)が開設されていれば、指示プレイヤが次に行うゲームはイベントパートのゲームであると推定する。またイベントパートが開設されていなければ、指示プレイヤの指示プレイヤ識別子NPに関連付けてプレイヤデータベース122に保持されている達成したクエストのレベルの情報QLvを参照し、指示プレイヤが次に行うゲームは(QLv+1)の段階のクエストパートのゲームであると推定する。
また次ゲーム推定処理部51は、次のようにして次にプレイヤが行うゲームを推定してもよい。すなわち、バトルパートやクエストパートにおける対戦の相手方が例えばプレイヤのレベル情報Lvに基づいて選択され、対戦に勝利することによりレベル情報Lvが高められる場合、あるプレイヤのレベル情報Lvよりも高いレベル情報Lv′のプレイヤは、現在のプレイヤのこれからの対戦相手に対して勝利したと推定される。そこで、次ゲーム推定処理部51は、指示プレイヤが次に行うゲームが、この指示プレイヤのレベル情報Lvよりも所定の値だけ高いレベル情報Lv′(Lv′>Lv)のプレイヤ(現在のプレイヤのこれからの対戦相手に勝利したと推定されるプレイヤ)が過去に行ったゲームであると推定する。
勝利基準推定部52は、次ゲーム推定処理部51が推定した、指示プレイヤが次に行うゲームの勝利基準(今後の対戦で有効なユニット情報に係るユニット条件)を推定する。具体的に、この勝利基準推定部52は、次ゲーム推定処理部51の推定結果が、イベントパートのゲームであれば、ゲームの運営者がイベントパートについて定めた勝利基準の情報を取得して、当該取得した情報を、勝利基準の推定結果としてもよい。ここで勝利基準の情報は例えばデッキに含まれる仮想ユニットの合計攻撃力の値等、仮想ユニットのユニット情報によって表されてもよい。
またこの勝利基準推定部52は、次ゲーム推定処理部51により、指示プレイヤが次に行うゲームは(QLv+1)の段階のクエストパートのゲームであると推定されたときには、達成したクエストのレベルの情報が(QLv+1)であるプレイヤのプレイヤ識別子Pを、プレイヤデータベース122を参照して見出し、当該検索により見出したプレイヤ識別子P(複数見出された場合はそれぞれ)に関連付けて仮想ユニットデータベース121に格納されているユニット情報Vを参照し、当該ユニット情報に含まれる仮想ユニットの識別情報Uに関連付けられたユニット情報Vのレベル情報ULvやスキルパラメータUSLvの総和を勝利基準として求める。なお、検索により見出したプレイヤ識別子Pが複数ある場合は、各レベル情報ULvやスキルパラメータUSLvの総和の平均値を求めて勝利基準とする。
さらにこの勝利基準推定部52は、次ゲーム推定処理部51により、指示プレイヤが次に行うゲームが、指示プレイヤのレベル情報Lvよりも所定の値だけ高いレベル情報Lv′のプレイヤが過去に行ったゲームであると推定したときには、当該レベル情報Lv′のプレイヤのプレイヤ識別子Pを取得し、当該取得したプレイヤ識別子P(複数見出された場合はそれぞれ)に関連付けて仮想ユニットデータベース121に格納されているユニット情報Vを参照し、当該ユニット情報に含まれる仮想ユニットの識別情報Uに関連付けられたユニット情報Vのレベル情報ULvやスキルパラメータUSLvの総和を勝利基準として求める。なお、検索により見出したプレイヤ識別子Pが複数ある場合は、各レベル情報ULvやスキルパラメータUSLvの総和の平均値を求めて勝利基準とする。
案内部53は、素材ユニットの組み合わせごとの、注目ユニットのユニット情報の更新結果の予測値を得たときに、当該予測値が勝利基準で表されるユニット情報を超えるユニット情報となる素材ユニットの組み合わせがあれば、その素材ユニットの組み合わせを、それぞれ推奨組み合わせ候補とする。制御部11は、これら推奨組み合わせ候補の少なくとも一つを、推奨組み合わせとして案内する。この場合、推奨組み合わせ候補が複数見出された場合には、そのうち合成コストが最も小さくなる素材ユニットの組み合わせを推奨組み合わせとして案内することとしてもよい。
[変形例4]
また以上の説明においては、制御部11が仮想ユニット合成処理部35の処理において案内するものは素材ユニットの組み合わせであったが、合成の対象とする仮想ユニット(注目ユニットとなる仮想ユニット)についても案内を行うようにしてもよい。この例に係る処理は、制御部11により所定のタイミングで実行される。
この所定のタイミングは、例えばプレイヤの直近の対戦成績に基づいて定められてもよい。例えば制御部11は、プレイヤが直近Bn回の対戦においてFn回負けている(ただしFn≧Bn×0.8:この条件では直近の対戦で8割以上負けている)、など直近の対戦成績がプレイヤの意欲を低減させるものであることを表す敗北率条件を満足するタイミングで、対戦に勝つための仮想ユニットの合成を案内することとしてもよい。
また別の例では、プレイヤが対戦において負け続けている(連続して所定数回以上負けている)ことを上記否定的条件として、当該敗北率条件を満足するタイミングで、対戦に勝つための仮想ユニットの合成を案内することとしてもよい。この例では、制御部11は、バトル処理部33としての処理において、指示プレイヤ識別子NPで識別されるプレイヤの勝ちと判断したときに「0」にリセットされ、当該プレイヤの負けと判断したときに「1」ずつ増加(インクリメント)される、連続負け数カウンタを操作履歴の情報として、プレイヤごとのプレイヤ識別子Pに関連付けて記憶しておく。
例えば制御部11は、所定のタイミング(例えばログイン直後や、バトル処理部33の処理が終了した直後など)において、次の図21に例示する処理を行う。すなわち制御部11は、対象となるプレイヤ(ログイン直後であればログインしたプレイヤ、バトル処理部33の処理が終了した直後であれば、対戦における指示を行っていたプレイヤ)のプレイヤ識別子Pに関連付けられた連続負け数カウンタが予め定めたしきい値を超えたか否かを調べ(S91)、当該連続負け数カウンタが予め定めたしきい値を超えていなければ(S91:No)、処理を終了する。
また処理S91において、連続負け数カウンタが予め定めたしきい値を超えていれば(S91:Yes)、プレイヤ識別子Pに関連付けて仮想ユニットデータベース121に格納されている識別情報で特定される仮想ユニットに係る情報(識別情報及びユニット情報)のリストを取得する(S92)。そして当該取得したリストから「合成」できない条件を満足しているユニット情報と、それに関連付けられた仮想ユニットの識別情報とを除き、注目ユニット候補リストを生成する(S93)。
ここで「合成」できない条件は、例えば、レベル情報が所定の値(上限値)に達しているとの条件とすることができる。この所定の値はレアリティの値に応じて予め定めておけばよい。この例では制御部11は、所定の値に達しているレベル情報を含むユニット情報と、それに関連付けられた仮想ユニットの識別情報とをリストから除く処理を行う。
制御部11は、処理S93で得られたリストに含まれる仮想ユニットの識別情報のうち未選択のものを一つ、注目ユニットとして選択する(S94)。また制御部11は、処理S93で得られたリストに含まれる仮想ユニットの識別情報のうち、注目ユニットに係る識別情報と注目ユニットのユニット情報とを除き、さらに注目ユニットに対して合成可能な仮想ユニットに条件がある場合は、当該条件を満足しない仮想ユニットに係る識別情報と、それに関連付けられたユニット情報とを、リストから除いて、素材ユニットの候補のリストを生成する(S95)。
具体的にこの条件には、注目ユニットの種類の情報と同じ種類の情報をユニット情報に含み、かつ、注目ユニットに係るレアリティ情報で示されるレアリティと同じ、またはそれ以下のレアリティに係るレアリティ情報をユニット情報に含む、との条件などとすることができる。さらに、デッキに含まれている仮想ユニットに係る識別情報とユニット情報とについても、このリストから除いておくこととしてもよい。そのほか、指示プレイヤが予め合成素材としない旨設定(いわばロック)している仮想ユニットに係る識別情報とユニット情報とについても、このリストから除くようにしてもよい。
制御部11は、素材ユニットの候補のリストから、合成のために可能な組み合わせを列挙する(S96)。この処理は既に仮想ユニット合成処理部35としての処理において説明したものと同様であるので、繰り返しての説明を省略する。
制御部11は、処理S96にて列挙した組み合わせ、つまり素材ユニットの組み合わせの候補ごとに、当該組み合わせに係る素材ユニットを用いた場合の、注目ユニットの更新後のユニット情報を予測する(予測処理:S97)。具体的に制御部11は、素材ユニットの組み合わせごとに、当該組み合わせが指示プレイヤにより選択されたとした場合の合成の結果を仮に生成する。
制御部11は、こうして更新後の注目ユニットに係る予測レベル情報を素材ユニットの組み合わせごとに得て、当該得られた予測レベル情報をこの時点で注目ユニットとして選択している仮想ユニットの識別情報と、予測処理を行った素材ユニットの組み合わせに係る仮想ユニットの識別情報とに関連付けて記憶部12に保持する(S98)。
制御部11は、処理S93で得たリストに含まれる仮想ユニットの識別情報のうち未選択のものがあるか否かを判断し(S99)、未選択のものがあれば(S99:Yes)、処理S94以下の処理を繰り返す。
制御部11は、処理S99にて未選択のものがなければ(S99:No)、注目ユニットと素材ユニットとの組み合わせごとの予測の結果である予測レベル情報を参照し、この予測の結果が所定の条件を満足する素材ユニットの組み合わせを推奨組み合わせとして案内する(S100)。ここで推奨組み合わせを選択する所定の条件は、例えば「予測レベル情報が最も大きい値である」との条件であってもよいし、対象となるプレイヤのレベル情報Lvよりも高いレベル情報Lv′のプレイヤ(対象となるプレイヤの対戦相手に対して勝利したと推定されるプレイヤ)のレベル情報ULvやスキルパラメータUSLv(対象となるプレイヤのレベル情報Lvよりも高いレベル情報Lv′のプレイヤが複数見出されたときは、これらの平均とすればよい)を超える予測レベル情報である、との条件であってもよい。
後者の条件の場合、自己よりレベル情報の高いプレイヤ(対象となるプレイヤの対戦相手に対して勝利したと推定されるプレイヤ)のレベル情報等と同じレベル情報を達成するために選択するべき注目ユニット(強化等の対象)や、素材ユニットの組み合わせが案内される。
[変形例5]
さらに本実施の形態のゲームサーバ10の制御部11は、新たな仮想ユニットをプレイヤに付与したタイミングで、当該新規に付与した仮想ユニットを合成の対象(注目ユニット)として強化してデッキ内の仮想ユニットと置き換えることでより有利にゲームを進めることができる場合、その旨の案内をプレイヤに対して行ってもよい。
ここで新たな仮想ユニットをプレイヤに付与したタイミングは、仮想ユニット付与処理部34としての動作において(ガチャパートの処理において)、新たな仮想ユニットを付与したタイミングであってもよいし、その他の処理の間に、新たな仮想ユニットをプレイヤに付与したとき(例えばクエストパートでの処理で新たな仮想ユニットを付与したとき)等のタイミングであってもよい。
また、新規に付与した仮想ユニットを合成の対象(注目ユニット)として強化してデッキ内の仮想ユニットと置き換えることでより有利にゲームを進めることができるか否かの判断は、当該注目ユニットを、プレイヤが所持する他の仮想ユニットを素材ユニットとして合成したと仮定して、当該合成後の当該注目ユニットに係るユニット情報に含まれるレベル情報や攻撃力等のユニット情報を得ておき、デッキに含められているいずれかの仮想ユニットのユニット情報に含まれるレベル情報や攻撃力等のユニット情報に比べて当該得られた合成後の注目ユニットの対応するユニット情報が大きいか否かを判断することで行えばよい。
この例に係る制御部11は、図5に例示した構成と同様の機能的構成を実現するが、仮想ユニット合成処理部35における動作が少々異なる。
本実施の形態のこの例に係る仮想ユニット合成処理部35は、既に説明した処理に加え、さらに、次の図22に例示する処理を実行する。なお、以下の処理において図9,図10と同様のステップとなるものについては同じ符号を付して繰り返しての詳細な説明を省略する。
すなわち仮想ユニット合成処理部35は、新たな仮想ユニットがプレイヤに付与されたか否かを判断し(S101)、新たな仮想ユニットがプレイヤに付与されていなければ(S101:No)、処理を終了する。また処理S101において、新たな仮想ユニットがプレイヤに付与されていれば(S101:Yes)、このタイミングで、新たに付与された仮想ユニットを注目ユニットとして(S102)、以下の処理を行う。
仮想ユニット合成処理部35は、合成素材となる仮想ユニット(素材ユニット)を選択する処理を行う。具体的に仮想ユニット合成処理部35は、処理S11で入力された指示プレイヤ識別子NPに関連付けて仮想ユニットデータベース121に格納されている仮想ユニットの識別情報Uと、対応するユニット情報Vとのリストを読み出す。仮想ユニット合成処理部35は、このリストに含まれるユニット情報Vを参照して、処理S16にて注目ユニットとして選択した仮想ユニットの識別情報Uと、それに関連付けられたユニット情報Vとを、このリストから除いて、素材ユニット候補リストを生成する(S17)。
またここで、処理S17で選択した注目ユニットに対する合成素材として利用可能な仮想ユニットに条件がある場合は、当該条件を満足しない仮想ユニットに係る識別情報Uと、それに関連付けられたユニット情報Vとを、素材ユニット候補リストから除く。
さらに、仮想ユニット合成処理部35は、デッキに含まれている仮想ユニットに係る識別情報Uとユニット情報Vとについても、このリストから除いておくこととしてもよい。そのほか、指示プレイヤが予め合成素材としない旨設定(いわばロック)している仮想ユニットに係る識別情報Uとユニット情報Vとについても、この素材ユニット候補リストから除くようにしてもよい。
仮想ユニット合成処理部35は、ここで生成した素材ユニット候補リストが空である場合には、ここで処理を終了する。
そして仮想ユニット合成処理部35は、仮想ユニットの合成案内処理を開始する(S18)。この仮想ユニットの合成案内処理は図10に示した処理と同様のものでよく、仮想ユニット合成処理部35は、素材ユニットの組み合わせごとの予測の結果である予測レベル情報ULvnewを参照し、この予測の結果が所定の条件を満足する素材ユニットの組み合わせを推奨組み合わせとして案内する。
ここで推奨組み合わせを選択する所定の条件は、例えば「予測レベル情報が最も大きい値である」、換言すると、合成することにより注目ユニットのレベルULvが最も上昇するような素材ユニットの組み合わせを選択するとの条件であってもよい。この場合、予測レベル情報ULvnewが最も大きい値となっている素材ユニットの組み合わせを推奨組み合わせとして提示するゲーム画面情報を生成して指示端末へ送出する。
このゲーム画面情報に基づく表示を行うことにより、指示端末側では、図11に例示したゲーム画面が表示される。そしてこの素材ユニットの組み合わせを提示するゲーム画面で、当該組み合わせを指示プレイヤが承認する操作を行ったときに、指示端末が当該組み合わせに係る複数の仮想ユニットの識別情報を選択結果として送出する。
指示プレイヤが指示端末において推奨組み合わせを承認し、仮想ユニット合成処理部35が素材ユニットの選択結果を受信すると(S19)、仮想ユニット合成処理部35は、処理S91にて注目ユニットとして選択した、新たに付与された仮想ユニットのユニット情報のレベルの情報ULvを、選択された素材ユニットに係るユニット情報に基づいて定めるなどして、注目ユニットのユニット情報を更新する(合成処理:S20)。
仮想ユニット合成処理部35は、そして選択された素材ユニットに係る識別情報Uとユニット情報Vとを仮想ユニットデータベース121から削除して(S21)、処理を終了する。
なお、ここでは仮想ユニット合成処理部35は、仮想ユニットの合成案内処理(処理S18)において、推奨組み合わせを選択する所定の条件として、「予測レベル情報が最も大きい値である」、換言すると、合成することにより注目ユニットのレベルULvが最も上昇するような素材ユニットの組み合わせを選択するとの条件と例示したが、本実施の形態はこれに限られず、推奨組み合わせを選択する所定の条件を、デッキに含まれる仮想ユニットに係るユニット情報に基づいて定めてもよい。
例えば、仮想ユニット合成処理部35は、推奨組み合わせを選択する所定の条件を、「デッキに含まれる仮想ユニットに係るユニット情報のうちにこの予測レベル情報を下回るものがある」との条件としてもよい。この例の仮想ユニット合成処理部35は、図23に例示するように、合成案内処理(S18)において、図10の処理S31からS33までの処理を行った後、得られた予測結果に基づいて推奨組み合わせを選択する(S111)。ここでの選択は、図10に例示した処理S34を実行した場合に案内することとなる組み合わせを選択することとすればよい。
そして仮想ユニット合成処理部35は、デッキに含まれる仮想ユニットに係るユニット情報のうち、この推奨組み合わせに係る予測レベル情報を下回るものがあるか否かを判断する(S112)。
ここで、推奨組み合わせに係る予測レベル情報を下回るレベル情報の仮想ユニットがデッキに含まれていれば(S112:Yes)、選択した推奨組み合わせを案内する(S113)。
一方、処理S112において、推奨組み合わせに係る予測レベル情報を下回るレベル情報の仮想ユニットがデッキに含まれていなければ(S112:No)、仮想ユニット合成処理部35は、端末20に対して、デッキ内の仮想ユニットのレベル情報を上昇させることを推奨する表示(「新しいユニットより、デッキ内のユニットを強化したほうがいい」などの表示)を行うよう指示(S114)してもよい。
また、本実施の形態のある例において、デッキ内に所定の仮想ユニットの組み合わせが含まれる場合に、ゲームサーバ10は、例えば対戦のゲームにおいて「連携スキル」として、個々の仮想ユニットのスキルパラメータによる「攻撃」とは異なる攻撃を行う。この例のゲームサーバ10の制御部11は、新たな仮想ユニットをプレイヤに付与したときに当該仮想ユニットをデッキに含めたときに「連携スキル」が発生するか否かを判断してもよい。
この判断は具体的に、当該新たな仮想ユニットとデッキ内の他の仮想ユニットとの組み合わせにおいて「連携スキル」が発生するものとして予め定められているか否かを制御部11が判断することによって行う。
制御部11は、新たな仮想ユニットをプレイヤに付与したときに当該仮想ユニットをデッキに含めたときに「連携スキル」が発生すると判断したときには、その旨を表示するゲーム画面情報を生成し、端末20に対して送出して端末20において、当該画面情報に基づく表示を行わせることとしてもよい。
[変形例6]
さらにここまでの例では、進化合成を行う場合と、強化合成を行う場合とを区別せずに説明していた。従って、進化合成と強化合成とを問わずに、合成したときに、進化合成と強化合成との双方による更新時の予測結果を得ておき、当該予測結果のうちから、最もレベル情報が大きくなるもの等の共通の条件で、推奨組み合わせを選択して案内することとしていた。しかしながら本実施の形態はこれに限られない。
例えば仮想ユニット合成処理部35は、プレイヤから合成の指示を受けるときに、進化合成と強化合成とのどちらを行うかの選択を促すゲームの画面情報を生成して指示端末へ送出し、指示端末から進化合成と強化合成とのどちらを行うかの指示を受けてもよい。
この例では、仮想ユニット合成処理部35は仮想ユニットの合成案内処理において、図10に示した処理と同様の処理を行うが、処理S31において、図9の処理S17にて生成した素材ユニット候補リストに含まれる仮想ユニットの識別情報Uについて、指示された合成(進化合成または強化合成のいずれか)のために可能な組み合わせを列挙する。
また予測処理(処理S32)においても、仮想ユニット合成処理部35は、素材ユニットの組み合わせごとに、当該組み合わせが指示プレイヤにより選択されたとした場合の、指示された合成(進化合成または強化合成のいずれか)の結果(育成パラメータの変化結果等)を仮に生成する。
これにより、指示された進化合成または強化合成のいずれかにおいて、ゲーム上有効な更新となる、合成対象の注目仮想ユニットと、素材ユニットとの組み合わせが案内されることとなる。
またこの場合も、指示された合成だけでなく、指示されていない態様の合成(例えば進化合成が指示された場合は、強化合成が指示されていない態様の合成の例となる)についても、可能な組み合わせを列挙して予測処理を行い、当該予測の結果が所定の条件を満足する素材ユニットの組み合わせを、指示されていない態様の合成での推奨組み合わせとして得てもよい。
そして制御部11は、指示された態様の合成での推奨組み合わせと、指示されていない態様の合成での推奨組み合わせとのそれぞれの予測結果を比較し、例えば指示された態様での合成での推奨組み合わせに係る予測結果よりも、指示されていない態様での合成での推奨組み合わせに係る予測結果がよりゲームにおいて有効な更新となると判断される場合に、その旨を報知してもよい。
例えば、進化合成が指示されたときに、進化合成をした場合の予測の結果、得られた推奨組み合わせでの注目ユニットの更新後の攻撃力がAT1であるとする。このとき制御部11は、進化合成とは異なる態様の合成である強化合成をした場合の予測の結果を得て、当該強化合成の場合の予測結果に基づいて得られた推奨組み合わせでの注目ユニットの更新後の攻撃力がAT1より大きいAT2であるときには、進化合成を行おうとするプレイヤに対して、強化合成により、攻撃力をより高めることができる旨を案内する。
[ゲームシステムの別の構成方法の例]
また本実施の形態のここまでの説明では、ゲームサーバ10の制御部11が図5に例示した各機能的構成等を実現するものとしたが、本実施の形態はこれに限られず、端末20において、これまでに説明した制御部11の各機能的構成の少なくとも一部の機能的構成を実現する動作を行ってもよい。この場合端末20は、動作に必要な情報をゲームサーバ10に対して要求し、ゲームサーバ10がその要求に応答して種々の情報を端末20に提供するようにしておく。
[実施形態の効果等]
以上の通り、本発明の実施の形態によれば、プレイヤに有利な合成素材を推奨することができ、操作性を向上できる。