(ゲームシステム1のハードウェア構成)
図1は、ゲームシステム1のハードウェア構成を示す図である。ゲームシステム1は図示の通り、複数のユーザ端末100と、サーバ200とを含む。各ユーザ端末100は、サーバ200と通信ネットワーク2を介して接続する。通信ネットワーク2は、インターネット、図示しない無線基地局によって構築される各種移動通信システム(例えば、所謂3G、4G移動通信システム、LTE(Long Term Evolution))、または所定のアクセスポイントによってインターネットに接続可能な無線ネットワーク(例えばW-Fi(登録商標))等で構成される。
サーバ200は、ワークステーション、パーソナルコンピュータ等の汎用コンピュータであることが望ましい。サーバ200は、プロセッサ20と、メモリ21と、ストレージ22と、通信IF23と、入出力IF24とを備える。サーバ200が備えるこれらの構成は、通信バスによって互いに電気的に接続する。
ユーザ端末100は、スマートフォン、フィーチャーフォン、PDA(Personal Digital Assistant)、タブレット型コンピュータ等の携帯端末であることが望ましい。ユーザ端末100は図示の通り、プロセッサ10と、メモリ11と、ストレージ12と、通信インターフェース(IF)13と、入出力IF14と、タッチスクリーン15とを備える。ユーザ端末100が備えるこれらの構成は、通信バスによって互いに電気的に接続される。
(各装置のハードウェア構成要素)
プロセッサ10は、ユーザ端末100全体の動作を制御する。プロセッサ20は、サーバ200全体の動作を制御する。プロセッサ10および20は、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、およびGPU(Graphics Processing Unit)を含む。
プロセッサ10は後述するストレージ12からプログラムを読み出し、後述するメモリ11に展開する。プロセッサ20は後述するストレージ22からプログラムを読み出し、後述するメモリ21に展開する。プロセッサ10およびプロセッサ20は展開したプログラムを実行する。
メモリ11および21は主記憶装置である。メモリ11および21は、ROM(Read Only Memory)およびRAM(Random Access Memory)等の揮発性記憶装置で構成される。メモリ11は、プロセッサ10が後述するストレージ12から読み出したプログラムおよび各種データを一時的に記憶することにより、プロセッサ10に作業領域を提供する。メモリ11は、プロセッサ10がプログラムに従って動作している間に生成した各種データも一時的に記憶する。メモリ21は、プロセッサ20が後述するストレージ22から読み出した各種プログラムおよびデータを一時的に記憶することにより、プロセッサ20に作業領域を提供する。メモリ21は、プロセッサ20がプログラムに従って動作している間に生成した各種データも一時的に記憶する。
なお、本実施形態においてプログラムとは、ゲームをユーザ端末100とサーバ200との協働により実現するためのゲームプログラムである。各種データとはユーザ情報、ゲーム情報等、ゲームに関するデータ、ならびにユーザ端末100とサーバ200との間で送受信する指示や通知を含んでいる。
ストレージ12および22は補助記憶装置である。ストレージ12および22は、フラッシュメモリまたはHDD(Hard Disk Drive)等の不揮発性記憶装置で構成される。ストレージ12およびストレージ22には、ゲームに関する各種データが格納される。
通信IF13は、ユーザ端末100における各種データの送受信を制御する。通信IF23は、サーバ200における各種データの送受信を制御する。通信IF13および23は例えば、無線LAN(Local Area Network)を介する通信、有線LAN、無線LAN、または携帯電話回線網を介したインターネット通信、ならびに近距離無線通信等を用いた通信を制御する。
入出力IF14は、ユーザ端末100がデータの入力を受け付けるためのインターフェースであり、またユーザ端末100がデータを出力するためのインターフェースである。入出力IF14は、USB(Universal Serial Bus)等を介してデータの入出力を行ってもよい。入出力IF14は、例えば、ユーザ端末100が備える物理ボタンやカメラ、マイク、スピーカ等を含み得る。入出力IF24は、サーバ200がデータの入力を受け付けたり、データを出力したりするためのインターフェースである。入出力IF24は、例えば、マウス、キーボード等の情報入力機器である入力部と、画像を表示出力する機器である表示部とを含み得る。
タッチスクリーン15は、入力部151と表示部152とを組み合わせた電子部品である。入力部151は、例えばタッチパッドによって構成される。表示部152は、例えば液晶ディスプレイ、有機EL(Electro-Luminescence)ディスプレイ等によって構成される。
入力部151は、入力面に対しユーザの操作(主にタッチ操作、スライド操作、スワイプ操作、およびタップ操作等の物理的接触操作)が入力された位置を検知して、位置を示す情報を入力信号として送信する機能を備える。入力部151は、図示しないタッチセンシング部を備えていればよい。タッチセンシング部は、静電容量方式、抵抗膜方式等のどのような方式を採用したものであってもよい。
(サーバ200の機能的構成)
図2は、サーバ200の機能的構成を示すブロック図である。サーバ200は、ゲームを実現するために必要な各種データおよびプログラムを、各ユーザ端末100に提供する機能を有する。サーバ200は、各ユーザ端末100からゲームに関するデータを収集し管理する機能を有する。サーバ200は、複数のユーザ端末100間の同期処理を行う機能を有する。
なお、本実施形態では、サーバ200は事前に登録されたゲームのアカウントで各ユーザおよびユーザ端末100を識別する。アカウントの登録方法は特に限定されない。例えば、ユーザ端末100またはパーソナルコンピュータ等の他の装置が、ユーザの操作に従って、ユーザのアカウントの登録に必要な情報をサーバ200に送信すればよい。そして、サーバ200は、受信した情報に基づいて各ユーザのアカウントを作成および保存すればよい。
ユーザ端末100がいずれかのアカウントを用いてゲームシステム1の通信ネットワーク2にログインすると、サーバ200はログインしたユーザ端末100を認識する。なお、ログインの方法およびログインに係る処理については特に限定しない。サーバ200およびユーザ端末100は、従来知られたログインの方法およびログインに係る各種処理を行えばよい。
サーバ200は、プロセッサ20、メモリ21、ストレージ22、通信IF23、入出力IF24等の協働によって、制御部210および記憶部220として機能する。
記憶部220は、制御部210が使用する各種データを格納する。記憶部220はゲームプログラム221と、ゲーム情報222と、ユーザ情報223とを格納している。
ゲームプログラム221は、ゲームを実現するためのプログラムである。ゲーム情報222およびユーザ情報223は、ゲームプログラム221が実行されるときに参照されるデータである。
なお、ゲームプログラム221は、サーバ200側で実行するゲームプログラムに加えて、ユーザ端末100に送信しユーザ端末100側で実行するプログラム(後述するゲームプログラム121)を含んでいてもよい。もしくは、記憶部220は、サーバ200側で実行するゲームプログラム221と、ユーザ端末側で実行するプログラムとの両方を格納していてもよい。
ゲーム情報222は、アカウント間で共通の情報である。ゲーム情報222は、例えば各種ゲーム空間を規定するための情報を含み得る。「ゲーム空間」とは、ユーザが操作可能な操作キャラクタのオブジェクトが配置される空間である。ゲーム情報222は、ゲーム空間内に配置される木・岩・建物等の背景オブジェクトやノンプレイヤキャラクタ(non player character:NPC)のオブジェクトの配置位置、大きさ、色、形状等、アカウント間で共通のオブジェクトに関する各種設定情報を含み得る。ゲーム情報222は、ノンプレイヤキャラクタの各種パラメータの設定値を含み得る。ゲーム情報222はクエストに係る情報を含み得る。ゲーム情報222は、ゲーム空間内において行われる抽選の当選確率に関する情報を含み得る。クエスト毎に、達成条件が設定されていてもよい。なお、クエストには達成条件に加え失敗条件が設定されていてもよい。また、以下では、ゲーム空間に配置されたキャラクタのオブジェクトを指して、単に「キャラクタ」と呼称する場合がある。
ユーザ情報223は、ゲームのアカウント毎に管理される情報である。ユーザ情報223は例えば、操作可能なキャラクタ(以下、操作キャラクタと称する)に関する情報、保有資産に関する情報、ゲームの進行度合いを示す情報、およびゲームに含まれる抽選において付与された共闘戦闘(イベント)をプレイする権利の保有状況に関する情報等を含み得る。ここで、保有資産の例としては、例えばゲーム内通貨、アイテム、キャラクタの装備品などが挙げられる。共闘戦闘とは、例えば、ゲーム空間内において操作キャラクタが特定の敵キャラクタ(例えば、ボスキャラクタ)と戦闘することを含むイベントである。
制御部210は、記憶部220に格納されたゲームプログラム221を実行することにより、ゲームに関する各種処理を制御する。制御部210は、ゲームプログラム221を実行することにより、送受信部211、データ管理部213、およびサーバ処理部212として機能する。
送受信部211は各種データを送受信する。例えば、送受信部211は、ユーザ端末100からの各種データおよびプログラムの送信要求や、マルチプレイ機能に対応するための同期の要求および同期のためのデータ等を受信し、サーバ処理部212に送る。例えば、送受信部211は、サーバ処理部212からの指示に従って、ユーザ端末100に各種データおよびプログラムを送信する。
本実施形態において「マルチプレイ機能」とは、複数のアカウントにおけるゲームの進行を同期させた状態でゲームを進行させる機能である。ゲームシステム1のサーバ200およびユーザ端末100は、ゲームシステム1にログインしているアカウントが複数存在する場合には、マルチプレイ機能に対応するための各種処理を行う。
サーバ処理部212は、ゲーム進行に係る各種判定処理を行う。サーバ処理部212は、ゲームを提供するために必要な演算処理を行う。サーバ処理部212は、ユーザ端末100からの要求等に応じて、ゲームプログラム221に記述された演算処理を実行する。
例えば、サーバ処理部212は、データ管理部213にゲーム情報222またはユーザ情報223のレコードの追加、更新、または削除を指示する。例えば、サーバ処理部212は送受信部211に各種データまたはプログラムの送信を指示する。例えば、サーバ処理部212は、送受信部211を介しユーザ端末100からマルチプレイ機能に対応するための同期の要求および同期のためのデータを受け取ると、同期処理部214にマルチプレイ機能に対応するための同期処理を行うよう指示する。
データ管理部213は、記憶部220に格納されている各種データをサーバ処理部212の指示に従って管理する。例えば、データ管理部213は、サーバ処理部212からの指示に応じてゲーム情報222またはユーザ情報223のレコードを、追加、更新、または削除する。
例えば、データ管理部213は、サーバ処理部212からの指示に従って、ゲーム情報222およびユーザ情報223の少なくとも一方を記憶部220から読み出し、送受信部211を介しユーザ端末100に送信する。
例えば、データ管理部213は、サーバ処理部212からの指示に従って、ゲームプログラム221のうち、ユーザ端末100側で実行する分のプログラムを記憶部220から読み出し、送受信部211を介しユーザ端末100に送信する。
同期処理部214は、サーバ処理部212の指示に従って、ゲームのマルチプレイ機能に対応するための同期処理を行う。同期処理部214は、各アカウントに対応するユーザ端末100から受信する何らかの情報を、他のユーザ端末100に送信することでユーザ端末間の同期を行う。同期処理部214はサーバ200から複数のユーザ端末100に何らかの情報を送信する場合も、各ユーザ端末100に同期して情報を送信する。なお、同期処理部214は、同期のタイミングや同期すべき情報等をサーバ処理部212から受信すればよい。これにより、例えばあるユーザ端末100において行われた入力操作によって引き起こされるゲーム内の作用が、他のユーザ端末100において同期されて示される。
(ユーザ端末100の機能的構成)
図3は、ユーザ端末100の機能的構成を示すブロック図である。ユーザ端末100は、ユーザの入力操作を受け付ける入力装置としての機能と、ゲームの画像や音声を出力する出力装置としての機能を有する。ユーザ端末100は、プロセッサ10、メモリ11、ストレージ12、通信IF13、および入出力IF14等の協働によって、制御部110および記憶部120として機能する。
記憶部120は、ゲームプログラム121と、ゲーム情報122と、ユーザ情報123とを格納する。ゲームプログラム121は、ユーザ端末100側で実行するゲームプログラムである。ゲーム情報122は、制御部110がゲームプログラム121を実行する際に参照するデータであって、サーバ200のゲーム情報222と同様の情報を含んでいる。ユーザ情報123は、ユーザ端末100のユーザのアカウントに関するデータであって、サーバ200のユーザ情報223と同様の情報を含んでいる。
制御部110は、記憶部120に格納されたゲームプログラム121を実行することにより、ユーザ端末100を統括的に制御する。例えば、制御部110は、ゲーム情報122に記憶された、ゲーム空間を規定するための情報を参照してゲーム空間を規定する。制御部110は、各種データを送受信する。例えば、制御部110はサーバ200から各種データ、プログラム、およびマルチプレイ機能に対応するための同期のためのデータ等を受信する。例えば、制御部110は、ゲーム情報122またはユーザ情報123の一部または全部や、マルチプレイ機能に対応するための同期の要求をサーバ200に送信する。
制御部110は、ゲームプログラム121の記述に応じて、入力操作受付部112、ゲーム進行処理部111、カメラ配置制御部113、表示制御部114、オブジェクト制御部115、および抽選制御部116として機能する。
入力操作受付部112は、入力部151に対するユーザの入力操作を検知し受け付ける。入力操作受付部112は、タッチスクリーン15およびその他の入出力IF14を介したコンソールに対してユーザが及ぼした作用から、いかなる入力操作がなされたかを判別し、その結果を制御部110の各要素に出力する。
例えば、入力操作受付部112は、入力部151に対する入力操作がなされた場合、入力位置の座標および操作の種類を検知する。例えば、入力操作受付部112は、タッチ操作、スライド操作、スワイプ操作、およびタップ操作等を検知する。入力操作受付部112は、連続して検知されていた入力が途切れると、タッチスクリーン15から接触入力が解除されたことを検知する。
ゲーム進行処理部111は、ゲームの進行に係る各種処理を行う。例えば、ゲーム進行処理部111は、入力操作受付部112が受け付けた入力操作の入力位置の座標と操作の種類とから示されるユーザの指示内容を解釈する。例えば、ゲーム進行処理部111は、ゲーム情報122またはユーザ情報123の追加、更新、または削除を行う。例えば、ゲーム進行処理部111は、ゲームの進行に係る各種判定処理を行う。
カメラ配置制御部113は、ゲーム空間のうちユーザに提示する領域を指定するための仮想カメラを規定する。カメラ配置制御部113は、仮想カメラのゲーム空間内での位置および向きを規定することにより、仮想カメラをゲーム空間に仮想的に配置する。さらに、カメラ配置制御部113は、仮想カメラで規定される視野領域および当該視野領域に配置されているオブジェクトを描画した画像を作成するよう、表示制御部114に指示する。
なお、カメラ配置制御部113は、仮想カメラの位置および向きを、ゲーム空間毎に適宜決定してよい。例えば、カメラ配置制御部113は特定のオブジェクトの位置や向きを基準として、当該オブジェクトが特定の向きで視野領域の中央に写るように、当該オブジェクトから一定の方向、距離、および角度で仮想カメラを配置してもよい。特定のオブジェクトとは、例えばユーザ端末100で操作キャラクタのオブジェクトであってもよいし、ノンプレイヤキャラクタ等他のキャラクタを示す動的なオブジェクトであってもよいし、建物や木、石などを示す静的なオブジェクトであってもよい。ここで、ゲーム空間における動的なオブジェクトには、ゲームプログラム121および221に基づいて動作するキャラクタ(例えば、ノンプレイヤキャラクタ、敵キャラクタなど)とユーザによる操作に基づいて動作する操作キャラクタとが含まれる。
表示制御部114は、表示部152に画像を表示させる。例えば、表示制御部114は、ゲーム空間のうち、カメラ配置制御部113が規定する仮想カメラの視野の領域と、当該領域に存在するオブジェクトとを描画した画像を生成し、表示部152に表示させる。さらに、表示制御部114は、このような画像に、アイコン、ボタン、各種パラメータを示すメニュー等、ゲームの種々の操作に必要なUI(user interface)に係るオブジェクトを重畳して描画してもよい。
オブジェクト制御部115は、ゲーム情報122に含まれる、オブジェクトの設定情報に基づきゲーム空間にオブジェクトを配置する。オブジェクト制御部115は、ゲーム空間に配置したオブジェクトを制御する。例えば、オブジェクト制御部115は、オブジェクトのゲーム空間内での位置、向き、形状、色等を変更したり、オブジェクトに所定の一連の動作を行わせたりする。
抽選制御部116は、ゲーム情報122に格納されている複数の共闘戦闘の中から、抽選に参加する操作キャラクタの能力に応じた難易度の共闘戦闘を決定する。ここで、難易度とは、共闘戦闘に含まれるボスキャラクタとの戦闘に勝利することの困難さの度合いを示す指標である。難易度は、例えば、ボスキャラクタのレベルの高低、討伐すべきボスキャラクタの数などに基づいて設定され得る。なお、抽選制御部116が決定する共闘戦闘毎に当選確率が設定されている。この当選確率は、例えば、ゲーム情報122に含まれている。抽選制御部116は、この当選確率に基づいて、1または複数の共闘戦闘を決定する。抽選制御部116によって決定された共闘戦闘は、ゲーム進行処理部111によって、この操作キャラクタに関連付けてユーザ情報123に登録される。
なお、ゲームシステム1は、ユーザ端末100が備える機能の少なくとも一部をサーバ200が備えるように構成されていてもよい。ゲームシステム1は、サーバ200が備える機能の少なくとも一部をユーザ端末100が備えるように構成されていてもよい。さらに、ユーザ端末100およびサーバ200以外の他の装置をゲームシステム1の構成要素とし、該ハードウェアにゲームシステム1における処理の一部を実行させてもよい。すなわち、本実施形態においてゲームプログラム121および221を実行するコンピュータは、ユーザ端末100、サーバ200、および他の装置の何れであってもよい。
(ゲームの進行とゲーム空間の遷移)
図4は、ゲームシステム1の提供するゲームの進行とゲーム空間の遷移例とを示す図である。
制御部110は、ゲームの進行に応じてゲーム空間を遷移する。以下では、準備空間、戦闘空間、および共闘戦闘空間という複数のゲーム空間が規定されている場合を例に挙げて説明する。図4には、準備空間から戦闘空間への遷移t1、戦闘空間から共闘戦闘空間への遷移t2、準備空間から共闘戦闘空間への遷移t3、および共闘戦闘空間から準備空間への遷移t4が示されている。
準備空間は、敵キャラクタが出現しないゲーム空間である。準備空間は、ユーザにクエストの準備を行わせるためのゲーム空間である。制御部110が準備空間においてゲームを進行させているときに、ユーザによりクエストの開始指示を示す入力操作がなされると、制御部110は、ゲーム空間を準備空間から戦闘空間へと遷移させる(遷移t1)。
準備空間は、操作キャラクタによって共闘戦闘をプレイする権利を取得するための操作を受け付けるためのゲーム空間でもある。制御部110が準備空間においてゲームを進行させているときに、入力操作受付部112がユーザによる抽選参加希望の入力操作を受け付けた場合、制御部110は、準備空間から、準備空間に含まれる別のゲーム空間である抽選空間へ遷移させてもよい。
制御部110は、準備空間においてクエストおよび共闘戦闘のゲームクリアに成功した場合等に与えられる報酬の受け取りを行わせてもよい。制御部110は、準備空間において入力操作受付部112がマップ移動操作などの所定の入力操作を受け付けた場合、クエストを開始させないままゲーム空間を戦闘空間に遷移させてもよい。制御部110は、ユーザにより共闘戦闘の開始指示がなされた場合は、ゲーム空間を準備空間から共闘戦闘空間へと遷移させてもよい(遷移t3)。
戦闘空間は、操作キャラクタと敵キャラクタとが遭遇して戦闘するためのゲーム空間である。操作キャラクタと敵キャラクタとの戦闘については後で詳述する。
サーバ200は同期処理部214により、またはユーザ端末100からの情報を受信して、所定の条件が満たされたと判定した場合、この条件を満たしたユーザ端末100に、ゲーム空間を戦闘空間から共闘戦闘空間に遷移させるよう指示する。この指示を受け、各ユーザ端末100の制御部110は、ゲーム空間を戦闘空間から共闘戦闘空間へと遷移させる(遷移t2)。戦闘空間から共闘戦闘空間へ遷移するための所定の条件は、例えば、特定の敵キャラクタ(例えば、ボスキャラクタ)の出現条件が満たされたことであってもよい。
共闘戦闘空間は、マルチプレイ機能に対応した戦闘が行われる戦闘空間である。共闘戦闘空間は、1または複数の操作キャラクタおよびノンプレイヤキャラクタと、特定の敵キャラクタ(例えば、ボスキャラクタ)とが戦闘するためのゲーム空間である。以降、同一の共闘戦闘空間にオブジェクトとして配置された1または複数の操作キャラクタおよびノンプレイヤキャラクタをまとめて「味方キャラクタ」と称する。共闘戦闘空間における共闘戦闘において味方キャラクタが敗北したり、勝利したりすると、その戦闘が終了する。共闘戦闘空間における共闘戦闘が終了すると、ゲーム空間を共闘戦闘空間から準備空間へと遷移させる(遷移t4)。特定の敵キャラクタとの共闘戦闘に勝利した場合、その共闘戦闘に参加した各ユーザは、特定の報酬を獲得し得る。この特定の報酬は、操作キャラクタが装備する装備アイテム、装備アイテムを取得するための素材アイテム、および装備アイテムを強化するための強化アイテム、の少なくとも何れかを含む。特定の報酬は、例えば、準備空間において、共闘戦闘に参加した操作キャラクタごとに付与される。
オブジェクト制御部115は共闘戦闘空間に、操作キャラクタと、少なくとも1体のボスキャラクタとを配置する。特定の敵キャラクタと戦闘する味方キャラクタの数は予め定められた数であってもよい。以下では、味方キャラクタの数が4体である場合を例に挙げて説明するが、これは単なる例であり、2体、3体、9体、11体など任意に設定され得る。
本実施形態においてオブジェクト制御部115は、共闘戦闘空間に遷移した際に操作キャラクタが4体未満である場合、味方キャラクタが合計4体となるようにノンプレイヤキャラクタを配置する。すなわち、共闘戦闘空間における共闘戦闘に参加するユーザの操作キャラクタの数が所定数(例えば4体)に満たない場合、オブジェクト制御部115は、不足分を、ゲームプログラムに基づいて動作するノンプレイヤキャラクタで補う。
共闘戦闘空間は戦闘空間と同じゲーム空間であってもよい。換言すると、制御部110は、ゲーム空間を戦闘空間から共闘戦闘空間へと遷移させるのではなく、戦闘空間において仮想カメラのカメラワークと、UI表示とを共闘戦闘空間としてのカメラワークおよびUI表示に変更することで、共闘戦闘空間を実現してもよい。
ゲーム進行処理部111が、味方キャラクタがボスキャラクタの討伐に成功したと判定した場合、制御部110は、ゲーム空間を共闘戦闘空間から戦闘空間または準備空間へと遷移させる。なお、制御部110は、ゲーム進行処理部111がボスキャラクタの討伐に成功したと判定してから一定時間が経過した後に、ゲーム空間を戦闘空間または準備空間へと遷移させてもよい。制御部110は共闘戦闘空間においてゲームを進行させているときにマップ移動など所定の移動動作を受け付けた場合、ゲーム空間を共闘戦闘空間から準備空間あるいは戦闘空間に遷移させるようにしてもよい。
本実施形態では、各ユーザ端末100はサーバ200と協働することで、マルチプレイ機能に対応するためのゲームの処理を行う。ユーザ端末100の制御部110が規定するゲーム空間には、そのユーザ端末100からログインしたアカウントに対応する操作キャラクタと、他のユーザ端末100からログインしたアカウントに対応する操作キャラクタとが配置され得る。以下では、図1〜図3を参照しつつ、ゲーム空間の遷移に関するいくつかの処理例について具体的に説明する。
オブジェクト制御部115は、制御部110が規定したゲーム空間に操作キャラクタを含む各種オブジェクトを配置する。ユーザにより入力操作がなされると、オブジェクト制御部115は入力操作に応じて操作キャラクタを随時動かす。これにより、制御部110は操作キャラクタを介しユーザにゲーム空間内を探索させることができる。
サーバ200は、各ユーザ端末100にゲーム空間を共闘戦闘空間に遷移させる指示を送信する際、1または複数の操作キャラクタおよびノンプレイヤキャラクタを所定の条件に基づき、敵キャラクタと戦闘するグループとしてまとめてもよい。例えば、サーバ200は、レベルが高い操作キャラクタから順に4体の操作キャラクタを、敵キャラクタと戦闘するグループとしてまとめてもよい。サーバ200は、グループ毎に識別番号(識別No)を割り当ててもよい。同期処理部214は、グループに含まれるすべての操作キャラクタが同一の共闘戦闘空間に遷移するように、操作キャラクタを操作するために用いられる各ユーザ端末100に指示を送信する。
サーバ処理部212は、戦闘空間から共闘戦闘空間に遷移させるための所定の条件が満たされたか否かの判定を行う。例えば、サーバ処理部212は、ユーザ端末100からの同期に係る情報から、戦闘空間において所定の条件が満たされたか否かを判定すればよい。ここで、同期に係る情報とは、操作キャラクタが配置されている戦闘空間を一意に示す識別子や、戦闘空間における操作キャラクタの位置、ユーザ端末100の制御部110がゲーム空間を戦闘空間に遷移させてからの経過時間などである。
なお、戦闘空間において所定の条件が満たされたか否かの判定は、ユーザ端末100のゲーム進行処理部111が行ってもよい。この場合、制御部110は判定結果を示す情報をサーバ200に送信する。
同期処理部214は、同じ共闘戦闘空間に遷移させるユーザ端末100の最大数、すなわち共闘戦闘空間における味方キャラクタの最大数を制限してもよい。最大数を示す情報はゲーム情報122および222の少なくともいずれかに含まれる。
オブジェクト制御部115は、サーバ200からの指示とゲーム情報122とを参照し、味方キャラクタの最大数に応じて、共闘戦闘空間に操作キャラクタを配置する。オブジェクト制御部115は、共闘戦闘空間に遷移した際に味方キャラクタの数が最大数に満たない場合、最大数に不足している数だけノンプレイヤキャラクタを配置してもよい。
(操作キャラクタと敵キャラクタとの戦闘)
戦闘空間および共闘戦闘空間における戦闘について、詳細に説明する。本実施形態に係るゲームにおける「戦闘」では、ユーザおよび他のユーザの操作キャラクタと敵キャラクタとが、互いに攻撃動作を行う。なお、戦闘に係る各種処理や表示は、戦闘空間における敵キャラクタとの戦闘と、共闘戦闘空間におけるボスキャラクタとの戦闘とで共通であるから、以下では敵キャラクタとの戦闘について説明する。
操作キャラクタおよび敵キャラクタには、少なくとも体力値を含む各種パラメータ(例えば攻撃力、防御力など)の値が設定されている。操作キャラクタのパラメータの設定値はユーザ情報123に含まれ、敵キャラクタのパラメータの設定値はゲーム情報122に含まれる。
戦闘空間において、オブジェクト制御部115は、入力操作受付部112が受け付けた入力操作に応じて、ユーザが使用するユーザ端末100のアカウントに対応する操作キャラクタに、攻撃動作を行わせる。そして、ゲーム進行処理部111は、ユーザの操作キャラクタの攻撃がいずれかの敵キャラクタに当たったか否か、すなわち攻撃が成功したか否かを判定する。さらに、ゲーム進行処理部111は、ユーザの操作キャラクタの攻撃が成功したと判定した場合、攻撃対象とされた敵キャラクタに与えるダメージ値の算出を行う。さらに、ゲーム進行処理部111は、算出したダメージ値を敵キャラクタの体力値から減算する。もしくは、ゲーム進行処理部111は、算出したダメージの値を含む、敵キャラクタへのダメージの総計と、敵キャラクタの体力値とを比較する。
敵キャラクタの体力値が0以下になった場合、または敵キャラクタへのダメージの総計が敵キャラクタの体力値以上になった場合、ゲーム進行処理部111は敵キャラクタが討伐されたと判定する。
戦闘空間において、オブジェクト制御部115は、敵キャラクタに攻撃動作を行わせる。ゲーム進行処理部111は、敵キャラクタによる攻撃動作についても、操作キャラクタの攻撃動作と同様に攻撃の成否判定を行い、操作キャラクタに対する攻撃が成功した場合にはダメージ値の算出も行う。
操作キャラクタの体力値が0以下になる、または操作キャラクタへのダメージの総計が操作キャラクタの体力値以上になった場合、ゲーム進行処理部111は操作キャラクタが戦闘不能になったと判定する。この場合、入力操作受付部112が操作キャラクタに係る入力操作を受け付けても、オブジェクト制御部115は入力操作に対応する動作を操作キャラクタに行わせない。
(準備空間の具体例)
図5は、準備空間を描画した表示画面例を示す。図5の状態(A)は、準備空間の表示画面の一例を示す。図5の状態(B)は、準備空間においてクエストの一覧リストL1を含むウィンドウW1を表示させたときの表示画面の一例を示す。図5の状態(C)は、準備共闘戦闘の一覧リストL2を含む。
図6の状態(A)には、準備空間の背景に加えて、ユーザの操作キャラクタx、および、他のユーザの操作キャラクタy1、y2が表示されている。また、図6の状態(A)には、ゲームプログラム121および221に基づいて動作するノンプレイヤキャラクタz1およびノンプレイヤキャラクタz2が表示されている。ノンプレイヤキャラクタz1およびノンプレイヤキャラクタz2はそれぞれ、準備空間から戦闘空間への遷移t1、および準備空間から共闘戦闘空間への遷移t3を開始する所定の入力操作を受け付ける。図6の(A)に示す例では、抽選空間への入り口を示すオブジェクトz3が設けられている。オブジェクトz3は、準備空間から抽選空間への遷移を開始する所定の入力操作を受け付ける。
オブジェクト制御部115は、準備空間に、ユーザ端末100でログインしているアカウントに対応する操作キャラクタx、を配置している。オブジェクト制御部115は、準備空間に、他のユーザ端末100の操作キャラクタy1およびy2を配置している。さらに、オブジェクト制御部115は、準備空間に、ノンプレイヤキャラクタz1、ノンプレイヤキャラクタz2、およびオブジェクトz3を配置している。ノンプレイヤキャラクタz1およびz2は、クエストの選択、開始、および共闘戦闘の選択、開始を指示する入力操作を受け付けるためのオブジェクトである。オブジェクトz3は、共闘戦闘をプレイする権利を取得するための抽選に操作キャラクタを参加させるための入力操作を受け付けるオブジェクトである。
カメラ配置制御部113は、準備空間において、操作キャラクタxの位置および向きを基準として仮想カメラの位置および向きを決定する。例えば、カメラ配置制御部113は操作キャラクタxが視野中央やや下に写り、かつ、操作キャラクタxの後方(背面)斜め上から見下ろすような位置および向きで仮想カメラを配置する。操作キャラクタxの位置または向きを変更する操作がユーザにより行われた場合、オブジェクト制御部115は操作キャラクタxを変更後の位置および向きで配置する。またカメラ配置制御部113は、仮想カメラの位置および向きを変更後の操作キャラクタxの位置に応じた位置および向きに変更する。そして、表示制御部114は、変更後の位置に変更後の向きで配置された仮想カメラの視野領域内の準備空間および操作キャラクタxを描画する。他のユーザによる操作によって動作する操作キャラクタy1およびy2の位置および向きについても同様である。
図5の状態(A)には、メニューM1が表示されている。メニューM1には、ユーザの操作キャラクタxの現在のレベル「Lv.40」および体力値V1が表示されている。この他に、図6の状態(A)には、ユーザの入力操作のためのUIであるボタンB1、およびB2が表示されている。
このように、表示制御部114は、上述した準備空間および準備空間内のオブジェクトを描画した画像に、ユーザの入力操作のためのUIを重畳した画像を作成してもよい。例えば表示制御部114は、図5に示すようにボタンB1およびB2の画像を準備空間および上述した各種オブジェクトの画像に重畳させた画像を作成してもよい。ボタンB1は、ユーザによるゲームの設定や通知の表示指示を受け付けるためのボタンであり、ボタンB2は、ユーザによるマップ移動や装備変更等を受け付けるためのボタンである。
ユーザ端末100がノンプレイヤキャラクタz1を選択すると、ゲーム進行処理部111は表示制御部114に、ユーザが選択可能なクエストの一覧リストL1を含むウィンドウW1を描画するよう指示する。一覧リストL1に含まれているクエストは、ユーザにプレイする権利が付与されているクエストである。表示制御部114は、図5の状態(B)に示すように、ウィンドウW1を準備空間およびオブジェクトの画像に重畳した画像を作成し、表示部152に表示させる。図5の状態(B)に示す例では、ウィンドウW1の一覧リストL1には、3つのクエストが含まれている。そして、各クエストについて、クエストの名称(「モンスターAAの討伐」など)、達成条件(「モンスターAA:0/3」など)、マップ名(「草原1」など)、および報酬(「報酬:銅版」など)が記載されている。なお、一覧リストL1における各クエストの内容の表示は一例であり、同図の記載に限られない。
ここで、達成条件「モンスターAA:0/3」とは、討伐すべきモンスターAAの数が3体であることを示している。なお、クエストの達成条件の内容は特に限定されない。例えば、クエストの達成条件は、特定の敵キャラクタを特定の数だけ討伐すること、特定の敵キャラクタの討伐により得られるアイテムを特定の個数収集すること等であってもよい。
マップ名とは、クエストを選択した場合に遷移する戦闘空間または共闘戦闘空間の名称を示す。報酬とは、クエスト達成によりユーザの操作キャラクタまたはアカウントに付与する、ゲームをより有利に進行させることが可能になる物品、機能、または情報などを示す。例えば、報酬はゲーム内通貨やアイテム、操作キャラクタの能力を向上させる装備品、ならびに操作キャラクタのスキルなどであってよい。
ユーザ端末100がノンプレイヤキャラクタz2を選択すると、ゲーム進行処理部111は表示制御部114に、ユーザがプレイ可能な共闘戦闘の一覧リストL2を含むウィンドウを表示部152に表示するよう指示する。一覧リストL2に含まれている共闘戦闘は、抽選制御部116によって決定された共闘戦闘として、操作キャラクタxに関連付けてゲーム情報122に登録されている。言い換えれば、一覧リストL2に含まれている共闘戦闘は、操作キャラクタxを操作するユーザにプレイする権利が付与されている共闘戦闘である。図5の状態(C)に示す例では、一覧リストL2には共闘戦闘J1〜J4の4つのクエストが含まれている。そして、各共闘戦闘について、ボスキャラクタK1の名称(「モンスターK1」など)、ボスキャラクタのレベル(「Lv.50」など)、共闘戦闘の難易度(「難易度:m1」など)が記載されている。なお、一覧リストL2における各共闘戦闘の内容の表示は一例であり、同図の記載に限られない。
ここで、共闘戦闘J1〜J4は、操作キャラクタが抽選に参加し、その抽選で引き当てた共闘戦闘である。この共闘戦闘は、特定のボスキャラクタとの戦闘を含むものである。抽選制御部116は、抽選に参加する操作キャラクタxの現在のレベルに応じたレベルのボスキャラクタとの戦闘を含む共闘戦闘を決定する。ボスキャラクタのレベルは、例えば、操作キャラクタxの現在のレベルを含む所定の範囲に含まれるレベルであってもよい。該所定の範囲は、例えば、「現在の操作キャラクタxのレベル値」±「所定値」の範囲であってもよい。図5の(C)に示す例では、抽選制御部116は、レベルLv.40の操作キャラクタxに対して、レベルLv.30〜50の範囲に含まれるレベルのボスキャラクタとの戦闘を含む共闘戦闘を決定している。
共闘戦闘において戦闘する各ボスキャラクタには、抽選において引き当てられる当選確率が設定されている。すなわち、ボスキャラクタには、当選確率が高いものと、当選確率が低いものとがある。図5の状態(C)に示す例では、各共闘戦闘において対戦するボスキャラクタに関する情報に加えて、抽選における当選確率の高低を示す表示Rを表示している。表示Rには、当選確率を示す情報が表示される。当選確率を段階的に示す情報として、高いものから順に、D、C、B、A、S、SSなどの表現を用いてもよい。
図5の状態(C)に示す例において、共闘戦闘J3は、レベルLv.44のボスキャラクタK3との戦闘を含む共闘戦闘であり、共闘戦闘J4は、レベルLv.16のボスキャラクタK3との戦闘を含む共闘戦闘である。共闘戦闘J4は、Lv.18のときに参加した抽選において引き当てたものであり、共闘戦闘J3は、Lv.40のときに参加した抽選において引き当てたものである。
(戦闘空間の具体例)
図6は、戦闘空間を描画した表示画面の一例を示す。図6の状態(A)は表示部152が縦向きの場合の表示画面を、図6の状態(B)は表示部152が横向きの場合の表示画面を示している。なお、表示部152が縦向きの場合の表示画面を縦画面、表示部152が横向きの場合の表示画面を横画面と称する。
図6に示す例では、戦闘空間の他に、メニューM2が表示されている。メニューM2には、ユーザの操作キャラクタxの現在のレベル「Lv.40」および総体力値「327」と体力値V1が表示されている。
カメラ配置制御部113は、戦闘空間において、準備空間と同様に、操作キャラクタxの位置および向きを基準として仮想カメラの位置および向きを決定する。ただし、カメラ配置制御部113は、縦画面と横画面とで視野領域が異なる仮想カメラを規定する。例えば、カメラ配置制御部113は、縦画面における仮想カメラの視野領域を、横画面における仮想カメラの視野領域よりも縦長としてもよい。他のアカウントに対応する操作キャラクタが自端末と同じマップ名の戦闘空間に配置される、または後から同じマップ名の戦闘空間に配置される場合、オブジェクト制御部115は当該戦闘空間に他のアカウントに対応する操作キャラクタy3を同期して配置する。
オブジェクト制御部115は、戦闘空間にユーザおよび他のユーザの操作キャラクタが戦闘可能な敵キャラクタe1を1つ以上配置する。表示制御部114は、当該操作キャラクタがいずれの敵キャラクタを攻撃の対象としているかを示すターゲットマーカt1を敵キャラクタに重畳して表示させてもよい。そして、ユーザの操作キャラクタが敵キャラクタを討伐した場合、ゲーム進行処理部111は、当該操作キャラクタに対応するアカウントに何らかの報酬を取得させてもよい。
なお、戦闘空間は複数のゲーム空間で構成されていてもよい。戦闘空間が複数のゲーム空間から成る場合、表示制御部114は、ユーザによる他の戦闘空間への移動指示を受け付けるためのオブジェクトアイコンC2等を表示してもよい。
戦闘空間でゲームが進行しているときに、入力操作受付部112が所定の操作を受け付けると、表示制御部114は、タッチスクリーン15における所定の操作が入力された位置に、所定の操作が入力されたことを示すオブジェクトを表示させる。所定の操作とは、操作キャラクタxを移動させるためのドラッグ操作(以下、「移動操作」という。)や、操作キャラクタxに攻撃動作を行わせるためのタップ操作(以下、「攻撃操作」という。)等である。入力操作受付部112は、タッチスクリーン15の任意の位置における移動操作や攻撃操作を受け付けることができる。これにより、ユーザの指などの指示体によって、操作キャラクタxや敵キャラクタの視認が妨げられることを回避できる。
表示制御部114は、入力操作受付部112が移動操作を受け付けた場合に、移動操作の方向を示すオブジェクトをタッチスクリーン15に 表示させてもよい。図6の状態(A)において、表示制御部114は、位置p1を中心とする弾性オブジェクトw1を表示させている。位置p1は、入力操作受付部112がタッチオン操作を受け付けた位置である。タッチオン操作とは、タッチスクリーン15に対して指示体を接触または近接させる操作である。指示体はユーザの指などであってもよいし、スタイラスペンなどであってもよい。
ここで、ユーザが、指示体を位置p1から位置p2に移動させる移動操作を行うと、入力操作受付部112が、指示体が位置p1から位置p2に移動したことを検出する。この検出結果に基づいて、表示制御部114は、弾性オブジェクトw1を位置p2まで引き伸ばすように変形させた弾性オブジェクトw2をタッチスクリーン15に表示させる。これにより、タッチスクリーン15が検出した移動操作の方向をユーザに認識させることができる。
入力操作受付部112がドラッグ操作の入力を受け付けると、オブジェクト制御部115は、操作キャラクタxをドラッグされた方向にドラッグされた時間または距離に応じて移動させる。入力操作受付部112がタップ操作を受け付けると、オブジェクト制御部115は操作キャラクタxに攻撃動作を行わせる。そして、ゲーム進行処理部111は、操作キャラクタxの攻撃の成否判定や、ダメージ値の算出を行う。
図6に示す例では、ユーザの入力操作のためのUIであるボタンB1、B2、B3、B4、B5、およびB6が表示されている。
このように、表示制御部114は、上述した戦闘空間および戦闘空間内のオブジェクトを描写した画像に、ユーザの入力操作のためのUIを重畳して描画してもよい。ボタンB3は、操作キャラクタxの特殊攻撃を指示するための特殊攻撃ボタンである。ボタンB4は「回復ボタン」であり、操作キャラクタxの体力の回復を指示するためのものである。ボタンB5は「チャットボタン」であり、同じ戦闘空間内に配置された操作キャラクタに対応するアカウント間でチャットを行うためのものである。ボタンB6は「武器切替ボタン」であり、操作キャラクタxが装備する武器の切り替えを行うためのものである。
表示制御部114は、ユーザの操作に応じた操作キャラクタxの行動に合わせてメッセージを表示させてもよい(図示せず)。例えば、表示制御部114は、操作キャラクタxが準備空間から戦闘空間へ移動した場合や、操作キャラクタxがアイテムを入手した場合に、その旨をユーザに知らせるメッセージを表示させてもよい。
なお、表示制御部114は、上述したUIに係る各種表示物(ボタン、メニュー、およびメッセージ)は、仮想カメラの位置および向きに関わらず、表示部152の表示画面において固定位置に描画することが望ましい。表示制御部114は、UIに係る各種表示物は、操作キャラクタの移動、攻撃、回復等の指示の入力を妨げないように、表示部152の表示画面の周縁部に描画することが望ましい。表示制御部114は、上述したUIに係る各種表示物の描画位置を、縦画面と横画面とで変更することが望ましい。
(共闘戦闘空間の具体例)
図7は、共闘戦闘空間を描画した表示画面の一例を示す。図7の状態(A)は表示部152が縦向きの場合の表示画面を、図7の状態(B)は表示部152が横向きの場合の表示画面を示している。オブジェクト制御部115は共闘戦闘空間には、操作キャラクタxとともに、ボスキャラクタK1のオブジェクトを配置する。
共闘戦闘空間では、カメラ配置制御部113は、仮想カメラの位置および向きを、ボスキャラクタK1と、操作キャラクタxとの位置関係に基づき規定してもよい。例えば、カメラ配置制御部113は、ボスキャラクタK1が視野中央に写り、かつ、操作キャラクタxが写るような角度で仮想カメラを配置する。ボスキャラクタK1または操作キャラクタxの位置が変わると、カメラ配置制御部113は仮想カメラの位置および向きを変更後のボスキャラクタK1および操作キャラクタxの位置に応じた位置および向きに変更する。そして、表示制御部114は、変更後の仮想カメラの位置および向きに基づき共闘戦闘空間および各オブジェクトを描画する。
図7の例では、オブジェクト制御部115は、操作キャラクタxとともにボスキャラクタK1と戦闘する味方キャラクタとして、他のアカウントに対応する操作キャラクタg1およびg2、ノンプレイヤキャラクタy6が表示されている。図7において、ノンプレイヤキャラクタy6の近傍に表示された体力値には、このキャラクタy6がノンプレイヤキャラクタであることを示す[NPC]という表示が付いている(例えば、[NPC]y6)。ここでは、操作キャラクタx、g1、g2を操作するそれぞれのユーザが、同じ共闘戦闘に参加する例を示したが、これに限定されない。操作キャラクタx以外のすべての味方キャラクタがノンプレイヤキャラクタであってもよい。
共闘戦闘空間において、ボスキャラクタK1が視野中央に写り、操作キャラクタxが写るような角度で仮想カメラを配置する場合、操作キャラクタxを移動させる操作を戦闘空間とは異ならせてもよい。例えば、上方向への移動操作を、操作キャラクタxをボスキャラクタK1に向けて前進させる操作とし、下方向への移動操作を、操作キャラクタxをボスキャラクタK1から後退させる操作としてもよい。
味方キャラクタがボスキャラクタK1に予め定められた体力値を0以下にした、またはボスキャラクタK1の体力値を超えるダメージを与えた場合、ゲーム進行処理部111はボスキャラクタK1の討伐が完了したと判定する。なお、ゲーム進行処理部111は、ボスキャラクタK1を討伐したと判定した場合、操作キャラクタまたは操作キャラクタに対応するアカウントに、通常の敵キャラクタとは異なる特別な報酬を付与してもよい。この場合、報酬は戦闘に参加した操作キャラクタ間で異なっていてもよい。
表示制御部114は、表示部152に表示させる共闘戦闘空間の画像においても、図6に示した戦闘空間の画像と同様に、ユーザの入力操作のためのUIを描画してもよい。表示制御部114は、味方キャラクタ、またはボスキャラクタの行動に応じたメッセージを表示させてもよい。例えば、表示制御部114は、ゲーム進行処理部111が、操作キャラクタがボスキャラクタの弱点を突く攻撃を成功させたと判定した場合や、味方の操作キャラクタまたはノンプレイヤキャラクタが戦闘不能となったと判定した場合に、その旨を通知するメッセージを表示させてもよい。または、表示制御部114は、ゲーム進行処理部111がボスキャラクタが行動不能等の特殊な状態に陥ったと判定した場合に、その旨を通知するメッセージを表示させてもよい。
なお、表示制御部114は、上述したUIに係る各種表示物(ボタン、メニュー、およびメッセージ)は、仮想カメラの位置および向きに関わらず、表示部152の表示画面において固定位置に位置するよう描画することが望ましい。表示制御部114は、UIに係る各種表示物は、操作キャラクタの移動、攻撃、回復等の指示の入力、ならびに味方キャラクタの位置、ボスキャラクタの攻撃動作、ボスキャラクタの弱点部位の表示など、ボスキャラクタとの戦闘における重要な情報の表示を妨げないように、表示部152の表示画面の周縁部に描画することが望ましい。表示制御部114は、上述したUIに係る各種表示物の描画位置も、表示部152の向きに応じて変更することが望ましい。
(共闘戦闘をプレイする権利を登録する処理の流れ)
図8は、抽選に参加した操作キャラクタに関連付けて、共闘戦闘をプレイする権利を登録する処理の流れを示すフローチャートである。
ステップS101において、入力操作受付部112は、抽選参加希望の入力操作を受け付ける。抽選参加希望の入力操作とは、例えば、図5の状態(A)において、オブジェクトz3を選択する操作であってもよい。
ステップS102において、抽選制御部116は、操作キャラクタの能力に応じた難易度の共闘戦闘を決定する。抽選制御部116によって決定された共闘戦闘は、抽選において操作キャラクタが引き当てた共闘戦闘である。
ステップS103において、ゲーム進行処理部111は、ステップS102において決定した共闘戦闘をプレイする権利を、抽選に参加した操作キャラクタに関連付けて、ユーザ情報123に登録する。ユーザ情報123に登録された共闘戦闘は、図5の状態(C)に示す共闘戦闘J1〜J4のように、一覧リストL2に表示される。
(抽選に参加して共闘戦闘をプレイする権利を取得)
図9は、抽選に参加して、共闘戦闘をプレイする権利を取得するための操作入力について説明する表示画面例である。図9の状態(A)は、抽選参加希望の入力操作を行った場合に表示される表示画面例である。図9の状態(B)は、抽選によってある共闘戦闘が当選した場合に表示される表示画面例である。図9の状態(C)は、抽選において引き当てた共闘戦闘を、ユーザがプレイする権利を有する共闘戦闘のリストに追加して表示する表示画面例である。
入力操作受付部112は、抽選参加希望の入力操作を受け付けると、表示制御部114に、図9の状態(A)に示す表示画面を表示部152に表示するよう指示する。表示制御部114は、図9に示すようにメニューM5、メニューM6、表示R、ボタンB6、およびボタンB7の画像を表示してもよい。
図9の状態(A)のメニューM5は、ユーザが現在所有しているアイテムの数を示している。メニューM6は、抽選に参加する毎に消費するアイテムの数を示している。
図9の状態(A)に示す例では、さらに、低い当選確率ではあるものの、抽選で引き当てることが可能なボスキャラクタK5が表示されている。なお、ボスキャラクタK5の代わりに、当選確率が同等、もしくはさらに低いボスキャラクタを表示してもよい。このように、当選確率が低い共闘戦闘において戦闘するボスキャラクタの姿を示すことにより、抽選に参加することの魅力を示してもよい。なお、図9の状態(A)に示す例において、表示Rには、ボスキャラクタK5の当選確率を示す「S」が表示されている。図9の状態(A)に示す例において、ボタンB6は、ボスキャラクタK5との戦闘を含む共闘戦闘のゲームクリアに成功した場合に獲得できるアイテムを紹介するページに遷移するためのものである。ボタンB7は、抽選を開始する指示を受け付けるものである。
入力操作受付部112が、ボタンB7への入力操作を受け付けると、抽選制御部116は、複数の共闘戦闘の中から、抽選に参加する操作キャラクタのレベルに応じた共闘戦闘を決定する。
表示制御部114は、図9の状態(B)に示すように、表示D1、D2、D3、D4などを表示する。表示D1〜D4には、抽選制御部116によって決定された共闘戦闘において戦闘するボスキャラクタK6に関する情報が表示される。図9の状態(B)に示す例では、表示D1にはボスキャラクタK6の当選確率、表示D2にはボスキャラクタK6のレベル「Lv.42」、表示D3にはボスキャラクタK6の名称「モンスターK6」、表示D4にはボスキャラクタK6の姿が表示されている。
図9の状態(B)に示す例では、ユーザの入力操作のためのUIであるボタンB9およびB10が表示されている。ボタンB9は、図5の状態(A)に示す準備空間を表示する表示画面に戻すためのユーザによる入力操作を受け付ける。ボタンB10は、抽選においてプレイする権利を取得した共闘戦闘をすぐに開始するためのユーザによる入力操作を受け付ける。
ユーザが引き当てたボスキャラクタK6との戦闘を含む共闘戦闘はゲーム進行処理部111によってユーザ情報123に登録される。登録済の共闘戦闘は、図9の状態(C)に示すように、ユーザによる開始希望の入力操作を受け付け可能な共闘戦闘J5として一覧リストL2に表示される。
なお、ゲーム進行処理部111は、当選確率が所定の当選確率よりも低い(例えば、「S」および「SS」など)共闘戦闘J5(希少イベント)をプレイする権利に当選したユーザに対して、当選した共闘戦闘に関連する共闘戦闘J6〜J7をプレイする権利を付与してもよい。この場合、当選した共闘戦闘に関連する共闘戦闘の難易度は、当選した共闘戦闘の難易度より高くてもよい。なお、共闘戦闘J5をプレイする権利に当選したユーザに付与する、共闘戦闘J5に関連する共闘戦闘は、1つであってもよいし、複数であってもよい。
例えば、図9の状態(C)に示すように、当選確率がSであるボスキャラクタK6との戦闘を含む共闘戦闘J5をプレイする権利を引き当てたユーザには、この共闘戦闘J5に関連する3つの共闘戦闘J6〜J8をプレイする権利も付与されている。当選した共闘戦闘J5に関連する共闘戦闘J6〜J8の難易度m6〜m8は、当選した共闘戦闘の難易度m6より高い。ゲーム進行処理部111は、例えば、共闘戦闘J5のゲームクリアに成功した場合の報酬として、操作キャラクタが装備する装備アイテム、装備アイテムを取得するための素材アイテムを操作キャラクタに付与してもよい。一方、共闘戦闘J6〜J7のゲームクリアに成功した場合の報酬は、共闘戦闘J5のゲームクリアに成功したときに取得した装備アイテムを強化するための強化アイテムであってもよい。このように報酬を設定することにより、共闘戦闘の魅力を適切に高めると共に、共闘戦闘に関連する共闘戦闘にさらに挑戦することへの合理的な動機づけを行い、ゲームの趣向性を向上させることができる。
(共闘戦闘の開始)
図10は、ユーザが共闘戦闘を開始するための操作入力について説明する表示画面例である。ここでは、操作キャラクタxを操作するユーザが、操作キャラクタg1を操作するユーザ、および操作キャラクタg2を操作するユーザと共に共闘戦闘空間における共闘戦闘を開始する様子を例に挙げて説明する。
ユーザによって、準備空間において、共闘戦闘を開始するよう入力操作が行われると、ユーザが使用するユーザ端末100において、図10に示すような画面が表示される。
共闘戦闘は、他のアカウントの操作キャラクタも味方キャラクタとして参加可能である。共闘戦闘を開始するよう指示するための入力操作は、例えば、前述のノンプレイヤキャラクタz2を選択する操作であってもよい。ユーザ端末100がノンプレイヤキャラクタz2を選択すると、ゲーム進行処理部111は表示制御部114に、ユーザが選択可能な共闘戦闘J1、J2、J3、J4などを含む一覧リストL2を表示するよう指示する(図5の状態(C)参照)。一覧リストL2に含まれている共闘戦闘は、ユーザにプレイする権利が付与されている共闘戦闘である。
図5の状態(C)において、ユーザが共闘戦闘J1を開始することを希望する場合、ユーザは共闘戦闘J1を選択すればよい。共闘戦闘J1が選択されると、制御部110は、図5の状態(C)に示す表示画面から、図10に示す表示画面に遷移する。例えば、入力操作受付部112は、共闘戦闘J1を選択するタッチ操作を受け付ける。共闘戦闘を選択するタッチ操作は、一覧リストL2に含まれる各共闘戦闘が表示された位置へのタッチ操作であってもよい。
図10は、共闘戦闘J1を開始する前の準備を行ったり、この共闘戦闘に参加を希望する他のユーザに、参加の準備を行わせたりする表示画面である。図10に示す例では、タイトルTにおいて、共闘戦闘J1において討伐すべきボスキャラクタK1の名称である「モンスターK1」が表示されていてもよい。メニューM4には、この共闘戦闘の識別番号「識別No.P」が表示されていてもよい。
なお、ユーザは共闘戦闘に参加を希望する他のユーザを募集する場合、参加を許可する条件を設定してもよい。参加を許可する条件は、他のユーザの操作キャラクタの能力についての上限または下限等であってもよい。例えば、共闘戦闘に参加を希望するユーザの操作キャラクタのレベルが、所定のレベルより低い場合、該ユーザの参加を許可しないようにすることができる。あるいは、識別番号を入力することを、参加を許可する条件としてもよい。この場合、共闘戦闘を開始するユーザからこの共闘戦闘の識別番号を予め知らされたユーザに限定して参加を許可することができる。ユーザによって入力された参加を許可する条件は、各共闘戦闘に関連付けられ、ゲーム進行処理部111によって、ユーザ情報123に記憶される。
図10に示す例では、この共闘戦闘J1において操作キャラクタxのオブジェクトが表示されており、その隣に、他のユーザの操作キャラクタg1のオブジェクト、更にその隣に他のユーザの操作キャラクタg2のオブジェクトが描画されている。図10に示す例では、操作キャラクタg1、g2ともに共闘戦闘J1に出発する準備が終わっており、「参加」という文字が重畳されている。なお、操作キャラクタg1、g2がまだ共闘戦闘に出発する準備ができていないときには、操作キャラクタg1のオブジェクトには「準備中」という文字が重畳されてもよい。
図10に示す例では、操作キャラクタg2の隣の1列が空欄となっている。このことは、操作キャラクタx、g1、g2が参加しても、あと1つの操作キャラクタが参加可能であることを示している。
図10に示す例では、さらにユーザの入力操作のためのUIであるボタンB9、B10、およびB11が表示されている。ボタンB9は「武器切替ボタン」であり、共闘戦闘J1に参加する前に、操作キャラクタg1が装備する武器の切り替えを行うためのものである。なお、図10に示すように、表示制御部114は、各操作キャラクタの名称Q1、レベルQ2、装備品Q3、総体力値Q4、攻撃や防御の能力値Q5、および他の操作キャラクタを回復させる能力値Q6などを表示する構成であってもよい。このような表示を参照することにより、ユーザは、味方キャラクタの能力を知ったうえで、戦闘に参加することができる。
ボタンB10は「退出ボタン」であり、共闘戦闘J1を開始することを取りやめ、図5の状態(C)に示す表示画面に戻るためのものである。ボタンB10に対するタッチ操作を行った場合、ユーザは開始希望の共闘戦闘を選択し直すことができる。
ボタンB11は「出発ボタン」であり、共闘戦闘J1の共闘戦闘空間にキャラクタxを移動させるためのものである。図10に示す例では、ユーザによってボタンB11に対するタッチ操作が行われた場合、共闘戦闘J1の共闘戦闘空間に操作キャラクタxに加え、操作キャラクタg1およびg2も出現する(図7参照)。この場合、図7に示すように、共闘戦闘J1に移動した操作キャラクタの数は3体(キャラクタxと操作キャラクタg1およびg2)であり、後の1体の味方キャラクタは、ノンプレイヤキャラクタy6である。
〔ソフトウェアによる実現例〕
制御部110および制御部210の制御ブロックは、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェアによって実現してもよい。
後者の場合、制御部110および制御部210は、各機能を実現するソフトウェアであるプログラムの命令を実行するCPU、上記プログラムおよび各種データがコンピュータ(またはCPU)で読み取り可能に記録されたROM(Read Only Memory)または記憶装置(これらを「記録媒体」と称する)、上記プログラムを展開するRAM(Random Access Memory)などを備えている。そして、コンピュータ(またはCPU)が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本開示は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
〔付記事項〕
本発明の一側面に係る内容を列記すると以下のとおりである。
(項目1) 本実施形態において、プロセッサ(10)およびメモリ(11)を備えるコンピュータ(ユーザ端末100)において実行されるゲームプログラムについて説明した。本実施形態のある局面によると、プロセッサ(10)、メモリ(11)、および、タッチスクリーン(15)を備えるコンピュータ(ユーザ端末100)において実行されるゲームプログラムであって、前記ゲームプログラムに基づくゲームは、ゲーム空間内において、前記ゲームプログラムに基づいて動作する敵キャラクタと、ユーザの操作に基づいて動作する操作キャラクタとが戦闘することによって進行し、特定の敵キャラクタとの戦闘であって、当該戦闘に勝利した場合に、前記操作キャラクタが前記ゲーム内で特定の報酬を獲得し得るイベントを含む。前記ゲームプログラムは、前記プロセッサに、前記操作キャラクタによって前記イベントをプレイする権利を取得するための操作を受け付けるステップ(S101)と、ゲーム空間内における抽選において前記ユーザが引き当てた結果に基づいて、前記操作キャラクタの能力に応じた難易度の前記イベントを決定するステップ(S102)と、前記決定したイベントをプレイする権利を、前記操作キャラクタに関連付けて前記メモリに登録するステップ(S103)と、を実行させる。前記の構成によれば、抽選において、操作キャラクタの能力に応じた難易度のイベントをプレイする権利をユーザに付与することができる。抽選に参加することにより、特定の敵キャラクタとの戦闘を引き当てることが可能である。これにより、敵キャラクタを倒した結果として、武具等のアイテムを強化したり、強いアイテムを作成したりできることを楽しむゲームにおいて、その面白さを損なわずに、強力な武具等のアイテムを提供することができる。
(項目2) (項目1)において、前記特定の報酬は、前記操作キャラクタが装備する装備アイテム、前記装備アイテムを取得するための素材アイテム、および前記装備アイテムを強化するための強化アイテム、の少なくとも何れかを含む。前記の構成によれば、所望の特定の敵キャラクタとの戦闘を引き当てることの意義が明確となり、抽選への参加を促すことができる。
(項目3) (項目1)または(項目2)において、前記抽選において出現する確率が相対的に低い希少イベントを引き当てたユーザに対して、当該希少イベントに関連する1または複数のイベントをプレイする権利をさらに付与する。前記の構成によれば、抽選に参加して、希少イベントをプレイする権利に当選することの魅力を高めることができる。
(項目4) (項目3)において、前記希少イベントに関連するイベントの難易度は、当該希少イベントの難易度よりも高い。前記の構成によれば、希少イベントより難易度が高いイベントに挑戦する機会を与えることにより、ゲームの趣向性を高めることができる。
(項目5) (項目1)から(項目4)のいずれかにおいて、前記ゲームプログラムは、前記プロセッサに、さらに、前記イベントの戦闘に、当該イベントをプレイする権利を有する前記ユーザの前記操作キャラクタと共に、他のユーザの操作に基づいて動作する他の操作キャラクタを戦闘に参加させるステップ、を実行させる。前記の構成によれば、ユーザがプレイする権利を有するイベントに、他のユーザの操作キャラクタを参加させることができる。
(項目6) 本実施形態において、プロセッサ(10)、メモリ(11)、および、タッチスクリーン(15)を備えるコンピュータ(ユーザ端末100)が、ゲームを実行する方法を説明した。本実施形態のある局面によると、前記ゲームは、ゲーム空間内において、前記ゲームのゲームプログラムに基づいて動作する敵キャラクタと、ユーザの操作に基づいて動作する操作キャラクタとが戦闘することによって進行し、特定の敵キャラクタとの戦闘であって、当該戦闘に勝利した場合に、前記操作キャラクタが前記ゲーム内で特定の報酬を獲得し得るイベントを含む。前記ゲームプログラムは、前記プロセッサに、前記操作キャラクタによって前記イベントをプレイする権利を取得するための操作を受け付けるステップ(S101)と、ゲーム空間内における抽選において前記ユーザが引き当てた結果に基づいて、前記操作キャラクタの能力に応じた難易度の前記イベントを決定するステップ(S102)と、前記決定したイベントをプレイする権利を、前記操作キャラクタに関連付けて前記メモリに登録するステップ(S103)と、を含む。これにより、(項目6)に係る方法は、(項目1)に係るゲームプログラムと同様の作用効果を奏する。
(項目7) 本実施形態において、ゲームプログラムを記憶する記憶部(120)と、前記ゲームプログラムを実行することにより、情報処理装置(ユーザ端末100)の動作を制御する制御部(110)と、タッチスクリーン(15)と、を備えた情報処理装置について説明した。本実施形態のある局面によると、前記ゲームプログラムに基づくゲームは、ゲーム空間内において、前記ゲームプログラムに基づいて動作する敵キャラクタと、ユーザの操作に基づいて動作する操作キャラクタとが戦闘することによって進行し、特定の敵キャラクタとの戦闘であって、当該戦闘に勝利した場合に、前記操作キャラクタが前記ゲーム内で特定の報酬を獲得し得るイベントを含む。前記制御部は、前記操作キャラクタによって前記イベントをプレイする権利を取得するための操作を受け付け、ゲーム空間内における抽選において前記ユーザが引き当てた結果に基づいて、前記操作キャラクタの能力に応じた難易度の前記イベントを決定し、前記決定したイベントをプレイする権利を、前記操作キャラクタに関連付けて前記メモリに登録する。これにより、(項目7)に係る情報処理装置は、(項目1)に係るゲームプログラムと同様の作用効果を奏する。