(57)【特許請求の範囲】
【請求項１】
ユーザ間を関係付ける関係付け手段と、
ユーザ間の関係付けを示すリンクに基づくネットワークにおいて、探索の目標となるユーザである目標ユーザを設定する設定手段と、
目標ユーザに所定の第１の数値情報を対応付ける第１対応付け手段と、
各ユーザが所定の条件を満たすか否か判定する判定手段と、
前記ネットワーク上で前記所定の条件を満たす第１ユーザから所定のリンク数の範囲内のユーザに対応付けられている数値情報のうち、前記第１の数値情報に最も近い数値情報を特定する特定手段と、
前記特定手段によって特定された数値情報と、当該数値情報に対応付けられた第２ユーザと前記第１ユーザの間のリンク数とに基づいて、前記第１ユーザに数値情報を対応付ける第２対応付け手段と、
目標ユーザの探索を行う探索ユーザの入力情報に応じて、探索の基準となるユーザである基準ユーザを前記ネットワークのリンクに基づき順次変更する変更手段と、
前記変更手段によって基準ユーザを変更する度に、変更後の基準ユーザに数値情報が対応付けられている場合には、当該数値情報に基づく情報を探索ユーザに提示する提示手段
と、
を備えた、ゲーム制御装置。
【請求項２】
前記所定の条件は、ユーザがゲームにアクセスしたことであることを特徴とする、
請求項１に記載されたゲーム制御装置。
【請求項３】
前記所定の条件は、ユーザ毎にランダムに割り当てられた時刻、あるいはユーザ毎に所定の規則に従って割り当てられた時刻に達したことであることを特徴とする、
請求項１に記載されたゲーム制御装置。
【請求項４】
前記設定手段は、複数の目標ユーザを設定し、
前記第２対応付け手段は、目標ユーザ毎に前記第１ユーザに数値情報を対応付けることを特徴とする、
請求項１〜３のいずれかに記載されたゲーム制御装置。
【請求項５】
ユーザ間の関係の程度に応じた親密度を、前記関係付け手段によって関係付けられたユーザ間に設定する親密度設定手段、を備え、
前記第２対応付け手段は、前記ネットワーク上で隣接するユーザ間のリンク数が当該ユーザ間の親密度に応じて調整されるようにして、前記第１ユーザに数値情報を対応付けることを特徴とする、
請求項１〜４のいずれかに記載されたゲーム制御装置。
【請求項６】
基準ユーザと前記目標ユーザが一致した場合に、探索ユーザに特典を付与する付与手段、を備えたことを特徴とする、
請求項１〜５のいずれかに記載されたゲーム制御装置。
【請求項７】
前記第２対応付け手段は、前記特定手段によって特定された数値情報と、前記第２ユーザと前記第１ユーザの間のリンク数とを加算して、前記第１ユーザに対応付ける数値情報を算出することを特徴とする、
請求項１〜６のいずれかに記載されたゲーム制御装置。
【請求項８】
コンピュータに、
ユーザ間を関係付ける機能、
ユーザ間の関係付けを示すリンクに基づくネットワークにおいて、探索の目標となるユーザである目標ユーザを設定する機能、
目標ユーザに所定の第１の数値情報を対応付ける機能、
各ユーザが所定の条件を満たすか否か判定する機能、
前記ネットワーク上で前記所定の条件を満たす第１ユーザから所定のリンク数の範囲内のユーザに対応付けられている数値情報のうち、前記第１の数値情報に最も近い数値情報が対応付けられている第２ユーザを特定する機能、
前記特定する機能によって特定された数値情報と、当該数値情報に対応付けられた第２ユーザと前記第１ユーザの間のリンク数とに基づいて、前記第１ユーザに数値情報を対応付ける機能、
目標ユーザの探索を行う探索ユーザの入力情報に応じて、探索の基準となるユーザである基準ユーザを前記ネットワークのリンクに基づき順次変更する機能、及び、
基準ユーザを変更する度に、変更後の基準ユーザに数値情報が対応付けられている場合には、当該数値情報に基づく情報を探索ユーザに提示する機能、
を実現させるためのプログラム。
【請求項９】
通信端末と、当該通信端末からアクセスされるサーバとを含むゲームシステムであって、
ユーザ間を関係付ける関係付け手段、
ユーザ間の関係付けを示すリンクに基づくネットワークにおいて、探索の目標となるユーザである目標ユーザを設定する設定手段、
目標ユーザに所定の第１の数値情報を対応付ける第１対応付け手段、
各ユーザが所定の条件を満たすか否か判定する判定手段、
前記ネットワーク上で前記所定の条件を満たす第１ユーザから所定のリンク数の範囲内のユーザに対応付けられている数値情報のうち、前記第１の数値情報に最も近い数値情報が対応付けられている第２ユーザを特定する特定手段、
前記特定手段によって特定された数値情報と、当該数値情報に対応付けられた第２ユーザと前記第１ユーザの間のリンク数とに基づいて、前記第１ユーザに数値情報を対応付ける第２対応付け手段、
目標ユーザの探索を行う探索ユーザの入力情報に応じて、探索の基準となるユーザである基準ユーザを前記ネットワークのリンクに基づき順次変更する変更手段、及び、
前記変更手段によって基準ユーザを変更する度に、変更後の基準ユーザに数値情報が対応付けられている場合には、当該数値情報に基づく情報を探索ユーザに提示する提示手段、
の各手段を、前記通信端末又は前記サーバのいずれか一方が備えた、
ゲームシステム。
【請求項１０】
ユーザ間を関係付ける関係付け手段と、
ユーザ間の関係付けを示すリンクに基づくネットワークにおいて、探索の目標となるユーザである目標ユーザを設定する設定手段と、
目標ユーザに所定の第１の数値情報を対応付ける第１対応付け手段と、
各ユーザが所定の条件を満たすか否か判定する判定手段と、
前記ネットワーク上で前記所定の条件を満たす第１ユーザから所定のリンク数の範囲内のユーザに対応付けられている数値情報のうち、前記第１の数値情報に最も近い数値情報を特定する特定手段と、
前記特定手段によって特定された数値情報と、当該数値情報に対応付けられた第２ユーザと前記第１ユーザの間のリンク数とに基づいて、前記第１ユーザに数値情報を対応付ける第２対応付け手段と、
目標ユーザの探索を行う探索ユーザの入力情報に応じて、探索の基準となるユーザである基準ユーザを前記ネットワークのリンクに基づき順次変更する変更手段と、
前記変更手段によって基準ユーザを変更する度に、変更後の基準ユーザに数値情報が対応付けられている場合には、当該数値情報に基づく情報を探索ユーザに提示する提示手段
と、
を備えた、情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のユーザの各々の操作に応じて、各ユーザによるゲームの進行を制御する技術に関する。
【背景技術】
【０００２】
近年、特定のサービス提供者によるソーシャルネットワーキングサービス（ＳＮＳ）においてウェブブラウザ上で動作するＡＰＩ(Application Programming Interface)などの動作環境を基に作成されるゲーム用アプリケーションによって実行される、いわゆるソーシャルゲーム（Social Game）が普及している。ソーシャルゲームは、不特定多数のユーザ間でコミュニケーションをとりながらプレイするオンラインゲームの一種であると言える。ユーザは、インターネットに接続可能であって、かつウェブブラウザが搭載された通信端末を備えていれば、時間と場所を問わずソーシャルゲームを楽しむことができる。
【０００３】
上述したソーシャルゲームでは、従来のオンラインゲームよりも、ユーザ間の交流を図るためのコミュニケーション機能が充実している点が特徴の１つとなっている。ソーシャルゲームでは、例えば、関係付けられたユーザ（仲間）間で協力したゲームの実行のほか、仲間との挨拶や連絡など仲間とコミュニケーションを取ることによる情報交換、仲間との間のゲーム上のアイテムのプレゼントあるいはアイテムの交換が行なわれている。このようなソーシャルゲームの一例として、下記の非特許文献１に記載されたデジタルカードゲーム（ドラゴンコレクション（登録商標））が知られている。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】アプリＳＴＹＬＥ  Vol.5（株式会社イースト・プレス、平成23年11月15日発行）、7-8頁
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来のソーシャルゲームとして、例えば、複数のユーザが協力して共通の敵キャラクタを攻撃する複数のユーザ間の協力ゲームが知られている。協力ゲームにおいて、所定の期間内で、協力してゲームを行っている複数のユーザのうちいずれかのユーザが連続して敵キャラクタに対して攻撃を行った回数に応じて特典をユーザに付与するゲームについて知られている。しかしながら、従来の協力ゲームでは、協力ゲームに参加する複数のユーザが固定化された互いに既知のユーザに限られる傾向にあり、新たなユーザ間のコミュニケーションを拡大するように構成されていなかった。言い換えれば、従来の協力ゲームは、新たなユーザ間の関係を構築することを促進するような仕組みがなされていなかった。
【０００６】
本発明は上述した観点に鑑みてなされたもので、新たなユーザ間の関係を構築することを促進できるゲーム制御装置、ゲーム制御方法、プログラム、ゲームシステム、及び情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の第１の観点は、ゲーム制御装置であって、
ユーザ間を関係付ける関係付け手段（５１）と、
ユーザ間の関係付けを示すリンクに基づくネットワークにおいて、探索の目標となるユーザである目標ユーザを設定する設定手段（５２）と、
目標ユーザに所定の第１の数値情報を対応付ける第１対応付け手段（５３）と、
各ユーザが所定の条件を満たすか否か判定する判定手段（５４）と、
前記ネットワーク上で前記所定の条件を満たす第１ユーザから所定のリンク数の範囲内のユーザに対応付けられている数値情報のうち、前記第１の数値情報に最も近い数値情報が対応付けられている第２ユーザを特定する特定手段（５５）と、
前記特定手段（５５）によって特定された数値情報と、当該数値情報に対応付けられた第２ユーザと前記第１ユーザの間のリンク数とに基づいて、前記第１ユーザに数値情報を対応付ける第２対応付け手段（５６）と、
目標ユーザの探索を行う探索ユーザの入力情報に応じて、探索の基準となるユーザである基準ユーザを前記ネットワークのリンクに基づき順次変更する変更手段（５７）と、
前記変更手段（５７）によって基準ユーザを変更する度に、変更後の基準ユーザに数値情報が対応付けられている場合には、当該数値情報に基づく情報を探索ユーザに提示する提示手段（５８）と、
を備える。
【０００８】
このゲーム制御装置において、探索開始時の「基準ユーザ」は特定のユーザに限定するものではない。探索開始時の「基準ユーザ」は、探索ユーザであってもよいし、探索ユーザ以外の特定のユーザであってもよい。
このゲーム制御装置において「所定の条件」は任意に設定してよいが、処理の負荷の分散を図る観点から、ユーザ毎に満足するタイミングが異なる条件が好ましい。例えば、所定の条件として、ユーザがゲームにアクセスしたことを条件としてもよい。
このゲーム制御装置において「ユーザの入力」は、ユーザの通信端末に対する所定の操作釦の押下操作の入力や、タッチパネル機能を備えた通信端末に対する表示画面上のタッチ操作の入力のほか、加速度センサを備えた通信端末を振ることによる操作入力、あるいはジェスチャによる操作入力（ジェスチャ入力）であってもよい。ジェスチャ入力では、撮像機能を備えた通信端末に対する所定のジェスチャを行うことで通信端末がそのジェスチャを画像認識し、予めジェスチャに対応付けられた操作入力を認識する。また、音声認識プログラムを実行可能な通信端末の場合には、ユーザの入力は音声によって行われてもよい。
このゲーム制御装置において「数値情報」は、ユーザ間の関係付けを示すリンクに基づいて形成されるユーザ間のネットワークを、各ユーザをノードとしたソーシャルグラフとしてみたときに、処理対象のユーザを示すノードと、目標ユーザを示すノードとの間の最短経路上のリンク数（つまり、ネットワーク上の距離）であってもよい。リンク数は、例えばユーザ間の関係の程度等によって、ユーザ間のリンクに重み付けが設定されてもよい。「数値情報に基づく情報」は、数値情報自体に限られず、数値情報に応じたテキスト情報（例えば、「まだ遠い」、「もう少し」等のテキスト）であってもよいし、数値情報に応じた強さ若しくは周波数の音声情報であってもよい。
【０００９】
このゲーム制御装置では、探索ユーザは、基準ユーザを順次変更し、ユーザ間の関係付けを示すリンクに基づくネットワークを辿ることによって目標ユーザを探索する探索ゲームを実行するように構成されている。基準ユーザと目標ユーザとの間の距離等の数値情報に基づく情報が探索ユーザに提示されるため、探索ユーザは目標ユーザとの距離を認識しながら探索を進めることができる。この探索ゲームでは、目標ユーザが探索ユーザと関係付けられていない場合、探索ユーザは、目標ユーザを探索する過程で、あるいは目標ユーザを効率的に探し当てるために、自らと関係付けられていない他のユーザ（例えば基準ユーザ）とコミュニケーションをとることが動機付けられる。よって、このゲーム制御装置によれば、新たなユーザ間の関係を構築することを促進できる。
【００１０】
このゲーム制御装置では、所定の条件を満たす各ユーザを第１ユーザとした場合に、第１ユーザに対応付ける数値情報は、第２ユーザの既知の数値情報と、第２ユーザと第１のユーザの間のリンク数とに基づいて、決定される。そして、所定の第１の数値情報が予め対応付けられている目標ユーザとの間のリンク数が少ないユーザから、所定の条件を満足したことを契機として順次、数値情報が対応付けられていく。このような各ユーザに対する数値情報の決定は、各ユーザが所定の条件を満たす度に行われるため、処理の負荷のタイミングが分散されることに加え、処理自体も第１ユーザから目標ユーザまでの最短経路を求める処理ではないため、比較的低い負荷の処理となる。
【００１１】
このゲーム制御装置では、第１ユーザに数値情報を対応付ける処理（つまり、判定手段、特定手段、及び第２対応付け手段に関連する処理）は、探索の処理（つまり、変更手段及び提示手段に関連する処理）自体とは並行して行われてよい。両者が並行に行われる場合であっても、第１ユーザに数値情報を対応付ける処理はネットワーク内のユーザが所定の条件を満足するタイミングで行われ、探索において基準ユーザに対応付けられている数値情報に基づく情報を探索ユーザに提示する処理は基準ユーザが変更されたタイミングで行われる。つまり、第１ユーザに数値情報を対応付ける処理と、探索の処理とが時間軸上で分散して行われる。
【００１２】
このゲーム制御装置では、探索ユーザの入力情報に応じて基準ユーザが変更される場合、変更後の基準ユーザに対応付けられている数値情報を参照することによって目標ユーザまでの距離がわかるため、基準ユーザの変更の都度に基準ユーザから目標ユーザまでの距離（リンク数）を算出する必要がなく、探索のための処理負荷が極めて低いという利点がある。
【００１３】
上記ゲーム制御装置において、前記所定の条件は、ユーザがゲームにアクセスしたことであってもよい。
上記ゲーム制御装置では、ネットワーク内の各ユーザが所定の条件を満足する場合に、各ユーザの数値情報に対する対応付けが行われる。つまり、各ユーザに対応付けられている数値情報が新たに対応付けられるか、既に対応付けられている数値情報が更新される処理が行われる。このような処理のタイミングは、処理の負荷を低減させるために分散している方が好ましい。ネットワーク内の各ユーザがゲームにアクセスするタイミングは比較的ランダムであると考えられるため、所定の条件をユーザがゲームにアクセスしたこととすることは、処理の負荷を低減させる上で好都合である。
なお、「アクセス」は、ゲームへのアクセス等、認証処理を伴うアクセスのほか、ゲーム内の特定のイベントや特定のゲーム要素（ミニゲーム等）、特定のステージに対するアクセスであってもよい。
【００１４】
上記ゲーム制御装置において、前記所定の条件は、ユーザ毎にランダムに割り当てられた時刻、あるいはユーザ毎に所定の規則に従って割り当てられた時刻に達したことであってもよい。これによっても、各ユーザの数値情報に対する対応付けの処理のタイミングが分散するため、処理の負荷を低減させる上で好都合である。
【００１５】
上記ゲーム制御装置において、前記設定手段（５２）は、複数の目標ユーザを設定し、前記第２対応付け手段（５６）は、目標ユーザ毎に前記第１ユーザに数値情報を対応付けてもよい。この構成では、ユーザは、複数の目標ユーザに対する探索を並行して実行することができるため、探索ゲームとしての興趣性を高めることができる。
【００１６】
上記ゲーム制御装置において、ユーザ間の関係の程度に応じた親密度を、前記関係付け手段（５１）によって関係付けられたユーザ間に設定する親密度設定手段（５９）、を備え、前記第２対応付け手段（５６）は、前記ネットワーク上で隣接するユーザ間のリンク数が当該ユーザ間の親密度に応じて調整されるようにして、前記第１ユーザに数値情報を対応付けてもよい。
この構成では、ネットワーク上で隣接するユーザ間の関係の程度に応じて、各ユーザに数値情報が対応付けられる。つまり、ネットワーク上のリンクの重み付けがユーザ間で一定ではなく、ユーザ間の関係の程度に応じたリンクの重み付けに基づいて、各ユーザに数値情報が対応付けられる。これにより、例えば、基準ユーザと目標ユーザとの間で複数の経路が存在する場合に、ユーザの入力による基準ユーザの変更次第で、つまりユーザが採用する経路次第で、ユーザに提供される数値情報に基づく情報が異なる場合が生ずるため、探索ゲームとして興趣性をさらに高めることができる。
【００１７】
上記ゲーム制御装置において、基準ユーザと前記目標ユーザが一致した場合に、探索ユーザに特典を付与する付与手段（６０）、を備えてもよい。
「特典」は任意に設定することができ、ゲーム上で利用可能なポイントの付与や、ゲーム上の進行を有利にするゲーム上の設定、調整、あるいはゲーム上の進行を有利にするアイテムの付与であってもよく、ゲームの進行とは直接関係のないアイテムが付与されることであってもよい。付与手段（６０）を設けることで、探索ユーザが目標ユーザを探し当てる動機付けを高めることができる。
【００１８】
上記ゲーム制御装置において、前記第２対応付け手段（５６）は、前記特定手段（５５）によって特定された数値情報と、前記第２ユーザと前記第１ユーザの間のリンク数とを加算して、前記第１ユーザに対応付ける数値情報を算出してもよい。
この構成では、ネットワーク上の各ユーザに対応付ける数値情報が加算演算によって算出されるため、数値情報を算出するときの処理の負荷が軽減される。例えば、第２ユーザを第１ユーザと関係付けられた仲間のユーザとした場合には、リンク数が１であるため、第１ユーザに対応付けられる数値情報を単に、第２ユーザの数値情報に対して１を加算する演算によって算出することができる。
【００１９】
本発明の第２の観点は、
ユーザ間を関係付けるステップと、
ユーザ間の関係付けを示すリンクに基づくネットワークにおいて、探索の目標となるユーザである目標ユーザを設定するステップと、
目標ユーザに所定の第１の数値情報を対応付けるステップと、
各ユーザが所定の条件を満たすか否か判定するステップと、
前記ネットワーク上で前記所定の条件を満たす第１ユーザから所定のリンク数の範囲内のユーザに対応付けられている数値情報のうち、前記第１の数値情報に最も近い数値情報が対応付けられている第２ユーザを特定するステップと、
前記特定するステップによって特定された数値情報と、当該数値情報に対応付けられた第２ユーザと前記第１ユーザの間のリンク数とに基づいて、前記第１ユーザに数値情報を対応付けるステップと、
目標ユーザの探索を行う探索ユーザの入力情報に応じて、探索の基準となるユーザである基準ユーザを前記ネットワークのリンクに基づき順次変更するステップと、
基準ユーザを変更する度に、変更後の基準ユーザに数値情報が対応付けられている場合には、当該数値情報に基づく情報を探索ユーザに提示するステップと、
を備えた、ゲーム制御方法である。
【００２０】
本発明の第３の観点は、コンピュータに、
ユーザ間を関係付ける機能、
ユーザ間の関係付けを示すリンクに基づくネットワークにおいて、探索の目標となるユーザである目標ユーザを設定する機能、
目標ユーザに所定の第１の数値情報を対応付ける機能、
各ユーザが所定の条件を満たすか否か判定する機能、
前記ネットワーク上で前記所定の条件を満たす第１ユーザから所定のリンク数の範囲内のユーザに対応付けられている数値情報のうち、前記第１の数値情報に最も近い数値情報が対応付けられている第２ユーザを特定する機能、
前記特定する機能によって特定された数値情報と、当該数値情報に対応付けられた第２ユーザと前記第１ユーザの間のリンク数とに基づいて、前記第１ユーザに数値情報を対応付ける機能、
目標ユーザの探索を行う探索ユーザの入力情報に応じて、探索の基準となるユーザである基準ユーザを前記ネットワークのリンクに基づき順次変更する機能、及び、
基準ユーザを変更する度に、変更後の基準ユーザに数値情報が対応付けられている場合には、当該数値情報に基づく情報を探索ユーザに提示する機能、
を実現させるためのプログラムである。
【００２１】
コンピュータは、例えばネットワークサーバ、大型計算機等であってよい。また、このプログラムは、ＤＶＤ−ＲＯＭやＣＤ−ＲＯＭ等のコンピュータが読み取り可能な情報記憶媒体に格納されてもよい。
【００２２】
本発明の第４の観点は、通信端末（１０）と、当該通信端末（１０）からアクセス可能に構成され、前記通信端末（１０）によるゲームの実行を制御するサーバ（２０）と、を含むゲームシステムであって、
ユーザ間を関係付ける関係付け手段（５１）、
ユーザ間の関係付けを示すリンクに基づくネットワークにおいて、探索の目標となるユーザである目標ユーザを設定する設定手段（５２）、
目標ユーザに所定の第１の数値情報を対応付ける第１対応付け手段（５３）、
各ユーザが所定の条件を満たすか否か判定する判定手段（５４）、
前記ネットワーク上で前記所定の条件を満たす第１ユーザから所定のリンク数の範囲内のユーザに対応付けられている数値情報のうち、前記第１の数値情報に最も近い数値情報が対応付けられている第２ユーザを特定する特定手段（５５）、
前記特定手段（５５）によって特定された数値情報と、当該数値情報に対応付けられた第２ユーザと前記第１ユーザの間のリンク数とに基づいて、前記第１ユーザに数値情報を対応付ける第２対応付け手段（５６）、
目標ユーザの探索を行う探索ユーザの入力情報に応じて、探索の基準となるユーザである基準ユーザを前記ネットワークのリンクに基づき順次変更する変更手段（５７）、及び、
前記変更手段（５７）によって基準ユーザを変更する度に、変更後の基準ユーザに数値情報が対応付けられている場合には、当該数値情報に基づく情報を探索ユーザに提示する提示手段（５８）、
の各手段を、前記通信端末（１０）又は前記サーバ（２０）のいずれか一方が備える。
【００２３】
本発明の第５の観点は、情報処理装置であって、
ユーザ間を関係付ける関係付け手段（５１）と、
ユーザ間の関係付けを示すリンクに基づくネットワークにおいて、探索の目標となるユーザである目標ユーザを設定する設定手段（５２）と、
目標ユーザに所定の第１の数値情報を対応付ける第１対応付け手段（５３）と、
各ユーザが所定の条件を満たすか否か判定する判定手段（５４）と、
前記ネットワーク上で前記所定の条件を満たす第１ユーザから所定のリンク数の範囲内のユーザに対応付けられている数値情報のうち、前記第１の数値情報に最も近い数値情報を特定する特定手段（５５）と、
前記特定手段（５５）によって特定された数値情報と、当該数値情報に対応付けられた第２ユーザと前記第１ユーザの間のリンク数とに基づいて、前記第１ユーザに数値情報を対応付ける第２対応付け手段（５６）と、
目標ユーザの探索を行う探索ユーザの入力情報に応じて、探索の基準となるユーザである基準ユーザを前記ネットワークのリンクに基づき順次変更する変更手段（５７）と、
前記変更手段（５７）によって基準ユーザを変更する度に、変更後の基準ユーザに数値情報が対応付けられている場合には、当該数値情報に基づく情報を探索ユーザに提示する提示手段（５８）と、
を備える。
【００２４】
なお、上記では、本発明の理解を容易にするため、適宜図面に記載された符号を括弧書きで記載しているが、これにより本発明に係るゲーム制御装置等が図示の態様に限定されるものではない。
【発明の効果】
【００２５】
本発明のゲーム制御装置、ゲーム制御方法、プログラム、ゲームシステム、及び情報処理装置によれば、新たなユーザ間の関係を構築することを促進できる。
【図面の簡単な説明】
【００２６】
【図１】実施形態のゲームシステムの基本構成を示す図。
【図２】実施形態の通信端末の外観の例を示す図。
【図３】実施形態の通信端末の構成を示すブロック図。
【図４】実施形態のゲームサーバの構成を示すブロック図。
【図５】実施形態のデータベースサーバの構成を示すブロック図。
【図６】ユーザデータベースの構成例を示す図。
【図７】探索データベースの構成例を示す図。
【図８】仲間関係を示すソーシャルグラフの隣接リストのデータ構成例を示す図。
【図９】距離データの構成例を示す図。
【図１０】仲間関係を示すソーシャルグラフの一例を示す図。
【図１１Ａ】ソーシャルグラフにおいてリンク数が設定される態様の一例を示す図。
【図１１Ｂ】ソーシャルグラフにおいてリンク数が設定される態様の一例を示す図。
【図１１Ｃ】ソーシャルグラフにおいてリンク数が設定される態様の一例を示す図。
【図１１Ｄ】ソーシャルグラフにおいてリンク数が設定される態様の一例を示す図。
【図１１Ｅ】ソーシャルグラフにおいてリンク数が設定される態様の一例を示す図。
【図１２】ユーザの通信端末において表示される一連のウェブページを例示する図。
【図１３】（ａ）はユーザの通信端末において表示されるウェブページを例示し、（ｂ）は当該ウェブページに対応するソーシャルグラフを示す図。
【図１４】（ａ）はユーザの通信端末において表示されるウェブページを例示し、（ｂ）は当該ウェブページに対応するソーシャルグラフを示す図。
【図１５】（ａ）はユーザの通信端末において表示されるウェブページを例示し、（ｂ）は当該ウェブページに対応するソーシャルグラフを示す図。
【図１６】（ａ）はユーザの通信端末において表示されるウェブページを例示し、（ｂ）は当該ウェブページに対応するソーシャルグラフを示す図。
【図１７】（ａ）はユーザの通信端末において表示されるウェブページを例示し、（ｂ）は当該ウェブページに対応するソーシャルグラフを示す図。
【図１８】（ａ）はユーザの通信端末において表示されるウェブページを例示し、（ｂ）は当該ウェブページに対応するソーシャルグラフを示す図。
【図１９】実施形態のゲーム制御装置で主要な役割を果たす機能を説明するための機能ブロック図。
【図２０】実施形態の隣接リストの更新処理を示すフローチャート。
【図２１】実施形態の距離データの更新処理を示すフローチャート。
【図２２】実施形態の探索処理を示すフローチャート。
【図２３】実施形態の変形例において、ユーザの通信端末において表示されるウェブページを例示する図。
【図２４】実施形態の変形例に係るゲーム制御装置で主要な役割を果たす機能を説明するための機能ブロック図。
【図２５】親密度データの構成例を示す図。
【図２６】実施形態の変形例に係るゲーム制御装置で主要な役割を果たす機能を説明するための機能ブロック図。
【図２７】ゲーム制御装置の各機能について、通信端末と、ゲームサーバ及びデータベースサーバとの間の分担例を示す図。
【発明を実施するための形態】
【００２７】
以下、本発明の実施形態について説明する。
【００２８】
（１）ゲームシステムの構成
図１は、実施形態のゲームシステムのシステム構成例を示している。図１に示すように、このゲームシステムは、例えばインターネットなどの通信網ＮＷ（ネットワーク）に接続可能な通信端末１０ａ，１０ｂ，１０ｃ，…と、通信網ＮＷに接続されているゲームサーバ２０と、データベースサーバ３０とによって構成されている。各通信端末１０ａ，１０ｂ，１０ｃ，…はそれぞれ、個々のユーザによって操作される端末であり、例えば、携帯端末、スマートフォン、ＰＤＡ(Personal Digital Assistant)、パーソナルコンピュータ、双方向の通信機能を備えたテレビジョン受像機（いわゆる多機能型のスマートテレビも含む。）などの通信端末である。なお、以下の説明において、各通信端末１０ａ，１０ｂ，１０ｃ，…に共通して言及するときには、通信端末１０と表記する。
このゲームシステムにおいて、ゲームサーバ２０は、クライアントである通信端末１０と通信可能に構成されており、通信端末１０に対してゲーミングサービスを提供する。ゲームサーバ２０には、ゲーム用アプリケーションとしてウェブブラウザ上で動作可能なアプリケーションが実装されている。データベースサーバ３０は、ゲームを実行する上での後述する様々な情報を格納しており、それらの情報の読み書きのためにゲームサーバ２０と例えば有線で接続される。
通信端末１０は、ゲームサーバ２０によって提供されるウェブページを表示可能なウェブブラウザを備えており、ユーザは、通信端末１０でウェブページに対する操作をしてゲームを実行する。
【００２９】
また、図１には図示していないが、ゲームサーバ２０とは別に各通信端末１０のユーザを認証するための認証サーバを設けてもよい。また、多くの通信端末１０からのアクセスを受け入れるために複数のゲームサーバ２０を設ける場合は、その複数のゲームサーバ２０間の負荷を調整するためのロードバランサを設けてもよい。また、ゲームサーバ２０は単一のサーバ装置として構成してもよいが、機能を分散させた複数のサーバ装置として構成してもよい。
【００３０】
（２）通信端末の構成
図２及び図３を参照して通信端末１０について説明する。
図２は、通信端末１０の外観の例を示す図であって、（ａ）は、例えば折り畳み式の携帯端末（携帯電話機）などの釦入力方式の通信端末を例示したものであり、（ｂ）は、例えばスマートフォンなどのタッチパネル入力方式の通信端末を例示したものである。図３は、通信端末１０の内部構成を示すブロック図である。
図３に示すように、通信端末１０は、ＣＰＵ（Central Processing Unit）１１、ＲＯＭ(Read Only Memory)１２、ＲＡＭ(Random Access Memory)１３、画像処理部１４、指示入力部１５、表示部１６、及び、信号送受信部としての通信インタフェース部１７を備えており、各部間の制御信号あるいはデータ信号を伝送するためのバス１８が設けられている。
【００３１】
ＣＰＵ１１は、ＲＯＭ１２内のウェブブラウザをＲＡＭ１３にロードして実行する。そして、ＣＰＵ１１は、指示入力部１５等によってユーザに入力されるＵＲＬ(Uniform Resource Locator)の適切な指定に基づき、通信インタフェース部１７を介して、ゲームサーバ２０からウェブページを表示するためのデータ、すなわち、ＨＴＭＬ(HyperText Markup Language)文書や当該文書と関連付けられた画像などのオブジェクトのデータ（以下、総称して適宜「ＨＴＭＬデータ」と表記する。）を通信インタフェース部１７を介して取得し、そのＨＴＭＬデータを解釈する。なお、通信端末１０には、ウェブブラウザのブラウザ機能を拡張するための様々なプラグインが実装されていてよい。
なお、ＨＴＭＬデータの取得に当たって、ＣＰＵ１１は、予め登録されたユーザＩＤ（ユーザ識別情報）、あるいは指示入力部１５を介して入力されるユーザＩＤを含むアクセス要求メッセージを、通信インタフェース部１７を介してゲームサーバ２０へ通知する。
【００３２】
ウェブブラウザは、画像処理部１４を介して、取得したＨＴＭＬデータに基づき、ゲームサーバ２０から提供されるウェブページを表示部１６に表示する。また、ウェブブラウザは、ユーザが指示入力部１５の操作によってウェブページ上のハイパーリンク(Hyperlink)またはメニューが選択されると、その選択に応じたウェブページを表示するための新たなＨＴＭＬデータの送信（つまり、ウェブページの更新）をゲームサーバ２０へ要求する。
【００３３】
画像処理部１４は、ＨＴＭＬデータの解析結果としてＣＰＵ１１から与えられる表示用画像データに基づいて、表示部１６にウェブページを表示する。表示部１６は、例えば、マトリクス状に画素単位で配置された薄膜トランジスタを含むＬＣＤ(Liquid Cristal Display)モニタであり、表示用画像データに基づいて薄膜トランジスタを駆動することでウェブページの画像を表示画面１６ａに表示する。
【００３４】
通信端末１０が釦入力方式の通信端末（図２（ａ））である場合、指示入力部１５は、ユーザの操作入力を受け入れるための方向指示釦と決定釦などの複数の指示入力釦を含む釦群１５ａ、及び、テンキーなどの複数の指示入力釦を含む釦群１５ｂを備え、各釦の押下（操作）入力を認識してＣＰＵ１１へ出力するためのインタフェース回路を含む。例えば、方向指示釦は、表示部１６に表示されているウェブページをスクロールして表示することをＣＰＵ１１へ指示するために設けられる。また、決定釦は、例えばウェブページ上で複数のハイパーリンクまたはメニューが表示されるときに、アクティブ表示（例えば強調表示）されている１つのハイパーリンクまたはメニューをユーザが選択することをＣＰＵ１１へ指示するために設けられる。なお、通信端末１０を小型の携帯端末によって構成する場合には、これらの釦は、ユーザが通信端末１０を片手で保持したままその親指で操作（クリック）しやすいように、通信端末１０の前面に配置されていることが好ましい。図２（ａ）に示す例では、釦群１５ｂは、釦群１５ａの下方に配置され、「０」〜「９」、「＊」、「＃」（テンキー）が表記された複数の指示入力釦を含む。
【００３５】
通信端末１０がタッチパネル入力方式の通信端末（図２（ｂ））である場合、指示入力部１５は、主として表示画面１６ａに指先あるいはペンで触れることによるタッチパネル方式の入力を受け付ける。タッチパネル入力方式は、静電容量方式などの公知の方式でよい。なお、図２（ｂ）に示すように、通信端末１０がタッチパネル入力方式の場合であっても釦群１５ａが設けられる場合もある。
【００３６】
通信端末１０に表示されるウェブページ上のメニューの選択操作は、例えば通信端末１０が携帯端末である場合には、方向指示釦の押下操作によってメニューを選択し、決定釦の押下操作によって、選択したメニューを確定することによって行われる。また、選択操作は、例えば通信端末１０がタッチパネル入力方式の場合には、ウェブページが表示されている表示画面１６ａ上のメニューの位置を指あるいはペンで指示（タッチ操作）することによって行われる。
【００３７】
（３）ゲームサーバの構成
図４を参照してゲームサーバ２０の構成について説明する。
ゲームサーバ２０は、例えば階層構造の複数のウェブページからなるゲームのウェブサイトを管理しており、通信端末１０に対してゲームのウェブサービスを提供する。図３に示すように、ゲームサーバ２０は、ＣＰＵ２１、ＲＯＭ２２、ＲＡＭ２３、データベース（ＤＢ）アクセス部２４、及び、通信インタフェース部２５を備えており、各部間の制御信号あるいはデータ信号を伝送するためのバス２６が設けられている。なお、ゲームサーバ２０は、ハードウエアに関しては汎用のウェブサーバと同一の構成をとることができる。
【００３８】
ＲＯＭ２２には、クライアントである通信端末１０のウェブブラウザに対してＨＴＭＬ文書や画像などのオブジェクトの表示（ウェブページの表示）のサービスを提供するアプリケーションプログラムが格納されている。ＲＯＭ２２には、アプリケーションプログラム以外にもＣＰＵ２１によって参照される各種データが格納されている。
ＣＰＵ２１は、ＲＯＭ２２内のゲームプログラムをＲＡＭ２３にロードして実行し、通信インタフェース部２５を介して、各種の処理を行う。
【００３９】
例えば、ＣＰＵ２１は、通信インタフェース部２５を介して、ＨＴＭＬデータを通信端末１０宛に送信する。なお、ゲームサーバ２０が通信端末１０のユーザの認証処理を行う場合には、ＣＰＵ２１はその認証処理を行う。
ＣＰＵ２１は、通信インタフェース部を介して、通信端末１０で表示されるウェブページ上でユーザにより選択されたハイパーリンクまたはメニューに応じた処理を行う。その処理は、例えば、新たなＨＴＭＬデータの送信、または、ゲームサーバ２０内の演算処理あるいはデータ処理などを含む。
データベースアクセス部２４は、ＣＰＵ２１がデータベースサーバ３０に対してデータの読み書きを行うときのインタフェースである。
【００４０】
（４）データベースサーバの構成
データベースサーバ３０（記憶装置）は、大容量のハードディスク装置やＲＡＩＤ（Redundant Arrays of Inexpensive Disks）等の形態の装置等、汎用ストレージで実現できる。データベースサーバ３０内の各データベースは、ゲームサーバ２０のデータベースアクセス部２４を介してＣＰＵ２１からのデータの読み書きが可能となるように構成されている。
図５に、データベースサーバ３０の構成の一例を示す。図５に示すように、データベースサーバ３０は、ユーザデータベース３１と、ゲームデータベース３２とを備える。
【００４１】
本実施形態のゲームシステムによって実現されるゲームのタイプは特に限定されるものではないが、以下では、本実施形態のゲームの一例として、ゲームに登録している複数のユーザの中から目標となるユーザを探し当てる探索ゲーム（以下、適宜「本実施形態のゲーム」という。）を採り上げる。本実施形態のゲームにおいて、探索を行うユーザを「探索ユーザ」といい、探索の目標となるユーザである「目標ユーザ」という。本実施形態のゲームでは、後述するように特定のユーザ間を仲間として関係付けることが可能であり、探索ユーザは、自らを起点としてユーザ間の仲間関係を辿ることで目標ユーザを探し当てる仕組みとなっている。目標ユーザを探し当てるまでに探索ユーザは、仲間関係を辿るようにして探索の基準となるユーザを順次変更していく。探索の基準となるユーザを、以下では「基準ユーザ」という。
【００４２】
ここで、ユーザをノード、ユーザ間の関係付けをリンク（エッジともいう。）としてみた場合には、ゲームに参加しているユーザ全体がソーシャルグラフを形成していると考えることができる。このソーシャルグラフにおいて、探索ユーザに相当するノードを「出発ノード」、基準ユーザに相当するノードを「基準ノード」、目標ユーザに相当するノードを「目標ノード」、とした場合、本実施形態の探索ゲームは、ユーザ間の関係付けを示すリンクに基づくソーシャルグラフ（ユーザのネットワーク）において、出発ノードから目標ノードまでの経路を、基準ノードを順次変更させながら探索することに相当する。
【００４３】
図６に、本実施形態のゲームにおいて適用されるユーザデータベース３１の一例を示す。この例では、ユーザデータベース３１は、ユーザＩＤ（ユーザ識別情報）ごとに、ユーザ名、ユーザ画像、進行レベル、体力ポイント、探索データ（探索ＩＤ，基準ユーザ）、特典ポイント、仲間のユーザＩＤの各項目についての情報を含む。ユーザデータベース３１に含まれる情報は、ゲームサーバ２０によって逐次更新されうる。
以下の説明では、ユーザデータベース３１に含まれるユーザＩＤ、あるいはユーザを特定するユーザ名（後述する）ごとのデータを総称してユーザデータという。ユーザデータを構成する各項目の情報は、以下のとおりである。
【００４４】
・ユーザ名
ゲームの実行時に通信端末１０のユーザを特定するために表示されるユーザ名である。ユーザ名はユーザによって予め指定される所定長以下のテキストである。ユーザ名は、ゲームサーバ２０によって提供されるネットワーク環境（あるいはゲームコミュニティ）上でユーザを特定する名称である。
・ユーザ画像
ユーザ画像は例えばユーザによって予め選択されるアバタ画像である。
・進行レベル
ゲーム上のユーザの進行レベルを示すデータである。例えばＬｖ１（レベル１）からＬｖ１００（レベル１００）までの範囲のレベル値である。例えば、ゲームの実行回数が所定回数に達する度に、進行レベルが上昇させるようにしてもよい。
・体力ポイント
本実施形態のゲームにおいて、ゲームを進行させる上で必要となるユーザの体力に相当するポイントである。例えば、本実施形態のゲームでは、基準ユーザを変更する度に、所定量の体力ポイントが消費され、所定の時間が経過する毎に所定量回復（増加）するようにしてもよい。
・探索データ
探索データは、探索ＩＤと基準ユーザとなるユーザのユーザＩＤとを含む。探索ＩＤは、探索のミッションを特定するための識別情報である。
・特典ポイント
本実施形態のゲームにおいて、探索に成功して目標ユーザを探し当てたことでユーザが得た特典ポイントの累積値である。
・仲間のユーザＩＤ
対象となるユーザＩＤと関係付けられた他のユーザＩＤのデータである。
【００４５】
図５に戻り、ゲームデータベース３２は、ゲームサーバ２０からのアクセスに基づき、ゲームサーバ２０によって実行されたゲームの進行に関する情報、探索データベースを記憶する。ゲームの進行に関する情報は、ゲームの性質によって多様な情報を含みうる。本実施形態のゲームの場合を例に挙げれば、ゲームの進行に関する情報は、各ユーザの探索についての詳細結果などを含んでもよい。
【００４６】
探索データベースは、本実施形態のゲームにおいてユーザに与えられる複数の探索のミッションの各々についてのデータが記述されている。探索データベースのデータ構成例を図７に示す。図７に示すように、各ミッションは、探索ＩＤに対応付けられている。図７に示す探索データベースの各項目のデータは以下のとおりである。
【００４７】
・目標ユーザ
特定のミッションの探索の目標ユーザとなるユーザのユーザＩＤである。
・終了時刻
特定のミッションの探索が終了する時刻である。本実施形態のゲームでは、探索ユーザは、終了時刻までに目標ユーザを探し当てたときに特典ポイントが付与される。
・特典ポイント
特定のミッションの探索に成功したときに探索ユーザに付与される特典ポイントである。
【００４８】
なお、本実施形態のゲームでは、ユーザの仲間関係を示すリンクからなるネットワークが、ソーシャルグラフによって管理される。例えば、ユーザデータベースに書き込まれている仲間のユーザＩＤのデータに基づいて、仲間関係を示すソーシャルグラフを示す隣接リストが生成されてＲＡＭ２３に記憶される。図８に、隣接リストのデータ構成例を示す。図８に示すように、隣接リストは、各ユーザＩＤと、ユーザＩＤに仲間として対応付けられた他の１又は複数のユーザとを、ソーシャルグラフ上の隣接ノードとして示すデータである。
【００４９】
本実施形態のゲームでは、ネットワーク内の各ユーザに対して、目標ユーザとの間の距離情報（数値情報）を対応付ける距離データがＲＡＭ２３に記憶される。図９に、距離データのデータ構成例を示す。図９の距離データでは、探索ＩＤに対応する複数の目標ユーザの各々に対して、各ユーザと目標ユーザの間の距離情報（例えば、目標ユーザまでの最短のリンク数）が対応付けられている。目標ユーザに対する距離情報が記述されていない場合、目標ユーザまでの距離情報が現時点で不明であることを示す。距離データにおいて、目標ユーザに相当するユーザＩＤ（例えば図９では、４５６７８９，７６５４３２）に対応する距離情報は、初期値として「０」が書き込まれている。
距離データは、各ユーザが所定の条件を満たす度に更新される場合がある。
【００５０】
（５）目標ユーザまでの距離を算出する処理の原理
前述したように、本実施形態のゲームでは、目標ユーザを探し当てるまでに、探索ユーザが、探索の基準となる基準ユーザを順次変更するが、このとき、基準ユーザとなるユーザに目標ユーザまでの距離情報が距離データ上で対応付けられている場合には、その距離情報に基づく情報が探索ユーザに提示される。そのため、基準ユーザを変更する度に、基準ユーザと目標ユーザとの間の距離を算出する必要がないため、処理負荷が軽減される。
以下、ネットワーク内の各ユーザについて、目標ユーザまでの距離情報を算出する処理の原理について、図１０、及び図１１Ａ〜１１Ｅを参照して説明する。
【００５１】
図１０は、ユーザの仲間関係を示すソーシャルグラフ（無向グラフ）の一例を概念的に示す図である。図１０に示すソーシャルグラフの例では、出発ノードＮｓはユーザＫＮＭであり、目標ノードＮｇはユーザＸＹＺ（つまり、目標ユーザはユーザＸＹＺ）である。ソーシャルグラフでは、ユーザ間の仲間関係の有無は、ノード間のリンク（「エッジ」ともいう。）の有無によって表現される。図１０に例示するソーシャルグラフにおいて、目標ユーザＸＹＺに対応する距離情報の値は「０」である。
【００５２】
図１１Ａ〜１１Ｅはそれぞれ図１０と同様の例のソーシャルグラフを示している。図１１Ａ〜１１Ｅはそれぞれ、連続する期間Ｔ１〜Ｔ５において、ネットワーク内のユーザが順次所定の条件を満たし、目標ユーザを基準として周囲のユーザに対応する距離情報の値が決定されていく例を示している。本実施形態では、各ユーザについての所定の条件は、「ユーザがゲームにアクセスしたこと」とする。
図１１Ａ〜１１Ｅにおいて、既に距離情報が対応付けられているユーザの仲間であって（つまり、当該ユーザとの間のリンク数が１であって）、かつ該当する期間にゲームにアクセスしたユーザ（つまり、所定の条件を満たしたユーザ）を示す円を、太線で表している。既に距離情報が対応付けられているユーザの仲間ではないが、単にゲームにアクセスしたユーザについては、対応する距離情報の値が決定されないため、当該ユーザを示す円は太線で表していない。
【００５３】
（i）期間Ｔ１
期間Ｔ１の開始時刻では、既に距離情報が対応付けられているユーザは目標ユーザのみである。目標ユーザには、初期値として「０」が対応付けられている（図１０参照）。ここで、期間Ｔ１内に、目標ユーザの仲間の一人であるユーザＫＦＣがゲームにログインした場合を想定する。この場合、ユーザＫＦＣにとって仲間のユーザである目標ユーザＸＹＺに対応付けられている距離情報が「０」であるため、ユーザＫＦＣに対応付けられる距離情報は目標ユーザのそれに１を加えて「１」となる。その結果、期間Ｔ１の終了時刻において、ネットワーク内の各ユーザに対応付けられている距離情報は、図１１Ａに示したとおりとなる。
【００５４】
（ii）期間Ｔ２
期間Ｔ１に続く期間Ｔ２内に、既に距離情報が対応付けられているユーザ（ここでは、目標ユーザＸＹＺとユーザＫＦＣ）のいずれかの仲間であるユーザＳＡＭ，ＥＳＴ，ＤＣＴがゲームにログインした場合を想定する。この場合、ユーザＥＳＴ，ＤＣＴにとって仲間のユーザである目標ユーザＸＹＺに対応付けられている距離情報が「０」であるため、ユーザＥＳＴ，ＤＣＴに対応付けられる距離情報は共に、目標ユーザのそれに１を加えて「１」となる。ユーザＳＡＭは、目標ユーザＸＹＺとユーザＫＦＣの２人と仲間である。ユーザＳＡＭに対応付ける距離情報として、目標ユーザＸＹＺ（距離情報：０）を基準とすると「１」（０＋１＝１）となり、ユーザＫＦＣ（距離情報：１）を基準とすると「２」（１＋１＝２）となる。このように、複数の距離情報が対応付け可能である場合には、より小さい値を対応付ける。すなわち、ユーザＳＡＭに対応付けられる距離情報は、「１」となる。以上の結果、期間Ｔ２の終了時刻において、ネットワーク内の各ユーザに対応付けられている距離情報は、図１１Ｂに示したとおりとなる。
【００５５】
（iii）期間Ｔ３
期間Ｔ２に続く期間Ｔ３内に、既に距離情報が対応付けられているユーザＳＡＭの仲間であるユーザＤＳＧがゲームにログインした場合を想定する。この場合、ユーザＤＳＧにとって仲間のユーザであるユーザＳＡＭに対応付けられている距離情報が「１」であるため、ユーザＤＳＧに対応付けられる距離情報は、ユーザＳＡＭのそれに１を加えて「２」となる。その結果、期間Ｔ３の終了時刻において、ネットワーク内の各ユーザに対応付けられている距離情報は、図１１Ｃに示したとおりとなる。
【００５６】
（iv）期間Ｔ４
期間Ｔ３に続く期間Ｔ４内に、既に距離情報が対応付けられているユーザＳＡＭ，ＤＳＧの仲間であるユーザＧＴＲがゲームにログインした場合を想定する。ユーザＧＴＲに対応付ける距離情報として、目標ユーザＳＡＭ（距離情報：１）を基準とすると「２」（１＋１＝２）となり、ユーザＤＳＧ（距離情報：２）を基準とすると「３」（２＋１＝３）となる。この場合、前述したように、ユーザＧＴＲに対応付けられる距離情報は、より小さい値をとるため「２」となる。その結果、期間Ｔ４の終了時刻において、ネットワーク内の各ユーザに対応付けられている距離情報は、図１１Ｄに示したとおりとなる。
【００５７】
（v）期間Ｔ５
期間Ｔ４に続く期間Ｔ５内に、既に距離情報が対応付けられているユーザＫＦＣ，ＧＴＲのそれぞれの仲間であるユーザＦＳＲ，ＢＪＣがゲームにログインした場合を想定する。この場合、ユーザＦＳＲにとって仲間のユーザであるユーザＫＦＣに対応付けられている距離情報が「１」であるため、ユーザＦＳＲに対応付けられる距離情報は、ユーザＫＦＣのそれに１を加えて「２」となる。ユーザＢＪＣにとって仲間のユーザであるユーザＧＴＲに対応付けられている距離情報が「２」であるため、ユーザＢＪＣに対応付けられる距離情報は、ユーザＧＴＲのそれに１を加えて「３」となる。以上の結果、期間Ｔ５の終了時刻において、ネットワーク内の各ユーザに対応付けられている距離情報は、図１１Ｅに示したとおりとなる。
【００５８】
以上、具体例を基に説明したように、本実施形態のゲーム制御装置において、目標ユーザまでの距離情報を算出する処理は、ネットワーク内の各ユーザがゲームにアクセスした場合（所定の条件を満たした場合）に、目標ユーザを起点としてリンクを辿って外側に順次、目標ユーザまでの距離情報が各ユーザに対応付けられていくようにして行われる。各ユーザに対応付ける距離情報は、その仲間に距離情報が対応付けられている場合に１（つまり、仲間のユーザとの間のリンク数）を加えるだけでよいため、各ユーザについて目標ユーザまでの距離を都度算出する必要がなく、処理負荷が低いものとなっている。
【００５９】
（６）本実施形態のゲーム
次に、本実施形態のゲームの内容について、図１２〜１８を参照しながら説明する。図１２〜１８は、本実施形態のゲームにおいて、探索ユーザの通信端末１０に表示される一連のウェブページを示す図である。なお、各ウェブページは、一例として、図１１Ｅに示したようにネットワーク内の各ユーザに距離情報が対応付けられた後に探索が行われた場合を想定する。
以下の説明において、通信端末１０に表示されるウェブページ上で表示されるメニュー、マーク等はウェブページ上で所望の位置に配置されるものであって、通信端末１０で視認されるメニュー、マーク等の表示画面上の位置は、ユーザの方向指示釦あるいはタッチパネル操作によるウェブページのスクロール操作によって変化しうる。
【００６０】
図１２に例示する本実施形態のゲームのトップページＰ０は、個々のユーザＩＤに応じたウェブページで構成される。図１２の例では、ユーザ画像とともに、ユーザデータ表示領域、及びメニュー表示領域を含む。図１２では、一例としてユーザＫＮＭ（ユーザ名；ＫＮＭ）の通信端末１０に表示されるウェブページの例を示している。
ユーザデータ表示領域は、対象となるユーザＩＤのユーザデータに含まれる、進行レベル、体力ポイントの各項目のデータ（図６参照）が表示される領域である。メニュー表示領域は、本実施形態のゲームにおいて、ユーザの仲間を辿ることによって目標ユーザを探し当てる処理である探索処理の実行を開始するためのメニューｍ１（「ユーザ探索」）を含む複数のメニュー（メニューｍ１以外は図示せず）が表示される領域である。
【００６１】
図１２のゲームのトップページＰ０上でメニューｍ１（「ユーザ探索」）が選択操作されると、Ｐ１に示すようにウェブページが更新される。このウェブページＰ１には、現在選択可能な（つまり、終了時刻に達していない）１又は複数の探索のミッションの一覧が表示される。各ミッションには、目標ユーザ（ＸＹＺ等）、終了時刻までの時間（１時間３５分等）、及び特典ポイント（１０００ｐｔ等）が対応付けて表示される。各ミッションに対応付けて、メニューｍ１１，１２，…（「この人を探す」）が表示される。ウェブページＰ１において、例えばメニューｍ１１が選択操作されると、図１３（ａ）のＰ２に示すようにウェブページが更新される。ウェブページＰ２は、例えば、表示領域１０１，１０２，１０４によって構成される。なお、複数の探索のミッションのいずれかが選択された後に、目標ユーザに対する探索の過程で表示されるウェブページを、以下では「探索ページ」ということもある。
【００６２】
図１３（ｂ)には、ウェブページＰ２がユーザＫＮＭの通信端末１０に表示された時点において、基準ノードＮｒの位置を示すソーシャルグラフを概念的に表している。ソーシャルグラフ自体は、図１１Ｅに例示したものと同じである。この時点では、ソーシャルグラフ上で、ユーザＫＮＭは、基準ノードＮｒに相当する。
【００６３】
図１３（ａ）のウェブページＰ２において、表示領域１０１は、基準ユーザに距離情報が対応付けられている場合に、その距離情報を、目標位置（ソーシャルグラフ上の目標ノードに相当する）を基準として棒状に表示するための領域である。ユーザＫＮＭがゲームにアクセスする前には、図１１Ｅに示したようにユーザＫＮＭに距離情報が対応付けられていないが、その後にユーザＫＮＭがゲームにアクセスすることによって、仲間のユーザＢＪＣに対応付けられている距離情報：３を基にユーザＫＮＭに対して距離情報：４が対応付けられる。それによって、ウェブページＰ２の表示領域１０１には、距離情報：４が棒状に表示される。なお、ウェブページＰ２の表示領域１０１において、「現在位置」は、探索の基礎となるソーシャルグラフ上の基準ノードに相当する。表示領域１０２には、ユーザＫＮＭによってＰ１で選択されたミッションについて、ユーザの現在位置（Ｐ２では、探索ユーザであると同時に基準ユーザでもある「ＫＮＭ」が表示される。）と、探索の終了時刻までの残り時間とが表示される。
表示領域１０４には、探索ユーザが基準ユーザを更新するために、基準ユーザの仲間のユーザの一覧（仲間リスト）が表示される。Ｐ２の例では、探索ユーザであると同時に基準ユーザでもあるユーザＫＮＭの仲間リストが表示される。
【００６４】
図１３（ａ）のウェブページＰ２において、新たな基準ユーザとして例えばユーザＢＪＣが選択操作された場合、図１４（ａ）のＰ３に示すようにウェブページが更新される。ウェブページＰ３は、例えば、上述した表示領域１０１，１０２，１０４に加え、表示領域１０３を含む。表示領域１０３は、探索ユーザと基準ユーザが異なる場合に表示されるウェブページに含まれる。
ウェブページＰ２の表示領域１０３は、基準ユーザとなるユーザのユーザ画像と、当該ユーザに対して挨拶メッセージを送信するためのメニューｍ２１（「挨拶する」）と、当該ユーザを新たに仲間として関係付ける申請を行うためのメニューｍ２２（「仲間に誘う」）とを含む。このようなメニューを設けることで、探索ユーザは、探索の過程で認識した他のユーザと直接的にコミュニケーションをとることができ、他のユーザと仲間の関係を構築できる機会が与えられる。例えば、メニューｍ２１が選択操作されると、テキストメッセージを入力するためのテキストボックスと、送信釦とを含むウェブページ（図示せず）に更新される。そのテキストボックス内にメッセージが入力された状態で送信釦を選択操作することで、当該メッセージが受け付けられ、基準ユーザに届けられる仕組みとなっている。本実施形態のゲームにおいて探索ユーザは、基準ユーザを変更する度に、自らの仲間ではない他のユーザを認識するようになるため、例えば目標ユーザに関する情報を質問する、あるいは探索ゲームとは無関係の内容についてのメッセージを送信する等の様々なコミュニケーションをとる機会が得られることになる。
【００６５】
図１４（ｂ）に示すように、ウェブページＰ３が表示された時点では、ソーシャルグラフ上での基準ノードＮｒは、ユーザＢＪＣを示すノードに相当する。この時点では、図１４（ｂ)に示すように、基準ユーザであるユーザＢＪＣに距離情報（「３」）が対応付けられているため、図１４（ａ）のウェブページＰ３に示すように、表示領域１０１には、その距離情報が棒状に表示される（つまり、３目盛り分表示される）。
【００６６】
図１４（ａ）のウェブページＰ３において、新たな基準ユーザとして例えばユーザＧＴＲが選択操作された場合、図１５（ａ）のＰ４に示すようにウェブページが更新される。ウェブページＰ４は、Ｐ３と同様の表示形式のウェブページである。
図１５（ｂ）に示すように、ウェブページＰ４が表示された時点では、ソーシャルグラフ上での基準ノードＮｒは、ユーザＧＴＲを示すノードに相当する。この時点では、図１５（ｂ)に示すように、基準ユーザであるユーザＧＴＲに距離情報（「２」）が対応付けられているため、表示領域１０１には、その距離情報が棒状に表示される（つまり、２目盛り分表示される）。
【００６７】
図１５（ａ）のウェブページＰ４において、新たな基準ユーザとして例えばユーザＳＡＭが選択操作された場合、図１６（ａ）のＰ５に示すようにウェブページが更新される。ウェブページＰ５は、Ｐ３と同様の表示形式のウェブページである。
図１６（ｂ）に示すように、ウェブページＰ５が表示された時点では、ソーシャルグラフ上での基準ノードＮｒは、ユーザＳＡＭを示すノードに相当する。この時点では、図１６（ｂ)に示すように、基準ユーザであるユーザＳＡＭに距離情報（「１」）が対応付けられているため、表示領域１０１には、その距離情報が棒状に表示される（つまり、１目盛り分表示される）。
【００６８】
図１６（ａ）のウェブページＰ５において、新たな基準ユーザとして例えばユーザＸＹＺが選択操作された場合、図１７（ａ）のＰ６に示すようにウェブページが更新される。選択操作対象のユーザＸＹＺは目標ユーザであるため、この選択操作によって目標ユーザを探し当てることができたことになる。この場合、ウェブページＰ６に示すように表示領域１０５を設け、目標ユーザの探索に成功したことを通知するためのテキストが表示される。
図１７（ｂ）に示すように、ウェブページＰ６が表示された時点では、ソーシャルグラフ上での基準ノードＮｒは、ユーザＸＹＺを示すノードに相当する。この時点では、図１７（ｂ)に示すように、基準ユーザであるユーザＸＹＺに距離情報（「０」）が対応付けられているため、表示領域１０１では、ユーザＫＮＭの現在位置と目標位置が一致する。
【００６９】
以上、探索ユーザであるユーザＫＮＭが、ユーザ間の仲間関係を辿ることによって、目標ユーザであるユーザＸＹＺを探し当てる場合について説明した。ウェブページＰ２〜Ｐ６に示した例では、ユーザＫＮＭがソーシャルグラフ上の最短経路に沿ってユーザＸＹＺを探し当てた場合の例であるが、このようにうまくいかない場合もある。例えば、ウェブページＰ３（図１４）が表示されているときに、基準ユーザをユーザＢＪＣからユーザＧＴＲではなく、別のユーザに変更された場合を想定する。この場合の表示例を図１８（ａ）に示す。図１８（ａ）に示すウェブページＰ４ａでは、基準ユーザをユーザＢＪＣからユーザＺＡＰに変更した場合の表示例である。この基準ユーザの変更は、図１８（ｂ）に示すように、ソーシャルグラフ上での基準ノードＮｒがユーザＺＡＰを示すノードに変更されたことに相当する。基準ユーザがユーザＢＪＣからユーザＺＡＰに変更された場合、ユーザＺＡＰはゲームにアクセスしていないため距離情報が対応付けられておらず、ウェブページＰ４ａの表示領域１０１には、距離情報が棒状に表示されない。このような場合、表示領域１０１をみた探索ユーザは、基準ユーザとしてユーザＺＡＰを選択したことで目標ユーザとの距離が離れてしまった可能性が高いことがわかる。つまり、距離情報のユーザへの対応付けは、目標ユーザを起点として、所定の条件を満たした順（例えば、ゲームへのアクセスが行われた順）に行われるため、距離情報が対応付けられていないユーザは、ネットワーク上で目標ユーザとの距離が離れていることが推定される。
なお、探索ユーザは、選択した基準ユーザに距離情報が対応づけられていない場合、その基準ユーザ（Ｐ６の例では、ユーザＺＡＰ）に対して、所定の条件を満たすように（例えば、ゲームへのアクセスを行うように）ミニメールを送信できるように構成されてもよい。
【００７０】
（７）ゲーム制御装置における各処理の概要
次に、上述した本実施形態のゲームを実現するためゲーム制御装置における各処理について説明する。
本実施形態では、ゲームサーバ２０及びデータベースサーバ３０によってゲーム制御装置が構成されている。以下では、上述したゲームが適用される場合を例として、本実施形態のゲーム制御装置で実現される機能について、図１９を参照して説明する。図１９は、本実施形態のゲーム制御装置で主要な役割を果たす機能を説明するための機能ブロック図である。
【００７１】
関係付け手段５１は、ユーザ間を関係付ける機能を備える。例えば、関係付け手段５１は、ユーザＩＤに基づく申請を契機として、当該ユーザＩＤと他のユーザＩＤとを仲間として関係付ける機能を備える。
関係付け手段５１の機能は例えば、以下のとおり実現される。ゲームサーバ２０のＣＰＵ２１は、通信インタフェース部２５を介して、あるユーザＩＤに対応するユーザの通信端末１０から、仲間になりたいユーザＩＤ（あるいは、対応するユーザ名）を指定した申請メッセージ（申請）を受け付ける。この申請メッセージの送信は、ユーザの通信端末１０に提供されるウェブページの機能として予め設定されている。ＣＰＵ２１は、申請メッセージを受け付けると、申請メッセージに含まれるユーザＩＤに基づくアクセスがあったタイミングで、そのユーザＩＤに対応する通信端末１０宛に、他のユーザＩＤに基づく申請を承認するか否かを返信することを要求するためのウェブページを表示させるＨＴＭＬデータを送信する。その申請を承認することが返信されれば、ＣＰＵ２１は、両者を仲間として登録する。具体的には、ＣＰＵ２１は、ユーザデータベース３１内の対応する２つのユーザＩＤのユーザデータの「仲間のユーザＩＤ」の箇所（図６参照）にデータを書き込む。
なお、ユーザ同士を関係付ける条件は、上記のような申請と承認を必要とする形式に限らず、同一の進行レベルのユーザ同士を、ゲーム内で関係付けられたユーザ同士と位置付け、仲間として登録してもよい。あるいは、所定回数の挨拶メッセージを送信するユーザ同士を自動的に仲間として登録してもよいし、ユーザ間でバトルや協力プレイを行うゲーム上のモードが存在する場合には、所定回数以上バトル又は協力プレイを行ったユーザ同士を自動的に仲間として登録してもよい。また、協力プレイでは、応援の要請を行ったユーザと、当該ユーザからの所定回数以上の応援の要請に対して承諾したユーザとを仲間として登録してもよい。
【００７２】
設定手段５２は、ユーザ間の関係付けを示すリンクに基づくネットワークにおいて、探索の目標となるユーザである目標ユーザを設定する機能を備える。
設定手段５２の機能を実現するために、ゲームサーバ２０のＣＰＵ２１は、新たな探索のミッションを生成する場合、新たな探索ＩＤを発行し、探索ＩＤに対応する目標ユーザ、終了時刻、及び特典ポイントを決定して、探索データベースに書き込む。
なお、目標ユーザの設定は適宜行われてもよく、例えば、所定の条件を満たすユーザを目標ユーザとして設定してもよい。例えば、複数のユーザからなるグループがゲーム上で設定されている場合に、グループ内のいずれかのユーザがグループに対して不利となる処理を行ったことを条件として、当該ユーザを目標ユーザに設定し、グループ内の他のユーザを探索ユーザに設定してもよい。この場合、例えば、グループ内で目標ユーザを「裏切り者」として探し当てるゲーム設定としてもよい。
【００７３】
第１対応付け手段５３は、目標ユーザに所定の距離情報（第１の数値情報）を対応付ける機能を備える。本実施形態において、目標ユーザまでの距離情報（目標ユーザまでの最短のリンク数）は、本発明の数値情報の一例である。本実施形態の例では、第１の数値情報は「０」である。
第１対応付け手段５３の機能を実現するために、ゲームサーバ２０のＣＰＵ２１は、距離データにアクセスして、目標ユーザに対応するユーザＩＤについて、自らが目標ユーザとなっている距離情報として「０」を書き込む。図９の例では、ユーザＩＤ：４５６７８９のユーザと、ユーザＩＤ：７６５４３２のユーザがそれぞれ、探索ＩＤ：０１，探索ＩＤ：０２の目標ユーザに設定されており、対応付けられる距離情報として「０」が書き込まれる。
【００７４】
判定手段５４は、各ユーザが所定の条件を満たすか否か判定する機能を備える。前述したように、本実施形態において、各ユーザについての所定の条件は、「ユーザがゲームにアクセスしたこと」である。
判定手段５４の機能を実現するために、ゲームサーバ２０のＣＰＵ２１は、ユーザの通信端末１０から、本実施形態のゲームのＵＲＬを指定したＨＴＴＰリクエストを通信インタフェース部２５を介して取得すると、当該ユーザがゲームにアクセスしたと判断する。
【００７５】
特定手段５５は、ネットワーク上で、ゲームにアクセスしたユーザ（所定の条件を満たすユーザ；「第１ユーザ」という。）の仲間のユーザ（リンク数が１の範囲内のユーザ）に対応付けられている距離情報のうち、最も小さい距離情報（第１の数値情報（「０」）に最も近い数値情報）を特定する機能を備える。なお、特定手段５５によって特定される距離情報に対応付けられたユーザを「第２ユーザ」という。
特定手段５５の機能を実現するために、ゲームサーバ２０のＣＰＵ２１は、ユーザ（処理対象のユーザ；第１ユーザ）がゲームにアクセスしたと判断した場合、当該ユーザの仲間に対応付けられている距離情報のうち、最も小さい距離情報（第２ユーザに対応付けられた距離情報）を特定する。この場合、ＣＰＵ２１は、ユーザデータにアクセスして第１ユーザの仲間のユーザＩＤを読み出し、そのユーザＩＤに対応する距離情報を距離データから読み出し、その中で最も小さい距離情報を特定する。距離情報を特定する処理は、ネットワーク内のいずれかのユーザがゲームにアクセスしたと判断する度に逐次行われる。
【００７６】
第２対応付け手段５６は、特定手段５５によって特定された距離情報（数値情報）と、第２ユーザと第１ユーザの間のリンク数とに基づいて、第１ユーザに距離情報（数値情報）を対応付ける機能を備える。なお、本実施形態では、第１ユーザと第２ユーザは仲間の関係にあるため、「第２ユーザと第１ユーザの間のリンク数」は１である。
第２対応付け手段５６の機能を実現するために、ゲームサーバ２０のＣＰＵ２１は、仲間に対応付けられている距離情報のうち最も小さい距離情報を特定した後、その特定した距離情報に１（仲間の間のリンク数）を加えた値を、処理対象のユーザ（第１ユーザ）に対応付けられる距離情報として、距離データに書き込む。
【００７７】
変更手段５７は、目標ユーザの探索を行う探索ユーザの入力情報に応じて、探索の基準となるユーザである基準ユーザをネットワークのリンクに基づき順次変更する機能を備える。なお、本実施形態では、探索開始時の基準ユーザを探索ユーザとする場合の例である。
変更手段５７の機能は、以下のようにして実現できる。ゲームサーバ２０のＣＰＵ２１は、例えば定期的に、あるいは逐次、各ユーザのユーザデータの仲間のユーザＩＤを読み出し、隣接リストを生成してＲＡＭ２３に記憶させる。隣接リストは、ユーザをノードで表し、ユーザ間の関係付けの有無をノード間のリンクの有無で表したときのソーシャルグラフを表現するためのデータ構造の例である。なお、ソーシャルグラフを表すデータ構造は、図８に例示した隣接リストに限られず、隣接行列であってもよい。隣接行列は、行番号及び列番号がそれぞれユーザＩＤに対応した正方行列であり、関係付けの有無を示す１又は０の値により成分を記述した行列である。
【００７８】
探索ユーザとなるユーザが特定の探索ＩＤについての探索ページにアクセスした場合、当該探索ＩＤについての探索が途中であるときには、探索ＩＤとともに基準ユーザのユーザＩＤがユーザデータに書き込まれている。そこで、ＣＰＵ２１は、探索ユーザのユーザデータにアクセスして、対象となる探索ＩＤが書き込まれていると判断した場合、当該探索ＩＤに対応付けられた基準ユーザのユーザＩＤを読み出して、現在の基準ユーザとしてＲＡＭ２３に記憶させる。一方、当該探索ＩＤについての探索が初めてであるときには、対象となる探索ＩＤがユーザデータに書き込まれていない。そこで、ＣＰＵ２１は、探索ユーザのユーザデータにアクセスして、対象となる探索ＩＤが書き込まれていないと判断した場合、自身の（つまり、探索ユーザの）ユーザＩＤを現在の基準ユーザとしてＲＡＭ２３に記憶させる。
【００７９】
ＣＰＵ２１は、基準ユーザの変更先のユーザの候補を探索ユーザに提示する場合、隣接リストを参照して、現在の基準ユーザのユーザＩＤに対応する１又は複数のユーザのユーザＩＤを読み出し、読み出したユーザＩＤに対応するユーザの情報を一覧形式で表示するためのＨＴＭＬデータを生成して、探索ユーザの通信端末１０へ送信する。また、ＣＰＵ２１は、基準ユーザの変更先のユーザについての選択結果（入力情報）を含むＨＴＴＰリクエストを取得した場合、探索ユーザに対応付けられる基準ユーザを更新する。基準ユーザが更新された場合には、ＲＡＭ２３内の基準ユーザのユーザＩＤを逐次、あるいは定期的にユーザデータに書き込む。つまり、ユーザデータ内の基準ユーザのデータを更新する。
【００８０】
提示手段５８は、変更手段５７によって基準ユーザを変更する度に、変更後の基準ユーザに距離情報（数値情報）が対応付けられている場合には、当該距離情報に基づく情報を探索ユーザに提示する機能を備える。
提示手段５８の機能を実現するために、ゲームサーバ２０のＣＰＵ２１は、ゲームサーバ２０のＣＰＵ２１は、基準ユーザの変更先のユーザについての選択結果を含むＨＴＴＰリクエストを取得した場合、距離データにアクセスして、選択されたユーザに対応付けられた距離情報を読み出し、その距離情報を含むＨＴＭＬデータを生成して探索ユーザの通信端末１０へ送信する。このＨＴＭＬデータを解釈することで通信端末１０に表示されるウェブページは、図１３〜１５に例示したＰ２〜Ｐ６であり、これらのウェブページの表示領域１０１には、選択されたユーザ（変更後の基準ユーザ）に距離情報が対応付けられている場合には、現在位置と目標位置の距離情報としてリンク数が棒状に表示される。
【００８１】
（８）本実施形態のゲーム制御装置の主要な処理のフロー
次に、本実施形態のゲーム制御装置により行われる主要な処理のフローの一例について、図２０〜２２のフローチャートを参照して説明する。図２０は、本実施形態のゲームにおいて、ユーザの仲間関係を示すソーシャルグラフの隣接リストを更新する処理のフローチャートである。図２１は、図９に例示した距離データを更新する処理のフローチャートである。図２２は、探索処理を示すフローチャートである。なお、図２２に示すフローチャートには、ＨＴＴＰリクエストの送受信、及びウェブページの表示処理については、煩雑にならないように記載せず、その代わりに、例示したウェブページＰ１〜Ｐ６が表示されるタイミングをＰ１〜Ｐ６の符号で示してある。
【００８２】
（８−１）隣接リストの更新処理（図２０）
図２０に示す隣接リストの更新処理は、例えば毎日所定の時刻になると実行される場合が示されている。所定の時刻になったと判断した場合（ステップＳ１０：ＹＥＳ）、ゲームサーバ２０のＣＰＵ２１は、各ユーザのユーザデータの仲間のユーザＩＤを読み出す（ステップＳ２０）。次いでＣＰＵ２１は、各ユーザのユーザＩＤと、各ユーザの仲間のユーザＩＤとを対応付けて隣接リストを生成し、ＲＡＭ２３に記憶されている隣接リストのデータを更新する（ステップＳ３０）。これにより、任意のタイミングで構築あるいは破棄されうるユーザ間の仲間関係は、毎日所定の時刻に、探索処理に使用される隣接リストに反映されることになる。このような更新処理は、後述する探索処理の実行中に、当該探索処理の基礎となる隣接リストが変更されない点で好都合である。
なお、隣接リストの更新は、定期的に行われる場合に限られず、逐次行われてもよい。例えば、ＣＰＵ２１は、ユーザ間の仲間関係が新たに形成される度に（例えば、一方のユーザからの仲間の申請に対して他方のユーザからの承諾が受け付けられたタイミングで）、隣接リストを更新してもよい。
【００８３】
（８−２）距離データの更新処理（図２１）
図２１に示す距離データの更新処理は、ユーザ単位で順次行われる。ゲームサーバ２０のＣＰＵ２１は、ステップＳ６０以降の処理について、処理対象のユーザが所定の条件を満たす場合（ステップＳ５０：ＹＥＳ）、すなわち、ゲームにアクセスしたと判断した場合に行う。ステップＳ５０の判断は、ユーザの通信端末１０から、本実施形態のゲームのＵＲＬを指定したＨＴＴＰリクエストを通信インタフェース部２５を介して取得した結果に基づいて行われる。処理対象のユーザがゲームにアクセスしたと判断されない場合には（ステップＳ５０：ＮＯ）、終了する。
【００８４】
ステップＳ５０の判断がＹＥＳである場合、ＣＰＵ２１は、処理対象のユーザの仲間のうち、距離情報が対応付けられている仲間がいるか否かを判断する（ステップＳ６０）。距離情報が対応付けられている仲間がいなければ終了する（ステップＳ６０：ＮＯ）。ＣＰＵ２１は、距離情報が対応付けられている仲間がいる場合（ステップＳ６０：ＹＥＳ）、その仲間に対応付けられている距離情報の中で最も小さい距離情報を特定する（ステップＳ７０）。距離情報が対応付けられている仲間が１人の場合には、その仲間の距離情報がステップＳ７０で特定される。
次いでＣＰＵ２１は、ステップＳ７０で特定した距離情報に１（仲間の間のリンク数）を加えた値を、処理対象のユーザ（第１ユーザ）に対応付けられる距離情報として決定し（ステップＳ８０）、処理対象のユーザに対応付けて、決定した距離情報を距離データに書き込む（ステップＳ９０）。
【００８５】
（８−３）探索処理（図２２）
ゲームサーバ２０のＣＰＵ２１は、トップページＰ０上でメニューｍ１（「ユーザ探索」）の選択操作結果を含むＨＴＴＰリクエストを取得すると、探索データベースにアクセスしてユーザが選択可能な（つまり、終了時刻に達していない）１又は複数の探索のミッションのデータを読み出して当該データを含むＨＴＭＬデータを生成してユーザの通信端末１０へ送信する。これにより、ウェブページＰ１（図１２参照）がユーザの通信端末１０に表示される。ウェブページＰ１において、探索ユーザとなるユーザが、いずれかの探索のミッションを選択することにより、図２２の探索処理が開始される。ゲームサーバ２０のＣＰＵ２１は、ミッションの選択結果（つまり、メニューｍ１１，１２，…のいずれかの選択操作結果）を含むＨＴＴＰリクエストを取得すると（ステップＳ１００：ＹＥＳ）、選択されたミッションに対応する探索ＩＤについての探索の処理（ステップＳ１１０以降の処理）を実行する。ＣＰＵ２１は、ミッションの選択結果を含むＨＴＴＰリクエストを取得しない場合には（ステップＳ１００：ＮＯ）、終了する。
【００８６】
ステップＳ１００：ＹＥＳの場合、ＣＰＵ２１は、基準ユーザと目標ユーザの各々のユーザＩＤをＲＡＭ２３に記憶させる（ステップＳ１１０）。具体的には、ＣＰＵ２１は、探索ユーザのユーザデータにアクセスして、対象となる探索ＩＤが書き込まれていると判断した場合、当該探索ＩＤに対応付けられた基準ユーザのユーザＩＤを読み出して、現在の基準ユーザとしてＲＡＭ２３に記憶させる。一方、当該探索ＩＤについての探索が初めてであるときには、探索ユーザのユーザＩＤを現在の基準ユーザとしてＲＡＭ２３に記憶させる。ＣＰＵ２１は、探索データベースから読み出した、対象となる探索ＩＤの目標ユーザのユーザＩＤをＲＡＭ２３に記憶させる。
【００８７】
次いでＣＰＵ２１は、距離データを参照して、ＲＡＭ２３に記憶されている基準ユーザに対応付けられている距離情報を読み出す（ステップＳ１２０）。ＣＰＵ２１は、読み出した距離情報が「０」でない場合（ステップＳ１３０：ＮＯ）、つまり距離情報が１以上であるか、又は、未だ距離情報が対応付けられていない場合には、ステップＳ１４０へ進み、読み出した距離情報が「０」である場合（ステップＳ１３０：ＹＥＳ）、ステップＳ１８０へ進む。
【００８８】
ステップＳ１４０へ進む場合、ＣＰＵ２１は、隣接リストを参照して、現在の基準ユーザのユーザＩＤに対応する１又は複数のユーザのユーザＩＤを読み出す（ステップＳ１４０）。次いでＣＰＵ２１は、ステップＳ１４０で読み出した仲間からなる仲間リストと、ステップＳ１２０で読み出した距離情報とを含むＨＴＭＬデータを生成して、探索ユーザの通信端末１０へ送信する（ステップＳ１５０）。このＨＴＭＬデータを解釈して表示されるウェブページは、例えば図１３のウェブページＰ２に示すように、距離情報に関する情報を表示するための表示領域１０１と、ステップＳ１４０で読み出した仲間からなる仲間リストを表示するための表示領域１０４とを含む。
ＣＰＵ２１は、基準ユーザの変更先のユーザについての選択結果（入力情報）を含むＨＴＴＰリクエストを取得した場合（ステップＳ１６０：ＹＥＳ）、探索ユーザに対応付けられるＲＡＭ２３内の基準ユーザを更新して（ステップＳ１７０）、ステップＳ１２０に戻る。ＣＰＵ２１は、基準ユーザの変更先のユーザについての選択結果（入力情報）を含むＨＴＴＰリクエストを取得しない場合（ステップＳ１６０：ＮＯ）、待機する。
【００８９】
ステップＳ１２０〜Ｓ１７０の処理は、基準ユーザと目標ユーザが一致するまで繰り返し行われる。基準ユーザと目標ユーザが一致した場合、つまり、ステップＳ１２０で読み出した距離情報が０であると判断した場合には（ステップＳ１３０：ＹＥＳ）、ＣＰＵ２１は、通信インタフェース部２５を介して、探索ユーザの通信端末１０に対して、例えば図１７のウェブページＰ６に示すように、探索が成功したことを示すテキストを含むＨＴＭＬデータを送信する。つまり、探索が成功したことが通知される（ステップＳ１８０）。
【００９０】
以上詳述したように、本実施形態において実現される探索ゲームでは、探索を行う探索ユーザは、基準ユーザを順次変更し、ユーザ間の関係付けを示すリンクに基づくネットワークを辿ることによって目標ユーザを探索し、探索に成功した場合に特典が探索ユーザに付与される探索ゲームを実行するように構成されている。基準ユーザと目標ユーザとの間の最短経路の距離に関する情報が探索ユーザに提示されるため、探索ユーザは目標ユーザとの距離を認識しながら探索を進めることができる。そして、この探索ゲームでは、目標ユーザが探索ユーザと関係付けられていない場合、探索ユーザは、目標ユーザを探索する過程で、あるいは目標ユーザを効率的に探し当てるために、自らと関係付けられていない他のユーザ(基準ユーザ)との間で、例えば目標ユーザに関する情報を質問する等の様々なコミュニケーションをとる機会が得られることになる。よって、本実施形態のゲーム制御装置によれば、新たなユーザ間の関係を構築することを促進できる。
【００９１】
このゲーム制御装置では、ゲームにアクセスした（つまり、所定の条件を満たす）各ユーザを第１ユーザとした場合に、第１ユーザに対応付ける距離情報（数値情報）は、第１ユーザの仲間（第２ユーザ）の既知の距離情報（数値情報）の値に１（第２ユーザと第１のユーザの間のリンク数）を加えることで決定される。そして、予め距離情報として「０」（第１の数値情報）が対応付けられている目標ユーザとの間のリンク数が少ないユーザから、ゲームにアクセスしたことを契機として順次、距離情報が対応付けられていく。このような各ユーザに対応付ける距離情報の決定は、各ユーザがゲームにアクセスする度に行われるため、処理の負荷のタイミングが分散されることに加え、処理自体も第１ユーザから目標ユーザまでの最短経路を求める処理ではなく、単に加算演算で済み、低い負荷の処理となる。
【００９２】
上述した実施形態において、各ユーザに距離情報を対応付ける処理は、探索の処理自体とは並行して行われてよい。両者が並行に行われる場合であっても、各ユーザに距離情報を対応付ける処理はネットワーク内のユーザがゲームにアクセスしたタイミングで行われ、探索において基準ユーザに対応付けられた距離情報を読み出す処理は基準ユーザが変更されたタイミングで行われる。つまり、２つの処理が時間軸上で分散して行われる。
【００９３】
このゲーム制御装置では、探索ユーザの入力情報に応じて基準ユーザが変更される場合、距離データを参照することで、基準ユーザから目標ユーザまでの距離が直ちにわかるため、基準ユーザの変更の都度に基準ユーザから目標ユーザまでの距離（リンク数）を算出する必要がなく、探索のための処理負荷が極めて低いという利点がある。
【００９４】
図７及び図９に示したように、上述した実施形態のゲームでは、探索ＩＤ毎の複数の探索が行われ、各探索について目標ユーザが設定される場合について説明した。この場合、設定手段５２は、複数の目標ユーザを設定し、第２対応付け手段５６は、目標ユーザ毎にゲームにアクセスした処理対象のユーザ（第１ユーザ）に対して距離情報（数値情報）を対応付ける機能を備える。複数の目標ユーザを設定することで、ユーザが複数の探索を並行して実行することができるため、探索ゲームとしての興趣性を高めることができる。しかし、複数の探索が行われる場合に限られず、単一の探索のみが行われる場合であってもよい。
【００９５】
実施形態に係るゲーム制御装置において、第２対応付け手段５６は、第２ユーザに対応付けられている距離情報（数値情報）と、第２ユーザと第１ユーザの間のリンク数とを加算して、第１ユーザ（ゲームにアクセスした処理対象のユーザ）に対応付ける距離情報を算出する機能を備える場合について説明した。つまり、当該機能を実現するために、ゲームサーバ２０のＣＰＵ２１が、第１ユーザの仲間に対応付けられている距離情報の中で最も小さい距離情報を特定した後、その特定した距離情報に１（仲間の間のリンク数）を加えた値を、処理対象のユーザ（第１ユーザ）に対応付けられる距離情報として算出する場合について説明した。この場合には、この構成では、ネットワーク上の各ユーザに対応付ける距離情報（数値情報）が加算処理によって算出されるため、距離情報を算出するときの処理の負荷が軽減される。
しかし、第１ユーザに対応付ける距離情報を算出する処理は、上述したように加算演算を用いる方法に限られない。第１ユーザに対応付ける距離情報が目標ユーザから遠ざかる毎に、距離情報を低下させてもよい。例えば、ＣＰＵ２１は、第１ユーザの仲間に対応付けられている距離情報の中で最も大きい距離情報を特定した後、その特定した距離情報から１（仲間の間のリンク数）だけ減らした値を、処理対象のユーザ（第１ユーザ）に対応付けられる距離情報として算出する。この場合、目標ユーザに予め対応付ける距離情報を「０」としたならば、目標ユーザ以外のユーザに対応付けられている距離情報の絶対値が、目標ユーザからそのユーザまでの距離を表すことになる。つまり、距離情報は、減算処理によって算出されてもよい。
【００９６】
なお、上述した実施形態では、第２ユーザと第１ユーザの間のリンク数が１である場合、つまり、第２ユーザと第１ユーザが仲間の関係にある場合を例として説明したが、第２ユーザと第１ユーザの間のリンク数は２以上であってもよい。第２ユーザと第１ユーザの間のリンク数は２以上であっても大きな数字でなければ、ユーザに距離情報を対応付ける処理の負荷は大きくなることはない。例えば、第１ユーザとの間のリンク数が２であるユーザについて、ユーザに対応付けられている距離情報を読み出す場合、各ユーザの仲間の数が３０である場合、総当りでみた場合でも９００（＝３０２）人のユーザに対応付けられている距離情報を読み出せば済む。第１ユーザから所定のリンク数の範囲にある第２ユーザを基にして、第１ユーザに対して距離情報を対応付ける場合に、第２ユーザと第１ユーザの間のリンク数を２以上とすることで、目標ユーザにより近い第２ユーザに基づいて第１ユーザに対応付ける距離情報を決定することができるため、ネットワーク内の各ユーザに対して距離情報をより素早く対応付けることができるようになる。なお、第２ユーザと第１ユーザの間のリンク数を大きくするにつれて処理の負荷が増大していくため、ＣＰＵ２１の処理能力に基づいて、第２ユーザと第１ユーザの間の適切なリンク数を設定することが好ましい。
【００９７】
ここで、第２ユーザと第１ユーザの間のリンク数が２以上である場合でも、第２ユーザ自体を特定する必要はない。第１ユーザから２以上の所定数の範囲内にいるユーザに対応付けられた距離情報の中で、目標ユーザに対応付けられている距離情報（第１の数値情報；上記実施形態では「０」）に最も小さい距離情報が特定できればよい。このような距離情報を特定するに当たって、ＣＰＵ２１は、以下のように処理を行ってもよい。ＣＰＵ２１は先ず、第１ユーザの仲間のユーザ（第１ユーザからのリンク数が１のユーザ）に対応付けられている数値情報のうち最も小さい数値情報を特定し、その数値情報に１を加えることで、第１ユーザに対応付ける数値情報を決定する。ＣＰＵ２１は、第１ユーザの仲間のユーザの中に数値情報が対応付けられているユーザが存在しないと判断した場合には、次に、第１ユーザの仲間のユーザの仲間（第１ユーザからのリンク数が２のユーザ）に対応付けられている数値情報のうち最も小さい数値情報を特定し、その数値情報に２を加えることで、第１ユーザに対応付ける数値情報を決定する。同様にして、第１ユーザから３以上リンク数が離れたユーザに対応付けられた数値情報に基づいて、第１ユーザに対応付ける数値情報が決定される。
【００９８】
（９）変形例
上述した実施形態では、変更手段５７は、探索ユーザを起点として、探索の基準となるユーザである基準ユーザをネットワークのリンクに基づき順次変更する場合について説明したが、探索ユーザを起点とする場合に限られない。出発ノードに対応するユーザは、仲間関係によって形成されるネットワーク上の任意のユーザであってよく、探索ユーザと異なっていてもよい。
さらに以下において、上述した実施形態のいくつかの変形例について説明する。
【００９９】
（９−１）変形例１
上述した実施形態のゲーム制御装置では、特定手段５５及び第２対応付け手段５６において、ネットワーク内の各ユーザが所定の条件を満足する場合に、各ユーザの距離情報（数値情報）に対する対応付けが行われる。つまり、各ユーザに対応付けられている距離情報が新たに対応付けられるか、既に対応付けられている距離情報が更新される処理が行われる。このような処理のタイミングは、処理の負荷を低減させるために分散している方が好ましい。かかる観点から、上述した実施形態では、所定の条件をユーザがゲームにアクセスしたこととした。ネットワーク内の各ユーザがゲームにアクセスするタイミングは比較的ランダムであると考えられるため、所定の条件をユーザがゲームにアクセスしたこととすることは、処理の負荷を低減させる上で好都合である。なお、「アクセス」は、ゲームへのアクセス等、認証処理を伴うアクセスのほか、ゲーム内の特定のイベントや特定のゲーム要素（ミニゲーム等）、特定のステージに対するアクセスであってもよい。
なお、ユーザのアクセスが過度に行われる場合には、各ユーザに対する距離情報の対応付けの処理が頻繁に行われ、処理の負荷が高まる虞もある。その場合には、例えばゲームへのアクセスが所定の回数ある度に、所定の条件を満たしたと判断してもよい。あるいは、ゲームにアクセスし、かつ当該アクセスを基準として過去の所定時間（例えば、１時間）内にゲームにアクセスしていないことを所定の条件としてもよい。
【０１００】
しかし所定の条件は、ユーザがゲームにアクセスしたことに限られない。所定の条件は、ユーザ毎にランダムに割り当てられた時刻、あるいはユーザ毎に所定の規則に従って割り当てられた時刻に達したことであってもよい。これによっても、各ユーザの距離情報（数値情報）に対する対応付けの処理のタイミングが分散するため、処理の負荷を低減させる上で好都合である。所定の規則の一例として、１０分間隔で、ユーザＩＤの下１桁が１のユーザ群、ユーザＩＤの下１桁が２のユーザ群、…といった具合に、順に処理対象のユーザ群を時刻に割り当ててもよい。
【０１０１】
所定の条件は、探索ユーザの入力に基づいて基準ユーザとして選択されたことであってもよい。また、所定の条件は、ユーザによって仲間関係の更新（他のユーザを仲間として追加すること、あるいは仲間のユーザとの間の仲間関係を解除すること）が行われたことであってもよい。仲間関係が更新されると、基準ユーザと目標ユーザとの間の距離が変わる可能性があるが、仲間関係の更新があったことを上記所定の条件とすることで、基準ユーザと目標ユーザとの間の距離が適正化されるように各ユーザに対応付けられる距離情報が更新されるため、仲間関係の更新が探索の結果に適時に反映されるようになる。
【０１０２】
（９−２）変形例２
上述した実施形態のゲームでは、探索ユーザは、自らを起点としてユーザ間の仲間関係を辿ることで目標ユーザを探し当てる仕組みとしたが、ユーザ間の関係は仲間関係に限られず、様々な関係態様によって決定してもよい。例えば、ユーザ間で挨拶メッセージを送信する機能が設けられている場合（例えば、図１４のメニューｍ２１等）、挨拶メッセージの送受信が行われたユーザ間を、挨拶履歴のある関係とし、その関係を辿ることによって目標ユーザを探し当てる仕組みとしてもよい。その場合、ユーザ毎に、挨拶履歴のあるユーザ間を関係付けて、例えばユーザデータに記憶しておき、隣接リストは、挨拶履歴のあるユーザのユーザＩＤを対応付けたものとする。本変形例の場合、例えば図１４（ａ）のＰ３に示したウェブページは、例えば図２３のＰ３ａに示したように表示される。図２３に示すように、本変形例では、基準ユーザの変更は、現在の基準ユーザと挨拶履歴のある他のユーザの中から選択して行われるように構成される。
本変形例は、上述した実施形態において、仲間の関係を、挨拶履歴のある関係に置き換えたものであり、上述した実施形態と同様にして実現することができる。つまり、本変形例では、関係付け手段５１は、挨拶履歴のあるユーザ間を関係付ける機能を備える。
【０１０３】
（９−３）変形例３
上述した実施形態において、変更手段５７は、仲間のネットワーク内の基準ユーザを変更するに当たって、当該基準ユーザの仲間（つまり、基準ユーザに関係付けられた複数のユーザ）の中から一部のユーザを、変更後の基準ユーザの候補として探索ユーザに提示する機能を備えてもよい。つまり、図１３〜１６のウェブページＰ２〜Ｐ５に示した仲間リストでは、現在の基準ユーザのすべての仲間のユーザを選択可能に提示される場合を例示したが、このような場合に限られない。仲間リストでは、現在の基準ユーザの一部の仲間のユーザが表示される場合でもよい。
一部の仲間のユーザのみを仲間リストとして提示するのは、例えば、探索ゲームの難易度を調整する目的で行われてもよい。つまり、ネットワーク内の各ユーザの仲間が多数存在する場合には、探索ユーザにとって、基準ユーザを順次変更しながら目標ユーザを探索することが困難となりうる。そこで、探索ゲームの難易度を低下させる目的で、基準ユーザを変更するに当たってその基準ユーザの仲間のユーザの中から変更後の基準ユーザの候補を制限するようにしてもよい。
本変形例は、以下のようにして実現することができる。ゲームサーバ２０のＣＰＵ２１は、基準ユーザの変更先のユーザの候補を探索ユーザに提示する場合、隣接リストを参照して、現在の基準ユーザのユーザＩＤに対応するユーザのユーザＩＤのうち一部（例えば、所定数のユーザＩＤ）を読み出し、読み出したユーザＩＤに対応するユーザの情報を一覧形式で表示するためのＨＴＭＬデータを生成する。このとき、読み出し対象となる一部のユーザＩＤの中には、距離情報が対応付けられている仲間のユーザＩＤが含まれていることが好ましく、距離情報が対応付けられている仲間の中で距離情報の値が最も小さい仲間のユーザＩＤが含まれていることがさらに好ましい。当該ユーザＩＤが含まれていない場合には、探索ユーザが目標ユーザに辿り着けないか、遠回りせざるを得ないため、探索ゲームの難易度が却って増加する虞があるためである。
【０１０４】
（９−４）変形例４
上述した実施形態において、設定手段５２は、探索開始時の基準ユーザと目標ユーザとの間のリンク数が所定の範囲内となるように、目標ユーザを設定する機能を備えてもよい。
探索の初期において基準ユーザと目標ユーザとの間のリンク数が大きい（つまり、ネットワーク上でユーザ間の距離が離れている）場合には、探索ユーザにとって、基準ユーザを順次変更しながら目標ユーザを探索することが困難となりうる。ネットワーク内の各ユーザの仲間（各ユーザに関係付けられたユーザ）が多数存在する場合には尚更である。そこで、探索開始時の基準ユーザと目標ユーザとの間のリンク数が所定の範囲内となるように、目標ユーザとなるユーザを設定するようにしてもよい。
本変形例を実現するためには、ゲームサーバ２０のＣＰＵ２１は、トップページＰ０上でメニューｍ１（「ユーザ探索」）の選択操作結果を含むＨＴＴＰリクエストを取得すると、探索データベースにアクセスしてユーザが選択可能な（つまり、終了時刻に達していない）１又は複数の探索のミッションのうち、処理対象のユーザ（つまり、探索開始時の基準ユーザ）からみて距離（リンク数）が所定の範囲内にある目標ユーザが設定されているミッションのデータを読み出し、当該データを含むＨＴＭＬデータを生成してユーザの通信端末１０へ送信する。これにより、探索ユーザとなるユーザによって選択されるミッションは、目標ユーザまでのリンク数が所定の範囲内にあるミッションに限定される。
なお、探索データベースに記述されるミッションごとの（各探索ＩＤ）のデータは、目標ユーザを予め固定的に設定されていなくてもよい。例えば探索開始時の基準ユーザを探索ユーザとする場合、各ミッションの目標ユーザは、探索ユーザとなるユーザによっていずれかの探索のミッションが選択された時点で、当該ユーザからのリンク数が所定の範囲内にあるユーザのいずれかを目標ユーザとして決定するようにしてもよい。
【０１０５】
（９−５）変形例５
上述した実施形態において、変更手段５７は、仲間のネットワーク内の少なくとも１つのリンクに基づく基準ユーザの変更を制限する機能を備えてもよい。
この構成では、例えばネットワーク内のリンクを遮断して特定のユーザ間の関係付けのリンクを辿ることが禁止されるため、探索ユーザに応じた探索の難易度の設定等、探索ゲームの設定を柔軟に変更することができる。なお、基準ユーザの変更の「制限」は、ユーザ間のリンクを辿ることを完全に遮断する場合に限られず、所定の時間の間のみ遮断する場合であってもよく、特定の探索ユーザに対してのみ遮断されることであってもよい
本変形例は、以下のようにして実現することができる。ゲームサーバ２０のＣＰＵ２１は、基準ユーザの変更先のユーザの候補を探索ユーザに提示する場合、隣接リストを参照して、現在の基準ユーザのユーザＩＤに対応するユーザのユーザＩＤのうち一部を読み出し、読み出したユーザＩＤに対応するユーザの情報を一覧形式で表示するためのＨＴＭＬデータを生成する。このとき、ＣＰＵ２１は、距離データを参照して、現在の基準ユーザのユーザＩＤに対応するユーザの中で最も小さい距離情報が対応付けられているユーザのユーザＩＤを、読み出し対象のユーザＩＤから除外してもよい。これにより、探索ユーザは、目標ユーザに辿り着けないか、遠回りせざるを得なくなるため、探索ゲームの難易度を上昇させることができる。
【０１０６】
なお、リンクの制限は、そのリンクに関連する２ユーザ（つまり、仲間のユーザ同士）のいずれか一方の入力操作に応じて行われてもよいし、そのリンクに関連する２ユーザの双方の合意に基づいて行われてもよい。後者の場合には、リンクに関連する２ユーザのうち一方のユーザからの、リンクを制限することの要求メッセージに対して、他方のユーザが承諾メッセージを送信することで、リンクを制限するようにしてもよい。
また、リンクの制限は、現在の基準ユーザからその仲間のユーザへの基準ユーザの変更を、当該仲間のユーザの属性等に応じて制限することによって行われてもよい。例えば、ネットワーク内の複数のユーザが２グループに分かれており、基準ユーザの変更が同一グループのユーザ間でのみ可能とするゲーム設定を想定する。この場合、基準ユーザの変更として、現在の基準ユーザ（例えば、探索ユーザと同じグループＡに属しているものとする。）から、当該基準ユーザの仲間のユーザのうちグループＡに属しているユーザへの変更のみが許可される。
【０１０７】
例えば、基準ユーザの変更の制限は、目標ユーザと、目標ユーザの仲間（目標ユーザと関係付けられている複数のユーザ）との間の少なくともいずれかのリンクに基づく基準ユーザの変更を制限することにより行われてもよい。これにより、目標ユーザと他のユーザの関係付けを示すリンクを辿るような基準ユーザの変更が制限されるため、効果的にゲームの設定を変更することができる。例えば、探索ユーザからみた場合、目標ユーザに至るリンクが遮断されてしまうと、そのリンク以外のリンクを辿って目標ユーザを探し当てる必要が生ずるため、大きく迂回せざるを得ない状況になる。また、目標ユーザの仲間のユーザが目標ユーザとのリンクを遮断して目標ユーザを匿う（つまり、目標ユーザが探し当てられることを防ぐ）ことを可能とするゲーム設定とすることもできる。
目標ユーザの仲間との間の少なくともいずれかのリンクに基づく基準ユーザの変更を制限するには、ゲームサーバ２０のＣＰＵ２１は、基準ユーザの変更先のユーザの候補を探索ユーザに提示する際に、当該基準ユーザが目標ユーザの仲間である場合には（つまり、距離情報の値として１が対応付けられている場合には）、隣接リストを参照して、現在の基準ユーザのユーザＩＤに対応するユーザのユーザＩＤのうち一部を読み出すときに、読み出し対象となるユーザＩＤの中に目標ユーザのユーザＩＤが含まれないようにする。なお、目標ユーザに至るすべてのリンクを遮断してしまうと、探索ユーザが目標ユーザを探し当てることができなくなってしまうため、目標ユーザに至るすべてのリンクを遮断することを禁止することが好ましい。
【０１０８】
本変形例では、変更手段５７は、基準ユーザの変更を制限する（つまり、リンクを辿ることを制限する）時間を所定時間に設定するようにしてもよい。例えばネットワーク内のリンクを遮断して探索ユーザが特定のユーザ間の仲間関係のリンクを辿ることを禁止することは、探索ゲームの設定を柔軟に変更する上で有効であるが、リンクの遮断を長時間継続することは探索ユーザにとって酷な場合（つまり、ゲームの難易度が高くなり過ぎる場合）もある。そこで、ユーザ間のリンクが遮断される時間を所定時間に制限するようにしてもよい。その場合、ゲームサーバ２０のＣＰＵ２１は先ず、特定のユーザ間のリンク（例えば、目標ユーザとその仲間とのリンク）、又は、ランダムに若しくは所定の規則に従ったリンクを、遮断対象のリンクとして決定する。ＣＰＵ２１は、探索ユーザが基準ユーザを変更したときに、変更後の基準ユーザとその仲間の間のリンクが遮断対象のリンクである場合には、基準ユーザを変更した時点を起点として一定時間、当該リンクによる基準ユーザの変更を禁止する。
【０１０９】
なお、リンクを辿ることを制限する所定時間は、当該リンクに関連する２ユーザ（つまり、仲間のユーザ同士）についての、後述する親密度（仲間のユーザ間の関係性の高さを一定の基準で数値化したもの）に応じて変更してもよい。例えばユーザ間の親密度が所定値よりも高い場合には、上記所定時間を長くしてもよい。例えば、ゲームのシナリオにもよるが、目標ユーザと、目標ユーザの仲間との間の親密度が高い場合には、上記所定時間を長くすることで、仲間が目標ユーザを匿う（つまり、目標ユーザが探し当てられるのを妨げる）時間が長くなるように設定することができる。
【０１１０】
（９−６）変形例６
上述した実施形態では、仲間のユーザ間のリンク数を「１」とした場合について説明したが、仲間のユーザ間のリンク数は、そのユーザ間の関係の程度に応じて重み付けを設定してもよい。例えば、仲間のユーザ間のリンク数は、１より大きくてもよいし、１より小さくてもよい。
本変形例のゲーム制御装置は、ユーザ間の関係の程度に応じた親密度を、関係付け手段５１によって関係付けられたユーザ間に設定する親密度設定手段５９、を備える。第２対応付け手段５６は、ネットワーク上で隣接するユーザ間のリンク数が当該ユーザ間の親密度に応じて調整されるようにして、第１ユーザ（例えば、ゲームにアクセスした各ユーザ）に距離情報（数値情報）を対応付ける機能を備える。
本変形例の機能ブロック図を図２４に示す。図２４に示す機能ブロック図は、図１９に示したものに対して、親密度設定手段５９が追加された点で異なる。
この構成では、ネットワーク上で隣接するユーザ間の関係の程度に応じて、各ユーザに距離情報（数値情報）が対応付けられる。つまり、ネットワーク上のリンクの重み付けがユーザ間で一定ではなく、ユーザ間の関係の程度に応じたリンクの重み付けに基づいて、各ユーザに距離情報が対応付けられる。これにより、例えば、基準ユーザと目標ユーザとの間で複数の経路が存在する場合に、ユーザの入力による基準ユーザの変更次第で、つまりユーザが採用する経路次第で、ユーザに提供される、距離情報に基づく情報が異なる場合が生ずるため、探索ゲームとして興趣性をさらに高めることができる。
【０１１１】
本変形例は、以下のようにして実現することができる。
親密度とは、仲間のユーザ間の関係性の高さを一定の基準で数値化したものである。親密度のデータ（親密度データ）の一例を図２５に示す。図２５に示す親密度データの例では、各ユーザの仲間のユーザ（ユーザＩＤ）と対応付けて、ユーザ間の応援メッセージの送信あるいは受信の頻度（応援頻度）、ゲーム上で使用可能なアイテムなどのプレゼントを送信あるいは受信した回数（プレゼント回数）などが記録され、これらの頻度や回数に基づいて一定の基準で親密度の値が設定される。応援頻度やプレゼント回数が多いほど親密度が高く設定される。また、一定の基準では、親密度の設定の基礎となる項目（図２５では、応援頻度やプレゼント回数など）ごとに、重み付けを考慮したものであってもよい。例えば、応援頻度が少なくてもプレゼント回数が多い場合に親密度を高く設定してもよい。このような親密度データは、例えば、ユーザデータベース３１内に記録される。
【０１１２】
ゲームサーバ２０のＣＰＵ２１は、ＣＰＵ２１は、ユーザ（処理対象のユーザ；第１ユーザ）がゲームにアクセスしたと判断した場合、当該ユーザの仲間のうち、距離情報が対応付けられている仲間がいるか否かを判断する。ＣＰＵ２１は、距離情報が対応付けられている仲間がいる場合、その仲間の中で、対応付けられている距離情報が最も小さい仲間を特定する。次いでＣＰＵ２１は、特定した仲間に対応付けられている距離情報に対して、処理対象のユーザと、特定した仲間との間の親密度に応じた値を加えた値を、処理対象のユーザ（第１ユーザ）に対応付けられる距離情報として決定し、距離データに書き込む。
「親密度に応じた値」は、親密度が高いほど小さな値に設定してもよい。例えば、親密度が低い場合（例えば、親密度：１〜３）に１とし、親密度が中程度の場合（例えば、親密度：４〜６）に０．７とし、親密度が高い場合（例えば、親密度：７〜１０）に０．３としてもよい。
【０１１３】
（９−７）変形例７
上述した実施形態の探索ゲームでは、探索ユーザが目標ユーザを探し当てた場合に、探索ユーザに対して特典を付与してもよい。
本変形例のゲーム制御装置は、基準ユーザと目標ユーザが一致した場合に、探索ユーザに特典を付与する付与手段６０を備える。付与手段６０を設けることで、探索ユーザが目標ユーザを探し当てる動機付けを高めることができる。本変形例の機能ブロック図を図２６に示す。図２６に示す機能ブロック図は、図１９に示したものに対して、付与手段６０が追加された点で異なる。
付与手段６０の機能は、以下のようにして実現することができる。ゲームサーバ２０のＣＰＵ２１は、基準ユーザの変更先のユーザについての選択結果を含むＨＴＴＰリクエストを取得した場合、選択された基準ユーザに対応付けられている距離情報が「０」である場合には、探索データベースを参照して、対象となる探索ＩＤに対応付けられている特典ポイントを、探索ユーザに付与することを決定する。探索ユーザが探索に成功したことと、探索ユーザに付与される特典ポイントの量は、上記ＨＴＴＰリクエストに応答するＨＴＭＬデータに含まれる。ＣＰＵ２１は、探索ユーザのユーザデータにアクセスして、探索ユーザに付与すべき特典ポイントを加算して書き込む処理を行う。
なお、付与手段６０は、ゲーム設定あるいはゲームシナリオに基づき、付加的な条件を満たした上で探索ユーザに特典を付与する機能を備えてもよい。例えば、付与手段６０は、基準ユーザと目標ユーザが一致した後に、探索ユーザと目標ユーザとの間でバトルを行い、探索ユーザが目標ユーザに勝利した場合に、探索ユーザに特典を付与してもよい。あるいは、付与手段６０は、基準ユーザと目標ユーザが一致した後に、探索ユーザが目標ユーザに対して所定のアイテムを付与した場合に、探索ユーザに特典を付与してもよい。
【０１１４】
なお、付与手段６０は、探索開始時の基準ユーザと目標ユーザとの間のリンク数が大きいほど、探索が成功したときに探索ユーザに付与される特典を大きくする機能を備えてもよい。
探索開始時の基準ユーザと目標ユーザとの間のリンク数が大きい（つまり、ネットワーク上でユーザ間の距離が離れている）ほど、探索ユーザが目標ユーザを探し当てるまでに基準ユーザの変更回数が多くなると考えられる。そこで、探索ユーザに付与する特典を、探索開始時の基準ユーザと目標ユーザとの間の距離に応じて設定することで、探索の難易度に応じた特典を探索ユーザに付与することができる。
本変形例では、探索データベースにおいて、探索ＩＤごとに特典ポイントを予め設定しなくてもよい。ゲームサーバ２０のＣＰＵ２１は、処理対象のユーザがいずれかの探索ＩＤのミッションを選択して探索を開始した時点（つまり、初期の時点）の基準ユーザ（例えば上記実施形態では、探索ユーザ）と目標ユーザとの間の距離（リンク数）を記憶しておく。初期の時点の基準ユーザと目標ユーザとの間の距離の算出方法として、例えばダイクストラ法(Dijkstra's Algorithm)やワーシャル-フロイド法（Warshall-Floyd Algorithm）などの公知の如何なるアルゴリズム（グラフ上の最短経路を求めるアルゴリズム）を適用してもよい。ＣＰＵ２１は、目標ユーザとの間の距離が０であると判断した場合に、探索ユーザに特典ポイントを付与することを決定する。このとき、ＣＰＵ２１は、付与される特典ポイントの量を、探索開始時の基準ユーザと目標ユーザとの間の距離が大きいほど大きくする。なお、特典ポイントの量は、初期の距離（つまり、初期の時点の基準ユーザと目標ユーザとの間の距離）と特典ポイントの量の関係を記述したテーブルを参照して決定してもよいし、初期の距離に対して所定の演算式を当てはめることによって特典ポイントを算出してもよい。
【０１１５】
以上、本発明の実施形態について詳細に説明したが、本発明は上記実施形態に限定されない。また、上記実施形態は、本発明の主旨を逸脱しない範囲において、種々の改良や変更をしてもよいのは勿論である。例えば、上記実施形態及び各変形例に記載された特徴は適宜組み合せて適用してもよい。
【０１１６】
上述した実施形態では、本発明の「ユーザの入力」の一例として、ユーザの通信端末に対する所定の操作釦の押下操作の入力や、タッチパネル機能を備えた通信端末に対する表示画面上のタッチ操作の入力の場合を採り上げたが、ユーザの入力はこれらの入力方法に限られない。ユーザの入力は、加速度センサを備えた通信端末を振ることによる操作入力、あるいはジェスチャによる操作入力（ジェスチャ入力）であってもよい。ジェスチャ入力では、撮像機能を備えた通信端末に対する所定のジェスチャを行うことで通信端末がそのジェスチャを画像認識し、予めジェスチャに対応付けられた操作入力を認識する。また、音声認識プログラムを実行可能な通信端末の場合には、ユーザの入力は音声によって行われてもよい。
【０１１７】
このゲーム制御装置において、第１ユーザに対応付けられる「数値情報」が距離情報である場合について説明したが、これに限られない。第１ユーザに対応付けられる数値情報が、目標ユーザとの間の距離に等しいという前提は、目標ユーザに対応付けられる数値情報を「０」とした場合である。目標ユーザに対応付けられる数値情報を、「０」以外の数値、例えば「Ｎ」（Ｎ≠０）とした場合、目標ユーザを起点としてネットワーク上で周囲のユーザに対して、Ｎ＋１，Ｎ＋２，…といった具合に、数値が対応付けられていく。その場合には、数値が対応付けられたユーザと目標ユーザとの間の距離は、両者の数値の差分をとることによって容易に算出することができる。また、目標ユーザを起点としてネットワーク上の周囲のユーザに対して、Ｎ−１，Ｎ−２，…といった具合に、目標ユーザから遠ざかる毎にデクリメントした値を各ユーザに対応付けるようにしてもよい。この場合、数値が対応付けられたユーザと目標ユーザとの間の距離は、例えば、両者の数値の差分の絶対値をとることによって容易に算出することができる。
【０１１８】
上述した実施形態では、本発明の「数値情報に基づく情報」として、目標ユーザまでの距離を示す棒状の情報が探索ユーザに提示される場合について例示したが、これに限られない。「リンク数に基づく情報」は、リンク数に応じたテキスト情報（例えば、「まだ遠い」、「もう少し」等のテキスト）であってもよいし、リンク数に応じた強さ若しくは周波数の音声情報であってもよい。
上述した変形例では、本発明の「特典」の一例として特典ポイントを採り上げたが、本発明の特典は任意の形式で設定することができる。例えば、本発明の特典の他の例として、ゲーム上の進行を有利にするゲーム上の設定、調整、あるいはゲーム上の進行を有利にするアイテムの付与であってもよく、ゲームの進行とは直接関係のないアイテムが付与されることであってもよい。
【０１１９】
上述した実施形態では、ソーシャルゲームに適用される場合を例として説明したが、これに限られない。例えば、ネットワーク上に置かれたサーバ装置と家庭用オンラインゲーム機とを接続した、いわゆるオンラインゲームシステムにおいても、上述した実施形態と同様に、各ユーザに距離情報を対応付けることができ、探索の処理を行うことができる。
【０１２０】
上述した実施形態では、ネットワーク上のゲームサーバ２０及びデータベースサーバ３０によって、図１９に示した各手段の機能を実現する構成としたが、この構成に限られない。これらのすべての手段を通信端末１０によって実現する構成としてもよいし、少なくとも一部の手段を通信端末１０によって実現する構成としてもよい。通信端末１０とゲームサーバ２０とでは実質的に同一のハードウエア構成を採るため、上記実施形態に記載したようにして通信端末１０によっても各機能を実現できる。図２７（ａ），（ｂ）には、本実施形態のゲーム制御装置の各機能（図１９に示す各機能）について、通信端末１０と、ゲームサーバ２０及びデータベースサーバ３０との間の分担例を示す。
【０１２１】
上述した実施形態では、探索ゲームについて説明したが、ユーザを探索する処理はゲームに利用される場合に限られない。例えばソーシャルネットワーク上で、ユーザが他の特定のユーザを探索するときに、一定の関係（例えば、メッセージの送受信履歴のある関係、同一のコミュニティに登録している関係、友達登録している関係等）があるユーザ間をリンクを辿ることによって、特定のユーザのマイページ等を探し当てることを補助する仕組みとすることができる。このような仕組みを実現するネットワークサーバ等の情報処理装置は、図１９に示した各機能と同一の機能を備えていればよい。すなわち、そのような情報処理装置は、図３〜５に示したものと同一のハードウエア構成を用いて、上述した実施形態と同様にして実現することができる。
【符号の説明】
【０１２２】
１０…通信端末
１１…ＣＰＵ
１２…ＲＯＭ
１３…ＲＡＭ
１４…画像処理部
１５…指示入力部
１６…表示部
１７…通信インタフェース部
１８…バス
２０…ゲームサーバ
２１…ＣＰＵ
２２…ＲＯＭ
２３…ＲＡＭ
２４…データベースアクセス部
２５…通信インタフェース部
２６…バス
３０…データベースサーバ
３１…ユーザデータベース
３２…ゲームデータベース
５１…関係付け手段
５２…設定手段
５３…第１対応付け手段
５４…判定手段
５５…特定手段
５６…第２対応付け手段
５７…変更手段
５８…提示手段
５９…親密度設定手段
６０…付与手段
【図１】
0005634468.tif 000002
【図２】
0005634468.tif 000003
【図３】
0005634468.tif 000004
【図４】
0005634468.tif 000005
【図５】
0005634468.tif 000006
【図６】
0005634468.tif 000007
【図７】
0005634468.tif 000008
【図８】
0005634468.tif 000009
【図９】
0005634468.tif 000010
【図１０】
0005634468.tif 000011
【図１１Ａ】
0005634468.tif 000012
【図１１Ｂ】
0005634468.tif 000013
【図１１Ｃ】
0005634468.tif 000014
【図１１Ｄ】
0005634468.tif 000015
【図１１Ｅ】
0005634468.tif 000016
【図１２】
0005634468.tif 000017
【図１３】
0005634468.tif 000018
【図１４】
0005634468.tif 000019
【図１５】
0005634468.tif 000020
【図１６】
0005634468.tif 000021
【図１７】
0005634468.tif 000022
【図１８】
0005634468.tif 000023
【図１９】
0005634468.tif 000024
【図２０】
0005634468.tif 000025
【図２１】
0005634468.tif 000026
【図２２】
0005634468.tif 000027
【図２３】
0005634468.tif 000028
【図２４】
0005634468.tif 000029
【図２５】
0005634468.tif 000030
【図２６】
0005634468.tif 000031
【図２７】
0005634468.tif 000032