以下、本発明の実施形態の例を説明するが、本発明を適用可能な形態が以下の実施形態に限られないことは勿論である。
〔第1実施形態〕
図1は、本実施形態におけるゲームシステムの構成の一例を示す図である。本実施形態のゲームシステム1000は、通信回線9に接続することで相互にデータ通信が可能なサーバシステム1100及び複数のユーザ端末1500(1500a,1500b,…)を含むコンピュータシステムであり、ゲームコンテンツ(或いはゲームアプリケーションとも呼ばれる)を提供するコンテンツ提供システムである。
通信回線9は、データ通信が可能な通信路を意味する。すなわち、通信回線9とは、直接接続のための専用線(専用ケーブル)やイーサネット(登録商標)等によるLAN(Local Area Network)の他、電話通信網やケーブル網、インターネット等の通信網を含む意味であり、また、通信方法については有線/無線を問わない。
サーバシステム1100は、本体装置1101と、キーボード1106と、タッチパネル1108と、ストレージ1140とを有し、本体装置1101には制御基板1150を搭載する。
制御基板1150には、CPU(Central Processing Unit)1151やGPU(Graphics Processing Unit)、DSP(Digital Signal Processor)などの各種マイクロプロセッサ、VRAMやRAM,ROM等の各種ICメモリ1152、通信装置1153が搭載されている。なお、制御基板1150の一部又は全部は、ASIC(Application Specific Integrated Circuit)や、FPGA(Field-Programmable Gate Array)、SoC(System on a Chip)により実現するとしてもよい。
そして、サーバシステム1100は、制御基板1150が所定のプログラム及びデータに基づいて演算処理することにより、1)ユーザ登録等に係るユーザ管理機能と、2)登録ユーザであるプレーヤであるユーザ2(2a,2b,…)がユーザ端末1500(1500a,1500b,…)でゲームプレイするのに必要なデータを提供してユーザ端末1500(1500a,1500b,…)でのゲームの実行制御を管理するゲーム管理機能と、3)ゲームで利用可能な様々なアイテムをオンラインでユーザに販売するオンラインショッピング機能と、を実現する。つまり、本実施形態におけるゲームは、一種のクライアント・サーバ型のオンラインゲームとして実現される。
なお、サーバシステム1100は単体として記しているが、各機能を分担する複数のブレードサーバを搭載して相互に内部バスを介してデータ通信可能に接続した構成であっても良い。或いは、離れた場所に設置された独立した複数のサーバを、通信回線9を介してデータ通信させることで、全体としてサーバシステム1100として機能させる構成であっても良い。
ユーザ端末1500(1500a,1500b,…)は、プレーヤであるユーザ2(2a,2b,…)がゲームプレイのために個別に使用するコンピュータシステムであって、通信回線9を介してサーバシステム1100にアクセスしてオンラインゲームを実行できる電子装置(電子機器)であり、機能的に言えばゲーム装置となるものである。本実施形態のユーザ端末1500は、いわゆるスマートフォンと呼ばれる装置であるが、携帯型ゲーム装置や、ゲームコントローラ、パソコン、タブレット型コンピュータ、ウェアラブルコンピュータ、家庭用ゲーム装置、業務用ゲーム装置などでもよい。
図2は、本実施形態におけるユーザ端末1500の構成例を示す正面図である。
ユーザ端末1500は、方向入力キー1502と、ボタンスイッチ1504と、画像表示デバイス兼接触位置入力デバイスとして機能するタッチパネル1506と、スピーカ1510と、内蔵バッテリー1509と、マイク1512と、イメージセンサユニット1520と、制御基板1550と、コンピュータ読み出し可能な記憶媒体であるメモリカード1540からデータを読み書きできるメモリカード読取装置1542と、を備える。その他、図示されていない電源ボタン、音量調節ボタン等が設けられている。また、ゲームプレイの対価の支払いが可能なICカード型のクレジットカードやプリペイドカードに対して非接触にデータの読み書きが行えるICカード読取装置などを設けるとしてもよい。
制御基板1550は、CPU1551やGPU,DSPなどの各種マイクロプロセッサ、VRAMやRAM,ROM等の各種ICメモリ1552、通信回線9に接続する携帯電話基地局や無線LAN基地局などと無線通信するための無線通信モジュール1553、インターフェース回路1557などを搭載する。
インターフェース回路1557には、タッチパネル1506のドライバ回路、方向入力キー1502及びボタンスイッチ1504からの信号を受信する回路、スピーカ1510へ音声信号を出力する出力アンプ回路、マイク1512で集音した音声の信号を生成する入力信号生成回路、イメージセンサユニット1520で撮影された画像の画像データを入力する回路、メモリカード読取装置1542への信号入出力回路、などが含まれている。
制御基板1550に搭載されているこれらの要素は、バス回路などを介して電気的に接続され、データの読み書きや信号の送受信が可能に接続されている。なお、制御基板1550の一部又は全部をASICやFPGA、SoCにて構成してもよい。そして、制御基板1550は、本実施形態のゲームのユーザ端末としての機能を実現させるためのプログラムや各種データをICメモリ1552に記憶する。
なお、本実施形態では、ユーザ端末1500はクライアントプログラムや各種設定データをサーバシステム1100からダウンロードする構成としているが、別途入手したメモリカード1540などの記憶媒体から読み出す構成としてもよい。
[ゲームの説明]
本実施形態は、オンラインゲームであって、プレーヤがメインキャラクタ(主に操作するプレイアブル・キャラクタの意)であるプレーヤキャラクタを操作しつつ、味方NPCであるサブキャラクタを使用し、ゲーム空間で敵キャラクタと対戦するゲームである。
図3は、ゲームの前提と、ゲームをプレイするための準備操作について説明するための図である。
先ず、ゲームの前提として、プレーヤであるユーザ2は、ゲーム媒体として、メインキャラクタ3(3a,3b,…)と、サブキャラクタ5(5a,5b,…)と、格納オブジェクト7(7a,7b,…)と、を所有することができる。ここで言う所有とは、当該ゲーム媒体をゲーム内で使用する権利である使用権を有するという意味である。
メインキャラクタ3は、プレーヤであるユーザ2の代理としてゲーム空間に存在するプレーヤキャラクタの候補となるキャラクタである。アバターキャラクタの候補とも言える。
サブキャラクタ5は、プレーヤキャラクタの味方のNPC(ノン・プレイアブル・キャラクタ:コンピュータにより自動制御されるキャラクタの意。)である。
格納オブジェクト7は、サブキャラクタ5を格納することができるオブジェクトである。格納といってもゲーム上の仮想的な格納を意味しており、本実施形態ではゲーム上、サブキャラクタ5を仮想的に縮小して格納でき、また格納後は再び開放することができるオブジェクトとする。格納オブジェクト7の形態は、瓶やカプセル、箱、袋、などとして表現される。
メインキャラクタ3(3a,3b,…)、サブキャラクタ5(5a,5b,…)、格納オブジェクト7(7a,7b,…)は、それぞれ複数種類が予め用意されており、プレーヤであるユーザ2は、ゲームプレイに先立ってそれらの一つ又は複数を入手・所有する。例えば、初期設定で予め付与されるほか、オンラインショッピングで購入することもできる。また、ゲームを進めるうちに獲得状況に至った場合に獲得することができる。
ゲームプレイに当たっては、プレーヤであるユーザ2は事前に幾つかの準備操作を行う。
本実施形態の準備操作には、プレイするゲーム空間(ゲーム空間に同じ)を選択する操作と、プレーヤであるユーザ2が所有するメインキャラクタ3(3a,3b,…)の中からプレーヤキャラクタ4を選択する操作と、が含まれる。また、格納オブジェクト7とサブキャラクタ5とを組み合わせる設定操作が含まれる。
格納オブジェクト7とサブキャラクタ5とを組み合わせる設定操作とは、複数のオブジェクトの中から組み合わせに使用する格納オブジェクト7とするオブジェクトを選択する第1選択操作と、選択された格納オブジェクト7に格納するサブキャラクタ5を選択する第2選択操作と、を含む。そして、組み合わせの設定操作が行われると、選択されたサブキャラクタ5は選択された格納オブジェクト7に格納された扱いとなる。この格納された状態の格納オブジェクト7のことを設定済格納オブジェクト8と呼ぶ。
設定済格納オブジェクト8は、プレーヤキャラクタ4(図3の例では、メインキャラクタ3a)が所有・所持している扱いとなる。例えば、ポケットやバックに収めて持ち歩いている扱いとなる。つまり、プレーヤであるユーザ2は、設定済格納オブジェクト8を設定することで、自身が所有するメインキャラクタ3(3a,3b,…)に、格納オブジェクト7を組み合わせる、という言い方もできる。
格納オブジェクト7とサブキャラクタ5との組み合わせが行われると、これに使用された格納オブジェクト7とサブキャラクタ5はそれぞれ「組み合わせ不可」の扱いとなり、重複した組み合わせはできないようになる。但し、格納オブジェクト7の種類によっては、複数のサブキャラクタ5を同時に格納できる場合もあるので、その場合は格納上限数に達するまでは当該格納オブジェクト7は組み合わせ不可の扱いとはならない。
なお、本実施形態では、組み合わせる格納オブジェクト7とサブキャラクタ5の両方をプレーヤが選択可能な構成としたが、何れか一方が予め決まっていて、他方のみをプレーヤが選択可能な構成も実現可能である。
さて、ゲームプレイが開始されると、ユーザ端末1500では、図4に示すようなゲーム画面W4が表示される。本実施形態のゲーム画面W4は、仮想3次元空間に構築されたゲーム空間を、使用するプレーヤキャラクタ4越しに後ろ斜め上から撮影した画像(いわゆる三人称視点画像)がベースとされる。勿論、プレーヤキャラクタ4の一人称視点画像をベースとしてもよい。
プレーヤであるユーザ2は、プレーヤキャラクタ4を操作して、ゲーム空間を移動し、敵キャラクタ6と遭遇するとこれと対戦する。本実施形態では、敵キャラクタ6はNPCとするが、プレーヤ同士が対戦する対戦ゲームの場合は、敵キャラクタ6は対戦相手プレーヤのプレーヤキャラクタ或いはサブキャラクタとなる。
敵キャラクタ6への攻撃は、プレーヤキャラクタ4による攻撃と、サブキャラクタ5を用いた攻撃との2通りが可能である。
図5は、サブキャラクタ5を用いた攻撃の概要説明図である。なお、ゲームに登場するオブジェクトを、投擲、打撃、発射、呪文の詠唱、スキルの発動、又はこれらに準じたプレーヤキャラクタ4のアクションにより、飛翔・転動・走行・滑走などをさせて移動させることができるが、以下説明では代表して「飛翔」による移動を説明する。他の移動であってもよいことは勿論である。
サブキャラクタ5を用いた攻撃は、次の(a)から(d)の流れにより実現される。すなわち、(a)プレーヤキャラクタ4が設定済格納オブジェクト8を投擲して飛翔させ、(b)敵キャラクタ6にぶつける、又はゲーム空間の背景オブジェクトにぶつけて、(c)格納されているサブキャラクタ5を出現させ、(d)出現したサブキャラクタ5が攻撃行動をとる、ことで実現される。
具体的には、プレーヤであるユーザ2が「アクション操作」を行うと、図5(1)→図5(2)に示すようにプレーヤキャラクタ4が設定済格納オブジェクト8を投擲する。アクション操作は、「飛翔前操作」と「目標指示操作」と「発動指示操作」とを含む。
なお、ここで言う「アクション操作」とは、所定のボタンスイッチを操作する、所定の操作アイコンをタッチ操作すると言った、ON/OFFにより検出できる操作は勿論のこと、タッチパネルへの単数又は複数指によるフリック操作、スライド操作、ユーザ端末1500やゲームコントローラを振る、と言った操作入力に係り検出される検出量により入力検出判定される操作も含まれるものとする。
「飛翔前操作」は、設定済格納オブジェクト8のなかから飛翔させる設定済格納オブジェクト8を選択する移動前操作である。具体的には、飛翔前操作は、飛翔させる(投擲する)ことが可能な設定済格納オブジェクト8が選択可能に表示される設定済格納オブジェクトリスト10のリスト呼出操作と、当該リストの中から飛翔させる(投擲する)設定済格納オブジェクト8を選択する選択操作と、を含む。図4及び図5(1)の例では、設定済格納オブジェクト8aが投擲される対象として選択されている。
飛翔前操作の次に、目標指示操作を行う。
「目標指示操作」は、飛翔目標を指示する操作であって、投擲方向と投擲力の指示操作により実現される。プレーヤキャラクタ4が投擲する方向(投擲方向)は、プレーヤキャラクタ4の正面方向とされる。ゲーム画面W4(図4参照)には正面方向を示す投擲方向マーカ12(図4の例では画面中央の破線円)が表示されるので、プレーヤは投擲したい方向(投擲方向)に当該マーカが向くようにプレーヤキャラクタ4の位置や姿勢を調整する。つまり、この調整行為が目標指示操作となる。
また、ゲーム画面W4には、投擲力の指示操作用に投擲力入力バー14と投擲力指示バー15とが表示される。プレーヤであるユーザ2は、投擲力入力バー14の初期位置に表示されている投擲力指示バー15を目がけてタッチし、そのままタッチした指を、投擲力入力バー14の長手方向(図4の例では左右方向)にスライドさせて投擲力指示バー15を移動させて投擲力を調整する。そして、所望する投擲力と思われる位置で、投擲力指示バー15へのタッチを解除して、投擲力の入力を完了する。
なお、投擲方向と投擲力の入力は、これらに限らない。例えば、タッチパネル1506へのスワイプ操作により行うとしてもよい。すなわち、スワイプした方向を投擲方向とし、スワイプする距離や速さを投擲力の入力と見なすとしてもよい。また、ゲーム画面W4内の任意の位置を投擲したい先としてタッチすることで目標指示操作を代用するとしてもよい。また、ユーザ端末1500又は当該端末から分離可能なゲームコントローラ部に加速度センサを搭載する構成では、ユーザ端末1500やゲームコントローラ部を手に持って振ることで投擲力の入力を行う構成としてもよい。
目標指示操作の次に発動指示操作を行う。
「発動指示操作」は、先に選択された設定済格納オブジェクト8の飛翔を、飛翔目標へ向けて開始させる操作である。本実施形態では、投擲力入力バー14へのダブルタップ或いは二本指タップをすると発動指示操作の入力と判定される。
そして、発動指示操作が完了すると、アクション操作は完了し、図5(2)に示すように、プレーヤキャラクタ4が選択した設定済格納オブジェクト8を投擲する。本実施形態では、設定済格納オブジェクト8の使用アクションを「投擲」としているが、プレーヤキャラクタ4がロボットなどの場合には使用アクションを設定済格納オブジェクト8の「発射」(あるいは「射出」や「放出」などともいえる)などとしてもよい。
投擲された設定済格納オブジェクト8は、「飛翔制御設定」に基づいて「飛翔終了条件」を満たすまで飛翔制御される。
「飛翔終了条件」は、移動を終了させるために満たすべき条件であって、適宜設定可能である。本実施形態では、設定済格納オブジェクト8が他オブジェクトなどと接触することを飛翔終了条件とする。よって、投擲された設定済格納オブジェクト8は、敵キャラクタ6に当たるか、背景オブジェクトに当たるか、その他のオブジェクトに当たるかして飛翔が終了し、ゲーム空間の地面に相当するオブジェクトに落ちて止まる。或いは、当たった時点で、当該設定済格納オブジェクト8の格納オブジェクト7が壊れる演出表示がなされる。
そして、図5(3)に示すように、飛翔終了条件を満たした設定済格納オブジェクト8から、格納されていたサブキャラクタ5がゲーム空間内に出現表示され、出現したサブキャラクタ5は「行動制御設定」に基づいて攻撃行動などを行うように自動制御される。
[飛翔制御設定と行動制御設定]
そして、本実施形態では、味方NPCに関する新たな興趣をもたらすために、この飛翔制御設定と行動制御設定とを様々なファクターに基づいて変化させ、多様な飛翔と多様な行動が行われるようにする。
「飛翔制御設定」は、例えば、
(1)飛翔可能距離、
(2)飛翔可能高度、
(3)飛翔速さ、
(4)投擲方向精度、
(5)投擲力精度、
(6)敵キャラクタに追尾させる追尾型の飛翔とするか否かの設定、
(7)格納可能上限数、
(8)同時投擲可能数、
などを含む。
投稿方向精度と投擲力精度は、まとめて言い換えると投擲命中精度となる。投擲方向精度は、目標指示操作された投擲方向に関する誤差の設定により実現され、投擲力精度は、発動指示操作された投擲力に関する誤差の設定により実現される。そして、飛翔制御設定の変更は、これらの設定を記述するパラメータの値を変更することにより実現される。
勿論、飛翔制御設定には、これら以外の項目も適宜含めることができる。例えば、飛翔先での他オブジェクトとの接触に伴うバウンド許可回数、飛翔開始後に最初に接触した他オブジェクトへの接着の有無、などを設定してもよい。
「行動制御設定」には、
(1)攻撃力や防御力、移動力、索敵範囲、攻撃頻度(攻撃間隔)、回復力などの能力値、
(2)サブキャラクタ5に用意されている標準的な攻撃と特別な攻撃とのどちらを用いるかなどの攻撃種類の設定、
(3)攻撃対象とする敵キャラクタ6の部位に関する設定、
(4)攻撃行動の種類、
を含む。勿論、これら以外の項目も適宜含めることができる。例えば、能力値であれば、ゲーム空間の地形種類別の移動力を設定したり、障害物を登坂或いは飛び越えての移動を許可するか否かの設定、などを含めることもできる。
攻撃行動の種類の例として次が挙げられる。
(4−a)索敵行動をとりつつ発見した敵キャラクタ6に攻撃をする「索敵攻撃」、
(4−b)配置された位置からあまり移動せずに攻撃可能範囲に進入した敵キャラクタを攻撃する「防衛」、
(4−c)味方に追従して移動し、接近して来る敵キャラクタ6を攻撃する「味方護衛」、
(4−d)味方を攻撃している敵キャラクタ6を優先的に攻撃する「援護」、
(4−e)耐力値の回復を要する味方を援護しつつ、その近くに移動してその味方の耐力値を回復させる行動をする「救助」、
などを設定することができる。勿論、これら以外の内容の攻撃行動も適宜設定することができる。
そして、飛翔制御設定と行動制御設定とをどのように変化させるかは、各種のファクターにより決定される。ファクターとしては、
(a)設定済格納オブジェクト8とされた格納オブジェクト7とサブキャラクタ5との組み合わせ、
(b)設定済格納オブジェクト8とされた格納オブジェクト7やサブキャラクタ5に対応付けられている(使用されている、装備されているなどの意)アイテムの種類、
(c)設定済格納オブジェクト8が作成されてからの時間経過、すなわち格納オブジェクト7へ格納されるサブキャラクタ5の格納設定成立からの時間経過、
(d)全くのランダム発生、
(e)設定済格納オブジェクト8が最初に衝突した敵キャラクタ6の種類や、当該敵キャラクタの部位の種類、
(f)設定済格納オブジェクト8が最初に衝突した位置の地形の種類や、サブキャラクタ5が出現した位置の地形の種類、
などを用いることができる。つまり、少なくともこれら(a)〜(f)の何れかのファクターに基づいて飛翔制御設定や行動制御設定を可変に制御する。この可変制御は、設定済格納オブジェクト8が設定された時に即時に行われる場合と、設定済格納オブジェクト8が設定されてからの時間経過に基づいて行われる場合とがある。前者を「即時変化制御」と言い、後者を「経時変化制御」と言う。
図6は、飛翔制御設定の変更例を説明するための図である。
図6(1)は、飛翔制御設定の変更前の飛翔性能を表している。
図6(2)は、飛翔制御設定の変更後の飛翔性能を表しており、時間経過によって飛翔可能距離Lと飛翔可能高度Hが向上した例を示している。
図6(3)は、更に時間が経過して更に飛翔制御設定が変更され、敵キャラクタ6に追尾させる追尾型の飛翔とする設定が有効に変更された例を示している。
なお、追尾型の飛翔が可能になると、その旨がプレーヤであるユーザに通知される。例えば、プレーヤキャラクタ4の投擲方向マーカ12(図4参照)の表示形態の変更により通知される。なお、追尾対象を指定するロックオン操作の方法は特に限定されない。例えば、プレーヤキャラクタ4の投擲方向マーカ12の周囲所定範囲に存在する敵キャラクタ6の中から1体をプレーヤが選択するとしてもよい。なお、飛翔目標とされた敵キャラクタ6は、ゲーム画面内においてロックオンマーカ19が表示され識別可能となる。
図7は、行動制御設定の変更例を説明するための図である。
図7(1)は、行動制御設定の変更前の行動性能を表している。
図7(2)は、行動制御設定の変更後の行動性能を表している。具体的には、時間経過によって攻撃部位が「優先部位の設定無し」から「頭部攻撃優先」に変更され、攻撃方法が「体当たり」から「足蹴り」に変更されている。また、攻撃力が強化され、行動頻度が向上するように変更されている。
勿論、飛翔制御設定及び行動制御設定の変更の内容は、図6及び図7で示した例に限定されるものではなく、適宜設定可能である。
そして、経時変化制御により飛翔制御設定や行動制御設定をどのように変更するかは、設定済格納オブジェクト8に適用される制御パターンにより決まる。
図8は、経時変化制御における制御パターンの例を説明するための図である。
制御パターンは、予め複数種類用意されていて、その何れかが適用される。図8のグラフは、横軸が設定済格納オブジェクト8が設定されてからの時間経過tであり、縦軸が飛翔制御設定により決まる飛翔性能及び行動制御設定により決まる行動性能である。図8のグラフにおいて、飛翔性能及び行動性能は、プレーヤにとって有利となるほど値が大きく、高性能であることを示している。
経時変化制御の第1の制御パターンPT1は、時間経過とともに無段階で性能が向上するパターンである。但し、所定の性能の高さでサチレート(飽和)する。
経時変化制御の第2の制御パターンPT2は、時間経過とともに無段階で性能が低下するパターンである。但し、所定の性能の高さでサチレートする。
第3の制御パターンPT3は、第1の制御パターンPT1と同様に、時間経過とともにお漸次的に性能が向上するパターンであるが、時間経過とともに段階的に性能が向上するパターンである。但し、所定の性能の高さでサチレートする。性能が変化する段階数は適宜設定可能である。図8のように3段階でサチレートしてもよいし、4段階以上、或いは2段階以下としてもよい。
更には、他の制御パターンも適宜設定可能である。例えば、周期的に性能が上下するパターンや、所定期間に限定して性能が向上するパターン、なども設定可能である。「即時変化」も変化が生じる基準時間t1や基準時間t2が「0」の制御パターンであると見なすことができる。
そして、設定済格納オブジェクト8に、実際に適用される経時変化制御の制御パターンも、飛翔制御設定と行動制御設定の変更に係るファクターにより決定される。
すなわち、
(a)設定済格納オブジェクト8とされた格納オブジェクト7とサブキャラクタ5との組み合わせ、
(b)設定済格納オブジェクト8とされた格納オブジェクト7やサブキャラクタ5に対応付けられている(使用されている、装備されているなどの意)アイテムの種類、
(c)設定済格納オブジェクト8が作成されてからの時間経過、すなわち格納オブジェクト7へ格納されるサブキャラクタ5の格納設定成立からの時間経過、
の少なくとも何れか1つのファクターに応じて変更される。
そして、設定済格納オブジェクト8に適用される経時変化制御の制御パターンからどのように飛翔制御設定や行動制御設定が変化するかの予測・予告が、プレーヤであるユーザに提供される。
図9は、ゲームプレイ開始前に表示される準備操作画面W6の表示の一例を示す図である。準備操作画面W6は、ユーザ端末1500にて所定の準備開始操作がなされると表示される。具体的には、準備操作画面W6は、使用サブキャラクタ選択欄61と、サブキャラクタ用アイテム設定操作アイコン62と、使用格納オブジェクト選択欄63と、格納オブジェクト用アイテム設定操作アイコン64と、組み合わせ結果表示部65と、変化状態予告表示66と、組み合わせ中止操作アイコン67と、組み合わせ確定操作アイコン68と、を含む。
使用サブキャラクタ選択欄61は、プレーヤであるユーザ2が所有していて、且つ設定済格納オブジェクト8に未使用のサブキャラクタ5を選択可能に表示する。選択されているサブキャラクタ5は欄内で識別表示される。
サブキャラクタ用アイテム設定操作アイコン62は、プレーヤであるユーザ2が所有しているアイテムのうち、使用サブキャラクタ選択欄61で選択されているサブキャラクタ5に使用可能なアイテムを選択可能に表示する。そして、選択確定することにより、使用サブキャラクタ選択欄61で選択されているサブキャラクタ5に選択したアイテムを対応づけることができる。言い換えると、サブキャラクタ5にアイテムを装備させたり使用させたりすることができる。
使用格納オブジェクト選択欄63は、プレーヤであるユーザ2が所有していて、且つ、設定済格納オブジェクト8となっていない格納オブジェクト7を選択可能に表示する。選択されている格納オブジェクト7は欄内で識別表示される。
格納オブジェクト用アイテム設定操作アイコン64は、プレーヤであるユーザ2が所有しているアイテムのうち、使用格納オブジェクト選択欄63で選択されている格納オブジェクト7に使用可能なアイテムを選択可能に表示する。そして、選択確定することにより、使用格納オブジェクト選択欄63で選択されている格納オブジェクト7に選択したアイテムを対応づけることができる。言い換えると、格納オブジェクト7にアイテムを装備させたり使用させたりすることができる。
組み合わせ結果表示部65は、選択されているサブキャラクタ5及び格納オブジェクト7、そしてそれらに対応づけられているアイテムの画像を表示する。
変化状態予告表示66は、選択されているサブキャラクタ5と格納オブジェクト7との組み合わせ、そしてそれらに対応づけられているアイテムの対応づけが確定された場合に、即時変化制御と経時変化制御が行われた場合の結果を予告的に表示する。
変化状態予告表示66は、経時変化が発生する条件を示す変化発生条件66aと、当該条件が満たされて変化制御が行われた状態(効力状態)の予測情報を示す予測効力状態66bと、が関連付けて表示される。ちなみに、変化発生条件66aは、即時変化制御については「即時」となり、経時変化制御については変化発生するまでに要する時間経過を示す。
すなわち、変化発生条件66aと予測効力状態66bにより、この組み合わせで予測される経時変化が発生するまでの残時間と、予測される経時変化の内容とを対応づけてプレーヤに通知する。当然、予測効力状態66bは、この時点では未発生の最大効力状態を示すことになるので、所定の最大効力状態に至っていない場合にその旨をプレーヤであるユーザに報せる役割を果たしている。
変化状態に関する表示は、準備操作画面W6の他にも、図10に示すように、飛翔前操作を行ったタイミングにおいても表示される。
具体的には、ゲーム画面W7にて設定済格納オブジェクトリスト10が表示され、当該リストに表示される設定済格納オブジェクト8をタッチすると、タッチされている設定済格納オブジェクト8に関する最新の飛翔制御設定及び行動制御設定の経時変化による効力状態を示す経時変化状態表示70がポップアップ表示される。
経時変化状態表示70では、発生中経時変化内容71と、未発生経時変化内容72と、が表示される。未発生経時変化内容72は、経時変化が発生する残時間と対応づけて表示される。また、連続的又は段階的に効力状態が変化する経時変化の内容については、所定の最大効力状態に至っていない場合にその旨をプレーヤであるユーザ2に報せる未達通知73が含まれる。
これにより、プレーヤであるユーザ2は、選択しようとしている設定済格納オブジェクト8の最新の経時変化状態と今後に予想される変化とを知り、今使うべきか、効力状態が最大になるのを待つべきかを、考えている戦術と照らして判断できるようになる。
なお、未達通知73は、変化状態予告表示66(図9参照)においても表示させることができる。
また、飛翔制御設定や行動制御設定の変化状態に関する表示は、目標指示操作から発動指示操作が完了するまでの間においても表示される。
図11は、目標指示操作から発動指示操作が完了するまでの間における経時変化状態表示70の例を示す図である。
目標指示操作を行った後、プレーヤであるユーザ2は、投擲力入力バー14と投擲力指示バー15(図4参照)に対してタッチし、そのままタッチした指を左右にスライドさせて投擲力を増減する。そして、タッチを解除して投擲力の入力を完了する。そして、投擲力入力バー14へダブルタップ或いは二本指タップをすると発動指示操作の入力決定、発動実行操作が完了、と判定される。
アクション操作を開始すると、その時点におけるプレーヤキャラクタ4の正面方向が投擲方向の初期値とされ、投擲力入力バー14におけるその時の投擲力指示バー15の表示位置に対応する投擲力が初期値とされ、投擲に係る諸元(飛翔初期条件となる投擲方向と投擲力)が決定されたと見なさる。そして、投擲される設定済格納オブジェクト8が飛翔する経路(飛翔経路)と、到達する飛翔先とが決定される。飛翔経路や飛翔先の決定は、物理演算又は擬似物理演算、予め用意されている複数種類の飛翔経路のなかからの選択、などにより実現され得る。勿論、プレーヤがプレーヤキャラクタ4の正面方向を変更する目標指示操作を行ったり、投擲力の調整を行うと、投擲に係る諸元は逐一更新される。
そして、図11に示すように、投擲される設定済格納オブジェクト8が辿る予測飛翔経路30と、予測飛翔先32とがゲーム画面内に予測表示される。本実施形態では、出現したサブキャラクタ5は、攻撃可能範囲内の敵キャラクタ6のうち最寄りの敵キャラクタ6を攻撃するように自動制御される。そのため、予測飛翔先32は、実質的に、飛翔される設定済格納オブジェクト8に格納されているサブキャラクタ5が出現した後に攻撃するであろう敵キャラクタ6の予測表示を兼ねることになる。
なお、ここで言う「予測飛翔経路」には、その時点の投擲に係る飛翔初期条件の諸元に基づいて設定される飛翔経路と誤差範囲とを含み得る。同様に、「予測飛翔先」には、その時点の諸元に基づいて設定される飛翔先と誤差範囲とを含み得る。
プレーヤであるユーザ2は、この予測表示を見て思った通りのコースや思った場所に向けて飛翔し得るかを思案する。そして、プレーヤキャラクタ4の正面方向を変える、投擲力入力バー14へ再操作するなどして、投擲方向や投擲力を調整することができる。
予測飛翔経路30や予測飛翔先32が望んだ通りであれば、プレーヤであるユーザ2は、投擲力入力バー14へダブルタップ或いは二本指タップをすると発動指示操作の入力が決定され、発動実行操作が完了となる。
そして、予測飛翔経路30や予測飛翔先32がゲーム画面に表示されている間、図11に示すように、経時変化状態表示70が表示される。これにより、飛翔前操作を行ったタイミングにおいて経時変化状態表示70を表示させていなくとも、これから投擲されようとしている設定済格納オブジェクト8の経時変化に関する情報をプレーヤであるユーザ2に提供できる。
また、経時変化状態表示70には、対象とされている設定済格納オブジェクト8が表示される。そして、当該設定済格納オブジェクト8の形態は、経時変化制御における時間経過に応じて変化される。具体的には、設定済格納オブジェクト8の表示サイズ変化(より具体的には、拡大縮小の繰り返し周期の変更)、配色の変更、輪郭線の変更、明度変化、付属物8fの添付、などの形態変化が適用される。形態変化のパターンは、適宜設定可能である。
[機能構成の説明]
図12は、本実施形態におけるサーバシステム1100の機能構成例を示す機能ブロック図である。本実施形態におけるサーバシステム1100は、操作入力部100sと、サーバ処理部200sと、音出力部390sと、画像表示部392sと、通信部394sと、サーバ記憶部500sとを備える。
操作入力部100sは、サーバの管理のための各種操作を入力するための手段である。図1のキーボード1106がこれに該当する。
サーバ処理部200sは、例えばCPUやGPU等のマイクロプロセッサや、ASIC、ICメモリなどの電子部品によって実現され、操作入力部100sやサーバ記憶部500sを含む各機能部との間でデータの入出力制御を行う。そして、所定のプログラムやデータ、操作入力部100sからの操作入力信号、ユーザ端末1500から受信したデータ、等に基づいて各種の演算処理を実行して、サーバシステム1100の動作を統合的に制御する。
そして、本実施形態のサーバ処理部200sは、ユーザ管理部202と、オンラインショッピング管理部204と、ゲーム管理部210と、計時部288sと、音生成部290sと、画像生成部292sと、通信制御部294sとを含む。勿論、これら以外の機能部も適宜含めることができる。
ユーザ管理部202は、ユーザ登録手続きに係る処理及びユーザアカウントに紐付けられる各ユーザのデータの管理を行う。本実施形態では、ユーザ管理部202は、(1)登録ユーザへの固有のユーザアカウントの付与と、(2)ユーザアカウント別に個人情報を登録管理する登録情報管理と、(3)課金要素(本実施形態ではオンラインショッピングとプレイ対価など)の支払いで消費される電子決済媒体の帳簿管理と、(4)ゲームプレイするためのログイン及びログアウトの履歴等を管理するプレイ履歴管理と、(5)ゲームセーブデータの管理と、の各機能を有する。勿論、これら以外のアカウントに紐付けられる他のデータの管理機能も適宜含めることができる。
オンラインショッピング管理部204は、オンラインショッピングに関する制御を担い、公知のオンラインショッピング技術を適宜利用して実現できる。本実施形態では、プレーヤは、オンラインショッピングによって、メインキャラクタ3や、サブキャラクタ5、格納オブジェクト7、アイテムなどを購入することができる。オンラインショッピングにおける販売対象は、これら以外にも適宜設定可能である。
ゲーム管理部210は、ゲームの実行管理に係る各種処理を行う。本実施形態のゲームは、クライアント・サーバ型のオンラインゲームなので、ゲーム管理部210は、ユーザ端末1500と通信を行いながらゲームプレイに必要なデータを提供する制御を行う。
そして、ゲーム管理部210は、準備設定部220と、経時変化制御部230と、予告表示制御部232と、飛翔先設定部240と、飛翔経路設定部242と、飛翔予測表示制御部244と、経時変化状態表示制御部246と、飛翔制御部250と、サブキャラクタ出現制御部252と、サブキャラクタ自動制御部254と、を有する。勿論、これら以外の機能部も適宜含むとしてもよい。
準備設定部220は、プレーヤの操作に基づいて、ゲームプレイの準備に関する各種設定を行う。具体的には、準備設定部220は、プレーヤキャラクタ設定部221と、格納設定部222と、アイテム設定部223と、を有する。
プレーヤキャラクタ設定部221は、プレーヤの操作に基づいて、複数のキャラクタの中からプレーヤキャラクタ4とするキャラクタを選択して設定する。
格納設定部222は、格納オブジェクト7と、これに格納するサブキャラクタ5との組み合わせを設定することで、設定済格納オブジェクト8を設定する。すなわち、プレーヤの準備操作に基づいて、プレーヤキャラクタ4の味方であるNPC(ノン・プレイアブル・キャラクタ)すなわちサブキャラクタ5を格納可能な格納オブジェクト7に、サブキャラクタ5を格納する格納設定を行う。
アイテム設定部223は、プレーヤの操作入力に基づいて、格納オブジェクト7及び/又は格納オブジェクト7に格納されたサブキャラクタ5に所与のアイテムを対応付ける。
また、準備設定部220は、上述した各機能の他に、プレーヤの操作入力に基づいて、複数のゲーム空間(ゲームによっては、ゲームステージ、プレイフィールドなどと呼ばれる。)の中から、ゲームプレイに使用するゲーム空間を設定することができる。
経時変化制御部230は、飛翔制御設定や行動制御設定の経時変化制御を行う。
すなわち、経時変化制御部230は、格納設定がなされた格納オブジェクト(設定済格納オブジェクト8)を飛翔させる際の飛翔制御設定を、当該格納設定がなされてからの時間経過に基づいて可変に制御する。また、経時変化制御部230は、サブキャラクタ5を自動制御する際の行動制御設定を、当該サブキャラクタ5を格納オブジェクト7に格納する格納設定がなされてからの時間経過に基づいて可変に制御する。
具体的には、経時変化制御部230は、格納設定がなされてからの時間経過に基づいて飛翔可能距離や、敵キャラクタ6に追尾させる追尾型の飛翔とするか否かの設定、などを変更できる。
また、経時変化制御部230は、格納設定がなされてからの時間経過に基づいて、攻撃行動の設定や、攻撃対象とする敵キャラクタ6の部位に関する設定、攻撃種類、などを変更できる。
また、経時変化制御部230は、経時変化制御の制御パターンを、プレーヤキャラクタ設定部221による設定と、アイテム設定部223による設定と、に応じて変更する。具体的には、経時変化制御部230は、設定済格納オブジェクト8として組み合わされたサブキャラクタ5と格納オブジェクト7との組み合わせに応じて、経時変化制御の制御パターンを変更する。また、格納オブジェクト7及び/又はこれに格納されたサブキャラクタ5にアイテムが対応付けられている場合の当該アイテムに基づいて経時変化制御の制御パターンを変更する。
予告表示制御部232は、経時変化制御部230による経時変化制御が行われた場合の結果を予告的に表示する。変化状態予告表示66(図9参照)の表示制御がこれに該当する。
飛翔先設定部240は、その時々の投擲に係る諸元、例えば、投擲方向、投擲力、飛翔制御設定に基づいて飛翔先の位置座標を決定する。
飛翔経路設定部242は、飛翔先設定部240により決定された飛翔先へ向かうための飛翔経路を、飛翔制御設定(例えば、飛翔可能高度など)に基づいて決定する。
飛翔予測表示制御部244は、飛翔先と飛翔経路の予測表示に係る制御を行う。具体的には、予測飛翔経路30と予測飛翔先32との表示制御を行う。
経時変化状態表示制御部246は、飛翔前操作において選択された設定済格納オブジェクト8について、経時変化制御の効力状態を表示する経時変化状態表示70の表示制御を行う(図10参照)。また、経時変化状態表示制御部246は、目標指示操作においても、経時変化状態表示70の表示制御を行う(図11参照)。また、経時変化状態表示制御部246は、経時変化制御における時間経過に応じて、設定済格納オブジェクト8の表示関する形態を変化させることで示す制御を行う。具体的には、設定済格納オブジェクト8の表示サイズ変化(より具体的には、拡大縮小の繰り返し周期の変更など)、配色の変更、輪郭線の変更、明度変化、付属物8fの添付、振動やジャンプなどの動作、などの形態変化で示すことができる。
飛翔制御部250は、プレーヤのアクション操作がなされた場合に、格納設定がなされた格納オブジェクト(設定済格納オブジェクト8)を、当該格納オブジェクトに対応づけて個別に設定された飛翔制御設定に基づいて、所与の飛翔終了条件を満たすまで飛翔させる飛翔制御を行う。
サブキャラクタ出現制御部252は、飛翔終了条件を満たした設定済格納オブジェクト8から、当該格納オブジェクトに格納されているサブキャラクタ5を出現させるように制御する。
サブキャラクタ自動制御部254は、サブキャラクタ出現制御部252により出現されたサブキャラクタ5を、当該サブキャラクタ5に対応づけて設定された行動制御設定に基づいて自動制御する。
計時部288sは、システムクロックを利用して現在日時や制限時間等の計時を行う。
音生成部290sは、音声データの生成やデコードをするICやソフトウェアの実行により実現され、サーバシステム1100のシステム管理やゲームプレイに係る操作音やBGMなどの音声データを生成或いはデコードする。システム管理に関する音声信号は音出力部390sへ出力される。
音出力部390sは、音声信号を放音する。図1の例では本体装置1101やタッチパネル1108が備えるスピーカ(不図示)がこれに該当する。
画像生成部292sは、サーバシステム1100のシステム管理に関する画像や、ゲーム画像(又はゲーム画像をユーザ端末1500で表示させるためのデータ)等を生成することができる。そして、システム管理に関する画像は画像表示部392sへ出力することができる。
画像表示部392sは、画像生成部292sから入力される画像信号に基づいてシステム管理のための各種画像を表示する。例えば、フラットパネルディスプレイ、プロジェクター、ヘッドマウントディスプレイといった画像表示装置によって実現できる。図1の例ではタッチパネル1108が該当する。
通信制御部294sは、データ通信に係るデータ処理を実行し、通信部394sを介して外部装置とのデータのやりとりを実現する。
通信部394sは、通信回線9と接続して通信を実現する。例えば、無線通信機、モデム、TA(ターミナルアダプタ)、有線用の通信ケーブルのジャックや制御回路等によって実現される。図1の例では通信装置1153が該当する。
サーバ記憶部500sは、サーバ処理部200sにサーバシステム1100を統合的に制御させるための諸機能を実現するためのプログラムや各種データ等を記憶する。また、サーバ処理部200sの作業領域として用いられ、サーバ処理部200sが各種プログラムに従って実行した演算結果などを一時的に記憶する。この機能は、例えばRAMやROMなどのICメモリ、ハードディスク等の磁気ディスク、CD−ROMやDVDなどの光学ディスク、オンラインストレージなどによって実現される。図1の例では本体装置1101が搭載するICメモリ1152やハードディスクなどの記憶媒体、及びストレージ1140がこれに該当する。
図13は、本実施形態におけるサーバ記憶部500sが記憶するプログラムやデータの例を示す図である。本実施形態におけるサーバ記憶部500sは、サーバプログラム501と、配信用ゲームクライアントプログラム502と、販売管理データ509と、ゲーム空間初期設定データ510と、敵キャラクタ初期設定データ512と、アイテム初期設定データ516と、メインキャラクタ初期設定データ518と、サブキャラクタ初期設定データ520と、格納オブジェクト初期設定データ530と、飛翔制御設定変化定義データ540と、行動制御設定変化定義データ560と、経時変化制御パターン定義データ580と、を記憶する。
また、サーバ記憶部500sは、ゲームに係り逐次生成・管理されるデータとして、ユーザ管理データ600と、プレイデータ700と、現在日時800と、を記憶する。サーバ記憶部500sは、その他のプログラムやデータ(例えばタイマや、カウンタ、各種フラグなど)も適宜記憶できる。
サーバプログラム501は、サーバ処理部200sが読み出して実行することで、ユーザ管理部202と、オンラインショッピング管理部204と、ゲーム管理部210としての機能を実現させるためのプログラムである(図12参照)。
配信用ゲームクライアントプログラム502は、ユーザ端末1500へ提供されるゲームクライアントプログラムのオリジナルである。
販売管理データ509は、オンラインショッピングによる販売品を定義・管理するためのデータを格納する。例えば、購入可能なアイテムと、在庫数、その課金対価(本実施形態では決済媒体からの引き落とし額に相当)とを対応づけて格納している。
ゲーム空間初期設定データ510は、ゲーム空間(ゲームステージ、プレイステージ)毎に用意され、当該ゲーム空間に係る各種初期設定データを格納する。一つのゲーム空間初期設定データ510は、ゲーム空間ID、マップデータ、マップ内の各位置における地形種類の設定データ、敵キャラクタ出現設定、格納オブジェクト付与条件、サブキャラクタ付与条件、アイテム付与条件、などを含む。
格納オブジェクト付与条件、サブキャラクタ付与条件、アイテム付与条件は、当該ゲーム空間において新たな格納オブジェクトや、新たなサブキャラクタ、新たなアイテムをプレーヤに付与するために満たすべき条件を定義している。
敵キャラクタ初期設定データ512は、敵キャラクタ6の種類毎に用意され、当該敵キャラクタに係る各種初期設定データを格納する。例えば、一つの敵キャラクタ初期設定データ512は、敵キャラクタ種類と、能力パラメータ値と、行動種類を定義する行動種類データと、を含む。勿論、これら以外のデータも適宜含めることができる。
アイテム初期設定データ516は、アイテム毎に用意され、当該アイテムに係る各種初期設定データを格納する。例えば、一つのアイテム初期設定データ516は、アイテム種類と、作用効果の定義データとを格納する。
ここで言う作用効果とは、当該アイテムが格納オブジェクト用のアイテムであれば、主に飛翔制御設定の即時変化制御の内容とされる。具体的には、当該飛翔制御設定のうちのどのパラメータを作用効果の対象とするかや、作用効果による値の変更の程度などが定義される。なお、格納オブジェクト用のアイテムであっても、作用効果の対象に行動制御設定を含めることもできる。
同様に、当該アイテムがサブキャラクタのアイテムであれば、作用効果は、主に行動制御設定の内容とされる。主に行動制御設定の即時変化制御の内容となるが、作用効果の対象に飛翔制御設定を含めることもできる。
メインキャラクタ初期設定データ518は、メインキャラクタ3の種類毎に用意され(図3参照)、当該メインキャラクタに係る各種初期設定データを格納する。例えば、一つのメインキャラクタ初期設定データ518は、キャラクタ種類と、キャラクタの初期能力パラメータ値、などの情報を格納する。勿論、当該キャラクタをゲーム画面中に表示させ、動作させるために必要な各種データ(例えば、キャラクタのモデルデータや、モーションデータ、テクスチャデータ、など)も含まれているものとする。
サブキャラクタ初期設定データ520は、サブキャラクタ5の種類毎に用意され(図3参照)、当該サブキャラクタ5に係る各種初期設定データを格納する。
一つのサブキャラクタ初期設定データ520は、例えば、図14に示すように、サブキャラクタ種類521と、サブキャラクタ属性523と、初期行動制御設定525と、を含む。勿論、当該キャラクタをゲーム画面中に表示させ、動作させるために必要な各種データ(例えば、キャラクタのモデルデータや、モーションデータ、テクスチャデータ、など)も含まれているものとする。
初期行動制御設定525は、当該種類のサブキャラクタに設定されている初期状態の自動行動パターンの定義データであり、例えば、初期能力値525a、初期攻撃種類525b、初期攻撃部位比重525c、初期攻撃行動種類525d、などを含む。勿論、これら以外のデータも適宜含めることができる。
初期攻撃部位比重525cは、敵キャラクタ6の部位毎に、当該部位を優先して攻撃対象部位とする割合・比重・重み付けを定義する。サブキャラクタ5は、比重が高ければそれだけ優先的にその部位を攻撃するように自動制御される。
図13に戻って、格納オブジェクト初期設定データ530は、格納オブジェクトの種類毎に用意され、当該格納オブジェクトに係る各種初期設定データを格納する。
一つの格納オブジェクト初期設定データ530は、例えば図15に示すように、格納オブジェクト種類531と、格納オブジェクト属性533と、初期飛翔制御設定535と、を含む。勿論、これら以外のデータも適宜含めることができる。例えば、当該格納オブジェクト7をゲーム画面中に表示させ、動作させるために必要な各種データ(例えば、モデルデータやテクスチャデータ、など)も含まれているものとする。
初期飛翔制御設定535は、初期飛翔可能距離535a、初期飛翔可能高度535b、初期飛翔速さ535c、初期投擲方向精度535d、初期投擲力精度535e、初期追尾型飛翔設定535f、初期格納可能上限数535g、初期同時投擲可能数535h、などを含む。勿論、これら以外の項目も適宜含めることができる。
図13に戻って、飛翔制御設定変化定義データ540は、飛翔制御設定の即時変化制御及び経時変化制御の制御パターン毎に用意され、当該制御パターンを定義する各種データを格納する。一つの飛翔制御設定変化定義データ540は、例えば図16に示すように、変更実施要件541と、変更内容データ550と、を含む。
変更実施要件541は、当該定義データが選択・適用されるための要件を定義する。変更実施要件541は、複数の条件のAND又はORで記述される。記述に使われる条件の種類は適宜設定可能である。本実施形態では、ゲーム空間ID条件541aと、プレーヤキャラクタ種類条件541bと、格納オブジェクト種類条件541cと、格納オブジェクト属性条件541dと、格納オブジェクトレベル条件541eと、サブキャラクタ種類条件541fと、サブキャラクタ属性条件541gと、サブキャラクタレベル条件541hと、使用アイテム条件541jと、の一つ又は複数を組み合わせて変更実施要件541を記述する。なお、これらの各条件の設定は「なし」を含み得る。
格納オブジェクトレベル条件541eと、サブキャラクタレベル条件541hは、それぞれ格納オブジェクト7、サブキャラクタ5の成長レベルに関する条件である。ゲームプレイで使用された格納オブジェクト7やサブキャラクタ5は、プレイ成績に応じて能力が向上するように自動的に成長制御され、成長度合としてそれぞれ成長レベルと呼ばれるパラメータを持つ。なお、格納オブジェクト7やサブキャラクタ5の成長要素を含まないゲーム内容とする場合には、これらの条件は省略することができる。
変更内容データ550は、飛翔制御設定の変更内容毎に用意される。1つの変更内容データ550は、即時変化制御又は経時変化制御の何れの変化制御であるかを示す変化制御種類551と、適用される経時変化の制御パターンの種類を示す適用制御パターン種類552と、変更対象飛翔制御設定項目553と、変更量554と、予告表示データ555と、経時変化状態表示データ556と、を含む。勿論、これら以外のデータも適宜含めることができる。
変更量554は、変更対象飛翔制御設定項目553の示す飛翔制御設定の項目をどれだけ変更するかを指定する。変更する数量、変更する割合、又はそれらを算出する関数により定義できる。適用制御パターン種類552が示す経時変化制御により変更対象飛翔制御設定項目553の変更量が決まる場合には、変更量554は省略できる。
予告表示データ555は、当該変更内容データに係り、変化状態予告表示66(図9参照)を表示させるための元になるデータである。
経時変化状態表示データ556は、当該変更内容データに係り、経時変化状態表示70(図10、図11参照)を表示させるための元になるデータである。
図13に戻って、行動制御設定変化定義データ560は、行動制御設定の変化のパターン毎に用意され、当該変化パターンを定義する各種データを格納する。一つの行動制御設定変化定義データ560は、例えば図17に示すように、変更実施要件561と、変更内容データ570と、を含む。
変更実施要件561は、当該定義データが選択・適用されるための要件を定義する。変更実施要件561は、選択された1つの条件、或いは、複数の条件のAND又はORで記述される。記述に使われる条件の種類は適宜設定可能である。本実施形態では、ゲーム空間ID条件561aと、プレーヤキャラクタ種類条件561bと、格納オブジェクト種類条件561cと、格納オブジェクト属性条件561dと、格納オブジェクトレベル条件561eと、サブキャラクタ種類条件561fと、サブキャラクタ属性条件561gと、サブキャラクタレベル条件561hと、使用アイテム条件561jと、敵キャラクタ種類条件561kと、衝突部位条件561mと、出現地形種類条件561nと、の一つ又は複数を組み合わせて変更実施要件561を記述する。なお、これらの各条件の設定は「なし」を含み得る。
敵キャラクタ種類条件561kは、設定済格納オブジェクト8(サブキャラクタ5を格納した格納オブジェクト7)が飛翔して衝突した敵キャラクタ6の種類に関する条件である。
衝突部位条件561mは、設定済格納オブジェクト8が飛翔して衝突した敵キャラクタ6の部位に関する条件である。
出現地形種類条件561nは、設定済格納オブジェクト8が飛翔して衝突した位置、或いは当該サブキャラクタ5が出現した位置の地形の種類に関する条件である。
変更内容データ570は、行動制御設定の変更内容毎に用意される。1つの変更内容データ570は、即時変化制御又は経時変化制御の何れの変化制御であるかを示す変化制御種類571と、適用される経時変化の制御パターンの種類を示す適用制御パターン種類572と、変更対象行動制御設定項目573と、その変更量574と、予告表示データ575と、経時変化状態表示データ576と、を含む。勿論、これら以外のデータも適宜含めることができる。また、適用制御パターン種類572が示す経時変化制御により変更対象行動制御設定項目573の変更量が決まる場合には、変更量574は省略できる。
よって、変更実施要件561と変更内容データ570とを適切に設定することで、出現後のサブキャラクタ5の行動や能力を様々に変化させることができる。例えば、A種類の敵キャラクタ6に設定済格納オブジェクト8が衝突してサブキャラクタ5が出現した場合と、B種類の敵キャラクタ6に衝突して出現した場合とで、出現するのが同じサブキャラクタ5であっても、出現以降の自動行動制御のパターンや、攻撃能力が異なるようにできる。また、同じ敵キャラクタ6に衝突しても、敵キャラクタ6のどの部位に格納オブジェクト7が衝突したかによって、出現以降の自動行動制御のパターンや、攻撃能力が異なるようにもできる。
図13に戻って、経時変化制御パターン定義データ580は、経時変化制御の変化のパターン毎に用意され、当該パターンでどのように経時変化させるかを定義する各種データを格納する。例えば、図8で例示した、経時変化制御の第1の制御パターンPT1は、時間経過とともに無段階で性能が向上するパターンなので、その定義データでは、時間経過tを変数とし、変更対象行動制御設定項目573の変更量(数量又は変更割合)を算出する関数を定義する。また、第3の制御パターンPT3は、時間経過tとともに段階的に性能が向上するパターンなので、その定義データでは、経時変化が発生する基準時間t1,t2と、それら基準時間が経過時に適用される変更対象行動制御設定項目573の変更量(数量又は変更割合)とを含む。
また、経時変化制御パターン定義データ580は、経時変化を通知するために設定済格納オブジェクト8の表示形態を変化させるパターンのデータを含む。例えば、所定時間経過後に設定済格納オブジェクト8の配色の一部明度を明滅させるならば、閾値となる経過時間の値と、明滅対象の色と、明滅幅と、明滅周期と、を当該定義データに格納させればよい。或いは、付属物8f(図11参照)を添付する場合は、添付表時を開始する経過時間の値と、付属物8fの画像データと、を格納させればよい。
ユーザ管理データ600は、登録ユーザ毎に用意され、固有の識別情報であるアカウントと紐付けられる各種データを格納する。1つのユーザ管理データ600は、例えば図18に示すように、固有のユーザアカウント601と、決済媒体帳簿データ602と、プレイ履歴データ603と、ゲームセーブデータ610と、を含む。勿論、これら以外のデータも適宜含めることができる。
決済媒体帳簿データ602は、当該ユーザに紐付けられる電子決済用の決済媒体(例えば、仮想通貨、ゲーム内通貨、特定のアイテム、行動力などの特定のパラメータ値など)の補充/消費の量と、補充/消費の事由と、変更日時と、の情報を対応づけて格納する所謂帳簿である。課金履歴データ或いは課金履歴情報と読み替えることができる。
プレイ履歴データ603は、何時ゲームプレイをしたか、どのようなプレイ成績であったか、などを記述するデータを、プレイした時系列に格納するデータであって、ログイン/ログアウトのタイミングで自動的に更新される。
ゲームセーブデータ610は、前回のゲームプレイ時までのプレイ結果やゲーム進行の状態を記述する各種データを格納する。例えば、所有メインキャラクタセーブデータ612と、所有格納オブジェクトセーブデータ614と、所有サブキャラクタセーブデータ616と、所有アイテムデータ618と、を含む。勿論、これら以外のデータも適宜含めることができる。
図13に戻って、プレイデータ700は、ユーザ端末1500で実行されるゲームプレイ毎に用意され、そのゲーム進行状況を記述する各種データや、各キャラクタ毎の制御データなどゲーム画面の表示等に関する各種情報を格納する。
一つのプレイデータ700は、例えば図19に示すように、プレイ開始日時701と、プレーヤとされるユーザのユーザアカウントであるプレーヤアカウント702と、プレーヤのユーザ端末1500にアクセスするためのユーザ端末アクセス情報703と、使用ゲーム空間ID704と、プレーヤキャラクタ制御データ705と、敵キャラクタ制御データ706と、設定済格納オブジェクト管理データ710と、通知制御データ740と、出現済サブキャラクタ制御データ750と、を含む。勿論、これら以外のデータも適宜含めることができる。
プレーヤキャラクタ制御データ705と敵キャラクタ制御データ706は、それぞれプレーヤキャラクタ4や敵キャラクタ6毎に用意され、当該キャラクタのゲーム空間内での最新状態を記述する各種データ(例えば、位置座標や、姿勢、能力パラメータ値、キャラクタモデルのモーション制御データ、など)を格納する。
設定済格納オブジェクト管理データ710は、プレーヤがサブキャラクタと格納オブジェクトとを組み合わせる設定操作する毎に、つまり設定済格納オブジェクト8毎に作成され、当該設定済格納オブジェクト8に係る各種データが格納される。
一つの設定済格納オブジェクト管理データ710は、例えば図20に示すように、固有の格納オブジェクトID711と、最新飛翔制御設定712と、適用格納オブジェクト用アイテムID714と、格納開始日時716と、格納キャラクタ管理データ720と、飛翔初期条件726と、追尾型設定フラグ728と、飛翔先座標730と、飛翔経路データ731と、飛翔速度ベクトル732と、位置座標734と、を含む。勿論、これら以外のデータも適宜含めることができる。
最新飛翔制御設定712に含まれるデータの種類は、初期飛翔制御設定535(図15参照)と同様である。最新飛翔制御設定712には、設定当初、当該格納オブジェクトの初期飛翔制御設定535がコピーされるが、サブキャラクタ5との組み合わせ等に応じて変更される。
適用格納オブジェクト用アイテムID714は、当該格納オブジェクトに対応付けられた格納オブジェクト用アイテムのアイテムIDである。
格納開始日時716は、格納オブジェクト7にサブキャラクタ5が格納されたタイミングの現在日時800が格納される。言い換えると、当該設定済格納オブジェクト8が設定された日時である。格納開始日時716とその時の現在日時800との差が、当該設定済格納オブジェクト8における格納オブジェクト7にサブキャラクタ5が格納されてからの時間経過となる。
格納キャラクタ管理データ720は、当該設定済格納オブジェクト8と組み合わされたサブキャラクタ5毎に作成され、当該サブキャラクタ5に係る各種データを格納する。一つの格納キャラクタ管理データ720は、例えば、格納キャラクタID721と、最新行動制御設定722と、適用サブキャラクタ用アイテムID723と、を含む。
最新行動制御設定722に含まれるデータの種類は、初期行動制御設定525(図14参照)と同様である。最新行動制御設定722には、設定当初、当該サブキャラクタ5の初期行動制御設定525がコピーされるが、格納オブジェクト7との組み合わせ等に応じて変更される。
適用サブキャラクタ用アイテムID723は、当該サブキャラクタに対応付けられたサブキャラクタ用アイテムのアイテムIDである。
飛翔初期条件726は、当該設定済格納オブジェクト8の投擲に係る各種初期条件を格納する。本実施形態では、投擲方向を示すベクトルと投擲力の値を格納する。本実施形態では、投擲方向はプレーヤキャラクタ4の正面方向(投擲方向マーカ12の方向;図4参照)に一致するように逐次更新される。投擲力は所定の初期値に設定されるが、投擲力入力バー14(図4参照)へのタッチ操作すなわち投擲力の入力操作に応じた投擲力に更新される。
追尾型設定フラグ728は、当該設定済格納オブジェクト8の飛翔が、敵キャラクタ6に追尾させる追尾型の飛翔に設定されているか否かを示すフラグである。当該設定済格納オブジェクト8における格納オブジェクト7の初期飛翔制御設定535(図15参照)の初期追尾型飛翔設定535fが「有り」に設定されていれば、追尾型設定フラグ728は「1(設定あり)」に初期設定される。勿論、後の飛翔制御設定の変更により変更されるかもしれない。
飛翔先座標730は、飛翔先となるゲーム空間の位置座標を格納する。但し、当該設定済格納オブジェクト8の飛翔が追尾型の飛翔に設定されている場合には、当該追尾対象とされる敵キャラクタ6の位置座標、又はその位置座標が格納されたポインタを格納する。
飛翔経路データ731は、当該設定済格納オブジェクト8が飛翔する経路を示す関数又は通過点の座標値リストである。設定済格納オブジェクト8の投擲開始とともに作成され、当該データの経路に沿って移動制御されることとなる。経路は、飛翔初期条件726に基づく物理演算又は擬似物理演算等により求めるとしてもよいし、予め定義した擬似放物線等の関数を適用するとしてもよい。
図19に戻って、通知制御データ740は、飛翔に係る予測等の通知のための各種データを格納する。例えば、予測飛翔経路30(図11参照)を表示するための予測軌道オブジェクトデータ741と、予測飛翔先32(図11参照)を表示するための予測飛翔先オブジェクトデータ742と、変化状態予告表示66(図9参照)を表示するための変化状態予告表示データ743と、経時変化状態表示70(図10、図11参照)を表示するための経時変化状態表示データ744と、を含む。
出現済サブキャラクタ制御データ750は、設定済格納オブジェクト8からサブキャラクタ5が開放されてゲーム空間に出現すると作成される。当該サブキャラクタの最新状態を記述する各種データ(例えば、位置座標や、姿勢、能力パラメータ値、キャラクタモデルのモーション制御データ、残可動時間(行動制限時間の残り時間)、など)を格納する。
図21は、本実施形態におけるユーザ端末1500の機能構成の一例を示す機能ブロック図である。本実施形態のユーザ端末1500は、操作入力部100と、端末処理部200と、音出力部390と、画像表示部392と、通信部394と、端末記憶部500とを備える。
操作入力部100は、プレーヤによってなされた各種の操作入力に応じた操作入力信号を端末処理部200に出力する。例えば、プッシュスイッチや、ジョイスティック、タッチパッド、トラックボール、加速度センサ、ジャイロ、CCDモジュール、などによって実現できる。図2の方向入力キー1502や、ボタンスイッチ1504、タッチパネル1506がこれに該当する。
端末処理部200は、例えばCPUやGPU等のマイクロプロセッサや、ICメモリなどの電子部品によって実現され、操作入力部100や端末記憶部500を含む各機能部との間でデータの入出力制御を行う。そして、所定のプログラムやデータ、操作入力部100からの操作入力信号、サーバシステム1100から受信した各種データに基づいて各種の演算処理を実行して、ユーザ端末1500の動作を制御する。図2の制御基板1550がこれに該当する。そして、本実施形態における端末処理部200は、ユーザ端末演算部280と、計時部288と、音生成部290と、通信制御部294と、を備える。
ユーザ端末演算部280は、操作信号送信制御部281と、ゲーム画面表示制御部282とを含む。
操作信号送信制御部281は、操作入力部100へなされた操作に応じて、各種データやリクエストをサーバシステム1100へ送信するための処理を実行する。
ゲーム画面表示制御部282は、サーバシステム1100から受信した各種データに基づいてゲーム画面を表示するための制御を行う。本実施形態では、ゲーム空間画像(例えば、3DCG画像など)をサーバシステム1100にて生成する構成とするが、ゲーム空間画像をユーザ端末1500で生成する構成も可能である。その場合、ゲーム画面表示制御部282は、例えば3DCGを生成するための仮想3次元空間に配置されたオブジェクトの制御を含むこととなる。
音生成部290は、例えばデジタルシグナルプロセッサ(DSP)や、音声合成ICなどのプロセッサ、音声ファイル再生可能なオーディオコーデック等によって実現され、ゲーム画面表示制御部282による処理結果に基づいてゲームに係る効果音やBGM、各種操作音の音信号を生成し、音出力部390に出力する。
音出力部390は、音生成部290から入力される音信号に基づいて効果音やBGM等を音出力する装置によって実現される。図2のスピーカ1510がこれに該当する。
画像表示部392は、ゲーム画面表示制御部282から入力される画像信号に基づいて各種ゲーム画像を表示する。例えば、フラットパネルディスプレイ、ブラウン管(CRT)、プロジェクター、ヘッドマウントディスプレイといった画像表示装置によって実現できる。本実施形態では、図2のタッチパネル1506がこれに該当する。
通信制御部294は、データ通信に係るデータ処理を実行し、通信部394を介して外部装置とのデータのやりとりを実現する。通信部394は、通信回線9と接続して通信を実現する。例えば、無線通信機、モデム、TA(ターミナルアダプタ)、有線用の通信ケーブルのジャックや制御回路等によって実現され、図2の無線通信モジュール1553がこれに該当する。
端末記憶部500は、端末処理部200にユーザ端末1500を統合的に制御させるための諸機能を実現するためのプログラムや、各種データ等を記憶する。また、端末処理部200の作業領域として用いられ、端末処理部200が各種プログラムに従って実行した演算結果や操作入力部100から入力される入力データ等を一時的に記憶する。こうした機能は、例えばRAMやROMなどのICメモリ、ハードディスク等の磁気ディスク、CD−ROMやDVDなどの光学ディスクなどによって実現される。図2の制御基板1550が搭載するICメモリ1552やメモリカード1540がこれに該当する。
本実施形態の端末記憶部500は、ゲームクライアントプログラム504、を記憶する。勿論、これら以外のプログラムやデータも適宜記憶することができる。
ゲームクライアントプログラム504は、端末処理部200が読み出して実行することによってユーザ端末演算部280としての機能を実現させるためのアプリケーションソフトウェアである。本実施形態では、サーバシステム1100から提供される配信用ゲームクライアントプログラム502(図13参照)のコピーとする。
なお、ゲームクライアントプログラム504は、オンラインゲームを実現する技術手法に応じて専用のクライアントプログラムであっても良いし、ウェブブラウザプログラム及びインタラクティブな画像表示を実現するプラグインなどにより構成するとしてもよい。
[動作の説明]
次に、サーバシステム1100における処理の流れについて説明する。ここで説明する処理の流れは、サーバ処理部200sがサーバプログラム501を実行することにより実現される。
図22〜図23は、1ゲームプレイに係るサーバシステム1100における処理の流れについて説明するためのフローチャートである。
サーバシステム1100は、使用するゲーム空間の選択とプレーヤキャラクタ4とするメインキャラクタ3の選択とを受け付ける(ステップS10)。例えば、使用するゲーム空間については、ユーザ端末1500にて、ゲーム空間初期設定データ510で定義されるゲーム空間を選択可能に提示して、何れでプレイするかの選択操作を受け付ける。プレーヤキャラクタ4については、プレーヤが所有するメインキャラクタ3の一覧を選択可能に提示して、選択操作を受け付ける。
次に、サーバシステム1100は、ゲームプレイ開始当初よりプレーヤキャラクタ4に所持させる分の設定済格納オブジェクト8の設定を行う(ステップS12)。具体的には、所定数の設定済格納オブジェクト8の設定を可能とし、それぞれについて格納設定処理を実行する。
図24は、格納設定処理の流れを説明するためのフローチャートである。
同処理において、サーバシステム1100は、先ず、プレーヤによる組み合わせ設定操作入力に応じて、サブキャラクタ5と格納オブジェクト7との組み合わせを設定する(ステップS50)。
具体的には、サーバシステム1100は、準備操作画面W6(図9参照)をユーザ端末1500にて表示させる。使用サブキャラクタ選択欄61及び使用格納オブジェクト選択欄63では、プレーヤが所有するサブキャラクタ5と格納オブジェクト7の中から、それぞれ未使用(設定済格納オブジェクト管理データ710が無いもの:図19参照)のキャラクタやオブジェクトを抽出して選択可能に提示する。この際、選択されている格納オブジェクト7の初期格納可能上限数535g(図15参照)が複数の場合には、これを上限として組み合わせるサブキャラクタ5を複数選択受け付けできるものとする。これにより、設定済格納オブジェクト8の1次設定がなされることとなり、プレイデータ700に、新たな設定済格納オブジェクト管理データ710を作成される(図20参照)。
次いで、サーバシステム1100は、サブキャラクタ5と格納オブジェクト7との組み合わせに応じて最新飛翔制御設定712と最新行動制御設定722を初期化する(ステップS52;図20参照)。
具体的には、最新飛翔制御設定712には、選択された格納オブジェクト7の初期飛翔制御設定535(図15参照)がコピーされ、最新行動制御設定722には、選択されたサブキャラクタ5の初期行動制御設定525(図14参照)がコピーされて初期化される。
次に、サーバシステム1100は、飛翔制御設定変化定義データ540(図16参照)と、行動制御設定変化定義データ560(図17参照)とに基づいて、初期化された最新飛翔制御設定712と最新行動制御設定722とを変更する(ステップS54)。
そして、サーバシステム1100は、ユーザ端末1500にて、変化状態予告表示66(図9参照)の表示を開始する(ステップS56)。
この変化状態予告表示66を見ることで、プレーヤは今回作成する組み合わせが適当であるか、アイテムを使用してより飛翔性能や行動性能を向上するべきかを判断できる。
変化状態予告表示66を見て満足できなければ、プレーヤは、アイテムを使用することでこの組み合わせをベースに飛翔性能や行動性能を調節することができる。
すなわち、ユーザ端末1500にて、飛翔制御設定と行動制御設定との何れかを変更する作用効果があるアイテムの使用操作を検出すると(ステップS58のNO→ステップS60のYES)、サーバシステム1100は、使用されたアイテムを使用先(格納オブジェクト7、サブキャラクタ5)に対応づける(ステップS62)。使用されたアイテムの情報は、適用格納オブジェクト用アイテムID714や適用サブキャラクタ用アイテムID723(図20参照)に格納される。
そして、サーバシステム1100は、使用されたアイテムの作用効果に基づいて、最新飛翔制御設定712や最新行動制御設定722を変更する(ステップS64)。そして、変化状況予告表示を更新し(ステップS65)、ステップS58に戻る。
また、変化状態予告表示66を見て満足できなければ、プレーヤは、そもそものサブキャラクタ5と格納オブジェクト7の組み合わせを変更することができる。所定の組み合わせの変更操作を検出した場合には(ステップS66のYES)、ステップS52に戻る。
そして、ユーザ端末1500にて所定の格納設定完了操作の入力を検出すると(ステップS58のYES)、サーバシステム1100は、格納開始日時716に現在日時800をコピーして初期化し(ステップS68)、格納設定処理を終了する。
図22に戻って、次に、サーバシステム1100は、ゲームプレイの進行制御を開始する(ステップS80)。すなわち、ステップS10で選択されたゲーム空間のゲーム空間初期設定データ510(図13参照)に従って、仮想3次元空間に背景オブジェクトを配置してゲーム空間を形成し、プレーヤキャラクタ4と敵キャラクタ6とを配置する。そして、プレーヤキャラクタ4の操作入力に応じてプレーヤキャラクタ4を動作させる制御と、敵キャラクタ6の自動制御を開始する。その他、対戦ゲームの進行制御として基本的に必要とされる制御も適宜開始されるものとする。
ゲームプレイ開始以降、ユーザ端末1500にて所定のサブキャラクタ5や格納オブジェクト7の入手操作(例えば、オンラインショッピングによる購入など)がなされたならば(ステップS82のYES)、サーバシステム1100は格納オブジェクト7の入手処理を実行する(ステップS84)。
また、ゲームプレイ開始以降に、ゲーム進行状況が、使用ゲーム空間ID704が示すゲーム空間における格納オブジェクト付与条件やサブキャラクタ付与条件を満たしたならば(ステップS86のYES)、サーバシステム1100は、満たされた条件に応じて新たなサブキャラクタ5や格納オブジェクト7をプレーヤに付与する(ステップS88)。
この様に、本実施形態によれば、プレーヤはゲームプレイ中でもサブキャラクタ5を使用するための素材を入手できる機会が得られる。サブキャラクタを使用可能な従来の対戦ゲームでは、予め用意したサブキャラクタそのままでしかゲームプレイで使用できない。そのため、プレーヤによっては、ゲーム開始早々に自身が想定していた戦略や戦術が的外れでゲームが進められなくなり、あっさりゲームプレイを放棄したりリセットしてしまうことも起こり得た。しかし、本実施形態では、対戦の戦況に応じて次の手を打つ自由度があるので、ゲームプレイ中に形勢逆転を狙う楽しさが生まれる。
さて、ゲームプレイ開始以降に、ユーザ端末にて、所定の格納設定開始操作が入力されたならば(ステップS90のYES)、サーバシステム1100は格納設定処理を実行する(ステップS91)。
そして、ゲームプレイ中に、ユーザ端末1500にて所定の飛翔前操作、具体的には飛翔させる(投擲する)ことが可能な設定済格納オブジェクト8が選択可能に表示される設定済格納オブジェクトリスト10のリスト呼出操作の入力を検出すると(ステップS92のYES)、サーバシステム1100は、ユーザ端末1500にて設定済格納オブジェクトリスト10(図10参照)を表示させ、投擲する設定済格納オブジェクト8の選択操作を受け付ける(ステップS94)。この時、選択された設定済格納オブジェクト8の最新飛翔制御設定712の同時投擲可能数(図15の初期同時投擲可能数535hのコピー値又は後に変更された値)が複数の場合は複数の選択を受け付ける。
そして、サーバシステム1100は、設定済格納オブジェクトリスト10から選択されている設定済格納オブジェクト8の最新飛翔制御設定712と最新行動制御設定722とを、格納開始日時716から今現在までの時間経過に応じて経時変化制御する(ステップS96)。
具体的には、飛翔制御設定変化定義データ540(図16参照)のうち、設定済格納オブジェクトリスト10から選択されている設定済格納オブジェクト8に係り変更実施要件541が満たされている定義データを検索し、検索された定義データの変更内容データ550に従って、最新飛翔制御設定712を変更する。
また、行動制御設定変化定義データ560(図17参照)のうち、リストから選択されている設定済格納オブジェクト8に係り変更実施要件561が満たされている定義データを検索し、検索された定義データの変更内容データ570に従って、最新行動制御設定722を変更する。
そして、経時変化制御の結果を反映した経時変化状態表示70(図10参照)をポップアップ表示させる(ステップS98)。
プレーヤは、この経時変化状態表示70を見て、今現在、設定済格納オブジェクトリスト10から選択している設定済格納オブジェクト8の経時変化状態を確認し、期待している変化が起きているか、起きていなくとも今投擲しても良いかを判断する。
投擲する設定済格納オブジェクト8の選択は、所定の選択確定操作が入力されるまでは、再選択可能である(ステップS100のNO)。
投擲する設定済格納オブジェクト8の選択確定操作が入力されたならば(ステップS100のYES)、図23に移って、サーバシステム1100は、目標指示操作の受付用に、投擲方向マーカ12と投擲力入力バー14と投擲力指示バー15とをゲーム画面に表示させる(ステップS110)。そして、それらへの目標指示操作に応じた飛翔初期条件726(図20参照)の投擲ベクトルの向きをプレーヤキャラクタ4の正面方向に逐次合わせるように調整する制御を開始し(ステップS112)、投擲力の逐次調整を開始するステップS114)。
また、サーバシステム1100は、最新の飛翔初期条件726の諸元に応じた飛翔経路と飛翔先との逐次調整を開始するとともに(ステップS116)、予測飛翔経路30・予測飛翔先32・経時変化状態表示70の表示を開始する(ステップS118;図11参照))。
予測飛翔先32は、飛翔先座標730を中心に、最新飛翔制御設定712に含まれる初期誤差(図15の初期投擲方向精度535d、初期投擲力精度535eのコピー又は変更された値)に応じた範囲を所定のオブジェクトで表現する。
予測飛翔経路30は、プレーヤキャラクタ4から飛翔先座標730を、飛翔経路データ731の示す経路で結ぶオブジェクトを設定して表現する。
勿論、これらの予測表示は、飛翔先座標730と飛翔経路データ731とが更新される都度に再表示される。
なお、投擲される設定済格納オブジェクト8の追尾型設定フラグ728(図20参照)が「1(設定あり)」になっている場合は、追尾の対象とされる敵キャラクタ6に、ロックオンマーカ19(図6参照)を表示する。
プレーヤであるユーザ2は、予測飛翔先32や、予測飛翔経路30、経時変化状態表示70を見て、狙い通りの飛翔先や飛翔経路が予測されており、投擲する設定済格納オブジェクト8の効力状態に問題がなければ、飛翔の発動指示操作を入力して、アクション操作を完了させる。
発動指示操作を入力するまでは、プレーヤキャラクタ4の正面方向を変えるなどして、投擲方向や投擲力を調整することができる(ステップS130のNO)。
そして、発動指示操作を検出したならば(ステップS130のYES)、サーバシステム1100は、アクション操作が完了したと見なし、投擲対象として選択された設定済格納オブジェクト8をプレーヤキャラクタ4に投擲させる。つまり、投擲対象として選択された設定済格納オブジェクト8をゲーム空間に出現させ、最新飛翔制御設定712に基づく飛翔制御を開始する(ステップS132)。飛翔制御は、それぞれが飛翔終了条件を満たすまで継続される。本実施形態では、飛翔終了条件は、飛翔している設定済格納オブジェクト8が敵キャラクタ6や他オブジェクトとの接触とする。
なお、ステップS92〜ステップS118において、所定のアクション操作を適宜受付可能とする。
次に、サーバシステム1100は、飛翔終了条件を満たす設定済格納オブジェクト8を検索し、該当する設定済格納オブジェクト8が有れば、当該設定済格納オブジェクト8に格納されているサブキャラクタ5をゲーム空間に出現させ、最新行動制御設定722に基づく自動制御を開始する(ステップS134)。
これに伴って、自動制御の開始に伴って、サーバシステム1100は、プレイデータ700(図19参照)に、出現済サブキャラクタ制御データ750を作成し、自動制御による最新の状況を記述する各種データをここに格納し、逐一更新する。
自動制御が開始されたサブキャラクタ5は、行動制限時間(可動時間)に達するか、出現済のサブキャラクタ5も敵キャラクタ6の攻撃を受けるとダメージを受け、受けたダメージが能力パラメータ値の一つである耐久値に達するまで、行動可能であり自動制御される。なお、行動制限時間(可動時間)に基づく判定に関しては、当該サブキャラクタが出現されるのに伴って出現済サブキャラクタ制御データ750に出現日時として現在日時800がコピーされ、それ以降、この出現日時から現在日時800への経過時間をもとに判定を行うこととする。
また、新たにサブキャラクタ5を出現させるのに伴って、サーバシステム1100は、当該サブキャラクタに対応するサブキャラクタ視点仮想カメラを追加設定し、ゲーム画面内に所定の視点切換操作アイコンを表示させ、視点切換操作の受付を可能にするとしてもよい。そして、ゲームプレイ中に、視点切換操作アイコンへの操作を検出すると、サーバシステム1100は、視点切換処理を実行する。すなわち、操作された視点切換操作アイコンに対応する仮想カメラを視点とするゲーム空間の画像をゲーム画面とするように表示切換を行うとしてもよい。
次いで、サーバシステム1100は、未飛翔の設定済格納オブジェクト8の最新飛翔制御設定712と最新行動制御設定722とを、格納開始日時716から今現在までの時間経過に応じて経時変化制御する(ステップS136)。
さて、サーバシステム1100は、ゲーム終了条件が満たされるまで、ステップS82〜S136を繰り返し実行する(ステップS200のNO)。
ゲーム終了条件が満たされれば(ステップS200のYES)、サブキャラクタ5と格納オブジェクト7の進展制御を行う(ステップS202)。具体的には、投擲された設定済格納オブジェクト8のサブキャラクタ5及び格納オブジェクト7に対して経験値を付与し、累積された経験値に応じてサブキャラクタレベルや格納オブジェクトレベルを変更する。なお、進展制御は、サブキャラクタ5と格納オブジェクト7の何れか一方に限っても良い。また、進展の対象は、投擲された設定済格納オブジェクト8であって、且つ開放条件を満たした設定済格納オブジェクト8に限定してもよい。
次に、サーバシステム1100は、プレイ成績に応じてプレーヤにボーナスを付与する(ステップS204)。例えば、メインキャラクタ3や、サブキャラクタ5、格納オブジェクト7、アイテム、の付与としてもよい。また、新しいゲーム空間をプレイ可能に開放などとすることもできる。
そして、サーバシステム1100は、プレイ履歴を更新して(ステップS206)、一連の処理を終了する。
以上、本実施形態によれば、味方NPCに関する新たな興趣をもたらすことができる技術を提供することができる。
すなわち、プレーヤキャラクタ4(プレーヤが操作するメインキャラクタ3)に味方するNPCであるサブキャラクタ5を格納オブジェクト7に格納して、プレーヤキャラクタ4に投擲させて飛翔させ、格納されていたサブキャラクタ5を投擲により到達した先で出現させて攻撃に参加させるという、今までに無い新しい興趣を対戦型のビデオゲームに追加することができる。
しかも、投擲された設定済格納オブジェクト8の移動制御に関する飛翔制御設定や、設定済格納オブジェクト8から開放・出現されたサブキャラクタ5の自動制御に関する行動制御設定が、サブキャラクタ5と格納オブジェクト7との組み合わせや、サブキャラクタ5及び格納オブジェクト7へのアイテムの対応づけ、設定済格納オブジェクト8が設定されてからの時間経過、などに応じて変更される従来にない技術が組み込まれている。
従って、プレーヤは、どのサブキャラクタ5とどの格納オブジェクト7とを組み合わせるか、それらの飛翔性能や行動性能がどのように経時変化にするか、を考慮した戦術を思考する楽しさが得られる。そして、そのための基本情報が、変化状態予告表示66(図9参照)や経時変化状態表示70(図10参照)によりプレーヤに提供されるので、新たに加えられた興趣を支えるユーザビリティも確保されている。
また、経時変化の制御対象である飛翔制御設定の項目には、飛翔可能距離や、追尾型の飛翔とする設定が含まれている。また、経時変化の制御対象である飛翔制御設定の項目には、攻撃行動の設定や、攻撃対象とする敵キャラクタ6の部位に関する設定、攻撃の種類、などが含まれている。よって、ゲーム空間の状況や、敵キャラクタ6の種類、などに応じて様々な戦術が可能となり、戦術を思考は更に深くなり、飽きの来ないやり込み要素に優れたゲームとなる。
〔第2実施形態〕
次に、本発明を適用した第2実施形態について説明する。本実施形態は、基本的には第1実施形態と同様に実現されるが、ゲーム管理の処理主体がユーザ端末1500である点が異なる。以降では、主に第1実施形態との差異について述べることとし、第1実施形態と同様の構成要素については同じ符号を付与して説明は省略するものとする。
本実施形態のゲームシステム1000は、第1実施形態と同様に実現される。
また、本実施形態のサーバシステム1100の機能構成からは、ゲーム管理部210が省略される。
図25は、本実施形態におけるユーザ端末1500Bの機能構成例を示す機能ブロック図である。本実施形態のユーザ端末1500Bは、ユーザ端末演算部280が省略され、その代わりにゲーム管理部210と、画像生成部292を有する。ユーザ端末1500Bは、ゲーム装置とも言うことができる装置である。
画像生成部292は、ゲーム画面を画像表示部392に表示させるためのデータを生成し、画像信号を画像表示部392に出力する。
すなわち、本実施形態ではユーザ端末1500Bは、自身でゲーム管理に関する演算処理を実行して、ゲーム進行を制御し、ゲーム画面の画像を生成し、音声再生を制御する。但し、オンラインショッピングの利用や、登録ユーザとしてのログイン/ログアウト、プレイ履歴の管理などは第1実施形態と同様に行われる。ただし、ユーザ端末1500Bをスタンドアローンのゲーム機として機能させる場合、つまり対戦ゲームを非オンラインゲームとして実現する場合には、この限りではない。
図26は、本実施形態のユーザ端末1500Bの端末記憶部500に記憶されるプログラムやデータの例を示す図である。本実施形態の端末記憶部500は、ゲームプログラム505を記憶する。ゲームプログラム505は、ゲーム管理部210としての機能を端末処理部200に実現させるためのプログラムである。そのオリジナルは、サーバシステム1100に配信用ゲームプログラムとして記憶させておき、適宜ダウンロードするとしてもよい。
また、本実施形態の端末記憶部500は、ゲーム管理部210がユーザ端末1500Bにて処理されるのに伴って、ゲーム空間初期設定データ510、敵キャラクタ初期設定データ512、アイテム初期設定データ516、メインキャラクタ初期設定データ518、サブキャラクタ初期設定データ520、格納オブジェクト初期設定データ530、飛翔制御設定変化定義データ540、行動制御設定変化定義データ560、経時変化制御パターン定義データ580、を記憶する。これらのオリジナルは、本実施形態のサーバシステム1100が記憶しており、必要に応じてダウンロードする構成としてもよい。また、逐次、作成・更新するデータとして、プレイデータ700が記憶される。
本実施形態におけるユーザ端末1500Bで実行される処理の流れは、第1実施形態におけるサーバシステム1100におけるそれと基本的に同じであり(図22〜図25参照)、ゲーム管理部210をユーザ端末1500Bにて実行するのに合わせて、適宜各ステップの実行主体をユーザ端末1500Bと読み替えれば良い。
ユーザ端末1500Bにてユーザ管理データ600を参照・変更する必要がある処理を実行する場合には、適宜サーバシステム1100へ必要なデータの提供や照合等をリクエストする。或いは、処理そのものをリクエストして対処するものとする。
もし、ユーザ端末1500Bをスタンドアローンのゲーム機として機能させる場合、つまり対戦ゲームを非オンラインゲームとして実現する場合には、ユーザ管理データ600もユーザ端末1500Bにて管理する構成では、端末記憶部500にユーザ管理データ600も記憶させればよい。
本実施形態によれば、第1実施形態と同様の作用効果が得られる。
〔変形例〕
以上、本発明を適用した実施形態について説明したが、本発明を適用可能な形態は上記形態に限定されるものではなく適宜構成要素の追加・省略・変更を施すことができる。
[変形例その1]
例えば、上記実施形態では、クライアント・サーバ型のコンピュータシステムにてオンラインゲームを実現する例を挙げたが、ゲーム装置とも言える複数のユーザ端末1500(或いはユーザ端末1500B)をピアツーピア接続したコンピュータシステムにおいて実現するとしてもよい。その場合、何れかのユーザ端末1500に第1実施形態のサーバシステム1100としての機能を担わせる。或いは、複数のユーザ端末1500でゲーム管理部210が有する機能を分担して担う構成としてもよい。
[変形例その2]
また、上記実施形態では、ゲームジャンルを対戦ゲームとしたが、サブキャラクタ5を使用するゲームであれば、本発明を同様に適用できる。
[変形例その3]
また、飛翔制御設定や行動制御設定の変更は、これまで例示したようにプレーヤにとって有利に作用する内容に限らず、不利に作用する内容も設定可能である。
[変形例その4]
ユーザ端末1500,1500Bのハードウェア構成は、上記実施形態に限らない。
例えば、図27に示すような形態のゲーム装置1400をユーザ端末1500Cとして用いるとしてもよい。
ゲーム装置1400は、携行性と使用時の利便性とを考慮してデザインされた、携帯型ゲーム装置或いは家庭用ゲーム装置に分類されるコンピュータである。ゲーム装置1400は、本体装置1401と、少なくとも1つの着脱可能なゲームコントローラ1460(右ゲームコントローラ1460R、左ゲームコントローラ1460L)と、を備える。
本体装置1401は、画像表示デバイス兼接触位置入力デバイスとして機能するタッチパネル1406と、コネクタ1407と、内蔵バッテリー1409と、スピーカ1410と、制御基板1450と、を備える。その他、電源ボタン、音量調節ボタン等が適宜設けられている。
コネクタ1407は、右ゲームコントローラ1460R及び左ゲームコントローラ1460Lに対応して本体装置1401の左右の端部それぞれに設けられている。そして、右ゲームコントローラ1460Rや左ゲームコントローラ1460Lのコネクタと接続されて、ゲームコントローラと本体装置1401との間の通信を実現する。
制御基板1450は、CPU(Central Processing Unit)1451やGPU(Graphics Processing Unit),DSP(Digital Signal Processor)などの各種プロセッサ、VRAMやRAM,ROM等の各種ICメモリ1452、携帯電話基地局や無線LAN基地局、近距離無線器を有する他の装置などと無線通信するための通信モジュール1453、インターフェース回路1457などを搭載する。
インターフェース回路1457には、タッチパネル1406のドライバ回路、コネクタ1407を介して右ゲームコントローラ1460Rや左ゲームコントローラ1460Lと信号を送受信する回路、スピーカ1410へ音声信号を出力する出力アンプ回路、などが含まれている。
制御基板1450に搭載されているこれらの要素は、バス回路などを介して電気的に接続され、データの読み書きや信号の送受信が可能に接続されている。なお、制御基板1450の一部又は全部をASIC(Application Specific Integrated Circuit)やFPGA(Field-Programmable Gate Array)、SoC(System on a Chip)にて構成してもよい。
制御基板1450は、プログラムや各種データをICメモリ1452に記憶しており、制御基板1450がそれらに基づいて演算処理することにより、本発明のゲームを実行する各種機能を実装する。
右ゲームコントローラ1460R及び左ゲームコントローラ1460Lは、プレーヤがそれぞれ右手・左手に把持されるようにデザインされている。そして、右ゲームコントローラ1460R及び左ゲームコントローラ1460Lは、それぞれ、ジョイスティック1461と、操作ボタンとなる複数のプッシュスイッチ1462と、振動発生デバイスであるバイブレータ1463と、スピーカ1464と、コネクタ1467と、コントローラ制御基板1470と、内蔵バッテリー(図視略)と、を備える。
コントローラ制御基板1470は、当該ゲームコントローラを制御するプロセッサに相当するコントローラ制御IC1471と、通信モジュール1473と、3軸加速度センサ1475と、3軸ジャイロセンサ1476と、インターフェース回路1477と、を備える。
勿論、これら以外の要素、例えばイメージセンサモジュールなども適宜含めることができる。或いは、一部の要素で他の要素の機能を兼用させることで、当該他の要素を省略することもできる。例えば、3軸加速度センサ1475と3軸ジャイロセンサ1476とを1つのセンサで実現する構成、コントローラ制御IC1471とインターフェース回路1477とを統合した構成、なども可能である。
通信モジュール1473は、本体装置1401の通信モジュール1453との間で、無線通信を実現する。
そして、図28に示すように、右ゲームコントローラ1460Rの3軸加速度センサ1475は、右手系のローカル座標(Xr・Yr・Zr)を構成している。具体的には、右ゲームコントローラ1460Rの正面向かって右方向(図28の右側)がXr軸の正方向、コントローラの長手方向上側(図28の上側)がYr軸の正方向、コントローラの正面法線方向つまりコントローラの正面手前側(図28の手前側)がZr軸の正方向となるように構成されている。
右ゲームコントローラ1460Rの3軸ジャイロセンサ1476は、右手系のローカル座標(Xr・Yr・Zr)を構成しており、右ゲームコントローラ1460Rの3軸加速度センサ1475の各軸回りの角速度を検出できるように構成されている。
そして、右ゲームコントローラ1460Rの左端には、コネクタ1467を塞ぐようにアタッチメント1468が装着可能とされる。右ゲームコントローラ1460Rは、当該コントローラの右側を右手の親指及び母指球に当てて、当該コントローラのアタッチメント1468を人差し指から小指で包むようにして把持される。換言すると、正面側とは反対の背面側を掌側にして片手で握るようにして保持される。
同様にして、左ゲームコントローラ1460Lの3軸加速度センサ1475は、左手系のローカル座標(Xl・Yl・Zl)を構成している。具体的には、左ゲームコントローラ1460Lの正面向かって左方向(図28の左側)がXl軸の正方向、コントローラの長手方向上側(図28の上側)がYl軸の正方向、コントローラの正面法線方向つまりコントローラの正面手前側(図28の手前側)がZl軸の正方向となるように構成されている。
左ゲームコントローラ1460Lの3軸ジャイロセンサ1476は、左手系のローカル座標(Xl・Yl・Zl)を構成しており、左ゲームコントローラ1460Lの3軸加速度センサ1475の各軸回りの角速度を検出できるように構成されている。
そして、左ゲームコントローラ1460Lの左端には、コネクタ1467を塞ぐようにアタッチメント1468が装着可能とされる。左ゲームコントローラ1460Lは、当該コントローラの左側を左手の親指及び母指球に当てて、当該コントローラのアタッチメント1468を人差し指から小指で包むようにして把持される。換言すると、正面側とは反対の背面側を掌側にして片手で握るようにして保持される。
ユーザ端末1500C(ゲーム装置1400)を採用する構成では、上記実施形態における飛翔開始操作を、左ゲームコントローラ1460L又は右ゲームコントローラ1460Rで、腕を振ったと認められる所定の基準値を超える加速度や角速度の検出により実現することができる。また、その時の加速度や角速度の最大値をもって、投擲力入力バー14(図4参照)への投擲力の入力に代替することもできる。