特許第6144877号(P6144877)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社カプコンの特許一覧

<>
  • 特許6144877-ゲームプログラムおよびゲーム装置 図000002
  • 特許6144877-ゲームプログラムおよびゲーム装置 図000003
  • 特許6144877-ゲームプログラムおよびゲーム装置 図000004
  • 特許6144877-ゲームプログラムおよびゲーム装置 図000005
  • 特許6144877-ゲームプログラムおよびゲーム装置 図000006
  • 特許6144877-ゲームプログラムおよびゲーム装置 図000007
  • 特許6144877-ゲームプログラムおよびゲーム装置 図000008
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6144877
(24)【登録日】2017年5月19日
(45)【発行日】2017年6月7日
(54)【発明の名称】ゲームプログラムおよびゲーム装置
(51)【国際特許分類】
   A63F 13/30 20140101AFI20170529BHJP
   A63F 13/56 20140101ALI20170529BHJP
   A63F 13/45 20140101ALI20170529BHJP
【FI】
   A63F13/30
   A63F13/56
   A63F13/45
【請求項の数】3
【全頁数】22
(21)【出願番号】特願2012-94545(P2012-94545)
(22)【出願日】2012年4月18日
(65)【公開番号】特開2013-121487(P2013-121487A)
(43)【公開日】2013年6月20日
【審査請求日】2015年3月20日
(31)【優先権主張番号】特願2011-247423(P2011-247423)
(32)【優先日】2011年11月11日
(33)【優先権主張国】JP
(73)【特許権者】
【識別番号】000129149
【氏名又は名称】株式会社カプコン
(74)【代理人】
【識別番号】110000556
【氏名又は名称】特許業務法人 有古特許事務所
(72)【発明者】
【氏名】三小田 憲正
【審査官】 柴田 和雄
(56)【参考文献】
【文献】 特開2010−279460(JP,A)
【文献】 特開2004−187927(JP,A)
【文献】 ガンパレード・マーチ Gunparade March,電撃PlayStation 第16巻 第33号,株式会社アスキー・メディアワークス,2010年 2月27日,第16巻第33号,131-137頁
【文献】 ガンパレード・マーチ,電撃PlayStation 第7巻 第2号,メディアワークス Media Works,2001年 1月12日,第7巻,22頁
(58)【調査した分野】(Int.Cl.,DB名)
A63F 13/00 − 13/98
A63F 9/24
(57)【特許請求の範囲】
【請求項1】
コンピュータを、
複数のキャラクタが動作する仮想のゲーム空間を生成するゲーム空間生成手段、
前記ゲーム空間での各キャラクタの動作を制御するキャラクタ動作制御手段、
一のノンプレイヤキャラクタと当該一のノンプレイヤキャラクタ以外のキャラクタまたは所定のオブジェクトとの関係が所定の条件を満たすかどうかを判定する条件判定手段、および
前記ゲーム空間内で経過するゲーム内時間を管理するゲーム内時間管理手段、として機能させ、
前記キャラクタ動作制御手段は、
前記ノンプレイヤキャラクタが前記ゲーム内時間に応じて予め定められた基本行動を含む基本行動情報に基づいて前記ノンプレイヤキャラクタの動作を制御し、
前記条件判定手段が前記所定の条件を満たすと判定した場合に、前記所定の条件と関連付けられ、かつ、前記基本行動とは異なる割り込み行動を、前記基本行動に対して割り込んで実行するよう前記ノンプレイヤキャラクタの動作を制御し、
前記ゲーム内時間管理手段は、前記キャラクタ動作制御手段による前記割り込み行動の実行中もゲーム内時間を進行させ、
前記キャラクタ動作制御手段は、前記ノンプレイヤキャラクタに、前記割り込み行動終了後、当該割り込み行動終了時におけるゲーム内時間に応じた基本行動を実行させ、
前記キャラクタ動作制御手段は、プレイヤの操作またはゲームの進行状況に応じてプレイヤキャラクタの前記ゲーム空間における動作を制御するプレイヤキャラクタ動作制御手段を含み、
前記キャラクタ動作制御手段は、前記基本行動または前記割り込み行動を実行中の一のノンプレイヤキャラクタ(以下、第1のノンプレイヤキャラクタ)に対して前記プレイヤキャラクタが所定の動作を行うことにより、前記第1のノンプレイヤキャラクタの行動に介入した場合、当該プレイヤキャラクタによる前記介入後の前記第1のノンプレイヤキャラクタの前記基本行動時に、前記条件判定手段が前記所定の条件を満たすと判定した場合に、前記第1のノンプレイヤキャラクタ以外のノンプレイヤキャラクタ(以下、第2のノンプレイヤキャラクタ)に対して前記介入がない場合における割り込み行動(第1の割り込み行動)とは異なる第2の割り込み行動を実行するよう前記第1および第2のノンプレイヤキャラクタの動作を制御し、
前記キャラクタ動作制御手段は、前記第1のノンプレイヤキャラクタが死亡状態にある場合に、前記第2のノンプレイヤキャラクタに前記第1の割り込み行動を実行させ、前記プレイヤキャラクタが前記死亡状態にある前記第1のノンプレイヤキャラクタを復活させた場合に、前記第1のノンプレイヤキャラクタの行動に介入したと判定し、前記第2のノンプレイヤキャラクタに前記第2の割り込み行動を実行させる、ゲームプログラム。
【請求項2】
前記キャラクタ動作制御手段は、前記プレイヤキャラクタが前記基本行動中の前記第1のノンプレイヤキャラクタを移動させた場合に、前記第1のノンプレイヤキャラクタの行動に介入したと判定する、請求項1に記載のゲームプログラム。
【請求項3】
請求項1または2に記載のゲームプログラムを記憶したプログラム記憶部と、
前記プログラム記憶部に記憶されたプログラムを実行するコンピュータとを備えた、ゲーム装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、仮想のゲーム空間でのノンプレイヤキャラクタの動作を制御するゲームプログラムおよびゲーム装置に関する。
【背景技術】
【0002】
従来、アクションゲームやロールプレイングゲームなど、プレイヤの操作に応じてプレイヤキャラクタを仮想のゲーム空間内で動作させるゲームがある。この種のゲームでは、プレイヤキャラクタの他に、例えばプレイヤキャラクタに助言やアイテムを与えるなどのノンプレイヤキャラクタも登場する。ノンプレイヤキャラクタは、プレイヤが直接的にその動作を操作することのできないキャラクタであり、所定のルールに従ってゲーム空間内で行動するように設定されている。
【0003】
近年では、ノンプレイヤキャラクタの行動を多様化させてゲームに現実感を持たせる方法が種々提案されている。例えば、下記特許文献1のように、ゲーム空間内で経過する時間などに応じてノンプレイヤキャラクタが予め定められた行動をとるように設定することが提案されている。また、例えば、下記特許文献2のように、各キャラクタに注目度を設定し、対象となるノンプレイヤキャラクタの注目度に応じてプレイヤキャラクタの動作などを制御することも提案されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2003−325980号公報
【特許文献2】特開2010−279460号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、従来のゲームにおけるノンプレイヤキャラクタの行動パターンは、非常に限定的であって多様性に欠けている。より具体的に説明すると、例えば特許文献1のような構成においては、ノンプレイヤキャラクタは、ゲーム内の時間帯(例えば、昼間または夜間)に応じてゲーム空間内で予め設定された特定箇所に居場所が切り換えられ、そこで特定の行動を実行するのみになっている。したがって、プレイヤがこのようなゲームをある程度の時間プレイすれば、どの場所へ行けばどのノンプレイヤキャラクタがいて、そこで何をしているか、ということを完全に把握してしまうことになる。また、特許文献2のように、キャラクタの注目度に応じてその他のキャラクタの動作などが制御される場合においても、注目度とノンプレイヤキャラクタの行動内容との関係は一定である。したがって、この場合であってもプレイヤがこのようなゲームをある程度の時間プレイすれば、注目度をどの程度上げればノンプレイヤキャラクタがどこにいて、そこで何をしているか、ということを完全に把握してしまうことになる。このように、従来のゲームでは、ノンプレイヤキャラクタの行動パターンが単調であるため、現実味に欠け、プレイヤのゲームに対する興味を薄れさせてしまう可能性がある。
【0006】
そこで本発明は、ゲーム空間内でのノンプレイヤキャラクタの行動内容を多様化して現実味を高めることができるゲームプログラムおよびゲーム装置を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明に係るゲームプログラムは、コンピュータを、複数のキャラクタが動作する仮想のゲーム空間を生成するゲーム空間生成手段、前記ゲーム空間での各キャラクタの動作を制御するキャラクタ動作制御手段、一のノンプレイヤキャラクタと当該一のノンプレイヤキャラクタ以外のキャラクタまたは所定のオブジェクトとの関係が所定の条件を満たすかどうかを判定する条件判定手段、および前記ゲーム空間内で経過するゲーム内時間を管理するゲーム内時間管理手段、として機能させ、前記キャラクタ動作制御手段は、前記ノンプレイヤキャラクタが前記ゲーム内時間に応じて予め定められた基本行動を含む基本行動情報に基づいて前記ノンプレイヤキャラクタの動作を制御し、前記条件判定手段が前記所定の条件を満たすと判定した場合に、前記所定の条件と関連付けられ、かつ、前記基本行動とは異なる割り込み行動を、前記基本行動に対して割り込んで実行するよう前記ノンプレイヤキャラクタの動作を制御し、前記ゲーム内時間管理手段は、前記キャラクタ動作制御手段による前記割り込み行動の実行中もゲーム内時間を進行させ、前記キャラクタ動作制御手段は、前記ノンプレイヤキャラクタに、前記割り込み行動終了後、当該割り込み行動終了時におけるゲーム内時間に応じた基本行動を実行させるものである。
【0008】
前記基本行動情報は、前記ゲーム空間内における当該基本行動を実行する領域(以下、基本行動領域)を含んでもよい。
【0009】
前記キャラクタ動作制御手段は、前記ゲーム内時間に応じて設定された前記基本行動領域が前記ゲーム内時間に関連付けて記憶される記憶部から、前記基本行動領域を読み出す時間別基本行動領域読出手段と、前記基本行動領域にてノンプレイヤキャラクタが実行する基本行動の内容が前記基本行動領域に関連付けて記憶される記憶部から、前記基本行動の内容を読み出す場所別動作読出手段と、を含み、ノンプレイヤキャラクタを、ゲーム内時間に関連付けられた前記基本行動領域へ向かって、前記ゲーム空間内を移動するよう動作させるとともに、前記基本行動領域に到達したノンプレイヤキャラクタに、該基本行動領域に関連付けられた基本行動を実行させてもよい。
【0010】
また、本発明に係るゲーム装置は、上記のゲームプログラムを記憶したプログラム記憶部と、前記プログラム記憶部に記憶されたプログラムを実行するコンピュータとを備えている。
【発明の効果】
【0011】
本発明によれば、ゲーム空間内でのノンプレイヤキャラクタの行動パターンを多様化して現実味を高めることができるゲームプログラムおよびゲーム装置を提供することができる。
【図面の簡単な説明】
【0012】
図1】本発明の実施の形態に係るゲームの概要を説明すべく、仮想のゲーム空間を俯瞰して示す模式図である。
図2】ゲーム装置のハードウェア構成を示すブロック図である。
図3図2に示すゲーム装置の機能的な構成を示すブロック図である。
図4】各ノンプレイヤキャラクタのゲーム内時間に応じた基本行動のパターン例を示す図表である。
図5】本実施の形態における基本行動処理の制御の流れを示すフローチャートである。
図6】本実施の形態における行動選択処理の制御の流れを示すフローチャートである。
図7】各ノンプレイヤキャラクタに設定された条件と、それに対応する割り込み行動とを示す図表である。
【発明を実施するための形態】
【0013】
以下、本発明の実施の形態に係るゲームプログラムおよびゲーム装置について、図面を参照しつつ説明する。本実施の形態では、仮想のゲーム空間内で、プレイヤが操作するプレイヤキャラクタを行動させ、ゲーム空間中に適宜配置されたノンプレイヤキャラクタと話をしたり、ノンプレイヤキャラクタ(図面においてはNPCと略記する)にアイテムをもらったりしてゲームを進行させるゲームを例にして説明する。なお、本発明は、ゲーム空間中にノンプレイヤキャラクタを配置する必要のあるゲームであれば、どのような種類のゲームであっても適用可能である。
【0014】
[ゲーム概要]
図1は、本発明の実施の形態に係るゲームの概要を説明すべく、仮想のゲーム空間を俯瞰して示す模式図である。本ゲームのゲーム空間はオープンワールドに設計されており、プレイヤが操作するプレイヤキャラクタの移動に伴って変化するゲーム空間が、ゲーム装置の画面にシームレスに表示される。そして、図1のゲーム空間は、このオープンワールドなゲーム空間の一部を示している。ただし、本発明の適用対象はオープンワールドのゲームに限定されるわけではない。例えば、ゲーム空間が複数のフィールドに分割されたゲームであって、フィールド間を移動する際に、移動先のフィールドのデータをロードし、移動前後のフィールドを切り換えて表示するようなゲームにも適用することができる。
【0015】
図1に示すゲーム空間100は、向かって左側に位置する村101と向かって右側に位置する町102とが設けられている。村101と町102との間には丘103が設けられ、丘103の奥側には森104および池105が設けられ、丘103の手前側には港106および海107が設けられている。各場所は、道108で繋がれている。プレイヤキャラクタCPは、各場所間を道108を通じて移動したり、各場所内を移動したりすることができる。さらに、プレイヤキャラクタCPは道108以外の場所でも地形に応じて移動することができる。
【0016】
また、ゲーム空間100内の各所には、ノンプレイヤキャラクタである1または複数のノンプレイヤキャラクタC1,C2,C3が存在している。このノンプレイヤキャラクタC1,C2,C3は、後述する所定の条件を満たさない限り、ゲーム空間100内の所定の場所で所定の動作を繰り返し行っている(基本行動)。
【0017】
ところで、本実施の形態に係るゲームでは、ゲーム空間100内で経過する時間(ゲーム内時間)が設定されている。より具体的には、昼夜という大まかな時間帯の切り換えではなく、例えば1日を24時間で区切り、1時間ごとに時間の経過(時刻の変化)を管理している。そして、時間の経過に伴って、ゲーム空間100内の環境(仮想的な太陽の位置、明るさ、気温、風向き、など)が変化し得るようになっている。詳しくは後述するが、本ゲームではこのような時間の経過に伴い、ノンプレイヤキャラクタC1,C2,C3の基本行動のパターンが変化するように設定されている。
【0018】
[ハードウェア構成]
上述したゲームを実現するゲーム装置の構成について説明する。図2は、ゲーム装置2のハードウェア構成を示すブロック図である。図2に示すように、ゲーム装置2は、他のゲーム装置2およびサーバ装置3との間で、インターネットまたはLANなどの通信ネットワークNWを介して互いに通信可能である。このゲーム装置2は、その動作を制御するコンピュータであるCPU10を備え、このCPU10にはバス11を介してディスクドライブ12、メモリカードスロット13、プログラム記憶部を成すHDD14、ROM15およびRAM16が接続されている。
【0019】
ディスクドライブ12には、DVD−ROM等のディスク型記録媒体30が装填可能であり、該ディスク型記録媒体30には、本発明の実施の形態に係るゲームプログラム30aおよび本実施の形態で説明するゲームに登場するキャラクタCP,C1,C2,C3ならびにゲーム空間100を形成するのに必要なオブジェクトおよびテクスチャ等のゲームデータ30bが記録されている。また、メモリカードスロット13にはカード型記録媒体31が装填でき、ゲームの途中経過等のプレイ状況を示すセーブデータを、CPU10からの指示に応じて記録可能である。
【0020】
HDD14はゲーム装置2に内蔵される大容量記録媒体であって、ディスク型記録媒体30から読み込んだゲームプログラム30aおよびゲームデータ30bならびにセーブデータなどを記録する。ROM15は、マスクROMまたはPROMなどの半導体メモリであり、ゲーム装置2を起動する起動プログラムや、ディスク型記録媒体30が装填されたときの動作を制御するプログラムなどを記録している。RAM16は、DRAMまたはSRAMなどからなり、CPU10が実行すべきゲームプログラム30aや、その実行の際に必要になるゲームデータ30bなどを、ゲームのプレイ状況に応じてディスク型記録媒体30またはHDD14から読み込んで一時的に記録する。
【0021】
また、CPU10には、バス11を介してグラフィック処理部17、オーディオ合成部20、無線通信制御部23およびネットワークインタフェース25が接続されている。
【0022】
このうちグラフィック処理部17は、CPU10の指示に従ってゲーム空間100や各キャラクタCP,C1,C2,C3などを含むゲーム画像を描画する。また、グラフィック処理部17にはビデオ変換部18を介して外部のモニタ19が接続されており、グラフィック処理部17にて描画されたゲーム画像はビデオ変換部18において動画形式に変換され、モニタ19にて表示されるようになっている。
【0023】
オーディオ合成部20は、CPU10の指示に従ってデジタルのゲーム音声を再生および合成する。また、オーディオ合成部20にはオーディオ変換部21を介して外部のスピーカ22が接続されている。従って、オーディオ合成部20にて再生および合成されたゲーム音声は、オーディオ変換部21にてアナログ形式にデコードされ、更にスピーカ22から外部へ出力されるようになっている。
【0024】
無線通信制御部23は、2.4GHz帯の無線通信モジュールを有し、ゲーム装置2に付属するコントローラ24との間で無線により接続され、データの送受信が可能となっている。ユーザは、このコントローラ24に設けられたボタン等の操作子(図示せず)を操作することにより、ゲーム装置2へ信号を入力することができ、モニタ19に表示されるプレイヤキャラクタCPの動作を制御可能になっている。また、ネットワークインタフェース25は、インターネットまたはLANなどの通信ネットワークNWに対してゲーム装置2を接続するものであり、他のゲーム装置2またはサーバ装置3との間で通信可能である。そして、ゲーム装置2を、通信ネットワークNWを介して他のゲーム装置2と接続し、互いにデータを送受信することにより、同一のゲーム空間100内で同期して複数のプレイヤキャラクタCPを表示させることができる。したがって、複数人が共同してゲームを進行させるマルチプレイが可能になっている。
【0025】
[ゲーム装置の機能的構成]
図3は、図2に示すゲーム装置2の機能的な構成を示すブロック図である。図2に示すようにゲーム装置2は、CPU10、HDD14、ROM15、RAM16、グラフィック処理部17、ビデオ変換部18、オーディオ合成部20、オーディオ変換部21、ネットワークインタフェース25などを含むコンピュータとして動作する。そして、図3に示すように、ゲーム装置2は、本発明のゲームプログラムを実行することで、ゲーム空間生成手段41、キャラクタ動作制御手段42、条件判定手段43、ゲーム内時間管理手段44、ゲーム進行制御手段45などの機能を発揮する。
【0026】
このうち、ゲーム空間生成手段41は、上述したようなゲーム空間100および当該ゲーム空間100内で動作する各キャラクタCP,C1,C2,C3を生成し、モニタ19に表示させる。例えば、ゲーム空間生成手段41は、プレイヤキャラクタCPの移動に伴って、ゲームデータ30bに含まれるオブジェクトおよびテクスチャなどのデータを読み出し、三次元の仮想ゲーム空間100を生成する。さらに、ゲーム空間生成手段41は、ゲーム装置2のモニタ19にゲーム空間100を表示するために、生成したゲーム空間100を所定の仮想カメラで撮影したときの二次元画像を生成する。
【0027】
キャラクタ動作制御手段42は、ゲームの進行状況に応じて、ゲーム空間100におけるノンプレイヤキャラクタC1〜C3の動作を制御する。具体的には、キャラクタ動作制御手段42は、ノンプレイヤキャラクタC1〜C3がゲーム内時間に応じて予め定められた基本行動とゲーム空間100における当該基本行動を実行する領域(基本行動領域)とを含む基本行動情報に基づいてノンプレイヤキャラクタC1〜C3の動作を制御する。
【0028】
本実施形態においては、記憶部であるHDD14、ROM15およびRAM16の少なくとも1つに、ゲーム内時間に応じて設定されたゲーム空間100でのノンプレイヤキャラクタC1〜C3の基本行動領域として移動目標地点A〜Jがゲーム内時間に関連付けて記憶される。さらに、この記憶部には、移動目標地点A〜JにてノンプレイヤキャラクタC1〜C3が実行する基本行動の内容が移動目標地点に関連付けて記憶される。そして、キャラクタ動作制御手段42は、時間別基本行動領域読出手段42aを含み、記憶部からゲーム内時間に応じた基本行動領域(移動目標地点)を読み出す。さらに、キャラクタ動作制御手段42は、場所別動作読出手段42bを含み、記憶部から移動目標地点およびゲーム内時間に応じた基本行動の内容を読み出す。また、キャラクタ動作制御手段42は、プレイヤキャラクタ動作制御手段42cを含み、プレイヤの操作またはゲームの進行状況に応じてプレイヤキャラクタCPのゲーム空間100における動作を制御する。
【0029】
条件判定手段43は、一のノンプレイヤキャラクタC1,C2またはC3と当該一のノンプレイヤキャラクタ以外のキャラクタとの関係が所定の条件を満たすかどうかを判定する。例えば、条件判定手段43はノンプレイヤキャラクタC1に関しては当該ノンプレイヤキャラクタC1と、ノンプレイヤキャラクタC2,C3および/またはプレイヤキャラクタCPとの関係が所定の条件を満たすかどうかを判定する。また、場合によっては、条件判定手段43は、ノンプレイヤキャラクタC1,C2,C3と例えば岩、遊具、車、海、店などのオブジェクトとの関係が所定の条件を満たすかどうかを判定してもよい。例えば、ノンプレイヤキャラクタC1が移動する際の経路上に岩が位置するか否かを判定したり(岩がある場合、後述する割り込み行動としてノンプレイヤキャラクタC1は岩を除去する)、ノンプレイヤキャラクタC2が移動する際の経路の近くに遊具が置いてあるか否かを判定したり(遊具がある場合、後述する割り込み行動としてノンプレイヤキャラクタC2は遊具で遊ぶ)してもよい。
【0030】
ゲーム内時間管理手段44は、ゲーム空間100内で経過(進行)する時間(時刻)を管理する。例えば、上述したように1日を24時間で区切り、1時間ごとに時間の経過(時刻の変化)を管理している。ゲーム内時間管理手段44は、ゲーム装置2に設定された時刻情報に基づいて時間を管理する。なお、ゲーム内時間での1時間は、現実の1時間と同一の時間長さであってもよいし、異なる時間長さ(例えば現実の30分でゲーム内時間が24時間経過する)であってもよい。また、ゲーム内で管理される時刻を、現実の時刻に同期させるようにしてもよい。この際、ゲーム内時間管理手段44は、外部のサーバなどとネットワークを介して通信し、現実の時刻情報を所定のタイミングで取得してもよい。
【0031】
ゲーム進行制御手段45は、プレイヤの操作およびゲーム内時間の経過に応じて、ゲームの進行を制御する。例えば、プレイヤの操作によりプレイヤキャラクタCPが所定の動作を行った場合に、所定のイベントを発生させて一定期間だけ所定の動画を再生する。また、ゲーム内時間の経過に応じて、ゲーム空間100内の環境を変化させる。
【0032】
図4は、各ノンプレイヤキャラクタのゲーム内時間に応じた基本行動のパターン例を示す図表である。図4に示すように、ゲームデータ30bには、基本行動情報として、ノンプレイヤキャラクタC1〜C3ごとに、所定の時間帯に応じて定められた基本行動領域(移動目標地点A〜J)と当該基本行動領域で実行する行動の内容が予め定められた基本行動パターンが含まれている。すなわち、キャラクタ動作制御手段42は、ノンプレイヤキャラクタC1〜C3に、ゲーム内時間に応じた基本行動を実行させる。例えば、ノンプレイヤキャラクタC1,C3においては、それぞれ3つの基本行動パターンP11〜P13,P31〜P33が設定され、ノンプレイヤキャラクタC2においては、4つの基本行動パターンP21〜P24が設定されている。このように、各ノンプレイヤキャラクタには、基本行動パターンの数および基本行動パターンが適用される時間帯などが種々設定される。ノンプレイヤキャラクタC1〜C3ごとに異なる基本行動パターンを設定することにより、ノンプレイヤキャラクタC1〜C3に個性が生まれ、現実感が向上する。なお、図4においてはノンプレイヤキャラクタは、3人だけを例示しているが、より多くのノンプレイヤキャラクタが存在しており、それぞれ所定の基本行動が設定されている。
【0033】
なお、基本行動パターンは、本実施形態のようにノンプレイヤキャラクタごとに設定される場合に限られない。例えば、複数のノンプレイヤキャラクタに共通の基本行動パターンが設定されてもよい。具体的には、例えば、性別、年齢、職業などでグループ分けを行い、当該グループごとに共通の基本行動パターンが設定されてもよい。さらに、すべてのノンプレイヤキャラクタに共通の基本行動パターンを取らせてもよい。このような場合にも、後述する割り込み行動をとらせることによりノンプレイヤキャラクタの行動にランダム性が生まれる。また、一のノンプレイヤキャラクタに対して、重複する時間帯に複数の基本行動パターンを用意しておき、条件に応じて何れか一の基本行動パターンを採用するようにしてもよい。例えば、ゲーム内空間100における環境の変化(月日、季節、天気などの変化、所定のイベントの前後などのゲームの進行状況)に応じて基本行動パターンを変更することとしてもよい。
【0034】
図1に示すように、ゲーム空間100には、ノンプレイヤキャラクタC1,C2,C3が移動する際の基本行動領域として、複数の移動目標地点A〜Jが設定されている。このような移動目標地点A〜Jは、ゲーム空間100内の1点の座標として設定されてもよいし、所定の領域として設定されてもよい。なお、図1の例において移動目標地点AはノンプレイヤキャラクタC1の家を示し、移動目標地点Bは森を示し、移動目標地点Cは丘を示し、移動目標地点Dは池を示し、移動目標地点Eはレストランを示し、移動目標地点FはノンプレイヤキャラクタC2の家を示し、移動目標地点GはノンプレイヤキャラクタC3の家を示し、移動目標地点Hは港を示し、移動目標地点Iは海を示し、移動目標地点Jは魚屋を示している。また、レストランを示す移動目標地点Eは、客席を示す移動目標地点E1と、厨房を示す移動目標地点E2とを含んでいる。
【0035】
各基本行動パターンは、少なくとも1つの移動目標地点A〜Jと、移動目標地点A〜Jでの基本行動の内容と、基本行動パターンを実行する時間帯とを含んでいる。さらに、1つの基本行動パターンの中に複数の移動目標地点が存在する場合には、基本行動パターンは、移動目標地点を移動する順番および各移動目標地点での行動時間とを含んでいる。さらに、各基本行動パターンは、移動目標地点間の移動手段(歩く、走る、乗り物に乗るなど)を含んでいてもよい。なお、移動手段は毎回抽選などを行ってランダムに選択されることとしてもよいし、後述の割り込み行動に応じて決定されることとしてもよい。割り込み行動に応じて移動手段が決定される場合の例としては、例えば、馬キャラクタと出会うことにより割り込み行動が発生し、当該馬キャラクタに乗って移動目標地点まで移動すること等が挙げられる。ゲームデータ30bには、これらの情報が基本行動情報として含まれている。キャラクタ動作制御手段42は、このような基本行動情報をその時点におけるゲーム内時間とともに読み出すことにより、各ノンプレイヤキャラクタC1〜C3をゲーム空間100内で動作させる。図4に示すように、例えばノンプレイヤキャラクタC1は、6:00〜12:00の間の時間帯において、森(移動目標地点B)に移動して30分食材採集を行い、その後丘(移動目標地点C)に移動して5分休憩し、その後池(移動目標地点D)に移動して15分釣りをするという行動を繰り返すように設定されている。
【0036】
以下に、ノンプレイヤキャラクタが基本行動を行う際の処理の流れについて説明する。図5は、本実施の形態における基本行動処理の制御の流れを示すフローチャートである。この処理は、ゲームの開始から終了まで実行される処理であり、後述の行動選択処理(図6)によって中断(一時停止)され、行動選択処理の終了をもって再開される場合がある。この処理を実行するにあたってゲーム空間生成手段41は、ゲーム空間100を生成するとともに、プレイヤキャラクタCPおよびノンプレイヤキャラクタC1〜C3を配置する。ゲーム装置2は、ゲーム空間生成手段41により生成したゲーム空間100内において、プレイヤの操作に応じてプレイヤキャラクタ動作制御手段42cによりプレイヤキャラクタCPを動作させる。また、これと同時に、プレイヤキャラクタCPに関連付けて設定された仮想カメラが映すゲーム空間100の映像を、モニタ19に表示する。一方で、プレイヤキャラクタCPが存在するゲーム空間100の位置を含む所定の領域内において設定されたノンプレイヤキャラクタC1〜C3を初めて読み出す際には、当該ノンプレイヤキャラクタC1〜C3は、所定の初期位置に配置される。このようにプレイヤキャラクタCPが存在するゲーム空間100の位置を含む所定の領域内において設定されたノンプレイヤキャラクタC1〜C3について、コンピュータとして機能するゲーム装置2は、以下の基本行動処理を行う。
【0037】
キャラクタ動作制御手段42は、ノンプレイヤキャラクタC1〜C3ごとに以下のような手順で移動目標地点までの移動および当該移動目標地点での基本行動の実行を行う。さらに、キャラクタ動作制御手段42は、ゲーム内時間管理手段44からゲーム内時間を取得し、下記ステップS1で読み出した基本行動パターンを実行すべき時間帯に基づいて、取得したゲーム内時間が当該時間帯外になったかどうか(時間帯の最終時刻を過ぎたか否か)を判定する。本実施形態においては、ゲーム内時間管理手段44は、基本行動処理と並行してゲーム内時間を各フレームごとに読み出し、管理する処理を行っており、読み出したゲーム内時間をキャラクタ動作制御手段42に適宜受け渡している。そして、ゲーム内時間が時間帯外になったと判定された場合には、キャラクタ動作制御手段42は、現在実行中の基本行動をリセットし、ステップS1から再度制御フローを実行する。すなわち、キャラクタ動作制御手段42は、改めて、基本行動パターン(新しい時間帯の基本行動パターン)を読み出し、当該基本行動パターンに基づいて基本行動処理を実行する。
【0038】
まず、キャラクタ動作制御手段42は、ゲーム内時間に応じた基本行動パターン(基本行動情報)をゲームデータ30bから読み出し、RAM16などに一時記録する(ステップS1)。本実施形態においては、下記ステップで用いるフラグfに関連して基本行動パターンに含まれる移動目標地点の総数fmも合わせて読み出す。さらに、キャラクタ動作制御手段42は、フラグfを0に設定する(ステップS2)。このフラグfは、後述するように1つの基本行動パターンに含まれる移動目標地点の順番を意味し、最大値fmがその基本行動パターンに含まれる移動目標地点の総数を意味する。
【0039】
キャラクタ動作制御手段42は、フラグfに1を加える(最初であればfを0から1にする)(ステップS3)。その上で、時間別基本行動領域読出手段42aは、対応する移動目標地点を基本行動情報の中から取得する(ステップS4)。具体的には、時間別基本行動領域読出手段42aは、例えば読み出した基本行動パターンが複数の移動目標地点を3つ含む場合、現状のフラグf(1〜fm)に対応する移動目標地点(1〜fm番目の移動目標地点)の座標を読み出す。例えば、f=1なら1番目の移動目標地点、f=2なら2番目の移動目標地点、f=3なら3番目の移動目標地点の座標を読み出す。この際、移動目標地点への移動方法も合わせて基本行動情報の中から取得する。そして、キャラクタ動作制御手段42は、ノンプレイヤキャラクタを読み出した移動目標地点(すなわち、現在のゲーム内時間に関連付けられた移動目標地点)に読み出した移動方法でゲーム空間100内を移動させる(ステップS5)。キャラクタ動作制御手段42は、ノンプレイヤキャラクタが移動目標地点に到着したかどうかをプレイヤキャラクタCPの位置表示を更新する毎(例えばフレーム毎)に監視する(ステップS6)。ノンプレイヤキャラクタが移動目標地点に到達したかどうかは、キャラクタ動作制御手段42が、ノンプレイヤキャラクタの現在位置を判断し、当該現在位置が移動目標地点として定められた所定の座標または領域内に位置するか否かを判定することによって判定される。キャラクタ動作制御手段42によってノンプレイヤキャラクタが移動目標地点tに到着したと判定された場合(ステップS6でYes)、場所別動作読出手段42bは、対応する基本行動の内容および当該基本行動の行動時間tmを基本行動情報の中から取得する(ステップS7)。
【0040】
キャラクタ動作制御手段42は、ノンプレイヤキャラクタに、読み出した基本行動(すなわち、到着した移動目標地点に関連付けられた基本行動)を実行させる(ステップS8)。これに合わせて、キャラクタ動作制御手段42は、基本行動の実行時間tの計測を開始する(ステップS9)。そして、キャラクタ動作制御手段42は、実行時間tが行動時間tm以上となるかどうかをプレイヤキャラクタCPの位置表示を更新する毎(例えばフレーム毎)に監視し(ステップS10)、実行時間tが行動時間tm以上となった場合(ステップS10でYes)、基本行動を終了する(ステップS11)。
【0041】
当該移動目標地点における基本行動終了後、キャラクタ動作制御手段42は、フラグfが基本行動パターンに含まれる移動目標地点の最大値fm以上となっているか否かを判定する(ステップS12)。フラグfが最大値fm未満である場合(ステップS12でNo)、キャラクタ動作制御手段42は、ステップS4に戻ってフラグfに1を加え、ステップS5からステップS12までを実行する。すなわち、キャラクタ動作制御手段42は、ノンプレイヤキャラクタを次の移動目標地点に移動させ、当該移動目標地点において対応する基本行動を実行させる。フラグfが最大値fm以上である場合(ステップS12でYes)、キャラクタ動作制御手段42は、ステップS2に戻ってフラグfを0にリセットした後、ステップS3からステップS11までを実行する。すなわち、キャラクタ動作制御手段42は、ノンプレイヤキャラクタを1番目の移動目標地点に移動させ、当該移動目標地点において対応する基本行動を実行させる。
【0042】
ここで、ゲーム装置2は、前述した条件判定手段43としても機能し、上記基本行動処理と並行して、一のノンプレイヤキャラクタC1,C2,C3と当該一のノンプレイヤキャラクタ以外のキャラクタとの関係が所定の条件を満たすかどうかを判定する。具体的には、条件判定手段43は、各ノンプレイヤキャラクタC1,C2またはC3とプレイヤキャラクタCPとの関係、ノンプレイヤキャラクタC1とノンプレイヤキャラクタC2またはC3との関係、ノンプレイヤキャラクタC2とノンプレイヤキャラクタC3との関係の少なくともいずれか1つがそれぞれの関係に対応する所定の条件を満たすかどうかを条件判定を行うべきノンプレイヤキャラクタ(割り込み行動が存在するノンプレイヤキャラクタ)ごとに判定する。そして、条件判定手段43が所定の条件を満たすと判定した場合に、キャラクタ動作制御手段42は、所定の条件と関連付けられ、かつ、基本行動とは異なる割り込み行動を、基本行動に対して割り込んで実行するようノンプレイヤキャラクタの動作を制御する。
【0043】
以下、基本行動処理を行うか割り込み行動を行うかを選択するための行動選択処理について説明する。図6は、本実施の形態における行動選択処理の制御の流れを示すフローチャートである。なお、ここでは、ノンプレイヤキャラクタC1が「採集」、「休憩」、「釣り」といった基本行動P12を実行している時間帯に、「仲間と出会う」という条件を満たしたため、基本行動P12に割り込んで「話す」という行動を実行する場合を例示しつつ説明する。
【0044】
図6に示すように、まず、ゲーム装置2は、条件判定手段43として機能し、ノンプレイヤキャラクタごとに設定されている条件を読み出す(ステップS21)。このステップは、ゲーム起動時に行われることが好ましい。その上で、条件判定手段43は、ゲーム開始からゲーム終了まで所定のタイミングごと(例えば毎フレームごと)に、ノンプレイヤキャラクタの現状が、ステップS21で読み出した当該ノンプレイヤキャラクタに対応して設定された条件を満たしているか否かを判定する(ステップS22)。ノンプレイヤキャラクタが対応する所定の条件を満たしていない場合(ステップS22でNo)、キャラクタ動作制御手段42は、図5に示す基本行動処理を継続する。
【0045】
一方、ノンプレイヤキャラクタが対応する所定の条件を満たしている場合(ステップS22でYes)、キャラクタ動作制御手段42は、基本行動処理を中断する(ステップS23)。さらに、キャラクタ動作制御手段42は、割り込み行動を読み出し、割り込み行動の実行を開始する(ステップS24)。なお、ゲーム内時間管理手段44は、割り込み行動実行時においてもゲーム内時間を継続的に進行させる(時間を止めない)。キャラクタ動作制御手段42は、割り込み行動が終了したかどうかを監視し(ステップS25)、割り込み行動(および後述する割り込み行動の後に生じる事象)が終了した場合(ステップS25でYes)、基本行動処理を再開する(ステップS26)。その後は、再び所定のタイミングごとに上記ステップS22を実行し、ステップS22の判定に応じてステップS23以降のステップを実行する。
【0046】
図7は、各ノンプレイヤキャラクタに設定された条件と、それに対応する割り込み行動とを示す図表である。図7には、各ノンプレイヤキャラクタC1〜C3(図7においてはNPC1〜NPC3と表記)のそれぞれが他のノンプレイヤキャラクタやプレイヤキャラクタCPなどとの関係で割り込み行動が生じ得る条件と、当該条件によって実行される割り込み行動と、当該割り込み行動の後に生じ得る事象とが示されている。
【0047】
図7に示すように、ノンプレイヤキャラクタが割り込み行動を実行する条件としては、例えば仲間や敵などの他のノンプレイヤキャラクタと会うことや、プレイヤキャラクタCPと会うことが含まれる。このことは、条件判定手段43において、例えば一のノンプレイヤキャラクタが他のノンプレイヤキャラクタまたはプレイヤキャラクタCPの位置に基づく所定の領域内に位置するか否かを判定することにより実現される。また、他のノンプレイヤキャラクタなどが何らかの行動をしているのを見かける(逃げるのを見かける、喧嘩しているのを見かける、話しているのを見かけるなど)ことを条件としてもよい。このことは、条件判定手段43において、例えば各ノンプレイヤキャラクタに設定された視界範囲内に他のノンプレイヤキャラクタまたはプレイヤキャラクタCPが位置するか否かを判定することにより実現される。また、単純に特定のキャラクタに会うだけでなく、例えば各キャラクタ同士の好感度(ノンプレイヤキャラクタのプレイヤキャラクタCPに対する好感度またはノンプレイヤキャラクタ同士の好感度)を数値化し、「出会った他のキャラクタとの間の好感度が所定値以上である」という条件を設定してもよい。このことは、例えば予め好感度がキャラクタごとに記憶され、所定の条件が成立した場合に当該好感度をキャラクタごとに増減させて更新するよう構成しておき、条件判定手段43において、一のノンプレイヤキャラクタが他のノンプレイヤキャラクタまたはプレイヤキャラクタCPの位置に基づく所定の領域内に位置したと判定された場合に、当該他のノンプレイヤキャラクタまたはプレイヤキャラクタCPに対する一のノンプレイヤキャラクタの好感度が所定値以上か否かを判定することにより実現される。
【0048】
上記のような条件を満たしたときの割り込み行動としては、例えば相手と話す、相手と喧嘩する、声をかけるなどといった行動が含まれる。また、後述するように相手を特定の場所に連れて行くなどの複雑な行動を割り込み行動としてもよい。さらに、割り込み行動は基本行動と無関係な行動である必要はなく、基本行動と関係がある行動であってもよい。例えば、前述したように、馬キャラクタと出会うことにより割り込み行動が発生し、当該馬キャラクタに乗って(基本行動における)移動目標地点まで移動すること等が挙げられる。また、ノンプレイヤキャラクタとオブジェクトとの関係による条件を満たしたときの割り込み行動としては、例えば当該オブジェクトを移動させる、破壊する、使う、乗る、海で泳ぐ、店を閉める等が挙げられる。そして、このような割り込み行動の結果、例えばプレイヤキャラクタは、アイテムをもらえたり、好感度が変化したりする。また、割り込み行動によって当該ノンプレイヤキャラクタがいるべき場所が変わったり、店が閉店したり、別の条件を満たしたりすることとなる。
【0049】
例えば、図7に示すように、ノンプレイヤキャラクタC3は、ノンプレイヤキャラクタC2に会うとノンプレイヤキャラクタC2に声をかけるという割り込み行動が生じる。一方、ノンプレイヤキャラクタC2は、ノンプレイヤキャラクタC3に会うと森(移動目標地点B)へ逃げるという割り込み行動が生じる。さらに、ノンプレイヤキャラクタC1は、ノンプレイヤキャラクタC2が逃げているのを見かけると、ノンプレイヤキャラクタC2を家(移動目標地点A)に匿うという割り込み行動が生じる。このとき、さらにノンプレイヤキャラクタC1とノンプレイヤキャラクタC3とが会うと、お互い喧嘩をするという割り込み行動が生じる。喧嘩の結果、ノンプレイヤキャラクタC3が死亡すると、ノンプレイヤキャラクタC3が店主をしている魚屋(移動目標地点J)が開店しないという結果になる。
【0050】
さらに、プレイヤキャラクタCPの行動に応じてノンプレイヤキャラクタC1〜C3に割り込み行動を生じさせることも可能である。例えばノンプレイヤキャラクタC1がプレイヤキャラクタCPと会うと、ノンプレイヤキャラクタC1がプレイヤキャラクタCPをレストラン(移動目標地点E)に招待するという割り込み行動が生じる。この割り込み行動の間に、別の場所で、前述の例のようにノンプレイヤキャラクタC3がノンプレイヤキャラクタC2に会うと、やはり、ノンプレイヤキャラクタC2がノンプレイヤキャラクタC3から逃げるという割り込み行動が生じる。しかしこの場合は、ノンプレイヤキャラクタC1とノンプレイヤキャラクタC2とは互いに別の場所にいるため、ノンプレイヤキャラクタC1がノンプレイヤキャラクタC2を見かけるという条件は満たされなくなる。したがって、その後の各ノンプレイヤキャラクタC1〜C3の状態(位置および行動)は、前述した例とは異なることとなる。
【0051】
その他、プレイヤキャラクタCPが所定のノンプレイヤキャラクタC1〜C3と会うという条件を満たすことにより、例えば話をしたり、攻撃したり、喧嘩を仲裁したりといった割り込み行動を起こさせるように設定してもよい。例えばプレイヤキャラクタCPがノンプレイヤキャラクタと長話をすることにより、当該ノンプレイヤキャラクタの移動を引き止めておくことにより、他の場所において発生するイベントに間に合わなくさせることが可能となる。また、例えばプレイヤキャラクタCPが店主であるノンプレイヤキャラクタを攻撃して死なせてしまうことにより、その店のアイテムを買えなくしてしまう状態とすることが可能となる。また、例えばプレイヤキャラクタCPがノンプレイヤキャラクタ同士の喧嘩を仲裁することにより、ノンプレイヤキャラクタを死なせることを防止して、当該ノンプレイヤキャラクタによる新たなイベントを発生させることが可能となる。
【0052】
このように、上記構成によれば、所定の条件を満たすことにより、ノンプレイヤキャラクタC1〜C3が予め設定された基本行動とは異なる割り込み行動を実行するため、ノンプレイヤキャラクタC1〜C3の行動がランダムに変化する。あるノンプレイヤキャラクタが割り込み行動を実行している最中でもゲーム内時間は継続的に進行するため、当該割り込み行動に関係しないノンプレイヤキャラクタやプレイヤキャラクタCPは、動作が継続される。これにより、ノンプレイヤキャラクタC1〜C3間あるいは割り込み行動中のノンプレイヤキャラクタとプレイヤキャラクタCPとの間で、行動内容に時間的および場所的なずれが生じる。このため、同じゲーム内時間であるにも拘らずゲーム空間100内における各ノンプレイヤキャラクタC1〜C3の状態を変化に富んだものとすることができる。したがって、ゲーム空間100内でのノンプレイヤキャラクタC1〜C3の行動内容を多様化して現実味を高めることができる。さらに、割り込み行動終了後は、基本行動に復帰するが、該当する時間帯における最初の移動目標地点に移動し、当該移動目標地点で対応する基本行動を行うことになるので、割り込み行動が生じたか否かで、同じ時間帯内の同じゲーム内時間においてもノンプレイヤキャラクタC1〜C3の行動に変化をつけることができる。
【0053】
また、割り込み行動(例:「森まで逃げる」)によって基本行動では行かないような場所にノンプレイヤキャラクタC1〜C3が位置する可能性が生じるため、これにより基本行動のみでは生じない条件(基本行動だけでは出会わないノンプレイヤキャラクタ同士が出会うなど)を満たしてさらなる割り込み行動を発生させることができる。したがって、割り込み行動の連鎖が生じる結果、ゲーム空間100内で発生し得るイベントがランダムに変化し、プレイヤのゲーム進行にも様々な影響を与えることができる。
【0054】
なお、本実施形態において、キャラクタ動作制御手段42は、ノンプレイヤキャラクタC1〜C3の移動目標地点への移動に際し、現在の位置から移動目標地点までの最適な道順を適宜設定するように制御する。具体的には、例えばノンプレイヤキャラクタC1〜C3が移動可能な場所(地面および床面など)に複数の所定の大きさの三角形の格子で構成されるメッシュが設定されており、当該メッシュの三角形の各辺の中央位置または三角形の中心点などが移動経路を設定する上でのノンプレイヤキャラクタC1〜C3の経由候補点として設定されている。その上で、キャラクタ動作制御手段42は、現在の位置と移動目標地点との間の移動経路が最短となるように現在の位置から移動目標地点までの経由候補点の組み合わせを探索し、当該探索結果に基づいて選択された経由候補点を順次辿るようにノンプレイヤキャラクタC1〜C3を移動制御する。また、探索領域においてノンプレイヤキャラクタが移動できない障害物が存在する場合には、このような障害物領域を避けて、近接する経由候補点を伝いながら現在の位置と移動目標地点との間の移動経路が最短となるような経由候補店の組み合わせを探索する。この際、移動経路の算出は、例えばA*(エースター)アルゴリズムなどを利用して行われる。したがって、割り込み行動終了時において割り込み行動によって基本行動では行かないような場所にノンプレイヤキャラクタC1〜C3が位置した場合であっても、ノンプレイヤキャラクタC1〜C3を違和感なく移動制御することができる。
【0055】
なお、ゲーム空間100内に存在するすべてのノンプレイヤキャラクタについて割り込み行動を起こさせるように設定しなくてもよい。すなわち、ノンプレイヤキャラクタのうちの一部が、条件を満たすことによって上記のような割り込み行動を実行するように設定され、その他のノンプレイヤキャラクタは、つねに基本行動(ゲーム内時間に応じた基本行動でもよいし、ゲーム内時間に拘わらない基本行動でもよい)を繰り返すように設定されてもよい。
【0056】
また、ゲーム内容によっては、割り込み行動とは別に、所定のノンプレイヤキャラクタがプレイヤキャラクタCPと会うことにより、ゲーム内時間を止めて、イベントを発生させる(ノンプレイヤキャラクタを行動させる)ことを含んでもよい。
【0057】
また、ノンプレイヤキャラクタは、プレイヤキャラクタCPに会うことにより、割り込み行動以外の付加的な行動をとってもよい。例えば、ノンプレイヤキャラクタは、プレイヤキャラクタCPに対して挨拶をする、手を振る、笑う、びっくりするなどの行動をとり得る。この場合には、ノンプレイヤキャラクタは基本行動を中断しない(基本行動と並行してこれらの動作を行う)こととしてもよい。また、割り込み行動中に付加的な行動をとってもよく、この場合もノンプレイヤキャラクタの割り込み行動を中断しないこととしてもよい。付加的な行動は、予め決められたキャラクタ同士の関係または友好度に応じて選択および実行されてもよい。また、付加的な行動を条件判定手段43が判定する割り込み行動開始の所定の条件として設定してもよい。例えば、ノンプレイヤキャラクタC1の友好度が上がると、ノンプレイヤキャラクタC1がプレイヤキャラクタCPに挨拶するように設定しておき、割り込み行動の実行を開始するための所定の条件として、プレイヤキャラクタCPに挨拶することと設定することとしてもよい。この場合、ノンプレイヤキャラクタC1の好感度が上がって、プレイヤキャラクタCPに挨拶をした結果、ノンプレイヤキャラクタC1が基本行動を中断して(挨拶自体は、基本行動および割り込み行動を中断しない)、所定の割り込み行動が開始される。
【0058】
また、本実施形態において、プレイヤキャラクタ動作制御手段42cは、プレイヤの操作に基づいてノンプレイヤキャラクタC1〜C3を別の場所に移動させるノンプレイヤキャラクタ移動動作を制御する。すなわち、プレイヤキャラクタCPは、プレイヤの操作により、ノンプレイヤキャラクタC1〜C3を別の場所に移動させる(例えばノンプレイヤキャラクタを持ち上げて運ぶ)ことができる。
【0059】
例えば、プレイヤキャラクタCPがノンプレイヤキャラクタC1〜C3の位置に基づく所定の領域内に位置した場合に、プレイヤキャラクタ動作制御手段42cは、プレイヤの所定の操作に基づいてプレイヤキャラクタCPが当該領域内に位置したノンプレイヤキャラクタC1〜C3を持ち上げる動作を行うよう制御する。キャラクタ動作制御手段42は、ノンプレイヤキャラクタC1〜C3を持ち上げた状態でプレイヤキャラクタCPを移動させる操作が行われると、ノンプレイヤキャラクタC1〜C3を持ち上げたまま移動する(持ち運ぶ)ように制御する。
【0060】
また、持ち上げられるノンプレイヤキャラクタC1〜C3において割り込み行動を開始する所定の条件として、プレイヤキャラクタCPに持ち上げられることを予め設定しておき、条件判定手段43は、ノンプレイヤキャラクタC1〜C3が持ち上げられたか否かを判定する。具体的には、条件判定手段43は、プレイヤキャラクタCPがノンプレイヤキャラクタC1〜C3に基づく所定の領域内に位置しかつコントローラ24より所定の持ち上げ操作入力が行われた場合に、所定の条件を満たしたと判定する。この結果、キャラクタ動作制御手段42は、当該持ち上げられたノンプレイヤキャラクタC1〜C3の基本行動を中断し、割り込み行動の実行を開始する。持ち上げられたノンプレイヤキャラクタC1〜C3の割り込み行動としては、例えば持ち上げられ、運ばれている間じっとしていることとしてもよいし、持ち上げられている間手足をじたばたさせる(所定の条件を満たせば持ち上げているプレイヤキャラクタCPから逃れる)こととしてもよい。
【0061】
したがって、例えば図7に示す条件が設定されている場合に、プレイヤキャラクタCPが森(目標移動地点B)にいるノンプレイヤキャラクタC1をノンプレイヤキャラクタC3のいる港(目標移動地点H)に移動させることができる。これにより、ノンプレイヤキャラクタC1が森(目標移動地点B)にいる時間帯(6:00〜12:00)では会うはずのないノンプレイヤキャラクタC3に会うこととなり、基本行動パターンの実行だけでは想定されていない割り込み行動を生じさせることができる。このように、プレイヤによって積極的に割り込み行動を生じさせて新たな状況(イベント等)を生じさせることができるため、ゲーム内容をより多様化させることができる。
【0062】
なお、プレイヤキャラクタCPの代わりに所定のノンプレイヤキャラクタが他のノンプレイヤキャラクタを持ち上げられるように設定してもよい。この場合、キャラクタ動作制御手段42は、他のノンプレイヤキャラクタとの関係が所定の条件を満たしたと条件判定手段43が判定した場合に、持ち上げる側のノンプレイヤキャラクタが当該他のノンプレイヤキャラクタを所定の場所に持ち運ぶことを割り込み行動として実行する(持ち上げる側のノンプレイヤキャラクタにおける割り込み行動として設定される)。この場合、割り込み行動(持ち運び行動)が、さらなる割り込み行動(基本行動のみでは会わないはずのノンプレイヤキャラクタに会う等)の機会を生じさせる。また、持ち運びによって移動させられたノンプレイヤキャラクタが再度基本行動を行うために、キャラクタ動作制御手段42が当該ノンプレイヤキャラクタを対応する移動目標地点に移動させる(基本行動のみでは通らない場所を移動する)制御を行うため、より多くの割り込み行動の機会を生じさせることができる。
【0063】
また、ノンプレイヤキャラクタの位置および行動はプレイヤによる所定の操作を行うことによりリセットされることとしてもよい。具体的には、リセット後にゲームを再開した際に、すべてのノンプレイヤキャラクタの位置を初期位置に位置し、改めて基本行動パターンを読み出す(図5のフローチャートのステップS1から始める)こととしてもよい。例えば、プレイヤがゲーム状態を保存するセーブ操作を行った後、セーブ操作によって保存されたセーブデータからゲームを再開した場合には、ノンプレイヤキャラクタの位置及び行動は、リセットされることとしてもよい。さらに、ノンプレイヤキャラクタが死亡した場合、キャラクタ動作制御手段42は、当該ノンプレイヤキャラクタをゲーム空間100内から消去するが、所定のゲーム時間経過後(例えば4〜7日後)に復活させるように設定してもよい。
【0064】
ノンプレイヤキャラクタが割り込み行動を実行する条件としては、上述したものの他、例えばプレイヤキャラクタCPが死亡した(体力が0になりゲーム空間から消去された)ノンプレイヤキャラクタを特定のアイテム(以下、復活アイテムと称する)により生き返らせることも含まれる。
【0065】
復活アイテムは、プレイヤキャラクタCPおよびすべてのノンプレイヤキャラクタに使用して生き返らせることができるように設定することが可能である。ノンプレイヤキャラクタは、プレイヤキャラクタCPが倒したり、イベントなどゲーム進行により死亡したりする。復活アイテムを使用しない場合には、所定のノンプレイヤキャラクタが死亡したという情報に基づいて他のノンプレイヤキャラクタの行動が決定されたり、イベントの発生の有無が決定されたりする。しかし、復活アイテムを使用することにより、死亡したはずのノンプレイヤキャラクタが生きていることになる。これにより、ゲーム空間内にノンプレイヤキャラクタが死亡したままの状態とは異なる状況が生じ、当該ノンプレイヤキャラクタまたは他のノンプレイヤキャラクタがさらなる割り込み行動を起こす機会を生じさせることができる。
【0066】
ノンプレイヤキャラクタを生き返らせた場合、ノンプレイヤキャラクタが生きているときと同じように(ノンプレイヤキャラクタが死んだというフラグをオフにして)ゲームを進行させる(他のノンプレイヤキャラクタなどを制御する)こととしてもよい。また、ノンプレイヤキャラクタが死亡した場合のゲーム進行を変更することなく(ノンプレイヤキャラクタが死亡したというフラグをオンにした状態のまま)他のノンプレイヤキャラクタを制御したり、イベントの発生を制御してもよい。例えば、ノンプレイヤキャラクタの死亡の有無でイベントが発生する場合、当該ノンプレイヤキャラクタが死亡した場合のイベントと、生存している場合のイベントとが両方生じ得る。
【0067】
具体的には、例えば、図7の例において、ノンプレイヤキャラクタC1とノンプレイヤキャラクタC3とが喧嘩し、二人のノンプレイヤキャラクタC1,C3のいずれかが死亡することで進行するイベントにおいて、プレイヤキャラクタCPは、何れかのノンプレヤキャラクタC1,C3に加勢するか、何れにも加勢せず傍観するという選択肢が設けられることとしてもよい。ノンプレイヤキャラクタC1,C3の何れかに加勢し、相手に勝利した場合、プレイヤキャラクタCPは、加勢したノンプレイヤキャラクタからアイテムをもらえる。ただし、加勢してもらった負い目があるため、大したアイテムはもらえない。一方、傍観した場合、勝利したノンプレイヤキャラクタからより重要なアイテムをもらうことができる。そして、さらに、傍観した上で、敗れたノンプレイヤキャラクタを生き返らせることにより、敗れたノンプレイヤキャラクタからも重要なアイテムをもらうことができる。このようにノンプレイヤキャラクタを生き返らせた場合には、生き返ったノンプレイヤキャラクタから報酬を得るようにしてもよい。また、生き返らせることによりゲーム進行が変化したり(追加のイベントが発生したり)、ノンプレイヤキャラクタの友好度を増加させたりしてもよい。
【0068】
なお、勝利したノンプレイヤキャラクタは、その後もゲーム空間に存在し、さらに当該ノンプレイヤキャラクタまたは他のノンプレイヤキャラクタに割り込み行動を生じさせる条件となり得る。また、死亡したノンプレイヤキャラクタも、ゲーム空間に存在しないことにより、他のノンプレイヤキャラクタに割り込み行動を生じさせる条件となり得る。例えば、上述したノンプレイヤキャラクタC1が死亡すると、図4に示す基本行動において、レストラン(厨房E2)で料理をする者がいなくなり、レストランが開店しない状況が生じる。これにより、他のノンプレイヤキャラクタが食事できなくなり、当該ノンプレイヤキャラクタが攻撃的になるという割り込み行動が生じ得る。また、レストランが開店しないことによりノンプレイヤキャラクタC2は、レストラン(客席E1)で歌うことができず仕事を失うこととなり、朝の練習をしなくなる(海岸Hに行かず自宅Fに引き篭もるようになる)という割り込み行動が生じ得る。
【0069】
また、例えば、謎の教団に潜入し、教団員として内偵するイベントにおいて、依頼者から捕まえた幹部(ノンプレイヤキャラクタ)を殺すようにいわれた場合、プレイヤキャラクタCPは当該幹部を殺すか、逃がすという選択肢が設けられる。幹部を殺すと依頼者から追加の依頼(イベント)が発生するが、殺さずに逃がすと依頼者からの信用を失って追加の依頼は発生しない。その代わり、逃がした幹部が後に助けてくれるというイベントが発生する。さらに、幹部を殺して追加の依頼を受けた上で当該幹部を生き返らせると、依頼者から追加の依頼を達成することによる報酬を得ることができる上に後のイベントで幹部に助けてもらうことができる。
【0070】
また、例えば、ノンプレイヤキャラクタの護衛など、特定のノンプレイヤキャラクタを死なせると失敗になるイベントにおいて、当該ノンプレイヤキャラクタを死なせても、復活アイテムにより生き返らせることにより、当該イベントを成功させることができる。
【0071】
なお、上記のような復活アイテムは、ノンプレイヤキャラクタが使用することとしてもよい。例えばプレイヤキャラクタが死亡した場合に、ノンプレイヤキャラクタが復活アイテムを使用することにより、ゲームオーバーを回避することができることとしてもよい。
【0072】
また、ノンプレイヤキャラクタが割り込み行動を実行する条件として、特定のアイテムをノンプレイヤキャラクタに渡す代わりに、贋作アイテムを渡す(すなわち、当該ノンプレイヤキャラクタが贋作アイテムを所持する)ことを含むこととしてもよい。贋作アイテムは、見た目は対応する本物のアイテムと変わりがないが、少なくとも一部の機能が変更されているまたは失われているアイテムを意味する。贋作アイテムは、ゲーム内のショップ(以下、贋作屋と称する)において、手に入れることができる。贋作屋では、プレイヤキャラクタCPが過去に得られたアイテムおよび現在所持しているアイテムの中から所望のアイテムがコピーされ、贋作アイテムとして作製される(ゲーム内通貨を支払うことによりアイテムの数を増やすことができる)。ゲーム内に存在するアイテムのうちの一般的なアイテム(他のショップで買えたり、ダンジョンなどのゲーム空間内において比較的容易に手に入るアイテム)は、本物のアイテムが作製される(完全にコピーされる)が、特定のアイテム(貴重なアイテム)は、一部の機能が失われている贋作アイテムとなる。なお、贋作アイテムの作製には、別途所定の材料を要することとしてもよい。
【0073】
例えば、贋作アイテムは、ゲーム内通貨(すなわち、偽札などの偽通貨)であってもよい。この場合、例えば、プレイヤキャラクタCPがノンプレイヤキャラクタにゲーム内通貨を渡すことにより、当該ノンプレイヤキャラクタが買い物をするイベントにおいて、当該ゲーム内通貨が偽通貨であると、ノンプレイヤキャラクタはその買い物ができないこととなる。さらに、当該ノンプレイヤキャラクタは、偽通貨を使っているということで他のノンプレイヤキャラクタから敵視されるとともに、偽通貨を渡したプレイヤキャラクタCPを敵視する(好感度が低下する)ようになる。これにより、以後のノンプレイヤキャラクタの行動が変化する(割り込み行動が発生し得る)。
【0074】
このような贋作アイテムは、プレイヤキャラクタには贋作であることが表示されるが、ゲーム内のノンプレイヤキャラクタには真偽が判断できないように設定されていてもよい。つまり、ノンプレイヤキャラクタに贋作アイテムを渡しても、ノンプレイヤキャラクタは本物と区別がつかない。したがって、例えば依頼者または特定のノンプレイヤキャラクタに特定のアイテムを渡す(取って来る)ようなイベントにおいて、当該特定のアイテムを取得した上で贋作アイテムを作り、当該贋作アイテムを当該ノンプレイヤキャラクタに渡すことでも、そのようなイベントをクリアすることができる。ただし、その後に当該特定のアイテムをノンプレイヤキャラクタが使用するイベントにおいて、本物のアイテムを渡した場合とは異なる状態(当該ノンプレイヤキャラクタが割り込み行動を起こす状態)となり得る。
【0075】
例えば、前述の復活アイテムの贋作は、本物であればプレイヤキャラクタCPおよびすべてのノンプレイヤキャラクタを生き返らせることができるのに対し、プレイヤキャラクタCPおよびノンプレイヤキャラクタのうちの特定のキャラクタは生き返らせることができない(または特定のキャラクタしか生き返らせることができない)ように設定される。この場合、例えば、プレイヤキャラクタCPがノンプレイヤキャラクタC2に復活アイテムを渡すと、後のイベントでノンプレイヤキャラクタC1が死んだときにノンプレイヤキャラクタC2が当該復活アイテムを使用して当該ノンプレイヤキャラクタC1を生き返らせるというイベントが設定される。このような設定において、ノンプレヤキャラクタC2に贋作アイテムを渡すことにより、ノンプレイヤキャラクタC1が生き返らないという割り込み行動が生じる。これにより、ノンプレイヤキャラクタC2自身にも、ノンプレイヤキャラクタC1が生き返らなかったことを条件として当該ノンプレヤキャラクタC1が生き返った場合とは異なる割り込み行動を行わせることができる。
【0076】
また、例えば、魔導書のアイテムを探してくるように頼まれた依頼者のノンプレイヤキャラクタに、当該魔導書を渡す第1のイベント終了後、第2のイベントとして、その魔導書を使ってプレイヤキャラクタを助けてくれるイベントが発生するよう設定される。この場合、第1のイベントにおいて渡す魔導書を贋作アイテムにすると、第2のイベントで、ノンプレイヤキャラクタは魔導書を使用しても、その効果が弱くなり(または全くなくなり)、プレイヤキャラクタが苦戦する状況が生じる。同様に、宝箱の鍵となる指輪のアイテムを探してくるように頼まれた依頼書のノンプレイヤキャラクタに、当該指輪を渡す第1のイベント終了後、第2のイベントとして、その指輪を使って宝箱に入った宝物を褒美にもらえるイベントが発生するように設定されていてもよい。この場合、第1のイベントにおいて渡す指輪を贋作アイテムにすると、第2のイベントで、宝箱が開かず褒美がもらえないという状況が生じる。この際、指輪自体はプレイヤキャラクタCPの強力な装備品としても使えるように設定することにより、プレイヤは、今後の戦闘を有利に進めるために、第1のイベントをクリアしつつ、第2のイベントでもらえる褒美をあきらめて指輪を所持し続けるという選択も可能となる。
【0077】
また、例えば、ノンプレイヤキャラクタであるショップの店主に商品の材料となるアイテムを探してくるように頼まれ、当該アイテムを店主に渡すとその後そのショップで取り扱われる商品が増えるというイベントを設定することができる。この場合、店主に贋作アイテムを渡すと、イベント自体はクリアできるが、その後ショップで取り扱われる商品が増えなかったり、そのショップで取り扱われる商品がすべて贋作アイテムになるという状況が生じ得る。
【0078】
また、例えば、プレイヤキャラクタが、1つしかないアイテムを複数の依頼者(ノンプレイヤキャラクタ)に取って来るよう依頼されるイベントを設定することができる。通常は、何れかの依頼者にしか当該アイテムを渡せない(報酬をもらえない)が、贋作アイテムを作ることにより、双方の依頼者にアイテムを渡すことができ、双方から報酬をもらうことができる。
【0079】
以上の例では、贋作アイテムは、本物のアイテムに対して一部の機能が失われている場合を説明したが、贋作アイテムが本物のアイテムに対して異なる機能を有することとしてもよい。例えば、扉を開ける鍵において、本物のアイテムであれば、単にその扉が開くだけであるが、贋作アイテムであれば扉が開かないばかりか、所定のトラップ(例えば落とし穴など)が生じることとしてもよい。これにより、当該贋作アイテムを使用したノンプレイヤキャラクタに、本物アイテムを使用した場合とは異なる割り込み行動を行わせることができる。また、例えば、プレイヤキャラクタまたはノンプレイヤキャラクタが所持している所定のアイテムをノンプレイヤキャラクタが盗むとういう盗難イベントにおいて、当該アイテムが贋作アイテムである場合には、盗人であるノンプレイヤキャラクタは当該贋作アイテムを盗まないこととしてもよい。これは、例えば本物のアイテムを所持する際には当該盗難イベントのフラグをオンにする(盗人キャラクタに割り込み行動が発生する)が、贋作アイテムを所持する際には当該盗難イベントのフラグをオフにする(オンにしない)ことにより実現することができる。つまり、プレイヤキャラクタまたはノンプレイヤキャラクタが所持している所定のアイテムが贋作アイテムである場合には、当該盗難イベントのフラグが立たないため、盗人のキャラクタは割り込み行動が実行されず、基本行動または別の割り込み行動(例えばアイテムを持っていないことを条件とする割り込み行動)が実行される。
【0080】
なお、貴重なアイテムなどアイテムによっては、作製された贋作アイテムは、全く使えない(使用すると「壊れている」等の表示を行う)ものとしてもよい。
【0081】
また、以上の例においては、贋作アイテムは、ノンプレイヤキャラクタには真偽が判断できない場合について説明したが、本発明はこれに限られない。例えば、特定のノンプレイヤキャラクタは、本物と贋作との区別がつくように設定されてもよいし、すべてのまたは特定のノンプレイヤキャラクタにおいて、所定の確率で贋作アイテムが贋作であることを見抜くことができるように設定されてもよい。この場合、アイテムが本物である場合と、贋作である場合とで、ノンプレヤキャラクタがとる行動を異ならせる(割り込み行動を生じさせる)こととしてもよい。
【0082】
上述した説明では、一人のプレイヤがオフラインゲームを行う場合について例示したが、本発明は、複数のプレイヤが各自のプレイヤキャラクタを同一のゲーム空間100内に登場させ、これらを協力させて行動させるオンラインゲームにおいても適用することができる。
【0083】
また、本実施形態では据え置き型のゲーム装置について説明したが、携帯型のゲーム装置、携帯電話機、およびパーソナルコンピュータなどのコンピュータについても、本発明を好適に適用することができる。
【産業上の利用可能性】
【0084】
本発明は、ゲームプログラムおよびゲーム装置において、ゲーム空間内でのノンプレイヤキャラクタの行動内容を多様化して現実味を高めるために有用である。
【符号の説明】
【0085】
2 ゲーム装置
30a ゲームプログラム
30b ゲームデータ
41 ゲーム空間生成手段
42 キャラクタ動作制御手段
42a 時間別基本行動領域読出手段
42b 場所別動作読出手段
43 条件判定手段
44 ゲーム内時間管理手段
45 ゲーム進行制御手段
100 ゲーム空間
CP プレイヤキャラクタ
C1,C2,C3 ノンプレイヤキャラクタ
図1
図2
図3
図4
図5
図6
図7