説明

ゲームプログラムおよびゲーム装置

【課題】ゲーム世界においてプレイヤキャラクタがとった行動に応じて、ノンプレイヤキャラクタの行動に変化が生じ、あたかもプレイヤキャラクタがとった行動がゲーム世界に流行を引き起こしているかのような新鮮な感覚をプレイヤに感じさせること。
【解決手段】プレイヤキャラクタが予め定められたブームトリガ行動を行う度に、ノンプレイヤキャラクタ毎に保持されている行動回数カウンタにそれぞれ1が加算される。行動回数カウンタの値は、ノンプレイヤキャラクタ毎に保持されているブーム値に定期的に加算される。ブーム値が上限に達すると、そのノンプレイヤキャラクタは、プレイヤキャラクタが行ったブームトリガ行動に関連した行動を行うようになる。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、ゲームプログラムおよびゲーム装置に関し、特に例えば、遊戯者によって操作されるプレイヤキャラクタと、コンピュータによって制御される複数のノンプレイヤキャラクタとが登場するビデオゲームを提供するゲームプログラムおよびゲーム装置に関する。
【背景技術】
【0002】
従来、遊戯者の入力操作に基づいてノンプレイヤキャラクタ(NPC)のパラメータを変更するビデオゲームがある(例えば特許文献1)。
【特許文献1】特開2001−46734号公報
【0003】
特許文献1には、遊戯者の入力操作に応じてプレイヤキャラクタの性格を表すパラメータが変化し、さらにプレイヤキャラクタの性格を表すパラメータに応じて、ノンプレイヤキャラクタの性格を表すパラメータを変化させる技術が開示されている。これにより、ある人物の性格が、その人物と接している別の人物の性格に影響を与えるという実世界における事象を、ゲーム世界において模擬することができる。
【発明の開示】
【発明が解決しようとする課題】
【0004】
特許文献1では、プレイヤキャラクタの性格付けの変化に応じて同時に性格付けを変化させられる相手キャラクタは一つのみである。しかしながら、実世界の人間関係では常に1対1で影響を与え合うのみでない。影響を与える側が一人に対して同時に複数人に影響を与えることもあり得るし、その影響の度合いも相手により様々である。また、影響を与える人の近隣にいる人と、遠方にいる人では影響の与え方も異なってくる。
【0005】
それゆえに、本発明は、ゲーム世界においてプレイヤキャラクタがとった行動に応じて、ノンプレイヤキャラクタの行動に変化が生じ、あたかもプレイヤキャラクタがとった行動がゲーム世界に流行を引き起こしているかのような新鮮な感覚をプレイヤに感じさせることを目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するために、本発明は以下の構成を採用した。なお、括弧内の参照符号、図番号および補足説明は、本発明の理解を助けるために図面との対応関係を示したものであり、本発明の範囲を何ら限定するものではない。
【0007】
本発明の第1の局面は、プレイヤの入力操作によって入力装置(14、15)から出力される操作情報に応じて行動するプレイヤキャラクタ(PC1)と、自律的に行動する複数のノンプレイヤキャラクタ(NPC1、NPC2、NPC3)とを含むゲーム世界(図3)を表示装置(11、12)に表示するためのゲームプログラム(40)である。当該ゲームプログラムは、コンピュータ(21)を、前記入力装置から出力される操作情報に応じてプレイヤキャラクタの行動を制御するプレイヤキャラクタ制御手段(S20)、ノンプレイヤキャラクタを自律的に行動させる際の行動に影響を与える複数種類の行動傾向ごとに対応付けられたプレイヤキャラクタの各行動(ブームトリガ行動)のうちのいずれかが行われた際に、各ノンプレイヤキャラクタの行動傾向ごとに設けられた行動回数カウンタ(43)のうちプレイヤキャラクタの行動に対応する行動傾向に関するカウンタをそれぞれ更新する行動回数カウンタ更新手段(S98、S100)、前記プレイヤキャラクタの前記行動に依存しない所定のタイミングで、ノンプレイヤキャラクタ毎に前記行動傾向を数値化した行動傾向値(ブーム値44)を、前記行動回数カウンタの値に応じてそれぞれ更新する行動傾向値更新手段(S56)、前記行動傾向値に対する行動傾向(現在ブーム46)に基づいて各ノンプレイヤキャラクタの動作を制御するノンプレイヤキャラクタ動作制御手段(S78)、および前記プレイヤキャラクタおよび前記ノンプレイヤキャラクタを含むゲーム世界を前記表示装置に表示させる表示制御手段として機能させるためのゲームプログラムである。
【0008】
なお変形例として、前記行動回数カウンタ更新手段によっていずれかの行動回数カウンタが更新される際に、ノンプレイヤキャラクタがゲーム世界に存在しているか否かによって異なる値で各ノンプレイヤキャラクタの行動回数カウンタを更新してもよい。例えば、ノンプレイヤキャラクタがゲーム世界に存在している場合には1が、存在していない場合には0が加算されるようにしてもよい。
【0009】
別の変形例として、前記行動回数カウンタ更新手段によっていずれかの行動回数カウンタが更新される際に、ゲーム世界におけるノンプレイヤキャラクタの位置に応じて異なる値で各ノンプレイヤキャラクタの行動回数カウンタを更新してもよい。
【0010】
さらに別の変形例として、前記行動回数カウンタ更新手段によっていずれかの行動回数カウンタが更新される際に、ノンプレイヤキャラクタが前記表示装置の画面に表示されているか否かによって異なる値で各ノンプレイヤキャラクタの行動回数カウンタを更新してもよい。
【0011】
さらに別の変形例として、前記行動回数カウンタ更新手段によっていずれかの行動回数カウンタが更新される際に、プレイヤキャラクタと各ノンプレイヤキャラクタとの位置関係に応じて異なる値で各ノンプレイヤキャラクタの行動回数カウンタを更新してもよい。
【0012】
さらに別の変形例として、前記行動回数カウンタ更新手段は、前記行動回数カウンタが予め定められた上限に達しているときには当該行動回数カウンタを更新しないようにしてもよい。
【0013】
さらに別の変形例として、前記行動回数カウンタ更新手段は、前記行動傾向値更新手段によってノンプレイヤキャラクタの行動傾向値を変化させてから一定の期間が経過するまでは、当該ノンプレイヤキャラクタの行動回数カウンタを更新しないようにしてもよい。
【0014】
さらに別の変形例として、前記行動回数カウンタ更新手段による前記行動回数カウンタの更新処理は、前記行動傾向ごとに対応付けられたプレイヤキャラクタの行動のいずれかが行われる都度行われ、前記行動傾向値更新手段による前記行動傾向値の更新処理は、前記行動傾向ごとに対応付けられたプレイヤキャラクタの行動のいずれかが行われる都度ではない予め定められたタイミングで行われてもよい。
【0015】
さらに別の変形例として、前記行動傾向値更新手段による前記行動傾向値の更新処理は、プレイヤがゲームを開始または再開したときに行われてもよい。
【0016】
さらに別の変形例として、前記行動傾向値更新手段による前記行動傾向値の更新処理は、毎日一定時刻に達したときに行われてもよい。
【0017】
さらに別の変形例として、前記行動傾向値更新手段による前記行動傾向値の更新処理は、表示装置に表示されているゲーム画像においてシーンが変化したときに行われてもよい。
【0018】
さらに別の変形例として、前記行動傾向値更新手段は、前記行動回数カウンタの値に、予め前記行動傾向毎に個別に定められた補正係数を乗算した結果の値を用いて、前記行動傾向値をそれぞれ更新してもよい。
【0019】
さらに別の変形例として、前記行動傾向値更新手段は、前記行動回数カウンタの値に、予め前記ノンプレイヤキャラクタ毎に個別に定められた補正係数を乗算した結果の値を用いて、前記行動傾向値をそれぞれ更新してもよい。
【0020】
さらに別の変形例として、前記行動傾向値更新手段によって各ノンプレイヤキャラクタの前記行動傾向値が更新された後、予め定められた上限に達している行動傾向値が存在するときに、当該上限に達した行動傾向値に基づいてノンプレイヤキャラクタの行動傾向を変化させ、さらに当該上限に達した行動傾向値をリセットしてもよい。
【0021】
さらに別の変形例として、前記上限に達した行動傾向値をリセットするときに、残りの行動傾向値を値が減じるようにそれぞれ更新してもよい。
【0022】
本発明の第2の局面は、プレイヤの入力操作によって入力装置(14、15)から出力される操作情報に応じて行動するプレイヤキャラクタ(PC1)と、自律的に行動する複数のノンプレイヤキャラクタ(NPC1、NPC2、NPC3)とを含むゲーム世界(図3)を表示装置(11、12)に表示するためのゲーム装置(10)である。当該ゲーム装置は、前記入力装置から出力される操作情報に応じてプレイヤキャラクタの行動を制御するプレイヤキャラクタ制御手段(21、S20)、ノンプレイヤキャラクタを自律的に行動させる際の行動に影響を与える複数種類の行動傾向ごとに対応付けられたプレイヤキャラクタの各行動(ブームトリガ行動)のうちのいずれかが行われた際に、各ノンプレイヤキャラクタの行動傾向ごとに設けられた行動回数カウンタ(21、43)のうちプレイヤキャラクタの行動に対応する行動傾向に関するカウンタをそれぞれ更新する行動回数カウンタ更新手段(21、S98、S100)、前記プレイヤキャラクタの前記行動に依存しない所定のタイミングで、ノンプレイヤキャラクタ毎に前記行動傾向を数値化した行動傾向値(ブーム値44)を、前記行動回数カウンタの値に応じてそれぞれ更新する行動傾向値更新手段(21、S56)、前記行動傾向値に対する行動傾向(現在ブーム46)に基づいて各ノンプレイヤキャラクタの動作を制御するノンプレイヤキャラクタ動作制御手段(21、S78)、および前記プレイヤキャラクタおよび前記ノンプレイヤキャラクタを含むゲーム世界を前記表示装置に表示させる表示制御手段を備えている。
【発明の効果】
【0023】
本発明によれば、ゲーム世界においてプレイヤキャラクタがとった行動に応じて、ノンプレイヤキャラクタの行動に変化が生じ、あたかもプレイヤキャラクタがとった行動がゲーム世界に流行を引き起こしているかのような新鮮な感覚をプレイヤに感じさせることができる。さらに、行動傾向値の更新をリアルタイムに行わないため、プレイヤキャラクタの行動が即座にノンプレイヤキャラクタの行動に影響を及ぼすことによる違和感をプレイヤに感じてしまうことを回避できる。また、本発明の好ましい変形例によれば、プレイヤキャラクタとノンプレイヤキャラクタとの位置関係や、ノンプレイヤキャラクタの個性に応じて、プレイヤキャラクタがとった行動がノンプレイヤキャラクタに与える影響の度合いが変化するので、影響の及ぼし方がより実世界の人間関係に近くなって現実味が増し、ノンプレイヤキャラクタに対する親近感をプレイヤに与えることができる。
【発明を実施するための最良の形態】
【0024】
以下、本発明の一実施形態に係るゲーム装置の構成および動作を説明する。
【0025】
図1は、本発明の一実施形態に係るゲーム装置の外観図である。図1において、ゲーム装置10は、第1のLCD(Liquid Crystal Display:液晶表示装置)11および第2のLCD12を含む。ハウジング13は上側ハウジング13aと下側ハウジング13bとによって構成されており、第1のLCD11は上側ハウジング13aに収納され、第2のLCD12は下側ハウジング13bに収納される。第1のLCD11および第2のLCD12の解像度はいずれも256dot×192dotである。なお、本実施形態では表示装置としてLCDを用いているが、例えばEL(Electro Luminescence:電界発光)を利用した表示装置など、他の任意の表示装置を利用することができる。また任意の解像度のものを利用することができる。
【0026】
上側ハウジング13aには、後述する1対のスピーカ(図2の30a、30b)からの音を外部に放出するための音抜き孔18a、18bが形成されている。
【0027】
下側ハウジング13bには、入力装置として、十字スイッチ14a、スタートスイッチ14b、セレクトスイッチ14c、Aボタン14d、Bボタン14e、Xボタン14f、Yボタン14g、Lボタン14LおよびRボタン14Rが設けられている。また、さらなる入力装置として、第2のLCD12の画面上にタッチパネル15が装着されている。また、下側ハウジング13bには、電源スイッチ19や、メモリカード17やスティック16を収納するための挿入口も設けられている。
【0028】
タッチパネル15としては、例えば抵抗膜方式や光学式(赤外線方式)や静電容量結合式など、任意の方式のものを利用することができる。タッチパネル15は、その表面をスティック16で触れると、その接触位置に対応する座標データを出力する機能を有している。なお、以下ではプレイヤがタッチパネル15をスティック16で操作するものとして説明を行うが、スティック16の代わりにペン(スタイラスペン)や指でタッチパネル15を操作することももちろん可能である。本実施形態では、タッチパネル15として、第2のLCD12の解像度と同じく256dot×192dotの解像度(検出精度)のものを利用する。ただし、必ずしもタッチパネル15の解像度と第2のLCD12の解像度が一致している必要はない。
【0029】
メモリカード17はゲームプログラムを記録した記録媒体であり、下部ハウジング13bに設けられた挿入口に着脱自在に装着される。
【0030】
次に、図2を参照してゲーム装置10の内部構成を説明する。
【0031】
図2において、ハウジング13に収納される電子回路基板20には、CPUコア21が実装される。CPUコア21には、バス22を介して、コネクタ23が接続されるとともに、入出力インターフェース回路(図面ではI/F回路と記す)25、第1GPU(Graphics Processing Unit)26、第2GPU27、RAM24、LCDコントローラ31、ワイヤレス通信部33、およびリアルタイムクロック34が接続される。コネクタ23には、メモリカード17が着脱自在に接続される。メモリカード17は、ゲームプログラムを記憶するROM17aと、バックアップデータを書き換え可能に記憶するRAM17bを搭載する。メモリカード17のROM17aに記憶されたゲームプログラムはRAM24にロードされ、RAM24にロードされたゲームプログラムがCPUコア21によって実行される。RAM24には、ゲームプログラムの他にも、CPUコア21がゲームプログラムを実行して得られる一時的なデータや、ゲーム画像を生成するためのデータが記憶される。I/F回路25には、タッチパネル15、右スピーカ30a、左スピーカ30bおよび図1の十字スイッチ14aやAボタン14d等から成る操作スイッチ部14が接続される。右スピーカ30aと左スピーカ30bは、音抜き孔18a、18bの内側にそれぞれ配置される。
【0032】
第1GPU26には、第1VRAM(Video RAM)28が接続され、第2GPU27には、第2VRAM29が接続される。第1GPU26は、CPUコア21からの指示に応じて、RAM24に記憶されているゲーム画像を生成するためのデータに基づいて第1のゲーム画像を生成し、第1VRAM28に描画する。第2GPU27は、同様にCPUコア21からの指示に応じて第2のゲーム画像を生成し、第2VRAM29に描画する。第1VRAM28および第2VRAM29はLCDコントローラ31に接続されている。
【0033】
LCDコントローラ31はレジスタ32を含む。レジスタ32はCPUコア21からの指示に応じて0または1の値を記憶する。LCDコントローラ31は、レジスタ32の値が0の場合は、第1VRAM28に描画された第1のゲーム画像を第1のLCD11に出力し、第2VRAM29に描画された第2のゲーム画像を第2のLCD12に出力する。また、レジスタ32の値が1の場合は、第1VRAM28に描画された第1のゲーム画像を第2のLCD12に出力し、第2VRAM29に描画された第2のゲーム画像を第1のLCD11に出力する。
【0034】
ワイヤレス通信部33は、他のゲーム装置のワイヤレス通信部33との間で、ゲーム処理に利用されるデータやその他のデータをやりとりする機能を有している。リアルタイムクロック34は、現在時刻を示す信号を出力する。
【0035】
なお、上記のようなゲーム装置10の構成は単なる一例に過ぎず、本発明は、任意のコンピュータシステムに適用することができる。また、本発明のゲームプログラムは、メモリカード17などの外部記憶媒体を通じてコンピュータシステムに供給されるだけでなく、有線または無線の通信回線を通じてコンピュータシステムに供給されてもよいし、さらにはコンピュータシステム内部の不揮発性記憶装置に予め記録されていてもよい。
【0036】
以下、ゲーム装置10によって実行されるゲームの概要を説明する。
【0037】
図3は、ゲーム世界の様子を示している。ゲーム世界には木や池や海や家が存在し、このゲーム世界では複数のキャラクタが生活をしている。
【0038】
図4は、第2のLCD12の画面に表示されるゲーム画像の一例である。第2のLCD12の画面には、図3で示したゲーム世界の一部が表示される。図4の例では、ゲーム世界で生活している複数のキャラクタのうち、プレイヤによって操作されるプレイヤキャラクタPC1と、コンピュータによって操作される2体のノンプレイヤキャラクタNPC1,NPC2が画面に表示されている。
【0039】
プレイヤは、操作スイッチ部14を操作することによって、プレイヤキャラクタに移動指示や行動指示を与えることができる。第2のLCD12に表示されるゲーム世界の範囲はゲーム世界におけるプレイヤキャラクタの位置に依存し、基本的にプレイヤキャラクタは常に画面に表示される。
【0040】
プレイヤの指示に基づいてプレイヤキャラクタが行うことのできる行動の種類は様々である。例えば、魚を釣ったり、虫を捕まえたり、化石を発掘したり、木を揺すったり、草を抜いたりすることができる。
【0041】
上記のようなプレイヤキャラクタの行動は、大きく分けて、ブームトリガ行動と無趣味行動の2つの行動に分類される。
【0042】
ブームトリガ行動とは、プレイヤキャラクタがその行動をとり続けることによって、ノンプレイヤキャラクタもその行動に関連した行動を行うようになるものである。ブームトリガ行動の具体例としては、魚を釣ること、虫を捕まえること、化石を発掘すること、服を入手すること、家具を入手すること、花を植えること、海で貝殻を拾うこと、の7つの行動が挙げられる。例えば、図5に示すように、プレイヤキャラクタPC1が頻繁に魚釣りをしていると、その行動がゲーム世界のノンプレイヤキャラクタに影響を与え、しばらくすると、図6に示すように、ノンプレイヤキャラクタが魚に興味を持つようになり、魚に関連した行動をとるようになる。ノンプレイヤキャラクタのこのような状態のことを「サカナブーム」と称す。魚に関連した行動の例としては、魚を釣ったり、プレイヤキャラクタに魚をねだったり、自分の家の中で魚を飼ったりなどが挙げられる。他の例として、「花ブーム」の状態になったノンプレイヤキャラクタがとる行動の例としては、自分の家の周りに花を植えたり、プレイヤキャラクタに花をねだったりなどが挙げられる。このように、ブームトリガ行動とは、ゲーム世界において流行を引き起こす要因となるプレイヤキャラクタの行動である。
【0043】
無趣味行動とは、ブームトリガ行動以外のプレイヤキャラクタの行動である。無趣味行動の具体例としては、木を揺すること、草を抜くこと、走り回ること、ノンプレイヤキャラクタと会話をすること、などが挙げられる。また、特に何もせずにじっとしていることも無趣味行動に分類される。プレイヤキャラクタが無趣味行動を頻繁に続けていると、しばらくすると、ノンプレイヤキャラクタは何にも興味を示さないようになる。ノンプレイヤキャラクタのこのような状態のことを「無趣味ブーム」と称す。
【0044】
このように、プレイヤキャラクタの行動がノンプレイヤキャラクタの行動に影響を与えることで、ノンプレイヤキャラクタに対する親近感をプレイヤに与えることができる。
【0045】
以下、上記のようなゲームを実現するためのゲーム装置10の詳細な動作を説明する。
【0046】
図7は、RAM24のメモリマップの一例である。RAM24には、ゲームプログラム40、画像データ41、PCデータ42、NPCデータ、ブーム補正係数テーブル49、NPC補正係数テーブル50、および無趣味行動時間カウンタ51が格納される。
【0047】
ゲームプログラム40は、ゲームを開始するときにメモリカード17のROM17aからRAM24にロードされ、CPUコア21によって実行される。
【0048】
画像データ41は、ゲーム世界に含まれる地面や木や家や池やプレイヤキャラクタやノンプレイヤキャラクタなどの画像データである。
【0049】
PCデータ42は、プレイヤキャラクタに関するデータであって、ゲーム世界におけるプレイヤキャラクタの位置を示す座標や、プレイヤキャラクタの保持アイテムなどのデータである。
【0050】
NPCデータは、ノンプレイヤキャラクタに関するデータであって、ノンプレイヤキャラクタ毎に、行動回数カウンタ43、ブーム値44、ブーム初期値45、現在ブーム46、ブーム変化日時47、およびPCに対する親密度48の情報を含んでいる。
【0051】
行動回数カウンタ43は、図8に示すように、プレイヤキャラクタの行動回数を8つのブーム(サカナ・ムシ・化石・服・家具・花・海・無趣味)毎に個別にカウントするものである。例えば、プレイヤキャラクタが魚を釣った場合には、その時点でゲーム世界に存在している全てのノンプレイヤキャラクタのサカナブームの行動回数カウンタにそれぞれ1が加算される。同様に、プレイヤキャラクタが花を植えた場合には、その時点でゲーム世界に存在している全てのノンプレイヤキャラクタのサカナブームの行動回数カウンタにそれぞれ1が加算される。なお、行動回数カウンタには上限(例えば10)が設けられている。よって、例えばあるノンプレイヤキャラクタのサカナブームの行動回数カウンタ43の値がすでに10に達している場合には、プレイヤキャラクタが魚を釣ったとしても、その値は10のままである。
【0052】
ブーム値44は、そのノンプレイヤキャラクタが次にどのブームに変化するかを決定するために利用される値であって、図8に示すように、ブーム毎に個別に保持される値である。各ブームのブーム値には、所定のタイミングで、対応する行動回数カウンタの値に基づく加算値が順次加算される。ブーム値には上限(例えば255)が設けられており、あるノンプレイヤキャラクタの各ブーム値が行動回数カウンタの値に基づいて更新された結果、例えばサカナブームのブーム値が255に達した場合には、そのノンプレイヤキャラクタの状態が「サカナブーム」へと変化する。同様に、あるノンプレイヤキャラクタの各ブーム値が行動回数カウンタの値に基づいて更新された結果、例えば無趣味ブームのブーム値が255に達した場合には、そのノンプレイヤキャラクタの状態が「無趣味ブーム」へと変化する。
【0053】
ブーム初期値45は、各ノンプレイヤキャラクタが初めてゲーム世界に現れたときの各ブームのブーム値の初期値を示す情報であって、予め定められた固定の値である。なお、ゲーム世界には初めから全てのノンプレイヤキャラクタが存在しているのではなく、大半のノンプレイヤキャラクタは、ゲームが進行している途中で、図3のゲーム世界(プレイヤキャラクタが住む村)に引っ越してくる。したがって、ノンプレイヤキャラクタが最初に引っ越してきたときのそのノンプレイヤキャラクタのブーム値を示すのがブーム初期値45である。
【0054】
現在ブーム46は、そのノンプレイヤキャラクタが現在何ブームかを示す情報である。
【0055】
ブーム変化日時47は、そのノンプレイヤキャラクタのブームが変化した日時を示す情報である。
【0056】
PCに対する親密度48は、そのノンプレイヤキャラクタのプレイヤキャラクタに対する親密度を示す情報である。親密度は、プレイヤキャラクタがノンプレイヤキャラクタに話しかけたり、プレイヤキャラクタがノンプレイヤキャラクタの望みを叶えてあげたりすることによって高まる。
【0057】
ブーム補正係数テーブル49は、行動回数カウンタ43の値に基づいてブーム値44を更新するときに利用される補正係数を保持するテーブルであって、具体的には、図9のように、ブーム毎にブーム補正係数を示したテーブルである。ブーム補正係数は予め定められた固定の値である。
【0058】
NPC補正係数テーブル50は、行動回数カウンタ43の値に基づいてブーム値44を更新するときに利用される補正係数を保持するテーブルであって、具体的には、図10のように、ノンプレイヤキャラクタ毎かつブーム毎にNPC補正係数を示したテーブルである。NPC補正係数は予め定められた固定の値である。
【0059】
無趣味行動時間カウンタ51は、プレイヤキャラクタがいずれのブームトリガ行動も行っていない間の時間をカウントするためのものである。
【0060】
次に、図11〜図18のフローチャートを参照して、ゲームプログラム40に基づくCPUコア21の処理の流れを説明する。
【0061】
図11はメイン処理の流れを示すフローチャートである。図11において、メイン処理が開始するとCPUコア21は、ステップS10で初期処理を行う。
【0062】
図12は、初期処理の詳細を示すフローチャートである。図12において、CPUコア21はステップS40で、通信モード設定を行う。通信モードとは、2台以上のゲーム装置10を相互に接続してゲームデータを通信することによって、複数のプレイヤが同一のゲーム世界で一緒にゲームをプレイすることができるモードである。ステップS40において動作モードを通信モードに設定してゲームを開始すると、ゲームの途中で他のプレイヤが操作するキャラクタ(以下、通信相手キャラクタと称す)が任意のタイミングでゲームに参加することが可能となる。逆に、ステップS40において動作モードを非通信モードに設定してゲームを開始すると、ゲームの途中で他のプレイヤが操作するキャラクタがゲームに参加することは不可能となる。
【0063】
ステップS42では、メモリカード17のRAM17bに保存データが存在するかどうかを判断し、存在する場合には処理はステップS44に進み、存在しない場合には処理はステップS46に進む。保存データとは、後述する図11のステップS36でメモリカード17のRAM17bに保存されるゲームデータを指す。
【0064】
ステップS44では、メモリカード17のRAM17bに保存されている、NPCデータを含むゲームデータをRAM24に読み込む。
【0065】
ステップS46では、無趣味行動時間カウンタ51を0にリセットする。
【0066】
ステップS48では、ブーム値更新処理を行う。ブーム値更新処理では、全てのノンプレイヤキャラクタについて、行動回数カウンタの値に基づくブーム値の更新が行われる。
【0067】
図13は、ブーム値更新処理の詳細を示すフローチャートである。図13において、CPUコア21はステップS50で、ブーム値をまだ更新していないノンプレイヤキャラクタが存在するかどうかを判断し、ブーム値を未更新のノンプレイヤキャラクタが存在する場合には処理はステップS52に進み、全てのノンプレイヤキャラクタのブーム値が更新済みの場合にはブーム値更新処理を終了する。
【0068】
ステップS52では、ブーム値を未更新のノンプレイヤキャラクタのNPCデータを、処理対象のノンプレイヤキャラクタのNPCデータとして、RAM24から1件読み出す。
【0069】
ステップS54では、ステップS52で読み出したNPCデータの各ブームの行動回数カウンタに、対応するブーム補正係数およびNPC補正係数を乗算して加算値を算出する。例えば、ノンプレイヤキャラクタNPC2のサカナブーム用の加算値を算出する場合には、ノンプレイヤキャラクタNPC2のサカナブームの行動回数カウンタの値(図8の例では6)に対して、サカナブームのブーム補正係数(図9の例では3)と、ノンプレイヤキャラクタNPC2のサカナブームのNPC補正係数(図10の例では1.1)とを乗算することによって、加算値(この場合は6×3×1.1=19.8)を得る。同様に、ノンプレイヤキャラクタNPC3の家具ブーム用の加算値を算出する場合には、ノンプレイヤキャラクタNPC3の家具ブームの行動回数カウンタの値(図8の例では1)に対して、家具ブームのブーム補正係数(図9の例では3)と、ノンプレイヤキャラクタNPC3の家具ブームのNPC補正係数(図10の例では3)とを乗算することによって、加算値(この場合は1×3×3=9)を得る。
【0070】
ステップS56では、ステップS52で読み出したNPCデータの各ブームのブーム値に、ステップS54で算出した対応する加算値をそれぞれ加算し、加算結果をRAM24に上書きする。例えば、ノンプレイヤキャラクタNPC2のサカナブームのブーム値(図8の例では251)には、上記の加算値「19.8」が加算される。ただし、加算結果がブーム値の上限である255を超えるため、更新後のブーム値は255となる。同様に、ノンプレイヤキャラクタNPC3の家具ブームのブーム値(図8の例では126)には、上記の加算値「9」が加算され、更新後のブーム値は135となる。
【0071】
ステップS58では、ブーム変化処理を行う。ブーム変化処理は、ステップS56におけるブーム値の更新結果に基づいて、必要に応じてノンプレイヤキャラクタのブームを変化させるための処理である。
【0072】
図14は、ブーム変化処理の詳細を示すフローチャートである。図14において、CPUコア21はステップS62で、ステップS56におけるブーム値の更新の結果、上限に達したブーム値が存在するかどうかを判断し、上限に達したブーム値が存在する場合には処理はステップS63に進み、存在しない場合にはブーム変化処理を終了する。
【0073】
ステップS63では、処理対象となっているノンプレイヤキャラクタの現在ブーム46が、上限に達したブーム値に対応するブームとなるように、現在ブーム46を更新する。例えば、ノンプレイヤキャラクタNPC2のサカナブームのブーム値が255に達していた場合には、ノンプレイヤキャラクタNPC2の現在ブーム46をサカナブームに更新する。
【0074】
ステップS64では、上限に達していたブーム値を0に更新する。
【0075】
ステップS66では、処理対象となっているノンプレイヤキャラクタのブーム値のうち、ステップSS64で0に更新したブーム値を除いた残りのブーム値を、その時点の半分の値になるようにそれぞれ更新する。
【0076】
ステップS68では、処理対象となっているノンプレイヤキャラクタのブーム変化日時47に、リアルタイムクロック34が示す時刻を上書きする。
【0077】
こうしてブーム変化処理が終了すると、図13のステップS60に処理が進む。
【0078】
ステップS60では、処理対象となっているノンプレイヤキャラクタの行動回数カウンタ43を全て0にリセットする。
【0079】
全てのノンプレイヤキャラクタについてブーム値更新処理が完了すると、ブーム更新処理は終了する。
【0080】
図12のステップS48のブーム値更新処理が終了すると、初期処理が終了し、図11のステップS12に処理は進む。
【0081】
ステップS12では、予め定められた、ノンプレイヤキャラクタのブーム値を一斉に定期的に更新すべきブーム値更新時刻(例えば午前6時)になったかどうかをリアルタイムクロック34が示す時刻を参照して判断し、ブーム値更新時刻になった場合には処理はステップS16に進み、ブーム値更新時刻になっていない場合には処理はステップS14に進む。
【0082】
ステップS14では、プレイヤキャラクタが家に出入りするなどによって、シーンチェンジが発生したかどうかを判断し、シーンチェンジが発生した場合には処理はステップS16に進み、シーンチェンジが発生していない場合には処理はステップS18に進む。
【0083】
ステップS16では、ブーム値更新処理を行う。このブーム値更新処理の詳細は前述のとおりである。
【0084】
以上の説明から明らかなように、ブーム値更新処理は、基本的には、ゲームを開始した時(保存データを用いてゲームを再開した時を含む)、ブーム値更新時刻になった時、およびシーンチェンジ時に行われる。ブーム値の更新をリアルタイムに行わない理由は、例えばプレイヤキャラクタが短時間に多数の魚を釣った直後からノンプレイヤキャラクタがサカナブームになってしまうと、プレイヤキャラクタの行動がゲーム世界で流行を引き起こしたと実感するどころか、むしろプレイヤは違和感を感じてしまうことになるからである。また、行動回数カウンタに上限(この上限はブーム値の上限よりもはるかに低い値である)を設けているのも同様の理由からであって、プレイヤキャラクタの行動が即座にノンプレイヤキャラクタの行動に影響を与えることを防止し、プレイヤに不自然さを感じさせないようにするためである。
【0085】
ステップS18では、操作スイッチ部14やタッチパネル15を通じてプレイヤから動作指示が入力されたかどうかを判断し、動作指示が入力された場合には処理はステップS20に進み、動作指示が入力されていない場合には処理はステップS22に進む。
【0086】
ステップS20では、プレイヤからの動作指示に応じてプレイヤキャラクタの動作を制御する。
【0087】
ステップS22では、NPC動作制御処理を行う。NPC動作制御処理は、ノンプレイヤキャラクタの動作を制御するための処理である。
【0088】
図15は、NPC動作制御処理の詳細を示すフローチャートである。図15において、CPUコア21はステップS70で、動作制御を未処理のノンプレイヤキャラクタが存在するかどうかを判断し、未処理のノンプレイヤキャラクタが存在する場合には処理はステップS72に進み、存在しない場合にはNPC動作制御処理を終了する。
【0089】
ステップS72では、動作制御を未更新のノンプレイヤキャラクタのNPCデータを、処理対象のノンプレイヤキャラクタのNPCデータとして、RAM24から1件読み出す。
【0090】
ステップS74では、ステップS72で読み出したNPCデータのブーム変化日時47と、リアルタイムクロック34が示す現在日時とを比較し、ブーム変化日時から1日以上経過しているかどうかを判断する。そして、ブーム変化日時から1日以上経過している場合には処理はステップS78に進み、まだ1日が経過していない場合には処理はステップS76に進む。
【0091】
ステップS76では、処理対象となっているノンプレイヤキャラクタの動作を、そのノンプレイヤキャラクタの現在ブーム46とは無関係に制御する。この場合の制御の一例として、「何か面白いことはないかなぁ・・・」や「次は何に熱中しようかなぁ・・・」といった独り言をノンプレイヤキャラクタにしゃべらせることが挙げられる。
【0092】
ステップS78では、処理対象となっているノンプレイヤキャラクタの動作を、そのノンプレイヤキャラクタの現在ブーム46に関連した動作を行うように制御する。例えば、現在ブームが「サカナブーム」である場合には、魚を釣ったり、プレイヤキャラクタに魚をねだったり、自分の家の中で魚を飼ったりするように、ノンプレイヤキャラクタの動作を制御する。また他の例として、現在ブームが「花ブーム」である場合には、自分の家の周りに花を植えたり、プレイヤキャラクタに花をねだったりするように、ノンプレイヤキャラクタの動作を制御する。
【0093】
上記のように、ブームが変化してから1日が経過するまではノンプレイヤキャラクタに現在ブームに関連した動作をとらせないようにしているのは、ノンプレイヤキャラクタの興味の対象が突然一変してしまうことによってプレイヤに違和感を与えてしまうのを避けるためである。
【0094】
全てのノンプレイヤキャラクタについて動作制御処理が完了すると、NPC動作制御処理は終了し、図11のステップS24に処理は進む。
【0095】
ステップS24では、行動回数カウンタ更新処理を行う。行動回数カウンタ更新処理は、プレイヤキャラクタの行動に応じてリアルタイムに各ノンプレイヤキャラクタの行動回数カウンタ43を更新する処理である。
【0096】
図16は、行動回数カウンタ更新処理の詳細を示すフローチャートである。図16において、CPUコア21はステップS80で、プレイヤキャラクタがブームトリガ行動を行ったかどうかを判断し、ブームトリガ行動を行った場合には処理はステップS88に進み、ブームトリガ行動を行っていない場合には処理はステップS82に進む。
【0097】
ステップS82では、無趣味行動時間カウンタ51に1を加算する。
【0098】
ステップS83では、無趣味行動時間カウンタ51が所定値(例えば3600)に達したかどうかを判断し、所定値に達した場合には処理はステップS86に進み、所定値に達していない場合には行動回数カウンタ更新処理を終了する。
【0099】
ステップS86では、無趣味行動時間カウンタ51を0にリセットする。
【0100】
ステップS88では、行動回数カウンタの更新をまだ行っていないノンプレイヤキャラクタが存在するかどうかを判断し、存在する場合には処理はステップS90に進み、存在しない場合には行動回数カウンタ更新処理を終了する。
【0101】
ステップS90では、行動回数カウンタの更新をまだ行っていないノンプレイヤキャラクタのNPCデータを、処理対象のノンプレイヤキャラクタのNPCデータとして、RAM24から1件読み出す。
【0102】
ステップS92では、ステップS90で読み出したNPCデータのブーム変化日時47と、リアルタイムクロック34が示す現在日時とを比較し、ブーム変化日時から1週間以上経過しているかどうかを判断する。そして、ブーム変化日時から1週間以上経過している場合には処理はステップS94に進み、まだ1週間が経過していない場合には行動回数カウンタ更新処理を終了する。
【0103】
このように、ブーム変化日時から1週間以上経過していない間は行動回数カウンタの更新を行わないようにしているのは、ノンプレイヤキャラクタのブームが変化した後、たった数日しか経たないうちにさらに別のブームに変化してしまうことを避けるためである。
【0104】
ステップS94では、更新対象となる行動回数カウンタ(すなわち処理対象となっているノンプレイヤキャラクタの行動回数カウンタのうち、プレイヤキャラクタが行ったブームトリガ行動または無趣味行動に対応するブームの行動回数カウンタ)の値が上限に達しているかどうかを判断し、上限に達している場合には処理はステップS88に戻り、上限に達していない場合には処理はステップS96に進む。
【0105】
ステップS96では、処理対象となっているノンプレイヤキャラクタが第2のLCD12の画面に表示されているかどうかを判断し、表示されている場合には処理はステップS98に進み、表示されていない場合には処理はステップS100に進む。なお、ノンプレイヤキャラクタが第2のLCD12の画面に表示されているかどうかは、例えば、ゲーム世界におけるノンプレイヤキャラクタの位置を示す座標に基づいて判断することができる。
【0106】
ステップS98では、更新対象となる行動回数カウンタに2を加算する。
【0107】
ステップS100では、更新対象となる行動回数カウンタに1を加算する。
【0108】
このように、処理対象となっているノンプレイヤキャラクタが第2のLCD12の画面に表示されている否かによって行動回数カウンタに加算する値を変えている理由は、第2のLCD12の画面に表示されているノンプレイヤキャラクタ(すなわち、プレイヤキャラクタに近い場所に居るノンプレイヤキャラクタ)については、第2のLCD12の画面に表示されていないノンプレイヤキャラクタ(すなわち、プレイヤキャラクタから離れた場所に居るノンプレイヤキャラクタ)と比べて、プレイヤキャラクタが行った行動の影響を受けやすくするためである。
【0109】
全てのノンプレイヤキャラクタについて行動回数カウンタの更新処理が完了すると、行動回数カウンタ更新処理は終了し、図11のステップS26に処理は進む。
【0110】
ステップS26では、動作モードが通信モードに設定されているかどうかを判断し、通信モードに設定されている場合には処理はステップS28に進み、通信モードに設定されていない場合には処理はステップS30に進む。
【0111】
ステップS28では、通信モード処理を行う。
【0112】
図17は、通信モード処理の詳細を示すフローチャートである。図17において、CPUコア21はステップS102で、ワイヤレス通信部33を通じて通信相手からデータを受信したかどうかを判断し、データを受信した場合には処理はステップS104に進み、データを受信していない場合には通信モード処理を終了する。
【0113】
ステップS104では、通信相手から受信したデータに基づいて、ゲーム世界における通信相手のプレイヤキャラクタ(以下、単に通信相手キャラクタと称す)の動作を制御する。
【0114】
ステップS106では、通信相手キャラクタがブームトリガ行動を行ったかどうかを判断し、ブームトリガ行動を行った場合には処理はステップS114に進み、ブームトリガ行動を行っていない場合には処理はステップS108に進む。
【0115】
ステップS108では、通信相手キャラクタ用の無趣味行動時間カウンタ(図7の無趣味行動時間カウンタ51とは別にRAM24に用意される)に1を加算する。
【0116】
ステップS110では、通信相手キャラクタ用の無趣味行動時間カウンタが所定値(例えば3600)に達したかどうかを判断し、所定値に達した場合には処理はステップS112に進み、所定値に達していない場合には通信モード処理を終了する。
【0117】
ステップS112では、通信相手キャラクタ用の無趣味行動時間カウンタを0にリセットする。
【0118】
ステップS114では、行動回数カウンタの更新をまだ行っていないノンプレイヤキャラクタが存在するかどうかを判断し、存在する場合には処理はステップS116に進み、存在しない場合には通信モード処理を終了する。
【0119】
ステップS116では、行動回数カウンタの更新をまだ行っていないノンプレイヤキャラクタのNPCデータを、処理対象のノンプレイヤキャラクタのNPCデータとして、RAM24から1件読み出す。
【0120】
ステップS118では、ステップS116で読み出したNPCデータのブーム変化日時47と、リアルタイムクロック34が示す現在日時とを比較し、ブーム変化日時から1週間以上経過しているかどうかを判断する。そして、ブーム変化日時から1週間以上経過している場合には処理はステップS120に進み、まだ1週間が経過していない場合には通信モード処理を終了する。
【0121】
ステップS120では、更新対象となる行動回数カウンタ(すなわち処理対象となっているノンプレイヤキャラクタの行動回数カウンタのうち、通信相手キャラクタが行ったブームトリガ行動または無趣味行動に対応するブームの行動回数カウンタ)の値が上限に達しているかどうかを判断し、上限に達している場合には処理はステップS114に戻り、上限に達していない場合には処理はステップS122に進む。
【0122】
ステップS122では、更新対象となる行動回数カウンタに2を加算する。なお、通信相手キャラクタの行動がノンプレイヤキャラクタに与える影響を、プレイヤキャラクタの行動がノンプレイヤキャラクタに与える影響の2倍に設定しているのは、見慣れないプレイヤキャラクタ(通信相手キャラクタ)に対してノンプレイヤキャラクタが強く関心を示している様子を表現するためである。
【0123】
なお本実施例では、ステップS122において、通信相手キャラクタとノンプレイヤキャラクタとの位置関係によらず、更新対象となる行動回数カウンタに2を加算するようにしているが、図16のステップS96およびステップS98の処理のように、ノンプレイヤキャラクタが通信相手キャラクタに近い場所にいるか遠い場所にいるかによって、行動回数カウンタの加算値を変えるようにしても構わない。
【0124】
全てのノンプレイヤキャラクタについて行動回数カウンタの更新処理が完了すると、通信モード処理は終了し、図11のステップS30に処理は進む。
【0125】
ステップS30では、ゲーム世界でいずれか2体のノンプレイヤキャラクタが接触したかどうかを判断し、ノンプレイヤキャラクタが接触した場合には処理はステップS32に進み、接触していない場合には処理はステップS34に進む。
【0126】
ステップS32では、NPC間影響処理を行う。
【0127】
図18に、NPC間影響処理の詳細を示すフローチャートである。図18において、CPUコア21はステップS124で、接触した2体のノンプレイヤキャラクタの、PCに対する親密度48を比較し、PCに対する親密度が高い方のノンプレイヤキャラクタを「影響を与える側のノンプレイヤキャラクタ」とし、PCに対する親密度が低い方のノンプレイヤキャラクタを「影響を受ける側のノンプレイヤキャラクタ」として決定する。
【0128】
ステップS126では、影響を与える側のノンプレイヤキャラクタの各ブーム値を参照し、ブーム値が最も高いブームを、「影響を受けるブーム」として決定する。
【0129】
ステップS128では、影響を受けるブームに対応するブーム補正係数とNPC補正係数とを乗算することによって加算値を算出する。例えば、影響を受ける側のノンプレイヤキャラクタがノンプレイヤキャラクタNPC3であり、影響を受けるブームが海ブームである場合には、図9のブーム補正係数テーブル49と図10のNPC補正係数テーブル50とから、加算値は2×1.1=2.2と算出される。
【0130】
ステップS130では、影響を受ける側のノンプレイヤキャラクタのNPCデータにおける、影響を受けるブームのブーム値に、ステップS128で算出された加算値を加算する。例えば、上記の例では、ノンプレイヤキャラクタNPC3の海ブームのブーム値に2.2が加算される。
【0131】
ステップS132では、影響を受けた側のノンプレイヤキャラクタを処理対象として、ブーム変化処理を行う。この結果、NPC間影響処理では、影響を受けた側のノンプレイヤキャラクタのブームがリアルタイムに変化し得る。ブーム変化処理が終わると、NPC間影響処理は終了し、処理は図11のステップS34に進む。
【0132】
ステップS34では、ゲームを終了するかどうかを判断し、ゲームを終了する場合には処理はステップS36に進み、ゲームを終了しない場合には処理はステップS12に戻る。
【0133】
ステップS36では、NPCデータ等のゲームデータをメモリカード17のRAM17bに保存する。
【0134】
ステップS38では、ゲーム装置10の電源を切る。こうしてメイン処理は終了する。
【0135】
以上のように、本実施形態によれば、ゲーム世界においてプレイヤキャラクタがとった行動に応じて、ノンプレイヤキャラクタの行動に変化が生じ、あたかもプレイヤキャラクタがとった行動がゲーム世界に流行を引き起こしているかのような新鮮な感覚をプレイヤに感じさせるとともに、ノンプレイヤキャラクタに対する親近感をプレイヤに与えることができる。
【0136】
また、プレイヤキャラクタが行ったブームトリガー行動や無趣味行動の回数をカウントするための行動回数カウンタをノンプレイヤキャラクタ毎に個別に設けたことにより、ゲーム世界にまだ登場していないノンプレイヤキャラクタや、ゲーム世界から一時的に消えているノンプレイヤキャラクタに対して、プレイヤキャラクタの行動の影響が及ぶことを回避することができる。また、図16のステップS92やステップS96の処理のように、ノンプレイヤキャラクタの状態に応じて、行動回数カウンタの加算値をノンプレイヤキャラクタ毎に異ならせることも可能となる。
【0137】
また、行動回数カウンタはリアルタイムで更新される一方で、ブーム値の更新はリアルタイムに行われるのではなく予め決められたタイミング(ゲーム開始時、朝6時、シーンチェンジ時)に行われるので、実世界で流行がじわじわと広まっていくように、ゲーム世界におけるプレイヤキャラクタの行動の影響がノンプレイヤキャラクタにゆっくりと広まっていく様を表現することができる。
【0138】
また、行動回数カウンタの値に応じてブーム値を更新するときに、ブームに応じたブーム補正係数を乗算することにより、例えば化石を発掘するという難度の比較的高い行動をプレイヤが行った場合と、海で貝殻を拾うという難度の比較的低い行動をプレイヤが行った場合とで、1回の行動がブーム値に与える影響の度合を調整することができる。
【0139】
また、行動回数カウンタの値に応じてブーム値を更新するときに、ノンプレイヤキャラクタに応じたNPC補正係数を乗算することにより、例えば図4に示すようなネコ型のノンプレイヤキャラクタNPC2は魚に興味を示しやすいといったように、ノンプレイヤキャラクタ毎に性格付けを行うことができ、ノンプレイヤキャラクタに対する親近感をプレイヤに与えることができる。
【0140】
なお、本実施形態では、非通信モードにおいてプレイヤキャラクタが1体しか登場しない例を説明したが、複数のプレイヤキャラクタを選択的に切り換えて使用するようにしてもよい。この場合、例えば第1のプレイヤが第1のプレイヤキャラクタを使ってゲームをプレイして、ゲームデータを保存してゲームを終了した後、別の第2のプレイヤが第2のプレイヤキャラクタを使ってゲームを再開した時に、第1のプレイヤが保存したNPCデータをそのまま引き継いで第2のプレイヤがゲームをプレイするようにしてもよい。これにより、第1のプレイヤが久しぶりにゲームをプレイすると、第2のプレイヤキャラクタの行動の影響を受けて、思いもよらない流行が引き起こされているという状況が起こり得るので、ゲームをプレイする度に新鮮な感覚をプレイヤに与えることができる。
【図面の簡単な説明】
【0141】
【図1】本発明の一実施形態に係るゲーム装置の外観図
【図2】ゲーム装置の内部構成図
【図3】ゲーム世界の全体を示す図
【図4】第2のLCD12の画面に表示されるゲーム画像の一例
【図5】第2のLCD12の画面に表示されるゲーム画像の他の例
【図6】第2のLCD12の画面に表示されるゲーム画像のさらに他の例
【図7】RAM24のメモリマップ
【図8】行動回数カウンタおよびブーム値の一具体例
【図9】ブーム補正係数テーブルの一具体例
【図10】NPC補正係数テーブルの一具体例
【図11】メイン処理の流れを示すフローチャート
【図12】初期処理の流れを示すフローチャート
【図13】ブーム値更新処理の流れを示すフローチャート
【図14】ブーム変化処理の流れを示すフローチャート
【図15】NPC動作制御処理の流れを示すフローチャート
【図16】行動回数カウンタ更新処理の流れを示すフローチャート
【図17】通信モード処理の流れを示すフローチャート
【図18】NPC間影響処理の流れを示すフローチャート
【符号の説明】
【0142】
10 ゲーム装置
11 第1のLCD
12 第2のLCD
13 ハウジング
13a 上側ハウジング
13b 下側ハウジング
14 操作スイッチ部
14a 十字スイッチ
14b スタートスイッチ
14c セレクトスイッチ
14d Aボタン
14e Bボタン
14f Xボタン
14g Yボタン
14L Lボタン
14R Rボタン
15 タッチパネル
16 スティック
17 メモリカード
17a ROM
17b RAM
18a,18b 音抜き孔
19 電源スイッチ
20 電子回路基板
21 CPUコア
22 バス
23 コネクタ
24 RAM
25 I/F回路
26 第1GPU
27 第2GPU
28 第1VRAM
29 第2VRAM
30a 右スピーカ
30b 左スピーカ
31 LCDコントローラ
32 レジスタ
33 ワイヤレス通信部
34 リアルタイムクロック
40 ゲームプログラム
41 画像データ
42 PCデータ
43 行動回数カウンタ
44 ブーム値
45 ブーム初期値
46 現在ブーム
47 ブーム変化日時
48 PCに対する親密度
49 ブーム補正係数テーブル
50 NPC補正係数テーブル
51 無趣味行動時間カウンタ

【特許請求の範囲】
【請求項1】
プレイヤの入力操作によって入力装置から出力される操作情報に応じて行動するプレイヤキャラクタと、自律的に行動する複数のノンプレイヤキャラクタとを含むゲーム世界を表示装置に表示するためのゲームプログラムであって、コンピュータを、
前記入力装置から出力される操作情報に応じてプレイヤキャラクタの行動を制御するプレイヤキャラクタ制御手段、
ノンプレイヤキャラクタを自律的に行動させる際の行動に影響を与える複数種類の行動傾向ごとに対応付けられたプレイヤキャラクタの各行動のうちのいずれかが行われた際に、各ノンプレイヤキャラクタの行動傾向ごとに設けられた行動回数カウンタのうちプレイヤキャラクタの行動に対応する行動傾向に関するカウンタをそれぞれ更新する行動回数カウンタ更新手段、
前記プレイヤキャラクタの前記行動に依存しない所定のタイミングで、ノンプレイヤキャラクタ毎に前記行動傾向を数値化した行動傾向値を、前記行動回数カウンタの値に応じてそれぞれ更新する行動傾向値更新手段、
前記行動傾向値に対する行動傾向に基づいて各ノンプレイヤキャラクタの動作を制御するノンプレイヤキャラクタ動作制御手段、および
前記プレイヤキャラクタおよび前記ノンプレイヤキャラクタを含むゲーム世界を前記表示装置に表示させる表示制御手段として機能させるためのゲームプログラム。
【請求項2】
前記行動回数カウンタ更新手段によっていずれかの行動回数カウンタが更新される際に、ノンプレイヤキャラクタがゲーム世界に存在しているか否かによって異なる値で各ノンプレイヤキャラクタの行動回数カウンタを更新する、請求項1に記載のゲームプログラム。
【請求項3】
前記行動回数カウンタ更新手段によっていずれかの行動回数カウンタが更新される際に、ゲーム世界におけるノンプレイヤキャラクタの位置に応じて異なる値で各ノンプレイヤキャラクタの行動回数カウンタを更新する、請求項1に記載のゲームプログラム。
【請求項4】
前記行動回数カウンタ更新手段によっていずれかの行動回数カウンタが更新される際に、ノンプレイヤキャラクタが前記表示装置の画面に表示されているか否かによって異なる値で各ノンプレイヤキャラクタの行動回数カウンタを更新する、請求項1に記載のゲームプログラム。
【請求項5】
前記行動回数カウンタ更新手段によっていずれかの行動回数カウンタが更新される際に、プレイヤキャラクタと各ノンプレイヤキャラクタとの位置関係に応じて異なる値で各ノンプレイヤキャラクタの行動回数カウンタを更新する、請求項1に記載のゲームプログラム。
【請求項6】
前記行動回数カウンタ更新手段は、前記行動回数カウンタが予め定められた上限に達しているときには当該行動回数カウンタを更新しない、請求項1に記載のゲームプログラム。
【請求項7】
前記行動回数カウンタ更新手段は、前記行動傾向値更新手段によってノンプレイヤキャラクタの行動傾向値を変化させてから一定の期間が経過するまでは、当該ノンプレイヤキャラクタの行動回数カウンタを更新しない、請求項1に記載のゲームプログラム。
【請求項8】
前記行動回数カウンタ更新手段による前記行動回数カウンタの更新処理は、前記行動傾向ごとに対応付けられたプレイヤキャラクタの行動のいずれかが行われる都度行われ、
前記行動傾向値更新手段による前記行動傾向値の更新処理は、前記行動傾向ごとに対応付けられたプレイヤキャラクタの行動のいずれかが行われる都度ではない予め定められたタイミングで行われる、請求項1に記載のゲームプログラム。
【請求項9】
前記行動傾向値更新手段による前記行動傾向値の更新処理は、プレイヤがゲームを開始または再開したときに行われる、請求項8に記載のゲームプログラム。
【請求項10】
前記行動傾向値更新手段による前記行動傾向値の更新処理は、毎日一定時刻に達したときに行われる、請求項8に記載のゲームプログラム。
【請求項11】
前記行動傾向値更新手段による前記行動傾向値の更新処理は、表示装置に表示されているゲーム画像においてシーンが変化したときに行われる、請求項8に記載のゲームプログラム。
【請求項12】
前記行動傾向値更新手段は、前記行動回数カウンタの値に、予め前記行動傾向毎に個別に定められた補正係数を乗算した結果の値を用いて、前記行動傾向値をそれぞれ更新する、請求項1に記載のゲームプログラム。
【請求項13】
前記行動傾向値更新手段は、前記行動回数カウンタの値に、予め前記ノンプレイヤキャラクタ毎に個別に定められた補正係数を乗算した結果の値を用いて、前記行動傾向値をそれぞれ更新する、請求項1に記載のゲームプログラム。
【請求項14】
前記行動傾向値更新手段によって各ノンプレイヤキャラクタの前記行動傾向値が更新された後、予め定められた上限に達している行動傾向値が存在するときに、当該上限に達した行動傾向値に基づいてノンプレイヤキャラクタの行動傾向を変化させ、さらに当該上限に達した行動傾向値をリセットする、請求項1に記載のゲームプログラム。
【請求項15】
前記上限に達した行動傾向値をリセットするときに、残りの行動傾向値を値が減じるようにそれぞれ更新する、請求項14に記載のゲームプログラム。
【請求項16】
プレイヤの入力操作によって入力装置から出力される操作情報に応じて行動するプレイヤキャラクタと、自律的に行動する複数のノンプレイヤキャラクタとを含むゲーム世界を表示装置に表示するためのゲーム装置であって、
前記入力装置から出力される操作情報に応じてプレイヤキャラクタの行動を制御するプレイヤキャラクタ制御手段、
ノンプレイヤキャラクタを自律的に行動させる際の行動に影響を与える複数種類の行動傾向ごとに対応付けられたプレイヤキャラクタの各行動のうちのいずれかが行われた際に、各ノンプレイヤキャラクタの行動傾向ごとに設けられた行動回数カウンタのうちプレイヤキャラクタの行動に対応する行動傾向に関するカウンタをそれぞれ更新する行動回数カウンタ更新手段、
前記プレイヤキャラクタの前記行動に依存しない所定のタイミングで、ノンプレイヤキャラクタ毎に前記行動傾向を数値化した行動傾向値を、前記行動回数カウンタの値に応じてそれぞれ更新する行動傾向値更新手段、
前記行動傾向値に対する行動傾向に基づいて各ノンプレイヤキャラクタの動作を制御するノンプレイヤキャラクタ動作制御手段、および
前記プレイヤキャラクタおよび前記ノンプレイヤキャラクタを含むゲーム世界を前記表示装置に表示させる表示制御手段とを備えたゲーム装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate


【公開番号】特開2007−135939(P2007−135939A)
【公開日】平成19年6月7日(2007.6.7)
【国際特許分類】
【出願番号】特願2005−335027(P2005−335027)
【出願日】平成17年11月18日(2005.11.18)
【出願人】(000233778)任天堂株式会社 (1,115)
【Fターム(参考)】