(57)【要約】      （修正有）【課題】ユーザの情報検索に係る利便性を向上させるプログラム、方法及び情報処理装置を提供する。【解決手段】ゲームプログラムは、プロセッサに、文字列を入力するための入力操作を受け付けるステップ（Ｓ１００）と、入力文字列に応じて、レコード群の各レコードに含まれている複数項目の情報から、１つ以上かつ全部でない項目を検索項目と決定するステップ（Ｓ１０４）と、入力文字列と適合する文字列が検索対象の情報に含まれているレコードをレコード群から抽出し、抽出結果を表示部に表示させるステップ（Ｓ１１２）と、を実行させる。【選択図】図５
2019046322.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサ、メモリ、ディスプレイ、およびユーザの入力操作を受け付ける操作部を備えるコンピュータにより実行されるプログラムであって、
前記プログラムは、前記プロセッサに、
文字列を入力するための入力操作を受け付けるステップと、
入力された文字列に応じて、レコード群の各レコードに含まれている複数項目の情報から、１つ以上かつ全部でない項目を検索項目と決定するステップと、
前記入力された文字列と適合する文字列が前記検索項目の情報に含まれているレコードを、前記レコード群から抽出した結果を前記ディスプレイに表示させるステップと、を実行させる、プログラム。
【請求項２】
前記複数項目の情報それぞれがとり得る文字数の範囲は項目ごとに異なっており、
前記決定するステップでは、前記入力された文字列の文字数と前記文字数の範囲が適合する情報の項目を、前記検索項目と決定する、請求項１に記載のプログラム。
【請求項３】
前記決定するステップでは、特定の文字が前記入力された文字列に含まれている場合、該特定の文字に対応付けられている項目を、前記検索項目と決定する、請求項１に記載のプログラム。
【請求項４】
前記レコードには少なくとも、
前記ユーザによって設定される文字列から成る情報と、
前記コンピュータまたは他の装置によって設定される文字列から成る情報と、が含まれている、請求項１〜３のいずれか１項に記載のプログラム。
【請求項５】
前記プログラムは、複数のユーザが参加するゲームを実現するためのゲームプログラムであって、
前記レコードは前記ユーザのアカウント情報であって、
前記アカウント情報は、前記ユーザにより設定されたユーザ名と、前記ゲームのサーバによって設定されたユーザＩＤと、を少なくとも含む、請求項４に記載のプログラム。
【請求項６】
前記決定するステップでは、前記複数項目の情報のうち１つの項目を、前記検索項目と決定する、請求項１〜５のいずれか１項に記載のプログラム。
【請求項７】
前記表示させるステップでは、前記検索項目の項目名を、前記抽出した結果とともに前記ディスプレイに表示させる、請求項１〜６のいずれか１項に記載のプログラム。
【請求項８】
プロセッサ、メモリ、ディスプレイ、およびユーザの入力操作を受け付ける操作部を備えるコンピュータがプログラムを実行する方法であって、
前記方法は、
文字列を入力するための入力操作を受け付けるステップと、
入力された文字列に応じて、レコード群の各レコードに含まれている複数項目の情報から、１つ以上かつ全部でない項目を検索項目と決定するステップと、
前記入力された文字列と適合する文字列が前記検索項目の情報に含まれているレコードを、前記レコード群から抽出した結果を前記ディスプレイに表示させるステップと、を含む、方法。
【請求項９】
情報処理装置であって、
前記情報処理装置は、
プログラムを実行することにより、前記情報処理装置の動作を制御するプロセッサと、
前記プログラムを記憶するメモリと、
画像を表示するディスプレイと、
ユーザの入力操作を受け付けるように構成された操作部と、を備え、
前記プロセッサは、
文字列を入力するための入力操作を受け付けるステップと、
入力された文字列に応じて、レコード群の各レコードに含まれている複数項目の情報から、１つ以上かつ全部でない項目を検索項目と決定するステップと、
前記入力された文字列と適合する文字列が前記検索項目に含まれているレコードを、前記レコード群から抽出した結果を前記ディスプレイに表示させるステップと、を実行する、情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報を検索するためのプログラム、方法、および情報処理装置に関する。
【背景技術】
【０００２】
従来から、多数のユーザが参加するゲームであって、ゲーム内でユーザ同士が関わりを持つゲームが提供されている。例えば、スポーツゲームまたはパズルゲーム等では、ユーザ間で協力プレイまたは対戦プレイなどが可能なゲームが多い。また、複数のユーザでグループを作成したり、互いをフォローしたりすることで、ゲームプレイが快適または有利になるように設計されているゲームも多数提供されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１５−１５６９４１号公報（２０１５年９月３日公開）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
このように複数のユーザが関わり合うゲームでは、上述した協力プレイ、対戦プレイ、グループの作成、フォロー等の利用を支援するために、ユーザ検索機能が設けられていることが多い。従来のユーザ検索機能では、検索を行うユーザは検索対象とする検索項目を自身で決定して、該検索項目に合うキーワードを適切な入力欄に入力する必要があった。
【０００５】
一般的に、検索機能において検索項目が増加させて検索機能を充実させると、検索項目の選択欄、またはキーワードの入力欄等が増加してＧＵＩが雑然としがちである。そのため、従来のユーザ検索機能では、検索機能を充実させるほど、かえってユーザの検索項目の決定およびキーワードの入力の手間または間違いが増える虞があった。
【０００６】
この問題はゲームでのユーザ検索に限らず、多項目の情報の中から任意の情報を検索する場合に共通の問題である。
【０００７】
本開示は、上述の問題を鑑みたものであり、その目的は、ユーザの情報検索に係る利便性を向上させることが可能なプログラム、方法、および情報処理装置を実現することにある。
【課題を解決するための手段】
【０００８】
本開示の一態様に係るプログラムは、プロセッサ、メモリ、ディスプレイ、およびユーザの入力操作を受け付ける操作部を備えるコンピュータにより実行されるプログラムである。プログラムは、プロセッサに、文字列を入力するための入力操作を受け付けるステップと、入力された文字列に応じて、レコード群の各レコードに含まれている複数項目の情報から、１つ以上かつ全部でない項目を検索項目と決定するステップと、入力された文字列と適合する文字列が検索項目の情報に含まれているレコードを、レコード群から抽出した結果をディスプレイに表示させるステップと、を実行させる。
【０００９】
本開示の一態様に係る方法は、プロセッサ、メモリ、ディスプレイ、およびユーザの入力操作を受け付ける操作部を備えるコンピュータがプログラムを実行する方法である。方法は、文字列を入力するための入力操作を受け付けるステップと、入力された文字列に応じて、レコード群の各レコードに含まれている複数項目の情報から、１つ以上かつ全部でない項目を検索項目と決定するステップと、入力された文字列と適合する文字列が検索項目の情報に含まれているレコードを、レコード群から抽出した結果をディスプレイに表示させるステップと、を含む。
【００１０】
本開示の一態様に係る情報処理装置は、プログラムを実行することにより、情報処理装置の動作を制御するプロセッサと、プログラムを記憶するメモリと、
画像を表示するディスプレイと、ユーザの入力操作を受け付けるように構成された操作部と、を備える。プロセッサは、文字列を入力するための入力操作を受け付けるステップと、入力された文字列に応じて、レコード群の各レコードに含まれている複数項目の情報から、１つ以上かつ全部でない項目を検索項目と決定するステップと、入力された文字列と適合する文字列が検索項目の情報に含まれているレコードを、レコード群から抽出した結果をディスプレイに表示させるステップと、を実行する。
【発明の効果】
【００１１】
本開示の一態様によれば、ユーザの情報検索に係る利便性を向上させることができる。
【図面の簡単な説明】
【００１２】
【図１】ゲームシステムのハードウェア構成を示す図である。
【図２】ユーザ端末およびサーバの機能的構成を示すブロック図である。
【図３】ユーザ情報のデータ構造の具体例を示す図である。
【図４】ユーザ検索画面の具体例を示す図である。
【図５】ユーザ検索処理の流れを示すフローチャートである。
【図６】ユーザ検索画面および検索結果画面の一例を示す図である。
【図７】ユーザ検索画面および検索結果画面の他の一例を示す図である。
【図８】ユーザ検索画面および検索結果画面の他の一例を示す図である。
【発明を実施するための形態】
【００１３】
〔実施形態１〕
本開示に係るプログラムは、複数項目の情報が含まれたレコードを複数含んだ、あるデータ（レコード群）から、注目する検索ワードに適合するレコードを検索し、抽出するためのプログラムである。本実施形態では、本開示に係るプログラムを、複数のユーザが参加するゲームを実現するゲームシステムに係るゲームプログラムの一部として実装した場合について説明する。
【００１４】
本開示に係るゲームシステムは、複数のユーザにゲームを提供するためのシステムである。以下、ゲームシステムについて図面を参照しつつ説明する。なお、本発明はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が本発明に含まれることが意図される。以下の説明では、図面の説明において同一の要素には同一の符号を付し、重複する説明を繰り返さない。
【００１５】
＜ゲームシステム１のハードウェア構成＞
図１は、ゲームシステム１のハードウェア構成を示す図である。ゲームシステム１は図示の通り、複数のユーザ端末１００と、サーバ２００とを含む。各ユーザ端末１００は、サーバ２００とネットワーク２を介して接続する。ネットワーク２は、インターネットおよび図示しない無線基地局によって構築される各種移動通信システム等で構成される。この移動通信システムとしては、例えば、所謂３Ｇ、４Ｇ移動通信システム、ＬＴＥ（Long Term Evolution）、および所定のアクセスポイントによってインターネットに接続可能な無線ネットワーク（例えばWi-Fi（登録商標））等が挙げられる。
【００１６】
サーバ２００（コンピュータ、情報処理装置）は、ワークステーションまたはパーソナルコンピュータ等の汎用コンピュータであってよい。サーバ２００は、プロセッサ２０と、メモリ２１と、ストレージ２２と、通信ＩＦ２３と、入出力ＩＦ２４とを備える。サーバ２００が備えるこれらの構成は、通信バスによって互いに電気的に接続される。
【００１７】
ユーザ端末１００（コンピュータ、情報処理装置）は、スマートフォン、フィーチャーフォン、ＰＤＡ（Personal Digital Assistant）、またはタブレット型コンピュータ等の携帯端末であってよい。ユーザ端末１００は、ゲームプレイに適したゲーム装置であってもよい。ユーザ端末１００は図示の通り、プロセッサ１０と、メモリ１１と、ストレージ１２と、通信インターフェース（ＩＦ）１３と、入出力ＩＦ１４と、タッチスクリーン１５（表示部）と、カメラ１７と、測距センサ１８とを備える。ユーザ端末１００が備えるこれらの構成は、通信バスによって互いに電気的に接続される。また、図１に示すように、ユーザ端末１００は、１つ以上のコントローラ１０２０と通信可能に構成されることとしてもよい。コントローラ１０２０は、例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）等の通信規格に従って、ユーザ端末１００と通信を確立する。コントローラ１０２０は、１つ以上のボタン等を有していてもよく、該ボタン等に対するユーザの入力操作に基づく出力値をユーザ端末１００へ送信する。また、コントローラ１０２０は、加速度センサ、および、角速度センサ等の各種センサを有していてもよく、該各種センサの出力値をユーザ端末１００へ送信する。
【００１８】
なお、ユーザ端末１００がカメラ１７および測距センサ１８を備えることに代えて、または、加えて、コントローラ１０２０がカメラ１７および測距センサ１８を有していてもよい。
【００１９】
ユーザ端末１００は、例えばゲーム開始時に、コントローラ１０２０を使用するユーザに、該ユーザの名前またはログインＩＤ等のユーザ識別情報を、該コントローラ１０２０を介して入力させることが望ましい。これにより、ユーザ端末１００は、コントローラ１０２０とユーザとを紐付けることが可能となり、受信した出力値の送信元（コントローラ１０２０）に基づいて、該出力値がどのユーザのものであるかを特定することができる。
【００２０】
ユーザ端末１００が複数のコントローラ１０２０と通信する場合、各コントローラ１０２０を各ユーザが把持することで、ネットワーク２を介してサーバ２００などの他の装置と通信せずに、該１台のユーザ端末１００でマルチプレイを実現することができる。また、各ユーザ端末１００が無線ＬＡＮ（Local Area Network）規格等の無線規格により互いに通信接続する（サーバ２００を介さずに通信接続する）ことで、複数台のユーザ端末１００によりローカルでマルチプレイを実現することもできる。１台のユーザ端末１００によりローカルで上述のマルチプレイを実現する場合、ユーザ端末１００は、さらに、サーバ２００が備える後述する種々の機能の少なくとも一部を備えていてもよい。また、複数のユーザ端末１００によりローカルで上述のマルチプレイを実現する場合、複数のユーザ端末１００は、サーバ２００が備える後述する種々の機能を分散して備えていてもよい。
【００２１】
なお、ローカルで上述のマルチプレイを実現する場合であっても、ユーザ端末１００はサーバ２００と通信を行ってもよい。例えば、あるゲームにおける成績または勝敗等のプレイ結果を示す情報と、ユーザ識別情報とを対応付けてサーバ２００に送信してもよい。
【００２２】
また、コントローラ１０２０は、ユーザ端末１００に着脱可能な構成であるとしてもよい。この場合、ユーザ端末１００の筐体における少なくともいずれかの面に、コントローラ１０２０との結合部が設けられていてもよい。該結合部を介して有線によりユーザ端末１００とコントローラ１０２０とが結合している場合は、ユーザ端末１００とコントローラ１０２０とは、有線を介して信号を送受信する。
【００２３】
図１に示すように、ユーザ端末１００は、外部のメモリカード等の記憶媒体１０３０の装着を、入出力ＩＦ１４を介して受け付けてもよい。これにより、ユーザ端末１００は、記憶媒体１０３０に記録されるプログラム及びデータを読み込むことができる。記憶媒体１０３０に記録されるプログラムは、例えばゲームプログラムである。
【００２４】
ユーザ端末１００は、サーバ２００等の外部の装置と通信することにより取得したゲームプログラムをユーザ端末１００のメモリ１１に記憶してもよいし、記憶媒体１０３０から読み込むことにより取得したゲームプログラムをメモリ１１に記憶してもよい。
【００２５】
以上で説明したとおり、ユーザ端末１００は、該ユーザ端末１００に対して情報を入力する機構の一例として、通信ＩＦ１３、入出力ＩＦ１４、タッチスクリーン１５、カメラ１７、および、測距センサ１８を備える。入力する機構としての上述の各部は、ユーザの入力操作を受け付けるように構成された操作部と捉えることができる。
【００２６】
例えば、操作部が、カメラ１７および測距センサ１８の少なくともいずれか一方で構成される場合、該操作部が、ユーザ端末１００の近傍の物体１０１０を検出し、当該物体の検出結果から入力操作を特定する。一例として、物体１０１０としてのユーザの手、予め定められた形状のマーカーなどが検出され、検出結果として得られた物体１０１０の色、形状、動き、または、種類などに基づいて入力操作が特定される。より具体的には、ユーザ端末１００は、カメラ１７の撮影画像からユーザの手が検出された場合、該撮影画像に基づき検出されるジェスチャ（ユーザの手の一連の動き）を、ユーザの入力操作として特定し、受け付ける。なお、撮影画像は静止画であっても動画であってもよい。
【００２７】
あるいは、操作部がタッチスクリーン１５で構成される場合、ユーザ端末１００は、タッチスクリーン１５の入力部１５１に対して実施されたユーザの操作をユーザの入力操作として特定し、受け付ける。あるいは、操作部が通信ＩＦ１３で構成される場合、ユーザ端末１００は、コントローラ１０２０から送信される信号（例えば、出力値）をユーザの入力操作として特定し、受け付ける。あるいは、操作部が入出力ＩＦ１４で構成される場合、該入出力ＩＦ１４と接続されるコントローラ１０２０とは異なる入力装置（図示せず）から出力される信号をユーザの入力操作として特定し、受け付ける。
【００２８】
＜各装置のハードウェア構成要素＞
プロセッサ１０は、ユーザ端末１００全体の動作を制御する。プロセッサ２０は、サーバ２００全体の動作を制御する。プロセッサ１０および２０は、ＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）、およびＧＰＵ（Graphics Processing Unit）を含む。
【００２９】
プロセッサ１０は後述するストレージ１２からプログラムを読み出し、後述するメモリ１１に展開する。プロセッサ２０は後述するストレージ２２からプログラムを読み出し、後述するメモリ２１に展開する。プロセッサ１０およびプロセッサ２０は展開したプログラムを実行する。
【００３０】
メモリ１１および２１は主記憶装置である。メモリ１１および２１は、ＲＯＭ（Read Only Memory）およびＲＡＭ（Random Access Memory）等の記憶装置で構成される。メモリ１１は、プロセッサ１０が後述するストレージ１２から読み出したプログラムおよび各種データを一時的に記憶することにより、プロセッサ１０に作業領域を提供する。メモリ１１は、プロセッサ１０がプログラムに従って動作している間に生成した各種データも一時的に記憶する。メモリ２１は、プロセッサ２０が後述するストレージ２２から読み出した各種プログラムおよびデータを一時的に記憶することにより、プロセッサ２０に作業領域を提供する。メモリ２１は、プロセッサ２０がプログラムに従って動作している間に生成した各種データも一時的に記憶する。
【００３１】
本実施形態においてプログラムとは、ゲームをユーザ端末１００により実現するためのゲームプログラムであってもよい。あるいは、該プログラムは、該ゲームをユーザ端末１００とサーバ２００との協働により実現するためのゲームプログラムであってもよい。あるいは、該プログラムは、該ゲームを複数のユーザ端末１００の協働により実現するためのゲームプログラムであってもよい。また、各種データとは、ユーザ情報およびゲーム情報などのゲームに関するデータ、ならびに、ユーザ端末１００とサーバ２００との間または複数のユーザ端末１００間で送受信する指示または通知を含んでいる。
【００３２】
ストレージ１２および２２は補助記憶装置である。ストレージ１２および２２は、フラッシュメモリまたはＨＤＤ（Hard Disk Drive）等の記憶装置で構成される。ストレージ１２およびストレージ２２には、ゲームに関する各種データが格納される。
【００３３】
通信ＩＦ１３は、ユーザ端末１００における各種データの送受信を制御する。通信ＩＦ２３は、サーバ２００における各種データの送受信を制御する。通信ＩＦ１３および２３は例えば、無線ＬＡＮ（Local Area Network）を介する通信、有線ＬＡＮ、無線ＬＡＮ、または携帯電話回線網を介したインターネット通信、ならびに近距離無線通信等を用いた通信を制御する。
【００３４】
入出力ＩＦ１４は、ユーザ端末１００がデータの入力を受け付けるためのインターフェースであり、またユーザ端末１００がデータを出力するためのインターフェースである。入出力ＩＦ１４は、ＵＳＢ（Universal Serial Bus）等を介してデータの入出力を行ってもよい。入出力ＩＦ１４は、例えば、ユーザ端末１００の物理ボタン、カメラ、マイク、または、スピーカ等を含み得る。サーバ２００の入出力ＩＦ２４は、サーバ２００がデータの入力を受け付けるためのインターフェースであり、またサーバ２００がデータを出力するためのインターフェースである。入出力ＩＦ２４は、例えば、マウスまたはキーボード等の情報入力機器である入力部と、画像を表示出力する機器である表示部とを含み得る。
【００３５】
ユーザ端末１００のタッチスクリーン１５は、入力部１５１と表示部１５２とを組み合わせた電子部品である。入力部１５１は、例えばタッチセンシティブなデバイスであり、例えばタッチパッドによって構成される。表示部１５２は、例えば液晶ディスプレイ、または有機ＥＬ（Electro-Luminescence）ディスプレイ等によって構成される。
【００３６】
入力部１５１は、入力面に対しユーザの操作（主にタッチ操作、スライド操作、スワイプ操作、およびタップ操作等の物理的接触操作）が入力された位置を検知して、位置を示す情報を入力信号として送信する機能を備える。入力部１５１は、図示しないタッチセンシング部を備えていればよい。タッチセンシング部は、静電容量方式または抵抗膜方式等のどのような方式を採用したものであってもよい。
【００３７】
図示していないが、ユーザ端末１００は、該ユーザ端末１００の保持姿勢を特定するための１以上のセンサを備えていてもよい。このセンサは、例えば、加速度センサ、または、角速度センサ等であってもよい。ユーザ端末１００がセンサを備えている場合、プロセッサ１０は、センサの出力からユーザ端末１００の保持姿勢を特定して、保持姿勢に応じた処理を行うことも可能になる。例えば、プロセッサ１０は、ユーザ端末１００が縦向きに保持されているときには、縦長の画像を表示部１５２に表示させる縦画面表示としてもよい。一方、ユーザ端末１００が横向きに保持されているときには、横長の画像を表示部に表示させる横画面表示としてもよい。このように、プロセッサ１０は、ユーザ端末１００の保持姿勢に応じて縦画面表示と横画面表示とを切り替え可能であってもよい。
【００３８】
カメラ１７は、イメージセンサ等を含み、レンズから入射する入射光を電気信号に変換することで撮影画像を生成する。
【００３９】
測距センサ１８は、測定対象物までの距離を測定するセンサである。測距センサ１８は、例えば、パルス変換した光を発する光源と、光を受ける受光素子とを含む。測距センサ１８は、光源からの発光タイミングと、該光源から発せられた光が測定対象物にあたって反射されて生じる反射光の受光タイミングとにより、測定対象物までの距離を測定する。測距センサ１８は、指向性を有する光を発する光源を有することとしてもよい。
【００４０】
ここで、ユーザ端末１００が、カメラ１７と測距センサ１８とを用いて、ユーザ端末１００の近傍の物体１０１０を検出した検出結果を、ユーザの入力操作として受け付ける例をさらに説明する。カメラ１７および測距センサ１８は、例えば、ユーザ端末１００の筐体の側面に設けられてもよい。カメラ１７の近傍に測距センサ１８が設けられてもよい。カメラ１７としては、例えば赤外線カメラを用いることができる。この場合、赤外線を照射する照明装置および可視光を遮断するフィルタ等が、カメラ１７に設けられてもよい。これにより、屋外か屋内かにかかわらず、カメラ１７の撮影画像に基づく物体の検出精度をいっそう向上させることができる。
【００４１】
プロセッサ１０は、カメラ１７の撮影画像に対して、例えば以下の（１）〜（５）に示す処理のうち１つ以上の処理を行ってもよい。（１）プロセッサ１０は、カメラ１７の撮影画像に対し画像認識処理を行うことで、該撮影画像にユーザの手が含まれているか否かを特定する。プロセッサ１０は、上述の画像認識処理において採用する解析技術として、例えばパターンマッチング等の技術を用いてよい。（２）また、プロセッサ１０は、ユーザの手の形状から、ユーザのジェスチャを検出する。プロセッサ１０は、例えば、撮影画像から検出されるユーザの手の形状から、ユーザの指の本数（伸びている指の本数）を特定する。プロセッサ１０はさらに、特定した指の本数から、ユーザが行ったジェスチャを特定する。例えば、プロセッサ１０は、指の本数が５本である場合、ユーザが「パー」のジェスチャを行ったと判定する。また、プロセッサ１０は、指の本数が０本である（指が検出されなかった）場合、ユーザが「グー」のジェスチャを行ったと判定する。また、プロセッサ１０は、指の本数が２本である場合、ユーザが「チョキ」のジェスチャを行ったと判定する。（３）プロセッサ１０は、カメラ１７の撮影画像に対し、画像認識処理を行うことにより、ユーザの指が人差し指のみ立てた状態であるか、ユーザの指がはじくような動きをしたかを検出する。（４）プロセッサ１０は、カメラ１７の撮影画像の画像認識結果、および、測距センサ１８の出力値等の少なくともいずれか１つに基づいて、ユーザ端末１００の近傍の物体１０１０（ユーザの手など）とユーザ端末１００との距離を検出する。例えば、プロセッサ１０は、カメラ１７の撮影画像から特定されるユーザの手の形状の大小により、ユーザの手がユーザ端末１００の近傍（例えば所定値未満の距離）にあるのか、遠く（例えば所定値以上の距離）にあるのかを検出する。なお、撮影画像が動画の場合、プロセッサ１０は、ユーザの手がユーザ端末１００に接近しているのか遠ざかっているのかを検出してもよい。（５）カメラ１７の撮影画像の画像認識結果等に基づいて、ユーザの手が検出されている状態で、ユーザ端末１００とユーザの手との距離が変化していることが判明した場合、プロセッサ１０は、ユーザが手をカメラ１７の撮影方向において振っていると認識する。カメラ１７の撮影範囲よりも指向性が強い測距センサ１８において、物体が検出されたりされなかったりする場合に、プロセッサ１０は、ユーザが手をカメラの撮影方向に直交する方向に振っていると認識する。
【００４２】
このように、プロセッサ１０は、カメラ１７の撮影画像に対する画像認識により、ユーザが手を握りこんでいるか否か（「グー」のジェスチャであるか、それ以外のジェスチャ（例えば「パー」）であるか）を検出する。また、プロセッサ１０は、ユーザの手の形状とともに、ユーザがこの手をどのように移動させているかを検出する。また、プロセッサ１０は、ユーザがこの手をユーザ端末１００に対して接近させているのか遠ざけているのかを検出する。このような操作は、例えば、マウスまたはタッチパネルなどのポインティングデバイスを用いた操作に対応させることができる。ユーザ端末１００は、例えば、ユーザの手の移動に応じて、タッチスクリーン１５においてポインタを移動させ、ユーザのジェスチャ「グー」を検出する。この場合、ユーザ端末１００は、ユーザが選択操作を継続中であると認識する。選択操作の継続とは、例えば、マウスがクリックされて押し込まれた状態が維持されること、または、タッチパネルに対してタッチダウン操作がなされた後タッチされた状態が維持されることに対応する。また、ユーザ端末１００は、ユーザのジェスチャ「グー」が検出されている状態で、さらにユーザが手を移動させると、このような一連のジェスチャを、スワイプ操作（またはドラッグ操作）に対応する操作として認識することもできる。また、ユーザ端末１００は、カメラ１７の撮影画像によるユーザの手の検出結果に基づいて、ユーザが指をはじくようなジェスチャを検出した場合に、当該ジェスチャを、マウスのクリックまたはタッチパネルへのタップ操作に対応する操作として認識してもよい。
【００４３】
≪ゲームの概要≫
本実施形態に係るゲームシステム１が実現するゲームのジャンルは特に限定されない。例えば、ゲームはパズルゲーム、クイズゲーム、ＲＰＧ（ロールプレイングゲーム）、アドベンチャーゲーム、シューティングゲーム、シミュレーションゲーム、育成ゲーム、ならびに、アクションゲームなどであってもよい。また、ゲームシステム１が実現するゲームの題材も特に限定されない。例えば、ゲームはテニス、卓球、ドッジボール、野球、サッカーおよびホッケーなどのスポーツを題材としたゲームであってもよい。
【００４４】
また、ゲームシステム１は、特定のプレイ形態に限らず、あらゆるプレイ形態のゲームを実行するためのシステムであってもよい。例えば、単一のユーザによるシングルプレイゲーム、および、複数のユーザによるマルチプレイゲーム、また、マルチプレイゲームの中でも、複数のユーザが対戦する対戦ゲーム、および、複数のユーザが協力する協力プレイゲームなどであってもよい。
【００４５】
ゲームシステム１が実現するゲームは、１レコードに複数項目の情報が含まれているデータテーブル（レコード群）から、入力された文字列に合うレコードを検索して抽出する機能を有したゲームである。検索および抽出されるデータテーブルの種類、および検索対象となる情報の項目は特に限定されない。
【００４６】
例えば、本実施形態に係るゲームは、ユーザのアカウント情報を検索する機能（ユーザ検索機能）、ゲームのステージを検索する機能、ゲームのキャラクタを検索する機能、ゲーム内で結成するグループを検索する機能等を１つ以上有していてもよい。以降の説明では、一例として、本実施形態に係るゲームがユーザ検索機能を有している場合について説明する。
【００４７】
＜ゲームシステム１の機能的構成＞
図２は、ゲームシステム１に含まれるサーバ２００およびユーザ端末１００の機能的構成を示すブロック図である。サーバ２００およびユーザ端末１００のそれぞれは、図示しない、一般的なコンピュータとして機能する場合に必要な機能的構成、および、ゲームにおける公知の機能を実現するために必要な機能的構成を含み得る。
【００４８】
ユーザ端末１００は、ユーザの入力操作を受け付ける入力装置としての機能と、ゲームの画像や音声を出力する出力装置としての機能を有する。ユーザ端末１００は、プロセッサ１０、メモリ１１、ストレージ１２、通信ＩＦ１３、および入出力ＩＦ１４等の協働によって、制御部１１０および記憶部１２０として機能する。
【００４９】
サーバ２００は、各ユーザ端末１００と通信して、ユーザ端末１００がゲームを進行させるのを支援する機能を有する。例えば、サーバ２００は、ユーザ端末１００からの指示を受けてユーザ検索を実行し、その結果をユーザ端末１００に送信する。サーバ２００は、プロセッサ２０、メモリ２１、ストレージ２２、通信ＩＦ２３、および入出力ＩＦ２４等の協働によって、制御部２１０および記憶部２２０として機能する。
【００５０】
記憶部１２０は、ゲームプログラム１３１、ゲーム情報１３２、およびユーザ情報１３３を格納する。記憶部２２０は、ゲームプログラム１３１、ゲーム情報２３２、およびユーザ情報２３３を格納する。
【００５１】
ゲームプログラム１３１は、ユーザ端末１００およびサーバ２００で実行するゲームプログラムである。ゲーム情報１３２は、制御部１１０がゲームプログラム１３１を実行する際に参照するデータである。ゲーム情報２３２は、制御部２１０がゲームプログラム１３１を実行する際に参照するデータである。
【００５２】
ユーザ情報１３３およびユーザ情報２３３は、ユーザのアカウントに関する情報（アカウント情報）である。ユーザ情報１３３は、ユーザ端末１００と対応付けられているアカウント情報である。本実施形態では、１台のユーザ端末１００に、１つのアカウントが対応付けられている例について説明する。
【００５３】
ユーザ情報２３３は、各ユーザ端末１００から収集されたユーザ情報１３３をまとめたデータである。したがって、ユーザ情報１３３とユーザ情報２３３とが含む情報の項目は同一である。
【００５４】
図３は、ユーザ情報２３３のデータ構造の一例を示す図である。ユーザ情報２３３は、アカウントに紐付けられた複数項目の情報を含む。図３の例では、ユーザ情報２３３は１つのアカウントに関する情報（すなわち、各ユーザ端末１００におけるユーザ情報１３３）を、データテーブルの１レコードとして保持している。ユーザ情報２３３に含まれる情報は図３の例に限定されない。ユーザ情報２３３は少なくとも、アカウントを一意に特定する識別子と、他の１以上の項目の情報とを含んでいればよい。しかしながら、ユーザ情報２３３はユーザＩＤとユーザ名とを含んでいることが望ましい。
【００５５】
ユーザ情報２３３は例えば、「ユーザＩＤ」列と、「ユーザ名」列と、「レベル」列と、「リーダー」列と、「最終ログイン時刻」列と、「メッセージ」列を含む。ユーザ情報２３３は、「ユーザＩＤ」列の情報に、他の列の情報が対応付けられたデータである。
【００５６】
「ユーザＩＤ」列には、アカウントを一意に特定する識別子であるユーザ名を示す情報が格納される。本実施形態に係るゲームでは、ユーザＩＤは、ユーザ端末１００等を介してユーザがアカウントを作成したときに、サーバ２００またはユーザ端末１００において自動的に設定される。本実施形態では、ユーザＩＤとして、アットマーク（＠）から始まり、該アットマーク、アルファベット、および数字を組み合わせた合計１３文字から成る識別子を採用した場合について説明する。
【００５７】
「ユーザ名」列には、アカウントの名称を示す情報が格納される。本実施形態に係るゲームでは、ユーザ名はユーザによってユーザ端末１００等を介して設定される文字列である。ユーザ名は、ゲームのプレイ中に何度でも変更可能であってもよい。また、アカウントを作成したときに、ユーザがユーザ名を特に指定しなかった場合は、サーバ２００またはユーザ端末１００が、予め定められた標準名（デフォルトネーム）をユーザ名として設定してもよい。
【００５８】
「レベル」列には、ゲームにおけるアカウントのレベルを示す情報が格納される。レベルとは、該アカウントのゲームの進行度合いを示す指標値である。どのような条件でレベルが変化するのかは、ゲームの特徴に応じて適宜設計されてよい。例えば、ゲームのプレイ内容（例えばスコア等）に応じてアカウントに対し経験値が付与され、該経験値が一定値を超えた場合に、レベルを１増加させることとしてもよい。
【００５９】
「リーダー」列には、ゲームにおいて該アカウントが使用可能なキャラクタのうち、ユーザが代表として指定したキャラクタを特定する情報が格納される。なお、ゲームの性質に応じて、人または動物等のキャラクタの代わりに、アイテム、建物などを示す情報をこの列に格納してもよい。
【００６０】
「最終ログイン時刻」列には、各アカウントが最後にログインした時刻を示す情報が格納される。
【００６１】
「メッセージ」列には、ユーザが設定したメッセージの文字列を示す情報が格納される。ユーザは例えば、他のユーザへの挨拶または自己紹介などをメッセージとして設定しておくことができる。なお、「メッセージ」列に情報が格納されていないアカウントがあってもよい。図３における空欄は、「メッセージ」列に情報が格納されていないことを示している。
【００６２】
（サーバ２００の機能的構成）
制御部２１０は、記憶部２２０に格納されたゲームプログラム１３１を実行することにより、サーバ２００を統括的に制御する。例えば、制御部２１０は、ユーザ端末１００に各種データおよびプログラム等を送信する。制御部２１０は、ゲーム情報もしくはユーザ情報の一部または全部をユーザ端末１００から受信する。ゲームがマルチプレイゲームである場合には、制御部２１０は、ユーザ端末１００からマルチプレイの同期の要求を受信して、同期のためのデータをユーザ端末１００に送信してもよい。
【００６３】
制御部２１０は、ゲームプログラム１３１の記述に応じて、送受信部２１１、サーバ処理部２１２、およびデータ管理部２１３として機能する。制御部２１０は、実行するゲームの性質に応じて、ユーザ端末１００におけるゲームの進行を支援するために、図示しないその他の機能ブロックとしても機能することができる。
【００６４】
送受信部２１１は、ユーザ端末１００からデータおよびリクエストを受信する。送受信部２１１は、ユーザ端末１００からの検索指示を受信する。詳しくは後述するが、検索指示はユーザ情報２３３の検索を指示するものであり、ユーザ情報２３３のうち、検索対象とする情報の項目（検索項目）と、検索条件または検索ワードとを示す情報を含む。
【００６５】
また、送受信部２１１は、ユーザ端末１００に対しデータおよびリクエストを送信する。送受信部２１１は、サーバ処理部２１２の指示に従って、ユーザ情報２３３から抽出された各レコードの少なくとも一部の情報を、ユーザ端末１００に送信する。
【００６６】
サーバ処理部２１２は、ゲームを提供するために必要な演算処理を行う。サーバ処理部２１２は送受信部２１１に対し、各種データの送信を指示する。サーバ処理部２１２は、データ管理部２１３に対し、ゲーム情報２３２またはユーザ情報２３３のレコードの追加、更新、または削除を指示する。
【００６７】
さらに、サーバ処理部２１２は、ユーザ端末１００から受信した検索指示に従って、ユーザ情報２３３のレコードを検索する。より詳しくは、サーバ処理部２１２は、検索指示により指定された検索対象の項目（検索項目）を、検索指示により指定された検索条件または検索ワードで検索する。検索の結果、該当するレコードが１つ以上存在する場合、サーバ処理部２１２は該レコードを抽出し、抽出したレコードそれぞれの、少なくとも一部の情報を、送受信部２１１を介してユーザ端末１００に送信する。
【００６８】
データ管理部２１３は、記憶部２２０に格納されているデータを管理する。データ管理部２１３は、サーバ処理部２１２からの指示に応じてゲーム情報２３２またはユーザ情報２３３のレコードを、追加、更新、または削除する。データ管理部２１３は、サーバ処理部２１２の指示に従って、ゲーム情報２３２およびユーザ情報２３３の少なくとも一方を記憶部２２０から読み出して、送受信部２１１を介してユーザ端末１００に送信してもよい。データ管理部２１３は、サーバ処理部２１２の指示に従って、ゲームプログラム１３１のうち、あるユーザ端末１００で実行する分のプログラムを記憶部２２０から読み出して、送受信部２１１を介し該ユーザ端末１００に送信してもよい。
【００６９】
（ユーザ端末１００の機能的構成）
制御部１１０は、記憶部１２０に格納されたゲームプログラム１３１を実行することにより、ユーザ端末１００を統括的に制御する。例えば、制御部１１０は、ゲームプログラム１３１およびユーザの操作にしたがって、ゲームを進行させる。また、制御部１１０は、ゲームを進行させている間、必要に応じてサーバ２００と通信して、情報の送受信を行う。
【００７０】
制御部１１０は、ゲームプログラム１３１の記述に応じて、操作受付部１１１、ゲーム進行部１１２、画像生成部１１３、および表示制御部１１４として機能する。制御部１１０は、実行するゲームの性質に応じて、ゲームを進行させるために、図示しないその他の機能ブロックとしても機能することができる。
【００７１】
操作受付部１１１は、入力部１５１に対するユーザの入力操作を検知し受け付ける。操作受付部１１１は、タッチスクリーン１５およびその他の入出力ＩＦ１４を介したコンソールに対してユーザが及ぼした作用から、いかなる入力操作がなされたかを判別し、その結果を制御部１１０の各要素に出力する。
【００７２】
例えば、操作受付部１１１は、入力部１５１に対する入力操作を受け付け、該入力操作の入力位置の座標を検出し、該入力操作の種類を特定する。操作受付部１１１は、入力操作の種類として、例えばタッチ操作、スライド操作、スワイプ操作、およびタップ操作等を特定する。また、操作受付部１１１は、連続して検知されていた入力が途切れると、タッチスクリーン１５から接触入力が解除されたことを検知する。
【００７３】
ゲーム進行部１１２は、ゲームの進行に係る各種処理を実行する。例えば、ゲーム進行部１１２は、ゲームの進行に係る種々のパラメータの設定、演算処理、判定処理等を行う。また、ゲーム進行部１１２は、画像生成部１１３にゲーム画面の画像を生成させるよう指示する。ゲーム進行部１１２は、検索ワード特定部１１２１と、検索項目決定部１１２２と、検索指示部１１２３とを含む。
【００７４】
検索ワード特定部１１２１は、ユーザ検索を実行するときの検索ワードを特定する。検索ワード特定部１１２１は、タッチスクリーン１５に表示されたソフトウェアキーボード等に対する入力操作を操作受付部１１１が受け付けた場合、該入力操作に応じて入力された文字列を特定し、該文字列を検索ワードとして特定する。
【００７５】
検索項目決定部１１２２は、ユーザ情報１３３に含まれる種々の項目の情報のうち、ユーザ検索を実行する際の検索項目を決定する。検索項目決定部１１２２は、ゲーム進行部１１２が取得した検索キーワードに応じて、ユーザ情報１３３に含まれる複数項目の情報から、１つ以上かつ全部でない項目を検索項目と決定する。
【００７６】
検索指示部１１２３は、検索項目決定部１１２２が決定した検索項目の情報を、検索ワード特定部１１２１が特定した検索ワードで検索する旨の指示（検索指示）を作成する。検索指示部１１２３は作成した検索指示を、サーバ２００に送信する。
【００７７】
画像生成部１１３は、ゲーム進行部１１２の指示にしたがって、各種ゲーム画面の画像（以下、単にゲーム画面と称する）を生成する。例えば、画像生成部１１３はユーザ検索画面および検索結果画面を描画する。ユーザ検索画面および検索結果画面の詳細については後述する。画像生成部１１３は、ＵＩオブジェクト等のオブジェクトを背景となる画像に重畳させてゲーム画面を生成してもよい。ＵＩオブジェクトとは、ユーザが、ゲームの進行上必要な入力をユーザ端末１００に対して行うためのツール、または、ゲームの進行中に出力される情報をユーザ端末１００から得るためのツールである。ＵＩオブジェクトは、例えば、数字および文字列等の入力欄（入力ボックス）、プルダウンメニュー、アイコン、ボタン、リストなどである。また、画像生成部１１３は、ゲーム進行部１１２の指示にしたがって、ゲーム画面に配置されるオブジェクトのアニメーション（動き）を生成してもよい。
【００７８】
表示制御部１１４は、タッチスクリーン１５の表示部１５２に対して、上述の各部によって実行された処理結果が反映されたゲーム画面を出力する。例えば、表示制御部１１４は、ユーザ検索画面および検索結果画面を描画する。
【００７９】
なお、図２に示すサーバ２００およびユーザ端末１００の機能は一例にすぎない。サーバ２００は、ユーザ端末１００が備える機能の少なくとも一部を備えていてもよい。また、ユーザ端末１００は、サーバ２００が備える機能の少なくとも一部を備えていてもよい。さらに、ユーザ端末１００およびサーバ２００以外の他の装置をゲームシステム１の構成要素とし、該他の装置にゲームシステム１における処理の一部を実行させてもよい。すなわち、本実施形態においてゲームプログラムを実行するコンピュータは、ユーザ端末１００、サーバ２００、および他の装置の何れであってもよいし、これらの複数の装置の組み合わせにより実現されてもよい。
【００８０】
≪ユーザ検索画面≫
ユーザ端末１００のゲーム進行部１１２は、ゲームプログラム１３１の記述に基づいて、画像生成部１１３に、ユーザ検索機能を実現するための画面（ユーザ検索画面）を生成するよう指示する。画像生成部１１３はゲーム進行部１１２の指示に従ってユーザ検索画面を生成し、表示制御部１１４は該ユーザ検索画面をタッチスクリーン１５に表示させる。
【００８１】
ユーザ検索画面を表示するタイミングまたは表示する条件は、特に限定されない。例えば、ゲーム進行部１１２は、特定のゲーム画面において、特定の入力操作が行われた場合に、ユーザ検索画面を生成させてもよい。より具体的には、ゲーム進行部１１２は例えば、各種情報を提示するゲーム画面であるメニュー画面において、ユーザ検索画面に遷移するためのボタン等が押下された場合、ユーザ検索画面を生成するよう画像生成部１１３に指示してもよい。
【００８２】
図４は、タッチスクリーン１５に表示されるユーザ検索画面の具体例を示す図である。ユーザ検索画面は、少なくとも、検索ボックス３０１と、検索ボタン３０２とを含んでいる。
【００８３】
検索ボックス３０１は、検索ワードの入力を受け付けるための入力欄である。操作受付部１１１が検索ボックス３０１に対する入力操作を受け付けた場合、ゲーム進行部１１２は、後述するソフトウェアキーボード３３４等、ユーザに文字入力を行わせるためのＵＩオブジェクトを生成するよう、画像生成部１１３に指示する。
【００８４】
検索ボタン３０２は、検索の実行指示を受け付けるためのボタンである。操作受付部１１１が検索ボタン３０２に対する入力操作を受け付けた場合、ゲーム進行部１１２の検索ワード特定部１１２１は、検索ボックス３０１に入力された文字列を検索ワードとして特定する。検索項目決定部１１２２は検索ワードに応じてユーザ情報２３３に含まれる情報のうち、検索対象の項目を決定する。そして、検索指示部１１２３は、特定された検索ワードおよび決定された検索項目でユーザ情報２３３を検索するよう、サーバ２００に検索指示を送信する。
【００８５】
ユーザ検索画面には、おすすめユーザを一覧表示させるためのボタン３１２が含まれていてもよい。操作受付部１１１がボタン３１２に対する入力操作を受け付けた場合、ゲーム進行部１１２は、予め定められた条件でユーザ情報２３３を検索するようサーバ２００に検索指示を送信する。ここで、予め定められた条件とは、例えばログイン時刻の遅い順（すなわち、最近ログインした順）、ユーザ端末１００のユーザが所持するアカウントとレベルまたはゲームの進行度が近い順、等が挙げられる。
【００８６】
また、ユーザ検索画面の生成時に、自動的に所定数のユーザ情報２３３のレコードが抽出され、該レコードに含まれる情報のうち、少なくとも一部の情報が情報表示欄３０３にレコード毎に表示されていてもよい。換言すると、ゲーム進行部１１２は、画像生成部１１３にユーザ検索画面を生成させる前に、予め定められた条件に合致するユーザ情報２３３をサーバ２００に検索させ、合致するレコードの情報を記載した情報表示欄３０３を含むユーザ検索画面を生成するよう、画像生成部１１３に指示してもよい。
【００８７】
≪検索処理の流れ≫
図５はユーザ端末１００において実行される、ユーザ検索に係る処理（ユーザ検索処理）の流れを示すフローチャートである。
【００８８】
ステップＳ１００において、ユーザ検索画面でユーザにより文字列を入力するための入力操作が行われると、操作受付部１１１は該入力操作を受け付ける。図４の例では、検索ボックス３０１に文字列を入力するための一連の操作が、該入力操作に相当する。
【００８９】
操作受付部１１１が文字列を入力するための入力操作を受け付けると、ステップＳ１０２において、検索ワード特定部１１２１は、入力された文字列（入力文字列）を検索ワードとして特定する。なお、検索ワード特定部１１２１は、入力文字列の全部ではなく一部分のみを検索ワードとして特定してもよい。
【００９０】
操作受付部１１１が文字列を入力するための入力操作を受け付けると、ステップＳ１０４において、検索項目決定部１１２２は、入力文字列に応じて、ユーザ情報２３３の各レコードに含まれている複数項目の情報から、検索項目を決定する。具体的には、検索項目決定部１１２２は、例えば入力文字列の文字数、または入力文字列に含まれている文字の内容（どのような文字が含まれているか）に応じて、検索項目を決定してもよい。検索項目の決定方法の具体例は後述する。
【００９１】
また、検索項目決定部１１２２は、検索項目を決定する際、１つ以上かつ全部でない項目の情報を検索対象の情報と決定する。これにより、ユーザ情報２３３の全項目の情報から、検索項目が絞り込まれる。なお、ステップＳ１０２の処理と、ステップＳ１０４の処理は同時または逆の順序で行われてもよい。
【００９２】
検索ワードと検索項目が決定されると、ステップＳ１０６において、検索指示部１１２３は、該検索ワードおよび該検索項目を示す情報を含んだ検索指示を作成し、サーバ２００に送信する。サーバ２００のサーバ処理部２１２は、送受信部２１１が受信した該検索指示に基づいて検索を実行する。より詳しくは、サーバ処理部２１２は、入力文字列と適合する文字列が検索項目の示す検索対象の情報に含まれているレコードを、ユーザ情報２３３から抽出する。サーバ処理部２１２は、抽出したレコードの少なくとも一部の情報をユーザ端末１００に送信する。
【００９３】
ステップＳ１０８において、ユーザ端末１００の制御部１１０は、検索によりレコードを抽出した結果を受信する。ステップＳ１１０において、画像生成部１１３は該抽出結果を示す画面（検索結果画面）、すなわち抽出したレコードの少なくとも一部の情報を含む画面を作成する。ステップＳ１１２において、表示制御部１１４は、画像生成部１１３が生成した該画面を、タッチスクリーン１５の表示部１５２に表示させる。
【００９４】
以上説明したユーザ検索処理によれば、入力文字列に応じて、複数項目の情報から検索項目が絞り込まれる。したがって、ユーザは別途指定せずとも、入力文字列に応じた適切な検索対象の情報について検索した結果を得ることができる。したがって、ユーザの情報検索に係る利便性を向上させることができる。
【００９５】
また、一般的に、種々の検索機能において検索項目が増加すると、検索項目の選択欄（プルダウンメニュー等）、またはキーワードの入力欄（検索ボックス等）等のオブジェクトが増加してＧＵＩが雑然としがちである。一方、上記ユーザ検索処理によれば、複数項目を検索可能とした場合でも、入力文字列に応じて検索項目を絞り込むため、上述のようなオブジェクトが増加しない。したがって、検索機能の充実化と、ＧＵＩの簡易化とを両立することができる。よって、ユーザの検索に係る手間または間違いを減らすことができる。
【００９６】
また、上記ユーザ検索処理によれば、単に検索ワードでユーザ情報２３３の全項目について検索を行うのではなく、入力文字列に応じて予め検索項目を絞る。これにより、検索対象とするのに不適切な項目を、自動的に検索から除外することができる。例えば、ユーザが短い検索ワードを入力した場合に、ユーザ情報２３３の全項目が検索され、不要と思われるレコードまで抽出されることを防ぐことができる。
【００９７】
≪検索結果の表示１≫
検索項目決定部１１２２は、図５のステップＳ１０４において、入力文字列の文字数ととり得る文字数の範囲が適合する情報の項目を、検索項目と決定してもよい。以下、文字数に応じて検索項目を決定する場合の、処理の流れおよび具体例を図６および図７を用いて説明する。
【００９８】
なお、以下の説明では、ユーザ情報２３３のうちユーザＩＤとユーザ名についてユーザ検索が可能であることとする。また、ユーザＩＤは上述のように１３文字固定の情報であり、ユーザ名は１２文字以下の情報であることとする。
【００９９】
図６および図７は、それぞれ、ユーザ検索画面および検索結果画面の一例を示す図である。図６および図７の状態（Ａ）は、ユーザ検索画面を示す。図６および図７の状態（Ｂ）は、検索結果画面を示す。なお、図６および図７の各図に示す画面において、特に言及の無い部材については、図４の同部材番号のオブジェクトと同様の作用を持つ。
【０１００】
操作受付部１１１が検索ボックス３０１に対する入力操作を受け付けると、ゲーム進行部１１２は、図６の状態（Ａ）に示すように、検索ボックス３０１に文字列を入力するための、ソフトウェアキーボード３３４を含むポップアップをユーザ検索画面に重畳表示するよう、画像生成部１１３に指示する。画像生成部１１３は該ポップアップを重畳させたユーザ検索画面を作成し、表示制御部１１４は該画面をタッチスクリーン１５に表示させる。
【０１０１】
ポップアップには、少なくとも文字入力を行うためのソフトウェアキーボード３３４と、入力文字列を確定する指示を受け付けるためのボタン（完了ボタン３３２）と、文字列の入力をキャンセルするためのボタン（キャンセルボタン３３３）とが含まれている。なお、ポップアップには、入力途中の文字列を随時表示するための表示欄３３１が含まれていてもよい。
【０１０２】
操作受付部１１１は、ソフトウェアキーボード３３４に対する入力操作を受け付け、該内容を特定する。その後、操作受付部１１１が完了ボタン３３２を押下する入力操作を受け付けると、ゲーム進行部１１２の検索ワード特定部１１２１は、入力文字列が確定されたとして検索ワードを特定する。
【０１０３】
図６の状態（Ａ）で完了ボタン３３２が押下された場合、入力文字列は「やまだ」であり、検索ワード特定部１１２１は、「やまだ」を検索ワードとして特定する。検索項目決定部は、ユーザ情報２３３の検索可能な項目（すなわち、ユーザＩＤおよびユーザ名）のうち、入力文字列の文字数（図６の場合、３文字）と適合する文字数の範囲をもつ情報の項目を１つ以上特定し、該項目を検索項目とする。
【０１０４】
同図の場合、ユーザＩＤは１３文字で固定であるので、入力文字列の文字数と適合しない。一方、ユーザ名は１〜１２文字の範囲をとり得るため、入力文字列の文字数と適合する。したがって、検索項目決定部１１２２は、ユーザ名を検索項目として決定する。
【０１０５】
なお、図６の状態（Ａ）において、検索項目決定部１１２２は、完了ボタン３３２が押下される前に、入力途中の文字列から随時検索項目の候補を特定してもよい。また、画像生成部１１３は特定された該検索項目の候補の項目名をポップアップまたはユーザ検索画面内の表示欄３３５に示した画面を作成してもよい。
【０１０６】
検索ワードと検索項目が決定されると、検索指示部１１２３は検索指示を作成し、サーバ２００へ送信する。そして、制御部１１０はサーバ２００から検索結果、すなわち検索項目の情報が検索ワードと適合（一致または部分一致）するレコードの情報を受信する。
【０１０７】
画像生成部１１３は、受信したレコードの情報に基づき、検索結果画面を生成する。具体的には、図６の状態（Ｂ）に示す検索結果画面を生成する。該画面には、検索結果として得られたレコードの情報が、表示欄３１１に一覧表示される。本図の場合、図３に示したユーザ情報２３３の「ユーザ名」を「やまだ」で検索した結果が表示される。具体的には、ユーザ名に「やまだ」が含まれるアカウント（ユーザ名がやまだ、やまだけ、おやまだ、の３アカウント）の情報が、検索結果画面に表示される。
【０１０８】
なお、検索の結果、１レコードも適合するレコードが存在しなかった場合、表示欄３１１は表示されなくてもよい。一方、適合するレコードが多く、表示欄３１１が１画面に収まらない場合、画像生成部１１３は画面をスクロールする、または一覧表示のページを次のページに切替えるためのＵＩオブジェクトを含む検索結果画面を作成してもよい。また、画像生成部１１３は、検索結果画面に、検索の際の検索項目の項目名を表示した表示欄３１３を含んだ画面を作成してもよい。
【０１０９】
図７の状態（Ａ）は、図６の状態（Ａ）と同様の画面で、入力文字列として「＠ＡＡ１ＢＢ１ＣＣ１ＤＤ１」が入力された場合を示す。この場合、入力文字列の文字数は１３文字であるので、検索項目決定部１１２２は、ユーザＩＤを検索項目として決定する。そして、検索ワード「＠ＡＡ１ＢＢ１ＣＣ１ＤＤ１」で、ユーザＩＤを検索した結果得られたレコードの情報を含む、検索結果画面が生成される。
【０１１０】
具体的には、図３においてユーザＩＤが「＠ＡＡ１ＢＢ１ＣＣ１ＤＤ１」である、ユーザ名：やまだの１アカウントの情報が、検索結果画面に表示される。
【０１１１】
このように、ユーザ情報２３３の検索可能な項目について、それぞれの項目に含まれる情報がとり得る文字数の範囲が異なるように設計しておく。そして、検索項目決定部１１２２は文字数に応じて検索項目を決定する。これにより、入力文字列がいずれの項目に注目したものか判別することができる。したがって、ユーザ端末１００は適切な検索項目でサーバ２００に検索を実行させることができる。これにより、ユーザの情報検索の利便性を向上させることができる。
【０１１２】
なお、ユーザ情報２３３の各種情報のうち、ユーザＩＤおよびユーザ名以外の情報についても検索可能であってもよい。例えば、ユーザＩＤと、ユーザ名と、メッセージとからユーザ検索が可能であってもよい。
【０１１３】
なお、ユーザ情報２３３の各項目の情報がとり得る文字数の範囲を重複させてもよい。例えば、ユーザＩＤのとり得る文字数を５〜１３文字、ユーザ名のとり得る文字数を１〜１０文字としてもよい。この場合、制御部１１０は予め、各項目を検索項目とする条件となる文字数の範囲を設定しておく。例えば、入力文字数が９文字以下の場合はユーザ名を検索項目と決定し、１０文字以上の場合はユーザＩＤを検索項目と決定するよう、予め設定し該設定を記憶しておく。そして、検索項目決定部１１２２は、記憶された設定と、入力文字列の文字列とを比較することで、検索項目を決定すればよい。なお、該設定はユーザが自由に変更可能なものであってもよい。
【０１１４】
〔実施形態２〕
本開示の他の実施形態について、以下に説明する。なお、説明の便宜上、上記実施形態にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、その説明を繰り返さない。
【０１１５】
検索項目決定部１１２２は、図５のステップＳ１０４において、特定の文字が入力された文字列に含まれている場合、該特定の文字に対応付けられている項目を、検索項目として決定してもよい。換言すると、検索項目決定部１１２２は、入力文字列の内容から検索項目を決定してもよい。
【０１１６】
この場合、制御部１１０は予め、各項目を検索項目とする条件となる、特定の文字を設定しておく。例えば、制御部１１０は、入力文字列がアットマークを含む場合はユーザＩＤを検索項目と決定し、アットマークを含まない場合は、ユーザ名を検索項目と決定するよう、予め設定し該設定を記憶しておく。なお、ユーザ名にのみ使用できる文字が存在する場合、該文字を「特定の文字」とし、入力文字列が該特定の文字を含む場合、ユーザ名を検索項目と決定することとしてもよい。
【０１１７】
そして、検索項目決定部１１２２は、記憶された上記設定と、入力文字列の内容とを比較することで、検索項目を決定する。なお、該設定はユーザが自由に変更可能なものであってもよい。
【０１１８】
≪検索結果の表示２≫
図８の状態（Ａ）は、ユーザ検索画面のソフトウェアキーボード３３４で、「＠ＥＥ」と入力された場合を示す。以下の説明では、図６および図７の例と同様に、ユーザ情報２３３のうちユーザＩＤとユーザ名についてユーザ検索が可能であることとする。また、ユーザＩＤにはアットマーク（＠）という特定の文字が必ず含まれており、ユーザ名には＠は含むことができないものとする。
【０１１９】
検索項目決定部１１２２は、入力文字列「＠ＥＥ」の内容に基づいて、検索項目を決定する。具体的には、検索項目決定部１１２２は、文字列「＠ＥＥ」に含まれる文字それぞれについて、ユーザ情報２３３の検索可能な項目それぞれを検索項目とするための条件に合致するか判定する。この場合。＠が、ユーザＩＤを検索項目とする条件となる「特定の文字」である。したがって、検索項目決定部１１２２は、ユーザＩＤを検索項目として決定する。なお、入力文字列が、複数の項目の、該項目を検索項目とするための条件を満たす場合、検索項目決定部１１２２は、該複数項目を検索項目として決定してもよい。
【０１２０】
図８の状態（Ａ）で完了ボタン３３２が押下されると、検索ワード「＠ＥＥ」で、ユーザＩＤを検索した結果得られたレコードの情報を含む、検索結果画面が生成される。
【０１２１】
具体的には、図８の状態（Ｂ）に示すような検索結果画面が生成される。図示の通り、ユーザＩＤに「＠ＥＥ」を含むアカウントの情報が、検索結果画面に表示される。
【０１２２】
一方、入力文字列として、例えば図６の状態（Ａ）と同様に「やまだ」と入力した場合、この入力文字列に、ユーザＩＤを検索するための特定の文字（＠）は含まれていない。したがって、検索項目決定部１１２２は、ユーザＩＤを検索項目から除外する。結果、図６の状態（Ａ）および（Ｂ）と同様に、ユーザ名が検索項目として決定され、検索結果が検索結果画面に表示される。
【０１２３】
このように、ユーザ情報２３３の検索可能な項目について、それぞれの項目に含まれる情報がとり得る文字の内容が異なるように設計しておく。そして、検索項目決定部１１２２は入力文字列の内容に応じて検索項目を決定する。これにより、入力文字列がいずれの項目に注目したものか判別することができる。したがって、ユーザ端末１００は適切な検索項目でサーバ２００に検索を実行させることができる。これにより、ユーザの情報検索の利便性を向上させることができる。
【０１２４】
なお、本実施形態においても、ユーザ情報２３３の各種情報のうち、ユーザＩＤおよびユーザ名以外の情報についても検索可能であってもよい。例えば、ユーザＩＤと、ユーザ名と、メッセージとからユーザ検索が可能であってもよい。
【０１２５】
〔変形例〕
上記各実施形態において、検索項目の個数は、ユーザ情報２３３の全項目を除けば何項目でも良いこととした。しかしながら、検索項目決定部１１２２は、検索項目を１つに決定することがより望ましい。これにより、検索項目をより絞り込むことができるため、ユーザは注目する情報をより簡単に見つけることができる。
【０１２６】
本開示に係るプログラムは、情報の検索機能を実現するためのプログラムであればよい。換言すると、本開示に係るプログラムは、ゲームプログラムでなくてもよい。
【０１２７】
ゲームシステム１において、ユーザ端末１００の記憶部１２０はユーザ情報２３３を記憶していてもよい。この場合、サーバ２００は各ユーザ端末１００から収集したユーザ情報１３３の集合であるユーザ情報２３３を、所定のタイミングで各ユーザ端末１００に送信しておく。そして、ユーザ端末１００の制御部１１０は、自装置の記憶部１２０に記憶されたユーザ情報２３３に対し、検索を実行し、該検索の結果を含む検索結果画面を画像生成部１１３に作成させてもよい。これにより、検索を実行する際の、ユーザ端末１００とサーバ２００間の通信のやりとりを無くすことができる。
【０１２８】
〔ソフトウェアによる実現例〕
ユーザ端末１００およびサーバ２００の制御ブロックは、集積回路（ＩＣチップ）等に形成された論理回路（ハードウェア）によって実現してもよいし、ソフトウェアによって実現してもよい。
【０１２９】
後者の場合、ユーザ端末１００およびサーバ２００は、各機能を実現するソフトウェアであるプログラムの命令を実行するコンピュータを備えている。このコンピュータは、例えば１つ以上のプロセッサを備えていると共に、上記プログラムを記憶したコンピュータ読み取り可能な記録媒体を備えている。そして、上記コンピュータにおいて、上記プロセッサが上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記プロセッサとしては、例えばＣＰＵ（Central Processing Unit）を用いることができる。上記記録媒体としては、「一時的でない有形の媒体」、例えば、ＲＯＭ（Read Only Memory）等の他、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムを展開するＲＡＭ（Random Access Memory）などをさらに備えていてもよい。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体（通信ネットワークや放送波等）を介して上記コンピュータに供給されてもよい。なお、本発明の一態様は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
【０１３０】
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【０１３１】
〔付記事項〕
本発明の一側面に係る内容を列記すると、以下の通りである。
【０１３２】
（項目１）  プログラム（ゲームプログラム１３１）について説明した。本開示のある局面によると、プログラムは、プロセッサ（１０、２０）、メモリ（１１、２１）、ディスプレイ（表示部１５２等）、およびユーザの入力操作を受け付ける操作部（入力部１５１等）を備えるコンピュータにより実行されるプログラムである。プログラムは、プロセッサに、文字列を入力するための入力操作を受け付けるステップ（Ｓ１００）と、入力された文字列に応じて、レコード群の各レコードに含まれている複数項目の情報から、１つ以上かつ全部でない項目を検索項目と決定するステップ（Ｓ１０４）と、前記入力された文字列と適合する文字列が前記検索項目の情報に含まれているレコードを、前記レコード群から抽出した結果を前記ディスプレイに表示させるステップ（Ｓ１１２）と、を実行させる。
【０１３３】
前記の構成によれば、入力された文字列に応じて、複数項目から検索項目が絞り込まれる。したがって、ユーザは別途指定せずとも、入力した文字列に応じた適切な検索対象の情報について検索した結果を得ることができる。したがって、ユーザの情報検索に係る利便性が向上する。
【０１３４】
（項目２）  （項目１）において、複数項目の情報それぞれがとり得る文字数の範囲は項目ごとに異なっており、決定するステップでは、入力された文字列の文字数と前記文字数の範囲が適合する情報の項目を、検索項目と決定してもよい。
【０１３５】
これにより、入力された文字列がいずれの項目に注目したものか判別することができる。したがって、適切な検索項目で情報を検索し、レコードを抽出することができる。これにより、ユーザの情報検索の利便性を向上させることができる。
【０１３６】
（項目３）  （項目１）において、前記決定するステップでは、特定の文字が前記入力された文字列に含まれている場合、該特定の文字に対応付けられている項目を、前記検索項目と決定してもよい。
【０１３７】
これにより、入力された文字列の内容から、該文字列がいずれの項目に注目したものか判別することができる。したがって、適切な検索項目で情報を検索し、レコードを抽出することができる。これにより、ユーザの情報検索の利便性を向上させることができる。
【０１３８】
（項目４）  （項目１）から（項目３）までのいずれか１項目において、レコードには少なくとも、ユーザによって設定される文字列から成る情報と、コンピュータまたは他の装置によって設定される文字列から成る情報と、が含まれていてもよい。
【０１３９】
前記の構成によれば、ユーザは任意の文字列を入力することで、自分が設定した情報と、コンピュータまたは他の装置によって設定された情報とを含むレコードを検索することができる。例えば、ユーザは自分が設定して覚えている文字列を入力することで、任意の情報を検索することができる。
【０１４０】
（項目５）  （項目４）において、プログラムは、複数のユーザが参加するゲームを実現するためのゲームプログラムであって、レコードは前記ユーザのアカウント情報であって、アカウント情報は、ユーザにより設定されたユーザ名と、ゲームのサーバによって設定されたユーザＩＤと、を少なくとも含んでいてもよい。
【０１４１】
複数ユーザが参加するゲームでは、一般的に、ゲームの進行上、ユーザ同士が関わりあうことが多い。前記の構成によればゲーム内での、ユーザのアカウント検索の利便性が向上するため、ユーザが互いに、任意のユーザを容易に検索することができる。よって、ユーザ同士の交流を活性化することができる。
【０１４２】
（項目６）  （項目１）から（項目５）までのいずれか１項目において、決定するステップでは、複数項目の情報のうち１つの項目を、検索項目と決定してもよい。これにより、検索項目をより絞り込むことができるため、ユーザは注目する情報をより簡単に見つけることができる。
【０１４３】
（項目７）  （項目１）から（項目６）までのいずれか１項目において、表示させるステップでは、検索項目の項目名を、抽出した結果とともに前記ディスプレイに表示させてもよい。これにより、ユーザは何の項目について検索が実行されたかを容易に知ることができる。また、ユーザは意図した項目について検索できたか否かを確認することができる。
【０１４４】
プロセッサ（１０、２０）、メモリ（１１、２１）、ディスプレイ（表示部１５２等）、およびユーザの入力操作を受け付ける操作部（入力部１５１等）を備えるコンピュータがプログラム（ゲームプログラム１３１）を実行する方法について説明した。方法は、文字列を入力するための入力操作を受け付けるステップ（Ｓ１００）と、入力された文字列に応じて、レコード群の各レコードに含まれている複数項目の情報から、１つ以上かつ全部でない項目を検索項目と決定するステップ（Ｓ１０４）と、入力された文字列と適合する文字列が検索項目の情報に含まれているレコードを、レコード群から抽出した結果をディスプレイに表示させるステップ（Ｓ１１２）と、を含む。前記の構成によれば、（項目１）と同様の効果を奏する。
【０１４５】
情報処理装置（ユーザ端末１００）について説明した。情報処理装置は、プログラム（ゲームプログラム１３１）を実行することにより、情報処理装置の動作を制御するプロセッサ（１０、２０）と、プログラムを記憶するメモリ（１１、２１）と、画像を表示するディスプレイ（表示部１５２等）と、ユーザの入力操作を受け付けるように構成された操作部（入力部１５１等）と、を備える。プロセッサは、文字列を入力するための入力操作を受け付けるステップ（Ｓ１００）と、入力された文字列に応じて、レコード群の各レコードに含まれている複数項目の情報から、１つ以上かつ全部でない項目を検索項目と決定するステップ（Ｓ１０４）と、入力された文字列と適合する文字列が検索項目に含まれているレコードを、レコード群から抽出した結果をディスプレイに表示させるステップ（Ｓ１１２）と、を実行する。前記の構成によれば、（項目１）と同様の効果を奏する。
【符号の説明】
【０１４６】
１  ゲームシステム、２  ネットワーク、１０，２０  プロセッサ、１１，２１  メモリ、１２，２２  ストレージ、１３，２３  通信ＩＦ（操作部）、１４，２４  入出力ＩＦ（操作部）、１５  タッチスクリーン（表示部、操作部）、１７  カメラ（操作部）、１８  測距センサ（操作部）、１００  ユーザ端末（情報処理装置）、１１０，２１０  制御部、１１１  操作受付部、１１２  ゲーム進行部、１１２１  検索ワード特定部、１１２２  検索項目決定部、１１２３  検索指示部  １１３  画像生成部、１１４  表示制御部、１２０，２２０  記憶部、１３１  ゲームプログラム、１３２，２３２  ゲーム情報、１３３,２３３  ユーザ情報、１５１  入力部（操作部）、１５２  表示部、２００  サーバ、３０１  検索ボックス、３０２  検索ボタン、１０１０  物体、１０２０  コントローラ（操作部）、１０３０  記憶媒体
【図１】
2019046322.tif 000003
【図２】
2019046322.tif 000004
【図３】
2019046322.tif 000005
【図４】
2019046322.tif 000006
【図５】
2019046322.tif 000007
【図６】
2019046322.tif 000008
【図７】
2019046322.tif 000009
【図８】
2019046322.tif 000010
【手続補正書】
【提出日】平成30年6月15日(2018.6.15)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
プロセッサ、メモリ、ディスプレイ、およびユーザの入力操作を受け付ける操作部を備えるコンピュータにより実行されるプログラムであって、
前記プログラムは、前記プロセッサに、
文字列を入力するための入力操作を受け付けるステップと、
入力された文字列に応じて、レコード群の各レコードに含まれている複数項目の情報から、１つ以上かつ全部でない項目を検索項目と決定するステップと、
前記入力された文字列と適合する文字列が前記検索項目の情報に含まれているレコードを、前記レコード群から抽出した結果を前記ディスプレイに表示させるステップと、を実行させ、
前記複数項目の情報それぞれがとり得る文字数の範囲は項目ごとに異なるものを含み、
前記決定するステップでは、前記入力された文字列の文字数と前記文字数の範囲が適合する情報の項目を、前記検索項目と決定する、プログラム。
【請求項２】
前記決定するステップでは、特定の文字が前記入力された文字列に含まれている場合、該特定の文字に対応付けられている項目を、前記検索項目と決定する、請求項１に記載のプログラム。
【請求項３】
前記レコードには少なくとも、
前記ユーザによって設定される文字列から成る情報と、
前記コンピュータまたは他の装置によって設定される文字列から成る情報と、が前記項目として含まれており、
前記ユーザによって設定される文字列から成る情報がとり得る文字数の範囲と、前記コンピュータまたは他の装置によって設定される文字列から成る情報がとり得る文字数の範囲と、は異なる、請求項１または２に記載のプログラム。
【請求項４】
前記プログラムは、複数のユーザが参加するゲームを実現するためのゲームプログラムであって、
前記レコードは前記ユーザのアカウント情報であって、
前記アカウント情報は、前記ユーザにより設定されたユーザ名と、前記ゲームのサーバによって設定されたユーザＩＤと、を少なくとも含む、請求項３に記載のプログラム。
【請求項５】
前記決定するステップでは、前記複数項目の情報のうち１つの項目を、前記検索項目と決定する、請求項１〜４のいずれか１項に記載のプログラム。
【請求項６】
前記表示させるステップでは、前記検索項目の項目名を、前記抽出した結果とともに前記ディスプレイに表示させる、請求項１〜５のいずれか１項に記載のプログラム。
【請求項７】
プロセッサ、メモリ、ディスプレイ、およびユーザの入力操作を受け付ける操作部を備えるコンピュータがプログラムを実行する方法であって、
前記方法は、
文字列を入力するための入力操作を受け付けるステップと、
入力された文字列に応じて、レコード群の各レコードに含まれている複数項目の情報から、１つ以上かつ全部でない項目を検索項目と決定するステップと、
前記入力された文字列と適合する文字列が前記検索項目の情報に含まれているレコードを、前記レコード群から抽出した結果を前記ディスプレイに表示させるステップと、を含み、
前記複数項目の情報それぞれがとり得る文字数の範囲は項目ごとに異なるものを含み、
前記決定するステップでは、前記入力された文字列の文字数と前記文字数の範囲が適合する情報の項目を、前記検索項目と決定する、方法。
【請求項８】
情報処理装置であって、
前記情報処理装置は、
プログラムを実行することにより、前記情報処理装置の動作を制御するプロセッサと
、
前記プログラムを記憶するメモリと、
画像を表示するディスプレイと、
ユーザの入力操作を受け付けるように構成された操作部と、を備え、
前記プロセッサは、
文字列を入力するための入力操作を受け付けるステップと、
入力された文字列に応じて、レコード群の各レコードに含まれている複数項目の情報から、１つ以上かつ全部でない項目を検索項目と決定するステップと、
前記入力された文字列と適合する文字列が前記検索項目に含まれているレコードを、前記レコード群から抽出した結果を前記ディスプレイに表示させるステップと、を実行し、
前記複数項目の情報それぞれがとり得る文字数の範囲は項目ごとに異なるものを含み、
前記決定するステップでは、前記入力された文字列の文字数と前記文字数の範囲が適合する情報の項目を、前記検索項目と決定する、情報処理装置。
【手続補正書】
【提出日】平成30年10月31日(2018.10.31)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
プロセッサ、メモリ、ディスプレイ、およびユーザの入力操作を受け付ける操作部を備えるコンピュータにより実行されるプログラムであって、
前記プログラムは、前記プロセッサに、
文字列を入力するための入力操作を受け付けるステップと、
複数項目の情報から成る１つの情報であるレコードを複数件含んでいるデータテーブルにおいて、入力された文字列に応じて、前記複数項目のうち、１つ以上かつ全部でない項目を検索項目と決定するステップと、
前記レコードのうち、決定された前記検索項目の情報に、前記入力された文字列と適合する文字列が含まれているレコードを、前記データテーブルから抽出するステップと、
前記抽出するステップにおいて抽出されたレコードの少なくとも一部の項目の情報を前記ディスプレイに表示させるステップと、を実行させ、
前記レコードは、前記複数項目のうちの一項目の情報として、該レコードを一意に特定する識別子を含み、
前記複数項目には、前記レコードにおいてそれぞれの項目の情報がとり得る文字数の範囲が設定されており、かつ、該文字数の範囲は項目ごとに異なっており、
前記決定するステップでは、前記入力された文字列の文字数と前記文字数の範囲が適合する情報の項目を、前記検索項目と決定する、プログラム。
【請求項２】
前記決定するステップでは、特定の文字が前記入力された文字列に含まれている場合、該特定の文字に対応付けられている項目を、前記検索項目と決定する、請求項１に記載のプログラム。
【請求項３】
前記レコードには少なくとも、
前記ユーザによって設定される文字列から成る情報と、
前記コンピュータまたは他の装置によって設定される文字列から成る情報と、が前記複数項目にそれぞれ一項目の情報として含まれており、
前記ユーザによって設定される文字列から成る情報がとり得る文字数の範囲と、前記コンピュータまたは他の装置によって設定される文字列から成る情報がとり得る文字数の範囲と、は異なる、請求項１または２に記載のプログラム。
【請求項４】
前記プログラムは、複数のユーザが参加するゲームを実現するためのゲームプログラムであって、
前記レコードは一人の前記ユーザのアカウント情報であって、
前記アカウント情報は、前記複数項目のうちのそれぞれ一項目の情報として、前記ユーザにより設定されたユーザ名と、前記ゲームのサーバによって設定された前記識別子であるユーザＩＤと、を少なくとも含む、請求項３に記載のプログラム。
【請求項５】
前記決定するステップでは、前記複数項目の情報のうち１つの項目を、前記検索項目と決定する、請求項１〜４のいずれか１項に記載のプログラム。
【請求項６】
前記表示させるステップでは、前記検索項目の項目名を、前記レコードの少なくとも一部の項目の情報とともに、前記ディスプレイに表示させる、請求項１〜５のいずれか１項に記載のプログラム。
【請求項７】
プロセッサ、メモリ、ディスプレイ、およびユーザの入力操作を受け付ける操作部を備えるコンピュータがプログラムを実行する方法であって、
前記方法は、
文字列を入力するための入力操作を受け付けるステップと、
複数項目の情報から成る１つの情報であるレコードを複数件含んでいるデータテーブルにおいて、入力された文字列に応じて、前記複数項目のうち、１つ以上かつ全部でない項目を検索項目と決定するステップと、
前記レコードのうち、決定された前記検索項目の情報に、前記入力された文字列と適合する文字列が含まれているレコードを、前記データテーブルから抽出するステップと、
前記抽出するステップにおいて抽出されたレコードの少なくとも一部の項目の情報を前記ディスプレイに表示させるステップと、を含み、
前記レコードは、前記複数項目のうちの一項目の情報として、該レコードを一意に特定する識別子を含み、
前記複数項目には、前記レコードにおいてそれぞれの項目の情報がとり得る文字数の範囲が設定されており、かつ、該文字数の範囲は項目ごとに異なっており、
前記決定するステップでは、前記入力された文字列の文字数と前記文字数の範囲が適合する情報の項目を、前記検索項目と決定する、方法。
【請求項８】
情報処理装置であって、
前記情報処理装置は、
プログラムを実行することにより、前記情報処理装置の動作を制御するプロセッサと、
前記プログラムを記憶するメモリと、
画像を表示するディスプレイと、
ユーザの入力操作を受け付けるように構成された操作部と、を備え、
前記プロセッサは、
複数項目の情報から成る１つの情報であるレコードを複数件含んでいるデータテーブルにおいて、入力された文字列に応じて、前記複数項目のうち、１つ以上かつ全部でない項目を検索項目と決定するステップと、
前記レコードのうち、決定された前記検索項目の情報に、前記入力された文字列と適合する文字列が含まれているレコードを、前記データテーブルから抽出するステップと、
前記抽出するステップにおいて抽出されたレコードの少なくとも一部の項目の情報を前記ディスプレイに表示させるステップと、を実行し、
前記レコードは、前記複数項目のうちの一項目の情報として、該レコードを一意に特定する識別子を含み、
前記複数項目には、前記レコードにおいてそれぞれの項目の情報がとり得る文字数の範囲が設定されており、かつ、該文字数の範囲は項目ごとに異なっており、
前記決定するステップでは、前記入力された文字列の文字数と前記文字数の範囲が適合する情報の項目を、前記検索項目と決定する、情報処理装置。