以下、本発明の一実施の形態について図面を参照しつつ説明する。
<1.ゲームシステムの全体構成>
まず、図1を用いて、本実施形態に係るゲームシステム1の全体構成の一例について説明する。図1に示すように、ゲームシステム1は、複数の端末装置3と、サーバ5を有する。複数の端末装置3とサーバ5は、例えばLANやインターネット等のネットワークNWを介して通信可能に接続されている。なお、図1ではサーバ5が1台のコンピュータで構成されているが、複数台のコンピュータで構成されてもよい。
端末装置3は、例えばスマートフォン、タブレット型コンピュータ、携帯型ゲーム機等である。端末装置3は、各種の表示及びユーザによる各種の入力操作が行われるタッチパネル7を有する。ユーザは、指やペン等によりタッチパネル7に接触することで所望の操作入力を行う。
タッチパネル7の検出方式は、特に限定されるものではないが、例えば抵抗膜方式、静電容量方式、光学方式、電磁誘導方式等、種々の検出手法を採用することが可能である。なお、端末装置3は、タッチパネル7以外に、ボタンやスイッチ等の入力部を備えてもよい。
サーバ5(情報処理装置の一例)は、ゲームサービスを受ける各ユーザの端末装置3からのネットワークNWを介したアクセスを受け付けて、各ユーザのゲーム情報を記憶装置に蓄積して管理し、各ユーザにネットワークNWを介したゲームサービスを提供する。
サーバ5によるゲームサービスの提供の形態としては、ゲームプログラム(アプリケーションソフトウェアともいう)がサーバ5に実装されており、端末装置3でゲームを実行するのではなく、端末装置3でのユーザの操作入力に応じてサーバ5でゲームを実行し、その実行結果を各ユーザの端末装置3に送信する形態がある。例えば、各ユーザの端末装置3に搭載されたウェブブラウザによってゲームがプレイできる、いわゆるブラウザゲームをサーバ5が提供する。あるいは、サーバ5でゲームを実行した結果のゲーム映像を、例えばストリーミング形式等で端末装置3に送信する、いわゆるクラウドゲーミングのサービスをサーバ5が提供してもよい。なお、端末装置3にゲームプログラムの一部をインストールし、サーバ5だけでなく端末装置3においても部分的にゲーム実行処理が行われるようにしてもよい。
<2.ゲームの概略内容>
次に、図2及び図3を用いて、本実施形態に係るゲーム、すなわち、本発明のゲームプログラムがサーバ5によって実行されることにより各端末装置3に提供されるゲームの概略内容の一例について説明する。
本実施形態に係るゲームは、複数のプレイヤが複数のグループ(例えば歴史上の大名等)に別れ、各プレイヤが武将等の家臣を集めて育成したり、部隊を作成して他の大名との合戦を行うことにより、プレイヤが仕える大名家の支配地を拡大する、いわゆる戦国シミュレーションゲームである。
各プレイヤは、1又は複数の部隊を作成し、同じグループ(同じ大名等)に属する他のプレイヤの部隊と協力して、他のグループ(他の大名等)に属するプレイヤの部隊とリアルタイムに合戦を行う。図2に示すように、合戦では、各プレイヤが自分の部隊に対して移動や計略等を指示入力する入力フェイズ、及び、それらの入力された結果が各端末装置3の表示に反映される解決フェイズ、からなるターンが所定数繰り返される、いわゆるターン制バトルが採用されている。
図3に、合戦マップ画面の一例を示す。この例では、ゲームフィールドGF上に、複数(この例では5つ)の味方部隊9と、複数(この例では5つ)の敵部隊11と、味方の本陣13と、敵の本陣15とが配置されている。プレイヤが操作する味方部隊9には、自分の味方部隊9(プレイヤキャラクタ)であることを表すオブジェクト17が表示されている。また、合戦マップ画面には、各部隊の現在地及び本陣の位置等を確認可能なミニマップ19が表示されている。
合戦マップ画面の下部には、プレイヤが指示入力を行うための複数(この例では4つ)のボタン21,23,25,27が表示されている。「陣設営」ボタン21は、所望の位置に味方の陣を設営するためのボタンである。「移動」ボタン23は、味方部隊9を所望の位置に移動させるためのボタンである。「計略」ボタン25は、例えば火計、水計、奇襲、伏兵等の計略を実行するためのボタンである。「発信」ボタン27は、自分以外の味方部隊9のプレイヤに対して伝令を表示させるためのボタンである。なお、上記以外のボタンを設けてもよい。なお、本実施形態において「陣」とは、合戦において味方部隊9又は敵部隊11が相手の部隊に対する攻撃又は守備のために駐屯する拠点のことであり、陣営、陣屋、陣所などとも呼ばれる。
各プレイヤは、入力フェイズの間に上記ボタン21,23,25,27等を使用して自分の味方部隊9に指示を行う。これらの指示情報は、サーバ5に逐次送信されて処理される。そして、全ての味方部隊9について各プレイヤにより指示入力の完了操作が行われるか、入力フェイズの制限時間が経過すると、解決フェイズに移行する。この移行の際に、サーバ5は、各プレイヤによる指示入力の結果を表す情報(例えば、どの部隊がどの位置に移動し、どの敵に攻撃を行うか、どのような勝敗になるか等)を、各端末装置3に一斉に送信する。端末装置3では、サーバ5から受信した情報に基づいて結果を表示する。
この際、端末装置3は、例えばWebGL等の、ウェブブラウザで3次元コンピュータグラフィックスを表示させるための標準仕様を用いて、サーバ5から受信した情報に基づいて3次元表示データを生成し、タッチパネル7に表示してもよい。この場合、各端末装置3側で3次元表示データを生成するので、サーバ5で3次元表示データを生成して各端末装置3に送信する場合に比べて通信データを軽量化でき、通信速度を高速化しつつブラウザ上での3D表現が可能となる。
合戦には、予め勝利条件及び敗北条件が設定されており、当該条件が満たされると味方軍の勝利又は敗北となる。例えば、規定ターン以内に敵の本陣15を陥落させる、あるいは、規定ターン終了時点で味方の陣の所有数が敵を上回っている、等が満たされると、味方軍の勝利となる。反対に、規定ターン以内に味方の本陣13が陥落される、あるいは、規定ターン終了時点で敵の陣の所有数が味方を上回っている、等が満たされると、味方軍の敗北となる。なお、これら以外の勝利条件及び敗北条件が設定されてもよい。
以上が本実施形態に係るゲームの概略内容であるが、以下、その特徴部分の内容について詳細に説明する。
<3.部隊の編成に関わるサーバの機能的構成>
本実施形態に係るゲームでは、各プレイヤは、合戦に参加する前及び合戦中の入力フェイズにおいて、自分の味方部隊9の編成をカスタマイズすることができる。次に、図4〜図10を用いて、サーバ5の機能的構成のうち、主として部隊の編成に関わる機能的構成の一例について説明する。
図4に示すように、サーバ5は、部隊編成処理部29と、属性設定処理部31と、家臣パラメータ特定処理部33と、反映度設定処理部35と、部隊パラメータ決定処理部37と、陣形設定処理部39と、陣形選択処理部41と、第1編成変更処理部43と、第1確認表示処理部45と、第2編成変更処理部47と、第2確認表示処理部49を有する。
部隊編成処理部29(グループ編成処理部の一例)は、複数の家臣(オブジェクトの一例)を複数の枠にそれぞれ対応付けて味方部隊9(グループの一例)を編成する。
図5に、部隊編成処理部29により表示される部隊編成画面の一例を示す。プレイヤは、合戦中及び合戦以外を含む任意のタイミングで、所定の操作入力によりこの部隊編成画面を開くことができる。図5に示すように、部隊編成画面には、客将を含む8人の家臣をそれぞれ対応付けるための8つの枠51a〜51hが表示されている。部隊編成処理部29は、これらの枠51a〜51hにプレイヤにより選択された家臣A〜Hをそれぞれ対応付けて、味方部隊9を編成する。
図4に戻り、属性設定処理部31は、上記複数の枠のそれぞれに属性を設定する。本実施形態では、枠の属性として例えば「将」、「兵」、「攻」、「守」、「知」、「速」、「援」が用意されており、属性設定処理部31は、プレイヤにより選択された陣形に応じて、それらの属性を各枠51a〜51hに設定する。なお、上記以外の属性が設定されてもよい。
例えば図5に示す例では、方円の陣(後述の図6も参照)が選択されており、当該陣形に対応して、各枠51a〜51hに属性「将」、「兵」、「兵」、「攻」、「守」、「知」、「速」、「援」がそれぞれ設定されている。
図4に戻り、家臣パラメータ特定処理部33(オブジェクトパラメータ特定処理部の一例)は、上記属性設定処理部31により設定された属性に基づいて、家臣の能力値を表す複数の家臣パラメータ(オブジェクトパラメータの一例)の中から、味方部隊9の能力値を表す部隊パラメータ(グループパラメータの一例)に反映させる少なくとも1つの家臣パラメータを特定する。
本実施形態では、家臣パラメータとして例えば「兵」、「攻」、「守」、「知」、「速」が用意されている(後述の図7参照)。「兵」は体力(耐久力あるいはヒットポイントともいう)、「攻」は攻撃力、「守」は守備力、「知」は知力、「速」は素速さを表している。家臣パラメータ特定処理部33は、枠の属性に応じて、当該枠に対応付けられた家臣の上記家臣パラメータ「兵」、「攻」、「守」、「知」、「速」の中から、味方部隊9の部隊パラメータに反映させる1又は複数の家臣パラメータを特定する。
例えば図5に示す例では、枠51aには属性「将」が設定されているので、枠51aに対応付けられた家臣Aの全ての家臣パラメータ「兵」、「攻」、「守」、「知」、「速」が、部隊パラメータに反映させるパラメータとして特定される。また、枠51b,51cには属性「兵」が設定されているので、枠51b,51cに対応付けられた家臣B,Cの家臣パラメータの中の「兵」が、部隊パラメータに反映させるパラメータとして特定される。また、枠51dには属性「攻」が設定されているので、枠51dに対応付けられた家臣Dの家臣パラメータの中の「攻」が、部隊パラメータに反映させるパラメータとして特定される。また、枠51eには属性「守」が設定されているので、枠51eに対応付けられた家臣Eの家臣パラメータの中の「守」が、部隊パラメータに反映させるパラメータとして特定される。また、枠51fには属性「知」が設定されているので、枠51fに対応付けられた家臣Fの家臣パラメータの中の「知」が、部隊パラメータに反映させるパラメータとして特定される。また、枠51gには属性「速」が設定されているので、枠51gに対応付けられた家臣Gの家臣パラメータの中の「速」が、部隊パラメータに反映させるパラメータとして特定される。また、枠51hには属性「援」が設定されているので、枠51hに対応付けられた家臣Hの全ての家臣パラメータ「兵」、「攻」、「守」、「知」、「速」が、部隊パラメータに反映させるパラメータとして特定される。
図4に戻り、反映度設定処理部35は、上記属性設定処理部31により設定された属性に基づいて、上記家臣パラメータ特定処理部33により特定された家臣パラメータを部隊パラメータへ反映させる度合いを表す反映度を設定する。本実施形態では、属性「将」が設定された枠の場合には反映度が30%に設定されており、属性「援」が設定された枠の場合には反映度が20%に設定されており、それ以外の属性「兵」、「攻」、「守」、「知」、「速」が設定された枠の場合には反映度が100%に設定されている(後述の図6参照)。
部隊パラメータ決定処理部37(グループパラメータ決定処理部の一例)は、上記反映度設定処理部35により設定された反映度と、上記家臣パラメータ特定処理部33により特定された各家臣の家臣パラメータとに基づいて、部隊パラメータを決定する。
例えば図5に示す例では、味方部隊9の部隊パラメータは、レベル14、「兵」が650、「攻」が135、「守」が120、「知」が129、「速」が128となっており、これらがパラメータ表示部52に表示されている。味方部隊9のレベルは、各家臣A〜Hのレベルの合計値である。味方部隊9の「兵」、「攻」、「守」、「知」、「速」の各値は、部隊パラメータ決定処理部37により次式にしたがって決定される。
部隊「兵」=家臣A「兵」×0.3+家臣B「兵」+家臣C「兵」+家臣H「兵」×0.2
部隊「攻」=家臣A「攻」×0.3+家臣D「攻」+家臣H「攻」×0.2
部隊「守」=家臣A「守」×0.3+家臣E「守」+家臣H「守」×0.2
部隊「知」=家臣A「知」×0.3+家臣F「知」+家臣H「知」×0.2
部隊「速」=家臣A「速」×0.3+家臣G「速」+家臣H「速」×0.2
すなわち、「将」の枠51aに配置された家臣Aの家臣パラメータについては、全項目がそれぞれ30%の割合で部隊パラメータの全項目に反映され、「援」の枠51hに配置された家臣Hの家臣パラメータについては、全項目がそれぞれ20%の割合で部隊パラメータの全項目に反映される。また、「兵」、「攻」、「守」、「知」、「速」の枠51b〜51gにそれぞれ配置された家臣B〜Gの家臣パラメータについては、枠の属性と同じ項目が100%の割合で部隊パラメータの該当する項目にそれぞれ反映される。
図4に戻り、陣形設定処理部39(枠型設定処理部の一例)は、属性が異なる複数種類の枠の配置態様を規定する複数種類の陣形(枠型の一例)を設定する。また、陣形選択処理部41(枠型選択処理部の一例)は、上記陣形設定処理部39により設定された複数種類の陣形の中から、プレイヤの操作入力に基づいて陣形を選択する。
図6に、陣形設定処理部39により設定された陣形の一覧が表示された陣形選択画面の一例を示す。図6に示すように、本実施形態では、属性「将」、「兵」、「兵」、「攻」、「守」、「知」、「速」、「援」のいずれかが設定される各枠51a〜51hの配置態様を規定する陣形として、例えば横陣、方円の陣、知謀の陣、鶴翼の陣、鋒矢の陣、偃月の陣、縦陣等が用意されている。なお、上記以外の陣形が設定されてもよい。各陣形には特色があり、例えば横陣、鋒矢の陣では複数の枠に「攻」の属性が設定されており、攻撃力が比較的高い。また、方円の陣では複数の枠に「兵」の属性が設定されており、耐久力が比較的高い。また、知謀の陣、偃月の陣では複数の枠に「知」の属性が設定されており、知力が比較的高い。また、鶴翼の陣では複数の枠に「守」の属性が設定されており、守備力が比較的高い。また、縦陣では複数の枠に「速」の属性が設定されており、素速さが比較的高い。このような各陣形の特色は、プレイヤが一目で分かるように特色表示部53に表示されている。また、各陣形には、概略的な形状を表す形状表示部55と、各枠51a〜51hの属性及び反映度がそれぞれ表示されている。
プレイヤは、この陣形選択画面において所定の操作入力(例えば特定の陣形を指でタッチする等)を行うことで陣形を選択することができる。前述の図5は方円の陣が選択された場合の部隊編成画面である。
なお、図6に示す例では、全陣形において左端の枠51aの属性が「将」、右端の枠51hの属性が「援」に固定され、それらの間の枠51b〜51gの属性の配置態様のみ変化するように規定されているが、両端の「将」、「援」の属性の配置態様についても陣形に応じて変化させてもよい。また、全陣形において「将」の反映度を30%、「援」の反映度を20%、それ以外の属性の反映度を100%に固定しているが、これらの反映度の値についても陣形に応じて変化させてもよい。
図4に戻り、第1編成変更処理部43は、上記部隊編成処理部29による部隊の編成中に、プレイヤの操作入力に基づいて所定の枠に対応付けられた家臣を他の家臣に変更する。また、第1確認表示処理部45は、上記第1編成変更処理部43による家臣変更前の部隊パラメータ及び家臣変更後の部隊パラメータの両方を表示する。
図7に、第1編成変更処理部43により表示される編成家臣選択画面の一例を示す。図7は、前述の図5に示す部隊編成画面において「攻」の属性が設定された枠51dの家臣Dを他の家臣に変更する場合を示している。この編成家臣選択画面は、図5に示す部隊編成画面においてプレイヤが所定の操作入力(例えば枠51dを指でタッチする等)を行うことにより開くことができる。
図7に示すように、編成家臣選択画面の上部には、変更対象である家臣Dの各種パラメータや体力ゲージ56がパラメータ表示部57に表示されている。家臣Dの家臣パラメータは、この例ではレベル2、「兵」が206、「攻」が92、「守」が24、「知」が12、「速」が46となっており、「攻」の値が100%の割合で部隊パラメータに反映されていることが反映度表示部59により示されている。また、パラメータ表示部57には「外す」ボタン61が表示されており、プレイヤはこの「外す」ボタン61にタッチすることにより、枠51dに対する家臣Dの対応付けを解除することができる。解除された場合には、枠51dは家臣の対応付けがされていない空の枠となる。
編成家臣選択画面の下部には、家臣Dの代わりとなる他の家臣が、この例では攻撃力が高い順に表示されている。図7に示す例では、プレイヤが所持する複数の家臣の中から攻撃力が高い順に3人の家臣C、家臣I、家臣Jが、パラメータ等と共にパラメータ表示部63,65,67にそれぞれ表示されている。なお、家臣Cは「兵」の属性が設定された枠51cに対応付けられた家臣である。これらの家臣の並び順の条件は、プレイヤがプルダウンメニュー69を使用して所望の条件に設定することができる。例えば、「知」の属性が設定された枠51fの家臣を変更する場合には知力が高い順、「守」の属性が設定された枠51eの家臣を変更する場合には守備力が高い順、といったように設定できる。
プレイヤは、「外す」ボタン61により枠51dに対する家臣Dの対応付けを解除した後に、所定の操作入力(例えばパラメータ表示部63,65,67のいずれかを指でタッチする等)を行うことにより、枠51dに新たに対応付ける家臣を選択することができる。例えば図7に示す例において、家臣I又は家臣Jが選択された場合には、枠51dに家臣I又は家臣Jが新たに対応付けられる。また、例えば家臣Cが選択された場合には、家臣Cは「兵」の属性の枠51cから自動的に解除されて、枠51dに新たに対応付けられる。この場合、枠51cは空の枠となる。
なお、プレイヤは入替ボタン71にタッチすることにより、2つの枠間で家臣を入れ替えることができる。例えば図7に示す例において、家臣Cの選択後に入替ボタン71がタッチされた場合には、家臣Dと家臣Cが入れ替えられる。すなわち、家臣Dが枠51dから枠51cに移動し、家臣Cが枠51cから枠51dに移動する。
図8に、上記家臣Dと家臣Cの入れ替えが行われた場合に、第1確認表示処理部45により表示される確認表示画面の一例を示す。図8に示すように、確認表示画面には家臣Dと家臣Cの入れ替え前の部隊パラメータと、入れ替え後の部隊パラメータの両方が比較可能に表示されている。この場合、家臣Cの家臣パラメータの「攻」の値98は家臣Dの「攻」の値92よりも6だけ高いことから、部隊パラメータの「攻」の値が6だけ上昇する。他方、家臣Cの家臣パラメータの「兵」の値206と家臣Dの「兵」の値206は等しいことから、部隊パラメータの「兵」の値は一定となる。また、その他の部隊パラメータについても変動しない。したがって、上記の家臣の変更は、例えば家臣Cの能力(最も攻撃力が高い)を最大限に有効活用したい、といった場合に有効である。また、図8に示す例では、編成変更後に上昇した「攻」の値が強調表示されている。プレイヤは、確認ボタン73にタッチすることで確認表示画面を閉じることができる。
図4に戻り、第2編成変更処理部47は、上記部隊編成処理部29による部隊の編成中に、プレイヤの操作入力に基づいて陣形を他の陣形に変更する。第2確認表示処理部49は、上記第2編成変更処理部47による変更前の部隊パラメータ及び変更後の部隊パラメータの両方を表示する。
図9に、図5に示す状態から第2編成変更処理部47により陣形を変更(この例では方円の陣から横陣に変更)された場合の部隊編成画面の一例を示す。プレイヤは、部隊編成画面において所定の操作入力(例えば陣形表示部75を指でタッチする等)を行うことで、前述の図6に示す陣形選択画面を開いて陣形を変更することができる。プレイヤは、合戦中及び合戦以外を含む任意のタイミングで陣形を変更することができる。
図10に、上記方円の陣から横陣への陣形の変更が行われた場合に、第2確認表示処理部49により表示される確認表示画面の一例を示す。図10に示すように、確認表示画面には陣形の変更前の部隊パラメータと、変更後の部隊パラメータの両方が比較可能に表示されている。図5及び図9(図6も参照)に示すように、方円の陣と横陣の態様の相違は枠51cの属性が「兵」から「攻」に変わる点である。枠51cに対応付けられた家臣Cの家臣パラメータの「攻」の値は98であることから、上記陣形の変更により部隊パラメータの「攻」の値が98だけ上昇する。他方、家臣Cの家臣パラメータの「兵」の値は206であることから、上記陣形の変更により部隊パラメータの「兵」の値は206だけ減少する。なお、その他の部隊パラメータについては変動しない。したがって、上記の陣形の変更は、例えば部隊の耐久力は多少犠牲にしても構わないので攻撃力を高めたい、といった場合に有効である。また、図10に示す例では、編成変更後に上昇した「攻」の値が強調表示されると共に、減少した「兵」の値が識別可能に表示されている。プレイヤは、確認ボタン73にタッチすることで確認表示画面を閉じることができる。
なお、以上では説明しなかったが、例えば「お任せ編成」等のボタンを設けておき、プレイヤが選択した陣形に応じて自動的に家臣を編成する機能を設けてもよい。その場合、例えば、各枠に設定された属性が最も高い家臣を自動的に当該枠に対応付けたり、同じ属性の枠が複数ある場合には当該属性が高い家臣から順にそれらの枠に対応付けたり、家臣パラメータがバランス良く高い家臣やレベルが最も高い家臣を「将」の枠に対応付けたり、特殊なスキルを備えた家臣を「援」の枠に対応付けたりしてもよい。
なお、以上説明した各処理部における処理等は、これらの処理の分担の例に限定されるものではなく、例えば、更に少ない数の処理部(例えば1つの処理部)で処理されてもよく、また、更に細分化された処理部により処理されてもよい。また、上述した各処理部の機能は、後述するCPU501(後述の図23参照)が実行するゲームプログラムにより実装されるものであるが、例えばその一部がASICやFPGA等の専用集積回路、その他の電気回路等の実際の装置により実装されてもよい。さらに、以上説明した各処理部は、全部がサーバ5側に実装される場合に限定されるものではなく、その一部又は全部が端末装置3側に実装されてもよい。
<4.サーバが実行する部隊の編成に関わる処理手順>
次に、図11を用いて、サーバ5のCPU501によって実行される部隊の編成に関わる処理手順の一例について説明する。
ステップS5では、サーバ5は、部隊編成処理部29により、部隊編成画面を表示する。この部隊編成画面は、プレイヤの所定の操作入力により、合戦中及び合戦以外を含む任意のタイミングで開くことが可能である。
ステップS10では、サーバ5は、部隊の編成を変更するか否かを、プレイヤの操作入力に基づいて判定する。例えば、プレイヤがいずれかの枠に対応付けられた家臣を変更するための操作入力や、陣形を変更するための操作入力を行った場合等には(ステップS10:YES)、次のステップS15に移動する。一方、上記のような操作入力がない場合には(ステップS10:NO)、本フローを終了する。
ステップS15では、サーバ5は、家臣を変更するか否かを、プレイヤの操作入力に基づいて判定する。プレイヤが家臣を変更するための操作入力を行った場合には(ステップS15:YES)、次のステップS20に移動する。一方、上記のような操作入力がない場合には(ステップS15:NO)、後述のステップS35に移動する。
ステップS20では、サーバ5は、第1編成変更処理部43により、プレイヤの操作入力に基づいて所定の枠に対応付けられた家臣を他の家臣に変更する。
ステップS25では、サーバ5は、属性設定処理部31、家臣パラメータ特定処理部33、反映度設定処理部35、部隊パラメータ決定処理部37、陣形設定処理部39、陣形選択処理部41により、上記ステップS20で変更された家臣の家臣パラメータを、部隊パラメータに反映させる。
ステップS30では、サーバ5は、第1確認表示処理部45により、上記ステップS25による反映前(家臣変更前)の部隊パラメータ及び上記ステップS25による反映後(家臣変更後)の部隊パラメータの両方を比較可能に確認表示する。
ステップS35では、サーバ5は、陣形を変更するか否かを、プレイヤの操作入力に基づいて判定する。プレイヤが陣形を変更するための操作入力を行った場合には(ステップS35:YES)、次のステップS40に移動する。一方、上記のような操作入力がない場合には(ステップS35:NO)、本フローを終了する。
ステップS40では、サーバ5は、第2編成変更処理部47により、プレイヤの操作入力に基づいて陣形を他の陣形に変更する。
ステップS45では、サーバ5は、属性設定処理部31、家臣パラメータ特定処理部33、反映度設定処理部35、部隊パラメータ決定処理部37、陣形設定処理部39、陣形選択処理部41により、上記ステップS40で変更された陣形を、部隊パラメータに反映させる。
ステップS50では、サーバ5は、第2確認表示処理部49により、上記ステップS45による反映前(陣形変更前)の部隊パラメータ及び上記ステップS45による反映後(陣形変更後)の部隊パラメータの両方を比較可能に確認表示する。そして、本フローを終了する。
なお、上記では部隊の編成を変更する場合について説明したが、新規に部隊を編成する場合(例えば空の枠に家臣を設定していく場合等)についても、上記と同様の処理が実行される。但しこの場合には、上記ステップS30及びステップS50については省略される。
なお、上述した処理手順は一例であって、上記手順の少なくとも一部を削除又は変更してもよいし、上記以外の手順を追加してもよい。また、上記手順の少なくとも一部の順番を変更してもよいし、複数の手順が単一の手順にまとめられてもよい。
<5.部隊の移動指示に関わるサーバの機能的構成>
本実施形態に係るゲームでは、各プレイヤは、合戦中の入力フェイズにおいて、自分の味方部隊9に対して直感的な操作で簡易且つ的確に移動の指示を与えることができる。次に、図12〜図17を用いて、サーバ5の機能的構成のうち、主として部隊の移動指示に関わる機能的構成の一例について説明する。
図12に示すように、サーバ5は、第1表示処理部77と、第3表示処理部79と、検出処理部81と、変動判定処理部83と、第1移動処理部85と、移動経路決定処理部87と、第2表示処理部89と、移動先決定処理部91と、第2移動処理部93と、指示取消処理部95を有する。
第1表示処理部77は、自分の味方部隊9(操作対象オブジェクトの一例)及び当該味方部隊9の移動先を指示するためのカーソル97(移動指示オブジェクトの一例)をタッチパネル7に表示する。自分の味方部隊9は、合戦マップ画面において移動指示が行われ移動指示画面の表示となった際に、タッチパネル7の略中央位置を初期位置として表示され、カーソル97は例えば味方部隊9上を初期位置として表示される。なお、タッチパネル7上の他の位置を味方部隊9やカーソル97の初期位置としてもよい。
第3表示処理部79は、自分の味方部隊9の移動可能範囲99を表示する。移動可能範囲99は、例えば味方部隊9の表示位置を中心とし、当該味方部隊9の移動可能距離を半径とする円として描画される。但し、円以外の図形として描画されてもよい。移動可能距離は、各部隊に対して部隊パラメータの1つとして設定されている。
図13に、移動指示画面の一例を示す。この移動指示画面は、例えば合戦マップ画面において「移動」ボタン23(図3参照)がタッチされた場合に表示される。図13に示すように、第1表示処理部77により、移動指示画面の略中央位置には自分の味方部隊9がオブジェクト17と共に表示されている。また、第1表示処理部77により、味方部隊9上に移動先を指示するためのカーソル97が表示されている。なお、図13に示す例ではカーソル97は旗の図形として描画されているが、他の図形としてもよい。また、第3表示処理部79により、味方部隊9の移動可能範囲99が、味方部隊9の初期位置を中心とする円として表示されている。
図12に戻り、検出処理部81は、タッチパネル7に対するタッチ(接触)を検出する。ここでいうタッチには、接触の検出が開始されてから終了するまでの間にタッチパネル上での位置変動がないタッチ(いわゆるタップ、クリック等。以下適宜「タップ操作」という)や、接触が開始されてから終了するまでの間にタッチパネル上での位置変動があるタッチ(いわゆるスワイプ、ドラッグ、フリック、スライド等。以下適宜「スワイプ操作」という)が含まれる。
変動判定処理部83は、タッチの検出が開始されてから終了するまでの間のタッチ位置(接触が検出された位置)の変動の有無を判定する。すなわち、変動判定処理部83は、上記検出処理部81により検出されたタッチがタップ操作であるかスワイプ操作であるかを判定する。
第1移動処理部85は、上記変動判定処理部83によりタッチ位置の変動が無いと判定された場合、すなわちプレイヤによりタップ操作が行われた場合には、第1表示処理部77により表示されたカーソル97をタッチ位置(タップ位置)に配置する。また、第1移動処理部85は、上記変動判定処理部83によりタッチ位置の変動があると判定された場合、すなわちプレイヤによりスワイプ操作が行われた場合には、第1表示処理部77により表示されたカーソル97をタッチ位置の変動に基づいて移動させる。
移動経路決定処理部87は、味方部隊9の表示位置とカーソル97の表示位置とに基づいて、味方部隊9の移動距離が最短となるように移動経路を決定する。したがって、原則として移動経路は直線となるが、味方部隊9の表示位置とカーソル97の表示位置の間に味方部隊9が進入できない進入不可領域101が存在する場合、移動経路決定処理部87は移動経路を進入不可領域101を迂回しつつ移動距離が最短となるように決定する。進入不可領域101は、例えば山、海、川、岩、樹木等の地形的な要因により進入できない領域や、敵の陣、砦等の建築物により進入できない領域等である。
第2表示処理部89は、上記移動経路決定処理部87により決定された経路を移動経路103として表示する。
図14に、プレイヤがタップ操作を行った際の移動指示画面の一例を示す。図14に示すように、プレイヤが指105により移動可能範囲99内の任意の位置をタップ操作した場合、第1移動処理部85によりカーソル97が当該タップ位置に配置される。言い換えると、カーソル97が初期位置(味方部隊9上の位置)からタップ位置に瞬間的に移動する。プレイヤはタップ操作を何度でも行うことが可能であり、その都度カーソル97がタップ位置に配置される。なお、プレイヤが移動可能範囲99の外部をタップした場合には、後述の図18に示すようにカーソル97が配置されない(初期位置から移動しない)ようにしてもよいし、移動可能範囲99内で当該タップ位置に最も近い位置を検出してカーソル97を配置してもよい。
また図14に示す例では、味方部隊9とタップにより配置されたカーソル97との間に進入不可領域101が存在しないため、移動経路決定処理部87により味方部隊9とカーソル97を結ぶ直線が移動経路として決定され、第2表示処理部89により当該経路が移動経路103として表示されている。
図15に、プレイヤがスワイプ操作を行った際の移動指示画面の一例を示す。なお、図15は、上記図14に示すタップ位置にカーソル97を配置した状態からスワイプ操作を行う場合を示している。図15に示すように、プレイヤが指105によりタッチパネル7上の任意の位置でスワイプ操作を行った場合、第1移動処理部85によりカーソル97がスワイプの動作に応じて移動する。すなわち、カーソル97は表示されている位置からスワイプ操作におけるタッチ位置の変動と略同じ軌跡を描くように移動する。
なお、スワイプ操作を行う位置は移動可能範囲99の内部でも外部でもよい。また、プレイヤはスワイプ操作を何度でも行うことが可能であり、その都度カーソル97がスワイプの動作に応じて移動する。さらに、プレイヤはタップ操作とスワイプ操作を適宜織り交ぜながら何度も繰り返すことが可能である。例えば、1回又は複数回のタップ操作により適宜の位置に仮配置したカーソル97を1回又は複数回のスワイプ操作により微調整し、その後、再度1回又は複数回のタップ操作により別の位置にカーソル97を仮配置し、1回又は複数回のスワイプ操作により微調整する、といったことが可能である。なお、カーソル97が移動可能範囲99の外部に移動するようなスワイプ操作が行われた場合には、カーソル97を移動可能範囲99の縁で停止させてもよいし、スワイプ操作の開始前の位置に戻してもよい。
なお、図15ではタップ操作により仮配置したカーソル97をさらにスワイプ操作によって移動させる場合を示したが、タップ操作を行わずに、初期位置に表示されたカーソル97を直接スワイプ操作で移動させることも可能である。この場合も、プレイヤはタッチパネル7上の任意の位置でスワイプ操作を行えばよい。
また、移動経路決定処理部87により、スワイプの動作に応じて移動するカーソル97と味方部隊9とを結ぶ直線が移動経路として決定され、第2表示処理部89により当該移動経路103が移動しながら表示される。
図12に戻り、移動先決定処理部91は、プレイヤの操作入力に基づいて味方部隊9の移動先をカーソル97の表示位置に決定する。また、第2移動処理部93は、上記移動先決定処理部91により移動先が決定された場合に、味方部隊9をカーソル97の表示位置に移動させる。
指示取消処理部95は、プレイヤの操作入力に基づいてカーソル97による移動先の指示を取り消す。この場合、上記第1移動処理部85は、カーソル97を味方部隊9の表示位置に配置する。すなわちカーソル97が初期位置に戻される。
図16に、移動指示が完了した際の移動指示画面の一例を示す。図16に示すように、移動指示画面の下部には、「指示完了」ボタン107と「指示取消」ボタン109が表示されている。プレイヤがタップ操作やスワイプ操作によりカーソル97を所望の位置に移動させた後に「指示完了」ボタン107にタッチすると、移動先決定処理部91により味方部隊9の移動先がカーソル97の表示位置に決定される。これにより、図16に示すように、第2移動処理部93によって味方部隊9が決定された移動先に移動される。
一方、プレイヤがタップ操作やスワイプ操作によりカーソル97を所望の位置に移動させた後に「指示取消」ボタン109にタッチすると、第1移動処理部85によりカーソル97が初期位置に戻され、前述の図13に示す画面表示となる。これにより、その後カーソル97を用いて移動先の指示を再度やり直したり、移動以外の指示入力(例えば計略や陣設営等)を行うことができる。
図17に、味方部隊9とカーソル97の間に進入不可領域101が存在する場合の移動指示画面の一例を示す。図17に示す例では、味方部隊9とカーソル97の間に進入不可領域101(この例では川)が存在している。このため、移動経路103は進入不可領域101を迂回して橋を渡りつつ移動距離が最短となるように決定されている。このとき、移動経路103は迂回した分距離が長くなるため、例えばカーソル97が移動可能範囲99の縁近傍に配置されたような場合には、移動経路103が味方部隊9の移動可能距離よりも大きくなる場合がある。このような場合には、図17に示すように、移動経路103がカーソル97まで届かずにその途中までの経路として表示される。
なお、以上説明した各処理部における処理等は、これらの処理の分担の例に限定されるものではなく、例えば、更に少ない数の処理部(例えば1つの処理部)で処理されてもよく、また、更に細分化された処理部により処理されてもよい。また、上述した各処理部の機能は、後述するCPU501(後述の図23参照)が実行するゲームプログラムにより実装されるものであるが、例えばその一部がASICやFPGA等の専用集積回路、その他の電気回路等の実際の装置により実装されてもよい。さらに、以上説明した各処理部は、全部がサーバ5側に実装される場合に限定されるものではなく、その一部又は全部が端末装置3側に実装されてもよい。
<6.サーバが実行する部隊の移動指示に関わる処理手順>
次に、図18を用いて、サーバ5のCPU501によって実行される部隊の移動指示に関わる処理手順の一例について説明する。
ステップS105では、サーバ5は、第1表示処理部77により、カーソル97をタッチパネル7上の初期位置(自分の味方部隊9上の位置)に表示する。
ステップS110では、サーバ5は、第3表示処理部79により、味方部隊9の移動可能範囲99をタッチパネル7に表示する。
ステップS115では、サーバ5は、検出処理部81により、タッチパネル7に対するタッチの有無を判定する。タッチが検出されない場合には(ステップS115:NO)、後述のステップS145に移動する。一方、タッチが検出された場合には(ステップS115:YES)、次のステップS120に移る。
ステップS120では、サーバ5は、変動判定処理部83により、上記ステップS115で検出されたタッチがタップ操作であるかスワイプ操作であるかを判定する。タップ操作である場合には、次のステップS123に移る。
ステップS123では、サーバ5は、上記タッチが検出された位置が移動可能範囲99内であるか否かを判定する。検出位置が移動可能範囲99外である場合には(ステップS123:NO)、先のステップS115に戻る。一方、検出位置が移動可能範囲99内である場合には(ステップS123:YES)、次のステップS125に移る。
ステップS125では、サーバ5は、第1移動処理部85により、カーソル97をタップ位置に配置する。言い換えると、上記ステップS105で初期位置に表示されたカーソル97をタップ位置に瞬間的に移動する。その後、後述のステップS135に移る。
なお、上記ステップS120において、検出されたタッチがスワイプ操作である場合には、次のステップS130に移る。
ステップS130では、サーバ5は、第1移動処理部85により、カーソル97をスワイプ操作に対応するように移動させる。その後、次のステップS135に移る。
ステップS135では、サーバ5は、移動経路決定処理部87により、味方部隊9の表示位置とカーソル97の表示位置とに基づいて、味方部隊9の移動距離が最短となるように移動経路を決定する。
ステップS140では、サーバ5は、第2表示処理部89により、上記ステップS135で決定された移動経路103をタッチパネル7に表示する。
ステップS145では、サーバ5は、指示取消処理部95により、カーソル97による移動先の指示を取り消すか否かを判定する。プレイヤにより「指示取消」ボタン109がタッチされた場合には(ステップS145:YES)、先のステップS105に戻る。その結果、カーソル97が初期位置に戻される。一方、プレイヤにより「指示取消」ボタン109がタッチされなかった場合には(ステップS145:NO)、次のステップS150に移る。
ステップS150では、サーバ5は、移動先決定処理部91により、味方部隊9の移動先の指示を完了するか否かを判定する。プレイヤにより「指示完了」ボタン107がタッチされなかった場合には(ステップS150:NO)、先のステップS115に戻る。一方、プレイヤにより「指示完了」ボタン107がタッチされた場合には(ステップS150:YES)、次のステップS155に移る。
ステップS155では、サーバ5は、第2移動処理部93により、味方部隊9をカーソル97の表示位置に移動させる。その後、本フローを終了する。
なお、上述した処理手順は一例であって、上記手順の少なくとも一部を削除又は変更してもよいし、上記以外の手順を追加してもよい。また、上記手順の少なくとも一部の順番を変更してもよいし、複数の手順が単一の手順にまとめられてもよい。
例えば、以上では移動指示画面において最初にカーソル97が初期位置に表示され、タップ操作やスワイプ操作でカーソル97を移動するようにしたが、例えば移動指示画面において最初はカーソル97が表示されておらず、タップ操作が行われた際に初めてカーソル97が表示されるようにしてもよい。
<7.制御モードの切替に関わるサーバの機能的構成>
本実施形態に係るゲームには、手動制御モードと自動制御モードが実装されており、各プレイヤは自動制御モードを使用することで、合戦に参加する他のプレイヤに迷惑をかけることなくゲームを進行することができる。次に、図19〜図21を用いて、サーバ5の機能的構成のうち、主として制御モードの切替に関わる機能的構成の一例について説明する。
図19に示すように、サーバ5は、ゲーム実行処理部111と、操作有無判定処理部113と、モード切替処理部115と、自動制御表示処理部117と、第1切替操作判定処理部119と、第2切替操作判定処理部121を有する。
ゲーム実行処理部111は、プレイヤの操作入力に基づいてゲームを進行させる手動制御モード、又は、プレイヤの操作入力なしにゲームを進行させる自動制御モード、にてゲームを実行する。本実施形態に係るゲームでは、プレイヤの操作入力なしに合戦を自動的に進行させる自動制御モードが実装されている。この自動制御モードについては、どのように合戦を進めるか(例えば攻撃重視、守備重視、計略重視等)をプレイヤが設定できるようにしてもよい。
操作有無判定処理部113は、所定の設定時間が経過するまでの間にプレイヤによる何らかの操作入力を検出したか否かを判定する。所定の設定時間は、例えば最後の操作入力が行われてからの経過時間として設定されてもよいし、例えばゲーム中の所定のイベントからの経過時間(あるいは所定のイベントが発生するまでの時間)として設定されてもよい。
モード切替処理部115は、手動制御モードと自動制御モードを切り替える処理を行う。特に、上記操作有無判定処理部113により何らの操作入力も検出されていないと判定された場合に、手動制御モードから自動制御モードに切り替える。
自動制御表示処理部117は、上記モード切替処理部115により手動制御モードから自動制御モードに切り替えられた場合に、自動制御に切り替えた旨の表示を行う。
図20に、合戦中に一定時間操作がなかった場合における上記自動制御に切り替えた旨の表示の一例を示す。図20に示す例では、合戦マップ画面上に自動制御に切り替えた旨のポップアップウィンドウ123が表示されている。なお、ポップアップウィンドウとはコンピュータの操作画面で最前面に飛び出すように現れるウィンドウである。つまり、手動制御モードにおいて合戦中に一定時間操作がなかった場合、モード切替処理部115により手動制御モードから自動制御モードに自動的に切り替えられ、その上で自動制御表示処理部117により上記ポップアップウィンドウ123が表示される。なお、ポップアップウィンドウ123にはOKボタン125が表示されており、プレイヤはOKボタン125にタッチすることによりポップアップウィンドウ123を消去することができる。またその際、タッチパネル7に表示される画面は、合戦マップ画面からゲーム内の他の画面(合戦関係以外の画面)に自動的に遷移する。
図19に戻り、第1切替操作判定処理部119は、上記設定時間が経過するまでの間に、プレイヤによる自動制御モードへ切り替えるための所定の第1操作入力を検出したか否かを判定する。第1操作入力は、例えば合戦マップ画面やその他の合戦関係の画面から、ゲーム内の他の画面(例えば内政を行うための画面等)へ遷移させる操作等である。なお、第1操作入力を上記以外の操作入力としてもよい。第1切替操作判定処理部119により上記第1操作入力が検出されたと判定された場合には、上記モード切替処理部は、手動制御モードから自動制御モードに切り替える。またこの際には、自動制御表示処理部117により自動制御に切り替えた旨の表示が行われる。
図21に、合戦中に上記第1操作入力が行われた場合における上記自動制御に切り替えた旨の表示の一例を示す。図21に示す例では、合戦関係の画面から遷移された例えば内政を行うための画面上に自動制御に切り替えた旨のポップアップウィンドウ127が表示されている。なお、内政とは例えば領地の発展のために領地に施設や区画を作成したりすることをいう。つまり、プレイヤは第1操作入力を行うことにより、合戦中の任意のタイミング(入力フェイズでも解決フェイズでもよい)で手動制御モードから自動制御モードに切り替えることが可能であり、その際には上記ポップアップウィンドウ127が表示される。なお、ポップアップウィンドウ127にはOKボタン129が表示されており、プレイヤはOKボタン129にタッチすることによりポップアップウィンドウ127を消去することができる。
なお、プレイヤは、第1操作入力として、上記の合戦関係の画面からゲーム内の他の画面へ遷移させる操作以外にも、例えばゲーム実行中のウェブブラウザを閉じる又は他のブラウザに切り替える等の操作入力によっても、手動制御モードから自動制御モードに切り替えることが可能である。但し、その場合には上記ポップアップウィンドウは表示されない。
図19に戻り、第2切替操作判定処理部121は、自動制御モードにおいて、プレイヤによる手動制御モードへ切り替えるための所定の第2操作入力を検出したか否かを判定する。第2操作入力は、例えばゲーム内の合戦関係以外の画面(例えば内政を行うための画面等)から、合戦マップ画面やその他の合戦関係の画面へ遷移させる操作等である。また、上記のようにウェブブラウザを閉じる又は他のブラウザに切り替える操作により自動制御モードとなっている場合には、ウェブブラウザを起動してゲームを実行した上で、合戦関係の画面へ遷移する操作等である。なお、第2操作入力を上記以外の操作入力としてもよい。第2切替操作判定処理部121により上記第2操作入力が検出されたと判定された場合には、モード切替処理部115は、自動制御モードから手動制御モードに切り替える。
なお、以上説明した各処理部における処理等は、これらの処理の分担の例に限定されるものではなく、例えば、更に少ない数の処理部(例えば1つの処理部)で処理されてもよく、また、更に細分化された処理部により処理されてもよい。また、上述した各処理部の機能は、後述するCPU501(後述の図23参照)が実行するゲームプログラムにより実装されるものであるが、例えばその一部がASICやFPGA等の専用集積回路、その他の電気回路等の実際の装置により実装されてもよい。さらに、以上説明した各処理部は、全部がサーバ5側に実装される場合に限定されるものではなく、その一部又は全部が端末装置3側に実装されてもよい。
<8.サーバが実行する制御モードの切替に関わる処理手順>
次に、図22を用いて、サーバ5のCPU501によって実行される制御モードの切替に関わる処理手順の一例について説明する。
ステップS205では、サーバ5は、ゲーム実行処理部111により、制御モードが手動制御モードであるか自動制御モードであるかを判定する。手動制御モードである場合には、次のステップS210に移り、手動制御モードにてゲームを実行する。
ステップS215では、サーバ5は、第1切替操作判定処理部119により、プレイヤによる第1操作入力、ここではウェブブラウザを閉じる又は他のブラウザに切り替える操作入力が検出されたか否かを判定する。上記操作入力が検出された場合には(ステップS215:YES)、次のステップS220に移り、モード切替処理部115により、手動制御モードから自動制御モードに切り替える。その後、後述のステップS265に移る。
一方、上記ステップS215において、上記操作入力が検出されなかった場合には(ステップS215:NO)、次のステップS225に移る。
ステップS225では、サーバ5は、第1切替操作判定処理部119により、プレイヤによる第1操作入力、ここでは合戦関係の画面からゲーム内の他の画面へ遷移させる操作入力が検出されたか否かを判定する。上記操作入力が検出された場合には(ステップS225:YES)、後述のステップS240に移る。一方、上記操作入力が検出されなかった場合には(ステップS225:NO)、次のステップS230に移る。
ステップS230では、サーバ5は、操作有無判定処理部113により、プレイヤによる上記第1操作入力以外の何らかの操作入力が検出されたか否かを判定する。何らかの操作入力が検出された場合には(ステップS230:YES)、後述のステップS265に移る。一方、何らの操作入力も検出されなかった場合には(ステップS230:NO)、次のステップS235に移る。
ステップS235では、サーバ5は、操作有無判定処理部113により、所定の設定時間が経過したか否かを判定する。設定時間が経過していない場合には(ステップS235:NO)、後述のステップS265に移る。一方、何らの操作入力も検出されないまま設定時間が経過した場合には(ステップS235:YES)、次のステップS240に移る。
ステップS240では、サーバ5は、モード切替処理部115により、手動制御モードから自動制御モードに切り替える。
ステップS245では、サーバ5は、自動制御表示処理部117により、自動制御に切り替えた旨のポップアップ表示を行う。その後、後述のステップS265に移る。
なお、サーバ5は、先のステップS205において自動制御モードである場合には、次のステップS250に移り、ゲーム実行処理部111により自動制御モードにてゲームを実行する。
ステップS255では、サーバ5は、第2切替操作判定処理部121により、プレイヤによる第2操作入力、ここではゲーム内の合戦関係以外の画面から合戦関係の画面へ遷移させる操作入力や、ウェブブラウザを起動してゲームを実行し、合戦関係の画面へ遷移する操作入力が検出されたか否かを判定する。上記操作入力が検出された場合には(ステップS255:YES)、次のステップS260に移り、モード切替処理部115により、自動制御モードから手動制御モードに切り替える。その後、後述のステップS265に移る。一方、上記操作入力が検出されなかった場合には(ステップS255:NO)、次のステップS265に移る。
ステップS265では、サーバ5は、プレイヤによるゲームの終了操作を検出したか否かを判定する。終了操作を検出していない場合には(ステップS265:NO)、先のステップS205に戻り、同様の手順を繰り返す。一方、終了操作を検出した場合には(ステップS265:YES)、本フローを終了する。
なお、上述した処理手順は一例であって、上記手順の少なくとも一部を削除又は変更してもよいし、上記以外の手順を追加してもよい。また、上記手順の少なくとも一部の順番を変更してもよいし、複数の手順が単一の手順にまとめられてもよい。
<9.サーバのハードウェア構成>
次に、図23を用いて、上記で説明したCPU501が実行するプログラムにより実装された各処理部を実現するサーバ5のハードウェア構成の一例について説明する。なお、端末装置3が同様のハードウェア構成を有してもよい。
図23に示すように、サーバ5は、例えば、CPU501と、ROM503と、RAM505と、GPU506と、例えばASIC又はFPGA等の特定の用途向けに構築された専用集積回路507と、入力装置513と、出力装置515と、記録装置517と、ドライブ519と、接続ポート521と、通信装置523を有する。これらの構成は、バス509や入出力インターフェース511等を介し相互に信号を伝達可能に接続されている。
ゲームプログラムは、例えば、ROM503やRAM505、記録装置517等に記録しておくことができる。
また、ゲームプログラムは、例えば、フレキシブルディスクなどの磁気ディスク、各種のCD、MOディスク、DVD等の光ディスク、半導体メモリ等のリムーバブルな記録媒体525に、一時的又は永続的(非一時的)に記録しておくこともできる。このような記録媒体525は、いわゆるパッケージソフトウエアとして提供することもできる。この場合、これらの記録媒体525に記録されたゲームプログラムは、ドライブ519により読み出されて、入出力インターフェース511やバス509等を介し上記記録装置517に記録されてもよい。
また、ゲームプログラムは、例えば、ダウンロードサイト、他のコンピュータ、他の記録装置等(図示せず)に記録しておくこともできる。この場合、ゲームプログラムは、LANやインターネット等のネットワークNWを介し転送され、通信装置523がこのプログラムを受信する。そして、通信装置523が受信したプログラムは、入出力インターフェース511やバス509等を介し上記記録装置517に記録されてもよい。
また、ゲームプログラムは、例えば、適宜の外部接続機器527に記録しておくこともできる。この場合、ゲームプログラムは、適宜の接続ポート521を介し転送され、入出力インターフェース511やバス509等を介し上記記録装置517に記録されてもよい。
そして、CPU501が、上記記録装置517に記録されたプログラムに従い各種の処理を実行することにより、前述の部隊編成処理部29、第1表示処理部77、ゲーム実行処理部111等による処理が実現される。この際、CPU501は、例えば、上記記録装置517からプログラムを、直接読み出して実行してもよく、RAM505に一旦ロードした上で実行してもよい。更にCPU501は、例えば、プログラムを通信装置523やドライブ519、接続ポート521を介し受信する場合、受信したプログラムを記録装置517に記録せずに直接実行してもよい。
また、CPU501は、各端末装置3のタッチパネル7からネットワークNWを介して入力される信号に加えて、必要に応じて、例えばマウス、キーボード、マイク等の入力装置513から入力する信号や情報に基づいて各種の処理を行ってもよい。
GPU506は、CPU501からの指示に応じて例えばレンダリング処理などの画像表示のための処理を行う。
そして、CPU501及びGPU506は、上記の処理を実行した結果を、ネットワークNWを介して各端末装置3のタッチパネル7に出力すると共に、必要に応じて、例えばスピーカーやヘッドフォン等の音声出力部(図示せず)を含む、出力装置515から出力する。さらにCPU501及びGPU506は、必要に応じてこの処理結果を通信装置523や接続ポート521を介し送信してもよく、上記記録装置517や記録媒体525に記録させてもよい。
<10.実施形態の効果>
本実施形態のゲームプログラムは、サーバ5を、複数の家臣を複数の枠にそれぞれ対応付けて味方部隊9を編成する部隊編成処理部29、複数の枠のそれぞれに属性を設定する属性設定処理部31、属性に基づいて、家臣の能力値を表す複数の家臣パラメータの中から、味方部隊9の能力値を表す部隊パラメータに反映させる少なくとも1つの家臣パラメータを特定する家臣パラメータ特定処理部33、家臣パラメータ特定処理部33により特定された各家臣の家臣パラメータに基づいて、部隊パラメータを決定する部隊パラメータ決定処理部37、として機能させる。
これにより、例えば特定の能力に特化した家臣を、その能力が部隊パラメータに反映されるような属性が設定された枠に対応付けて味方部隊9を編成することにより、部隊パラメータを高めることができる。また、例えば複数の能力がバランス良く高い家臣を、それらの能力がバランス良く部隊パラメータに反映されるような属性が設定された枠に当該家臣を対応付けて味方部隊9を編成することにより、部隊パラメータを高めることができる。このようにして、部隊編成において家臣を対応付ける枠を戦術的に組み立てることにより、味方部隊9の能力を戦局が有利になるように高めることが可能となるので、戦略性を向上できる。また、家臣の能力を有効活用することが可能となるので、多様な能力を備えた多くの家臣を収集する意味合いが強化される。その結果、プレイヤに新たな家臣を得ようという意欲や、各家臣の固有の能力について強化、育成しようという意欲を湧かせることが可能となり、ゲームの興趣性を向上できる。
また、本実施形態では特に、ゲームプログラムは、サーバ5を、属性に基づいて、家臣パラメータ特定処理部33により特定された家臣パラメータを部隊パラメータへ反映させる度合いを表す反映度を設定する反映度設定処理部35、としてさらに機能させ、部隊パラメータ決定処理部37は、反映度設定処理部35により設定された反映度と、家臣パラメータ特定処理部33により特定された各家臣の家臣パラメータとに基づいて、部隊パラメータを決定する。
これにより、例えば家臣パラメータの特定の項目についてその全部を部隊パラメータの対応する項目に反映させたり、例えば家臣パラメータの複数の項目についてその一部を部隊パラメータの対応する各項目にバランス良く反映させたりといったように、家臣パラメータの部隊パラメータへの反映のさせ方をより詳細に設定することが可能となる。その結果、部隊編成において家臣を対応付ける枠をより戦術的に組み立てることが可能となるので、戦略性をさらに向上できる。
また、本実施形態では特に、ゲームプログラムは、サーバ5を、部隊編成処理部29による味方部隊9の編成中に、プレイヤの操作入力に基づいて所定の枠に対応付けられた家臣を他の家臣に変更する第1編成変更処理部43、第1編成変更処理部43による変更前の部隊パラメータ及び変更後の部隊パラメータの両方を表示する第1確認表示処理部45、としてさらに機能させる。
これにより、プレイヤは味方部隊9の編成中に、所定の枠に対応付けられた家臣を他の家臣に自在に変更できる。またそのとき、家臣の変更前と変更後の部隊パラメータを参照できるので、家臣の変更が部隊パラメータにどのように反映されたかを確認できる。このようにして、所望の部隊パラメータが得られたかどうかを確認しながら何度も家臣を変更しつつ部隊編成を変更できるので、戦略性をさらに向上できると共に、プレイヤの利便性を向上できる。
また、本実施形態では特に、ゲームプログラムは、サーバ5を、属性が異なる複数種類の枠の配置態様を規定する複数種類の陣形を設定する陣形設定処理部39、陣形設定処理部39により設定された複数種類の陣形の中から、プレイヤの操作入力に基づいて陣形を選択する陣形選択処理部41、としてさらに機能させ、部隊編成処理部29は、複数の家臣を、陣形選択処理部41により選択された陣形により規定される複数の枠にそれぞれ対応付けて味方部隊9を編成する。
これにより、例えば「攻撃型」、「守備型」、「知略型」、「速さ型」等、それぞれに特色のある複数種類の陣形を設定しておくことで、プレイヤはそれらの中から戦局に応じた陣形を選択して味方部隊9を編成することが可能となる。例えば、敵部隊11の陣形が「攻撃型」である場合に「守備型」の陣形を選択したり、敵部隊11の陣形が「知略型」である場合に「攻撃型」の陣形を選択する等により、戦局を有利に進めることが可能となる。このようにして、戦略性をさらに向上できる。
また、本実施形態では特に、ゲームプログラムは、サーバ5を、部隊編成処理部29による味方部隊9の編成中に、プレイヤの操作入力に基づいて陣形を他の陣形に変更する第2編成変更処理部47、第2編成変更処理部47による変更前の部隊パラメータ及び変更後の部隊パラメータの両方を表示する第2確認表示処理部49、としてさらに機能させる。
これにより、プレイヤは味方部隊9の編成中に、陣形を他の陣形に自在に変更できる。またそのとき、陣形の変更前と変更後の部隊パラメータを参照できるので、陣形の変更が部隊パラメータにどのように反映されたかを確認できる。このようにして、所望の部隊パラメータが得られたかどうかを確認しながら何度も陣形を変更しつつ部隊編成を変更できるので、戦略性をさらに向上できると共に、プレイヤの利便性を向上できる。
また、本実施形態によれば、以上説明した効果以外にも、さらに次のような効果を得ることができる。
本実施形態のゲームプログラムは、タッチパネル7と信号の送受信を行うサーバ5を、タッチパネル7に対するタッチを検出する検出処理部81、タッチの検出が開始されてから終了するまでの間のタッチ位置の変動の有無を判定する変動判定処理部83、味方部隊9及び味方部隊9の移動先を指示するためのカーソル97をタッチパネル7に表示する第1表示処理部77、変動判定処理部83によりタッチ位置の変動が無いと判定された場合に、第1表示処理部77により表示されたカーソル97をタッチ位置に配置し、タッチ位置の変動があると判定された場合に、カーソル97をタッチ位置の変動に基づいて移動させる第1移動処理部85、として機能させる。
これにより、プレイヤはタッチパネル7の任意の位置にタップ操作を行うことにより、カーソル97を当該タップ位置に配置することができる。そして、タッチパネル7の任意の位置でスワイプ操作を行うことにより、上記タップ操作で所定の位置に配置されたカーソル97をスワイプ操作に応じて移動させることができる。したがって、プレイヤは味方部隊9の移動距離が長い場合でも、タップ操作で簡単にカーソル97を移動先に配置することができる。このようにしてカーソル97を容易に仮配置できる。また、このタップ操作を何度も行うことでカーソル97の配置を何度もやり直すことも可能である。さらに、プレイヤはカーソル97から離れた位置をスワイプ操作して当該カーソル97の移動を操作できるので、カーソル97やその周囲のオブジェクト、背景等を視認しながらカーソル97の移動を操作できる。これにより、タップ操作で仮配置したカーソル97を見ながらその位置を微調整することが可能となる。以上により、プレイヤが指で味方部隊9を移動させる際の視認性及び簡易性を向上できる。
また、本実施形態では特に、ゲームプログラムは、サーバ5を、プレイヤの操作入力に基づいて味方部隊9の移動先をカーソル97の表示位置に決定する移動先決定処理部91、移動先決定処理部91により移動先が決定された場合に、味方部隊9をカーソル97の表示位置に移動させる第2移動処理部93、としてさらに機能させる。
これにより、プレイヤは味方部隊9の移動操作(タップ操作、スワイプ操作)を完了した際に、簡易な操作で移動先を決定でき、速やかに味方部隊9を所望の位置に移動させることができる。したがって、プレイヤの利便性を向上できる。また、プレイヤが決定操作を行うまでは移動先が決定されないので、味方部隊9の移動操作を繰り返しつつ移動先を熟考することが可能となり、戦略性を向上できる。
また、本実施形態では特に、ゲームプログラムは、サーバ5を、プレイヤの操作入力に基づいてカーソル97による移動先の指示を取り消す指示取消処理部95、としてさらに機能させ、第1移動処理部85は、指示取消処理部95により移動先の指示が取り消された場合に、カーソル97を味方部隊9の表示位置に配置する。
これにより、例えばカーソル97の移動操作をやり直したい場合や、味方部隊9の移動自体を取りやめたいような場合に、プレイヤは簡易な操作で移動指示を取り消すことができ、カーソル97を初期位置(ターン開始時の味方部隊9の表示位置)に戻すことができる。したがって、プレイヤの利便性を向上できる。
また、本実施形態では特に、ゲームプログラムは、サーバ5を、味方部隊9の表示位置とカーソル97の表示位置とに基づいて、味方部隊9の移動距離が最短となるように移動経路を決定する移動経路決定処理部87としてさらに機能させる。
これにより、味方部隊9の移動経路は自動的に決定される。これにより、プレイヤはカーソル97により移動先のみを指示すればよく、その途中の経路については指示する必要がないので、プレイヤの利便性を向上できる。また、移動距離が最短となるように移動経路が決定されるので、味方部隊9の移動可能距離(部隊パラメータ)を有効に活用しつつ目的地への進行を早めることができる。
また、本実施形態では特に、移動経路決定処理部87は、味方部隊9の表示位置とカーソル97の表示位置との間に味方部隊9が進入できない進入不可領域101が存在する場合、移動経路を進入不可領域101を迂回しつつ移動距離が最短となるように決定する。
これにより、進行方向に進入不可領域101が存在する場合でも、プレイヤは移動先のみを指示すればよく、その途中の経路については指示する必要がないので、プレイヤの利便性を向上できる。また、移動距離が最短となるように移動経路が決定されるので、味方部隊9の移動可能距離(部隊パラメータ)を有効に活用しつつ目的地への進行を早めることができる。
また、本実施形態では特に、ゲームプログラムは、サーバ5を、移動経路決定処理部87により決定された移動経路103を表示する第2表示処理部89としてさらに機能させる。
これにより、プレイヤは自動的に設定された移動経路103を確認しつつカーソル97の移動を操作できるので、プレイヤの利便性を向上できる。例えば、進行方向に進入不可領域101が存在し迂回する経路となるような場合に、それを回避するように移動先を変更する等が可能となる。
また、本実施形態では特に、ゲームプログラムは、サーバ5を、味方部隊9の移動可能範囲99を表示する第3表示処理部79としてさらに機能させる。
これにより、プレイヤは表示された移動可能範囲99を参照することで、カーソル97を移動させることが可能な範囲を認識しつつ当該カーソル97の移動を操作できるので、プレイヤの利便性を向上できる。
また、本実施形態によれば、以上説明した効果以外にも、さらに次のような効果を得ることができる。
本実施形態のゲームプログラムは、サーバ5を、プレイヤの操作入力に基づいてゲームを進行させる手動制御モード、又は、プレイヤの操作入力なしにゲームを進行させる自動制御モード、にてゲームを実行するゲーム実行処理部111、所定の設定時間が経過するまでの間にプレイヤによる何らかの操作入力を検出したか否かを判定する操作有無判定処理部113、操作有無判定処理部113により何らの操作入力も検出されていないと判定された場合に、手動制御モードから自動制御モードに切り替えるモード切替処理部115、として機能させる。
例えばスマートフォン等の端末装置3を使用してオンラインゲームをプレイする場合、通信状態の悪化等の何らかの事情により制御モードの切替操作をすることができない場合が考えられる。また、プレイヤが制御モードの切替操作をし忘れることも考えられる。
本実施形態では、プレイヤの操作入力なしに設定時間が経過した場合に、自動的に手動制御モードから自動制御モードに切り替えることができる。したがって、複数のプレイヤによってリアルタイムにゲームが進行されるオンラインゲームにおいて、プレイヤの操作の中断がゲームの進行の妨げとなるのを防止でき、他のプレイヤに迷惑をかけることを防止できる。
また、本実施形態では特に、ゲームプログラムは、サーバ5を、モード切替処理部115により手動制御モードから自動制御モードに切り替えられた場合に、自動制御に切り替えた旨の表示を行う自動制御表示処理部117としてさらに機能させる。
これにより、プレイヤの操作の中断により自動的に自動制御モードに切り替わった場合に、プレイヤは自分のプレイヤキャラクタが自動制御されることでゲームの進行の妨げとなっていないことを確認することができる。したがって、プレイヤの安心感を向上できる。また、制御モードが切り替わったことを確認するための操作が不要であるため、利便性を向上できる。
また、本実施形態では特に、ゲームプログラムは、サーバ5を、設定時間が経過するまでの間に、プレイヤによる自動制御モードへ切り替えるための所定の第1操作入力を検出したか否かを判定する第1切替操作判定処理部119、としてさらに機能させ、モード切替処理部115は、第1切替操作判定処理部119により第1操作入力を検出したと判定された場合に、手動制御モードから自動制御モードに切り替える。
これにより、プレイヤの自発的な操作により任意のタイミングで手動制御モードから自動制御モードへ切り替えることができる。例えば、自宅でプレイしていて外出する際や、電車内でプレイしていて電車を降りる際等に、自発的に自動制御モードへ切り替えることができる。したがって、プレイヤの操作の中断がゲームの進行の妨げとなるのを確実に防止できると共に、プレイヤの利便性を高めることができる。
また、本実施形態では特に、第1切替操作判定処理部119は、第1操作入力として、ゲーム内における所定の合戦画面から他の画面への遷移を検出したか否かを判定し、モード切替処理部115は、第1切替操作判定処理部119により他の画面への遷移を検出したと判定された場合に、手動制御モードから自動制御モードに切り替える。
これにより、例えば味方部隊9に合戦を自動制御で行わせ、プレイヤ自身は合戦以外の画面を開いて他のこと(例えば内政画面を開いて領地を発展させる等)をすることが可能となる。したがって、プレイヤの利便性を高めることができる。
また、本実施形態では特に、ゲームプログラムは、サーバ5を、自動制御モードにおいて、プレイヤによる手動制御モードへ切り替えるための所定の第2操作入力を検出したか否かを判定する第2切替操作判定処理部121、としてさらに機能させ、モード切替処理部115は、第2切替操作判定処理部121により第2操作入力を検出したと判定された場合に、自動制御モードから手動制御モードに切り替える。
これにより、プレイヤの自発的な操作により任意のタイミングで自動制御モードから手動制御モードへ切り替えることができる。例えば、通信状態の悪化により自動的に自動制御モードに切り替わっていた場合に、その後通信状態が良好になった際にゲームに復帰することができる。また例えば、電車の乗り換え時に自発的に自動制御モードへ切り替えていたような場合に、乗り換え後の電車内でゲームに復帰することができる。このようにして、プレイヤの操作の中断がゲームの進行の妨げとなるのを確実に防止できると共に、プレイヤの利便性を高めることができる。
また、本実施形態では特に、第2切替操作判定処理部121は、第2操作入力として、ゲーム内における合戦画面以外の画面から所定の合戦画面への遷移を検出したか否かを判定し、モード切替処理部115は、第2切替操作判定処理部121により所定の合戦画面への遷移を検出したと判定された場合に、自動制御モードから手動制御モードに切り替える。
これにより、例えば味方部隊9に合戦を自動制御で行わせ、プレイヤ自身は合戦以外の画面を開いて他のこと(例えば内政画面を開いて領地を発展させる等)をしていたような場合に、任意のタイミングで合戦画面を開いて合戦に復帰することが可能となる。また例えば、自動制御モードでは合戦による経験値やアイテム、報酬等が取得できないようなゲームシステムである場合に、プレイヤは手動制御モードに切り替えることで経験値等を取得することが可能となる。したがって、プレイヤの利便性を高めることができる。
<11.変形例等>
なお、本発明は、上記の実施形態に限られるものではなく、その趣旨及び技術的思想を逸脱しない範囲内で種々の変形が可能である。
例えば、以上では、本発明が戦国シミュレーションゲームに適用される場合を一例に説明したが、その他のジャンルのゲーム、例えば、戦国系以外のシミュレーションゲーム、ロールプレイングゲーム、アクションゲーム、アドベンチャーゲーム、パズルゲーム、麻雀ゲーム等にも、本発明は適用可能である。
また、以上では、本発明をオンラインゲームに適用した場合について説明したが、例えば、部隊の編成や部隊の移動指示に関わる機能については、オフラインゲームにも適用可能である。
また、以上では、端末装置3が携帯型の端末装置である場合について説明したが、例えば、サーバコンピュータ、デスクトップ型コンピュータ、ノート型コンピュータ等や、据え置き型のゲーム機等でもよい。
また、以上既に述べた以外にも、上記実施形態や各変形例による手法を適宜組み合わせて利用しても良い。その他、一々例示はしないが、上記実施形態や各変形例は、その趣旨を逸脱しない範囲内において、種々の変更が加えられて実施されるものである。