【文献】
『八百万クエスト ぶらり仲間と英雄あつめ!』で僕らの街が冒険の舞台になる!?,インサイド,2017年 2月17日,平成29年6月20日検索,URL,https://www.inside-games.jp/article/2017/02/17/105413.html
【文献】
地図情報を使ったRPG『八百万クエスト』配信決定…脱出ゲームや宝探しを楽しめる,esponse,2017年 1月28日,平成29年6月20日検索,URL,<URL:https://web.archive.org/web/20170128072351/https://response.jp/article/2017/01/26/289319.html> <URL:https://response.jp/article/2017/01/26/289319.html>
(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0011】
以下に添付図面を参照して、本実施形態に係るゲームシステム及びゲームプログラムの実施形態を詳細に説明する。
(システムの全体構成)
図1は、本実施形態に係るゲームシステムの全体構成を示す概念図である。本実施形態に係るゲームシステムは、
図1に示すように、ユーザー10が使用する携帯端末装置であるスマートフォン1と、インターネット2上に設置されたゲームサーバー3とから概略構成される。なお、本実施形態では、スマートフォン1を携帯端末装置の一例として説明する。
【0012】
ゲームサーバー3は、本実施形態では、ゲーム進行処理を行うサーバーであり、単一のサーバー装置、又は複数のサーバー装置群により実現することができ、複数の機能モジュールをCPU上に仮想的に構築し、それぞれの機能モジュールが協動して処理を実行する。また、このゲームサーバー3は、通信機能によりインターネット2を通じて、データ送受信を行うことができるとともに、Webサーバー機能によりブラウザソフトを通じてWebページの提示などを行うことができる。
【0013】
スマートフォン1は、無線通信を利用した携帯可能な情報処理端末装置であり、無線基地局22等の中継点と携帯電話機が無線で通信し、通話やデータ通信等の通信サービスを移動しつつ受けることができる。この携帯電話機の通信方式としては、例えば、3G(3rd. Generation)方式、LTE(Long Term Evolution)方式、4G方式、FDMA方式、TDMA方式、CDMA方式、W−CDMAの他、PHS(Personal Handyphone System)方式等が挙げられる。また、このスマートフォン1は、デジタルカメラ機能、アプリケーションソフトの実行機能、GPS(Global Positioning System)などによる位置情報取得機能等、種々の機能が搭載され、タブレットPC等のモバイルコンピューターも含まれる。
【0014】
位置情報取得機能は、自機の位置を示す位置情報を取得し、記録する機能であり、この位置情報取得機能としては、
図1に示すように、例えば、GPSのように、衛星21からの信号によって自機の位置を検出する方法や、携帯電話の無線基地局22や、Wifi通信のアクセスポイントからの電波強度などによって位置を検出する方法が含まれる。
【0015】
そして、このスマートフォン1は、情報を表示する表示部としての液晶ディスプレイを備えるとともに、ユーザーが入力操作を行うための操作ボタン等の操作デバイスを備え、この操作デバイスとしては、液晶ディスプレイに重畳されて配置され、液晶ディスプレイ上の座標位置を指定するタッチ操作などによる操作信号を取得する入力部としてのタッチパネルが含まれる。具体的にこのタッチパネルは、ユーザーの指先やペンなどを用いたタッチ操作による圧力や静電検知その他によって操作信号を入力する入力デバイスであり、グラフィックを表示する液晶ディスプレイと、この液晶ディスプレイに表示されたグラフィックの座標位置に対応した操作信号を受け付けるタッチセンサーとが重畳されて構成されている。
【0016】
(各装置の内部構造)
次いで、上述したゲームシステムを構成する各装置の内部構造について説明する。
図5は、本実施形態に係るゲームサーバー3の内部構成を示すブロック図であり、
図6は、本実施形態に係るスマートフォン1の内部構成を示すブロック図である。なお、説明中で用いられる「モジュール」とは、装置や機器等のハードウェア、或いはその機能を持ったソフトウェア、又はこれらの組み合わせなどによって構成され、所定の動作を達成するための機能単位を示す。
【0017】
(1)ゲームサーバー
先ず、ゲームサーバー3の内部構成について説明する。ゲームサーバー3は、インターネット2上に配置されたサーバー装置であり、インターネット2を通じて、各スマートフォン1とデータの送受信を行えるようになっている。ゲームサーバー3は、インターネット2を通じてデータ通信を行う通信インターフェース31と、利用者や利用者端末の権限を認証する認証部33と、各利用者端末の位置情報を収集して管理する位置情報管理部32と、ゲーム全体のゲーム進行処理、及び各ユーザーのゲーム進行処理を実行するゲーム進行処理部36と、仮想地図情報を生成する仮想地図情報管理部37と、各ユーザーに対してゲームデータを配信する34と種々のデータベース群を備えている。
【0018】
データベース群としては、現実世界における地理情報を含む現実地図情報を記憶する現実地図記憶部としての現実地図データベース35aと、利用者に関する情報を蓄積するユーザーデータベース35bと、仮想地図情報、ゲーム全体のゲーム進行処理、及び各ユーザーのゲーム進行処理に関する情報を蓄積するゲーム用データベース35cと、発行したポイントを管理するポイントデータベース35dとが含まれる。これらの各データベースとしては、単一のデータベースとしてもよく、複数のデータベースに分割し、相互にリレーションを設定することで各データ同士を紐付けたリレーショナルデータベースとすることができる。
【0019】
現実地図データベース35aは、現実世界における地理情報を含む現実地図情報を記憶する記憶装置であり、山や谷、河川等の自然的な地理的要素、建物や道路、鉄道などの人工物、地名や住所、交通規制などが地理情報として記憶される。この現実地図情報には、地理情報に関する文字情報、例えば地名や行政区名称、街道名、河川・山岳等の名称などが含まれている。なお、この現実地図データベース35aは、ゲームサーバー3を運用するサービス提供者自身が所有・運用するものの他、他の地図サービス提供者が運用する地図データベースであってもよい。
【0020】
ユーザーデータベース35bに蓄積される情報としては、利用者又は利用者が使用している携帯端末装置を特定する識別子(ユーザーID、端末ID)と、パスワード等とを紐付けた認証情報を含み、ユーザーIDに紐付けられた利用者の個人情報や、端末装置の機種なども含まれる。また、ユーザーデータベース35bには、利用者毎或いは利用者端末毎の認証履歴(アクセス履歴)や、ゲーム用データベース35cとのリレーションによりユーザー毎のゲーム進行に関する情報(緯度・経度等の現在位置、ゲーム中におけるステイタス、得点、利用履歴等)、ゲーム中に関する決済情報等も蓄積される。
【0021】
ゲーム用データベース35cに蓄積される情報としては、仮想世界の地図情報、キャラクターやオブジェクトの特性、イベント処理に関する情報、グラフィック情報などがゲーム用データとして含まれるとともに、これらのゲーム用データと、現実地図に含まれる地理的要素や建物、道路、鉄道等とを関連づけるためのマッピングデータも含まれる。ポイントデータベース35dは、発行されたポイントをユーザー、ユーザー端末若しくはアプリケーションと紐付けて管理し、各ポイントの利用履歴を蓄積する。
【0022】
認証部33は、通信インターフェース31を通じて、各スマートフォン1と通信セッションを確立させ、その確立された通信セッション毎に認証処理を行うモジュールである。この認証処理としては、アクセス者である利用者のスマートフォン1から認証情報を取得し、ユーザーデータベース35bを参照して、利用者等を特定し、それらの権限を認証する。この認証部33による認証結果(ユーザーID、認証時刻、セッションID等)は、ゲーム進行処理部36に送出されるとともに、ユーザーデータベース35bに認証履歴として蓄積される。
【0023】
位置情報管理部32は、利用者端末装置側で取得されてゲームサーバー3に送信される位置情報を取得するモジュールであり、位置情報管理部32は、認証部33による認証処理によって特定されたユーザーやユーザー端末装置の識別子(ユーザーID、端末ID等)と、それらの位置情報とを紐付けてユーザーデータベース35bに利用履歴として蓄積する。ここで取得される位置情報としては、撮影部が映像を撮影した時点の座標(現実地図及び仮想地図上における緯度・経度・標高、撮影)及び撮影方位、その時点の日時も含まれる。
【0024】
ゲーム進行処理部36は、仮想世界において、各ユーザーに対応する各キャラクター、及びモンスターやその他のオブジェクトが移動して、種々のイベント処理を発生させてゲームを進行させるモジュールであり、一定のルール・ロジック・アルゴリズムを含むゲームプログラムを実行し、キャラクターやオブジェクトの位置関係(接近・接触等)に応じて、対決バトルやミニゲーム、ムービーの再生、街区のファンタジー化等のイベント処理を発生させる。特に、ゲーム進行処理部36は、位置情報管理部32から取得される各ユーザーの位置情報に基づいて各ユーザーの現在位置と、各ユーザーが所有するポイント数に応じて、仮想世界においてキャラクターC1を移動させる処理、又は仮想世界におけるキャラクターの移動により得られる効果、例えば地図上のファンタジー化や、アイテムの入手など、実際にキャラクターC1が歩いたのと同等の効果が得られるようなイベント処理も実行する。
【0025】
なお、ゲーム進行処理部36は、本実施形態では、スマートフォン1側のゲーム進行処理部141と協働するようになっており、ゲーム進行処理の一部をゲームサーバー3側で行い、グラフィック処理やイベント処理の一部をスマートフォン1側のゲーム進行処理部141で実行するようにしている。例えば、ゲームサーバー3側で、他のユーザーのキャラクターの位置や、オブジェクトの位置などに基づいて、発生し得るイベント処理を予測し、その発生条件をゲームサーバー3側で発生させ、その条件をスマートフォン1側に送信し、実際のイベント処理の発生やそのためのグラフィック処理は、ゲームサーバー3から受信した発生条件に基づいてスマートフォン1側で実行するようにしている。
【0026】
仮想地図情報管理部37は、ゲーム進行処理部36によるゲーム進行に従って、
図2に示すような、現実地図情報M1上の地理情報に対応した仮想地理情報上における他のユーザーのキャラクターや、建物等のオブジェクト座標情報を含む仮想地図情報M2の生成、蓄積及び配信を管理・制御するモジュールである。本実施形態では、ユーザー10が実際に現実地図情報M1上を移動した距離に応じてポイントTpが発行され、このポイントTpを消費することによって、仮想地図情報M2上をユーザー10に対応したキャラクターC1が移動し、その移動した経路に隣接するブロックB0をファンタジー化することができる。このファンタジー化は、
図10(a)及び(b)に示すように、ユーザーが画面上で、経路に隣接する街区に対応する形状に分割されたブロックB0をタッチすることによって、そのタッチされたブロックB0がファンタジー化され、仮想地図中の各種ブロックB2〜B5が現実地図情報M1上の街区に重畳されて表示される。
【0027】
なお、ポイントTpは、ゲームサーバーにアクセスする頻度又は間隔に応じて、そのユーザーに対して付与してもよく、ユーザーによる決済操作やサーバー側の課金処理などによって、代金やポイントにより購入することもできる。さらにポイントTpは、ゲームにおける所定のイベントを完了したり、ミニゲームなどの得点や、キャラクターのレベルアップ、レベルクリアなどにより、適宜付与されるようにしてもよい。
【0028】
なお、この仮想地図情報M2は、ゲームサーバー3側で生成する場合と、スマートフォン1側で生成する場合と、ゲームサーバー3とスマートフォン1の両者が協働して生成する場合とがあり、仮想地図情報管理部37は、ゲームサーバー3側で生成、或いは蓄積された仮想地図情報M2と、スマートフォン1側で生成、蓄積された仮想地図情報M2に関する情報を管理し、両者の仮想地図情報M2を比較し、必要に応じて仮想地図情報M2の全部又は一部をスマートフォン1側に配信して、両者の同期を図る。
【0029】
ゲームサーバー3側で仮想地図情報M2を生成する場合、仮想地図情報管理部37は、現実地図データベース35aに蓄積された現実地図情報M1に含まれる地理的要素や建物、道路、鉄道等を取得するとともに、ゲーム用データベース35cに蓄積されたマッピングデータを参照し、現実地図情報M1に対応した仮想世界の地図情報、キャラクターやオブジェクトの特性(属性)、イベント処理に関する情報、グラフィック情報などに基づいて、仮想世界の地図情報をブロックB0単位で分割して生成する。
【0030】
ゲームデータ配信部34は、ユーザーの現在位置に基づき、仮想地図情報管理部37による制御に従って、仮想地図情報管理部37が生成した仮想地図情報M2を同期させるべく、地図情報や仮想世界のグラフィックを、通信インターフェース31を通じて,各ユーザーに配信するモジュールである。なお、仮想世界のグラフィックは、現実地図情報M1に対応する街区毎にブロックに分割され、ブロック単位で配信される。なお、このブロックの分割は、ユーザーの仮想世界での移動速度、現実世界での移動速度、現実地図上又は仮想地図上の情報密度に応じて、その面積や形状が自動的に変化するようにしてもよい。例えば、ユーザーの移動速度が早い場合にはブロックの分割単位面積を大きくしたり、また、都心などのビルや店舗などが密集してその情報の密度が高い地域では、分割単位面積を小さくするようにしてもよい。
【0031】
(2)スマートフォン1
次いで、スマートフォン1の内部構成について説明する。
図6に示すように、スマートフォン1は、ゲームシステムのためのユーザーインターフェースに関するモジュールとして通信インターフェース11と、入力インターフェース12と、出力インターフェース13と、アプリケーション実行部14と、メモリ15とを備えている。
【0032】
通信インターフェース11は、データ通信を行うための通信インターフェースであり、無線等による非接触通信や、ケーブル、アダプタ手段等により接触(有線)通信をする機能を備えている。入力インターフェース12は、マウス、キーボード、操作ボタンやタッチパネル12aなどユーザー操作を入力するデバイスである。また、出力インターフェース13は、ディスプレイやスピーカーなど、映像や音響を出力するデバイスである。特に、この出力インターフェース13には、液晶ディスプレイなどの表示部13aが含まれ、この表示部は、入力インターフェースであるタッチパネル12aに重畳されている。
【0033】
メモリ15は、OS(Operating System)やファームウェア、各種のアプリケーション用のプログラム、その他のデータ等などを記憶する記憶装置であり、このメモリ15内には、ユーザーを識別するユーザーIDの他、ゲームサーバー3からダウンロードしたゲームアプリケーションデータを蓄積するとともに、アプリケーション実行部14で処理されたゲームデータ等が蓄積される。特に、本実施形態では、メモリ15には、ゲームサーバー3から取得した、仮想地図情報M2及び現実地図情報M1が格納されている。仮想地図情報M2は、現実地図情報M1中の街区に対応する形状に分割されたブロック単位で格納される。
【0034】
アプリケーション実行部14は、一般のOSやゲームアプリケーション、ブラウザソフトなどのアプリケーションを実行するモジュールであり、通常はCPU等により実現される。このアプリケーション実行部14では、本発明に係るゲームプログラムが実行されることで、ゲーム進行処理部141、同期処理部142、イベント処理部143、表示制御部146、表示データ生成部145、位置情報取得部144が仮想的に構築される。
【0035】
ゲーム進行処理部141は、ゲームサーバー3で実行されているゲームプログラムと同様のルール・ロジック・アルゴリズムにより、仮想世界において、各ユーザーに対応する各キャラクター、及びモンスターやその他のオブジェクトを移動させて、種々のイベント処理を発生させてゲームを進行させるモジュールであり、同期処理部142を通じて、ゲームサーバー3側のゲーム進行処理部36と同期しつつ、キャラクターやオブジェクトの位置関係(接近・接触等)に応じて、対決バトルやミニゲーム、ムービーの再生、街区のファンタジー化等のイベント処理を発生させる。
【0036】
ゲーム進行処理部141は、本実施形態では、ゲームサーバー3側のゲーム進行処理部141と協働するようになっており、ゲーム進行処理の一部をゲームサーバー3側で行い、グラフィック処理やイベント処理の一部をスマートフォン1側のゲーム進行処理部141で実行するようにしている。例えば、イベント発生の条件などをゲームサーバー3側で発生させ、その条件をスマートフォン1側に送信し、実際のイベント処理の発生やそのためのグラフィック処理は、スマートフォン1側で実行する。
【0037】
同期処理部142は、スマートフォン1側でのゲーム進行処理や画像解析処理と、ゲームサーバー3側でのゲーム進行処理や画像解析処理とを同期させるモジュールである。具体的には、ゲームサーバー3側で、他のユーザーのキャラクターの位置や、オブジェクトの位置などに基づいて、発生し得るイベント処理を予測し、その発生条件をゲームサーバー3側で発生させ、その条件をスマートフォン1側に送信し、この発生条件を同期処理部142で受信し、実際のイベント処理の発生やそのためのグラフィック処理は、ゲームサーバー3から受信した発生条件に基づいてスマートフォン1側のゲーム進行処理部141で実行する。このスマートフォン1側のゲーム進行処理部141で実行されたイベント処理の結果(バトルやミニゲームの勝敗や得点、街区のファンタジー化等)は、同期処理部142を通じてゲームサーバー3側のゲーム進行処理部141に通知され、その後のゲーム進行処理に反映される。
【0038】
また、イベント処理部143は、ゲーム進行処理部141が発生させたイベント処理と、位置情報取得部144が取得する自機の現在位置の移動速度とを監視し、現在位置の移動速度が所定値以上であり、且つゲーム進行処理部141が発生させたイベント処理が予め定められた一括処理可能イベントである場合に、当該イベントの処理において一括処理を許可するモジュールであり、ゲーム進行処理部141は、一括処理可能イベントにおいて、複数の定型的な操作に代えて一括終了操作を許可して、操作を省略してゲームを進行させることができるようになっている。同期処理部142は、イベント処理部143が省略した操作によって遂行したイベント処理についてゲームサーバー3側のゲーム進行処理部141に通知し、イベント処理の発生要件を満たしたイベント処理に対する操作が省略されてゲームが進行されたことをゲームサーバー3側に報告する。
【0039】
位置情報取得部144は、現実世界における座標位置を選択して取得するモジュールであり、ユーザーの現在位置や他のユーザーの現在位置、人工衛星を利用した全地球測位システム (GPS:Global Positioning System)や、基地局からの電波強度及び基地局情報に基づく三角測位による基地局測位、WifiのSSID(Service SetID)及び電波状況と経度緯度を組み合わせたデータベースを利用したWifi測位等により取得する。
【0040】
また、この位置情報取得部144は、ユーザー操作やゲーム進行によるイベント発生に基づく任意の座標位置を選択して、位置情報を取得したり、移動速度を測定したりすることができる。また、位置情報取得部144は、任意のオブジェクトの座標位置を取得する機能も備えており、各データベース35a〜cを検索して、現在の座標位置、或いは仮想地図上の座標位置、又はこれらの変位履歴を取得することができる。
【0041】
特に、この任意のオブジェクトとしては、当該ユーザーの代理となるオブジェクトが代理オブジェクトとして現実地図情報上又は仮想地図情報上の任意の位置に設置された位置を各データベース35a〜cから検索して取得することができる。この代理オブジェクトは、ゲーム進行処理部36又は141によって、地図情報上の位置がゲーム進行に従って自動的に移動されるもので、特定のユーザーの現在位置と連動されたり、ゲーム進行に従って自動的に移動されたりする。
【0042】
さらに、この位置情報取得部144による移動速度の測定では、加速度センサー16からの検出信号により、瞬間的な移動も検知可能となっており、所定の値以上の加速度が生じたときには、ユーザーが移動中であると判定する。また、移動速度の測定では、例えばユーザーが乗り物に乗って高速移動しているときには、GPSの値の変化で移動中であると判定する。この高速移動に関し、地下鉄等の地下や駅構内において、GPS信号が受信できない場合には、Wifiや3G・4G等の基地局の切り替わりや電波受信状態の変化から位置情報が更新されるのを監視し、歩行による通常の移動よりも大きく位置情報が変化したときに、ユーザーの移動を判定する。なお、この基地局の切り替わり等による移動判定では、位置情報の変化が不連続となることから、移動が判定された後の一定時間(例えば5分程度)は移動中であるとするなど、基地局間の距離や電波の変化量に応じ、一定の幅を持たせてユーザーの移動距離、移動速度を予測する。
【0043】
また、本実施形態において位置情報取得部144は移動経路記録部144aを備えており、この移動経路記録部144aは、位置情報取得部144が取得した、ユーザーの現在位置や、他のユーザーの現在位置、任意のオブジェクトの座標位置など、各ユーザー又はオブジェクトの変位履歴に基づいて移動経路や移動速度を算出して記録するモジュールである。この移動経路記録部144aによる移動経路の算出は、例えば、サンプリングされた各位置を時系列順に、隣接する2点間を最短距離で接続して移動経路を決定したり、地理情報を参照して2点間における道順に沿って経路を決定したりすることができる。
【0044】
表示データ生成部145は、表示部13aに表示させるための表示データを生成するモジュールである。表示データは、グラフィックデータの他、画像データや、文字データ、動画データ、音声その他のデータを組み合わせて生成されるデータである。特に、本実施形態に係る表示データ生成部145は、位置情報取得部144が取得したユーザーの現在位置に基づいて、現実地図情報M1上にユーザーの現在位置を示した現実表示データを生成する現実表示データ生成部と、位置情報取得部144が取得した現在位置に基づいて、ユーザーの現在位置に対応した仮想地図情報M2上にキャラクターを表した仮想表示データを生成する仮想表示データ生成部の機能を果たしている。この表示データ生成部145で生成された表示データの表示処理は、表示制御部146で制御される。
【0045】
この表示データ生成部145は、仮想地図情報生成部を備えており、この仮想地図情報生成部は、ゲーム進行処理部141によるゲーム進行に従って、
図2に示すような、現実地図情報M1上の地理情報に対応した仮想地理情報上における他のユーザーのキャラクターや、ファンタジー化ブロック等の座標情報を含む仮想地図情報M2を生成するモジュールである。仮想地図情報生成部は、メモリ15やネットワーク上の現実地図データベース35aに蓄積された現実地図情報M1に含まれる地理的要素や建物、道路、鉄道等を取得するとともに、メモリ15やゲーム用データベース35cに蓄積されたマッピングデータを参照し、現実地図情報M1に対応した仮想世界の地図情報、キャラクターやオブジェクトの特性、イベント処理に関する情報、グラフィック情報などに基づいて、仮想世界の地図情報を生成する。
図2に示した例では、現実地図情報M1上の建物に対応した座標位置(座標範囲)に、森林や山、岩などの仮想的なオブジェクトが配置されている。
【0046】
なお、本実施形態では、仮想地図情報M2をスマートフォン1側の仮想地図情報生成部で生成するようにしたが、ゲームサーバー3の仮想地図情報管理部37で、予め、或いはリアルタイムに、現実地図情報M1上の地理情報に対応した仮想地図情報M2を生成し、ゲームデータ配信部34によって各スマートフォン1に配信して、同期をとるようにしてもよい。
【0047】
表示制御部146は、表示データ生成部145が生成した現実表示データと、仮想表示データとを、これら表示データの両方、選択されたいずれか、又は一方の一部分を他方に重畳させて表示する制御を実行するモジュールであり、表示部13aは、この表示制御部146の制御に従って現実表示データと仮想表示データとを表示する。
【0048】
また、本実施形態における表示制御部146は、軌跡表示部を備えている。この軌跡表示部は、移動経路記録部144aが記録した当該ユーザーの移動経路や、他のユーザーの移動経路、任意のオブジェクト移動経路を、現実地図情報M1上又は仮想地図情報M2上に軌跡として表示させるモジュールである。この軌跡表示部による軌跡の表示は、例えば、サンプリングされた各位置を時系列順に、隣接する2点間を最短距離で接続して決定された移動経路を一定の幅を持たせて着色したり、地理情報を参照して2点間における道順に沿って決定された経路を一定の幅を持たせて着色したりすることができる。さらに、この軌跡表示部による軌跡の表示では、現実地図情報M1上又は仮想地図情報M2上において、各ユーザーやオブジェクトの移動経路に近接する区画又はオブジェクトを軌跡の一部として着色して表示させるようにしてもよい。
【0049】
この区画としては、実際の地理情報や仮想の地理情報に基づいて区画された行政区、街区、都道府県、市町村などのブロック単位で着色して表示させることもできる。このブロック単位での着色においても、隣接する2点間を最短距離で接続して決定された移動経路に接触するブロックを着色したり、地理情報を参照して2点間における道順に沿って決定された経路に接触するブロックを着色したりすることができる。
【0050】
さらに、本実施形態に係る表示データ生成部145は、
図7に示すように、仮想地図表示システムに関わるモジュールとして、関連情報表示部145aと、仮想表示データ生成部145bと、合成処理部145dとを備えている。
【0051】
仮想表示データ生成部145bは、現実地図情報M1に重畳されるコンピューターグラフィックス等の仮想表示データを生成するモジュールであり、例えば位置情報取得部144が取得した位置情報に基づいて、現実地図情報M1を下層レイヤーとして、その上に仮想オブジェクトであるファンタジー化ブロックB0を配置した状態を、仮想表示データとして生成する。生成された仮想表示データは、合成処理部145dに入力される。
【0052】
関連情報表示部145aは、現実地図情報M1などの仮想オブジェクトの表示位置に対応する現実地図情報M1中の地理情報に関する文字情報を、当該仮想オブジェクト上に視認可能に表示させるモジュールであり、本実施形態では、地図情報抽出部145cを備えている。地図情報抽出部145cは、仮想オブジェクトに対応する現実地図情報M1の座標位置に関連付けられた文字情報を現実地図データベース35a中から読み出す。関連情報表示部145aは、この読み出された文字情報を画像情報に変換して合成処理部145dに入力する。
【0053】
合成処理部145dは、レイヤー生成部145fが生成したレイヤーに関する深度情報に従って、仮想表示データ生成部145bが生成した仮想表示データを実画像中に重畳させるモジュールである。例えば、合成処理部145dは、現実地図情報M1を下層レイヤーとする画像上に、仮想オブジェクトであるファンタジー化ブロックB0を表示させ、さらにこのファンタジー化ブロックB0上に、関連情報表示部145aから入力された文字情報を画像として重畳させて合成する。
【0054】
(システムの動作)
本実施形態では、ユーザーが移動して取得したポイントTpを消費することによって、その移動経路を仮想地図上において、キャラクターC1が移動するとともに、消費したポイントTpに応じた移動軌跡やファンタジー化ブロックとして記録及び表示するオブジェクト制御機能を備えている。また、ファンタジー化されたブロックではモンスターが出現し、このモンスターを退治するなどのイベント処理が発生され、その結果に応じてポイントTpが溜まったり、ファンタジー化領域が拡大されて位置ゲームが進行される。以下に各処理について説明する。
【0055】
(1)ゲーム進行処理
本実施形態に係る位置ゲームでは、オブジェクト制御機能によってユーザーの現実世界における移動にリンクさせて仮想世界のキャラクターを移動させ、その移動軌跡に対応したブロックをファンタジー化することをゲームの基本的なコンセプトとしている。そして、本システムによる位置ゲームでは、ユーザーの現実世界における移動距離に応じてポイントTpを発行し、このポイントTpを消費させてユーザーに対応するキャラクターC1を、拡張現実世界内、或いは仮想世界内を移動させたり、街区に対応するブロックをファンタジー化させたり、ファンタジー化されたブロックに出現するモンスターとバトルをしたりなどのイベントを発生させることによってゲームを進行させる。
【0056】
すなわち、ゲームサーバー3には、ポイント発行部38が設けられており、スマートフォン1側の位置情報取得部144で検出したユーザー10の移動距離に応じたポイントを発行する。ここでのポイントとは、交換価値を有する価値情報であり、ゲーム上の仮想世界で仮想上の通貨単位として取り扱われる。そして、本実施形態では、このポイント数に応じて、仮想世界においてキャラクターC1を移動させる処理、又は仮想世界におけるキャラクターの移動により得られる効果、例えば地図上のファンタジー化や、アイテムの入手など、実際にキャラクターC1が歩いたのと同等の効果が得られるようなイベント処理が実行されてゲームが進行されるようになっている。なお、このポイントの発行及びイベント処理を含むゲーム進行は、ゲーム進行処理部36,141が協働して実行され、そのゲームの進行過程やポイントは、ユーザーデータベース35b及びゲーム用データベース35cに記録される。
【0057】
また、本実施形態では、ユーザーが移動した累積距離や地図上の特定施設へのアクセス回数、さらには既にファンタジー化したエリアを繰り返し往来することにより、ポイントが貯まるようになっている。例えば、
図11に示すように、ユーザー10が、自宅(A地点)と勤務先のビルBldとの間を、通勤・通学等によって繰り返し往復しているとすると、その頻度に応じてポイントTpが付与され、このポイントTpを消費することによって、上述したファンタジー化処理が可能となる。すなわち、ポイントTpを消費することによって地点AとビルBldとの間のブロックがファンタジー化できるようになり、そのブロックをタッチすることにより現実地図上にファンタジー化されたブロックが重畳表示される。さらに本実施形態では、このように既にファンタジー化したエリアで取得されたポイントを用いて、
図12(a)〜(c)に示すように、既に未踏地エリアのブロックB0uも、遠隔的にファンタジー化することができるようになっている。
【0058】
なお、本実施形態では、この通勤・通学経路の軌跡については通行回数に応じて色が濃くなったり、ファンタジー化ブロックの状態が変化したりするようになっている。また、この軌跡の記録によって特定の施設(ここではビルBld)へのアクセス回数(往復回数)もカウントされ、そのカウントに応じてポイントが発行され、そのポイントを利用することで、種々の特典イベントの利用が可能となる。この特典イベントとしては、貯まったポイントにより未踏地のブロックをファンタジー化できたり、特典アイテムを入手できるようになっている。
【0059】
また、本実施形態では、ファンタジー化されたブロックは時間経過或いはゲーム進行に応じて、その状態が遷移するようになっている。詳述すると、
図8及び
図9に示すように、ユーザー10の移動距離に応じてポイントTpが発行され、そのポイントTpを消費することによって、ユーザー10に対応するキャラクターC1が現実地図情報M1上が移動される。このキャラクターC1の移動により、その移動経路に沿った街区に対応するブロックは、ユーザーが画面上をタッチすることによりファンタジー化させることが可能となる(フェーズF1)。このファンタジー化の際には、ブロック毎にポイントTpが消費される。そして、このファンタジー化されたブロックは、
図9に示すように、時間経過或いはゲーム進行に応じて、その状態が遷移される。
【0060】
先ず、キャラクターC1の移動に伴い、その移動経路に隣接するブロックでは、未タップ状態ブロックB1として現実地図情報M1の情報が白地図として表示される。そして、この未タップ状態ブロックB1をタッチする「現地タップ」操作によって活性化ブロックB2のようにファンタジー化される(フェーズF1)。このファンタジー化により、活性化ブロックB2によって、現実地図情報M1が部分的又は全体的に覆われることとなり、この活性化ブロックB2には、各ファンタジー化されたブロックの表示位置に対応する現実地図情報M1の地理情報に関する文字情報が、関連情報として当該活性化ブロックB2上に視認可能に表示される。
【0061】
なお、このときポイントTpを消費することにより、未踏地のブロックをタッチする「遠隔街区タップ」操作に応じて、移動経路から離れた未踏地ブロックB6もファンタジー化することができる(フェーズF6)。なお、この遠隔街区タップによってファンタジー化された未踏地ブロックB6では、通常の現地タップによるファンタジー化とは異なる画像が表示される。
【0062】
このファンタジー化された活性化ブロックB2は、時間が経過することにより森林等の植物が育成された「キラキラ状態」になるなどグレードアップされた活性化ブロックB3に遷移する(フェーズF2)。なお、ポイントTpを消費することによって入手される「促進剤」等の特典アイテムを使用することで、時間経過を待たずに即「キラキラ状態」に遷移させることができる。このグレードアップされて「キラキラ状態」に遷移した活性化ブロックB3では、そのブロックをタップすることによって、森林を伐採したり穀物を収穫したりするなどのイベント処理を実行できる。この収穫イベント処理によってポイントやアイテムが入手できるとともに、ファンタジー化がリセットされ、不活性ブロックB4に遷移する(フェーズF3)。この不活性ブロックB4では所定時間だけタップ操作が禁止されて一定時間ファンタジー化が不可となり、時間待ち状態となる。不活性ブロックB4では、現実地図情報M1上を部分的又は全体的に覆う仮想的なブロックが半透明や彩度が変化されて表示されて、下層の現実地図情報M1が透けて見えるように表示され、このときには関連情報の重畳表示は行われず、現実地図情報M1上に表示された文字情報等の関連情報が直接、視認可能に表示される。
【0063】
その後、この不活性ブロックB4において所定時間が経過すると活性化ブロック(未タップ状態)B5へと遷移され(フェーズF4)、再度タップ操作によるファンタジー化及び育成が可能となる(フェーズF5)。このようにファンタジー化されたブロックの状態が、サイクル的に次々と遷移されることにより、既に攻略した地域であってもゲーム性が維持されることとなる。
【0064】
(2)仮想地図表示処理
次いで、本実施形態に係る拡張現実表示処理について説明する。
図3〜
図7に拡張現実表示処理の手順を示す。
上述したとおり、本実施形態では、
図2に示すように、ユーザー10の現実地図情報M1上における移動にリンクさせて仮想地図情報M2のキャラクターを移動させ、その移動軌跡に対応した区画(街区等)をブロック単位としてファンタジー化する。このファンタジー化されたブロックB0は、現実地図情報M1上に仮想的なオブジェクトを配置した状態を表した仮想表示データであり、このブロックB0によって、現実地図情報M1が部分的又は全体的に覆われることとなり、ブロックB0に覆われた部分には仮想地図情報M2上に配置された仮想的なオブジェクトが表示される。なお、このファンタジー化ブロックB0には、各ファンタジー化ブロックの表示位置に対応する現実地図情報M1の地理情報に関する文字情報が関連情報として、当該ファンタジー化ブロックB0上に視認可能に表示される。
【0065】
詳述すると、
図3示すように、現実地図情報M1には、実際の地形や建物、道路等の地理情報が表されているとともに、地名や行政区名称等の文字情報T1が表示されている。現在ユーザー10は、
図4に示すように、現実地図情報M1上の「○○町3丁目」に位置し、その周辺がファンタジー化されている。
【0066】
具体的には、仮想表示データ生成部145bが、この現実地図情報M1に重畳される仮想表示データであるファンタジー化ブロックB0を、コンピューターグラフィックス等により生成して合成処理部145dに入力する。一方、関連情報表示部145aでは、ファンタジー化ブロックB0などの仮想オブジェクトの表示位置に対応する現実地図情報M1中の地理情報に関する文字情報T1を、当該ファンタジー化ブロックB0上に視認可能なベクターデータ若しくはラスターデータで重畳される関連情報T2として表示させる。このとき、地図情報抽出部145cは、仮想オブジェクトに対応する現実地図情報M1の座標位置に関連付けられた文字情報を現実地図データベース35a中から読み出す。関連情報表示部145aは、この読み出された文字情報を画像情報に変換して合成処理部145dに入力する。
【0067】
次いで、合成処理部145dが、現実地図情報M1を下層レイヤーとして、その上にファンタジー化ブロックB0を配置した仮想表示データを合成する。具体的には、合成処理部145dは、現実地図情報M1を下層レイヤーとする画像上に、仮想オブジェクトであるファンタジー化ブロックB0を表示させ、さらにこのファンタジー化ブロックB0上に、関連情報表示部145aから入力された文字情報を画像として重畳させて合成する。
【0068】
(3)ポイント発行処理
図13は、本実施形態に係る上記ポイント発行処理の手順を示すフローチャート図である。同図に示すように、ユーザー10のスマートフォン1では、ゲームプログラムの実行中、常時或いは定期的に位置情報の取得処理及び移動速度の算出処理を実行しゲームサーバー3に報告する(S101)。具体的には、位置情報取得部144が、加速度センサー16による検出値や、ユーザーの現在位置の変位、GPSによる緯度・経度、基地局からの電波強度及び基地局情報に基づく三角測位による基地局測位、WifiのSSID(Service SetID)及び電波状況と経度緯度を組み合わせたデータベースを利用したWifi測位等による基地局測位の変化を位置情報として取得する。
【0069】
ユーザー端末から位置情報の報告を受けたゲームサーバー3では、ユーザー毎の累積経路を記録し(S201)、ユーザー毎の移動量(累積移動距離)を算出して蓄積している。この移動量が一定以上蓄積されるまで、累積経路の記録を継続し(S202における「N」)、一定上の移動量が蓄積されると(S202における「Y」)、その移動量に応じたポイント数が価値情報として発行される(S203)。この発行されたポイントは、ユーザーのスマートフォン1側でダウンロード等により受領される(S102)。
【0070】
ユーザーのスマートフォン1側では、受領したポイントに応じてキャラクターC1を仮想地図情報M2上で移動させたり(S104)、そのポイントを貯めたりできる。また、継続してユーザー10が移動し続けて、ポイント発行を繰り返し(S103における「N」)、ポイントが一定量以上蓄積されると(S103における「Y」)、経路隣接ブロック路のファンタジー化或いは未踏地ブロックのファンタジー化をしたり、アイテムの購入などに使用したりなどの特典イベントの利用が可能となる(S105)。この特典イベントはポイント数に応じて選択的に利用が可能となり、ユーザーが利用可能な特典イベントを任意に選択し、利用要求の操作により実行される。この利用要求の操作は、ポイント数に応じたイベント発生処理に基づいて行われる。
【0071】
ユーザーがイベントの利用を選択すると、それに伴いイベントが進展され、ユーザーによるタッチ操作により、隣接ブロックや未踏地ブロックのファンタジー化が行われ(S105)、その操作結果がゲームサーバー3に報告される。このイベント進展報告を受けたゲーム側では、進展されたイベントに基づいてゲームを進行させる処理を実行する(S204)。以上のポイント発行と、その蓄積及びポイント利用によるイベント進展をゲームが終了するまで(S106及びS205における「Y」)繰り返すことができる(S106及びS205における「N」)。
【0072】
(4)一括入力操作処理
次いで、イベント時における一括入力処理について説明する。本実施形態において、ゲーム進行処理部141は、例えば、ファンタジー化したブロック上に存在するモンスターM0などに接近すると、そのモンスターと遭遇したとしてバトル等のイベント処理が実行される。
【0073】
本実施形態に係るゲーム進行処理部141には、イベント発生領域を通過中に、モンスターと遭遇しイベント処理が発生した場合に、そのイベント処理において、各モンスターに対して本来個別的に入力すべき操作を、単一の一括終了操作で遂行する入力インターフェース制御機能が備えられている。このゲーム進行処理部141では、通常、定型的なイベント処理において登場する複数の処理対象(モンスターM0等)のそれぞれに対して、ユーザー操作の入力を個別的に受け付ける個別入力ステップが実行されるが、ユーザーの選択操作に基づいて、この個別入力ステップに代えて、複数のモンスターを一括して処理する単一の一括終了操作の入力が可能となる一括終了操作ステップが設けられている。この一括終了操作の入力によって、複数のモンスターが全て処理された場合に当該イベント処理が遂行されたものとしてゲームを進行される。
【0074】
ここで、通常行われる個別入力としては、
図16に示すように、バトルに登場するモンスター一匹一匹に対して、タッチパネル上に斜線を素早く入力するスラッシュ操作や、タッチパネル上に○や×、△などの記号を描くなど、モンスターの種別に応じたサインを入力する方法が挙げられる。
【0075】
一方、一括終了操作としては、例えば
図15に示すように、スマートフォン1を傾斜させて、モンスターを一括して画面外へ排除する操作であったり、スマートフォン1を振ってモンスターを一括してショック死させる操作であったり、マイクに向かって息を吹きかけてマイクに風圧によるノイズ音を入力する操作であってもよい。なお、これら複数の処理対象であるモンスターには、処理完了に必要なしきい値としてライブポイントやレベルがそれぞれ設定されており、一括操作入力では、しきい値が所定の値以下であるモンスターのみが退治され、一定のしきい値を越えるモンスターに対しては、上述した個別入力が要求される。
【0076】
このような一括入力操作処理について具体的に説明する。
図14は、イベント処理に関する動作を示すシーケンス図である。先ず、ゲーム進行に際し、周期的に各スマートフォン1において位置情報を取得してゲームサーバー3に送信する(S401及びS301)。ゲームサーバー3側では、この送信された各ユーザーの移動距離に従ってポイントを発行し(S302)、発行されたポイントをスマートフォン1側に送信して、ユーザーに付与する(S303)。スマートフォン1側では、この付与されたポイントを受信し、ユーザー操作に基づいてポイントの利用することにより、キャラクターC1が仮想地図上を移動させたり、ブロックをファンタジー化したりできるようになる(S402)。
【0077】
そして、バトルのイベント処理が発生したときに(S403の「Y」)、ユーザーが一括処理を選択した場合(S404の「Y」)、個別処理を省略して、一括終了操作にてイベントを進行させる。また、ユーザーが一括処理を選択しない場合には、通常通りの定型的な個別入力を要求する(S406)。なお、ここでは、ユーザーによる任意の選択操作により一括処理を実行できるようにしているが、例えば、スマートフォン1側において位置情報取得部144が取得する自機の現在位置の移動速度を監視し、ユーザーの移動速度が所定値以上である場合に、当該イベントの処理において強制的に一括処理を実行するようにしてもよい。この場合、ゲーム進行処理部141が、一括処理可能イベントにおいて、複数の定型的な操作に代えて一括終了操作を強制的に選択して、個別入力操作を省略してバトルを終了させてゲームを進行させる。このとき、ユーザーの移動速度が所定値以上である場合には、バトルに登場するモンスターのレベルを低減させて、一括終了の成功率を高めるようにしてもよい。
【0078】
一方、一括処理にによって(S404の「Y」)、モンスターが全滅した場合(S405の「Y」)には、当該イベント処理が遂行されたとして同期処理部142を通じてゲームサーバー3側のゲーム進行処理部141に通知され(S407)、ゲームサーバー3側で同期処理がなされ(S304)、その実行されたイベント処理の結果が後のゲーム進行処理に反映される(S305)。他方、ステップS404で一括処理を選択しなかった場合(S404の「N」)、又は一括処理でモンスターが全滅しなかった場合(S405の「N」」)、個別定型入力を受け付け(S406)、通常通りのバトル展開と実行する。そして、バトルの終了後、その結果を、サーバー側に送信して同期処理を行い(S407)、この報告を受けたゲームサーバー3側では、同期処理がなされ(S304)、バトルの結果が、後のゲーム進行処理に反映される(S305)。
以上の処理は、ゲームが終了されるまで繰り返され(S408の「N」)、ゲーム処理の操作がなされたときに(S408の「Y」)、ゲームが終了される。
【0079】
(作用・効果)
以上説明したように、本実施形態によれば、仮想世界において、ユーザーに対応するキャラクター及びその他のオブジェクトが移動して、種々のイベント処理を実行させてゲームを進行させる位置ゲームにおいて、現実世界と仮想世界の関連性を把握し易くして、ユーザーの利便性を高め、より娯楽性を向上させることができる。
【解決手段】現実世界におけるユーザーの位置にリンクさせて仮想世界においてゲームが進行される位置ゲーム用の仮想地図表示システムであって、現実世界における地理情報、及び前記地理情報に関する文字情報を含む現実地図情報M1を記憶する現実地図記憶部と、前記ゲームの進行に従って、前記現実世界における地理情報に対応した仮想的な地理情報に関する仮想オブジェクトを、現実地図情報M1上に重畳させて表示させる仮想表示データを生成する仮想表示データ生成部145bと、仮想オブジェクトの表示位置に対応する地理情報に関する文字情報T1を、ブロックB0上に視認可能に表示させる関連情報表示部145aとを備える。