(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0020】
以下、情報端末制御システムの実施の形態について、図面を参照して説明する。以下の説明において、同一の機能および作用を有する部品は、各図を通して同じ符号を付し、重複する説明を繰返さない。
【0021】
[情報端末制御システムの構成]
ある実施の形態として、以下では、情報処理装置1A〜1C、および、サーバ2を含む情報端末制御システム1000について説明する。情報処理装置1A〜1Cは、情報処理装置の一例であり、いずれもサーバ2と通信可能となっている。本明細書では、これらの共通の特性について言及する場合には、これらを総称して「情報処理装置1」と称する場合もある。本実施の形態に従う情報端末制御システムに参加する情報処理装置としては、携帯電話機、スマートフォン(高機能携帯電話機)、情報処理機能を搭載したテレビジョン装置、携帯型の情報処理装置、据置型の情報処理装置などを採用することができる。
【0022】
図1は、ある実施の形態に従う情報端末制御システム1000の構成を模式的に示す図である。
図1に示す情報端末制御システム1000において、情報処理装置1は、ネットワーク9を介して、サーバ2へアクセスすることができる。ネットワーク9は、たとえばインターネットや専用回線などの広域ネットワーク(WAN:Wide Area Network)であるが、これに限定されない。より具体的には、情報処理装置1は、後述するように無線通信機能を有しており、ネットワーク9と電気的に接続されたアクセスポイント7を介して、サーバ2との間でデータを遣り取りする。情報処理装置1とサーバ2の間の通信は、有線通信であっても良い。
【0023】
本実施の形態では、情報処理装置1がネットワーク9を介してサーバ2と通信する通信態様を、「インターネット通信」と呼ぶ。また、情報処理装置1同士が、ネットワーク9を経由せず直接的に無線通信する通信態様を、「ローカル通信」と呼ぶ。
【0024】
[情報処理装置のハードウェア構成]
図2は、本実施の形態に従う情報処理装置1のハードウェアブロック図である。
図2に示されるように、情報処理装置1は、入力装置11と、表示装置12と、プロセッサ13と、内部記憶装置14と、メインメモリ15と、無線通信装置(無線通信モジュール)16とを含む。
【0025】
入力装置11は、情報処理装置1のユーザによって操作され、ユーザの操作に応じた信号をプロセッサ13へ出力する。入力装置11は、例えば、十字スイッチや押しボタンやタッチパネルである。表示装置12は、画像を画面に表示する。表示される画像は、たとえば、情報処理装置1において生成された画像、または、外部の装置から情報処理装置1に送信されてきた画像の少なくとも一方を含む。表示装置12は、液晶表示装置(LCD)などの公知の表示装置を含む。
【0026】
プロセッサ13は、コンピュータプログラムを実行するための演算処理手段である。
内部記憶装置14には、プロセッサ13によって実行されるコンピュータプログラムが格納されている。内部記憶装置14には、後述するキャラクタ情報も格納される。内部記憶装置14は、一例として、NAND型フラッシュメモリから構成される。プロセッサ13によって実行されるプログラムは、(出荷時からまたは他の機器との通信によって出荷後に)内部記憶装置14に格納されていても良いし、情報処理装置1本体に対して着脱可能な記録媒体(USB(Universal Serial Bus)メモリ等)に格納されていても良い。
【0027】
メインメモリ15は、種々のデータを一時的に記憶する。メインメモリ15は、一例としてPSRAM(Pseudo-SRAM(Static Random Access Memory))から構成される。
【0028】
無線通信装置16は、無線通信によって、他の情報処理装置1との間の通信のインターフェースとして機能する。また、無線通信装置16は、アクセスポイント7を介して、サーバ2との間の通信のインターフェースとしても機能する。
【0029】
[サーバのハードウェア構成]
図3は、サーバ2のハードウェアブロック図である。
図3に示されるように、サーバ2は、入力装置21と、表示装置22と、プロセッサ23と、HDD(Hard Disk Drive)24と、メインメモリ25と、ネットワークインターフェース26とを含む。
【0030】
入力装置21は、サーバ2のユーザによって操作され、ユーザの操作に応じた信号をプロセッサ23へ出力する。入力装置21は、例えば、キーボードやマウスである。表示装置22は、画像を画面に表示し、たとえば液晶表示装置(LCD)によって構成される。
【0031】
プロセッサ23は、コンピュータプログラムを実行するための演算処理手段である。HDD24には、プロセッサ23によって実行されるコンピュータプログラムが格納されている。当該コンピュータプログラムは、サーバ2をサーバ装置として機能させるためのプログラムを含む。
【0032】
メインメモリ25は、コンピュータプログラムや情報を一時的に記憶する。メインメモリ25は、一例としてPSRAMから構成される。ネットワークインターフェース26は、情報処理装置1との間の通信のインターフェースとしても機能する。ネットワークインターフェース26は、たとえばLANカードによって構成される。
【0033】
[インターネット通信]
情報処理装置1とサーバ2の間の通信態様である「インターネット通信」に関して説明する。「インターネット通信」では、情報処理装置1は、たとえばIEEE802.11準拠の方式でアクセスポイント7に接続し、当該アクセスポイント7を介してネットワーク9に接続する。情報処理装置1は、ネットワーク9を経由して、サーバ2と通信する。
【0034】
情報処理装置1がネットワーク9を介してサーバ2と通信する処理の一例として、タスクを実行する処理が挙げられる。本実施の形態におけるタスクは、所定のデータの送受信を伴う処理を示す。より具体的には、「送信タスク」と「受信タスク」の2種類に分類される。本明細書では、これらを総称して単に「タスク」と称することもある。当該タスクの内容を示すデータは、サーバのURL等の、接続先を特定する情報を含む。
【0035】
[ローカル通信]
情報処理装置1同士の通信態様である「ローカル通信」に関して説明する。本実施の形態において、情報処理装置1は、「ローカル通信」を用いることで、所定のアプリケーションプログラム(たとえば、ゲームアプリケーション)で利用可能なアプリケーション用データを交換できる。「ローカル通信」とは、近距離に存在する他の情報処理装置1に対して、内部記憶装置14に格納された所定のデータ(本実施の形態では「キャラクタ情報」)を自動的に(ユーザによる操作無しに)送信し、また、当該他の情報処理装置1の内部記憶装置14に格納された交換用データを当該他の情報処理装置1から自動的に(ユーザによる操作無しに)受信する通信をいう。なお、本例においては、ローカル通信をすれ違い通信とも称する。
【0036】
より具体的には、ローカル通信は、情報処理装置1のプロセッサ13および無線通信装置16等が協働することによって実行される。この処理は、例えば情報処理装置1がいわゆるスリープ状態(スタンバイ状態などと呼ばれることもある)のときに、バックグラウンド処理として実行される処理である。例えば、スリープ中は、基本的には無線通信装置16が主体となって動作し、必要に応じて一時的にプロセッサ13のスリープが解除され、プロセッサ13が一時的に実行主体となる等の制御が行われる(例えば、他の情報処理装置1の探索処理は無線通信装置16で行なわれ、データの送受信はプロセッサ13で行なわれる等)。その他、例えば、情報処理装置1は、プロセッサ13とは別に低消費電力で動作可能な第2のプロセッサを備え、スリープ中は当該第2のプロセッサが実行主体となるようにしてもよい。また、ローカル通信は、情報処理装置1がスリープ状態でない場合でも、ユーザの指示操作などによって適宜実行されても良い。
【0037】
情報処理装置1は、ローカル通信において、たとえば、近距離無線通信の通信範囲内に存在する不特定の他の情報処理装置1を繰り返し探索する。そして、情報処理装置1は、探索により発見した他の情報処理装置1に対して、上記キャラクタ情報を自動的に送信するとともに、当該他の情報処理装置の内部記憶装置14に格納された上記キャラクタ情報を当該他の情報処理装置から自動的に受信する。
【0038】
上記した「ローカル通信」は、例えば、情報処理装置1を所持しているユーザ同士がすれ違った際に行なわれる。キャラクタ情報は、ユーザの操作等に基づいて、「ローカル通信」に先立って生成されて、予め内部記憶装置14の所定の領域に記憶される。
【0039】
図1では、近距離無線通信の通信範囲の例として、領域AR1と領域AR2とが示されている。領域AR1は、情報処理装置1Aについての近距離無線通信の通信範囲を示す。領域AR2は、情報処理装置1Cについての近距離無線通信の通信範囲を示す。
【0040】
たとえば、移動している情報処理装置1Bが領域AR1の内部に位置したとき、情報処理装置1Aと情報処理装置1Bは、ローカル通信を実行する。これにより、たとえば、情報処理装置1Aから情報処理装置1Bに、キャラクタ情報が転送される。また、情報処理装置1Cの移動に伴って、領域AR2が、情報処理装置1Bを内部に含む位置まで移動してきたとき、情報処理装置1Bと情報処理装置1Cは、ローカル通信を実行する。これにより、たとえば、情報処理装置1Aから情報処理装置1Bへと転送されたキャラクタ情報が、情報処理装置1Bから情報処理装置1Cへ転送される。
【0041】
[アプリケーションの処理概要]
次に、
図4および
図5を参照して、複数の情報処理装置1の間で転送されるキャラクタ情報が利用されるアプリケーションの処理の概要を説明する。本実施の形態では、キャラクタ情報を用いるアプリケーションの一例である「ゲームアプリケーション」の処理の概要について説明する。
【0042】
図4は、情報処理装置1内の記憶領域の一部の記憶内容を模式的に示す図である。当該記憶領域は、たとえば内部記憶装置14内に設けられる。
図5は、本実施の形態に関連するゲームアプリケーションの処理概要を示す図である。
【0043】
まず
図4を参照して、情報処理装置1内の記憶領域には、すれ違い用受信ボックス141、タスク受信キャッシュ142、タスク送信用データ格納領域(以下、「タスク送信用データ」という)143、および、すれ違い用送信ボックス144が設けられている。
図4では、情報処理装置1内の記憶領域を示す四角形が示され、当該四角形の左上に、すれ違い用受信ボックス141が示され、そして、当該四角形の右側に、上から順にタスク受信キャッシュ142、タスク送信用データ143、および、すれ違い用送信ボックス144が、縦に並べられて示されている。すれ違い用送信ボックス144は、すれ違い通信において送信されるデータが格納されるメモリ領域である。すれ違い用受信ボックス141は、すれ違い通信において受信されたデータが格納されるメモリ領域である。
【0044】
情報処理装置1が
図4に示されたようなメモリの構造を備えていることを前提とした上で、
図5を参照して、本実施の形態に関するゲームアプリケーションの処理の概要を説明する。
図5には、情報処理装置A〜情報処理装置Cが示されている。これらは、
図1の情報処理装置1A〜情報処理装置1Cのそれぞれに相当する。情報処理装置A〜Cのそれぞれには、ゲームアプリケーションがインストールされているものとする。
図5には、さらにサーバ2が示されている。本実施の形態に係るゲームアプリケーションでは、たとえば、情報処理装置Aで生成された「キャラクタ情報」が、すれ違い通信によって他の情報処理装置(情報処理装置B,C)へ次々に転送される。これにより、キャラクタ情報によって表現されるキャラクタが、情報処理装置A,B,Cを順に旅する演出が実現され得る。これによりゲームアプリケーションの興趣性を高めることが可能である。
【0045】
本実施の形態の「キャラクタ情報」は、少なくとも、当該キャラクタ情報が生成された情報処理装置1を識別するための識別情報(端末ID)と、キャラクタごとの特性を表す情報(パラメータ情報)とを含む。「キャラクタ情報」は、送信(転送)された回数を表す情報(移動回数)を含んでいても良い。キャラクタ情報の生成は、上記ゲームアプリケーションによって生成されても良いし、他のアプリケーションによって生成されても良い。
【0046】
図5において、まず、情報処理装置Aで、キャラクタ情報(
図5中の「CI」)が生成され、すれ違い用送信ボックス144に格納される。その後、すれ違い通信が行われることで、当該キャラクタ情報が情報処理装置Aから情報処理装置Bに移動する。これにより、キャラクタ情報は、情報処理装置Bのすれ違い用受信ボックス141へと移動される。
【0047】
その後、情報処理装置Bにおいてゲームアプリケーションが実行されると、キャラクタ情報は、情報処理装置B内で、すれ違い用受信ボックス141から当該ゲームアプリケーションの処理データを格納する領域(以下、「作業領域」という)へと移動される。当該移動のとき、「キャラクタ情報」が「移動回数」を含む場合、情報処理装置Bは、キャラクタ情報を、「移動回数」に所定値が加算されるように更新する。つまり、情報処理装置1Bは、キャラクタ情報の受信に伴い「移動回数」を加算更新する。
【0048】
情報処理装置Bは、さらに、情報処理装置Aから受信したキャラクタ情報に含まれるパラメータ情報(たとえば、後述する「経験パラメータ」を更新することができる。経験パラメータは、パラメータ情報の一例である。情報処理装置Bは、たとえば、ユーザ操作に従って、パラメータ情報を更新する。パラメータ情報の更新内容は、たとえばユーザ操作の内容に応じて変更される。より具体的には、ユーザ操作の内容に応じて、パラメータ情報が変更される値の大きさが決定される。
【0049】
そして、情報処理装置Bは、更新後のキャラクタ情報をサーバ2へ送信するための送信用情報(
図5中の「Info」)を生成し、タスク送信用データ143に格納する。また、情報処理装置Bにおいて、当該「Info」を適当な時期にサーバ2に送信するための「送信タスク」も生成・登録される。その結果、適当なタイミングで、「送信タスク」が実行される。これにより、「Info」が、情報処理装置Bからサーバ2へ送信される。サーバ2は、情報処理装置Bから送信されてきた「Info」を蓄積する。
【0050】
そして、情報処理装置Bと情報処理装置Cの間ですれ違い通信が発生し、キャラクタ情報が、情報処理装置Bのすれ違い用送信ボックス144から情報処理装置Cのすれ違い用受信ボックス141に移動する。ここで移動するキャラクタ情報は、情報処理装置Aから情報処理装置Bへと移動した後、情報処理装置Bにおいて更新された、キャラクタ情報である。当該すれ違い通信は、情報処理装置Bからサーバ2への「Info」の送信の前に生じる場合もあれば、後に生じる場合もある。
【0051】
情報処理装置Bにおけるゲームアプリケーションの処理内容によっては、パラメータ情報の値が変更されることなく、キャラクタ情報が情報処理装置Bから情報処理装置Cへと移動(転送)される場合もあり得る。本明細書では、キャラクタ情報が、情報処理装置Bのすれ違い用受信ボックス141に格納されてから、作業領域を経て、すれ違い用送信ボックス144へと移動されることを、「更新」と呼ぶ。つまり、パラメータ情報は、値を変更されることなく更新される場合があり得る。
【0052】
情報処理装置Cでは、ゲームアプリケーションが実行されると、情報処理装置Bから送信されてきたキャラクタ情報は、すれ違い用受信ボックス141から作業領域へと移動される。キャラクタ情報が「移動回数」を含む場合、当該移動に伴って、情報処理装置Cは、キャラクタ情報を、「移動回数」に所定値が加算されるように更新する。
【0053】
その後、情報処理装置Cでは、キャラクタ情報は、ゲームアプリケーションの処理内容に応じて更新された後、すれ違い用送信ボックス144へと移動される。そして、情報処理装置Cは、上記情報処理装置Bと同様に、「Info」と送信タスクを生成し、キャラクタ情報をサーバ2へと送信する。また、情報処理装置Cと他の情報処理装置とのすれ違い通信により、キャラクタ情報は、当該他の情報処理装置へと転送される。
【0054】
このように、情報処理装置Aで生成されたキャラクタ情報は、すれ違い通信によって他の情報処理装置へと次々に転送される。また、当該キャラクタ情報を受信した情報処理装置B,Cは、上記「Info」を適宜サーバ2へ送信する。一方、情報処理装置Aは、サーバ2に蓄積されている「Log」を取得する。「Log」とは、サーバ2に蓄積されている「Info」のうち、自装置に対応するものをいう。情報処理装置Aは、当該「Log」を取得するために「受信タスク」を生成し、適当な時期に「Log」を受信する。
【0055】
情報処理装置Aは、「Log」を利用して、当該情報処理装置Aが生成して送信したキャラクタ情報が転送においてどのように変更されたかを、表示することができる。
【0056】
[装置間の通信の概要]
図6を参照して、情報端末制御システムにおける装置間の通信処理の概要を説明する。
図6は、情報端末制御システム1000の各装置の処理のタイミングチャートである。
図6において、情報処理装置1A〜1Cは、それぞれ情報処理装置A〜Cで表されている。
【0057】
まず、
図6において矢印L01で示されるように、情報処理装置1Aと情報処理装置1Bのすれ違い通信が実行される。これにより、情報処理装置1Aから情報処理装置1Bへ、キャラクタ情報が送信される。このときに送信されるキャラクタ情報のパラメータ情報の状態は、情報処理装置1Aにおいてされた状態である。
図6中の「α」は、パラメータ情報のこのときの状態を表す。
【0058】
次に、情報処理装置1Bは、ステップB01で、情報処理装置1Aから送信されてきたキャラクタ情報のパラメータ情報を更新する。
図6では、情報処理装置1Bにおいて更新された後のパラメータ情報の状態が、「α+β」で示されている。
図6は、情報処理装置1Bにおけるキャラクタ情報の更新を、キャラクタ情報に「β」が追加されることによって表現している。情報処理装置1Bは、インターネット通信により、サーバ2へ「α+β」に対応するキャラクタ情報を送信する(矢印L02)。当該キャラクタ情報は、サーバ2に蓄積される(ステップS01)。
【0059】
その後、
図6において矢印L03で示されるように、情報処理装置1Bと情報処理装置1Cのすれ違い通信が実行される。これにより、情報処理装置1Bから情報処理装置1Cへ、上記「α+β」に対応するキャラクタ情報が送信される。
【0060】
次に、情報処理装置1Cは、ステップC01で、情報処理装置1Bから送信されてきたキャラクタ情報のパラメータ情報を更新する。
図6では、情報処理装置1Cにおいて更新された後のパラメータ情報の状態が、「α+β+γ」で示されている。
図6は、情報処理装置1Cにおけるキャラクタ情報の更新を、キャラクタ情報に「γ」が追加されることによって表現している。情報処理装置1Cは、インターネット通信により、サーバ2へ「α+β+γ」に対応するキャラクタ情報を送信する(矢印L04)。当該キャラクタ情報は、サーバ2に蓄積される(ステップS03)。
【0061】
サーバ2に蓄積されたキャラクタ情報は、当該キャラクタ情報が生成された情報処理装置1へと送信される。
図6の例では、「α+β」と「α+β+γ」のそれぞれに対応するキャラクタ情報は、サーバ2から情報処理装置1Aへと送信される(矢印L05)。
【0062】
情報処理装置1Aは、ステップA01で、受信したキャラクタ情報を利用した表示処理を実行する。ステップA01では、「α+β」で表されるキャラクタ情報を利用した表示と「α+β+γ」で表されるキャラクタ情報を利用した表示とが、別箇に行われても良いし、これらのキャラクタ情報を組み合わせた表示が行われても良い。
【0063】
なお、情報処理装置1Bがサーバ2と通信不能な状態にある場合等には、情報処理装置1Bからサーバ2へのキャラクタ情報の送信(矢印L02)よりも、情報処理装置1Cからサーバ2へのキャラクタ情報の送信(矢印L04)が先に実行される場合があり得る。これにより、サーバ2から情報処理装置1Aへのキャラクタ情報の送信(矢印L05)において、「α+β+γ」に対応するキャラクタ情報のみが送信される場合もあり得る。
【0064】
その後、情報処理装置1Bがサーバ2と通信可能な状態となった場合、情報処理装置1Cからサーバ2へのキャラクタ情報の送信(矢印L04)の後に、情報処理装置1Bからサーバ2へ、キャラクタ情報が送信される場合があり得る。これにより、サーバ2は、情報処理装置1Aに、情報処理装置1Cから送信されてきたキャラクタ情報の送信よりも後に、情報処理装置1Bから送信されてきたキャラクタ情報を送信する場合があり得る。
【0065】
図6を参照して説明された処理では、情報処理装置1Aは、当該情報処理装置1Aにおいて生成されたキャラクタ情報のみを送信した。なお、情報処理装置1Aは、情報処理装置1B,1Cと同様に、他の情報処理装置1において生成されたキャラクタ情報を受信することもでき、また、当該受信したキャラクタ情報を他の情報処理装置1に送信することもできる。これにより他の情報処理装置1において生成されたキャラクタ情報を送信することが可能であるためデータ通信の機会が増え、データ通信の興趣性を高めることができる。
【0066】
また、
図6を参照して説明された処理において、情報処理装置1(情報処理装置1B,情報処理装置1C)は、他の情報処理装置1から受信したキャラクタ情報の更新と更新後のキャラクタ情報のさらに他の情報処理装置1への送信とからなる処理の組を実行する。そして、情報処理装置1は、当該処理の組を1回実行するたびに、サーバ2へ、更新後のキャラクタ情報を送信する。なお、サーバ2への、更新後のキャラクタ情報の送信は、上記処理の組が所定回数実行されるまで保留されても良い。たとえば、情報処理装置1は、上記処理の組を2回実行したことを条件として、更新後のキャラクタ情報をサーバ2へ送信するための送信タスクを生成しても良い。
【0067】
[装置間の通信処理]
次に、
図7〜
図19を参照して、情報端末制御システム1000における、装置間の通信処理の内容をより具体的に説明する。
図7〜
図13は、キャラクタ情報の具体例を示す図である。
図14は、キャラクタ情報に基づいて表示される画面の一例を示す図である。
図15〜
図18は、上記通信処理におけるタイミングチャートである。
図19は、
図18のステップA14のサブルーチンのフローチャートである。
【0068】
図7には、キャラクタ情報の一般的な構成が示されている。キャラクタ情報は、基本情報D10と、付加情報D20A,D20B…を含む。基本情報D10は、キャラクタ情報の基本的な部分である。付加情報D20A,D20B…は、キャラクタ情報の転送先の情報処理装置1において追加される情報である。付加情報D20A,D20B…を総称して付加情報D20と呼ぶ場合もある。
【0069】
基本情報D10は、少なくとも、キャラクタコードと、移動回数と、端末IDと、経験パラメータと、出身島名とを含む。キャラクタコードは、キャラクタ情報に対応したキャラクタが表示される場合の外観を特定するデータである。たとえば、キャラクタが人の姿をしている場合、キャラクタコードは、目の色や髪型等を特定する情報である。情報処理装置1は、キャラクタコードとオブジェクトを対応付ける情報(テーブル等)を参照できる。これにより、各情報処理装置1は、キャラクタコードを取得すれば、当該キャラクタコードに対応するオブジェクト(たとえば、後述するキャラクタ50)を表示することができる。キャラクタコードとオブジェクトを対応付ける情報は、各情報処理装置1の内部記憶装置14等に格納されていても良いし、プロセッサ13がアクセス可能なネットワーク上の記憶装置に格納されていても良い。また、当該情報は、情報端末制御システム1000に属する情報処理装置1の各々において共通するものである。
【0070】
移動回数は、キャラクタ情報が転送された回数を表す情報である。キャラクタ情報のパラメータ情報が1回更新されると、移動回数の値は、たとえば「1」加算更新される。
【0071】
端末IDは、情報処理装置毎に固有に設けられた識別情報であり、ここでは、キャラクタ情報を生成した情報処理装置1を特定する情報である。
【0072】
経験パラメータは、情報処理装置1において、ゲームアプリケーションにおける処理内容に応じて値を変更される情報である。ゲームアプリケーションにおける処理内容によっては、パラメータ情報の更新において、経験パラメータの値は、増加する場合もあれば、減少する場合もあれば、変更しない場合もあり得る。
【0073】
各情報処理装置1は、たとえばユーザから入力された、当該情報処理装置1の名前を格納する。出身島名は、キャラクタ情報を生成した情報処理装置1の名前である。
【0074】
各付加情報D20は、少なくとも、島名と、おみやげデータと、演出用フラグと、演出用データとを含む。島名は、転送先の情報処理装置1の名前である。おみやげデータは、後述する処理で利用される「おみやげ物」を表すデータである。演出用フラグは、特定の内容の演出についてのフラグである。演出用データは、演出に利用されるデータである。演出用フラグと演出用データは、転送先の情報処理装置1での、ゲームアプリケーションにおける処理内容に応じて生成される情報である。
【0075】
たとえば、情報処理装置1Aにおいて生成されたキャラクタ情報は、基本情報D10のみを含む。情報処理装置1Bにおいて更新されることにより、キャラクタ情報には付加情報D20Aが追加される。その後、情報処理装置1Cに転送され、当該情報処理装置1Cにおいて更新されることにより、キャラクタ情報には、さらに、付加情報D20Bが追加される。
【0076】
図15を参照して、情報処理装置1Aは、ステップA10において、キャラクタ情報を生成する。生成されるキャラクタ情報の一例が、
図8に示されている。
【0077】
図8に示されたキャラクタ情報では、キャラクタコードの値の一例として「CR0101」が設定され、出身島名の値の一例として「島(0)」が設定され、移動回数の値の一例として「0」が設定され、端末IDの値の一例として「TA0123」が設定され、そして、経験パラメータの値の一例として「0」が設定されている。端末IDの値「TA0123」は、情報処理装置1Aを特定する値である。
【0078】
そして、情報処理装置1Aは、情報処理装置1Bとのすれ違い通信により、情報処理装置1Bに上記キャラクタ情報を送信する。これに応じて、情報処理装置1Bは、ステップB10で、キャラクタ情報を受信する。
【0079】
図15の情報処理装置1Bのゲームアプリケーションは、情報処理装置1Bが情報処理装置1Aを含む他の情報処理装置1からキャラクタ情報を受信するまでは、たとえば画面IMG10に示されるような画面を表示する。画面IMG10は、人がいない波止場を表し、ゲームアプリケーションにおける待機状態の表示画面の一例である。
【0080】
情報処理装置1Bが情報処理装置1Aからキャラクタ情報を受信すると(ステップB10)、情報処理装置1Bは、ステップB10で受信したキャラクタ情報を、すれ違い用受信ボックス141から、作業領域へと移動させる。
【0081】
その後、情報処理装置1Bは、ゲームアプリケーションによる処理内容に応じて、情報処理装置1Aから送信されてきたキャラクタ情報を更新する(ステップB12)。
図9は、更新後のキャラクタ情報の一例を示す。
図8と比較すると、
図9のキャラクタ情報は、移動回数の値を1加算され、また、島名「島(1)」を含む付加情報を追加されている。当該付加情報は、島名「島(1)」と、値「P」のおみやげデータと、値「NULL」の演出用フラグおよび演出用データとを含む。おみやげデータの値「P」は、情報処理装置1Bに対応する島のおみやげ物(たとえば、具体的な食べ物の種類)を示す。演出用フラグと演出用データについては、後述する。
【0082】
そして、情報処理装置1Bのゲームアプリケーションは、たとえば画面IMG12を表示する。画面IMG12は、波止場に、他の島から船に乗せられてきたキャラクタ50が到着した場面を表す。キャラクタ50は、キャラクタコード「CR0101」に対応し、「ケン」と名付けられた旅人である。
【0083】
図16を参照して、ステップB14で、情報処理装置1Bは、イベント「履歴表示」またはイベント「おもてなし」の発生まで待機する。イベント「履歴表示」が発生すると、ステップB16へ制御が進められる。イベント「おもてなし」が発生すると、ステップB18へ制御が進められる。イベントは、たとえばユーザ操作に基づいて発生する。
【0084】
ステップB16では、情報処理装置1Bは、キャラクタの履歴を表示する。画面IMG14は、履歴を表す画面の一例である。受信したキャラクタの経過履歴を確認することができるためデータ通信の興趣性を高めることができる。画面IMG14は、「ケンの旅の履歴」という表題とともに、値「島(0)」を持つ「出身島」と、値「0」を持つ「経験値」とを含む。「出身島」は、キャラクタ情報中の出身島名である。「経験値」は、キャラクタ情報の経験パラメータの値である。本明細書において、情報処理装置1A,1B,1Cのそれぞれの名前を、「島(0)」「島(1)」「島(2)」とする。
【0085】
画面IMG14は、さらに、値「1」を持つ「渡り歩いた島の数」と、値「96km」を持つ「旅をした距離」とを含む。「渡り歩いた島の数」は、たとえばキャラクタ情報中の移動回数の数である。「旅をした距離」は、たとえばキャラクタ情報が転送されてきた各情報処理装置1の位置情報をキャラクタ情報の転送順に連結する線の長さである。情報端末制御システム1000では、各情報処理装置1は、各情報処理装置1の島の名前から位置情報を特定しても良い。また、キャラクタ情報は、各島の名前(出身島、または、付加情報の中の島名)とは別に、島の位置情報を特定する情報を含んでいても良い。位置情報は、場所(都道府県名等)を表す情報であっても良いし、平面座標であっても良い。なお、旅をした距離の値は、移動回数の値と所与の単位距離との積であっても良い。
【0086】
画面IMG14は、さらに「渡り歩いた島」の欄を有する。当該欄には、「島(1)」が表示されている。当該欄には、「付加情報」の島名として登録されている、情報処理装置1の名前が表示される。
【0087】
ステップB18では、情報処理装置1Bは、演出に利用するキャラクタの悩みごとの内容を、予め登録された内容の中から決定する。そして、ステップB18において、情報処理装置1Bは、画面IMG16に示されるように、キャラクタが、決定された内容の悩みごとを告白する演出表示がなされる。画面IMG16では、キャラクタ50は、空腹であるという悩みごとを告白している。
【0088】
ステップB20では、情報処理装置1Bは、ステップB18における表示の次に発生したイベントが、悩みごとの解決を実行するものであるかどうかを判定する。「悩みごとを解決する」というイベントが発生すれば、たとえば画面IMG18(
図17)が表示された後、ステップB22(
図17)へ制御が進められる。画面IMG18は、「空腹」という悩みごとを解決するためにキャラクタに食べものを与える演出表示を表す。
【0089】
一方、「悩みごとを解決しない」というイベントが発生すれば、ステップB20からステップB24へ制御が進められる。イベント「悩みごとを解決する」およびイベント「悩みごとを解決しない」は、いずれも、たとえばユーザ操作に基づいて発生する。
【0090】
ステップB22では、情報処理装置1Bは、キャラクタ情報を更新する。更新後のキャラクタ情報の一例が、
図10に示されている。
図9と比較して、
図10に示されたキャラクタ情報は、「経験パラメータ」の値が「12」加算されている。その後、ステップB24へ制御が進められる。「経験パラメータ」は、更新により減算される場合もある。
【0091】
ステップB24では、情報処理装置1Bは、記念写真の送信に同意する操作がなされたか否かが検出される。ステップB24の前提として、たとえば、情報処理装置1Bにおけるゲームアプリケーションは、ユーザに対して、「記念写真の送信に同意するか否か」を入力する操作を求める。同意する操作がなされた場合には、ステップB26へ制御が進められ、同意しない操作がなされた場合には、ステップB28へ制御が進められる。
【0092】
ステップB26では、
図11に示されるように、演出用フラグと演出用データの値が更新されて、ステップB28へ制御が進められる。演出用フラグの値には、値「1」が設定される。演出用データの値には、たとえば情報処理装置1Bにおいて生成されたキャラクタのキャラクタコード(
図11の例では、値「CR0121」)が設定される。
【0093】
ステップB28では、情報処理装置1Bは、ステップB10においてキャラクタ情報が受信されてから夜が明けるまで待機する。「夜が明ける」とは、たとえば、タイマの計時時刻が特定の時刻(たとえば、午前0時)を過ぎることを意味する。夜が明けると、情報処理装置1Bは、次のすれ違い通信のための準備をする。ここでの「準備」は、更新後のキャラクタ情報(
図11)を、作業領域からすれ違い用送信ボックス144へ移動すること、および、当該キャラクタ情報をサーバ2へ送信するための送信タスクを生成することを含む。サーバ2は、受信したキャラクタ情報を蓄積する(ステップS10)。
【0094】
その後、情報処理装置1Bは、情報処理装置1Cとすれ違い通信をすることにより、更新後のキャラクタ情報を情報処理装置1Cへ送信する。このとき、情報処理装置1Bのゲームアプリケーションは、たとえば、画面IMG20を表示する。画面IMG20は、画面IMG12(
図15)で島に到着したキャラクタ50が、船に乗せられて、当該島を離れていく場面を示している。
【0095】
なお、ゲームアプリケーションは、夜が明けたと判断した後、情報処理装置1Bが他の情報処理装置1とすれ違い通信をするまで、キャラクタ50を波止場にたたずませる演出表示を行っても良い。この演出表示は、情報処理装置1Bのユーザに、早期に、キャラクタ50が波止場に一人で佇む状態を解除したいと思わせることができ、これにより、当該ユーザに、情報処理装置1Bを他の情報処理装置1とすれ違い通信させるよう促進することができる。
【0096】
ステップC10で、情報処理装置1Cは、情報処理装置1Bからキャラクタ情報を受信した後、情報処理装置1Aからキャラクタ情報を受信した情報処理装置1Bが実行したのと同じ処理(ステップB10〜ステップB28)を実行する(ステップC10)。キャラクタ情報は、情報処理装置1Bにおいて更新されたのと同様に、情報処理装置1Cにおいても更新される。そして、情報処理装置1Cは、更新後のキャラクタ情報を、サーバ2へ送信するとともに、ステップC12で、すれ違い通信により他の情報処理装置1に送信する。情報処理装置1Cにおける通信状態に応じて、情報処理装置1Cは、更新後のキャラクタ情報(後述する
図13参照)を、サーバ2へ送信した後に他の情報処理装置1に送信する場合もあれば、その逆の場合もあり得る。サーバ2は、情報処理装置1Cからキャラクタ情報を受信すると、当該キャラクタ情報を蓄積する(ステップS12)。
【0097】
図11〜
図13を参照して、情報処理装置1Cにおけるキャラクタ情報の更新について説明する。情報処理装置1Bから送信されたキャラクタ情報(
図11)は、まず、
図12に示されるように、移動回数を「1」加算され、また、付加情報「島(2)」を追加される。島(2)で表される付加情報のおみやげデータの値「N」は、情報処理装置1Cに対応する島のおみやげ物(たとえば、具体的な食べ物の種類)を示す。演出用フラグと演出用データのそれぞれの値は、「NULL」である。
【0098】
情報処理装置1Cにおいて悩みごとの解決が実行されると、
図13に示されるように、経験パラメータの値が、8を追加されることにより、「20」まで増加している。
【0099】
演出用フラグと演出用データの値を更新するか否かは、ステップB24として説明されたように、ゲームアプリケーションにおける記念写真の送信に同意する否かについての操作の内容に基づいて決定される。本実施の形態では、情報処理装置1Bでは、記念写真の送信に同意することを表す操作がなされた。このため、情報処理装置1Bにおけるキャラクタ情報の更新では、演出用フラグと演出用データの値が変更された。情報処理装置1Cでは、記念写真の送信に同意しないことを表す操作がなされたとする。これにより、情報処理装置1Cにおける更新後のキャラクタ情報では、
図13に示されるように、演出用フラグと演出用データの値はNULLのままである。
【0100】
一方、情報処理装置1Aは、ステップSA12で、サーバ2に蓄積されたキャラクタ情報を受信するイベントが発生するまで待機する。そして、情報処理装置1Aにおいて当該イベントが発生すると、情報処理装置1Aは、サーバ2に対して、当該情報処理装置1Aのキャラクタ情報の送信を要求する。当該要求は、たとえば、情報処理装置1Aの端末IDと、前回サーバ2からキャラクタ情報を取得した時刻(前回取得時刻)とを、送信することを含む。これに応じて、サーバ2は、情報処理装置1Aのキャラクタ情報(端末IDの値が、情報処理装置1Aを表す値「TA0123」のキャラクタ情報)を、当該情報処理装置1Aに送信する。
【0101】
サーバ2は、情報処理装置1Bから送信されたキャラクタ情報(
図11)と、情報処理装置1Cから送信されたキャラクタ情報(
図13)とを蓄積している(ステップS10,S12)。サーバ2は、情報処理装置1Aからの要求に応じて、上記前回取得時刻以降に当該サーバ2に蓄積されたキャラクタ情報のうち、情報処理装置1Aのキャラクタ情報のすべてを、情報処理装置1Aへ送信する。つまり、情報処理装置1Bから送信されたキャラクタ情報と、情報処理装置1Cから送信されたキャラクタ情報とを、情報処理装置1Aへ送信する。
【0102】
そして、ステップA14で、情報処理装置1Aは、サーバ2から受信したキャラクタ情報を用いて表示処理を実行する。ステップA14の処理内容は、
図19〜
図25を参照して後述する。ステップA16へ処理を進める。ステップA16では、情報処理装置1Aは、キャラクタの履歴を表示させるためのユーザ操作がなされるまで待機する。当該ユーザ操作がなされると、情報処理装置1Aは、ステップA18へ制御を進める。ステップA18では、情報処理装置1Aは、キャラクタの履歴を表示させる。
図14は、ステップA18において表示される履歴の画面の一例を示す。情報処理装置1Aは、サーバ2から2以上のキャラクタ情報を受信した場合、その中の移動回数が最も多いキャラクタ情報を利用して、
図14の画面を作成する。より具体的には、
図11と
図13を比較すると、
図13に示されたキャラクタ情報の方が移動回数が多い。このため、情報処理装置1Aは、
図13に示されたキャラクタ情報を利用して、
図14の画面を生成する。
【0103】
図14の画面は、
図16の画面IMG14と同様の項目を含む。なお、
図14と
図16を参照して、
図14の画面において、経験値の値が「20」増加しているのは、経験パラメータの値が、情報処理装置1Bにおいて「12」増加し、情報処理装置1Cにおいて「8」増加したことに基づく。
図14の画面において、渡り歩いた島の数が「1」増加しているのは、キャラクタ情報が、情報処理装置1Bに送信された後さらに情報処理装置1Cに送信されたからである。
図14の画面では、旅をした距離は、
図16の画面IMG14と比較して、22km増えている。この距離は、たとえば、情報処理装置1Bの位置情報で特定される位置から情報処理装置1Cの位置情報で特定される位置までの距離である。
【0104】
さらに、
図14の画面では、渡り歩いた島として、「島(1)」と「島(2)」が挙げられている。また、
図14の画面では、各島の地域(位置情報)も合わせて示されている。すなわち、キャラクタの履歴によりキャラクタ情報がどこに移動したかを識別することが可能となりデータ通信の興趣性を高めることができる。
【0105】
以上、
図15〜
図18を参照して説明された処理では、情報処理装置1は、他の情報処理装置1からキャラクタ情報を受信すると、キャラクタ情報中の移動回数を更新し、また、キャラクタ情報に付加情報を追加した。なお、情報処理装置1では、特定の情報処理装置1からの情報の受信を拒否するための設定が可能である場合がある。この場合、情報処理装置1は、当該特定の情報処理装置1からキャラクタ情報を受信しても、上記移動回数の更新およびキャラクタ情報の付加を実行しない。
【0106】
[表示処理(ステップA14)]
図19は、ステップA14のサブルーチンのフローチャートである。
図19を参照して、情報処理装置1Aは、ステップA1402で、表示対象のキャラクタ情報を選択して、ステップA1404へ制御を進める。より具体的には、情報処理装置1Aは、サーバ2から2以上のキャラクタ情報を受信した場合に、所与の条件に従って、2以上のキャラクタ情報から表示対象とするキャラクタ情報を選択する。ここでの条件とは、たとえば、2以上のキャラクタ情報のうち最新のものであることが挙げられる。
【0107】
ステップA1404では、情報処理装置1Aは、キャラクタ情報の表示モードを決定する。本実施の形態では、表示モードとして、「帰国」と「手紙」の2種類の表示態様が準備されている。「帰国」モードに決定されると、制御はステップA1406へ進められる。「手紙」モードに決定されると、制御はステップA1412へ進められる。ステップA1404では、情報処理装置1Aは、たとえば、
図19に示される処理が実行されるたびに「帰国」と「手紙」のそれぞれが予め設定された割合で実行されるように、2つの演出態様のうち1の演出態様を選択する。たとえば、「帰国」の割合が1/3と設定され、「手紙」の割合が「2/3」と設定されている場合には、
図19の処理が15回されると、「帰国」の演出が5回程度選択され、「手紙」の演出が10回程度選択される。
【0108】
なお、情報処理装置1Aでは、それまでに受信したキャラクタ情報の移動回数の最大値が格納されている場合がある。このような場合、ステップA1402において選択されたキャラクタ情報の移動回数の値が格納されている最大値よりも小さいときには、ステップA1402において選択されたキャラクタ情報は、最新の転送先で更新されたキャラクタ情報ではない。したがって、このようなときには、情報処理装置1Aは、ステップA1404で、表示モードとして必ず「手紙」を選択することが好ましい。ステップA1406では、情報処理装置1Aは、キャラクタオブジェクト(キャラクタ50)を生成して、ステップA1408へ制御を進める。キャラクタ50は、キャラクタコード「CR0101」に対応するオブジェクトである。
【0109】
キャラクタオブジェクトは、主にキャラクタコードの値に基づいて生成される。なお、キャラクタオブジェクトは、移動回数に応じて変更される場合もあり得る。たとえば、移動回数に応じて、キャラクタが着用する衣服の色が変更される。これにより、すれ違い通信(データ通信)の興趣性を高めることができる。
【0110】
本実施の形態では、各情報処理装置1においてキャラクタ情報に追加される付加情報(島(1),島(2)…)は、どの情報処理装置1がキャラクタ情報を受信してきたかという経過履歴を示す履歴情報を構成する。また、上記移動回数は、付加情報(島(1),島(2)…)と同様に、履歴情報を構成する。そして、キャラクタオブジェクトは、移動回数の代わりに、履歴情報の数(たとえば、キャラクタ情報中の「おみやげデータ」の数)に応じて、キャラクタが着用する衣服の色を変更されても良い。
【0111】
ステップA1408では、情報処理装置1Aは、おみやげオブジェクトを生成して、ステップA1410へ制御を進める。おみやげオブジェクトとは、たとえば、キャラクタの旅先の特産品である。おみやげオブジェクトの種類は、キャラクタ情報のおみやげデータ(島(1)の「P」,島(2)の「N」)に基づいて決定される。ステップA1402において表示対象として選択されたキャラクタ情報に複数のおみやげデータが含まれる場合、その中の一部のおみやげデータに対応するおみやげオブジェクトが生成されても良いし、すべてのおみやげデータに対応するおみやげオブジェクトが生成されても良い。
【0112】
ステップA1410では、情報処理装置1Aは、ステップA1406で生成したキャラクタオブジェクトと、ステップA1408で生成したおみやげオブジェクトとを利用して生成された画面を表示する。ステップA1410における表示内容を
図20〜
図22を参照して説明する。
【0113】
ステップA1410では、まず、
図20に示された画面が表示される。
図20に示された画面は、旅人(キャラクタ50)が、帰国(帰宅)したことをプレーヤ(情報処理装置1Aのユーザ)に告げている場面を示す。この場面は、情報処理装置1Aで生成されたキャラクタ情報に対応するキャラクタが、当該情報処理装置1Aに戻ってきたことに相当する。次に、
図21に示された画面が表示される。
図21に示された画面は、キャラクタ50が、上記ユーザにおみやげ物を渡す場面を示す。次に、
図22に示された画面が表示される。
図22に示された画面は、おみやげ物51を紹介する画面である。
図22のおみやげ物51は、ステップA1408において生成されたおみやげオブジェクトである。
図22では、おみやげ物の一例として、「パパイヤ」が示されている。
【0114】
図19に戻って、ステップA1412では、情報処理装置1Aは、キャラクタ情報において、少なくとも1つの演出用フラグに値「1」がセットされているか否かを判定する。少なくとも1の演出用フラグに値「1」されている場合には、ステップA1414へ制御が進められる。すべての演出用フラグに値がセットされていない(すべて、NULL)場合には、ステップA1416へ制御が進められる。
【0115】
ステップ1414では、ステップA1402で表示対象として選択されたキャラクタ情報(
図11または
図13)から演出用データが抽出されて、ステップ1416へ制御が進められる。
【0116】
ステップA1416では、情報処理装置1Aは、手紙オブジェクトを生成して、ステップA1418へ制御を進める。
【0117】
ステップA1418では、情報処理装置1Aは、ステップA1416で生成された手紙オブジェクトを表示させる。
【0118】
図23〜
図25を参照して、ステップA1418において表示される手紙オブジェクトの一例を説明する。手紙オブジェクトは、2つのパートを含む。
図23は、1つ目のパートを示す。
図23の画面は、キャラクタ50が海岸を歩きながら回想している場面とともに、「これまでに、2つの島を渡り歩きました」というメッセージを示す。メッセージに含まれる島の数は、たとえば、キャラクタ情報の移動回数である。
【0119】
図24は、2つ目のパートの一例であり、封筒から写真FT01が取り出される場面を示す。写真FT01には、キャラクタ50とキャラクタ55とを含む。キャラクタ50は、情報処理装置1Aで生成された、キャラクタコード「CR0101」に対応する。キャラクタ55は、ステップ1414において抽出された演出用データ(キャラクタコード)に対応する。この例で表示される手紙は、情報処理装置1Aで生成されたキャラクタ50が、他の情報処理装置1(情報処理装置1B)において生成されたキャラクタ55とともに写る、記念写真を含む。
【0120】
図25は、2つ目のパートの他の例であり、封筒から写真FT02が取り出される場面を示す。写真FT02は、キャラクタ50のみを含む。
【0121】
2つ目のパートで表示される写真が他の情報処理装置1において生成されたキャラクタを含むか否かは、当該他の情報処理装置1におけるキャラクタ情報の更新態様に基づいて決定される。より具体的には、
図17のステップB24,B26を参照して説明されたように、キャラクタ情報の転送先の情報処理装置1において、記念写真の送信に同意する操作がなされたか否かによって、決定される。当該操作がなされれば、キャラクタ情報は、演出用フラグに値「1」を設定され、かつ、演出用データを追加されるように、更新される。キャラクタ情報の転送先の情報処理装置1において、記念写真の送信に同意しない操作がなされると、演出用フラグと演出用データの値が「NULL」のまま、キャラクタ情報は、サーバ2へ送信され、さらに、情報処理装置1Aに送信される。
【0122】
本実施の形態では、キャラクタ情報は、付加情報ごとに、演出用フラグを含む。なお、キャラクタ情報において、演出用フラグは、すべての付加情報に共通して1つのみが含まれても良い。この場合、キャラクタ情報の転送先の情報処理装置1は、記念写真の送信に同意する/同意しないという操作の内容に応じて、当該共通する演出用フラグの値を1にセットしたりNULLにしたりする。ステップA1412では、当該共通する演出用フラグの値が、1であればステップA1414へ、NULLであればステップA1416へ、制御が進められる。
【0123】
以上説明した本実施の形態では、
図20〜
図22を参照して説明された「帰国」のための処理および
図23〜
図25を参照して説明された「手紙」のための処理のそれぞれは、オブジェクトを利用した表示処理の一例となり得る。「帰国」の処理では、「P」等の位置情報が、おみやげ物の内容を特定する表示識別情報として機能する。「手紙」の処理では、キャラクタ情報の演出用データが、情報処理装置1Aで生成されたキャラクタ50とともに写真に写るキャラクタの内容を特定する表示識別情報として機能する。
【0124】
本実施の形態では、情報処理装置は、装置間で受信したキャラクタ情報に変更を加えた後、すれ違い通信によって他の情報処理装置へ送信できる。そして、他の情報処理装置で変更されたキャラクタ情報をサーバを介して受信して表示させることが可能である。つまり、情報処理装置において、他の情報処理装置で変更されたパラメータ情報に基づく表示処理が実行されるためデータ通信の興趣性を高めることができる。
【0125】
なお、本実施の形態では、キャラクタ情報は、転送先の情報処理装置1において、経験パラメータを変更されたが、さらに、キャラクタコードを変更される場合もあり得る。たとえば、転送先(旅行先)の情報処理装置1において、ゲームアプリケーションが、キャラクタの髪の毛の色を変更する処理を実行した場合には、キャラクタ情報は、キャラクタコードの、キャラクタの髪の毛の色に対応する部分の値が変更されるように更新される。
【0126】
[第1の変形例]
情報端末制御システムでは、複数の情報処理装置1の間で、通信用情報の一例であるキャラクタ情報が送受信される。
図7等に示されたキャラクタ情報は、付加情報D20A,D20Bを含む。付加情報D20A,D20Bは、送信先の情報処理装置1を特定する情報(島名)を含む。情報処理装置1の内部記憶装置14には、島名と位置とを関連付ける情報が格納されている。プロセッサ13は、当該情報を利用して、各情報処理装置1に関連する位置を特定する。特定した位置を利用して、上記した「旅をした距離」を算出する。一方、第1の変形例のキャラクタ情報は、情報処理装置1の各々に関連する位置を特定する情報を含む。以下、
図26を参照して、第1の変形例における「旅をした距離」の算出について説明する。
【0127】
(情報処理装置に関連する位置情報)
図26は、第1の変形例において利用されるキャラクタ情報の構成を説明するための図である。
図26に示されるように、キャラクタ情報は、基本情報D11と、付加情報D21A,D21B…とを含む。
【0128】
基本情報D11は、
図7等における基本情報D10と比較して、「出身島位置情報」をさらに含む。「出身島位置情報」は、当該キャラクタ情報を生成した情報処理装置1に関連する位置情報の一例である。各情報処理装置1の内部記憶装置14には、当該情報処理装置1に関連する位置情報が登録され得る。ユーザは、情報処理装置1に、当該ユーザの思い出の場所などの任意の場所を、当該情報処理装置1に関連する位置情報として登録し得る。
【0129】
「出身島位置情報」は、たとえば、キャラクタ情報が生成される際に、内部記憶装置14に格納されている「情報処理装置に関連する位置情報」が読み出されて、当該キャラクタ情報に組み込まれる。なお、「情報処理装置に関連する位置情報」が「出身島位置情報」としてキャラクタ情報に組み込まれるタイミングは、当該キャラクタ情報が生成された情報処理装置1から他の情報処理装置1へと送信される前であれば、キャラクタ情報の生成時点に限定されない。
【0130】
付加情報D21A,D21Bは、
図7等における付加情報D20A,D20Bと比較して、「島位置情報」をさらに含む。付加情報D21A,D21Bは、付加情報D20A,D20Bと同様に、キャラクタ情報が転送先の情報処理装置1において更新されることにより、当該キャラクタ情報に順次追加される。「島位置情報」は、キャラクタ情報を更新する情報処理装置1において格納されている、当該情報処理装置1に関連する位置情報である。
【0131】
以上の説明から理解されるように、
図26において、「(N00,E00)」は、「島(0)」で特定される情報処理装置1に関連する位置情報(出身島位置情報)の一例である。また、「(N01,E01)」,「(N02,E02)」は、それぞれ、「島(1)」,「島(2)」で特定される情報処理装置1に関連する位置情報(島位置情報)の一例である。「N00」「N01」「N02」は、北緯の値の例である。「E00」「E01」「E02」は、東経の値の例である。
【0132】
第1の変形例では、プロセッサ13は、「出身島位置情報」または「島位置情報」を利用して、上記した「旅をした距離」を算出する。より具体的には、
図26に示されたキャラクタ情報に基づいて「旅をした距離」が算出される場合、プロセッサ13は、島(0)の出身島位置情報と島(1)の島位置情報との間の距離を算出し、島(1)の島位置情報と島(2)の島位置情報との間の距離を算出する。そして、プロセッサ13は、算出されたこれらの2つの距離を足し合わせることにより、「旅をした距離」を算出する。
【0133】
(情報処理装置に関連する位置情報の入力)
「情報処理装置に関連する位置情報」の入力の態様について、説明する。ユーザは、各情報処理装置1に対して、たとえば入力装置11を操作することにより、直接的に、「情報処理装置1に関連する位置情報」を入力することができる。
【0134】
また、ユーザは、「情報処理装置1に関連する位置情報」として、住所または場所(施設名等)を入力することができる。この場合、プロセッサ13は、所与のテーブル等を検索することにより、当該住所または場所(施設名等)に対応する位置情報を特定する。当該テーブルは、内部記憶装置14に格納されていても良いし、サーバ2等の、情報処理装置1の外の、記憶装置に格納されていても良い。上記テーブルにおける住所または場所(施設名等)と位置との関連付けの一例として、住所または場所(施設名等)としての「都道府県名」と、位置としての各都道府県の県庁所在地の位置との関連付けが挙げられる。
【0135】
(キャラクタ情報)
図26等に示されたキャラクタ情報は、付加情報ごとの島位置情報を含む。なお、上記したように「旅をした距離」を算出した後は、最新の付加情報(
図26のキャラクタ情報では、付加情報D21B)についての島位置情報以外の島位置情報は消去されてもよい。つまり、プロセッサ13は、キャラクタ情報において、付加情報ごとの島位置情報のうち、最新の付加情報についての島位置情報以外の島位置情報の代わりに、「旅をした距離」を格納させる場合がある。これにより、送受信されるキャラクタ情報の容量を抑えることができ、これによって、情報処理装置1に対する送受信処理による負荷を抑えることができる。
【0136】
このようなキャラクタ情報が他の情報処理装置1へと送信された場合、当該送信先の情報処理装置1のプロセッサ13は、受信したキャラクタ情報に含まれる「最新の付加情報の島位置情報」と当該送信先の情報処理装置1の島位置情報とに基づいて、距離を算出する。そして、当該プロセッサ13は、算出された当該距離と、受信したキャラクタ情報に含まれる「旅をした距離」とを足し合わせることにより、新たな「旅をした距離」算出する。
【0137】
[第2の変形例]
情報処理装置1の第2の変形例は、位置情報を取得するための手段を備えている。
図27は、情報処理装置1の第2の変形例のハードウェアブロック図である。
【0138】
図27から理解されるように、情報処理装置1の第2の変形例は、GPS(Global Positioning System)受信装置17を備える。GPS受信装置17は、GPS衛星からの電波を受信することにより、情報処理装置1の位置を特定し、特定した当該位置をプロセッサ13へ出力する。プロセッサ13は、GPS衛星から受信した電波に基づいて特定された位置を、「情報処理装置1に関連する位置情報」として、内部記憶装置14に格納する。これにより、情報処理装置1の第2の変形例は、
図26に示されたキャラクタ情報における「出身島位置情報」または「島位置情報」として、GPS衛星から取得された位置を利用することができる。
【0139】
なお、GPS衛星は、位置情報を取得するための手段の一例にすぎない。たとえば、アクセスポイント7やサーバからいわゆるジオタグを取得することにより、位置情報を取得することもあり得る。
【0140】
[第3の変形例]
情報処理装置1の第3の変形例では、「情報処理装置1に関連した位置情報」として、複数の情報処理装置1の間で、キャラクタ情報が送受信された位置が利用される。以下、第3の変形例の構成について、説明する。
【0141】
図28は、情報処理装置1の第3の変形例において取り扱われるキャラクタ情報の一例を示す図である。
図28から理解されるように、第3の変形例では、キャラクタ情報は、付加情報D21A,D21Bの代わりに、付加情報D22A,D22Bを含む。付加情報D22A,D22Bの各々は、「島位置情報」の代わりに、「すれちがい位置情報」を含む。
【0142】
情報処理装置1の第3の変形例は、その第2の変形例と同様に、
図27に示されたハードウェアブロック構成を備え得る。情報処理装置1の第3の変形例では、プロセッサ13は、ステップB12(
図15参照)においてキャラクタ情報を更新するときに、GPS受信装置17を利用して、情報処理装置1の位置を取得して、キャラクタ情報の「島位置情報」に組み込む。
【0143】
図28において、付加情報D22Aの「島(1)」は、情報処理装置1Bに対応する。そして、付加情報D22Aのすれちがい位置情報は、情報処理装置1Aからキャラクタ情報を受信したときの情報処理装置1Bの位置である。
【0144】
付加情報D22Bの「島(2)」は、情報処理装置1Cに対応する。そして、付加情報D22Bのすれちがい位置情報は、情報処理装置1Bからキャラクタ情報を受信したときの情報処理装置1Cの位置である。
【0145】
図28に示されたキャラクタ情報に基づいた「旅をした距離」の算出では、プロセッサ13は、島(0)の出身島位置情報と島(1)のすれちがい位置情報との間の距離を算出し、島(1)のすれちがい位置情報と島(2)のすれちがい位置情報との間の距離を算出する。そして、プロセッサ13は、算出されたこれらの2つの距離を足し合わせることにより、「旅をした距離」を算出する。これにより、「旅をした距離」は、キャラクタ情報の実際の移動経路に近い経路の距離として、算出され得る。
【0146】
つまり、算出される距離は、実際にキャラクタ情報が送受信された各地点を中継地点とする経路の距離として、算出される。当該経路では、キャラクタ情報が生成された情報処理装置1において登録された位置(出身島位置情報)が始点であり、実際にキャラクタ情報が送受信された各地点が中継地点である。第3の変形例では、付加情報D22A,D22B中のすれちがい位置情報が、当該付加情報D22A,D22Bのそれぞれに対応する情報処理装置1についての、「情報処理装置1に関連する位置情報」である。
【0147】
なお、第1の変形例〜第3の変形例は、組み合わせられ得る。つまり、キャラクタ情報の基本情報または付加情報の中の位置情報(出身島位置情報、島位置情報、すれちがい位置情報)のうち、一部は、情報処理装置1に予め登録されていた位置であり、他の一部は、キャラクタ情報が受信されたときの位置であっても良い。
【0148】
[第4の変形例]
第4の変形例は、キャラクタ情報において、一部の情報処理装置1についての位置情報が含まれない場合の、「旅をした距離」の算出に関する。
【0149】
図29は、第4の変形例において送受信されるキャラクタ情報の一例を示す図である。
図29の付加情報D23Bは、すれちがい位置情報の値を有しない。たとえば、第3の変形例において、情報処理装置1CのGPS受信装置17がGPS衛星からの電波を受信できなかった場合には、キャラクタ情報は
図29に示されるような状態になり得る。
【0150】
一部の位置情報が欠落している場合の「旅をした距離」の算出では、存在すべき位置情報を利用して得られたはずの距離の代わりに、所与の距離が利用される。
図29に示されたキャラクタ情報に基づいた「旅をした距離」の算出では、島(2)のすれちがい位置情報が欠落しているため、島(1)のすれちがい位置情報と島(2)のすれちがい位置情報との間の距離が算出され得ない。このため、第4の変形例では、プロセッサ13は、島(0)の出身島位置情報と島(1)のすれちがい位置情報との間の距離を算出し、この距離に、所与の距離(たとえば、5km)を足し合わせることにより、「旅をした距離」を算出する。
【0151】
第4の変形例に説明された、位置情報が欠落しているときの、所与の距離を利用した「旅をした距離」の算出は、位置情報がGPS受信装置によって取得される場合に限られない。ユーザが、情報処理装置1に位置情報を登録していない場合等、情報処理装置1に予め格納された位置情報が利用される場合にも適用され得る。
【0152】
なお、第4の変形例における「旅をした距離」の算出方法は、キャラクタ情報の送信側の情報処理装置1の位置情報と受信側の情報処理装置1の位置情報が一致した場合にも、適用することができる。上記した例において、島(1)のすれちがい位置情報と島(2)のすれちがい位置情報が同一であった場合にも、プロセッサ13は、島(0)の出身島位置情報と島(1)のすれちがい位置情報との間の距離を算出し、この距離に、所与の距離(たとえば、5km)を足し合わせることにより、「旅をした距離」を算出する。
【0153】
[第5の変形例]
情報処理装置1では、キャラクタ情報が利用されることにより、「旅をした距離」として、転送経路ごとに算出された距離の合計が表示される(
図14、または、
図16のIMG14参照)。第5の変形例では、当該合計とともに、転送経路ごとに算出された距離も表示される。
図30は、第5の変形例において表示される、キャラクタ情報に基づく画面の一例を示す図である。
【0154】
図30の画面は、「渡り歩いた島」として、「島(0)」「島(1)」および「島(2)」の3つの島の名称の表示を含む。この3つの島の名称の表示は、キャラクタ情報が、「島(0)」から「島(1)」へ送信され、さらに、「島(1)」から「島(2)」へ送信されたことを意味する。
【0155】
図30の画面は、また、「旅をした距離」(118km)の表示を含む。この距離は、2つの送信経路の各々について算出された距離の合計である。2つの送信経路とは、「島(0)」から「島(1)」への送信経路と、「島(1)」から「島(2)」への送信経路である。
【0156】
図30の画面は、さらに、「島(0)」と「島(1)」の間の距離を示す表示(「42km」)と、「島(1)」と「島(2)」の間の距離を示す表示(「76km」)とを含む。これらの各々が、上記送信経路ごとに算出された距離に相当する。
【0157】
「島(0)」と「島(1)」の間の距離は、「島(0)」の出身島位置情報と「島(1)」の島位置情報(または、すれちがい位置情報)の間の距離である。「島(1)」と「島(2)」の間の距離は、「島(1)」の島位置情報(または、すれちがい位置情報)と「島(2)」の島位置情報(または、すれちがい位置情報)の間の距離である。
図30に示されたような表示によれば、ユーザは、各情報処理装置1に関連する位置情報によって特定される位置の関係を視認できる。これにより、データ通信の興趣性を高めることができる。
【0158】
各情報処理装置1に関連する位置情報は、ユーザが任意に設定できる場合がある。このため、設定される位置情報は、各情報処理装置1が現実世界において深く関連する場所(たとえば、ユーザの自宅)とは大きく異なる場合があり得る。このような場合、特に、転送経路ごとに算出された距離として表示される距離の値が意外性を有し、より大きく興趣性を高めることができる。
【0159】
第5の変形例において転送経路ごとの距離として表示される距離は、上記した第4の変形例に従って取得される場合もあり得る。つまり、「島(0)」の出身島位置情報と「島(1)」の島位置情報(または、すれちがい位置情報)の間の距離を表示する場合、少なくともいずれか一方の情報が取得できないときには、プロセッサ13は、当該距離として所与の距離を表示する場合がある。
【0160】
また、「島(0)」の出身島位置情報と「島(1)」の島位置情報(または、すれちがい位置情報)が同一である場合にも、プロセッサ13は、「島(0)」の出身島位置情報と「島(1)」の島位置情報(または、すれちがい位置情報)の間の距離として所与の距離を表示する場合がある。
【0161】
今回開示された実施の形態およびその変形例はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。実施の形態およびその変形例において開示された技術は、可能な限り単独でも組み合わせても実施され得ることが意図される。