以下に添付図面を参照しながら、本発明の実施形態の一態様について詳細に説明する。かかる実施形態に示す寸法、材料、その他具体的な数値等は、理解を容易とするための例示にすぎず、特に断る場合を除き、本発明を限定するものではない。なお、本明細書および図面において、実質的に同一の機能、構成を有する要素については、同一の符号を付することにより重複説明を省略し、また本発明に直接関係のない要素は図示を省略する。
(情報処理システム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は、バトル画面の一例を説明する図である。図4Cは、リザルト画面の一例を説明する図である。図4Aに示すように、バトルゲームの種類、および、バトルゲームで利用するパーティが選択された状態で、シングルプレイタブ40aが操作されると、シングルプレイが開始される。なお、以下では、バトルゲームで用いられるパーティに含まれる味方キャラクタ、すなわち、バトルゲームにおいてプレイヤが操作する味方キャラクタを「プレイヤキャラ」と呼ぶ。バトルゲームでは、プレイヤがプレイヤ端末1の入力部22を操作して、プレイヤキャラを動作させる。
バトルゲーム中は、図4Bに示すように、バトル画面が表示される。バトル画面では、プレイヤキャラと敵キャラクタとがディスプレイ26に表示される。プレイヤキャラは、プレイヤの操作に応じて動作し、敵キャラクタにダメージを与えたり、敵キャラクタからダメージを受けたりする。また、敵キャラクタは、コンピュータ制御により動作し、プレイヤキャラにダメージを与えたり、プレイヤキャラからダメージを受けたりする。
敵キャラクタにダメージポイントが付与されると、敵キャラクタのライフポイントからダメージポイントが減算される。同様に、プレイヤキャラにダメージポイントが付与されると、プレイヤキャラのライフポイントからダメージポイントが減算される。敵キャラクタのライフポイントが0になるとプレイヤの勝利となり、全てのプレイヤキャラのライフポイントが0になると、プレイヤの敗北となる。
ここで、バトル画面では、図4Bに示すように、通常画面で表示されるメニューバー36が非表示となる。また、ヘッダ表示領域30においては、スタミナ表示バー32が非表示となり、プレイヤキャラごとのライフポイントが表示される。さらに、バトル画面においては、ヘッダ表示領域30に操作タブ42が表示される。操作タブ42の表示位置は、ヘッダ表示領域30のうち、通常画面において通知画像34の少なくとも一部が表示される位置と同じである。
バトルゲーム中に操作タブ42がタップされると、バトルゲームが中断される。このとき、ディスプレイ26には、不図示の中断画面がバトル画面に重畳表示される。中断画面にはリタイア操作部および再開操作部が設けられ、プレイヤは、これらの操作部をタップすることで、バトルゲームのリタイア(終了)または再開を選択することができる。
バトルゲームが正常に終了(正常終了)すると、図4Cに示すように、リザルト画面がディスプレイ26に表示される。本実施形態において、バトルゲームの正常終了には、リタイアによる途中終了、バトルゲームにおいて勝利が確定する勝利終了、バトルゲームにおいて敗北が確定する敗北終了の3つの終了パターンが含まれる。図4Cには、一例として、勝利終了時のリザルト画面を示しているが、リザルト画面は、終了パターンごとに異なる。
リザルト画面には、「閉じる」と記された終了操作部44が表示され、この終了操作部44がタップされると、ディスプレイ26の表示が、バトル画面から通常画面に切り替わる。つまり、リザルト画面は、バトル画面の一部である。なお、リザルト画面から切り替わる通常画面は、バトル画面に切り替わる直前に表示されていた画面でもよいし、ホーム画面等、所定の画面であってもよい。このように、リザルト画面の表示終了に伴い、バトルゲームが終了することとなる。
図5Aは、マルチプレイ選択時のプレイ内容選択ページの一例を説明する図である。図5Bは、ルーム選択ページの一例を説明する図である。図5Cは、対象者選択ページの一例を説明する図である。図5Dは、ルーム詳細ページの一例を説明する図である。図5Aに示すように、バトルゲームの種類、および、バトルゲームで利用するパーティが選択された状態で、マルチプレイタブ40bがタップされたとする。
この場合、図5Bに示すように、クエスト画面のルーム選択ページが表示される。ルーム選択ページでは、「ルーム作成」と記されたルーム作成タブ46が表示される。本実施形態において、「ルーム」とは、マルチプレイに参加する全てのプレイヤが情報を共有する場を示しており、マルチプレイを行うためにサーバ100で確保される領域を指す場合もある。
プレイヤは、マルチプレイを行う際に、ルーム作成タブ46をタップ(要求操作を入力)することで、自身でルームを作成することができる。なお、以下では、マルチプレイにおいてルームを作成したプレイヤをホストプレイヤと呼ぶ。また、他のプレイヤが作成したルームに入室したプレイヤをゲストプレイヤと呼ぶ。
ルーム作成タブ46がタップされると、図5Cに示すように、クエスト画面の対象者選択ページが表示される。対象者選択ページでは、「フォロワ」と記されたフォロワタブ48aと、「相互フォロワ」と記された相互フォロワタブ48bと、「ランダム」と記されたランダムタブ48cとが表示される。ルームを作成するプレイヤは、対象者選択ページにおいて、自身が作成したルームに招待する対象者(ゲストプレイヤ)を選択することができる。
具体的には、フォロワタブ48aが操作されると、ルームを作成するプレイヤによってフォロワに設定されているプレイヤが、招待情報を受信可能な対象者に設定される。なお、本実施形態において、招待情報は、対象者として設定されたプレイヤのみが受信可能であり、対象者に設定されないプレイヤが招待情報を受信することはない。また、詳しくは後述するが、対象者は、一定の条件を満たさない限り、招待情報を受信することはない。したがって、対象者とは、あくまでも招待情報を受信する権利を得たプレイヤと言える。
相互フォロワタブ48bが操作されると、ルームを作成するプレイヤによって相互フォロワに設定されているプレイヤが対象者に設定される。一方、ランダムタブ48cが操作されると、サーバ100に登録されている全てのプレイヤの中から対象者が設定される。対象者に設定されたプレイヤのプレイヤ端末1は、サーバ100と通信を行った際に、招待情報を受信する。招待情報を受信した対象者は、ルームに入室するか否か、すなわち、マルチプレイに参加するか否かを決定することができる。このように、ルームへの入室は、招待情報を受信したプレイヤに限られる。
例えば、図5Cに示すように、ランダムタブ48cがタップされると、図5Dに示すように、クエスト画面のルーム詳細ページが表示される。ルーム詳細ページでは、ホストプレイヤが選択したパーティを示すパーティ情報を含む種々の情報(ルーム情報)が表示される。また、ホストプレイヤのルーム詳細ページには、「準備完了」と記された開始タブ50が表示される。ホストプレイヤが開始タブ50をタップすると、マルチプレイが開始される。
図6Aは、通常画面における招待情報の受信の報知の一例を説明する図である。図6Bは、バトル画面における招待情報の受信の報知の一例を説明する図である。図6Cは、招待情報ダイアログ52の一例を説明する図である。図6Dは、保留操作後の画面の一例を説明する図である。例えば、図6Aに示すように、対象者のプレイヤ端末1において、ディスプレイ26に情報確認画面が表示されているとする。この状態で、プレイヤ端末1が招待情報を受信すると、図示のように、ヘッダ表示領域30において、通知画像34が非報知態様から報知態様に切り替わる。
また、図6Bに示すように、対象者のプレイヤ端末1において、ディスプレイ26にバトル画面が表示されているとする。上記したように、バトル画面では、通常、ヘッダ表示領域30に操作タブ42が表示されている(図4B参照)が、プレイヤ端末1が招待情報を受信すると、図示のように、操作タブ42が、報知態様の通知画像34に切り替わる。
報知態様で表示されている通知画像34がタップされると、図6Cに示すように、招待情報ダイアログ52が表示(開封)される。招待情報ダイアログ52は、通知画像34がタップされたときに表示されている画面に重畳表示される。また、バトルゲーム中に通知画像34がタップされた場合には、操作タブ42がタップされた場合と同様にバトルゲームが中断され、中断時のバトル画面に重畳して招待情報ダイアログ52が表示される。
招待情報ダイアログ52には、クエスト情報として、例えば、ホストプレイヤのプレイヤランクやプレイヤ名、マルチプレイでプレイされるバトルゲームの種類等の情報が表示される。また、招待情報ダイアログ52には、「参加する」と記された参加タブ52a、「参加しない」と記された拒否タブ52b、および、「とじる」と記された保留タブ52cが設けられている。
参加タブ52aは、マルチプレイへの参加、すなわち、招待されたルームへの入室を希望する参加操作を受け付ける。また、拒否タブ52bは、マルチプレイへの参加を拒否する拒否操作を受け付ける。また、保留タブ52cは、マルチプレイに参加するか否かを保留扱いとする保留操作を受け付ける。
例えば、招待情報ダイアログ52の開封後に保留タブ52cがタップされ、保留操作が入力されたとする。保留操作が入力されると、図6Dに示すように、招待情報ダイアログ52が閉じられる(非表示となる)。ただし、保留操作が入力された場合、通知画像34は、報知態様のまま表示され続ける。なお、バトルゲーム中に招待情報ダイアログ52が表示された状態で、保留操作が入力されると、招待情報ダイアログ52が閉じられるのと同時に、バトルゲームが再開される。この場合にも、通知画像34は、報知態様のまま表示され続ける。
図7Aは、拒否操作前の画面の一例を説明する図である。図7Bは、拒否操作後の画面の一例を説明する図である。図7Aに示すように、招待情報ダイアログ52の開封後に拒否タブ52bがタップされ、拒否操作が入力されたとする。拒否操作が入力されると、図7Bに示すように、招待情報ダイアログ52が閉じられる(非表示となる)のと同時に、通知画像34が非報知態様に切り替わる。
なお、バトルゲーム中に招待情報ダイアログ52が表示された状態で、拒否操作が入力された場合には、招待情報ダイアログ52が閉じられるのと同時に、バトルゲームが再開される。この場合、ヘッダ表示領域30においては、通知画像34が非表示となり、操作タブ42が表示される。
図7Cは、参加操作前の画面の一例を説明する図である。図7Dは、参加操作後の画面の一例を説明する図である。図7Cに示すように、招待情報ダイアログ52の開封後に参加タブ52aがタップされ、参加操作が入力されたとする。参加操作が入力されると、対象者のプレイヤ端末1からサーバ100に参加情報が送信される。サーバ100では、参加情報が入力されると、招待されたルームへの入室可否が判定される。
具体的には、招待されたルームにおいて、マルチプレイが既に開始されている場合(プレイ中)、上限数のゲストプレイヤがルームに入室している場合(満室)、ルームが消滅している場合(解散)には、ルームへの入室が不可能であると判定される。この場合には、プレイヤ端末1のディスプレイ26に、ルームへの入室が不可能であることを知らせる不図示のダイアログ(入室不可画面)が表示される。
これに対して、サーバ100において、ルームへの入室が可能であると判定されたとする。この場合、参加情報を送信した対象者のプレイヤ情報がルームに追加され、ルーム情報が更新される。このように、参加操作が行われてルームに入室できた場合には、対象者がゲストプレイヤとして設定される。そして、ルーム情報が更新されると、ホストプレイヤおよび全てのゲストプレイヤが、更新されたルーム情報を受信する。
このとき、ゲストプレイヤのプレイヤ端末1(以下、「ゲスト端末」と呼ぶ)には、図7Dに示すように、ルーム詳細ページが表示される。更新されたルーム情報により、ホストプレイヤのプレイヤ情報と、全てのゲストプレイヤのプレイヤ情報とが、ルーム詳細ページに表示される。なお、上記したように、ホストプレイヤのプレイヤ端末1(以下、「ホスト端末」と呼ぶ)に表示されるルーム詳細ページには、開始タブ50が設けられている。一方で、図7Dに示すように、ゲスト端末に表示されるルーム詳細ページには、開始タブ50が設けられていない。したがって、マルチプレイを開始することができるのは、ホストプレイヤのみとなる。
なお、ゲスト端末に表示されるルーム詳細ページには、ルームから退室する操作を受け付ける操作部が設けられていない。つまり、ゲストプレイヤは、入室したルームから正式に退室することができない。これにより、ゲストプレイヤが入退室を繰り返す事態が抑制され、マルチプレイの早期開始が実現される。ただし、ゲストプレイヤが退室できるように、ゲスト端末のルーム詳細ページに退室用の操作部が設けられてもよい。また、ホスト端末に表示されるルーム詳細ページには、ルームを意図的に解散するための操作部が設けられてもよい。
なお、図示は省略するが、非報知態様で表示されている通知画像34をタップすると、招待情報が存在しない旨を報知するダイアログが表示される。上記したように、拒否操作がなされると、通知画像34が非報知態様に切り替わるため、拒否操作の入力後、すぐに通知画像34が操作されたとしても、招待情報が存在しない旨の報知がなされる。つまり、対象者は、一度参加を拒否したマルチプレイについては、参加することができない。
一方で、上記の保留操作がなされた場合には、招待情報ダイアログ52が閉じられた後も、通知画像34が報知態様で表示されている。したがって、保留操作を行った後に、再度、通知画像34がタップされると、招待情報ダイアログ52が再表示され、対象者は、招待されたマルチプレイに対して参加操作を入力することができる。ただし、上記したように、招待されたルームが、プレイ中、満室、消滅となっている場合には、ルームへの入室が不可能であると判定され、ルームへの入室が不可能であることを知らせるダイアログが表示される。
図8Aは、通常画面における案内情報の受信の報知態様の一例を説明する図である。図8Bは、案内情報ダイアログ54の一例を説明する図である。図8Cは、非表示操作後の画面の一例を説明する図である。図8Dは、閲覧操作後の画面の一例を説明する図である。本実施形態では、プレイヤ端末1がイベントの案内情報を受信する。案内情報は、運営者によってサーバ100にセットされ、プレイヤ端末1は、サーバ100と通信を行った際に、サーバ100から案内情報を受信する。
案内情報の受信は、招待情報の受信と同様、通知画像34によってプレイヤに報知される。例えば、図8Aに示すように、ディスプレイ26に情報確認画面が表示されている状態で案内情報を受信すると、通知画像34が報知態様に切り替わる。この状態で通知画像34がタップされると、図8Bに示すように、案内情報ダイアログ54が表示(開封)される。案内情報ダイアログ54は、通知画像34がタップされたときに表示されている画面に重畳表示される。また、バトルゲーム中に通知画像34がタップされた場合には、バトルゲームが中断され、中断時のバトル画面に重畳して案内情報ダイアログ54が表示される。
案内情報ダイアログ54には、例えば、定期的に開催されるクエストに関する情報が表示される。また、案内情報ダイアログ54には、「とじる」と記された非表示タブ54aと、「イベントへ」と記された閲覧タブ54bとが設けられている。非表示タブ54aは、案内情報ダイアログ54の表示を終了させる非表示操作を受け付ける。また、閲覧タブ54bは、イベント情報を閲覧する閲覧操作を受け付ける。
例えば、案内情報ダイアログ54の開封後に非表示タブ54aがタップされ、非表示操作が入力されたとする。非表示操作が入力されると、図8Cに示すように、案内情報ダイアログ54が閉じられる(非表示となる)。ただし、非表示操作が入力された場合、通知画像34は、報知態様のまま表示され続ける。なお、バトルゲーム中に案内情報ダイアログ54が表示された状態で、非表示操作が入力されると、案内情報ダイアログ54が閉じられるのと同時に、バトルゲームが再開される。この場合にも、通知画像34は、報知態様のまま表示され続ける。ただし、非表示タブ54aから非表示操作が入力された場合、通知画像34は、報知態様から非報知態様に切り替わってもよい。
一方、案内情報ダイアログ54の開封後に閲覧タブ54bがタップされ、閲覧操作が入力されたとする。閲覧操作が入力されると、図8Dに示すように、参加可能なイベント情報が記されたイベント案内画面が表示される。詳しい説明は省略するが、イベント案内画面では、プレイヤの操作入力が可能であり、入力された操作により、イベントへの参加が可能となる。なお、イベント案内画面が表示されると、通知画像34は、非報知態様に切り替わる。
以上のように、通知画像34は、招待情報および案内情報の2種類の情報について、その受信を報知する。ここでは、受信した情報の種別に拘わらず、共通の報知態様で通知画像34が表示される。なお、招待情報および案内情報の双方を受信している場合において、報知態様で表示されている通知画像34がタップされたとする。この場合、ディスプレイ26には、招待情報ダイアログ52が表示される。つまり、招待情報(招待情報ダイアログ52)は、案内情報(案内情報ダイアログ54)よりも優先的に表示される。
ただし、招待情報および案内情報の双方を受信している場合に、案内情報(案内情報ダイアログ54)が、招待情報(招待情報ダイアログ52)よりも優先的に表示されてもよい。あるいは、案内情報(案内情報ダイアログ54)と、招待情報(招待情報ダイアログ52)とが同時に表示されてもよい。さらには、通知画像34は、招待情報の受信のみを報知してもよい。また、通知画像34は、招待情報の受信と、案内情報の受信とを識別可能に報知してもよい。なお、ここでは、プレイヤ端末1が案内情報を受信することとしたが、案内情報は必須ではない。
ここで、本実施形態では、ホストプレイヤが対象者を招待し、対象者がゲストプレイヤとしてルームに入室することで、はじめて複数のプレイヤでマルチプレイを実行することができる。また、マルチプレイを開始する権限は、ホストプレイヤにのみ与えられている。そのため、ゲストプレイヤがルームに入室し、マルチプレイを開始できる状態になっているにも拘わらず、ホストプレイヤが開始タブ50を操作せずに放置すると、マルチプレイがいつまでも開始されず、ゲストプレイヤにストレスが与えられてしまう。そこで、本実施形態では、ホストプレイヤによる放置を減少させるべく、サーバ100における対象者の抽出と、プレイヤ端末1における招待情報の受信ならびに報知とが次のようになされている。以下では、まず、サーバ100における対象者の抽出方法について説明し、その後、プレイヤ端末1における招待情報の受信ならびに報知方法について説明する。
(対象者の抽出方法)
図9Aは、優先ポイントを説明する図である。図9Bは、優先ポイントの更新条件を説明する図である。サーバ100は、プレイヤ情報をプレイヤ(プレイヤID)ごとに記憶する。プレイヤ情報には、例えば、プレイヤ経験値、プレイヤレベル、プレイヤランク、保有キャラクタ、フォロワ、相互フォロワ、パーティ情報等、ゲームをプレイするために必要な種々の情報が含まれる。
また、プレイヤ情報には、招待情報を受信する対象者を抽出するための情報として、優先度情報が含まれる。サーバ100は、優先度情報を含むプレイヤ情報をプレイヤごとに記憶部118に蓄積し、予め設定された更新条件にしたがって優先度情報を更新する。
本実施形態では、優先度情報として、優先ポイントが設けられている。図9Aに示すように、優先ポイントは、最大値が999ポイント、最小値が0ポイントに設定されており、0から999の範囲で更新される。また、優先ポイントには、初期値として100ポイントが設定されており、所定の更新条件が成立すると、優先ポイントが初期値に更新される。
ルームを作成する際に、ランダムタブ48cがタップされた場合、サーバ100では、全プレイヤの中から、招待情報を受信可能な対象者をランダムに抽出する。このとき、サーバ100は、優先ポイントが高いプレイヤを優先的に対象者に設定する。したがって、優先ポイントが高いプレイヤほど、招待情報を受信しやすくなる。
優先ポイントの更新条件は、図9Bに示すように設定されている。具体的には、対象者として招待情報を受信した場合には、当該対象者の優先ポイントが「4」減算される。また、対象者が招待情報を受信した後、通知画像34をタップして招待情報ダイアログ52を開封した場合には、当該対象者の優先ポイントが「1」加算される。
また、対象者が招待情報ダイアログ52の参加タブ52aをタップして参加操作を行ったものの、マルチプレイに参加できなかった場合には、当該対象者の優先ポイントが「4」加算される。なお、マルチプレイに参加できない場合としては、プレイ中または満室によりルームに入室できない場合と、ルームに入室した後、マルチプレイの開始前にルームが解散した場合とがある。ここでは、マルチプレイに参加できなかった場合に、対象者の優先ポイントが加算されることとしたが、これに代えて、例えば、ルームに入室できなかった場合に、対象者の優先ポイントが加算されてもよい。
また、マルチプレイによるバトルゲームが正常に終了(リタイアによる途中終了、勝利終了および敗北終了を含む)したとする。このとき、バトルゲームの終了時におけるゲストプレイヤの優先ポイントが、初期値よりも大きい場合には、当該ゲストプレイヤの優先ポイントが初期値にリセットされる。
また、ホストプレイヤとしてルームを作成した場合には、当該ホストプレイヤの優先ポイントが「4」減算される。また、このとき、ランダムタブ48cをタップして、招待情報を受信する対象者をランダムに抽出した場合には、ホストプレイヤの優先ポイントが「1」加算される。また、マルチプレイが開始された場合には、ホストプレイヤの優先ポイントが「1」加算される。
さらに、マルチプレイによるバトルゲームが勝利終了もしくは敗北終了となった場合において、敵キャラクタに与えたダメージ(以下、「与ダメージ」と呼ぶ)が、全ダメージの20%以上の全てのプレイヤについて、優先ポイントが「3」加算される。
上記の更新条件によれば、例えば、対象者が、マルチプレイに参加しようとしたものの参加できなかった場合には、招待情報の受信(−4)、招待情報の開封(+1)、マルチプレイに参加不可(+4)により、招待情報の受信前を基準として、優先ポイントが「1」上昇する。これにより、マルチプレイに参加しようとしたものの、参加できなかったプレイヤが、招待情報を受信しやすくなる。また、優先ポイントが初期値を上回った状態で、マルチプレイによるバトルゲームが正常に終了すると、初期値にリセットされる。これにより、多くのプレイヤに対して、招待情報を受信する機会が平等に付与される。
また、マルチプレイに参加したゲストプレイヤにおいて、与ダメージが全ダメージの20%以上になれば、招待情報の受信(−4)、招待情報の開封(+1)、与ダメージが20%以上(+3)により、マルチプレイの参加前を基準として、優先ポイントはプラスマイナスゼロとなる。一方で、与ダメージが全ダメージの20%未満のゲストプレイヤは、招待情報の受信(−4)、および、招待情報の開封(+1)により、マルチプレイの参加前を基準として、優先ポイントが「3」減算される。つまり、マルチプレイにおいて非協力的なゲストプレイヤは、優先度が低くなり、対象者に設定されにくくなる。このように、通信ゲーム中のゲーム結果に基づいて優先ポイントを変化させることにより、協力的なプレイヤが相対的に対象者に設定されやすくなる。
また、ホストプレイヤは、ルームを作成した時点で優先ポイントが「4」減算されるが、マルチプレイを開始し、与ダメージが全ダメージの20%以上となれば、優先ポイントが減少することはない。具体的には、対象者をランダムに抽出した場合には、ルーム作成(−4)、対象者をランダムに抽出(+1)、マルチプレイ開始(+1)、与ダメージが20%以上(+3)により、ルームの作成前を基準として、優先ポイントが「1」上昇する。また、対象者をフォロワまたは相互フォロワに設定した場合には、ルーム作成(−4)、マルチプレイ開始(+1)、与ダメージが20%以上(+3)により、ルームの作成前を基準として、優先ポイントはプラスマイナスゼロとなる。これにより、ホストプレイヤとして、適切にマルチプレイを開始し、かつ、協力的にプレイした場合には、優良なプレイヤであると考えられ、ゲストプレイヤとしてマルチプレイに参加する機会も確保される。
一方で、ルームを作成したものの、マルチプレイを開始しなかった場合には、例えば、ルーム作成(−4)、および、対象者をランダムに抽出(+1)により、ルームの作成前を基準として、優先ポイントが「3」減少する。また、ホストプレイヤの与ダメージが全ダメージの20%未満である場合にも、例えば、ルーム作成(−4)、対象者をランダムに抽出(+1)、マルチプレイ開始(+1)により、ルームの作成前を基準として、優先ポイントが「2」減少する。これにより、ルームを放置したり、意図的にルームを解散したりするプレイヤや、非協力的なプレイヤは、ゲストプレイヤとしてマルチプレイに参加しにくくなる。
以上のように更新条件が設定された本実施形態によれば、協力的あるいは優良と思われるプレイヤに招待情報が届きやすくなり、適切なマッチングを実現することができる。以下では、全プレイヤの中から対象者を設定する際のサーバ100の処理について説明する。
(サーバ100のリスト更新処理)
図10は、リスト更新処理を説明する第1の図である。サーバ100の記憶部118には、プレイヤごとにプレイヤ情報を記憶するプレイヤ情報記憶部160(図27参照)が設けられている。サーバ100では、プレイヤ端末1と通信が行われるたびに、プレイヤ情報記憶部160におけるプレイヤ情報を更新するプレイヤ情報更新処理が行われる。また、記憶部118には、抽出リストが設けられている。サーバ100では、プレイヤ情報記憶部160のプレイヤ情報に基づいて、抽出リストを更新するリスト更新処理が常時行われている。
例えば、記憶部118に設けられる抽出リストでは、図10に示すように、アドレスが付された多数の記憶領域のそれぞれに、プレイヤ(プレイヤID)、招待情報(ルームナンバー)、状況フラグおよびウエイトタイムがセットされる。なお、図10に示す抽出リスト、および、抽出リストにセットされる情報は一例に過ぎない。例えば、抽出リストにセットされる情報として、優先ポイントおよびプレイヤランクは必須ではなく、抽出リストにセットされる情報は適宜設計可能である。また、図10において、アドレスに記した番号は優先順位に対応しており、番号が小さい記憶領域ほど、優先順位が高くなる。
また、抽出リストは、プレイヤランクごとに設けられている。例えば、プレイヤランクが1〜10のプレイヤがリストアップされる抽出リスト、プレイヤランクが11〜20のプレイヤがリストアップされる抽出リストといった具合に、複数の抽出リストが設けられている。ここでは、プレイヤランクが11〜20のプレイヤがリストアップされる抽出リストを用いて説明する。
抽出リストにおいては、優先ポイントが高いプレイヤほど、優先順位の高いアドレスが付された記憶領域にリストアップされる。例えば、プレイヤランクが11〜20のプレイヤの中で、「165」の優先ポイントが最高値であったとする。また、優先ポイントが最高値のプレイヤが5人いたとする。この場合、優先ポイントが「165」のプレイヤのプレイヤ情報が、アドレス1から5の記憶領域にセットされる。なお、優先ポイントが等しいプレイヤが複数存在する場合には、所定の条件にしたがってアドレス(優先順位)が決定される。このように、リスト更新処理では、プレイヤ情報記憶部160のプレイヤ情報に基づき、優先ポイントが高いプレイヤから順に、抽出リストにリストアップする処理が行われる。
図11は、リスト更新処理を説明する第2の図である。例えば、いずれかのプレイヤ端末1において、ルームの作成、および、招待情報の送付を要求する要求情報が送信されたとする。なお、要求情報は、フォロワタブ48a、相互フォロワタブ48b、ランダムタブ48cごとに識別可能に設けられている。サーバ100では、要求情報を受信すると、ルームを作成、設定するルーム設定処理が行われる。このとき、受信した要求情報が、ランダムタブ48c用の要求情報であった場合、リスト更新処理において、次のようにして対象者が設定される。
すなわち、図11に示すように、招待情報は、優先順位の高いアドレスが付された記憶領域から順に、所定数(ここでは100個)の記憶領域までセットされる。ただし、招待情報がセットされる記憶領域は、状況フラグに基づいて決定される。
具体的には、状況フラグは、招待情報の受信状況を識別するものであり、ここでは、「設定可」、「受信可」、「受信不可」、「受信済」の4つの受信状況に識別される。受信状況の「設定可」は、招待情報の設定が可能であることを示している。記憶領域において、状況フラグが記憶される領域がブランクの場合(状況フラグがオフの場合)、受信状況が「設定可」となる。また、受信状況の「受信可」は、対象者に設定されたプレイヤ端末1(以下、「対象者端末」と呼ぶ)から受信確認があった場合に、設定されている招待情報の受信を許可することを示している。また、受信状況の「受信不可」は、対象者端末から受信確認があった場合に、設定されている招待情報の受信を制限することを示している。また、受信状況の「受信済」は、対象者端末が招待情報を受信したことを示している。
サーバ100は、優先順位の高いアドレスが付された記憶領域から、受信状況が「設定可」、すなわち、状況フラグがブランクの記憶領域を順に検索して招待情報を設定する。例えば、図10に示す状態では、アドレス1〜100の全ての記憶領域において状況フラグがブランクである。この状態において、プレイヤランクが11〜20のプレイヤのプレイヤ端末1から、ランダムタブ48c用の要求情報を受信すると、図11に示すように、アドレス1〜100の記憶領域に招待情報がセットされる。
また、招待情報がセットされた記憶領域には、状況フラグがセットされる。このとき、招待情報がセットされた記憶領域のうち、優先ポイントが最高の記憶領域には、「受信可」を示す状況フラグがセットされる。また、招待情報がセットされたその他の記憶領域には、「受信不可」を示す状況フラグがセットされる。さらに、「受信不可」の状況フラグがセットされた記憶領域には、それぞれウエイトタイムが設定される。
このウエイトタイムは、受信状況を「受信不可」から「受信可」に切り替えるまでの時間である。つまり、「受信不可」の状況フラグが設定された場合、ウエイトタイムが経過したところで、状況フラグが「受信可」に切り替わる。各記憶領域は、優先ポイントごとにグループ化され、同一グループに分類される記憶領域には、同一のウエイトタイムが設定される。また、ウエイトタイムは、優先ポイントが相対的に低いグループよりも、優先ポイントが相対的に高いグループの方が短く設定される。
図11に示す例では、優先ポイントが「164」のグループは、ウエイトタイムが5秒に設定され、優先ポイントが「163」のグループは、ウエイトタイムが10秒に設定される。このように、ウエイトタイムは、優先ポイントが高いほど短くなり、優先ポイントが低くなるにつれて長くなる。
図12は、リスト更新処理を説明する第3の図である。図11に示すようにして招待情報、状況フラグおよびウエイトタイムがセットされた後、例えば、5秒が経過したとする。上記したように、アドレス6〜99の記憶領域は、ウエイトタイムが5秒に設定されている。このウエイトタイムである5秒が経過すると、図12に示すように、アドレス6〜99の記憶領域の状況フラグが「受信可」に切り替わる。なお、アドレス100の記憶領域には、当初、ウエイトタイムとして10秒が設定されたため、受信状況は「受信不可」のままであり、ウエイトタイムが5秒に更新されている。
上記したように、受信状況が「受信不可」の場合には、招待情報がセットされているものの、プレイヤ端末1が招待情報を受信することができない。すなわち、招待情報がセットされている状態で、プレイヤ端末1から受信確認がなされたとしても、プレイヤ端末1が招待情報を受信することはない。このように、サーバ100は、招待情報をセットすることで対象者を設定した際に、優先ポイントが高いプレイヤほど、早期に招待情報を受信できるようにしている。これにより、優先順位の高いプレイヤほど、マルチプレイに参加しやすくなる。
また、上記の状態で、新たに他のプレイヤ端末1から、ランダムタブ48c用の要求情報が送信されたとする。この場合、図12に示すように、アドレス101〜200の記憶領域に招待情報がセットされる。なお、アドレス101〜200の記憶領域は、いずれも優先ポイントが163である。したがって、ここでは、アドレス101〜200の記憶領域の全てにおいて、「受信可」の状況フラグが設定されている。
図13は、リスト更新処理を説明する第4の図である。例えば、図12に示す状態で、アドレス1およびアドレス3の記憶領域において対象者に設定された対象者端末から、招待情報の受信確認がなされたとする。この場合、両プレイヤの対象者端末は、記憶領域にセットされた招待情報を受信する。サーバ100は、招待情報が受信されると、図13の上図に示すように、状況フラグを「受信可」から「受信済」に切り替える。
また、上記のように、対象者が招待情報を受信すると、対象者の優先ポイントが「4」減算される。サーバ100は、アドレス1およびアドレス3の記憶領域において、優先ポイントを「161」に更新する。その後、サーバ100は、優先ポイントに基づいてソート処理を行う。このソート処理の結果、アドレス1およびアドレス3の記憶領域に記憶されていた情報は、図13の下図に示すように、優先順位が低いアドレス(記憶領域)に移されることとなる。
なお、詳しくは後述するが、フォロワタブ48a用の要求情報が送信された場合には、フォロワに設定されているプレイヤの記憶領域に招待情報がセットされる。また、相互フォロワタブ48b用の要求情報が送信された場合には、相互フォロワに設定されているプレイヤの記憶領域に招待情報がセットされる。
上記のリスト更新処理によれば、マルチプレイへの参加意欲が高いプレイヤが、招待情報を受信しやすくなる。参加意欲の高いプレイヤが招待情報を受信することで、マルチプレイを開始するまでの時間が短縮される。
さらに、本実施形態では、プレイヤ端末1におけるゲームのプレイ状況に応じて招待情報が受信される。具体的には、プレイヤがバトルゲーム(シングルプレイ)をプレイしている場合や、ゲームをプレイするために画面を注視していると考えられる状況下で、招待情報の受信が報知される。すなわち、プレイヤ端末1においては、マルチプレイへの参加意欲が高く、招待に対する応答性が高いと考えられる状況下で、招待情報の受信の報知がなされる。これにより、マルチプレイに参加するプレイヤが集まるまでの時間が短縮され、マルチプレイを開始するまでの時間を短縮することができる。
(プレイヤ端末1のプレイ状態)
図14Aは、プレイヤ端末1のプレイ状態を説明する図である。図14Bは、招待情報の受信確認のタイミングを説明する図である。プレイヤ端末1は、ゲームのプレイ状況、および、招待情報の受信状況に基づいて、プレイ状態を更新する。図14Aに示すように、プレイヤ端末1で管理されるプレイ状態は、受け取り可能状態、未開封状態、開封済状態、参加状態、受け取り不可状態の5つである。つまり、プレイヤ端末1では、プレイ状態が、上記5つのプレイ状態のいずれかに設定される。プレイヤ端末1は、設定されているプレイ状態に基づいて、招待情報の受信に係る処理を実行する。
各プレイ状態には、招待情報の受信可否が対応付けられている。プレイヤ端末1は、プレイ状態が受け取り可能状態もしくは未開封状態に設定されている場合、サーバ100から招待情報を受信し得る。つまり、プレイ状態のうち、受け取り可能状態および未開封状態は、招待情報の受信が許可された許可状態と言える。一方、プレイヤ端末1は、プレイ状態が開封済状態、参加状態、受け取り不可状態に設定されている場合、サーバ100から招待情報を受信することはない。つまり、プレイ状態のうち、開封済状態、参加状態、受け取り不可状態は、招待情報の受信が不可能な不可能状態と言える。
例えば、サーバ100において、プレイヤが対象者に設定され、当該プレイヤに対する招待情報がサーバ100にセットされたとする。このとき、プレイヤ端末1において、プレイ状態が受け取り可能状態または未開封状態に設定されていれば、プレイヤ端末1がサーバ100から招待情報を受信する。一方で、招待情報がサーバ100にセットされていても、プレイ状態が開封済状態、参加状態、受け取り不可状態に設定されていれば、プレイヤ端末1はサーバ100から招待情報を受信しない。換言すれば、プレイヤ端末1は、プレイ状態が開封済状態、参加状態、受け取り不可状態に設定されている場合、招待情報の受信確認を実行しない。
なお、詳しい説明は省略するが、プレイ状態が許可状態であっても、セットされた招待情報によっては、プレイヤ端末1が招待情報を受信しないことがある。例えば、ゲストプレイヤとしてバトルゲームのマルチプレイに参加した場合、このバトルゲームと同一種別のバトルゲームへの招待情報は、参加したマルチプレイの終了後、60分間は受信しない。このように、プレイ状態が許可状態である場合、原則的には、招待情報を受信可能であるが、招待情報の内容によっては、一部の招待情報の受信が制限されてもよい。
図14Aに示すように、上記の各プレイ状態には、それぞれ設定条件が設けられている。プレイヤ端末1は、設定条件の成立有無を判定し、その判定結果に基づいてプレイ状態を設定する。受け取り可能状態には、招待情報を未受信であること、マルチプレイのルームに入室していないこと、後述する受け取り不可状態の設定条件が成立しないことが、設定条件として設けられている。未開封状態には、招待情報を受信していること、および、招待情報ダイアログ52が未開封であることが、設定条件として設けられている。
開封済状態には、招待情報ダイアログ52が表示中であること、および、保留操作が入力(招待情報ダイアログ52の保留タブ52cがタップ)されたことが、設定条件として設けられている。参加状態には、マルチプレイのルームに入室中であることが設定条件として設けられている。受け取り不可状態には、マルチプレイの正常終了から5分が経過していないこと、拒否操作から所定時間が経過していないことが、設定条件として設けられている。なお、30分以内に拒否操作が2回入力された場合、2回目の拒否操作から60分間、受け取り不可状態に維持され、その他の場合には、拒否操作から5分間、受け取り不可状態に維持される。
プレイヤ端末1は、プレイ状態が許可状態に設定されている場合、サーバ100に対して招待情報の受信確認を行う。このとき、自身に対する招待情報がセットされていれば、プレイヤ端末1が、セットされている招待情報を受信する。つまり、招待情報の受信は、招待情報の受信確認を契機として行われる。したがって、厳密には、プレイ状態ごとに、招待情報の受信確認の可否が予め設定されていると言える。
上記したように、サーバ100では、マルチプレイへの参加意欲が高いプレイヤが対象者に設定される。しかしながら、こうした参加意欲の高いプレイヤであっても、プレイヤ端末1におけるゲームのプレイ状況によっては、マルチプレイに即座に参加できないこともある。例えば、短時間の移動中や、マルチプレイを終了した直後等には、マルチプレイへの参加意欲が低下する。このように、マルチプレイへの参加意欲が低い状態でマルチプレイに参加すると、協力的なプレイがなされない可能性がある。
本実施形態では、プレイヤ端末1におけるゲームのプレイ状況に応じて招待情報が受信される。すなわち、サーバ100において、招待情報がセットされていたとしても、プレイヤ端末1におけるゲームのプレイ状況によっては、招待情報を受信しない。つまり、マルチプレイに参加しない可能性が高い場合には、そもそもプレイヤ端末1が招待情報を受信しないようにしている。これにより、参加意欲が低下しているプレイヤがマルチプレイに参加する可能性が低減される。また、マルチプレイに参加できない状態で招待情報を何度も受信することがないため、プレイヤに鬱陶しさを感じさせないようにすることができる。
ここで、プレイヤ端末1における招待情報の受信確認は、図14Bに示すように行われる。すなわち、プレイヤ端末1のディスプレイ26にバトル画面が表示されている場合、15秒間隔で招待情報の受信確認が行われる。ただし、ディスプレイ26において、通常画面(バトル画面以外の画面)からバトル画面に遷移した場合、画面遷移後、最初に招待情報の受信確認を行うタイミングは、1〜15秒の間で抽選によりランダムに決定される。
また、プレイヤ端末1のディスプレイ26に通常画面(バトル画面以外の画面)が表示されている場合、10秒間隔で招待情報の受信確認が行われる。ただし、ディスプレイ26において、バトル画面から通常画面に遷移した場合、通常画面が他の通常画面に遷移した場合、通常画面内でページが遷移した場合には、画面遷移後、最初に招待情報の受信確認を行うタイミングは、1〜10秒の間で抽選によりランダムに決定される。
上記のように、画面遷移後、最初に招待情報の受信確認を行うタイミングをランダムに決定することで、招待情報を受信するためだけに画面を遷移させるといったプレイヤの操作を防止することができる。これにより、サーバ100との不必要な通信が抑制され、サーバ100の負荷が軽減される。
また、バトル画面の表示中は、通常画面の表示中よりも、招待情報の受信確認の間隔が長く設定されている。これにより、招待情報の受信を目的とする不必要なバトルゲームの実行が抑制され、サーバ100の負荷増大を抑制することができる。
次に、上記のマルチプレイを実行するためのプレイヤ端末1およびサーバ100の通信処理について説明する。なお、ここでは、ゲームを進行するための基本的な通信処理、ならびに、マルチプレイに関する主な通信処理の一例について説明し、その他の処理については説明を省略する。
(プレイヤ端末1とサーバ100との通信処理)
図15は、プレイヤ端末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)。
また、プレイヤ端末1において、プレイ内容選択ページ(図4A参照)からシングルプレイタブ40aがタップされ、シングルプレイの開始操作がなされたとする(P4)。この場合、プレイヤ端末1からサーバ100に開始情報が送信される。なお、この開始情報には、プレイヤが選択したパーティ情報、バトルゲームの種別情報等が含まれる。サーバ100では、開始情報の入力により、バトルゲームを開始するために必要となるバトルゲーム開始処理が行われる(S3)。ここでは、例えば、バトルゲームを進行するためのメモリ112の領域を確保し、プレイヤ端末1から入力された情報を記憶したり、所定のプログラムを記憶部118からメモリ112に読み出したりする。また、サーバ100は、プレイヤ端末1が、バトルゲームの実行に必要なデータを受信できるようにセットする。
そして、プレイヤ端末1においても、バトルゲームを開始するために必要となるバトルゲーム開始処理が行われる(P5)。ここでは、例えば、バトルゲームを進行するためのメモリ12の領域を確保し、ゲームプレイ情報を記憶したり、サーバ100からダウンロードしたプログラムおよび画像データをメモリ12に記憶したりする。なお、バトルゲームに必要となるプログラム等は、記憶部18からメモリ12に読み出してもよい。
上記のようにしてバトルゲームの準備が完了すると、プレイヤ端末1およびサーバ100の双方において、シングルプレイによるバトルゲームを制御するためのバトルゲーム制御処理が同時並行して行われる(P6、S4)。このバトルゲーム制御処理では、各種情報を更新する更新処理が、フレーム単位で繰り返し実行される。なお、フレーム数は特に限定されるものではなく、例えば、1秒間のフレーム数は30〜60である。したがって、バトルゲーム中は、プレイヤ端末1およびサーバ100において、約16ms(ミリ秒)〜33msごとに情報の更新が行われている。
また、更新処理では、プレイヤ端末1とサーバ100との間で、更新情報の送受信が行われている。ここでは、更新処理および更新情報の送受信がフレーム単位で実行されるが、更新処理および更新情報の送受信は、フレーム単位よりも短い周期あるいは長い周期で行われてもよい。また、シングルプレイによるバトルゲーム中も、プレイヤ端末1における招待情報の受信確認(P7)、サーバ100における招待情報の検索(S5)、プレイヤ端末1における招待情報の受信の報知(P8)が定期的に実行され得る。そして、バトルゲームの終了条件が成立すると、プレイヤ端末1およびサーバ100のそれぞれにおいて、バトルゲームを終了させる終了処理が行われる(P9、S6)。プレイヤ端末1の終了処理(P9)では、例えば、リザルト画面がディスプレイ26に表示される。また、サーバ100の終了処理(S6)では、例えば、バトルゲームで獲得したアイテム、プレイヤ経験値、キャラクタの経験値等、各種のプレイヤ情報が更新される。
図16は、マルチプレイが実行される場合のプレイヤ端末1およびサーバ100の処理を説明するシーケンス図である。なお、以下の説明では、ホスト端末における処理をHPn(nは任意の整数)と示し、対象者端末およびゲスト端末における処理をGPn(nは任意の整数)と示す。
プレイヤ端末1(ホスト端末)において、ルーム作成タブ46がタップされ、要求操作が入力されたとする(HP10)。要求操作が入力されると、プレイヤ端末1(ホスト端末)は、サーバ100に対して、ルームの作成、および、招待情報の送付を要求する要求情報を送信する。なお、要求情報には、プレイヤが選択したパーティに係る情報、バトルゲームの種別を示す情報、タップされた操作部を示す情報等が含まれる。
サーバ100は、要求情報を受信すると、プレイヤ情報記憶部160において、優先ポイントを更新するポイント更新処理(図中、UPDATEと示す)を行う。ここでは、要求情報を送信したホストプレイヤの優先ポイントが「4」減算される。また、詳しくは後述するが、プレイヤ情報記憶部160においてポイント更新処理が行われると、抽出リストの優先ポイントも、プレイヤ情報記憶部160と同様に更新される。また、抽出リストにおいては、更新された優先ポイントに基づいてソート処理が行われる。
また、サーバ100は、要求情報を受信すると、ルームを作成、設定するルーム設定処理を行う(S10)。ここでは、マルチプレイを実行するための処理領域、すなわち、ルームが確保され、このルームに、要求情報に含まれる各種の情報が記憶される。また、作成したルームのルームナンバーが設定される。ホスト端末は、ルーム設定処理で設定されたルーム設定情報を受信し、ディスプレイ26にルーム詳細ページを表示する(HP11)。
また、サーバ100は、対象者を設定する(S11)。ここでは、招待情報、状況フラグ、ウエイトカウンタのカウンタ値が抽出リストにセットされ、対象者の設定が行われる。その後、対象者端末が招待情報の受信確認を行うと(GP10)、受信確認情報がサーバ100に送信される。サーバ100は、受信確認情報を受信すると、対象者に招待情報がセットされているかを検索する(S12)。ここでは、招待情報がセットされているため、サーバ100が、対象者の受信状況(状況フラグ)を「受信済」に更新する。また、サーバ100は、ポイント更新処理を行い、招待情報を受信した対象者の優先ポイントを「4」減算する。
対象者端末は、招待情報を受信すると、通知画像34を報知態様で表示させ、招待情報を受信した旨を報知する(GP11)。また、対象者端末は、プレイ状態を受け取り可能状態から未開封状態に更新する(GP12)。その後、対象者が通知画像34をタップし、招待情報ダイアログ52が開封されると(GP13)、サーバ100に開封情報が送信される。サーバ100は、開封情報を受信すると、ポイント更新処理を行う。ここでは、対象者の優先ポイントが「1」加算される。また、対象者端末では、プレイ状態が開封済状態に更新される(GP14)。
その後、対象者端末において、招待情報ダイアログ52の参加タブ52aがタップされると、対象者端末からサーバ100に参加情報が送信される(GP15)。なお、参加情報には、対象者が設定したパーティに係る情報等が含まれる。サーバ100は、参加情報を受信すると、ルームへの入室が可能かを判定し、ルームへの入室が可能であれば、ルーム情報を更新する(S13)。ここでは、サーバ100は、更新したルーム情報(ルーム更新情報)が、ホスト端末および対象者端末によって受信されるようにセットされる。
なお、図16では、1つの対象者端末(ゲスト端末)のみが示されているが、1つのルームに対して、複数の対象者端末(ゲスト端末)で同一の処理が行われている。したがって、いずれかの対象者端末がルームに入室した場合には、ルームに入室している全てのプレイヤのプレイヤ端末1が、ルーム更新情報を受信することとなる。
ホスト端末は、サーバ100からルーム更新情報を受信すると、ルーム詳細ページを更新表示する(HP12)。また、対象者端末も、ルーム更新情報を受信する。なお、ここでは、ルーム更新情報の受信後のプレイヤ端末1(対象者端末)を、ゲスト端末と呼ぶ。ゲスト端末では、ルーム更新情報を受信すると、プレイ状態を参加状態に更新し(GP16)、ディスプレイ26にルーム詳細ページを表示する(GP17)。
その後、ホスト端末において、ルーム詳細ページの開始タブ50がタップされ、マルチプレイの開始操作が入力されると(HP13)、開始情報がサーバ100に送信される。サーバ100では、開始情報の入力により、ポイント更新処理が行われる。ここでは、ホストプレイヤの優先ポイントが「1」加算される。
そして、ホスト端末、サーバ100、ゲスト端末では、それぞれ上記のバトルゲーム開始処理(不図示)が行われ、その後、マルチプレイを制御するためのマルチプレイ制御処理が同時並行して行われる(HP14、S14、GP18)。このマルチプレイ制御処理では、各種情報を更新する更新処理が、フレーム単位で繰り返し実行される。この更新処理では、ホスト端末、ゲスト端末およびサーバ100の間で、更新情報の送受信が行われている。そして、バトルゲームの終了条件が成立すると、ホスト端末、ゲスト端末およびサーバ100のそれぞれにおいて、バトルゲームを終了させる終了処理が行われる(HP15、S15、GP19)。
サーバ100は、マルチプレイの終了時に、マルチプレイに参加したプレイヤごとに、全ダメージ中の与ダメージを算出する(S16)。そして、算出した与ダメージに基づいて、ポイント更新処理を行う。ここでは、与ダメージが全ダメージの20%以上のプレイヤについて、優先ポイントが「3」加算される。一方、ゲスト端末においては、マルチプレイの終了時に、プレイ状態が受け取り不可状態に更新される(GP20)。その後、ゲスト端末では、所定時間が経過すると、プレイ状態が受け取り可能状態に更新される(GP21)。
図17は、マルチプレイに参加できない場合のプレイヤ端末1およびサーバ100の処理を説明するシーケンス図である。なお、図17において、対象者端末から参加情報が入力されるまでの処理については、図16と同じであるため、説明を省略する。上記したように、サーバ100は、参加情報を受信すると、ルームへの入室が可能かを判定する。このとき、ルームへの入室が不可能であれば、サーバ100は、ルームへの入室が不可能であることを示す参加不可能情報をセットする。また、このとき、サーバ100は、ポイント更新処理を行い、対象者の優先ポイントを「4」加算する。
対象者端末は、参加不可能情報を受信すると、所定の入室不可画面をディスプレイ26に表示する(GP22)。また、対象者のプレイヤ端末1は、プレイ状態を受け取り可能状態に更新する(GP23)。
図18は、マルチプレイの参加を拒否した場合のプレイヤ端末1およびサーバ100の処理を説明するシーケンス図である。なお、図18において、対象者端末から拒否情報が入力されるまでの処理については、図16と同じであるため、説明を省略する。対象者端末において、招待情報ダイアログ52の拒否タブ52bがタップされると、対象者端末からサーバ100に拒否情報が送信される(GP24)。また、対象者端末では、プレイ状態が受け取り不可状態に更新される(GP25)。
なお、本実施形態では、拒否情報を受信しても、サーバ100は特段の処理を行わないものとする。ただし、拒否情報を受信した場合に、サーバ100は、対象者の優先ポイントを減算してもよいし、受信状況(状況フラグ)等、抽出リストを更新してもよい。
次に、プレイヤ端末1の機能的構成、ならびに、プレイヤ端末1における具体的な処理について説明する。なお、以下では、招待情報に係る構成および処理について説明し、招待情報と関係のない構成および処理については説明を省略する。
(プレイヤ端末1の機能的構成)
図19は、プレイヤ端末1におけるメモリ12の構成およびコンピュータとしての機能を説明する図である。メモリ12には、プログラム記憶領域12a、および、データ記憶領域12bが設けられている。CPU10は、マルチプレイの開始時に、あるいは、マルチプレイの開始前に予め、端末側ゲーム制御用プログラム(モジュール)をプログラム記憶領域12aに記憶する。
端末側ゲーム制御用プログラムには、ゲーム実行プログラム60、バトルゲーム実行プログラム62、要求情報送信プログラム64、プレイ状態更新プログラム66、招待情報受信プログラム68、招待情報報知プログラム70、操作許可プログラム72、計時プログラム74が含まれる。なお、図19に列挙したプログラムは一例であり、端末側ゲーム制御用プログラムには、この他にも多数のプログラムが設けられている。
データ記憶領域12bには、データを記憶する記憶部として、ゲーム情報記憶部80、プレイ状態記憶部82、招待情報記憶部84が設けられている。なお、上記の各記憶部は一例であり、データ記憶領域12bには、この他にも多数の記憶部が設けられている。
CPU10は、プログラム記憶領域12aに記憶された各プログラムを動作させ、データ記憶領域12bの各記憶部のデータを更新する。そして、CPU10は、プログラム記憶領域12aに記憶された各プログラムを動作させることで、プレイヤ端末1(コンピュータ)を、端末側ゲーム制御部1Aとして機能させる。端末側ゲーム制御部1Aは、ゲーム実行部60a、バトルゲーム実行部62a、要求情報送信部64a、プレイ状態更新部66a、招待情報受信部68a、招待情報報知部70a、操作許可部72a、計時部74aを含む。
具体的には、CPU10は、ゲーム実行プログラム60を動作させ、コンピュータをゲーム実行部60aとして機能させる。同様に、CPU10は、バトルゲーム実行プログラム62、要求情報送信プログラム64、プレイ状態更新プログラム66、招待情報受信プログラム68、招待情報報知プログラム70、操作許可プログラム72を動作させ、それぞれバトルゲーム実行部62a、要求情報送信部64a、プレイ状態更新部66a、招待情報受信部68a、招待情報報知部70a、操作許可部72a、計時部74aとして機能させる。
ゲーム実行部60aは、プレイヤの操作に基づき、例えば、パーティの編成、味方キャラクタの強化等、バトルゲーム以外のゲームの進行を制御する。ゲーム実行部60aは、プレイヤ端末1に操作が入力されるたびに、操作に対応する情報をサーバ100に送信する。また、ゲーム実行部60aは、ゲームに係る情報(ゲーム情報)が更新された場合には、ゲーム情報記憶部80の情報を更新する。
バトルゲーム実行部62aは、バトルゲームを実行するための全ての制御を担う。例えば、バトルゲーム実行部62aは、プレイヤ端末1に入力される操作に基づいてサーバ100に情報を送信し、また、サーバ100から種々の情報を受信する。また、バトルゲーム実行部62aは、プレイヤ端末1に入力される操作、および、サーバ100から受信する情報に基づき、バトル画面を更新する。すなわち、バトルゲーム実行部62aは、所定の開始条件が成立すると、シングルプレイ、もしくは、他のプレイヤ端末1とのマルチプレイを実行する。また、バトルゲーム実行部62aは、バトルゲームが正常に終了した場合、ゲーム情報記憶部80の情報を更新する。
要求情報送信部64aは、フォロワタブ48a、相互フォロワタブ48b、ランダムタブ48cのいずれかの操作部がタップされると、操作部に対応する要求信号をサーバ100に送信する。
プレイ状態更新部66aは、招待情報の受信状況、および、ゲームのプレイ状況に基づいて、プレイ状態記憶部82のプレイ状態を更新する。
招待情報受信部68aは、プレイ状態が許可状態である場合に、ディスプレイ26に表示されている画面ごとに設定されたタイミングで、招待情報の受信確認を行う。具体的には、招待情報受信部68aは、サーバ100に受信確認情報を送信し、また、サーバ100にセットされている招待情報を受信して、招待情報記憶部84に記憶する。
招待情報報知部70aは、招待情報記憶部84における招待情報の記憶有無、すなわち、招待情報を受信しているか否かに基づいて、通知画像34を報知態様または非報知態様に切り替える。
操作許可部72aは、通知画像34がタップされた場合に招待情報ダイアログ52を表示し、プレイヤの参加操作、拒否操作、保留操作の入力を可能とする。具体的には、報知態様で表示されている通知画像34がタップされた場合に、受信した招待情報に対応するルームが存在しているかをサーバ100に確認する。ルームが存在している場合、操作許可部72aは、ディスプレイ26に招待情報ダイアログ52(図6C、図7A、図7C)を表示する。つまり、参加タブ52a、拒否タブ52b、保留タブ52cをタップ可能に表示することで、マルチプレイへの参加を希望する参加操作、マルチプレイへの参加を拒否するための拒否操作、マルチプレイへの参加を保留状態とする保留操作の入力を可能とする。
計時部74aは、後述する禁止時間、受信待機時間、拒否時間をそれぞれ計時する。
(プレイヤ端末1の具体的な処理)
図20は、プレイヤ端末1における端末側ゲーム処理の一例を説明するフローチャートである。端末側ゲーム処理では、ゲーム実行部60aが、ゲーム進行処理を行い、バトルゲーム以外のゲームの進行を制御する(P100)。また、バトルゲーム実行部62aが、シングルプレイまたはマルチプレイによるバトルゲームを実行するための制御を行う(P101)。また、端末側ゲーム制御部1Aは、端末側ゲーム処理において、ルーム作成関連処理(P110)、招待情報受信処理(P120)、招待情報受信後処理(P130)、マルチプレイ終了処理(P140)を実行する。
図21は、プレイヤ端末1におけるルーム作成関連処理の一例を説明するフローチャートである。ディスプレイ26にクエスト画面が表示されている場合(P110−1のYES)に、ルーム作成タブ46がタップされて要求操作が入力されると(P110−2のYES)、要求情報送信部64aが要求情報をサーバ100に送信する(P110−3)。このとき、端末側ゲーム制御部1Aは、ディスプレイ26に所定の待機画面を表示する(P110−4)。
また、端末側ゲーム制御部1Aは、ルーム設定情報を受信すると(P110−5のYES)、ディスプレイ26にルーム詳細ページを表示する(P110−6)。また、端末側ゲーム制御部1Aは、ルーム更新情報を受信すると(P110−7のYES)、受信したルーム更新情報に基づいて、ルーム詳細ページの表示を更新する(P110−8)。
また、開始タブ50がタップされて開始操作が入力されると(P110−9のYES)、端末側ゲーム制御部1Aは、開始情報をサーバ100に送信し(P110−10)、マルチプレイが開始されるまで待機する(P110−11)。なお、マルチプレイが開始可能となると、上記のバトルゲーム実行処理(P101)において、マルチプレイによるバトルゲームの制御がなされる。
図22は、プレイヤ端末1における招待情報受信処理の一例を説明するフローチャートである。ディスプレイ26の画面が遷移すると(P120−1のYES)、計時部74aは、ディスプレイ26に表示中の画面を確認し(P120−7)、初期カウンタ値を抽選で決定する(P120−8)。なお、初期カウンタ値は、招待情報の受信確認の間隔を示すものである。ここでは、通常画面が表示されていれば、1〜10秒のいずれかに相当する値が初期カウンタ値として決定され、バトル画面が表示されていれば、1〜15秒のいずれかに相当する値が初期カウンタ値として決定される。計時部74aは、決定した初期カウンタ値を、データ記憶領域12bの所定の記憶部(初期値記憶部)に記憶し、また、受信待機カウンタにセットする(P120−9)。
また、ディスプレイ26の画面が遷移しておらず(P120−1のNO)、招待情報記憶部84に記憶されているプレイ状態が、受け取り不可状態である場合(P120−2のNO、P120−3のYES)、計時部74aは、禁止時間カウンタのカウンタ値をデクリメントする(P120−4)。なお、詳しくは後述するが、拒否操作がなされると、禁止時間カウンタに所定のカウンタ値がセットされる。つまり、禁止時間カウンタは、拒否操作が入力されてからの経過時間を計時するものである。禁止時間カウンタのカウンタ値が0に更新された場合(P120−5のYES)、プレイ状態更新部66aが、プレイ状態記憶部82のプレイ状態を受け取り可能状態に更新する(P120−6)。
これにより、拒否操作がなされてから所定時間が経過するまでの間、プレイ状態が受け取り不可状態に維持される。そして、拒否操作がなされてから所定時間が経過すると、プレイ状態が受け取り可能状態に切り替わる。なお、プレイ状態が受け取り可能状態に切り替わった場合には、上記と同様に、ディスプレイ26に表示中の画面に基づいて、初期カウンタ値が決定され、受信待機カウンタにセットされる(P120−7からP120−9)。
また、ディスプレイ26の画面が遷移しておらず(P120−1のNO)、招待情報記憶部84に記憶されているプレイ状態が、受け取り可能状態または未開封状態である場合(P120−2のYES)、計時部74aは、受信待機カウンタのカウンタ値をデクリメントする(P120−10)。そして、計時部74aは、受信待機カウンタのカウンタ値が0になると(P120−11のYES)、初期値記憶部に記憶されている初期カウンタ値を、受信待機カウンタに再度セットする。また、招待情報受信部68aは、招待情報確認処理(P121)を実行する。
図23は、プレイヤ端末1における招待情報確認処理の一例を説明するフローチャートである。招待情報受信部68aは、受信確認情報をサーバ100に送信する(P121−1)。招待情報受信部68aは、受信可能(未受信)な招待情報がサーバ100にセットされている場合(P121−2のYES)、サーバ100にセットされている招待情報を受信し、招待情報記憶部84に記憶する(P121−3)。また、招待情報受信部68aは、プレイ状態記憶部82のプレイ状態を未開封状態に更新する(P121−4)。また、招待情報報知部70aは、ヘッダ表示領域30において、通知画像34を報知態様で表示する(P121−5)。
図24は、プレイヤ端末1における招待情報受信後処理の一例を説明する第1のフローチャートである。図25は、プレイヤ端末1における招待情報受信後処理の一例を説明する第2のフローチャートである。招待情報記憶部84に招待情報が記憶されている状態(P130−1のYES)で通知画像34がタップされると(P130−2のYES)、招待情報受信部68aは、ディスプレイ26に招待情報ダイアログ52を表示する(P130−3)。このとき、プレイ状態が未開封状態であれば(P130−4のYES)、招待情報受信部68aが開封情報をサーバ100に送信する(P130−5)。また、プレイ状態更新部66aは、プレイ状態を開封済状態に更新する(P130−6)。
また、招待情報記憶部84に招待情報が記憶されており、招待情報ダイアログ52が表示されている状態で、参加タブ52aがタップされて参加操作が入力されると(P130−1のYES、P130−2のNO、P130−7のYES、P130−8のYES)、招待情報受信部68aは、サーバ100に参加情報を送信する(P130−9)。その後、招待情報受信部68aは、ルーム更新情報または参加不可能情報を受信するまで待機する(P130−10)。そして、サーバ100からルーム更新情報を受信した場合(P130−11のYES)、プレイ状態更新部66aが、プレイ状態を参加状態に更新し(P130−12)、招待情報受信部68aが、ディスプレイ26にルーム詳細ページを表示する(P130−13)。また、ここでは、招待情報受信部68aが、通知画像34を非表示態様に切り替える。
これに対して、サーバ100から参加不可能情報を受信した場合(P130−11のNO)、招待情報受信部68aは、ディスプレイ26に入室不可画面を表示し(P130−14)、招待情報記憶部84から招待情報を消去する(P130−15)。また、招待情報報知部70aは、通知画像34を、報知態様から非報知態様に切り替える(P130−16)。さらに、プレイ状態更新部66aは、プレイ状態記憶部82のプレイ状態を、受け取り可能状態に更新する(P130−17)。
また、招待情報記憶部84に招待情報が記憶されており、招待情報ダイアログ52が表示されている状態で、拒否タブ52bがタップされて拒否操作が入力されると(P130−1のYES、P130−2のNO、P130−7のYES、P130−8のNO、図25のP130−18のYES)、招待情報受信部68aは、招待情報ダイアログ52の表示を終了する(P130−19)。また、招待情報報知部70aは、報知態様の通知画像34の表示を終了させ、非報知態様の通知画像34、または、操作タブ42を表示する(P130−20)。
さらに、招待情報受信部68aは、招待情報記憶部84から招待情報を消去し(P130−21)、プレイ状態更新部66aが、プレイ状態を受け取り不可状態に更新する(P130−22)。また、招待情報受信部68aは、サーバ100に拒否情報を送信する(P130−23)。また、計時部74aは、拒否時間カウンタのカウンタ値が0であるかを判定する(P130−24)。なお、拒否時間カウンタは、拒否操作が入力されてからの経過時間を計時するものである。詳しい説明は省略するが、拒否時間カウンタにセットされたカウンタ値は、端末側ゲーム処理が実行されるたびにデクリメントされる。ここでは、拒否操作が入力されてから30分が経過すると、拒否時間カウンタのカウンタ値が0になる。
拒否時間カウンタのカウンタ値が0である場合(P130−24のYES)、すなわち、最後に拒否操作が入力されてから30分が経過している場合、計時部74aは、禁止時間カウンタに、5分に相当するカウンタ値をセットする(P130−25)。また、拒否時間カウンタのカウンタ値が0ではない場合(P130−24のNO)、すなわち、最後に拒否操作が入力されてから30分が経過していない場合、計時部74aは、禁止時間カウンタに、60分に相当するカウンタ値をセットする(P130−26)。また、計時部74aは、禁止時間カウンタに5分または60分のカウンタ値をセットした後、拒否時間カウンタに、30分に相当するカウンタ値をセットする(P130−27)。
上記の処理によれば、操作許可部72aが、招待情報の受信の報知時もしくは報知後に、招待情報ダイアログ52を表示することで(P130−3)、マルチプレイへの参加を拒否するための拒否操作の入力を可能とする。そして、拒否操作の入力後、5分(第2の時間)または60分(第2の時間)に亘り、プレイ状態が受け取り不可状態に維持され、5分または60分が経過すると、プレイ状態が受け取り可能状態に更新される(P120−6)。また、30分以内に拒否操作が2回なされた場合、2回目の拒否操作後は、60分間、招待情報が受信されなくなる。
また、招待情報記憶部84に招待情報が記憶されており、招待情報ダイアログ52が表示されている状態で、保留タブ52cがタップされて保留操作が入力されると(P130−1のYES、P130−2のNO、P130−7のYES、P130−8のNO、P130−18のNO、P130−28のYES)、招待情報受信部68aは、招待情報ダイアログ52の表示を終了する(P130−29)。
図26は、プレイヤ端末1におけるマルチプレイ終了処理の一例を説明するフローチャートである。マルチプレイが終了すると(P140−1のYES)、招待情報受信部68aは、ディスプレイ26にリザルト画面を表示する(P140−2)。このとき、ゲストプレイヤとしてマルチプレイに参加した場合(P140−3のYES)、招待情報受信部68aは、招待情報記憶部84から招待情報を消去する(P140−4)。また、プレイ状態更新部66aは、プレイ状態を受け取り不可状態に更新し(P140−5)、招待情報受信部68aが、禁止時間カウンタに5分に相当するカウンタ値をセットする(P140−6)。このマルチプレイ終了処理によれば、ゲストプレイヤとして参加したマルチプレイの終了後、5分(第1の時間)に亘り、プレイ状態が受け取り不可状態に維持される。
次に、サーバ100の機能的構成、ならびに、サーバ100における具体的な処理について説明する。なお、以下では、招待情報を受信可能な対象者の設定に関する構成および処理について説明し、その他の構成および処理については説明を省略する。
(サーバ100の機能的構成)
図27は、サーバ100におけるメモリ112の構成およびコンピュータとしての機能を説明する図である。メモリ112には、プログラム記憶領域112a、および、データ記憶領域112bが設けられている。CPU110は、マルチプレイの開始時に、あるいは、マルチプレイの開始前に予め、サーバ側ゲーム制御用プログラム(モジュール)をプログラム記憶領域112aに記憶する。
サーバ側ゲーム制御用プログラムには、プレイヤ情報更新プログラム140、リスト更新プログラム142、端末設定プログラム144、ゲーム実行プログラム146が含まれる。なお、図27に列挙したプログラムは一例であり、サーバ側ゲーム制御用プログラムには、この他にも多数のプログラムが設けられている。
データ記憶領域112bには、データを記憶する記憶部として、プレイヤ情報記憶部160、抽出リスト記憶部162、ゲーム情報記憶部164、ルーム情報記憶部166が設けられている。なお、上記の各記憶部は一例であり、データ記憶領域112bには、この他にも多数の記憶部が設けられている。
CPU110は、プログラム記憶領域112aに記憶された各プログラムを動作させ、データ記憶領域112bの各記憶部のデータを更新する。そして、CPU110は、プログラム記憶領域112aに記憶された各プログラムを動作させることで、サーバ100(コンピュータ)を、サーバ側ゲーム制御部100Aとして機能させる。サーバ側ゲーム制御部100Aは、プレイヤ情報更新部140a、リスト更新部142a、端末設定部144a、ゲーム実行部146aを含む。
具体的には、CPU110は、プレイヤ情報更新プログラム140を動作させ、コンピュータをプレイヤ情報更新部140aとして機能させる。同様に、CPU110は、リスト更新プログラム142、端末設定プログラム144、ゲーム実行プログラム146を動作させ、それぞれリスト更新部142a、端末設定部144a、ゲーム実行部146aとして機能させる。
プレイヤ情報更新部140aは、プレイヤ端末1と通信がなされるたびに、プレイヤ情報記憶部160に蓄積されているプレイヤごとのプレイヤ情報を更新する。また、プレイヤ情報更新部140aは、プレイヤ情報記憶部160において優先ポイントを更新するポイント更新処理を行う。
リスト更新部142aは、抽出リスト記憶部162に記憶されている抽出リストを、プレイヤ情報記憶部160に記憶されているプレイヤ情報(優先ポイント)に基づいて更新する。例えば、リスト更新部142aは、プレイヤの情報が記憶される記憶領域を入れ替えるソート処理を実行する。また、リスト更新部142aは、抽出リストの招待情報、状況フラグ、ウエイトカウンタを更新する。
端末設定部144aは、要求情報の入力に基づき、招待情報、状況フラグ、ウエイトカウンタのカウンタ値を抽出リストにセットする。すなわち、端末設定部144aは、抽出リストにおいて、対象者を設定する。
ゲーム実行部146aは、プレイヤ端末1から入力される情報に基づき、バトルゲームを含む全てのゲームの進行を制御する。また、ゲーム実行部146aは、ゲーム中に更新される各種の情報をゲーム情報記憶部164に記憶する。ここでは、ゲーム実行部146aは、マルチプレイにおいて、敵キャラクタに与えたダメージをプレイヤごとにゲーム情報記憶部164に記憶する。ただし、ゲーム情報記憶部164に記憶される情報はこれに限らず、ゲームの内容に基づいて適宜設定可能である。
(サーバ100の具体的な処理)
図28は、サーバ100におけるサーバ側ゲーム処理の一例を説明するフローチャートである。サーバ側ゲーム処理では、ゲーム実行部146aが、バトルゲームを実行するためのバトルゲーム実行処理を行う(S100)。また、プレイヤ情報更新部140aは、プレイヤ端末1から入力された情報に基づいて、プレイヤ情報記憶部160のプレイヤ情報を更新する。また、サーバ側ゲーム制御部100Aは、サーバ側ゲーム処理において、要求情報受信処理(S110)、情報更新処理(S120)、マルチプレイ終了処理(P130)、並び替え処理(S140)を実行する。
図29は、サーバ100における要求情報受信処理の一例を説明するフローチャートである。ルームに招待する対象者としてフォロワが選択された場合、すなわち、フォロワタブ48a用の要求情報を受信した場合(S110−1のYES、S110−2のYES)、端末設定部144aが、抽出リストにおいて、フォロワの記憶領域に、招待情報、状況フラグ、ウエイトカウンタのカウンタ値(以下、「招待情報等」と呼ぶ)をセットする(S110−3)。
ルームに招待する対象者として相互フォロワが選択された場合、すなわち、相互フォロワタブ48b用の要求情報を受信した場合(S110−1のYES、S110−2のNO、S110−4のYES)、端末設定部144aが、抽出リストにおいて、相互フォロワの記憶領域に、招待情報等をセットする(S110−5)。
なお、フォロワまたは相互フォロワに招待情報をセットする場合、ウエイトカウンタのカウンタ値のセットは必須ではない。つまり、フォロワまたは相互フォロワが対象者に設定される場合には、全ての対象者が、同時に招待情報を受信し得る状況としてもよい。また、ランダムに対象者が設定される場合と同様に、優先ポイントに基づいて、ウエイトカウンタのカウンタ値が設定されてもよい。
ルームに招待する対象者をランダムに抽出することが選択された場合、すなわち、ランダムタブ48c用の要求情報を受信した場合(S110−1のYES、S110−2のNO、S110−4のNO)、端末設定部144aが、抽出リストにおいて、受信状況が「設定可」、すなわち、状況フラグがブランクの上位100名の記憶領域に、招待情報等をセットする(S110−6)。
また、対象者がランダムに設定された場合、プレイヤ情報更新部140aは、プレイヤ情報記憶部160において、ホストプレイヤの優先ポイントを「1」加算する(S110−8)。また、要求情報を受信した場合(S110−1のYES)、サーバ側ゲーム制御部100Aは、ルームを設定するルーム設定処理を行う(S110−8)。ここでは、ルーム情報記憶部166に、ルーム(所定の記憶領域)を設定し、要求情報に基づいて、ホストプレイヤに係る情報をルームに記憶する。また、ここでは、サーバ側ゲーム制御部100Aは、ルーム情報を、ホスト端末が受信可能にセットする。さらに、プレイヤ情報更新部140aは、要求情報の種別に拘わらず、プレイヤ情報記憶部160において、ホストプレイヤの優先ポイントを「4」減算する(S110−9)。
図30は、サーバ100における情報更新処理の一例を説明するフローチャートである。プレイヤ端末1から受信確認情報を受信すると(S120−1のYES)、サーバ側ゲーム制御部100Aは、抽出リストを検索し、このプレイヤ端末1に対する招待情報がセットされているかを検索する(S120−2)。このとき、招待情報がセットされており(S120−3のYES)、受信状況(状況フラグ)が「受信可」に設定されていれば(S120−4のYES)、サーバ側ゲーム制御部100Aは招待情報出力処理を行う(S120−5)ここでは、招待情報が、受信確認情報を送信したプレイヤ端末1によって受信可能にセットされる。
また、プレイヤ情報更新部140aは、プレイヤ情報記憶部160に記憶されている対象者の優先ポイントを「4」減算する(S120−6)。また、リスト更新部142aは、抽出リストにおいて、対象者端末の受信状況(状況フラグ)を「受信済」に更新する。
また、プレイヤ端末1(対象者端末)から開封情報を受信すると(S120−8のYES)、プレイヤ情報更新部140aが、プレイヤ情報記憶部160に記憶されている対象者の優先ポイントを「1」加算する(S120−9)。
また、プレイヤ端末1(対象者端末)から参加情報を受信した場合(S120−10のYES)、ルームに入室可能であれば(S120−11のYES)、サーバ側ゲーム制御部100Aが、ルーム情報記憶部166のルーム情報を更新する(S120−12)。また、サーバ側ゲーム制御部100Aは、ルーム更新情報出力処理を行う。ここでは、サーバ側ゲーム制御部100Aは、ルーム更新情報を、ホスト端末および全てのゲスト端末(参加情報を送信した対象者端末を含む)が受信可能にセットする(S120−13)。
一方、ルームに入室できなければ(S120−11のNO)、プレイヤ情報更新部140aが、プレイヤ情報記憶部160において、参加情報を送信した対象者の優先ポイントを「4」加算する(S120−14)。また、サーバ側ゲーム制御部100Aは、この対象者が参加不可能情報を受信可能にセットする(S120−15)。
また、ホスト端末から開始情報を受信すると(S120−16のYES)、プレイヤ情報更新部140aは、プレイヤ情報記憶部160において、ホストプレイヤの優先ポイントを「1」加算する(S120−17)。そして、サーバ側ゲーム制御部100Aは、マルチプレイによるバトルゲームを開始するためのバトルゲーム開始処理を実行する(S120−18)。
図31は、サーバ100におけるマルチプレイ終了処理の一例を説明するフローチャートである。バトルゲーム実行処理(S100)において、マルチプレイが途中終了(リタイア)以外で正常終了した場合(S130−1のYES、S130−2のNO)、サーバ側ゲーム制御部100Aは、与ダメージが全体の20%以上のプレイヤを特定する(S130−3)。なお、バトルゲーム実行処理(S100)では、マルチプレイの実行時に、ゲーム情報記憶部164にプレイヤごとの与ダメージを記憶している。
プレイヤ情報更新部140aは、プレイヤ情報記憶部160において、特定したプレイヤの優先ポイントを「3」加算する(S130−4)。また、プレイヤ情報更新部140aは、マルチプレイの終了時に、優先ポイントが初期値を上回っている全てのプレイヤの優先ポイントを初期値にリセット(100にセット)する(S130−5)。
図32は、サーバ100における並び替え処理の一例を説明するフローチャートである。リスト更新部142aは、抽出リスト記憶部162に記憶されている抽出リストの優先ポイントを、プレイヤ情報記憶部160に記憶されている優先ポイントに更新する(S140−1)。また、リスト更新部142aは、抽出リストの優先ポイントに基づいて、優先順位を入れ替えるソート処理を行う(S140−2)。これにより、プレイヤの優先順位が、優先ポイントに基づいて更新されることとなる。
また、リスト更新部142aは、抽出リストの情報を更新するリスト情報更新処理を行う(S140−3)。例えば、リスト更新部142aは、ウエイトカウンタのカウンタ値を更新し、カウンタ値が0に更新された記憶領域について、状況フラグを「受信不可」から「受信可」に更新する。また、リスト更新部142aは、招待情報を受信した対象者については、状況フラグを「受信可」から「受信済」に更新する。さらに、リスト更新部142aは、マルチプレイが終了した場合、ルームが解散した場合、招待情報がセットされてから所定時間が経過した場合に、抽出リストから、招待情報、状況フラグ、ウエイトカウンタを更新する。
以上説明したように、プレイヤ端末1には、ホスト端末としてマルチプレイを実行するプログラムと、ゲスト端末としてマルチプレイを実行するプログラムとが設けられる。そして、プレイヤ端末1は、ルーム作成タブ46(操作部)からの要求操作の入力により、サーバ100に要求情報を送信する要求情報送信部64aとして機能する。なお、本実施形態では、外部装置としてサーバ100が設けられ、複数のプレイヤ端末1は、外部装置であるサーバ100を介して、マルチプレイを実行可能である。しかしながら、外部装置はサーバ100に限らない。例えば、プレイヤ端末1が、サーバ100の上記の機能を備えており、いずれかのプレイヤ端末1が、外部装置として機能してもよい。
また、プレイヤ端末1は、ゲームのプレイ状況に基づいてプレイ状態を更新するプレイ状態更新部66a(状態更新部)として機能する。なお、本実施形態では、5つのプレイ状態が設けられているが、プレイ状態の数、プレイ状態の設定条件は一例に過ぎず、適宜設計可能である。例えば、プレイ状況(プレイ状態)には、ログイン状態が含まれ、ログインしているか否かでプレイ状態を異ならせてもよい。いずれにしても、プレイ状態は、招待情報を受信可能な許可状態と、招待情報を受信しない不許可状態とが設けられればよい。
また、本実施形態では、ゲームのプレイ状況と、招待情報の受信有無とに基づいてプレイ状態が設定、更新される。しかしながら、プレイ状態更新部66aは、少なくともゲームのプレイ状況に基づいて更新されればよい。
また、プレイヤ端末1は、プレイ状態が許可状態である場合に、サーバ100(外部装置)から招待情報を受信し得る招待情報受信部68a(受信部)として機能する。なお、本実施形態では、サーバ100において招待情報がセットされ、プレイヤ端末1からの受信確認によって、プレイヤ端末1が招待情報を受信する。しかしながら、招待情報受信部68aが招待情報を受信する処理はこれに限らない。
例えば、サーバ100において対象者に設定された場合、サーバ100から対象者端末に対して招待情報を送信する。このとき、対象者端末のプレイ状態が許可状態であれば招待情報を受信し、プレイ状態が不可能状態であれば、招待情報の受信を拒否してもよい。いずれにしても、招待情報受信部68aは、プレイ状態が許可状態である場合に、サーバ100(外部装置)から招待情報を受信すればよく、その処理または方法は限定されない。
また、プレイヤ端末1は、招待情報の受信を報知する招待情報報知部70a(報知部)として機能する。本実施形態では、招待情報報知部70aが、通知画像34の表示態様を切り替えることで、招待情報の受信を報知する。しかしながら、招待情報の受信を報知する方法はこれに限らない。例えば、招待情報の受信時もしくは受信後に、招待情報ダイアログ52を強制的に表示することで、招待情報の受信を報知してもよい。いずれにしても、招待情報報知部70aは、招待情報の受信時もしくは受信後に、招待情報の受信を報知すればよく、報知の態様は適宜設計可能である。
また、プレイヤ端末1は、参加操作の入力を可能とする操作許可部72aとして機能する。本実施形態では、操作許可部72aは、招待情報ダイアログ52に参加タブ52a、拒否タブ52b、保留タブ52cを設けることで、参加操作、拒否操作、保留操作の入力を可能とする。ただし、操作許可部72aは、参加操作、拒否操作、保留操作の入力を可能とすればよく、その方法または処理は適宜設計可能である。また、操作許可部72aは、少なくとも参加操作の入力を可能とすればよく、拒否操作および保留操作の受け付けは必須ではない。いずれにしても、操作許可部72aは、招待情報の受信の報知時もしくは報知後に、所定の参加操作の入力を可能とすればよい。
また、プレイヤ端末1は、他のプレイヤ端末1とのマルチプレイ(通信ゲーム)を実行するゲーム実行部60aとして機能する。なお、本実施形態におけるゲームの内容は一例に過ぎず、ゲームの内容は特に限定されるものではない。ゲームの内容は、例えば、アクションゲーム、ロールプレイングゲーム、レースゲーム等であってもよい。いずれにしても、複数のプレイヤ端末1で通信ゲームが実行可能であればよく、通信ゲームの内容は特に限定されない。したがって、通信ゲームの内容は、複数のプレイヤが協力するものでもよいし、複数のプレイヤが互いに対戦するものでもよい。いずれにしても、ゲーム実行部60aは、参加操作が入力され、所定の開始条件が成立すると、他のプレイヤ端末1との通信ゲームを実行するものを広く含む。
また、本実施形態では、招待情報を受信可能な状態と、招待情報の受信を報知可能な状態とが一致している。したがって、プレイヤ端末1は、招待情報を受信した場合、必ず、招待情報を受信した旨を即座に報知する。しかしながら、招待情報を受信可能な状態と、招待情報の受信を報知可能な状態とが異なってもよい。例えば、上記の5つのプレイ状態に基づいて、招待情報の受信確認がなされるものとする。また、プレイヤ端末1は、プレイ状態とは別に、報知可否状態を設定する報知可否状態設定部として機能する。報知可否状態としては、例えば、報知可能状態と報知不可能状態とが設けられる。
報知可否状態設定部は、例えば、ディスプレイ26に表示中の画面遷移に基づいて、報知可否状態を切り替える。具体的には、報知可否状態設定部は、報知態様の通知画像34、または、招待情報ダイアログ52を表示してもよい画面に遷移すると、報知可否状態を報知可能状態に設定する。一方、報知可否状態設定部は、報知態様の通知画像34、または、招待情報ダイアログ52を表示してはいけない画面に遷移すると、報知可否状態を報知不可能状態に設定する。
そして、招待情報報知部70aは、招待情報を受信すると、報知可否状態を確認し、報知可能状態であれば、報知態様の通知画像34、または、招待情報ダイアログ52をディスプレイ26に表示する。一方、招待情報を受信したときに、報知可否状態が報知不可能状態であれば、非報知態様の通知画像34を表示したままとする。この場合、招待情報を受信していても、プレイヤには、招待情報の存在が知らされない。そして、招待情報報知部70aは、画面が遷移した場合等、所定のタイミングで、報知可否状態を確認し、報知可能状態であれば、その時点で、報知態様の通知画像34、または、招待情報ダイアログ52を表示する。
以上のように、招待情報の受信の可否が規定されたプレイ状態と、招待情報の受信報知の可否が規定された報知可否状態とが設けられてもよい。また、招待情報を受信可能な状態と、招待情報の受信を報知可能な状態とが異なってもよい。
さらには、プレイ状態は、招待情報の受信報知を規定するものであってもよい。すなわち、招待情報報知部70aは、招待情報の受信時もしくは受信後であって、プレイ状態が許可状態である場合に、招待情報の受信を報知してもよい。この変形例について、図を参照して説明する。
(変形例)
図33は、プレイヤ端末1における変形例の招待情報受信処理の一例を説明するフローチャートである。この変形例の招待情報受信処理は、上記実施形態の招待情報受信処理に代えて実行される。なお、詳しい説明は省略するが、変形例の招待情報受信処理を実行する場合、上記実施形態の招待情報受信後処理およびマルチプレイ終了処理において、一部の処理が追加または変更される。
招待情報報知部70aは、ディスプレイ26に表示中の画面が、招待情報の受信を報知可能な画面であるかを判定する(P150−1)。なお、招待情報の受信を報知可能であるか否かは、画面ごとに予め設定されている。招待情報の受信を報知不可能な画面に遷移した場合(P150−1のNO)、プレイ状態更新部66aが、プレイ状態記憶部82のプレイ状態を不可能状態にセットする(P150−2)。
一方、ディスプレイ26に表示中の画面が、招待情報の受信を報知可能な画面である場合(P150−1のYES)、プレイ状態更新部66aがプレイ状態を許可状態にセットする(P150−3)。このとき、未報知の(受信が報知されていない)招待情報が招待情報記憶部84に記憶されていれば(P150−4のYES)、招待情報報知部70aが、通知画像34を報知態様で表示する(P150−5)。
また、招待情報受信部68aは、受信確認情報をサーバ100に送信し(P150−6)、サーバ100から情報を受信するまで待機する(P150−7)。招待情報を受信すると(P150−8のYES)、受信した招待情報を招待情報記憶部84に記憶する(P150−9)。このとき、プレイ状態が許可状態であれば(P150−10のYES)、招待情報報知部70aが、通知画像34を報知態様で表示する(P150−11)。
上記の変形例によれば、ゲームのプレイ状況(プレイ状態)とは無関係に、プレイヤ端末1が招待情報を受信する。そして、招待情報の受信時もしくは受信後であって、プレイ状態が許可状態である場合に、招待情報報知部70aが招待情報の受信を報知する。この変形例によっても、上記実施形態と同様の作用効果が実現される。
なお、上記実施形態では、プレイ状態更新部66aが、マルチプレイ(通信ゲーム)の終了後、5分(第1の時間)に亘り、プレイ状態を、招待情報の受信を不可能とする不可能状態とする。変形例においても、プレイ状態更新部66aが、マルチプレイ(通信ゲーム)の終了後、所定時間(第1の時間)に亘り、プレイ状態を、招待情報の受信の報知を不可能とする不可能状態としてもよい。
また、上記実施形態では、プレイ状態更新部66aが、拒否操作の入力後、5分(第2の時間)もしくは60分(第2の時間)に亘り、プレイ状態を、招待情報の受信を不可能とする不可能状態とする。変形例においても、プレイ状態更新部66aが、拒否操作の入力後、所定時間(第2の時間)に亘り、プレイ状態を、招待情報の受信の報知を不可能とする不可能状態としてもよい。
また、サーバ100は、所定のプレイヤ情報をプレイヤごとにプレイヤ情報記憶部160(記憶部)に蓄積し、また、予め設定された更新条件にしたがって、プレイヤごとの優先ポイント(優先度情報)を更新するプレイヤ情報更新部140a(蓄積部、更新部)として機能する。なお、優先ポイントの更新条件は適宜設計可能である。また、優先ポイントは、優先度情報の一例に過ぎない。例えば、ゲームのプレイ時間、プレイヤレベル、プレイヤランク、課金金額、さらには、これらの組み合わせが優先度情報として設定されてもよい。
なお、上記実施形態では、プレイヤ情報更新部140aは、マルチプレイにおける与ダメージの割合に基づいて、優先ポイントを更新する。つまり、プレイヤ情報更新部140aは、マルチプレイ(通信ゲーム)中の所定の結果に基づいて、優先ポイント(優先度情報)を更新する。この場合、例えば、与ダメージの割合ではなく、マルチプレイの終了時におけるプレイヤキャラの生存有無に基づいて優先ポイントが更新されてもよい。また、例えば、与ダメージに所定の係数を乗算したポイントが、優先ポイントに加減算されてもよい。いずれにしても、マルチプレイ(通信ゲーム)中の所定の結果に基づいて優先度情報が更新される場合、所定の結果は適宜設計可能である。ただし、優先ポイントの更新条件には、マルチプレイ中の結果は必須ではない。
また、上記実施形態では、プレイヤ情報更新部140aは、招待情報の受信後に対象者端末(抽出端末)から受信した情報に基づいて、優先ポイント(優先度情報)を更新する。具体的には、参加情報が入力された場合(ただし、ルームに入室できない場合)、および、開封情報が入力された場合に、優先ポイントが更新される。ただし、プレイヤ情報更新部140aは、例えば、招待情報の受信後は、優先ポイントを更新せずともよい。
また、サーバ100は、プレイヤ端末1から要求情報を受信すると、少なくとも、優先ポイント(優先度情報)に基づき、複数のプレイヤ端末1を、招待情報を受信可能な対象者端末(抽出端末)に設定し得る端末設定部144a(設定部)として機能する。なお、上記実施形態では、端末設定部144aは、フォロワまたは相互フォロワを対象者に設定することがある。つまり、端末設定部144aは、優先ポイントに基づいて対象者を設定する場合と、優先ポイントとは無関係に対象者を設定する場合とがある。端末設定部144aは、プレイヤごとに優先度情報が設定される場合において、少なくとも、優先度情報に基づいて、対象者端末を設定すればよい。
また、サーバ100は、招待情報を受信し、かつ、所定の参加情報が送信されたいずれか1または複数の対象者端末(抽出端末)と、要求情報を送信したプレイヤ端末1(ホスト端末)とのマルチプレイ(通信ゲーム)を実行するゲーム実行部146aとして機能する。なお、ゲーム実行部146aが提供するゲームの内容は特に限定されない。
また、プレイヤ端末1およびサーバ100における上記の役割分担は一例に過ぎない。上記実施形態および変形例では、プレイヤ端末1において、プレイ状態が記憶、更新されることとした。すなわち、上記実施形態および変形例では、プレイヤ端末1が、プレイ状態更新部66a(状態更新部)として機能する。しかしながら、プレイ状態は、サーバ100において記憶、更新されてもよい。
以下に、サーバ100が、状態更新部(サーバ側状態更新部)として機能する第2の実施形態について説明する。なお、以下では、上記実施形態と同様の構成については、同一の符号を付し、その詳細な説明は省略する。
(第2の実施形態)
図34は、プレイヤ端末1における第2の実施形態のメモリ12の構成およびコンピュータとしての機能を説明する図である。第2の実施形態では、端末側ゲーム制御用プログラムに、上記の各プログラムに加えて、さらに、プレイ状態送信プログラム67が含まれる。そして、CPU10は、プレイ状態送信プログラム67を動作させ、プレイ状態送信部67aとして機能させる。
プレイ状態送信部67aは、プレイヤ端末1におけるプレイ状態(プレイ状態情報)をサーバ100に送信する。なお、第2の実施形態では、プレイヤ端末1において、上記実施形態と同様に、プレイ状態の設定、更新がなされる。このとき、プレイ状態を設定する設定条件は、上記実施形態と同じでもよいし、異なってもよい。また、ここでは、プレイ状態記憶部82にプレイ状態が記憶されることとするが、プレイヤ端末1において、プレイ状態の記憶、更新は必須ではない。いずれにしても、プレイ状態送信部67aが、プレイヤ端末1におけるプレイ状態をサーバ100に送信すればよい。
また、プレイ状態送信部67aがプレイ状態情報を送信する条件は適宜設計可能である。例えば、プレイ状態送信部67aは、プレイ状態が変化した場合に、変化後のプレイ状態に対応するプレイ状態情報をサーバ100に送信する。ただし、プレイ状態送信部67aは、一定時間おきに、現在設定されているプレイ状態に対応するプレイ状態情報をサーバ100に送信してもよい。あるいは、プレイ状態送信部67aは、サーバ100と通信を行うたびに、プレイ状態情報を送信してもよい。
また、第2の実施形態では、上記実施形態と同様に、プレイ状態として、「受け取り可能状態」、「未開封状態」、「開封済状態」、「参加状態」、「受け取り不可状態」の5つの状態が設けられるものとする(図14A参照)。したがって、プレイ状態送信部67aは、互いに識別可能な5種類のプレイ状態情報をサーバ100に送信する。ただし、第2の実施形態において、プレイ状態は、上記実施形態と異なってもよい。例えば、プレイ状態として、図14Aに示す「許可状態」および「不可能状態」の2種類が設定されてもよい。
図35は、サーバ100における第2の実施形態のメモリ112の構成およびコンピュータとしての機能を説明する図である。第2の実施形態では、サーバ側ゲーム制御用プログラムに、上記の各プログラムに加えて、さらに、プレイ状態受信プログラム147、および、プレイ状態更新プログラム149が含まれる。そして、CPU110は、プレイ状態受信プログラム147を動作させ、プレイ状態受信部147aとして機能させる。また、CPU110は、プレイ状態更新プログラム149を動作させ、プレイ状態更新部149aとして機能させる。
プレイ状態受信部147aは、プレイヤ端末1から送信されるプレイ状態(プレイ状態情報)を受信する。
プレイ状態更新部149aは、プレイ状態受信部147aが受信したプレイ状態情報に基づいて、プレイヤ端末1のプレイ状態を更新する。なお、プレイ状態は、プレイヤ情報記憶部160に記憶されてもよいし、抽出リスト記憶部162に記憶されてもよい。さらには、プレイヤ情報記憶部160および抽出リスト記憶部162とは別に、プレイヤ端末1ごとにプレイ状態を記憶する専用の記憶部がデータ記憶領域112bに設けられてもよい。第2の実施形態においては、一例として、プレイ状態更新部149aが、プレイヤ端末1ごとのプレイ状態をプレイヤ情報記憶部160に記憶する場合について説明する。
また、第2の実施形態においても、リスト更新部142aが、抽出リストの状況フラグをセットする。ただし、第2の実施形態では、「許可状態」、「不可能状態」、「受信可」、「受信不可」、「受信済」の5つの状況フラグが設けられる。このうち、「許可状態」および「不可能状態」は、上記実施形態の「設定可(ブランク)」に代えて設けられ、「受信可」、「受信不可」、「受信済」は、上記実施形態と同じである。リスト更新部142aは、プレイヤ情報記憶部160に記憶されたプレイ状態、プレイヤ端末1から入力される操作情報、サーバ100におけるゲームの実行、管理状況に基づいて、状況フラグを更新する。
リスト更新部142aは、「受け取り可能状態」または「未開封状態」のプレイ状態がプレイヤ情報記憶部160に記憶されているプレイヤ端末1について、抽出リストの状況フラグを「許可状態」にセットする。また、リスト更新部142aは、「開封済状態」、「参加状態」、「受け取り不可状態」のプレイ状態がプレイヤ情報記憶部160に記憶されているプレイヤ端末1について、抽出リストの状況フラグを「不可能状態」にセットする。
端末設定部144aは、ランダムタブ48c用の要求情報を受信した場合、抽出リストにおいて、状況フラグが「許可状態」の上位100名の記憶領域に、招待情報等をセットする。
以下に、第2の実施形態におけるプレイヤ端末1およびサーバ100の処理の一例について説明する。
図36Aは、第2の実施形態におけるプレイヤ端末1およびサーバ100の処理を説明する第1のシーケンス図である。プレイヤ端末1においてプレイ状態が更新されると(P201)、プレイ状態情報がサーバ100に送信される。プレイ状態受信部147aがプレイ状態情報を受信すると、プレイ状態更新部149aが、プレイヤ情報記憶部160においてプレイ状態を更新する(S201)。また、リスト更新部142aは、プレイヤ情報記憶部160に記憶されているプレイ状態に基づいて、抽出リストの状況フラグを更新する。
図36Bは、第2の実施形態におけるプレイヤ端末1およびサーバ100の処理を説明する第2のシーケンス図である。プレイヤ端末1およびサーバ100において、マルチプレイによるバトルゲーム制御処理が終了すると(P205、S205)、プレイ状態更新部149aが、プレイヤ情報記憶部160においてプレイ状態を「受け取り不可状態」に更新する(S206)。また、リスト更新部142aは、マルチプレイに参加したプレイヤ(ホストプレイヤおよびゲストプレイヤの少なくとも一方)について、抽出リストの状況フラグを「不可能状態」に更新する(S207)。このとき、リスト更新部142aは、ウエイトタイムとして第1の時間をウエイトカウンタにセットする(S208)。
図36Cは、第2の実施形態におけるプレイヤ端末1およびサーバ100の処理を説明する第3のシーケンス図である。プレイヤ端末1において拒否操作が入力されると(P210)、サーバ100に拒否情報が送信される。拒否情報を受信すると、プレイ状態更新部149aが、プレイヤ情報記憶部160においてプレイ状態を「受け取り不可状態」に更新する(S210)。また、リスト更新部142aは、抽出リストの状況フラグを「不可能状態」に更新する(S211)。このとき、リスト更新部142aは、ウエイトタイムとして第2の時間をウエイトカウンタにセットする(S212)。
なお、詳しい説明は省略するが、上記した第1の時間または第2の時間が経過すると、リスト情報更新処理(図32参照)において、リスト更新部142aが、プレイヤ情報記憶部160のプレイ状態を確認する。このとき、プレイ状態が「受け取り可能状態」または「未開封状態」であれば、リスト更新部142aが、状況フラグを「許可状態」に更新する。一方、プレイ状態が「受け取り可能状態」および「未開封状態」のいずれでもなければ、状況フラグが「不可能状態」に維持される。
以上のように、第2の実施形態によれば、サーバ100が、プレイ状態更新部149a(状態更新部)として機能する。プレイ状態更新部149aは、プレイヤ端末1から受信する情報に基づいて、プレイヤ端末1のプレイ状態を更新する。そして、端末設定部144a(設定部)は、少なくとも、優先ポイント(優先度情報)、および、プレイヤ端末1におけるゲームのプレイ状況に基づいて、対象者端末(抽出端末)を設定する。
また、第2の実施形態では、端末設定部144a(設定部)は、マルチプレイ(通信ゲーム)が実行されたプレイヤ端末1について、少なくとも、通信ゲームの終了後、第1の時間が経過するまでは、対象者端末(抽出端末)に設定しない。また、端末設定部144a(設定部)は、招待情報の受信後、マルチプレイ(通信ゲーム)への参加拒否を示す拒否情報が送信されたプレイヤ端末1について、少なくとも、第2の時間が経過するまでは、対象者端末(抽出端末)に設定しない。
なお、第2の実施形態では、プレイヤ端末1からプレイ状態情報が送信される。しかしながら、プレイヤ端末1ではプレイ状態を管理せず、プレイヤ端末1から受信する情報に基づいて、サーバ100のみが、プレイヤ端末1のプレイ状態を更新してもよい。また、上記の変形例は、第2の実施形態に適用することも可能である。
また、例えば、プレイ状態更新部149aは、プレイ状況すなわちプレイ状態として、プレイヤ端末1のログイン状態を更新してもよい。そして、端末設定部144aは、ログイン状態にあるプレイヤ端末1を対象者端末として設定可能であり、ログイン状態にないプレイヤ端末1は、対象者端末に設定しない。
なお、上記実施形態において、プレイヤ端末1においてプレイ状態が更新されるのに加えて、さらに、サーバ100においても、プレイ状態として、ログイン状態を更新してもよい。この場合、プレイヤ端末1およびサーバ100で管理されるプレイ状態と、サーバ100で管理される優先度情報とに基づいて、対象者の設定が行われる。
以上のように、ゲームのプレイ状況、すなわち、プレイ状態は、プレイヤ端末1で管理されてもよいし、サーバ100で管理されてもよいし、さらには、プレイヤ端末1およびサーバ100の双方で管理されてもよい。ただし、プレイヤ端末1でプレイ状態を管理することで、サーバ100の処理負荷が軽減される。一方、サーバ100でプレイ状態を管理した場合には、招待情報を受信、または、招待情報の受信の報知を即座に実行可能なプレイヤ端末1を、サーバ100が把握することができる。そのため、招待情報を受信、または、招待情報の受信の報知を即座に実行可能なプレイヤ端末1のみを、対象者端末に設定することができる。これにより、マルチプレイをより早期に開始することができる。
なお、上記各実施形態および変形例では、クライアントサーバシステムである情報処理システムSが、上記の各情報処理を行う。しかしながら、上記実施形態および変形例におけるプレイヤ端末1のみが、ゲーム端末装置として設けられてもよい。ゲーム端末装置は、通信機能を備えていれば、スマートフォンに限らず、専用のゲーム機器であってもよい。また、上記実施形態および変形例におけるサーバ100のみが、サーバ装置として設けられてもよい。
また、上記各実施形態および変形例におけるプログラムは、コンピュータが読み取り可能な記憶媒体に格納され、記憶媒体として提供されてもよい。さらには、この記憶媒体を含むゲーム端末装置またはサーバ装置として提供されてもよい。また、上記実施形態および変形例は、各機能およびフローチャートに示すステップを実現する情報処理方法としてもよい。
以上、添付図面を参照しながら実施形態の一態様について説明したが、本発明は上記実施形態および変形例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇において、各種の変形例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
また、設定部は、招待情報の受信後、通信ゲームへの参加拒否を示す拒否情報がサーバに送信されたプレイヤ端末について、少なくとも、第2の時間が経過するまでは、抽出端末に設定せず、更新部は、拒否情報がサーバに送信されたプレイヤ端末の優先度を下げてもよい。