以下、本発明の一実施形態について図面に基づき詳細に説明する。
図1は、本発明の一実施形態に係る情報処理システムの全体構成図である。図1に示すように、この情報処理システムでは、インターネット等のコンピュータネットワーク10に、ユーザ位置管理サーバ12、情報サーバ14、及び複数のユーザ端末16が接続されている。
ユーザ位置管理サーバ12、及び、情報サーバ14は、それぞれ、例えば、自機にインストールされるプログラムに従って動作するCPU等のプログラム制御デバイスである制御部、ROMやRAM等の記憶素子やハードディスクドライブなどである記憶部、ネットワークボード等の通信部、等を備えた、公知のサーバコンピュータを中心に構成されている。
また、ユーザ端末16はバッテリ駆動する可搬型のコンピュータゲームシステムであり、図2にその外観の一例を示すように前面にタッチスクリーン16aを備えている。また、ユーザ端末16は、GPS(Global Positioning System)を利用して当該ユーザ端末16の位置(緯度及び経度)を測定するための測位ユニット16b、及び、データ通信を行うための通信部(本実施形態では、例えば、携帯電話網を利用したデータ通信を行うための携帯電話通信ユニット16c、及び、無線LANを利用したデータ通信を行うための無線LAN通信ユニット16d)を内蔵している。また、ユーザ端末16は、この他に、例えば、ユーザ端末16にインストールされるプログラムに従って動作するCPU等のプログラム制御デバイスである制御部、ROMやRAM等の記憶素子やハードディスクドライブなどである記憶部、ボタン等、を備えている。ユーザ端末16は、携帯電話通信ユニット16c又は無線LAN通信ユニット16dを通信環境に応じて選択的に利用して、コンピュータネットワーク10に接続し、ユーザ位置管理サーバ12や情報サーバ14とデータ通信ができるようになっている。
ユーザ端末16は、衛星信号を利用して自機の位置を繰り返し測定し、それらの測位結果を保持している。なお、後述するように、ユーザ端末16は他の方法により測位してもよい。また、ユーザ端末16は、ゲームプログラムの実行実績を示すデータも保持しており、測位結果及びゲームの実行実績のデータは、ユーザ操作に応じて、或いは一定時間毎に自動的に、ユーザ位置管理サーバ12にアップロードされる。ユーザ位置管理サーバ12は、こうして多数のユーザ端末16からアップロードされる測位結果及び実行実績のデータを保持している。
図3は、ユーザ端末16のタッチスクリーン16aに表示されるメインメニュー画像20の一例を示している。メインメニュー画像20は、ユーザ端末16を起動し、本実施形態に係るプログラムを実行した後に最初に表示されるものである。メインメニュー画像20には、ボタンアイコン22、ボタンアイコン24、ボタンアイコン26、ボタンアイコン28、ボタンアイコン30及びメッセージ32が配置されている。本実施形態では、ボタンアイコン22、ボタンアイコン24、ボタンアイコン26、ボタンアイコン28、及び、ボタンアイコン30は、タッチスクリーン16aをタップすることによりユーザが操作することができる(すなわち、ユーザによってタップ可能になっている)。
メッセージ32には、ボタンアイコン22、ボタンアイコン24、ボタンアイコン26、及び、ボタンアイコン28に関連する情報が表示される。また、ユーザがメッセージ32の領域をタップすることにより、メッセージ32の詳細もタッチスクリーン16aに表示させることができる。また、ユーザがボタンアイコン30をタップすることにより、ユーザ端末16は、上述した測位結果及びゲームの実行実績のデータをユーザ位置管理サーバ12にアップロードする。
図4は、ユーザがボタンアイコン22をタップした際に表示される移動経路画像40の一例を示す図である。移動経路画像40の全体は、実際は縦長形状であり、タッチスクリーン16aには、その一部が表示されている。そして、タッチスクリーン16aに対してユーザがフリックなどの所定の操作を行うことにより、タッチスクリーン16aに表示される部分を変化させることができ、これにより、移動経路画像40の全体のうち任意の部分をタッチスクリーン16aに表示させることができることとなる。
ユーザ端末16は、自機位置を繰り返し測定しており、それら測定された位置を保持している。移動経路画像40には、保持されている位置で発生したイベントを示すイベント文字列及び測定日時が配置されたイベントレコード画像42が測定順に配置されている。本実施形態では、イベントレコード画像42は、新しい測定結果に対応付けられるものほど上に配置される。また、イベントレコード画像42はタップ可能となっている。ここでは、イベントレコード画像42には、イベント文字列及び測定日時が配置されたものを採用したが、イベント文字列の代わりに保持されている位置の住所を表す住所文字列が配置されていてもよい。測位位置に対応付けられる住所文字列は、測位位置に関連付けられてユーザ端末16で予め記憶しておいてもよいし、同様にして情報サーバ14で記憶しておいてもよい。後者の場合は、情報サーバ14に測位位置を送信すると、その測位位置に関連付けられている住所文字列を情報サーバ14が読み出し、それをユーザ端末16に返信する。
ユーザ端末16は、測位ユニット16bにより自らの位置を繰り返して測定しつつも、新たに測定された位置が既に保持されている最新の位置から所定距離(例えば2km)以上離れているときだけ、当該新たに測定された位置を保持するようにしている。逆に、新たに測定された位置が既に保持されている最新の位置から所定距離未満しか離れていなければ、当該新たに測定された位置を保持しない。さらに、ユーザ端末16においては、測位結果を所定数(例えば20)だけ保持するが、そのうちユーザ端末16の移動経路を表すのに有意義な一部の測位結果を選出する。例えば、前回の測位時刻からの経過時間、前回測位された位置からの距離の増加関数である評価値を各測位結果について計算し、その上位から所定数を選出する。そして、選出された測位結果に対応するイベントレコード画像42のみを移動経路画像40に含める。こうすることで、有意な移動のみを移動経路画像40に表すことができ、理解しやすい移動経路画像40とすることができる。また、無駄な表示を抑制して、タッチスクリーン16aを効率的に利用することができる。また、各イベントレコード画像42の左端には、イベントレコード画像42に配置されたイベント文字列が表すイベントに対応付けられるイベント画像44が配置されている。
各イベントレコード画像42の左側には、白地又は黒地の足跡画像が表されている。白地の足跡画像は、対応するイベントレコード画像42が一定時間毎に自動的に測位した結果に対応付けられるものであることを表している。また、黒地の足跡画像は、対応するイベントレコード画像42が、ユーザの操作に応じて測位した結果に対応付けられるものであることを表している。
図5は、図4の移動経路画像においてイベントレコード画像42がタップされたときにタッチスクリーン16aに表示されるレーダー画像50を示している。レーダー画像50の中央には、自らを示す黒丸が表されており、その周囲にはプライバシー設定を「パブリック」とした他のユーザのアバター画像52が表されている。アバター画像52は、タップ可能になっている。また、レーダー画像50には、プライバシー設定を「プライベート」とした他ユーザの存在を暗示する小画像54も表されている。ここで、アバター画像52は、実際に測位ユニット16bにより測定された位置に基づいてタッチスクリーン16aにおける表示位置が決定されている。すなわち、測位ユニット16bにより測定されユーザ位置管理サーバ12にアップロードされた位置に基づいて、自らの位置を基準とした、他の「パブリック」に係るユーザの相対的位置が算出され、算出される相対的位置に基づいて各アバター画像52のタッチスクリーン16aにおける表示位置が決定される。一方、小画像54のタッチスクリーン16aにおける表示位置は乱数に従って決定されている。また、レーダー画像50の上端には、タップされたイベントレコード画像42、及び、当該イベントレコード画像42が示すイベントが発生した位置の住所を表す住所文字列が配置されている。
ユーザが図3に示すメインメニュー画像20に配置されたボタンアイコン24をタップした際には、各友人のアバター画像52及び該友人に関する最新情報が配置されたフレンド画像がタッチスクリーン16aに表示される。フレンド画像も縦長形状であり、タッチスクリーン16aにはその一部に設定される表示範囲のみが表示される。そして、タッチスクリーン16aに対してユーザが所定の操作を行うことにより、表示範囲を移動させることができる。
図6は、図3のメインメニュー画像に表されたボタンアイコン28をタップしたときにタッチスクリーン16aに表示される設定画像60を示している。設定画像60において、「アイテム設定」と表示された領域をユーザがタップすると、図7に例示するアイテム設定画像62がタッチスクリーン16aに表示される。
アイテム設定画像62には、文字列「アイテム自動ダウンロード設定」が示されている画像が配置されている。この画像は、ユーザによってタップ可能になっている。また、アイテム設定画像62には、文字列「遊んだことのあるゲームのアイテムだけを発見する」が示されている画像も配置されており、さらに、この画像の右横に、ユーザによってタップ可能なチェックボックス(以下、発見制限チェックボックスCB1と呼ぶ。)が配置されている。発見制限チェックボックスCB1は、ユーザによりタップされる度に、チェック状態(チェックが表示される状態)とアンチェック状態(チェックが表示されない状態)とが切り替わる。
文字列「アイテム自動ダウンロード設定」が示されている画像がユーザによってタップされると、図8に例示する自動ダウンロード設定画像64がタッチスクリーン16aに表示される。
自動ダウンロード設定画像64には、ユーザ端末16にインストールされているゲームプログラムのそれぞれについての個別設定画像66が縦に並べて配置されている。個々の個別設定画像66には、ゲームプログラムを代表する情報(例えば、ゲームプログラムを代表する画像及びゲームプログラムの名称を示す文字列)と、ユーザによりタップ可能なチェックボックス(以下、自動ダウンロードチェックボックスCB2と呼ぶ。)と、が横に並べて配置されている。自動ダウンロードチェックボックスCB2は、ユーザによりタップされる度に、チェック状態(チェックが表示される状態)とアンチェック状態(チェックが表示されない状態)とが切り替わる。自動ダウンロードチェックボックスCB2がチェック状態である個別設定画像66に対応するゲームプログラムについては、ゲームプログラムに関連付けられるアイテムに関する所与の条件を満足する場合に、ユーザからのダウンロード許諾の受付を待たずに当該アイテムがユーザ端末16に情報サーバ14からダウンロードされる状態(以下、自動ダウンロード状態)に設定される。一方、自動ダウンロードチェックボックスCB2がアンチェック状態である個別設定画像66に対応するゲームプログラムについては、ゲームプログラムに関連付けられるアイテムに関する所与の条件を満足する場合に、ユーザからのダウンロード許諾の受付に応じて当該アイテムがユーザ端末16に情報サーバ14からダウンロードされる状態(以下、手動ダウンロード状態)に設定される。
図9は、ユーザが図3に示すメインメニュー画像20に配置されたボタンアイコン26をタップした際に表示されるディスカバリー画像70の一例を示す図である。ディスカバリー画像70では、文字列「Events」が示されている画像、及び、文字列「Players」が示されている画像が配置されている。また、これらの画像は、ユーザによってタップ可能になっている。そして、ユーザによって、文字列「Events」が示されている画像、又は、文字列「Players」が示されている画像がタップされることで、ディスカバリー画像70の下側に表示される情報が切り替わるようになっている。
例えば、ユーザにより図3のメインメニュー画像に表されたボタンアイコン26がタップされた際、並びに、ユーザにより文字列「Events」が示されている画像がタップされた際には、図9に示すように、ディスカバリー画像70の下側に、発生したイベント(本実施形態では、例えば、アイテムの発見イベント)の内容が一覧で表示される。本実施形態では、アイテムの発見イベントは、アイテム情報72に対応付けられる。一方、ユーザにより文字列「Players」が示されている画像がタップされた際には、ディスカバリー画像70の下側に、予め定められた条件を満足するユーザに対応する情報が一覧で表示される。
本実施形態では、アイテム情報72は、縦一列に並べてタッチスクリーン16aに配置される。そして、アイテム情報72が配置されている領域の全体は、実際は縦長形状であり、図9にはその上端が表示されている。そして、タッチスクリーン16aに対してユーザがフリックなどの所定の操作を行うことにより、タッチスクリーン16aに表示されるアイテム情報72を変化させることができる。図10に、ディスカバリー画像70として4つのアイテム情報72がタッチスクリーン16aに表示されている様子の一例を示す。
アイテム情報72には、ゲームプログラムに対応付けられるアイコン、及び、当該アイコンの右側に配置された、アイテムに対応付けられるアイコン、ゲームプログラムの名称、アイテムの名称、及び、アイテムの残存有効期間が配置された画像と、が含まれている。また、ダウンロード済のアイテムについては、ゲームプログラムに対応付けられるアイコンの右下に、ダウンロード済であることを表すマーク(本実施形態では、例えば、内部にチェックマークが配置された円形画像)が配置される。
アイテム情報72はタップ可能となっており、例えば、ユーザによりアイテム情報72がタップされた際には、タップされたアイテム情報72に対応するアイテムの詳細を示すアイテム詳細画像74が、タッチスクリーン16aに表示される。図11は、図10に示されている上から2番目のアイテム情報72がタップされた際に表示されるアイテム詳細画像74の一例を示す図である。図12は、図10に示されている下から2番目のアイテム情報72がタップされた際に表示されるアイテム詳細画像74の一例を示す図である。
なお、本実施形態では、図5に示すレーダー画像50に配置されているアバター画像52をタップすると、アバター画像52に対応するユーザのユーザ端末16で実行されたゲームプログラムの名称が5つ表示される。そして、表示されるゲームプログラムの名称をユーザがタップした際には、当該ゲームプログラムについて発見されたアイテムのアイテム詳細画像74がタッチスクリーン16aに表示される。
アイテム詳細画像74には、アイテムを提供したユーザの識別子であるユーザID、アイテムの提供日時、アイテムに対応付けられるアイコン、及び、アイテムの内容が配置されている。また、アイテム詳細画像74の右上にはアイテムの有効期限が配置されている。また、アイテム詳細画像74の右下にはアイテムに対応付けられるゲームプログラムの名称が配置されている。また、アイテム詳細画像74の左下には、タップすることで実行される処理に応じたアイコンが配置される。
本実施形態では、例えば、図11に示すように、まだダウンロードされていないアイテムのアイテム詳細画像74の左下には、当該アイテムのダウンロード処理を示す下向きの矢印が丸印の中に配置されたアイコンI1が配置される。当該アイコンI1はタップ可能となっており、例えば、ユーザにより、当該アイコンI1がタップされた際には、アイテム詳細画像74に対応付けられるアイテムが情報サーバ14からユーザ端末16にダウンロードされる。そして、本実施形態では、アイテムがユーザ端末16にダウンロードされた際に、ユーザは、当該アイテムに対応付けられるゲームプログラムを、自動ダウンロード状態に設定するか否か(すなわち、当該ゲームプログラムに対応付けられるアイテムについては、以後、ユーザからのダウンロード許諾の受付を待たずにユーザ端末16に情報サーバ14からダウンロードされるようにするか否か)について設定することができるようになっている。
また、本実施形態では、例えば、図12に示すように、ダウンロード済のアイテムのアイテム詳細画像74の左下には、当該アイテムに対応付けられるゲームプログラムの起動処理を示すアイコン(文字列「start」が配置されたアイコンI2)が配置される。当該アイコンI2はタップ可能となっており、例えば、ユーザにより、当該アイコンI2がタップされた際には、ユーザ端末16は、アイテム詳細画像74に対応付けられるゲームプログラムを起動させる。このようにして、ユーザはゲームをプレイすることができることとなる。
以上説明した情報処理システムの構成のうち、特に、アイテムに関する構成について、さらに詳細に説明する。図13は、ユーザ端末16の機能の一例を示す機能ブロック図である。図13に示すように、ユーザ端末16は、機能的に、測位部80、位置座標記憶部82、アプリケーション実行部84、ゲーム実績記憶部86、設定情報記憶部88、入出力制御部90、位置座標送信部92、アイテムID通信部94、アイテム管理部96、及び、アイテム記憶部98、を含んでいる。図13には、主に、アイテムに関する機能が示されている。なお、本実施形態に係るユーザ端末16が、図13に示されていない機能を有していてもよい。本実施形態では、例えば、コンピュータであるユーザ端末16にインストールされた、図13に示す各部の機能に対応する命令を含むプログラムを、ユーザ端末16の制御部で実行することにより、ユーザ端末16は、図13に示す各部として機能する。このプログラムは、例えば、光ディスク、磁気ディスク、磁気テープ、光磁気ディスク、フラッシュメモリ等のコンピュータ可読な情報記憶媒体を介して、あるいは、インターネットなどの通信手段を介してユーザ端末16に供給される。
測位部80は測位ユニット16bを中心として構成されており、定期的(例えば30分おき)に測位ユニット16bを起動して衛星信号(GPS信号)を受信し、そこから位置座標(緯度及び経度)を生成する。ユーザが明示的にタッチスクリーン16aを利用して測位を指示した場合にも、測位ユニット16bを起動して衛星信号を受信し、そこから位置座標を生成してよい。
測位部80は、無線LAN通信ユニット16dにより通信可能な無線アクセスポイントの識別情報その他の必要な情報に基づき、ユーザ端末16の位置座標を取得してもよい。例えば、コンピュータネットワーク10に接続された図示しないサーバにおいて無線アクセスポイントの識別情報と位置座標とを関連付けて記憶しておき、測位部80は該サーバに識別情報を送信することで、該識別情報に関連付けられた位置座標を取得する。測位部80がサーバに複数の無線アクセスポイントの識別情報及び各無線アクセスポイントからの電波の強度を送信し、サーバでは、電波強度による重み付けをして各無線アクセスポイントの位置座標を合成することにより、位置座標を算出し、測位部80に返信してもよい。同様に、携帯電話通信ユニット16cにより通信可能な携帯電話基地局の識別情報その他の必要な情報に基づき、ユーザ端末16の位置座標を取得してよい。なお、位置座標を測位部80が取得し、ユーザ位置管理サーバ12に送信する代わりに、無線アクセスポイントや携帯電話基地局の識別情報その他の必要な情報をユーザ位置管理サーバ12に送信し、該ユーザ位置管理サーバ12がそれらの情報に対応する位置座標を取得してもよい。
位置座標記憶部82は、図14に示すように所定数(例えば10)の位置座標及び該位置座標の測定日時を関連付けて記憶するものである。測位部80は、位置座標を生成する度に、位置座標記憶部82に最後に格納された位置座標を読み出し、新たに生成した位置座標と読み出された位置座標との間の距離を算出する。そして、測位部80は、所定距離(例えば2km)以上であれば、新たに生成した位置座標を該位置座標の測定日時とともに位置座標記憶部82に記憶する。このとき、測位部80は、測定日時から所定日数(例えば7日間)を超えている位置座標と測定日時との組合せは削除する。また、測定日時から所定日数を超えていない位置座標と測定日時との組合せが当該所定数だけ位置座標記憶部82に既に記憶されていれば、測位部80は、最も古い位置座標と測定日時との組合せを削除し、代わりに新たに生成した位置座標を測定日時とともに格納する。一方、新たに生成した位置座標と読み出された位置座標との間の距離が所定距離未満であれば、測位部80は、位置座標記憶部82に格納せず破棄する。
アプリケーション実行部84は、アプリケーションプログラム(本実施形態では、例えば、ゲームプログラム)を実行する。アプリケーションプログラムは、コンピュータネットワーク10を介して他のコンピュータからダウンロードされてもよいし、CD−ROMやDVD−ROMなどのコンピュータ可読な情報記憶媒体に格納され、そこからユーザ端末16にインストールされてよい。
ゲーム実績記憶部86は、図15に示すようにアプリケーション実行部84で最近実行された所定数(例えば5つ)のゲームプログラムのタイトルID、視聴レベル、総プレイ時間、最終プレイ日時を関連付けて記憶するものである。タイトルIDは、個々のゲームプログラムを識別する情報である。総プレイ時間は、これまで当該ゲームプログラムを遊んだ総時間である。視聴レベルは、ユーザが当該ゲームにどの程度熱中しているかを示す情報であり、当該ゲームプログラムの発売日と現在の日付との差や総プレイ時間などの情報から算出される。最終プレイ日時は、当該ゲームプログラムを最後にプレイした日時(起動日時又は終了日時)である。また、アプリケーション実行部84が実行するゲームプログラムにおいて所与のアイテム発生条件を満足すると、アプリケーション実行部84は、当該アイテム発生条件に応じたアイテムの識別情報であるアイテムIDをゲーム実績記憶部86に記憶させる。
設定情報記憶部88は、ユーザに関する設定を表す各種情報を記憶するものである。設定情報記憶部88には、具体的には、例えば、ユーザ端末16にインストールされているゲームプログラムそれぞれについての、当該ゲームプログラムが自動インストール状態であるか否かを示すインストールフラグ、遊んだことのあるゲームのアイテムだけを発見するか否かの設定を示す発見制限フラグ、プライバシー設定に関する情報、などが記憶されている。
入出力制御部90は、ユーザ端末16のタッチスクリーン16aに表示される各種画面の生成や表示、ユーザによるタッチスクリーン16aへの操作に応じた処理の実行、等を行う。
例えば、アイテム設定画像62の発見制限チェックボックスCB1がチェック状態となると、入出力制御部90は、発見制限フラグの値を、遊んだことのあるゲームのアイテムだけを発見することを示す値(本実施形態では、例えば、「1」)に設定する。そして、アイテム設定画像62の発見制限チェックボックスCB1がアンチェック状態となると、入出力制御部90は、発見制限フラグの値を、すべてのゲームのアイテムを発見することを示す値(本実施形態では、例えば、「0」)に設定する。
また、例えば、個別設定画像66の自動ダウンロードチェックボックスCB2がチェック状態となると、入出力制御部90は、当該個別設定画像66に対応付けられるゲームプログラムについてのインストールフラグの値を、自動インストール状態を示す値(本実施形態では、例えば、「1」)に設定する。そして、個別設定画像66の自動ダウンロードチェックボックスCB2がアンチェック状態となると、入出力制御部90は、個別設定画像66に対応付けられるゲームプログラムについてのインストールフラグの値を、手動インストール状態を示す値(本実施形態では、例えば、「0」)に設定する。
位置座標送信部92は、位置座標記憶部82に格納されている複数の位置座標と測定日時との組合せ、及びゲーム実績記憶部86に記憶されている所定数のゲームプログラムのタイトルIDと、視聴レベルと、総プレイ時間との組合せを、携帯電話通信ユニット16c又は無線LAN通信ユニット16dを利用してユーザ位置管理サーバ12に送信する。この送信は、ユーザが明示的にタッチスクリーン16aを利用して送信を指示した場合に行ってよい。このとき、位置座標記憶部82に格納されている位置座標と測定日時との組合せを複数タッチスクリーン16aに表示して、ユーザ位置管理サーバ12に送信してよいかどうか確認すれば好適である。さらに、送信したくない位置座標及び測定日時の組を削除し、残りの組だけユーザ位置管理サーバ12に送信できるようにしてもよい。また、こうした確認を省略する設定をユーザに行わせてもよい。この場合、定期的(例えば1日1回)に位置座標記憶部82に格納されている複数の位置座標と測定日時との組合せを自動送信する。位置座標送信部92が送信されたデータはユーザ位置管理サーバ12で管理される。
アイテムID通信部94は、アイテムの識別情報であるアイテムIDの送信や後述するギフトデータの受信を行うものである。上述のように、アプリケーション実行部84が実行するゲームプログラムにおいて、所与のアイテム発生条件を満足すると、アプリケーション実行部84は、実行されているゲームプログラムのタイトルID、及び、当該アイテム発生条件に応じたアイテムの識別情報であるアイテムIDをゲーム実績記憶部86に記憶させる。こうしてタイトルID及びアイテムIDがゲーム実績記憶部86に記憶されると、アイテムID通信部94は、このタイトルID及びアイテムIDを、位置座標記憶部82に記憶されている少なくとも1つの位置座標(例えば、最新の位置座標)、及び、ユーザ端末16のユーザの識別情報であるユーザIDとともに、携帯電話通信ユニット16c又は無線LAN通信ユニット16dを利用してユーザ位置管理サーバ12に送信する。
本実施形態に係るユーザ位置管理サーバ12では、位置座標を、管理対象となる領域(例えば地球上の全領域)を多数のメッシュに分割した場合における各メッシュ状領域を特定(指定)する情報である領域IDによって管理する。
ユーザ位置管理サーバ12は、アイテムID通信部94から送信される、タイトルID、アイテムID、位置座標、及び、ユーザIDを受信すると、受信した位置座標が含まれる領域の領域IDを導出する。そして、ユーザ位置管理サーバ12は、受信したデータに基づいて、当該アイテムの有効期限を決定する。本実施形態では、現在日時の3ヶ月後が有効期限として設定されることとする。そして、ユーザ位置管理サーバ12は、受信したタイトルID、受信したアイテムID、受信したユーザID、及び、決定された有効期限の組合せを、送信された位置座標のいずれかが含まれる領域の領域IDに関連付けて記憶する。以下、互いに関連付けられた、領域ID、タイトルID、アイテムID、ユーザID、及び、有効期限を含むデータを、ギフトデータと呼ぶこととする。図16に、ユーザ位置管理サーバ12に記憶されるギフトデータの一例を模式的に示す。
アイテムID通信部94は、ユーザ位置管理サーバ12に記憶されているギフトデータを所定のタイミングで受信する処理も行う。この場合、アイテムID通信部94は、位置座標記憶部82に記憶されている位置座標をユーザ位置管理サーバ12に送信する。すると、ユーザ位置管理サーバ12は、受信した位置座標が含まれる領域の領域IDに関連付けて記憶された1又は複数のギフトデータを返信する。そして、アイテムID通信部94は、ユーザ位置管理サーバ12から送信される1又は複数のギフトデータを受信する。
ここで、本実施形態に係るユーザ端末16で、1又は複数のギフトデータを受信した際に行われる処理の流れの一例を、図17A及び図17Bに例示するフロー図を参照しながら説明する。
なお、図18に、以下の説明で用いられる、受信したギフトデータの状態遷移の一例を概念的に示す。また、本実施形態では、ユーザ端末16では、ゲーム実績記憶部86に、受信したギフトデータを管理するアイテム管理キュー(初期状態では、空)が予め記憶されていることとする。図19に、以下の説明で用いられる、アイテム管理キューの一例を概念的に示す。図19に示すように、アイテム管理キューは、概念的には、発見済キューQ1と無視キューQ2とを含んでいる。発見済キューQ1や無視キューQ2には、ギフトデータがエンキューされることとなる。なお、図19において、発見済キューQ1や無視キューQ2の中に示されている丸印は、ギフトデータに相当する。
まず、アイテム管理部96は、アイテムID通信部94が受信するギフトデータのうち、以下の処理がまだ実行されていないものが存在するか否かを確認する(S101)。存在する場合は(S101:Y)、以下の処理がまだ実行されていないギフトデータを1つ特定する(S102)。
そして、アイテム管理部96は、S102に示す処理で特定されたギフトデータが、発見済キューQ1又は無視キューQ2に含まれているか否かを確認する(S103)。そして、アイテム管理部96は、S102に示す処理で特定されたギフトデータが発見済キューQ1又は無視キューQ2に含まれている場合には(S103:Y)、S101に示す処理に戻る。
S102に示す処理で特定されたギフトデータが発見済キューQ1又は無視キューQ2に含まれていない場合には(S103:N)、アイテム管理部96は、発見制限フラグの値が「1」であるか否かを確認する(S104)。そうである場合は(S104:Y)、アイテム管理部96は、当該ギフトデータに含まれるタイトルIDにより識別されるゲームプログラムがユーザ端末16で実行済であるか否か(当該ギフトデータに対応付けられているゲームがユーザ端末16でプレイ済であるか否か)を確認する(S105)。ここで、当該ギフトデータに含まれるタイトルIDにより識別されるゲームプログラムが実行済でないことが確認された場合は(S105:N)、S101に示す処理に戻る。
S104に示す処理で、発見制限フラグの値が「0」であることが確認された場合(S104:N)、又は、S105に示す処理で、当該ギフトデータに含まれるタイトルIDにより識別されるゲームプログラムが実行済であることが確認された場合(S105:Y)は、アイテム管理部96は、乱数等に基づいて、当該ギフトデータが発見されたこととするか否かを決定する(S106)。アイテム管理部96は、本実施形態では、例えば、確率pで当該ギフトデータが発見されたと決定し、確率(1−p)で当該ギフトデータが発見されなかったと決定することとする。
S106に示す処理でギフトデータが発見されなかったと決定された場合は(S106:N)、アイテム管理部96は、当該ギフトデータを、ユーザ位置管理サーバ12に送信した位置座標、並びに、当該ギフトデータの受信日時に関連付けた上で、無視キューQ2に追加(エンキュー)する(図19中の矢印A)(S107)。このときのギフトデータの状態は、図18における状態ST1に相当する。このとき、アイテム管理部96は、無視キューQ2に含まれているギフトデータの数が所定数を超えているか否か(例えば、100を超えているか否か)を確認する(S108)。ここで、無視キューQ2に含まれているギフトデータの数が所定数を超えていない場合は(S108:N)、S101に示す処理に戻る。
無視キューQ2に含まれているギフトデータの数が所定数を超えている場合は(S108:Y)、アイテム管理部96は、無視キューQ2の先頭に配置されているギフトデータ(すなわち、最も古いタイミングにエンキューされたギフトデータ)を削除(デキュー)して(図19中の矢印B)(S109)、S101に示す処理に戻る。なお、このとき、デキューされたギフトデータの状態は、図18における終了状態に相当する。
一方、S106に示す処理でギフトデータが発見されたと決定された場合は(S106:Y)、アイテム管理部96は、当該ギフトデータを、ユーザ位置管理サーバ12に送信した位置座標、並びに、当該ギフトデータの受信日時に関連付けた上で、発見済キューQ1に追加(エンキュー)する(図19中の矢印C)(S110)。このときのギフトデータの状態は、図18における状態ST2に相当する。
そして、アイテム管理部96は、発見済キューQ1に含まれているギフトデータの数が所定数を超えているか否か(例えば、100を超えているか否か)を確認する(S111)。
発見済キューQ1に含まれているギフトデータの数が所定数を超えている場合は(S111:Y)、アイテム管理部96は、発見済キューQ1の先頭に配置されているギフトデータ(すなわち、最も古いタイミングにエンキューされたギフトデータ)を削除(デキュー)する(図19中の矢印D)(S112)。なお、このとき、デキューされたギフトデータの状態は、図18における終了状態に相当する。
S111に示す処理で発見済キューQ1に含まれているギフトデータの数が所定数を超えていないことが確認された場合(S111:N)、又は、S112に示す処理が終了した場合は、アイテム管理部96は、当該ギフトデータに含まれるタイトルIDに基づいて、当該タイトルIDに対応付けられるゲームプログラムについてのインストールフラグの値が「1」であるか否かを確認する(S113)。ここで、当該タイトルIDに対応付けられるゲームプログラムについてのインストールフラグの値が「0」である場合は(S113:N)、S101に示す処理に戻る。
一方、当該タイトルIDに対応付けられるゲームプログラムについてのインストールフラグの値が、自動ダウンロード状態を示す値である場合には(S113:Y)、アイテム管理部96は、当該ギフトデータに含まれるアイテムIDに対応するアイテムのデータを情報サーバ14からダウンロードする(S114)。
S114に示す処理では、アイテム管理部96は、例えば、当該ギフトデータに含まれるアイテムIDに対応するアイテムの送信要求を情報サーバ14に送信する。そして、情報サーバ14が、当該送信要求に応じて、要求されたアイテムのデータをユーザ端末16に送信する。そして、ユーザ端末16のアイテム管理部96は、アイテムのデータを受信して、アイテム記憶部98に当該データを記憶させる。
そして、アイテム管理部96は、S114に示す処理でダウンロードされたアイテムに対応するギフトデータに、ダウンロード済フラグを関連付けて(S115)、S101に示す処理に戻る。このときのギフトデータの状態は、図18における状態ST3に相当する。
S101に示す処理で、アイテムID通信部94が受信するギフトデータのうち、上述の処理がまだ実行されていないものが存在しないことが確認された場合は(S101:N)、本処理例に示す処理を終了する。このように、本実施形態に係るユーザ端末16は、アイテムID通信部94が受信するギフトデータのすべてが上述のS102に示す処理で特定されるまで、上述の処理を繰り返し実行することとなる。
なお、本実施形態では、入出力制御部90は、メインメニュー画像20をタッチスクリーン16aに表示させる際に、ボタンアイコン26の右下に、新たに発見されたアイテムの数(例えば、本実施形態に係るプログラムの前回の終了日時以降に、上述のS106に示す処理で発見されたと判定されたギフトデータの数)が内部に記載されたアイコンが配置される。
本実施形態では、入出力制御部90は、ディスカバリー画像70を生成して、タッチスクリーン16aに表示させるにあたって、発見済キューQ1に含まれているギフトデータの受信日時が遅いものから順に上から下へ配置されるよう、ギフトデータに対応付けられるアイテム情報72を配置する。そして、入出力制御部90は、ダウンロード済フラグが関連付けられるギフトデータには、ゲームプログラムに対応付けられるアイコンの右下にダウンロード済であることを表すマークを配置する。このように、本実施形態では、入出力制御部90は、ゲームプログラムで利用されるアイテムが利用可能である旨をユーザに通知する役割を果たしている。このようにして、本実施形態では、アイテムの発見イベントが発生したことをユーザはディスカバリー画像70を介して認識することができることとなる。
なお、ゲームプログラムに対応付けられるアイコン及びゲームプログラムの名称は、タイトルIDに関連付けられてユーザ端末16で予め記憶しておいてもよいし、同様にして情報サーバ14で記憶しておいてもよい。後者の場合は、情報サーバ14にタイトルIDを送信すると、そのアイテムIDに関連付けられているアイコン及び名称を情報サーバ14が読み出し、それをユーザ端末16に返信する。また、アイテムに対応付けられるアイコン及びアイテムの名称は、アイテムIDに関連付けられてユーザ端末16で予め記憶しておいてもよいし、同様にして情報サーバ14で記憶しておいてもよい。後者の場合は、情報サーバ14にアイテムIDを送信すると、そのアイテムIDに関連付けられているアイコン及び名称を情報サーバ14が読み出し、それをユーザ端末16に返信する。
ディスカバリー画像70がタッチスクリーン16aに表示されている際に、ダウンロード済であることを表すマークが配置されているアイテム情報72をユーザがタップした場合は、入出力制御部90は、図12に例示するアイテム詳細画像74を生成して、タッチスクリーン16aに表示させる。そして、ユーザが、当該アイテム詳細画像74の左下に配置されている、文字列「start」が配置されたアイコンをタップすると、アプリケーション実行部84が、当該アイテム詳細画像74に対応付けられるゲームプログラムを起動して、その実行を開始する。
一方、ディスカバリー画像70がタッチスクリーン16aに表示されている際に、ダウンロード済であることを表すマークが配置されていないアイテム情報72をユーザがタップした際には、入出力制御部90は、図11に例示するアイテム詳細画像74を生成して、タッチスクリーン16aに表示させる。そして、ユーザが、当該アイテム詳細画像74の左下に配置されている、当該アイテムがダウンロード可能であることを示すアイコンをタップすると、アイテム管理部96が、当該アイテム詳細画像74に対応付けられるアイテムのデータを情報サーバ14からダウンロードして、アイテム記憶部98に記憶させるとともに、当該アイテム詳細画像74に対応付けられるギフトデータにダウンロード済フラグを関連付ける。なお、ダウンロードされたアイテムのデータに対応付けられるギフトデータの状態は、図18における状態ST3に相当する。
ここで、アイテムのダウンロードが終了すると、入出力制御部90は、ダウンロードされたアイテムに関連付けられているゲームプログラムについて、以後、当該ゲームプログラムに関連付けられているアイテムを自動ダウンロードとするか否かを問い合わせる、図20に例示する問い合わせ画像100をタッチスクリーン16aに表示させる。問い合わせ画像100には、それぞれタップ可能である、文字列「はい」が記載されたボタンと、文字列「いいえ」が記載されたボタンと、が配置されている。
ここで、ユーザが、文字列「いいえ」が記載されたボタンをタップすると、入出力制御部90が、ディスカバリー画像70をタッチスクリーン16aに表示させる。文字列「はい」が記載されたボタンをタップすると、アイテム管理部96は、当該ゲームプログラムのインストールフラグの値を、自動インストール状態を示す値(例えば、「1」)に設定した上で、入出力制御部90が、ディスカバリー画像70をタッチスクリーン16aに表示させる。このようにして、本実施形態によれば、ユーザは、アイテムのダウンロードが終了した際に表示される問い合わせ画像100を介して、当該アイテムに関連付けられているゲームプログラムについて、自動インストール設定に変更することができる。
また、本実施形態では、アプリケーション実行部84が、ゲームプログラムを実行する際に、当該ゲームプログラムが、当該ゲームプログラムに関連付けられているアイテムのデータを利用して、処理を実行することがある。そして、アプリケーション実行部84は、アイテムのデータを利用した際に、当該データを削除することがある。
また、本実施形態では、状態ST2のギフトデータについて、関連付けられている有効期限が経過した際に、アイテム管理部96は、当該ギフトデータに有効期限切れフラグを関連付ける。なお、このときのギフトデータの状態は、状態ST4に相当する。当該ギフトデータに対応付けられるアイテムのデータは、ダウンロードが不可となる。
本実施形態では、状態ST3のギフトデータについて、関連付けられている有効期限が経過した際に、アイテム管理部96は、当該ギフトデータに有効期限切れフラグを関連付ける。なお、このときのギフトデータの状態は、図18における状態ST5に相当する。当該ギフトデータに対応付けられるアイテムのデータは、アプリケーション実行部84で実行されるゲームプログラムによる利用が不可となる。
また、本実施形態では、例えば、アイテムのデータが削除される際等、所定の処理が実行される際に、アイテム管理部96が、当該データに対応付けられるギフトデータを、発見済キューQ1からデキューして、無視キューQ2にエンキューするようにしてもよい。このとき、アイテム管理部96は、受信日時がエンキューの対象となるギフトデータの受信日時の直前であるギフトデータと、受信日時がエンキューの対象となるギフトデータの受信日時の直後であるギフトデータとの間に、エンキューの対象となるギフトデータをエンキューするようにしてもよい(図19中の矢印E)。なお、無視キューQ2にエンキューされたギフトデータの状態は、図18における状態ST1に相当する。
また、例えば、所定の処理が実行される際に、アイテム管理部96が、当該データに対応付けられるギフトデータを、発見済キューQ1からデキューするようにしてもよい(図19の中の矢印F)。なお、発見済キューQ1からデキューされたギフトデータの状態は、図18における終了状態に相当する。
本実施形態によれば、ユーザは、自動ダウンロード設定画像64が表示されている画面(タッチスクリーン16a)を介して、複数のゲームプログラムについて、ゲームプログラムに関連付けられるアイテムのデータをユーザからのダウンロード許諾の受付を待たずに情報サーバ14からダウンロードするか、ゲームプログラムに関連付けられるアイテムのデータをユーザからのダウンロード許諾の受付に応じて情報サーバ14からダウンロードするか、を設定することができることとなる。
また、本実施形態によれば、無視キューQ2に含まれるギフトデータについては、上述のS104以降に示す処理の対象とならないので、例えば、ギフトデータに対応するアイテムのデータがプログラムにより利用され、当該アイテムのデータが削除された場合などでも、当該ギフトデータが無視キューQ2に含まれている限りにおいては、当該ギフトデータに対応するアイテムの発見イベントの発生がユーザに通知されてしまうことを防ぐことができる。
なお、アイテム管理キューの実装例には、様々なバリエーションが考えられる。図21は、アイテム管理キューの一実装例を示す図である。本実装例では、ギフトデータは、例えば、「TRUE」(図21では「T」と表記)又は「FALSE」(図21では「F」と表記)のいずれかの値をとる発見済・無視フラグに関連付けられた上でアイテム管理キューにエンキューされる。図19における発見済キューQ1へのギフトデータのエンキューは、図21では、値が「TRUE」である発見済・無視フラグに関連付けられた上でのアイテム管理キューへのギフトデータのエンキューに相当する(図21中の矢印A)。なお、図19における無視キューQ2へのギフトデータのエンキューは、図21では、値が「FALSE」である発見済・無視フラグに関連付けられた上でのアイテム管理キューへのギフトデータのエンキューに相当する(図21中の矢印C)。
また、図21に示すアイテム管理キューを対象とした上述のS108に示す処理では、アイテム管理部96は、値が「FALSE」である発見済・無視フラグに関連付けられているギフトデータの数が所定数を超えているか否か(例えば、100を超えているか否か)を確認する。そして、値が「FALSE」である発見済・無視フラグに関連付けられているギフトデータの数が所定数を超えている場合は、アイテム管理部96は、値が「FALSE」である発見済・無視フラグに関連付けられているギフトデータのうち、最も古いタイミングにアイテム管理キューにエンキューされたものを削除(デキュー)して(図21中の矢印B)、上述のS101に示す処理に戻る。
また、図21に示すアイテム管理キューを対象とした上述のS111に示す処理では、アイテム管理部96は、値が「TRUE」である発見済・無視フラグに関連付けられているギフトデータの数が所定数を超えているか否か(例えば、100を超えているか否か)を確認する。そして、値が「TRUE」である発見済・無視フラグに関連付けられているギフトデータの数が所定数を超えている場合は、アイテム管理部96は、値が「TRUE」である発見済・無視フラグに関連付けられているギフトデータのうち、最も古いタイミングにアイテム管理キューにエンキューされたものを削除(デキュー)して(図21中の矢印D)、上述のS101に示す処理に戻る。
また、図19における、ギフトデータを、発見済キューQ1からデキューして、無視キューQ2にエンキューする処理は、図21に示すアイテム管理キューにおける、ギフトデータに関連付けられている発見済・無視フラグの値を「TRUE」から「FALSE」に変更する処理に相当する(図21中の矢印E)。また、図19における、ギフトデータを、発見済キューQ1からデキューする処理は、値が「TRUE」である発見済・無視フラグに関連付けられているギフトデータをアイテム管理キューからデキューする処理に相当する(図21中の矢印F)。
なお、本実施形態に係るユーザ位置管理サーバ12は、ユーザ端末16から位置座標及び探索領域の大きさ指定を受信すると、受信される位置座標が含まれる領域を(例えば中心位置に)含むn×n(1×1、3×3、5×5、7×7、9×9、…、25×25等)個の領域群を探索領域として決定する。ここでnは、ユーザ端末16から受信される、探索領域の大きさ指定に応じて決定される。そして、決定された探索領域を構成する各領域の領域IDに関連付けて記憶されているユーザIDと位置座標との組合せを読み出し、ユーザ端末16に返信する。
また、ユーザ位置管理サーバ12は、ユーザ端末16からユーザIDを受信すると、該ユーザIDに関連付けて記憶されている最新位置座標、測定日時、所定数のゲーム実績データを返信する。ユーザ端末16は、特定のユーザが遊んでいるゲームタイトルをタッチスクリーン16aに表示させたい場合に、ユーザ位置管理サーバ12からそれらの情報を受信すればよい。
なお、本発明は上述の実施形態に限定されるものではない。
例えば、ユーザ位置管理サーバ12は、ユーザ端末16から位置座標を受信した際に、受信した位置座標を(例えば中心位置に)含む所定数の領域群(例えば、p×p(例えば、3×3、5×5、7×7、9×9、…、25×25等)個の領域群)のうちのいずれかの領域IDに関連づけて記憶されたギフトデータを返信するようにしてもよい。
また、アイテム管理部96は、上述のS101〜S115に示す処理を実行する際に、位置座標記憶部82に記憶されている位置座標に基づいて特定される、位置座標記憶部82に記憶されている位置座標が含まれる領域を(例えば中心位置に)含む所定数の領域群(例えば、100km四方に対応するp×pの領域群)に属さない領域の領域IDに関連付けて記憶されたギフトデータを削除するようにしてもよい。こうすれば、ユーザ端末16の記憶容量の逼迫を防ぐことができる。
また、予め、ユーザ端末16に、ギフトデータの受信確認時期を示すデータ(例えば、毎日午前1時に確認するなどということを示すデータ)が記憶されていてもよい。そして、このデータが示す受信確認時期に、アイテム管理部96が、位置座標記憶部82に記憶されている、ギフトデータにおいて、前回のデータの受信日時に関連付けられている位置座標と、位置座標記憶部82に記憶されている最新の位置座標とに基づいて、前回のデータの受信時期からのユーザ端末16の移動距離を算出するようにしてもよい。そして、アイテム管理部96は、算出された移動距離が、所定の第1の基準距離(例えば、2km)を超えているか否かを判定するようにしてもよい。超えていると判定された場合には、アイテムID通信部94が、位置座標記憶部82に記憶されている最新の位置座標をユーザ位置管理サーバ12に送信するようにしてもよい。そして、ユーザ位置管理サーバ12が、受信した位置座標が含まれる領域を含む所定数の領域群のうちのいずれかの領域IDに関連付けて記憶されたギフトデータを返信するようにしてもよい。一方、超えていないと判定された場合には、アイテムID通信部94は、ギフトデータの受信を行わないようにしてもよい。このように、アイテム管理部96は、所定の時間間隔で(例えば、1日間隔で)、ギフトデータの受信を行うか否かを判定するようにしてもよい。
また、アイテム管理部96は、位置座標記憶部82に最新の位置座標が記憶される度に、位置座標記憶部82に記憶されている、前回のデータの受信日時に対応する位置座標(例えば、前回のデータの受信日時に最も近い受信日時に関連付けられている位置座標)と、位置座標記憶部82に記憶されている最新の位置座標とに基づいて、前回のデータの受信時期からのユーザ端末16の移動距離を算出するようにしてもよい。そして、アイテム管理部96は、算出された移動距離が、所定の第2の基準距離(例えば、50km)を超えているか否かを判定するようにしてもよい。超えていると判定された場合には、上述のようにして、アイテムID通信部94は、位置座標記憶部82に記憶されている最新の位置座標をユーザ位置管理サーバ12に送信するようにしてもよい。そして、ユーザ位置管理サーバ12は、受信した位置座標が含まれる領域を含む所定数の領域群のうちのいずれかの領域IDに関連付けて記憶されたギフトデータを返信するようにしてもよい。
ここで、上述のように、所定の第2の基準距離(例えば、50km)は、所定数の領域群(例えば、100km四方に対応するp×pの領域群)から構成される領域の一辺の長さ(例えば、100km)の半分となるようにしてもよい。このとき、所定の第2の基準距離(例えば、50km)を半径とする円形領域が、ユーザ端末16からユーザ位置管理サーバ12に送信される位置座標に基づいて、ユーザ位置管理サーバ12が特定する所定数の領域群(例えば、100km四方に対応するp×pの領域群)から構成される領域に包含されることとなる。このようにすれば、ユーザ端末16の現在位置が含まれる領域の領域IDに関連付けられているギフトデータがユーザ端末16に記憶されていないという事態が発生する可能性が減ることとなる。なお、所定の第2の基準距離(例えば、50km)を半径とする円形領域が、上述の所定数の領域群から構成される領域と一致していても構わない。
また、以上のように、所定の時間間隔(例えば、1日間隔)で、第1の基準距離を超えたユーザ端末16の移動があったか否かが判定され、第1の基準距離を超えたユーザ端末16の移動があった際には、アイテムID通信部94は、ギフトデータの受信を行うこととなる。また、上述の時間間隔での判定とは関係なく、第2の基準距離を超えたユーザ端末16の移動があった場合には、前回、ギフトデータを受信するか否かを判定したタイミングから所定の時間(例えば、1日)が経過していなくても、アイテムID通信部94は、ギフトデータの受信を行うこととなる。
また、例えば、アイテムID通信部94が受信したギフトデータのすべてを上述のS101〜S115に示す処理の対象とする必要はない。例えば、アイテム管理部96が、位置座標記憶部82に最新の位置座標が記憶される度に、その位置座標に基づいて特定される、その位置座標が含まれる領域を(例えば中心位置に)含むq×q個(ここで、q<p)の領域群のいずれかの領域IDに関連付けられたギフトデータがゲーム実績記憶部86に記憶されているか否かを確認するようにしてもよい。そして、ユーザ端末16が、確認されたギフトデータについて、上述のS101〜S115に示す処理を実行するようにしてもよい。こうすれば、本実施形態では、最新の位置座標に基づいて特定される、最新の位置座標を含むq×q個の領域群のいずれかの領域IDに関連付けられたギフトデータがゲーム実績記憶部86に記憶されているか否かによって、ギフトデータの存在を検出しているので、ユーザ端末16近辺のギフトデータが存在するか否かの検出を、検出の際にユーザ位置管理サーバ12とユーザ端末16とが通信不能であったとしても行うことができることとなる。
また、例えば、ユーザ位置管理サーバ12は、受信したタイトルID、受信したアイテムID、受信した位置座標、受信したユーザID、及び、決定された有効期限が含まれるギフトデータを記憶するようにしてもよい。そして、ユーザ位置管理サーバ12は、アイテムID通信部94から位置座標を受信すると、受信した位置座標からの距離が所定値以下(あるいは、所定値未満)である位置座標が含まれるギフトデータをユーザ端末16に返信するようにしてもよい。
また、例えば、ユーザ位置管理サーバ12に、領域ID、タイトルID、アイテムID、などが含まれるトレジャーデータが予め記憶されていてもよい。そして、上述の実施形態におけるギフトデータと同様、ユーザ端末16が、トレジャーデータを受信して、上述のS101〜S115に示す処理を実行するようにしてもよい。
また、例えば、ギフトデータやトレジャーデータには、所定の条件(例えば、ギフトデータに対応付けられるアイテムが、当該ギフトデータやトレジャーデータに含まれるユーザIDにより識別されるユーザが友人として登録されている場合のみ利用可能等)などを示すデータが関連付けられていてもよい。そして、ユーザ端末16は、例えば、上述のS103に示す処理とS104に示す処理の間に、処理の対象になっているギフトデータやトレジャーデータに関連付けられている条件を満足するか否かを判定してもよい。そして、ユーザ端末16は、条件を満足する場合には、上述のS104に示す処理を実行し、そうでない場合は、上述のS107に示す処理を実行するようにしてもよい。
また、例えば、ギフトデータやトレジャーデータに含まれるタイトルIDにより識別されるゲームプログラムが、そのギフトデータやトレジャーデータが発見済キューQ1にエンキューされた際にはユーザ端末16にインストールされていなくても、その後、当該ゲームプログラムがユーザ端末16にインストールされた場合に、そのゲームプログラムにおいて、そのギフトデータやトレジャーデータに含まれるアイテムIDにより識別されるアイテムのデータが利用可能であってもよい。
また、例えば、自動ダウンロード設定画像64に、ユーザ端末16にインストールされていないゲームプログラムについての個別設定画像66が配置されるようにしてもよい。そして、ユーザ端末16において、ユーザ端末16にインストールされていないゲームプログラムについても、自動ダウンロード状態に設定できるようにしてもよい(当該ゲームプログラムについてのインストールフラグの値を「1」に設定できるようにしてもよい)。このとき、ユーザ端末16が、当該ゲームプログラムに関連付けられているギフトデータやトレジャーデータをユーザ位置管理サーバ12から受信すると、当該ギフトデータやトレジャーデータに対応付けられるアイテムのデータが、ユーザからのダウンロード許諾の受付を待たずに、ユーザ端末16に情報サーバ14からダウンロードされ、アイテム記憶部98に記憶される。
また、関連付けられているゲームプログラムがユーザ端末16にインストールされていないギフトデータやトレジャーデータであって、対応するアイテムのデータがアイテム記憶部98に記憶されているギフトデータやトレジャーデータについては、アイテム詳細画像74の左下に、ゲームプログラムを販売するショッピングサイトへのリンクが配置されるようにしてもよい。そして、当該リンクをクリックすると、ユーザ端末16が、当該ゲームプログラムを購入可能なショッピングサイトのページをタッチスクリーン16aに表示するようにしてもよい。
また、アプリケーション実行部84が、ゲームプログラムを実行している際に、所定のイベントが発生するなどした場合に、アプリケーション実行部84が、当該ゲームプログラムに関連付けられているアイテムについて、自動ダウンロード状態にするか否かを問い合わせる画像をタッチスクリーン16aに表示させるようにしてもよい。当該画像には、それぞれタップ可能である、文字列「はい」が記載されたボタンと、文字列「いいえ」が記載されたボタンと、が配置されている。そして、ユーザが文字列「はい」が記載されたボタンをタップすると、アイテム管理部96は、当該ゲームプログラムのインストールフラグの値を「1」に設定した上で、アプリケーション実行部84が、ゲームプログラムの実行を継続するようにしてもよい。こうすれば、ユーザのゲームへの没入感を崩すことなく、ゲームプログラムに関連付けられるアイテムがユーザからのダウンロード許諾の受付を待たずにユーザ端末16にダウンロードされる設定をユーザが行えることとなる。
なお、ユーザが、自動ダウンロード状態にするか否かを問い合わせる画像に配置されている文字列「はい」が記載されたボタンをタップした際に、アプリケーション実行部84が、ゲームプログラムの実行を中断して、入出力制御部90が、図8に示す自動ダウンロード設定画像64をタッチスクリーン16aに表示させるようにしてもよい。こうすれば、ゲームプログラムに関連付けられるアイテムがユーザからのダウンロード許諾の受付を待たずにユーザ端末16にダウンロードされる設定が、ゲームプログラムの実行中でも、自動ダウンロード設定画像64を介して行うことができることとなる。
なお、図13に示すアプリケーション実行部84に対応する命令を含むプログラムと、図13に示すそれ以外の部分に対応する命令を含むプログラム(例えば、位置管理プログラム)と、が異なっていてもよい。そして、ユーザが、文字列「はい」が記載されたボタンをタップした際に本実施形態に係る位置管理プログラムが起動されていない場合は、ユーザ端末16が、本実施形態に係る位置管理プログラムを起動した上で、入出力制御部90が、自動ダウンロード設定画像64をタッチスクリーン16aに表示させるようにしてもよい。このとき、入出力制御部90は、アプリケーション実行部84により実行されていたゲームプログラムについての自動ダウンロードチェックボックスCB2がチェック状態である自動ダウンロード設定画像64をタッチスクリーン16aに表示させるようにしてもよい。その後、当該ゲームプログラムについてのインストールフラグの値が「1」に設定されたら、ユーザ端末16が、本実施形態に係る位置管理プログラムを停止させて、アプリケーション実行部84が、ゲームプログラムの実行を再開するようにしてもよい。
また、例えば、自らのユーザIDと、ギフトデータに含まれるユーザIDとに基づいて相性度を計算し、この相性度が一定値以上の場合にのみ、ユーザ端末16が上述のS101〜S115に示す処理を実行するようにしてもよい。ここで、相性度は、例えば、情報サーバ14から受信することができるユーザIDに関連付けられた情報(例えば、性別、年齢層、所有しているゲームのタイトルID、コンテンツのジャンル等の属性)に基づいて計算されてもよい。より具体的には、例えば、自らの性別(あるいは、年齢層)とギフトデータに含まれるユーザIDに関連付けられているユーザの性別(あるいは、年齢層)とが、一致する場合はそうでない場合よりも相性度が高く設定されるようにしてもよい。また、例えば、自らも、ギフトデータに含まれるユーザIDに関連付けられているユーザも所有しているゲームの数が多いほど相性度が高く設定されるようにしてもよい。
また、例えば、友人として登録されているユーザのユーザIDが含まれるギフトデータに含まれるアイテムIDにより識別されるアイテムについてのみ、上述のS101〜S115に示す処理が実行されるようにしてもよい。
また、上述の具体的な文字列や数値、並びに、図面中の具体的な文字列は例示であり、これらの文字列や数値には限定されない。