以下、本発明の実施形態について添付の図面を参照しながら説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省く。
[歴史イベント]
ゲーム中に実行されるイベントがある。ゲームのプレイヤ(ユーザ)は、自分が希望する展開のイベントを独自に作成することができる。その際、プレイヤは、ゲームに登場するキャラクタやその他のキャラクタを使用して、プレイヤが望む展開のイベントを作成したり、ストーリでは語られていない出来事を想像してイベントを作成したりすることができる。作成したイベントは、ゲーム中にイベント条件が満たされたタイミングに実行される。
イベントには、複数種類のイベントがあり、歴史イベント及び依頼イベントを含む。例えば、歴史上のシナリオに基づき実行されるゲームにおいて、プレイヤは、歴史イベント及び依頼イベントの2種類のイベントを作成でき、各イベントにおいて自分が望む歴史上の人物の会話等を設定できる。プレイヤは、武将同士の会話内容や、その歴史イベントが発生する条件、発生後の出来事等、さまざまな設定を行うことができ、武将の婚姻や君主の交代、勢力の同盟や家宝の授与等、自分だけの歴史イベントを作成することができる。
歴史イベントは、武将の所属、武将の状態変更、武将の所属都市、武将の所属変更等に関するイベント条件が、ゲーム進行中に満たされた際に単発で発生するイベントである。依頼イベントは、絆成立や金を獲得できるイベント等、リクエスト(お使い)形式のイベントであり、歴史イベントと異なり、単発で発生するわけではなく、リクエストに対してゲーム内でリクエストを満足できるようにゲームが展開されているか等の一連の流れで発生する。依頼イベントの一例としては、特定の条件を満たしたときに武将が訪ねてくるイベント等が挙げられる。
以下では、主に歴史イベントの作成及び作成した歴史イベントの共有の機能を有する端末装置10の一実施形態について説明する。本実施形態に係る端末装置10は、ゲーム機器(携帯用ゲーム機器を含む)であってもよいし、パーソナルコンピュータ(PC)であってもよい。ただし、本実施形態に係る端末装置はこれに限らず、スマートフォン、携帯端末、PDA(Personal Digital Assistants)、携帯電話、携帯用ゲーム機器、HMD(Head Mount Display)、FMD(Face Mount Display)等のウェアラブル表示デバイスであってもよい。
[端末装置のハードウェア構成]
まず、本実施形態に係る端末装置10のハードウェア構成の一例について、図1を参照しながら説明する。本実施形態に係る端末装置10は、CPU(Central Processing Unit)21、ROM(Read Only Memory)22、RAM23及びHDD(Hard Disk Drive)24を有している。また、端末装置10は、グラフィックカード25、外部I/F26、通信I/F27、入力I/F28、ディスプレイ29及びスピーカ30を有している。各部はバスで相互に接続されている。
ROM22は、電源を切っても内部データを保持することができる不揮発性の半導体メモリである。RAM23は、プログラムやデータを一時保持する揮発性の半導体メモリである。ROM22及びRAM23には、プログラム及びデータが格納されている。
HDD24は、プログラムやデータを格納している不揮発性の記憶装置である。HDD24には、端末装置10の全体を制御する基本ソフトウェア及びアプリケーションソフトウェアのプログラムが格納されてもよい。HDD24には、各種のデータベースが格納されてもよい。本実施形態では、HDD24には、基本処理プログラム、ゲーム実行処理プログラム、イベント制御処理プログラム等の各種のプログラム及び各種のデータが格納されている。
CPU21は、例えばHDD24から各種プログラム及び各種データをRAM23上に読み出し、各種の処理を実行することで、端末装置10の全体の制御や端末装置10に搭載された機能を実現する。
外部I/F26は、端末装置10を外部装置に接続するインターフェースである。外部装置には、記録媒体26aなどがある。これにより、端末装置10は、外部I/F26を介して記録媒体26aの読み取り及び書き込みを行うことができる。記録媒体26aの一例としては、CD(Compact Disk)、DVD(Digital Versatile Disk)、SDメモリカード(SD Memory card)又はUSBメモリ(Universal Serial Bus memory)等が挙げられる。
例えば、端末装置10には、ゲーム実行処理プログラム及びイベント制御処理プログラム等が格納された記録媒体26aを装着することが可能である。これらのプログラムは、外部I/F26により読み出されて、RAM23に読み込まれる。
CPU21は、RAM23に読み込まれたゲーム実行プログラム及びイベント制御処理プログラムを実行し、グラフィックカード25にゲーム及び歴史イベントの進行に応じた画像の出力を指示する。グラフィックカード25は、指示に従い画面に表示するゲームの画像処理や歴史イベントの画像処理を行い、ゲーム画像及びイベント画像をディスプレイ29に描画させる。グラフィックカード25から出力される画像の一フレーム時間は、例えば1/30〜1/60秒である。グラフィックカード25は、フレーム単位で1枚の画像の描画を実行する。すなわち、一秒間に30回〜60回のフレームの画像が描画される。
また、CPU21は、RAM23に読み込まれた上記の各種プログラムを処理し、ゲームや歴史イベントの進行に応じてスピーカ30から所定の音を出力させる。
通信I/F27は、端末装置10をネットワークに接続するインターフェースである。通信I/F27は、アンテナを有する通信ユニットを介して他プレイヤの端末装置やサーバと通信を行う。
入力I/F28は、コントローラ40等の入力機器に接続するインターフェースである。コントローラ40は、操作ボタン及び方向キーを有する。プレイヤは、コントローラ40を用いてゲーム操作を行う。例えば、プレイヤは、操作ボタンを操作することでプレイヤキャラクタに所定の動作を行わせることができる。また、プレイヤは、方向キーを操作することでプレイヤキャラクタを所定の方向に移動させることができる。入力I/F28は、プレイヤがコントローラ40を用いて行った入力操作に基づく入力情報をRAM23に格納させる。また、プレイヤが、コントローラ40を操作してゲームの開始を指示したとき、入力I/F28が、その指示情報を入力することによりゲーム処理が開始される。
CPU21がRAM23に格納された入力情報に基づきプレイヤキャラクタの動作等の各種の演算処理を実行すると、入力I/F28はCPU21からの指示に従いRAM23に記憶されているゲームのデータをメモリカード28aに保存させる。また、入力I/F28は、メモリカード28aに保存されている中断時のゲームのデータを読み出してRAM23に転送し、RAM23に保持させる処理を行う。
[携帯用ゲーム機器の機能構成]
次に、本実施形態に係る端末装置10の機能構成の一例について、図2を参照しながら説明する。端末装置10は、受付部11、ゲーム実行部12、記憶部13、イベント制御部14、グラフィック処理部16、サウンド処理部17、表示部18、音出力部19及び通信部20を有する。
受付部11は、プレイヤのゲーム操作を受け付ける。例えば、受付部11は、コントローラ40の操作キーや方向キーの操作を受け付ける。歴史イベント作成時、受付部11は、イベント内容、イベント条件及びイベント結果の少なくともいずれかの設定条件を受け付ける。受付部11の機能は、例えば入力I/F28又は外部I/F26により実現される。
ゲーム実行部12は、ゲーム実行処理プログラムに従いゲーム処理を実行する。本実施形態にて実行されるゲームは、単独でプレイするゲームであってもよいし、ネットワークを介して接続される他プレイヤと共同でプレイする通信ゲームであってもよい。
記憶部13は、イベント結果DB131、イベント条件DB132、イベント登録DB134を記憶する。図3に、一実施形態に係るイベント結果DB131の一例を示す。イベント結果DB131には、イベント作成時にプレイヤが設定可能な「イベント結果」の項目が記憶されている。
図3が示すイベント結果名毎に、その結果名が示す設定内容の詳細が保存されている。例えば、イベント結果が「1.君主の交代」の場合、設定内容の詳細の一例として「[指定君主]が隠居して同勢力の[指定君主]が君主になること」が記憶されている。[]内は、イベント条件毎に、プレイヤが任意の指定君主を動的に設定できる。
また、例えば、イベント結果が「2.太守の設定」の場合、設定内容の詳細の一例として「[指定都市]の太守を[指定武将]に変更すること」が記憶されている。また、例えば、イベント結果が「3.武将の死亡」の場合、設定内容の詳細の一例として「[指定武将]が死亡すること」が記憶されている。[]内は、イベント条件毎に、プレイヤが任意の指定武将、指定都市、指定勢力等を指定し、この指定に応じて動的に変更される。
図4に、一実施形態に係るイベント条件DB132の一例を示す。イベント条件DB132には、歴史イベント作成時にプレイヤが設定可能な「イベント条件」の項目が記憶されている。図4が示す条件名毎に、その条件が示す設定内容の詳細が保存されている。
例えば、イベント条件が「1.発生月日」の場合、設定内容の詳細の一例として「[指定]年[指定]月[以前/以降/一致]であること」が記憶されている。[指定]には、プレイヤが指定した年数や月が入力される。[以前/以降/一致]のように選択肢が表示されている場合には、プレイヤが以前、以降又は一致のいずれかを選択する。
また、例えば、イベント条件が「2.武将の身分」の場合、設定内容の詳細の一例として「[指定武将]が[指定身分]であること」が記憶されている。また、例えば、イベント条件が「3.武将の所属勢力」の場合、設定内容の詳細の一例として「[指定武将]が[指定勢力]に所属していること」が記憶されている。
イベント結果DB131とイベント条件DB132とに基づき、所定のイベント結果を得るために必要なイベント条件が所定の計算式により求められる。図5にイベント結果とイベント条件とを紐付けたテーブル133の一例を示す。テーブル133には、イベント結果名133a、イベント条件名133b及び詳細条件133cの各項目が記憶されている。テーブル133では、イベント結果名133a毎に、その結果名が示す設定内容のイベント結果を得るために必須の条件を示すイベント条件名133bが対応付けられている。
例えば、図5では、イベント結果に「3.武将の死亡」が設定された場合、このイベント結果を得るためのイベント条件として、イベント結果名133a「3.武将の死亡」に対応するイベント条件名133b「14.武将の状態」、「2.武将の身分」、「15.プレイヤ武将」の各条件が設定される。そして、これらの3つのイベント条件が、指定された武将の死亡のイベント結果を得るために補完すべき必須の条件となる。
イベント条件名133bが「14.武将の状態」の場合、設定内容の詳細の一例として「[指定武将]が出陣していないこと」が条件となる。イベント条件名133bが「2.武将の身分」の場合、設定内容の詳細の一例として「[指定武将]が君主でないこと」が条件となる。イベント条件名133bが「20.プレイヤ武将」の場合、設定内容の詳細の一例として「プレイヤ武将が[指定武将]でないこと」が条件となる。なお、テーブル133は、必ずしも作成する必要はなく、イベント結果及びイベント条件の少なくともいずれかをプレイヤが設定したことに応じて、設定に対応した補完すべきイベント条件を随時計算により自動算出すればよい。ただし、以下では、便宜上、テーブル133を用いて説明する。
図2に戻り、イベント登録DB134は、プレイヤが作成した歴史イベントを登録する。記憶部13は、作成した歴史イベントを、イベントセットに登録する。イベントセットは、発生させたい歴史イベントをグループ化したものであり、作成した歴史イベントは、いずれかのイベントセットに属する。イベント登録DB134には、複数のイベントセットが登録されてもよい。イベントセットに登録された歴史イベントは、指定された順番に実行される。なお、イベント登録DB134は、プレイヤが作成した依頼イベントを登録してもよい。
また、記憶部13は、ゲーム実行処理プログラム135及びイベント制御処理プログラム136をインストールし、保存する。ゲーム実行処理プログラム135は、CPU21にゲーム実行処理を実行させるためのプログラムである。イベント制御処理プログラム136は、CPU21にイベント制御処理を実行させるためのプログラムである。記憶部13の機能は、例えば図1に示すROM22、RAM23、HDD24又はネットワークを介して端末装置10に接続されるクラウド上のサーバ等により実現される。
イベント制御部14は、歴史イベントの編集を行うイベント編集部4、歴史イベントの登録を行うイベント登録部5及びゲーム中に歴史イベントの実行を制御するイベント実行部6を有する。
イベント編集部4は、プレイヤの指示に従い、イベント条件、イベント内容及びイベント結果を編集する。イベント編集部4は、イベント条件、イベント内容及びイベント結果の少なくともいずれかを編集してもよい。イベント編集部4は、設定したイベント結果に応じて、そのイベント結果を得るために補完すべきイベント条件を抽出する。例えば、イベント編集部4は、プレイヤがイベント結果を設定すると、記憶部13のテーブル133を参照して、設定したイベント結果を得るために必須のイベント条件を自動抽出し、自動で設定する。
イベント編集部4は、自動抽出したイベント条件及びプレイヤが設定したイベント条件の中で任意に指定可能な条件(指定武将など)の引数に、プレイヤが指定した条件を動的に設定する。例えば、イベント編集部4は、プレイヤが設定したイベント条件にて任意に指定可能な「指定武将」の条件の引数に、プレイヤが指定した「武将」の名前を設定してイベント条件の一部を動的に変更することができる。イベント編集部4は、自動抽出したイベント条件及びプレイヤが設定したイベント条件を表示部18に表示する。これにより、プレイヤは、自身が設定したイベント条件だけでなく、自動抽出したイベント条件を確認することができる。
イベント登録部5は、作成した歴史イベントをイベント登録DB134に登録する。イベント実行部6は、ゲーム中に設定したイベント条件が満たされたとき、イベント登録DB134に登録した歴史イベントのうち、有効に設定されているイベントセットに属する歴史イベントを順に実行する。
イベント制御部14は、作成した歴史イベントのデータを、歴史イベントを作成した端末装置と異なる他の端末装置から利用可能な状態にする。
かかる機能構成により、イベント実行部6が歴史イベントの内容に従い歴史イベントを実行した結果、プレイヤは、設定した内容の歴史イベントを視聴でき、設定したイベント結果を得ることができる。なお、ゲーム実行部12及びイベント制御部14の機能は、例えば、ゲーム実行処理プログラム135及びイベント制御処理プログラム136がCPU21に実行させる処理により実現される。
グラフィック処理部16は、表示部18に接続され、ゲーム実行部12及びイベント実行部6から描画命令が出力されると、表示部18にビデオ信号を出力する。これにより、表示部18は、ゲームの進行に合わせてゲームの画像及び歴史イベントの画像を表示する。グラフィック処理部16の機能は、例えばグラフィックカード25により実現される。表示部18の機能は、例えばディスプレイ29により実現される。
サウンド処理部17は、音出力部19に接続され、ゲーム実行部12及びイベント実行部6からサウンド出力の指示命令が出力されると、音出力部19にサウンド信号を出力する。これにより、音出力部19は、ゲームの進行及び歴史イベントの実行に応じた音声及びサウンドを出力する。音出力部19の機能は、例えばスピーカ30により実現される。
通信部20は、サーバや他プレイヤの端末装置と通信を行う。通信部20の機能は、例えば通信I/F27により実現される。例えば、イベント結果DB131、イベント条件DB132、テーブル133及びイベント登録DB134がクラウド上の記憶装置に記憶されている場合、通信部20は、クラウド上の記憶装置から必要な情報を受信する。
なお、図2は機能に着目したブロック図を描いており、これらの機能ブロックで示した各部のソフトウエアを実行するプロセッサはハードウェアである。
[ゲーム実行処理]
次に、本実施形態に係るゲーム実行処理の一例について図6を参照して説明する。図6は、一実施形態に係るゲーム実行処理の一例を示したフローチャートである。本処理は、主にゲーム実行部12及びイベント実行部6により実行される。ここでは、ゲーム実行部12は所定のゲームを実行し、イベント実行部6は所定の歴史イベントを実行する。なお、以下では歴史イベントを例に挙げて説明するが、本実施形態に係るイベント制御処理が制御するイベントは、歴史イベントに限らず、依頼イベントであってもよい。
本処理が開始されると、ゲーム実行部12は、指定されたゲームを実行する(ステップS10)。次に、イベント実行部6は、歴史イベントを反映するか否かを判定する(ステップS12)。イベント実行部6は、有効に設定されているイベントセットであって、ゲーム中にイベント条件が満たされた場合、ステップS14に進む。イベント実行部6は、設定されたイベント条件が満たされていないと判定すると、ステップS18に進み、設定されたイベント条件が満たされていると判定すると、ステップS14に進む。つまり、ゲーム実行部12は、図6のステップS12において、歴史イベントを反映させる際、イベント結果を設定したことにより自動抽出したイベント条件及び手動で設定されたイベント条件がゲーム中で満たされていない場合、歴史イベントを実行しない。
ステップS14において、イベント実行部6は、イベント登録DB134に登録されているイベントセットのうち、有効に設定されているイベントセットに含まれる歴史イベントを順番に実行する。次に、ゲーム実行部12は、歴史イベントの実行結果に応じてゲームのストーリを変更する(ステップS16)。例えば、ゲーム実行部12は、歴史イベントにてプレイヤが指定した武将が死亡した場合、ゲームを、その武将が生きて登場する場面を無くしたストーリに変更する。
ステップS18では、ゲーム実行部12は、ゲームを終了するか否かを判定する。ゲーム実行部12は、ゲームが終了すると判定すると、本処理を終了する。一方、ゲーム実行部12は、ゲームを終了しないと判定すると、ステップS10に戻り、ゲームを再開する。ゲーム実行部12がステップS18にてゲームを終了するまで、ステップS10〜S18の処理が繰り返される。
[イベント制御処理]
次に、本実施形態に係るイベント制御処理の一例について図7〜図12を参照して説明する。図7は、一実施形態に係るイベント制御処理の一例を示したフローチャートである。図8〜図13は、イベント作成画面又はイベント登録画面の一例である。本処理は、主にイベント制御部14により実行される。
本処理が開始されると、イベント制御部14は、歴史イベントの作成要求があるか否かを判定する(ステップS20)。図8(a)の画面は、スタートメニューにおいてプレイヤにより「歴史イベント作成」が選択された状態を示す。「歴史イベント作成」が選択されると、表示部18は、図8(b)の「歴史イベント作成」画面に遷移する。
図8(b)の「歴史イベント作成」画面では、プレイヤにより「(歴史イベントの)作成・変更」が選択されている。「作成・変更」が選択されると、表示部18は図8(c)の「作成・変更」画面に遷移する。
図8(c)の「作成・変更」画面では、プレイヤにより「新規作成」が選択されている。「新規作成」が選択されると、図7のステップS20において、イベント制御部14は、歴史イベントの新規作成要求があったと判定し、歴史イベント編集画面を表示する(ステップS22)。図9(a)の画面は、ステップS22において表示された「歴史イベント編集」画面の一例を示す。
図7に戻り、次に、イベント制御部14は、歴史イベントの概要を設定するか否かを判定する(ステップS24)。図9(a)の画面に示すように、プレイヤが「概要」ボタンを選択すると、図7のステップS24において、イベント制御部14は、歴史イベントの概要を設定すると判定し、表示部18は、図9(b)の「イベント概要」画面に遷移する。そして、イベント制御部14は、図9(b)の「イベント概要」画面にてプレイヤが入力した歴史イベントの概要を設定する(ステップS26)。図9(b)の「イベント概要」画面では、歴史イベントの名前や概要等、作成する歴史イベントの基本的な情報を入力することができる。イベント形式には、「歴史イベント」と「依頼イベント」とがあり、本実施形態では、歴史イベントが選択される。
一方、プレイヤが「概要」ボタンを選択しない場合、図7のステップS24において、イベント制御部14は、歴史イベントの概要を設定しないと判定し、ステップS28に進む。なお、本実施形態では、ステップS24とステップS28との処理を段階的に判定しているが、これに限らず、図9(a)の概要、結果、条件、内容の4つのボタンの押下に従い、これらのステップのいずれかを行うことができる。
次に、ステップS28において、イベント制御部14は、歴史イベントの結果(イベント結果)、条件(イベント条件)、内容(イベント内容)のいずれを設定するかを判定する。図10(a)の「歴史イベント編集」画面は、プレイヤにより「結果」ボタンが選択された状態を示す。この場合、表示部18は、図10(b)の「結果編集」画面に遷移する。
図7に戻り、次に、ステップS30において、イベント制御部14は、図10(b)の「結果編集」画面にてプレイヤが望むイベント結果を設定させる。イベント結果の設定は、イベント結果DB131に記憶されているイベント結果のリストからプレイヤが選択することにより行われる。
図10(c)は、図10(b)の「結果編集」画面にて結果を設定した結果の一例を示す画面である。この例では、設定したイベント結果は「3.武将の死亡」であり、その結果の詳細は「[指定武将]が死亡すること」である。なお、指定武将は、歴史上の人物に限らず、仮想の人物を指定できる。イベント制御部14は、「結果」の補足説明を予め定義し、プレイヤに表示してもよい。これにより、プレイヤの歴史イベントの作成を容易にすることができる。
図7に戻り、次に、ステップS32において、イベント制御部14は、設定されたイベント結果を得るために補完すべきイベント条件を抽出する。イベント制御部14は、テーブル133を参照し、設定したイベント結果に対応するイベント条件を抽出する。
イベント制御部14は、図5のテーブル133を参照し、イベント結果名133a「3.武将の死亡」に対応する、イベント条件名133b「14.武将の状態」、「2.武将の身分」及び「15.プレイヤ武将」のイベント条件を抽出する。その結果、次の3つのイベント条件が自動抽出される。
(条件1)[指定武将]が出陣していない。
このとき、表示部18は、条件1の詳細な説明を表示可能である。例えば、表示部18は、「条件1は、「死亡していれば」出陣や合戦を行うことはできないため、本イベント条件が自動でセットされる。」と表示してもよい。
(条件2)[指定武将]が君主でない。
例えば、表示部18は、「条件2の「君主」は勢力の長であり、死亡していれば君主とはなり得ないので、本イベント条件が自動でセットされる。」と表示してもよい。
(条件3)プレイヤ武将が[指定武将]でない。
例えば、表示部18は、「条件3では、プレイヤ武将が自らの死亡をイベント結果とすることはゲームのルールとして許されていないので、本イベント条件が自動でセットされる。」と表示してもよい。なお、プレイヤ武将には、プレイヤがゲームにおいて使用している武将名が表示される。
図7に戻り、次に、ステップS34において、表示部18は、イベント制御部14が抽出したイベント条件を画面に表示する。自動抽出したイベント条件を画面に表示した例を図11(b)に示す。これにより、プレイヤは、自動設定された歴史イベントのイベント条件を把握することができる。
図7に戻り、次に、イベント制御部14は、歴史イベントの作成を終了するか否かを判定する(ステップS36)。イベント制御部14は、プレイヤの指示に従い歴史イベントの作成を終了すると判定した場合、ステップS42に進む。一方、イベント制御部14は、歴史イベントの作成を終了しないと判定した場合、ステップS28に戻る。
ステップS28にて、プレイヤが図11(a)に示す「条件」ボタンを選択した場合について説明する。この場合、表示部18は、図11(b)の「条件編集」画面に遷移する。図11(b)の画面には、先程のイベント結果の設定に応じて自動抽出された歴史イベントのイベント条件が設定されている。この時点で設定されているイベント条件は、設定されたイベント結果を得るために自動抽出された最低限必要な条件である。
イベント制御部14は、「条件編集」画面にてプレイヤにイベント条件を設定させる(ステップS38)。イベント条件の設定は、イベント条件DB132に記憶されているイベント条件のリストからプレイヤが選択することにより行われる。
図11(c)に、イベント条件を設定した画面例を示す。図11(c)の「条件編集」画面の1〜3の条件は、「結果編集」画面にて設定したイベント結果に応じて自動抽出されたイベント条件であり、4,5の条件は、プレイヤが設定したイベント条件である。
本実施形態では、プレイヤが任意の4,5の条件を設定しているが、プレイヤは必ずしもイベント条件を手動で設定する必要はない。つまり、設定されるイベント条件には、「結果編集」画面にて設定したイベント結果に応じて抽出されたイベント条件のみが自動で設定されてもよい。なお、イベント条件よりもイベント結果を先に設定することで、イベント結果を得るために必要なイベント条件が自動設定されるため、プレイヤがイベント条件を設定する煩雑さを軽減でき、歴史イベントの作成時間を短縮できる。また、設定したイベント条件に誤りや不足が生じることを防止できる。
図7に戻り、次に、イベント制御部14は、歴史イベントの作成を終了するか否かを判定する(ステップS36)。イベント制御部14は、歴史イベントの作成を終了すると判定した場合、ステップS42に進む。一方、イベント制御部14は、歴史イベントの作成を終了しないと判定した場合、ステップS28に戻る。
ステップS28において、プレイヤが図12(a)に示すように「内容」ボタンを選択した場合について説明する。この場合、表示部18は、図12(b)の画面に遷移する。プレイヤが「追加」ボタンを選択すると、表示部18は、図12(c)の画面に移行し、イベント制御部14は、歴史イベントの内容を編集することができる。歴史イベントの内容では、指定武将の会話の設定、背景表示の設定、BGMの設定、ナレーションの設定、イベントで表示する画像の設定等を行うことができる。
図7に戻り、ステップS28〜S40の処理が繰り返された後、ステップS36において、イベント制御部14がプレイヤの指示に従い歴史イベントの作成を終了すると判定した場合、ステップS42に進む。ステップS42において、記憶部13は、歴史イベントをイベント登録DB134に登録し、イベントセットの有効又は無効を設定する。つまり、イベント制御部14は、登録する歴史イベントをいずれかのイベントセットに登録することでグループ化し、図13に示す「イベントセット編集」画面にて、イベントセット毎に「有効」又は「無効」を設定する。有効に設定されているイベントセットのみがゲーム中で利用可能な状態となる。
図7に戻り、次に、イベント制御部14は、「ゲーム中に反映」ボタンが押されたか否かを判定する(ステップS44)。プレイヤにより「ゲーム中に反映」ボタンが押された場合、イベント制御部14は、有効に設定されたイベントセットに属する歴史イベントをゲーム中に反映させ(ステップS46)、本処理を終了する。一方、プレイヤにより「ゲーム中に反映」ボタンが押されなかった場合、本処理はそのまま終了する。これにより、有効化した歴史イベントが、ゲーム中であってイベント条件を満足するタイミングに実行される。
例えば、ゲーム中に図11(c)に示す5つのイベント条件が満たされたとき、作成した特定の歴史イベントが開始される。このとき、ゲーム中の通常画面から図14に一例を示す歴史イベントの画面が突如発生し、歴史イベントの内容に設定した通りの会話が始まる。さらに、図15に示す歴史イベント中の画面では、図15(a)に示すように、どのような歴史イベントが発生したのかのナレーションが表示される。次に、図15(b)において歴史イベント終了時の画像とナレーションを示した画面が表示され、最後に、図15(c)に示すように、設定されたイベント結果の画面が表示される。イベント画面を閉じると、ゲームの画面に切り替わり、ゲームが再開される。以上、歴史イベントの作成、歴史イベントの登録、歴史イベントの実行について説明した。
プレイヤが歴史イベントの作成時にゲームのストーリと矛盾を生じさせないすべてのイベント条件を手動で抽出し、設定することは困難である場合が多い。また、イベント条件の設定自体が煩雑であり、また、プレイヤが手動でイベント条件を設定すると、設定した条件に誤りや不足が生じる場合がある。
これに対して、本実施形態に係るイベント制御方法によれば、イベント結果に応じたイベント条件を自動で抽出し、設定することができる。これにより、プレイヤは、必須のイベント条件のすべてを手動で設定する必要がなくなり、歴史イベントの作成時の煩雑さを低減できる。また、ユーザが手動でイベント条件を設定する場合に、設定したイベント条件に誤りや不足が発生することを抑制できる。これにより、歴史イベントの作成の処理が簡素化され、プレイヤはより手軽に歴史イベントの作成を行うことができる。
また、作成した歴史イベントをゲーム中に実行させることにより、プレイヤは、自分が希望する歴史イベントの内容を鑑賞できる。また、実行したイベント結果により、歴史イベント中に得られる所定の値(レベルや友好度等)を、歴史イベント終了後にゲームのストーリに戻る際に引き継ぐことが可能となる。
例えば、ゲーム中のストーリの分岐点(所定の値により複数ある分岐ストーリのどれを進めるかが決定されるポイント)で望んでいないストーリへ進みそうな場合に、希望する所定の値を付与することができるような歴史イベントを作成してもよい。これにより、作成した歴史イベントを再生してからゲームのストーリへ戻ることで、複数ある分岐ストーリのうちの「希望するストーリ」へ進める、という事も可能となる。
このようにして、歴史イベント終了後にゲームのストーリに戻る際に、歴史イベントの内容及び結果を反映してゲームのストーリを変化又は終了させたり、キャラクタの能力値を変化させたり、家宝を与える等アイテムを増減させたりすることができる。
なお、本実施形態では、イベント条件の自動抽出はイベント結果が設定されたときに実行されたが、これに限らない。例えば、イベント結果及びイベント条件の少なくともいずれかの条件が設定された場合、イベント条件の自動抽出を実行する。これにより、必須のイベント条件を補完することができる。つまり、(1)プレイヤがイベント結果を設定したとき、設定したイベント結果に対応するイベント条件が自動抽出され得る。また、(2)プレイヤがイベント結果及びイベント条件を設定したとき、設定したイベント結果及びイベント条件に対応するイベント条件が自動抽出され得る。さらに、(3)プレイヤがイベント条件を設定したとき、設定したイベント条件に対応するイベント条件が自動抽出され得る。
また、イベント制御部14が、イベント結果を複数設定している場合、ゲーム実行部12は、先にゲーム中に反映したイベント結果によって後のイベント結果をゲーム中に反映しなくなる場合が生じ得る。例えば、ゲーム実行部12は、「武将の死亡」により武将を死亡させた後、「武将の追放」で同じ武将を追放しようとした場合、すでにその武将は死亡しているため、「武将の追放」というイベント結果はゲーム中には反映されない。
また、歴史イベントでは、デファインによる条件指定が可能である。例えば、指定武将には、武将名を設定する方法以外に、知力が一番高い武将等、名前が決定していない武将名をメッセージ中に自動で呼び出すことができる。この場合、ゲーム進行状態によって、呼び出される武将が変わることになり、ゲーム中の意外性を高めることができる。
また、依頼イベント中に歴史イベントが発生し、その結果、依頼イベントのミッションが達成できなくなる場合、依頼イベントは消滅する。例えば、依頼イベント中に歴史イベントが実行され、その結果、依頼イベントの対象武将が死亡した場合、依頼イベントを継続して実行できないようになった場合には、その依頼イベントは消滅する。
[歴史イベント及び依頼イベントの共有]
次に、歴史イベント及び依頼イベント(以下、単に「イベント」ともいう。)の共有について説明する。作成および登録したイベントのデータは、他プレイヤと共有することができる。これにより、自作の歴史イベント又は依頼イベントを他プレイヤの端末装置にて他プレイヤにプレイしてもらうことや、他プレイヤが作成した歴史イベント又は依頼イベントを自プレイヤの端末装置にてプレイすることができる。
イベントを共有する場合、イベント制御部14は、プレイヤの指示に応じて共有するイベントを選択する。図16に示すように、複数の端末装置10a〜10cがネットワーク60を介してサーバ50と接続されており、端末装置10a〜10c間でイベントを共有する。本実施形態では、イベントを共有する端末装置の一例として、3つの端末装置10a〜10cを示しているが、イベントを共有する端末装置の台数はこれに限られない。
サーバ50は、通信部51、制御部52及び記憶部53を有する。端末装置10a〜10cの少なくともいずれかは、共有してもよいと判断した自作のイベントをサーバ50にアップロードし、通信部51は、アップロードされたイベントのデータを受信する。
制御部52は、受信したイベントのデータを記憶部53に記憶する。共有可能なイベントは、共有リスト54としてサーバ50の記憶部53に記憶される。共有リスト54は、各イベントセットに属する各イベントの概要やイベント条件、ダウンロード数(DL数)の各項目が表示されている。各イベントの概要やイベント条件は、イベント作成時にイベント作成者により設定されているデータである。ダウンロード数は、イベントを作成したプレイヤの端末装置とは異なる他プレイヤの端末装置にそのイベントをダウンロードされた数である。
共有リスト54の各項目は、端末装置10a〜10cに表示され、各プレイヤにより閲覧可能である。各プレイヤは、イベント作成時に設定された各イベントの概要やイベント条件を確認し、実行したいイベントを選択すると、選択されたイベントがサーバ50から他プレイヤの端末装置にダウンロードされる。
なお、他プレイヤの端末装置にダウンロードされた数をカウントアップして、所定数のダウンロードが行われた場合、サーバ50からそのイベントを作成したプレイヤの端末装置にトロフィーやクーポン等を提供するサービスを行ってもよい。
他プレイヤの端末装置にダウンロードされた数により、他プレイヤは、共有リスト54に表示されている共有可能なイベントに対する他の端末装置による利用度を知ることができる。これにより、他プレイヤは、イベントの選択の際にイベントの人気度を考慮することができる。
各プレイヤの端末装置10a〜10cは、オリジナルの武将を作成し、その武将を登録した場合、イベントと同様に、自作の登録武将をサーバ50にアップロードして、他プレイヤと共有することができる。
オリジナルの登録武将は、一プレイヤの端末装置にて作成されたオリジナルのオブジェクトの一例であり、オリジナルのオブジェクトはこれに限らない。各端末装置は、オリジナルのオブジェクトとして、オリジナルのキャラクタ、オリジナルのアイテム等を作成してもよい。作成したオリジナルのオブジェクトのデータを共有フォルダへ登録することで、イベントの登録と同様に、他の端末装置から利用可能な状態にすることができる。
その場合、他プレイヤの端末装置にて実行されるイベントに登場する指定武将に、共有されたオリジナルの登録武将を設定することで、他プレイヤの端末装置にて共有リスト54に挙げられたイベントのいずれかを実行する際に、そのイベントに登場する武将をいずれかの端末装置で作成されたオリジナルの登録武将に動的に変更することができる。このようにして、一プレイヤの端末装置にて作成されたイベントとオリジナルのオブジェクトとを組み合わせて又は単体で他プレイヤの端末装置にて共有することができる。
[イベント共有処理]
最後に、イベント共有処理について、図17を参照して説明する。図17は、本実施形態に係るイベント共有処理の一例を示すフローチャートである。本処理は、サーバ50により実行される。
本処理が開始されると、サーバ50の通信部51は、いずれかの端末装置からイベントのアップロードの要求があったか否かを判定する(ステップS50)。イベントのアップロードの要求がなかった場合、ステップS56に進む。
一方、イベントのアップロードの要求があった場合、通信部51は、要求されたイベントのアップロードを受け付ける(ステップS52)。制御部52は、アップロードされたイベントを共有リスト54に追加し、その一覧を表示する(ステップS54)。
ステップS56において、通信部51は、いずれかの端末装置からイベントのダウンロードの要求があったか否かを判定する。イベントのダウンロードの要求がなかった場合、本処理を終了する。一方、イベントのダウンロードの要求があった場合、通信部51は、要求されたイベントのダウンロードを行い(ステップS58)、制御部52は、ダウンロードを要求されたイベントのダウンロード数をカウントアップし、本処理を終了する。
以上に説明したように、本実施形態に係るイベント制御方法によれば、イベントの作成、イベントの登録、イベントの実行、及びイベントのデータを他プレイヤと共有することができる。これにより、一のプレイヤの端末装置にて作成したイベントを、他プレイヤの端末装置にて実行でき、イベント実行の結果を他プレイヤの端末装置において実行されているゲームに反映することができる。また、他プレイヤの端末装置にて作成したイベントを、自プレイヤの端末装置にて実行でき、イベント実行の結果を自プレイヤの端末装置において実行されているゲームに反映することができる。
なお、各端末装置は、イベントを他の端末装置にて共有する場合の共有条件を設定することができる。これによれば、共有条件を満たす場合のみ他の端末装置にて共有リスト54に挙げられたイベントをダウンロードすることができる。これにより、イベントの共有に所定の制限(フィルタリング)を設けることができる。
以上、イベント制御方法及びイベント制御プログラムを上記実施形態により説明したが、本発明に係るイベント制御方法及びイベント制御プログラムは上記実施形態に限定されるものではなく、本発明の範囲内で種々の変形及び改良が可能である。また、上記実施形態及び変形例が複数存在する場合、矛盾しない範囲で組み合わせることができる。
例えば、上記実施形態に係るイベント制御方法では、歴史シミュレーションゲームに適用される歴史イベントを例に挙げたが、本発明に係るイベント制御方法が適用されるゲームはこれに限らない。例えば、マス目タイプのシミュレーションRPGゲームにも適用可能である。この場合、隣接マスにAキャラクタとBキャラクタとがいるときに、そこで発生する会話イベントやその他のイベントをプレイヤが設定する場合にも、本発明に係るイベント制御方法を用いて、イベントの作成、イベントの登録、イベントの実行、及びイベントのデータを他プレイヤと共有することができる。