以下、本発明の実施形態の例を説明するが、本発明を適用可能な形態が以下の実施形態に限られないことは勿論である。
〔第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などの記憶媒体から読み出す構成としても良い。
[ゲームの説明]
本実施形態は、オンラインゲームであって、プレーヤの操作対象であるプレーヤキャラクタ及び味方キャラクタの2体を少なくとも含む味方グループと、1体以上の敵キャラクタで構成された敵グループとが対戦するゲームである。本実施形態では、プレーヤ2aとプレーヤ2bとの1対1の対戦プレイとして説明するが、一方のプレーヤをコンピュータ制御とするコンピュータ対戦タイプとしてもよい。また、1グループ1名に限らず、1グループ複数名によるチーム対戦タイプとしてもよい。
図3は、本実施形態のゲームをプレイするための準備操作について説明するための図である。先ず、ゲームの前提として、各プレーヤ2(2a,2b,…)は、ゲーム媒体として、メインキャラクタ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(2a,2b,…)は、ゲームプレイに先立ってそれらの一つ又は複数を入手・所有する。例えば、初期設定で予め付与されるほか、オンラインショッピングで購入することもできる。また、ゲームを進めるうちに獲得状況に至った場合に獲得することができる。
ゲームプレイに当たっては、各プレーヤ2(2a,2b,…)は幾つかの準備操作を行う。
本実施形態の準備操作には、プレイするゲーム空間(ゲームステージと同じ意味である)を選択する操作と、各プレーヤ2(2a,2b,…)が所有するメインキャラクタ3(3a,3b,…)の中からプレーヤキャラクタ4を選択する操作と、が含まれる。また、使用する格納オブジェクト7と、これに格納するサブキャラクタ5との組み合わせの設定操作と、が含まれる。
格納オブジェクト7とサブキャラクタ5を組み合わせると、当該サブキャラクタ5は当該格納オブジェクト7に格納された扱いとなる。これを設定済格納オブジェクト8と呼ぶ。設定済格納オブジェクト8は、プレーヤキャラクタ4Aとして選択したメインキャラクタ3aが所有・所持している扱いとなる。例えば、ポケットやバックに収めて持ち歩いている扱いとなる。つまり、各プレーヤ2(2a,2b,…)は、自身が所有するメインキャラクタ3(3a,3b,…)に、格納オブジェクト7を組み合わせる、ということができる。
格納オブジェクト7とサブキャラクタ5との組み合わせが行われると、これに使用された格納オブジェクト7とサブキャラクタ5はそれぞれ「組み合わせ不可」の扱いとなり、重複した組み合わせはできないようになる。但し、格納オブジェクト7の種類によっては、複数のサブキャラクタ5を同時に格納できる場合もあるので、その場合は格納上限数に達するまでは当該格納オブジェクト7は組み合わせ不可の扱いとはならない。
ゲームプレイが開始されると、各プレーヤ2のユーザ端末1500(1500a,1500b,…)では、図4に示すようなゲーム画面W4が表示される。因みに、図4の例は、プレーヤ2aのユーザ端末1500aにおける表示例を示している。
本実施形態のゲーム画面W4は、仮想3次元空間に構築されたゲーム空間を、プレーヤキャラクタ4A越しに後ろ斜め上から撮影した画像(いわゆる三人称視点画像)がベースとされる。勿論、ゲームの味付けによっては、プレーヤキャラクタ4Aの一人称視点画像をベースとしても良い。
各プレーヤは、自身のプレーヤキャラクタ4を操作して、ゲーム空間を移動させ、敵キャラクタ6と遭遇するとこれと対戦する。図4の例では、敵キャラクタ6は対戦相手プレーヤのキャラクタすなわち、敵方グループのプレーヤキャラクタ4B(3c)又はサブキャラクタ5(5d,5f)ということになる(図3参照)。
敵キャラクタ6への攻撃は、プレーヤキャラクタ4による攻撃と、サブキャラクタ5を用いた攻撃との2通りが可能である。
図5は、サブキャラクタ5を用いた攻撃の概要説明図である。なお、ゲームに登場するオブジェクトを、投擲、打撃、発射、呪文の詠唱、スキルの発動、又はこれらに準じたプレーヤキャラクタ4のアクションにより、飛翔・転動・走行・滑走などをさせて移動させることができるが、以下説明では代表して「飛翔」による移動を説明する。他の移動であってもよいことは勿論である。
サブキャラクタ5を用いた攻撃は、a)プレーヤキャラクタ4が設定済格納オブジェクト8を投擲して飛翔させ、b)他オブジェクト(背景オブジェクトや敵キャラクタ6など)にぶつけて、c)格納されているサブキャラクタ5をそこに出現させると、d)出現したサブキャラクタ5が攻撃行動をとる、ことで実現される。
具体的には、図5(1)に示すように、プレーヤ2は、先ず、所定の飛翔前操作を行う。飛翔前操作では、ゲーム画面W4(図4参照)に、設定済格納オブジェクト8が選択可能に表示される設定済格納オブジェクトリスト10が表示される。プレーヤ2は当該リストの中から投擲する設定済格納オブジェクト8を選択する。図5(1)の例では、設定済格納オブジェクト8aが選択されている。
そして、アクション操作をすると、図5(2)に示すように、プレーヤキャラクタ4が、選択した設定済格納オブジェクト8を投擲する。本実施形態では、設定済格納オブジェクト8の使用アクションを「投擲」としているが、プレーヤキャラクタ4がロボットなどの場合には使用アクションを設定済格納オブジェクト8の「発射」(あるいは「射出」や「放出」などともいえる)などとしてもよい。
投擲方向はプレーヤキャラクタ4の正面方向とする。ゲーム画面W4(図4参照)には正面に投擲方向マーカ12(図4の例では画面中央の破線円)が表示されるので、プレーヤは投擲したい方向(投擲方向)に当該マーカが向くようにプレーヤキャラクタ4の位置や姿勢を調整すれば良い。また、ゲーム画面W4には、投擲力入力バー14が表示されるので、プレーヤが当該バーにタッチして投擲力を入力する。
なお、ここで言う「アクション操作」とは、所定のボタンスイッチを操作する、所定の操作アイコンをタッチ操作すると言った、ON/OFFにより検出できる操作は勿論のこと、タッチパネルへの単数又は複数指によるフリック操作、スライド操作、ユーザ端末1500やゲームコントローラを振る、と言った操作入力に係り検出される検出量により入力検出判定される操作も含まれる。
したがって、投擲方向と投擲力の入力は、上述の例に限らない。例えば、タッチパネル1506へのスワイプ操作により行うとしてもよい。すなわち、スワイプした方向を投擲方向とし、スワップする距離や速さを投擲力の入力と見なすとしても良い。また、ユーザ端末1500又は当該端末から分離可能なゲームコントローラ部に加速度センサを搭載する構成では、ユーザ端末1500やゲームコントローラ部を手に持って振ることで投擲力の入力を行う構成としてもよい。
投擲方向と投擲力が入力されると、投擲に係る初期条件が決定されたと見なされ、投擲される設定済格納オブジェクト8が飛翔する経路(飛翔経路:移動経路)と、到達する飛翔先とが決定される。飛翔経路や飛翔先(移動先)の決定は、物理演算又は擬似物理演算、予め用意されている複数種類の飛翔経路のなかからの選択、などにより実現され得る。
投擲力を入力すると、投擲するための方向と力の諸元が決まるので、図6に示すように、投擲される設定済格納オブジェクト8が辿る予測軌道31と、予測飛翔先32とがゲーム画面内に予測表示オブジェクトにて表現されプレーヤに予測通知される。なお、ここで言う「予測軌道」には、その時点の投擲に係る初期条件などの諸元に基づいて設定される飛翔経路と誤差範囲とを含み得る。同様に、「予測飛翔先」には、その時点の諸元に基づいて設定され得る飛翔先と誤差範囲とを含み得る。
プレーヤ2は、これらの予測表示を見て思った通りのコースや思った場所に向けて飛翔し得るかを思案する。そして、プレーヤキャラクタ4の正面方向を変える、投擲力入力バー14を再タッチするなどして、投擲方向や投擲力を調整することができる。そして、予測軌道31や予測飛翔先32が望んだ通りであれば、プレーヤ2は、所定のアクション操作を入力して、選択した設定済格納オブジェクト8をプレーヤキャラクタ4に投擲させる。
投擲された設定済格納オブジェクト8は、プレーヤキャラクタ4により放たれ、所与の飛翔終了条件を満たすまで飛翔先を目指して飛翔経路に沿って飛翔するように移動制御される。
「飛翔終了条件」は、移動を終了させるために満たすべき条件であって、適宜設定可能である。本実施形態では、他オブジェクトとの接触を飛翔終了条件とする。よって、投擲された設定済格納オブジェクト8は、やがて敵キャラクタ6に当たるか、背景オブジェクトに当たるか、出現済の味方のサブキャラクタ5に当たるか、その他のオブジェクトに当たるかして飛翔が止まり、止まった位置に配置される、或いは、格納オブジェクトが壊れる演出表示がなされる。
設定済格納オブジェクト8については、所与の開放条件が満たされた場合に、図5(3)に示すように、当該設定済格納オブジェクト8に格納されていたサブキャラクタ5が開放されてゲーム空間に出現し、サブキャラクタ5としての行動を開始する。
「開放条件」は、適宜設定可能であるが、本実施形態では、少なくとも飛翔終了条件を満たしたことを含むこととするが、飛翔開始からの経過時間が所定時間に達したことや、敵キャラクタ6に接近したこと、敵キャラクタ6による攻撃を受けたこと、などとのAND条件やOR条件として適宜設定することが可能である。
設定済格納オブジェクト8から開放されて出現したサブキャラクタ5は、NPCなのでコンピュータにより自動制御される。図5(3)の例では、索敵範囲26の中に存在する敵キャラクタ6を索敵して攻撃する例を示しているが、後述する味方キャラクタの援護や、敵キャラクタ6の行動を妨害する制御、など攻撃以外の自動行動制御としてもよく、サブキャラクタ5の種類によってそれが優先的に選択実行されるとしても良い。或いは、プレーヤ2が複数の自動行動のなかから選択して設定する構成とすることもできる。
なお、開放条件を満たした設定済格納オブジェクト8は、今回のゲームプレイでの再使用はできないが、次回のゲームプレイでは再使用可能となる。また、同じゲームプレイ中に、使用してから所定時間が経過した後に再使用可能になることとしてもよい。
さて、サブキャラクタ5を使う対戦ゲームにおいて新たな興趣を生み出す、或いは興趣を高めるために、本実施形態では、プレーヤ2が投擲や使用するアイテム等の設定を工夫し援護発動条件を満たすことで、出現後のサブキャラクタ5に、味方キャラクタを援護する行動を優先的に実行させることができる。
なお、本実施形態では、1プレーヤ対1プレーヤの対戦ゲームを例示しているので、ここで言う「味方キャラクタ」は、各プレーヤ2の出現済のサブキャラクタ5を意味する。しかし、多プレーヤ対多プレーヤのチーム対戦タイプの対戦ゲームの場合は、ここで言う味方キャラクタは、ゲーム画面W4を見ているプレーヤとは異なる他プレーヤ(味方チームの他プレーヤ)の操作対象キャラクタ(プレーヤキャラクタ4)も含まれることとなる。
図7は、援護発動条件の一例と援護発動後のサブキャラクタ5の自動制御について説明するための図であって、図7(1)から図7(3)へかけて状況が遷移している。図7で示す援護発動条件は、投擲された設定済格納オブジェクト8と、敵キャラクタ6との接触である。
図7(1)では、投擲された設定済格納オブジェクト8(8a)が、味方キャラクタである出現済のサブキャラクタ5bを攻撃している敵キャラクタ6a(味方キャラクタを攻撃する敵キャラクタ)に接触している。ここで言う「味方キャラクタを攻撃する敵キャラクタ」とは、敵キャラクタによる攻撃可能範囲に味方キャラクタが位置し、且つ、当該敵キャラクタが当該味方キャラクタを攻撃対象としている、ことを意味する。敵キャラクタ6aに接触したことにより設定済格納オブジェクト8の飛翔終了条件は満たされたことになり、図7(2)に示すように、設定済格納オブジェクト8の格納オブジェクト7はそこで破壊されるように表現され、格納されていたサブキャラクタ5aが出現する。
通常、出現したサブキャラクタ5aは、索敵範囲26の範囲内の敵キャラクタ6を索敵してこれを攻撃するように自動制御される。図7(2)の例で言えば、敵キャラクタ6aと、敵キャラクタ6bとの2体が存在し、その何れを攻撃するかは当該サブキャラクタの攻撃能力等に応じて適宜に決定される。
しかし、図7(2)では、出現したサブキャラクタ5aは、援護発動条件を満たしているので、優先的に味方キャラクタを援護するように自動制御(自動援護制御)され、敵キャラクタ6aの攻撃対象とされている味方キャラクタであるサブキャラクタ5bを援護するべく、敵キャラクタ6aを攻撃する。
援護により敵キャラクタ6aを撃破すると、援護要因が解消したと見なされ、図7(3)に示すように、サブキャラクタ5aは、自動援護制御が終了され、通常の索敵攻撃行動をするように自動制御される。つまり、自動援護制御の制御対象としていた被格納NPCは、敵グループを攻撃するように自動制御される。
なお、味方キャラクタを攻撃している敵キャラクタ6aとの接触は、当該敵キャラクタ6aとサブキャラクタ5aの出現位置40との相対位置関係で定義することもできる。すなわち、設定済格納オブジェクト8が敵キャラクタ6aと接触しなくても、敵キャラクタ6aから所定の第1発動条件範囲41内に出現位置40が含まれている場合、接触相当と見なすとしてもよい。
図8は、援護発動条件の別例と援護発動後のサブキャラクタ5の自動制御について説明するための図であって、図8(1)から図8(2)へかけて状況が遷移している。
図8で示す援護発動条件は、投擲された設定済格納オブジェクト8と、敵キャラクタ6に攻撃されている(攻撃範囲内に位置していて、且つ当該敵キャラクタ6の攻撃対象とされている)味方キャラクタ(サブキャラクタ5b)との接触である。
図8(1)では、投擲された設定済格納オブジェクト8(8a)が、攻撃されている味方キャラクタである出現済のサブキャラクタ5bに接触している。これにより設定済格納オブジェクト8の飛翔終了条件は満たされたことになり、図8(2)に示すように、設定済格納オブジェクト8の格納オブジェクト7はそこで破壊されるように表現され、格納されていたサブキャラクタ5aが出現する。
そして、出現したサブキャラクタ5aは、援護発動条件を満たしているので、優先的に味方キャラクタを援護するように自動制御(自動援護制御)される。すなわち、サブキャラクタ5bを援護するべく、敵キャラクタ6aを攻撃する。援護により敵キャラクタ6aを撃破した後の自動制御は、図7(3)で説明したのと同様である。
なお、攻撃されている味方キャラクタとの接触は、当該味方キャラクタとサブキャラクタ5aの出現位置40との相対位置関係で定義することもできる。すなわち、設定済格納オブジェクト8が攻撃されている味方キャラクタと接触しなくても、攻撃されている味方キャラクタから所定の第2発動条件範囲42内に出現位置40が含まれている場合、接触相当と見なすとしてもよい。
図9は、援護発動条件をアイテムの使用とからめた例について説明するための図である。
図9(1)で示す援護発動条件は、設定済格納オブジェクト8に格納されているサブキャラクタ5aへ、サブキャラク用援護優先アイテム21mを対応付けて設定した場合の例である。サブキャラク用援護優先アイテム21mは、サブキャラクタ5に使用可能なアイテムであって、その作用効果が、援護発動条件を満たすか否かに関わらず自動援護制御を優先させることができるアイテムである。当該アイテムが使用された(対応づけられた)サブキャラクタ5が出現すると、図7や図8で説明した援護発動条件が満たされていなくとも、援護発動条件が満たされたと見なされる。
図9(2)で示す援護発動条件は、出現されたサブキャラクタ5を格納していた格納オブジェクト7に対する格納オブジェクト用援護優先アイテム22mを対応付けて設定した場合の例である。格納オブジェクト用援護優先アイテム22mは、格納オブジェクト7に使用可能なアイテムであって、その作用効果が、援護発動条件を満たすか否かに関わらず自動援護制御を優先させることができるアイテムである。当該アイテムが使用された(対応づけられた)格納オブジェクト7から出現されたサブキャラクタ5は、図7や図8で説明した援護発動条件が満たされていなくとも、援護発動条件が満たされたと見なされる。
図10は、自動援護制御のタイプを説明するための図である。
本実施形態における自動援護制御は、次の四種類のうちの何れかとなる。
図10(1)は、出現したサブキャラクタ5aが味方キャラクタを攻撃する敵キャラクタ6に対して攻撃行動する第1種自動援護制御の例を示している。攻撃方法は、図10(1)で示すような直接・近接攻撃は勿論のこと、遠距離からの攻撃など、当該サブキャラクタの能力に応じて適宜設定可能である。なお、自動援護制御による攻撃では、サブキャラクタ5の能力値を一時的に高めて適用すると好適である。例えば、非自動援護制御時に適用される攻撃力を1.2倍にして適用すると好適である。
図10(2)は、出現したサブキャラクタ5aが、味方キャラクタを移動させる第2種自動援護制御の例を示している。移動方法は、瞬間移動でも、吊り下げ移動でも、投擲など適宜設定可能である。移動先は、ランダムとしても良いが、攻撃している敵キャラクタ6の攻撃可能範囲外に移動させるものとする。
図10(3)は、出現したサブキャラクタ5aが、味方キャラクタのダメージを回復させる第3種自動援護制御と、味方キャラクタの能力値を一時的に向上させる第4種自動制御と、の例を示している。具体的には、出現したサブキャラクタ5aが、ダメージを回復させる及び/又は能力値を一時的に高める作用効果が設定されているアイテム21tが設定されている場合に、或いは、当該作用効果を有する設定のサブキャラクタが援護する場合に、これらの自動援護制御が実行される。
図11は、自動援護制御の内容を変更するための自動援護内容定義データ570のデータ構成例を示す図である。本実施形態では、出現したサブキャラクタ5の自動援護制御の内容を状況に応じて変更することができる。自動援護内容定義データ570は、変更する内容毎に予め用意されている。
一つの自動援護内容定義データ570は、当該定義データが適用される条件を示す適用要件571と、援護内容データ573と、を含む。
適用要件571は、複数の条件のAND又はORによって記述することができる。記述に用いる条件は適宜設定可能である。本実施形態では、
a)自動援護制御されるサブキャラクタ5の種類に関する条件であるサブキャラクタ種類条件571aと、
b)自動援護制御されるサブキャラクタ5を格納していた格納オブジェクト7の種類に関する条件である格納オブジェクト種類条件571bと、
c)飛翔中に設定済格納オブジェクト8と、味方キャラクタを攻撃する敵キャラクタ6との接触の有無に関する敵キャラクタ接触条件571cと、
d)自動援護制御されるサブキャラクタ5と、味方を攻撃する敵キャラクタ6との相対位置関係(例えば、相対距離、相対方位、相対高度)に関する条件である敵キャラクタ相対位置条件571dと、
e)飛翔中に設定済格納オブジェクト8と、敵から攻撃されている味方キャラクタとの接触の有無に関する味方キャラクタ接触条件571eと、
f)自動援護制御されるサブキャラクタ5と、敵から攻撃されている味方キャラクタとの相対位置関係に関する条件である味方キャラクタ相対位置条件571fと、
g)自動援護制御されるサブキャラクタ5の成長レベルに関する条件であるサブキャラクタ成長レベル条件571gと、
h)自動援護制御されるサブキャラクタ5や当該サブキャラクタを格納していた格納オブジェクト7に使用されている(対応づけられている)アイテムに関する条件である使用アイテム条件571hと、
i)設定済格納オブジェクト8(サブキャラクタ5を格納した格納オブジェクト7)が飛翔して衝突した敵キャラクタ6の種類に関する条件である敵キャラクタ種類条件571jと、
j)設定済格納オブジェクト8が飛翔して衝突した敵キャラクタ6の部位に関する条件である衝突部位条件571kと、
k)設定済格納オブジェクト8が飛翔して衝突した位置、或いは当該サブキャラクタ5が出現した位置の地形の種類に関する条件である出現地形種類条件571mと、
を記述に用いることができる。勿論、これら以外の条件、例えば格納オブジェクト7の成長レベルに関する条件や、プレーヤキャラクタ4の種類に関する条件、なども適宜用いることができる。なお、適用要件571を記述する各条件は、適宜省略可能であるし、実質的に内容が無い「設定無し」とすることもできる。
援護内容データ573は、自動援護種類574と、自動援護制御設定575と、を含む。
自動援護種類574は、第1種自動援護制御〜第4種自動援護制御の何れかが指定される。
自動援護制御設定575は、自動援護制御の内容を定義する各種制御設定である。例えば、
a)自動援護制御される時間長を定義する援護時間575aや、
b)援護としての攻撃を行う際(第1種自動援護制御実行時)に適用される援護攻撃力575b、
c)援護として敵キャラクタ6に攻撃されている味方キャラクタのダメージを回復させる際(第3種自動援護制御の実行時)に適用されるダメージ回復量575c(又はダメージ回復率)、
d)援護として敵キャラクタ6に攻撃されている味方キャラクタの能力値を一時的に向上させる際(第4種自動制御の実行時)に適用される能力向上量575d、
を含み得る。勿論、自動援護制御の設定に応じて、これら以外の内容の定義データも適宜含めることができる。
サブキャラクタ5を自動援護制御する際には、自動援護内容定義データ570のうち、適合する適用要件571の定義データを検索し、検索された定義データの援護内容データ573に基づいて、サブキャラクタ5が援護するように自動制御される。
つまり、サブキャラクタ5と、それを格納していた格納オブジェクト7との組み合わせ、それが設定済格納オブジェクト8として飛翔されて敵キャラクタ6や味方キャラクタと接触したか、敵キャラクタ6や味方キャラクタに対して何処にサブキャラクタ5が出現したか、などに応じて、サブキャラクタ5の自動援護制御の内容が変化する。
例えば、腕の修理を得意なサブキャラクタ5が自動制御の対象として、衝突部位条件571kを「腕」に設定し、自動援護制御設定575のダメージ回復量575cを特別に頼り高く設定すれば、設定済格納オブジェクト8が敵キャラクタ6の腕に当たって当該種類のサブキャラクタ5が出現された場合に、通常のダメージ回復よりも、大きなダメージ回復が行われるようにできる。
[機能構成の説明]
図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と、予測表示制御部236と、サブキャラクタ出現制御部240と、サブキャラクタ自動制御部250と、進展制御部260と、を有する。勿論、これら以外の機能部も適宜含むとしてもよい。
準備設定部220は、プレーヤの操作に基づいて、ゲームプレイの準備に関する各種設定を行う。具体的には、準備設定部220は、プレーヤキャラクタ設定部222と、格納設定部224と、アイテム設定部226と、を有する。
プレーヤキャラクタ設定部222は、プレーヤの操作に基づいて、複数のキャラクタの中からプレーヤキャラクタ4とするキャラクタを選択して設定する。より具体的には、プレーヤが所有するメインキャラクタ3の中から何れかを、選択操作に基づいてプレーヤキャラクタ4として選択・設定する(図3参照)。
格納設定部224は、プレーヤの選択操作に基づいて、複数のNPC及び複数のオブジェクトの中から、格納するNPCと格納先とするオブジェクトとを選択することで、格納オブジェクトを設定する。格納オブジェクトが、複数のサブキャラクタ5を格納可能な場合には、格納設定部224は、格納するNPCを複数選択することができる。より具体的には、格納設定部224は、サブキャラクタ5と格納オブジェクト7との対応づけを設定し、設定済格納オブジェクト8を作成する(図3参照)。
アイテム設定部226は、プレーヤの操作入力に基づいて、格納オブジェクト7及び/又は格納オブジェクト7に格納された被格納NPCに所与のアイテムを対応付ける。より具体的には、アイテム設定部226は、サブキャラクタ5へのサブキャラクタ用アイテム21(21t、21m;図9、図10参照)の対応付けや、格納オブジェクト7への格納オブジェクト用アイテム22(22m;図9参照)の対応付けの設定を行う。
また、準備設定部220は、上述した各機能の他に、プレーヤの操作入力に基づいて、複数のゲーム空間(ゲームステージとも言う)の中から、ゲームプレイに使用するゲーム空間を設定することができる。
飛翔制御部230は、被格納NPC(ノン・プレイアブル・キャラクタ)が格納された格納オブジェクトを、プレーヤのアクション操作に基づいて、所与の飛翔終了条件を満たすまで飛翔させる制御を行う。
具体的には、格納オブジェクト7とサブキャラクタ5とが組み合わされて設定された設定済格納オブジェクト8の飛翔制御をする。例えば、飛翔制御部230は、その時々の投擲に係る諸元(本実施形態で言う所の投擲方向や投擲力など)に基づいて飛翔先とそこへ向かうための飛翔経路とを決定する。これらが、予測飛翔先であり予測軌道を決定する元となる。そして、アクション操作がなされた時点における諸元に基づいて飛翔先・飛翔経路を決定し、設定済格納オブジェクト8を、決定された飛翔経路に沿って飛翔先へ向かうように移動制御する。
予測表示制御部236は、飛翔制御の予測軌道31及び/又は予測飛翔先32を示す予測表示を表示させる制御を行う。
サブキャラクタ出現制御部240は、飛翔終了条件を満たした格納オブジェクトから、当該格納オブジェクトに格納された被格納NPCを出現させるように制御する。具体的には、サブキャラクタ出現制御部240は、サブキャラクタ5(被格納NPC)の開放・出現制御を行う。
サブキャラクタ自動制御部250は、サブキャラクタ出現制御部により出現された被格納NPCを自動制御する制御部であって、所定の援護発動条件が満たされた場合に、味方キャラクタを援護するように自動制御する自動援護制御を行う。
また、サブキャラクタ自動制御部250は、自動援護制御をするにあたってその内容を変更することができる。
具体的には、サブキャラクタ自動制御部250は、飛翔された格納オブジェクトが敵キャラクタに接触したか否かに基づいて、自動援護制御を行うか否か、又は、自動援護制御の内容を変更する自動援護制御の可変制御を行う。
また、サブキャラクタ自動制御部250は、飛翔された格納オブジェクトが味方キャラクタに接触したか否かに基づいて、自動援護制御を行うか否か、又は、自動援護制御の内容を変更する自動援護制御の可変制御を行う。
また、サブキャラクタ自動制御部250は、出現された被格納NPCの位置と、味方キャラクタの位置との相対位置関係に基づいて、自動援護制御の内容を変更する自動援護制御の可変制御を行う。
また、サブキャラクタ自動制御部250は、格納オブジェクト及び/又は格納オブジェクトに格納された被格納NPCにアイテムが対応付けられている場合の当該アイテムに基づいて、自動援護制御の内容を変更する。
また、サブキャラクタ自動制御部250は、敵キャラクタによる攻撃可能範囲に味方キャラクタが位置し、且つ、敵キャラクタが味方キャラクタを攻撃対象としている場合に、被格納NPCを当該敵キャラクタに攻撃させる自動制御によって自動援護制御を行う。
また、サブキャラクタ自動制御部250は、味方キャラクタのダメージを回復させる自動制御、味方キャラクタを所与の移動先に移動させる自動制御、又は、味方キャラクタの能力値を一時的に向上させる自動制御、によって自動援護制御を行う。
また、サブキャラクタ自動制御部250は、自動援護制御の終了後、当該自動援護制御の制御対象としていた被格納NPCを、敵グループを攻撃するように自動制御する。
進展制御部260は、格納オブジェクトのパラメータ値を、当該格納オブジェクトの能力向上、強化、レベルアップ等の進展制御によって変更する。また、NPCのパラメータ値を、当該NPCの能力向上、強化、レベルアップ等の進展制御によって変更することができる。
計時部288sは、システムクロックを利用して現在日時や制限時間等の計時を行う。
音生成部290sは、音声データの生成やデコードをするICやソフトウェアの実行により実現され、サーバシステム1100のシステム管理やゲームプレイに係る操作音やBGMなどの音声データを生成或いはデコードする。そして、システム管理に関する音声信号は音出力部390sへ出力する。
音出力部390sは、音声信号を放音する。図1の例では本体装置1101やタッチパネル1108が備えるスピーカ(不図示)がこれに該当する。
画像生成部292sは、サーバシステム1100のシステム管理に関する画像や、ゲーム画像(又はゲーム画像をユーザ端末1500で表示させるためのデータ)等を生成することができる。そして、システム管理に関する画像は画像表示部392sへ出力することができる。
画像表示部392sは、画像生成部292sから入力される画像信号に基づいてシステム管理のための各種画像を表示する。例えば、フラットパネルディスプレイ、ブラウン管(CRT)、プロジェクター、ヘッドマウントディスプレイといった画像表示装置によって実現できる。図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と、アイテム初期設定データ516と、メインキャラクタ初期設定データ518と、サブキャラクタ初期設定データ520と、格納オブジェクト初期設定データ540と、自動援護内容定義データ570(図11参照)と、を記憶する。
また、サーバ記憶部500sは、ゲームに係り逐次生成・管理されるデータとして、ユーザ管理データ600と、プレイデータ700と、現在日時800と、を記憶する。サーバ記憶部500sは、その他のプログラムやデータ(例えばタイマや、カウンタ、各種フラグなど)も適宜記憶できる。
サーバプログラム501は、サーバ処理部200sが読み出して実行することで、ユーザ管理部202と、オンラインショッピング管理部204と、ゲーム管理部210としての機能を実現させるためのプログラムである(図12参照)。
配信用ゲームクライアントプログラム502は、ユーザ端末1500へ提供されるゲームクライアントプログラムのオリジナルである。
販売管理データ509は、オンラインショッピングによる販売品を定義・管理するためのデータを格納する。例えば、購入可能なアイテムと、在庫数、その課金対価(本実施形態では決済媒体からの引き落とし額に相当)とを対応づけて格納している。
ゲーム空間初期設定データ510は、ゲーム空間(ゲームステージとも言う)毎に用意され、当該ゲーム空間に係る各種初期設定データを格納する。一つのゲーム空間初期設定データ510は、ゲーム空間ID、マップデータ、マップ内の各位置における地形種類の設定データ、敵キャラクタ出現設定、格納オブジェクト付与条件、サブキャラクタ付与条件、アイテム付与条件、などを含む。格納オブジェクト付与条件、サブキャラクタ付与条件、アイテム付与条件は、当該ゲーム空間において新たな格納オブジェクトや、新たなサブキャラクタ、新たなアイテムをプレーヤに付与するために満たすべき条件を定義している。
アイテム初期設定データ516は、アイテム毎に用意され、当該アイテムに係る各種初期設定データを格納する。例えば、一つのアイテム初期設定データ516は、アイテム種類と、作用効果の定義データとを格納する。
メインキャラクタ初期設定データ518は、メインキャラクタ3の種類毎に用意され、当該メインキャラクタに係る各種初期設定データを格納する。例えば、一つのメインキャラクタ初期設定データ518は、キャラクタ種類と、キャラクタの初期能力値、などの情報を格納する。勿論、当該キャラクタをゲーム画面中に表示させ、動作させるために必要な各種データ(例えば、キャラクタのモデルデータや、モーションデータ、テクスチャデータ、など)も含まれているものとする。
サブキャラクタ初期設定データ520は、サブキャラクタ5の種類毎に用意され、当該サブキャラクタに係る各種初期設定データを格納する。一つのサブキャラクタ初期設定データ520は、例えば、図14に示すように、サブキャラクタ種類521と、サブキャラクタ属性522と、初期キャラクタ成長レベル523と、初期キャラクタ経験値524と、初期能力値531と、を含む。勿論、当該キャラクタをゲーム画面中に表示させ、動作させるために必要な各種データ(例えば、キャラクタのモデルデータや、モーションデータ、テクスチャデータ、など)も含まれているものとする。
なお、初期能力値531に含まれる能力を定義するパラメータ値は、耐力値(ダメージを受けると減算されて「0」になると行動不能になる値)、攻撃力、防御力、回復力、索敵範囲、など適宜設定可能である。
図13に戻って、格納オブジェクト初期設定データ540は、格納オブジェクトの種類毎に用意され、当該格納オブジェクトに係る各種初期設定データを格納する。一つの格納オブジェクト初期設定データ540は、例えば、格納オブジェクト種類と、格納オブジェクト属性と、格納可能上限数と、開放条件と、飛距離と、誤差と、を含む。勿論、これら以外のデータも適宜含めることができる。
ユーザ管理データ600は、登録ユーザ毎に用意され、固有の識別情報であるアカウントと紐付けられる各種データを格納する。本実施形態では、例えば図15に示すように、1つのユーザ管理データ600には、固有のユーザアカウント601と、決済媒体帳簿データ602と、プレイ履歴データ603と、ゲームセーブデータ610と、を含む。勿論、これら以外のデータも適宜含めることができる。
決済媒体帳簿データ602は、当該ユーザに紐付けられる電子決済用の決済媒体(例えば、仮想通貨、ゲーム内通貨、特定のアイテム、行動力などの特定のパラメータ値など)の補充/消費の量と、補充/消費の事由と、変更日時と、の情報を対応づけて格納する所謂帳簿である。課金履歴データ或いは課金履歴情報と読み替えることができる。
プレイ履歴データ603は、何時ゲームプレイをしたか、どのようなプレイ成績であったか、などを記述するデータを、プレイした時系列に格納するデータであって、ログイン/ログアウトのタイミングで自動的に更新される。
ゲームセーブデータ610は、前回のゲームプレイ時までのプレイ結果やゲーム進行の状態を記述する各種データを格納する。例えば、所有メインキャラクタセーブデータ612と、所有格納オブジェクトセーブデータ614と、所有サブキャラクタセーブデータ616と、所有アイテムデータ618と、を含む。勿論、これら以外のデータも適宜含めることができる。
図13に戻って、プレイデータ700は、ユーザ端末1500で実行されるゲームプレイ毎に用意され、そのゲーム進行状況を記述する各種データや、各キャラクタ毎の制御データなどゲーム画面の表示等に関する各種情報を格納する。
一つのプレイデータ700は、例えば図16に示すように、プレイ開始日時701と、プレーヤとされるユーザ別のユーザアカウントであるプレーヤアカウント702と、プレーヤ別のユーザ端末1500にアクセスするためのユーザ端末アクセス情報703と、使用ゲーム空間ID704と、チーム登録データ705と、プレーヤキャラクタ制御データ708と、設定済格納オブジェクト管理データ710と、予測表示制御データ740と、サブキャラクタ自動制御データ750と、を含む。勿論、これら以外のデータも適宜含めることができる。
プレーヤキャラクタ制御データ708は、プレーヤキャラクタ4毎に用意され、当該キャラクタのゲーム空間内での最新状態を記述する各種データ(例えば、キャラクタID、キャラクタ種類、使用者アカウント、位置座標、姿勢、最新能力値、キャラクタモデルのモーション制御データ、など)を格納する。
設定済格納オブジェクト管理データ710は、プレーヤがサブキャラクタと格納オブジェクトとの組み合わせを設定操作する毎に、つまり設定済格納オブジェクト毎に作成され、当該設定済格納オブジェクトに係る各種データが格納される。
一つの設定済格納オブジェクト管理データ710は、例えば図17に示すように、固有の格納オブジェクトID711と、当該設定済格納オブジェクトの所有者・設定者のユーザアカウントを格納する所有者アカウント712と、使用格納オブジェクト用アイテムID714と、格納キャラクタ管理データ720と、投擲ベクトル728と、飛翔先座標730と、飛翔経路データ731と、飛翔速度ベクトル732と、位置座標734と、接触履歴736と、開放フラグ738と、を含む。勿論、これら以外のデータも適宜含めることができる。
使用格納オブジェクト用アイテムID714は、当該格納オブジェクトに設定された(対応付けられた)格納オブジェクト用アイテム22(例えば、図9参照)のアイテムIDである。
格納キャラクタ管理データ720は、当該設定済格納オブジェクトに組み合わされたサブキャラクタ毎、つまり被格納NPC毎に作成され、当該サブキャラクタに係る各種データを格納する。一つの格納キャラクタ管理データ720は、例えば、格納キャラクタID721と、使用サブキャラクタ用アイテムID723と、出現日時724と、を含む。
使用サブキャラクタ用アイテムID723は、当該サブキャラクタに設定された(対応付けられた)サブキャラクタ用アイテム21(例えば、図9、図10参照)のアイテムIDである。
投擲ベクトル728は、当該設定済格納オブジェクト8の投擲の初期条件を格納する。本実施形態では、投擲方向と投擲力とに基づくベクトルである。本実施形態では、投擲方向はプレーヤキャラクタ4の正面方向(投擲方向マーカ12の方向;図4参照)に一致するように逐次更新される。投擲力は所定の初期値に設定されるが、投擲力入力バー14(図4参照)へのタッチ操作すなわち投擲力の入力操作を検出するとタッチされた位置に応じた投擲力に更新される。
飛翔先座標730は、飛翔先となるゲーム空間の位置座標を格納する。
飛翔経路データ731は、当該設定済格納オブジェクト8が飛翔する経路を示す関数又は通過点の座標値リストである。設定済格納オブジェクト8の投擲開始とともに作成され、当該データの経路に沿って移動制御されることとなる。経路は、物理演算又は擬似物理演算等により求めるとしても良いし、予め定義した擬似放物線等の関数を適用するとしてもよい。
接触履歴736は、当該管理データの設定済格納オブジェクト8が、飛翔中に他のオブジェクトと接触した履歴データであって、接触が生じると作成される。接触履歴736は、例えば、接触日時、接触対象オブジェクトID(敵キャラクタ6のキャラクタIDや、味方キャラクタのキャラクタID、背景オブジェクトのオブジェクトID)、接触位置、などの情報を含む。
開放フラグ738は、当該設定済格納オブジェクト8にサブキャラクタ5を格納している状態が「1」、開放条件が満たされ、格納されていたサブキャラクタ5を開放しゲーム空間に出現させると「0」に変更される。
図16に戻って、予測表示制御データ740は、予測軌道31や予測飛翔先32の表示制御用のデータを格納する(図6参照)。
サブキャラクタ自動制御データ750は、設定済格納オブジェクト8からサブキャラクタ5が開放されてゲーム空間に出現すると作成され、当該サブキャラクタの最新状態を記述する各種データを格納する。一つのサブキャラクタ自動制御データ750は、例えば図18に示すように、キャラクタID751と、当該サブキャラクタがどのプレーヤのサブキャラクタであるかを示す所有者アカウント752と、ゲーム空間における位置座標や姿勢値を格納する位置姿勢情報753と、最新能力値754と、攻撃対象キャラクタID755と、適用援護内容データ770と、を含む。勿論、これら以外のデータも適宜含めることができる。
最新能力値754には、出現時に当該サブキャラクタのサブキャラクタ初期設定データ520(図14参照)の初期能力値531がコピーされ、ゲーム進行に応じて逐次更新される。
攻撃対象キャラクタID755は、当該サブキャラクタが攻撃対象とするキャラクタを示す。当該サブキャラクタが援護発動条件を満たしている場合には、出現位置の周辺の敵キャラクタ6のうち、味方キャラクタを攻撃対象としている敵キャラクタ6の最寄りのキャラクタIDが設定され。援護発動条件を満たしていない場合には、当該サブキャラクタの索敵範囲内の敵キャラクタ6が選択され設定される。
適用援護内容データ770は、当該サブキャラクタが援護発動条件を満たすと作成され、どのような内容の自動援護制御を行うかの設定値を格納する。具体的には、当該サブキャラクタが出現されたタイミングで、予め用意されている複数の自動援護内容定義データ570(図11参照)の中から適用要件571が適合する定義データを検索し、検索された定義データの援護内容データ573がコピーされる。そして、当該サブキャラクタの自動援護制御においては、適用援護内容データ770の設定に従った援護行動をするように自動制御が行われる。
図19は、本実施形態におけるユーザ端末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を実行することにより実現される。
図20〜図21は、1ゲームプレイに係るサーバシステム1100における処理の流れについて説明するためのフローチャートである。
サーバシステム1100は、使用するゲーム空間の選択とプレーヤキャラクタ4とするメインキャラクタ3の選択とを受け付ける(ステップS10)。例えば、使用するゲーム空間については、ユーザ端末1500にて、ゲーム空間初期設定データ510で定義されるゲーム空間を選択可能に提示して、何れでプレイするかの選択操作を受け付ける。プレーヤキャラクタ4については、プレーヤが所有するメインキャラクタ3の一覧を選択可能に提示して、選択操作を受け付ける。
次に、サーバシステム1100は、ゲームプレイ開始当初よりプレーヤキャラクタ4に所持させる分の設定済格納オブジェクト8の設定を行う(ステップS12)。具体的には、所定数の設定済格納オブジェクト8の設定を可能とし、それぞれについて格納設定処理を実行する。
図22は、格納設定処理の流れを説明するためのフローチャートである。
同処理において、サーバシステム1100は、先ず、組み合わせるサブキャラクタ5と格納オブジェクト7との選択を受け付ける(ステップS50)。具体的には、ユーザ端末1500にて、プレーヤが所有するサブキャラクタ5と格納オブジェクト7の中から、それぞれ未使用のもの(設定済格納オブジェクト管理データ710が無いもの:図17参照)を抽出して、選択可能に提示する。この際、選択されている格納オブジェクト7の格納可能上限数(図13の格納オブジェクト初期設定データ540を参照)が複数の場合には、これを上限として組み合わせるサブキャラクタ5を複数選択受け付けできるものとする。これにより、プレイデータ700に、新たな設定済格納オブジェクト管理データ710が作成される(図16参照)。
組み合わせの設定に伴って、プレーヤは、組み合わせたサブキャラクタ5や格納オブジェクト7に対してアイテムを設定する(対応づける)ことができる。
すなわち、ユーザ端末1500にて、飛翔制御設定と行動制御設定との何れかを変更する作用効果があるアイテムの使用操作を検出すると(ステップS58のNO→ステップS60のYES)、サーバシステム1100は、使用されたアイテムを使用先(格納オブジェクト7、サブキャラクタ5)に対応づける(ステップS62)。もし、サブキャラクタ5と格納オブジェクト7の組み合わせを変更する操作を検出した場合には(ステップS66のYES)、組み合わせを変更する(ステップS68)。
そして、ユーザ端末1500にて所定の格納設定完了操作の入力を検出すると(ステップS58のYES)、サーバシステム1100は、格納設定処理を終了する。
図20に戻って、次に、サーバシステム1100は、ゲームプレイの進行制御を開始する(ステップS70)。すなわち、仮想3次元空間に背景オブジェクトを配置してゲーム空間を形成し、プレーヤキャラクタ4と敵キャラクタ6とを配置する。そして、各プレーヤの操作入力に応じて、それぞれプレーヤキャラクタ4(4A,4B;図3参照)を動作させる。その他、対戦ゲームの進行制御として基本的に必要とされる制御も適宜開始されるものとする。
ゲームプレイ開始以降に、ユーザ端末にて、所定の格納設定開始操作が入力されたならば(ステップS90のYES)、サーバシステム1100は格納設定処理を実行する(ステップS91)。
そして、ゲームプレイ中に、ユーザ端末1500にて所定の飛翔前操作の入力を検出すると(ステップS92のYES)、サーバシステム1100は、投擲ベクトル728(図17参照)の向きをプレーヤキャラクタ4の正面方向に逐次合わせるように調整する制御を開始する(ステップS93)。
次いで、サーバシステム1100は、ユーザ端末1500にて設定済格納オブジェクトリスト10(図4参照)を表示させて、投擲する設定済格納オブジェクト8の選択操作を受け付ける(ステップS94)。そして、サーバシステム1100は、ユーザ端末1500にて投擲力入力バー14(図4参照)を表示させ、当該バーへのタッチ操作に応じた投擲ベクトル728の大きさの逐次調整を開始する(ステップS96)。
次に、サーバシステム1100は、最新の投擲の諸元に応じた飛翔経路と飛翔先との逐次調整を開始する(ステップS98)。具体的には、物理演算又は擬似物理演算によって飛翔先座標730と飛翔経路データ731とを仮決定する(図17参照)。そして、投擲ベクトル728が更新される毎にそれを繰り返し、飛翔先座標730と飛翔経路データ731とを更新する。
次いで、サーバシステム1100は、ゲーム画面内に、予測軌道31・予測飛翔先32など各種予測表示を開始する(ステップS100;図6参照)。
予測飛翔先32は、飛翔先座標730を中心に、投擲される設定済格納オブジェクト8の格納オブジェクトの誤差(図13の格納オブジェクト初期設定データ540を参照)に応じた範囲を所定のオブジェクトで表現する。予測軌道31は、プレーヤキャラクタ4から飛翔先座標730を、飛翔経路データ731の示す経路で結ぶオブジェクトを設定して表現する。勿論、これらの予測表示は、飛翔先座標730と飛翔経路データ731とが更新される都度に再表示される。
そして、サーバシステム1100は、予測表示を基準とした形式の投擲関連の操作入力の受付を開始する(ステップS102)。
具体的には、投擲方向を修正するためのガイド表示として、表示されている予測飛翔先32や予測軌道31(図6参照)を中心にゲーム画面の上下左右それぞれの方向に沿って目盛りを表示させ、所定の方向変更操作を検出すると、操作された方向に1目盛り分ずつ投擲方向を変更するといったガイド表示をすることができる。同様に、投擲力入力バー14(図4参照)にも修正用の現在の投擲力の位置を示すマーカと、修正用のガイド表示として強弱それぞれの方向に目盛りを表示させることができる。そして、所定の力変更操作を検出すると、操作された方向に1目盛り分ずつ投擲力を変更する。
プレーヤ2は、予測飛翔先32や予測軌道31を見て、狙い通りの飛翔先や飛翔経路が予測されていなければ、プレーヤキャラクタ4の正面方向を変えるなどして、投擲方向や投擲力を調整することができる。そして、予測表示が狙い通りであれば、所定のアクション操作を入力して、選択した設定済格納オブジェクト8をプレーヤキャラクタ4に投擲させる。
サーバシステム1100は、ユーザ端末1500にて所定のアクション操作の入力を検出すると(ステップS104のYES)、ステップS94で選択受け付けした設定済格納オブジェクト8をゲーム空間に出現させ、飛翔表示の制御を開始する(ステップS106)。飛翔制御は、それぞれが飛翔終了条件を満たすまで継続される。本実施形態では、飛翔終了条件は、飛翔している設定済格納オブジェクト8が敵キャラクタ6や他オブジェクトとの接触とする。飛翔制御されている設定済格納オブジェクト8は、逐一、敵キャラクタ6との接触が判定され、接触すると接触履歴736が作成される。
なお、ステップS92〜ステップS104において、所定の飛翔キャンセル操作を適宜受付可能とする。
図21に移って、次に、サーバシステム1100は、飛翔終了条件を満たす設定済格納オブジェクト8であって、その開放条件(本実施形態では飛翔終了条件に同じ。)が満たされているものがあれば(ステップS120のYES)、当該設定済格納オブジェクト8をゲーム空間に出現させ、当該キャラクタのサブキャラクタ自動制御データ750(図18参照)を設定する(ステップS122)。
次に、サーバシステム1100は、この新たに出現されたサブキャラクタ5が、援護発動条件を満たしているかを判定する(ステップS124)。
本実施形態では、当該設定済格納オブジェクト8が、a)味方キャラクタを攻撃している敵キャラクタ6と接触した場合(図7参照)と、b)敵キャラクタ6の攻撃を受けている味方キャラクタと接触した場合(図8参照)と、c)当該設定済格納オブジェクト8のサブキャラクタ5や格納オブジェクト7に所定のアイテムが使用設定されている場合(図9参照)と、の何れかに基づいて援護発動条件が満たされているかを判定する。
そして、援護発動条件が満たされているならば(ステップS124のYES)、サーバシステム1100は、当該サブキャラクタ5のサブキャラクタ自動制御データ750に適用援護内容データ770を設定する(ステップS126;図18参照)。
次いで、サーバシステム1100は、新たに出現されたサブキャラクタ5に適用援護内容データ770が設定されている場合には(ステップS128のYES)、当該内容データに基づいて、味方キャラクタを援護する行動をするように当該サブキャラクタ5の自動制御を開始する(ステップS130)。
一方、新たに出現されたサブキャラクタ5に適用援護内容データ770が設定されていない場合には(ステップS128のNO)、サブキャラクタ5に標準行動(本実施形態では、索敵攻撃)するように自動制御を開始する(ステップS132)。
次に、サーバシステム1100は、出現済で自動制御されているサブキャラクタ5のうち、攻撃対象を撃破した自動援護制御中のサブキャラクタ5に設定されている適用援護内容データ770を削除し、その自動制御を標準行動(本実施形態では、索敵攻撃)に切り換える(ステップS136)。
サーバシステム1100は、ゲーム終了条件が満たされるまで、ステップS90〜S140を繰り返し実行する(ステップS140のNO)。
ゲーム終了条件が満たされれば(ステップS140のYES)、サブキャラクタ5と格納オブジェクト7の進展制御を行う(ステップS142)。具体的には、投擲された設定済格納オブジェクト8のサブキャラクタ5及び格納オブジェクト7に対して経験値を付与し、累積された経験値に応じてサブキャラクタレベルや格納オブジェクトレベルを変更する。なお、進展制御は、サブキャラクタ5と格納オブジェクト7の何れか一方に限っても良い。また、進展の対象は、投擲された設定済格納オブジェクト8であって、且つ開放条件を満たした設定済格納オブジェクト8に限定してもよい。
次に、サーバシステム1100は、プレイ成績に応じてプレーヤにボーナスを付与する(ステップS144)。例えば、新たな、メインキャラクタ3や、サブキャラクタ5、格納オブジェクト7、アイテム、の付与としてもよい。また、新しいゲーム空間をプレイ可能に開放などとすることもできる。
そして、サーバシステム1100は、プレイ履歴を更新して(ステップS146)、一連の処理を終了する。
以上、本実施形態によれば、プレーヤが操作するメインキャラクタに味方するNPCであるサブキャラクタを使用する対戦型のビデオゲームにおいて、新しい興趣を追加する技術を提供することができる。
すなわち、プレーヤは、サブキャラクタ5を格納オブジェクト7に格納する操作をすることで設定済格納オブジェクト8を設定して、これをプレーヤキャラクタ4から投擲させるように指示操作する。するとサブキャラクタ5が投擲先で出現するように制御されて、出現したサブキャラクタ5が敵キャラクタ6と交戦するように制御されるという新しいスタイルの対戦ゲームが実現できる。
そして、味方キャラクタが敵キャラクタ6に攻撃されている状況では、設定済格納オブジェクト8の投擲や、投擲する設定済格納オブジェクト8のサブキャラクタ5や格納オブジェクト7へのアイテムの使用によって、当該味方キャラクタを新たに出現させるサブキャラクタ5で救援させるといった、戦術的要素が豊かなゲームを実現できる。
〔第2実施形態〕
次に、本発明を適用した第2実施形態について説明する。本実施形態は、基本的には第1実施形態と同様に実現されるが、プレーヤ対コンピュータにより対戦ゲームを実行することとし、ゲーム管理の処理主体がユーザ端末1500である点が異なる。以降では、主に第1実施形態との差異について述べることとし、第1実施形態と同様の構成要素については同じ符号を付与して説明は省略するものとする。
本実施形態のゲームシステム1000は、第1実施形態と同様に実現される。
また、本実施形態のサーバシステム1100の機能構成からは、ゲーム管理部210が省略される。
図23は、本実施形態におけるユーザ端末1500Bの機能構成例を示す機能ブロック図である。本実施形態のユーザ端末1500Bは、ユーザ端末演算部280が省略され、その代わりにゲーム管理部210と、画像生成部292を有する。ユーザ端末1500Bは、ゲーム装置と言うことができる装置である。
画像生成部292は、ゲーム画面を画像表示部392に表示させるためのデータを生成し、画像信号を画像表示部392に出力する。
すなわち、本実施形態ではユーザ端末1500Bは、自身でゲーム管理に関する演算処理を実行して、ゲーム進行を制御し、ゲーム画面の画像を生成し、音声再生を制御する。但し、オンラインショッピングの利用や、登録ユーザとしてのログイン/ログアウト、プレイ履歴の管理などは第1実施形態と同様に行われる。なお、ユーザ端末1500をスタンドアローンのゲーム機として機能させる場合、つまり対戦ゲームを非オンラインゲームとして実現する場合には、この限りではない。
図24は、本実施形態のユーザ端末1500Bの端末記憶部500に記憶されるプログラムやデータの例を示す図である。本実施形態の端末記憶部500は、ゲームプログラム505を記憶する。ゲームプログラム505は、ゲーム管理部210としての機能を端末処理部200に実現させるためのプログラムである。そのオリジナルは、サーバシステム1100に配信用ゲームプログラムとして記憶させておき、適宜ダウンロードするとしても良い。
また、本実施形態の端末記憶部500は、ゲーム管理部210がユーザ端末1500Bにて処理されるのに伴って、ゲーム空間初期設定データ510、アイテム初期設定データ516、メインキャラクタ初期設定データ518、サブキャラクタ初期設定データ520、格納オブジェクト初期設定データ540、自動援護内容定義データ570、を記憶する。これらのオリジナルは、本実施形態のサーバシステム1100が記憶しており、必要に応じてダウンロードする構成としてもよい。また、逐次、作成・更新するデータとして、プレイデータ700が記憶される。
本実施形態におけるユーザ端末1500Bで実行される処理の流れは、第1実施形態におけるサーバシステム1100におけるそれと基本的に同じであり(図20〜図22参照)、ゲーム管理部210をユーザ端末1500Bにて実行するのに合わせて、適宜各ステップの実行主体をユーザ端末1500Bと読み替えれば良い。
ユーザ端末1500Bにてユーザ管理データ600を参照・変更する必要がある処理を実行する場合には、適宜サーバシステム1100へ必要なデータの提供や照合等をリクエストする。或いは、処理そのものをリクエストして対処するものとする。
もし、ユーザ端末1500をスタンドアローンのゲーム装置として機能させる場合、つまり対戦ゲームを非オンラインゲームとして実現する場合には、ユーザ管理データ600もユーザ端末1500にて管理する構成では、端末記憶部500にユーザ管理データ600も記憶させればよい。
本実施形態によれば、第1実施形態と同様の作用効果が得られる。
〔変形例〕
以上、本発明を適用した実施形態について説明したが、本発明を適用可能な形態は上記形態に限定されるものではなく適宜構成要素の追加・省略・変更を施すことができる。
[変形例その1]
例えば、上記実施形態では、クライアント・サーバ型のコンピュータシステムにてオンラインゲームを実現する例を挙げたが、ゲーム装置とも言える複数のユーザ端末1500(或いはユーザ端末1500B)をピアツーピア接続したコンピュータシステムにおいて実現するとしてもよい。その場合、何れかのユーザ端末1500に第1実施形態のサーバシステム1100としての機能を担わせる。或いは、複数のユーザ端末1500でゲーム管理部210が有する機能を分担して担う構成としてもよい。
[変形例その2]
また、上記実施形態では、ゲームジャンルを対戦ゲームとしたが、サブキャラクタ5を使用するゲームであれば、本発明を同様に適用できる。
[変形例その3]
ユーザ端末1500,1500Bのハードウェア構成は、上記実施形態に限らない。
例えば、図25に示すような形態のゲーム装置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との間で、無線通信を実現する。
そして、図26に示すように、右ゲームコントローラ1460Rの3軸加速度センサ1475は、右手系のローカル座標(Xr・Yr・Zr)を構成している。具体的には、右ゲームコントローラ1460Rの正面向かって右方向(図26の右側)がXr軸の正方向、コントローラの長手方向上側(図26の上側)がYr軸の正方向、コントローラの正面法線方向つまりコントローラの正面手前側(図26の手前側)がZr軸の正方向となるように構成されている。
右ゲームコントローラ1460Rの3軸ジャイロセンサ1476は、右手系のローカル座標(Xr・Yr・Zr)を構成しており、右ゲームコントローラ1460Rの3軸加速度センサ1475の各軸回りの角速度を検出できるように構成されている。
そして、右ゲームコントローラ1460Rの左端には、コネクタ1467を塞ぐようにアタッチメント1468が装着可能とされる。右ゲームコントローラ1460Rは、当該コントローラの右側を右手の親指及び母指球に当てて、当該コントローラのアタッチメント1468を人差し指から小指で包むようにして把持される。換言すると、正面側とは反対の背面側を掌側にして片手で握るようにして保持される。
同様にして、左ゲームコントローラ1460Lの3軸加速度センサ1475は、左手系のローカル座標(Xl・Yl・Zl)を構成している。具体的には、左ゲームコントローラ1460Lの正面向かって左方向(図26の左側)がXl軸の正方向、コントローラの長手方向上側(図26の上側)がYl軸の正方向、コントローラの正面法線方向つまりコントローラの正面手前側(図26の手前側)がZl軸の正方向となるように構成されている。
左ゲームコントローラ1460Lの3軸ジャイロセンサ1476は、左手系のローカル座標(Xl・Yl・Zl)を構成しており、左ゲームコントローラ1460Lの3軸加速度センサ1475の各軸回りの角速度を検出できるように構成されている。
そして、左ゲームコントローラ1460Lの左端には、コネクタ1467を塞ぐようにアタッチメント1468が装着可能とされる。左ゲームコントローラ1460Lは、当該コントローラの左側を左手の親指及び母指球に当てて、当該コントローラのアタッチメント1468を人差し指から小指で包むようにして把持される。換言すると、正面側とは反対の背面側を掌側にして片手で握るようにして保持される。
ユーザ端末1500C(ゲーム装置1400)を採用する構成では、上記実施形態における飛翔開始操作を、左ゲームコントローラ1460L又は右ゲームコントローラ1460Rで、腕を振ったと認められる所定の基準値を超える加速度や角速度の検出により実現することができる。また、その時の加速度や角速度の最大値をもって、投擲力入力バー14(図4参照)への投擲力の入力に代替することもできる。