ゲーム制御プログラム、ゲーム装置、及びゲーム制御方法
【課題】娯楽性の高いゲーム装置を表現する。
【解決手段】ゲーム装置10は、高低差のある地形を含むゲームフィールドの画面を表示する画像処理部66と、ユーザからの指示に応じて、ゲームフィールドに、流体が移動可能な通路を形成する通路形成部42と、通路に導入された流体を制御する流体制御部48と、ゲームフィールドに配置されたキャラクタの動作を制御する陸生キャラクタ制御部44及び水生キャラクタ制御部45とを備える。水生キャラクタ制御部45は、流体制御部48により流体が通路に沿ってより低い位置へ移動されたときに、流体が存在する通路にいたキャラクタを流体とともに移動させる。
【解決手段】ゲーム装置10は、高低差のある地形を含むゲームフィールドの画面を表示する画像処理部66と、ユーザからの指示に応じて、ゲームフィールドに、流体が移動可能な通路を形成する通路形成部42と、通路に導入された流体を制御する流体制御部48と、ゲームフィールドに配置されたキャラクタの動作を制御する陸生キャラクタ制御部44及び水生キャラクタ制御部45とを備える。水生キャラクタ制御部45は、流体制御部48により流体が通路に沿ってより低い位置へ移動されたときに、流体が存在する通路にいたキャラクタを流体とともに移動させる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ゲーム制御技術に関し、特に、キャラクタを移動させてゲームを進行させるゲーム装置、方法、及びプログラムに関する。
【背景技術】
【0002】
味方のキャラクタを育成し、敵キャラクタとの間で戦闘を行うシミュレーションゲームが人気を博している。ユーザは、様々な方法を用いて、味方のキャラクタを育成し、レベルを増加させ、敵キャラクタとの間の戦闘で勝利させる。
【発明の概要】
【発明が解決しようとする課題】
【0003】
本発明者は、このようなゲームシステムを改良して、より高度で娯楽性の高いゲームを実現するための技術を想到するに至った。本発明はこうした状況に鑑みてなされたものであり、その目的は、より娯楽性の高いゲーム装置を実現する技術を提供することにある。
【課題を解決するための手段】
【0004】
本発明のある態様は、プログラムに関する。このプログラムは、高低差のある地形を含むゲームフィールドの画面を表示する機能と、ユーザからの指示に応じて、前記ゲームフィールドに、流体が移動可能な通路を形成する機能と、前記通路に導入された流体を制御する機能と、前記ゲームフィールドに配置されたキャラクタの動作を制御する機能と、前記流体を制御する機能により、前記流体が前記通路に沿ってより低い位置へ移動されたときに、前記流体が存在する通路にいた前記キャラクタを、前記流体とともに移動させる機能と、をコンピュータに実現させる。
【発明の効果】
【0005】
本発明によれば、より娯楽性の高いゲーム装置を実現する技術を提供することができる。
【図面の簡単な説明】
【0006】
【図1】実施の形態に係るゲーム装置の構成を示す図である。
【図2】実施の形態に係るゲーム装置の外観を示す図である。
【図3】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図4】フィールドテーブルの内部データの例を示す図である。
【図5】キャラクタテーブルの内部データの例を示す図である。
【図6】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図7】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図8】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図9】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図10】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図11】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図12】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図13】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図14】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図15】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図16】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図17】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図18】流体の流れを制御するアルゴリズムを説明するための図である。
【図19】流体の流れを制御するアルゴリズムを説明するための図である。
【図20】流体の流れを制御するアルゴリズムを説明するための図である。
【図21】ゲーム装置により提供されるゲーム画面の例を示す図である。
【発明を実施するための形態】
【0007】
本実施の形態のゲーム装置は、高低差のある地形を含むゲームフィールドにおいて、味方キャラクタを敵キャラクタと戦わせ、敵キャラクタを倒すことを目的とするゲームを提供する。ユーザは、ゲームフィールドに、キャラクタが移動可能な通路を形成したり、味方のキャラクタを発生させたりすることができる。キャラクタは、人工知能の制御により自律的に行動し、敵キャラクタと遭遇すると戦闘を行う。ユーザは、キャラクタを直接的に操作することはできないが、一部のキャラクタは水の流れとともに移動するので、通路を形成して水を移動させることにより、キャラクタを間接的に移動させることができる。
【0008】
図1は、実施の形態に係るゲーム装置10の構成を示す。ゲーム装置10は、コントローラ20、入力部30、制御部40、フィールドテーブル60、キャラクタテーブル62、画像処理部66、及び表示装置68を備える。これらの構成は、ハードウエアコンポーネントでいえば、任意のコンピュータのCPU、メモリ、メモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。
【0009】
入力部30は、プレイヤーが操作するコントローラ20から入力される制御信号を受け付ける。制御部40は、入力部30が受け付けたユーザからの指示に基づいて、図示しない記録媒体から読み出したゲームプログラムを実行し、ゲームを進行させる。フィールドテーブル60は、ゲームフィールドに関する情報を保持する。キャラクタテーブル62は、キャラクタの属性を表すパラメータなどを保持する。画像処理部66は、制御部40により制御されるゲームの画面を生成し、表示装置68に表示させる。各構成の動作の詳細については、以降の説明において詳述する。
【0010】
図2は、実施の形態に係るゲーム装置10の外観を示す。ゲーム装置10の前面には、表示装置68及びコントローラ20が設けられている。コントローラ20は、十字キー21、アナログパッド22、ボタン24を含む。十字キー21及びアナログパッド22には、カーソルを移動させる機能が、ボタン24には、カーソルの現在位置の土を掘削して通路を形成する機能が、それぞれ割り当てられている。
【0011】
図3は、実施の形態に係るゲーム装置10により提供されるゲームの画面の例を示す。ゲーム画面には、高低差のある地形を含むゲームフィールド(ダンジョン)100が表示されている。ゲームフィールド100には、ユーザが操作可能なツルハシ型のカーソル110が表示されている。ユーザは、カーソル110を上下左右に移動させ、カーソル110の現在位置にある、ゲームフィールド100を構成する土102を掘削して、キャラクタ及び水が移動可能な通路104を形成することができる。
【0012】
土102には、キャラクタの活動の源となるエネルギーが養分として蓄積されており、エネルギーが第1閾値以上第2閾値未満(以下、「第1レベル」という)である位置には、第1レベルである旨を示す第1図形112が、第2閾値以上第3閾値未満(以下、「第2レベル」という)である位置には、第2レベルである旨を示す第2図形114が、第3閾値以上(以下、「第3レベル」という)である位置には、第3レベルである旨を示す第3図形116が、それぞれ表示されている。また、後述するように、通路104に水を導入するためのアイテムが設置されている位置には、その旨を示す図形118が表示されている。
【0013】
通路104には、複数の種別のキャラクタが配置されている。これらのキャラクタは、後述するように、エネルギーが蓄積された土102を掘削することにより発生する。ここでは、第1レベルのエネルギーが蓄積された土102から発生する第1陸生キャラクタ120、第2レベルのエネルギーが蓄積された土102から発生する第2陸生キャラクタ122、第3レベルのエネルギーが蓄積された土102から発生する第3陸生キャラクタ124が表示されている。これらのキャラクタは、自律的に動作し、敵キャラクタとの間で戦闘を行う。
【0014】
図4は、フィールドテーブル60の内部データの例を示す。フィールドテーブル60には、位置欄71、エネルギー欄72、及びステータス欄73が設けられている。位置欄71は、ゲームフィールドの位置を示す座標が格納する。図3に示すように、ゲームフィールドは、所定のサイズの矩形により分割されたブロックを単位として管理されている。エネルギー欄72は、ブロックに蓄積されたエネルギーの値を格納する。ステータス欄73は、ブロックのステータスを格納する。ブロックのステータスには、「土」、「通路」、「水」などがある。
【0015】
図5は、キャラクタテーブル62の内部データの例を示す。キャラクタテーブル62には、キャラクタID欄75、キャラクタ種別欄76、位置欄77、及びエネルギー欄78が設けられている。キャラクタID欄75は、ゲームフィールドに配置されているキャラクタのIDを格納する。キャラクタ種別欄76は、キャラクタの種別を格納する。キャラクタの種別には、「第1陸生キャラクタ」、「第2陸生キャラクタ」、「第3陸生キャラクタ」、「第1水生キャラクタ」、「第2水生キャラクタ」、「第3水生キャラクタ」、「ボスキャラクタ」、「敵キャラクタ」などがある。位置欄77は、キャラクタの現在位置の座標を格納する。エネルギー欄78は、キャラクタが有しているエネルギーを格納する。
【0016】
図1に戻り、各構成の説明を続ける。ゲーム制御部41は、ゲームの進行を制御する。ゲーム制御部41は、ゲーム開始から所定時間が経過すると、ゲームフィールドにボスキャラクタと敵キャラクタを配置する。ユーザは、敵キャラクタがゲームフィールドに配置されるまでの間に、ボスキャラクタを守り、敵キャラクタを倒すのに十分な味方キャラクタを発生させるよう、後述するように、ゲームフィールドを構築する。ゲーム制御部41は、ゲームフィールドに配置された全ての敵キャラクタが味方キャラクタに倒されると、ユーザにポイントを与え、ゲームを終了させる。ゲーム制御部41は、ボスキャラクタが敵キャラクタによりゲームフィールドから連れ去られると、ゲームオーバーとする。
【0017】
通路形成部42は、ユーザからの指示に応じてゲームフィールドに通路を形成する。通路形成部42は、カーソルの現在位置を示す座標を保持し、コントローラ20の十字キー21又はアナログパッド22が入力されると、上下左右のうち指示された方向にカーソルを移動させる。通路形成部42は、コントローラのボタン24が入力されると、カーソルの現在位置の土を掘削して通路を形成する。このとき、通路形成部42は、フィールドテーブル60において、カーソルの現在位置のステータス欄73を「土」から「通路」に変更する。
【0018】
エネルギー管理部43は、キャラクタを発生させたりキャラクタを活動させたりするためのエネルギーとなるパラメータの増減を管理する。エネルギー管理部43は、ゲームの開始時に、ゲームフィールドの各ブロックに対してエネルギーを設定し、フィールドテーブル60のエネルギー欄72に格納する。エネルギー管理部43は、後述するように、キャラクタがゲームフィールドに蓄積されたエネルギーを吸い取ったり、キャラクタがゲームフィールドへエネルギーを与えたりしたときに、キャラクタ又はゲームフィールドのエネルギーを増減させる。また、エネルギー管理部43は、キャラクタが敵キャラクタを倒したり、別のキャラクタを捕食したりしたときに、キャラクタのエネルギーを増加させる。エネルギー管理部43は、水が存在する通路に隣接する土から、その土に蓄積されたエネルギーを、水に移動させてもよい。
【0019】
流体制御部48は、通路に導入された流体を制御する。通路形成部42により、ゲームフィールドが掘削されて通路が形成されたとき、掘削された位置のゲームフィールドに、水を発生させるアイテムが設置されていた場合、流体制御部48は、アイテムが設置されていた位置から水を発生させ、発生した水の流れを制御する。流体制御部48は、水の流れを所定のアルゴリズムにより計算し、フィールドテーブル60において、水が存在するブロックのステータス欄73を、「通路」から「水」へ変更する。水の流れを制御するためのアルゴリズムについては後述する。
【0020】
陸生キャラクタ制御部44は、水が存在しない通路において発生した陸生キャラクタを制御する。通路形成部42により、ゲームフィールドが掘削されて通路が形成されたとき、掘削された位置の土に、第1レベル以上のエネルギーが蓄積されていた場合、陸生キャラクタ制御部44は、蓄積されていたエネルギーに応じて、陸生キャラクタを発生させる。陸生キャラクタ制御部44は、掘削された土に蓄積されていたエネルギーが第1レベル以上第2レベル未満であれば第1陸生キャラクタを、第2レベル以上第3レベル未満であれば第2陸生キャラクタを、第3レベル以上であれば第3陸生キャラクタを発生させる。陸生キャラクタ制御部44は、陸生キャラクタを発生させると、キャラクタテーブル62に発生させた陸生キャラクタの情報を登録する。
【0021】
陸生キャラクタ制御部44は、陸生キャラクタのエネルギーや、周囲の状況などに応じて、人工知能により、自動的に陸生キャラクタの行動を決定し、陸生キャラクタを行動させる。陸生キャラクタ制御部44は、所定のタイミングで陸生キャラクタの次の行動を選択する。陸生キャラクタ制御部44は、例えば、画像処理部66が生成するゲーム画面のフレームごとに陸生キャラクタの行動を選択してもよいし、所定数のフレームごとに陸生キャラクタの行動を選択してもよい。
【0022】
陸生キャラクタ制御部44は、通常、上に移動、下に移動、右に移動、左に移動、移動しないの選択肢の中から、陸生キャラクタの次の行動を選択する。陸生キャラクタ制御部44は、陸生キャラクタの行動を選択する前に、フィールドテーブル60を参照して、陸生キャラクタが移動可能な方向を取得してから行動を選択してもよいし、次の行動を選択してからフィールドテーブル60を参照して選択した方向に移動可能か確認し、移動可能でなければ再び別の行動を選択してもよい。陸生キャラクタ制御部44は、決定された方向にキャラクタを移動させ、キャラクタテーブル62の位置欄77を更新する。陸生キャラクタ制御部44は、陸生キャラクタを移動させると、所定のエネルギーを減じるようエネルギー管理部43に指示してもよい。
【0023】
陸生キャラクタ制御部44は、陸生キャラクタが存在するブロックに隣接するブロックに、その陸生キャラクタが捕食可能なキャラクタが存在する場合、次の行動を決定するための選択肢として、そのキャラクタを捕食する行動を追加する。そのキャラクタを捕食する行動が選択された場合、陸生キャラクタ制御部44は、キャラクタテーブル62において、捕食したキャラクタのエネルギー欄78を増加させ、捕食されたキャラクタの情報をキャラクタテーブル62から削除する。陸生キャラクタ制御部44は、捕食されたキャラクタが有していたエネルギーを捕食したキャラクタに与えてもよいし、捕食したキャラクタに所定値のエネルギーを与えてもよい。陸生キャラクタ制御部44は、他のキャラクタだけでなく、隣接する土のブロックに蓄積された養分(エネルギー)を捕食できるようにしてもよい。また、陸生キャラクタ制御部44は、陸生キャラクタが有しているエネルギーを隣接する土のブロックに与えてもようエネルギー管理部43へ指示してもよい。
【0024】
陸生キャラクタのエネルギーが所定値を上回ると、陸生キャラクタ制御部44は、その陸生キャラクタから新しいキャラクタを発生させ、キャラクタを繁殖させる。陸生キャラクタ制御部44は、同種の陸生キャラクタを発生させてもよいし、別種のキャラクタを発生させてもよい。また、予め決められた種別のキャラクタを発生させてもよいし、発生させるキャラクタの種別をランダムに選択してもよい。また、複数のキャラクタを同時に発生させてもよい。陸生キャラクタ制御部44は、新しいキャラクタを発生させると、発生させた新しいキャラクタの情報をキャラクタテーブル62に登録する。
【0025】
陸生キャラクタのエネルギーが所定値を下回ると、陸生キャラクタ制御部44は、その陸生キャラクタを消滅させるとともに、その陸生キャラクタが持っていたエネルギーを周囲のゲームフィールド(土のブロック)へ与える。陸生キャラクタ制御部44は、消滅させる陸生キャラクタの情報をキャラクタテーブル62から消去し、その陸生キャラクタが持っていたエネルギーを、陸生キャラクタの現在地に隣接するゲームフィールドへ与えるようエネルギー管理部43へ指示する。
【0026】
このように、陸生キャラクタ制御部44は、陸生キャラクタの生態系をシミュレーションする。特定の種別の陸生キャラクタのみを大量に発生させても、捕食可能なキャラクタが少なければ繁殖できずに減少していくので、ユーザは、捕食可能なキャラクタも含めてバランスよくキャラクタを発生させる必要がある。
【0027】
陸生キャラクタ制御部44は、陸生キャラクタが存在するブロックに隣接するブロックに、敵キャラクタが存在する場合、次の行動を決定するための選択肢として、敵キャラクタと戦闘する行動を追加する。陸生キャラクタが敵キャラクタと隣接したときに必ず戦闘を開始するようにしてもよい。陸生キャラクタと敵キャラクタとの戦闘は、戦闘制御部47により制御される。
【0028】
水生キャラクタ制御部45は、水が存在する通路において発生した水生キャラクタを制御する。水生キャラクタ制御部45は、水が存在する通路に隣接する土に蓄積されたエネルギーが所定値に達すると、エネルギーのレベルに応じて、水生キャラクタの卵を発生させ、水が存在する通路に配置する。ユーザが、ツルハシにより卵をつつくと、すなわち、ユーザがカーソルを卵が配置されたブロックに合わせてボタン24を押すと、水生キャラクタ制御部45は、水生キャラクタを発生させる。水生キャラクタ制御部45の主な機能は、陸生キャラクタ制御部44と同様である。
【0029】
水生キャラクタ制御部45は、水生キャラクタが、水に溶け込んだ養分としてのエネルギーを捕食できるようにしてもよいし、土に蓄積されている養分としてのエネルギーを取り込めるようにしてもよい。水生キャラクタ制御部45は、水生キャラクタが、水が存在しない通路へ移動しないように制御してもよいし、水が存在しない通路へ移動する行動の選択を劣後させてもよい。また、水生キャラクタ制御部45は、水生キャラクタが、水が存在しない通路を移動するときに、水が存在する通路を移動するときよりも多くのエネルギーを消費するようにしてもよい。
【0030】
水生キャラクタ制御部45は、水生キャラクタが存在している通路の水が、流体制御部48により流されたとき、水生キャラクタを水とともに移動させる。水生キャラクタ制御部45は、キャラクタテーブル62を参照して、水生キャラクタが存在しているブロックの位置を取得し、流体制御部48により水が移動されると、フィールドテーブル60を参照して水の移動先の位置を取得し、キャラクタテーブル62の位置欄も同様に更新する。これにより、ユーザは、通路を形成して水を移動させることにより、間接的に水生キャラクタを移動させることができる。陸生キャラクタは、水とともに移動させなくてもよい。
【0031】
敵キャラクタ制御部46は、ゲームフィールドに配置された敵キャラクタを制御する。敵キャラクタ制御部46は、ボスキャラクタが配置されたブロックに隣接するブロックに敵キャラクタが到達すると、敵キャラクタにボスキャラクタを捕獲させ、以降、ボスキャラクタを敵キャラクタとともに移動させる。敵キャラクタ制御部46は、敵キャラクタがボスキャラクタを捕獲した後は、敵キャラクタがゲームフィールドの出入口へ向かって移動するように敵キャラクタを制御してもよい。例えば、敵キャラクタ制御部46は、敵キャラクタがゲームフィールドの出入口からボスキャラクタに到達するまでに通った経路を記憶しておき、記憶していた経路から出入口までの最短経路を算出して、算出した最短経路を通るように敵キャラクタを移動させてもよい。また、敵キャラクタ制御部46は、敵キャラクタの次の行動を選択するときに、上方向への移動を優先的に選択するようにしてもよい。また、ゲームフィールドの出入口がゲームフィールドの上端中央付近に設けられている場合、敵キャラクタがゲームフィールドの右半分に存在する場合には左方向への移動を優先的に選択し、左半分に存在する場合には右方向への移動を優先的に選択してもよい。前述したように、敵キャラクタがボスキャラクタをともなってゲームフィールドの出入口に到達すると、ゲームオーバーとなる。
【0032】
敵キャラクタ制御部46は、敵キャラクタの動作として、ゲームフィールドに存在する水を凍らせて移動不能とする魔法を選択可能とする。敵キャラクタ制御部46が、敵キャラクタに、水を凍らせる魔法を実行させると、流体制御部48は、魔法が解けるまでの間、水の移動を禁止する。流体制御部48は、所定の時間が経過したときに魔法を解除してもよいし、所定の条件が満たされたとき、例えば、水生キャラクタが氷を溶かす魔法を実行したときに、魔法を解除してもよい。水生キャラクタ制御部45は、水が氷になっている間、新しい水生キャラクタの卵を生成しないようにしてもよい。
【0033】
戦闘制御部47は、味方キャラクタと敵キャラクタとの間の戦闘を制御する。戦闘制御部47は、味方キャラクタの種別と敵キャラクタの種別とをキャラクタテーブル62から読み出し、それらのキャラクタの属性を図示しないキャラクタデータベースから読み出して、それらのキャラクタの間の戦闘を制御する。戦闘制御部47は、両者のキャラクタの属性から戦闘の勝敗を決定してもよいし、両者のキャラクタが戦闘において選択可能な行動の選択肢をキャラクタデータベースから読み出し、人工知能により両者の戦闘をシミュレーションして、戦闘の勝敗を決定してもよい。また、戦闘制御部47は、キャラクタテーブル62から両者のキャラクタのエネルギーを読み出し、それらのエネルギーに基づいて戦闘の勝敗を決定してもよい。
【0034】
つづいて、ゲーム装置10により提供されるゲーム画面を参照しながら、各構成の動作について説明する。
【0035】
図6は、ゲーム装置10により提供されるゲーム画面の例を示す。図3に示した画面において、ユーザがボタン24を押すと、通路形成部42は、カーソル110の現在位置の土が掘削されて通路になる様子を画像処理部66に表示させるとともに、フィールドテーブル60において、カーソル110の現在位置のブロックのステータス欄73を「土」から「通路」に変更する。このときの画面を図6に示す。
【0036】
図7は、ゲーム装置10により提供されるゲーム画面の例を示す。図6に示した画面において、ユーザがカーソル110を1ブロック左に移動させ、ボタン24を押すと、通路形成部42は、カーソル110の現在位置の土が掘削されて通路になる様子を画像処理部66に表示させるとともに、フィールドテーブル60において、カーソル110の現在位置のブロックのステータス欄73を「土」から「通路」に変更する。ここで、掘削された土には、第1レベルのエネルギーが蓄積されていたので、陸生キャラクタ制御部44は、掘削されたブロックの位置に、第1陸生キャラクタ120を発生させる。このときの画面を図7に示す。
【0037】
図8は、ゲーム装置10により提供されるゲーム画面の例を示す。ユーザが、水を発生させるためのアイテムが設置されたことを示す図形118が表示されたブロックにカーソル110を合わせてボタン24を押すと、通路形成部42は、カーソル110の現在位置の土が掘削されて通路になる様子を画像処理部66に表示させるとともに、フィールドテーブル60において、カーソル110の現在位置のブロックのステータス欄73を「土」から「通路」に変更する。このとき、流体制御部48は、掘削されたブロックの位置から水106を発生させる。このときの画面を図8に示す。
【0038】
図9は、ゲーム装置10により提供されるゲーム画面の例を示す。流体制御部48は、掘削されたブロックの位置から所定量の水を発生させる。ここでは、9ブロック分の通路を満たす量の水106が発生するものとする。流体制御部48は、所定のタイミングで水106の移動状態を決定し、画像処理部66に表示させる。流体制御部48は、まず、フィールドテーブル60において、水106の発生位置のブロックのステータス欄73を「水」に変更する。つづいて、そのブロックの下のブロックのステータスを確認し、ステータスが「通路」であれば、水を下のブロックに移動させる。下のブロックのステータスが「土」であれば、左右のブロックのステータスを確認し、いずれかのブロックのステータスが「通路」であれば、そのブロックに水を移動させる。左右両方のブロックのステータスが「通路」である場合、例えば左のブロックに優先的に水を移動させてもよいし、左右交互に水を移動させて水が分岐して流れるようにしてもよい。5ブロック分の水が発生したときの画面を図9に示す。
【0039】
図10は、ゲーム装置10により提供されるゲーム画面の例を示す。流体制御部48は、掘削されたブロックの位置から9ブロック分の水を発生させた後も、水を低い位置へ向かって移動させ、発生位置から上に上がらずに到達できる最も低い位置から順に水を満たす。このときの画面を図10に示す。流体制御部48は、水面が平らになるように、水面の高さにあるブロックには一部に水が満たされるようにしてもよい。
【0040】
図11は、ゲーム装置10により提供されるゲーム画面の例を示す。水生キャラクタ制御部45は、フィールドテーブル60を参照して、水が存在する通路に隣接する土に、所定値以上のエネルギーが蓄積されている場合、所定のタイミングで、水生キャラクタの卵131を発生させ、水が存在する通路に配置する。このときの画面を図11に示す。
【0041】
図12は、ゲーム装置10により提供されるゲーム画面の例を示す。ユーザが、第1水生キャラクタの卵131にカーソル110を合わせてボタン24を押すと、水生キャラクタ制御部45は、そのブロックの位置に第1水生キャラクタ130を発生させる。このときの画面を図12に示す。
【0042】
図13は、ゲーム装置10により提供されるゲーム画面の例を示す。エネルギー管理部43は、水が存在する通路に隣接する土に蓄積されているエネルギーを、所定のタイミングで、水が存在する通路に移動させる。エネルギー管理部43は、例えば、ランダムなタイミングで、フィールドテーブル60において、水が存在する通路に隣接する土のブロックのエネルギー欄72を「0」に変更し、そのブロックに蓄積されていたエネルギーの値を、隣接する水が存在する通路のブロックのエネルギー欄72に加える。このときの画面を図13に示す。
【0043】
図14は、ゲーム装置10により提供されるゲーム画面の例を示す。ゲーム制御部41は、ゲーム開始から所定の時間が経過すると、敵キャラクタ142がゲームフィールドに侵入してくる旨をユーザに告知し、ボスキャラクタ140の配置位置をユーザに問い合わせる。ゲーム制御部41は、ユーザから受け付けた位置にボスキャラクタ140を配置させ、キャラクタテーブル62に登録する。ボスキャラクタ140は、配置された位置から移動しない。敵キャラクタ142は、敵キャラクタ制御部46により制御される。このときの画面を図14に示す。
【0044】
図15は、ゲーム装置10により提供されるゲーム画面の例を示す。敵キャラクタ制御部46により制御される敵キャラクタ142が、陸生キャラクタ制御部44により制御される陸生キャラクタ又は水生キャラクタ制御部45により制御される水生キャラクタに遭遇すると、戦闘制御部47により戦闘が開始される。このときの画面を図15に示す。
【0045】
図16は、ゲーム装置10により提供されるゲーム画面の例を示す。図15に示したゲーム画面において、陸生キャラクタ120が敵キャラクタ142に倒されると、敵キャラクタ142とボスキャラクタ140の間に味方のキャラクタが存在しないので、ボスキャラクタ140が敵キャラクタ142に連れ去られる可能性が高まる。ユーザは、ボスキャラクタ140の周囲の土から陸生キャラクタを新たに発生させることもできるが、図15に示したゲーム画面においては、ボスキャラクタ140の周囲の土にはエネルギーが十分に蓄積されていないので、陸生キャラクタを迅速に発生させることが困難である。
【0046】
このとき、ユーザは、ゲームフィールド左上の水が満たされている通路と、ボスキャラクタ140が配置されている通路の間を掘削し、通路でつなぐことにより、水106を、より低い位置にあるボスキャラクタ140の周辺に、水に生息している水生キャラクタもろとも移動させることができる。水が満たされている通路と、ボスキャラクタ140が配置されている通路の間を掘削したときの画面を図16に示す。
【0047】
図17は、ゲーム装置10により提供されるゲーム画面の例を示す。流体制御部48により水106が移動されるとともに、水生キャラクタ制御部45により、水106の中に生息していた第1水生キャラクタ130及び第2水生キャラクタ132が水106とともに移動される。このときの画面を図17に示す。このように、ユーザは、自律的に動作し、直接的には操作できないキャラクタを、間接的に移動させることができる。これにより、ボスキャラクタ140の周辺に水生キャラクタを移動させ、敵キャラクタ142と対戦させることができる。
【0048】
図18−図20は、水の流れを制御するアルゴリズムを説明するための図である。流体制御部48は、図18に示すように、水が落ちる位置からの経路が短い順にブロックに番号を割り当てて、移動を管理する。流体制御部48は、水が落ちる位置からの経路が同じ距離にあるブロックについては、例えば、左にあるブロックに小さい番号を割り当てる。流体制御部48は、番号の小さい順に水を移動させていくが、水が流れて行く経路が分岐する場合には、左右に交互に水を移動させる。例えば、図18に示したゲームフィールドの分岐108において、流体制御部48は、1番の水を左へ、2番の水を右へ、3番の水を左へ、というように水を移動させる。したがって、図19に示した状態を経由して、最終的には、図20に示した状態となる。
【0049】
図21は、ゲーム装置10により提供されるゲーム画面の例を示す。図16に示したゲーム画面において、図15に示したように通路が形成された場合、流体制御部48により水が移動されるとともに、水生キャラクタ制御部45により水生キャラクタが移動されて、図21に示した状態となる。1番の水の位置に存在していた第2水生キャラクタ132は、1番の水とともに左側の分岐に移動し、4番の水の位置に存在していた第1水生キャラクタ130は、4番の水とともに右側の分岐に移動する。
【0050】
以上、本発明を実施の形態をもとに説明した。この実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【0051】
実施の形態では、ゲームフィールドが2次元である例について説明したが、ゲームフィールドは3次元であってもよい。また、実施の形態では、ゲームフィールドを矩形のブロックに分割して管理する例について説明したが、地形やキャラクタなどの2次元又は3次元の形状データを用意して、ゲームフィールドをレンダリングしてもよい。また、実施の形態では、水の流れを制御するアルゴリズムとして、ブロックを単位として水を移動させる例について説明したが、物理計算を用いたシミュレーションにより水の流れを制御してもよい。
【符号の説明】
【0052】
10 ゲーム装置、20 コントローラ、30 入力部、40 制御部、41 ゲーム制御部、42 通路形成部、43 エネルギー管理部、44 陸生キャラクタ制御部、45 水生キャラクタ制御部、46 敵キャラクタ制御部、47 戦闘制御部、48 流体制御部、60 フィールドテーブル、62 キャラクタテーブル、66 画像処理部、68 表示装置。
【技術分野】
【0001】
本発明は、ゲーム制御技術に関し、特に、キャラクタを移動させてゲームを進行させるゲーム装置、方法、及びプログラムに関する。
【背景技術】
【0002】
味方のキャラクタを育成し、敵キャラクタとの間で戦闘を行うシミュレーションゲームが人気を博している。ユーザは、様々な方法を用いて、味方のキャラクタを育成し、レベルを増加させ、敵キャラクタとの間の戦闘で勝利させる。
【発明の概要】
【発明が解決しようとする課題】
【0003】
本発明者は、このようなゲームシステムを改良して、より高度で娯楽性の高いゲームを実現するための技術を想到するに至った。本発明はこうした状況に鑑みてなされたものであり、その目的は、より娯楽性の高いゲーム装置を実現する技術を提供することにある。
【課題を解決するための手段】
【0004】
本発明のある態様は、プログラムに関する。このプログラムは、高低差のある地形を含むゲームフィールドの画面を表示する機能と、ユーザからの指示に応じて、前記ゲームフィールドに、流体が移動可能な通路を形成する機能と、前記通路に導入された流体を制御する機能と、前記ゲームフィールドに配置されたキャラクタの動作を制御する機能と、前記流体を制御する機能により、前記流体が前記通路に沿ってより低い位置へ移動されたときに、前記流体が存在する通路にいた前記キャラクタを、前記流体とともに移動させる機能と、をコンピュータに実現させる。
【発明の効果】
【0005】
本発明によれば、より娯楽性の高いゲーム装置を実現する技術を提供することができる。
【図面の簡単な説明】
【0006】
【図1】実施の形態に係るゲーム装置の構成を示す図である。
【図2】実施の形態に係るゲーム装置の外観を示す図である。
【図3】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図4】フィールドテーブルの内部データの例を示す図である。
【図5】キャラクタテーブルの内部データの例を示す図である。
【図6】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図7】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図8】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図9】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図10】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図11】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図12】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図13】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図14】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図15】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図16】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図17】ゲーム装置により提供されるゲーム画面の例を示す図である。
【図18】流体の流れを制御するアルゴリズムを説明するための図である。
【図19】流体の流れを制御するアルゴリズムを説明するための図である。
【図20】流体の流れを制御するアルゴリズムを説明するための図である。
【図21】ゲーム装置により提供されるゲーム画面の例を示す図である。
【発明を実施するための形態】
【0007】
本実施の形態のゲーム装置は、高低差のある地形を含むゲームフィールドにおいて、味方キャラクタを敵キャラクタと戦わせ、敵キャラクタを倒すことを目的とするゲームを提供する。ユーザは、ゲームフィールドに、キャラクタが移動可能な通路を形成したり、味方のキャラクタを発生させたりすることができる。キャラクタは、人工知能の制御により自律的に行動し、敵キャラクタと遭遇すると戦闘を行う。ユーザは、キャラクタを直接的に操作することはできないが、一部のキャラクタは水の流れとともに移動するので、通路を形成して水を移動させることにより、キャラクタを間接的に移動させることができる。
【0008】
図1は、実施の形態に係るゲーム装置10の構成を示す。ゲーム装置10は、コントローラ20、入力部30、制御部40、フィールドテーブル60、キャラクタテーブル62、画像処理部66、及び表示装置68を備える。これらの構成は、ハードウエアコンポーネントでいえば、任意のコンピュータのCPU、メモリ、メモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。
【0009】
入力部30は、プレイヤーが操作するコントローラ20から入力される制御信号を受け付ける。制御部40は、入力部30が受け付けたユーザからの指示に基づいて、図示しない記録媒体から読み出したゲームプログラムを実行し、ゲームを進行させる。フィールドテーブル60は、ゲームフィールドに関する情報を保持する。キャラクタテーブル62は、キャラクタの属性を表すパラメータなどを保持する。画像処理部66は、制御部40により制御されるゲームの画面を生成し、表示装置68に表示させる。各構成の動作の詳細については、以降の説明において詳述する。
【0010】
図2は、実施の形態に係るゲーム装置10の外観を示す。ゲーム装置10の前面には、表示装置68及びコントローラ20が設けられている。コントローラ20は、十字キー21、アナログパッド22、ボタン24を含む。十字キー21及びアナログパッド22には、カーソルを移動させる機能が、ボタン24には、カーソルの現在位置の土を掘削して通路を形成する機能が、それぞれ割り当てられている。
【0011】
図3は、実施の形態に係るゲーム装置10により提供されるゲームの画面の例を示す。ゲーム画面には、高低差のある地形を含むゲームフィールド(ダンジョン)100が表示されている。ゲームフィールド100には、ユーザが操作可能なツルハシ型のカーソル110が表示されている。ユーザは、カーソル110を上下左右に移動させ、カーソル110の現在位置にある、ゲームフィールド100を構成する土102を掘削して、キャラクタ及び水が移動可能な通路104を形成することができる。
【0012】
土102には、キャラクタの活動の源となるエネルギーが養分として蓄積されており、エネルギーが第1閾値以上第2閾値未満(以下、「第1レベル」という)である位置には、第1レベルである旨を示す第1図形112が、第2閾値以上第3閾値未満(以下、「第2レベル」という)である位置には、第2レベルである旨を示す第2図形114が、第3閾値以上(以下、「第3レベル」という)である位置には、第3レベルである旨を示す第3図形116が、それぞれ表示されている。また、後述するように、通路104に水を導入するためのアイテムが設置されている位置には、その旨を示す図形118が表示されている。
【0013】
通路104には、複数の種別のキャラクタが配置されている。これらのキャラクタは、後述するように、エネルギーが蓄積された土102を掘削することにより発生する。ここでは、第1レベルのエネルギーが蓄積された土102から発生する第1陸生キャラクタ120、第2レベルのエネルギーが蓄積された土102から発生する第2陸生キャラクタ122、第3レベルのエネルギーが蓄積された土102から発生する第3陸生キャラクタ124が表示されている。これらのキャラクタは、自律的に動作し、敵キャラクタとの間で戦闘を行う。
【0014】
図4は、フィールドテーブル60の内部データの例を示す。フィールドテーブル60には、位置欄71、エネルギー欄72、及びステータス欄73が設けられている。位置欄71は、ゲームフィールドの位置を示す座標が格納する。図3に示すように、ゲームフィールドは、所定のサイズの矩形により分割されたブロックを単位として管理されている。エネルギー欄72は、ブロックに蓄積されたエネルギーの値を格納する。ステータス欄73は、ブロックのステータスを格納する。ブロックのステータスには、「土」、「通路」、「水」などがある。
【0015】
図5は、キャラクタテーブル62の内部データの例を示す。キャラクタテーブル62には、キャラクタID欄75、キャラクタ種別欄76、位置欄77、及びエネルギー欄78が設けられている。キャラクタID欄75は、ゲームフィールドに配置されているキャラクタのIDを格納する。キャラクタ種別欄76は、キャラクタの種別を格納する。キャラクタの種別には、「第1陸生キャラクタ」、「第2陸生キャラクタ」、「第3陸生キャラクタ」、「第1水生キャラクタ」、「第2水生キャラクタ」、「第3水生キャラクタ」、「ボスキャラクタ」、「敵キャラクタ」などがある。位置欄77は、キャラクタの現在位置の座標を格納する。エネルギー欄78は、キャラクタが有しているエネルギーを格納する。
【0016】
図1に戻り、各構成の説明を続ける。ゲーム制御部41は、ゲームの進行を制御する。ゲーム制御部41は、ゲーム開始から所定時間が経過すると、ゲームフィールドにボスキャラクタと敵キャラクタを配置する。ユーザは、敵キャラクタがゲームフィールドに配置されるまでの間に、ボスキャラクタを守り、敵キャラクタを倒すのに十分な味方キャラクタを発生させるよう、後述するように、ゲームフィールドを構築する。ゲーム制御部41は、ゲームフィールドに配置された全ての敵キャラクタが味方キャラクタに倒されると、ユーザにポイントを与え、ゲームを終了させる。ゲーム制御部41は、ボスキャラクタが敵キャラクタによりゲームフィールドから連れ去られると、ゲームオーバーとする。
【0017】
通路形成部42は、ユーザからの指示に応じてゲームフィールドに通路を形成する。通路形成部42は、カーソルの現在位置を示す座標を保持し、コントローラ20の十字キー21又はアナログパッド22が入力されると、上下左右のうち指示された方向にカーソルを移動させる。通路形成部42は、コントローラのボタン24が入力されると、カーソルの現在位置の土を掘削して通路を形成する。このとき、通路形成部42は、フィールドテーブル60において、カーソルの現在位置のステータス欄73を「土」から「通路」に変更する。
【0018】
エネルギー管理部43は、キャラクタを発生させたりキャラクタを活動させたりするためのエネルギーとなるパラメータの増減を管理する。エネルギー管理部43は、ゲームの開始時に、ゲームフィールドの各ブロックに対してエネルギーを設定し、フィールドテーブル60のエネルギー欄72に格納する。エネルギー管理部43は、後述するように、キャラクタがゲームフィールドに蓄積されたエネルギーを吸い取ったり、キャラクタがゲームフィールドへエネルギーを与えたりしたときに、キャラクタ又はゲームフィールドのエネルギーを増減させる。また、エネルギー管理部43は、キャラクタが敵キャラクタを倒したり、別のキャラクタを捕食したりしたときに、キャラクタのエネルギーを増加させる。エネルギー管理部43は、水が存在する通路に隣接する土から、その土に蓄積されたエネルギーを、水に移動させてもよい。
【0019】
流体制御部48は、通路に導入された流体を制御する。通路形成部42により、ゲームフィールドが掘削されて通路が形成されたとき、掘削された位置のゲームフィールドに、水を発生させるアイテムが設置されていた場合、流体制御部48は、アイテムが設置されていた位置から水を発生させ、発生した水の流れを制御する。流体制御部48は、水の流れを所定のアルゴリズムにより計算し、フィールドテーブル60において、水が存在するブロックのステータス欄73を、「通路」から「水」へ変更する。水の流れを制御するためのアルゴリズムについては後述する。
【0020】
陸生キャラクタ制御部44は、水が存在しない通路において発生した陸生キャラクタを制御する。通路形成部42により、ゲームフィールドが掘削されて通路が形成されたとき、掘削された位置の土に、第1レベル以上のエネルギーが蓄積されていた場合、陸生キャラクタ制御部44は、蓄積されていたエネルギーに応じて、陸生キャラクタを発生させる。陸生キャラクタ制御部44は、掘削された土に蓄積されていたエネルギーが第1レベル以上第2レベル未満であれば第1陸生キャラクタを、第2レベル以上第3レベル未満であれば第2陸生キャラクタを、第3レベル以上であれば第3陸生キャラクタを発生させる。陸生キャラクタ制御部44は、陸生キャラクタを発生させると、キャラクタテーブル62に発生させた陸生キャラクタの情報を登録する。
【0021】
陸生キャラクタ制御部44は、陸生キャラクタのエネルギーや、周囲の状況などに応じて、人工知能により、自動的に陸生キャラクタの行動を決定し、陸生キャラクタを行動させる。陸生キャラクタ制御部44は、所定のタイミングで陸生キャラクタの次の行動を選択する。陸生キャラクタ制御部44は、例えば、画像処理部66が生成するゲーム画面のフレームごとに陸生キャラクタの行動を選択してもよいし、所定数のフレームごとに陸生キャラクタの行動を選択してもよい。
【0022】
陸生キャラクタ制御部44は、通常、上に移動、下に移動、右に移動、左に移動、移動しないの選択肢の中から、陸生キャラクタの次の行動を選択する。陸生キャラクタ制御部44は、陸生キャラクタの行動を選択する前に、フィールドテーブル60を参照して、陸生キャラクタが移動可能な方向を取得してから行動を選択してもよいし、次の行動を選択してからフィールドテーブル60を参照して選択した方向に移動可能か確認し、移動可能でなければ再び別の行動を選択してもよい。陸生キャラクタ制御部44は、決定された方向にキャラクタを移動させ、キャラクタテーブル62の位置欄77を更新する。陸生キャラクタ制御部44は、陸生キャラクタを移動させると、所定のエネルギーを減じるようエネルギー管理部43に指示してもよい。
【0023】
陸生キャラクタ制御部44は、陸生キャラクタが存在するブロックに隣接するブロックに、その陸生キャラクタが捕食可能なキャラクタが存在する場合、次の行動を決定するための選択肢として、そのキャラクタを捕食する行動を追加する。そのキャラクタを捕食する行動が選択された場合、陸生キャラクタ制御部44は、キャラクタテーブル62において、捕食したキャラクタのエネルギー欄78を増加させ、捕食されたキャラクタの情報をキャラクタテーブル62から削除する。陸生キャラクタ制御部44は、捕食されたキャラクタが有していたエネルギーを捕食したキャラクタに与えてもよいし、捕食したキャラクタに所定値のエネルギーを与えてもよい。陸生キャラクタ制御部44は、他のキャラクタだけでなく、隣接する土のブロックに蓄積された養分(エネルギー)を捕食できるようにしてもよい。また、陸生キャラクタ制御部44は、陸生キャラクタが有しているエネルギーを隣接する土のブロックに与えてもようエネルギー管理部43へ指示してもよい。
【0024】
陸生キャラクタのエネルギーが所定値を上回ると、陸生キャラクタ制御部44は、その陸生キャラクタから新しいキャラクタを発生させ、キャラクタを繁殖させる。陸生キャラクタ制御部44は、同種の陸生キャラクタを発生させてもよいし、別種のキャラクタを発生させてもよい。また、予め決められた種別のキャラクタを発生させてもよいし、発生させるキャラクタの種別をランダムに選択してもよい。また、複数のキャラクタを同時に発生させてもよい。陸生キャラクタ制御部44は、新しいキャラクタを発生させると、発生させた新しいキャラクタの情報をキャラクタテーブル62に登録する。
【0025】
陸生キャラクタのエネルギーが所定値を下回ると、陸生キャラクタ制御部44は、その陸生キャラクタを消滅させるとともに、その陸生キャラクタが持っていたエネルギーを周囲のゲームフィールド(土のブロック)へ与える。陸生キャラクタ制御部44は、消滅させる陸生キャラクタの情報をキャラクタテーブル62から消去し、その陸生キャラクタが持っていたエネルギーを、陸生キャラクタの現在地に隣接するゲームフィールドへ与えるようエネルギー管理部43へ指示する。
【0026】
このように、陸生キャラクタ制御部44は、陸生キャラクタの生態系をシミュレーションする。特定の種別の陸生キャラクタのみを大量に発生させても、捕食可能なキャラクタが少なければ繁殖できずに減少していくので、ユーザは、捕食可能なキャラクタも含めてバランスよくキャラクタを発生させる必要がある。
【0027】
陸生キャラクタ制御部44は、陸生キャラクタが存在するブロックに隣接するブロックに、敵キャラクタが存在する場合、次の行動を決定するための選択肢として、敵キャラクタと戦闘する行動を追加する。陸生キャラクタが敵キャラクタと隣接したときに必ず戦闘を開始するようにしてもよい。陸生キャラクタと敵キャラクタとの戦闘は、戦闘制御部47により制御される。
【0028】
水生キャラクタ制御部45は、水が存在する通路において発生した水生キャラクタを制御する。水生キャラクタ制御部45は、水が存在する通路に隣接する土に蓄積されたエネルギーが所定値に達すると、エネルギーのレベルに応じて、水生キャラクタの卵を発生させ、水が存在する通路に配置する。ユーザが、ツルハシにより卵をつつくと、すなわち、ユーザがカーソルを卵が配置されたブロックに合わせてボタン24を押すと、水生キャラクタ制御部45は、水生キャラクタを発生させる。水生キャラクタ制御部45の主な機能は、陸生キャラクタ制御部44と同様である。
【0029】
水生キャラクタ制御部45は、水生キャラクタが、水に溶け込んだ養分としてのエネルギーを捕食できるようにしてもよいし、土に蓄積されている養分としてのエネルギーを取り込めるようにしてもよい。水生キャラクタ制御部45は、水生キャラクタが、水が存在しない通路へ移動しないように制御してもよいし、水が存在しない通路へ移動する行動の選択を劣後させてもよい。また、水生キャラクタ制御部45は、水生キャラクタが、水が存在しない通路を移動するときに、水が存在する通路を移動するときよりも多くのエネルギーを消費するようにしてもよい。
【0030】
水生キャラクタ制御部45は、水生キャラクタが存在している通路の水が、流体制御部48により流されたとき、水生キャラクタを水とともに移動させる。水生キャラクタ制御部45は、キャラクタテーブル62を参照して、水生キャラクタが存在しているブロックの位置を取得し、流体制御部48により水が移動されると、フィールドテーブル60を参照して水の移動先の位置を取得し、キャラクタテーブル62の位置欄も同様に更新する。これにより、ユーザは、通路を形成して水を移動させることにより、間接的に水生キャラクタを移動させることができる。陸生キャラクタは、水とともに移動させなくてもよい。
【0031】
敵キャラクタ制御部46は、ゲームフィールドに配置された敵キャラクタを制御する。敵キャラクタ制御部46は、ボスキャラクタが配置されたブロックに隣接するブロックに敵キャラクタが到達すると、敵キャラクタにボスキャラクタを捕獲させ、以降、ボスキャラクタを敵キャラクタとともに移動させる。敵キャラクタ制御部46は、敵キャラクタがボスキャラクタを捕獲した後は、敵キャラクタがゲームフィールドの出入口へ向かって移動するように敵キャラクタを制御してもよい。例えば、敵キャラクタ制御部46は、敵キャラクタがゲームフィールドの出入口からボスキャラクタに到達するまでに通った経路を記憶しておき、記憶していた経路から出入口までの最短経路を算出して、算出した最短経路を通るように敵キャラクタを移動させてもよい。また、敵キャラクタ制御部46は、敵キャラクタの次の行動を選択するときに、上方向への移動を優先的に選択するようにしてもよい。また、ゲームフィールドの出入口がゲームフィールドの上端中央付近に設けられている場合、敵キャラクタがゲームフィールドの右半分に存在する場合には左方向への移動を優先的に選択し、左半分に存在する場合には右方向への移動を優先的に選択してもよい。前述したように、敵キャラクタがボスキャラクタをともなってゲームフィールドの出入口に到達すると、ゲームオーバーとなる。
【0032】
敵キャラクタ制御部46は、敵キャラクタの動作として、ゲームフィールドに存在する水を凍らせて移動不能とする魔法を選択可能とする。敵キャラクタ制御部46が、敵キャラクタに、水を凍らせる魔法を実行させると、流体制御部48は、魔法が解けるまでの間、水の移動を禁止する。流体制御部48は、所定の時間が経過したときに魔法を解除してもよいし、所定の条件が満たされたとき、例えば、水生キャラクタが氷を溶かす魔法を実行したときに、魔法を解除してもよい。水生キャラクタ制御部45は、水が氷になっている間、新しい水生キャラクタの卵を生成しないようにしてもよい。
【0033】
戦闘制御部47は、味方キャラクタと敵キャラクタとの間の戦闘を制御する。戦闘制御部47は、味方キャラクタの種別と敵キャラクタの種別とをキャラクタテーブル62から読み出し、それらのキャラクタの属性を図示しないキャラクタデータベースから読み出して、それらのキャラクタの間の戦闘を制御する。戦闘制御部47は、両者のキャラクタの属性から戦闘の勝敗を決定してもよいし、両者のキャラクタが戦闘において選択可能な行動の選択肢をキャラクタデータベースから読み出し、人工知能により両者の戦闘をシミュレーションして、戦闘の勝敗を決定してもよい。また、戦闘制御部47は、キャラクタテーブル62から両者のキャラクタのエネルギーを読み出し、それらのエネルギーに基づいて戦闘の勝敗を決定してもよい。
【0034】
つづいて、ゲーム装置10により提供されるゲーム画面を参照しながら、各構成の動作について説明する。
【0035】
図6は、ゲーム装置10により提供されるゲーム画面の例を示す。図3に示した画面において、ユーザがボタン24を押すと、通路形成部42は、カーソル110の現在位置の土が掘削されて通路になる様子を画像処理部66に表示させるとともに、フィールドテーブル60において、カーソル110の現在位置のブロックのステータス欄73を「土」から「通路」に変更する。このときの画面を図6に示す。
【0036】
図7は、ゲーム装置10により提供されるゲーム画面の例を示す。図6に示した画面において、ユーザがカーソル110を1ブロック左に移動させ、ボタン24を押すと、通路形成部42は、カーソル110の現在位置の土が掘削されて通路になる様子を画像処理部66に表示させるとともに、フィールドテーブル60において、カーソル110の現在位置のブロックのステータス欄73を「土」から「通路」に変更する。ここで、掘削された土には、第1レベルのエネルギーが蓄積されていたので、陸生キャラクタ制御部44は、掘削されたブロックの位置に、第1陸生キャラクタ120を発生させる。このときの画面を図7に示す。
【0037】
図8は、ゲーム装置10により提供されるゲーム画面の例を示す。ユーザが、水を発生させるためのアイテムが設置されたことを示す図形118が表示されたブロックにカーソル110を合わせてボタン24を押すと、通路形成部42は、カーソル110の現在位置の土が掘削されて通路になる様子を画像処理部66に表示させるとともに、フィールドテーブル60において、カーソル110の現在位置のブロックのステータス欄73を「土」から「通路」に変更する。このとき、流体制御部48は、掘削されたブロックの位置から水106を発生させる。このときの画面を図8に示す。
【0038】
図9は、ゲーム装置10により提供されるゲーム画面の例を示す。流体制御部48は、掘削されたブロックの位置から所定量の水を発生させる。ここでは、9ブロック分の通路を満たす量の水106が発生するものとする。流体制御部48は、所定のタイミングで水106の移動状態を決定し、画像処理部66に表示させる。流体制御部48は、まず、フィールドテーブル60において、水106の発生位置のブロックのステータス欄73を「水」に変更する。つづいて、そのブロックの下のブロックのステータスを確認し、ステータスが「通路」であれば、水を下のブロックに移動させる。下のブロックのステータスが「土」であれば、左右のブロックのステータスを確認し、いずれかのブロックのステータスが「通路」であれば、そのブロックに水を移動させる。左右両方のブロックのステータスが「通路」である場合、例えば左のブロックに優先的に水を移動させてもよいし、左右交互に水を移動させて水が分岐して流れるようにしてもよい。5ブロック分の水が発生したときの画面を図9に示す。
【0039】
図10は、ゲーム装置10により提供されるゲーム画面の例を示す。流体制御部48は、掘削されたブロックの位置から9ブロック分の水を発生させた後も、水を低い位置へ向かって移動させ、発生位置から上に上がらずに到達できる最も低い位置から順に水を満たす。このときの画面を図10に示す。流体制御部48は、水面が平らになるように、水面の高さにあるブロックには一部に水が満たされるようにしてもよい。
【0040】
図11は、ゲーム装置10により提供されるゲーム画面の例を示す。水生キャラクタ制御部45は、フィールドテーブル60を参照して、水が存在する通路に隣接する土に、所定値以上のエネルギーが蓄積されている場合、所定のタイミングで、水生キャラクタの卵131を発生させ、水が存在する通路に配置する。このときの画面を図11に示す。
【0041】
図12は、ゲーム装置10により提供されるゲーム画面の例を示す。ユーザが、第1水生キャラクタの卵131にカーソル110を合わせてボタン24を押すと、水生キャラクタ制御部45は、そのブロックの位置に第1水生キャラクタ130を発生させる。このときの画面を図12に示す。
【0042】
図13は、ゲーム装置10により提供されるゲーム画面の例を示す。エネルギー管理部43は、水が存在する通路に隣接する土に蓄積されているエネルギーを、所定のタイミングで、水が存在する通路に移動させる。エネルギー管理部43は、例えば、ランダムなタイミングで、フィールドテーブル60において、水が存在する通路に隣接する土のブロックのエネルギー欄72を「0」に変更し、そのブロックに蓄積されていたエネルギーの値を、隣接する水が存在する通路のブロックのエネルギー欄72に加える。このときの画面を図13に示す。
【0043】
図14は、ゲーム装置10により提供されるゲーム画面の例を示す。ゲーム制御部41は、ゲーム開始から所定の時間が経過すると、敵キャラクタ142がゲームフィールドに侵入してくる旨をユーザに告知し、ボスキャラクタ140の配置位置をユーザに問い合わせる。ゲーム制御部41は、ユーザから受け付けた位置にボスキャラクタ140を配置させ、キャラクタテーブル62に登録する。ボスキャラクタ140は、配置された位置から移動しない。敵キャラクタ142は、敵キャラクタ制御部46により制御される。このときの画面を図14に示す。
【0044】
図15は、ゲーム装置10により提供されるゲーム画面の例を示す。敵キャラクタ制御部46により制御される敵キャラクタ142が、陸生キャラクタ制御部44により制御される陸生キャラクタ又は水生キャラクタ制御部45により制御される水生キャラクタに遭遇すると、戦闘制御部47により戦闘が開始される。このときの画面を図15に示す。
【0045】
図16は、ゲーム装置10により提供されるゲーム画面の例を示す。図15に示したゲーム画面において、陸生キャラクタ120が敵キャラクタ142に倒されると、敵キャラクタ142とボスキャラクタ140の間に味方のキャラクタが存在しないので、ボスキャラクタ140が敵キャラクタ142に連れ去られる可能性が高まる。ユーザは、ボスキャラクタ140の周囲の土から陸生キャラクタを新たに発生させることもできるが、図15に示したゲーム画面においては、ボスキャラクタ140の周囲の土にはエネルギーが十分に蓄積されていないので、陸生キャラクタを迅速に発生させることが困難である。
【0046】
このとき、ユーザは、ゲームフィールド左上の水が満たされている通路と、ボスキャラクタ140が配置されている通路の間を掘削し、通路でつなぐことにより、水106を、より低い位置にあるボスキャラクタ140の周辺に、水に生息している水生キャラクタもろとも移動させることができる。水が満たされている通路と、ボスキャラクタ140が配置されている通路の間を掘削したときの画面を図16に示す。
【0047】
図17は、ゲーム装置10により提供されるゲーム画面の例を示す。流体制御部48により水106が移動されるとともに、水生キャラクタ制御部45により、水106の中に生息していた第1水生キャラクタ130及び第2水生キャラクタ132が水106とともに移動される。このときの画面を図17に示す。このように、ユーザは、自律的に動作し、直接的には操作できないキャラクタを、間接的に移動させることができる。これにより、ボスキャラクタ140の周辺に水生キャラクタを移動させ、敵キャラクタ142と対戦させることができる。
【0048】
図18−図20は、水の流れを制御するアルゴリズムを説明するための図である。流体制御部48は、図18に示すように、水が落ちる位置からの経路が短い順にブロックに番号を割り当てて、移動を管理する。流体制御部48は、水が落ちる位置からの経路が同じ距離にあるブロックについては、例えば、左にあるブロックに小さい番号を割り当てる。流体制御部48は、番号の小さい順に水を移動させていくが、水が流れて行く経路が分岐する場合には、左右に交互に水を移動させる。例えば、図18に示したゲームフィールドの分岐108において、流体制御部48は、1番の水を左へ、2番の水を右へ、3番の水を左へ、というように水を移動させる。したがって、図19に示した状態を経由して、最終的には、図20に示した状態となる。
【0049】
図21は、ゲーム装置10により提供されるゲーム画面の例を示す。図16に示したゲーム画面において、図15に示したように通路が形成された場合、流体制御部48により水が移動されるとともに、水生キャラクタ制御部45により水生キャラクタが移動されて、図21に示した状態となる。1番の水の位置に存在していた第2水生キャラクタ132は、1番の水とともに左側の分岐に移動し、4番の水の位置に存在していた第1水生キャラクタ130は、4番の水とともに右側の分岐に移動する。
【0050】
以上、本発明を実施の形態をもとに説明した。この実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【0051】
実施の形態では、ゲームフィールドが2次元である例について説明したが、ゲームフィールドは3次元であってもよい。また、実施の形態では、ゲームフィールドを矩形のブロックに分割して管理する例について説明したが、地形やキャラクタなどの2次元又は3次元の形状データを用意して、ゲームフィールドをレンダリングしてもよい。また、実施の形態では、水の流れを制御するアルゴリズムとして、ブロックを単位として水を移動させる例について説明したが、物理計算を用いたシミュレーションにより水の流れを制御してもよい。
【符号の説明】
【0052】
10 ゲーム装置、20 コントローラ、30 入力部、40 制御部、41 ゲーム制御部、42 通路形成部、43 エネルギー管理部、44 陸生キャラクタ制御部、45 水生キャラクタ制御部、46 敵キャラクタ制御部、47 戦闘制御部、48 流体制御部、60 フィールドテーブル、62 キャラクタテーブル、66 画像処理部、68 表示装置。
【特許請求の範囲】
【請求項1】
高低差のある地形を含むゲームフィールドの画面を表示する機能と、
ユーザからの指示に応じて、前記ゲームフィールドに、流体が移動可能な通路を形成する機能と、
前記通路に導入された流体を制御する機能と、
前記ゲームフィールドに配置されたキャラクタの動作を制御する機能と、
前記流体を制御する機能により、前記流体が前記通路に沿ってより低い位置へ移動されたときに、前記流体が存在する通路にいた前記キャラクタを、前記流体とともに移動させる機能と、
をコンピュータに実現させるためのプログラム。
【請求項2】
前記流体が存在しない前記通路において、所定の条件が満たされたときに、第1のキャラクタを発生させる機能と、
前記流体が存在する前記通路において、所定の条件が満たされたときに、第2のキャラクタを発生させる機能と、を更にコンピュータに実現させ、
前記移動させる機能は、前記第2のキャラクタを前記流体とともに移動させ、前記第1のキャラクタを前記流体とともに移動させないことを特徴とする請求項1に記載のプログラム。
【請求項3】
前記キャラクタ及び前記ゲームフィールドに、前記キャラクタのエネルギーとなるパラメータを設定して前記パラメータの増減を管理する機能を更にコンピュータに実現させ、
前記第1のキャラクタを発生させる機能は、前記流体が存在しない前記通路に隣接するゲームフィールドに蓄積された前記パラメータが所定値を超えていることを条件として前記第1のキャラクタを発生させ、
第2のキャラクタを発生させる機能は、前記流体が存在する前記通路に隣接するゲームフィールドに蓄積された前記パラメータが所定値を超えていることを条件として前記第2のキャラクタを発生させることを特徴とする請求項2に記載のプログラム。
【請求項4】
前記キャラクタの動作を制御する機能は、前記キャラクタの移動にともなって前記キャラクタの前記パラメータを減少させ、前記キャラクタが他のキャラクタを捕食するか、又は、前記ゲームフィールドに蓄積されているパラメータを得たときに前記キャラクタの前記パラメータを増加させることを特徴とする請求項3に記載のプログラム。
【請求項5】
前記キャラクタの前記パラメータが所定値を超えたときに、同種のキャラクタを新たに生成する機能を更にコンピュータに実現させることを特徴とする請求項3又は4に記載のプログラム。
【請求項6】
前記キャラクタの動作を制御する機能は、前記キャラクタの前記パラメータが所定値を下回ったときに、前記キャラクタを消滅させ、
前記パラメータを管理する機能は、消滅した前記キャラクタが存在していた通路に隣接するゲームフィールドの前記パラメータを所定値分増加させることを特徴とする請求項3から5のいずれかに記載のプログラム。
【請求項7】
敵キャラクタの動作を制御する機能と、
前記敵キャラクタと前記キャラクタとの間の戦闘を制御する機能と、
前記ゲームフィールドに配置された全ての敵キャラクタを倒したときに、そのゲームフィールドにおけるゲームを終了させる機能と、
を更にコンピュータに実現させることを特徴とする請求項1から6のいずれかに記載のプログラム。
【請求項8】
前記敵キャラクタの動作を制御する機能は、前記敵キャラクタが前記流体を移動不能とする動作を実行可能とし、
前記流体を制御する機能は、前記敵キャラクタの動作を制御する機能により、前記流体を移動不能とする動作が実行されたとき、前記流体の移動を禁止することを特徴とする請求項7に記載のプログラム。
【請求項9】
高低差のある地形を含むゲームフィールドの画面を表示する画像処理部と、
ユーザからの指示に応じて、前記ゲームフィールドに、流体が移動可能な通路を形成する通路形成部と、
前記通路に導入された流体を制御する流体制御部と、
前記ゲームフィールドに配置されたキャラクタの動作を制御するキャラクタ制御部と、を備え、
前記キャラクタ制御部は、前記流体制御部により前記流体が前記通路に沿ってより低い位置へ移動されたときに、前記流体が存在する通路にいた前記キャラクタを前記流体とともに移動させることを特徴とするゲーム装置。
【請求項10】
高低差のある地形を含むゲームフィールドの画面を表示するステップと、
ユーザからの指示に応じて、前記ゲームフィールドに、流体が移動可能な通路を形成するステップと、
前記通路に導入された流体を制御するステップと、
前記ゲームフィールドに配置されたキャラクタの動作を制御するステップと、
前記流体を制御するステップにより、前記流体が前記通路に沿ってより低い位置へ移動されたときに、前記流体が存在する通路にいた前記キャラクタを、前記流体とともに移動させるステップと、
を備えることを特徴とするゲーム制御方法。
【請求項11】
請求項1から8のいずれかに記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項1】
高低差のある地形を含むゲームフィールドの画面を表示する機能と、
ユーザからの指示に応じて、前記ゲームフィールドに、流体が移動可能な通路を形成する機能と、
前記通路に導入された流体を制御する機能と、
前記ゲームフィールドに配置されたキャラクタの動作を制御する機能と、
前記流体を制御する機能により、前記流体が前記通路に沿ってより低い位置へ移動されたときに、前記流体が存在する通路にいた前記キャラクタを、前記流体とともに移動させる機能と、
をコンピュータに実現させるためのプログラム。
【請求項2】
前記流体が存在しない前記通路において、所定の条件が満たされたときに、第1のキャラクタを発生させる機能と、
前記流体が存在する前記通路において、所定の条件が満たされたときに、第2のキャラクタを発生させる機能と、を更にコンピュータに実現させ、
前記移動させる機能は、前記第2のキャラクタを前記流体とともに移動させ、前記第1のキャラクタを前記流体とともに移動させないことを特徴とする請求項1に記載のプログラム。
【請求項3】
前記キャラクタ及び前記ゲームフィールドに、前記キャラクタのエネルギーとなるパラメータを設定して前記パラメータの増減を管理する機能を更にコンピュータに実現させ、
前記第1のキャラクタを発生させる機能は、前記流体が存在しない前記通路に隣接するゲームフィールドに蓄積された前記パラメータが所定値を超えていることを条件として前記第1のキャラクタを発生させ、
第2のキャラクタを発生させる機能は、前記流体が存在する前記通路に隣接するゲームフィールドに蓄積された前記パラメータが所定値を超えていることを条件として前記第2のキャラクタを発生させることを特徴とする請求項2に記載のプログラム。
【請求項4】
前記キャラクタの動作を制御する機能は、前記キャラクタの移動にともなって前記キャラクタの前記パラメータを減少させ、前記キャラクタが他のキャラクタを捕食するか、又は、前記ゲームフィールドに蓄積されているパラメータを得たときに前記キャラクタの前記パラメータを増加させることを特徴とする請求項3に記載のプログラム。
【請求項5】
前記キャラクタの前記パラメータが所定値を超えたときに、同種のキャラクタを新たに生成する機能を更にコンピュータに実現させることを特徴とする請求項3又は4に記載のプログラム。
【請求項6】
前記キャラクタの動作を制御する機能は、前記キャラクタの前記パラメータが所定値を下回ったときに、前記キャラクタを消滅させ、
前記パラメータを管理する機能は、消滅した前記キャラクタが存在していた通路に隣接するゲームフィールドの前記パラメータを所定値分増加させることを特徴とする請求項3から5のいずれかに記載のプログラム。
【請求項7】
敵キャラクタの動作を制御する機能と、
前記敵キャラクタと前記キャラクタとの間の戦闘を制御する機能と、
前記ゲームフィールドに配置された全ての敵キャラクタを倒したときに、そのゲームフィールドにおけるゲームを終了させる機能と、
を更にコンピュータに実現させることを特徴とする請求項1から6のいずれかに記載のプログラム。
【請求項8】
前記敵キャラクタの動作を制御する機能は、前記敵キャラクタが前記流体を移動不能とする動作を実行可能とし、
前記流体を制御する機能は、前記敵キャラクタの動作を制御する機能により、前記流体を移動不能とする動作が実行されたとき、前記流体の移動を禁止することを特徴とする請求項7に記載のプログラム。
【請求項9】
高低差のある地形を含むゲームフィールドの画面を表示する画像処理部と、
ユーザからの指示に応じて、前記ゲームフィールドに、流体が移動可能な通路を形成する通路形成部と、
前記通路に導入された流体を制御する流体制御部と、
前記ゲームフィールドに配置されたキャラクタの動作を制御するキャラクタ制御部と、を備え、
前記キャラクタ制御部は、前記流体制御部により前記流体が前記通路に沿ってより低い位置へ移動されたときに、前記流体が存在する通路にいた前記キャラクタを前記流体とともに移動させることを特徴とするゲーム装置。
【請求項10】
高低差のある地形を含むゲームフィールドの画面を表示するステップと、
ユーザからの指示に応じて、前記ゲームフィールドに、流体が移動可能な通路を形成するステップと、
前記通路に導入された流体を制御するステップと、
前記ゲームフィールドに配置されたキャラクタの動作を制御するステップと、
前記流体を制御するステップにより、前記流体が前記通路に沿ってより低い位置へ移動されたときに、前記流体が存在する通路にいた前記キャラクタを、前記流体とともに移動させるステップと、
を備えることを特徴とするゲーム制御方法。
【請求項11】
請求項1から8のいずれかに記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【公開番号】特開2011−62262(P2011−62262A)
【公開日】平成23年3月31日(2011.3.31)
【国際特許分類】
【出願番号】特願2009−213794(P2009−213794)
【出願日】平成21年9月15日(2009.9.15)
【出願人】(310021766)株式会社ソニー・コンピュータエンタテインメント (417)
【Fターム(参考)】
【公開日】平成23年3月31日(2011.3.31)
【国際特許分類】
【出願日】平成21年9月15日(2009.9.15)
【出願人】(310021766)株式会社ソニー・コンピュータエンタテインメント (417)
【Fターム(参考)】
[ Back to top ]