以下、図面を参照しつつ、本発明の様々な実施形態について説明する。ただし、本発明の技術的範囲はそれらの実施形態に限定されず、特許請求の範囲に記載された発明とその均等物に及ぶ点に留意されたい。
1.本実施形態の概略
本実施形態のゲームシステムでは、プレイヤは、サーバが提供するゲームを携帯端末を用いて実施する。サーバが提供するゲームは、プレイヤキャラクタと対戦相手キャラクタとのバトル(対戦)である。プレイヤキャラクタは、プレイヤが所持するゲーム媒体であり、対戦相手キャラクタである敵キャラクタは、ノンプレイヤキャラクタ又は他のプレイヤが所持するゲーム媒体である。ゲーム媒体とは、ゲームに使用される電子データであり、例えば、カード、アイテム、キャラクタ及びアバタ等を含む。また、ゲーム媒体は、ゲームの進行に応じ、プレイヤによって、ゲーム内で、取得、保有、使用、管理、交換、合成、強化、売却、廃棄、及び/又は贈与等され得る電子データであるが、ゲーム媒体の利用態様は本明細書で明示されるものには限られない。
本実施形態では、予めゲームシステムに登録されたカードをゲーム媒体の例として説明する。バトルに用いられるプレイヤキャラクタ又は敵キャラクタのカードは、バトル用パラメータを有している。バトル用パラメータは、例えば、攻撃力、防御力、体力(又はHP(ヒットポイント))、属性(例えば、火、水、雷等)、レア度(例えば、ノーマル、レア、S(スーパー)レア、SS(ダブルスーパー)レア、SSS(トリプルスーパー)レア、レジェンド等)、スキル(特殊効果)の発動率、攻撃速度(一ターンにおける攻撃回数、攻撃するまでのターン数等)、一対戦における防御回数等のパラメータ及び/又はジョブ(例えば、職業、兵種等)である。
このバトルゲームにおいて、敵キャラクタは、複数の感情状態を有する。感情状態は、敵キャラクタが持つ感情、気持ち、心理等がどのような状態であるかを示し、感情状態には、例えば「怒る」、「食欲全開」、「激怒」、「わくわく」、「悔しい」、「眠い」、「パニック」、「大喜び」、「グロッキー」、「魅了」、「茫然」、「怯える」等が含まれる。各感情状態は、敵キャラクタのバトル用パラメータを変更するための変更パラメータと関連付けて記憶される。敵キャラクタが攻撃を受けたり、特定のレシピを用いて食材を調理することにより生成される料理をプレイヤキャラクタ又は敵キャラクタが食べることにより、敵キャラクタの感情状態が変化し、感情状態の変化に応じて敵キャラクタのバトル用パラメータが変化する。これにより、バトルゲームにおいて、バトルの多様性が向上し、プレイヤのゲームへの継続意欲を維持させることが可能となる。
2.ゲームシステム1の構成
図1は、ゲームシステム1の概略構成の一例を示す図である。
ゲームシステム1は、少なくとも一台の携帯端末2と、サーバ3とを備える。携帯端末2とサーバ3とは、通信ネットワークを介して相互に接続され、例えば、基地局4、移動体通信網5、ゲートウェイ6、及びインターネット7を介して相互に接続される。携帯端末2で実行されるプログラム(例えば、閲覧プログラム)と、サーバ3で実行されるプログラム(例えば、ゲームプログラム)とは、ハイパーテキスト転送プロトコル(Hypertext Transfer Protocol, HTTP)等の通信プロトコルを用いて通信を行う。
2.1.携帯端末2の構成
図2は、携帯端末2の概略構成の一例を示す図である。
携帯端末2は、基地局4、移動体通信網5、ゲートウェイ6、及びインターネット7を介してサーバ3に接続し、サーバ3と通信を行う。携帯端末2は、プレイヤによる操作部23(ボタン等)の操作に応じて、ゲームの進行をサーバ3に要求する。また、携帯端末2は、サーバ3からゲームの進行に係る表示データを受信して表示する。そのために、携帯端末2は、端末通信部21と、端末記憶部22と、操作部23と、表示部24と、端末処理部25とを備える。
なお、本実施形態では、携帯端末2として、多機能携帯電話(いわゆる「スマートフォン」)を想定するが、本発明はこれに限定されるものではない。携帯端末2は、本発明が適用可能であればよく、例えば、携帯電話(いわゆる「フィーチャーフォン」)、携帯情報端末(Personal Digital Assistant, PDA)、携帯ゲーム機、携帯音楽プレイヤ、タブレット端末、タブレットPC、ノートPC等でもよい。
端末通信部21は、所定の周波数帯を感受帯域とするアンテナを含む、通信インターフェース回路を備え、携帯端末2を無線通信ネットワークに接続する。端末通信部21は、基地局4により割り当てられるチャネルを介して、基地局4との間でCDMA(Code Division Multiple Access)方式等による無線信号回線を確立し、基地局4との間で通信を行う。そして、端末通信部21は、端末処理部25から供給されたデータをサーバ3等に送信する。また、端末通信部21は、サーバ3等から受信したデータを端末処理部25に供給する。なお、端末通信部21は、不図示のWifi(Wireless Fidelity)のアクセスポイントとの間でIEEE802.11規格の無線通信方式による無線通信を行うものでもよい。
端末記憶部22は、例えば、半導体メモリ装置を備える。端末記憶部22は、端末処理部25での処理に用いられるオペレーティングシステムプログラム、ドライバプログラム、アプリケーションプログラム、データ等を記憶する。例えば、端末記憶部22は、ドライバプログラムとして、操作部23を制御する入力デバイスドライバプログラム、表示部24を制御する出力デバイスドライバプログラム等を記憶する。また、端末記憶部22は、アプリケーションプログラムとして、ゲームの進行に係る表示データの取得及び表示を行うプログラム等を記憶する。コンピュータプログラムは、例えばCD−ROM(compact disk read only memory)、DVD−ROM(digital versatile disk read only memory)等のコンピュータ読み取り可能な可搬型記録媒体から、公知のセットアッププログラム等を用いて端末記憶部22にインストールされてもよい。また、端末記憶部22は、データとして、携帯端末2のユーザの識別情報であるプレイヤID、ゲームの進行に係る表示データ、映像データ、画像データ等を記憶する。さらに、端末記憶部22は、所定の処理に係る一時的なデータを一時的に記憶してもよい。
操作部23は、携帯端末2の操作が可能であればどのようなデバイスでもよく、例えば、タッチパネル、キーボタン等である。プレイヤは、操作部23を用いて、文字、数字、記号等を入力することができる。操作部23は、プレイヤにより操作されると、その操作に対応する信号を発生する。そして、発生した信号は、プレイヤの指示として、端末処理部25に供給される。
表示部24も、映像や画像等の表示が可能であればどのようなデバイスでもよく、例えば、液晶ディスプレイや有機EL(Electro−Luminescence)ディスプレイ等である。表示部24は、端末処理部25から供給された映像データに応じた映像や、画像データに応じた画像等を表示する。
端末処理部25は、一又は複数個のプロセッサ及びその周辺回路を備える。端末処理部25は、携帯端末2の全体的な動作を統括的に制御するものであり、例えば、CPU(Central Processing Unit)である。端末処理部25は、携帯端末2の各種処理が端末記憶部22に記憶されているプログラム、操作部23の操作等に基づいて適切な手順で実行されるように、端末通信部21、表示部24等の動作を制御する。端末処理部25は、端末記憶部22に記憶されているプログラム(オペレーティングシステムプログラム、ドライバプログラム、アプリケーションプログラム等)に基づいて処理を実行する。また、端末処理部25は、複数のプログラム(アプリケーションプログラム等)を並列に実行することができる。
端末処理部25は、ゲームの進行に係る表示データの取得及び表示を行う。即ち、端末処理部25は、プレイヤからの指示に応じて、ゲームの進行に係る表示データの取得要求を端末通信部21を介してサーバ3に送信する。また、端末処理部25は、対応する表示データを端末通信部21を介してサーバ3から受信する。端末処理部25は、受信した表示データに基づいて描画データを作成する。即ち、端末処理部25は、受信した表示データを解析して制御データ及び内容データを特定し、特定した制御データに基づいて同じく特定した内容データをレイアウトし、描画データを作成する。そして、端末処理部25は、作成した描画データを表示部24に出力する。また、端末処理部25は、サーバ3との通信接続が確立されている間、表示データに含まれる各情報を端末記憶部22に記憶する。
2.1.1.端末処理部25の機能
図3(a)〜(d)、図4は、サーバ3により作成される表示データに基づく携帯端末2の表示画面の一例を示す図である。
図3(a)には、ゲームを開始したときに表示されるホーム画面300が示される。ホーム画面300は、サーバ3から受信したホーム画面表示データに基づいて表示される。ホーム画面300には、複数のボタンが一覧表示される。「探検にいく」ボタン301のタップによりクエストの開始が端末通信部21を介してサーバ3に要求される。一方、「設定」ボタン302のタップにより、各種の設定を行うための画面の表示データの取得が端末通信部21を介してサーバ3に要求される。また、「ショップ」ボタン303のタップにより、回復アイテム等を購入するための画面の表示データの取得が端末通信部21を介してサーバ3に要求される。
図3(b)には、図3(a)に示されるホーム画面300でクエストの開始が要求されたときに表示されるクエスト画面310が示される。クエスト画面310には、プレイヤキャラクタ311が移動するゲーム空間であるマップ312が表示される。マップ312には、プレイヤキャラクタ311が移動するための複数の道313、及び複数の道313が交わる分岐点314が配置される。また、クエスト画面310には、プレイヤキャラクタ311が進行可能な方向を示す矢印315が表示される。プレイヤは、表示された矢印315の内の何れか一つを指定することによりプレイヤキャラクタ311を移動させることができる。
また、道313上には、宝箱等のアイテム316、又は敵キャラクタ317等が配置される。プレイヤキャラクタ311がアイテム316上を通過すると、プレイヤはアイテム316を取得することができる。また、プレイヤキャラクタ311が敵キャラクタ317と遭遇すると、敵キャラクタ317とのバトルが実行される。
アイテム316は、プレイヤキャラクタ351又は敵キャラクタ341に対して使用される所定のアイテムを生成するためのアイテムであり、例えば食材、レシピ等である。プレイヤは、取得したレシピを用いて、取得した食材を調理することにより、所定のアイテムとして料理を生成することができる。食材は、例えば肉、魚、野菜等であり、料理は、例えば焼き肉、煮魚、サラダ等である。レシピには、調理する食材と生成される料理の組合せが示される。なお、料理は、複数の食材を組み合わせることにより生成されてもよい。プレイヤは、例えば、肉の食材と野菜の食材を組み合わせることにより野菜炒めの料理を生成することができる。その場合、レシピには、調理する食材として肉及び野菜が指定され、生成される料理として肉野菜炒めが指定される。
また、クエスト画面310には、プレイヤキャラクタ311の最大のHP及び現在のHPを表すゲージ318と、アイテムの所持可能量及び現在の所持量を表すゲージ319と、プレイヤキャラクタ311の満腹度320とが表示される。アイテムの所持可能量及び現在の所持量は、重さにより定められ、プレイヤキャラクタ311がダンジョンで所持できるアイテムの重さが制限される。満腹度320は、プレイヤキャラクタが食べている料理の量の度合いである。このゲームでは、プレイヤキャラクタ311は、満腹度320が100%になるまで料理を食べることができ、食べた料理に応じてレベルを上昇させること又は特殊効果を備えることが可能となる。また、満腹度320が0%になるとプレイヤキャラクタ311が移動するたびにプレイヤキャラクタ311のHPが減少していく。
または、プレイヤキャラクタ311が移動するたびに満腹度320が減少していき、満腹度320が0%になると、プレイヤキャラクタ311は移動できないようにしてもよい。その場合、プレイヤキャラクタ311が料理を食べることにより、満腹度320を回復させることができる。この料理は、前述したように、レシピを用いて、一つ又は複数の食材を調理することにより生成することができる。
また、クエスト画面310には、コンパス321が表示される。コンパス321は、マップ内で、プレイヤキャラクタ311の現在位置から料理を生成するためのレシピ、食材等のアイテム316が配置された位置への方向を示す矢印、又はプレイヤキャラクタ311の現在位置から敵キャラクタ317が配置された位置への方向を示す矢印の内の何れかを表示する。コンパス321に表示される矢印は、プレイヤによるタップ操作に従って切り替えられる。
クエスト画面310は、サーバ3から受信したクエスト画面表示データに基づいて表示される。なお、クエスト画面表示データには、プレイヤキャラクタ311の名前、画像、現在位置、HP、満腹度及びバトルに使用する使用カード、その使用カードのバトル用パラメータ等を示す各情報が含まれる。バトル用パラメータには、HP、攻撃力、防御力、攻撃速度及び属性等が含まれる。また、クエスト画面表示データには、敵キャラクタ317の名前、画像、配置位置、バトル用パラメータ、好物料理、苦手料理及び感情状態の組合せ、その組合せに含まれる各感情状態に関連付けられた変更パラメータ、及び各感情状態の遷移条件等を示す各情報が含まれる。変更パラメータは、敵キャラクタのバトル用パラメータを変更するためのパラメータである。遷移条件は、各感情状態が、どのような場合にどのように遷移するかを示す条件である。また、クエスト画面表示データには、アイテム316の名前、画像、配置位置、重さ等を示す各情報が含まれる。アイテム316がレシピである場合、そのレシピにより、どの食材を用いてどの料理を生成するかを示す調理パターンがさらに含まれる。これらの情報は、サーバ3との通信接続が確立されている間、端末記憶部22に記憶される。
図3(c)には、図3(b)に示されるクエスト画面310でプレイヤキャラクタ311が敵キャラクタ317と遭遇したときに表示されるバトル画面340が示される。バトル画面340は、サーバ3から受信したバトル画面表示データに基づいて表示される。バトル画面340には、敵キャラクタ341と、敵キャラクタ341の現在の感情状態を表す画像342及び文字343と、バトル用パラメータ344とが表示される。このゲームでは、敵キャラクタの感情状態に応じて敵キャラクタのバトル用パラメータが変化する。また、敵キャラクタの感情状態は、敵キャラクタが攻撃を受けて敵キャラクタのHPが減少したり、プレイヤキャラクタ又は敵キャラクタが料理を食べることにより変化する。
また、バトル画面340には、敵キャラクタ341の現在のHP及び最大のHPを表すゲージ345が表示される。このゲームでは、敵キャラクタ毎に、敵キャラクタのHPの減少に応じて変化する感情状態の組合せが予め設定されている。ゲージ345は、敵キャラクタの現在のHPを表示するとともに、敵キャラクタのHPと各感情状態346〜348との関係を表示する。
バトル画面340に示す例では、HPが90%以上である場合の感情状態346は「怒る」になり、HPが90%未満且つ30%以上である場合の感情状態347は「怯える」になり、HPが30%未満である場合の感情状態348は「パニック」になる。現在のHPは100%であるため、画像342及び文字343に表示されるように、現在の感情状態は「怒る」になっている。なお、この例では、敵キャラクタ341のバトル用パラメータの攻撃力が100に設定され、防御力が100に設定され、攻撃速度が20に設定されているものとする。バトル用パラメータ344に示されるように、現在の感情状態である「怒る」に関連付けられた変更パラメータに基づいて、攻撃力は110に変更され、防御力は95に変更され、攻撃速度は21に変更される。
また、バトル画面340には、敵キャラクタに与えたダメージに応じてプレイヤが取得できるアイテム349が表示される。各アイテム349は、例えば敵キャラクタから取得できる食材であり、それぞれ敵キャラクタの残りHPに対応しており、ゲージ345に対応して表示される。このゲームでは、プレイヤキャラクタが敵キャラクタに攻撃し、敵キャラクタのHPが減少した場合に、減少した範囲のHPに対応する全てのアイテムではなく、現在のHPに対応する1つのアイテムのみがプレイヤに付与される。したがって、プレイヤは、多くのアイテムを取得するためには、敵キャラクタに1度に与えるダメージを少なくし、敵キャラクタのHPを少しずつ減少する必要がある。一方、敵キャラクタに1度に与えるダメージを少なくすると、バトルのターン数が多くなるため、敵キャラクタから攻撃を受ける回数が多くなり、敵キャラクタから受けるダメージが多くなる。プレイヤは、アイテムを取得することを優先するか、ダメージを受けないことを優先するかを選択することになり、バトルゲームにおける戦略性が高まるため、ゲームの趣向性を向上させることが可能となる。
また、バトル画面340には、敵キャラクタ341が次に攻撃を行うまでのターン数を表す文字350、プレイヤキャラクタ351、プレイヤキャラクタ351の現在のHP及び最大のHPを表すゲージ352及びプレイヤキャラクタ351の満腹度353が表示される。さらに、バトル画面340には、敵キャラクタ341に対して攻撃を行うための攻撃ボタン354、プレイヤキャラクタ351又は敵キャラクタ341に対して、料理等のアイテムを使用するためのアイテムボタン355が表示される。
図3(d)には、図3(c)に示されるバトル画面340でプレイヤにより攻撃ボタン354がタップされたときに表示されるバトル画面360が示される。バトル画面360では、プレイヤキャラクタ351から攻撃を受けた敵キャラクタ341のHPは減少し、画像362、文字363及びゲージ365に表示されるように、現在の感情状態は「怯える」に変化している。また、バトル用パラメータ364に示されるように、現在の感情状態である「怯える」に関連付けられた変更パラメータに基づいて、攻撃力は95に変更され、防御力は110に変更され、攻撃速度は19に変更される。
図4には、図3(c)に示されるバトル画面340でプレイヤによりアイテムボタン355がタップされたときに表示されるアイテム画面400が示される。アイテム画面400には、使用可能なアイテム毎に、そのアイテムの画像401、アイテム名402、そのアイテムを選択するための選択ボタン403が表示される。なお、図3(b)で説明したように、このゲームでは、プレイヤキャラクタ351又は敵キャラクタ341に対して使用される所定のアイテムは、プレイヤが所有する料理である。料理は、不図示の調理画面により、クエスト画面310等で取得したレシピを用いて、クエスト画面310等で取得した食材を調理することにより生成される。また、このゲームでは、各アイテムが、プレイヤキャラクタ351に対して用いられるアイテムであるか、又は敵キャラクタ341に対して用いられるアイテムであるかが予め定められており、選択されたアイテムは予め定められたキャラクタに対して用いられる。
アイテム画面400は、サーバ3から受信したアイテム画面表示データに基づいて表示される。アイテム画面表示データには、プレイヤが所有する各アイテムの名前、画像及び使用対象(プレイヤキャラクタ又は敵キャラクタ)等を示す各情報が含まれる。
図5は、アイテムの使用と、敵キャラクタの感情状態の遷移の関係について説明するための模式図である。
図5に示すように、敵キャラクタの感情状態には、「怒る」、「食欲全開」、「激怒」、「わくわく」、「悔しい」、「眠い」、「パニック」、「大喜び」、「グロッキー」、「魅了」、「茫然」、「怯える」等が含まれる。図5に示す模式図の横軸はプレイヤキャラクタに対してアイテムを使用した場合に遷移する感情状態の方向を示す。感情状態は、敵キャラクタの好物料理をプレイヤキャラクタに対して使用した(プレイヤキャラクタが食べた)場合は現在の感情状態より左側に遷移し、敵キャラクタの苦手料理をプレイヤキャラクタに対して使用した場合は現在の感情状態より右側に遷移する。また、図5に示す模式図の縦軸は敵キャラクタに対してアイテムを使用した場合に遷移する感情状態の方向を示す。感情状態は、敵キャラクタの好物料理を敵キャラクタに対して使用した(敵キャラクタが食べた)場合は現在の感情状態より上側に遷移し、敵キャラクタの苦手料理を敵キャラクタに対して使用した場合は現在の感情状態より下側に遷移する。
つまり、プレイヤキャラクタが敵キャラクタの好物料理を食べた場合、敵キャラクタは、好物料理を与えてくれないプレイヤキャラクタに対して怒り、感情状態は「怒る」方向に遷移する。逆に、プレイヤキャラクタが敵キャラクタの苦手料理を食べた場合、敵キャラクタは、苦手料理を食べることができるプレイヤキャラクタを恐れて、感情状態は「怯える」方向に遷移する。また、敵キャラクタは、好物料理を食べた場合、満足して眠くなり、感情状態は「眠い」方向に遷移する。逆に、敵キャラクタは、苦手料理を食べた場合、混乱し、感情状態は「パニック」の方向に遷移する。
また、プレイヤキャラクタ又は敵キャラクタが好物料理を食べた場合、敵キャラクタは、好物料理を与えてもらうことを期待して、感情状態は「わくわく」の方向に遷移し、さらに「食欲全開」に遷移する。また、プレイヤキャラクタが好物料理を食べた場合、又は敵キャラクタが苦手料理を食べた場合、敵キャラクタの感情状態は「悔しい」の方向に遷移し、さらに「激怒」に遷移する。また、プレイヤキャラクタ又は敵キャラクタが苦手料理を食べた場合、敵キャラクタは気持ち悪くなり、感情状態は「グロッキー」の方向に遷移し、さらに「茫然」に遷移する。また、プレイヤキャラクタが苦手料理を食べた場合、又は敵キャラクタが好物料理を食べた場合、敵キャラクタは嬉しくなり、敵キャラクタの感情状態は「大喜び」の方向に遷移し、さらに「魅了」に遷移する。
なお、本実施形態では、プレイヤキャラクタ又は敵キャラクタに対してアイテムを使用した場合、現在の感情状態のみが上記のように遷移するが、敵キャラクタの感情状態の組合せに含まれる複数の感情状態が同時に同じ方向に遷移するようにしてもよい。
また、図5に示すように、各感情状態は、それぞれ攻撃力、防御力、攻撃速度等の敵キャラクタのバトル用パラメータを変更するための変更パラメータと関連付けられる。例えば、感情状態が「怒る」、「激怒」、「パニック」、「悔しい」等の場合、攻撃力及び/又は攻撃速度が増大し、防御力が低下するように変更パラメータが設定される。また、感情状態が「眠い」、「怯える」、「茫然」、「グロッキー」等の場合、攻撃力及び/又は攻撃速度が低下し、防御力が増大するように変更パラメータが設定される。また、感情状態が「食欲全開」、「わくわく」等の場合、攻撃力、防御力及び/又は攻撃速度が増大するように変更パラメータが設定される。また、感情状態が「魅了」、「大喜び」等の場合、攻撃力、防御力及び/又は攻撃速度が低下するように変更パラメータが設定される。
これにより、プレイヤは、戦略に応じて敵キャラクタのバトル用パラメータを適宜変更することが可能になる。また、敵キャラクタの好物料理を用いて挑発することによりピンチになったり、敵キャラクタを魅了してチャンスになったりすることも可能となり、バトルの多様性を高めることができる。
なお、敵キャラクタ毎に、各変更パラメータを補正する補正値(例えば+5%〜−5%)を設定しておき、各変更パラメータは、敵キャラクタ毎にさらに補正されてもよい。これにより、バトルの多様性をより高めることができる。また、ゲームの難易度を容易に調整することも可能となる。
2.1.1.端末処理部25の構成
端末処理部25は、端末制御部251と、端末ゲーム進行部252と、端末バトル実行部253と、端末バトル用パラメータ変更部254と、端末感情状態変更部255とを有する。これらの各部は、端末処理部25が備えるプロセッサで実行されるプログラムにより実現される機能モジュールである。あるいは、これらの各部は、ファームウェアとして携帯端末2に実装されてもよい。
以下、端末制御部251による処理について説明する。
端末制御部251は、ユーザによる操作部23を用いた操作に従って、ゲームを開始するためのゲーム開始要求を端末通信部21を介してサーバ3に送信する。ゲーム開始要求には、プレイヤID及びパスワードが含まれる。端末制御部251は、サーバ3から端末通信部21を介してホーム画面表示データを受信した場合、ホーム画面表示データに基づいて、ホーム画面を表示部24に表示する。
端末制御部251は、その後、ユーザによる操作部23を用いた操作を受け付けた場合、受け付けた操作に応じた指示を端末ゲーム進行部252に渡し、ゲーム処理の実行を指示する。また、端末制御部251は、端末ゲーム進行部252から受け取ったゲーム進行要求を端末通信部21を介してサーバ3に送信する。ゲーム進行要求には、プレイヤID及び要求種別が含まれる。
要求種別には、クエスト開始要求、アイテム取得通知、バトル開始通知、移動結果通知、バトル結果通知、アイテム使用要求、アイテム使用通知等のうちの何れかが指定される。
なお、図3(a)のホーム画面300の「冒険にいく」ボタン301がタップされた場合、要求種別はクエスト開始要求となる。また、図3(b)のクエスト画面310においてプレイヤキャラクタ311がアイテム316を通過した場合、要求種別はアイテム取得通知となり、ゲーム進行要求には、それまでにプレイヤが選択した矢印315の組合せを示す移動情報がさらに含まれる。なお、移動情報は、未送信の情報のみを含み、サーバ3に送信された情報は、以後、重複して送信されない。また、クエスト画面310においてプレイヤキャラクタ311が敵キャラクタ317と遭遇した場合、要求種別はバトル開始通知となり、ゲーム進行要求には移動情報がさらに含まれる。また、クエスト画面310においてプレイヤキャラクタの移動カウンタが所定回数になった場合、要求種別は移動結果通知となり、ゲーム進行要求には移動情報がさらに含まれる。移動カウンタの詳細については後述する。
また、図3(c)、(d)のバトル画面340、360においてバトルが終了した場合、要求種別はバトル結果通知となり、ゲーム進行要求にはバトルの結果、バトル処理において用いられた乱数の種等がさらに含まれる。また、図4のアイテム画面400においてアイテムが選択された場合、要求種別はアイテム使用通知となり、ゲーム進行要求には選択されたアイテムのアイテムID、アイテム処理において用いられた乱数の種等がさらに含まれる。
また、端末制御部251は、サーバ3から端末通信部21を介して受け取った各画面の表示データを端末ゲーム進行部252に渡す。
以下、端末ゲーム進行部252による処理について説明する。
端末ゲーム進行部252は、端末制御部251によりゲーム処理の実行を指示されると、ゲーム処理を実行するとともに、端末制御部251から受け取った各表示データに基づいて、各画面を表示部24に表示する。また、端末ゲーム進行部252は、適宜端末バトル実行部253にバトル処理又はアイテム処理の実行を指示する。
端末ゲーム進行部252は、ゲーム処理において、端末制御部251から受け取ったユーザによる指示を特定する。
端末ゲーム進行部252は、特定した指示が、図3(a)のホーム画面300の「冒険にいく」ボタン301のタップによるクエスト開始指示である場合、クエスト開始要求を含むゲーム進行要求を端末制御部251に渡す。
端末ゲーム進行部252は、特定した指示が、図3(b)のクエスト画面310の矢印315のタップによる移動指示である場合、タップされた矢印315に応じてプレイヤキャラクタ311を移動させ、移動カウンタをインクリメント(+1)する。端末ゲーム進行部252は、プレイヤキャラクタ311を移動させた結果、プレイヤキャラクタ311がアイテム316を通過した場合、アイテム取得通知及び移動情報を含むゲーム進行要求を端末制御部251に渡す。一方、端末ゲーム進行部252は、プレイヤキャラクタ311を移動させた結果、プレイヤキャラクタ311が敵キャラクタ317と遭遇した場合、バトル開始通知及び移動情報を含むゲーム進行要求を端末制御部251に渡す。一方、端末ゲーム進行部252は、プレイヤキャラクタ311を移動させた結果、プレイヤキャラクタ311の移動カウンタが所定回数(例えば3回)を超えた場合、移動カウンタをクリアするとともに、移動結果通知、移動情報及び現在位置を含むゲーム進行要求を端末制御部251に渡す。
このように、端末ゲーム進行部252は、クエスト画面310においてプレイヤキャラクタを移動させるたびに、サーバ3に移動した旨を通知するのではなく、プレイヤキャラクタを所定回数だけ移動させるたびに、サーバ3に移動した旨を通知する。これにより、携帯端末2及びサーバ3は通信量を抑制することができる。
端末ゲーム進行部252は、特定した指示が、図3(c)、(d)のバトル画面340、360の攻撃ボタン354のタップによる攻撃指示である場合、バトル処理の実行を端末バトル実行部253に指示する。端末ゲーム進行部252は、バトル処理によりバトルが終了した場合、バトル結果通知、バトルの結果及び使用した乱数の種等を含むゲーム進行要求を端末制御部251に渡す。
端末ゲーム進行部252は、特定した指示が、図3(c)、(d)のバトル画面340、360のアイテムボタン355のタップによるアイテム使用指示である場合、アイテム使用要求を含むゲーム進行要求を端末制御部251に渡す。
端末ゲーム進行部252は、特定した指示が、図4のアイテム画面400の選択ボタン403のタップによるアイテム選択指示である場合、端末バトル実行部253にアイテム処理の実行を指示する。端末ゲーム進行部252は、アイテム処理が実行された場合、アイテム使用通知、使用した料理の料理ID及び乱数の種等を含むゲーム進行要求を端末制御部251に渡し、サーバ3への送信を指示する。
以下、端末バトル実行部253による処理について説明する。
端末バトル実行部253は、端末ゲーム進行部252によりバトル処理の実行が指示された場合、敵キャラクタのバトル用パラメータの変更を端末バトル用パラメータ変更部254に指示する。次に、端末バトル実行部253は、端末バトル用パラメータ変更部254により変更されたバトル用パラメータを用いてバトルを実行する。
端末バトル実行部253は、クエスト画面表示データに含まれるプレイヤの使用カードのバトル用パラメータと、端末バトル用パラメータ変更部254により変更された敵キャラクタのバトル用パラメータを用いてバトルを実行する。バトルは、プレイヤの攻撃ターンをプレイヤキャラクタ及び敵キャラクタの攻撃速度に基づいた所定数だけ連続して行った後、敵キャラクタの攻撃ターンを行うことを繰り返すことにより行われる。端末バトル実行部253は、所定の乱数の種を用いてランダムに決定した所定範囲(例えば95%〜105%)のランダム係数をプレイヤキャラクタの攻撃力に乗じた値と、同様にして決定したランダム係数を敵キャラクタの防御力に乗じた値とに基づいて敵キャラクタに与えるダメージ量を決定し、決定したダメージ量を敵キャラクタのHPから減算する。そして、端末バトル実行部253は、敵キャラクタのHPが0になった場合、プレイヤが勝利したと判定し、0にならなかった場合、次のターンへ移行する。
一方、端末バトル実行部253は、敵キャラクタの攻撃ターンでは、ランダム係数を敵キャラクタの攻撃力に乗じた値及びランダム係数をプレイヤキャラクタの防御力に乗じた値に基づいてプレイヤキャラクタに与えるダメージ量を決定し、決定したダメージ量をプレイヤキャラクタのHPから減算する。そして、端末バトル実行部253は、プレイヤキャラクタのHPが先に0になった場合、プレイヤが敗北したと判定し、0にならなかった場合、次のターンへ移行する。
端末バトル実行部253は、プレイヤの攻撃ターンが終わると、敵キャラクタの体力の減少に応じた、敵キャラクタの現在の感情状態の変更を端末感情状態変更部255に指示する。
また、端末バトル実行部253は、端末ゲーム進行部252によりアイテム処理の実行が指示された場合、アイテム画面表示データに含まれる使用対象を示す情報に基づいて、プレイヤにより指定されたアイテムの使用対象を特定し、特定した使用対象に対してアイテムを使用する。次に、端末バトル実行部253は、アイテムの使用に応じた、敵キャラクタの現在の感情状態の変更を端末感情状態変更部255に指示する。
以下、端末バトル用パラメータ変更部254による処理について説明する。
端末バトル用パラメータ変更部254は、端末バトル実行部253により敵キャラクタのバトル用パラメータの変更を指示された場合、クエスト画面表示データに含まれる、敵キャラクタのHP及び感情状態の組合せから、敵キャラクタの現在の感情状態を特定する。次に、端末バトル用パラメータ変更部254は、特定した現在の感情状態に関連付けられた変更パラメータを特定する。次に、端末バトル用パラメータ変更部254は、特定した変更パラメータに基づいて、敵キャラクタのバトル用パラメータを変更する。
以下、端末感情状態変更部255による処理について説明する。
端末感情状態変更部255は、端末バトル実行部253により敵キャラクタの体力の減少に応じた敵キャラクタの現在の感情状態の変更を指示された場合、クエスト画面表示データに含まれる、敵キャラクタの感情状態の組合せのうち、端末バトル実行部253により減算されたHPに対応する感情状態を特定する。次に、端末感情状態変更部255は、特定した感情状態が、現在の感情状態と同じであるか否かを判定し、同じでない場合、現在の感情状態を、特定した感情状態に変更する。
また、端末感情状態変更部255は、端末バトル実行部253によりアイテムの使用に応じた敵キャラクタの現在の感情状態の変更を指示された場合、クエスト画面表示データに含まれる遷移条件に基づいて、感情状態を変更する。端末感情状態変更部255は、所定の確率に基づいて、所定の乱数の種を用いて、感情状態を変更するか否かを決定する。端末感情状態変更部255は、感情状態を変更することに決定した場合、使用したアイテムが敵キャラクタの好物料理であるか苦手料理であるかと、使用した対象がプレイヤキャラクタであるか敵キャラクタであるかと、クエスト画面表示データに含まれる遷移条件とに基づいて、変更する感情状態を特定し、現在の感情状態を特定した感情状態に変更する。
なお、端末感情状態変更部255は、感情状態を変更する確率を、ゲームの進行状況(例えばプレイヤの現在位置に対応するダンジョン及びフロアのレベル)、プレイヤキャラクタ又は敵キャラクタのレベル等に応じて変更してもよい。その場合、端末感情状態変更部255は、ダンジョン及びフロア、プレイヤキャラクタ又は敵キャラクタのレベルが低い(ゲームの序盤)ほど、感情状態を変更する確率を低くし、レベルが高い(ゲームの序盤)ほど、感情状態を変更する確率を高くする。これにより、ゲームの序盤では、敵キャラクタのバトル用パラメータの変化が抑制され、ゲームの終盤になるほど、敵キャラクタのバトル用パラメータが変化しやすくなるため、プレイヤのゲームへの継続意欲を維持させることが可能となる。
また、端末感情状態変更部255は、感情状態を変更する確率を、ゲームの実行時間もしくは非実行時間、プレイヤキャラクタが敵キャラクタに勝利した回数、又はプレイヤが特定のアイテムを所有している数等に応じて変更してもよい。ゲームの実行時間は、そのゲーム自体の実行時間に限定されず、プレイヤキャラクタがダンジョン又はフロアに進入してからの経過時間、又はバトルを開始してからの経過時間等でもよい。ゲームの非実行時間は、例えばゲームを前回終了してからログインするまでの時間である。特定のアイテムは、例えばダンジョン又はフロアに配置されたアイテムである。端末感情状態変更部255は、ゲームの実行時間が短いほど、感情状態を変更する確率を低くし、実行時間が長いほど、感情状態を変更する確率を高くする。または、端末感情状態変更部255は、ゲームの非実行時間が長いほど、感情状態を変更する確率を低くし、非実行時間が短いほど、感情状態を変更する確率を高くする。または、端末感情状態変更部255は、勝利回数又は特定のアイテムの所有数が少ないほど、感情状態を変更する確率を低くし、勝利回数又は特定のアイテムの所有数が多いほど、感情状態を変更する確率を高くする。これらにより、プレイヤのゲームへの継続意欲を維持させ、ゲームの実行意欲を向上させることが可能となる。
また、端末感情状態変更部255は、感情状態を変更する確率を、プレイヤと同時にゲームを実行している、プレイヤに関連する他のプレイヤのレベル又は数に応じて変更してもよい。端末感情状態変更部255は、他のプレイヤのレベルが低いほど、感情状態を変更する確率を低くし、他のプレイヤのレベルが高いほど、感情状態を変更する確率を高くする。または、端末感情状態変更部255は、他のプレイヤの数が少ないほど、感情状態を変更する確率を低くし、他のプレイヤの数が多いほど、感情状態を変更する確率を高くする。これにより、ゲーム内における協力関係の構築意欲を向上させることが可能となる。
また、端末感情状態変更部255は、感情状態を変更する確率を、プレイヤキャラクタ又は敵キャラクタに使用する料理、又は、その料理の属性とプレイヤキャラクタもしくは敵キャラクタの属性との関係(同じであるか否か)に応じて変更してもよい。これにより、ゲームの多様性をより向上させることが可能となる。
2.2.サーバ3の構成
図6は、サーバ3の概略構成の一例を示す図である。
サーバ3は、携帯端末2からの要求に応じてゲームを進行させる。また、サーバ3は、ゲームの進行に係る表示データを作成して携帯端末2に送信する。そのために、サーバ3は、サーバ通信部31と、サーバ記憶部32と、サーバ処理部33とを備える。
サーバ通信部31は、出力部の一例であり、サーバ3をインターネット7に接続するための通信インターフェース回路を備え、インターネット7との間で通信を行う。そして、サーバ通信部31は、携帯端末2等から受信したデータをサーバ処理部33に供給する。また、サーバ通信部31は、サーバ処理部33から供給されたデータを携帯端末2等に送信する。
サーバ記憶部32は、例えば、磁気テープ装置、磁気ディスク装置、又は光ディスク装置のうちの少なくとも一つを備える。サーバ記憶部32は、サーバ処理部33での処理に用いられるオペレーティングシステムプログラム、ドライバプログラム、アプリケーションプログラム、データ等を記憶する。例えば、サーバ記憶部32は、アプリケーションプログラムとして、ゲームを進行させ、その結果に係る表示データを作成するゲームプログラム等を記憶する。コンピュータプログラムは、例えばCD−ROM、DVD−ROM等のコンピュータ読み取り可能な可搬型記録媒体から、公知のセットアッププログラム等を用いて端末記憶部22にインストールされてもよい。また、サーバ記憶部32は、データとして、プレイヤを管理するプレイヤ管理テーブル(図7(a))、敵キャラクタを管理する敵キャラクタ管理テーブル(図7(b))等を記憶する。さらに、サーバ記憶部32は、カードを管理するカード管理テーブル(図8(a))、敵キャラクタの感情状態を管理する感情状態管理テーブル(図8(b))、レシピを管理するレシピ管理テーブル(図8(c))、食材を管理する食材管理テーブル(図8(d))、料理を管理する料理管理テーブル(図8(e))等を記憶する。さらに、サーバ記憶部32は、プレイヤ、カード及び敵キャラクタに係る画像データ等を記憶する。さらに、サーバ記憶部32は、所定の処理に係る一時的なデータを一時的に記憶してもよい。
図7(a)〜(b)及び図8(a)〜(e)は、各種管理テーブルのデータ構造の一例を示す図である。
図7(a)には、プレイヤ管理テーブルが示されている。プレイヤ管理テーブルには、各プレイヤについて、当該プレイヤの識別番号(プレイヤID)、パスワード、名前、画像データのファイル名、現在位置、HP、満腹度、当該プレイヤが所有するキャラクタカード(所有カード)の識別番号(カードID)、バトルに使用するキャラクタカード(使用カード)の識別番号(カードID)、所有するレシピ(所有レシピ)の識別番号(レシピID)、所有する食材(所有食材)の識別番号(食材ID)、所有する料理(所有料理)の識別番号(料理ID)及び当該プレイヤに関連する他のプレイヤのプレイヤID等が関連付けて記憶される。現在位置は、プレイヤが現在実施しているクエストにおけるダンジョンの識別番号(ダンジョンID)、そのダンジョンのフロアの識別番号(フロアID)及びそのフロア内の座標により指定される。プレイヤに関連する他のプレイヤとは、そのプレイヤと同一の所属グループに所属する他のプレイヤ、そのプレイヤとフレンド関係にある他のプレイヤ、過去の敵キャラクタとのバトルにおいてそのプレイヤを救援した他のプレイヤ、過去に対戦した他のプレイヤ及び/又は過去に対戦したグループに所属する他のプレイヤ等である。
図7(b)には、敵キャラクタ管理テーブルが示されている。敵キャラクタ管理テーブルには、各敵キャラクタについて、当該敵キャラクタの識別番号(敵キャラクタID)、名前、画像データのファイル名、配置位置、バトル用パラメータ、好物料理の料理ID、苦手料理の料理ID、当該敵キャラクタとのバトルによりプレイヤに付与されるアイテム、当該敵キャラクタの感情状態の組合せ等が関連付けて記憶される。配置位置は、その敵キャラクタが配置されるダンジョンのダンジョンID、フロアのフロアID及びそのフロア内の座標により指定される。バトル用パラメータには、HP、攻撃力、防御力、攻撃速度、属性等が含まれる。付与されるアイテムとして、敵キャラクタの残りHPと、そのHPに対応する食材の食材IDが設定される。感情状態の組合せは、一つ以上設定され、複数設定されてもよい。感情状態の組合せとして、その組合せの識別番号(組合せID)と、各組合せに関する情報が設定される。各組合せに関する情報として、敵キャラクタのHPの範囲毎に、対応する感情状態IDが設定される。
図8(a)には、カード管理テーブルが示されている。カード管理テーブルには、各カードについて、当該カードのカードID、名前、画像データのファイル名、レア度及びバトル用パラメータ等が関連付けて記憶される。
図8(b)には、感情状態管理テーブルが示されている。感情状態管理テーブルには、各感情状態について、当該感情状態の感情状態ID、状態名、当該感情状態に対応する変更パラメータ、遷移条件等が関連付けて記憶される。
図8(c)には、レシピ管理テーブルが示されている。レシピ管理テーブルには、各レシピについて、当該レシピのレシピID、名前、画像データのファイル名、当該レシピによる調理パターン、当該レシピの配置位置、重さ等が関連付けて記憶される。調理パターンは、一つ以上指定され、複数指定されてもよい。調理パターンとして、その調理の識別番号(調理ID)と、その調理に用いられる食材の食材IDと、その調理により生成される料理の料理IDとが設定される。
図8(d)には、食材管理テーブルが示されている。食材管理テーブルには、各食材について、当該食材の食材ID、名前、画像データのファイル名、配置位置、重さ等が関連付けて記憶される。
図8(e)には、料理管理テーブルが示されている。料理管理テーブルには、各料理について、当該料理の料理ID、名前、画像データのファイル名、使用対象、重さ等が関連付けて記憶される。使用対象として、プレイヤキャラクタと敵キャラクタの何れかが設定される。
サーバ処理部33は、一又は複数個のプロセッサ及びその周辺回路を備える。サーバ処理部33は、サーバ3の全体的な動作を統括的に制御するものであり、例えば、CPUである。サーバ処理部33は、サーバ3の各種処理がサーバ記憶部32に記憶されているプログラム等に基づいて適切な手順で実行されるように、サーバ通信部31等の動作を制御する。サーバ処理部33は、サーバ記憶部32に記憶されているプログラム(オペレーティングシステムプログラムやドライバプログラム、アプリケーションプログラム等)に基づいて処理を実行する。また、サーバ処理部33は、複数のプログラム(アプリケーションプログラム等)を並列に実行することができる。
2.2.2.サーバ処理部33の構成
以上の機能を実現するために、サーバ処理部33は、制御部331と、ゲーム進行部332と、バトル実行部333と、バトル用パラメータ変更部334と、感情状態変更部335とを備える。これらの各部は、サーバ処理部33が備えるプロセッサで実行されるプログラムにより実現される機能モジュールである。あるいは、これらの各部は、ファームウェアとしてサーバ3に実装されてもよい。
以下、制御部331による処理について説明する。
制御部331は、ゲームの開始及び進行を制御し、適宜ゲーム進行部332等に処理の実行を指示する。
制御部331は、携帯端末2からサーバ通信部31を介してゲーム開始要求を受信した場合、受信したゲーム開始要求を不図示のプレイヤ認証部に渡し、認証処理の実行を指示する。制御部331は、プレイヤ認証部によるプレイヤの認証が成功した場合に、ホーム画面表示データを作成する。制御部331は、クエスト開始等の指示を受け付けるボタン等を所定のレイアウトで表示させるためのホーム画面表示データを作成する。また、制御部331は、作成したホーム画面表示データをサーバ通信部31を介して携帯端末2に送信する。
制御部331は、携帯端末2からサーバ通信部31を介してゲーム進行要求を受信した場合、受信したゲーム進行要求をゲーム進行部332に渡し、ゲーム進行処理の実行を指示する。
また、制御部331は、ゲーム進行部332から受け取った各画面の表示データ及び/又は各情報を含むゲーム進行応答をサーバ通信部31を介して携帯端末2に送信する。
以下、ゲーム進行部332による処理について説明する。
ゲーム進行部332は、制御部331によりゲーム進行処理の実行が指示されると、ゲーム進行処理を実行するとともに、携帯端末2に表示する各画面の表示データを作成して制御部331に渡す。また、ゲーム進行部332は、適宜バトル実行部333にバトル処理又はアイテム処理の実行を指示する。
ゲーム進行部332は、制御部331から受け取ったゲーム進行要求に含まれる要求種別を特定する。
ゲーム進行部332は、特定した要求種別がクエスト開始要求である場合、ゲーム進行要求に含まれるプレイヤIDに対応するプレイヤの現在位置をプレイヤ管理テーブルから特定する。ゲーム進行部332は、特定した現在位置に対応するダンジョン及びフロアに配置する敵キャラクタ、レシピ及び食材をそれぞれ敵キャラクタ管理テーブル、レシピ管理テーブル及び食材管理テーブルから特定する。
また、ゲーム進行部332は、特定した敵キャラクタの感情状態の全ての組合せを敵キャラクタ管理テーブルから抽出し、抽出した組合せの内の一つを選択する。ゲーム進行部332は、例えば、ゲームの進行状況(例えばプレイヤの現在位置に対応するダンジョン及びフロアのレベル)又はプレイヤキャラクタもしくは敵キャラクタのレベルに基づいて、組合せを選択する。ゲーム進行部332は、ダンジョン及びフロア、プレイヤキャラクタ又は敵キャラクタのレベルが低い(ゲームの序盤)ほど、図4の模式図において内側に位置する感情状態を多く含む組合せを選択し、レベルが高い(ゲームの終盤)ほど、図4の模式図において外側に位置する感情状態を多く含む組合せを選択する。これにより、ゲームの序盤では、敵キャラクタのバトル用パラメータの変動を抑制し、ゲームの終盤になるほど、敵キャラクタのバトル用パラメータの変動を大きくしていくことが可能となり、プレイヤのゲームへの継続意欲を維持させることが可能となる。
ゲーム進行部332は、道及び分岐点を所定位置に配置し、プレイヤキャラクタをプレイヤの現在位置に配置し、特定した敵キャラクタ、並びにレシピ及び食材等のアイテムをそれぞれの配置位置に配置したマップを表示するための内容データを作成する。また、ゲーム進行部332は、プレイヤの操作に従って、プレイヤキャラクタを移動させたり、コンパス内の矢印がプレイヤキャラクタの現在位置からアイテムが配置された位置への方向を示すか、敵キャラクタが配置された位置への方向を示すかを切り替えるための制御データを作成する。ゲーム進行部332は、作成した内容データ及び制御データに加えて、プレイヤ、敵キャラクタ及びアイテムに関する各情報等を含むクエスト画面表示データを作成し、制御部331に渡す。
ゲーム進行部332は、特定した要求種別がアイテム取得通知である場合、ゲーム進行要求に含まれる移動情報に基づいて、プレイヤキャラクタが通過したアイテムを特定する。ゲーム進行部332は、プレイヤ管理テーブルにおいて、ゲーム進行要求に含まれるプレイヤIDに対応する所有レシピID又は所有食材IDに、特定したアイテムのIDを追加することにより、プレイヤにそのアイテムを付与する。ゲーム進行部332は、プレイヤ管理テーブルを更新したことを示す更新情報を制御部331に渡す。
ゲーム進行部332は、特定した要求種別がバトル開始通知である場合、ゲーム進行要求に含まれる移動情報に基づいて、プレイヤキャラクタが遭遇した敵キャラクタを特定する。ゲーム進行部332は、特定した敵キャラクタの各情報を敵キャラクタ管理テーブルから読み出すとともに、ゲーム進行要求に含まれるプレイヤIDに対応する各情報をプレイヤ管理テーブルから読み出す。ゲーム進行部332は、読み出した各情報に基づいて、バトル画面表示データを作成し、制御部331に渡す。
ゲーム進行部332は、特定した要求種別が移動結果通知である場合、ゲーム進行要求に含まれる移動情報に基づいて、プレイヤキャラクタが移動した位置を特定し、プレイヤ管理テーブルにおいて、ゲーム進行要求に含まれるプレイヤIDに対応する現在位置を、特定した位置に更新する。また、ゲーム進行部332は、特定した位置と、ゲーム進行要求に含まれる現在位置が一致するか否かを判定することにより、携帯端末2による移動結果を照合し、照合結果を制御部331に渡す。ゲーム進行部332は、特定した位置と、ゲーム進行要求に含まれる現在位置が一致しない場合、特定した位置にプレイヤキャラクタを配置したクエスト画面表示データを作成し、制御部331に渡す。携帯端末2とサーバ3の両方がプレイヤキャラクタが移動した位置を算出し、移動した位置が正しいか否かをサーバ3が判定することにより、携帯端末2でのデータの改ざんを防止しつつ、プレイヤの操作に応じて即時にクエスト画面を更新することが可能となる。
ゲーム進行部332は、特定した要求種別がバトル結果通知である場合、携帯端末2によるバトル結果を照合する。ゲーム進行部332は、バトル処理の実行をバトル実行部333に指示し、バトル実行部333によるバトル結果と、携帯端末2によるバトル結果が一致するか否かを判定し、判定結果を制御部331に渡す。また、ゲーム進行部332は、バトルの結果を示すバトル結果画面(不図示)を表示するためのバトル結果画面表示データを作成し、制御部331に渡す。携帯端末2とサーバ3の両方がバトル処理を実行し、バトル結果が正しいか否かをサーバ3が判定することにより、携帯端末2でのデータの改ざんを防止しつつ、プレイヤの操作に応じて即時にバトル画面を更新することが可能となる。
ゲーム進行部332は、特定した要求種別がアイテム使用要求である場合、ゲーム進行要求に含まれるプレイヤIDに対応するプレイヤの所有料理をプレイヤ管理テーブルから抽出する。ゲーム進行部332は、抽出した料理の各情報を料理管理テーブルから読み出し、アイテム画面表示データを作成し、制御部331に渡す。
ゲーム進行部332は、特定した要求種別がアイテム使用通知である場合、携帯端末2により使用されたアイテムを照合する。ゲーム進行部332は、ゲーム進行要求に含まれる料理IDが、プレイヤ管理テーブルにおいて、ゲーム進行要求に含まれるプレイヤIDに対応するプレイヤの所有料理IDに含まれるか否かを判定する。ゲーム進行部332は、ゲーム進行要求に含まれる料理IDが所有料理IDに含まれる場合、アイテム処理の実行をバトル実行部333に指示し、その所有料理IDをプレイヤ管理テーブルから削除する。一方、ゲーム進行部332は、ゲーム進行要求に含まれる料理IDが所有料理IDに含まれない場合、アイテム処理を実行しない。ゲーム進行部332は、照合結果を制御部331に渡す。携帯端末2とサーバ3の両方がアイテム処理を実行し、携帯端末2により使用されたアイテムをサーバ3が照合することにより、携帯端末2でのデータの改ざんを防止しつつ、プレイヤの操作に応じて即時にバトル画面を更新することが可能となる。
以下、バトル実行部333による処理について説明する。
バトル実行部333は、ゲーム進行部332によりバトル処理の実行が指示された場合、端末バトル実行部253と同様にして、敵キャラクタのバトル用パラメータの変更をバトル用パラメータ変更部334に指示し、変更されたバトル用パラメータを用いてバトルを実行し、バトル結果をゲーム進行部332に通知する。また、バトル実行部333は、敵キャラクタの体力の減少に応じた、敵キャラクタの現在の感情状態の変更を感情状態変更部335に指示する。
また、バトル実行部333は、ゲーム進行部332によりアイテム処理の実行が指示された場合、端末バトル実行部253と同様にして、アイテムを使用し、アイテムの使用に応じた、敵キャラクタの現在の感情状態の変更を感情状態変更部335に指示する。
以下、バトル用パラメータ変更部334による処理について説明する。
バトル用パラメータ変更部334は、バトル実行部333により敵キャラクタのバトル用パラメータの変更を指示された場合、端末バトル用パラメータ変更部254と同様にして、バトル用パラメータを変更する。
以下、感情状態変更部335による処理について説明する。
感情状態変更部335は、バトル実行部333により敵キャラクタの現在の感情状態の変更を指示された場合、端末感情状態変更部255と同様にして、敵キャラクタの感情状態を変更する。
図9は、ゲームシステム1の動作シーケンスの一例を示す図である。なお、以下に説明する動作シーケンスは、予め端末記憶部22及びサーバ記憶部32に記憶されているプログラムに基づいて、主に端末処理部25及びサーバ処理部33により、携帯端末2及びサーバ3の各要素と協働して実行される。
プレイヤは、携帯端末2の操作部23を用いてゲームの開始を指示する。端末制御部251は、操作部23を用いて、プレイヤからプレイヤID及びパスワードを受け付け、受け付けたプレイヤID及びパスワードを含むゲーム開始要求を端末通信部21を介してサーバ3に送信する(ステップS101)。
サーバ3の制御部331は、携帯端末2からサーバ通信部31を介して、ゲーム開始要求を受信した場合、受信したゲーム開始要求に含まれるプレイヤID及びパスワードをプレイヤ認証部に渡し、認証処理の実行を指示する(ステップS102)。
制御部331は、プレイヤ認証部による認証が成功した場合、ホーム画面表示データを作成する(ステップS103)。
制御部331は、作成したホーム画面表示データをサーバ通信部31を介して携帯端末2に送信する(ステップS104)。
携帯端末2の端末制御部251は、サーバ3から端末通信部21を介して表示データを受信した場合、受信した表示データに基づいて描画データを作成する。また、閲覧実行部250は、作成した描画データを表示部24に出力し、表示データに対応する画面を表示する(ステップS105)。
次に、端末制御部251は、操作部23を用いたプレイヤからの操作を受け付ける(ステップS106)。
端末制御部251は、プレイヤからの操作を受け付けた場合、受け付けた操作に応じた指示を端末ゲーム進行部252に渡し、ゲーム処理の実行を指示する。端末ゲーム進行部252は、端末制御部251によりゲーム処理の実行が指示されると、ゲーム処理を実行する(ステップS107)。ゲーム処理において、ゲーム進行部332は、端末制御部251から受け取った指示に対応する処理を行い、その処理に応じたゲーム進行要求を制御部331に渡す。ゲーム処理の詳細については後述する。
端末制御部251は、ゲーム進行部332から受け取ったゲーム進行要求を端末通信部21を介してサーバ3に送信する(ステップS108)。
制御部331は、サーバ通信部31を介して携帯端末2からゲーム進行要求を受信した場合、受信したゲーム進行要求をゲーム進行部332に渡し、ゲーム進行処理の実行を指示する。ゲーム進行部332は、制御部331によりゲーム進行処理の実行が指示されると、ゲーム進行処理を実行する(ステップS109)。ゲーム進行処理において、ゲーム進行部332は、受信したゲーム進行要求に対応する処理を行い、その処理に応じたゲーム進行応答を制御部331に渡す。ゲーム進行処理の詳細については後述する。
次に、制御部331は、ゲーム進行部332から受け取ったゲーム進行応答をサーバ通信部31を介して携帯端末2に送信する(ステップS110)。
端末制御部251は、端末通信部21を介してサーバ3からゲーム進行応答を受信した場合、受信したゲーム進行応答に応じて処理を行う。ゲーム進行応答に表示データが含まれる場合、端末制御部251は、処理をステップS105に戻し、以降、ステップS105〜S110の処理が繰り返される。一方、ゲーム進行応答に表示データが含まれない場合、端末制御部251は、処理をステップS106に戻し、以降、ステップS106〜S110の処理が繰り返される。
図10は、携帯端末2の端末ゲーム進行部252によるゲーム処理の動作フローの一例を示す図である。図10に示すゲーム進行処理は、図9のステップS107において実行される。
最初に、端末ゲーム進行部252は、端末制御部251から受け取ったユーザによる指示を特定する(ステップS201)。
特定した指示がクエスト開始指示である場合(ステップS202−Yes)、端末ゲーム進行部252は、クエスト開始要求を含むゲーム進行要求を端末制御部251に渡し(ステップS203)、一連のステップを終了する。
特定した指示が移動指示である場合(ステップS202−No、ステップS204−Yes)、端末ゲーム進行部252は、プレイヤキャラクタを移動させ、移動カウンタをインクリメントする(ステップS205)。端末ゲーム進行部252は、プレイヤキャラクタを移動させた結果、プレイヤキャラクタがアイテムを通過した場合(ステップS206−Yes)、アイテム取得通知及び移動情報を含むゲーム進行要求を端末制御部251に渡し(ステップS207)、一連のステップを終了する。一方、端末ゲーム進行部252は、プレイヤキャラクタを移動させた結果、プレイヤキャラクタが敵キャラクタと遭遇した場合(ステップS206−No、ステップS208−Yes)、バトル開始通知及び移動情報を含むゲーム進行要求を端末制御部251に渡し(ステップS209)、一連のステップを終了する。一方、端末ゲーム進行部252は、プレイヤキャラクタを移動させた結果、プレイヤキャラクタの移動カウンタが所定回数を超えた場合(ステップS208−No、ステップS210−Yes)、移動カウンタをクリアし、移動結果通知、移動情報及び現在位置を含むゲーム進行要求を端末制御部251に渡し(ステップS211)、一連のステップを終了する。一方、端末ゲーム進行部252は、プレイヤキャラクタの移動カウンタが所定回数未満である場合(ステップS210−No)、特に処理を行わず、一連のステップを終了する。
一方、特定した指示が攻撃指示である場合(ステップS204−No、ステップS212−Yes)、端末バトル実行部253は、バトル処理を実行する(ステップS213)。バトル処理の詳細については後述する。次に、端末ゲーム進行部252は、バトル処理によりバトルが終了した場合(ステップS214−Yes)、バトル結果通知及びバトル結果を含むゲーム進行要求を端末制御部251に渡し(ステップS215)、一連のステップを終了する。一方、端末ゲーム進行部252は、バトル処理によりバトルが終了していない場合(ステップS214−No)、特に処理を行わず、一連のステップを終了する。
一方、特定した指示がアイテム使用指示である場合(ステップS212−No、ステップS216−Yes)、端末バトル実行部253は、アイテム使用要求を含むゲーム進行要求を端末制御部251に渡し(ステップS217)、一連のステップを終了する。
一方、特定した指示がアイテム選択指示である場合(ステップS216−No、ステップS218−Yes)、端末バトル実行部253は、アイテム処理を実行する(ステップS219)。アイテム処理の詳細については後述する。次に、端末ゲーム進行部252は、アイテム使用通知及び使用した料理の料理IDを含むゲーム進行要求を端末制御部251に渡し(ステップS220)、一連のステップを終了する。一方、特定した指示がアイテム選択指示でない場合(ステップS218−No)、端末ゲーム進行部252は、特に処理を行わず、一連のステップを終了する。
図11は、端末バトル実行部253によるバトル処理の動作フローの一例を示す図である。図11に示すバトル処理は、図10のステップS213において実行される。
最初に、端末バトル実行部253は、敵キャラクタのバトル用パラメータの変更を端末バトル用パラメータ変更部254に指示し、端末バトル用パラメータ変更部254は、敵キャラクタの現在の感情状態を特定する(ステップS301)。次に、端末バトル用パラメータ変更部254は、特定した現在の感情状態に関連付けられた変更パラメータを特定する(ステップS302)。次に、端末バトル用パラメータ変更部254は、特定した変更パラメータに基づいて、敵キャラクタのバトル用パラメータを変更する(ステップS303)。次に、端末バトル実行部253は、端末バトル用パラメータ変更部254により変更されたバトル用パラメータを用いてバトルを実行する(ステップS304)。
次に、端末バトル実行部253は、敵キャラクタの体力の減少に応じた、敵キャラクタの現在の感情状態の変更を端末感情状態変更部255に指示する。端末感情状態変更部255は、敵キャラクタの感情状態の組合せのうち、現在のHPに対応する感情状態を特定し(ステップS305)、特定した感情状態が現在の感情状態と同じであるか否かを判定する(ステップS306)。端末感情状態変更部255は、特定した感情状態が現在の感情状態と異なる場合(ステップS306−No)、現在の感情状態を、特定した感情状態に変更し(ステップS307)、一連のステップを終了する。一方、端末感情状態変更部255は、特定した感情状態が現在の感情状態と同じである場合(ステップS306−Yes)、特に処理を行わず、一連のステップを終了する。
図12は、端末バトル実行部253によるアイテム処理の動作フローの一例を示す図である。図12に示すアイテム処理は、図10のステップS219において実行される。
最初に、端末バトル実行部253は、プレイヤにより指定されたアイテムの使用対象を特定し、特定した使用対象に対してアイテムを使用する(ステップS401)。次に、端末バトル実行部253は、アイテムの使用に応じた、敵キャラクタの現在の感情状態の変更を端末感情状態変更部255に指示する。端末感情状態変更部255は、所定の確率に基づいて、感情状態を変更するか否かを決定する(ステップS402)。端末感情状態変更部255は、感情状態を変更することに決定した場合(ステップS403−Yes)、変更する感情状態を特定し(ステップS404)、現在の感情状態を、特定した感情状態に変更し(ステップS405)、一連のステップを終了する。一方、端末感情状態変更部255は、感情状態を変更しないことに決定した場合(ステップS403−No)、特に処理を行わず、一連のステップを終了する。
図13は、サーバ3のゲーム進行部332によるゲーム進行処理の動作フローの一例を示す図である。図13に示すゲーム進行処理は、図6のステップS109において実行される。
最初に、ゲーム進行部332は、制御部331から受け取ったゲーム進行要求に含まれる要求種別から、携帯端末2の要求を特定する(ステップS501)。
特定した要求種別がクエスト開始要求である場合(ステップS502−Yes)、ゲーム進行部332は、プレイヤの現在位置を特定し、特定した現在位置に対応するダンジョン及びフロアに配置する敵キャラクタ、レシピ及び食材を特定する。そして、ゲーム進行部332は、特定した敵キャラクタの感情状態の組合せの内の一つを選択する(ステップS503)。ゲーム進行部332は、特定した敵キャラクタ、レシピ及び食材に関する各情報等を含むクエスト画面表示データを作成し(ステップS504)、制御部331に渡し、一連のステップを終了する。
特定した要求種別がアイテム取得通知である場合(ステップS502−No、ステップS505−Yes)、ゲーム進行部332は、プレイヤキャラクタが通過したアイテムを特定し、プレイヤ管理テーブルを更新して、プレイヤに特定したアイテムを付与する(ステップS504)。ゲーム進行部332は、プレイヤ管理テーブルを更新したことを示す更新情報を制御部331に渡し、一連のステップを終了する。
特定した要求種別がバトル開始通知である場合(ステップS505−No、ステップS507−Yes)、ゲーム進行部332は、プレイヤキャラクタが遭遇した敵キャラクタを特定する。ゲーム進行部332は、特定した敵キャラクタの各情報及びプレイヤキャラクタの各情報に基づいて、バトル画面表示データを作成し(ステップS508)、制御部331に渡し、一連のステップを終了する。
特定した要求種別が移動結果通知である場合(ステップS507−No、ステップS509−Yes)、ゲーム進行部332は、プレイヤキャラクタが移動した位置を特定し、プレイヤ管理テーブルの現在位置を、特定した位置に変更するように更新する。次に、ゲーム進行部332は、携帯端末2による移動結果を照合し(ステップS510)、照合結果を制御部331に渡し、一連のステップを終了する。
特定した要求種別がバトル結果通知である場合(ステップS509−No、ステップS511−Yes)、ゲーム進行部332は、バトル処理の実行をバトル実行部333に指示する。バトル実行部333によるバトル処理は、図11に示したバトル処理と同様であるため、説明を省略する。ゲーム進行部332は、バトル実行部333によるバトル結果と、携帯端末2によるバトル結果が一致するか否かを判定することにより、携帯端末2によるバトル結果を照合し(ステップS512)、照合結果を制御部331に渡す。さらに、ゲーム進行部332は、バトル結果画面表示データを作成し(ステップS513)、制御部331に渡し、一連のステップを終了する。
特定した要求種別がアイテム使用要求である場合(ステップS511−No、ステップS514−Yes)、ゲーム進行部332は、プレイヤの所有料理を抽出する。ゲーム進行部332は、抽出した料理の各情報に基づいて、アイテム画面表示データを作成し(ステップS515)、制御部331に渡し、一連のステップを終了する。
特定した要求種別がアイテム使用通知である場合(ステップS514−No、ステップS516−Yes)、ゲーム進行部332は、携帯端末2により使用されたアイテムを照合する(ステップS517)。ゲーム進行部332は、ゲーム進行要求に含まれる料理IDが所有料理IDに含まれる場合、アイテム処理の実行をバトル実行部333に指示し、その所有料理IDをプレイヤ管理テーブルから削除する(ステップS518)。バトル実行部333によるアイテム処理は、図12に示したアイテム処理と同様であるため、説明を省略する。ゲーム進行部332は、プレイヤ管理テーブルを更新したことを示す更新情報を制御部331に渡し、一連のステップを終了する。
一方、特定した要求種別が上記の何れでもない場合(ステップS516−No)、ゲーム進行部332は、ホーム画面表示データの作成を制御部331に指示する。制御部331は、ホーム画面表示データを作成し、ゲーム進行部332に渡す(ステップS519)。次に、ゲーム進行部332は、ホーム画面表示データを制御部331に渡し、一連のステップを終了する。
以上説明してきたように、ゲームシステム1は、所定のイベントの実行に応じて、敵キャラクタの感情状態を変更するとともに、変更した感情状態に関連付けられた変更パラメータに基づいて敵キャラクタのバトル用パラメータを変更し、変更したバトル用パラメータを用いてバトルを実行する。敵キャラクタの感情状態によって、敵キャラクタの強さが変化し、敵キャラクタとのバトルの状況が変化するため、敵キャラクタとのバトルの多様性が向上し、プレイヤのゲームへの継続意欲を維持させることを可能となる。
なお、本発明は、本実施形態に限定されるものではない。例えば、本実施形態では、サーバ3がゲームを実行するものとしたが、サーバ3を省略し、携帯端末2が単独でゲームを実行してもよい。その場合、端末記憶部22が、サーバ記憶部32が記憶する各テーブル等を記憶する。なお、端末記憶部22は、プレイヤ管理テーブルについては、その携帯端末2のプレイヤについての情報及びそのプレイヤに関連する他のプレイヤについての情報のみを記憶する。端末処理部25は、図2に示した各部に加えて、サーバ3のサーバ処理部33の各部と同様の機能を持つ各部を有する。端末処理部25は、各情報を端末通信部21及びサーバ通信部31を介して送受信することに代えて、端末処理部25内で送受信する。この場合、携帯端末2による各処理に対する照合処理は省略してもよい。また、表示部24が出力部の一例となる。
また、本実施形態では、敵キャラクタ毎に、敵キャラクタのHPの減少に応じて遷移していく感情状態の組合せを予め設定しておくものとしたが、感情状態の遷移方法は、これに限定されない。
図14(a)、(b)は、感情状態の遷移方法の他の例について説明するための模式図である。
図14(a)は、感情状態の初期状態について説明するための模式図である。図14(a)に示す例では、各感情状態について、初期発生確率が設定される。図14(a)に示すように、円1400の内側の各感情状態の初期発生確率は高く、円1400の外側の各感情状態の初期発生確率は低い傾向にある。このように、バトル用パラメータを変更させる度合いが大きい感情状態の発生確率を低くすることにより、これらの感情状態の希少性を高めることができる。
図14(b)は、感情状態の遷移について説明するための模式図である。図14(b)に示す各矢印は、敵キャラクタが攻撃を受けてHPが減少したときに、各感情状態から遷移する方向を示す。示される方向の内のどの方向に遷移するか、又は遷移しないかは、例えば予め定められた確率に基づいて決定される。なお、示される方向の内のどの方向に遷移するか、又は遷移しないかは、攻撃を受けることにより減少したHPの大きさ(変化量)に応じて決定されてもよい。
図15は、図14(a)、(b)に示した遷移方法で感情状態を遷移する場合の感情状態管理テーブルのデータ構造の一例を示す図である。感情状態管理テーブルには、各感情状態について、当該感情状態の感情状態ID、状態名、当該感情状態によるバトル用パラメータの変更パラメータ、レベル、初期発生確率、遷移方向等が関連付けて記憶される。感情状態のレベルは、バトル用パラメータを変更させる度合いを表し、感情状態のレベルとして、図14(a)の円1400の内側の感情状態については「低」が設定され、円1400の外側の感情状態については「高」が設定される。遷移方向として、遷移可能な遷移先の感情状態と遷移確率が関連付けて記憶される。
なお、各感情状態の初期発生確率は、前述したゲームの進行状況、プレイヤキャラクタもしくは対戦相手キャラクタのレベル、ゲームの実行時間もしくは非実行時間、プレイヤキャラクタが対戦相手キャラクタに勝利した回数、プレイヤが特定のアイテムを所有している数、又は、プレイヤと同時にゲームを実行している、プレイヤに関連する他のプレイヤのレベルもしくは数等に基づいて補正されてもよい。
例えば、端末感情状態変更部255は、ダンジョン及びフロア、プレイヤキャラクタ又は敵キャラクタのレベルが低いほど、図14の円1400の外側の各感情状態の初期発生確率を低くして内側の各感情状態の初期発生確率を高くし、レベルが高いほど、外側の各感情状態の初期発生確率を高くして内側の各感情状態の初期発生確率を低くする。
または、端末感情状態変更部255は、ゲームの実行時間が短いほど、外側の各感情状態の初期発生確率を低くして内側の各感情状態の初期発生確率を高くし、実行時間が長いほど、外側の各感情状態の初期発生確率を高くして内側の各感情状態の初期発生確率を低くする。または、端末感情状態変更部255は、ゲームの非実行時間が長いほど、外側の各感情状態の初期発生確率を低くして内側の各感情状態の初期発生確率を高くし、非実行時間が短いほど、外側の各感情状態の初期発生確率を高くして内側の各感情状態の初期発生確率を低くする。
または、端末感情状態変更部255は、勝利回数、特定のアイテムの所有数又は他のプレイヤの数が少ないほど、外側の各感情状態の初期発生確率を低くして内側の各感情状態の初期発生確率を高くし、勝利回数、特定のアイテムの所有数又は他のプレイヤの数が多いほど、外側の各感情状態の初期発生確率を高くして内側の各感情状態の初期発生確率を低くする。または、端末感情状態変更部255は、他のプレイヤのレベルが低いほど、外側の各感情状態の初期発生確率を低くして内側の各感情状態の初期発生確率を高くし、他のプレイヤのレベルが高いほど、外側の各感情状態の初期発生確率を高くして内側の各感情状態の初期発生確率を低くする。
この場合も、敵キャラクタとのバトルの多様性が向上し、プレイヤのゲームへの継続意欲を維持させることを可能となる。
当業者は、本発明の精神及び範囲から外れることなく、様々な変更、置換、及び修正をこれに加えることが可能であることを理解されたい。特に、本発明のゲームシステム1が、携帯端末2とネットワークを介して接続されたサーバ3として機能する場合には、ゲームの進行画面をサーバ3が生成したデータに基づき携帯端末2にて表示されるウェブ表示とし、その他のメニュー画面等を携帯端末2にインストールされているネイティブアプリによって表示するネイティブ表示とする等の、サーバ3と携帯端末2のそれぞれが処理の一部を担うハイブリッドゲームとすることもできる。