以下に添付図面を参照しながら、本発明の実施形態の一態様について詳細に説明する。かかる実施形態に示す寸法、材料、その他具体的な数値等は、理解を容易とするための例示にすぎず、特に断る場合を除き、本発明を限定するものではない。なお、本明細書および図面において、実質的に同一の機能、構成を有する要素については、同一の符号を付することにより重複説明を省略し、また本発明に直接関係のない要素は図示を省略する。
(情報処理システムSの全体の構成)
図1は、情報処理システムSの概略的な構成を示した説明図である。情報処理システムSは、プレイヤ端末1と、サーバ100と、通信基地局200aを有する通信ネットワーク200とを含む、所謂クライアントサーバシステムである。
プレイヤ端末1は、通信ネットワーク200を介してサーバ100との通信を確立することができる。プレイヤ端末1は、サーバ100と無線もしくは有線による通信接続が可能な電子機器を広く含む。プレイヤ端末1としては、例えば、スマートフォン、携帯電話、タブレット装置、パーソナルコンピュータ、ゲーム機器等が挙げられる。本実施形態では、プレイヤ端末1として、スマートフォンが用いられる場合について説明する。
サーバ100は、複数のプレイヤ端末1と通信接続される。サーバ100は、ゲームをプレイするプレイヤごとに各種の情報(プレイヤ情報)を蓄積する。また、サーバ100は、プレイヤ端末1から入力される操作に基づき、蓄積された情報の更新と、ゲームの進行制御とを行う。
通信基地局200aは、通信ネットワーク200と接続され、プレイヤ端末1と無線による情報の送受信を行う。通信ネットワーク200は、携帯電話網、インターネット網、LAN(Local Area Network)、専用回線等で構成され、プレイヤ端末1とサーバ100との無線もしくは有線による通信接続を実現する。
本実施形態の情報処理システムSは、プレイヤ端末1およびサーバ100がゲーム装置Gとして機能する。プレイヤ端末1およびサーバ100には、それぞれゲームの進行制御の役割分担がなされており、プレイヤ端末1とサーバ100との協働によって、ゲームが進行可能となる。
(プレイヤ端末1およびサーバ100のハードウェアの構成)
図2Aは、プレイヤ端末1のハードウェアの構成を説明する図である。また、図2Bは、サーバ100のハードウェアの構成を説明する図である。図2Aに示すように、プレイヤ端末1は、CPU(Central Processing Unit)10、メモリ12、バス14、入出力インタフェース16、記憶部18、通信部20、入力部22、出力部24を含んで構成される。
また、図2Bに示すように、サーバ100は、CPU110、メモリ112、バス114、入出力インタフェース116、記憶部118、通信部120、入力部122、出力部124を含んで構成される。
なお、サーバ100のCPU110、メモリ112、バス114、入出力インタフェース116、記憶部118、通信部120、入力部122、出力部124の構成および機能は、それぞれ、プレイヤ端末1のCPU10、メモリ12、バス14、入出力インタフェース16、記憶部18、通信部20、入力部22、出力部24と実質的に同じである。したがって、以下では、プレイヤ端末1のハードウェアの構成について説明し、サーバ100については説明を省略する。
CPU10は、メモリ12に記憶されたプログラムを動作させ、ゲームの進行を制御する。メモリ12は、ROM(Read Only Memory)またはRAM(Random Access Memory)で構成され、ゲームの進行制御に必要となるプログラムおよび各種のデータを記憶する。メモリ12は、バス14を介してCPU10に接続されている。
バス14には、入出力インタフェース16が接続される。入出力インタフェース16には、記憶部18、通信部20、入力部22、出力部24が接続されている。
記憶部18は、DRAM(Dynamic Random Access Memory)等の半導体メモリで構成され、各種プログラムおよびデータを記憶する。プレイヤ端末1においては、記憶部18に記憶されたプログラムおよびデータが、CPU10によってメモリ12(RAM)にロードされる。
通信部20は、通信基地局200aと無線により通信接続され、通信ネットワーク200を介して、サーバ100との間で各種データおよびプログラムといった情報の送受信を行う。プレイヤ端末1においては、サーバ100から受信したプログラム等が、メモリ12または記憶部18に格納される。
入力部22は、例えば、プレイヤの操作が入力される(操作を受け付ける)タッチパネル、ボタン、キーボード、マウス、十字キー、アナログコントローラ等で構成される。また、入力部22は、プレイヤ端末1に設けられた、あるいは、プレイヤ端末1に接続(外付け)された専用のコントローラであってもよい。さらには、入力部22は、プレイヤ端末1の傾きや移動を検知する加速度センサ、または、プレイヤの音声を検知するマイクで構成されてもよい。すなわち、入力部22は、プレイヤの意思を、識別可能に入力させることができる装置を広く含む。
出力部24は、ディスプレイ装置およびスピーカを含んで構成される。なお、出力部24は、プレイヤ端末1に接続(外付け)される機器でもよい。本実施形態では、プレイヤ端末1が、出力部24としてディスプレイ26を備え、入力部22として、ディスプレイ26に重畳して設けられるタッチパネルを備えている。
(ゲーム内容)
次に、本実施形態の情報処理システムS(ゲーム装置G)により提供されるゲームの内容について、一例を用いて説明する。本実施形態では、ピンボールゲームにより、味方キャラクタが敵キャラクタと対戦するバトルゲームが提供される。具体的には、本実施形態のゲームでは、複数の味方キャラクタが提供される。プレイヤは、提供される味方キャラクタの中から複数(ここでは3体)を選択してパーティを編成する。また、プレイヤは、敵キャラクタや難易度が異なる複数種類のバトルゲームをプレイすることができる。
図3Aは、パーティ編成画面の一例を示す図である。図3Bは、情報確認画面の一例を説明する図である。図3Cは、クエスト画面におけるバトルゲーム選択ページの一例を示す図である。図3Dは、クエスト画面におけるプレイ内容選択ページの一例を説明する図である。プレイヤ端末1のディスプレイ26には、図3A、図3B、図3C、図3Dに示すようなゲーム画面が表示される。本実施形態では、ゲーム画面が、通常画面とバトル画面とに大別される。
通常画面は、主に、プレイヤが各種の設定、情報の確認を行うための画面である。一方、バトル画面は、バトルゲームの開始から終了までの間、ディスプレイ26に表示されている画面である。ここでは、バトル画面以外の全ての画面が通常画面となる。通常画面は、不図示のホーム画面と、図3Aに示すパーティ編成画面と、図3Bに示す情報確認画面と、図3Cおよび図3Dに示すクエスト画面の4つの画面に大別される。
なお、パーティ編成画面およびクエスト画面は複数のページで構成されており、プレイヤの操作によりページが切り替わる。通常画面では、ディスプレイ26の上部にヘッダ表示領域30が設けられる。ヘッダ表示領域30には、プレイヤのスタミナを示すスタミナ表示バー32が表示される。
なお、スタミナは、バトルゲームをプレイするために必要なパラメータである。本実施形態では、複数種類のバトルゲームが設けられており、各バトルゲームには、プレイに必要なスタミナの消費値が設定されている。プレイヤは、スタミナを消費してバトルゲームをプレイすることになるため、スタミナが不足している場合には、バトルゲームをプレイすることができない。
詳しい説明は省略するが、プレイヤは、バトルゲームで勝利すると、プレイヤ経験値を獲得することができる。そして、プレイヤ経験値が一定値に到達するごとに、プレイヤレベルが上昇する。プレイヤレベルには、スタミナの上限値が設定されており、プレイヤレベルが上昇するにつれて、スタミナの上限値も高くなる。スタミナは、上限値の範囲内で、一定時間(例えば5分)おきに所定値(例えば1ポイント)だけ回復する。スタミナ表示バー32は、スタミナの上限値に対して、現在のスタミナの残量が視覚的に把握できるように表示される。
また、ヘッダ表示領域30の左端には、通知画像34が表示される。詳しくは後述するが、通知画像34は、バトルゲームの招待情報、または、イベントの案内情報の受信をプレイヤに報知するものである。招待情報および案内情報のいずれも受信していない状態では、通知画像34が非報知態様で表示されている。なお、非報知態様の通知画像34は、全体的に色が薄く表示されている。これに対して、招待情報または案内情報の少なくともいずれかを受信した状態では、通知画像34が報知態様で表示される。報知態様の通知画像34は、非報知態様よりも目立つ色で強調表示されている。
また、通常画面では、ディスプレイ26の下部にメニューバー36が表示される。メニューバー36には、プレイヤが操作(タップ)可能な複数の操作部が設けられる。ここでは、操作部の一例として、メニューバー36に、「Home」と記されたホーム画面選択部36a、「Party」と記されたパーティ編成画面選択部36b、「Quest」と記されたクエスト画面選択部36c、「Info」と記された情報確認画面選択部36dが設けられている。
ホーム画面選択部36aがタップされると、ホーム画面がディスプレイ26に表示される。また、パーティ編成画面選択部36bがタップされると、図3Aに示すパーティ編成画面がディスプレイ26に表示される。同様に、情報確認画面選択部36dがタップされると、図3Bに示す情報確認画面がディスプレイ26に表示され、クエスト画面選択部36cがタップされると、図3Cに示すクエスト画面(バトルゲーム選択ページ)がディスプレイ26に表示される。
上記したように、通常画面は4つの画面に大別されている。メニューバー36においては、ディスプレイ26に表示中の画面が識別できるように、各画面に対応する操作部が強調表示される。なお、通常画面内でページが遷移する場合、あるいは、異なる通常画面に遷移する場合には、スタミナ表示バー32、通知画像34およびメニューバー36が表示されたままとなる。つまり、通常画面の画面遷移では、ヘッダ表示領域30およびメニューバー36以外の画像が切り替わる。
図3Aに示すパーティ編成画面では、プレイヤが所持している全ての味方キャラクタが表示される。プレイヤは、表示されている味方キャラクタから、3体の味方キャラクタを選択して、1つのパーティを編成することができる。ここでは、最大で6つのパーティを編成して記憶させることができる。各味方キャラクタには、経験値およびレベルが対応付けて記憶されている。経験値は、後述するバトルゲームで勝利した場合、あるいは、所定のアイテムを使用した場合に上昇する。レベルは、経験値に対応して設定され、経験値が所定値に達するたびにレベルが上昇する。なお、各味方キャラクタには、レベルの上限値が設定されており、上限値の範囲内でのみレベルが上昇する。
また、味方キャラクタには、レベルに応じて、ライフポイント、攻撃力、防御力等の戦闘力のベース値が設定されている。プレイヤは、味方キャラクタの戦闘力が高くなるほど、バトルゲームを有利に進行することができる。また、味方キャラクタに設定される各ベース値は、レベルが高くなるほど上昇する。
さらに、パーティ編成画面において、プレイヤは、パーティに組み込んだ味方キャラクタに対して、武器や防具の装備品を装備させる(設定する)ことができる。各装備品には、攻撃力および防御力等に対する加算値が設定されている。装備品を装備させると、上記のベース値に、各装備品の加算値が加算され、味方キャラクタの戦闘力を高めることができる。
図3Bに示す情報確認画面では、プレイヤに関するプレイヤ情報が表示される。プレイヤ情報としては、例えば、プレイヤ名、プレイヤ経験値、プレイヤレベル、プレイヤランク、保有キャラ数(プレイヤが保持している味方キャラクタの数)、フォロワ数、相互フォロワ数が表示される。なお、本実施形態において、フォロワとは、プレイヤが、所謂お気に入り、あるいは戦友として設定した他のプレイヤを示している。また、本実施形態において、相互フォロワとは、互いにフォロワに設定された状態にあるプレイヤを示している。
図3Cに示すクエスト画面のバトルゲーム選択ページでは、提供されているバトルゲームの種類、すなわち、バトルゲーム名が記された選択タブ38が複数表示される。ここでは、10種類のバトルゲームが提供されており、10個の選択タブ38が表示されている。なお、各バトルゲームには、それぞれ開放条件が設定されている。開放条件としては、例えば、プレイヤ経験値、プレイヤレベル、プレイヤランクが所定値以上であること、他の所定のバトルゲームをクリアしていること等が挙げられる。
プレイヤは、開放条件を満たしているバトルゲームのみをプレイすることができる。そのため、バトルゲーム選択ページでは、開放条件を満たしていないバトルゲームの選択タブ38には、図示のように、鍵付き表示がなされている。また、開放条件を満たしているバトルゲームの選択タブ38のみが、プレイヤの操作(タップ)を受け付ける。
バトルゲーム選択ページにおいて、選択タブ38がタップされると、図3Dに示すプレイ内容選択ページが表示される。このプレイ内容選択ページでは、パーティ編成画面で編成したパーティの中から、バトルゲームに用いるパーティを選択することができる。また、本実施形態では、プレイ種別として、一人でバトルゲームをプレイするシングルプレイと、通信により他のプレイヤと協力してバトルゲームをプレイするマルチプレイとが設けられている。プレイ内容選択ページには、シングルプレイタブ40aおよびマルチプレイタブ40bが表示される。
図4Aは、シングルプレイ選択時のプレイ内容選択ページの一例を説明する図である。図4Bは、バトル画面を説明する第1の図である。図4Cは、バトル画面を説明する第2の図である。図4Aに示すように、バトルゲームの種類、および、バトルゲームで利用するパーティが選択された状態で、シングルプレイタブ40aが操作されると、シングルプレイが開始される。
バトルゲーム中は、図4Bおよび図4Cに示すように、バトル画面が表示される。バトルゲームが開始されると、図4Bに示すように、ディスプレイ26にゲームフィールド50が表示される。ゲームフィールド50は、上面および両側面がオブジェクトで囲繞された仮想の2次元空間である。ただし、ゲームフィールド50の幅方向の中央下部にはオブジェクトが設けられておらず、アウト口50aが開口している。
ゲームフィールド50内には、アウト口50aの上方に一対のフリッパ52が配されている。一対のフリッパ52は、左右対称に配されており、フリッパ操作(タッチパネルの所定の領域のタップ操作)が入力されると、回転軸52aを中心として、図4Cに破線で示す初期位置から、実線で示す作動位置まで動作する。具体的には、回転軸52aは、フリッパ52の基端側に設けられており、一対のフリッパ52の先端は、互いにディスプレイ26の幅方向に離隔している。フリッパ操作が入力されると、フリッパ52の先端側が上方に移動するように、所定の角度だけ、回転軸52aを中心軸として揺動する。
なお、ここでは、フリッパ操作が入力されると、一対のフリッパ52が同時に動作する。ただし、例えば、右側のフリッパ52を動作させるためのタップ領域と、左側のフリッパ52を動作させるためのタップ領域とを別々に設け、左右のフリッパ52を独立して動作させてもよい。
そして、バトルゲームでは、プレイヤが選択したパーティを構成する3体の味方キャラクタ(以下、味方キャラという)のそれぞれが味方ボール54として、ゲームフィールド50内を移動する。なお、本実施形態では、1つの味方ボール54についてのみ説明するが、実際には、3つの味方ボール54がゲームフィールド50内に表示されている。
具体的には、3つの味方ボール54は、1つのメインボールと、2つのサブボールとに大別され、2つのサブボールは、メインボールに追従してゲームフィールド50内を移動する。プレイヤは、パーティを編成する際に、選択した3体の味方キャラから1体をリーダーに設定する必要がある。ここでは、リーダーに対応する味方ボール54がメインボールとなり、他の2体の味方キャラに対応する味方ボール54がサブボールとなる。なお、3つの味方ボール54は、メインボールおよびサブボールに区別することなく、それぞれ独立してゲームフィールド50内を移動してもよい。
ここで、ゲームフィールド50には、現実世界の重力と同様の現象を再現させる仮想的な重力が設定されている。また、味方ボール54、フリッパ52、および、味方ボール54が衝突可能な全ての衝突対象オブジェクトには、それぞれ質量、形状、反発係数などの力学的パラメータが予め設定されている。味方ボール54がフリッパ52または衝突対象オブジェクトに衝突すると、仮想的な重力と力学的パラメータとを用いた物理演算が行われる。この物理演算は、既知の物理エンジンにより実行される。物理演算により、味方ボール54の速度(速さと方向)が決定され、決定された速度に基づいて味方ボール54がゲームフィールド50内で移動表示される。
例えば、味方ボール54がフリッパ52の可動範囲内に位置するときに、フリッパ52が動作すると、フリッパ52が味方ボール54に衝突する。このとき、物理エンジンによる物理演算で味方ボール54の速度が決定され、図4Cに破線の矢印で示すように、味方ボール54が移動する。
ゲームフィールド50内には、上述の衝突対象オブジェクトとして、力学的パラメータが設定された構造物56、役物58および敵キャラ60が配される。ここでは、構造物56および役物58は、ゲームフィールド50の所定位置に固定的に配され、敵キャラ60は、ゲームフィールド50内を移動可能に配される。また、ゲームフィールド50を囲繞形成するオブジェクトも衝突対象オブジェクトであり、力学的パラメータが設定されている。
衝突対象オブジェクトに味方ボール54が衝突すると、物理演算により速度が決定される。また、上述のように、ゲームフィールド50には、仮想的な重力が設定されている。したがって、衝突対象オブジェクトに衝突しない場合にも、仮想的な重力の作用により、味方ボール54の速度が変化する。
構造物56および敵キャラ60に味方ボール54が衝突した場合、味方ボール54は、現実世界と同じような速度でゲームフィールド50内を移動する。つまり、構造物56および敵キャラ60には、衝突した味方ボール54の速度が現実世界と同等に決定されるような力学的パラメータが設定されている。これに対して、役物58には、衝突した味方ボール54が現実世界と異なる動きをするような力学的パラメータが設定されている。例えば、役物58には、味方ボール54を増速させるような力学的パラメータが設定されている。
また、敵キャラ60には、HP、攻撃力、防御力、特殊能力等が予め設定されており、味方ボール54が衝突すると、速度とともに、ダメージ値(以下、単にダメージともいう)が算出される。ダメージ値は、衝突した味方ボール54(より詳細には味方ボール54に対応する味方キャラ)の攻撃力、敵キャラ60の防御力、衝突時の味方ボール54の速さ等、味方キャラおよび敵キャラに予め設定されている戦闘パラメータに基づいて算出される。
味方ボール54が敵キャラ60に衝突してダメージ値が算出されると、敵キャラ60のHPからダメージ値が減算される。ゲームフィールド50内には、敵キャラ60の近傍に敵キャラHPメータ62が表示されている。敵キャラHPメータ62は、敵キャラのHPをメータ値により報知するものであり、ダメージ値が減算されると、メータ値が減少するアニメーションが表示される。敵キャラ60のHPが0になると、プレイヤの勝利となり、バトルゲームが終了する。
一方、ディスプレイ26の上部には、味方キャラHPメータ64が表示されている。味方キャラHPメータ64は、味方キャラのHPをメータ値により報知するものであり、味方キャラごとに表示される。
また、バトルゲームでは、図4Cに示すように、敵キャラ60からゲームフィールド50内に攻撃オブジェクト66が放出される。この攻撃オブジェクト66に味方ボール54が衝突すると、衝突した味方ボール54(対応する味方キャラ)に対するダメージ値が算出される。このとき算出されたダメージ値は、攻撃オブジェクト66に衝突した味方ボール54(味方キャラ)のHPから減算され、味方キャラHPメータ64のメータ値が減少するアニメーションが表示される。このようにして3体の味方キャラ全てのHPが0になると、プレイヤの敗北となり、バトルゲームが終了する。
なお、詳しい説明は省略するが、味方キャラには、予めスキルが設定されている。スキルというのは、バトルゲームにおいて使用可能な特殊能力であり、スキルを使用することで、プレイヤはバトルゲームを有利に進めることができる。一例として、スキルの使用により、プレイヤは、味方の攻撃力を高めたり、敵の攻撃力を下げたりする等、各種のパラメータを変化させることができる。
ここでは、味方キャラごとにスキル発動値が設定されており、スキル発動値が最大値に到達することが発動可能条件、すなわち、スキルの使用可能条件として設定されている。スキル発動値は、予め設定された更新条件にしたがって更新される。例えば、スキル発動値は、敵キャラ60に与えたダメージ値に基づき、所定のパラメータを考慮して算出される。プレイヤは、発動可能条件が成立した状態で所定のスキル発動操作を行うことで、スキルを使用することができる。
また、本実施形態では、プレイモードとして、非オートモードとオートモードとが設けられている。非オートモードは、フリッパ操作およびスキル発動操作等、味方キャラを動作させる操作入力が、全てプレイヤによってなされるものである。これに対して、オートモードは、コンピュータ制御により、自動処理に基づいて操作入力がなされるものである。自動処理は、予め設けられた制御プログラムを動作させることで、味方キャラを動作させる操作を入力する。
なお、本実施形態では、プレイモードとしてオートモードが設定された場合、全ての操作入力が自動処理に基づいてなされるものとする。ただし、オートモードの設定は、操作入力の種類ごとに設定可能でもよい。例えば、プレイヤの操作のうち、フリッパ操作およびスキル発動操作について、オートモードを個別に設定可能であってもよい。また、例えば、オートモードに設定した場合、フリッパ操作については、必ず自動処理に基づいて操作入力がなされ、スキル発動操作については、自動処理に基づいて操作入力がなされるのか、それとも、プレイヤの操作入力に基づいてなされるのかを設定可能としてもよい。
図4Bおよび図4Cに示すように、バトル画面には、オートボタン68が表示される。プレイヤは、オートボタン68をタップすることで、プレイモードを切り替えることができる。例えば、プレイモードが非オートモードに設定されている場合には、オートボタン68は、図4Bに示すように表示されている。この状態でプレイヤがオートボタン68をタップしてモード切替操作が入力されると、プレイモードがオートモードに切り替わり、オートボタン68は、図4Cに示すように強調表示される。このように、オートモードに切り替わると、即座に、コンピュータ制御による操作入力が開始され、バトルゲームが自動的に進行することとなる。
また、オートモードに設定されている状態でプレイヤがオートボタン68をタップしてモード切替操作が入力されると、プレイモードが非オートモードに切り替わる。このように、非オートモードに切り替わると、コンピュータ制御による操作入力が停止される。
ここで、バトル画面では、図4Bおよび図4Cに示すように、通常画面で表示されるメニューバー36が非表示となる。また、ヘッダ表示領域30においては、スタミナ表示バー32が非表示となり、味方キャラHPメータ64が表示される。さらに、バトル画面においては、ヘッダ表示領域30に操作タブ70が表示される。操作タブ70の表示位置は、ヘッダ表示領域30のうち、通常画面において通知画像34が表示される位置と同じである。
図5Aは、一時停止画面の一例を説明する図である。図5Bは、リザルト画面の一例を説明する図である。バトルゲーム中に操作タブ70がタップされると、バトルゲームが一時停止状態となる。一時停止状態では、バトルゲームの進行、すなわち、経時処理が停止される。この間、ディスプレイ26には、図5Aに示す一時停止ダイアログ72が、ゲームフィールド50に重畳表示される。一時停止ダイアログ72には、操作部として、リタイア操作部72aおよび再開操作部72bが設けられ、プレイヤは、これらの操作部をタップすることで、バトルゲームのリタイア(終了)または再開を選択することができる。
具体的には、リタイア操作部72aがタップされると、バトルゲームが終了となり、再開操作部72bがタップされると、一時停止ダイアログ72が閉じられて、バトルゲームが再開される。なお、バトルゲームの一時停止時に設定されていたプレイモードは、そのままバトルゲームの再開時にも引き継がれる。また、一時停止状態においても、オートボタン68は有効であり、オートボタン68をタップすることで、プレイヤはプレイモードを切り替えることができる。
また、バトルゲームが正常に終了(正常終了)すると、リザルト画面がディスプレイ26に表示される。本実施形態において、バトルゲームの正常終了には、リタイアによる途中終了、バトルゲームにおいて勝利が確定する勝利終了、バトルゲームにおいて敗北が確定する敗北終了の3つの終了パターンが含まれる。図5Bには、一例として、勝利終了時のリザルト画面を示しているが、リザルト画面は、終了パターンごとに異なる。
リザルト画面には、「閉じる」と記された終了操作部74が表示され、この終了操作部74がタップされると、ディスプレイ26の表示が、バトル画面から通常画面に切り替わる。つまり、リザルト画面は、バトル画面の一部である。なお、リザルト画面から切り替わる通常画面は、バトル画面に切り替わる直前に表示されていた画面でもよいし、ホーム画面等、所定の画面であってもよい。このように、リザルト画面の表示終了に伴い、バトルゲームが終了することとなる。
図6Aは、マルチプレイ選択時のプレイ内容選択ページの一例を説明する図である。図6Bは、ルーム選択ページの一例を説明する図である。図6Cは、対象者選択ページの一例を説明する図である。図6Dは、ルーム詳細ページの一例を説明する図である。図6Aに示すように、バトルゲームの種類、および、バトルゲームで利用するパーティが選択された状態で、マルチプレイタブ40bがタップされたとする。
この場合、図6Bに示すように、クエスト画面のルーム選択ページが表示される。ルーム選択ページでは、「ルーム作成」と記されたルーム作成タブ76が表示される。本実施形態において、「ルーム」とは、マルチプレイに参加する全てのプレイヤが情報を共有する場を示しており、マルチプレイを行うためにサーバ100で確保される領域を指す場合もある。
プレイヤは、マルチプレイを行う際に、ルーム作成タブ76をタップ(要求操作を入力)することで、自身でルームを作成することができる。なお、以下では、マルチプレイにおいてルームを作成したプレイヤをホストプレイヤと呼ぶ。また、他のプレイヤが作成したルームに入室したプレイヤをゲストプレイヤと呼ぶ。
ルーム作成タブ76がタップされると、図6Cに示すように、クエスト画面の対象者選択ページが表示される。対象者選択ページでは、「フォロワ」と記されたフォロワタブ78aと、「相互フォロワ」と記された相互フォロワタブ78bと、「ランダム」と記されたランダムタブ78cとが表示される。ルームを作成するプレイヤは、対象者選択ページにおいて、自身が作成したルームに招待する対象者(ゲストプレイヤ)を選択することができる。
具体的には、フォロワタブ78aが操作されると、ルームを作成するプレイヤによってフォロワに設定されているプレイヤが、招待情報を受信可能な対象者に設定される。なお、本実施形態において、招待情報は、対象者として設定されたプレイヤのみが受信可能であり、対象者に設定されないプレイヤが招待情報を受信することはない。また、詳しい説明は省略するが、対象者は、一定の条件を満たさない限り、招待情報を受信することはない。したがって、対象者とは、あくまでも招待情報を受信する権利を得たプレイヤと言える。
相互フォロワタブ78bが操作されると、ルームを作成するプレイヤによって相互フォロワに設定されているプレイヤが対象者に設定される。一方、ランダムタブ78cが操作されると、サーバ100に登録されている全てのプレイヤの中から対象者が設定される。対象者に設定されたプレイヤのプレイヤ端末1は、サーバ100と通信を行った際に、招待情報を受信する。招待情報を受信した対象者は、ルームに入室するか否か、すなわち、マルチプレイに参加するか否かを決定することができる。このように、ルームへの入室は、招待情報を受信したプレイヤに限られる。
例えば、図6Cに示すように、ランダムタブ78cがタップされると、図6Dに示すように、クエスト画面のルーム詳細ページが表示される。ルーム詳細ページでは、ホストプレイヤが選択したパーティを示すパーティ情報を含む種々の情報(ルーム情報)が表示される。また、ホストプレイヤのルーム詳細ページには、「準備完了」と記された開始タブ80が表示される。ホストプレイヤが開始タブ80をタップすると、マルチプレイが開始される。
図7Aは、通常画面における招待情報の受信の報知の一例を説明する図である。図7Bは、バトル画面における招待情報の受信の報知の一例を説明する図である。図7Cは、招待情報ダイアログ82の一例を説明する図である。図7Dは、保留操作後の画面の一例を説明する図である。例えば、図7Aに示すように、対象者のプレイヤ端末1において、ディスプレイ26に情報確認画面が表示されているとする。この状態で、プレイヤ端末1が招待情報を受信すると、図示のように、ヘッダ表示領域30において、通知画像34が非報知態様から報知態様に切り替わる。
また、図7Bに示すように、対象者のプレイヤ端末1において、ディスプレイ26にバトル画面が表示されているとする。上記したように、バトル画面では、通常、ヘッダ表示領域30に操作タブ70が表示されている(図4B参照)が、プレイヤ端末1が招待情報を受信すると、図示のように、操作タブ70が、報知態様の通知画像34に切り替わる。
報知態様で表示されている通知画像34がタップされると、図7Cに示すように、招待情報ダイアログ82が表示(開封)される。招待情報ダイアログ82は、通知画像34がタップされたときに表示されている画面に重畳表示される。また、バトルゲーム中に通知画像34がタップされた場合には、操作タブ70がタップされた場合と同様にバトルゲームが一時停止状態となり、バトル画面に重畳して招待情報ダイアログ82が表示される。
招待情報ダイアログ82には、クエスト情報として、例えば、ホストプレイヤのプレイヤランクやプレイヤ名、マルチプレイでプレイされるバトルゲームの種類等の情報が表示される。また、招待情報ダイアログ82には、「参加する」と記された参加タブ82a、「参加しない」と記された拒否タブ82b、および、「とじる」と記された保留タブ82cが設けられている。
参加タブ82aは、マルチプレイへの参加、すなわち、招待されたルームへの入室を希望する参加操作を受け付ける。また、拒否タブ82bは、マルチプレイへの参加を拒否する拒否操作を受け付ける。また、保留タブ82cは、マルチプレイに参加するか否かを保留扱いとする保留操作を受け付ける。
例えば、招待情報ダイアログ82の開封後に保留タブ82cがタップされ、保留操作が入力されたとする。保留操作が入力されると、図7Dに示すように、招待情報ダイアログ82が閉じられる(非表示となる)。ただし、保留操作が入力された場合、通知画像34は、報知態様のまま表示され続ける。なお、バトルゲーム中に招待情報ダイアログ82が表示された状態で、保留操作が入力されると、招待情報ダイアログ82が閉じられるのと同時に、一時停止状態が解除され、バトルゲームが再開される。この場合にも、通知画像34は、報知態様のまま表示され続ける。
図8Aは、拒否操作前の画面の一例を説明する図である。図8Bは、拒否操作後の画面の一例を説明する図である。図8Aに示すように、招待情報ダイアログ82の開封後に拒否タブ82bがタップされ、拒否操作が入力されたとする。拒否操作が入力されると、図8Bに示すように、招待情報ダイアログ82が閉じられる(非表示となる)のと同時に、通知画像34が非報知態様に切り替わる。
なお、バトルゲーム中に招待情報ダイアログ82が表示された状態で、拒否操作が入力された場合には、招待情報ダイアログ82が閉じられるのと同時に、一時停止状態が解除され、バトルゲームが再開される。この場合、ヘッダ表示領域30においては、通知画像34が非表示となり、操作タブ70が表示される。
図8Cは、参加操作前の画面の一例を説明する図である。図8Dは、参加操作後の画面の一例を説明する図である。図8Cに示すように、招待情報ダイアログ82の開封後に参加タブ82aがタップされ、参加操作が入力されたとする。参加操作が入力されると、対象者のプレイヤ端末1からサーバ100に参加情報が送信される。サーバ100では、参加情報が入力されると、招待されたルームへの入室可否が判定される。
具体的には、招待されたルームにおいて、マルチプレイが既に開始されている場合(プレイ中)、上限数のゲストプレイヤがルームに入室している場合(満室)、ルームが消滅している場合(解散)には、ルームへの入室が不可能であると判定される。この場合には、プレイヤ端末1のディスプレイ26に、ルームへの入室が不可能であることを知らせる不図示のダイアログ(入室不可画面)が表示される。
これに対して、サーバ100において、ルームへの入室が可能であると判定されたとする。この場合、参加情報を送信した対象者のプレイヤ情報がルームに追加され、ルーム情報が更新される。このように、参加操作が行われてルームに入室できた場合には、対象者がゲストプレイヤとして設定される。そして、ルーム情報が更新されると、ホストプレイヤおよび全てのゲストプレイヤが、更新されたルーム情報を受信する。
このとき、ゲストプレイヤのプレイヤ端末1(以下、「ゲスト端末」と呼ぶ)には、図8Dに示すように、ルーム詳細ページが表示される。更新されたルーム情報により、ホストプレイヤのプレイヤ情報と、全てのゲストプレイヤのプレイヤ情報とが、ルーム詳細ページに表示される。なお、上記したように、ホストプレイヤのプレイヤ端末1(以下、「ホスト端末」と呼ぶ)に表示されるルーム詳細ページには、開始タブ80が設けられている。一方で、図8Dに示すように、ゲスト端末に表示されるルーム詳細ページには、開始タブ80が設けられていない。したがって、マルチプレイを開始することができるのは、ホストプレイヤのみとなる。
なお、ゲスト端末に表示されるルーム詳細ページには、ルームから退室する操作を受け付ける操作部が設けられていない。つまり、ゲストプレイヤは、入室したルームから正式に退室することができない。これにより、ゲストプレイヤが入退室を繰り返す事態が抑制され、マルチプレイの早期開始が実現される。ただし、ゲストプレイヤが退室できるように、ゲスト端末のルーム詳細ページに退室用の操作部が設けられてもよい。また、ホスト端末に表示されるルーム詳細ページには、ルームを意図的に解散するための操作部が設けられてもよい。
なお、図示は省略するが、非報知態様で表示されている通知画像34をタップすると、招待情報が存在しない旨を報知するダイアログが表示される。上記したように、拒否操作がなされると、通知画像34が非報知態様に切り替わるため、拒否操作の入力後、すぐに通知画像34が操作されたとしても、招待情報が存在しない旨の報知がなされる。つまり、対象者は、一度参加を拒否したマルチプレイについては、参加することができない。
一方で、上記の保留操作がなされた場合には、招待情報ダイアログ82が閉じられた後も、通知画像34が報知態様で表示されている。したがって、保留操作を行った後に、再度、通知画像34がタップされると、招待情報ダイアログ82が再表示され、対象者は、招待されたマルチプレイに対して参加操作を入力することができる。ただし、上記したように、招待されたルームが、プレイ中、満室、消滅となっている場合には、ルームへの入室が不可能であると判定され、ルームへの入室が不可能であることを知らせるダイアログが表示される。
ここで、シングルプレイのバトルゲーム中に招待情報を受信したプレイヤが、通知画像34をタップし、招待情報ダイアログ82が開かれたとする。上記のように、バトルゲーム中に招待情報ダイアログ82が開かれると、バトルゲームが一時停止状態となる。この状態でプレイヤが参加操作を入力し、招待されたルームに入室した後、マルチプレイが開始されたとする。
このように、プレイヤ(ゲストプレイヤ)は、シングルプレイからマルチプレイに切り替えることができる。換言すれば、プレイヤは、シングルプレイを中断して、新たにマルチプレイを開始することが可能である。そして、本実施形態では、シングルプレイを中断してマルチプレイを開始した場合、マルチプレイの終了後に、中断したシングルプレイを再開することができる。
図9Aは、非オートモード時における再開ダイアログ84の一例を説明する図である。図9Bは、非オートモード時の再開状態を説明する図である。シングルプレイを中断して実行されたマルチプレイが終了すると、図9Aに示すように、再開ダイアログ84がディスプレイ26に表示される。再開ダイアログ84には、操作部として終了タブ84aおよび再開タブ84bが設けられている。終了タブ84aがタップされると、中断したシングルプレイは、上記のリタイアによる途中終了となる。したがって、この場合には、シングルプレイが再開されることはない。
一方、再開タブ84bがタップされると、中断したときの状態からシングルプレイが再開される。ここで、上記したように、本実施形態では、プレイモードとして、非オートモードとオートモードとが設けられており、中断時のプレイモードに応じて、シングルプレイの再開時の状態が異なる。
具体的には、中断時のプレイモードが非オートモードに設定されていた場合、再開タブ84bがタップされると、シングルプレイの開始から中断までの進行内容が高速でリプレイ表示される(以下、高速リプレイと呼ぶ)。そして、高速リプレイが終了すると、図9Bに示すように、一時停止ダイアログ72が表示され、シングルプレイの再開時の状態が一時停止状態となる。
一時停止状態は、経時処理の停止によりフレームが更新されない状態である。また、一時停止状態は、一時停止状態を解除するための解除操作を受け付け可能な状態であり、一時停止ダイアログ72の再開操作部72bがタップされ、解除操作が入力されると、一時停止状態が解除され、中断時の状態からシングルプレイが再開される。
このように、非オートモードに設定されている場合、シングルプレイの再開時の状態は一時停止状態となり、プレイヤの解除操作の入力により、ゲーム進行が再開される。これにより、プレイヤは、再開直後に適切な操作を行うことが可能となる。
一方で、上記の処理によれば、再開タブ84bのタップ操作と、再開操作部72bのタップ操作とが必要であるため、シングルプレイを再開するか否かの意思確認が繰り返し要求されているような印象をプレイヤに与えるおそれがある。そこで、中断時のプレイモードがオートモードに設定されている場合には、再開時の状態が次のように制御される。
図9Cは、オートモード時における再開ダイアログ84の一例を説明する図である。図9Dは、オートモード時の再開状態を説明する図である。図9Cに示すように、オートモードに設定されている状態で再開タブ84bがタップされると、上記と同様に、高速リプレイが表示される。そして、図9Dに示すように、高速リプレイの終了後、自動処理による操作入力に基づいてシングルプレイが進行される状態となる。つまり、この場合には、即座に経時処理が開始される。
このように、オートモードに設定されている場合には、シングルプレイの再開時の状態が一時停止状態になることなく、ゲーム進行が再開される。換言すれば、オートモードに設定されている場合には、非オートモードに設定されている場合よりも、少ない操作で、シングルプレイのゲーム進行が再開される。そのため、煩雑な操作が不要となり、操作性が向上する。
次に、シングルプレイの再開時の処理について説明する。なお、ここでは、シングルプレイの中断および再開に関係する処理の一例について説明し、その他の処理については説明を省略する。
(プレイヤ端末1の機能的構成)
図10は、プレイヤ端末1におけるメモリ12の構成およびコンピュータとしての機能を説明する図である。メモリ12には、プログラム記憶領域12a、および、データ記憶領域12bが設けられている。CPU10は、バトルゲームの開始時に、あるいは、バトルゲームの開始前に予め、端末側ゲーム制御用プログラム(モジュール)をプログラム記憶領域12aに記憶する。
端末側ゲーム制御用プログラムには、ゲーム実行プログラム300、バトルゲーム進行プログラム302、モードフラグ切替プログラム304、中断プログラム306、セーブデータ保存プログラム308、再開プログラム310、招待情報受信プログラム312が含まれる。なお、図10に列挙したプログラムは一例であり、端末側ゲーム制御用プログラムには、この他にも多数のプログラムが設けられている。
データ記憶領域12bには、データを記憶する記憶部として、進行情報記憶部320、モード識別情報記憶部322、一時停止フラグ記憶部324、中断フラグ記憶部326、操作入力情報記憶部328、招待情報記憶部330が設けられている。なお、上記の各記憶部は一例であり、データ記憶領域12bには、この他にも多数の記憶部が設けられている。
CPU10は、プログラム記憶領域12aに記憶された各プログラムを動作させ、データ記憶領域12bの各記憶部のデータを更新する。そして、CPU10は、プログラム記憶領域12aに記憶された各プログラムを動作させることで、プレイヤ端末1(コンピュータ)を、端末側ゲーム制御部1Aとして機能させる。
端末側ゲーム制御部1Aは、ゲーム実行部300a、バトルゲーム進行部302a(進行部)、モードフラグ切替部304a(識別情報切替部)、中断部306a、セーブデータ保存部308a(進行情報保存部)、再開部310a、招待情報受信部312aを含む。
具体的には、CPU10は、ゲーム実行プログラム300を動作させ、コンピュータをゲーム実行部300aとして機能させる。同様に、CPU10は、バトルゲーム進行プログラム302、モードフラグ切替プログラム304、中断プログラム306、セーブデータ保存プログラム308、再開プログラム310、招待情報受信プログラム312を動作させ、それぞれバトルゲーム進行部302a、モードフラグ切替部304a、中断部306a、セーブデータ保存部308a、再開部310a、招待情報受信部312aとして機能させる。
ゲーム実行部300aは、プレイヤの操作に基づき、例えば、パーティの編成、味方キャラクタの強化等、バトルゲーム以外のゲームの進行を制御する。
バトルゲーム進行部302aは、バトルゲーム(シングルプレイおよびマルチプレイ)を進行するための全ての制御を担う。例えば、バトルゲーム進行部302aは、バトルゲームの開始からのフレーム数ごとに予め設定された演算処理を乱数情報に基づいて実行する。
なお、バトルゲーム進行部302aは、バトルゲームの開始時に、疑似乱数生成器によりシード値を生成する。また、バトルゲーム進行部302aは、生成したシード値に基づいて、各フレームの演算処理で用いる乱数情報を生成する。なお、各フレームの演算処理で用いる乱数情報は、所定の乱数生成アルゴリズムを用いて生成される。このとき、シード値が同じであれば、各フレームの演算処理で用いる乱数情報も同じになる。
また、バトルゲーム進行部302aは、プレイモードがオートモードに設定されている場合に、自動処理による操作入力に基づいてバトルゲームを進行可能とし、プレイモードが非オートモードに設定されている場合に、プレイヤの操作入力に基づいてバトルゲームを進行可能とする。なお、バトルゲーム進行部302aは、バトルゲームの進行中、どのような操作入力がなされたかを示す操作入力情報をフレームごとに操作入力情報記憶部328に記憶する。
さらに、バトルゲーム進行部302aは、プレイヤの操作入力に基づき、一時停止フラグ記憶部324において、一時停止フラグをオンまたはオフする。なお、一時停止フラグのオン状態は、一時停止状態を示し、一時停止フラグのオフ状態は、停止解除状態を示す。バトルゲーム進行部302aは、一時停止状態において解除操作を受け付けた場合、一時停止状態を解除し、バトルゲームを進行させる。
モードフラグ切替部304aは、モード識別情報記憶部322において、モード識別情報(識別情報)を切り替える。なお、モード識別情報は、プレイモードを識別する情報であり、モード識別情報として、オートモードフラグのオン状態とオフ状態とが切り替えられる。オートモードフラグのオン(許可情報)は、自動で操作入力を実行する自動処理の許可状態を示し、オートモードフラグのオフ(不許可情報)は、自動処理の不許可状態を示す。
中断部306aは、バトルゲーム中における所定の中断条件の成立に基づいて、バトルゲームを中断する。ここでは、シングルプレイのバトルゲーム中におけるマルチプレイのルームへの入室が中断条件として設定されている。中断部306aは、バトルゲームを中断する場合、中断フラグ記憶部326に中断フラグをオンする。
セーブデータ保存部308aは、バトルゲームにおける所定の進行情報をセーブデータとして進行情報記憶部320に保存する。なお、セーブデータ保存部308aは、シングルプレイのバトルゲームの中断時に、中断するバトルゲームについてセーブデータを保存する。ここでは、セーブデータとして保存される進行情報には、バトルゲームの種別を示すクエストID、シード値、開始から中断までに記憶されたフレームごとの操作入力情報、モード識別情報が含まれる。
再開部310aは、バトルゲームの中断後、所定の再開条件が成立すると、進行情報記憶部320に保存されたセーブデータすなわち進行情報と、モード識別情報とに基づいて、バトルゲームの再開時の状態を設定する。このとき、再開部310aは、モード識別情報として、オートモードフラグがオフであれば、再開時の状態を一時停止状態とし、モード識別情報がオートモードフラグであれば、再開時の状態を、自動処理による操作入力に基づいてバトルゲームが進行される状態とする。
招待情報受信部312aは、ディスプレイ26に表示されている画面ごとに設定されたタイミングで、招待情報の受信確認を行う。具体的には、招待情報受信部312aは、サーバ100に受信確認情報を送信し、また、サーバ100にセットされている招待情報を受信して、招待情報記憶部330に記憶する。
(プレイヤ端末1とサーバ100との通信処理)
図11は、プレイヤ端末1およびサーバ100の基本的な処理を説明するシーケンス図である。なお、以下の説明では、ホスト端末およびゲスト端末を区別しない場合には、プレイヤ端末1における処理をPn(nは任意の整数)と示す。また、サーバ100における処理をSn(nは任意の整数)と示す。プレイヤ端末1においてプレイヤがゲームアプリケーションを起動すると(P1)、プレイヤ端末1からサーバ100にログイン情報が送信される。サーバ100は、ログイン情報を受信すると、プレイヤ端末1を特定してログイン処理を行う(S1)。ここでは、サーバ100は、特定したプレイヤ端末1に対応するプレイヤ情報を、プレイヤ端末1が記憶部118からダウンロード可能にする。
また、プレイヤ端末1は、所定時間おきに招待情報の受信確認を行う(P2)。ここでは、プレイヤ端末1が、受信確認情報をサーバ100に送信する。サーバ100は、受信確認情報を受信すると、プレイヤ端末1の招待情報の有無を検索する(S2)。このとき、招待情報がセットされていれば、プレイヤ端末1が招待情報を受信する。プレイヤ端末1は、招待情報を受信すると、通知画像34を報知態様で表示させ、招待情報を受信した旨を報知する(P3)。
また、プレイ内容選択ページ(図4A参照)からシングルプレイタブ40aがタップされ、シングルプレイの開始操作がなされると、プレイヤ端末1において、シングルプレイ制御処理が実行される(P4)。シングルプレイ制御処理により、シングルプレイのバトルゲームが実行される。
以下に、招待情報の受信に係る処理、および、シングルプレイ制御処理について詳述する。
図12は、プレイヤ端末1における招待情報確認処理の一例を説明するフローチャートである。なお、この招待情報確認処理は、プレイヤ端末1において、ディスプレイ26に表示されている画面ごとに設定されたタイミングで行われる。したがって、例えば、シングルプレイのバトルゲーム中、すなわち、後述するシングルプレイ制御処理中においても、招待情報確認処理が所定のタイミングで実行されることとなる。
招待情報受信部312aは、受信確認情報をサーバ100に送信する(P10−1)。招待情報受信部312aは、受信可能な招待情報がサーバ100にセットされている場合(P10−2のYES)、サーバ100にセットされている招待情報を受信し、招待情報記憶部330に記憶する(P10−3)。また、招待情報受信部312aは、ヘッダ表示領域30において、通知画像34を報知態様で表示する(P10−4)。
図13は、プレイヤ端末1におけるシングルプレイ制御処理の一例を説明する第1のフローチャートである。図14は、プレイヤ端末1におけるシングルプレイ制御処理の一例を説明する第2のフローチャートである。このシングルプレイ制御処理は、シングルプレイのバトルゲームの開始から終了まで、フレーム(ここでは、例えば、1秒間に30フレーム)ごとに繰り返し実行される。なお、ここでは、シングルプレイ制御処理における一部の処理のみが抽出して示されている。
バトルゲーム進行部302aは、モード切替操作が入力されると(P20−1のYES)、モード識別情報記憶部322においてオートモードフラグがオンしているかを判定する(P20−2)。オートモードフラグがオンしている場合(P20−2のYES)、モードフラグ切替部304aは、モード識別情報記憶部322において、オートモードフラグをオフする(P20−3)。また、オートモードフラグがオフの場合(P20−2のNO)、モードフラグ切替部304aは、モード識別情報記憶部322において、オートモードフラグをオンする(P20−4)。
また、バトルゲーム進行部302aは、一時停止操作が入力されたかを判定する(P20−5)。なお、ここでは、バトルゲーム中の通知画像34および操作タブ70のタップ操作が、一時停止操作となる。ただし、例えば、バトル画面において一時停止ボタンを常時表示させ、この一時停止ボタンの操作が一時停止操作に含まれてもよい。
一時停止操作が入力されると(P20−5のYES)、バトルゲーム進行部302aは、一時停止フラグ記憶部324において一時停止フラグをオンし(P20−6)、ゲームフィールド50に所定の画像を重畳表示する表示処理を行う(P20−7)。例えば、バトルゲーム進行部302aは、操作タブ70がタップされた場合には一時停止ダイアログ72を表示し、報知態様の通知画像34がタップされた場合には招待情報ダイアログ82を表示する。
また、一時停止状態において解除操作が入力されると(P20−8のYES)、バトルゲーム進行部302aは、一時停止フラグ記憶部324において一時停止フラグをオフし(P20−9)、ゲームフィールド50に重畳表示されている所定の画像を非表示とする表示終了処理を行う(P20−10)。例えば、バトルゲーム進行部302aは、一時停止ダイアログ72または招待情報ダイアログ82を非表示とする。
次に、バトルゲーム進行部302aは、一時停止フラグ記憶部324において、一時停止フラグがオフしているかを判定する(P20−11)。一時停止フラグがオフの場合(P20−11のYES)、バトルゲーム進行部302aは、図14に示す処理を遂行する。
すなわち、バトルゲーム進行部302aは、バトルゲームの開始からのフレーム数を示す現フレーム数を更新し(P20−20)、現フレーム数に対応する動作処理を実行する(P20−21)。ここでは、動作処理として、例えば、敵キャラクタを動作させる処理が行われる。そして、プレイヤのゲーム操作の入力がある場合(P20−22のYES)、バトルゲーム進行部302aは、プレイヤの操作に基づく操作入力情報を操作入力情報記憶部328に記憶する(P20−23)。なお、ゲーム操作というのは、フリッパ操作やスキル発動操作等、バトルゲームの味方キャラや敵キャラクタに作用を及ぼす操作である。つまり、本実施形態において、上記の一時停止操作、解除操作、モード切替操作は、ゲーム操作に含まれない。
プレイヤのゲーム操作の入力がない場合(P20−22のNO)、バトルゲーム進行部302aは、モード識別情報記憶部322において、オートモードフラグがオンしているかを判定する(P20−24)。オートモードフラグがオンの場合(P20−24のYES)、バトルゲーム進行部302aは、自動処理を実行する(P20−25)。この自動処理では、例えば、味方ボール54が所定の位置にある場合にフリッパ操作が入力され、スキル発動条件が成立すると、スキルを発動させるスキル発動操作が入力される。そして、バトルゲーム進行部302aは、自動処理に基づくゲーム操作の入力がある場合(P20−26のYES)、自動処理に基づく操作入力情報を操作入力情報記憶部328に記憶する(P20−27)。
バトルゲーム進行部302aは、上記P20−23またはP20−27で記憶した操作入力情報に基づいて、フリッパ動作やスキル発動等を行う動作処理を実行する(P20−28)。また、バトルゲーム進行部302aは、P20−21およびP20−28の動作処理や、1フレーム前の各種の情報等に基づいて、ダメージ値や速度等の演算を行う演算処理を行い(P20−29)、その結果に対応した画像を表示させる画像更新処理を行う(P20−30)。そして、バトルゲーム進行部302aは、シングルプレイの終了条件が成立すると(P20−31のYES)、所定の終了処理を実行し(P20−32)、シングルプレイ制御処理を終了する。
また、図13に示すように、一時停止フラグがオンの状態、すなわち、一時停止状態で(P20−11のNO)、マルチプレイのルームに入室すると(P20−12)、セーブデータ保存部308aが、セーブデータすなわち進行情報を保存する(P20−13)。より厳密には、招待情報ダイアログ82の参加タブ82aがタップされ、参加操作を受け付けると、セーブデータ保存部308aが、セーブデータすなわち進行情報を保存する。そして、中断部306aは、中断フラグ記憶部326に中断フラグをオンし(P20−14)、シングルプレイを中断するための所定の中断処理を実行し(P20−15)、シングルプレイ制御処理を終了する。この場合、以後の処理において、マルチプレイを実行するための処理が開始される。
図15は、マルチプレイが実行される場合のプレイヤ端末1およびサーバ100の処理を説明するシーケンス図である。なお、以下の説明では、ホスト端末における処理をHn(nは任意の整数)と示し、招待情報の受信の対象者の端末(以下、対象者端末と呼ぶ)およびゲスト端末における処理をGn(nは任意の整数)と示す。
プレイヤ端末1(ホスト端末)において、ルーム作成タブ76がタップされ、要求操作が入力されたとする(H10)。要求操作が入力されると、プレイヤ端末1(ホスト端末)は、サーバ100に対して、ルームの作成、および、招待情報の送付を要求する要求情報を送信する。なお、要求情報には、プレイヤが選択したパーティに係る情報、バトルゲームの種別を示す情報、タップされた操作部を示す情報等が含まれる。
サーバ100は、要求情報を受信すると、ルームを作成、設定するルーム設定処理を行う(S10)。ここでは、マルチプレイを実行するための処理領域、すなわち、ルームが確保され、このルームに、要求情報に含まれる各種の情報が記憶される。また、作成したルームのルームナンバーが設定される。ホスト端末は、ルーム設定処理で設定されたルーム設定情報を受信し、ディスプレイ26にルーム詳細ページを表示する(H11)。
また、サーバ100は、招待情報の受信対象となる対象者端末を設定する(S11)。その後、対象者端末が招待情報の受信確認を行うと(G10)、受信確認情報がサーバ100に送信される。サーバ100は、受信確認情報を受信すると、対象者に招待情報がセットされているかを検索する(S12)。対象者端末は、招待情報を受信すると、通知画像34を報知態様で表示させ、招待情報を受信した旨を報知する(G11)。
また、対象者端末において、招待情報ダイアログ82の参加タブ82aがタップされると、対象者端末からサーバ100に参加情報が送信される(G12)。なお、参加情報には、対象者が設定したパーティに係る情報等が含まれる。サーバ100は、参加情報を受信すると、ルームへの入室が可能かを判定し、ルームへの入室が可能であれば、ルーム情報を更新する(S13)。ここでは、サーバ100は、更新したルーム情報(ルーム更新情報)が、ホスト端末および対象者端末によって受信されるようにセットされる。
なお、図15では、1つの対象者端末(ゲスト端末)のみが示されているが、1つのルームに対して、複数の対象者端末(ゲスト端末)で同一の処理が行われている。したがって、いずれかの対象者端末がルームに入室した場合には、ルームに入室している全てのプレイヤのプレイヤ端末1が、ルーム更新情報を受信することとなる。
ホスト端末は、サーバ100からルーム更新情報を受信すると、ルーム詳細ページを更新表示する(H12)。また、対象者端末も、ルーム更新情報を受信する。なお、ここでは、ルーム更新情報の受信後のプレイヤ端末1を、ゲスト端末と呼ぶ。ゲスト端末では、ルーム更新情報を受信すると、ディスプレイ26にルーム詳細ページが表示される(G13)。
その後、ホスト端末において、ルーム詳細ページの開始タブ80がタップされ、マルチプレイの開始操作が入力されると(H13)、開始情報がサーバ100に送信される。そして、ホスト端末、サーバ100、ゲスト端末では、マルチプレイを制御するためのマルチプレイ制御処理が同時並行して行われる(H14、S14、G14)。このマルチプレイ制御処理では、各種情報を更新する更新処理が、フレーム単位で繰り返し実行される。この更新処理では、ホスト端末、ゲスト端末およびサーバ100の間で、更新情報の送受信が行われている。そして、バトルゲームの終了条件が成立すると、ホスト端末、ゲスト端末およびサーバ100のそれぞれにおいて、バトルゲームを終了させるマルチプレイ終了処理が行われる(HP15、S15、G15)。
また、ゲスト端末において、シングルプレイを中断してルームに入室した場合、シングルプレイを再開させる再開処理が実行される(G16)。以下に、プレイヤ端末1(ゲスト端末)におけるマルチプレイ終了処理および再開処理について説明する。
図16は、プレイヤ端末1におけるマルチプレイ終了処理の一例を説明するフローチャートである。マルチプレイが終了すると(P30−1のYES)、ゲーム実行部300aは、ディスプレイ26にリザルト画面を表示する(P30−2)。このとき、ゲストプレイヤとしてマルチプレイに参加した場合(P30−3のYES)、招待情報受信部312aは、招待情報記憶部330から招待情報を消去する(P30−4)。
また、リザルト画面の終了操作部74がタップされると(P30−5)、ゲーム実行部300aは、中断フラグ記憶部326において、中断フラグがオンしているかを判定する(P30−6)。中断フラグがオンしていなければ(P30−6のNO)、ゲーム実行部300aは、ディスプレイ26を所定の画面に遷移させ(P30−7)、マルチプレイ終了処理が終了となる。一方、中断フラグがオンしている場合(P30−6のYES)、ゲーム実行部300aは、再開ダイアログ84を表示し(P30−8)、処理を再開処理に移行させる(P30−9)。
図17は、プレイヤ端末1における再開処理の一例を説明するフローチャートである。再開ダイアログ84の終了タブ84aがタップされると(P40−1)、再開部310aは、中断したシングルプレイを途中終了させるリタイア処理を実行する(P40−2)。このリタイア処理では、例えば、進行情報記憶部320等の各記憶部に記憶されている、シングルプレイに関係する情報がクリアされる。
再開ダイアログ84の再開タブ84bがタップされると(P40−3)、再開部310aは、進行情報記憶部320に保存されたセーブデータすなわち進行情報をロードする(P40−4)。ここでは、シングルプレイの中断時に、進行情報記憶部320に退避させた情報が、モード識別情報記憶部322、操作入力情報記憶部328等の元の記憶部に記憶される。また、再開部310aは、高速リプレイ表示を行う(P40−5)。
高速リプレイが終了すると(P40−6のYES)、再開部310aは、セーブデータに含まれるモード識別情報がオートモードフラグであるか、すなわち、モード識別情報記憶部322において、オートモードフラグがオンしているかを判定する(P40−7)。オートモードフラグがオンしていれば(P40−7のYES)、再開部310aは、一時停止フラグ記憶部324において一時停止フラグをオフし(P40−8)、オートモードフラグがオフであれば(P40−7のNO)、再開部310aは、一時停止フラグ記憶部324において一時停止フラグをオンする(P40−9)。
なお、一時停止フラグをオフするというのは、一時停止画面を表示しない処理でもよいし、一時停止画面を表示したうえで、自動的に一時停止からゲームを再開する入力を行う処理でもよい。また、一時停止フラグをオンした場合、再開部310aは、一時停止ダイアログ72をディスプレイ26に表示する。
そして、再開部310aは、中断フラグ記憶部326において中断フラグをオフし(P40−10)、処理をシングルプレイ制御処理に移行させる(P40−11)。これにより、以後、図13および図14に示すシングルプレイ制御処理が再開されることとなる。
なお、上記実施形態におけるプレイヤ端末1およびサーバ100の処理は一例に過ぎず、プレイヤ端末1とサーバ100とで、どのように処理を担うかは適宜設定可能である。例えば、上記実施形態では、プレイヤ端末1にセーブデータが保存される場合について説明した。しかしながら、セーブデータは、サーバ100に保存されてもよいし、プレイヤ端末1とサーバ100との双方にセーブデータが保存されてもよい。
また、上記実施形態では、マルチプレイのルームに入室する場合に、セーブデータが保存されることとしたが、セーブデータを保存するタイミングはこれに限らない。例えば、マルチプレイのルームに入室する場合に、サーバ100にセーブデータを送信し、マルチプレイの終了時に、保存されたセーブデータをサーバ100から受信してもよい。また、例えば、一時停止状態になった場合に、セーブデータが保存されてもよい。
また、上記実施形態において、セーブデータとして保存する進行情報は一例に過ぎない。例えば、中断時の各キャラクタのパラメータ、座標情報、時間情報がセーブデータとして保存されてもよい。また、進行情報には、一時停止状態になった場合において、一時停止状態を解除してゲームを再開するための情報が含まれてもよい。また、上記実施形態において、中断および再開が可能な対象ゲームの内容は一例に過ぎず、如何なるジャンルのゲームでもよい。いずれにしても、セーブデータは、中断した状態から、対象ゲームを再開することができる情報であればよく、その具体的な内容は特に限定されない。
また、上記実施形態では、モード識別情報がセーブデータに含まれ、バトルゲームの再開時に、セーブデータとしてのモード識別情報を参照して、再開時の状態を設定することとした。しかしながら、モード識別情報はセーブデータに含まれなくてもよい。例えば、プレイヤ端末1において、プレイヤが、オートモードまたは非オートモードを初期設定情報として保存可能とする。つまり、バトルゲームの開始前に、プレイヤがプレイモードを選択する操作を行い、初期設定情報としてのオートモードフラグまたは非オートモードフラグをオンまたはオフすることができるように構成する。この場合、中断したバトルゲームの再開時に、プレイヤ端末1に記憶されている初期設定情報を参照して、再開時の状態を設定することができる。
なお、上記のように、初期設定により、プレイヤがプレイモードを設定可能な場合において、さらに、上記実施形態と同様に、バトルゲーム中に、プレイヤがプレイモードを設定変更可能としてもよい。この場合、例えば、バトルゲーム中にプレイモードをプレイヤが変更した場合に、初期設定情報が変更されてもよい。
一例として、初期設定としてオートモードが設定されており、バトルゲーム中に、オートモードから非オートモードにプレイモードが変更されたとする。この場合、初期設定が非オートモードに切り替わるため、以後にバトルゲームをプレイする際には、その開始時点から、プレイモードが非オートモードとなる。
一方で、バトルゲーム中にプレイモードが変更された場合には、その変更は、進行中のバトルゲームにのみ適用され、初期設定情報は変更されないようにしてもよい。この場合、初期設定情報が変更されないため、次のバトルゲームの開始時には、初期設定のプレイモードとなる。具体的には、初期設定としてオートモードが設定されており、バトルゲーム中に、オートモードから非オートモードにプレイモードが変更されたとする。この場合、プレイ中のバトルゲームでは、プレイモードが非オートモードになるが、初期設定情報が変更されないため、次のバトルゲームの開始時のプレイモードはオートモードとなる。
なお、この場合において、中断されたバトルゲームを再開する際に参照するモード識別情報は、初期設定情報としてのモード識別情報でもよいし、中断時に設定されていたモード識別情報でもよい。例えば、初期設定としてオートモードが設定されており、バトルゲーム中に、オートモードから非オートモードにプレイモードが変更された状態で、当該バトルゲームが中断されるとともに、その後、バトルゲームを再開されたとする。
このとき、初期設定情報としてのモード識別情報を参照して再開時の状態を設定すると、再開時のプレイモードはオートモードとなり、一時停止状態が解除された状態、すなわち、自動処理による操作入力に基づいて、即座にバトルゲームが進行する。一方、中断時のモード識別情報を参照して再開時の状態を設定すると、再開時のプレイモードは非オートモードとなり、再開時の状態が一時停止状態となる。
なお、例えば、初期設定情報に基づいて再開時の状態を設定する場合においても、初期設定情報としてのモード識別情報をセーブデータとして保存し、セーブデータ中のモード識別情報を参照して、再開時の状態を設定してもよい。あるいは、初期設定情報に基づいて再開時の状態を設定する場合において、初期設定情報をセーブデータとして保存せずに、再開時に、プレイヤ端末1に記憶されている初期設定情報を参照して、再開時の状態を設定してもよい。
また、例えば、バトルゲーム中にプレイモードが変更されると、変更されたプレイモードが初期設定情報として記憶される場合において、再開時に初期設定情報を参照してもよい。この場合、セーブデータにモード識別情報が保存されなくとも、変更後のプレイモードでバトルゲームが再開されることとなる。
このように、再開時の状態を設定するために参照するモード識別情報は、必ずしも、中断時におけるモード識別情報に限らず、中断時よりも前に設定されていたモード識別情報であってもよい。
また、上記実施形態では、再開時に高速リプレイを行うこととしたが、高速リプレイは必須ではない。
また、上記実施形態では、マルチプレイに参加することでシングルプレイが中断される場合について説明したが、シングルプレイが中断される事象はこれに限らない。例えば、シングルプレイのバトルゲームを中断し、他のシングルプレイのバトルゲームを開始可能としてもよい。この場合、後からシングルプレイを開始することによって、先にプレイしていたシングルプレイが中断および再開される。
また、例えば、プレイヤ端末1が電断した場合や、操作が所定時間なされずに、所謂スリープ状態に移行した場合に、中断条件が成立したものとしてセーブデータを保存し、再開条件が成立した場合に、セーブデータに基づいて対象ゲームが再開されてもよい。なお、再開条件には、スリープ状態から復帰した場合が含まれてもよい。
さらには、例えば、上記実施形態において、バトルゲーム中に通知画像34または操作タブ70がタップされると、一時停止ダイアログ72または招待情報ダイアログ82が開かれ、一時停止状態となる。そして、一時停止状態において、一時停止ダイアログ72の再開操作部72b、あるいは、招待情報ダイアログ82の保留タブ82cがタップされると、一時停止ダイアログ72または招待情報ダイアログ82が非表示となる。
このとき、オートモードに設定されていれば、一時停止状態が解除され、経時処理を伴うゲームの進行が再開され、非オートモードに設定されていれば、図9Bに示すように、一時停止ダイアログ72が表示される一時停止状態としてもよい。この場合、再開操作部72bあるいは保留タブ82cがタップされて一時停止状態に移行した際に、進行情報記憶部320にセーブデータを退避させ、再開条件が成立した際に、退避させたセーブデータに基づいて、対象ゲームを再開してもよい。あるいは、再開操作部72bあるいは保留タブ82cがタップされて一時停止状態に移行した際に、セーブデータを退避させずに、ゲームの進行時に用いられる記憶領域の情報を保持してもよい。
このように、対象ゲームが中断される中断条件、および、対象ゲームを再開するための再開条件は特に限定されず、適宜設定可能である。
また、上記実施形態では、中断時の状態から、バトルゲームを再開可能としたが、例えば、バトルゲームの進行情報を一定時間おきに記憶し、バトルゲームが中断された場合には、中断前に最後に記憶された進行情報に基づいて、バトルゲームを再開してもよい。このように、中断されたバトルゲームを再開する際に参照する進行情報は、必ずしも中断時の進行情報に限らない。
また、上記実施形態では、オートモード中にプレイヤのゲーム操作が入力された場合には、自動処理に基づくゲーム操作入力よりも、プレイヤのゲーム操作入力が優先されることとした(P20−22からP20−28)。しかしながら、オートモード中は、プレイヤのゲーム操作を一切受け付けないこととしてもよい。
なお、上記各実施形態および変形例では、クライアントサーバシステムである情報処理システムSが、上記の各情報処理を行う。しかしながら、上記実施形態および変形例におけるプレイヤ端末1のみが、ゲーム装置として設けられてもよい。
また、上記各実施形態および変形例における情報処理プログラムは、コンピュータが読み取り可能な記憶媒体に格納され、記憶媒体として提供されてもよい。さらには、この記憶媒体を含むゲーム装置として提供されてもよい。また、上記実施形態および変形例は、各機能およびフローチャートに示すステップを実現する情報処理方法としてもよい。
以上、添付図面を参照しながら実施形態の一態様について説明したが、本発明は上記実施形態および変形例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇において、各種の変形例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。