(57)【特許請求の範囲】
【請求項１】
携帯端末装置のコンピュータを、
近距離無線通信によって、他の携帯端末装置から第１データを受信する受信手段、
前記受信手段によって受信された第１データを用いて、所定の処理を実行する処理手段、および
自機の移動量に応じた第２データを取得する第２データ取得手段として機能させ、
前記処理手段は、前記受信手段により前記第１データを受信しなかった場合であっても、当該第１データの代わりに、前記第２データ取得手段により取得された第２データを用いて、前記所定の処理を実行する、情報処理プログラム。
【請求項２】
前記第２データ取得手段は、ユーザの歩数を検知する検知手段により得られる歩数データを前記第２データとして取得する、請求項１に記載の情報処理プログラム。
【請求項３】
前記コンピュータを、
前記第２データ取得手段により取得された第２データを、前記所定の処理に用いるか否かをユーザに選択させる第１選択手段としてさらに機能させるための、請求項１または２に記載の情報処理プログラム。
【請求項４】
前記処理手段は、前記第２データに基づいて、前記第１データと同じ種類の第３データを生成し、生成した第３データを前記所定の処理に用いる、請求項１ないし３のいずれかに記載の情報処理プログラム。
【請求項５】
前記処理手段は、前記第１データまたは前記第２データを用いて第４データを生成し、生成した第４データを前記所定の処理に用いる、請求項１ないし３のいずれかに記載の情報処理プログラム。
【請求項６】
前記コンピュータを、
ユーザの操作に応じて前記第１データを生成して前記携帯端末装置の記憶部に記憶させる第１データ生成手段、および
近距離無線通信によって、前記記憶部に記憶されている第１データを他の携帯端末装置に送信する送信手段としてさらに機能させるための、請求項１ないし５のいずれかに記載の情報処理プログラム。
【請求項７】
前記コンピュータを、
前記記憶部に記憶された第１データと前記受信手段により他の携帯端末装置から受信した第１データのいずれかを、ユーザに選択させる第２選択手段としてさらに機能させ、
前記送信手段は、前記第２選択手段によって選択された第１データを送信する、請求項６に記載の情報処理プログラム。
【請求項８】
前記受信手段は、受信した前記第１データを前記携帯端末装置の記憶部に記憶させ、
前記処理手段は、前記記憶部に前記第１データが記憶されている場合には前記第１データを用いて前記所定の処理を実行し、前記記憶部に前記第１データが記憶されていないときには前記第２データを用いて前記所定の処理を実行する、請求項１ないし７のいずれかに記載の情報処理プログラム。
【請求項９】
前記受信手段は、受信した前記第１データを前記携帯端末装置の記憶部に記憶させ、
前記処理手段は、前記記憶部に前記第１データが記憶されている場合には前記第１データを用いて前記所定の処理を実行し、前記記憶部に記憶されている前記第１データを前記所定の処理に用いた後に、前記第２データを用いて前記所定の処理を実行する、請求項１ないし７のいずれかに記載の情報処理プログラム。
【請求項１０】
複数の携帯端末装置を含む通信システムであって、
前記携帯端末装置はそれぞれ、
近距離無線通信によって、他の携帯端末装置に対して第１データを自動的に送信する送信手段、
前記近距離無線通信によって、他の携帯端末装置の前記送信手段により送信された第１データを自動的に受信する受信手段、
前記受信手段によって受信された第１データを用いて、所定の処理を実行する処理手段、および
自機の移動量に応じた第２データを取得する第２データ取得手段とを備え、
前記処理手段は、前記受信手段により前記第１データを受信しなかった場合であっても、当該第１データの代わりに、前記第２データ取得手段により取得された第２データを用いて、前記所定の処理を実行する、通信システム。
【請求項１１】
近距離無線通信によって、他の携帯端末装置から第１データを受信する受信手段、
前記受信手段によって受信された第１データを用いて、所定の処理を実行する処理手段、および
自機の移動量に応じた第２データを取得する第２データ取得手段とを備え、
前記処理手段は、前記受信手段により前記第１データを受信しなかった場合であっても、当該第１データの代わりに、前記第２データ取得手段により取得された第２データを用いて、前記所定の処理を実行する、携帯端末装置。
【請求項１２】
近距離無線通信によって、他の携帯端末装置から第１データを受信する受信ステップ、
前記受信ステップで受信された第１データを用いて、所定の処理を実行する処理ステップ、および
自機の移動量に応じた第２データを取得する第２データ取得ステップを含み、
前記処理ステップでは、前記受信ステップにおいて前記第１データを受信しなかった場合であっても、当該第１データの代わりに、前記第２データ取得ステップにおいて取得された第２データを用いて、前記所定の処理を実行する、情報処理方法。
【請求項１３】
携帯端末装置のコンピュータを、
近距離無線通信によって、他の通信機器から第１データを受信する受信手段、
前記受信手段によって受信された第１データを用いて、所定の処理を実行する処理手段、および
自機の移動量に応じた第２データを取得する第２データ取得手段として機能させ、
前記処理手段は、前記受信手段により前記第１データを受信しなかった場合であっても、当該第１データの代わりに、前記第２データ取得手段により取得された第２データを用いて、前記所定の処理を実行する、情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理プログラム、携帯端末装置、システム、情報処理方法及び通信システムに関し、より特定的には、近距離無線通信によって他の情報処理装置から情報を受信し、この受信した情報で所定の処理を行う情報処理プログラム、携帯端末装置、システム、情報処理方法及び通信システムに関する。
【背景技術】
【０００２】
従来、同種の携帯端末装置の間で近距離無線通信を行い、情報を送受信するシステムは広く知られている。例えば、特許文献１では、同種の携帯ゲーム機同士が近距離無線通信によって情報を送受信し、各携帯ゲーム機は近距離無線通信によって取得した情報を用いてビデオゲーム等のアプリケーションを実行する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−１３６７３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述したような従来のシステムでは、近距離無線通信可能な範囲内に通信相手となる他の通信機器（携帯端末装置）が存在しないときには、携帯端末装置は近距離無線通信によって他の携帯端末装置から情報を取得することができない。例えば、携帯端末装置の普及が進んでいない状況や、過疎地等のような人口密度の低い地域等では、近距離無線通信範囲内に自機の通信相手となる他の携帯端末装置があまり存在しない可能性が高い。
【０００５】
この場合には、情報処理装置は、他の携帯端末装置から取得した情報を用いてアプリケーションを実行することができず、このため、多彩な処理を実行することができない。
【０００６】
それゆえ、本発明の目的は、近距離無線通信範囲内に通信相手となる他の通信機器が存在しないときであっても、アプリケーションで多彩な処理を実行することができる情報処理プログラム、携帯端末装置、システム、情報処理方法及び通信システムを提供することである。
【課題を解決するための手段】
【０００７】
（１）本発明の一例にかかる通信システムは、上記目的を達成するために、複数の携帯端末装置を含む通信システムであって、携帯端末装置はそれぞれ、送信手段、受信手段、第２データ取得手段、および処理手段を備える。ここで、送信手段は、近距離無線通信によって、他の携帯端末装置に対して第１データを自動的に送信する。受信手段は、近距離無線通信によって、他の携帯端末装置の送信手段により送信された第１データを自動的に受信する。第２データ取得手段は、自機の移動量に応じた第２データを取得する。処理手段は、受信手段により受信された第１データを用いて、又は当該第１データに代えて第２データ取得手段により取得された第２データを用いて、アプリケーションにおける所定の処理を実行する。
上記構成によれば、後述の（２）と同様の作用効果を奏する。なお、本発明では、携帯端末装置同士で、第１データを送受信し合うため、この様な携帯端末装置が多く存在するエリアでは、携帯端末装置が他の携帯端末装置から第１データを多く取得することができる。しかしながら、携帯端末装置があまり普及していない等の理由によって、携帯端末装置が多く存在しないエリアでは、携帯端末装置が第１データを取得することが大変困難になる。この様な携帯端末装置同士で第１データを送受信し合う構成において、第１データに代えて第２データを用いてアプリケーションにおける所定の処理を実行する構成を採用することで、携帯端末装置が多く存在しないエリアでも、携帯端末装置は、アプリケーションで多彩な処理を実行することができ、より効果的に後述の（２）の作用効果を奏する。
【０００８】
（２）本発明の一例にかかるプログラムは、上記目的を達成するために、携帯端末装置のコンピュータを、通信手段、第２データ取得手段、及び処理手段、として機能させる。ここで、通信手段は、近距離無線通信によって、通信機器から第１データを自動的に受信する。また、第２データ取得手段は、自機の移動量に応じた第２データを取得する。そして、処理手段は、第１データを用いて、又は第１データに代えて第２データを用いて、アプリケーションにおける所定の処理を実行する。
【０００９】
上記構成によれば、通信手段によって取得された第１データを用いて、処理手段によって所定の処理が実行される。また、第２データ取得手段によって取得された第２データを第１データに代えて用いて、処理手段によってアプリケーションの所定の処理が実行される。このため、通信手段によって第１データを取得することができないときでも、自機の移動量に応じた第２のデータを用いてアプリケーションの所定の処理を実行することができる。このため、近距離無線通信範囲内に通信相手となる他の情報処理装置が存在しないときでも、第１データの代わりになる第２データを用いてアプリケーションの所定の処理を実行することができるため、アプリケーションで多彩な処理を実行することが可能になる。
【００１０】
また、携帯端末装置の移動量に応じた第２データを用いてアプリケーションの所定の処理が実行される。ここで、通信手段は近距離無線通信によって第１データを取得するため、第１データを多く取得するためには、第１データの配信元の通信機器の近距離無線通信範囲内に位置する機会を増やすため、携帯端末装置はユーザに携帯されて移動されることが必要となる。上記構成によれば、第２データは、携帯端末装置の移動量に応じたデータであるため、携帯端末装置がユーザに携帯されて移動した移動量に応じて所定の処理を実行することができ、第１データを用いての所定の処理が実行される場合に似た状況を作り出すことができる。
【００１１】
なお、第１データには、例えば、アプリケーションの所定の処理で使用される画像データ、この画像データを特定するためのデータ、音声データ及びプログラム等がある。第２データは、携帯端末装置の移動量に応じて可変になるデータであり、例えば、携帯端末装置の移動距離を示すデータ等がある。この「移動距離を示すデータ」には、例えば、ユーザの歩数を示すデータがある。また、第２データ取得手段がＧＰＳ機能等を有し、「移動距離を示すデータ」はこのＧＰＳ機能によって取得した携帯端末装置の移動距離を示してもよい。また、第２データ取得手段は、通信手段を用いて、据え置き型の通信機器からこの機器の位置情報を取得し、この位置情報を用いて「移動距離を示すデータ」が生成されてもよい。また、アプリケーションの所定の処理は、第１又は第２データを用いた処理であれば如何なる処理であってもよい。
【００１２】
（３）また、上記プログラムにおいて、通信手段は、受信した第１データを携帯端末装置の記憶部に記憶させる。そして、処理手段は、記憶部に第１データが記憶されているときには第１データを用いて所定の処理を実行し、記憶部に第１データが記憶されていないときには第２データを用いて所定の処理を実行する。この構成によって、通信手段によって、第１データを取得することができたときには、第２データに優先して第１データを用いてアプリケーションの所定の処理が実行される。このため、あくまで、第１データの取得に不足があったときの補完として、第２データを用いてアプリケーションの所定の処理が行われる。
【００１３】
（４）また、上記プログラムにおいて、通信手段は、受信した第１データを携帯端末装置の記憶部に記憶させる。また、処理手段は、記憶部に第１データが記憶されているときには、第１データを用いて所定の処理を実行し、記憶部に記憶されている第１データを所定の処理に用いた後に、第２データを用いて所定の処理を実行する。この構成によれば、受信した第１データを所定の処理に用いた後に、初めて第２データが所定の処理に用いられ、あくまで、第１データを用いての所定の処理の補完として、第２データを用いてアプリケーションの所定の処理が行われる。
【００１４】
（５）また、上記プログラムは、ユーザの歩数を検知する検知手段としてコンピュータを更に機能させる。そして、第２データ取得手段は、検知手段によって検知された歩数を示す歩数データを第２のデータとして取得する。この構成によれば、携帯端末装置はユーザに携帯されて移動されるため、この移動量を正確に反映する歩数データを第１データに代えて用いて、所定の処理を行うことができる。これによって、第１データを用いての所定の処理が実行される場合に更に似た状況を作り出すことができる。
【００１５】
（６）上記プログラムにおいて、コンピュータを、第２データ取得手段によって取得された第２データを携帯端末装置の記憶部に記憶させる手段、無効化手段、及び変換手段、として更に機能させる。そして、無効化手段は、記憶部に記憶されている第２データのうち、所定期間を超えて記憶されている第２データを削除又は無効にする。また、変換手段は、記憶部に記憶されている第２データを、所定期間を超えて蓄積可能なデータに変換する。そして、処理手段は、変換手段によって蓄積可能に変換された第２データを第１データに代えて用いて、所定の処理を実行する。この構成によれば、第２データが所定期間の経過とともに無効になる構成であっても、第２データが蓄積可能なデータに変換されて、所定期間が経過しても第２データを所定の処理で使用可能にすることができる。これによって、例えば、第２データの上記変換を、ユーザの指示に応じて行う等のように構成することで、ユーザに頻繁に携帯端末装置を操作させることが可能になる。
【００１６】
（７）上記プログラムにおいて、処理手段は、所定の期間に所定の回数に限って、第２データを用いて所定の処理を実行する。この構成によれば、所定の期間に所定の回数に限ってのみ（例えば、１日で所定回数に限ってのみ）、第２データを用いて所定の処理が行われる。この様に、第２データを用いての所定の処理の回数に制限を加えることにより、通信処理による第１データの取得をユーザに促すことが可能になる。
【００１７】
（８）上記プログラムにおいて、処理手段は、第２データに基づいて、第１データと同じ種類の第３データを生成し、この第３データを第１データに代えて所定の処理で使用する。この様に、第２データを使用して第１データと同じ種類のデータが生成され、この生成されたデータがアプリケーションで使用される。なお、第１データが画像データ（例えば実施形態におけるピース画像）であるときには第３データも画像データである。また、第１データが携帯端末装置の記憶する複数の画像データから１の画像データを特定するデータ（例えば実施形態におけるピース情報）であるときには、第３データも携帯端末装置の記憶する複数の画像データから１の画像データを特定するデータである。
【００１８】
（９）上記プログラムにおいて、処理手段は、第１データ又は第２データを用いて第４データを生成し、この第４データをアプリケーションで使用する。この構成によれば、第１データ（例えば、本実施形態のキャラクタ情報）を用いて第４データ（例えば、本実施形態のキャラクタ画像データ）が生成される。すなわち、この第４データはアプリケーションで一時的に用いるために生成されるデータである。そして、この第４データは、第２データを用いて、生成される。
【００１９】
（１０）上記プログラムにおいて、コンピュータを、第１データ生成手段、として更に機能させる。第１データ生成手段は、処理手段によってアプリケーションが最初に実行されたときに、第１データを生成して携帯端末装置の記憶部に記憶させる。そして、通信手段は、記憶部に記憶される第１データを通信機器である他の携帯端末装置に対して近距離無線通信によって送信するとともに、他の携帯端末装置から第１データを受信して記憶部に記憶させる。この構成によれば、アプリケーションが最初に実行されたときに第１データが生成される。これによって、アプリケーションが最初に実行され、記憶部に第１データを記憶していないときであっても、記憶部に他の携帯端末装置に送信すべき第１データを記憶させ、通信手段によって、他の携帯端末装置との間で第１データを送受信することが可能になる。
【００２０】
（１１）上記プログラムにおいて、コンピュータを、選択手段、として更に機能させる。選択手段は、第１データ生成手段により記憶した第１データと通信手段により他の携帯端末装置から受信した第１データのいずれかを携帯端末装置の入力部からの入力に応じて選択する。そして、通信手段は、選択手段によって選択された第１データを送信する。これによって、通信手段によって取得された第１データ及び第１データ生成手段によって生成された第１データを含む複数の第１データから、ユーザの所望の第１データを他の携帯端末装置に対して送信することが可能になる。
【００２１】
（１２）上記プログラムにおいて、アプリケーションは、２以上の所定数のピースデータから成る１のコレクションデータを生成するためのプログラムである。処理手段は、第３データ、及び／又は第１データをピースデータとして用いて１のコレクションデータを生成する処理を所定の処理として実行する。この構成によれば、携帯端末装置において、通信手段で受信した第１データをピースデータとして用いて１のコレクションデータの生成が可能であるとともに、携帯端末装置の移動量に応じた第２データから生成された第３データをピースデータとして用いて１のコレクションデータの生成が可能である。
【００２２】
（１３）上記プログラムにおいて、アプリケーションは、それぞれ異なる属性が設定された複数のコレクションデータを生成するためのプログラムである。また、第１データ及び第３データには、コレクションデータに設定されている属性のうち何れか１つの属性が設定される。そして、処理手段は、それぞれのコレクションデータの属性と同じ属性が設定された第１データ及び／又は第３データを用いて、それぞれのコレクションデータを生成する処理を所定の処理として実行する。これによって、携帯端末装置において、複数種類の属性のコレクションデータの生成が可能になる。例えば、受信される第１データ、及び生成される第３データに、これらのデータを生成した装置に対応する地域の属性が設定されることで、携帯端末装置は、自機の位置に対応したピースデータを取得して、自機の位置に対応したコレクションデータを生成することができる。
【００２３】
（１４）上記プログラムにおいて、処理手段は、２以上の所定数のピースデータの何れかに対応するように、このピースデータに応じて異なった生成率で第３データを生成する。この構成によれば、コレクションデータを構成するピースデータのうちで、取得し難いピースデータが存在することになる。この様に、取得が難しいピースデータがあることで、コレクションデータを完成させる難易度を高め、コレクションデータを完成させる興趣性の高いゲームをユーザに提供することが可能になる。
【００２４】
（１５）上記プログラムにおいて、処理手段は、第１データ又は第２データを用いて第４データを生成するときに、この第４データに属性を設定し、第４データを使用して、第４データに設定された属性に応じた所定の処理を実行する。この構成によれば、第４データに設定された属性に応じて異なった処理を実行することが可能になり、より多彩な処理を実行することが可能になる。例えば、この属性には、第２の実施形態におけるキャラクタ情報Ｄ２０に含まれるキャラクタ名や色情報等の属性が一例として挙げられる。そして、第２の実施形態のように、これらの属性が攻撃有効条件に合致するか否かに応じて処理が変わることが「属性に応じた処理が実行される」ことの一例としてあげられる。
【００２５】
（１６）本発明の一例にかかる携帯端末装置は、上記目的を達成するために、通信手段、第２データ取得手段、及び処理手段、を備える。通信手段は、近距離無線通信によって、他の通信機器から第１データを自動的に受信する。また、第２データ取得手段は、自機の移動量に応じた第２データを取得する。処理手段は、第１データを用いて、又は第１データに代えて第２データを用いて、アプリケーションにおける所定の処理を実行する。
【００２６】
（１７）本発明の一例にかかるシステムは、上記目的を達成するために、通信手段、第２データ取得手段、及び処理手段、を備える。通信手段は、近距離無線通信によって、他の通信機器から第１データを自動的に受信する。また、第２データ取得手段は、自機の移動量に応じた第２データを取得する。処理手段は、第１データを用いて、又は第１データに代えて第２データを用いて、アプリケーションにおける所定の処理を実行する。
【００２７】
（１８）本発明の一例にかかる情報処理方法は、上記目的を達成するために、通信ステップ、第２データ取得ステップ、及び処理ステップを含む。ここで、通信ステップにおいて、近距離無線通信によって、他の通信機器から第１データが自動的に受信される。また、第２データ取得ステップにおいて、自機の移動量に応じた第２データが取得される。そして、処理ステップにおいて、第１データを用いて、又は第１データに代えて第２データを用いて、アプリケーションにおける所定の処理が実行される。
【００２８】
（１９）本発明の一例にかかる通信システムは、上記目的を達成するために、携帯端末装置と、この携帯端末装置との間で通信可能な通信機器とを含む通信システムであって、携帯端末装置は、通信手段、第２データ取得手段、及び処理手段、を備える。通信手段は、近距離無線通信によって、他の通信機器から第１データを自動的に受信する。また、第２データ取得手段は、自機の移動量に応じた第２データを取得する。処理手段は、第１データを用いて、又は第１データに代えて第２データを用いて、アプリケーションにおける所定の処理を実行する。
【００２９】
上記（１６）〜（１９）に記載の装置、方法及びシステムでは、（２）に記載したプログラムと同様の作用効果を奏する。
【発明の効果】
【００３０】
本発明によれば、近距離無線通信可能な範囲内に通信相手となる通信機器が存在せず、通信機器から第１データを受信することができないときでも、第２データを取得して、この第２データをアプリケーションの実行に使用することができ、多彩な処理を実行することができる。
【００３１】
なお、本来、第１データを通信機器から取得する確率を高めるためには、ユーザが携帯端末装置を携帯して移動することで、通信機器のユーザと近距離無線通信可能な距離ですれ違う確率を高めることが効果的である。すなわち、携帯端末装置の移動量が多い程、第１データが多く集まる。本発明によれば、自機の移動量に応じた第２データを第１データの代わりに所定の処理に使用するため、近距離無線通信によって通信機器から第１データを取得するのと同様な状況を作り出し、通信機器から第１データを取得するのと同様の面白さをユーザに体感させることができる。
【図面の簡単な説明】
【００３２】
【図１】本発明の一実施形態にかかるシステムを構成するゲーム装置の外観図
【図２】ゲーム装置の内部構成の一例を示すブロック図
【図３】ピース集めゲームで表示されるメイン画面及び操作画面の一例を示す図
【図４】すれちがい通信処理の一例を示す通信シーケンス図
【図５Ａ】接続要求フレームＤ１の一例を示す図
【図５Ｂ】接続応答フレームＤ２の一例を示す図
【図５Ｃ】情報フレームＤ３の一例を示す図
【図５Ｄ】情報フレームＤ３に含まれる本文データＤ４の一例を示す図
【図６】メインメモリ３２が記憶するプログラム及び各種データの一例を示すメモリマップ
【図７Ａ】複数種類のコレクション画像Ｇ１とこのコレクション画像Ｇ１を構成するピース画像Ｇ２を説明するための図
【図７Ｂ】テーブルＴの一例を示す図
【図８】ピース集め処理の一例を示すフローチャート（その１）
【図９】ピース集め処理の一例を示すフローチャート（その２）
【図１０】ピース集め処理の一例を示すフローチャート（その３）
【図１１】送信用ピース選択画面の一例を示す図
【図１２】ステップＳ２２の表示処理によって表示される画面図の一例を示す図
【図１３】ステップＳ３０の表示処理によって表示される画面図の一例を示す図
【図１４】コイン変換処理の一例を示すフローチャート
【図１５】ピース画像購入処理の一例を示すフローチャート
【図１６】歩数カウント処理の一例を示すフローチャート
【図１７】すれちがい通信処理の一例を示すフローチャート
【図１８】勇者バトルゲームで表示されるメイン画面及び操作画面の一例を示す図
【図１９】ゲーム装置１が敵キャラクタに攻撃する様子を示すバトル画面の一例を示す図
【図２０】第２の実施形態にかかる本文データＤ４ａの内容を示す図
【図２１】メインメモリ３２に記憶されるプログラム及びデータの内容の一例を示すメモリマップ
【図２２Ａ】キャラクタ情報Ｄ２０及び交換対象キャラクタ情報Ｄ２１の一例を示す図
【図２２Ｂ】勇者情報記憶領域３３０に記憶されるデータの一例を示す図
【図２２Ｃ】勇者レベルテーブルＴ１の一例を示す図
【図２３】敵情報記憶領域３３１に記憶されるデータの一例を示す図
【図２４Ａ】敵情報Ｄ２７の一例を示す図
【図２４Ｂ】敵情報テーブルＴ２の一例を示す図
【図２４Ｃ】攻撃有効条件テーブルＴ３の一例を示す図
【図２５】勇者バトル処理の一例を示すフローチャート（その１）
【図２６】勇者バトル処理の一例を示すフローチャート（その２）
【図２７】勇者バトル処理の一例を示すフローチャート（その３）
【図２８】勇者購入処理の一例を示すフローチャート
【発明を実施するための形態】
【００３３】
（第１の実施形態）
本発明の第１の実施形態は、本発明の携帯端末装置を携帯型のゲーム装置に適用した実施形態の例である。本ゲーム装置は、同種の他のゲーム装置（本発明の他の通信機器の一例）とで通信システムを構成する。そして、本ゲーム装置は、近距離無線通信を行うことで、他のゲーム装置から情報を受信し、取得した情報（本発明の第１データ）を使用してアプリケーションの所定の処理を実行する。この受信したデータが多い程、多彩な所定の処理を行うことができる。なお、本実施形態で実行するアプリケーション及び所定の処理の内容については後述する。
【００３４】
上述したようなゲーム装置は、近距離無線通信可能な範囲に位置するゲーム装置からしか情報の受信を行うことができない。このため、ゲーム装置に他のゲーム装置から多くの情報を受信させるためには、ユーザがゲーム装置を持ち歩いて（携帯して移動して）、ゲーム装置が他のゲーム装置と近距離無線通信の可能な範囲に位置する（すれ違える）機会を増やすことが重要である。
【００３５】
しかしながら、本ゲーム装置があまり普及していない地域や、人口密度が低い地域等では、ゲーム装置を携帯してユーザが移動しても、他のゲーム装置とすれ違える機会が少ない。このため、ゲーム装置は、他のゲーム装置から情報を受信することができず、受信した情報を用いて多彩な処理をすることができない。このことから、ユーザは他のゲーム装置とすれ違うことで他のゲーム装置からの情報を自機で受信する面白さを体感することができなかった。
【００３６】
本実施形態では、他のゲーム装置とすれ違える機会が少ない地域であっても、ユーザに上記の様な面白さを疑似的に体感させることが可能なようにすることを目的とする。このために、ユーザがゲーム装置を携帯して移動することで、ゲーム装置は、所定期間におけるゲーム装置の移動量に応じたデータ（本発明の第２データ）を取得し、この移動量に応じて多彩な所定の処理を実行する。これによって、ユーザがゲーム装置を携帯して移動する程、多彩な所定の処理が実行され、ユーザは疑似的に他のゲーム装置とすれ違って他のゲーム装置から情報を取得したような面白さを体感することができる。
【００３７】
なお、ゲーム装置の移動量を検出するためには様々な手法があるが、本実施形態では、ゲーム装置に内蔵する加速度を用いてユーザの歩数が取得され、この歩数を示すデータがゲーム装置の移動量に応じたデータとして使用される。本実施形態では、ゲーム装置自体がユーザの歩数を検知しているが、ゲーム装置とは別体の歩数計測装置を用いてユーザの歩数を検知する構成であってもよい。また、歩数を計測する代わりに、ゲーム装置が、ＧＰＳ機能を備えて所定期間毎に自機の位置を取得及び記憶し、これを用いてゲーム装置の移動距離を取得し、この移動距離をゲーム装置の移動量として用いてもよい。また、ゲーム装置が、アクセスポイントと通信することでアクセスポイントの位置を取得及び記憶し、アクセスポイントの位置を自機の位置として自機の移動距離を取得し、この移動距離をゲーム装置の移動量として用いてもよい。以下に、本実施形態について図面を用いて詳細に説明する。
【００３８】
図１は、第１の実施形態にかかる通信システムを構成するゲーム装置の概観図である。図１において、ゲーム装置１は、折り畳み型の携帯ゲーム装置であり、開いた状態（開状態）のゲーム装置１を示している。ゲーム装置１は、開いた状態においてもユーザが両手または片手で把持することができるようなサイズで構成される。
【００３９】
ゲーム装置１は、下側ハウジング１１および上側ハウジング２１を有する。下側ハウジング１１と上側ハウジング２１とは、開閉可能（折り畳み可能）に連結されている。図１の例では、下側ハウジング１１および上側ハウジング２１は、それぞれ横長の長方形の板状で形成され、互いの長辺部分で回転可能に連結されている。通常、ユーザは、開状態でゲーム装置１を使用する。また、ユーザは、ゲーム装置１を使用しないときには閉状態としてゲーム装置１を保管する。
【００４０】
下側ハウジング１１には、下側ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ：液晶表示装置）１２が設けられる。下側ＬＣＤ１２は横長形状であり、長辺方向が下側ハウジング１１の長辺方向に一致するように配置される。なお、本実施形態では、ゲーム装置１に内蔵されている表示装置としてＬＣＤを用いているが、例えばＥＬ（Ｅｌｅｃｔｒｏ  Ｌｕｍｉｎｅｓｃｅｎｃｅ：電界発光）を利用した表示装置等、他の任意の表示装置を利用してもよい。また、ゲーム装置１は、任意の解像度の表示装置を利用することができる。
【００４１】
下側ハウジング１１には、入力装置として、各操作ボタン１４Ａ〜１４Ｋおよびタッチパネル１３が設けられる。図１に示されるように、各操作ボタン１４Ａ〜１４Ｋのうち、方向入力ボタン１４Ａ、操作ボタン１４Ｂ、操作ボタン１４Ｃ、操作ボタン１４Ｄ、操作ボタン１４Ｅ、電源ボタン１４Ｆ、スタートボタン１４Ｇ、およびセレクトボタン１４Ｈは、上側ハウジング２１と下側ハウジング１１とを折りたたんだときに内側となる、下側ハウジング１１の内側主面上に設けられる。方向入力ボタン１４Ａは、例えば選択操作等に用いられる。各操作ボタン１４Ｂ〜１４Ｅは、例えば決定操作やキャンセル操作等に用いられる。電源ボタン１４Ｆは、ゲーム装置１の電源をオン／オフするために用いられる。図１に示す例では、方向入力ボタン１４Ａおよび電源ボタン１４Ｆは、下側ハウジング１１の内側主面中央付近に設けられる下側ＬＣＤ１２に対して、左右一方側（図１では左側）の当該主面上に設けられる。また、操作ボタン１４Ｂ〜１４Ｅ、スタートボタン１４Ｇ、およびセレクトボタン１４Ｈは、下側ＬＣＤ１２に対して左右他方側（図１では右側）となる下側ハウジング１１の内側主面上に設けられる。方向入力ボタン１４Ａ、操作ボタン１４Ｂ〜１４Ｅ、スタートボタン１４Ｇ、およびセレクトボタン１４Ｈは、ゲーム装置１に対する各種操作を行うために用いられる。
【００４２】
なお、図１においては、操作ボタン１４Ｉ〜１４Ｋの図示を省略している。例えば、Ｌボタン１４Ｉは、下側ハウジング１１の上側面の左端部に設けられ、Ｒボタン１４Ｊは、下側ハウジング１１の上側面の右端部に設けられる。また、ゲーム装置１は、各操作ボタン１４Ａ〜１４Ｋとは別の入力装置として、さらにタッチパネル１３を備えている。タッチパネル１３は、下側ＬＣＤ１２の画面上を覆うように装着されている。なお、本実施形態では、タッチパネル１３は、例えば抵抗膜方式のタッチパネルが用いられる。ただし、タッチパネル１３は、抵抗膜方式に限らず、任意の押圧式のタッチパネルを用いることができる。また、本実施形態では、タッチパネル１３として、例えば下側ＬＣＤ１２の解像度と同解像度（検出精度）のものを利用する。ただし、必ずしもタッチパネル１３の解像度と下側ＬＣＤ１２の解像度とが一致している必要はない。また、下側ハウジング１１の右側面には、挿入口（図１に示す破線）が設けられている。挿入口は、タッチパネル１３に対する操作を行うために用いられるタッチペン２７を収納することができる。
【００４３】
また、下側ハウジング１１の右側面には、メモリカード２８を収納するための挿入口（図１では、二点鎖線で示している）が設けられている。この挿入口の内側には、ゲーム装置１とメモリカード２８とを電気的に接続するためのコネクタ（図示せず）が設けられる。メモリカード２８は、例えばＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）メモリカードであり、コネクタに着脱自在に装着される。メモリカード２８は、例えば、ゲーム装置１によって撮影された画像を記憶（保存）したり、他の装置で生成された画像をゲーム装置１に読み込んだりするために用いられる。
【００４４】
さらに、下側ハウジング１１の上側面には、カートリッジ２９を収納するための挿入口（図１では、一点鎖線で示している）が設けられている。この挿入口の内側にも、ゲーム装置１とカートリッジ２９とを電気的に接続するためのコネクタ（図示せず）が設けられる。カートリッジ２９は、ゲームプログラム等を記録した記録媒体であり、下側ハウジング１１に設けられた挿入口に着脱自在に装着される。また、下側ハウジング１１と上側ハウジング２１との連結部の左側部分には、３つのＬＥＤ１５Ａ〜１５Ｃが取り付けられる。
【００４５】
一方、上側ハウジング２１には、上側ＬＣＤ２２が設けられる。上側ＬＣＤ２２は横長形状であり、長辺方向が上側ハウジング２１の長辺方向に一致するように配置される。なお、下側ＬＣＤ１２と同様、上側ＬＣＤ２２に代えて、他の任意の方式および任意の解像度の表示装置を利用してもよい。なお、上側ＬＣＤ２２上を覆うように、タッチパネルを設けてもかまわない。例えば、上側ＬＣＤ２２には、ユーザに各操作ボタン１４Ａ〜１４Ｋやタッチパネル１３の役割を教えるための、操作説明画面が表示される。
【００４６】
また、上側ハウジング２１には、２つのカメラ（内側カメラ２３および外側カメラ２５）が設けられる。図１に示されるように、内側カメラ２３は、上側ハウジング２１の連結部付近の内側主面に取り付けられる。一方、外側カメラ２５は、内側カメラ２３が取り付けられる内側主面の反対側の面、すなわち、上側ハウジング２１の外側主面（ゲーム装置１が閉状態となった場合に外側となる面であり、図１に示す上側ハウジング２１の背面）に取り付けられる。
【００４７】
なお、上記連結部付近の内側主面には、音声入力装置としてマイク（図２に示すマイク４１）が収納されている。そして、上記連結部付近の内側主面には、マイク４１がゲーム装置１外部の音を検知できるように、マイクロフォン用孔１６が形成される。マイク４１を収納する位置およびマイクロフォン用孔１６の位置は必ずしも上記連結部である必要はない。また、上側ハウジング２１の外側主面には、第４ＬＥＤ２６（図１では、破線で示す）が取り付けられる。第４ＬＥＤ２６は、外側カメラ２５によって撮影が行われた（シャッターボタンが押下された）時点で点灯する。また、上側ハウジング２１の内側主面中央付近に設けられる上側ＬＣＤ２２に対して、左右両側の当該主面に音抜き孔２４がそれぞれ形成される。音抜き孔２４の奥の上側ハウジング２１内にはスピーカが収納されている。
【００４８】
次に、図２を参照して、ゲーム装置１の内部構成を説明する。なお、図２は、ゲーム装置１の内部構成の一例を示すブロック図である。
【００４９】
図２において、ゲーム装置１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３１、メインメモリ３２、メモリ制御回路３３、保存用データメモリ３４、プリセットデータ用メモリ３５、メモリカードインターフェース（メモリカードＩ／Ｆ）３６、無線通信モジュール３７、マイコン３８、開閉スイッチ３８ｃ、電源スイッチ３８ｄ、電源回路３９、インターフェース回路（Ｉ／Ｆ回路）４０、カートリッジＩ／Ｆ４３および加速度センサ４４等の電子部品を備えている。これらの電子部品は、電子回路基板上に実装されて、下側ハウジング１１（または上側ハウジング２１でもよい）内に収納される。
【００５０】
ＣＰＵ３１は、所定のプログラム（本発明の情報処理プログラムを含む）を実行するための情報処理手段である。本実施形態では、所定のプログラムがゲーム装置１内のメモリ（例えば保存用データメモリ３４）やメモリカード２８および／または２９に記憶されており、ＣＰＵ３１は、当該所定のプログラムを実行することによって、後述するピース集め処理を含む所定の処理を実行する。なお、ＣＰＵ３１によって実行されるプログラムは、ゲーム装置１内のメモリに予め記憶されていてもよいし、メモリカード２８および／またはカートリッジ２９から取得されてもよいし、他の機器との通信によって他の機器から取得されてもよい。例えば、インターネットを経由して所定のサーバからダウンロードすることで取得しても良いし、据置型ゲーム装置と通信を行うことで、当該据置型ゲーム装置に記憶されている所定のプログラムをダウンロードすることで取得しても良い。
【００５１】
ＣＰＵ３１には、メインメモリ３２、メモリ制御回路３３、およびプリセットデータ用メモリ３５が接続される。また、メモリ制御回路３３には、保存用データメモリ３４が接続される。メインメモリ３２は、ＣＰＵ３１のワーク領域やバッファ領域として用いられる記憶手段である。すなわち、メインメモリ３２は、上記所定のプログラムに用いられる各種データを記憶したり、外部（メモリカード２８および２９や他の機器等）から取得されるプログラムを記憶したりする。本実施形態では、メインメモリ３２として、例えばＰＳＲＡＭ（Ｐｓｅｕｄｏ−ＳＲＡＭ）を用いる。保存用データメモリ３４は、不揮発性の記憶媒体によって構成されており、例えば本実施例ではＮＡＮＤ型フラッシュメモリで構成される。メモリ制御回路３３は、ＣＰＵ３１の指示に従って、保存用データメモリ３４に対するデータの読み出しおよび書き込みを制御する回路である。プリセットデータ用メモリ３５は、ゲーム装置１において予め設定される各種パラメータ等のデータ（プリセットデータ）を記憶するための記憶手段である。プリセットデータ用メモリ３５としては、ＳＰＩ（Ｓｅｒｉａｌ  Ｐｅｒｉｐｈｅｒａｌ  Ｉｎｔｅｒｆａｃｅ）バスによってＣＰＵ３１と接続されるフラッシュメモリを用いることができる。
【００５２】
メモリカードＩ／Ｆ３６は、ＣＰＵ３１に接続される。メモリカードＩ／Ｆ３６は、コネクタに装着されたメモリカード２８に対するデータの読み出しおよび書き込みを、ＣＰＵ３１の指示に応じて行う。また、カートリッジＩ／Ｆ４３はＣＰＵ３１に接続される。カートリッジＩ／Ｆ４３は、コネクタに装着されたカートリッジ２９に対するデータの読み出しおよび書き込みをＣＰＵ３１の指示に従って行う。本実施形態では、ゲーム装置１が実行することが可能なアプリケーションプログラム（本実施形態ではピース集めアプリケーション）がカートリッジ２９から読み出されてＣＰＵ３１によって実行されたり、当該アプリケーションプログラムに関するデータ（例えばゲームのセーブデータ等）がカートリッジ２９に書き込まれたりする。
【００５３】
無線通信モジュール３７は、例えばＩＥＥＥ８０２．１１ｂ／ｇの規格に準拠した方式により、無線ＬＡＮに接続する機能を有する。無線通信モジュール３７は、例えばデータ伝送距離が１０ｍの範囲内の近距離無線通信を行い、この無線通信で使用する電波は例えば無線局の免許が不要な程の微弱電波である。無線通信モジュール３７は、ＣＰＵ３１に接続される。ＣＰＵ３１は、無線通信モジュール３７を用いてインターネットを介して、又は介さないで他の機器との間でデータを送受信することができる。例えば、ＣＰＵ３１は、アクセスポイントと無線通信を行うことでアクセスポイントから情報を取得することができる。
【００５４】
また、ＣＰＵ３１は、無線通信モジュール３７を用いて同種の他のゲーム装置との間でデータを送受信することができる。例えば、ゲーム装置１（ゲーム装置１Ａ）のＣＰＵ３１は、自機と他のゲーム装置（ゲーム装置１Ｂ）とが互いに通信可能範囲内（例えば、両機間の距離が１０ｍ以内）に位置するときにデータを送受信することができる。また、本実施形態では、ＣＰＵ３１は、通信可能範囲内にある他のゲーム装置１Ｂとの間で自動的に通信（この通信を以下、「すれちがい通信」と記載する）を行い、自動的にデータを送受信する。本実施形態では、ゲーム装置１Ａは、「すれちがい通信」によって他のゲーム装置１Ｂの記憶する情報（例えば、後述するピース情報）を取得することができ、かつ、「すれちがい通信」によって自機が記憶する情報（例えば、後述するピース情報）をゲーム装置１Ｂに提供することもできる。このピース情報についての詳細は後述する。
【００５５】
「すれちがい通信」はゲーム装置１Ａ、１Ｂがそれぞれ「すれちがい通信モード」に設定されているときに限って行われる。この「すれちがい通信モード」の設定は、例えば、ユーザが各操作ボタン１４Ａ〜１４Ｋやタッチパネル１３を操作して、「すれちがい通信モード」を選択した状態でゲーム装置１を閉じることで行われる。「すれちがい通信モード」が設定されていると、ゲーム装置１Ａは、後述するスリープモード（省電力モード）になるととともに、自動的かつ継続的に他のゲーム装置１Ｂを探索して、探索の結果見つかったゲーム装置１Ｂとの間で自動的に通信（すれちがい通信）を行い、当該通信が完了した後で自動的に切断を行う。その後、ゲーム装置１Ａはさらに他のゲーム装置１Ｂを探索して、上記と同様な処理を繰り返す。
【００５６】
また、ＣＰＵ３１には、マイコン３８が接続される。このマイコン３８は、メモリ３８ａ及びＲＴＣ３８ｂを含む。メモリ３８ａは、例えばＲＡＭ等で構成され、マイコン３８が実行するプログラムやこのプログラムの実行に必要なデータがメモリカード２８、カートリッジ２９や保存用データメモリ３４等から読み出されて記憶される。ＲＴＣ３８ｂは、時間をカウントしてマイコン３８に出力する。例えば、マイコン３８は、ＲＴＣ３８ｂによって計時された時間に基づいて、日付及び現在時刻等を計算することもできる。
【００５７】
マイコン３８には、開閉スイッチ３８ｃ及び電源スイッチ３８ｄが接続される。開閉スイッチ３８ｃは、ゲーム装置１が開けられている状態（開状態）ではオンされ、閉じられている状態（閉状態）ではオフされ、このオンオフの信号をマイコン３８に入力する。電源スイッチ３８ｄは、ゲーム装置１の主電源をオンオフするためのスイッチである。ゲーム装置１の主電源がオンされている状態で電源スイッチ３８ｄがオフされると、マイコン３８は電源回路３９にマイコン３８を除く全回路コンポーネントへの電力供給の停止を指示する。ここで、電源回路３９は、ゲーム装置１が有する電源（典型的には電池であり、下側ハウジング１１に収納される）から供給される電力を制御し、ゲーム装置１の各部品に電力を供給する。
【００５８】
ゲーム装置１の主電源がオフされている状態で電源スイッチ３８ｄがオンされると、マイコン３８のＢｏｏｔＲＯＭとしても機能するメモリ３８ａが起動される。この場合には、マイコン３８は開閉スイッチ３８ｃのオンオフ（ゲーム装置１の開閉状態）に基づいて電源制御を行う。具体的には、開閉スイッチ３８ｃがオフのとき（ゲーム装置１が閉状態のとき）、マイコン３８は、電源回路３９からゲーム装置１の一部のコンポーネントに電力を供給するモード（スリープモード）で電源制御を行う処理（以下、「スリープ処理」と記載する）を実行する。この実施形態では、一部のコンポーネントは、例えば、ＣＰＵ３１、無線通信モジュール３７等である。従って、スリープモードであっても、無線通信モジュール３７によって上述した「すれちがい通信」等を実行することが可能である。なお、本実施形態では、スリープモード中には、ＣＰＵ３１によってアプリケーションが実行されることはない。
【００５９】
ここで、ゲーム装置１がスリープ状態において無線通信モジュール３７で受信した情報を記憶したり、送信する情報を読み出す場合には、停止されていたＣＰＵ３１のクロックの起動が無線通信モジュール３７によって指示され、その後無線通信モジュール３７からＣＰＵ３１に通信の開始指示が与えられる。この後、ＣＰＵ３１がマイコン３８に指示してメモリ制御回路３３及び保存用データメモリ３４への電力の供給が開始される。これによって、ゲーム装置１は、「すれちがい通信」によって、他のゲーム装置１に対して保存用データメモリ３４に記憶されたデータを送信したり、他のゲーム装置１から受信したデータを保存用データメモリ３４に記憶させたりすることができる。
【００６０】
また、マイコン３８は、スリープモードでは、歩数計測プログラムを実行することで、後述の加速度センサ４４を用いてユーザの歩数を計測する処理（歩数カウント処理）を実行する。マイコン３８は、計測した歩数を示す歩数データを所定の期間毎に保存用データメモリ３４に記憶させる。このために、マイコン３８は、停止されていたＣＰＵ３１のクロックの起動を指示する。この後、ＣＰＵ３１がマイコン３８に指示してメモリ制御回路３３及び保存用データメモリ３４への電力の供給が開始される。これによって、ゲーム装置１は、歩数データを保存用データメモリ３４に記憶させることができる。なお、歩数カウント処理については詳しくは図１６を用いて後述する。
【００６１】
また、ゲーム装置１が開状態になり、開閉スイッチ３８ｃがオンになったときには、マイコン３８は、スリープモードを解除して通常モードになり、電源回路３９に全回路コンポーネントへの電力供給の開始を指示する。
【００６２】
また、マイコン３８には、加速度センサ４４が接続される。加速度センサ４４は、例えば三軸の加速度センサであり、例えば下側ハウジング１１の内側に設けられる。なお、上側ハウジング２２の内側に設けられてもよい。加速度センサ４４は、ゲーム装置１の下側ＬＣＤ１２（上側ハウジング２１に設けられているときには上側ＬＣＤ２２）の面に対して垂直な方向の加速度と、下側ＬＣＤ１２（上側ハウジング２１に設けられているときには上側ＬＣＤ２２）の面に対して平行であり、互いに直交する２方向の加速度を検出する。加速度センサ４４は、検出した加速度を示す信号（加速度信号）をマイコン３８に出力する。マイコン３８は、加速度信号に基づいて、ゲーム装置１の向きを検出したり、ゲーム装置１の振動の大きさを検出することができる。
【００６３】
また、ゲーム装置１は、マイク４１およびアンプ４２を備えている。マイク４１およびアンプ４２は、それぞれＩ／Ｆ回路４０に接続される。マイク４１は、ゲーム装置１に向かって発声されたユーザの音声を検知して、当該音声を示す音声信号をＩ／Ｆ回路４０に出力する。アンプ４２は、Ｉ／Ｆ回路４０から音声信号を増幅してスピーカ（図示せず）から出力させる。Ｉ／Ｆ回路４０は、ＣＰＵ３１に接続される。
【００６４】
また、タッチパネル１３は、Ｉ／Ｆ回路４０に接続される。Ｉ／Ｆ回路４０は、マイク４１およびアンプ４２（スピーカ）の制御を行う音声制御回路と、タッチパネル１３の制御を行うタッチパネル制御回路とを含む。音声制御回路は、音声信号に対するＡ／Ｄ変換およびＤ／Ａ変換を行ったり、音声信号を所定の形式の音声データに変換したりする。タッチパネル制御回路は、タッチパネル１３からの信号に基づいて所定の形式のタッチ位置データを生成してＣＰＵ３１に出力する。例えば、タッチ位置データは、タッチパネル１３の入力面に対して入力が行われた位置の座標を示すデータである。なお、タッチパネル制御回路は、タッチパネル１３からの信号の読み込み、および、タッチ位置データの生成を所定時間に１回の割合で行う。ＣＰＵ３１は、Ｉ／Ｆ回路４０を介して、タッチ位置データを取得することにより、タッチパネル１３に対して入力が行われた位置を知ることができる。
【００６５】
操作ボタン１４は、上記各操作ボタン１４Ａ〜１４Ｋから構成され、ＣＰＵ３１に接続される。操作ボタン１４からＣＰＵ３１へは、各操作ボタン１４Ａ〜１４Ｋに対する入力状況（押下されたか否か）を示す操作データが出力される。ＣＰＵ３１は、操作ボタン１４から操作データを取得することによって、操作ボタン１４に対する入力に応じた処理を実行する。
【００６６】
内側カメラ２３および外側カメラ２５は、それぞれＣＰＵ３１に接続される。内側カメラ２３および外側カメラ２５は、ＣＰＵ３１の指示に応じて画像を撮影し、撮影した画像データをＣＰＵ３１に出力する。また、下側ＬＣＤ１２および上側ＬＣＤ２２は、それぞれＣＰＵ３１に接続される。下側ＬＣＤ１２および上側ＬＣＤ２２は、それぞれＣＰＵ３１の指示に従って画像を表示する。
【００６７】
次に、図３を参照して、ゲーム装置１がピース集めアプリケーションを実行することで、ユーザに提供されるピース集めゲームを説明する。図３は、ピース集めゲームにおいて表示されるメイン画面及び操作画面の一例を示す図である。このメイン画面及び操作画面は、ピース集めアプリケーションを起動したときに表示され、メイン画面は上側ＬＣＤ２２に表示され、操作画面は下側ＬＣＤ１２に表示される。メイン画面には、１のコレクション画像Ｇ１を複数に分割したピース画像Ｇ２、ガイド矢印Ｇ３及び保有コイン数Ｇ４が表示される。
【００６８】
コレクション画像Ｇ１は何らかの図柄を示す画像である。コレクション画像Ｇ１は複数種類（例えば６種類）用意され、これらの複数種類のコレクション画像Ｇ１はそれぞれ地域（例えば、首都圏、近畿地方、東海地方等）等の属性が設定されている。例えば、コレクション画像Ｇ１は、それぞれの属性を表すような図柄（例えば属性の地域の観光名所を示す図柄）を表す。コレクション画像Ｇ１は複数種類用意されているが、メイン画面に表示されるコレクション画像Ｇ１は１個のみである。
【００６９】
ピース画像Ｇ２はコレクション画像Ｇ１を所定数に分割した画像であり、メイン画面にはゲーム装置１が所有するピース画像Ｇ２を組み合わせたコレクション画像Ｇ１が表示される。図３では、表示しているコレクション画像Ｇ１については、計８個のピース画像Ｇ２をゲーム装置１が所有しており、この８個のピース画像Ｇ２を組み合わせた未完成のコレクション画像Ｇ１が表示されている。
【００７０】
２つのガイド矢印Ｇ３は、コレクション画像Ｇ１の左側と右側にそれぞれ表示されている。この矢印Ｇ３は、メイン画面に表示されるコレクション画像Ｇ１を切り替える操作をユーザにガイドするための画像であり、この矢印Ｇ３にガイドされて、例えば、ＬボタンやＲボタンをユーザが押下することで、ゲーム装置１は、表示するコレクション画像Ｇ１を切り替えてメイン画面に表示する。
【００７１】
本実施形態のピース集めゲームとは、パズルのように、１枚のコレクション画像Ｇ１を複数のピース画像Ｇ２を使用して完成させるゲームである。すなわち、このゲームは、所定数（例えば、縦３つ×横５つの計１５個）のピース画像Ｇ２を所定の種類だけゲーム装置１に取得（収集）させるゲームであり、これによって、収集したピース画像Ｇ２によって完成したコレクション画像Ｇ１を生成することができる。なお、ピース集めアプリケーションをゲーム装置１で初回に起動したとき（ピース集めアプリケーションを初めてゲーム装置１にインストールして実行したとき）には、ゲーム装置１は、僅かな個数（例えば１個）のピース画像Ｇ２のみを所有しているだけである。この様な状態から、ユーザは、コレクション画像Ｇ１を完成させるに足る所定の種類のピース画像Ｇ２をゲーム装置１で収集するのである。
【００７２】
ピース画像Ｇ２の収集方法には、まず、ゲーム装置１が他のゲーム装置１と上述した「すれちがい通信」を行うことでピース画像Ｇ２を取得する方法がある。この「すれちがい通信」は近距離無線通信である。このため、ユーザがゲーム装置１を携帯して持ち歩くことで、ゲーム装置１が他のゲーム装置１と近距離無線通信を行うことができる程の近距離に位置する機会が増える。これによって、多くのピース画像（多彩なピース）を集めることができる。なお、ゲーム装置１は、「すれちがい通信」によって、他のゲーム装置１からピース画像Ｇ２を他のゲーム装置１から取得するだけでなく、他のゲーム装置１に対して自己の所有するピース画像Ｇ２の情報を送信することで他のゲーム装置１に自己の所有するピース画像Ｇ２を取得させることができる。
【００７３】
なお、本実施形態では、ゲーム装置１は、全てのコレクションデータＧ１についてのピース画像Ｇ２を予め記憶しておき、そのうち許可されたピース画像Ｇ２のみを取得したピース画像Ｇ２として使用することができる。そして、「すれちがい通信」において、ゲーム装置１と他のゲーム装置１は、１のピース画像Ｇ２を特定するための情報であるピース情報を送受信し合い、受信したピース情報で特定されるピース画像Ｇ２を取得したピース画像Ｇ２として処理する。本明細書では、ゲーム装置１が他のゲーム装置１との間でピース情報を送信又は受信することを、「ピース画像Ｇ２を送信又は受信する」と記載する場合があるが、実際にはピース画像Ｇ２そのものではなくピース情報が送信又は受信される。
【００７４】
次に、操作画面について説明する。図３に示すように、上側ＬＣＤ２２にメイン画面が表示されているときには、下側ＬＣＤ１２には操作画面が表示される。この操作画面には、ピース持ち替え操作子Ｇ５と、すれちがい通信操作子Ｇ６が表示されており、ピース持ち替え操作子Ｇ５をユーザがタッチすると、ゲーム装置１は他のゲーム装置１に対して送信するピース画像Ｇ２をユーザに選択させることができる。また、すれちがい通信操作子Ｇ６をユーザがタッチすると、ゲーム装置１はユーザに選択されたピース画像Ｇ２のピース情報を他のゲーム装置１に送信するためにすれちがい通信モードになる。このモード中には、ゲーム装置１は、近距離無線通信範囲内に位置する他のゲーム装置１を自動的にかつ周期的に探索し、探索できた他のゲーム装置１との間でピース情報を送受信し合う。
【００７５】
次に、本実施形態の特徴となる、ピース画像Ｇ２の第２の収集方法を説明する。第２のピース画像Ｇ２の収集方法は、ユーザがゲーム装置１を携帯して歩くことでゲーム装置１を移動させ、この移動量に基づいてゲーム装置１でピース画像Ｇ２を取得する方法である。具体的には、本実施形態では、ゲーム装置１は歩数計として機能し、ユーザが、ゲーム装置１を携帯して歩くことでゲーム装置１にユーザの歩数を取得させ、この歩数をゲームコインに変換させる。なお、メイン画面に表示される保有コイン数Ｇ４は、ユーザが保有するコイン数を示す画像である。
【００７６】
そして、本実施形態では、ユーザが保有するコインを使用して、所有するピース画像Ｇ２に変換することができるため、本実施形態では、ゲーム装置１の移動量に応じてピース画像Ｇ２を取得することができる。このため、ゲーム装置１が普及していない地域や人口密度の低い地域にユーザが居る場合等、ゲーム装置１が他のゲーム装置１と「すれちがい通信」を行うことができる機会があまりない場合でも、ゲーム装置１を携帯して移動する程、ピース画像Ｇ２を所有することができる。従って、他のゲーム装置１と「すれちがい通信」を行う状況と似た感覚をユーザに体感させることができる。また、ゲーム装置１が他のゲーム装置１と「すれちがい通信」を行うことができなくても、ピース画像Ｇ２の所有数を増やすことができ、コレクション画像Ｇ１を完成させてゆくことが可能になる。
【００７７】
なお、本実施形態では、ゲーム装置１が「すれちがい通信」によって他のゲーム装置１からピース画像Ｇ２を取得することができないとき、及び取得することができたが取得したピース画像Ｇ２でも未だ完成していないコレクション画像Ｇ１があるときにのみ、保有コインでピース画像Ｇ２を購入することができる。すなわち、ゲーム装置１は、「すれちがい通信」によるピース画像Ｇ２の取得することではピース画像Ｇ２の取得に不足がある場合の補完として、保有コインを用いてのピース画像の購入を許可するのである。
【００７８】
以下に、図４〜図５Ｄを用いて本実施形態で実行する「すれちがい通信」の概要を説明する。図４は、すれちがい通信処理の一例を示す通信シーケンス図である。ゲーム装置１はブロードキャストで通信可能圏内に存在する他のゲーム装置１に対してビーコンフレーム（図５Ａを用いて後述する接続要求フレームＤ１）を送信する。他のゲーム装置１は接続要求フレームＤ１を受信するとこの接続要求フレームＤ１の送信元のゲーム装置１に対して接続応答フレームＤ２（図５Ｂを用いて後述）を送信する。
【００７９】
自ゲーム装置１が、接続応答フレームＤ２を受信すると、他のゲーム装置１に対してピース情報を含んだ情報フレームＤ３（図５Ｃ及び図５Ｄを用いて後述）を送信する。他のゲーム装置１はこの情報フレームＤ３を受信すると自ゲーム装置１に対して自らの生成した情報フレームＤ３を返信する。本実施形態では、この様な一連の通信が所定周期毎に繰り返し行われる。なお、自ゲーム装置１が接続要求フレームＤ１を受信したときには、図４で示す例とは他のゲーム装置１との間で送受信するフレームが逆になる。また、本実施形態では、ゲーム装置１は、情報フレームＤ３を受信したときにこの情報フレームＤ３の送信元のゲーム装置１に対して情報フレームＤ３を送信しているが、この構成に代えて、ゲーム装置１が接続応答フレームＤ２を送信するときに他のゲーム装置１に対して情報フレームＤ３を送信してもよい。
【００８０】
以下に、上記「すれちがい通信」において送受信されるフレームについて説明する。図５Ａは、接続要求フレームＤ１の一例を示す図である。接続要求フレームＤ１は、フレームタイプＦ＿ＴＹＰ、送信元ＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレス及び識別ＩＤを含む。フレームタイプＦ＿ＴＹＰは、当該フレームの種別を示しており、この場合には接続要求フレームＤ１であることを示す情報が記述される。識別ＩＤは、アプリケーション（本実施形態では、ピース集めアプリケーション）に固有の識別情報である。
【００８１】
図５Ｂは、接続応答フレームＤ２の一例を示す図である。接続応答フレームＤ２は、フレームタイプＦ＿ＴＹＰ、宛先ＭＡＣアドレス、送信元ＭＡＣアドレス及び識別ＩＤを含む。フレームタイプＦ＿ＴＹＰには、接続応答フレームＤ２であることを示す情報が記述される。識別ＩＤは、アプリケーション（本実施形態では、ピース集めアプリケーション）に固有の識別情報である。
【００８２】
図５Ｃは、情報フレームＤ３の一例を示す図である。また、図５Ｄは、情報フレームＤ３に含まれる本文データＤ４の一例を示す図である。情報フレームＤ３は、フレームタイプＦ＿ＴＹＰ、宛先ＭＡＣアドレス、送信元ＭＡＣアドレス及び本文データＤ４を含む。本文データＤ４は識別ＩＤとピース情報Ｄ５から構成される。この識別ＩＤは、アプリケーション（本実施形態では、ピース集めアプリケーション）に固有の識別情報である。また、ピース情報Ｄ５については詳しくは後述する。
【００８３】
次に、図６及び図７を参照して、ゲーム装置１がメインメモリ３２に記憶する各種プログラムや各種データについて説明する。図６は、メインメモリ３２が記憶するプログラム及び各種データの一例を示すメモリマップである。各種データはプログラムをゲーム装置１が実行することに応じて記憶される。
【００８４】
メインメモリ３２は、プログラム記憶領域３２ａとデータ記憶領域３２ｂを備える。プログラム記憶領域３２ａは、ピース集めアプリケーションＰ１と、すれちがい通信処理をゲーム装置１（無線通信モジュール３７及びＣＰＵ３１）に実行させるための通信プログラムＰ２が記憶される。このピース集めアプリケーションＰ１及び通信プログラムＰ２は、保存用データメモリ３４又はメモリカード２８、２９等から適宜読み出されて記憶される。なお、通信プログラムＰ２は、マイコン３８に読み出されてマイコン３８のメモリ３８ａにも記憶される。
【００８５】
データ記憶領域３２ｂは、交換対象ピース情報記憶領域３２１、取得ピース情報記憶領域３２２、受信ボックス３２３及び送信ボックス３２４を含む。交換対象ピース情報記憶領域３２１には、他のゲーム装置１に対して「すれちがい通信」によって送信されるピース情報Ｄ５が交換対象ピース情報Ｄ６として記憶される。なお、ピース情報Ｄ５は、コレクション画像ＩＤと、ピースＩＤとを含む。以下に図７Ａ及び図７Ｂを用いてコレクション画像ＩＤとピースＩＤについて説明する。
【００８６】
図７Ａは、複数種類のコレクション画像Ｇ１とこのコレクション画像Ｇ１を構成するピース画像Ｇ２を説明するための図である。本実施形態では、複数種類（例えば６種類）のコレクション画像Ｇ１がゲーム装置１で記憶されており、各コレクション画像Ｇ１には上述したように地域属性を示すコレクション画像ＩＤ（１〜６）が付加されている。そして、各コレクション画像Ｇ１を構成するピース画像Ｇ２のデータ（後述するピース画像データＤ９）にも、対応するコレクション画像Ｇ１と同じコレクション画像ＩＤが付加されている。また、ピース画像データＤ９には、コレクション画像Ｇ１における位置を表すピースＩＤ（例えば、１〜１５のうち何れかの数）も付加されている。すなわち、ピース画像Ｇ２は、コレクション画像ＩＤによって対応するコレクション画像Ｇ１が特定され、ピースＩＤによってこのコレクション画像Ｇ１において組み込まれる位置が特定される。
【００８７】
なお、本実施形態では、ゲーム装置１は、上述したようにコインを消費してピース情報Ｄ５を生成し、取得することができる。ここで、ゲーム装置１は、ピース情報Ｄ５を生成するときに、ゲーム装置１に予め設定されている地域ＩＤを読み出し、この読み出した地域ＩＤに対応するコレクション画像ＩＤを取得し、このコレクション画像ＩＤとランダムに選択したピースＩＤを含めてピース情報Ｄ５が生成される。図７Ｂは、地域ＩＤとコレクション画像ＩＤとを対応づけて登録するテーブルＴの一例を示す図である。このテーブルＴを使用して、地域ＩＤに対応するコレクション画像ＩＤが取得される。また、地域ＩＤは、予めユーザによって設定されて保存用データメモリ３４等に記憶され、この保存用データメモリ３４等から読み出されてメインメモリ３２に記憶される。なお、ピース集めアプリケーションの初回起動時にも、同様にピース情報Ｄ５が生成される。
【００８８】
図６に戻って、取得ピース情報記憶領域３２２には、他のゲーム装置１から取得したピース情報Ｄ５が取得ピース情報Ｄ７として記憶される。勿論、複数の取得ピース情報Ｄ７が取得されているときには、複数個の取得ピース情報Ｄ７が記憶される。
【００８９】
受信ボックス３２３には、「すれちがい通信」によって他のゲーム装置１から受信した情報フレームＤ３の本文データＤ４が、このデータＤ４の受信日時Ｄ８を付加されて記憶される。この本文データＤ４のピース情報Ｄ５は、ユーザからの指示に応じてＣＰＵ３１に読み出されて、取得ピース情報記憶領域３２２に記憶されている取得ピース情報Ｄ７と同一でなければ、取得ピース情報Ｄ７として取得ピース情報記憶領域３２２に追加的に記憶される。
【００９０】
送信ボックス３２４は、「すれちがい通信」によって他のゲーム装置１に送信するための情報（以下、「ピース情報」と記載する）を記憶する。送信ボックス３２４には本文データＤ４が記憶されている。この本文データＤ４に含まれるピース情報Ｄ５は、交換対象ピース情報Ｄ６と同一のコレクション画像ＩＤ及びピースＩＤを含む。送信ボックス３２４には、本文データＤ４が一つだけ記憶される。この本文データＤ４はコピーされ、このコピーされた本文データＤ４が図８Ｃで示す情報フレームＤ３に含めて送信される。
【００９１】
また、データ記憶領域３２ｂには、画像データ記憶領域３２５が設けられている。画像データ記憶領域３２５は、ゲーム装置１に表示される画像データが記憶される。この画像データには、上述したピース画像Ｇ２のデータＤ９も含まれる。本実施形態では、上述したように、予め全てのコレクション画像Ｄ１についての全てのピース画像Ｇ２のデータＤ９（ピース画像データＤ９）が記憶され、このうち許可されたピース画像データＤ９のみがゲーム装置１で取得されたと扱われる。すなわち、許可されたピース画像データＤ９のみで生成されたコレクション画像Ｇ１が図３で示すようなメイン画面に表示される。なお、上述したように、各ピース画像データＤ９にはコレクション画像ＩＤ及びピースＩＤが付加されて記憶される。そして、ピース画像データＤ９は、上記取得ピース情報Ｄ７に含まれるコレクション画像ＩＤ及びピースＩＤが付加されているときに、ゲーム装置１で取得された（許可された）データとなる。
【００９２】
更に、データ記憶領域３２ｂは、歩数データ記憶領域３２６及び保有コイン数記憶領域３２７が記憶される。歩数データ記憶領域３２６は、加速度センサ４４によって検出された歩数を示す歩数データＤ１０を記憶するための領域である。また、保有コイン数記憶領域３２７は、歩数データＤ１０を変換することでゲーム装置１に取得された保有コインの枚数を示すコイン数データＤ１１を記憶するための領域である。
【００９３】
また、データ記憶領域３２ｂは、受信フレームデータ記憶領域３２８及び送信フレームデータ記憶領域３２９を含む。受信フレームデータ記憶領域３２８は、他のゲーム装置１から受信したフレーム（図５Ａ〜図５Ｃで示すフレーム）を一時的に記憶する領域である。送信フレームデータ記憶領域３２９は、他のゲーム装置１に送信するためのフレーム（図５Ａ〜図５Ｃで示すフレーム）を一時的に記憶する領域である。
【００９４】
なお、上述したデータのうち、データＤ６、Ｄ７、Ｄ１０及びＤ１１は、ピース集めアプリケーションＰ１の起動時に保存用データメモリ３４に記憶されていれば、保存用データメモリ３４から読み出されてデータ記憶領域３２ｂに記憶される。また、データＤ６、Ｄ７、Ｄ１０及びＤ１１は、ピース集めアプリケーションＰ１の終了時には、保存用データメモリ３４に記憶される。本文データＤ４及び図５Ａ〜図５Ｃで示す各フレームについては、通信プログラムＰ２の実行によってＣＰＵ３１に生成されてデータ記憶領域３２ｂに記憶される。
【００９５】
また、メインメモリ３２にはＶＲＡＭ領域（図略）が設定され、ＶＲＡＭ領域（図略）にはＣＰＵ３１によって所定の周期毎に（１／６０秒毎に）上側ＬＣＤ２２及び下側ＬＣＤ１２の表示用の画像が書き込まれる。ＶＲＡＭ領域（図略）に書き込まれた画像はＣＰＵ３１に読みだされて上側ＬＣＤ２２及び下側ＬＣＤ１２に出力される。なお、本明細書において「表示処理」と記載したときには、上側ＬＣＤ２２及び下側ＬＣＤ１２の表示用の画像を生成し、ＶＲＡＭ領域（図略）に書き込む処理である。
【００９６】
以下に、図６、図８〜図１０を用いてＣＰＵ３１が実行するピース集め処理を説明する。ピース集め処理は、ピース集めアプリケーションＰ１の実行によって行われる。なお、ピース集め処理はピース集めアプリケーションＰ１の実行終了がユーザから指示されるまで実行され続ける。
【００９７】
図８〜図１０はピース集め処理の一例を示すフローチャートである。まず、図８を参照して、ＣＰＵ３１はピース集めアプリケーションＰ１が初回起動かどうかを判断する（Ｓ１）。ここで、初回起動とは、ゲーム装置１で最初にピース集めアプリケーションＰ１を起動することである。ピース集めアプリケーションＰ１が初回起動であるときには（Ｓ１でＹＥＳ）、ＣＰＵ３１はピースＩＤを所定の乱数発生処理を行うことによってランダムに決定する。また、ＣＰＵ３１は、予め保存用データメモリ３４に記憶されている地域ＩＤに対応するコレクション画像ＩＤを図７Ｂで示すテーブルＴを参照して取得する。そして、ＣＰＵ３１は、決定したピースＩＤと取得したコレクション画像ＩＤを含めて取得ピース情報Ｄ７及び交換対象ピース情報Ｄ６を生成して保存用データメモリ３４に記憶させる（Ｓ２）。この後、ＣＰＵ３１はステップＳ３に処理を進める。
【００９８】
ステップＳ２において取得ピース情報Ｄ７を生成する理由は、ピース集めアプリケーションＰ１を最初に起動したときには、ゲーム装置１は、取得ピース情報Ｄ７を一つも記憶しておらず、他のゲーム装置１に対して送信するピース情報Ｄ５がないからである。
【００９９】
ここで、各ピース画像Ｇ２に対応するピース情報Ｄ５の生成率は均等ではない。すなわち、各ピースＩＤの決定率が不均一である。例えば、１〜１００までの乱数が発生されるとして、１〜５までの数が発生したときにはピースＩＤが「１」、６〜２０までの数が発生したときにはピースＩＤが「２」という様に、各ピースＩＤに割り当てられる乱数の範囲が不均一になっている。これによって、例えばコレクション画像Ｇ１における肝の位置（例えば、キャラクタの図柄の顔の位置等）のピース画像Ｇ２を取得し難くすること等ができ、よりピース集めゲームの趣向性を高めることが可能になる。また、地域ＩＤは、複数の地域属性の中から１の属性がユーザに選択されることで決定されて予め保存用データメモリ３４に記憶されている。この地域ＩＤは例えばユーザの居住地等が選択される。このため、ゲーム装置１が、ユーザに携帯されて持ち歩かれる地域に応じて、その地域属性に合致したピース画像Ｇ２を収集し、この地域属性に合致したコレクション画像Ｇ１を生成することが可能になる。
【０１００】
一方、ピース集めアプリケーションＰ１が初回起動でないときには（Ｓ１でＮＯ）、ＣＰＵ３１はステップ２を実行せずにステップＳ３に処理を進める。
【０１０１】
ステップＳ３では、ＣＰＵ３１は、図３を用いて上述したようなメイン画面及び操作画面を上側ＬＣＤ２２及び下側ＬＣＤ１２に表示するための表示処理を実行する。具体的には、ＣＰＵ３１は、メインメモリ３２に記憶される全ての取得ピース情報Ｄ７（図６を参照）に対応するピース画像データＤ９を取得し、これらのピース画像データＤ９に基づいてコレクション画像Ｇ１を生成する。そして、ＣＰＵ３１は、メイン画面にコレクション画像Ｇ１が表示されるよう表示処理を行う。また、ＣＰＵ３１は、コイン数データＤ１１の示すコイン枚数を表す保有コイン数Ｇ５を生成して、保有コイン数Ｇ５がメイン画面に表示されるよう表示処理を行う。また、表示するコレクション画像Ｇ１を変更する指示をユーザから受け付けたときには、ＣＰＵ３１はメイン画面に表示するコレクション画像Ｇ１を切り替える表示処理を実行する。
【０１０２】
次に、ＣＰＵ３１はピース持ち替え選択をユーザから受け付けたかどうかを判断する（Ｓ４）。例えば、図３で示す操作画面におけるピース持ち替え操作子Ｇ５がタッチされたときに、ピース持ち替え選択をユーザから受け付けたと判断される。ピース持ち替え選択をユーザから受け付けたと判断したときには（Ｓ４でＹＥＳ）、ＣＰＵ３１は送信用ピース選択画面の表示処理を実行する（Ｓ５）。図１１は、送信用ピース選択画面の一例を示す図である。送信用ピース選択画面は、他のゲーム装置１に送信されるピース画像Ｇ２をユーザに変更させるための画面である。送信用ピース選択画面では、１のピース画像Ｇ２に重ねてオブジェクトＧ７が表示される。オブジェクトＧ７は、例えば操作ボタン１４やタッチパネル１１等の操作によって他のピース画像Ｇ２上に表示位置が変更される。また、表示するコレクション画像Ｇ１を変更する指示を例えば操作ボタン１４やタッチパネル１１等の操作によってユーザから受け付けたときには、ＣＰＵ３１は表示するコレクション画像Ｇ１を切り替える表示処理を実行する。
【０１０３】
続いて、ＣＰＵ３１は、ピース選択の指示をユーザから受け付けたかどうかを、本ステップでＹＥＳと判断するまで繰り返し判断する（Ｓ６）。なお、ピース選択の指示は例えば操作ボタン１４の操作等によって行われる。ここで、ピース選択の指示をユーザから受け付けたと判断したときには（Ｓ６でＹＥＳ）、ＣＰＵ３１は、ユーザに選択されたピース画像Ｇ２を示す交換対象ピース情報Ｄ６を生成し、保存用データメモリ３４に記憶させる（Ｓ７）また、既に保存用データメモリ３４に交換対象ピース情報Ｄ６が記憶されているときには、情報Ｄ６が更新される。なお、上述したように、図１１で示す送信用ピース選択画面にはオブジェクトＧ７が表示されるが、ピース選択の指示がなされたときに、オブジェクトＧ７の重なるピース画像Ｇ２が、他のゲーム装置１に選択されたピース画像Ｇ２となり、後のすれちがい通信処理において他のゲーム装置１に送信されることになる。この後、ＣＰＵ３１はステップＳ８に処理を進める。
【０１０４】
一方、ステップＳ４でＮＯと判断された場合、すなわち、ピース持ち替え選択をユーザから受け付けていないと判断したときには（Ｓ４でＮＯ）、ＣＰＵ３１はステップＳ５〜Ｓ７の処理を実行せずにステップＳ８に処理を進める。
【０１０５】
次に、ステップＳ８の処理について説明する。ＣＰＵ３１は「すれちがい通信」を実行する指示をユーザから受け付けたかどうかを判断する（Ｓ８）。例えば、図３で示す操作画面におけるすれちがい通信操作子Ｇ６がタッチされ、かつゲーム装置１の主電源がオンされた状態で閉状態にされたときに、当該指示を受け付けたと判断する。そして、「すれちがい通信」を実行する指示をユーザから受け付けていないと判断したときには（Ｓ８でＮＯ）、ＣＰＵ３１はステップＳ３に処理を戻す。一方、「すれちがい通信」を実行する指示をユーザから受け付けたと判断したときには（Ｓ８でＹＥＳ）、ＣＰＵ３１は、歩数カウント処理の実行をマイコン３８に指示する（Ｓ９）。
【０１０６】
次に、ＣＰＵ３１は、すれちがい通信処理の実行を無線通信モジュール３７に指示する（Ｓ１０）。そして、ＣＰＵ３１は、マイコン３８に対して、スリープ処理の実行を指示する（Ｓ１１）。続いて、ＣＰＵ３１は、すれちがい通信処理を実行する（Ｓ１２）。ただし、スリープ中にはＣＰＵ３１のクロックが停止されているため、ＣＰＵ３１がステップＳ１２の処理を必ず実行するように図８のフローチャートで示しているが、無線通信モジュール３７からの指示がないときにはＣＰＵ３１は何ら処理を実行しない。すなわち、無線通信モジュール３７が他のゲーム装置１からフレームＤ１〜Ｄ３（図５Ａ〜図５Ｃを参照）を受信すると、無線通信モジュール３７がＣＰＵ３１を起動し、ＣＰＵ３１は図１７を用いて後述するすれちがい通信処理の一部の処理を実行する。このとき、ＣＰＵ３１の指示のもと、マイコン３８は電源回路３９を制御してメモリ制御回路３３及び保存用データメモリ３４、及びメインメモリ３２への電力の供給を開始する。
【０１０７】
そして、「すれちがい通信」の終了の指示を受け付けたときに、マイコン３８はクロック停止状態のＣＰＵ３１を起動し、このときに（Ｓ１３でＹＥＳ）、ＣＰＵ３１は、ステップＳ１３の処理を実行する。なお、「すれちがい通信」の終了の指示は、ゲーム装置１が開状態にされること等でゲーム装置１に受け付けられる。ここで、図８のフローチャートでは、ステップＳ１３の処理が所定周期毎に実行されているように示されているが、実際にはＣＰＵ３１はスリープ中なのでその様な処理を実行しない。
【０１０８】
図９を参照して、ステップＳ１４において、ＣＰＵ３１は、マイコン３８にスリープモードの解除指示を行い（Ｓ１４）、続いて歩数カウント処理の終了を指示する（Ｓ１５）。この後、ＣＰＵ３１は、マイコン３８のメモリ３８ａから歩数のカウント値を読み出して、このカウント値に日付を付加して歩数データＤ１０を生成し、保存用データメモリ３４に記憶させる（Ｓ１６）。なお、歩数カウント処理において、歩数データＤ１０は、単位時間毎に生成され、保存用データメモリ３４に記憶される。従って、ステップＳ１６では、未だ歩数データＤ１０に変換されていない歩数のカウント値を歩数データＤ１０に変換する処理が実行される。なお、保存用データメモリ３４に既に歩数データＤ１０が記憶されているときには、ステップＳ１６で生成された歩数データＤ１０がこの歩数データＤ１０に追加されて記憶される。
【０１０９】
続いて、ＣＰＵ３１は、保存用データメモリ３４に記憶されている全ての歩数データＤ１０を読み出して、この歩数データＤ１０を保有コインへと変換する処理（以下「コイン変換処理」と記載する）を実行する（Ｓ１７）。なお、このコイン変換処理についての詳細は、図１４を用いて後述する。そして、ＣＰＵ３１は、コレクション画像Ｇ１のうち未完成の画像があるかを判断する（Ｓ１８）。この判断は、全ての取得ピース情報Ｄ７が記憶されているかどうかで判断される。コレクション画像Ｇ１のうち未完成の画像がないと判断したときには（Ｓ１８でＮＯ）、ＣＰＵ３１は本処理をステップＳ１に戻す。一方、レクション画像Ｇ１のうち未完成の画像があると判断したときには（Ｓ１８でＹＥＳ）、ＣＰＵ３１は、未完成のコレクション画像Ｇ１を完成させるべく以下のステップＳ１９以降の処理を実行する。すなわち、ＣＰＵ３１は、受信ボックス３２３に本文データＤ４が記憶されているかどうかを判断する（Ｓ１９）。
【０１１０】
受信ボックス３２３に本文データＤ４が記憶されていると判断したとき（Ｓ１９でＹＥＳ）、ＣＰＵ３１は受信ボックス３２３に記憶されている本文データＤ４のうち１の本文データＤ４を選択的に読み出す（Ｓ２０）。そして、本文データＤ４に含まれるピース情報Ｄ５を取得する。そして、ＣＰＵ３１は、取得したピース情報Ｄ５と同一の取得ピース情報Ｄ７が取得ピース情報記憶領域３２２に記憶されてなければ、このピース情報Ｄ５を取得ピース情報Ｄ７として取得ピース情報記憶領域３２２に記憶させる（Ｓ２１）。なお、取得したピース情報Ｄ５と同一の取得ピース情報Ｄ７が取得ピース情報記憶領域３２２に記憶されていれば、このピース情報Ｄ５が破棄される。そして、ステップＳ２１で処理された本文データＤ４は受信ボックス３２３から削除される、この後、ＣＰＵ３１は、ステップＳ２１で新たに取得した取得ピース情報Ｄ７に基づくピース画像Ｇ２を上側ＬＣＤ２２に表示するための表示処理を実行する（Ｓ２２）。
【０１１１】
図１２は、ステップＳ２２の表示処理によって表示される画面図の一例を示す図である。この画面図では、新たに取得されたピース画像Ｇ２に対応するコレクション画像Ｇ１が表示される。それとともに、この画面図には、新たに取得されたピース画像Ｇ２がコレクション画像Ｇ１に組み込まれない状態で画面の右下端に表示される。この後、この新たに取得されたピース画像Ｇ２が、コレクション画像Ｇ１の方向に移動して、当該コレクション画像Ｇ１に組み込まれるアニメーションが表示される。
【０１１２】
図９に戻って、ＣＰＵ３１は、新たに完成したコレクション画像Ｇ１が存在するかどうかを判断する（Ｓ２３）。ここで、新たに完成したコレクション画像Ｇ１が存在すると判断したときには（Ｓ２３でＹＥＳ）、ＣＰＵ３１は、コレクション画像Ｇ１の完成を示す演出画面を上側ＬＣＤ２２に表示させるための表示処理を実行する（Ｓ２４）。この後、ＣＰＵ３１は、コレクション画像Ｇ１のうち未完成の画像があるかを判断する（Ｓ２５）。コレクション画像Ｇ１のうち未完成の画像がないと判断したときには（Ｓ２５でＮＯ）、ＣＰＵ３１は本処理をステップＳ１に戻す。
【０１１３】
一方、コレクション画像Ｇ１のうち未完成の画像があると判断したときには（Ｓ２５でＹＥＳ）、ＣＰＵ３１は受信ボックス３２３に本文データＤ４が記憶されているかどうかを判断する（Ｓ２６）。ここで、受信ボックス３２３に本文データＤ４が記憶されていると判断したときには（Ｓ２６でＹＥＳ）、ＣＰＵ３１はステップＳ２０に処理を戻し、受信ボックス３２３に記憶されている本文データＤ４がなくなるまで（Ｓ２６でＮＯ）、又は全てのコレクション画像Ｇ１が完成するまで（Ｓ２５でＮＯ）、ステップＳ２０〜Ｓ２２の処理が実行される。
【０１１４】
なお、ステップＳ２３でＮＯと判断したとき、すなわち、新たに完成したコレクション画像Ｇ１が存在しないと判断したときにも（Ｓ２３でＮＯ）、ＣＰＵ３１は上記ステップＳ２６の処理を実行する。
【０１１５】
次に、ＣＰＵ３１が受信ボックス３２３に本文データＤ４が記憶されていないと判断したとき（Ｓ２６でＮＯ）の処理を説明する。図１０を参照して、このときには、ＣＰＵ３１はピース画像購入画面の表示処理を実行する（Ｓ２７）。このピース画像購入画面は、保有コインを用いてピース画像Ｇ２を購入するための操作をユーザにガイドする画面である。例えば、「保有コインでピース画像Ｇ２を購入することができるよ」といったような、ピース画像Ｇ２の購入が許可されていることを示す文が表示される。
【０１１６】
次に、ＣＰＵ３１は、保有コイン数を消費してピース画像Ｇ２を購入する指示をユーザから受け付けたかどうかを判断する（Ｓ２８）。この指示は、例えば、タッチパネルや操作ボタン１４等を用いて行われる。ここで、保有コイン数を消費してピース画像Ｇ２を購入する指示をユーザから受け付けたと判断したときには（Ｓ２８でＹＥＳ）、ＣＰＵ３１は保有コイン数を減して、ピース画像Ｇ２をゲーム装置１に取得させるための処理（ピース画像購入処理）を実行する（Ｓ２９）。このピース画像購入処理についての詳細は、図１５を用いて後述する。
【０１１７】
この後、ＣＰＵ３１は、ステップＳ２９で新たに取得した取得ピース情報Ｄ７に基づくピース画像Ｇ２を上側ＬＣＤ２２に表示するための表示処理を実行する（Ｓ３０）。図１３は、ステップＳ３０の表示処理によって表示される画面図の一例を示す図である。この画面図では、新たに取得されたピース画像Ｇ２に対応するコレクション画像Ｇ１が表示される。それとともに、この画面図には、新たに取得されたピース画像Ｇ２がコレクション画像Ｇ１に組み込まれない状態で画面の右下端に表示される。この後、この新たに取得されたピース画像Ｇ２が、コレクション画像Ｇ１の方向に移動して、当該コレクション画像Ｇ１に組み込まれるアニメーションが表示される。なお、図１２で示す画面図（ステップＳ２２の処理によって表示される画面図）と図１３で示す画面図との違いは、保有コイン数Ｇ４で示す数が、図３で示すメイン画面の表示時よりも減少している点である。
【０１１８】
この後、ＣＰＵ３１は、新たに完成したコレクション画像Ｇ１が存在するかどうかを判断する（Ｓ３１）。ここで、新たに完成したコレクション画像Ｇ１が存在すると判断したときには（Ｓ３１でＹＥＳ）、ＣＰＵ３１は、コレクション画像Ｇ１の完成を示す演出画面を上側ＬＣＤ２２に表示させるための表示処理を実行する（Ｓ３２）。この後、ＣＰＵ３１は本処理をステップＳ１に戻す。一方、新たに完成したコレクション画像Ｇ１が存在しないと判断したときには（Ｓ３１でＮＯ）、ステップＳ３２の処理を行わず（演出画面の表示処理を行わず）、ＣＰＵ３１は本処理をステップＳ１に戻す。
【０１１９】
続いて、保有コイン数を消費してピース画像Ｇ２を購入する指示をユーザから受け付けていないと判断したとき（Ｓ２８でＮＯ）の処理を説明する。このときには、上記ステップＳ２９〜Ｓ３２の処理を実行することなく、すなわち、保有コイン数を消費して新たなピース画像Ｇ２を取得することに関する処理を実行することなく、ＣＰＵ３１は本処理をステップＳ１に戻す。
【０１２０】
上述したように、本実施形態では、ステップＳ２６でＮＯと判断するまで、すなわち、受信ボックス３２３に記憶されている全てのピース情報Ｄ５が処理されるまでは、ＣＰＵ３１はステップＳ２７以降の処理を実行しない。このため、「すれちがい通信」によって新たに取得したピース画像Ｇ２だけでは全てのコレクション画像Ｇ１の完成に至らないときに限って、保有コイン数を消費してのピース画像Ｇ２の購入が許可されることになる。この様に、保有コイン数を消費してのピース画像Ｇ２の購入は、あくまで「すれちがい通信」によるピース画像Ｇ２の取得の不足を補完するために行われるのである。
【０１２１】
次に、ステップＳ１９（図９を参照）でＮＯと判断されたときに実行される処理について説明する。このときとは、「すれちがい通信」によって１つのピース情報Ｄ５も取得し得なかったときである。このときには、ＣＰＵ３１は、上記ステップＳ２７以降の処理、すなわち、保有コイン数ａを消費して新たなピース画像Ｇ２を取得することに関する処理を実行する。この様に、「すれちがい通信」によって全くピース画像Ｇ２を取得することができなかったときにも、「すれちがい通信」によるピース画像Ｇ２の取得の不足を補完するために、保有コイン数ａを消費してのピース画像Ｇ２の購入が許可されることになる。
【０１２２】
以下、図６及び図１４を用いて上記ステップＳ１７（図９を参照）のコイン変換処理を説明する。図１４は、コイン変換処理の一例を示すフローチャートである。まず、ＣＰＵ３１は、コイン数データＤ１１の示す保有コイン数ａが３００未満かどうかを判断する（Ｓ１７１）。保有コイン数ａが３００未満でないと判断したときには（Ｓ１７１でＮＯ）、ＣＰＵ３１はコイン変換処理を終了させて図９のメインルーチンに処理を戻す。この理由は、保有コイン数ａの上限は３００枚であるためである。保有コイン数ａが３００未満であると判断したときには（Ｓ１７１でＹＥＳ）、ＣＰＵ３１は、全ての歩数データＤ１０を保存用データメモリ３４から読み出して、全ての歩数データＤ１０の値を加算して歩数累計ｂを算出し、歩数累計ｂが１００以上かを判断する（Ｓ１７２）。歩数累計ｂが１００以上ではないと判断したときには（Ｓ１７２でＮＯ）、ＣＰＵ３１はコイン変換処理を終了させて図９のメインルーチンに処理を戻す。この理由は、歩数累計ｂが１００ないと、歩数データＤ１０の値を１つのコインにも変換することができないためである。
【０１２３】
一方、歩数累計ｂが１００以上であると判断したときには（Ｓ１７２でＹＥＳ）、ＣＰＵ３１は歩数データＤ１１の値を前回コインに変換した日（前回コイン化した日）が現在日（今日）であるかを判断する（Ｓ１７３）。この判断は日付データを参照して行われる。この日付データは、ピース集めアプリケーションの起動時に初期値が設定されて、保存用データメモリ３４に記憶される。なお、日付データに初期値が設定されているときには、ステップＳ１７３でＹＥＳと判断される。そして、コイン変換処理において歩数データＤ１０の値を保有コイン数ａに変換する処理を行ったときに、後述するステップＳ１８４において日付データは当該処理の日を示すように更新される。
【０１２４】
前回コイン化した日が現在日（今日）であると判断したときには（Ｓ１７３でＹＥＳ）、ＣＰＵ３１は歩数累計ｂを１００で除算してコイン数ｃを算出する（Ｓ１７４）。そして、ＣＰＵ３１は保存用データメモリ３４に記憶されている全ての歩数データＤ１０を削除する（Ｓ１７５）。この後、ＣＰＵ３１は、当日分コイン数ｄをメインメモリ３２から読み出して、当日分コイン数ｄにコイン数ｃを加算してコイン数ｅを算出し（Ｓ１７６）、算出したコイン数ｅが１０以上かを判断する（Ｓ１７７）。なお、当日分コイン数ｅは、当日に取得したコインの数であり、ピース集めアプリケーションの起動時に初期値である０が設定されて、保存用データメモリ３４に記憶されている。
【０１２５】
そして、算出したコイン数ｅが１０以上でないと判断したときには（Ｓ１７７でＮＯ）、ＣＰＵ３１はコイン数ｃを保有コイン数ａに加算して保有コイン数データＤ１１を更新する（Ｓ１７８）。そして、ＣＰＵ３１は当日分コイン数ｄにコイン数ｅを代入する（Ｓ１７９）。この後、ＣＰＵ３１はステップＳ１８２に処理を進める。一方、算出したコイン数ｅが１０以上であると判断したときには（Ｓ１７７でＹＥＳ）、ＣＰＵ３１は、１０から当日分コイン数ｄを除いた値を保有コイン数ａに加算して、コイン数データＤ１１を更新する（Ｓ１８０）。この理由は、１日で取得可能なコイン枚数の上限が１０枚だからである。この後、ＣＰＵ３１は当日分コイン数ｄに１０を代入する（Ｓ１８１）。この後、ＣＰＵ３１はステップＳ１８２に処理を進める。
【０１２６】
ステップＳ１８２では、ＣＰＵ３１はコイン数データＤ１１の示す保有コイン数ａが３００未満かどうかを判断する（Ｓ１８２）。保有コイン数ａが３００以上であると判断したときには（Ｓ１８２でＮＯ）、ＣＰＵ３１は保有コイン数ａに３００を代入して保有コイン数データＤ１１を更新する（Ｓ１８３）。この後、ＣＰＵ３１はステップＳ１８４に処理を進める。一方、保有コイン数ａが３００未満であると判断したときには（Ｓ１８２でＹＥＳ）、ＣＰＵ３１はステップＳ１８３を実行することなく処理をステップＳ１８４に進める。
【０１２７】
ステップＳ１８４では、ＣＰＵ３１は保存用データメモリ３４に記憶されている日付データを現在日に更新する（Ｓ１８４）。この後、ＣＰＵ３１は、コイン変換処理を終了させて図９のメインルーチンに処理を戻す。
【０１２８】
次に、ステップＳ１７３でＮＯと判断したとき、すなわち、ＣＰＵ３１は前回歩数データＤ１１の値をコインに変換した日が現在日（今日）でないと判断したとき（Ｓ１７３でＮＯ）の、ＣＰＵ３１の処理を説明する。このときには、ＣＰＵ３１は、各歩数データＤ１０に含まれる日付を参照して、現在日の日付を含む歩数データＤ１０の値のみを加算した歩数累計ｆを算出する。そして、ＣＰＵ３１は、歩数累計ｆを１００で除算してコイン数ｇを算出する（Ｓ１８５）。この後、ＣＰＵ３１は保存用データメモリ３４に記憶されている全ての歩数データＤ１０を削除する（Ｓ１８６）。
【０１２９】
そして、ＣＰＵ３１はコイン数ｇが１０以上かを判断する（Ｓ１８７）。ここで、コイン数ｇが１０以上でないと判断したときには（Ｓ１８７でＮＯ）、ＣＰＵ３１はコイン数ｇを保有コイン数ａに加算して保有コイン数データＤ１１を更新する（Ｓ１８８）。そして、ＣＰＵ３１は当日分コイン数ｄにコイン数ｇを代入する（Ｓ１８９）。この後、ＣＰＵ３１は上述したステップＳ１８２に処理を進める。一方、コイン数ｇが１０以上であると判断したときには（Ｓ１８７でＹＥＳ）、ＣＰＵ３１は、１０を保有コイン数ａに加算して、コイン数データＤ１１を更新する（Ｓ１９０）。この理由は、１日で取得可能なコイン枚数の上限が１０枚だからである。また、ＣＰＵ３１は当日分コイン数ｄに１０を代入する（Ｓ１８１）。この後、ＣＰＵ３１は上述したステップＳ１８２に処理を進める。
【０１３０】
すなわち、ステップＳ１８２の実行によって、保有コイン数ａが３００未満かどうか判断され（Ｓ１８２）、保有コイン数ａが３００以上であると判断されたときには（Ｓ１８２でＮＯ）、保有コイン数ａに３００が代入されて保有コイン数データＤ１１が更新される（Ｓ１８３）。そして、ステップＳ１８４において、日付データが現在日に更新されて、コイン変換処理が終了されて図９のメインルーチンに処理が戻される。一方、保有コイン数ａが３００未満であると判断されたときには（Ｓ１８２でＹＥＳ）、ステップＳ１８３が実行されずに、ステップＳ１８４において、日付データが現在日に更新されて、コイン変換処理が終了されて図９のメインルーチンに処理が戻される。
【０１３１】
次に、図６及び図１５を用いてステップＳ２９のピース画像購入処理を説明する。図１５は、ピース画像購入処理の一例を示すフローチャートである。まず、ＣＰＵ３１は、保存用データメモリ３４からコイン数データＤ１１を読み出して、コイン数データＤ１１の示す保有コイン数ａが所定値以上であるかを判断する（Ｓ２９１）。ここで、保有コイン数ａが所定値（例えば１）未満であると判断したときには（Ｓ２９１でＮＯ）、ＣＰＵ３１はピース画像購入処理を終了させて図９のメインルーチンに処理を戻す。この理由は、ピース画像Ｇ２の購入のためには保有コイン数ａが所定値必要だからである。
【０１３２】
一方、保有コイン数ａが所定値（例えば１）以上であると判断したときには（Ｓ２９１でＹＥＳ）、ＣＰＵ３１は前回ピース画像Ｇ２を購入した日は現在日であるかを判断する（Ｓ２９２）。この判断は、ピース取得日データを参照することで行う。このピース取得日データは、本ピース画像購入処理においてピース画像Ｇ２を購入した日を示し、ピース集めアプリケーションの起動時には初期値が設定された保存用データメモリ３４に記憶される。なお、ピース取得日データに初期値が設定されているときには、ステップＳ２９２で必ずＮＯと判断される。そして、ピース取得日データは、本ピース画像購入処理において取得ピース情報Ｄ７を生成したときに、後述のステップＳ２９５において本ピース画像購入処理の日を示すように更新される。
【０１３３】
前回ピース画像Ｇ２を購入した日は現在日であると判断したときには（Ｓ２９２でＹＥＳ）、ＣＰＵ３１はピース画像購入処理を終了させて図９のメインルーチンに処理を戻す。この理由は、ピース画像Ｇ２の購入が１日につき１回に限定されているからである。なお、ピース画像Ｇ２の購入が、必ずしも１日につき１回に限定されていなくてもよく、１日につき２回以上の所定回数に限定されていてもよい。この場合には、ゲーム装置１は、購入回数を記憶し、この購入回数とピース取得日データを参照して、ピース画像Ｇ２の現在日における購入回数が所定回数以内かを判断すればよい。また、無制限にピース画像Ｇ２の購入が許可されてもよい。
【０１３４】
そして、前回ピース画像Ｇ２を購入した日は現在日でないと判断したときには（Ｓ２９２でＮＯ）、ＣＰＵ３１は、所定の乱数発生処理を実行することでピース情報Ｄ５を生成する（Ｓ２９３）。なお、ステップＳ２９３における処理の内容は図８のステップＳ２の処理と同じである。すなわち、ステップＳ２９３においても、各ピース画像Ｇ２に対応するピースＩＤの生成率は均等ではない。また、予め保存用データメモリ３４に記憶されている地域ＩＤに対応するコレクション画像ＩＤが図７ＢのテーブルＴを参照して取得され、このコレクション画像ＩＤがピース情報Ｄ５に含められる。そして、ＣＰＵ３１は、生成したピース情報Ｄ５と同一の取得ピース情報Ｄ７が取得ピース情報記憶領域３２２に記憶されてなければ、このピース情報Ｄ５を取得ピース情報Ｄ７として保存用データメモリ３４に記憶させる（Ｓ２９４）。なお、生成したピース情報Ｄ５と同一の取得ピース情報Ｄ７が取得ピース情報記憶領域３２２に記憶されていれば、このピース情報Ｄ５が破棄される。
【０１３５】
続いて、ＣＰＵ３１は、保存用データメモリ３４に記憶されているピース取得日データを現在日で更新する（Ｓ２９５）。この後、ＣＰＵ３１は、保有コイン数ａを所定値だけ減少して、コイン数データＤ１１を更新する（Ｓ２９６）。ＣＰＵ３１はピース画像購入処理を終了させて図９のメインルーチンに処理を戻す。
【０１３６】
次に、図１６を用いてマイコン３８の実行する歩数カウント処理を説明する。図１６は、歩数カウント処理の一例を示すフローチャートである。この歩数カウント処理は、保存用データメモリ３４等に記憶される歩数カウントプログラムの実行によって行われる。具体的には、図８のステップＳ９においてＣＰＵ３１から歩数カウント処理の実行が指示されたときに、マイコン３８は保存用データメモリ３４から歩数カウントプログラムを読み出してメモリ３８ａに記憶し、当該プログラムを実行する。これによって、歩数カウント処理の実行が開示される。また、歩数カウント処理は、図９のステップＳ１５においてＣＰＵ３１から歩数カウント処理の終了が指示されたときに終了される。
【０１３７】
まず、マイコン３８は、歩数カウント値を初期値でメモリ３８ａに設定する（Ｓ４１）。そして、マイコン３８はＲＴＣ３８ｂのタイマ機能を作動させる（Ｓ４２）。次に、マイコン３８は加速度センサ４４からの信号に基づいて所定値以上の加速度を検出したかを判断する（Ｓ４３）。ここで、所定値以上の加速度を検出したと判断したときには（Ｓ４３でＹＥＳ）、歩数を検出したとして、マイコン３８はメモリ３８ａの歩数カウント値を１インクリメントする（Ｓ４４）。次に、マイコン３８はタイマのカウント値に基づいて第１単位時間（例えば５分）が経過したかを判断する（Ｓ４５）。なお、本ステップＳ４５においては、タイマ機能が起動（ステップＳ４２）又はリセット（ステップＳ５０）されてから第１単位時間が経過したとき、及び前回本ステップＳ４５でＹＥＳと判断されてから第１単位時間が経過したときに、ＹＥＳと判断される。
【０１３８】
第１単位時間（例えば５分）が経過したと判断したときには（Ｓ４５でＹＥＳ）、マイコン３８は、歩数カウント値に日付を付加して歩数データＤ１０としてメモリ３８ａに記憶させ（Ｓ４６）、歩数カウント値をリセットする（Ｓ４７）。この後、マイコン３８は処理をステップＳ４８に進める。一方、第１単位時間が経過していないと判断したときには（Ｓ４５でＮＯ）、マイコン３８は上記ステップＳ４６及びＳ４７を実行せずに、処理をステップＳ４８に進める。
【０１３９】
ステップＳ４８において、マイコン３８は、タイマのカウント値に基づいて第２単位時間（例えば３０分）が経過したかを判断する（Ｓ４８）。なお、この判断は、タイマのカウント値の値が第２単位時間に対応する所定値を超えているかどうかで行われる。そして、第２単位時間が経過したと判断したときには（Ｓ４８でＹＥＳ）、マイコン３８は、停止中のＣＰＵ３１を起動させる。そして、ＣＰＵ３１の指示の下、マイコン３８ａは保存用データメモリ３４に電力の供給を開始する。そして、マイコン３８はメモリ３８ａに記憶されている全ての歩数データＤ１０を保存用データメモリ３４に出力する（Ｓ４９）。この後、マイコン３８は、再度保存用データメモリ３４への電力の供給を停止し、ＣＰＵ３１を停止させる。この様に、スリープ中であっても、保存用データメモリ３４に歩数データＤ１０を順次記憶させていくことができる。そして、マイコン３８は、タイマのカウント値をリセットする（Ｓ５０）。この後、マイコン３８はステップＳ５２に処理を進める。一方、第２単位時間が経過していないと判断したときには（Ｓ４８でＮＯ）、マイコン３８はステップ５１に処理を進める。
【０１４０】
ステップＳ５１では、マイコン３８はＣＰＵ３１から歩数カウント処理の終了指示がなされたかを判断する（Ｓ５１）。ＣＰＵ３１から歩数カウント処理の終了指示がなされたと判断したときには（Ｓ５１でＹＥＳ）、マイコン３８は歩数カウント処理を終了させる。
【０１４１】
また、ＣＰＵ３１から歩数カウント処理の終了指示がなされていないと判断したときには（Ｓ５１でＮＯ）、マイコン３８は処理をステップＳ４３に戻す。なお、ステップＳ５１でＹＥＳと判断されるまで、すなわち、ＣＰＵ３１から歩数カウント処理の終了指示がなされるまで、ステップＳ４３〜Ｓ５０の処理が繰り返し実行されることになる。
【０１４２】
以下に図５Ａ〜図５Ｃ、図６及び図１７を用いて図８のステップＳ１２で実行されるすれちがい通信処理を説明する。図１７は、すれちがい通信処理の一例を示すフローチャートである。ゲーム装置１と他のゲーム装置１がそれぞれすれちがい通信処理を実行することでこれらのゲーム装置１の間で「すれちがい通信」が行われる。そして、すれちがい通信処理は、所定周期毎に（例えば数秒に１回の短い時間間隔で）繰り返し実行される。
【０１４３】
まず、無線通信モジュール３７が応答時刻から所定時間経過したＭＡＣアドレスを自メモリに記憶しているかどうかを判断する（Ｓ１２１）。無線通信モジュール３７は、応答時刻（情報フレームＤ３の送信または受信を行ったとき）から所定時間経過したＭＡＣアドレスを記憶していると判断したときには（Ｓ１２１でＹＥＳ）、このＭＡＣアドレスを削除し（Ｓ１２２）、ＭＡＣアドレスを記憶していないと判断したときには（Ｓ１２１でＮＯ）、ＭＡＣアドレスを削除することなく、続くステップＳ１２３に処理を進める。なお、送信元ＭＡＣアドレスと応答時刻は、ステップＳ１３１で応答時刻から所定時間同じ通信相手との通信を禁止するために記憶されている。この送信元ＭＡＣアドレスと応答時刻はステップＳ１２８によって記憶されている。なお、応答時刻から所定期間経過したときにはステップＳ１２１、１２２で送信元ＭＡＣアドレスと応答時刻が削除されて通信の禁止が解除されるのである。
【０１４４】
次に、無線通信モジュール３７は、すれちがいアプリケーションを特定する識別ＩＤを含めて図５Ａで示す接続要求フレームＤ１を作成してブロードキャストで送信する（Ｓ１２３）。なお、接続要求フレームＤ１及び接続応答フレームＤ２は本処理の実行前に予め無線通信モジュール３７の内部メモリに記憶されている。この後、無線通信モジュール３７は図５Ｂで示す接続応答フレームＤ２を受信したかどうかを判断する（Ｓ１２４）。無線通信モジュール３７は、接続応答フレームＤ２を受信したと判断したときには（Ｓ１２４でＹＥＳ）、この接続応答フレームＤ２に含まれる識別ＩＤが自機の内部メモリに記憶する識別ＩＤと一致するかどうかを判断する（Ｓ１２５）。なお、無線通信モジュール３７は、電源がオンされたときに自メモリ（無線通信モジュール３７の内部メモリ）に識別ＩＤを記憶しておき、この識別ＩＤを用いてステップＳ１２５の判断を行う。ここで、無線通信モジュール３７は、接続応答フレームＤ２に含まれる識別ＩＤが自機の内部メモリに記憶する識別ＩＤと一致しないと判断したときには（Ｓ１２５でＮＯ）、本すれちがい通信処理を終了させる。
【０１４５】
一方、無線通信モジュール３７は、接続応答フレームＤ２に含まれる識別ＩＤが自機の内部メモリに記憶する識別ＩＤと一致すると判断したときには（Ｓ１２５でＹＥＳ）、無線通信モジュール３７は送信ボックス３２４から本文データＤ４の読み出しをＣＰＵ３１に指示し、ＣＰＵ３１は指示を実行する（Ｓ１２６）。なお、ゲーム装置１はスリープ状態でありＣＰＵ３１が起動していないので、無線通信モジュール３７はステップＳ１２７の前にＣＰＵ３１を起動させる。次に、無線通信モジュール３７は、ＣＰＵ３１が読み出した本文データＤ４を含めて図５Ｃで示す情報フレームＤ３を生成し、この情報フレームＤ３を接続応答フレームＤ２の送信元に送信する（Ｓ１２７）。
【０１４６】
この後、無線通信モジュール３７は接続応答フレームＤ２の送信元ＭＡＣアドレスと応答時刻（現在時刻）を自メモリに記憶する（Ｓ１２８）。この後、無線通信モジュール３７は処理をステップＳ１２９に進める。
【０１４７】
ステップＳ１２９では、無線通信モジュール３７は情報フレームＤ３の受信処理を行っているかどうかを判断し（Ｓ１２９）、受信処理しているときには（Ｓ１２９でＹＥＳ）、本すれちがい通信処理を終了させ、受信処理していないときには（Ｓ１２９でＮＯ）、後述のステップＳ１３４を実行して情報フレームＤ３の受信のための処理を実行する。「すれちがい通信」を行う２つのゲーム装置１は情報フレームＤ３を相互に送受信し合うため、本ゲーム装置１が未だ情報フレームＤ３を受信していなければステップＳ１３４に処理が進められるのである。なお、ゲーム装置１が、接続応答フレームＤ２の送信側であるときには、情報フレームＤ３の受信のための処理を未だ行っていないため、ステップＳ１２９でＮＯと判断して、後述のステップＳ１３４を実行する。一方、ゲーム装置１が接続応答フレームＤ２の受信側であるときには（後述のステップＳ１３７でＮＯと判断されてステップＳ１２５〜Ｓ１２９が実行されたときには）、既に情報フレームＤ３の受信の処理を行っているため、ステップＳ１２９でＹＥＳと判断して、本すれちがい通信処理を終了させる。
【０１４８】
次に、無線通信モジュール３７が接続応答フレームＤ２を受信していないと判断したとき（Ｓ１２４でＮＯのとき）の処理を説明する。無線通信モジュール３７は接続要求フレームＤ１を受信したかどうかを判断する（Ｓ１３０）。接続要求フレームＤ１を受信したと判断したときには（Ｓ１３０でＹＥＳ）、無線通信モジュール３７は接続要求フレームＤ１の送信元ＭＡＣアドレスを自メモリに記憶しているかどうかを判断する（Ｓ１３１）。接続要求フレームＤ１の送信元ＭＡＣアドレスを自メモリに記憶していないと判断したときには（Ｓ１３１でＮＯ）、無線通信モジュール３７は接続要求フレームＤ１に含まれる識別ＩＤが自メモリで記憶する識別ＩＤと一致するかどうかを判断する（Ｓ１３２）。
【０１４９】
そして、接続要求フレームＤ１に含まれる識別ＩＤが自メモリで記憶する識別ＩＤと一致すると判断したときには（Ｓ１３２でＹＥＳ）、無線通信モジュール３７は、自機の記憶する識別ＩＤを含めた接続応答フレームＤ２を接続要求フレームＤ１の送信元に送信する（Ｓ１３３）。この後、無線通信モジュール３７は後述のステップＳ１３４を実行する。
【０１５０】
なお、接続要求フレームＤ１を受信していないと判断したとき（Ｓ１３０でＮＯ）には無線通信モジュール３７は本すれちがい通信処理を終了させる。また、接続要求フレームＤ１の送信元ＭＡＣアドレスを自メモリに記憶していると判断したときには（Ｓ１３１でＹＥＳ）、無線通信モジュール３７は本すれちがい通信処理を終了させる。これによって、同じ通信相手と短期間（応答時刻から所定時間）に何度も通信をしてしまうことを防止することができる。そして、接続要求フレームＤ１に含まれる識別ＩＤが自メモリで記憶する識別ＩＤと一致していないと判断したとき（Ｓ１３２でＮＯ）には、無線通信モジュール３７は本すれちがい通信処理を終了させる。
【０１５１】
次に、ステップＳ１３４の処理を説明する。無線通信モジュール３７は情報フレームＤ３を受信したかどうかを判断する（Ｓ１３４）。ここで、情報フレームＤ３を受信しなかったときには（Ｓ１３４でＮＯ）、無線通信モジュール３７は本すれちがい通信処理を終了させる。一方、情報フレームＤ３を受信したときには（Ｓ１３４でＹＥＳ）、無線通信モジュール３７は情報フレームＤ３の本文データＤ４を保存用データメモリ３４の受信ボックス３２３に記憶するようＣＰＵ３１に指示し、ＣＰＵ３１は指示を実行する（Ｓ１３５）。なお、ゲーム装置１はスリープ状態であり、ＣＰＵ３１が起動していないため、無線通信モジュール３７はステップＳ１３５の前にＣＰＵ３１を起動させる。なお、受信ボックス３２３に既に本文データＤ４が記憶されているときには、既に記憶されている本文データＤ４に追加して新しい本文データＤ４が記憶される。また、ＣＰＵ３１は本文データＤ４に付加して受信日時Ｄ８を受信ボックス３２３に記憶させる。
【０１５２】
この後、無線通信モジュール３７は、通信相手のＭＡＣアドレス（情報フレームＤ３の送信元のＭＡＣアドレス）と応答時刻（現在時刻）を自メモリに記憶する（Ｓ１３６）。ここで記憶する送信元ＭＡＣアドレスと応答時刻は、ステップＳ１２５で記憶される情報と同様に応答時刻から所定時間同じ通信相手との通信を禁止するために用いられる。
【０１５３】
次に、無線通信モジュール３７は既に情報フレームＤ３の送信処理を行ったかどうかを判断する（Ｓ１３７）。無線通信モジュール３７は、既に情報フレームＤ３の送信処理を行ったと判断したときには（Ｓ１３７でＹＥＳ）、本すれちがい通信処理を終了させ、この送信処理を行っていないと判断したときには（Ｓ１３７でＮＯ）、処理をステップＳ１２５に進めて情報フレームＤ３の送信のための処理を実行する。「すれちがい通信」を行う２つのゲーム装置１は情報フレームＤ３を相互に送受信し合うため、本ゲーム装置１が未だ情報フレームＤ３を送信していなければステップＳ１２５に処理が進められるのである。
【０１５４】
すなわち、ゲーム装置１が、接続応答フレームＤ２の送信側であるときには、情報フレームＤ３の送信のための処理を未だ行っていないため、ステップＳ１３７でＮＯと判断して、上述のステップＳ１２５を実行する。一方、ゲーム装置１が接続応答フレームＤ２の受信側であるときには（ステップＳ１２９でＮＯと判断されてステップＳ１３４〜Ｓ１３７が実行されたときには）、既に情報フレームＤ３の送信の処理を行っているため、ステップＳ１３７でＹＥＳと判断して、本すれちがい通信処理を終了させる。
【０１５５】
なお、上述したすれちがい通信処理はあくまで一例であり、ゲーム装置１が他のゲーム装置１との間でピース情報を送受信することができれば如何なる処理を採用してもよい。
【０１５６】
上述したように、第１の実施形態では、「すれちがい通信」によってピース画像Ｇ２を取得する取得方法の他に、ゲーム装置１の移動に応じて、すなわち、ゲーム装置１のユーザの歩数に応じてピース画像Ｇ２を取得する取得方法によって、ゲーム装置１がピース画像Ｇ２を取得することができる。これによって、他のゲーム装置１と「すれちがい通信」をすることができない状況にあるときでも、ゲーム装置１がピース画像Ｇ２を取得することができる。
【０１５７】
また、「すれちがい通信」によってピース画像Ｇ２を取得する場合と同様に、ユーザがゲーム装置１を携帯して移動する程、ゲーム装置１がピース画像Ｇ２を取得することができる。このため、この様な「すれちがい通信」によるピース画像Ｇ２の取得状況と似た状況でゲーム装置１にピース画像Ｇ２を取得させることができる。この様にして、ゲーム装置１が「すれちがい通信」によるピース画像Ｇ２を取得することができない状況であっても、ユーザは「すれちがい通信」によるピース画像Ｇ２を取得するような面白さを体感することができる。
【０１５８】
そして、本実施形態では、「すれちがい通信」によってピース画像Ｇ２が全く取得することができないとき、及び、「すれちがい通信」によって取得したピース画像Ｇ２では全てのコレクション画像Ｇ１を完成させることができないときに、１日に限られた回数に限って、ゲーム装置１のユーザの歩数に応じてピース画像Ｇ２を取得する取得方法によって、ゲーム装置１がピース画像Ｇ２を取得することができる。この様に、あくまで、「すれちがい通信」によるピース画像Ｇ２の取得が不足しているときに、この不足を補うために補完的に、ゲーム装置１のユーザの歩数に応じてピース画像Ｇ２を取得する取得方法によって、ゲーム装置１がピース画像Ｇ２を取得することができる。
【０１５９】
（第２の実施形態）
以下に、本発明の第２の実施形態を説明する。第２の実施形態では、本発明をゲーム装置１に適用した点、及び複数のゲーム装置１で通信システムを構成する点については第１の実施形態と同様である。また、ゲーム装置１の構成についても、図１及び図２で示す第１の実施形態の構成と同じであるため、説明を省略する。
【０１６０】
第２の実施形態では、ゲーム装置１がピース集めアプリケーションを実行する代わりに勇者バトルアプリケーションを実行する点が、第１の実施形態と異なっている。勇者バトルアプリケーションは、ゲーム装置１に勇者バトル処理を実行させることで、ユーザに勇者バトルゲームを行わせるためのプログラムである。以下に、図１８及び図１９を用いて、第２の実施形態に係る勇者バトルゲームの内容を説明する。
【０１６１】
図１８は、勇者バトルゲームで表示されるメイン画面及び操作画面の一例を示す図である。このメイン画面及び操作画面は、勇者バトルアプリケーションを起動したときに最初に表示され、メイン画面は上側ＬＣＤ２２に表示され、操作画面は下側ＬＣＤ１２に表示される。メイン画面には、敵キャラクタの画像Ｇ１０（以下、「敵キャラクタ画像Ｇ１０」と記載する）と、保有コイン数Ｇ４が表示される。
【０１６２】
敵キャラクタＧ１０は、複数種類用意されるとともに、予め順番が付与されている。そして、敵キャラクタＧ１０は１体のみがメイン画面に表示され、１の敵キャラクタＧ１０が倒されれば、次の順番の敵キャラクタＧ１０が表示されるようになっている。そして、最後の順番の敵キャラクタ画像Ｇ１０がボスキャラクタの画像であり、このボスキャラクタを倒せば、ユーザが勇者バトルゲームを攻略する（ゲームクリアする）ことができる。保有コイン数Ｇ４は第１の実施形態と同じであるため説明を省略する。なお、本実施形態では、敵キャラクタＧ１０に順番が付与されているが、ランダムに順次敵キャラクタＧ１０が選択されて表示される構成であってもよい。また、敵キャラクタ画像Ｇ１０は必ずしも複数種類用意される必要はなく１体のみであってもよい。
【０１６３】
この敵キャラクタを倒す方法は、まず、「すれちがい通信」によってゲーム装置１が取得したキャラクタ情報を用いて倒す方法がある。ゲーム装置１は第１の実施形態と同様にすれちがい通信処理を実行する。これによって、ゲーム装置１は、他のゲーム装置１に対して自機で生成したキャラクタに関するキャラクタ情報を送信するとともに、他のゲーム装置１の生成したキャラクタに関するキャラクタ情報を受信する。この様にして、ゲーム装置１は、他のゲーム装置１からキャラクタ情報を取得する。
【０１６４】
なお、操作画面には、第１の実施形態と同様に、すれちがい通信操作子Ｇ６が表示される。第２の実施形態でも、すれちがい通信操作子Ｇ６が表示されている。このすれちがい通信操作Ｇ６を用いてすれちがい通信処理の実行がユーザから指示される点も第２の実施形態は第１の実施形態と同様である。
【０１６５】
以下に、図１９を用いて、ゲーム装置１が他のゲーム装置１から取得したキャラクタ情報を用いて敵キャラクタＧ１０を倒す方法を説明する。図１９は、ゲーム装置１が敵キャラクタに攻撃する様子を示すバトル画面の一例を示す図である。バトル画面には、保有コイン数Ｇ４及び敵キャラクタ画像Ｇ１０とともに、勇者キャラクタの画像Ｇ１１（以下、「勇者キャラクタ画像Ｇ１１」と記載する）が表示される。このバトル画面は上側ＬＣＤ２２に表示される。
【０１６６】
勇者キャラクタ画像Ｇ１１は、「すれちがい通信」によって受信したキャラクタ情報に基づいて生成された画像である。本実施形態では、ゲーム装置１は、所定のキャラクタ情報生成アプリケーションを実行することで、ユーザにキャラクタ情報を生成させる。ゲーム装置１は、目、口、鼻等のキャラクタを構成する各パーツ毎に複数種類の画像データ（後述のキャラクタ画像データＤ２４）を記憶する。例えば、口のパーツには、複数種類の口の画像が記憶される。キャラクタ情報は、各パーツ毎に複数種類のキャラクタ画像データＤ２４から１のキャラクタ画像データＤ２４を特定する情報である。ゲーム装置１は、キャラクタ情報で特定されるキャラクタ画像データＤ２４を組み合わせて勇者キャラクタ画像Ｇ１１を生成して表示する。
【０１６７】
なお、本実施形態では、ゲーム装置１は他のゲーム装置１との間でキャラクタ情報を送受信しているが、これに代えて勇者キャラクタ画像Ｇ１１の画像データそのものを送受信する構成であってもよい。
【０１６８】
また、第２の実施形態でも、第１の実施形態と同様に、「すれちがい通信」によるキャラクタ情報の取得の不足を補うため、ゲーム装置１は自機の移動に関する情報に基づいてキャラクタ情報を生成することができる。第２の実施形態でも、第１の実施形態と同様に、ゲーム装置１が、歩数計として機能し、この機能により検出したユーザの歩数に基づいてキャラクタ情報を生成する。ここで、第１の実施形態と同様に第２の実施形態でも、ユーザの歩数が保有コイン数ａに変換される。そして、この保有コイン数ａを消費してキャラクタ情報が購入される。
【０１６９】
本実施形態では、ゲーム装置１がキャラクタ情報を受信すると、勇者キャラクタ画像１１を生成し表示するとともに、当該勇者キャラクタに対応する攻撃値を決定する。本実施形態では、この攻撃値は、過去に同じキャラクタ情報を受信した回数（すれ違った回数）に基づいて決定され、すれ違った回数が多い程大きな値に設定される。なお、本実施形態では、すれ違った回数に基づいて勇者キャラクタの攻撃値が決定されているが、別の条件に基づいて勇者キャラクタの攻撃値を決定してもよい。また、勇者キャラクタの攻撃値は一定であってもよい。
【０１７０】
そして、敵キャラクタには限界のダメージ値が設定される。そして、ゲーム装置１は、勇者キャラクタに対応する攻撃値を敵キャラクタのダメージ値として記憶し、このダメージ値が敵キャラクタに設定された限界ダメージ値に至ると敵キャラクタが倒されたと決定し、次の順番の敵キャラクタを表示する。なお、敵キャラクタがボスキャラクタであるときには、勇者バトルゲームがゲームクリアとなる。
【０１７１】
ここで、１の勇者キャラクタに対応する攻撃値だけでは敵キャラクタを倒すことができないときには、更に次の勇者キャラクタの攻撃値がダメージ値に加算され、このダメージ値が限界ダメージ値に達したときに、敵キャラクタを倒すことができる。
【０１７２】
次に第２の実施形態の他の特徴を説明する。この他の特徴は、勇者キャラクタには属性が設定され、この属性が所定の条件（以下、「攻撃有効条件」と記載する）を満たすときに限って、勇者キャラクタの敵キャラクタへの攻撃が有効と扱われることである。これによって、どのような属性の勇者キャラクタであっても敵キャラクタを攻撃可能ということはなくなり、勇者バトル処理をより多彩に行うことができ、勇者バトルゲームの興趣性を高めることができる。
【０１７３】
なお、保有コイン数ａを消費して購入したキャラクタ情報に基づいて敵キャラクタを攻撃する方法についても、上述した「すれちがい通信」で取得したキャラクタ情報に基づいて敵キャラクタを攻撃する方法と同様である。
【０１７４】
以下に、図２０を参照して、第２の実施形態で実行されるすれちがい通信処理を説明する。このすれちがい通信処理については、情報フレームＤ３に含まれる本文データＤ４ａの内容以外は第１の実施形態と同様である。このため、本文データＤ４の内容以外については説明を省略する。図２０は、第２の実施形態にかかる本文データＤ４ａの内容を示す図である。本文データＤ４ａは、識別ＩＤとキャラクタ情報Ｄ２０とから構成される。識別ＩＤは、アプリケーションを特定するための情報であり、第２の実施形態では特に注釈がなければ識別ＩＤは勇者バトルアプリケーションを特定するための情報である。キャラクタ情報Ｄ２０の内容については詳しくは後述する。情報フレームＤ３がキャラクタ情報Ｄ２０を含むことで、ゲーム装置１は他のゲーム装置１との間でキャラクタ情報Ｄ２０を送受信することができる。
【０１７５】
以下に、図２１を参照して、第２の実施形態においてメインメモリ３２に記憶されるプログラム及びデータの内容を説明する。図２１は、メインメモリ３２に記憶されるプログラム及びデータの内容の一例を示すメモリマップである。なお、メインメモリ３２には、第１の実施形態と同様にプログラム記憶領域３２ａとデータ記憶領域３２ｂとが設けられている。そして、プログラム記憶領域３２ａには、ピース集めアプリケーションに代えて勇者バトルアプリケーションＰ３が記憶されている点、キャラクタ情報生成プログラムＰ４が更に記憶されている点が第１の実施形態と異なっている。
【０１７６】
勇者バトルアプリケーションＰ３は、上述したようにゲーム装置１に勇者バトル処理を実行させるためのプログラムであり、図２５〜図２７を用いて詳細を後述する。また、キャラクタ情報生成プログラムＰ４は、上述したようにゲーム装置１にキャラクタ情報Ｄ２０を生成させるためのプログラムである。なお、このキャラクタ情報生成プログラムＰ４及び勇者バトルアプリケーションＰ３は、保存用データメモリ３４又はメモリカード２８、カートリッジ２９等から適宜読み出されて記憶される。
【０１７７】
また、データ記憶領域３２ｂは、交換対象ピース情報記憶領域３２１及び取得ピース情報記憶領域３２２に代えて、交換対象キャラクタ情報記憶領域３２１ａ及び取得キャラクタ情報記憶領域３２２ａを有する点が第１の実施形態とは異なっている。
【０１７８】
交換対象キャラクタ情報記憶領域３２１ａには、他のゲーム装置１に対して「すれちがい通信」によって送信されるキャラクタ情報Ｄ２０が交換対象キャラクタ情報Ｄ２１として記憶される。以下に図２２Ａを用いてキャラクタ情報Ｄ２０及び交換対象キャラクタ情報Ｄ２１について説明する。図２２Ａは、キャラクタ情報Ｄ２０及び交換対象キャラクタ情報Ｄ２１の一例を示す図である。
【０１７９】
キャラクタ情報Ｄ２０及び交換対象キャラクタ情報Ｄ２１は、ユーザが自機でキャラクタを生成する際に設定された色を示す色情報、身長・体格情報、キャラクタ名、キャラクタＩＤ及びキャラクタ画像情報を含む。身長・体格情報はユーザに設定されたキャラクタの身長（高さ）及び体格（太さ）を示す情報である。キャラクタ名はユーザに設定されたキャラクタ名を示す。キャラクタＩＤは、キャラクタ情報生成時に自動的に設定されるキャラクタ固有の識別情報である。キャラクタ画像情報は、各パーツ毎にユーザに選択されたキャラクタ画像データＤ２４（後述）を示す情報である。キャラクタ情報生成処理において、ゲーム装置１は似顔絵キャラクタを生成するために目、鼻、口、輪郭及び髪等の各パーツ毎に複数の選択候補となるキャラクタ画像データＤ２４から１のデータ２４を選択する操作をユーザから受け付ける。キャラクタ画像情報は、この選択されたキャラクタ画像データＤ２４のＩＤを各パーツＩＤに対応付けて示す情報である。
【０１８０】
図２１に戻って、取得キャラクタ情報記憶領域３２２ａには、他のゲーム装置１から取得したキャラクタ情報Ｄ２０に受信日時を付加して生成された取得キャラクタ情報Ｄ２２が記憶される。勿論、複数の取得キャラクタ情報Ｄ２２が生成されているときには、複数個の取得キャラクタ情報Ｄ２２が記憶される。なお、取得キャラクタ情報Ｄ２２の内容は、図２２Ａで示すキャラクタ情報Ｄ２０及び交換対象キャラクタ情報Ｄ２１の内容に受信日時が付加されたものである。
【０１８１】
また、第２の実施形態では、受信ボックス３２３及び送信ボックス３２４に記憶される情報の内容が第１の実施形態とは異なっている。すなわち、受信ボックス３２３及び送信ボックス３２４は、本文データＤ４に代えて本文データＤ４ａを記憶する。
【０１８２】
本文データＤ４ａは、「すれちがい通信」によって他のゲーム装置１から受信した情報フレームＤ３に含まれる本文データＤ４ａである。なお、情報フレームＤ３が受信されたときに、この情報フレームＤ３の本文データＤ４ａが受信日時Ｄ８を付加されて記憶される。ここで、情報フレームＤ３が複数受信されたときには、複数の本文データＤ４ａが記憶される。この本文データＤ４ａのキャラクタ情報Ｄ２０は、ユーザからの指示に応じてＣＰＵ３１に読み出されて、取得キャラクタ情報Ｄ２２として取得キャラクタ情報記憶領域３２２ａに記憶される。なお、新たに記憶させる取得キャラクタ情報Ｄ２２のキャラクタ情報Ｄ２０が、既に記憶されている取得キャラクタ情報Ｄ２２のキャラクタ情報Ｄ２０と同一であっても、既に記憶されている取得キャラクタ情報Ｄ２２に追加して記憶される。また、取得キャラクタ情報記憶領域３２２ａに空きがないときには、記憶されている取得キャラクタ情報Ｄ２２の受信日時Ｄ８が参照されて、最も古い取得キャラクタ情報Ｄ２２が削除された上で、新たな取得キャラクタ情報Ｄ２２が記憶される。
【０１８３】
なお、送信ボックス３２４には、「すれちがい通信」によって他のゲーム装置１に送信するための本文データＤ４ａを記憶する。送信ボックス３２４は、受信ボックス３２３と異なり、記憶される本文データＤ４ａには受信日時Ｄ８が付加されておらず、本文データＤ４ａが一つだけ記憶される。「すれちがい通信」時には、本文データＤ４ａはコピーされ、このコピーされたデータＤ４ａが情報フレームＤ３に含めて送信される。
【０１８４】
また、画像データ記憶領域３２５に記憶される画像データの内容も第１の実施形態とは異なっている。画像データ記憶領域３２５には、ゲーム装置１に表示される画像データが記憶されが、この画像データには、上述した敵キャラクタ画像Ｇ１０の画像データＤ２３（以下、「敵キャラクタ画像データＤ２３」と記載する）と勇者キャラクタ画像Ｇ１１の画像データＤ２４（以下、「キャラクタ画像データＤ２４」と記載する）も含まれる。なお、本実施形態では、上述したように、キャラクタ情報Ｄ２０がパーツＩＤに対応するキャラクタ画像データＤ２４のＩＤを含み、これによって、各パーツに対応するキャラクタ画像データＤ２４が指定され、指定されたキャラクタ画像データＤ２４に基づく画像を対応するパーツの箇所に組み合わせることで、勇者キャラクタ画像Ｇ１１が生成される。
【０１８５】
また、第２の実施形態では、データ記憶領域３２ｂは、勇者情報記憶領域３３０及び敵情報記憶領域３３１を備える。以下、図２２Ｂ及び図２２Ｃを用いて勇者情報記憶領域３３０に記憶されるデータの内容を説明する。図２２Ｂは、勇者情報記憶領域３３０に記憶されるデータの一例を示す図である。勇者情報記憶領域３３０には、勇者キャラクタ情報Ｄ２５、勇者レベル情報Ｄ２６及び勇者レベルテーブルＴ１が記憶される。なお、この勇者キャラクタ情報Ｄ２５は、勇者キャラクタによる攻撃の実行後（攻撃の成功後又は失敗後）には削除される（もっとも記憶したままでもよい）。そして、新たな勇者キャラクタによる攻撃を開始する前に、新たな勇者キャラクタ情報Ｄ２５が生成され、勇者情報記憶領域３３０に記憶される（又は勇者キャラクタ情報Ｄ２５が更新される）。
【０１８６】
勇者キャラクタ情報Ｄ２５は、敵キャラクタと戦う勇者キャラクタのキャラクタ情報Ｄ２０である。勇者キャラク画像Ｇ２１が、この勇者キャラクタ情報Ｄ２５に基づいて生成されて、図１９で示したメイン画面に表示される。また、勇者レベル情報Ｄ２６は、勇者キャラクタ情報Ｄ２５に対応する勇者キャラクタの強さのレベル（勇者レベル）を示す情報である。この勇者レベル情報Ｄ２６に応じた攻撃値で勇者キャラクタが敵キャラクタにダメージを与える。この勇者レベル情報Ｄ２６は、勇者レベルテーブルＴ１を参照して決定される。勇者レベルテーブルＴ１について図２２Ｃを用いて説明する。図２２Ｃは、勇者レベルテーブルＴ１の一例を示す図である。勇者レベルテーブルＴ１は、「すれちがい回数」及びコイン枚数に対応する勇者レベルの情報が登録されている。
【０１８７】
「すれちがい通信」によってキャラクタ情報Ｄ２０が取得されたときには、「すれちがい回数」で勇者レベルテーブルＴ１が検索されて、「すれちがい回数」に対応するレベル情報が取得される。なお、この「すれちがい回数」は、取得キャラクタ情報記憶領域３２２ａに同じ（同じキャラクタＩＤの）キャラクタ情報Ｄ２０が記憶されている個数を参照して取得される。また、保有コイン数ａを消費してキャラクタ情報Ｄ２０が購入されたときには、消費したコインの枚数で勇者レベルテーブルＴ１が検索されて、これによって、コイン枚数に対応する勇者レベルの情報が取得される。そして、勇者レベルテーブルＴ１から取得された勇者レベルの情報が勇者レベル情報Ｄ２６として勇者情報記憶領域３３０に記憶される。すなわち、「すれちがい通信」によってキャラクタ情報Ｄ２０が取得された場合と、保有コイン数ａを消費してキャラクタ情報Ｄ２０が購入された場合とで、同じ種類のデータを生成して勇者情報記憶領域３３０に記憶されることになる。
【０１８８】
次に、図２３〜図２４Ｃを用いて、敵情報記憶領域３３１に記憶されるデータの内容を説明する。図２３は、敵情報記憶領域３３１に記憶されるデータの一例を示す図である。敵情報記憶領域３３１には、敵情報Ｄ２７、敵ナンバー情報Ｄ２８、敵情報テーブルＴ２及び攻撃有効条件テーブルＴ３が記憶される。
【０１８９】
敵情報Ｄ２７は、勇者キャラクタと戦う順番が到来した敵キャラクタの情報を示す。以下に図２４Ａを用いて敵情報Ｄ２７を説明する。図２４Ａは、敵情報Ｄ２７の一例を示す図である。敵情報Ｄ２７は、敵ナンバー情報、敵名情報、限界ダメージ値情報、現在のダメージ値情報、種別情報及び条件ＩＤが含まれる。敵ナンバー情報は勇者キャラクタと戦う順番を示す。例えば、敵キャラクタの種類が３体あるときに、敵ナンバー情報は１〜３までの何れかの番号である。そして、ナンバー情報の若い順番の敵キャラクタから順に敵キャラクタが勇者キャラクタと戦う。なお、敵ナンバー情報は上述した敵キャラクタ画像データＤ２３に対応づけられており、敵ナンバー情報に対応する敵キャラクタ画像データＤ２３を用いて敵キャラクタ画像Ｇ１０が生成されて表示される。また、敵名情報は敵キャラクタの名称を示す。限界ダメージ値情報は敵キャラクタの体力値に相当する限界ダメージ値を示す。現在のダメージ値情報は、敵ナンバー情報に対応する敵キャラクタの現在のダメージ値を示す。この現在のダメージ値情報は、敵キャラクタと戦った勇者キャラクタの攻撃値が加算されたものであり、現在のダメージ値が限界ダメージ値を超えたときに敵キャラクタが倒される。種別情報は、敵ナンバーに対応する敵キャラクタかザコ敵かボス敵かの別を示す。条件ＩＤは、現在設定されている攻撃有効条件を識別するＩＤである。攻撃有効条件が設定されていないときには、設定されていないことを示す情報（「攻撃有効条件なし」を示す情報）が条件ＩＤとして含められる。
【０１９０】
敵ナンバー情報Ｄ２８は、勇者キャラクタと現在戦っている敵キャラクタに対応する敵ナンバー情報である。
【０１９１】
敵情報テーブルＴ２は、敵情報Ｄ２７を生成するためのテーブルである。以下、図２４Ｂを用いて敵情報テーブルＴ２を説明する。図２４Ｂは、敵情報テーブルＴ２の一例を示す図である。敵情報テーブルＴ２には、敵ナンバー情報に対応づけて、敵名情報、限界ダメージ値情報及び種別情報が登録されている。なお、敵情報Ｄ２７は、敵ナンバー情報Ｄ２８で敵情報テーブルＴ２が検索されて、敵名情報、限界ダメージ値情報及び種別情報が取得され、これらの取得された情報を含めて生成される。
【０１９２】
攻撃有効条件テーブルＴ３は、勇者キャラクタの攻撃が有効になるための条件が登録されたテーブルである。本実施形態では、種別情報がボス敵を示すときには、勇者キャラクタの攻撃が有効になる条件が設定される。この条件が攻撃有効条件テーブルＴ３を用いて設定されるのである。以下、図２４Ｃを用いて攻撃有効条件テーブルＴ３を説明する。図２４Ｃは、攻撃有効条件テーブルＴ３の一例を示す図である。攻撃有効条件テーブルＴ３は、条件ＩＤ、ダメージ値情報及び攻撃有効条件が互いに対応づけて登録されている。そして、勇者キャラクタが敵キャラクタを攻撃する際には、敵情報Ｄ２７の条件ＩＤで攻撃有効条件テーブルＴ３が検索されて、条件ＩＤに対応するダメージ値情報及び攻撃有効条件が取得される。具体的には、敵情報Ｄ２７の条件ＩＤが１を示すときには、ダメージ値情報が「３００」であり、攻撃有効条件が「キャラクタ名が「あ」から始めること」が取得される。この場合には、現在のダメージ値がダメージ値３００であるときに限って、キャラクタ名が「あ」から始めること、という攻撃有効条件を満たすかが判断される。すなわち、勇者キャラクタ情報Ｄ２５がこの攻撃有効条件を満たすときにのみ、勇者キャラクタの攻撃が有効になり、勇者レベル情報Ｄ２６に対応する攻撃値が敵情報Ｄ２７の現在のダメージ値に加算される。なお、現在のダメージ値がダメージ値３００でないときには、攻撃有効条件が判断されず、勇者キャラクタの攻撃は必ず有効になる。また、勇者キャラクタ情報Ｄ２５が攻撃有効条件を満たしたときには、敵情報Ｄ２７の条件ＩＤが次の条件ＩＤに更新されて、次の攻撃有効条件が設定される。例えば、敵情報Ｄ２７の条件ＩＤが「１」から「２」に更新されて、現在のダメージ値が４００のときには「色情報が赤の勇者であること」が判断されることになる。なお、テーブルＴ３の各条件ＩＤには、例えば連続的な番号がそれぞれ設定されている。
【０１９３】
なお、メインメモリ３２は、第１の実施形態と同様に、歩数データ記憶領域３２６、保有コイン数記憶領域３２７、受信フレームデータ記憶領域３２８、送信フレームデータ記憶領域３２９及び図略のＶＲＡＭ領域が設けられている。
【０１９４】
なお、上述したデータのうち、データＤ４ａ、Ｄ２１〜Ｄ２８は、例えば、勇者バトルアプリケーションＰ３の起動時に、保存用データメモリ３４から読み出されてデータ記憶領域３２ｂに記憶される。また、データＤ４ａ、Ｄ２１〜Ｄ２８は、勇者バトルアプリケーションＰ３の終了時には、保存用データメモリ３４に記憶される。また、テーブルＴ１〜Ｔ３はメモリカード２８、カートリッジ２９等から読み出されてデータ記憶領域３２ｂに記憶される。
【０１９５】
以下に、図２３〜図２８を用いて第２の実施形態にかかる勇者バトル処理を説明する。図２５〜図２７は、勇者バトル処理の一例を示すフローチャートである。なお、勇者バトル処理において、第１の実施形態にかかるピース集め処理と同じ処理を実行するステップについては同じステップ番号を付与する。勇者バトル処理は、勇者バトルアプリケーションの実行がユーザに指示されたときに開始される。
【０１９６】
まず、ＣＰＵ３１は、敵情報テーブルＴ２、敵情報Ｄ２７及び敵ナンバー情報Ｄ２８を保存用データメモリ３４から読み出す。ここで、敵情報Ｄ２７及び敵ナンバー情報Ｄ２８は勇者バトルアプリケーションの初回起動時には保存用データメモリ３４には記憶されていない。このときには、ＣＰＵ３１は、敵ナンバー情報Ｄ２８を「１」とするとともに、この敵ナンバー情報Ｄ２８で敵情報テーブルＴ２を検索して敵情報Ｄ２７を生成する。ＣＰＵ３１は、保存用データメモリ３４から読み出した、又は生成した敵情報Ｄ２７及び敵ナンバー情報Ｄ２８をメインメモリ３２に設定する（Ｓ６１）。なお、ザコ敵の敵情報Ｄ２７を生成するときには条件ＩＤは必ず「攻撃有効条件なし」を示す情報が含められるまた、ボス敵の敵情報Ｄ２７の生成する際には、一番小さい番号の条件ＩＤが含められる。
【０１９７】
次に、ＣＰＵ３１は、敵ナンバーＤ２８に対応する敵キャラクタ画像データＤ２３と歩数データＤ１０を用いて図１８に示すメイン画面及び操作画面の表示処理を実行する（Ｓ６２）。そして、ＣＰＵ３１は「すれちがい通信」を実行する指示をユーザから受け付けたかどうかを判断する（Ｓ８）。そして、「すれちがい通信」を実行する指示をユーザから受け付けていないと判断したときには（Ｓ８でＮＯ）、ＣＰＵ３１はステップＳ６２に処理を戻す。一方、「すれちがい通信」を実行する指示をユーザから受け付けたと判断したときには（Ｓ８でＹＥＳ）、ＣＰＵ３１は、歩数カウント処理の実行をマイコン３８に指示する（Ｓ９）。
【０１９８】
なお、ステップＳ９〜ステップＳ１７の処理については、第１の実施形態にかかるピース集め処理（図８を参照）と同じであるため詳細な説明を省略する。このステップＳ９〜ステップＳ１７では、すれちがい通信処理、スリープモードに関する処理及び歩数データＤ１０をコイン数データＤ１１に変換する処理等が実行される。
【０１９９】
図２６を参照して、ステップＳ１７の実行後には、ＣＰＵ３１は、ステップＳ１９及びＳ２０の処理を実行する。すなわち、ＣＰＵ３１は、受信ボックス３２３に本文データＤ４ａが記憶されているかどうかを判断し、受信ボックス３２３に本文データＤ４ａが記憶されていると判断したとき（Ｓ１９でＹＥＳ）、ＣＰＵ３１は、１の本文データＤ４ａを選択して受信ボックス３２３から読み出し、本文データＤ４ａに含まれるキャラクタ情報Ｄ２０及び受信日時Ｄ８を取得する（Ｓ２０）。そして、ＣＰＵ３１は、取得したキャラクタ情報Ｄ２０及び受信日時Ｄ８を含めて取得キャラクタ情報Ｄ２２として取得キャラクタ情報記憶領域３２２ａに記憶させる。これとともに、ＣＰＵ３１は、取得したキャラクタ情報Ｄ２０を勇者キャラクタ情報Ｄ２５としてメインメモリ３２に記憶させる（Ｓ６３）。そして、ステップＳ２０で処理された本文データＤ４ａは受信ボックス３２３から削除される、この後、ＣＰＵ３１は、保存用データメモリ３４から勇者レベルテーブルＴ１を読み出して、この勇者レベルテーブルＴ１を用いて勇者キャラクタ情報Ｄ２５に対応する勇者レベル情報Ｄ２６を決定して、この勇者レベル情報Ｄ２６をメインメモリ３２に設定する（Ｓ６４）。
【０２００】
ＣＰＵ３１は、設定した勇者レベル情報Ｄ２６に対応する攻撃値を決定する。この決定は、例えば、次のようになされる。すなわち、各レベル情報に対応する攻撃値が、例えばテーブルの形式で保存用データメモリ３４に記憶され、このテーブルが参照されて、勇者レベル情報Ｄ２６で示すレベル情報に対応する攻撃値が決定される。
【０２０１】
この後、ＣＰＵ３１は、図１９で示すようなバトル画面の表示処理を実行する（Ｓ６５）。具体的には、ＣＰＵ３１は、勇者キャラクタ情報Ｄ２５に基づいて勇者キャラクタ画像Ｇ１１を生成して、この勇者キャラクタ画像Ｇ１１を敵キャラクタ画像Ｇ１０とともにバトル画面に表示するための処理を行う。
【０２０２】
この後、ＣＰＵ３１は、攻撃有効条件を決定する（Ｓ６６）。具体的には、攻撃有効条件テーブルＴ３を保存用データメモリ３４から読み出す。そして、敵情報Ｄ２７に含まれる種別情報がザコ敵を示せば、攻撃有効条件のないことが決定される。また、種別情報がボス敵を示していても、敵情報Ｄ２７に含まれる条件ＩＤが「攻撃有効条件なし」を示していれば、攻撃有効条件のないことが決定される。しかしながら、種別情報がボス敵を示し、条件ＩＤが「攻撃有効条件なし」を示していなければ、この条件ＩＤで条件テーブルＴ３が検索されて、ダメージ値情報及び攻撃有効条件が取得される。そして、敵情報Ｄ２７の示す現在のダメージ値が、取得したダメージ値情報の値でないときには、攻撃有効条件のないことが決定され、取得したダメージ値情報の値であれば取得した攻撃有効条件が決定される。
【０２０３】
そして、ＣＰＵ３１は、勇者キャラクタ情報Ｄ２５に含まれる情報に基づいて攻撃有効条件を満たすか判断する（Ｓ６７）。例えば、攻撃有効条件が「色情報が赤であること」であるときには、勇者キャラクタ情報Ｄ２５に含まれる色情報が赤を示すときに、攻撃有効条件を満たすと判断される。なお、攻撃有効条件の設定がないときには必ずステップＳ６７でＹＥＳと判断される。攻撃有効条件を満たすと判断したときに（Ｓ６７でＹＥＳ）、ＣＰＵ３１は敵情報Ｄ２７の現在のダメージ値情報に攻撃値を加算する（Ｓ６８）。また、敵情報Ｄ２７の識別情報がボス敵であり、かつ敵情報Ｄ２７の条件ＩＤが攻撃有効条件のないことを示す情報でないときには、ＣＰＵ３１は、敵情報Ｄ２７の条件ＩＤを次の条件ＩＤに更新する（次の条件ＩＤがないときには「攻撃有効条件なし」を示す情報に更新する）。そして、ＣＰＵ３１は攻撃成功の演出の表示処理を実行する（Ｓ６９）。この後、ＣＰＵ３１は処理をステップ７１に進める。
【０２０４】
一方、攻撃有効条件を満たさないと判断したときには（Ｓ６７でＮＯ）、ＣＰＵ３１は、攻撃失敗の演出の表示処理を行う（Ｓ７０）。この後、ＣＰＵ３１は処理をステップＳ７１に進める。
【０２０５】
図２７を参照して、ステップＳ７１では、ＣＰＵ３１は敵情報Ｄ２７の現在のダメージ値が限界ダメージ値情報の値に到達したかどうかを判断する（Ｓ７１）。ここで、現在のダメージ値が限界ダメージ値情報に達していないと判断したときには（Ｓ７１でＮＯ）、ＣＰＵ３１は、同じ敵キャラクタ画像Ｇ１０のみを上側ＬＣＤ２２に表示する表示処理（例えば図１９で示すメイン画面の表示処理）を行って（Ｓ７２）、処理を後述のステップＳ７９に進める。
【０２０６】
一方、現在のダメージ値が限界ダメージ値情報に達したと判断したときには（Ｓ７１でＹＥＳ）、ＣＰＵ３１は、敵ナンバー情報Ｄ２８を参照して全ての敵キャラクタを倒したかどうかを判断する（Ｓ７３）。そして、全ての敵キャラクタを倒したと判断したときには（Ｓ７３でＹＥＳ）、ＣＰＵ３１はゲームクリアの演出の表示処理を実行する（Ｓ７４）。この後、ＣＰＵ３１は保存用データメモリ３４に記憶されているデータＤ２５〜Ｄ２８を削除する等の所定の初期化処理を実行する（Ｓ７５）。この後、ＣＰＵ３１は本処理をステップＳ６１に戻す。
【０２０７】
一方、全ての敵キャラクタを倒していないと判断したときには（Ｓ７３でＮＯ）、ＣＰＵ３１は敵ナンバー情報Ｄ２８に１を加算する（Ｓ７６）。そして、ＣＰＵ３１は、敵ナンバー情報Ｄ２８で敵情報テーブルＴ２を検索して、新たな敵情報Ｄ２７を生成し、メインメモリ３２及び保存用データメモリ３４に記憶される敵情報Ｄ２７を更新する（Ｓ７７）。なお、敵情報Ｄ２７の現在のダメージ値情報は０に設定される。また、ザコ敵の敵情報Ｄ２７を生成するときには条件ＩＤとして必ず「攻撃有効条件なし」を示す情報が含められる。また、ボス敵の敵情報Ｄ２７の生成する際には、一番小さい番号の条件ＩＤが含められる。そして、敵ナンバー情報Ｄ２８に対応する敵キャラクタ画像データＤ２３を用いて、ＣＰＵ３１は敵キャラクタ画像Ｇ１０を生成して上側ＬＣＤ２２に表示する表示処理を行う（Ｓ７８）。
【０２０８】
続いて、ＣＰＵ３１は、受信ボックス３２３に本文データＤ４ａが記憶されているかどうかを判断し（Ｓ７９）、記憶されていると判断したときには（Ｓ７９でＹＥＳ）、ステップＳ２０に処理を戻す。すなわち、受信ボックス３２３に本文データＤ４ａが記憶されなくなるか（Ｓ７９でＮＯ）、全ての敵キャラクタを倒すまで（Ｓ７３でＹＥＳ）、上記ステップＳ２０、Ｓ６３〜Ｓ７８の処理が繰り返し実行される。
【０２０９】
一方、受信ボックス３２３に本文データＤ４ａが記憶されていないと判断したときには（Ｓ７９でＮＯ）、ＣＰＵ３１は、キャラクタ情報購入画面の表示処理を実行する（Ｓ８０）。このキャラクタ情報購入画面は、保有コインを用いてキャラクタ情報Ｄ２０を購入するための操作をユーザにガイドする画面である。例えば、「保有コインで勇者キャラクタを購入することができるよ」といったような、キャラクタ情報Ｄ２０の購入が許可されていることを示す文が表示される。
【０２１０】
次に、ＣＰＵ３１は、保有コイン数ａを消費してキャラクタ情報Ｄ２０を購入する指示をユーザから受け付けたかどうかを判断する（Ｓ８１）。ここで、キャラクタ情報Ｄ２０を購入する指示をユーザから受け付けなかったと判断したときには（Ｓ８１でＮＯ）、ＣＰＵ３１は本処理をステップＳ６１に戻す。
【０２１１】
一方、保有コイン数ａを消費してキャラクタ情報Ｄ２０を購入する指示をユーザから受け付けたと判断したときには（Ｓ８１でＹＥＳ）、ＣＰＵ３１は保有コイン数ａを減して、キャラクタ情報Ｄ２０をゲーム装置１に取得させるための処理（勇者購入処理）を実行する（Ｓ８２）。この勇者購入処理についての詳細は、図２８を用いて後述する。この処理によって、保有コインによってキャラクタ情報Ｄ２０が取得されたときには、勇者キャラクタ情報Ｄ２５としてメインメモリ３２に記憶される。この後、ＣＰＵ３１は、勇者キャラクタ情報Ｄ２５を取得することができたかを判断し（Ｓ８３）、取得することができなかったときには（Ｓ８３でＮＯ）、ＣＰＵ３１は本処理をステップＳ６１に戻す。一方、勇者キャラクタ情報Ｄ２５を取得することができたときには（Ｓ８３でＹＥＳ）、本処理をステップＳ６５に戻す。これによって、新たに取得した勇者キャラクタ情報Ｄ２５に基づいて、勇者キャラクタが敵キャラクタを攻撃する処理を実行することができる。
【０２１２】
上述したように、受信ボックス３２３に本文データＤ４ａが記憶されている限り、勇者購入処理の実行が許可されない。保有コイン数ａを消費してのキャラクタ情報の購入はあくまで、「すれちがい通信」によりキャラクタ情報の取得の不足を補うことを目的としているからである。
【０２１３】
また、ステップＳ１９でＮＯと判断したとき、すなわち、「すれちがい通信」によって１つの本文データＤ４ａも取得することができなかったと判断したとき（Ｓ１９でＮＯ）、ＣＰＵ３１は、上記ステップＳ８０の処理を実行する。この様な場合にも、「すれちがい通信」によりキャラクタ情報の取得の不足を補うことを目的として、保有コイン数ａを消費してのキャラクタ情報Ｄ２０の購入が許可されるのである。
【０２１４】
次に、図２１及び図２８を用いてステップＳ８２で実行される勇者購入処理を説明する。図２８は勇者購入処理の一例を示すフローチャートである。まず、ＣＰＵ３１は、歩数データＤ１０を保存用データメモリ３４から読み出して、歩数データＤ１０の示す保有コイン数ａが所定値（例えば、１）以上であるかを判断する（Ｓ８２１）。この所定値は、キャラクタ情報Ｄ２０を購入可能な最低金額の保有コイン数ａを示す。保有コイン数ａが所定値（例えば、１）以上でないと判断したときには（Ｓ８２１でＮＯ）、キャラクタ情報Ｄ２０を購入可能な数の保有コイン数ａをゲーム装置１が有さないため、ＣＰＵ３１は、キャラクタ情報Ｄ２０の購入のための処理（後述のステップＳ８２２〜Ｓ８２８）を行わずに本処理を終了させ、図２７で示すメインルーチンに処理を戻す。
【０２１５】
一方、保有コイン数ａが所定値（例えば、１）以上であると判断したときには（Ｓ８２１でＹＥＳ）、ＣＰＵ３１は前回のキャラクタ情報Ｄ２０の取得日は現在日か否かを判断する（Ｓ８２２）。この判断は、保存用データメモリ３４に記憶されているキャラクタ取得日付データを参照することで行われる。このキャラクタ取得日付データは、キャラクタ情報Ｄ２０を取得した最新日を示す。勇者バトルアプリケーションの初回起動時には、保存用データメモリ３４にキャラクタ取得日付データが記憶されていない。このときには、本ステップＳ８２２において、ＣＰＵ３１は、キャラクタ取得日付データを初期値で保存用データメモリ３４に設定し、かつＮＯと判断する。そして、キャラクタ取得日付データは、勇者購入処理でキャラクタ情報Ｄ２０が取得されたときに、後述のステップＳ８２７によってこの取得日に更新される。
【０２１６】
そして、前回のキャラクタ情報Ｄ２０の取得日は現在日であると判断したときには（Ｓ８２２でＹＥＳ）、ＣＰＵ３１はキャラクタ情報Ｄ２０の購入のための処理（後述のステップＳ８２３〜Ｓ８２８）を行わずに本処理を終了させ、図２７で示すメインルーチンに処理を戻す。この理由は、キャラクタ情報Ｄ２０は１日に１回しか取得することができないからである。なお、キャラクタ情報Ｄ２０の購入が、必ずしも１日につき１回に限定されていなくてもよく、１日につき２回以上の所定回数に限定されていてもよい。この場合には、ゲーム装置１は、購入回数を記憶し、この購入回数とキャラクタ取得日データを参照して、キャラクタ情報Ｄ２０の現在日における購入回数が所定回数以内かを判断すればよい。なお、無制限にキャラクタ情報Ｄ２０を購入することができる構成であってもよい。
【０２１７】
一方、前回のキャラクタ情報Ｄ２０の取得日は現在日でないと判断したときには（Ｓ８２２でＮＯ）、ＣＰＵ３１は消費する保有コイン数ａの選択をユーザにガイドする画面を表示するための表示処理を行う（Ｓ８２３）。本実施形態では、消費する保有コイン数ａに応じて、勇者レベル情報Ｄ２６が高く、すなわち攻撃値が高く設定される。従って、ステップＳ８２３では、消費する保有コイン数ａに応じた勇者レベルが表示されるのである。例えば、消費する保有コイン数ａが１枚であると勇者レベルが１、枚数が２枚であると勇者レベルが２、等のように表示される。なお、勇者レベルが、固定であり、ユーザの操作に応じて可変ではない構成であってもよい。
【０２１８】
そして、ＣＰＵ３１は、消費する保有コイン数ａの選択をユーザから受け付けたかを受け付けたと判断するまで判断する（Ｓ８２４）。ここで、消費する保有コイン数ａの選択をユーザから受け付けたかを受け付けたと判断したときに（Ｓ８２４でＹＥＳ）。ＣＰＵ３１は、キャラクタ情報Ｄ２０を算出して勇者キャラクタ情報Ｄ２５としてメインメモリ３２に記憶させる（Ｓ８２５）。また、ＣＰＵ３１は、生成したキャラクタ情報Ｄ２０を生成した日時を受信日時としてこのキャラクタ情報Ｄ２０に付加して取得キャラクタ情報Ｄ２２として保存用データメモリ３４に記憶させる。なお、キャラクタ情報Ｄ２０の生成方法を以下に述べる。キャラクタ情報Ｄ２０は、上述したようにパーツＩＤに対応するキャラクタ画像データＤ２４のＩＤを各パーツＩＤ毎に示す。従って、キャラクタ情報Ｄ２０の生成は、所定の乱数発生処理が実行されることにより、キャラクタ画像データＤ２４のＩＤが発生されることで行われる。このキャラクタ画像データＤ２４のＩＤの生成が全てのパーツＩＤについて実行され、発生されたキャラクタ画像データＤ２４のＩＤとパーツＩＤとを対応づけて含めることでキャラクタ情報Ｄ２０が生成されるのである。なお、色情報、身長・体格情報及びキャラクタ名も、複数の候補の中からランダムで選択されて、キャラクタ情報Ｄ２０に含められる。また、キャラクタＩＤも他のキャラクタ情報Ｄ２０と重複しないように決定されて、キャラクタ情報Ｄ２０に含められる。
【０２１９】
続いて、ＣＰＵ３１は、ステップＳ８２４で受け付けた消費する保有コイン数ａで勇者レベルテーブルＴ１を検索して勇者レベルを取得し、取得した勇者レベルを示す勇者レベル情報Ｄ２６を生成してメインメモリ３２に記憶させる（Ｓ８２６）。この後、ＣＰＵ３１は保存用データメモリ３４のキャラクタ取得日データを現在日に更新する（Ｓ８２７）。そして、ＣＰＵ３１は、ステップＳ８２４で受け付けた消費する保有コイン数ａを保有コイン数ａから減算して（Ｓ８２８）、本処理を終了させて、処理を図２７で示すメインルーチンに戻す。
【０２２０】
上述したように、第２の実施形態でも第１の実施形態と同様に、「すれちがい通信」によるキャラクタ情報Ｄ２０の取得方法の他に、ゲーム装置１のユーザの歩数に応じてキャラクタ情報Ｄ２０を取得する取得方法によって、ゲーム装置１がキャラクタ情報Ｄ２０を取得することができる。そして、第２の実施形態でも第１の実施形態と同様に、「すれちがい通信」によってキャラクタ情報Ｄ２０が全く取得することができないとき、及び、「すれちがい通信」によって取得したキャラクタ情報Ｄ２０では全ての敵キャラクタを倒すことができないときに、１日に限られた回数に限って、ゲーム装置１のユーザの歩数に応じてキャラクタ情報Ｄ２０を取得することができる。
【０２２１】
以下、第１及第２の実施形態の変形例を記載する。
【０２２２】
（１）第１及び第２の実施形態では、２つのゲーム装置１の間でピース情報Ｄ５又はキャラクタ情報Ｄ２０が送受信されるが、ピース情報Ｄ５又はキャラクタ情報Ｄ２０に代えて、ピース画像データＤ９又はキャラクタ画像データＤ２４自体が送受信される構成であってもよい。
【０２２３】
（２）また、第２の実施形態では、保有コイン数ａを用いてキャラクタ情報Ｄ２０を生成しているが、このキャラクタ情報Ｄ２０を生成することなく、パーツＩＤ毎に、所定の乱数発生処理によってキャラクタ画像データＤ２４のＩＤを発生し、発生したＩＤのキャラクタ画像データＤ２４を読み出して勇者キャラクタ画像Ｇ１１が生成されてもよい。
【０２２４】
（３）第１及び第２の実施形態では、「すれちがい通信」によってピース情報Ｄ５又はキャラクタ情報Ｄ２０を全く取得することができなかったとき、及び取得することができたがゲームクリアするには不足しているときに限って、ゲーム装置１の保有コインによって購入することで（ユーザの歩数に応じて）ピース情報Ｄ５又はキャラクタ情報Ｄ２０を取得することができる。しかしながら、この様な構成に代えて、「すれちがい通信」によるピース情報Ｄ５又はキャラクタ情報Ｄ２０の取得と、保有コインによるピース情報Ｄ５又はキャラクタ情報Ｄ２０の取得との何れかをユーザが自由に選択することができる構成であってもよい。
【０２２５】
（４）第１及び第２の実施形態では、ゲーム装置１が、ピース集めアプリケーション又は勇者バトルアプリケーションの何れかを実行しているが、ピース集め処理及び勇者バトル処理のうちユーザに選択された処理をゲーム装置１に実行させるためのアプリケーションを記憶し、このアプリケーションの実行によってピース集め処理及び勇者バトル処理のうちユーザに選択された処理を実行してもよい。そして、第１の実施形態のピース情報と第２の実施形態のキャラクタ情報の両方を同時に上記「すれちがい通信」で送受信しても良い。
【０２２６】
（５）なお、第１及び第２の実施形態では、ユーザの指示に応じてゲーム装置１が自機をスリープ状態にしてすれちがい通信処理を実行するが、この構成に代えて、ゲーム装置１が、主電源がオンになっているときは常に（ゲーム処理中でも）すれちがい通信処理を実行し、ユーザの指示に応じて、すれちがい通信処理で取得したピース情報Ｄ５又はキャラクタ情報Ｄ２０がピース集めアプリケーション又は勇者バトルアプリケーションで使用されてもよい。
【０２２７】
（６）第１及び第２の実施形態では、ゲーム装置１は専用機であるが、例えば、携帯電話機、簡易型携帯電話機（ＰＨＳ）、ＰＤＡ等の携帯情報端末にも本発明の適用は可能である。また、第１及び第２の実施形態は、本発明の情報処理プログラムをゲームプログラムに適用した形態であるが、本発明の情報処理プログラムは、「すれちがい通信」によって取得した情報（データ、プログラム等）を使用して何らかの処理を行うプログラムであれば、ゲームプログラム以外の他のプログラムにも適用することが可能である。
【０２２８】
（７）また、第１及び第２の実施形態では、ゲーム装置１は、同種のゲーム装置１との間でピース情報Ｄ５又はキャラクタ情報Ｄ２０を送受信しているが、これらの情報Ｄ５又はＤ２０を受信するだけの構成であってもよい。この場合には、ゲーム装置１は、他のゲーム装置１からでなく、アクセスポイント、据え置き型ゲーム機及びパーソナルコンピュータ等からピース情報Ｄ５又はキャラクタ情報Ｄ２０を受信してもよい。
【０２２９】
（８）なお、第１及び第２の実施形態では、ゲーム装置１のみがピース集め処理又は勇者バトル処理を実行しているが、この処理のうち一部の処理がサーバで分担されてもよい。
【産業上の利用可能性】
【０２３０】
本発明のシステムは、近距離無線通信によって、携帯端末装置が情報を受信し、この情報をアプリケーションの所定の処理を行う通信システムにおいて有用である。
【符号の説明】
【０２３１】
１…ゲーム装置
１１…下側ハウジング
１２…下側ＬＣＤ
１３…タッチパネル
１４…操作ボタン
１５、２６…ＬＥＤ
１６…マイクロフォン用孔
２１…上側ハウジング
２２…上側ＬＣＤ
２３…内側カメラ
２４…音抜き孔
２５…外側カメラ
２７…タッチペン
２８、２９…メモリカード
３１…ＣＰＵ
３２…メインメモリ
３３…メモリ制御回路
３４…保存用データメモリ
３５…プリセットデータ用メモリ
３６…メモリカードＩ／Ｆ
３７…無線通信モジュール
３８…マイコン
３９…電源回路
４０…Ｉ／Ｆ回路
４１…マイク
４２…アンプ
４４…加速度センサ
【図１】
0005632868.tif 000002
【図２】
0005632868.tif 000003
【図３】
0005632868.tif 000004
【図４】
0005632868.tif 000005
【図５Ａ】
0005632868.tif 000006
【図５Ｂ】
0005632868.tif 000007
【図５Ｃ】
0005632868.tif 000008
【図５Ｄ】
0005632868.tif 000009
【図６】
0005632868.tif 000010
【図７Ａ】
0005632868.tif 000011
【図７Ｂ】
0005632868.tif 000012
【図８】
0005632868.tif 000013
【図９】
0005632868.tif 000014
【図１０】
0005632868.tif 000015
【図１１】
0005632868.tif 000016
【図１２】
0005632868.tif 000017
【図１３】
0005632868.tif 000018
【図１４】
0005632868.tif 000019
【図１５】
0005632868.tif 000020
【図１６】
0005632868.tif 000021
【図１７】
0005632868.tif 000022
【図１８】
0005632868.tif 000023
【図１９】
0005632868.tif 000024
【図２０】
0005632868.tif 000025
【図２１】
0005632868.tif 000026
【図２２Ａ】
0005632868.tif 000027
【図２２Ｂ】
0005632868.tif 000028
【図２２Ｃ】
0005632868.tif 000029
【図２３】
0005632868.tif 000030
【図２４Ａ】
0005632868.tif 000031
【図２４Ｂ】
0005632868.tif 000032
【図２４Ｃ】
0005632868.tif 000033
【図２５】
0005632868.tif 000034
【図２６】
0005632868.tif 000035
【図２７】
0005632868.tif 000036
【図２８】
0005632868.tif 000037