JP4183866B2 - データベースの更新方法、及び記憶媒体 - Google Patents
データベースの更新方法、及び記憶媒体 Download PDFInfo
- Publication number
- JP4183866B2 JP4183866B2 JP31752199A JP31752199A JP4183866B2 JP 4183866 B2 JP4183866 B2 JP 4183866B2 JP 31752199 A JP31752199 A JP 31752199A JP 31752199 A JP31752199 A JP 31752199A JP 4183866 B2 JP4183866 B2 JP 4183866B2
- Authority
- JP
- Japan
- Prior art keywords
- text data
- text
- database
- data
- communication device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
【発明の属する技術分野】
本発明は、テキストデータからなるデータベースの更新方法及びゲーム機,携帯電話,携帯情報端末,パーソナルコンピュータ等のようにテキストを出力できる出力部とテキストを入力する入力部とを有し、他の装置との間で、テキストを送受信できる装置を含むテキスト通信システムに関するものである。
【0002】
【従来の技術】
従来、この種のテキスト通信システムとしては、例えば、パーソナルコンピュータとホストコンピュータとをインターネットを介して接続し、パーソナルコンピュータ上でゲームを行うシステムがあった。このようなテキスト通信システムでは、まず、設定されたストーリーに従って、ホストコンピュータからの質問としてのテキストと質問に対する複数の回答としてのテキストがユーザーのパーソナルコンピュータのディスプレイに表示される。ここで、ユーザーが、複数の回答の中から適当なものを選択して入力すると、その情報がホストコンピュータ側へ送信され、選択された回答に対応するテキストとそれに対する複数の回答が抽出されて再びユーザーのパーソナルコンピュータのディスプレイに表示される。このようにして、対話形式でユーザーとホストとの間でテキストが送受信されることによってゲームが進行して行く。
【0003】
【発明が解決しようとする課題】
しかしながら、このようなシステムでは、ストーリーに沿って準備されたテキストの組み合わせに従い、自分又は自らが選択したキャラクタに扮して、他のキャラクタと対話することとなるため、設定された仮想のキャラクタとの対話であるとの感覚が強く、リアリティに乏しいものであった。
【0004】
また、ストーリーも予め設定された所定数のテキスト群から選択されるテキストのやりとりによって進行するため、展開のバラエティが限られてしまい、回数を重ねることによって飽きが生じていた。
【0005】
本発明は上記の従来技術の課題を解決するためになされたもので、その目的とするところは、リアリティにあふれて飽きの来ないストーリー展開が可能なデータベース及びテキスト通信システムを提供することにある。
【0006】
【課題を解決するための手段】
上記目的を達成するために本発明は、ストーリーの展開に伴って階層間を移動するように、テキストデータ間の親子関係が定義付けられた、階層構造を有する複数のテキストデータからなるデータベースの更新方法であって、テキスト通信装置との間でネットワークを介した通信が可能であり、且つ、前記データベースを備える、ホスト通信装置が、前記データベースから読み出した第1のテキストデータを前記テキスト通信装置に送信し出力させるステップと、前記テキスト通信装置において入力された第2のテキストデータを前記テキスト通信装置から受信するステップと、前記第2のテキストデータを前記第1のテキストデータの子として前記データベースに登録するステップと、前記第2のテキストデータに近似する第3のテキストデータを前記データベースから検索するステップと、検索された第3のテキストデータを親とする第4のテキストデータを前記データベースから検索するステップと、検索された第4のテキストデータが前記第3のテキストデータの子であるだけでなく前記第2のテキストデータの子にもなるように、前記データベースにおける前記第2のテキストデータと前記第4のテキストデータの間の親子関係の定義付けを変更するステップと、を実行するデータベースの更新方法である。ここで、前記ホスト通信装置が、前記第2のテキストデータを、前記テキスト通信装置とは異なる他のテキスト通信装置に送信し出力させるステップと、前記他のテキスト通信装置において入力された第5のテキストデータを前記他のテキスト通信装置から受信するステップと、前記第5のテキストデータを前記第2のテキストデータの子として前記データベースに登録するステップと、を実行するとよい。また、前記ホスト通信装置が、前記第5のテキストデータが前記第2のテキストデータの子であるだけでなく前記第3のテキストデータの子にもなるように、前記データベースにおける前記第3のテキストデータと前記第5のテキストデータの間の親子関係の定義付けを変更するステップを実行するとよい。
【0007】
このように、第1のテキストデータを出力し、実際に入力されて初めて第1のテキストデータに対して子として定義できるような第2のテキストデータを新たに入力させて、入力された第2のテキストデータをいずれかのテキストデータの親として定義することにより、新たに入力されたテキストデータをデータベースに取り込むことができる。取り込まれたテキストデータは、実際に特定の人によって入力されたものであるから、リアリティがある。また、新たに取り込まれた第2のテキストデータは、第1のテキストデータに対して子として既に定義されていたものではないので、ストーリーを豊富にすることができ、飽きが来ない。
【0009】
ここで、テキストデータの近似性については、例えば、テキストデータから抽出されたキーワードとの一致数又は共起語の出現数等種々の条件で判断することができるが、これに限られない。
【0011】
また、前記テキストデータはゲームにおける複数のキャラクタ間の対話において交換されるメッセージを構成するものであってもよい。
【0012】
このように、複数のキャラクタ間でメッセージを交換するゲームのメッセージのデータベースに本発明を適用すると、プレイヤーに対してキャラクタから提示されるメッセージが実在の他のプレイヤーが以前に入力したテキストデータである可能性もあるので、キャラクタのリアリティが増す。また、種々の異なる感性を持ったプレイヤーが入力した個性的なテキストデータを取り込むことができるので、ストーリー展開を豊富にでき、飽きの来ないゲームを実現することができる。
【0013】
また、本発明は、上記データベースの更新方法における各ステップを、前記ホスト通信装置に実行させるためのプログラムを記憶させたコンピュータで読み取り可能な記憶媒体である。
【0014】
ここで、記憶媒体にはFD(フレキシブルディスク),CD−ROM,DVD−ROM,HD(ハードディスク)等が含まれるが、プログラムを記憶あるいは保持させることのできるものであればこれらに限られない。
【0016】
【発明の実施の形態】
以下に図面を参照して、この発明の好適な実施の形態を説明する。
【0017】
図1は、本発明の第1の実施の形態に係るテキスト通信システムの主要部の概略構成を示したブロック図である。
【0018】
まず、本テキスト通信システムは、主として、入出力装置1と算出装置2とからなる。入出力装置1は、テキスト(文章)の入出力が可能なものであればよく、例えば、テキストを表示するディスプレイ等の表示部11とテキストの選択あるいは文字入力等の入力を行う入力部とプログラムを格納するROM(リードオンリーメモリ),データ等を格納するRAM(ランダムアクセスメモリ)等の記憶部と種々の演算,論理判断及び制御を行うCPU(セントラルプロセッシングユニット)とを備え、モデム等の通信装置にインターフェースを介して接続される通信機能を備えたゲーム機,携帯情報端末,パーソナルコンピュータ,携帯電話等によって構成することができる。算出装置2は、入出力装置1から入力されたテキストに応じたテキストを抽出して入出力装置1に出力させるものであればよく、例えば、ROM,RAM及びHD(ハードディスク)等の記憶部とCPUとを備え、ターミナルアダプタ等の通信装置にインターフェースを介して接続されるコンピュータによって構成することができる。ここでは、入出力装置1がテキスト通信装置に相当し、算出装置2がホスト通信装置に相当する。また、表示部11が質問表示部,回答表示部に相当する。さらに図示しない入力部が回答入力部,選択入力部及び自由入力部に相当する。
【0019】
入出力装置1と算出装置2とは、公衆電話回線,ISDN回線,ケーブルテレビ用通信線,専用線等の有線の通信ネットワークによって接続されていてもよいし、携帯電話網等の無線の通信ネットワークによって接続されていてもよい。また、これらのネットワークを介したインターネットで接続されていてもよい。
【0020】
算出装置2は、主として、入力種別判定機(入力テキスト判定部)3,自然言語解析機4,結線データ変更機(テキスト関係変更部)5,文章データ記憶装置(テキスト保持部)6,結線データ記憶装置(テキスト関係保持部)7及び出力文章作成機(質問抽出部,回答抽出部)8とからなる。ここで、結線データ変更機5は、後述するように、結線データ変更機1と結線データ変更機2とからなる。
【0021】
このようなシステムを用いてゲームを行う場合を例として説明する。
【0022】
ゲームのストーリーは、「昨日、インターネットで『大事件』が起きた。翌日の朝のニュースで大きく報道され、事件の首謀者のひとりである『女』は、苦悩する。『男』はたわいもない間違いメールがきっかけで『女』と知り合う」、という設定である。プレイヤーはストーリー上で「男」又は「女」のいずれかに扮する。プレイヤーが「男」を選択した場合には、入出力装置1の表示部11には、「女」からのメールが表示されるとともに、そのメールに対して「男」から返信するメッセージの選択肢が表示される。プレイヤーが選択肢のいずれかを選択すると、そのメールに対する「女」からのメールと、「男」から返信するメッセージの選択肢がさらに表示される。このようにして、「男」と「女」との間で電子メールのやりとりを行うことにより、ゲームが進行する。プレイヤーが「女」を選択した場合も同様に、「男」と「女」が入れ替わった形でゲームが進行する。
【0023】
(全体の流れ)
図2にゲームの全体の流れを示す。
【0024】
まず、プレイヤーは、自分が「男」か「女」かを選択する(ステップ1)。キャラクタの選択は、例えば、ディスプレイ上に「男」,「女」の文字を表示し、カーソル等のポインタをいずれかの表示領域に移動させてボタンを押す等の入力部の操作によって行う。算出装置2側では、プレイヤーによって選択された情報をmychar_noとし、選択されなかった相手方の情報をyouchar_noと定義し、プレイヤーが男を選択した場合にはmychar_no=0,youchar_no=1と設定し、女を選択した場合にはmychar_no=1,youchar_no=0と設定する。
【0025】
次に、算出装置2において、表示する質問とその質問に対する選択肢を算出する(ステップ2)。
【0026】
次に、プレイヤーがゲームの終了を指示しているか否かを判定する(ステップ3)。終了を指示していない場合には、算出装置2において算出された質問と選択肢を入出力装置1に送信し、表示部11に表示させる(ステップ4)。選択肢には、表示部11に表示されるメッセージのいずれかを選択するものと、メッセージの表示と並んで又はその表示に代わってプレイヤーが自由に文字を入力できるフリーメール入力のための選択肢とがある。プレイヤーは表示部11に表示される質問を見て、表示されたメッセージのいずれかを選択するか、又はフリーメールの入力を行う(ステップ5)。算出装置2では、プレイヤーの入力に応じて、さらに表示する質問と選択肢の算出を行う。
【0027】
ステップ3において、プレイヤーがゲームの終了を指示している場合には、表示部11に終了画面を表示して(ステップ6)、ゲームを終了する。
【0028】
図3に、プレイヤーが「男」を選択した場合に、入出力装置1の表示部11に表示される「男」と「女」のメッセージの関係を示す。「男」と「女」のメッセージは階層構造を反映した樹形図で表現され、この階層構造においてメッセージはゲームのストーリーの展開に従って下方へと樹形図の階層間を移動するように関係づけられている。
【0029】
例えば、プレイヤーの入出力装置1の表示部11には、「男」からのメールとして「こんにちは!君の趣味は?」と「メール初心者です。ちょっと緊張してます。」の二つの選択肢が表示される。
【0030】
プレイヤーが「こんにちは!君の趣味は?」とのメッセージを選択すると、表示部11には「女」からのメールとして「私の趣味は歌うこと。カラオケ大好き!」と「趣味?んー、寝ることとか。」のいずれかが乱数,統計等を利用して選択され、表示される。
【0031】
一方、プレイヤーが「メール初心者です。ちょっと緊張してます。」とのメッセージを選択すると、表示部11には、この「男」からのメッセージに対応する「女」からのメールとして設定されている「私もはじめてなんだ。」と「メール大好き!よろしくね。」の二つのメッセージのうちからいずれかが乱数,統計等を利用して選択され、表示される。「女」からのメールとして「私もはじめてなんだ。」とのメッセージが選択されると、「男」からの返信メールとして「普段、なにしてるの?」と「そうなんですか」とプレイヤーが任意又は一定の制約内で任意のメッセージである「フリーメール」入力の選択肢が表示される。プレイヤーが「普段、なにしてるの?」を選択すると、「女」からのメールとして「ひまな時はTV見てる、今朝のNEWS、すごかった!」と「パソコンとか好きだよ。昨日の事件も……、あ、なんでもないの。」の二つのメッセージのうちのいずれかが乱数,統計を利用して選択されて表示部11に表示される。
【0032】
図4に、プレイヤーが「女」を選択した場合に、入出力装置1の表示部11に表示される「女」と「男」のメッセージを同様の樹形図で示す。
【0033】
ここでは、「男」からのメッセージとして、「こんにちは!君の趣味は?」と「メール初心者です。ちょっと緊張してます。」の二つのメッセージのうちのいずれかが乱数,統計等を利用して選択されて入出力装置1の表示部11に表示される。
【0034】
「メール初心者です。ちょっと緊張してます。」が選択されて表示された場合には、これに対する「女」からのメールとして「私もはじめてなんだ。」と「メール大好き!よろしくね。」の二つのメッセージが表示され、プレイヤーはいずれかのメッセージを選択することができる。
【0035】
プレイヤーが「私もはじめてなんだ。」を選択すると、「男」からの返信メールとして「普段、なにしてるの?」と「そうなんですか」の二つのメッセージのうちのいずれかが乱数,統計等を利用して選択して表示される。
【0036】
以下、同様にプレイヤーが「男」を選択した場合と「女」を選択した場合とで、相手から自分に送られるメールと自分から相手に送るメールとが表裏の関係をなす形でゲームが進行して行く。
【0037】
(算出装置における処理)
図5に示すフローチャートに従って、算出装置2における処理手順を説明する。 まず、算出装置2では、データ入力の調査を行う(ステップ11)。
【0038】
次に、入力種別判定機の処理を行う(ステップ12)。ここでは、入出力装置からの入力が選択肢の選択であるかフリーメールの入力であるかの判定を行う。入力種別判定機は、例えば、ROM,RAM及びCPUから構成され、ROMに格納された判定プログラムをレジスタ上に展開し、RAMに保持された入力データを読み出し、CPUで実行することによって行う。
【0039】
ステップ12において、入力の種別が選択肢であれば、ステップ19に進み、出力文章作成機8における処理を行う。一方、ステップ12において、入力の種別がフリーメール入力であれば、一定時間待機し(ステップ13)、自然言語解析機4において後述する自然言語解析処理を行う(ステップ14)。
【0040】
自然言語解析機4においては、入力データがエラーか否かを判定する(ステップ15)。ここで、エラーと判定されれば、ステップ19に進み、出力文章作成機8における処理を行う。一方、エラーと判定されなければ、解析結果を結線データ変更機1に送り、後述する結線データ変更処理を行う(ステップ16)。結線データ変更機1における処理の後に、一定時間待機し(ステップ17)、結線データ変更機2において、後述する結線データ変更処理を行う(ステップ18)。結線データ変更機2における処理の後に、出力文章作成機8における出力文章作成処理を行う(ステップ19)。
【0041】
(出力文章作成機における処理)
ここで、出力文章作成機8における出力文章作成処理について説明する。出力文章作成機は、例えば、ROM,RAM,HD及びCPUから構成される。
【0042】
図6は、出力文章作成処理手順を示すフローチャートである。
【0043】
まず、出力文章作成機8は、入力されたフリーメールに対する文章ナンバー又はエラーコードのいずれかを受け取り、これをStrAnsNoと命名する(ステップ21)。
【0044】
ここで、ステップ21の処理について、図7を参照して、図3で示した樹形図でプレイヤーが「メール初心者です。ちょっと緊張してます。」を選択した場合を例として具体的に説明する。図7は文章データ記憶装置6に格納されている文章データのフォーマットである。図7を参照すると、プレイヤーが選択した「メール初心者です。ちょっと緊張してます。」の文章データには、文章ナンバー「0002」が付与されている。従って、この場合には、StrAnsNo=0002となる。図7に示すように、上述の「男」及び「女」のメッセージとなる文章データには、それぞれ文章ナンバーが付与されており、キャラクタの男女の区別を示すCHAR_Noが登録されている(CHAR_No=0が男,CHAR_No=1が女を示す。)。質問と回答とは、プレイヤーの選択したキャラクタに応じて入れ替わる。
【0045】
ステップ21において、文章ナンバーを受け取っている場合には(ステップ22)、結線データ記憶装置7からStrAnsNoに対応する次の質問をリストアップし(ステップ23)、リストアップされた文章のうちから、乱数発生機等を利用してStrAnsNoに対応する次の質問を決定し、StrNextQuesNoと命名する(ステップ24)。
【0046】
ステップ24の処理を上述の例に即して具体的に説明する。ここで、図8は結線データ記憶装置7に格納されている結線データのフォーマットを示す。
【0047】
図8を参照すると、0002に対応する次の質問となるのは、文章ナンバー「0016」,「0017」の文章データである。図7を参照すると、文章ナンバー「0016」,「0017」は、それぞれ「私もはじめてなんだ。」と「メール大好き!よろしくね。」との文章データに付与されていることがわかる。ここで、乱数等により「私もはじめてなんだ。」が選択されると、StrNextQuesNo=0016となる。
【0048】
ステップ24に続いて、結線データ記憶装置7からStrNextQuesNoに対応する次の回答をリストアップし、それらの集合をStrNextAnswersと命名する(ステップ25)。
【0049】
ステップ25の処理を上述の例に即して具体的に説明する。
【0050】
ここで、図8を参照すると、StrNextQuesNo=0016に対応する次の回答は、文章ナンバー「0018」,「0019」,「9999」である。従って、この場合には、StrNextAnswers=0018,0019,9999となる。
【0051】
ステップ25に続いて、StrNextQuesNoに対応する文章を次の質問として、StrNextAnswersに対応する文章を次の回答用選択肢として、入出力装置1に表示する準備を行い(ステップ26)、出力文章作成処理を終了する。
【0052】
ステップ26の処理を上述の例に即して具体的に説明する。
【0053】
上述のように、StrNextQuesNo=0016であり、StrNextAnswers=0018,0019,9999である。従って、文章ナンバー「0016」の「私もはじめてなんだ。」が次の質問として、文章ナンバー「0018」,「0019」,「9999」の「普段、なにしてるの?」,「そうなんですか」及びフリーメール入力のための選択肢が次の回答用選択肢として、表示部11に表示されることとなる。
【0054】
ステップ21でエラーコードを受け取った場合には、StrNextQuesNoを10000+youchar_noとし(ステップ27)、ステップ25に進む。
【0055】
ステップ27の処理を上述の例に即して具体的に説明する。
【0056】
プレイヤーは「男」を選択しているので、youchar_no=1である。従って、プレイヤーの入力したフリーメールの文章がエラーと判定された場合には、StrNextQuesNo=10001となる。図7を参照することにより、文章ナンバー10001の「ねえ、ねえ。話は変わるけど好きな食べ物は?」のメッセージが次の質問として表示部11に表示される。
【0057】
(自然言語解析機における処理)
次に、自然言語解析機4における自然言語解析処理について説明する。
【0058】
図9は、自然言語解析処理の手順を示すフローチャートである。
【0059】
自然言語解析機4は、例えば、ROM,RAM,HD及びCPUから構成され、ROMに格納された解析プログラムをレジスタ上に展開し、RAMに保持された入力データ及びHDに格納された解析テーブルを読み出し、CPUで実行することによって解析処理を行う。
【0060】
自然言語解析機4では、まず、フリーメールとして入力された文章の解析を行う(ステップ31)。次に、解析の結果がエラーであるか否かを判定する(ステップ32)。ここで、エラーでなければ、文章データ記憶装置6に入力されたメッセージを蓄積し(ステップ33)、当該メッセージの文章ナンバーを決定し(ステップ34)、文章ナンバーを出力する(ステップ35)。エラーであれば、エラーコードを決定し(ステップ36)、エラーコードを出力する(ステップ35)。
【0061】
ここで、自然言語解析処理について、上述の例に即して具体的に説明する。
【0062】
図3において「メール初心者です。ちょっと緊張してます。」を選択したプレイヤーが、「私もはじめてなんだ。」との「女」からのメールに対して、フリーメールを選択して入力した状態を図10に示す。プレイヤーは、フリーメールとして「昨日の事件は君のイタズラ?」という文章を入力している。
【0063】
ステップ31においては、文章の解析、すなわち、入力された文字列が文章を構成するか否かの解析を行う。プレイヤーが入力した文字列は上述のように文章を構成しているので、ステップ33,34に進み、文章データ記憶装置6に蓄積されるとともに文章ナンバーが決定される。図11は文章データ記憶装置6の文章データのフォーマットを示す。プレイヤーが入力した文章に文章ナンバー「0300」が付与され、「男」のメッセージとして登録されている。従って、この場合には、ステップ35において、該当する文章ナンバー「0300」を出力する。
【0064】
(結線データ変更機1における処理)
次に、結線データ変更機1における結線データ変更処理について説明する。結線データ変更機1は、例えば、ROM,RAM,HD及びCPUから構成される。
【0065】
図12は結線データ変更処理手順を示すフローチャートである。
【0066】
まず、結線データ変更機1では、入力データに付与された文章ナンバーを受け取り、これをStrAnsNoと命名する(ステップ41)。
【0067】
次に、結線データのフォーマットにおいて、StrAnsNoの前の選択肢に、StrAnsNoを加え、フリーメール入力の選択肢を削除する(ステップ42)。すなわち、ここでは、フリーメール入力の選択肢とStrAnsNoとを入れ換えている。
【0068】
次に、結線データフォーマットにおいて、StrAnsNoに続く質問データとして、フリーメール入力の選択肢を登録する(ステップ43)。
【0069】
次に、後述するフリーメールエリア(フリーメール入力の選択肢)作成機の処理を実行し(ステップ44)、結線データ変更機1の処理を終了する。
【0070】
ここで、結線データ変更処理について、上述の例に即して具体的に説明する。
【0071】
ステップ41の処理では、上述のフリーメールとして入力された文章ナンバーが「0300」であるから、StrAnsNo=0300となる。
【0072】
文章ナンバー「0300」の前の文章は「私も初めてなんだ。」であり、文章ナンバーが「0016」であるから、StrAnsNoの前の選択肢は文章ナンバー「0018」,「0019」,「9999」である(図8参照)。従って、ステップ42の処理においては、文章ナンバー「0016」の選択肢を「0018」,「0019」,「0300」とする。このように変更した状態での図3に対応する樹形図を図13に示す。プレイヤーが入力した文章が、「女」からの「私も初めてなんだ。」とのメールに対応する「男」からのメールの選択肢として登録されている。
【0073】
続くステップ43の処理として、文章ナンバー「0300」に続く質問データとしてフリーメール入力の選択肢を示す文章ナンバー「9999」を登録する。このように変更した状態を示す結線データフォーマットが図14であり、樹形図が図15である。
【0074】
次に、ステップ44として後述するフリーメールエリア作成機の処理を実行し、結線データ変更機1の処理を終了する。
【0075】
(フリーメールエリア作成機における処理)
次に、フリーメールエリア作成機におけるフリーメールエリア作成処理について説明する。フリーメールエリア作成機は、例えば、ROM,RAM,HD及びCPUから構成される。
【0076】
図16は、フリーメールエリア作成処理手順を示すフローチャートである。
【0077】
まず、結線データ記憶装置7のデータを先頭からひとつずつ読み出すために、読み出しポインタを0に設定する(ステップ51)。
【0078】
次に、配列変数fmn[]を用意し初期化する(ステップ52)。
【0079】
次に、結線データ記憶装置7のデータを、読み出しポインタの位置からひとつ読み出し(ステップ53)、回答ナンバーに9999(すなわちフリーメールエリア)が存在するか否かを判定する(ステップ54)。
【0080】
ステップ54において、回答ナンバーに9999が存在すれば、読み出したデータの深度を計算してsel_numberとし、fmn[sel_number/5]に1を加え(ステップ55)、結線データ記憶装置7の読み出しポインタに1を加える(ステップ56)。ここで、データの深度とは、当該データが結線データ記憶装置のデータのうちで最初から何番目に現れる選択肢であるかという情報である。
【0081】
ステップ54において、回答ナンバーに9999が存在しなければ、ステップ56に進む。
【0082】
ステップ56で結線データ記憶装置7の読み出しポインタに1を加えた後に、結線データ記憶装置7のデータを最後まで読んだか否かを判定する(ステップ57)。ここで、データを最後まで読んでいなければ、ステップ53に戻り、次のデータを読み出し同様の処理を行う。一方、データを最後まで読んでいれば、配列変数fmn[]を最初の要素からひとつずつ読み出すために、読み出しポインタskを0にする(ステップ58)。
【0083】
次に、fmn[sk]からデータを読み出し(ステップ59)、fmn[sk]から読み出されたデータが一定値を超えているか否かを判定する(ステップ60)。
【0084】
ステップ60において、fmn[sk]から読み出されたデータが一定値を超えていなければ、結線データの深度をnとし、sk×5≦n<(sk+1)×5であり、かつ回答ナンバーに9999を持たない結線データの集合の中から、ランダムに1つを選び、回答ナンバーに9999を加え、回答数に1を加える(ステップ61)。
【0085】
ステップ60において、fmn[sk]から読み出されたデータが一定値を超えていれば、fmn[]を最後まで読んだか否かを判定する(ステップ62)。ステップ61の処理が終了した後も同様にステップ62へと進む。
【0086】
ステップ62において、fmn[]を最後まで読んでいれば、フリーメールエリア作成処理を終了し、fmn[]を最後まで読んでいなければ、skに1を加え(ステップ63)、ステップ59に戻り次のデータを読み出して同様の処理を行う。
【0087】
上述の処理では、概略、結線データをいくつかのデータ群に分割し、フリーメールエリアの少ないデータ群に対してはフリーメールエリアを新たに設定している。従って、フリーメールエリアを均等に自動生成し、プレイヤーの興味を常にひきつけるとともに、リアリティの増大及びストーリー展開の豊富化を保障することができる。
【0088】
(結線データ変更機2における処理)
次に、結線データ変更機2における結線データ変更処理について説明する。結線データ変更機2は、例えば、ROM,RAM,HD及びCPUから構成される。
【0089】
図17は、結線データ変更処理手順を示すフローチャートである。
【0090】
まず、結線データ変更機2では、入力されたフリーメールに付与された文章ナンバーを受け取り、これをStrAnsNoと命名する(ステップ71)。
【0091】
次に、文章データ記憶装置6から、StrAnsNoの文章に似た内容の文章を検索し、StrLikeと命名する(ステップ72)。
【0092】
ステップ72において、StrAnsNoの文章に似た内容の文章が見つかった場合には、StrLikeに続く選択肢をStrAnsNoに続く選択肢に加える(ステップ73,74)。次に、StrAnsNoに続く選択肢をStrLikeに続く選択肢に加え(ステップ75)、ステップ72に戻って検索を繰り返す。
【0093】
ステップ72において、StrAnsNoの文章に似た内容の文章が少なくともひとつは見つかっている場合には(ステップ76)、結線データ変更処理を終了する。
【0094】
ステップ72において、StrAnsNoの文章に似た内容の文章がひとつも見つかっていない場合には(ステップ76)、StrAnsNoに有効な選択肢がないか否かを判定する(ステップ77)。
【0095】
ステップ77において、StrAnsNoに有効な選択肢がある場合には、結線データ変更処理を終了する。
【0096】
ステップ77において、StrAnsNoに有効な選択肢がない場合には、エラーコードを出力し(ステップ78)、結線データ変更処理を終了する。
【0097】
ここで、結線データ変更処理について、上述の例に即して具体的に説明する。図5に示すように、結線データ変更機1と結線データ変更機2との処理の間で一定時間待機するので、文章ナンバー「0300」に続く質問データとして設定されたフリーメール入力の選択肢に対して(図12のステップ43参照)、「女」を選択した他のプレイヤーがフリーメールを入力する場合がある。以下では、このように展開した例に即して説明する。
【0098】
まず、図18に、「女」を選択したプレイヤーから見た樹形図である図4に従って他のプレイヤーのプレイ内容を示す。プレイヤーは、「メール初心者です。ちょっと緊張してます。」との「男」からのメールに対して「私も初めてなんだ。」を選択し、これに対して算出装置2が「昨日の事件は君のイタズラ?」を選択し「男」からのメールとして表示部11に表示している。このメールに対する回答としてフリーメール入力の選択肢が設定されているので、プレイヤーは「一体、どれだけ私の事を知っているというの?昨日の事件のことなんて、なんにも知らないクセに!」と入力している。この入力データに対して自然言語解析機4及び結線データ変更機1の処理が行われる。すなわち、文章データ記憶装置6に蓄積されるとともに文章ナンバー0301を付与され、0300の選択肢に0301が加えられてフリーメール入力の選択肢が削除され、0301に続く質問データとしてフリーメール入力の選択肢が設定されている。このように変更された文章データ記憶装置6の文章データのフォーマットと結線データ記憶装置7の結線データフォーマットとを図19及び図20に示す。 この場合の結線データ変更機2の処理において、ステップ71の処理では、StrAnsNo=0300である。
【0099】
続くステップ72の処理において、文章ナンバー「0300」の文章に似た内容の文章として文章ナンバー「0007」の「昨日の事件も君の趣味なの?」が該当するので、検索の結果、StrLike=0007となる。
【0100】
ステップ74の処理において、文章ナンバー「0007」に続く選択肢は図20を参照すると文章ナンバー「0011」及び「0012」の文章である。従って、文章ナンバー「0011」及び「0012」の文章をStrAnsNo=0300の選択肢に加える。さらに、ステップ75の処理において、StrAnsNo=0300に続く選択肢である文章ナンバー「0301」をStrLike=0007の選択肢に加える。このように変更された結線データのフォーマットを図21に、「男」を選択したプレイヤーのためのメッセージ間の関係を表す樹形図を図22に示す。
【0101】
文章ナンバー「0300」の文章に似た内容の文章は文章ナンバー「0007」の文章のみであるので、ステップ76における判定でNoとなり結線データ変更処理を終了する。
【0102】
以上、本発明の実施形態に係るテキスト通信システムについて「男」と「女」がメールをやりとりして進行するゲームを例として説明した。フリーメール入力の選択肢に対して「男」を選択したプレイヤー(「女」を選択した場合も同様)が入力した文章が、ゲームの進行に伴って出力される文章データの一つとして取り込まれる。すなわち、新たに入力されたテキストデータが出力されるテキストデータのデータベースに登録され他のテキストデータと関係付けられることにより、データベースが更新され、当該新たに入力されたテキストデータを含むストーリーが創出される。このようにして取り込まれたテキストデータは、「男」から「女」を選択したプレイヤーへのメールとしてあるいは「男」を選択したプレイヤーから「女」へのメールの選択肢として出力されることとなる。このように、プレイヤーは、他のプレイヤーが実際に入力したテキストを相手からのメールとして受け取ることができ、展開によっては自らも自由にメールを入力できるので、プレイヤーにとっても実在の相手とメールをやりとりするかのような感覚を味わうことができ、ゲームのリアリティが増す。また、プレイヤーの入力によってテキストデータ及びストーリーが増殖して行くので、繰り返しゲームをする場合でもプレイヤーを飽きさせることがない。また、上述の例では設定されているキャラクタは2人であるが、3人以上のキャラクタの間で会話が行われるような設定の場合にも同様に本発明を適用することができる。
【0103】
【発明の効果】
以上説明したように、本発明によれば、ストーリーの展開に伴って階層間を移動するように互いに関係付けられたテキストデータからなる階層構造を有するデータベースにおいて、現実に自由に入力されたテキストデータを取り込むことができるので、リアリティにあふれ飽きの来ないストーリー展開が可能となる。
【図面の簡単な説明】
【図1】図1は、本発明の実施形態に係るメッセージ通信システムの主要部の概略構成を示したブロック図である。
【図2】図2はゲームの全体の流れを示すフローチャートである。
【図3】図3はプレイヤーが「男」を選択した場合に入出力装置の表示部11に表示される「男」と「女」のメッセージの関係を示すカード図である。
【図4】図4はプレイヤーが「女」を選択した場合に入出力装置の表示部11に表示される「女」と「男」のメッセージの関係を示すカード図である。
【図5】図5は算出装置における処理手順を示すフローチャートである。
【図6】図6出力文章作成機における処理手順を示すフローチャートである。
【図7】図7は文章データ記憶装置に格納されている文章データフォーマットの構成を示す図である。
【図8】図8は結線データ記憶装置に格納されている結線データフォーマットの構成を示す図である。
【図9】図9は自然言語解析機における処理手順を示すフローチャートである。
【図10】図10はプレイヤーのプレイ内容を示すカード図である。
【図11】図11は文章データ記憶装置に格納されている文章データフォーマットの構成を示す図である。
【図12】図12は結線データ変更機1における処理手順を示すフローチャートである。
【図13】図13は結線データ変更機1の処理によって変更された状態を示すカード図である。
【図14】図14は結線データ変更機1の処理によって変更された状態を示す結線データフォーマットの構成を示す図である。
【図15】図15は結線データ変更機1の処理によって変更された状態を示すカード図である。
【図16】図16はフリーメールエリア作成機における処理手順を示すフローチャートである。
【図17】図17は結線データ変更機2における処理手順を示すフローチャートである。
【図18】図18「女」を選択したプレイヤーのプレイ内容を示すカード図である。
【図19】図19は結線データ変更機2の処理によって変更された文章データフォーマットの構成を示す図である。
【図20】図20は結線データ変更機2の処理によって変更された結線データフォーマットの構成を示す図である。
【図21】図21は結線データ変更機2の処理によって変更された結線データフォーマットの構成を示す図である。
【図22】図22は「男」を選択したプレイヤーのためのメッセージ間の関係を示すカード図である。
【符号の説明】
1 入出力装置
2 算出機
3 入力種別判定機
4 自然言語解析機
5 結線データ変更機
6 文章データ記憶装置
7 結線データ記憶装置
8 出力文章作成機
Claims (5)
- ストーリーの展開に伴って階層間を移動するように、テキストデータ間の親子関係が定義付けられた、階層構造を有する複数のテキストデータからなるデータベースの更新方法であって、
テキスト通信装置との間でネットワークを介した通信が可能であり、且つ、前記データベースを備える、ホスト通信装置が、
前記データベースから読み出した第1のテキストデータを前記テキスト通信装置に送信し出力させるステップと、
前記テキスト通信装置において入力された第2のテキストデータを前記テキスト通信装置から受信するステップと、
前記第2のテキストデータを前記第1のテキストデータの子として前記データベースに登録するステップと、
前記第2のテキストデータに近似する第3のテキストデータを前記データベースから検索するステップと、
検索された第3のテキストデータを親とする第4のテキストデータを前記データベースから検索するステップと、
検索された第4のテキストデータが前記第3のテキストデータの子であるだけでなく前記第2のテキストデータの子にもなるように、前記データベースにおける前記第2のテキストデータと前記第4のテキストデータの間の親子関係の定義付けを変更するステップと、
を実行するデータベースの更新方法。 - 前記ホスト通信装置が、
前記第2のテキストデータを、前記テキスト通信装置とは異なる他のテキスト通信装置に送信し出力させるステップと、
前記他のテキスト通信装置において入力された第5のテキストデータを前記他のテキスト通信装置から受信するステップと、
前記第5のテキストデータを前記第2のテキストデータの子として前記データベースに登録するステップと、
を実行する請求項1に記載のデータベースの更新方法。 - 前記ホスト通信装置が、
前記第5のテキストデータが前記第2のテキストデータの子であるだけでなく前記第3のテキストデータの子にもなるように、前記データベースにおける前記第3のテキストデータと前記第5のテキストデータの間の親子関係の定義付けを変更するステップを実行する請求項2に記載のデータベースの更新方法。 - 前記テキストデータはゲームにおける複数のキャラクタ間の対話において交換されるメッセージを構成する請求項1乃至3のいずれかに記載のデータベースの更新方法。
- 請求項1乃至4のいずれかに記載のデータベースの更新方法における各ステップを、前記ホスト通信装置に実行させるためのプログラムを記憶させたコンピュータで読み取り可能な記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP31752199A JP4183866B2 (ja) | 1999-11-08 | 1999-11-08 | データベースの更新方法、及び記憶媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP31752199A JP4183866B2 (ja) | 1999-11-08 | 1999-11-08 | データベースの更新方法、及び記憶媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001129261A JP2001129261A (ja) | 2001-05-15 |
JP4183866B2 true JP4183866B2 (ja) | 2008-11-19 |
Family
ID=18089179
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP31752199A Expired - Fee Related JP4183866B2 (ja) | 1999-11-08 | 1999-11-08 | データベースの更新方法、及び記憶媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4183866B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3854210B2 (ja) * | 2002-09-11 | 2006-12-06 | 富士通株式会社 | アンケート方法、アンケート装置、アンケートプログラム、アンケートプログラムを記録したコンピュータ読み取り可能な記録媒体及び回答者端末 |
JP4659433B2 (ja) * | 2004-10-26 | 2011-03-30 | 株式会社国際電気通信基礎技術研究所 | 問題自動作成装置および問題自動作成プログラム |
CN103699632B (zh) * | 2013-12-23 | 2017-09-08 | 深圳开立生物医疗科技股份有限公司 | 一种ui文本检测方法及装置 |
CN110227267B (zh) * | 2019-06-28 | 2023-02-28 | 百度在线网络技术(北京)有限公司 | 语音技能游戏编辑方法、装置、设备及可读存储介质 |
-
1999
- 1999-11-08 JP JP31752199A patent/JP4183866B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001129261A (ja) | 2001-05-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105068661B (zh) | 基于人工智能的人机交互方法和*** | |
KR100841590B1 (ko) | 채팅 시스템, 통신장치, 그 제어방법 및 정보기억매체 | |
WO2009122745A1 (ja) | コミュニケーション支援装置、コミュニケーション支援方法およびコミュニケーション支援プログラム | |
US7162197B2 (en) | Picture book production system, server for producing picture book, and recording medium | |
JP2001228947A (ja) | 表現データ制御システム、および、それを構成する表現データ制御装置、並びに、そのプログラムが記録された記録媒体 | |
JP2002099376A (ja) | 文字通信装置 | |
CN103190124A (zh) | 基于行为和运用的情境聊天 | |
JP2002109560A (ja) | アニメーション再生装置、アニメーション再生システム、アニメーション再生方法、アニメーション再生方法を実行するプログラムを記録したコンピュータ読み取り可能な記録媒体 | |
CN106512401A (zh) | 一种用户互动*** | |
KR20180123037A (ko) | 정보 처리 시스템, 정보 처리 장치, 정보 처리 방법, 및 기록 매체 | |
WO2007034829A1 (ja) | 映像作成装置および映像作成方法 | |
JP2009193217A (ja) | 端末装置、ユーザリスト表示方法、および、プログラム | |
JP2002175296A (ja) | キーワード探しゲーム提供システム | |
JP3842563B2 (ja) | メッセージ交換方法およびメッセージ交換装置 | |
CN113260428B (zh) | 跨平台消费游戏内的对象 | |
JP4183866B2 (ja) | データベースの更新方法、及び記憶媒体 | |
JP4854424B2 (ja) | チャットシステム、通信装置、その制御方法及びプログラム | |
CN109529344A (zh) | 游戏过程中的输入方法及装置 | |
JPH11242546A (ja) | サーバシステム、クライアント及び情報提供システム並びにそれらの処理プログラムを記録した媒体 | |
CN110166351A (zh) | 一种基于即时通讯的交互方法、装置和电子设备 | |
WO2001084367A1 (en) | Crossword puzzle supported by multi-language, crossword battle game system and method | |
US20020112018A1 (en) | Net communication system | |
JP4328441B2 (ja) | 情報提供システム | |
JP3916579B2 (ja) | コミュニティ環境提供システム | |
JP3531675B1 (ja) | ゲーム装置、ゲーム装置の制御方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060922 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080304 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080423 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080610 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080709 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080819 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080903 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110912 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110912 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140912 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |