以下、図を参照して、本発明の実施の形態を詳細に説明する。図1は、本発明を適用した、サーバシステム30と、このサーバシステム30と所与の通信回線を介して接続される複数のゲーム端末20と、から構成されるゲームシステム10を示す概略図である。
図1において、ゲーム端末20は、プレーヤの操作指示に従い、サーバシステム30に対して、PCに係るキャラクタデータを送信するとともに、キャラクタの登録を要求する処理を行う(キャラクタの登録)。また、プレーヤの操作指示に従い、サーバシステム30に登録されているキャラクタに係るキャラクタデータを要求・受信する処理を行う(キャラクタの貸出し)。
サーバシステム30は、ゲーム端末20より送信されるキャラクタデータを受信し、キャラクタを登録する処理を行う(キャラクタの登録)。また、ゲーム端末20からの要求に応じたキャラクタに係るキャラクタデータを、該ゲーム端末20に送信する処理を行う(キャラクタの貸出し)。
ゲーム端末20は、通常、装置単独でゲームを実行するが、キャラクタの登録、或いは貸出しを行う際には、通信回線を介してサーバシステム30と接続することにより、サーバシステム30とのキャラクタデータの送受信処理を行う。また、ゲーム端末20は、物理的に通信回線と接続された状態(例えば、電話回線に接続された状態)にあって、この通信回線を介したゲームサーバ30との電気的な接続(例えば、電気通信路の確立等)は随時可能な状態にあることとする。
尚、図1においては、1台のサーバシステム30に3台のゲーム端末20を接続した様子を示しているが、勿論これは何台接続してもかまわない。また、本実施形態において、ゲーム端末20が実行するゲームをロールプレイングゲーム(RPG)として説明するが、適用されるゲームはこれに限るものではない。更に、サーバシステム30に登録されているキャラクタ、及びゲーム端末20に貸出されるキャラクタは、プレーヤの操作対象とならないノンプレーヤキャラクタ(NPC)であるとして、以下説明する。
また、キャラクタの登録、及び貸出に先立ち、プレーヤは、サーバシステム30に対してプレーヤ登録を行う必要がある。具体的には、例えばゲーム端末20において、最初の冒険の開始時に、表示画面上の指示に従い、プレーヤ名や年齢、性別といったプレーヤの個人情報を入力することにより、各プレーヤを識別するためのプレーヤIDを取得する。
最初に、キャラクタの登録、及び貸出しの概略を、ゲーム端末20において表示されるゲーム画面(図2〜図8)を参照し、説明する。
(キャラクタの登録)
ゲームのプレイ中に、例えばゲームコマンドメニューの中にある「キャラクタを登録」が選択されると、実行中の冒険が一時中断され、続いて、キャラクタ登録画面が表示される。
図2は、キャラクタ登録画面の一例を示す図である。図2において、キャラクタ登録画面には、プレーヤIDの入力と、キャラクタの登録指示と、を促す旨のメッセージが表示される。このキャラクタ登録画面において、プレーヤ登録されているプレーヤIDが入力され、且つキャラクタの登録指示がなされたことが確認されると、プレーヤの操作対象となっているPC50が、NPCとして、サーバシステム30に登録されることとなる。また、サーバシステム30において、キャラクタの登録が正常に行われたことが確認された場合には、例えば“登録を完了しました!”といったメッセージが、ゲーム画面上に表示される。そして、一時中断されていた冒険が再開される。
(キャラクタの貸出し)
ゲームのプレイ中に、PC50が、ゲーム空間内に設けられる「酒場」へ移動され、この「酒場」に入る動作が行われると、続いて、ゲーム画面上には、プレーヤIDの入力を促す旨のメッセージが表示される。ここで、プレーヤ登録されているプレーヤIDが入力されたことが確認されると、PC50は、「酒場」に入ることができる。そして、「酒場」内部の様子が表示される。
図3は、「酒場」内部の一例を示す図である。図3において、「酒場」には、PC50、及び複数のキャラクタが存在する。これら「酒場」に存在するキャラクタは、ゲーム端末20の何れかより、サーバシステム30に登録されたキャラクタ(NPC)である。尚、キャラクタ70は、この「酒場」の主人を表すキャラクタ(主人キャラクタ)であり、貸出しの対象とならないキャラクタ(NPC)である。
この「酒場」において、プレーヤの操作指示により、PC50が、何れかのNPCと接触するように移動され、「話す」コマンドが選択されると、例えば図4に示すように、この接触したNPCのセリフが表示され、PC50との会話が行われることとなる。尚、PC50のこの動作を、“NPCに話し掛ける”という。
図4は、NPCのセリフの一例を示す図である。図4(a)において、NPC52には、“静の森へ、行ったことあるよ”といったセリフが表示されている。即ち、NPC52には、静の森(ダンジョンの名称である)への訪問経験が有ることが示唆されている。また、図4(b)において、NPC52には、“ガーディアントは強かったなぁ・・”といったセリフが表示されている。即ち、NPC52には、ガーディアント(ゲーム中に登場するボスキャラクタの名称である)との遭遇経験が有ることが示唆されている。また、図4(c)において、NPC52には、“攻撃力がやっと53になったよ”といったセリフが表示されている。即ち、NPC52の攻撃力は、53であることが示唆されている。
このように、NPCとの会話により、プレーヤは、そのNPCの経験(訪問経験が有る場所や遭遇経験が有る敵キャラクタ)や、NPC自身の戦闘能力(レベルや攻撃力、防御力等)を知ることができる。尚、表示されるこれらのNPCのセリフを、例えばゲーム端末20に内蔵或いは付属のスピーカなどから音声出力させることとしてもよい。また、以降の説明におけるセリフについても、勿論同様である、
PC50とNPCとの会話が終了すると、続いて、このNPCを「酒場」より連れ出し、仲間にするか否かの選択を促すメッセージが表示される。そして、仲間にすることが選択されると、このNPCは、PC50の仲間(以下、仲間キャラクタという。)となり、ゲーム端末20において実行されるゲームの、以降の冒険に同行することとなる。即ち、キャラクタが貸出されたこととなる。
尚、プレーヤに対して、貸出可能な所定の最大数(以下、最大貸出数という。)のキャラクタが既に貸出されている場合、これ以上キャラクタの貸出は行われない。そのため、話し掛けたNPCを仲間にすることが選択された場合には、続いて、どの仲間キャラクタと別れるのかを問う旨のメッセージが表示される。そして、選択された仲間キャラクタと別れることで、話し掛けたNPCを、新たな仲間キャラクタとして、以降の冒険に同行させることができる。また、一のPCに対して、一のNPCのみを同行させることとしてもよいし、複数のNPCを同行させることとしてもよい。更に、複数のNPCを同行させる場合には、戦闘時に全てのNPCを戦闘に参加させてもよいし、参加できる人数を制限して戦闘の途中で交代参加させてもよい。
また、図3に示す「酒場」において、例えばゲームコマンドメニューの中にある「ランキング」が選択されると、貸出回数に基づくキャラクタ(NPC)のランキング一覧表が、例えば図5に示すように表示される。この貸出回数とは、そのキャラクタ(NPC)が「酒場」から連れ出された合計回数(延べ回数)、即ち貸出された合計回数のことである。
図5は、ランキング一覧表の一例を示す図である。図5において、ランキング一覧表には、サーバシステム30に登録されている全てのキャラクタ(NPC)の内、貸出回数が上位20位以内のキャラクタ(NPC)について、そのキャラクタ名、及び貸出回数が表示される。即ち、図5において、NPC“キール”は、登録されているキャラクタ(NPC)の内、貸出し回数が最多の39回であることが示されている。
また、図3に示す「酒場」において、PC50が“出口(特に図示されていない)”に移動され、「酒場」の外に出て行く動作が行われると、「酒場」内部の表示が終了し、一時中断されていた、ゲーム端末20における冒険(ゲーム)が再開されることとなる。尚、ここで再開される冒険には、上述のように「酒場」から連れ出されたNPC(仲間キャラクタ)が同行することとなる。
また、これらのNPC(仲間キャラクタ)には、冒険中の任意のタイミングで、例えば図6〜図8に示すように、そのNPC特有のセリフが表示される。
図6は、冒険中のゲーム画面の一例を示す図であり、同図において、NPC51,53が仲間キャラクタである。図6(a)において、NPC53には、“この辺一帯のことはまかせて!来たばっかりだしね!”といったセリフが表示されている。即ち、NPC53には、過去にこの場所を訪れた経験が有ることが示されている。また、同図(b)において、NPC53には、“知ってる?この辺、こわいんだよぉ・・”といったセリフが表示されている。即ち、NPC53には、過去にこの場所を訪れた経験が有ることが示されている。
また、図7は、戦闘前後におけるキャラクタの‘決めセリフ’の一例を示す図である。図7(a)において、NPC53には、“いくよーっ!”といった、戦闘直前の決めセリフが表示されている。また、同図(b)において、NPC53には、“やったぁー!”といった、戦闘直後(勝利した場合)の決めセリフが表示されている。また、図8は、一定時間無言であった場合のゲーム画面の一例を示す図である。図8において、NPC53には、“たいくつ〜”といったセリフが表示されている。
次に、ゲーム端末20の機能ブロックの一例を、図9に示す。図9において、機能ブロックは、操作部100、通信部200、表示部300、処理部400、及び記憶部500により構成される。
操作部100は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、筐体などのハードウェアにより実現できる。また、そのボタン押下等の操作がされた場合には、その操作信号を処理部400に出力する。
通信部200は、所与の通信回線を介して、キャラクタデータの送受信など、ゲーム端末20外部(主にサーバシステム30)との情報のやり取りを行う。また、この通信回線は、LANのような小規模ネットワークやインターネットのような広域ネットワーク、公衆網や専用線網、移動体通信網など、有線・無線を問わず、何れの形態の通信回線であってよい。
表示部300は、画像生成部410により生成されたゲーム画像などを表示する。プレーヤは、表示部300に表示されるゲーム画面、例えば図2〜図8に示すゲーム画面等を見ながら、操作部100より、ゲーム進行に応じた操作データ(指示や選択、決定)等を入力する。
処理部400は、ゲーム端末20全体の制御、ゲーム端末20内の各機能部への命令、ゲーム進行処理、画像処理、音処理等の各種処理を行うものであり、その機能は、各種プロセッサ(CPU、DSP等)、或いはASIC(ゲートアレイ等)等のハードウェアや、所与のプログラムにより実現できる。また、処理部400には、画像生成部410、及びゲーム演算部420が含まれる。
画像生成部410は、ゲーム演算部420により設定されたゲーム空間を、所与の視点(仮想カメラ)に基づく画像として生成し、表示部300へ出力する処理を行う。
ゲーム演算部420は、ゲーム空間の構築処理、各キャラクタの位置や向き、移動の速度、進行方向等を求める処理、ゲーム空間における仮想カメラの位置やその視線方向を演算する処理、ストーリーの展開といったゲームの進行処理等、種々のゲーム処理を、操作部100からの操作信号や記憶部500から読み出すゲームプログラム510等に基づいて実行する。また、ゲーム演算部420には、キャラクタ登録部421、及びキャラクタ貸出部422が含まれる。
キャラクタ登録部421は、操作部100からの操作指示に従い、PC50のキャラクタデータをキャラクタDB540から読み出し、サーバシステム30に対して送信するなど、キャラクタの登録に係る処理を行う。
キャラクタ貸出部422は、操作部100からの操作指示に従い、サーバシステム30より送信されるキャラクタデータをキャラクタDB540に追加格納するなど、キャラクタの貸出しに係る処理を行う。
記憶部500は、ゲームの進行に係るゲームプログラム510と、キャラクタ登録プログラム520と、キャラクタ貸出プログラム530と、キャラクタDB540と、を記憶する。
図10は、キャラクタDB540の一例を示す図である。キャラクタDB540には、キャラクタ毎に、そのキャラクタに対応するキャラクタデータが格納される。図10は、その内の一のキャラクタデータについて示したものである。
図10において、キャラクタデータには、そのキャラクタ番号と、名称と、戦闘能力(レベルや攻撃力、防御力、体力等)と、履歴と、個性と、画像データと、が対応付けて記憶される。キャラクタ番号は、キャラクタを識別するための番号であり、“T001”からの連番で与えられる。履歴は、該キャラクタが過去に遭遇した敵キャラクタや訪れた場所などの情報である。個性は、例えば図16に示すセリフデータなど、該キャラクタの個性を決定するための情報であるが、その詳細は後述する。画像データは、例えば図3に示すように、該キャラクタをゲーム画面に表示するための情報である。画像生成部410は、この画像データに基づき、キャラクタの画像を生成する。
また、キャラクタDB540には、予め複数のキャラクタデータが格納されている。そして、サーバシステム30より受信するキャラクタデータは、それ以降のキャラクタ番号が付され、キャラクタDB540に追加格納されることとなる。即ち、図10において、キャラクタDB540には、キャラクタ番号“T001”〜“T083”の、合計83のキャラクタデータが格納可能なように、その格納領域が確保されている。また、キャラクタ番号“T001”〜“T080”の領域に格納されたキャラクタデータは、予め格納されているキャラクタデータである。そして、キャラクタ番号“T081”〜“T083”の領域が、追加格納されるキャラクタデータの格納領域である。即ち、貸出されたキャラクタ(NPC)のキャラクタデータは、キャラクタ番号“T081”〜“T083”の何れかの領域に格納されることとなる。但し、追加格納が可能な領域は、キャラクタデータ3つ分のみであるため、4つ以上のキャラクタデータを追加格納することはできない。
また、図10において、キャラクタ番号“T001”のキャラクタデータは、PC50のキャラクタデータである。そして、キャラクタ番号“T002”以降のキャラクタデータは、PC50の仲間とすることができる仲間キャラクタなど、プレーヤの操作対象とならないNPCのキャラクタデータである。また、キャラクタデータは、PC50であるか、NPCであるか、追加格納されたNPCであるかに関わらず同一構成である。
次に、ゲーム端末20において実行される具体的な処理動作を、図11及び図12に示すフローチャートを参照して説明する。尚、表示部300における表示に従って行われるプレーヤの各種入力操作は、より詳細には、操作部100から出力される操作信号に基づき、処理部400において認識されるものであるが、簡明のため、以下の説明においては、その詳細な説明を省略する。
(キャラクタの登録)
図11は、キャラクタ登録プログラム520に従って、キャラクタ登録部421により実行される、キャラクタ登録処理(ゲーム端末)を説明するフローチャートである。
図11において、ゲームのプレイ中に、例えばゲームコマンドメニューの中にある「キャラクタを登録」が選択されると、キャラクタ登録部421は、実行中の冒険を一時中断させ、キャラクタ登録画面を、例えば図2に示すように、表示部300に表示させる。そして、このキャラクタ登録画面において、プレーヤIDが入力され、且つキャラクタの登録指示がなされると、キャラクタ登録部421は、入力されたプレーヤIDとともに、PC50に該当するキャラクタデータをサーバシステム30に対して送信し、キャラクタの登録を要求する(ステップS11)。即ち、キャラクタ登録部421は、キャラクタDB540に格納されているPC50のキャラクタデータ(図10において、キャラクタ番号“T001”のキャラクタデータ)を、入力されたプレーヤIDとともに、サーバシステム30に対して送信する。
次いで、サーバシステム30より、キャラクタの登録完了が通知されると(ステップS12:YES)、キャラクタ登録部421は、例えば“登録を完了しました!”といったメッセージを表示部300に表示させる。そして、一時中断していた冒険を再開させる。以上の処理を行うと、キャラクタ登録部421は、本処理を終了する。
(キャラクタの貸出し)
図12は、キャラクタ貸出プログラム530に従って、キャラクタ貸出部422により実行される、キャラクタ貸出処理(ゲーム端末)を説明するフローチャートである。
図12において、PC50の「酒場」への入場が指示されると(ステップS21)、キャラクタ貸出部422は、プレーヤIDの入力を促す旨のメッセージを、表示部300に表示させる。そして、サーバシステム30との電気的な通信路を確立させ、入力されたプレーヤIDを、サーバシステム30に対して通知する。
ここで、サーバシステム30より、プレーヤIDの認証不可が通知された場合(ステップS22:NO)、キャラクタ貸出部422は、サーバシステム30と確立中の通信路を切断し、その旨のメッセージを表示部300に表示させる。そして、本処理を終了する。
また、サーバシステム30より、プレーヤIDの認証可が通知された場合(ステップS22:YES)、キャラクタ貸出部422は、「酒場」内部の様子を、例えば図3に示すように、表示部300に表示させる(ステップS23)。より詳細には、画像生成部410に対して、上記プレーヤIDの認証可とともに送信されるNPCデータ(少なくともキャラクタデータの内、登録番号、及び対応する画像データを含む)に基づき、NPCを配置させた「酒場」内部の画像を生成させることになる。
そして、「酒場」内部において、例えばPC50をNPCと接触させ、更に「話す」コマンドが選択されるなど、NPCとの会話が指示された場合(ステップS24:YES)、キャラクタ貸出部422は、“話し掛けられた”NPCの登録番号を検出する。そして、サーバシステム30に対して、検出した登録番号を通知するとともに、会話データを要求する。次いで、サーバシステム30より送信される会話データに基づき、話し掛けられたNPCのセリフを、例えば図4に示すように、表示部300に表示させる(ステップS23)。
NPCとの会話の終了後、続いて、キャラクタ貸出部422は、このNPCを連れ出し、仲間にするか否かの選択を促す旨のメッセージを、表示部300に表示させる。そして、NPCの連れ出しが指示された場合(ステップS26:YES)、キャラクタ貸出部422は、キャラクタDB540を参照し、キャラクタデータの追加格納領域に空きがあるか否かを確認する(ステップS27)。
キャラクタDB540において、キャラクタデータの追加格納領域に空きがあることを確認した場合、キャラクタ貸出部422は、キャラクタの貸出しが可能であると判定し(ステップS27:YES)、連れ出しが指示されたNPCのキャラクタデータを、サーバシステム30に対して要求する。
また、キャラクタDB540において、キャラクタデータの追加格納領域に空きがあることが確認されない場合、キャラクタ貸出部422は、キャラクタの貸出しが不可能であると判定し(ステップS27:NO)、続いて、どの仲間キャラクタと別れるのかを問う旨のメッセージを、表示部300に表示させる。そして、選択された仲間キャラクタのキャラクタデータを、キャラクタDB540より削除することにより、追加可能領域に空きを確保する。即ち、このことにより、選択された仲間キャラクタと別れることとなる(ステップS28)。次いで、キャラクタ貸出部422は、ステップS26において連れ出しが指示されたNPCのキャラクタデータを、サーバシステム30に対して、要求する。
サーバシステム30に対するキャラクタデータの要求を行うと、キャラクタ貸出部422は、続いてサーバシステム30より送信されるキャラクタデータを、キャラクタDB540に追加格納する。但し、このキャラクタデータは、空きとなっている格納領域に追加格納される。即ち、このことにより、話し掛けたNPCが、新たな仲間キャラクタとなる(ステップS29)。
また、図3に示す「酒場」内部において、「ランキング」が選択された場合(ステップS30:YES)、キャラクタ貸出部422は、その旨の指示信号を、サーバシステム30に対して送信する。そして、この指示信号に応じてサーバシステム30より送信されるランキングデータに基づき、ランキング一覧表を、例えば図5に示すように、表示部300に表示させる(ステップS31)。
また、図3に示す「酒場」内部において、PC50の退出が指示された場合(ステップS32:YES)、キャラクタ貸出部422は、サーバシステム30と接続中の通信回線(電気的な通信路)を切断させる。そして、一時中断していた冒険を再開させる。以上の処理を行うと、キャラクタ貸出部422は、本処理を終了する。
図13は、サーバシステム30の機能ブロックの一例を示す図である。図13において、機能ブロックは、通信部600、処理部700、及び記憶部800より構成される。
通信部600は、所与の通信回線を介して、キャラクタデータの送受信など、サーバシステム30外部(主にゲーム端末20)との情報のやり取りを行う。また、この通信回線は、LANのような小規模ネットワークやインターネットのような広域ネットワーク、公衆網や専用線網、移動体通信網など、有線・無線を問わず、何れの形態の通信回線であってよい。
処理部700は、通信部600を介してゲーム端末20より取得したデータや、記憶部800に記憶されたプログラム等に基づいて、ゲームの進行処理等を行う。この処理部700の機能は、CPU(CISC型、RISC型)、DSP、ASIC(ゲートアレイ等)、メモリ等のハードウェアにより実現できる。また、処理部700には、キャラクタ登録部710、キャラクタ貸出部720、会話決定部730、及びランキング管理部740が含まれる。
キャラクタ登録部710は、ゲーム端末20からの要求に応じて、該ゲーム端末20より送信されるキャラクタデータをキャラクタDB840に追加格納するなど、キャラクタの登録に係る処理を行う。
キャラクタ貸出部720は、ゲーム端末20からの要求に応じて、キャラクタDB840に格納されているキャラクタデータを該ゲーム端末20に送信するなど、キャラクタの貸出しに係る処理を行う。
会話決定部730は、会話定型文860、及びキャラクタDB840に格納されるキャラクタデータ等に基づき、「酒場」における、PC50との会話の際のNPCのセリフを決定する処理を行う。
ランキング管理部740は、一定時間毎(例えば、1日毎)に、キャラクタ貸出表850に基づき、貸出ランキング表870を更新する処理を行う。
記憶部800は、キャラクタ登録プログラム810と、キャラクタ貸出プログラム820と、プレーヤ管理表830と、キャラクタDB840と、キャラクタ貸出表850と、会話定型文860と、貸出ランキング表870と、を記憶する。
図14は、プレーヤ管理表830の一例を示す図である。図14において、プレーヤ管理表830には、各プレーヤに固有のプレーヤID毎に、プレーヤ関連情報と、キャラクタ関連情報と、が対応付けて記憶される。プレーヤ関連情報として、プレーヤ名や年齢、性別といった情報が記憶される。そして、これらのプレーヤ関連情報は、プレーヤ登録の際にプレーヤにより入力される値が、設定されることとなる。また、キャラクタ関連情報として、該プレーヤに対して貸出したキャラクタの登録番号(図15参照;詳細後述)及びその貸出回数が、貸出履歴として記憶される。但し、この貸出回数は、該プレーヤのみに対する貸出回数である。そして、これらのキャラクタ関連情報は、キャラクタの貸出しの際に、キャラクタ貸出部720により更新される。
例えば、図14において、プレーヤID“KI001”に該当するプレーヤには、登録番号が“R0018”や“R0002”のNPCが貸出されたことが記憶されている。また、登録番号“R0018”のNPCは、該プレーヤに対して2回貸出されたことが記憶されている。このように、一のプレーヤに対して同一のNPCが複数回貸出されるのは、ゲーム端末20のキャラクタDB540において、追加格納可能なキャラクタデータの数に上限があるためであり、追加格納されているキャラクタデータを削除することによって、何度でも追加格納され得るからである。
図15は、キャラクタDB840の一例を示す図である。キャラクタDB840には、サーバシステム30に登録されているキャラクタ(NPC)毎に、そのキャラクタ(NPC)に対応するキャラクタデータが格納される。図15は、その内の一のキャラクタデータについて示したものである。また、このキャラクタDB840に格納されるキャラクタデータは、図10に示すキャラクタDB540に格納されるキャラクタデータとほぼ同様の構造となっている。これは、ゲーム端末20におけるPCのキャラクタデータが、このキャラクタDB840に格納されるからである。
図15において、キャラクタデータには、その登録番号と、名称と、戦闘能力(レベルや攻撃力、防御力、体力等)と、履歴と、個性と、画像データと、登録者と、登録日と、が対応付けて記憶される。
登録番号は、キャラクタDB840において管理するキャラクタを識別するための番号であり、“R0001”からの連番で与えられる。履歴、個性、及び画像データは、図10において説明した、キャラクタDB540に格納されるキャラクタデータの履歴、個性、及び画像データと同様の情報である。登録者は、該キャラクタを登録したプレーヤのプレーヤIDである。登録日は、該キャラクタが、サーバシステム30に登録された日付を表す情報である。即ち、キャラクタDB840に格納されるキャラクタデータは、キャラクタDB540に格納されるキャラクタデータに、登録者、及び登録日の情報を追加した構造となっている。
図16は、キャラクタDB540及びキャラクタDB84に格納されるキャラクタデータにおいて、個性として記憶されるセリフデータの一例を示す図である。但し、図16は、NPC53に該当する個性として記憶されるセリフデータを示している。このセリフデータにおいて、訪問経験が有る場所や特定の出来事、或いはその他といった条件に応じた、NPCのセリフが記憶される。このセリフデータに設定される条件に応じて、例えば図6〜図8に示すように、冒険中におけるNPC53のセリフが表示される。
例えば、冒険中に、所与のダンジョンを再度訪れた場合には、このセリフデータにおける「訪問経験が有る場所(ダンジョン)」の条件が満たされ、NPC53には、その条件に対応する、“この辺一帯のことはまかせて!来たばっかりだしね!”といったセリフが、図6(a)に示すように表示される。また、ボスキャラであるガーディアントが存在する場所を再度訪れた場合には、このセリフデータにおける「訪問経験の有る場所(ボスキャラが存在)」の条件が満たされ、NPC53には、その条件に対応する、“知ってる?この辺、こわいんだよぉ・・”といったセリフが、図6(b)に示すように表示される。尚、これらの場所が、キャラクタが訪問経験が有る場所であるか否か等は、該当するキャラクタデータにおいて記憶される履歴に基づき、判定される。
また、同様に、セリフデータに基づき、戦闘直前においては、図7(a)に示すように、NPC53には、“行くよーっ!”といったセリフが表示される。更に、戦闘直後(勝利した場合)においては、図7(b)に示すように、NPC53には、“やったぁー!”といったセリフが表示される。また、一定時間無言が続いた場合、図8に示すように、NPC53には、“たいくつ〜”といったセリフが表示されることとなる。
このセリフデータ及び履歴に基づき、例えば口癖など、NPC固有のセリフを表示させることができる。尚、セリフデータに設定されるセリフは、例えばキャラクタの登録の際に、登録者により任意に設定可能としてもよい。このことにより、登録者は、登録するキャラクタが他のプレーヤに貸出された後、貸出し先において、場所や出来事といった条件に応じて、発明者の意図するセリフを表示させることが可能となる。
図17は、キャラクタ貸出表850の一例を示す図である。図17において、キャラクタ貸出表850には、サーバシステム30に登録されている全てのキャラクタ(NPC)について、その登録番号と、名称と、貸出回数と、が対応付けて記憶される。
登録番号は、各キャラクタを識別するための番号であり、キャラクタデータ(図15参照)における登録番号に該当する。貸出回数には、該キャラクタが貸出された通算回数(延べ回数)が記憶される。
図18は、会話定型文860の一例を示す図である。この会話定型文860には、「酒場」において、PC50に話し掛けられた際のNPCの会話内容が格納される。
即ち、図18において、会話番号(1)は、“訪問経験が有る場所”に関する会話であり、会話番号(2)は、“遭遇経験が有る敵”に関する会話である。また、会話番号(3)は、“自身の戦闘能力(攻撃力)”に関する会話であり、会話番号(4)は、“自身の戦闘能力(防御力)”に関する会話である。また、会話番号(5)は、“自身の戦闘能力(体力)”に関する会話である。そして、「酒場」において、PC50に話し掛けられたNPCには、上記会話番号(1)〜(5)の何れかの会話内容に従うセリフが表示される。その際には、これらの会話内容における“○○○”や“△△△”、“×××”には、そのNPCに該当するキャラクタデータ(図15参照)の内容に応じた単語が入ることとなる。
例えば、会話番号(1)が選択された場合、キャラクタデータに記憶される履歴(訪問経験のある場所)より、例えば図4(a)に示すように、NPC52のセリフが表示されることとなる。また、会話番号(2)が選択された場合、キャラクタデータに記憶される履歴(遭遇経験のある敵キャラ)より、例えば図4(b)に示すように、NPC52のセリフが表示されることとなる。会話番号(3)が選択された場合、キャラクタデータに記憶される戦闘能力(攻撃力)より、例えば図4(c)に示すように、NPC52セリフが表示されることとなる。
より詳細には、ゲーム端末20は、PC50が話し掛けたNPCの登録番号をサーバシステム30に送信する。すると、サーバシステム30の会話決定部730が、その登録番号に対応するキャラクタデータと、会話定型文860とに基づいて、択一的に会話を選択・決定する。そして、決定された会話データが、ゲーム端末20に送信される。こうして、PC50に話し掛けられたNPCにセリフが表示されることとなる。
図19は、貸出ランキング表870の一例を示す図である。この貸出ランキング表870には、サーバシステム30に登録されている全てのキャラクタ(NPC)を対象とした、その貸出回数に基づく順位が格納される。即ち、図19において、サーバシステム30に登録されている全てのキャラクタ(NPC)の内、貸出回数が上位20位以内のキャラクタ(NPC)について、その登録番号と、名称と、貸出回数と、が対応付けて格納されている。
この貸出ランキング表870に基づいて、例えば図5に示すように、ランキング一覧表が表示されることとなる。また、この貸出ランキング表870に格納される値は、一定時間毎(例えば、一日毎)に、ランキング管理部740により、最新の情報に更新される。
次に、サーバシステム30が行う具体的な動作を、図20及び図21に示すフローチャートを参照して、説明する。尚、サーバシステム30は、同時に複数のゲーム端末20それぞれに対して同様の処理を実行するが、以下においては、1台のゲーム端末20に対する処理についてのみ、説明を行う。
(キャラクタの登録)
図20は、キャラクタ登録プログラム810に従って、キャラクタ登録部710により実行される、キャラクタ登録処理(サーバシステム)を説明するためのフローチャートである。
図20において、ゲーム端末20より、キャラクタの登録が要求されると、キャラクタ登録部710は、この要求とともに送信されるキャラクタデータ、及びプレーヤIDを受信する(ステップS41)。そして、受信したプレーヤIDと、プレーヤ管理表830とを参照し、プレーヤ登録されていることを確認する。
次いで、キャラクタ登録部710は、受信したキャラクタデータに、登録者、及び登録日の情報を追加し、キャラクタDB840に、例えば登録番号“T0046”として、追加格納する。但し、キャラクタDB840における登録者の項目に受信したプレーヤIDを、また、登録日の項目に現在の日付を、それぞれ設定する。
それとともに、キャラクタ登録部710は、キャラクタ貸出表850において、上記登録番号に該当する項目の初期設定を行う。即ち、例えば登録番号“R0046”に該当する「名称」を、受信したキャラクタデータに記憶されている名称に、「貸出回数」を初期値である‘0’に、それぞれ設定する(ステップS42)。
その後、キャラクタ登録部710は、ゲーム端末20に対して、キャラクタの登録完了を通知する(ステップS43)。以上の処理を行うと、キャラクタ登録部710は、本処理を終了する。
(キャラクタの貸出し)
図21は、キャラクタ貸出プログラム820に従って、キャラクタ貸出部720により実行される、キャラクタ貸出処理(サーバシステム)を説明するためのフローチャートである。
図21において、ゲーム端末20より通信回線(電気的な通信路が確立)が接続され、「酒場」への入場が要求されると、キャラクタ貸出部720は、ともに通知されるプレーヤIDと、プレーヤ管理表830とを参照し、プレーヤ登録されていることを確認する(ステップS51)。尚、ここでプレーヤ登録されていることが確認できない場合(ステップS51:不可)、その旨をゲーム端末20に通知し、本処理を終了する。
プレーヤ登録されていることが確認された場合(ステップS51:可)、キャラクタ貸出部720は、キャラクタDB840を参照し、格納されているキャラクタデータについて、登録番号、及び対応する画像データを含むNPCデータを、ゲーム端末20に対して送信する(ステップS52)。
その後、ゲーム端末20より、登録番号の通知とともに、会話データが要求された場合(ステップS53:YES)、会話決定部730は、会話定型文860、及び通知された登録番号に該当するキャラクタデータを参照し、該キャラクタのセリフを決定する処理を行う。そして、キャラクタ貸出部720は、会話決定部730により決定されたセリフに基づく会話データを、ゲーム端末20に対して送信する(ステップS54)。
会話データの送信後、続いて、ゲーム端末20より、キャラクタデータが要求された場合(ステップS55:YES)、キャラクタ貸出部720は、キャラクタDB840を参照し、該当するキャラクタデータを、ゲーム端末20に送信する。それとともに、キャラクタ貸出表850及びプレーヤ管理表830において、該当する項目の値を更新する(ステップS56)。
具体的には、プレーヤ管理表830において、受信したプレーヤIDに対応する貸出履歴に、送信したキャラクタデータの登録番号を追加するとともに、その貸出回数を“1”と設定する。但し、既にその登録番号が記憶されている場合には、その貸出回数を“1”加算した値に更新する。また、キャラクタ貸出表850において、送信したキャラクタデータの登録番号に該当する「貸出回数」を、“1”加算した値に更新する。
また、ゲーム端末20より、ランキングデータの送信が要求された場合(ステップS57:YES)、キャラクタ貸出部720は、貸出ランキング表870に基づくランキングデータを、ゲーム端末20に対して送信する(ステップS58)。
また、ゲーム端末20において、PC50の「酒場」からの退出が指示され、接続中の通信回線(電気的な通信路)が切断されたことを確認した場合(ステップS59:YES)、キャラクタ貸出部720は、本処理を終了する。
次に、図22(a)に、本実施形態のゲーム端末20を、業務用ゲーム装置に適用した場合の例を示す。プレーヤは、ディスプレイ1100上に映し出されたゲーム画像を見ながら、レバー1102、ボタン1104等を操作してゲームを楽しむ。内蔵されるシステムボード(サーキットボード)1106には、各種プロセッサ、各種メモリなどが実装される。そして、本発明を実行するための情報(プログラム、データ)は、システムボード1106上の情報記憶媒体であるメモリ1108に格納される。以下、この情報を格納情報と呼ぶ。
同図(b)に、本実施形態のゲーム端末20を、家庭用のゲーム装置に適用した場合の例を示す。プレーヤはディスプレイ1200に映し出されたゲーム画像を見ながら、ゲームコントローラ1202,1204を操作してゲームを楽しむ。この場合、上記格納情報は、本体装置に着脱自在な情報記憶媒体であるCD(DVD)1206、或いはメモリカード1208、1209等に格納されている。
更に、本実施形態のゲーム端末20を実現する具体例として、上記業務用ゲーム装置、或いは家庭用ゲーム装置に限ることなく、例えば、携帯用ゲーム装置、パーソナルコンピュータ、携帯端末(携帯電話機を含む)、キオスク端末などに適用することも勿論可能である。
また、ゲーム端末20及びサーバシステム30を実現できるハードウェアの構成の一例について図23を用いて説明する。同図に示す装置では、CPU1000、ROM1002、RAM1004、情報記憶媒体1006、音生成IC1008、画像生成IC1010、I/Oポート1012、1014が、システムバス1016により相互にデータ入出力可能に接続されている。そして、画像生成IC1010には表示装置1018が接続され、音生成IC1008にはスピーカ1020が接続され、I/Oポート1012にはコントロール装置1022が接続され、I/Oポート1014には通信装置1024が接続されている。
情報記憶媒体1006は、プログラム、表示物を表現するための画像データ、音データ、プレイデータ等が主に格納されるものであり、図9の記憶部500或いは図13の記憶部800に相当するものである。例えば家庭用ゲーム装置では、ゲームプログラム510等を格納する情報記憶媒体1006としてCD−ROMやDVD−ROM、ゲームカセット等が用いられ、キャラクタDB540を格納する情報記憶媒体1006としてメモリカードなどが用いられる。また、パーソナルコンピュータでは、CD−ROM、DVD、ハードディスクなどが用いられる。また、業務用ゲーム装置では、ROM等のハードディスクが用いられ、この場合には、情報記憶媒体1006はROM1002になる。
コントロール装置1022は、ゲームコントローラ、操作パネル等に相当するものであり、ユーザがゲーム進行に応じて行う判断の結果を装置本体に入力するための装置である。このコントロール装置1022は、図9の操作部100に相当する。
情報記憶媒体1006に格納されるプログラムやデータ、ROM1002に格納されるシステムプログラム(装置本体の初期化情報等)、コントロール装置1022によって入力される信号等に従って、CPU1000は装置全体の制御や各種データ処理を行う。RAM1004はこのCPU1000の作業領域として用いられる記憶手段であり、1フレーム分の画像データやプレイデータが一時的に格納されたり、情報記憶媒体1006やROM1002の所与の内容、或いはCPU1000の演算結果等が格納される。
更に、この種の装置には音生成IC1008と画像生成IC1010とが設けられていてゲーム音やゲーム画像の好適な出力が行えるようになっている。
音生成IC1008は、情報記憶媒体1006やROM1002に記憶される情報に基づいて効果音やバックグラウンド音等のゲーム音を生成する集積回路であり、生成されたゲーム音はスピーカ1020によって出力される。
また、画像生成IC1010は、RAM1004、ROM1002、情報記憶媒体1006等から送られる画像情報に基づいて表示装置1018に出力するための画素情報を生成する集積回路である。また表示装置1018は、CRTやLCD、TV、プラズマディスプレイ、プロジェクタ等により実現され、図9の表示部300に相当する。
また通信装置1024はゲーム装置内部で利用する各種の情報を外部にやりとりするものであり、他のゲーム装置と接続されてゲームプログラム510に応じた所与の情報を送受したり、所与の通信回線を介してゲームプログラム510等の情報を送受すること等に利用される。この通信装置1024は、図9の通信部200、或いは図13の通信部600に相当する。
そして、ゲーム進行処理等をはじめとした各種処理は、図9のゲームプログラム510、キャラクタ登録プログラム520、及びキャラクタ貸出プログラム530、或いは、図13のキャラクタ登録プログラム810とキャラクタ貸出プログラム820、等を格納した情報記憶媒体1006と、該プログラムに従って動作するCPU1000、画像生成IC1010、音生成IC1008等によって実現される。CPU1000及び画像生成IC1010は、図9の処理部400或いは図13の処理部700に該当するものであり、主にCPU1000がゲーム演算部420等に、画像生成IC1010が画像生成部410に、該当する。
尚、画像生成IC1010、音生成IC1008等で行われる処理は、CPU1000或いは汎用のDSP等によりソフトウェア的に行ってもよい。この場合には、CPU1000が、処理部700に該当することとなる。
尚、本発明は、上記実施の形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更可能である。例えば、以下のような変更が考えられる。
(1)プレーヤの入力条件に応じて、サーバシステム30に登録されているキャラクタの中から、この入力条件を満たすキャラクタを検索し、候補キャラクタとして提示する。
具体的には、例えば図3に示す「酒場」において、主人キャラクタ70に話し掛けると、続いて、キャラクタ検索画面が表示される。図24は、キャラクタ検索画面の一例を示す図である。図24において、キャラクタ検索画面には、冒険予定の場所、仲間にしたいキャラクタの数やそのレベル、といった検索条件が用意されている。プレーヤは、このキャラクタ検索画面において、仲間にしたいキャラクタの検索条件を入力する。そして、「仲間キャラクタを検索する」を選択すると、入力内容がサーバシステム30に送信され、サーバシステム30において、候補キャラクタが抽出される。続いて、候補キャラクタ一覧が、ゲーム端末20において表示される。
図25は、候補キャラクタ一覧の一例を示す図である。ここで提示される候補キャラクタは、サーバシステム30に登録されているキャラクタの内、上記キャラクタ検索画面において入力された検索条件を満たすキャラクタである。プレーヤは、提示されるこれらの候補キャラクタの中から、希望のキャラクタを選択する。そして、この選択したキャラクタが、仲間キャラクタとして、以降の冒険に同行することとなる。
このことにより、プレーヤは、サーバシステム30に登録されている複数のキャラクタの中から、希望条件に合致するキャラクタを容易に見つけ出し、仲間とすることができる。そして、この検索手段は、登録されているキャラクタ数が多いほど、有効である。
また、キャラクタ検索画面(図24参照)において、プレーヤの希望する検索条件を、文章で入力することもできる。その際には、入力される文章に含まれるキーワードに基づいて、登録されているキャラクタの中から、検索条件を満たすキャラクタを抽出し、候補キャラクタとして提示するように構成する。
また、このキャラクタ検索画面は、冒険の開始時に表示させることもできる。更に、例えばゲーム進行状況(プレイ履歴)など、プレーヤの個人情報を、検索条件とすることもできる。
(2)キャラクタの登録の際に、そのキャラクタに対するコメントを付加する。
具体的には、キャラクタ登録画面(図2参照)において、登録するキャラクタに対するコメントを入力するためのコメント入力領域を表示させる。そして、このコメント入力領域に入力されるコメントと共に、キャラクタの登録を行う構成とする。即ち、ゲーム端末20において、該当するキャラクタデータとともに、入力されたコメントを、サーバシステム30に対して送信し、キャラクタの登録を要求する。また、サーバシステム30においては、送信されるこれらのコメントを、ともに送信されるキャラクタデータと対応付けて記憶する。このように付加されたコメントは、例えば「酒場」(図3参照)や候補キャラクタ一覧(図23参照)において、該当するキャラクタとともに表示される。このことにより、プレーヤは、キャラクタとともに表示される登録者のコメントを、仲間とするキャラクタを選択する際の参考とすることができる。
(3)貸出したキャラクタに対する評価や感想等を入力する。
具体的には、ゲーム端末20において、キャラクタを貸出したプレーヤがそのキャラクタに対する評価や感想等を入力するための評価入力画面を表示する。そして、サーバシステム30においては、ゲーム端末20において、入力されたこれらの評価や感想等を、対象となるキャラクタデータと対応付けて記憶する。このように入力された評価や感想等は、例えば「酒場」(図3参照)や候補キャラクタ一覧(図23参照)において表示される。このことにより、プレーヤは、キャラクタとともに表示される評価や感想等を、仲間とするキャラクタを選択する際の参考とすることができる。
(4)キャラクタのセリフに対する語尾設定を行う。
具体的には、例えばキャラクタ登録の際に、プレーヤは、登録するキャラクタに対する語尾設定を行う。そして、ゲーム端末20は、設定された語尾データを、該当するキャラクタデータに含まれる個性として記憶させる。即ち、例えば語尾を“にょ”と設定したとする。すると、初期値として“お願いします!”と予め設定されているセリフは、該キャラクタについては、以降、“お願いしますにょ!”と表示されることとなる。
ところで、上記実施形態においては、予めセリフデータに設定されるセリフによりキャラクタ(NPC)の個性が表現されることとなるが、この語尾設定により、キャラクタのセリフ全てに対して、該キャラクタの個性を反映することが可能となる。尚、この語尾設定は、例えば冒険中など、キャラクタの登録以前に予め行うこともできる。
(5)ランキング一覧表(図5参照)を、プレーヤの年齢や性別等に分類し、集計・表示する。
具体的には、ランキング管理部740が、プレーヤ管理表830に基づいて、例えば年代別(10代、20代、30代、・・)や性別(男性、女性)など、更に詳細に分類した項目に応じて、貸出ランキング表870の作成・更新を行う。また、プレーヤ管理表830におけるプレーヤ関連情報に基づいて、例えばプレーヤの年代や性別に該当するランキング一覧表を選択し、表示させることも可能である。このことにより、プレーヤは、例えば自分の年代に該当するプレーヤに人気の高いキャラクタといったものを容易に知ることが可能となり、仲間とするキャラクタを選択する際の参考とすることができる。
また、本実施形態においては、PCを、NPCとしてサーバシステム30に登録することとしたが、プレーヤが新たに作成したキャラクタ(NPC)を登録することとしてもよい。
また、プレーヤの入力する検索条件や、キャラクタ(NPC)に設定するセリフ等の入力を、マイク等の音声入力手段を介した音声入力により実現することも可能である。
尚、本実施の形態は、ネットワークゲームと呼ばれているゲームに本発明を適用する場合の実施形態である。ネットワークゲームを実現する形態としては、例えば、(1)家庭に設置してあるパソコンや家庭用ゲームシステム等をゲーム端末とし、インターネット網や専用線網等の通信回線を通じてサーバと接続する形態、(2)複数のゲーム端末同士を通信回線で接続し、親機と子機のような構成とする形態、(3)複数のゲーム端末同士を通信回線で接続し、その内の一台がサーバ機能を有する形態、(4)複数のゲーム端末が物理的に結合した、全体として一台のシステム(例えば業務用のゲームシステム)となっている形態、などがある。本発明は何れの形態に対しても適用可能であるが、本実施の形態においては、(1)ゲーム端末と、サーバーとを所与の通信回線で接続した形態として説明を行った。
本発明によれば、ゲーム端末20において、PCに係るキャラクタデータをサーバシステム30に送信することにより、キャラクタの登録を実現することが可能となる。更に、サーバシステム30に記憶されているキャラクタ情報を取得することにより、登録されているキャラクタの貸出しを実現することが可能となる。また、ゲーム端末20外部からキャラクタデータを取得することにより、プレーヤにとっては、ゲーム端末20に予め用意されているNPCとは異なる新たなNPCを仲間にすることができる。このことにより、仲間とするNPCに飽きてしまい、ゲームに対する面白味を損なうといったことを防止することができる。