以下,図面を用いて本発明を実施するための形態について説明する。本発明は,以下に説明する形態に限定されるものではなく,以下の形態から当業者が自明な範囲で適宜変更したものも含む。
本願明細書において,「プレイヤ」とは,ゲーム装置を操作してゲームをプレイする者を意味する。また,「被応援プレイヤ」とは,プレイヤのうち,特に応援者による応援の対象とされた者を意味する。また,「応援者」とは,携帯端末を操作してプレイヤを応援する者を意味する。また,「ユーザ」とは,本発明に係るシステムのユーザであり,上記したプレイヤと応援者の両方を含む概念である。
図1は,本発明に係るゲーム応援システム100のネットワーク構成の一例を示している。図1に示されるように,ゲーム応援システム100は,複数のゲーム装置10と,複数の携帯端末20と,管理サーバ30とを備えており,これらの要素がインターネットなどの情報通信回線を通じて相互に情報の授受ができるように接続されている。
ゲーム装置10は,一又は複数のゲームを実行できるように構成された装置であり,プレイヤによって操作される。ゲーム装置10の代表例は,いわゆるアーケードゲーム機である。本発明において,ゲーム装置10としては公知のものを採用できる。図1に示されるように,本システムには複数のゲーム装置10が含まれており,各ゲーム装置10はゲームセンター等の店舗に設置されている。図1で示した例では,店舗A,店舗B,及び店舗Cといった複数の店舗に,それぞれ,A−1,A−2…,B−1,B−2…,及びC−1,C−2…といった複数のゲーム装置10が設置されている。また,各店舗には,インターネットに接続された少なくとも1台のルータ40が設置されている。また,このルータ40には,各店舗内のゲーム装置10が接続されている。これにより,店舗内には,複数のゲーム装置10をルータ40で接続したローカルネットワークが構築されている。このため,管理サーバ30は,各ゲーム装置10がどのルータ40を経由してインターネットに接続されているかを判別することで,各ゲーム装置10がどの店舗に設置されているかを識別することができる。なお,ルータ40とゲーム装置10は,有線で接続されていてもよいし,無線で接続されていてもよい。
携帯端末20は,応援者が所有する携帯型の情報通信端末である。携帯端末20の代表例は,スマートフォン,タブレット端末,及びラップトップ型のパーソナルコンピュータである。携帯端末20は,通信事業者の無線基地局を介してインターネットに接続されている。本発明において,携帯端末20は多数存在することが想定されている。管理サーバ30の処理能力にもよるが,例えば,ゲーム装置10でゲームをプレイする一人のプレイヤを,数万人の応援者が同時に応援することも可能である。
管理サーバ30は,本システム全体を管理するサーバ型のコンピュータである。管理サーバ30は,本システムの運営者によって運用されている。管理サーバ30は,一台のコンピュータによって構築されたものであってもよいし,複数のコンピュータをネットワーク接続することによって構築されたものであってもよい。つまり,管理サーバ30の機能を,複数のコンピュータに分散させることも可能である。
図2は,本システムを構成するゲーム装置10,携帯端末20,及び管理サーバ30それぞれの機能ブロックの例を示している。なお,図2では,ブロック図を簡易化するために,ゲーム装置10と携帯端末20をそれぞれ一台ずつ示している。ただし,前述したとおり,本システムは,ゲーム装置10と携帯端末20とがそれぞれ複数台存在することを想定したものである。
図2に示されるように,ゲーム装置10は,ゲーム制御部11,記憶部12,操作部13,出力部14,送信部16,及び受信部17を有している。なお,図2では,ゲーム装置10の機能構成として一般的なものを例示している。本システムに含まれる複数のゲーム装置10は,すべてが同じ構成を有している必要はなく,それぞれ異なる構成を有していてもよい。また,複数のゲーム装置10は,それぞれ機種が異なっていてもよい。
ゲーム制御部11は,ゲーム装置10が備える他の要素12〜17を制御して,ゲームを実行するための演算処理を行う。ゲーム制御部11としては,CPU又はGPUといったプロセッサを利用することができる。ゲーム制御部11は,記憶部12に記憶されているゲームプログラムを読み出し,このゲームプログラムに従って他の要素を制御することにより,ゲームを実行する。また,ゲーム制御部11は,ゲームプログラムに従った演算結果を,記憶部12に適宜書き込んだり読み出したりすることができる。
ゲーム装置10の記憶部12は,ゲームの実行等に用いられる情報を記憶するための要素である。具体的に,記憶部12は,各種ゲームを実行するための一又は複数のゲームプログラムを記憶している。記憶部12のストレージ機能は,例えばHDD及びSDDといった不揮発性メモリによって実現できる。また,記憶部12は,ゲーム制御部11による演算処理の途中経過などを書き込む又は読み出すためのメモリとしての機能を有していてもよい。記憶部12のメモリ機能は,RAMやDRAMといった揮発性メモリにより実現できる。また,ゲーム装置10の記憶部12には,そのゲーム装置固有の筐体IDと,そのゲーム装置が設置された店舗固有の店舗IDが記憶されている。筐体IDは,各ゲーム装置10を識別するための識別情報である。店舗IDは,各店舗を識別するための識別情報である。筐体IDと店舗IDを参照すれば,どの店舗に設置されたどの筐体であるかを特定することができる。また,記憶部12には,ネットワーク上の識別情報であるIPアドレスが記憶されている。
ゲームプログラムに従って実行されるゲームの種類は,特に限定されず,公知のゲームを採用することができる。ゲームの例は,ダンスゲーム,シューティングゲーム,カードゲーム,対戦ゲーム,クレーンゲーム,及びコインゲームである。ゲーム装置10で実行されるゲームは,基本的に,予めゲームの終了条件が定められており,その終了条件を満たしたときゲーム終了となる。例えば,ゲーム装置10は,時間制限や回数制限のあるゲームを実行するものであることが好ましい。
操作部13は,プレイヤからゲームに関する操作情報の入力を受け付けるための要素である。操作部13を介して入力された操作情報は,ゲーム制御部11へと伝達され,ゲームの制御に利用される。操作部13は,公知のゲーム機に利用されている種々のコントローラを採用することができる。操作部13の例は,レバー,カーソル,ボタン,タッチパネル,カードリーダ,センサーカメラ,マイクロフォン,ダンスゲーム用のパネル,及びシューティングゲーム用の銃型コントローラであるが,これらに限定されない。また,操作部13を構成するタッチパネルは,出力部14を構成するディスプレイと共に,タッチパネルディスプレイを構成していてもよい。
ゲーム装置10の出力部14は,ゲームに関する出力情報を出力するための要素である。つまり,ゲーム制御部11で演算処理された情報は,出力部14によって出力される。出力部14は,公知のゲーム機に利用されている種々の外部出力装置を採用することができる。出力部14の例は,ディスプレイ,スピーカ,フラッシュライト,バイブレータ,及び景品排出機構であるが,これらに限定されない。前述のとおり,ディスプレイは,タッチパネルディスプレイであってもよい。出力部14は,ゲーム制御部11の制御に従って,種々の情報を出力できる。
ICカード読取部15は,プレイヤが所持するICカードを読み取って,プレイヤ固有のユーザIDを抽出するための要素である。ICカード読取部15で読み取った情報は,ゲーム制御部11へと伝達される。ICカードには,プレイヤを識別するためのユーザIDが記録されている。このため,ICカード読取部15によってICカードからユーザIDを抽出し,例えば管理サーバ30に記憶されているユーザIDと照合することで,ゲーム装置10は,そのプレイヤに関する種々の情報を管理サーバ30から取得することができる。これにより,プレイヤは,ICカードをICカード読取部15に読み取らせるだけで,簡単にゲームにログインすることができる。なお,ICカード読取部15は,必須の要素ではない。例えば,ゲーム装置10は,ゲームへのログインの際にプレイヤに対してユーザIDとパスワードの入力を求めるようにしてもよい。
ゲーム装置10の送信部16及び受信部17は,ゲーム装置10と管理サーバ30との間で,インターネットを介した情報の授受を行うための要素である。送信部16は,ゲーム制御部11の制御に従って,各種の情報を管理サーバ30へと送信する。また,受信部17は,管理サーバ30から各種の情報を受信して,これをゲーム制御部11へと伝達する。ゲーム装置10と管理サーバ30との間でやり取りされる情報の詳細については,後述する。
図2に示されるように,携帯端末20は,制御演算部21,記憶部22,入力部23,出力部24,位置情報取得部25,送信部26,及び受信部27を有している。なお,図2では,携帯端末20の機能構成として一般的なものを例示している。本システムに含まれる複数の携帯端末20は,すべてが同じ構成を有している必要はなく,異なる構成を有していてもよい。
制御演算部21は,携帯端末20が備える他の要素22〜27を制御する演算処理を行う。制御演算部21としては,CPU又はGPUといったプロセッサを利用することができる。制御演算部21は,記憶部22に記憶されているアプリケーションプログラムを読み出し,このアプリケーションプログラムに従って他の要素を制御する。また,制御演算部21は,アプリケーションプログラムに従った演算結果を,記憶部22に適宜書き込んだり読み出したりすることができる。
携帯端末20の記憶部22は,制御演算部21での演算処理等に用いられる情報を記憶するための要素である。具体的に説明すると,記憶部22は,汎用的な携帯型の情報通信端末を,本発明に係るゲーム応援システム100における携帯端末20として機能させるアプリケーションプログラムを記憶している。このアプリケーションプログラムは,インターネットを経由して携帯端末20にダウンロードされたものであってもよいし,携帯端末20にプリインストールされたものであってもよい。また,記憶部22には,本システム用のアプリケーションプログラム以外にも,その他のプログラムが記憶されていてもよい。ユーザからの指示により,本システム用のアプリケーションプログラムが起動されると,このプログラムに従った処理が実行される。記憶部22のストレージ機能は,例えばHDD及びSDDといった不揮発性メモリによって実現できる。また,記憶部22は,制御演算部21による演算処理の途中経過などを書き込む又は読み出すためのメモリとしての機能を有していてもよい。記憶部22のメモリ機能は,RAMやDRAMといった揮発性メモリにより実現できる。また,携帯端末20の記憶部22には,それを所持する応援者固有のユーザIDが記憶されていてもよい。また,記憶部22には,ネットワーク上の識別情報であるIPアドレスが記憶されている。
入力部23は,応援者から情報の入力を受け付けるための要素である。入力部23を介して入力された情報は,制御演算部21へと伝達される。入力部23は,公知の情報通信端末に利用されている種々の入力装置を採用することができる。入力部23の例は,タッチパネル,ボタン,カーソル,カメラ,マイクロフォン,キーボード,及びマウスであるが,これらに限定されない。また,入力部23を構成するタッチパネルは,出力部24を構成するディスプレイと共に,タッチパネルディスプレイを構成していてもよい。
携帯端末20の出力部24は,応援者に向けて各種の情報を出力するための要素である。制御演算部21で演算処理された情報は,出力部24によって出力される。出力部24は,公知の情報通信端末に利用されている種々の外部出力装置を採用することができる。出力部24の例は,ディスプレイ,スピーカ,フラッシュライト,及びバイブレータであるが,これらに限定されない。前述のとおり,ディスプレイは,タッチパネルディスプレイであってもよい。出力部24は,制御演算部21の制御に従って,種々の情報を出力できる。
位置情報取得部25は,携帯端末20の現在の位置情報を取得するための要素である。具体的には,位置情報取得部25は,GPS(Global Positioning System)を利用した測位を行う機能を持つ。位置情報取得部25は,複数のGPS衛星から送られた電波に含まれる電波送信時間の情報に基づき,それぞれの電波を受信するのに要した時間を測定し,その時間を示す時間情報を制御演算部21に伝達する。制御演算部21は,取得した時間情報に基づいて,携帯端末20の所在位置の緯度経度に関する情報を算出することができる。また,位置情報取得部25は,Wi−Fi(登録商標)アクセスポイントなどの無線基地局から発信される電波やビーコン信号をスキャンすることにより,現在の位置情報を取得するものであってもよい。
携帯端末20の送信部26及び受信部27は,携帯端末20と管理サーバ30との間で,インターネットを介した情報の授受を行うための要素である。送信部26は,制御演算部21の制御に従って,各種の情報を管理サーバ30へと送信する。また,受信部27は,管理サーバ30から各種の情報を受信して,これを制御演算部21へと伝達する。携帯端末20と管理サーバ30との間でやり取りされる情報の詳細については,後述する。
図2に示されるように,管理サーバ30は,管理制御部31,ユーザデータベース32,店舗データベース33,ポイントデータベース34,送信部35,及び受信部36を有している。
管理制御部31は,管理サーバ30が備える他の要素32〜36の全体制御を行う。管理制御部31としては,CPU又はGPUといったプロセッサを利用することができる。管理制御部31は,後述する各種データベース32〜34にアクセスして,各種データベース32〜34を検索して各種の情報を抽出したり,各種データベース32〜34に記憶されている情報を更新したりすることができる。また,管理制御部31は,ゲーム装置10及び携帯端末20に対する制御情報を生成して,送信部35を介してこの制御情報を送信することもできる。このため,管理サーバ30の管理制御部31は,本システムにおけるゲーム装置10及び携帯端末20を制御する機能も担っている。
また,図2には,管理制御部31が有する代表的な機能構成を示している。すなわち,管理制御部31は,店舗特定部31a,プレイヤ特定部31b,応援情報集計部31c,終了条件決定部31d,及びポイント加算部31eを有する。これらの要素31a〜31eは,管理制御部31(すなわちプロセッサ)が備える機能の一部である。管理制御部31が備える各要素31a〜31eの詳細については,図4に示したフロー図を参照して後述する。
ユーザデータベース32は,本システムのユーザに関する情報を管理するデータベースである。ここにいう「ユーザ」には,ゲーム装置10を操作する「プレイヤ」と携帯端末20を所持する「応援者」の両方が含まれる。応援者であってもゲーム装置10を操作するプレイヤにもなり得るし,またその反対もあり得るため,ここでは区別なくユーザと称している。図3(a)は,ユーザデータベース32のデータ構成の一例を示している。図3(a)に示されるように,例えば,ユーザデータベース32は,ユーザIDフィールド,ユーザ名フィールド,ゲームプレイ履歴フィールド,応援履歴フィールド,及び店舗訪問履歴フィールドを有する。この例では,ユーザIDフィールドが,主キー項目となる。ユーザIDフィールドには,ユーザを識別するためのユーザIDが格納される。ユーザ名フィールドには,ユーザの名前又はニックネームが格納される。ゲームプレイ履歴フィールドには,例えばユーザ毎にプレイ経験のあるゲームに関する情報又はプレイ経験のあるゲーム装置に関する情報(筐体ID)など,ゲームプレイに関する履歴情報が格納される。また,応援履歴フィールドには,ユーザ毎に応援したことのあるプレイヤに関する情報(ユーザID)など,応援に関する履歴情報が格納される。店舗訪問履歴フィールドには,例えばユーザが訪問経験のある店舗に関する情報(店舗ID)など,店舗への訪問に関する履歴情報が格納される。また,店舗訪問履歴フィールドには,ユーザがプレイヤとして訪問した店舗に関する情報だけでなく,ユーザが応援者として訪問した店舗に関する情報も記録しておくことができる。なお,ここで説明したゲームプレイ履歴フィールド,応援履歴フィールド,及び店舗訪問履歴フィールドには,すべての履歴情報を記録してもよいし,最新の所定数の履歴情報のみを記録し古いものから順に随時削除することとしてもよい。また,ユーザデータベース32には,上記例示した情報だけでなく,ユーザのアイコン画像や,住所,電話番号,ログインパスワードなど,ユーザに関する任意の情報を記録しておくことができる。
店舗データベース33は,ゲーム装置10が設置されている店舗に関する情報を管理するデータベースである。図3(b)は,店舗データベース33のデータ構成の一例を示している。図3(b)に示されるように,例えば,店舗データベース33は,店舗IDフィールド,店舗名フィールド,住所フィールド,及び保有筐体フィールドを有する。この例では,店舗IDフィールドが,主キー項目となる。店舗IDフィールドには,店舗を識別するための店舗IDが格納される。店舗名フィールドには,店舗の名称が格納される。住所フィールドには,店舗の住所や店舗の緯度経度に関する情報など,店舗の位置情報が格納される。保有筐体フィールドには,各店舗に設置されているゲーム装置の筐体IDなど,店舗に設置されているゲーム装置を特定するための情報が格納される。また,店舗データベース33には,上記例示した情報だけでなく,店舗の電話番号や,ファックス番号,営業時間など,店舗に関する任意の情報を記録しておくことができる。
ポイントデータベース34は,各ユーザに付与されたポイントを管理するデータベースである。図3(c)は,ポイントデータベース34のデータ構成の一例を示している。図3(c)に示されるように,例えば,ポイントデータベース34には,ユーザIDフィールド,応援ポイントフィールド,被応援ポイントフィールド,及びポイント獲得履歴フィールドを有する。この例では,ユーザIDフィールドが,主キー項目となる。ユーザIDフィールドには,ユーザを識別するためのユーザIDが格納される。応援ポイントフィールドは,応援者が他のプレイヤを応援したときに当該応援者に付与される応援ポイントが格納される。他方,被応援ポイントフィールドには,プレイヤが他の応援者から応援を受けたときに当該プレイヤに付与される被応援ポイントが格納される。このように,本実施形態では,ある応援者から別のプレイヤに対して応援が行われたときに,その応援者とプレイヤの両方にポイントが付与されるようになっている。応援ポイントフィールド及び被応援ポイントフィールドに記録されている各種ポイントは,適宜更新される。また,ポイント獲得履歴フィールドには,応援ポイント及び被応援ポイントを獲得した日時や場所など,ポイントの獲得履歴に関する情報が格納される。ポイントデータベース34に記録されているポイントは,ゲーム装置10で実行されるゲームで利用することとしてもよいし,その他の用途で利用することとしてもよい。また,応援ポイントと被応援ポイントは,合算したポイントして利用することともできるし,それぞれ用途の異なるポイントとして利用することもできる。
管理サーバ30の送信部35及び受信部36は,ゲーム装置10と管理サーバ30との間,及び携帯端末20と管理サーバ30との間で,インターネットを介した情報の授受を行うための要素である。送信部35は,管理制御部31の制御に従って,各種の情報をゲーム装置10又は携帯端末20へと送信する。また,受信部36は,ゲーム装置10又は携帯端末20から各種の情報を受信して,これを管理制御部31へと伝達する。ゲーム装置10,携帯端末20,及び管理サーバ30の間でやり取りされる情報の詳細については,後述する。
図4のフロー図は,ゲーム応援システム100によって実行される処理の例を,ゲーム装置10,携帯端末20,管理サーバ30が担当する処理に分けて示している。
図4に示されるように,まず,ゲーム装置10は,プレイヤのログイン処理(ステップS1)を行う。このログイン処理において,例えば,プレイヤは,自己のICカードをゲーム装置10のICカード読取部15に読み取らせる。ICカード読取部15は,ICカードからプレイヤのユーザIDなどの情報を抽出し,ゲーム制御部11に伝達する。これにより,ゲーム制御部11は,プレイヤのユーザIDを特定できる。また,ログイン処理において,ゲーム装置10は,プレイヤのユーザIDを管理サーバ30に送信して,管理サーバ30に照会をかけることにより,ユーザデータベース32に記憶されているユーザに関する情報や,ポイントデータベース34に記憶されているポイントに関する情報などを,管理サーバ30から取得することも可能である。また,プレイヤのログイン処理を行うことで,管理サーバ30は,プレイヤがゲームプレイ中であることを把握できる。
ログイン処理が完了すると,ゲーム装置10は,記憶部12から自身の筐体IDと,そのゲーム装置10が設置された店舗の店舗IDとを読み出す。そして,ゲーム装置10は,ユーザIDとともに,店舗ID及び筐体IDを,送信部16を介して管理サーバ30へ送信する(ステップS2)。管理サーバ30は,ゲーム装置10から送信された各種の識別情報を,受信部36を介して受信する。これにより,管理サーバ30は,現在,どのプレイヤが,どの店舗で,どのゲームをプレイ中であるかを把握することができる。また,管理サーバ30の管理制御部31は,ゲーム装置10からユーザIDとともに受信した店舗IDを,ユーザデータベース32の店舗訪問履歴フィールドに記録する。これにより,プレイヤとしての店舗訪問履歴を管理することができる。また,管理サーバ30の管理制御部31は,ゲーム装置10からユーザIDとともに受信した筐体IDを,ユーザデータベース32のゲームプレイ履歴フィールドに記録することもできる。これにより,プレイヤのゲームプレイ履歴を管理することができる。
また,ゲーム装置10は,ログイン処理の完了後,記憶部12に記憶されているゲームプログラムに従って,ゲーム処理を開始する(ステップS3)ゲーム処理では,基本的に,ゲーム装置10のゲーム制御部11が,ゲーム操作部13によってプレイヤの操作情報の入力を受け付け,入力された操作情報に応じてゲームの進行を変化させ,ゲームプログラムに従った演算処理の結果を出力部14から出力する。なお,図4では,ゲーム開始からゲーム終了までの期間をゲームプレイ期間と表記している。ゲーム装置10で実行されるゲームは,予めゲームの終了条件が定められており,その終了条件を満たしたときゲーム終了となる。例えば,予め定められた制限時間を経過したときにゲームが終了したり,あるいは予めミスの許容回数が設定されており,プレイヤによるミスの回数がその許容回数を超えたときにゲームが終了する。なお,後述するように,ゲーム終了条件は,応援者による応援情報の集計結果に応じて変化するものであってもよい。
他方,図4に示されるように,携帯端末20は,応援者のログイン処理を行う(ステップS4)。この応援者のログイン処理において,携帯端末20は,例えば,入力部23を介して,応援者のユーザIDとログインパスワードの入力を受け付ける。これにより,携帯端末20は,応援者のユーザIDを特定できる。また,携帯端末20は,プレイヤのユーザIDとパスワードを管理サーバ30に送信して,管理サーバ30に照会をかけることにより,その応援者のログイン権限を確認する。権限の確認がとれると,携帯端末20は,ユーザデータベース32に記憶されているユーザに関する情報や,ポイントデータベース34に記憶されているポイントに関する情報などを,管理サーバ30から取得することができる。
また,管理サーバ30は,ゲーム装置10のプレイヤとしてログインしているユーザが,応援者としてログインすることを禁止することとしてもよい。つまり,管理サーバ30は,ステップS1でのログイン処理で受信したユーザIDと,ステップS4のログイン処理で受信したユーザIDが一致する場合,そのユーザが応援者としてログインすることを許可しない。これにより,あるユーザが自分自身を応援することを防止することができる。
また,携帯端末20は,ログイン処理の終了後,位置情報取得部25を介して,自己の現在の位置情報を取得する(ステップS5)。なお,携帯端末20は,ここで取得した位置情報をディスプレイに表示された地図画面上に表示することもできる。この地図画面を生成するための地図情報は,携帯端末20に予め記憶されていてもよいし,管理サーバ30やその他の地図情報を提供する別のサーバからダウンロードされたものであってもよい。
携帯端末20は,応援者のユーザIDと現在の位置情報を,送信部26を介して管理サーバ30へ送信する(ステップS6)。管理サーバ30は,携帯端末20から送信されたユーザIDと位置情報を,受信部36を介して受信する。管理サーバ30の管理制御部31は,位置情報を解析して,応援者がゲーム装置10の設置された店舗に所在しているか否かを判別できる。つまり,管理制御部31は,携帯端末20から得られた位置情報と,店舗データベース33に記憶されている各店舗の位置情報とを照合することで,応援者がいずれかの店舗の内部に居るのかを判断できる。また,管理制御部31は,応援者がある店舗の内部に居ると判断した場合,その店舗の店舗IDを,ユーザデータベース32の店舗訪問履歴フィールドに記録する。これにより,応援者としての店舗訪問履歴を管理することができる。このようにして,ユーザデータベース32では,プレイヤとしての店舗訪問履歴だけでなく,応援者としての店舗訪問履歴も管理できる。
続いて,管理サーバ30の管理制御部31における店舗特定部31aは,携帯端末20から受信した応援者のユーザIDに基づいてユーザデータベース32にアクセスし,ユーザデータベース32からその応援者の店舗訪問履歴を読み出す(ステップS7)。これにより,店舗特定部31aは,応援者の訪問経験がある店舗を特定することができる。また,店舗特定部31aは,ユーザデータベース32の店舗訪問履歴フィールドに記録されている店舗IDのうち,最新のものを所定数読み出すこととしてもよいし,店舗IDのすべてを読み出すこととしてもよい。例えば,店舗特定部31aは,応援者の店舗訪問履歴を5〜15件程度読み出すことが好ましい。
また,店舗特定部31aは,ユーザデータベース32から読み出した店舗訪問履歴のうち,応援者の現在の位置情報から所定の範囲内にある店舗を一又は複数箇所特定する(ステップS8)。具体的には,店舗特定部31aは,店舗データベース33に記録されている各店舗の位置情報と,応援者の現在の位置情報とを照合して,応援者の位置情報から所定範囲内にある店舗を抽出すればよい。例えば,店舗訪問履歴に含まれる店舗のうち,応援者の現在の位置情報から近い順に店舗が所定数特定される。このように,応援者が訪問したことのある店舗の中でも,応援者の現在位置から所定範囲にある店舗のみが候補として選択されることとなる。
その後,管理制御部31は,店舗特定部31aで特定した一又は複数の店舗の候補に関する情報を,送信部26を介して携帯端末20に送信する(ステップS9)。店舗の候補に関する情報としては,例えば,店舗ID,店舗の住所(位置情報),名称,電話番号,及び店舗の写真画像などを送信することができる。携帯端末20は,受信部27を介して,店舗の候補に関する情報を管理サーバ30から受け取り,ディスプレイやスピーカなどの出力部24を介してその情報を応援者に提示する。例えば,携帯端末20は,各店舗の位置情報をディスプレイに表示された地図画面上に表示したり,各店舗の画像とともに店舗の名称や電話番号をディスプレイに表示することができる。
その後,携帯端末20は,入力部23を介して,管理サーバ30から受信した店舗の候補のうち,応援者が応援を行うことを希望する店舗の選択を受け付ける(ステップS10)。ここでは,応援者に1つの店舗を選択させることが好ましいが,2つ以上の店舗を選択させることも可能である。例えば,応援者は,現在自らが所在する店舗を選択したり,あるいは現在自分が店舗内に居なくても,その近くに在る任意の店舗を選択することができる。携帯端末20の制御演算部21は,ここで選択された店舗の選択情報を,送信部26を介して管理サーバ30へ送信する(ステップS11)。店舗の選択情報には,例えば店舗IDが含まれていればよい。
管理サーバ30は,受信部36を介して,携帯端末20から店舗の選択情報を受け取る。その後,管理サーバ30の管理制御部31におけるプレイヤ特定部31bは,応援者により選択された店舗内でゲームをプレイ中のプレイヤを特定する(ステップS12)。すなわち,管理サーバ30は,ステップS2において,ゲーム装置10からプレイヤのユーザID,店舗ID,及び筐体IDを受信しているため,現在,どのプレイヤが,どの店舗で,どのゲーム装置10のゲームをプレイ中であるかを把握している。このため,管理サーバ30のプレイヤ特定部31bは,携帯端末20から店舗IDを受け取ったときに,その店舗IDで特定される店舗において,どのプレイヤがどのゲーム装置10のゲームをプレイ中であるかを特定することができる。このようにして,応援者に選択された店舗内でゲームをプレイ中のプレイヤが,応援の候補として特定されることとなる。なお,応援者が選択した店舗内では,その時点で複数のプレイヤがゲームをプレイしている可能性もあるし,ゲームプレイ中のプレイヤがいない可能性もある。
管理サーバ30の管理制御部31は,応援者が選択した店舗内でゲームプレイ中のプレイヤがいる場合に,そのプレイヤの候補に関する情報を,送信部35を介して携帯端末20に送信する(ステップS13)。プレイヤの候補に関する情報としては,例えば,プレイヤのユーザID,ユーザ名,及びユーザのアイコン画像を送信すればよい。また,管理サーバ30は,ゲーム名やゲームの進行状況など,各プレイヤがプレイ中のゲームに関する情報を,携帯端末20に送信することもできる。また,管理サーバ30は,プレイ中のゲーム画面(静止画又は動画)を,ゲーム装置10から受信して,リアルタイムに携帯端末20に送信することとしてもよい。携帯端末20は,受信部27を介して,管理サーバ30か,プレイヤの候補に関する情報や,プレイ中のゲームに関する情報,ゲーム画面の情報を受け取り,それらの情報をディスプレイやスピーカなどの出力部24によって出力する。これにより,携帯端末20を所持する応援者は,自分で選択した店舗内で,どのようなプレイヤがどのようなゲームをプレイしているのかを知ることができる。
続いて,携帯端末20は,入力部23を介して,特定のプレイヤに対する応援情報の入力を受け付ける(ステップS14)。応援情報には,少なくとも応援の対象となる被応援プレイヤの選択情報が含まれる。ここで選択される被応援プレイヤは,一人であってもよいし,複数人であってもよい。また,応援情報としては,被応援プレイヤに対する応援メッセージを入力することもできる。応援メッセージは,テキスト情報であってもよいし,音声情報や,静止画情報,動画情報であってもよい。例えば,応援者は,応援メッセージとして,テキストとともにスタンプを入力することができる。また,本システムは,応援を行うことで,応援者から被応援プレイヤに対してポイントが譲渡される仕様とすることも可能である。その場合,応援情報としては,応援者から被応援プレイヤに譲渡するポイント数が入力される。なお,本発明において,応援情報は,ここで説明した情報に限られず,応援者からプレイヤに向けた種々の情報が含まれる。なお,応援情報の入力には,回数制限があってもよい。例えば,1日に入力できる応援情報の回数を制限することで,応援ポイント及び被応援ポイントが過剰に増えることを防止できる。
携帯端末20に入力された応援情報は,送信部26を介して,管理サーバ30へ送信される(ステップS15)。また,このとき,応援情報とともに,この応援情報を入力した応援者に関する情報が,管理サーバ30へ送信される。応援者に関する情報としては,応援者ID及び応援者の名前又はニックネームが挙げられる。また,本システムにおいて,携帯端末20は,複数存在することが想定されている。このため,一人のプレイヤに対して,複数の携帯端末20から応援情報が送信されることも考えられる。つまり,ゲーム装置10でのゲームプレイ期間中,管理サーバ30は,複数の携帯端末20から応援情報を受信することを継続する。なお,管理サーバ30は,ある一人のプレイヤに対しては,応援者一人につき1回しか応援情報を受け付けないなど,応援情報の入力に回数制限を設けることも可能である。また,一人のプレイヤに対して一人の応援者が何度も応援情報を入力できるようにすることもできる。
管理サーバ30の管理制御部31は,携帯端末20から応援情報と応援者の情報を受信したときに,送信部35を介して,リアルタイムでその応援情報と応援者の情報をゲーム装置10に通知することとしてもよい(ステップS16)。この場合に,ゲーム装置10のゲーム制御部11は,その応援情報に含まれる応援メッセージや応援者の名前などの情報を,ゲーム装置10のディスプレイやスピーカを介して外部出力する(ステップS17)。ここでの応援メッセージの出力は,ゲーム装置10によるゲームプレイ期間中に行われる。このため,応援者は,ゲームプレイ中のプレイヤをリアルタイムで応援することができる。また,ゲーム装置10は,管理サーバ30から受信した応援情報の数を集計し,その累計数に応じたカウントやレベルゲージをディスプレイに表示することもできる。例えば,ゲームプレイ中のゲーム装置10のディスプレイには,応援情報の受信数の累計や,応援者からメッセージ,応援者の名前,及び応援者のアイコン画像等をリアルタイムに表示できる。これにより,ゲームのプレイヤは,ゲーム期間中に応援者からのどの程度の応援があったのかをリアルタイムに確認することができる。
また,管理サーバ30の管理制御部31における応援情報集計部31cは,ゲームプレイ期間中に携帯端末20から受信した応援情報を集計する(ステップS18)。例えば,応援情報集計部31cは,ゲームプレイ期間中に一人のプレイヤに対して送信された応援情報の累計を求める演算処理を行う。これにより,あるプレイヤが,そのゲームプレイ期間中にどの程度応援を受けているかを把握できる。人気のプレイヤには,応援情報が集中すると考えられる。その他,例えば,応援情報集計部31cは,ゲームプレイ期間中に一つの店舗に対して送信された応援情報の累計を求めることもできる。ただし,応援情報の集計方法は,ここで説明した方法に特に限定されない。
また,管理サーバ30の管理制御部31は,終了条件決定部31dを有していてもよい。終了条件決定部31dは,任意の要素である。終了条件決定部31dは,応援情報集計部31cによる応援情報の集計結果に基づいて,ゲーム装置10で実行されているゲームの終了条件を決定する(ステップS19)。また,管理サーバ30は,終了条件決定部31dが決定したゲームの終了条件を,送信部35を介してゲーム装置10に通知する(ステップS20)。ゲーム装置10のゲーム制御部11は,管理サーバ30からゲームの終了条件の通知を受けたときには,終了条件決定部31dが決定した終了条件に従って実行中のゲームを終了させる(ステップS21)。なお,終了条件決定部31dは,応援情報の集計結果が所定の条件を満たしたときに限り,ゲームの終了条件を決定すればよい。終了条件決定部31dは,応援情報の集計結果が所定の条件を満たさない場合には,ゲームの終了条件を決定せず,ゲーム装置10にも通知しない。ゲーム装置10は,管理サーバ30からゲームの終了条件の通知がないときには,ゲームプログラムに定められた既定の終了条件に従ってゲームを終了させる(ステップS21)。
ここでは,ゲーム装置10において時間制限のあるゲームが実行されている場合を例に挙げて説明する。ゲームの終了時間は,基本的に,ゲームプログラムで定められた既定時間に従う。このため,ゲームプレイ期間中,プレイヤに対して応援情報が送信されなければ,既定時間を経過したときにそのゲームは終了する。他方で,ゲームプレイ期間中,プレイヤに対する応援情報の数が第1の閾値を超えた場合,終了条件決定部31dは,ゲームの終了時間を規定時間よりも長い時間に決定して,ここで決定したゲームの終了時間をゲーム装置10に通知する。また,ゲームプレイ期間中,プレイヤに対する応援情報の数が第2の閾値(第2の閾値>第1の閾値)を超えた場合,終了条件決定部31dは,ゲームの終了時間を規定時間よりもさらに長い時間に決定して,ここで決定したゲームの終了時間をゲーム装置10に通知する。そして,ゲーム装置10は,管理サーバ30から通知を受けたゲームの終了時間に従って,実行中のゲームを終了させる。このように,この例では,プレイヤに対する応援情報の数が多ければ多いほど,ゲームプレイ期間が長くなるように設定されている。例えば,応援が集まる人気のプレイヤについては,そのゲームプレイの様子を長く観戦していたいという応援者の要求があると考えられる。このため,応援情報の数によってゲームの終了時間を変化させることで,ゲームを観戦している応援者の希望をゲームに反映させることができ,またゲームに対するプレイヤのモチベーションを高めることができるといえる。なお,終了条件決定部31dが決定するゲームの終了条件は,ゲームの終了時間に限らない。例えば,終了条件決定部31dは,応援情報の数に応じて,ゲームのミスの許容回数や,その他種々のゲーム終了条件を変化させることができる。
ゲーム装置10によるゲームが終了すると,管理サーバ30の管理制御部31は,応援情報集計部31cでの集計結果に応じて,ゲームのリザルト情報を作成する(ステップS22)。リザルト情報とは,ゲームプレイ期間中に送信された応援情報の集計結果を含む情報である。例えば,リザルト情報には,応援情報の累計数,応援者の名前又はニックネーム,応援者からの応援メッセージ,応援者のアイコン画像,及び被応援ポイントの獲得数に関する情報が含まれる。管理サーバ30は,ここで作成したリザルト情報を,送信部35を介してゲーム装置10に送信する(ステップS23)。ゲーム装置10は,リザルト情報を管理サーバ30から受け取ると,このリザルト情報に基づいたリザルト画面をディスプレイに表示する(ステップS24)。例えば,図5は,ゲーム装置10のディスプレイに表示されるリザルト画面の一例を示している。図5に示されるように,リザルト画面には,応援情報の集計結果,応援者の名前,応援者に対応するアイコン画像,及び応援者からのメッセージが表示される。応援者の名前やアイコン画像は,応援者全員分を表示する必要はなく,応援者の中から所定の基準に従って選択した数名のみを表示することとしてもよい。また,図5に示した例では,応援情報の集計結果が,“応援熱量”という単位に換算されてリザルト画面に表示されている。このリザルト画面は,応援情報の集計結果に応じて変化するものであってもよい。例えば,図5に示した例では応援情報の集計結果に応じて“FEVER”の画像が変化したり,あるいは“応援熱量 100万kカロリー突破!!”とい文字の色やフォントが変化するように設定されている。また,リザルト画面の例には,今回のゲームプレイにおいて被応援プレイヤが獲得した被応援ポイントの数値,被応援ポイントを獲得した日時,プレイ前の被応援ポイントの累計値,及びプレイ後の被応援ポイントの累計値が表示されている。このように,プレイヤは,ゲーム終了後に,ゲーム期間中では見逃しやすい応援者の人数やメッセージなどをまとめて確認することができる。また,本システムにおいては,ステップS16及びステップS17で説明したリアルタイムでの応援情報の表示処理を省略し,ゲーム終了後のリザルト画面の表示処理のみを行うこともできる。この場合には,ゲーム期間中におけるゲーム装置10と管理サーバ30との通信工程を少なくすることができ,またゲーム装置10の処理負荷を低下させることができる。
また,管理サーバ30の管理制御部31におけるポイント加算部31eは,応援者に対して応援ポイントを付与する処理,及び被応援プレイヤに対して被応援ポイントを付与する処理を行う(ステップS25)。例えば,ポイント加算部31eは,応援者に対しては,ポイントデータベース34に記憶されている応援ポイントを,所定数加算すればよい。なお,前述したとおり,応援者が自分自身を応援することは出来ないように制限されている。また,ポイント加算部31eは,被応援プレイヤに対しては,ポイントデータベース34に記憶されている被応援ポイントを,応援情報集計部31cでの集計結果に応じて加算すればよい。例えば,被応援プレイヤについては,応援情報の送信数が多ければ多いほど被応援ポイントが多く加算されるようになっている。このように,応援者にポイントを付与することで,応援を行うモチベーションを高めることができ,また,被応援プレイヤにポイントを付与することで,ゲームに対するモチベーションを高めることができる。ただし,被応援プレイヤが1回のゲームプレイで獲得可能な被応援ポイントに上限を設定することも可能である。例えば,一人の応援者につき被応援ポイントがnポイント加算され,最大m人の応援者から応援を受け付けることができるといったような設定,つまり被応援ポイントの上限値をn×mポイントにするといったような設定が可能である。
なお,ユーザ同士が“フレンド”として互いを認証し合うシステムがあるような場合,応援者は,フレンド登録していないプレイヤに対しても応援情報を送信することができる。また,ユーザがモバイルサイトに会員登録できるシステムがあるような場合に,応援者としてプレイヤを応援できるのは,そのモバイルサイトの会員登録した者に限定することとしてもよい。また,被応援プレイヤがモバイルサイトに会員登録していないときには,会員登録している応援者がその非会員である被応援プレイヤに対して応援情報を送信した場合であっても,その応援者に対しては応援ポイントを付与しないようにすることとしてもよい。
以上,本願明細書では,本発明の内容を表現するために,図面を参照しながら本発明の実施形態の説明を行った。ただし,本発明は,上記実施形態に限定されるものではなく,本願明細書に記載された事項に基づいて当業者が自明な変更形態や改良形態を包含するものである。また,ゲーム応援システム100が有する位置情報取得部25や,店舗データベース33,店舗特定部31a,プレイヤ特定部31b,ユーザデータベース32,ポイントデータベース34などは,任意の機能部であり,必ずしもこれらの機能部を有さなくてもよい。例えば,ゲーム応援システム100では,携帯端末20は,位置情報取得部25を有さず,管理サーバ30は,店舗特定部31aや,プレイヤ特定部31b,応援情報集計部31c,終了条件決定部31d,ポイント加算部31e,ユーザデータベース32,店舗データベース33,ポイントデータベース34を有さなくてもよい。言い換えると,ゲーム応援システム100は,位置情報や訪問経験に関する店舗情報を用いた店舗の特定や応援ポイントの加算などを行わずに,応援に関する情報に基づいて情報を出力してもよい。
例えば,上記の実施形態では,応援情報の集計処理(ステップS18)とゲーム終了条件の决定処理(ステップS19)を管理サーバ30で行うこととしているが,これらの処理をゲーム装置10に担当させることもできる。また,例えば,同時にゲームを実行しているゲーム装置10の数が所定数を超えた場合,管理サーバ30と通信するゲーム装置10の数が多くなるため,全てのゲーム装置10に対する応援情報の集計処理を管理サーバ30に負担させると,ボトルネックが発生し処理の遅延を招くおそれがある。このため,同時にゲームを実行しているゲーム装置10の数が所定数を超えた場合には,自動的に,応援情報の集計処理とゲーム終了条件の决定処理を管理サーバ30から各ゲーム装置10に移譲することで,処理負荷を分散させることができる。他方で,一人のプレイヤに対する応援情報が所定数を超えた場合,一台のゲーム装置10に集計処理を担当させると,その処理負荷がゲーム装置10の処理能力を超えるおそれがある。このため,一人のプレイヤに対する応援情報が所定数を超えた場合には,管理サーバ30において応援情報の集計処理とゲーム終了条件の决定処理を行うことで,ゲーム装置10の処理負荷を低減させることができる。例えば,ゲームの大会など,多数の応援者が一堂に集まってステージのプレイするプレイヤを同時に応援するというような状況の場合には,管理サーバ30において応援情報の集計処理とゲーム終了条件の决定処理を行うことが好ましい。